react-native-reanimated 3.8.0 → 3.9.0-layout-animation-experimental
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/Common/cpp/Fabric/ShadowTreeCloner.cpp +5 -2
- package/Common/cpp/LayoutAnimations/LayoutAnimationsManager.cpp +42 -32
- package/Common/cpp/LayoutAnimations/LayoutAnimationsManager.h +5 -7
- package/Common/cpp/LayoutAnimations/LayoutAnimationsProxy.cpp +565 -0
- package/Common/cpp/LayoutAnimations/LayoutAnimationsProxy.h +74 -0
- package/Common/cpp/LayoutAnimations/LayoutAnimationsUtils.h +140 -0
- package/Common/cpp/NativeModules/NativeReanimatedModule.cpp +216 -58
- package/Common/cpp/NativeModules/NativeReanimatedModule.h +32 -11
- package/Common/cpp/NativeModules/NativeReanimatedModuleSpec.cpp +2 -17
- package/Common/cpp/NativeModules/NativeReanimatedModuleSpec.h +6 -8
- package/Common/cpp/ReanimatedRuntime/RNRuntimeDecorator.cpp +3 -0
- package/Common/cpp/ReanimatedRuntime/WorkletRuntime.cpp +3 -4
- package/Common/cpp/ReanimatedRuntime/WorkletRuntimeDecorator.cpp +8 -3
- package/Common/cpp/SharedItems/Shareables.cpp +31 -5
- package/Common/cpp/SharedItems/Shareables.h +18 -2
- package/Common/cpp/Tools/JSScheduler.cpp +29 -5
- package/Common/cpp/Tools/JSScheduler.h +21 -4
- package/Common/cpp/Tools/PlatformDepMethodsHolder.h +6 -2
- package/Common/cpp/Tools/UIRuntimeDecorator.cpp +6 -0
- package/Common/cpp/Tools/UIRuntimeDecorator.h +1 -0
- package/android/CMakeLists.txt +3 -0
- package/android/build.gradle +17 -5
- package/android/src/main/cpp/NativeProxy.cpp +77 -12
- package/android/src/main/cpp/NativeProxy.h +35 -1
- package/android/src/main/java/com/swmansion/reanimated/NodesManager.java +58 -19
- package/android/src/main/java/com/swmansion/reanimated/ReanimatedPackage.java +7 -2
- package/android/src/{reactNativeVersionPatch/ReanimatedUIManager/latest → main/java}/com/swmansion/reanimated/ReanimatedUIManagerFactory.java +5 -5
- package/android/src/main/java/com/swmansion/reanimated/layoutReanimation/AnimationsManager.java +10 -6
- package/android/src/main/java/com/swmansion/reanimated/layoutReanimation/ReanimatedNativeHierarchyManager.java +18 -1
- package/android/src/main/java/com/swmansion/reanimated/layoutReanimation/SharedTransitionManager.java +105 -17
- package/android/src/main/java/com/swmansion/reanimated/sensor/ReanimatedSensor.java +2 -1
- package/android/src/paper/java/com/swmansion/reanimated/NativeReanimatedModuleSpec.java +37 -0
- package/android/src/{main/java/com/swmansion/reanimated → reactNativeVersionPatch/ReanimatedUIManager/73/com/swmansion}/ReanimatedModule.java +4 -3
- package/android/src/reactNativeVersionPatch/ReanimatedUIManager/{70 → 73}/com/swmansion/reanimated/layoutReanimation/ReanimatedUIManager.java +1 -22
- package/android/src/reactNativeVersionPatch/ReanimatedUIManager/latest/com/swmansion/reanimated/ReanimatedModule.java +176 -0
- package/android/src/reactNativeVersionPatch/ReanimatedUIManager/latest/com/swmansion/reanimated/layoutReanimation/ReanimatedUIManager.java +0 -26
- package/android/src/{fabric/java → reactNativeVersionPatch/RuntimeExecutor/73}/com/swmansion/reanimated/NativeProxy.java +16 -4
- package/android/src/reactNativeVersionPatch/RuntimeExecutor/latest/com/swmansion/reanimated/NativeProxy.java +143 -0
- package/apple/LayoutReanimation/REAAnimationsManager.h +3 -0
- package/apple/LayoutReanimation/REAAnimationsManager.m +11 -0
- package/apple/LayoutReanimation/REASharedTransitionManager.m +99 -23
- package/apple/LayoutReanimation/REASnapshot.h +1 -0
- package/apple/LayoutReanimation/REASnapshot.m +78 -37
- package/apple/REAModule.h +22 -2
- package/apple/REAModule.mm +97 -46
- package/apple/REANodesManager.h +3 -3
- package/apple/REANodesManager.mm +46 -22
- package/apple/native/NativeProxy.h +28 -2
- package/apple/native/NativeProxy.mm +65 -195
- package/apple/native/PlatformDepMethodsHolderImpl.h +59 -0
- package/apple/native/PlatformDepMethodsHolderImpl.mm +429 -0
- package/apple/sensor/ReanimatedSensor.m +5 -5
- package/lib/module/Animated.js.map +1 -1
- package/lib/module/ConfigHelper.js +1 -1
- package/lib/module/ConfigHelper.js.map +1 -1
- package/lib/module/animationBuilder.js +1 -0
- package/lib/module/animationBuilder.js.map +1 -1
- package/lib/module/createAnimatedComponent/InlinePropManager.js +4 -4
- package/lib/module/createAnimatedComponent/InlinePropManager.js.map +1 -1
- package/lib/module/createAnimatedComponent/JSPropsUpdater.js +9 -6
- package/lib/module/createAnimatedComponent/JSPropsUpdater.js.map +1 -1
- package/lib/module/createAnimatedComponent/JSPropsUpdater.web.js +11 -0
- package/lib/module/createAnimatedComponent/JSPropsUpdater.web.js.map +1 -0
- package/lib/module/createAnimatedComponent/PropsFilter.js +25 -9
- package/lib/module/createAnimatedComponent/PropsFilter.js.map +1 -1
- package/lib/module/createAnimatedComponent/commonTypes.js.map +1 -1
- package/lib/module/createAnimatedComponent/createAnimatedComponent.js +83 -52
- package/lib/module/createAnimatedComponent/createAnimatedComponent.js.map +1 -1
- package/lib/module/createAnimatedComponent/getViewInfo.js +37 -0
- package/lib/module/createAnimatedComponent/getViewInfo.js.map +1 -0
- package/lib/module/createAnimatedComponent/index.js.map +1 -1
- package/lib/module/createAnimatedComponent/setAndForwardRef.js +4 -5
- package/lib/module/createAnimatedComponent/setAndForwardRef.js.map +1 -1
- package/lib/module/createAnimatedComponent/utils.js.map +1 -1
- package/lib/module/index.js.map +1 -1
- package/lib/module/index.web.js +1 -2
- package/lib/module/index.web.js.map +1 -1
- package/lib/module/mock.js +12 -12
- package/lib/module/mock.js.map +1 -1
- package/lib/module/propsAllowlists.js.map +1 -1
- package/lib/module/reanimated2/Bezier.js.map +1 -1
- package/lib/module/reanimated2/Colors.js +4 -11
- package/lib/module/reanimated2/Colors.js.map +1 -1
- package/lib/module/reanimated2/Easing.js +3 -7
- package/lib/module/reanimated2/Easing.js.map +1 -1
- package/lib/module/reanimated2/NativeReanimated/NativeReanimated.js +16 -13
- package/lib/module/reanimated2/NativeReanimated/NativeReanimated.js.map +1 -1
- package/lib/module/reanimated2/NativeReanimated/index.js.map +1 -1
- package/lib/module/reanimated2/NativeReanimated/index.web.js.map +1 -1
- package/lib/module/reanimated2/PlatformChecker.js +2 -1
- package/lib/module/reanimated2/PlatformChecker.js.map +1 -1
- package/lib/module/reanimated2/PropAdapters.js +1 -1
- package/lib/module/reanimated2/PropAdapters.js.map +1 -1
- package/lib/module/reanimated2/PropsRegistry.js +1 -2
- package/lib/module/reanimated2/PropsRegistry.js.map +1 -1
- package/lib/module/reanimated2/Sensor.js +2 -2
- package/lib/module/reanimated2/Sensor.js.map +1 -1
- package/lib/module/reanimated2/SensorContainer.js +2 -2
- package/lib/module/reanimated2/SensorContainer.js.map +1 -1
- package/lib/module/reanimated2/UpdateLayoutAnimations.js +30 -8
- package/lib/module/reanimated2/UpdateLayoutAnimations.js.map +1 -1
- package/lib/module/reanimated2/UpdateProps.js.map +1 -1
- package/lib/module/reanimated2/ViewDescriptorsSet.js.map +1 -1
- package/lib/module/reanimated2/WorkletEventHandler.js +74 -31
- package/lib/module/reanimated2/WorkletEventHandler.js.map +1 -1
- package/lib/module/reanimated2/animation/clamp.js.map +1 -1
- package/lib/module/reanimated2/animation/commonTypes.js.map +1 -1
- package/lib/module/reanimated2/animation/decay/decay.js.map +1 -1
- package/lib/module/reanimated2/animation/decay/index.js.map +1 -1
- package/lib/module/reanimated2/animation/decay/rigidDecay.js.map +1 -1
- package/lib/module/reanimated2/animation/decay/rubberBandDecay.js.map +1 -1
- package/lib/module/reanimated2/animation/decay/utils.js.map +1 -1
- package/lib/module/reanimated2/animation/delay.js.map +1 -1
- package/lib/module/reanimated2/animation/index.js.map +1 -1
- package/lib/module/reanimated2/animation/repeat.js +1 -6
- package/lib/module/reanimated2/animation/repeat.js.map +1 -1
- package/lib/module/reanimated2/animation/sequence.js +1 -5
- package/lib/module/reanimated2/animation/sequence.js.map +1 -1
- package/lib/module/reanimated2/animation/spring.js.map +1 -1
- package/lib/module/reanimated2/animation/springUtils.js +8 -10
- package/lib/module/reanimated2/animation/springUtils.js.map +1 -1
- package/lib/module/reanimated2/animation/styleAnimation.js +5 -4
- package/lib/module/reanimated2/animation/styleAnimation.js.map +1 -1
- package/lib/module/reanimated2/animation/timing.js +4 -1
- package/lib/module/reanimated2/animation/timing.js.map +1 -1
- package/lib/module/reanimated2/animation/transformationMatrix/matrixUtils.js +1 -2
- package/lib/module/reanimated2/animation/transformationMatrix/matrixUtils.js.map +1 -1
- package/lib/module/reanimated2/animation/util.js +22 -2
- package/lib/module/reanimated2/animation/util.js.map +1 -1
- package/lib/module/reanimated2/commonTypes.js +3 -1
- package/lib/module/reanimated2/commonTypes.js.map +1 -1
- package/lib/module/reanimated2/component/FlatList.js +1 -0
- package/lib/module/reanimated2/component/FlatList.js.map +1 -1
- package/lib/module/reanimated2/component/Image.js +1 -0
- package/lib/module/reanimated2/component/Image.js.map +1 -1
- package/lib/module/reanimated2/component/LayoutAnimationConfig.js +1 -0
- package/lib/module/reanimated2/component/LayoutAnimationConfig.js.map +1 -1
- package/lib/module/reanimated2/component/PerformanceMonitor.js +169 -0
- package/lib/module/reanimated2/component/PerformanceMonitor.js.map +1 -0
- package/lib/module/reanimated2/component/ScrollView.js +1 -0
- package/lib/module/reanimated2/component/ScrollView.js.map +1 -1
- package/lib/module/reanimated2/component/Text.js +1 -0
- package/lib/module/reanimated2/component/Text.js.map +1 -1
- package/lib/module/reanimated2/component/View.js +1 -0
- package/lib/module/reanimated2/component/View.js.map +1 -1
- package/lib/module/reanimated2/core.js +6 -15
- package/lib/module/reanimated2/core.js.map +1 -1
- package/lib/module/reanimated2/errors.js +8 -8
- package/lib/module/reanimated2/errors.js.map +1 -1
- package/lib/module/reanimated2/fabricUtils.js +33 -8
- package/lib/module/reanimated2/fabricUtils.js.map +1 -1
- package/lib/module/reanimated2/fabricUtils.web.js.map +1 -1
- package/lib/module/reanimated2/frameCallback/FrameCallbackRegistryJS.js +2 -2
- package/lib/module/reanimated2/frameCallback/FrameCallbackRegistryJS.js.map +1 -1
- package/lib/module/reanimated2/frameCallback/FrameCallbackRegistryUI.js.map +1 -1
- package/lib/module/reanimated2/frameCallback/index.js.map +1 -1
- package/lib/module/reanimated2/globals.d.js.map +1 -1
- package/lib/module/reanimated2/helperTypes.js.map +1 -1
- package/lib/module/reanimated2/hook/commonTypes.js.map +1 -1
- package/lib/module/reanimated2/hook/index.js.map +1 -1
- package/lib/module/reanimated2/hook/useAnimatedGestureHandler.js +1 -0
- package/lib/module/reanimated2/hook/useAnimatedGestureHandler.js.map +1 -1
- package/lib/module/reanimated2/hook/useAnimatedKeyboard.js +3 -4
- package/lib/module/reanimated2/hook/useAnimatedKeyboard.js.map +1 -1
- package/lib/module/reanimated2/hook/useAnimatedProps.js.map +1 -1
- package/lib/module/reanimated2/hook/useAnimatedReaction.js +1 -0
- package/lib/module/reanimated2/hook/useAnimatedReaction.js.map +1 -1
- package/lib/module/reanimated2/hook/useAnimatedRef.js +12 -7
- package/lib/module/reanimated2/hook/useAnimatedRef.js.map +1 -1
- package/lib/module/reanimated2/hook/useAnimatedScrollHandler.js +3 -1
- package/lib/module/reanimated2/hook/useAnimatedScrollHandler.js.map +1 -1
- package/lib/module/reanimated2/hook/useAnimatedSensor.js.map +1 -1
- package/lib/module/reanimated2/hook/useAnimatedStyle.js +3 -6
- package/lib/module/reanimated2/hook/useAnimatedStyle.js.map +1 -1
- package/lib/module/reanimated2/hook/useDerivedValue.js +3 -1
- package/lib/module/reanimated2/hook/useDerivedValue.js.map +1 -1
- package/lib/module/reanimated2/hook/useEvent.js +4 -5
- package/lib/module/reanimated2/hook/useEvent.js.map +1 -1
- package/lib/module/reanimated2/hook/useFrameCallback.js +1 -2
- package/lib/module/reanimated2/hook/useFrameCallback.js.map +1 -1
- package/lib/module/reanimated2/hook/useHandler.js +3 -1
- package/lib/module/reanimated2/hook/useHandler.js.map +1 -1
- package/lib/module/reanimated2/hook/useReducedMotion.js.map +1 -1
- package/lib/module/reanimated2/hook/useScrollViewOffset.js +60 -16
- package/lib/module/reanimated2/hook/useScrollViewOffset.js.map +1 -1
- package/lib/module/reanimated2/hook/useSharedValue.js.map +1 -1
- package/lib/module/reanimated2/hook/useWorkletCallback.js.map +1 -1
- package/lib/module/reanimated2/hook/utils.js.map +1 -1
- package/lib/module/reanimated2/index.js +2 -0
- package/lib/module/reanimated2/index.js.map +1 -1
- package/lib/module/reanimated2/initializers.js +1 -5
- package/lib/module/reanimated2/initializers.js.map +1 -1
- package/lib/module/reanimated2/interpolateColor.js +2 -6
- package/lib/module/reanimated2/interpolateColor.js.map +1 -1
- package/lib/module/reanimated2/interpolation.js +1 -1
- package/lib/module/reanimated2/interpolation.js.map +1 -1
- package/lib/module/reanimated2/isSharedValue.js.map +1 -1
- package/lib/module/reanimated2/jestUtils.js +3 -6
- package/lib/module/reanimated2/jestUtils.js.map +1 -1
- package/lib/module/reanimated2/jestUtils.web.js.map +1 -1
- package/lib/module/reanimated2/js-reanimated/JSReanimated.js +5 -9
- package/lib/module/reanimated2/js-reanimated/JSReanimated.js.map +1 -1
- package/lib/module/reanimated2/js-reanimated/WebSensor.js.map +1 -1
- package/lib/module/reanimated2/js-reanimated/index.js +2 -2
- package/lib/module/reanimated2/js-reanimated/index.js.map +1 -1
- package/lib/module/reanimated2/js-reanimated/react-native-web.d.js.map +1 -1
- package/lib/module/reanimated2/layoutReanimation/animationBuilder/BaseAnimationBuilder.js +4 -2
- package/lib/module/reanimated2/layoutReanimation/animationBuilder/BaseAnimationBuilder.js.map +1 -1
- package/lib/module/reanimated2/layoutReanimation/animationBuilder/ComplexAnimationBuilder.js +12 -11
- package/lib/module/reanimated2/layoutReanimation/animationBuilder/ComplexAnimationBuilder.js.map +1 -1
- package/lib/module/reanimated2/layoutReanimation/animationBuilder/Keyframe.js +12 -10
- package/lib/module/reanimated2/layoutReanimation/animationBuilder/Keyframe.js.map +1 -1
- package/lib/module/reanimated2/layoutReanimation/animationBuilder/commonTypes.js.map +1 -1
- package/lib/module/reanimated2/layoutReanimation/animationBuilder/index.js.map +1 -1
- package/lib/module/reanimated2/layoutReanimation/animationsManager.js +11 -4
- package/lib/module/reanimated2/layoutReanimation/animationsManager.js.map +1 -1
- package/lib/module/reanimated2/layoutReanimation/defaultAnimations/Bounce.js +22 -22
- package/lib/module/reanimated2/layoutReanimation/defaultAnimations/Bounce.js.map +1 -1
- package/lib/module/reanimated2/layoutReanimation/defaultAnimations/Fade.js +22 -22
- package/lib/module/reanimated2/layoutReanimation/defaultAnimations/Fade.js.map +1 -1
- package/lib/module/reanimated2/layoutReanimation/defaultAnimations/Flip.js +26 -26
- package/lib/module/reanimated2/layoutReanimation/defaultAnimations/Flip.js.map +1 -1
- package/lib/module/reanimated2/layoutReanimation/defaultAnimations/Lightspeed.js +10 -10
- package/lib/module/reanimated2/layoutReanimation/defaultAnimations/Lightspeed.js.map +1 -1
- package/lib/module/reanimated2/layoutReanimation/defaultAnimations/Pinwheel.js +6 -6
- package/lib/module/reanimated2/layoutReanimation/defaultAnimations/Pinwheel.js.map +1 -1
- package/lib/module/reanimated2/layoutReanimation/defaultAnimations/Roll.js +10 -10
- package/lib/module/reanimated2/layoutReanimation/defaultAnimations/Roll.js.map +1 -1
- package/lib/module/reanimated2/layoutReanimation/defaultAnimations/Rotate.js +18 -18
- package/lib/module/reanimated2/layoutReanimation/defaultAnimations/Rotate.js.map +1 -1
- package/lib/module/reanimated2/layoutReanimation/defaultAnimations/Slide.js +18 -18
- package/lib/module/reanimated2/layoutReanimation/defaultAnimations/Slide.js.map +1 -1
- package/lib/module/reanimated2/layoutReanimation/defaultAnimations/Stretch.js +10 -10
- package/lib/module/reanimated2/layoutReanimation/defaultAnimations/Stretch.js.map +1 -1
- package/lib/module/reanimated2/layoutReanimation/defaultAnimations/Zoom.js +34 -34
- package/lib/module/reanimated2/layoutReanimation/defaultAnimations/Zoom.js.map +1 -1
- package/lib/module/reanimated2/layoutReanimation/defaultAnimations/index.js.map +1 -1
- package/lib/module/reanimated2/layoutReanimation/defaultTransitions/CurvedTransition.js +17 -4
- package/lib/module/reanimated2/layoutReanimation/defaultTransitions/CurvedTransition.js.map +1 -1
- package/lib/module/reanimated2/layoutReanimation/defaultTransitions/EntryExitTransition.js +4 -4
- package/lib/module/reanimated2/layoutReanimation/defaultTransitions/EntryExitTransition.js.map +1 -1
- package/lib/module/reanimated2/layoutReanimation/defaultTransitions/FadingTransition.js +4 -4
- package/lib/module/reanimated2/layoutReanimation/defaultTransitions/FadingTransition.js.map +1 -1
- package/lib/module/reanimated2/layoutReanimation/defaultTransitions/JumpingTransition.js +4 -4
- package/lib/module/reanimated2/layoutReanimation/defaultTransitions/JumpingTransition.js.map +1 -1
- package/lib/module/reanimated2/layoutReanimation/defaultTransitions/LinearTransition.js +4 -4
- package/lib/module/reanimated2/layoutReanimation/defaultTransitions/LinearTransition.js.map +1 -1
- package/lib/module/reanimated2/layoutReanimation/defaultTransitions/SequencedTransition.js +4 -4
- package/lib/module/reanimated2/layoutReanimation/defaultTransitions/SequencedTransition.js.map +1 -1
- package/lib/module/reanimated2/layoutReanimation/defaultTransitions/index.js.map +1 -1
- package/lib/module/reanimated2/layoutReanimation/index.js.map +1 -1
- package/lib/module/reanimated2/layoutReanimation/sharedTransitions/ProgressTransitionManager.js +16 -12
- package/lib/module/reanimated2/layoutReanimation/sharedTransitions/ProgressTransitionManager.js.map +1 -1
- package/lib/module/reanimated2/layoutReanimation/sharedTransitions/SharedTransition.js +13 -7
- package/lib/module/reanimated2/layoutReanimation/sharedTransitions/SharedTransition.js.map +1 -1
- package/lib/module/reanimated2/layoutReanimation/sharedTransitions/SharedTransition.web.js.map +1 -1
- package/lib/module/reanimated2/layoutReanimation/sharedTransitions/index.js.map +1 -1
- package/lib/module/reanimated2/layoutReanimation/web/animation/Bounce.web.js.map +1 -1
- package/lib/module/reanimated2/layoutReanimation/web/animation/Fade.web.js.map +1 -1
- package/lib/module/reanimated2/layoutReanimation/web/animation/Flip.web.js.map +1 -1
- package/lib/module/reanimated2/layoutReanimation/web/animation/Lightspeed.web.js.map +1 -1
- package/lib/module/reanimated2/layoutReanimation/web/animation/Pinwheel.web.js.map +1 -1
- package/lib/module/reanimated2/layoutReanimation/web/animation/Roll.web.js.map +1 -1
- package/lib/module/reanimated2/layoutReanimation/web/animation/Rotate.web.js.map +1 -1
- package/lib/module/reanimated2/layoutReanimation/web/animation/Slide.web.js.map +1 -1
- package/lib/module/reanimated2/layoutReanimation/web/animation/Stretch.web.js.map +1 -1
- package/lib/module/reanimated2/layoutReanimation/web/animation/Zoom.web.js.map +1 -1
- package/lib/module/reanimated2/layoutReanimation/web/animationParser.js +0 -2
- package/lib/module/reanimated2/layoutReanimation/web/animationParser.js.map +1 -1
- package/lib/module/reanimated2/layoutReanimation/web/animationsManager.js +1 -2
- package/lib/module/reanimated2/layoutReanimation/web/animationsManager.js.map +1 -1
- package/lib/module/reanimated2/layoutReanimation/web/componentStyle.js +3 -1
- package/lib/module/reanimated2/layoutReanimation/web/componentStyle.js.map +1 -1
- package/lib/module/reanimated2/layoutReanimation/web/componentUtils.js +6 -7
- package/lib/module/reanimated2/layoutReanimation/web/componentUtils.js.map +1 -1
- package/lib/module/reanimated2/layoutReanimation/web/config.js.map +1 -1
- package/lib/module/reanimated2/layoutReanimation/web/createAnimation.js +2 -2
- package/lib/module/reanimated2/layoutReanimation/web/createAnimation.js.map +1 -1
- package/lib/module/reanimated2/layoutReanimation/web/domUtils.js +4 -4
- package/lib/module/reanimated2/layoutReanimation/web/domUtils.js.map +1 -1
- package/lib/module/reanimated2/layoutReanimation/web/index.js.map +1 -1
- package/lib/module/reanimated2/layoutReanimation/web/transition/Fading.web.js.map +1 -1
- package/lib/module/reanimated2/layoutReanimation/web/transition/Linear.web.js.map +1 -1
- package/lib/module/reanimated2/layoutReanimation/web/transition/Sequenced.web.js.map +1 -1
- package/lib/module/reanimated2/mappers.js +2 -4
- package/lib/module/reanimated2/mappers.js.map +1 -1
- package/lib/module/reanimated2/mockedRequestAnimationFrame.js.map +1 -1
- package/lib/module/reanimated2/mutables.js +2 -4
- package/lib/module/reanimated2/mutables.js.map +1 -1
- package/lib/module/reanimated2/platform-specific/RNRenderer.js.map +1 -1
- package/lib/module/reanimated2/platform-specific/RNRenderer.web.js.map +1 -1
- package/lib/module/reanimated2/platform-specific/checkCppVersion.js.map +1 -1
- package/lib/module/reanimated2/platform-specific/jsVersion.js +1 -1
- package/lib/module/reanimated2/platform-specific/jsVersion.js.map +1 -1
- package/lib/module/reanimated2/platformFunctions/dispatchCommand.js +2 -4
- package/lib/module/reanimated2/platformFunctions/dispatchCommand.js.map +1 -1
- package/lib/module/reanimated2/platformFunctions/dispatchCommand.web.js.map +1 -1
- package/lib/module/reanimated2/platformFunctions/getRelativeCoords.js +2 -2
- package/lib/module/reanimated2/platformFunctions/getRelativeCoords.js.map +1 -1
- package/lib/module/reanimated2/platformFunctions/index.js.map +1 -1
- package/lib/module/reanimated2/platformFunctions/measure.js.map +1 -1
- package/lib/module/reanimated2/platformFunctions/measure.web.js.map +1 -1
- package/lib/module/reanimated2/platformFunctions/scrollTo.js.map +1 -1
- package/lib/module/reanimated2/platformFunctions/scrollTo.web.js +1 -1
- package/lib/module/reanimated2/platformFunctions/scrollTo.web.js.map +1 -1
- package/lib/module/reanimated2/platformFunctions/setGestureState.js.map +1 -1
- package/lib/module/reanimated2/platformFunctions/setGestureState.web.js.map +1 -1
- package/lib/module/reanimated2/platformFunctions/setNativeProps.js.map +1 -1
- package/lib/module/reanimated2/platformFunctions/setNativeProps.web.js.map +1 -1
- package/lib/module/reanimated2/pluginUtils.js.map +1 -1
- package/lib/module/reanimated2/publicGlobals.js.map +1 -1
- package/lib/module/reanimated2/runtimes.js +11 -19
- package/lib/module/reanimated2/runtimes.js.map +1 -1
- package/lib/module/reanimated2/screenTransition/RNScreensTurboModule.js +20 -0
- package/lib/module/reanimated2/screenTransition/RNScreensTurboModule.js.map +1 -0
- package/lib/module/reanimated2/screenTransition/animationManager.js +41 -0
- package/lib/module/reanimated2/screenTransition/animationManager.js.map +1 -0
- package/lib/module/reanimated2/screenTransition/commonTypes.js +4 -0
- package/lib/module/reanimated2/screenTransition/commonTypes.js.map +1 -0
- package/lib/module/reanimated2/screenTransition/index.js +5 -0
- package/lib/module/reanimated2/screenTransition/index.js.map +1 -0
- package/lib/module/reanimated2/screenTransition/presets.js +157 -0
- package/lib/module/reanimated2/screenTransition/presets.js.map +1 -0
- package/lib/module/reanimated2/screenTransition/styleUpdater.js +62 -0
- package/lib/module/reanimated2/screenTransition/styleUpdater.js.map +1 -0
- package/lib/module/reanimated2/screenTransition/swipeSimulator.js +190 -0
- package/lib/module/reanimated2/screenTransition/swipeSimulator.js.map +1 -0
- package/lib/module/reanimated2/shareableMappingCache.js.map +1 -1
- package/lib/module/reanimated2/shareables.js +27 -10
- package/lib/module/reanimated2/shareables.js.map +1 -1
- package/lib/module/reanimated2/threads.js +9 -34
- package/lib/module/reanimated2/threads.js.map +1 -1
- package/lib/module/reanimated2/valueSetter.js +1 -2
- package/lib/module/reanimated2/valueSetter.js.map +1 -1
- package/lib/module/reanimated2/valueUnpacker.js +4 -3
- package/lib/module/reanimated2/valueUnpacker.js.map +1 -1
- package/lib/module/specs/NativeReanimatedModule.js +5 -0
- package/lib/module/specs/NativeReanimatedModule.js.map +1 -0
- package/lib/typescript/ConfigHelper.d.ts +1 -0
- package/lib/typescript/createAnimatedComponent/InlinePropManager.d.ts +1 -1
- package/lib/typescript/createAnimatedComponent/JSPropsUpdater.web.d.ts +6 -0
- package/lib/typescript/createAnimatedComponent/PropsFilter.d.ts +3 -0
- package/lib/typescript/createAnimatedComponent/getViewInfo.d.ts +9 -0
- package/lib/typescript/reanimated2/NativeReanimated/NativeReanimated.d.ts +8 -13
- package/lib/typescript/reanimated2/UpdateLayoutAnimations.d.ts +12 -1
- package/lib/typescript/reanimated2/WorkletEventHandler.d.ts +16 -9
- package/lib/typescript/reanimated2/animation/util.d.ts +2 -0
- package/lib/typescript/reanimated2/component/LayoutAnimationConfig.d.ts +1 -1
- package/lib/typescript/reanimated2/component/PerformanceMonitor.d.ts +2 -0
- package/lib/typescript/reanimated2/core.d.ts +3 -4
- package/lib/typescript/reanimated2/hook/commonTypes.d.ts +6 -0
- package/lib/typescript/reanimated2/hook/useEvent.d.ts +2 -3
- package/lib/typescript/reanimated2/hook/useScrollViewOffset.d.ts +3 -1
- package/lib/typescript/reanimated2/index.d.ts +3 -0
- package/lib/typescript/reanimated2/js-reanimated/JSReanimated.d.ts +2 -2
- package/lib/typescript/reanimated2/layoutReanimation/animationBuilder/commonTypes.d.ts +2 -1
- package/lib/typescript/reanimated2/layoutReanimation/sharedTransitions/ProgressTransitionManager.d.ts +2 -2
- package/lib/typescript/reanimated2/layoutReanimation/sharedTransitions/SharedTransition.d.ts +2 -2
- package/lib/typescript/reanimated2/platform-specific/jsVersion.d.ts +1 -1
- package/lib/typescript/reanimated2/screenTransition/RNScreensTurboModule.d.ts +2 -0
- package/lib/typescript/reanimated2/screenTransition/animationManager.d.ts +3 -0
- package/lib/typescript/reanimated2/screenTransition/commonTypes.d.ts +38 -0
- package/lib/typescript/reanimated2/screenTransition/index.d.ts +3 -0
- package/lib/typescript/reanimated2/screenTransition/presets.d.ts +11 -0
- package/lib/typescript/reanimated2/screenTransition/styleUpdater.d.ts +3 -0
- package/lib/typescript/reanimated2/screenTransition/swipeSimulator.d.ts +2 -0
- package/lib/typescript/specs/NativeReanimatedModule.d.ts +6 -0
- package/package.json +29 -17
- package/plugin/build/plugin.js +7 -2
- package/src/ConfigHelper.ts +1 -1
- package/src/animationBuilder.tsx +2 -0
- package/src/createAnimatedComponent/InlinePropManager.ts +2 -2
- package/src/createAnimatedComponent/JSPropsUpdater.ts +7 -6
- package/src/createAnimatedComponent/JSPropsUpdater.web.ts +26 -0
- package/src/createAnimatedComponent/PropsFilter.tsx +31 -6
- package/src/createAnimatedComponent/createAnimatedComponent.tsx +108 -60
- package/src/createAnimatedComponent/getViewInfo.ts +39 -0
- package/src/mock.ts +13 -1
- package/src/reanimated2/NativeReanimated/NativeReanimated.ts +33 -35
- package/src/reanimated2/PlatformChecker.ts +3 -2
- package/src/reanimated2/PropsRegistry.ts +1 -3
- package/src/reanimated2/UpdateLayoutAnimations.ts +53 -13
- package/src/reanimated2/WorkletEventHandler.ts +98 -39
- package/src/reanimated2/animation/styleAnimation.ts +8 -6
- package/src/reanimated2/animation/timing.ts +9 -1
- package/src/reanimated2/animation/util.ts +28 -3
- package/src/reanimated2/commonTypes.ts +4 -1
- package/src/reanimated2/component/PerformanceMonitor.tsx +216 -0
- package/src/reanimated2/core.ts +9 -31
- package/src/reanimated2/errors.ts +1 -0
- package/src/reanimated2/fabricUtils.ts +43 -18
- package/src/reanimated2/globals.d.ts +11 -1
- package/src/reanimated2/hook/commonTypes.ts +10 -0
- package/src/reanimated2/hook/useAnimatedRef.ts +20 -11
- package/src/reanimated2/hook/useEvent.ts +4 -4
- package/src/reanimated2/hook/useScrollViewOffset.ts +94 -23
- package/src/reanimated2/index.ts +11 -0
- package/src/reanimated2/js-reanimated/JSReanimated.ts +7 -7
- package/src/reanimated2/layoutReanimation/animationBuilder/ComplexAnimationBuilder.ts +4 -0
- package/src/reanimated2/layoutReanimation/animationBuilder/Keyframe.ts +9 -1
- package/src/reanimated2/layoutReanimation/animationBuilder/commonTypes.ts +9 -1
- package/src/reanimated2/layoutReanimation/animationsManager.ts +10 -2
- package/src/reanimated2/layoutReanimation/defaultTransitions/CurvedTransition.ts +13 -0
- package/src/reanimated2/layoutReanimation/sharedTransitions/ProgressTransitionManager.ts +17 -8
- package/src/reanimated2/layoutReanimation/sharedTransitions/SharedTransition.ts +26 -7
- package/src/reanimated2/layoutReanimation/web/animationsManager.ts +1 -1
- package/src/reanimated2/layoutReanimation/web/componentStyle.ts +3 -1
- package/src/reanimated2/layoutReanimation/web/componentUtils.ts +1 -1
- package/src/reanimated2/layoutReanimation/web/createAnimation.ts +2 -2
- package/src/reanimated2/platform-specific/jsVersion.ts +1 -1
- package/src/reanimated2/platformFunctions/getRelativeCoords.ts +2 -2
- package/src/reanimated2/screenTransition/RNScreensTurboModule.ts +29 -0
- package/src/reanimated2/screenTransition/animationManager.ts +45 -0
- package/src/reanimated2/screenTransition/commonTypes.ts +63 -0
- package/src/reanimated2/screenTransition/index.ts +12 -0
- package/src/reanimated2/screenTransition/presets.ts +137 -0
- package/src/reanimated2/screenTransition/styleUpdater.ts +73 -0
- package/src/reanimated2/screenTransition/swipeSimulator.ts +238 -0
- package/src/reanimated2/shareables.ts +29 -6
- package/src/reanimated2/valueUnpacker.ts +10 -3
- package/src/specs/NativeReanimatedModule.ts +9 -0
- package/android/src/reactNativeVersionPatch/ReanimatedUIManager/70/com/swmansion/reanimated/ReanimatedUIManagerFactory.java +0 -16
- package/android/src/reactNativeVersionPatch/messageQueueThread/67/com/swmansion/reanimated/ReanimatedMessageQueueThread.java +0 -12
|
@@ -0,0 +1,429 @@
|
|
|
1
|
+
#import <RNReanimated/LayoutAnimationsManager.h>
|
|
2
|
+
#import <RNReanimated/NativeMethods.h>
|
|
3
|
+
#import <RNReanimated/NativeProxy.h>
|
|
4
|
+
#import <RNReanimated/PlatformDepMethodsHolder.h>
|
|
5
|
+
#import <RNReanimated/REAAnimationsManager.h>
|
|
6
|
+
#import <RNReanimated/REAIOSUIScheduler.h>
|
|
7
|
+
#import <RNReanimated/REAJSIUtils.h>
|
|
8
|
+
#import <RNReanimated/REAKeyboardEventObserver.h>
|
|
9
|
+
#import <RNReanimated/REAMessageThread.h>
|
|
10
|
+
#import <RNReanimated/REAModule.h>
|
|
11
|
+
#import <RNReanimated/REANodesManager.h>
|
|
12
|
+
#import <RNReanimated/REASlowAnimations.h>
|
|
13
|
+
#import <RNReanimated/REASwizzledUIManager.h>
|
|
14
|
+
#import <RNReanimated/RNGestureHandlerStateManager.h>
|
|
15
|
+
#import <RNReanimated/ReanimatedRuntime.h>
|
|
16
|
+
#import <RNReanimated/ReanimatedSensorContainer.h>
|
|
17
|
+
|
|
18
|
+
#ifndef NDEBUG
|
|
19
|
+
#import <RNReanimated/REAScreensHelper.h>
|
|
20
|
+
#endif
|
|
21
|
+
|
|
22
|
+
#ifdef RCT_NEW_ARCH_ENABLED
|
|
23
|
+
#import <React/RCTBridge+Private.h>
|
|
24
|
+
#import <React/RCTScheduler.h>
|
|
25
|
+
#import <React/RCTSurfacePresenter.h>
|
|
26
|
+
#import <react/renderer/core/ShadowNode.h>
|
|
27
|
+
#import <react/renderer/uimanager/primitives.h>
|
|
28
|
+
#endif
|
|
29
|
+
|
|
30
|
+
#import <React/RCTUIManager.h>
|
|
31
|
+
|
|
32
|
+
#if TARGET_IPHONE_SIMULATOR
|
|
33
|
+
#import <dlfcn.h>
|
|
34
|
+
#endif
|
|
35
|
+
|
|
36
|
+
#import <RNReanimated/READisplayLink.h>
|
|
37
|
+
|
|
38
|
+
@interface RCTUIManager (DispatchCommand)
|
|
39
|
+
- (void)dispatchViewManagerCommand:(nonnull NSNumber *)reactTag
|
|
40
|
+
commandID:(id /*(NSString or NSNumber) */)commandID
|
|
41
|
+
commandArgs:(NSArray<id> *)commandArgs;
|
|
42
|
+
@end
|
|
43
|
+
|
|
44
|
+
namespace reanimated {
|
|
45
|
+
|
|
46
|
+
using namespace facebook;
|
|
47
|
+
using namespace react;
|
|
48
|
+
|
|
49
|
+
static NSSet *convertProps(jsi::Runtime &rt, const jsi::Value &props)
|
|
50
|
+
{
|
|
51
|
+
NSMutableSet *propsSet = [[NSMutableSet alloc] init];
|
|
52
|
+
jsi::Array propsNames = props.asObject(rt).asArray(rt);
|
|
53
|
+
for (int i = 0; i < propsNames.size(rt); i++) {
|
|
54
|
+
NSString *propName = @(propsNames.getValueAtIndex(rt, i).asString(rt).utf8(rt).c_str());
|
|
55
|
+
[propsSet addObject:propName];
|
|
56
|
+
}
|
|
57
|
+
return propsSet;
|
|
58
|
+
}
|
|
59
|
+
|
|
60
|
+
SetGestureStateFunction makeSetGestureStateFunction(RCTBridge *bridge)
|
|
61
|
+
{
|
|
62
|
+
id<RNGestureHandlerStateManager> gestureHandlerStateManager = nil;
|
|
63
|
+
auto setGestureStateFunction = [gestureHandlerStateManager, bridge](int handlerTag, int newState) mutable {
|
|
64
|
+
if (gestureHandlerStateManager == nil) {
|
|
65
|
+
gestureHandlerStateManager = [bridge moduleForName:@"RNGestureHandlerModule"];
|
|
66
|
+
}
|
|
67
|
+
|
|
68
|
+
setGestureState(gestureHandlerStateManager, handlerTag, newState);
|
|
69
|
+
};
|
|
70
|
+
return setGestureStateFunction;
|
|
71
|
+
}
|
|
72
|
+
|
|
73
|
+
#if REACT_NATIVE_MINOR_VERSION >= 74 && defined(RCT_NEW_ARCH_ENABLED)
|
|
74
|
+
SetGestureStateFunction makeSetGestureStateFunctionBridgeless(RCTModuleRegistry *moduleRegistry)
|
|
75
|
+
{
|
|
76
|
+
id<RNGestureHandlerStateManager> gestureHandlerStateManager = nil;
|
|
77
|
+
auto setGestureStateFunction = [gestureHandlerStateManager, moduleRegistry](int handlerTag, int newState) mutable {
|
|
78
|
+
if (gestureHandlerStateManager == nil) {
|
|
79
|
+
gestureHandlerStateManager = [moduleRegistry moduleForName:"RNGestureHandlerModule"];
|
|
80
|
+
}
|
|
81
|
+
setGestureState(gestureHandlerStateManager, handlerTag, newState);
|
|
82
|
+
};
|
|
83
|
+
return setGestureStateFunction;
|
|
84
|
+
}
|
|
85
|
+
#endif // REACT_NATIVE_MINOR_VERSION >= 74 && defined(RCT_NEW_ARCH_ENABLED)
|
|
86
|
+
|
|
87
|
+
RequestRenderFunction makeRequestRender(REANodesManager *nodesManager)
|
|
88
|
+
{
|
|
89
|
+
auto requestRender = [nodesManager](std::function<void(double)> onRender, jsi::Runtime &rt) {
|
|
90
|
+
[nodesManager postOnAnimation:^(READisplayLink *displayLink) {
|
|
91
|
+
#if !TARGET_OS_OSX
|
|
92
|
+
auto targetTimestamp = displayLink.targetTimestamp;
|
|
93
|
+
#else
|
|
94
|
+
// TODO macOS targetTimestamp isn't available on macOS
|
|
95
|
+
auto targetTimestamp = displayLink.timestamp + displayLink.duration;
|
|
96
|
+
#endif
|
|
97
|
+
double frameTimestamp =
|
|
98
|
+
|
|
99
|
+
(targetTimestamp)*1000;
|
|
100
|
+
onRender(frameTimestamp);
|
|
101
|
+
}];
|
|
102
|
+
};
|
|
103
|
+
|
|
104
|
+
return requestRender;
|
|
105
|
+
}
|
|
106
|
+
|
|
107
|
+
#ifdef RCT_NEW_ARCH_ENABLED
|
|
108
|
+
SynchronouslyUpdateUIPropsFunction makeSynchronouslyUpdateUIPropsFunction(REANodesManager *nodesManager)
|
|
109
|
+
{
|
|
110
|
+
auto synchronouslyUpdateUIPropsFunction = [nodesManager](jsi::Runtime &rt, Tag tag, const jsi::Object &props) {
|
|
111
|
+
NSNumber *viewTag = @(tag);
|
|
112
|
+
NSDictionary *uiProps = convertJSIObjectToNSDictionary(rt, props);
|
|
113
|
+
[nodesManager synchronouslyUpdateViewOnUIThread:viewTag props:uiProps];
|
|
114
|
+
};
|
|
115
|
+
return synchronouslyUpdateUIPropsFunction;
|
|
116
|
+
}
|
|
117
|
+
#endif // RCT_NEW_ARCH_ENABLED
|
|
118
|
+
|
|
119
|
+
#ifdef RCT_NEW_ARCH_ENABLED
|
|
120
|
+
// nothing
|
|
121
|
+
#else // RCT_NEW_ARCH_ENABLED
|
|
122
|
+
UpdatePropsFunction makeUpdatePropsFunction(REAModule *reaModule)
|
|
123
|
+
{
|
|
124
|
+
auto updatePropsFunction = [reaModule](jsi::Runtime &rt, const jsi::Value &operations) -> void {
|
|
125
|
+
auto array = operations.asObject(rt).asArray(rt);
|
|
126
|
+
size_t length = array.size(rt);
|
|
127
|
+
for (size_t i = 0; i < length; ++i) {
|
|
128
|
+
auto item = array.getValueAtIndex(rt, i).asObject(rt);
|
|
129
|
+
int viewTag = item.getProperty(rt, "tag").asNumber();
|
|
130
|
+
const jsi::Value &viewName = item.getProperty(rt, "name");
|
|
131
|
+
const jsi::Object &props = item.getProperty(rt, "updates").asObject(rt);
|
|
132
|
+
|
|
133
|
+
NSString *nsViewName = [NSString stringWithCString:viewName.asString(rt).utf8(rt).c_str()
|
|
134
|
+
encoding:[NSString defaultCStringEncoding]];
|
|
135
|
+
|
|
136
|
+
NSDictionary *propsDict = convertJSIObjectToNSDictionary(rt, props);
|
|
137
|
+
[reaModule.nodesManager updateProps:propsDict ofViewWithTag:[NSNumber numberWithInt:viewTag] withName:nsViewName];
|
|
138
|
+
}
|
|
139
|
+
};
|
|
140
|
+
return updatePropsFunction;
|
|
141
|
+
}
|
|
142
|
+
|
|
143
|
+
MeasureFunction makeMeasureFunction(RCTUIManager *uiManager)
|
|
144
|
+
{
|
|
145
|
+
auto measureFunction = [uiManager](int viewTag) -> std::vector<std::pair<std::string, double>> {
|
|
146
|
+
return measure(viewTag, uiManager);
|
|
147
|
+
};
|
|
148
|
+
return measureFunction;
|
|
149
|
+
}
|
|
150
|
+
|
|
151
|
+
ScrollToFunction makeScrollToFunction(RCTUIManager *uiManager)
|
|
152
|
+
{
|
|
153
|
+
auto scrollToFunction = [uiManager](int viewTag, double x, double y, bool animated) {
|
|
154
|
+
scrollTo(viewTag, uiManager, x, y, animated);
|
|
155
|
+
};
|
|
156
|
+
return scrollToFunction;
|
|
157
|
+
}
|
|
158
|
+
|
|
159
|
+
DispatchCommandFunction makeDispatchCommandFunction(RCTUIManager *uiManager)
|
|
160
|
+
{
|
|
161
|
+
auto dispatchCommandFunction =
|
|
162
|
+
[uiManager](
|
|
163
|
+
jsi::Runtime &rt, const int tag, const jsi::Value &commandNameValue, const jsi::Value &argsValue) -> void {
|
|
164
|
+
NSNumber *viewTag = [NSNumber numberWithInt:tag];
|
|
165
|
+
NSString *commandID = [NSString stringWithCString:commandNameValue.asString(rt).utf8(rt).c_str()
|
|
166
|
+
encoding:[NSString defaultCStringEncoding]];
|
|
167
|
+
NSArray *commandArgs = convertJSIArrayToNSArray(rt, argsValue.asObject(rt).asArray(rt));
|
|
168
|
+
RCTExecuteOnUIManagerQueue(^{
|
|
169
|
+
[uiManager dispatchViewManagerCommand:viewTag commandID:commandID commandArgs:commandArgs];
|
|
170
|
+
});
|
|
171
|
+
};
|
|
172
|
+
return dispatchCommandFunction;
|
|
173
|
+
}
|
|
174
|
+
|
|
175
|
+
ConfigurePropsFunction makeConfigurePropsFunction(REAModule *reaModule)
|
|
176
|
+
{
|
|
177
|
+
auto configurePropsFunction = [reaModule](
|
|
178
|
+
jsi::Runtime &rt, const jsi::Value &uiProps, const jsi::Value &nativeProps) {
|
|
179
|
+
NSSet *uiPropsSet = convertProps(rt, uiProps);
|
|
180
|
+
NSSet *nativePropsSet = convertProps(rt, nativeProps);
|
|
181
|
+
[reaModule.nodesManager configureUiProps:uiPropsSet andNativeProps:nativePropsSet];
|
|
182
|
+
};
|
|
183
|
+
return configurePropsFunction;
|
|
184
|
+
}
|
|
185
|
+
|
|
186
|
+
ObtainPropFunction makeObtainPropFunction(REAModule *reaModule)
|
|
187
|
+
{
|
|
188
|
+
auto obtainPropFunction = [reaModule](jsi::Runtime &rt, const int viewTag, const jsi::Value &propName) -> jsi::Value {
|
|
189
|
+
NSString *propNameConverted = [NSString stringWithFormat:@"%s", propName.asString(rt).utf8(rt).c_str()];
|
|
190
|
+
std::string resultStr = std::string([[reaModule.nodesManager obtainProp:[NSNumber numberWithInt:viewTag]
|
|
191
|
+
propName:propNameConverted] UTF8String]);
|
|
192
|
+
jsi::Value val = jsi::String::createFromUtf8(rt, resultStr);
|
|
193
|
+
return val;
|
|
194
|
+
};
|
|
195
|
+
return obtainPropFunction;
|
|
196
|
+
}
|
|
197
|
+
|
|
198
|
+
#endif // RCT_NEW_ARCH_ENABLED
|
|
199
|
+
|
|
200
|
+
GetAnimationTimestampFunction makeGetAnimationTimestamp()
|
|
201
|
+
{
|
|
202
|
+
auto getAnimationTimestamp = []() { return calculateTimestampWithSlowAnimations(CACurrentMediaTime()) * 1000; };
|
|
203
|
+
return getAnimationTimestamp;
|
|
204
|
+
}
|
|
205
|
+
|
|
206
|
+
ProgressLayoutAnimationFunction makeProgressLayoutAnimation(REAModule *reaModule)
|
|
207
|
+
{
|
|
208
|
+
#ifdef RCT_NEW_ARCH_ENABLED
|
|
209
|
+
auto progressLayoutAnimation = [=](jsi::Runtime &rt, int tag, const jsi::Object &newStyle, bool isSharedTransition) {
|
|
210
|
+
// noop
|
|
211
|
+
};
|
|
212
|
+
#else // RCT_NEW_ARCH_ENABLED
|
|
213
|
+
REAAnimationsManager *animationsManager = reaModule.animationsManager;
|
|
214
|
+
__weak REAAnimationsManager *weakAnimationsManager = animationsManager;
|
|
215
|
+
|
|
216
|
+
auto progressLayoutAnimation = [=](jsi::Runtime &rt, int tag, const jsi::Object &newStyle, bool isSharedTransition) {
|
|
217
|
+
NSDictionary *propsDict = convertJSIObjectToNSDictionary(rt, newStyle);
|
|
218
|
+
[weakAnimationsManager progressLayoutAnimationWithStyle:propsDict
|
|
219
|
+
forTag:@(tag)
|
|
220
|
+
isSharedTransition:isSharedTransition];
|
|
221
|
+
};
|
|
222
|
+
#endif // RCT_NEW_ARCH_ENABLED
|
|
223
|
+
return progressLayoutAnimation;
|
|
224
|
+
}
|
|
225
|
+
|
|
226
|
+
EndLayoutAnimationFunction makeEndLayoutAnimation(REAModule *reaModule)
|
|
227
|
+
{
|
|
228
|
+
#ifdef RCT_NEW_ARCH_ENABLED
|
|
229
|
+
auto endLayoutAnimation = [=](int tag, bool removeView) {
|
|
230
|
+
// noop
|
|
231
|
+
};
|
|
232
|
+
#else // RCT_NEW_ARCH_ENABLED
|
|
233
|
+
REAAnimationsManager *animationsManager = reaModule.animationsManager;
|
|
234
|
+
__weak REAAnimationsManager *weakAnimationsManager = animationsManager;
|
|
235
|
+
|
|
236
|
+
auto endLayoutAnimation = [=](int tag, bool removeView) {
|
|
237
|
+
[weakAnimationsManager endLayoutAnimationForTag:@(tag) removeView:removeView];
|
|
238
|
+
};
|
|
239
|
+
#endif // RCT_NEW_ARCH_ENABLED
|
|
240
|
+
return endLayoutAnimation;
|
|
241
|
+
}
|
|
242
|
+
|
|
243
|
+
MaybeFlushUIUpdatesQueueFunction makeMaybeFlushUIUpdatesQueueFunction(REANodesManager *nodesManager)
|
|
244
|
+
{
|
|
245
|
+
auto maybeFlushUIUpdatesQueueFunction = [nodesManager]() { [nodesManager maybeFlushUIUpdatesQueue]; };
|
|
246
|
+
return maybeFlushUIUpdatesQueueFunction;
|
|
247
|
+
}
|
|
248
|
+
|
|
249
|
+
RegisterSensorFunction makeRegisterSensorFunction(ReanimatedSensorContainer *reanimatedSensorContainer)
|
|
250
|
+
{
|
|
251
|
+
auto registerSensorFunction =
|
|
252
|
+
[=](int sensorType, int interval, int iosReferenceFrame, std::function<void(double[], int)> setter) -> int {
|
|
253
|
+
return [reanimatedSensorContainer registerSensor:(ReanimatedSensorType)sensorType
|
|
254
|
+
interval:interval
|
|
255
|
+
iosReferenceFrame:iosReferenceFrame
|
|
256
|
+
setter:^(double *data, int orientationDegrees) {
|
|
257
|
+
setter(data, orientationDegrees);
|
|
258
|
+
}];
|
|
259
|
+
};
|
|
260
|
+
return registerSensorFunction;
|
|
261
|
+
}
|
|
262
|
+
|
|
263
|
+
UnregisterSensorFunction makeUnregisterSensorFunction(ReanimatedSensorContainer *reanimatedSensorContainer)
|
|
264
|
+
{
|
|
265
|
+
auto unregisterSensorFunction = [=](int sensorId) { [reanimatedSensorContainer unregisterSensor:sensorId]; };
|
|
266
|
+
return unregisterSensorFunction;
|
|
267
|
+
}
|
|
268
|
+
|
|
269
|
+
KeyboardEventSubscribeFunction makeSubscribeForKeyboardEventsFunction(REAKeyboardEventObserver *keyboardObserver)
|
|
270
|
+
{
|
|
271
|
+
auto subscribeForKeyboardEventsFunction =
|
|
272
|
+
[=](std::function<void(int keyboardState, int height)> keyboardEventDataUpdater, bool isStatusBarTranslucent) {
|
|
273
|
+
// ignore isStatusBarTranslucent - it's Android only
|
|
274
|
+
return [keyboardObserver subscribeForKeyboardEvents:^(int keyboardState, int height) {
|
|
275
|
+
keyboardEventDataUpdater(keyboardState, height);
|
|
276
|
+
}];
|
|
277
|
+
};
|
|
278
|
+
return subscribeForKeyboardEventsFunction;
|
|
279
|
+
}
|
|
280
|
+
|
|
281
|
+
KeyboardEventUnsubscribeFunction makeUnsubscribeFromKeyboardEventsFunction(REAKeyboardEventObserver *keyboardObserver)
|
|
282
|
+
{
|
|
283
|
+
auto unsubscribeFromKeyboardEventsFunction = [=](int listenerId) {
|
|
284
|
+
[keyboardObserver unsubscribeFromKeyboardEvents:listenerId];
|
|
285
|
+
};
|
|
286
|
+
return unsubscribeFromKeyboardEventsFunction;
|
|
287
|
+
}
|
|
288
|
+
|
|
289
|
+
PlatformDepMethodsHolder
|
|
290
|
+
makePlatformDepMethodsHolder(RCTBridge *bridge, REANodesManager *nodesManager, REAModule *reaModule)
|
|
291
|
+
{
|
|
292
|
+
auto requestRender = makeRequestRender(nodesManager);
|
|
293
|
+
|
|
294
|
+
#ifdef RCT_NEW_ARCH_ENABLED
|
|
295
|
+
auto synchronouslyUpdateUIPropsFunction = makeSynchronouslyUpdateUIPropsFunction(nodesManager);
|
|
296
|
+
#endif // RCT_NEW_ARCH_ENABLED
|
|
297
|
+
|
|
298
|
+
#ifdef RCT_NEW_ARCH_ENABLED
|
|
299
|
+
// nothing
|
|
300
|
+
#else
|
|
301
|
+
RCTUIManager *uiManager = nodesManager.uiManager;
|
|
302
|
+
auto updatePropsFunction = makeUpdatePropsFunction(reaModule);
|
|
303
|
+
|
|
304
|
+
auto measureFunction = makeMeasureFunction(uiManager);
|
|
305
|
+
|
|
306
|
+
auto scrollToFunction = makeScrollToFunction(uiManager);
|
|
307
|
+
|
|
308
|
+
auto dispatchCommandFunction = makeDispatchCommandFunction(uiManager);
|
|
309
|
+
|
|
310
|
+
#endif // RCT_NEW_ARCH_ENABLED
|
|
311
|
+
|
|
312
|
+
auto getAnimationTimestamp = makeGetAnimationTimestamp();
|
|
313
|
+
|
|
314
|
+
auto setGestureStateFunction = makeSetGestureStateFunction(bridge);
|
|
315
|
+
|
|
316
|
+
#ifdef RCT_NEW_ARCH_ENABLED
|
|
317
|
+
|
|
318
|
+
auto progressLayoutAnimation = makeProgressLayoutAnimation(reaModule);
|
|
319
|
+
|
|
320
|
+
auto endLayoutAnimation = makeEndLayoutAnimation(reaModule);
|
|
321
|
+
|
|
322
|
+
#else
|
|
323
|
+
// Layout Animations start
|
|
324
|
+
|
|
325
|
+
auto progressLayoutAnimation = makeProgressLayoutAnimation(reaModule);
|
|
326
|
+
|
|
327
|
+
auto endLayoutAnimation = makeEndLayoutAnimation(reaModule);
|
|
328
|
+
|
|
329
|
+
auto configurePropsFunction = makeConfigurePropsFunction(reaModule);
|
|
330
|
+
|
|
331
|
+
// Layout Animations end
|
|
332
|
+
#endif
|
|
333
|
+
|
|
334
|
+
auto maybeFlushUIUpdatesQueueFunction = makeMaybeFlushUIUpdatesQueueFunction(nodesManager);
|
|
335
|
+
|
|
336
|
+
ReanimatedSensorContainer *reanimatedSensorContainer = [[ReanimatedSensorContainer alloc] init];
|
|
337
|
+
|
|
338
|
+
auto registerSensorFunction = makeRegisterSensorFunction(reanimatedSensorContainer);
|
|
339
|
+
|
|
340
|
+
auto unregisterSensorFunction = makeUnregisterSensorFunction(reanimatedSensorContainer);
|
|
341
|
+
|
|
342
|
+
REAKeyboardEventObserver *keyboardObserver = [[REAKeyboardEventObserver alloc] init];
|
|
343
|
+
|
|
344
|
+
auto subscribeForKeyboardEventsFunction = makeSubscribeForKeyboardEventsFunction(keyboardObserver);
|
|
345
|
+
|
|
346
|
+
auto unsubscribeFromKeyboardEventsFunction = makeUnsubscribeFromKeyboardEventsFunction(keyboardObserver);
|
|
347
|
+
// end keyboard events
|
|
348
|
+
|
|
349
|
+
#ifdef RCT_NEW_ARCH_ENABLED
|
|
350
|
+
// nothing
|
|
351
|
+
#else
|
|
352
|
+
auto obtainPropFunction = makeObtainPropFunction(reaModule);
|
|
353
|
+
#endif
|
|
354
|
+
|
|
355
|
+
PlatformDepMethodsHolder platformDepMethodsHolder = {
|
|
356
|
+
requestRender,
|
|
357
|
+
#ifdef RCT_NEW_ARCH_ENABLED
|
|
358
|
+
synchronouslyUpdateUIPropsFunction,
|
|
359
|
+
#else
|
|
360
|
+
updatePropsFunction,
|
|
361
|
+
scrollToFunction,
|
|
362
|
+
dispatchCommandFunction,
|
|
363
|
+
measureFunction,
|
|
364
|
+
configurePropsFunction,
|
|
365
|
+
obtainPropFunction,
|
|
366
|
+
#endif
|
|
367
|
+
getAnimationTimestamp,
|
|
368
|
+
progressLayoutAnimation,
|
|
369
|
+
endLayoutAnimation,
|
|
370
|
+
registerSensorFunction,
|
|
371
|
+
unregisterSensorFunction,
|
|
372
|
+
setGestureStateFunction,
|
|
373
|
+
subscribeForKeyboardEventsFunction,
|
|
374
|
+
unsubscribeFromKeyboardEventsFunction,
|
|
375
|
+
maybeFlushUIUpdatesQueueFunction,
|
|
376
|
+
};
|
|
377
|
+
return platformDepMethodsHolder;
|
|
378
|
+
}
|
|
379
|
+
|
|
380
|
+
#if REACT_NATIVE_MINOR_VERSION >= 74 && defined(RCT_NEW_ARCH_ENABLED)
|
|
381
|
+
PlatformDepMethodsHolder makePlatformDepMethodsHolderBridgeless(
|
|
382
|
+
RCTModuleRegistry *moduleRegistry,
|
|
383
|
+
REANodesManager *nodesManager,
|
|
384
|
+
REAModule *reaModule)
|
|
385
|
+
{
|
|
386
|
+
auto requestRender = makeRequestRender(nodesManager);
|
|
387
|
+
|
|
388
|
+
auto synchronouslyUpdateUIPropsFunction = makeSynchronouslyUpdateUIPropsFunction(nodesManager);
|
|
389
|
+
|
|
390
|
+
auto getAnimationTimestamp = makeGetAnimationTimestamp();
|
|
391
|
+
|
|
392
|
+
auto progressLayoutAnimation = makeProgressLayoutAnimation(reaModule);
|
|
393
|
+
|
|
394
|
+
auto endLayoutAnimation = makeEndLayoutAnimation(reaModule);
|
|
395
|
+
|
|
396
|
+
ReanimatedSensorContainer *reanimatedSensorContainer = [[ReanimatedSensorContainer alloc] init];
|
|
397
|
+
|
|
398
|
+
auto registerSensorFunction = makeRegisterSensorFunction(reanimatedSensorContainer);
|
|
399
|
+
|
|
400
|
+
auto unregisterSensorFunction = makeUnregisterSensorFunction(reanimatedSensorContainer);
|
|
401
|
+
|
|
402
|
+
auto setGestureStateFunction = makeSetGestureStateFunctionBridgeless(moduleRegistry);
|
|
403
|
+
|
|
404
|
+
REAKeyboardEventObserver *keyboardObserver = [[REAKeyboardEventObserver alloc] init];
|
|
405
|
+
|
|
406
|
+
auto subscribeForKeyboardEventsFunction = makeSubscribeForKeyboardEventsFunction(keyboardObserver);
|
|
407
|
+
|
|
408
|
+
auto unsubscribeFromKeyboardEventsFunction = makeUnsubscribeFromKeyboardEventsFunction(keyboardObserver);
|
|
409
|
+
|
|
410
|
+
auto maybeFlushUIUpdatesQueueFunction = makeMaybeFlushUIUpdatesQueueFunction(nodesManager);
|
|
411
|
+
|
|
412
|
+
PlatformDepMethodsHolder platformDepMethodsHolder = {
|
|
413
|
+
requestRender,
|
|
414
|
+
synchronouslyUpdateUIPropsFunction,
|
|
415
|
+
getAnimationTimestamp,
|
|
416
|
+
progressLayoutAnimation,
|
|
417
|
+
endLayoutAnimation,
|
|
418
|
+
registerSensorFunction,
|
|
419
|
+
unregisterSensorFunction,
|
|
420
|
+
setGestureStateFunction,
|
|
421
|
+
subscribeForKeyboardEventsFunction,
|
|
422
|
+
unsubscribeFromKeyboardEventsFunction,
|
|
423
|
+
maybeFlushUIUpdatesQueueFunction,
|
|
424
|
+
};
|
|
425
|
+
return platformDepMethodsHolder;
|
|
426
|
+
}
|
|
427
|
+
#endif // REACT_NATIVE_MINOR_VERSION >= 74 && defined(RCT_NEW_ARCH_ENABLED)
|
|
428
|
+
|
|
429
|
+
} // namespace reanimated
|
|
@@ -48,7 +48,7 @@
|
|
|
48
48
|
[_motionManager
|
|
49
49
|
startGyroUpdatesToQueue:[NSOperationQueue mainQueue]
|
|
50
50
|
withHandler:^(CMGyroData *sensorData, NSError *error) {
|
|
51
|
-
double currentTime =
|
|
51
|
+
double currentTime = CACurrentMediaTime() * 1000;
|
|
52
52
|
if (currentTime - self->_lastTimestamp < self->_interval) {
|
|
53
53
|
return;
|
|
54
54
|
}
|
|
@@ -69,7 +69,7 @@
|
|
|
69
69
|
[_motionManager startAccelerometerUpdates];
|
|
70
70
|
[_motionManager startAccelerometerUpdatesToQueue:[NSOperationQueue mainQueue]
|
|
71
71
|
withHandler:^(CMAccelerometerData *sensorData, NSError *error) {
|
|
72
|
-
double currentTime =
|
|
72
|
+
double currentTime = CACurrentMediaTime() * 1000;
|
|
73
73
|
if (currentTime - self->_lastTimestamp < self->_interval) {
|
|
74
74
|
return;
|
|
75
75
|
}
|
|
@@ -96,7 +96,7 @@
|
|
|
96
96
|
[_motionManager
|
|
97
97
|
startDeviceMotionUpdatesToQueue:[NSOperationQueue mainQueue]
|
|
98
98
|
withHandler:^(CMDeviceMotion *sensorData, NSError *error) {
|
|
99
|
-
double currentTime =
|
|
99
|
+
double currentTime = CACurrentMediaTime() * 1000;
|
|
100
100
|
if (currentTime - self->_lastTimestamp < self->_interval) {
|
|
101
101
|
return;
|
|
102
102
|
}
|
|
@@ -121,7 +121,7 @@
|
|
|
121
121
|
[_motionManager
|
|
122
122
|
startMagnetometerUpdatesToQueue:[NSOperationQueue mainQueue]
|
|
123
123
|
withHandler:^(CMMagnetometerData *sensorData, NSError *error) {
|
|
124
|
-
double currentTime =
|
|
124
|
+
double currentTime = CACurrentMediaTime() * 1000;
|
|
125
125
|
if (currentTime - self->_lastTimestamp < self->_interval) {
|
|
126
126
|
return;
|
|
127
127
|
}
|
|
@@ -157,7 +157,7 @@
|
|
|
157
157
|
[_motionManager startDeviceMotionUpdatesUsingReferenceFrame:(1 << _referenceFrame)
|
|
158
158
|
toQueue:[NSOperationQueue mainQueue]
|
|
159
159
|
withHandler:^(CMDeviceMotion *sensorData, NSError *error) {
|
|
160
|
-
double currentTime =
|
|
160
|
+
double currentTime = CACurrentMediaTime() * 1000;
|
|
161
161
|
if (currentTime - self->_lastTimestamp < self->_interval) {
|
|
162
162
|
return;
|
|
163
163
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["createAnimatedComponent","AnimatedText","Text","AnimatedView","View","AnimatedScrollView","ScrollView","AnimatedImage","Image","ReanimatedFlatList","FlatList","addWhitelistedNativeProps","addWhitelistedUIProps"],"sources":["Animated.ts"],"sourcesContent":["'use strict';\nimport type { Extrapolate as _Extrapolate } from './reanimated2/interpolateColor';\nimport type { SharedValue as _SharedValue } from './reanimated2/commonTypes';\nimport type { DerivedValue as _DerivedValue } from './reanimated2/hook/useDerivedValue';\nimport type {\n TransformStyleTypes as _TransformStyleTypes,\n Adaptable as _Adaptable,\n AdaptTransforms as _AdaptTransforms,\n AnimatedTransform as _AnimatedTransform,\n AnimateStyle as _AnimateStyle,\n StylesOrDefault as _StylesOrDefault,\n AnimateProps as _AnimateProps,\n} from './reanimated2/helperTypes';\nimport type { EasingFunction as _EasingFunction } from './reanimated2/Easing';\n\nimport type { AnimatedScrollViewProps as _AnimatedScrollViewProps } from './reanimated2/component/ScrollView';\nimport type { FlatListPropsWithLayout as _FlatListPropsWithLayout } from './reanimated2/component/FlatList';\n\nexport { createAnimatedComponent } from './createAnimatedComponent';\nexport { AnimatedText as Text } from './reanimated2/component/Text';\nexport { AnimatedView as View } from './reanimated2/component/View';\nexport { AnimatedScrollView as ScrollView } from './reanimated2/component/ScrollView';\nexport { AnimatedImage as Image } from './reanimated2/component/Image';\nexport { ReanimatedFlatList as FlatList } from './reanimated2/component/FlatList';\nexport {\n addWhitelistedNativeProps,\n addWhitelistedUIProps,\n} from './ConfigHelper';\n/**\n * @deprecated Please import `Extrapolate` directly from `react-native-reanimated` instead of `Animated` namespace.\n */\nexport type Extrapolate = typeof _Extrapolate;\n/**\n * @deprecated Please import `SharedValue` directly from `react-native-reanimated` instead of `Animated` namespace.\n */\n\nexport type SharedValue<T> = _SharedValue<T>;\n/**\n * @deprecated Please import `DerivedValue` directly from `react-native-reanimated` instead of `Animated` namespace.\n */\nexport type DerivedValue<T> = _DerivedValue<T>;\n/**\n * @deprecated Please import `Adaptable` directly from `react-native-reanimated` instead of `Animated` namespace.\n */\nexport type Adaptable<T> = _Adaptable<T>;\n/**\n * @deprecated Please import `TransformStyleTypes` directly from `react-native-reanimated` instead of `Animated` namespace.\n * */\nexport type TransformStyleTypes = _TransformStyleTypes;\n/**\n * @deprecated Please import `AdaptTransforms` directly from `react-native-reanimated` instead of `Animated` namespace.\n * */\nexport type AdaptTransforms<T> = _AdaptTransforms<T>;\n/**\n * @deprecated Please import `AnimatedTransform` directly from `react-native-reanimated` instead of `Animated` namespace.\n */\nexport type AnimatedTransform = _AnimatedTransform;\n/**\n * @deprecated Please import `AnimateStyle` directly from `react-native-reanimated` instead of `Animated` namespace.\n * */\nexport type AnimateStyle<S> = _AnimateStyle<S>;\n/**\n * @deprecated Please import `StylesOrDefault` directly from `react-native-reanimated` instead of `Animated` namespace.\n * */\nexport type StylesOrDefault<S> = _StylesOrDefault<S>;\n/**\n * @deprecated Please import `AnimateProps` directly from `react-native-reanimated` instead of `Animated` namespace.\n * */\nexport type AnimateProps<P extends object> = _AnimateProps<P>;\n/**\n * @deprecated Please import `EasingFunction` directly from `react-native-reanimated` instead of `Animated` namespace.\n * */\nexport type EasingFunction = _EasingFunction;\n/**\n * @deprecated Please import `AnimatedScrollViewProps` directly from `react-native-reanimated` instead of `Animated` namespace.\n * */\nexport type AnimatedScrollViewProps = _AnimatedScrollViewProps;\n/**\n * @deprecated Please import `FlatListPropsWithLayout` directly from `react-native-reanimated` instead of `Animated` namespace.\n * */\nexport type FlatListPropsWithLayout<T> = _FlatListPropsWithLayout<T>;\n"],"mappings":"AAAA,YAAY;;AAkBZ,SAASA,uBAAuB,QAAQ,2BAA2B;AACnE,SAASC,YAAY,IAAIC,IAAI,QAAQ,8BAA8B;AACnE,SAASC,YAAY,IAAIC,IAAI,QAAQ,8BAA8B;AACnE,SAASC,kBAAkB,IAAIC,UAAU,QAAQ,oCAAoC;AACrF,SAASC,aAAa,IAAIC,KAAK,QAAQ,+BAA+B;AACtE,SAASC,kBAAkB,IAAIC,QAAQ,QAAQ,kCAAkC;AACjF,SACEC,yBAAyB,EACzBC,qBAAqB,QAChB,gBAAgB;AACvB;AACA;AACA;;AAEA;AACA;AACA;;AAGA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA"}
|
|
1
|
+
{"version":3,"names":["createAnimatedComponent","AnimatedText","Text","AnimatedView","View","AnimatedScrollView","ScrollView","AnimatedImage","Image","ReanimatedFlatList","FlatList","addWhitelistedNativeProps","addWhitelistedUIProps"],"sources":["Animated.ts"],"sourcesContent":["'use strict';\nimport type { Extrapolate as _Extrapolate } from './reanimated2/interpolateColor';\nimport type { SharedValue as _SharedValue } from './reanimated2/commonTypes';\nimport type { DerivedValue as _DerivedValue } from './reanimated2/hook/useDerivedValue';\nimport type {\n TransformStyleTypes as _TransformStyleTypes,\n Adaptable as _Adaptable,\n AdaptTransforms as _AdaptTransforms,\n AnimatedTransform as _AnimatedTransform,\n AnimateStyle as _AnimateStyle,\n StylesOrDefault as _StylesOrDefault,\n AnimateProps as _AnimateProps,\n} from './reanimated2/helperTypes';\nimport type { EasingFunction as _EasingFunction } from './reanimated2/Easing';\n\nimport type { AnimatedScrollViewProps as _AnimatedScrollViewProps } from './reanimated2/component/ScrollView';\nimport type { FlatListPropsWithLayout as _FlatListPropsWithLayout } from './reanimated2/component/FlatList';\n\nexport { createAnimatedComponent } from './createAnimatedComponent';\nexport { AnimatedText as Text } from './reanimated2/component/Text';\nexport { AnimatedView as View } from './reanimated2/component/View';\nexport { AnimatedScrollView as ScrollView } from './reanimated2/component/ScrollView';\nexport { AnimatedImage as Image } from './reanimated2/component/Image';\nexport { ReanimatedFlatList as FlatList } from './reanimated2/component/FlatList';\nexport {\n addWhitelistedNativeProps,\n addWhitelistedUIProps,\n} from './ConfigHelper';\n/**\n * @deprecated Please import `Extrapolate` directly from `react-native-reanimated` instead of `Animated` namespace.\n */\nexport type Extrapolate = typeof _Extrapolate;\n/**\n * @deprecated Please import `SharedValue` directly from `react-native-reanimated` instead of `Animated` namespace.\n */\n\nexport type SharedValue<T> = _SharedValue<T>;\n/**\n * @deprecated Please import `DerivedValue` directly from `react-native-reanimated` instead of `Animated` namespace.\n */\nexport type DerivedValue<T> = _DerivedValue<T>;\n/**\n * @deprecated Please import `Adaptable` directly from `react-native-reanimated` instead of `Animated` namespace.\n */\nexport type Adaptable<T> = _Adaptable<T>;\n/**\n * @deprecated Please import `TransformStyleTypes` directly from `react-native-reanimated` instead of `Animated` namespace.\n * */\nexport type TransformStyleTypes = _TransformStyleTypes;\n/**\n * @deprecated Please import `AdaptTransforms` directly from `react-native-reanimated` instead of `Animated` namespace.\n * */\nexport type AdaptTransforms<T> = _AdaptTransforms<T>;\n/**\n * @deprecated Please import `AnimatedTransform` directly from `react-native-reanimated` instead of `Animated` namespace.\n */\nexport type AnimatedTransform = _AnimatedTransform;\n/**\n * @deprecated Please import `AnimateStyle` directly from `react-native-reanimated` instead of `Animated` namespace.\n * */\nexport type AnimateStyle<S> = _AnimateStyle<S>;\n/**\n * @deprecated Please import `StylesOrDefault` directly from `react-native-reanimated` instead of `Animated` namespace.\n * */\nexport type StylesOrDefault<S> = _StylesOrDefault<S>;\n/**\n * @deprecated Please import `AnimateProps` directly from `react-native-reanimated` instead of `Animated` namespace.\n * */\nexport type AnimateProps<P extends object> = _AnimateProps<P>;\n/**\n * @deprecated Please import `EasingFunction` directly from `react-native-reanimated` instead of `Animated` namespace.\n * */\nexport type EasingFunction = _EasingFunction;\n/**\n * @deprecated Please import `AnimatedScrollViewProps` directly from `react-native-reanimated` instead of `Animated` namespace.\n * */\nexport type AnimatedScrollViewProps = _AnimatedScrollViewProps;\n/**\n * @deprecated Please import `FlatListPropsWithLayout` directly from `react-native-reanimated` instead of `Animated` namespace.\n * */\nexport type FlatListPropsWithLayout<T> = _FlatListPropsWithLayout<T>;\n"],"mappings":"AAAA,YAAY;;AAkBZ,SAASA,uBAAuB,QAAQ,2BAA2B;AACnE,SAASC,YAAY,IAAIC,IAAI,QAAQ,8BAA8B;AACnE,SAASC,YAAY,IAAIC,IAAI,QAAQ,8BAA8B;AACnE,SAASC,kBAAkB,IAAIC,UAAU,QAAQ,oCAAoC;AACrF,SAASC,aAAa,IAAIC,KAAK,QAAQ,+BAA+B;AACtE,SAASC,kBAAkB,IAAIC,QAAQ,QAAQ,kCAAkC;AACjF,SACEC,yBAAyB,EACzBC,qBAAqB,QAChB,gBAAgB;AACvB;AACA;AACA;;AAEA;AACA;AACA;;AAGA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA","ignoreList":[]}
|
|
@@ -9,7 +9,7 @@ function assertNoOverlapInLists() {
|
|
|
9
9
|
}
|
|
10
10
|
}
|
|
11
11
|
}
|
|
12
|
-
function configureProps() {
|
|
12
|
+
export function configureProps() {
|
|
13
13
|
assertNoOverlapInLists();
|
|
14
14
|
jsiConfigureProps(Object.keys(PropsAllowlists.UI_THREAD_PROPS_WHITELIST), Object.keys(PropsAllowlists.NATIVE_THREAD_PROPS_WHITELIST));
|
|
15
15
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["PropsAllowlists","jsiConfigureProps","assertNoOverlapInLists","key","NATIVE_THREAD_PROPS_WHITELIST","UI_THREAD_PROPS_WHITELIST","Error","configureProps","Object","keys","addWhitelistedNativeProps","props","oldSize","length","addWhitelistedUIProps","PROCESSED_VIEW_NAMES","Set","adaptViewConfig","viewConfig","viewName","uiViewClassName","validAttributes","has","propsToAdd","forEach","add"],"sources":["ConfigHelper.ts"],"sourcesContent":["'use strict';\nimport { PropsAllowlists } from './propsAllowlists';\nimport { jsiConfigureProps } from './reanimated2/core';\nfunction assertNoOverlapInLists() {\n for (const key in PropsAllowlists.NATIVE_THREAD_PROPS_WHITELIST) {\n if (key in PropsAllowlists.UI_THREAD_PROPS_WHITELIST) {\n throw new Error(\n `[Reanimated] Property \\`${key}\\` was whitelisted both as UI and native prop. Please remove it from one of the lists.`\n );\n }\n }\n}\n\
|
|
1
|
+
{"version":3,"names":["PropsAllowlists","jsiConfigureProps","assertNoOverlapInLists","key","NATIVE_THREAD_PROPS_WHITELIST","UI_THREAD_PROPS_WHITELIST","Error","configureProps","Object","keys","addWhitelistedNativeProps","props","oldSize","length","addWhitelistedUIProps","PROCESSED_VIEW_NAMES","Set","adaptViewConfig","viewConfig","viewName","uiViewClassName","validAttributes","has","propsToAdd","forEach","add"],"sources":["ConfigHelper.ts"],"sourcesContent":["'use strict';\nimport { PropsAllowlists } from './propsAllowlists';\nimport { jsiConfigureProps } from './reanimated2/core';\nfunction assertNoOverlapInLists() {\n for (const key in PropsAllowlists.NATIVE_THREAD_PROPS_WHITELIST) {\n if (key in PropsAllowlists.UI_THREAD_PROPS_WHITELIST) {\n throw new Error(\n `[Reanimated] Property \\`${key}\\` was whitelisted both as UI and native prop. Please remove it from one of the lists.`\n );\n }\n }\n}\n\nexport function configureProps(): void {\n assertNoOverlapInLists();\n jsiConfigureProps(\n Object.keys(PropsAllowlists.UI_THREAD_PROPS_WHITELIST),\n Object.keys(PropsAllowlists.NATIVE_THREAD_PROPS_WHITELIST)\n );\n}\n\nexport function addWhitelistedNativeProps(\n props: Record<string, boolean>\n): void {\n const oldSize = Object.keys(\n PropsAllowlists.NATIVE_THREAD_PROPS_WHITELIST\n ).length;\n PropsAllowlists.NATIVE_THREAD_PROPS_WHITELIST = {\n ...PropsAllowlists.NATIVE_THREAD_PROPS_WHITELIST,\n ...props,\n };\n if (\n oldSize !==\n Object.keys(PropsAllowlists.NATIVE_THREAD_PROPS_WHITELIST).length\n ) {\n configureProps();\n }\n}\n\nexport function addWhitelistedUIProps(props: Record<string, boolean>): void {\n const oldSize = Object.keys(PropsAllowlists.UI_THREAD_PROPS_WHITELIST).length;\n PropsAllowlists.UI_THREAD_PROPS_WHITELIST = {\n ...PropsAllowlists.UI_THREAD_PROPS_WHITELIST,\n ...props,\n };\n if (\n oldSize !== Object.keys(PropsAllowlists.UI_THREAD_PROPS_WHITELIST).length\n ) {\n configureProps();\n }\n}\n\nconst PROCESSED_VIEW_NAMES = new Set();\n\nexport interface ViewConfig {\n uiViewClassName: string;\n validAttributes: Record<string, unknown>;\n}\n/**\n * updates UI props whitelist for given view host instance\n * this will work just once for every view name\n */\n\nexport function adaptViewConfig(viewConfig: ViewConfig): void {\n const viewName = viewConfig.uiViewClassName;\n const props = viewConfig.validAttributes;\n\n // update whitelist of UI props for this view name only once\n if (!PROCESSED_VIEW_NAMES.has(viewName)) {\n const propsToAdd: Record<string, boolean> = {};\n Object.keys(props).forEach((key) => {\n // we don't want to add native props as they affect layout\n // we also skip props which repeat here\n if (\n !(key in PropsAllowlists.NATIVE_THREAD_PROPS_WHITELIST) &&\n !(key in PropsAllowlists.UI_THREAD_PROPS_WHITELIST)\n ) {\n propsToAdd[key] = true;\n }\n });\n addWhitelistedUIProps(propsToAdd);\n\n PROCESSED_VIEW_NAMES.add(viewName);\n }\n}\n\nconfigureProps();\n"],"mappings":"AAAA,YAAY;;AACZ,SAASA,eAAe,QAAQ,mBAAmB;AACnD,SAASC,iBAAiB,QAAQ,oBAAoB;AACtD,SAASC,sBAAsBA,CAAA,EAAG;EAChC,KAAK,MAAMC,GAAG,IAAIH,eAAe,CAACI,6BAA6B,EAAE;IAC/D,IAAID,GAAG,IAAIH,eAAe,CAACK,yBAAyB,EAAE;MACpD,MAAM,IAAIC,KAAK,CACZ,2BAA0BH,GAAI,wFACjC,CAAC;IACH;EACF;AACF;AAEA,OAAO,SAASI,cAAcA,CAAA,EAAS;EACrCL,sBAAsB,CAAC,CAAC;EACxBD,iBAAiB,CACfO,MAAM,CAACC,IAAI,CAACT,eAAe,CAACK,yBAAyB,CAAC,EACtDG,MAAM,CAACC,IAAI,CAACT,eAAe,CAACI,6BAA6B,CAC3D,CAAC;AACH;AAEA,OAAO,SAASM,yBAAyBA,CACvCC,KAA8B,EACxB;EACN,MAAMC,OAAO,GAAGJ,MAAM,CAACC,IAAI,CACzBT,eAAe,CAACI,6BAClB,CAAC,CAACS,MAAM;EACRb,eAAe,CAACI,6BAA6B,GAAG;IAC9C,GAAGJ,eAAe,CAACI,6BAA6B;IAChD,GAAGO;EACL,CAAC;EACD,IACEC,OAAO,KACPJ,MAAM,CAACC,IAAI,CAACT,eAAe,CAACI,6BAA6B,CAAC,CAACS,MAAM,EACjE;IACAN,cAAc,CAAC,CAAC;EAClB;AACF;AAEA,OAAO,SAASO,qBAAqBA,CAACH,KAA8B,EAAQ;EAC1E,MAAMC,OAAO,GAAGJ,MAAM,CAACC,IAAI,CAACT,eAAe,CAACK,yBAAyB,CAAC,CAACQ,MAAM;EAC7Eb,eAAe,CAACK,yBAAyB,GAAG;IAC1C,GAAGL,eAAe,CAACK,yBAAyB;IAC5C,GAAGM;EACL,CAAC;EACD,IACEC,OAAO,KAAKJ,MAAM,CAACC,IAAI,CAACT,eAAe,CAACK,yBAAyB,CAAC,CAACQ,MAAM,EACzE;IACAN,cAAc,CAAC,CAAC;EAClB;AACF;AAEA,MAAMQ,oBAAoB,GAAG,IAAIC,GAAG,CAAC,CAAC;AAMtC;AACA;AACA;AACA;;AAEA,OAAO,SAASC,eAAeA,CAACC,UAAsB,EAAQ;EAC5D,MAAMC,QAAQ,GAAGD,UAAU,CAACE,eAAe;EAC3C,MAAMT,KAAK,GAAGO,UAAU,CAACG,eAAe;;EAExC;EACA,IAAI,CAACN,oBAAoB,CAACO,GAAG,CAACH,QAAQ,CAAC,EAAE;IACvC,MAAMI,UAAmC,GAAG,CAAC,CAAC;IAC9Cf,MAAM,CAACC,IAAI,CAACE,KAAK,CAAC,CAACa,OAAO,CAAErB,GAAG,IAAK;MAClC;MACA;MACA,IACE,EAAEA,GAAG,IAAIH,eAAe,CAACI,6BAA6B,CAAC,IACvD,EAAED,GAAG,IAAIH,eAAe,CAACK,yBAAyB,CAAC,EACnD;QACAkB,UAAU,CAACpB,GAAG,CAAC,GAAG,IAAI;MACxB;IACF,CAAC,CAAC;IACFW,qBAAqB,CAACS,UAAU,CAAC;IAEjCR,oBAAoB,CAACU,GAAG,CAACN,QAAQ,CAAC;EACpC;AACF;AAEAZ,cAAc,CAAC,CAAC","ignoreList":[]}
|
|
@@ -20,6 +20,7 @@ const mockTargetValues = {
|
|
|
20
20
|
};
|
|
21
21
|
function getCommonProperties(layoutStyle, componentStyle) {
|
|
22
22
|
let componentStyleFlat = Array.isArray(componentStyle) ? componentStyle.flat() : [componentStyle];
|
|
23
|
+
componentStyleFlat = componentStyleFlat.filter(Boolean);
|
|
23
24
|
componentStyleFlat = componentStyleFlat.map(style => 'initial' in style ? style.initial.value // Include properties of animated style
|
|
24
25
|
: style);
|
|
25
26
|
const componentStylesKeys = componentStyleFlat.flatMap(style => Object.keys(style));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["mockTargetValues","targetOriginX","targetOriginY","targetWidth","targetHeight","targetGlobalOriginX","targetGlobalOriginY","targetBorderRadius","windowWidth","windowHeight","currentOriginX","currentOriginY","currentWidth","currentHeight","currentGlobalOriginX","currentGlobalOriginY","currentBorderRadius","getCommonProperties","layoutStyle","componentStyle","componentStyleFlat","Array","isArray","flat","map","style","initial","value","componentStylesKeys","flatMap","Object","keys","commonKeys","
|
|
1
|
+
{"version":3,"names":["mockTargetValues","targetOriginX","targetOriginY","targetWidth","targetHeight","targetGlobalOriginX","targetGlobalOriginY","targetBorderRadius","windowWidth","windowHeight","currentOriginX","currentOriginY","currentWidth","currentHeight","currentGlobalOriginX","currentGlobalOriginY","currentBorderRadius","getCommonProperties","layoutStyle","componentStyle","componentStyleFlat","Array","isArray","flat","filter","Boolean","map","style","initial","value","componentStylesKeys","flatMap","Object","keys","commonKeys","key","includes","maybeReportOverwrittenProperties","layoutAnimationStyle","displayName","commonProperties","length","console","warn","join","maybeBuild","layoutAnimationOrBuilder","isAnimationBuilder","build","animationFactory","__DEV__","layoutAnimation","animations"],"sources":["animationBuilder.tsx"],"sourcesContent":["'use strict';\nimport type {\n ILayoutAnimationBuilder,\n LayoutAnimationFunction,\n LayoutAnimationsValues,\n} from './reanimated2/layoutReanimation';\nimport type { StyleProps } from './reanimated2/commonTypes';\nimport type { NestedArray } from './createAnimatedComponent/commonTypes';\n\nconst mockTargetValues: LayoutAnimationsValues = {\n targetOriginX: 0,\n targetOriginY: 0,\n targetWidth: 0,\n targetHeight: 0,\n targetGlobalOriginX: 0,\n targetGlobalOriginY: 0,\n targetBorderRadius: 0,\n windowWidth: 0,\n windowHeight: 0,\n currentOriginX: 0,\n currentOriginY: 0,\n currentWidth: 0,\n currentHeight: 0,\n currentGlobalOriginX: 0,\n currentGlobalOriginY: 0,\n currentBorderRadius: 0,\n};\n\nfunction getCommonProperties(\n layoutStyle: StyleProps,\n componentStyle: StyleProps | Array<StyleProps>\n) {\n let componentStyleFlat = Array.isArray(componentStyle)\n ? componentStyle.flat()\n : [componentStyle];\n\n componentStyleFlat = componentStyleFlat.filter(Boolean);\n\n componentStyleFlat = componentStyleFlat.map((style) =>\n 'initial' in style\n ? style.initial.value // Include properties of animated style\n : style\n );\n\n const componentStylesKeys = componentStyleFlat.flatMap((style) =>\n Object.keys(style)\n );\n\n const commonKeys = Object.keys(layoutStyle).filter((key) =>\n componentStylesKeys.includes(key)\n );\n\n return commonKeys;\n}\n\nfunction maybeReportOverwrittenProperties(\n layoutAnimationStyle: StyleProps,\n style: NestedArray<StyleProps>,\n displayName: string\n) {\n const commonProperties = getCommonProperties(layoutAnimationStyle, style);\n\n if (commonProperties.length > 0) {\n console.warn(\n `[Reanimated] ${\n commonProperties.length === 1 ? 'Property' : 'Properties'\n } \"${commonProperties.join(\n ', '\n )}\" of ${displayName} may be overwritten by a layout animation. Please wrap your component with an animated view and apply the layout animation on the wrapper.`\n );\n }\n}\n\nexport function maybeBuild(\n layoutAnimationOrBuilder:\n | ILayoutAnimationBuilder\n | LayoutAnimationFunction\n | Keyframe,\n style: NestedArray<StyleProps> | undefined,\n displayName: string\n): LayoutAnimationFunction | Keyframe {\n const isAnimationBuilder = (\n value: ILayoutAnimationBuilder | LayoutAnimationFunction | Keyframe\n ): value is ILayoutAnimationBuilder =>\n 'build' in layoutAnimationOrBuilder &&\n typeof layoutAnimationOrBuilder.build === 'function';\n\n if (isAnimationBuilder(layoutAnimationOrBuilder)) {\n const animationFactory = layoutAnimationOrBuilder.build();\n\n if (__DEV__ && style) {\n const layoutAnimation = animationFactory(mockTargetValues);\n maybeReportOverwrittenProperties(\n layoutAnimation.animations,\n style,\n displayName\n );\n }\n\n return animationFactory;\n } else {\n return layoutAnimationOrBuilder;\n }\n}\n"],"mappings":"AAAA,YAAY;;AASZ,MAAMA,gBAAwC,GAAG;EAC/CC,aAAa,EAAE,CAAC;EAChBC,aAAa,EAAE,CAAC;EAChBC,WAAW,EAAE,CAAC;EACdC,YAAY,EAAE,CAAC;EACfC,mBAAmB,EAAE,CAAC;EACtBC,mBAAmB,EAAE,CAAC;EACtBC,kBAAkB,EAAE,CAAC;EACrBC,WAAW,EAAE,CAAC;EACdC,YAAY,EAAE,CAAC;EACfC,cAAc,EAAE,CAAC;EACjBC,cAAc,EAAE,CAAC;EACjBC,YAAY,EAAE,CAAC;EACfC,aAAa,EAAE,CAAC;EAChBC,oBAAoB,EAAE,CAAC;EACvBC,oBAAoB,EAAE,CAAC;EACvBC,mBAAmB,EAAE;AACvB,CAAC;AAED,SAASC,mBAAmBA,CAC1BC,WAAuB,EACvBC,cAA8C,EAC9C;EACA,IAAIC,kBAAkB,GAAGC,KAAK,CAACC,OAAO,CAACH,cAAc,CAAC,GAClDA,cAAc,CAACI,IAAI,CAAC,CAAC,GACrB,CAACJ,cAAc,CAAC;EAEpBC,kBAAkB,GAAGA,kBAAkB,CAACI,MAAM,CAACC,OAAO,CAAC;EAEvDL,kBAAkB,GAAGA,kBAAkB,CAACM,GAAG,CAAEC,KAAK,IAChD,SAAS,IAAIA,KAAK,GACdA,KAAK,CAACC,OAAO,CAACC,KAAK,CAAC;EAAA,EACpBF,KACN,CAAC;EAED,MAAMG,mBAAmB,GAAGV,kBAAkB,CAACW,OAAO,CAAEJ,KAAK,IAC3DK,MAAM,CAACC,IAAI,CAACN,KAAK,CACnB,CAAC;EAED,MAAMO,UAAU,GAAGF,MAAM,CAACC,IAAI,CAACf,WAAW,CAAC,CAACM,MAAM,CAAEW,GAAG,IACrDL,mBAAmB,CAACM,QAAQ,CAACD,GAAG,CAClC,CAAC;EAED,OAAOD,UAAU;AACnB;AAEA,SAASG,gCAAgCA,CACvCC,oBAAgC,EAChCX,KAA8B,EAC9BY,WAAmB,EACnB;EACA,MAAMC,gBAAgB,GAAGvB,mBAAmB,CAACqB,oBAAoB,EAAEX,KAAK,CAAC;EAEzE,IAAIa,gBAAgB,CAACC,MAAM,GAAG,CAAC,EAAE;IAC/BC,OAAO,CAACC,IAAI,CACT,gBACCH,gBAAgB,CAACC,MAAM,KAAK,CAAC,GAAG,UAAU,GAAG,YAC9C,KAAID,gBAAgB,CAACI,IAAI,CACxB,IACF,CAAE,QAAOL,WAAY,4IACvB,CAAC;EACH;AACF;AAEA,OAAO,SAASM,UAAUA,CACxBC,wBAGY,EACZnB,KAA0C,EAC1CY,WAAmB,EACiB;EACpC,MAAMQ,kBAAkB,GACtBlB,KAAmE,IAEnE,OAAO,IAAIiB,wBAAwB,IACnC,OAAOA,wBAAwB,CAACE,KAAK,KAAK,UAAU;EAEtD,IAAID,kBAAkB,CAACD,wBAAwB,CAAC,EAAE;IAChD,MAAMG,gBAAgB,GAAGH,wBAAwB,CAACE,KAAK,CAAC,CAAC;IAEzD,IAAIE,OAAO,IAAIvB,KAAK,EAAE;MACpB,MAAMwB,eAAe,GAAGF,gBAAgB,CAACjD,gBAAgB,CAAC;MAC1DqC,gCAAgC,CAC9Bc,eAAe,CAACC,UAAU,EAC1BzB,KAAK,EACLY,WACF,CAAC;IACH;IAEA,OAAOU,gBAAgB;EACzB,CAAC,MAAM;IACL,OAAOH,wBAAwB;EACjC;AACF","ignoreList":[]}
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
3
|
function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
|
|
4
|
-
function _toPropertyKey(
|
|
5
|
-
function _toPrimitive(
|
|
4
|
+
function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == typeof i ? i : i + ""; }
|
|
5
|
+
function _toPrimitive(t, r) { if ("object" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != typeof i) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
|
|
6
6
|
import { flattenArray } from './utils';
|
|
7
7
|
import { makeViewDescriptorsSet } from '../reanimated2/ViewDescriptorsSet';
|
|
8
8
|
import { adaptViewConfig } from '../ConfigHelper';
|
|
@@ -78,8 +78,8 @@ export function hasInlineStyles(style) {
|
|
|
78
78
|
return isSharedValue(styleValue) || key === 'transform' && isInlineStyleTransform(styleValue);
|
|
79
79
|
});
|
|
80
80
|
}
|
|
81
|
-
export function getInlineStyle(style,
|
|
82
|
-
if (
|
|
81
|
+
export function getInlineStyle(style, shouldGetInitialStyle) {
|
|
82
|
+
if (shouldGetInitialStyle) {
|
|
83
83
|
return getInlinePropsUpdate(style);
|
|
84
84
|
}
|
|
85
85
|
const newStyle = {};
|