@react-navigation/native-stack 7.0.0-alpha.2 → 7.0.0-alpha.20

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 (84) 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 +29 -25
  4. package/lib/commonjs/navigators/createNativeStackNavigator.js.map +1 -1
  5. package/lib/commonjs/types.js.map +1 -1
  6. package/lib/commonjs/utils/getModalRoutesKeys.js +17 -0
  7. package/lib/commonjs/utils/getModalRoutesKeys.js.map +1 -0
  8. package/lib/commonjs/utils/useAnimatedHeaderHeight.js +19 -0
  9. package/lib/commonjs/utils/useAnimatedHeaderHeight.js.map +1 -0
  10. package/lib/commonjs/utils/useDismissedRouteError.js +3 -4
  11. package/lib/commonjs/utils/useDismissedRouteError.js.map +1 -1
  12. package/lib/commonjs/utils/useInvalidPreventRemoveError.js +4 -5
  13. package/lib/commonjs/utils/useInvalidPreventRemoveError.js.map +1 -1
  14. package/lib/commonjs/views/DebugContainer.js +2 -2
  15. package/lib/commonjs/views/DebugContainer.js.map +1 -1
  16. package/lib/commonjs/views/DebugContainer.native.js +19 -7
  17. package/lib/commonjs/views/DebugContainer.native.js.map +1 -1
  18. package/lib/commonjs/views/FontProcessor.js.map +1 -1
  19. package/lib/commonjs/views/FontProcessor.native.js +2 -4
  20. package/lib/commonjs/views/FontProcessor.native.js.map +1 -1
  21. package/lib/commonjs/views/HeaderConfig.js +18 -29
  22. package/lib/commonjs/views/HeaderConfig.js.map +1 -1
  23. package/lib/commonjs/views/NativeStackView.js +27 -17
  24. package/lib/commonjs/views/NativeStackView.js.map +1 -1
  25. package/lib/commonjs/views/NativeStackView.native.js +131 -49
  26. package/lib/commonjs/views/NativeStackView.native.js.map +1 -1
  27. package/lib/module/index.js +5 -0
  28. package/lib/module/index.js.map +1 -1
  29. package/lib/module/navigators/createNativeStackNavigator.js +26 -21
  30. package/lib/module/navigators/createNativeStackNavigator.js.map +1 -1
  31. package/lib/module/types.js.map +1 -1
  32. package/lib/module/utils/getModalRoutesKeys.js +10 -0
  33. package/lib/module/utils/getModalRoutesKeys.js.map +1 -0
  34. package/lib/module/utils/useAnimatedHeaderHeight.js +10 -0
  35. package/lib/module/utils/useAnimatedHeaderHeight.js.map +1 -0
  36. package/lib/module/utils/useDismissedRouteError.js +1 -2
  37. package/lib/module/utils/useDismissedRouteError.js.map +1 -1
  38. package/lib/module/utils/useInvalidPreventRemoveError.js +2 -3
  39. package/lib/module/utils/useInvalidPreventRemoveError.js.map +1 -1
  40. package/lib/module/views/DebugContainer.js.map +1 -1
  41. package/lib/module/views/DebugContainer.native.js +18 -4
  42. package/lib/module/views/DebugContainer.native.js.map +1 -1
  43. package/lib/module/views/FontProcessor.js.map +1 -1
  44. package/lib/module/views/FontProcessor.native.js +2 -4
  45. package/lib/module/views/FontProcessor.native.js.map +1 -1
  46. package/lib/module/views/HeaderConfig.js +18 -29
  47. package/lib/module/views/HeaderConfig.js.map +1 -1
  48. package/lib/module/views/NativeStackView.js +25 -15
  49. package/lib/module/views/NativeStackView.js.map +1 -1
  50. package/lib/module/views/NativeStackView.native.js +130 -48
  51. package/lib/module/views/NativeStackView.native.js.map +1 -1
  52. package/lib/typescript/src/index.d.ts +5 -1
  53. package/lib/typescript/src/index.d.ts.map +1 -1
  54. package/lib/typescript/src/navigators/createNativeStackNavigator.d.ts +14 -8
  55. package/lib/typescript/src/navigators/createNativeStackNavigator.d.ts.map +1 -1
  56. package/lib/typescript/src/types.d.ts +97 -12
  57. package/lib/typescript/src/types.d.ts.map +1 -1
  58. package/lib/typescript/src/utils/getModalRoutesKeys.d.ts +4 -0
  59. package/lib/typescript/src/utils/getModalRoutesKeys.d.ts.map +1 -0
  60. package/lib/typescript/src/utils/useAnimatedHeaderHeight.d.ts +5 -0
  61. package/lib/typescript/src/utils/useAnimatedHeaderHeight.d.ts.map +1 -0
  62. package/lib/typescript/src/views/DebugContainer.d.ts +2 -2
  63. package/lib/typescript/src/views/DebugContainer.d.ts.map +1 -1
  64. package/lib/typescript/src/views/DebugContainer.native.d.ts +7 -2
  65. package/lib/typescript/src/views/DebugContainer.native.d.ts.map +1 -1
  66. package/lib/typescript/src/views/FontProcessor.native.d.ts.map +1 -1
  67. package/lib/typescript/src/views/HeaderConfig.d.ts +2 -2
  68. package/lib/typescript/src/views/HeaderConfig.d.ts.map +1 -1
  69. package/lib/typescript/src/views/NativeStackView.d.ts +3 -2
  70. package/lib/typescript/src/views/NativeStackView.d.ts.map +1 -1
  71. package/lib/typescript/src/views/NativeStackView.native.d.ts +3 -2
  72. package/lib/typescript/src/views/NativeStackView.native.d.ts.map +1 -1
  73. package/package.json +15 -16
  74. package/src/index.tsx +6 -0
  75. package/src/navigators/createNativeStackNavigator.tsx +39 -11
  76. package/src/types.tsx +104 -12
  77. package/src/utils/getModalRoutesKeys.ts +21 -0
  78. package/src/utils/useAnimatedHeaderHeight.tsx +18 -0
  79. package/src/views/DebugContainer.native.tsx +12 -6
  80. package/src/views/DebugContainer.tsx +1 -1
  81. package/src/views/FontProcessor.native.tsx +1 -2
  82. package/src/views/HeaderConfig.tsx +106 -134
  83. package/src/views/NativeStackView.native.tsx +273 -167
  84. package/src/views/NativeStackView.tsx +132 -123
@@ -1,7 +1,7 @@
1
1
  /// <reference types="react" />
2
- import type { DefaultNavigatorOptions, Descriptor, NavigationHelpers, NavigationProp, ParamListBase, Route, RouteProp, StackActionHelpers, StackNavigationState, StackRouterOptions } from '@react-navigation/native';
2
+ import type { DefaultNavigatorOptions, Descriptor, NavigationHelpers, NavigationProp, ParamListBase, Route, RouteProp, StackActionHelpers, StackNavigationState, StackRouterOptions, Theme } from '@react-navigation/native';
3
3
  import type { ImageSourcePropType, StyleProp, TextStyle, ViewStyle } from 'react-native';
4
- import type { ScreenProps, ScreenStackHeaderConfigProps, SearchBarProps } from 'react-native-screens';
4
+ import type { ScreenProps, ScreenStackHeaderConfigProps, SearchBarProps, SheetDetentTypes } from 'react-native-screens';
5
5
  export type NativeStackNavigationEventMap = {
6
6
  /**
7
7
  * Event which fires when a transition animation starts.
@@ -19,12 +19,21 @@ export type NativeStackNavigationEventMap = {
19
19
  closing: boolean;
20
20
  };
21
21
  };
22
+ /**
23
+ * Event which fires when a swipe back is canceled on iOS.
24
+ */
25
+ gestureCancel: {
26
+ data: undefined;
27
+ };
22
28
  };
23
29
  export type NativeStackNavigationProp<ParamList extends ParamListBase, RouteName extends keyof ParamList = string, NavigatorID extends string | undefined = undefined> = NavigationProp<ParamList, RouteName, NavigatorID, StackNavigationState<ParamList>, NativeStackNavigationOptions, NativeStackNavigationEventMap> & StackActionHelpers<ParamList>;
24
30
  export type NativeStackScreenProps<ParamList extends ParamListBase, RouteName extends keyof ParamList = string, NavigatorID extends string | undefined = undefined> = {
25
31
  navigation: NativeStackNavigationProp<ParamList, RouteName, NavigatorID>;
26
32
  route: RouteProp<ParamList, RouteName>;
27
33
  };
34
+ export type NativeStackOptionsArgs<ParamList extends ParamListBase, RouteName extends keyof ParamList = keyof ParamList, NavigatorID extends string | undefined = undefined> = NativeStackScreenProps<ParamList, RouteName, NavigatorID> & {
35
+ theme: Theme;
36
+ };
28
37
  export type NativeStackNavigationHelpers = NavigationHelpers<ParamListBase, NativeStackNavigationEventMap>;
29
38
  export type NativeStackNavigationConfig = {};
30
39
  export type NativeStackHeaderProps = {
@@ -35,7 +44,11 @@ export type NativeStackHeaderProps = {
35
44
  /**
36
45
  * Title of the previous screen.
37
46
  */
38
- title: string;
47
+ title: string | undefined;
48
+ /**
49
+ * The `href` to use for the anchor tag on web
50
+ */
51
+ href: string | undefined;
39
52
  };
40
53
  /**
41
54
  * Options for the current screen.
@@ -50,7 +63,7 @@ export type NativeStackHeaderProps = {
50
63
  */
51
64
  navigation: NativeStackNavigationProp<ParamListBase>;
52
65
  };
53
- export type HeaderButtonProps = {
66
+ export type NativeStackHeaderRightProps = {
54
67
  /**
55
68
  * Tint color for the header.
56
69
  */
@@ -60,12 +73,16 @@ export type HeaderButtonProps = {
60
73
  */
61
74
  canGoBack: boolean;
62
75
  };
63
- export type HeaderBackButtonProps = HeaderButtonProps & {
76
+ export type NativeStackHeaderLeftProps = NativeStackHeaderRightProps & {
64
77
  /**
65
78
  * Label text for the button. Usually the title of the previous screen.
66
79
  * By default, this is only shown on iOS.
67
80
  */
68
81
  label?: string;
82
+ /**
83
+ * The `href` to use for the anchor tag on web
84
+ */
85
+ href?: string;
69
86
  };
70
87
  export type NativeStackNavigationOptions = {
71
88
  /**
@@ -218,11 +235,11 @@ export type NativeStackNavigationOptions = {
218
235
  * Function which returns a React Element to display on the left side of the header.
219
236
  * This replaces the back button. See `headerBackVisible` to show the back button along side left element.
220
237
  */
221
- headerLeft?: (props: HeaderBackButtonProps) => React.ReactNode;
238
+ headerLeft?: (props: NativeStackHeaderLeftProps) => React.ReactNode;
222
239
  /**
223
240
  * Function which returns a React Element to display on the right side of the header.
224
241
  */
225
- headerRight?: (props: HeaderButtonProps) => React.ReactNode;
242
+ headerRight?: (props: NativeStackHeaderRightProps) => React.ReactNode;
226
243
  /**
227
244
  * String or a function that returns a React Element to be used by the header.
228
245
  * Defaults to screen `title` or route name.
@@ -282,6 +299,12 @@ export type NativeStackNavigationOptions = {
282
299
  * @platform ios
283
300
  */
284
301
  autoHideHomeIndicator?: boolean;
302
+ /**
303
+ * Whether the keyboard should hide when swiping to the previous screen. Defaults to `false`.
304
+ *
305
+ * @platform ios
306
+ */
307
+ keyboardHandlingEnabled?: boolean;
285
308
  /**
286
309
  * Sets the navigation bar color. Defaults to initial navigation bar color.
287
310
  *
@@ -308,7 +331,7 @@ export type NativeStackNavigationOptions = {
308
331
  *
309
332
  * @platform android
310
333
  */
311
- statusBarColor?: string;
334
+ statusBarBackgroundColor?: string;
312
335
  /**
313
336
  * Whether the status bar should be hidden on this screen.
314
337
  * Requires setting `View controller-based status bar appearance -> YES` in your Info.plist file.
@@ -335,7 +358,7 @@ export type NativeStackNavigationOptions = {
335
358
  statusBarTranslucent?: boolean;
336
359
  /**
337
360
  * Sets the direction in which you should swipe to dismiss the screen.
338
- * When using `vertical` option, options `fullScreenGestureEnabled: true`, `customAnimationOnGesture: true` and `animation: 'slide_from_bottom'` are set by default.
361
+ * When using `vertical` option, options `fullScreenGestureEnabled: true`, `animationMatchesGesture: true` and `animation: 'slide_from_bottom'` are set by default.
339
362
  *
340
363
  * Supported values:
341
364
  * - `vertical` – dismiss screen vertically
@@ -355,10 +378,10 @@ export type NativeStackNavigationOptions = {
355
378
  *
356
379
  * @platform ios
357
380
  */
358
- customAnimationOnGesture?: boolean;
381
+ animationMatchesGesture?: boolean;
359
382
  /**
360
383
  * Whether the gesture to dismiss should work on the whole screen. Using gesture to dismiss with this option results in the same
361
- * transition animation as `simple_push`. This behavior can be changed by setting `customAnimationOnGesture` prop. Achieving the
384
+ * transition animation as `simple_push`. This behavior can be changed by setting `animationMatchesGesture` prop. Achieving the
362
385
  * default iOS animation isn't possible due to platform limitations. Defaults to `false`.
363
386
  *
364
387
  * Doesn't affect the behavior of screens presented modally.
@@ -374,6 +397,12 @@ export type NativeStackNavigationOptions = {
374
397
  * @platform ios
375
398
  */
376
399
  gestureEnabled?: boolean;
400
+ /**
401
+ * Use it to restrict the distance from the edges of screen in which the gesture should be recognized. To be used alongside `fullScreenGestureEnabled`.
402
+ *
403
+ * @platform ios
404
+ */
405
+ gestureResponseDistance?: ScreenProps['gestureResponseDistance'];
377
406
  /**
378
407
  * The type of animation to use when this screen replaces another screen. Defaults to `pop`.
379
408
  *
@@ -422,6 +451,62 @@ export type NativeStackNavigationOptions = {
422
451
  * Only supported on iOS and Android.
423
452
  */
424
453
  presentation?: Exclude<ScreenProps['stackPresentation'], 'push'> | 'card';
454
+ /**
455
+ * Describes heights where a sheet can rest.
456
+ * Works only when `presentation` is set to `formSheet`.
457
+ * Defaults to `large`.
458
+ *
459
+ * Available values:
460
+ *
461
+ * - `large` - only large detent level will be allowed
462
+ * - `medium` - only medium detent level will be allowed
463
+ * - `all` - all detent levels will be allowed
464
+ *
465
+ * @platform ios
466
+ */
467
+ sheetAllowedDetents?: SheetDetentTypes;
468
+ /**
469
+ * Whether the sheet should expand to larger detent when scrolling.
470
+ * Works only when `presentation` is set to `formSheet`.
471
+ * Defaults to `true`.
472
+ *
473
+ * @platform ios
474
+ */
475
+ sheetExpandsWhenScrolledToEdge?: boolean;
476
+ /**
477
+ * The corner radius that the sheet will try to render with.
478
+ * Works only when `presentation` is set to `formSheet`.
479
+ *
480
+ * If set to non-negative value it will try to render sheet with provided radius, else it will apply system default.
481
+ *
482
+ * If left unset system default is used.
483
+ *
484
+ * @platform ios
485
+ */
486
+ sheetCornerRadius?: number;
487
+ /**
488
+ * Boolean indicating whether the sheet shows a grabber at the top.
489
+ * Works only when `presentation` is set to `formSheet`.
490
+ * Defaults to `false`.
491
+ *
492
+ * @platform ios
493
+ */
494
+ sheetGrabberVisible?: boolean;
495
+ /**
496
+ * The largest sheet detent for which a view underneath won't be dimmed.
497
+ * Works only when `presentation` is se tto `formSheet`.
498
+ *
499
+ * If this prop is set to:
500
+ *
501
+ * - `large` - the view underneath won't be dimmed at any detent level
502
+ * - `medium` - the view underneath will be dimmed only when detent level is `large`
503
+ * - `all` - the view underneath will be dimmed for any detent level
504
+ *
505
+ * Defaults to `all`.
506
+ *
507
+ * @platform ios
508
+ */
509
+ sheetLargestUndimmedDetent?: SheetDetentTypes;
425
510
  /**
426
511
  * The display orientation to use for the screen.
427
512
  *
@@ -447,7 +532,7 @@ export type NativeStackNavigationOptions = {
447
532
  */
448
533
  freezeOnBlur?: boolean;
449
534
  };
450
- export type NativeStackNavigatorProps = DefaultNavigatorOptions<ParamListBase, StackNavigationState<ParamListBase>, NativeStackNavigationOptions, NativeStackNavigationEventMap> & StackRouterOptions & NativeStackNavigationConfig;
535
+ export type NativeStackNavigatorProps = DefaultNavigatorOptions<ParamListBase, string | undefined, StackNavigationState<ParamListBase>, NativeStackNavigationOptions, NativeStackNavigationEventMap, NativeStackNavigationProp<ParamListBase>> & StackRouterOptions & NativeStackNavigationConfig;
451
536
  export type NativeStackDescriptor = Descriptor<NativeStackNavigationOptions, NativeStackNavigationProp<ParamListBase>, RouteProp<ParamListBase>>;
452
537
  export type NativeStackDescriptorMap = {
453
538
  [key: string]: NativeStackDescriptor;
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/types.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/types.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,4 @@
1
+ import type { Route } from '@react-navigation/native';
2
+ import type { NativeStackDescriptorMap } from '../types';
3
+ export declare const getModalRouteKeys: (routes: Route<string>[], descriptors: NativeStackDescriptorMap) => string[];
4
+ //# sourceMappingURL=getModalRoutesKeys.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getModalRoutesKeys.d.ts","sourceRoot":"","sources":["../../../../src/utils/getModalRoutesKeys.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,0BAA0B,CAAC;AAEtD,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,UAAU,CAAC;AAEzD,eAAO,MAAM,iBAAiB,WACpB,MAAM,MAAM,CAAC,EAAE,eACV,wBAAwB,aAc/B,CAAC"}
@@ -0,0 +1,5 @@
1
+ import * as React from 'react';
2
+ import type { Animated } from 'react-native';
3
+ export declare const AnimatedHeaderHeightContext: React.Context<Animated.Value | undefined>;
4
+ export declare function useAnimatedHeaderHeight(): Animated.Value;
5
+ //# sourceMappingURL=useAnimatedHeaderHeight.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useAnimatedHeaderHeight.d.ts","sourceRoot":"","sources":["../../../../src/utils/useAnimatedHeaderHeight.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;AAE7C,eAAO,MAAM,2BAA2B,2CAE5B,CAAC;AAEb,wBAAgB,uBAAuB,mBAUtC"}
@@ -1,10 +1,10 @@
1
1
  import * as React from 'react';
2
- import { ViewProps } from 'react-native';
2
+ import { type ViewProps } from 'react-native';
3
3
  import type { StackPresentationTypes } from 'react-native-screens';
4
4
  type ContainerProps = ViewProps & {
5
5
  stackPresentation: StackPresentationTypes;
6
6
  children: React.ReactNode;
7
7
  };
8
- export declare function DebugContainer(props: ContainerProps): JSX.Element;
8
+ export declare function DebugContainer(props: ContainerProps): React.JSX.Element;
9
9
  export {};
10
10
  //# sourceMappingURL=DebugContainer.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"DebugContainer.d.ts","sourceRoot":"","sources":["../../../../src/views/DebugContainer.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAQ,SAAS,EAAE,MAAM,cAAc,CAAC;AAC/C,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,sBAAsB,CAAC;AAEnE,KAAK,cAAc,GAAG,SAAS,GAAG;IAChC,iBAAiB,EAAE,sBAAsB,CAAC;IAC1C,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;CAC3B,CAAC;AAEF,wBAAgB,cAAc,CAAC,KAAK,EAAE,cAAc,eAInD"}
1
+ {"version":3,"file":"DebugContainer.d.ts","sourceRoot":"","sources":["../../../../src/views/DebugContainer.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAQ,KAAK,SAAS,EAAE,MAAM,cAAc,CAAC;AACpD,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,sBAAsB,CAAC;AAEnE,KAAK,cAAc,GAAG,SAAS,GAAG;IAChC,iBAAiB,EAAE,sBAAsB,CAAC;IAC1C,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;CAC3B,CAAC;AAEF,wBAAgB,cAAc,CAAC,KAAK,EAAE,cAAc,qBAInD"}
@@ -1,10 +1,15 @@
1
1
  import * as React from 'react';
2
- import { ViewProps } from 'react-native';
2
+ import { type ViewProps } from 'react-native';
3
3
  import type { StackPresentationTypes } from 'react-native-screens';
4
4
  type ContainerProps = ViewProps & {
5
5
  stackPresentation: StackPresentationTypes;
6
6
  children: React.ReactNode;
7
7
  };
8
- export declare let DebugContainer: React.ComponentType<ContainerProps>;
8
+ /**
9
+ * This view must *not* be flattened.
10
+ * See https://github.com/software-mansion/react-native-screens/pull/1825
11
+ * for detailed explanation.
12
+ */
13
+ export declare let DebugContainer: (props: ContainerProps) => React.JSX.Element;
9
14
  export {};
10
15
  //# sourceMappingURL=DebugContainer.native.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"DebugContainer.native.d.ts","sourceRoot":"","sources":["../../../../src/views/DebugContainer.native.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAkB,SAAS,EAAE,MAAM,cAAc,CAAC;AAGzD,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,sBAAsB,CAAC;AAEnE,KAAK,cAAc,GAAG,SAAS,GAAG;IAChC,iBAAiB,EAAE,sBAAsB,CAAC;IAC1C,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;CAC3B,CAAC;AAEF,eAAO,IAAI,cAAc,qCAC+B,CAAC"}
1
+ {"version":3,"file":"DebugContainer.native.d.ts","sourceRoot":"","sources":["../../../../src/views/DebugContainer.native.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAkB,KAAK,SAAS,EAAE,MAAM,cAAc,CAAC;AAG9D,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,sBAAsB,CAAC;AAEnE,KAAK,cAAc,GAAG,SAAS,GAAG;IAChC,iBAAiB,EAAE,sBAAsB,CAAC;IAC1C,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;CAC3B,CAAC;AAEF;;;;GAIG;AACH,eAAO,IAAI,cAAc,UAAW,cAAc,sBAEjD,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"FontProcessor.native.d.ts","sourceRoot":"","sources":["../../../../src/views/FontProcessor.native.tsx"],"names":[],"mappings":"AAGA,wBAAgB,YAAY,CAC1B,YAAY,EAAE,CAAC,MAAM,GAAG,SAAS,CAAC,EAAE,GACnC,CAAC,MAAM,GAAG,SAAS,CAAC,EAAE,CAOxB"}
1
+ {"version":3,"file":"FontProcessor.native.d.ts","sourceRoot":"","sources":["../../../../src/views/FontProcessor.native.tsx"],"names":[],"mappings":"AAGA,wBAAgB,YAAY,CAC1B,YAAY,EAAE,CAAC,MAAM,GAAG,SAAS,CAAC,EAAE,GACnC,CAAC,MAAM,GAAG,SAAS,CAAC,EAAE,CAMxB"}
@@ -1,4 +1,4 @@
1
- import { Route } from '@react-navigation/native';
1
+ import { type Route } from '@react-navigation/native';
2
2
  import type { NativeStackNavigationOptions } from '../types';
3
3
  type Props = NativeStackNavigationOptions & {
4
4
  headerTopInsetEnabled: boolean;
@@ -6,6 +6,6 @@ type Props = NativeStackNavigationOptions & {
6
6
  route: Route<string>;
7
7
  canGoBack: boolean;
8
8
  };
9
- export declare function HeaderConfig({ headerHeight, headerBackImageSource, headerBackButtonMenuEnabled, headerBackTitle, headerBackTitleStyle, headerBackTitleVisible, headerBackVisible, headerShadowVisible, headerLargeStyle, headerLargeTitle, headerLargeTitleShadowVisible, headerLargeTitleStyle, headerBackground, headerLeft, headerRight, headerShown, headerStyle, headerBlurEffect, headerTintColor, headerTitle, headerTitleAlign, headerTitleStyle, headerTransparent, headerSearchBarOptions, headerTopInsetEnabled, route, title, canGoBack, }: Props): JSX.Element;
9
+ export declare function HeaderConfig({ headerBackImageSource, headerBackButtonMenuEnabled, headerBackTitle, headerBackTitleStyle, headerBackTitleVisible, headerBackVisible, headerShadowVisible, headerLargeStyle, headerLargeTitle, headerLargeTitleShadowVisible, headerLargeTitleStyle, headerBackground, headerLeft, headerRight, headerShown, headerStyle, headerBlurEffect, headerTintColor, headerTitle, headerTitleAlign, headerTitleStyle, headerTransparent, headerSearchBarOptions, headerTopInsetEnabled, route, title, canGoBack, }: Props): JSX.Element;
10
10
  export {};
11
11
  //# sourceMappingURL=HeaderConfig.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"HeaderConfig.d.ts","sourceRoot":"","sources":["../../../../src/views/HeaderConfig.tsx"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,EAAY,MAAM,0BAA0B,CAAC;AAoB3D,OAAO,KAAK,EAAE,4BAA4B,EAAE,MAAM,UAAU,CAAC;AAG7D,KAAK,KAAK,GAAG,4BAA4B,GAAG;IAC1C,qBAAqB,EAAE,OAAO,CAAC;IAC/B,YAAY,EAAE,MAAM,CAAC;IACrB,KAAK,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;IACrB,SAAS,EAAE,OAAO,CAAC;CACpB,CAAC;AAEF,wBAAgB,YAAY,CAAC,EAC3B,YAAY,EACZ,qBAAqB,EACrB,2BAA2B,EAC3B,eAAe,EACf,oBAAoB,EACpB,sBAA6B,EAC7B,iBAAiB,EACjB,mBAAmB,EACnB,gBAAgB,EAChB,gBAAgB,EAChB,6BAA6B,EAC7B,qBAAqB,EACrB,gBAAgB,EAChB,UAAU,EACV,WAAW,EACX,WAAW,EACX,WAAW,EACX,gBAAgB,EAChB,eAAe,EACf,WAAW,EACX,gBAAgB,EAChB,gBAAgB,EAChB,iBAAiB,EACjB,sBAAsB,EACtB,qBAAqB,EACrB,KAAK,EACL,KAAK,EACL,SAAS,GACV,EAAE,KAAK,GAAG,GAAG,CAAC,OAAO,CA6OrB"}
1
+ {"version":3,"file":"HeaderConfig.d.ts","sourceRoot":"","sources":["../../../../src/views/HeaderConfig.tsx"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,KAAK,EAAuB,MAAM,0BAA0B,CAAC;AAc3E,OAAO,KAAK,EAAE,4BAA4B,EAAE,MAAM,UAAU,CAAC;AAG7D,KAAK,KAAK,GAAG,4BAA4B,GAAG;IAC1C,qBAAqB,EAAE,OAAO,CAAC;IAC/B,YAAY,EAAE,MAAM,CAAC;IACrB,KAAK,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;IACrB,SAAS,EAAE,OAAO,CAAC;CACpB,CAAC;AAEF,wBAAgB,YAAY,CAAC,EAC3B,qBAAqB,EACrB,2BAA2B,EAC3B,eAAe,EACf,oBAAoB,EACpB,sBAA6B,EAC7B,iBAAiB,EACjB,mBAAmB,EACnB,gBAAgB,EAChB,gBAAgB,EAChB,6BAA6B,EAC7B,qBAAqB,EACrB,gBAAgB,EAChB,UAAU,EACV,WAAW,EACX,WAAW,EACX,WAAW,EACX,gBAAgB,EAChB,eAAe,EACf,WAAW,EACX,gBAAgB,EAChB,gBAAgB,EAChB,iBAAiB,EACjB,sBAAsB,EACtB,qBAAqB,EACrB,KAAK,EACL,KAAK,EACL,SAAS,GACV,EAAE,KAAK,GAAG,GAAG,CAAC,OAAO,CAmOrB"}
@@ -1,10 +1,11 @@
1
- import type { ParamListBase, StackNavigationState } from '@react-navigation/native';
1
+ import { type ParamListBase, type StackNavigationState } from '@react-navigation/native';
2
+ import * as React from 'react';
2
3
  import type { NativeStackDescriptorMap, NativeStackNavigationHelpers } from '../types';
3
4
  type Props = {
4
5
  state: StackNavigationState<ParamListBase>;
5
6
  navigation: NativeStackNavigationHelpers;
6
7
  descriptors: NativeStackDescriptorMap;
7
8
  };
8
- export declare function NativeStackView({ state, descriptors }: Props): JSX.Element;
9
+ export declare function NativeStackView({ state, descriptors }: Props): React.JSX.Element;
9
10
  export {};
10
11
  //# sourceMappingURL=NativeStackView.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"NativeStackView.d.ts","sourceRoot":"","sources":["../../../../src/views/NativeStackView.tsx"],"names":[],"mappings":"AAQA,OAAO,KAAK,EACV,aAAa,EACb,oBAAoB,EACrB,MAAM,0BAA0B,CAAC;AAIlC,OAAO,KAAK,EACV,wBAAwB,EACxB,4BAA4B,EAC7B,MAAM,UAAU,CAAC;AAElB,KAAK,KAAK,GAAG;IACX,KAAK,EAAE,oBAAoB,CAAC,aAAa,CAAC,CAAC;IAG3C,UAAU,EAAE,4BAA4B,CAAC;IACzC,WAAW,EAAE,wBAAwB,CAAC;CACvC,CAAC;AAOF,wBAAgB,eAAe,CAAC,EAAE,KAAK,EAAE,WAAW,EAAE,EAAE,KAAK,eAmJ5D"}
1
+ {"version":3,"file":"NativeStackView.d.ts","sourceRoot":"","sources":["../../../../src/views/NativeStackView.tsx"],"names":[],"mappings":"AAQA,OAAO,EACL,KAAK,aAAa,EAClB,KAAK,oBAAoB,EAG1B,MAAM,0BAA0B,CAAC;AAClC,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAG/B,OAAO,KAAK,EACV,wBAAwB,EACxB,4BAA4B,EAC7B,MAAM,UAAU,CAAC;AAElB,KAAK,KAAK,GAAG;IACX,KAAK,EAAE,oBAAoB,CAAC,aAAa,CAAC,CAAC;IAG3C,UAAU,EAAE,4BAA4B,CAAC;IACzC,WAAW,EAAE,wBAAwB,CAAC;CACvC,CAAC;AAOF,wBAAgB,eAAe,CAAC,EAAE,KAAK,EAAE,WAAW,EAAE,EAAE,KAAK,qBA8J5D"}
@@ -1,10 +1,11 @@
1
- import { ParamListBase, StackNavigationState } from '@react-navigation/native';
1
+ import { type ParamListBase, type StackNavigationState } from '@react-navigation/native';
2
+ import * as React from 'react';
2
3
  import type { NativeStackDescriptorMap, NativeStackNavigationHelpers } from '../types';
3
4
  type Props = {
4
5
  state: StackNavigationState<ParamListBase>;
5
6
  navigation: NativeStackNavigationHelpers;
6
7
  descriptors: NativeStackDescriptorMap;
7
8
  };
8
- export declare function NativeStackView(props: Props): JSX.Element;
9
+ export declare function NativeStackView({ state, navigation, descriptors }: Props): React.JSX.Element;
9
10
  export {};
10
11
  //# sourceMappingURL=NativeStackView.native.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"NativeStackView.native.d.ts","sourceRoot":"","sources":["../../../../src/views/NativeStackView.native.tsx"],"names":[],"mappings":"AAQA,OAAO,EAGL,aAAa,EAGb,oBAAoB,EAGrB,MAAM,0BAA0B,CAAC;AAelC,OAAO,KAAK,EAEV,wBAAwB,EACxB,4BAA4B,EAE7B,MAAM,UAAU,CAAC;AAmUlB,KAAK,KAAK,GAAG;IACX,KAAK,EAAE,oBAAoB,CAAC,aAAa,CAAC,CAAC;IAC3C,UAAU,EAAE,4BAA4B,CAAC;IACzC,WAAW,EAAE,wBAAwB,CAAC;CACvC,CAAC;AA8EF,wBAAgB,eAAe,CAAC,KAAK,EAAE,KAAK,eAM3C"}
1
+ {"version":3,"file":"NativeStackView.native.d.ts","sourceRoot":"","sources":["../../../../src/views/NativeStackView.native.tsx"],"names":[],"mappings":"AAQA,OAAO,EAGL,KAAK,aAAa,EAGlB,KAAK,oBAAoB,EAG1B,MAAM,0BAA0B,CAAC;AAClC,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAoB/B,OAAO,KAAK,EAEV,wBAAwB,EACxB,4BAA4B,EAE7B,MAAM,UAAU,CAAC;AA8YlB,KAAK,KAAK,GAAG;IACX,KAAK,EAAE,oBAAoB,CAAC,aAAa,CAAC,CAAC;IAC3C,UAAU,EAAE,4BAA4B,CAAC;IACzC,WAAW,EAAE,wBAAwB,CAAC;CACvC,CAAC;AAEF,wBAAgB,eAAe,CAAC,EAAE,KAAK,EAAE,UAAU,EAAE,WAAW,EAAE,EAAE,KAAK,qBAgGxE"}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@react-navigation/native-stack",
3
3
  "description": "Native stack navigator using react-native-screens",
4
- "version": "7.0.0-alpha.2",
4
+ "version": "7.0.0-alpha.20",
5
5
  "keywords": [
6
6
  "react-native-component",
7
7
  "react-component",
@@ -41,26 +41,25 @@
41
41
  "clean": "del lib"
42
42
  },
43
43
  "dependencies": {
44
- "@react-navigation/elements": "^1.4.0-alpha.1",
44
+ "@react-navigation/elements": "^2.0.0-alpha.17",
45
45
  "warn-once": "^0.1.1"
46
46
  },
47
47
  "devDependencies": {
48
- "@react-navigation/native": "^7.0.0-alpha.2",
49
- "@testing-library/react-native": "^11.5.0",
50
- "@types/react": "~18.0.27",
51
- "@types/react-native": "~0.70.8",
52
- "del-cli": "^5.0.0",
48
+ "@react-navigation/native": "^7.0.0-alpha.18",
49
+ "@testing-library/react-native": "^12.4.3",
50
+ "@types/react": "~18.2.45",
51
+ "del-cli": "^5.1.0",
53
52
  "react": "18.2.0",
54
- "react-native": "0.71.8",
55
- "react-native-builder-bob": "^0.20.4",
56
- "react-native-screens": "~3.20.0",
57
- "typescript": "^4.9.4"
53
+ "react-native": "0.73.2",
54
+ "react-native-builder-bob": "^0.23.2",
55
+ "react-native-screens": "~3.29.0",
56
+ "typescript": "^5.3.3"
58
57
  },
59
58
  "peerDependencies": {
60
- "@react-navigation/native": "^6.0.0",
61
- "react": "*",
62
- "react-native": "*",
63
- "react-native-safe-area-context": ">= 3.0.0",
59
+ "@react-navigation/native": "^7.0.0-alpha.18",
60
+ "react": ">= 18.2.0",
61
+ "react-native": ">= 0.72.0",
62
+ "react-native-safe-area-context": ">= 4.0.0",
64
63
  "react-native-screens": ">= 3.0.0"
65
64
  },
66
65
  "react-native-builder-bob": {
@@ -77,5 +76,5 @@
77
76
  ]
78
77
  ]
79
78
  },
80
- "gitHead": "36c8f091556157dab74d3483651bbcbd340762ff"
79
+ "gitHead": "a41d932198d1b48d84f410be1633fc5ddcb2df3f"
81
80
  }
package/src/index.tsx CHANGED
@@ -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
  */
@@ -16,5 +21,6 @@ export type {
16
21
  NativeStackNavigationEventMap,
17
22
  NativeStackNavigationOptions,
18
23
  NativeStackNavigationProp,
24
+ NativeStackOptionsArgs,
19
25
  NativeStackScreenProps,
20
26
  } from './types';
@@ -1,12 +1,15 @@
1
1
  import {
2
2
  createNavigatorFactory,
3
- EventArg,
4
- ParamListBase,
5
- StackActionHelpers,
3
+ type EventArg,
4
+ type NavigatorTypeBagBase,
5
+ type ParamListBase,
6
+ type StackActionHelpers,
6
7
  StackActions,
7
- StackNavigationState,
8
+ type StackNavigationState,
8
9
  StackRouter,
9
- StackRouterOptions,
10
+ type StackRouterOptions,
11
+ type StaticConfig,
12
+ type TypedNavigator,
10
13
  useNavigationBuilder,
11
14
  } from '@react-navigation/native';
12
15
  import * as React from 'react';
@@ -14,6 +17,7 @@ import * as React from 'react';
14
17
  import type {
15
18
  NativeStackNavigationEventMap,
16
19
  NativeStackNavigationOptions,
20
+ NativeStackNavigationProp,
17
21
  NativeStackNavigatorProps,
18
22
  } from '../types';
19
23
  import { NativeStackView } from '../views/NativeStackView';
@@ -22,8 +26,11 @@ function NativeStackNavigator({
22
26
  id,
23
27
  initialRouteName,
24
28
  children,
29
+ layout,
25
30
  screenListeners,
26
31
  screenOptions,
32
+ screenLayout,
33
+ UNSTABLE_getStateForRouteNamesChange,
27
34
  ...rest
28
35
  }: NativeStackNavigatorProps) {
29
36
  const { state, descriptors, navigation, NavigationContent } =
@@ -37,8 +44,11 @@ function NativeStackNavigator({
37
44
  id,
38
45
  initialRouteName,
39
46
  children,
47
+ layout,
40
48
  screenListeners,
41
49
  screenOptions,
50
+ screenLayout,
51
+ UNSTABLE_getStateForRouteNamesChange,
42
52
  });
43
53
 
44
54
  React.useEffect(
@@ -79,9 +89,27 @@ function NativeStackNavigator({
79
89
  );
80
90
  }
81
91
 
82
- export const createNativeStackNavigator = createNavigatorFactory<
83
- StackNavigationState<ParamListBase>,
84
- NativeStackNavigationOptions,
85
- NativeStackNavigationEventMap,
86
- typeof NativeStackNavigator
87
- >(NativeStackNavigator);
92
+ export function createNativeStackNavigator<
93
+ ParamList extends ParamListBase,
94
+ NavigatorID extends string | undefined = undefined,
95
+ TypeBag extends NavigatorTypeBagBase = {
96
+ ParamList: ParamList;
97
+ NavigatorID: NavigatorID;
98
+ State: StackNavigationState<ParamList>;
99
+ ScreenOptions: NativeStackNavigationOptions;
100
+ EventMap: NativeStackNavigationEventMap;
101
+ NavigationList: {
102
+ [RouteName in keyof ParamList]: NativeStackNavigationProp<
103
+ ParamList,
104
+ RouteName,
105
+ NavigatorID
106
+ >;
107
+ };
108
+ Navigator: typeof NativeStackNavigator;
109
+ },
110
+ Config extends StaticConfig<TypeBag> | undefined =
111
+ | StaticConfig<TypeBag>
112
+ | undefined,
113
+ >(config?: Config): TypedNavigator<TypeBag, Config> {
114
+ return createNavigatorFactory(NativeStackNavigator)(config);
115
+ }