@lodev09/react-native-true-sheet 3.11.6 → 3.11.8
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/android/src/main/java/com/lodev09/truesheet/core/TrueSheetCoordinatorLayout.kt +46 -19
- package/lib/module/TrueSheet.web.js +159 -84
- package/lib/module/TrueSheet.web.js.map +1 -1
- package/lib/module/web/vaul/context.js +2 -0
- package/lib/module/web/vaul/context.js.map +1 -1
- package/lib/module/web/vaul/index.js +134 -19
- package/lib/module/web/vaul/index.js.map +1 -1
- package/lib/module/web/vaul/style.css +24 -1
- package/lib/module/web/vaul/use-snap-points.js +13 -4
- package/lib/module/web/vaul/use-snap-points.js.map +1 -1
- package/lib/typescript/src/TrueSheet.web.d.ts.map +1 -1
- package/lib/typescript/src/web/vaul/context.d.ts +8 -0
- package/lib/typescript/src/web/vaul/context.d.ts.map +1 -1
- package/lib/typescript/src/web/vaul/index.d.ts.map +1 -1
- package/lib/typescript/src/web/vaul/use-snap-points.d.ts.map +1 -1
- package/package.json +1 -1
- package/src/TrueSheet.web.tsx +175 -95
- package/src/web/vaul/context.ts +14 -0
- package/src/web/vaul/index.tsx +147 -20
- package/src/web/vaul/style.css +24 -1
- package/src/web/vaul/use-snap-points.ts +14 -5
|
@@ -12,6 +12,7 @@ import androidx.coordinatorlayout.widget.CoordinatorLayout
|
|
|
12
12
|
import androidx.swiperefreshlayout.widget.SwipeRefreshLayout
|
|
13
13
|
import com.facebook.react.uimanager.PointerEvents
|
|
14
14
|
import com.facebook.react.uimanager.ReactPointerEventsView
|
|
15
|
+
import com.facebook.react.uimanager.TouchTargetHelper
|
|
15
16
|
import com.lodev09.truesheet.utils.isDescendantOf
|
|
16
17
|
|
|
17
18
|
interface TrueSheetCoordinatorLayoutDelegate {
|
|
@@ -55,6 +56,15 @@ class TrueSheetCoordinatorLayout(context: Context) :
|
|
|
55
56
|
private var streamHasGestureRoot = false
|
|
56
57
|
private var streamGestureClaimed = false
|
|
57
58
|
|
|
59
|
+
// Whether the sheet owns vertical drags for this stream: the touch target is inside
|
|
60
|
+
// the sheet but outside the pinned scrollable (e.g. a header overlaying it), with
|
|
61
|
+
// nothing vertically scrollable along its chain. Such targets consume the stream
|
|
62
|
+
// natively (no nested scroll), and BottomSheetBehavior won't intercept because the
|
|
63
|
+
// scrollable's bounds still contain the point (touchingScrollingChild) — intercept
|
|
64
|
+
// manually.
|
|
65
|
+
private var streamSheetDraggable = false
|
|
66
|
+
private var streamDraggableEditText = false
|
|
67
|
+
|
|
58
68
|
init {
|
|
59
69
|
layoutParams = LayoutParams(
|
|
60
70
|
LayoutParams.MATCH_PARENT,
|
|
@@ -107,35 +117,51 @@ class TrueSheetCoordinatorLayout(context: Context) :
|
|
|
107
117
|
|
|
108
118
|
override fun requestDisallowInterceptTouchEvent(disallowIntercept: Boolean) {
|
|
109
119
|
// RN's ReactEditText fires this(true) on ACTION_DOWN, killing sheet drag over an input.
|
|
110
|
-
// Swallow only that case —
|
|
111
|
-
// (
|
|
112
|
-
// (maps, sliders, scrollables) keep the standard disallow contract.
|
|
113
|
-
if (disallowIntercept &&
|
|
120
|
+
// Swallow only that case — nothing between the touched EditText and the sheet scrolls
|
|
121
|
+
// (an overflowing multiline EditText or an input inside a scrollable still scrolls).
|
|
122
|
+
// Other children (maps, sliders, scrollables) keep the standard disallow contract.
|
|
123
|
+
if (disallowIntercept && streamDraggableEditText) return
|
|
114
124
|
super.requestDisallowInterceptTouchEvent(disallowIntercept)
|
|
115
125
|
}
|
|
116
126
|
|
|
117
|
-
|
|
127
|
+
/**
|
|
128
|
+
* Resolves the stream's touch target (respecting zIndex and pointerEvents) and
|
|
129
|
+
* decides whether the sheet may drag from it — inside the sheet, outside the pinned
|
|
130
|
+
* scrollable, and nothing along the target's chain scrolls vertically.
|
|
131
|
+
*/
|
|
132
|
+
private fun updateStreamTargetFlags(ev: MotionEvent) {
|
|
133
|
+
streamSheetDraggable = false
|
|
134
|
+
streamDraggableEditText = false
|
|
118
135
|
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
136
|
+
val sheet = delegate?.findSheetView() ?: return
|
|
137
|
+
val target = TouchTargetHelper.findTargetPathAndCoordinatesForTouch(ev.x, ev.y, this, FloatArray(2))
|
|
138
|
+
.firstNotNullOfOrNull { it.getView() } ?: return
|
|
139
|
+
if (target !== sheet && !target.isDescendantOf(sheet)) return
|
|
140
|
+
|
|
141
|
+
val scrollView = delegate?.findScrollView()
|
|
142
|
+
if (scrollView != null && (target === scrollView || target.isDescendantOf(scrollView))) return
|
|
143
|
+
|
|
144
|
+
var view: View? = target
|
|
145
|
+
while (view != null && view !== this) {
|
|
146
|
+
if (view.canScrollVertically(1) || view.canScrollVertically(-1)) return
|
|
147
|
+
view = view.parent as? View
|
|
125
148
|
}
|
|
149
|
+
|
|
150
|
+
streamSheetDraggable = true
|
|
151
|
+
streamDraggableEditText = target is EditText
|
|
126
152
|
}
|
|
127
153
|
|
|
128
|
-
private fun
|
|
154
|
+
private fun findDescendantViewAt(view: View, rawX: Int, rawY: Int, predicate: (View) -> Boolean): View? {
|
|
129
155
|
val loc = IntArray(2)
|
|
130
156
|
view.getLocationOnScreen(loc)
|
|
131
|
-
if (rawX < loc[0] || rawX > loc[0] + view.width || rawY < loc[1] || rawY > loc[1] + view.height) return
|
|
132
|
-
if (predicate(view)) return
|
|
157
|
+
if (rawX < loc[0] || rawX > loc[0] + view.width || rawY < loc[1] || rawY > loc[1] + view.height) return null
|
|
158
|
+
if (predicate(view)) return view
|
|
133
159
|
if (view is ViewGroup) {
|
|
134
160
|
for (i in 0 until view.childCount) {
|
|
135
|
-
|
|
161
|
+
findDescendantViewAt(view.getChildAt(i), rawX, rawY, predicate)?.let { return it }
|
|
136
162
|
}
|
|
137
163
|
}
|
|
138
|
-
return
|
|
164
|
+
return null
|
|
139
165
|
}
|
|
140
166
|
|
|
141
167
|
/**
|
|
@@ -165,9 +191,10 @@ class TrueSheetCoordinatorLayout(context: Context) :
|
|
|
165
191
|
streamHorizontalLocked = false
|
|
166
192
|
streamDirectionDecided = false
|
|
167
193
|
streamGestureClaimed = false
|
|
168
|
-
streamHasGestureRoot =
|
|
194
|
+
streamHasGestureRoot = findDescendantViewAt(this, ev.rawX.toInt(), ev.rawY.toInt()) {
|
|
169
195
|
it.javaClass.name == GESTURE_HANDLER_ROOT_VIEW_CLASS
|
|
170
|
-
}
|
|
196
|
+
} != null
|
|
197
|
+
updateStreamTargetFlags(ev)
|
|
171
198
|
}
|
|
172
199
|
|
|
173
200
|
// Decide gesture direction on first significant movement of the stream.
|
|
@@ -213,7 +240,7 @@ class TrueSheetCoordinatorLayout(context: Context) :
|
|
|
213
240
|
scrollView.scrollY == 0 &&
|
|
214
241
|
!scrollView.canScrollVertically(1)
|
|
215
242
|
|
|
216
|
-
if (cannotScroll) {
|
|
243
|
+
if (cannotScroll || streamSheetDraggable) {
|
|
217
244
|
when (ev.action and MotionEvent.ACTION_MASK) {
|
|
218
245
|
MotionEvent.ACTION_DOWN -> {
|
|
219
246
|
dragging = false
|
|
@@ -156,6 +156,13 @@ 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);
|
|
@@ -166,6 +173,37 @@ const TrueSheetComponent = /*#__PURE__*/forwardRef((props, ref) => {
|
|
|
166
173
|
}), []);
|
|
167
174
|
const peekHeight = (header ? headerHeight : 0) + (footer ? footerHeight : 0) + peekContentHeight || DEFAULT_PEEK_HEIGHT;
|
|
168
175
|
|
|
176
|
+
// Below the last detent a vertical touch pan moves the sheet, not the
|
|
177
|
+
// content — `[data-vaul-scroll-locked]` disables vertical touch panning on
|
|
178
|
+
// the scroll container and everything inside it (see vaul/style.css).
|
|
179
|
+
const isScrollLocked = validDetents.length > 0 && activeSnapPoint !== validDetents[validDetents.length - 1];
|
|
180
|
+
|
|
181
|
+
// Vaul measures the auto-size wrapper's offsetHeight (always, post fork).
|
|
182
|
+
// Track it here so the form sheet can size its card to fit content,
|
|
183
|
+
// clamped between a minimum ratio of the viewport and a maximum derived
|
|
184
|
+
// from `detachedOffset` (the breathing room left at top + bottom of the
|
|
185
|
+
// floating card).
|
|
186
|
+
const [measuredContentHeight, setMeasuredContentHeight] = useState(0);
|
|
187
|
+
const effectiveMaxContentHeight = useMemo(() => {
|
|
188
|
+
if (maxContentHeight !== undefined) return maxContentHeight;
|
|
189
|
+
if (!isFormSheet) return undefined;
|
|
190
|
+
const min = windowHeight * DEFAULT_FORM_SHEET_HEIGHT_RATIO;
|
|
191
|
+
const max = Math.max(min, windowHeight - 2 * detachedOffset);
|
|
192
|
+
if (measuredContentHeight <= 0) return min;
|
|
193
|
+
return Math.max(min, Math.min(measuredContentHeight, max));
|
|
194
|
+
}, [maxContentHeight, isFormSheet, windowHeight, detachedOffset, measuredContentHeight]);
|
|
195
|
+
|
|
196
|
+
// Center the form sheet using the actual visible drawer height. Vaul
|
|
197
|
+
// auto-sizes to content (capped by `maxContentHeight`), so when content is
|
|
198
|
+
// shorter than `effectiveMaxContentHeight`'s min-clamped floor, using that
|
|
199
|
+
// for the offset would push a small sheet below the viewport center.
|
|
200
|
+
const effectiveDetachedOffset = useMemo(() => {
|
|
201
|
+
if (!isFormSheet) return detachedOffset;
|
|
202
|
+
const max = Math.max(0, windowHeight - 2 * detachedOffset);
|
|
203
|
+
const visibleHeight = measuredContentHeight > 0 ? Math.min(measuredContentHeight, max) : effectiveMaxContentHeight ?? 0;
|
|
204
|
+
return Math.max(0, (windowHeight - visibleHeight) / 2);
|
|
205
|
+
}, [isFormSheet, windowHeight, detachedOffset, measuredContentHeight, effectiveMaxContentHeight]);
|
|
206
|
+
|
|
169
207
|
// Present/dismiss events. The sheet settles via a CSS `transform` transition
|
|
170
208
|
// on either the drawer (snap-points on autopresent) or the wrapper (whole-
|
|
171
209
|
// card slide on reopen/dismiss). `Animation.finished` from the Web Animations
|
|
@@ -195,53 +233,106 @@ const TrueSheetComponent = /*#__PURE__*/forwardRef((props, ref) => {
|
|
|
195
233
|
onPositionChangeRef.current = onPositionChange;
|
|
196
234
|
activeSnapPointRef.current = activeSnapPoint;
|
|
197
235
|
});
|
|
198
|
-
|
|
236
|
+
|
|
237
|
+
// Detent geometry — target top-Y (`positions`) and height ratio (`values`)
|
|
238
|
+
// per detent. Mirrors vaul's snap-offset math exactly (same effective
|
|
239
|
+
// height, ceiling, and 'auto'/'peek' resolution) so computed targets match
|
|
240
|
+
// where the drawer actually settles. Numeric detent d → top-Y =
|
|
241
|
+
// (1 - d) * effectiveH. 'auto' and 'peek' are measured live from the DOM
|
|
242
|
+
// (see below). Inputs live in a render-synced ref so the compute callbacks
|
|
243
|
+
// stay referentially stable for the event effects.
|
|
244
|
+
const geometryInputsRef = useRef({
|
|
245
|
+
effectiveDetached,
|
|
246
|
+
effectiveDetachedOffset,
|
|
247
|
+
effectiveMaxContentHeight,
|
|
248
|
+
peekHeight,
|
|
249
|
+
peekContentHeight,
|
|
250
|
+
measuredContentHeight
|
|
251
|
+
});
|
|
252
|
+
geometryInputsRef.current = {
|
|
253
|
+
effectiveDetached,
|
|
254
|
+
effectiveDetachedOffset,
|
|
255
|
+
effectiveMaxContentHeight,
|
|
256
|
+
peekHeight,
|
|
257
|
+
peekContentHeight,
|
|
258
|
+
measuredContentHeight
|
|
259
|
+
};
|
|
260
|
+
const computeDetentGeometry = useCallback(() => {
|
|
261
|
+
const inputs = geometryInputsRef.current;
|
|
262
|
+
const windowH = window.innerHeight;
|
|
263
|
+
const effectiveH = inputs.effectiveDetached ? windowH - inputs.effectiveDetachedOffset : windowH;
|
|
264
|
+
// Matches vaul's height ceiling: min(effectiveH, maxContentHeight).
|
|
265
|
+
const ceiling = inputs.effectiveMaxContentHeight !== undefined ? Math.min(effectiveH, inputs.effectiveMaxContentHeight) : effectiveH;
|
|
266
|
+
// 'auto' resolves to the auto-size wrapper's height. Read it live — the
|
|
267
|
+
// `measuredContentHeight` state lags mount by a frame (vaul's initial
|
|
268
|
+
// ref-callback measure runs while the portal subtree is still detached,
|
|
269
|
+
// so it reads 0 until the ResizeObserver fires). Falls back to the state
|
|
270
|
+
// value, then to vaul's pre-measure fallback (effectiveHeight / 2).
|
|
271
|
+
const autoWrapper = drawerContentRef.current?.querySelector('[data-vaul-auto-size-wrapper]');
|
|
272
|
+
const measuredHeight = autoWrapper?.offsetHeight || inputs.measuredContentHeight;
|
|
273
|
+
const autoHeight = Math.min(measuredHeight > 0 ? measuredHeight : effectiveH / 2, ceiling);
|
|
274
|
+
|
|
275
|
+
// 'peek' is measured live from the DOM (offsetHeight is layout-based, so
|
|
276
|
+
// in-flight transforms don't skew it): the state-driven `peekHeight` prop
|
|
277
|
+
// comes from RN-web onLayout, which dispatches a frame after mount — too
|
|
278
|
+
// late for the first willPresent on autopresent. Ref callbacks can't
|
|
279
|
+
// measure either: they fire while the portal subtree is still detached.
|
|
280
|
+
// Geometry only runs while the drawer is mounted, so the elements are
|
|
281
|
+
// measurable here; fall back to the state value when they're absent.
|
|
282
|
+
const headerEl = headerElRef.current;
|
|
283
|
+
const footerEl = footerElRef.current;
|
|
284
|
+
const livePeekHeight = headerEl || footerEl ? (headerEl?.offsetHeight ?? 0) + (footerEl?.offsetHeight ?? 0) + inputs.peekContentHeight || DEFAULT_PEEK_HEIGHT : inputs.peekHeight;
|
|
285
|
+
const positions = [];
|
|
286
|
+
const values = [];
|
|
287
|
+
for (const d of validDetentsRef.current) {
|
|
288
|
+
const h = typeof d === 'number' ? Math.min(d * effectiveH, ceiling) : d === 'peek' ? Math.min(livePeekHeight, ceiling) : autoHeight;
|
|
289
|
+
positions.push(effectiveH - h);
|
|
290
|
+
values.push(effectiveH > 0 ? h / effectiveH : 0);
|
|
291
|
+
}
|
|
292
|
+
return {
|
|
293
|
+
windowH,
|
|
294
|
+
positions,
|
|
295
|
+
values
|
|
296
|
+
};
|
|
297
|
+
}, []);
|
|
298
|
+
|
|
299
|
+
// Detent info for lifecycle events. Position/detent come from the active
|
|
300
|
+
// detent's target geometry — not the live DOM rect — so willPresent (drawer
|
|
301
|
+
// not mounted yet), detentChange (animation just started), and didPresent
|
|
302
|
+
// all emit the settled detent position, matching iOS/Android. Drag events
|
|
303
|
+
// pass `live: true` to report the in-flight rect position instead, also
|
|
304
|
+
// matching native.
|
|
305
|
+
const computeDetentInfo = useCallback((live = false) => {
|
|
199
306
|
const snap = activeSnapPointRef.current;
|
|
200
307
|
const index = snap != null ? validDetentsRef.current.indexOf(snap) : -1;
|
|
201
|
-
const
|
|
202
|
-
|
|
308
|
+
const {
|
|
309
|
+
windowH,
|
|
310
|
+
positions,
|
|
311
|
+
values
|
|
312
|
+
} = computeDetentGeometry();
|
|
313
|
+
const target = index >= 0 ? positions[index] : undefined;
|
|
314
|
+
const position = live ? drawerContentRef.current?.getBoundingClientRect().top ?? target ?? windowH : target ?? windowH;
|
|
203
315
|
return {
|
|
204
316
|
index,
|
|
205
317
|
position,
|
|
206
|
-
detent
|
|
318
|
+
detent: index >= 0 ? values[index] ?? 0 : 0
|
|
207
319
|
};
|
|
208
|
-
}, []);
|
|
320
|
+
}, [computeDetentGeometry]);
|
|
209
321
|
|
|
210
322
|
// Mirror Android: interpolate fractional index and detent from the drawer's
|
|
211
323
|
// top-Y so continuous position updates (drag, animation) carry smooth values
|
|
212
|
-
// between detent boundaries.
|
|
213
|
-
// 'auto' resolves to the [data-vaul-auto-size-wrapper] element's measured
|
|
214
|
-
// offsetHeight — same signal vaul uses to compute its snap offset.
|
|
324
|
+
// between detent boundaries.
|
|
215
325
|
const interpolateFromPosition = useCallback(position => {
|
|
216
|
-
const
|
|
217
|
-
|
|
326
|
+
const {
|
|
327
|
+
windowH,
|
|
328
|
+
positions,
|
|
329
|
+
values
|
|
330
|
+
} = computeDetentGeometry();
|
|
331
|
+
const count = positions.length;
|
|
218
332
|
if (count === 0) return {
|
|
219
333
|
index: -1,
|
|
220
334
|
detent: 0
|
|
221
335
|
};
|
|
222
|
-
const windowH = window.innerHeight;
|
|
223
|
-
const effectiveH = effectiveDetached ? windowH - detachedOffset : windowH;
|
|
224
|
-
// Matches vaul's height ceiling: min(effectiveH, maxContentHeight).
|
|
225
|
-
const ceiling = maxContentHeight !== undefined ? Math.min(effectiveH, maxContentHeight) : effectiveH;
|
|
226
|
-
const autoWrapper = drawerContentRef.current?.querySelector('[data-vaul-auto-size-wrapper]');
|
|
227
|
-
const autoHeight = Math.min(autoWrapper?.offsetHeight ?? ceiling / 2, ceiling);
|
|
228
|
-
const positions = [];
|
|
229
|
-
const values = [];
|
|
230
|
-
for (let i = 0; i < count; i++) {
|
|
231
|
-
const d = snaps[i];
|
|
232
|
-
if (typeof d === 'number') {
|
|
233
|
-
const h = Math.min(d * effectiveH, ceiling);
|
|
234
|
-
positions.push(effectiveH - h);
|
|
235
|
-
values.push(effectiveH > 0 ? h / effectiveH : 0);
|
|
236
|
-
} else if (d === 'peek') {
|
|
237
|
-
const h = Math.min(peekHeight, ceiling);
|
|
238
|
-
positions.push(effectiveH - h);
|
|
239
|
-
values.push(effectiveH > 0 ? h / effectiveH : 0);
|
|
240
|
-
} else {
|
|
241
|
-
positions.push(effectiveH - autoHeight);
|
|
242
|
-
values.push(effectiveH > 0 ? autoHeight / effectiveH : 0);
|
|
243
|
-
}
|
|
244
|
-
}
|
|
245
336
|
|
|
246
337
|
// Absorb subpixel drift from getBoundingClientRect so at-rest positions
|
|
247
338
|
// don't sneak into the below-first branch and emit near-zero negatives
|
|
@@ -289,7 +380,7 @@ const TrueSheetComponent = /*#__PURE__*/forwardRef((props, ref) => {
|
|
|
289
380
|
index: count - 1,
|
|
290
381
|
detent: values[count - 1]
|
|
291
382
|
};
|
|
292
|
-
}, [
|
|
383
|
+
}, [computeDetentGeometry]);
|
|
293
384
|
const handlePositionChange = useCallback(position => {
|
|
294
385
|
const {
|
|
295
386
|
index,
|
|
@@ -326,29 +417,18 @@ const TrueSheetComponent = /*#__PURE__*/forwardRef((props, ref) => {
|
|
|
326
417
|
useEffect(() => {
|
|
327
418
|
const wasOpen = wasOpenRef.current;
|
|
328
419
|
wasOpenRef.current = isOpen;
|
|
329
|
-
if (
|
|
330
|
-
const present =
|
|
331
|
-
if (present) {
|
|
332
|
-
// Pair willFocus with willPresent on initial present — mirrors native
|
|
333
|
-
// iOS where viewWillAppear dispatches both. The descendant-stack focus
|
|
334
|
-
// effect handles subsequent gained/lost transitions.
|
|
335
|
-
onWillPresentRef.current?.({
|
|
336
|
-
nativeEvent: computeDetentInfo()
|
|
337
|
-
});
|
|
338
|
-
onWillFocusRef.current?.({
|
|
339
|
-
nativeEvent: null
|
|
340
|
-
});
|
|
341
|
-
} else if (wasOpen && !isOpen) {
|
|
420
|
+
if (isOpen === wasOpen) return undefined;
|
|
421
|
+
const present = isOpen;
|
|
422
|
+
if (!present) {
|
|
342
423
|
// Pair willBlur with willDismiss on dismiss — mirrors native iOS
|
|
343
|
-
// emitWillDismissEvents (blur fires before dismiss).
|
|
424
|
+
// emitWillDismissEvents (blur fires before dismiss). willPresent is
|
|
425
|
+
// deferred to `start()` below (needs the mounted drawer's geometry).
|
|
344
426
|
onWillBlurRef.current?.({
|
|
345
427
|
nativeEvent: null
|
|
346
428
|
});
|
|
347
429
|
onWillDismissRef.current?.({
|
|
348
430
|
nativeEvent: null
|
|
349
431
|
});
|
|
350
|
-
} else {
|
|
351
|
-
return undefined;
|
|
352
432
|
}
|
|
353
433
|
const fireDone = () => {
|
|
354
434
|
if (present) {
|
|
@@ -372,12 +452,29 @@ const TrueSheetComponent = /*#__PURE__*/forwardRef((props, ref) => {
|
|
|
372
452
|
const start = () => {
|
|
373
453
|
if (canceled) return;
|
|
374
454
|
const drawer = drawerContentRef.current;
|
|
375
|
-
if (!drawer) {
|
|
455
|
+
if (!drawer || !drawer.isConnected) {
|
|
376
456
|
// Drawer hasn't mounted yet (Radix Presence defers the portal mount
|
|
377
|
-
// past the first effect pass)
|
|
457
|
+
// past the first effect pass), or its subtree isn't attached to the
|
|
458
|
+
// document yet (autopresent commits the portal before the app tree
|
|
459
|
+
// attaches, so nothing is measurable). Poll until it's live.
|
|
378
460
|
rafId = window.requestAnimationFrame(start);
|
|
379
461
|
return;
|
|
380
462
|
}
|
|
463
|
+
if (present) {
|
|
464
|
+
// Emit will-events only once the drawer is mounted and attached —
|
|
465
|
+
// detent geometry ('auto' height, 'peek', form-sheet sizing) is
|
|
466
|
+
// measurable from the DOM here; a synchronous emission would use the
|
|
467
|
+
// pre-measure fallbacks on first present. Pairing willFocus with
|
|
468
|
+
// willPresent mirrors native iOS where viewWillAppear dispatches
|
|
469
|
+
// both; the descendant-stack focus effect handles subsequent
|
|
470
|
+
// transitions.
|
|
471
|
+
onWillPresentRef.current?.({
|
|
472
|
+
nativeEvent: computeDetentInfo()
|
|
473
|
+
});
|
|
474
|
+
onWillFocusRef.current?.({
|
|
475
|
+
nativeEvent: null
|
|
476
|
+
});
|
|
477
|
+
}
|
|
381
478
|
const wrapper = drawer.closest('[data-vaul-detached-wrapper]') ?? null;
|
|
382
479
|
const targets = wrapper ? [drawer, wrapper] : [drawer];
|
|
383
480
|
const waitForSettle = () => {
|
|
@@ -434,18 +531,18 @@ const TrueSheetComponent = /*#__PURE__*/forwardRef((props, ref) => {
|
|
|
434
531
|
if (!isDraggingRef.current) {
|
|
435
532
|
isDraggingRef.current = true;
|
|
436
533
|
onDragBeginRef.current?.({
|
|
437
|
-
nativeEvent: computeDetentInfo()
|
|
534
|
+
nativeEvent: computeDetentInfo(true)
|
|
438
535
|
});
|
|
439
536
|
}
|
|
440
537
|
onDragChangeRef.current?.({
|
|
441
|
-
nativeEvent: computeDetentInfo()
|
|
538
|
+
nativeEvent: computeDetentInfo(true)
|
|
442
539
|
});
|
|
443
540
|
}, [computeDetentInfo]);
|
|
444
541
|
const handleRelease = useCallback(() => {
|
|
445
542
|
if (!isDraggingRef.current) return;
|
|
446
543
|
isDraggingRef.current = false;
|
|
447
544
|
onDragEndRef.current?.({
|
|
448
|
-
nativeEvent: computeDetentInfo()
|
|
545
|
+
nativeEvent: computeDetentInfo(true)
|
|
449
546
|
});
|
|
450
547
|
}, [computeDetentInfo]);
|
|
451
548
|
const {
|
|
@@ -683,35 +780,9 @@ const TrueSheetComponent = /*#__PURE__*/forwardRef((props, ref) => {
|
|
|
683
780
|
// Form-sheet style (presentation='form'): centered floating card with a
|
|
684
781
|
// default width and a height fit to content. We reuse the existing detached
|
|
685
782
|
// mechanic so drag/snap math stays correct — the wrapper is bottom-attached
|
|
686
|
-
// with a computed offset
|
|
687
|
-
//
|
|
688
|
-
// DEFAULT_FORM_SHEET_WIDTH.
|
|
689
|
-
|
|
690
|
-
// Vaul measures the auto-size wrapper's offsetHeight (always, post fork).
|
|
691
|
-
// Track it here so the form sheet can size its card to fit content,
|
|
692
|
-
// clamped between a minimum ratio of the viewport and a maximum derived
|
|
693
|
-
// from `detachedOffset` (the breathing room left at top + bottom of the
|
|
694
|
-
// floating card).
|
|
695
|
-
const [measuredContentHeight, setMeasuredContentHeight] = useState(0);
|
|
696
|
-
const effectiveMaxContentHeight = useMemo(() => {
|
|
697
|
-
if (maxContentHeight !== undefined) return maxContentHeight;
|
|
698
|
-
if (!isFormSheet) return undefined;
|
|
699
|
-
const min = windowHeight * DEFAULT_FORM_SHEET_HEIGHT_RATIO;
|
|
700
|
-
const max = Math.max(min, windowHeight - 2 * detachedOffset);
|
|
701
|
-
if (measuredContentHeight <= 0) return min;
|
|
702
|
-
return Math.max(min, Math.min(measuredContentHeight, max));
|
|
703
|
-
}, [maxContentHeight, isFormSheet, windowHeight, detachedOffset, measuredContentHeight]);
|
|
704
|
-
|
|
705
|
-
// Center the form sheet using the actual visible drawer height. Vaul
|
|
706
|
-
// auto-sizes to content (capped by `maxContentHeight`), so when content is
|
|
707
|
-
// shorter than `effectiveMaxContentHeight`'s min-clamped floor, using that
|
|
708
|
-
// for the offset would push a small sheet below the viewport center.
|
|
709
|
-
const effectiveDetachedOffset = useMemo(() => {
|
|
710
|
-
if (!isFormSheet) return detachedOffset;
|
|
711
|
-
const max = Math.max(0, windowHeight - 2 * detachedOffset);
|
|
712
|
-
const visibleHeight = measuredContentHeight > 0 ? Math.min(measuredContentHeight, max) : effectiveMaxContentHeight ?? 0;
|
|
713
|
-
return Math.max(0, (windowHeight - visibleHeight) / 2);
|
|
714
|
-
}, [isFormSheet, windowHeight, detachedOffset, measuredContentHeight, effectiveMaxContentHeight]);
|
|
783
|
+
// with a computed offset (`effectiveDetachedOffset`, declared above) that
|
|
784
|
+
// centers it vertically. `presentation` is absolute: when 'form',
|
|
785
|
+
// `maxContentWidth` is ignored and the card uses DEFAULT_FORM_SHEET_WIDTH.
|
|
715
786
|
|
|
716
787
|
// The wrapper holds all horizontal sizing/anchoring so its rounded-bottom
|
|
717
788
|
// clip (when detached) aligns with the drawer's horizontal bounds on
|
|
@@ -804,6 +875,7 @@ const TrueSheetComponent = /*#__PURE__*/forwardRef((props, ref) => {
|
|
|
804
875
|
detachedSiblings: footer ? /*#__PURE__*/_jsx("div", {
|
|
805
876
|
style: footerFloatStyle,
|
|
806
877
|
children: /*#__PURE__*/_jsx(View, {
|
|
878
|
+
ref: footerElRef,
|
|
807
879
|
style: footerStyle,
|
|
808
880
|
onLayout: handleFooterLayout,
|
|
809
881
|
children: /*#__PURE__*/isValidElement(footer) ? footer : /*#__PURE__*/createElement(footer)
|
|
@@ -824,11 +896,13 @@ const TrueSheetComponent = /*#__PURE__*/forwardRef((props, ref) => {
|
|
|
824
896
|
_jsxs("div", {
|
|
825
897
|
style: scrollableLayoutStyle,
|
|
826
898
|
children: [header && /*#__PURE__*/_jsx(View, {
|
|
899
|
+
ref: headerElRef,
|
|
827
900
|
style: headerStyle,
|
|
828
901
|
onLayout: handleHeaderLayout,
|
|
829
902
|
children: /*#__PURE__*/isValidElement(header) ? header : /*#__PURE__*/createElement(header)
|
|
830
903
|
}), /*#__PURE__*/_jsx("div", {
|
|
831
904
|
style: scrollableContainerStyle,
|
|
905
|
+
"data-vaul-scroll-locked": isScrollLocked ? '' : undefined,
|
|
832
906
|
children: /*#__PURE__*/_jsx(View, {
|
|
833
907
|
ref: contentRef,
|
|
834
908
|
style: style,
|
|
@@ -837,6 +911,7 @@ const TrueSheetComponent = /*#__PURE__*/forwardRef((props, ref) => {
|
|
|
837
911
|
})]
|
|
838
912
|
}) : /*#__PURE__*/_jsxs(_Fragment, {
|
|
839
913
|
children: [header && /*#__PURE__*/_jsx(View, {
|
|
914
|
+
ref: headerElRef,
|
|
840
915
|
style: headerStyle,
|
|
841
916
|
onLayout: handleHeaderLayout,
|
|
842
917
|
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","onWillPresentRef","onDidPresentRef","onWillDismissRef","onDidDismissRef","onDetentChangeRef","onDragBeginRef","onDragChangeRef","onDragEndRef","onPositionChangeRef","activeSnapPointRef","computeDetentInfo","snap","indexOf","position","getBoundingClientRect","top","interpolateFromPosition","snaps","count","windowH","window","innerHeight","effectiveH","ceiling","autoWrapper","querySelector","autoHeight","offsetHeight","positions","values","i","h","push","epsilon","firstPos","lastPos","indexRaw","detentRaw","max","indexProgress","detentProgress","clamped","pos","nextPos","range","progress","clampedProgress","handlePositionChange","realtime","onMountRef","wasOpenRef","wasOpen","onWillFocusRef","onWillBlurRef","fireDone","onDidFocusRef","onDidBlurRef","canceled","rafId","start","drawer","requestAnimationFrame","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","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","measuredContentHeight","setMeasuredContentHeight","effectiveMaxContentHeight","effectiveDetachedOffset","visibleHeight","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","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","headerElRef","footerElRef","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","autoWrapper","querySelector","measuredHeight","offsetHeight","autoHeight","headerEl","footerEl","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","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":[]}
|