@amazon-devices/react-navigation__stack 7.0.1759135970 → 8.0.9000000000

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 (273) hide show
  1. package/SystemBundles/98ca5eeb45684e3e5615c766e1d3a956fee53d14cd6c2318098c23c210bd76d7.bundle +13464 -0
  2. package/SystemBundles/98ca5eeb45684e3e5615c766e1d3a956fee53d14cd6c2318098c23c210bd76d7.map +4638 -0
  3. package/SystemModules/amzn__react-navigation__stack-8.modules.txt +32 -0
  4. package/SystemModules/amzn__react-navigation__stack-8.private.modules.txt +92 -0
  5. package/SystemModules/keplerscript-system-bundle-config.json +4 -4
  6. package/kepler-compatibility.json +2 -2
  7. package/lib/module/TransitionConfigs/CardStyleInterpolators.js +57 -1
  8. package/lib/module/TransitionConfigs/CardStyleInterpolators.js.map +1 -1
  9. package/lib/module/TransitionConfigs/HeaderStyleInterpolators.js +30 -16
  10. package/lib/module/TransitionConfigs/HeaderStyleInterpolators.js.map +1 -1
  11. package/lib/module/TransitionConfigs/TransitionPresets.js +32 -4
  12. package/lib/module/TransitionConfigs/TransitionPresets.js.map +1 -1
  13. package/lib/module/TransitionConfigs/TransitionSpecs.js +32 -2
  14. package/lib/module/TransitionConfigs/TransitionSpecs.js.map +1 -1
  15. package/lib/module/index.js +13 -11
  16. package/lib/module/index.js.map +1 -1
  17. package/lib/module/navigators/createStackNavigator.js +46 -48
  18. package/lib/module/navigators/createStackNavigator.js.map +1 -1
  19. package/lib/module/package.json +1 -0
  20. package/lib/module/types.js +2 -0
  21. package/lib/module/types.js.map +1 -1
  22. package/lib/module/utils/CardAnimationContext.js +3 -1
  23. package/lib/module/utils/CardAnimationContext.js.map +1 -1
  24. package/lib/module/utils/GestureHandlerRefContext.js +3 -1
  25. package/lib/module/utils/GestureHandlerRefContext.js.map +1 -1
  26. package/lib/module/utils/ModalPresentationContext.js +3 -2
  27. package/lib/module/utils/ModalPresentationContext.js.map +1 -1
  28. package/lib/module/utils/conditional.js +3 -1
  29. package/lib/module/utils/conditional.js.map +1 -1
  30. package/lib/module/utils/findLastIndex.js +4 -2
  31. package/lib/module/utils/findLastIndex.js.map +1 -1
  32. package/lib/module/utils/gestureActivationCriteria.js +60 -0
  33. package/lib/module/utils/gestureActivationCriteria.js.map +1 -0
  34. package/lib/module/utils/getDistanceForDirection.js +5 -3
  35. package/lib/module/utils/getDistanceForDirection.js.map +1 -1
  36. package/lib/module/utils/getInvertedMultiplier.js +5 -4
  37. package/lib/module/utils/getInvertedMultiplier.js.map +1 -1
  38. package/lib/module/utils/getModalRoutesKeys.js +12 -0
  39. package/lib/module/utils/getModalRoutesKeys.js.map +1 -0
  40. package/lib/module/utils/getShadowStyle.js +24 -0
  41. package/lib/module/utils/getShadowStyle.js.map +1 -0
  42. package/lib/module/utils/{debounce.js → throttle.js} +5 -4
  43. package/lib/module/utils/throttle.js.map +1 -0
  44. package/lib/module/utils/useCardAnimation.js +4 -2
  45. package/lib/module/utils/useCardAnimation.js.map +1 -1
  46. package/lib/module/utils/useGestureHandlerRef.js +5 -3
  47. package/lib/module/utils/useGestureHandlerRef.js.map +1 -1
  48. package/lib/module/utils/useKeyboardManager.js +8 -6
  49. package/lib/module/utils/useKeyboardManager.js.map +1 -1
  50. package/lib/module/views/GestureHandler.android.js +3 -1
  51. package/lib/module/views/GestureHandler.android.js.map +1 -1
  52. package/lib/module/views/GestureHandler.ios.js +3 -1
  53. package/lib/module/views/GestureHandler.ios.js.map +1 -1
  54. package/lib/module/views/GestureHandler.js +6 -1
  55. package/lib/module/views/GestureHandler.js.map +1 -1
  56. package/lib/module/views/GestureHandler.kepler.js +4 -0
  57. package/lib/module/views/GestureHandler.kepler.js.map +1 -0
  58. package/lib/module/views/GestureHandlerNative.js +13 -9
  59. package/lib/module/views/GestureHandlerNative.js.map +1 -1
  60. package/lib/module/views/Header/Header.js +12 -8
  61. package/lib/module/views/Header/Header.js.map +1 -1
  62. package/lib/module/views/Header/HeaderContainer.js +103 -93
  63. package/lib/module/views/Header/HeaderContainer.js.map +1 -1
  64. package/lib/module/views/Header/HeaderSegment.js +43 -31
  65. package/lib/module/views/Header/HeaderSegment.js.map +1 -1
  66. package/lib/module/views/Screens.js +17 -9
  67. package/lib/module/views/Screens.js.map +1 -1
  68. package/lib/module/views/Stack/Card.js +313 -338
  69. package/lib/module/views/Stack/Card.js.map +1 -1
  70. package/lib/module/views/Stack/CardA11yWrapper.js +43 -0
  71. package/lib/module/views/Stack/CardA11yWrapper.js.map +1 -0
  72. package/lib/module/views/Stack/CardContainer.js +116 -90
  73. package/lib/module/views/Stack/CardContainer.js.map +1 -1
  74. package/lib/module/views/Stack/CardContent.js +74 -0
  75. package/lib/module/views/Stack/CardContent.js.map +1 -0
  76. package/lib/module/views/Stack/CardStack.js +241 -180
  77. package/lib/module/views/Stack/CardStack.js.map +1 -1
  78. package/lib/module/views/Stack/StackView.js +80 -64
  79. package/lib/module/views/Stack/StackView.js.map +1 -1
  80. package/lib/typescript/package.json +1 -0
  81. package/lib/typescript/src/TransitionConfigs/CardStyleInterpolators.d.ts +8 -0
  82. package/lib/typescript/src/TransitionConfigs/CardStyleInterpolators.d.ts.map +1 -1
  83. package/lib/typescript/src/TransitionConfigs/HeaderStyleInterpolators.d.ts +3 -3
  84. package/lib/typescript/src/TransitionConfigs/HeaderStyleInterpolators.d.ts.map +1 -1
  85. package/lib/typescript/src/TransitionConfigs/TransitionPresets.d.ts +8 -0
  86. package/lib/typescript/src/TransitionConfigs/TransitionPresets.d.ts.map +1 -1
  87. package/lib/typescript/src/TransitionConfigs/TransitionSpecs.d.ts +10 -0
  88. package/lib/typescript/src/TransitionConfigs/TransitionSpecs.d.ts.map +1 -1
  89. package/lib/typescript/src/index.d.ts +8 -8
  90. package/lib/typescript/src/index.d.ts.map +1 -1
  91. package/lib/typescript/src/navigators/createStackNavigator.d.ts +15 -7
  92. package/lib/typescript/src/navigators/createStackNavigator.d.ts.map +1 -1
  93. package/lib/typescript/src/types.d.ts +84 -24
  94. package/lib/typescript/src/types.d.ts.map +1 -1
  95. package/lib/typescript/src/utils/CardAnimationContext.d.ts +1 -2
  96. package/lib/typescript/src/utils/CardAnimationContext.d.ts.map +1 -1
  97. package/lib/typescript/src/utils/GestureHandlerRefContext.d.ts +1 -2
  98. package/lib/typescript/src/utils/GestureHandlerRefContext.d.ts.map +1 -1
  99. package/lib/typescript/src/utils/ModalPresentationContext.d.ts +1 -2
  100. package/lib/typescript/src/utils/ModalPresentationContext.d.ts.map +1 -1
  101. package/lib/typescript/src/utils/conditional.d.ts +1 -1
  102. package/lib/typescript/src/utils/conditional.d.ts.map +1 -1
  103. package/lib/typescript/src/utils/findLastIndex.d.ts +1 -1
  104. package/lib/typescript/src/utils/findLastIndex.d.ts.map +1 -1
  105. package/lib/typescript/src/utils/gestureActivationCriteria.d.ts +57 -0
  106. package/lib/typescript/src/utils/gestureActivationCriteria.d.ts.map +1 -0
  107. package/lib/typescript/src/utils/getDistanceForDirection.d.ts +1 -1
  108. package/lib/typescript/src/utils/getDistanceForDirection.d.ts.map +1 -1
  109. package/lib/typescript/src/utils/getInvertedMultiplier.d.ts +1 -1
  110. package/lib/typescript/src/utils/getInvertedMultiplier.d.ts.map +1 -1
  111. package/lib/typescript/src/utils/getModalRoutesKeys.d.ts +4 -0
  112. package/lib/typescript/src/utils/getModalRoutesKeys.d.ts.map +1 -0
  113. package/lib/typescript/src/utils/getShadowStyle.d.ts +27 -0
  114. package/lib/typescript/src/utils/getShadowStyle.d.ts.map +1 -0
  115. package/lib/typescript/src/utils/throttle.d.ts +2 -0
  116. package/lib/typescript/src/utils/throttle.d.ts.map +1 -0
  117. package/lib/typescript/src/utils/useCardAnimation.d.ts +1 -1
  118. package/lib/typescript/src/utils/useCardAnimation.d.ts.map +1 -1
  119. package/lib/typescript/src/utils/useGestureHandlerRef.d.ts +1 -1
  120. package/lib/typescript/src/utils/useGestureHandlerRef.d.ts.map +1 -1
  121. package/lib/typescript/src/utils/useKeyboardManager.d.ts +1 -1
  122. package/lib/typescript/src/utils/useKeyboardManager.d.ts.map +1 -1
  123. package/lib/typescript/src/views/GestureHandler.d.ts +3 -2
  124. package/lib/typescript/src/views/GestureHandler.d.ts.map +1 -1
  125. package/lib/typescript/src/views/GestureHandler.kepler.d.ts +2 -0
  126. package/lib/typescript/src/views/GestureHandler.kepler.d.ts.map +1 -0
  127. package/lib/typescript/src/views/GestureHandlerNative.d.ts +4 -5
  128. package/lib/typescript/src/views/GestureHandlerNative.d.ts.map +1 -1
  129. package/lib/typescript/src/views/Header/Header.d.ts +1 -2
  130. package/lib/typescript/src/views/Header/Header.d.ts.map +1 -1
  131. package/lib/typescript/src/views/Header/HeaderContainer.d.ts +4 -5
  132. package/lib/typescript/src/views/Header/HeaderContainer.d.ts.map +1 -1
  133. package/lib/typescript/src/views/Header/HeaderSegment.d.ts +2 -2
  134. package/lib/typescript/src/views/Header/HeaderSegment.d.ts.map +1 -1
  135. package/lib/typescript/src/views/Screens.d.ts +7 -5
  136. package/lib/typescript/src/views/Screens.d.ts.map +1 -1
  137. package/lib/typescript/src/views/Stack/Card.d.ts +14 -42
  138. package/lib/typescript/src/views/Stack/Card.d.ts.map +1 -1
  139. package/lib/typescript/src/views/Stack/CardA11yWrapper.d.ts +15 -0
  140. package/lib/typescript/src/views/Stack/CardA11yWrapper.d.ts.map +1 -0
  141. package/lib/typescript/src/views/Stack/CardContainer.d.ts +6 -8
  142. package/lib/typescript/src/views/Stack/CardContainer.d.ts.map +1 -1
  143. package/lib/typescript/src/views/Stack/CardContent.d.ts +13 -0
  144. package/lib/typescript/src/views/Stack/CardContent.d.ts.map +1 -0
  145. package/lib/typescript/src/views/Stack/CardStack.d.ts +8 -7
  146. package/lib/typescript/src/views/Stack/CardStack.d.ts.map +1 -1
  147. package/lib/typescript/src/views/Stack/StackView.d.ts +10 -81
  148. package/lib/typescript/src/views/Stack/StackView.d.ts.map +1 -1
  149. package/package.json +1 -1
  150. package/src/TransitionConfigs/CardStyleInterpolators.tsx +72 -6
  151. package/src/TransitionConfigs/HeaderStyleInterpolators.tsx +43 -25
  152. package/src/TransitionConfigs/TransitionPresets.tsx +35 -5
  153. package/src/TransitionConfigs/TransitionSpecs.tsx +30 -2
  154. package/src/index.tsx +12 -7
  155. package/src/navigators/createStackNavigator.tsx +47 -63
  156. package/src/types.tsx +116 -24
  157. package/src/utils/CardAnimationContext.tsx +3 -3
  158. package/src/utils/GestureHandlerRefContext.tsx +2 -2
  159. package/src/utils/ModalPresentationContext.tsx +1 -3
  160. package/src/utils/conditional.tsx +1 -1
  161. package/src/utils/findLastIndex.tsx +2 -5
  162. package/src/utils/gestureActivationCriteria.tsx +70 -0
  163. package/src/utils/getDistanceForDirection.tsx +5 -4
  164. package/src/utils/getInvertedMultiplier.tsx +5 -6
  165. package/src/utils/getModalRoutesKeys.ts +21 -0
  166. package/src/utils/getShadowStyle.tsx +37 -0
  167. package/src/utils/throttle.tsx +16 -0
  168. package/src/utils/useCardAnimation.tsx +2 -2
  169. package/src/utils/useGestureHandlerRef.tsx +3 -3
  170. package/src/utils/useKeyboardManager.tsx +5 -7
  171. package/src/views/GestureHandler.kepler.tsx +1 -0
  172. package/src/views/GestureHandler.tsx +2 -2
  173. package/src/views/GestureHandlerNative.tsx +5 -5
  174. package/src/views/Header/Header.tsx +8 -7
  175. package/src/views/Header/HeaderContainer.tsx +23 -18
  176. package/src/views/Header/HeaderSegment.tsx +41 -43
  177. package/src/views/Screens.tsx +4 -2
  178. package/src/views/Stack/Card.tsx +480 -462
  179. package/src/views/Stack/CardA11yWrapper.tsx +67 -0
  180. package/src/views/Stack/CardContainer.tsx +127 -108
  181. package/src/views/Stack/CardContent.tsx +92 -0
  182. package/src/views/Stack/CardStack.tsx +370 -243
  183. package/src/views/Stack/StackView.tsx +73 -62
  184. package/SystemBundles/b598f9dfffcd611d6cd7d6a3c5ab3d66234659a03b40b6579fddb628e61b8313.bundle +0 -28538
  185. package/SystemBundles/b598f9dfffcd611d6cd7d6a3c5ab3d66234659a03b40b6579fddb628e61b8313.map +0 -1
  186. package/SystemModules/amzn__react-navigation__stack-7.modules.txt +0 -95
  187. package/SystemModules/amzn__react-navigation__stack-7.private.modules.txt +0 -185
  188. package/THIRD_PARTY_NOTICES.txt +0 -24
  189. package/lib/commonjs/TransitionConfigs/CardStyleInterpolators.js +0 -353
  190. package/lib/commonjs/TransitionConfigs/CardStyleInterpolators.js.map +0 -1
  191. package/lib/commonjs/TransitionConfigs/HeaderStyleInterpolators.js +0 -259
  192. package/lib/commonjs/TransitionConfigs/HeaderStyleInterpolators.js.map +0 -1
  193. package/lib/commonjs/TransitionConfigs/TransitionPresets.js +0 -134
  194. package/lib/commonjs/TransitionConfigs/TransitionPresets.js.map +0 -1
  195. package/lib/commonjs/TransitionConfigs/TransitionSpecs.js +0 -100
  196. package/lib/commonjs/TransitionConfigs/TransitionSpecs.js.map +0 -1
  197. package/lib/commonjs/index.js +0 -69
  198. package/lib/commonjs/index.js.map +0 -1
  199. package/lib/commonjs/navigators/createStackNavigator.js +0 -82
  200. package/lib/commonjs/navigators/createStackNavigator.js.map +0 -1
  201. package/lib/commonjs/types.js +0 -6
  202. package/lib/commonjs/types.js.map +0 -1
  203. package/lib/commonjs/utils/CardAnimationContext.js +0 -11
  204. package/lib/commonjs/utils/CardAnimationContext.js.map +0 -1
  205. package/lib/commonjs/utils/GestureHandlerRefContext.js +0 -11
  206. package/lib/commonjs/utils/GestureHandlerRefContext.js.map +0 -1
  207. package/lib/commonjs/utils/ModalPresentationContext.js +0 -12
  208. package/lib/commonjs/utils/ModalPresentationContext.js.map +0 -1
  209. package/lib/commonjs/utils/conditional.js +0 -32
  210. package/lib/commonjs/utils/conditional.js.map +0 -1
  211. package/lib/commonjs/utils/debounce.js +0 -19
  212. package/lib/commonjs/utils/debounce.js.map +0 -1
  213. package/lib/commonjs/utils/findLastIndex.js +0 -15
  214. package/lib/commonjs/utils/findLastIndex.js.map +0 -1
  215. package/lib/commonjs/utils/getDistanceForDirection.js +0 -20
  216. package/lib/commonjs/utils/getDistanceForDirection.js.map +0 -1
  217. package/lib/commonjs/utils/getInvertedMultiplier.js +0 -20
  218. package/lib/commonjs/utils/getInvertedMultiplier.js.map +0 -1
  219. package/lib/commonjs/utils/memoize.js +0 -33
  220. package/lib/commonjs/utils/memoize.js.map +0 -1
  221. package/lib/commonjs/utils/useCardAnimation.js +0 -19
  222. package/lib/commonjs/utils/useCardAnimation.js.map +0 -1
  223. package/lib/commonjs/utils/useGestureHandlerRef.js +0 -19
  224. package/lib/commonjs/utils/useGestureHandlerRef.js.map +0 -1
  225. package/lib/commonjs/utils/useKeyboardManager.js +0 -96
  226. package/lib/commonjs/utils/useKeyboardManager.js.map +0 -1
  227. package/lib/commonjs/views/GestureHandler.android.js +0 -17
  228. package/lib/commonjs/views/GestureHandler.android.js.map +0 -1
  229. package/lib/commonjs/views/GestureHandler.ios.js +0 -17
  230. package/lib/commonjs/views/GestureHandler.ios.js.map +0 -1
  231. package/lib/commonjs/views/GestureHandler.js +0 -24
  232. package/lib/commonjs/views/GestureHandler.js.map +0 -1
  233. package/lib/commonjs/views/GestureHandlerNative.js +0 -34
  234. package/lib/commonjs/views/GestureHandlerNative.js.map +0 -1
  235. package/lib/commonjs/views/Header/Header.js +0 -61
  236. package/lib/commonjs/views/Header/Header.js.map +0 -1
  237. package/lib/commonjs/views/Header/HeaderContainer.js +0 -127
  238. package/lib/commonjs/views/Header/HeaderContainer.js.map +0 -1
  239. package/lib/commonjs/views/Header/HeaderSegment.js +0 -139
  240. package/lib/commonjs/views/Header/HeaderSegment.js.map +0 -1
  241. package/lib/commonjs/views/ModalStatusBarManager.js +0 -42
  242. package/lib/commonjs/views/ModalStatusBarManager.js.map +0 -1
  243. package/lib/commonjs/views/Screens.js +0 -44
  244. package/lib/commonjs/views/Screens.js.map +0 -1
  245. package/lib/commonjs/views/Stack/Card.js +0 -469
  246. package/lib/commonjs/views/Stack/Card.js.map +0 -1
  247. package/lib/commonjs/views/Stack/CardContainer.js +0 -259
  248. package/lib/commonjs/views/Stack/CardContainer.js.map +0 -1
  249. package/lib/commonjs/views/Stack/CardSheet.js +0 -54
  250. package/lib/commonjs/views/Stack/CardSheet.js.map +0 -1
  251. package/lib/commonjs/views/Stack/CardStack.js +0 -442
  252. package/lib/commonjs/views/Stack/CardStack.js.map +0 -1
  253. package/lib/commonjs/views/Stack/StackView.js +0 -333
  254. package/lib/commonjs/views/Stack/StackView.js.map +0 -1
  255. package/lib/module/utils/debounce.js.map +0 -1
  256. package/lib/module/utils/memoize.js +0 -27
  257. package/lib/module/utils/memoize.js.map +0 -1
  258. package/lib/module/views/ModalStatusBarManager.js +0 -34
  259. package/lib/module/views/ModalStatusBarManager.js.map +0 -1
  260. package/lib/module/views/Stack/CardSheet.js +0 -46
  261. package/lib/module/views/Stack/CardSheet.js.map +0 -1
  262. package/lib/typescript/src/utils/debounce.d.ts +0 -2
  263. package/lib/typescript/src/utils/debounce.d.ts.map +0 -1
  264. package/lib/typescript/src/utils/memoize.d.ts +0 -2
  265. package/lib/typescript/src/utils/memoize.d.ts.map +0 -1
  266. package/lib/typescript/src/views/ModalStatusBarManager.d.ts +0 -12
  267. package/lib/typescript/src/views/ModalStatusBarManager.d.ts.map +0 -1
  268. package/lib/typescript/src/views/Stack/CardSheet.d.ts +0 -15
  269. package/lib/typescript/src/views/Stack/CardSheet.d.ts.map +0 -1
  270. package/src/utils/debounce.tsx +0 -17
  271. package/src/utils/memoize.tsx +0 -33
  272. package/src/views/ModalStatusBarManager.tsx +0 -50
  273. package/src/views/Stack/CardSheet.tsx +0 -61
@@ -1,442 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.default = void 0;
7
- var _reactNavigation__elements = require("@amazon-devices/react-navigation__elements");
8
- var _color = _interopRequireDefault(require("color"));
9
- var React = _interopRequireWildcard(require("react"));
10
- var _reactNative = require("react-native");
11
- var _CardStyleInterpolators = require("../../TransitionConfigs/CardStyleInterpolators");
12
- var _TransitionPresets = require("../../TransitionConfigs/TransitionPresets");
13
- var _findLastIndex = _interopRequireDefault(require("../../utils/findLastIndex"));
14
- var _getDistanceForDirection = _interopRequireDefault(require("../../utils/getDistanceForDirection"));
15
- var _Screens = require("../Screens");
16
- var _Card = require("./Card");
17
- var _CardContainer = _interopRequireDefault(require("./CardContainer"));
18
- function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
19
- function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
20
- function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
21
- const STATE_INACTIVE = 0;
22
- const STATE_TRANSITIONING_OR_BELOW_TOP = 1;
23
- const FALLBACK_DESCRIPTOR = Object.freeze({
24
- options: {}
25
- });
26
- const getInterpolationIndex = (scenes, index) => {
27
- const {
28
- cardStyleInterpolator
29
- } = scenes[index].descriptor.options;
30
-
31
- // Start from current card and count backwards the number of cards with same interpolation
32
- let interpolationIndex = 0;
33
- for (let i = index - 1; i >= 0; i--) {
34
- var _scenes$i;
35
- const cardStyleInterpolatorCurrent = (_scenes$i = scenes[i]) === null || _scenes$i === void 0 ? void 0 : _scenes$i.descriptor.options.cardStyleInterpolator;
36
- if (cardStyleInterpolatorCurrent !== cardStyleInterpolator) {
37
- break;
38
- }
39
- interpolationIndex++;
40
- }
41
- return interpolationIndex;
42
- };
43
- const getIsModal = (scene, interpolationIndex, isParentModal) => {
44
- if (isParentModal) {
45
- return true;
46
- }
47
- const {
48
- cardStyleInterpolator
49
- } = scene.descriptor.options;
50
- const isModalPresentation = (0, _Card.getIsModalPresentation)(cardStyleInterpolator);
51
- const isModal = isModalPresentation && interpolationIndex !== 0;
52
- return isModal;
53
- };
54
- const getHeaderHeights = (scenes, insets, isParentHeaderShown, isParentModal, layout, previous) => {
55
- return scenes.reduce((acc, curr, index) => {
56
- const {
57
- headerStatusBarHeight = isParentHeaderShown ? 0 : insets.top,
58
- headerStyle
59
- } = curr.descriptor.options;
60
- const style = _reactNative.StyleSheet.flatten(headerStyle || {});
61
- const height = 'height' in style && typeof style.height === 'number' ? style.height : previous[curr.route.key];
62
- const interpolationIndex = getInterpolationIndex(scenes, index);
63
- const isModal = getIsModal(curr, interpolationIndex, isParentModal);
64
- acc[curr.route.key] = typeof height === 'number' ? height : (0, _reactNavigation__elements.getDefaultHeaderHeight)(layout, isModal, headerStatusBarHeight);
65
- return acc;
66
- }, {});
67
- };
68
- const getDistanceFromOptions = (layout, descriptor) => {
69
- const {
70
- presentation,
71
- gestureDirection = presentation === 'modal' ? _TransitionPresets.ModalTransition.gestureDirection : _TransitionPresets.DefaultTransition.gestureDirection
72
- } = (descriptor === null || descriptor === void 0 ? void 0 : descriptor.options) || {};
73
- return (0, _getDistanceForDirection.default)(layout, gestureDirection);
74
- };
75
- const getProgressFromGesture = (gesture, layout, descriptor) => {
76
- const distance = getDistanceFromOptions({
77
- // Make sure that we have a non-zero distance, otherwise there will be incorrect progress
78
- // This causes blank screen on web if it was previously inside container with display: none
79
- width: Math.max(1, layout.width),
80
- height: Math.max(1, layout.height)
81
- }, descriptor);
82
- if (distance > 0) {
83
- return gesture.interpolate({
84
- inputRange: [0, distance],
85
- outputRange: [1, 0]
86
- });
87
- }
88
- return gesture.interpolate({
89
- inputRange: [distance, 0],
90
- outputRange: [0, 1]
91
- });
92
- };
93
- class CardStack extends React.Component {
94
- static getDerivedStateFromProps(props, state) {
95
- if (props.routes === state.routes && props.descriptors === state.descriptors) {
96
- return null;
97
- }
98
- const gestures = props.routes.reduce((acc, curr) => {
99
- const descriptor = props.descriptors[curr.key];
100
- const {
101
- animationEnabled
102
- } = (descriptor === null || descriptor === void 0 ? void 0 : descriptor.options) || {};
103
- acc[curr.key] = state.gestures[curr.key] || new _reactNative.Animated.Value(props.openingRouteKeys.includes(curr.key) && animationEnabled !== false ? getDistanceFromOptions(state.layout, descriptor) : 0);
104
- return acc;
105
- }, {});
106
- const scenes = props.routes.map((route, index, self) => {
107
- const previousRoute = self[index - 1];
108
- const nextRoute = self[index + 1];
109
- const oldScene = state.scenes[index];
110
- const currentGesture = gestures[route.key];
111
- const previousGesture = previousRoute ? gestures[previousRoute.key] : undefined;
112
- const nextGesture = nextRoute ? gestures[nextRoute.key] : undefined;
113
- const descriptor = props.descriptors[route.key] || state.descriptors[route.key] || (oldScene ? oldScene.descriptor : FALLBACK_DESCRIPTOR);
114
- const nextDescriptor = props.descriptors[nextRoute === null || nextRoute === void 0 ? void 0 : nextRoute.key] || state.descriptors[nextRoute === null || nextRoute === void 0 ? void 0 : nextRoute.key];
115
- const previousDescriptor = props.descriptors[previousRoute === null || previousRoute === void 0 ? void 0 : previousRoute.key] || state.descriptors[previousRoute === null || previousRoute === void 0 ? void 0 : previousRoute.key];
116
-
117
- // When a screen is not the last, it should use next screen's transition config
118
- // Many transitions also animate the previous screen, so using 2 different transitions doesn't look right
119
- // For example combining a slide and a modal transition would look wrong otherwise
120
- // With this approach, combining different transition styles in the same navigator mostly looks right
121
- // This will still be broken when 2 transitions have different idle state (e.g. modal presentation),
122
- // but majority of the transitions look alright
123
- const optionsForTransitionConfig = index !== self.length - 1 && nextDescriptor && nextDescriptor.options.presentation !== 'transparentModal' ? nextDescriptor.options : descriptor.options;
124
- let defaultTransitionPreset = optionsForTransitionConfig.presentation === 'modal' ? _TransitionPresets.ModalTransition : optionsForTransitionConfig.presentation === 'transparentModal' ? _TransitionPresets.ModalFadeTransition : _TransitionPresets.DefaultTransition;
125
- const {
126
- animationEnabled = _reactNative.Platform.OS !== 'web' && _reactNative.Platform.OS !== 'windows' && _reactNative.Platform.OS !== 'macos',
127
- gestureEnabled = _reactNative.Platform.OS === 'ios' && animationEnabled,
128
- gestureDirection = defaultTransitionPreset.gestureDirection,
129
- transitionSpec = defaultTransitionPreset.transitionSpec,
130
- cardStyleInterpolator = animationEnabled === false ? _CardStyleInterpolators.forNoAnimation : defaultTransitionPreset.cardStyleInterpolator,
131
- headerStyleInterpolator = defaultTransitionPreset.headerStyleInterpolator,
132
- cardOverlayEnabled = _reactNative.Platform.OS !== 'ios' && optionsForTransitionConfig.presentation !== 'transparentModal' || (0, _Card.getIsModalPresentation)(cardStyleInterpolator)
133
- } = optionsForTransitionConfig;
134
- const headerMode = descriptor.options.headerMode ?? (!(optionsForTransitionConfig.presentation === 'modal' || optionsForTransitionConfig.presentation === 'transparentModal' || (nextDescriptor === null || nextDescriptor === void 0 ? void 0 : nextDescriptor.options.presentation) === 'modal' || (nextDescriptor === null || nextDescriptor === void 0 ? void 0 : nextDescriptor.options.presentation) === 'transparentModal' || (0, _Card.getIsModalPresentation)(cardStyleInterpolator)) && _reactNative.Platform.OS === 'ios' && descriptor.options.header === undefined ? 'float' : 'screen');
135
- const scene = {
136
- route,
137
- descriptor: {
138
- ...descriptor,
139
- options: {
140
- ...descriptor.options,
141
- animationEnabled,
142
- cardOverlayEnabled,
143
- cardStyleInterpolator,
144
- gestureDirection,
145
- gestureEnabled,
146
- headerStyleInterpolator,
147
- transitionSpec,
148
- headerMode
149
- }
150
- },
151
- progress: {
152
- current: getProgressFromGesture(currentGesture, state.layout, descriptor),
153
- next: nextGesture && (nextDescriptor === null || nextDescriptor === void 0 ? void 0 : nextDescriptor.options.presentation) !== 'transparentModal' ? getProgressFromGesture(nextGesture, state.layout, nextDescriptor) : undefined,
154
- previous: previousGesture ? getProgressFromGesture(previousGesture, state.layout, previousDescriptor) : undefined
155
- },
156
- __memo: [state.layout, descriptor, nextDescriptor, previousDescriptor, currentGesture, nextGesture, previousGesture]
157
- };
158
- if (oldScene && scene.__memo.every((it, i) => {
159
- // @ts-expect-error: we haven't added __memo to the annotation to prevent usage elsewhere
160
- return oldScene.__memo[i] === it;
161
- })) {
162
- return oldScene;
163
- }
164
- return scene;
165
- });
166
- return {
167
- routes: props.routes,
168
- scenes,
169
- gestures,
170
- descriptors: props.descriptors,
171
- headerHeights: getHeaderHeights(scenes, props.insets, props.isParentHeaderShown, props.isParentModal, state.layout, state.headerHeights)
172
- };
173
- }
174
- constructor(props) {
175
- super(props);
176
- this.state = {
177
- routes: [],
178
- scenes: [],
179
- gestures: {},
180
- layout: _reactNavigation__elements.SafeAreaProviderCompat.initialMetrics.frame,
181
- descriptors: this.props.descriptors,
182
- // Used when card's header is null and mode is float to make transition
183
- // between screens with headers and those without headers smooth.
184
- // This is not a great heuristic here. We don't know synchronously
185
- // on mount what the header height is so we have just used the most
186
- // common cases here.
187
- headerHeights: {}
188
- };
189
- }
190
- handleLayout = e => {
191
- const {
192
- height,
193
- width
194
- } = e.nativeEvent.layout;
195
- const layout = {
196
- width,
197
- height
198
- };
199
- this.setState((state, props) => {
200
- if (height === state.layout.height && width === state.layout.width) {
201
- return null;
202
- }
203
- return {
204
- layout,
205
- headerHeights: getHeaderHeights(state.scenes, props.insets, props.isParentHeaderShown, props.isParentModal, layout, state.headerHeights)
206
- };
207
- });
208
- };
209
- handleHeaderLayout = ({
210
- route,
211
- height
212
- }) => {
213
- this.setState(({
214
- headerHeights
215
- }) => {
216
- const previousHeight = headerHeights[route.key];
217
- if (previousHeight === height) {
218
- return null;
219
- }
220
- return {
221
- headerHeights: {
222
- ...headerHeights,
223
- [route.key]: height
224
- }
225
- };
226
- });
227
- };
228
- getFocusedRoute = () => {
229
- const {
230
- state
231
- } = this.props;
232
- return state.routes[state.index];
233
- };
234
- getPreviousScene = ({
235
- route
236
- }) => {
237
- const {
238
- getPreviousRoute
239
- } = this.props;
240
- const {
241
- scenes
242
- } = this.state;
243
- const previousRoute = getPreviousRoute({
244
- route
245
- });
246
- if (previousRoute) {
247
- const previousScene = scenes.find(scene => scene.descriptor.route.key === previousRoute.key);
248
- return previousScene;
249
- }
250
- return undefined;
251
- };
252
- render() {
253
- const {
254
- insets,
255
- state,
256
- routes,
257
- closingRouteKeys,
258
- onOpenRoute,
259
- onCloseRoute,
260
- renderHeader,
261
- renderScene,
262
- isParentHeaderShown,
263
- isParentModal,
264
- onTransitionStart,
265
- onTransitionEnd,
266
- onGestureStart,
267
- onGestureEnd,
268
- onGestureCancel,
269
- detachInactiveScreens = _reactNative.Platform.OS === 'web' || _reactNative.Platform.OS === 'android' || _reactNative.Platform.OS === 'ios' ||
270
- //amznmod_react add kepler platform
271
- //@ts-ignore
272
- _reactNative.Platform.OS === 'kepler'
273
- } = this.props;
274
- const {
275
- scenes,
276
- layout,
277
- gestures,
278
- headerHeights
279
- } = this.state;
280
- const focusedRoute = state.routes[state.index];
281
- const focusedHeaderHeight = headerHeights[focusedRoute.key];
282
- const isFloatHeaderAbsolute = this.state.scenes.slice(-2).some(scene => {
283
- const options = scene.descriptor.options ?? {};
284
- const {
285
- headerMode,
286
- headerTransparent,
287
- headerShown = true
288
- } = options;
289
- if (headerTransparent || headerShown === false || headerMode === 'screen') {
290
- return true;
291
- }
292
- return false;
293
- });
294
- let activeScreensLimit = 1;
295
- for (let i = scenes.length - 1; i >= 0; i--) {
296
- const {
297
- options
298
- } = scenes[i].descriptor;
299
- const {
300
- // By default, we don't want to detach the previous screen of the active one for modals
301
- detachPreviousScreen = options.presentation === 'transparentModal' ? false : (0, _Card.getIsModalPresentation)(options.cardStyleInterpolator) ? i !== (0, _findLastIndex.default)(scenes, scene => {
302
- const {
303
- cardStyleInterpolator
304
- } = scene.descriptor.options;
305
- return cardStyleInterpolator === _CardStyleInterpolators.forModalPresentationIOS || (cardStyleInterpolator === null || cardStyleInterpolator === void 0 ? void 0 : cardStyleInterpolator.name) === 'forModalPresentationIOS';
306
- }) : true
307
- } = options;
308
- if (detachPreviousScreen === false) {
309
- activeScreensLimit++;
310
- } else {
311
- // Check at least last 2 screens before stopping
312
- // This will make sure that screen isn't detached when another screen is animating on top of the transparent one
313
- // For example, (Opaque -> Transparent -> Opaque)
314
- if (i <= scenes.length - 2) {
315
- break;
316
- }
317
- }
318
- }
319
- const floatingHeader = /*#__PURE__*/React.createElement(React.Fragment, {
320
- key: "header"
321
- }, renderHeader({
322
- mode: 'float',
323
- layout,
324
- scenes,
325
- getPreviousScene: this.getPreviousScene,
326
- getFocusedRoute: this.getFocusedRoute,
327
- onContentHeightChange: this.handleHeaderLayout,
328
- style: [styles.floating, isFloatHeaderAbsolute && [
329
- // Without this, the header buttons won't be touchable on Android when headerTransparent: true
330
- {
331
- height: focusedHeaderHeight
332
- }, styles.absolute]]
333
- }));
334
- return /*#__PURE__*/React.createElement(_reactNavigation__elements.Background, null, isFloatHeaderAbsolute ? null : floatingHeader, /*#__PURE__*/React.createElement(_Screens.MaybeScreenContainer, {
335
- enabled: detachInactiveScreens,
336
- style: styles.container,
337
- onLayout: this.handleLayout
338
- }, routes.map((route, index, self) => {
339
- var _scenes, _scenes2;
340
- const focused = focusedRoute.key === route.key;
341
- const gesture = gestures[route.key];
342
- const scene = scenes[index];
343
-
344
- // For the screens that shouldn't be active, the value is 0
345
- // For those that should be active, but are not the top screen, the value is 1
346
- // For those on top of the stack and with interaction enabled, the value is 2
347
- // For the old implementation, it stays the same it was
348
- let isScreenActive = 1;
349
- if (index < self.length - activeScreensLimit - 1) {
350
- // screen should be inactive because it is too deep in the stack
351
- isScreenActive = STATE_INACTIVE;
352
- } else {
353
- isScreenActive = STATE_TRANSITIONING_OR_BELOW_TOP;
354
- }
355
- const {
356
- headerShown = true,
357
- headerTransparent,
358
- headerStyle,
359
- headerTintColor,
360
- freezeOnBlur
361
- } = scene.descriptor.options;
362
- const safeAreaInsetTop = insets.top;
363
- const safeAreaInsetRight = insets.right;
364
- const safeAreaInsetBottom = insets.bottom;
365
- const safeAreaInsetLeft = insets.left;
366
- const headerHeight = headerShown !== false ? headerHeights[route.key] : 0;
367
- let headerDarkContent;
368
- if (headerShown) {
369
- if (typeof headerTintColor === 'string') {
370
- headerDarkContent = (0, _color.default)(headerTintColor).isDark();
371
- } else {
372
- const flattenedHeaderStyle = _reactNative.StyleSheet.flatten(headerStyle);
373
- if (flattenedHeaderStyle && 'backgroundColor' in flattenedHeaderStyle && typeof flattenedHeaderStyle.backgroundColor === 'string') {
374
- headerDarkContent = !(0, _color.default)(flattenedHeaderStyle.backgroundColor).isDark();
375
- }
376
- }
377
- }
378
-
379
- // Start from current card and count backwards the number of cards with same interpolation
380
- const interpolationIndex = getInterpolationIndex(scenes, index);
381
- const isModal = getIsModal(scene, interpolationIndex, isParentModal);
382
- const isNextScreenTransparent = ((_scenes = scenes[index + 1]) === null || _scenes === void 0 ? void 0 : _scenes.descriptor.options.presentation) === 'transparentModal';
383
- const detachCurrentScreen = ((_scenes2 = scenes[index + 1]) === null || _scenes2 === void 0 ? void 0 : _scenes2.descriptor.options.detachPreviousScreen) !== false;
384
- return /*#__PURE__*/React.createElement(_Screens.MaybeScreen, {
385
- key: route.key,
386
- style: _reactNative.StyleSheet.absoluteFill,
387
- enabled: detachInactiveScreens,
388
- active: isScreenActive,
389
- freezeOnBlur: freezeOnBlur,
390
- pointerEvents: "box-none"
391
- }, /*#__PURE__*/React.createElement(_CardContainer.default, {
392
- index: index,
393
- interpolationIndex: interpolationIndex,
394
- modal: isModal,
395
- active: index === self.length - 1,
396
- focused: focused,
397
- closing: closingRouteKeys.includes(route.key),
398
- layout: layout,
399
- gesture: gesture,
400
- scene: scene,
401
- safeAreaInsetTop: safeAreaInsetTop,
402
- safeAreaInsetRight: safeAreaInsetRight,
403
- safeAreaInsetBottom: safeAreaInsetBottom,
404
- safeAreaInsetLeft: safeAreaInsetLeft,
405
- onGestureStart: onGestureStart,
406
- onGestureCancel: onGestureCancel,
407
- onGestureEnd: onGestureEnd,
408
- headerHeight: headerHeight,
409
- isParentHeaderShown: isParentHeaderShown,
410
- onHeaderHeightChange: this.handleHeaderLayout,
411
- getPreviousScene: this.getPreviousScene,
412
- getFocusedRoute: this.getFocusedRoute,
413
- headerDarkContent: headerDarkContent,
414
- hasAbsoluteFloatHeader: isFloatHeaderAbsolute && !headerTransparent,
415
- renderHeader: renderHeader,
416
- renderScene: renderScene,
417
- onOpenRoute: onOpenRoute,
418
- onCloseRoute: onCloseRoute,
419
- onTransitionStart: onTransitionStart,
420
- onTransitionEnd: onTransitionEnd,
421
- isNextScreenTransparent: isNextScreenTransparent,
422
- detachCurrentScreen: detachCurrentScreen
423
- }));
424
- })), isFloatHeaderAbsolute ? floatingHeader : null);
425
- }
426
- }
427
- exports.default = CardStack;
428
- const styles = _reactNative.StyleSheet.create({
429
- container: {
430
- flex: 1
431
- },
432
- absolute: {
433
- position: 'absolute',
434
- top: 0,
435
- left: 0,
436
- right: 0
437
- },
438
- floating: {
439
- zIndex: 1
440
- }
441
- });
442
- //# sourceMappingURL=CardStack.js.map
@@ -1 +0,0 @@
1
- {"version":3,"names":["_reactNavigation__elements","require","_color","_interopRequireDefault","React","_interopRequireWildcard","_reactNative","_CardStyleInterpolators","_TransitionPresets","_findLastIndex","_getDistanceForDirection","_Screens","_Card","_CardContainer","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","STATE_INACTIVE","STATE_TRANSITIONING_OR_BELOW_TOP","FALLBACK_DESCRIPTOR","freeze","options","getInterpolationIndex","scenes","index","cardStyleInterpolator","descriptor","interpolationIndex","_scenes$i","cardStyleInterpolatorCurrent","getIsModal","scene","isParentModal","isModalPresentation","getIsModalPresentation","isModal","getHeaderHeights","insets","isParentHeaderShown","layout","previous","reduce","acc","curr","headerStatusBarHeight","top","headerStyle","style","StyleSheet","flatten","height","route","key","getDefaultHeaderHeight","getDistanceFromOptions","presentation","gestureDirection","ModalTransition","DefaultTransition","getDistanceForDirection","getProgressFromGesture","gesture","distance","width","Math","max","interpolate","inputRange","outputRange","CardStack","Component","getDerivedStateFromProps","props","state","routes","descriptors","gestures","animationEnabled","Animated","Value","openingRouteKeys","includes","map","self","previousRoute","nextRoute","oldScene","currentGesture","previousGesture","undefined","nextGesture","nextDescriptor","previousDescriptor","optionsForTransitionConfig","length","defaultTransitionPreset","ModalFadeTransition","Platform","OS","gestureEnabled","transitionSpec","forNoAnimationCard","headerStyleInterpolator","cardOverlayEnabled","headerMode","header","progress","current","next","__memo","every","it","headerHeights","constructor","SafeAreaProviderCompat","initialMetrics","frame","handleLayout","nativeEvent","setState","handleHeaderLayout","previousHeight","getFocusedRoute","getPreviousScene","getPreviousRoute","previousScene","find","render","closingRouteKeys","onOpenRoute","onCloseRoute","renderHeader","renderScene","onTransitionStart","onTransitionEnd","onGestureStart","onGestureEnd","onGestureCancel","detachInactiveScreens","focusedRoute","focusedHeaderHeight","isFloatHeaderAbsolute","slice","some","headerTransparent","headerShown","activeScreensLimit","detachPreviousScreen","findLastIndex","forModalPresentationIOS","name","floatingHeader","createElement","Fragment","mode","onContentHeightChange","styles","floating","absolute","Background","MaybeScreenContainer","enabled","container","onLayout","_scenes","_scenes2","focused","isScreenActive","headerTintColor","freezeOnBlur","safeAreaInsetTop","safeAreaInsetRight","right","safeAreaInsetBottom","bottom","safeAreaInsetLeft","left","headerHeight","headerDarkContent","Color","isDark","flattenedHeaderStyle","backgroundColor","isNextScreenTransparent","detachCurrentScreen","MaybeScreen","absoluteFill","active","pointerEvents","modal","closing","onHeaderHeightChange","hasAbsoluteFloatHeader","exports","create","flex","position","zIndex"],"sourceRoot":"../../../../src","sources":["views/Stack/CardStack.tsx"],"mappings":"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","ignoreList":[]}