Files
discord-decomp/modules/quests/native/QuestDock/QuestDockGestureDetector.tsx
T
2026-11-01 12:12:55 +02:00

284 lines
22 KiB
TypeScript

// Metro module 14207 (f14208).
import * as Module19 from "react";
import { useContext, useEffect, useMemo } from "react";
import { QuestDockMode } from "../../QuestConstants";
import { QUEST_DOCK_CLOSED_HEIGHT, QUEST_DOCK_COLLAPSED_HEIGHT, QUEST_DOCK_GESTURE_CLOSED_VERTICAL_DELTA_MINIMUM, QUEST_DOCK_GESTURE_CLOSED_Y_OFFSET_FACTOR, QUEST_DOCK_GESTURE_COLLAPSED_Y_OFFSET_FACTOR, QUEST_DOCK_GESTURE_EXPANDED_EXCESS_HEIGHT_FACTOR, QUEST_DOCK_GESTURE_MODE_CLOSED_TRANSITION_HEIGHT, QUEST_DOCK_GESTURE_MODE_TRANSITION_HEIGHT, QUEST_DOCK_GESTURE_MODE_TRANSITION_VELOCITY, QUEST_DOCK_GESTURE_TOUCH_MOVE_COUNT_THRESHOLD, QUEST_DOCK_GESTURE_VERTICAL_DELTA_MINIMUM, QUEST_DOCK_VERTICAL_EDGE_GUTTER_EXPANDED } from "./QuestDockConstants";
import { QuestDockGestureContext } from "./QuestDockGestureContext";
import useSafeAreaInsetsSharedValue_native from "../../../safe_area/useSafeAreaInsetsSharedValue.native";
import { QuestDockExternalCoordinationContext } from "./QuestDockExternalCoordinationContext";
import QuestDockContext from "./QuestDockContext";
import * as _ReanimatedRexport from "../../../reanimated/ReanimatedRexport";
import { useSharedValue, useAnimatedReaction } from "../../../reanimated/ReanimatedRexport";
import { useYouBarTotalHeight } from "../../../main_tabs_v2/native/you_bar/hooks/useYouBarTotalHeight";
import { useYouBarHorizontalMargin } from "../../../main_tabs_v2/native/you_bar/hooks/useYouBarMargins";
import * as _Module5273 from "../../../../_bundle/Module5273";
import { Gesture, GestureDetector } from "../../../../_bundle/Module5273";
import * as _QuestDockUtils from "./QuestDockUtils";
import * as _HapticUtils_native from "../../../haptics/HapticUtils.native";
let __initData, __initData2, __initData3, __initData4, __initData5, __initData6;
const useQuestDockSwipeGesture = function useQuestDockSwipeGesture() {
const context = useContext(QuestDockGestureContext);
const { questDockWrapperSpecs, activeQuestDockMode, windowDimensions, minExpandedContentHeight } = context;
const safeArea = useSafeAreaInsetsSharedValue_native();
const context2 = useContext(QuestDockExternalCoordinationContext);
const { restingQuestDockMode, setRestingQuestDockMode, questDockOffset } = context2;
const isVisibleToUser = useContext(QuestDockContext).isVisibleToUser;
const sharedValue = useSharedValue({
absoluteX: 0,
absoluteY: 0,
x: 0,
y: 0,
height: 0,
isDrawer: restingQuestDockMode.get() === QuestDockMode.EXPANDED,
active: false
});
const sharedValue2 = useSharedValue(0);
const sharedValue3 = useSharedValue(isVisibleToUser);
const youBarTotalHeight = useYouBarTotalHeight();
const youBarHorizontalMargin = useYouBarHorizontalMargin();
useEffect(() => {
sharedValue3.set(isVisibleToUser);
}, [isVisibleToUser, sharedValue3]);
const memo = useMemo(() => {
const shouldCancelWhenOutside = Gesture.Pan().manualActivation(false).maxPointers(1).shouldCancelWhenOutside(false);
const I = function I(a0) {
sharedValue2.set(0);
sharedValue.set({
absoluteX: a0.changedTouches[0].absoluteX,
absoluteY: a0.changedTouches[0].absoluteY,
x: questDockWrapperSpecs.get().x,
y: questDockWrapperSpecs.get().y,
height: questDockWrapperSpecs.get().height,
isDrawer: restingQuestDockMode.get() === QuestDockMode.EXPANDED,
active: false
});
};
I.__closure = {
touchMoveCount: sharedValue2,
initialGestureOffset: sharedValue,
questDockWrapperSpecs,
restingQuestDockMode,
QuestDockMode
};
I.__workletHash = 15649211210155;
I.__initData = __initData4;
const r29 = shouldCancelWhenOutside.onTouchesDown(I);
const A = function A(a0) {
if (a0.state === _Module5273.State.BEGAN && !sharedValue.get().active) {
sharedValue2.set(sharedValue2.get() + 1);
const r2 = sharedValue2.get() <= QUEST_DOCK_GESTURE_TOUCH_MOVE_COUNT_THRESHOLD;
const r34 = a0.changedTouches[0];
const { absoluteY, absoluteX } = r34;
const r14 = sharedValue.get().absoluteY - absoluteY;
const r42 = Math.abs(r14);
if (!(restingQuestDockMode.get() === QuestDockMode.EXPANDED && r2 && r14 >= 0) && (restingQuestDockMode.get() === QuestDockMode.COLLAPSED && r14 > QUEST_DOCK_GESTURE_VERTICAL_DELTA_MINIMUM || restingQuestDockMode.get() === QuestDockMode.EXPANDED && (r14 < -QUEST_DOCK_GESTURE_VERTICAL_DELTA_MINIMUM || r14 > QUEST_DOCK_GESTURE_VERTICAL_DELTA_MINIMUM) || restingQuestDockMode.get() === QuestDockMode.COLLAPSED && r14 < 0 && r42 > QUEST_DOCK_GESTURE_CLOSED_VERTICAL_DELTA_MINIMUM || restingQuestDockMode.get() === QuestDockMode.CLOSED && r14 > 0 && r14 > QUEST_DOCK_GESTURE_CLOSED_VERTICAL_DELTA_MINIMUM || restingQuestDockMode.get() === QuestDockMode.CLOSED && r14 < 0 && r42 > QUEST_DOCK_GESTURE_CLOSED_VERTICAL_DELTA_MINIMUM)) {
sharedValue.set({
absoluteX,
absoluteY,
x: questDockWrapperSpecs.get().x,
y: questDockWrapperSpecs.get().y,
height: questDockWrapperSpecs.get().height,
isDrawer: restingQuestDockMode.get() === QuestDockMode.EXPANDED,
active: true
});
}
}
};
A.__closure = {
State: _Module5273.State,
initialGestureOffset: sharedValue,
touchMoveCount: sharedValue2,
QUEST_DOCK_GESTURE_TOUCH_MOVE_COUNT_THRESHOLD,
restingQuestDockMode,
QuestDockMode,
QUEST_DOCK_GESTURE_VERTICAL_DELTA_MINIMUM,
QUEST_DOCK_GESTURE_CLOSED_VERTICAL_DELTA_MINIMUM,
questDockWrapperSpecs
};
A.__workletHash = 16451041821957;
A.__initData = __initData3;
const r40 = r29.onTouchesMove(A);
const r42 = function(a0) {
const prevDeltaY = a0.absoluteY - sharedValue.get().absoluteY;
const r29 = minExpandedContentHeight.get();
const r33 = sharedValue.get().height - prevDeltaY;
const r15 = r33 > r29 && activeQuestDockMode.get() === QuestDockMode.EXPANDED ? r29 + (r33 - r29) * QUEST_DOCK_GESTURE_EXPANDED_EXCESS_HEIGHT_FACTOR : r33;
if (r15 >= (minExpandedContentHeight.get() > 0 ? Math.min(minExpandedContentHeight.get(), QUEST_DOCK_GESTURE_MODE_TRANSITION_HEIGHT) : QUEST_DOCK_GESTURE_MODE_TRANSITION_HEIGHT)) {
if (!sharedValue.get().isDrawer) {
sharedValue.set({
...sharedValue.get(),
isDrawer: true
});
}
questDockWrapperSpecs.set({
...questDockWrapperSpecs.get(),
x: 0,
y: youBarTotalHeight > 0 ? youBarTotalHeight : 0,
width: _QuestDockUtils.getQuestDockExpandedWidth(windowDimensions.get().width, safeArea.get().left, safeArea.get().right),
height: Math.min(r15, windowDimensions.get().height),
prevDeltaY
});
activeQuestDockMode.set(QuestDockMode.EXPANDED);
} else if (r15 < QUEST_DOCK_GESTURE_MODE_CLOSED_TRANSITION_HEIGHT) {
if (activeQuestDockMode.get() === QuestDockMode.CLOSED) {
const r157 = (1 - Math.min(r15, 0) / QUEST_DOCK_CLOSED_HEIGHT) * (QUEST_DOCK_CLOSED_HEIGHT - r15);
questDockWrapperSpecs.set({
...questDockWrapperSpecs.get(),
x: 0,
y: 0 < r157 ? r157 * QUEST_DOCK_GESTURE_CLOSED_Y_OFFSET_FACTOR : 0,
width: _QuestDockUtils.getQuestDockClosedWidth(windowDimensions.get().width, safeArea.get().left, safeArea.get().right),
height: 0 < r157 ? QUEST_DOCK_CLOSED_HEIGHT : r15,
prevDeltaY
});
activeQuestDockMode.set(QuestDockMode.CLOSED);
}
} else {
const r62 = -1 * (r15 - QUEST_DOCK_COLLAPSED_HEIGHT) * (1 - r15 / QUEST_DOCK_GESTURE_MODE_TRANSITION_HEIGHT / QUEST_DOCK_GESTURE_COLLAPSED_Y_OFFSET_FACTOR);
questDockOffset.set(youBarTotalHeight > 0 ? -Math.min(r62, 0) : 0);
if (sharedValue.get().isDrawer) {
sharedValue.set({
...sharedValue.get(),
isDrawer: false
});
}
if (QUEST_DOCK_COLLAPSED_HEIGHT !== questDockWrapperSpecs.get().height && activeQuestDockMode.get() !== QuestDockMode.EXPANDED) {
_ReanimatedRexport.runOnJS(_HapticUtils_native.triggerHapticFeedback)(_HapticUtils_native.HapticFeedbackTypes.IMPACT_MEDIUM);
}
questDockWrapperSpecs.set({
...questDockWrapperSpecs.get(),
x: 0,
y: -1 * QUEST_DOCK_VERTICAL_EDGE_GUTTER_EXPANDED + (youBarTotalHeight > 0 ? Math.min(r62, 0) : r62),
width: _QuestDockUtils.getQuestDockCollapsedWidth(windowDimensions.get().width, youBarTotalHeight > 0 ? youBarHorizontalMargin : safeArea.get().left, youBarTotalHeight > 0 ? youBarHorizontalMargin : safeArea.get().right),
height: QUEST_DOCK_COLLAPSED_HEIGHT,
prevDeltaY
});
activeQuestDockMode.set(QuestDockMode.COLLAPSED);
}
};
r42.__closure = {
initialGestureOffset: sharedValue,
minExpandedContentHeight,
activeQuestDockMode,
QuestDockMode,
QUEST_DOCK_GESTURE_EXPANDED_EXCESS_HEIGHT_FACTOR,
QUEST_DOCK_GESTURE_MODE_TRANSITION_HEIGHT,
questDockWrapperSpecs,
youBarHeight: youBarTotalHeight,
getQuestDockExpandedWidth: _QuestDockUtils.getQuestDockExpandedWidth,
windowDimensions,
safeArea,
QUEST_DOCK_GESTURE_MODE_CLOSED_TRANSITION_HEIGHT,
QUEST_DOCK_CLOSED_HEIGHT,
QUEST_DOCK_GESTURE_CLOSED_Y_OFFSET_FACTOR,
getQuestDockClosedWidth: _QuestDockUtils.getQuestDockClosedWidth,
QUEST_DOCK_COLLAPSED_HEIGHT,
QUEST_DOCK_GESTURE_COLLAPSED_Y_OFFSET_FACTOR,
questDockOffset,
runOnJS: _ReanimatedRexport.runOnJS,
triggerHapticFeedback: _HapticUtils_native.triggerHapticFeedback,
HapticFeedbackTypes: _HapticUtils_native.HapticFeedbackTypes,
QUEST_DOCK_VERTICAL_EDGE_GUTTER_EXPANDED,
getQuestDockCollapsedWidth: _QuestDockUtils.getQuestDockCollapsedWidth,
youBarHorizontalMargin
};
r42.__workletHash = 3375221025411;
r42.__initData = __initData2;
const r79 = r40.onChange(r42);
const t = function t(a0) {
let r7, r8, SOFT_DISMISSED;
L25: {
const velocityY = a0.velocityY;
r7 = a0.y;
const r10 = Math.abs(velocityY);
r8 = Math.abs(r7);
if (!(r10 > QUEST_DOCK_GESTURE_MODE_TRANSITION_VELOCITY && velocityY < 0) && !(r10 < QUEST_DOCK_GESTURE_MODE_TRANSITION_VELOCITY && sharedValue.get().isDrawer)) {
L7: {
if (restingQuestDockMode.get() === QuestDockMode.COLLAPSED) {
if (!(velocityY > QUEST_DOCK_GESTURE_MODE_TRANSITION_VELOCITY) && !(r7 > QUEST_DOCK_GESTURE_MODE_CLOSED_TRANSITION_HEIGHT)) {
break L7;
}
SOFT_DISMISSED = QuestDockMode.SOFT_DISMISSED;
break L25;
}
}
if (!(velocityY > QUEST_DOCK_GESTURE_MODE_TRANSITION_VELOCITY && restingQuestDockMode.get() !== QuestDockMode.COLLAPSED) && !(velocityY < 0 && (r10 > QUEST_DOCK_GESTURE_MODE_TRANSITION_VELOCITY && restingQuestDockMode.get() === QuestDockMode.CLOSED))) {
if (restingQuestDockMode.get() !== QuestDockMode.COLLAPSED && restingQuestDockMode.get() !== QuestDockMode.CLOSED) {
SOFT_DISMISSED = QuestDockMode.COLLAPSED;
break L25;
}
SOFT_DISMISSED = QuestDockMode.RESET_TO_PREVIOUS;
break L25;
}
SOFT_DISMISSED = QuestDockMode.COLLAPSED;
} else {
SOFT_DISMISSED = restingQuestDockMode.get() === QuestDockMode.EXPANDED ? QuestDockMode.RESET_TO_PREVIOUS : QuestDockMode.EXPANDED;
}
}
if (restingQuestDockMode.get() === QuestDockMode.CLOSED && SOFT_DISMISSED !== QuestDockMode.EXPANDED && r7 < 0 && r8 > QUEST_DOCK_GESTURE_MODE_CLOSED_TRANSITION_HEIGHT) {
SOFT_DISMISSED = QuestDockMode.COLLAPSED;
}
_ReanimatedRexport.runOnJS(setRestingQuestDockMode)(SOFT_DISMISSED);
};
t.__closure = {
QUEST_DOCK_GESTURE_MODE_TRANSITION_VELOCITY,
restingQuestDockMode,
QuestDockMode,
initialGestureOffset: sharedValue,
QUEST_DOCK_GESTURE_MODE_CLOSED_TRANSITION_HEIGHT,
runOnJS: _ReanimatedRexport.runOnJS,
setRestingQuestDockMode
};
t.__workletHash = 10107537449160;
t.__initData = __initData;
return r79.onEnd(t);
}, [restingQuestDockMode, sharedValue, safeArea, sharedValue2, windowDimensions, questDockWrapperSpecs, setRestingQuestDockMode, activeQuestDockMode, minExpandedContentHeight, youBarTotalHeight, youBarHorizontalMargin, questDockOffset]);
const V = () => ({
mode: activeQuestDockMode.get(),
isVisible: sharedValue3.get()
});
V.__closure = {
activeQuestDockMode,
isVisibleSharedValue: sharedValue3
};
V.__workletHash = 13629688537260;
V.__initData = __initData5;
const F = function F(a0, a1) {
if (a0.mode !== a1?.mode && a0.mode !== QuestDockMode.CLOSED && a1?.mode !== QuestDockMode.CLOSED && a0.isVisible) {
_ReanimatedRexport.runOnJS(_HapticUtils_native.triggerHapticFeedback)(_HapticUtils_native.HapticFeedbackTypes.IMPACT_MEDIUM);
}
};
F.__closure = {
QuestDockMode,
runOnJS: _ReanimatedRexport.runOnJS,
triggerHapticFeedback: _HapticUtils_native.triggerHapticFeedback,
HapticFeedbackTypes: _HapticUtils_native.HapticFeedbackTypes
};
F.__workletHash = 17417080823410;
F.__initData = __initData6;
useAnimatedReaction(V, F);
return memo;
};
__initData = {
code: "function QuestDockGestureDetectorTsx1(event){const{QUEST_DOCK_GESTURE_MODE_TRANSITION_VELOCITY,restingQuestDockMode,QuestDockMode,initialGestureOffset,QUEST_DOCK_GESTURE_MODE_CLOSED_TRANSITION_HEIGHT,runOnJS,setRestingQuestDockMode}=this.__closure;const{velocityY:velocityY,y:y}=event;const absoluteVelocityY=Math.abs(velocityY);const absoluteY=Math.abs(y);let resultingDockMode;if(absoluteVelocityY>QUEST_DOCK_GESTURE_MODE_TRANSITION_VELOCITY&&velocityY<0){if(restingQuestDockMode.get()===QuestDockMode.EXPANDED){resultingDockMode=QuestDockMode.RESET_TO_PREVIOUS;}else{resultingDockMode=QuestDockMode.EXPANDED;}}else if(absoluteVelocityY<QUEST_DOCK_GESTURE_MODE_TRANSITION_VELOCITY&&initialGestureOffset.get().isDrawer){if(restingQuestDockMode.get()===QuestDockMode.EXPANDED){resultingDockMode=QuestDockMode.RESET_TO_PREVIOUS;}else{resultingDockMode=QuestDockMode.EXPANDED;}}else if(restingQuestDockMode.get()===QuestDockMode.COLLAPSED&&(velocityY>QUEST_DOCK_GESTURE_MODE_TRANSITION_VELOCITY||y>QUEST_DOCK_GESTURE_MODE_CLOSED_TRANSITION_HEIGHT)){resultingDockMode=QuestDockMode.SOFT_DISMISSED;}else if(velocityY>QUEST_DOCK_GESTURE_MODE_TRANSITION_VELOCITY&&restingQuestDockMode.get()!==QuestDockMode.COLLAPSED){resultingDockMode=QuestDockMode.COLLAPSED;}else if(velocityY<0&&absoluteVelocityY>QUEST_DOCK_GESTURE_MODE_TRANSITION_VELOCITY&&restingQuestDockMode.get()===QuestDockMode.CLOSED){resultingDockMode=QuestDockMode.COLLAPSED;}else{if(restingQuestDockMode.get()===QuestDockMode.COLLAPSED||restingQuestDockMode.get()===QuestDockMode.CLOSED){resultingDockMode=QuestDockMode.RESET_TO_PREVIOUS;}else{resultingDockMode=QuestDockMode.COLLAPSED;}}if(restingQuestDockMode.get()===QuestDockMode.CLOSED&&resultingDockMode!==QuestDockMode.EXPANDED&&y<0&&absoluteY>QUEST_DOCK_GESTURE_MODE_CLOSED_TRANSITION_HEIGHT){resultingDockMode=QuestDockMode.COLLAPSED;}runOnJS(setRestingQuestDockMode)(resultingDockMode);}"
};
__initData2 = {
code: "function QuestDockGestureDetectorTsx2(event){const{initialGestureOffset,minExpandedContentHeight,activeQuestDockMode,QuestDockMode,QUEST_DOCK_GESTURE_EXPANDED_EXCESS_HEIGHT_FACTOR,QUEST_DOCK_GESTURE_MODE_TRANSITION_HEIGHT,questDockWrapperSpecs,youBarHeight,getQuestDockExpandedWidth,windowDimensions,safeArea,QUEST_DOCK_GESTURE_MODE_CLOSED_TRANSITION_HEIGHT,QUEST_DOCK_CLOSED_HEIGHT,QUEST_DOCK_GESTURE_CLOSED_Y_OFFSET_FACTOR,getQuestDockClosedWidth,QUEST_DOCK_COLLAPSED_HEIGHT,QUEST_DOCK_GESTURE_COLLAPSED_Y_OFFSET_FACTOR,questDockOffset,runOnJS,triggerHapticFeedback,HapticFeedbackTypes,QUEST_DOCK_VERTICAL_EDGE_GUTTER_EXPANDED,getQuestDockCollapsedWidth,youBarHorizontalMargin}=this.__closure;const deltaY=event.absoluteY-initialGestureOffset.get().absoluteY;const expandedContentHeight=minExpandedContentHeight.get();let nextHeight=initialGestureOffset.get().height-deltaY;if(nextHeight>expandedContentHeight&&activeQuestDockMode.get()===QuestDockMode.EXPANDED){const overage=nextHeight-expandedContentHeight;const additionalHeight=overage*QUEST_DOCK_GESTURE_EXPANDED_EXCESS_HEIGHT_FACTOR;nextHeight=expandedContentHeight+additionalHeight;}const expandedModeTransitionHeight=minExpandedContentHeight.get()>0?Math.min(minExpandedContentHeight.get(),QUEST_DOCK_GESTURE_MODE_TRANSITION_HEIGHT):QUEST_DOCK_GESTURE_MODE_TRANSITION_HEIGHT;if(nextHeight>=expandedModeTransitionHeight){if(!initialGestureOffset.get().isDrawer){initialGestureOffset.set({...initialGestureOffset.get(),isDrawer:true});}questDockWrapperSpecs.set({...questDockWrapperSpecs.get(),x:0,y:youBarHeight>0?youBarHeight:0,width:getQuestDockExpandedWidth(windowDimensions.get().width,safeArea.get().left,safeArea.get().right),height:Math.min(nextHeight,windowDimensions.get().height),prevDeltaY:deltaY});activeQuestDockMode.set(QuestDockMode.EXPANDED);}else if(nextHeight<QUEST_DOCK_GESTURE_MODE_CLOSED_TRANSITION_HEIGHT){if(activeQuestDockMode.get()===QuestDockMode.CLOSED){const progress=1-Math.min(nextHeight,0)/QUEST_DOCK_CLOSED_HEIGHT;const newChange=progress*(QUEST_DOCK_CLOSED_HEIGHT-nextHeight);const nextY=newChange*QUEST_DOCK_GESTURE_CLOSED_Y_OFFSET_FACTOR;const isDraggingDown=newChange>0;questDockWrapperSpecs.set({...questDockWrapperSpecs.get(),x:0,y:isDraggingDown?nextY:0,width:getQuestDockClosedWidth(windowDimensions.get().width,safeArea.get().left,safeArea.get().right),height:isDraggingDown?QUEST_DOCK_CLOSED_HEIGHT:nextHeight,prevDeltaY:deltaY});activeQuestDockMode.set(QuestDockMode.CLOSED);}}else{const progress=nextHeight/QUEST_DOCK_GESTURE_MODE_TRANSITION_HEIGHT;const yOffset=(nextHeight-QUEST_DOCK_COLLAPSED_HEIGHT)*-1;const newChange=yOffset*(1-progress/QUEST_DOCK_GESTURE_COLLAPSED_Y_OFFSET_FACTOR);questDockOffset.set(youBarHeight>0?-Math.min(newChange,0):0);if(initialGestureOffset.get().isDrawer){initialGestureOffset.set({...initialGestureOffset.get(),isDrawer:false});}if(QUEST_DOCK_COLLAPSED_HEIGHT!==questDockWrapperSpecs.get().height&&activeQuestDockMode.get()!==QuestDockMode.EXPANDED){runOnJS(triggerHapticFeedback)(HapticFeedbackTypes.IMPACT_MEDIUM);}questDockWrapperSpecs.set({...questDockWrapperSpecs.get(),x:0,y:QUEST_DOCK_VERTICAL_EDGE_GUTTER_EXPANDED*-1+(youBarHeight>0?Math.min(newChange,0):newChange),width:getQuestDockCollapsedWidth(windowDimensions.get().width,youBarHeight>0?youBarHorizontalMargin:safeArea.get().left,youBarHeight>0?youBarHorizontalMargin:safeArea.get().right),height:QUEST_DOCK_COLLAPSED_HEIGHT,prevDeltaY:deltaY});activeQuestDockMode.set(QuestDockMode.COLLAPSED);}}"
};
__initData3 = {
code: "function QuestDockGestureDetectorTsx3(event){const{State,initialGestureOffset,touchMoveCount,QUEST_DOCK_GESTURE_TOUCH_MOVE_COUNT_THRESHOLD,restingQuestDockMode,QuestDockMode,QUEST_DOCK_GESTURE_VERTICAL_DELTA_MINIMUM,QUEST_DOCK_GESTURE_CLOSED_VERTICAL_DELTA_MINIMUM,questDockWrapperSpecs}=this.__closure;if(event.state!==State.BEGAN||initialGestureOffset.get().active){return;}touchMoveCount.set(touchMoveCount.get()+1);const isDragging=touchMoveCount.get()<=QUEST_DOCK_GESTURE_TOUCH_MOVE_COUNT_THRESHOLD;const{absoluteY:absoluteY,absoluteX:absoluteX}=event.changedTouches[0];const computed=initialGestureOffset.get().absoluteY-absoluteY;const computedAbsolute=Math.abs(computed);if(restingQuestDockMode.get()===QuestDockMode.EXPANDED&&isDragging&&computed>=0){return;}if(restingQuestDockMode.get()===QuestDockMode.COLLAPSED&&computed>QUEST_DOCK_GESTURE_VERTICAL_DELTA_MINIMUM||restingQuestDockMode.get()===QuestDockMode.EXPANDED&&(computed<-QUEST_DOCK_GESTURE_VERTICAL_DELTA_MINIMUM||computed>QUEST_DOCK_GESTURE_VERTICAL_DELTA_MINIMUM)||restingQuestDockMode.get()===QuestDockMode.COLLAPSED&&computed<0&&computedAbsolute>QUEST_DOCK_GESTURE_CLOSED_VERTICAL_DELTA_MINIMUM||restingQuestDockMode.get()===QuestDockMode.CLOSED&&computed>0&&computed>QUEST_DOCK_GESTURE_CLOSED_VERTICAL_DELTA_MINIMUM||restingQuestDockMode.get()===QuestDockMode.CLOSED&&computed<0&&computedAbsolute>QUEST_DOCK_GESTURE_CLOSED_VERTICAL_DELTA_MINIMUM){initialGestureOffset.set({absoluteX:absoluteX,absoluteY:absoluteY,x:questDockWrapperSpecs.get().x,y:questDockWrapperSpecs.get().y,height:questDockWrapperSpecs.get().height,isDrawer:restingQuestDockMode.get()===QuestDockMode.EXPANDED,active:true});}}"
};
__initData4 = {
code: "function QuestDockGestureDetectorTsx4(event){const{touchMoveCount,initialGestureOffset,questDockWrapperSpecs,restingQuestDockMode,QuestDockMode}=this.__closure;touchMoveCount.set(0);initialGestureOffset.set({absoluteX:event.changedTouches[0].absoluteX,absoluteY:event.changedTouches[0].absoluteY,x:questDockWrapperSpecs.get().x,y:questDockWrapperSpecs.get().y,height:questDockWrapperSpecs.get().height,isDrawer:restingQuestDockMode.get()===QuestDockMode.EXPANDED,active:false});}"
};
__initData5 = {
code: "function QuestDockGestureDetectorTsx5(){const{activeQuestDockMode,isVisibleSharedValue}=this.__closure;return{mode:activeQuestDockMode.get(),isVisible:isVisibleSharedValue.get()};}"
};
__initData6 = {
code: "function QuestDockGestureDetectorTsx6(current,previous){const{QuestDockMode,runOnJS,triggerHapticFeedback,HapticFeedbackTypes}=this.__closure;if(current.mode===(previous===null||previous===void 0?void 0:previous.mode)||current.mode===QuestDockMode.CLOSED||(previous===null||previous===void 0?void 0:previous.mode)===QuestDockMode.CLOSED||!current.isVisible){return;}runOnJS(triggerHapticFeedback)(HapticFeedbackTypes.IMPACT_MEDIUM);}"
};
const r44 = Module19.memo(function QuestDockGestureDetector(props) {
return <GestureDetector gesture={useQuestDockSwipeGesture()}>{props.children}</GestureDetector>;
});
export default r44;
export { useQuestDockSwipeGesture };