@lodev09/react-native-true-sheet 3.11.0-beta.1 → 3.11.0-beta.11
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/LICENSE +1 -1
- package/android/src/main/java/com/lodev09/truesheet/TrueSheetViewController.kt +19 -2
- package/android/src/main/java/com/lodev09/truesheet/TrueSheetViewManager.kt +3 -3
- package/ios/TrueSheetFooterView.mm +10 -1
- package/ios/TrueSheetView.mm +1 -1
- package/ios/TrueSheetViewController.h +1 -1
- package/ios/TrueSheetViewController.mm +10 -4
- package/lib/module/TrueSheet.js +2 -2
- package/lib/module/TrueSheet.js.map +1 -1
- package/lib/module/TrueSheet.web.js +222 -50
- package/lib/module/TrueSheet.web.js.map +1 -1
- package/lib/module/TrueSheetProvider.web.js +5 -2
- package/lib/module/TrueSheetProvider.web.js.map +1 -1
- package/lib/module/fabric/TrueSheetViewNativeComponent.ts +1 -1
- package/lib/module/navigation/TrueSheetRouter.js +1 -1
- package/lib/module/navigation/TrueSheetRouter.js.map +1 -1
- package/lib/module/navigation/createTrueSheetNavigator.js +1 -1
- package/lib/module/navigation/createTrueSheetNavigator.js.map +1 -1
- package/lib/module/navigation/useTrueSheetNavigation.js +1 -1
- package/lib/module/navigation/useTrueSheetNavigation.js.map +1 -1
- package/lib/module/web/constants.js +1 -1
- package/lib/module/web/constants.js.map +1 -1
- package/lib/module/web/vaul/browser.js +1 -1
- package/lib/module/web/vaul/browser.js.map +1 -1
- package/lib/module/web/vaul/index.js +88 -133
- package/lib/module/web/vaul/index.js.map +1 -1
- package/lib/module/web/vaul/style.css +1 -1
- package/lib/module/web/vaul/style.css.d.js +2 -0
- package/lib/module/web/vaul/style.css.d.js.map +1 -0
- package/lib/typescript/src/TrueSheet.types.d.ts +6 -4
- package/lib/typescript/src/TrueSheet.types.d.ts.map +1 -1
- package/lib/typescript/src/TrueSheet.web.d.ts.map +1 -1
- package/lib/typescript/src/TrueSheetProvider.web.d.ts +2 -1
- package/lib/typescript/src/TrueSheetProvider.web.d.ts.map +1 -1
- package/lib/typescript/src/fabric/TrueSheetViewNativeComponent.d.ts +1 -1
- package/lib/typescript/src/fabric/TrueSheetViewNativeComponent.d.ts.map +1 -1
- package/lib/typescript/src/navigation/TrueSheetRouter.d.ts +1 -1
- package/lib/typescript/src/navigation/TrueSheetRouter.d.ts.map +1 -1
- package/lib/typescript/src/navigation/TrueSheetView.d.ts +1 -1
- package/lib/typescript/src/navigation/TrueSheetView.d.ts.map +1 -1
- package/lib/typescript/src/navigation/createTrueSheetNavigator.d.ts +1 -1
- package/lib/typescript/src/navigation/createTrueSheetNavigator.d.ts.map +1 -1
- package/lib/typescript/src/navigation/screen/types.d.ts +1 -1
- package/lib/typescript/src/navigation/screen/types.d.ts.map +1 -1
- package/lib/typescript/src/navigation/screen/useSheetScreenState.d.ts +1 -1
- package/lib/typescript/src/navigation/screen/useSheetScreenState.d.ts.map +1 -1
- package/lib/typescript/src/navigation/types.d.ts +2 -2
- package/lib/typescript/src/navigation/types.d.ts.map +1 -1
- package/lib/typescript/src/navigation/useTrueSheetNavigation.d.ts +1 -1
- package/lib/typescript/src/navigation/useTrueSheetNavigation.d.ts.map +1 -1
- package/lib/typescript/src/web/constants.d.ts +1 -1
- package/lib/typescript/src/web/constants.d.ts.map +1 -1
- package/lib/typescript/src/web/vaul/index.d.ts +7 -1
- package/lib/typescript/src/web/vaul/index.d.ts.map +1 -1
- package/package.json +26 -19
- package/src/TrueSheet.tsx +2 -2
- package/src/TrueSheet.types.ts +6 -4
- package/src/TrueSheet.web.tsx +220 -52
- package/src/TrueSheetProvider.web.tsx +11 -2
- package/src/fabric/TrueSheetViewNativeComponent.ts +1 -1
- package/src/navigation/TrueSheetRouter.ts +1 -1
- package/src/navigation/TrueSheetView.tsx +1 -1
- package/src/navigation/createTrueSheetNavigator.tsx +1 -1
- package/src/navigation/screen/types.ts +1 -1
- package/src/navigation/screen/useSheetScreenState.ts +1 -1
- package/src/navigation/types.ts +2 -2
- package/src/navigation/useTrueSheetNavigation.ts +1 -1
- package/src/web/constants.ts +1 -1
- package/src/web/vaul/index.tsx +118 -146
- package/src/web/vaul/style.css +1 -1
- package/src/web/vaul/style.css.d.ts +1 -0
|
@@ -7,7 +7,7 @@ import { Drawer } from "./web/vaul/index.js";
|
|
|
7
7
|
import { TRANSITIONS } from "./web/vaul/constants.js";
|
|
8
8
|
import { usePortalContainer, useRegisterSheet, useSheetStack } from "./TrueSheetProvider.web.js";
|
|
9
9
|
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";
|
|
10
|
-
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
10
|
+
import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
|
|
11
11
|
const TrueSheetComponent = /*#__PURE__*/forwardRef((props, ref) => {
|
|
12
12
|
const {
|
|
13
13
|
children,
|
|
@@ -32,8 +32,7 @@ const TrueSheetComponent = /*#__PURE__*/forwardRef((props, ref) => {
|
|
|
32
32
|
footer,
|
|
33
33
|
footerStyle,
|
|
34
34
|
scrollable = false,
|
|
35
|
-
|
|
36
|
-
pageSizing = true,
|
|
35
|
+
presentation = 'page',
|
|
37
36
|
detached = false,
|
|
38
37
|
detachedOffset = DEFAULT_DETACHED_OFFSET,
|
|
39
38
|
elevation = 4,
|
|
@@ -67,10 +66,11 @@ const TrueSheetComponent = /*#__PURE__*/forwardRef((props, ref) => {
|
|
|
67
66
|
height: windowHeight
|
|
68
67
|
} = useWindowDimensions();
|
|
69
68
|
const isLandscapeOrTablet = windowWidth >= 600 || windowWidth > windowHeight;
|
|
69
|
+
const isFormSheet = isLandscapeOrTablet && presentation === 'form';
|
|
70
70
|
|
|
71
|
-
//
|
|
71
|
+
// presentation='form' implies a floating/detached sheet on web — mirrors iOS
|
|
72
72
|
// form-sheet semantics where the sheet is never edge-attached.
|
|
73
|
-
const effectiveDetached =
|
|
73
|
+
const effectiveDetached = presentation === 'form' || detached;
|
|
74
74
|
const colorScheme = useColorScheme();
|
|
75
75
|
const backgroundColor = backgroundColorProp ?? (colorScheme === 'dark' ? COLOR_SURFACE_CONTAINER_LOW_DARK : COLOR_SURFACE_CONTAINER_LOW_LIGHT);
|
|
76
76
|
const shouldAutoPresent = initialDetentIndex >= 0 && initialDetentIndex < validDetents.length;
|
|
@@ -100,6 +100,17 @@ const TrueSheetComponent = /*#__PURE__*/forwardRef((props, ref) => {
|
|
|
100
100
|
// in another screen's tree when navigating) should not close the drawer.
|
|
101
101
|
if (portalContainer && !portalContainer.contains(target)) {
|
|
102
102
|
e.preventDefault();
|
|
103
|
+
return;
|
|
104
|
+
}
|
|
105
|
+
// The footer is rendered via vaul's `detachedSiblings` as a sibling of
|
|
106
|
+
// Drawer.Content inside [data-vaul-detached-wrapper], so Radix treats
|
|
107
|
+
// clicks on it as "outside" the content. Don't dismiss for clicks that
|
|
108
|
+
// landed inside the wrapper.
|
|
109
|
+
if (target instanceof Element) {
|
|
110
|
+
const wrapper = drawerContentRef.current?.closest('[data-vaul-detached-wrapper]');
|
|
111
|
+
if (wrapper && wrapper.contains(target)) {
|
|
112
|
+
e.preventDefault();
|
|
113
|
+
}
|
|
103
114
|
}
|
|
104
115
|
};
|
|
105
116
|
const dismissAboveRef = useRef(async () => {});
|
|
@@ -290,10 +301,21 @@ const TrueSheetComponent = /*#__PURE__*/forwardRef((props, ref) => {
|
|
|
290
301
|
if (!isOpen && !wasOpen) return undefined;
|
|
291
302
|
const present = !wasOpen && isOpen;
|
|
292
303
|
if (present) {
|
|
304
|
+
// Pair willFocus with willPresent on initial present — mirrors native
|
|
305
|
+
// iOS where viewWillAppear dispatches both. The descendant-stack focus
|
|
306
|
+
// effect handles subsequent gained/lost transitions.
|
|
293
307
|
onWillPresentRef.current?.({
|
|
294
308
|
nativeEvent: computeDetentInfo()
|
|
295
309
|
});
|
|
310
|
+
onWillFocusRef.current?.({
|
|
311
|
+
nativeEvent: null
|
|
312
|
+
});
|
|
296
313
|
} else if (wasOpen && !isOpen) {
|
|
314
|
+
// Pair willBlur with willDismiss on dismiss — mirrors native iOS
|
|
315
|
+
// emitWillDismissEvents (blur fires before dismiss).
|
|
316
|
+
onWillBlurRef.current?.({
|
|
317
|
+
nativeEvent: null
|
|
318
|
+
});
|
|
297
319
|
onWillDismissRef.current?.({
|
|
298
320
|
nativeEvent: null
|
|
299
321
|
});
|
|
@@ -305,7 +327,13 @@ const TrueSheetComponent = /*#__PURE__*/forwardRef((props, ref) => {
|
|
|
305
327
|
onDidPresentRef.current?.({
|
|
306
328
|
nativeEvent: computeDetentInfo()
|
|
307
329
|
});
|
|
330
|
+
onDidFocusRef.current?.({
|
|
331
|
+
nativeEvent: null
|
|
332
|
+
});
|
|
308
333
|
} else {
|
|
334
|
+
onDidBlurRef.current?.({
|
|
335
|
+
nativeEvent: null
|
|
336
|
+
});
|
|
309
337
|
onDidDismissRef.current?.({
|
|
310
338
|
nativeEvent: null
|
|
311
339
|
});
|
|
@@ -396,7 +424,7 @@ const TrueSheetComponent = /*#__PURE__*/forwardRef((props, ref) => {
|
|
|
396
424
|
isNested,
|
|
397
425
|
dismissAbove,
|
|
398
426
|
descendants
|
|
399
|
-
} = useSheetStack(methodsRef, drawerContentRef, isOpen);
|
|
427
|
+
} = useSheetStack(methodsRef, drawerContentRef, isOpen, isFormSheet);
|
|
400
428
|
dismissAboveRef.current = dismissAbove;
|
|
401
429
|
|
|
402
430
|
// Mirror Android: translate this sheet down to match the deepest descendant's
|
|
@@ -405,24 +433,94 @@ const TrueSheetComponent = /*#__PURE__*/forwardRef((props, ref) => {
|
|
|
405
433
|
useEffect(() => {
|
|
406
434
|
const parent = drawerContentRef.current;
|
|
407
435
|
if (!parent) return;
|
|
436
|
+
// Skip while dismissing: this sheet's stack pop changes `descendants`,
|
|
437
|
+
// which would re-fire the effect and write `wrapper.style.transition =
|
|
438
|
+
// 'clip-path …'`, clobbering vaul's just-written `'transform …'` for the
|
|
439
|
+
// dismiss animation. Vaul fully owns this sheet's transitions on the way
|
|
440
|
+
// out — nothing to align with anymore.
|
|
441
|
+
if (!isOpen) return;
|
|
442
|
+
const parentWrapper = parent.closest('[data-vaul-detached-wrapper]');
|
|
408
443
|
const transition = `transform ${TRANSITIONS.DURATION}s cubic-bezier(${TRANSITIONS.EASE.join(',')})`;
|
|
444
|
+
const wrapperTransition = `clip-path ${TRANSITIONS.DURATION}s cubic-bezier(${TRANSITIONS.EASE.join(',')})`;
|
|
445
|
+
const CLIP_NONE = 'inset(0px round 0px)';
|
|
446
|
+
|
|
447
|
+
// Animate clip-path on the wrapper. Dedupes via DOM read so repeat ticks
|
|
448
|
+
// (mutation observer) skip identical writes. Seeds CLIP_NONE before the
|
|
449
|
+
// first inset() so the browser interpolates between two inset() shapes —
|
|
450
|
+
// `none → inset()` interpolates inconsistently.
|
|
451
|
+
const setClip = next => {
|
|
452
|
+
if (!parentWrapper) return;
|
|
453
|
+
const current = parentWrapper.style.clipPath;
|
|
454
|
+
if (current === next) return;
|
|
455
|
+
if (next === CLIP_NONE && !current) return;
|
|
456
|
+
if (!current) {
|
|
457
|
+
parentWrapper.style.transition = '';
|
|
458
|
+
parentWrapper.style.clipPath = CLIP_NONE;
|
|
459
|
+
// eslint-disable-next-line no-void
|
|
460
|
+
void parentWrapper.offsetHeight;
|
|
461
|
+
}
|
|
462
|
+
parentWrapper.style.transition = wrapperTransition;
|
|
463
|
+
parentWrapper.style.clipPath = next;
|
|
464
|
+
};
|
|
409
465
|
if (descendants.length === 0) {
|
|
410
466
|
parent.style.transition = transition;
|
|
411
467
|
parent.style.transform = '';
|
|
468
|
+
setClip(CLIP_NONE);
|
|
412
469
|
return;
|
|
413
470
|
}
|
|
471
|
+
|
|
472
|
+
// Track only the immediate child's snap point. Walking deeper descendants
|
|
473
|
+
// would push this sheet further when a grandchild opens, even when our
|
|
474
|
+
// own child didn't move (e.g., child skipped its cascade for a page
|
|
475
|
+
// grandchild) — leaving a visible gap between this sheet and its child.
|
|
414
476
|
const computeTargetY = () => {
|
|
415
477
|
const parentSnap = parseFloat(parent.style.getPropertyValue('--snap-point-height')) || 0;
|
|
416
|
-
|
|
417
|
-
|
|
418
|
-
|
|
419
|
-
|
|
420
|
-
|
|
421
|
-
|
|
478
|
+
const node = descendants[0]?.nodeRef.current;
|
|
479
|
+
if (!node) return parentSnap;
|
|
480
|
+
const childSnap = parseFloat(node.style.getPropertyValue('--snap-point-height')) || 0;
|
|
481
|
+
return Math.max(parentSnap, childSnap);
|
|
482
|
+
};
|
|
483
|
+
|
|
484
|
+
// When a form-sheet parent has a form-sheet descendant, clip the parent to
|
|
485
|
+
// the child card's viewport box so it doesn't peek above/around. Only
|
|
486
|
+
// applies when this sheet is itself form — a page parent should remain
|
|
487
|
+
// visible behind/around a floating form child. Geometry comes from the
|
|
488
|
+
// child's inline styles (not getBoundingClientRect) to read the at-rest
|
|
489
|
+
// box, unskewed by vaul's slide-in.
|
|
490
|
+
const applyFormClip = () => {
|
|
491
|
+
const form = isFormSheet ? descendants.find(d => d.isFormSheetRef.current) : undefined;
|
|
492
|
+
if (!form) {
|
|
493
|
+
setClip(CLIP_NONE);
|
|
494
|
+
return;
|
|
422
495
|
}
|
|
423
|
-
|
|
496
|
+
const childDrawer = form.nodeRef.current;
|
|
497
|
+
const childWrapper = childDrawer?.closest('[data-vaul-detached-wrapper]');
|
|
498
|
+
if (!parentWrapper || !childDrawer || !childWrapper) return;
|
|
499
|
+
const snapY = parseFloat(childDrawer.style.getPropertyValue('--snap-point-height')) || 0;
|
|
500
|
+
const childBottomGap = parseFloat(childWrapper.style.bottom) || 0;
|
|
501
|
+
const childMaxW = parseFloat(childWrapper.style.maxWidth) || window.innerWidth;
|
|
502
|
+
const formLeft = (window.innerWidth - childMaxW) / 2;
|
|
503
|
+
const formRight = (window.innerWidth + childMaxW) / 2;
|
|
504
|
+
const formBottom = window.innerHeight - childBottomGap;
|
|
505
|
+
const rect = parentWrapper.getBoundingClientRect();
|
|
506
|
+
const top = Math.max(0, snapY - rect.top);
|
|
507
|
+
const left = Math.max(0, formLeft - rect.left);
|
|
508
|
+
const right = Math.max(0, rect.right - formRight);
|
|
509
|
+
const bottom = Math.max(0, rect.bottom - formBottom);
|
|
510
|
+
const radius = cornerRadius ?? DEFAULT_CORNER_RADIUS;
|
|
511
|
+
setClip(`inset(${top}px ${right}px ${bottom}px ${left}px round ${radius}px)`);
|
|
424
512
|
};
|
|
425
513
|
const apply = () => {
|
|
514
|
+
applyFormClip();
|
|
515
|
+
// Mirror iOS: a page-sheet child fully covers a form-sheet parent, so the
|
|
516
|
+
// cascade push-down has no visible effect — and would briefly peek above
|
|
517
|
+
// the page during the present animation. Leave the parent put.
|
|
518
|
+
const child = descendants[0];
|
|
519
|
+
if (isFormSheet && child && !child.isFormSheetRef.current) {
|
|
520
|
+
parent.style.transition = transition;
|
|
521
|
+
parent.style.transform = '';
|
|
522
|
+
return;
|
|
523
|
+
}
|
|
426
524
|
const targetY = computeTargetY();
|
|
427
525
|
const match = parent.style.transform.match(/translate3d\([^,]*,\s*(-?\d*\.?\d+)px/);
|
|
428
526
|
const currentY = match ? parseFloat(match[1]) : 0;
|
|
@@ -443,7 +541,7 @@ const TrueSheetComponent = /*#__PURE__*/forwardRef((props, ref) => {
|
|
|
443
541
|
cancelAnimationFrame(raf);
|
|
444
542
|
observer.disconnect();
|
|
445
543
|
};
|
|
446
|
-
}, [descendants, activeSnapPoint]);
|
|
544
|
+
}, [descendants, activeSnapPoint, cornerRadius, isFormSheet, isOpen]);
|
|
447
545
|
|
|
448
546
|
// Focus/blur events fire when a descendant sheet appears on top of this one
|
|
449
547
|
// (blur) or when all descendants are dismissed (focus). will-events fire
|
|
@@ -513,7 +611,14 @@ const TrueSheetComponent = /*#__PURE__*/forwardRef((props, ref) => {
|
|
|
513
611
|
// Shadow cast upward from the sheet's top edge toward the background. Matches
|
|
514
612
|
// Android's `elevation` semantics roughly — the sheet "lifts" off whatever is
|
|
515
613
|
// behind it. Scales linearly so higher elevation reads as more separation.
|
|
516
|
-
|
|
614
|
+
// Applied to the vaul wrapper (not the drawer) as `filter: drop-shadow`: the
|
|
615
|
+
// wrapper clips the drawer (overflow: hidden + contain: paint), which would
|
|
616
|
+
// cut off `box-shadow` on the drawer at the wrapper edges — visible in
|
|
617
|
+
// detached mode (bottom blur clipped in the floating gap) and when the
|
|
618
|
+
// wrapper is narrowed by maxWidth/anchor margins (lateral blur clipped at
|
|
619
|
+
// wrapper edges). drop-shadow on the wrapper follows the post-clip silhouette
|
|
620
|
+
// and isn't clipped by the wrapper itself.
|
|
621
|
+
const dropShadow = elevation > 0 ? `drop-shadow(0 ${-elevation}px ${elevation * 3}px rgba(0, 0, 0, 0.15))` : undefined;
|
|
517
622
|
const mergedContentStyle = useMemo(() => ({
|
|
518
623
|
position: 'fixed',
|
|
519
624
|
top: 0,
|
|
@@ -525,10 +630,12 @@ const TrueSheetComponent = /*#__PURE__*/forwardRef((props, ref) => {
|
|
|
525
630
|
borderTopLeftRadius: effectiveCornerRadius,
|
|
526
631
|
borderTopRightRadius: effectiveCornerRadius,
|
|
527
632
|
backgroundColor: backgroundColor,
|
|
528
|
-
|
|
633
|
+
// Clip children to the rounded top so headers/content with their own
|
|
634
|
+
// background don't bleed past the corners.
|
|
635
|
+
overflow: 'hidden',
|
|
529
636
|
// Lift content above iOS home indicator / bottom safe area when enabled.
|
|
530
637
|
paddingBottom: insetAdjustment === 'automatic' ? 'env(safe-area-inset-bottom, 0px)' : 0
|
|
531
|
-
}), [backgroundColor, effectiveCornerRadius,
|
|
638
|
+
}), [backgroundColor, effectiveCornerRadius, insetAdjustment]);
|
|
532
639
|
const defaultGrabberColor = colorScheme === 'dark' ? DEFAULT_GRABBER_COLOR_DARK : DEFAULT_GRABBER_COLOR_LIGHT;
|
|
533
640
|
const grabberHeight = grabberOptions?.height ?? DEFAULT_GRABBER_HEIGHT;
|
|
534
641
|
|
|
@@ -545,26 +652,58 @@ const TrueSheetComponent = /*#__PURE__*/forwardRef((props, ref) => {
|
|
|
545
652
|
pointerEvents: 'auto'
|
|
546
653
|
}), []);
|
|
547
654
|
|
|
548
|
-
// Form-sheet style (
|
|
549
|
-
// default width and a height
|
|
550
|
-
//
|
|
551
|
-
//
|
|
552
|
-
//
|
|
553
|
-
|
|
554
|
-
|
|
555
|
-
|
|
655
|
+
// Form-sheet style (presentation='form'): centered floating card with a
|
|
656
|
+
// default width and a height fit to content. We reuse the existing detached
|
|
657
|
+
// mechanic so drag/snap math stays correct — the wrapper is bottom-attached
|
|
658
|
+
// with a computed offset that centers it vertically. `presentation` is
|
|
659
|
+
// absolute: when 'form', `maxContentWidth` is ignored and the card uses
|
|
660
|
+
// DEFAULT_FORM_SHEET_WIDTH.
|
|
661
|
+
|
|
662
|
+
// Vaul measures the auto-size wrapper's offsetHeight (always, post fork).
|
|
663
|
+
// Track it here so the form sheet can size its card to fit content,
|
|
664
|
+
// clamped between a minimum ratio of the viewport and a maximum derived
|
|
665
|
+
// from `detachedOffset` (the breathing room left at top + bottom of the
|
|
666
|
+
// floating card).
|
|
667
|
+
const [measuredContentHeight, setMeasuredContentHeight] = useState(0);
|
|
668
|
+
const effectiveMaxContentHeight = useMemo(() => {
|
|
669
|
+
if (maxContentHeight !== undefined) return maxContentHeight;
|
|
670
|
+
if (!isFormSheet) return undefined;
|
|
671
|
+
const min = windowHeight * DEFAULT_FORM_SHEET_HEIGHT_RATIO;
|
|
672
|
+
const max = Math.max(min, windowHeight - 2 * detachedOffset);
|
|
673
|
+
if (measuredContentHeight <= 0) return min;
|
|
674
|
+
return Math.max(min, Math.min(measuredContentHeight, max));
|
|
675
|
+
}, [maxContentHeight, isFormSheet, windowHeight, detachedOffset, measuredContentHeight]);
|
|
676
|
+
|
|
677
|
+
// Center the form sheet using the actual visible drawer height. Vaul
|
|
678
|
+
// auto-sizes to content (capped by `maxContentHeight`), so when content is
|
|
679
|
+
// shorter than `effectiveMaxContentHeight`'s min-clamped floor, using that
|
|
680
|
+
// for the offset would push a small sheet below the viewport center.
|
|
681
|
+
const effectiveDetachedOffset = useMemo(() => {
|
|
682
|
+
if (!isFormSheet) return detachedOffset;
|
|
683
|
+
const max = Math.max(0, windowHeight - 2 * detachedOffset);
|
|
684
|
+
const visibleHeight = measuredContentHeight > 0 ? Math.min(measuredContentHeight, max) : effectiveMaxContentHeight ?? 0;
|
|
685
|
+
return Math.max(0, (windowHeight - visibleHeight) / 2);
|
|
686
|
+
}, [isFormSheet, windowHeight, detachedOffset, measuredContentHeight, effectiveMaxContentHeight]);
|
|
556
687
|
|
|
557
688
|
// The wrapper holds all horizontal sizing/anchoring so its rounded-bottom
|
|
558
689
|
// clip (when detached) aligns with the drawer's horizontal bounds on
|
|
559
690
|
// desktop — otherwise its corners sit at the far viewport edges.
|
|
560
|
-
//
|
|
561
|
-
//
|
|
562
|
-
//
|
|
691
|
+
// - presentation='form' → DEFAULT_FORM_SHEET_WIDTH on tablet/landscape;
|
|
692
|
+
// `maxContentWidth` is ignored ('form' is absolute).
|
|
693
|
+
// - presentation='page' → `maxContentWidth` (any viewport) or
|
|
694
|
+
// DEFAULT_MAX_WIDTH (tablet/landscape readability cap).
|
|
563
695
|
// Detached without a width constraint applies anchorOffset on both edges so
|
|
564
696
|
// the floating card breathes from the viewport sides.
|
|
565
697
|
const wrapperStyle = useMemo(() => {
|
|
566
|
-
|
|
567
|
-
|
|
698
|
+
// Mobile portrait ignores width sizing entirely (matches iOS/Android:
|
|
699
|
+
// both apply `maxContentWidth` only when not on a portrait phone).
|
|
700
|
+
// `detached` + `detachedOffset` are still respected via the wrapper.
|
|
701
|
+
const maxWidth = isLandscapeOrTablet ? presentation === 'form' ? DEFAULT_FORM_SHEET_WIDTH : maxContentWidth ?? DEFAULT_MAX_WIDTH : undefined;
|
|
702
|
+
const needsMargins = maxWidth != null || effectiveDetached;
|
|
703
|
+
if (!needsMargins && !dropShadow) return undefined;
|
|
704
|
+
const next = {};
|
|
705
|
+
if (dropShadow) next.filter = dropShadow;
|
|
706
|
+
if (!needsMargins) return next;
|
|
568
707
|
let marginLeft;
|
|
569
708
|
let marginRight;
|
|
570
709
|
if (isFormSheet) {
|
|
@@ -577,21 +716,30 @@ const TrueSheetComponent = /*#__PURE__*/forwardRef((props, ref) => {
|
|
|
577
716
|
marginLeft = anchor === 'left' ? anchorOffset : 'auto';
|
|
578
717
|
marginRight = anchor === 'right' ? anchorOffset : 'auto';
|
|
579
718
|
}
|
|
580
|
-
|
|
581
|
-
|
|
582
|
-
|
|
583
|
-
|
|
584
|
-
|
|
585
|
-
|
|
586
|
-
|
|
587
|
-
|
|
719
|
+
if (maxWidth != null) next.maxWidth = maxWidth;
|
|
720
|
+
next.marginLeft = marginLeft;
|
|
721
|
+
next.marginRight = marginRight;
|
|
722
|
+
return next;
|
|
723
|
+
}, [isLandscapeOrTablet, isFormSheet, maxContentWidth, presentation, anchor, anchorOffset, effectiveDetached, dropShadow]);
|
|
724
|
+
|
|
725
|
+
// Absolute-position the grabber so it overlays the content top-edge
|
|
726
|
+
// instead of consuming flow height — mirrors native iOS/Android, where
|
|
727
|
+
// the grabber sits in the rounded corner zone above the content and
|
|
728
|
+
// doesn't push the header down or inflate the 'auto' detent measurement.
|
|
588
729
|
const handleStyle = useMemo(() => ({
|
|
730
|
+
position: 'absolute',
|
|
731
|
+
top: grabberOptions?.topMargin ?? DEFAULT_GRABBER_TOP_MARGIN,
|
|
732
|
+
left: '50%',
|
|
733
|
+
transform: 'translateX(-50%)',
|
|
589
734
|
height: grabberHeight,
|
|
590
735
|
width: grabberOptions?.width ?? DEFAULT_GRABBER_WIDTH,
|
|
591
736
|
borderRadius: grabberOptions?.cornerRadius ?? grabberHeight / 2,
|
|
592
737
|
backgroundColor: grabberOptions?.color ?? defaultGrabberColor,
|
|
593
738
|
opacity: 1,
|
|
594
|
-
|
|
739
|
+
// Above absolute-positioned headers (which often use zIndex:1 to overlay
|
|
740
|
+
// scroll content) so the grabber stays draggable — critical when
|
|
741
|
+
// `handleOnly` mode means only the grabber can drag the sheet.
|
|
742
|
+
zIndex: 2
|
|
595
743
|
}), [grabberOptions, grabberHeight, defaultGrabberColor]);
|
|
596
744
|
return /*#__PURE__*/_jsx(Drawer.Root, {
|
|
597
745
|
open: isOpen,
|
|
@@ -601,7 +749,6 @@ const TrueSheetComponent = /*#__PURE__*/forwardRef((props, ref) => {
|
|
|
601
749
|
onRelease: handleRelease,
|
|
602
750
|
dismissible: dismissible,
|
|
603
751
|
draggable: draggable,
|
|
604
|
-
handleOnly: scrollable && scrollableOptions?.scrollingExpandsSheet === false,
|
|
605
752
|
repositionInputs: false,
|
|
606
753
|
modal: dimmed,
|
|
607
754
|
nested: isNested,
|
|
@@ -611,6 +758,7 @@ const TrueSheetComponent = /*#__PURE__*/forwardRef((props, ref) => {
|
|
|
611
758
|
maxContentHeight: effectiveMaxContentHeight,
|
|
612
759
|
initialAnimated: initialDetentAnimated,
|
|
613
760
|
detachedWrapperStyle: wrapperStyle,
|
|
761
|
+
onContentHeightChange: setMeasuredContentHeight,
|
|
614
762
|
activeSnapPoint: activeSnapPoint,
|
|
615
763
|
setActiveSnapPoint: handleSetActiveSnapPoint,
|
|
616
764
|
...snapPointsProps,
|
|
@@ -634,18 +782,33 @@ const TrueSheetComponent = /*#__PURE__*/forwardRef((props, ref) => {
|
|
|
634
782
|
children: "Sheet"
|
|
635
783
|
}), grabber && /*#__PURE__*/_jsx(Drawer.Handle, {
|
|
636
784
|
style: handleStyle
|
|
637
|
-
}),
|
|
638
|
-
|
|
639
|
-
|
|
640
|
-
|
|
641
|
-
|
|
642
|
-
|
|
785
|
+
}), scrollable ?
|
|
786
|
+
/*#__PURE__*/
|
|
787
|
+
// vaul wraps children in `[data-vaul-auto-size-wrapper]` (display:
|
|
788
|
+
// flow-root) which doesn't honor descendant flex layout. Use an
|
|
789
|
+
// absolute fill sized to the visible portion (via vaul's
|
|
790
|
+
// `--snap-point-height` var) so the inner flex column has a
|
|
791
|
+
// definite height for the scroll container's flex:1 to fill.
|
|
792
|
+
_jsxs("div", {
|
|
793
|
+
style: scrollableLayoutStyle,
|
|
794
|
+
children: [header && /*#__PURE__*/_jsx(View, {
|
|
795
|
+
style: headerStyle,
|
|
796
|
+
children: /*#__PURE__*/isValidElement(header) ? header : /*#__PURE__*/createElement(header)
|
|
797
|
+
}), /*#__PURE__*/_jsx("div", {
|
|
798
|
+
style: scrollableContainerStyle,
|
|
799
|
+
children: /*#__PURE__*/_jsx(View, {
|
|
800
|
+
style: style,
|
|
801
|
+
children: children
|
|
802
|
+
})
|
|
803
|
+
})]
|
|
804
|
+
}) : /*#__PURE__*/_jsxs(_Fragment, {
|
|
805
|
+
children: [header && /*#__PURE__*/_jsx(View, {
|
|
806
|
+
style: headerStyle,
|
|
807
|
+
children: /*#__PURE__*/isValidElement(header) ? header : /*#__PURE__*/createElement(header)
|
|
808
|
+
}), /*#__PURE__*/_jsx(View, {
|
|
643
809
|
style: style,
|
|
644
810
|
children: children
|
|
645
|
-
})
|
|
646
|
-
}) : /*#__PURE__*/_jsx(View, {
|
|
647
|
-
style: style,
|
|
648
|
-
children: children
|
|
811
|
+
})]
|
|
649
812
|
})]
|
|
650
813
|
})]
|
|
651
814
|
})
|
|
@@ -656,6 +819,15 @@ const overlayStyle = {
|
|
|
656
819
|
inset: 0,
|
|
657
820
|
backgroundColor: 'rgba(0, 0, 0, 0.5)'
|
|
658
821
|
};
|
|
822
|
+
const scrollableLayoutStyle = {
|
|
823
|
+
position: 'absolute',
|
|
824
|
+
top: 0,
|
|
825
|
+
left: 0,
|
|
826
|
+
right: 0,
|
|
827
|
+
height: 'calc(100% - var(--snap-point-height, 0px))',
|
|
828
|
+
display: 'flex',
|
|
829
|
+
flexDirection: 'column'
|
|
830
|
+
};
|
|
659
831
|
const scrollableContainerStyle = {
|
|
660
832
|
flex: 1,
|
|
661
833
|
minHeight: 0,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["createElement","forwardRef","isValidElement","useCallback","useEffect","useImperativeHandle","useMemo","useRef","useState","View","useColorScheme","useWindowDimensions","Drawer","TRANSITIONS","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","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","scrollableOptions","pageSizing","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","effectiveDetached","colorScheme","shouldAutoPresent","isOpen","setIsOpen","activeSnapPoint","setActiveSnapPoint","current","includes","validDetentsRef","handleSetActiveSnapPoint","snapPoint","handleOpenChange","open","portalContainer","handlePointerDownOutside","e","target","Node","contains","preventDefault","dismissAboveRef","methods","present","index","detent","undefined","Error","dismiss","resize","dismissStack","animated","methodsRef","drawerContentRef","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","nativeEvent","realtime","onMountRef","wasOpenRef","wasOpen","fireDone","canceled","rafId","start","drawer","requestAnimationFrame","wrapper","closest","targets","waitForSettle","pending","flatMap","el","getAnimations","a","playState","Promise","allSettled","map","finished","then","cancelAnimationFrame","detentChangeStateRef","prev","isDraggingRef","handleDrag","handleRelease","isNested","dismissAbove","descendants","parent","transition","DURATION","EASE","join","transform","computeTargetY","parentSnap","parseFloat","getPropertyValue","targetY","node","nodeRef","apply","match","currentY","abs","raf","observer","MutationObserver","observe","attributes","attributeFilter","disconnect","onWillBlurRef","onDidBlurRef","onWillFocusRef","onDidFocusRef","prevDescendantCountRef","prevCount","gained","lost","effectiveCornerRadius","boxShadow","mergedContentStyle","left","right","bottom","display","flexDirection","borderTopLeftRadius","borderTopRightRadius","paddingBottom","defaultGrabberColor","grabberHeight","footerFloatStyle","pointerEvents","isFormSheet","effectiveMaxContentHeight","effectiveDetachedOffset","wrapperStyle","maxWidth","marginLeft","marginRight","handleStyle","borderRadius","color","opacity","marginTop","topMargin","Root","onOpenChange","onDrag","onRelease","handleOnly","scrollingExpandsSheet","repositionInputs","modal","nested","detachedRadius","initialAnimated","detachedWrapperStyle","Portal","container","Overlay","overlayStyle","Content","onPointerDownOutside","detachedSiblings","Title","visuallyHiddenStyle","Handle","scrollableContainerStyle","inset","flex","minHeight","overflowY","overscrollBehavior","touchAction","padding","margin","overflow","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","TRANSITIONS","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","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","nativeEvent","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","Root","onOpenChange","onDrag","onRelease","repositionInputs","modal","nested","detachedRadius","initialAnimated","detachedWrapperStyle","onContentHeightChange","Portal","container","Overlay","overlayStyle","Content","onPointerDownOutside","detachedSiblings","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":";;AAAA;AACA,SACEA,aAAa,EACbC,UAAU,EACVC,cAAc,EACdC,WAAW,EACXC,SAAS,EACTC,mBAAmB,EACnBC,OAAO,EACPC,MAAM,EACNC,QAAQ,QACH,OAAO;AACd,SAASC,IAAI,EAAEC,cAAc,EAAEC,mBAAmB,QAAQ,cAAc;AAExE,SAASC,MAAM,QAAQ,qBAAY;AACnC,SAASC,WAAW,QAAQ,yBAAsB;AAsBlD,SAASC,kBAAkB,EAAEC,gBAAgB,EAAEC,aAAa,QAAQ,4BAAyB;AAC7F,SACEC,gCAAgC,EAChCC,iCAAiC,EACjCC,qBAAqB,EACrBC,qBAAqB,EACrBC,uBAAuB,EACvBC,0BAA0B,EAC1BC,2BAA2B,EAC3BC,sBAAsB,EACtBC,0BAA0B,EAC1BC,qBAAqB,EACrBC,+BAA+B,EAC/BC,wBAAwB,EACxBC,iBAAiB,QACZ,oBAAiB;AAAC,SAAAC,GAAA,IAAAC,IAAA,EAAAC,IAAA,IAAAC,KAAA,EAAAC,QAAA,IAAAC,SAAA;AAEzB,MAAMC,kBAAkB,gBAAGnC,UAAU,CAAmC,CAACoC,KAAK,EAAEC,GAAG,KAAK;EACtF,MAAM;IACJC,QAAQ;IACRC,IAAI;IACJC,WAAW,GAAG,IAAI;IAClBC,SAAS,GAAG,IAAI;IAChBC,YAAY;IACZC,KAAK;IACLC,eAAe,EAAEC,mBAAmB;IACpCC,gBAAgB;IAChBC,eAAe;IACfC,MAAM,GAAG,QAAQ;IACjBC,YAAY,GAAG/B,qBAAqB;IACpCgC,OAAO,GAAG,IAAI;IACdC,cAAc;IACdC,OAAO,GAAG,CAAC,GAAG,EAAE,CAAC,CAAC;IAClBC,MAAM,GAAG,IAAI;IACbC,iBAAiB,GAAG,CAAC;IACrBC,kBAAkB,GAAG,CAAC,CAAC;IACvBC,MAAM;IACNC,WAAW;IACXC,MAAM;IACNC,WAAW;IACXC,UAAU,GAAG,KAAK;IAClBC,YAAY,GAAG,MAAM;IACrBC,QAAQ,GAAG,KAAK;IAChBC,cAAc,GAAG3C,uBAAuB;IACxC4C,SAAS,GAAG,CAAC;IACbC,eAAe,GAAG,WAAW;IAC7BC,qBAAqB,GAAG,IAAI;IAC5BC,gBAAgB;IAChBC,aAAa;IACbC,YAAY;IACZC,aAAa;IACbC,YAAY;IACZC,cAAc;IACdC,WAAW;IACXC,YAAY;IACZC,SAAS;IACTC,OAAO;IACPC,WAAW;IACXC,UAAU;IACVC,UAAU;IACVC;EACF,CAAC,GAAG5C,KAAK;EAET,MAAM6C,YAAY,GAAG5E,OAAO,CAC1B,MAAM+C,OAAO,CAAC8B,MAAM,CAAEC,CAAC,IAAuB,OAAOA,CAAC,KAAK,QAAQ,IAAIA,CAAC,KAAK,MAAM,CAAC,EACpF,CAAC/B,OAAO,CACV,CAAC;EAED,MAAMgC,eAAe,GAAG/E,OAAO,CAE7B,MAAM;IACN,IAAI4E,YAAY,CAACI,MAAM,KAAK,CAAC,EAAE,OAAO,CAAC,CAAC;IACxC,OAAO;MACLC,UAAU,EAAEL,YAAY;MACxBM,aAAa,EAAEC,IAAI,CAACC,GAAG,CAACnC,iBAAiB,EAAE2B,YAAY,CAACI,MAAM,GAAG,CAAC;IACpE,CAAC;EACH,CAAC,EAAE,CAACJ,YAAY,EAAE3B,iBAAiB,CAAC,CAAC;EAErC,MAAM;IAAEoC,KAAK,EAAEC,WAAW;IAAEC,MAAM,EAAEC;EAAa,CAAC,GAAGnF,mBAAmB,CAAC,CAAC;EAC1E,MAAMoF,mBAAmB,GAAGH,WAAW,IAAI,GAAG,IAAIA,WAAW,GAAGE,YAAY;EAC5E,MAAME,WAAW,GAAGD,mBAAmB,IAAIjC,YAAY,KAAK,MAAM;;EAElE;EACA;EACA,MAAMmC,iBAAiB,GAAGnC,YAAY,KAAK,MAAM,IAAIC,QAAQ;EAE7D,MAAMmC,WAAW,GAAGxF,cAAc,CAAC,CAAC;EACpC,MAAMmC,eAAe,GACnBC,mBAAmB,KAClBoD,WAAW,KAAK,MAAM,GAAGjF,gCAAgC,GAAGC,iCAAiC,CAAC;EAEjG,MAAMiF,iBAAiB,GAAG3C,kBAAkB,IAAI,CAAC,IAAIA,kBAAkB,GAAG0B,YAAY,CAACI,MAAM;EAC7F,MAAM,CAACc,MAAM,EAAEC,SAAS,CAAC,GAAG7F,QAAQ,CAAC2F,iBAAiB,CAAC;EACvD,MAAM,CAACG,eAAe,EAAEC,kBAAkB,CAAC,GAAG/F,QAAQ,CACpD,MAAM0E,YAAY,CAACiB,iBAAiB,GAAG3C,kBAAkB,GAAG,CAAC,CAAC,IAAI,IACpE,CAAC;;EAED;EACApD,SAAS,CAAC,MAAM;IACd,IAAI8E,YAAY,CAACI,MAAM,KAAK,CAAC,EAAE;IAC/BiB,kBAAkB,CAAEC,OAAO,IACzBA,OAAO,IAAI,IAAI,IAAItB,YAAY,CAACuB,QAAQ,CAACD,OAAO,CAAC,GAAGA,OAAO,GAAGtB,YAAY,CAAC,CAAC,CAC9E,CAAC;EACH,CAAC,EAAE,CAACA,YAAY,CAAC,CAAC;EAElB,MAAMwB,eAAe,GAAGnG,MAAM,CAAC2E,YAAY,CAAC;EAC5CwB,eAAe,CAACF,OAAO,GAAGtB,YAAY;EAEtC,MAAMyB,wBAAwB,GAAGxG,WAAW,CAAEyG,SAAiC,IAAK;IAClFL,kBAAkB,CAChBK,SAAS,IAAI,IAAI,GACb,IAAI,GACJ,OAAOA,SAAS,KAAK,QAAQ,IAAIA,SAAS,KAAK,MAAM,GAClDA,SAAS,GACV,IACR,CAAC;EACH,CAAC,EAAE,EAAE,CAAC;EAEN,MAAMC,gBAAgB,GAAG1G,WAAW,CACjC2G,IAAa,IAAK;IACjB,IAAI,CAACA,IAAI,IAAIV,MAAM,EAAE;MACnBC,SAAS,CAAC,KAAK,CAAC;IAClB;EACF,CAAC,EACD,CAACD,MAAM,CACT,CAAC;EAED,MAAMW,eAAe,GAAGjG,kBAAkB,CAAC,CAAC;EAE5C,MAAMkG,wBAAwB,GAAIC,CAAQ,IAAK;IAC7C,MAAMC,MAAM,GAAGD,CAAC,CAACC,MAAM;IACvB,IAAI,EAAEA,MAAM,YAAYC,IAAI,CAAC,EAAE;IAC/B;IACA;IACA,IAAIJ,eAAe,IAAI,CAACA,eAAe,CAACK,QAAQ,CAACF,MAAM,CAAC,EAAE;MACxDD,CAAC,CAACI,cAAc,CAAC,CAAC;MAClB;IACF;IACA;IACA;IACA;IACA;IACA,IAAIH,MAAM,YAAYI,OAAO,EAAE;MAC7B,MAAMC,OAAO,GAAGC,gBAAgB,CAAChB,OAAO,EAAEiB,OAAO,CAAC,8BAA8B,CAAC;MACjF,IAAIF,OAAO,IAAIA,OAAO,CAACH,QAAQ,CAACF,MAAM,CAAC,EAAE;QACvCD,CAAC,CAACI,cAAc,CAAC,CAAC;MACpB;IACF;EACF,CAAC;EAED,MAAMK,eAAe,GAAGnH,MAAM,CAAwC,YAAY,CAAC,CAAC,CAAC;EAErF,MAAMoH,OAAO,GAAGrH,OAAO,CACrB,OAAO;IACLsH,OAAO,EAAE,MAAAA,CAAOC,KAAK,GAAG,CAAC,KAAK;MAC5B,MAAMC,MAAM,GAAGpB,eAAe,CAACF,OAAO,CAACqB,KAAK,CAAC;MAC7C,IAAIC,MAAM,KAAKC,SAAS,EAAE;QACxB,MAAM,IAAIC,KAAK,CACb,6BAA6BH,KAAK,yCAAyCnB,eAAe,CAACF,OAAO,CAAClB,MAAM,UAC3G,CAAC;MACH;MACAiB,kBAAkB,CAACuB,MAAM,CAAC;MAC1BzB,SAAS,CAAC,IAAI,CAAC;IACjB,CAAC;IACD4B,OAAO,EAAE,MAAAA,CAAA,KAAY;MACnB5B,SAAS,CAAC,KAAK,CAAC;IAClB,CAAC;IACD6B,MAAM,EAAE,MAAOL,KAAK,IAAK;MACvB,MAAMC,MAAM,GAAGpB,eAAe,CAACF,OAAO,CAACqB,KAAK,CAAC;MAC7C,IAAIC,MAAM,KAAKC,SAAS,EAAE;QACxB,MAAM,IAAIC,KAAK,CACb,4BAA4BH,KAAK,yCAAyCnB,eAAe,CAACF,OAAO,CAAClB,MAAM,UAC1G,CAAC;MACH;MACAiB,kBAAkB,CAACuB,MAAM,CAAC;IAC5B,CAAC;IACDK,YAAY,EAAE,MAAOC,QAAQ,IAAK;MAChC,MAAMV,eAAe,CAAClB,OAAO,CAAC4B,QAAQ,CAAC;IACzC;EACF,CAAC,CAAC,EACF,EACF,CAAC;EAED/H,mBAAmB,CAACiC,GAAG,EAAE,MAAMqF,OAAO,EAAE,CAACA,OAAO,CAAC,CAAC;EAElD,MAAMU,UAAU,GAAG9H,MAAM,CAA0BoH,OAAO,CAAC;EAC3D5G,gBAAgB,CAACyB,IAAI,EAAE6F,UAAU,CAAC;EAElC,MAAMb,gBAAgB,GAAGjH,MAAM,CAAwB,IAAI,CAAC;;EAE5D;EACA;EACA;EACA;EACA;EACA;EACA;EACA,MAAM+H,gBAAgB,GAAG/H,MAAM,CAAC8D,aAAa,CAAC;EAC9C,MAAMkE,eAAe,GAAGhI,MAAM,CAAC+D,YAAY,CAAC;EAC5C,MAAMkE,gBAAgB,GAAGjI,MAAM,CAACgE,aAAa,CAAC;EAC9C,MAAMkE,eAAe,GAAGlI,MAAM,CAACiE,YAAY,CAAC;EAC5C,MAAMkE,iBAAiB,GAAGnI,MAAM,CAACkE,cAAc,CAAC;EAChD,MAAMkE,cAAc,GAAGpI,MAAM,CAACmE,WAAW,CAAC;EAC1C,MAAMkE,eAAe,GAAGrI,MAAM,CAACoE,YAAY,CAAC;EAC5C,MAAMkE,YAAY,GAAGtI,MAAM,CAACqE,SAAS,CAAC;EACtC,MAAMkE,mBAAmB,GAAGvI,MAAM,CAAC6D,gBAAgB,CAAC;EACpD,MAAM2E,kBAAkB,GAAGxI,MAAM,CAAC+F,eAAe,CAAC;EAClDlG,SAAS,CAAC,MAAM;IACdkI,gBAAgB,CAAC9B,OAAO,GAAGnC,aAAa;IACxCkE,eAAe,CAAC/B,OAAO,GAAGlC,YAAY;IACtCkE,gBAAgB,CAAChC,OAAO,GAAGjC,aAAa;IACxCkE,eAAe,CAACjC,OAAO,GAAGhC,YAAY;IACtCkE,iBAAiB,CAAClC,OAAO,GAAG/B,cAAc;IAC1CkE,cAAc,CAACnC,OAAO,GAAG9B,WAAW;IACpCkE,eAAe,CAACpC,OAAO,GAAG7B,YAAY;IACtCkE,YAAY,CAACrC,OAAO,GAAG5B,SAAS;IAChCkE,mBAAmB,CAACtC,OAAO,GAAGpC,gBAAgB;IAC9C2E,kBAAkB,CAACvC,OAAO,GAAGF,eAAe;EAC9C,CAAC,CAAC;EAEF,MAAM0C,iBAAiB,GAAG7I,WAAW,CAAC,MAA8B;IAClE,MAAM8I,IAAI,GAAGF,kBAAkB,CAACvC,OAAO;IACvC,MAAMqB,KAAK,GAAGoB,IAAI,IAAI,IAAI,GAAGvC,eAAe,CAACF,OAAO,CAAC0C,OAAO,CAACD,IAAI,CAAC,GAAG,CAAC,CAAC;IACvE,MAAME,QAAQ,GAAG3B,gBAAgB,CAAChB,OAAO,EAAE4C,qBAAqB,CAAC,CAAC,CAACC,GAAG,IAAI,CAAC;IAC3E,MAAMvB,MAAM,GAAG,OAAOmB,IAAI,KAAK,QAAQ,GAAGA,IAAI,GAAG,CAAC;IAClD,OAAO;MAAEpB,KAAK;MAAEsB,QAAQ;MAAErB;IAAO,CAAC;EACpC,CAAC,EAAE,EAAE,CAAC;;EAEN;EACA;EACA;EACA;EACA;EACA,MAAMwB,uBAAuB,GAAGnJ,WAAW,CACxCgJ,QAAgB,IAAwC;IACvD,MAAMI,KAAK,GAAG7C,eAAe,CAACF,OAAO;IACrC,MAAMgD,KAAK,GAAGD,KAAK,CAACjE,MAAM;IAC1B,IAAIkE,KAAK,KAAK,CAAC,EAAE,OAAO;MAAE3B,KAAK,EAAE,CAAC,CAAC;MAAEC,MAAM,EAAE;IAAE,CAAC;IAEhD,MAAM2B,OAAO,GAAGC,MAAM,CAACC,WAAW;IAClC,MAAMC,UAAU,GAAG3D,iBAAiB,GAAGwD,OAAO,GAAGzF,cAAc,GAAGyF,OAAO;IACzE;IACA,MAAMI,OAAO,GACX9G,gBAAgB,KAAKgF,SAAS,GAAGtC,IAAI,CAACC,GAAG,CAACkE,UAAU,EAAE7G,gBAAgB,CAAC,GAAG6G,UAAU;IAEtF,MAAME,WAAW,GAAGtC,gBAAgB,CAAChB,OAAO,EAAEuD,aAAa,CACzD,+BACF,CAAC;IACD,MAAMC,UAAU,GAAGvE,IAAI,CAACC,GAAG,CAACoE,WAAW,EAAEG,YAAY,IAAIJ,OAAO,GAAG,CAAC,EAAEA,OAAO,CAAC;IAE9E,MAAMK,SAAmB,GAAG,EAAE;IAC9B,MAAMC,MAAgB,GAAG,EAAE;IAC3B,KAAK,IAAIC,CAAC,GAAG,CAAC,EAAEA,CAAC,GAAGZ,KAAK,EAAEY,CAAC,EAAE,EAAE;MAC9B,MAAMhF,CAAC,GAAGmE,KAAK,CAACa,CAAC,CAAC;MAClB,IAAI,OAAOhF,CAAC,KAAK,QAAQ,EAAE;QACzB,MAAMiF,CAAC,GAAG5E,IAAI,CAACC,GAAG,CAACN,CAAC,GAAGwE,UAAU,EAAEC,OAAO,CAAC;QAC3CK,SAAS,CAACI,IAAI,CAACV,UAAU,GAAGS,CAAC,CAAC;QAC9BF,MAAM,CAACG,IAAI,CAACV,UAAU,GAAG,CAAC,GAAGS,CAAC,GAAGT,UAAU,GAAG,CAAC,CAAC;MAClD,CAAC,MAAM;QACLM,SAAS,CAACI,IAAI,CAACV,UAAU,GAAGI,UAAU,CAAC;QACvCG,MAAM,CAACG,IAAI,CAACV,UAAU,GAAG,CAAC,GAAGI,UAAU,GAAGJ,UAAU,GAAG,CAAC,CAAC;MAC3D;IACF;;IAEA;IACA;IACA;IACA,MAAMW,OAAO,GAAG,GAAG;IACnB,MAAMC,QAAQ,GAAGN,SAAS,CAAC,CAAC,CAAE;IAC9B,MAAMO,OAAO,GAAGP,SAAS,CAACV,KAAK,GAAG,CAAC,CAAE;IAErC,IAAIL,QAAQ,GAAGqB,QAAQ,GAAGD,OAAO,EAAE;MACjC;MACA;MACA;MACA;MACA;MACA,MAAMG,QAAQ,GAAG,CAACvB,QAAQ,GAAGqB,QAAQ,IAAIf,OAAO;MAChD,MAAMkB,SAAS,GAAG,CAACxB,QAAQ,GAAGqB,QAAQ,IAAI/E,IAAI,CAACmF,GAAG,CAAC,CAAC,EAAEnB,OAAO,GAAGe,QAAQ,CAAC;MACzE,MAAMK,aAAa,GAAGpF,IAAI,CAACmF,GAAG,CAAC,CAAC,EAAEnF,IAAI,CAACC,GAAG,CAAC,CAAC,EAAEgF,QAAQ,CAAC,CAAC;MACxD,MAAMI,cAAc,GAAGrF,IAAI,CAACmF,GAAG,CAAC,CAAC,EAAEnF,IAAI,CAACC,GAAG,CAAC,CAAC,EAAEiF,SAAS,CAAC,CAAC;MAC1D,OAAO;QACL9C,KAAK,EAAE,CAACgD,aAAa;QACrB/C,MAAM,EAAErC,IAAI,CAACmF,GAAG,CAAC,CAAC,EAAET,MAAM,CAAC,CAAC,CAAC,IAAK,CAAC,GAAGW,cAAc,CAAC;MACvD,CAAC;IACH;IAEA,IAAItB,KAAK,KAAK,CAAC,EAAE,OAAO;MAAE3B,KAAK,EAAE,CAAC;MAAEC,MAAM,EAAEqC,MAAM,CAAC,CAAC;IAAG,CAAC;;IAExD;IACA;IACA,MAAMY,OAAO,GAAGtF,IAAI,CAACmF,GAAG,CAACH,OAAO,EAAEhF,IAAI,CAACC,GAAG,CAAC8E,QAAQ,EAAErB,QAAQ,CAAC,CAAC;IAE/D,KAAK,IAAIiB,CAAC,GAAG,CAAC,EAAEA,CAAC,GAAGZ,KAAK,GAAG,CAAC,EAAEY,CAAC,EAAE,EAAE;MAClC,MAAMY,GAAG,GAAGd,SAAS,CAACE,CAAC,CAAE;MACzB,MAAMa,OAAO,GAAGf,SAAS,CAACE,CAAC,GAAG,CAAC,CAAE;MACjC,IAAIW,OAAO,IAAIE,OAAO,IAAIF,OAAO,IAAIC,GAAG,EAAE;QACxC,MAAME,KAAK,GAAGF,GAAG,GAAGC,OAAO;QAC3B,MAAME,QAAQ,GAAGD,KAAK,GAAG,CAAC,GAAG,CAACF,GAAG,GAAGD,OAAO,IAAIG,KAAK,GAAG,CAAC;QACxD,MAAME,eAAe,GAAG3F,IAAI,CAACmF,GAAG,CAAC,CAAC,EAAEnF,IAAI,CAACC,GAAG,CAAC,CAAC,EAAEyF,QAAQ,CAAC,CAAC;QAC1D,OAAO;UACLtD,KAAK,EAAEuC,CAAC,GAAGgB,eAAe;UAC1BtD,MAAM,EAAEqC,MAAM,CAACC,CAAC,CAAC,GAAIgB,eAAe,IAAIjB,MAAM,CAACC,CAAC,GAAG,CAAC,CAAC,GAAID,MAAM,CAACC,CAAC,CAAE;QACrE,CAAC;MACH;IACF;IAEA,OAAO;MAAEvC,KAAK,EAAE2B,KAAK,GAAG,CAAC;MAAE1B,MAAM,EAAEqC,MAAM,CAACX,KAAK,GAAG,CAAC;IAAG,CAAC;EACzD,CAAC,EACD,CAACvD,iBAAiB,EAAEjC,cAAc,EAAEjB,gBAAgB,CACtD,CAAC;EAED,MAAMsI,oBAAoB,GAAGlL,WAAW,CACrCgJ,QAAgB,IAAK;IACpB,MAAM;MAAEtB,KAAK;MAAEC;IAAO,CAAC,GAAGwB,uBAAuB,CAACH,QAAQ,CAAC;IAC3DL,mBAAmB,CAACtC,OAAO,GAAG;MAC5B8E,WAAW,EAAE;QAAEzD,KAAK;QAAEsB,QAAQ;QAAErB,MAAM;QAAEyD,QAAQ,EAAE;MAAK;IACzD,CAAwB,CAAC;EAC3B,CAAC,EACD,CAACjC,uBAAuB,CAC1B,CAAC;;EAED;EACA;EACA;EACA;EACA,MAAMkC,UAAU,GAAGjL,MAAM,CAACsE,OAAO,CAAC;EAClCzE,SAAS,CAAC,MAAM;IACdoL,UAAU,CAAChF,OAAO,GAAG3B,OAAO;EAC9B,CAAC,CAAC;EACFzE,SAAS,CAAC,MAAM;IACdoL,UAAU,CAAChF,OAAO,GAAG;MAAE8E,WAAW,EAAE;IAAK,CAAe,CAAC;EAC3D,CAAC,EAAE,EAAE,CAAC;;EAEN;EACA;EACA;EACA,MAAMG,UAAU,GAAGlL,MAAM,CAAC,KAAK,CAAC;EAChCH,SAAS,CAAC,MAAM;IACd,MAAMsL,OAAO,GAAGD,UAAU,CAACjF,OAAO;IAClCiF,UAAU,CAACjF,OAAO,GAAGJ,MAAM;IAE3B,IAAI,CAACA,MAAM,IAAI,CAACsF,OAAO,EAAE,OAAO3D,SAAS;IAEzC,MAAMH,OAAO,GAAG,CAAC8D,OAAO,IAAItF,MAAM;IAClC,IAAIwB,OAAO,EAAE;MACX;MACA;MACA;MACAU,gBAAgB,CAAC9B,OAAO,GAAG;QAAE8E,WAAW,EAAEtC,iBAAiB,CAAC;MAAE,CAAqB,CAAC;MACpF2C,cAAc,CAACnF,OAAO,GAAG;QAAE8E,WAAW,EAAE;MAAK,CAAmB,CAAC;IACnE,CAAC,MAAM,IAAII,OAAO,IAAI,CAACtF,MAAM,EAAE;MAC7B;MACA;MACAwF,aAAa,CAACpF,OAAO,GAAG;QAAE8E,WAAW,EAAE;MAAK,CAAkB,CAAC;MAC/D9C,gBAAgB,CAAChC,OAAO,GAAG;QAAE8E,WAAW,EAAE;MAAK,CAAqB,CAAC;IACvE,CAAC,MAAM;MACL,OAAOvD,SAAS;IAClB;IAEA,MAAM8D,QAAQ,GAAGA,CAAA,KAAM;MACrB,IAAIjE,OAAO,EAAE;QACXW,eAAe,CAAC/B,OAAO,GAAG;UAAE8E,WAAW,EAAEtC,iBAAiB,CAAC;QAAE,CAAoB,CAAC;QAClF8C,aAAa,CAACtF,OAAO,GAAG;UAAE8E,WAAW,EAAE;QAAK,CAAkB,CAAC;MACjE,CAAC,MAAM;QACLS,YAAY,CAACvF,OAAO,GAAG;UAAE8E,WAAW,EAAE;QAAK,CAAiB,CAAC;QAC7D7C,eAAe,CAACjC,OAAO,GAAG;UAAE8E,WAAW,EAAE;QAAK,CAAoB,CAAC;MACrE;IACF,CAAC;IAED,IAAIU,QAAQ,GAAG,KAAK;IACpB,IAAIC,KAAK,GAAG,CAAC;IAEb,MAAMC,KAAK,GAAGA,CAAA,KAAM;MAClB,IAAIF,QAAQ,EAAE;MACd,MAAMG,MAAM,GAAG3E,gBAAgB,CAAChB,OAAO;MACvC,IAAI,CAAC2F,MAAM,EAAE;QACX;QACA;QACAF,KAAK,GAAGvC,MAAM,CAAC0C,qBAAqB,CAACF,KAAK,CAAC;QAC3C;MACF;MACA,MAAM3E,OAAO,GAAG4E,MAAM,CAAC1E,OAAO,CAAc,8BAA8B,CAAC,IAAI,IAAI;MACnF,MAAM4E,OAAO,GAAG9E,OAAO,GAAG,CAAC4E,MAAM,EAAE5E,OAAO,CAAC,GAAG,CAAC4E,MAAM,CAAC;MAEtD,MAAMG,aAAa,GAAGA,CAAA,KAAY;QAChC,IAAIN,QAAQ,EAAE;QACd;QACA;QACA;QACA;;QAEAG,MAAM,CAAClC,YAAY;QACnB,MAAMsC,OAAO,GAAGF,OAAO,CAACG,OAAO,CAAEC,EAAE,IACjCA,EAAE,CAACC,aAAa,CAAC,CAAC,CAACvH,MAAM,CAAEwH,CAAC,IAAKA,CAAC,CAACC,SAAS,KAAK,UAAU,CAC7D,CAAC;QACD,IAAIL,OAAO,CAACjH,MAAM,KAAK,CAAC,EAAE;UACxBuG,QAAQ,CAAC,CAAC;UACV;QACF;QACA;QACA;QACAgB,OAAO,CAACC,UAAU,CAACP,OAAO,CAACQ,GAAG,CAAEJ,CAAC,IAAKA,CAAC,CAACK,QAAQ,CAAC,CAAC,CAACC,IAAI,CAAC,MAAM;UAC5D,IAAI,CAACjB,QAAQ,EAAEM,aAAa,CAAC,CAAC;QAChC,CAAC,CAAC;MACJ,CAAC;MAEDA,aAAa,CAAC,CAAC;IACjB,CAAC;IAEDL,KAAK,GAAGvC,MAAM,CAAC0C,qBAAqB,CAACF,KAAK,CAAC;IAE3C,OAAO,MAAM;MACXF,QAAQ,GAAG,IAAI;MACftC,MAAM,CAACwD,oBAAoB,CAACjB,KAAK,CAAC;IACpC,CAAC;EACH,CAAC,EAAE,CAAC7F,MAAM,EAAE4C,iBAAiB,CAAC,CAAC;;EAE/B;EACA;EACA,MAAMmE,oBAAoB,GAAG5M,MAAM,CAAC;IAAE6F,MAAM;IAAEE;EAAgB,CAAC,CAAC;EAChElG,SAAS,CAAC,MAAM;IACd,MAAMgN,IAAI,GAAGD,oBAAoB,CAAC3G,OAAO;IACzC2G,oBAAoB,CAAC3G,OAAO,GAAG;MAAEJ,MAAM;MAAEE;IAAgB,CAAC;IAC1D,IAAI,CAAC8G,IAAI,CAAChH,MAAM,IAAI,CAACA,MAAM,EAAE;IAC7B,IAAIgH,IAAI,CAAC9G,eAAe,KAAKA,eAAe,EAAE;IAC9CoC,iBAAiB,CAAClC,OAAO,GAAG;MAAE8E,WAAW,EAAEtC,iBAAiB,CAAC;IAAE,CAAsB,CAAC;EACxF,CAAC,EAAE,CAAC5C,MAAM,EAAEE,eAAe,EAAE0C,iBAAiB,CAAC,CAAC;;EAEhD;EACA;EACA,MAAMqE,aAAa,GAAG9M,MAAM,CAAC,KAAK,CAAC;EACnC,MAAM+M,UAAU,GAAGnN,WAAW,CAAC,MAAM;IACnC,IAAI,CAACkN,aAAa,CAAC7G,OAAO,EAAE;MAC1B6G,aAAa,CAAC7G,OAAO,GAAG,IAAI;MAC5BmC,cAAc,CAACnC,OAAO,GAAG;QAAE8E,WAAW,EAAEtC,iBAAiB,CAAC;MAAE,CAAmB,CAAC;IAClF;IACAJ,eAAe,CAACpC,OAAO,GAAG;MAAE8E,WAAW,EAAEtC,iBAAiB,CAAC;IAAE,CAAoB,CAAC;EACpF,CAAC,EAAE,CAACA,iBAAiB,CAAC,CAAC;EACvB,MAAMuE,aAAa,GAAGpN,WAAW,CAAC,MAAM;IACtC,IAAI,CAACkN,aAAa,CAAC7G,OAAO,EAAE;IAC5B6G,aAAa,CAAC7G,OAAO,GAAG,KAAK;IAC7BqC,YAAY,CAACrC,OAAO,GAAG;MAAE8E,WAAW,EAAEtC,iBAAiB,CAAC;IAAE,CAAiB,CAAC;EAC9E,CAAC,EAAE,CAACA,iBAAiB,CAAC,CAAC;EAEvB,MAAM;IAAEwE,QAAQ;IAAEC,YAAY;IAAEC;EAAY,CAAC,GAAG1M,aAAa,CAC3DqH,UAAU,EACVb,gBAAgB,EAChBpB,MAAM,EACNJ,WACF,CAAC;EACD0B,eAAe,CAAClB,OAAO,GAAGiH,YAAY;;EAEtC;EACA;EACA;EACArN,SAAS,CAAC,MAAM;IACd,MAAMuN,MAAM,GAAGnG,gBAAgB,CAAChB,OAAO;IACvC,IAAI,CAACmH,MAAM,EAAE;IACb;IACA;IACA;IACA;IACA;IACA,IAAI,CAACvH,MAAM,EAAE;IACb,MAAMwH,aAAa,GAAGD,MAAM,CAAClG,OAAO,CAAc,8BAA8B,CAAC;IAEjF,MAAMoG,UAAU,GAAG,aAAahN,WAAW,CAACiN,QAAQ,kBAAkBjN,WAAW,CAACkN,IAAI,CAACC,IAAI,CAAC,GAAG,CAAC,GAAG;IACnG,MAAMC,iBAAiB,GAAG,aAAapN,WAAW,CAACiN,QAAQ,kBAAkBjN,WAAW,CAACkN,IAAI,CAACC,IAAI,CAAC,GAAG,CAAC,GAAG;IAC1G,MAAME,SAAS,GAAG,sBAAsB;;IAExC;IACA;IACA;IACA;IACA,MAAMC,OAAO,GAAIC,IAAY,IAAK;MAChC,IAAI,CAACR,aAAa,EAAE;MACpB,MAAMpH,OAAO,GAAGoH,aAAa,CAAChL,KAAK,CAACyL,QAAQ;MAC5C,IAAI7H,OAAO,KAAK4H,IAAI,EAAE;MACtB,IAAIA,IAAI,KAAKF,SAAS,IAAI,CAAC1H,OAAO,EAAE;MACpC,IAAI,CAACA,OAAO,EAAE;QACZoH,aAAa,CAAChL,KAAK,CAACiL,UAAU,GAAG,EAAE;QACnCD,aAAa,CAAChL,KAAK,CAACyL,QAAQ,GAAGH,SAAS;QACxC;QACA,KAAKN,aAAa,CAAC3D,YAAY;MACjC;MACA2D,aAAa,CAAChL,KAAK,CAACiL,UAAU,GAAGI,iBAAiB;MAClDL,aAAa,CAAChL,KAAK,CAACyL,QAAQ,GAAGD,IAAI;IACrC,CAAC;IAED,IAAIV,WAAW,CAACpI,MAAM,KAAK,CAAC,EAAE;MAC5BqI,MAAM,CAAC/K,KAAK,CAACiL,UAAU,GAAGA,UAAU;MACpCF,MAAM,CAAC/K,KAAK,CAAC0L,SAAS,GAAG,EAAE;MAC3BH,OAAO,CAACD,SAAS,CAAC;MAClB;IACF;;IAEA;IACA;IACA;IACA;IACA,MAAMK,cAAc,GAAGA,CAAA,KAAM;MAC3B,MAAMC,UAAU,GAAGC,UAAU,CAACd,MAAM,CAAC/K,KAAK,CAAC8L,gBAAgB,CAAC,qBAAqB,CAAC,CAAC,IAAI,CAAC;MACxF,MAAMC,IAAI,GAAGjB,WAAW,CAAC,CAAC,CAAC,EAAEkB,OAAO,CAACpI,OAAO;MAC5C,IAAI,CAACmI,IAAI,EAAE,OAAOH,UAAU;MAC5B,MAAMK,SAAS,GAAGJ,UAAU,CAACE,IAAI,CAAC/L,KAAK,CAAC8L,gBAAgB,CAAC,qBAAqB,CAAC,CAAC,IAAI,CAAC;MACrF,OAAOjJ,IAAI,CAACmF,GAAG,CAAC4D,UAAU,EAAEK,SAAS,CAAC;IACxC,CAAC;;IAED;IACA;IACA;IACA;IACA;IACA;IACA,MAAMC,aAAa,GAAGA,CAAA,KAAM;MAC1B,MAAMC,IAAI,GAAG/I,WAAW,GAAG0H,WAAW,CAACsB,IAAI,CAAE5J,CAAC,IAAKA,CAAC,CAAC6J,cAAc,CAACzI,OAAO,CAAC,GAAGuB,SAAS;MACxF,IAAI,CAACgH,IAAI,EAAE;QACTZ,OAAO,CAACD,SAAS,CAAC;QAClB;MACF;MACA,MAAMgB,WAAW,GAAGH,IAAI,CAACH,OAAO,CAACpI,OAAO;MACxC,MAAM2I,YAAY,GAAGD,WAAW,EAAEzH,OAAO,CAAc,8BAA8B,CAAC;MACtF,IAAI,CAACmG,aAAa,IAAI,CAACsB,WAAW,IAAI,CAACC,YAAY,EAAE;MACrD,MAAMC,KAAK,GAAGX,UAAU,CAACS,WAAW,CAACtM,KAAK,CAAC8L,gBAAgB,CAAC,qBAAqB,CAAC,CAAC,IAAI,CAAC;MACxF,MAAMW,cAAc,GAAGZ,UAAU,CAACU,YAAY,CAACvM,KAAK,CAAC0M,MAAM,CAAC,IAAI,CAAC;MACjE,MAAMC,SAAS,GAAGd,UAAU,CAACU,YAAY,CAACvM,KAAK,CAAC4M,QAAQ,CAAC,IAAI9F,MAAM,CAAC+F,UAAU;MAC9E,MAAMC,QAAQ,GAAG,CAAChG,MAAM,CAAC+F,UAAU,GAAGF,SAAS,IAAI,CAAC;MACpD,MAAMI,SAAS,GAAG,CAACjG,MAAM,CAAC+F,UAAU,GAAGF,SAAS,IAAI,CAAC;MACrD,MAAMK,UAAU,GAAGlG,MAAM,CAACC,WAAW,GAAG0F,cAAc;MACtD,MAAMQ,IAAI,GAAGjC,aAAa,CAACxE,qBAAqB,CAAC,CAAC;MAClD,MAAMC,GAAG,GAAG5D,IAAI,CAACmF,GAAG,CAAC,CAAC,EAAEwE,KAAK,GAAGS,IAAI,CAACxG,GAAG,CAAC;MACzC,MAAMyG,IAAI,GAAGrK,IAAI,CAACmF,GAAG,CAAC,CAAC,EAAE8E,QAAQ,GAAGG,IAAI,CAACC,IAAI,CAAC;MAC9C,MAAMC,KAAK,GAAGtK,IAAI,CAACmF,GAAG,CAAC,CAAC,EAAEiF,IAAI,CAACE,KAAK,GAAGJ,SAAS,CAAC;MACjD,MAAML,MAAM,GAAG7J,IAAI,CAACmF,GAAG,CAAC,CAAC,EAAEiF,IAAI,CAACP,MAAM,GAAGM,UAAU,CAAC;MACpD,MAAMI,MAAM,GAAGrN,YAAY,IAAIvB,qBAAqB;MACpD+M,OAAO,CAAC,SAAS9E,GAAG,MAAM0G,KAAK,MAAMT,MAAM,MAAMQ,IAAI,YAAYE,MAAM,KAAK,CAAC;IAC/E,CAAC;IAED,MAAMC,KAAK,GAAGA,CAAA,KAAM;MAClBnB,aAAa,CAAC,CAAC;MACf;MACA;MACA;MACA,MAAMoB,KAAK,GAAGxC,WAAW,CAAC,CAAC,CAAC;MAC5B,IAAI1H,WAAW,IAAIkK,KAAK,IAAI,CAACA,KAAK,CAACjB,cAAc,CAACzI,OAAO,EAAE;QACzDmH,MAAM,CAAC/K,KAAK,CAACiL,UAAU,GAAGA,UAAU;QACpCF,MAAM,CAAC/K,KAAK,CAAC0L,SAAS,GAAG,EAAE;QAC3B;MACF;MACA,MAAM6B,OAAO,GAAG5B,cAAc,CAAC,CAAC;MAChC,MAAM6B,KAAK,GAAGzC,MAAM,CAAC/K,KAAK,CAAC0L,SAAS,CAAC8B,KAAK,CAAC,uCAAuC,CAAC;MACnF,MAAMC,QAAQ,GAAGD,KAAK,GAAG3B,UAAU,CAAC2B,KAAK,CAAC,CAAC,CAAE,CAAC,GAAG,CAAC;MAClD,IAAI3K,IAAI,CAAC6K,GAAG,CAACD,QAAQ,GAAGF,OAAO,CAAC,GAAG,GAAG,EAAE;MACxCxC,MAAM,CAAC/K,KAAK,CAACiL,UAAU,GAAGA,UAAU;MACpCF,MAAM,CAAC/K,KAAK,CAAC0L,SAAS,GAAG,kBAAkB6B,OAAO,QAAQ;IAC5D,CAAC;IAED,MAAMI,GAAG,GAAGnE,qBAAqB,CAAC6D,KAAK,CAAC;IACxC;IACA;IACA;IACA,MAAMO,QAAQ,GAAG,IAAIC,gBAAgB,CAACR,KAAK,CAAC;IAC5CO,QAAQ,CAACE,OAAO,CAAC/C,MAAM,EAAE;MAAEgD,UAAU,EAAE,IAAI;MAAEC,eAAe,EAAE,CAAC,OAAO;IAAE,CAAC,CAAC;IAE1E,OAAO,MAAM;MACX1D,oBAAoB,CAACqD,GAAG,CAAC;MACzBC,QAAQ,CAACK,UAAU,CAAC,CAAC;IACvB,CAAC;EACH,CAAC,EAAE,CAACnD,WAAW,EAAEpH,eAAe,EAAE3D,YAAY,EAAEqD,WAAW,EAAEI,MAAM,CAAC,CAAC;;EAErE;EACA;EACA;EACA;EACA;EACA,MAAMwF,aAAa,GAAGrL,MAAM,CAACyE,UAAU,CAAC;EACxC,MAAM+G,YAAY,GAAGxL,MAAM,CAAC0E,SAAS,CAAC;EACtC,MAAM0G,cAAc,GAAGpL,MAAM,CAACuE,WAAW,CAAC;EAC1C,MAAMgH,aAAa,GAAGvL,MAAM,CAACwE,UAAU,CAAC;EACxC3E,SAAS,CAAC,MAAM;IACdwL,aAAa,CAACpF,OAAO,GAAGxB,UAAU;IAClC+G,YAAY,CAACvF,OAAO,GAAGvB,SAAS;IAChC0G,cAAc,CAACnF,OAAO,GAAG1B,WAAW;IACpCgH,aAAa,CAACtF,OAAO,GAAGzB,UAAU;EACpC,CAAC,CAAC;EAEF,MAAM+L,sBAAsB,GAAGvQ,MAAM,CAAC,CAAC,CAAC;EACxCH,SAAS,CAAC,MAAM;IACd,MAAM2Q,SAAS,GAAGD,sBAAsB,CAACtK,OAAO;IAChD,MAAMgD,KAAK,GAAGkE,WAAW,CAACpI,MAAM;IAChCwL,sBAAsB,CAACtK,OAAO,GAAGgD,KAAK;IACtC,IAAI,CAACpD,MAAM,EAAE;IACb,MAAM4K,MAAM,GAAGxH,KAAK,GAAG,CAAC,IAAIuH,SAAS,KAAK,CAAC;IAC3C,MAAME,IAAI,GAAGzH,KAAK,KAAK,CAAC,IAAIuH,SAAS,GAAG,CAAC;IACzC,IAAI,CAACC,MAAM,IAAI,CAACC,IAAI,EAAE;IAEtB,IAAID,MAAM,EAAE;MACVpF,aAAa,CAACpF,OAAO,GAAG;QAAE8E,WAAW,EAAE;MAAK,CAAkB,CAAC;IACjE,CAAC,MAAM;MACLK,cAAc,CAACnF,OAAO,GAAG;QAAE8E,WAAW,EAAE;MAAK,CAAmB,CAAC;IACnE;IAEA,MAAMa,MAAM,GAAG3E,gBAAgB,CAAChB,OAAO;IACvC,IAAI,CAAC2F,MAAM,EAAE;IAEb,IAAIH,QAAQ,GAAG,KAAK;IACpB,MAAMH,QAAQ,GAAGA,CAAA,KAAM;MACrB,IAAIG,QAAQ,EAAE;MACd,IAAIgF,MAAM,EAAEjF,YAAY,CAACvF,OAAO,GAAG;QAAE8E,WAAW,EAAE;MAAK,CAAiB,CAAC,CAAC,KACrEQ,aAAa,CAACtF,OAAO,GAAG;QAAE8E,WAAW,EAAE;MAAK,CAAkB,CAAC;IACtE,CAAC;IACD,MAAMW,KAAK,GAAGvC,MAAM,CAAC0C,qBAAqB,CAAC,MAAM;MAC/C,IAAIJ,QAAQ,EAAE;MACd;;MAEAG,MAAM,CAAClC,YAAY;MACnB,MAAMsC,OAAO,GAAGJ,MAAM,CAACO,aAAa,CAAC,CAAC,CAACvH,MAAM,CAAEwH,CAAC,IAAKA,CAAC,CAACC,SAAS,KAAK,UAAU,CAAC;MAChF,IAAIL,OAAO,CAACjH,MAAM,KAAK,CAAC,EAAE;QACxBuG,QAAQ,CAAC,CAAC;QACV;MACF;MACAgB,OAAO,CAACC,UAAU,CAACP,OAAO,CAACQ,GAAG,CAAEJ,CAAC,IAAKA,CAAC,CAACK,QAAQ,CAAC,CAAC,CAACC,IAAI,CAAC,MAAM;QAC5D,IAAI,CAACjB,QAAQ,EAAEH,QAAQ,CAAC,CAAC;MAC3B,CAAC,CAAC;IACJ,CAAC,CAAC;IAEF,OAAO,MAAM;MACXG,QAAQ,GAAG,IAAI;MACftC,MAAM,CAACwD,oBAAoB,CAACjB,KAAK,CAAC;IACpC,CAAC;EACH,CAAC,EAAE,CAAC7F,MAAM,EAAEsH,WAAW,CAACpI,MAAM,CAAC,CAAC;EAEhC,MAAM4L,qBAAqB,GAAGvO,YAAY,IAAIvB,qBAAqB;;EAEnE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA,MAAM+P,UAAU,GACdlN,SAAS,GAAG,CAAC,GACT,iBAAiB,CAACA,SAAS,MAAMA,SAAS,GAAG,CAAC,yBAAyB,GACvE8D,SAAS;EAEf,MAAMqJ,kBAAkB,GAAG9Q,OAAO,CAChC,OAAO;IACL6I,QAAQ,EAAE,OAAO;IACjBE,GAAG,EAAE,CAAC;IACNyG,IAAI,EAAE,CAAC;IACPC,KAAK,EAAE,CAAC;IACRT,MAAM,EAAE,CAAC;IACT+B,OAAO,EAAE,MAAM;IACfC,aAAa,EAAE,QAAQ;IACvBC,mBAAmB,EAAEL,qBAAqB;IAC1CM,oBAAoB,EAAEN,qBAAqB;IAC3CrO,eAAe,EAAEA,eAAyB;IAC1C;IACA;IACA4O,QAAQ,EAAE,QAAQ;IAClB;IACAC,aAAa,EAAExN,eAAe,KAAK,WAAW,GAAG,kCAAkC,GAAG;EACxF,CAAC,CAAC,EACF,CAACrB,eAAe,EAAEqO,qBAAqB,EAAEhN,eAAe,CAC1D,CAAC;EAED,MAAMyN,mBAAmB,GACvBzL,WAAW,KAAK,MAAM,GAAG5E,0BAA0B,GAAGC,2BAA2B;EAEnF,MAAMqQ,aAAa,GAAGxO,cAAc,EAAEyC,MAAM,IAAIrE,sBAAsB;;EAEtE;EACA;EACA;EACA,MAAMqQ,gBAAgB,GAAGvR,OAAO,CAC9B,OAAO;IACL6I,QAAQ,EAAE,OAAO;IACjB2G,IAAI,EAAE,CAAC;IACPC,KAAK,EAAE,CAAC;IACRT,MAAM,EAAE,CAAC;IACT;IACA;IACAwC,aAAa,EAAE;EACjB,CAAC,CAAC,EACF,EACF,CAAC;;EAED;EACA;EACA;EACA;EACA;EACA;;EAEA;EACA;EACA;EACA;EACA;EACA,MAAM,CAACC,qBAAqB,EAAEC,wBAAwB,CAAC,GAAGxR,QAAQ,CAAC,CAAC,CAAC;EAErE,MAAMyR,yBAAyB,GAAG3R,OAAO,CAAqB,MAAM;IAClE,IAAIyC,gBAAgB,KAAKgF,SAAS,EAAE,OAAOhF,gBAAgB;IAC3D,IAAI,CAACiD,WAAW,EAAE,OAAO+B,SAAS;IAClC,MAAMrC,GAAG,GAAGI,YAAY,GAAGnE,+BAA+B;IAC1D,MAAMiJ,GAAG,GAAGnF,IAAI,CAACmF,GAAG,CAAClF,GAAG,EAAEI,YAAY,GAAG,CAAC,GAAG9B,cAAc,CAAC;IAC5D,IAAI+N,qBAAqB,IAAI,CAAC,EAAE,OAAOrM,GAAG;IAC1C,OAAOD,IAAI,CAACmF,GAAG,CAAClF,GAAG,EAAED,IAAI,CAACC,GAAG,CAACqM,qBAAqB,EAAEnH,GAAG,CAAC,CAAC;EAC5D,CAAC,EAAE,CAAC7H,gBAAgB,EAAEiD,WAAW,EAAEF,YAAY,EAAE9B,cAAc,EAAE+N,qBAAqB,CAAC,CAAC;;EAExF;EACA;EACA;EACA;EACA,MAAMG,uBAAuB,GAAG5R,OAAO,CAAC,MAAM;IAC5C,IAAI,CAAC0F,WAAW,EAAE,OAAOhC,cAAc;IACvC,MAAM4G,GAAG,GAAGnF,IAAI,CAACmF,GAAG,CAAC,CAAC,EAAE9E,YAAY,GAAG,CAAC,GAAG9B,cAAc,CAAC;IAC1D,MAAMmO,aAAa,GACjBJ,qBAAqB,GAAG,CAAC,GACrBtM,IAAI,CAACC,GAAG,CAACqM,qBAAqB,EAAEnH,GAAG,CAAC,GACnCqH,yBAAyB,IAAI,CAAE;IACtC,OAAOxM,IAAI,CAACmF,GAAG,CAAC,CAAC,EAAE,CAAC9E,YAAY,GAAGqM,aAAa,IAAI,CAAC,CAAC;EACxD,CAAC,EAAE,CAACnM,WAAW,EAAEF,YAAY,EAAE9B,cAAc,EAAE+N,qBAAqB,EAAEE,yBAAyB,CAAC,CAAC;;EAEjG;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA,MAAMG,YAAY,GAAG9R,OAAO,CAAkC,MAAM;IAClE;IACA;IACA;IACA,MAAMkP,QAAQ,GAAGzJ,mBAAmB,GAChCjC,YAAY,KAAK,MAAM,GACrBlC,wBAAwB,GACvBoB,eAAe,IAAInB,iBAAkB,GACxCkG,SAAS;IAEb,MAAMsK,YAAY,GAAG7C,QAAQ,IAAI,IAAI,IAAIvJ,iBAAiB;IAC1D,IAAI,CAACoM,YAAY,IAAI,CAAClB,UAAU,EAAE,OAAOpJ,SAAS;IAElD,MAAMqG,IAAyB,GAAG,CAAC,CAAC;IACpC,IAAI+C,UAAU,EAAE/C,IAAI,CAACjJ,MAAM,GAAGgM,UAAU;IACxC,IAAI,CAACkB,YAAY,EAAE,OAAOjE,IAAI;IAE9B,IAAIkE,UAA2B;IAC/B,IAAIC,WAA4B;IAChC,IAAIvM,WAAW,EAAE;MACfsM,UAAU,GAAG,MAAM;MACnBC,WAAW,GAAG,MAAM;IACtB,CAAC,MAAM,IAAI/C,QAAQ,IAAI,IAAI,EAAE;MAC3B8C,UAAU,GAAGpP,YAAY;MACzBqP,WAAW,GAAGrP,YAAY;IAC5B,CAAC,MAAM;MACLoP,UAAU,GAAGrP,MAAM,KAAK,MAAM,GAAGC,YAAY,GAAG,MAAM;MACtDqP,WAAW,GAAGtP,MAAM,KAAK,OAAO,GAAGC,YAAY,GAAG,MAAM;IAC1D;IAEA,IAAIsM,QAAQ,IAAI,IAAI,EAAEpB,IAAI,CAACoB,QAAQ,GAAGA,QAAQ;IAC9CpB,IAAI,CAACkE,UAAU,GAAGA,UAAU;IAC5BlE,IAAI,CAACmE,WAAW,GAAGA,WAAW;IAC9B,OAAOnE,IAAI;EACb,CAAC,EAAE,CACDrI,mBAAmB,EACnBC,WAAW,EACXhD,eAAe,EACfc,YAAY,EACZb,MAAM,EACNC,YAAY,EACZ+C,iBAAiB,EACjBkL,UAAU,CACX,CAAC;;EAEF;EACA;EACA;EACA;EACA,MAAMqB,WAAW,GAAGlS,OAAO,CACzB,OAAO;IACL6I,QAAQ,EAAE,UAAU;IACpBE,GAAG,EAAEjG,cAAc,EAAEqP,SAAS,IAAIhR,0BAA0B;IAC5DqO,IAAI,EAAE,KAAK;IACXxB,SAAS,EAAE,kBAAkB;IAC7BzI,MAAM,EAAE+L,aAAa;IACrBjM,KAAK,EAAEvC,cAAc,EAAEuC,KAAK,IAAIjE,qBAAqB;IACrDgR,YAAY,EAAEtP,cAAc,EAAET,YAAY,IAAIiP,aAAa,GAAG,CAAC;IAC/D/O,eAAe,EAAGO,cAAc,EAAEuP,KAAK,IAAIhB,mBAA8B;IACzEiB,OAAO,EAAE,CAAC;IACV;IACA;IACA;IACAC,MAAM,EAAE;EACV,CAAC,CAAC,EACF,CAACzP,cAAc,EAAEwO,aAAa,EAAED,mBAAmB,CACrD,CAAC;EAED,oBACE5P,IAAA,CAACnB,MAAM,CAACkS,IAAI;IACVhM,IAAI,EAAEV,MAAO;IACb2M,YAAY,EAAElM,gBAAiB;IAC/BzC,gBAAgB,EAAEiH,oBAAqB;IACvC2H,MAAM,EAAE1F,UAAW;IACnB2F,SAAS,EAAE1F,aAAc;IACzB9K,WAAW,EAAEA,WAAY;IACzBC,SAAS,EAAEA,SAAU;IACrBwQ,gBAAgB,EAAE,KAAM;IACxBC,KAAK,EAAE7P,MAAO;IACd8P,MAAM,EAAE5F,QAAS;IACjBzJ,QAAQ,EAAEkC,iBAAkB;IAC5BjC,cAAc,EAAEkO,uBAAwB;IACxCmB,cAAc,EAAEnC,qBAAsB;IACtCnO,gBAAgB,EAAEkP,yBAA0B;IAC5CqB,eAAe,EAAEnP,qBAAsB;IACvCoP,oBAAoB,EAAEnB,YAAa;IACnCoB,qBAAqB,EAAExB,wBAAyB;IAChD1L,eAAe,EAAEA,eAAgB;IACjCC,kBAAkB,EAAEI,wBAAyB;IAAA,GACzCtB,eAAe;IAAA9C,QAAA,eAEnBN,KAAA,CAACrB,MAAM,CAAC6S,MAAM;MAACC,SAAS,EAAE3M,eAAe,IAAIgB,SAAU;MAAAxF,QAAA,gBACrDR,IAAA,CAACnB,MAAM,CAAC+S,OAAO;QAAC/Q,KAAK,EAAEgR;MAAa,CAAE,CAAC,eACvC3R,KAAA,CAACrB,MAAM,CAACiT,OAAO;QACbvR,GAAG,EAAEkF,gBAAiB;QACtB5E,KAAK,EAAEwO,kBAAmB;QAC1B0C,oBAAoB,EAAE9M,wBAAyB;QAC/C+M,gBAAgB,EACdpQ,MAAM,gBACJ5B,IAAA;UAAKa,KAAK,EAAEiP,gBAAiB;UAAAtP,QAAA,eAC3BR,IAAA,CAACtB,IAAI;YAACmC,KAAK,EAAEgB,WAAY;YAAArB,QAAA,EACtB,aAAArC,cAAc,CAACyD,MAAM,CAAC,GAAGA,MAAM,gBAAG3D,aAAa,CAAC2D,MAAM;UAAC,CACpD;QAAC,CACJ,CAAC,GACJoE,SACL;QAAAxF,QAAA,gBAEDR,IAAA,CAACnB,MAAM,CAACoT,KAAK;UAACpR,KAAK,EAAEqR,mBAAoB;UAAA1R,QAAA,EAAC;QAAK,CAAc,CAAC,EAC7DY,OAAO,iBAAIpB,IAAA,CAACnB,MAAM,CAACsT,MAAM;UAACtR,KAAK,EAAE4P;QAAY,CAAE,CAAC,EAChD3O,UAAU;QAAA;QACT;QACA;QACA;QACA;QACA;QACA5B,KAAA;UAAKW,KAAK,EAAEuR,qBAAsB;UAAA5R,QAAA,GAC/BkB,MAAM,iBACL1B,IAAA,CAACtB,IAAI;YAACmC,KAAK,EAAEc,WAAY;YAAAnB,QAAA,EACtB,aAAArC,cAAc,CAACuD,MAAM,CAAC,GAAGA,MAAM,gBAAGzD,aAAa,CAACyD,MAAM;UAAC,CACpD,CACP,eACD1B,IAAA;YAAKa,KAAK,EAAEwR,wBAAyB;YAAA7R,QAAA,eACnCR,IAAA,CAACtB,IAAI;cAACmC,KAAK,EAAEA,KAAM;cAAAL,QAAA,EAAEA;YAAQ,CAAO;UAAC,CAClC,CAAC;QAAA,CACH,CAAC,gBAENN,KAAA,CAAAE,SAAA;UAAAI,QAAA,GACGkB,MAAM,iBACL1B,IAAA,CAACtB,IAAI;YAACmC,KAAK,EAAEc,WAAY;YAAAnB,QAAA,EACtB,aAAArC,cAAc,CAACuD,MAAM,CAAC,GAAGA,MAAM,gBAAGzD,aAAa,CAACyD,MAAM;UAAC,CACpD,CACP,eACD1B,IAAA,CAACtB,IAAI;YAACmC,KAAK,EAAEA,KAAM;YAAAL,QAAA,EAAEA;UAAQ,CAAO,CAAC;QAAA,CACrC,CACH;MAAA,CACa,CAAC;IAAA,CACJ;EAAC,CACL,CAAC;AAElB,CAAC,CAAC;AAEF,MAAMqR,YAAiC,GAAG;EACxCzK,QAAQ,EAAE,OAAO;EACjBkL,KAAK,EAAE,CAAC;EACRxR,eAAe,EAAE;AACnB,CAAC;AAED,MAAMsR,qBAA0C,GAAG;EACjDhL,QAAQ,EAAE,UAAU;EACpBE,GAAG,EAAE,CAAC;EACNyG,IAAI,EAAE,CAAC;EACPC,KAAK,EAAE,CAAC;EACRlK,MAAM,EAAE,4CAA4C;EACpDwL,OAAO,EAAE,MAAM;EACfC,aAAa,EAAE;AACjB,CAAC;AAED,MAAM8C,wBAA6C,GAAG;EACpDE,IAAI,EAAE,CAAC;EACPC,SAAS,EAAE,CAAC;EACZC,SAAS,EAAE,MAAM;EACjBC,kBAAkB,EAAE,SAAS;EAC7BC,WAAW,EAAE;AACf,CAAC;AAED,MAAMT,mBAAwC,GAAG;EAC/C9K,QAAQ,EAAE,UAAU;EACpBxD,KAAK,EAAE,CAAC;EACRE,MAAM,EAAE,CAAC;EACT8O,OAAO,EAAE,CAAC;EACVC,MAAM,EAAE,CAAC,CAAC;EACVnD,QAAQ,EAAE,QAAQ;EAClBoD,IAAI,EAAE,kBAAkB;EACxBC,UAAU,EAAE,QAAQ;EACpBC,MAAM,EAAE;AACV,CAAC;AAED,MAAMC,mBAAmB,GACvB,+EAA+E;AAEjF,OAAO,MAAMC,SAAS,GAAG7S,kBAAwE;AAEjG,MAAM8S,YAAY,GAAG,MAAAA,CAAA,KAA4B;EAC/C,MAAM,IAAIlN,KAAK,CAACgN,mBAAmB,CAAC;AACtC,CAAC;AAEDC,SAAS,CAACrN,OAAO,GAAGsN,YAAY;AAChCD,SAAS,CAAChN,OAAO,GAAGiN,YAAY;AAChCD,SAAS,CAAC9M,YAAY,GAAG+M,YAAY;AACrCD,SAAS,CAAC/M,MAAM,GAAGgN,YAAY;AAC/BD,SAAS,CAACE,UAAU,GAAGD,YAAY","ignoreList":[]}
|
|
@@ -117,11 +117,14 @@ export function useRegisterSheet(name, ref) {
|
|
|
117
117
|
* Registers the sheet in the open stack while `isOpen` is true and returns
|
|
118
118
|
* live data used by each sheet to render stacked visuals and dismiss children.
|
|
119
119
|
*/
|
|
120
|
-
export function useSheetStack(ref, nodeRef, isOpen) {
|
|
120
|
+
export function useSheetStack(ref, nodeRef, isOpen, isFormSheet) {
|
|
121
121
|
const ctx = useContext(SheetContext);
|
|
122
|
+
const isFormSheetRef = useRef(isFormSheet);
|
|
123
|
+
isFormSheetRef.current = isFormSheet;
|
|
122
124
|
const entry = useMemo(() => ({
|
|
123
125
|
ref,
|
|
124
|
-
nodeRef
|
|
126
|
+
nodeRef,
|
|
127
|
+
isFormSheetRef
|
|
125
128
|
}), [ref, nodeRef]);
|
|
126
129
|
useEffect(() => {
|
|
127
130
|
if (!ctx || !isOpen) return;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["createContext","useCallback","useContext","useEffect","useLayoutEffect","useMemo","useRef","useSyncExternalStore","jsx","_jsx","jsxs","_jsxs","SheetContext","NO_PROVIDER_ERROR","EMPTY_STACK","Object","freeze","TrueSheetProvider","children","namedSheetsRef","Map","stackRef","listenersRef","Set","portalContainer","document","createElement","anchorRef","anchor","current","appendChild","parentNode","removeChild","value","notify","forEach","listener","registerByName","name","ref","set","get","delete","resolveByName","methods","Error","pushOpen","entry","some","e","popOpen","idx","findIndex","slice","subscribeStack","add","getStackSnapshot","Provider","usePortalContainer","ctx","useTrueSheet","reject","present","resize","dismiss","dismissStack","dismissAll","index","animated","stack","Promise","all","reverse","map","useRegisterSheet","useSheetStack","nodeRef","isOpen","subscribe","getSnapshot","stackIndex","isNested","descendants","dismissAbove","snapshot","above"],"sourceRoot":"../../src","sources":["TrueSheetProvider.web.tsx"],"mappings":";;AAAA,SACEA,aAAa,EACbC,WAAW,EACXC,UAAU,EACVC,SAAS,EACTC,eAAe,EACfC,OAAO,EACPC,MAAM,EACNC,oBAAoB,QAGf,OAAO;AAAC,SAAAC,GAAA,IAAAC,IAAA,EAAAC,IAAA,IAAAC,KAAA;
|
|
1
|
+
{"version":3,"names":["createContext","useCallback","useContext","useEffect","useLayoutEffect","useMemo","useRef","useSyncExternalStore","jsx","_jsx","jsxs","_jsxs","SheetContext","NO_PROVIDER_ERROR","EMPTY_STACK","Object","freeze","TrueSheetProvider","children","namedSheetsRef","Map","stackRef","listenersRef","Set","portalContainer","document","createElement","anchorRef","anchor","current","appendChild","parentNode","removeChild","value","notify","forEach","listener","registerByName","name","ref","set","get","delete","resolveByName","methods","Error","pushOpen","entry","some","e","popOpen","idx","findIndex","slice","subscribeStack","add","getStackSnapshot","Provider","usePortalContainer","ctx","useTrueSheet","reject","present","resize","dismiss","dismissStack","dismissAll","index","animated","stack","Promise","all","reverse","map","useRegisterSheet","useSheetStack","nodeRef","isOpen","isFormSheet","isFormSheetRef","subscribe","getSnapshot","stackIndex","isNested","descendants","dismissAbove","snapshot","above"],"sourceRoot":"../../src","sources":["TrueSheetProvider.web.tsx"],"mappings":"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","ignoreList":[]}
|