@react-navigation/stack 6.3.8 → 6.3.10

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
@@ -1 +1 @@
1
- {"version":3,"names":["useKeyboardManager","isEnabled","previouslyFocusedTextInputRef","React","useRef","undefined","startTimestampRef","keyboardTimeoutRef","clearKeyboardTimeout","useCallback","current","clearTimeout","onPageChangeStart","input","TextInput","State","currentlyFocusedInput","blur","Date","now","onPageChangeConfirm","force","Keyboard","dismiss","onPageChangeCancel","setTimeout","focus","useEffect"],"sources":["useKeyboardManager.tsx"],"sourcesContent":["import * as React from 'react';\nimport { HostComponent, Keyboard, TextInput } from 'react-native';\n\ntype InputRef = React.ElementRef<HostComponent<unknown>> | undefined;\n\nexport default function useKeyboardManager(isEnabled: () => boolean) {\n // Numeric id of the previously focused text input\n // When a gesture didn't change the tab, we can restore the focused input with this\n const previouslyFocusedTextInputRef = React.useRef<InputRef>(undefined);\n const startTimestampRef = React.useRef<number>(0);\n const keyboardTimeoutRef = React.useRef<any>();\n\n const clearKeyboardTimeout = React.useCallback(() => {\n if (keyboardTimeoutRef.current !== undefined) {\n clearTimeout(keyboardTimeoutRef.current);\n keyboardTimeoutRef.current = undefined;\n }\n }, []);\n\n const onPageChangeStart = React.useCallback(() => {\n if (!isEnabled()) {\n return;\n }\n\n clearKeyboardTimeout();\n\n const input: InputRef = TextInput.State.currentlyFocusedInput();\n\n // When a page change begins, blur the currently focused input\n input?.blur();\n\n // Store the id of this input so we can refocus it if change was cancelled\n previouslyFocusedTextInputRef.current = input;\n\n // Store timestamp for touch start\n startTimestampRef.current = Date.now();\n }, [clearKeyboardTimeout, isEnabled]);\n\n const onPageChangeConfirm = React.useCallback(\n (force: boolean) => {\n if (!isEnabled()) {\n return;\n }\n\n clearKeyboardTimeout();\n\n if (force) {\n // Always dismiss input, even if we don't have a ref to it\n // We might not have the ref if onPageChangeStart was never called\n // This can happen if page change was not from a gesture\n Keyboard.dismiss();\n } else {\n const input = previouslyFocusedTextInputRef.current;\n\n // Dismiss the keyboard only if an input was a focused before\n // This makes sure we don't dismiss input on going back and focusing an input\n input?.blur();\n }\n\n // Cleanup the ID on successful page change\n previouslyFocusedTextInputRef.current = undefined;\n },\n [clearKeyboardTimeout, isEnabled]\n );\n\n const onPageChangeCancel = React.useCallback(() => {\n if (!isEnabled()) {\n return;\n }\n\n clearKeyboardTimeout();\n\n // The page didn't change, we should restore the focus of text input\n const input = previouslyFocusedTextInputRef.current;\n\n if (input) {\n // If the interaction was super short we should make sure keyboard won't hide again.\n\n // Too fast input refocus will result only in keyboard flashing on screen and hiding right away.\n // During first ~100ms keyboard will be dismissed no matter what,\n // so we have to make sure it won't interrupt input refocus logic.\n // That's why when the interaction is shorter than 100ms we add delay so it won't hide once again.\n // Subtracting timestamps makes us sure the delay is executed only when needed.\n if (Date.now() - startTimestampRef.current < 100) {\n keyboardTimeoutRef.current = setTimeout(() => {\n input?.focus();\n previouslyFocusedTextInputRef.current = undefined;\n }, 100);\n } else {\n input?.focus();\n previouslyFocusedTextInputRef.current = undefined;\n }\n }\n }, [clearKeyboardTimeout, isEnabled]);\n\n React.useEffect(() => {\n return () => clearKeyboardTimeout();\n }, [clearKeyboardTimeout]);\n\n return {\n onPageChangeStart,\n onPageChangeConfirm,\n onPageChangeCancel,\n };\n}\n"],"mappings":"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"}
1
+ {"version":3,"names":["useKeyboardManager","isEnabled","previouslyFocusedTextInputRef","React","useRef","undefined","startTimestampRef","keyboardTimeoutRef","clearKeyboardTimeout","useCallback","current","clearTimeout","onPageChangeStart","input","TextInput","State","currentlyFocusedInput","blur","Date","now","onPageChangeConfirm","force","Keyboard","dismiss","onPageChangeCancel","setTimeout","focus","useEffect"],"sourceRoot":"../../src","sources":["useKeyboardManager.tsx"],"mappings":";;;;;;AAAA;AACA;AAAkE;AAAA;AAInD,SAASA,kBAAkB,CAACC,SAAwB,EAAE;EACnE;EACA;EACA,MAAMC,6BAA6B,GAAGC,KAAK,CAACC,MAAM,CAAWC,SAAS,CAAC;EACvE,MAAMC,iBAAiB,GAAGH,KAAK,CAACC,MAAM,CAAS,CAAC,CAAC;EACjD,MAAMG,kBAAkB,GAAGJ,KAAK,CAACC,MAAM,EAAO;EAE9C,MAAMI,oBAAoB,GAAGL,KAAK,CAACM,WAAW,CAAC,MAAM;IACnD,IAAIF,kBAAkB,CAACG,OAAO,KAAKL,SAAS,EAAE;MAC5CM,YAAY,CAACJ,kBAAkB,CAACG,OAAO,CAAC;MACxCH,kBAAkB,CAACG,OAAO,GAAGL,SAAS;IACxC;EACF,CAAC,EAAE,EAAE,CAAC;EAEN,MAAMO,iBAAiB,GAAGT,KAAK,CAACM,WAAW,CAAC,MAAM;IAChD,IAAI,CAACR,SAAS,EAAE,EAAE;MAChB;IACF;IAEAO,oBAAoB,EAAE;IAEtB,MAAMK,KAAe,GAAGC,sBAAS,CAACC,KAAK,CAACC,qBAAqB,EAAE;;IAE/D;IACAH,KAAK,aAALA,KAAK,uBAALA,KAAK,CAAEI,IAAI,EAAE;;IAEb;IACAf,6BAA6B,CAACQ,OAAO,GAAGG,KAAK;;IAE7C;IACAP,iBAAiB,CAACI,OAAO,GAAGQ,IAAI,CAACC,GAAG,EAAE;EACxC,CAAC,EAAE,CAACX,oBAAoB,EAAEP,SAAS,CAAC,CAAC;EAErC,MAAMmB,mBAAmB,GAAGjB,KAAK,CAACM,WAAW,CAC1CY,KAAc,IAAK;IAClB,IAAI,CAACpB,SAAS,EAAE,EAAE;MAChB;IACF;IAEAO,oBAAoB,EAAE;IAEtB,IAAIa,KAAK,EAAE;MACT;MACA;MACA;MACAC,qBAAQ,CAACC,OAAO,EAAE;IACpB,CAAC,MAAM;MACL,MAAMV,KAAK,GAAGX,6BAA6B,CAACQ,OAAO;;MAEnD;MACA;MACAG,KAAK,aAALA,KAAK,uBAALA,KAAK,CAAEI,IAAI,EAAE;IACf;;IAEA;IACAf,6BAA6B,CAACQ,OAAO,GAAGL,SAAS;EACnD,CAAC,EACD,CAACG,oBAAoB,EAAEP,SAAS,CAAC,CAClC;EAED,MAAMuB,kBAAkB,GAAGrB,KAAK,CAACM,WAAW,CAAC,MAAM;IACjD,IAAI,CAACR,SAAS,EAAE,EAAE;MAChB;IACF;IAEAO,oBAAoB,EAAE;;IAEtB;IACA,MAAMK,KAAK,GAAGX,6BAA6B,CAACQ,OAAO;IAEnD,IAAIG,KAAK,EAAE;MACT;;MAEA;MACA;MACA;MACA;MACA;MACA,IAAIK,IAAI,CAACC,GAAG,EAAE,GAAGb,iBAAiB,CAACI,OAAO,GAAG,GAAG,EAAE;QAChDH,kBAAkB,CAACG,OAAO,GAAGe,UAAU,CAAC,MAAM;UAC5CZ,KAAK,aAALA,KAAK,uBAALA,KAAK,CAAEa,KAAK,EAAE;UACdxB,6BAA6B,CAACQ,OAAO,GAAGL,SAAS;QACnD,CAAC,EAAE,GAAG,CAAC;MACT,CAAC,MAAM;QACLQ,KAAK,aAALA,KAAK,uBAALA,KAAK,CAAEa,KAAK,EAAE;QACdxB,6BAA6B,CAACQ,OAAO,GAAGL,SAAS;MACnD;IACF;EACF,CAAC,EAAE,CAACG,oBAAoB,EAAEP,SAAS,CAAC,CAAC;EAErCE,KAAK,CAACwB,SAAS,CAAC,MAAM;IACpB,OAAO,MAAMnB,oBAAoB,EAAE;EACrC,CAAC,EAAE,CAACA,oBAAoB,CAAC,CAAC;EAE1B,OAAO;IACLI,iBAAiB;IACjBQ,mBAAmB;IACnBI;EACF,CAAC;AACH"}
@@ -3,9 +3,7 @@
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
-
7
6
  var _GestureHandlerNative = require("./GestureHandlerNative");
8
-
9
7
  Object.keys(_GestureHandlerNative).forEach(function (key) {
10
8
  if (key === "default" || key === "__esModule") return;
11
9
  if (key in exports && exports[key] === _GestureHandlerNative[key]) return;
@@ -1 +1 @@
1
- {"version":3,"names":[],"sources":["GestureHandler.android.tsx"],"sourcesContent":["export * from './GestureHandlerNative';\n"],"mappings":";;;;;;AAAA;;AAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA"}
1
+ {"version":3,"names":[],"sourceRoot":"../../src","sources":["GestureHandler.android.tsx"],"mappings":";;;;;AAAA;AAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA"}
@@ -3,9 +3,7 @@
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
-
7
6
  var _GestureHandlerNative = require("./GestureHandlerNative");
8
-
9
7
  Object.keys(_GestureHandlerNative).forEach(function (key) {
10
8
  if (key === "default" || key === "__esModule") return;
11
9
  if (key in exports && exports[key] === _GestureHandlerNative[key]) return;
@@ -1 +1 @@
1
- {"version":3,"names":[],"sources":["GestureHandler.ios.tsx"],"sourcesContent":["export * from './GestureHandlerNative';\n"],"mappings":";;;;;;AAAA;;AAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA"}
1
+ {"version":3,"names":[],"sourceRoot":"../../src","sources":["GestureHandler.ios.tsx"],"mappings":";;;;;AAAA;AAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA"}
@@ -4,22 +4,16 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.PanGestureHandler = exports.GestureState = exports.GestureHandlerRootView = 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
  const Dummy = _ref => {
17
12
  let {
18
13
  children
19
14
  } = _ref;
20
15
  return /*#__PURE__*/React.createElement(React.Fragment, null, children);
21
16
  };
22
-
23
17
  const PanGestureHandler = Dummy;
24
18
  exports.PanGestureHandler = PanGestureHandler;
25
19
  const GestureHandlerRootView = _reactNative.View;
@@ -1 +1 @@
1
- {"version":3,"names":["Dummy","children","PanGestureHandler","GestureHandlerRootView","View","GestureState","UNDETERMINED","FAILED","BEGAN","CANCELLED","ACTIVE","END"],"sources":["GestureHandler.tsx"],"sourcesContent":["import * as React from 'react';\nimport { View } from 'react-native';\nimport type { PanGestureHandlerProperties } from 'react-native-gesture-handler';\n\nconst Dummy: any = ({ children }: { children: React.ReactNode }) => (\n <>{children}</>\n);\n\nexport const PanGestureHandler =\n Dummy as React.ComponentType<PanGestureHandlerProperties>;\n\nexport const GestureHandlerRootView = View;\n\nexport const GestureState = {\n UNDETERMINED: 0,\n FAILED: 1,\n BEGAN: 2,\n CANCELLED: 3,\n ACTIVE: 4,\n END: 5,\n};\n\nexport type { PanGestureHandlerGestureEvent } from 'react-native-gesture-handler';\n"],"mappings":";;;;;;;AAAA;;AACA;;;;;;AAGA,MAAMA,KAAU,GAAG;EAAA,IAAC;IAAEC;EAAF,CAAD;EAAA,oBACjB,0CAAGA,QAAH,CADiB;AAAA,CAAnB;;AAIO,MAAMC,iBAAiB,GAC5BF,KADK;;AAGA,MAAMG,sBAAsB,GAAGC,iBAA/B;;AAEA,MAAMC,YAAY,GAAG;EAC1BC,YAAY,EAAE,CADY;EAE1BC,MAAM,EAAE,CAFkB;EAG1BC,KAAK,EAAE,CAHmB;EAI1BC,SAAS,EAAE,CAJe;EAK1BC,MAAM,EAAE,CALkB;EAM1BC,GAAG,EAAE;AANqB,CAArB"}
1
+ {"version":3,"names":["Dummy","children","PanGestureHandler","GestureHandlerRootView","View","GestureState","UNDETERMINED","FAILED","BEGAN","CANCELLED","ACTIVE","END"],"sourceRoot":"../../src","sources":["GestureHandler.tsx"],"mappings":";;;;;;AAAA;AACA;AAAoC;AAAA;AAGpC,MAAMA,KAAU,GAAG;EAAA,IAAC;IAAEC;EAAwC,CAAC;EAAA,oBAC7D,0CAAGA,QAAQ,CAAI;AAAA,CAChB;AAEM,MAAMC,iBAAiB,GAC5BF,KAAyD;AAAC;AAErD,MAAMG,sBAAsB,GAAGC,iBAAI;AAAC;AAEpC,MAAMC,YAAY,GAAG;EAC1BC,YAAY,EAAE,CAAC;EACfC,MAAM,EAAE,CAAC;EACTC,KAAK,EAAE,CAAC;EACRC,SAAS,EAAE,CAAC;EACZC,MAAM,EAAE,CAAC;EACTC,GAAG,EAAE;AACP,CAAC;AAAC"}
@@ -16,21 +16,13 @@ Object.defineProperty(exports, "GestureState", {
16
16
  }
17
17
  });
18
18
  exports.PanGestureHandler = PanGestureHandler;
19
-
20
19
  var React = _interopRequireWildcard(require("react"));
21
-
22
20
  var _reactNativeGestureHandler = require("react-native-gesture-handler");
23
-
24
21
  var _GestureHandlerRefContext = _interopRequireDefault(require("../utils/GestureHandlerRefContext"));
25
-
26
22
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
27
-
28
23
  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); }
29
-
30
24
  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; }
31
-
32
25
  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); }
33
-
34
26
  function PanGestureHandler(props) {
35
27
  const gestureRef = React.useRef(null);
36
28
  return /*#__PURE__*/React.createElement(_GestureHandlerRefContext.default.Provider, {
@@ -1 +1 @@
1
- {"version":3,"names":["PanGestureHandler","props","gestureRef","React","useRef"],"sources":["GestureHandlerNative.tsx"],"sourcesContent":["import * as React from 'react';\nimport {\n PanGestureHandler as PanGestureHandlerNative,\n PanGestureHandlerProperties,\n} from 'react-native-gesture-handler';\n\nimport GestureHandlerRefContext from '../utils/GestureHandlerRefContext';\n\nexport function PanGestureHandler(props: PanGestureHandlerProperties) {\n const gestureRef = React.useRef<PanGestureHandlerNative>(null);\n\n return (\n <GestureHandlerRefContext.Provider value={gestureRef}>\n <PanGestureHandlerNative {...props} ref={gestureRef} />\n </GestureHandlerRefContext.Provider>\n );\n}\n\nexport type { PanGestureHandlerGestureEvent } from 'react-native-gesture-handler';\nexport {\n GestureHandlerRootView,\n State as GestureState,\n} from 'react-native-gesture-handler';\n"],"mappings":";;;;;;;;;;;;;;;;;;;AAAA;;AACA;;AAKA;;;;;;;;;;AAEO,SAASA,iBAAT,CAA2BC,KAA3B,EAA+D;EACpE,MAAMC,UAAU,GAAGC,KAAK,CAACC,MAAN,CAAsC,IAAtC,CAAnB;EAEA,oBACE,oBAAC,iCAAD,CAA0B,QAA1B;IAAmC,KAAK,EAAEF;EAA1C,gBACE,oBAAC,4CAAD,eAA6BD,KAA7B;IAAoC,GAAG,EAAEC;EAAzC,GADF,CADF;AAKD"}
1
+ {"version":3,"names":["PanGestureHandler","props","gestureRef","React","useRef"],"sourceRoot":"../../src","sources":["GestureHandlerNative.tsx"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AACA;AAKA;AAAyE;AAAA;AAAA;AAAA;AAElE,SAASA,iBAAiB,CAACC,KAAkC,EAAE;EACpE,MAAMC,UAAU,GAAGC,KAAK,CAACC,MAAM,CAA0B,IAAI,CAAC;EAE9D,oBACE,oBAAC,iCAAwB,CAAC,QAAQ;IAAC,KAAK,EAAEF;EAAW,gBACnD,oBAAC,4CAAuB,eAAKD,KAAK;IAAE,GAAG,EAAEC;EAAW,GAAG,CACrB;AAExC"}
@@ -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 _reactNativeSafeAreaContext = require("react-native-safe-area-context");
15
-
16
11
  var _debounce = _interopRequireDefault(require("../../utils/debounce"));
17
-
18
12
  var _ModalPresentationContext = _interopRequireDefault(require("../../utils/ModalPresentationContext"));
19
-
20
13
  var _HeaderSegment = _interopRequireDefault(require("./HeaderSegment"));
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
  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); }
29
-
30
18
  var _default = /*#__PURE__*/React.memo(function Header(_ref) {
31
19
  let {
32
20
  back,
@@ -38,19 +26,21 @@ var _default = /*#__PURE__*/React.memo(function Header(_ref) {
38
26
  styleInterpolator
39
27
  } = _ref;
40
28
  const insets = (0, _reactNativeSafeAreaContext.useSafeAreaInsets)();
41
- let previousTitle; // The label for the left back button shows the title of the previous screen
42
- // If a custom label is specified, we use it, otherwise use previous screen's title
29
+ let previousTitle;
43
30
 
31
+ // The label for the left back button shows the title of the previous screen
32
+ // If a custom label is specified, we use it, otherwise use previous screen's title
44
33
  if (options.headerBackTitle !== undefined) {
45
34
  previousTitle = options.headerBackTitle;
46
35
  } else if (back) {
47
36
  previousTitle = back.title;
48
- } // eslint-disable-next-line react-hooks/exhaustive-deps
49
-
37
+ }
50
38
 
39
+ // eslint-disable-next-line react-hooks/exhaustive-deps
51
40
  const goBack = React.useCallback((0, _debounce.default)(() => {
52
41
  if (navigation.isFocused() && navigation.canGoBack()) {
53
- navigation.dispatch({ ..._native.StackActions.pop(),
42
+ navigation.dispatch({
43
+ ..._native.StackActions.pop(),
54
44
  source: route.key
55
45
  });
56
46
  }
@@ -69,6 +59,5 @@ var _default = /*#__PURE__*/React.memo(function Header(_ref) {
69
59
  styleInterpolator: styleInterpolator
70
60
  }));
71
61
  });
72
-
73
62
  exports.default = _default;
74
63
  //# sourceMappingURL=Header.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["React","memo","Header","back","layout","progress","options","route","navigation","styleInterpolator","insets","useSafeAreaInsets","previousTitle","headerBackTitle","undefined","title","goBack","useCallback","debounce","isFocused","canGoBack","dispatch","StackActions","pop","source","key","isModal","useContext","ModalPresentationContext","isParentHeaderShown","HeaderShownContext","statusBarHeight","headerStatusBarHeight","top","getHeaderTitle","name"],"sources":["Header.tsx"],"sourcesContent":["import { getHeaderTitle, HeaderShownContext } from '@react-navigation/elements';\nimport { StackActions } from '@react-navigation/native';\nimport * as React from 'react';\nimport { useSafeAreaInsets } from 'react-native-safe-area-context';\n\nimport type { StackHeaderProps } from '../../types';\nimport debounce from '../../utils/debounce';\nimport ModalPresentationContext from '../../utils/ModalPresentationContext';\nimport HeaderSegment from './HeaderSegment';\n\nexport default React.memo(function Header({\n back,\n layout,\n progress,\n options,\n route,\n navigation,\n styleInterpolator,\n}: StackHeaderProps) {\n const insets = useSafeAreaInsets();\n\n let previousTitle;\n\n // The label for the left back button shows the title of the previous screen\n // If a custom label is specified, we use it, otherwise use previous screen's title\n if (options.headerBackTitle !== undefined) {\n previousTitle = options.headerBackTitle;\n } else if (back) {\n previousTitle = back.title;\n }\n\n // eslint-disable-next-line react-hooks/exhaustive-deps\n const goBack = React.useCallback(\n debounce(() => {\n if (navigation.isFocused() && navigation.canGoBack()) {\n navigation.dispatch({\n ...StackActions.pop(),\n source: route.key,\n });\n }\n }, 50),\n [navigation, route.key]\n );\n\n const isModal = React.useContext(ModalPresentationContext);\n const isParentHeaderShown = React.useContext(HeaderShownContext);\n\n const statusBarHeight =\n options.headerStatusBarHeight !== undefined\n ? options.headerStatusBarHeight\n : isModal || isParentHeaderShown\n ? 0\n : insets.top;\n\n return (\n <HeaderSegment\n {...options}\n title={getHeaderTitle(options, route.name)}\n progress={progress}\n layout={layout}\n modal={isModal}\n headerBackTitle={\n options.headerBackTitle !== undefined\n ? options.headerBackTitle\n : previousTitle\n }\n headerStatusBarHeight={statusBarHeight}\n onGoBack={back ? goBack : undefined}\n styleInterpolator={styleInterpolator}\n />\n );\n});\n"],"mappings":";;;;;;;AAAA;;AACA;;AACA;;AACA;;AAGA;;AACA;;AACA;;;;;;;;;;4BAEeA,KAAK,CAACC,IAAN,CAAW,SAASC,MAAT,OAQL;EAAA,IARqB;IACxCC,IADwC;IAExCC,MAFwC;IAGxCC,QAHwC;IAIxCC,OAJwC;IAKxCC,KALwC;IAMxCC,UANwC;IAOxCC;EAPwC,CAQrB;EACnB,MAAMC,MAAM,GAAG,IAAAC,6CAAA,GAAf;EAEA,IAAIC,aAAJ,CAHmB,CAKnB;EACA;;EACA,IAAIN,OAAO,CAACO,eAAR,KAA4BC,SAAhC,EAA2C;IACzCF,aAAa,GAAGN,OAAO,CAACO,eAAxB;EACD,CAFD,MAEO,IAAIV,IAAJ,EAAU;IACfS,aAAa,GAAGT,IAAI,CAACY,KAArB;EACD,CAXkB,CAanB;;;EACA,MAAMC,MAAM,GAAGhB,KAAK,CAACiB,WAAN,CACb,IAAAC,iBAAA,EAAS,MAAM;IACb,IAAIV,UAAU,CAACW,SAAX,MAA0BX,UAAU,CAACY,SAAX,EAA9B,EAAsD;MACpDZ,UAAU,CAACa,QAAX,CAAoB,EAClB,GAAGC,oBAAA,CAAaC,GAAb,EADe;QAElBC,MAAM,EAAEjB,KAAK,CAACkB;MAFI,CAApB;IAID;EACF,CAPD,EAOG,EAPH,CADa,EASb,CAACjB,UAAD,EAAaD,KAAK,CAACkB,GAAnB,CATa,CAAf;EAYA,MAAMC,OAAO,GAAG1B,KAAK,CAAC2B,UAAN,CAAiBC,iCAAjB,CAAhB;EACA,MAAMC,mBAAmB,GAAG7B,KAAK,CAAC2B,UAAN,CAAiBG,4BAAjB,CAA5B;EAEA,MAAMC,eAAe,GACnBzB,OAAO,CAAC0B,qBAAR,KAAkClB,SAAlC,GACIR,OAAO,CAAC0B,qBADZ,GAEIN,OAAO,IAAIG,mBAAX,GACA,CADA,GAEAnB,MAAM,CAACuB,GALb;EAOA,oBACE,oBAAC,sBAAD,eACM3B,OADN;IAEE,KAAK,EAAE,IAAA4B,wBAAA,EAAe5B,OAAf,EAAwBC,KAAK,CAAC4B,IAA9B,CAFT;IAGE,QAAQ,EAAE9B,QAHZ;IAIE,MAAM,EAAED,MAJV;IAKE,KAAK,EAAEsB,OALT;IAME,eAAe,EACbpB,OAAO,CAACO,eAAR,KAA4BC,SAA5B,GACIR,OAAO,CAACO,eADZ,GAEID,aATR;IAWE,qBAAqB,EAAEmB,eAXzB;IAYE,QAAQ,EAAE5B,IAAI,GAAGa,MAAH,GAAYF,SAZ5B;IAaE,iBAAiB,EAAEL;EAbrB,GADF;AAiBD,CA7Dc,C"}
1
+ {"version":3,"names":["React","memo","Header","back","layout","progress","options","route","navigation","styleInterpolator","insets","useSafeAreaInsets","previousTitle","headerBackTitle","undefined","title","goBack","useCallback","debounce","isFocused","canGoBack","dispatch","StackActions","pop","source","key","isModal","useContext","ModalPresentationContext","isParentHeaderShown","HeaderShownContext","statusBarHeight","headerStatusBarHeight","top","getHeaderTitle","name"],"sourceRoot":"../../src","sources":["Header.tsx"],"mappings":";;;;;;AAAA;AACA;AACA;AACA;AAGA;AACA;AACA;AAA4C;AAAA;AAAA;AAAA;AAAA,4BAE7BA,KAAK,CAACC,IAAI,CAAC,SAASC,MAAM,OAQpB;EAAA,IARqB;IACxCC,IAAI;IACJC,MAAM;IACNC,QAAQ;IACRC,OAAO;IACPC,KAAK;IACLC,UAAU;IACVC;EACgB,CAAC;EACjB,MAAMC,MAAM,GAAG,IAAAC,6CAAiB,GAAE;EAElC,IAAIC,aAAa;;EAEjB;EACA;EACA,IAAIN,OAAO,CAACO,eAAe,KAAKC,SAAS,EAAE;IACzCF,aAAa,GAAGN,OAAO,CAACO,eAAe;EACzC,CAAC,MAAM,IAAIV,IAAI,EAAE;IACfS,aAAa,GAAGT,IAAI,CAACY,KAAK;EAC5B;;EAEA;EACA,MAAMC,MAAM,GAAGhB,KAAK,CAACiB,WAAW,CAC9B,IAAAC,iBAAQ,EAAC,MAAM;IACb,IAAIV,UAAU,CAACW,SAAS,EAAE,IAAIX,UAAU,CAACY,SAAS,EAAE,EAAE;MACpDZ,UAAU,CAACa,QAAQ,CAAC;QAClB,GAAGC,oBAAY,CAACC,GAAG,EAAE;QACrBC,MAAM,EAAEjB,KAAK,CAACkB;MAChB,CAAC,CAAC;IACJ;EACF,CAAC,EAAE,EAAE,CAAC,EACN,CAACjB,UAAU,EAAED,KAAK,CAACkB,GAAG,CAAC,CACxB;EAED,MAAMC,OAAO,GAAG1B,KAAK,CAAC2B,UAAU,CAACC,iCAAwB,CAAC;EAC1D,MAAMC,mBAAmB,GAAG7B,KAAK,CAAC2B,UAAU,CAACG,4BAAkB,CAAC;EAEhE,MAAMC,eAAe,GACnBzB,OAAO,CAAC0B,qBAAqB,KAAKlB,SAAS,GACvCR,OAAO,CAAC0B,qBAAqB,GAC7BN,OAAO,IAAIG,mBAAmB,GAC9B,CAAC,GACDnB,MAAM,CAACuB,GAAG;EAEhB,oBACE,oBAAC,sBAAa,eACR3B,OAAO;IACX,KAAK,EAAE,IAAA4B,wBAAc,EAAC5B,OAAO,EAAEC,KAAK,CAAC4B,IAAI,CAAE;IAC3C,QAAQ,EAAE9B,QAAS;IACnB,MAAM,EAAED,MAAO;IACf,KAAK,EAAEsB,OAAQ;IACf,eAAe,EACbpB,OAAO,CAACO,eAAe,KAAKC,SAAS,GACjCR,OAAO,CAACO,eAAe,GACvBD,aACL;IACD,qBAAqB,EAAEmB,eAAgB;IACvC,QAAQ,EAAE5B,IAAI,GAAGa,MAAM,GAAGF,SAAU;IACpC,iBAAiB,EAAEL;EAAkB,GACrC;AAEN,CAAC,CAAC;AAAA"}
@@ -4,25 +4,15 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.default = HeaderContainer;
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 _HeaderStyleInterpolators = require("../../TransitionConfigs/HeaderStyleInterpolators");
17
-
18
12
  var _Header = _interopRequireDefault(require("./Header"));
19
-
20
13
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
21
-
22
14
  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); }
23
-
24
15
  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; }
25
-
26
16
  function HeaderContainer(_ref) {
27
17
  let {
28
18
  mode,
@@ -40,11 +30,9 @@ function HeaderContainer(_ref) {
40
30
  style: style
41
31
  }, scenes.slice(-3).map((scene, i, self) => {
42
32
  var _self, _self2;
43
-
44
33
  if (mode === 'screen' && i !== self.length - 1 || !scene) {
45
34
  return null;
46
35
  }
47
-
48
36
  const {
49
37
  header,
50
38
  headerMode,
@@ -52,17 +40,14 @@ function HeaderContainer(_ref) {
52
40
  headerTransparent,
53
41
  headerStyleInterpolator
54
42
  } = scene.descriptor.options;
55
-
56
43
  if (headerMode !== mode || !headerShown) {
57
44
  return null;
58
45
  }
59
-
60
46
  const isFocused = focusedRoute.key === scene.descriptor.route.key;
61
47
  const previousScene = getPreviousScene({
62
48
  route: scene.descriptor.route
63
49
  });
64
50
  let headerBack = parentHeaderBack;
65
-
66
51
  if (previousScene) {
67
52
  const {
68
53
  options,
@@ -71,18 +56,19 @@ function HeaderContainer(_ref) {
71
56
  headerBack = previousScene ? {
72
57
  title: (0, _elements.getHeaderTitle)(options, route.name)
73
58
  } : parentHeaderBack;
74
- } // If the screen is next to a headerless screen, we need to make the header appear static
75
- // This makes the header look like it's moving with the screen
76
-
59
+ }
77
60
 
61
+ // If the screen is next to a headerless screen, we need to make the header appear static
62
+ // This makes the header look like it's moving with the screen
78
63
  const previousDescriptor = (_self = self[i - 1]) === null || _self === void 0 ? void 0 : _self.descriptor;
79
64
  const nextDescriptor = (_self2 = self[i + 1]) === null || _self2 === void 0 ? void 0 : _self2.descriptor;
80
65
  const {
81
66
  headerShown: previousHeaderShown = true,
82
67
  headerMode: previousHeaderMode
83
- } = (previousDescriptor === null || previousDescriptor === void 0 ? void 0 : previousDescriptor.options) || {}; // If any of the next screens don't have a header or header is part of the screen
84
- // Then we need to move this header offscreen so that it doesn't cover it
68
+ } = (previousDescriptor === null || previousDescriptor === void 0 ? void 0 : previousDescriptor.options) || {};
85
69
 
70
+ // If any of the next screens don't have a header or header is part of the screen
71
+ // Then we need to move this header offscreen so that it doesn't cover it
86
72
  const nextHeaderlessScene = self.slice(i + 1).find(scene => {
87
73
  const {
88
74
  headerShown: currentHeaderShown = true,
@@ -93,7 +79,8 @@ function HeaderContainer(_ref) {
93
79
  const {
94
80
  gestureDirection: nextHeaderlessGestureDirection
95
81
  } = (nextHeaderlessScene === null || nextHeaderlessScene === void 0 ? void 0 : nextHeaderlessScene.descriptor.options) || {};
96
- const isHeaderStatic = (previousHeaderShown === false || previousHeaderMode === 'screen') && // We still need to animate when coming back from next scene
82
+ const isHeaderStatic = (previousHeaderShown === false || previousHeaderMode === 'screen') &&
83
+ // We still need to animate when coming back from next scene
97
84
  // A hacky way to check this is if the next scene exists
98
85
  !nextDescriptor || nextHeaderlessScene;
99
86
  const props = {
@@ -123,13 +110,13 @@ function HeaderContainer(_ref) {
123
110
  pointerEvents: isFocused ? 'box-none' : 'none',
124
111
  accessibilityElementsHidden: !isFocused,
125
112
  importantForAccessibility: isFocused ? 'auto' : 'no-hide-descendants',
126
- style: // Avoid positioning the focused header absolutely
113
+ style:
114
+ // Avoid positioning the focused header absolutely
127
115
  // Otherwise accessibility tools don't seem to be able to find it
128
116
  mode === 'float' && !isFocused || headerTransparent ? styles.header : null
129
117
  }, header !== undefined ? header(props) : /*#__PURE__*/React.createElement(_Header.default, props))));
130
118
  }));
131
119
  }
132
-
133
120
  const styles = _reactNative.StyleSheet.create({
134
121
  header: {
135
122
  position: 'absolute',
@@ -1 +1 @@
1
- {"version":3,"names":["HeaderContainer","mode","scenes","layout","getPreviousScene","getFocusedRoute","onContentHeightChange","style","focusedRoute","parentHeaderBack","React","useContext","HeaderBackContext","slice","map","scene","i","self","length","header","headerMode","headerShown","headerTransparent","headerStyleInterpolator","descriptor","options","isFocused","key","route","previousScene","headerBack","title","getHeaderTitle","name","previousDescriptor","nextDescriptor","previousHeaderShown","previousHeaderMode","nextHeaderlessScene","find","currentHeaderShown","currentHeaderMode","gestureDirection","nextHeaderlessGestureDirection","isHeaderStatic","props","back","progress","navigation","styleInterpolator","forSlideUp","forSlideRight","forSlideLeft","forNoAnimation","e","height","nativeEvent","undefined","styles","StyleSheet","create","position","top","left","right"],"sources":["HeaderContainer.tsx"],"sourcesContent":["import { getHeaderTitle, HeaderBackContext } from '@react-navigation/elements';\nimport {\n NavigationContext,\n NavigationRouteContext,\n ParamListBase,\n Route,\n} from '@react-navigation/native';\nimport * as React from 'react';\nimport { Animated, StyleProp, StyleSheet, View, ViewStyle } from 'react-native';\n\nimport {\n forNoAnimation,\n forSlideLeft,\n forSlideRight,\n forSlideUp,\n} from '../../TransitionConfigs/HeaderStyleInterpolators';\nimport type {\n Layout,\n Scene,\n StackHeaderMode,\n StackHeaderProps,\n StackNavigationProp,\n} from '../../types';\nimport Header from './Header';\n\nexport type Props = {\n mode: StackHeaderMode;\n layout: Layout;\n scenes: (Scene | undefined)[];\n getPreviousScene: (props: { route: Route<string> }) => Scene | undefined;\n getFocusedRoute: () => Route<string>;\n onContentHeightChange?: (props: {\n route: Route<string>;\n height: number;\n }) => void;\n style?: Animated.WithAnimatedValue<StyleProp<ViewStyle>>;\n};\n\nexport default function HeaderContainer({\n mode,\n scenes,\n layout,\n getPreviousScene,\n getFocusedRoute,\n onContentHeightChange,\n style,\n}: Props) {\n const focusedRoute = getFocusedRoute();\n const parentHeaderBack = React.useContext(HeaderBackContext);\n\n return (\n <Animated.View pointerEvents=\"box-none\" style={style}>\n {scenes.slice(-3).map((scene, i, self) => {\n if ((mode === 'screen' && i !== self.length - 1) || !scene) {\n return null;\n }\n\n const {\n header,\n headerMode,\n headerShown = true,\n headerTransparent,\n headerStyleInterpolator,\n } = scene.descriptor.options;\n\n if (headerMode !== mode || !headerShown) {\n return null;\n }\n\n const isFocused = focusedRoute.key === scene.descriptor.route.key;\n const previousScene = getPreviousScene({\n route: scene.descriptor.route,\n });\n\n let headerBack = parentHeaderBack;\n\n if (previousScene) {\n const { options, route } = previousScene.descriptor;\n\n headerBack = previousScene\n ? { title: getHeaderTitle(options, route.name) }\n : parentHeaderBack;\n }\n\n // If the screen is next to a headerless screen, we need to make the header appear static\n // This makes the header look like it's moving with the screen\n const previousDescriptor = self[i - 1]?.descriptor;\n const nextDescriptor = self[i + 1]?.descriptor;\n\n const {\n headerShown: previousHeaderShown = true,\n headerMode: previousHeaderMode,\n } = previousDescriptor?.options || {};\n\n // If any of the next screens don't have a header or header is part of the screen\n // Then we need to move this header offscreen so that it doesn't cover it\n const nextHeaderlessScene = self.slice(i + 1).find((scene) => {\n const {\n headerShown: currentHeaderShown = true,\n headerMode: currentHeaderMode,\n } = scene?.descriptor.options || {};\n\n return currentHeaderShown === false || currentHeaderMode === 'screen';\n });\n\n const { gestureDirection: nextHeaderlessGestureDirection } =\n nextHeaderlessScene?.descriptor.options || {};\n\n const isHeaderStatic =\n ((previousHeaderShown === false || previousHeaderMode === 'screen') &&\n // We still need to animate when coming back from next scene\n // A hacky way to check this is if the next scene exists\n !nextDescriptor) ||\n nextHeaderlessScene;\n\n const props: StackHeaderProps = {\n layout,\n back: headerBack,\n progress: scene.progress,\n options: scene.descriptor.options,\n route: scene.descriptor.route,\n navigation: scene.descriptor\n .navigation as StackNavigationProp<ParamListBase>,\n styleInterpolator:\n mode === 'float'\n ? isHeaderStatic\n ? nextHeaderlessGestureDirection === 'vertical' ||\n nextHeaderlessGestureDirection === 'vertical-inverted'\n ? forSlideUp\n : nextHeaderlessGestureDirection === 'horizontal-inverted'\n ? forSlideRight\n : forSlideLeft\n : headerStyleInterpolator\n : forNoAnimation,\n };\n\n return (\n <NavigationContext.Provider\n key={scene.descriptor.route.key}\n value={scene.descriptor.navigation}\n >\n <NavigationRouteContext.Provider value={scene.descriptor.route}>\n <View\n onLayout={\n onContentHeightChange\n ? (e) => {\n const { height } = e.nativeEvent.layout;\n\n onContentHeightChange({\n route: scene.descriptor.route,\n height,\n });\n }\n : undefined\n }\n pointerEvents={isFocused ? 'box-none' : 'none'}\n accessibilityElementsHidden={!isFocused}\n importantForAccessibility={\n isFocused ? 'auto' : 'no-hide-descendants'\n }\n style={\n // Avoid positioning the focused header absolutely\n // Otherwise accessibility tools don't seem to be able to find it\n (mode === 'float' && !isFocused) || headerTransparent\n ? styles.header\n : null\n }\n >\n {header !== undefined ? header(props) : <Header {...props} />}\n </View>\n </NavigationRouteContext.Provider>\n </NavigationContext.Provider>\n );\n })}\n </Animated.View>\n );\n}\n\nconst styles = StyleSheet.create({\n header: {\n position: 'absolute',\n top: 0,\n left: 0,\n right: 0,\n },\n});\n"],"mappings":"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"}
1
+ {"version":3,"names":["HeaderContainer","mode","scenes","layout","getPreviousScene","getFocusedRoute","onContentHeightChange","style","focusedRoute","parentHeaderBack","React","useContext","HeaderBackContext","slice","map","scene","i","self","length","header","headerMode","headerShown","headerTransparent","headerStyleInterpolator","descriptor","options","isFocused","key","route","previousScene","headerBack","title","getHeaderTitle","name","previousDescriptor","nextDescriptor","previousHeaderShown","previousHeaderMode","nextHeaderlessScene","find","currentHeaderShown","currentHeaderMode","gestureDirection","nextHeaderlessGestureDirection","isHeaderStatic","props","back","progress","navigation","styleInterpolator","forSlideUp","forSlideRight","forSlideLeft","forNoAnimation","e","height","nativeEvent","undefined","styles","StyleSheet","create","position","top","left","right"],"sourceRoot":"../../src","sources":["HeaderContainer.tsx"],"mappings":"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"}
@@ -4,27 +4,17 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.default = HeaderSegment;
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
  var _memoize = _interopRequireDefault(require("../../utils/memoize"));
15
-
16
11
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
17
-
18
12
  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); }
19
-
20
13
  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; }
21
-
22
14
  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); }
23
-
24
15
  function HeaderSegment(props) {
25
16
  const [leftLabelLayout, setLeftLabelLayout] = React.useState(undefined);
26
17
  const [titleLayout, setTitleLayout] = React.useState(undefined);
27
-
28
18
  const handleTitleLayout = e => {
29
19
  const {
30
20
  height,
@@ -34,30 +24,25 @@ function HeaderSegment(props) {
34
24
  if (titleLayout && height === titleLayout.height && width === titleLayout.width) {
35
25
  return titleLayout;
36
26
  }
37
-
38
27
  return {
39
28
  height,
40
29
  width
41
30
  };
42
31
  });
43
32
  };
44
-
45
33
  const handleLeftLabelLayout = e => {
46
34
  const {
47
35
  height,
48
36
  width
49
37
  } = e.nativeEvent.layout;
50
-
51
38
  if (leftLabelLayout && height === leftLabelLayout.height && width === leftLabelLayout.width) {
52
39
  return;
53
40
  }
54
-
55
41
  setLeftLabelLayout({
56
42
  height,
57
43
  width
58
44
  });
59
45
  };
60
-
61
46
  const getInterpolatedStyle = (0, _memoize.default)((styleInterpolator, layout, current, next, titleLayout, leftLabelLayout, headerHeight) => styleInterpolator({
62
47
  current: {
63
48
  progress: current
@@ -101,11 +86,9 @@ function HeaderSegment(props) {
101
86
  ...rest
102
87
  } = props;
103
88
  const defaultHeight = (0, _elements.getDefaultHeaderHeight)(layout, modal, headerStatusBarHeight);
104
-
105
89
  const {
106
90
  height = defaultHeight
107
91
  } = _reactNative.StyleSheet.flatten(customHeaderStyle || {});
108
-
109
92
  const {
110
93
  titleStyle,
111
94
  leftButtonStyle,
@@ -113,7 +96,8 @@ function HeaderSegment(props) {
113
96
  rightButtonStyle,
114
97
  backgroundStyle
115
98
  } = getInterpolatedStyle(styleInterpolator, layout, progress.current, progress.next, titleLayout, headerBackTitle ? leftLabelLayout : undefined, typeof height === 'number' ? height : defaultHeight);
116
- const headerLeft = left ? props => left({ ...props,
99
+ const headerLeft = left ? props => left({
100
+ ...props,
117
101
  backImage: headerBackImage,
118
102
  accessibilityLabel: headerBackAccessibilityLabel,
119
103
  testID: headerBackTestID,
@@ -127,12 +111,14 @@ function HeaderSegment(props) {
127
111
  titleLayout,
128
112
  canGoBack: Boolean(onGoBack)
129
113
  }) : undefined;
130
- const headerRight = right ? props => right({ ...props,
114
+ const headerRight = right ? props => right({
115
+ ...props,
131
116
  canGoBack: Boolean(onGoBack)
132
117
  }) : undefined;
133
118
  const headerTitle = typeof title !== 'function' ? props => /*#__PURE__*/React.createElement(_elements.HeaderTitle, _extends({}, props, {
134
119
  onLayout: handleTitleLayout
135
- })) : props => title({ ...props,
120
+ })) : props => title({
121
+ ...props,
136
122
  onLayout: handleTitleLayout
137
123
  });
138
124
  return /*#__PURE__*/React.createElement(_elements.Header, _extends({
@@ -1 +1 @@
1
- {"version":3,"names":["HeaderSegment","props","leftLabelLayout","setLeftLabelLayout","React","useState","undefined","titleLayout","setTitleLayout","handleTitleLayout","e","height","width","nativeEvent","layout","handleLeftLabelLayout","getInterpolatedStyle","memoize","styleInterpolator","current","next","headerHeight","progress","layouts","header","screen","title","leftLabel","modal","onGoBack","headerTitle","headerLeft","left","headerRight","right","headerBackImage","headerBackTitle","headerBackTitleVisible","Platform","OS","headerTruncatedBackTitle","headerBackAccessibilityLabel","headerBackTestID","headerBackAllowFontScaling","headerBackTitleStyle","headerTitleContainerStyle","headerLeftContainerStyle","headerRightContainerStyle","headerBackgroundContainerStyle","headerStyle","customHeaderStyle","headerStatusBarHeight","rest","defaultHeight","getDefaultHeaderHeight","StyleSheet","flatten","titleStyle","leftButtonStyle","leftLabelStyle","rightButtonStyle","backgroundStyle","backImage","accessibilityLabel","testID","allowFontScaling","onPress","label","truncatedLabel","labelStyle","onLabelLayout","screenLayout","canGoBack","Boolean","onLayout"],"sources":["HeaderSegment.tsx"],"sourcesContent":["import {\n getDefaultHeaderHeight,\n Header,\n HeaderBackButton,\n HeaderBackButtonProps,\n HeaderTitle,\n} from '@react-navigation/elements';\nimport * as React from 'react';\nimport {\n Animated,\n LayoutChangeEvent,\n Platform,\n StyleSheet,\n ViewStyle,\n} from 'react-native';\n\nimport type {\n Layout,\n SceneProgress,\n StackHeaderOptions,\n StackHeaderStyleInterpolator,\n} from '../../types';\nimport memoize from '../../utils/memoize';\n\ntype Props = Omit<StackHeaderOptions, 'headerStatusBarHeight'> & {\n headerStatusBarHeight: number;\n layout: Layout;\n title: string;\n modal: boolean;\n onGoBack?: () => void;\n progress: SceneProgress;\n styleInterpolator: StackHeaderStyleInterpolator;\n};\n\nexport default function HeaderSegment(props: Props) {\n const [leftLabelLayout, setLeftLabelLayout] = React.useState<\n Layout | undefined\n >(undefined);\n\n const [titleLayout, setTitleLayout] = React.useState<Layout | undefined>(\n undefined\n );\n\n const handleTitleLayout = (e: LayoutChangeEvent) => {\n const { height, width } = e.nativeEvent.layout;\n\n setTitleLayout((titleLayout) => {\n if (\n titleLayout &&\n height === titleLayout.height &&\n width === titleLayout.width\n ) {\n return titleLayout;\n }\n\n return { height, width };\n });\n };\n\n const handleLeftLabelLayout = (e: LayoutChangeEvent) => {\n const { height, width } = e.nativeEvent.layout;\n\n if (\n leftLabelLayout &&\n height === leftLabelLayout.height &&\n width === leftLabelLayout.width\n ) {\n return;\n }\n\n setLeftLabelLayout({ height, width });\n };\n\n const getInterpolatedStyle = memoize(\n (\n styleInterpolator: StackHeaderStyleInterpolator,\n layout: Layout,\n current: Animated.AnimatedInterpolation,\n next: Animated.AnimatedInterpolation | undefined,\n titleLayout: Layout | undefined,\n leftLabelLayout: Layout | undefined,\n headerHeight: number\n ) =>\n styleInterpolator({\n current: { progress: current },\n next: next && { progress: next },\n layouts: {\n header: {\n height: headerHeight,\n width: layout.width,\n },\n screen: layout,\n title: titleLayout,\n leftLabel: leftLabelLayout,\n },\n })\n );\n\n const {\n progress,\n layout,\n modal,\n onGoBack,\n headerTitle: title,\n headerLeft: left = onGoBack\n ? (props: HeaderBackButtonProps) => <HeaderBackButton {...props} />\n : undefined,\n headerRight: right,\n headerBackImage,\n headerBackTitle,\n headerBackTitleVisible = Platform.OS === 'ios',\n headerTruncatedBackTitle,\n headerBackAccessibilityLabel,\n headerBackTestID,\n headerBackAllowFontScaling,\n headerBackTitleStyle,\n headerTitleContainerStyle,\n headerLeftContainerStyle,\n headerRightContainerStyle,\n headerBackgroundContainerStyle,\n headerStyle: customHeaderStyle,\n headerStatusBarHeight,\n styleInterpolator,\n ...rest\n } = props;\n\n const defaultHeight = getDefaultHeaderHeight(\n layout,\n modal,\n headerStatusBarHeight\n );\n\n const { height = defaultHeight } = StyleSheet.flatten(\n customHeaderStyle || {}\n ) as ViewStyle;\n\n const {\n titleStyle,\n leftButtonStyle,\n leftLabelStyle,\n rightButtonStyle,\n backgroundStyle,\n } = getInterpolatedStyle(\n styleInterpolator,\n layout,\n progress.current,\n progress.next,\n titleLayout,\n headerBackTitle ? leftLabelLayout : undefined,\n typeof height === 'number' ? height : defaultHeight\n );\n\n const headerLeft: StackHeaderOptions['headerLeft'] = left\n ? (props) =>\n left({\n ...props,\n backImage: headerBackImage,\n accessibilityLabel: headerBackAccessibilityLabel,\n testID: headerBackTestID,\n allowFontScaling: headerBackAllowFontScaling,\n onPress: onGoBack,\n label: headerBackTitle,\n truncatedLabel: headerTruncatedBackTitle,\n labelStyle: [leftLabelStyle, headerBackTitleStyle],\n onLabelLayout: handleLeftLabelLayout,\n screenLayout: layout,\n titleLayout,\n canGoBack: Boolean(onGoBack),\n })\n : undefined;\n\n const headerRight: StackHeaderOptions['headerRight'] = right\n ? (props) =>\n right({\n ...props,\n canGoBack: Boolean(onGoBack),\n })\n : undefined;\n\n const headerTitle: StackHeaderOptions['headerTitle'] =\n typeof title !== 'function'\n ? (props) => <HeaderTitle {...props} onLayout={handleTitleLayout} />\n : (props) => title({ ...props, onLayout: handleTitleLayout });\n\n return (\n <Header\n modal={modal}\n layout={layout}\n headerTitle={headerTitle}\n headerLeft={headerLeft}\n headerLeftLabelVisible={headerBackTitleVisible}\n headerRight={headerRight}\n headerTitleContainerStyle={[titleStyle, headerTitleContainerStyle]}\n headerLeftContainerStyle={[leftButtonStyle, headerLeftContainerStyle]}\n headerRightContainerStyle={[rightButtonStyle, headerRightContainerStyle]}\n headerBackgroundContainerStyle={[\n backgroundStyle,\n headerBackgroundContainerStyle,\n ]}\n headerStyle={customHeaderStyle}\n headerStatusBarHeight={headerStatusBarHeight}\n {...rest}\n />\n );\n}\n"],"mappings":"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"}
1
+ {"version":3,"names":["HeaderSegment","props","leftLabelLayout","setLeftLabelLayout","React","useState","undefined","titleLayout","setTitleLayout","handleTitleLayout","e","height","width","nativeEvent","layout","handleLeftLabelLayout","getInterpolatedStyle","memoize","styleInterpolator","current","next","headerHeight","progress","layouts","header","screen","title","leftLabel","modal","onGoBack","headerTitle","headerLeft","left","headerRight","right","headerBackImage","headerBackTitle","headerBackTitleVisible","Platform","OS","headerTruncatedBackTitle","headerBackAccessibilityLabel","headerBackTestID","headerBackAllowFontScaling","headerBackTitleStyle","headerTitleContainerStyle","headerLeftContainerStyle","headerRightContainerStyle","headerBackgroundContainerStyle","headerStyle","customHeaderStyle","headerStatusBarHeight","rest","defaultHeight","getDefaultHeaderHeight","StyleSheet","flatten","titleStyle","leftButtonStyle","leftLabelStyle","rightButtonStyle","backgroundStyle","backImage","accessibilityLabel","testID","allowFontScaling","onPress","label","truncatedLabel","labelStyle","onLabelLayout","screenLayout","canGoBack","Boolean","onLayout"],"sourceRoot":"../../src","sources":["HeaderSegment.tsx"],"mappings":"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"}
@@ -4,20 +4,13 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.default = ModalStatusBarManager;
7
-
8
7
  var _native = require("@react-navigation/native");
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
  function ModalStatusBarManager(_ref) {
19
13
  var _flattenedStyle$trans, _flattenedStyle$trans2;
20
-
21
14
  let {
22
15
  dark,
23
16
  layout,
@@ -30,9 +23,7 @@ function ModalStatusBarManager(_ref) {
30
23
  const [overlapping, setOverlapping] = React.useState(true);
31
24
  const scale = 1 - 20 / layout.width;
32
25
  const offset = (insets.top - 34) * scale;
33
-
34
26
  const flattenedStyle = _reactNative.StyleSheet.flatten(style);
35
-
36
27
  const translateY = flattenedStyle === null || flattenedStyle === void 0 ? void 0 : (_flattenedStyle$trans = flattenedStyle.transform) === null || _flattenedStyle$trans === void 0 ? void 0 : (_flattenedStyle$trans2 = _flattenedStyle$trans.find(s => s.translateY !== undefined)) === null || _flattenedStyle$trans2 === void 0 ? void 0 : _flattenedStyle$trans2.translateY;
37
28
  React.useEffect(() => {
38
29
  const listener = _ref2 => {
@@ -41,11 +32,10 @@ function ModalStatusBarManager(_ref) {
41
32
  } = _ref2;
42
33
  setOverlapping(value < offset);
43
34
  };
44
-
45
35
  const sub = translateY === null || translateY === void 0 ? void 0 : translateY.addListener(listener);
46
36
  return () => translateY === null || translateY === void 0 ? void 0 : translateY.removeListener(sub);
47
37
  }, [offset, translateY]);
48
- const darkContent = dark !== null && dark !== void 0 ? dark : !darkTheme;
38
+ const darkContent = dark ?? !darkTheme;
49
39
  return /*#__PURE__*/React.createElement(_reactNative.StatusBar, {
50
40
  animated: true,
51
41
  barStyle: overlapping && darkContent ? 'dark-content' : 'light-content'
@@ -1 +1 @@
1
- {"version":3,"names":["ModalStatusBarManager","dark","layout","insets","style","darkTheme","useTheme","overlapping","setOverlapping","React","useState","scale","width","offset","top","flattenedStyle","StyleSheet","flatten","translateY","transform","find","s","undefined","useEffect","listener","value","sub","addListener","removeListener","darkContent"],"sources":["ModalStatusBarManager.tsx"],"sourcesContent":["import { useTheme } from '@react-navigation/native';\nimport * as React from 'react';\nimport { StatusBar, StyleSheet } from 'react-native';\nimport type { EdgeInsets } from 'react-native-safe-area-context';\n\nimport type { Layout } from '../types';\n\ntype Props = {\n dark: boolean | undefined;\n layout: Layout;\n insets: EdgeInsets;\n style: any;\n};\n\nexport default function ModalStatusBarManager({\n dark,\n layout,\n insets,\n style,\n}: Props) {\n const { dark: darkTheme } = useTheme();\n const [overlapping, setOverlapping] = React.useState(true);\n\n const scale = 1 - 20 / layout.width;\n const offset = (insets.top - 34) * scale;\n\n const flattenedStyle = StyleSheet.flatten(style);\n const translateY = flattenedStyle?.transform?.find(\n (s: any) => s.translateY !== undefined\n )?.translateY;\n\n React.useEffect(() => {\n const listener = ({ value }: { value: number }) => {\n setOverlapping(value < offset);\n };\n\n const sub = translateY?.addListener(listener);\n\n return () => translateY?.removeListener(sub);\n }, [offset, translateY]);\n\n const darkContent = dark ?? !darkTheme;\n\n return (\n <StatusBar\n animated\n barStyle={overlapping && darkContent ? 'dark-content' : 'light-content'}\n />\n );\n}\n"],"mappings":";;;;;;;AAAA;;AACA;;AACA;;;;;;AAYe,SAASA,qBAAT,OAKL;EAAA;;EAAA,IALoC;IAC5CC,IAD4C;IAE5CC,MAF4C;IAG5CC,MAH4C;IAI5CC;EAJ4C,CAKpC;EACR,MAAM;IAAEH,IAAI,EAAEI;EAAR,IAAsB,IAAAC,gBAAA,GAA5B;EACA,MAAM,CAACC,WAAD,EAAcC,cAAd,IAAgCC,KAAK,CAACC,QAAN,CAAe,IAAf,CAAtC;EAEA,MAAMC,KAAK,GAAG,IAAI,KAAKT,MAAM,CAACU,KAA9B;EACA,MAAMC,MAAM,GAAG,CAACV,MAAM,CAACW,GAAP,GAAa,EAAd,IAAoBH,KAAnC;;EAEA,MAAMI,cAAc,GAAGC,uBAAA,CAAWC,OAAX,CAAmBb,KAAnB,CAAvB;;EACA,MAAMc,UAAU,GAAGH,cAAH,aAAGA,cAAH,gDAAGA,cAAc,CAAEI,SAAnB,oFAAG,sBAA2BC,IAA3B,CAChBC,CAAD,IAAYA,CAAC,CAACH,UAAF,KAAiBI,SADZ,CAAH,2DAAG,uBAEhBJ,UAFH;EAIAT,KAAK,CAACc,SAAN,CAAgB,MAAM;IACpB,MAAMC,QAAQ,GAAG,SAAkC;MAAA,IAAjC;QAAEC;MAAF,CAAiC;MACjDjB,cAAc,CAACiB,KAAK,GAAGZ,MAAT,CAAd;IACD,CAFD;;IAIA,MAAMa,GAAG,GAAGR,UAAH,aAAGA,UAAH,uBAAGA,UAAU,CAAES,WAAZ,CAAwBH,QAAxB,CAAZ;IAEA,OAAO,MAAMN,UAAN,aAAMA,UAAN,uBAAMA,UAAU,CAAEU,cAAZ,CAA2BF,GAA3B,CAAb;EACD,CARD,EAQG,CAACb,MAAD,EAASK,UAAT,CARH;EAUA,MAAMW,WAAW,GAAG5B,IAAH,aAAGA,IAAH,cAAGA,IAAH,GAAW,CAACI,SAA7B;EAEA,oBACE,oBAAC,sBAAD;IACE,QAAQ,MADV;IAEE,QAAQ,EAAEE,WAAW,IAAIsB,WAAf,GAA6B,cAA7B,GAA8C;EAF1D,EADF;AAMD"}
1
+ {"version":3,"names":["ModalStatusBarManager","dark","layout","insets","style","darkTheme","useTheme","overlapping","setOverlapping","React","useState","scale","width","offset","top","flattenedStyle","StyleSheet","flatten","translateY","transform","find","s","undefined","useEffect","listener","value","sub","addListener","removeListener","darkContent"],"sourceRoot":"../../src","sources":["ModalStatusBarManager.tsx"],"mappings":";;;;;;AAAA;AACA;AACA;AAAqD;AAAA;AAYtC,SAASA,qBAAqB,OAKnC;EAAA;EAAA,IALoC;IAC5CC,IAAI;IACJC,MAAM;IACNC,MAAM;IACNC;EACK,CAAC;EACN,MAAM;IAAEH,IAAI,EAAEI;EAAU,CAAC,GAAG,IAAAC,gBAAQ,GAAE;EACtC,MAAM,CAACC,WAAW,EAAEC,cAAc,CAAC,GAAGC,KAAK,CAACC,QAAQ,CAAC,IAAI,CAAC;EAE1D,MAAMC,KAAK,GAAG,CAAC,GAAG,EAAE,GAAGT,MAAM,CAACU,KAAK;EACnC,MAAMC,MAAM,GAAG,CAACV,MAAM,CAACW,GAAG,GAAG,EAAE,IAAIH,KAAK;EAExC,MAAMI,cAAc,GAAGC,uBAAU,CAACC,OAAO,CAACb,KAAK,CAAC;EAChD,MAAMc,UAAU,GAAGH,cAAc,aAAdA,cAAc,gDAAdA,cAAc,CAAEI,SAAS,oFAAzB,sBAA2BC,IAAI,CAC/CC,CAAM,IAAKA,CAAC,CAACH,UAAU,KAAKI,SAAS,CACvC,2DAFkB,uBAEhBJ,UAAU;EAEbT,KAAK,CAACc,SAAS,CAAC,MAAM;IACpB,MAAMC,QAAQ,GAAG,SAAkC;MAAA,IAAjC;QAAEC;MAAyB,CAAC;MAC5CjB,cAAc,CAACiB,KAAK,GAAGZ,MAAM,CAAC;IAChC,CAAC;IAED,MAAMa,GAAG,GAAGR,UAAU,aAAVA,UAAU,uBAAVA,UAAU,CAAES,WAAW,CAACH,QAAQ,CAAC;IAE7C,OAAO,MAAMN,UAAU,aAAVA,UAAU,uBAAVA,UAAU,CAAEU,cAAc,CAACF,GAAG,CAAC;EAC9C,CAAC,EAAE,CAACb,MAAM,EAAEK,UAAU,CAAC,CAAC;EAExB,MAAMW,WAAW,GAAG5B,IAAI,IAAI,CAACI,SAAS;EAEtC,oBACE,oBAAC,sBAAS;IACR,QAAQ;IACR,QAAQ,EAAEE,WAAW,IAAIsB,WAAW,GAAG,cAAc,GAAG;EAAgB,EACxE;AAEN"}