@tamagui/sheet 2.3.3 → 2.4.0-1783099846627

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 (96) hide show
  1. package/.turbo/turbo-build.log +1 -1
  2. package/dist/cjs/SheetImplementationCustom.cjs +42 -29
  3. package/dist/cjs/SheetImplementationCustom.native.js +46 -33
  4. package/dist/cjs/SheetImplementationCustom.native.js.map +1 -1
  5. package/dist/cjs/SheetScrollView.cjs +64 -22
  6. package/dist/cjs/SheetScrollView.native.js +66 -23
  7. package/dist/cjs/SheetScrollView.native.js.map +1 -1
  8. package/dist/cjs/gestureState.cjs +13 -2
  9. package/dist/cjs/gestureState.native.js +14 -2
  10. package/dist/cjs/gestureState.native.js.map +1 -1
  11. package/dist/cjs/index.cjs +12 -1
  12. package/dist/cjs/index.native.js +11 -0
  13. package/dist/cjs/index.native.js.map +1 -1
  14. package/dist/cjs/setupGestureHandler.cjs +7 -4
  15. package/dist/cjs/setupGestureHandler.native.js +9 -4
  16. package/dist/cjs/setupGestureHandler.native.js.map +1 -1
  17. package/dist/cjs/useGestureHandlerPan.cjs +61 -8
  18. package/dist/cjs/useGestureHandlerPan.native.js +64 -8
  19. package/dist/cjs/useGestureHandlerPan.native.js.map +1 -1
  20. package/dist/cjs/useSheetScrollViewGestures.cjs +13 -3
  21. package/dist/esm/SheetImplementationCustom.mjs +43 -32
  22. package/dist/esm/SheetImplementationCustom.mjs.map +1 -1
  23. package/dist/esm/SheetImplementationCustom.native.js +47 -36
  24. package/dist/esm/SheetImplementationCustom.native.js.map +1 -1
  25. package/dist/esm/SheetScrollView.mjs +64 -22
  26. package/dist/esm/SheetScrollView.mjs.map +1 -1
  27. package/dist/esm/SheetScrollView.native.js +66 -23
  28. package/dist/esm/SheetScrollView.native.js.map +1 -1
  29. package/dist/esm/gestureState.mjs +13 -2
  30. package/dist/esm/gestureState.mjs.map +1 -1
  31. package/dist/esm/gestureState.native.js +14 -2
  32. package/dist/esm/gestureState.native.js.map +1 -1
  33. package/dist/esm/index.js +2 -0
  34. package/dist/esm/index.js.map +1 -1
  35. package/dist/esm/index.mjs +2 -0
  36. package/dist/esm/index.mjs.map +1 -1
  37. package/dist/esm/index.native.js +2 -0
  38. package/dist/esm/index.native.js.map +1 -1
  39. package/dist/esm/setupGestureHandler.mjs +7 -4
  40. package/dist/esm/setupGestureHandler.mjs.map +1 -1
  41. package/dist/esm/setupGestureHandler.native.js +9 -4
  42. package/dist/esm/setupGestureHandler.native.js.map +1 -1
  43. package/dist/esm/useGestureHandlerPan.mjs +62 -9
  44. package/dist/esm/useGestureHandlerPan.mjs.map +1 -1
  45. package/dist/esm/useGestureHandlerPan.native.js +65 -9
  46. package/dist/esm/useGestureHandlerPan.native.js.map +1 -1
  47. package/dist/esm/useSheetScrollViewGestures.mjs +13 -3
  48. package/dist/esm/useSheetScrollViewGestures.mjs.map +1 -1
  49. package/dist/jsx/SheetImplementationCustom.mjs +43 -32
  50. package/dist/jsx/SheetImplementationCustom.mjs.map +1 -1
  51. package/dist/jsx/SheetImplementationCustom.native.js +46 -33
  52. package/dist/jsx/SheetImplementationCustom.native.js.map +1 -1
  53. package/dist/jsx/SheetScrollView.mjs +64 -22
  54. package/dist/jsx/SheetScrollView.mjs.map +1 -1
  55. package/dist/jsx/SheetScrollView.native.js +66 -23
  56. package/dist/jsx/SheetScrollView.native.js.map +1 -1
  57. package/dist/jsx/gestureState.mjs +13 -2
  58. package/dist/jsx/gestureState.mjs.map +1 -1
  59. package/dist/jsx/gestureState.native.js +14 -2
  60. package/dist/jsx/gestureState.native.js.map +1 -1
  61. package/dist/jsx/index.js +2 -0
  62. package/dist/jsx/index.js.map +1 -1
  63. package/dist/jsx/index.mjs +2 -0
  64. package/dist/jsx/index.mjs.map +1 -1
  65. package/dist/jsx/index.native.js +11 -0
  66. package/dist/jsx/index.native.js.map +1 -1
  67. package/dist/jsx/setupGestureHandler.mjs +7 -4
  68. package/dist/jsx/setupGestureHandler.mjs.map +1 -1
  69. package/dist/jsx/setupGestureHandler.native.js +9 -4
  70. package/dist/jsx/setupGestureHandler.native.js.map +1 -1
  71. package/dist/jsx/useGestureHandlerPan.mjs +62 -9
  72. package/dist/jsx/useGestureHandlerPan.mjs.map +1 -1
  73. package/dist/jsx/useGestureHandlerPan.native.js +64 -8
  74. package/dist/jsx/useGestureHandlerPan.native.js.map +1 -1
  75. package/dist/jsx/useSheetScrollViewGestures.mjs +13 -3
  76. package/dist/jsx/useSheetScrollViewGestures.mjs.map +1 -1
  77. package/package.json +20 -20
  78. package/src/SheetImplementationCustom.tsx +79 -47
  79. package/src/SheetScrollView.tsx +61 -13
  80. package/src/gestureState.ts +22 -2
  81. package/src/index.ts +4 -0
  82. package/src/setupGestureHandler.ts +12 -3
  83. package/src/types.tsx +3 -0
  84. package/src/useGestureHandlerPan.tsx +64 -10
  85. package/src/useSheetScrollViewGestures.ts +17 -2
  86. package/types/SheetImplementationCustom.d.ts.map +1 -1
  87. package/types/SheetScrollView.d.ts.map +1 -1
  88. package/types/gestureState.d.ts.map +1 -1
  89. package/types/index.d.ts +1 -0
  90. package/types/index.d.ts.map +1 -1
  91. package/types/setupGestureHandler.d.ts.map +1 -1
  92. package/types/types.d.ts +1 -0
  93. package/types/types.d.ts.map +1 -1
  94. package/types/useGestureHandlerPan.d.ts.map +1 -1
  95. package/types/useSheetScrollViewGestures.d.ts +2 -1
  96. package/types/useSheetScrollViewGestures.d.ts.map +1 -1
@@ -1 +1 @@
1
- {"version":3,"names":["isWeb","useCallback","useMemo","useRef","getGestureHandlerState","isGestureHandlerEnabled","getSheetReleasePosition","AT_TOP_THRESHOLD","useGestureHandlerPan","config","positions","frameSize","setPosition","animateTo","stopSpring","scrollBridge","setIsDragging","getCurrentPosition","resisted","disableDrag","isShowingInnerSheet","setAnimatedPosition","scrollGestureRef","gestureHandlerEnabled","panGestureRef","_config_snapPointsMode","releaseConfigRef","dismissOnSnapToBottom","snapPointsMode","isKeyboardVisible","_config_snapPointsMode1","current","gestureStateRef","startY","lastPanTranslationY","accumulatedOffset","prevTranslationY","scrollEngaged","frozenPositions","frozenMinY","frozenIsKeyboardVisible","panStarted","onStart","onEnd","closestPoint","animationOverride","_scrollBridge_setScrollEnabled","setParentDragging","setScrollEnabled","call","panGesture","Gesture","minY","gs","gesture","Pan","withRef","activeOffsetY","failOffsetX","shouldCancelWhenOutside","onBegin","pauseKeyboardHandler","pos","atTop","currentScrollY","y","initialPosition","onChange","event","translationY","isSwipingDown","deltaY","scrollY","currentPos","isCurrentlyAtTop","nodeIsScrolling","panHandles","hasScrollableContent","lockTo","newPosition","paneY","_scrollBridge_setScrollEnabled1","velocityY","scrollLockY","snapPositions","length","snapMinY","velocity","projectedEnd","releaseConfig","currentPosition","onFinalize","runOnJS","simultaneousWithExternalGesture"],"sources":["../../src/useGestureHandlerPan.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["isWeb","useCallback","useEffect","useMemo","useRef","getGestureHandlerState","isGestureHandlerEnabled","getSheetReleasePosition","AT_TOP_THRESHOLD","SCROLL_HANDOFF_THRESHOLD","useGestureHandlerPan","config","positions","frameSize","setPosition","animateTo","stopSpring","scrollBridge","setIsDragging","getCurrentPosition","resisted","disableDrag","isShowingInnerSheet","setAnimatedPosition","scrollGestureRef","gestureHandlerEnabled","panGestureRef","_config_snapPointsMode","releaseConfigRef","dismissOnSnapToBottom","snapPointsMode","isKeyboardVisible","_config_snapPointsMode1","current","gestureStateRef","startY","lastPanTranslationY","accumulatedOffset","prevTranslationY","scrollEngaged","frozenPositions","frozenMinY","frozenIsKeyboardVisible","panStarted","startedBelowTop","upwardDragAfterTop","scrollUnlockedAfterTop","keepScrollLockedAfterEnd","unlockScrollTimer","clearTimeout","onStart","onEnd","closestPoint","animationOverride","keepScrollLocked","arguments","length","setParentDragging","lockScrollAtTop","_scrollBridge_setScrollEnabled","setScrollEnabled","call","setTimeout","_scrollBridge_setScrollEnabled2","_scrollBridge_setScrollEnabled1","panGesture","Gesture","minY","gs","gesture","Pan","withRef","activeOffsetY","failOffsetX","shouldCancelWhenOutside","onBegin","pauseKeyboardHandler","pos","atTop","currentScrollY","y","initialPosition","onChange","event","translationY","isSwipingDown","deltaY","scrollY","currentPos","isCurrentlyAtTop","nodeIsScrolling","panHandles","hasScrollableContent","Math","max","lockTo","newPosition","paneY","velocityY","scrollLockY","snapPositions","snapMinY","velocity","projectedEnd","releaseConfig","currentPosition","onFinalize","runOnJS","simultaneousWithExternalGesture"],"sources":["../../src/useGestureHandlerPan.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
@@ -2,7 +2,8 @@ import { useEffect, useRef } from "react";
2
2
  function useSheetScrollViewGestures({
3
3
  scrollRef,
4
4
  scrollBridge,
5
- hasScrollableContent
5
+ hasScrollableContent,
6
+ onManualScroll
6
7
  }) {
7
8
  const state = useRef({
8
9
  startY: 0,
@@ -13,6 +14,10 @@ function useSheetScrollViewGestures({
13
14
  dys: [],
14
15
  scrollYAtGestureStart: 0
15
16
  });
17
+ const onManualScrollRef = useRef(onManualScroll);
18
+ useEffect(() => {
19
+ onManualScrollRef.current = onManualScroll;
20
+ }, [onManualScroll]);
16
21
  useEffect(() => {
17
22
  if (!scrollRef.current) return;
18
23
  const controller = new AbortController();
@@ -29,6 +34,11 @@ function useSheetScrollViewGestures({
29
34
  const enableScroll = () => {
30
35
  node.style.overflowY = originalOverflow;
31
36
  };
37
+ const setScrollTop = nextScrollY => {
38
+ if (node.scrollTop === nextScrollY) return;
39
+ node.scrollTop = nextScrollY;
40
+ onManualScrollRef.current?.(node, nextScrollY);
41
+ };
32
42
  const handleTouchStart = e => {
33
43
  const touch = e.touches[0];
34
44
  if (!touch) return;
@@ -57,7 +67,7 @@ function useSheetScrollViewGestures({
57
67
  if (dy === 0) return;
58
68
  const isDraggingDown = dy > 0;
59
69
  const currentScrollY = node.scrollTop;
60
- const isPaneAtTop = scrollBridge.paneY <= scrollBridge.paneMinY + 5;
70
+ const isPaneAtTop = scrollBridge.isAtTop ?? scrollBridge.paneY <= scrollBridge.paneMinY + 5;
61
71
  scrollBridge.y = currentScrollY;
62
72
  let shouldPanOwn = false;
63
73
  if (!isPaneAtTop) {
@@ -97,7 +107,7 @@ function useSheetScrollViewGestures({
97
107
  const maxScrollY = node.scrollHeight - node.clientHeight;
98
108
  const newScrollY = Math.max(0, Math.min(maxScrollY, currentScrollY + scrollDelta));
99
109
  if (newScrollY !== currentScrollY) {
100
- node.scrollTop = newScrollY;
110
+ setScrollTop(newScrollY);
101
111
  scrollBridge.y = newScrollY;
102
112
  if (newScrollY > 0) scrollBridge.scrollStartY = -1;
103
113
  }
@@ -1 +1 @@
1
- {"version":3,"names":["useEffect","useRef","useSheetScrollViewGestures","scrollRef","scrollBridge","hasScrollableContent","state","startY","lastY","owner","hadPanOwner","panDragOffset","dys","scrollYAtGestureStart","current","controller","AbortController","node","getScrollableNode","style","overscrollBehavior","originalOverflow","disableScroll","overflowY","enableScroll","handleTouchStart","e","touch","touches","currentScrollY","scrollTop","pageY","scrollStartY","scrollNodeTouched","handleTouchMove","s","dy","isDraggingDown","isPaneAtTop","paneY","paneMinY","y","shouldPanOwn","newOwner","startPanDrag","setParentDragging","scrollLock","cancelable","preventDefault","drag","push","length","slice","isTrusted","scrollDelta","maxScrollY","scrollHeight","clientHeight","newScrollY","Math","max","min","handleTouchEnd","vy","recentDys","dist","reduce","a","b","release","dragAt","snapToPosition","addEventListener","signal","passive","abort"],"sources":["../../src/useSheetScrollViewGestures.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["useEffect","useRef","useSheetScrollViewGestures","scrollRef","scrollBridge","hasScrollableContent","onManualScroll","state","startY","lastY","owner","hadPanOwner","panDragOffset","dys","scrollYAtGestureStart","onManualScrollRef","current","controller","AbortController","node","getScrollableNode","style","overscrollBehavior","originalOverflow","disableScroll","overflowY","enableScroll","setScrollTop","nextScrollY","scrollTop","handleTouchStart","e","touch","touches","currentScrollY","pageY","scrollStartY","scrollNodeTouched","handleTouchMove","s","dy","isDraggingDown","isPaneAtTop","isAtTop","paneY","paneMinY","y","shouldPanOwn","newOwner","startPanDrag","setParentDragging","scrollLock","cancelable","preventDefault","drag","push","length","slice","isTrusted","scrollDelta","maxScrollY","scrollHeight","clientHeight","newScrollY","Math","max","min","handleTouchEnd","vy","recentDys","dist","reduce","a","b","release","dragAt","snapToPosition","addEventListener","signal","passive","abort"],"sources":["../../src/useSheetScrollViewGestures.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
@@ -74,8 +74,7 @@ const SheetImplementationCustom = React.forwardRef(function SheetImplementationC
74
74
  } = state;
75
75
  const openRef = React.useRef(open);
76
76
  openRef.current = open;
77
- const sheetRef = React.useRef(void 0);
78
- const ref = useComposedRefs(forwardedRef, sheetRef, providerProps.contentRef);
77
+ const ref = useComposedRefs(forwardedRef, React.useRef(void 0), providerProps.contentRef);
79
78
  const {
80
79
  animationDriver
81
80
  } = useConfiguration();
@@ -109,6 +108,11 @@ const SheetImplementationCustom = React.forwardRef(function SheetImplementationC
109
108
  if (open && frameSize) stableFrameSize.current = frameSize;
110
109
  }, [open, frameSize]);
111
110
  const isWebKbSheet = isWeb && hasFit && moveOnKeyboardChange;
111
+ const isNativeKbFitSheet = !isWeb && hasFit && Boolean(moveOnKeyboardChange);
112
+ const preKeyboardFrameSize = React.useRef(0);
113
+ React.useEffect(() => {
114
+ if (isNativeKbFitSheet && open && !isKeyboardVisible && frameSize > 0) preKeyboardFrameSize.current = frameSize;
115
+ }, [isNativeKbFitSheet, open, isKeyboardVisible, frameSize]);
112
116
  const effScreenSize = isWebKbSheet ? getStableViewportHeight() : screenSize;
113
117
  const effectiveFrameSize = open ? frameSize : stableFrameSize.current || frameSize;
114
118
  const positions = React.useMemo(() => snapPoints.map(point => getYPositions(snapPointsMode, point, effScreenSize, effectiveFrameSize)), [effScreenSize, effectiveFrameSize, snapPoints, snapPointsMode]);
@@ -142,11 +146,10 @@ const SheetImplementationCustom = React.forwardRef(function SheetImplementationC
142
146
  screenSize: effScreenSize,
143
147
  sheetY: position >= 0 ? activePositions[position] : void 0
144
148
  });
145
- const keyboardStableFrameHeight = isWebKbSheet && isKeyboardVisible && frameSize > 0 ? frameSize : 0;
149
+ const keyboardStableFrameHeight = isWebKbSheet && isKeyboardVisible && frameSize > 0 ? frameSize : isNativeKbFitSheet && isKeyboardVisible && preKeyboardFrameSize.current > 0 ? preKeyboardFrameSize.current : 0;
146
150
  const {
147
151
  useAnimatedNumber,
148
- useAnimatedNumberStyle,
149
- useAnimatedNumberReaction
152
+ useAnimatedNumberStyle
150
153
  } = animationDriver;
151
154
  const AnimatedView = animationDriver.View ?? View;
152
155
  useIsomorphicLayoutEffect(() => {
@@ -168,30 +171,46 @@ const SheetImplementationCustom = React.forwardRef(function SheetImplementationC
168
171
  if (controller?.skipNextAnimation) skipAdaptAnimation.current = true;
169
172
  const hasScrollView = React.useRef(false);
170
173
  const opacityFallbackTimer = React.useRef(null);
171
- useAnimatedNumberReaction({
172
- value: animatedNumber,
173
- hostRef: sheetRef
174
- }, React.useCallback(value => {
174
+ const syncAnimatedPosition = useEvent(value => {
175
175
  at.current = value;
176
176
  scrollBridge.paneY = value;
177
177
  const minY = activePositions[0];
178
178
  const wasAtTop = scrollBridge.isAtTop;
179
179
  const nowAtTop = value <= minY + 5;
180
- if (wasAtTop !== nowAtTop) {
181
- scrollBridge.isAtTop = nowAtTop;
182
- if (nowAtTop) {
180
+ if (wasAtTop === nowAtTop) return;
181
+ scrollBridge.isAtTop = nowAtTop;
182
+ if (nowAtTop) {
183
+ if (scrollBridge.lockScrollAtTop) {
183
184
  if (scrollBridge.y > 0) {
184
185
  scrollBridge.forceScrollTo?.(0);
185
186
  scrollBridge.y = 0;
186
187
  }
187
- scrollBridge.scrollLockY = void 0;
188
- scrollBridge.setScrollEnabled?.(true);
189
- } else {
190
188
  scrollBridge.scrollLockY = 0;
191
- scrollBridge.setScrollEnabled?.(false);
189
+ scrollBridge.setScrollEnabled?.(false, 0);
190
+ return;
191
+ }
192
+ if (scrollBridge.y > 0) {
193
+ scrollBridge.forceScrollTo?.(0);
194
+ scrollBridge.y = 0;
192
195
  }
196
+ scrollBridge.scrollLockY = void 0;
197
+ scrollBridge.setScrollEnabled?.(true);
198
+ } else {
199
+ scrollBridge.scrollLockY = 0;
200
+ scrollBridge.setScrollEnabled?.(false);
193
201
  }
194
- }, [animationDriver, activePositions]));
202
+ });
203
+ const setAnimatedPositionDirect = useEvent(value => {
204
+ syncAnimatedPosition(value);
205
+ animatedNumber.setValue(value, {
206
+ type: "direct"
207
+ });
208
+ });
209
+ const getAnimatedPosition = useEvent(() => {
210
+ const value = animatedNumber.getValue();
211
+ syncAnimatedPosition(value);
212
+ return value;
213
+ });
195
214
  function stopSpring() {
196
215
  animatedNumber.stop();
197
216
  if (scrollBridge.onFinishAnimate) {
@@ -212,6 +231,7 @@ const SheetImplementationCustom = React.forwardRef(function SheetImplementationC
212
231
  opacityFallbackTimer.current = null;
213
232
  }
214
233
  const animationCompleteCallback = () => {
234
+ syncAnimatedPosition(toValue);
215
235
  if (opacityFallbackTimer.current) {
216
236
  clearTimeout(opacityFallbackTimer.current);
217
237
  opacityFallbackTimer.current = null;
@@ -248,6 +268,7 @@ const SheetImplementationCustom = React.forwardRef(function SheetImplementationC
248
268
  type: "timing",
249
269
  duration: 0
250
270
  }, () => {
271
+ syncAnimatedPosition(screenSize);
251
272
  setTimeout(() => {
252
273
  setDisableAnimation(false);
253
274
  }, 10);
@@ -346,7 +367,7 @@ const SheetImplementationCustom = React.forwardRef(function SheetImplementationC
346
367
  const grant = () => {
347
368
  setPanning(true);
348
369
  stopSpring();
349
- startY = at.current;
370
+ startY = getAnimatedPosition();
350
371
  };
351
372
  let isExternalDrag = false;
352
373
  scrollBridge.startPanDrag = () => {
@@ -358,10 +379,7 @@ const SheetImplementationCustom = React.forwardRef(function SheetImplementationC
358
379
  isExternalDrag = true;
359
380
  grant();
360
381
  }
361
- const to = dy + startY;
362
- animatedNumber.setValue(resisted(to, minY), {
363
- type: "direct"
364
- });
382
+ setAnimatedPositionDirect(resisted(dy + startY, minY));
365
383
  };
366
384
  scrollBridge.release = release;
367
385
  scrollBridge.snapToPosition = positionIndex => {
@@ -379,9 +397,7 @@ const SheetImplementationCustom = React.forwardRef(function SheetImplementationC
379
397
  }) => {
380
398
  const to = resisted(dy + startY, minY);
381
399
  if (to <= minY) scrollBridge.setParentDragging(false);else scrollBridge.setParentDragging(true);
382
- animatedNumber.setValue(to, {
383
- type: "direct"
384
- });
400
+ setAnimatedPositionDirect(to);
385
401
  },
386
402
  onPanResponderEnd: finish,
387
403
  onPanResponderTerminate: finish,
@@ -426,16 +442,11 @@ const SheetImplementationCustom = React.forwardRef(function SheetImplementationC
426
442
  stopSpring,
427
443
  scrollBridge,
428
444
  setIsDragging,
429
- getCurrentPosition: () => at.current,
445
+ getCurrentPosition: getAnimatedPosition,
430
446
  resisted,
431
447
  disableDrag,
432
448
  isShowingInnerSheet,
433
- setAnimatedPosition: val => {
434
- at.current = val;
435
- animatedNumber.setValue(val, {
436
- type: "direct"
437
- });
438
- },
449
+ setAnimatedPosition: setAnimatedPositionDirect,
439
450
  dismissOnSnapToBottom,
440
451
  snapPointsMode,
441
452
  isKeyboardVisible,
@@ -1 +1 @@
1
- {"version":3,"names":["AnimatePresence","useComposedRefs","isWeb","useIsomorphicLayoutEffect","LayoutMeasurementController","View","useConfiguration","useDidFinishSSR","useEvent","useThemeName","Portal","needsPortalRepropagation","React","useState","Dimensions","PanResponder","View$1","ParentSheetContext","SheetInsideSheetContext","GestureDetectorWrapper","getGestureHandlerState","GestureSheetProvider","resisted","getKeyboardAdjustedSheetY","getKeyboardOccludedHeight","getSheetReleasePosition","MIN_KEYBOARD_HEIGHT","getMaxViewportHeight","getStableLayoutViewportHeight","getWebKeyboardResizeHeight","getWebVisualViewportOffsetTop","SheetProvider","useGestureHandlerPan","useKeyboardControllerSheet","useSafeAreaInsets","useSheetOpenState","useSheetProviderProps","jsx","jsxs","hiddenSize","rnghRootStyleOpen","width","height","rnghRootStyleClosed","sheetHiddenStyleSheet","relativeDimensionTo","getStableViewportHeight","window","get","SheetImplementationCustom","forwardRef","SheetImplementationCustom2","props","forwardedRef","parentSheet","useContext","safeAreaTopInset","top","transition","transitionConfig","transitionConfigProp","modal","zIndex","moveOnKeyboardChange","unmountChildrenWhenHidden","portalProps","containerComponent","ContainerComponent","Fragment","onAnimationComplete","state","overlayComponent","setOverlayComponent","providerProps","onOverlayComponent","frameSize","setFrameSize","dismissOnSnapToBottom","snapPoints","snapPointsMode","hasFit","position","setPosition","scrollBridge","screenSize","setMaxContentSize","maxSnapPoint","open","controller","isHidden","openRef","useRef","current","sheetRef","ref","contentRef","animationDriver","Error","animationProp","animationPropConfig","Array","isArray","animations","isShowingInnerSheet","setIsShowingInnerSheet","shouldHideParentSheet","sheetInsideSheet","onInnerSheet","useCallback","hasChild","keyboardHeight","isKeyboardVisible","dismissKeyboard","pauseKeyboardHandler","flushPendingHide","enabled","Boolean","stableFrameSize","useEffect","isWebKbSheet","effScreenSize","effectiveFrameSize","positions","useMemo","map","point","getYPositions","isDragging","setIsDragging_","isDraggingRef","setIsDragging","val","activePositionsRef","activePositions","result","p","sheetY","shouldTranslate","safeAreaTop","keyboardOccludedHeight","keyboardStableFrameHeight","useAnimatedNumber","useAnimatedNumberStyle","useAnimatedNumberReaction","AnimatedView","nextParentContext","startPosition","animatedNumber","at","hasntMeasured","disableAnimation","setDisableAnimation","skipAdaptAnimation","skipNextAnimation","hasScrollView","opacityFallbackTimer","value","hostRef","paneY","minY","wasAtTop","isAtTop","nowAtTop","y","forceScrollTo","scrollLockY","setScrollEnabled","stopSpring","stop","onFinishAnimate","animateTo","position2","animationOverride","closeTarget","Math","max","toValue","isOpenAnimation","clearTimeout","animationCompleteCallback","setOpacity","setTimeout","setValue","type","duration","scrollLock","scrollStartY","isTopPosition","disableDrag","blockPan","setBlockPan","panResponder","paneMinY","startY","setPanning","document","createElement","head","appendChild","innerText","release","vy","setParentDragging","isExternalDrag","previouslyScrolling","currentPos","closestPoint","projectedEnd","currentPosition","finish","_e","state2","dragAt","dy","onMoveShouldSet","e","getShouldSet","target","handleRef","scrollNodeTouched","hasScrollableContent","isScrolled","isDraggingUp","isNearTop","abs","granted","grant","startPanDrag","drag","to","snapToPosition","positionIndex","create","onMoveShouldSetPanResponder","onPanResponderTerminationRequest","onPanResponderGrant","onPanResponderMove","onPanResponderEnd","onPanResponderTerminate","onPanResponderRelease","wasDragging","panGesture","panGestureRef","gestureHandlerEnabled","getCurrentPosition","setAnimatedPosition","ignoreLayoutForKeyboard","handleAnimationViewLayout","layoutHeight","nativeEvent","layout","next","min","round","handleMaxContentViewLayout","animatedStyle","transform","translateY","opacity","forcedContentHeight","setHasScrollView","contents","disable","children","Provider","custom","style","left","right","bottom","pointerEvents","onLayout","disableClassName","minHeight","gesture","flex","panHandlers","shouldMountChildren","RNGHRoot","RootView","mountedContents","modalContents","stackZIndex","mode","endsWith","pct2","Number","slice","isNaN","console","warn","pct"],"sources":["SheetImplementationCustom.mjs"],"sourcesContent":["import { AnimatePresence } from \"@tamagui/animate-presence\";\nimport { useComposedRefs } from \"@tamagui/compose-refs\";\nimport { isWeb, useIsomorphicLayoutEffect } from \"@tamagui/constants\";\nimport { LayoutMeasurementController, View, useConfiguration, useDidFinishSSR, useEvent, useThemeName } from \"@tamagui/core\";\nimport { Portal, needsPortalRepropagation } from \"@tamagui/portal\";\nimport React, { useState } from \"react\";\nimport { Dimensions, PanResponder, View as View$1 } from \"react-native-web\";\nimport { ParentSheetContext, SheetInsideSheetContext } from \"./contexts\";\nimport { GestureDetectorWrapper } from \"./GestureDetectorWrapper\";\nimport { getGestureHandlerState } from \"./gestureState\";\nimport { GestureSheetProvider } from \"./GestureSheetContext\";\nimport { resisted } from \"./helpers\";\nimport { getKeyboardAdjustedSheetY, getKeyboardOccludedHeight, getSheetReleasePosition } from \"./keyboardAvoidance\";\nimport { MIN_KEYBOARD_HEIGHT, getMaxViewportHeight, getStableLayoutViewportHeight, getWebKeyboardResizeHeight, getWebVisualViewportOffsetTop } from \"./webViewport\";\nimport { SheetProvider } from \"./SheetContext\";\nimport { useGestureHandlerPan } from \"./useGestureHandlerPan\";\nimport { useKeyboardControllerSheet } from \"./useKeyboardControllerSheet\";\nimport { useSafeAreaInsets } from \"./useSafeAreaInsets\";\nimport { useSheetOpenState } from \"./useSheetOpenState\";\nimport { useSheetProviderProps } from \"./useSheetProviderProps\";\nimport { jsx, jsxs } from \"react/jsx-runtime\";\n\nconst hiddenSize = 10000.1;\nconst rnghRootStyleOpen = {\n\twidth: \"100%\",\n\theight: \"100%\"\n};\nconst rnghRootStyleClosed = {\n\twidth: \"100%\",\n\theight: 0\n};\nlet sheetHiddenStyleSheet = null;\nconst relativeDimensionTo = isWeb ? \"window\" : \"screen\";\nfunction getStableViewportHeight() {\n\tif (isWeb && typeof window !== \"undefined\") return getStableLayoutViewportHeight();\n\treturn Dimensions.get(relativeDimensionTo).height;\n}\nconst SheetImplementationCustom = React.forwardRef(function SheetImplementationCustom2(props, forwardedRef) {\n\tconst parentSheet = React.useContext(ParentSheetContext);\n\tconst safeAreaTopInset = useSafeAreaInsets()?.top ?? 0;\n\tconst { transition, transitionConfig: transitionConfigProp, modal = false, zIndex = parentSheet.zIndex + 1, moveOnKeyboardChange = false, unmountChildrenWhenHidden = false, portalProps, containerComponent: ContainerComponent = React.Fragment, onAnimationComplete } = props;\n\tconst state = useSheetOpenState(props);\n\tconst [overlayComponent, setOverlayComponent] = React.useState(null);\n\tconst providerProps = useSheetProviderProps(props, state, { onOverlayComponent: setOverlayComponent });\n\tconst { frameSize, setFrameSize, dismissOnSnapToBottom, snapPoints, snapPointsMode, hasFit, position, setPosition, scrollBridge, screenSize, setMaxContentSize, maxSnapPoint } = providerProps;\n\tconst { open, controller, isHidden } = state;\n\tconst openRef = React.useRef(open);\n\topenRef.current = open;\n\tconst sheetRef = React.useRef(void 0);\n\tconst ref = useComposedRefs(forwardedRef, sheetRef, providerProps.contentRef);\n\tconst { animationDriver } = useConfiguration();\n\tif (!animationDriver) throw new Error(`Sheet requires an animation driver to be set`);\n\tconst transitionConfig = (() => {\n\t\tif (transitionConfigProp) return transitionConfigProp;\n\t\tconst [animationProp, animationPropConfig] = !transition ? [] : Array.isArray(transition) ? transition : [transition];\n\t\tif (animationProp && animationDriver.animations?.[animationProp]) return {\n\t\t\t...animationDriver.animations[animationProp],\n\t\t\t...animationPropConfig\n\t\t};\n\t\treturn null;\n\t})();\n\tconst [isShowingInnerSheet, setIsShowingInnerSheet] = React.useState(false);\n\tconst shouldHideParentSheet = !isWeb && modal && isShowingInnerSheet && needsPortalRepropagation();\n\tconst sheetInsideSheet = React.useContext(SheetInsideSheetContext);\n\tconst onInnerSheet = React.useCallback((hasChild) => {\n\t\tsetIsShowingInnerSheet(hasChild);\n\t}, []);\n\tconst { keyboardHeight, isKeyboardVisible, dismissKeyboard, pauseKeyboardHandler, flushPendingHide } = useKeyboardControllerSheet({ enabled: Boolean(moveOnKeyboardChange) });\n\tconst stableFrameSize = React.useRef(frameSize);\n\tReact.useEffect(() => {\n\t\tif (open && frameSize) stableFrameSize.current = frameSize;\n\t}, [open, frameSize]);\n\tconst isWebKbSheet = isWeb && hasFit && moveOnKeyboardChange;\n\tconst effScreenSize = isWebKbSheet ? getStableViewportHeight() : screenSize;\n\tconst effectiveFrameSize = open ? frameSize : stableFrameSize.current || frameSize;\n\tconst positions = React.useMemo(() => snapPoints.map((point) => getYPositions(snapPointsMode, point, effScreenSize, effectiveFrameSize)), [\n\t\teffScreenSize,\n\t\teffectiveFrameSize,\n\t\tsnapPoints,\n\t\tsnapPointsMode\n\t]);\n\tconst [isDragging, setIsDragging_] = React.useState(false);\n\tconst isDraggingRef = React.useRef(false);\n\tconst setIsDragging = React.useCallback((val) => {\n\t\tisDraggingRef.current = val;\n\t\tpauseKeyboardHandler.current = val;\n\t\tsetIsDragging_(val);\n\t\tif (!val) flushPendingHide();\n\t}, [pauseKeyboardHandler, flushPendingHide]);\n\tconst activePositionsRef = React.useRef(positions);\n\tconst activePositions = React.useMemo(() => {\n\t\tif (isDragging || isDraggingRef.current) return activePositionsRef.current;\n\t\tlet result;\n\t\tif (!isKeyboardVisible || keyboardHeight <= 0) result = positions;\n\t\telse result = positions.map((p) => getKeyboardAdjustedSheetY({\n\t\t\tsheetY: p,\n\t\t\tscreenSize: effScreenSize,\n\t\t\tisKeyboardVisible,\n\t\t\tkeyboardHeight,\n\t\t\tshouldTranslate: true,\n\t\t\tsafeAreaTop: isWeb ? getWebVisualViewportOffsetTop() : safeAreaTopInset\n\t\t}));\n\t\tactivePositionsRef.current = result;\n\t\treturn result;\n\t}, [\n\t\tpositions,\n\t\tisKeyboardVisible,\n\t\tkeyboardHeight,\n\t\teffScreenSize,\n\t\tisDragging,\n\t\tsafeAreaTopInset\n\t]);\n\tconst keyboardOccludedHeight = getKeyboardOccludedHeight({\n\t\tframeSize: effectiveFrameSize,\n\t\tisKeyboardVisible,\n\t\tkeyboardHeight,\n\t\tscreenSize: effScreenSize,\n\t\tsheetY: position >= 0 ? activePositions[position] : void 0\n\t});\n\tconst keyboardStableFrameHeight = isWebKbSheet && isKeyboardVisible && frameSize > 0 ? frameSize : 0;\n\tconst { useAnimatedNumber, useAnimatedNumberStyle, useAnimatedNumberReaction } = animationDriver;\n\tconst AnimatedView = animationDriver.View ?? View;\n\tuseIsomorphicLayoutEffect(() => {\n\t\tif (!(sheetInsideSheet && open)) return;\n\t\tsheetInsideSheet(true);\n\t\treturn () => {\n\t\t\tsheetInsideSheet(false);\n\t\t};\n\t}, [sheetInsideSheet, open]);\n\tconst nextParentContext = React.useMemo(() => ({ zIndex }), [zIndex]);\n\tconst startPosition = useDidFinishSSR() && screenSize ? screenSize : hiddenSize;\n\tconst animatedNumber = useAnimatedNumber(startPosition);\n\tconst at = React.useRef(startPosition);\n\tconst hasntMeasured = at.current === hiddenSize;\n\tconst [disableAnimation, setDisableAnimation] = useState(hasntMeasured);\n\tconst skipAdaptAnimation = React.useRef(false);\n\tif (controller?.skipNextAnimation) skipAdaptAnimation.current = true;\n\tconst hasScrollView = React.useRef(false);\n\tconst opacityFallbackTimer = React.useRef(null);\n\tuseAnimatedNumberReaction({\n\t\tvalue: animatedNumber,\n\t\thostRef: sheetRef\n\t}, React.useCallback((value) => {\n\t\tat.current = value;\n\t\tscrollBridge.paneY = value;\n\t\tconst minY = activePositions[0];\n\t\tconst wasAtTop = scrollBridge.isAtTop;\n\t\tconst nowAtTop = value <= minY + 5;\n\t\tif (wasAtTop !== nowAtTop) {\n\t\t\tscrollBridge.isAtTop = nowAtTop;\n\t\t\tif (nowAtTop) {\n\t\t\t\tif (scrollBridge.y > 0) {\n\t\t\t\t\tscrollBridge.forceScrollTo?.(0);\n\t\t\t\t\tscrollBridge.y = 0;\n\t\t\t\t}\n\t\t\t\tscrollBridge.scrollLockY = void 0;\n\t\t\t\tscrollBridge.setScrollEnabled?.(true);\n\t\t\t} else {\n\t\t\t\tscrollBridge.scrollLockY = 0;\n\t\t\t\tscrollBridge.setScrollEnabled?.(false);\n\t\t\t}\n\t\t}\n\t}, [animationDriver, activePositions]));\n\tfunction stopSpring() {\n\t\tanimatedNumber.stop();\n\t\tif (scrollBridge.onFinishAnimate) {\n\t\t\tscrollBridge.onFinishAnimate();\n\t\t\tscrollBridge.onFinishAnimate = void 0;\n\t\t}\n\t}\n\tconst animateTo = useEvent((position2, animationOverride) => {\n\t\tif (frameSize === 0) return;\n\t\tconst closeTarget = isWeb ? Math.max(effScreenSize, getMaxViewportHeight()) : effScreenSize;\n\t\tlet toValue = isHidden || position2 === -1 ? closeTarget : activePositions[position2];\n\t\tif (at.current === toValue) return;\n\t\tat.current = toValue;\n\t\tstopSpring();\n\t\tconst isOpenAnimation = position2 !== -1 && !isHidden;\n\t\tif (opacityFallbackTimer.current) {\n\t\t\tclearTimeout(opacityFallbackTimer.current);\n\t\t\topacityFallbackTimer.current = null;\n\t\t}\n\t\tconst animationCompleteCallback = () => {\n\t\t\tif (opacityFallbackTimer.current) {\n\t\t\t\tclearTimeout(opacityFallbackTimer.current);\n\t\t\t\topacityFallbackTimer.current = null;\n\t\t\t}\n\t\t\tif (!isOpenAnimation && !openRef.current) setOpacity(0);\n\t\t\tonAnimationComplete?.({ open: isOpenAnimation });\n\t\t\tcontroller?.onAnimationComplete?.({ open: isOpenAnimation });\n\t\t};\n\t\tif (!isOpenAnimation) opacityFallbackTimer.current = setTimeout(() => {\n\t\t\topacityFallbackTimer.current = null;\n\t\t\tif (!openRef.current) setOpacity(0);\n\t\t}, 1e3);\n\t\tif (skipAdaptAnimation.current) {\n\t\t\tskipAdaptAnimation.current = false;\n\t\t\tanimatedNumber.setValue(toValue, {\n\t\t\t\ttype: \"timing\",\n\t\t\t\tduration: 0\n\t\t\t}, animationCompleteCallback);\n\t\t\treturn;\n\t\t}\n\t\tanimatedNumber.setValue(toValue, animationOverride || {\n\t\t\ttype: \"spring\",\n\t\t\t...transitionConfig\n\t\t}, animationCompleteCallback);\n\t});\n\tuseIsomorphicLayoutEffect(() => {\n\t\tif (hasntMeasured && screenSize && frameSize) {\n\t\t\tat.current = screenSize;\n\t\t\tanimatedNumber.setValue(screenSize, {\n\t\t\t\ttype: \"timing\",\n\t\t\t\tduration: 0\n\t\t\t}, () => {\n\t\t\t\tsetTimeout(() => {\n\t\t\t\t\tsetDisableAnimation(false);\n\t\t\t\t}, 10);\n\t\t\t});\n\t\t\treturn;\n\t\t}\n\t\tif (disableAnimation) return;\n\t\tif (isDraggingRef.current) return;\n\t\tif (!frameSize || !screenSize || isHidden || hasntMeasured && !open) return;\n\t\tanimateTo(position);\n\t\tif (position === -1) {\n\t\t\tscrollBridge.scrollLock = false;\n\t\t\tscrollBridge.scrollStartY = -1;\n\t\t}\n\t\tif (open && position >= 0) {\n\t\t\tconst isTopPosition = position === 0;\n\t\t\tscrollBridge.isAtTop = isTopPosition;\n\t\t\tif (isTopPosition) {\n\t\t\t\tscrollBridge.scrollLockY = void 0;\n\t\t\t\tscrollBridge.setScrollEnabled?.(true);\n\t\t\t} else {\n\t\t\t\tscrollBridge.scrollLockY = 0;\n\t\t\t\tscrollBridge.setScrollEnabled?.(false);\n\t\t\t}\n\t\t}\n\t}, [\n\t\thasntMeasured,\n\t\tdisableAnimation,\n\t\tisHidden,\n\t\tframeSize,\n\t\tscreenSize,\n\t\topen,\n\t\tposition\n\t]);\n\tconst disableDrag = props.disableDrag ?? controller?.disableDrag;\n\tuseThemeName();\n\tconst [blockPan, setBlockPan] = React.useState(false);\n\tconst panResponder = React.useMemo(() => {\n\t\tif (disableDrag) return;\n\t\tif (!frameSize) return;\n\t\tif (isShowingInnerSheet) return;\n\t\tconst minY = activePositions[0];\n\t\tscrollBridge.paneMinY = minY;\n\t\tlet startY = at.current;\n\t\tfunction setPanning(val) {\n\t\t\tsetIsDragging(val);\n\t\t\tif (!sheetHiddenStyleSheet) {\n\t\t\t\tsheetHiddenStyleSheet = document.createElement(\"style\");\n\t\t\t\tif (typeof document.head !== \"undefined\") document.head.appendChild(sheetHiddenStyleSheet);\n\t\t\t}\n\t\t\tif (!val) sheetHiddenStyleSheet.innerText = \"\";\n\t\t\telse sheetHiddenStyleSheet.innerText = \":root * { user-select: none !important; -webkit-user-select: none !important; }\";\n\t\t}\n\t\tconst release = ({ vy }) => {\n\t\t\tscrollBridge.setParentDragging(false);\n\t\t\tif (scrollBridge.scrollLock) return;\n\t\t\tisExternalDrag = false;\n\t\t\tpreviouslyScrolling = false;\n\t\t\tsetPanning(false);\n\t\t\tconst currentPos = at.current;\n\t\t\tconst closestPoint = getSheetReleasePosition({\n\t\t\t\tpositions: activePositions,\n\t\t\t\tprojectedEnd: currentPos + frameSize * vy * .2,\n\t\t\t\tcurrentPosition: currentPos,\n\t\t\t\tframeSize,\n\t\t\t\tdismissOnSnapToBottom,\n\t\t\t\tsnapPointsMode,\n\t\t\t\tisKeyboardVisible,\n\t\t\t\tisWeb\n\t\t\t});\n\t\t\tsetPosition(closestPoint);\n\t\t\tanimateTo(closestPoint);\n\t\t};\n\t\tconst finish = (_e, state2) => {\n\t\t\trelease({\n\t\t\t\tvy: state2.vy,\n\t\t\t\tdragAt: state2.dy\n\t\t\t});\n\t\t};\n\t\tlet previouslyScrolling = false;\n\t\tconst onMoveShouldSet = (e, { dy }) => {\n\t\t\tfunction getShouldSet() {\n\t\t\t\tif (e.target === providerProps.handleRef.current) return true;\n\t\t\t\tif (scrollBridge.scrollNodeTouched) return false;\n\t\t\t\tif (scrollBridge.hasScrollableContent === true) {\n\t\t\t\t\tif (scrollBridge.scrollLock) return false;\n\t\t\t\t\tconst isScrolled = scrollBridge.y !== 0;\n\t\t\t\t\tconst isDraggingUp = dy < 0;\n\t\t\t\t\tconst isNearTop = scrollBridge.paneY - 5 <= scrollBridge.paneMinY;\n\t\t\t\t\tif (isScrolled) return false;\n\t\t\t\t\tif (isNearTop) {\n\t\t\t\t\t\tif (hasScrollView.current && isDraggingUp) return false;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\treturn Math.abs(dy) > 10;\n\t\t\t}\n\t\t\tconst granted = getShouldSet();\n\t\t\tif (granted) scrollBridge.setParentDragging(true);\n\t\t\treturn granted;\n\t\t};\n\t\tconst grant = () => {\n\t\t\tsetPanning(true);\n\t\t\tstopSpring();\n\t\t\tstartY = at.current;\n\t\t};\n\t\tlet isExternalDrag = false;\n\t\tscrollBridge.startPanDrag = () => {\n\t\t\tisExternalDrag = true;\n\t\t\tgrant();\n\t\t};\n\t\tscrollBridge.drag = (dy) => {\n\t\t\tif (!isExternalDrag) {\n\t\t\t\tisExternalDrag = true;\n\t\t\t\tgrant();\n\t\t\t}\n\t\t\tconst to = dy + startY;\n\t\t\tanimatedNumber.setValue(resisted(to, minY), { type: \"direct\" });\n\t\t};\n\t\tscrollBridge.release = release;\n\t\tscrollBridge.snapToPosition = (positionIndex) => {\n\t\t\tisExternalDrag = false;\n\t\t\tsetPanning(false);\n\t\t\tsetPosition(positionIndex);\n\t\t\tanimateTo(positionIndex);\n\t\t};\n\t\treturn PanResponder.create({\n\t\t\tonMoveShouldSetPanResponder: onMoveShouldSet,\n\t\t\tonPanResponderTerminationRequest: () => false,\n\t\t\tonPanResponderGrant: grant,\n\t\t\tonPanResponderMove: (_e, { dy }) => {\n\t\t\t\tconst to = resisted(dy + startY, minY);\n\t\t\t\tif (to <= minY) scrollBridge.setParentDragging(false);\n\t\t\t\telse scrollBridge.setParentDragging(true);\n\t\t\t\tanimatedNumber.setValue(to, { type: \"direct\" });\n\t\t\t},\n\t\t\tonPanResponderEnd: finish,\n\t\t\tonPanResponderTerminate: finish,\n\t\t\tonPanResponderRelease: finish\n\t\t});\n\t}, [\n\t\tdisableDrag,\n\t\tisShowingInnerSheet,\n\t\tanimateTo,\n\t\tframeSize,\n\t\tactivePositions,\n\t\tsetPosition,\n\t\tdismissOnSnapToBottom,\n\t\tsnapPointsMode\n\t]);\n\tReact.useEffect(() => {\n\t\tif (isDragging || isHidden || !open || disableAnimation) return;\n\t\tif (!frameSize || !screenSize) return;\n\t\tanimateTo(position, {\n\t\t\ttype: \"timing\",\n\t\t\tduration: 250\n\t\t});\n\t}, [isKeyboardVisible, keyboardHeight]);\n\tconst wasDragging = React.useRef(false);\n\tReact.useEffect(() => {\n\t\tif (isDragging) {\n\t\t\twasDragging.current = true;\n\t\t\treturn;\n\t\t}\n\t\tif (!wasDragging.current) return;\n\t\twasDragging.current = false;\n\t\tif (!frameSize || !screenSize || isHidden || !open) return;\n\t\tanimateTo(position);\n\t}, [isDragging]);\n\tReact.useEffect(() => {\n\t\tif (!open && isKeyboardVisible) {\n\t\t\tdismissKeyboard();\n\t\t\tpauseKeyboardHandler.current = false;\n\t\t\tflushPendingHide();\n\t\t}\n\t}, [open]);\n\tconst { panGesture, panGestureRef, gestureHandlerEnabled } = useGestureHandlerPan({\n\t\tpositions: activePositions,\n\t\tframeSize,\n\t\tsetPosition,\n\t\tanimateTo,\n\t\tstopSpring,\n\t\tscrollBridge,\n\t\tsetIsDragging,\n\t\tgetCurrentPosition: () => at.current,\n\t\tresisted,\n\t\tdisableDrag,\n\t\tisShowingInnerSheet,\n\t\tsetAnimatedPosition: (val) => {\n\t\t\tat.current = val;\n\t\t\tanimatedNumber.setValue(val, { type: \"direct\" });\n\t\t},\n\t\tdismissOnSnapToBottom,\n\t\tsnapPointsMode,\n\t\tisKeyboardVisible,\n\t\tpauseKeyboardHandler\n\t});\n\tconst ignoreLayoutForKeyboard = useEvent(() => isWeb && moveOnKeyboardChange && getWebKeyboardResizeHeight() >= MIN_KEYBOARD_HEIGHT);\n\tconst handleAnimationViewLayout = useEvent((e) => {\n\t\tif (!open && stableFrameSize.current !== 0) return;\n\t\tconst layoutHeight = e.nativeEvent?.layout.height;\n\t\tif (ignoreLayoutForKeyboard() && frameSize > 0) return;\n\t\tconst next = modal ? Math.min(layoutHeight, getStableViewportHeight()) : layoutHeight;\n\t\tif (!next) return;\n\t\tsetFrameSize(Math.round(next));\n\t});\n\tconst handleMaxContentViewLayout = React.useCallback((e) => {\n\t\tif (ignoreLayoutForKeyboard() && screenSize > 0) return;\n\t\tconst next = Math.min(e.nativeEvent?.layout.height, getStableViewportHeight());\n\t\tif (!next) return;\n\t\tsetMaxContentSize(Math.round(next));\n\t}, [ignoreLayoutForKeyboard, screenSize]);\n\tconst animatedStyle = useAnimatedNumberStyle(animatedNumber, React.useCallback((val) => {\n\t\t\"worklet\";\n\t\treturn { transform: [{ translateY: frameSize === 0 ? hiddenSize : val }] };\n\t}, [frameSize]));\n\tconst [opacity, setOpacity] = React.useState(open ? 1 : 0);\n\tif (open && opacity === 0) {\n\t\tsetOpacity(1);\n\t\tif (opacityFallbackTimer.current) {\n\t\t\tclearTimeout(opacityFallbackTimer.current);\n\t\t\topacityFallbackTimer.current = null;\n\t\t}\n\t}\n\tconst forcedContentHeight = hasFit ? void 0 : snapPointsMode === \"percent\" ? `${maxSnapPoint}${isWeb ? modal ? \"dvh\" : \"%\" : \"%\"}` : maxSnapPoint;\n\tconst setHasScrollView = React.useCallback((val) => {\n\t\thasScrollView.current = val;\n\t}, []);\n\tlet contents = /* @__PURE__ */ jsx(LayoutMeasurementController, {\n\t\tdisable: !open,\n\t\tchildren: /* @__PURE__ */ jsx(ParentSheetContext.Provider, {\n\t\t\tvalue: nextParentContext,\n\t\t\tchildren: /* @__PURE__ */ jsx(SheetProvider, {\n\t\t\t\t...providerProps,\n\t\t\t\tkeyboardOccludedHeight,\n\t\t\t\tisKeyboardVisible,\n\t\t\t\tkeyboardStableFrameHeight,\n\t\t\t\tsetHasScrollView,\n\t\t\t\tchildren: /* @__PURE__ */ jsxs(GestureSheetProvider, {\n\t\t\t\t\tisDragging,\n\t\t\t\t\tblockPan,\n\t\t\t\t\tsetBlockPan,\n\t\t\t\t\tpanGesture,\n\t\t\t\t\tpanGestureRef,\n\t\t\t\t\tchildren: [\n\t\t\t\t\t\t/* @__PURE__ */ jsx(AnimatePresence, {\n\t\t\t\t\t\t\tcustom: { open },\n\t\t\t\t\t\t\tchildren: shouldHideParentSheet || !open ? null : overlayComponent\n\t\t\t\t\t\t}),\n\t\t\t\t\t\tsnapPointsMode !== \"percent\" && /* @__PURE__ */ jsx(View$1, {\n\t\t\t\t\t\t\tstyle: {\n\t\t\t\t\t\t\t\topacity: 0,\n\t\t\t\t\t\t\t\tposition: \"absolute\",\n\t\t\t\t\t\t\t\ttop: 0,\n\t\t\t\t\t\t\t\tleft: 0,\n\t\t\t\t\t\t\t\tright: 0,\n\t\t\t\t\t\t\t\tbottom: 0,\n\t\t\t\t\t\t\t\tpointerEvents: \"none\"\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tonLayout: handleMaxContentViewLayout\n\t\t\t\t\t\t}),\n\t\t\t\t\t\t/* @__PURE__ */ jsx(AnimatedView, {\n\t\t\t\t\t\t\tref,\n\t\t\t\t\t\t\tonLayout: handleAnimationViewLayout,\n\t\t\t\t\t\t\ttransition: isDragging || disableAnimation ? null : transition,\n\t\t\t\t\t\t\tdisableClassName: true,\n\t\t\t\t\t\t\tstyle: [{\n\t\t\t\t\t\t\t\tposition: \"absolute\",\n\t\t\t\t\t\t\t\tzIndex,\n\t\t\t\t\t\t\t\twidth: \"100%\",\n\t\t\t\t\t\t\t\theight: forcedContentHeight,\n\t\t\t\t\t\t\t\tminHeight: forcedContentHeight,\n\t\t\t\t\t\t\t\topacity: !shouldHideParentSheet ? opacity : 0,\n\t\t\t\t\t\t\t\t...(shouldHideParentSheet || !open) && { pointerEvents: \"none\" }\n\t\t\t\t\t\t\t}, animatedStyle],\n\t\t\t\t\t\t\tchildren: gestureHandlerEnabled && panGesture ? /* @__PURE__ */ jsx(GestureDetectorWrapper, {\n\t\t\t\t\t\t\t\tgesture: panGesture,\n\t\t\t\t\t\t\t\tstyle: { flex: 1 },\n\t\t\t\t\t\t\t\tchildren: props.children\n\t\t\t\t\t\t\t}) : /* @__PURE__ */ jsx(View$1, {\n\t\t\t\t\t\t\t\t...panResponder?.panHandlers,\n\t\t\t\t\t\t\t\tstyle: {\n\t\t\t\t\t\t\t\t\tflex: 1,\n\t\t\t\t\t\t\t\t\twidth: \"100%\",\n\t\t\t\t\t\t\t\t\theight: \"100%\"\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\tchildren: props.children\n\t\t\t\t\t\t\t})\n\t\t\t\t\t\t})\n\t\t\t\t\t]\n\t\t\t\t})\n\t\t\t})\n\t\t})\n\t});\n\tconst shouldMountChildren = unmountChildrenWhenHidden ? !!opacity : true;\n\tif (modal) {\n\t\tconst RNGHRoot = getGestureHandlerState().RootView;\n\t\tconst mountedContents = shouldMountChildren ? /* @__PURE__ */ jsx(ContainerComponent, { children: contents }) : null;\n\t\tconst modalContents = /* @__PURE__ */ jsx(Portal, {\n\t\t\tstackZIndex: zIndex,\n\t\t\t...portalProps,\n\t\t\tchildren: mountedContents && RNGHRoot ? /* @__PURE__ */ jsx(RNGHRoot, {\n\t\t\t\tstyle: open ? rnghRootStyleOpen : rnghRootStyleClosed,\n\t\t\t\tchildren: mountedContents\n\t\t\t}) : mountedContents\n\t\t});\n\t\tif (isWeb) return modalContents;\n\t\treturn /* @__PURE__ */ jsx(SheetInsideSheetContext.Provider, {\n\t\t\tvalue: onInnerSheet,\n\t\t\tchildren: modalContents\n\t\t});\n\t}\n\treturn contents;\n});\nfunction getYPositions(mode, point, screenSize, frameSize) {\n\tif (!screenSize || !frameSize) return 0;\n\tif (mode === \"mixed\") {\n\t\tif (typeof point === \"number\") return screenSize - Math.min(screenSize, Math.max(0, point));\n\t\tif (point === \"fit\") return screenSize - Math.min(screenSize, frameSize);\n\t\tif (point.endsWith(\"%\")) {\n\t\t\tconst pct2 = Math.min(100, Math.max(0, Number(point.slice(0, -1)))) / 100;\n\t\t\tif (Number.isNaN(pct2)) {\n\t\t\t\tconsole.warn(\"Invalid snapPoint percentage string\");\n\t\t\t\treturn 0;\n\t\t\t}\n\t\t\treturn Math.round(screenSize - pct2 * screenSize);\n\t\t}\n\t\tconsole.warn(\"Invalid snapPoint unknown value\");\n\t\treturn 0;\n\t}\n\tif (mode === \"fit\") {\n\t\tif (point === 0) return screenSize;\n\t\treturn screenSize - Math.min(screenSize, frameSize);\n\t}\n\tif (mode === \"constant\" && typeof point === \"number\") return screenSize - Math.min(screenSize, Math.max(0, point));\n\tconst pct = Math.min(100, Math.max(0, Number(point))) / 100;\n\tif (Number.isNaN(pct)) {\n\t\tconsole.warn(\"Invalid snapPoint percentage\");\n\t\treturn 0;\n\t}\n\treturn Math.round(screenSize - pct * screenSize);\n}\n\nexport { SheetImplementationCustom };"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["AnimatePresence","useComposedRefs","isWeb","useIsomorphicLayoutEffect","LayoutMeasurementController","View","useConfiguration","useDidFinishSSR","useEvent","useThemeName","Portal","needsPortalRepropagation","React","useState","Dimensions","PanResponder","View$1","ParentSheetContext","SheetInsideSheetContext","GestureDetectorWrapper","getGestureHandlerState","GestureSheetProvider","resisted","getKeyboardAdjustedSheetY","getKeyboardOccludedHeight","getSheetReleasePosition","MIN_KEYBOARD_HEIGHT","getMaxViewportHeight","getStableLayoutViewportHeight","getWebKeyboardResizeHeight","getWebVisualViewportOffsetTop","SheetProvider","useGestureHandlerPan","useKeyboardControllerSheet","useSafeAreaInsets","useSheetOpenState","useSheetProviderProps","jsx","jsxs","hiddenSize","rnghRootStyleOpen","width","height","rnghRootStyleClosed","sheetHiddenStyleSheet","relativeDimensionTo","getStableViewportHeight","window","get","SheetImplementationCustom","forwardRef","SheetImplementationCustom2","props","forwardedRef","parentSheet","useContext","safeAreaTopInset","top","transition","transitionConfig","transitionConfigProp","modal","zIndex","moveOnKeyboardChange","unmountChildrenWhenHidden","portalProps","containerComponent","ContainerComponent","Fragment","onAnimationComplete","state","overlayComponent","setOverlayComponent","providerProps","onOverlayComponent","frameSize","setFrameSize","dismissOnSnapToBottom","snapPoints","snapPointsMode","hasFit","position","setPosition","scrollBridge","screenSize","setMaxContentSize","maxSnapPoint","open","controller","isHidden","openRef","useRef","current","ref","contentRef","animationDriver","Error","animationProp","animationPropConfig","Array","isArray","animations","isShowingInnerSheet","setIsShowingInnerSheet","shouldHideParentSheet","sheetInsideSheet","onInnerSheet","useCallback","hasChild","keyboardHeight","isKeyboardVisible","dismissKeyboard","pauseKeyboardHandler","flushPendingHide","enabled","Boolean","stableFrameSize","useEffect","isWebKbSheet","isNativeKbFitSheet","preKeyboardFrameSize","effScreenSize","effectiveFrameSize","positions","useMemo","map","point","getYPositions","isDragging","setIsDragging_","isDraggingRef","setIsDragging","val","activePositionsRef","activePositions","result","p","sheetY","shouldTranslate","safeAreaTop","keyboardOccludedHeight","keyboardStableFrameHeight","useAnimatedNumber","useAnimatedNumberStyle","AnimatedView","nextParentContext","startPosition","animatedNumber","at","hasntMeasured","disableAnimation","setDisableAnimation","skipAdaptAnimation","skipNextAnimation","hasScrollView","opacityFallbackTimer","syncAnimatedPosition","value","paneY","minY","wasAtTop","isAtTop","nowAtTop","lockScrollAtTop","y","forceScrollTo","scrollLockY","setScrollEnabled","setAnimatedPositionDirect","setValue","type","getAnimatedPosition","getValue","stopSpring","stop","onFinishAnimate","animateTo","position2","animationOverride","closeTarget","Math","max","toValue","isOpenAnimation","clearTimeout","animationCompleteCallback","setOpacity","setTimeout","duration","scrollLock","scrollStartY","isTopPosition","disableDrag","blockPan","setBlockPan","panResponder","paneMinY","startY","setPanning","document","createElement","head","appendChild","innerText","release","vy","setParentDragging","isExternalDrag","previouslyScrolling","currentPos","closestPoint","projectedEnd","currentPosition","finish","_e","state2","dragAt","dy","onMoveShouldSet","e","getShouldSet","target","handleRef","scrollNodeTouched","hasScrollableContent","isScrolled","isDraggingUp","isNearTop","abs","granted","grant","startPanDrag","drag","snapToPosition","positionIndex","create","onMoveShouldSetPanResponder","onPanResponderTerminationRequest","onPanResponderGrant","onPanResponderMove","to","onPanResponderEnd","onPanResponderTerminate","onPanResponderRelease","wasDragging","panGesture","panGestureRef","gestureHandlerEnabled","getCurrentPosition","setAnimatedPosition","ignoreLayoutForKeyboard","handleAnimationViewLayout","layoutHeight","nativeEvent","layout","next","min","round","handleMaxContentViewLayout","animatedStyle","transform","translateY","opacity","forcedContentHeight","setHasScrollView","contents","disable","children","Provider","custom","style","left","right","bottom","pointerEvents","onLayout","disableClassName","minHeight","gesture","flex","panHandlers","shouldMountChildren","RNGHRoot","RootView","mountedContents","modalContents","stackZIndex","mode","endsWith","pct2","Number","slice","isNaN","console","warn","pct"],"sources":["SheetImplementationCustom.mjs"],"sourcesContent":["import { AnimatePresence } from \"@tamagui/animate-presence\";\nimport { useComposedRefs } from \"@tamagui/compose-refs\";\nimport { isWeb, useIsomorphicLayoutEffect } from \"@tamagui/constants\";\nimport { LayoutMeasurementController, View, useConfiguration, useDidFinishSSR, useEvent, useThemeName } from \"@tamagui/core\";\nimport { Portal, needsPortalRepropagation } from \"@tamagui/portal\";\nimport React, { useState } from \"react\";\nimport { Dimensions, PanResponder, View as View$1 } from \"react-native-web\";\nimport { ParentSheetContext, SheetInsideSheetContext } from \"./contexts\";\nimport { GestureDetectorWrapper } from \"./GestureDetectorWrapper\";\nimport { getGestureHandlerState } from \"./gestureState\";\nimport { GestureSheetProvider } from \"./GestureSheetContext\";\nimport { resisted } from \"./helpers\";\nimport { getKeyboardAdjustedSheetY, getKeyboardOccludedHeight, getSheetReleasePosition } from \"./keyboardAvoidance\";\nimport { MIN_KEYBOARD_HEIGHT, getMaxViewportHeight, getStableLayoutViewportHeight, getWebKeyboardResizeHeight, getWebVisualViewportOffsetTop } from \"./webViewport\";\nimport { SheetProvider } from \"./SheetContext\";\nimport { useGestureHandlerPan } from \"./useGestureHandlerPan\";\nimport { useKeyboardControllerSheet } from \"./useKeyboardControllerSheet\";\nimport { useSafeAreaInsets } from \"./useSafeAreaInsets\";\nimport { useSheetOpenState } from \"./useSheetOpenState\";\nimport { useSheetProviderProps } from \"./useSheetProviderProps\";\nimport { jsx, jsxs } from \"react/jsx-runtime\";\n\nconst hiddenSize = 10000.1;\nconst rnghRootStyleOpen = {\n\twidth: \"100%\",\n\theight: \"100%\"\n};\nconst rnghRootStyleClosed = {\n\twidth: \"100%\",\n\theight: 0\n};\nlet sheetHiddenStyleSheet = null;\nconst relativeDimensionTo = isWeb ? \"window\" : \"screen\";\nfunction getStableViewportHeight() {\n\tif (isWeb && typeof window !== \"undefined\") return getStableLayoutViewportHeight();\n\treturn Dimensions.get(relativeDimensionTo).height;\n}\nconst SheetImplementationCustom = React.forwardRef(function SheetImplementationCustom2(props, forwardedRef) {\n\tconst parentSheet = React.useContext(ParentSheetContext);\n\tconst safeAreaTopInset = useSafeAreaInsets()?.top ?? 0;\n\tconst { transition, transitionConfig: transitionConfigProp, modal = false, zIndex = parentSheet.zIndex + 1, moveOnKeyboardChange = false, unmountChildrenWhenHidden = false, portalProps, containerComponent: ContainerComponent = React.Fragment, onAnimationComplete } = props;\n\tconst state = useSheetOpenState(props);\n\tconst [overlayComponent, setOverlayComponent] = React.useState(null);\n\tconst providerProps = useSheetProviderProps(props, state, { onOverlayComponent: setOverlayComponent });\n\tconst { frameSize, setFrameSize, dismissOnSnapToBottom, snapPoints, snapPointsMode, hasFit, position, setPosition, scrollBridge, screenSize, setMaxContentSize, maxSnapPoint } = providerProps;\n\tconst { open, controller, isHidden } = state;\n\tconst openRef = React.useRef(open);\n\topenRef.current = open;\n\tconst ref = useComposedRefs(forwardedRef, React.useRef(void 0), providerProps.contentRef);\n\tconst { animationDriver } = useConfiguration();\n\tif (!animationDriver) throw new Error(`Sheet requires an animation driver to be set`);\n\tconst transitionConfig = (() => {\n\t\tif (transitionConfigProp) return transitionConfigProp;\n\t\tconst [animationProp, animationPropConfig] = !transition ? [] : Array.isArray(transition) ? transition : [transition];\n\t\tif (animationProp && animationDriver.animations?.[animationProp]) return {\n\t\t\t...animationDriver.animations[animationProp],\n\t\t\t...animationPropConfig\n\t\t};\n\t\treturn null;\n\t})();\n\tconst [isShowingInnerSheet, setIsShowingInnerSheet] = React.useState(false);\n\tconst shouldHideParentSheet = !isWeb && modal && isShowingInnerSheet && needsPortalRepropagation();\n\tconst sheetInsideSheet = React.useContext(SheetInsideSheetContext);\n\tconst onInnerSheet = React.useCallback((hasChild) => {\n\t\tsetIsShowingInnerSheet(hasChild);\n\t}, []);\n\tconst { keyboardHeight, isKeyboardVisible, dismissKeyboard, pauseKeyboardHandler, flushPendingHide } = useKeyboardControllerSheet({ enabled: Boolean(moveOnKeyboardChange) });\n\tconst stableFrameSize = React.useRef(frameSize);\n\tReact.useEffect(() => {\n\t\tif (open && frameSize) stableFrameSize.current = frameSize;\n\t}, [open, frameSize]);\n\tconst isWebKbSheet = isWeb && hasFit && moveOnKeyboardChange;\n\tconst isNativeKbFitSheet = !isWeb && hasFit && Boolean(moveOnKeyboardChange);\n\tconst preKeyboardFrameSize = React.useRef(0);\n\tReact.useEffect(() => {\n\t\tif (isNativeKbFitSheet && open && !isKeyboardVisible && frameSize > 0) preKeyboardFrameSize.current = frameSize;\n\t}, [\n\t\tisNativeKbFitSheet,\n\t\topen,\n\t\tisKeyboardVisible,\n\t\tframeSize\n\t]);\n\tconst effScreenSize = isWebKbSheet ? getStableViewportHeight() : screenSize;\n\tconst effectiveFrameSize = open ? frameSize : stableFrameSize.current || frameSize;\n\tconst positions = React.useMemo(() => snapPoints.map((point) => getYPositions(snapPointsMode, point, effScreenSize, effectiveFrameSize)), [\n\t\teffScreenSize,\n\t\teffectiveFrameSize,\n\t\tsnapPoints,\n\t\tsnapPointsMode\n\t]);\n\tconst [isDragging, setIsDragging_] = React.useState(false);\n\tconst isDraggingRef = React.useRef(false);\n\tconst setIsDragging = React.useCallback((val) => {\n\t\tisDraggingRef.current = val;\n\t\tpauseKeyboardHandler.current = val;\n\t\tsetIsDragging_(val);\n\t\tif (!val) flushPendingHide();\n\t}, [pauseKeyboardHandler, flushPendingHide]);\n\tconst activePositionsRef = React.useRef(positions);\n\tconst activePositions = React.useMemo(() => {\n\t\tif (isDragging || isDraggingRef.current) return activePositionsRef.current;\n\t\tlet result;\n\t\tif (!isKeyboardVisible || keyboardHeight <= 0) result = positions;\n\t\telse result = positions.map((p) => getKeyboardAdjustedSheetY({\n\t\t\tsheetY: p,\n\t\t\tscreenSize: effScreenSize,\n\t\t\tisKeyboardVisible,\n\t\t\tkeyboardHeight,\n\t\t\tshouldTranslate: true,\n\t\t\tsafeAreaTop: isWeb ? getWebVisualViewportOffsetTop() : safeAreaTopInset\n\t\t}));\n\t\tactivePositionsRef.current = result;\n\t\treturn result;\n\t}, [\n\t\tpositions,\n\t\tisKeyboardVisible,\n\t\tkeyboardHeight,\n\t\teffScreenSize,\n\t\tisDragging,\n\t\tsafeAreaTopInset\n\t]);\n\tconst keyboardOccludedHeight = getKeyboardOccludedHeight({\n\t\tframeSize: effectiveFrameSize,\n\t\tisKeyboardVisible,\n\t\tkeyboardHeight,\n\t\tscreenSize: effScreenSize,\n\t\tsheetY: position >= 0 ? activePositions[position] : void 0\n\t});\n\tconst keyboardStableFrameHeight = isWebKbSheet && isKeyboardVisible && frameSize > 0 ? frameSize : isNativeKbFitSheet && isKeyboardVisible && preKeyboardFrameSize.current > 0 ? preKeyboardFrameSize.current : 0;\n\tconst { useAnimatedNumber, useAnimatedNumberStyle } = animationDriver;\n\tconst AnimatedView = animationDriver.View ?? View;\n\tuseIsomorphicLayoutEffect(() => {\n\t\tif (!(sheetInsideSheet && open)) return;\n\t\tsheetInsideSheet(true);\n\t\treturn () => {\n\t\t\tsheetInsideSheet(false);\n\t\t};\n\t}, [sheetInsideSheet, open]);\n\tconst nextParentContext = React.useMemo(() => ({ zIndex }), [zIndex]);\n\tconst startPosition = useDidFinishSSR() && screenSize ? screenSize : hiddenSize;\n\tconst animatedNumber = useAnimatedNumber(startPosition);\n\tconst at = React.useRef(startPosition);\n\tconst hasntMeasured = at.current === hiddenSize;\n\tconst [disableAnimation, setDisableAnimation] = useState(hasntMeasured);\n\tconst skipAdaptAnimation = React.useRef(false);\n\tif (controller?.skipNextAnimation) skipAdaptAnimation.current = true;\n\tconst hasScrollView = React.useRef(false);\n\tconst opacityFallbackTimer = React.useRef(null);\n\tconst syncAnimatedPosition = useEvent((value) => {\n\t\tat.current = value;\n\t\tscrollBridge.paneY = value;\n\t\tconst minY = activePositions[0];\n\t\tconst wasAtTop = scrollBridge.isAtTop;\n\t\tconst nowAtTop = value <= minY + 5;\n\t\tif (wasAtTop === nowAtTop) return;\n\t\tscrollBridge.isAtTop = nowAtTop;\n\t\tif (nowAtTop) {\n\t\t\tif (scrollBridge.lockScrollAtTop) {\n\t\t\t\tif (scrollBridge.y > 0) {\n\t\t\t\t\tscrollBridge.forceScrollTo?.(0);\n\t\t\t\t\tscrollBridge.y = 0;\n\t\t\t\t}\n\t\t\t\tscrollBridge.scrollLockY = 0;\n\t\t\t\tscrollBridge.setScrollEnabled?.(false, 0);\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tif (scrollBridge.y > 0) {\n\t\t\t\tscrollBridge.forceScrollTo?.(0);\n\t\t\t\tscrollBridge.y = 0;\n\t\t\t}\n\t\t\tscrollBridge.scrollLockY = void 0;\n\t\t\tscrollBridge.setScrollEnabled?.(true);\n\t\t} else {\n\t\t\tscrollBridge.scrollLockY = 0;\n\t\t\tscrollBridge.setScrollEnabled?.(false);\n\t\t}\n\t});\n\tconst setAnimatedPositionDirect = useEvent((value) => {\n\t\tsyncAnimatedPosition(value);\n\t\tanimatedNumber.setValue(value, { type: \"direct\" });\n\t});\n\tconst getAnimatedPosition = useEvent(() => {\n\t\tconst value = animatedNumber.getValue();\n\t\tsyncAnimatedPosition(value);\n\t\treturn value;\n\t});\n\tfunction stopSpring() {\n\t\tanimatedNumber.stop();\n\t\tif (scrollBridge.onFinishAnimate) {\n\t\t\tscrollBridge.onFinishAnimate();\n\t\t\tscrollBridge.onFinishAnimate = void 0;\n\t\t}\n\t}\n\tconst animateTo = useEvent((position2, animationOverride) => {\n\t\tif (frameSize === 0) return;\n\t\tconst closeTarget = isWeb ? Math.max(effScreenSize, getMaxViewportHeight()) : effScreenSize;\n\t\tlet toValue = isHidden || position2 === -1 ? closeTarget : activePositions[position2];\n\t\tif (at.current === toValue) return;\n\t\tat.current = toValue;\n\t\tstopSpring();\n\t\tconst isOpenAnimation = position2 !== -1 && !isHidden;\n\t\tif (opacityFallbackTimer.current) {\n\t\t\tclearTimeout(opacityFallbackTimer.current);\n\t\t\topacityFallbackTimer.current = null;\n\t\t}\n\t\tconst animationCompleteCallback = () => {\n\t\t\tsyncAnimatedPosition(toValue);\n\t\t\tif (opacityFallbackTimer.current) {\n\t\t\t\tclearTimeout(opacityFallbackTimer.current);\n\t\t\t\topacityFallbackTimer.current = null;\n\t\t\t}\n\t\t\tif (!isOpenAnimation && !openRef.current) setOpacity(0);\n\t\t\tonAnimationComplete?.({ open: isOpenAnimation });\n\t\t\tcontroller?.onAnimationComplete?.({ open: isOpenAnimation });\n\t\t};\n\t\tif (!isOpenAnimation) opacityFallbackTimer.current = setTimeout(() => {\n\t\t\topacityFallbackTimer.current = null;\n\t\t\tif (!openRef.current) setOpacity(0);\n\t\t}, 1e3);\n\t\tif (skipAdaptAnimation.current) {\n\t\t\tskipAdaptAnimation.current = false;\n\t\t\tanimatedNumber.setValue(toValue, {\n\t\t\t\ttype: \"timing\",\n\t\t\t\tduration: 0\n\t\t\t}, animationCompleteCallback);\n\t\t\treturn;\n\t\t}\n\t\tanimatedNumber.setValue(toValue, animationOverride || {\n\t\t\ttype: \"spring\",\n\t\t\t...transitionConfig\n\t\t}, animationCompleteCallback);\n\t});\n\tuseIsomorphicLayoutEffect(() => {\n\t\tif (hasntMeasured && screenSize && frameSize) {\n\t\t\tat.current = screenSize;\n\t\t\tanimatedNumber.setValue(screenSize, {\n\t\t\t\ttype: \"timing\",\n\t\t\t\tduration: 0\n\t\t\t}, () => {\n\t\t\t\tsyncAnimatedPosition(screenSize);\n\t\t\t\tsetTimeout(() => {\n\t\t\t\t\tsetDisableAnimation(false);\n\t\t\t\t}, 10);\n\t\t\t});\n\t\t\treturn;\n\t\t}\n\t\tif (disableAnimation) return;\n\t\tif (isDraggingRef.current) return;\n\t\tif (!frameSize || !screenSize || isHidden || hasntMeasured && !open) return;\n\t\tanimateTo(position);\n\t\tif (position === -1) {\n\t\t\tscrollBridge.scrollLock = false;\n\t\t\tscrollBridge.scrollStartY = -1;\n\t\t}\n\t\tif (open && position >= 0) {\n\t\t\tconst isTopPosition = position === 0;\n\t\t\tscrollBridge.isAtTop = isTopPosition;\n\t\t\tif (isTopPosition) {\n\t\t\t\tscrollBridge.scrollLockY = void 0;\n\t\t\t\tscrollBridge.setScrollEnabled?.(true);\n\t\t\t} else {\n\t\t\t\tscrollBridge.scrollLockY = 0;\n\t\t\t\tscrollBridge.setScrollEnabled?.(false);\n\t\t\t}\n\t\t}\n\t}, [\n\t\thasntMeasured,\n\t\tdisableAnimation,\n\t\tisHidden,\n\t\tframeSize,\n\t\tscreenSize,\n\t\topen,\n\t\tposition\n\t]);\n\tconst disableDrag = props.disableDrag ?? controller?.disableDrag;\n\tuseThemeName();\n\tconst [blockPan, setBlockPan] = React.useState(false);\n\tconst panResponder = React.useMemo(() => {\n\t\tif (disableDrag) return;\n\t\tif (!frameSize) return;\n\t\tif (isShowingInnerSheet) return;\n\t\tconst minY = activePositions[0];\n\t\tscrollBridge.paneMinY = minY;\n\t\tlet startY = at.current;\n\t\tfunction setPanning(val) {\n\t\t\tsetIsDragging(val);\n\t\t\tif (!sheetHiddenStyleSheet) {\n\t\t\t\tsheetHiddenStyleSheet = document.createElement(\"style\");\n\t\t\t\tif (typeof document.head !== \"undefined\") document.head.appendChild(sheetHiddenStyleSheet);\n\t\t\t}\n\t\t\tif (!val) sheetHiddenStyleSheet.innerText = \"\";\n\t\t\telse sheetHiddenStyleSheet.innerText = \":root * { user-select: none !important; -webkit-user-select: none !important; }\";\n\t\t}\n\t\tconst release = ({ vy }) => {\n\t\t\tscrollBridge.setParentDragging(false);\n\t\t\tif (scrollBridge.scrollLock) return;\n\t\t\tisExternalDrag = false;\n\t\t\tpreviouslyScrolling = false;\n\t\t\tsetPanning(false);\n\t\t\tconst currentPos = at.current;\n\t\t\tconst closestPoint = getSheetReleasePosition({\n\t\t\t\tpositions: activePositions,\n\t\t\t\tprojectedEnd: currentPos + frameSize * vy * .2,\n\t\t\t\tcurrentPosition: currentPos,\n\t\t\t\tframeSize,\n\t\t\t\tdismissOnSnapToBottom,\n\t\t\t\tsnapPointsMode,\n\t\t\t\tisKeyboardVisible,\n\t\t\t\tisWeb\n\t\t\t});\n\t\t\tsetPosition(closestPoint);\n\t\t\tanimateTo(closestPoint);\n\t\t};\n\t\tconst finish = (_e, state2) => {\n\t\t\trelease({\n\t\t\t\tvy: state2.vy,\n\t\t\t\tdragAt: state2.dy\n\t\t\t});\n\t\t};\n\t\tlet previouslyScrolling = false;\n\t\tconst onMoveShouldSet = (e, { dy }) => {\n\t\t\tfunction getShouldSet() {\n\t\t\t\tif (e.target === providerProps.handleRef.current) return true;\n\t\t\t\tif (scrollBridge.scrollNodeTouched) return false;\n\t\t\t\tif (scrollBridge.hasScrollableContent === true) {\n\t\t\t\t\tif (scrollBridge.scrollLock) return false;\n\t\t\t\t\tconst isScrolled = scrollBridge.y !== 0;\n\t\t\t\t\tconst isDraggingUp = dy < 0;\n\t\t\t\t\tconst isNearTop = scrollBridge.paneY - 5 <= scrollBridge.paneMinY;\n\t\t\t\t\tif (isScrolled) return false;\n\t\t\t\t\tif (isNearTop) {\n\t\t\t\t\t\tif (hasScrollView.current && isDraggingUp) return false;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\treturn Math.abs(dy) > 10;\n\t\t\t}\n\t\t\tconst granted = getShouldSet();\n\t\t\tif (granted) scrollBridge.setParentDragging(true);\n\t\t\treturn granted;\n\t\t};\n\t\tconst grant = () => {\n\t\t\tsetPanning(true);\n\t\t\tstopSpring();\n\t\t\tstartY = getAnimatedPosition();\n\t\t};\n\t\tlet isExternalDrag = false;\n\t\tscrollBridge.startPanDrag = () => {\n\t\t\tisExternalDrag = true;\n\t\t\tgrant();\n\t\t};\n\t\tscrollBridge.drag = (dy) => {\n\t\t\tif (!isExternalDrag) {\n\t\t\t\tisExternalDrag = true;\n\t\t\t\tgrant();\n\t\t\t}\n\t\t\tsetAnimatedPositionDirect(resisted(dy + startY, minY));\n\t\t};\n\t\tscrollBridge.release = release;\n\t\tscrollBridge.snapToPosition = (positionIndex) => {\n\t\t\tisExternalDrag = false;\n\t\t\tsetPanning(false);\n\t\t\tsetPosition(positionIndex);\n\t\t\tanimateTo(positionIndex);\n\t\t};\n\t\treturn PanResponder.create({\n\t\t\tonMoveShouldSetPanResponder: onMoveShouldSet,\n\t\t\tonPanResponderTerminationRequest: () => false,\n\t\t\tonPanResponderGrant: grant,\n\t\t\tonPanResponderMove: (_e, { dy }) => {\n\t\t\t\tconst to = resisted(dy + startY, minY);\n\t\t\t\tif (to <= minY) scrollBridge.setParentDragging(false);\n\t\t\t\telse scrollBridge.setParentDragging(true);\n\t\t\t\tsetAnimatedPositionDirect(to);\n\t\t\t},\n\t\t\tonPanResponderEnd: finish,\n\t\t\tonPanResponderTerminate: finish,\n\t\t\tonPanResponderRelease: finish\n\t\t});\n\t}, [\n\t\tdisableDrag,\n\t\tisShowingInnerSheet,\n\t\tanimateTo,\n\t\tframeSize,\n\t\tactivePositions,\n\t\tsetPosition,\n\t\tdismissOnSnapToBottom,\n\t\tsnapPointsMode\n\t]);\n\tReact.useEffect(() => {\n\t\tif (isDragging || isHidden || !open || disableAnimation) return;\n\t\tif (!frameSize || !screenSize) return;\n\t\tanimateTo(position, {\n\t\t\ttype: \"timing\",\n\t\t\tduration: 250\n\t\t});\n\t}, [isKeyboardVisible, keyboardHeight]);\n\tconst wasDragging = React.useRef(false);\n\tReact.useEffect(() => {\n\t\tif (isDragging) {\n\t\t\twasDragging.current = true;\n\t\t\treturn;\n\t\t}\n\t\tif (!wasDragging.current) return;\n\t\twasDragging.current = false;\n\t\tif (!frameSize || !screenSize || isHidden || !open) return;\n\t\tanimateTo(position);\n\t}, [isDragging]);\n\tReact.useEffect(() => {\n\t\tif (!open && isKeyboardVisible) {\n\t\t\tdismissKeyboard();\n\t\t\tpauseKeyboardHandler.current = false;\n\t\t\tflushPendingHide();\n\t\t}\n\t}, [open]);\n\tconst { panGesture, panGestureRef, gestureHandlerEnabled } = useGestureHandlerPan({\n\t\tpositions: activePositions,\n\t\tframeSize,\n\t\tsetPosition,\n\t\tanimateTo,\n\t\tstopSpring,\n\t\tscrollBridge,\n\t\tsetIsDragging,\n\t\tgetCurrentPosition: getAnimatedPosition,\n\t\tresisted,\n\t\tdisableDrag,\n\t\tisShowingInnerSheet,\n\t\tsetAnimatedPosition: setAnimatedPositionDirect,\n\t\tdismissOnSnapToBottom,\n\t\tsnapPointsMode,\n\t\tisKeyboardVisible,\n\t\tpauseKeyboardHandler\n\t});\n\tconst ignoreLayoutForKeyboard = useEvent(() => isWeb && moveOnKeyboardChange && getWebKeyboardResizeHeight() >= MIN_KEYBOARD_HEIGHT);\n\tconst handleAnimationViewLayout = useEvent((e) => {\n\t\tif (!open && stableFrameSize.current !== 0) return;\n\t\tconst layoutHeight = e.nativeEvent?.layout.height;\n\t\tif (ignoreLayoutForKeyboard() && frameSize > 0) return;\n\t\tconst next = modal ? Math.min(layoutHeight, getStableViewportHeight()) : layoutHeight;\n\t\tif (!next) return;\n\t\tsetFrameSize(Math.round(next));\n\t});\n\tconst handleMaxContentViewLayout = React.useCallback((e) => {\n\t\tif (ignoreLayoutForKeyboard() && screenSize > 0) return;\n\t\tconst next = Math.min(e.nativeEvent?.layout.height, getStableViewportHeight());\n\t\tif (!next) return;\n\t\tsetMaxContentSize(Math.round(next));\n\t}, [ignoreLayoutForKeyboard, screenSize]);\n\tconst animatedStyle = useAnimatedNumberStyle(animatedNumber, React.useCallback((val) => {\n\t\t\"worklet\";\n\t\treturn { transform: [{ translateY: frameSize === 0 ? hiddenSize : val }] };\n\t}, [frameSize]));\n\tconst [opacity, setOpacity] = React.useState(open ? 1 : 0);\n\tif (open && opacity === 0) {\n\t\tsetOpacity(1);\n\t\tif (opacityFallbackTimer.current) {\n\t\t\tclearTimeout(opacityFallbackTimer.current);\n\t\t\topacityFallbackTimer.current = null;\n\t\t}\n\t}\n\tconst forcedContentHeight = hasFit ? void 0 : snapPointsMode === \"percent\" ? `${maxSnapPoint}${isWeb ? modal ? \"dvh\" : \"%\" : \"%\"}` : maxSnapPoint;\n\tconst setHasScrollView = React.useCallback((val) => {\n\t\thasScrollView.current = val;\n\t}, []);\n\tlet contents = /* @__PURE__ */ jsx(LayoutMeasurementController, {\n\t\tdisable: !open,\n\t\tchildren: /* @__PURE__ */ jsx(ParentSheetContext.Provider, {\n\t\t\tvalue: nextParentContext,\n\t\t\tchildren: /* @__PURE__ */ jsx(SheetProvider, {\n\t\t\t\t...providerProps,\n\t\t\t\tkeyboardOccludedHeight,\n\t\t\t\tisKeyboardVisible,\n\t\t\t\tkeyboardStableFrameHeight,\n\t\t\t\tsetHasScrollView,\n\t\t\t\tchildren: /* @__PURE__ */ jsxs(GestureSheetProvider, {\n\t\t\t\t\tisDragging,\n\t\t\t\t\tblockPan,\n\t\t\t\t\tsetBlockPan,\n\t\t\t\t\tpanGesture,\n\t\t\t\t\tpanGestureRef,\n\t\t\t\t\tchildren: [\n\t\t\t\t\t\t/* @__PURE__ */ jsx(AnimatePresence, {\n\t\t\t\t\t\t\tcustom: { open },\n\t\t\t\t\t\t\tchildren: shouldHideParentSheet || !open ? null : overlayComponent\n\t\t\t\t\t\t}),\n\t\t\t\t\t\tsnapPointsMode !== \"percent\" && /* @__PURE__ */ jsx(View$1, {\n\t\t\t\t\t\t\tstyle: {\n\t\t\t\t\t\t\t\topacity: 0,\n\t\t\t\t\t\t\t\tposition: \"absolute\",\n\t\t\t\t\t\t\t\ttop: 0,\n\t\t\t\t\t\t\t\tleft: 0,\n\t\t\t\t\t\t\t\tright: 0,\n\t\t\t\t\t\t\t\tbottom: 0,\n\t\t\t\t\t\t\t\tpointerEvents: \"none\"\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tonLayout: handleMaxContentViewLayout\n\t\t\t\t\t\t}),\n\t\t\t\t\t\t/* @__PURE__ */ jsx(AnimatedView, {\n\t\t\t\t\t\t\tref,\n\t\t\t\t\t\t\tonLayout: handleAnimationViewLayout,\n\t\t\t\t\t\t\ttransition: isDragging || disableAnimation ? null : transition,\n\t\t\t\t\t\t\tdisableClassName: true,\n\t\t\t\t\t\t\tstyle: [{\n\t\t\t\t\t\t\t\tposition: \"absolute\",\n\t\t\t\t\t\t\t\tzIndex,\n\t\t\t\t\t\t\t\twidth: \"100%\",\n\t\t\t\t\t\t\t\theight: forcedContentHeight,\n\t\t\t\t\t\t\t\tminHeight: forcedContentHeight,\n\t\t\t\t\t\t\t\topacity: !shouldHideParentSheet ? opacity : 0,\n\t\t\t\t\t\t\t\t...(shouldHideParentSheet || !open) && { pointerEvents: \"none\" }\n\t\t\t\t\t\t\t}, animatedStyle],\n\t\t\t\t\t\t\tchildren: gestureHandlerEnabled && panGesture ? /* @__PURE__ */ jsx(GestureDetectorWrapper, {\n\t\t\t\t\t\t\t\tgesture: panGesture,\n\t\t\t\t\t\t\t\tstyle: { flex: 1 },\n\t\t\t\t\t\t\t\tchildren: props.children\n\t\t\t\t\t\t\t}) : /* @__PURE__ */ jsx(View$1, {\n\t\t\t\t\t\t\t\t...panResponder?.panHandlers,\n\t\t\t\t\t\t\t\tstyle: {\n\t\t\t\t\t\t\t\t\tflex: 1,\n\t\t\t\t\t\t\t\t\twidth: \"100%\",\n\t\t\t\t\t\t\t\t\theight: \"100%\"\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\tchildren: props.children\n\t\t\t\t\t\t\t})\n\t\t\t\t\t\t})\n\t\t\t\t\t]\n\t\t\t\t})\n\t\t\t})\n\t\t})\n\t});\n\tconst shouldMountChildren = unmountChildrenWhenHidden ? !!opacity : true;\n\tif (modal) {\n\t\tconst RNGHRoot = getGestureHandlerState().RootView;\n\t\tconst mountedContents = shouldMountChildren ? /* @__PURE__ */ jsx(ContainerComponent, { children: contents }) : null;\n\t\tconst modalContents = /* @__PURE__ */ jsx(Portal, {\n\t\t\tstackZIndex: zIndex,\n\t\t\t...portalProps,\n\t\t\tchildren: mountedContents && RNGHRoot ? /* @__PURE__ */ jsx(RNGHRoot, {\n\t\t\t\tstyle: open ? rnghRootStyleOpen : rnghRootStyleClosed,\n\t\t\t\tchildren: mountedContents\n\t\t\t}) : mountedContents\n\t\t});\n\t\tif (isWeb) return modalContents;\n\t\treturn /* @__PURE__ */ jsx(SheetInsideSheetContext.Provider, {\n\t\t\tvalue: onInnerSheet,\n\t\t\tchildren: modalContents\n\t\t});\n\t}\n\treturn contents;\n});\nfunction getYPositions(mode, point, screenSize, frameSize) {\n\tif (!screenSize || !frameSize) return 0;\n\tif (mode === \"mixed\") {\n\t\tif (typeof point === \"number\") return screenSize - Math.min(screenSize, Math.max(0, point));\n\t\tif (point === \"fit\") return screenSize - Math.min(screenSize, frameSize);\n\t\tif (point.endsWith(\"%\")) {\n\t\t\tconst pct2 = Math.min(100, Math.max(0, Number(point.slice(0, -1)))) / 100;\n\t\t\tif (Number.isNaN(pct2)) {\n\t\t\t\tconsole.warn(\"Invalid snapPoint percentage string\");\n\t\t\t\treturn 0;\n\t\t\t}\n\t\t\treturn Math.round(screenSize - pct2 * screenSize);\n\t\t}\n\t\tconsole.warn(\"Invalid snapPoint unknown value\");\n\t\treturn 0;\n\t}\n\tif (mode === \"fit\") {\n\t\tif (point === 0) return screenSize;\n\t\treturn screenSize - Math.min(screenSize, frameSize);\n\t}\n\tif (mode === \"constant\" && typeof point === \"number\") return screenSize - Math.min(screenSize, Math.max(0, point));\n\tconst pct = Math.min(100, Math.max(0, Number(point))) / 100;\n\tif (Number.isNaN(pct)) {\n\t\tconsole.warn(\"Invalid snapPoint percentage\");\n\t\treturn 0;\n\t}\n\treturn Math.round(screenSize - pct * screenSize);\n}\n\nexport { SheetImplementationCustom };"],"mappings":"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","ignoreList":[]}