@react-navigation/native-stack 7.0.0-alpha.1 → 7.0.0-alpha.11

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.
Files changed (77) hide show
  1. package/lib/commonjs/index.js +7 -0
  2. package/lib/commonjs/index.js.map +1 -1
  3. package/lib/commonjs/navigators/createNativeStackNavigator.js +24 -24
  4. package/lib/commonjs/navigators/createNativeStackNavigator.js.map +1 -1
  5. package/lib/commonjs/types.js.map +1 -1
  6. package/lib/commonjs/utils/useAnimatedHeaderHeight.js +19 -0
  7. package/lib/commonjs/utils/useAnimatedHeaderHeight.js.map +1 -0
  8. package/lib/commonjs/utils/useDismissedRouteError.js +3 -4
  9. package/lib/commonjs/utils/useDismissedRouteError.js.map +1 -1
  10. package/lib/commonjs/utils/useInvalidPreventRemoveError.js +4 -5
  11. package/lib/commonjs/utils/useInvalidPreventRemoveError.js.map +1 -1
  12. package/lib/commonjs/views/DebugContainer.js +2 -2
  13. package/lib/commonjs/views/DebugContainer.js.map +1 -1
  14. package/lib/commonjs/views/DebugContainer.native.js +19 -7
  15. package/lib/commonjs/views/DebugContainer.native.js.map +1 -1
  16. package/lib/commonjs/views/FontProcessor.js.map +1 -1
  17. package/lib/commonjs/views/FontProcessor.native.js +2 -4
  18. package/lib/commonjs/views/FontProcessor.native.js.map +1 -1
  19. package/lib/commonjs/views/HeaderConfig.js +10 -23
  20. package/lib/commonjs/views/HeaderConfig.js.map +1 -1
  21. package/lib/commonjs/views/NativeStackView.js +25 -16
  22. package/lib/commonjs/views/NativeStackView.js.map +1 -1
  23. package/lib/commonjs/views/NativeStackView.native.js +124 -47
  24. package/lib/commonjs/views/NativeStackView.native.js.map +1 -1
  25. package/lib/module/index.js +5 -0
  26. package/lib/module/index.js.map +1 -1
  27. package/lib/module/navigators/createNativeStackNavigator.js +21 -20
  28. package/lib/module/navigators/createNativeStackNavigator.js.map +1 -1
  29. package/lib/module/types.js.map +1 -1
  30. package/lib/module/utils/useAnimatedHeaderHeight.js +10 -0
  31. package/lib/module/utils/useAnimatedHeaderHeight.js.map +1 -0
  32. package/lib/module/utils/useDismissedRouteError.js +1 -2
  33. package/lib/module/utils/useDismissedRouteError.js.map +1 -1
  34. package/lib/module/utils/useInvalidPreventRemoveError.js +2 -3
  35. package/lib/module/utils/useInvalidPreventRemoveError.js.map +1 -1
  36. package/lib/module/views/DebugContainer.js.map +1 -1
  37. package/lib/module/views/DebugContainer.native.js +18 -4
  38. package/lib/module/views/DebugContainer.native.js.map +1 -1
  39. package/lib/module/views/FontProcessor.js.map +1 -1
  40. package/lib/module/views/FontProcessor.native.js +2 -4
  41. package/lib/module/views/FontProcessor.native.js.map +1 -1
  42. package/lib/module/views/HeaderConfig.js +10 -23
  43. package/lib/module/views/HeaderConfig.js.map +1 -1
  44. package/lib/module/views/NativeStackView.js +23 -14
  45. package/lib/module/views/NativeStackView.js.map +1 -1
  46. package/lib/module/views/NativeStackView.native.js +123 -46
  47. package/lib/module/views/NativeStackView.native.js.map +1 -1
  48. package/lib/typescript/src/index.d.ts +4 -0
  49. package/lib/typescript/src/index.d.ts.map +1 -1
  50. package/lib/typescript/src/navigators/createNativeStackNavigator.d.ts +4 -4
  51. package/lib/typescript/src/navigators/createNativeStackNavigator.d.ts.map +1 -1
  52. package/lib/typescript/src/types.d.ts +88 -10
  53. package/lib/typescript/src/types.d.ts.map +1 -1
  54. package/lib/typescript/src/utils/useAnimatedHeaderHeight.d.ts +5 -0
  55. package/lib/typescript/src/utils/useAnimatedHeaderHeight.d.ts.map +1 -0
  56. package/lib/typescript/src/views/DebugContainer.d.ts +2 -2
  57. package/lib/typescript/src/views/DebugContainer.d.ts.map +1 -1
  58. package/lib/typescript/src/views/DebugContainer.native.d.ts +7 -2
  59. package/lib/typescript/src/views/DebugContainer.native.d.ts.map +1 -1
  60. package/lib/typescript/src/views/FontProcessor.native.d.ts.map +1 -1
  61. package/lib/typescript/src/views/HeaderConfig.d.ts +2 -3
  62. package/lib/typescript/src/views/HeaderConfig.d.ts.map +1 -1
  63. package/lib/typescript/src/views/NativeStackView.d.ts +3 -3
  64. package/lib/typescript/src/views/NativeStackView.d.ts.map +1 -1
  65. package/lib/typescript/src/views/NativeStackView.native.d.ts +3 -3
  66. package/lib/typescript/src/views/NativeStackView.native.d.ts.map +1 -1
  67. package/package.json +16 -17
  68. package/src/index.tsx +5 -0
  69. package/src/navigators/createNativeStackNavigator.tsx +9 -5
  70. package/src/types.tsx +88 -11
  71. package/src/utils/useAnimatedHeaderHeight.tsx +18 -0
  72. package/src/views/DebugContainer.native.tsx +12 -6
  73. package/src/views/DebugContainer.tsx +1 -1
  74. package/src/views/FontProcessor.native.tsx +1 -2
  75. package/src/views/HeaderConfig.tsx +101 -131
  76. package/src/views/NativeStackView.native.tsx +264 -166
  77. package/src/views/NativeStackView.tsx +131 -123
@@ -5,10 +5,11 @@ Object.defineProperty(exports, "__esModule", {
5
5
  });
6
6
  exports.NativeStackView = NativeStackView;
7
7
  var _elements = require("@react-navigation/elements");
8
+ var _native = require("@react-navigation/native");
8
9
  var React = _interopRequireWildcard(require("react"));
9
10
  var _reactNative = require("react-native");
10
- 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); }
11
- 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; }
11
+ 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); }
12
+ 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 && Object.prototype.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; }
12
13
  const TRANSPARENT_PRESENTATIONS = ['transparentModal', 'containedTransparentModal'];
13
14
  function NativeStackView(_ref) {
14
15
  let {
@@ -16,13 +17,23 @@ function NativeStackView(_ref) {
16
17
  descriptors
17
18
  } = _ref;
18
19
  const parentHeaderBack = React.useContext(_elements.HeaderBackContext);
19
- return /*#__PURE__*/React.createElement(_elements.SafeAreaProviderCompat, null, /*#__PURE__*/React.createElement(_reactNative.View, {
20
- style: styles.container
20
+ const {
21
+ buildHref
22
+ } = (0, _native.useLinkBuilder)();
23
+ const {
24
+ colors
25
+ } = (0, _native.useTheme)();
26
+ if (state.preloadedRoutes.length !== 0) {
27
+ throw new Error('Preloading routes is not supported in the NativeStackNavigator navigator.');
28
+ }
29
+ return /*#__PURE__*/React.createElement(_elements.SafeAreaProviderCompat, {
30
+ style: {
31
+ backgroundColor: colors.background
32
+ }
21
33
  }, state.routes.map((route, i) => {
22
- var _state$routes, _state$routes2;
23
34
  const isFocused = state.index === i;
24
- const previousKey = (_state$routes = state.routes[i - 1]) === null || _state$routes === void 0 ? void 0 : _state$routes.key;
25
- const nextKey = (_state$routes2 = state.routes[i + 1]) === null || _state$routes2 === void 0 ? void 0 : _state$routes2.key;
35
+ const previousKey = state.routes[i - 1]?.key;
36
+ const nextKey = state.routes[i + 1]?.key;
26
37
  const previousDescriptor = previousKey ? descriptors[previousKey] : undefined;
27
38
  const nextDescriptor = nextKey ? descriptors[nextKey] : undefined;
28
39
  const {
@@ -31,7 +42,8 @@ function NativeStackView(_ref) {
31
42
  render
32
43
  } = descriptors[route.key];
33
44
  const headerBack = previousDescriptor ? {
34
- title: (0, _elements.getHeaderTitle)(previousDescriptor.options, previousDescriptor.route.name)
45
+ title: (0, _elements.getHeaderTitle)(previousDescriptor.options, previousDescriptor.route.name),
46
+ href: buildHref(previousDescriptor.route.name, previousDescriptor.route.params)
35
47
  } : parentHeaderBack;
36
48
  const canGoBack = headerBack !== undefined;
37
49
  const {
@@ -52,7 +64,7 @@ function NativeStackView(_ref) {
52
64
  presentation,
53
65
  contentStyle
54
66
  } = options;
55
- const nextPresentation = nextDescriptor === null || nextDescriptor === void 0 ? void 0 : nextDescriptor.options.presentation;
67
+ const nextPresentation = nextDescriptor?.options.presentation;
56
68
  return /*#__PURE__*/React.createElement(_elements.Screen, {
57
69
  key: route.key,
58
70
  focused: isFocused,
@@ -85,12 +97,13 @@ function NativeStackView(_ref) {
85
97
  tintColor: tintColor,
86
98
  backImage: headerBackImageSource !== undefined ? () => /*#__PURE__*/React.createElement(_reactNative.Image, {
87
99
  source: headerBackImageSource,
100
+ resizeMode: "contain",
88
101
  style: [styles.backImage, {
89
102
  tintColor
90
103
  }]
91
104
  }) : undefined,
92
105
  onPress: navigation.goBack,
93
- canGoBack: canGoBack
106
+ href: headerBack.href
94
107
  });
95
108
  } : headerLeft,
96
109
  headerRight: typeof headerRight === 'function' ? _ref4 => {
@@ -129,20 +142,16 @@ function NativeStackView(_ref) {
129
142
  }, /*#__PURE__*/React.createElement(_reactNative.View, {
130
143
  style: [styles.contentContainer, contentStyle]
131
144
  }, render())));
132
- })));
145
+ }));
133
146
  }
134
147
  const styles = _reactNative.StyleSheet.create({
135
- container: {
136
- flex: 1
137
- },
138
148
  contentContainer: {
139
149
  flex: 1
140
150
  },
141
151
  backImage: {
142
152
  height: 24,
143
153
  width: 24,
144
- margin: 3,
145
- resizeMode: 'contain'
154
+ margin: 3
146
155
  }
147
156
  });
148
157
  //# sourceMappingURL=NativeStackView.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["TRANSPARENT_PRESENTATIONS","NativeStackView","state","descriptors","parentHeaderBack","React","useContext","HeaderBackContext","styles","container","routes","map","route","i","isFocused","index","previousKey","key","nextKey","previousDescriptor","undefined","nextDescriptor","options","navigation","render","headerBack","title","getHeaderTitle","name","canGoBack","header","headerShown","headerTintColor","headerBackImageSource","headerLeft","headerRight","headerTitle","headerTitleAlign","headerTitleStyle","headerStyle","headerShadowVisible","headerTransparent","headerBackground","headerBackTitle","presentation","contentStyle","nextPresentation","back","tintColor","label","backImage","goBack","children","StyleSheet","absoluteFill","display","includes","backgroundColor","contentContainer","create","flex","height","width","margin","resizeMode"],"sourceRoot":"../../../src","sources":["views/NativeStackView.tsx"],"mappings":"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"}
1
+ {"version":3,"names":["_elements","require","_native","React","_interopRequireWildcard","_reactNative","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","TRANSPARENT_PRESENTATIONS","NativeStackView","_ref","state","descriptors","parentHeaderBack","useContext","HeaderBackContext","buildHref","useLinkBuilder","colors","useTheme","preloadedRoutes","length","Error","createElement","SafeAreaProviderCompat","style","backgroundColor","background","routes","map","route","isFocused","index","previousKey","key","nextKey","previousDescriptor","undefined","nextDescriptor","options","navigation","render","headerBack","title","getHeaderTitle","name","href","params","canGoBack","header","headerShown","headerTintColor","headerBackImageSource","headerLeft","headerRight","headerTitle","headerTitleAlign","headerTitleStyle","headerStyle","headerShadowVisible","headerTransparent","headerBackground","headerBackTitle","presentation","contentStyle","nextPresentation","Screen","focused","back","Header","_ref2","tintColor","label","_ref3","HeaderBackButton","backImage","Image","source","resizeMode","styles","onPress","goBack","_ref4","_ref5","children","StyleSheet","absoluteFill","display","includes","Provider","value","View","contentContainer","create","flex","height","width","margin"],"sourceRoot":"../../../src","sources":["views/NativeStackView.tsx"],"mappings":"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"}
@@ -11,13 +11,14 @@ var _reactNative = require("react-native");
11
11
  var _reactNativeSafeAreaContext = require("react-native-safe-area-context");
12
12
  var _reactNativeScreens = require("react-native-screens");
13
13
  var _warnOnce = _interopRequireDefault(require("warn-once"));
14
+ var _useAnimatedHeaderHeight = require("../utils/useAnimatedHeaderHeight");
14
15
  var _useDismissedRouteError = require("../utils/useDismissedRouteError");
15
16
  var _useInvalidPreventRemoveError = require("../utils/useInvalidPreventRemoveError");
16
17
  var _DebugContainer = require("./DebugContainer");
17
18
  var _HeaderConfig = require("./HeaderConfig");
18
19
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
19
- 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); }
20
- 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; }
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 && Object.prototype.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; }
21
22
  function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
22
23
  const isAndroid = _reactNative.Platform.OS === 'android';
23
24
  const MaybeNestedStack = _ref => {
@@ -54,18 +55,19 @@ const MaybeNestedStack = _ref => {
54
55
  style: styles.container
55
56
  }, /*#__PURE__*/React.createElement(_reactNativeScreens.Screen, {
56
57
  enabled: true,
58
+ isNativeStack: true,
59
+ hasLargeHeader: options.headerLargeTitle ?? false,
57
60
  style: _reactNative.StyleSheet.absoluteFill
58
- }, /*#__PURE__*/React.createElement(_HeaderConfig.HeaderConfig, _extends({}, options, {
61
+ }, content, /*#__PURE__*/React.createElement(_HeaderConfig.HeaderConfig, _extends({}, options, {
59
62
  route: route,
60
63
  headerHeight: headerHeight,
61
64
  headerTopInsetEnabled: headerTopInsetEnabled,
62
65
  canGoBack: true
63
- })), content));
66
+ }))));
64
67
  }
65
68
  return content;
66
69
  };
67
70
  const SceneView = _ref2 => {
68
- var _preventedRoutes$rout;
69
71
  let {
70
72
  index,
71
73
  focused,
@@ -73,11 +75,13 @@ const SceneView = _ref2 => {
73
75
  previousDescriptor,
74
76
  nextDescriptor,
75
77
  onWillDisappear,
78
+ onWillAppear,
76
79
  onAppear,
77
80
  onDisappear,
78
81
  onDismissed,
79
82
  onHeaderBackButtonClicked,
80
- onNativeDismissCancelled
83
+ onNativeDismissCancelled,
84
+ onGestureCancel
81
85
  } = _ref2;
82
86
  const {
83
87
  route,
@@ -85,43 +89,51 @@ const SceneView = _ref2 => {
85
89
  options,
86
90
  render
87
91
  } = descriptor;
92
+ let {
93
+ animation,
94
+ animationMatchesGesture,
95
+ fullScreenGestureEnabled,
96
+ presentation = 'card'
97
+ } = options;
88
98
  const {
89
99
  animationDuration,
90
100
  animationTypeForReplace = 'push',
91
101
  gestureEnabled,
102
+ gestureDirection = presentation === 'card' ? 'horizontal' : 'vertical',
103
+ gestureResponseDistance,
92
104
  header,
93
105
  headerBackButtonMenuEnabled,
94
106
  headerShown,
107
+ headerBackground,
95
108
  headerTransparent,
96
109
  autoHideHomeIndicator,
110
+ keyboardHandlingEnabled,
97
111
  navigationBarColor,
98
112
  navigationBarHidden,
99
113
  orientation,
114
+ sheetAllowedDetents = 'large',
115
+ sheetLargestUndimmedDetent = 'all',
116
+ sheetGrabberVisible = false,
117
+ sheetCornerRadius = -1.0,
118
+ sheetExpandsWhenScrolledToEdge = true,
100
119
  statusBarAnimation,
101
120
  statusBarHidden,
102
121
  statusBarStyle,
103
122
  statusBarTranslucent,
104
- statusBarColor,
123
+ statusBarBackgroundColor,
105
124
  freezeOnBlur
106
125
  } = options;
107
- let {
108
- animation,
109
- customAnimationOnGesture,
110
- fullScreenGestureEnabled,
111
- presentation = 'card',
112
- gestureDirection = presentation === 'card' ? 'horizontal' : 'vertical'
113
- } = options;
114
126
  if (gestureDirection === 'vertical' && _reactNative.Platform.OS === 'ios') {
115
127
  // for `vertical` direction to work, we need to set `fullScreenGestureEnabled` to `true`
116
128
  // so the screen can be dismissed from any point on screen.
117
- // `customAnimationOnGesture` needs to be set to `true` so the `animation` set by user can be used,
129
+ // `animationMatchesGesture` needs to be set to `true` so the `animation` set by user can be used,
118
130
  // otherwise `simple_push` will be used.
119
131
  // Also, the default animation for this direction seems to be `slide_from_bottom`.
120
132
  if (fullScreenGestureEnabled === undefined) {
121
133
  fullScreenGestureEnabled = true;
122
134
  }
123
- if (customAnimationOnGesture === undefined) {
124
- customAnimationOnGesture = true;
135
+ if (animationMatchesGesture === undefined) {
136
+ animationMatchesGesture = true;
125
137
  }
126
138
  if (animation === undefined) {
127
139
  animation = 'slide_from_bottom';
@@ -130,7 +142,7 @@ const SceneView = _ref2 => {
130
142
 
131
143
  // workaround for rn-screens where gestureDirection has to be set on both
132
144
  // current and previous screen - software-mansion/react-native-screens/pull/1509
133
- const nextGestureDirection = nextDescriptor === null || nextDescriptor === void 0 ? void 0 : nextDescriptor.options.gestureDirection;
145
+ const nextGestureDirection = nextDescriptor?.options.gestureDirection;
134
146
  const gestureDirectionOverride = nextGestureDirection != null ? nextGestureDirection : gestureDirection;
135
147
  if (index === 0) {
136
148
  // first screen should always be treated as `card`, it resolves problems with no header animation
@@ -155,49 +167,73 @@ const SceneView = _ref2 => {
155
167
  } = (0, _native.usePreventRemoveContext)();
156
168
  const defaultHeaderHeight = (0, _elements.getDefaultHeaderHeight)(frame, isModal, topInset);
157
169
  const [customHeaderHeight, setCustomHeaderHeight] = React.useState(defaultHeaderHeight);
170
+ const animatedHeaderHeight = (0, _reactNative.useAnimatedValue)(defaultHeaderHeight);
158
171
  const headerTopInsetEnabled = topInset !== 0;
159
172
  const headerHeight = header ? customHeaderHeight : defaultHeaderHeight;
160
- const headerBack = previousDescriptor ? {
161
- title: (0, _elements.getHeaderTitle)(previousDescriptor.options, previousDescriptor.route.name)
162
- } : parentHeaderBack;
163
- const isRemovePrevented = (_preventedRoutes$rout = preventedRoutes[route.key]) === null || _preventedRoutes$rout === void 0 ? void 0 : _preventedRoutes$rout.preventRemove;
173
+ const backTitle = previousDescriptor ? (0, _elements.getHeaderTitle)(previousDescriptor.options, previousDescriptor.route.name) : parentHeaderBack?.title;
174
+ const headerBack = React.useMemo(() => ({
175
+ // No href needed for native
176
+ href: undefined,
177
+ title: backTitle
178
+ }), [backTitle]);
179
+ const isRemovePrevented = preventedRoutes[route.key]?.preventRemove;
164
180
  return /*#__PURE__*/React.createElement(_reactNativeScreens.Screen, {
165
181
  key: route.key,
166
182
  enabled: true,
183
+ isNativeStack: true,
167
184
  style: _reactNative.StyleSheet.absoluteFill,
168
- customAnimationOnSwipe: customAnimationOnGesture,
185
+ hasLargeHeader: options.headerLargeTitle ?? false,
186
+ customAnimationOnSwipe: animationMatchesGesture,
169
187
  fullScreenSwipeEnabled: fullScreenGestureEnabled,
170
188
  gestureEnabled: isAndroid ?
171
189
  // This prop enables handling of system back gestures on Android
172
190
  // Since we handle them in JS side, we disable this
173
191
  false : gestureEnabled,
174
192
  homeIndicatorHidden: autoHideHomeIndicator,
193
+ hideKeyboardOnSwipe: keyboardHandlingEnabled,
175
194
  navigationBarColor: navigationBarColor,
176
195
  navigationBarHidden: navigationBarHidden,
177
196
  replaceAnimation: animationTypeForReplace,
178
197
  stackPresentation: presentation === 'card' ? 'push' : presentation,
179
198
  stackAnimation: animation,
180
199
  screenOrientation: orientation,
200
+ sheetAllowedDetents: sheetAllowedDetents,
201
+ sheetLargestUndimmedDetent: sheetLargestUndimmedDetent,
202
+ sheetGrabberVisible: sheetGrabberVisible,
203
+ sheetCornerRadius: sheetCornerRadius,
204
+ sheetExpandsWhenScrolledToEdge: sheetExpandsWhenScrolledToEdge,
181
205
  statusBarAnimation: statusBarAnimation,
182
206
  statusBarHidden: statusBarHidden,
183
207
  statusBarStyle: statusBarStyle,
184
- statusBarColor: statusBarColor,
208
+ statusBarColor: statusBarBackgroundColor,
185
209
  statusBarTranslucent: statusBarTranslucent,
186
210
  swipeDirection: gestureDirectionOverride,
187
211
  transitionDuration: animationDuration,
212
+ onWillAppear: onWillAppear,
188
213
  onWillDisappear: onWillDisappear,
189
214
  onAppear: onAppear,
190
215
  onDisappear: onDisappear,
191
216
  onDismissed: onDismissed,
192
- isNativeStack: true,
217
+ onGestureCancel: onGestureCancel,
218
+ gestureResponseDistance: gestureResponseDistance,
193
219
  nativeBackButtonDismissalEnabled: false // on Android
194
220
  ,
195
- onHeaderBackButtonClicked: onHeaderBackButtonClicked
196
- // @ts-ignore props not exported from rn-screens
197
- ,
221
+ onHeaderBackButtonClicked: onHeaderBackButtonClicked,
198
222
  preventNativeDismiss: isRemovePrevented // on iOS
199
223
  ,
200
224
  onNativeDismissCancelled: onNativeDismissCancelled
225
+ // Unfortunately, because of the bug that exists on Fabric, where native event drivers
226
+ // for Animated objects are being created after the first notifications about the header height
227
+ // from the native side, `onHeaderHeightChange` event does not notify
228
+ // `animatedHeaderHeight` about initial values on appearing screens at the moment.
229
+ ,
230
+ onHeaderHeightChange: _reactNative.Animated.event([{
231
+ nativeEvent: {
232
+ headerHeight: animatedHeaderHeight
233
+ }
234
+ }], {
235
+ useNativeDriver: true
236
+ })
201
237
  // this prop is available since rn-screens 3.16
202
238
  ,
203
239
  freezeOnBlur: freezeOnBlur
@@ -207,17 +243,21 @@ const SceneView = _ref2 => {
207
243
  value: route
208
244
  }, /*#__PURE__*/React.createElement(_elements.HeaderShownContext.Provider, {
209
245
  value: isParentHeaderShown || headerShown !== false
246
+ }, /*#__PURE__*/React.createElement(_useAnimatedHeaderHeight.AnimatedHeaderHeightContext.Provider, {
247
+ value: animatedHeaderHeight
210
248
  }, /*#__PURE__*/React.createElement(_elements.HeaderHeightContext.Provider, {
211
249
  value: headerShown !== false ? headerHeight : parentHeaderHeight ?? 0
212
- }, /*#__PURE__*/React.createElement(_HeaderConfig.HeaderConfig, _extends({}, options, {
213
- route: route,
214
- headerBackButtonMenuEnabled: isRemovePrevented !== undefined ? !isRemovePrevented : headerBackButtonMenuEnabled,
215
- headerShown: header !== undefined ? false : headerShown,
216
- headerHeight: headerHeight,
217
- headerBackTitle: options.headerBackTitle !== undefined ? options.headerBackTitle : undefined,
218
- headerTopInsetEnabled: headerTopInsetEnabled,
219
- canGoBack: headerBack !== undefined
220
- })), /*#__PURE__*/React.createElement(_reactNative.View, {
250
+ }, headerBackground != null ?
251
+ /*#__PURE__*/
252
+ /**
253
+ * To show a custom header background, we render it at the top of the screen below the header
254
+ * The header also needs to be positioned absolutely (with `translucent` style)
255
+ */
256
+ React.createElement(_reactNative.View, {
257
+ style: [styles.background, headerTransparent ? styles.translucent : null, {
258
+ height: headerHeight
259
+ }]
260
+ }, headerBackground()) : null, /*#__PURE__*/React.createElement(_reactNative.View, {
221
261
  accessibilityElementsHidden: !focused,
222
262
  importantForAccessibility: focused ? 'auto' : 'no-hide-descendants',
223
263
  style: styles.scene
@@ -239,9 +279,17 @@ const SceneView = _ref2 => {
239
279
  options,
240
280
  route,
241
281
  navigation
242
- })) : null))))));
282
+ })) : null), /*#__PURE__*/React.createElement(_HeaderConfig.HeaderConfig, _extends({}, options, {
283
+ route: route,
284
+ headerBackButtonMenuEnabled: isRemovePrevented !== undefined ? !isRemovePrevented : headerBackButtonMenuEnabled,
285
+ headerShown: header !== undefined ? false : headerShown,
286
+ headerHeight: headerHeight,
287
+ headerBackTitle: options.headerBackTitle !== undefined ? options.headerBackTitle : undefined,
288
+ headerTopInsetEnabled: headerTopInsetEnabled,
289
+ canGoBack: headerBack !== undefined
290
+ }))))))));
243
291
  };
244
- function NativeStackViewInner(_ref3) {
292
+ function NativeStackView(_ref3) {
245
293
  let {
246
294
  state,
247
295
  navigation,
@@ -250,15 +298,21 @@ function NativeStackViewInner(_ref3) {
250
298
  const {
251
299
  setNextDismissedKey
252
300
  } = (0, _useDismissedRouteError.useDismissedRouteError)(state);
301
+ const {
302
+ colors
303
+ } = (0, _native.useTheme)();
253
304
  (0, _useInvalidPreventRemoveError.useInvalidPreventRemoveError)(descriptors);
254
- return /*#__PURE__*/React.createElement(_reactNativeScreens.ScreenStack, {
305
+ return /*#__PURE__*/React.createElement(_elements.SafeAreaProviderCompat, {
306
+ style: {
307
+ backgroundColor: colors.background
308
+ }
309
+ }, /*#__PURE__*/React.createElement(_reactNativeScreens.ScreenStack, {
255
310
  style: styles.container
256
311
  }, state.routes.map((route, index) => {
257
- var _state$routes, _state$routes2;
258
312
  const descriptor = descriptors[route.key];
259
313
  const isFocused = state.index === index;
260
- const previousKey = (_state$routes = state.routes[index - 1]) === null || _state$routes === void 0 ? void 0 : _state$routes.key;
261
- const nextKey = (_state$routes2 = state.routes[index + 1]) === null || _state$routes2 === void 0 ? void 0 : _state$routes2.key;
314
+ const previousKey = state.routes[index - 1]?.key;
315
+ const nextKey = state.routes[index + 1]?.key;
262
316
  const previousDescriptor = previousKey ? descriptors[previousKey] : undefined;
263
317
  const nextDescriptor = nextKey ? descriptors[nextKey] : undefined;
264
318
  return /*#__PURE__*/React.createElement(SceneView, {
@@ -277,6 +331,15 @@ function NativeStackViewInner(_ref3) {
277
331
  target: route.key
278
332
  });
279
333
  },
334
+ onWillAppear: () => {
335
+ navigation.emit({
336
+ type: 'transitionStart',
337
+ data: {
338
+ closing: false
339
+ },
340
+ target: route.key
341
+ });
342
+ },
280
343
  onAppear: () => {
281
344
  navigation.emit({
282
345
  type: 'transitionEnd',
@@ -316,12 +379,15 @@ function NativeStackViewInner(_ref3) {
316
379
  source: route.key,
317
380
  target: state.key
318
381
  });
382
+ },
383
+ onGestureCancel: () => {
384
+ navigation.emit({
385
+ type: 'gestureCancel',
386
+ target: route.key
387
+ });
319
388
  }
320
389
  });
321
- }));
322
- }
323
- function NativeStackView(props) {
324
- return /*#__PURE__*/React.createElement(_elements.SafeAreaProviderCompat, null, /*#__PURE__*/React.createElement(NativeStackViewInner, props));
390
+ })));
325
391
  }
326
392
  const styles = _reactNative.StyleSheet.create({
327
393
  container: {
@@ -336,6 +402,17 @@ const styles = _reactNative.StyleSheet.create({
336
402
  top: 0,
337
403
  left: 0,
338
404
  right: 0
405
+ },
406
+ translucent: {
407
+ position: 'absolute',
408
+ top: 0,
409
+ left: 0,
410
+ right: 0,
411
+ zIndex: 1,
412
+ elevation: 1
413
+ },
414
+ background: {
415
+ overflow: 'hidden'
339
416
  }
340
417
  });
341
418
  //# sourceMappingURL=NativeStackView.native.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["isAndroid","Platform","OS","MaybeNestedStack","options","route","presentation","headerHeight","headerTopInsetEnabled","children","colors","useTheme","header","headerShown","contentStyle","isHeaderInModal","undefined","headerShownPreviousRef","React","useRef","useEffect","warnOnce","current","name","content","styles","container","backgroundColor","background","StyleSheet","absoluteFill","SceneView","index","focused","descriptor","previousDescriptor","nextDescriptor","onWillDisappear","onAppear","onDisappear","onDismissed","onHeaderBackButtonClicked","onNativeDismissCancelled","navigation","render","animationDuration","animationTypeForReplace","gestureEnabled","headerBackButtonMenuEnabled","headerTransparent","autoHideHomeIndicator","navigationBarColor","navigationBarHidden","orientation","statusBarAnimation","statusBarHidden","statusBarStyle","statusBarTranslucent","statusBarColor","freezeOnBlur","animation","customAnimationOnGesture","fullScreenGestureEnabled","gestureDirection","nextGestureDirection","gestureDirectionOverride","insets","useSafeAreaInsets","frame","useSafeAreaFrame","isModal","isIPhone","isPad","isTV","isLandscape","width","height","isParentHeaderShown","useContext","HeaderShownContext","parentHeaderHeight","HeaderHeightContext","parentHeaderBack","HeaderBackContext","topInset","top","preventedRoutes","usePreventRemoveContext","defaultHeaderHeight","getDefaultHeaderHeight","customHeaderHeight","setCustomHeaderHeight","useState","headerBack","title","getHeaderTitle","isRemovePrevented","key","preventRemove","headerBackTitle","scene","e","nativeEvent","layout","absolute","back","NativeStackViewInner","state","descriptors","setNextDismissedKey","useDismissedRouteError","useInvalidPreventRemoveError","routes","map","isFocused","previousKey","nextKey","emit","type","data","closing","target","event","dispatch","StackActions","pop","dismissCount","source","NativeStackView","props","create","flex","flexDirection","position","left","right"],"sourceRoot":"../../../src","sources":["views/NativeStackView.native.tsx"],"mappings":"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"}
1
+ {"version":3,"names":["_elements","require","_native","React","_interopRequireWildcard","_reactNative","_reactNativeSafeAreaContext","_reactNativeScreens","_warnOnce","_interopRequireDefault","_useAnimatedHeaderHeight","_useDismissedRouteError","_useInvalidPreventRemoveError","_DebugContainer","_HeaderConfig","obj","__esModule","default","_getRequireWildcardCache","e","WeakMap","r","t","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","_extends","assign","bind","target","arguments","length","source","key","apply","isAndroid","Platform","OS","MaybeNestedStack","_ref","options","route","presentation","headerHeight","headerTopInsetEnabled","children","colors","useTheme","header","headerShown","contentStyle","isHeaderInModal","undefined","headerShownPreviousRef","useRef","useEffect","warnOnce","current","name","content","createElement","DebugContainer","style","styles","container","backgroundColor","background","stackPresentation","ScreenStack","Screen","enabled","isNativeStack","hasLargeHeader","headerLargeTitle","StyleSheet","absoluteFill","HeaderConfig","canGoBack","SceneView","_ref2","index","focused","descriptor","previousDescriptor","nextDescriptor","onWillDisappear","onWillAppear","onAppear","onDisappear","onDismissed","onHeaderBackButtonClicked","onNativeDismissCancelled","onGestureCancel","navigation","render","animation","animationMatchesGesture","fullScreenGestureEnabled","animationDuration","animationTypeForReplace","gestureEnabled","gestureDirection","gestureResponseDistance","headerBackButtonMenuEnabled","headerBackground","headerTransparent","autoHideHomeIndicator","keyboardHandlingEnabled","navigationBarColor","navigationBarHidden","orientation","sheetAllowedDetents","sheetLargestUndimmedDetent","sheetGrabberVisible","sheetCornerRadius","sheetExpandsWhenScrolledToEdge","statusBarAnimation","statusBarHidden","statusBarStyle","statusBarTranslucent","statusBarBackgroundColor","freezeOnBlur","nextGestureDirection","gestureDirectionOverride","insets","useSafeAreaInsets","frame","useSafeAreaFrame","isModal","isIPhone","isPad","isTV","isLandscape","width","height","isParentHeaderShown","useContext","HeaderShownContext","parentHeaderHeight","HeaderHeightContext","parentHeaderBack","HeaderBackContext","topInset","top","preventedRoutes","usePreventRemoveContext","defaultHeaderHeight","getDefaultHeaderHeight","customHeaderHeight","setCustomHeaderHeight","useState","animatedHeaderHeight","useAnimatedValue","backTitle","getHeaderTitle","title","headerBack","useMemo","href","isRemovePrevented","preventRemove","customAnimationOnSwipe","fullScreenSwipeEnabled","homeIndicatorHidden","hideKeyboardOnSwipe","replaceAnimation","stackAnimation","screenOrientation","statusBarColor","swipeDirection","transitionDuration","nativeBackButtonDismissalEnabled","preventNativeDismiss","onHeaderHeightChange","Animated","event","nativeEvent","useNativeDriver","NavigationContext","Provider","value","NavigationRouteContext","AnimatedHeaderHeightContext","View","translucent","accessibilityElementsHidden","importantForAccessibility","scene","onLayout","layout","absolute","back","headerBackTitle","NativeStackView","_ref3","state","descriptors","setNextDismissedKey","useDismissedRouteError","useInvalidPreventRemoveError","SafeAreaProviderCompat","routes","map","isFocused","previousKey","nextKey","emit","type","data","closing","dispatch","StackActions","pop","dismissCount","create","flex","flexDirection","position","left","right","zIndex","elevation","overflow"],"sourceRoot":"../../../src","sources":["views/NativeStackView.native.tsx"],"mappings":"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"}
@@ -8,6 +8,11 @@ export { createNativeStackNavigator } from './navigators/createNativeStackNaviga
8
8
  */
9
9
  export { NativeStackView } from './views/NativeStackView';
10
10
 
11
+ /**
12
+ * Hooks
13
+ */
14
+ export { useAnimatedHeaderHeight } from './utils/useAnimatedHeaderHeight';
15
+
11
16
  /**
12
17
  * Types
13
18
  */
@@ -1 +1 @@
1
- {"version":3,"names":["createNativeStackNavigator","NativeStackView"],"sourceRoot":"../../src","sources":["index.tsx"],"mappings":"AAAA;AACA;AACA;AACA,SAASA,0BAA0B,QAAQ,yCAAyC;;AAEpF;AACA;AACA;AACA,SAASC,eAAe,QAAQ,yBAAyB;;AAEzD;AACA;AACA"}
1
+ {"version":3,"names":["createNativeStackNavigator","NativeStackView","useAnimatedHeaderHeight"],"sourceRoot":"../../src","sources":["index.tsx"],"mappings":"AAAA;AACA;AACA;AACA,SAASA,0BAA0B,QAAQ,yCAAyC;;AAEpF;AACA;AACA;AACA,SAASC,eAAe,QAAQ,yBAAyB;;AAEzD;AACA;AACA;AACA,SAASC,uBAAuB,QAAQ,iCAAiC;;AAEzE;AACA;AACA"}
@@ -7,8 +7,10 @@ function NativeStackNavigator(_ref) {
7
7
  id,
8
8
  initialRouteName,
9
9
  children,
10
+ layout,
10
11
  screenListeners,
11
12
  screenOptions,
13
+ screenLayout,
12
14
  ...rest
13
15
  } = _ref;
14
16
  const {
@@ -20,30 +22,29 @@ function NativeStackNavigator(_ref) {
20
22
  id,
21
23
  initialRouteName,
22
24
  children,
25
+ layout,
23
26
  screenListeners,
24
- screenOptions
27
+ screenOptions,
28
+ screenLayout
25
29
  });
26
- React.useEffect(() => {
27
- var _navigation$addListen;
28
- return (// @ts-expect-error: there may not be a tab navigator in parent
29
- navigation === null || navigation === void 0 ? void 0 : (_navigation$addListen = navigation.addListener) === null || _navigation$addListen === void 0 ? void 0 : _navigation$addListen.call(navigation, 'tabPress', e => {
30
- const isFocused = navigation.isFocused();
30
+ React.useEffect(() =>
31
+ // @ts-expect-error: there may not be a tab navigator in parent
32
+ navigation?.addListener?.('tabPress', e => {
33
+ const isFocused = navigation.isFocused();
31
34
 
32
- // Run the operation in the next frame so we're sure all listeners have been run
33
- // This is necessary to know if preventDefault() has been called
34
- requestAnimationFrame(() => {
35
- if (state.index > 0 && isFocused && !e.defaultPrevented) {
36
- // When user taps on already focused tab and we're inside the tab,
37
- // reset the stack to replicate native behaviour
38
- navigation.dispatch({
39
- ...StackActions.popToTop(),
40
- target: state.key
41
- });
42
- }
35
+ // Run the operation in the next frame so we're sure all listeners have been run
36
+ // This is necessary to know if preventDefault() has been called
37
+ requestAnimationFrame(() => {
38
+ if (state.index > 0 && isFocused && !e.defaultPrevented) {
39
+ // When user taps on already focused tab and we're inside the tab,
40
+ // reset the stack to replicate native behaviour
41
+ navigation.dispatch({
42
+ ...StackActions.popToTop(),
43
+ target: state.key
43
44
  });
44
- })
45
- );
46
- }, [navigation, state.index, state.key]);
45
+ }
46
+ });
47
+ }), [navigation, state.index, state.key]);
47
48
  return /*#__PURE__*/React.createElement(NavigationContent, null, /*#__PURE__*/React.createElement(NativeStackView, _extends({}, rest, {
48
49
  state: state,
49
50
  navigation: navigation,