// Metro module 1769 (f1770). import { useCallback, useEffect, useRef } from "react"; import * as _Module1609 from "./Module1609"; import { useSharedValue } from "./Module1758"; import { logger } from "./Module1610"; import { useEvent } from "./Module1753"; let c1496_5, __initData, __initData2, _excluded; const getWebScrollableElement = function getWebScrollableElement(a0) { let r2 = a0 == null ? void 0 : a0.getScrollableNode(); if (r2 == null) { r2 = a0; } return r2; }; const isWeb = _Module1609.isWeb(); c1496_5 = "animatedRef is not initialized in useScrollViewOffset. Make sure to pass the animated ref to the scrollable component to get scroll offset updates."; const r22 = isWeb ? function useScrollViewOffsetWeb(a0, a1) { let callback; let c13215_0 = a0; let r6 = a1; const sharedValue = useSharedValue(0); if (a1 == null) { r6 = sharedValue; } const current = useRef(r6).current; const r18 = function _() { if (c13215_0) { const current4 = c13215_0.current; let r5 = current4 == null ? void 0 : current4.getScrollableNode(); if (r5 == null) { r5 = current4; } current.value = r5.scrollLeft === 0 ? r5.scrollTop : r5.scrollLeft; } }; r18.__closure = { animatedRef: a0, getWebScrollableElement, offset: current }; r18.__workletHash = 2244034762234; r18.__initData = __initData; callback = useCallback(r18, [a0, current]); useEffect(() => { if (c13215_0) { return c13215_0.observe((a0) => { if (a0) { const current4 = c13215_0.current; let r6 = current4 == null ? void 0 : current4.getScrollableNode(); if (r6 == null) { r6 = current4; } const current3 = r6; current3.addEventListener("scroll", callback); return () => { current3.removeEventListener("scroll", callback); }; } logger.warn(c1496_5); }); } }, [a0, callback]); return current; } : function useScrollViewOffsetNative(a0, a1) { let event; let c13216_0 = a0; let r9 = a1; const sharedValue = useSharedValue(0); if (a1 == null) { r9 = sharedValue; } const current2 = useRef(r9).current; const r19 = function _(a0) { current2.value = a0.contentOffset.x === 0 ? a0.contentOffset.y : a0.contentOffset.x; }; r19.__closure = { offset: current2 }; r19.__workletHash = 17316000082767; r19.__initData = __initData2; event = useEvent(r19, _excluded); useEffect(() => { if (c13216_0) { return c13216_0.observe((a0) => { if (a0) { event.workletEventHandler.registerForEvents(a0); return () => { event.workletEventHandler.unregisterFromEvents(a0); }; } logger.warn(c1496_5); }); } }, [a0, event]); return current2; }; __initData = { code: "function pnpm_useScrollViewOffsetTs1(){const{animatedRef,getWebScrollableElement,offset}=this.__closure;if(animatedRef){const element=getWebScrollableElement(animatedRef.current);offset.value=element.scrollLeft===0?element.scrollTop:element.scrollLeft;}}" }; __initData2 = { code: "function pnpm_useScrollViewOffsetTs2(event){const{offset}=this.__closure;offset.value=event.contentOffset.x===0?event.contentOffset.y:event.contentOffset.x;}" }; _excluded = ["onScroll", "onScrollBeginDrag", "onScrollEndDrag", "onMomentumScrollBegin", "onMomentumScrollEnd"]; export { r22 as useScrollViewOffset };