@react-navigation/stack 6.3.7 → 6.3.9
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.js +12 -22
- package/lib/commonjs/TransitionConfigs/CardStyleInterpolators.js.map +1 -1
- package/lib/commonjs/TransitionConfigs/HeaderStyleInterpolators.js +11 -16
- package/lib/commonjs/TransitionConfigs/HeaderStyleInterpolators.js.map +1 -1
- package/lib/commonjs/TransitionConfigs/TransitionPresets.js +10 -19
- package/lib/commonjs/TransitionConfigs/TransitionPresets.js.map +1 -1
- package/lib/commonjs/TransitionConfigs/TransitionSpecs.js +6 -8
- package/lib/commonjs/TransitionConfigs/TransitionSpecs.js.map +1 -1
- package/lib/commonjs/index.js +0 -18
- package/lib/commonjs/index.js.map +1 -1
- package/lib/commonjs/navigators/createStackNavigator.js +9 -17
- package/lib/commonjs/navigators/createStackNavigator.js.map +1 -1
- package/lib/commonjs/types.js.map +1 -1
- package/lib/commonjs/utils/CardAnimationContext.js +0 -5
- package/lib/commonjs/utils/CardAnimationContext.js.map +1 -1
- package/lib/commonjs/utils/GestureHandlerRefContext.js +0 -5
- package/lib/commonjs/utils/GestureHandlerRefContext.js.map +1 -1
- package/lib/commonjs/utils/ModalPresentationContext.js +0 -4
- package/lib/commonjs/utils/ModalPresentationContext.js.map +1 -1
- package/lib/commonjs/utils/conditional.js +1 -3
- package/lib/commonjs/utils/conditional.js.map +1 -1
- package/lib/commonjs/utils/debounce.js +0 -2
- package/lib/commonjs/utils/debounce.js.map +1 -1
- package/lib/commonjs/utils/getDistanceForDirection.js +0 -5
- package/lib/commonjs/utils/getDistanceForDirection.js.map +1 -1
- package/lib/commonjs/utils/getInvertedMultiplier.js +0 -5
- package/lib/commonjs/utils/getInvertedMultiplier.js.map +1 -1
- package/lib/commonjs/utils/memoize.js +0 -6
- package/lib/commonjs/utils/memoize.js.map +1 -1
- package/lib/commonjs/utils/useCardAnimation.js +0 -8
- package/lib/commonjs/utils/useCardAnimation.js.map +1 -1
- package/lib/commonjs/utils/useGestureHandlerRef.js +0 -8
- package/lib/commonjs/utils/useGestureHandlerRef.js.map +1 -1
- package/lib/commonjs/utils/useKeyboardManager.js +14 -20
- package/lib/commonjs/utils/useKeyboardManager.js.map +1 -1
- package/lib/commonjs/views/GestureHandler.android.js +0 -2
- package/lib/commonjs/views/GestureHandler.android.js.map +1 -1
- package/lib/commonjs/views/GestureHandler.ios.js +0 -2
- package/lib/commonjs/views/GestureHandler.ios.js.map +1 -1
- package/lib/commonjs/views/GestureHandler.js +0 -6
- package/lib/commonjs/views/GestureHandler.js.map +1 -1
- package/lib/commonjs/views/GestureHandlerNative.js +0 -8
- package/lib/commonjs/views/GestureHandlerNative.js.map +1 -1
- package/lib/commonjs/views/Header/Header.js +7 -18
- package/lib/commonjs/views/Header/Header.js.map +1 -1
- package/lib/commonjs/views/Header/HeaderContainer.js +10 -23
- package/lib/commonjs/views/Header/HeaderContainer.js.map +1 -1
- package/lib/commonjs/views/Header/HeaderSegment.js +6 -20
- package/lib/commonjs/views/Header/HeaderSegment.js.map +1 -1
- package/lib/commonjs/views/ModalStatusBarManager.js +1 -11
- package/lib/commonjs/views/ModalStatusBarManager.js.map +1 -1
- package/lib/commonjs/views/Screens.js +2 -16
- package/lib/commonjs/views/Screens.js.map +1 -1
- package/lib/commonjs/views/Stack/Card.js +17 -80
- package/lib/commonjs/views/Stack/Card.js.map +1 -1
- package/lib/commonjs/views/Stack/CardContainer.js +3 -30
- package/lib/commonjs/views/Stack/CardContainer.js.map +1 -1
- package/lib/commonjs/views/Stack/CardSheet.js +2 -11
- package/lib/commonjs/views/Stack/CardSheet.js.map +1 -1
- package/lib/commonjs/views/Stack/CardStack.js +23 -78
- package/lib/commonjs/views/Stack/CardStack.js.map +1 -1
- package/lib/commonjs/views/Stack/StackView.js +33 -65
- package/lib/commonjs/views/Stack/StackView.js.map +1 -1
- package/lib/module/TransitionConfigs/CardStyleInterpolators.js +12 -10
- package/lib/module/TransitionConfigs/CardStyleInterpolators.js.map +1 -1
- package/lib/module/TransitionConfigs/HeaderStyleInterpolators.js +11 -9
- package/lib/module/TransitionConfigs/HeaderStyleInterpolators.js.map +1 -1
- package/lib/module/TransitionConfigs/TransitionPresets.js +10 -10
- package/lib/module/TransitionConfigs/TransitionPresets.js.map +1 -1
- package/lib/module/TransitionConfigs/TransitionSpecs.js +6 -7
- package/lib/module/TransitionConfigs/TransitionSpecs.js.map +1 -1
- package/lib/module/index.js +5 -4
- package/lib/module/index.js.map +1 -1
- package/lib/module/navigators/createStackNavigator.js +9 -9
- package/lib/module/navigators/createStackNavigator.js.map +1 -1
- package/lib/module/types.js.map +1 -1
- package/lib/module/utils/CardAnimationContext.js.map +1 -1
- package/lib/module/utils/GestureHandlerRefContext.js.map +1 -1
- package/lib/module/utils/ModalPresentationContext.js.map +1 -1
- package/lib/module/utils/conditional.js +1 -1
- package/lib/module/utils/conditional.js.map +1 -1
- package/lib/module/utils/debounce.js +0 -1
- package/lib/module/utils/debounce.js.map +1 -1
- package/lib/module/utils/getDistanceForDirection.js +0 -2
- package/lib/module/utils/getDistanceForDirection.js.map +1 -1
- package/lib/module/utils/getInvertedMultiplier.js +0 -3
- package/lib/module/utils/getInvertedMultiplier.js.map +1 -1
- package/lib/module/utils/memoize.js +0 -5
- package/lib/module/utils/memoize.js.map +1 -1
- package/lib/module/utils/useCardAnimation.js +0 -2
- package/lib/module/utils/useCardAnimation.js.map +1 -1
- package/lib/module/utils/useGestureHandlerRef.js +0 -2
- package/lib/module/utils/useGestureHandlerRef.js.map +1 -1
- package/lib/module/utils/useKeyboardManager.js +14 -13
- package/lib/module/utils/useKeyboardManager.js.map +1 -1
- package/lib/module/views/GestureHandler.android.js.map +1 -1
- package/lib/module/views/GestureHandler.ios.js.map +1 -1
- package/lib/module/views/GestureHandler.js +0 -2
- package/lib/module/views/GestureHandler.js.map +1 -1
- package/lib/module/views/GestureHandlerNative.js +0 -1
- package/lib/module/views/GestureHandlerNative.js.map +1 -1
- package/lib/module/views/Header/Header.js +7 -6
- package/lib/module/views/Header/Header.js.map +1 -1
- package/lib/module/views/Header/HeaderContainer.js +10 -12
- package/lib/module/views/Header/HeaderContainer.js.map +1 -1
- package/lib/module/views/Header/HeaderSegment.js +6 -10
- package/lib/module/views/Header/HeaderSegment.js.map +1 -1
- package/lib/module/views/ModalStatusBarManager.js +1 -3
- package/lib/module/views/ModalStatusBarManager.js.map +1 -1
- package/lib/module/views/Screens.js +2 -8
- package/lib/module/views/Screens.js.map +1 -1
- package/lib/module/views/Stack/Card.js +17 -58
- package/lib/module/views/Stack/Card.js.map +1 -1
- package/lib/module/views/Stack/CardContainer.js +3 -17
- package/lib/module/views/Stack/CardContainer.js.map +1 -1
- package/lib/module/views/Stack/CardSheet.js +2 -4
- package/lib/module/views/Stack/CardSheet.js.map +1 -1
- package/lib/module/views/Stack/CardStack.js +23 -60
- package/lib/module/views/Stack/CardStack.js.map +1 -1
- package/lib/module/views/Stack/StackView.js +34 -51
- package/lib/module/views/Stack/StackView.js.map +1 -1
- package/lib/typescript/src/TransitionConfigs/CardStyleInterpolators.d.ts +1 -0
- package/lib/typescript/src/TransitionConfigs/CardStyleInterpolators.d.ts.map +1 -0
- package/lib/typescript/src/TransitionConfigs/HeaderStyleInterpolators.d.ts +1 -0
- package/lib/typescript/src/TransitionConfigs/HeaderStyleInterpolators.d.ts.map +1 -0
- package/lib/typescript/src/TransitionConfigs/TransitionPresets.d.ts +1 -0
- package/lib/typescript/src/TransitionConfigs/TransitionPresets.d.ts.map +1 -0
- package/lib/typescript/src/TransitionConfigs/TransitionSpecs.d.ts +1 -0
- package/lib/typescript/src/TransitionConfigs/TransitionSpecs.d.ts.map +1 -0
- package/lib/typescript/src/index.d.ts +1 -0
- package/lib/typescript/src/index.d.ts.map +1 -0
- package/lib/typescript/src/navigators/createStackNavigator.d.ts +1 -0
- package/lib/typescript/src/navigators/createStackNavigator.d.ts.map +1 -0
- package/lib/typescript/src/types.d.ts +1 -0
- package/lib/typescript/src/types.d.ts.map +1 -0
- package/lib/typescript/src/utils/CardAnimationContext.d.ts +1 -0
- package/lib/typescript/src/utils/CardAnimationContext.d.ts.map +1 -0
- package/lib/typescript/src/utils/GestureHandlerRefContext.d.ts +1 -0
- package/lib/typescript/src/utils/GestureHandlerRefContext.d.ts.map +1 -0
- package/lib/typescript/src/utils/ModalPresentationContext.d.ts +1 -0
- package/lib/typescript/src/utils/ModalPresentationContext.d.ts.map +1 -0
- package/lib/typescript/src/utils/conditional.d.ts +1 -0
- package/lib/typescript/src/utils/conditional.d.ts.map +1 -0
- package/lib/typescript/src/utils/debounce.d.ts +1 -0
- package/lib/typescript/src/utils/debounce.d.ts.map +1 -0
- package/lib/typescript/src/utils/getDistanceForDirection.d.ts +1 -0
- package/lib/typescript/src/utils/getDistanceForDirection.d.ts.map +1 -0
- package/lib/typescript/src/utils/getInvertedMultiplier.d.ts +1 -0
- package/lib/typescript/src/utils/getInvertedMultiplier.d.ts.map +1 -0
- package/lib/typescript/src/utils/memoize.d.ts +1 -0
- package/lib/typescript/src/utils/memoize.d.ts.map +1 -0
- package/lib/typescript/src/utils/useCardAnimation.d.ts +1 -0
- package/lib/typescript/src/utils/useCardAnimation.d.ts.map +1 -0
- package/lib/typescript/src/utils/useGestureHandlerRef.d.ts +1 -0
- package/lib/typescript/src/utils/useGestureHandlerRef.d.ts.map +1 -0
- package/lib/typescript/src/utils/useKeyboardManager.d.ts +1 -0
- package/lib/typescript/src/utils/useKeyboardManager.d.ts.map +1 -0
- package/lib/typescript/src/views/GestureHandler.android.d.ts +1 -0
- package/lib/typescript/src/views/GestureHandler.android.d.ts.map +1 -0
- package/lib/typescript/src/views/GestureHandler.d.ts +1 -0
- package/lib/typescript/src/views/GestureHandler.d.ts.map +1 -0
- package/lib/typescript/src/views/GestureHandler.ios.d.ts +1 -0
- package/lib/typescript/src/views/GestureHandler.ios.d.ts.map +1 -0
- package/lib/typescript/src/views/GestureHandlerNative.d.ts +1 -0
- package/lib/typescript/src/views/GestureHandlerNative.d.ts.map +1 -0
- package/lib/typescript/src/views/Header/Header.d.ts +1 -0
- package/lib/typescript/src/views/Header/Header.d.ts.map +1 -0
- package/lib/typescript/src/views/Header/HeaderContainer.d.ts +1 -0
- package/lib/typescript/src/views/Header/HeaderContainer.d.ts.map +1 -0
- package/lib/typescript/src/views/Header/HeaderSegment.d.ts +1 -0
- package/lib/typescript/src/views/Header/HeaderSegment.d.ts.map +1 -0
- package/lib/typescript/src/views/ModalStatusBarManager.d.ts +1 -0
- package/lib/typescript/src/views/ModalStatusBarManager.d.ts.map +1 -0
- package/lib/typescript/src/views/Screens.d.ts +1 -0
- package/lib/typescript/src/views/Screens.d.ts.map +1 -0
- package/lib/typescript/src/views/Stack/Card.d.ts +1 -0
- package/lib/typescript/src/views/Stack/Card.d.ts.map +1 -0
- package/lib/typescript/src/views/Stack/CardContainer.d.ts +1 -0
- package/lib/typescript/src/views/Stack/CardContainer.d.ts.map +1 -0
- package/lib/typescript/src/views/Stack/CardSheet.d.ts +1 -0
- package/lib/typescript/src/views/Stack/CardSheet.d.ts.map +1 -0
- package/lib/typescript/src/views/Stack/CardStack.d.ts +1 -0
- package/lib/typescript/src/views/Stack/CardStack.d.ts.map +1 -0
- package/lib/typescript/src/views/Stack/StackView.d.ts +1 -0
- package/lib/typescript/src/views/Stack/StackView.d.ts.map +1 -0
- package/package.json +5 -5
|
@@ -4,35 +4,22 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
6
|
exports.default = void 0;
|
|
7
|
-
|
|
8
7
|
var _elements = require("@react-navigation/elements");
|
|
9
|
-
|
|
10
8
|
var _color = _interopRequireDefault(require("color"));
|
|
11
|
-
|
|
12
9
|
var React = _interopRequireWildcard(require("react"));
|
|
13
|
-
|
|
14
10
|
var _reactNative = require("react-native");
|
|
15
|
-
|
|
16
11
|
var _CardStyleInterpolators = require("../../TransitionConfigs/CardStyleInterpolators");
|
|
17
|
-
|
|
18
12
|
var _TransitionPresets = require("../../TransitionConfigs/TransitionPresets");
|
|
19
|
-
|
|
20
13
|
var _getDistanceForDirection = _interopRequireDefault(require("../../utils/getDistanceForDirection"));
|
|
21
|
-
|
|
22
14
|
var _Screens = require("../Screens");
|
|
23
|
-
|
|
24
15
|
var _Card = require("./Card");
|
|
25
|
-
|
|
26
16
|
var _CardContainer = _interopRequireDefault(require("./CardContainer"));
|
|
27
|
-
|
|
28
17
|
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
|
|
29
|
-
|
|
30
18
|
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
|
|
31
|
-
|
|
32
19
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
33
|
-
|
|
34
|
-
function
|
|
35
|
-
|
|
20
|
+
function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
|
|
21
|
+
function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return typeof key === "symbol" ? key : String(key); }
|
|
22
|
+
function _toPrimitive(input, hint) { if (typeof input !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (typeof res !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); }
|
|
36
23
|
const EPSILON = 1e-5;
|
|
37
24
|
const STATE_INACTIVE = 0;
|
|
38
25
|
const STATE_TRANSITIONING_OR_BELOW_TOP = 1;
|
|
@@ -40,34 +27,27 @@ const STATE_ON_TOP = 2;
|
|
|
40
27
|
const FALLBACK_DESCRIPTOR = Object.freeze({
|
|
41
28
|
options: {}
|
|
42
29
|
});
|
|
43
|
-
|
|
44
30
|
const getInterpolationIndex = (scenes, index) => {
|
|
45
31
|
const {
|
|
46
32
|
cardStyleInterpolator
|
|
47
|
-
} = scenes[index].descriptor.options;
|
|
33
|
+
} = scenes[index].descriptor.options;
|
|
48
34
|
|
|
35
|
+
// Start from current card and count backwards the number of cards with same interpolation
|
|
49
36
|
let interpolationIndex = 0;
|
|
50
|
-
|
|
51
37
|
for (let i = index - 1; i >= 0; i--) {
|
|
52
38
|
var _scenes$i;
|
|
53
|
-
|
|
54
39
|
const cardStyleInterpolatorCurrent = (_scenes$i = scenes[i]) === null || _scenes$i === void 0 ? void 0 : _scenes$i.descriptor.options.cardStyleInterpolator;
|
|
55
|
-
|
|
56
40
|
if (cardStyleInterpolatorCurrent !== cardStyleInterpolator) {
|
|
57
41
|
break;
|
|
58
42
|
}
|
|
59
|
-
|
|
60
43
|
interpolationIndex++;
|
|
61
44
|
}
|
|
62
|
-
|
|
63
45
|
return interpolationIndex;
|
|
64
46
|
};
|
|
65
|
-
|
|
66
47
|
const getIsModal = (scene, interpolationIndex, isParentModal) => {
|
|
67
48
|
if (isParentModal) {
|
|
68
49
|
return true;
|
|
69
50
|
}
|
|
70
|
-
|
|
71
51
|
const {
|
|
72
52
|
cardStyleInterpolator
|
|
73
53
|
} = scene.descriptor.options;
|
|
@@ -75,16 +55,13 @@ const getIsModal = (scene, interpolationIndex, isParentModal) => {
|
|
|
75
55
|
const isModal = isModalPresentation && interpolationIndex !== 0;
|
|
76
56
|
return isModal;
|
|
77
57
|
};
|
|
78
|
-
|
|
79
58
|
const getHeaderHeights = (scenes, insets, isParentHeaderShown, isParentModal, layout, previous) => {
|
|
80
59
|
return scenes.reduce((acc, curr, index) => {
|
|
81
60
|
const {
|
|
82
61
|
headerStatusBarHeight = isParentHeaderShown ? 0 : insets.top,
|
|
83
62
|
headerStyle
|
|
84
63
|
} = curr.descriptor.options;
|
|
85
|
-
|
|
86
64
|
const style = _reactNative.StyleSheet.flatten(headerStyle || {});
|
|
87
|
-
|
|
88
65
|
const height = 'height' in style && typeof style.height === 'number' ? style.height : previous[curr.route.key];
|
|
89
66
|
const interpolationIndex = getInterpolationIndex(scenes, index);
|
|
90
67
|
const isModal = getIsModal(curr, interpolationIndex, isParentModal);
|
|
@@ -92,7 +69,6 @@ const getHeaderHeights = (scenes, insets, isParentHeaderShown, isParentModal, la
|
|
|
92
69
|
return acc;
|
|
93
70
|
}, {});
|
|
94
71
|
};
|
|
95
|
-
|
|
96
72
|
const getDistanceFromOptions = (layout, descriptor) => {
|
|
97
73
|
const {
|
|
98
74
|
presentation,
|
|
@@ -100,7 +76,6 @@ const getDistanceFromOptions = (layout, descriptor) => {
|
|
|
100
76
|
} = (descriptor === null || descriptor === void 0 ? void 0 : descriptor.options) || {};
|
|
101
77
|
return (0, _getDistanceForDirection.default)(layout, gestureDirection);
|
|
102
78
|
};
|
|
103
|
-
|
|
104
79
|
const getProgressFromGesture = (gesture, layout, descriptor) => {
|
|
105
80
|
const distance = getDistanceFromOptions({
|
|
106
81
|
// Make sure that we have a non-zero distance, otherwise there will be incorrect progress
|
|
@@ -108,26 +83,22 @@ const getProgressFromGesture = (gesture, layout, descriptor) => {
|
|
|
108
83
|
width: Math.max(1, layout.width),
|
|
109
84
|
height: Math.max(1, layout.height)
|
|
110
85
|
}, descriptor);
|
|
111
|
-
|
|
112
86
|
if (distance > 0) {
|
|
113
87
|
return gesture.interpolate({
|
|
114
88
|
inputRange: [0, distance],
|
|
115
89
|
outputRange: [1, 0]
|
|
116
90
|
});
|
|
117
91
|
}
|
|
118
|
-
|
|
119
92
|
return gesture.interpolate({
|
|
120
93
|
inputRange: [distance, 0],
|
|
121
94
|
outputRange: [0, 1]
|
|
122
95
|
});
|
|
123
96
|
};
|
|
124
|
-
|
|
125
97
|
class CardStack extends React.Component {
|
|
126
98
|
static getDerivedStateFromProps(props, state) {
|
|
127
99
|
if (props.routes === state.routes && props.descriptors === state.descriptors) {
|
|
128
100
|
return null;
|
|
129
101
|
}
|
|
130
|
-
|
|
131
102
|
const gestures = props.routes.reduce((acc, curr) => {
|
|
132
103
|
const descriptor = props.descriptors[curr.key];
|
|
133
104
|
const {
|
|
@@ -137,8 +108,6 @@ class CardStack extends React.Component {
|
|
|
137
108
|
return acc;
|
|
138
109
|
}, {});
|
|
139
110
|
const scenes = props.routes.map((route, index, self) => {
|
|
140
|
-
var _descriptor$options$h;
|
|
141
|
-
|
|
142
111
|
const previousRoute = self[index - 1];
|
|
143
112
|
const nextRoute = self[index + 1];
|
|
144
113
|
const oldScene = state.scenes[index];
|
|
@@ -147,13 +116,14 @@ class CardStack extends React.Component {
|
|
|
147
116
|
const nextGesture = nextRoute ? gestures[nextRoute.key] : undefined;
|
|
148
117
|
const descriptor = props.descriptors[route.key] || state.descriptors[route.key] || (oldScene ? oldScene.descriptor : FALLBACK_DESCRIPTOR);
|
|
149
118
|
const nextDescriptor = props.descriptors[nextRoute === null || nextRoute === void 0 ? void 0 : nextRoute.key] || state.descriptors[nextRoute === null || nextRoute === void 0 ? void 0 : nextRoute.key];
|
|
150
|
-
const previousDescriptor = props.descriptors[previousRoute === null || previousRoute === void 0 ? void 0 : previousRoute.key] || state.descriptors[previousRoute === null || previousRoute === void 0 ? void 0 : previousRoute.key];
|
|
119
|
+
const previousDescriptor = props.descriptors[previousRoute === null || previousRoute === void 0 ? void 0 : previousRoute.key] || state.descriptors[previousRoute === null || previousRoute === void 0 ? void 0 : previousRoute.key];
|
|
120
|
+
|
|
121
|
+
// When a screen is not the last, it should use next screen's transition config
|
|
151
122
|
// Many transitions also animate the previous screen, so using 2 different transitions doesn't look right
|
|
152
123
|
// For example combining a slide and a modal transition would look wrong otherwise
|
|
153
124
|
// With this approach, combining different transition styles in the same navigator mostly looks right
|
|
154
125
|
// This will still be broken when 2 transitions have different idle state (e.g. modal presentation),
|
|
155
126
|
// but majority of the transitions look alright
|
|
156
|
-
|
|
157
127
|
const optionsForTransitionConfig = index !== self.length - 1 && nextDescriptor && nextDescriptor.options.presentation !== 'transparentModal' ? nextDescriptor.options : descriptor.options;
|
|
158
128
|
let defaultTransitionPreset = optionsForTransitionConfig.presentation === 'modal' ? _TransitionPresets.ModalTransition : optionsForTransitionConfig.presentation === 'transparentModal' ? _TransitionPresets.ModalFadeTransition : _TransitionPresets.DefaultTransition;
|
|
159
129
|
const {
|
|
@@ -165,11 +135,13 @@ class CardStack extends React.Component {
|
|
|
165
135
|
headerStyleInterpolator = defaultTransitionPreset.headerStyleInterpolator,
|
|
166
136
|
cardOverlayEnabled = _reactNative.Platform.OS !== 'ios' && optionsForTransitionConfig.presentation !== 'transparentModal' || (0, _Card.getIsModalPresentation)(cardStyleInterpolator)
|
|
167
137
|
} = optionsForTransitionConfig;
|
|
168
|
-
const headerMode =
|
|
138
|
+
const headerMode = descriptor.options.headerMode ?? (!(optionsForTransitionConfig.presentation === 'modal' || optionsForTransitionConfig.presentation === 'transparentModal' || (nextDescriptor === null || nextDescriptor === void 0 ? void 0 : nextDescriptor.options.presentation) === 'modal' || (nextDescriptor === null || nextDescriptor === void 0 ? void 0 : nextDescriptor.options.presentation) === 'transparentModal' || (0, _Card.getIsModalPresentation)(cardStyleInterpolator)) && _reactNative.Platform.OS === 'ios' && descriptor.options.header === undefined ? 'float' : 'screen');
|
|
169
139
|
const scene = {
|
|
170
140
|
route,
|
|
171
|
-
descriptor: {
|
|
172
|
-
|
|
141
|
+
descriptor: {
|
|
142
|
+
...descriptor,
|
|
143
|
+
options: {
|
|
144
|
+
...descriptor.options,
|
|
173
145
|
animationEnabled,
|
|
174
146
|
cardOverlayEnabled,
|
|
175
147
|
cardStyleInterpolator,
|
|
@@ -187,14 +159,12 @@ class CardStack extends React.Component {
|
|
|
187
159
|
},
|
|
188
160
|
__memo: [state.layout, descriptor, nextDescriptor, previousDescriptor, currentGesture, nextGesture, previousGesture]
|
|
189
161
|
};
|
|
190
|
-
|
|
191
162
|
if (oldScene && scene.__memo.every((it, i) => {
|
|
192
163
|
// @ts-expect-error: we haven't added __memo to the annotation to prevent usage elsewhere
|
|
193
164
|
return oldScene.__memo[i] === it;
|
|
194
165
|
})) {
|
|
195
166
|
return oldScene;
|
|
196
167
|
}
|
|
197
|
-
|
|
198
168
|
return scene;
|
|
199
169
|
});
|
|
200
170
|
return {
|
|
@@ -205,10 +175,8 @@ class CardStack extends React.Component {
|
|
|
205
175
|
headerHeights: getHeaderHeights(scenes, props.insets, props.isParentHeaderShown, props.isParentModal, state.layout, state.headerHeights)
|
|
206
176
|
};
|
|
207
177
|
}
|
|
208
|
-
|
|
209
178
|
constructor(_props) {
|
|
210
179
|
super(_props);
|
|
211
|
-
|
|
212
180
|
_defineProperty(this, "handleLayout", e => {
|
|
213
181
|
const {
|
|
214
182
|
height,
|
|
@@ -222,14 +190,12 @@ class CardStack extends React.Component {
|
|
|
222
190
|
if (height === state.layout.height && width === state.layout.width) {
|
|
223
191
|
return null;
|
|
224
192
|
}
|
|
225
|
-
|
|
226
193
|
return {
|
|
227
194
|
layout,
|
|
228
195
|
headerHeights: getHeaderHeights(state.scenes, props.insets, props.isParentHeaderShown, props.isParentModal, layout, state.headerHeights)
|
|
229
196
|
};
|
|
230
197
|
});
|
|
231
198
|
});
|
|
232
|
-
|
|
233
199
|
_defineProperty(this, "handleHeaderLayout", _ref => {
|
|
234
200
|
let {
|
|
235
201
|
route,
|
|
@@ -240,26 +206,23 @@ class CardStack extends React.Component {
|
|
|
240
206
|
headerHeights
|
|
241
207
|
} = _ref2;
|
|
242
208
|
const previousHeight = headerHeights[route.key];
|
|
243
|
-
|
|
244
209
|
if (previousHeight === height) {
|
|
245
210
|
return null;
|
|
246
211
|
}
|
|
247
|
-
|
|
248
212
|
return {
|
|
249
|
-
headerHeights: {
|
|
213
|
+
headerHeights: {
|
|
214
|
+
...headerHeights,
|
|
250
215
|
[route.key]: height
|
|
251
216
|
}
|
|
252
217
|
};
|
|
253
218
|
});
|
|
254
219
|
});
|
|
255
|
-
|
|
256
220
|
_defineProperty(this, "getFocusedRoute", () => {
|
|
257
221
|
const {
|
|
258
222
|
state
|
|
259
223
|
} = this.props;
|
|
260
224
|
return state.routes[state.index];
|
|
261
225
|
});
|
|
262
|
-
|
|
263
226
|
_defineProperty(this, "getPreviousScene", _ref3 => {
|
|
264
227
|
let {
|
|
265
228
|
route
|
|
@@ -273,15 +236,12 @@ class CardStack extends React.Component {
|
|
|
273
236
|
const previousRoute = getPreviousRoute({
|
|
274
237
|
route
|
|
275
238
|
});
|
|
276
|
-
|
|
277
239
|
if (previousRoute) {
|
|
278
240
|
const previousScene = scenes.find(scene => scene.descriptor.route.key === previousRoute.key);
|
|
279
241
|
return previousScene;
|
|
280
242
|
}
|
|
281
|
-
|
|
282
243
|
return undefined;
|
|
283
244
|
});
|
|
284
|
-
|
|
285
245
|
this.state = {
|
|
286
246
|
routes: [],
|
|
287
247
|
scenes: [],
|
|
@@ -296,7 +256,6 @@ class CardStack extends React.Component {
|
|
|
296
256
|
headerHeights: {}
|
|
297
257
|
};
|
|
298
258
|
}
|
|
299
|
-
|
|
300
259
|
render() {
|
|
301
260
|
const {
|
|
302
261
|
insets,
|
|
@@ -325,23 +284,18 @@ class CardStack extends React.Component {
|
|
|
325
284
|
const focusedRoute = state.routes[state.index];
|
|
326
285
|
const focusedHeaderHeight = headerHeights[focusedRoute.key];
|
|
327
286
|
const isFloatHeaderAbsolute = this.state.scenes.slice(-2).some(scene => {
|
|
328
|
-
|
|
329
|
-
|
|
330
|
-
const options = (_scene$descriptor$opt = scene.descriptor.options) !== null && _scene$descriptor$opt !== void 0 ? _scene$descriptor$opt : {};
|
|
287
|
+
const options = scene.descriptor.options ?? {};
|
|
331
288
|
const {
|
|
332
289
|
headerMode,
|
|
333
290
|
headerTransparent,
|
|
334
291
|
headerShown = true
|
|
335
292
|
} = options;
|
|
336
|
-
|
|
337
293
|
if (headerTransparent || headerShown === false || headerMode === 'screen') {
|
|
338
294
|
return true;
|
|
339
295
|
}
|
|
340
|
-
|
|
341
296
|
return false;
|
|
342
297
|
});
|
|
343
298
|
let activeScreensLimit = 1;
|
|
344
|
-
|
|
345
299
|
for (let i = scenes.length - 1; i >= 0; i--) {
|
|
346
300
|
const {
|
|
347
301
|
options
|
|
@@ -350,7 +304,6 @@ class CardStack extends React.Component {
|
|
|
350
304
|
// By default, we don't want to detach the previous screen of the active one for modals
|
|
351
305
|
detachPreviousScreen = options.presentation === 'transparentModal' ? false : (0, _Card.getIsModalPresentation)(options.cardStyleInterpolator) ? i !== scenes.map(scene => scene.descriptor.options.cardStyleInterpolator).lastIndexOf(_CardStyleInterpolators.forModalPresentationIOS) : true
|
|
352
306
|
} = options;
|
|
353
|
-
|
|
354
307
|
if (detachPreviousScreen === false) {
|
|
355
308
|
activeScreensLimit++;
|
|
356
309
|
} else {
|
|
@@ -362,7 +315,6 @@ class CardStack extends React.Component {
|
|
|
362
315
|
}
|
|
363
316
|
}
|
|
364
317
|
}
|
|
365
|
-
|
|
366
318
|
const floatingHeader = /*#__PURE__*/React.createElement(React.Fragment, {
|
|
367
319
|
key: "header"
|
|
368
320
|
}, renderHeader({
|
|
@@ -372,7 +324,8 @@ class CardStack extends React.Component {
|
|
|
372
324
|
getPreviousScene: this.getPreviousScene,
|
|
373
325
|
getFocusedRoute: this.getFocusedRoute,
|
|
374
326
|
onContentHeightChange: this.handleHeaderLayout,
|
|
375
|
-
style: [styles.floating, isFloatHeaderAbsolute && [
|
|
327
|
+
style: [styles.floating, isFloatHeaderAbsolute && [
|
|
328
|
+
// Without this, the header buttons won't be touchable on Android when headerTransparent: true
|
|
376
329
|
{
|
|
377
330
|
height: focusedHeaderHeight
|
|
378
331
|
}, styles.absolute]]
|
|
@@ -383,16 +336,15 @@ class CardStack extends React.Component {
|
|
|
383
336
|
onLayout: this.handleLayout
|
|
384
337
|
}, routes.map((route, index, self) => {
|
|
385
338
|
var _scenes, _scenes2;
|
|
386
|
-
|
|
387
339
|
const focused = focusedRoute.key === route.key;
|
|
388
340
|
const gesture = gestures[route.key];
|
|
389
|
-
const scene = scenes[index];
|
|
341
|
+
const scene = scenes[index];
|
|
342
|
+
|
|
343
|
+
// For the screens that shouldn't be active, the value is 0
|
|
390
344
|
// For those that should be active, but are not the top screen, the value is 1
|
|
391
345
|
// For those on top of the stack and with interaction enabled, the value is 2
|
|
392
346
|
// For the old implementation, it stays the same it was
|
|
393
|
-
|
|
394
347
|
let isScreenActive = 1;
|
|
395
|
-
|
|
396
348
|
if (index < self.length - activeScreensLimit - 1) {
|
|
397
349
|
// screen should be inactive because it is too deep in the stack
|
|
398
350
|
isScreenActive = STATE_INACTIVE;
|
|
@@ -401,14 +353,12 @@ class CardStack extends React.Component {
|
|
|
401
353
|
const outputValue = index === self.length - 1 ? STATE_ON_TOP // the screen is on top after the transition
|
|
402
354
|
: index >= self.length - activeScreensLimit ? STATE_TRANSITIONING_OR_BELOW_TOP // the screen should stay active after the transition, it is not on top but is in activeLimit
|
|
403
355
|
: STATE_INACTIVE; // the screen should be active only during the transition, it is at the edge of activeLimit
|
|
404
|
-
|
|
405
356
|
isScreenActive = sceneForActivity ? sceneForActivity.progress.current.interpolate({
|
|
406
357
|
inputRange: [0, 1 - EPSILON, 1],
|
|
407
358
|
outputRange: [1, 1, outputValue],
|
|
408
359
|
extrapolate: 'clamp'
|
|
409
360
|
}) : STATE_TRANSITIONING_OR_BELOW_TOP;
|
|
410
361
|
}
|
|
411
|
-
|
|
412
362
|
const {
|
|
413
363
|
headerShown = true,
|
|
414
364
|
headerTransparent,
|
|
@@ -422,20 +372,18 @@ class CardStack extends React.Component {
|
|
|
422
372
|
const safeAreaInsetLeft = insets.left;
|
|
423
373
|
const headerHeight = headerShown !== false ? headerHeights[route.key] : 0;
|
|
424
374
|
let headerDarkContent;
|
|
425
|
-
|
|
426
375
|
if (headerShown) {
|
|
427
376
|
if (typeof headerTintColor === 'string') {
|
|
428
377
|
headerDarkContent = (0, _color.default)(headerTintColor).isDark();
|
|
429
378
|
} else {
|
|
430
379
|
const flattenedHeaderStyle = _reactNative.StyleSheet.flatten(headerStyle);
|
|
431
|
-
|
|
432
380
|
if (flattenedHeaderStyle && 'backgroundColor' in flattenedHeaderStyle && typeof flattenedHeaderStyle.backgroundColor === 'string') {
|
|
433
381
|
headerDarkContent = !(0, _color.default)(flattenedHeaderStyle.backgroundColor).isDark();
|
|
434
382
|
}
|
|
435
383
|
}
|
|
436
|
-
}
|
|
437
|
-
|
|
384
|
+
}
|
|
438
385
|
|
|
386
|
+
// Start from current card and count backwards the number of cards with same interpolation
|
|
439
387
|
const interpolationIndex = getInterpolationIndex(scenes, index);
|
|
440
388
|
const isModal = getIsModal(scene, interpolationIndex, isParentModal);
|
|
441
389
|
const isNextScreenTransparent = ((_scenes = scenes[index + 1]) === null || _scenes === void 0 ? void 0 : _scenes.descriptor.options.presentation) === 'transparentModal';
|
|
@@ -482,11 +430,8 @@ class CardStack extends React.Component {
|
|
|
482
430
|
}));
|
|
483
431
|
})), isFloatHeaderAbsolute ? floatingHeader : null);
|
|
484
432
|
}
|
|
485
|
-
|
|
486
433
|
}
|
|
487
|
-
|
|
488
434
|
exports.default = CardStack;
|
|
489
|
-
|
|
490
435
|
const styles = _reactNative.StyleSheet.create({
|
|
491
436
|
container: {
|
|
492
437
|
flex: 1
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["EPSILON","STATE_INACTIVE","STATE_TRANSITIONING_OR_BELOW_TOP","STATE_ON_TOP","FALLBACK_DESCRIPTOR","Object","freeze","options","getInterpolationIndex","scenes","index","cardStyleInterpolator","descriptor","interpolationIndex","i","cardStyleInterpolatorCurrent","getIsModal","scene","isParentModal","isModalPresentation","getIsModalPresentation","isModal","getHeaderHeights","insets","isParentHeaderShown","layout","previous","reduce","acc","curr","headerStatusBarHeight","top","headerStyle","style","StyleSheet","flatten","height","route","key","getDefaultHeaderHeight","getDistanceFromOptions","presentation","gestureDirection","ModalTransition","DefaultTransition","getDistanceForDirection","getProgressFromGesture","gesture","distance","width","Math","max","interpolate","inputRange","outputRange","CardStack","React","Component","getDerivedStateFromProps","props","state","routes","descriptors","gestures","animationEnabled","Animated","Value","openingRouteKeys","includes","map","self","previousRoute","nextRoute","oldScene","currentGesture","previousGesture","undefined","nextGesture","nextDescriptor","previousDescriptor","optionsForTransitionConfig","length","defaultTransitionPreset","ModalFadeTransition","Platform","OS","gestureEnabled","transitionSpec","forNoAnimationCard","headerStyleInterpolator","cardOverlayEnabled","headerMode","header","progress","current","next","__memo","every","it","headerHeights","constructor","e","nativeEvent","setState","previousHeight","getPreviousRoute","previousScene","find","SafeAreaProviderCompat","initialMetrics","frame","render","closingRouteKeys","onOpenRoute","onCloseRoute","renderHeader","renderScene","onTransitionStart","onTransitionEnd","onGestureStart","onGestureEnd","onGestureCancel","detachInactiveScreens","focusedRoute","focusedHeaderHeight","isFloatHeaderAbsolute","slice","some","headerTransparent","headerShown","activeScreensLimit","detachPreviousScreen","lastIndexOf","forModalPresentationIOS","floatingHeader","mode","getPreviousScene","getFocusedRoute","onContentHeightChange","handleHeaderLayout","styles","floating","absolute","container","handleLayout","focused","isScreenActive","sceneForActivity","outputValue","extrapolate","headerTintColor","freezeOnBlur","safeAreaInsetTop","safeAreaInsetRight","right","safeAreaInsetBottom","bottom","safeAreaInsetLeft","left","headerHeight","headerDarkContent","Color","isDark","flattenedHeaderStyle","backgroundColor","isNextScreenTransparent","detachCurrentScreen","absoluteFill","create","flex","position","zIndex"],"sources":["CardStack.tsx"],"sourcesContent":["import {\n Background,\n getDefaultHeaderHeight,\n SafeAreaProviderCompat,\n} from '@react-navigation/elements';\nimport type {\n ParamListBase,\n Route,\n StackNavigationState,\n} from '@react-navigation/native';\nimport Color from 'color';\nimport * as React from 'react';\nimport {\n Animated,\n LayoutChangeEvent,\n Platform,\n StyleSheet,\n} from 'react-native';\nimport type { EdgeInsets } from 'react-native-safe-area-context';\n\nimport {\n forModalPresentationIOS,\n forNoAnimation as forNoAnimationCard,\n} from '../../TransitionConfigs/CardStyleInterpolators';\nimport {\n DefaultTransition,\n ModalFadeTransition,\n ModalTransition,\n} from '../../TransitionConfigs/TransitionPresets';\nimport type {\n Layout,\n Scene,\n StackDescriptor,\n StackDescriptorMap,\n StackHeaderMode,\n StackNavigationOptions,\n} from '../../types';\nimport getDistanceForDirection from '../../utils/getDistanceForDirection';\nimport type { Props as HeaderContainerProps } from '../Header/HeaderContainer';\nimport { MaybeScreen, MaybeScreenContainer } from '../Screens';\nimport { getIsModalPresentation } from './Card';\nimport CardContainer from './CardContainer';\n\ntype GestureValues = {\n [key: string]: Animated.Value;\n};\n\ntype Props = {\n insets: EdgeInsets;\n state: StackNavigationState<ParamListBase>;\n descriptors: StackDescriptorMap;\n routes: Route<string>[];\n openingRouteKeys: string[];\n closingRouteKeys: string[];\n onOpenRoute: (props: { route: Route<string> }) => void;\n onCloseRoute: (props: { route: Route<string> }) => void;\n getPreviousRoute: (props: {\n route: Route<string>;\n }) => Route<string> | undefined;\n renderHeader: (props: HeaderContainerProps) => React.ReactNode;\n renderScene: (props: { route: Route<string> }) => React.ReactNode;\n isParentHeaderShown: boolean;\n isParentModal: boolean;\n onTransitionStart: (\n props: { route: Route<string> },\n closing: boolean\n ) => void;\n onTransitionEnd: (props: { route: Route<string> }, closing: boolean) => void;\n onGestureStart: (props: { route: Route<string> }) => void;\n onGestureEnd: (props: { route: Route<string> }) => void;\n onGestureCancel: (props: { route: Route<string> }) => void;\n detachInactiveScreens?: boolean;\n};\n\ntype State = {\n routes: Route<string>[];\n descriptors: StackDescriptorMap;\n scenes: Scene[];\n gestures: GestureValues;\n layout: Layout;\n headerHeights: Record<string, number>;\n};\n\nconst EPSILON = 1e-5;\n\nconst STATE_INACTIVE = 0;\nconst STATE_TRANSITIONING_OR_BELOW_TOP = 1;\nconst STATE_ON_TOP = 2;\n\nconst FALLBACK_DESCRIPTOR = Object.freeze({ options: {} });\n\nconst getInterpolationIndex = (scenes: Scene[], index: number) => {\n const { cardStyleInterpolator } = scenes[index].descriptor.options;\n\n // Start from current card and count backwards the number of cards with same interpolation\n let interpolationIndex = 0;\n\n for (let i = index - 1; i >= 0; i--) {\n const cardStyleInterpolatorCurrent =\n scenes[i]?.descriptor.options.cardStyleInterpolator;\n\n if (cardStyleInterpolatorCurrent !== cardStyleInterpolator) {\n break;\n }\n\n interpolationIndex++;\n }\n\n return interpolationIndex;\n};\n\nconst getIsModal = (\n scene: Scene,\n interpolationIndex: number,\n isParentModal: boolean\n) => {\n if (isParentModal) {\n return true;\n }\n\n const { cardStyleInterpolator } = scene.descriptor.options;\n const isModalPresentation = getIsModalPresentation(cardStyleInterpolator);\n const isModal = isModalPresentation && interpolationIndex !== 0;\n\n return isModal;\n};\n\nconst getHeaderHeights = (\n scenes: Scene[],\n insets: EdgeInsets,\n isParentHeaderShown: boolean,\n isParentModal: boolean,\n layout: Layout,\n previous: Record<string, number>\n) => {\n return scenes.reduce<Record<string, number>>((acc, curr, index) => {\n const {\n headerStatusBarHeight = isParentHeaderShown ? 0 : insets.top,\n headerStyle,\n } = curr.descriptor.options;\n\n const style = StyleSheet.flatten(headerStyle || {});\n\n const height =\n 'height' in style && typeof style.height === 'number'\n ? style.height\n : previous[curr.route.key];\n\n const interpolationIndex = getInterpolationIndex(scenes, index);\n const isModal = getIsModal(curr, interpolationIndex, isParentModal);\n\n acc[curr.route.key] =\n typeof height === 'number'\n ? height\n : getDefaultHeaderHeight(layout, isModal, headerStatusBarHeight);\n\n return acc;\n }, {});\n};\n\nconst getDistanceFromOptions = (\n layout: Layout,\n descriptor?: StackDescriptor\n) => {\n const {\n presentation,\n gestureDirection = presentation === 'modal'\n ? ModalTransition.gestureDirection\n : DefaultTransition.gestureDirection,\n } = (descriptor?.options || {}) as StackNavigationOptions;\n\n return getDistanceForDirection(layout, gestureDirection);\n};\n\nconst getProgressFromGesture = (\n gesture: Animated.Value,\n layout: Layout,\n descriptor?: StackDescriptor\n) => {\n const distance = getDistanceFromOptions(\n {\n // Make sure that we have a non-zero distance, otherwise there will be incorrect progress\n // This causes blank screen on web if it was previously inside container with display: none\n width: Math.max(1, layout.width),\n height: Math.max(1, layout.height),\n },\n descriptor\n );\n\n if (distance > 0) {\n return gesture.interpolate({\n inputRange: [0, distance],\n outputRange: [1, 0],\n });\n }\n\n return gesture.interpolate({\n inputRange: [distance, 0],\n outputRange: [0, 1],\n });\n};\n\nexport default class CardStack extends React.Component<Props, State> {\n static getDerivedStateFromProps(\n props: Props,\n state: State\n ): Partial<State> | null {\n if (\n props.routes === state.routes &&\n props.descriptors === state.descriptors\n ) {\n return null;\n }\n\n const gestures = props.routes.reduce<GestureValues>((acc, curr) => {\n const descriptor = props.descriptors[curr.key];\n const { animationEnabled } = descriptor?.options || {};\n\n acc[curr.key] =\n state.gestures[curr.key] ||\n new Animated.Value(\n props.openingRouteKeys.includes(curr.key) &&\n animationEnabled !== false\n ? getDistanceFromOptions(state.layout, descriptor)\n : 0\n );\n\n return acc;\n }, {});\n\n const scenes = props.routes.map((route, index, self) => {\n const previousRoute = self[index - 1];\n const nextRoute = self[index + 1];\n\n const oldScene = state.scenes[index];\n\n const currentGesture = gestures[route.key];\n const previousGesture = previousRoute\n ? gestures[previousRoute.key]\n : undefined;\n const nextGesture = nextRoute ? gestures[nextRoute.key] : undefined;\n\n const descriptor =\n props.descriptors[route.key] ||\n state.descriptors[route.key] ||\n (oldScene ? oldScene.descriptor : FALLBACK_DESCRIPTOR);\n\n const nextDescriptor =\n props.descriptors[nextRoute?.key] || state.descriptors[nextRoute?.key];\n\n const previousDescriptor =\n props.descriptors[previousRoute?.key] ||\n state.descriptors[previousRoute?.key];\n\n // When a screen is not the last, it should use next screen's transition config\n // Many transitions also animate the previous screen, so using 2 different transitions doesn't look right\n // For example combining a slide and a modal transition would look wrong otherwise\n // With this approach, combining different transition styles in the same navigator mostly looks right\n // This will still be broken when 2 transitions have different idle state (e.g. modal presentation),\n // but majority of the transitions look alright\n const optionsForTransitionConfig =\n index !== self.length - 1 &&\n nextDescriptor &&\n nextDescriptor.options.presentation !== 'transparentModal'\n ? nextDescriptor.options\n : descriptor.options;\n\n let defaultTransitionPreset =\n optionsForTransitionConfig.presentation === 'modal'\n ? ModalTransition\n : optionsForTransitionConfig.presentation === 'transparentModal'\n ? ModalFadeTransition\n : DefaultTransition;\n\n const {\n animationEnabled = Platform.OS !== 'web' &&\n Platform.OS !== 'windows' &&\n Platform.OS !== 'macos',\n gestureEnabled = Platform.OS === 'ios' && animationEnabled,\n gestureDirection = defaultTransitionPreset.gestureDirection,\n transitionSpec = defaultTransitionPreset.transitionSpec,\n cardStyleInterpolator = animationEnabled === false\n ? forNoAnimationCard\n : defaultTransitionPreset.cardStyleInterpolator,\n headerStyleInterpolator = defaultTransitionPreset.headerStyleInterpolator,\n cardOverlayEnabled = (Platform.OS !== 'ios' &&\n optionsForTransitionConfig.presentation !== 'transparentModal') ||\n getIsModalPresentation(cardStyleInterpolator),\n } = optionsForTransitionConfig;\n\n const headerMode: StackHeaderMode =\n descriptor.options.headerMode ??\n (!(\n optionsForTransitionConfig.presentation === 'modal' ||\n optionsForTransitionConfig.presentation === 'transparentModal' ||\n nextDescriptor?.options.presentation === 'modal' ||\n nextDescriptor?.options.presentation === 'transparentModal' ||\n getIsModalPresentation(cardStyleInterpolator)\n ) &&\n Platform.OS === 'ios' &&\n descriptor.options.header === undefined\n ? 'float'\n : 'screen');\n\n const scene = {\n route,\n descriptor: {\n ...descriptor,\n options: {\n ...descriptor.options,\n animationEnabled,\n cardOverlayEnabled,\n cardStyleInterpolator,\n gestureDirection,\n gestureEnabled,\n headerStyleInterpolator,\n transitionSpec,\n headerMode,\n },\n },\n progress: {\n current: getProgressFromGesture(\n currentGesture,\n state.layout,\n descriptor\n ),\n next:\n nextGesture &&\n nextDescriptor?.options.presentation !== 'transparentModal'\n ? getProgressFromGesture(\n nextGesture,\n state.layout,\n nextDescriptor\n )\n : undefined,\n previous: previousGesture\n ? getProgressFromGesture(\n previousGesture,\n state.layout,\n previousDescriptor\n )\n : undefined,\n },\n __memo: [\n state.layout,\n descriptor,\n nextDescriptor,\n previousDescriptor,\n currentGesture,\n nextGesture,\n previousGesture,\n ],\n };\n\n if (\n oldScene &&\n scene.__memo.every((it, i) => {\n // @ts-expect-error: we haven't added __memo to the annotation to prevent usage elsewhere\n return oldScene.__memo[i] === it;\n })\n ) {\n return oldScene;\n }\n\n return scene;\n });\n\n return {\n routes: props.routes,\n scenes,\n gestures,\n descriptors: props.descriptors,\n headerHeights: getHeaderHeights(\n scenes,\n props.insets,\n props.isParentHeaderShown,\n props.isParentModal,\n state.layout,\n state.headerHeights\n ),\n };\n }\n\n constructor(props: Props) {\n super(props);\n\n this.state = {\n routes: [],\n scenes: [],\n gestures: {},\n layout: SafeAreaProviderCompat.initialMetrics.frame,\n descriptors: this.props.descriptors,\n // Used when card's header is null and mode is float to make transition\n // between screens with headers and those without headers smooth.\n // This is not a great heuristic here. We don't know synchronously\n // on mount what the header height is so we have just used the most\n // common cases here.\n headerHeights: {},\n };\n }\n\n private handleLayout = (e: LayoutChangeEvent) => {\n const { height, width } = e.nativeEvent.layout;\n\n const layout = { width, height };\n\n this.setState((state, props) => {\n if (height === state.layout.height && width === state.layout.width) {\n return null;\n }\n\n return {\n layout,\n headerHeights: getHeaderHeights(\n state.scenes,\n props.insets,\n props.isParentHeaderShown,\n props.isParentModal,\n layout,\n state.headerHeights\n ),\n };\n });\n };\n\n private handleHeaderLayout = ({\n route,\n height,\n }: {\n route: Route<string>;\n height: number;\n }) => {\n this.setState(({ headerHeights }) => {\n const previousHeight = headerHeights[route.key];\n\n if (previousHeight === height) {\n return null;\n }\n\n return {\n headerHeights: {\n ...headerHeights,\n [route.key]: height,\n },\n };\n });\n };\n\n private getFocusedRoute = () => {\n const { state } = this.props;\n\n return state.routes[state.index];\n };\n\n private getPreviousScene = ({ route }: { route: Route<string> }) => {\n const { getPreviousRoute } = this.props;\n const { scenes } = this.state;\n\n const previousRoute = getPreviousRoute({ route });\n\n if (previousRoute) {\n const previousScene = scenes.find(\n (scene) => scene.descriptor.route.key === previousRoute.key\n );\n\n return previousScene;\n }\n\n return undefined;\n };\n\n render() {\n const {\n insets,\n state,\n routes,\n closingRouteKeys,\n onOpenRoute,\n onCloseRoute,\n renderHeader,\n renderScene,\n isParentHeaderShown,\n isParentModal,\n onTransitionStart,\n onTransitionEnd,\n onGestureStart,\n onGestureEnd,\n onGestureCancel,\n detachInactiveScreens = Platform.OS === 'web' ||\n Platform.OS === 'android' ||\n Platform.OS === 'ios',\n } = this.props;\n\n const { scenes, layout, gestures, headerHeights } = this.state;\n\n const focusedRoute = state.routes[state.index];\n const focusedHeaderHeight = headerHeights[focusedRoute.key];\n\n const isFloatHeaderAbsolute = this.state.scenes.slice(-2).some((scene) => {\n const options = scene.descriptor.options ?? {};\n const { headerMode, headerTransparent, headerShown = true } = options;\n\n if (\n headerTransparent ||\n headerShown === false ||\n headerMode === 'screen'\n ) {\n return true;\n }\n\n return false;\n });\n\n let activeScreensLimit = 1;\n\n for (let i = scenes.length - 1; i >= 0; i--) {\n const { options } = scenes[i].descriptor;\n const {\n // By default, we don't want to detach the previous screen of the active one for modals\n detachPreviousScreen = options.presentation === 'transparentModal'\n ? false\n : getIsModalPresentation(options.cardStyleInterpolator)\n ? i !==\n scenes\n .map((scene) => scene.descriptor.options.cardStyleInterpolator)\n .lastIndexOf(forModalPresentationIOS)\n : true,\n } = options;\n\n if (detachPreviousScreen === false) {\n activeScreensLimit++;\n } else {\n // Check at least last 2 screens before stopping\n // This will make sure that screen isn't detached when another screen is animating on top of the transparent one\n // For example, (Opaque -> Transparent -> Opaque)\n if (i <= scenes.length - 2) {\n break;\n }\n }\n }\n\n const floatingHeader = (\n <React.Fragment key=\"header\">\n {renderHeader({\n mode: 'float',\n layout,\n scenes,\n getPreviousScene: this.getPreviousScene,\n getFocusedRoute: this.getFocusedRoute,\n onContentHeightChange: this.handleHeaderLayout,\n style: [\n styles.floating,\n isFloatHeaderAbsolute && [\n // Without this, the header buttons won't be touchable on Android when headerTransparent: true\n { height: focusedHeaderHeight },\n styles.absolute,\n ],\n ],\n })}\n </React.Fragment>\n );\n\n return (\n <Background>\n {isFloatHeaderAbsolute ? null : floatingHeader}\n <MaybeScreenContainer\n enabled={detachInactiveScreens}\n style={styles.container}\n onLayout={this.handleLayout}\n >\n {routes.map((route, index, self) => {\n const focused = focusedRoute.key === route.key;\n const gesture = gestures[route.key];\n const scene = scenes[index];\n\n // For the screens that shouldn't be active, the value is 0\n // For those that should be active, but are not the top screen, the value is 1\n // For those on top of the stack and with interaction enabled, the value is 2\n // For the old implementation, it stays the same it was\n let isScreenActive: Animated.AnimatedInterpolation | 2 | 1 | 0 = 1;\n\n if (index < self.length - activeScreensLimit - 1) {\n // screen should be inactive because it is too deep in the stack\n isScreenActive = STATE_INACTIVE;\n } else {\n const sceneForActivity = scenes[self.length - 1];\n const outputValue =\n index === self.length - 1\n ? STATE_ON_TOP // the screen is on top after the transition\n : index >= self.length - activeScreensLimit\n ? STATE_TRANSITIONING_OR_BELOW_TOP // the screen should stay active after the transition, it is not on top but is in activeLimit\n : STATE_INACTIVE; // the screen should be active only during the transition, it is at the edge of activeLimit\n isScreenActive = sceneForActivity\n ? sceneForActivity.progress.current.interpolate({\n inputRange: [0, 1 - EPSILON, 1],\n outputRange: [1, 1, outputValue],\n extrapolate: 'clamp',\n })\n : STATE_TRANSITIONING_OR_BELOW_TOP;\n }\n\n const {\n headerShown = true,\n headerTransparent,\n headerStyle,\n headerTintColor,\n freezeOnBlur,\n } = scene.descriptor.options;\n\n const safeAreaInsetTop = insets.top;\n const safeAreaInsetRight = insets.right;\n const safeAreaInsetBottom = insets.bottom;\n const safeAreaInsetLeft = insets.left;\n\n const headerHeight =\n headerShown !== false ? headerHeights[route.key] : 0;\n\n let headerDarkContent: boolean | undefined;\n\n if (headerShown) {\n if (typeof headerTintColor === 'string') {\n headerDarkContent = Color(headerTintColor).isDark();\n } else {\n const flattenedHeaderStyle = StyleSheet.flatten(headerStyle);\n\n if (\n flattenedHeaderStyle &&\n 'backgroundColor' in flattenedHeaderStyle &&\n typeof flattenedHeaderStyle.backgroundColor === 'string'\n ) {\n headerDarkContent = !Color(\n flattenedHeaderStyle.backgroundColor\n ).isDark();\n }\n }\n }\n\n // Start from current card and count backwards the number of cards with same interpolation\n const interpolationIndex = getInterpolationIndex(scenes, index);\n const isModal = getIsModal(\n scene,\n interpolationIndex,\n isParentModal\n );\n\n const isNextScreenTransparent =\n scenes[index + 1]?.descriptor.options.presentation ===\n 'transparentModal';\n\n const detachCurrentScreen =\n scenes[index + 1]?.descriptor.options.detachPreviousScreen !==\n false;\n\n return (\n <MaybeScreen\n key={route.key}\n style={StyleSheet.absoluteFill}\n enabled={detachInactiveScreens}\n active={isScreenActive}\n freezeOnBlur={freezeOnBlur}\n pointerEvents=\"box-none\"\n >\n <CardContainer\n index={index}\n interpolationIndex={interpolationIndex}\n modal={isModal}\n active={index === self.length - 1}\n focused={focused}\n closing={closingRouteKeys.includes(route.key)}\n layout={layout}\n gesture={gesture}\n scene={scene}\n safeAreaInsetTop={safeAreaInsetTop}\n safeAreaInsetRight={safeAreaInsetRight}\n safeAreaInsetBottom={safeAreaInsetBottom}\n safeAreaInsetLeft={safeAreaInsetLeft}\n onGestureStart={onGestureStart}\n onGestureCancel={onGestureCancel}\n onGestureEnd={onGestureEnd}\n headerHeight={headerHeight}\n isParentHeaderShown={isParentHeaderShown}\n onHeaderHeightChange={this.handleHeaderLayout}\n getPreviousScene={this.getPreviousScene}\n getFocusedRoute={this.getFocusedRoute}\n headerDarkContent={headerDarkContent}\n hasAbsoluteFloatHeader={\n isFloatHeaderAbsolute && !headerTransparent\n }\n renderHeader={renderHeader}\n renderScene={renderScene}\n onOpenRoute={onOpenRoute}\n onCloseRoute={onCloseRoute}\n onTransitionStart={onTransitionStart}\n onTransitionEnd={onTransitionEnd}\n isNextScreenTransparent={isNextScreenTransparent}\n detachCurrentScreen={detachCurrentScreen}\n />\n </MaybeScreen>\n );\n })}\n </MaybeScreenContainer>\n {isFloatHeaderAbsolute ? floatingHeader : null}\n </Background>\n );\n }\n}\n\nconst styles = StyleSheet.create({\n container: {\n flex: 1,\n },\n absolute: {\n position: 'absolute',\n top: 0,\n left: 0,\n right: 0,\n },\n floating: {\n zIndex: 1,\n },\n});\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"names":["EPSILON","STATE_INACTIVE","STATE_TRANSITIONING_OR_BELOW_TOP","STATE_ON_TOP","FALLBACK_DESCRIPTOR","Object","freeze","options","getInterpolationIndex","scenes","index","cardStyleInterpolator","descriptor","interpolationIndex","i","cardStyleInterpolatorCurrent","getIsModal","scene","isParentModal","isModalPresentation","getIsModalPresentation","isModal","getHeaderHeights","insets","isParentHeaderShown","layout","previous","reduce","acc","curr","headerStatusBarHeight","top","headerStyle","style","StyleSheet","flatten","height","route","key","getDefaultHeaderHeight","getDistanceFromOptions","presentation","gestureDirection","ModalTransition","DefaultTransition","getDistanceForDirection","getProgressFromGesture","gesture","distance","width","Math","max","interpolate","inputRange","outputRange","CardStack","React","Component","getDerivedStateFromProps","props","state","routes","descriptors","gestures","animationEnabled","Animated","Value","openingRouteKeys","includes","map","self","previousRoute","nextRoute","oldScene","currentGesture","previousGesture","undefined","nextGesture","nextDescriptor","previousDescriptor","optionsForTransitionConfig","length","defaultTransitionPreset","ModalFadeTransition","Platform","OS","gestureEnabled","transitionSpec","forNoAnimationCard","headerStyleInterpolator","cardOverlayEnabled","headerMode","header","progress","current","next","__memo","every","it","headerHeights","constructor","e","nativeEvent","setState","previousHeight","getPreviousRoute","previousScene","find","SafeAreaProviderCompat","initialMetrics","frame","render","closingRouteKeys","onOpenRoute","onCloseRoute","renderHeader","renderScene","onTransitionStart","onTransitionEnd","onGestureStart","onGestureEnd","onGestureCancel","detachInactiveScreens","focusedRoute","focusedHeaderHeight","isFloatHeaderAbsolute","slice","some","headerTransparent","headerShown","activeScreensLimit","detachPreviousScreen","lastIndexOf","forModalPresentationIOS","floatingHeader","mode","getPreviousScene","getFocusedRoute","onContentHeightChange","handleHeaderLayout","styles","floating","absolute","container","handleLayout","focused","isScreenActive","sceneForActivity","outputValue","extrapolate","headerTintColor","freezeOnBlur","safeAreaInsetTop","safeAreaInsetRight","right","safeAreaInsetBottom","bottom","safeAreaInsetLeft","left","headerHeight","headerDarkContent","Color","isDark","flattenedHeaderStyle","backgroundColor","isNextScreenTransparent","detachCurrentScreen","absoluteFill","create","flex","position","zIndex"],"sourceRoot":"../../src","sources":["CardStack.tsx"],"mappings":"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"}
|