@react-navigation/stack 7.0.0-rc.8 → 7.0.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/lib/commonjs/TransitionConfigs/{CardStyleInterpolators.cjs → CardStyleInterpolators.js} +2 -2
- package/lib/commonjs/TransitionConfigs/{HeaderStyleInterpolators.cjs → HeaderStyleInterpolators.js} +4 -5
- package/lib/commonjs/TransitionConfigs/HeaderStyleInterpolators.js.map +1 -0
- package/lib/commonjs/TransitionConfigs/{TransitionPresets.cjs → TransitionPresets.js} +4 -4
- package/lib/commonjs/TransitionConfigs/{TransitionSpecs.cjs → TransitionSpecs.js} +1 -1
- package/lib/commonjs/{index.cjs → index.js} +12 -12
- package/lib/commonjs/navigators/{createStackNavigator.cjs → createStackNavigator.js} +2 -2
- package/lib/commonjs/package.json +1 -0
- package/lib/commonjs/{types.cjs → types.js} +1 -1
- package/lib/commonjs/utils/{CardAnimationContext.cjs → CardAnimationContext.js} +1 -1
- package/lib/commonjs/utils/{GestureHandlerRefContext.cjs → GestureHandlerRefContext.js} +1 -1
- package/lib/commonjs/utils/{ModalPresentationContext.cjs → ModalPresentationContext.js} +1 -1
- package/lib/commonjs/utils/{conditional.cjs → conditional.js} +1 -1
- package/lib/commonjs/utils/{findLastIndex.cjs → findLastIndex.js} +1 -1
- package/lib/commonjs/utils/{getDistanceForDirection.cjs → getDistanceForDirection.js} +2 -2
- package/lib/commonjs/utils/{getInvertedMultiplier.cjs → getInvertedMultiplier.js} +1 -1
- package/lib/commonjs/utils/{getModalRoutesKeys.cjs → getModalRoutesKeys.js} +1 -1
- package/lib/commonjs/utils/{memoize.cjs → memoize.js} +1 -1
- package/lib/commonjs/utils/{throttle.cjs → throttle.js} +1 -1
- package/lib/commonjs/utils/{throttle.cjs.map → throttle.js.map} +1 -1
- package/lib/commonjs/utils/{useCardAnimation.cjs → useCardAnimation.js} +2 -2
- package/lib/commonjs/utils/{useGestureHandlerRef.cjs → useGestureHandlerRef.js} +2 -2
- package/lib/commonjs/utils/{useKeyboardManager.cjs → useKeyboardManager.js} +1 -1
- package/lib/commonjs/views/{GestureHandler.android.cjs → GestureHandler.android.js} +2 -2
- package/lib/commonjs/views/{GestureHandler.ios.cjs → GestureHandler.ios.js} +2 -2
- package/lib/commonjs/views/{GestureHandler.cjs → GestureHandler.js} +1 -1
- package/lib/commonjs/views/{GestureHandlerNative.cjs → GestureHandlerNative.js} +2 -2
- package/lib/commonjs/views/Header/{Header.cjs → Header.js} +4 -4
- package/lib/commonjs/views/Header/{HeaderContainer.cjs → HeaderContainer.js} +3 -3
- package/lib/commonjs/views/Header/{HeaderSegment.cjs → HeaderSegment.js} +6 -6
- package/lib/commonjs/views/Header/HeaderSegment.js.map +1 -0
- package/lib/commonjs/views/{Screens.cjs → Screens.js} +1 -1
- package/lib/commonjs/views/Stack/Card.js +512 -0
- package/lib/commonjs/views/Stack/Card.js.map +1 -0
- package/lib/commonjs/views/Stack/{CardContainer.cjs → CardContainer.js} +29 -20
- package/lib/commonjs/views/Stack/CardContainer.js.map +1 -0
- package/lib/commonjs/views/Stack/{CardSheet.cjs → CardSheet.js} +14 -11
- package/lib/commonjs/views/Stack/CardSheet.js.map +1 -0
- package/lib/commonjs/views/Stack/CardStack.js +501 -0
- package/lib/commonjs/views/Stack/CardStack.js.map +1 -0
- package/lib/commonjs/views/Stack/StackView.js +372 -0
- package/lib/commonjs/views/Stack/StackView.js.map +1 -0
- package/lib/module/TransitionConfigs/{CardStyleInterpolators.mjs → CardStyleInterpolators.js} +4 -2
- package/lib/module/TransitionConfigs/CardStyleInterpolators.js.map +1 -0
- package/lib/module/TransitionConfigs/{HeaderStyleInterpolators.mjs → HeaderStyleInterpolators.js} +6 -5
- package/lib/module/TransitionConfigs/HeaderStyleInterpolators.js.map +1 -0
- package/lib/module/TransitionConfigs/{TransitionPresets.mjs → TransitionPresets.js} +6 -4
- package/lib/module/TransitionConfigs/TransitionPresets.js.map +1 -0
- package/lib/module/TransitionConfigs/{TransitionSpecs.mjs → TransitionSpecs.js} +3 -1
- package/lib/module/TransitionConfigs/TransitionSpecs.js.map +1 -0
- package/lib/module/{index.mjs → index.js} +14 -12
- package/lib/module/index.js.map +1 -0
- package/lib/module/navigators/{createStackNavigator.mjs → createStackNavigator.js} +4 -2
- package/lib/module/navigators/createStackNavigator.js.map +1 -0
- package/lib/module/package.json +1 -0
- package/lib/module/types.js +4 -0
- package/lib/module/utils/{CardAnimationContext.mjs → CardAnimationContext.js} +3 -1
- package/lib/module/utils/CardAnimationContext.js.map +1 -0
- package/lib/module/utils/{GestureHandlerRefContext.mjs → GestureHandlerRefContext.js} +3 -1
- package/lib/module/utils/GestureHandlerRefContext.js.map +1 -0
- package/lib/module/utils/{ModalPresentationContext.mjs → ModalPresentationContext.js} +3 -1
- package/lib/module/utils/ModalPresentationContext.js.map +1 -0
- package/lib/module/utils/{conditional.mjs → conditional.js} +3 -1
- package/lib/module/utils/conditional.js.map +1 -0
- package/lib/module/utils/{findLastIndex.mjs → findLastIndex.js} +3 -1
- package/lib/module/utils/findLastIndex.js.map +1 -0
- package/lib/module/utils/{getDistanceForDirection.mjs → getDistanceForDirection.js} +4 -2
- package/lib/module/utils/getDistanceForDirection.js.map +1 -0
- package/lib/module/utils/{getInvertedMultiplier.mjs → getInvertedMultiplier.js} +3 -1
- package/lib/module/utils/getInvertedMultiplier.js.map +1 -0
- package/lib/module/utils/{getModalRoutesKeys.mjs → getModalRoutesKeys.js} +3 -1
- package/lib/module/utils/getModalRoutesKeys.js.map +1 -0
- package/lib/module/utils/{memoize.mjs → memoize.js} +3 -1
- package/lib/module/utils/memoize.js.map +1 -0
- package/lib/module/utils/{throttle.mjs → throttle.js} +3 -1
- package/lib/module/utils/throttle.js.map +1 -0
- package/lib/module/utils/{useCardAnimation.mjs → useCardAnimation.js} +4 -2
- package/lib/module/utils/useCardAnimation.js.map +1 -0
- package/lib/module/utils/{useGestureHandlerRef.mjs → useGestureHandlerRef.js} +4 -2
- package/lib/module/utils/useGestureHandlerRef.js.map +1 -0
- package/lib/module/utils/{useKeyboardManager.mjs → useKeyboardManager.js} +3 -1
- package/lib/module/utils/useKeyboardManager.js.map +1 -0
- package/lib/module/views/GestureHandler.android.js +4 -0
- package/lib/module/views/GestureHandler.android.js.map +1 -0
- package/lib/module/views/GestureHandler.ios.js +4 -0
- package/lib/module/views/GestureHandler.ios.js.map +1 -0
- package/lib/module/views/{GestureHandler.mjs → GestureHandler.js} +3 -1
- package/lib/module/views/GestureHandler.js.map +1 -0
- package/lib/module/views/{GestureHandlerNative.mjs → GestureHandlerNative.js} +4 -2
- package/lib/module/views/GestureHandlerNative.js.map +1 -0
- package/lib/module/views/Header/{Header.mjs → Header.js} +6 -4
- package/lib/module/views/Header/Header.js.map +1 -0
- package/lib/module/views/Header/{HeaderContainer.mjs → HeaderContainer.js} +5 -3
- package/lib/module/views/Header/HeaderContainer.js.map +1 -0
- package/lib/module/views/Header/{HeaderSegment.mjs → HeaderSegment.js} +8 -6
- package/lib/module/views/Header/HeaderSegment.js.map +1 -0
- package/lib/module/views/{Screens.mjs → Screens.js} +3 -1
- package/lib/module/views/Screens.js.map +1 -0
- package/lib/module/views/Stack/Card.js +505 -0
- package/lib/module/views/Stack/Card.js.map +1 -0
- package/lib/module/views/Stack/{CardContainer.mjs → CardContainer.js} +31 -20
- package/lib/module/views/Stack/CardContainer.js.map +1 -0
- package/lib/module/views/Stack/{CardSheet.mjs → CardSheet.js} +16 -11
- package/lib/module/views/Stack/CardSheet.js.map +1 -0
- package/lib/module/views/Stack/CardStack.js +495 -0
- package/lib/module/views/Stack/CardStack.js.map +1 -0
- package/lib/module/views/Stack/StackView.js +366 -0
- package/lib/module/views/Stack/StackView.js.map +1 -0
- package/lib/typescript/commonjs/package.json +1 -0
- package/lib/typescript/commonjs/src/TransitionConfigs/CardStyleInterpolators.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/TransitionConfigs/HeaderStyleInterpolators.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/TransitionConfigs/TransitionPresets.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/TransitionConfigs/TransitionSpecs.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/index.d.ts.map +1 -0
- package/lib/typescript/{src → commonjs/src}/navigators/createStackNavigator.d.ts +2 -2
- package/lib/typescript/commonjs/src/navigators/createStackNavigator.d.ts.map +1 -0
- package/lib/typescript/{src → commonjs/src}/types.d.ts +17 -13
- package/lib/typescript/commonjs/src/types.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/utils/CardAnimationContext.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/utils/GestureHandlerRefContext.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/utils/ModalPresentationContext.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/utils/conditional.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/utils/findLastIndex.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/utils/getDistanceForDirection.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/utils/getInvertedMultiplier.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/utils/getModalRoutesKeys.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/utils/memoize.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/utils/throttle.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/utils/useCardAnimation.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/utils/useGestureHandlerRef.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/utils/useKeyboardManager.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/views/GestureHandler.android.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/views/GestureHandler.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/views/GestureHandler.ios.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/views/GestureHandlerNative.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/views/Header/Header.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/views/Header/HeaderContainer.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/views/Header/HeaderSegment.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/views/Screens.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/views/Stack/Card.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/views/Stack/CardContainer.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/views/Stack/CardSheet.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/views/Stack/CardStack.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/views/Stack/StackView.d.ts.map +1 -0
- package/lib/typescript/commonjs/tsconfig.build.tsbuildinfo +1 -0
- package/lib/typescript/module/package.json +1 -0
- package/lib/typescript/module/src/TransitionConfigs/CardStyleInterpolators.d.ts +43 -0
- package/lib/typescript/module/src/TransitionConfigs/CardStyleInterpolators.d.ts.map +1 -0
- package/lib/typescript/module/src/TransitionConfigs/HeaderStyleInterpolators.d.ts +23 -0
- package/lib/typescript/module/src/TransitionConfigs/HeaderStyleInterpolators.d.ts.map +1 -0
- package/lib/typescript/module/src/TransitionConfigs/TransitionPresets.d.ts +50 -0
- package/lib/typescript/module/src/TransitionConfigs/TransitionPresets.d.ts.map +1 -0
- package/lib/typescript/module/src/TransitionConfigs/TransitionSpecs.d.ts +46 -0
- package/lib/typescript/module/src/TransitionConfigs/TransitionSpecs.d.ts.map +1 -0
- package/lib/typescript/module/src/index.d.ts +29 -0
- package/lib/typescript/module/src/index.d.ts.map +1 -0
- package/lib/typescript/module/src/navigators/createStackNavigator.d.ts +17 -0
- package/lib/typescript/module/src/navigators/createStackNavigator.d.ts.map +1 -0
- package/lib/typescript/module/src/types.d.ts +540 -0
- package/lib/typescript/module/src/types.d.ts.map +1 -0
- package/lib/typescript/module/src/utils/CardAnimationContext.d.ts +4 -0
- package/lib/typescript/module/src/utils/CardAnimationContext.d.ts.map +1 -0
- package/lib/typescript/module/src/utils/GestureHandlerRefContext.d.ts +3 -0
- package/lib/typescript/module/src/utils/GestureHandlerRefContext.d.ts.map +1 -0
- package/lib/typescript/module/src/utils/ModalPresentationContext.d.ts +3 -0
- package/lib/typescript/module/src/utils/ModalPresentationContext.d.ts.map +1 -0
- package/lib/typescript/module/src/utils/conditional.d.ts +10 -0
- package/lib/typescript/module/src/utils/conditional.d.ts.map +1 -0
- package/lib/typescript/module/src/utils/findLastIndex.d.ts +2 -0
- package/lib/typescript/module/src/utils/findLastIndex.d.ts.map +1 -0
- package/lib/typescript/module/src/utils/getDistanceForDirection.d.ts +3 -0
- package/lib/typescript/module/src/utils/getDistanceForDirection.d.ts.map +1 -0
- package/lib/typescript/module/src/utils/getInvertedMultiplier.d.ts +3 -0
- package/lib/typescript/module/src/utils/getInvertedMultiplier.d.ts.map +1 -0
- package/lib/typescript/module/src/utils/getModalRoutesKeys.d.ts +4 -0
- package/lib/typescript/module/src/utils/getModalRoutesKeys.d.ts.map +1 -0
- package/lib/typescript/module/src/utils/memoize.d.ts +2 -0
- package/lib/typescript/module/src/utils/memoize.d.ts.map +1 -0
- package/lib/typescript/module/src/utils/throttle.d.ts +2 -0
- package/lib/typescript/module/src/utils/throttle.d.ts.map +1 -0
- package/lib/typescript/module/src/utils/useCardAnimation.d.ts +2 -0
- package/lib/typescript/module/src/utils/useCardAnimation.d.ts.map +1 -0
- package/lib/typescript/module/src/utils/useGestureHandlerRef.d.ts +3 -0
- package/lib/typescript/module/src/utils/useGestureHandlerRef.d.ts.map +1 -0
- package/lib/typescript/module/src/utils/useKeyboardManager.d.ts +6 -0
- package/lib/typescript/module/src/utils/useKeyboardManager.d.ts.map +1 -0
- package/lib/typescript/module/src/views/GestureHandler.android.d.ts +2 -0
- package/lib/typescript/module/src/views/GestureHandler.android.d.ts.map +1 -0
- package/lib/typescript/module/src/views/GestureHandler.d.ts +15 -0
- package/lib/typescript/module/src/views/GestureHandler.d.ts.map +1 -0
- package/lib/typescript/module/src/views/GestureHandler.ios.d.ts +2 -0
- package/lib/typescript/module/src/views/GestureHandler.ios.d.ts.map +1 -0
- package/lib/typescript/module/src/views/GestureHandlerNative.d.ts +5 -0
- package/lib/typescript/module/src/views/GestureHandlerNative.d.ts.map +1 -0
- package/lib/typescript/module/src/views/Header/Header.d.ts +4 -0
- package/lib/typescript/module/src/views/Header/Header.d.ts.map +1 -0
- package/lib/typescript/module/src/views/Header/HeaderContainer.d.ts +19 -0
- package/lib/typescript/module/src/views/Header/HeaderContainer.d.ts.map +1 -0
- package/lib/typescript/module/src/views/Header/HeaderSegment.d.ts +14 -0
- package/lib/typescript/module/src/views/Header/HeaderSegment.d.ts.map +1 -0
- package/lib/typescript/module/src/views/Screens.d.ts +14 -0
- package/lib/typescript/module/src/views/Screens.d.ts.map +1 -0
- package/lib/typescript/module/src/views/Stack/Card.d.ts +77 -0
- package/lib/typescript/module/src/views/Stack/Card.d.ts.map +1 -0
- package/lib/typescript/module/src/views/Stack/CardContainer.d.ts +60 -0
- package/lib/typescript/module/src/views/Stack/CardContainer.d.ts.map +1 -0
- package/lib/typescript/module/src/views/Stack/CardSheet.d.ts +14 -0
- package/lib/typescript/module/src/views/Stack/CardSheet.d.ts.map +1 -0
- package/lib/typescript/module/src/views/Stack/CardStack.d.ts +66 -0
- package/lib/typescript/module/src/views/Stack/CardStack.d.ts.map +1 -0
- package/lib/typescript/module/src/views/Stack/StackView.d.ts +51 -0
- package/lib/typescript/module/src/views/Stack/StackView.d.ts.map +1 -0
- package/lib/typescript/module/tsconfig.build.tsbuildinfo +1 -0
- package/package.json +36 -19
- package/src/TransitionConfigs/HeaderStyleInterpolators.tsx +3 -6
- package/src/navigators/createStackNavigator.tsx +4 -4
- package/src/types.tsx +17 -12
- package/src/utils/throttle.tsx +1 -1
- package/src/views/Header/HeaderSegment.tsx +4 -4
- package/src/views/Stack/CardContainer.tsx +30 -16
- package/src/views/Stack/CardSheet.tsx +19 -13
- package/src/views/Stack/CardStack.tsx +0 -3
- package/lib/commonjs/TransitionConfigs/HeaderStyleInterpolators.cjs.map +0 -1
- package/lib/commonjs/views/Header/HeaderSegment.cjs.map +0 -1
- package/lib/commonjs/views/Stack/Card.cjs +0 -481
- package/lib/commonjs/views/Stack/Card.cjs.map +0 -1
- package/lib/commonjs/views/Stack/CardContainer.cjs.map +0 -1
- package/lib/commonjs/views/Stack/CardSheet.cjs.map +0 -1
- package/lib/commonjs/views/Stack/CardStack.cjs +0 -480
- package/lib/commonjs/views/Stack/CardStack.cjs.map +0 -1
- package/lib/commonjs/views/Stack/StackView.cjs +0 -348
- package/lib/commonjs/views/Stack/StackView.cjs.map +0 -1
- package/lib/module/TransitionConfigs/CardStyleInterpolators.mjs.map +0 -1
- package/lib/module/TransitionConfigs/HeaderStyleInterpolators.mjs.map +0 -1
- package/lib/module/TransitionConfigs/TransitionPresets.mjs.map +0 -1
- package/lib/module/TransitionConfigs/TransitionSpecs.mjs.map +0 -1
- package/lib/module/index.mjs.map +0 -1
- package/lib/module/navigators/createStackNavigator.mjs.map +0 -1
- package/lib/module/types.mjs +0 -2
- package/lib/module/utils/CardAnimationContext.mjs.map +0 -1
- package/lib/module/utils/GestureHandlerRefContext.mjs.map +0 -1
- package/lib/module/utils/ModalPresentationContext.mjs.map +0 -1
- package/lib/module/utils/conditional.mjs.map +0 -1
- package/lib/module/utils/findLastIndex.mjs.map +0 -1
- package/lib/module/utils/getDistanceForDirection.mjs.map +0 -1
- package/lib/module/utils/getInvertedMultiplier.mjs.map +0 -1
- package/lib/module/utils/getModalRoutesKeys.mjs.map +0 -1
- package/lib/module/utils/memoize.mjs.map +0 -1
- package/lib/module/utils/throttle.mjs.map +0 -1
- package/lib/module/utils/useCardAnimation.mjs.map +0 -1
- package/lib/module/utils/useGestureHandlerRef.mjs.map +0 -1
- package/lib/module/utils/useKeyboardManager.mjs.map +0 -1
- package/lib/module/views/GestureHandler.android.mjs +0 -2
- package/lib/module/views/GestureHandler.android.mjs.map +0 -1
- package/lib/module/views/GestureHandler.ios.mjs +0 -2
- package/lib/module/views/GestureHandler.ios.mjs.map +0 -1
- package/lib/module/views/GestureHandler.mjs.map +0 -1
- package/lib/module/views/GestureHandlerNative.mjs.map +0 -1
- package/lib/module/views/Header/Header.mjs.map +0 -1
- package/lib/module/views/Header/HeaderContainer.mjs.map +0 -1
- package/lib/module/views/Header/HeaderSegment.mjs.map +0 -1
- package/lib/module/views/Screens.mjs.map +0 -1
- package/lib/module/views/Stack/Card.mjs +0 -471
- package/lib/module/views/Stack/Card.mjs.map +0 -1
- package/lib/module/views/Stack/CardContainer.mjs.map +0 -1
- package/lib/module/views/Stack/CardSheet.mjs.map +0 -1
- package/lib/module/views/Stack/CardStack.mjs +0 -471
- package/lib/module/views/Stack/CardStack.mjs.map +0 -1
- package/lib/module/views/Stack/StackView.mjs +0 -339
- package/lib/module/views/Stack/StackView.mjs.map +0 -1
- package/lib/typescript/src/TransitionConfigs/CardStyleInterpolators.d.ts.map +0 -1
- package/lib/typescript/src/TransitionConfigs/HeaderStyleInterpolators.d.ts.map +0 -1
- package/lib/typescript/src/TransitionConfigs/TransitionPresets.d.ts.map +0 -1
- package/lib/typescript/src/TransitionConfigs/TransitionSpecs.d.ts.map +0 -1
- package/lib/typescript/src/index.d.ts.map +0 -1
- package/lib/typescript/src/navigators/createStackNavigator.d.ts.map +0 -1
- package/lib/typescript/src/types.d.ts.map +0 -1
- package/lib/typescript/src/utils/CardAnimationContext.d.ts.map +0 -1
- package/lib/typescript/src/utils/GestureHandlerRefContext.d.ts.map +0 -1
- package/lib/typescript/src/utils/ModalPresentationContext.d.ts.map +0 -1
- package/lib/typescript/src/utils/conditional.d.ts.map +0 -1
- package/lib/typescript/src/utils/findLastIndex.d.ts.map +0 -1
- package/lib/typescript/src/utils/getDistanceForDirection.d.ts.map +0 -1
- package/lib/typescript/src/utils/getInvertedMultiplier.d.ts.map +0 -1
- package/lib/typescript/src/utils/getModalRoutesKeys.d.ts.map +0 -1
- package/lib/typescript/src/utils/memoize.d.ts.map +0 -1
- package/lib/typescript/src/utils/throttle.d.ts.map +0 -1
- package/lib/typescript/src/utils/useCardAnimation.d.ts.map +0 -1
- package/lib/typescript/src/utils/useGestureHandlerRef.d.ts.map +0 -1
- package/lib/typescript/src/utils/useKeyboardManager.d.ts.map +0 -1
- package/lib/typescript/src/views/GestureHandler.android.d.ts.map +0 -1
- package/lib/typescript/src/views/GestureHandler.d.ts.map +0 -1
- package/lib/typescript/src/views/GestureHandler.ios.d.ts.map +0 -1
- package/lib/typescript/src/views/GestureHandlerNative.d.ts.map +0 -1
- package/lib/typescript/src/views/Header/Header.d.ts.map +0 -1
- package/lib/typescript/src/views/Header/HeaderContainer.d.ts.map +0 -1
- package/lib/typescript/src/views/Header/HeaderSegment.d.ts.map +0 -1
- package/lib/typescript/src/views/Screens.d.ts.map +0 -1
- package/lib/typescript/src/views/Stack/Card.d.ts.map +0 -1
- package/lib/typescript/src/views/Stack/CardContainer.d.ts.map +0 -1
- package/lib/typescript/src/views/Stack/CardSheet.d.ts.map +0 -1
- package/lib/typescript/src/views/Stack/CardStack.d.ts.map +0 -1
- package/lib/typescript/src/views/Stack/StackView.d.ts.map +0 -1
- /package/lib/commonjs/TransitionConfigs/{CardStyleInterpolators.cjs.map → CardStyleInterpolators.js.map} +0 -0
- /package/lib/commonjs/TransitionConfigs/{TransitionPresets.cjs.map → TransitionPresets.js.map} +0 -0
- /package/lib/commonjs/TransitionConfigs/{TransitionSpecs.cjs.map → TransitionSpecs.js.map} +0 -0
- /package/lib/commonjs/{index.cjs.map → index.js.map} +0 -0
- /package/lib/commonjs/navigators/{createStackNavigator.cjs.map → createStackNavigator.js.map} +0 -0
- /package/lib/commonjs/{types.cjs.map → types.js.map} +0 -0
- /package/lib/commonjs/utils/{CardAnimationContext.cjs.map → CardAnimationContext.js.map} +0 -0
- /package/lib/commonjs/utils/{GestureHandlerRefContext.cjs.map → GestureHandlerRefContext.js.map} +0 -0
- /package/lib/commonjs/utils/{ModalPresentationContext.cjs.map → ModalPresentationContext.js.map} +0 -0
- /package/lib/commonjs/utils/{conditional.cjs.map → conditional.js.map} +0 -0
- /package/lib/commonjs/utils/{findLastIndex.cjs.map → findLastIndex.js.map} +0 -0
- /package/lib/commonjs/utils/{getDistanceForDirection.cjs.map → getDistanceForDirection.js.map} +0 -0
- /package/lib/commonjs/utils/{getInvertedMultiplier.cjs.map → getInvertedMultiplier.js.map} +0 -0
- /package/lib/commonjs/utils/{getModalRoutesKeys.cjs.map → getModalRoutesKeys.js.map} +0 -0
- /package/lib/commonjs/utils/{memoize.cjs.map → memoize.js.map} +0 -0
- /package/lib/commonjs/utils/{useCardAnimation.cjs.map → useCardAnimation.js.map} +0 -0
- /package/lib/commonjs/utils/{useGestureHandlerRef.cjs.map → useGestureHandlerRef.js.map} +0 -0
- /package/lib/commonjs/utils/{useKeyboardManager.cjs.map → useKeyboardManager.js.map} +0 -0
- /package/lib/commonjs/views/{GestureHandler.android.cjs.map → GestureHandler.android.js.map} +0 -0
- /package/lib/commonjs/views/{GestureHandler.ios.cjs.map → GestureHandler.ios.js.map} +0 -0
- /package/lib/commonjs/views/{GestureHandler.cjs.map → GestureHandler.js.map} +0 -0
- /package/lib/commonjs/views/{GestureHandlerNative.cjs.map → GestureHandlerNative.js.map} +0 -0
- /package/lib/commonjs/views/Header/{Header.cjs.map → Header.js.map} +0 -0
- /package/lib/commonjs/views/Header/{HeaderContainer.cjs.map → HeaderContainer.js.map} +0 -0
- /package/lib/commonjs/views/{Screens.cjs.map → Screens.js.map} +0 -0
- /package/lib/module/{types.mjs.map → types.js.map} +0 -0
- /package/lib/typescript/{src → commonjs/src}/TransitionConfigs/CardStyleInterpolators.d.ts +0 -0
- /package/lib/typescript/{src → commonjs/src}/TransitionConfigs/HeaderStyleInterpolators.d.ts +0 -0
- /package/lib/typescript/{src → commonjs/src}/TransitionConfigs/TransitionPresets.d.ts +0 -0
- /package/lib/typescript/{src → commonjs/src}/TransitionConfigs/TransitionSpecs.d.ts +0 -0
- /package/lib/typescript/{src → commonjs/src}/index.d.ts +0 -0
- /package/lib/typescript/{src → commonjs/src}/utils/CardAnimationContext.d.ts +0 -0
- /package/lib/typescript/{src → commonjs/src}/utils/GestureHandlerRefContext.d.ts +0 -0
- /package/lib/typescript/{src → commonjs/src}/utils/ModalPresentationContext.d.ts +0 -0
- /package/lib/typescript/{src → commonjs/src}/utils/conditional.d.ts +0 -0
- /package/lib/typescript/{src → commonjs/src}/utils/findLastIndex.d.ts +0 -0
- /package/lib/typescript/{src → commonjs/src}/utils/getDistanceForDirection.d.ts +0 -0
- /package/lib/typescript/{src → commonjs/src}/utils/getInvertedMultiplier.d.ts +0 -0
- /package/lib/typescript/{src → commonjs/src}/utils/getModalRoutesKeys.d.ts +0 -0
- /package/lib/typescript/{src → commonjs/src}/utils/memoize.d.ts +0 -0
- /package/lib/typescript/{src → commonjs/src}/utils/throttle.d.ts +0 -0
- /package/lib/typescript/{src → commonjs/src}/utils/useCardAnimation.d.ts +0 -0
- /package/lib/typescript/{src → commonjs/src}/utils/useGestureHandlerRef.d.ts +0 -0
- /package/lib/typescript/{src → commonjs/src}/utils/useKeyboardManager.d.ts +0 -0
- /package/lib/typescript/{src → commonjs/src}/views/GestureHandler.android.d.ts +0 -0
- /package/lib/typescript/{src → commonjs/src}/views/GestureHandler.d.ts +0 -0
- /package/lib/typescript/{src → commonjs/src}/views/GestureHandler.ios.d.ts +0 -0
- /package/lib/typescript/{src → commonjs/src}/views/GestureHandlerNative.d.ts +0 -0
- /package/lib/typescript/{src → commonjs/src}/views/Header/Header.d.ts +0 -0
- /package/lib/typescript/{src → commonjs/src}/views/Header/HeaderContainer.d.ts +0 -0
- /package/lib/typescript/{src → commonjs/src}/views/Header/HeaderSegment.d.ts +0 -0
- /package/lib/typescript/{src → commonjs/src}/views/Screens.d.ts +0 -0
- /package/lib/typescript/{src → commonjs/src}/views/Stack/Card.d.ts +0 -0
- /package/lib/typescript/{src → commonjs/src}/views/Stack/CardContainer.d.ts +0 -0
- /package/lib/typescript/{src → commonjs/src}/views/Stack/CardSheet.d.ts +0 -0
- /package/lib/typescript/{src → commonjs/src}/views/Stack/CardStack.d.ts +0 -0
- /package/lib/typescript/{src → commonjs/src}/views/Stack/StackView.d.ts +0 -0
|
@@ -1,471 +0,0 @@
|
|
|
1
|
-
import { Background, getDefaultHeaderHeight, SafeAreaProviderCompat } from '@react-navigation/elements';
|
|
2
|
-
import * as React from 'react';
|
|
3
|
-
import { Animated, Platform, StyleSheet } from 'react-native';
|
|
4
|
-
import { forModalPresentationIOS, forNoAnimation as forNoAnimationCard } from "../../TransitionConfigs/CardStyleInterpolators.mjs";
|
|
5
|
-
import { BottomSheetAndroid, DefaultTransition, FadeFromBottomAndroid, FadeFromRightAndroid, ModalFadeTransition, ModalSlideFromBottomIOS, ModalTransition, RevealFromBottomAndroid, ScaleFromCenterAndroid, SlideFromLeftIOS, SlideFromRightIOS } from "../../TransitionConfigs/TransitionPresets.mjs";
|
|
6
|
-
import { findLastIndex } from "../../utils/findLastIndex.mjs";
|
|
7
|
-
import { getDistanceForDirection } from "../../utils/getDistanceForDirection.mjs";
|
|
8
|
-
import { getModalRouteKeys } from "../../utils/getModalRoutesKeys.mjs";
|
|
9
|
-
import { MaybeScreen, MaybeScreenContainer } from "../Screens.mjs";
|
|
10
|
-
import { CardContainer } from "./CardContainer.mjs";
|
|
11
|
-
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
12
|
-
const NAMED_TRANSITIONS_PRESETS = {
|
|
13
|
-
default: DefaultTransition,
|
|
14
|
-
fade: ModalFadeTransition,
|
|
15
|
-
fade_from_bottom: FadeFromBottomAndroid,
|
|
16
|
-
fade_from_right: FadeFromRightAndroid,
|
|
17
|
-
none: DefaultTransition,
|
|
18
|
-
reveal_from_bottom: RevealFromBottomAndroid,
|
|
19
|
-
scale_from_center: ScaleFromCenterAndroid,
|
|
20
|
-
slide_from_left: SlideFromLeftIOS,
|
|
21
|
-
slide_from_right: SlideFromRightIOS,
|
|
22
|
-
slide_from_bottom: Platform.select({
|
|
23
|
-
ios: ModalSlideFromBottomIOS,
|
|
24
|
-
default: BottomSheetAndroid
|
|
25
|
-
})
|
|
26
|
-
};
|
|
27
|
-
const EPSILON = 1e-5;
|
|
28
|
-
const STATE_INACTIVE = 0;
|
|
29
|
-
const STATE_TRANSITIONING_OR_BELOW_TOP = 1;
|
|
30
|
-
const STATE_ON_TOP = 2;
|
|
31
|
-
const FALLBACK_DESCRIPTOR = Object.freeze({
|
|
32
|
-
options: {}
|
|
33
|
-
});
|
|
34
|
-
const getInterpolationIndex = (scenes, index) => {
|
|
35
|
-
const {
|
|
36
|
-
cardStyleInterpolator
|
|
37
|
-
} = scenes[index].descriptor.options;
|
|
38
|
-
|
|
39
|
-
// Start from current card and count backwards the number of cards with same interpolation
|
|
40
|
-
let interpolationIndex = 0;
|
|
41
|
-
for (let i = index - 1; i >= 0; i--) {
|
|
42
|
-
const cardStyleInterpolatorCurrent = scenes[i]?.descriptor.options.cardStyleInterpolator;
|
|
43
|
-
if (cardStyleInterpolatorCurrent !== cardStyleInterpolator) {
|
|
44
|
-
break;
|
|
45
|
-
}
|
|
46
|
-
interpolationIndex++;
|
|
47
|
-
}
|
|
48
|
-
return interpolationIndex;
|
|
49
|
-
};
|
|
50
|
-
const getIsModalPresentation = cardStyleInterpolator => {
|
|
51
|
-
return cardStyleInterpolator === forModalPresentationIOS ||
|
|
52
|
-
// Handle custom modal presentation interpolators as well
|
|
53
|
-
cardStyleInterpolator.name === 'forModalPresentationIOS';
|
|
54
|
-
};
|
|
55
|
-
const getIsModal = (scene, interpolationIndex, isParentModal) => {
|
|
56
|
-
if (isParentModal) {
|
|
57
|
-
return true;
|
|
58
|
-
}
|
|
59
|
-
const {
|
|
60
|
-
cardStyleInterpolator
|
|
61
|
-
} = scene.descriptor.options;
|
|
62
|
-
const isModalPresentation = getIsModalPresentation(cardStyleInterpolator);
|
|
63
|
-
const isModal = isModalPresentation && interpolationIndex !== 0;
|
|
64
|
-
return isModal;
|
|
65
|
-
};
|
|
66
|
-
const getHeaderHeights = (scenes, insets, isParentHeaderShown, isParentModal, layout, previous) => {
|
|
67
|
-
return scenes.reduce((acc, curr, index) => {
|
|
68
|
-
const {
|
|
69
|
-
headerStatusBarHeight = isParentHeaderShown ? 0 : insets.top,
|
|
70
|
-
headerStyle
|
|
71
|
-
} = curr.descriptor.options;
|
|
72
|
-
const style = StyleSheet.flatten(headerStyle || {});
|
|
73
|
-
const height = 'height' in style && typeof style.height === 'number' ? style.height : previous[curr.route.key];
|
|
74
|
-
const interpolationIndex = getInterpolationIndex(scenes, index);
|
|
75
|
-
const isModal = getIsModal(curr, interpolationIndex, isParentModal);
|
|
76
|
-
acc[curr.route.key] = typeof height === 'number' ? height : getDefaultHeaderHeight(layout, isModal, headerStatusBarHeight);
|
|
77
|
-
return acc;
|
|
78
|
-
}, {});
|
|
79
|
-
};
|
|
80
|
-
const getDistanceFromOptions = (layout, descriptor, isRTL) => {
|
|
81
|
-
if (descriptor?.options.gestureDirection) {
|
|
82
|
-
return getDistanceForDirection(layout, descriptor?.options.gestureDirection, isRTL);
|
|
83
|
-
}
|
|
84
|
-
const defaultGestureDirection = descriptor?.options.presentation === 'modal' ? ModalTransition.gestureDirection : DefaultTransition.gestureDirection;
|
|
85
|
-
const gestureDirection = descriptor?.options.animation ? NAMED_TRANSITIONS_PRESETS[descriptor?.options.animation]?.gestureDirection : defaultGestureDirection;
|
|
86
|
-
return getDistanceForDirection(layout, gestureDirection, isRTL);
|
|
87
|
-
};
|
|
88
|
-
const getProgressFromGesture = (gesture, layout, descriptor, isRTL) => {
|
|
89
|
-
const distance = getDistanceFromOptions({
|
|
90
|
-
// Make sure that we have a non-zero distance, otherwise there will be incorrect progress
|
|
91
|
-
// This causes blank screen on web if it was previously inside container with display: none
|
|
92
|
-
width: Math.max(1, layout.width),
|
|
93
|
-
height: Math.max(1, layout.height)
|
|
94
|
-
}, descriptor, isRTL);
|
|
95
|
-
if (distance > 0) {
|
|
96
|
-
return gesture.interpolate({
|
|
97
|
-
inputRange: [0, distance],
|
|
98
|
-
outputRange: [1, 0]
|
|
99
|
-
});
|
|
100
|
-
}
|
|
101
|
-
return gesture.interpolate({
|
|
102
|
-
inputRange: [distance, 0],
|
|
103
|
-
outputRange: [0, 1]
|
|
104
|
-
});
|
|
105
|
-
};
|
|
106
|
-
export class CardStack extends React.Component {
|
|
107
|
-
static getDerivedStateFromProps(props, state) {
|
|
108
|
-
if (props.routes === state.routes && props.descriptors === state.descriptors) {
|
|
109
|
-
return null;
|
|
110
|
-
}
|
|
111
|
-
const gestures = [...props.routes, ...props.state.preloadedRoutes].reduce((acc, curr) => {
|
|
112
|
-
const descriptor = props.descriptors[curr.key] || props.preloadedDescriptors[curr.key];
|
|
113
|
-
const {
|
|
114
|
-
animation
|
|
115
|
-
} = descriptor?.options || {};
|
|
116
|
-
acc[curr.key] = state.gestures[curr.key] || new Animated.Value(props.openingRouteKeys.includes(curr.key) && animation !== 'none' || props.state.preloadedRoutes.includes(curr) ? getDistanceFromOptions(state.layout, descriptor, props.direction === 'rtl') : 0);
|
|
117
|
-
return acc;
|
|
118
|
-
}, {});
|
|
119
|
-
const modalRouteKeys = getModalRouteKeys([...props.routes, ...props.state.preloadedRoutes], {
|
|
120
|
-
...props.descriptors,
|
|
121
|
-
...props.preloadedDescriptors
|
|
122
|
-
});
|
|
123
|
-
const scenes = [...props.routes, ...props.state.preloadedRoutes].map((route, index, self) => {
|
|
124
|
-
// For preloaded screens, we don't care about the previous and the next screen
|
|
125
|
-
const isPreloaded = props.state.preloadedRoutes.includes(route);
|
|
126
|
-
const previousRoute = isPreloaded ? undefined : self[index - 1];
|
|
127
|
-
const nextRoute = isPreloaded ? undefined : self[index + 1];
|
|
128
|
-
const oldScene = state.scenes[index];
|
|
129
|
-
const currentGesture = gestures[route.key];
|
|
130
|
-
const previousGesture = previousRoute ? gestures[previousRoute.key] : undefined;
|
|
131
|
-
const nextGesture = nextRoute ? gestures[nextRoute.key] : undefined;
|
|
132
|
-
const descriptor = (isPreloaded ? props.preloadedDescriptors : props.descriptors)[route.key] || state.descriptors[route.key] || (oldScene ? oldScene.descriptor : FALLBACK_DESCRIPTOR);
|
|
133
|
-
const nextDescriptor = nextRoute && (props.descriptors[nextRoute?.key] || state.descriptors[nextRoute?.key]);
|
|
134
|
-
const previousDescriptor = previousRoute && (props.descriptors[previousRoute?.key] || state.descriptors[previousRoute?.key]);
|
|
135
|
-
|
|
136
|
-
// When a screen is not the last, it should use next screen's transition config
|
|
137
|
-
// Many transitions also animate the previous screen, so using 2 different transitions doesn't look right
|
|
138
|
-
// For example combining a slide and a modal transition would look wrong otherwise
|
|
139
|
-
// With this approach, combining different transition styles in the same navigator mostly looks right
|
|
140
|
-
// This will still be broken when 2 transitions have different idle state (e.g. modal presentation),
|
|
141
|
-
// but the majority of the transitions look alright
|
|
142
|
-
const optionsForTransitionConfig = index !== self.length - 1 && nextDescriptor && nextDescriptor.options.presentation !== 'transparentModal' ? nextDescriptor.options : descriptor.options;
|
|
143
|
-
|
|
144
|
-
// Assume modal if there are already modal screens in the stack
|
|
145
|
-
// or current screen is a modal when no presentation is specified
|
|
146
|
-
const isModal = modalRouteKeys.includes(route.key);
|
|
147
|
-
|
|
148
|
-
// Disable screen transition animation by default on web, windows and macos to match the native behavior
|
|
149
|
-
const excludedPlatforms = Platform.OS !== 'web' && Platform.OS !== 'windows' && Platform.OS !== 'macos';
|
|
150
|
-
const animation = optionsForTransitionConfig.animation ?? (excludedPlatforms ? 'default' : 'none');
|
|
151
|
-
const isAnimationEnabled = animation !== 'none';
|
|
152
|
-
const transitionPreset = animation !== 'default' ? NAMED_TRANSITIONS_PRESETS[animation] : isModal || optionsForTransitionConfig.presentation === 'modal' ? ModalTransition : optionsForTransitionConfig.presentation === 'transparentModal' ? ModalFadeTransition : DefaultTransition;
|
|
153
|
-
const {
|
|
154
|
-
gestureEnabled = Platform.OS === 'ios' && isAnimationEnabled,
|
|
155
|
-
gestureDirection = transitionPreset.gestureDirection,
|
|
156
|
-
transitionSpec = transitionPreset.transitionSpec,
|
|
157
|
-
cardStyleInterpolator = isAnimationEnabled ? transitionPreset.cardStyleInterpolator : forNoAnimationCard,
|
|
158
|
-
headerStyleInterpolator = transitionPreset.headerStyleInterpolator,
|
|
159
|
-
cardOverlayEnabled = Platform.OS !== 'ios' && optionsForTransitionConfig.presentation !== 'transparentModal' || getIsModalPresentation(cardStyleInterpolator)
|
|
160
|
-
} = optionsForTransitionConfig;
|
|
161
|
-
const headerMode = descriptor.options.headerMode ?? (!(optionsForTransitionConfig.presentation === 'modal' || optionsForTransitionConfig.presentation === 'transparentModal' || nextDescriptor?.options.presentation === 'modal' || nextDescriptor?.options.presentation === 'transparentModal' || getIsModalPresentation(cardStyleInterpolator)) && Platform.OS === 'ios' && descriptor.options.header === undefined ? 'float' : 'screen');
|
|
162
|
-
const isRTL = props.direction === 'rtl';
|
|
163
|
-
const scene = {
|
|
164
|
-
route,
|
|
165
|
-
descriptor: {
|
|
166
|
-
...descriptor,
|
|
167
|
-
options: {
|
|
168
|
-
...descriptor.options,
|
|
169
|
-
animation,
|
|
170
|
-
cardOverlayEnabled,
|
|
171
|
-
cardStyleInterpolator,
|
|
172
|
-
gestureDirection,
|
|
173
|
-
gestureEnabled,
|
|
174
|
-
headerStyleInterpolator,
|
|
175
|
-
transitionSpec,
|
|
176
|
-
headerMode
|
|
177
|
-
}
|
|
178
|
-
},
|
|
179
|
-
progress: {
|
|
180
|
-
current: getProgressFromGesture(currentGesture, state.layout, descriptor, isRTL),
|
|
181
|
-
next: nextGesture && nextDescriptor?.options.presentation !== 'transparentModal' ? getProgressFromGesture(nextGesture, state.layout, nextDescriptor, isRTL) : undefined,
|
|
182
|
-
previous: previousGesture ? getProgressFromGesture(previousGesture, state.layout, previousDescriptor, isRTL) : undefined
|
|
183
|
-
},
|
|
184
|
-
__memo: [state.layout, descriptor, nextDescriptor, previousDescriptor, currentGesture, nextGesture, previousGesture]
|
|
185
|
-
};
|
|
186
|
-
if (oldScene && scene.__memo.every((it, i) => {
|
|
187
|
-
// @ts-expect-error: we haven't added __memo to the annotation to prevent usage elsewhere
|
|
188
|
-
return oldScene.__memo[i] === it;
|
|
189
|
-
})) {
|
|
190
|
-
return oldScene;
|
|
191
|
-
}
|
|
192
|
-
return scene;
|
|
193
|
-
});
|
|
194
|
-
return {
|
|
195
|
-
routes: props.routes,
|
|
196
|
-
scenes,
|
|
197
|
-
gestures,
|
|
198
|
-
descriptors: props.descriptors,
|
|
199
|
-
headerHeights: getHeaderHeights(scenes, props.insets, props.isParentHeaderShown, props.isParentModal, state.layout, state.headerHeights)
|
|
200
|
-
};
|
|
201
|
-
}
|
|
202
|
-
constructor(props) {
|
|
203
|
-
super(props);
|
|
204
|
-
this.state = {
|
|
205
|
-
routes: [],
|
|
206
|
-
scenes: [],
|
|
207
|
-
gestures: {},
|
|
208
|
-
layout: SafeAreaProviderCompat.initialMetrics.frame,
|
|
209
|
-
descriptors: this.props.descriptors,
|
|
210
|
-
// Used when card's header is null and mode is float to make transition
|
|
211
|
-
// between screens with headers and those without headers smooth.
|
|
212
|
-
// This is not a great heuristic here. We don't know synchronously
|
|
213
|
-
// on mount what the header height is so we have just used the most
|
|
214
|
-
// common cases here.
|
|
215
|
-
headerHeights: {}
|
|
216
|
-
};
|
|
217
|
-
}
|
|
218
|
-
handleLayout = e => {
|
|
219
|
-
const {
|
|
220
|
-
height,
|
|
221
|
-
width
|
|
222
|
-
} = e.nativeEvent.layout;
|
|
223
|
-
const layout = {
|
|
224
|
-
width,
|
|
225
|
-
height
|
|
226
|
-
};
|
|
227
|
-
this.setState((state, props) => {
|
|
228
|
-
if (height === state.layout.height && width === state.layout.width) {
|
|
229
|
-
return null;
|
|
230
|
-
}
|
|
231
|
-
return {
|
|
232
|
-
layout,
|
|
233
|
-
headerHeights: getHeaderHeights(state.scenes, props.insets, props.isParentHeaderShown, props.isParentModal, layout, state.headerHeights)
|
|
234
|
-
};
|
|
235
|
-
});
|
|
236
|
-
};
|
|
237
|
-
handleHeaderLayout = ({
|
|
238
|
-
route,
|
|
239
|
-
height
|
|
240
|
-
}) => {
|
|
241
|
-
this.setState(({
|
|
242
|
-
headerHeights
|
|
243
|
-
}) => {
|
|
244
|
-
const previousHeight = headerHeights[route.key];
|
|
245
|
-
if (previousHeight === height) {
|
|
246
|
-
return null;
|
|
247
|
-
}
|
|
248
|
-
return {
|
|
249
|
-
headerHeights: {
|
|
250
|
-
...headerHeights,
|
|
251
|
-
[route.key]: height
|
|
252
|
-
}
|
|
253
|
-
};
|
|
254
|
-
});
|
|
255
|
-
};
|
|
256
|
-
getFocusedRoute = () => {
|
|
257
|
-
const {
|
|
258
|
-
state
|
|
259
|
-
} = this.props;
|
|
260
|
-
return state.routes[state.index];
|
|
261
|
-
};
|
|
262
|
-
getPreviousScene = ({
|
|
263
|
-
route
|
|
264
|
-
}) => {
|
|
265
|
-
const {
|
|
266
|
-
getPreviousRoute
|
|
267
|
-
} = this.props;
|
|
268
|
-
const {
|
|
269
|
-
scenes
|
|
270
|
-
} = this.state;
|
|
271
|
-
const previousRoute = getPreviousRoute({
|
|
272
|
-
route
|
|
273
|
-
});
|
|
274
|
-
if (previousRoute) {
|
|
275
|
-
const previousScene = scenes.find(scene => scene.descriptor.route.key === previousRoute.key);
|
|
276
|
-
return previousScene;
|
|
277
|
-
}
|
|
278
|
-
return undefined;
|
|
279
|
-
};
|
|
280
|
-
render() {
|
|
281
|
-
const {
|
|
282
|
-
insets,
|
|
283
|
-
state,
|
|
284
|
-
routes,
|
|
285
|
-
closingRouteKeys,
|
|
286
|
-
onOpenRoute,
|
|
287
|
-
onCloseRoute,
|
|
288
|
-
renderHeader,
|
|
289
|
-
isParentHeaderShown,
|
|
290
|
-
isParentModal,
|
|
291
|
-
onTransitionStart,
|
|
292
|
-
onTransitionEnd,
|
|
293
|
-
onGestureStart,
|
|
294
|
-
onGestureEnd,
|
|
295
|
-
onGestureCancel,
|
|
296
|
-
detachInactiveScreens = Platform.OS === 'web' || Platform.OS === 'android' || Platform.OS === 'ios'
|
|
297
|
-
} = this.props;
|
|
298
|
-
const {
|
|
299
|
-
scenes,
|
|
300
|
-
layout,
|
|
301
|
-
gestures,
|
|
302
|
-
headerHeights
|
|
303
|
-
} = this.state;
|
|
304
|
-
const focusedRoute = state.routes[state.index];
|
|
305
|
-
const focusedHeaderHeight = headerHeights[focusedRoute.key];
|
|
306
|
-
const isFloatHeaderAbsolute = this.state.scenes.slice(-2).some(scene => {
|
|
307
|
-
const options = scene.descriptor.options ?? {};
|
|
308
|
-
const {
|
|
309
|
-
headerMode,
|
|
310
|
-
headerTransparent,
|
|
311
|
-
headerShown = true
|
|
312
|
-
} = options;
|
|
313
|
-
if (headerTransparent || headerShown === false || headerMode === 'screen') {
|
|
314
|
-
return true;
|
|
315
|
-
}
|
|
316
|
-
return false;
|
|
317
|
-
});
|
|
318
|
-
let activeScreensLimit = 1;
|
|
319
|
-
for (let i = scenes.length - 1; i >= 0; i--) {
|
|
320
|
-
const {
|
|
321
|
-
options
|
|
322
|
-
} = scenes[i].descriptor;
|
|
323
|
-
const {
|
|
324
|
-
// By default, we don't want to detach the previous screen of the active one for modals
|
|
325
|
-
detachPreviousScreen = options.presentation === 'transparentModal' ? false : getIsModalPresentation(options.cardStyleInterpolator) ? i !== findLastIndex(scenes, scene => {
|
|
326
|
-
const {
|
|
327
|
-
cardStyleInterpolator
|
|
328
|
-
} = scene.descriptor.options;
|
|
329
|
-
return cardStyleInterpolator === forModalPresentationIOS || cardStyleInterpolator?.name === 'forModalPresentationIOS';
|
|
330
|
-
}) : true
|
|
331
|
-
} = options;
|
|
332
|
-
if (detachPreviousScreen === false) {
|
|
333
|
-
activeScreensLimit++;
|
|
334
|
-
} else {
|
|
335
|
-
// Check at least last 2 screens before stopping
|
|
336
|
-
// This will make sure that screen isn't detached when another screen is animating on top of the transparent one
|
|
337
|
-
// For example, (Opaque -> Transparent -> Opaque)
|
|
338
|
-
if (i <= scenes.length - 2) {
|
|
339
|
-
break;
|
|
340
|
-
}
|
|
341
|
-
}
|
|
342
|
-
}
|
|
343
|
-
const floatingHeader = /*#__PURE__*/_jsx(React.Fragment, {
|
|
344
|
-
children: renderHeader({
|
|
345
|
-
mode: 'float',
|
|
346
|
-
layout,
|
|
347
|
-
scenes,
|
|
348
|
-
getPreviousScene: this.getPreviousScene,
|
|
349
|
-
getFocusedRoute: this.getFocusedRoute,
|
|
350
|
-
onContentHeightChange: this.handleHeaderLayout,
|
|
351
|
-
style: [styles.floating, isFloatHeaderAbsolute && [
|
|
352
|
-
// Without this, the header buttons won't be touchable on Android when headerTransparent: true
|
|
353
|
-
{
|
|
354
|
-
height: focusedHeaderHeight
|
|
355
|
-
}, styles.absolute]]
|
|
356
|
-
})
|
|
357
|
-
}, "header");
|
|
358
|
-
return /*#__PURE__*/_jsxs(Background, {
|
|
359
|
-
children: [isFloatHeaderAbsolute ? null : floatingHeader, /*#__PURE__*/_jsx(MaybeScreenContainer, {
|
|
360
|
-
enabled: detachInactiveScreens,
|
|
361
|
-
style: styles.container,
|
|
362
|
-
onLayout: this.handleLayout,
|
|
363
|
-
children: [...routes, ...state.preloadedRoutes].map((route, index) => {
|
|
364
|
-
const focused = focusedRoute.key === route.key;
|
|
365
|
-
const gesture = gestures[route.key];
|
|
366
|
-
const scene = scenes[index];
|
|
367
|
-
// It is possible that for a short period the route appears in both arrays.
|
|
368
|
-
// Particularly, if the screen is removed with `retain`, then it needs a moment to execute the animation.
|
|
369
|
-
// However, due to the router action, it immediately populates the `preloadedRoutes` array.
|
|
370
|
-
// Practically, the logic below takes care that it is rendered only once.
|
|
371
|
-
const isPreloaded = state.preloadedRoutes.includes(route) && !routes.includes(route);
|
|
372
|
-
if (state.preloadedRoutes.includes(route) && routes.includes(route) && index >= routes.length) {
|
|
373
|
-
return null;
|
|
374
|
-
}
|
|
375
|
-
|
|
376
|
-
// For the screens that shouldn't be active, the value is 0
|
|
377
|
-
// For those that should be active, but are not the top screen, the value is 1
|
|
378
|
-
// For those on top of the stack and with interaction enabled, the value is 2
|
|
379
|
-
// For the old implementation, it stays the same it was
|
|
380
|
-
let isScreenActive = 1;
|
|
381
|
-
if (index < routes.length - activeScreensLimit - 1 || isPreloaded) {
|
|
382
|
-
// screen should be inactive because it is too deep in the stack
|
|
383
|
-
isScreenActive = STATE_INACTIVE;
|
|
384
|
-
} else {
|
|
385
|
-
const sceneForActivity = scenes[routes.length - 1];
|
|
386
|
-
const outputValue = index === routes.length - 1 ? STATE_ON_TOP // the screen is on top after the transition
|
|
387
|
-
: index >= routes.length - activeScreensLimit ? STATE_TRANSITIONING_OR_BELOW_TOP // the screen should stay active after the transition, it is not on top but is in activeLimit
|
|
388
|
-
: STATE_INACTIVE; // the screen should be active only during the transition, it is at the edge of activeLimit
|
|
389
|
-
isScreenActive = sceneForActivity ? sceneForActivity.progress.current.interpolate({
|
|
390
|
-
inputRange: [0, 1 - EPSILON, 1],
|
|
391
|
-
outputRange: [1, 1, outputValue],
|
|
392
|
-
extrapolate: 'clamp'
|
|
393
|
-
}) : STATE_TRANSITIONING_OR_BELOW_TOP;
|
|
394
|
-
}
|
|
395
|
-
const {
|
|
396
|
-
headerShown = true,
|
|
397
|
-
headerTransparent,
|
|
398
|
-
freezeOnBlur,
|
|
399
|
-
autoHideHomeIndicator
|
|
400
|
-
} = scene.descriptor.options;
|
|
401
|
-
const safeAreaInsetTop = insets.top;
|
|
402
|
-
const safeAreaInsetRight = insets.right;
|
|
403
|
-
const safeAreaInsetBottom = insets.bottom;
|
|
404
|
-
const safeAreaInsetLeft = insets.left;
|
|
405
|
-
const headerHeight = headerShown !== false ? headerHeights[route.key] : 0;
|
|
406
|
-
|
|
407
|
-
// Start from current card and count backwards the number of cards with same interpolation
|
|
408
|
-
const interpolationIndex = getInterpolationIndex(scenes, index);
|
|
409
|
-
const isModal = getIsModal(scene, interpolationIndex, isParentModal);
|
|
410
|
-
const isNextScreenTransparent = scenes[index + 1]?.descriptor.options.presentation === 'transparentModal';
|
|
411
|
-
const detachCurrentScreen = scenes[index + 1]?.descriptor.options.detachPreviousScreen !== false;
|
|
412
|
-
return /*#__PURE__*/_jsx(MaybeScreen, {
|
|
413
|
-
style: [StyleSheet.absoluteFill],
|
|
414
|
-
enabled: detachInactiveScreens,
|
|
415
|
-
active: isScreenActive,
|
|
416
|
-
freezeOnBlur: freezeOnBlur,
|
|
417
|
-
homeIndicatorHidden: autoHideHomeIndicator,
|
|
418
|
-
pointerEvents: "box-none",
|
|
419
|
-
children: /*#__PURE__*/_jsx(CardContainer, {
|
|
420
|
-
index: index,
|
|
421
|
-
interpolationIndex: interpolationIndex,
|
|
422
|
-
modal: isModal,
|
|
423
|
-
active: index === routes.length - 1,
|
|
424
|
-
focused: focused,
|
|
425
|
-
closing: closingRouteKeys.includes(route.key),
|
|
426
|
-
layout: layout,
|
|
427
|
-
gesture: gesture,
|
|
428
|
-
scene: scene,
|
|
429
|
-
safeAreaInsetTop: safeAreaInsetTop,
|
|
430
|
-
safeAreaInsetRight: safeAreaInsetRight,
|
|
431
|
-
safeAreaInsetBottom: safeAreaInsetBottom,
|
|
432
|
-
safeAreaInsetLeft: safeAreaInsetLeft,
|
|
433
|
-
onGestureStart: onGestureStart,
|
|
434
|
-
onGestureCancel: onGestureCancel,
|
|
435
|
-
onGestureEnd: onGestureEnd,
|
|
436
|
-
headerHeight: headerHeight,
|
|
437
|
-
isParentHeaderShown: isParentHeaderShown,
|
|
438
|
-
onHeaderHeightChange: this.handleHeaderLayout,
|
|
439
|
-
getPreviousScene: this.getPreviousScene,
|
|
440
|
-
getFocusedRoute: this.getFocusedRoute,
|
|
441
|
-
hasAbsoluteFloatHeader: isFloatHeaderAbsolute && !headerTransparent,
|
|
442
|
-
renderHeader: renderHeader,
|
|
443
|
-
onOpenRoute: onOpenRoute,
|
|
444
|
-
onCloseRoute: onCloseRoute,
|
|
445
|
-
onTransitionStart: onTransitionStart,
|
|
446
|
-
onTransitionEnd: onTransitionEnd,
|
|
447
|
-
isNextScreenTransparent: isNextScreenTransparent,
|
|
448
|
-
detachCurrentScreen: detachCurrentScreen,
|
|
449
|
-
preloaded: isPreloaded
|
|
450
|
-
})
|
|
451
|
-
}, route.key);
|
|
452
|
-
})
|
|
453
|
-
}), isFloatHeaderAbsolute ? floatingHeader : null]
|
|
454
|
-
});
|
|
455
|
-
}
|
|
456
|
-
}
|
|
457
|
-
const styles = StyleSheet.create({
|
|
458
|
-
container: {
|
|
459
|
-
flex: 1
|
|
460
|
-
},
|
|
461
|
-
absolute: {
|
|
462
|
-
position: 'absolute',
|
|
463
|
-
top: 0,
|
|
464
|
-
start: 0,
|
|
465
|
-
end: 0
|
|
466
|
-
},
|
|
467
|
-
floating: {
|
|
468
|
-
zIndex: 1
|
|
469
|
-
}
|
|
470
|
-
});
|
|
471
|
-
//# sourceMappingURL=CardStack.mjs.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"names":["Background","getDefaultHeaderHeight","SafeAreaProviderCompat","React","Animated","Platform","StyleSheet","forModalPresentationIOS","forNoAnimation","forNoAnimationCard","BottomSheetAndroid","DefaultTransition","FadeFromBottomAndroid","FadeFromRightAndroid","ModalFadeTransition","ModalSlideFromBottomIOS","ModalTransition","RevealFromBottomAndroid","ScaleFromCenterAndroid","SlideFromLeftIOS","SlideFromRightIOS","findLastIndex","getDistanceForDirection","getModalRouteKeys","MaybeScreen","MaybeScreenContainer","CardContainer","jsx","_jsx","jsxs","_jsxs","NAMED_TRANSITIONS_PRESETS","default","fade","fade_from_bottom","fade_from_right","none","reveal_from_bottom","scale_from_center","slide_from_left","slide_from_right","slide_from_bottom","select","ios","EPSILON","STATE_INACTIVE","STATE_TRANSITIONING_OR_BELOW_TOP","STATE_ON_TOP","FALLBACK_DESCRIPTOR","Object","freeze","options","getInterpolationIndex","scenes","index","cardStyleInterpolator","descriptor","interpolationIndex","i","cardStyleInterpolatorCurrent","getIsModalPresentation","name","getIsModal","scene","isParentModal","isModalPresentation","isModal","getHeaderHeights","insets","isParentHeaderShown","layout","previous","reduce","acc","curr","headerStatusBarHeight","top","headerStyle","style","flatten","height","route","key","getDistanceFromOptions","isRTL","gestureDirection","defaultGestureDirection","presentation","animation","getProgressFromGesture","gesture","distance","width","Math","max","interpolate","inputRange","outputRange","CardStack","Component","getDerivedStateFromProps","props","state","routes","descriptors","gestures","preloadedRoutes","preloadedDescriptors","Value","openingRouteKeys","includes","direction","modalRouteKeys","map","self","isPreloaded","previousRoute","undefined","nextRoute","oldScene","currentGesture","previousGesture","nextGesture","nextDescriptor","previousDescriptor","optionsForTransitionConfig","length","excludedPlatforms","OS","isAnimationEnabled","transitionPreset","gestureEnabled","transitionSpec","headerStyleInterpolator","cardOverlayEnabled","headerMode","header","progress","current","next","__memo","every","it","headerHeights","constructor","initialMetrics","frame","handleLayout","e","nativeEvent","setState","handleHeaderLayout","previousHeight","getFocusedRoute","getPreviousScene","getPreviousRoute","previousScene","find","render","closingRouteKeys","onOpenRoute","onCloseRoute","renderHeader","onTransitionStart","onTransitionEnd","onGestureStart","onGestureEnd","onGestureCancel","detachInactiveScreens","focusedRoute","focusedHeaderHeight","isFloatHeaderAbsolute","slice","some","headerTransparent","headerShown","activeScreensLimit","detachPreviousScreen","floatingHeader","Fragment","children","mode","onContentHeightChange","styles","floating","absolute","enabled","container","onLayout","focused","isScreenActive","sceneForActivity","outputValue","extrapolate","freezeOnBlur","autoHideHomeIndicator","safeAreaInsetTop","safeAreaInsetRight","right","safeAreaInsetBottom","bottom","safeAreaInsetLeft","left","headerHeight","isNextScreenTransparent","detachCurrentScreen","absoluteFill","active","homeIndicatorHidden","pointerEvents","modal","closing","onHeaderHeightChange","hasAbsoluteFloatHeader","preloaded","create","flex","position","start","end","zIndex"],"sourceRoot":"../../../../src","sources":["views/Stack/CardStack.tsx"],"mappings":"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","ignoreList":[]}
|