@react-navigation/native-stack 6.9.5 → 6.9.7

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 (69) hide show
  1. package/lib/commonjs/index.js +0 -3
  2. package/lib/commonjs/index.js.map +1 -1
  3. package/lib/commonjs/navigators/createNativeStackNavigator.js +5 -14
  4. package/lib/commonjs/navigators/createNativeStackNavigator.js.map +1 -1
  5. package/lib/commonjs/types.js.map +1 -1
  6. package/lib/commonjs/utils/useDismissedRouteError.js +0 -5
  7. package/lib/commonjs/utils/useDismissedRouteError.js.map +1 -1
  8. package/lib/commonjs/utils/useInvalidPreventRemoveError.js +0 -6
  9. package/lib/commonjs/utils/useInvalidPreventRemoveError.js.map +1 -1
  10. package/lib/commonjs/views/DebugContainer.js +0 -5
  11. package/lib/commonjs/views/DebugContainer.js.map +1 -1
  12. package/lib/commonjs/views/DebugContainer.native.js +1 -12
  13. package/lib/commonjs/views/DebugContainer.native.js.map +1 -1
  14. package/lib/commonjs/views/FontProcessor.js +0 -1
  15. package/lib/commonjs/views/FontProcessor.js.map +1 -1
  16. package/lib/commonjs/views/FontProcessor.native.js +1 -6
  17. package/lib/commonjs/views/FontProcessor.native.js.map +1 -1
  18. package/lib/commonjs/views/HeaderConfig.js +10 -25
  19. package/lib/commonjs/views/HeaderConfig.js.map +1 -1
  20. package/lib/commonjs/views/NativeStackView.js +0 -9
  21. package/lib/commonjs/views/NativeStackView.js.map +1 -1
  22. package/lib/commonjs/views/NativeStackView.native.js +20 -42
  23. package/lib/commonjs/views/NativeStackView.native.js.map +1 -1
  24. package/lib/module/index.js +2 -1
  25. package/lib/module/index.js.map +1 -1
  26. package/lib/module/navigators/createNativeStackNavigator.js +5 -7
  27. package/lib/module/navigators/createNativeStackNavigator.js.map +1 -1
  28. package/lib/module/types.js.map +1 -1
  29. package/lib/module/utils/useDismissedRouteError.js +0 -1
  30. package/lib/module/utils/useDismissedRouteError.js.map +1 -1
  31. package/lib/module/utils/useInvalidPreventRemoveError.js +0 -1
  32. package/lib/module/utils/useInvalidPreventRemoveError.js.map +1 -1
  33. package/lib/module/views/DebugContainer.js.map +1 -1
  34. package/lib/module/views/DebugContainer.native.js +2 -7
  35. package/lib/module/views/DebugContainer.native.js.map +1 -1
  36. package/lib/module/views/FontProcessor.js.map +1 -1
  37. package/lib/module/views/FontProcessor.native.js +0 -3
  38. package/lib/module/views/FontProcessor.native.js.map +1 -1
  39. package/lib/module/views/HeaderConfig.js +10 -15
  40. package/lib/module/views/HeaderConfig.js.map +1 -1
  41. package/lib/module/views/NativeStackView.js +0 -1
  42. package/lib/module/views/NativeStackView.js.map +1 -1
  43. package/lib/module/views/NativeStackView.native.js +20 -26
  44. package/lib/module/views/NativeStackView.native.js.map +1 -1
  45. package/lib/typescript/src/index.d.ts +1 -0
  46. package/lib/typescript/src/index.d.ts.map +1 -0
  47. package/lib/typescript/src/navigators/createNativeStackNavigator.d.ts +1 -0
  48. package/lib/typescript/src/navigators/createNativeStackNavigator.d.ts.map +1 -0
  49. package/lib/typescript/src/types.d.ts +1 -0
  50. package/lib/typescript/src/types.d.ts.map +1 -0
  51. package/lib/typescript/src/utils/useDismissedRouteError.d.ts +1 -0
  52. package/lib/typescript/src/utils/useDismissedRouteError.d.ts.map +1 -0
  53. package/lib/typescript/src/utils/useInvalidPreventRemoveError.d.ts +1 -0
  54. package/lib/typescript/src/utils/useInvalidPreventRemoveError.d.ts.map +1 -0
  55. package/lib/typescript/src/views/DebugContainer.d.ts +1 -0
  56. package/lib/typescript/src/views/DebugContainer.d.ts.map +1 -0
  57. package/lib/typescript/src/views/DebugContainer.native.d.ts +1 -0
  58. package/lib/typescript/src/views/DebugContainer.native.d.ts.map +1 -0
  59. package/lib/typescript/src/views/FontProcessor.d.ts +1 -0
  60. package/lib/typescript/src/views/FontProcessor.d.ts.map +1 -0
  61. package/lib/typescript/src/views/FontProcessor.native.d.ts +1 -0
  62. package/lib/typescript/src/views/FontProcessor.native.d.ts.map +1 -0
  63. package/lib/typescript/src/views/HeaderConfig.d.ts +1 -0
  64. package/lib/typescript/src/views/HeaderConfig.d.ts.map +1 -0
  65. package/lib/typescript/src/views/NativeStackView.d.ts +1 -0
  66. package/lib/typescript/src/views/NativeStackView.d.ts.map +1 -0
  67. package/lib/typescript/src/views/NativeStackView.native.d.ts +1 -0
  68. package/lib/typescript/src/views/NativeStackView.native.d.ts.map +1 -0
  69. package/package.json +5 -5
@@ -15,10 +15,7 @@ Object.defineProperty(exports, "createNativeStackNavigator", {
15
15
  return _createNativeStackNavigator.default;
16
16
  }
17
17
  });
18
-
19
18
  var _createNativeStackNavigator = _interopRequireDefault(require("./navigators/createNativeStackNavigator"));
20
-
21
19
  var _NativeStackView = _interopRequireDefault(require("./views/NativeStackView"));
22
-
23
20
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
24
21
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"names":[],"sources":["index.tsx"],"sourcesContent":["/**\n * Navigators\n */\nexport { default as createNativeStackNavigator } from './navigators/createNativeStackNavigator';\n\n/**\n * Views\n */\nexport { default as NativeStackView } from './views/NativeStackView';\n\n/**\n * Types\n */\nexport type {\n NativeStackHeaderProps,\n NativeStackNavigationEventMap,\n NativeStackNavigationOptions,\n NativeStackNavigationProp,\n NativeStackScreenProps,\n} from './types';\n"],"mappings":";;;;;;;;;;;;;;;;;;AAGA;;AAKA"}
1
+ {"version":3,"names":[],"sourceRoot":"../../src","sources":["index.tsx"],"mappings":";;;;;;;;;;;;;;;;;AAGA;AAKA;AAAqE"}
@@ -4,21 +4,13 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.default = void 0;
7
-
8
7
  var _native = require("@react-navigation/native");
9
-
10
8
  var React = _interopRequireWildcard(require("react"));
11
-
12
9
  var _NativeStackView = _interopRequireDefault(require("../views/NativeStackView"));
13
-
14
10
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
15
-
16
11
  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); }
17
-
18
12
  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; }
19
-
20
13
  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); }
21
-
22
14
  function NativeStackNavigator(_ref) {
23
15
  let {
24
16
  id,
@@ -42,17 +34,18 @@ function NativeStackNavigator(_ref) {
42
34
  });
43
35
  React.useEffect(() => {
44
36
  var _navigation$addListen;
45
-
46
37
  return (// @ts-expect-error: there may not be a tab navigator in parent
47
38
  navigation === null || navigation === void 0 ? void 0 : (_navigation$addListen = navigation.addListener) === null || _navigation$addListen === void 0 ? void 0 : _navigation$addListen.call(navigation, 'tabPress', e => {
48
- const isFocused = navigation.isFocused(); // Run the operation in the next frame so we're sure all listeners have been run
49
- // This is necessary to know if preventDefault() has been called
39
+ const isFocused = navigation.isFocused();
50
40
 
41
+ // Run the operation in the next frame so we're sure all listeners have been run
42
+ // This is necessary to know if preventDefault() has been called
51
43
  requestAnimationFrame(() => {
52
44
  if (state.index > 0 && isFocused && !e.defaultPrevented) {
53
45
  // When user taps on already focused tab and we're inside the tab,
54
46
  // reset the stack to replicate native behaviour
55
- navigation.dispatch({ ..._native.StackActions.popToTop(),
47
+ navigation.dispatch({
48
+ ..._native.StackActions.popToTop(),
56
49
  target: state.key
57
50
  });
58
51
  }
@@ -66,8 +59,6 @@ function NativeStackNavigator(_ref) {
66
59
  descriptors: descriptors
67
60
  })));
68
61
  }
69
-
70
62
  var _default = (0, _native.createNavigatorFactory)(NativeStackNavigator);
71
-
72
63
  exports.default = _default;
73
64
  //# sourceMappingURL=createNativeStackNavigator.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["NativeStackNavigator","id","initialRouteName","children","screenListeners","screenOptions","rest","state","descriptors","navigation","NavigationContent","useNavigationBuilder","StackRouter","React","useEffect","addListener","e","isFocused","requestAnimationFrame","index","defaultPrevented","dispatch","StackActions","popToTop","target","key","createNavigatorFactory"],"sources":["createNativeStackNavigator.tsx"],"sourcesContent":["import {\n createNavigatorFactory,\n EventArg,\n ParamListBase,\n StackActionHelpers,\n StackActions,\n StackNavigationState,\n StackRouter,\n StackRouterOptions,\n useNavigationBuilder,\n} from '@react-navigation/native';\nimport * as React from 'react';\n\nimport type {\n NativeStackNavigationEventMap,\n NativeStackNavigationOptions,\n NativeStackNavigatorProps,\n} from '../types';\nimport NativeStackView from '../views/NativeStackView';\n\nfunction NativeStackNavigator({\n id,\n initialRouteName,\n children,\n screenListeners,\n screenOptions,\n ...rest\n}: NativeStackNavigatorProps) {\n const { state, descriptors, navigation, NavigationContent } =\n useNavigationBuilder<\n StackNavigationState<ParamListBase>,\n StackRouterOptions,\n StackActionHelpers<ParamListBase>,\n NativeStackNavigationOptions,\n NativeStackNavigationEventMap\n >(StackRouter, {\n id,\n initialRouteName,\n children,\n screenListeners,\n screenOptions,\n });\n\n React.useEffect(\n () =>\n // @ts-expect-error: there may not be a tab navigator in parent\n navigation?.addListener?.('tabPress', (e: any) => {\n const isFocused = navigation.isFocused();\n\n // Run the operation in the next frame so we're sure all listeners have been run\n // This is necessary to know if preventDefault() has been called\n requestAnimationFrame(() => {\n if (\n state.index > 0 &&\n isFocused &&\n !(e as EventArg<'tabPress', true>).defaultPrevented\n ) {\n // When user taps on already focused tab and we're inside the tab,\n // reset the stack to replicate native behaviour\n navigation.dispatch({\n ...StackActions.popToTop(),\n target: state.key,\n });\n }\n });\n }),\n [navigation, state.index, state.key]\n );\n\n return (\n <NavigationContent>\n <NativeStackView\n {...rest}\n state={state}\n navigation={navigation}\n descriptors={descriptors}\n />\n </NavigationContent>\n );\n}\n\nexport default createNavigatorFactory<\n StackNavigationState<ParamListBase>,\n NativeStackNavigationOptions,\n NativeStackNavigationEventMap,\n typeof NativeStackNavigator\n>(NativeStackNavigator);\n"],"mappings":";;;;;;;AAAA;;AAWA;;AAOA;;;;;;;;;;AAEA,SAASA,oBAAT,OAO8B;EAAA,IAPA;IAC5BC,EAD4B;IAE5BC,gBAF4B;IAG5BC,QAH4B;IAI5BC,eAJ4B;IAK5BC,aAL4B;IAM5B,GAAGC;EANyB,CAOA;EAC5B,MAAM;IAAEC,KAAF;IAASC,WAAT;IAAsBC,UAAtB;IAAkCC;EAAlC,IACJ,IAAAC,4BAAA,EAMEC,mBANF,EAMe;IACbX,EADa;IAEbC,gBAFa;IAGbC,QAHa;IAIbC,eAJa;IAKbC;EALa,CANf,CADF;EAeAQ,KAAK,CAACC,SAAN,CACE;IAAA;;IAAA,OACE;MACAL,UAFF,aAEEA,UAFF,gDAEEA,UAAU,CAAEM,WAFd,0DAEE,2BAAAN,UAAU,EAAgB,UAAhB,EAA6BO,CAAD,IAAY;QAChD,MAAMC,SAAS,GAAGR,UAAU,CAACQ,SAAX,EAAlB,CADgD,CAGhD;QACA;;QACAC,qBAAqB,CAAC,MAAM;UAC1B,IACEX,KAAK,CAACY,KAAN,GAAc,CAAd,IACAF,SADA,IAEA,CAAED,CAAD,CAAkCI,gBAHrC,EAIE;YACA;YACA;YACAX,UAAU,CAACY,QAAX,CAAoB,EAClB,GAAGC,oBAAA,CAAaC,QAAb,EADe;cAElBC,MAAM,EAAEjB,KAAK,CAACkB;YAFI,CAApB;UAID;QACF,CAboB,CAArB;MAcD,CAnBS;IAFZ;EAAA,CADF,EAuBE,CAAChB,UAAD,EAAaF,KAAK,CAACY,KAAnB,EAA0BZ,KAAK,CAACkB,GAAhC,CAvBF;EA0BA,oBACE,oBAAC,iBAAD,qBACE,oBAAC,wBAAD,eACMnB,IADN;IAEE,KAAK,EAAEC,KAFT;IAGE,UAAU,EAAEE,UAHd;IAIE,WAAW,EAAED;EAJf,GADF,CADF;AAUD;;eAEc,IAAAkB,8BAAA,EAKb1B,oBALa,C"}
1
+ {"version":3,"names":["NativeStackNavigator","id","initialRouteName","children","screenListeners","screenOptions","rest","state","descriptors","navigation","NavigationContent","useNavigationBuilder","StackRouter","React","useEffect","addListener","e","isFocused","requestAnimationFrame","index","defaultPrevented","dispatch","StackActions","popToTop","target","key","createNavigatorFactory"],"sourceRoot":"../../src","sources":["createNativeStackNavigator.tsx"],"mappings":";;;;;;AAAA;AAWA;AAOA;AAAuD;AAAA;AAAA;AAAA;AAEvD,SAASA,oBAAoB,OAOC;EAAA,IAPA;IAC5BC,EAAE;IACFC,gBAAgB;IAChBC,QAAQ;IACRC,eAAe;IACfC,aAAa;IACb,GAAGC;EACsB,CAAC;EAC1B,MAAM;IAAEC,KAAK;IAAEC,WAAW;IAAEC,UAAU;IAAEC;EAAkB,CAAC,GACzD,IAAAC,4BAAoB,EAMlBC,mBAAW,EAAE;IACbX,EAAE;IACFC,gBAAgB;IAChBC,QAAQ;IACRC,eAAe;IACfC;EACF,CAAC,CAAC;EAEJQ,KAAK,CAACC,SAAS,CACb;IAAA;IAAA,OACE;MACAL,UAAU,aAAVA,UAAU,gDAAVA,UAAU,CAAEM,WAAW,0DAAvB,2BAAAN,UAAU,EAAgB,UAAU,EAAGO,CAAM,IAAK;QAChD,MAAMC,SAAS,GAAGR,UAAU,CAACQ,SAAS,EAAE;;QAExC;QACA;QACAC,qBAAqB,CAAC,MAAM;UAC1B,IACEX,KAAK,CAACY,KAAK,GAAG,CAAC,IACfF,SAAS,IACT,CAAED,CAAC,CAAgCI,gBAAgB,EACnD;YACA;YACA;YACAX,UAAU,CAACY,QAAQ,CAAC;cAClB,GAAGC,oBAAY,CAACC,QAAQ,EAAE;cAC1BC,MAAM,EAAEjB,KAAK,CAACkB;YAChB,CAAC,CAAC;UACJ;QACF,CAAC,CAAC;MACJ,CAAC;IAAC;EAAA,GACJ,CAAChB,UAAU,EAAEF,KAAK,CAACY,KAAK,EAAEZ,KAAK,CAACkB,GAAG,CAAC,CACrC;EAED,oBACE,oBAAC,iBAAiB,qBAChB,oBAAC,wBAAe,eACVnB,IAAI;IACR,KAAK,EAAEC,KAAM;IACb,UAAU,EAAEE,UAAW;IACvB,WAAW,EAAED;EAAY,GACzB,CACgB;AAExB;AAAC,eAEc,IAAAkB,8BAAsB,EAKnC1B,oBAAoB,CAAC;AAAA"}
@@ -1 +1 @@
1
- {"version":3,"names":[],"sources":["types.tsx"],"sourcesContent":["import type {\n DefaultNavigatorOptions,\n Descriptor,\n NavigationHelpers,\n NavigationProp,\n ParamListBase,\n Route,\n RouteProp,\n StackActionHelpers,\n StackNavigationState,\n StackRouterOptions,\n} from '@react-navigation/native';\nimport type {\n ImageSourcePropType,\n StyleProp,\n TextStyle,\n ViewStyle,\n} from 'react-native';\nimport type {\n ScreenProps,\n ScreenStackHeaderConfigProps,\n SearchBarProps,\n} from 'react-native-screens';\n\nexport type NativeStackNavigationEventMap = {\n /**\n * Event which fires when a transition animation starts.\n */\n transitionStart: { data: { closing: boolean } };\n /**\n * Event which fires when a transition animation ends.\n */\n transitionEnd: { data: { closing: boolean } };\n};\n\nexport type NativeStackNavigationProp<\n ParamList extends ParamListBase,\n RouteName extends keyof ParamList = string,\n NavigatorID extends string | undefined = undefined\n> = NavigationProp<\n ParamList,\n RouteName,\n NavigatorID,\n StackNavigationState<ParamList>,\n NativeStackNavigationOptions,\n NativeStackNavigationEventMap\n> &\n StackActionHelpers<ParamList>;\n\nexport type NativeStackScreenProps<\n ParamList extends ParamListBase,\n RouteName extends keyof ParamList = string,\n NavigatorID extends string | undefined = undefined\n> = {\n navigation: NativeStackNavigationProp<ParamList, RouteName, NavigatorID>;\n route: RouteProp<ParamList, RouteName>;\n};\n\nexport type NativeStackNavigationHelpers = NavigationHelpers<\n ParamListBase,\n NativeStackNavigationEventMap\n>;\n\n// We want it to be an empty object because navigator does not have any additional props\nexport type NativeStackNavigationConfig = {};\n\nexport type NativeStackHeaderProps = {\n /**\n * Options for the back button.\n */\n back?: {\n /**\n * Title of the previous screen.\n */\n title: string;\n };\n /**\n * Options for the current screen.\n */\n options: NativeStackNavigationOptions;\n /**\n * Route object for the current screen.\n */\n route: Route<string>;\n /**\n * Navigation prop for the header.\n */\n navigation: NativeStackNavigationProp<ParamListBase>;\n};\n\nexport type HeaderButtonProps = {\n /**\n * Tint color for the header.\n */\n tintColor?: string;\n /**\n * Whether it's possible to navigate back in stack.\n */\n canGoBack: boolean;\n};\n\nexport type HeaderBackButtonProps = HeaderButtonProps & {\n /**\n * Label text for the button. Usually the title of the previous screen.\n * By default, this is only shown on iOS.\n */\n label?: string;\n};\n\nexport type NativeStackNavigationOptions = {\n /**\n * String that can be displayed in the header as a fallback for `headerTitle`.\n */\n title?: string;\n /**\n * Function that given `HeaderProps` returns a React Element to display as a header.\n */\n header?: (props: NativeStackHeaderProps) => React.ReactNode;\n /**\n * Whether the back button is visible in the header.\n * You can use it to show a back button alongside `headerLeft` if you have specified it.\n *\n * This will have no effect on the first screen in the stack.\n *\n * Only supported on iOS.\n *\n * @platform ios\n */\n headerBackVisible?: boolean;\n /**\n * Title string used by the back button on iOS.\n * Defaults to the previous scene's title, or \"Back\" if there's not enough space.\n * Use `headerBackTitleVisible: false` to hide it.\n *\n * Only supported on iOS.\n *\n * @platform ios\n */\n headerBackTitle?: string;\n /**\n * Whether the back button title should be visible or not.\n *\n * Only supported on iOS.\n *\n * @platform ios\n */\n headerBackTitleVisible?: boolean;\n /**\n * Style object for header back title. Supported properties:\n * - fontFamily\n * - fontSize\n *\n * Only supported on iOS.\n *\n * @platform ios\n */\n headerBackTitleStyle?: StyleProp<{\n fontFamily?: string;\n fontSize?: number;\n }>;\n /**\n * Image to display in the header as the icon in the back button.\n * Defaults to back icon image for the platform\n * - A chevron on iOS\n * - An arrow on Android\n */\n headerBackImageSource?: ImageSourcePropType;\n /**\n * Style of the header when a large title is shown.\n * The large title is shown if `headerLargeTitle` is `true` and\n * the edge of any scrollable content reaches the matching edge of the header.\n *\n * Supported properties:\n * - backgroundColor\n *\n * Only supported on iOS.\n *\n * @platform ios\n */\n headerLargeStyle?: StyleProp<{\n backgroundColor?: string;\n }>;\n /**\n * Whether to enable header with large title which collapses to regular header on scroll.\n *\n * For large title to collapse on scroll, the content of the screen should be wrapped in a scrollable view such as `ScrollView` or `FlatList`.\n * If the scrollable area doesn't fill the screen, the large title won't collapse on scroll.\n * You also need to specify `contentInsetAdjustmentBehavior=\"automatic\"` in your `ScrollView`, `FlatList` etc.\n *\n * Only supported on iOS.\n *\n * @platform ios\n */\n headerLargeTitle?: boolean;\n /**\n * Whether drop shadow of header is visible when a large title is shown.\n *\n * Only supported on iOS.\n *\n * @platform ios\n */\n headerLargeTitleShadowVisible?: boolean;\n /**\n * Style object for large title in header. Supported properties:\n * - fontFamily\n * - fontSize\n * - fontWeight\n * - color\n *\n * Only supported on iOS.\n *\n * @platform ios\n */\n headerLargeTitleStyle?: StyleProp<{\n fontFamily?: string;\n fontSize?: number;\n fontWeight?: string;\n color?: string;\n }>;\n /**\n * Whether to show the header. The header is shown by default.\n * Setting this to `false` hides the header.\n */\n headerShown?: boolean;\n /**\n * Style object for header. Supported properties:\n * - backgroundColor\n */\n headerStyle?: StyleProp<{\n backgroundColor?: string;\n }>;\n /**\n * Whether to hide the elevation shadow (Android) or the bottom border (iOS) on the header.\n */\n headerShadowVisible?: boolean;\n /**\n * Boolean indicating whether the navigation bar is translucent.\n * Setting this to `true` makes the header absolutely positioned,\n * and changes the background color to `transparent` unless specified in `headerStyle`.\n */\n headerTransparent?: boolean;\n /**\n * Blur effect for the translucent header.\n * The `headerTransparent` option needs to be set to `true` for this to work.\n *\n * Only supported on iOS.\n *\n * @platform ios\n */\n headerBlurEffect?: ScreenStackHeaderConfigProps['blurEffect'];\n /**\n * Tint color for the header. Changes the color of back button and title.\n */\n headerTintColor?: string;\n /**\n * Function which returns a React Element to render as the background of the header.\n * This is useful for using backgrounds such as an image, a gradient, blur effect etc.\n * You can use this with `headerTransparent` to render content underneath a translucent header.\n */\n headerBackground?: () => React.ReactNode;\n /**\n * Function which returns a React Element to display on the left side of the header.\n * This replaces the back button. See `headerBackVisible` to show the back button along side left element.\n */\n headerLeft?: (props: HeaderBackButtonProps) => React.ReactNode;\n /**\n * Function which returns a React Element to display on the right side of the header.\n */\n headerRight?: (props: HeaderButtonProps) => React.ReactNode;\n /**\n * String or a function that returns a React Element to be used by the header.\n * Defaults to screen `title` or route name.\n *\n * When a function is passed, it receives `tintColor` and`children` in the options object as an argument.\n * The title string is passed in `children`.\n *\n * Note that if you render a custom element by passing a function, animations for the title won't work.\n */\n headerTitle?:\n | string\n | ((props: {\n /**\n * The title text of the header.\n */\n children: string;\n /**\n * Tint color for the header.\n */\n tintColor?: string;\n }) => React.ReactNode);\n /**\n * How to align the the header title.\n * Defaults to `left` on platforms other than iOS.\n *\n * Not supported on iOS. It's always `center` on iOS and cannot be changed.\n */\n headerTitleAlign?: 'left' | 'center';\n /**\n * Style object for header title. Supported properties:\n * - fontFamily\n * - fontSize\n * - fontWeight\n * - color\n */\n headerTitleStyle?: StyleProp<\n Pick<TextStyle, 'fontFamily' | 'fontSize' | 'fontWeight'> & {\n color?: string;\n }\n >;\n /**\n * Options to render a native search bar.\n * You also need to specify `contentInsetAdjustmentBehavior=\"automatic\"` in your `ScrollView`, `FlatList` etc.\n * If you don't have a `ScrollView`, specify `headerTransparent: false`.\n *\n * Only supported on iOS and Android.\n */\n headerSearchBarOptions?: SearchBarProps;\n /**\n * Boolean indicating whether to show the menu on longPress of iOS >= 14 back button. Defaults to `true`.\n * Requires `react-native-screens` version >=3.3.0.\n *\n * Only supported on iOS.\n *\n * @platform ios\n */\n headerBackButtonMenuEnabled?: boolean;\n /**\n * Whether the home indicator should prefer to stay hidden on this screen. Defaults to `false`.\n *\n * @platform ios\n */\n autoHideHomeIndicator?: boolean;\n /**\n * Sets the navigation bar color. Defaults to initial navigation bar color.\n *\n * @platform android\n */\n navigationBarColor?: string;\n /**\n * Sets the visibility of the navigation bar. Defaults to `false`.\n *\n * @platform android\n */\n navigationBarHidden?: boolean;\n /**\n * Sets the status bar animation (similar to the `StatusBar` component).\n * Requires setting `View controller-based status bar appearance -> YES` (or removing the config) in your `Info.plist` file.\n *\n * Only supported on iOS.\n *\n * @platform ios\n */\n statusBarAnimation?: ScreenProps['statusBarAnimation'];\n /**\n * Sets the status bar color (similar to the `StatusBar` component). Defaults to initial status bar color.\n *\n * @platform android\n */\n statusBarColor?: string;\n /**\n * Whether the status bar should be hidden on this screen.\n * Requires setting `View controller-based status bar appearance -> YES` in your Info.plist file.\n *\n * Only supported on iOS.\n *\n * @platform ios\n */\n statusBarHidden?: boolean;\n /**\n * Sets the status bar color (similar to the `StatusBar` component).\n * Requires setting `View controller-based status bar appearance -> YES` (or removing the config) in your `Info.plist` file.\n *\n * Only supported on iOS.\n *\n * @platform ios\n */\n statusBarStyle?: ScreenProps['statusBarStyle'];\n /**\n * Sets the translucency of the status bar. Defaults to `false`.\n *\n * @platform android\n */\n statusBarTranslucent?: boolean;\n /**\n * Sets the direction in which you should swipe to dismiss the screen.\n * When using `vertical` option, options `fullScreenGestureEnabled: true`, `customAnimationOnGesture: true` and `animation: 'slide_from_bottom'` are set by default.\n *\n * Supported values:\n * - `vertical` – dismiss screen vertically\n * - `horizontal` – dismiss screen horizontally (default)\n *\n * @platform ios\n */\n gestureDirection?: ScreenProps['swipeDirection'];\n /**\n * Style object for the scene content.\n */\n contentStyle?: StyleProp<ViewStyle>;\n /**\n * Whether the gesture to dismiss should use animation provided to `animation` prop. Defaults to `false`.\n *\n * Doesn't affect the behavior of screens presented modally.\n *\n * @platform ios\n */\n customAnimationOnGesture?: boolean;\n /**\n * Whether the gesture to dismiss should work on the whole screen. Using gesture to dismiss with this option results in the same\n * transition animation as `simple_push`. This behavior can be changed by setting `customAnimationOnGesture` prop. Achieving the\n * default iOS animation isn't possible due to platform limitations. Defaults to `false`.\n *\n * Doesn't affect the behavior of screens presented modally.\n *\n * @platform ios\n */\n fullScreenGestureEnabled?: boolean;\n /**\n * Whether you can use gestures to dismiss this screen. Defaults to `true`.\n *\n * Only supported on iOS.\n *\n * @platform ios\n */\n gestureEnabled?: boolean;\n /**\n * The type of animation to use when this screen replaces another screen. Defaults to `pop`.\n *\n * Supported values:\n * - \"push\": the new screen will perform push animation.\n * - \"pop\": the new screen will perform pop animation.\n *\n * Only supported on iOS and Android.\n */\n animationTypeForReplace?: ScreenProps['replaceAnimation'];\n /**\n * How the screen should animate when pushed or popped.\n *\n * Supported values:\n * - \"default\": use the platform default animation\n * - \"fade\": fade screen in or out\n * - \"flip\": flip the screen, requires presentation: \"modal\" (iOS only)\n * - \"simple_push\": use the platform default animation, but without shadow and native header transition (iOS only)\n * - \"slide_from_bottom\": slide in the new screen from bottom\n * - \"slide_from_right\": slide in the new screen from right (Android only, uses default animation on iOS)\n * - \"slide_from_left\": slide in the new screen from left (Android only, uses default animation on iOS)\n * - \"none\": don't animate the screen\n *\n * Only supported on iOS and Android.\n */\n animation?: ScreenProps['stackAnimation'];\n /**\n * Changes the duration (in milliseconds) of `slide_from_bottom`, `fade_from_bottom`, `fade` and `simple_push` transitions on iOS. Defaults to `350`.\n * The duration of `default` and `flip` transitions isn't customizable.\n *\n * @platform ios\n */\n animationDuration?: number;\n /**\n * How should the screen be presented.\n *\n * Supported values:\n * - \"card\": the new screen will be pushed onto a stack, which means the default animation will be slide from the side on iOS, the animation on Android will vary depending on the OS version and theme.\n * - \"modal\": the new screen will be presented modally. this also allows for a nested stack to be rendered inside the screen.\n * - \"transparentModal\": the new screen will be presented modally, but in addition, the previous screen will stay so that the content below can still be seen if the screen has translucent background.\n * - \"containedModal\": will use \"UIModalPresentationCurrentContext\" modal style on iOS and will fallback to \"modal\" on Android.\n * - \"containedTransparentModal\": will use \"UIModalPresentationOverCurrentContext\" modal style on iOS and will fallback to \"transparentModal\" on Android.\n * - \"fullScreenModal\": will use \"UIModalPresentationFullScreen\" modal style on iOS and will fallback to \"modal\" on Android.\n * - \"formSheet\": will use \"UIModalPresentationFormSheet\" modal style on iOS and will fallback to \"modal\" on Android.\n *\n * Only supported on iOS and Android.\n */\n presentation?: Exclude<ScreenProps['stackPresentation'], 'push'> | 'card';\n /**\n * The display orientation to use for the screen.\n *\n * Supported values:\n * - \"default\" - resolves to \"all\" without \"portrait_down\" on iOS. On Android, this lets the system decide the best orientation.\n * - \"all\": all orientations are permitted.\n * - \"portrait\": portrait orientations are permitted.\n * - \"portrait_up\": right-side portrait orientation is permitted.\n * - \"portrait_down\": upside-down portrait orientation is permitted.\n * - \"landscape\": landscape orientations are permitted.\n * - \"landscape_left\": landscape-left orientation is permitted.\n * - \"landscape_right\": landscape-right orientation is permitted.\n *\n * Only supported on iOS and Android.\n */\n orientation?: ScreenProps['screenOrientation'];\n /**\n * Whether inactive screens should be suspended from re-rendering. Defaults to `false`.\n * Defaults to `true` when `enableFreeze()` is run at the top of the application.\n * Requires `react-native-screens` version >=3.16.0.\n *\n * Only supported on iOS and Android.\n */\n freezeOnBlur?: boolean;\n};\n\nexport type NativeStackNavigatorProps = DefaultNavigatorOptions<\n ParamListBase,\n StackNavigationState<ParamListBase>,\n NativeStackNavigationOptions,\n NativeStackNavigationEventMap\n> &\n StackRouterOptions &\n NativeStackNavigationConfig;\n\nexport type NativeStackDescriptor = Descriptor<\n NativeStackNavigationOptions,\n NativeStackNavigationProp<ParamListBase>,\n RouteProp<ParamListBase>\n>;\n\nexport type NativeStackDescriptorMap = {\n [key: string]: NativeStackDescriptor;\n};\n"],"mappings":""}
1
+ {"version":3,"names":[],"sourceRoot":"../../src","sources":["types.tsx"],"mappings":""}
@@ -4,16 +4,11 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.default = useInvalidPreventRemoveError;
7
-
8
7
  var React = _interopRequireWildcard(require("react"));
9
-
10
8
  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
-
12
9
  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; }
13
-
14
10
  function useInvalidPreventRemoveError(state) {
15
11
  var _state$routes$find;
16
-
17
12
  const [nextDismissedKey, setNextDismissedKey] = React.useState(null);
18
13
  const dismissedRouteName = nextDismissedKey ? (_state$routes$find = state.routes.find(route => route.key === nextDismissedKey)) === null || _state$routes$find === void 0 ? void 0 : _state$routes$find.name : null;
19
14
  React.useEffect(() => {
@@ -1 +1 @@
1
- {"version":3,"names":["useInvalidPreventRemoveError","state","nextDismissedKey","setNextDismissedKey","React","useState","dismissedRouteName","routes","find","route","key","name","useEffect","message","console","error"],"sources":["useDismissedRouteError.tsx"],"sourcesContent":["import type {\n ParamListBase,\n StackNavigationState,\n} from '@react-navigation/native';\nimport * as React from 'react';\n\nexport default function useInvalidPreventRemoveError(\n state: StackNavigationState<ParamListBase>\n) {\n const [nextDismissedKey, setNextDismissedKey] = React.useState<string | null>(\n null\n );\n\n const dismissedRouteName = nextDismissedKey\n ? state.routes.find((route) => route.key === nextDismissedKey)?.name\n : null;\n\n React.useEffect(() => {\n if (dismissedRouteName) {\n const message =\n `The screen '${dismissedRouteName}' was removed natively but didn't get removed from JS state. ` +\n `This can happen if the action was prevented in a 'beforeRemove' listener, which is not fully supported in native-stack.\\n\\n` +\n `Consider using a 'usePreventRemove' hook with 'headerBackButtonMenuEnabled: false' to prevent users from natively going back multiple screens.`;\n\n console.error(message);\n }\n }, [dismissedRouteName]);\n\n return { setNextDismissedKey };\n}\n"],"mappings":";;;;;;;AAIA;;;;;;AAEe,SAASA,4BAAT,CACbC,KADa,EAEb;EAAA;;EACA,MAAM,CAACC,gBAAD,EAAmBC,mBAAnB,IAA0CC,KAAK,CAACC,QAAN,CAC9C,IAD8C,CAAhD;EAIA,MAAMC,kBAAkB,GAAGJ,gBAAgB,yBACvCD,KAAK,CAACM,MAAN,CAAaC,IAAb,CAAmBC,KAAD,IAAWA,KAAK,CAACC,GAAN,KAAcR,gBAA3C,CADuC,uDACvC,mBAA8DS,IADvB,GAEvC,IAFJ;EAIAP,KAAK,CAACQ,SAAN,CAAgB,MAAM;IACpB,IAAIN,kBAAJ,EAAwB;MACtB,MAAMO,OAAO,GACV,eAAcP,kBAAmB,+DAAlC,GACC,6HADD,GAEC,gJAHH;MAKAQ,OAAO,CAACC,KAAR,CAAcF,OAAd;IACD;EACF,CATD,EASG,CAACP,kBAAD,CATH;EAWA,OAAO;IAAEH;EAAF,CAAP;AACD"}
1
+ {"version":3,"names":["useInvalidPreventRemoveError","state","nextDismissedKey","setNextDismissedKey","React","useState","dismissedRouteName","routes","find","route","key","name","useEffect","message","console","error"],"sourceRoot":"../../src","sources":["useDismissedRouteError.tsx"],"mappings":";;;;;;AAIA;AAA+B;AAAA;AAEhB,SAASA,4BAA4B,CAClDC,KAA0C,EAC1C;EAAA;EACA,MAAM,CAACC,gBAAgB,EAAEC,mBAAmB,CAAC,GAAGC,KAAK,CAACC,QAAQ,CAC5D,IAAI,CACL;EAED,MAAMC,kBAAkB,GAAGJ,gBAAgB,yBACvCD,KAAK,CAACM,MAAM,CAACC,IAAI,CAAEC,KAAK,IAAKA,KAAK,CAACC,GAAG,KAAKR,gBAAgB,CAAC,uDAA5D,mBAA8DS,IAAI,GAClE,IAAI;EAERP,KAAK,CAACQ,SAAS,CAAC,MAAM;IACpB,IAAIN,kBAAkB,EAAE;MACtB,MAAMO,OAAO,GACV,eAAcP,kBAAmB,+DAA8D,GAC/F,6HAA4H,GAC5H,gJAA+I;MAElJQ,OAAO,CAACC,KAAK,CAACF,OAAO,CAAC;IACxB;EACF,CAAC,EAAE,CAACP,kBAAkB,CAAC,CAAC;EAExB,OAAO;IAAEH;EAAoB,CAAC;AAChC"}
@@ -4,18 +4,12 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.default = useInvalidPreventRemoveError;
7
-
8
7
  var _native = require("@react-navigation/native");
9
-
10
8
  var React = _interopRequireWildcard(require("react"));
11
-
12
9
  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); }
13
-
14
10
  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; }
15
-
16
11
  function useInvalidPreventRemoveError(descriptors) {
17
12
  var _preventedDescriptor$, _preventedDescriptor$2;
18
-
19
13
  const {
20
14
  preventedRoutes
21
15
  } = (0, _native.usePreventRemoveContext)();
@@ -1 +1 @@
1
- {"version":3,"names":["useInvalidPreventRemoveError","descriptors","preventedRoutes","usePreventRemoveContext","preventedRouteKey","Object","keys","preventedDescriptor","isHeaderBackButtonMenuEnabledOnPreventedScreen","options","headerBackButtonMenuEnabled","preventedRouteName","route","name","React","useEffect","message","console","error"],"sources":["useInvalidPreventRemoveError.tsx"],"sourcesContent":["import { usePreventRemoveContext } from '@react-navigation/native';\nimport * as React from 'react';\n\nimport type { NativeStackDescriptorMap } from '../types';\n\nexport default function useInvalidPreventRemoveError(\n descriptors: NativeStackDescriptorMap\n) {\n const { preventedRoutes } = usePreventRemoveContext();\n const preventedRouteKey = Object.keys(preventedRoutes)[0];\n const preventedDescriptor = descriptors[preventedRouteKey];\n const isHeaderBackButtonMenuEnabledOnPreventedScreen =\n preventedDescriptor?.options?.headerBackButtonMenuEnabled;\n const preventedRouteName = preventedDescriptor?.route?.name;\n\n React.useEffect(() => {\n if (\n preventedRouteKey != null &&\n isHeaderBackButtonMenuEnabledOnPreventedScreen\n ) {\n const message =\n `The screen ${preventedRouteName} uses 'usePreventRemove' hook alongside 'headerBackButtonMenuEnabled: true', which is not supported. \\n\\n` +\n `Consider removing 'headerBackButtonMenuEnabled: true' from ${preventedRouteName} screen to get rid of this error.`;\n console.error(message);\n }\n }, [\n preventedRouteKey,\n isHeaderBackButtonMenuEnabledOnPreventedScreen,\n preventedRouteName,\n ]);\n}\n"],"mappings":";;;;;;;AAAA;;AACA;;;;;;AAIe,SAASA,4BAAT,CACbC,WADa,EAEb;EAAA;;EACA,MAAM;IAAEC;EAAF,IAAsB,IAAAC,+BAAA,GAA5B;EACA,MAAMC,iBAAiB,GAAGC,MAAM,CAACC,IAAP,CAAYJ,eAAZ,EAA6B,CAA7B,CAA1B;EACA,MAAMK,mBAAmB,GAAGN,WAAW,CAACG,iBAAD,CAAvC;EACA,MAAMI,8CAA8C,GAClDD,mBADkD,aAClDA,mBADkD,gDAClDA,mBAAmB,CAAEE,OAD6B,0DAClD,sBAA8BC,2BADhC;EAEA,MAAMC,kBAAkB,GAAGJ,mBAAH,aAAGA,mBAAH,iDAAGA,mBAAmB,CAAEK,KAAxB,2DAAG,uBAA4BC,IAAvD;EAEAC,KAAK,CAACC,SAAN,CAAgB,MAAM;IACpB,IACEX,iBAAiB,IAAI,IAArB,IACAI,8CAFF,EAGE;MACA,MAAMQ,OAAO,GACV,cAAaL,kBAAmB,2GAAjC,GACC,8DAA6DA,kBAAmB,mCAFnF;MAGAM,OAAO,CAACC,KAAR,CAAcF,OAAd;IACD;EACF,CAVD,EAUG,CACDZ,iBADC,EAEDI,8CAFC,EAGDG,kBAHC,CAVH;AAeD"}
1
+ {"version":3,"names":["useInvalidPreventRemoveError","descriptors","preventedRoutes","usePreventRemoveContext","preventedRouteKey","Object","keys","preventedDescriptor","isHeaderBackButtonMenuEnabledOnPreventedScreen","options","headerBackButtonMenuEnabled","preventedRouteName","route","name","React","useEffect","message","console","error"],"sourceRoot":"../../src","sources":["useInvalidPreventRemoveError.tsx"],"mappings":";;;;;;AAAA;AACA;AAA+B;AAAA;AAIhB,SAASA,4BAA4B,CAClDC,WAAqC,EACrC;EAAA;EACA,MAAM;IAAEC;EAAgB,CAAC,GAAG,IAAAC,+BAAuB,GAAE;EACrD,MAAMC,iBAAiB,GAAGC,MAAM,CAACC,IAAI,CAACJ,eAAe,CAAC,CAAC,CAAC,CAAC;EACzD,MAAMK,mBAAmB,GAAGN,WAAW,CAACG,iBAAiB,CAAC;EAC1D,MAAMI,8CAA8C,GAClDD,mBAAmB,aAAnBA,mBAAmB,gDAAnBA,mBAAmB,CAAEE,OAAO,0DAA5B,sBAA8BC,2BAA2B;EAC3D,MAAMC,kBAAkB,GAAGJ,mBAAmB,aAAnBA,mBAAmB,iDAAnBA,mBAAmB,CAAEK,KAAK,2DAA1B,uBAA4BC,IAAI;EAE3DC,KAAK,CAACC,SAAS,CAAC,MAAM;IACpB,IACEX,iBAAiB,IAAI,IAAI,IACzBI,8CAA8C,EAC9C;MACA,MAAMQ,OAAO,GACV,cAAaL,kBAAmB,2GAA0G,GAC1I,8DAA6DA,kBAAmB,mCAAkC;MACrHM,OAAO,CAACC,KAAK,CAACF,OAAO,CAAC;IACxB;EACF,CAAC,EAAE,CACDZ,iBAAiB,EACjBI,8CAA8C,EAC9CG,kBAAkB,CACnB,CAAC;AACJ"}
@@ -4,15 +4,10 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.default = Container;
7
-
8
7
  var React = _interopRequireWildcard(require("react"));
9
-
10
8
  var _reactNative = require("react-native");
11
-
12
9
  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); }
13
-
14
10
  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; }
15
-
16
11
  function Container(props) {
17
12
  // eslint-disable-next-line @typescript-eslint/no-unused-vars
18
13
  const {
@@ -1 +1 @@
1
- {"version":3,"names":["Container","props","stackPresentation","_","rest"],"sources":["DebugContainer.tsx"],"sourcesContent":["import * as React from 'react';\nimport { View, ViewProps } from 'react-native';\nimport type { StackPresentationTypes } from 'react-native-screens';\n\ntype ContainerProps = ViewProps & {\n stackPresentation: StackPresentationTypes;\n children: React.ReactNode;\n};\n\nexport default function Container(props: ContainerProps) {\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n const { stackPresentation: _, ...rest } = props;\n return <View {...rest} />;\n}\n"],"mappings":";;;;;;;AAAA;;AACA;;;;;;AAQe,SAASA,SAAT,CAAmBC,KAAnB,EAA0C;EACvD;EACA,MAAM;IAAEC,iBAAiB,EAAEC,CAArB;IAAwB,GAAGC;EAA3B,IAAoCH,KAA1C;EACA,oBAAO,oBAAC,iBAAD,EAAUG,IAAV,CAAP;AACD"}
1
+ {"version":3,"names":["Container","props","stackPresentation","_","rest"],"sourceRoot":"../../src","sources":["DebugContainer.tsx"],"mappings":";;;;;;AAAA;AACA;AAA+C;AAAA;AAQhC,SAASA,SAAS,CAACC,KAAqB,EAAE;EACvD;EACA,MAAM;IAAEC,iBAAiB,EAAEC,CAAC;IAAE,GAAGC;EAAK,CAAC,GAAGH,KAAK;EAC/C,oBAAO,oBAAC,iBAAI,EAAKG,IAAI,CAAI;AAC3B"}
@@ -4,40 +4,29 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.default = void 0;
7
-
8
7
  var React = _interopRequireWildcard(require("react"));
9
-
10
8
  var _reactNative = require("react-native");
11
-
12
9
  var _AppContainer = _interopRequireDefault(require("react-native/Libraries/ReactNative/AppContainer"));
13
-
14
10
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
15
-
16
11
  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); }
17
-
18
12
  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; }
19
-
20
13
  // @ts-ignore Getting private component
21
- let Container = _reactNative.View;
22
14
 
15
+ let Container = _reactNative.View;
23
16
  if (process.env.NODE_ENV !== 'production') {
24
17
  const DebugContainer = props => {
25
18
  const {
26
19
  stackPresentation,
27
20
  ...rest
28
21
  } = props;
29
-
30
22
  if (_reactNative.Platform.OS === 'ios' && stackPresentation !== 'push') {
31
23
  // This is necessary for LogBox
32
24
  return /*#__PURE__*/React.createElement(_AppContainer.default, null, /*#__PURE__*/React.createElement(_reactNative.View, rest));
33
25
  }
34
-
35
26
  return /*#__PURE__*/React.createElement(_reactNative.View, rest);
36
27
  };
37
-
38
28
  Container = DebugContainer;
39
29
  }
40
-
41
30
  var _default = Container;
42
31
  exports.default = _default;
43
32
  //# sourceMappingURL=DebugContainer.native.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["Container","View","process","env","NODE_ENV","DebugContainer","props","stackPresentation","rest","Platform","OS"],"sources":["DebugContainer.native.tsx"],"sourcesContent":["import * as React from 'react';\nimport { Platform, View, ViewProps } from 'react-native';\n// @ts-ignore Getting private component\nimport AppContainer from 'react-native/Libraries/ReactNative/AppContainer';\nimport type { StackPresentationTypes } from 'react-native-screens';\n\ntype ContainerProps = ViewProps & {\n stackPresentation: StackPresentationTypes;\n children: React.ReactNode;\n};\n\nlet Container = View as unknown as React.ComponentType<ContainerProps>;\n\nif (process.env.NODE_ENV !== 'production') {\n const DebugContainer = (props: ContainerProps) => {\n const { stackPresentation, ...rest } = props;\n\n if (Platform.OS === 'ios' && stackPresentation !== 'push') {\n // This is necessary for LogBox\n return (\n <AppContainer>\n <View {...rest} />\n </AppContainer>\n );\n }\n\n return <View {...rest} />;\n };\n\n Container = DebugContainer;\n}\n\nexport default Container;\n"],"mappings":";;;;;;;AAAA;;AACA;;AAEA;;;;;;;;AADA;AASA,IAAIA,SAAS,GAAGC,iBAAhB;;AAEA,IAAIC,OAAO,CAACC,GAAR,CAAYC,QAAZ,KAAyB,YAA7B,EAA2C;EACzC,MAAMC,cAAc,GAAIC,KAAD,IAA2B;IAChD,MAAM;MAAEC,iBAAF;MAAqB,GAAGC;IAAxB,IAAiCF,KAAvC;;IAEA,IAAIG,qBAAA,CAASC,EAAT,KAAgB,KAAhB,IAAyBH,iBAAiB,KAAK,MAAnD,EAA2D;MACzD;MACA,oBACE,oBAAC,qBAAD,qBACE,oBAAC,iBAAD,EAAUC,IAAV,CADF,CADF;IAKD;;IAED,oBAAO,oBAAC,iBAAD,EAAUA,IAAV,CAAP;EACD,CAbD;;EAeAR,SAAS,GAAGK,cAAZ;AACD;;eAEcL,S"}
1
+ {"version":3,"names":["Container","View","process","env","NODE_ENV","DebugContainer","props","stackPresentation","rest","Platform","OS"],"sourceRoot":"../../src","sources":["DebugContainer.native.tsx"],"mappings":";;;;;;AAAA;AACA;AAEA;AAA2E;AAAA;AAAA;AAD3E;;AASA,IAAIA,SAAS,GAAGC,iBAAsD;AAEtE,IAAIC,OAAO,CAACC,GAAG,CAACC,QAAQ,KAAK,YAAY,EAAE;EACzC,MAAMC,cAAc,GAAIC,KAAqB,IAAK;IAChD,MAAM;MAAEC,iBAAiB;MAAE,GAAGC;IAAK,CAAC,GAAGF,KAAK;IAE5C,IAAIG,qBAAQ,CAACC,EAAE,KAAK,KAAK,IAAIH,iBAAiB,KAAK,MAAM,EAAE;MACzD;MACA,oBACE,oBAAC,qBAAY,qBACX,oBAAC,iBAAI,EAAKC,IAAI,CAAI,CACL;IAEnB;IAEA,oBAAO,oBAAC,iBAAI,EAAKA,IAAI,CAAI;EAC3B,CAAC;EAEDR,SAAS,GAAGK,cAAc;AAC5B;AAAC,eAEcL,SAAS;AAAA"}
@@ -4,7 +4,6 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.processFonts = processFonts;
7
-
8
7
  function processFonts(_) {
9
8
  throw new Error('Not supported on Web');
10
9
  }
@@ -1 +1 @@
1
- {"version":3,"names":["processFonts","_","Error"],"sources":["FontProcessor.tsx"],"sourcesContent":["export function processFonts(\n _: (string | undefined)[]\n): (string | undefined)[] {\n throw new Error('Not supported on Web');\n}\n"],"mappings":";;;;;;;AAAO,SAASA,YAAT,CACLC,CADK,EAEmB;EACxB,MAAM,IAAIC,KAAJ,CAAU,sBAAV,CAAN;AACD"}
1
+ {"version":3,"names":["processFonts","_","Error"],"sourceRoot":"../../src","sources":["FontProcessor.tsx"],"mappings":";;;;;;AAAO,SAASA,YAAY,CAC1BC,CAAyB,EACD;EACxB,MAAM,IAAIC,KAAK,CAAC,sBAAsB,CAAC;AACzC"}
@@ -4,22 +4,17 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.processFonts = processFonts;
7
-
8
7
  var _ReactNativeStyleAttributes = _interopRequireDefault(require("react-native/Libraries/Components/View/ReactNativeStyleAttributes"));
9
-
10
8
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
11
-
12
9
  // @ts-ignore: No declaration available
10
+
13
11
  function processFonts(fontFamilies) {
14
12
  var _ReactNativeStyleAttr;
15
-
16
13
  // @ts-ignore: React Native types are incorrect here and don't consider fontFamily a style value
17
14
  const fontFamilyProcessor = (_ReactNativeStyleAttr = _ReactNativeStyleAttributes.default.fontFamily) === null || _ReactNativeStyleAttr === void 0 ? void 0 : _ReactNativeStyleAttr.process;
18
-
19
15
  if (typeof fontFamilyProcessor === 'function') {
20
16
  return fontFamilies.map(fontFamilyProcessor);
21
17
  }
22
-
23
18
  return fontFamilies;
24
19
  }
25
20
  //# sourceMappingURL=FontProcessor.native.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["processFonts","fontFamilies","fontFamilyProcessor","ReactNativeStyleAttributes","fontFamily","process","map"],"sources":["FontProcessor.native.tsx"],"sourcesContent":["// @ts-ignore: No declaration available\nimport ReactNativeStyleAttributes from 'react-native/Libraries/Components/View/ReactNativeStyleAttributes';\n\nexport function processFonts(\n fontFamilies: (string | undefined)[]\n): (string | undefined)[] {\n // @ts-ignore: React Native types are incorrect here and don't consider fontFamily a style value\n const fontFamilyProcessor = ReactNativeStyleAttributes.fontFamily?.process;\n if (typeof fontFamilyProcessor === 'function') {\n return fontFamilies.map(fontFamilyProcessor);\n }\n return fontFamilies;\n}\n"],"mappings":";;;;;;;AACA;;;;AADA;AAGO,SAASA,YAAT,CACLC,YADK,EAEmB;EAAA;;EACxB;EACA,MAAMC,mBAAmB,4BAAGC,mCAAA,CAA2BC,UAA9B,0DAAG,sBAAuCC,OAAnE;;EACA,IAAI,OAAOH,mBAAP,KAA+B,UAAnC,EAA+C;IAC7C,OAAOD,YAAY,CAACK,GAAb,CAAiBJ,mBAAjB,CAAP;EACD;;EACD,OAAOD,YAAP;AACD"}
1
+ {"version":3,"names":["processFonts","fontFamilies","fontFamilyProcessor","ReactNativeStyleAttributes","fontFamily","process","map"],"sourceRoot":"../../src","sources":["FontProcessor.native.tsx"],"mappings":";;;;;;AACA;AAA2G;AAD3G;;AAGO,SAASA,YAAY,CAC1BC,YAAoC,EACZ;EAAA;EACxB;EACA,MAAMC,mBAAmB,4BAAGC,mCAA0B,CAACC,UAAU,0DAArC,sBAAuCC,OAAO;EAC1E,IAAI,OAAOH,mBAAmB,KAAK,UAAU,EAAE;IAC7C,OAAOD,YAAY,CAACK,GAAG,CAACJ,mBAAmB,CAAC;EAC9C;EACA,OAAOD,YAAY;AACrB"}
@@ -4,26 +4,15 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.default = HeaderConfig;
7
-
8
7
  var _elements = require("@react-navigation/elements");
9
-
10
8
  var _native = require("@react-navigation/native");
11
-
12
9
  var React = _interopRequireWildcard(require("react"));
13
-
14
10
  var _reactNative = require("react-native");
15
-
16
11
  var _reactNativeScreens = require("react-native-screens");
17
-
18
12
  var _FontProcessor = require("./FontProcessor");
19
-
20
13
  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); }
21
-
22
14
  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; }
23
-
24
15
  function HeaderConfig(_ref) {
25
- var _ref2, _headerTitleStyleFlat, _headerStyleFlattened;
26
-
27
16
  let {
28
17
  headerHeight,
29
18
  headerBackImageSource,
@@ -57,7 +46,7 @@ function HeaderConfig(_ref) {
57
46
  const {
58
47
  colors
59
48
  } = (0, _native.useTheme)();
60
- const tintColor = headerTintColor !== null && headerTintColor !== void 0 ? headerTintColor : _reactNative.Platform.OS === 'ios' ? colors.primary : colors.text;
49
+ const tintColor = headerTintColor ?? (_reactNative.Platform.OS === 'ios' ? colors.primary : colors.text);
61
50
  const headerBackTitleStyleFlattened = _reactNative.StyleSheet.flatten(headerBackTitleStyle) || {};
62
51
  const headerLargeTitleStyleFlattened = _reactNative.StyleSheet.flatten(headerLargeTitleStyle) || {};
63
52
  const headerTitleStyleFlattened = _reactNative.StyleSheet.flatten(headerTitleStyle) || {};
@@ -68,25 +57,21 @@ function HeaderConfig(_ref) {
68
57
  title,
69
58
  headerTitle
70
59
  }, route.name);
71
- const titleColor = (_ref2 = (_headerTitleStyleFlat = headerTitleStyleFlattened.color) !== null && _headerTitleStyleFlat !== void 0 ? _headerTitleStyleFlat : headerTintColor) !== null && _ref2 !== void 0 ? _ref2 : colors.text;
60
+ const titleColor = headerTitleStyleFlattened.color ?? headerTintColor ?? colors.text;
72
61
  const titleFontSize = headerTitleStyleFlattened.fontSize;
73
62
  const titleFontWeight = headerTitleStyleFlattened.fontWeight;
74
63
  const headerTitleStyleSupported = {
75
64
  color: titleColor
76
65
  };
77
-
78
66
  if (headerTitleStyleFlattened.fontFamily != null) {
79
67
  headerTitleStyleSupported.fontFamily = headerTitleStyleFlattened.fontFamily;
80
68
  }
81
-
82
69
  if (titleFontSize != null) {
83
70
  headerTitleStyleSupported.fontSize = titleFontSize;
84
71
  }
85
-
86
72
  if (titleFontWeight != null) {
87
73
  headerTitleStyleSupported.fontWeight = titleFontWeight;
88
74
  }
89
-
90
75
  const headerLeftElement = headerLeft === null || headerLeft === void 0 ? void 0 : headerLeft({
91
76
  tintColor,
92
77
  canGoBack,
@@ -100,22 +85,22 @@ function HeaderConfig(_ref) {
100
85
  tintColor,
101
86
  children: titleText
102
87
  }) : null;
103
- const supportsHeaderSearchBar = typeof _reactNativeScreens.isSearchBarAvailableForCurrentPlatform === 'boolean' ? _reactNativeScreens.isSearchBarAvailableForCurrentPlatform : // Fallback for older versions of react-native-screens
88
+ const supportsHeaderSearchBar = typeof _reactNativeScreens.isSearchBarAvailableForCurrentPlatform === 'boolean' ? _reactNativeScreens.isSearchBarAvailableForCurrentPlatform :
89
+ // Fallback for older versions of react-native-screens
104
90
  _reactNative.Platform.OS === 'ios' && _reactNativeScreens.SearchBar != null;
105
91
  const hasHeaderSearchBar = supportsHeaderSearchBar && headerSearchBarOptions != null;
106
-
107
92
  if (headerSearchBarOptions != null && !supportsHeaderSearchBar) {
108
93
  throw new Error(`The current version of 'react-native-screens' doesn't support SearchBar in the header. Please update to the latest version to use this option.`);
109
94
  }
95
+
110
96
  /**
111
97
  * We need to set this in if:
112
98
  * - Back button should stay visible when `headerLeft` is specified
113
99
  * - If `headerTitle` for Android is specified, so we only need to remove the title and keep the back button
114
100
  */
115
-
116
-
117
101
  const backButtonInCustomView = headerBackVisible ? headerLeftElement != null : _reactNative.Platform.OS === 'android' && headerTitleElement != null;
118
- const translucent = headerBackground != null || headerTransparent || // When using a SearchBar or large title, the header needs to be translucent for it to work on iOS
102
+ const translucent = headerBackground != null || headerTransparent ||
103
+ // When using a SearchBar or large title, the header needs to be translucent for it to work on iOS
119
104
  (hasHeaderSearchBar || headerLargeTitle) && _reactNative.Platform.OS === 'ios' && headerTransparent !== false;
120
105
  return /*#__PURE__*/React.createElement(React.Fragment, null, headerBackground != null ? /*#__PURE__*/React.createElement(_reactNative.View, {
121
106
  style: [styles.background, headerTransparent ? styles.translucent : null, {
@@ -123,7 +108,7 @@ function HeaderConfig(_ref) {
123
108
  }]
124
109
  }, headerBackground()) : null, /*#__PURE__*/React.createElement(_reactNativeScreens.ScreenStackHeaderConfig, {
125
110
  backButtonInCustomView: backButtonInCustomView,
126
- backgroundColor: (_headerStyleFlattened = headerStyleFlattened.backgroundColor) !== null && _headerStyleFlattened !== void 0 ? _headerStyleFlattened : headerBackground != null || headerTransparent ? 'transparent' : colors.card,
111
+ backgroundColor: headerStyleFlattened.backgroundColor ?? (headerBackground != null || headerTransparent ? 'transparent' : colors.card),
127
112
  backTitle: headerBackTitleVisible ? headerBackTitle : ' ',
128
113
  backTitleFontFamily: backTitleFontFamily,
129
114
  backTitleFontSize: headerBackTitleStyleFlattened.fontSize,
@@ -147,7 +132,8 @@ function HeaderConfig(_ref) {
147
132
  titleFontSize: titleFontSize,
148
133
  titleFontWeight: titleFontWeight,
149
134
  topInsetEnabled: headerTopInsetEnabled,
150
- translucent: // This defaults to `true`, so we can't pass `undefined`
135
+ translucent:
136
+ // This defaults to `true`, so we can't pass `undefined`
151
137
  translucent === true
152
138
  }, _reactNative.Platform.OS === 'ios' ? /*#__PURE__*/React.createElement(React.Fragment, null, headerLeftElement != null ? /*#__PURE__*/React.createElement(_reactNativeScreens.ScreenStackHeaderLeftView, null, headerLeftElement) : null, headerTitleElement != null ? /*#__PURE__*/React.createElement(_reactNativeScreens.ScreenStackHeaderCenterView, null, headerTitleElement) : null) : /*#__PURE__*/React.createElement(React.Fragment, null, headerLeftElement != null || typeof headerTitle === 'function' ? /*#__PURE__*/React.createElement(_reactNativeScreens.ScreenStackHeaderLeftView, null, /*#__PURE__*/React.createElement(_reactNative.View, {
153
139
  style: styles.row
@@ -161,7 +147,6 @@ function HeaderConfig(_ref) {
161
147
  source: headerBackImageSource
162
148
  }) : null, headerRightElement != null ? /*#__PURE__*/React.createElement(_reactNativeScreens.ScreenStackHeaderRightView, null, headerRightElement) : null, hasHeaderSearchBar ? /*#__PURE__*/React.createElement(_reactNativeScreens.ScreenStackHeaderSearchBarView, null, /*#__PURE__*/React.createElement(_reactNativeScreens.SearchBar, headerSearchBarOptions)) : null));
163
149
  }
164
-
165
150
  const styles = _reactNative.StyleSheet.create({
166
151
  row: {
167
152
  flexDirection: 'row',
@@ -1 +1 @@
1
- {"version":3,"names":["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","colors","useTheme","tintColor","Platform","OS","primary","text","headerBackTitleStyleFlattened","StyleSheet","flatten","headerLargeTitleStyleFlattened","headerTitleStyleFlattened","headerStyleFlattened","headerLargeStyleFlattened","backTitleFontFamily","largeTitleFontFamily","titleFontFamily","processFonts","fontFamily","titleText","getHeaderTitle","name","titleColor","color","titleFontSize","fontSize","titleFontWeight","fontWeight","headerTitleStyleSupported","headerLeftElement","label","headerRightElement","headerTitleElement","children","supportsHeaderSearchBar","isSearchBarAvailableForCurrentPlatform","SearchBar","hasHeaderSearchBar","Error","backButtonInCustomView","translucent","styles","background","height","backgroundColor","card","I18nManager","getConstants","isRTL","row","undefined","create","flexDirection","alignItems","position","top","left","right","zIndex","overflow"],"sources":["HeaderConfig.tsx"],"sourcesContent":["import { getHeaderTitle, HeaderTitle } from '@react-navigation/elements';\nimport { Route, useTheme } from '@react-navigation/native';\nimport * as React from 'react';\nimport {\n I18nManager,\n Platform,\n StyleSheet,\n TextStyle,\n View,\n} from 'react-native';\nimport {\n isSearchBarAvailableForCurrentPlatform,\n ScreenStackHeaderBackButtonImage,\n ScreenStackHeaderCenterView,\n ScreenStackHeaderConfig,\n ScreenStackHeaderLeftView,\n ScreenStackHeaderRightView,\n ScreenStackHeaderSearchBarView,\n SearchBar,\n} from 'react-native-screens';\n\nimport type { NativeStackNavigationOptions } from '../types';\nimport { processFonts } from './FontProcessor';\n\ntype Props = NativeStackNavigationOptions & {\n headerTopInsetEnabled: boolean;\n headerHeight: number;\n route: Route<string>;\n canGoBack: boolean;\n};\n\nexport default function HeaderConfig({\n headerHeight,\n headerBackImageSource,\n headerBackButtonMenuEnabled,\n headerBackTitle,\n headerBackTitleStyle,\n headerBackTitleVisible = true,\n headerBackVisible,\n headerShadowVisible,\n headerLargeStyle,\n headerLargeTitle,\n headerLargeTitleShadowVisible,\n headerLargeTitleStyle,\n headerBackground,\n headerLeft,\n headerRight,\n headerShown,\n headerStyle,\n headerBlurEffect,\n headerTintColor,\n headerTitle,\n headerTitleAlign,\n headerTitleStyle,\n headerTransparent,\n headerSearchBarOptions,\n headerTopInsetEnabled,\n route,\n title,\n canGoBack,\n}: Props): JSX.Element {\n const { colors } = useTheme();\n const tintColor =\n headerTintColor ?? (Platform.OS === 'ios' ? colors.primary : colors.text);\n\n const headerBackTitleStyleFlattened =\n StyleSheet.flatten(headerBackTitleStyle) || {};\n const headerLargeTitleStyleFlattened =\n StyleSheet.flatten(headerLargeTitleStyle) || {};\n const headerTitleStyleFlattened = StyleSheet.flatten(headerTitleStyle) || {};\n const headerStyleFlattened = StyleSheet.flatten(headerStyle) || {};\n const headerLargeStyleFlattened = StyleSheet.flatten(headerLargeStyle) || {};\n\n const [backTitleFontFamily, largeTitleFontFamily, titleFontFamily] =\n processFonts([\n headerBackTitleStyleFlattened.fontFamily,\n headerLargeTitleStyleFlattened.fontFamily,\n headerTitleStyleFlattened.fontFamily,\n ]);\n\n const titleText = getHeaderTitle({ title, headerTitle }, route.name);\n const titleColor =\n headerTitleStyleFlattened.color ?? headerTintColor ?? colors.text;\n const titleFontSize = headerTitleStyleFlattened.fontSize;\n const titleFontWeight = headerTitleStyleFlattened.fontWeight;\n\n const headerTitleStyleSupported: TextStyle = { color: titleColor };\n\n if (headerTitleStyleFlattened.fontFamily != null) {\n headerTitleStyleSupported.fontFamily = headerTitleStyleFlattened.fontFamily;\n }\n\n if (titleFontSize != null) {\n headerTitleStyleSupported.fontSize = titleFontSize;\n }\n\n if (titleFontWeight != null) {\n headerTitleStyleSupported.fontWeight = titleFontWeight;\n }\n\n const headerLeftElement = headerLeft?.({\n tintColor,\n canGoBack,\n label: headerBackTitle,\n });\n const headerRightElement = headerRight?.({\n tintColor,\n canGoBack,\n });\n const headerTitleElement =\n typeof headerTitle === 'function'\n ? headerTitle({\n tintColor,\n children: titleText,\n })\n : null;\n\n const supportsHeaderSearchBar =\n typeof isSearchBarAvailableForCurrentPlatform === 'boolean'\n ? isSearchBarAvailableForCurrentPlatform\n : // Fallback for older versions of react-native-screens\n Platform.OS === 'ios' && SearchBar != null;\n\n const hasHeaderSearchBar =\n supportsHeaderSearchBar && headerSearchBarOptions != null;\n\n if (headerSearchBarOptions != null && !supportsHeaderSearchBar) {\n throw new Error(\n `The current version of 'react-native-screens' doesn't support SearchBar in the header. Please update to the latest version to use this option.`\n );\n }\n\n /**\n * We need to set this in if:\n * - Back button should stay visible when `headerLeft` is specified\n * - If `headerTitle` for Android is specified, so we only need to remove the title and keep the back button\n */\n const backButtonInCustomView = headerBackVisible\n ? headerLeftElement != null\n : Platform.OS === 'android' && headerTitleElement != null;\n\n const translucent =\n headerBackground != null ||\n headerTransparent ||\n // When using a SearchBar or large title, the header needs to be translucent for it to work on iOS\n ((hasHeaderSearchBar || headerLargeTitle) &&\n Platform.OS === 'ios' &&\n headerTransparent !== false);\n\n return (\n <>\n {headerBackground != null ? (\n <View\n style={[\n styles.background,\n headerTransparent ? styles.translucent : null,\n { height: headerHeight },\n ]}\n >\n {headerBackground()}\n </View>\n ) : null}\n <ScreenStackHeaderConfig\n backButtonInCustomView={backButtonInCustomView}\n backgroundColor={\n headerStyleFlattened.backgroundColor ??\n (headerBackground != null || headerTransparent\n ? 'transparent'\n : colors.card)\n }\n backTitle={headerBackTitleVisible ? headerBackTitle : ' '}\n backTitleFontFamily={backTitleFontFamily}\n backTitleFontSize={headerBackTitleStyleFlattened.fontSize}\n blurEffect={headerBlurEffect}\n color={tintColor}\n direction={I18nManager.getConstants().isRTL ? 'rtl' : 'ltr'}\n disableBackButtonMenu={headerBackButtonMenuEnabled === false}\n hidden={headerShown === false}\n hideBackButton={headerBackVisible === false}\n hideShadow={\n headerShadowVisible === false ||\n headerBackground != null ||\n (headerTransparent && headerShadowVisible !== true)\n }\n largeTitle={headerLargeTitle}\n largeTitleBackgroundColor={headerLargeStyleFlattened.backgroundColor}\n largeTitleColor={headerLargeTitleStyleFlattened.color}\n largeTitleFontFamily={largeTitleFontFamily}\n largeTitleFontSize={headerLargeTitleStyleFlattened.fontSize}\n largeTitleFontWeight={headerLargeTitleStyleFlattened.fontWeight}\n largeTitleHideShadow={headerLargeTitleShadowVisible === false}\n title={titleText}\n titleColor={titleColor}\n titleFontFamily={titleFontFamily}\n titleFontSize={titleFontSize}\n titleFontWeight={titleFontWeight}\n topInsetEnabled={headerTopInsetEnabled}\n translucent={\n // This defaults to `true`, so we can't pass `undefined`\n translucent === true\n }\n >\n {Platform.OS === 'ios' ? (\n <>\n {headerLeftElement != null ? (\n <ScreenStackHeaderLeftView>\n {headerLeftElement}\n </ScreenStackHeaderLeftView>\n ) : null}\n {headerTitleElement != null ? (\n <ScreenStackHeaderCenterView>\n {headerTitleElement}\n </ScreenStackHeaderCenterView>\n ) : null}\n </>\n ) : (\n <>\n {headerLeftElement != null || typeof headerTitle === 'function' ? (\n <ScreenStackHeaderLeftView>\n <View style={styles.row}>\n {headerLeftElement}\n {headerTitleAlign !== 'center' ? (\n typeof headerTitle === 'function' ? (\n headerTitleElement\n ) : (\n <HeaderTitle\n tintColor={tintColor}\n style={headerTitleStyleSupported}\n >\n {titleText}\n </HeaderTitle>\n )\n ) : null}\n </View>\n </ScreenStackHeaderLeftView>\n ) : null}\n {headerTitleAlign === 'center' ? (\n <ScreenStackHeaderCenterView>\n {typeof headerTitle === 'function' ? (\n headerTitleElement\n ) : (\n <HeaderTitle\n tintColor={tintColor}\n style={headerTitleStyleSupported}\n >\n {titleText}\n </HeaderTitle>\n )}\n </ScreenStackHeaderCenterView>\n ) : null}\n </>\n )}\n {headerBackImageSource !== undefined ? (\n <ScreenStackHeaderBackButtonImage source={headerBackImageSource} />\n ) : null}\n {headerRightElement != null ? (\n <ScreenStackHeaderRightView>\n {headerRightElement}\n </ScreenStackHeaderRightView>\n ) : null}\n {hasHeaderSearchBar ? (\n <ScreenStackHeaderSearchBarView>\n <SearchBar {...headerSearchBarOptions} />\n </ScreenStackHeaderSearchBarView>\n ) : null}\n </ScreenStackHeaderConfig>\n </>\n );\n}\n\nconst styles = StyleSheet.create({\n row: {\n flexDirection: 'row',\n alignItems: 'center',\n },\n translucent: {\n position: 'absolute',\n top: 0,\n left: 0,\n right: 0,\n zIndex: 1,\n },\n background: {\n overflow: 'hidden',\n },\n});\n"],"mappings":"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"}
1
+ {"version":3,"names":["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","colors","useTheme","tintColor","Platform","OS","primary","text","headerBackTitleStyleFlattened","StyleSheet","flatten","headerLargeTitleStyleFlattened","headerTitleStyleFlattened","headerStyleFlattened","headerLargeStyleFlattened","backTitleFontFamily","largeTitleFontFamily","titleFontFamily","processFonts","fontFamily","titleText","getHeaderTitle","name","titleColor","color","titleFontSize","fontSize","titleFontWeight","fontWeight","headerTitleStyleSupported","headerLeftElement","label","headerRightElement","headerTitleElement","children","supportsHeaderSearchBar","isSearchBarAvailableForCurrentPlatform","SearchBar","hasHeaderSearchBar","Error","backButtonInCustomView","translucent","styles","background","height","backgroundColor","card","I18nManager","getConstants","isRTL","row","undefined","create","flexDirection","alignItems","position","top","left","right","zIndex","overflow"],"sourceRoot":"../../src","sources":["HeaderConfig.tsx"],"mappings":"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"}
@@ -4,19 +4,12 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.default = NativeStackView;
7
-
8
7
  var _elements = require("@react-navigation/elements");
9
-
10
8
  var React = _interopRequireWildcard(require("react"));
11
-
12
9
  var _reactNative = require("react-native");
13
-
14
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); }
15
-
16
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; }
17
-
18
12
  const TRANSPARENT_PRESENTATIONS = ['transparentModal', 'containedTransparentModal'];
19
-
20
13
  function NativeStackView(_ref) {
21
14
  let {
22
15
  state,
@@ -27,7 +20,6 @@ function NativeStackView(_ref) {
27
20
  style: styles.container
28
21
  }, state.routes.map((route, i) => {
29
22
  var _state$routes, _state$routes2;
30
-
31
23
  const isFocused = state.index === i;
32
24
  const previousKey = (_state$routes = state.routes[i - 1]) === null || _state$routes === void 0 ? void 0 : _state$routes.key;
33
25
  const nextKey = (_state$routes2 = state.routes[i + 1]) === null || _state$routes2 === void 0 ? void 0 : _state$routes2.key;
@@ -139,7 +131,6 @@ function NativeStackView(_ref) {
139
131
  }, render())));
140
132
  })));
141
133
  }
142
-
143
134
  const styles = _reactNative.StyleSheet.create({
144
135
  container: {
145
136
  flex: 1
@@ -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"],"sources":["NativeStackView.tsx"],"sourcesContent":["import {\n getHeaderTitle,\n Header,\n HeaderBackButton,\n HeaderBackContext,\n SafeAreaProviderCompat,\n Screen,\n} from '@react-navigation/elements';\nimport type {\n ParamListBase,\n StackNavigationState,\n} from '@react-navigation/native';\nimport * as React from 'react';\nimport { Image, StyleSheet, View } from 'react-native';\n\nimport type {\n NativeStackDescriptorMap,\n NativeStackNavigationHelpers,\n} from '../types';\n\ntype Props = {\n state: StackNavigationState<ParamListBase>;\n // This is used for the native implementation of the stack.\n // eslint-disable-next-line react/no-unused-prop-types\n navigation: NativeStackNavigationHelpers;\n descriptors: NativeStackDescriptorMap;\n};\n\nconst TRANSPARENT_PRESENTATIONS = [\n 'transparentModal',\n 'containedTransparentModal',\n];\n\nexport default function NativeStackView({ state, descriptors }: Props) {\n const parentHeaderBack = React.useContext(HeaderBackContext);\n\n return (\n <SafeAreaProviderCompat>\n <View style={styles.container}>\n {state.routes.map((route, i) => {\n const isFocused = state.index === i;\n const previousKey = state.routes[i - 1]?.key;\n const nextKey = state.routes[i + 1]?.key;\n const previousDescriptor = previousKey\n ? descriptors[previousKey]\n : undefined;\n const nextDescriptor = nextKey ? descriptors[nextKey] : undefined;\n const { options, navigation, render } = descriptors[route.key];\n\n const headerBack = previousDescriptor\n ? {\n title: getHeaderTitle(\n previousDescriptor.options,\n previousDescriptor.route.name\n ),\n }\n : parentHeaderBack;\n\n const canGoBack = headerBack !== undefined;\n\n const {\n header,\n headerShown,\n headerTintColor,\n headerBackImageSource,\n headerLeft,\n headerRight,\n headerTitle,\n headerTitleAlign,\n headerTitleStyle,\n headerStyle,\n headerShadowVisible,\n headerTransparent,\n headerBackground,\n headerBackTitle,\n presentation,\n contentStyle,\n } = options;\n\n const nextPresentation = nextDescriptor?.options.presentation;\n\n return (\n <Screen\n key={route.key}\n focused={isFocused}\n route={route}\n navigation={navigation}\n headerShown={headerShown}\n headerTransparent={headerTransparent}\n header={\n header !== undefined ? (\n header({\n back: headerBack,\n options,\n route,\n navigation,\n })\n ) : (\n <Header\n title={getHeaderTitle(options, route.name)}\n headerTintColor={headerTintColor}\n headerLeft={\n typeof headerLeft === 'function'\n ? ({ tintColor }) =>\n headerLeft({\n tintColor,\n canGoBack,\n label: headerBackTitle,\n })\n : headerLeft === undefined && canGoBack\n ? ({ tintColor }) => (\n <HeaderBackButton\n tintColor={tintColor}\n backImage={\n headerBackImageSource !== undefined\n ? () => (\n <Image\n source={headerBackImageSource}\n style={[\n styles.backImage,\n { tintColor },\n ]}\n />\n )\n : undefined\n }\n onPress={navigation.goBack}\n canGoBack={canGoBack}\n />\n )\n : headerLeft\n }\n headerRight={\n typeof headerRight === 'function'\n ? ({ tintColor }) =>\n headerRight({ tintColor, canGoBack })\n : headerRight\n }\n headerTitle={\n typeof headerTitle === 'function'\n ? ({ children, tintColor }) =>\n headerTitle({ children, tintColor })\n : headerTitle\n }\n headerTitleAlign={headerTitleAlign}\n headerTitleStyle={headerTitleStyle}\n headerTransparent={headerTransparent}\n headerShadowVisible={headerShadowVisible}\n headerBackground={headerBackground}\n headerStyle={headerStyle}\n />\n )\n }\n style={[\n StyleSheet.absoluteFill,\n {\n display:\n isFocused ||\n (nextPresentation != null &&\n TRANSPARENT_PRESENTATIONS.includes(nextPresentation))\n ? 'flex'\n : 'none',\n },\n presentation != null &&\n TRANSPARENT_PRESENTATIONS.includes(presentation)\n ? { backgroundColor: 'transparent' }\n : null,\n ]}\n >\n <HeaderBackContext.Provider value={headerBack}>\n <View style={[styles.contentContainer, contentStyle]}>\n {render()}\n </View>\n </HeaderBackContext.Provider>\n </Screen>\n );\n })}\n </View>\n </SafeAreaProviderCompat>\n );\n}\n\nconst styles = StyleSheet.create({\n container: {\n flex: 1,\n },\n contentContainer: {\n flex: 1,\n },\n backImage: {\n height: 24,\n width: 24,\n margin: 3,\n resizeMode: 'contain',\n },\n});\n"],"mappings":"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"}
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":["NativeStackView.tsx"],"mappings":"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"}