84 lines
4.0 KiB
JavaScript
84 lines
4.0 KiB
JavaScript
// Metro module 1837 (f1838).
|
|
import { useCallback } from "react";
|
|
import { Platform } from "react-native";
|
|
import * as _Module1838 from "./Module1838";
|
|
import * as _Module1606 from "./Module1606";
|
|
import { useAnimatedReaction } from "./Module1606";
|
|
import * as _Module1836 from "./Module1836";
|
|
const __initData = {
|
|
code: "function pnpm_indexTs1(target){const{contentOffsetY,IS_FABRIC,Platform,scrollTo,scrollViewRef}=this.__closure;if(contentOffsetY&&IS_FABRIC){contentOffsetY.value=target;}else if(Platform.OS===\"android\"){requestAnimationFrame(function(){scrollTo(scrollViewRef,0,target,false);});}else{scrollTo(scrollViewRef,0,target,false);}}"
|
|
};
|
|
const __initData2 = {
|
|
code: "function pnpm_indexTs2(){const{extraContentPadding}=this.__closure;return extraContentPadding.value;}"
|
|
};
|
|
const __initData3 = {
|
|
code: "function pnpm_indexTs3(current,previous){const{freeze,blankSpace,keyboardPadding,isScrollAtEnd,scroll,layout,size,inverted,keyboardLiftBehavior,shouldShiftContent,scrollToTarget}=this.__closure;if(freeze.value||previous===null){return;}const rawDelta=current-previous;if(rawDelta===0){return;}const previousTotal=Math.max(blankSpace.value,keyboardPadding.value+previous);const currentTotal=Math.max(blankSpace.value,keyboardPadding.value+current);const effectiveDelta=currentTotal-previousTotal;if(effectiveDelta===0){return;}const atEnd=isScrollAtEnd(scroll.value,layout.value.height,size.value.height,inverted);if(keyboardLiftBehavior===\"persistent\"&&effectiveDelta<0&&!atEnd){return;}if(!shouldShiftContent(keyboardLiftBehavior,atEnd)){return;}if(inverted){const target=Math.max(scroll.value-effectiveDelta,-currentTotal);scrollToTarget(target);}else{const maxScroll=Math.max(size.value.height-layout.value.height+currentTotal,0);const target=Math.min(scroll.value+effectiveDelta,maxScroll);scrollToTarget(target);}}"
|
|
};
|
|
export function useExtraContentPadding({ scrollViewRef, extraContentPadding, keyboardPadding, blankSpace, scroll, layout, size, contentOffsetY, inverted, keyboardLiftBehavior, freeze }) {
|
|
let callback;
|
|
const u = function u(a0) {
|
|
if (contentOffsetY && _Module1838.IS_FABRIC) {
|
|
contentOffsetY.value = a0;
|
|
} else {
|
|
requestAnimationFrame(() => {
|
|
_Module1606.scrollTo(scrollViewRef, 0, a0, false);
|
|
});
|
|
}
|
|
};
|
|
u.__closure = {
|
|
contentOffsetY,
|
|
IS_FABRIC: _Module1838.IS_FABRIC,
|
|
Platform,
|
|
scrollTo: _Module1606.scrollTo,
|
|
scrollViewRef
|
|
};
|
|
u.__workletHash = 2925167321956;
|
|
u.__initData = __initData;
|
|
callback = useCallback(u, [scrollViewRef, contentOffsetY]);
|
|
const v = () => extraContentPadding.value;
|
|
v.__closure = {
|
|
extraContentPadding
|
|
};
|
|
v.__workletHash = 6627638143453;
|
|
v.__initData = __initData2;
|
|
const f = function f(a0, a1) {
|
|
L11: {
|
|
if (!freeze.value && a1 !== null && a0 - a1 != 0) {
|
|
const r26 = Math.max(blankSpace.value, keyboardPadding.value + a1);
|
|
const r32 = Math.max(blankSpace.value, keyboardPadding.value + a0);
|
|
const r33 = r32 - r26;
|
|
if (r33 !== 0) {
|
|
const isScrollAtEnd = _Module1836.isScrollAtEnd(scroll.value, layout.value.height, size.value.height, inverted);
|
|
if (keyboardLiftBehavior === "persistent" && r33 < 0 && !isScrollAtEnd) {
|
|
break L11;
|
|
}
|
|
if (_Module1836.shouldShiftContent(keyboardLiftBehavior, isScrollAtEnd)) {
|
|
const r49 = Math;
|
|
if (inverted) {
|
|
callback(r49.max(scroll.value - r33, -r32));
|
|
} else {
|
|
callback(Math.min(scroll.value + r33, r49.max(size.value.height - layout.value.height + r32, 0)));
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
};
|
|
f.__closure = {
|
|
freeze,
|
|
blankSpace,
|
|
keyboardPadding,
|
|
isScrollAtEnd: _Module1836.isScrollAtEnd,
|
|
scroll,
|
|
layout,
|
|
size,
|
|
inverted,
|
|
keyboardLiftBehavior,
|
|
shouldShiftContent: _Module1836.shouldShiftContent,
|
|
scrollToTarget: callback
|
|
};
|
|
f.__workletHash = 14660760767987;
|
|
f.__initData = __initData3;
|
|
useAnimatedReaction(v, f, [inverted, keyboardLiftBehavior]);
|
|
}
|