105 lines
3.4 KiB
JavaScript
105 lines
3.4 KiB
JavaScript
// 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 };
|