@lodev09/react-native-true-sheet 3.11.7 → 3.11.9

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.
@@ -2,12 +2,12 @@
2
2
 
3
3
  /// <reference lib="dom" />
4
4
  import { createElement, forwardRef, isValidElement, useCallback, useEffect, useImperativeHandle, useMemo, useRef, useState } from 'react';
5
- import { View, useColorScheme, useWindowDimensions } from 'react-native';
5
+ import { useColorScheme, useWindowDimensions, View } from 'react-native';
6
+ import { measurePeekContentHeight, TrueSheetPeekContext } from "./TrueSheetPeek.web.js";
7
+ import { usePortalContainer, useRegisterSheet, useSheetStack } from "./TrueSheetProvider.web.js";
8
+ import { COLOR_SURFACE_CONTAINER_LOW_DARK, COLOR_SURFACE_CONTAINER_LOW_LIGHT, DEFAULT_ANCHOR_OFFSET, DEFAULT_CORNER_RADIUS, DEFAULT_DETACHED_OFFSET, DEFAULT_FORM_SHEET_HEIGHT_RATIO, DEFAULT_FORM_SHEET_WIDTH, DEFAULT_GRABBER_COLOR_DARK, DEFAULT_GRABBER_COLOR_LIGHT, DEFAULT_GRABBER_HEIGHT, DEFAULT_GRABBER_TOP_MARGIN, DEFAULT_GRABBER_WIDTH, DEFAULT_MAX_WIDTH } from "./web/constants.js";
6
9
  import { Drawer } from "./web/vaul/index.js";
7
10
  import { DEFAULT_PEEK_HEIGHT, TRANSITIONS } from "./web/vaul/constants.js";
8
- import { TrueSheetPeekContext } from "./TrueSheetPeek.web.js";
9
- import { usePortalContainer, useRegisterSheet, useSheetStack } from "./TrueSheetProvider.web.js";
10
- import { COLOR_SURFACE_CONTAINER_LOW_DARK, COLOR_SURFACE_CONTAINER_LOW_LIGHT, DEFAULT_ANCHOR_OFFSET, DEFAULT_CORNER_RADIUS, DEFAULT_DETACHED_OFFSET, DEFAULT_GRABBER_COLOR_DARK, DEFAULT_GRABBER_COLOR_LIGHT, DEFAULT_GRABBER_HEIGHT, DEFAULT_GRABBER_TOP_MARGIN, DEFAULT_GRABBER_WIDTH, DEFAULT_FORM_SHEET_HEIGHT_RATIO, DEFAULT_FORM_SHEET_WIDTH, DEFAULT_MAX_WIDTH } from "./web/constants.js";
11
11
  import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
12
12
  const TrueSheetComponent = /*#__PURE__*/forwardRef((props, ref) => {
13
13
  const {
@@ -156,12 +156,21 @@ const TrueSheetComponent = /*#__PURE__*/forwardRef((props, ref) => {
156
156
  setFooterHeight(e.nativeEvent.layout.height);
157
157
  }, []);
158
158
 
159
+ // DOM refs for live 'peek' measurement in computeDetentGeometry — the
160
+ // state above (which drives vaul's `peekHeight` prop) comes from RN-web
161
+ // `onLayout`, which dispatches a frame after mount: too late for the first
162
+ // willPresent.
163
+ const headerElRef = useRef(null);
164
+ const footerElRef = useRef(null);
165
+
159
166
  // Distance from the content top to the bottom of a `TrueSheetPeek` rendered
160
167
  // within the content — measured by the peek against `contentRef`.
161
168
  const [peekContentHeight, setPeekContentHeight] = useState(0);
162
169
  const contentRef = useRef(null);
170
+ const peekElRef = useRef(null);
163
171
  const peekContext = useMemo(() => ({
164
172
  contentRef,
173
+ peekRef: peekElRef,
165
174
  setPeekContentHeight
166
175
  }), []);
167
176
  const peekHeight = (header ? headerHeight : 0) + (footer ? footerHeight : 0) + peekContentHeight || DEFAULT_PEEK_HEIGHT;
@@ -231,15 +240,15 @@ const TrueSheetComponent = /*#__PURE__*/forwardRef((props, ref) => {
231
240
  // per detent. Mirrors vaul's snap-offset math exactly (same effective
232
241
  // height, ceiling, and 'auto'/'peek' resolution) so computed targets match
233
242
  // where the drawer actually settles. Numeric detent d → top-Y =
234
- // (1 - d) * effectiveH. 'auto' resolves to the auto-size wrapper's measured
235
- // height (tracked via vaul's `onContentHeightChange`) same signal vaul
236
- // uses to compute its snap offset. Inputs live in a render-synced ref so
237
- // the compute callbacks stay referentially stable for the event effects.
243
+ // (1 - d) * effectiveH. 'auto' and 'peek' are measured live from the DOM
244
+ // (see below). Inputs live in a render-synced ref so the compute callbacks
245
+ // stay referentially stable for the event effects.
238
246
  const geometryInputsRef = useRef({
239
247
  effectiveDetached,
240
248
  effectiveDetachedOffset,
241
249
  effectiveMaxContentHeight,
242
250
  peekHeight,
251
+ peekContentHeight,
243
252
  measuredContentHeight
244
253
  });
245
254
  geometryInputsRef.current = {
@@ -247,6 +256,7 @@ const TrueSheetComponent = /*#__PURE__*/forwardRef((props, ref) => {
247
256
  effectiveDetachedOffset,
248
257
  effectiveMaxContentHeight,
249
258
  peekHeight,
259
+ peekContentHeight,
250
260
  measuredContentHeight
251
261
  };
252
262
  const computeDetentGeometry = useCallback(() => {
@@ -255,13 +265,32 @@ const TrueSheetComponent = /*#__PURE__*/forwardRef((props, ref) => {
255
265
  const effectiveH = inputs.effectiveDetached ? windowH - inputs.effectiveDetachedOffset : windowH;
256
266
  // Matches vaul's height ceiling: min(effectiveH, maxContentHeight).
257
267
  const ceiling = inputs.effectiveMaxContentHeight !== undefined ? Math.min(effectiveH, inputs.effectiveMaxContentHeight) : effectiveH;
258
- // Matches vaul's 'auto' fallback (effectiveHeight / 2) before content is
259
- // measured keeps targets consistent even before the drawer mounts.
260
- const autoHeight = Math.min(inputs.measuredContentHeight > 0 ? inputs.measuredContentHeight : effectiveH / 2, ceiling);
268
+ // 'auto' resolves to the auto-size wrapper's height. Read it live the
269
+ // `measuredContentHeight` state lags mount by a frame (vaul's initial
270
+ // ref-callback measure runs while the portal subtree is still detached,
271
+ // so it reads 0 until the ResizeObserver fires). Falls back to the state
272
+ // value, then to vaul's pre-measure fallback (effectiveHeight / 2).
273
+ const autoWrapper = drawerContentRef.current?.querySelector('[data-vaul-auto-size-wrapper]');
274
+ const measuredHeight = autoWrapper?.offsetHeight || inputs.measuredContentHeight;
275
+ const autoHeight = Math.min(measuredHeight > 0 ? measuredHeight : effectiveH / 2, ceiling);
276
+
277
+ // 'peek' is measured live from the DOM (offsetHeight is layout-based, so
278
+ // in-flight transforms don't skew it): the state-driven `peekHeight` prop
279
+ // comes from RN-web onLayout, which dispatches a frame after mount — too
280
+ // late for the first willPresent on autopresent. Ref callbacks can't
281
+ // measure either: they fire while the portal subtree is still detached.
282
+ // Geometry only runs while the drawer is mounted, so the elements are
283
+ // measurable here; fall back to the state value when they're absent.
284
+ const headerEl = headerElRef.current;
285
+ const footerEl = footerElRef.current;
286
+ const peekEl = peekElRef.current;
287
+ const contentEl = contentRef.current;
288
+ const livePeekContentHeight = peekEl && contentEl ? measurePeekContentHeight(peekEl, contentEl) : inputs.peekContentHeight;
289
+ const livePeekHeight = headerEl || footerEl || peekEl ? (headerEl?.offsetHeight ?? 0) + (footerEl?.offsetHeight ?? 0) + livePeekContentHeight || DEFAULT_PEEK_HEIGHT : inputs.peekHeight;
261
290
  const positions = [];
262
291
  const values = [];
263
292
  for (const d of validDetentsRef.current) {
264
- const h = typeof d === 'number' ? Math.min(d * effectiveH, ceiling) : d === 'peek' ? Math.min(inputs.peekHeight, ceiling) : autoHeight;
293
+ const h = typeof d === 'number' ? Math.min(d * effectiveH, ceiling) : d === 'peek' ? Math.min(livePeekHeight, ceiling) : autoHeight;
265
294
  positions.push(effectiveH - h);
266
295
  values.push(effectiveH > 0 ? h / effectiveH : 0);
267
296
  }
@@ -393,29 +422,18 @@ const TrueSheetComponent = /*#__PURE__*/forwardRef((props, ref) => {
393
422
  useEffect(() => {
394
423
  const wasOpen = wasOpenRef.current;
395
424
  wasOpenRef.current = isOpen;
396
- if (!isOpen && !wasOpen) return undefined;
397
- const present = !wasOpen && isOpen;
398
- if (present) {
399
- // Pair willFocus with willPresent on initial present — mirrors native
400
- // iOS where viewWillAppear dispatches both. The descendant-stack focus
401
- // effect handles subsequent gained/lost transitions.
402
- onWillPresentRef.current?.({
403
- nativeEvent: computeDetentInfo()
404
- });
405
- onWillFocusRef.current?.({
406
- nativeEvent: null
407
- });
408
- } else if (wasOpen && !isOpen) {
425
+ if (isOpen === wasOpen) return undefined;
426
+ const present = isOpen;
427
+ if (!present) {
409
428
  // Pair willBlur with willDismiss on dismiss — mirrors native iOS
410
- // emitWillDismissEvents (blur fires before dismiss).
429
+ // emitWillDismissEvents (blur fires before dismiss). willPresent is
430
+ // deferred to `start()` below (needs the mounted drawer's geometry).
411
431
  onWillBlurRef.current?.({
412
432
  nativeEvent: null
413
433
  });
414
434
  onWillDismissRef.current?.({
415
435
  nativeEvent: null
416
436
  });
417
- } else {
418
- return undefined;
419
437
  }
420
438
  const fireDone = () => {
421
439
  if (present) {
@@ -439,12 +457,29 @@ const TrueSheetComponent = /*#__PURE__*/forwardRef((props, ref) => {
439
457
  const start = () => {
440
458
  if (canceled) return;
441
459
  const drawer = drawerContentRef.current;
442
- if (!drawer) {
460
+ if (!drawer || !drawer.isConnected) {
443
461
  // Drawer hasn't mounted yet (Radix Presence defers the portal mount
444
- // past the first effect pass). Poll until the ref is populated.
462
+ // past the first effect pass), or its subtree isn't attached to the
463
+ // document yet (autopresent commits the portal before the app tree
464
+ // attaches, so nothing is measurable). Poll until it's live.
445
465
  rafId = window.requestAnimationFrame(start);
446
466
  return;
447
467
  }
468
+ if (present) {
469
+ // Emit will-events only once the drawer is mounted and attached —
470
+ // detent geometry ('auto' height, 'peek', form-sheet sizing) is
471
+ // measurable from the DOM here; a synchronous emission would use the
472
+ // pre-measure fallbacks on first present. Pairing willFocus with
473
+ // willPresent mirrors native iOS where viewWillAppear dispatches
474
+ // both; the descendant-stack focus effect handles subsequent
475
+ // transitions.
476
+ onWillPresentRef.current?.({
477
+ nativeEvent: computeDetentInfo()
478
+ });
479
+ onWillFocusRef.current?.({
480
+ nativeEvent: null
481
+ });
482
+ }
448
483
  const wrapper = drawer.closest('[data-vaul-detached-wrapper]') ?? null;
449
484
  const targets = wrapper ? [drawer, wrapper] : [drawer];
450
485
  const waitForSettle = () => {
@@ -569,10 +604,10 @@ const TrueSheetComponent = /*#__PURE__*/forwardRef((props, ref) => {
569
604
  // own child didn't move (e.g., child skipped its cascade for a page
570
605
  // grandchild) — leaving a visible gap between this sheet and its child.
571
606
  const computeTargetY = () => {
572
- const parentSnap = parseFloat(parent.style.getPropertyValue('--snap-point-height')) || 0;
607
+ const parentSnap = Number.parseFloat(parent.style.getPropertyValue('--snap-point-height')) || 0;
573
608
  const node = descendants[0]?.nodeRef.current;
574
609
  if (!node) return parentSnap;
575
- const childSnap = parseFloat(node.style.getPropertyValue('--snap-point-height')) || 0;
610
+ const childSnap = Number.parseFloat(node.style.getPropertyValue('--snap-point-height')) || 0;
576
611
  return Math.max(parentSnap, childSnap);
577
612
  };
578
613
 
@@ -591,9 +626,9 @@ const TrueSheetComponent = /*#__PURE__*/forwardRef((props, ref) => {
591
626
  const childDrawer = form.nodeRef.current;
592
627
  const childWrapper = childDrawer?.closest('[data-vaul-detached-wrapper]');
593
628
  if (!parentWrapper || !childDrawer || !childWrapper) return;
594
- const snapY = parseFloat(childDrawer.style.getPropertyValue('--snap-point-height')) || 0;
595
- const childBottomGap = parseFloat(childWrapper.style.bottom) || 0;
596
- const childMaxW = parseFloat(childWrapper.style.maxWidth) || window.innerWidth;
629
+ const snapY = Number.parseFloat(childDrawer.style.getPropertyValue('--snap-point-height')) || 0;
630
+ const childBottomGap = Number.parseFloat(childWrapper.style.bottom) || 0;
631
+ const childMaxW = Number.parseFloat(childWrapper.style.maxWidth) || window.innerWidth;
597
632
  const formLeft = (window.innerWidth - childMaxW) / 2;
598
633
  const formRight = (window.innerWidth + childMaxW) / 2;
599
634
  const formBottom = window.innerHeight - childBottomGap;
@@ -618,7 +653,7 @@ const TrueSheetComponent = /*#__PURE__*/forwardRef((props, ref) => {
618
653
  }
619
654
  const targetY = computeTargetY();
620
655
  const match = parent.style.transform.match(/translate3d\([^,]*,\s*(-?\d*\.?\d+)px/);
621
- const currentY = match ? parseFloat(match[1]) : 0;
656
+ const currentY = match ? Number.parseFloat(match[1]) : 0;
622
657
  if (Math.abs(currentY - targetY) < 0.5) return;
623
658
  parent.style.transition = transition;
624
659
  parent.style.transform = `translate3d(0, ${targetY}px, 0)`;
@@ -845,6 +880,7 @@ const TrueSheetComponent = /*#__PURE__*/forwardRef((props, ref) => {
845
880
  detachedSiblings: footer ? /*#__PURE__*/_jsx("div", {
846
881
  style: footerFloatStyle,
847
882
  children: /*#__PURE__*/_jsx(View, {
883
+ ref: footerElRef,
848
884
  style: footerStyle,
849
885
  onLayout: handleFooterLayout,
850
886
  children: /*#__PURE__*/isValidElement(footer) ? footer : /*#__PURE__*/createElement(footer)
@@ -865,6 +901,7 @@ const TrueSheetComponent = /*#__PURE__*/forwardRef((props, ref) => {
865
901
  _jsxs("div", {
866
902
  style: scrollableLayoutStyle,
867
903
  children: [header && /*#__PURE__*/_jsx(View, {
904
+ ref: headerElRef,
868
905
  style: headerStyle,
869
906
  onLayout: handleHeaderLayout,
870
907
  children: /*#__PURE__*/isValidElement(header) ? header : /*#__PURE__*/createElement(header)
@@ -879,6 +916,7 @@ const TrueSheetComponent = /*#__PURE__*/forwardRef((props, ref) => {
879
916
  })]
880
917
  }) : /*#__PURE__*/_jsxs(_Fragment, {
881
918
  children: [header && /*#__PURE__*/_jsx(View, {
919
+ ref: headerElRef,
882
920
  style: headerStyle,
883
921
  onLayout: handleHeaderLayout,
884
922
  children: /*#__PURE__*/isValidElement(header) ? header : /*#__PURE__*/createElement(header)
@@ -1 +1 @@
1
- {"version":3,"names":["createElement","forwardRef","isValidElement","useCallback","useEffect","useImperativeHandle","useMemo","useRef","useState","View","useColorScheme","useWindowDimensions","Drawer","DEFAULT_PEEK_HEIGHT","TRANSITIONS","TrueSheetPeekContext","usePortalContainer","useRegisterSheet","useSheetStack","COLOR_SURFACE_CONTAINER_LOW_DARK","COLOR_SURFACE_CONTAINER_LOW_LIGHT","DEFAULT_ANCHOR_OFFSET","DEFAULT_CORNER_RADIUS","DEFAULT_DETACHED_OFFSET","DEFAULT_GRABBER_COLOR_DARK","DEFAULT_GRABBER_COLOR_LIGHT","DEFAULT_GRABBER_HEIGHT","DEFAULT_GRABBER_TOP_MARGIN","DEFAULT_GRABBER_WIDTH","DEFAULT_FORM_SHEET_HEIGHT_RATIO","DEFAULT_FORM_SHEET_WIDTH","DEFAULT_MAX_WIDTH","jsx","_jsx","jsxs","_jsxs","Fragment","_Fragment","TrueSheetComponent","props","ref","children","name","dismissible","draggable","cornerRadius","style","backgroundColor","backgroundColorProp","maxContentHeight","maxContentWidth","anchor","anchorOffset","grabber","grabberOptions","detents","dimmed","dimmedDetentIndex","initialDetentIndex","header","headerStyle","footer","footerStyle","scrollable","presentation","detached","detachedOffset","elevation","insetAdjustment","initialDetentAnimated","onPositionChange","onWillPresent","onDidPresent","onWillDismiss","onDidDismiss","onDetentChange","onDragBegin","onDragChange","onDragEnd","onMount","onWillFocus","onDidFocus","onWillBlur","onDidBlur","validDetents","filter","d","snapPointsProps","length","snapPoints","fadeFromIndex","Math","min","width","windowWidth","height","windowHeight","isLandscapeOrTablet","isFormSheet","effectiveDetached","colorScheme","shouldAutoPresent","isOpen","setIsOpen","activeSnapPoint","setActiveSnapPoint","current","includes","validDetentsRef","handleSetActiveSnapPoint","snapPoint","handleOpenChange","open","portalContainer","handlePointerDownOutside","e","target","Node","contains","preventDefault","Element","wrapper","drawerContentRef","closest","dismissAboveRef","methods","present","index","detent","undefined","Error","dismiss","resize","dismissStack","animated","methodsRef","headerHeight","setHeaderHeight","footerHeight","setFooterHeight","handleHeaderLayout","nativeEvent","layout","handleFooterLayout","peekContentHeight","setPeekContentHeight","contentRef","peekContext","peekHeight","isScrollLocked","measuredContentHeight","setMeasuredContentHeight","effectiveMaxContentHeight","max","effectiveDetachedOffset","visibleHeight","onWillPresentRef","onDidPresentRef","onWillDismissRef","onDidDismissRef","onDetentChangeRef","onDragBeginRef","onDragChangeRef","onDragEndRef","onPositionChangeRef","activeSnapPointRef","geometryInputsRef","computeDetentGeometry","inputs","windowH","window","innerHeight","effectiveH","ceiling","autoHeight","positions","values","h","push","computeDetentInfo","live","snap","indexOf","position","getBoundingClientRect","top","interpolateFromPosition","count","epsilon","firstPos","lastPos","indexRaw","detentRaw","indexProgress","detentProgress","clamped","i","pos","nextPos","range","progress","clampedProgress","handlePositionChange","realtime","onMountRef","wasOpenRef","wasOpen","onWillFocusRef","onWillBlurRef","fireDone","onDidFocusRef","onDidBlurRef","canceled","rafId","start","drawer","requestAnimationFrame","targets","waitForSettle","offsetHeight","pending","flatMap","el","getAnimations","a","playState","Promise","allSettled","map","finished","then","cancelAnimationFrame","detentChangeStateRef","prev","isDraggingRef","handleDrag","handleRelease","isNested","dismissAbove","descendants","parent","parentWrapper","transition","DURATION","EASE","join","wrapperTransition","CLIP_NONE","setClip","next","clipPath","transform","computeTargetY","parentSnap","parseFloat","getPropertyValue","node","nodeRef","childSnap","applyFormClip","form","find","isFormSheetRef","childDrawer","childWrapper","snapY","childBottomGap","bottom","childMaxW","maxWidth","innerWidth","formLeft","formRight","formBottom","rect","left","right","radius","apply","child","targetY","match","currentY","abs","raf","observer","MutationObserver","observe","attributes","attributeFilter","disconnect","prevDescendantCountRef","prevCount","gained","lost","effectiveCornerRadius","dropShadow","mergedContentStyle","display","flexDirection","borderTopLeftRadius","borderTopRightRadius","overflow","paddingBottom","defaultGrabberColor","grabberHeight","footerFloatStyle","pointerEvents","wrapperStyle","needsMargins","marginLeft","marginRight","handleStyle","topMargin","borderRadius","color","opacity","zIndex","Provider","value","Root","onOpenChange","onDrag","onRelease","repositionInputs","modal","nested","detachedRadius","initialAnimated","detachedWrapperStyle","onContentHeightChange","Portal","container","Overlay","overlayStyle","Content","onPointerDownOutside","detachedSiblings","onLayout","Title","visuallyHiddenStyle","Handle","scrollableLayoutStyle","scrollableContainerStyle","inset","flex","minHeight","overflowY","overscrollBehavior","touchAction","padding","margin","clip","whiteSpace","border","STATIC_METHOD_ERROR","TrueSheet","rejectStatic","dismissAll"],"sourceRoot":"../../src","sources":["TrueSheet.web.tsx"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["createElement","forwardRef","isValidElement","useCallback","useEffect","useImperativeHandle","useMemo","useRef","useState","useColorScheme","useWindowDimensions","View","measurePeekContentHeight","TrueSheetPeekContext","usePortalContainer","useRegisterSheet","useSheetStack","COLOR_SURFACE_CONTAINER_LOW_DARK","COLOR_SURFACE_CONTAINER_LOW_LIGHT","DEFAULT_ANCHOR_OFFSET","DEFAULT_CORNER_RADIUS","DEFAULT_DETACHED_OFFSET","DEFAULT_FORM_SHEET_HEIGHT_RATIO","DEFAULT_FORM_SHEET_WIDTH","DEFAULT_GRABBER_COLOR_DARK","DEFAULT_GRABBER_COLOR_LIGHT","DEFAULT_GRABBER_HEIGHT","DEFAULT_GRABBER_TOP_MARGIN","DEFAULT_GRABBER_WIDTH","DEFAULT_MAX_WIDTH","Drawer","DEFAULT_PEEK_HEIGHT","TRANSITIONS","jsx","_jsx","jsxs","_jsxs","Fragment","_Fragment","TrueSheetComponent","props","ref","children","name","dismissible","draggable","cornerRadius","style","backgroundColor","backgroundColorProp","maxContentHeight","maxContentWidth","anchor","anchorOffset","grabber","grabberOptions","detents","dimmed","dimmedDetentIndex","initialDetentIndex","header","headerStyle","footer","footerStyle","scrollable","presentation","detached","detachedOffset","elevation","insetAdjustment","initialDetentAnimated","onPositionChange","onWillPresent","onDidPresent","onWillDismiss","onDidDismiss","onDetentChange","onDragBegin","onDragChange","onDragEnd","onMount","onWillFocus","onDidFocus","onWillBlur","onDidBlur","validDetents","filter","d","snapPointsProps","length","snapPoints","fadeFromIndex","Math","min","width","windowWidth","height","windowHeight","isLandscapeOrTablet","isFormSheet","effectiveDetached","colorScheme","shouldAutoPresent","isOpen","setIsOpen","activeSnapPoint","setActiveSnapPoint","current","includes","validDetentsRef","handleSetActiveSnapPoint","snapPoint","handleOpenChange","open","portalContainer","handlePointerDownOutside","e","target","Node","contains","preventDefault","Element","wrapper","drawerContentRef","closest","dismissAboveRef","methods","present","index","detent","undefined","Error","dismiss","resize","dismissStack","animated","methodsRef","headerHeight","setHeaderHeight","footerHeight","setFooterHeight","handleHeaderLayout","nativeEvent","layout","handleFooterLayout","headerElRef","footerElRef","peekContentHeight","setPeekContentHeight","contentRef","peekElRef","peekContext","peekRef","peekHeight","isScrollLocked","measuredContentHeight","setMeasuredContentHeight","effectiveMaxContentHeight","max","effectiveDetachedOffset","visibleHeight","onWillPresentRef","onDidPresentRef","onWillDismissRef","onDidDismissRef","onDetentChangeRef","onDragBeginRef","onDragChangeRef","onDragEndRef","onPositionChangeRef","activeSnapPointRef","geometryInputsRef","computeDetentGeometry","inputs","windowH","window","innerHeight","effectiveH","ceiling","autoWrapper","querySelector","measuredHeight","offsetHeight","autoHeight","headerEl","footerEl","peekEl","contentEl","livePeekContentHeight","livePeekHeight","positions","values","h","push","computeDetentInfo","live","snap","indexOf","position","getBoundingClientRect","top","interpolateFromPosition","count","epsilon","firstPos","lastPos","indexRaw","detentRaw","indexProgress","detentProgress","clamped","i","pos","nextPos","range","progress","clampedProgress","handlePositionChange","realtime","onMountRef","wasOpenRef","wasOpen","onWillBlurRef","fireDone","onDidFocusRef","onDidBlurRef","canceled","rafId","start","drawer","isConnected","requestAnimationFrame","onWillFocusRef","targets","waitForSettle","pending","flatMap","el","getAnimations","a","playState","Promise","allSettled","map","finished","then","cancelAnimationFrame","detentChangeStateRef","prev","isDraggingRef","handleDrag","handleRelease","isNested","dismissAbove","descendants","parent","parentWrapper","transition","DURATION","EASE","join","wrapperTransition","CLIP_NONE","setClip","next","clipPath","transform","computeTargetY","parentSnap","Number","parseFloat","getPropertyValue","node","nodeRef","childSnap","applyFormClip","form","find","isFormSheetRef","childDrawer","childWrapper","snapY","childBottomGap","bottom","childMaxW","maxWidth","innerWidth","formLeft","formRight","formBottom","rect","left","right","radius","apply","child","targetY","match","currentY","abs","raf","observer","MutationObserver","observe","attributes","attributeFilter","disconnect","prevDescendantCountRef","prevCount","gained","lost","effectiveCornerRadius","dropShadow","mergedContentStyle","display","flexDirection","borderTopLeftRadius","borderTopRightRadius","overflow","paddingBottom","defaultGrabberColor","grabberHeight","footerFloatStyle","pointerEvents","wrapperStyle","needsMargins","marginLeft","marginRight","handleStyle","topMargin","borderRadius","color","opacity","zIndex","Provider","value","Root","onOpenChange","onDrag","onRelease","repositionInputs","modal","nested","detachedRadius","initialAnimated","detachedWrapperStyle","onContentHeightChange","Portal","container","Overlay","overlayStyle","Content","onPointerDownOutside","detachedSiblings","onLayout","Title","visuallyHiddenStyle","Handle","scrollableLayoutStyle","scrollableContainerStyle","inset","flex","minHeight","overflowY","overscrollBehavior","touchAction","padding","margin","clip","whiteSpace","border","STATIC_METHOD_ERROR","TrueSheet","rejectStatic","dismissAll"],"sourceRoot":"../../src","sources":["TrueSheet.web.tsx"],"mappings":"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","ignoreList":[]}
@@ -10,6 +10,15 @@ import { View } from 'react-native';
10
10
  import { jsx as _jsx } from "react/jsx-runtime";
11
11
  export const TrueSheetPeekContext = /*#__PURE__*/createContext(null);
12
12
 
13
+ /**
14
+ * Distance from the top of the content view to the bottom of the peek view,
15
+ * so the peek view's offset within the content (padding, views above it)
16
+ * counts toward the peek detent. Both rects live in the drawer's transformed
17
+ * subtree, so an in-flight translate cancels out of the delta.
18
+ * @internal
19
+ */
20
+ export const measurePeekContentHeight = (peekElement, contentElement) => peekElement.getBoundingClientRect().bottom - contentElement.getBoundingClientRect().top;
21
+
13
22
  /**
14
23
  * Wrapper component that marks its children as the sheet's peek content.
15
24
  * When rendered within a `TrueSheet`, the `"peek"` detent reveals everything
@@ -21,18 +30,18 @@ export const TrueSheetPeek = ({
21
30
  ...rest
22
31
  }) => {
23
32
  const context = useContext(TrueSheetPeekContext);
24
- const viewRef = useRef(null);
33
+ const localRef = useRef(null);
34
+
35
+ // Register into the sheet's peek ref so it can measure the peek live
36
+ // during detent geometry computation (state lags the first willPresent).
37
+ const viewRef = context?.peekRef ?? localRef;
25
38
  useEffect(() => () => context?.setPeekContentHeight(0), [context]);
26
39
  const handleLayout = event => {
27
40
  if (context) {
28
41
  // On web, View refs resolve to the underlying DOM elements.
29
42
  const peekElement = viewRef.current;
30
43
  const contentElement = context.contentRef.current;
31
-
32
- // Distance from the top of the content view to the bottom of the peek view,
33
- // so the peek view's offset within the content (padding, views above it)
34
- // counts toward the peek detent.
35
- const bottom = peekElement && contentElement ? peekElement.getBoundingClientRect().bottom - contentElement.getBoundingClientRect().top : event.nativeEvent.layout.height;
44
+ const bottom = peekElement && contentElement ? measurePeekContentHeight(peekElement, contentElement) : event.nativeEvent.layout.height;
36
45
  context.setPeekContentHeight(bottom);
37
46
  }
38
47
  onLayout?.(event);
@@ -1 +1 @@
1
- {"version":3,"names":["createContext","useContext","useEffect","useRef","View","jsx","_jsx","TrueSheetPeekContext","TrueSheetPeek","onLayout","rest","context","viewRef","setPeekContentHeight","handleLayout","event","peekElement","current","contentElement","contentRef","bottom","getBoundingClientRect","top","nativeEvent","layout","height","ref"],"sourceRoot":"../../src","sources":["TrueSheetPeek.web.tsx"],"mappings":";;AAAA,SAASA,aAAa,EAAEC,UAAU,EAAEC,SAAS,EAAEC,MAAM,QAAwB,OAAO;AACpF,SAASC,IAAI,QAAgD,cAAc;;AAE3E;AACA;AACA;AACA;AAHA,SAAAC,GAAA,IAAAC,IAAA;AASA,OAAO,MAAMC,oBAAoB,gBAAGP,aAAa,CAAmC,IAAI,CAAC;;AAEzF;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,MAAMQ,aAAa,GAAGA,CAAC;EAAEC,QAAQ;EAAE,GAAGC;AAAgB,CAAC,KAAK;EACjE,MAAMC,OAAO,GAAGV,UAAU,CAACM,oBAAoB,CAAC;EAChD,MAAMK,OAAO,GAAGT,MAAM,CAAO,IAAI,CAAC;EAElCD,SAAS,CAAC,MAAM,MAAMS,OAAO,EAAEE,oBAAoB,CAAC,CAAC,CAAC,EAAE,CAACF,OAAO,CAAC,CAAC;EAElE,MAAMG,YAAY,GAAIC,KAAwB,IAAK;IACjD,IAAIJ,OAAO,EAAE;MACX;MACA,MAAMK,WAAW,GAAGJ,OAAO,CAACK,OAAwC;MACpE,MAAMC,cAAc,GAAGP,OAAO,CAACQ,UAAU,CAACF,OAAwC;;MAElF;MACA;MACA;MACA,MAAMG,MAAM,GACVJ,WAAW,IAAIE,cAAc,GACzBF,WAAW,CAACK,qBAAqB,CAAC,CAAC,CAACD,MAAM,GAAGF,cAAc,CAACG,qBAAqB,CAAC,CAAC,CAACC,GAAG,GACvFP,KAAK,CAACQ,WAAW,CAACC,MAAM,CAACC,MAAM;MAErCd,OAAO,CAACE,oBAAoB,CAACO,MAAM,CAAC;IACtC;IAEAX,QAAQ,GAAGM,KAAK,CAAC;EACnB,CAAC;EAED,oBAAOT,IAAA,CAACF,IAAI;IAAA,GAAKM,IAAI;IAAEgB,GAAG,EAAEd,OAAQ;IAACH,QAAQ,EAAEK;EAAa,CAAE,CAAC;AACjE,CAAC","ignoreList":[]}
1
+ {"version":3,"names":["createContext","useContext","useEffect","useRef","View","jsx","_jsx","TrueSheetPeekContext","measurePeekContentHeight","peekElement","contentElement","getBoundingClientRect","bottom","top","TrueSheetPeek","onLayout","rest","context","localRef","viewRef","peekRef","setPeekContentHeight","handleLayout","event","current","contentRef","nativeEvent","layout","height","ref"],"sourceRoot":"../../src","sources":["TrueSheetPeek.web.tsx"],"mappings":";;AAAA,SAASA,aAAa,EAAkBC,UAAU,EAAEC,SAAS,EAAEC,MAAM,QAAQ,OAAO;AACpF,SAAiCC,IAAI,QAAwB,cAAc;;AAE3E;AACA;AACA;AACA;AAHA,SAAAC,GAAA,IAAAC,IAAA;AAUA,OAAO,MAAMC,oBAAoB,gBAAGP,aAAa,CAAmC,IAAI,CAAC;;AAEzF;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,MAAMQ,wBAAwB,GAAGA,CACtCC,WAAwB,EACxBC,cAA2B,KAE3BD,WAAW,CAACE,qBAAqB,CAAC,CAAC,CAACC,MAAM,GAAGF,cAAc,CAACC,qBAAqB,CAAC,CAAC,CAACE,GAAG;;AAEzF;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,MAAMC,aAAa,GAAGA,CAAC;EAAEC,QAAQ;EAAE,GAAGC;AAAgB,CAAC,KAAK;EACjE,MAAMC,OAAO,GAAGhB,UAAU,CAACM,oBAAoB,CAAC;EAChD,MAAMW,QAAQ,GAAGf,MAAM,CAAO,IAAI,CAAC;;EAEnC;EACA;EACA,MAAMgB,OAAO,GAAGF,OAAO,EAAEG,OAAO,IAAIF,QAAQ;EAE5ChB,SAAS,CAAC,MAAM,MAAMe,OAAO,EAAEI,oBAAoB,CAAC,CAAC,CAAC,EAAE,CAACJ,OAAO,CAAC,CAAC;EAElE,MAAMK,YAAY,GAAIC,KAAwB,IAAK;IACjD,IAAIN,OAAO,EAAE;MACX;MACA,MAAMR,WAAW,GAAGU,OAAO,CAACK,OAAwC;MACpE,MAAMd,cAAc,GAAGO,OAAO,CAACQ,UAAU,CAACD,OAAwC;MAElF,MAAMZ,MAAM,GACVH,WAAW,IAAIC,cAAc,GACzBF,wBAAwB,CAACC,WAAW,EAAEC,cAAc,CAAC,GACrDa,KAAK,CAACG,WAAW,CAACC,MAAM,CAACC,MAAM;MAErCX,OAAO,CAACI,oBAAoB,CAACT,MAAM,CAAC;IACtC;IAEAG,QAAQ,GAAGQ,KAAK,CAAC;EACnB,CAAC;EAED,oBAAOjB,IAAA,CAACF,IAAI;IAAA,GAAKY,IAAI;IAAEa,GAAG,EAAEV,OAAQ;IAACJ,QAAQ,EAAEO;EAAa,CAAE,CAAC;AACjE,CAAC","ignoreList":[]}
@@ -11,6 +11,8 @@ export const DrawerContext = /*#__PURE__*/React.createContext({
11
11
  onPress: () => {},
12
12
  onRelease: () => {},
13
13
  onDrag: () => {},
14
+ onTouchDrag: () => {},
15
+ onTouchRelease: () => {},
14
16
  onNestedDrag: () => {},
15
17
  onNestedOpenChange: () => {},
16
18
  onNestedRelease: () => {},
@@ -1 +1 @@
1
- {"version":3,"names":["React","DrawerContext","createContext","drawerRef","current","overlayRef","onPress","onRelease","onDrag","onNestedDrag","onNestedOpenChange","onNestedRelease","openProp","undefined","dismissible","isOpen","isDragging","keyboardIsOpen","snapPointsOffset","snapPoints","handleOnly","modal","shouldFade","activeSnapPoint","onOpenChange","setActiveSnapPoint","closeDrawer","direction","shouldAnimate","shouldScaleBackground","setBackgroundColorOnScale","noBodyStyles","container","autoFocus","onPositionChangeRef","setContentHeight","detached","detachedOffset","detachedRadius","useDrawerContext","context","useContext","Error"],"sourceRoot":"../../../../src","sources":["web/vaul/context.ts"],"mappings":";;AAAA,OAAOA,KAAK,MAAM,OAAO;AA2CzB,OAAO,MAAMC,aAAa,gBAAGD,KAAK,CAACE,aAAa,CAAqB;EACnEC,SAAS,EAAE;IAAEC,OAAO,EAAE;EAAK,CAAC;EAC5BC,UAAU,EAAE;IAAED,OAAO,EAAE;EAAK,CAAC;EAC7BE,OAAO,EAAEA,CAAA,KAAM,CAAC,CAAC;EACjBC,SAAS,EAAEA,CAAA,KAAM,CAAC,CAAC;EACnBC,MAAM,EAAEA,CAAA,KAAM,CAAC,CAAC;EAChBC,YAAY,EAAEA,CAAA,KAAM,CAAC,CAAC;EACtBC,kBAAkB,EAAEA,CAAA,KAAM,CAAC,CAAC;EAC5BC,eAAe,EAAEA,CAAA,KAAM,CAAC,CAAC;EACzBC,QAAQ,EAAEC,SAAS;EACnBC,WAAW,EAAE,KAAK;EAClBC,MAAM,EAAE,KAAK;EACbC,UAAU,EAAE,KAAK;EACjBC,cAAc,EAAE;IAAEb,OAAO,EAAE;EAAM,CAAC;EAClCc,gBAAgB,EAAE,IAAI;EACtBC,UAAU,EAAE,IAAI;EAChBC,UAAU,EAAE,KAAK;EACjBC,KAAK,EAAE,KAAK;EACZC,UAAU,EAAE,KAAK;EACjBC,eAAe,EAAE,IAAI;EACrBC,YAAY,EAAEA,CAAA,KAAM,CAAC,CAAC;EACtBC,kBAAkB,EAAEA,CAAA,KAAM,CAAC,CAAC;EAC5BC,WAAW,EAAEA,CAAA,KAAM,CAAC,CAAC;EACrBC,SAAS,EAAE,QAAQ;EACnBC,aAAa,EAAE;IAAExB,OAAO,EAAE;EAAK,CAAC;EAChCyB,qBAAqB,EAAE,KAAK;EAC5BC,yBAAyB,EAAE,IAAI;EAC/BC,YAAY,EAAE,KAAK;EACnBC,SAAS,EAAE,IAAI;EACfC,SAAS,EAAE,KAAK;EAChBC,mBAAmB,EAAE;IAAE9B,OAAO,EAAES;EAAU,CAAC;EAC3CsB,gBAAgB,EAAEA,CAAA,KAAM,CAAC,CAAC;EAC1BC,QAAQ,EAAE,KAAK;EACfC,cAAc,EAAE,CAAC;EACjBC,cAAc,EAAE;AAClB,CAAC,CAAC;AAEF,OAAO,MAAMC,gBAAgB,GAAGA,CAAA,KAAM;EACpC,MAAMC,OAAO,GAAGxC,KAAK,CAACyC,UAAU,CAACxC,aAAa,CAAC;EAC/C,IAAI,CAACuC,OAAO,EAAE;IACZ,MAAM,IAAIE,KAAK,CAAC,oDAAoD,CAAC;EACvE;EACA,OAAOF,OAAO;AAChB,CAAC","ignoreList":[]}
1
+ {"version":3,"names":["React","DrawerContext","createContext","drawerRef","current","overlayRef","onPress","onRelease","onDrag","onTouchDrag","onTouchRelease","onNestedDrag","onNestedOpenChange","onNestedRelease","openProp","undefined","dismissible","isOpen","isDragging","keyboardIsOpen","snapPointsOffset","snapPoints","handleOnly","modal","shouldFade","activeSnapPoint","onOpenChange","setActiveSnapPoint","closeDrawer","direction","shouldAnimate","shouldScaleBackground","setBackgroundColorOnScale","noBodyStyles","container","autoFocus","onPositionChangeRef","setContentHeight","detached","detachedOffset","detachedRadius","useDrawerContext","context","useContext","Error"],"sourceRoot":"../../../../src","sources":["web/vaul/context.ts"],"mappings":";;AAAA,OAAOA,KAAK,MAAM,OAAO;AAuDzB,OAAO,MAAMC,aAAa,gBAAGD,KAAK,CAACE,aAAa,CAAqB;EACnEC,SAAS,EAAE;IAAEC,OAAO,EAAE;EAAK,CAAC;EAC5BC,UAAU,EAAE;IAAED,OAAO,EAAE;EAAK,CAAC;EAC7BE,OAAO,EAAEA,CAAA,KAAM,CAAC,CAAC;EACjBC,SAAS,EAAEA,CAAA,KAAM,CAAC,CAAC;EACnBC,MAAM,EAAEA,CAAA,KAAM,CAAC,CAAC;EAChBC,WAAW,EAAEA,CAAA,KAAM,CAAC,CAAC;EACrBC,cAAc,EAAEA,CAAA,KAAM,CAAC,CAAC;EACxBC,YAAY,EAAEA,CAAA,KAAM,CAAC,CAAC;EACtBC,kBAAkB,EAAEA,CAAA,KAAM,CAAC,CAAC;EAC5BC,eAAe,EAAEA,CAAA,KAAM,CAAC,CAAC;EACzBC,QAAQ,EAAEC,SAAS;EACnBC,WAAW,EAAE,KAAK;EAClBC,MAAM,EAAE,KAAK;EACbC,UAAU,EAAE,KAAK;EACjBC,cAAc,EAAE;IAAEf,OAAO,EAAE;EAAM,CAAC;EAClCgB,gBAAgB,EAAE,IAAI;EACtBC,UAAU,EAAE,IAAI;EAChBC,UAAU,EAAE,KAAK;EACjBC,KAAK,EAAE,KAAK;EACZC,UAAU,EAAE,KAAK;EACjBC,eAAe,EAAE,IAAI;EACrBC,YAAY,EAAEA,CAAA,KAAM,CAAC,CAAC;EACtBC,kBAAkB,EAAEA,CAAA,KAAM,CAAC,CAAC;EAC5BC,WAAW,EAAEA,CAAA,KAAM,CAAC,CAAC;EACrBC,SAAS,EAAE,QAAQ;EACnBC,aAAa,EAAE;IAAE1B,OAAO,EAAE;EAAK,CAAC;EAChC2B,qBAAqB,EAAE,KAAK;EAC5BC,yBAAyB,EAAE,IAAI;EAC/BC,YAAY,EAAE,KAAK;EACnBC,SAAS,EAAE,IAAI;EACfC,SAAS,EAAE,KAAK;EAChBC,mBAAmB,EAAE;IAAEhC,OAAO,EAAEW;EAAU,CAAC;EAC3CsB,gBAAgB,EAAEA,CAAA,KAAM,CAAC,CAAC;EAC1BC,QAAQ,EAAE,KAAK;EACfC,cAAc,EAAE,CAAC;EACjBC,cAAc,EAAE;AAClB,CAAC,CAAC;AAEF,OAAO,MAAMC,gBAAgB,GAAGA,CAAA,KAAM;EACpC,MAAMC,OAAO,GAAG1C,KAAK,CAAC2C,UAAU,CAAC1C,aAAa,CAAC;EAC/C,IAAI,CAACyC,OAAO,EAAE;IACZ,MAAM,IAAIE,KAAK,CAAC,oDAAoD,CAAC;EACvE;EACA,OAAOF,OAAO;AAChB,CAAC","ignoreList":[]}
@@ -282,7 +282,7 @@ export function Root({
282
282
  // No scrollable parents not scrolled to the top found, so drag
283
283
  return true;
284
284
  }
285
- function onDrag(event) {
285
+ function drag(event, pointerEvent) {
286
286
  if (!drawerRef.current) {
287
287
  return;
288
288
  }
@@ -336,7 +336,7 @@ export function Root({
336
336
  set(overlayRef.current, {
337
337
  transition: 'none'
338
338
  });
339
- onDragProp?.(event, percentageDragged);
339
+ if (pointerEvent) onDragProp?.(pointerEvent, percentageDragged);
340
340
  if (snapPoints) {
341
341
  onDragSnapPoints({
342
342
  draggedDistance
@@ -495,7 +495,7 @@ export function Root({
495
495
  setIsDragging(false);
496
496
  dragEndTime.current = new Date();
497
497
  }
498
- function onRelease(event) {
498
+ function release(event, pointerEvent) {
499
499
  if (!isDragging || !drawerRef.current) return;
500
500
  drawerRef.current.classList.remove(DRAG_CLASS);
501
501
  isAllowedToDrag.current = false;
@@ -523,19 +523,19 @@ export function Root({
523
523
  velocity,
524
524
  dismissible
525
525
  });
526
- onReleaseProp?.(event, true);
526
+ if (pointerEvent) onReleaseProp?.(pointerEvent, true);
527
527
  return;
528
528
  }
529
529
 
530
530
  // Moved upwards, don't do anything
531
531
  if (direction === 'bottom' || direction === 'right' ? distMoved > 0 : distMoved < 0) {
532
532
  resetDrawer();
533
- onReleaseProp?.(event, true);
533
+ if (pointerEvent) onReleaseProp?.(pointerEvent, true);
534
534
  return;
535
535
  }
536
536
  if (velocity > VELOCITY_THRESHOLD) {
537
537
  closeDrawer();
538
- onReleaseProp?.(event, false);
538
+ if (pointerEvent) onReleaseProp?.(pointerEvent, false);
539
539
  return;
540
540
  }
541
541
  const visibleDrawerHeight = Math.min(drawerRef.current.getBoundingClientRect().height ?? 0, window.innerHeight);
@@ -543,10 +543,10 @@ export function Root({
543
543
  const isHorizontalSwipe = direction === 'left' || direction === 'right';
544
544
  if (Math.abs(swipeAmount) >= (isHorizontalSwipe ? visibleDrawerWidth : visibleDrawerHeight) * closeThreshold) {
545
545
  closeDrawer();
546
- onReleaseProp?.(event, false);
546
+ if (pointerEvent) onReleaseProp?.(pointerEvent, false);
547
547
  return;
548
548
  }
549
- onReleaseProp?.(event, true);
549
+ if (pointerEvent) onReleaseProp?.(pointerEvent, true);
550
550
  resetDrawer();
551
551
  }
552
552
  React.useEffect(() => {
@@ -632,8 +632,10 @@ export function Root({
632
632
  overlayRef,
633
633
  onOpenChange,
634
634
  onPress,
635
- onRelease,
636
- onDrag,
635
+ onRelease: event => release(event, event ?? undefined),
636
+ onDrag: event => drag(event, event),
637
+ onTouchDrag: (event, pointerEvent) => drag(event, pointerEvent),
638
+ onTouchRelease: (event, pointerEvent) => release(event, pointerEvent),
637
639
  dismissible,
638
640
  shouldAnimate,
639
641
  handleOnly,
@@ -746,6 +748,8 @@ export const Content = /*#__PURE__*/React.forwardRef(({
746
748
  onPress,
747
749
  onRelease,
748
750
  onDrag,
751
+ onTouchDrag,
752
+ onTouchRelease,
749
753
  keyboardIsOpen,
750
754
  snapPointsOffset,
751
755
  activeSnapPointIndex,
@@ -793,6 +797,7 @@ export const Content = /*#__PURE__*/React.forwardRef(({
793
797
  const composedRef = useComposedRefs(ref, drawerRef);
794
798
  const pointerStartRef = React.useRef(null);
795
799
  const lastKnownPointerEventRef = React.useRef(null);
800
+ const continuingCanceledTouchRef = React.useRef(false);
796
801
  const wasBeyondThePointRef = React.useRef(false);
797
802
  const hasSnapPoints = snapPoints && snapPoints.length > 0;
798
803
  useScaleBackground();
@@ -989,6 +994,7 @@ export const Content = /*#__PURE__*/React.forwardRef(({
989
994
  onPointerDown: event => {
990
995
  if (handleOnly) return;
991
996
  rest.onPointerDown?.(event);
997
+ continuingCanceledTouchRef.current = false;
992
998
  pointerStartRef.current = {
993
999
  x: event.pageX,
994
1000
  y: event.pageY
@@ -1061,14 +1067,56 @@ export const Content = /*#__PURE__*/React.forwardRef(({
1061
1067
  },
1062
1068
  onPointerUp: event => {
1063
1069
  rest.onPointerUp?.(event);
1070
+ continuingCanceledTouchRef.current = false;
1064
1071
  pointerStartRef.current = null;
1065
1072
  wasBeyondThePointRef.current = false;
1066
1073
  onRelease(event);
1067
1074
  },
1075
+ onPointerCancel: event => {
1076
+ rest.onPointerCancel?.(event);
1077
+ if (event.pointerType === 'touch' && snapPoints && activeSnapPointIndex === snapPoints.length - 1) {
1078
+ continuingCanceledTouchRef.current = true;
1079
+ return;
1080
+ }
1081
+ handleOnPointerUp(null);
1082
+ },
1068
1083
  onPointerOut: event => {
1069
1084
  rest.onPointerOut?.(event);
1085
+ if (continuingCanceledTouchRef.current) return;
1070
1086
  handleOnPointerUp(lastKnownPointerEventRef.current);
1071
1087
  },
1088
+ onTouchMove: event => {
1089
+ rest.onTouchMove?.(event);
1090
+ if (!continuingCanceledTouchRef.current) return;
1091
+ const touch = event.touches[0];
1092
+ if (!touch) return;
1093
+ onTouchDrag({
1094
+ target: event.target,
1095
+ pageX: touch.pageX,
1096
+ pageY: touch.pageY,
1097
+ pointerType: 'touch'
1098
+ }, lastKnownPointerEventRef.current ?? undefined);
1099
+ },
1100
+ onTouchEnd: event => {
1101
+ rest.onTouchEnd?.(event);
1102
+ if (!continuingCanceledTouchRef.current) return;
1103
+ continuingCanceledTouchRef.current = false;
1104
+ pointerStartRef.current = null;
1105
+ wasBeyondThePointRef.current = false;
1106
+ const touch = event.changedTouches[0];
1107
+ onTouchRelease(touch ? {
1108
+ target: event.target,
1109
+ pageX: touch.pageX,
1110
+ pageY: touch.pageY,
1111
+ pointerType: 'touch'
1112
+ } : null, lastKnownPointerEventRef.current ?? undefined);
1113
+ },
1114
+ onTouchCancel: event => {
1115
+ rest.onTouchCancel?.(event);
1116
+ if (!continuingCanceledTouchRef.current) return;
1117
+ continuingCanceledTouchRef.current = false;
1118
+ handleOnPointerUp(null);
1119
+ },
1072
1120
  onContextMenu: event => {
1073
1121
  rest.onContextMenu?.(event);
1074
1122
  if (lastKnownPointerEventRef.current) {