@react-navigation/stack 6.3.7 → 6.3.9

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (186) hide show
  1. package/lib/commonjs/TransitionConfigs/CardStyleInterpolators.js +12 -22
  2. package/lib/commonjs/TransitionConfigs/CardStyleInterpolators.js.map +1 -1
  3. package/lib/commonjs/TransitionConfigs/HeaderStyleInterpolators.js +11 -16
  4. package/lib/commonjs/TransitionConfigs/HeaderStyleInterpolators.js.map +1 -1
  5. package/lib/commonjs/TransitionConfigs/TransitionPresets.js +10 -19
  6. package/lib/commonjs/TransitionConfigs/TransitionPresets.js.map +1 -1
  7. package/lib/commonjs/TransitionConfigs/TransitionSpecs.js +6 -8
  8. package/lib/commonjs/TransitionConfigs/TransitionSpecs.js.map +1 -1
  9. package/lib/commonjs/index.js +0 -18
  10. package/lib/commonjs/index.js.map +1 -1
  11. package/lib/commonjs/navigators/createStackNavigator.js +9 -17
  12. package/lib/commonjs/navigators/createStackNavigator.js.map +1 -1
  13. package/lib/commonjs/types.js.map +1 -1
  14. package/lib/commonjs/utils/CardAnimationContext.js +0 -5
  15. package/lib/commonjs/utils/CardAnimationContext.js.map +1 -1
  16. package/lib/commonjs/utils/GestureHandlerRefContext.js +0 -5
  17. package/lib/commonjs/utils/GestureHandlerRefContext.js.map +1 -1
  18. package/lib/commonjs/utils/ModalPresentationContext.js +0 -4
  19. package/lib/commonjs/utils/ModalPresentationContext.js.map +1 -1
  20. package/lib/commonjs/utils/conditional.js +1 -3
  21. package/lib/commonjs/utils/conditional.js.map +1 -1
  22. package/lib/commonjs/utils/debounce.js +0 -2
  23. package/lib/commonjs/utils/debounce.js.map +1 -1
  24. package/lib/commonjs/utils/getDistanceForDirection.js +0 -5
  25. package/lib/commonjs/utils/getDistanceForDirection.js.map +1 -1
  26. package/lib/commonjs/utils/getInvertedMultiplier.js +0 -5
  27. package/lib/commonjs/utils/getInvertedMultiplier.js.map +1 -1
  28. package/lib/commonjs/utils/memoize.js +0 -6
  29. package/lib/commonjs/utils/memoize.js.map +1 -1
  30. package/lib/commonjs/utils/useCardAnimation.js +0 -8
  31. package/lib/commonjs/utils/useCardAnimation.js.map +1 -1
  32. package/lib/commonjs/utils/useGestureHandlerRef.js +0 -8
  33. package/lib/commonjs/utils/useGestureHandlerRef.js.map +1 -1
  34. package/lib/commonjs/utils/useKeyboardManager.js +14 -20
  35. package/lib/commonjs/utils/useKeyboardManager.js.map +1 -1
  36. package/lib/commonjs/views/GestureHandler.android.js +0 -2
  37. package/lib/commonjs/views/GestureHandler.android.js.map +1 -1
  38. package/lib/commonjs/views/GestureHandler.ios.js +0 -2
  39. package/lib/commonjs/views/GestureHandler.ios.js.map +1 -1
  40. package/lib/commonjs/views/GestureHandler.js +0 -6
  41. package/lib/commonjs/views/GestureHandler.js.map +1 -1
  42. package/lib/commonjs/views/GestureHandlerNative.js +0 -8
  43. package/lib/commonjs/views/GestureHandlerNative.js.map +1 -1
  44. package/lib/commonjs/views/Header/Header.js +7 -18
  45. package/lib/commonjs/views/Header/Header.js.map +1 -1
  46. package/lib/commonjs/views/Header/HeaderContainer.js +10 -23
  47. package/lib/commonjs/views/Header/HeaderContainer.js.map +1 -1
  48. package/lib/commonjs/views/Header/HeaderSegment.js +6 -20
  49. package/lib/commonjs/views/Header/HeaderSegment.js.map +1 -1
  50. package/lib/commonjs/views/ModalStatusBarManager.js +1 -11
  51. package/lib/commonjs/views/ModalStatusBarManager.js.map +1 -1
  52. package/lib/commonjs/views/Screens.js +2 -16
  53. package/lib/commonjs/views/Screens.js.map +1 -1
  54. package/lib/commonjs/views/Stack/Card.js +17 -80
  55. package/lib/commonjs/views/Stack/Card.js.map +1 -1
  56. package/lib/commonjs/views/Stack/CardContainer.js +3 -30
  57. package/lib/commonjs/views/Stack/CardContainer.js.map +1 -1
  58. package/lib/commonjs/views/Stack/CardSheet.js +2 -11
  59. package/lib/commonjs/views/Stack/CardSheet.js.map +1 -1
  60. package/lib/commonjs/views/Stack/CardStack.js +23 -78
  61. package/lib/commonjs/views/Stack/CardStack.js.map +1 -1
  62. package/lib/commonjs/views/Stack/StackView.js +33 -65
  63. package/lib/commonjs/views/Stack/StackView.js.map +1 -1
  64. package/lib/module/TransitionConfigs/CardStyleInterpolators.js +12 -10
  65. package/lib/module/TransitionConfigs/CardStyleInterpolators.js.map +1 -1
  66. package/lib/module/TransitionConfigs/HeaderStyleInterpolators.js +11 -9
  67. package/lib/module/TransitionConfigs/HeaderStyleInterpolators.js.map +1 -1
  68. package/lib/module/TransitionConfigs/TransitionPresets.js +10 -10
  69. package/lib/module/TransitionConfigs/TransitionPresets.js.map +1 -1
  70. package/lib/module/TransitionConfigs/TransitionSpecs.js +6 -7
  71. package/lib/module/TransitionConfigs/TransitionSpecs.js.map +1 -1
  72. package/lib/module/index.js +5 -4
  73. package/lib/module/index.js.map +1 -1
  74. package/lib/module/navigators/createStackNavigator.js +9 -9
  75. package/lib/module/navigators/createStackNavigator.js.map +1 -1
  76. package/lib/module/types.js.map +1 -1
  77. package/lib/module/utils/CardAnimationContext.js.map +1 -1
  78. package/lib/module/utils/GestureHandlerRefContext.js.map +1 -1
  79. package/lib/module/utils/ModalPresentationContext.js.map +1 -1
  80. package/lib/module/utils/conditional.js +1 -1
  81. package/lib/module/utils/conditional.js.map +1 -1
  82. package/lib/module/utils/debounce.js +0 -1
  83. package/lib/module/utils/debounce.js.map +1 -1
  84. package/lib/module/utils/getDistanceForDirection.js +0 -2
  85. package/lib/module/utils/getDistanceForDirection.js.map +1 -1
  86. package/lib/module/utils/getInvertedMultiplier.js +0 -3
  87. package/lib/module/utils/getInvertedMultiplier.js.map +1 -1
  88. package/lib/module/utils/memoize.js +0 -5
  89. package/lib/module/utils/memoize.js.map +1 -1
  90. package/lib/module/utils/useCardAnimation.js +0 -2
  91. package/lib/module/utils/useCardAnimation.js.map +1 -1
  92. package/lib/module/utils/useGestureHandlerRef.js +0 -2
  93. package/lib/module/utils/useGestureHandlerRef.js.map +1 -1
  94. package/lib/module/utils/useKeyboardManager.js +14 -13
  95. package/lib/module/utils/useKeyboardManager.js.map +1 -1
  96. package/lib/module/views/GestureHandler.android.js.map +1 -1
  97. package/lib/module/views/GestureHandler.ios.js.map +1 -1
  98. package/lib/module/views/GestureHandler.js +0 -2
  99. package/lib/module/views/GestureHandler.js.map +1 -1
  100. package/lib/module/views/GestureHandlerNative.js +0 -1
  101. package/lib/module/views/GestureHandlerNative.js.map +1 -1
  102. package/lib/module/views/Header/Header.js +7 -6
  103. package/lib/module/views/Header/Header.js.map +1 -1
  104. package/lib/module/views/Header/HeaderContainer.js +10 -12
  105. package/lib/module/views/Header/HeaderContainer.js.map +1 -1
  106. package/lib/module/views/Header/HeaderSegment.js +6 -10
  107. package/lib/module/views/Header/HeaderSegment.js.map +1 -1
  108. package/lib/module/views/ModalStatusBarManager.js +1 -3
  109. package/lib/module/views/ModalStatusBarManager.js.map +1 -1
  110. package/lib/module/views/Screens.js +2 -8
  111. package/lib/module/views/Screens.js.map +1 -1
  112. package/lib/module/views/Stack/Card.js +17 -58
  113. package/lib/module/views/Stack/Card.js.map +1 -1
  114. package/lib/module/views/Stack/CardContainer.js +3 -17
  115. package/lib/module/views/Stack/CardContainer.js.map +1 -1
  116. package/lib/module/views/Stack/CardSheet.js +2 -4
  117. package/lib/module/views/Stack/CardSheet.js.map +1 -1
  118. package/lib/module/views/Stack/CardStack.js +23 -60
  119. package/lib/module/views/Stack/CardStack.js.map +1 -1
  120. package/lib/module/views/Stack/StackView.js +34 -51
  121. package/lib/module/views/Stack/StackView.js.map +1 -1
  122. package/lib/typescript/src/TransitionConfigs/CardStyleInterpolators.d.ts +1 -0
  123. package/lib/typescript/src/TransitionConfigs/CardStyleInterpolators.d.ts.map +1 -0
  124. package/lib/typescript/src/TransitionConfigs/HeaderStyleInterpolators.d.ts +1 -0
  125. package/lib/typescript/src/TransitionConfigs/HeaderStyleInterpolators.d.ts.map +1 -0
  126. package/lib/typescript/src/TransitionConfigs/TransitionPresets.d.ts +1 -0
  127. package/lib/typescript/src/TransitionConfigs/TransitionPresets.d.ts.map +1 -0
  128. package/lib/typescript/src/TransitionConfigs/TransitionSpecs.d.ts +1 -0
  129. package/lib/typescript/src/TransitionConfigs/TransitionSpecs.d.ts.map +1 -0
  130. package/lib/typescript/src/index.d.ts +1 -0
  131. package/lib/typescript/src/index.d.ts.map +1 -0
  132. package/lib/typescript/src/navigators/createStackNavigator.d.ts +1 -0
  133. package/lib/typescript/src/navigators/createStackNavigator.d.ts.map +1 -0
  134. package/lib/typescript/src/types.d.ts +1 -0
  135. package/lib/typescript/src/types.d.ts.map +1 -0
  136. package/lib/typescript/src/utils/CardAnimationContext.d.ts +1 -0
  137. package/lib/typescript/src/utils/CardAnimationContext.d.ts.map +1 -0
  138. package/lib/typescript/src/utils/GestureHandlerRefContext.d.ts +1 -0
  139. package/lib/typescript/src/utils/GestureHandlerRefContext.d.ts.map +1 -0
  140. package/lib/typescript/src/utils/ModalPresentationContext.d.ts +1 -0
  141. package/lib/typescript/src/utils/ModalPresentationContext.d.ts.map +1 -0
  142. package/lib/typescript/src/utils/conditional.d.ts +1 -0
  143. package/lib/typescript/src/utils/conditional.d.ts.map +1 -0
  144. package/lib/typescript/src/utils/debounce.d.ts +1 -0
  145. package/lib/typescript/src/utils/debounce.d.ts.map +1 -0
  146. package/lib/typescript/src/utils/getDistanceForDirection.d.ts +1 -0
  147. package/lib/typescript/src/utils/getDistanceForDirection.d.ts.map +1 -0
  148. package/lib/typescript/src/utils/getInvertedMultiplier.d.ts +1 -0
  149. package/lib/typescript/src/utils/getInvertedMultiplier.d.ts.map +1 -0
  150. package/lib/typescript/src/utils/memoize.d.ts +1 -0
  151. package/lib/typescript/src/utils/memoize.d.ts.map +1 -0
  152. package/lib/typescript/src/utils/useCardAnimation.d.ts +1 -0
  153. package/lib/typescript/src/utils/useCardAnimation.d.ts.map +1 -0
  154. package/lib/typescript/src/utils/useGestureHandlerRef.d.ts +1 -0
  155. package/lib/typescript/src/utils/useGestureHandlerRef.d.ts.map +1 -0
  156. package/lib/typescript/src/utils/useKeyboardManager.d.ts +1 -0
  157. package/lib/typescript/src/utils/useKeyboardManager.d.ts.map +1 -0
  158. package/lib/typescript/src/views/GestureHandler.android.d.ts +1 -0
  159. package/lib/typescript/src/views/GestureHandler.android.d.ts.map +1 -0
  160. package/lib/typescript/src/views/GestureHandler.d.ts +1 -0
  161. package/lib/typescript/src/views/GestureHandler.d.ts.map +1 -0
  162. package/lib/typescript/src/views/GestureHandler.ios.d.ts +1 -0
  163. package/lib/typescript/src/views/GestureHandler.ios.d.ts.map +1 -0
  164. package/lib/typescript/src/views/GestureHandlerNative.d.ts +1 -0
  165. package/lib/typescript/src/views/GestureHandlerNative.d.ts.map +1 -0
  166. package/lib/typescript/src/views/Header/Header.d.ts +1 -0
  167. package/lib/typescript/src/views/Header/Header.d.ts.map +1 -0
  168. package/lib/typescript/src/views/Header/HeaderContainer.d.ts +1 -0
  169. package/lib/typescript/src/views/Header/HeaderContainer.d.ts.map +1 -0
  170. package/lib/typescript/src/views/Header/HeaderSegment.d.ts +1 -0
  171. package/lib/typescript/src/views/Header/HeaderSegment.d.ts.map +1 -0
  172. package/lib/typescript/src/views/ModalStatusBarManager.d.ts +1 -0
  173. package/lib/typescript/src/views/ModalStatusBarManager.d.ts.map +1 -0
  174. package/lib/typescript/src/views/Screens.d.ts +1 -0
  175. package/lib/typescript/src/views/Screens.d.ts.map +1 -0
  176. package/lib/typescript/src/views/Stack/Card.d.ts +1 -0
  177. package/lib/typescript/src/views/Stack/Card.d.ts.map +1 -0
  178. package/lib/typescript/src/views/Stack/CardContainer.d.ts +1 -0
  179. package/lib/typescript/src/views/Stack/CardContainer.d.ts.map +1 -0
  180. package/lib/typescript/src/views/Stack/CardSheet.d.ts +1 -0
  181. package/lib/typescript/src/views/Stack/CardSheet.d.ts.map +1 -0
  182. package/lib/typescript/src/views/Stack/CardStack.d.ts +1 -0
  183. package/lib/typescript/src/views/Stack/CardStack.d.ts.map +1 -0
  184. package/lib/typescript/src/views/Stack/StackView.d.ts +1 -0
  185. package/lib/typescript/src/views/Stack/StackView.d.ts.map +1 -0
  186. package/package.json +5 -5
@@ -4,29 +4,17 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.default = void 0;
7
-
8
7
  var _elements = require("@react-navigation/elements");
9
-
10
8
  var _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 _ModalPresentationContext = _interopRequireDefault(require("../../utils/ModalPresentationContext"));
17
-
18
12
  var _useKeyboardManager = _interopRequireDefault(require("../../utils/useKeyboardManager"));
19
-
20
13
  var _Card = _interopRequireDefault(require("./Card"));
21
-
22
14
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
23
-
24
15
  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); }
25
-
26
16
  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; }
27
-
28
17
  const EPSILON = 0.1;
29
-
30
18
  function CardContainer(_ref) {
31
19
  let {
32
20
  interpolationIndex,
@@ -73,7 +61,6 @@ function CardContainer(_ref) {
73
61
  } = scene.descriptor;
74
62
  return navigation.isFocused() && options.keyboardHandlingEnabled !== false;
75
63
  }, [scene.descriptor]));
76
-
77
64
  const handleOpen = () => {
78
65
  const {
79
66
  route
@@ -85,7 +72,6 @@ function CardContainer(_ref) {
85
72
  route
86
73
  });
87
74
  };
88
-
89
75
  const handleClose = () => {
90
76
  const {
91
77
  route
@@ -97,7 +83,6 @@ function CardContainer(_ref) {
97
83
  route
98
84
  });
99
85
  };
100
-
101
86
  const handleGestureBegin = () => {
102
87
  const {
103
88
  route
@@ -107,7 +92,6 @@ function CardContainer(_ref) {
107
92
  route
108
93
  });
109
94
  };
110
-
111
95
  const handleGestureCanceled = () => {
112
96
  const {
113
97
  route
@@ -117,7 +101,6 @@ function CardContainer(_ref) {
117
101
  route
118
102
  });
119
103
  };
120
-
121
104
  const handleGestureEnd = () => {
122
105
  const {
123
106
  route
@@ -126,7 +109,6 @@ function CardContainer(_ref) {
126
109
  route
127
110
  });
128
111
  };
129
-
130
112
  const handleTransition = _ref2 => {
131
113
  let {
132
114
  closing,
@@ -135,7 +117,6 @@ function CardContainer(_ref) {
135
117
  const {
136
118
  route
137
119
  } = scene.descriptor;
138
-
139
120
  if (!gesture) {
140
121
  onPageChangeConfirm === null || onPageChangeConfirm === void 0 ? void 0 : onPageChangeConfirm(true);
141
122
  } else if (active && closing) {
@@ -143,12 +124,10 @@ function CardContainer(_ref) {
143
124
  } else {
144
125
  onPageChangeCancel === null || onPageChangeCancel === void 0 ? void 0 : onPageChangeCancel();
145
126
  }
146
-
147
127
  onTransitionStart === null || onTransitionStart === void 0 ? void 0 : onTransitionStart({
148
128
  route
149
129
  }, closing);
150
130
  };
151
-
152
131
  const insets = {
153
132
  top: safeAreaInsetTop,
154
133
  right: safeAreaInsetRight,
@@ -161,7 +140,6 @@ function CardContainer(_ref) {
161
140
  const [pointerEvents, setPointerEvents] = React.useState('box-none');
162
141
  React.useEffect(() => {
163
142
  var _scene$progress$next, _scene$progress$next$;
164
-
165
143
  const listener = (_scene$progress$next = scene.progress.next) === null || _scene$progress$next === void 0 ? void 0 : (_scene$progress$next$ = _scene$progress$next.addListener) === null || _scene$progress$next$ === void 0 ? void 0 : _scene$progress$next$.call(_scene$progress$next, _ref3 => {
166
144
  let {
167
145
  value
@@ -171,7 +149,6 @@ function CardContainer(_ref) {
171
149
  return () => {
172
150
  if (listener) {
173
151
  var _scene$progress$next2, _scene$progress$next3;
174
-
175
152
  (_scene$progress$next2 = scene.progress.next) === null || _scene$progress$next2 === void 0 ? void 0 : (_scene$progress$next3 = _scene$progress$next2.removeListener) === null || _scene$progress$next3 === void 0 ? void 0 : _scene$progress$next3.call(_scene$progress$next2, listener);
176
153
  }
177
154
  };
@@ -196,7 +173,6 @@ function CardContainer(_ref) {
196
173
  route: scene.descriptor.route
197
174
  });
198
175
  let backTitle;
199
-
200
176
  if (previousScene) {
201
177
  const {
202
178
  options,
@@ -204,7 +180,6 @@ function CardContainer(_ref) {
204
180
  } = previousScene.descriptor;
205
181
  backTitle = (0, _elements.getHeaderTitle)(options, route.name);
206
182
  }
207
-
208
183
  const headerBack = React.useMemo(() => backTitle !== undefined ? {
209
184
  title: backTitle
210
185
  } : undefined, [backTitle]);
@@ -246,7 +221,8 @@ function CardContainer(_ref) {
246
221
  // This is necessary to avoid unfocused larger pages increasing scroll area
247
222
  // The issue can be seen on the web when a smaller screen is pushed over a larger one
248
223
  overflow: active ? undefined : 'hidden',
249
- display: // Hide unfocused screens when animation isn't enabled
224
+ display:
225
+ // Hide unfocused screens when animation isn't enabled
250
226
  // This is also necessary for a11y on web
251
227
  animationEnabled === false && isNextScreenTransparent === false && detachCurrentScreen !== false && !focused ? 'none' : 'flex'
252
228
  }, _reactNative.StyleSheet.absoluteFill]
@@ -261,7 +237,7 @@ function CardContainer(_ref) {
261
237
  }, /*#__PURE__*/React.createElement(_elements.HeaderShownContext.Provider, {
262
238
  value: isParentHeaderShown || headerShown !== false
263
239
  }, /*#__PURE__*/React.createElement(_elements.HeaderHeightContext.Provider, {
264
- value: headerShown ? headerHeight : parentHeaderHeight !== null && parentHeaderHeight !== void 0 ? parentHeaderHeight : 0
240
+ value: headerShown ? headerHeight : parentHeaderHeight ?? 0
265
241
  }, renderScene({
266
242
  route: scene.descriptor.route
267
243
  }))))), headerMode !== 'float' ? renderHeader({
@@ -273,11 +249,8 @@ function CardContainer(_ref) {
273
249
  onContentHeightChange: onHeaderHeightChange
274
250
  }) : null)));
275
251
  }
276
-
277
252
  var _default = /*#__PURE__*/React.memo(CardContainer);
278
-
279
253
  exports.default = _default;
280
-
281
254
  const styles = _reactNative.StyleSheet.create({
282
255
  container: {
283
256
  flex: 1,
@@ -1 +1 @@
1
- {"version":3,"names":["EPSILON","CardContainer","interpolationIndex","index","active","closing","gesture","focused","modal","getPreviousScene","getFocusedRoute","headerDarkContent","hasAbsoluteFloatHeader","headerHeight","onHeaderHeightChange","isParentHeaderShown","isNextScreenTransparent","detachCurrentScreen","layout","onCloseRoute","onOpenRoute","onGestureCancel","onGestureEnd","onGestureStart","onTransitionEnd","onTransitionStart","renderHeader","renderScene","safeAreaInsetBottom","safeAreaInsetLeft","safeAreaInsetRight","safeAreaInsetTop","scene","parentHeaderHeight","React","useContext","HeaderHeightContext","onPageChangeStart","onPageChangeCancel","onPageChangeConfirm","useKeyboardManager","useCallback","options","navigation","descriptor","isFocused","keyboardHandlingEnabled","handleOpen","route","handleClose","handleGestureBegin","handleGestureCanceled","handleGestureEnd","handleTransition","insets","top","right","bottom","left","colors","useTheme","pointerEvents","setPointerEvents","useState","useEffect","listener","progress","next","addListener","value","removeListener","presentation","animationEnabled","cardOverlay","cardOverlayEnabled","cardShadowEnabled","cardStyle","cardStyleInterpolator","gestureDirection","gestureEnabled","gestureResponseDistance","gestureVelocityImpact","headerMode","headerShown","transitionSpec","previousScene","backTitle","getHeaderTitle","name","headerBack","useMemo","undefined","title","current","marginTop","backgroundColor","background","overflow","display","StyleSheet","absoluteFill","styles","container","mode","scenes","onContentHeightChange","memo","create","flex","flexDirection"],"sources":["CardContainer.tsx"],"sourcesContent":["import {\n getHeaderTitle,\n HeaderBackContext,\n HeaderHeightContext,\n HeaderShownContext,\n} from '@react-navigation/elements';\nimport { Route, useTheme } from '@react-navigation/native';\nimport * as React from 'react';\nimport { Animated, StyleSheet, View } from 'react-native';\n\nimport type { Layout, Scene } from '../../types';\nimport ModalPresentationContext from '../../utils/ModalPresentationContext';\nimport useKeyboardManager from '../../utils/useKeyboardManager';\nimport type { Props as HeaderContainerProps } from '../Header/HeaderContainer';\nimport Card from './Card';\n\ntype Props = {\n interpolationIndex: number;\n index: number;\n active: boolean;\n focused: boolean;\n closing: boolean;\n modal: boolean;\n layout: Layout;\n gesture: Animated.Value;\n scene: Scene;\n headerDarkContent: boolean | undefined;\n safeAreaInsetTop: number;\n safeAreaInsetRight: number;\n safeAreaInsetBottom: number;\n safeAreaInsetLeft: number;\n getPreviousScene: (props: { route: Route<string> }) => Scene | undefined;\n getFocusedRoute: () => Route<string>;\n renderHeader: (props: HeaderContainerProps) => React.ReactNode;\n renderScene: (props: { route: Route<string> }) => React.ReactNode;\n onOpenRoute: (props: { route: Route<string> }) => void;\n onCloseRoute: (props: { route: Route<string> }) => void;\n onTransitionStart: (\n props: { route: Route<string> },\n closing: boolean\n ) => void;\n onTransitionEnd: (props: { route: Route<string> }, closing: boolean) => void;\n onGestureStart: (props: { route: Route<string> }) => void;\n onGestureEnd: (props: { route: Route<string> }) => void;\n onGestureCancel: (props: { route: Route<string> }) => void;\n hasAbsoluteFloatHeader: boolean;\n headerHeight: number;\n onHeaderHeightChange: (props: {\n route: Route<string>;\n height: number;\n }) => void;\n isParentHeaderShown: boolean;\n isNextScreenTransparent: boolean;\n detachCurrentScreen: boolean;\n};\n\nconst EPSILON = 0.1;\n\nfunction CardContainer({\n interpolationIndex,\n index,\n active,\n closing,\n gesture,\n focused,\n modal,\n getPreviousScene,\n getFocusedRoute,\n headerDarkContent,\n hasAbsoluteFloatHeader,\n headerHeight,\n onHeaderHeightChange,\n isParentHeaderShown,\n isNextScreenTransparent,\n detachCurrentScreen,\n layout,\n onCloseRoute,\n onOpenRoute,\n onGestureCancel,\n onGestureEnd,\n onGestureStart,\n onTransitionEnd,\n onTransitionStart,\n renderHeader,\n renderScene,\n safeAreaInsetBottom,\n safeAreaInsetLeft,\n safeAreaInsetRight,\n safeAreaInsetTop,\n scene,\n}: Props) {\n const parentHeaderHeight = React.useContext(HeaderHeightContext);\n\n const { onPageChangeStart, onPageChangeCancel, onPageChangeConfirm } =\n useKeyboardManager(\n React.useCallback(() => {\n const { options, navigation } = scene.descriptor;\n\n return (\n navigation.isFocused() && options.keyboardHandlingEnabled !== false\n );\n }, [scene.descriptor])\n );\n\n const handleOpen = () => {\n const { route } = scene.descriptor;\n\n onTransitionEnd({ route }, false);\n onOpenRoute({ route });\n };\n\n const handleClose = () => {\n const { route } = scene.descriptor;\n\n onTransitionEnd({ route }, true);\n onCloseRoute({ route });\n };\n\n const handleGestureBegin = () => {\n const { route } = scene.descriptor;\n\n onPageChangeStart();\n onGestureStart({ route });\n };\n\n const handleGestureCanceled = () => {\n const { route } = scene.descriptor;\n\n onPageChangeCancel();\n onGestureCancel({ route });\n };\n\n const handleGestureEnd = () => {\n const { route } = scene.descriptor;\n\n onGestureEnd({ route });\n };\n\n const handleTransition = ({\n closing,\n gesture,\n }: {\n closing: boolean;\n gesture: boolean;\n }) => {\n const { route } = scene.descriptor;\n\n if (!gesture) {\n onPageChangeConfirm?.(true);\n } else if (active && closing) {\n onPageChangeConfirm?.(false);\n } else {\n onPageChangeCancel?.();\n }\n\n onTransitionStart?.({ route }, closing);\n };\n\n const insets = {\n top: safeAreaInsetTop,\n right: safeAreaInsetRight,\n bottom: safeAreaInsetBottom,\n left: safeAreaInsetLeft,\n };\n\n const { colors } = useTheme();\n\n const [pointerEvents, setPointerEvents] = React.useState<'box-none' | 'none'>(\n 'box-none'\n );\n\n React.useEffect(() => {\n const listener = scene.progress.next?.addListener?.(\n ({ value }: { value: number }) => {\n setPointerEvents(value <= EPSILON ? 'box-none' : 'none');\n }\n );\n\n return () => {\n if (listener) {\n scene.progress.next?.removeListener?.(listener);\n }\n };\n }, [pointerEvents, scene.progress.next]);\n\n const {\n presentation,\n animationEnabled,\n cardOverlay,\n cardOverlayEnabled,\n cardShadowEnabled,\n cardStyle,\n cardStyleInterpolator,\n gestureDirection,\n gestureEnabled,\n gestureResponseDistance,\n gestureVelocityImpact,\n headerMode,\n headerShown,\n transitionSpec,\n } = scene.descriptor.options;\n\n const previousScene = getPreviousScene({ route: scene.descriptor.route });\n\n let backTitle: string | undefined;\n\n if (previousScene) {\n const { options, route } = previousScene.descriptor;\n\n backTitle = getHeaderTitle(options, route.name);\n }\n\n const headerBack = React.useMemo(\n () => (backTitle !== undefined ? { title: backTitle } : undefined),\n [backTitle]\n );\n\n return (\n <Card\n interpolationIndex={interpolationIndex}\n gestureDirection={gestureDirection}\n layout={layout}\n insets={insets}\n gesture={gesture}\n current={scene.progress.current}\n next={scene.progress.next}\n closing={closing}\n onOpen={handleOpen}\n onClose={handleClose}\n overlay={cardOverlay}\n overlayEnabled={cardOverlayEnabled}\n shadowEnabled={cardShadowEnabled}\n onTransition={handleTransition}\n onGestureBegin={handleGestureBegin}\n onGestureCanceled={handleGestureCanceled}\n onGestureEnd={handleGestureEnd}\n gestureEnabled={index === 0 ? false : gestureEnabled}\n gestureResponseDistance={gestureResponseDistance}\n gestureVelocityImpact={gestureVelocityImpact}\n transitionSpec={transitionSpec}\n styleInterpolator={cardStyleInterpolator}\n accessibilityElementsHidden={!focused}\n importantForAccessibility={focused ? 'auto' : 'no-hide-descendants'}\n pointerEvents={active ? 'box-none' : pointerEvents}\n pageOverflowEnabled={headerMode !== 'float' && presentation !== 'modal'}\n headerDarkContent={headerDarkContent}\n containerStyle={\n hasAbsoluteFloatHeader && headerMode !== 'screen'\n ? { marginTop: headerHeight }\n : null\n }\n contentStyle={[\n {\n backgroundColor:\n presentation === 'transparentModal'\n ? 'transparent'\n : colors.background,\n },\n cardStyle,\n ]}\n style={[\n {\n // This is necessary to avoid unfocused larger pages increasing scroll area\n // The issue can be seen on the web when a smaller screen is pushed over a larger one\n overflow: active ? undefined : 'hidden',\n display:\n // Hide unfocused screens when animation isn't enabled\n // This is also necessary for a11y on web\n animationEnabled === false &&\n isNextScreenTransparent === false &&\n detachCurrentScreen !== false &&\n !focused\n ? 'none'\n : 'flex',\n },\n StyleSheet.absoluteFill,\n ]}\n >\n <View style={styles.container}>\n <ModalPresentationContext.Provider value={modal}>\n <View style={styles.scene}>\n <HeaderBackContext.Provider value={headerBack}>\n <HeaderShownContext.Provider\n value={isParentHeaderShown || headerShown !== false}\n >\n <HeaderHeightContext.Provider\n value={headerShown ? headerHeight : parentHeaderHeight ?? 0}\n >\n {renderScene({ route: scene.descriptor.route })}\n </HeaderHeightContext.Provider>\n </HeaderShownContext.Provider>\n </HeaderBackContext.Provider>\n </View>\n {headerMode !== 'float'\n ? renderHeader({\n mode: 'screen',\n layout,\n scenes: [previousScene, scene],\n getPreviousScene,\n getFocusedRoute,\n onContentHeightChange: onHeaderHeightChange,\n })\n : null}\n </ModalPresentationContext.Provider>\n </View>\n </Card>\n );\n}\n\nexport default React.memo(CardContainer);\n\nconst styles = StyleSheet.create({\n container: {\n flex: 1,\n flexDirection: 'column-reverse',\n },\n scene: {\n flex: 1,\n },\n});\n"],"mappings":"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"}
1
+ {"version":3,"names":["EPSILON","CardContainer","interpolationIndex","index","active","closing","gesture","focused","modal","getPreviousScene","getFocusedRoute","headerDarkContent","hasAbsoluteFloatHeader","headerHeight","onHeaderHeightChange","isParentHeaderShown","isNextScreenTransparent","detachCurrentScreen","layout","onCloseRoute","onOpenRoute","onGestureCancel","onGestureEnd","onGestureStart","onTransitionEnd","onTransitionStart","renderHeader","renderScene","safeAreaInsetBottom","safeAreaInsetLeft","safeAreaInsetRight","safeAreaInsetTop","scene","parentHeaderHeight","React","useContext","HeaderHeightContext","onPageChangeStart","onPageChangeCancel","onPageChangeConfirm","useKeyboardManager","useCallback","options","navigation","descriptor","isFocused","keyboardHandlingEnabled","handleOpen","route","handleClose","handleGestureBegin","handleGestureCanceled","handleGestureEnd","handleTransition","insets","top","right","bottom","left","colors","useTheme","pointerEvents","setPointerEvents","useState","useEffect","listener","progress","next","addListener","value","removeListener","presentation","animationEnabled","cardOverlay","cardOverlayEnabled","cardShadowEnabled","cardStyle","cardStyleInterpolator","gestureDirection","gestureEnabled","gestureResponseDistance","gestureVelocityImpact","headerMode","headerShown","transitionSpec","previousScene","backTitle","getHeaderTitle","name","headerBack","useMemo","undefined","title","current","marginTop","backgroundColor","background","overflow","display","StyleSheet","absoluteFill","styles","container","mode","scenes","onContentHeightChange","memo","create","flex","flexDirection"],"sourceRoot":"../../src","sources":["CardContainer.tsx"],"mappings":"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"}
@@ -4,17 +4,11 @@ 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
  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 _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); }
17
-
18
12
  // This component will render a page which overflows the screen
19
13
  // if the container fills the body by comparing the size
20
14
  // This lets the document.body handle scrolling of the content
@@ -26,9 +20,9 @@ var _default = /*#__PURE__*/React.forwardRef(function CardSheet(_ref, ref) {
26
20
  style,
27
21
  ...rest
28
22
  } = _ref;
29
- const [fill, setFill] = React.useState(false); // To avoid triggering a rerender in Card during animation we had to move
23
+ const [fill, setFill] = React.useState(false);
24
+ // To avoid triggering a rerender in Card during animation we had to move
30
25
  // the state to CardSheet. The `setPointerEvents` is then hoisted back to the Card.
31
-
32
26
  const [pointerEvents, setPointerEvents] = React.useState('auto');
33
27
  React.useImperativeHandle(ref, () => {
34
28
  return {
@@ -40,7 +34,6 @@ var _default = /*#__PURE__*/React.forwardRef(function CardSheet(_ref, ref) {
40
34
  // Only run when DOM is available
41
35
  return;
42
36
  }
43
-
44
37
  const width = document.body.clientWidth;
45
38
  const height = document.body.clientHeight;
46
39
  setFill(width === layout.width && height === layout.height);
@@ -50,9 +43,7 @@ var _default = /*#__PURE__*/React.forwardRef(function CardSheet(_ref, ref) {
50
43
  style: [enabled && fill ? styles.page : styles.card, style]
51
44
  }));
52
45
  });
53
-
54
46
  exports.default = _default;
55
-
56
47
  const styles = _reactNative.StyleSheet.create({
57
48
  page: {
58
49
  minHeight: '100%'
@@ -1 +1 @@
1
- {"version":3,"names":["React","forwardRef","CardSheet","ref","enabled","layout","style","rest","fill","setFill","useState","pointerEvents","setPointerEvents","useImperativeHandle","useEffect","document","body","width","clientWidth","height","clientHeight","styles","page","card","StyleSheet","create","minHeight","flex","overflow"],"sources":["CardSheet.tsx"],"sourcesContent":["import * as React from 'react';\nimport { StyleSheet, View, ViewProps } from 'react-native';\n\ntype Props = ViewProps & {\n enabled: boolean;\n layout: { width: number; height: number };\n children: React.ReactNode;\n};\n\nexport type CardSheetRef = {\n setPointerEvents: React.Dispatch<ViewProps['pointerEvents']>;\n};\n\n// This component will render a page which overflows the screen\n// if the container fills the body by comparing the size\n// This lets the document.body handle scrolling of the content\n// It's necessary for mobile browsers to be able to hide address bar on scroll\nexport default React.forwardRef<CardSheetRef, Props>(function CardSheet(\n { enabled, layout, style, ...rest },\n ref\n) {\n const [fill, setFill] = React.useState(false);\n // To avoid triggering a rerender in Card during animation we had to move\n // the state to CardSheet. The `setPointerEvents` is then hoisted back to the Card.\n const [pointerEvents, setPointerEvents] =\n React.useState<ViewProps['pointerEvents']>('auto');\n\n React.useImperativeHandle(ref, () => {\n return { setPointerEvents };\n });\n\n React.useEffect(() => {\n if (typeof document === 'undefined' || !document.body) {\n // Only run when DOM is available\n return;\n }\n\n const width = document.body.clientWidth;\n const height = document.body.clientHeight;\n\n setFill(width === layout.width && height === layout.height);\n }, [layout.height, layout.width]);\n\n return (\n <View\n {...rest}\n pointerEvents={pointerEvents}\n style={[enabled && fill ? styles.page : styles.card, style]}\n />\n );\n});\n\nconst styles = StyleSheet.create({\n page: {\n minHeight: '100%',\n },\n card: {\n flex: 1,\n overflow: 'hidden',\n },\n});\n"],"mappings":";;;;;;;AAAA;;AACA;;;;;;;;AAYA;AACA;AACA;AACA;4BACeA,KAAK,CAACC,UAAN,CAAsC,SAASC,SAAT,OAEnDC,GAFmD,EAGnD;EAAA,IAFA;IAAEC,OAAF;IAAWC,MAAX;IAAmBC,KAAnB;IAA0B,GAAGC;EAA7B,CAEA;EACA,MAAM,CAACC,IAAD,EAAOC,OAAP,IAAkBT,KAAK,CAACU,QAAN,CAAe,KAAf,CAAxB,CADA,CAEA;EACA;;EACA,MAAM,CAACC,aAAD,EAAgBC,gBAAhB,IACJZ,KAAK,CAACU,QAAN,CAA2C,MAA3C,CADF;EAGAV,KAAK,CAACa,mBAAN,CAA0BV,GAA1B,EAA+B,MAAM;IACnC,OAAO;MAAES;IAAF,CAAP;EACD,CAFD;EAIAZ,KAAK,CAACc,SAAN,CAAgB,MAAM;IACpB,IAAI,OAAOC,QAAP,KAAoB,WAApB,IAAmC,CAACA,QAAQ,CAACC,IAAjD,EAAuD;MACrD;MACA;IACD;;IAED,MAAMC,KAAK,GAAGF,QAAQ,CAACC,IAAT,CAAcE,WAA5B;IACA,MAAMC,MAAM,GAAGJ,QAAQ,CAACC,IAAT,CAAcI,YAA7B;IAEAX,OAAO,CAACQ,KAAK,KAAKZ,MAAM,CAACY,KAAjB,IAA0BE,MAAM,KAAKd,MAAM,CAACc,MAA7C,CAAP;EACD,CAVD,EAUG,CAACd,MAAM,CAACc,MAAR,EAAgBd,MAAM,CAACY,KAAvB,CAVH;EAYA,oBACE,oBAAC,iBAAD,eACMV,IADN;IAEE,aAAa,EAAEI,aAFjB;IAGE,KAAK,EAAE,CAACP,OAAO,IAAII,IAAX,GAAkBa,MAAM,CAACC,IAAzB,GAAgCD,MAAM,CAACE,IAAxC,EAA8CjB,KAA9C;EAHT,GADF;AAOD,CAjCc,C;;;;AAmCf,MAAMe,MAAM,GAAGG,uBAAA,CAAWC,MAAX,CAAkB;EAC/BH,IAAI,EAAE;IACJI,SAAS,EAAE;EADP,CADyB;EAI/BH,IAAI,EAAE;IACJI,IAAI,EAAE,CADF;IAEJC,QAAQ,EAAE;EAFN;AAJyB,CAAlB,CAAf"}
1
+ {"version":3,"names":["React","forwardRef","CardSheet","ref","enabled","layout","style","rest","fill","setFill","useState","pointerEvents","setPointerEvents","useImperativeHandle","useEffect","document","body","width","clientWidth","height","clientHeight","styles","page","card","StyleSheet","create","minHeight","flex","overflow"],"sourceRoot":"../../src","sources":["CardSheet.tsx"],"mappings":";;;;;;AAAA;AACA;AAA2D;AAAA;AAAA;AAY3D;AACA;AACA;AACA;AAAA,4BACeA,KAAK,CAACC,UAAU,CAAsB,SAASC,SAAS,OAErEC,GAAG,EACH;EAAA,IAFA;IAAEC,OAAO;IAAEC,MAAM;IAAEC,KAAK;IAAE,GAAGC;EAAK,CAAC;EAGnC,MAAM,CAACC,IAAI,EAAEC,OAAO,CAAC,GAAGT,KAAK,CAACU,QAAQ,CAAC,KAAK,CAAC;EAC7C;EACA;EACA,MAAM,CAACC,aAAa,EAAEC,gBAAgB,CAAC,GACrCZ,KAAK,CAACU,QAAQ,CAA6B,MAAM,CAAC;EAEpDV,KAAK,CAACa,mBAAmB,CAACV,GAAG,EAAE,MAAM;IACnC,OAAO;MAAES;IAAiB,CAAC;EAC7B,CAAC,CAAC;EAEFZ,KAAK,CAACc,SAAS,CAAC,MAAM;IACpB,IAAI,OAAOC,QAAQ,KAAK,WAAW,IAAI,CAACA,QAAQ,CAACC,IAAI,EAAE;MACrD;MACA;IACF;IAEA,MAAMC,KAAK,GAAGF,QAAQ,CAACC,IAAI,CAACE,WAAW;IACvC,MAAMC,MAAM,GAAGJ,QAAQ,CAACC,IAAI,CAACI,YAAY;IAEzCX,OAAO,CAACQ,KAAK,KAAKZ,MAAM,CAACY,KAAK,IAAIE,MAAM,KAAKd,MAAM,CAACc,MAAM,CAAC;EAC7D,CAAC,EAAE,CAACd,MAAM,CAACc,MAAM,EAAEd,MAAM,CAACY,KAAK,CAAC,CAAC;EAEjC,oBACE,oBAAC,iBAAI,eACCV,IAAI;IACR,aAAa,EAAEI,aAAc;IAC7B,KAAK,EAAE,CAACP,OAAO,IAAII,IAAI,GAAGa,MAAM,CAACC,IAAI,GAAGD,MAAM,CAACE,IAAI,EAAEjB,KAAK;EAAE,GAC5D;AAEN,CAAC,CAAC;AAAA;AAEF,MAAMe,MAAM,GAAGG,uBAAU,CAACC,MAAM,CAAC;EAC/BH,IAAI,EAAE;IACJI,SAAS,EAAE;EACb,CAAC;EACDH,IAAI,EAAE;IACJI,IAAI,EAAE,CAAC;IACPC,QAAQ,EAAE;EACZ;AACF,CAAC,CAAC"}