react-native-reanimated 2.8.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 +18 -0
- package/Common/cpp/Tools/Mapper.cpp +23 -4
- package/Common/cpp/Tools/RuntimeDecorator.cpp +92 -32
- 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 +178 -33
- package/android/src/main/cpp/headers/NativeProxy.h +43 -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/LayoutAnimations.java +2 -1
- package/android/src/{main → paper}/java/com/swmansion/reanimated/NativeProxy.java +15 -2
- 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/REAEventDispatcher.m +0 -1
- package/ios/REAModule.h +10 -1
- package/ios/REAModule.mm +284 -0
- package/ios/REANodesManager.h +27 -51
- package/ios/{REANodesManager.m → REANodesManager.mm} +91 -223
- package/ios/native/NativeProxy.mm +144 -17
- package/ios/native/REAInitializer.mm +12 -4
- package/ios/native/UIResponder+Reanimated.h +3 -1
- package/ios/native/UIResponder+Reanimated.mm +3 -1
- package/lib/Animated.js +0 -4
- package/lib/createAnimatedComponent.js +30 -169
- package/lib/index.js +0 -4
- package/lib/reanimated2/Easing.js +0 -42
- package/lib/reanimated2/NativeMethods.js +20 -3
- package/lib/reanimated2/UpdateProps.js +25 -10
- package/lib/reanimated2/core.js +4 -1
- package/lib/reanimated2/fabricUtils.js +18 -0
- package/lib/reanimated2/globals.d.ts +17 -1
- 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 -1
- 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 +0 -0
- 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 +7 -5
- package/plugin.js +4 -1
- package/src/Animated.js +0 -4
- package/src/createAnimatedComponent.tsx +37 -197
- package/src/reanimated2/Easing.ts +0 -53
- package/src/reanimated2/NativeMethods.ts +39 -7
- package/src/reanimated2/UpdateProps.ts +38 -19
- package/src/reanimated2/commonTypes.ts +4 -1
- package/src/reanimated2/component/FlatList.tsx +8 -5
- package/src/reanimated2/core.ts +7 -1
- package/src/reanimated2/fabricUtils.ts +27 -0
- package/src/reanimated2/globals.d.ts +17 -1
- 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/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 -103
- 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 -8
- 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 -114
- 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 -96
- 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 -27
- package/ios/Nodes/REATransformNode.h +0 -5
- package/ios/Nodes/REATransformNode.m +0 -36
- package/ios/Nodes/REAValueNode.h +0 -9
- package/ios/Nodes/REAValueNode.m +0 -26
- package/ios/REAModule.m +0 -184
- package/ios/Transitioning/RCTConvert+REATransition.h +0 -11
- package/ios/Transitioning/RCTConvert+REATransition.m +0 -53
- package/ios/Transitioning/REAAllTransitions.h +0 -26
- package/ios/Transitioning/REAAllTransitions.m +0 -296
- package/ios/Transitioning/REATransition.h +0 -64
- package/ios/Transitioning/REATransition.m +0 -210
- package/ios/Transitioning/REATransitionAnimation.h +0 -17
- package/ios/Transitioning/REATransitionAnimation.m +0 -79
- package/ios/Transitioning/REATransitionManager.h +0 -9
- package/ios/Transitioning/REATransitionManager.m +0 -60
- package/ios/Transitioning/REATransitionValues.h +0 -15
- package/ios/Transitioning/REATransitionValues.m +0 -25
- 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
|
@@ -1,8 +0,0 @@
|
|
|
1
|
-
export { default as acc } from './acc';
|
|
2
|
-
export { default as color } from './color';
|
|
3
|
-
export { default as diff } from './diff';
|
|
4
|
-
export { default as diffClamp } from './diffClamp';
|
|
5
|
-
export { default as interpolateNode, Extrapolate } from './interpolate';
|
|
6
|
-
export { default as interpolateColors } from './interpolateColors';
|
|
7
|
-
export { default as onChange } from './onChange';
|
|
8
|
-
export { default as useCode } from './useCode';
|
|
@@ -1,152 +0,0 @@
|
|
|
1
|
-
import {
|
|
2
|
-
lessThan,
|
|
3
|
-
multiply,
|
|
4
|
-
sub,
|
|
5
|
-
add,
|
|
6
|
-
divide,
|
|
7
|
-
greaterThan,
|
|
8
|
-
lessOrEq,
|
|
9
|
-
eq,
|
|
10
|
-
} from '../operators';
|
|
11
|
-
import invariant from 'invariant';
|
|
12
|
-
|
|
13
|
-
import AnimatedNode from '../core/AnimatedNode';
|
|
14
|
-
import { createAnimatedCond as cond } from '../core/AnimatedCond';
|
|
15
|
-
import { createAnimatedFunction as proc } from '../core/AnimatedFunction';
|
|
16
|
-
|
|
17
|
-
const interpolateInternalSingleProc = proc(function (
|
|
18
|
-
value,
|
|
19
|
-
inS,
|
|
20
|
-
inE,
|
|
21
|
-
outS,
|
|
22
|
-
outE
|
|
23
|
-
) {
|
|
24
|
-
const progress = divide(sub(value, inS), sub(inE, inS));
|
|
25
|
-
// logic below was made in order to provide a compatibility witn an Animated API
|
|
26
|
-
const resultForNonZeroRange = add(outS, multiply(progress, sub(outE, outS)));
|
|
27
|
-
const result = cond(
|
|
28
|
-
eq(inS, inE),
|
|
29
|
-
cond(lessOrEq(value, inS), outS, outE),
|
|
30
|
-
resultForNonZeroRange
|
|
31
|
-
);
|
|
32
|
-
return result;
|
|
33
|
-
});
|
|
34
|
-
|
|
35
|
-
function interpolateInternalSingle(value, inputRange, outputRange, offset) {
|
|
36
|
-
const inS = inputRange[offset];
|
|
37
|
-
const inE = inputRange[offset + 1];
|
|
38
|
-
const outS = outputRange[offset];
|
|
39
|
-
const outE = outputRange[offset + 1];
|
|
40
|
-
return interpolateInternalSingleProc(value, inS, inE, outS, outE);
|
|
41
|
-
}
|
|
42
|
-
|
|
43
|
-
function interpolateInternal(value, inputRange, outputRange, offset = 0) {
|
|
44
|
-
if (inputRange.length - offset === 2) {
|
|
45
|
-
return interpolateInternalSingle(value, inputRange, outputRange, offset);
|
|
46
|
-
}
|
|
47
|
-
return cond(
|
|
48
|
-
lessThan(value, inputRange[offset + 1]),
|
|
49
|
-
interpolateInternalSingle(value, inputRange, outputRange, offset),
|
|
50
|
-
interpolateInternal(value, inputRange, outputRange, offset + 1)
|
|
51
|
-
);
|
|
52
|
-
}
|
|
53
|
-
|
|
54
|
-
export const Extrapolate = {
|
|
55
|
-
EXTEND: 'extend',
|
|
56
|
-
CLAMP: 'clamp',
|
|
57
|
-
IDENTITY: 'identity',
|
|
58
|
-
};
|
|
59
|
-
|
|
60
|
-
function checkNonDecreasing(name, arr) {
|
|
61
|
-
for (let i = 1; i < arr.length; ++i) {
|
|
62
|
-
// We can't validate animated nodes in JS.
|
|
63
|
-
if (arr[i] instanceof AnimatedNode || arr[i - 1] instanceof AnimatedNode)
|
|
64
|
-
continue;
|
|
65
|
-
invariant(
|
|
66
|
-
arr[i] >= arr[i - 1],
|
|
67
|
-
'%s must be monotonically non-decreasing. (%s)',
|
|
68
|
-
name,
|
|
69
|
-
arr
|
|
70
|
-
);
|
|
71
|
-
}
|
|
72
|
-
}
|
|
73
|
-
|
|
74
|
-
function checkMinElements(name, arr) {
|
|
75
|
-
invariant(
|
|
76
|
-
arr.length >= 2,
|
|
77
|
-
'%s must have at least 2 elements. (%s)',
|
|
78
|
-
name,
|
|
79
|
-
arr
|
|
80
|
-
);
|
|
81
|
-
}
|
|
82
|
-
|
|
83
|
-
function checkValidNumbers(name, arr) {
|
|
84
|
-
for (let i = 0; i < arr.length; i++) {
|
|
85
|
-
// We can't validate animated nodes in JS.
|
|
86
|
-
if (arr[i] instanceof AnimatedNode || typeof arr[i] !== 'number') continue;
|
|
87
|
-
invariant(
|
|
88
|
-
Number.isFinite(arr[i]),
|
|
89
|
-
'%s cannot include %s. (%s)',
|
|
90
|
-
name,
|
|
91
|
-
arr[i],
|
|
92
|
-
arr
|
|
93
|
-
);
|
|
94
|
-
}
|
|
95
|
-
}
|
|
96
|
-
|
|
97
|
-
function convertToRadians(outputRange) {
|
|
98
|
-
for (const [i, value] of outputRange.entries()) {
|
|
99
|
-
if (typeof value === 'string' && value.endsWith('deg')) {
|
|
100
|
-
outputRange[i] = parseFloat(value) * (Math.PI / 180);
|
|
101
|
-
} else if (typeof value === 'string' && value.endsWith('rad')) {
|
|
102
|
-
outputRange[i] = parseFloat(value);
|
|
103
|
-
}
|
|
104
|
-
}
|
|
105
|
-
}
|
|
106
|
-
|
|
107
|
-
export default function interpolate(value, config) {
|
|
108
|
-
const {
|
|
109
|
-
inputRange,
|
|
110
|
-
outputRange,
|
|
111
|
-
extrapolate = Extrapolate.EXTEND,
|
|
112
|
-
extrapolateLeft,
|
|
113
|
-
extrapolateRight,
|
|
114
|
-
} = config;
|
|
115
|
-
|
|
116
|
-
checkMinElements('inputRange', inputRange);
|
|
117
|
-
checkValidNumbers('inputRange', inputRange);
|
|
118
|
-
checkMinElements('outputRange', outputRange);
|
|
119
|
-
checkValidNumbers('outputRange', outputRange);
|
|
120
|
-
checkNonDecreasing('inputRange', inputRange);
|
|
121
|
-
invariant(
|
|
122
|
-
inputRange.length === outputRange.length,
|
|
123
|
-
'inputRange and outputRange must be the same length.'
|
|
124
|
-
);
|
|
125
|
-
|
|
126
|
-
convertToRadians(outputRange);
|
|
127
|
-
const left = extrapolateLeft || extrapolate;
|
|
128
|
-
const right = extrapolateRight || extrapolate;
|
|
129
|
-
let output = interpolateInternal(value, inputRange, outputRange);
|
|
130
|
-
|
|
131
|
-
if (left === Extrapolate.CLAMP) {
|
|
132
|
-
output = cond(lessThan(value, inputRange[0]), outputRange[0], output);
|
|
133
|
-
} else if (left === Extrapolate.IDENTITY) {
|
|
134
|
-
output = cond(lessThan(value, inputRange[0]), value, output);
|
|
135
|
-
}
|
|
136
|
-
|
|
137
|
-
if (right === Extrapolate.CLAMP) {
|
|
138
|
-
output = cond(
|
|
139
|
-
greaterThan(value, inputRange[inputRange.length - 1]),
|
|
140
|
-
outputRange[outputRange.length - 1],
|
|
141
|
-
output
|
|
142
|
-
);
|
|
143
|
-
} else if (right === Extrapolate.IDENTITY) {
|
|
144
|
-
output = cond(
|
|
145
|
-
greaterThan(value, inputRange[inputRange.length - 1]),
|
|
146
|
-
value,
|
|
147
|
-
output
|
|
148
|
-
);
|
|
149
|
-
}
|
|
150
|
-
|
|
151
|
-
return output;
|
|
152
|
-
}
|
|
@@ -1,62 +0,0 @@
|
|
|
1
|
-
import { processColor } from 'react-native';
|
|
2
|
-
import { round } from '../base';
|
|
3
|
-
import color from './color';
|
|
4
|
-
import interpolate, { Extrapolate } from './interpolate';
|
|
5
|
-
|
|
6
|
-
function red(c) {
|
|
7
|
-
return (c >> 16) & 255;
|
|
8
|
-
}
|
|
9
|
-
function green(c) {
|
|
10
|
-
return (c >> 8) & 255;
|
|
11
|
-
}
|
|
12
|
-
function blue(c) {
|
|
13
|
-
return c & 255;
|
|
14
|
-
}
|
|
15
|
-
function opacity(c) {
|
|
16
|
-
return ((c >> 24) & 255) / 255;
|
|
17
|
-
}
|
|
18
|
-
|
|
19
|
-
/**
|
|
20
|
-
* Use this if you want to interpolate an `Animated.Value` into color values.
|
|
21
|
-
*
|
|
22
|
-
* #### Why is this needed?
|
|
23
|
-
*
|
|
24
|
-
* Unfortunately, if you'll pass color values directly into the `outputRange` option
|
|
25
|
-
* of `interpolate()` function, that won't really work (at least at the moment).
|
|
26
|
-
* See https://github.com/software-mansion/react-native-reanimated/issues/181 .
|
|
27
|
-
*
|
|
28
|
-
* So, for now you can just use this helper instead.
|
|
29
|
-
*/
|
|
30
|
-
export default function interpolateColors(animationValue, options) {
|
|
31
|
-
const { inputRange, outputColorRange } = options;
|
|
32
|
-
const colors = outputColorRange.map(processColor);
|
|
33
|
-
|
|
34
|
-
const r = round(
|
|
35
|
-
interpolate(animationValue, {
|
|
36
|
-
inputRange,
|
|
37
|
-
outputRange: colors.map(red),
|
|
38
|
-
extrapolate: Extrapolate.CLAMP,
|
|
39
|
-
})
|
|
40
|
-
);
|
|
41
|
-
const g = round(
|
|
42
|
-
interpolate(animationValue, {
|
|
43
|
-
inputRange,
|
|
44
|
-
outputRange: colors.map(green),
|
|
45
|
-
extrapolate: Extrapolate.CLAMP,
|
|
46
|
-
})
|
|
47
|
-
);
|
|
48
|
-
const b = round(
|
|
49
|
-
interpolate(animationValue, {
|
|
50
|
-
inputRange,
|
|
51
|
-
outputRange: colors.map(blue),
|
|
52
|
-
extrapolate: Extrapolate.CLAMP,
|
|
53
|
-
})
|
|
54
|
-
);
|
|
55
|
-
const a = interpolate(animationValue, {
|
|
56
|
-
inputRange,
|
|
57
|
-
outputRange: colors.map(opacity),
|
|
58
|
-
extrapolate: Extrapolate.CLAMP,
|
|
59
|
-
});
|
|
60
|
-
|
|
61
|
-
return color(r, g, b, a);
|
|
62
|
-
}
|
|
@@ -1,14 +0,0 @@
|
|
|
1
|
-
import { block, cond, defined, neq, not, set, proc } from '../base';
|
|
2
|
-
import AnimatedValue from '../core/InternalAnimatedValue';
|
|
3
|
-
|
|
4
|
-
const procOnChange = proc(function (value, action, prevValue) {
|
|
5
|
-
return block([
|
|
6
|
-
cond(not(defined(prevValue)), set(prevValue, value)),
|
|
7
|
-
cond(neq(value, prevValue), [set(prevValue, value), action]),
|
|
8
|
-
]);
|
|
9
|
-
});
|
|
10
|
-
|
|
11
|
-
export default function onChange(value, action) {
|
|
12
|
-
const prevValue = new AnimatedValue();
|
|
13
|
-
return procOnChange(value, action, prevValue);
|
|
14
|
-
}
|
|
@@ -1,41 +0,0 @@
|
|
|
1
|
-
import React from 'react';
|
|
2
|
-
import { always, block } from '../base';
|
|
3
|
-
|
|
4
|
-
/**
|
|
5
|
-
* @callback NodeFactory
|
|
6
|
-
* Function to create a node or an array of nodes.
|
|
7
|
-
* @returns {(Node[] | Node | null | undefined | Boolean)}
|
|
8
|
-
*/
|
|
9
|
-
|
|
10
|
-
/**
|
|
11
|
-
* React hook to run a node.
|
|
12
|
-
* @param {NodeFactory} nodeFactory Function to build the node to run.
|
|
13
|
-
* @param dependencies Array of dependencies. Refresh the node on changes.
|
|
14
|
-
*/
|
|
15
|
-
export default function useCode(nodeFactory, dependencies) {
|
|
16
|
-
if (!(React.useEffect instanceof Function)) return;
|
|
17
|
-
|
|
18
|
-
React.useEffect(() => {
|
|
19
|
-
// check and correct 1st parameter
|
|
20
|
-
if (!(nodeFactory instanceof Function)) {
|
|
21
|
-
console.warn(
|
|
22
|
-
'useCode() first argument should be a function that returns an animation node.'
|
|
23
|
-
);
|
|
24
|
-
|
|
25
|
-
const node = nodeFactory;
|
|
26
|
-
nodeFactory = () => node;
|
|
27
|
-
}
|
|
28
|
-
|
|
29
|
-
let node = nodeFactory();
|
|
30
|
-
if (node) {
|
|
31
|
-
// allow factory to return array
|
|
32
|
-
if (node instanceof Array) node = block(node);
|
|
33
|
-
|
|
34
|
-
const animatedAlways = always(node);
|
|
35
|
-
animatedAlways.__attach();
|
|
36
|
-
|
|
37
|
-
// return undo function
|
|
38
|
-
return () => animatedAlways.__detach();
|
|
39
|
-
}
|
|
40
|
-
}, dependencies);
|
|
41
|
-
}
|
package/lib/reanimated1/index.js
DELETED
|
@@ -1,53 +0,0 @@
|
|
|
1
|
-
import EasingNode from './Easing';
|
|
2
|
-
import AnimatedClock from './core/AnimatedClock';
|
|
3
|
-
import AnimatedValue from './core/AnimatedValue';
|
|
4
|
-
import AnimatedNode from './core/AnimatedNode';
|
|
5
|
-
import AnimatedCode from './core/AnimatedCode';
|
|
6
|
-
import decay from './animations/decay';
|
|
7
|
-
import timing from './animations/timing';
|
|
8
|
-
import spring from './animations/spring';
|
|
9
|
-
import Animation from './animations/Animation';
|
|
10
|
-
import {
|
|
11
|
-
Transition,
|
|
12
|
-
Transitioning,
|
|
13
|
-
createTransitioningComponent,
|
|
14
|
-
} from './Transitioning';
|
|
15
|
-
import SpringUtils from './animations/SpringUtils';
|
|
16
|
-
import useValue from './useValue';
|
|
17
|
-
import backwardCompatibleAnimWrapper from './animations/backwardCompatibleAnimWrapper';
|
|
18
|
-
|
|
19
|
-
const decayWrapper = backwardCompatibleAnimWrapper(
|
|
20
|
-
decay,
|
|
21
|
-
Animation.decayDefaultState
|
|
22
|
-
);
|
|
23
|
-
const timingWrapper = backwardCompatibleAnimWrapper(
|
|
24
|
-
timing,
|
|
25
|
-
Animation.timingDefaultState
|
|
26
|
-
);
|
|
27
|
-
const springWrapper = backwardCompatibleAnimWrapper(
|
|
28
|
-
spring,
|
|
29
|
-
Animation.springDefaultState
|
|
30
|
-
);
|
|
31
|
-
|
|
32
|
-
// operations
|
|
33
|
-
export * from './base';
|
|
34
|
-
export * from './derived';
|
|
35
|
-
export {
|
|
36
|
-
AnimatedCode as Code,
|
|
37
|
-
// transitions
|
|
38
|
-
EasingNode,
|
|
39
|
-
Transitioning,
|
|
40
|
-
Transition,
|
|
41
|
-
createTransitioningComponent,
|
|
42
|
-
// nodes
|
|
43
|
-
AnimatedClock as Clock,
|
|
44
|
-
AnimatedValue as Value,
|
|
45
|
-
AnimatedNode as Node,
|
|
46
|
-
// animations
|
|
47
|
-
decayWrapper as decay,
|
|
48
|
-
timingWrapper as timing,
|
|
49
|
-
springWrapper as spring,
|
|
50
|
-
SpringUtils,
|
|
51
|
-
// hooks
|
|
52
|
-
useValue,
|
|
53
|
-
};
|
|
@@ -1,35 +0,0 @@
|
|
|
1
|
-
import { createAnimatedOperator } from './core/AnimatedOperator';
|
|
2
|
-
|
|
3
|
-
const operator = createAnimatedOperator;
|
|
4
|
-
|
|
5
|
-
export const add = operator('add');
|
|
6
|
-
export const sub = operator('sub');
|
|
7
|
-
export const multiply = operator('multiply');
|
|
8
|
-
export const divide = operator('divide');
|
|
9
|
-
export const pow = operator('pow');
|
|
10
|
-
export const modulo = operator('modulo');
|
|
11
|
-
export const sqrt = operator('sqrt');
|
|
12
|
-
export const log = operator('log');
|
|
13
|
-
export const sin = operator('sin');
|
|
14
|
-
export const cos = operator('cos');
|
|
15
|
-
export const exp = operator('exp');
|
|
16
|
-
export const round = operator('round');
|
|
17
|
-
export const lessThan = operator('lessThan');
|
|
18
|
-
export const eq = operator('eq');
|
|
19
|
-
export const greaterThan = operator('greaterThan');
|
|
20
|
-
export const lessOrEq = operator('lessOrEq');
|
|
21
|
-
export const greaterOrEq = operator('greaterOrEq');
|
|
22
|
-
export const neq = operator('neq');
|
|
23
|
-
export const and = operator('and');
|
|
24
|
-
export const or = operator('or');
|
|
25
|
-
export const defined = operator('defined');
|
|
26
|
-
export const not = operator('not');
|
|
27
|
-
export const tan = operator('tan');
|
|
28
|
-
export const acos = operator('acos');
|
|
29
|
-
export const asin = operator('asin');
|
|
30
|
-
export const atan = operator('atan');
|
|
31
|
-
export const abs = operator('abs');
|
|
32
|
-
export const ceil = operator('ceil');
|
|
33
|
-
export const floor = operator('floor');
|
|
34
|
-
export const max = operator('max');
|
|
35
|
-
export const min = operator('min');
|
|
@@ -1,10 +0,0 @@
|
|
|
1
|
-
import React from 'react';
|
|
2
|
-
import AnimatedValue from './core/AnimatedValue';
|
|
3
|
-
|
|
4
|
-
export default function useValue(initialValue) {
|
|
5
|
-
const ref = React.useRef(null);
|
|
6
|
-
if (ref.current === null) {
|
|
7
|
-
ref.current = new AnimatedValue(initialValue);
|
|
8
|
-
}
|
|
9
|
-
return ref.current;
|
|
10
|
-
}
|
package/lib/reanimated1/val.js
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export {};
|
|
@@ -1,231 +0,0 @@
|
|
|
1
|
-
import {
|
|
2
|
-
cond,
|
|
3
|
-
lessThan,
|
|
4
|
-
multiply,
|
|
5
|
-
pow,
|
|
6
|
-
cos,
|
|
7
|
-
sqrt,
|
|
8
|
-
sub,
|
|
9
|
-
add,
|
|
10
|
-
divide,
|
|
11
|
-
} from './base';
|
|
12
|
-
import AnimatedBezier from './core/AnimatedBezier';
|
|
13
|
-
|
|
14
|
-
/**
|
|
15
|
-
* The `Easing` module implements common easing functions. This module is used
|
|
16
|
-
* by [Animate.timing()](docs/animate.html#timing) to convey physically
|
|
17
|
-
* believable motion in animations.
|
|
18
|
-
*
|
|
19
|
-
* You can find a visualization of some common easing functions at
|
|
20
|
-
* http://easings.net/
|
|
21
|
-
*
|
|
22
|
-
* ### Predefined animations
|
|
23
|
-
*
|
|
24
|
-
* The `Easing` module provides several predefined animations through the
|
|
25
|
-
* following methods:
|
|
26
|
-
*
|
|
27
|
-
* - [`back`](docs/easing.html#back) provides a simple animation where the
|
|
28
|
-
* object goes slightly back before moving forward
|
|
29
|
-
* - [`bounce`](docs/easing.html#bounce) provides a bouncing animation
|
|
30
|
-
* - [`ease`](docs/easing.html#ease) provides a simple inertial animation
|
|
31
|
-
* - [`elastic`](docs/easing.html#elastic) provides a simple spring interaction
|
|
32
|
-
*
|
|
33
|
-
* ### Standard functions
|
|
34
|
-
*
|
|
35
|
-
* Three standard easing functions are provided:
|
|
36
|
-
*
|
|
37
|
-
* - [`linear`](docs/easing.html#linear)
|
|
38
|
-
* - [`quad`](docs/easing.html#quad)
|
|
39
|
-
* - [`cubic`](docs/easing.html#cubic)
|
|
40
|
-
*
|
|
41
|
-
* The [`poly`](docs/easing.html#poly) function can be used to implement
|
|
42
|
-
* quartic, quintic, and other higher power functions.
|
|
43
|
-
*
|
|
44
|
-
* ### Additional functions
|
|
45
|
-
*
|
|
46
|
-
* Additional mathematical functions are provided by the following methods:
|
|
47
|
-
*
|
|
48
|
-
* - [`bezier`](docs/easing.html#bezier) provides a cubic bezier curve
|
|
49
|
-
* - [`circle`](docs/easing.html#circle) provides a circular function
|
|
50
|
-
* - [`sin`](docs/easing.html#sin) provides a sinusoidal function
|
|
51
|
-
* - [`exp`](docs/easing.html#exp) provides an exponential function
|
|
52
|
-
*
|
|
53
|
-
* The following helpers are used to modify other easing functions.
|
|
54
|
-
*
|
|
55
|
-
* - [`in`](docs/easing.html#in) runs an easing function forwards
|
|
56
|
-
* - [`inOut`](docs/easing.html#inout) makes any easing function symmetrical
|
|
57
|
-
* - [`out`](docs/easing.html#out) runs an easing function backwards
|
|
58
|
-
*/
|
|
59
|
-
export default class Easing {
|
|
60
|
-
/**
|
|
61
|
-
* A linear function, `f(t) = t`. Position correlates to elapsed time one to
|
|
62
|
-
* one.
|
|
63
|
-
*
|
|
64
|
-
* http://cubic-bezier.com/#0,0,1,1
|
|
65
|
-
*/
|
|
66
|
-
static linear(t) {
|
|
67
|
-
return t;
|
|
68
|
-
}
|
|
69
|
-
|
|
70
|
-
/**
|
|
71
|
-
* A simple inertial interaction, similar to an object slowly accelerating to
|
|
72
|
-
* speed.
|
|
73
|
-
*
|
|
74
|
-
* http://cubic-bezier.com/#.42,0,1,1
|
|
75
|
-
*/
|
|
76
|
-
static ease(t) {
|
|
77
|
-
return new AnimatedBezier(t, 0.42, 0, 1, 1);
|
|
78
|
-
}
|
|
79
|
-
|
|
80
|
-
/**
|
|
81
|
-
* A quadratic function, `f(t) = t * t`. Position equals the square of elapsed
|
|
82
|
-
* time.
|
|
83
|
-
*
|
|
84
|
-
* http://easings.net/#easeInQuad
|
|
85
|
-
*/
|
|
86
|
-
static quad(t) {
|
|
87
|
-
return multiply(t, t);
|
|
88
|
-
}
|
|
89
|
-
|
|
90
|
-
/**
|
|
91
|
-
* A cubic function, `f(t) = t * t * t`. Position equals the cube of elapsed
|
|
92
|
-
* time.
|
|
93
|
-
*
|
|
94
|
-
* http://easings.net/#easeInCubic
|
|
95
|
-
*/
|
|
96
|
-
static cubic(t) {
|
|
97
|
-
return multiply(t, t, t);
|
|
98
|
-
}
|
|
99
|
-
|
|
100
|
-
/**
|
|
101
|
-
* A power function. Position is equal to the Nth power of elapsed time.
|
|
102
|
-
*
|
|
103
|
-
* n = 4: http://easings.net/#easeInQuart
|
|
104
|
-
* n = 5: http://easings.net/#easeInQuint
|
|
105
|
-
*/
|
|
106
|
-
static poly(n) {
|
|
107
|
-
return (t) => pow(t, n);
|
|
108
|
-
}
|
|
109
|
-
|
|
110
|
-
/**
|
|
111
|
-
* A sinusoidal function.
|
|
112
|
-
*
|
|
113
|
-
* http://easings.net/#easeInSine
|
|
114
|
-
*/
|
|
115
|
-
static sin(t) {
|
|
116
|
-
return sub(1, cos(multiply(t, Math.PI, 0.5)));
|
|
117
|
-
}
|
|
118
|
-
|
|
119
|
-
/**
|
|
120
|
-
* A circular function.
|
|
121
|
-
*
|
|
122
|
-
* http://easings.net/#easeInCirc
|
|
123
|
-
*/
|
|
124
|
-
static circle(t) {
|
|
125
|
-
return sub(1, sqrt(sub(1, multiply(t, t))));
|
|
126
|
-
}
|
|
127
|
-
|
|
128
|
-
/**
|
|
129
|
-
* An exponential function.
|
|
130
|
-
*
|
|
131
|
-
* http://easings.net/#easeInExpo
|
|
132
|
-
*/
|
|
133
|
-
static exp(t) {
|
|
134
|
-
return pow(2, multiply(10, sub(t, 1)));
|
|
135
|
-
}
|
|
136
|
-
|
|
137
|
-
/**
|
|
138
|
-
* A simple elastic interaction, similar to a spring oscillating back and
|
|
139
|
-
* forth.
|
|
140
|
-
*
|
|
141
|
-
* Default bounciness is 1, which overshoots a little bit once. 0 bounciness
|
|
142
|
-
* doesn't overshoot at all, and bounciness of N > 1 will overshoot about N
|
|
143
|
-
* times.
|
|
144
|
-
*
|
|
145
|
-
* http://easings.net/#easeInElastic
|
|
146
|
-
*/
|
|
147
|
-
static elastic(bounciness = 1) {
|
|
148
|
-
const p = bounciness * Math.PI;
|
|
149
|
-
return (t) =>
|
|
150
|
-
sub(
|
|
151
|
-
1,
|
|
152
|
-
multiply(pow(cos(multiply(t, Math.PI, 0.5)), 3), cos(multiply(t, p)))
|
|
153
|
-
);
|
|
154
|
-
}
|
|
155
|
-
|
|
156
|
-
/**
|
|
157
|
-
* Use with `Animated.parallel()` to create a simple effect where the object
|
|
158
|
-
* animates back slightly as the animation starts.
|
|
159
|
-
*
|
|
160
|
-
* Wolfram Plot:
|
|
161
|
-
*
|
|
162
|
-
* - http://tiny.cc/back_default (s = 1.70158, default)
|
|
163
|
-
*/
|
|
164
|
-
static back(s) {
|
|
165
|
-
if (s === undefined) {
|
|
166
|
-
s = 1.70158;
|
|
167
|
-
}
|
|
168
|
-
return (t) => multiply(t, t, sub(multiply(add(s, 1), t), s));
|
|
169
|
-
}
|
|
170
|
-
|
|
171
|
-
/**
|
|
172
|
-
* Provides a simple bouncing effect.
|
|
173
|
-
*
|
|
174
|
-
* http://easings.net/#easeInBounce
|
|
175
|
-
*/
|
|
176
|
-
static bounce(t) {
|
|
177
|
-
const sq = (v) => multiply(7.5625, v, v);
|
|
178
|
-
return cond(
|
|
179
|
-
lessThan(t, 1 / 2.75),
|
|
180
|
-
sq(t),
|
|
181
|
-
cond(
|
|
182
|
-
lessThan(t, 2 / 2.75),
|
|
183
|
-
add(0.75, sq(sub(t, 1.5 / 2.75))),
|
|
184
|
-
cond(
|
|
185
|
-
lessThan(t, 2.5 / 2.76),
|
|
186
|
-
add(0.9375, sq(sub(t, 2.25 / 2.75))),
|
|
187
|
-
add(0.984375, sq(sub(t, 2.625 / 2.75)))
|
|
188
|
-
)
|
|
189
|
-
)
|
|
190
|
-
);
|
|
191
|
-
}
|
|
192
|
-
|
|
193
|
-
/**
|
|
194
|
-
* Provides a cubic bezier curve, equivalent to CSS Transitions'
|
|
195
|
-
* `transition-timing-function`.
|
|
196
|
-
*
|
|
197
|
-
* A useful tool to visualize cubic bezier curves can be found at
|
|
198
|
-
* http://cubic-bezier.com/
|
|
199
|
-
*/
|
|
200
|
-
static bezier(x1, y1, x2, y2) {
|
|
201
|
-
return (t) => new AnimatedBezier(t, x1, y1, x2, y2);
|
|
202
|
-
}
|
|
203
|
-
|
|
204
|
-
/**
|
|
205
|
-
* Runs an easing function forwards.
|
|
206
|
-
*/
|
|
207
|
-
static in(easing) {
|
|
208
|
-
return easing;
|
|
209
|
-
}
|
|
210
|
-
|
|
211
|
-
/**
|
|
212
|
-
* Runs an easing function backwards.
|
|
213
|
-
*/
|
|
214
|
-
static out(easing) {
|
|
215
|
-
return (t) => sub(1, easing(sub(1, t)));
|
|
216
|
-
}
|
|
217
|
-
|
|
218
|
-
/**
|
|
219
|
-
* Makes any easing function symmetrical. The easing function will run
|
|
220
|
-
* forwards for half of the duration, then backwards for the rest of the
|
|
221
|
-
* duration.
|
|
222
|
-
*/
|
|
223
|
-
static inOut(easing) {
|
|
224
|
-
return (t) =>
|
|
225
|
-
cond(
|
|
226
|
-
lessThan(t, 0.5),
|
|
227
|
-
divide(easing(multiply(t, 2)), 2),
|
|
228
|
-
sub(1, divide(easing(multiply(sub(1, t), 2)), 2))
|
|
229
|
-
);
|
|
230
|
-
}
|
|
231
|
-
}
|
|
@@ -1,79 +0,0 @@
|
|
|
1
|
-
function stiffnessFromOrigamiValue(oValue) {
|
|
2
|
-
return (oValue - 30) * 3.62 + 194;
|
|
3
|
-
}
|
|
4
|
-
|
|
5
|
-
function dampingFromOrigamiValue(oValue) {
|
|
6
|
-
return (oValue - 8) * 3 + 25;
|
|
7
|
-
}
|
|
8
|
-
|
|
9
|
-
function fromOrigamiTensionAndFriction(tension, friction) {
|
|
10
|
-
return {
|
|
11
|
-
stiffness: stiffnessFromOrigamiValue(tension),
|
|
12
|
-
damping: dampingFromOrigamiValue(friction),
|
|
13
|
-
};
|
|
14
|
-
}
|
|
15
|
-
|
|
16
|
-
function fromBouncinessAndSpeed(bounciness, speed) {
|
|
17
|
-
function normalize(value, startValue, endValue) {
|
|
18
|
-
return (value - startValue) / (endValue - startValue);
|
|
19
|
-
}
|
|
20
|
-
|
|
21
|
-
function projectNormal(n, start, end) {
|
|
22
|
-
return start + n * (end - start);
|
|
23
|
-
}
|
|
24
|
-
|
|
25
|
-
function linearInterpolation(t, start, end) {
|
|
26
|
-
return t * end + (1 - t) * start;
|
|
27
|
-
}
|
|
28
|
-
|
|
29
|
-
function quadraticOutInterpolation(t, start, end) {
|
|
30
|
-
return linearInterpolation(2 * t - t * t, start, end);
|
|
31
|
-
}
|
|
32
|
-
|
|
33
|
-
function b3Friction1(x) {
|
|
34
|
-
return 0.0007 * Math.pow(x, 3) - 0.031 * Math.pow(x, 2) + 0.64 * x + 1.28;
|
|
35
|
-
}
|
|
36
|
-
|
|
37
|
-
function b3Friction2(x) {
|
|
38
|
-
return 0.000044 * Math.pow(x, 3) - 0.006 * Math.pow(x, 2) + 0.36 * x + 2;
|
|
39
|
-
}
|
|
40
|
-
|
|
41
|
-
function b3Friction3(x) {
|
|
42
|
-
return (
|
|
43
|
-
0.00000045 * Math.pow(x, 3) -
|
|
44
|
-
0.000332 * Math.pow(x, 2) +
|
|
45
|
-
0.1078 * x +
|
|
46
|
-
5.84
|
|
47
|
-
);
|
|
48
|
-
}
|
|
49
|
-
|
|
50
|
-
function b3Nobounce(tension) {
|
|
51
|
-
if (tension <= 18) {
|
|
52
|
-
return b3Friction1(tension);
|
|
53
|
-
} else if (tension > 18 && tension <= 44) {
|
|
54
|
-
return b3Friction2(tension);
|
|
55
|
-
} else {
|
|
56
|
-
return b3Friction3(tension);
|
|
57
|
-
}
|
|
58
|
-
}
|
|
59
|
-
|
|
60
|
-
var b = normalize(bounciness / 1.7, 0, 20);
|
|
61
|
-
b = projectNormal(b, 0, 0.8);
|
|
62
|
-
var s = normalize(speed / 1.7, 0, 20);
|
|
63
|
-
var bouncyTension = projectNormal(s, 0.5, 200);
|
|
64
|
-
var bouncyFriction = quadraticOutInterpolation(
|
|
65
|
-
b,
|
|
66
|
-
b3Nobounce(bouncyTension),
|
|
67
|
-
0.01
|
|
68
|
-
);
|
|
69
|
-
|
|
70
|
-
return {
|
|
71
|
-
stiffness: stiffnessFromOrigamiValue(bouncyTension),
|
|
72
|
-
damping: dampingFromOrigamiValue(bouncyFriction),
|
|
73
|
-
};
|
|
74
|
-
}
|
|
75
|
-
|
|
76
|
-
module.exports = {
|
|
77
|
-
fromOrigamiTensionAndFriction,
|
|
78
|
-
fromBouncinessAndSpeed,
|
|
79
|
-
};
|