react-native-reanimated 2.6.0 → 3.0.0-rc.0
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/FabricUtils.cpp +128 -0
- package/Common/cpp/Fabric/ReanimatedUIManagerBinding.cpp +197 -0
- package/Common/cpp/NativeModules/NativeReanimatedModule.cpp +311 -6
- package/Common/cpp/Registries/EventHandlerRegistry.cpp +14 -1
- package/Common/cpp/Registries/NewestShadowNodesRegistry.cpp +68 -0
- package/Common/cpp/SharedItems/ShareableValue.cpp +20 -2
- package/Common/cpp/Tools/Mapper.cpp +23 -4
- package/Common/cpp/Tools/RuntimeDecorator.cpp +92 -46
- package/Common/cpp/Tools/Scheduler.cpp +4 -0
- package/Common/cpp/headers/Fabric/FabricUtils.h +78 -0
- package/Common/cpp/headers/Fabric/ReanimatedUIManagerBinding.h +46 -0
- package/Common/cpp/headers/NativeModules/NativeReanimatedModule.h +72 -2
- package/Common/cpp/headers/Registries/EventHandlerRegistry.h +8 -0
- package/Common/cpp/headers/Registries/NewestShadowNodesRegistry.h +41 -0
- package/Common/cpp/headers/SharedItems/SharedParent.h +3 -0
- package/Common/cpp/headers/SharedItems/ValueWrapper.h +25 -0
- package/Common/cpp/headers/SpecTools/ErrorHandler.h +5 -0
- package/Common/cpp/headers/Tools/Mapper.h +1 -1
- package/Common/cpp/headers/Tools/PlatformDepMethodsHolder.h +43 -8
- package/Common/cpp/headers/Tools/RuntimeDecorator.h +8 -3
- package/README.md +4 -0
- package/RNReanimated.podspec +22 -11
- package/android/CMakeLists.txt +139 -27
- package/android/build.gradle +86 -209
- package/android/local.properties +1 -0
- package/android/src/fabric/java/com/swmansion/reanimated/NativeProxy.java +310 -0
- package/android/src/fabric/java/com/swmansion/reanimated/ReaCompatibility.java +25 -0
- package/android/src/main/cpp/NativeProxy.cpp +196 -41
- package/android/src/main/cpp/headers/NativeProxy.h +45 -7
- package/android/src/main/java/com/swmansion/reanimated/NodesManager.java +13 -245
- package/android/src/main/java/com/swmansion/reanimated/ReanimatedModule.java +0 -125
- package/android/src/main/java/com/swmansion/reanimated/layoutReanimation/AnimationsManager.java +13 -6
- package/android/src/main/java/com/swmansion/reanimated/layoutReanimation/LayoutAnimations.java +2 -1
- package/android/src/{main → paper}/java/com/swmansion/reanimated/NativeProxy.java +26 -10
- package/android/src/paper/java/com/swmansion/reanimated/ReaCompatibility.java +17 -0
- package/ios/Fabric/REAInitializerRCTFabricSurface.h +12 -0
- package/ios/Fabric/REAInitializerRCTFabricSurface.mm +73 -0
- package/ios/LayoutReanimation/REAAnimationsManager.h +1 -1
- package/ios/LayoutReanimation/REAAnimationsManager.m +2 -2
- package/ios/LayoutReanimation/REASnapshot.m +1 -1
- package/ios/LayoutReanimation/REAUIManager.h +1 -1
- package/ios/LayoutReanimation/REAUIManager.mm +4 -5
- package/ios/REAEventDispatcher.m +1 -2
- package/ios/REAModule.h +10 -1
- package/ios/REAModule.mm +284 -0
- package/ios/REANodesManager.h +27 -52
- package/ios/{REANodesManager.m → REANodesManager.mm} +92 -226
- package/ios/native/NativeMethods.h +1 -3
- package/ios/native/NativeMethods.mm +1 -1
- package/ios/native/NativeProxy.h +2 -2
- package/ios/native/NativeProxy.mm +162 -32
- package/ios/native/REAIOSErrorHandler.h +2 -4
- package/ios/native/REAIOSErrorHandler.mm +1 -1
- package/ios/native/REAIOSLogger.h +1 -3
- package/ios/native/REAIOSLogger.mm +1 -1
- package/ios/native/REAIOSScheduler.h +1 -3
- package/ios/native/REAIOSScheduler.mm +2 -2
- package/ios/native/REAInitializer.h +0 -7
- package/ios/native/REAInitializer.mm +14 -6
- package/ios/native/UIResponder+Reanimated.h +3 -1
- package/ios/native/UIResponder+Reanimated.mm +6 -4
- package/ios/sensor/ReanimatedSensor.h +1 -1
- package/ios/sensor/ReanimatedSensor.m +1 -1
- package/ios/sensor/ReanimatedSensorContainer.h +1 -1
- package/ios/sensor/ReanimatedSensorContainer.m +2 -2
- package/lib/Animated.js +0 -13
- package/lib/ConfigHelper.js +0 -1
- package/lib/createAnimatedComponent.js +30 -169
- package/lib/index.js +0 -13
- package/lib/reanimated2/Easing.js +8 -44
- package/lib/reanimated2/NativeMethods.js +20 -3
- package/lib/reanimated2/UpdateProps.js +25 -10
- package/lib/reanimated2/core.js +4 -37
- package/lib/reanimated2/fabricUtils.js +18 -0
- package/lib/reanimated2/globals.d.ts +18 -3
- package/lib/reanimated2/hook/useAnimatedRef.js +6 -2
- package/lib/reanimated2/hook/utils.js +0 -5
- package/lib/reanimated2/interpolateColor.js +5 -2
- package/lib/reanimated2/interpolation.js +0 -15
- package/lib/reanimated2/js-reanimated/index.js +3 -0
- package/lib/types/{lib/ConfigHelper.d.ts → ConfigHelper.d.ts} +0 -0
- package/lib/types/{lib/ReanimatedEventEmitter.d.ts → ReanimatedEventEmitter.d.ts} +0 -0
- package/lib/types/{lib/ReanimatedModule.d.ts → ReanimatedModule.d.ts} +0 -0
- package/lib/types/{lib/ReanimatedModule.macos.d.ts → ReanimatedModule.macos.d.ts} +0 -0
- package/lib/types/{lib/ReanimatedModule.native.d.ts → ReanimatedModule.native.d.ts} +0 -0
- package/lib/types/{lib/ReanimatedModule.windows.d.ts → ReanimatedModule.windows.d.ts} +0 -0
- package/lib/types/{lib/ReanimatedModuleCompat.d.ts → ReanimatedModuleCompat.d.ts} +0 -0
- package/lib/types/{lib/createAnimatedComponent.d.ts → createAnimatedComponent.d.ts} +0 -0
- package/lib/types/{lib/reanimated2 → reanimated2}/Bezier.d.ts +0 -0
- package/lib/types/{lib/reanimated2 → reanimated2}/Colors.d.ts +0 -0
- package/lib/types/{lib/reanimated2 → reanimated2}/Easing.d.ts +0 -0
- package/lib/types/{lib/reanimated2 → reanimated2}/NativeMethods.d.ts +2 -1
- package/lib/types/{lib/reanimated2 → reanimated2}/NativeReanimated/NativeReanimated.d.ts +0 -0
- package/lib/types/{lib/reanimated2 → reanimated2}/NativeReanimated/index.d.ts +0 -0
- package/lib/types/{lib/reanimated2 → reanimated2}/PlatformChecker.d.ts +0 -0
- package/lib/types/{lib/reanimated2 → reanimated2}/PropAdapters.d.ts +0 -0
- package/lib/types/{lib/reanimated2 → reanimated2}/UpdateProps.d.ts +0 -0
- package/lib/types/{lib/reanimated2 → reanimated2}/ViewDescriptorsSet.d.ts +0 -0
- package/lib/types/{lib/reanimated2 → reanimated2}/WorkletEventHandler.d.ts +0 -0
- package/lib/types/{lib/reanimated2 → reanimated2}/__mocks__/MutableValue.d.ts +0 -0
- package/lib/types/{lib/reanimated2 → reanimated2}/__mocks__/NativeReanimated.d.ts +0 -0
- package/lib/types/{lib/reanimated2 → reanimated2}/__mocks__/NativeReanimated.native.d.ts +0 -0
- package/lib/types/{lib/reanimated2 → reanimated2}/animation/commonTypes.d.ts +0 -0
- package/lib/types/{lib/reanimated2 → reanimated2}/animation/decay.d.ts +0 -0
- package/lib/types/{lib/reanimated2 → reanimated2}/animation/delay.d.ts +0 -0
- package/lib/types/{lib/reanimated2 → reanimated2}/animation/index.d.ts +0 -0
- package/lib/types/{lib/reanimated2 → reanimated2}/animation/repeat.d.ts +0 -0
- package/lib/types/{lib/reanimated2 → reanimated2}/animation/sequence.d.ts +0 -0
- package/lib/types/{lib/reanimated2 → reanimated2}/animation/spring.d.ts +0 -0
- package/lib/types/{lib/reanimated2 → reanimated2}/animation/styleAnimation.d.ts +0 -0
- package/lib/types/{lib/reanimated2 → reanimated2}/animation/timing.d.ts +0 -0
- package/lib/types/{lib/reanimated2 → reanimated2}/animation/util.d.ts +0 -0
- package/lib/types/{lib/reanimated2 → reanimated2}/commonTypes.d.ts +2 -2
- package/lib/types/{lib/reanimated2 → reanimated2}/component/FlatList.d.ts +0 -0
- package/lib/types/{lib/reanimated2 → reanimated2}/component/WrappedComponents.d.ts +0 -0
- package/lib/types/{lib/reanimated2 → reanimated2}/component/index.d.ts +0 -0
- package/lib/types/{lib/reanimated2 → reanimated2}/core.d.ts +0 -0
- package/lib/types/reanimated2/fabricUtils.d.ts +4 -0
- package/lib/types/{lib/reanimated2 → reanimated2}/hook/Hooks.d.ts +0 -0
- package/lib/types/{lib/reanimated2 → reanimated2}/hook/commonTypes.d.ts +2 -1
- package/lib/types/{lib/reanimated2 → reanimated2}/hook/index.d.ts +1 -1
- package/lib/types/{lib/reanimated2 → reanimated2}/hook/useAnimatedGestureHandler.d.ts +2 -2
- package/lib/types/{lib/reanimated2 → reanimated2}/hook/useAnimatedReaction.d.ts +0 -0
- package/lib/types/{lib/reanimated2 → reanimated2}/hook/useAnimatedRef.d.ts +0 -0
- package/lib/types/{lib/reanimated2 → reanimated2}/hook/useAnimatedScrollHandler.d.ts +2 -2
- package/lib/types/{lib/reanimated2 → reanimated2}/hook/useAnimatedSensor.d.ts +1 -3
- package/lib/types/{lib/reanimated2 → reanimated2}/hook/useAnimatedStyle.d.ts +0 -0
- package/lib/types/{lib/reanimated2 → reanimated2}/hook/useDerivedValue.d.ts +0 -0
- package/lib/types/{lib/reanimated2 → reanimated2}/hook/useSharedValue.d.ts +0 -0
- package/lib/types/{lib/reanimated2 → reanimated2}/hook/utils.d.ts +2 -2
- package/lib/types/{lib/reanimated2 → reanimated2}/index.d.ts +0 -0
- package/lib/types/{lib/reanimated2 → reanimated2}/interpolateColor.d.ts +5 -0
- package/lib/types/{lib/reanimated2 → reanimated2}/interpolation.d.ts +1 -4
- package/lib/types/{lib/reanimated2 → reanimated2}/jestUtils.d.ts +0 -0
- package/lib/types/{lib/reanimated2 → reanimated2}/js-reanimated/JSReanimated.d.ts +0 -0
- package/lib/types/{lib/reanimated2 → reanimated2}/js-reanimated/Mapper.d.ts +0 -0
- package/lib/types/{lib/reanimated2 → reanimated2}/js-reanimated/MapperRegistry.d.ts +0 -0
- package/lib/types/{lib/reanimated2 → reanimated2}/js-reanimated/MutableValue.d.ts +0 -0
- package/lib/types/{lib/reanimated2 → reanimated2}/js-reanimated/commonTypes.d.ts +0 -0
- package/lib/types/{lib/reanimated2 → reanimated2}/js-reanimated/index.d.ts +0 -0
- package/lib/types/{lib/reanimated2 → reanimated2}/layoutReanimation/LayoutAnimationRepository.d.ts +0 -0
- package/lib/types/{lib/reanimated2 → reanimated2}/layoutReanimation/animationBuilder/BaseAnimationBuilder.d.ts +0 -0
- package/lib/types/{lib/reanimated2 → reanimated2}/layoutReanimation/animationBuilder/ComplexAnimationBuilder.d.ts +0 -0
- package/lib/types/{lib/reanimated2 → reanimated2}/layoutReanimation/animationBuilder/Keyframe.d.ts +0 -0
- package/lib/types/{lib/reanimated2 → reanimated2}/layoutReanimation/animationBuilder/commonTypes.d.ts +0 -0
- package/lib/types/{lib/reanimated2 → reanimated2}/layoutReanimation/animationBuilder/index.d.ts +0 -0
- package/lib/types/{lib/reanimated2 → reanimated2}/layoutReanimation/defaultAnimations/Bounce.d.ts +0 -0
- package/lib/types/{lib/reanimated2 → reanimated2}/layoutReanimation/defaultAnimations/Default.d.ts +0 -0
- package/lib/types/{lib/reanimated2 → reanimated2}/layoutReanimation/defaultAnimations/Fade.d.ts +0 -0
- package/lib/types/{lib/reanimated2 → reanimated2}/layoutReanimation/defaultAnimations/Flip.d.ts +0 -0
- package/lib/types/{lib/reanimated2 → reanimated2}/layoutReanimation/defaultAnimations/Lightspeed.d.ts +0 -0
- package/lib/types/{lib/reanimated2 → reanimated2}/layoutReanimation/defaultAnimations/Pinwheel.d.ts +0 -0
- package/lib/types/{lib/reanimated2 → reanimated2}/layoutReanimation/defaultAnimations/Roll.d.ts +0 -0
- package/lib/types/{lib/reanimated2 → reanimated2}/layoutReanimation/defaultAnimations/Rotate.d.ts +0 -0
- package/lib/types/{lib/reanimated2 → reanimated2}/layoutReanimation/defaultAnimations/Slide.d.ts +0 -0
- package/lib/types/{lib/reanimated2 → reanimated2}/layoutReanimation/defaultAnimations/Stretch.d.ts +0 -0
- package/lib/types/{lib/reanimated2 → reanimated2}/layoutReanimation/defaultAnimations/Zoom.d.ts +0 -0
- package/lib/types/{lib/reanimated2 → reanimated2}/layoutReanimation/defaultAnimations/index.d.ts +0 -0
- package/lib/types/{lib/reanimated2 → reanimated2}/layoutReanimation/defaultTransitions/CurvedTransition.d.ts +0 -0
- package/lib/types/{lib/reanimated2 → reanimated2}/layoutReanimation/defaultTransitions/EntryExitTransition.d.ts +0 -0
- package/lib/types/{lib/reanimated2 → reanimated2}/layoutReanimation/defaultTransitions/FadingTransition.d.ts +0 -0
- package/lib/types/{lib/reanimated2 → reanimated2}/layoutReanimation/defaultTransitions/JumpingTransition.d.ts +0 -0
- package/lib/types/{lib/reanimated2 → reanimated2}/layoutReanimation/defaultTransitions/LinearTransition.d.ts +0 -0
- package/lib/types/{lib/reanimated2 → reanimated2}/layoutReanimation/defaultTransitions/SequencedTransition.d.ts +0 -0
- package/lib/types/{lib/reanimated2 → reanimated2}/layoutReanimation/defaultTransitions/index.d.ts +0 -0
- package/lib/types/{lib/reanimated2 → reanimated2}/layoutReanimation/index.d.ts +0 -0
- package/lib/types/{lib/reanimated2 → reanimated2}/mock.d.ts +0 -0
- package/lib/types/{lib/reanimated2 → reanimated2}/platform-specific/RNRenderer.d.ts +0 -0
- package/lib/types/{lib/reanimated2 → reanimated2}/platform-specific/RNRenderer.web.d.ts +0 -0
- package/lib/types/{lib/reanimated2 → reanimated2}/utils.d.ts +0 -0
- package/lib/types/{lib/setAndForwardRef.d.ts → setAndForwardRef.d.ts} +0 -0
- package/package.json +10 -10
- package/plugin.js +29 -33
- package/react-native-reanimated.d.ts +15 -3
- package/src/Animated.js +0 -13
- package/src/ConfigHelper.ts +0 -1
- package/src/createAnimatedComponent.tsx +37 -197
- package/src/reanimated2/Easing.ts +8 -55
- package/src/reanimated2/NativeMethods.ts +39 -7
- package/src/reanimated2/UpdateProps.ts +38 -19
- package/src/reanimated2/commonTypes.ts +4 -2
- package/src/reanimated2/component/FlatList.tsx +8 -5
- package/src/reanimated2/core.ts +7 -48
- package/src/reanimated2/fabricUtils.ts +27 -0
- package/src/reanimated2/globals.d.ts +18 -3
- package/src/reanimated2/hook/commonTypes.ts +4 -2
- package/src/reanimated2/hook/index.ts +1 -1
- package/src/reanimated2/hook/useAnimatedGestureHandler.ts +2 -2
- package/src/reanimated2/hook/useAnimatedRef.ts +8 -3
- package/src/reanimated2/hook/useAnimatedScrollHandler.ts +2 -2
- package/src/reanimated2/hook/useAnimatedSensor.ts +1 -3
- package/src/reanimated2/hook/utils.ts +2 -11
- package/src/reanimated2/interpolateColor.ts +6 -2
- package/src/reanimated2/interpolation.ts +1 -26
- package/src/reanimated2/js-reanimated/index.ts +5 -0
- package/android/.gradle/7.2/dependencies-accessors/dependencies-accessors.lock +0 -0
- package/android/.gradle/7.2/dependencies-accessors/gc.properties +0 -0
- package/android/.gradle/7.2/executionHistory/executionHistory.bin +0 -0
- package/android/.gradle/7.2/executionHistory/executionHistory.lock +0 -0
- package/android/.gradle/7.2/fileChanges/last-build.bin +0 -0
- package/android/.gradle/7.2/fileHashes/fileHashes.bin +0 -0
- package/android/.gradle/7.2/fileHashes/fileHashes.lock +0 -0
- package/android/.gradle/7.2/fileHashes/resourceHashesCache.bin +0 -0
- package/android/.gradle/7.2/gc.properties +0 -0
- package/android/.gradle/buildOutputCleanup/buildOutputCleanup.lock +0 -0
- package/android/.gradle/buildOutputCleanup/cache.properties +0 -2
- package/android/.gradle/buildOutputCleanup/outputFiles.bin +0 -0
- package/android/.gradle/checksums/checksums.lock +0 -0
- package/android/.gradle/checksums/md5-checksums.bin +0 -0
- package/android/.gradle/checksums/sha1-checksums.bin +0 -0
- package/android/.gradle/vcs-1/gc.properties +0 -0
- package/android/react-native-reanimated-64-hermes.aar +0 -0
- package/android/react-native-reanimated-64-jsc.aar +0 -0
- package/android/react-native-reanimated-65-hermes.aar +0 -0
- package/android/react-native-reanimated-65-jsc.aar +0 -0
- package/android/react-native-reanimated-66-hermes.aar +0 -0
- package/android/react-native-reanimated-66-jsc.aar +0 -0
- package/android/react-native-reanimated-67-hermes.aar +0 -0
- package/android/react-native-reanimated-67-jsc.aar +0 -0
- package/android/react-native-reanimated-68-hermes.aar +0 -0
- package/android/react-native-reanimated-68-jsc.aar +0 -0
- package/android/src/main/java/com/swmansion/reanimated/UpdateContext.java +0 -11
- package/android/src/main/java/com/swmansion/reanimated/nodes/AlwaysNode.java +0 -29
- package/android/src/main/java/com/swmansion/reanimated/nodes/BezierNode.java +0 -87
- package/android/src/main/java/com/swmansion/reanimated/nodes/BlockNode.java +0 -24
- package/android/src/main/java/com/swmansion/reanimated/nodes/CallFuncNode.java +0 -49
- package/android/src/main/java/com/swmansion/reanimated/nodes/ClockNode.java +0 -38
- package/android/src/main/java/com/swmansion/reanimated/nodes/ClockOpNode.java +0 -73
- package/android/src/main/java/com/swmansion/reanimated/nodes/ConcatNode.java +0 -36
- package/android/src/main/java/com/swmansion/reanimated/nodes/CondNode.java +0 -41
- package/android/src/main/java/com/swmansion/reanimated/nodes/DebugNode.java +0 -33
- package/android/src/main/java/com/swmansion/reanimated/nodes/EventNode.java +0 -83
- package/android/src/main/java/com/swmansion/reanimated/nodes/FinalNode.java +0 -5
- package/android/src/main/java/com/swmansion/reanimated/nodes/FunctionNode.java +0 -20
- package/android/src/main/java/com/swmansion/reanimated/nodes/JSCallNode.java +0 -41
- package/android/src/main/java/com/swmansion/reanimated/nodes/Node.java +0 -139
- package/android/src/main/java/com/swmansion/reanimated/nodes/NoopNode.java +0 -37
- package/android/src/main/java/com/swmansion/reanimated/nodes/OperatorNode.java +0 -377
- package/android/src/main/java/com/swmansion/reanimated/nodes/ParamNode.java +0 -71
- package/android/src/main/java/com/swmansion/reanimated/nodes/PropsNode.java +0 -153
- package/android/src/main/java/com/swmansion/reanimated/nodes/SetNode.java +0 -32
- package/android/src/main/java/com/swmansion/reanimated/nodes/StyleNode.java +0 -40
- package/android/src/main/java/com/swmansion/reanimated/nodes/TransformNode.java +0 -84
- package/android/src/main/java/com/swmansion/reanimated/nodes/ValueNode.java +0 -40
- package/android/src/main/java/com/swmansion/reanimated/transitions/ChangeTransition.java +0 -84
- package/android/src/main/java/com/swmansion/reanimated/transitions/SaneSidePropagation.java +0 -25
- package/android/src/main/java/com/swmansion/reanimated/transitions/Scale.java +0 -86
- package/android/src/main/java/com/swmansion/reanimated/transitions/TransitionModule.java +0 -41
- package/android/src/main/java/com/swmansion/reanimated/transitions/TransitionUtils.java +0 -161
- package/ios/Nodes/REAAlwaysNode.h +0 -4
- package/ios/Nodes/REAAlwaysNode.m +0 -35
- package/ios/Nodes/REABezierNode.h +0 -5
- package/ios/Nodes/REABezierNode.m +0 -104
- package/ios/Nodes/REABlockNode.h +0 -5
- package/ios/Nodes/REABlockNode.m +0 -25
- package/ios/Nodes/REACallFuncNode.h +0 -6
- package/ios/Nodes/REACallFuncNode.m +0 -69
- package/ios/Nodes/REAClockNodes.h +0 -19
- package/ios/Nodes/REAClockNodes.m +0 -118
- package/ios/Nodes/REAConcatNode.h +0 -5
- package/ios/Nodes/REAConcatNode.m +0 -32
- package/ios/Nodes/REACondNode.h +0 -5
- package/ios/Nodes/REACondNode.m +0 -36
- package/ios/Nodes/READebugNode.h +0 -5
- package/ios/Nodes/READebugNode.m +0 -30
- package/ios/Nodes/REAEventNode.h +0 -9
- package/ios/Nodes/REAEventNode.m +0 -35
- package/ios/Nodes/REAFunctionNode.h +0 -6
- package/ios/Nodes/REAFunctionNode.m +0 -24
- package/ios/Nodes/REAJSCallNode.h +0 -5
- package/ios/Nodes/REAJSCallNode.m +0 -30
- package/ios/Nodes/REANode.h +0 -40
- package/ios/Nodes/REANode.m +0 -155
- package/ios/Nodes/REAOperatorNode.h +0 -5
- package/ios/Nodes/REAOperatorNode.m +0 -115
- package/ios/Nodes/REAParamNode.h +0 -10
- package/ios/Nodes/REAParamNode.m +0 -79
- package/ios/Nodes/REAPropsNode.h +0 -9
- package/ios/Nodes/REAPropsNode.m +0 -98
- package/ios/Nodes/REASetNode.h +0 -5
- package/ios/Nodes/REASetNode.m +0 -34
- package/ios/Nodes/REAStyleNode.h +0 -5
- package/ios/Nodes/REAStyleNode.m +0 -28
- package/ios/Nodes/REATransformNode.h +0 -5
- package/ios/Nodes/REATransformNode.m +0 -36
- package/ios/Nodes/REAValueNode.h +0 -11
- package/ios/Nodes/REAValueNode.m +0 -26
- package/ios/REAModule.m +0 -185
- package/ios/Transitioning/RCTConvert+REATransition.h +0 -12
- package/ios/Transitioning/RCTConvert+REATransition.m +0 -53
- package/ios/Transitioning/REAAllTransitions.h +0 -26
- package/ios/Transitioning/REAAllTransitions.m +0 -297
- package/ios/Transitioning/REATransition.h +0 -65
- package/ios/Transitioning/REATransition.m +0 -211
- package/ios/Transitioning/REATransitionAnimation.h +0 -17
- package/ios/Transitioning/REATransitionAnimation.m +0 -80
- package/ios/Transitioning/REATransitionManager.h +0 -9
- package/ios/Transitioning/REATransitionManager.m +0 -62
- package/ios/Transitioning/REATransitionValues.h +0 -15
- package/ios/Transitioning/REATransitionValues.m +0 -26
- package/lib/reanimated1/Easing.js +0 -231
- package/lib/reanimated1/SpringConfig.js +0 -79
- package/lib/reanimated1/Transitioning.js +0 -158
- package/lib/reanimated1/animations/Animation.js +0 -32
- package/lib/reanimated1/animations/SpringUtils.js +0 -199
- package/lib/reanimated1/animations/backwardCompatibleAnimWrapper.js +0 -117
- package/lib/reanimated1/animations/decay.js +0 -54
- package/lib/reanimated1/animations/spring.js +0 -198
- package/lib/reanimated1/animations/timing.js +0 -74
- package/lib/reanimated1/base.js +0 -13
- package/lib/reanimated1/core/AnimatedAlways.js +0 -33
- package/lib/reanimated1/core/AnimatedBezier.js +0 -150
- package/lib/reanimated1/core/AnimatedBlock.js +0 -52
- package/lib/reanimated1/core/AnimatedCall.js +0 -55
- package/lib/reanimated1/core/AnimatedCallFunc.js +0 -72
- package/lib/reanimated1/core/AnimatedClock.js +0 -90
- package/lib/reanimated1/core/AnimatedClockTest.js +0 -22
- package/lib/reanimated1/core/AnimatedCode.js +0 -32
- package/lib/reanimated1/core/AnimatedConcat.js +0 -32
- package/lib/reanimated1/core/AnimatedCond.js +0 -57
- package/lib/reanimated1/core/AnimatedDebug.js +0 -62
- package/lib/reanimated1/core/AnimatedEvent.js +0 -126
- package/lib/reanimated1/core/AnimatedFunction.js +0 -55
- package/lib/reanimated1/core/AnimatedNode.js +0 -223
- package/lib/reanimated1/core/AnimatedOperator.js +0 -103
- package/lib/reanimated1/core/AnimatedParam.js +0 -88
- package/lib/reanimated1/core/AnimatedProps.js +0 -108
- package/lib/reanimated1/core/AnimatedSet.js +0 -38
- package/lib/reanimated1/core/AnimatedStartClock.js +0 -30
- package/lib/reanimated1/core/AnimatedStopClock.js +0 -30
- package/lib/reanimated1/core/AnimatedStyle.js +0 -78
- package/lib/reanimated1/core/AnimatedTransform.js +0 -78
- package/lib/reanimated1/core/AnimatedValue.js +0 -38
- package/lib/reanimated1/core/Core.test.js +0 -30
- package/lib/reanimated1/core/InternalAnimatedValue.js +0 -87
- package/lib/reanimated1/core/__mocks__/AnimatedProps.js +0 -86
- package/lib/reanimated1/core/createEventObjectProxyPolyfill.js +0 -44
- package/lib/reanimated1/derived/__mocks__/evaluateOnce.js +0 -14
- package/lib/reanimated1/derived/acc.js +0 -11
- package/lib/reanimated1/derived/color.js +0 -47
- package/lib/reanimated1/derived/diff.js +0 -16
- package/lib/reanimated1/derived/diffClamp.js +0 -11
- package/lib/reanimated1/derived/evaluateOnce.js +0 -35
- package/lib/reanimated1/derived/index.js +0 -8
- package/lib/reanimated1/derived/interpolate.js +0 -152
- package/lib/reanimated1/derived/interpolateColors.js +0 -62
- package/lib/reanimated1/derived/onChange.js +0 -14
- package/lib/reanimated1/derived/useCode.js +0 -41
- package/lib/reanimated1/index.js +0 -53
- package/lib/reanimated1/operators.js +0 -35
- package/lib/reanimated1/useValue.js +0 -10
- package/lib/reanimated1/val.js +0 -3
- package/lib/types/react-native-reanimated-tests.d.ts +0 -1
- package/src/reanimated1/Easing.js +0 -231
- package/src/reanimated1/SpringConfig.js +0 -79
- package/src/reanimated1/Transitioning.js +0 -158
- package/src/reanimated1/animations/Animation.js +0 -32
- package/src/reanimated1/animations/SpringUtils.js +0 -199
- package/src/reanimated1/animations/backwardCompatibleAnimWrapper.js +0 -117
- package/src/reanimated1/animations/decay.js +0 -54
- package/src/reanimated1/animations/spring.js +0 -198
- package/src/reanimated1/animations/timing.js +0 -74
- package/src/reanimated1/base.js +0 -13
- package/src/reanimated1/core/AnimatedAlways.js +0 -33
- package/src/reanimated1/core/AnimatedBezier.js +0 -150
- package/src/reanimated1/core/AnimatedBlock.js +0 -52
- package/src/reanimated1/core/AnimatedCall.js +0 -55
- package/src/reanimated1/core/AnimatedCallFunc.js +0 -72
- package/src/reanimated1/core/AnimatedClock.js +0 -90
- package/src/reanimated1/core/AnimatedClockTest.js +0 -22
- package/src/reanimated1/core/AnimatedCode.js +0 -32
- package/src/reanimated1/core/AnimatedConcat.js +0 -32
- package/src/reanimated1/core/AnimatedCond.js +0 -57
- package/src/reanimated1/core/AnimatedDebug.js +0 -62
- package/src/reanimated1/core/AnimatedEvent.js +0 -126
- package/src/reanimated1/core/AnimatedFunction.js +0 -55
- package/src/reanimated1/core/AnimatedNode.js +0 -223
- package/src/reanimated1/core/AnimatedOperator.js +0 -103
- package/src/reanimated1/core/AnimatedParam.js +0 -88
- package/src/reanimated1/core/AnimatedProps.js +0 -108
- package/src/reanimated1/core/AnimatedSet.js +0 -38
- package/src/reanimated1/core/AnimatedStartClock.js +0 -30
- package/src/reanimated1/core/AnimatedStopClock.js +0 -30
- package/src/reanimated1/core/AnimatedStyle.js +0 -78
- package/src/reanimated1/core/AnimatedTransform.js +0 -78
- package/src/reanimated1/core/AnimatedValue.js +0 -38
- package/src/reanimated1/core/Core.test.js +0 -30
- package/src/reanimated1/core/InternalAnimatedValue.js +0 -87
- package/src/reanimated1/core/__mocks__/AnimatedProps.js +0 -86
- package/src/reanimated1/core/createEventObjectProxyPolyfill.js +0 -44
- package/src/reanimated1/derived/__mocks__/evaluateOnce.js +0 -14
- package/src/reanimated1/derived/acc.js +0 -11
- package/src/reanimated1/derived/color.js +0 -47
- package/src/reanimated1/derived/diff.js +0 -16
- package/src/reanimated1/derived/diffClamp.js +0 -11
- package/src/reanimated1/derived/evaluateOnce.js +0 -35
- package/src/reanimated1/derived/index.js +0 -8
- package/src/reanimated1/derived/interpolate.js +0 -152
- package/src/reanimated1/derived/interpolateColors.js +0 -62
- package/src/reanimated1/derived/onChange.js +0 -14
- package/src/reanimated1/derived/useCode.js +0 -41
- package/src/reanimated1/index.js +0 -53
- package/src/reanimated1/operators.js +0 -35
- package/src/reanimated1/useValue.js +0 -10
- package/src/reanimated1/val.js +0 -3
package/ios/Nodes/REAStyleNode.m
DELETED
|
@@ -1,28 +0,0 @@
|
|
|
1
|
-
#import "REAStyleNode.h"
|
|
2
|
-
|
|
3
|
-
#import "REANodesManager.h"
|
|
4
|
-
|
|
5
|
-
@implementation REAStyleNode {
|
|
6
|
-
NSMutableDictionary<NSString *, REANodeID> *_styleConfig;
|
|
7
|
-
}
|
|
8
|
-
|
|
9
|
-
- (instancetype)initWithID:(REANodeID)nodeID config:(NSDictionary<NSString *, id> *)config;
|
|
10
|
-
{
|
|
11
|
-
if ((self = [super initWithID:nodeID config:config])) {
|
|
12
|
-
_styleConfig = config[@"style"];
|
|
13
|
-
}
|
|
14
|
-
return self;
|
|
15
|
-
}
|
|
16
|
-
|
|
17
|
-
- (id)evaluate
|
|
18
|
-
{
|
|
19
|
-
NSMutableDictionary *styles = [NSMutableDictionary new];
|
|
20
|
-
for (NSString *prop in _styleConfig) {
|
|
21
|
-
REANode *propNode = [self.nodesManager findNodeByID:_styleConfig[prop]];
|
|
22
|
-
styles[prop] = [propNode value];
|
|
23
|
-
}
|
|
24
|
-
|
|
25
|
-
return styles;
|
|
26
|
-
}
|
|
27
|
-
|
|
28
|
-
@end
|
|
@@ -1,36 +0,0 @@
|
|
|
1
|
-
#import "REATransformNode.h"
|
|
2
|
-
#import <React/RCTConvert.h>
|
|
3
|
-
#import "REANodesManager.h"
|
|
4
|
-
|
|
5
|
-
@implementation REATransformNode {
|
|
6
|
-
NSArray<id> *_transformConfigs;
|
|
7
|
-
}
|
|
8
|
-
|
|
9
|
-
- (instancetype)initWithID:(REANodeID)nodeID config:(NSDictionary<NSString *, id> *)config
|
|
10
|
-
{
|
|
11
|
-
if ((self = [super initWithID:nodeID config:config])) {
|
|
12
|
-
_transformConfigs = config[@"transform"];
|
|
13
|
-
}
|
|
14
|
-
return self;
|
|
15
|
-
}
|
|
16
|
-
|
|
17
|
-
- (id)evaluate
|
|
18
|
-
{
|
|
19
|
-
NSMutableArray<NSDictionary *> *transform = [NSMutableArray arrayWithCapacity:_transformConfigs.count];
|
|
20
|
-
for (NSDictionary *transformConfig in _transformConfigs) {
|
|
21
|
-
NSString *property = transformConfig[@"property"];
|
|
22
|
-
REANodeID nodeID = [RCTConvert NSNumber:transformConfig[@"nodeID"]];
|
|
23
|
-
NSNumber *value;
|
|
24
|
-
if (nodeID) {
|
|
25
|
-
REANode *node = [self.nodesManager findNodeByID:nodeID];
|
|
26
|
-
value = [node value];
|
|
27
|
-
} else {
|
|
28
|
-
value = transformConfig[@"value"];
|
|
29
|
-
}
|
|
30
|
-
[transform addObject:@{property : value}];
|
|
31
|
-
}
|
|
32
|
-
|
|
33
|
-
return transform;
|
|
34
|
-
}
|
|
35
|
-
|
|
36
|
-
@end
|
package/ios/Nodes/REAValueNode.h
DELETED
package/ios/Nodes/REAValueNode.m
DELETED
|
@@ -1,26 +0,0 @@
|
|
|
1
|
-
#import "REAValueNode.h"
|
|
2
|
-
|
|
3
|
-
@implementation REAValueNode {
|
|
4
|
-
NSNumber *_value;
|
|
5
|
-
}
|
|
6
|
-
|
|
7
|
-
- (instancetype)initWithID:(REANodeID)nodeID config:(NSDictionary<NSString *, id> *)config
|
|
8
|
-
{
|
|
9
|
-
if (self = [super initWithID:nodeID config:config]) {
|
|
10
|
-
_value = config[@"value"];
|
|
11
|
-
}
|
|
12
|
-
return self;
|
|
13
|
-
}
|
|
14
|
-
|
|
15
|
-
- (void)setValue:(NSNumber *)value
|
|
16
|
-
{
|
|
17
|
-
_value = value;
|
|
18
|
-
[self forceUpdateMemoizedValue:value];
|
|
19
|
-
}
|
|
20
|
-
|
|
21
|
-
- (id)evaluate
|
|
22
|
-
{
|
|
23
|
-
return _value;
|
|
24
|
-
}
|
|
25
|
-
|
|
26
|
-
@end
|
package/ios/REAModule.m
DELETED
|
@@ -1,185 +0,0 @@
|
|
|
1
|
-
#import "REAModule.h"
|
|
2
|
-
|
|
3
|
-
#import "REANodesManager.h"
|
|
4
|
-
#import "Transitioning/REATransitionManager.h"
|
|
5
|
-
#import "native/NativeProxy.h"
|
|
6
|
-
|
|
7
|
-
typedef void (^AnimatedOperation)(REANodesManager *nodesManager);
|
|
8
|
-
|
|
9
|
-
@implementation REAModule {
|
|
10
|
-
NSMutableArray<AnimatedOperation> *_operations;
|
|
11
|
-
REATransitionManager *_transitionManager;
|
|
12
|
-
}
|
|
13
|
-
|
|
14
|
-
RCT_EXPORT_MODULE(ReanimatedModule);
|
|
15
|
-
|
|
16
|
-
- (void)invalidate
|
|
17
|
-
{
|
|
18
|
-
_transitionManager = nil;
|
|
19
|
-
[_nodesManager invalidate];
|
|
20
|
-
[self.bridge.uiManager.observerCoordinator removeObserver:self];
|
|
21
|
-
}
|
|
22
|
-
|
|
23
|
-
- (dispatch_queue_t)methodQueue
|
|
24
|
-
{
|
|
25
|
-
// This module needs to be on the same queue as the UIManager to avoid
|
|
26
|
-
// having to lock `_operations` and `_preOperations` since `uiManagerWillPerformMounting`
|
|
27
|
-
// will be called from that queue.
|
|
28
|
-
return RCTGetUIManagerQueue();
|
|
29
|
-
}
|
|
30
|
-
|
|
31
|
-
#pragma mark-- Initialize
|
|
32
|
-
|
|
33
|
-
- (void)setBridge:(RCTBridge *)bridge
|
|
34
|
-
{
|
|
35
|
-
[super setBridge:bridge];
|
|
36
|
-
|
|
37
|
-
_nodesManager = [[REANodesManager alloc] initWithModule:self uiManager:self.bridge.uiManager];
|
|
38
|
-
_operations = [NSMutableArray new];
|
|
39
|
-
|
|
40
|
-
_transitionManager = [[REATransitionManager alloc] initWithUIManager:self.bridge.uiManager];
|
|
41
|
-
|
|
42
|
-
[bridge.uiManager.observerCoordinator addObserver:self];
|
|
43
|
-
}
|
|
44
|
-
|
|
45
|
-
RCT_EXPORT_METHOD(installTurboModule)
|
|
46
|
-
{
|
|
47
|
-
// TODO: Move initialization from UIResponder+Reanimated to here
|
|
48
|
-
}
|
|
49
|
-
|
|
50
|
-
#pragma mark-- Transitioning API
|
|
51
|
-
|
|
52
|
-
RCT_EXPORT_METHOD(animateNextTransition : (nonnull NSNumber *)rootTag config : (NSDictionary *)config)
|
|
53
|
-
{
|
|
54
|
-
[_transitionManager animateNextTransitionInRoot:rootTag withConfig:config];
|
|
55
|
-
}
|
|
56
|
-
|
|
57
|
-
#pragma mark-- API
|
|
58
|
-
|
|
59
|
-
RCT_EXPORT_METHOD(createNode : (nonnull NSNumber *)nodeID config : (NSDictionary<NSString *, id> *)config)
|
|
60
|
-
{
|
|
61
|
-
[self addOperationBlock:^(REANodesManager *nodesManager) {
|
|
62
|
-
[nodesManager createNode:nodeID config:config];
|
|
63
|
-
}];
|
|
64
|
-
}
|
|
65
|
-
|
|
66
|
-
RCT_EXPORT_METHOD(dropNode : (nonnull NSNumber *)nodeID)
|
|
67
|
-
{
|
|
68
|
-
[self addOperationBlock:^(REANodesManager *nodesManager) {
|
|
69
|
-
[nodesManager dropNode:nodeID];
|
|
70
|
-
}];
|
|
71
|
-
}
|
|
72
|
-
|
|
73
|
-
RCT_EXPORT_METHOD(getValue : (nonnull NSNumber *)nodeID callback : (RCTResponseSenderBlock)callback)
|
|
74
|
-
{
|
|
75
|
-
[self addOperationBlock:^(REANodesManager *nodesManager) {
|
|
76
|
-
[nodesManager getValue:nodeID callback:(RCTResponseSenderBlock)callback];
|
|
77
|
-
}];
|
|
78
|
-
}
|
|
79
|
-
|
|
80
|
-
RCT_EXPORT_METHOD(connectNodes : (nonnull NSNumber *)parentID childTag : (nonnull NSNumber *)childID)
|
|
81
|
-
{
|
|
82
|
-
[self addOperationBlock:^(REANodesManager *nodesManager) {
|
|
83
|
-
[nodesManager connectNodes:parentID childID:childID];
|
|
84
|
-
}];
|
|
85
|
-
}
|
|
86
|
-
|
|
87
|
-
RCT_EXPORT_METHOD(disconnectNodes : (nonnull NSNumber *)parentID childTag : (nonnull NSNumber *)childID)
|
|
88
|
-
{
|
|
89
|
-
[self addOperationBlock:^(REANodesManager *nodesManager) {
|
|
90
|
-
[nodesManager disconnectNodes:parentID childID:childID];
|
|
91
|
-
}];
|
|
92
|
-
}
|
|
93
|
-
|
|
94
|
-
RCT_EXPORT_METHOD(connectNodeToView : (nonnull NSNumber *)nodeID viewTag : (nonnull NSNumber *)viewTag)
|
|
95
|
-
{
|
|
96
|
-
NSString *viewName = [self.bridge.uiManager viewNameForReactTag:viewTag];
|
|
97
|
-
[self addOperationBlock:^(REANodesManager *nodesManager) {
|
|
98
|
-
[nodesManager connectNodeToView:nodeID viewTag:viewTag viewName:viewName];
|
|
99
|
-
}];
|
|
100
|
-
}
|
|
101
|
-
|
|
102
|
-
RCT_EXPORT_METHOD(disconnectNodeFromView : (nonnull NSNumber *)nodeID viewTag : (nonnull NSNumber *)viewTag)
|
|
103
|
-
{
|
|
104
|
-
[self addOperationBlock:^(REANodesManager *nodesManager) {
|
|
105
|
-
[nodesManager disconnectNodeFromView:nodeID viewTag:viewTag];
|
|
106
|
-
}];
|
|
107
|
-
}
|
|
108
|
-
|
|
109
|
-
RCT_EXPORT_METHOD(attachEvent
|
|
110
|
-
: (nonnull NSNumber *)viewTag eventName
|
|
111
|
-
: (nonnull NSString *)eventName eventNodeID
|
|
112
|
-
: (nonnull NSNumber *)eventNodeID)
|
|
113
|
-
{
|
|
114
|
-
[self addOperationBlock:^(REANodesManager *nodesManager) {
|
|
115
|
-
[nodesManager attachEvent:viewTag eventName:eventName eventNodeID:eventNodeID];
|
|
116
|
-
}];
|
|
117
|
-
}
|
|
118
|
-
|
|
119
|
-
RCT_EXPORT_METHOD(detachEvent
|
|
120
|
-
: (nonnull NSNumber *)viewTag eventName
|
|
121
|
-
: (nonnull NSString *)eventName eventNodeID
|
|
122
|
-
: (nonnull NSNumber *)eventNodeID)
|
|
123
|
-
{
|
|
124
|
-
[self addOperationBlock:^(REANodesManager *nodesManager) {
|
|
125
|
-
[nodesManager detachEvent:viewTag eventName:eventName eventNodeID:eventNodeID];
|
|
126
|
-
}];
|
|
127
|
-
}
|
|
128
|
-
|
|
129
|
-
RCT_EXPORT_METHOD(setValue : (nonnull NSNumber *)nodeID newValue : (nonnull NSNumber *)newValue)
|
|
130
|
-
{
|
|
131
|
-
[self addOperationBlock:^(REANodesManager *nodesManager) {
|
|
132
|
-
[nodesManager setValueForNodeID:nodeID value:newValue];
|
|
133
|
-
}];
|
|
134
|
-
}
|
|
135
|
-
|
|
136
|
-
RCT_EXPORT_METHOD(triggerRender)
|
|
137
|
-
{
|
|
138
|
-
[self addOperationBlock:^(REANodesManager *nodesManager) {
|
|
139
|
-
[nodesManager postRunUpdatesAfterAnimation];
|
|
140
|
-
}];
|
|
141
|
-
}
|
|
142
|
-
|
|
143
|
-
#pragma mark-- Batch handling
|
|
144
|
-
|
|
145
|
-
- (void)addOperationBlock:(AnimatedOperation)operation
|
|
146
|
-
{
|
|
147
|
-
[_operations addObject:operation];
|
|
148
|
-
}
|
|
149
|
-
|
|
150
|
-
#pragma mark - RCTUIManagerObserver
|
|
151
|
-
|
|
152
|
-
- (void)uiManagerWillPerformMounting:(RCTUIManager *)uiManager
|
|
153
|
-
{
|
|
154
|
-
[_nodesManager maybeFlushUpdateBuffer];
|
|
155
|
-
if (_operations.count == 0) {
|
|
156
|
-
return;
|
|
157
|
-
}
|
|
158
|
-
|
|
159
|
-
NSArray<AnimatedOperation> *operations = _operations;
|
|
160
|
-
_operations = [NSMutableArray new];
|
|
161
|
-
|
|
162
|
-
REANodesManager *nodesManager = _nodesManager;
|
|
163
|
-
|
|
164
|
-
[uiManager addUIBlock:^(__unused RCTUIManager *manager, __unused NSDictionary<NSNumber *, UIView *> *viewRegistry) {
|
|
165
|
-
for (AnimatedOperation operation in operations) {
|
|
166
|
-
operation(nodesManager);
|
|
167
|
-
}
|
|
168
|
-
[nodesManager operationsBatchDidComplete];
|
|
169
|
-
}];
|
|
170
|
-
}
|
|
171
|
-
|
|
172
|
-
#pragma mark-- Events
|
|
173
|
-
|
|
174
|
-
- (NSArray<NSString *> *)supportedEvents
|
|
175
|
-
{
|
|
176
|
-
return @[ @"onReanimatedCall", @"onReanimatedPropsChange" ];
|
|
177
|
-
}
|
|
178
|
-
|
|
179
|
-
- (void)eventDispatcherWillDispatchEvent:(id<RCTEvent>)event
|
|
180
|
-
{
|
|
181
|
-
// Events can be dispatched from any queue
|
|
182
|
-
[_nodesManager dispatchEvent:event];
|
|
183
|
-
}
|
|
184
|
-
|
|
185
|
-
@end
|
|
@@ -1,12 +0,0 @@
|
|
|
1
|
-
#import <React/RCTConvert.h>
|
|
2
|
-
|
|
3
|
-
#import "REATransition.h"
|
|
4
|
-
|
|
5
|
-
@interface RCTConvert (REATransition)
|
|
6
|
-
|
|
7
|
-
+ (REATransitionType)REATransitionType:(id)json;
|
|
8
|
-
+ (REATransitionAnimationType)REATransitionAnimationType:(id)json;
|
|
9
|
-
+ (REATransitionInterpolationType)REATransitionInterpolationType:(id)json;
|
|
10
|
-
+ (REATransitionPropagationType)REATransitionPropagationType:(id)json;
|
|
11
|
-
|
|
12
|
-
@end
|
|
@@ -1,53 +0,0 @@
|
|
|
1
|
-
#import "RCTConvert+REATransition.h"
|
|
2
|
-
|
|
3
|
-
@implementation RCTConvert (REATransition)
|
|
4
|
-
|
|
5
|
-
RCT_ENUM_CONVERTER(
|
|
6
|
-
REATransitionType,
|
|
7
|
-
(@{
|
|
8
|
-
@"none" : @(REATransitionTypeNone),
|
|
9
|
-
@"group" : @(REATransitionTypeGroup),
|
|
10
|
-
@"in" : @(REATransitionTypeIn),
|
|
11
|
-
@"out" : @(REATransitionTypeOut),
|
|
12
|
-
@"change" : @(REATransitionTypeChange),
|
|
13
|
-
}),
|
|
14
|
-
REATransitionTypeNone,
|
|
15
|
-
integerValue)
|
|
16
|
-
|
|
17
|
-
RCT_ENUM_CONVERTER(
|
|
18
|
-
REATransitionAnimationType,
|
|
19
|
-
(@{
|
|
20
|
-
@"none" : @(REATransitionAnimationTypeNone),
|
|
21
|
-
@"fade" : @(REATransitionAnimationTypeFade),
|
|
22
|
-
@"scale" : @(REATransitionAnimationTypeScale),
|
|
23
|
-
@"slide-top" : @(REATransitionAnimationTypeSlideTop),
|
|
24
|
-
@"slide-bottom" : @(REATransitionAnimationTypeSlideBottom),
|
|
25
|
-
@"slide-right" : @(REATransitionAnimationTypeSlideRight),
|
|
26
|
-
@"slide-left" : @(REATransitionAnimationTypeSlideLeft)
|
|
27
|
-
}),
|
|
28
|
-
REATransitionAnimationTypeNone,
|
|
29
|
-
integerValue)
|
|
30
|
-
|
|
31
|
-
RCT_ENUM_CONVERTER(
|
|
32
|
-
REATransitionInterpolationType,
|
|
33
|
-
(@{
|
|
34
|
-
@"linear" : @(REATransitionInterpolationLinear),
|
|
35
|
-
@"easeIn" : @(REATransitionInterpolationEaseIn),
|
|
36
|
-
@"easeOut" : @(REATransitionInterpolationEaseOut),
|
|
37
|
-
@"easeInOut" : @(REATransitionInterpolationEaseInOut),
|
|
38
|
-
}),
|
|
39
|
-
REATransitionInterpolationLinear,
|
|
40
|
-
integerValue)
|
|
41
|
-
|
|
42
|
-
RCT_ENUM_CONVERTER(
|
|
43
|
-
REATransitionPropagationType,
|
|
44
|
-
(@{
|
|
45
|
-
@"none" : @(REATransitionPropagationNone),
|
|
46
|
-
@"top" : @(REATransitionPropagationTop),
|
|
47
|
-
@"bottom" : @(REATransitionPropagationBottom),
|
|
48
|
-
@"left" : @(REATransitionPropagationLeft),
|
|
49
|
-
@"right" : @(REATransitionPropagationRight)
|
|
50
|
-
}),
|
|
51
|
-
REATransitionPropagationNone,
|
|
52
|
-
integerValue)
|
|
53
|
-
@end
|
|
@@ -1,26 +0,0 @@
|
|
|
1
|
-
#import "REATransition.h"
|
|
2
|
-
|
|
3
|
-
@interface REATransitionGroup : REATransition
|
|
4
|
-
@property (nonatomic) BOOL sequence;
|
|
5
|
-
@property (nonatomic) NSArray *transitions;
|
|
6
|
-
- (instancetype)initWithConfig:(NSDictionary *)config;
|
|
7
|
-
@end
|
|
8
|
-
|
|
9
|
-
@interface REAVisibilityTransition : REATransition
|
|
10
|
-
@property (nonatomic) REATransitionAnimationType animationType;
|
|
11
|
-
- (REATransitionAnimation *)appearView:(UIView *)view inParent:(UIView *)parent;
|
|
12
|
-
- (REATransitionAnimation *)disappearView:(UIView *)view fromParent:(UIView *)parent;
|
|
13
|
-
- (instancetype)initWithConfig:(NSDictionary *)config;
|
|
14
|
-
@end
|
|
15
|
-
|
|
16
|
-
@interface REAInTransition : REAVisibilityTransition
|
|
17
|
-
- (instancetype)initWithConfig:(NSDictionary *)config;
|
|
18
|
-
@end
|
|
19
|
-
|
|
20
|
-
@interface REAOutTransition : REAVisibilityTransition
|
|
21
|
-
- (instancetype)initWithConfig:(NSDictionary *)config;
|
|
22
|
-
@end
|
|
23
|
-
|
|
24
|
-
@interface REAChangeTransition : REATransition
|
|
25
|
-
- (instancetype)initWithConfig:(NSDictionary *)config;
|
|
26
|
-
@end
|
|
@@ -1,297 +0,0 @@
|
|
|
1
|
-
#import <React/RCTViewManager.h>
|
|
2
|
-
|
|
3
|
-
#import "RCTConvert+REATransition.h"
|
|
4
|
-
#import "REAAllTransitions.h"
|
|
5
|
-
|
|
6
|
-
@interface REASnapshotRemover : NSObject <CAAnimationDelegate>
|
|
7
|
-
@end
|
|
8
|
-
|
|
9
|
-
@implementation REASnapshotRemover {
|
|
10
|
-
UIView *_view;
|
|
11
|
-
}
|
|
12
|
-
|
|
13
|
-
- (instancetype)initWithView:(UIView *)view;
|
|
14
|
-
{
|
|
15
|
-
self = [super init];
|
|
16
|
-
if (self) {
|
|
17
|
-
_view = view;
|
|
18
|
-
}
|
|
19
|
-
return self;
|
|
20
|
-
}
|
|
21
|
-
|
|
22
|
-
- (void)animationDidStop:(CAAnimation *)anim finished:(BOOL)flag
|
|
23
|
-
{
|
|
24
|
-
[_view removeFromSuperview];
|
|
25
|
-
}
|
|
26
|
-
|
|
27
|
-
@end
|
|
28
|
-
|
|
29
|
-
@implementation REATransitionGroup
|
|
30
|
-
|
|
31
|
-
- (instancetype)initWithConfig:(NSDictionary *)config
|
|
32
|
-
{
|
|
33
|
-
if (self = [super initWithConfig:config]) {
|
|
34
|
-
_sequence = [RCTConvert BOOL:config[@"sequence"]];
|
|
35
|
-
NSArray *transitions = [RCTConvert NSArray:config[@"transitions"]];
|
|
36
|
-
NSMutableArray<REATransition *> *inflated = [NSMutableArray new];
|
|
37
|
-
for (NSDictionary *transitionConfig in transitions) {
|
|
38
|
-
[inflated addObject:[REATransition inflate:transitionConfig]];
|
|
39
|
-
inflated.lastObject.parent = self;
|
|
40
|
-
}
|
|
41
|
-
_transitions = inflated;
|
|
42
|
-
}
|
|
43
|
-
return self;
|
|
44
|
-
}
|
|
45
|
-
|
|
46
|
-
- (instancetype)init
|
|
47
|
-
{
|
|
48
|
-
if (self = [super init]) {
|
|
49
|
-
_transitions = [NSMutableArray new];
|
|
50
|
-
}
|
|
51
|
-
return self;
|
|
52
|
-
}
|
|
53
|
-
|
|
54
|
-
- (NSArray<REATransitionAnimation *> *)
|
|
55
|
-
animationsForTransitioning:(NSMutableDictionary<NSNumber *, REATransitionValues *> *)startValues
|
|
56
|
-
endValues:(NSMutableDictionary<NSNumber *, REATransitionValues *> *)endValues
|
|
57
|
-
forRoot:(UIView *)root
|
|
58
|
-
{
|
|
59
|
-
CFTimeInterval delay = self.delay;
|
|
60
|
-
NSMutableArray *animations = [NSMutableArray new];
|
|
61
|
-
for (REATransition *transition in _transitions) {
|
|
62
|
-
NSArray *subanims = [transition animationsForTransitioning:startValues endValues:endValues forRoot:root];
|
|
63
|
-
CFTimeInterval finishTime = CACurrentMediaTime();
|
|
64
|
-
for (REATransitionAnimation *anim in subanims) {
|
|
65
|
-
[anim delayBy:delay];
|
|
66
|
-
finishTime = MAX(finishTime, anim.finishTime);
|
|
67
|
-
}
|
|
68
|
-
[animations addObjectsFromArray:subanims];
|
|
69
|
-
if (_sequence) {
|
|
70
|
-
delay = finishTime - CACurrentMediaTime();
|
|
71
|
-
}
|
|
72
|
-
}
|
|
73
|
-
return animations;
|
|
74
|
-
}
|
|
75
|
-
|
|
76
|
-
@end
|
|
77
|
-
|
|
78
|
-
@implementation REAVisibilityTransition
|
|
79
|
-
|
|
80
|
-
- (instancetype)initWithConfig:(NSDictionary *)config
|
|
81
|
-
{
|
|
82
|
-
if (self = [super initWithConfig:config]) {
|
|
83
|
-
_animationType = [RCTConvert REATransitionAnimationType:config[@"animation"]];
|
|
84
|
-
}
|
|
85
|
-
return self;
|
|
86
|
-
}
|
|
87
|
-
|
|
88
|
-
- (REATransitionAnimation *)appearView:(UIView *)view inParent:(UIView *)parent forRoot:(UIView *)root
|
|
89
|
-
{
|
|
90
|
-
return nil;
|
|
91
|
-
}
|
|
92
|
-
|
|
93
|
-
- (REATransitionAnimation *)disappearView:(UIView *)view fromParent:(UIView *)parent forRoot:(UIView *)root
|
|
94
|
-
{
|
|
95
|
-
return nil;
|
|
96
|
-
}
|
|
97
|
-
|
|
98
|
-
- (REATransitionAnimation *)animationForTransitioning:(REATransitionValues *)startValues
|
|
99
|
-
endValues:(REATransitionValues *)endValues
|
|
100
|
-
forRoot:(UIView *)root
|
|
101
|
-
{
|
|
102
|
-
BOOL isViewAppearing = (startValues == nil);
|
|
103
|
-
if (isViewAppearing && !IS_LAYOUT_ONLY(endValues.view)) {
|
|
104
|
-
NSNumber *parentKey = endValues.reactParent.reactTag;
|
|
105
|
-
REATransitionValues *parentStartValues = [self findStartValuesForKey:parentKey];
|
|
106
|
-
REATransitionValues *parentEndValues = [self findEndValuesForKey:parentKey];
|
|
107
|
-
BOOL isParentAppearing = (parentStartValues == nil && parentEndValues != nil);
|
|
108
|
-
if (!isParentAppearing) {
|
|
109
|
-
return [self appearView:endValues.view inParent:endValues.parent forRoot:root];
|
|
110
|
-
}
|
|
111
|
-
}
|
|
112
|
-
|
|
113
|
-
if (endValues == nil && !IS_LAYOUT_ONLY(startValues.view) && startValues.reactParent.window != nil) {
|
|
114
|
-
startValues.view.center = startValues.centerInReactParent;
|
|
115
|
-
return [self disappearView:startValues.view fromParent:startValues.reactParent forRoot:root];
|
|
116
|
-
}
|
|
117
|
-
return nil;
|
|
118
|
-
}
|
|
119
|
-
|
|
120
|
-
@end
|
|
121
|
-
|
|
122
|
-
@implementation REAInTransition
|
|
123
|
-
- (instancetype)initWithConfig:(NSDictionary *)config
|
|
124
|
-
{
|
|
125
|
-
if (self = [super initWithConfig:config]) {
|
|
126
|
-
}
|
|
127
|
-
return self;
|
|
128
|
-
}
|
|
129
|
-
|
|
130
|
-
- (REATransitionAnimation *)appearView:(UIView *)view inParent:(UIView *)parent forRoot:(UIView *)root
|
|
131
|
-
{
|
|
132
|
-
CABasicAnimation *animation;
|
|
133
|
-
switch (self.animationType) {
|
|
134
|
-
case REATransitionAnimationTypeNone:
|
|
135
|
-
return nil;
|
|
136
|
-
case REATransitionAnimationTypeFade: {
|
|
137
|
-
CGFloat finalOpacity = view.layer.opacity;
|
|
138
|
-
animation = [CABasicAnimation animationWithKeyPath:@"opacity"];
|
|
139
|
-
animation.fromValue = @(0.0f);
|
|
140
|
-
animation.toValue = @(finalOpacity);
|
|
141
|
-
break;
|
|
142
|
-
}
|
|
143
|
-
case REATransitionAnimationTypeScale: {
|
|
144
|
-
CATransform3D finalTransform = view.layer.transform;
|
|
145
|
-
animation = [CABasicAnimation animationWithKeyPath:@"transform"];
|
|
146
|
-
animation.fromValue = [NSValue valueWithCATransform3D:CATransform3DMakeScale(0.0, 0.0, 0)];
|
|
147
|
-
animation.toValue = [NSValue valueWithCATransform3D:finalTransform];
|
|
148
|
-
break;
|
|
149
|
-
}
|
|
150
|
-
case REATransitionAnimationTypeSlideTop:
|
|
151
|
-
case REATransitionAnimationTypeSlideBottom:
|
|
152
|
-
case REATransitionAnimationTypeSlideLeft:
|
|
153
|
-
case REATransitionAnimationTypeSlideRight: {
|
|
154
|
-
CGPoint finalPosition = view.layer.position;
|
|
155
|
-
CGPoint startPosition = finalPosition;
|
|
156
|
-
switch (self.animationType) {
|
|
157
|
-
case REATransitionAnimationTypeSlideTop:
|
|
158
|
-
startPosition.y -= root.frame.size.height;
|
|
159
|
-
break;
|
|
160
|
-
case REATransitionAnimationTypeSlideBottom:
|
|
161
|
-
startPosition.y += root.frame.size.height;
|
|
162
|
-
break;
|
|
163
|
-
case REATransitionAnimationTypeSlideLeft:
|
|
164
|
-
startPosition.x -= root.frame.size.width;
|
|
165
|
-
break;
|
|
166
|
-
case REATransitionAnimationTypeSlideRight:
|
|
167
|
-
startPosition.x += root.frame.size.width;
|
|
168
|
-
break;
|
|
169
|
-
}
|
|
170
|
-
animation = [CABasicAnimation animationWithKeyPath:@"position"];
|
|
171
|
-
animation.fromValue = @(startPosition);
|
|
172
|
-
animation.toValue = @(finalPosition);
|
|
173
|
-
break;
|
|
174
|
-
}
|
|
175
|
-
}
|
|
176
|
-
animation.fillMode = kCAFillModeBackwards;
|
|
177
|
-
|
|
178
|
-
return [REATransitionAnimation transitionWithAnimation:animation layer:view.layer andKeyPath:animation.keyPath];
|
|
179
|
-
}
|
|
180
|
-
@end
|
|
181
|
-
|
|
182
|
-
@implementation REAOutTransition
|
|
183
|
-
- (instancetype)initWithConfig:(NSDictionary *)config
|
|
184
|
-
{
|
|
185
|
-
if (self = [super initWithConfig:config]) {
|
|
186
|
-
}
|
|
187
|
-
return self;
|
|
188
|
-
}
|
|
189
|
-
|
|
190
|
-
- (REATransitionAnimation *)disappearView:(UIView *)view fromParent:(UIView *)parent forRoot:(UIView *)root
|
|
191
|
-
{
|
|
192
|
-
if (self.animationType == REATransitionAnimationTypeNone) {
|
|
193
|
-
return nil;
|
|
194
|
-
}
|
|
195
|
-
// Add view back to parent temporarily in order to take snapshot
|
|
196
|
-
[parent addSubview:view];
|
|
197
|
-
UIView *snapshotView = [view snapshotViewAfterScreenUpdates:NO];
|
|
198
|
-
[view removeFromSuperview];
|
|
199
|
-
snapshotView.frame = view.frame;
|
|
200
|
-
[parent addSubview:snapshotView];
|
|
201
|
-
CALayer *snapshot = snapshotView.layer;
|
|
202
|
-
|
|
203
|
-
CABasicAnimation *animation;
|
|
204
|
-
switch (self.animationType) {
|
|
205
|
-
case REATransitionAnimationTypeFade: {
|
|
206
|
-
CGFloat fromValue = snapshot.opacity;
|
|
207
|
-
snapshot.opacity = 0.0f;
|
|
208
|
-
animation = [CABasicAnimation animationWithKeyPath:@"opacity"];
|
|
209
|
-
animation.fromValue = @(fromValue);
|
|
210
|
-
animation.toValue = @(0.0f);
|
|
211
|
-
break;
|
|
212
|
-
}
|
|
213
|
-
case REATransitionAnimationTypeScale: {
|
|
214
|
-
CATransform3D fromValue = snapshot.transform;
|
|
215
|
-
snapshot.transform = CATransform3DMakeScale(0.001, 0.001, 0.001);
|
|
216
|
-
animation = [CABasicAnimation animationWithKeyPath:@"transform"];
|
|
217
|
-
animation.fromValue = [NSValue valueWithCATransform3D:fromValue];
|
|
218
|
-
animation.toValue = [NSValue valueWithCATransform3D:CATransform3DMakeScale(0.001, 0.001, 0.001)];
|
|
219
|
-
break;
|
|
220
|
-
}
|
|
221
|
-
case REATransitionAnimationTypeSlideTop:
|
|
222
|
-
case REATransitionAnimationTypeSlideBottom:
|
|
223
|
-
case REATransitionAnimationTypeSlideLeft:
|
|
224
|
-
case REATransitionAnimationTypeSlideRight: {
|
|
225
|
-
CGPoint startPosition = snapshot.position;
|
|
226
|
-
CGPoint finalPosition = startPosition;
|
|
227
|
-
switch (self.animationType) {
|
|
228
|
-
case REATransitionAnimationTypeSlideTop:
|
|
229
|
-
finalPosition.y -= root.frame.size.height;
|
|
230
|
-
break;
|
|
231
|
-
case REATransitionAnimationTypeSlideBottom:
|
|
232
|
-
finalPosition.y += root.frame.size.height;
|
|
233
|
-
break;
|
|
234
|
-
case REATransitionAnimationTypeSlideLeft:
|
|
235
|
-
finalPosition.x -= root.frame.size.width;
|
|
236
|
-
break;
|
|
237
|
-
case REATransitionAnimationTypeSlideRight:
|
|
238
|
-
finalPosition.x += root.frame.size.width;
|
|
239
|
-
break;
|
|
240
|
-
}
|
|
241
|
-
snapshot.position = finalPosition;
|
|
242
|
-
animation = [CABasicAnimation animationWithKeyPath:@"position"];
|
|
243
|
-
animation.fromValue = @(startPosition);
|
|
244
|
-
animation.toValue = @(finalPosition);
|
|
245
|
-
break;
|
|
246
|
-
}
|
|
247
|
-
}
|
|
248
|
-
animation.fillMode = kCAFillModeBackwards;
|
|
249
|
-
animation.delegate = [[REASnapshotRemover alloc] initWithView:snapshotView];
|
|
250
|
-
|
|
251
|
-
return [REATransitionAnimation transitionWithAnimation:animation layer:snapshot andKeyPath:animation.keyPath];
|
|
252
|
-
}
|
|
253
|
-
@end
|
|
254
|
-
|
|
255
|
-
@implementation REAChangeTransition
|
|
256
|
-
|
|
257
|
-
- (REATransitionAnimation *)animationForTransitioning:(REATransitionValues *)startValues
|
|
258
|
-
endValues:(REATransitionValues *)endValues
|
|
259
|
-
forRoot:(UIView *)root
|
|
260
|
-
{
|
|
261
|
-
if (startValues == nil || endValues == nil || endValues.view.window == nil) {
|
|
262
|
-
return nil;
|
|
263
|
-
}
|
|
264
|
-
BOOL animatePosition = !CGPointEqualToPoint(startValues.center, endValues.center);
|
|
265
|
-
BOOL animateBounds = !CGRectEqualToRect(startValues.bounds, endValues.bounds);
|
|
266
|
-
|
|
267
|
-
if (!animatePosition && !animateBounds) {
|
|
268
|
-
return nil;
|
|
269
|
-
}
|
|
270
|
-
|
|
271
|
-
CALayer *layer = endValues.view.layer;
|
|
272
|
-
|
|
273
|
-
CAAnimationGroup *group = [CAAnimationGroup animation];
|
|
274
|
-
group.fillMode = kCAFillModeBackwards;
|
|
275
|
-
|
|
276
|
-
NSMutableArray *animations = [NSMutableArray new];
|
|
277
|
-
|
|
278
|
-
if (animatePosition) {
|
|
279
|
-
CGPoint fromValue = layer.presentationLayer.position;
|
|
280
|
-
CABasicAnimation *animation = [CABasicAnimation animationWithKeyPath:@"position"];
|
|
281
|
-
animation.fromValue = [NSValue valueWithCGPoint:fromValue];
|
|
282
|
-
animation.toValue = [NSValue valueWithCGPoint:endValues.center];
|
|
283
|
-
[animations addObject:animation];
|
|
284
|
-
}
|
|
285
|
-
|
|
286
|
-
if (animateBounds) {
|
|
287
|
-
CGRect fromValue = layer.presentationLayer.bounds;
|
|
288
|
-
CABasicAnimation *animation = [CABasicAnimation animationWithKeyPath:@"bounds"];
|
|
289
|
-
animation.fromValue = [NSValue valueWithCGRect:fromValue];
|
|
290
|
-
animation.toValue = [NSValue valueWithCGRect:endValues.bounds];
|
|
291
|
-
[animations addObject:animation];
|
|
292
|
-
}
|
|
293
|
-
|
|
294
|
-
group.animations = animations;
|
|
295
|
-
return [REATransitionAnimation transitionWithAnimation:group layer:layer andKeyPath:nil];
|
|
296
|
-
}
|
|
297
|
-
@end
|