@tamagui/sheet 3.0.0-beta.922.1 → 3.0.0
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/dist/cjs/Sheet.cjs +48 -16
- package/dist/cjs/Sheet.native.cjs +46 -17
- package/dist/cjs/Sheet.native.js +46 -17
- package/dist/cjs/Sheet.native.js.map +1 -1
- package/dist/cjs/SheetDragSurface.cjs +50 -0
- package/dist/{jsx/GestureDetectorWrapper.native.js → cjs/SheetDragSurface.native.cjs} +24 -12
- package/dist/cjs/{GestureDetectorWrapper.native.js → SheetDragSurface.native.js} +25 -11
- package/dist/cjs/SheetDragSurface.native.js.map +1 -0
- package/dist/cjs/SheetImplementationCustom.cjs +41 -58
- package/dist/cjs/SheetImplementationCustom.native.cjs +43 -59
- package/dist/cjs/SheetImplementationCustom.native.js +43 -59
- package/dist/cjs/SheetImplementationCustom.native.js.map +1 -1
- package/dist/cjs/SheetScrollView.cjs +15 -3
- package/dist/cjs/SheetScrollView.native.cjs +17 -4
- package/dist/cjs/SheetScrollView.native.js +17 -4
- package/dist/cjs/SheetScrollView.native.js.map +1 -1
- package/dist/cjs/nativeSheet.cjs +3 -59
- package/dist/cjs/nativeSheet.native.cjs +70 -58
- package/dist/cjs/nativeSheet.native.js +70 -58
- package/dist/cjs/nativeSheet.native.js.map +1 -1
- package/dist/cjs/stableViewportHeight.cjs +27 -0
- package/dist/cjs/stableViewportHeight.native.cjs +29 -0
- package/dist/cjs/stableViewportHeight.native.js +31 -0
- package/dist/cjs/stableViewportHeight.native.js.map +1 -0
- package/dist/cjs/useSheetOffscreenSize.cjs +3 -1
- package/dist/cjs/useSheetOffscreenSize.native.cjs +3 -2
- package/dist/cjs/useSheetOffscreenSize.native.js +3 -2
- package/dist/cjs/useSheetOffscreenSize.native.js.map +1 -1
- package/dist/cjs/useSheetOpenState.cjs +13 -6
- package/dist/cjs/useSheetOpenState.native.cjs +15 -5
- package/dist/cjs/useSheetOpenState.native.js +15 -5
- package/dist/cjs/useSheetOpenState.native.js.map +1 -1
- package/dist/cjs/useSheetProviderProps.cjs +5 -94
- package/dist/cjs/useSheetProviderProps.native.cjs +5 -103
- package/dist/cjs/useSheetProviderProps.native.js +5 -103
- package/dist/cjs/useSheetProviderProps.native.js.map +1 -1
- package/dist/cjs/useSheetState.cjs +120 -0
- package/dist/cjs/useSheetState.native.cjs +131 -0
- package/dist/cjs/useSheetState.native.js +133 -0
- package/dist/cjs/useSheetState.native.js.map +1 -0
- package/dist/esm/Sheet.mjs +48 -15
- package/dist/esm/Sheet.mjs.map +1 -1
- package/dist/esm/Sheet.native.js +46 -17
- package/dist/esm/Sheet.native.js.map +1 -1
- package/dist/esm/SheetDragSurface.mjs +25 -0
- package/dist/esm/SheetDragSurface.mjs.map +1 -0
- package/dist/esm/SheetDragSurface.native.js +34 -0
- package/dist/esm/SheetDragSurface.native.js.map +1 -0
- package/dist/esm/SheetImplementationCustom.mjs +39 -56
- package/dist/esm/SheetImplementationCustom.mjs.map +1 -1
- package/dist/esm/SheetImplementationCustom.native.js +41 -57
- package/dist/esm/SheetImplementationCustom.native.js.map +1 -1
- package/dist/esm/SheetScrollView.mjs +16 -4
- package/dist/esm/SheetScrollView.mjs.map +1 -1
- package/dist/esm/SheetScrollView.native.js +18 -5
- package/dist/esm/SheetScrollView.native.js.map +1 -1
- package/dist/esm/nativeSheet.mjs +3 -60
- package/dist/esm/nativeSheet.mjs.map +1 -1
- package/dist/esm/nativeSheet.native.js +70 -58
- package/dist/esm/nativeSheet.native.js.map +1 -1
- package/dist/esm/stableViewportHeight.mjs +8 -0
- package/dist/esm/stableViewportHeight.mjs.map +1 -0
- package/dist/esm/stableViewportHeight.native.js +8 -0
- package/dist/esm/stableViewportHeight.native.js.map +1 -0
- package/dist/esm/useKeyboardControllerSheet.native.js +0 -5
- package/dist/esm/useSheetOffscreenSize.mjs +3 -1
- package/dist/esm/useSheetOffscreenSize.mjs.map +1 -1
- package/dist/esm/useSheetOffscreenSize.native.js +3 -2
- package/dist/esm/useSheetOffscreenSize.native.js.map +1 -1
- package/dist/esm/useSheetOpenState.mjs +14 -7
- package/dist/esm/useSheetOpenState.mjs.map +1 -1
- package/dist/esm/useSheetOpenState.native.js +16 -6
- package/dist/esm/useSheetOpenState.native.js.map +1 -1
- package/dist/esm/useSheetProviderProps.mjs +5 -88
- package/dist/esm/useSheetProviderProps.mjs.map +1 -1
- package/dist/esm/useSheetProviderProps.native.js +5 -97
- package/dist/esm/useSheetProviderProps.native.js.map +1 -1
- package/dist/esm/useSheetState.mjs +95 -0
- package/dist/esm/useSheetState.mjs.map +1 -0
- package/dist/esm/useSheetState.native.js +104 -0
- package/dist/esm/useSheetState.native.js.map +1 -0
- package/dist/jsx/Sheet.mjs +48 -15
- package/dist/jsx/Sheet.mjs.map +1 -1
- package/dist/jsx/Sheet.native.cjs +46 -17
- package/dist/jsx/Sheet.native.js +46 -17
- package/dist/jsx/Sheet.native.js.map +1 -1
- package/dist/jsx/SheetDragSurface.mjs +25 -0
- package/dist/jsx/SheetDragSurface.mjs.map +1 -0
- package/dist/{cjs/GestureDetectorWrapper.native.cjs → jsx/SheetDragSurface.native.cjs} +24 -10
- package/dist/jsx/{GestureDetectorWrapper.native.cjs → SheetDragSurface.native.js} +26 -10
- package/dist/jsx/SheetDragSurface.native.js.map +1 -0
- package/dist/jsx/SheetImplementationCustom.mjs +39 -56
- package/dist/jsx/SheetImplementationCustom.mjs.map +1 -1
- package/dist/jsx/SheetImplementationCustom.native.cjs +43 -59
- package/dist/jsx/SheetImplementationCustom.native.js +43 -59
- package/dist/jsx/SheetImplementationCustom.native.js.map +1 -1
- package/dist/jsx/SheetScrollView.mjs +16 -4
- package/dist/jsx/SheetScrollView.mjs.map +1 -1
- package/dist/jsx/SheetScrollView.native.cjs +17 -4
- package/dist/jsx/SheetScrollView.native.js +17 -4
- package/dist/jsx/SheetScrollView.native.js.map +1 -1
- package/dist/jsx/nativeSheet.mjs +3 -60
- package/dist/jsx/nativeSheet.mjs.map +1 -1
- package/dist/jsx/nativeSheet.native.cjs +70 -58
- package/dist/jsx/nativeSheet.native.js +70 -58
- package/dist/jsx/nativeSheet.native.js.map +1 -1
- package/dist/jsx/stableViewportHeight.mjs +8 -0
- package/dist/jsx/stableViewportHeight.mjs.map +1 -0
- package/dist/jsx/stableViewportHeight.native.cjs +29 -0
- package/dist/jsx/stableViewportHeight.native.js +31 -0
- package/dist/jsx/stableViewportHeight.native.js.map +1 -0
- package/dist/jsx/useSheetOffscreenSize.mjs +3 -1
- package/dist/jsx/useSheetOffscreenSize.mjs.map +1 -1
- package/dist/jsx/useSheetOffscreenSize.native.cjs +3 -2
- package/dist/jsx/useSheetOffscreenSize.native.js +3 -2
- package/dist/jsx/useSheetOffscreenSize.native.js.map +1 -1
- package/dist/jsx/useSheetOpenState.mjs +14 -7
- package/dist/jsx/useSheetOpenState.mjs.map +1 -1
- package/dist/jsx/useSheetOpenState.native.cjs +15 -5
- package/dist/jsx/useSheetOpenState.native.js +15 -5
- package/dist/jsx/useSheetOpenState.native.js.map +1 -1
- package/dist/jsx/useSheetProviderProps.mjs +5 -88
- package/dist/jsx/useSheetProviderProps.mjs.map +1 -1
- package/dist/jsx/useSheetProviderProps.native.cjs +5 -103
- package/dist/jsx/useSheetProviderProps.native.js +5 -103
- package/dist/jsx/useSheetProviderProps.native.js.map +1 -1
- package/dist/jsx/useSheetState.mjs +95 -0
- package/dist/jsx/useSheetState.mjs.map +1 -0
- package/dist/jsx/useSheetState.native.cjs +131 -0
- package/dist/jsx/useSheetState.native.js +133 -0
- package/dist/jsx/useSheetState.native.js.map +1 -0
- package/package.json +27 -22
- package/src/Sheet.tsx +45 -18
- package/src/SheetDragSurface.native.tsx +42 -0
- package/src/SheetDragSurface.tsx +40 -0
- package/src/SheetImplementationCustom.tsx +67 -92
- package/src/SheetScrollView.tsx +26 -4
- package/src/nativeSheet.native.tsx +110 -0
- package/src/nativeSheet.ts +16 -0
- package/src/stableViewportHeight.native.ts +9 -0
- package/src/stableViewportHeight.ts +15 -0
- package/src/types.tsx +44 -1
- package/src/useSheetOffscreenSize.tsx +3 -7
- package/src/useSheetOpenState.tsx +18 -8
- package/src/useSheetProviderProps.tsx +18 -149
- package/src/useSheetScrollViewGestures.native.ts +4 -1
- package/src/useSheetState.tsx +139 -0
- package/types/Sheet.d.ts +71 -167
- package/types/Sheet.d.ts.map +1 -1
- package/types/SheetDragSurface.d.ts +11 -0
- package/types/SheetDragSurface.d.ts.map +1 -0
- package/types/SheetDragSurface.native.d.ts +11 -0
- package/types/SheetDragSurface.native.d.ts.map +1 -0
- package/types/SheetImplementationCustom.d.ts +1 -2
- package/types/SheetImplementationCustom.d.ts.map +1 -1
- package/types/SheetScrollView.d.ts +3 -3
- package/types/SheetScrollView.d.ts.map +1 -1
- package/types/nativeSheet.d.ts +8 -9
- package/types/nativeSheet.d.ts.map +1 -1
- package/types/nativeSheet.native.d.ts +4 -0
- package/types/nativeSheet.native.d.ts.map +1 -0
- package/types/stableViewportHeight.d.ts +12 -0
- package/types/stableViewportHeight.d.ts.map +1 -0
- package/types/stableViewportHeight.native.d.ts +6 -0
- package/types/stableViewportHeight.native.d.ts.map +1 -0
- package/types/types.d.ts +34 -1
- package/types/types.d.ts.map +1 -1
- package/types/useSheetOffscreenSize.d.ts +1 -1
- package/types/useSheetOffscreenSize.d.ts.map +1 -1
- package/types/useSheetOpenState.d.ts +3 -1
- package/types/useSheetOpenState.d.ts.map +1 -1
- package/types/useSheetProviderProps.d.ts +15 -13
- package/types/useSheetProviderProps.d.ts.map +1 -1
- package/types/useSheetScrollViewGestures.native.d.ts +1 -1
- package/types/useSheetScrollViewGestures.native.d.ts.map +1 -1
- package/types/useSheetState.d.ts +26 -0
- package/types/useSheetState.d.ts.map +1 -0
- package/dist/cjs/GestureDetectorWrapper.cjs +0 -44
- package/dist/cjs/GestureDetectorWrapper.native.js.map +0 -1
- package/dist/esm/GestureDetectorWrapper.mjs +0 -25
- package/dist/esm/GestureDetectorWrapper.mjs.map +0 -1
- package/dist/esm/GestureDetectorWrapper.native.js +0 -26
- package/dist/esm/GestureDetectorWrapper.native.js.map +0 -1
- package/dist/jsx/GestureDetectorWrapper.mjs +0 -25
- package/dist/jsx/GestureDetectorWrapper.mjs.map +0 -1
- package/dist/jsx/GestureDetectorWrapper.native.js.map +0 -1
- package/src/GestureDetectorWrapper.tsx +0 -38
- package/src/nativeSheet.tsx +0 -86
- package/types/GestureDetectorWrapper.d.ts +0 -14
- package/types/GestureDetectorWrapper.d.ts.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SheetImplementationCustom.js","names":[],"sources":["esm/SheetImplementationCustom.js"],"sourcesContent":["import { AnimatePresence } from \"@tamagui/animate-presence\";\nimport { useComposedRefs } from \"@tamagui/compose-refs\";\nimport { isWeb, useIsomorphicLayoutEffect } from \"@tamagui/constants\";\nimport { LayoutMeasurementController, View, createRefComponent, formatDiagnostic, useAnimatedNumber, useAnimatedNumberStyle, useAnimationDriver, useDidFinishSSR, useEvent, useThemeName } from \"@tamagui/core\";\nimport { Portal, needsPortalRepropagation } from \"@tamagui/portal\";\nimport React, { useState } from \"react\";\nimport { Dimensions, PanResponder, View as View$1 } from \"react-native-web\";\nimport { ParentSheetContext, SheetInsideSheetContext } from \"./contexts\";\nimport { SHEET_OVERLAY_MARKER } from \"./constants\";\nimport { GestureDetectorWrapper } from \"./GestureDetectorWrapper\";\nimport { getGestureHandlerState } from \"./gestureState\";\nimport { GestureSheetProvider } from \"./GestureSheetContext\";\nimport { resisted } from \"./helpers\";\nimport { getKeyboardAdjustedSheetY, getKeyboardOccludedHeight, getSheetReleasePosition } from \"./keyboardAvoidance\";\nimport { MIN_KEYBOARD_HEIGHT, getMaxViewportHeight, getStableLayoutViewportHeight, getWebKeyboardResizeHeight, getWebVisualViewportOffsetTop } from \"./webViewport\";\nimport { SheetAnimatedPositionContext, SheetOverlayLayerContext, SheetProvider } from \"./SheetContext\";\nimport { useGestureHandlerPan } from \"./useGestureHandlerPan\";\nimport { useKeyboardControllerSheet } from \"./useKeyboardControllerSheet\";\nimport { useSafeAreaInsets } from \"./useSafeAreaInsets\";\nimport { useSheetOpenState } from \"./useSheetOpenState\";\nimport { useSheetProviderProps } from \"./useSheetProviderProps\";\nimport { jsx, jsxs } from \"react/jsx-runtime\";\n\nconst hiddenSize = 10000.1;\nconst rnghRootStyleOpen = {\n\twidth: \"100%\",\n\theight: \"100%\"\n};\nconst rnghRootStyleClosed = {\n\twidth: \"100%\",\n\theight: 0\n};\nlet sheetHiddenStyleSheet = null;\nconst sheetEscapeLayers = [];\nconst relativeDimensionTo = isWeb ? \"window\" : \"screen\";\nfunction getStableViewportHeight() {\n\tif (isWeb && typeof window !== \"undefined\") return getStableLayoutViewportHeight();\n\treturn Dimensions.get(relativeDimensionTo).height;\n}\nconst SheetImplementationCustom = createRefComponent(function SheetImplementationCustom2(props, forwardedRef) {\n\tconst parentSheet = React.useContext(ParentSheetContext);\n\tconst safeAreaTopInset = useSafeAreaInsets()?.top ?? 0;\n\tconst { transition, transitionConfig: transitionConfigProp, modal = false, zIndex = parentSheet.zIndex + 1, moveOnKeyboardChange = false, unmountChildrenWhenHidden = false, disableHideWhenClosed = false, portalProps, containerComponent: ContainerComponent = React.Fragment, onTransition } = props;\n\tconst state = useSheetOpenState(props);\n\tconst providerProps = useSheetProviderProps(props, state);\n\tconst { frameSize, setFrameSize, dismissOnSnapToBottom, snapPoints, snapPointsMode, hasFit, position, setPosition, scrollBridge, screenSize, setMaxContentSize, maxSnapPoint } = providerProps;\n\tconst { open, controller, isHidden } = state;\n\tconst openRef = React.useRef(open);\n\topenRef.current = open;\n\tconst ref = useComposedRefs(forwardedRef, React.useRef(void 0), providerProps.contentRef);\n\tconst animationDriver = useAnimationDriver();\n\tconst transitionConfig = (() => {\n\t\tif (transitionConfigProp) return transitionConfigProp;\n\t\tconst [animationProp, animationPropConfig] = !transition ? [] : Array.isArray(transition) ? transition : [transition];\n\t\tconst namedConfig = animationProp && animationDriver.animations?.[animationProp];\n\t\tif (namedConfig) {\n\t\t\tif (typeof namedConfig === \"string\") return animationPropConfig ?? null;\n\t\t\treturn {\n\t\t\t\t...namedConfig,\n\t\t\t\t...animationPropConfig\n\t\t\t};\n\t\t}\n\t\treturn null;\n\t})();\n\tconst [isShowingInnerSheet, setIsShowingInnerSheet] = React.useState(false);\n\tconst shouldHideParentSheet = !isWeb && modal && isShowingInnerSheet && needsPortalRepropagation();\n\tconst sheetInsideSheet = React.useContext(SheetInsideSheetContext);\n\tconst onInnerSheet = React.useCallback((hasChild) => {\n\t\tsetIsShowingInnerSheet(hasChild);\n\t}, []);\n\tconst { keyboardHeight, isKeyboardVisible, dismissKeyboard, pauseKeyboardHandler, flushPendingHide } = useKeyboardControllerSheet({ enabled: Boolean(moveOnKeyboardChange) });\n\tconst stableFrameSize = React.useRef(frameSize);\n\tReact.useEffect(() => {\n\t\tif (open && frameSize) stableFrameSize.current = frameSize;\n\t}, [open, frameSize]);\n\tconst isWebKbSheet = isWeb && hasFit && moveOnKeyboardChange;\n\tconst isNativeKbFitSheet = !isWeb && hasFit && Boolean(moveOnKeyboardChange);\n\tconst preKeyboardFrameSize = React.useRef(0);\n\tReact.useEffect(() => {\n\t\tif (isNativeKbFitSheet && open && !isKeyboardVisible && frameSize > 0) preKeyboardFrameSize.current = frameSize;\n\t}, [\n\t\tisNativeKbFitSheet,\n\t\topen,\n\t\tisKeyboardVisible,\n\t\tframeSize\n\t]);\n\tconst effScreenSize = isWebKbSheet ? getStableViewportHeight() : screenSize;\n\tconst effectiveFrameSize = open ? frameSize : stableFrameSize.current || frameSize;\n\tconst positions = React.useMemo(() => snapPoints.map((point) => getYPositions(snapPointsMode, point, effScreenSize, effectiveFrameSize)), [\n\t\teffScreenSize,\n\t\teffectiveFrameSize,\n\t\tsnapPoints,\n\t\tsnapPointsMode\n\t]);\n\tconst [isDragging, setIsDragging_] = React.useState(false);\n\tconst isDraggingRef = React.useRef(false);\n\tconst setIsDragging = React.useCallback((val) => {\n\t\tisDraggingRef.current = val;\n\t\tpauseKeyboardHandler.current = val;\n\t\tsetIsDragging_(val);\n\t\tif (!val) flushPendingHide();\n\t}, [pauseKeyboardHandler, flushPendingHide]);\n\tconst activePositionsRef = React.useRef(positions);\n\tconst activePositions = React.useMemo(() => {\n\t\tif (isDragging || isDraggingRef.current) return activePositionsRef.current;\n\t\tlet result;\n\t\tif (!isKeyboardVisible || keyboardHeight <= 0) result = positions;\n\t\telse result = positions.map((p) => getKeyboardAdjustedSheetY({\n\t\t\tsheetY: p,\n\t\t\tscreenSize: effScreenSize,\n\t\t\tisKeyboardVisible,\n\t\t\tkeyboardHeight,\n\t\t\tshouldTranslate: true,\n\t\t\tsafeAreaTop: isWeb ? getWebVisualViewportOffsetTop() : safeAreaTopInset\n\t\t}));\n\t\tactivePositionsRef.current = result;\n\t\treturn result;\n\t}, [\n\t\tpositions,\n\t\tisKeyboardVisible,\n\t\tkeyboardHeight,\n\t\teffScreenSize,\n\t\tisDragging,\n\t\tsafeAreaTopInset\n\t]);\n\tconst keyboardOccludedHeight = getKeyboardOccludedHeight({\n\t\tframeSize: effectiveFrameSize,\n\t\tisKeyboardVisible,\n\t\tkeyboardHeight,\n\t\tscreenSize: effScreenSize,\n\t\tsheetY: position >= 0 ? activePositions[position] : void 0\n\t});\n\tconst keyboardStableFrameHeight = isWebKbSheet && isKeyboardVisible && frameSize > 0 ? frameSize : isNativeKbFitSheet && isKeyboardVisible && preKeyboardFrameSize.current > 0 ? preKeyboardFrameSize.current : 0;\n\tconst AnimatedView = animationDriver.View ?? View;\n\tuseIsomorphicLayoutEffect(() => {\n\t\tif (!(sheetInsideSheet && open)) return;\n\t\tsheetInsideSheet(true);\n\t\treturn () => {\n\t\t\tsheetInsideSheet(false);\n\t\t};\n\t}, [sheetInsideSheet, open]);\n\tconst nextParentContext = React.useMemo(() => ({ zIndex }), [zIndex]);\n\tconst startPosition = useDidFinishSSR() && screenSize ? screenSize : hiddenSize;\n\tconst animatedNumber = useAnimatedNumber(startPosition);\n\tconst at = React.useRef(startPosition);\n\tconst hasntMeasured = at.current === hiddenSize;\n\tconst [disableAnimation, setDisableAnimation] = useState(hasntMeasured);\n\tconst skipAdaptAnimation = React.useRef(false);\n\tif (controller?.skipNextAnimation) skipAdaptAnimation.current = true;\n\tconst hasScrollView = React.useRef(false);\n\tconst lastPositionIndexRef = React.useRef(-1);\n\tconst pendingTransitionRef = React.useRef(null);\n\tconst emitTransition = useEvent((phase, event, finished) => {\n\t\tconst e = {\n\t\t\tphase,\n\t\t\tcause: event.cause,\n\t\t\tposition: event.position\n\t\t};\n\t\tif (phase === \"end\") e.finished = finished;\n\t\tonTransition?.(e);\n\t\tcontroller?.onTransition?.(e);\n\t});\n\tconst syncAnimatedPosition = useEvent((value) => {\n\t\tat.current = value;\n\t\tscrollBridge.paneY = value;\n\t\tconst minY = activePositions[0];\n\t\tconst wasAtTop = scrollBridge.isAtTop;\n\t\tconst nowAtTop = value <= minY + 5;\n\t\tif (wasAtTop === nowAtTop) return;\n\t\tscrollBridge.isAtTop = nowAtTop;\n\t\tif (nowAtTop) {\n\t\t\tif (scrollBridge.lockScrollAtTop) {\n\t\t\t\tif (scrollBridge.y > 0) {\n\t\t\t\t\tscrollBridge.forceScrollTo?.(0);\n\t\t\t\t\tscrollBridge.y = 0;\n\t\t\t\t}\n\t\t\t\tscrollBridge.scrollLockY = 0;\n\t\t\t\tscrollBridge.setScrollEnabled?.(false, 0);\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tif (scrollBridge.y > 0) {\n\t\t\t\tscrollBridge.forceScrollTo?.(0);\n\t\t\t\tscrollBridge.y = 0;\n\t\t\t}\n\t\t\tscrollBridge.scrollLockY = void 0;\n\t\t\tscrollBridge.setScrollEnabled?.(true);\n\t\t} else {\n\t\t\tscrollBridge.scrollLockY = 0;\n\t\t\tscrollBridge.setScrollEnabled?.(false);\n\t\t}\n\t});\n\tconst setAnimatedPositionDirect = useEvent((value) => {\n\t\tsyncAnimatedPosition(value);\n\t\tanimatedNumber.setValue(value, { type: \"direct\" });\n\t});\n\tconst getAnimatedPosition = useEvent(() => {\n\t\tconst value = animatedNumber.getValue();\n\t\tsyncAnimatedPosition(value);\n\t\treturn value;\n\t});\n\tfunction stopSpring() {\n\t\tanimatedNumber.stop();\n\t\tif (scrollBridge.onFinishAnimate) {\n\t\t\tscrollBridge.onFinishAnimate();\n\t\t\tscrollBridge.onFinishAnimate = void 0;\n\t\t}\n\t}\n\tconst animateTo = useEvent((position2, animationOverride) => {\n\t\tif (frameSize === 0) return;\n\t\tconst closeTarget = isWeb ? Math.max(effScreenSize, getMaxViewportHeight()) : effScreenSize;\n\t\tconst isDismissPosition = dismissOnSnapToBottom && position2 === activePositions.length - 1;\n\t\tconst isOpenAnimation = position2 !== -1 && !isHidden && !isDismissPosition;\n\t\tconst toValue = isOpenAnimation ? activePositions[position2] : closeTarget;\n\t\tif (at.current === toValue) {\n\t\t\tif (isDismissPosition) {\n\t\t\t\tif (pendingTransitionRef.current) {\n\t\t\t\t\temitTransition(\"end\", pendingTransitionRef.current, false);\n\t\t\t\t\tpendingTransitionRef.current = null;\n\t\t\t\t}\n\t\t\t\tstopSpring();\n\t\t\t\tconst event2 = {\n\t\t\t\t\tcause: \"close\",\n\t\t\t\t\tposition: toValue\n\t\t\t\t};\n\t\t\t\tlastPositionIndexRef.current = -1;\n\t\t\t\temitTransition(\"start\", event2);\n\t\t\t\tsyncAnimatedPosition(toValue);\n\t\t\t\tsetIsFullyClosed(true);\n\t\t\t\temitTransition(\"end\", event2, true);\n\t\t\t}\n\t\t\treturn;\n\t\t}\n\t\tat.current = toValue;\n\t\tconst cause = !isOpenAnimation ? \"close\" : lastPositionIndexRef.current < 0 ? \"open\" : \"snap\";\n\t\tlastPositionIndexRef.current = isOpenAnimation ? position2 : -1;\n\t\tconst event = {\n\t\t\tcause,\n\t\t\tposition: toValue\n\t\t};\n\t\tif (pendingTransitionRef.current) {\n\t\t\temitTransition(\"end\", pendingTransitionRef.current, false);\n\t\t\tpendingTransitionRef.current = null;\n\t\t}\n\t\tstopSpring();\n\t\tconst animationCompleteCallback = () => {\n\t\t\tif (at.current !== toValue) return;\n\t\t\tsyncAnimatedPosition(toValue);\n\t\t\tpendingTransitionRef.current = null;\n\t\t\tif (!isOpenAnimation && !openRef.current) setIsFullyClosed(true);\n\t\t\temitTransition(\"end\", event, true);\n\t\t};\n\t\tpendingTransitionRef.current = event;\n\t\temitTransition(\"start\", event);\n\t\tif (skipAdaptAnimation.current) {\n\t\t\tskipAdaptAnimation.current = false;\n\t\t\tanimatedNumber.setValue(toValue, {\n\t\t\t\ttype: \"timing\",\n\t\t\t\tduration: 0\n\t\t\t}, animationCompleteCallback);\n\t\t\treturn;\n\t\t}\n\t\tconst resolvedConfig = animationOverride || {\n\t\t\ttype: \"spring\",\n\t\t\t...transitionConfig\n\t\t};\n\t\tconst springConfig = !resolvedConfig.type || resolvedConfig.type === \"spring\" ? {\n\t\t\trestDisplacementThreshold: 1,\n\t\t\trestSpeedThreshold: 10,\n\t\t\tenergyThreshold: 1e-5,\n\t\t\t...resolvedConfig\n\t\t} : resolvedConfig;\n\t\tanimatedNumber.setValue(toValue, springConfig, animationCompleteCallback);\n\t});\n\tuseIsomorphicLayoutEffect(() => {\n\t\tif (hasntMeasured && screenSize && frameSize) {\n\t\t\tat.current = screenSize;\n\t\t\tanimatedNumber.setValue(screenSize, {\n\t\t\t\ttype: \"timing\",\n\t\t\t\tduration: 0\n\t\t\t}, () => {\n\t\t\t\tsyncAnimatedPosition(screenSize);\n\t\t\t\tsetTimeout(() => {\n\t\t\t\t\tsetDisableAnimation(false);\n\t\t\t\t}, 10);\n\t\t\t});\n\t\t\treturn;\n\t\t}\n\t\tif (disableAnimation) return;\n\t\tif (isDraggingRef.current) return;\n\t\tif (!frameSize || !screenSize || isHidden || hasntMeasured && !open) return;\n\t\tanimateTo(position);\n\t\tif (position === -1) {\n\t\t\tscrollBridge.scrollLock = false;\n\t\t\tscrollBridge.scrollStartY = -1;\n\t\t}\n\t\tif (open && position >= 0) {\n\t\t\tconst isTopPosition = position === 0;\n\t\t\tscrollBridge.isAtTop = isTopPosition;\n\t\t\tif (isTopPosition) {\n\t\t\t\tscrollBridge.scrollLockY = void 0;\n\t\t\t\tscrollBridge.setScrollEnabled?.(true);\n\t\t\t} else {\n\t\t\t\tscrollBridge.scrollLockY = 0;\n\t\t\t\tscrollBridge.setScrollEnabled?.(false);\n\t\t\t}\n\t\t}\n\t}, [\n\t\thasntMeasured,\n\t\tdisableAnimation,\n\t\tisHidden,\n\t\tframeSize,\n\t\tscreenSize,\n\t\topen,\n\t\tposition\n\t]);\n\tconst disableDrag = props.disableDrag ?? controller?.disableDrag;\n\tuseThemeName();\n\tconst [blockPan, setBlockPan] = React.useState(false);\n\tconst panResponder = React.useMemo(() => {\n\t\tif (disableDrag) return;\n\t\tif (!frameSize) return;\n\t\tif (isShowingInnerSheet) return;\n\t\tconst minY = activePositions[0];\n\t\tscrollBridge.paneMinY = minY;\n\t\tlet startY = at.current;\n\t\tfunction setPanning(val) {\n\t\t\tsetIsDragging(val);\n\t\t\tif (!sheetHiddenStyleSheet) {\n\t\t\t\tsheetHiddenStyleSheet = document.createElement(\"style\");\n\t\t\t\tif (typeof document.head !== \"undefined\") document.head.appendChild(sheetHiddenStyleSheet);\n\t\t\t}\n\t\t\tif (!val) sheetHiddenStyleSheet.innerText = \"\";\n\t\t\telse sheetHiddenStyleSheet.innerText = \":root * { user-select: none !important; -webkit-user-select: none !important; }\";\n\t\t}\n\t\tconst release = ({ vy }) => {\n\t\t\tscrollBridge.setParentDragging(false);\n\t\t\tif (scrollBridge.scrollLock) return;\n\t\t\tisExternalDrag = false;\n\t\t\tpreviouslyScrolling = false;\n\t\t\tsetPanning(false);\n\t\t\tconst currentPos = at.current;\n\t\t\tconst closestPoint = getSheetReleasePosition({\n\t\t\t\tpositions: activePositions,\n\t\t\t\tprojectedEnd: currentPos + frameSize * vy * .2,\n\t\t\t\tcurrentPosition: currentPos,\n\t\t\t\tframeSize,\n\t\t\t\tdismissOnSnapToBottom,\n\t\t\t\tsnapPointsMode,\n\t\t\t\tisKeyboardVisible,\n\t\t\t\tisWeb\n\t\t\t});\n\t\t\tsetPosition(closestPoint);\n\t\t\tanimateTo(closestPoint);\n\t\t};\n\t\tconst finish = (_e, state2) => {\n\t\t\trelease({\n\t\t\t\tvy: state2.vy,\n\t\t\t\tdragAt: state2.dy\n\t\t\t});\n\t\t};\n\t\tlet previouslyScrolling = false;\n\t\tconst onMoveShouldSet = (e, { dy }) => {\n\t\t\tfunction getShouldSet() {\n\t\t\t\tif (e.target === providerProps.handleRef.current) return true;\n\t\t\t\tif (scrollBridge.scrollNodeTouched) return false;\n\t\t\t\tif (scrollBridge.hasScrollableContent === true) {\n\t\t\t\t\tif (scrollBridge.scrollLock) return false;\n\t\t\t\t\tconst isScrolled = scrollBridge.y !== 0;\n\t\t\t\t\tconst isDraggingUp = dy < 0;\n\t\t\t\t\tconst isNearTop = scrollBridge.paneY - 5 <= scrollBridge.paneMinY;\n\t\t\t\t\tif (isScrolled) return false;\n\t\t\t\t\tif (isNearTop) {\n\t\t\t\t\t\tif (hasScrollView.current && isDraggingUp) return false;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\treturn Math.abs(dy) > 10;\n\t\t\t}\n\t\t\tconst granted = getShouldSet();\n\t\t\tif (granted) scrollBridge.setParentDragging(true);\n\t\t\treturn granted;\n\t\t};\n\t\tconst grant = () => {\n\t\t\tsetPanning(true);\n\t\t\tstopSpring();\n\t\t\tstartY = getAnimatedPosition();\n\t\t};\n\t\tlet isExternalDrag = false;\n\t\tscrollBridge.startPanDrag = () => {\n\t\t\tisExternalDrag = true;\n\t\t\tgrant();\n\t\t};\n\t\tscrollBridge.drag = (dy) => {\n\t\t\tif (!isExternalDrag) {\n\t\t\t\tisExternalDrag = true;\n\t\t\t\tgrant();\n\t\t\t}\n\t\t\tsetAnimatedPositionDirect(resisted(dy + startY, minY));\n\t\t};\n\t\tscrollBridge.release = release;\n\t\tscrollBridge.snapToPosition = (positionIndex) => {\n\t\t\tisExternalDrag = false;\n\t\t\tsetPanning(false);\n\t\t\tsetPosition(positionIndex);\n\t\t\tanimateTo(positionIndex);\n\t\t};\n\t\treturn PanResponder.create({\n\t\t\tonMoveShouldSetPanResponder: onMoveShouldSet,\n\t\t\tonPanResponderTerminationRequest: () => false,\n\t\t\tonPanResponderGrant: grant,\n\t\t\tonPanResponderMove: (_e, { dy }) => {\n\t\t\t\tconst to = resisted(dy + startY, minY);\n\t\t\t\tif (to <= minY) scrollBridge.setParentDragging(false);\n\t\t\t\telse scrollBridge.setParentDragging(true);\n\t\t\t\tsetAnimatedPositionDirect(to);\n\t\t\t},\n\t\t\tonPanResponderEnd: finish,\n\t\t\tonPanResponderTerminate: finish,\n\t\t\tonPanResponderRelease: finish\n\t\t});\n\t}, [\n\t\tdisableDrag,\n\t\tisShowingInnerSheet,\n\t\tanimateTo,\n\t\tframeSize,\n\t\tactivePositions,\n\t\tsetPosition,\n\t\tdismissOnSnapToBottom,\n\t\tsnapPointsMode\n\t]);\n\tReact.useEffect(() => {\n\t\tif (isDragging || isHidden || !open || disableAnimation) return;\n\t\tif (!frameSize || !screenSize) return;\n\t\tanimateTo(position, {\n\t\t\ttype: \"timing\",\n\t\t\tduration: 250\n\t\t});\n\t}, [isKeyboardVisible, keyboardHeight]);\n\tconst wasDragging = React.useRef(false);\n\tReact.useEffect(() => {\n\t\tif (isDragging) {\n\t\t\twasDragging.current = true;\n\t\t\treturn;\n\t\t}\n\t\tif (!wasDragging.current) return;\n\t\twasDragging.current = false;\n\t\tif (!frameSize || !screenSize || isHidden || !open) return;\n\t\tanimateTo(position);\n\t}, [isDragging]);\n\tReact.useEffect(() => {\n\t\tif (!open && isKeyboardVisible) {\n\t\t\tdismissKeyboard();\n\t\t\tpauseKeyboardHandler.current = false;\n\t\t\tflushPendingHide();\n\t\t}\n\t}, [open]);\n\tReact.useEffect(() => {\n\t\tif (!isWeb || !modal || !open || shouldHideParentSheet) return;\n\t\tconst layer = {};\n\t\tsheetEscapeLayers.push(layer);\n\t\tconst onKeyDown = (event) => {\n\t\t\tif (event.key === \"Escape\") {\n\t\t\t\tif (sheetEscapeLayers[sheetEscapeLayers.length - 1] === layer) state.setOpen(false);\n\t\t\t}\n\t\t};\n\t\tdocument.addEventListener(\"keydown\", onKeyDown);\n\t\treturn () => {\n\t\t\tconst index = sheetEscapeLayers.indexOf(layer);\n\t\t\tif (index > -1) sheetEscapeLayers.splice(index, 1);\n\t\t\tdocument.removeEventListener(\"keydown\", onKeyDown);\n\t\t};\n\t}, [\n\t\tmodal,\n\t\topen,\n\t\tshouldHideParentSheet,\n\t\tstate.setOpen\n\t]);\n\tconst { panGesture, panGestureRef, gestureHandlerEnabled } = useGestureHandlerPan({\n\t\tpositions: activePositions,\n\t\tframeSize,\n\t\tsetPosition,\n\t\tanimateTo,\n\t\tstopSpring,\n\t\tscrollBridge,\n\t\tsetIsDragging,\n\t\tgetCurrentPosition: getAnimatedPosition,\n\t\tresisted,\n\t\tdisableDrag,\n\t\tisShowingInnerSheet,\n\t\tsetAnimatedPosition: setAnimatedPositionDirect,\n\t\tdismissOnSnapToBottom,\n\t\tsnapPointsMode,\n\t\tisKeyboardVisible,\n\t\tpauseKeyboardHandler\n\t});\n\tconst ignoreLayoutForKeyboard = useEvent(() => isWeb && moveOnKeyboardChange && getWebKeyboardResizeHeight() >= MIN_KEYBOARD_HEIGHT);\n\tconst handleAnimationViewLayout = useEvent((e) => {\n\t\tif (!open && stableFrameSize.current !== 0) return;\n\t\tconst layoutHeight = e.nativeEvent?.layout.height;\n\t\tif (ignoreLayoutForKeyboard() && frameSize > 0) return;\n\t\tconst next = modal ? Math.min(layoutHeight, getStableViewportHeight()) : layoutHeight;\n\t\tif (!next) return;\n\t\tsetFrameSize(Math.round(next));\n\t});\n\tconst handleMaxContentViewLayout = React.useCallback((e) => {\n\t\tif (ignoreLayoutForKeyboard() && screenSize > 0) return;\n\t\tconst next = Math.min(e.nativeEvent?.layout.height, getStableViewportHeight());\n\t\tif (!next) return;\n\t\tsetMaxContentSize(Math.round(next));\n\t}, [ignoreLayoutForKeyboard, screenSize]);\n\tconst animatedStyle = useAnimatedNumberStyle(animatedNumber, React.useCallback((val) => {\n\t\t\"worklet\";\n\t\treturn { transform: [{ translateY: frameSize === 0 ? hiddenSize : val }] };\n\t}, [frameSize]));\n\tconst [isFullyClosed, setIsFullyClosed] = React.useState(false);\n\tif (open && isFullyClosed) setIsFullyClosed(false);\n\tconst hasEverOpened = React.useRef(open);\n\tif (open) hasEverOpened.current = true;\n\tconst isVisuallyActive = open || hasEverOpened.current && !isFullyClosed;\n\tconst applyHidden = shouldHideParentSheet || isFullyClosed && !disableHideWhenClosed;\n\tconst forcedContentHeight = hasFit ? void 0 : snapPointsMode === \"percent\" ? `${maxSnapPoint}${isWeb ? modal ? \"dvh\" : \"%\" : \"%\"}` : maxSnapPoint;\n\tconst setHasScrollView = React.useCallback((val) => {\n\t\thasScrollView.current = val;\n\t}, []);\n\tconst animatedPositionValue = React.useMemo(() => ({\n\t\tvalue: animatedNumber,\n\t\tscreenSize: effScreenSize,\n\t\tframeSize,\n\t\tsnapOffsets: activePositions,\n\t\tminY: activePositions[0] ?? 0\n\t}), [\n\t\tanimatedNumber,\n\t\teffScreenSize,\n\t\tframeSize,\n\t\tactivePositions\n\t]);\n\tconst { overlayChildren, animatedChildren } = React.useMemo(() => partitionSheetChildren(props.children), [props.children]);\n\tlet contents = /* @__PURE__ */ jsx(LayoutMeasurementController, {\n\t\tdisable: !open,\n\t\tchildren: /* @__PURE__ */ jsx(ParentSheetContext.Provider, {\n\t\t\tvalue: nextParentContext,\n\t\t\tchildren: /* @__PURE__ */ jsx(SheetProvider, {\n\t\t\t\t...providerProps,\n\t\t\t\tkeyboardOccludedHeight,\n\t\t\t\tisKeyboardVisible,\n\t\t\t\tkeyboardStableFrameHeight,\n\t\t\t\tsetHasScrollView,\n\t\t\t\tchildren: /* @__PURE__ */ jsx(GestureSheetProvider, {\n\t\t\t\t\tisDragging,\n\t\t\t\t\tblockPan,\n\t\t\t\t\tsetBlockPan,\n\t\t\t\t\tpanGesture,\n\t\t\t\t\tpanGestureRef,\n\t\t\t\t\tchildren: /* @__PURE__ */ jsxs(SheetAnimatedPositionContext.Provider, {\n\t\t\t\t\t\tvalue: animatedPositionValue,\n\t\t\t\t\t\tchildren: [\n\t\t\t\t\t\t\t/* @__PURE__ */ jsx(SheetOverlayLayerContext.Provider, {\n\t\t\t\t\t\t\t\tvalue: true,\n\t\t\t\t\t\t\t\tchildren: /* @__PURE__ */ jsx(AnimatePresence, {\n\t\t\t\t\t\t\t\t\tcustom: { open },\n\t\t\t\t\t\t\t\t\tchildren: shouldHideParentSheet || !open ? null : overlayChildren\n\t\t\t\t\t\t\t\t})\n\t\t\t\t\t\t\t}),\n\t\t\t\t\t\t\tsnapPointsMode !== \"percent\" && /* @__PURE__ */ jsx(View$1, {\n\t\t\t\t\t\t\t\tstyle: {\n\t\t\t\t\t\t\t\t\topacity: 0,\n\t\t\t\t\t\t\t\t\tposition: \"absolute\",\n\t\t\t\t\t\t\t\t\ttop: 0,\n\t\t\t\t\t\t\t\t\tleft: 0,\n\t\t\t\t\t\t\t\t\tright: 0,\n\t\t\t\t\t\t\t\t\tbottom: 0,\n\t\t\t\t\t\t\t\t\tpointerEvents: \"none\"\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\tonLayout: handleMaxContentViewLayout\n\t\t\t\t\t\t\t}),\n\t\t\t\t\t\t\t/* @__PURE__ */ jsx(AnimatedView, {\n\t\t\t\t\t\t\t\tref,\n\t\t\t\t\t\t\t\tonLayout: handleAnimationViewLayout,\n\t\t\t\t\t\t\t\ttransition: isDragging || disableAnimation ? null : transition,\n\t\t\t\t\t\t\t\tdisableClassName: true,\n\t\t\t\t\t\t\t\tstyle: [{\n\t\t\t\t\t\t\t\t\tposition: \"absolute\",\n\t\t\t\t\t\t\t\t\tzIndex,\n\t\t\t\t\t\t\t\t\twidth: \"100%\",\n\t\t\t\t\t\t\t\t\theight: forcedContentHeight,\n\t\t\t\t\t\t\t\t\tminHeight: forcedContentHeight,\n\t\t\t\t\t\t\t\t\t...applyHidden && { display: \"none\" },\n\t\t\t\t\t\t\t\t\t...(shouldHideParentSheet || !open) && { pointerEvents: \"none\" }\n\t\t\t\t\t\t\t\t}, animatedStyle],\n\t\t\t\t\t\t\t\tchildren: gestureHandlerEnabled && panGesture ? /* @__PURE__ */ jsx(GestureDetectorWrapper, {\n\t\t\t\t\t\t\t\t\tgesture: panGesture,\n\t\t\t\t\t\t\t\t\tstyle: { flex: 1 },\n\t\t\t\t\t\t\t\t\tchildren: animatedChildren\n\t\t\t\t\t\t\t\t}) : /* @__PURE__ */ jsx(View$1, {\n\t\t\t\t\t\t\t\t\t...panResponder?.panHandlers,\n\t\t\t\t\t\t\t\t\tstyle: {\n\t\t\t\t\t\t\t\t\t\tflex: 1,\n\t\t\t\t\t\t\t\t\t\twidth: \"100%\",\n\t\t\t\t\t\t\t\t\t\theight: \"100%\"\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\tchildren: animatedChildren\n\t\t\t\t\t\t\t\t})\n\t\t\t\t\t\t\t})\n\t\t\t\t\t\t]\n\t\t\t\t\t})\n\t\t\t\t})\n\t\t\t})\n\t\t})\n\t});\n\tconst shouldMountChildren = unmountChildrenWhenHidden ? !isFullyClosed : true;\n\tif (modal) {\n\t\tconst RNGHRoot = getGestureHandlerState().RootView;\n\t\tconst mountedContents = shouldMountChildren ? /* @__PURE__ */ jsx(ContainerComponent, { children: contents }) : null;\n\t\tconst modalContents = /* @__PURE__ */ jsx(Portal, {\n\t\t\tstackZIndex: zIndex,\n\t\t\thidden: !isVisuallyActive,\n\t\t\t...portalProps,\n\t\t\tchildren: mountedContents && RNGHRoot ? /* @__PURE__ */ jsx(RNGHRoot, {\n\t\t\t\tstyle: open ? rnghRootStyleOpen : rnghRootStyleClosed,\n\t\t\t\tchildren: mountedContents\n\t\t\t}) : mountedContents\n\t\t});\n\t\tif (isWeb) return modalContents;\n\t\treturn /* @__PURE__ */ jsx(SheetInsideSheetContext.Provider, {\n\t\t\tvalue: onInnerSheet,\n\t\t\tchildren: modalContents\n\t\t});\n\t}\n\treturn contents;\n});\nfunction isSheetOverlayComponent(type) {\n\tlet staticConfig = type?.staticConfig;\n\twhile (staticConfig) {\n\t\tif (staticConfig[SHEET_OVERLAY_MARKER]) return true;\n\t\tstaticConfig = staticConfig.parentStaticConfig;\n\t}\n\treturn false;\n}\nfunction partitionSheetChildren(children) {\n\tconst overlayChildren = [];\n\tconst animatedChildren = [];\n\tReact.Children.forEach(children, (child) => {\n\t\tif (!React.isValidElement(child)) {\n\t\t\tanimatedChildren.push(child);\n\t\t\treturn;\n\t\t}\n\t\tif (isSheetOverlayComponent(child.type)) {\n\t\t\toverlayChildren.push(child);\n\t\t\treturn;\n\t\t}\n\t\tanimatedChildren.push(child);\n\t});\n\treturn {\n\t\toverlayChildren,\n\t\tanimatedChildren\n\t};\n}\nfunction getYPositions(mode, point, screenSize, frameSize) {\n\tif (!screenSize || !frameSize) return 0;\n\tif (mode === \"mixed\") {\n\t\tif (typeof point === \"number\") return screenSize - Math.min(screenSize, Math.max(0, point));\n\t\tif (point === \"fit\") return screenSize - Math.min(screenSize, frameSize);\n\t\tif (point.endsWith(\"%\")) {\n\t\t\tconst pct2 = Math.min(100, Math.max(0, Number(point.slice(0, -1)))) / 100;\n\t\t\tif (Number.isNaN(pct2)) {\n\t\t\t\tconsole.warn(formatDiagnostic(\"TAMAGUI_SHEET_SNAP_POINT\", \"Sheet\", \"snapPoints contains an invalid percentage string\", \"Use \\\"fit\\\", a pixel number, or a percentage such as \\\"50%\\\"\", \"snapPoint\", point));\n\t\t\t\treturn 0;\n\t\t\t}\n\t\t\treturn Math.round(screenSize - pct2 * screenSize);\n\t\t}\n\t\tconsole.warn(formatDiagnostic(\"TAMAGUI_SHEET_SNAP_POINT\", \"Sheet\", \"snapPoints contains an unsupported mixed-mode value\", \"Use \\\"fit\\\", a pixel number, or a percentage such as \\\"50%\\\"\", \"snapPoint\", point));\n\t\treturn 0;\n\t}\n\tif (mode === \"fit\") {\n\t\tif (point === 0) return screenSize;\n\t\treturn screenSize - Math.min(screenSize, frameSize);\n\t}\n\tif (mode === \"constant\" && typeof point === \"number\") return screenSize - Math.min(screenSize, Math.max(0, point));\n\tconst pct = Math.min(100, Math.max(0, Number(point))) / 100;\n\tif (Number.isNaN(pct)) {\n\t\tconsole.warn(formatDiagnostic(\"TAMAGUI_SHEET_SNAP_POINT\", \"Sheet\", \"snapPoints contains a value that cannot be converted to a percentage\", \"Use a numeric percentage such as 50\", \"snapPoint\", point));\n\t\treturn 0;\n\t}\n\treturn Math.round(screenSize - pct * screenSize);\n}\n\nexport { SheetImplementationCustom, isSheetOverlayComponent };"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"SheetImplementationCustom.js","names":[],"sources":["esm/SheetImplementationCustom.js"],"sourcesContent":["import { AnimatePresence } from \"@tamagui/animate-presence\";\nimport { getTransitionResolver } from \"@tamagui/animation-helpers/transitionResolver\";\nimport { useComposedRefs } from \"@tamagui/compose-refs\";\nimport { isWeb, useIsomorphicLayoutEffect } from \"@tamagui/constants\";\nimport { LayoutMeasurementController, View, createRefComponent, formatDiagnostic, useAnimatedNumber, useAnimatedNumberStyle, useAnimationDriver, useDidFinishSSR, useEvent, useThemeName } from \"@tamagui/core\";\nimport { Portal, needsPortalRepropagation } from \"@tamagui/portal\";\nimport React, { useState } from \"react\";\nimport { ParentSheetContext, SheetInsideSheetContext } from \"./contexts\";\nimport { SHEET_OVERLAY_MARKER } from \"./constants\";\nimport { getGestureHandlerState } from \"./gestureState\";\nimport { SheetDragSurface } from \"./SheetDragSurface\";\nimport { getStableViewportHeight } from \"./stableViewportHeight\";\nimport { GestureSheetProvider } from \"./GestureSheetContext\";\nimport { resisted } from \"./helpers\";\nimport { getKeyboardAdjustedSheetY, getKeyboardOccludedHeight, getSheetReleasePosition } from \"./keyboardAvoidance\";\nimport { MIN_KEYBOARD_HEIGHT, getMaxViewportHeight, getWebKeyboardResizeHeight, getWebVisualViewportOffsetTop } from \"./webViewport\";\nimport { SheetAnimatedPositionContext, SheetOverlayLayerContext, SheetProvider } from \"./SheetContext\";\nimport { useGestureHandlerPan } from \"./useGestureHandlerPan\";\nimport { useKeyboardControllerSheet } from \"./useKeyboardControllerSheet\";\nimport { useSafeAreaInsets } from \"./useSafeAreaInsets\";\nimport { useSheetOpenState } from \"./useSheetOpenState\";\nimport { useSheetProviderProps } from \"./useSheetProviderProps\";\nimport { jsx, jsxs } from \"react/jsx-runtime\";\n\nconst hiddenSize = 10000.1;\nconst rnghRootStyleOpen = {\n\twidth: \"100%\",\n\theight: \"100%\"\n};\nconst rnghRootStyleClosed = {\n\twidth: \"100%\",\n\theight: 0\n};\nlet sheetHiddenStyleSheet = null;\nconst sheetEscapeLayers = [];\nconst SheetImplementationCustom = createRefComponent(function SheetImplementationCustom2(props, forwardedRef) {\n\tconst parentSheet = React.useContext(ParentSheetContext);\n\tconst safeAreaTopInset = useSafeAreaInsets()?.top ?? 0;\n\tconst { transition, transitionConfig: transitionConfigProp, modal = false, zIndex = parentSheet.zIndex + 1, moveOnKeyboardChange = false, unmountChildrenWhenHidden = false, disableHideWhenClosed = false, portalProps, containerComponent: ContainerComponent = React.Fragment, onTransition } = props;\n\tconst state = useSheetOpenState(props);\n\tconst providerProps = useSheetProviderProps(props, state);\n\tconst { frameSize, setFrameSize, dismissOnSnapToBottom, snapPoints, snapPointsMode, hasFit, position, setPosition, scrollBridge, screenSize, setMaxContentSize, maxSnapPoint } = providerProps;\n\tconst { open, controller, isHidden } = state;\n\tconst openRef = React.useRef(open);\n\topenRef.current = open;\n\tconst ref = useComposedRefs(forwardedRef, React.useRef(void 0), providerProps.contentRef);\n\tconst animationDriver = useAnimationDriver();\n\tconst transitionConfig = (() => {\n\t\tif (transitionConfigProp) return transitionConfigProp;\n\t\tconst timing = (transition ? getTransitionResolver()?.resolve(transition, { animations: animationDriver.animations }) : null)?.all?.timing;\n\t\tif (!timing) return null;\n\t\tif (timing.kind === \"timing\") return {\n\t\t\ttype: \"timing\",\n\t\t\tduration: timing.durationMs\n\t\t};\n\t\treturn {\n\t\t\ttype: \"spring\",\n\t\t\tstiffness: timing.stiffness,\n\t\t\tdamping: timing.damping,\n\t\t\tmass: timing.mass\n\t\t};\n\t})();\n\tconst [isShowingInnerSheet, setIsShowingInnerSheet] = React.useState(false);\n\tconst shouldHideParentSheet = !isWeb && modal && isShowingInnerSheet && needsPortalRepropagation();\n\tconst sheetInsideSheet = React.useContext(SheetInsideSheetContext);\n\tconst onInnerSheet = React.useCallback((hasChild) => {\n\t\tsetIsShowingInnerSheet(hasChild);\n\t}, []);\n\tconst { keyboardHeight, isKeyboardVisible, dismissKeyboard, pauseKeyboardHandler, flushPendingHide } = useKeyboardControllerSheet({ enabled: Boolean(moveOnKeyboardChange) });\n\tconst stableFrameSize = React.useRef(frameSize);\n\tReact.useEffect(() => {\n\t\tif (open && frameSize) stableFrameSize.current = frameSize;\n\t}, [open, frameSize]);\n\tconst isWebKbSheet = isWeb && hasFit && moveOnKeyboardChange;\n\tconst isNativeKbFitSheet = !isWeb && hasFit && Boolean(moveOnKeyboardChange);\n\tconst preKeyboardFrameSize = React.useRef(0);\n\tReact.useEffect(() => {\n\t\tif (isNativeKbFitSheet && open && !isKeyboardVisible && frameSize > 0) preKeyboardFrameSize.current = frameSize;\n\t}, [\n\t\tisNativeKbFitSheet,\n\t\topen,\n\t\tisKeyboardVisible,\n\t\tframeSize\n\t]);\n\tconst effScreenSize = isWebKbSheet ? getStableViewportHeight() : screenSize;\n\tconst effectiveFrameSize = open ? frameSize : stableFrameSize.current || frameSize;\n\tconst positions = React.useMemo(() => snapPoints.map((point) => getYPositions(snapPointsMode, point, effScreenSize, effectiveFrameSize)), [\n\t\teffScreenSize,\n\t\teffectiveFrameSize,\n\t\tsnapPoints,\n\t\tsnapPointsMode\n\t]);\n\tconst [isDragging, setIsDragging_] = React.useState(false);\n\tconst isDraggingRef = React.useRef(false);\n\tconst setIsDragging = React.useCallback((val) => {\n\t\tisDraggingRef.current = val;\n\t\tpauseKeyboardHandler.current = val;\n\t\tsetIsDragging_(val);\n\t\tif (!val) flushPendingHide();\n\t}, [pauseKeyboardHandler, flushPendingHide]);\n\tconst activePositionsRef = React.useRef(positions);\n\tconst activePositions = React.useMemo(() => {\n\t\tif (isDragging || isDraggingRef.current) return activePositionsRef.current;\n\t\tlet result;\n\t\tif (!isKeyboardVisible || keyboardHeight <= 0) result = positions;\n\t\telse result = positions.map((p) => getKeyboardAdjustedSheetY({\n\t\t\tsheetY: p,\n\t\t\tscreenSize: effScreenSize,\n\t\t\tisKeyboardVisible,\n\t\t\tkeyboardHeight,\n\t\t\tshouldTranslate: true,\n\t\t\tsafeAreaTop: isWeb ? getWebVisualViewportOffsetTop() : safeAreaTopInset\n\t\t}));\n\t\tactivePositionsRef.current = result;\n\t\treturn result;\n\t}, [\n\t\tpositions,\n\t\tisKeyboardVisible,\n\t\tkeyboardHeight,\n\t\teffScreenSize,\n\t\tisDragging,\n\t\tsafeAreaTopInset\n\t]);\n\tconst keyboardOccludedHeight = getKeyboardOccludedHeight({\n\t\tframeSize: effectiveFrameSize,\n\t\tisKeyboardVisible,\n\t\tkeyboardHeight,\n\t\tscreenSize: effScreenSize,\n\t\tsheetY: position >= 0 ? activePositions[position] : void 0\n\t});\n\tconst keyboardStableFrameHeight = isWebKbSheet && isKeyboardVisible && frameSize > 0 ? frameSize : isNativeKbFitSheet && isKeyboardVisible && preKeyboardFrameSize.current > 0 ? preKeyboardFrameSize.current : 0;\n\tconst AnimatedView = animationDriver.View ?? View;\n\tuseIsomorphicLayoutEffect(() => {\n\t\tif (!(sheetInsideSheet && open)) return;\n\t\tsheetInsideSheet(true);\n\t\treturn () => {\n\t\t\tsheetInsideSheet(false);\n\t\t};\n\t}, [sheetInsideSheet, open]);\n\tconst nextParentContext = React.useMemo(() => ({ zIndex }), [zIndex]);\n\tconst startPosition = useDidFinishSSR() && screenSize ? screenSize : hiddenSize;\n\tconst animatedNumber = useAnimatedNumber(startPosition);\n\tconst at = React.useRef(startPosition);\n\tconst hasntMeasured = at.current === hiddenSize;\n\tconst [disableAnimation, setDisableAnimation] = useState(hasntMeasured);\n\tconst skipAdaptAnimation = React.useRef(false);\n\tif (controller?.skipNextAnimation) skipAdaptAnimation.current = true;\n\tconst hasScrollView = React.useRef(false);\n\tconst lastPositionIndexRef = React.useRef(-1);\n\tconst pendingTransitionRef = React.useRef(null);\n\tconst emitTransition = useEvent((phase, event, finished) => {\n\t\tconst e = {\n\t\t\tphase,\n\t\t\tcause: event.cause,\n\t\t\tposition: event.position\n\t\t};\n\t\tif (phase === \"end\") e.finished = finished;\n\t\tonTransition?.(e);\n\t\tcontroller?.onTransition?.(e);\n\t});\n\tconst syncAnimatedPosition = useEvent((value) => {\n\t\tat.current = value;\n\t\tscrollBridge.paneY = value;\n\t\tconst minY = activePositions[0];\n\t\tconst wasAtTop = scrollBridge.isAtTop;\n\t\tconst nowAtTop = value <= minY + 5;\n\t\tif (wasAtTop === nowAtTop) return;\n\t\tscrollBridge.isAtTop = nowAtTop;\n\t\tif (nowAtTop) {\n\t\t\tif (scrollBridge.lockScrollAtTop) {\n\t\t\t\tif (scrollBridge.y > 0) {\n\t\t\t\t\tscrollBridge.forceScrollTo?.(0);\n\t\t\t\t\tscrollBridge.y = 0;\n\t\t\t\t}\n\t\t\t\tscrollBridge.scrollLockY = 0;\n\t\t\t\tscrollBridge.setScrollEnabled?.(false, 0);\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tif (scrollBridge.y > 0) {\n\t\t\t\tscrollBridge.forceScrollTo?.(0);\n\t\t\t\tscrollBridge.y = 0;\n\t\t\t}\n\t\t\tscrollBridge.scrollLockY = void 0;\n\t\t\tscrollBridge.setScrollEnabled?.(true);\n\t\t} else {\n\t\t\tscrollBridge.scrollLockY = 0;\n\t\t\tscrollBridge.setScrollEnabled?.(false);\n\t\t}\n\t});\n\tconst setAnimatedPositionDirect = useEvent((value) => {\n\t\tsyncAnimatedPosition(value);\n\t\tanimatedNumber.setValue(value, { type: \"direct\" });\n\t});\n\tconst getAnimatedPosition = useEvent(() => {\n\t\tconst value = animatedNumber.getValue();\n\t\tsyncAnimatedPosition(value);\n\t\treturn value;\n\t});\n\tfunction stopSpring() {\n\t\tanimatedNumber.stop();\n\t\tif (scrollBridge.onFinishAnimate) {\n\t\t\tscrollBridge.onFinishAnimate();\n\t\t\tscrollBridge.onFinishAnimate = void 0;\n\t\t}\n\t}\n\tconst animateTo = useEvent((position2, animationOverride) => {\n\t\tif (frameSize === 0) return;\n\t\tconst closeTarget = isWeb ? Math.max(effScreenSize, getMaxViewportHeight()) : effScreenSize;\n\t\tconst isDismissPosition = dismissOnSnapToBottom && position2 === activePositions.length - 1;\n\t\tconst isOpenAnimation = position2 !== -1 && !isHidden && !isDismissPosition;\n\t\tconst toValue = isOpenAnimation ? activePositions[position2] : closeTarget;\n\t\tif (at.current === toValue) {\n\t\t\tif (isDismissPosition) {\n\t\t\t\tif (pendingTransitionRef.current) {\n\t\t\t\t\temitTransition(\"end\", pendingTransitionRef.current, false);\n\t\t\t\t\tpendingTransitionRef.current = null;\n\t\t\t\t}\n\t\t\t\tstopSpring();\n\t\t\t\tconst event2 = {\n\t\t\t\t\tcause: \"close\",\n\t\t\t\t\tposition: toValue\n\t\t\t\t};\n\t\t\t\tlastPositionIndexRef.current = -1;\n\t\t\t\temitTransition(\"start\", event2);\n\t\t\t\tsyncAnimatedPosition(toValue);\n\t\t\t\tsetIsFullyClosed(true);\n\t\t\t\temitTransition(\"end\", event2, true);\n\t\t\t}\n\t\t\treturn;\n\t\t}\n\t\tat.current = toValue;\n\t\tconst cause = !isOpenAnimation ? \"close\" : lastPositionIndexRef.current < 0 ? \"open\" : \"snap\";\n\t\tlastPositionIndexRef.current = isOpenAnimation ? position2 : -1;\n\t\tconst event = {\n\t\t\tcause,\n\t\t\tposition: toValue\n\t\t};\n\t\tif (pendingTransitionRef.current) {\n\t\t\temitTransition(\"end\", pendingTransitionRef.current, false);\n\t\t\tpendingTransitionRef.current = null;\n\t\t}\n\t\tstopSpring();\n\t\tconst animationCompleteCallback = () => {\n\t\t\tif (at.current !== toValue) return;\n\t\t\tsyncAnimatedPosition(toValue);\n\t\t\tpendingTransitionRef.current = null;\n\t\t\tif (!isOpenAnimation && !openRef.current) setIsFullyClosed(true);\n\t\t\temitTransition(\"end\", event, true);\n\t\t};\n\t\tpendingTransitionRef.current = event;\n\t\temitTransition(\"start\", event);\n\t\tif (skipAdaptAnimation.current) {\n\t\t\tskipAdaptAnimation.current = false;\n\t\t\tanimatedNumber.setValue(toValue, {\n\t\t\t\ttype: \"timing\",\n\t\t\t\tduration: 0\n\t\t\t}, animationCompleteCallback);\n\t\t\treturn;\n\t\t}\n\t\tconst resolvedConfig = animationOverride || {\n\t\t\ttype: \"spring\",\n\t\t\t...transitionConfig\n\t\t};\n\t\tconst springConfig = !resolvedConfig.type || resolvedConfig.type === \"spring\" ? {\n\t\t\trestDisplacementThreshold: 1,\n\t\t\trestSpeedThreshold: 10,\n\t\t\tenergyThreshold: 1e-5,\n\t\t\t...resolvedConfig\n\t\t} : resolvedConfig;\n\t\tanimatedNumber.setValue(toValue, springConfig, animationCompleteCallback);\n\t});\n\tuseIsomorphicLayoutEffect(() => {\n\t\tif (hasntMeasured && screenSize && frameSize) {\n\t\t\tat.current = screenSize;\n\t\t\tanimatedNumber.setValue(screenSize, { type: \"direct\" });\n\t\t\tsyncAnimatedPosition(screenSize);\n\t\t\tsetTimeout(() => {\n\t\t\t\tsetDisableAnimation(false);\n\t\t\t}, 10);\n\t\t\treturn;\n\t\t}\n\t\tif (disableAnimation) return;\n\t\tif (isDraggingRef.current) return;\n\t\tif (!frameSize || !screenSize || isHidden || hasntMeasured && !open) return;\n\t\tanimateTo(position);\n\t\tif (position === -1) {\n\t\t\tscrollBridge.scrollLock = false;\n\t\t\tscrollBridge.scrollStartY = -1;\n\t\t}\n\t\tif (open && position >= 0) {\n\t\t\tconst isTopPosition = position === 0;\n\t\t\tscrollBridge.isAtTop = isTopPosition;\n\t\t\tif (isTopPosition) {\n\t\t\t\tscrollBridge.scrollLockY = void 0;\n\t\t\t\tscrollBridge.setScrollEnabled?.(true);\n\t\t\t} else {\n\t\t\t\tscrollBridge.scrollLockY = 0;\n\t\t\t\tscrollBridge.setScrollEnabled?.(false);\n\t\t\t}\n\t\t}\n\t}, [\n\t\thasntMeasured,\n\t\tdisableAnimation,\n\t\tisHidden,\n\t\tframeSize,\n\t\tscreenSize,\n\t\topen,\n\t\tposition\n\t]);\n\tconst disableDrag = props.disableDrag ?? controller?.disableDrag;\n\tuseThemeName();\n\tconst [blockPan, setBlockPan] = React.useState(false);\n\tconst panConfig = React.useMemo(() => {\n\t\tif (disableDrag) return null;\n\t\tif (!frameSize) return null;\n\t\tif (isShowingInnerSheet) return null;\n\t\tconst minY = activePositions[0];\n\t\tscrollBridge.paneMinY = minY;\n\t\tlet startY = at.current;\n\t\tfunction setPanning(val) {\n\t\t\tsetIsDragging(val);\n\t\t\tif (!sheetHiddenStyleSheet) {\n\t\t\t\tsheetHiddenStyleSheet = document.createElement(\"style\");\n\t\t\t\tif (typeof document.head !== \"undefined\") document.head.appendChild(sheetHiddenStyleSheet);\n\t\t\t}\n\t\t\tif (!val) sheetHiddenStyleSheet.innerText = \"\";\n\t\t\telse sheetHiddenStyleSheet.innerText = \":root * { user-select: none !important; -webkit-user-select: none !important; }\";\n\t\t}\n\t\tconst release = ({ vy }) => {\n\t\t\tscrollBridge.setParentDragging(false);\n\t\t\tif (scrollBridge.scrollLock) return;\n\t\t\tisExternalDrag = false;\n\t\t\tpreviouslyScrolling = false;\n\t\t\tsetPanning(false);\n\t\t\tconst currentPos = at.current;\n\t\t\tconst closestPoint = getSheetReleasePosition({\n\t\t\t\tpositions: activePositions,\n\t\t\t\tprojectedEnd: currentPos + frameSize * vy * .2,\n\t\t\t\tcurrentPosition: currentPos,\n\t\t\t\tframeSize,\n\t\t\t\tdismissOnSnapToBottom,\n\t\t\t\tsnapPointsMode,\n\t\t\t\tisKeyboardVisible,\n\t\t\t\tisWeb\n\t\t\t});\n\t\t\tsetPosition(closestPoint);\n\t\t\tanimateTo(closestPoint);\n\t\t};\n\t\tconst finish = (_e, state2) => {\n\t\t\trelease({\n\t\t\t\tvy: state2.vy,\n\t\t\t\tdragAt: state2.dy\n\t\t\t});\n\t\t};\n\t\tlet previouslyScrolling = false;\n\t\tconst onMoveShouldSet = (e, { dy }) => {\n\t\t\tfunction getShouldSet() {\n\t\t\t\tif (e.target === providerProps.handleRef.current) return true;\n\t\t\t\tif (scrollBridge.scrollNodeTouched) return false;\n\t\t\t\tif (scrollBridge.hasScrollableContent === true) {\n\t\t\t\t\tif (scrollBridge.scrollLock) return false;\n\t\t\t\t\tconst isScrolled = scrollBridge.y !== 0;\n\t\t\t\t\tconst isDraggingUp = dy < 0;\n\t\t\t\t\tconst isNearTop = scrollBridge.paneY - 5 <= scrollBridge.paneMinY;\n\t\t\t\t\tif (isScrolled) return false;\n\t\t\t\t\tif (isNearTop) {\n\t\t\t\t\t\tif (hasScrollView.current && isDraggingUp) return false;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\treturn Math.abs(dy) > 10;\n\t\t\t}\n\t\t\tconst granted = getShouldSet();\n\t\t\tif (granted) scrollBridge.setParentDragging(true);\n\t\t\treturn granted;\n\t\t};\n\t\tconst grant = () => {\n\t\t\tsetPanning(true);\n\t\t\tstopSpring();\n\t\t\tstartY = getAnimatedPosition();\n\t\t};\n\t\tlet isExternalDrag = false;\n\t\tscrollBridge.startPanDrag = () => {\n\t\t\tisExternalDrag = true;\n\t\t\tgrant();\n\t\t};\n\t\tscrollBridge.drag = (dy) => {\n\t\t\tif (!isExternalDrag) {\n\t\t\t\tisExternalDrag = true;\n\t\t\t\tgrant();\n\t\t\t}\n\t\t\tsetAnimatedPositionDirect(resisted(dy + startY, minY));\n\t\t};\n\t\tscrollBridge.release = release;\n\t\tscrollBridge.snapToPosition = (positionIndex) => {\n\t\t\tisExternalDrag = false;\n\t\t\tsetPanning(false);\n\t\t\tsetPosition(positionIndex);\n\t\t\tanimateTo(positionIndex);\n\t\t};\n\t\treturn {\n\t\t\tonMoveShouldSetPanResponder: onMoveShouldSet,\n\t\t\tonPanResponderTerminationRequest: () => false,\n\t\t\tonPanResponderGrant: grant,\n\t\t\tonPanResponderMove: (_e, { dy }) => {\n\t\t\t\tconst to = resisted(dy + startY, minY);\n\t\t\t\tif (to <= minY) scrollBridge.setParentDragging(false);\n\t\t\t\telse scrollBridge.setParentDragging(true);\n\t\t\t\tsetAnimatedPositionDirect(to);\n\t\t\t},\n\t\t\tonPanResponderEnd: finish,\n\t\t\tonPanResponderTerminate: finish,\n\t\t\tonPanResponderRelease: finish\n\t\t};\n\t}, [\n\t\tdisableDrag,\n\t\tisShowingInnerSheet,\n\t\tanimateTo,\n\t\tframeSize,\n\t\tactivePositions,\n\t\tsetPosition,\n\t\tdismissOnSnapToBottom,\n\t\tsnapPointsMode\n\t]);\n\tReact.useEffect(() => {\n\t\tif (isDragging || isHidden || !open || disableAnimation) return;\n\t\tif (!frameSize || !screenSize) return;\n\t\tanimateTo(position, {\n\t\t\ttype: \"timing\",\n\t\t\tduration: 250\n\t\t});\n\t}, [isKeyboardVisible, keyboardHeight]);\n\tconst wasDragging = React.useRef(false);\n\tReact.useEffect(() => {\n\t\tif (isDragging) {\n\t\t\twasDragging.current = true;\n\t\t\treturn;\n\t\t}\n\t\tif (!wasDragging.current) return;\n\t\twasDragging.current = false;\n\t\tif (!frameSize || !screenSize || isHidden || !open) return;\n\t\tanimateTo(position);\n\t}, [isDragging]);\n\tReact.useEffect(() => {\n\t\tif (!open && isKeyboardVisible) {\n\t\t\tdismissKeyboard();\n\t\t\tpauseKeyboardHandler.current = false;\n\t\t\tflushPendingHide();\n\t\t}\n\t}, [open]);\n\tReact.useEffect(() => {\n\t\tif (!isWeb || !modal || !open || shouldHideParentSheet) return;\n\t\tconst layer = {};\n\t\tsheetEscapeLayers.push(layer);\n\t\tconst onKeyDown = (event) => {\n\t\t\tif (event.key === \"Escape\") {\n\t\t\t\tif (sheetEscapeLayers[sheetEscapeLayers.length - 1] === layer) state.setOpen(false);\n\t\t\t}\n\t\t};\n\t\tdocument.addEventListener(\"keydown\", onKeyDown);\n\t\treturn () => {\n\t\t\tconst index = sheetEscapeLayers.indexOf(layer);\n\t\t\tif (index > -1) sheetEscapeLayers.splice(index, 1);\n\t\t\tdocument.removeEventListener(\"keydown\", onKeyDown);\n\t\t};\n\t}, [\n\t\tmodal,\n\t\topen,\n\t\tshouldHideParentSheet,\n\t\tstate.setOpen\n\t]);\n\tconst { panGesture, panGestureRef, gestureHandlerEnabled } = useGestureHandlerPan({\n\t\tpositions: activePositions,\n\t\tframeSize,\n\t\tsetPosition,\n\t\tanimateTo,\n\t\tstopSpring,\n\t\tscrollBridge,\n\t\tsetIsDragging,\n\t\tgetCurrentPosition: getAnimatedPosition,\n\t\tresisted,\n\t\tdisableDrag,\n\t\tisShowingInnerSheet,\n\t\tsetAnimatedPosition: setAnimatedPositionDirect,\n\t\tdismissOnSnapToBottom,\n\t\tsnapPointsMode,\n\t\tisKeyboardVisible,\n\t\tpauseKeyboardHandler\n\t});\n\tconst ignoreLayoutForKeyboard = useEvent(() => isWeb && moveOnKeyboardChange && getWebKeyboardResizeHeight() >= MIN_KEYBOARD_HEIGHT);\n\tconst handleAnimationViewLayout = useEvent((e) => {\n\t\tif (!open && stableFrameSize.current !== 0) return;\n\t\tconst layoutHeight = e.nativeEvent?.layout.height;\n\t\tif (ignoreLayoutForKeyboard() && frameSize > 0) return;\n\t\tconst next = modal ? Math.min(layoutHeight, getStableViewportHeight()) : layoutHeight;\n\t\tif (!next) return;\n\t\tsetFrameSize(Math.round(next));\n\t});\n\tconst handleMaxContentViewLayout = React.useCallback((e) => {\n\t\tif (ignoreLayoutForKeyboard() && screenSize > 0) return;\n\t\tconst next = Math.min(e.nativeEvent?.layout.height, getStableViewportHeight());\n\t\tif (!next) return;\n\t\tsetMaxContentSize(Math.round(next));\n\t}, [ignoreLayoutForKeyboard, screenSize]);\n\tconst animatedStyle = useAnimatedNumberStyle(animatedNumber, React.useCallback((val) => {\n\t\t\"worklet\";\n\t\treturn { transform: [{ translateY: frameSize === 0 ? hiddenSize : val }] };\n\t}, [frameSize]));\n\tconst [isFullyClosed, setIsFullyClosed] = React.useState(false);\n\tif (open && isFullyClosed) setIsFullyClosed(false);\n\tconst hasEverOpened = React.useRef(open);\n\tif (open) hasEverOpened.current = true;\n\tconst isVisuallyActive = open || hasEverOpened.current && !isFullyClosed;\n\tconst applyHidden = shouldHideParentSheet || isFullyClosed && !disableHideWhenClosed;\n\tconst forcedContentHeight = hasFit ? void 0 : snapPointsMode === \"percent\" ? `${maxSnapPoint}${isWeb ? modal ? \"dvh\" : \"%\" : \"%\"}` : maxSnapPoint;\n\tconst setHasScrollView = React.useCallback((val) => {\n\t\thasScrollView.current = val;\n\t}, []);\n\tconst animatedPositionValue = React.useMemo(() => ({\n\t\tvalue: animatedNumber,\n\t\tscreenSize: effScreenSize,\n\t\tframeSize,\n\t\tsnapOffsets: activePositions,\n\t\tminY: activePositions[0] ?? 0\n\t}), [\n\t\tanimatedNumber,\n\t\teffScreenSize,\n\t\tframeSize,\n\t\tactivePositions\n\t]);\n\tconst { overlayChildren, animatedChildren } = React.useMemo(() => partitionSheetChildren(props.children), [props.children]);\n\tlet contents = /* @__PURE__ */ jsx(LayoutMeasurementController, {\n\t\tdisable: !open,\n\t\tchildren: /* @__PURE__ */ jsx(ParentSheetContext.Provider, {\n\t\t\tvalue: nextParentContext,\n\t\t\tchildren: /* @__PURE__ */ jsx(SheetProvider, {\n\t\t\t\t...providerProps,\n\t\t\t\tkeyboardOccludedHeight,\n\t\t\t\tisKeyboardVisible,\n\t\t\t\tkeyboardStableFrameHeight,\n\t\t\t\tsetHasScrollView,\n\t\t\t\tchildren: /* @__PURE__ */ jsx(GestureSheetProvider, {\n\t\t\t\t\tisDragging,\n\t\t\t\t\tblockPan,\n\t\t\t\t\tsetBlockPan,\n\t\t\t\t\tpanGesture,\n\t\t\t\t\tpanGestureRef,\n\t\t\t\t\tchildren: /* @__PURE__ */ jsxs(SheetAnimatedPositionContext.Provider, {\n\t\t\t\t\t\tvalue: animatedPositionValue,\n\t\t\t\t\t\tchildren: [\n\t\t\t\t\t\t\t/* @__PURE__ */ jsx(SheetOverlayLayerContext.Provider, {\n\t\t\t\t\t\t\t\tvalue: true,\n\t\t\t\t\t\t\t\tchildren: /* @__PURE__ */ jsx(AnimatePresence, {\n\t\t\t\t\t\t\t\t\tcustom: { open },\n\t\t\t\t\t\t\t\t\tchildren: shouldHideParentSheet || !open ? null : overlayChildren\n\t\t\t\t\t\t\t\t})\n\t\t\t\t\t\t\t}),\n\t\t\t\t\t\t\tsnapPointsMode !== \"percent\" && /* @__PURE__ */ jsx(View, {\n\t\t\t\t\t\t\t\topacity: 0,\n\t\t\t\t\t\t\t\tposition: \"absolute\",\n\t\t\t\t\t\t\t\tinset: 0,\n\t\t\t\t\t\t\t\tpointerEvents: \"none\",\n\t\t\t\t\t\t\t\tonLayout: handleMaxContentViewLayout\n\t\t\t\t\t\t\t}),\n\t\t\t\t\t\t\t/* @__PURE__ */ jsx(AnimatedView, {\n\t\t\t\t\t\t\t\tref,\n\t\t\t\t\t\t\t\tonLayout: handleAnimationViewLayout,\n\t\t\t\t\t\t\t\ttransition: isDragging || disableAnimation ? null : transition,\n\t\t\t\t\t\t\t\tdisableClassName: true,\n\t\t\t\t\t\t\t\tstyle: [{\n\t\t\t\t\t\t\t\t\tposition: \"absolute\",\n\t\t\t\t\t\t\t\t\tzIndex,\n\t\t\t\t\t\t\t\t\twidth: \"100%\",\n\t\t\t\t\t\t\t\t\theight: forcedContentHeight,\n\t\t\t\t\t\t\t\t\tminHeight: forcedContentHeight,\n\t\t\t\t\t\t\t\t\t...applyHidden && { display: \"none\" },\n\t\t\t\t\t\t\t\t\t...(shouldHideParentSheet || !open) && { pointerEvents: \"none\" }\n\t\t\t\t\t\t\t\t}, animatedStyle],\n\t\t\t\t\t\t\t\tchildren: /* @__PURE__ */ jsx(SheetDragSurface, {\n\t\t\t\t\t\t\t\t\tgestureHandlerEnabled,\n\t\t\t\t\t\t\t\t\tpanGesture,\n\t\t\t\t\t\t\t\t\tpanConfig,\n\t\t\t\t\t\t\t\t\tchildren: animatedChildren\n\t\t\t\t\t\t\t\t})\n\t\t\t\t\t\t\t})\n\t\t\t\t\t\t]\n\t\t\t\t\t})\n\t\t\t\t})\n\t\t\t})\n\t\t})\n\t});\n\tconst shouldMountChildren = unmountChildrenWhenHidden ? !isFullyClosed : true;\n\tif (modal) {\n\t\tif (!shouldMountChildren) return null;\n\t\tconst RNGHRoot = getGestureHandlerState().RootView;\n\t\tconst mountedContents = /* @__PURE__ */ jsx(ContainerComponent, { children: contents });\n\t\tconst modalContents = /* @__PURE__ */ jsx(Portal, {\n\t\t\tstackZIndex: zIndex,\n\t\t\thidden: !isVisuallyActive,\n\t\t\t...portalProps,\n\t\t\tchildren: RNGHRoot ? /* @__PURE__ */ jsx(RNGHRoot, {\n\t\t\t\tstyle: open ? rnghRootStyleOpen : rnghRootStyleClosed,\n\t\t\t\tchildren: mountedContents\n\t\t\t}) : mountedContents\n\t\t});\n\t\tif (isWeb) return modalContents;\n\t\treturn /* @__PURE__ */ jsx(SheetInsideSheetContext.Provider, {\n\t\t\tvalue: onInnerSheet,\n\t\t\tchildren: modalContents\n\t\t});\n\t}\n\treturn contents;\n});\nfunction isSheetOverlayComponent(type) {\n\tlet staticConfig = type?.staticConfig;\n\twhile (staticConfig) {\n\t\tif (staticConfig[SHEET_OVERLAY_MARKER]) return true;\n\t\tstaticConfig = staticConfig.parentStaticConfig;\n\t}\n\treturn false;\n}\nfunction partitionSheetChildren(children) {\n\tconst overlayChildren = [];\n\tconst animatedChildren = [];\n\tReact.Children.forEach(children, (child) => {\n\t\tif (!React.isValidElement(child)) {\n\t\t\tanimatedChildren.push(child);\n\t\t\treturn;\n\t\t}\n\t\tif (isSheetOverlayComponent(child.type)) {\n\t\t\toverlayChildren.push(child);\n\t\t\treturn;\n\t\t}\n\t\tanimatedChildren.push(child);\n\t});\n\treturn {\n\t\toverlayChildren,\n\t\tanimatedChildren\n\t};\n}\nfunction getYPositions(mode, point, screenSize, frameSize) {\n\tif (!screenSize || !frameSize) return 0;\n\tif (mode === \"mixed\") {\n\t\tif (typeof point === \"number\") return screenSize - Math.min(screenSize, Math.max(0, point));\n\t\tif (point === \"fit\") return screenSize - Math.min(screenSize, frameSize);\n\t\tif (point.endsWith(\"%\")) {\n\t\t\tconst pct2 = Math.min(100, Math.max(0, Number(point.slice(0, -1)))) / 100;\n\t\t\tif (Number.isNaN(pct2)) {\n\t\t\t\tconsole.warn(formatDiagnostic(\"TAMAGUI_SHEET_SNAP_POINT\", \"Sheet\", \"snapPoints contains an invalid percentage string\", \"Use \\\"fit\\\", a pixel number, or a percentage such as \\\"50%\\\"\", \"snapPoint\", point));\n\t\t\t\treturn 0;\n\t\t\t}\n\t\t\treturn Math.round(screenSize - pct2 * screenSize);\n\t\t}\n\t\tconsole.warn(formatDiagnostic(\"TAMAGUI_SHEET_SNAP_POINT\", \"Sheet\", \"snapPoints contains an unsupported mixed-mode value\", \"Use \\\"fit\\\", a pixel number, or a percentage such as \\\"50%\\\"\", \"snapPoint\", point));\n\t\treturn 0;\n\t}\n\tif (mode === \"fit\") {\n\t\tif (point === 0) return screenSize;\n\t\treturn screenSize - Math.min(screenSize, frameSize);\n\t}\n\tif (mode === \"constant\" && typeof point === \"number\") return screenSize - Math.min(screenSize, Math.max(0, point));\n\tconst pct = Math.min(100, Math.max(0, Number(point))) / 100;\n\tif (Number.isNaN(pct)) {\n\t\tconsole.warn(formatDiagnostic(\"TAMAGUI_SHEET_SNAP_POINT\", \"Sheet\", \"snapPoints contains a value that cannot be converted to a percentage\", \"Use a numeric percentage such as 50\", \"snapPoint\", point));\n\t\treturn 0;\n\t}\n\treturn Math.round(screenSize - pct * screenSize);\n}\n\nexport { SheetImplementationCustom, isSheetOverlayComponent };"],"mappings":"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"}
|
|
@@ -1,20 +1,21 @@
|
|
|
1
1
|
import { jsx, jsxs } from "react/jsx-runtime";
|
|
2
2
|
import { ProvideAdaptContext, useAdaptContext } from "@tamagui/adapt";
|
|
3
3
|
import { AnimatePresence } from "@tamagui/animate-presence";
|
|
4
|
+
import { getTransitionResolver } from "@tamagui/animation-helpers/transitionResolver";
|
|
4
5
|
import { useComposedRefs } from "@tamagui/compose-refs";
|
|
5
6
|
import { isWeb, useIsomorphicLayoutEffect } from "@tamagui/constants";
|
|
6
7
|
import { LayoutMeasurementController, View, createRefComponent, formatDiagnostic, useAnimatedNumber, useAnimatedNumberStyle, useAnimationDriver, useDidFinishSSR, useEvent, useThemeName } from "@tamagui/core";
|
|
7
8
|
import { Portal, needsPortalRepropagation } from "@tamagui/portal";
|
|
8
9
|
import React, { useState } from "react";
|
|
9
|
-
import { Dimensions, PanResponder, View as View$1 } from "react-native";
|
|
10
10
|
import { ParentSheetContext, SheetInsideSheetContext } from "./contexts.native.js";
|
|
11
11
|
import { SHEET_OVERLAY_MARKER } from "./constants.native.js";
|
|
12
|
-
import { GestureDetectorWrapper } from "./GestureDetectorWrapper.native.js";
|
|
13
12
|
import { getGestureHandlerState } from "./gestureState.native.js";
|
|
13
|
+
import { SheetDragSurface } from "./SheetDragSurface.native.js";
|
|
14
|
+
import { getStableViewportHeight } from "./stableViewportHeight.native.js";
|
|
14
15
|
import { GestureSheetProvider } from "./GestureSheetContext.native.js";
|
|
15
16
|
import { resisted } from "./helpers.native.js";
|
|
16
17
|
import { getKeyboardAdjustedSheetY, getKeyboardOccludedHeight, getSheetReleasePosition } from "./keyboardAvoidance.native.js";
|
|
17
|
-
import { MIN_KEYBOARD_HEIGHT, getMaxViewportHeight,
|
|
18
|
+
import { MIN_KEYBOARD_HEIGHT, getMaxViewportHeight, getWebKeyboardResizeHeight, getWebVisualViewportOffsetTop } from "./webViewport.native.js";
|
|
18
19
|
import { SheetAnimatedPositionContext, SheetOverlayLayerContext, SheetProvider } from "./SheetContext.native.js";
|
|
19
20
|
import { useGestureHandlerPan } from "./useGestureHandlerPan.native.js";
|
|
20
21
|
import { useKeyboardControllerSheet } from "./useKeyboardControllerSheet.native.js";
|
|
@@ -32,11 +33,6 @@ var rnghRootStyleClosed = {
|
|
|
32
33
|
height: 0
|
|
33
34
|
};
|
|
34
35
|
var sheetEscapeLayers = [];
|
|
35
|
-
var relativeDimensionTo = isWeb ? "window" : "screen";
|
|
36
|
-
function getStableViewportHeight() {
|
|
37
|
-
if (isWeb && typeof window !== "undefined") return getStableLayoutViewportHeight();
|
|
38
|
-
return Dimensions.get(relativeDimensionTo).height;
|
|
39
|
-
}
|
|
40
36
|
var SheetImplementationCustom = createRefComponent(function SheetImplementationCustom2(props, forwardedRef) {
|
|
41
37
|
var parentSheet = React.useContext(ParentSheetContext);
|
|
42
38
|
var safeAreaInsets = useSafeAreaInsets();
|
|
@@ -52,18 +48,21 @@ var SheetImplementationCustom = createRefComponent(function SheetImplementationC
|
|
|
52
48
|
var ref = useComposedRefs(forwardedRef, React.useRef(void 0), providerProps.contentRef);
|
|
53
49
|
var animationDriver = useAnimationDriver();
|
|
54
50
|
var transitionConfig = (function() {
|
|
55
|
-
var
|
|
51
|
+
var _getTransitionResolver, _resolved_all;
|
|
56
52
|
if (transitionConfigProp) return transitionConfigProp;
|
|
57
|
-
var
|
|
58
|
-
var
|
|
59
|
-
if (
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
53
|
+
var resolved = transition ? (_getTransitionResolver = getTransitionResolver()) === null || _getTransitionResolver === void 0 ? void 0 : _getTransitionResolver.resolve(transition, { animations: animationDriver.animations }) : null;
|
|
54
|
+
var timing = resolved === null || resolved === void 0 ? void 0 : (_resolved_all = resolved.all) === null || _resolved_all === void 0 ? void 0 : _resolved_all.timing;
|
|
55
|
+
if (!timing) return null;
|
|
56
|
+
if (timing.kind === "timing") return {
|
|
57
|
+
type: "timing",
|
|
58
|
+
duration: timing.durationMs
|
|
59
|
+
};
|
|
60
|
+
return {
|
|
61
|
+
type: "spring",
|
|
62
|
+
stiffness: timing.stiffness,
|
|
63
|
+
damping: timing.damping,
|
|
64
|
+
mass: timing.mass
|
|
65
|
+
};
|
|
67
66
|
})();
|
|
68
67
|
var [isShowingInnerSheet, setIsShowingInnerSheet] = React.useState(false);
|
|
69
68
|
var shouldHideParentSheet = !isWeb && modal && isShowingInnerSheet && needsPortalRepropagation();
|
|
@@ -292,15 +291,11 @@ var SheetImplementationCustom = createRefComponent(function SheetImplementationC
|
|
|
292
291
|
useIsomorphicLayoutEffect(function() {
|
|
293
292
|
if (hasntMeasured && screenSize && frameSize) {
|
|
294
293
|
at.current = screenSize;
|
|
295
|
-
animatedNumber.setValue(screenSize, {
|
|
296
|
-
|
|
297
|
-
|
|
298
|
-
|
|
299
|
-
|
|
300
|
-
setTimeout(function() {
|
|
301
|
-
setDisableAnimation(false);
|
|
302
|
-
}, 10);
|
|
303
|
-
});
|
|
294
|
+
animatedNumber.setValue(screenSize, { type: "direct" });
|
|
295
|
+
syncAnimatedPosition(screenSize);
|
|
296
|
+
setTimeout(function() {
|
|
297
|
+
setDisableAnimation(false);
|
|
298
|
+
}, 10);
|
|
304
299
|
return;
|
|
305
300
|
}
|
|
306
301
|
if (disableAnimation) return;
|
|
@@ -337,10 +332,10 @@ var SheetImplementationCustom = createRefComponent(function SheetImplementationC
|
|
|
337
332
|
var disableDrag = (_props_disableDrag = props.disableDrag) !== null && _props_disableDrag !== void 0 ? _props_disableDrag : controller === null || controller === void 0 ? void 0 : controller.disableDrag;
|
|
338
333
|
useThemeName();
|
|
339
334
|
var [blockPan, setBlockPan] = React.useState(false);
|
|
340
|
-
var
|
|
341
|
-
if (disableDrag) return;
|
|
342
|
-
if (!frameSize) return;
|
|
343
|
-
if (isShowingInnerSheet) return;
|
|
335
|
+
var panConfig = React.useMemo(function() {
|
|
336
|
+
if (disableDrag) return null;
|
|
337
|
+
if (!frameSize) return null;
|
|
338
|
+
if (isShowingInnerSheet) return null;
|
|
344
339
|
var minY = activePositions[0];
|
|
345
340
|
scrollBridge.paneMinY = minY;
|
|
346
341
|
var startY = at.current;
|
|
@@ -420,7 +415,7 @@ var SheetImplementationCustom = createRefComponent(function SheetImplementationC
|
|
|
420
415
|
setPosition(positionIndex);
|
|
421
416
|
animateTo(positionIndex);
|
|
422
417
|
};
|
|
423
|
-
return
|
|
418
|
+
return {
|
|
424
419
|
onMoveShouldSetPanResponder: onMoveShouldSet,
|
|
425
420
|
onPanResponderTerminationRequest: function() {
|
|
426
421
|
return false;
|
|
@@ -436,7 +431,7 @@ var SheetImplementationCustom = createRefComponent(function SheetImplementationC
|
|
|
436
431
|
onPanResponderEnd: finish,
|
|
437
432
|
onPanResponderTerminate: finish,
|
|
438
433
|
onPanResponderRelease: finish
|
|
439
|
-
}
|
|
434
|
+
};
|
|
440
435
|
}, [
|
|
441
436
|
disableDrag,
|
|
442
437
|
isShowingInnerSheet,
|
|
@@ -589,16 +584,11 @@ var SheetImplementationCustom = createRefComponent(function SheetImplementationC
|
|
|
589
584
|
children: shouldHideParentSheet || !open ? null : overlayChildren
|
|
590
585
|
})
|
|
591
586
|
}),
|
|
592
|
-
snapPointsMode !== "percent" && /* @__PURE__ */ jsx(View
|
|
593
|
-
|
|
594
|
-
|
|
595
|
-
|
|
596
|
-
|
|
597
|
-
left: 0,
|
|
598
|
-
right: 0,
|
|
599
|
-
bottom: 0,
|
|
600
|
-
pointerEvents: "none"
|
|
601
|
-
},
|
|
587
|
+
snapPointsMode !== "percent" && /* @__PURE__ */ jsx(View, {
|
|
588
|
+
opacity: 0,
|
|
589
|
+
position: "absolute",
|
|
590
|
+
inset: 0,
|
|
591
|
+
pointerEvents: "none",
|
|
602
592
|
onLayout: handleMaxContentViewLayout
|
|
603
593
|
}),
|
|
604
594
|
/* @__PURE__ */ jsx(AnimatedView, {
|
|
@@ -615,17 +605,10 @@ var SheetImplementationCustom = createRefComponent(function SheetImplementationC
|
|
|
615
605
|
...applyHidden && { display: "none" },
|
|
616
606
|
...(shouldHideParentSheet || !open) && { pointerEvents: "none" }
|
|
617
607
|
}, animatedStyle],
|
|
618
|
-
children:
|
|
619
|
-
|
|
620
|
-
|
|
621
|
-
|
|
622
|
-
}) : /* @__PURE__ */ jsx(View$1, {
|
|
623
|
-
...panResponder === null || panResponder === void 0 ? void 0 : panResponder.panHandlers,
|
|
624
|
-
style: {
|
|
625
|
-
flex: 1,
|
|
626
|
-
width: "100%",
|
|
627
|
-
height: "100%"
|
|
628
|
-
},
|
|
608
|
+
children: /* @__PURE__ */ jsx(SheetDragSurface, {
|
|
609
|
+
gestureHandlerEnabled,
|
|
610
|
+
panGesture,
|
|
611
|
+
panConfig,
|
|
629
612
|
children: animatedChildren
|
|
630
613
|
})
|
|
631
614
|
})
|
|
@@ -644,13 +627,14 @@ var SheetImplementationCustom = createRefComponent(function SheetImplementationC
|
|
|
644
627
|
});
|
|
645
628
|
var shouldMountChildren = unmountChildrenWhenHidden ? !isFullyClosed : true;
|
|
646
629
|
if (modal) {
|
|
630
|
+
if (!shouldMountChildren) return null;
|
|
647
631
|
var RNGHRoot = getGestureHandlerState().RootView;
|
|
648
|
-
var mountedContents =
|
|
632
|
+
var mountedContents = /* @__PURE__ */ jsx(ContainerComponent, { children: contents });
|
|
649
633
|
var modalContents = /* @__PURE__ */ jsx(Portal, {
|
|
650
634
|
stackZIndex: zIndex,
|
|
651
635
|
hidden: !isVisuallyActive,
|
|
652
636
|
...portalProps,
|
|
653
|
-
children:
|
|
637
|
+
children: RNGHRoot ? /* @__PURE__ */ jsx(RNGHRoot, {
|
|
654
638
|
style: open ? rnghRootStyleOpen : rnghRootStyleClosed,
|
|
655
639
|
children: mountedContents
|
|
656
640
|
}) : mountedContents
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SheetImplementationCustom.native.js","names":[],"sources":["esm/SheetImplementationCustom.native.js"],"sourcesContent":["import { jsx, jsxs } from \"react/jsx-runtime\";\nimport { ProvideAdaptContext, useAdaptContext } from \"@tamagui/adapt\";\nimport { AnimatePresence } from \"@tamagui/animate-presence\";\nimport { useComposedRefs } from \"@tamagui/compose-refs\";\nimport { isWeb, useIsomorphicLayoutEffect } from \"@tamagui/constants\";\nimport { LayoutMeasurementController, View, createRefComponent, formatDiagnostic, useAnimatedNumber, useAnimatedNumberStyle, useAnimationDriver, useDidFinishSSR, useEvent, useThemeName } from \"@tamagui/core\";\nimport { Portal, needsPortalRepropagation } from \"@tamagui/portal\";\nimport React, { useState } from \"react\";\nimport { Dimensions, PanResponder, View as View$1 } from \"react-native\";\nimport { ParentSheetContext, SheetInsideSheetContext } from \"./contexts\";\nimport { SHEET_OVERLAY_MARKER } from \"./constants\";\nimport { GestureDetectorWrapper } from \"./GestureDetectorWrapper\";\nimport { getGestureHandlerState } from \"./gestureState\";\nimport { GestureSheetProvider } from \"./GestureSheetContext\";\nimport { resisted } from \"./helpers\";\nimport { getKeyboardAdjustedSheetY, getKeyboardOccludedHeight, getSheetReleasePosition } from \"./keyboardAvoidance\";\nimport { MIN_KEYBOARD_HEIGHT, getMaxViewportHeight, getStableLayoutViewportHeight, getWebKeyboardResizeHeight, getWebVisualViewportOffsetTop } from \"./webViewport\";\nimport { SheetAnimatedPositionContext, SheetOverlayLayerContext, SheetProvider } from \"./SheetContext\";\nimport { useGestureHandlerPan } from \"./useGestureHandlerPan\";\nimport { useKeyboardControllerSheet } from \"./useKeyboardControllerSheet\";\nimport { SafeAreaInsetsContext, useSafeAreaInsets } from \"./useSafeAreaInsets\";\nimport { useSheetOpenState } from \"./useSheetOpenState\";\nimport { useSheetProviderProps } from \"./useSheetProviderProps\";\n\nvar hiddenSize = 10000.1;\nvar rnghRootStyleOpen = {\n\twidth: \"100%\",\n\theight: \"100%\"\n};\nvar rnghRootStyleClosed = {\n\twidth: \"100%\",\n\theight: 0\n};\nvar sheetEscapeLayers = [];\nvar relativeDimensionTo = isWeb ? \"window\" : \"screen\";\nfunction getStableViewportHeight() {\n\tif (isWeb && typeof window !== \"undefined\") return getStableLayoutViewportHeight();\n\treturn Dimensions.get(relativeDimensionTo).height;\n}\nvar SheetImplementationCustom = createRefComponent(function SheetImplementationCustom2(props, forwardedRef) {\n\tvar parentSheet = React.useContext(ParentSheetContext);\n\tvar safeAreaInsets = useSafeAreaInsets();\n\tvar _safeAreaInsets_top;\n\tvar safeAreaTopInset = (_safeAreaInsets_top = safeAreaInsets === null || safeAreaInsets === void 0 ? void 0 : safeAreaInsets.top) !== null && _safeAreaInsets_top !== void 0 ? _safeAreaInsets_top : 0;\n\tvar { transition, transitionConfig: transitionConfigProp, modal = false, zIndex = parentSheet.zIndex + 1, moveOnKeyboardChange = false, unmountChildrenWhenHidden = false, disableHideWhenClosed = false, portalProps, containerComponent: ContainerComponent = React.Fragment, onTransition } = props;\n\tvar state = useSheetOpenState(props);\n\tvar providerProps = useSheetProviderProps(props, state);\n\tvar { frameSize, setFrameSize, dismissOnSnapToBottom, snapPoints, snapPointsMode, hasFit, position, setPosition, scrollBridge, screenSize, setMaxContentSize, maxSnapPoint } = providerProps;\n\tvar { open, controller, isHidden } = state;\n\tvar openRef = React.useRef(open);\n\topenRef.current = open;\n\tvar ref = useComposedRefs(forwardedRef, React.useRef(void 0), providerProps.contentRef);\n\tvar animationDriver = useAnimationDriver();\n\tvar transitionConfig = (function() {\n\t\tvar _animationDriver_animations;\n\t\tif (transitionConfigProp) return transitionConfigProp;\n\t\tvar [animationProp, animationPropConfig] = !transition ? [] : Array.isArray(transition) ? transition : [transition];\n\t\tvar namedConfig = animationProp && ((_animationDriver_animations = animationDriver.animations) === null || _animationDriver_animations === void 0 ? void 0 : _animationDriver_animations[animationProp]);\n\t\tif (namedConfig) {\n\t\t\tif (typeof namedConfig === \"string\") return animationPropConfig !== null && animationPropConfig !== void 0 ? animationPropConfig : null;\n\t\t\treturn {\n\t\t\t\t...namedConfig,\n\t\t\t\t...animationPropConfig\n\t\t\t};\n\t\t}\n\t\treturn null;\n\t})();\n\tvar [isShowingInnerSheet, setIsShowingInnerSheet] = React.useState(false);\n\tvar shouldHideParentSheet = !isWeb && modal && isShowingInnerSheet && needsPortalRepropagation();\n\tvar sheetInsideSheet = React.useContext(SheetInsideSheetContext);\n\tvar onInnerSheet = React.useCallback(function(hasChild) {\n\t\tsetIsShowingInnerSheet(hasChild);\n\t}, []);\n\tvar { keyboardHeight, isKeyboardVisible, dismissKeyboard, pauseKeyboardHandler, flushPendingHide } = useKeyboardControllerSheet({ enabled: Boolean(moveOnKeyboardChange) });\n\tvar stableFrameSize = React.useRef(frameSize);\n\tReact.useEffect(function() {\n\t\tif (open && frameSize) stableFrameSize.current = frameSize;\n\t}, [open, frameSize]);\n\tvar isWebKbSheet = isWeb && hasFit && moveOnKeyboardChange;\n\tvar isNativeKbFitSheet = !isWeb && hasFit && Boolean(moveOnKeyboardChange);\n\tvar preKeyboardFrameSize = React.useRef(0);\n\tReact.useEffect(function() {\n\t\tif (isNativeKbFitSheet && open && !isKeyboardVisible && frameSize > 0) preKeyboardFrameSize.current = frameSize;\n\t}, [\n\t\tisNativeKbFitSheet,\n\t\topen,\n\t\tisKeyboardVisible,\n\t\tframeSize\n\t]);\n\tvar effScreenSize = isWebKbSheet ? getStableViewportHeight() : screenSize;\n\tvar effectiveFrameSize = open ? frameSize : stableFrameSize.current || frameSize;\n\tvar positions = React.useMemo(function() {\n\t\treturn snapPoints.map(function(point) {\n\t\t\treturn getYPositions(snapPointsMode, point, effScreenSize, effectiveFrameSize);\n\t\t});\n\t}, [\n\t\teffScreenSize,\n\t\teffectiveFrameSize,\n\t\tsnapPoints,\n\t\tsnapPointsMode\n\t]);\n\tvar [isDragging, setIsDragging_] = React.useState(false);\n\tvar isDraggingRef = React.useRef(false);\n\tvar setIsDragging = React.useCallback(function(val) {\n\t\tisDraggingRef.current = val;\n\t\tpauseKeyboardHandler.current = val;\n\t\tsetIsDragging_(val);\n\t\tif (!val) flushPendingHide();\n\t}, [pauseKeyboardHandler, flushPendingHide]);\n\tvar activePositionsRef = React.useRef(positions);\n\tvar activePositions = React.useMemo(function() {\n\t\tif (isDragging || isDraggingRef.current) return activePositionsRef.current;\n\t\tvar result;\n\t\tif (!isKeyboardVisible || keyboardHeight <= 0) result = positions;\n\t\telse result = positions.map(function(p) {\n\t\t\treturn getKeyboardAdjustedSheetY({\n\t\t\t\tsheetY: p,\n\t\t\t\tscreenSize: effScreenSize,\n\t\t\t\tisKeyboardVisible,\n\t\t\t\tkeyboardHeight,\n\t\t\t\tshouldTranslate: true,\n\t\t\t\tsafeAreaTop: isWeb ? getWebVisualViewportOffsetTop() : safeAreaTopInset\n\t\t\t});\n\t\t});\n\t\tactivePositionsRef.current = result;\n\t\treturn result;\n\t}, [\n\t\tpositions,\n\t\tisKeyboardVisible,\n\t\tkeyboardHeight,\n\t\teffScreenSize,\n\t\tisDragging,\n\t\tsafeAreaTopInset\n\t]);\n\tvar keyboardOccludedHeight = getKeyboardOccludedHeight({\n\t\tframeSize: effectiveFrameSize,\n\t\tisKeyboardVisible,\n\t\tkeyboardHeight,\n\t\tscreenSize: effScreenSize,\n\t\tsheetY: position >= 0 ? activePositions[position] : void 0\n\t});\n\tvar keyboardStableFrameHeight = isWebKbSheet && isKeyboardVisible && frameSize > 0 ? frameSize : isNativeKbFitSheet && isKeyboardVisible && preKeyboardFrameSize.current > 0 ? preKeyboardFrameSize.current : 0;\n\tvar _animationDriver_View;\n\tvar AnimatedView = (_animationDriver_View = animationDriver.View) !== null && _animationDriver_View !== void 0 ? _animationDriver_View : View;\n\tuseIsomorphicLayoutEffect(function() {\n\t\tif (!(sheetInsideSheet && open)) return;\n\t\tsheetInsideSheet(true);\n\t\treturn function() {\n\t\t\tsheetInsideSheet(false);\n\t\t};\n\t}, [sheetInsideSheet, open]);\n\tvar nextParentContext = React.useMemo(function() {\n\t\treturn { zIndex };\n\t}, [zIndex]);\n\tvar startPosition = useDidFinishSSR() && screenSize ? screenSize : hiddenSize;\n\tvar animatedNumber = useAnimatedNumber(startPosition);\n\tvar at = React.useRef(startPosition);\n\tvar hasntMeasured = at.current === hiddenSize;\n\tvar [disableAnimation, setDisableAnimation] = useState(hasntMeasured);\n\tvar skipAdaptAnimation = React.useRef(false);\n\tif (controller === null || controller === void 0 ? void 0 : controller.skipNextAnimation) skipAdaptAnimation.current = true;\n\tvar hasScrollView = React.useRef(false);\n\tvar lastPositionIndexRef = React.useRef(-1);\n\tvar pendingTransitionRef = React.useRef(null);\n\tvar emitTransition = useEvent(function(phase, event, finished) {\n\t\tvar _controller_onTransition;\n\t\tvar e = {\n\t\t\tphase,\n\t\t\tcause: event.cause,\n\t\t\tposition: event.position\n\t\t};\n\t\tif (phase === \"end\") e.finished = finished;\n\t\tonTransition === null || onTransition === void 0 || onTransition(e);\n\t\tcontroller === null || controller === void 0 || (_controller_onTransition = controller.onTransition) == null || _controller_onTransition.call(controller, e);\n\t});\n\tvar syncAnimatedPosition = useEvent(function(value) {\n\t\tat.current = value;\n\t\tscrollBridge.paneY = value;\n\t\tvar minY = activePositions[0];\n\t\tvar wasAtTop = scrollBridge.isAtTop;\n\t\tvar nowAtTop = value <= minY + 5;\n\t\tif (wasAtTop === nowAtTop) return;\n\t\tscrollBridge.isAtTop = nowAtTop;\n\t\tif (nowAtTop) {\n\t\t\tvar _scrollBridge_setScrollEnabled;\n\t\t\tif (scrollBridge.lockScrollAtTop) {\n\t\t\t\tvar _scrollBridge_setScrollEnabled1;\n\t\t\t\tif (scrollBridge.y > 0) {\n\t\t\t\t\tvar _scrollBridge_forceScrollTo;\n\t\t\t\t\t(_scrollBridge_forceScrollTo = scrollBridge.forceScrollTo) === null || _scrollBridge_forceScrollTo === void 0 || _scrollBridge_forceScrollTo.call(scrollBridge, 0);\n\t\t\t\t\tscrollBridge.y = 0;\n\t\t\t\t}\n\t\t\t\tscrollBridge.scrollLockY = 0;\n\t\t\t\t(_scrollBridge_setScrollEnabled1 = scrollBridge.setScrollEnabled) === null || _scrollBridge_setScrollEnabled1 === void 0 || _scrollBridge_setScrollEnabled1.call(scrollBridge, false, 0);\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tif (scrollBridge.y > 0) {\n\t\t\t\tvar _scrollBridge_forceScrollTo1;\n\t\t\t\t(_scrollBridge_forceScrollTo1 = scrollBridge.forceScrollTo) === null || _scrollBridge_forceScrollTo1 === void 0 || _scrollBridge_forceScrollTo1.call(scrollBridge, 0);\n\t\t\t\tscrollBridge.y = 0;\n\t\t\t}\n\t\t\tscrollBridge.scrollLockY = void 0;\n\t\t\t(_scrollBridge_setScrollEnabled = scrollBridge.setScrollEnabled) === null || _scrollBridge_setScrollEnabled === void 0 || _scrollBridge_setScrollEnabled.call(scrollBridge, true);\n\t\t} else {\n\t\t\tvar _scrollBridge_setScrollEnabled2;\n\t\t\tscrollBridge.scrollLockY = 0;\n\t\t\t(_scrollBridge_setScrollEnabled2 = scrollBridge.setScrollEnabled) === null || _scrollBridge_setScrollEnabled2 === void 0 || _scrollBridge_setScrollEnabled2.call(scrollBridge, false);\n\t\t}\n\t});\n\tvar setAnimatedPositionDirect = useEvent(function(value) {\n\t\tsyncAnimatedPosition(value);\n\t\tanimatedNumber.setValue(value, { type: \"direct\" });\n\t});\n\tvar getAnimatedPosition = useEvent(function() {\n\t\tvar value = animatedNumber.getValue();\n\t\tsyncAnimatedPosition(value);\n\t\treturn value;\n\t});\n\tfunction stopSpring() {\n\t\tanimatedNumber.stop();\n\t\tif (scrollBridge.onFinishAnimate) {\n\t\t\tscrollBridge.onFinishAnimate();\n\t\t\tscrollBridge.onFinishAnimate = void 0;\n\t\t}\n\t}\n\tvar animateTo = useEvent(function(position2, animationOverride) {\n\t\tif (frameSize === 0) return;\n\t\tvar closeTarget = isWeb ? Math.max(effScreenSize, getMaxViewportHeight()) : effScreenSize;\n\t\tvar isDismissPosition = dismissOnSnapToBottom && position2 === activePositions.length - 1;\n\t\tvar isOpenAnimation = position2 !== -1 && !isHidden && !isDismissPosition;\n\t\tvar toValue = isOpenAnimation ? activePositions[position2] : closeTarget;\n\t\tif (at.current === toValue) {\n\t\t\tif (isDismissPosition) {\n\t\t\t\tif (pendingTransitionRef.current) {\n\t\t\t\t\temitTransition(\"end\", pendingTransitionRef.current, false);\n\t\t\t\t\tpendingTransitionRef.current = null;\n\t\t\t\t}\n\t\t\t\tstopSpring();\n\t\t\t\tvar event = {\n\t\t\t\t\tcause: \"close\",\n\t\t\t\t\tposition: toValue\n\t\t\t\t};\n\t\t\t\tlastPositionIndexRef.current = -1;\n\t\t\t\temitTransition(\"start\", event);\n\t\t\t\tsyncAnimatedPosition(toValue);\n\t\t\t\tsetIsFullyClosed(true);\n\t\t\t\temitTransition(\"end\", event, true);\n\t\t\t}\n\t\t\treturn;\n\t\t}\n\t\tat.current = toValue;\n\t\tvar cause = !isOpenAnimation ? \"close\" : lastPositionIndexRef.current < 0 ? \"open\" : \"snap\";\n\t\tlastPositionIndexRef.current = isOpenAnimation ? position2 : -1;\n\t\tvar event1 = {\n\t\t\tcause,\n\t\t\tposition: toValue\n\t\t};\n\t\tif (pendingTransitionRef.current) {\n\t\t\temitTransition(\"end\", pendingTransitionRef.current, false);\n\t\t\tpendingTransitionRef.current = null;\n\t\t}\n\t\tstopSpring();\n\t\tvar animationCompleteCallback = function() {\n\t\t\tif (at.current !== toValue) return;\n\t\t\tsyncAnimatedPosition(toValue);\n\t\t\tpendingTransitionRef.current = null;\n\t\t\tif (!isOpenAnimation && !openRef.current) setIsFullyClosed(true);\n\t\t\temitTransition(\"end\", event1, true);\n\t\t};\n\t\tpendingTransitionRef.current = event1;\n\t\temitTransition(\"start\", event1);\n\t\tif (skipAdaptAnimation.current) {\n\t\t\tskipAdaptAnimation.current = false;\n\t\t\tanimatedNumber.setValue(toValue, {\n\t\t\t\ttype: \"timing\",\n\t\t\t\tduration: 0\n\t\t\t}, animationCompleteCallback);\n\t\t\treturn;\n\t\t}\n\t\tvar resolvedConfig = animationOverride || {\n\t\t\ttype: \"spring\",\n\t\t\t...transitionConfig\n\t\t};\n\t\tvar springConfig = !resolvedConfig.type || resolvedConfig.type === \"spring\" ? {\n\t\t\trestDisplacementThreshold: 1,\n\t\t\trestSpeedThreshold: 10,\n\t\t\tenergyThreshold: 1e-5,\n\t\t\t...resolvedConfig\n\t\t} : resolvedConfig;\n\t\tanimatedNumber.setValue(toValue, springConfig, animationCompleteCallback);\n\t});\n\tuseIsomorphicLayoutEffect(function() {\n\t\tif (hasntMeasured && screenSize && frameSize) {\n\t\t\tat.current = screenSize;\n\t\t\tanimatedNumber.setValue(screenSize, {\n\t\t\t\ttype: \"timing\",\n\t\t\t\tduration: 0\n\t\t\t}, function() {\n\t\t\t\tsyncAnimatedPosition(screenSize);\n\t\t\t\tsetTimeout(function() {\n\t\t\t\t\tsetDisableAnimation(false);\n\t\t\t\t}, 10);\n\t\t\t});\n\t\t\treturn;\n\t\t}\n\t\tif (disableAnimation) return;\n\t\tif (isDraggingRef.current) return;\n\t\tif (!frameSize || !screenSize || isHidden || hasntMeasured && !open) return;\n\t\tanimateTo(position);\n\t\tif (position === -1) {\n\t\t\tscrollBridge.scrollLock = false;\n\t\t\tscrollBridge.scrollStartY = -1;\n\t\t}\n\t\tif (open && position >= 0) {\n\t\t\tvar isTopPosition = position === 0;\n\t\t\tscrollBridge.isAtTop = isTopPosition;\n\t\t\tif (isTopPosition) {\n\t\t\t\tvar _scrollBridge_setScrollEnabled;\n\t\t\t\tscrollBridge.scrollLockY = void 0;\n\t\t\t\t(_scrollBridge_setScrollEnabled = scrollBridge.setScrollEnabled) === null || _scrollBridge_setScrollEnabled === void 0 || _scrollBridge_setScrollEnabled.call(scrollBridge, true);\n\t\t\t} else {\n\t\t\t\tvar _scrollBridge_setScrollEnabled1;\n\t\t\t\tscrollBridge.scrollLockY = 0;\n\t\t\t\t(_scrollBridge_setScrollEnabled1 = scrollBridge.setScrollEnabled) === null || _scrollBridge_setScrollEnabled1 === void 0 || _scrollBridge_setScrollEnabled1.call(scrollBridge, false);\n\t\t\t}\n\t\t}\n\t}, [\n\t\thasntMeasured,\n\t\tdisableAnimation,\n\t\tisHidden,\n\t\tframeSize,\n\t\tscreenSize,\n\t\topen,\n\t\tposition\n\t]);\n\tvar _props_disableDrag;\n\tvar disableDrag = (_props_disableDrag = props.disableDrag) !== null && _props_disableDrag !== void 0 ? _props_disableDrag : controller === null || controller === void 0 ? void 0 : controller.disableDrag;\n\tuseThemeName();\n\tvar [blockPan, setBlockPan] = React.useState(false);\n\tvar panResponder = React.useMemo(function() {\n\t\tif (disableDrag) return;\n\t\tif (!frameSize) return;\n\t\tif (isShowingInnerSheet) return;\n\t\tvar minY = activePositions[0];\n\t\tscrollBridge.paneMinY = minY;\n\t\tvar startY = at.current;\n\t\tfunction setPanning(val) {\n\t\t\tsetIsDragging(val);\n\t\t}\n\t\tvar release = function(param) {\n\t\t\tvar { vy } = param;\n\t\t\tscrollBridge.setParentDragging(false);\n\t\t\tif (scrollBridge.scrollLock) return;\n\t\t\tisExternalDrag = false;\n\t\t\tpreviouslyScrolling = false;\n\t\t\tsetPanning(false);\n\t\t\tvar currentPos = at.current;\n\t\t\tvar closestPoint = getSheetReleasePosition({\n\t\t\t\tpositions: activePositions,\n\t\t\t\tprojectedEnd: currentPos + frameSize * vy * .2,\n\t\t\t\tcurrentPosition: currentPos,\n\t\t\t\tframeSize,\n\t\t\t\tdismissOnSnapToBottom,\n\t\t\t\tsnapPointsMode,\n\t\t\t\tisKeyboardVisible,\n\t\t\t\tisWeb\n\t\t\t});\n\t\t\tsetPosition(closestPoint);\n\t\t\tanimateTo(closestPoint);\n\t\t};\n\t\tvar finish = function(_e, state2) {\n\t\t\trelease({\n\t\t\t\tvy: state2.vy,\n\t\t\t\tdragAt: state2.dy\n\t\t\t});\n\t\t};\n\t\tvar previouslyScrolling = false;\n\t\tvar onMoveShouldSet = function(e, param) {\n\t\t\tvar { dy } = param;\n\t\t\tfunction getShouldSet() {\n\t\t\t\tif (e.target === providerProps.handleRef.current) return true;\n\t\t\t\tif (scrollBridge.scrollNodeTouched) return false;\n\t\t\t\tif (scrollBridge.hasScrollableContent === true) {\n\t\t\t\t\tif (scrollBridge.scrollLock) return false;\n\t\t\t\t\tvar isScrolled = scrollBridge.y !== 0;\n\t\t\t\t\tvar isDraggingUp = dy < 0;\n\t\t\t\t\tvar isNearTop = scrollBridge.paneY - 5 <= scrollBridge.paneMinY;\n\t\t\t\t\tif (isScrolled) return false;\n\t\t\t\t\tif (isNearTop) {\n\t\t\t\t\t\tif (hasScrollView.current && isDraggingUp) return false;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\treturn Math.abs(dy) > 10;\n\t\t\t}\n\t\t\tvar granted = getShouldSet();\n\t\t\tif (granted) scrollBridge.setParentDragging(true);\n\t\t\treturn granted;\n\t\t};\n\t\tvar grant = function() {\n\t\t\tsetPanning(true);\n\t\t\tstopSpring();\n\t\t\tstartY = getAnimatedPosition();\n\t\t};\n\t\tvar isExternalDrag = false;\n\t\tscrollBridge.startPanDrag = function() {\n\t\t\tisExternalDrag = true;\n\t\t\tgrant();\n\t\t};\n\t\tscrollBridge.drag = function(dy) {\n\t\t\tif (!isExternalDrag) {\n\t\t\t\tisExternalDrag = true;\n\t\t\t\tgrant();\n\t\t\t}\n\t\t\tsetAnimatedPositionDirect(resisted(dy + startY, minY));\n\t\t};\n\t\tscrollBridge.release = release;\n\t\tscrollBridge.snapToPosition = function(positionIndex) {\n\t\t\tisExternalDrag = false;\n\t\t\tsetPanning(false);\n\t\t\tsetPosition(positionIndex);\n\t\t\tanimateTo(positionIndex);\n\t\t};\n\t\treturn PanResponder.create({\n\t\t\tonMoveShouldSetPanResponder: onMoveShouldSet,\n\t\t\tonPanResponderTerminationRequest: function() {\n\t\t\t\treturn false;\n\t\t\t},\n\t\t\tonPanResponderGrant: grant,\n\t\t\tonPanResponderMove: function(_e, param) {\n\t\t\t\tvar { dy } = param;\n\t\t\t\tvar to = resisted(dy + startY, minY);\n\t\t\t\tif (to <= minY) scrollBridge.setParentDragging(false);\n\t\t\t\telse scrollBridge.setParentDragging(true);\n\t\t\t\tsetAnimatedPositionDirect(to);\n\t\t\t},\n\t\t\tonPanResponderEnd: finish,\n\t\t\tonPanResponderTerminate: finish,\n\t\t\tonPanResponderRelease: finish\n\t\t});\n\t}, [\n\t\tdisableDrag,\n\t\tisShowingInnerSheet,\n\t\tanimateTo,\n\t\tframeSize,\n\t\tactivePositions,\n\t\tsetPosition,\n\t\tdismissOnSnapToBottom,\n\t\tsnapPointsMode\n\t]);\n\tReact.useEffect(function() {\n\t\tif (isDragging || isHidden || !open || disableAnimation) return;\n\t\tif (!frameSize || !screenSize) return;\n\t\tanimateTo(position, {\n\t\t\ttype: \"timing\",\n\t\t\tduration: 250\n\t\t});\n\t}, [isKeyboardVisible, keyboardHeight]);\n\tvar wasDragging = React.useRef(false);\n\tReact.useEffect(function() {\n\t\tif (isDragging) {\n\t\t\twasDragging.current = true;\n\t\t\treturn;\n\t\t}\n\t\tif (!wasDragging.current) return;\n\t\twasDragging.current = false;\n\t\tif (!frameSize || !screenSize || isHidden || !open) return;\n\t\tanimateTo(position);\n\t}, [isDragging]);\n\tReact.useEffect(function() {\n\t\tif (!open && isKeyboardVisible) {\n\t\t\tdismissKeyboard();\n\t\t\tpauseKeyboardHandler.current = false;\n\t\t\tflushPendingHide();\n\t\t}\n\t}, [open]);\n\tReact.useEffect(function() {\n\t\tif (!isWeb || !modal || !open || shouldHideParentSheet) return;\n\t\tvar layer = {};\n\t\tsheetEscapeLayers.push(layer);\n\t\tvar onKeyDown = function(event) {\n\t\t\tif (event.key === \"Escape\") {\n\t\t\t\tif (sheetEscapeLayers[sheetEscapeLayers.length - 1] === layer) state.setOpen(false);\n\t\t\t}\n\t\t};\n\t\tdocument.addEventListener(\"keydown\", onKeyDown);\n\t\treturn function() {\n\t\t\tvar index = sheetEscapeLayers.indexOf(layer);\n\t\t\tif (index > -1) sheetEscapeLayers.splice(index, 1);\n\t\t\tdocument.removeEventListener(\"keydown\", onKeyDown);\n\t\t};\n\t}, [\n\t\tmodal,\n\t\topen,\n\t\tshouldHideParentSheet,\n\t\tstate.setOpen\n\t]);\n\tvar { panGesture, panGestureRef, gestureHandlerEnabled } = useGestureHandlerPan({\n\t\tpositions: activePositions,\n\t\tframeSize,\n\t\tsetPosition,\n\t\tanimateTo,\n\t\tstopSpring,\n\t\tscrollBridge,\n\t\tsetIsDragging,\n\t\tgetCurrentPosition: getAnimatedPosition,\n\t\tresisted,\n\t\tdisableDrag,\n\t\tisShowingInnerSheet,\n\t\tsetAnimatedPosition: setAnimatedPositionDirect,\n\t\tdismissOnSnapToBottom,\n\t\tsnapPointsMode,\n\t\tisKeyboardVisible,\n\t\tpauseKeyboardHandler\n\t});\n\tvar ignoreLayoutForKeyboard = useEvent(function() {\n\t\treturn isWeb && moveOnKeyboardChange && getWebKeyboardResizeHeight() >= MIN_KEYBOARD_HEIGHT;\n\t});\n\tvar handleAnimationViewLayout = useEvent(function(e) {\n\t\tvar _e_nativeEvent;\n\t\tif (!open && stableFrameSize.current !== 0) return;\n\t\tvar layoutHeight = (_e_nativeEvent = e.nativeEvent) === null || _e_nativeEvent === void 0 ? void 0 : _e_nativeEvent.layout.height;\n\t\tif (ignoreLayoutForKeyboard() && frameSize > 0) return;\n\t\tvar next = modal ? Math.min(layoutHeight, getStableViewportHeight()) : layoutHeight;\n\t\tif (!next) return;\n\t\tsetFrameSize(Math.round(next));\n\t});\n\tvar handleMaxContentViewLayout = React.useCallback(function(e) {\n\t\tvar _e_nativeEvent;\n\t\tif (ignoreLayoutForKeyboard() && screenSize > 0) return;\n\t\tvar next = Math.min((_e_nativeEvent = e.nativeEvent) === null || _e_nativeEvent === void 0 ? void 0 : _e_nativeEvent.layout.height, getStableViewportHeight());\n\t\tif (!next) return;\n\t\tsetMaxContentSize(Math.round(next));\n\t}, [ignoreLayoutForKeyboard, screenSize]);\n\tvar animatedStyle = useAnimatedNumberStyle(animatedNumber, React.useCallback(function(val) {\n\t\t\"worklet\";\n\t\treturn { transform: [{ translateY: frameSize === 0 ? hiddenSize : val }] };\n\t}, [frameSize]));\n\tvar [isFullyClosed, setIsFullyClosed] = React.useState(false);\n\tif (open && isFullyClosed) setIsFullyClosed(false);\n\tvar hasEverOpened = React.useRef(open);\n\tif (open) hasEverOpened.current = true;\n\tvar isVisuallyActive = open || hasEverOpened.current && !isFullyClosed;\n\tvar applyHidden = shouldHideParentSheet || isFullyClosed && !disableHideWhenClosed;\n\tvar forcedContentHeight = hasFit ? void 0 : snapPointsMode === \"percent\" ? `${maxSnapPoint}${isWeb ? modal ? \"dvh\" : \"%\" : \"%\"}` : maxSnapPoint;\n\tvar setHasScrollView = React.useCallback(function(val) {\n\t\thasScrollView.current = val;\n\t}, []);\n\tvar animatedPositionValue = React.useMemo(function() {\n\t\tvar _activePositions_;\n\t\treturn {\n\t\t\tvalue: animatedNumber,\n\t\t\tscreenSize: effScreenSize,\n\t\t\tframeSize,\n\t\t\tsnapOffsets: activePositions,\n\t\t\tminY: (_activePositions_ = activePositions[0]) !== null && _activePositions_ !== void 0 ? _activePositions_ : 0\n\t\t};\n\t}, [\n\t\tanimatedNumber,\n\t\teffScreenSize,\n\t\tframeSize,\n\t\tactivePositions\n\t]);\n\tvar { overlayChildren, animatedChildren } = React.useMemo(function() {\n\t\treturn partitionSheetChildren(props.children);\n\t}, [props.children]);\n\tvar contents = /* @__PURE__ */ jsx(LayoutMeasurementController, {\n\t\tdisable: !open,\n\t\tchildren: /* @__PURE__ */ jsx(ParentSheetContext.Provider, {\n\t\t\tvalue: nextParentContext,\n\t\t\tchildren: /* @__PURE__ */ jsx(SheetProvider, {\n\t\t\t\t...providerProps,\n\t\t\t\tkeyboardOccludedHeight,\n\t\t\t\tisKeyboardVisible,\n\t\t\t\tkeyboardStableFrameHeight,\n\t\t\t\tsetHasScrollView,\n\t\t\t\tchildren: /* @__PURE__ */ jsx(GestureSheetProvider, {\n\t\t\t\t\tisDragging,\n\t\t\t\t\tblockPan,\n\t\t\t\t\tsetBlockPan,\n\t\t\t\t\tpanGesture,\n\t\t\t\t\tpanGestureRef,\n\t\t\t\t\tchildren: /* @__PURE__ */ jsxs(SheetAnimatedPositionContext.Provider, {\n\t\t\t\t\t\tvalue: animatedPositionValue,\n\t\t\t\t\t\tchildren: [\n\t\t\t\t\t\t\t/* @__PURE__ */ jsx(SheetOverlayLayerContext.Provider, {\n\t\t\t\t\t\t\t\tvalue: true,\n\t\t\t\t\t\t\t\tchildren: /* @__PURE__ */ jsx(AnimatePresence, {\n\t\t\t\t\t\t\t\t\tcustom: { open },\n\t\t\t\t\t\t\t\t\tchildren: shouldHideParentSheet || !open ? null : overlayChildren\n\t\t\t\t\t\t\t\t})\n\t\t\t\t\t\t\t}),\n\t\t\t\t\t\t\tsnapPointsMode !== \"percent\" && /* @__PURE__ */ jsx(View$1, {\n\t\t\t\t\t\t\t\tstyle: {\n\t\t\t\t\t\t\t\t\topacity: 0,\n\t\t\t\t\t\t\t\t\tposition: \"absolute\",\n\t\t\t\t\t\t\t\t\ttop: 0,\n\t\t\t\t\t\t\t\t\tleft: 0,\n\t\t\t\t\t\t\t\t\tright: 0,\n\t\t\t\t\t\t\t\t\tbottom: 0,\n\t\t\t\t\t\t\t\t\tpointerEvents: \"none\"\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\tonLayout: handleMaxContentViewLayout\n\t\t\t\t\t\t\t}),\n\t\t\t\t\t\t\t/* @__PURE__ */ jsx(AnimatedView, {\n\t\t\t\t\t\t\t\tref,\n\t\t\t\t\t\t\t\tonLayout: handleAnimationViewLayout,\n\t\t\t\t\t\t\t\ttransition: isDragging || disableAnimation ? null : transition,\n\t\t\t\t\t\t\t\tdisableClassName: true,\n\t\t\t\t\t\t\t\tstyle: [{\n\t\t\t\t\t\t\t\t\tposition: \"absolute\",\n\t\t\t\t\t\t\t\t\tzIndex,\n\t\t\t\t\t\t\t\t\twidth: \"100%\",\n\t\t\t\t\t\t\t\t\theight: forcedContentHeight,\n\t\t\t\t\t\t\t\t\tminHeight: forcedContentHeight,\n\t\t\t\t\t\t\t\t\t...applyHidden && { display: \"none\" },\n\t\t\t\t\t\t\t\t\t...(shouldHideParentSheet || !open) && { pointerEvents: \"none\" }\n\t\t\t\t\t\t\t\t}, animatedStyle],\n\t\t\t\t\t\t\t\tchildren: gestureHandlerEnabled && panGesture ? /* @__PURE__ */ jsx(GestureDetectorWrapper, {\n\t\t\t\t\t\t\t\t\tgesture: panGesture,\n\t\t\t\t\t\t\t\t\tstyle: { flex: 1 },\n\t\t\t\t\t\t\t\t\tchildren: animatedChildren\n\t\t\t\t\t\t\t\t}) : /* @__PURE__ */ jsx(View$1, {\n\t\t\t\t\t\t\t\t\t...panResponder === null || panResponder === void 0 ? void 0 : panResponder.panHandlers,\n\t\t\t\t\t\t\t\t\tstyle: {\n\t\t\t\t\t\t\t\t\t\tflex: 1,\n\t\t\t\t\t\t\t\t\t\twidth: \"100%\",\n\t\t\t\t\t\t\t\t\t\theight: \"100%\"\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\tchildren: animatedChildren\n\t\t\t\t\t\t\t\t})\n\t\t\t\t\t\t\t})\n\t\t\t\t\t\t]\n\t\t\t\t\t})\n\t\t\t\t})\n\t\t\t})\n\t\t})\n\t});\n\tif (needsPortalRepropagation()) contents = /* @__PURE__ */ jsx(ProvideAdaptContext, {\n\t\t...useAdaptContext(),\n\t\tchildren: /* @__PURE__ */ jsx(SafeAreaInsetsContext.Provider, {\n\t\t\tvalue: safeAreaInsets,\n\t\t\tchildren: contents\n\t\t})\n\t});\n\tvar shouldMountChildren = unmountChildrenWhenHidden ? !isFullyClosed : true;\n\tif (modal) {\n\t\tvar RNGHRoot = getGestureHandlerState().RootView;\n\t\tvar mountedContents = shouldMountChildren ? /* @__PURE__ */ jsx(ContainerComponent, { children: contents }) : null;\n\t\tvar modalContents = /* @__PURE__ */ jsx(Portal, {\n\t\t\tstackZIndex: zIndex,\n\t\t\thidden: !isVisuallyActive,\n\t\t\t...portalProps,\n\t\t\tchildren: mountedContents && RNGHRoot ? /* @__PURE__ */ jsx(RNGHRoot, {\n\t\t\t\tstyle: open ? rnghRootStyleOpen : rnghRootStyleClosed,\n\t\t\t\tchildren: mountedContents\n\t\t\t}) : mountedContents\n\t\t});\n\t\tif (isWeb) return modalContents;\n\t\treturn /* @__PURE__ */ jsx(SheetInsideSheetContext.Provider, {\n\t\t\tvalue: onInnerSheet,\n\t\t\tchildren: modalContents\n\t\t});\n\t}\n\treturn contents;\n});\nfunction isSheetOverlayComponent(type) {\n\tvar staticConfig = type === null || type === void 0 ? void 0 : type.staticConfig;\n\twhile (staticConfig) {\n\t\tif (staticConfig[SHEET_OVERLAY_MARKER]) return true;\n\t\tstaticConfig = staticConfig.parentStaticConfig;\n\t}\n\treturn false;\n}\nfunction partitionSheetChildren(children) {\n\tvar overlayChildren = [];\n\tvar animatedChildren = [];\n\tReact.Children.forEach(children, function(child) {\n\t\tif (!/* @__PURE__ */ React.isValidElement(child)) {\n\t\t\tanimatedChildren.push(child);\n\t\t\treturn;\n\t\t}\n\t\tif (isSheetOverlayComponent(child.type)) {\n\t\t\toverlayChildren.push(child);\n\t\t\treturn;\n\t\t}\n\t\tanimatedChildren.push(child);\n\t});\n\treturn {\n\t\toverlayChildren,\n\t\tanimatedChildren\n\t};\n}\nfunction getYPositions(mode, point, screenSize, frameSize) {\n\tif (!screenSize || !frameSize) return 0;\n\tif (mode === \"mixed\") {\n\t\tif (typeof point === \"number\") return screenSize - Math.min(screenSize, Math.max(0, point));\n\t\tif (point === \"fit\") return screenSize - Math.min(screenSize, frameSize);\n\t\tif (point.endsWith(\"%\")) {\n\t\t\tvar pct = Math.min(100, Math.max(0, Number(point.slice(0, -1)))) / 100;\n\t\t\tif (Number.isNaN(pct)) {\n\t\t\t\tconsole.warn(formatDiagnostic(\"TAMAGUI_SHEET_SNAP_POINT\", \"Sheet\", \"snapPoints contains an invalid percentage string\", \"Use \\\"fit\\\", a pixel number, or a percentage such as \\\"50%\\\"\", \"snapPoint\", point));\n\t\t\t\treturn 0;\n\t\t\t}\n\t\t\treturn Math.round(screenSize - pct * screenSize);\n\t\t}\n\t\tconsole.warn(formatDiagnostic(\"TAMAGUI_SHEET_SNAP_POINT\", \"Sheet\", \"snapPoints contains an unsupported mixed-mode value\", \"Use \\\"fit\\\", a pixel number, or a percentage such as \\\"50%\\\"\", \"snapPoint\", point));\n\t\treturn 0;\n\t}\n\tif (mode === \"fit\") {\n\t\tif (point === 0) return screenSize;\n\t\treturn screenSize - Math.min(screenSize, frameSize);\n\t}\n\tif (mode === \"constant\" && typeof point === \"number\") return screenSize - Math.min(screenSize, Math.max(0, point));\n\tvar pct1 = Math.min(100, Math.max(0, Number(point))) / 100;\n\tif (Number.isNaN(pct1)) {\n\t\tconsole.warn(formatDiagnostic(\"TAMAGUI_SHEET_SNAP_POINT\", \"Sheet\", \"snapPoints contains a value that cannot be converted to a percentage\", \"Use a numeric percentage such as 50\", \"snapPoint\", point));\n\t\treturn 0;\n\t}\n\treturn Math.round(screenSize - pct1 * screenSize);\n}\n\nexport { SheetImplementationCustom, isSheetOverlayComponent };"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"SheetImplementationCustom.native.js","names":[],"sources":["esm/SheetImplementationCustom.native.js"],"sourcesContent":["import { jsx, jsxs } from \"react/jsx-runtime\";\nimport { ProvideAdaptContext, useAdaptContext } from \"@tamagui/adapt\";\nimport { AnimatePresence } from \"@tamagui/animate-presence\";\nimport { getTransitionResolver } from \"@tamagui/animation-helpers/transitionResolver\";\nimport { useComposedRefs } from \"@tamagui/compose-refs\";\nimport { isWeb, useIsomorphicLayoutEffect } from \"@tamagui/constants\";\nimport { LayoutMeasurementController, View, createRefComponent, formatDiagnostic, useAnimatedNumber, useAnimatedNumberStyle, useAnimationDriver, useDidFinishSSR, useEvent, useThemeName } from \"@tamagui/core\";\nimport { Portal, needsPortalRepropagation } from \"@tamagui/portal\";\nimport React, { useState } from \"react\";\nimport { ParentSheetContext, SheetInsideSheetContext } from \"./contexts\";\nimport { SHEET_OVERLAY_MARKER } from \"./constants\";\nimport { getGestureHandlerState } from \"./gestureState\";\nimport { SheetDragSurface } from \"./SheetDragSurface\";\nimport { getStableViewportHeight } from \"./stableViewportHeight\";\nimport { GestureSheetProvider } from \"./GestureSheetContext\";\nimport { resisted } from \"./helpers\";\nimport { getKeyboardAdjustedSheetY, getKeyboardOccludedHeight, getSheetReleasePosition } from \"./keyboardAvoidance\";\nimport { MIN_KEYBOARD_HEIGHT, getMaxViewportHeight, getWebKeyboardResizeHeight, getWebVisualViewportOffsetTop } from \"./webViewport\";\nimport { SheetAnimatedPositionContext, SheetOverlayLayerContext, SheetProvider } from \"./SheetContext\";\nimport { useGestureHandlerPan } from \"./useGestureHandlerPan\";\nimport { useKeyboardControllerSheet } from \"./useKeyboardControllerSheet\";\nimport { SafeAreaInsetsContext, useSafeAreaInsets } from \"./useSafeAreaInsets\";\nimport { useSheetOpenState } from \"./useSheetOpenState\";\nimport { useSheetProviderProps } from \"./useSheetProviderProps\";\n\nvar hiddenSize = 10000.1;\nvar rnghRootStyleOpen = {\n\twidth: \"100%\",\n\theight: \"100%\"\n};\nvar rnghRootStyleClosed = {\n\twidth: \"100%\",\n\theight: 0\n};\nvar sheetEscapeLayers = [];\nvar SheetImplementationCustom = createRefComponent(function SheetImplementationCustom2(props, forwardedRef) {\n\tvar parentSheet = React.useContext(ParentSheetContext);\n\tvar safeAreaInsets = useSafeAreaInsets();\n\tvar _safeAreaInsets_top;\n\tvar safeAreaTopInset = (_safeAreaInsets_top = safeAreaInsets === null || safeAreaInsets === void 0 ? void 0 : safeAreaInsets.top) !== null && _safeAreaInsets_top !== void 0 ? _safeAreaInsets_top : 0;\n\tvar { transition, transitionConfig: transitionConfigProp, modal = false, zIndex = parentSheet.zIndex + 1, moveOnKeyboardChange = false, unmountChildrenWhenHidden = false, disableHideWhenClosed = false, portalProps, containerComponent: ContainerComponent = React.Fragment, onTransition } = props;\n\tvar state = useSheetOpenState(props);\n\tvar providerProps = useSheetProviderProps(props, state);\n\tvar { frameSize, setFrameSize, dismissOnSnapToBottom, snapPoints, snapPointsMode, hasFit, position, setPosition, scrollBridge, screenSize, setMaxContentSize, maxSnapPoint } = providerProps;\n\tvar { open, controller, isHidden } = state;\n\tvar openRef = React.useRef(open);\n\topenRef.current = open;\n\tvar ref = useComposedRefs(forwardedRef, React.useRef(void 0), providerProps.contentRef);\n\tvar animationDriver = useAnimationDriver();\n\tvar transitionConfig = (function() {\n\t\tvar _getTransitionResolver, _resolved_all;\n\t\tif (transitionConfigProp) return transitionConfigProp;\n\t\tvar resolved = transition ? (_getTransitionResolver = getTransitionResolver()) === null || _getTransitionResolver === void 0 ? void 0 : _getTransitionResolver.resolve(transition, { animations: animationDriver.animations }) : null;\n\t\tvar timing = resolved === null || resolved === void 0 ? void 0 : (_resolved_all = resolved.all) === null || _resolved_all === void 0 ? void 0 : _resolved_all.timing;\n\t\tif (!timing) return null;\n\t\tif (timing.kind === \"timing\") return {\n\t\t\ttype: \"timing\",\n\t\t\tduration: timing.durationMs\n\t\t};\n\t\treturn {\n\t\t\ttype: \"spring\",\n\t\t\tstiffness: timing.stiffness,\n\t\t\tdamping: timing.damping,\n\t\t\tmass: timing.mass\n\t\t};\n\t})();\n\tvar [isShowingInnerSheet, setIsShowingInnerSheet] = React.useState(false);\n\tvar shouldHideParentSheet = !isWeb && modal && isShowingInnerSheet && needsPortalRepropagation();\n\tvar sheetInsideSheet = React.useContext(SheetInsideSheetContext);\n\tvar onInnerSheet = React.useCallback(function(hasChild) {\n\t\tsetIsShowingInnerSheet(hasChild);\n\t}, []);\n\tvar { keyboardHeight, isKeyboardVisible, dismissKeyboard, pauseKeyboardHandler, flushPendingHide } = useKeyboardControllerSheet({ enabled: Boolean(moveOnKeyboardChange) });\n\tvar stableFrameSize = React.useRef(frameSize);\n\tReact.useEffect(function() {\n\t\tif (open && frameSize) stableFrameSize.current = frameSize;\n\t}, [open, frameSize]);\n\tvar isWebKbSheet = isWeb && hasFit && moveOnKeyboardChange;\n\tvar isNativeKbFitSheet = !isWeb && hasFit && Boolean(moveOnKeyboardChange);\n\tvar preKeyboardFrameSize = React.useRef(0);\n\tReact.useEffect(function() {\n\t\tif (isNativeKbFitSheet && open && !isKeyboardVisible && frameSize > 0) preKeyboardFrameSize.current = frameSize;\n\t}, [\n\t\tisNativeKbFitSheet,\n\t\topen,\n\t\tisKeyboardVisible,\n\t\tframeSize\n\t]);\n\tvar effScreenSize = isWebKbSheet ? getStableViewportHeight() : screenSize;\n\tvar effectiveFrameSize = open ? frameSize : stableFrameSize.current || frameSize;\n\tvar positions = React.useMemo(function() {\n\t\treturn snapPoints.map(function(point) {\n\t\t\treturn getYPositions(snapPointsMode, point, effScreenSize, effectiveFrameSize);\n\t\t});\n\t}, [\n\t\teffScreenSize,\n\t\teffectiveFrameSize,\n\t\tsnapPoints,\n\t\tsnapPointsMode\n\t]);\n\tvar [isDragging, setIsDragging_] = React.useState(false);\n\tvar isDraggingRef = React.useRef(false);\n\tvar setIsDragging = React.useCallback(function(val) {\n\t\tisDraggingRef.current = val;\n\t\tpauseKeyboardHandler.current = val;\n\t\tsetIsDragging_(val);\n\t\tif (!val) flushPendingHide();\n\t}, [pauseKeyboardHandler, flushPendingHide]);\n\tvar activePositionsRef = React.useRef(positions);\n\tvar activePositions = React.useMemo(function() {\n\t\tif (isDragging || isDraggingRef.current) return activePositionsRef.current;\n\t\tvar result;\n\t\tif (!isKeyboardVisible || keyboardHeight <= 0) result = positions;\n\t\telse result = positions.map(function(p) {\n\t\t\treturn getKeyboardAdjustedSheetY({\n\t\t\t\tsheetY: p,\n\t\t\t\tscreenSize: effScreenSize,\n\t\t\t\tisKeyboardVisible,\n\t\t\t\tkeyboardHeight,\n\t\t\t\tshouldTranslate: true,\n\t\t\t\tsafeAreaTop: isWeb ? getWebVisualViewportOffsetTop() : safeAreaTopInset\n\t\t\t});\n\t\t});\n\t\tactivePositionsRef.current = result;\n\t\treturn result;\n\t}, [\n\t\tpositions,\n\t\tisKeyboardVisible,\n\t\tkeyboardHeight,\n\t\teffScreenSize,\n\t\tisDragging,\n\t\tsafeAreaTopInset\n\t]);\n\tvar keyboardOccludedHeight = getKeyboardOccludedHeight({\n\t\tframeSize: effectiveFrameSize,\n\t\tisKeyboardVisible,\n\t\tkeyboardHeight,\n\t\tscreenSize: effScreenSize,\n\t\tsheetY: position >= 0 ? activePositions[position] : void 0\n\t});\n\tvar keyboardStableFrameHeight = isWebKbSheet && isKeyboardVisible && frameSize > 0 ? frameSize : isNativeKbFitSheet && isKeyboardVisible && preKeyboardFrameSize.current > 0 ? preKeyboardFrameSize.current : 0;\n\tvar _animationDriver_View;\n\tvar AnimatedView = (_animationDriver_View = animationDriver.View) !== null && _animationDriver_View !== void 0 ? _animationDriver_View : View;\n\tuseIsomorphicLayoutEffect(function() {\n\t\tif (!(sheetInsideSheet && open)) return;\n\t\tsheetInsideSheet(true);\n\t\treturn function() {\n\t\t\tsheetInsideSheet(false);\n\t\t};\n\t}, [sheetInsideSheet, open]);\n\tvar nextParentContext = React.useMemo(function() {\n\t\treturn { zIndex };\n\t}, [zIndex]);\n\tvar startPosition = useDidFinishSSR() && screenSize ? screenSize : hiddenSize;\n\tvar animatedNumber = useAnimatedNumber(startPosition);\n\tvar at = React.useRef(startPosition);\n\tvar hasntMeasured = at.current === hiddenSize;\n\tvar [disableAnimation, setDisableAnimation] = useState(hasntMeasured);\n\tvar skipAdaptAnimation = React.useRef(false);\n\tif (controller === null || controller === void 0 ? void 0 : controller.skipNextAnimation) skipAdaptAnimation.current = true;\n\tvar hasScrollView = React.useRef(false);\n\tvar lastPositionIndexRef = React.useRef(-1);\n\tvar pendingTransitionRef = React.useRef(null);\n\tvar emitTransition = useEvent(function(phase, event, finished) {\n\t\tvar _controller_onTransition;\n\t\tvar e = {\n\t\t\tphase,\n\t\t\tcause: event.cause,\n\t\t\tposition: event.position\n\t\t};\n\t\tif (phase === \"end\") e.finished = finished;\n\t\tonTransition === null || onTransition === void 0 || onTransition(e);\n\t\tcontroller === null || controller === void 0 || (_controller_onTransition = controller.onTransition) == null || _controller_onTransition.call(controller, e);\n\t});\n\tvar syncAnimatedPosition = useEvent(function(value) {\n\t\tat.current = value;\n\t\tscrollBridge.paneY = value;\n\t\tvar minY = activePositions[0];\n\t\tvar wasAtTop = scrollBridge.isAtTop;\n\t\tvar nowAtTop = value <= minY + 5;\n\t\tif (wasAtTop === nowAtTop) return;\n\t\tscrollBridge.isAtTop = nowAtTop;\n\t\tif (nowAtTop) {\n\t\t\tvar _scrollBridge_setScrollEnabled;\n\t\t\tif (scrollBridge.lockScrollAtTop) {\n\t\t\t\tvar _scrollBridge_setScrollEnabled1;\n\t\t\t\tif (scrollBridge.y > 0) {\n\t\t\t\t\tvar _scrollBridge_forceScrollTo;\n\t\t\t\t\t(_scrollBridge_forceScrollTo = scrollBridge.forceScrollTo) === null || _scrollBridge_forceScrollTo === void 0 || _scrollBridge_forceScrollTo.call(scrollBridge, 0);\n\t\t\t\t\tscrollBridge.y = 0;\n\t\t\t\t}\n\t\t\t\tscrollBridge.scrollLockY = 0;\n\t\t\t\t(_scrollBridge_setScrollEnabled1 = scrollBridge.setScrollEnabled) === null || _scrollBridge_setScrollEnabled1 === void 0 || _scrollBridge_setScrollEnabled1.call(scrollBridge, false, 0);\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tif (scrollBridge.y > 0) {\n\t\t\t\tvar _scrollBridge_forceScrollTo1;\n\t\t\t\t(_scrollBridge_forceScrollTo1 = scrollBridge.forceScrollTo) === null || _scrollBridge_forceScrollTo1 === void 0 || _scrollBridge_forceScrollTo1.call(scrollBridge, 0);\n\t\t\t\tscrollBridge.y = 0;\n\t\t\t}\n\t\t\tscrollBridge.scrollLockY = void 0;\n\t\t\t(_scrollBridge_setScrollEnabled = scrollBridge.setScrollEnabled) === null || _scrollBridge_setScrollEnabled === void 0 || _scrollBridge_setScrollEnabled.call(scrollBridge, true);\n\t\t} else {\n\t\t\tvar _scrollBridge_setScrollEnabled2;\n\t\t\tscrollBridge.scrollLockY = 0;\n\t\t\t(_scrollBridge_setScrollEnabled2 = scrollBridge.setScrollEnabled) === null || _scrollBridge_setScrollEnabled2 === void 0 || _scrollBridge_setScrollEnabled2.call(scrollBridge, false);\n\t\t}\n\t});\n\tvar setAnimatedPositionDirect = useEvent(function(value) {\n\t\tsyncAnimatedPosition(value);\n\t\tanimatedNumber.setValue(value, { type: \"direct\" });\n\t});\n\tvar getAnimatedPosition = useEvent(function() {\n\t\tvar value = animatedNumber.getValue();\n\t\tsyncAnimatedPosition(value);\n\t\treturn value;\n\t});\n\tfunction stopSpring() {\n\t\tanimatedNumber.stop();\n\t\tif (scrollBridge.onFinishAnimate) {\n\t\t\tscrollBridge.onFinishAnimate();\n\t\t\tscrollBridge.onFinishAnimate = void 0;\n\t\t}\n\t}\n\tvar animateTo = useEvent(function(position2, animationOverride) {\n\t\tif (frameSize === 0) return;\n\t\tvar closeTarget = isWeb ? Math.max(effScreenSize, getMaxViewportHeight()) : effScreenSize;\n\t\tvar isDismissPosition = dismissOnSnapToBottom && position2 === activePositions.length - 1;\n\t\tvar isOpenAnimation = position2 !== -1 && !isHidden && !isDismissPosition;\n\t\tvar toValue = isOpenAnimation ? activePositions[position2] : closeTarget;\n\t\tif (at.current === toValue) {\n\t\t\tif (isDismissPosition) {\n\t\t\t\tif (pendingTransitionRef.current) {\n\t\t\t\t\temitTransition(\"end\", pendingTransitionRef.current, false);\n\t\t\t\t\tpendingTransitionRef.current = null;\n\t\t\t\t}\n\t\t\t\tstopSpring();\n\t\t\t\tvar event = {\n\t\t\t\t\tcause: \"close\",\n\t\t\t\t\tposition: toValue\n\t\t\t\t};\n\t\t\t\tlastPositionIndexRef.current = -1;\n\t\t\t\temitTransition(\"start\", event);\n\t\t\t\tsyncAnimatedPosition(toValue);\n\t\t\t\tsetIsFullyClosed(true);\n\t\t\t\temitTransition(\"end\", event, true);\n\t\t\t}\n\t\t\treturn;\n\t\t}\n\t\tat.current = toValue;\n\t\tvar cause = !isOpenAnimation ? \"close\" : lastPositionIndexRef.current < 0 ? \"open\" : \"snap\";\n\t\tlastPositionIndexRef.current = isOpenAnimation ? position2 : -1;\n\t\tvar event1 = {\n\t\t\tcause,\n\t\t\tposition: toValue\n\t\t};\n\t\tif (pendingTransitionRef.current) {\n\t\t\temitTransition(\"end\", pendingTransitionRef.current, false);\n\t\t\tpendingTransitionRef.current = null;\n\t\t}\n\t\tstopSpring();\n\t\tvar animationCompleteCallback = function() {\n\t\t\tif (at.current !== toValue) return;\n\t\t\tsyncAnimatedPosition(toValue);\n\t\t\tpendingTransitionRef.current = null;\n\t\t\tif (!isOpenAnimation && !openRef.current) setIsFullyClosed(true);\n\t\t\temitTransition(\"end\", event1, true);\n\t\t};\n\t\tpendingTransitionRef.current = event1;\n\t\temitTransition(\"start\", event1);\n\t\tif (skipAdaptAnimation.current) {\n\t\t\tskipAdaptAnimation.current = false;\n\t\t\tanimatedNumber.setValue(toValue, {\n\t\t\t\ttype: \"timing\",\n\t\t\t\tduration: 0\n\t\t\t}, animationCompleteCallback);\n\t\t\treturn;\n\t\t}\n\t\tvar resolvedConfig = animationOverride || {\n\t\t\ttype: \"spring\",\n\t\t\t...transitionConfig\n\t\t};\n\t\tvar springConfig = !resolvedConfig.type || resolvedConfig.type === \"spring\" ? {\n\t\t\trestDisplacementThreshold: 1,\n\t\t\trestSpeedThreshold: 10,\n\t\t\tenergyThreshold: 1e-5,\n\t\t\t...resolvedConfig\n\t\t} : resolvedConfig;\n\t\tanimatedNumber.setValue(toValue, springConfig, animationCompleteCallback);\n\t});\n\tuseIsomorphicLayoutEffect(function() {\n\t\tif (hasntMeasured && screenSize && frameSize) {\n\t\t\tat.current = screenSize;\n\t\t\tanimatedNumber.setValue(screenSize, { type: \"direct\" });\n\t\t\tsyncAnimatedPosition(screenSize);\n\t\t\tsetTimeout(function() {\n\t\t\t\tsetDisableAnimation(false);\n\t\t\t}, 10);\n\t\t\treturn;\n\t\t}\n\t\tif (disableAnimation) return;\n\t\tif (isDraggingRef.current) return;\n\t\tif (!frameSize || !screenSize || isHidden || hasntMeasured && !open) return;\n\t\tanimateTo(position);\n\t\tif (position === -1) {\n\t\t\tscrollBridge.scrollLock = false;\n\t\t\tscrollBridge.scrollStartY = -1;\n\t\t}\n\t\tif (open && position >= 0) {\n\t\t\tvar isTopPosition = position === 0;\n\t\t\tscrollBridge.isAtTop = isTopPosition;\n\t\t\tif (isTopPosition) {\n\t\t\t\tvar _scrollBridge_setScrollEnabled;\n\t\t\t\tscrollBridge.scrollLockY = void 0;\n\t\t\t\t(_scrollBridge_setScrollEnabled = scrollBridge.setScrollEnabled) === null || _scrollBridge_setScrollEnabled === void 0 || _scrollBridge_setScrollEnabled.call(scrollBridge, true);\n\t\t\t} else {\n\t\t\t\tvar _scrollBridge_setScrollEnabled1;\n\t\t\t\tscrollBridge.scrollLockY = 0;\n\t\t\t\t(_scrollBridge_setScrollEnabled1 = scrollBridge.setScrollEnabled) === null || _scrollBridge_setScrollEnabled1 === void 0 || _scrollBridge_setScrollEnabled1.call(scrollBridge, false);\n\t\t\t}\n\t\t}\n\t}, [\n\t\thasntMeasured,\n\t\tdisableAnimation,\n\t\tisHidden,\n\t\tframeSize,\n\t\tscreenSize,\n\t\topen,\n\t\tposition\n\t]);\n\tvar _props_disableDrag;\n\tvar disableDrag = (_props_disableDrag = props.disableDrag) !== null && _props_disableDrag !== void 0 ? _props_disableDrag : controller === null || controller === void 0 ? void 0 : controller.disableDrag;\n\tuseThemeName();\n\tvar [blockPan, setBlockPan] = React.useState(false);\n\tvar panConfig = React.useMemo(function() {\n\t\tif (disableDrag) return null;\n\t\tif (!frameSize) return null;\n\t\tif (isShowingInnerSheet) return null;\n\t\tvar minY = activePositions[0];\n\t\tscrollBridge.paneMinY = minY;\n\t\tvar startY = at.current;\n\t\tfunction setPanning(val) {\n\t\t\tsetIsDragging(val);\n\t\t}\n\t\tvar release = function(param) {\n\t\t\tvar { vy } = param;\n\t\t\tscrollBridge.setParentDragging(false);\n\t\t\tif (scrollBridge.scrollLock) return;\n\t\t\tisExternalDrag = false;\n\t\t\tpreviouslyScrolling = false;\n\t\t\tsetPanning(false);\n\t\t\tvar currentPos = at.current;\n\t\t\tvar closestPoint = getSheetReleasePosition({\n\t\t\t\tpositions: activePositions,\n\t\t\t\tprojectedEnd: currentPos + frameSize * vy * .2,\n\t\t\t\tcurrentPosition: currentPos,\n\t\t\t\tframeSize,\n\t\t\t\tdismissOnSnapToBottom,\n\t\t\t\tsnapPointsMode,\n\t\t\t\tisKeyboardVisible,\n\t\t\t\tisWeb\n\t\t\t});\n\t\t\tsetPosition(closestPoint);\n\t\t\tanimateTo(closestPoint);\n\t\t};\n\t\tvar finish = function(_e, state2) {\n\t\t\trelease({\n\t\t\t\tvy: state2.vy,\n\t\t\t\tdragAt: state2.dy\n\t\t\t});\n\t\t};\n\t\tvar previouslyScrolling = false;\n\t\tvar onMoveShouldSet = function(e, param) {\n\t\t\tvar { dy } = param;\n\t\t\tfunction getShouldSet() {\n\t\t\t\tif (e.target === providerProps.handleRef.current) return true;\n\t\t\t\tif (scrollBridge.scrollNodeTouched) return false;\n\t\t\t\tif (scrollBridge.hasScrollableContent === true) {\n\t\t\t\t\tif (scrollBridge.scrollLock) return false;\n\t\t\t\t\tvar isScrolled = scrollBridge.y !== 0;\n\t\t\t\t\tvar isDraggingUp = dy < 0;\n\t\t\t\t\tvar isNearTop = scrollBridge.paneY - 5 <= scrollBridge.paneMinY;\n\t\t\t\t\tif (isScrolled) return false;\n\t\t\t\t\tif (isNearTop) {\n\t\t\t\t\t\tif (hasScrollView.current && isDraggingUp) return false;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\treturn Math.abs(dy) > 10;\n\t\t\t}\n\t\t\tvar granted = getShouldSet();\n\t\t\tif (granted) scrollBridge.setParentDragging(true);\n\t\t\treturn granted;\n\t\t};\n\t\tvar grant = function() {\n\t\t\tsetPanning(true);\n\t\t\tstopSpring();\n\t\t\tstartY = getAnimatedPosition();\n\t\t};\n\t\tvar isExternalDrag = false;\n\t\tscrollBridge.startPanDrag = function() {\n\t\t\tisExternalDrag = true;\n\t\t\tgrant();\n\t\t};\n\t\tscrollBridge.drag = function(dy) {\n\t\t\tif (!isExternalDrag) {\n\t\t\t\tisExternalDrag = true;\n\t\t\t\tgrant();\n\t\t\t}\n\t\t\tsetAnimatedPositionDirect(resisted(dy + startY, minY));\n\t\t};\n\t\tscrollBridge.release = release;\n\t\tscrollBridge.snapToPosition = function(positionIndex) {\n\t\t\tisExternalDrag = false;\n\t\t\tsetPanning(false);\n\t\t\tsetPosition(positionIndex);\n\t\t\tanimateTo(positionIndex);\n\t\t};\n\t\treturn {\n\t\t\tonMoveShouldSetPanResponder: onMoveShouldSet,\n\t\t\tonPanResponderTerminationRequest: function() {\n\t\t\t\treturn false;\n\t\t\t},\n\t\t\tonPanResponderGrant: grant,\n\t\t\tonPanResponderMove: function(_e, param) {\n\t\t\t\tvar { dy } = param;\n\t\t\t\tvar to = resisted(dy + startY, minY);\n\t\t\t\tif (to <= minY) scrollBridge.setParentDragging(false);\n\t\t\t\telse scrollBridge.setParentDragging(true);\n\t\t\t\tsetAnimatedPositionDirect(to);\n\t\t\t},\n\t\t\tonPanResponderEnd: finish,\n\t\t\tonPanResponderTerminate: finish,\n\t\t\tonPanResponderRelease: finish\n\t\t};\n\t}, [\n\t\tdisableDrag,\n\t\tisShowingInnerSheet,\n\t\tanimateTo,\n\t\tframeSize,\n\t\tactivePositions,\n\t\tsetPosition,\n\t\tdismissOnSnapToBottom,\n\t\tsnapPointsMode\n\t]);\n\tReact.useEffect(function() {\n\t\tif (isDragging || isHidden || !open || disableAnimation) return;\n\t\tif (!frameSize || !screenSize) return;\n\t\tanimateTo(position, {\n\t\t\ttype: \"timing\",\n\t\t\tduration: 250\n\t\t});\n\t}, [isKeyboardVisible, keyboardHeight]);\n\tvar wasDragging = React.useRef(false);\n\tReact.useEffect(function() {\n\t\tif (isDragging) {\n\t\t\twasDragging.current = true;\n\t\t\treturn;\n\t\t}\n\t\tif (!wasDragging.current) return;\n\t\twasDragging.current = false;\n\t\tif (!frameSize || !screenSize || isHidden || !open) return;\n\t\tanimateTo(position);\n\t}, [isDragging]);\n\tReact.useEffect(function() {\n\t\tif (!open && isKeyboardVisible) {\n\t\t\tdismissKeyboard();\n\t\t\tpauseKeyboardHandler.current = false;\n\t\t\tflushPendingHide();\n\t\t}\n\t}, [open]);\n\tReact.useEffect(function() {\n\t\tif (!isWeb || !modal || !open || shouldHideParentSheet) return;\n\t\tvar layer = {};\n\t\tsheetEscapeLayers.push(layer);\n\t\tvar onKeyDown = function(event) {\n\t\t\tif (event.key === \"Escape\") {\n\t\t\t\tif (sheetEscapeLayers[sheetEscapeLayers.length - 1] === layer) state.setOpen(false);\n\t\t\t}\n\t\t};\n\t\tdocument.addEventListener(\"keydown\", onKeyDown);\n\t\treturn function() {\n\t\t\tvar index = sheetEscapeLayers.indexOf(layer);\n\t\t\tif (index > -1) sheetEscapeLayers.splice(index, 1);\n\t\t\tdocument.removeEventListener(\"keydown\", onKeyDown);\n\t\t};\n\t}, [\n\t\tmodal,\n\t\topen,\n\t\tshouldHideParentSheet,\n\t\tstate.setOpen\n\t]);\n\tvar { panGesture, panGestureRef, gestureHandlerEnabled } = useGestureHandlerPan({\n\t\tpositions: activePositions,\n\t\tframeSize,\n\t\tsetPosition,\n\t\tanimateTo,\n\t\tstopSpring,\n\t\tscrollBridge,\n\t\tsetIsDragging,\n\t\tgetCurrentPosition: getAnimatedPosition,\n\t\tresisted,\n\t\tdisableDrag,\n\t\tisShowingInnerSheet,\n\t\tsetAnimatedPosition: setAnimatedPositionDirect,\n\t\tdismissOnSnapToBottom,\n\t\tsnapPointsMode,\n\t\tisKeyboardVisible,\n\t\tpauseKeyboardHandler\n\t});\n\tvar ignoreLayoutForKeyboard = useEvent(function() {\n\t\treturn isWeb && moveOnKeyboardChange && getWebKeyboardResizeHeight() >= MIN_KEYBOARD_HEIGHT;\n\t});\n\tvar handleAnimationViewLayout = useEvent(function(e) {\n\t\tvar _e_nativeEvent;\n\t\tif (!open && stableFrameSize.current !== 0) return;\n\t\tvar layoutHeight = (_e_nativeEvent = e.nativeEvent) === null || _e_nativeEvent === void 0 ? void 0 : _e_nativeEvent.layout.height;\n\t\tif (ignoreLayoutForKeyboard() && frameSize > 0) return;\n\t\tvar next = modal ? Math.min(layoutHeight, getStableViewportHeight()) : layoutHeight;\n\t\tif (!next) return;\n\t\tsetFrameSize(Math.round(next));\n\t});\n\tvar handleMaxContentViewLayout = React.useCallback(function(e) {\n\t\tvar _e_nativeEvent;\n\t\tif (ignoreLayoutForKeyboard() && screenSize > 0) return;\n\t\tvar next = Math.min((_e_nativeEvent = e.nativeEvent) === null || _e_nativeEvent === void 0 ? void 0 : _e_nativeEvent.layout.height, getStableViewportHeight());\n\t\tif (!next) return;\n\t\tsetMaxContentSize(Math.round(next));\n\t}, [ignoreLayoutForKeyboard, screenSize]);\n\tvar animatedStyle = useAnimatedNumberStyle(animatedNumber, React.useCallback(function(val) {\n\t\t\"worklet\";\n\t\treturn { transform: [{ translateY: frameSize === 0 ? hiddenSize : val }] };\n\t}, [frameSize]));\n\tvar [isFullyClosed, setIsFullyClosed] = React.useState(false);\n\tif (open && isFullyClosed) setIsFullyClosed(false);\n\tvar hasEverOpened = React.useRef(open);\n\tif (open) hasEverOpened.current = true;\n\tvar isVisuallyActive = open || hasEverOpened.current && !isFullyClosed;\n\tvar applyHidden = shouldHideParentSheet || isFullyClosed && !disableHideWhenClosed;\n\tvar forcedContentHeight = hasFit ? void 0 : snapPointsMode === \"percent\" ? `${maxSnapPoint}${isWeb ? modal ? \"dvh\" : \"%\" : \"%\"}` : maxSnapPoint;\n\tvar setHasScrollView = React.useCallback(function(val) {\n\t\thasScrollView.current = val;\n\t}, []);\n\tvar animatedPositionValue = React.useMemo(function() {\n\t\tvar _activePositions_;\n\t\treturn {\n\t\t\tvalue: animatedNumber,\n\t\t\tscreenSize: effScreenSize,\n\t\t\tframeSize,\n\t\t\tsnapOffsets: activePositions,\n\t\t\tminY: (_activePositions_ = activePositions[0]) !== null && _activePositions_ !== void 0 ? _activePositions_ : 0\n\t\t};\n\t}, [\n\t\tanimatedNumber,\n\t\teffScreenSize,\n\t\tframeSize,\n\t\tactivePositions\n\t]);\n\tvar { overlayChildren, animatedChildren } = React.useMemo(function() {\n\t\treturn partitionSheetChildren(props.children);\n\t}, [props.children]);\n\tvar contents = /* @__PURE__ */ jsx(LayoutMeasurementController, {\n\t\tdisable: !open,\n\t\tchildren: /* @__PURE__ */ jsx(ParentSheetContext.Provider, {\n\t\t\tvalue: nextParentContext,\n\t\t\tchildren: /* @__PURE__ */ jsx(SheetProvider, {\n\t\t\t\t...providerProps,\n\t\t\t\tkeyboardOccludedHeight,\n\t\t\t\tisKeyboardVisible,\n\t\t\t\tkeyboardStableFrameHeight,\n\t\t\t\tsetHasScrollView,\n\t\t\t\tchildren: /* @__PURE__ */ jsx(GestureSheetProvider, {\n\t\t\t\t\tisDragging,\n\t\t\t\t\tblockPan,\n\t\t\t\t\tsetBlockPan,\n\t\t\t\t\tpanGesture,\n\t\t\t\t\tpanGestureRef,\n\t\t\t\t\tchildren: /* @__PURE__ */ jsxs(SheetAnimatedPositionContext.Provider, {\n\t\t\t\t\t\tvalue: animatedPositionValue,\n\t\t\t\t\t\tchildren: [\n\t\t\t\t\t\t\t/* @__PURE__ */ jsx(SheetOverlayLayerContext.Provider, {\n\t\t\t\t\t\t\t\tvalue: true,\n\t\t\t\t\t\t\t\tchildren: /* @__PURE__ */ jsx(AnimatePresence, {\n\t\t\t\t\t\t\t\t\tcustom: { open },\n\t\t\t\t\t\t\t\t\tchildren: shouldHideParentSheet || !open ? null : overlayChildren\n\t\t\t\t\t\t\t\t})\n\t\t\t\t\t\t\t}),\n\t\t\t\t\t\t\tsnapPointsMode !== \"percent\" && /* @__PURE__ */ jsx(View, {\n\t\t\t\t\t\t\t\topacity: 0,\n\t\t\t\t\t\t\t\tposition: \"absolute\",\n\t\t\t\t\t\t\t\tinset: 0,\n\t\t\t\t\t\t\t\tpointerEvents: \"none\",\n\t\t\t\t\t\t\t\tonLayout: handleMaxContentViewLayout\n\t\t\t\t\t\t\t}),\n\t\t\t\t\t\t\t/* @__PURE__ */ jsx(AnimatedView, {\n\t\t\t\t\t\t\t\tref,\n\t\t\t\t\t\t\t\tonLayout: handleAnimationViewLayout,\n\t\t\t\t\t\t\t\ttransition: isDragging || disableAnimation ? null : transition,\n\t\t\t\t\t\t\t\tdisableClassName: true,\n\t\t\t\t\t\t\t\tstyle: [{\n\t\t\t\t\t\t\t\t\tposition: \"absolute\",\n\t\t\t\t\t\t\t\t\tzIndex,\n\t\t\t\t\t\t\t\t\twidth: \"100%\",\n\t\t\t\t\t\t\t\t\theight: forcedContentHeight,\n\t\t\t\t\t\t\t\t\tminHeight: forcedContentHeight,\n\t\t\t\t\t\t\t\t\t...applyHidden && { display: \"none\" },\n\t\t\t\t\t\t\t\t\t...(shouldHideParentSheet || !open) && { pointerEvents: \"none\" }\n\t\t\t\t\t\t\t\t}, animatedStyle],\n\t\t\t\t\t\t\t\tchildren: /* @__PURE__ */ jsx(SheetDragSurface, {\n\t\t\t\t\t\t\t\t\tgestureHandlerEnabled,\n\t\t\t\t\t\t\t\t\tpanGesture,\n\t\t\t\t\t\t\t\t\tpanConfig,\n\t\t\t\t\t\t\t\t\tchildren: animatedChildren\n\t\t\t\t\t\t\t\t})\n\t\t\t\t\t\t\t})\n\t\t\t\t\t\t]\n\t\t\t\t\t})\n\t\t\t\t})\n\t\t\t})\n\t\t})\n\t});\n\tif (needsPortalRepropagation()) contents = /* @__PURE__ */ jsx(ProvideAdaptContext, {\n\t\t...useAdaptContext(),\n\t\tchildren: /* @__PURE__ */ jsx(SafeAreaInsetsContext.Provider, {\n\t\t\tvalue: safeAreaInsets,\n\t\t\tchildren: contents\n\t\t})\n\t});\n\tvar shouldMountChildren = unmountChildrenWhenHidden ? !isFullyClosed : true;\n\tif (modal) {\n\t\tif (!shouldMountChildren) return null;\n\t\tvar RNGHRoot = getGestureHandlerState().RootView;\n\t\tvar mountedContents = /* @__PURE__ */ jsx(ContainerComponent, { children: contents });\n\t\tvar modalContents = /* @__PURE__ */ jsx(Portal, {\n\t\t\tstackZIndex: zIndex,\n\t\t\thidden: !isVisuallyActive,\n\t\t\t...portalProps,\n\t\t\tchildren: RNGHRoot ? /* @__PURE__ */ jsx(RNGHRoot, {\n\t\t\t\tstyle: open ? rnghRootStyleOpen : rnghRootStyleClosed,\n\t\t\t\tchildren: mountedContents\n\t\t\t}) : mountedContents\n\t\t});\n\t\tif (isWeb) return modalContents;\n\t\treturn /* @__PURE__ */ jsx(SheetInsideSheetContext.Provider, {\n\t\t\tvalue: onInnerSheet,\n\t\t\tchildren: modalContents\n\t\t});\n\t}\n\treturn contents;\n});\nfunction isSheetOverlayComponent(type) {\n\tvar staticConfig = type === null || type === void 0 ? void 0 : type.staticConfig;\n\twhile (staticConfig) {\n\t\tif (staticConfig[SHEET_OVERLAY_MARKER]) return true;\n\t\tstaticConfig = staticConfig.parentStaticConfig;\n\t}\n\treturn false;\n}\nfunction partitionSheetChildren(children) {\n\tvar overlayChildren = [];\n\tvar animatedChildren = [];\n\tReact.Children.forEach(children, function(child) {\n\t\tif (!/* @__PURE__ */ React.isValidElement(child)) {\n\t\t\tanimatedChildren.push(child);\n\t\t\treturn;\n\t\t}\n\t\tif (isSheetOverlayComponent(child.type)) {\n\t\t\toverlayChildren.push(child);\n\t\t\treturn;\n\t\t}\n\t\tanimatedChildren.push(child);\n\t});\n\treturn {\n\t\toverlayChildren,\n\t\tanimatedChildren\n\t};\n}\nfunction getYPositions(mode, point, screenSize, frameSize) {\n\tif (!screenSize || !frameSize) return 0;\n\tif (mode === \"mixed\") {\n\t\tif (typeof point === \"number\") return screenSize - Math.min(screenSize, Math.max(0, point));\n\t\tif (point === \"fit\") return screenSize - Math.min(screenSize, frameSize);\n\t\tif (point.endsWith(\"%\")) {\n\t\t\tvar pct = Math.min(100, Math.max(0, Number(point.slice(0, -1)))) / 100;\n\t\t\tif (Number.isNaN(pct)) {\n\t\t\t\tconsole.warn(formatDiagnostic(\"TAMAGUI_SHEET_SNAP_POINT\", \"Sheet\", \"snapPoints contains an invalid percentage string\", \"Use \\\"fit\\\", a pixel number, or a percentage such as \\\"50%\\\"\", \"snapPoint\", point));\n\t\t\t\treturn 0;\n\t\t\t}\n\t\t\treturn Math.round(screenSize - pct * screenSize);\n\t\t}\n\t\tconsole.warn(formatDiagnostic(\"TAMAGUI_SHEET_SNAP_POINT\", \"Sheet\", \"snapPoints contains an unsupported mixed-mode value\", \"Use \\\"fit\\\", a pixel number, or a percentage such as \\\"50%\\\"\", \"snapPoint\", point));\n\t\treturn 0;\n\t}\n\tif (mode === \"fit\") {\n\t\tif (point === 0) return screenSize;\n\t\treturn screenSize - Math.min(screenSize, frameSize);\n\t}\n\tif (mode === \"constant\" && typeof point === \"number\") return screenSize - Math.min(screenSize, Math.max(0, point));\n\tvar pct1 = Math.min(100, Math.max(0, Number(point))) / 100;\n\tif (Number.isNaN(pct1)) {\n\t\tconsole.warn(formatDiagnostic(\"TAMAGUI_SHEET_SNAP_POINT\", \"Sheet\", \"snapPoints contains a value that cannot be converted to a percentage\", \"Use a numeric percentage such as 50\", \"snapPoint\", point));\n\t\treturn 0;\n\t}\n\treturn Math.round(screenSize - pct1 * screenSize);\n}\n\nexport { SheetImplementationCustom, isSheetOverlayComponent };"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAyBA,IAAI,aAAa;AACjB,IAAI,oBAAoB;CACvB,OAAO;CACP,QAAQ;AACT;AACA,IAAI,sBAAsB;CACzB,OAAO;CACP,QAAQ;AACT;AACA,IAAI,oBAAoB,CAAC;AACzB,IAAI,4BAA4B,mBAAmB,SAAS,2BAA2B,OAAO,cAAc;CAC3G,IAAI,cAAc,MAAM,WAAW,kBAAkB;CACrD,IAAI,iBAAiB,kBAAkB;CACvC,IAAI;CACJ,IAAI,oBAAoB,sBAAsB,mBAAmB,QAAQ,mBAAmB,KAAK,IAAI,KAAK,IAAI,eAAe,SAAS,QAAQ,wBAAwB,KAAK,IAAI,sBAAsB;CACrM,IAAI,EAAE,YAAY,kBAAkB,sBAAsB,QAAQ,OAAO,SAAS,YAAY,SAAS,GAAG,uBAAuB,OAAO,4BAA4B,OAAO,wBAAwB,OAAO,aAAa,oBAAoB,qBAAqB,MAAM,UAAU,iBAAiB;CACjS,IAAI,QAAQ,kBAAkB,KAAK;CACnC,IAAI,gBAAgB,sBAAsB,OAAO,KAAK;CACtD,IAAI,EAAE,WAAW,cAAc,uBAAuB,YAAY,gBAAgB,QAAQ,UAAU,aAAa,cAAc,YAAY,mBAAmB,iBAAiB;CAC/K,IAAI,EAAE,MAAM,YAAY,aAAa;CACrC,IAAI,UAAU,MAAM,OAAO,IAAI;CAC/B,QAAQ,UAAU;CAClB,IAAI,MAAM,gBAAgB,cAAc,MAAM,OAAO,KAAK,CAAC,GAAG,cAAc,UAAU;CACtF,IAAI,kBAAkB,mBAAmB;CACzC,IAAI,oBAAoB,WAAW;EAClC,IAAI,wBAAwB;EAC5B,IAAI,sBAAsB,OAAO;EACjC,IAAI,WAAW,cAAc,yBAAyB,sBAAsB,OAAO,QAAQ,2BAA2B,KAAK,IAAI,KAAK,IAAI,uBAAuB,QAAQ,YAAY,EAAE,YAAY,gBAAgB,WAAW,CAAC,IAAI;EACjO,IAAI,SAAS,aAAa,QAAQ,aAAa,KAAK,IAAI,KAAK,KAAK,gBAAgB,SAAS,SAAS,QAAQ,kBAAkB,KAAK,IAAI,KAAK,IAAI,cAAc;EAC9J,IAAI,CAAC,QAAQ,OAAO;EACpB,IAAI,OAAO,SAAS,UAAU,OAAO;GACpC,MAAM;GACN,UAAU,OAAO;EAClB;EACA,OAAO;GACN,MAAM;GACN,WAAW,OAAO;GAClB,SAAS,OAAO;GAChB,MAAM,OAAO;EACd;CACD,EAAC,CAAE;CACH,IAAI,CAAC,qBAAqB,0BAA0B,MAAM,SAAS,KAAK;CACxE,IAAI,wBAAwB,CAAC,SAAS,SAAS,uBAAuB,yBAAyB;CAC/F,IAAI,mBAAmB,MAAM,WAAW,uBAAuB;CAC/D,IAAI,eAAe,MAAM,YAAY,SAAS,UAAU;EACvD,uBAAuB,QAAQ;CAChC,GAAG,CAAC,CAAC;CACL,IAAI,EAAE,gBAAgB,mBAAmB,iBAAiB,sBAAsB,qBAAqB,2BAA2B,EAAE,SAAS,QAAQ,oBAAoB,EAAE,CAAC;CAC1K,IAAI,kBAAkB,MAAM,OAAO,SAAS;CAC5C,MAAM,UAAU,WAAW;EAC1B,IAAI,QAAQ,WAAW,gBAAgB,UAAU;CAClD,GAAG,CAAC,MAAM,SAAS,CAAC;CACpB,IAAI,eAAe,SAAS,UAAU;CACtC,IAAI,qBAAqB,CAAC,SAAS,UAAU,QAAQ,oBAAoB;CACzE,IAAI,uBAAuB,MAAM,OAAO,CAAC;CACzC,MAAM,UAAU,WAAW;EAC1B,IAAI,sBAAsB,QAAQ,CAAC,qBAAqB,YAAY,GAAG,qBAAqB,UAAU;CACvG,GAAG;EACF;EACA;EACA;EACA;CACD,CAAC;CACD,IAAI,gBAAgB,eAAe,wBAAwB,IAAI;CAC/D,IAAI,qBAAqB,OAAO,YAAY,gBAAgB,WAAW;CACvE,IAAI,YAAY,MAAM,QAAQ,WAAW;EACxC,OAAO,WAAW,IAAI,SAAS,OAAO;GACrC,OAAO,cAAc,gBAAgB,OAAO,eAAe,kBAAkB;EAC9E,CAAC;CACF,GAAG;EACF;EACA;EACA;EACA;CACD,CAAC;CACD,IAAI,CAAC,YAAY,kBAAkB,MAAM,SAAS,KAAK;CACvD,IAAI,gBAAgB,MAAM,OAAO,KAAK;CACtC,IAAI,gBAAgB,MAAM,YAAY,SAAS,KAAK;EACnD,cAAc,UAAU;EACxB,qBAAqB,UAAU;EAC/B,eAAe,GAAG;EAClB,IAAI,CAAC,KAAK,iBAAiB;CAC5B,GAAG,CAAC,sBAAsB,gBAAgB,CAAC;CAC3C,IAAI,qBAAqB,MAAM,OAAO,SAAS;CAC/C,IAAI,kBAAkB,MAAM,QAAQ,WAAW;EAC9C,IAAI,cAAc,cAAc,SAAS,OAAO,mBAAmB;EACnE,IAAI;EACJ,IAAI,CAAC,qBAAqB,kBAAkB,GAAG,SAAS;OACnD,SAAS,UAAU,IAAI,SAAS,GAAG;GACvC,OAAO,0BAA0B;IAChC,QAAQ;IACR,YAAY;IACZ;IACA;IACA,iBAAiB;IACjB,aAAa,QAAQ,8BAA8B,IAAI;GACxD,CAAC;EACF,CAAC;EACD,mBAAmB,UAAU;EAC7B,OAAO;CACR,GAAG;EACF;EACA;EACA;EACA;EACA;EACA;CACD,CAAC;CACD,IAAI,yBAAyB,0BAA0B;EACtD,WAAW;EACX;EACA;EACA,YAAY;EACZ,QAAQ,YAAY,IAAI,gBAAgB,YAAY,KAAK;CAC1D,CAAC;CACD,IAAI,4BAA4B,gBAAgB,qBAAqB,YAAY,IAAI,YAAY,sBAAsB,qBAAqB,qBAAqB,UAAU,IAAI,qBAAqB,UAAU;CAC9M,IAAI;CACJ,IAAI,gBAAgB,wBAAwB,gBAAgB,UAAU,QAAQ,0BAA0B,KAAK,IAAI,wBAAwB;CACzI,0BAA0B,WAAW;EACpC,IAAI,EAAE,oBAAoB,OAAO;EACjC,iBAAiB,IAAI;EACrB,OAAO,WAAW;GACjB,iBAAiB,KAAK;EACvB;CACD,GAAG,CAAC,kBAAkB,IAAI,CAAC;CAC3B,IAAI,oBAAoB,MAAM,QAAQ,WAAW;EAChD,OAAO,EAAE,OAAO;CACjB,GAAG,CAAC,MAAM,CAAC;CACX,IAAI,gBAAgB,gBAAgB,KAAK,aAAa,aAAa;CACnE,IAAI,iBAAiB,kBAAkB,aAAa;CACpD,IAAI,KAAK,MAAM,OAAO,aAAa;CACnC,IAAI,gBAAgB,GAAG,YAAY;CACnC,IAAI,CAAC,kBAAkB,uBAAuB,SAAS,aAAa;CACpE,IAAI,qBAAqB,MAAM,OAAO,KAAK;CAC3C,IAAI,eAAe,QAAQ,eAAe,KAAK,IAAI,KAAK,IAAI,WAAW,mBAAmB,mBAAmB,UAAU;CACvH,IAAI,gBAAgB,MAAM,OAAO,KAAK;CACtC,IAAI,uBAAuB,MAAM,OAAO,CAAC,CAAC;CAC1C,IAAI,uBAAuB,MAAM,OAAO,IAAI;CAC5C,IAAI,iBAAiB,SAAS,SAAS,OAAO,OAAO,UAAU;EAC9D,IAAI;EACJ,IAAI,IAAI;GACP;GACA,OAAO,MAAM;GACb,UAAU,MAAM;EACjB;EACA,IAAI,UAAU,OAAO,EAAE,WAAW;EAClC,iBAAiB,QAAQ,iBAAiB,KAAK,KAAK,aAAa,CAAC;EAClE,eAAe,QAAQ,eAAe,KAAK,MAAM,2BAA2B,WAAW,iBAAiB,QAAQ,yBAAyB,KAAK,YAAY,CAAC;CAC5J,CAAC;CACD,IAAI,uBAAuB,SAAS,SAAS,OAAO;EACnD,GAAG,UAAU;EACb,aAAa,QAAQ;EACrB,IAAI,OAAO,gBAAgB;EAC3B,IAAI,WAAW,aAAa;EAC5B,IAAI,WAAW,SAAS,OAAO;EAC/B,IAAI,aAAa,UAAU;EAC3B,aAAa,UAAU;EACvB,IAAI,UAAU;GACb,IAAI;GACJ,IAAI,aAAa,iBAAiB;IACjC,IAAI;IACJ,IAAI,aAAa,IAAI,GAAG;KACvB,IAAI;KACJ,CAAC,8BAA8B,aAAa,mBAAmB,QAAQ,gCAAgC,KAAK,KAAK,4BAA4B,KAAK,cAAc,CAAC;KACjK,aAAa,IAAI;IAClB;IACA,aAAa,cAAc;IAC3B,CAAC,kCAAkC,aAAa,sBAAsB,QAAQ,oCAAoC,KAAK,KAAK,gCAAgC,KAAK,cAAc,OAAO,CAAC;IACvL;GACD;GACA,IAAI,aAAa,IAAI,GAAG;IACvB,IAAI;IACJ,CAAC,+BAA+B,aAAa,mBAAmB,QAAQ,iCAAiC,KAAK,KAAK,6BAA6B,KAAK,cAAc,CAAC;IACpK,aAAa,IAAI;GAClB;GACA,aAAa,cAAc,KAAK;GAChC,CAAC,iCAAiC,aAAa,sBAAsB,QAAQ,mCAAmC,KAAK,KAAK,+BAA+B,KAAK,cAAc,IAAI;EACjL,OAAO;GACN,IAAI;GACJ,aAAa,cAAc;GAC3B,CAAC,kCAAkC,aAAa,sBAAsB,QAAQ,oCAAoC,KAAK,KAAK,gCAAgC,KAAK,cAAc,KAAK;EACrL;CACD,CAAC;CACD,IAAI,4BAA4B,SAAS,SAAS,OAAO;EACxD,qBAAqB,KAAK;EAC1B,eAAe,SAAS,OAAO,EAAE,MAAM,SAAS,CAAC;CAClD,CAAC;CACD,IAAI,sBAAsB,SAAS,WAAW;EAC7C,IAAI,QAAQ,eAAe,SAAS;EACpC,qBAAqB,KAAK;EAC1B,OAAO;CACR,CAAC;CACD,SAAS,aAAa;EACrB,eAAe,KAAK;EACpB,IAAI,aAAa,iBAAiB;GACjC,aAAa,gBAAgB;GAC7B,aAAa,kBAAkB,KAAK;EACrC;CACD;CACA,IAAI,YAAY,SAAS,SAAS,WAAW,mBAAmB;EAC/D,IAAI,cAAc,GAAG;EACrB,IAAI,cAAc,QAAQ,KAAK,IAAI,eAAe,qBAAqB,CAAC,IAAI;EAC5E,IAAI,oBAAoB,yBAAyB,cAAc,gBAAgB,SAAS;EACxF,IAAI,kBAAkB,cAAc,CAAC,KAAK,CAAC,YAAY,CAAC;EACxD,IAAI,UAAU,kBAAkB,gBAAgB,aAAa;EAC7D,IAAI,GAAG,YAAY,SAAS;GAC3B,IAAI,mBAAmB;IACtB,IAAI,qBAAqB,SAAS;KACjC,eAAe,OAAO,qBAAqB,SAAS,KAAK;KACzD,qBAAqB,UAAU;IAChC;IACA,WAAW;IACX,IAAI,QAAQ;KACX,OAAO;KACP,UAAU;IACX;IACA,qBAAqB,UAAU,CAAC;IAChC,eAAe,SAAS,KAAK;IAC7B,qBAAqB,OAAO;IAC5B,iBAAiB,IAAI;IACrB,eAAe,OAAO,OAAO,IAAI;GAClC;GACA;EACD;EACA,GAAG,UAAU;EACb,IAAI,QAAQ,CAAC,kBAAkB,UAAU,qBAAqB,UAAU,IAAI,SAAS;EACrF,qBAAqB,UAAU,kBAAkB,YAAY,CAAC;EAC9D,IAAI,SAAS;GACZ;GACA,UAAU;EACX;EACA,IAAI,qBAAqB,SAAS;GACjC,eAAe,OAAO,qBAAqB,SAAS,KAAK;GACzD,qBAAqB,UAAU;EAChC;EACA,WAAW;EACX,IAAI,4BAA4B,WAAW;GAC1C,IAAI,GAAG,YAAY,SAAS;GAC5B,qBAAqB,OAAO;GAC5B,qBAAqB,UAAU;GAC/B,IAAI,CAAC,mBAAmB,CAAC,QAAQ,SAAS,iBAAiB,IAAI;GAC/D,eAAe,OAAO,QAAQ,IAAI;EACnC;EACA,qBAAqB,UAAU;EAC/B,eAAe,SAAS,MAAM;EAC9B,IAAI,mBAAmB,SAAS;GAC/B,mBAAmB,UAAU;GAC7B,eAAe,SAAS,SAAS;IAChC,MAAM;IACN,UAAU;GACX,GAAG,yBAAyB;GAC5B;EACD;EACA,IAAI,iBAAiB,qBAAqB;GACzC,MAAM;GACN,GAAG;EACJ;EACA,IAAI,eAAe,CAAC,eAAe,QAAQ,eAAe,SAAS,WAAW;GAC7E,2BAA2B;GAC3B,oBAAoB;GACpB,iBAAiB;GACjB,GAAG;EACJ,IAAI;EACJ,eAAe,SAAS,SAAS,cAAc,yBAAyB;CACzE,CAAC;CACD,0BAA0B,WAAW;EACpC,IAAI,iBAAiB,cAAc,WAAW;GAC7C,GAAG,UAAU;GACb,eAAe,SAAS,YAAY,EAAE,MAAM,SAAS,CAAC;GACtD,qBAAqB,UAAU;GAC/B,WAAW,WAAW;IACrB,oBAAoB,KAAK;GAC1B,GAAG,EAAE;GACL;EACD;EACA,IAAI,kBAAkB;EACtB,IAAI,cAAc,SAAS;EAC3B,IAAI,CAAC,aAAa,CAAC,cAAc,YAAY,iBAAiB,CAAC,MAAM;EACrE,UAAU,QAAQ;EAClB,IAAI,aAAa,CAAC,GAAG;GACpB,aAAa,aAAa;GAC1B,aAAa,eAAe,CAAC;EAC9B;EACA,IAAI,QAAQ,YAAY,GAAG;GAC1B,IAAI,gBAAgB,aAAa;GACjC,aAAa,UAAU;GACvB,IAAI,eAAe;IAClB,IAAI;IACJ,aAAa,cAAc,KAAK;IAChC,CAAC,iCAAiC,aAAa,sBAAsB,QAAQ,mCAAmC,KAAK,KAAK,+BAA+B,KAAK,cAAc,IAAI;GACjL,OAAO;IACN,IAAI;IACJ,aAAa,cAAc;IAC3B,CAAC,kCAAkC,aAAa,sBAAsB,QAAQ,oCAAoC,KAAK,KAAK,gCAAgC,KAAK,cAAc,KAAK;GACrL;EACD;CACD,GAAG;EACF;EACA;EACA;EACA;EACA;EACA;EACA;CACD,CAAC;CACD,IAAI;CACJ,IAAI,eAAe,qBAAqB,MAAM,iBAAiB,QAAQ,uBAAuB,KAAK,IAAI,qBAAqB,eAAe,QAAQ,eAAe,KAAK,IAAI,KAAK,IAAI,WAAW;CAC/L,aAAa;CACb,IAAI,CAAC,UAAU,eAAe,MAAM,SAAS,KAAK;CAClD,IAAI,YAAY,MAAM,QAAQ,WAAW;EACxC,IAAI,aAAa,OAAO;EACxB,IAAI,CAAC,WAAW,OAAO;EACvB,IAAI,qBAAqB,OAAO;EAChC,IAAI,OAAO,gBAAgB;EAC3B,aAAa,WAAW;EACxB,IAAI,SAAS,GAAG;EAChB,SAAS,WAAW,KAAK;GACxB,cAAc,GAAG;EAClB;EACA,IAAI,UAAU,SAAS,OAAO;GAC7B,IAAI,EAAE,OAAO;GACb,aAAa,kBAAkB,KAAK;GACpC,IAAI,aAAa,YAAY;GAC7B,iBAAiB;GACjB,sBAAsB;GACtB,WAAW,KAAK;GAChB,IAAI,aAAa,GAAG;GACpB,IAAI,eAAe,wBAAwB;IAC1C,WAAW;IACX,cAAc,aAAa,YAAY,KAAK;IAC5C,iBAAiB;IACjB;IACA;IACA;IACA;IACA;GACD,CAAC;GACD,YAAY,YAAY;GACxB,UAAU,YAAY;EACvB;EACA,IAAI,SAAS,SAAS,IAAI,QAAQ;GACjC,QAAQ;IACP,IAAI,OAAO;IACX,QAAQ,OAAO;GAChB,CAAC;EACF;EACA,IAAI,sBAAsB;EAC1B,IAAI,kBAAkB,SAAS,GAAG,OAAO;GACxC,IAAI,EAAE,OAAO;GACb,SAAS,eAAe;IACvB,IAAI,EAAE,WAAW,cAAc,UAAU,SAAS,OAAO;IACzD,IAAI,aAAa,mBAAmB,OAAO;IAC3C,IAAI,aAAa,yBAAyB,MAAM;KAC/C,IAAI,aAAa,YAAY,OAAO;KACpC,IAAI,aAAa,aAAa,MAAM;KACpC,IAAI,eAAe,KAAK;KACxB,IAAI,YAAY,aAAa,QAAQ,KAAK,aAAa;KACvD,IAAI,YAAY,OAAO;KACvB,IAAI,WAAW;MACd,IAAI,cAAc,WAAW,cAAc,OAAO;KACnD;IACD;IACA,OAAO,KAAK,IAAI,EAAE,IAAI;GACvB;GACA,IAAI,UAAU,aAAa;GAC3B,IAAI,SAAS,aAAa,kBAAkB,IAAI;GAChD,OAAO;EACR;EACA,IAAI,QAAQ,WAAW;GACtB,WAAW,IAAI;GACf,WAAW;GACX,SAAS,oBAAoB;EAC9B;EACA,IAAI,iBAAiB;EACrB,aAAa,eAAe,WAAW;GACtC,iBAAiB;GACjB,MAAM;EACP;EACA,aAAa,OAAO,SAAS,IAAI;GAChC,IAAI,CAAC,gBAAgB;IACpB,iBAAiB;IACjB,MAAM;GACP;GACA,0BAA0B,SAAS,KAAK,QAAQ,IAAI,CAAC;EACtD;EACA,aAAa,UAAU;EACvB,aAAa,iBAAiB,SAAS,eAAe;GACrD,iBAAiB;GACjB,WAAW,KAAK;GAChB,YAAY,aAAa;GACzB,UAAU,aAAa;EACxB;EACA,OAAO;GACN,6BAA6B;GAC7B,kCAAkC,WAAW;IAC5C,OAAO;GACR;GACA,qBAAqB;GACrB,oBAAoB,SAAS,IAAI,OAAO;IACvC,IAAI,EAAE,OAAO;IACb,IAAI,KAAK,SAAS,KAAK,QAAQ,IAAI;IACnC,IAAI,MAAM,MAAM,aAAa,kBAAkB,KAAK;SAC/C,aAAa,kBAAkB,IAAI;IACxC,0BAA0B,EAAE;GAC7B;GACA,mBAAmB;GACnB,yBAAyB;GACzB,uBAAuB;EACxB;CACD,GAAG;EACF;EACA;EACA;EACA;EACA;EACA;EACA;EACA;CACD,CAAC;CACD,MAAM,UAAU,WAAW;EAC1B,IAAI,cAAc,YAAY,CAAC,QAAQ,kBAAkB;EACzD,IAAI,CAAC,aAAa,CAAC,YAAY;EAC/B,UAAU,UAAU;GACnB,MAAM;GACN,UAAU;EACX,CAAC;CACF,GAAG,CAAC,mBAAmB,cAAc,CAAC;CACtC,IAAI,cAAc,MAAM,OAAO,KAAK;CACpC,MAAM,UAAU,WAAW;EAC1B,IAAI,YAAY;GACf,YAAY,UAAU;GACtB;EACD;EACA,IAAI,CAAC,YAAY,SAAS;EAC1B,YAAY,UAAU;EACtB,IAAI,CAAC,aAAa,CAAC,cAAc,YAAY,CAAC,MAAM;EACpD,UAAU,QAAQ;CACnB,GAAG,CAAC,UAAU,CAAC;CACf,MAAM,UAAU,WAAW;EAC1B,IAAI,CAAC,QAAQ,mBAAmB;GAC/B,gBAAgB;GAChB,qBAAqB,UAAU;GAC/B,iBAAiB;EAClB;CACD,GAAG,CAAC,IAAI,CAAC;CACT,MAAM,UAAU,WAAW;EAC1B,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,QAAQ,uBAAuB;EACxD,IAAI,QAAQ,CAAC;EACb,kBAAkB,KAAK,KAAK;EAC5B,IAAI,YAAY,SAAS,OAAO;GAC/B,IAAI,MAAM,QAAQ,UAAU;IAC3B,IAAI,kBAAkB,kBAAkB,SAAS,OAAO,OAAO,MAAM,QAAQ,KAAK;GACnF;EACD;EACA,SAAS,iBAAiB,WAAW,SAAS;EAC9C,OAAO,WAAW;GACjB,IAAI,QAAQ,kBAAkB,QAAQ,KAAK;GAC3C,IAAI,QAAQ,CAAC,GAAG,kBAAkB,OAAO,OAAO,CAAC;GACjD,SAAS,oBAAoB,WAAW,SAAS;EAClD;CACD,GAAG;EACF;EACA;EACA;EACA,MAAM;CACP,CAAC;CACD,IAAI,EAAE,YAAY,eAAe,0BAA0B,qBAAqB;EAC/E,WAAW;EACX;EACA;EACA;EACA;EACA;EACA;EACA,oBAAoB;EACpB;EACA;EACA;EACA,qBAAqB;EACrB;EACA;EACA;EACA;CACD,CAAC;CACD,IAAI,0BAA0B,SAAS,WAAW;EACjD,OAAO,SAAS,wBAAwB,2BAA2B,KAAK;CACzE,CAAC;CACD,IAAI,4BAA4B,SAAS,SAAS,GAAG;EACpD,IAAI;EACJ,IAAI,CAAC,QAAQ,gBAAgB,YAAY,GAAG;EAC5C,IAAI,gBAAgB,iBAAiB,EAAE,iBAAiB,QAAQ,mBAAmB,KAAK,IAAI,KAAK,IAAI,eAAe,OAAO;EAC3H,IAAI,wBAAwB,KAAK,YAAY,GAAG;EAChD,IAAI,OAAO,QAAQ,KAAK,IAAI,cAAc,wBAAwB,CAAC,IAAI;EACvE,IAAI,CAAC,MAAM;EACX,aAAa,KAAK,MAAM,IAAI,CAAC;CAC9B,CAAC;CACD,IAAI,6BAA6B,MAAM,YAAY,SAAS,GAAG;EAC9D,IAAI;EACJ,IAAI,wBAAwB,KAAK,aAAa,GAAG;EACjD,IAAI,OAAO,KAAK,KAAK,iBAAiB,EAAE,iBAAiB,QAAQ,mBAAmB,KAAK,IAAI,KAAK,IAAI,eAAe,OAAO,QAAQ,wBAAwB,CAAC;EAC7J,IAAI,CAAC,MAAM;EACX,kBAAkB,KAAK,MAAM,IAAI,CAAC;CACnC,GAAG,CAAC,yBAAyB,UAAU,CAAC;CACxC,IAAI,gBAAgB,uBAAuB,gBAAgB,MAAM,YAAY,SAAS,KAAK;EAC1F;EACA,OAAO,EAAE,WAAW,CAAC,EAAE,YAAY,cAAc,IAAI,aAAa,IAAI,CAAC,EAAE;CAC1E,GAAG,CAAC,SAAS,CAAC,CAAC;CACf,IAAI,CAAC,eAAe,oBAAoB,MAAM,SAAS,KAAK;CAC5D,IAAI,QAAQ,eAAe,iBAAiB,KAAK;CACjD,IAAI,gBAAgB,MAAM,OAAO,IAAI;CACrC,IAAI,MAAM,cAAc,UAAU;CAClC,IAAI,mBAAmB,QAAQ,cAAc,WAAW,CAAC;CACzD,IAAI,cAAc,yBAAyB,iBAAiB,CAAC;CAC7D,IAAI,sBAAsB,SAAS,KAAK,IAAI,mBAAmB,YAAY,GAAG,eAAe,QAAQ,QAAQ,QAAQ,MAAM,QAAQ;CACnI,IAAI,mBAAmB,MAAM,YAAY,SAAS,KAAK;EACtD,cAAc,UAAU;CACzB,GAAG,CAAC,CAAC;CACL,IAAI,wBAAwB,MAAM,QAAQ,WAAW;EACpD,IAAI;EACJ,OAAO;GACN,OAAO;GACP,YAAY;GACZ;GACA,aAAa;GACb,OAAO,oBAAoB,gBAAgB,QAAQ,QAAQ,sBAAsB,KAAK,IAAI,oBAAoB;EAC/G;CACD,GAAG;EACF;EACA;EACA;EACA;CACD,CAAC;CACD,IAAI,EAAE,iBAAiB,qBAAqB,MAAM,QAAQ,WAAW;EACpE,OAAO,uBAAuB,MAAM,QAAQ;CAC7C,GAAG,CAAC,MAAM,QAAQ,CAAC;CACnB,IAAI,WAA2B,oBAAI,6BAA6B;EAC/D,SAAS,CAAC;EACV,UAA0B,oBAAI,mBAAmB,UAAU;GAC1D,OAAO;GACP,UAA0B,oBAAI,eAAe;IAC5C,GAAG;IACH;IACA;IACA;IACA;IACA,UAA0B,oBAAI,sBAAsB;KACnD;KACA;KACA;KACA;KACA;KACA,UAA0B,qBAAK,6BAA6B,UAAU;MACrE,OAAO;MACP,UAAU;OACO,oBAAI,yBAAyB,UAAU;QACtD,OAAO;QACP,UAA0B,oBAAI,iBAAiB;SAC9C,QAAQ,EAAE,KAAK;SACf,UAAU,yBAAyB,CAAC,OAAO,OAAO;QACnD,CAAC;OACF,CAAC;OACD,mBAAmB,aAA6B,oBAAI,MAAM;QACzD,SAAS;QACT,UAAU;QACV,OAAO;QACP,eAAe;QACf,UAAU;OACX,CAAC;OACe,oBAAI,cAAc;QACjC;QACA,UAAU;QACV,YAAY,cAAc,mBAAmB,OAAO;QACpD,kBAAkB;QAClB,OAAO,CAAC;SACP,UAAU;SACV;SACA,OAAO;SACP,QAAQ;SACR,WAAW;SACX,GAAG,eAAe,EAAE,SAAS,OAAO;SACpC,IAAI,yBAAyB,CAAC,SAAS,EAAE,eAAe,OAAO;QAChE,GAAG,aAAa;QAChB,UAA0B,oBAAI,kBAAkB;SAC/C;SACA;SACA;SACA,UAAU;QACX,CAAC;OACF,CAAC;MACF;KACD,CAAC;IACF,CAAC;GACF,CAAC;EACF,CAAC;CACF,CAAC;CACD,IAAI,yBAAyB,GAAG,WAA2B,oBAAI,qBAAqB;EACnF,GAAG,gBAAgB;EACnB,UAA0B,oBAAI,sBAAsB,UAAU;GAC7D,OAAO;GACP,UAAU;EACX,CAAC;CACF,CAAC;CACD,IAAI,sBAAsB,4BAA4B,CAAC,gBAAgB;CACvE,IAAI,OAAO;EACV,IAAI,CAAC,qBAAqB,OAAO;EACjC,IAAI,WAAW,uBAAuB,CAAC,CAAC;EACxC,IAAI,kBAAkC,oBAAI,oBAAoB,EAAE,UAAU,SAAS,CAAC;EACpF,IAAI,gBAAgC,oBAAI,QAAQ;GAC/C,aAAa;GACb,QAAQ,CAAC;GACT,GAAG;GACH,UAAU,WAA2B,oBAAI,UAAU;IAClD,OAAO,OAAO,oBAAoB;IAClC,UAAU;GACX,CAAC,IAAI;EACN,CAAC;EACD,IAAI,OAAO,OAAO;EAClB,OAAuB,oBAAI,wBAAwB,UAAU;GAC5D,OAAO;GACP,UAAU;EACX,CAAC;CACF;CACA,OAAO;AACR,CAAC;AACD,SAAS,wBAAwB,MAAM;CACtC,IAAI,eAAe,SAAS,QAAQ,SAAS,KAAK,IAAI,KAAK,IAAI,KAAK;CACpE,OAAO,cAAc;EACpB,IAAI,aAAa,uBAAuB,OAAO;EAC/C,eAAe,aAAa;CAC7B;CACA,OAAO;AACR;AACA,SAAS,uBAAuB,UAAU;CACzC,IAAI,kBAAkB,CAAC;CACvB,IAAI,mBAAmB,CAAC;CACxB,MAAM,SAAS,QAAQ,UAAU,SAAS,OAAO;EAChD,IAAI,CAAiB,sBAAM,eAAe,KAAK,GAAG;GACjD,iBAAiB,KAAK,KAAK;GAC3B;EACD;EACA,IAAI,wBAAwB,MAAM,IAAI,GAAG;GACxC,gBAAgB,KAAK,KAAK;GAC1B;EACD;EACA,iBAAiB,KAAK,KAAK;CAC5B,CAAC;CACD,OAAO;EACN;EACA;CACD;AACD;AACA,SAAS,cAAc,MAAM,OAAO,YAAY,WAAW;CAC1D,IAAI,CAAC,cAAc,CAAC,WAAW,OAAO;CACtC,IAAI,SAAS,SAAS;EACrB,IAAI,OAAO,UAAU,UAAU,OAAO,aAAa,KAAK,IAAI,YAAY,KAAK,IAAI,GAAG,KAAK,CAAC;EAC1F,IAAI,UAAU,OAAO,OAAO,aAAa,KAAK,IAAI,YAAY,SAAS;EACvE,IAAI,MAAM,SAAS,GAAG,GAAG;GACxB,IAAI,MAAM,KAAK,IAAI,KAAK,KAAK,IAAI,GAAG,OAAO,MAAM,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI;GACnE,IAAI,OAAO,MAAM,GAAG,GAAG;IACtB,QAAQ,KAAK,iBAAiB,4BAA4B,SAAS,oDAAoD,gEAAgE,aAAa,KAAK,CAAC;IAC1M,OAAO;GACR;GACA,OAAO,KAAK,MAAM,aAAa,MAAM,UAAU;EAChD;EACA,QAAQ,KAAK,iBAAiB,4BAA4B,SAAS,uDAAuD,gEAAgE,aAAa,KAAK,CAAC;EAC7M,OAAO;CACR;CACA,IAAI,SAAS,OAAO;EACnB,IAAI,UAAU,GAAG,OAAO;EACxB,OAAO,aAAa,KAAK,IAAI,YAAY,SAAS;CACnD;CACA,IAAI,SAAS,cAAc,OAAO,UAAU,UAAU,OAAO,aAAa,KAAK,IAAI,YAAY,KAAK,IAAI,GAAG,KAAK,CAAC;CACjH,IAAI,OAAO,KAAK,IAAI,KAAK,KAAK,IAAI,GAAG,OAAO,KAAK,CAAC,CAAC,IAAI;CACvD,IAAI,OAAO,MAAM,IAAI,GAAG;EACvB,QAAQ,KAAK,iBAAiB,4BAA4B,SAAS,wEAAwE,uCAAuC,aAAa,KAAK,CAAC;EACrM,OAAO;CACR;CACA,OAAO,KAAK,MAAM,aAAa,OAAO,UAAU;AACjD"}
|