@react-navigation/native-stack 7.3.9 → 7.3.10
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/package.json +7 -5
- package/lib/commonjs/index.js +0 -27
- package/lib/commonjs/index.js.map +0 -1
- package/lib/commonjs/navigators/createNativeStackNavigator.js +0 -71
- package/lib/commonjs/navigators/createNativeStackNavigator.js.map +0 -1
- package/lib/commonjs/package.json +0 -1
- package/lib/commonjs/types.js +0 -6
- package/lib/commonjs/types.js.map +0 -1
- package/lib/commonjs/utils/debounce.js +0 -16
- package/lib/commonjs/utils/debounce.js.map +0 -1
- package/lib/commonjs/utils/getModalRoutesKeys.js +0 -17
- package/lib/commonjs/utils/getModalRoutesKeys.js.map +0 -1
- package/lib/commonjs/utils/useAnimatedHeaderHeight.js +0 -19
- package/lib/commonjs/utils/useAnimatedHeaderHeight.js.map +0 -1
- package/lib/commonjs/utils/useDismissedRouteError.js +0 -23
- package/lib/commonjs/utils/useDismissedRouteError.js.map +0 -1
- package/lib/commonjs/utils/useInvalidPreventRemoveError.js +0 -26
- package/lib/commonjs/utils/useInvalidPreventRemoveError.js.map +0 -1
- package/lib/commonjs/views/FontProcessor.js +0 -10
- package/lib/commonjs/views/FontProcessor.js.map +0 -1
- package/lib/commonjs/views/FontProcessor.native.js +0 -18
- package/lib/commonjs/views/FontProcessor.native.js.map +0 -1
- package/lib/commonjs/views/FooterComponent.js +0 -19
- package/lib/commonjs/views/FooterComponent.js.map +0 -1
- package/lib/commonjs/views/NativeStackView.js +0 -139
- package/lib/commonjs/views/NativeStackView.js.map +0 -1
- package/lib/commonjs/views/NativeStackView.native.js +0 -478
- package/lib/commonjs/views/NativeStackView.native.js.map +0 -1
- package/lib/commonjs/views/useHeaderConfigProps.js +0 -211
- package/lib/commonjs/views/useHeaderConfigProps.js.map +0 -1
|
@@ -1,478 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.NativeStackView = NativeStackView;
|
|
7
|
-
var _elements = require("@react-navigation/elements");
|
|
8
|
-
var _native = require("@react-navigation/native");
|
|
9
|
-
var React = _interopRequireWildcard(require("react"));
|
|
10
|
-
var _reactNative = require("react-native");
|
|
11
|
-
var _reactNativeSafeAreaContext = require("react-native-safe-area-context");
|
|
12
|
-
var _reactNativeScreens = require("react-native-screens");
|
|
13
|
-
var _debounce = require("../utils/debounce.js");
|
|
14
|
-
var _getModalRoutesKeys = require("../utils/getModalRoutesKeys.js");
|
|
15
|
-
var _useAnimatedHeaderHeight = require("../utils/useAnimatedHeaderHeight.js");
|
|
16
|
-
var _useDismissedRouteError = require("../utils/useDismissedRouteError.js");
|
|
17
|
-
var _useInvalidPreventRemoveError = require("../utils/useInvalidPreventRemoveError.js");
|
|
18
|
-
var _useHeaderConfigProps = require("./useHeaderConfigProps.js");
|
|
19
|
-
var _jsxRuntime = require("react/jsx-runtime");
|
|
20
|
-
function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
|
|
21
|
-
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
|
|
22
|
-
const ANDROID_DEFAULT_HEADER_HEIGHT = 56;
|
|
23
|
-
function isFabric() {
|
|
24
|
-
return 'nativeFabricUIManager' in global;
|
|
25
|
-
}
|
|
26
|
-
const useNativeDriver = _reactNative.Platform.OS !== 'web';
|
|
27
|
-
const SceneView = ({
|
|
28
|
-
index,
|
|
29
|
-
focused,
|
|
30
|
-
shouldFreeze,
|
|
31
|
-
descriptor,
|
|
32
|
-
previousDescriptor,
|
|
33
|
-
nextDescriptor,
|
|
34
|
-
isPresentationModal,
|
|
35
|
-
isPreloaded,
|
|
36
|
-
onWillDisappear,
|
|
37
|
-
onWillAppear,
|
|
38
|
-
onAppear,
|
|
39
|
-
onDisappear,
|
|
40
|
-
onDismissed,
|
|
41
|
-
onHeaderBackButtonClicked,
|
|
42
|
-
onNativeDismissCancelled,
|
|
43
|
-
onGestureCancel,
|
|
44
|
-
onSheetDetentChanged
|
|
45
|
-
}) => {
|
|
46
|
-
const {
|
|
47
|
-
route,
|
|
48
|
-
navigation,
|
|
49
|
-
options,
|
|
50
|
-
render
|
|
51
|
-
} = descriptor;
|
|
52
|
-
let {
|
|
53
|
-
animation,
|
|
54
|
-
animationMatchesGesture,
|
|
55
|
-
presentation = isPresentationModal ? 'modal' : 'card',
|
|
56
|
-
fullScreenGestureEnabled
|
|
57
|
-
} = options;
|
|
58
|
-
const {
|
|
59
|
-
animationDuration,
|
|
60
|
-
animationTypeForReplace = 'push',
|
|
61
|
-
fullScreenGestureShadowEnabled = true,
|
|
62
|
-
gestureEnabled,
|
|
63
|
-
gestureDirection = presentation === 'card' ? 'horizontal' : 'vertical',
|
|
64
|
-
gestureResponseDistance,
|
|
65
|
-
header,
|
|
66
|
-
headerBackButtonMenuEnabled,
|
|
67
|
-
headerShown,
|
|
68
|
-
headerBackground,
|
|
69
|
-
headerTransparent,
|
|
70
|
-
autoHideHomeIndicator,
|
|
71
|
-
keyboardHandlingEnabled,
|
|
72
|
-
navigationBarColor,
|
|
73
|
-
navigationBarTranslucent,
|
|
74
|
-
navigationBarHidden,
|
|
75
|
-
orientation,
|
|
76
|
-
sheetAllowedDetents = [1.0],
|
|
77
|
-
sheetLargestUndimmedDetentIndex = -1,
|
|
78
|
-
sheetGrabberVisible = false,
|
|
79
|
-
sheetCornerRadius = -1.0,
|
|
80
|
-
sheetElevation = 24,
|
|
81
|
-
sheetExpandsWhenScrolledToEdge = true,
|
|
82
|
-
sheetInitialDetentIndex = 0,
|
|
83
|
-
statusBarAnimation,
|
|
84
|
-
statusBarHidden,
|
|
85
|
-
statusBarStyle,
|
|
86
|
-
statusBarTranslucent,
|
|
87
|
-
statusBarBackgroundColor,
|
|
88
|
-
unstable_sheetFooter,
|
|
89
|
-
freezeOnBlur,
|
|
90
|
-
contentStyle
|
|
91
|
-
} = options;
|
|
92
|
-
if (gestureDirection === 'vertical' && _reactNative.Platform.OS === 'ios') {
|
|
93
|
-
// for `vertical` direction to work, we need to set `fullScreenGestureEnabled` to `true`
|
|
94
|
-
// so the screen can be dismissed from any point on screen.
|
|
95
|
-
// `animationMatchesGesture` needs to be set to `true` so the `animation` set by user can be used,
|
|
96
|
-
// otherwise `simple_push` will be used.
|
|
97
|
-
// Also, the default animation for this direction seems to be `slide_from_bottom`.
|
|
98
|
-
if (fullScreenGestureEnabled === undefined) {
|
|
99
|
-
fullScreenGestureEnabled = true;
|
|
100
|
-
}
|
|
101
|
-
if (animationMatchesGesture === undefined) {
|
|
102
|
-
animationMatchesGesture = true;
|
|
103
|
-
}
|
|
104
|
-
if (animation === undefined) {
|
|
105
|
-
animation = 'slide_from_bottom';
|
|
106
|
-
}
|
|
107
|
-
}
|
|
108
|
-
|
|
109
|
-
// workaround for rn-screens where gestureDirection has to be set on both
|
|
110
|
-
// current and previous screen - software-mansion/react-native-screens/pull/1509
|
|
111
|
-
const nextGestureDirection = nextDescriptor?.options.gestureDirection;
|
|
112
|
-
const gestureDirectionOverride = nextGestureDirection != null ? nextGestureDirection : gestureDirection;
|
|
113
|
-
if (index === 0) {
|
|
114
|
-
// first screen should always be treated as `card`, it resolves problems with no header animation
|
|
115
|
-
// for navigator with first screen as `modal` and the next as `card`
|
|
116
|
-
presentation = 'card';
|
|
117
|
-
}
|
|
118
|
-
const {
|
|
119
|
-
colors
|
|
120
|
-
} = (0, _native.useTheme)();
|
|
121
|
-
const insets = (0, _reactNativeSafeAreaContext.useSafeAreaInsets)();
|
|
122
|
-
const frame = (0, _reactNativeSafeAreaContext.useSafeAreaFrame)();
|
|
123
|
-
|
|
124
|
-
// `modal` and `formSheet` presentations do not take whole screen, so should not take the inset.
|
|
125
|
-
const isModal = presentation === 'modal' || presentation === 'formSheet';
|
|
126
|
-
|
|
127
|
-
// Modals are fullscreen in landscape only on iPhone
|
|
128
|
-
const isIPhone = _reactNative.Platform.OS === 'ios' && !(_reactNative.Platform.isPad || _reactNative.Platform.isTV);
|
|
129
|
-
const isLandscape = frame.width > frame.height;
|
|
130
|
-
const isParentHeaderShown = React.useContext(_elements.HeaderShownContext);
|
|
131
|
-
const parentHeaderHeight = React.useContext(_elements.HeaderHeightContext);
|
|
132
|
-
const parentHeaderBack = React.useContext(_elements.HeaderBackContext);
|
|
133
|
-
const topInset = isParentHeaderShown || _reactNative.Platform.OS === 'ios' && isModal || isIPhone && isLandscape ? 0 : insets.top;
|
|
134
|
-
const {
|
|
135
|
-
preventedRoutes
|
|
136
|
-
} = (0, _native.usePreventRemoveContext)();
|
|
137
|
-
const defaultHeaderHeight = _reactNative.Platform.select({
|
|
138
|
-
// FIXME: Currently screens isn't using Material 3
|
|
139
|
-
// So our `getDefaultHeaderHeight` doesn't return the correct value
|
|
140
|
-
// So we hardcode the value here for now until screens is updated
|
|
141
|
-
android: ANDROID_DEFAULT_HEADER_HEIGHT + topInset,
|
|
142
|
-
default: (0, _elements.getDefaultHeaderHeight)(frame, isModal, topInset)
|
|
143
|
-
});
|
|
144
|
-
const [headerHeight, setHeaderHeight] = React.useState(defaultHeaderHeight);
|
|
145
|
-
|
|
146
|
-
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
147
|
-
const setHeaderHeightDebounced = React.useCallback(
|
|
148
|
-
// Debounce the header height updates to avoid excessive re-renders
|
|
149
|
-
(0, _debounce.debounce)(setHeaderHeight, 100), []);
|
|
150
|
-
const hasCustomHeader = header !== undefined;
|
|
151
|
-
let headerHeightCorrectionOffset = 0;
|
|
152
|
-
if (_reactNative.Platform.OS === 'android' && !hasCustomHeader) {
|
|
153
|
-
const statusBarHeight = _reactNative.StatusBar.currentHeight ?? 0;
|
|
154
|
-
|
|
155
|
-
// FIXME: On Android, the native header height is not correctly calculated
|
|
156
|
-
// It includes status bar height even if statusbar is not translucent
|
|
157
|
-
// And the statusbar value itself doesn't match the actual status bar height
|
|
158
|
-
// So we subtract the bogus status bar height and add the actual top inset
|
|
159
|
-
headerHeightCorrectionOffset = -statusBarHeight + topInset;
|
|
160
|
-
}
|
|
161
|
-
const rawAnimatedHeaderHeight = (0, _reactNative.useAnimatedValue)(defaultHeaderHeight);
|
|
162
|
-
const animatedHeaderHeight = React.useMemo(() => _reactNative.Animated.add(rawAnimatedHeaderHeight, headerHeightCorrectionOffset), [headerHeightCorrectionOffset, rawAnimatedHeaderHeight]);
|
|
163
|
-
|
|
164
|
-
// During the very first render topInset is > 0 when running
|
|
165
|
-
// in non edge-to-edge mode on Android, while on every consecutive render
|
|
166
|
-
// topInset === 0, causing header content to jump, as we add padding on the first frame,
|
|
167
|
-
// just to remove it in next one. To prevent this, when statusBarTranslucent is set,
|
|
168
|
-
// we apply additional padding in header only if its true.
|
|
169
|
-
// For more details see: https://github.com/react-navigation/react-navigation/pull/12014
|
|
170
|
-
const headerTopInsetEnabled = typeof statusBarTranslucent === 'boolean' ? statusBarTranslucent : topInset !== 0;
|
|
171
|
-
const canGoBack = previousDescriptor != null || parentHeaderBack != null;
|
|
172
|
-
const backTitle = previousDescriptor ? (0, _elements.getHeaderTitle)(previousDescriptor.options, previousDescriptor.route.name) : parentHeaderBack?.title;
|
|
173
|
-
const headerBack = React.useMemo(() => {
|
|
174
|
-
if (canGoBack) {
|
|
175
|
-
return {
|
|
176
|
-
href: undefined,
|
|
177
|
-
// No href needed for native
|
|
178
|
-
title: backTitle
|
|
179
|
-
};
|
|
180
|
-
}
|
|
181
|
-
return undefined;
|
|
182
|
-
}, [canGoBack, backTitle]);
|
|
183
|
-
const isRemovePrevented = preventedRoutes[route.key]?.preventRemove;
|
|
184
|
-
const headerConfig = (0, _useHeaderConfigProps.useHeaderConfigProps)({
|
|
185
|
-
...options,
|
|
186
|
-
route,
|
|
187
|
-
headerBackButtonMenuEnabled: isRemovePrevented !== undefined ? !isRemovePrevented : headerBackButtonMenuEnabled,
|
|
188
|
-
headerBackTitle: options.headerBackTitle !== undefined ? options.headerBackTitle : undefined,
|
|
189
|
-
headerHeight,
|
|
190
|
-
headerShown: header !== undefined ? false : headerShown,
|
|
191
|
-
headerTopInsetEnabled,
|
|
192
|
-
headerBack
|
|
193
|
-
});
|
|
194
|
-
return /*#__PURE__*/(0, _jsxRuntime.jsx)(_native.NavigationContext.Provider, {
|
|
195
|
-
value: navigation,
|
|
196
|
-
children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_native.NavigationRouteContext.Provider, {
|
|
197
|
-
value: route,
|
|
198
|
-
children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNativeScreens.ScreenStackItem, {
|
|
199
|
-
screenId: route.key,
|
|
200
|
-
activityState: isPreloaded ? 0 : 2,
|
|
201
|
-
style: _reactNative.StyleSheet.absoluteFill,
|
|
202
|
-
accessibilityElementsHidden: !focused,
|
|
203
|
-
importantForAccessibility: focused ? 'auto' : 'no-hide-descendants',
|
|
204
|
-
customAnimationOnSwipe: animationMatchesGesture,
|
|
205
|
-
fullScreenSwipeEnabled: fullScreenGestureEnabled,
|
|
206
|
-
fullScreenSwipeShadowEnabled: fullScreenGestureShadowEnabled,
|
|
207
|
-
freezeOnBlur: freezeOnBlur,
|
|
208
|
-
gestureEnabled: _reactNative.Platform.OS === 'android' ?
|
|
209
|
-
// This prop enables handling of system back gestures on Android
|
|
210
|
-
// Since we handle them in JS side, we disable this
|
|
211
|
-
false : gestureEnabled,
|
|
212
|
-
homeIndicatorHidden: autoHideHomeIndicator,
|
|
213
|
-
hideKeyboardOnSwipe: keyboardHandlingEnabled,
|
|
214
|
-
navigationBarColor: navigationBarColor,
|
|
215
|
-
navigationBarTranslucent: navigationBarTranslucent,
|
|
216
|
-
navigationBarHidden: navigationBarHidden,
|
|
217
|
-
replaceAnimation: animationTypeForReplace,
|
|
218
|
-
stackPresentation: presentation === 'card' ? 'push' : presentation,
|
|
219
|
-
stackAnimation: animation,
|
|
220
|
-
screenOrientation: orientation,
|
|
221
|
-
sheetAllowedDetents: sheetAllowedDetents,
|
|
222
|
-
sheetLargestUndimmedDetentIndex: sheetLargestUndimmedDetentIndex,
|
|
223
|
-
sheetGrabberVisible: sheetGrabberVisible,
|
|
224
|
-
sheetInitialDetentIndex: sheetInitialDetentIndex,
|
|
225
|
-
sheetCornerRadius: sheetCornerRadius,
|
|
226
|
-
sheetElevation: sheetElevation,
|
|
227
|
-
sheetExpandsWhenScrolledToEdge: sheetExpandsWhenScrolledToEdge,
|
|
228
|
-
statusBarAnimation: statusBarAnimation,
|
|
229
|
-
statusBarHidden: statusBarHidden,
|
|
230
|
-
statusBarStyle: statusBarStyle,
|
|
231
|
-
statusBarColor: statusBarBackgroundColor,
|
|
232
|
-
statusBarTranslucent: statusBarTranslucent,
|
|
233
|
-
swipeDirection: gestureDirectionOverride,
|
|
234
|
-
transitionDuration: animationDuration,
|
|
235
|
-
onWillAppear: onWillAppear,
|
|
236
|
-
onWillDisappear: onWillDisappear,
|
|
237
|
-
onAppear: onAppear,
|
|
238
|
-
onDisappear: onDisappear,
|
|
239
|
-
onDismissed: onDismissed,
|
|
240
|
-
onGestureCancel: onGestureCancel,
|
|
241
|
-
onSheetDetentChanged: onSheetDetentChanged,
|
|
242
|
-
gestureResponseDistance: gestureResponseDistance,
|
|
243
|
-
nativeBackButtonDismissalEnabled: false // on Android
|
|
244
|
-
,
|
|
245
|
-
onHeaderBackButtonClicked: onHeaderBackButtonClicked,
|
|
246
|
-
preventNativeDismiss: isRemovePrevented // on iOS
|
|
247
|
-
,
|
|
248
|
-
onNativeDismissCancelled: onNativeDismissCancelled
|
|
249
|
-
// Unfortunately, because of the bug that exists on Fabric, where native event drivers
|
|
250
|
-
// for Animated objects are being created after the first notifications about the header height
|
|
251
|
-
// from the native side, `onHeaderHeightChange` event does not notify
|
|
252
|
-
// `animatedHeaderHeight` about initial values on appearing screens at the moment.
|
|
253
|
-
,
|
|
254
|
-
onHeaderHeightChange: _reactNative.Animated.event([{
|
|
255
|
-
nativeEvent: {
|
|
256
|
-
headerHeight: rawAnimatedHeaderHeight
|
|
257
|
-
}
|
|
258
|
-
}], {
|
|
259
|
-
useNativeDriver,
|
|
260
|
-
listener: e => {
|
|
261
|
-
if (_reactNative.Platform.OS === 'android' && (options.headerBackground != null || options.headerTransparent)) {
|
|
262
|
-
// FIXME: On Android, we get 0 if the header is translucent
|
|
263
|
-
// So we set a default height in that case
|
|
264
|
-
setHeaderHeight(ANDROID_DEFAULT_HEADER_HEIGHT + topInset);
|
|
265
|
-
return;
|
|
266
|
-
}
|
|
267
|
-
if (e.nativeEvent && typeof e.nativeEvent === 'object' && 'headerHeight' in e.nativeEvent && typeof e.nativeEvent.headerHeight === 'number') {
|
|
268
|
-
const headerHeight = e.nativeEvent.headerHeight + headerHeightCorrectionOffset;
|
|
269
|
-
|
|
270
|
-
// Only debounce if header has large title or search bar
|
|
271
|
-
// As it's the only case where the header height can change frequently
|
|
272
|
-
const doesHeaderAnimate = _reactNative.Platform.OS === 'ios' && (options.headerLargeTitle || options.headerSearchBarOptions);
|
|
273
|
-
if (doesHeaderAnimate) {
|
|
274
|
-
setHeaderHeightDebounced(headerHeight);
|
|
275
|
-
} else {
|
|
276
|
-
setHeaderHeight(headerHeight);
|
|
277
|
-
}
|
|
278
|
-
}
|
|
279
|
-
}
|
|
280
|
-
}),
|
|
281
|
-
contentStyle: [presentation !== 'transparentModal' && presentation !== 'containedTransparentModal' && {
|
|
282
|
-
backgroundColor: colors.background
|
|
283
|
-
}, contentStyle],
|
|
284
|
-
headerConfig: headerConfig,
|
|
285
|
-
unstable_sheetFooter: unstable_sheetFooter
|
|
286
|
-
// When ts-expect-error is added, it affects all the props below it
|
|
287
|
-
// So we keep any props that need it at the end
|
|
288
|
-
// Otherwise invalid props may not be caught by TypeScript
|
|
289
|
-
// @ts-expect-error: `shouldFreeze` is not available in lower RNScreens versions
|
|
290
|
-
,
|
|
291
|
-
shouldFreeze: shouldFreeze,
|
|
292
|
-
children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_useAnimatedHeaderHeight.AnimatedHeaderHeightContext.Provider, {
|
|
293
|
-
value: animatedHeaderHeight,
|
|
294
|
-
children: /*#__PURE__*/(0, _jsxRuntime.jsxs)(_elements.HeaderHeightContext.Provider, {
|
|
295
|
-
value: headerShown !== false ? headerHeight : parentHeaderHeight ?? 0,
|
|
296
|
-
children: [headerBackground != null ?
|
|
297
|
-
/*#__PURE__*/
|
|
298
|
-
/**
|
|
299
|
-
* To show a custom header background, we render it at the top of the screen below the header
|
|
300
|
-
* The header also needs to be positioned absolutely (with `translucent` style)
|
|
301
|
-
*/
|
|
302
|
-
(0, _jsxRuntime.jsx)(_reactNative.View, {
|
|
303
|
-
style: [styles.background, headerTransparent ? styles.translucent : null, {
|
|
304
|
-
height: headerHeight
|
|
305
|
-
}],
|
|
306
|
-
children: headerBackground()
|
|
307
|
-
}) : null, header !== undefined && headerShown !== false ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.View, {
|
|
308
|
-
onLayout: e => {
|
|
309
|
-
const headerHeight = e.nativeEvent.layout.height;
|
|
310
|
-
setHeaderHeight(headerHeight);
|
|
311
|
-
rawAnimatedHeaderHeight.setValue(headerHeight);
|
|
312
|
-
},
|
|
313
|
-
style: [styles.header, headerTransparent ? styles.absolute : null],
|
|
314
|
-
children: header({
|
|
315
|
-
back: headerBack,
|
|
316
|
-
options,
|
|
317
|
-
route,
|
|
318
|
-
navigation
|
|
319
|
-
})
|
|
320
|
-
}) : null, /*#__PURE__*/(0, _jsxRuntime.jsx)(_elements.HeaderShownContext.Provider, {
|
|
321
|
-
value: isParentHeaderShown || headerShown !== false,
|
|
322
|
-
children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_elements.HeaderBackContext.Provider, {
|
|
323
|
-
value: headerBack,
|
|
324
|
-
children: render()
|
|
325
|
-
})
|
|
326
|
-
})]
|
|
327
|
-
})
|
|
328
|
-
})
|
|
329
|
-
}, route.key)
|
|
330
|
-
})
|
|
331
|
-
});
|
|
332
|
-
};
|
|
333
|
-
function NativeStackView({
|
|
334
|
-
state,
|
|
335
|
-
navigation,
|
|
336
|
-
descriptors,
|
|
337
|
-
describe
|
|
338
|
-
}) {
|
|
339
|
-
const {
|
|
340
|
-
setNextDismissedKey
|
|
341
|
-
} = (0, _useDismissedRouteError.useDismissedRouteError)(state);
|
|
342
|
-
(0, _useInvalidPreventRemoveError.useInvalidPreventRemoveError)(descriptors);
|
|
343
|
-
const modalRouteKeys = (0, _getModalRoutesKeys.getModalRouteKeys)(state.routes, descriptors);
|
|
344
|
-
const preloadedDescriptors = state.preloadedRoutes.reduce((acc, route) => {
|
|
345
|
-
acc[route.key] = acc[route.key] || describe(route, true);
|
|
346
|
-
return acc;
|
|
347
|
-
}, {});
|
|
348
|
-
return /*#__PURE__*/(0, _jsxRuntime.jsx)(_elements.SafeAreaProviderCompat, {
|
|
349
|
-
children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNativeScreens.ScreenStack, {
|
|
350
|
-
style: styles.container,
|
|
351
|
-
children: state.routes.concat(state.preloadedRoutes).map((route, index) => {
|
|
352
|
-
const descriptor = descriptors[route.key] ?? preloadedDescriptors[route.key];
|
|
353
|
-
const isFocused = state.index === index;
|
|
354
|
-
const isBelowFocused = state.index - 1 === index;
|
|
355
|
-
const previousKey = state.routes[index - 1]?.key;
|
|
356
|
-
const nextKey = state.routes[index + 1]?.key;
|
|
357
|
-
const previousDescriptor = previousKey ? descriptors[previousKey] : undefined;
|
|
358
|
-
const nextDescriptor = nextKey ? descriptors[nextKey] : undefined;
|
|
359
|
-
const isModal = modalRouteKeys.includes(route.key);
|
|
360
|
-
const isPreloaded = preloadedDescriptors[route.key] !== undefined && descriptors[route.key] === undefined;
|
|
361
|
-
|
|
362
|
-
// On Fabric, when screen is frozen, animated and reanimated values are not updated
|
|
363
|
-
// due to component being unmounted. To avoid this, we don't freeze the previous screen there
|
|
364
|
-
const shouldFreeze = isFabric() ? !isPreloaded && !isFocused && !isBelowFocused : !isPreloaded && !isFocused;
|
|
365
|
-
return /*#__PURE__*/(0, _jsxRuntime.jsx)(SceneView, {
|
|
366
|
-
index: index,
|
|
367
|
-
focused: isFocused,
|
|
368
|
-
shouldFreeze: shouldFreeze,
|
|
369
|
-
descriptor: descriptor,
|
|
370
|
-
previousDescriptor: previousDescriptor,
|
|
371
|
-
nextDescriptor: nextDescriptor,
|
|
372
|
-
isPresentationModal: isModal,
|
|
373
|
-
isPreloaded: isPreloaded,
|
|
374
|
-
onWillDisappear: () => {
|
|
375
|
-
navigation.emit({
|
|
376
|
-
type: 'transitionStart',
|
|
377
|
-
data: {
|
|
378
|
-
closing: true
|
|
379
|
-
},
|
|
380
|
-
target: route.key
|
|
381
|
-
});
|
|
382
|
-
},
|
|
383
|
-
onWillAppear: () => {
|
|
384
|
-
navigation.emit({
|
|
385
|
-
type: 'transitionStart',
|
|
386
|
-
data: {
|
|
387
|
-
closing: false
|
|
388
|
-
},
|
|
389
|
-
target: route.key
|
|
390
|
-
});
|
|
391
|
-
},
|
|
392
|
-
onAppear: () => {
|
|
393
|
-
navigation.emit({
|
|
394
|
-
type: 'transitionEnd',
|
|
395
|
-
data: {
|
|
396
|
-
closing: false
|
|
397
|
-
},
|
|
398
|
-
target: route.key
|
|
399
|
-
});
|
|
400
|
-
},
|
|
401
|
-
onDisappear: () => {
|
|
402
|
-
navigation.emit({
|
|
403
|
-
type: 'transitionEnd',
|
|
404
|
-
data: {
|
|
405
|
-
closing: true
|
|
406
|
-
},
|
|
407
|
-
target: route.key
|
|
408
|
-
});
|
|
409
|
-
},
|
|
410
|
-
onDismissed: event => {
|
|
411
|
-
navigation.dispatch({
|
|
412
|
-
..._native.StackActions.pop(event.nativeEvent.dismissCount),
|
|
413
|
-
source: route.key,
|
|
414
|
-
target: state.key
|
|
415
|
-
});
|
|
416
|
-
setNextDismissedKey(route.key);
|
|
417
|
-
},
|
|
418
|
-
onHeaderBackButtonClicked: () => {
|
|
419
|
-
navigation.dispatch({
|
|
420
|
-
..._native.StackActions.pop(),
|
|
421
|
-
source: route.key,
|
|
422
|
-
target: state.key
|
|
423
|
-
});
|
|
424
|
-
},
|
|
425
|
-
onNativeDismissCancelled: event => {
|
|
426
|
-
navigation.dispatch({
|
|
427
|
-
..._native.StackActions.pop(event.nativeEvent.dismissCount),
|
|
428
|
-
source: route.key,
|
|
429
|
-
target: state.key
|
|
430
|
-
});
|
|
431
|
-
},
|
|
432
|
-
onGestureCancel: () => {
|
|
433
|
-
navigation.emit({
|
|
434
|
-
type: 'gestureCancel',
|
|
435
|
-
target: route.key
|
|
436
|
-
});
|
|
437
|
-
},
|
|
438
|
-
onSheetDetentChanged: event => {
|
|
439
|
-
navigation.emit({
|
|
440
|
-
type: 'sheetDetentChange',
|
|
441
|
-
target: route.key,
|
|
442
|
-
data: {
|
|
443
|
-
index: event.nativeEvent.index,
|
|
444
|
-
stable: event.nativeEvent.isStable
|
|
445
|
-
}
|
|
446
|
-
});
|
|
447
|
-
}
|
|
448
|
-
}, route.key);
|
|
449
|
-
})
|
|
450
|
-
})
|
|
451
|
-
});
|
|
452
|
-
}
|
|
453
|
-
const styles = _reactNative.StyleSheet.create({
|
|
454
|
-
container: {
|
|
455
|
-
flex: 1
|
|
456
|
-
},
|
|
457
|
-
header: {
|
|
458
|
-
zIndex: 1
|
|
459
|
-
},
|
|
460
|
-
absolute: {
|
|
461
|
-
position: 'absolute',
|
|
462
|
-
top: 0,
|
|
463
|
-
start: 0,
|
|
464
|
-
end: 0
|
|
465
|
-
},
|
|
466
|
-
translucent: {
|
|
467
|
-
position: 'absolute',
|
|
468
|
-
top: 0,
|
|
469
|
-
start: 0,
|
|
470
|
-
end: 0,
|
|
471
|
-
zIndex: 1,
|
|
472
|
-
elevation: 1
|
|
473
|
-
},
|
|
474
|
-
background: {
|
|
475
|
-
overflow: 'hidden'
|
|
476
|
-
}
|
|
477
|
-
});
|
|
478
|
-
//# sourceMappingURL=NativeStackView.native.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"names":["_elements","require","_native","React","_interopRequireWildcard","_reactNative","_reactNativeSafeAreaContext","_reactNativeScreens","_debounce","_getModalRoutesKeys","_useAnimatedHeaderHeight","_useDismissedRouteError","_useInvalidPreventRemoveError","_useHeaderConfigProps","_jsxRuntime","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","ANDROID_DEFAULT_HEADER_HEIGHT","isFabric","global","useNativeDriver","Platform","OS","SceneView","index","focused","shouldFreeze","descriptor","previousDescriptor","nextDescriptor","isPresentationModal","isPreloaded","onWillDisappear","onWillAppear","onAppear","onDisappear","onDismissed","onHeaderBackButtonClicked","onNativeDismissCancelled","onGestureCancel","onSheetDetentChanged","route","navigation","options","render","animation","animationMatchesGesture","presentation","fullScreenGestureEnabled","animationDuration","animationTypeForReplace","fullScreenGestureShadowEnabled","gestureEnabled","gestureDirection","gestureResponseDistance","header","headerBackButtonMenuEnabled","headerShown","headerBackground","headerTransparent","autoHideHomeIndicator","keyboardHandlingEnabled","navigationBarColor","navigationBarTranslucent","navigationBarHidden","orientation","sheetAllowedDetents","sheetLargestUndimmedDetentIndex","sheetGrabberVisible","sheetCornerRadius","sheetElevation","sheetExpandsWhenScrolledToEdge","sheetInitialDetentIndex","statusBarAnimation","statusBarHidden","statusBarStyle","statusBarTranslucent","statusBarBackgroundColor","unstable_sheetFooter","freezeOnBlur","contentStyle","undefined","nextGestureDirection","gestureDirectionOverride","colors","useTheme","insets","useSafeAreaInsets","frame","useSafeAreaFrame","isModal","isIPhone","isPad","isTV","isLandscape","width","height","isParentHeaderShown","useContext","HeaderShownContext","parentHeaderHeight","HeaderHeightContext","parentHeaderBack","HeaderBackContext","topInset","top","preventedRoutes","usePreventRemoveContext","defaultHeaderHeight","select","android","getDefaultHeaderHeight","headerHeight","setHeaderHeight","useState","setHeaderHeightDebounced","useCallback","debounce","hasCustomHeader","headerHeightCorrectionOffset","statusBarHeight","StatusBar","currentHeight","rawAnimatedHeaderHeight","useAnimatedValue","animatedHeaderHeight","useMemo","Animated","add","headerTopInsetEnabled","canGoBack","backTitle","getHeaderTitle","name","title","headerBack","href","isRemovePrevented","key","preventRemove","headerConfig","useHeaderConfigProps","headerBackTitle","jsx","NavigationContext","Provider","value","children","NavigationRouteContext","ScreenStackItem","screenId","activityState","style","StyleSheet","absoluteFill","accessibilityElementsHidden","importantForAccessibility","customAnimationOnSwipe","fullScreenSwipeEnabled","fullScreenSwipeShadowEnabled","homeIndicatorHidden","hideKeyboardOnSwipe","replaceAnimation","stackPresentation","stackAnimation","screenOrientation","statusBarColor","swipeDirection","transitionDuration","nativeBackButtonDismissalEnabled","preventNativeDismiss","onHeaderHeightChange","event","nativeEvent","listener","doesHeaderAnimate","headerLargeTitle","headerSearchBarOptions","backgroundColor","background","AnimatedHeaderHeightContext","jsxs","View","styles","translucent","onLayout","layout","setValue","absolute","back","NativeStackView","state","descriptors","describe","setNextDismissedKey","useDismissedRouteError","useInvalidPreventRemoveError","modalRouteKeys","getModalRouteKeys","routes","preloadedDescriptors","preloadedRoutes","reduce","acc","SafeAreaProviderCompat","ScreenStack","container","concat","map","isFocused","isBelowFocused","previousKey","nextKey","includes","emit","type","data","closing","target","dispatch","StackActions","pop","dismissCount","source","stable","isStable","create","flex","zIndex","position","start","end","elevation","overflow"],"sourceRoot":"../../../src","sources":["views/NativeStackView.native.tsx"],"mappings":"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","ignoreList":[]}
|