@hanzogui/sheet 7.3.0 → 8.0.0

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 (229) hide show
  1. package/.turbo/turbo-build.log +2 -0
  2. package/controller/index.cjs +2 -0
  3. package/controller/index.d.ts +5 -0
  4. package/controller/index.js +2 -0
  5. package/controller/index.native.cjs +2 -0
  6. package/controller/index.native.js +2 -0
  7. package/dist/cjs/GestureDetectorWrapper.native.js.map +1 -1
  8. package/dist/cjs/SheetImplementationCustom.cjs +137 -74
  9. package/dist/cjs/SheetImplementationCustom.native.js +162 -83
  10. package/dist/cjs/SheetImplementationCustom.native.js.map +1 -1
  11. package/dist/cjs/SheetScrollView.cjs +155 -34
  12. package/dist/cjs/SheetScrollView.native.js +160 -35
  13. package/dist/cjs/SheetScrollView.native.js.map +1 -1
  14. package/dist/cjs/createSheet.cjs +7 -3
  15. package/dist/cjs/createSheet.native.js +7 -3
  16. package/dist/cjs/createSheet.native.js.map +1 -1
  17. package/dist/cjs/gestureState.cjs +13 -2
  18. package/dist/cjs/gestureState.native.js +14 -2
  19. package/dist/cjs/gestureState.native.js.map +1 -1
  20. package/dist/cjs/index.cjs +12 -1
  21. package/dist/cjs/index.native.js +11 -0
  22. package/dist/cjs/index.native.js.map +1 -1
  23. package/dist/cjs/keyboardAvoidance.cjs +93 -0
  24. package/dist/cjs/keyboardAvoidance.native.js +99 -0
  25. package/dist/cjs/keyboardAvoidance.native.js.map +1 -0
  26. package/dist/cjs/nativeSheet.cjs +3 -0
  27. package/dist/cjs/nativeSheet.native.js +3 -0
  28. package/dist/cjs/nativeSheet.native.js.map +1 -1
  29. package/dist/cjs/setupGestureHandler.cjs +9 -6
  30. package/dist/cjs/setupGestureHandler.native.js +11 -6
  31. package/dist/cjs/setupGestureHandler.native.js.map +1 -1
  32. package/dist/cjs/useGestureHandlerPan.cjs +86 -18
  33. package/dist/cjs/useGestureHandlerPan.native.js +91 -18
  34. package/dist/cjs/useGestureHandlerPan.native.js.map +1 -1
  35. package/dist/cjs/useKeyboardControllerSheet.cjs +68 -6
  36. package/dist/cjs/useSafeAreaInsets.cjs +44 -0
  37. package/dist/cjs/useSafeAreaInsets.native.js +48 -0
  38. package/dist/cjs/useSafeAreaInsets.native.js.map +1 -0
  39. package/dist/cjs/useSheetProviderProps.cjs +1 -1
  40. package/dist/cjs/useSheetProviderProps.native.js +1 -1
  41. package/dist/cjs/useSheetProviderProps.native.js.map +1 -1
  42. package/dist/cjs/useSheetScrollViewGestures.cjs +30 -5
  43. package/dist/cjs/useSheetScrollViewGestures.native.js +4 -0
  44. package/dist/cjs/useSheetScrollViewGestures.native.js.map +1 -1
  45. package/dist/cjs/webViewport.cjs +75 -0
  46. package/dist/cjs/webViewport.native.js +81 -0
  47. package/dist/cjs/webViewport.native.js.map +1 -0
  48. package/dist/esm/GestureDetectorWrapper.mjs.map +1 -1
  49. package/dist/esm/GestureDetectorWrapper.native.js.map +1 -1
  50. package/dist/esm/SheetImplementationCustom.mjs +143 -84
  51. package/dist/esm/SheetImplementationCustom.mjs.map +1 -1
  52. package/dist/esm/SheetImplementationCustom.native.js +173 -102
  53. package/dist/esm/SheetImplementationCustom.native.js.map +1 -1
  54. package/dist/esm/SheetScrollView.mjs +157 -36
  55. package/dist/esm/SheetScrollView.mjs.map +1 -1
  56. package/dist/esm/SheetScrollView.native.js +162 -37
  57. package/dist/esm/SheetScrollView.native.js.map +1 -1
  58. package/dist/esm/createSheet.mjs +9 -6
  59. package/dist/esm/createSheet.mjs.map +1 -1
  60. package/dist/esm/createSheet.native.js +19 -15
  61. package/dist/esm/createSheet.native.js.map +1 -1
  62. package/dist/esm/gestureState.mjs +13 -2
  63. package/dist/esm/gestureState.mjs.map +1 -1
  64. package/dist/esm/gestureState.native.js +14 -2
  65. package/dist/esm/gestureState.native.js.map +1 -1
  66. package/dist/esm/index.js +2 -0
  67. package/dist/esm/index.js.map +1 -1
  68. package/dist/esm/index.mjs +2 -0
  69. package/dist/esm/index.mjs.map +1 -1
  70. package/dist/esm/index.native.js +2 -0
  71. package/dist/esm/index.native.js.map +1 -1
  72. package/dist/esm/keyboardAvoidance.mjs +66 -0
  73. package/dist/esm/keyboardAvoidance.mjs.map +1 -0
  74. package/dist/esm/keyboardAvoidance.native.js +69 -0
  75. package/dist/esm/keyboardAvoidance.native.js.map +1 -0
  76. package/dist/esm/nativeSheet.mjs +3 -0
  77. package/dist/esm/nativeSheet.mjs.map +1 -1
  78. package/dist/esm/nativeSheet.native.js +3 -0
  79. package/dist/esm/nativeSheet.native.js.map +1 -1
  80. package/dist/esm/setupGestureHandler.mjs +9 -6
  81. package/dist/esm/setupGestureHandler.mjs.map +1 -1
  82. package/dist/esm/setupGestureHandler.native.js +11 -6
  83. package/dist/esm/setupGestureHandler.native.js.map +1 -1
  84. package/dist/esm/useGestureHandlerPan.mjs +87 -19
  85. package/dist/esm/useGestureHandlerPan.mjs.map +1 -1
  86. package/dist/esm/useGestureHandlerPan.native.js +92 -19
  87. package/dist/esm/useGestureHandlerPan.native.js.map +1 -1
  88. package/dist/esm/useKeyboardControllerSheet.mjs +69 -7
  89. package/dist/esm/useKeyboardControllerSheet.mjs.map +1 -1
  90. package/dist/esm/useSafeAreaInsets.mjs +7 -0
  91. package/dist/esm/useSafeAreaInsets.mjs.map +1 -0
  92. package/dist/esm/useSafeAreaInsets.native.js +8 -0
  93. package/dist/esm/useSafeAreaInsets.native.js.map +1 -0
  94. package/dist/esm/useSheetProviderProps.mjs +1 -1
  95. package/dist/esm/useSheetProviderProps.mjs.map +1 -1
  96. package/dist/esm/useSheetProviderProps.native.js +1 -1
  97. package/dist/esm/useSheetProviderProps.native.js.map +1 -1
  98. package/dist/esm/useSheetScrollViewGestures.mjs +30 -5
  99. package/dist/esm/useSheetScrollViewGestures.mjs.map +1 -1
  100. package/dist/esm/useSheetScrollViewGestures.native.js +4 -0
  101. package/dist/esm/useSheetScrollViewGestures.native.js.map +1 -1
  102. package/dist/esm/webViewport.mjs +43 -0
  103. package/dist/esm/webViewport.mjs.map +1 -0
  104. package/dist/esm/webViewport.native.js +46 -0
  105. package/dist/esm/webViewport.native.js.map +1 -0
  106. package/dist/jsx/GestureDetectorWrapper.mjs.map +1 -1
  107. package/dist/jsx/GestureDetectorWrapper.native.js.map +1 -1
  108. package/dist/jsx/SheetImplementationCustom.mjs +143 -84
  109. package/dist/jsx/SheetImplementationCustom.mjs.map +1 -1
  110. package/dist/jsx/SheetImplementationCustom.native.js +162 -83
  111. package/dist/jsx/SheetImplementationCustom.native.js.map +1 -1
  112. package/dist/jsx/SheetScrollView.mjs +157 -36
  113. package/dist/jsx/SheetScrollView.mjs.map +1 -1
  114. package/dist/jsx/SheetScrollView.native.js +160 -35
  115. package/dist/jsx/SheetScrollView.native.js.map +1 -1
  116. package/dist/jsx/createSheet.mjs +9 -6
  117. package/dist/jsx/createSheet.mjs.map +1 -1
  118. package/dist/jsx/createSheet.native.js +7 -3
  119. package/dist/jsx/createSheet.native.js.map +1 -1
  120. package/dist/jsx/gestureState.mjs +13 -2
  121. package/dist/jsx/gestureState.mjs.map +1 -1
  122. package/dist/jsx/gestureState.native.js +14 -2
  123. package/dist/jsx/gestureState.native.js.map +1 -1
  124. package/dist/jsx/index.js +2 -0
  125. package/dist/jsx/index.js.map +1 -1
  126. package/dist/jsx/index.mjs +2 -0
  127. package/dist/jsx/index.mjs.map +1 -1
  128. package/dist/jsx/index.native.js +11 -0
  129. package/dist/jsx/index.native.js.map +1 -1
  130. package/dist/jsx/keyboardAvoidance.mjs +66 -0
  131. package/dist/jsx/keyboardAvoidance.mjs.map +1 -0
  132. package/dist/jsx/keyboardAvoidance.native.js +99 -0
  133. package/dist/jsx/keyboardAvoidance.native.js.map +1 -0
  134. package/dist/jsx/nativeSheet.mjs +3 -0
  135. package/dist/jsx/nativeSheet.mjs.map +1 -1
  136. package/dist/jsx/nativeSheet.native.js +3 -0
  137. package/dist/jsx/nativeSheet.native.js.map +1 -1
  138. package/dist/jsx/setupGestureHandler.mjs +9 -6
  139. package/dist/jsx/setupGestureHandler.mjs.map +1 -1
  140. package/dist/jsx/setupGestureHandler.native.js +11 -6
  141. package/dist/jsx/setupGestureHandler.native.js.map +1 -1
  142. package/dist/jsx/useGestureHandlerPan.mjs +87 -19
  143. package/dist/jsx/useGestureHandlerPan.mjs.map +1 -1
  144. package/dist/jsx/useGestureHandlerPan.native.js +91 -18
  145. package/dist/jsx/useGestureHandlerPan.native.js.map +1 -1
  146. package/dist/jsx/useKeyboardControllerSheet.mjs +69 -7
  147. package/dist/jsx/useKeyboardControllerSheet.mjs.map +1 -1
  148. package/dist/jsx/useSafeAreaInsets.mjs +7 -0
  149. package/dist/jsx/useSafeAreaInsets.mjs.map +1 -0
  150. package/dist/jsx/useSafeAreaInsets.native.js +48 -0
  151. package/dist/jsx/useSafeAreaInsets.native.js.map +1 -0
  152. package/dist/jsx/useSheetProviderProps.mjs +1 -1
  153. package/dist/jsx/useSheetProviderProps.mjs.map +1 -1
  154. package/dist/jsx/useSheetProviderProps.native.js +1 -1
  155. package/dist/jsx/useSheetProviderProps.native.js.map +1 -1
  156. package/dist/jsx/useSheetScrollViewGestures.mjs +30 -5
  157. package/dist/jsx/useSheetScrollViewGestures.mjs.map +1 -1
  158. package/dist/jsx/useSheetScrollViewGestures.native.js +4 -0
  159. package/dist/jsx/useSheetScrollViewGestures.native.js.map +1 -1
  160. package/dist/jsx/webViewport.mjs +43 -0
  161. package/dist/jsx/webViewport.mjs.map +1 -0
  162. package/dist/jsx/webViewport.native.js +81 -0
  163. package/dist/jsx/webViewport.native.js.map +1 -0
  164. package/next.md +78 -0
  165. package/package.json +30 -48
  166. package/setup-gesture-handler/index.cjs +2 -0
  167. package/setup-gesture-handler/index.js +2 -0
  168. package/setup-gesture-handler/index.native.cjs +2 -0
  169. package/setup-gesture-handler/index.native.js +2 -0
  170. package/src/GestureDetectorWrapper.tsx +0 -3
  171. package/src/SheetImplementationCustom.tsx +387 -127
  172. package/src/SheetScrollView.tsx +195 -22
  173. package/src/createSheet.tsx +20 -7
  174. package/src/gestureState.ts +22 -2
  175. package/src/index.ts +4 -0
  176. package/src/keyboardAvoidance.ts +121 -0
  177. package/src/nativeSheet.tsx +8 -1
  178. package/src/setupGestureHandler.ts +14 -5
  179. package/src/types.tsx +20 -1
  180. package/src/useGestureHandlerPan.tsx +94 -35
  181. package/src/useKeyboardControllerSheet.ts +127 -10
  182. package/src/useSafeAreaInsets.native.ts +29 -0
  183. package/src/useSafeAreaInsets.ts +19 -0
  184. package/src/useSheetProviderProps.tsx +12 -1
  185. package/src/useSheetScrollViewGestures.native.ts +4 -0
  186. package/src/useSheetScrollViewGestures.ts +52 -5
  187. package/src/webViewport.ts +100 -0
  188. package/test/keyboardAvoidance.test.ts +269 -0
  189. package/tsconfig.json +57 -0
  190. package/types/GestureDetectorWrapper.d.ts +1 -1
  191. package/types/GestureDetectorWrapper.d.ts.map +1 -1
  192. package/types/GestureSheetContext.d.ts +1 -1
  193. package/types/GestureSheetContext.d.ts.map +1 -1
  194. package/types/Sheet.d.ts +6 -5
  195. package/types/Sheet.d.ts.map +1 -1
  196. package/types/SheetContext.d.ts +5 -2
  197. package/types/SheetContext.d.ts.map +1 -1
  198. package/types/SheetController.d.ts +1 -2
  199. package/types/SheetController.d.ts.map +1 -1
  200. package/types/SheetImplementationCustom.d.ts +1 -0
  201. package/types/SheetImplementationCustom.d.ts.map +1 -1
  202. package/types/SheetScrollView.d.ts.map +1 -1
  203. package/types/createSheet.d.ts +13 -12
  204. package/types/createSheet.d.ts.map +1 -1
  205. package/types/gestureState.d.ts.map +1 -1
  206. package/types/index.d.ts +1 -0
  207. package/types/index.d.ts.map +1 -1
  208. package/types/keyboardAvoidance.d.ts +26 -0
  209. package/types/keyboardAvoidance.d.ts.map +1 -0
  210. package/types/nativeSheet.d.ts.map +1 -1
  211. package/types/setupGestureHandler.d.ts.map +1 -1
  212. package/types/types.d.ts +10 -1
  213. package/types/types.d.ts.map +1 -1
  214. package/types/useGestureHandlerPan.d.ts +4 -1
  215. package/types/useGestureHandlerPan.d.ts.map +1 -1
  216. package/types/useKeyboardControllerSheet.d.ts +14 -3
  217. package/types/useKeyboardControllerSheet.d.ts.map +1 -1
  218. package/types/useSafeAreaInsets.d.ts +10 -0
  219. package/types/useSafeAreaInsets.d.ts.map +1 -0
  220. package/types/useSafeAreaInsets.native.d.ts +20 -0
  221. package/types/useSafeAreaInsets.native.d.ts.map +1 -0
  222. package/types/useSheetProviderProps.d.ts +3 -0
  223. package/types/useSheetProviderProps.d.ts.map +1 -1
  224. package/types/useSheetScrollViewGestures.d.ts +2 -1
  225. package/types/useSheetScrollViewGestures.d.ts.map +1 -1
  226. package/types/useSheetScrollViewGestures.native.d.ts.map +1 -1
  227. package/types/webViewport.d.ts +36 -0
  228. package/types/webViewport.d.ts.map +1 -0
  229. package/LICENSE +0 -42
@@ -44,29 +44,41 @@ var import_animate_presence = require("@hanzogui/animate-presence");
44
44
  var import_compose_refs = require("@hanzogui/compose-refs");
45
45
  var import_constants = require("@hanzogui/constants");
46
46
  var import_core = require("@hanzogui/core");
47
- var import_native = require("@hanzogui/native");
48
47
  var import_portal = require("@hanzogui/portal");
49
48
  var import_react = __toESM(require("react"), 1);
50
49
  var import_react_native = require("react-native");
51
50
  var import_contexts = require("./contexts.native.js");
52
51
  var import_GestureDetectorWrapper = require("./GestureDetectorWrapper.native.js");
52
+ var import_gestureState = require("./gestureState.native.js");
53
53
  var import_GestureSheetContext = require("./GestureSheetContext.native.js");
54
54
  var import_helpers = require("./helpers.native.js");
55
+ var import_keyboardAvoidance = require("./keyboardAvoidance.native.js");
56
+ var import_webViewport = require("./webViewport.native.js");
55
57
  var import_SheetContext = require("./SheetContext.native.js");
56
58
  var import_useGestureHandlerPan = require("./useGestureHandlerPan.native.js");
57
59
  var import_useKeyboardControllerSheet = require("./useKeyboardControllerSheet.native.js");
60
+ var import_useSafeAreaInsets = require("./useSafeAreaInsets.native.js");
58
61
  var import_useSheetOpenState = require("./useSheetOpenState.native.js");
59
62
  var import_useSheetProviderProps = require("./useSheetProviderProps.native.js");
60
63
  var hiddenSize = 10000.1;
61
- var _cachedSafeAreaTop;
62
- function getSafeAreaTopInset() {
63
- if (_cachedSafeAreaTop !== void 0) return _cachedSafeAreaTop;
64
- _cachedSafeAreaTop = (0, import_native.getSafeArea)().getInsets().top;
65
- return _cachedSafeAreaTop;
66
- }
64
+ var rnghRootStyleOpen = {
65
+ width: "100%",
66
+ height: "100%"
67
+ };
68
+ var rnghRootStyleClosed = {
69
+ width: "100%",
70
+ height: 0
71
+ };
67
72
  var relativeDimensionTo = import_constants.isWeb ? "window" : "screen";
73
+ function getStableViewportHeight() {
74
+ if (import_constants.isWeb && typeof window !== "undefined") return (0, import_webViewport.getStableLayoutViewportHeight)();
75
+ return import_react_native.Dimensions.get(relativeDimensionTo).height;
76
+ }
68
77
  var SheetImplementationCustom = /* @__PURE__ */import_react.default.forwardRef(function SheetImplementationCustom2(props, forwardedRef) {
69
78
  var parentSheet = import_react.default.useContext(import_contexts.ParentSheetContext);
79
+ var safeAreaInsets = (0, import_useSafeAreaInsets.useSafeAreaInsets)();
80
+ var _safeAreaInsets_top;
81
+ var safeAreaTopInset = (_safeAreaInsets_top = safeAreaInsets === null || safeAreaInsets === void 0 ? void 0 : safeAreaInsets.top) !== null && _safeAreaInsets_top !== void 0 ? _safeAreaInsets_top : 0;
70
82
  var {
71
83
  transition,
72
84
  transitionConfig: transitionConfigProp,
@@ -74,6 +86,7 @@ var SheetImplementationCustom = /* @__PURE__ */import_react.default.forwardRef(f
74
86
  zIndex = parentSheet.zIndex + 1,
75
87
  moveOnKeyboardChange = false,
76
88
  unmountChildrenWhenHidden = false,
89
+ disableTransparencyHide = false,
77
90
  portalProps,
78
91
  containerComponent: ContainerComponent = import_react.default.Fragment,
79
92
  onAnimationComplete
@@ -86,6 +99,7 @@ var SheetImplementationCustom = /* @__PURE__ */import_react.default.forwardRef(f
86
99
  var {
87
100
  frameSize,
88
101
  setFrameSize,
102
+ dismissOnSnapToBottom,
89
103
  snapPoints,
90
104
  snapPointsMode,
91
105
  hasFit,
@@ -125,16 +139,6 @@ var SheetImplementationCustom = /* @__PURE__ */import_react.default.forwardRef(f
125
139
  var onInnerSheet = import_react.default.useCallback(function (hasChild) {
126
140
  setIsShowingInnerSheet(hasChild);
127
141
  }, []);
128
- var stableFrameSize = import_react.default.useRef(frameSize);
129
- import_react.default.useEffect(function () {
130
- if (open && frameSize) stableFrameSize.current = frameSize;
131
- }, [open, frameSize]);
132
- var effectiveFrameSize = open ? frameSize : stableFrameSize.current || frameSize;
133
- var positions = import_react.default.useMemo(function () {
134
- return snapPoints.map(function (point) {
135
- return getYPositions(snapPointsMode, point, screenSize, effectiveFrameSize);
136
- });
137
- }, [screenSize, effectiveFrameSize, snapPoints, snapPointsMode]);
138
142
  var {
139
143
  keyboardHeight,
140
144
  isKeyboardVisible,
@@ -142,8 +146,25 @@ var SheetImplementationCustom = /* @__PURE__ */import_react.default.forwardRef(f
142
146
  pauseKeyboardHandler,
143
147
  flushPendingHide
144
148
  } = (0, import_useKeyboardControllerSheet.useKeyboardControllerSheet)({
145
- enabled: !import_constants.isWeb && Boolean(moveOnKeyboardChange)
149
+ enabled: Boolean(moveOnKeyboardChange)
146
150
  });
151
+ var stableFrameSize = import_react.default.useRef(frameSize);
152
+ import_react.default.useEffect(function () {
153
+ if (open && frameSize) stableFrameSize.current = frameSize;
154
+ }, [open, frameSize]);
155
+ var isWebKbSheet = import_constants.isWeb && hasFit && moveOnKeyboardChange;
156
+ var isNativeKbFitSheet = !import_constants.isWeb && hasFit && Boolean(moveOnKeyboardChange);
157
+ var preKeyboardFrameSize = import_react.default.useRef(0);
158
+ import_react.default.useEffect(function () {
159
+ if (isNativeKbFitSheet && open && !isKeyboardVisible && frameSize > 0) preKeyboardFrameSize.current = frameSize;
160
+ }, [isNativeKbFitSheet, open, isKeyboardVisible, frameSize]);
161
+ var effScreenSize = isWebKbSheet ? getStableViewportHeight() : screenSize;
162
+ var effectiveFrameSize = open ? frameSize : stableFrameSize.current || frameSize;
163
+ var positions = import_react.default.useMemo(function () {
164
+ return snapPoints.map(function (point) {
165
+ return getYPositions(snapPointsMode, point, effScreenSize, effectiveFrameSize);
166
+ });
167
+ }, [effScreenSize, effectiveFrameSize, snapPoints, snapPointsMode]);
147
168
  var [isDragging, setIsDragging_] = import_react.default.useState(false);
148
169
  var isDraggingRef = import_react.default.useRef(false);
149
170
  var setIsDragging = import_react.default.useCallback(function (val) {
@@ -156,20 +177,30 @@ var SheetImplementationCustom = /* @__PURE__ */import_react.default.forwardRef(f
156
177
  var activePositions = import_react.default.useMemo(function () {
157
178
  if (isDragging || isDraggingRef.current) return activePositionsRef.current;
158
179
  var result;
159
- if (!isKeyboardVisible || keyboardHeight <= 0) result = positions;else {
160
- var safeAreaTop = import_constants.isWeb ? 0 : getSafeAreaTopInset();
161
- result = positions.map(function (p) {
162
- if (screenSize && p >= screenSize) return p;
163
- return Math.max(safeAreaTop, p - keyboardHeight);
180
+ if (!isKeyboardVisible || keyboardHeight <= 0) result = positions;else result = positions.map(function (p) {
181
+ return (0, import_keyboardAvoidance.getKeyboardAdjustedSheetY)({
182
+ sheetY: p,
183
+ screenSize: effScreenSize,
184
+ isKeyboardVisible,
185
+ keyboardHeight,
186
+ shouldTranslate: true,
187
+ safeAreaTop: import_constants.isWeb ? (0, import_webViewport.getWebVisualViewportOffsetTop)() : safeAreaTopInset
164
188
  });
165
- }
189
+ });
166
190
  activePositionsRef.current = result;
167
191
  return result;
168
- }, [positions, isKeyboardVisible, keyboardHeight, screenSize, isDragging]);
192
+ }, [positions, isKeyboardVisible, keyboardHeight, effScreenSize, isDragging, safeAreaTopInset]);
193
+ var keyboardOccludedHeight = (0, import_keyboardAvoidance.getKeyboardOccludedHeight)({
194
+ frameSize: effectiveFrameSize,
195
+ isKeyboardVisible,
196
+ keyboardHeight,
197
+ screenSize: effScreenSize,
198
+ sheetY: position >= 0 ? activePositions[position] : void 0
199
+ });
200
+ var keyboardStableFrameHeight = isWebKbSheet && isKeyboardVisible && frameSize > 0 ? frameSize : isNativeKbFitSheet && isKeyboardVisible && preKeyboardFrameSize.current > 0 ? preKeyboardFrameSize.current : 0;
169
201
  var {
170
202
  useAnimatedNumber,
171
- useAnimatedNumberStyle,
172
- useAnimatedNumberReaction
203
+ useAnimatedNumberStyle
173
204
  } = animationDriver;
174
205
  var _animationDriver_View;
175
206
  var AnimatedView = (_animationDriver_View = animationDriver.View) !== null && _animationDriver_View !== void 0 ? _animationDriver_View : import_core.View;
@@ -194,33 +225,51 @@ var SheetImplementationCustom = /* @__PURE__ */import_react.default.forwardRef(f
194
225
  if (controller === null || controller === void 0 ? void 0 : controller.skipNextAnimation) skipAdaptAnimation.current = true;
195
226
  var hasScrollView = import_react.default.useRef(false);
196
227
  var opacityFallbackTimer = import_react.default.useRef(null);
197
- useAnimatedNumberReaction({
198
- value: animatedNumber,
199
- hostRef: sheetRef
200
- }, import_react.default.useCallback(function (value) {
228
+ var syncAnimatedPosition = (0, import_core.useEvent)(function (value) {
201
229
  at.current = value;
202
230
  scrollBridge.paneY = value;
203
231
  var minY = activePositions[0];
204
232
  var wasAtTop = scrollBridge.isAtTop;
205
233
  var nowAtTop = value <= minY + 5;
206
- if (wasAtTop !== nowAtTop) {
207
- scrollBridge.isAtTop = nowAtTop;
208
- if (nowAtTop) {
209
- var _scrollBridge_setScrollEnabled;
234
+ if (wasAtTop === nowAtTop) return;
235
+ scrollBridge.isAtTop = nowAtTop;
236
+ if (nowAtTop) {
237
+ var _scrollBridge_setScrollEnabled;
238
+ if (scrollBridge.lockScrollAtTop) {
239
+ var _scrollBridge_setScrollEnabled1;
210
240
  if (scrollBridge.y > 0) {
211
241
  var _scrollBridge_forceScrollTo;
212
242
  (_scrollBridge_forceScrollTo = scrollBridge.forceScrollTo) === null || _scrollBridge_forceScrollTo === void 0 || _scrollBridge_forceScrollTo.call(scrollBridge, 0);
213
243
  scrollBridge.y = 0;
214
244
  }
215
- scrollBridge.scrollLockY = void 0;
216
- (_scrollBridge_setScrollEnabled = scrollBridge.setScrollEnabled) === null || _scrollBridge_setScrollEnabled === void 0 || _scrollBridge_setScrollEnabled.call(scrollBridge, true);
217
- } else {
218
- var _scrollBridge_setScrollEnabled1;
219
245
  scrollBridge.scrollLockY = 0;
220
- (_scrollBridge_setScrollEnabled1 = scrollBridge.setScrollEnabled) === null || _scrollBridge_setScrollEnabled1 === void 0 || _scrollBridge_setScrollEnabled1.call(scrollBridge, false);
246
+ (_scrollBridge_setScrollEnabled1 = scrollBridge.setScrollEnabled) === null || _scrollBridge_setScrollEnabled1 === void 0 || _scrollBridge_setScrollEnabled1.call(scrollBridge, false, 0);
247
+ return;
221
248
  }
249
+ if (scrollBridge.y > 0) {
250
+ var _scrollBridge_forceScrollTo1;
251
+ (_scrollBridge_forceScrollTo1 = scrollBridge.forceScrollTo) === null || _scrollBridge_forceScrollTo1 === void 0 || _scrollBridge_forceScrollTo1.call(scrollBridge, 0);
252
+ scrollBridge.y = 0;
253
+ }
254
+ scrollBridge.scrollLockY = void 0;
255
+ (_scrollBridge_setScrollEnabled = scrollBridge.setScrollEnabled) === null || _scrollBridge_setScrollEnabled === void 0 || _scrollBridge_setScrollEnabled.call(scrollBridge, true);
256
+ } else {
257
+ var _scrollBridge_setScrollEnabled2;
258
+ scrollBridge.scrollLockY = 0;
259
+ (_scrollBridge_setScrollEnabled2 = scrollBridge.setScrollEnabled) === null || _scrollBridge_setScrollEnabled2 === void 0 || _scrollBridge_setScrollEnabled2.call(scrollBridge, false);
222
260
  }
223
- }, [animationDriver, activePositions]));
261
+ });
262
+ var setAnimatedPositionDirect = (0, import_core.useEvent)(function (value) {
263
+ syncAnimatedPosition(value);
264
+ animatedNumber.setValue(value, {
265
+ type: "direct"
266
+ });
267
+ });
268
+ var getAnimatedPosition = (0, import_core.useEvent)(function () {
269
+ var value = animatedNumber.getValue();
270
+ syncAnimatedPosition(value);
271
+ return value;
272
+ });
224
273
  function stopSpring() {
225
274
  animatedNumber.stop();
226
275
  if (scrollBridge.onFinishAnimate) {
@@ -230,7 +279,8 @@ var SheetImplementationCustom = /* @__PURE__ */import_react.default.forwardRef(f
230
279
  }
231
280
  var animateTo = (0, import_core.useEvent)(function (position2, animationOverride) {
232
281
  if (frameSize === 0) return;
233
- var toValue = isHidden || position2 === -1 ? screenSize : activePositions[position2];
282
+ var closeTarget = import_constants.isWeb ? Math.max(effScreenSize, (0, import_webViewport.getMaxViewportHeight)()) : effScreenSize;
283
+ var toValue = isHidden || position2 === -1 ? closeTarget : activePositions[position2];
234
284
  if (at.current === toValue) return;
235
285
  at.current = toValue;
236
286
  stopSpring();
@@ -241,6 +291,7 @@ var SheetImplementationCustom = /* @__PURE__ */import_react.default.forwardRef(f
241
291
  }
242
292
  var animationCompleteCallback = function () {
243
293
  var _controller_onAnimationComplete;
294
+ syncAnimatedPosition(toValue);
244
295
  if (opacityFallbackTimer.current) {
245
296
  clearTimeout(opacityFallbackTimer.current);
246
297
  opacityFallbackTimer.current = null;
@@ -277,6 +328,7 @@ var SheetImplementationCustom = /* @__PURE__ */import_react.default.forwardRef(f
277
328
  type: "timing",
278
329
  duration: 0
279
330
  }, function () {
331
+ syncAnimatedPosition(screenSize);
280
332
  setTimeout(function () {
281
333
  setDisableAnimation(false);
282
334
  }, 10);
@@ -284,6 +336,7 @@ var SheetImplementationCustom = /* @__PURE__ */import_react.default.forwardRef(f
284
336
  return;
285
337
  }
286
338
  if (disableAnimation) return;
339
+ if (isDraggingRef.current) return;
287
340
  if (!frameSize || !screenSize || isHidden || hasntMeasured && !open) return;
288
341
  animateTo(position);
289
342
  if (position === -1) {
@@ -303,7 +356,12 @@ var SheetImplementationCustom = /* @__PURE__ */import_react.default.forwardRef(f
303
356
  (_scrollBridge_setScrollEnabled1 = scrollBridge.setScrollEnabled) === null || _scrollBridge_setScrollEnabled1 === void 0 || _scrollBridge_setScrollEnabled1.call(scrollBridge, false);
304
357
  }
305
358
  }
306
- }, [hasntMeasured, disableAnimation, isHidden, frameSize, screenSize, open, position]);
359
+ },
360
+ // NOTE: effScreenSize/effectiveFrameSize are intentionally NOT deps. With the
361
+ // spacer approach the frame's position target is frozen across keyboard
362
+ // open/close (same stable baseline), so it must NOT re-animate — keyboard
363
+ // avoidance is the bottom spacer + scroll, not a frame move.
364
+ [hasntMeasured, disableAnimation, isHidden, frameSize, screenSize, open, position]);
307
365
  var _props_disableDrag;
308
366
  var disableDrag = (_props_disableDrag = props.disableDrag) !== null && _props_disableDrag !== void 0 ? _props_disableDrag : controller === null || controller === void 0 ? void 0 : controller.disableDrag;
309
367
  (0, import_core.useThemeName)();
@@ -312,7 +370,7 @@ var SheetImplementationCustom = /* @__PURE__ */import_react.default.forwardRef(f
312
370
  if (disableDrag) return;
313
371
  if (!frameSize) return;
314
372
  if (isShowingInnerSheet) return;
315
- var minY = positions[0];
373
+ var minY = activePositions[0];
316
374
  scrollBridge.paneMinY = minY;
317
375
  var startY = at.current;
318
376
  function setPanning(val) {
@@ -327,17 +385,18 @@ var SheetImplementationCustom = /* @__PURE__ */import_react.default.forwardRef(f
327
385
  isExternalDrag = false;
328
386
  previouslyScrolling = false;
329
387
  setPanning(false);
330
- var end = at.current + frameSize * vy * .2;
331
- var closestPoint = 0;
332
- var dist = Number.POSITIVE_INFINITY;
333
- for (var i = 0; i < positions.length; i++) {
334
- var position2 = positions[i];
335
- var curDist = end > position2 ? end - position2 : position2 - end;
336
- if (curDist < dist) {
337
- dist = curDist;
338
- closestPoint = i;
339
- }
340
- }
388
+ var currentPos = at.current;
389
+ var end = currentPos + frameSize * vy * .2;
390
+ var closestPoint = (0, import_keyboardAvoidance.getSheetReleasePosition)({
391
+ positions: activePositions,
392
+ projectedEnd: end,
393
+ currentPosition: currentPos,
394
+ frameSize,
395
+ dismissOnSnapToBottom,
396
+ snapPointsMode,
397
+ isKeyboardVisible,
398
+ isWeb: import_constants.isWeb
399
+ });
341
400
  setPosition(closestPoint);
342
401
  animateTo(closestPoint);
343
402
  };
@@ -354,6 +413,7 @@ var SheetImplementationCustom = /* @__PURE__ */import_react.default.forwardRef(f
354
413
  } = param;
355
414
  function getShouldSet() {
356
415
  if (e.target === providerProps.handleRef.current) return true;
416
+ if (scrollBridge.scrollNodeTouched) return false;
357
417
  if (scrollBridge.hasScrollableContent === true) {
358
418
  if (scrollBridge.scrollLock) return false;
359
419
  var isScrolled = scrollBridge.y !== 0;
@@ -373,18 +433,20 @@ var SheetImplementationCustom = /* @__PURE__ */import_react.default.forwardRef(f
373
433
  var grant = function () {
374
434
  setPanning(true);
375
435
  stopSpring();
376
- startY = at.current;
436
+ startY = getAnimatedPosition();
377
437
  };
378
438
  var isExternalDrag = false;
439
+ scrollBridge.startPanDrag = function () {
440
+ isExternalDrag = true;
441
+ grant();
442
+ };
379
443
  scrollBridge.drag = function (dy) {
380
444
  if (!isExternalDrag) {
381
445
  isExternalDrag = true;
382
446
  grant();
383
447
  }
384
448
  var to = dy + startY;
385
- animatedNumber.setValue((0, import_helpers.resisted)(to, minY), {
386
- type: "direct"
387
- });
449
+ setAnimatedPositionDirect((0, import_helpers.resisted)(to, minY));
388
450
  };
389
451
  scrollBridge.release = release;
390
452
  scrollBridge.snapToPosition = function (positionIndex) {
@@ -395,6 +457,9 @@ var SheetImplementationCustom = /* @__PURE__ */import_react.default.forwardRef(f
395
457
  };
396
458
  return import_react_native.PanResponder.create({
397
459
  onMoveShouldSetPanResponder: onMoveShouldSet,
460
+ onPanResponderTerminationRequest: function () {
461
+ return false;
462
+ },
398
463
  onPanResponderGrant: grant,
399
464
  onPanResponderMove: function (_e, param) {
400
465
  var {
@@ -403,15 +468,13 @@ var SheetImplementationCustom = /* @__PURE__ */import_react.default.forwardRef(f
403
468
  var toFull = dy + startY;
404
469
  var to = (0, import_helpers.resisted)(toFull, minY);
405
470
  if (to <= minY) scrollBridge.setParentDragging(false);else scrollBridge.setParentDragging(true);
406
- animatedNumber.setValue(to, {
407
- type: "direct"
408
- });
471
+ setAnimatedPositionDirect(to);
409
472
  },
410
473
  onPanResponderEnd: finish,
411
474
  onPanResponderTerminate: finish,
412
475
  onPanResponderRelease: finish
413
476
  });
414
- }, [disableDrag, isShowingInnerSheet, animateTo, frameSize, positions, setPosition]);
477
+ }, [disableDrag, isShowingInnerSheet, animateTo, frameSize, activePositions, setPosition, dismissOnSnapToBottom, snapPointsMode]);
415
478
  import_react.default.useEffect(function () {
416
479
  if (isDragging || isHidden || !open || disableAnimation) return;
417
480
  if (!frameSize || !screenSize) return;
@@ -432,7 +495,11 @@ var SheetImplementationCustom = /* @__PURE__ */import_react.default.forwardRef(f
432
495
  animateTo(position);
433
496
  }, [isDragging]);
434
497
  import_react.default.useEffect(function () {
435
- if (!open && isKeyboardVisible) dismissKeyboard();
498
+ if (!open && isKeyboardVisible) {
499
+ dismissKeyboard();
500
+ pauseKeyboardHandler.current = false;
501
+ flushPendingHide();
502
+ }
436
503
  }, [open]);
437
504
  var {
438
505
  panGesture,
@@ -446,34 +513,35 @@ var SheetImplementationCustom = /* @__PURE__ */import_react.default.forwardRef(f
446
513
  stopSpring,
447
514
  scrollBridge,
448
515
  setIsDragging,
449
- getCurrentPosition: function () {
450
- return at.current;
451
- },
516
+ getCurrentPosition: getAnimatedPosition,
452
517
  resisted: import_helpers.resisted,
453
518
  disableDrag,
454
519
  isShowingInnerSheet,
455
- setAnimatedPosition: function (val) {
456
- at.current = val;
457
- animatedNumber.setValue(val, {
458
- type: "direct"
459
- });
460
- },
520
+ setAnimatedPosition: setAnimatedPositionDirect,
521
+ dismissOnSnapToBottom,
522
+ snapPointsMode,
523
+ isKeyboardVisible,
461
524
  pauseKeyboardHandler
462
525
  });
526
+ var ignoreLayoutForKeyboard = (0, import_core.useEvent)(function () {
527
+ return import_constants.isWeb && moveOnKeyboardChange && (0, import_webViewport.getWebKeyboardResizeHeight)() >= import_webViewport.MIN_KEYBOARD_HEIGHT;
528
+ });
463
529
  var handleAnimationViewLayout = (0, import_core.useEvent)(function (e) {
464
530
  var _e_nativeEvent;
465
531
  if (!open && stableFrameSize.current !== 0) return;
466
532
  var layoutHeight = (_e_nativeEvent = e.nativeEvent) === null || _e_nativeEvent === void 0 ? void 0 : _e_nativeEvent.layout.height;
467
- var next = modal ? Math.min(layoutHeight, import_react_native.Dimensions.get(relativeDimensionTo).height) : layoutHeight;
533
+ if (ignoreLayoutForKeyboard() && frameSize > 0) return;
534
+ var next = modal ? Math.min(layoutHeight, getStableViewportHeight()) : layoutHeight;
468
535
  if (!next) return;
469
- setFrameSize(next);
536
+ setFrameSize(Math.round(next));
470
537
  });
471
538
  var handleMaxContentViewLayout = import_react.default.useCallback(function (e) {
472
539
  var _e_nativeEvent;
473
- var next = Math.min((_e_nativeEvent = e.nativeEvent) === null || _e_nativeEvent === void 0 ? void 0 : _e_nativeEvent.layout.height, import_react_native.Dimensions.get(relativeDimensionTo).height);
540
+ if (ignoreLayoutForKeyboard() && screenSize > 0) return;
541
+ var next = Math.min((_e_nativeEvent = e.nativeEvent) === null || _e_nativeEvent === void 0 ? void 0 : _e_nativeEvent.layout.height, getStableViewportHeight());
474
542
  if (!next) return;
475
- setMaxContentSize(next);
476
- }, []);
543
+ setMaxContentSize(Math.round(next));
544
+ }, [ignoreLayoutForKeyboard, screenSize]);
477
545
  var animatedStyle = useAnimatedNumberStyle(animatedNumber, import_react.default.useCallback(function (val) {
478
546
  "worklet";
479
547
 
@@ -501,6 +569,9 @@ var SheetImplementationCustom = /* @__PURE__ */import_react.default.forwardRef(f
501
569
  value: nextParentContext,
502
570
  children: /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_SheetContext.SheetProvider, {
503
571
  ...providerProps,
572
+ keyboardOccludedHeight,
573
+ isKeyboardVisible,
574
+ keyboardStableFrameHeight,
504
575
  setHasScrollView,
505
576
  children: /* @__PURE__ */(0, import_jsx_runtime.jsxs)(import_GestureSheetContext.GestureSheetProvider, {
506
577
  isDragging,
@@ -535,7 +606,7 @@ var SheetImplementationCustom = /* @__PURE__ */import_react.default.forwardRef(f
535
606
  width: "100%",
536
607
  height: forcedContentHeight,
537
608
  minHeight: forcedContentHeight,
538
- opacity: !shouldHideParentSheet ? opacity : 0,
609
+ opacity: shouldHideParentSheet ? 0 : disableTransparencyHide ? 1 : opacity,
539
610
  ...((shouldHideParentSheet || !open) && {
540
611
  pointerEvents: "none"
541
612
  })
@@ -564,17 +635,25 @@ var SheetImplementationCustom = /* @__PURE__ */import_react.default.forwardRef(f
564
635
  var adaptContext = (0, import_adapt.useAdaptContext)();
565
636
  contents = /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_adapt.ProvideAdaptContext, {
566
637
  ...adaptContext,
567
- children: contents
638
+ children: /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_useSafeAreaInsets.SafeAreaInsetsContext.Provider, {
639
+ value: safeAreaInsets,
640
+ children: contents
641
+ })
568
642
  });
569
643
  }
570
644
  var shouldMountChildren = unmountChildrenWhenHidden ? !!opacity : true;
571
645
  if (modal) {
646
+ var RNGHRoot = (0, import_gestureState.getGestureHandlerState)().RootView;
647
+ var mountedContents = shouldMountChildren ? /* @__PURE__ */(0, import_jsx_runtime.jsx)(ContainerComponent, {
648
+ children: contents
649
+ }) : null;
572
650
  var modalContents = /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_portal.Portal, {
573
651
  stackZIndex: zIndex,
574
652
  ...portalProps,
575
- children: shouldMountChildren && /* @__PURE__ */(0, import_jsx_runtime.jsx)(ContainerComponent, {
576
- children: contents
577
- })
653
+ children: mountedContents && RNGHRoot ? /* @__PURE__ */(0, import_jsx_runtime.jsx)(RNGHRoot, {
654
+ style: open ? rnghRootStyleOpen : rnghRootStyleClosed,
655
+ children: mountedContents
656
+ }) : mountedContents
578
657
  });
579
658
  if (import_constants.isWeb) return modalContents;
580
659
  return /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_contexts.SheetInsideSheetContext.Provider, {
@@ -1 +1 @@
1
- {"version":3,"names":["isNodeMode","mod","__esModule","__defProp","target","value","enumerable","__toCommonJS","__copyProps","SheetImplementationCustom_exports","__export","SheetImplementationCustom","module","exports","import_jsx_runtime","require","import_adapt","import_animate_presence","import_compose_refs","import_constants","import_core","import_native","import_portal","import_react","__toESM","import_react_native","import_contexts","import_GestureDetectorWrapper","import_GestureSheetContext","import_helpers","import_SheetContext","import_useGestureHandlerPan","import_useKeyboardControllerSheet","import_useSheetOpenState","import_useSheetProviderProps","hiddenSize","_cachedSafeAreaTop","getSafeAreaTopInset","getSafeArea","getInsets","top","relativeDimensionTo","isWeb","default","forwardRef","SheetImplementationCustom2","props","forwardedRef","parentSheet","useContext","ParentSheetContext","transition","transitionConfig","transitionConfigProp","modal","zIndex","moveOnKeyboardChange","unmountChildrenWhenHidden","portalProps","containerComponent","ContainerComponent","Fragment","onAnimationComplete","state","useSheetOpenState","overlayComponent","setOverlayComponent","useState","providerProps","useSheetProviderProps","onOverlayComponent","frameSize","setFrameSize","snapPoints","snapPointsMode","hasFit","position","setPosition","scrollBridge","screenSize","setMaxContentSize","maxSnapPoint","open","controller","isHidden","openRef","useRef","current","sheetRef","ref","useComposedRefs","contentRef","animationDriver","useConfiguration","Error","_animationDriver_animations","animationProp","animationPropConfig","Array","isArray","animations","isShowingInnerSheet","setIsShowingInnerSheet","shouldHideParentSheet","needsPortalRepropagation","sheetInsideSheet","SheetInsideSheetContext","onInnerSheet","useCallback","hasChild","stableFrameSize","useEffect","effectiveFrameSize","positions","useMemo","map","point","getYPositions","keyboardHeight","isKeyboardVisible","dismissKeyboard","pauseKeyboardHandler","flushPendingHide","useKeyboardControllerSheet","enabled","Boolean","isDragging","setIsDragging_","isDraggingRef","setIsDragging","val","activePositionsRef","activePositions","result","safeAreaTop","p","Math","max","useAnimatedNumber","useAnimatedNumberStyle","useAnimatedNumberReaction","_animationDriver_View","AnimatedView","View","useIsomorphicLayoutEffect","nextParentContext","startPosition","useDidFinishSSR","animatedNumber","at","hasntMeasured","disableAnimation","setDisableAnimation","skipAdaptAnimation","skipNextAnimation","hasScrollView","opacityFallbackTimer","hostRef","paneY","minY","wasAtTop","isAtTop","nowAtTop","_scrollBridge_setScrollEnabled","y","_scrollBridge_forceScrollTo","forceScrollTo","call","scrollLockY","setScrollEnabled","_scrollBridge_setScrollEnabled1","stopSpring","stop","onFinishAnimate","animateTo","useEvent","position2","animationOverride","toValue","isOpenAnimation","clearTimeout","animationCompleteCallback","_controller_onAnimationComplete","setOpacity","setTimeout","setValue","type","duration","scrollLock","scrollStartY","isTopPosition","_props_disableDrag","disableDrag","useThemeName","blockPan","setBlockPan","panResponder","paneMinY","startY","setPanning","release","param","vy","setParentDragging","isExternalDrag","previouslyScrolling","end","closestPoint","dist","Number","POSITIVE_INFINITY","i","length","curDist","finish","_e","state2","dragAt","dy","onMoveShouldSet","e","getShouldSet","handleRef","hasScrollableContent","isScrolled","isDraggingUp","isNearTop","abs","granted","grant","drag","to","resisted","snapToPosition","positionIndex","PanResponder","create","onMoveShouldSetPanResponder","onPanResponderGrant","onPanResponderMove","toFull","onPanResponderEnd","onPanResponderTerminate","onPanResponderRelease","wasDragging","panGesture","panGestureRef","gestureHandlerEnabled","useGestureHandlerPan","getCurrentPosition","setAnimatedPosition","handleAnimationViewLayout","_e_nativeEvent","layoutHeight","nativeEvent","layout","height","next","min","Dimensions","get","handleMaxContentViewLayout","animatedStyle","transform","translateY","opacity","forcedContentHeight","setHasScrollView","contents","jsx","LayoutMeasurementController","disable","children","Provider","SheetProvider","jsxs","GestureSheetProvider","AnimatePresence","custom","style","left","right","bottom","pointerEvents","onLayout","disableClassName","width","minHeight","GestureDetectorWrapper","gesture","flex","panHandlers","adaptContext","useAdaptContext","ProvideAdaptContext","shouldMountChildren","modalContents","Portal","stackZIndex","mode","endsWith","pct","slice","isNaN","console","warn","round","pct1"],"sources":["../../src/SheetImplementationCustom.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["isNodeMode","mod","__esModule","__defProp","target","value","enumerable","__toCommonJS","__copyProps","SheetImplementationCustom_exports","__export","SheetImplementationCustom","module","exports","import_jsx_runtime","require","import_adapt","import_animate_presence","import_compose_refs","import_constants","import_core","import_portal","import_react","__toESM","import_react_native","import_contexts","import_GestureDetectorWrapper","import_gestureState","import_GestureSheetContext","import_helpers","import_keyboardAvoidance","import_webViewport","import_SheetContext","import_useGestureHandlerPan","import_useKeyboardControllerSheet","import_useSafeAreaInsets","import_useSheetOpenState","import_useSheetProviderProps","hiddenSize","rnghRootStyleOpen","width","height","rnghRootStyleClosed","relativeDimensionTo","isWeb","getStableViewportHeight","window","getStableLayoutViewportHeight","Dimensions","get","default","forwardRef","SheetImplementationCustom2","props","forwardedRef","parentSheet","useContext","ParentSheetContext","safeAreaInsets","useSafeAreaInsets","_safeAreaInsets_top","safeAreaTopInset","top","transition","transitionConfig","transitionConfigProp","modal","zIndex","moveOnKeyboardChange","unmountChildrenWhenHidden","disableTransparencyHide","portalProps","containerComponent","ContainerComponent","Fragment","onAnimationComplete","state","useSheetOpenState","overlayComponent","setOverlayComponent","useState","providerProps","useSheetProviderProps","onOverlayComponent","frameSize","setFrameSize","dismissOnSnapToBottom","snapPoints","snapPointsMode","hasFit","position","setPosition","scrollBridge","screenSize","setMaxContentSize","maxSnapPoint","open","controller","isHidden","openRef","useRef","current","sheetRef","ref","useComposedRefs","contentRef","animationDriver","useConfiguration","Error","_animationDriver_animations","animationProp","animationPropConfig","Array","isArray","animations","isShowingInnerSheet","setIsShowingInnerSheet","shouldHideParentSheet","needsPortalRepropagation","sheetInsideSheet","SheetInsideSheetContext","onInnerSheet","useCallback","hasChild","keyboardHeight","isKeyboardVisible","dismissKeyboard","pauseKeyboardHandler","flushPendingHide","useKeyboardControllerSheet","enabled","Boolean","stableFrameSize","useEffect","isWebKbSheet","isNativeKbFitSheet","preKeyboardFrameSize","effScreenSize","effectiveFrameSize","positions","useMemo","map","point","getYPositions","isDragging","setIsDragging_","isDraggingRef","setIsDragging","val","activePositionsRef","activePositions","result","p","getKeyboardAdjustedSheetY","sheetY","shouldTranslate","safeAreaTop","getWebVisualViewportOffsetTop","keyboardOccludedHeight","getKeyboardOccludedHeight","keyboardStableFrameHeight","useAnimatedNumber","useAnimatedNumberStyle","_animationDriver_View","AnimatedView","View","useIsomorphicLayoutEffect","nextParentContext","startPosition","useDidFinishSSR","animatedNumber","at","hasntMeasured","disableAnimation","setDisableAnimation","skipAdaptAnimation","skipNextAnimation","hasScrollView","opacityFallbackTimer","syncAnimatedPosition","useEvent","paneY","minY","wasAtTop","isAtTop","nowAtTop","_scrollBridge_setScrollEnabled","lockScrollAtTop","_scrollBridge_setScrollEnabled1","y","_scrollBridge_forceScrollTo","forceScrollTo","call","scrollLockY","setScrollEnabled","_scrollBridge_forceScrollTo1","_scrollBridge_setScrollEnabled2","setAnimatedPositionDirect","setValue","type","getAnimatedPosition","getValue","stopSpring","stop","onFinishAnimate","animateTo","position2","animationOverride","closeTarget","Math","max","getMaxViewportHeight","toValue","isOpenAnimation","clearTimeout","animationCompleteCallback","_controller_onAnimationComplete","setOpacity","setTimeout","duration","scrollLock","scrollStartY","isTopPosition","_props_disableDrag","disableDrag","useThemeName","blockPan","setBlockPan","panResponder","paneMinY","startY","setPanning","release","param","vy","setParentDragging","isExternalDrag","previouslyScrolling","currentPos","end","closestPoint","getSheetReleasePosition","projectedEnd","currentPosition","finish","_e","state2","dragAt","dy","onMoveShouldSet","e","getShouldSet","handleRef","scrollNodeTouched","hasScrollableContent","isScrolled","isDraggingUp","isNearTop","abs","granted","grant","startPanDrag","drag","to","resisted","snapToPosition","positionIndex","PanResponder","create","onMoveShouldSetPanResponder","onPanResponderTerminationRequest","onPanResponderGrant","onPanResponderMove","toFull","onPanResponderEnd","onPanResponderTerminate","onPanResponderRelease","wasDragging","panGesture","panGestureRef","gestureHandlerEnabled","useGestureHandlerPan","getCurrentPosition","setAnimatedPosition","ignoreLayoutForKeyboard","getWebKeyboardResizeHeight","MIN_KEYBOARD_HEIGHT","handleAnimationViewLayout","_e_nativeEvent","layoutHeight","nativeEvent","layout","next","min","round","handleMaxContentViewLayout","animatedStyle","transform","translateY","opacity","forcedContentHeight","setHasScrollView","contents","jsx","LayoutMeasurementController","disable","children","Provider","SheetProvider","jsxs","GestureSheetProvider","AnimatePresence","custom","style","left","right","bottom","pointerEvents","onLayout","disableClassName","minHeight","GestureDetectorWrapper","gesture","flex","panHandlers","adaptContext","useAdaptContext","ProvideAdaptContext","SafeAreaInsetsContext","shouldMountChildren","RNGHRoot","getGestureHandlerState","RootView","mountedContents","modalContents","Portal","stackZIndex","mode","endsWith","pct","Number","slice","isNaN","console","warn","pct1"],"sources":["../../src/SheetImplementationCustom.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}