// Metro module 5389 (f5390). import * as _Module19 from "react"; import { useCallback, useMemo, useRef } from "react"; import * as _Module5249 from "./Module5249"; import { useBottomSheetInternal, useBottomSheetGestureHandlers, useBoundingClientRect } from "./Module5250"; import { Gesture, GestureDetector } from "./Module5273"; import BottomSheetHandle from "./BottomSheetHandle"; import Module1606 from "./Module1606"; const memo2 = _Module19.memo; const r24 = memo2(function BottomSheetHandleContainerComponent(props) { const { animatedIndex, animatedPosition, simultaneousHandlers, enableHandlePanningGesture = _Module5249.DEFAULT_ENABLE_HANDLE_PANNING_GESTURE } = props; const DEFAULT_ENABLE_HANDLE_PANNING_GESTURE = enableHandlePanningGesture; const handleHeight = props.handleHeight; let HandleComponent = props.handleComponent; const { handleStyle, handleIndicatorStyle } = props; const ref = useRef(null); const bottomSheetInternal = useBottomSheetInternal(); const { activeOffsetX, activeOffsetY, failOffsetX, failOffsetY, waitFor, simultaneousHandlers: simultaneousHandlers2 } = bottomSheetInternal; const handlePanGestureHandler = useBottomSheetGestureHandlers().handlePanGestureHandler; const memo = useMemo(() => { const r1 = []; if (simultaneousHandlers) { r1.push(simultaneousHandlers); } if (simultaneousHandlers2) { const isArray = Array.isArray(simultaneousHandlers2); const push = r1.push; if (isArray) { push.apply(r1, [...simultaneousHandlers2]); } else { push.call(r1, simultaneousHandlers2); } } return r1; }, [simultaneousHandlers2, simultaneousHandlers]); const memo2 = useMemo(() => { const r30 = Gesture.Pan().enabled(DEFAULT_ENABLE_HANDLE_PANNING_GESTURE).shouldCancelWhenOutside(false).runOnJS(false).onStart(handlePanGestureHandler.handleOnStart).onChange(handlePanGestureHandler.handleOnChange).onEnd(handlePanGestureHandler.handleOnEnd).onFinalize(handlePanGestureHandler.handleOnFinalize); const r32 = waitFor ? r30.requireExternalGestureToFail(waitFor) : r30; const r35 = memo ? r32.simultaneousWithExternalGesture(memo) : r32; const r38 = activeOffsetX ? r35.activeOffsetX(activeOffsetX) : r35; const r41 = activeOffsetY ? r38.activeOffsetY(activeOffsetY) : r38; const r44 = failOffsetX ? r41.failOffsetX(failOffsetX) : r41; return failOffsetY ? r44.failOffsetY(failOffsetY) : r44; }, [activeOffsetX, activeOffsetY, DEFAULT_ENABLE_HANDLE_PANNING_GESTURE, failOffsetX, failOffsetY, memo, waitFor, handlePanGestureHandler.handleOnChange, handlePanGestureHandler.handleOnEnd, handlePanGestureHandler.handleOnFinalize, handlePanGestureHandler.handleOnStart]); const callback = useCallback(function handleContainerLayout(a0) { handleHeight.value = a0.nativeEvent.layout.height; }, [handleHeight]); useBoundingClientRect(ref, useCallback((a0) => { handleHeight.value = a0.height; }, [handleHeight])); if (HandleComponent == null) { HandleComponent = BottomSheetHandle; } return ; }); r24.displayName = "BottomSheetHandleContainer"; export default r24;