@tamagui/sheet 2.0.0 → 2.1.0-1780182832733
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.
- package/.turbo/turbo-build.log +1 -1
- package/dist/cjs/SheetImplementationCustom.cjs +46 -22
- package/dist/cjs/SheetImplementationCustom.native.js +58 -27
- package/dist/cjs/SheetImplementationCustom.native.js.map +1 -1
- package/dist/cjs/SheetScrollView.cjs +15 -4
- package/dist/cjs/SheetScrollView.native.js +15 -4
- package/dist/cjs/SheetScrollView.native.js.map +1 -1
- package/dist/cjs/createSheet.cjs +5 -2
- package/dist/cjs/createSheet.native.js +5 -2
- package/dist/cjs/createSheet.native.js.map +1 -1
- package/dist/cjs/nativeSheet.cjs +2 -0
- package/dist/cjs/nativeSheet.native.js +2 -0
- package/dist/cjs/nativeSheet.native.js.map +1 -1
- package/dist/cjs/useKeyboardControllerSheet.cjs +65 -6
- package/dist/cjs/useSheetProviderProps.native.js.map +1 -1
- package/dist/cjs/useSheetScrollViewGestures.cjs +6 -1
- package/dist/cjs/webViewport.cjs +58 -0
- package/dist/cjs/webViewport.native.js +63 -0
- package/dist/cjs/webViewport.native.js.map +1 -0
- package/dist/esm/SheetImplementationCustom.mjs +46 -22
- package/dist/esm/SheetImplementationCustom.mjs.map +1 -1
- package/dist/esm/SheetImplementationCustom.native.js +58 -27
- package/dist/esm/SheetImplementationCustom.native.js.map +1 -1
- package/dist/esm/SheetScrollView.mjs +16 -5
- package/dist/esm/SheetScrollView.mjs.map +1 -1
- package/dist/esm/SheetScrollView.native.js +16 -5
- package/dist/esm/SheetScrollView.native.js.map +1 -1
- package/dist/esm/createSheet.mjs +6 -3
- package/dist/esm/createSheet.mjs.map +1 -1
- package/dist/esm/createSheet.native.js +6 -3
- package/dist/esm/createSheet.native.js.map +1 -1
- package/dist/esm/nativeSheet.mjs +2 -0
- package/dist/esm/nativeSheet.mjs.map +1 -1
- package/dist/esm/nativeSheet.native.js +2 -0
- package/dist/esm/nativeSheet.native.js.map +1 -1
- package/dist/esm/useKeyboardControllerSheet.mjs +66 -7
- package/dist/esm/useKeyboardControllerSheet.mjs.map +1 -1
- package/dist/esm/useSheetProviderProps.mjs.map +1 -1
- package/dist/esm/useSheetProviderProps.native.js.map +1 -1
- package/dist/esm/useSheetScrollViewGestures.mjs +6 -1
- package/dist/esm/useSheetScrollViewGestures.mjs.map +1 -1
- package/dist/esm/webViewport.mjs +29 -0
- package/dist/esm/webViewport.mjs.map +1 -0
- package/dist/esm/webViewport.native.js +31 -0
- package/dist/esm/webViewport.native.js.map +1 -0
- package/dist/jsx/SheetImplementationCustom.mjs +46 -22
- package/dist/jsx/SheetImplementationCustom.mjs.map +1 -1
- package/dist/jsx/SheetImplementationCustom.native.js +58 -27
- package/dist/jsx/SheetImplementationCustom.native.js.map +1 -1
- package/dist/jsx/SheetScrollView.mjs +16 -5
- package/dist/jsx/SheetScrollView.mjs.map +1 -1
- package/dist/jsx/SheetScrollView.native.js +15 -4
- package/dist/jsx/SheetScrollView.native.js.map +1 -1
- package/dist/jsx/createSheet.mjs +6 -3
- package/dist/jsx/createSheet.mjs.map +1 -1
- package/dist/jsx/createSheet.native.js +5 -2
- package/dist/jsx/createSheet.native.js.map +1 -1
- package/dist/jsx/nativeSheet.mjs +2 -0
- package/dist/jsx/nativeSheet.mjs.map +1 -1
- package/dist/jsx/nativeSheet.native.js +2 -0
- package/dist/jsx/nativeSheet.native.js.map +1 -1
- package/dist/jsx/useKeyboardControllerSheet.mjs +66 -7
- package/dist/jsx/useKeyboardControllerSheet.mjs.map +1 -1
- package/dist/jsx/useSheetProviderProps.mjs.map +1 -1
- package/dist/jsx/useSheetProviderProps.native.js.map +1 -1
- package/dist/jsx/useSheetScrollViewGestures.mjs +6 -1
- package/dist/jsx/useSheetScrollViewGestures.mjs.map +1 -1
- package/dist/jsx/webViewport.mjs +29 -0
- package/dist/jsx/webViewport.mjs.map +1 -0
- package/dist/jsx/webViewport.native.js +63 -0
- package/dist/jsx/webViewport.native.js.map +1 -0
- package/package.json +20 -20
- package/src/SheetImplementationCustom.tsx +207 -53
- package/src/SheetScrollView.tsx +36 -9
- package/src/createSheet.tsx +18 -6
- package/src/nativeSheet.tsx +2 -0
- package/src/types.tsx +11 -1
- package/src/useKeyboardControllerSheet.ts +123 -10
- package/src/useSheetProviderProps.tsx +10 -0
- package/src/useSheetScrollViewGestures.ts +23 -2
- package/src/webViewport.ts +81 -0
- package/types/SheetContext.d.ts +2 -0
- package/types/SheetContext.d.ts.map +1 -1
- package/types/SheetImplementationCustom.d.ts.map +1 -1
- package/types/SheetScrollView.d.ts.map +1 -1
- package/types/createSheet.d.ts +12 -12
- package/types/createSheet.d.ts.map +1 -1
- package/types/nativeSheet.d.ts.map +1 -1
- package/types/types.d.ts +4 -1
- package/types/types.d.ts.map +1 -1
- package/types/useKeyboardControllerSheet.d.ts +14 -3
- package/types/useKeyboardControllerSheet.d.ts.map +1 -1
- package/types/useSheetProviderProps.d.ts +2 -0
- package/types/useSheetProviderProps.d.ts.map +1 -1
- package/types/useSheetScrollViewGestures.d.ts.map +1 -1
- package/types/webViewport.d.ts +31 -0
- package/types/webViewport.d.ts.map +1 -0
package/.turbo/turbo-build.log
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
$ tamagui-build
|
|
2
|
-
built @tamagui/sheet in
|
|
2
|
+
built @tamagui/sheet in 1261 ms
|
|
@@ -51,6 +51,7 @@ var import_gestureState = require("./gestureState.cjs");
|
|
|
51
51
|
var import_GestureSheetContext = require("./GestureSheetContext.cjs");
|
|
52
52
|
var import_helpers = require("./helpers.cjs");
|
|
53
53
|
var import_keyboardAvoidance = require("./keyboardAvoidance.cjs");
|
|
54
|
+
var import_webViewport = require("./webViewport.cjs");
|
|
54
55
|
var import_SheetContext = require("./SheetContext.cjs");
|
|
55
56
|
var import_useGestureHandlerPan = require("./useGestureHandlerPan.cjs");
|
|
56
57
|
var import_useKeyboardControllerSheet = require("./useKeyboardControllerSheet.cjs");
|
|
@@ -74,6 +75,10 @@ function getSafeAreaTopInset() {
|
|
|
74
75
|
}
|
|
75
76
|
let sheetHiddenStyleSheet = null;
|
|
76
77
|
const relativeDimensionTo = import_constants.isWeb ? "window" : "screen";
|
|
78
|
+
function getStableViewportHeight() {
|
|
79
|
+
if (import_constants.isWeb && typeof window !== "undefined") return (0, import_webViewport.getStableLayoutViewportHeight)();
|
|
80
|
+
return import_react_native.Dimensions.get(relativeDimensionTo).height;
|
|
81
|
+
}
|
|
77
82
|
const SheetImplementationCustom = import_react.default.forwardRef(function SheetImplementationCustom2(props, forwardedRef) {
|
|
78
83
|
const parentSheet = import_react.default.useContext(import_contexts.ParentSheetContext);
|
|
79
84
|
const {
|
|
@@ -133,12 +138,6 @@ const SheetImplementationCustom = import_react.default.forwardRef(function Sheet
|
|
|
133
138
|
const onInnerSheet = import_react.default.useCallback(hasChild => {
|
|
134
139
|
setIsShowingInnerSheet(hasChild);
|
|
135
140
|
}, []);
|
|
136
|
-
const stableFrameSize = import_react.default.useRef(frameSize);
|
|
137
|
-
import_react.default.useEffect(() => {
|
|
138
|
-
if (open && frameSize) stableFrameSize.current = frameSize;
|
|
139
|
-
}, [open, frameSize]);
|
|
140
|
-
const effectiveFrameSize = open ? frameSize : stableFrameSize.current || frameSize;
|
|
141
|
-
const positions = import_react.default.useMemo(() => snapPoints.map(point => getYPositions(snapPointsMode, point, screenSize, effectiveFrameSize)), [screenSize, effectiveFrameSize, snapPoints, snapPointsMode]);
|
|
142
141
|
const {
|
|
143
142
|
keyboardHeight,
|
|
144
143
|
isKeyboardVisible,
|
|
@@ -146,8 +145,16 @@ const SheetImplementationCustom = import_react.default.forwardRef(function Sheet
|
|
|
146
145
|
pauseKeyboardHandler,
|
|
147
146
|
flushPendingHide
|
|
148
147
|
} = (0, import_useKeyboardControllerSheet.useKeyboardControllerSheet)({
|
|
149
|
-
enabled:
|
|
148
|
+
enabled: Boolean(moveOnKeyboardChange)
|
|
150
149
|
});
|
|
150
|
+
const stableFrameSize = import_react.default.useRef(frameSize);
|
|
151
|
+
import_react.default.useEffect(() => {
|
|
152
|
+
if (open && frameSize) stableFrameSize.current = frameSize;
|
|
153
|
+
}, [open, frameSize]);
|
|
154
|
+
const isWebKbSheet = import_constants.isWeb && hasFit && moveOnKeyboardChange;
|
|
155
|
+
const effScreenSize = isWebKbSheet ? getStableViewportHeight() : screenSize;
|
|
156
|
+
const effectiveFrameSize = open ? frameSize : stableFrameSize.current || frameSize;
|
|
157
|
+
const positions = import_react.default.useMemo(() => snapPoints.map(point => getYPositions(snapPointsMode, point, effScreenSize, effectiveFrameSize)), [effScreenSize, effectiveFrameSize, snapPoints, snapPointsMode]);
|
|
151
158
|
const [isDragging, setIsDragging_] = import_react.default.useState(false);
|
|
152
159
|
const isDraggingRef = import_react.default.useRef(false);
|
|
153
160
|
const setIsDragging = import_react.default.useCallback(val => {
|
|
@@ -161,7 +168,7 @@ const SheetImplementationCustom = import_react.default.forwardRef(function Sheet
|
|
|
161
168
|
if (isDragging || isDraggingRef.current) return activePositionsRef.current;
|
|
162
169
|
let result;
|
|
163
170
|
if (!isKeyboardVisible || keyboardHeight <= 0) result = positions;else {
|
|
164
|
-
const safeAreaTop =
|
|
171
|
+
const safeAreaTop = getSafeAreaTopInset();
|
|
165
172
|
result = positions.map(p => {
|
|
166
173
|
if (screenSize && p >= screenSize) return p;
|
|
167
174
|
return Math.max(safeAreaTop, p - keyboardHeight);
|
|
@@ -171,12 +178,13 @@ const SheetImplementationCustom = import_react.default.forwardRef(function Sheet
|
|
|
171
178
|
return result;
|
|
172
179
|
}, [positions, isKeyboardVisible, keyboardHeight, screenSize, isDragging]);
|
|
173
180
|
const keyboardOccludedHeight = (0, import_keyboardAvoidance.getKeyboardOccludedHeight)({
|
|
174
|
-
frameSize,
|
|
175
|
-
isKeyboardVisible
|
|
181
|
+
frameSize: effectiveFrameSize,
|
|
182
|
+
isKeyboardVisible,
|
|
176
183
|
keyboardHeight,
|
|
177
|
-
screenSize,
|
|
184
|
+
screenSize: effScreenSize,
|
|
178
185
|
sheetY: position >= 0 ? activePositions[position] : void 0
|
|
179
186
|
});
|
|
187
|
+
const keyboardStableFrameHeight = isWebKbSheet && isKeyboardVisible && frameSize > 0 ? frameSize : 0;
|
|
180
188
|
const {
|
|
181
189
|
useAnimatedNumber,
|
|
182
190
|
useAnimatedNumberStyle,
|
|
@@ -235,7 +243,8 @@ const SheetImplementationCustom = import_react.default.forwardRef(function Sheet
|
|
|
235
243
|
}
|
|
236
244
|
const animateTo = (0, import_core.useEvent)((position2, animationOverride) => {
|
|
237
245
|
if (frameSize === 0) return;
|
|
238
|
-
|
|
246
|
+
const closeTarget = import_constants.isWeb ? Math.max(effScreenSize, (0, import_webViewport.getMaxViewportHeight)()) : effScreenSize;
|
|
247
|
+
let toValue = isHidden || position2 === -1 ? closeTarget : activePositions[position2];
|
|
239
248
|
if (at.current === toValue) return;
|
|
240
249
|
at.current = toValue;
|
|
241
250
|
stopSpring();
|
|
@@ -288,6 +297,7 @@ const SheetImplementationCustom = import_react.default.forwardRef(function Sheet
|
|
|
288
297
|
return;
|
|
289
298
|
}
|
|
290
299
|
if (disableAnimation) return;
|
|
300
|
+
if (isDraggingRef.current) return;
|
|
291
301
|
if (!frameSize || !screenSize || isHidden || hasntMeasured && !open) return;
|
|
292
302
|
animateTo(position);
|
|
293
303
|
if (position === -1) {
|
|
@@ -313,7 +323,7 @@ const SheetImplementationCustom = import_react.default.forwardRef(function Sheet
|
|
|
313
323
|
if (disableDrag) return;
|
|
314
324
|
if (!frameSize) return;
|
|
315
325
|
if (isShowingInnerSheet) return;
|
|
316
|
-
const minY =
|
|
326
|
+
const minY = activePositions[0];
|
|
317
327
|
scrollBridge.paneMinY = minY;
|
|
318
328
|
let startY = at.current;
|
|
319
329
|
function setPanning(val) {
|
|
@@ -335,8 +345,8 @@ const SheetImplementationCustom = import_react.default.forwardRef(function Sheet
|
|
|
335
345
|
const end = at.current + frameSize * vy * .2;
|
|
336
346
|
let closestPoint = 0;
|
|
337
347
|
let dist = Number.POSITIVE_INFINITY;
|
|
338
|
-
for (let i = 0; i <
|
|
339
|
-
const position2 =
|
|
348
|
+
for (let i = 0; i < activePositions.length; i++) {
|
|
349
|
+
const position2 = activePositions[i];
|
|
340
350
|
const curDist = end > position2 ? end - position2 : position2 - end;
|
|
341
351
|
if (curDist < dist) {
|
|
342
352
|
dist = curDist;
|
|
@@ -358,6 +368,7 @@ const SheetImplementationCustom = import_react.default.forwardRef(function Sheet
|
|
|
358
368
|
}) => {
|
|
359
369
|
function getShouldSet() {
|
|
360
370
|
if (e.target === providerProps.handleRef.current) return true;
|
|
371
|
+
if (scrollBridge.scrollNodeTouched) return false;
|
|
361
372
|
if (scrollBridge.hasScrollableContent === true) {
|
|
362
373
|
if (scrollBridge.scrollLock) return false;
|
|
363
374
|
const isScrolled = scrollBridge.y !== 0;
|
|
@@ -380,6 +391,10 @@ const SheetImplementationCustom = import_react.default.forwardRef(function Sheet
|
|
|
380
391
|
startY = at.current;
|
|
381
392
|
};
|
|
382
393
|
let isExternalDrag = false;
|
|
394
|
+
scrollBridge.startPanDrag = () => {
|
|
395
|
+
isExternalDrag = true;
|
|
396
|
+
grant();
|
|
397
|
+
};
|
|
383
398
|
scrollBridge.drag = dy => {
|
|
384
399
|
if (!isExternalDrag) {
|
|
385
400
|
isExternalDrag = true;
|
|
@@ -414,7 +429,7 @@ const SheetImplementationCustom = import_react.default.forwardRef(function Sheet
|
|
|
414
429
|
onPanResponderTerminate: finish,
|
|
415
430
|
onPanResponderRelease: finish
|
|
416
431
|
});
|
|
417
|
-
}, [disableDrag, isShowingInnerSheet, animateTo, frameSize,
|
|
432
|
+
}, [disableDrag, isShowingInnerSheet, animateTo, frameSize, activePositions, setPosition]);
|
|
418
433
|
import_react.default.useEffect(() => {
|
|
419
434
|
if (isDragging || isHidden || !open || disableAnimation) return;
|
|
420
435
|
if (!frameSize || !screenSize) return;
|
|
@@ -435,7 +450,11 @@ const SheetImplementationCustom = import_react.default.forwardRef(function Sheet
|
|
|
435
450
|
animateTo(position);
|
|
436
451
|
}, [isDragging]);
|
|
437
452
|
import_react.default.useEffect(() => {
|
|
438
|
-
if (!open && isKeyboardVisible)
|
|
453
|
+
if (!open && isKeyboardVisible) {
|
|
454
|
+
dismissKeyboard();
|
|
455
|
+
pauseKeyboardHandler.current = false;
|
|
456
|
+
flushPendingHide();
|
|
457
|
+
}
|
|
439
458
|
}, [open]);
|
|
440
459
|
const {
|
|
441
460
|
panGesture,
|
|
@@ -461,18 +480,21 @@ const SheetImplementationCustom = import_react.default.forwardRef(function Sheet
|
|
|
461
480
|
},
|
|
462
481
|
pauseKeyboardHandler
|
|
463
482
|
});
|
|
483
|
+
const ignoreLayoutForKeyboard = (0, import_core.useEvent)(() => import_constants.isWeb && moveOnKeyboardChange && (0, import_webViewport.getWebKeyboardHeight)() >= import_webViewport.MIN_KEYBOARD_HEIGHT);
|
|
464
484
|
const handleAnimationViewLayout = (0, import_core.useEvent)(e => {
|
|
465
485
|
if (!open && stableFrameSize.current !== 0) return;
|
|
466
486
|
const layoutHeight = e.nativeEvent?.layout.height;
|
|
467
|
-
|
|
487
|
+
if (ignoreLayoutForKeyboard() && frameSize > 0) return;
|
|
488
|
+
const next = modal ? Math.min(layoutHeight, getStableViewportHeight()) : layoutHeight;
|
|
468
489
|
if (!next) return;
|
|
469
|
-
setFrameSize(next);
|
|
490
|
+
setFrameSize(Math.round(next));
|
|
470
491
|
});
|
|
471
492
|
const handleMaxContentViewLayout = import_react.default.useCallback(e => {
|
|
472
|
-
|
|
493
|
+
if (ignoreLayoutForKeyboard() && screenSize > 0) return;
|
|
494
|
+
const next = Math.min(e.nativeEvent?.layout.height, getStableViewportHeight());
|
|
473
495
|
if (!next) return;
|
|
474
|
-
setMaxContentSize(next);
|
|
475
|
-
}, []);
|
|
496
|
+
setMaxContentSize(Math.round(next));
|
|
497
|
+
}, [ignoreLayoutForKeyboard, screenSize]);
|
|
476
498
|
const animatedStyle = useAnimatedNumberStyle(animatedNumber, import_react.default.useCallback(val => {
|
|
477
499
|
"worklet";
|
|
478
500
|
|
|
@@ -501,6 +523,8 @@ const SheetImplementationCustom = import_react.default.forwardRef(function Sheet
|
|
|
501
523
|
children: /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_SheetContext.SheetProvider, {
|
|
502
524
|
...providerProps,
|
|
503
525
|
keyboardOccludedHeight,
|
|
526
|
+
isKeyboardVisible,
|
|
527
|
+
keyboardStableFrameHeight,
|
|
504
528
|
setHasScrollView,
|
|
505
529
|
children: /* @__PURE__ */(0, import_jsx_runtime.jsxs)(import_GestureSheetContext.GestureSheetProvider, {
|
|
506
530
|
isDragging,
|
|
@@ -54,6 +54,7 @@ var import_gestureState = require("./gestureState.native.js");
|
|
|
54
54
|
var import_GestureSheetContext = require("./GestureSheetContext.native.js");
|
|
55
55
|
var import_helpers = require("./helpers.native.js");
|
|
56
56
|
var import_keyboardAvoidance = require("./keyboardAvoidance.native.js");
|
|
57
|
+
var import_webViewport = require("./webViewport.native.js");
|
|
57
58
|
var import_SheetContext = require("./SheetContext.native.js");
|
|
58
59
|
var import_useGestureHandlerPan = require("./useGestureHandlerPan.native.js");
|
|
59
60
|
var import_useKeyboardControllerSheet = require("./useKeyboardControllerSheet.native.js");
|
|
@@ -75,6 +76,10 @@ function getSafeAreaTopInset() {
|
|
|
75
76
|
return _cachedSafeAreaTop;
|
|
76
77
|
}
|
|
77
78
|
var relativeDimensionTo = import_constants.isWeb ? "window" : "screen";
|
|
79
|
+
function getStableViewportHeight() {
|
|
80
|
+
if (import_constants.isWeb && typeof window !== "undefined") return (0, import_webViewport.getStableLayoutViewportHeight)();
|
|
81
|
+
return import_react_native.Dimensions.get(relativeDimensionTo).height;
|
|
82
|
+
}
|
|
78
83
|
var SheetImplementationCustom = /* @__PURE__ */import_react.default.forwardRef(function SheetImplementationCustom2(props, forwardedRef) {
|
|
79
84
|
var parentSheet = import_react.default.useContext(import_contexts.ParentSheetContext);
|
|
80
85
|
var {
|
|
@@ -135,16 +140,6 @@ var SheetImplementationCustom = /* @__PURE__ */import_react.default.forwardRef(f
|
|
|
135
140
|
var onInnerSheet = import_react.default.useCallback(function (hasChild) {
|
|
136
141
|
setIsShowingInnerSheet(hasChild);
|
|
137
142
|
}, []);
|
|
138
|
-
var stableFrameSize = import_react.default.useRef(frameSize);
|
|
139
|
-
import_react.default.useEffect(function () {
|
|
140
|
-
if (open && frameSize) stableFrameSize.current = frameSize;
|
|
141
|
-
}, [open, frameSize]);
|
|
142
|
-
var effectiveFrameSize = open ? frameSize : stableFrameSize.current || frameSize;
|
|
143
|
-
var positions = import_react.default.useMemo(function () {
|
|
144
|
-
return snapPoints.map(function (point) {
|
|
145
|
-
return getYPositions(snapPointsMode, point, screenSize, effectiveFrameSize);
|
|
146
|
-
});
|
|
147
|
-
}, [screenSize, effectiveFrameSize, snapPoints, snapPointsMode]);
|
|
148
143
|
var {
|
|
149
144
|
keyboardHeight,
|
|
150
145
|
isKeyboardVisible,
|
|
@@ -152,8 +147,20 @@ var SheetImplementationCustom = /* @__PURE__ */import_react.default.forwardRef(f
|
|
|
152
147
|
pauseKeyboardHandler,
|
|
153
148
|
flushPendingHide
|
|
154
149
|
} = (0, import_useKeyboardControllerSheet.useKeyboardControllerSheet)({
|
|
155
|
-
enabled:
|
|
150
|
+
enabled: Boolean(moveOnKeyboardChange)
|
|
156
151
|
});
|
|
152
|
+
var stableFrameSize = import_react.default.useRef(frameSize);
|
|
153
|
+
import_react.default.useEffect(function () {
|
|
154
|
+
if (open && frameSize) stableFrameSize.current = frameSize;
|
|
155
|
+
}, [open, frameSize]);
|
|
156
|
+
var isWebKbSheet = import_constants.isWeb && hasFit && moveOnKeyboardChange;
|
|
157
|
+
var effScreenSize = isWebKbSheet ? getStableViewportHeight() : screenSize;
|
|
158
|
+
var effectiveFrameSize = open ? frameSize : stableFrameSize.current || frameSize;
|
|
159
|
+
var positions = import_react.default.useMemo(function () {
|
|
160
|
+
return snapPoints.map(function (point) {
|
|
161
|
+
return getYPositions(snapPointsMode, point, effScreenSize, effectiveFrameSize);
|
|
162
|
+
});
|
|
163
|
+
}, [effScreenSize, effectiveFrameSize, snapPoints, snapPointsMode]);
|
|
157
164
|
var [isDragging, setIsDragging_] = import_react.default.useState(false);
|
|
158
165
|
var isDraggingRef = import_react.default.useRef(false);
|
|
159
166
|
var setIsDragging = import_react.default.useCallback(function (val) {
|
|
@@ -167,7 +174,7 @@ var SheetImplementationCustom = /* @__PURE__ */import_react.default.forwardRef(f
|
|
|
167
174
|
if (isDragging || isDraggingRef.current) return activePositionsRef.current;
|
|
168
175
|
var result;
|
|
169
176
|
if (!isKeyboardVisible || keyboardHeight <= 0) result = positions;else {
|
|
170
|
-
var safeAreaTop =
|
|
177
|
+
var safeAreaTop = getSafeAreaTopInset();
|
|
171
178
|
result = positions.map(function (p) {
|
|
172
179
|
if (screenSize && p >= screenSize) return p;
|
|
173
180
|
return Math.max(safeAreaTop, p - keyboardHeight);
|
|
@@ -177,12 +184,13 @@ var SheetImplementationCustom = /* @__PURE__ */import_react.default.forwardRef(f
|
|
|
177
184
|
return result;
|
|
178
185
|
}, [positions, isKeyboardVisible, keyboardHeight, screenSize, isDragging]);
|
|
179
186
|
var keyboardOccludedHeight = (0, import_keyboardAvoidance.getKeyboardOccludedHeight)({
|
|
180
|
-
frameSize,
|
|
181
|
-
isKeyboardVisible
|
|
187
|
+
frameSize: effectiveFrameSize,
|
|
188
|
+
isKeyboardVisible,
|
|
182
189
|
keyboardHeight,
|
|
183
|
-
screenSize,
|
|
190
|
+
screenSize: effScreenSize,
|
|
184
191
|
sheetY: position >= 0 ? activePositions[position] : void 0
|
|
185
192
|
});
|
|
193
|
+
var keyboardStableFrameHeight = isWebKbSheet && isKeyboardVisible && frameSize > 0 ? frameSize : 0;
|
|
186
194
|
var {
|
|
187
195
|
useAnimatedNumber,
|
|
188
196
|
useAnimatedNumberStyle,
|
|
@@ -247,7 +255,8 @@ var SheetImplementationCustom = /* @__PURE__ */import_react.default.forwardRef(f
|
|
|
247
255
|
}
|
|
248
256
|
var animateTo = (0, import_core.useEvent)(function (position2, animationOverride) {
|
|
249
257
|
if (frameSize === 0) return;
|
|
250
|
-
var
|
|
258
|
+
var closeTarget = import_constants.isWeb ? Math.max(effScreenSize, (0, import_webViewport.getMaxViewportHeight)()) : effScreenSize;
|
|
259
|
+
var toValue = isHidden || position2 === -1 ? closeTarget : activePositions[position2];
|
|
251
260
|
if (at.current === toValue) return;
|
|
252
261
|
at.current = toValue;
|
|
253
262
|
stopSpring();
|
|
@@ -301,6 +310,7 @@ var SheetImplementationCustom = /* @__PURE__ */import_react.default.forwardRef(f
|
|
|
301
310
|
return;
|
|
302
311
|
}
|
|
303
312
|
if (disableAnimation) return;
|
|
313
|
+
if (isDraggingRef.current) return;
|
|
304
314
|
if (!frameSize || !screenSize || isHidden || hasntMeasured && !open) return;
|
|
305
315
|
animateTo(position);
|
|
306
316
|
if (position === -1) {
|
|
@@ -320,7 +330,12 @@ var SheetImplementationCustom = /* @__PURE__ */import_react.default.forwardRef(f
|
|
|
320
330
|
(_scrollBridge_setScrollEnabled1 = scrollBridge.setScrollEnabled) === null || _scrollBridge_setScrollEnabled1 === void 0 || _scrollBridge_setScrollEnabled1.call(scrollBridge, false);
|
|
321
331
|
}
|
|
322
332
|
}
|
|
323
|
-
},
|
|
333
|
+
},
|
|
334
|
+
// NOTE: effScreenSize/effectiveFrameSize are intentionally NOT deps. With the
|
|
335
|
+
// spacer approach the frame's position target is frozen across keyboard
|
|
336
|
+
// open/close (same stable baseline), so it must NOT re-animate — keyboard
|
|
337
|
+
// avoidance is the bottom spacer + scroll, not a frame move.
|
|
338
|
+
[hasntMeasured, disableAnimation, isHidden, frameSize, screenSize, open, position]);
|
|
324
339
|
var _props_disableDrag;
|
|
325
340
|
var disableDrag = (_props_disableDrag = props.disableDrag) !== null && _props_disableDrag !== void 0 ? _props_disableDrag : controller === null || controller === void 0 ? void 0 : controller.disableDrag;
|
|
326
341
|
(0, import_core.useThemeName)();
|
|
@@ -329,7 +344,7 @@ var SheetImplementationCustom = /* @__PURE__ */import_react.default.forwardRef(f
|
|
|
329
344
|
if (disableDrag) return;
|
|
330
345
|
if (!frameSize) return;
|
|
331
346
|
if (isShowingInnerSheet) return;
|
|
332
|
-
var minY =
|
|
347
|
+
var minY = activePositions[0];
|
|
333
348
|
scrollBridge.paneMinY = minY;
|
|
334
349
|
var startY = at.current;
|
|
335
350
|
function setPanning(val) {
|
|
@@ -347,8 +362,8 @@ var SheetImplementationCustom = /* @__PURE__ */import_react.default.forwardRef(f
|
|
|
347
362
|
var end = at.current + frameSize * vy * .2;
|
|
348
363
|
var closestPoint = 0;
|
|
349
364
|
var dist = Number.POSITIVE_INFINITY;
|
|
350
|
-
for (var i = 0; i <
|
|
351
|
-
var position2 =
|
|
365
|
+
for (var i = 0; i < activePositions.length; i++) {
|
|
366
|
+
var position2 = activePositions[i];
|
|
352
367
|
var curDist = end > position2 ? end - position2 : position2 - end;
|
|
353
368
|
if (curDist < dist) {
|
|
354
369
|
dist = curDist;
|
|
@@ -371,6 +386,7 @@ var SheetImplementationCustom = /* @__PURE__ */import_react.default.forwardRef(f
|
|
|
371
386
|
} = param;
|
|
372
387
|
function getShouldSet() {
|
|
373
388
|
if (e.target === providerProps.handleRef.current) return true;
|
|
389
|
+
if (scrollBridge.scrollNodeTouched) return false;
|
|
374
390
|
if (scrollBridge.hasScrollableContent === true) {
|
|
375
391
|
if (scrollBridge.scrollLock) return false;
|
|
376
392
|
var isScrolled = scrollBridge.y !== 0;
|
|
@@ -393,6 +409,10 @@ var SheetImplementationCustom = /* @__PURE__ */import_react.default.forwardRef(f
|
|
|
393
409
|
startY = at.current;
|
|
394
410
|
};
|
|
395
411
|
var isExternalDrag = false;
|
|
412
|
+
scrollBridge.startPanDrag = function () {
|
|
413
|
+
isExternalDrag = true;
|
|
414
|
+
grant();
|
|
415
|
+
};
|
|
396
416
|
scrollBridge.drag = function (dy) {
|
|
397
417
|
if (!isExternalDrag) {
|
|
398
418
|
isExternalDrag = true;
|
|
@@ -428,7 +448,7 @@ var SheetImplementationCustom = /* @__PURE__ */import_react.default.forwardRef(f
|
|
|
428
448
|
onPanResponderTerminate: finish,
|
|
429
449
|
onPanResponderRelease: finish
|
|
430
450
|
});
|
|
431
|
-
}, [disableDrag, isShowingInnerSheet, animateTo, frameSize,
|
|
451
|
+
}, [disableDrag, isShowingInnerSheet, animateTo, frameSize, activePositions, setPosition]);
|
|
432
452
|
import_react.default.useEffect(function () {
|
|
433
453
|
if (isDragging || isHidden || !open || disableAnimation) return;
|
|
434
454
|
if (!frameSize || !screenSize) return;
|
|
@@ -449,7 +469,11 @@ var SheetImplementationCustom = /* @__PURE__ */import_react.default.forwardRef(f
|
|
|
449
469
|
animateTo(position);
|
|
450
470
|
}, [isDragging]);
|
|
451
471
|
import_react.default.useEffect(function () {
|
|
452
|
-
if (!open && isKeyboardVisible)
|
|
472
|
+
if (!open && isKeyboardVisible) {
|
|
473
|
+
dismissKeyboard();
|
|
474
|
+
pauseKeyboardHandler.current = false;
|
|
475
|
+
flushPendingHide();
|
|
476
|
+
}
|
|
453
477
|
}, [open]);
|
|
454
478
|
var {
|
|
455
479
|
panGesture,
|
|
@@ -477,20 +501,25 @@ var SheetImplementationCustom = /* @__PURE__ */import_react.default.forwardRef(f
|
|
|
477
501
|
},
|
|
478
502
|
pauseKeyboardHandler
|
|
479
503
|
});
|
|
504
|
+
var ignoreLayoutForKeyboard = (0, import_core.useEvent)(function () {
|
|
505
|
+
return import_constants.isWeb && moveOnKeyboardChange && (0, import_webViewport.getWebKeyboardHeight)() >= import_webViewport.MIN_KEYBOARD_HEIGHT;
|
|
506
|
+
});
|
|
480
507
|
var handleAnimationViewLayout = (0, import_core.useEvent)(function (e) {
|
|
481
508
|
var _e_nativeEvent;
|
|
482
509
|
if (!open && stableFrameSize.current !== 0) return;
|
|
483
510
|
var layoutHeight = (_e_nativeEvent = e.nativeEvent) === null || _e_nativeEvent === void 0 ? void 0 : _e_nativeEvent.layout.height;
|
|
484
|
-
|
|
511
|
+
if (ignoreLayoutForKeyboard() && frameSize > 0) return;
|
|
512
|
+
var next = modal ? Math.min(layoutHeight, getStableViewportHeight()) : layoutHeight;
|
|
485
513
|
if (!next) return;
|
|
486
|
-
setFrameSize(next);
|
|
514
|
+
setFrameSize(Math.round(next));
|
|
487
515
|
});
|
|
488
516
|
var handleMaxContentViewLayout = import_react.default.useCallback(function (e) {
|
|
489
517
|
var _e_nativeEvent;
|
|
490
|
-
|
|
518
|
+
if (ignoreLayoutForKeyboard() && screenSize > 0) return;
|
|
519
|
+
var next = Math.min((_e_nativeEvent = e.nativeEvent) === null || _e_nativeEvent === void 0 ? void 0 : _e_nativeEvent.layout.height, getStableViewportHeight());
|
|
491
520
|
if (!next) return;
|
|
492
|
-
setMaxContentSize(next);
|
|
493
|
-
}, []);
|
|
521
|
+
setMaxContentSize(Math.round(next));
|
|
522
|
+
}, [ignoreLayoutForKeyboard, screenSize]);
|
|
494
523
|
var animatedStyle = useAnimatedNumberStyle(animatedNumber, import_react.default.useCallback(function (val) {
|
|
495
524
|
"worklet";
|
|
496
525
|
|
|
@@ -519,6 +548,8 @@ var SheetImplementationCustom = /* @__PURE__ */import_react.default.forwardRef(f
|
|
|
519
548
|
children: /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_SheetContext.SheetProvider, {
|
|
520
549
|
...providerProps,
|
|
521
550
|
keyboardOccludedHeight,
|
|
551
|
+
isKeyboardVisible,
|
|
552
|
+
keyboardStableFrameHeight,
|
|
522
553
|
setHasScrollView,
|
|
523
554
|
children: /* @__PURE__ */(0, import_jsx_runtime.jsxs)(import_GestureSheetContext.GestureSheetProvider, {
|
|
524
555
|
isDragging,
|
|
@@ -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_gestureState","import_GestureSheetContext","import_helpers","import_keyboardAvoidance","import_SheetContext","import_useGestureHandlerPan","import_useKeyboardControllerSheet","import_useSheetOpenState","import_useSheetProviderProps","hiddenSize","rnghRootStyleOpen","width","height","rnghRootStyleClosed","_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","keyboardOccludedHeight","getKeyboardOccludedHeight","sheetY","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","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","minHeight","GestureDetectorWrapper","gesture","flex","panHandlers","adaptContext","useAdaptContext","ProvideAdaptContext","shouldMountChildren","RNGHRoot","getGestureHandlerState","RootView","mountedContents","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_native","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_useSheetOpenState","import_useSheetProviderProps","hiddenSize","rnghRootStyleOpen","width","height","rnghRootStyleClosed","_cachedSafeAreaTop","getSafeAreaTopInset","getSafeArea","getInsets","top","relativeDimensionTo","isWeb","getStableViewportHeight","window","getStableLayoutViewportHeight","Dimensions","get","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","keyboardHeight","isKeyboardVisible","dismissKeyboard","pauseKeyboardHandler","flushPendingHide","useKeyboardControllerSheet","enabled","Boolean","stableFrameSize","useEffect","isWebKbSheet","effScreenSize","effectiveFrameSize","positions","useMemo","map","point","getYPositions","isDragging","setIsDragging_","isDraggingRef","setIsDragging","val","activePositionsRef","activePositions","result","safeAreaTop","p","Math","max","keyboardOccludedHeight","getKeyboardOccludedHeight","sheetY","keyboardStableFrameHeight","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","closeTarget","getMaxViewportHeight","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","scrollNodeTouched","hasScrollableContent","isScrolled","isDraggingUp","isNearTop","abs","granted","grant","startPanDrag","drag","to","resisted","snapToPosition","positionIndex","PanResponder","create","onMoveShouldSetPanResponder","onPanResponderGrant","onPanResponderMove","toFull","onPanResponderEnd","onPanResponderTerminate","onPanResponderRelease","wasDragging","panGesture","panGestureRef","gestureHandlerEnabled","useGestureHandlerPan","getCurrentPosition","setAnimatedPosition","ignoreLayoutForKeyboard","getWebKeyboardHeight","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","shouldMountChildren","RNGHRoot","getGestureHandlerState","RootView","mountedContents","modalContents","Portal","stackZIndex","mode","endsWith","pct","slice","isNaN","console","warn","pct1"],"sources":["../../src/SheetImplementationCustom.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
@@ -45,6 +45,7 @@ var import_GestureSheetContext = require("./GestureSheetContext.cjs");
|
|
|
45
45
|
var import_gestureState = require("./gestureState.cjs");
|
|
46
46
|
var import_SheetContext = require("./SheetContext.cjs");
|
|
47
47
|
var import_useSheetScrollViewGestures = require("./useSheetScrollViewGestures.cjs");
|
|
48
|
+
var import_webViewport = require("./webViewport.cjs");
|
|
48
49
|
var import_jsx_runtime = require("react/jsx-runtime");
|
|
49
50
|
const SHEET_SCROLL_VIEW_NAME = "SheetScrollView";
|
|
50
51
|
const SheetScrollView = import_react.default.forwardRef(({
|
|
@@ -63,6 +64,7 @@ const SheetScrollView = import_react.default.forwardRef(({
|
|
|
63
64
|
screenSize
|
|
64
65
|
} = context;
|
|
65
66
|
const keyboardOccludedHeight = Math.max(0, context.keyboardOccludedHeight || 0);
|
|
67
|
+
const isKeyboardVisible = context.isKeyboardVisible === true || import_core.isWeb && (0, import_webViewport.getWebKeyboardHeight)() >= import_webViewport.MIN_KEYBOARD_HEIGHT;
|
|
66
68
|
const [scrollEnabled] = (0, import_use_controllable_state.useControllableState)({
|
|
67
69
|
prop: scrollEnabledProp,
|
|
68
70
|
defaultProp: true
|
|
@@ -71,14 +73,18 @@ const SheetScrollView = import_react.default.forwardRef(({
|
|
|
71
73
|
const [hasScrollableContent, setHasScrollableContent] = (0, import_react.useState)(true);
|
|
72
74
|
const parentHeight = (0, import_react.useRef)(0);
|
|
73
75
|
const contentHeight = (0, import_react.useRef)(0);
|
|
74
|
-
const
|
|
76
|
+
const frozenFrameHeight = Math.max(0, context.keyboardStableFrameHeight || 0);
|
|
75
77
|
const fitSizingStyle = hasFit ? {
|
|
76
78
|
flex: void 0,
|
|
77
|
-
height:
|
|
79
|
+
height: void 0,
|
|
78
80
|
maxHeight: screenSize || void 0
|
|
79
81
|
} : {
|
|
80
82
|
flex: 1
|
|
81
83
|
};
|
|
84
|
+
const keyboardFrozenOverride = hasFit && isKeyboardVisible && frozenFrameHeight > 0 ? {
|
|
85
|
+
height: frozenFrameHeight,
|
|
86
|
+
maxHeight: frozenFrameHeight
|
|
87
|
+
} : null;
|
|
82
88
|
const panGestureRef = gestureContext?.panGestureRef;
|
|
83
89
|
const {
|
|
84
90
|
ScrollView: RNGHScrollView
|
|
@@ -125,6 +131,9 @@ const SheetScrollView = import_react.default.forwardRef(({
|
|
|
125
131
|
setHasScrollableContent(contentHeight.current > parentHeight.current);
|
|
126
132
|
}
|
|
127
133
|
};
|
|
134
|
+
const recordFitHeight = height => {
|
|
135
|
+
parentHeight.current = height;
|
|
136
|
+
};
|
|
128
137
|
(0, import_react.useEffect)(() => {
|
|
129
138
|
scrollBridge.hasScrollableContent = hasScrollableContent;
|
|
130
139
|
}, [hasScrollableContent]);
|
|
@@ -158,7 +167,7 @@ const SheetScrollView = import_react.default.forwardRef(({
|
|
|
158
167
|
scrollEnabled,
|
|
159
168
|
simultaneousHandlers: [panGestureRef],
|
|
160
169
|
onLayout: e => {
|
|
161
|
-
|
|
170
|
+
recordFitHeight(Math.ceil(e.nativeEvent.layout.height));
|
|
162
171
|
updateScrollable();
|
|
163
172
|
},
|
|
164
173
|
onScroll: e => {
|
|
@@ -198,12 +207,13 @@ const SheetScrollView = import_react.default.forwardRef(({
|
|
|
198
207
|
keyboardShouldPersistTaps: "always",
|
|
199
208
|
keyboardDismissMode: "none",
|
|
200
209
|
...props,
|
|
210
|
+
...keyboardFrozenOverride,
|
|
201
211
|
children: contentWrapper
|
|
202
212
|
});
|
|
203
213
|
}
|
|
204
214
|
return /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_scroll_view.ScrollView, {
|
|
205
215
|
onLayout: e => {
|
|
206
|
-
|
|
216
|
+
recordFitHeight(Math.ceil(e.nativeEvent.layout.height));
|
|
207
217
|
updateScrollable();
|
|
208
218
|
},
|
|
209
219
|
ref: (0, import_compose_refs.composeRefs)(scrollRef, ref),
|
|
@@ -224,6 +234,7 @@ const SheetScrollView = import_react.default.forwardRef(({
|
|
|
224
234
|
},
|
|
225
235
|
...gestureProps,
|
|
226
236
|
...props,
|
|
237
|
+
...keyboardFrozenOverride,
|
|
227
238
|
children: contentWrapper
|
|
228
239
|
});
|
|
229
240
|
});
|