@amazon-devices/react-navigation__stack 2.0.1758683737
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/LICENSE +7 -0
- package/README.md +5 -0
- package/SystemBundles/ed2637c0b74cd42ce066fca701acc5cb0850978c5296fae5bd715d5e4c67b128.bundle +29321 -0
- package/SystemBundles/ed2637c0b74cd42ce066fca701acc5cb0850978c5296fae5bd715d5e4c67b128.map +1 -0
- package/SystemModules/amzn__react-navigation__stack-2.modules.txt +95 -0
- package/SystemModules/amzn__react-navigation__stack-2.private.modules.txt +258 -0
- package/SystemModules/keplerscript-system-bundle-config.json +7 -0
- package/THIRD_PARTY_NOTICES.txt +24 -0
- package/kepler-compatibility.json +8 -0
- package/kepler-transformed-package-info.json +3 -0
- package/lib/commonjs/TransitionConfigs/CardStyleInterpolators.js +353 -0
- package/lib/commonjs/TransitionConfigs/CardStyleInterpolators.js.map +1 -0
- package/lib/commonjs/TransitionConfigs/HeaderStyleInterpolators.js +259 -0
- package/lib/commonjs/TransitionConfigs/HeaderStyleInterpolators.js.map +1 -0
- package/lib/commonjs/TransitionConfigs/TransitionPresets.js +134 -0
- package/lib/commonjs/TransitionConfigs/TransitionPresets.js.map +1 -0
- package/lib/commonjs/TransitionConfigs/TransitionSpecs.js +100 -0
- package/lib/commonjs/TransitionConfigs/TransitionSpecs.js.map +1 -0
- package/lib/commonjs/index.js +69 -0
- package/lib/commonjs/index.js.map +1 -0
- package/lib/commonjs/navigators/createStackNavigator.js +82 -0
- package/lib/commonjs/navigators/createStackNavigator.js.map +1 -0
- package/lib/commonjs/types.js +6 -0
- package/lib/commonjs/types.js.map +1 -0
- package/lib/commonjs/utils/CardAnimationContext.js +11 -0
- package/lib/commonjs/utils/CardAnimationContext.js.map +1 -0
- package/lib/commonjs/utils/GestureHandlerRefContext.js +11 -0
- package/lib/commonjs/utils/GestureHandlerRefContext.js.map +1 -0
- package/lib/commonjs/utils/ModalPresentationContext.js +12 -0
- package/lib/commonjs/utils/ModalPresentationContext.js.map +1 -0
- package/lib/commonjs/utils/conditional.js +32 -0
- package/lib/commonjs/utils/conditional.js.map +1 -0
- package/lib/commonjs/utils/debounce.js +19 -0
- package/lib/commonjs/utils/debounce.js.map +1 -0
- package/lib/commonjs/utils/findLastIndex.js +15 -0
- package/lib/commonjs/utils/findLastIndex.js.map +1 -0
- package/lib/commonjs/utils/getDistanceForDirection.js +20 -0
- package/lib/commonjs/utils/getDistanceForDirection.js.map +1 -0
- package/lib/commonjs/utils/getInvertedMultiplier.js +20 -0
- package/lib/commonjs/utils/getInvertedMultiplier.js.map +1 -0
- package/lib/commonjs/utils/memoize.js +33 -0
- package/lib/commonjs/utils/memoize.js.map +1 -0
- package/lib/commonjs/utils/useCardAnimation.js +19 -0
- package/lib/commonjs/utils/useCardAnimation.js.map +1 -0
- package/lib/commonjs/utils/useGestureHandlerRef.js +19 -0
- package/lib/commonjs/utils/useGestureHandlerRef.js.map +1 -0
- package/lib/commonjs/utils/useKeyboardManager.js +96 -0
- package/lib/commonjs/utils/useKeyboardManager.js.map +1 -0
- package/lib/commonjs/views/GestureHandler.android.js +17 -0
- package/lib/commonjs/views/GestureHandler.android.js.map +1 -0
- package/lib/commonjs/views/GestureHandler.ios.js +17 -0
- package/lib/commonjs/views/GestureHandler.ios.js.map +1 -0
- package/lib/commonjs/views/GestureHandler.js +24 -0
- package/lib/commonjs/views/GestureHandler.js.map +1 -0
- package/lib/commonjs/views/GestureHandlerNative.js +34 -0
- package/lib/commonjs/views/GestureHandlerNative.js.map +1 -0
- package/lib/commonjs/views/Header/Header.js +61 -0
- package/lib/commonjs/views/Header/Header.js.map +1 -0
- package/lib/commonjs/views/Header/HeaderContainer.js +127 -0
- package/lib/commonjs/views/Header/HeaderContainer.js.map +1 -0
- package/lib/commonjs/views/Header/HeaderSegment.js +139 -0
- package/lib/commonjs/views/Header/HeaderSegment.js.map +1 -0
- package/lib/commonjs/views/ModalStatusBarManager.js +42 -0
- package/lib/commonjs/views/ModalStatusBarManager.js.map +1 -0
- package/lib/commonjs/views/Screens.js +44 -0
- package/lib/commonjs/views/Screens.js.map +1 -0
- package/lib/commonjs/views/Stack/Card.js +469 -0
- package/lib/commonjs/views/Stack/Card.js.map +1 -0
- package/lib/commonjs/views/Stack/CardContainer.js +259 -0
- package/lib/commonjs/views/Stack/CardContainer.js.map +1 -0
- package/lib/commonjs/views/Stack/CardSheet.js +54 -0
- package/lib/commonjs/views/Stack/CardSheet.js.map +1 -0
- package/lib/commonjs/views/Stack/CardStack.js +442 -0
- package/lib/commonjs/views/Stack/CardStack.js.map +1 -0
- package/lib/commonjs/views/Stack/StackView.js +333 -0
- package/lib/commonjs/views/Stack/StackView.js.map +1 -0
- package/lib/module/TransitionConfigs/CardStyleInterpolators.js +338 -0
- package/lib/module/TransitionConfigs/CardStyleInterpolators.js.map +1 -0
- package/lib/module/TransitionConfigs/HeaderStyleInterpolators.js +248 -0
- package/lib/module/TransitionConfigs/HeaderStyleInterpolators.js.map +1 -0
- package/lib/module/TransitionConfigs/TransitionPresets.js +128 -0
- package/lib/module/TransitionConfigs/TransitionPresets.js.map +1 -0
- package/lib/module/TransitionConfigs/TransitionSpecs.js +94 -0
- package/lib/module/TransitionConfigs/TransitionSpecs.js.map +1 -0
- package/lib/module/index.js +33 -0
- package/lib/module/index.js.map +1 -0
- package/lib/module/navigators/createStackNavigator.js +73 -0
- package/lib/module/navigators/createStackNavigator.js.map +1 -0
- package/lib/module/types.js +2 -0
- package/lib/module/types.js.map +1 -0
- package/lib/module/utils/CardAnimationContext.js +3 -0
- package/lib/module/utils/CardAnimationContext.js.map +1 -0
- package/lib/module/utils/GestureHandlerRefContext.js +3 -0
- package/lib/module/utils/GestureHandlerRefContext.js.map +1 -0
- package/lib/module/utils/ModalPresentationContext.js +4 -0
- package/lib/module/utils/ModalPresentationContext.js.map +1 -0
- package/lib/module/utils/conditional.js +26 -0
- package/lib/module/utils/conditional.js.map +1 -0
- package/lib/module/utils/debounce.js +13 -0
- package/lib/module/utils/debounce.js.map +1 -0
- package/lib/module/utils/findLastIndex.js +9 -0
- package/lib/module/utils/findLastIndex.js.map +1 -0
- package/lib/module/utils/getDistanceForDirection.js +13 -0
- package/lib/module/utils/getDistanceForDirection.js.map +1 -0
- package/lib/module/utils/getInvertedMultiplier.js +14 -0
- package/lib/module/utils/getInvertedMultiplier.js.map +1 -0
- package/lib/module/utils/memoize.js +27 -0
- package/lib/module/utils/memoize.js.map +1 -0
- package/lib/module/utils/useCardAnimation.js +10 -0
- package/lib/module/utils/useCardAnimation.js.map +1 -0
- package/lib/module/utils/useGestureHandlerRef.js +10 -0
- package/lib/module/utils/useGestureHandlerRef.js.map +1 -0
- package/lib/module/utils/useKeyboardManager.js +88 -0
- package/lib/module/utils/useKeyboardManager.js.map +1 -0
- package/lib/module/views/GestureHandler.android.js +2 -0
- package/lib/module/views/GestureHandler.android.js.map +1 -0
- package/lib/module/views/GestureHandler.ios.js +2 -0
- package/lib/module/views/GestureHandler.ios.js.map +1 -0
- package/lib/module/views/GestureHandler.js +16 -0
- package/lib/module/views/GestureHandler.js.map +1 -0
- package/lib/module/views/GestureHandlerNative.js +14 -0
- package/lib/module/views/GestureHandlerNative.js.map +1 -0
- package/lib/module/views/Header/Header.js +52 -0
- package/lib/module/views/Header/Header.js.map +1 -0
- package/lib/module/views/Header/HeaderContainer.js +118 -0
- package/lib/module/views/Header/HeaderContainer.js.map +1 -0
- package/lib/module/views/Header/HeaderSegment.js +130 -0
- package/lib/module/views/Header/HeaderSegment.js.map +1 -0
- package/lib/module/views/ModalStatusBarManager.js +34 -0
- package/lib/module/views/ModalStatusBarManager.js.map +1 -0
- package/lib/module/views/Screens.js +34 -0
- package/lib/module/views/Screens.js.map +1 -0
- package/lib/module/views/Stack/Card.js +458 -0
- package/lib/module/views/Stack/Card.js.map +1 -0
- package/lib/module/views/Stack/CardContainer.js +250 -0
- package/lib/module/views/Stack/CardContainer.js.map +1 -0
- package/lib/module/views/Stack/CardSheet.js +46 -0
- package/lib/module/views/Stack/CardSheet.js.map +1 -0
- package/lib/module/views/Stack/CardStack.js +432 -0
- package/lib/module/views/Stack/CardStack.js.map +1 -0
- package/lib/module/views/Stack/StackView.js +323 -0
- package/lib/module/views/Stack/StackView.js.map +1 -0
- package/lib/typescript/src/TransitionConfigs/CardStyleInterpolators.d.ts +35 -0
- package/lib/typescript/src/TransitionConfigs/CardStyleInterpolators.d.ts.map +1 -0
- package/lib/typescript/src/TransitionConfigs/HeaderStyleInterpolators.d.ts +23 -0
- package/lib/typescript/src/TransitionConfigs/HeaderStyleInterpolators.d.ts.map +1 -0
- package/lib/typescript/src/TransitionConfigs/TransitionPresets.d.ts +42 -0
- package/lib/typescript/src/TransitionConfigs/TransitionPresets.d.ts.map +1 -0
- package/lib/typescript/src/TransitionConfigs/TransitionSpecs.d.ts +36 -0
- package/lib/typescript/src/TransitionConfigs/TransitionSpecs.d.ts.map +1 -0
- package/lib/typescript/src/index.d.ts +29 -0
- package/lib/typescript/src/index.d.ts.map +1 -0
- package/lib/typescript/src/navigators/createStackNavigator.d.ts +8 -0
- package/lib/typescript/src/navigators/createStackNavigator.d.ts.map +1 -0
- package/lib/typescript/src/types.d.ts +481 -0
- package/lib/typescript/src/types.d.ts.map +1 -0
- package/lib/typescript/src/utils/CardAnimationContext.d.ts +5 -0
- package/lib/typescript/src/utils/CardAnimationContext.d.ts.map +1 -0
- package/lib/typescript/src/utils/GestureHandlerRefContext.d.ts +4 -0
- package/lib/typescript/src/utils/GestureHandlerRefContext.d.ts.map +1 -0
- package/lib/typescript/src/utils/ModalPresentationContext.d.ts +4 -0
- package/lib/typescript/src/utils/ModalPresentationContext.d.ts.map +1 -0
- package/lib/typescript/src/utils/conditional.d.ts +10 -0
- package/lib/typescript/src/utils/conditional.d.ts.map +1 -0
- package/lib/typescript/src/utils/debounce.d.ts +2 -0
- package/lib/typescript/src/utils/debounce.d.ts.map +1 -0
- package/lib/typescript/src/utils/findLastIndex.d.ts +2 -0
- package/lib/typescript/src/utils/findLastIndex.d.ts.map +1 -0
- package/lib/typescript/src/utils/getDistanceForDirection.d.ts +3 -0
- package/lib/typescript/src/utils/getDistanceForDirection.d.ts.map +1 -0
- package/lib/typescript/src/utils/getInvertedMultiplier.d.ts +3 -0
- package/lib/typescript/src/utils/getInvertedMultiplier.d.ts.map +1 -0
- package/lib/typescript/src/utils/memoize.d.ts +2 -0
- package/lib/typescript/src/utils/memoize.d.ts.map +1 -0
- package/lib/typescript/src/utils/useCardAnimation.d.ts +2 -0
- package/lib/typescript/src/utils/useCardAnimation.d.ts.map +1 -0
- package/lib/typescript/src/utils/useGestureHandlerRef.d.ts +3 -0
- package/lib/typescript/src/utils/useGestureHandlerRef.d.ts.map +1 -0
- package/lib/typescript/src/utils/useKeyboardManager.d.ts +6 -0
- package/lib/typescript/src/utils/useKeyboardManager.d.ts.map +1 -0
- package/lib/typescript/src/views/GestureHandler.android.d.ts +2 -0
- package/lib/typescript/src/views/GestureHandler.android.d.ts.map +1 -0
- package/lib/typescript/src/views/GestureHandler.d.ts +14 -0
- package/lib/typescript/src/views/GestureHandler.d.ts.map +1 -0
- package/lib/typescript/src/views/GestureHandler.ios.d.ts +2 -0
- package/lib/typescript/src/views/GestureHandler.ios.d.ts.map +1 -0
- package/lib/typescript/src/views/GestureHandlerNative.d.ts +6 -0
- package/lib/typescript/src/views/GestureHandlerNative.d.ts.map +1 -0
- package/lib/typescript/src/views/Header/Header.d.ts +5 -0
- package/lib/typescript/src/views/Header/Header.d.ts.map +1 -0
- package/lib/typescript/src/views/Header/HeaderContainer.d.ts +20 -0
- package/lib/typescript/src/views/Header/HeaderContainer.d.ts.map +1 -0
- package/lib/typescript/src/views/Header/HeaderSegment.d.ts +14 -0
- package/lib/typescript/src/views/Header/HeaderSegment.d.ts.map +1 -0
- package/lib/typescript/src/views/ModalStatusBarManager.d.ts +12 -0
- package/lib/typescript/src/views/ModalStatusBarManager.d.ts.map +1 -0
- package/lib/typescript/src/views/Screens.d.ts +13 -0
- package/lib/typescript/src/views/Screens.d.ts.map +1 -0
- package/lib/typescript/src/views/Stack/Card.d.ts +76 -0
- package/lib/typescript/src/views/Stack/Card.d.ts.map +1 -0
- package/lib/typescript/src/views/Stack/CardContainer.d.ts +63 -0
- package/lib/typescript/src/views/Stack/CardContainer.d.ts.map +1 -0
- package/lib/typescript/src/views/Stack/CardSheet.d.ts +15 -0
- package/lib/typescript/src/views/Stack/CardSheet.d.ts.map +1 -0
- package/lib/typescript/src/views/Stack/CardStack.d.ts +67 -0
- package/lib/typescript/src/views/Stack/CardStack.d.ts.map +1 -0
- package/lib/typescript/src/views/Stack/StackView.d.ts +122 -0
- package/lib/typescript/src/views/Stack/StackView.d.ts.map +1 -0
- package/package.json +1 -0
- package/src/TransitionConfigs/CardStyleInterpolators.tsx +394 -0
- package/src/TransitionConfigs/HeaderStyleInterpolators.tsx +268 -0
- package/src/TransitionConfigs/TransitionPresets.tsx +152 -0
- package/src/TransitionConfigs/TransitionSpecs.tsx +96 -0
- package/src/index.tsx +51 -0
- package/src/navigators/createStackNavigator.tsx +136 -0
- package/src/types.tsx +547 -0
- package/src/utils/CardAnimationContext.tsx +7 -0
- package/src/utils/GestureHandlerRefContext.tsx +5 -0
- package/src/utils/ModalPresentationContext.tsx +5 -0
- package/src/utils/conditional.tsx +33 -0
- package/src/utils/debounce.tsx +17 -0
- package/src/utils/findLastIndex.tsx +12 -0
- package/src/utils/getDistanceForDirection.tsx +18 -0
- package/src/utils/getInvertedMultiplier.tsx +18 -0
- package/src/utils/memoize.tsx +33 -0
- package/src/utils/useCardAnimation.tsx +15 -0
- package/src/utils/useGestureHandlerRef.tsx +15 -0
- package/src/utils/useKeyboardManager.tsx +105 -0
- package/src/views/GestureHandler.android.tsx +1 -0
- package/src/views/GestureHandler.ios.tsx +1 -0
- package/src/views/GestureHandler.tsx +23 -0
- package/src/views/GestureHandlerNative.tsx +23 -0
- package/src/views/Header/Header.tsx +72 -0
- package/src/views/Header/HeaderContainer.tsx +186 -0
- package/src/views/Header/HeaderSegment.tsx +205 -0
- package/src/views/ModalStatusBarManager.tsx +50 -0
- package/src/views/Screens.tsx +43 -0
- package/src/views/Stack/Card.tsx +628 -0
- package/src/views/Stack/CardContainer.tsx +320 -0
- package/src/views/Stack/CardSheet.tsx +61 -0
- package/src/views/Stack/CardStack.tsx +717 -0
- package/src/views/Stack/StackView.tsx +474 -0
|
@@ -0,0 +1,128 @@
|
|
|
1
|
+
import { Platform } from 'react-native';
|
|
2
|
+
import { forBottomSheetAndroid, forFadeFromBottomAndroid, forFadeFromCenter as forFadeCard, forHorizontalIOS, forModalPresentationIOS, forRevealFromBottomAndroid, forScaleFromCenterAndroid, forVerticalIOS } from './CardStyleInterpolators';
|
|
3
|
+
import { forFade } from './HeaderStyleInterpolators';
|
|
4
|
+
import { BottomSheetSlideInSpec, BottomSheetSlideOutSpec, FadeInFromBottomAndroidSpec, FadeOutToBottomAndroidSpec, RevealFromBottomAndroidSpec, ScaleFromCenterAndroidSpec, TransitionIOSSpec } from './TransitionSpecs';
|
|
5
|
+
const ANDROID_VERSION_PIE = 28;
|
|
6
|
+
const ANDROID_VERSION_10 = 29;
|
|
7
|
+
|
|
8
|
+
/**
|
|
9
|
+
* Standard iOS navigation transition.
|
|
10
|
+
*/
|
|
11
|
+
export const SlideFromRightIOS = {
|
|
12
|
+
gestureDirection: 'horizontal',
|
|
13
|
+
transitionSpec: {
|
|
14
|
+
open: TransitionIOSSpec,
|
|
15
|
+
close: TransitionIOSSpec
|
|
16
|
+
},
|
|
17
|
+
cardStyleInterpolator: forHorizontalIOS,
|
|
18
|
+
headerStyleInterpolator: forFade
|
|
19
|
+
};
|
|
20
|
+
|
|
21
|
+
/**
|
|
22
|
+
* Standard iOS navigation transition for modals.
|
|
23
|
+
*/
|
|
24
|
+
export const ModalSlideFromBottomIOS = {
|
|
25
|
+
gestureDirection: 'vertical',
|
|
26
|
+
transitionSpec: {
|
|
27
|
+
open: TransitionIOSSpec,
|
|
28
|
+
close: TransitionIOSSpec
|
|
29
|
+
},
|
|
30
|
+
cardStyleInterpolator: forVerticalIOS,
|
|
31
|
+
headerStyleInterpolator: forFade
|
|
32
|
+
};
|
|
33
|
+
|
|
34
|
+
/**
|
|
35
|
+
* Standard iOS modal presentation style (introduced in iOS 13).
|
|
36
|
+
*/
|
|
37
|
+
export const ModalPresentationIOS = {
|
|
38
|
+
gestureDirection: 'vertical',
|
|
39
|
+
transitionSpec: {
|
|
40
|
+
open: TransitionIOSSpec,
|
|
41
|
+
close: TransitionIOSSpec
|
|
42
|
+
},
|
|
43
|
+
cardStyleInterpolator: forModalPresentationIOS,
|
|
44
|
+
headerStyleInterpolator: forFade
|
|
45
|
+
};
|
|
46
|
+
|
|
47
|
+
/**
|
|
48
|
+
* Standard Android navigation transition when opening or closing an Activity on Android < 9 (Oreo).
|
|
49
|
+
*/
|
|
50
|
+
export const FadeFromBottomAndroid = {
|
|
51
|
+
gestureDirection: 'vertical',
|
|
52
|
+
transitionSpec: {
|
|
53
|
+
open: FadeInFromBottomAndroidSpec,
|
|
54
|
+
close: FadeOutToBottomAndroidSpec
|
|
55
|
+
},
|
|
56
|
+
cardStyleInterpolator: forFadeFromBottomAndroid,
|
|
57
|
+
headerStyleInterpolator: forFade
|
|
58
|
+
};
|
|
59
|
+
|
|
60
|
+
/**
|
|
61
|
+
* Standard Android navigation transition when opening or closing an Activity on Android 9 (Pie).
|
|
62
|
+
*/
|
|
63
|
+
export const RevealFromBottomAndroid = {
|
|
64
|
+
gestureDirection: 'vertical',
|
|
65
|
+
transitionSpec: {
|
|
66
|
+
open: RevealFromBottomAndroidSpec,
|
|
67
|
+
close: RevealFromBottomAndroidSpec
|
|
68
|
+
},
|
|
69
|
+
cardStyleInterpolator: forRevealFromBottomAndroid,
|
|
70
|
+
headerStyleInterpolator: forFade
|
|
71
|
+
};
|
|
72
|
+
|
|
73
|
+
/**
|
|
74
|
+
* Standard Android navigation transition when opening or closing an Activity on Android 10 (Q).
|
|
75
|
+
*/
|
|
76
|
+
export const ScaleFromCenterAndroid = {
|
|
77
|
+
gestureDirection: 'horizontal',
|
|
78
|
+
transitionSpec: {
|
|
79
|
+
open: ScaleFromCenterAndroidSpec,
|
|
80
|
+
close: ScaleFromCenterAndroidSpec
|
|
81
|
+
},
|
|
82
|
+
cardStyleInterpolator: forScaleFromCenterAndroid,
|
|
83
|
+
headerStyleInterpolator: forFade
|
|
84
|
+
};
|
|
85
|
+
|
|
86
|
+
/**
|
|
87
|
+
* Standard bottom sheet slide transition for Android 10.
|
|
88
|
+
*/
|
|
89
|
+
export const BottomSheetAndroid = {
|
|
90
|
+
gestureDirection: 'vertical',
|
|
91
|
+
transitionSpec: {
|
|
92
|
+
open: BottomSheetSlideInSpec,
|
|
93
|
+
close: BottomSheetSlideOutSpec
|
|
94
|
+
},
|
|
95
|
+
cardStyleInterpolator: forBottomSheetAndroid,
|
|
96
|
+
headerStyleInterpolator: forFade
|
|
97
|
+
};
|
|
98
|
+
|
|
99
|
+
/**
|
|
100
|
+
* Fade transition for transparent modals.
|
|
101
|
+
*/
|
|
102
|
+
export const ModalFadeTransition = {
|
|
103
|
+
gestureDirection: 'vertical',
|
|
104
|
+
transitionSpec: {
|
|
105
|
+
open: BottomSheetSlideInSpec,
|
|
106
|
+
close: BottomSheetSlideOutSpec
|
|
107
|
+
},
|
|
108
|
+
cardStyleInterpolator: forFadeCard,
|
|
109
|
+
headerStyleInterpolator: forFade
|
|
110
|
+
};
|
|
111
|
+
|
|
112
|
+
/**
|
|
113
|
+
* Default navigation transition for the current platform.
|
|
114
|
+
*/
|
|
115
|
+
export const DefaultTransition = Platform.select({
|
|
116
|
+
ios: SlideFromRightIOS,
|
|
117
|
+
android: Platform.Version >= ANDROID_VERSION_10 ? ScaleFromCenterAndroid : Platform.Version >= ANDROID_VERSION_PIE ? RevealFromBottomAndroid : FadeFromBottomAndroid,
|
|
118
|
+
default: ScaleFromCenterAndroid
|
|
119
|
+
});
|
|
120
|
+
|
|
121
|
+
/**
|
|
122
|
+
* Default modal transition for the current platform.
|
|
123
|
+
*/
|
|
124
|
+
export const ModalTransition = Platform.select({
|
|
125
|
+
ios: ModalPresentationIOS,
|
|
126
|
+
default: BottomSheetAndroid
|
|
127
|
+
});
|
|
128
|
+
//# sourceMappingURL=TransitionPresets.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["Platform","forBottomSheetAndroid","forFadeFromBottomAndroid","forFadeFromCenter","forFadeCard","forHorizontalIOS","forModalPresentationIOS","forRevealFromBottomAndroid","forScaleFromCenterAndroid","forVerticalIOS","forFade","BottomSheetSlideInSpec","BottomSheetSlideOutSpec","FadeInFromBottomAndroidSpec","FadeOutToBottomAndroidSpec","RevealFromBottomAndroidSpec","ScaleFromCenterAndroidSpec","TransitionIOSSpec","ANDROID_VERSION_PIE","ANDROID_VERSION_10","SlideFromRightIOS","gestureDirection","transitionSpec","open","close","cardStyleInterpolator","headerStyleInterpolator","ModalSlideFromBottomIOS","ModalPresentationIOS","FadeFromBottomAndroid","RevealFromBottomAndroid","ScaleFromCenterAndroid","BottomSheetAndroid","ModalFadeTransition","DefaultTransition","select","ios","android","Version","default","ModalTransition"],"sourceRoot":"../../../src","sources":["TransitionConfigs/TransitionPresets.tsx"],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1,94 @@
|
|
|
1
|
+
import { Easing } from 'react-native';
|
|
2
|
+
/**
|
|
3
|
+
* Exact values from UINavigationController's animation configuration.
|
|
4
|
+
*/
|
|
5
|
+
export const TransitionIOSSpec = {
|
|
6
|
+
animation: 'spring',
|
|
7
|
+
config: {
|
|
8
|
+
stiffness: 1000,
|
|
9
|
+
damping: 500,
|
|
10
|
+
mass: 3,
|
|
11
|
+
overshootClamping: true,
|
|
12
|
+
restDisplacementThreshold: 10,
|
|
13
|
+
restSpeedThreshold: 10
|
|
14
|
+
}
|
|
15
|
+
};
|
|
16
|
+
|
|
17
|
+
/**
|
|
18
|
+
* Configuration for activity open animation from Android Nougat.
|
|
19
|
+
* See http://aosp.opersys.com/xref/android-7.1.2_r37/xref/frameworks/base/core/res/res/anim/activity_open_enter.xml
|
|
20
|
+
*/
|
|
21
|
+
export const FadeInFromBottomAndroidSpec = {
|
|
22
|
+
animation: 'timing',
|
|
23
|
+
config: {
|
|
24
|
+
duration: 350,
|
|
25
|
+
easing: Easing.out(Easing.poly(5))
|
|
26
|
+
}
|
|
27
|
+
};
|
|
28
|
+
|
|
29
|
+
/**
|
|
30
|
+
* Configuration for activity close animation from Android Nougat.
|
|
31
|
+
* See http://aosp.opersys.com/xref/android-7.1.2_r37/xref/frameworks/base/core/res/res/anim/activity_close_exit.xml
|
|
32
|
+
*/
|
|
33
|
+
export const FadeOutToBottomAndroidSpec = {
|
|
34
|
+
animation: 'timing',
|
|
35
|
+
config: {
|
|
36
|
+
duration: 150,
|
|
37
|
+
easing: Easing.in(Easing.linear)
|
|
38
|
+
}
|
|
39
|
+
};
|
|
40
|
+
|
|
41
|
+
/**
|
|
42
|
+
* Approximate configuration for activity open animation from Android Pie.
|
|
43
|
+
* See http://aosp.opersys.com/xref/android-9.0.0_r47/xref/frameworks/base/core/res/res/anim/activity_open_enter.xml
|
|
44
|
+
*/
|
|
45
|
+
export const RevealFromBottomAndroidSpec = {
|
|
46
|
+
animation: 'timing',
|
|
47
|
+
config: {
|
|
48
|
+
duration: 425,
|
|
49
|
+
// This is super rough approximation of the path used for the curve by android
|
|
50
|
+
// See http://aosp.opersys.com/xref/android-9.0.0_r47/xref/frameworks/base/core/res/res/interpolator/fast_out_extra_slow_in.xml
|
|
51
|
+
easing: Easing.bezier(0.35, 0.45, 0, 1)
|
|
52
|
+
}
|
|
53
|
+
};
|
|
54
|
+
|
|
55
|
+
/**
|
|
56
|
+
* Approximate configuration for activity open animation from Android Q.
|
|
57
|
+
* See http://aosp.opersys.com/xref/android-10.0.0_r2/xref/frameworks/base/core/res/res/anim/activity_open_enter.xml
|
|
58
|
+
*/
|
|
59
|
+
export const ScaleFromCenterAndroidSpec = {
|
|
60
|
+
animation: 'timing',
|
|
61
|
+
config: {
|
|
62
|
+
duration: 400,
|
|
63
|
+
// This is super rough approximation of the path used for the curve by android
|
|
64
|
+
// See http://aosp.opersys.com/xref/android-10.0.0_r2/xref/frameworks/base/core/res/res/interpolator/fast_out_extra_slow_in.xml
|
|
65
|
+
easing: Easing.bezier(0.35, 0.45, 0, 1)
|
|
66
|
+
}
|
|
67
|
+
};
|
|
68
|
+
|
|
69
|
+
/**
|
|
70
|
+
* Configuration for bottom sheet slide in animation from Material Design.
|
|
71
|
+
* See https://github.com/material-components/material-components-android/blob/fd3639092e1ffef9dc11bcedf79f32801d85e898/lib/java/com/google/android/material/bottomsheet/res/anim/mtrl_bottom_sheet_slide_in.xml
|
|
72
|
+
*/
|
|
73
|
+
export const BottomSheetSlideInSpec = {
|
|
74
|
+
animation: 'timing',
|
|
75
|
+
config: {
|
|
76
|
+
duration: 250,
|
|
77
|
+
// See https://android.googlesource.com/platform/frameworks/base/+/master/core/java/android/view/animation/AccelerateDecelerateInterpolator.java
|
|
78
|
+
easing: t => Math.cos((t + 1) * Math.PI) / 2.0 + 0.5
|
|
79
|
+
}
|
|
80
|
+
};
|
|
81
|
+
|
|
82
|
+
/**
|
|
83
|
+
* Configuration for bottom sheet slide out animation from Material Design.
|
|
84
|
+
* See https://github.com/material-components/material-components-android/blob/fd3639092e1ffef9dc11bcedf79f32801d85e898/lib/java/com/google/android/material/bottomsheet/res/anim/mtrl_bottom_sheet_slide_in.xml
|
|
85
|
+
*/
|
|
86
|
+
export const BottomSheetSlideOutSpec = {
|
|
87
|
+
animation: 'timing',
|
|
88
|
+
config: {
|
|
89
|
+
duration: 200,
|
|
90
|
+
// See https://android.googlesource.com/platform/frameworks/base/+/master/core/java/android/view/animation/AccelerateInterpolator.java
|
|
91
|
+
easing: t => t === 1.0 ? 1 : Math.pow(t, 2)
|
|
92
|
+
}
|
|
93
|
+
};
|
|
94
|
+
//# sourceMappingURL=TransitionSpecs.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["Easing","TransitionIOSSpec","animation","config","stiffness","damping","mass","overshootClamping","restDisplacementThreshold","restSpeedThreshold","FadeInFromBottomAndroidSpec","duration","easing","out","poly","FadeOutToBottomAndroidSpec","in","linear","RevealFromBottomAndroidSpec","bezier","ScaleFromCenterAndroidSpec","BottomSheetSlideInSpec","t","Math","cos","PI","BottomSheetSlideOutSpec","pow"],"sourceRoot":"../../../src","sources":["TransitionConfigs/TransitionSpecs.tsx"],"mappings":"AAAA,SAASA,MAAM,QAAQ,cAAc;AAIrC;AACA;AACA;AACA,OAAO,MAAMC,iBAAiC,GAAG;EAC/CC,SAAS,EAAE,QAAQ;EACnBC,MAAM,EAAE;IACNC,SAAS,EAAE,IAAI;IACfC,OAAO,EAAE,GAAG;IACZC,IAAI,EAAE,CAAC;IACPC,iBAAiB,EAAE,IAAI;IACvBC,yBAAyB,EAAE,EAAE;IAC7BC,kBAAkB,EAAE;EACtB;AACF,CAAC;;AAED;AACA;AACA;AACA;AACA,OAAO,MAAMC,2BAA2C,GAAG;EACzDR,SAAS,EAAE,QAAQ;EACnBC,MAAM,EAAE;IACNQ,QAAQ,EAAE,GAAG;IACbC,MAAM,EAAEZ,MAAM,CAACa,GAAG,CAACb,MAAM,CAACc,IAAI,CAAC,CAAC,CAAC;EACnC;AACF,CAAC;;AAED;AACA;AACA;AACA;AACA,OAAO,MAAMC,0BAA0C,GAAG;EACxDb,SAAS,EAAE,QAAQ;EACnBC,MAAM,EAAE;IACNQ,QAAQ,EAAE,GAAG;IACbC,MAAM,EAAEZ,MAAM,CAACgB,EAAE,CAAChB,MAAM,CAACiB,MAAM;EACjC;AACF,CAAC;;AAED;AACA;AACA;AACA;AACA,OAAO,MAAMC,2BAA2C,GAAG;EACzDhB,SAAS,EAAE,QAAQ;EACnBC,MAAM,EAAE;IACNQ,QAAQ,EAAE,GAAG;IACb;IACA;IACAC,MAAM,EAAEZ,MAAM,CAACmB,MAAM,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC;EACxC;AACF,CAAC;;AAED;AACA;AACA;AACA;AACA,OAAO,MAAMC,0BAA0C,GAAG;EACxDlB,SAAS,EAAE,QAAQ;EACnBC,MAAM,EAAE;IACNQ,QAAQ,EAAE,GAAG;IACb;IACA;IACAC,MAAM,EAAEZ,MAAM,CAACmB,MAAM,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC;EACxC;AACF,CAAC;;AAED;AACA;AACA;AACA;AACA,OAAO,MAAME,sBAAsC,GAAG;EACpDnB,SAAS,EAAE,QAAQ;EACnBC,MAAM,EAAE;IACNQ,QAAQ,EAAE,GAAG;IACb;IACAC,MAAM,EAAGU,CAAC,IAAKC,IAAI,CAACC,GAAG,CAAC,CAACF,CAAC,GAAG,CAAC,IAAIC,IAAI,CAACE,EAAE,CAAC,GAAG,GAAG,GAAG;EACrD;AACF,CAAC;;AAED;AACA;AACA;AACA;AACA,OAAO,MAAMC,uBAAuC,GAAG;EACrDxB,SAAS,EAAE,QAAQ;EACnBC,MAAM,EAAE;IACNQ,QAAQ,EAAE,GAAG;IACb;IACAC,MAAM,EAAGU,CAAC,IAAMA,CAAC,KAAK,GAAG,GAAG,CAAC,GAAGC,IAAI,CAACI,GAAG,CAACL,CAAC,EAAE,CAAC;EAC/C;AACF,CAAC","ignoreList":[]}
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
import * as CardStyleInterpolators from './TransitionConfigs/CardStyleInterpolators';
|
|
2
|
+
import * as HeaderStyleInterpolators from './TransitionConfigs/HeaderStyleInterpolators';
|
|
3
|
+
import * as TransitionPresets from './TransitionConfigs/TransitionPresets';
|
|
4
|
+
import * as TransitionSpecs from './TransitionConfigs/TransitionSpecs';
|
|
5
|
+
|
|
6
|
+
/**
|
|
7
|
+
* Navigators
|
|
8
|
+
*/
|
|
9
|
+
export { default as createStackNavigator } from './navigators/createStackNavigator';
|
|
10
|
+
|
|
11
|
+
/**
|
|
12
|
+
* Views
|
|
13
|
+
*/
|
|
14
|
+
export { default as Header } from './views/Header/Header';
|
|
15
|
+
export { default as StackView } from './views/Stack/StackView';
|
|
16
|
+
|
|
17
|
+
/**
|
|
18
|
+
* Transition presets
|
|
19
|
+
*/
|
|
20
|
+
export { CardStyleInterpolators, HeaderStyleInterpolators, TransitionPresets, TransitionSpecs };
|
|
21
|
+
|
|
22
|
+
/**
|
|
23
|
+
* Utilities
|
|
24
|
+
*/
|
|
25
|
+
export { default as CardAnimationContext } from './utils/CardAnimationContext';
|
|
26
|
+
export { default as GestureHandlerRefContext } from './utils/GestureHandlerRefContext';
|
|
27
|
+
export { default as useCardAnimation } from './utils/useCardAnimation';
|
|
28
|
+
export { default as useGestureHandlerRef } from './utils/useGestureHandlerRef';
|
|
29
|
+
|
|
30
|
+
/**
|
|
31
|
+
* Types
|
|
32
|
+
*/
|
|
33
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["CardStyleInterpolators","HeaderStyleInterpolators","TransitionPresets","TransitionSpecs","default","createStackNavigator","Header","StackView","CardAnimationContext","GestureHandlerRefContext","useCardAnimation","useGestureHandlerRef"],"sourceRoot":"../../src","sources":["index.tsx"],"mappings":"AAAA,OAAO,KAAKA,sBAAsB,MAAM,4CAA4C;AACpF,OAAO,KAAKC,wBAAwB,MAAM,8CAA8C;AACxF,OAAO,KAAKC,iBAAiB,MAAM,uCAAuC;AAC1E,OAAO,KAAKC,eAAe,MAAM,qCAAqC;;AAEtE;AACA;AACA;AACA,SAASC,OAAO,IAAIC,oBAAoB,QAAQ,mCAAmC;;AAEnF;AACA;AACA;AACA,SAASD,OAAO,IAAIE,MAAM,QAAQ,uBAAuB;AACzD,SAASF,OAAO,IAAIG,SAAS,QAAQ,yBAAyB;;AAE9D;AACA;AACA;AACA,SACEP,sBAAsB,EACtBC,wBAAwB,EACxBC,iBAAiB,EACjBC,eAAe;;AAGjB;AACA;AACA;AACA,SAASC,OAAO,IAAII,oBAAoB,QAAQ,8BAA8B;AAC9E,SAASJ,OAAO,IAAIK,wBAAwB,QAAQ,kCAAkC;AACtF,SAASL,OAAO,IAAIM,gBAAgB,QAAQ,0BAA0B;AACtE,SAASN,OAAO,IAAIO,oBAAoB,QAAQ,8BAA8B;;AAE9E;AACA;AACA","ignoreList":[]}
|
|
@@ -0,0 +1,73 @@
|
|
|
1
|
+
function _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }
|
|
2
|
+
import { createNavigatorFactory, StackActions, StackRouter, useNavigationBuilder } from '@amazon-devices/react-navigation__native';
|
|
3
|
+
import * as React from 'react';
|
|
4
|
+
import warnOnce from 'warn-once';
|
|
5
|
+
import StackView from '../views/Stack/StackView';
|
|
6
|
+
function StackNavigator({
|
|
7
|
+
id,
|
|
8
|
+
initialRouteName,
|
|
9
|
+
children,
|
|
10
|
+
screenListeners,
|
|
11
|
+
screenOptions,
|
|
12
|
+
...rest
|
|
13
|
+
}) {
|
|
14
|
+
// @ts-expect-error: mode is deprecated
|
|
15
|
+
const mode = rest.mode;
|
|
16
|
+
warnOnce(mode != null, `Stack Navigator: 'mode="${mode}"' is deprecated. Use 'presentation: "${mode}"' in 'screenOptions' instead.\n\nSee https://reactnavigation.org/docs/stack-navigator#presentation for more details.`);
|
|
17
|
+
|
|
18
|
+
// @ts-expect-error: headerMode='none' is deprecated
|
|
19
|
+
const headerMode = rest.headerMode;
|
|
20
|
+
warnOnce(headerMode === 'none', `Stack Navigator: 'headerMode="none"' is deprecated. Use 'headerShown: false' in 'screenOptions' instead.\n\nSee https://reactnavigation.org/docs/stack-navigator/#headershown for more details.`);
|
|
21
|
+
warnOnce(headerMode != null && headerMode !== 'none', `Stack Navigator: 'headerMode' is moved to 'options'. Moved it to 'screenOptions' to keep current behavior.\n\nSee https://reactnavigation.org/docs/stack-navigator/#headermode for more details.`);
|
|
22
|
+
|
|
23
|
+
// @ts-expect-error: headerMode='none' is deprecated
|
|
24
|
+
const keyboardHandlingEnabled = rest.keyboardHandlingEnabled;
|
|
25
|
+
warnOnce(keyboardHandlingEnabled !== undefined, `Stack Navigator: 'keyboardHandlingEnabled' is moved to 'options'. Moved it to 'screenOptions' to keep current behavior.\n\nSee https://reactnavigation.org/docs/stack-navigator/#keyboardhandlingenabled for more details.`);
|
|
26
|
+
const defaultScreenOptions = {
|
|
27
|
+
presentation: mode,
|
|
28
|
+
headerShown: headerMode ? headerMode !== 'none' : true,
|
|
29
|
+
headerMode: headerMode && headerMode !== 'none' ? headerMode : undefined,
|
|
30
|
+
keyboardHandlingEnabled
|
|
31
|
+
};
|
|
32
|
+
const {
|
|
33
|
+
state,
|
|
34
|
+
descriptors,
|
|
35
|
+
navigation,
|
|
36
|
+
NavigationContent
|
|
37
|
+
} = useNavigationBuilder(StackRouter, {
|
|
38
|
+
id,
|
|
39
|
+
initialRouteName,
|
|
40
|
+
children,
|
|
41
|
+
screenListeners,
|
|
42
|
+
screenOptions,
|
|
43
|
+
defaultScreenOptions
|
|
44
|
+
});
|
|
45
|
+
React.useEffect(() => {
|
|
46
|
+
var _navigation$addListen;
|
|
47
|
+
return (// @ts-expect-error: there may not be a tab navigator in parent
|
|
48
|
+
(_navigation$addListen = navigation.addListener) === null || _navigation$addListen === void 0 ? void 0 : _navigation$addListen.call(navigation, 'tabPress', e => {
|
|
49
|
+
const isFocused = navigation.isFocused();
|
|
50
|
+
|
|
51
|
+
// Run the operation in the next frame so we're sure all listeners have been run
|
|
52
|
+
// This is necessary to know if preventDefault() has been called
|
|
53
|
+
requestAnimationFrame(() => {
|
|
54
|
+
if (state.index > 0 && isFocused && !e.defaultPrevented) {
|
|
55
|
+
// When user taps on already focused tab and we're inside the tab,
|
|
56
|
+
// reset the stack to replicate native behaviour
|
|
57
|
+
navigation.dispatch({
|
|
58
|
+
...StackActions.popToTop(),
|
|
59
|
+
target: state.key
|
|
60
|
+
});
|
|
61
|
+
}
|
|
62
|
+
});
|
|
63
|
+
})
|
|
64
|
+
);
|
|
65
|
+
}, [navigation, state.index, state.key]);
|
|
66
|
+
return /*#__PURE__*/React.createElement(NavigationContent, null, /*#__PURE__*/React.createElement(StackView, _extends({}, rest, {
|
|
67
|
+
state: state,
|
|
68
|
+
descriptors: descriptors,
|
|
69
|
+
navigation: navigation
|
|
70
|
+
})));
|
|
71
|
+
}
|
|
72
|
+
export default createNavigatorFactory(StackNavigator);
|
|
73
|
+
//# sourceMappingURL=createStackNavigator.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["createNavigatorFactory","StackActions","StackRouter","useNavigationBuilder","React","warnOnce","StackView","StackNavigator","id","initialRouteName","children","screenListeners","screenOptions","rest","mode","headerMode","keyboardHandlingEnabled","undefined","defaultScreenOptions","presentation","headerShown","state","descriptors","navigation","NavigationContent","useEffect","_navigation$addListen","addListener","call","e","isFocused","requestAnimationFrame","index","defaultPrevented","dispatch","popToTop","target","key","createElement","_extends"],"sourceRoot":"../../../src","sources":["navigators/createStackNavigator.tsx"],"mappings":";AAAA,SACEA,sBAAsB,EAKtBC,YAAY,EAEZC,WAAW,EAEXC,oBAAoB,QACf,gCAAgC;AACvC,OAAO,KAAKC,KAAK,MAAM,OAAO;AAC9B,OAAOC,QAAQ,MAAM,WAAW;AAQhC,OAAOC,SAAS,MAAM,0BAA0B;AAWhD,SAASC,cAAcA,CAAC;EACtBC,EAAE;EACFC,gBAAgB;EAChBC,QAAQ;EACRC,eAAe;EACfC,aAAa;EACb,GAAGC;AACE,CAAC,EAAE;EACR;EACA,MAAMC,IAAI,GAAGD,IAAI,CAACC,IAAoC;EAEtDT,QAAQ,CACNS,IAAI,IAAI,IAAI,EACZ,2BAA2BA,IAAI,yCAAyCA,IAAI,uHAC9E,CAAC;;EAED;EACA,MAAMC,UAAU,GAAGF,IAAI,CAACE,UAAkD;EAE1EV,QAAQ,CACNU,UAAU,KAAK,MAAM,EACrB,iMACF,CAAC;EAEDV,QAAQ,CACNU,UAAU,IAAI,IAAI,IAAIA,UAAU,KAAK,MAAM,EAC3C,kMACF,CAAC;;EAED;EACA,MAAMC,uBAAuB,GAAGH,IAAI,CAACG,uBAAuB;EAE5DX,QAAQ,CACNW,uBAAuB,KAAKC,SAAS,EACrC,4NACF,CAAC;EAED,MAAMC,oBAA4C,GAAG;IACnDC,YAAY,EAAEL,IAAI;IAClBM,WAAW,EAAEL,UAAU,GAAGA,UAAU,KAAK,MAAM,GAAG,IAAI;IACtDA,UAAU,EAAEA,UAAU,IAAIA,UAAU,KAAK,MAAM,GAAGA,UAAU,GAAGE,SAAS;IACxED;EACF,CAAC;EAED,MAAM;IAAEK,KAAK;IAAEC,WAAW;IAAEC,UAAU;IAAEC;EAAkB,CAAC,GACzDrB,oBAAoB,CAMlBD,WAAW,EAAE;IACbM,EAAE;IACFC,gBAAgB;IAChBC,QAAQ;IACRC,eAAe;IACfC,aAAa;IACbM;EACF,CAAC,CAAC;EAEJd,KAAK,CAACqB,SAAS,CACb;IAAA,IAAAC,qBAAA;IAAA,QACE;MAAA,CAAAA,qBAAA,GACAH,UAAU,CAACI,WAAW,cAAAD,qBAAA,uBAAtBA,qBAAA,CAAAE,IAAA,CAAAL,UAAU,EAAe,UAAU,EAAGM,CAAC,IAAK;QAC1C,MAAMC,SAAS,GAAGP,UAAU,CAACO,SAAS,CAAC,CAAC;;QAExC;QACA;QACAC,qBAAqB,CAAC,MAAM;UAC1B,IACEV,KAAK,CAACW,KAAK,GAAG,CAAC,IACfF,SAAS,IACT,CAAED,CAAC,CAA2CI,gBAAgB,EAC9D;YACA;YACA;YACAV,UAAU,CAACW,QAAQ,CAAC;cAClB,GAAGjC,YAAY,CAACkC,QAAQ,CAAC,CAAC;cAC1BC,MAAM,EAAEf,KAAK,CAACgB;YAChB,CAAC,CAAC;UACJ;QACF,CAAC,CAAC;MACJ,CAAC;IAAC;EAAA,GACJ,CAACd,UAAU,EAAEF,KAAK,CAACW,KAAK,EAAEX,KAAK,CAACgB,GAAG,CACrC,CAAC;EAED,oBACEjC,KAAA,CAAAkC,aAAA,CAACd,iBAAiB,qBAChBpB,KAAA,CAAAkC,aAAA,CAAChC,SAAS,EAAAiC,QAAA,KACJ1B,IAAI;IACRQ,KAAK,EAAEA,KAAM;IACbC,WAAW,EAAEA,WAAY;IACzBC,UAAU,EAAEA;EAAW,EACxB,CACgB,CAAC;AAExB;AAEA,eAAevB,sBAAsB,CAKnCO,cAAc,CAAC","ignoreList":[]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":[],"sourceRoot":"../../src","sources":["types.tsx"],"mappings":"","ignoreList":[]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["React","createContext","undefined"],"sourceRoot":"../../../src","sources":["utils/CardAnimationContext.tsx"],"mappings":"AAAA,OAAO,KAAKA,KAAK,MAAM,OAAO;AAI9B,4BAAeA,KAAK,CAACC,aAAa,CAChCC,SACF,CAAC","ignoreList":[]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["React","createContext"],"sourceRoot":"../../../src","sources":["utils/GestureHandlerRefContext.tsx"],"mappings":"AAAA,OAAO,KAAKA,KAAK,MAAM,OAAO;AAE9B,4BAAeA,KAAK,CAACC,aAAa,CAExB,IAAI,CAAC","ignoreList":[]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["React","ModalPresentationContext","createContext"],"sourceRoot":"../../../src","sources":["utils/ModalPresentationContext.tsx"],"mappings":"AAAA,OAAO,KAAKA,KAAK,MAAM,OAAO;AAE9B,MAAMC,wBAAwB,gBAAGD,KAAK,CAACE,aAAa,CAAC,KAAK,CAAC;AAE3D,eAAeD,wBAAwB","ignoreList":[]}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import { Animated } from 'react-native';
|
|
2
|
+
const {
|
|
3
|
+
add,
|
|
4
|
+
multiply
|
|
5
|
+
} = Animated;
|
|
6
|
+
|
|
7
|
+
/**
|
|
8
|
+
* Use an Animated Node based on a condition. Similar to Reanimated's `cond`.
|
|
9
|
+
*
|
|
10
|
+
* @param condition Animated Node representing the condition, must be 0 or 1, 1 means `true`, 0 means `false`
|
|
11
|
+
* @param main Animated Node to use if the condition is `true`
|
|
12
|
+
* @param fallback Animated Node to use if the condition is `false`
|
|
13
|
+
*/
|
|
14
|
+
export default function conditional(condition, main, fallback) {
|
|
15
|
+
// To implement this behavior, we multiply the main node with the condition.
|
|
16
|
+
// So if condition is 0, result will be 0, and if condition is 1, result will be main node.
|
|
17
|
+
// Then we multiple reverse of the condition (0 if condition is 1) with the fallback.
|
|
18
|
+
// So if condition is 0, result will be fallback node, and if condition is 1, result will be 0,
|
|
19
|
+
// This way, one of them will always be 0, and other one will be the value we need.
|
|
20
|
+
// In the end we add them both together, 0 + value we need = value we need
|
|
21
|
+
return add(multiply(condition, main), multiply(condition.interpolate({
|
|
22
|
+
inputRange: [0, 1],
|
|
23
|
+
outputRange: [1, 0]
|
|
24
|
+
}), fallback));
|
|
25
|
+
}
|
|
26
|
+
//# sourceMappingURL=conditional.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["Animated","add","multiply","conditional","condition","main","fallback","interpolate","inputRange","outputRange"],"sourceRoot":"../../../src","sources":["utils/conditional.tsx"],"mappings":"AAAA,SAASA,QAAQ,QAAQ,cAAc;AAEvC,MAAM;EAAEC,GAAG;EAAEC;AAAS,CAAC,GAAGF,QAAQ;;AAElC;AACA;AACA;AACA;AACA;AACA;AACA;AACA,eAAe,SAASG,WAAWA,CACjCC,SAAgD,EAChDC,IAA4C,EAC5CC,QAAgD,EAChD;EACA;EACA;EACA;EACA;EACA;EACA;EACA,OAAOL,GAAG,CACRC,QAAQ,CAACE,SAAS,EAAEC,IAAI,CAAC,EACzBH,QAAQ,CACNE,SAAS,CAACG,WAAW,CAAC;IACpBC,UAAU,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC;IAClBC,WAAW,EAAE,CAAC,CAAC,EAAE,CAAC;EACpB,CAAC,CAAC,EACFH,QACF,CACF,CAAC;AACH","ignoreList":[]}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
export default function debounce(func, duration) {
|
|
2
|
+
let timeout;
|
|
3
|
+
return function (...args) {
|
|
4
|
+
if (!timeout) {
|
|
5
|
+
// eslint-disable-next-line babel/no-invalid-this
|
|
6
|
+
func.apply(this, args);
|
|
7
|
+
timeout = setTimeout(() => {
|
|
8
|
+
timeout = undefined;
|
|
9
|
+
}, duration);
|
|
10
|
+
}
|
|
11
|
+
};
|
|
12
|
+
}
|
|
13
|
+
//# sourceMappingURL=debounce.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["debounce","func","duration","timeout","args","apply","setTimeout","undefined"],"sourceRoot":"../../../src","sources":["utils/debounce.tsx"],"mappings":"AAAA,eAAe,SAASA,QAAQA,CAC9BC,IAAO,EACPC,QAAgB,EACb;EACH,IAAIC,OAA4C;EAEhD,OAAO,UAAqB,GAAGC,IAAI,EAAE;IACnC,IAAI,CAACD,OAAO,EAAE;MACZ;MACAF,IAAI,CAACI,KAAK,CAAC,IAAI,EAAED,IAAI,CAAC;MAEtBD,OAAO,GAAGG,UAAU,CAAC,MAAM;QACzBH,OAAO,GAAGI,SAAS;MACrB,CAAC,EAAEL,QAAQ,CAAC;IACd;EACF,CAAC;AACH","ignoreList":[]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["findLastIndex","array","callback","i","length"],"sourceRoot":"../../../src","sources":["utils/findLastIndex.tsx"],"mappings":"AAAA,eAAe,SAASA,aAAaA,CACnCC,KAAU,EACVC,QAA+B,EAC/B;EACA,KAAK,IAAIC,CAAC,GAAGF,KAAK,CAACG,MAAM,GAAG,CAAC,EAAED,CAAC,IAAI,CAAC,EAAEA,CAAC,EAAE,EAAE;IAC1C,IAAID,QAAQ,CAACD,KAAK,CAACE,CAAC,CAAC,CAAC,EAAE;MACtB,OAAOA,CAAC;IACV;EACF;EAEA,OAAO,CAAC,CAAC;AACX","ignoreList":[]}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import getInvertedMultiplier from './getInvertedMultiplier';
|
|
2
|
+
export default function getDistanceForDirection(layout, gestureDirection) {
|
|
3
|
+
const multiplier = getInvertedMultiplier(gestureDirection);
|
|
4
|
+
switch (gestureDirection) {
|
|
5
|
+
case 'vertical':
|
|
6
|
+
case 'vertical-inverted':
|
|
7
|
+
return layout.height * multiplier;
|
|
8
|
+
case 'horizontal':
|
|
9
|
+
case 'horizontal-inverted':
|
|
10
|
+
return layout.width * multiplier;
|
|
11
|
+
}
|
|
12
|
+
}
|
|
13
|
+
//# sourceMappingURL=getDistanceForDirection.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["getInvertedMultiplier","getDistanceForDirection","layout","gestureDirection","multiplier","height","width"],"sourceRoot":"../../../src","sources":["utils/getDistanceForDirection.tsx"],"mappings":"AACA,OAAOA,qBAAqB,MAAM,yBAAyB;AAE3D,eAAe,SAASC,uBAAuBA,CAC7CC,MAAc,EACdC,gBAAkC,EAC1B;EACR,MAAMC,UAAU,GAAGJ,qBAAqB,CAACG,gBAAgB,CAAC;EAE1D,QAAQA,gBAAgB;IACtB,KAAK,UAAU;IACf,KAAK,mBAAmB;MACtB,OAAOD,MAAM,CAACG,MAAM,GAAGD,UAAU;IACnC,KAAK,YAAY;IACjB,KAAK,qBAAqB;MACxB,OAAOF,MAAM,CAACI,KAAK,GAAGF,UAAU;EACpC;AACF","ignoreList":[]}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { I18nManager } from 'react-native';
|
|
2
|
+
export default function getInvertedMultiplier(gestureDirection) {
|
|
3
|
+
switch (gestureDirection) {
|
|
4
|
+
case 'vertical':
|
|
5
|
+
return 1;
|
|
6
|
+
case 'vertical-inverted':
|
|
7
|
+
return -1;
|
|
8
|
+
case 'horizontal':
|
|
9
|
+
return I18nManager.getConstants().isRTL ? -1 : 1;
|
|
10
|
+
case 'horizontal-inverted':
|
|
11
|
+
return I18nManager.getConstants().isRTL ? 1 : -1;
|
|
12
|
+
}
|
|
13
|
+
}
|
|
14
|
+
//# sourceMappingURL=getInvertedMultiplier.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["I18nManager","getInvertedMultiplier","gestureDirection","getConstants","isRTL"],"sourceRoot":"../../../src","sources":["utils/getInvertedMultiplier.tsx"],"mappings":"AAAA,SAASA,WAAW,QAAQ,cAAc;AAI1C,eAAe,SAASC,qBAAqBA,CAC3CC,gBAAkC,EAC1B;EACR,QAAQA,gBAAgB;IACtB,KAAK,UAAU;MACb,OAAO,CAAC;IACV,KAAK,mBAAmB;MACtB,OAAO,CAAC,CAAC;IACX,KAAK,YAAY;MACf,OAAOF,WAAW,CAACG,YAAY,CAAC,CAAC,CAACC,KAAK,GAAG,CAAC,CAAC,GAAG,CAAC;IAClD,KAAK,qBAAqB;MACxB,OAAOJ,WAAW,CAACG,YAAY,CAAC,CAAC,CAACC,KAAK,GAAG,CAAC,GAAG,CAAC,CAAC;EACpD;AACF","ignoreList":[]}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
export default function memoize(callback) {
|
|
2
|
+
let previous;
|
|
3
|
+
let result;
|
|
4
|
+
return (...dependencies) => {
|
|
5
|
+
let hasChanged = false;
|
|
6
|
+
if (previous) {
|
|
7
|
+
if (previous.length !== dependencies.length) {
|
|
8
|
+
hasChanged = true;
|
|
9
|
+
} else {
|
|
10
|
+
for (let i = 0; i < previous.length; i++) {
|
|
11
|
+
if (previous[i] !== dependencies[i]) {
|
|
12
|
+
hasChanged = true;
|
|
13
|
+
break;
|
|
14
|
+
}
|
|
15
|
+
}
|
|
16
|
+
}
|
|
17
|
+
} else {
|
|
18
|
+
hasChanged = true;
|
|
19
|
+
}
|
|
20
|
+
previous = dependencies;
|
|
21
|
+
if (hasChanged || result === undefined) {
|
|
22
|
+
result = callback(...dependencies);
|
|
23
|
+
}
|
|
24
|
+
return result;
|
|
25
|
+
};
|
|
26
|
+
}
|
|
27
|
+
//# sourceMappingURL=memoize.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["memoize","callback","previous","result","dependencies","hasChanged","length","i","undefined"],"sourceRoot":"../../../src","sources":["utils/memoize.tsx"],"mappings":"AAAA,eAAe,SAASA,OAAOA,CAC7BC,QAAmC,EACnC;EACA,IAAIC,QAA0B;EAC9B,IAAIC,MAA0B;EAE9B,OAAO,CAAC,GAAGC,YAAkB,KAAa;IACxC,IAAIC,UAAU,GAAG,KAAK;IAEtB,IAAIH,QAAQ,EAAE;MACZ,IAAIA,QAAQ,CAACI,MAAM,KAAKF,YAAY,CAACE,MAAM,EAAE;QAC3CD,UAAU,GAAG,IAAI;MACnB,CAAC,MAAM;QACL,KAAK,IAAIE,CAAC,GAAG,CAAC,EAAEA,CAAC,GAAGL,QAAQ,CAACI,MAAM,EAAEC,CAAC,EAAE,EAAE;UACxC,IAAIL,QAAQ,CAACK,CAAC,CAAC,KAAKH,YAAY,CAACG,CAAC,CAAC,EAAE;YACnCF,UAAU,GAAG,IAAI;YACjB;UACF;QACF;MACF;IACF,CAAC,MAAM;MACLA,UAAU,GAAG,IAAI;IACnB;IAEAH,QAAQ,GAAGE,YAAY;IAEvB,IAAIC,UAAU,IAAIF,MAAM,KAAKK,SAAS,EAAE;MACtCL,MAAM,GAAGF,QAAQ,CAAC,GAAGG,YAAY,CAAC;IACpC;IAEA,OAAOD,MAAM;EACf,CAAC;AACH","ignoreList":[]}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import * as React from 'react';
|
|
2
|
+
import CardAnimationContext from './CardAnimationContext';
|
|
3
|
+
export default function useCardAnimation() {
|
|
4
|
+
const animation = React.useContext(CardAnimationContext);
|
|
5
|
+
if (animation === undefined) {
|
|
6
|
+
throw new Error("Couldn't find values for card animation. Are you inside a screen in Stack?");
|
|
7
|
+
}
|
|
8
|
+
return animation;
|
|
9
|
+
}
|
|
10
|
+
//# sourceMappingURL=useCardAnimation.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["React","CardAnimationContext","useCardAnimation","animation","useContext","undefined","Error"],"sourceRoot":"../../../src","sources":["utils/useCardAnimation.tsx"],"mappings":"AAAA,OAAO,KAAKA,KAAK,MAAM,OAAO;AAE9B,OAAOC,oBAAoB,MAAM,wBAAwB;AAEzD,eAAe,SAASC,gBAAgBA,CAAA,EAAG;EACzC,MAAMC,SAAS,GAAGH,KAAK,CAACI,UAAU,CAACH,oBAAoB,CAAC;EAExD,IAAIE,SAAS,KAAKE,SAAS,EAAE;IAC3B,MAAM,IAAIC,KAAK,CACb,4EACF,CAAC;EACH;EAEA,OAAOH,SAAS;AAClB","ignoreList":[]}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import * as React from 'react';
|
|
2
|
+
import StackGestureRefContext from './GestureHandlerRefContext';
|
|
3
|
+
export default function useGestureHandlerRef() {
|
|
4
|
+
const ref = React.useContext(StackGestureRefContext);
|
|
5
|
+
if (ref === undefined) {
|
|
6
|
+
throw new Error("Couldn't find a ref for gesture handler. Are you inside a screen in Stack?");
|
|
7
|
+
}
|
|
8
|
+
return ref;
|
|
9
|
+
}
|
|
10
|
+
//# sourceMappingURL=useGestureHandlerRef.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["React","StackGestureRefContext","useGestureHandlerRef","ref","useContext","undefined","Error"],"sourceRoot":"../../../src","sources":["utils/useGestureHandlerRef.tsx"],"mappings":"AAAA,OAAO,KAAKA,KAAK,MAAM,OAAO;AAE9B,OAAOC,sBAAsB,MAAM,4BAA4B;AAE/D,eAAe,SAASC,oBAAoBA,CAAA,EAAG;EAC7C,MAAMC,GAAG,GAAGH,KAAK,CAACI,UAAU,CAACH,sBAAsB,CAAC;EAEpD,IAAIE,GAAG,KAAKE,SAAS,EAAE;IACrB,MAAM,IAAIC,KAAK,CACb,4EACF,CAAC;EACH;EAEA,OAAOH,GAAG;AACZ","ignoreList":[]}
|