@tamagui/sheet 1.144.3 → 1.144.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/GestureDetectorWrapper.cjs +48 -0
- package/dist/cjs/GestureDetectorWrapper.js +29 -0
- package/dist/cjs/GestureDetectorWrapper.js.map +6 -0
- package/dist/cjs/GestureDetectorWrapper.native.js +53 -0
- package/dist/cjs/GestureDetectorWrapper.native.js.map +1 -0
- package/dist/cjs/GestureSheetContext.cjs +52 -0
- package/dist/cjs/GestureSheetContext.js +43 -0
- package/dist/cjs/GestureSheetContext.js.map +6 -0
- package/dist/cjs/GestureSheetContext.native.js +56 -0
- package/dist/cjs/GestureSheetContext.native.js.map +1 -0
- package/dist/cjs/SheetImplementationCustom.native.js.map +1 -1
- package/dist/cjs/gestureState.cjs +39 -0
- package/dist/cjs/gestureState.js +34 -0
- package/dist/cjs/gestureState.js.map +6 -0
- package/dist/cjs/gestureState.native.js +42 -0
- package/dist/cjs/gestureState.native.js.map +1 -0
- package/dist/cjs/setupGestureHandler.cjs +46 -0
- package/dist/cjs/setupGestureHandler.js +38 -0
- package/dist/cjs/setupGestureHandler.js.map +6 -0
- package/dist/cjs/setupGestureHandler.native.js +50 -0
- package/dist/cjs/setupGestureHandler.native.js.map +1 -0
- package/dist/cjs/useGestureHandlerPan.cjs +136 -0
- package/dist/cjs/useGestureHandlerPan.js +126 -0
- package/dist/cjs/useGestureHandlerPan.js.map +6 -0
- package/dist/cjs/useGestureHandlerPan.native.js +145 -0
- package/dist/cjs/useGestureHandlerPan.native.js.map +1 -0
- package/dist/cjs/useKeyboardControllerSheet.cjs +38 -0
- package/dist/cjs/useKeyboardControllerSheet.js +34 -0
- package/dist/cjs/useKeyboardControllerSheet.js.map +6 -0
- package/dist/cjs/useKeyboardControllerSheet.native.js +114 -0
- package/dist/cjs/useKeyboardControllerSheet.native.js.map +1 -0
- package/dist/cjs/useSheetScrollViewGestures.cjs +123 -0
- package/dist/cjs/useSheetScrollViewGestures.js +102 -0
- package/dist/cjs/useSheetScrollViewGestures.js.map +6 -0
- package/dist/cjs/useSheetScrollViewGestures.native.js +110 -0
- package/dist/cjs/useSheetScrollViewGestures.native.js.map +1 -0
- package/dist/esm/GestureDetectorWrapper.js +15 -0
- package/dist/esm/GestureDetectorWrapper.js.map +6 -0
- package/dist/esm/GestureDetectorWrapper.mjs +25 -0
- package/dist/esm/GestureDetectorWrapper.mjs.map +1 -0
- package/dist/esm/GestureDetectorWrapper.native.js +27 -0
- package/dist/esm/GestureDetectorWrapper.native.js.map +1 -0
- package/dist/esm/GestureSheetContext.js +28 -0
- package/dist/esm/GestureSheetContext.js.map +6 -0
- package/dist/esm/GestureSheetContext.mjs +28 -0
- package/dist/esm/GestureSheetContext.mjs.map +1 -0
- package/dist/esm/GestureSheetContext.native.js +29 -0
- package/dist/esm/GestureSheetContext.native.js.map +1 -0
- package/dist/esm/SheetImplementationCustom.native.js.map +1 -1
- package/dist/esm/gestureState.js +18 -0
- package/dist/esm/gestureState.js.map +6 -0
- package/dist/esm/gestureState.mjs +13 -0
- package/dist/esm/gestureState.mjs.map +1 -0
- package/dist/esm/gestureState.native.js +13 -0
- package/dist/esm/gestureState.native.js.map +1 -0
- package/dist/esm/setupGestureHandler.js +22 -0
- package/dist/esm/setupGestureHandler.js.map +6 -0
- package/dist/esm/setupGestureHandler.mjs +22 -0
- package/dist/esm/setupGestureHandler.mjs.map +1 -0
- package/dist/esm/setupGestureHandler.native.js +23 -0
- package/dist/esm/setupGestureHandler.native.js.map +1 -0
- package/dist/esm/useGestureHandlerPan.js +111 -0
- package/dist/esm/useGestureHandlerPan.js.map +6 -0
- package/dist/esm/useGestureHandlerPan.mjs +113 -0
- package/dist/esm/useGestureHandlerPan.mjs.map +1 -0
- package/dist/esm/useGestureHandlerPan.native.js +119 -0
- package/dist/esm/useGestureHandlerPan.native.js.map +1 -0
- package/dist/esm/useKeyboardControllerSheet.js +18 -0
- package/dist/esm/useKeyboardControllerSheet.js.map +6 -0
- package/dist/esm/useKeyboardControllerSheet.mjs +15 -0
- package/dist/esm/useKeyboardControllerSheet.mjs.map +1 -0
- package/dist/esm/useKeyboardControllerSheet.native.js +88 -0
- package/dist/esm/useKeyboardControllerSheet.native.js.map +1 -0
- package/dist/esm/useSheetScrollViewGestures.js +86 -0
- package/dist/esm/useSheetScrollViewGestures.js.map +6 -0
- package/dist/esm/useSheetScrollViewGestures.mjs +100 -0
- package/dist/esm/useSheetScrollViewGestures.mjs.map +1 -0
- package/dist/esm/useSheetScrollViewGestures.native.js +84 -0
- package/dist/esm/useSheetScrollViewGestures.native.js.map +1 -0
- package/dist/jsx/GestureDetectorWrapper.js +15 -0
- package/dist/jsx/GestureDetectorWrapper.js.map +6 -0
- package/dist/jsx/GestureDetectorWrapper.mjs +25 -0
- package/dist/jsx/GestureDetectorWrapper.mjs.map +1 -0
- package/dist/jsx/GestureDetectorWrapper.native.js +53 -0
- package/dist/jsx/GestureDetectorWrapper.native.js.map +1 -0
- package/dist/jsx/GestureSheetContext.js +28 -0
- package/dist/jsx/GestureSheetContext.js.map +6 -0
- package/dist/jsx/GestureSheetContext.mjs +28 -0
- package/dist/jsx/GestureSheetContext.mjs.map +1 -0
- package/dist/jsx/GestureSheetContext.native.js +56 -0
- package/dist/jsx/GestureSheetContext.native.js.map +1 -0
- package/dist/jsx/SheetImplementationCustom.native.js.map +1 -1
- package/dist/jsx/gestureState.js +18 -0
- package/dist/jsx/gestureState.js.map +6 -0
- package/dist/jsx/gestureState.mjs +13 -0
- package/dist/jsx/gestureState.mjs.map +1 -0
- package/dist/jsx/gestureState.native.js +42 -0
- package/dist/jsx/gestureState.native.js.map +1 -0
- package/dist/jsx/setupGestureHandler.js +22 -0
- package/dist/jsx/setupGestureHandler.js.map +6 -0
- package/dist/jsx/setupGestureHandler.mjs +22 -0
- package/dist/jsx/setupGestureHandler.mjs.map +1 -0
- package/dist/jsx/setupGestureHandler.native.js +50 -0
- package/dist/jsx/setupGestureHandler.native.js.map +1 -0
- package/dist/jsx/useGestureHandlerPan.js +111 -0
- package/dist/jsx/useGestureHandlerPan.js.map +6 -0
- package/dist/jsx/useGestureHandlerPan.mjs +113 -0
- package/dist/jsx/useGestureHandlerPan.mjs.map +1 -0
- package/dist/jsx/useGestureHandlerPan.native.js +145 -0
- package/dist/jsx/useGestureHandlerPan.native.js.map +1 -0
- package/dist/jsx/useKeyboardControllerSheet.js +18 -0
- package/dist/jsx/useKeyboardControllerSheet.js.map +6 -0
- package/dist/jsx/useKeyboardControllerSheet.mjs +15 -0
- package/dist/jsx/useKeyboardControllerSheet.mjs.map +1 -0
- package/dist/jsx/useKeyboardControllerSheet.native.js +114 -0
- package/dist/jsx/useKeyboardControllerSheet.native.js.map +1 -0
- package/dist/jsx/useSheetScrollViewGestures.js +86 -0
- package/dist/jsx/useSheetScrollViewGestures.js.map +6 -0
- package/dist/jsx/useSheetScrollViewGestures.mjs +100 -0
- package/dist/jsx/useSheetScrollViewGestures.mjs.map +1 -0
- package/dist/jsx/useSheetScrollViewGestures.native.js +110 -0
- package/dist/jsx/useSheetScrollViewGestures.native.js.map +1 -0
- package/package.json +19 -19
- package/types/GestureDetectorWrapper.d.ts.map +1 -0
- package/types/GestureSheetContext.d.ts.map +1 -0
- package/types/gestureState.d.ts.map +1 -0
- package/types/setupGestureHandler.d.ts.map +1 -0
- package/types/useGestureHandlerPan.d.ts.map +1 -0
- package/types/useKeyboardControllerSheet.d.ts.map +1 -0
- package/types/useKeyboardControllerSheet.native.d.ts.map +1 -0
- package/types/useSheetScrollViewGestures.d.ts.map +1 -0
- package/types/useSheetScrollViewGestures.native.d.ts.map +1 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["useCallback","useMemo","useRef","getGestureHandlerState","isGestureHandlerEnabled","AT_TOP_THRESHOLD","useGestureHandlerPan","config","positions","frameSize","setPosition","animateTo","stopSpring","scrollBridge","setIsDragging","getCurrentPosition","resisted","disableDrag","isShowingInnerSheet","setAnimatedPosition","scrollGestureRef","gestureHandlerEnabled","panGestureRef","gestureStateRef","startY","lastPanTranslationY","accumulatedOffset","prevTranslationY","scrollEngaged","frozenPositions","frozenMinY","panStarted","onStart","onEnd","closestPoint","animationOverride","_scrollBridge_setScrollEnabled","setParentDragging","setScrollEnabled","call","panGesture","Gesture","minY","gs","current","gesture","Pan","withRef","activeOffsetY","failOffsetX","shouldCancelWhenOutside","onBegin","pauseKeyboardHandler","pos","atTop","currentScrollY","y","initialPosition","onChange","event","translationY","isSwipingDown","deltaY","scrollY","currentPos","isCurrentlyAtTop","nodeIsScrolling","panHandles","hasScrollableContent","lockTo","newPosition","paneY","_scrollBridge_setScrollEnabled1","velocityY","scrollLockY","snapPositions","length","snapMinY","velocity","projectedEnd","minDist","Number","POSITIVE_INFINITY","i","dist","Math","abs","onFinalize","runOnJS","simultaneousWithExternalGesture"],"sources":["../../src/useGestureHandlerPan.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { useRef } from "react";
|
|
2
|
+
const noop = () => {
|
|
3
|
+
};
|
|
4
|
+
function useKeyboardControllerSheet(_options) {
|
|
5
|
+
const pauseKeyboardHandler = useRef(!1);
|
|
6
|
+
return {
|
|
7
|
+
keyboardControllerEnabled: !1,
|
|
8
|
+
keyboardHeight: 0,
|
|
9
|
+
isKeyboardVisible: !1,
|
|
10
|
+
dismissKeyboard: noop,
|
|
11
|
+
pauseKeyboardHandler,
|
|
12
|
+
flushPendingHide: noop
|
|
13
|
+
};
|
|
14
|
+
}
|
|
15
|
+
export {
|
|
16
|
+
useKeyboardControllerSheet
|
|
17
|
+
};
|
|
18
|
+
//# sourceMappingURL=useKeyboardControllerSheet.js.map
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../src/useKeyboardControllerSheet.ts"],
|
|
4
|
+
"mappings": "AAKA,SAAS,cAAc;AAMvB,MAAM,OAAO,MAAM;AAAC;AAEb,SAAS,2BACd,UAC+B;AAC/B,QAAM,uBAAuB,OAAO,EAAK;AACzC,SAAO;AAAA,IACL,2BAA2B;AAAA,IAC3B,gBAAgB;AAAA,IAChB,mBAAmB;AAAA,IACnB,iBAAiB;AAAA,IACjB;AAAA,IACA,kBAAkB;AAAA,EACpB;AACF;",
|
|
5
|
+
"names": []
|
|
6
|
+
}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { useRef } from "react";
|
|
2
|
+
const noop = () => {};
|
|
3
|
+
function useKeyboardControllerSheet(_options) {
|
|
4
|
+
const pauseKeyboardHandler = useRef(!1);
|
|
5
|
+
return {
|
|
6
|
+
keyboardControllerEnabled: !1,
|
|
7
|
+
keyboardHeight: 0,
|
|
8
|
+
isKeyboardVisible: !1,
|
|
9
|
+
dismissKeyboard: noop,
|
|
10
|
+
pauseKeyboardHandler,
|
|
11
|
+
flushPendingHide: noop
|
|
12
|
+
};
|
|
13
|
+
}
|
|
14
|
+
export { useKeyboardControllerSheet };
|
|
15
|
+
//# sourceMappingURL=useKeyboardControllerSheet.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["useRef","noop","useKeyboardControllerSheet","_options","pauseKeyboardHandler","keyboardControllerEnabled","keyboardHeight","isKeyboardVisible","dismissKeyboard","flushPendingHide"],"sources":["../../src/useKeyboardControllerSheet.ts"],"sourcesContent":[null],"mappings":"AAKA,SAASA,MAAA,QAAc;AAMvB,MAAMC,IAAA,GAAOA,CAAA,KAAM,CAAC;AAEb,SAASC,2BACdC,QAAA,EAC+B;EAC/B,MAAMC,oBAAA,GAAuBJ,MAAA,CAAO,EAAK;EACzC,OAAO;IACLK,yBAAA,EAA2B;IAC3BC,cAAA,EAAgB;IAChBC,iBAAA,EAAmB;IACnBC,eAAA,EAAiBP,IAAA;IACjBG,oBAAA;IACAK,gBAAA,EAAkBR;EACpB;AACF","ignoreList":[]}
|
|
@@ -0,0 +1,88 @@
|
|
|
1
|
+
import { useCallback, useEffect, useRef, useState } from "react";
|
|
2
|
+
import { Keyboard, Platform } from "react-native";
|
|
3
|
+
var isKeyboardControllerEnabled = function () {
|
|
4
|
+
return !1;
|
|
5
|
+
},
|
|
6
|
+
getKeyboardControllerState = function () {
|
|
7
|
+
return {};
|
|
8
|
+
};
|
|
9
|
+
try {
|
|
10
|
+
var nativeModule = require("@tamagui/native");
|
|
11
|
+
isKeyboardControllerEnabled = nativeModule.isKeyboardControllerEnabled, getKeyboardControllerState = nativeModule.getKeyboardControllerState;
|
|
12
|
+
} catch {}
|
|
13
|
+
function useKeyboardControllerSheet(options) {
|
|
14
|
+
var {
|
|
15
|
+
enabled
|
|
16
|
+
} = options,
|
|
17
|
+
[keyboardHeight, setKeyboardHeight] = useState(0),
|
|
18
|
+
[isKeyboardVisible, setIsKeyboardVisible] = useState(!1),
|
|
19
|
+
keyboardControllerEnabled = isKeyboardControllerEnabled(),
|
|
20
|
+
pauseKeyboardHandler = useRef(!1),
|
|
21
|
+
pendingHide = useRef(!1),
|
|
22
|
+
dismissKeyboard = useCallback(function () {
|
|
23
|
+
if (Keyboard.dismiss(), keyboardControllerEnabled) try {
|
|
24
|
+
var _KeyboardController_dismiss,
|
|
25
|
+
{
|
|
26
|
+
KeyboardController
|
|
27
|
+
} = getKeyboardControllerState();
|
|
28
|
+
KeyboardController == null || (_KeyboardController_dismiss = KeyboardController.dismiss) === null || _KeyboardController_dismiss === void 0 || _KeyboardController_dismiss.call(KeyboardController);
|
|
29
|
+
} catch {}
|
|
30
|
+
},
|
|
31
|
+
// ignore errors from keyboard-controller
|
|
32
|
+
[keyboardControllerEnabled]),
|
|
33
|
+
flushPendingHide = useCallback(function () {
|
|
34
|
+
pendingHide.current && (pendingHide.current = !1, setIsKeyboardVisible(!1), setKeyboardHeight(0));
|
|
35
|
+
}, []);
|
|
36
|
+
return useEffect(function () {
|
|
37
|
+
if (!(!enabled || !keyboardControllerEnabled)) {
|
|
38
|
+
var {
|
|
39
|
+
KeyboardEvents
|
|
40
|
+
} = getKeyboardControllerState();
|
|
41
|
+
if (KeyboardEvents?.addListener) {
|
|
42
|
+
var showSub = KeyboardEvents.addListener("keyboardWillShow", function (e) {
|
|
43
|
+
var _e_height,
|
|
44
|
+
height = (_e_height = e?.height) !== null && _e_height !== void 0 ? _e_height : 0;
|
|
45
|
+
height > 0 && setKeyboardHeight(height), setIsKeyboardVisible(!0);
|
|
46
|
+
}),
|
|
47
|
+
hideSub = KeyboardEvents.addListener("keyboardWillHide", function () {
|
|
48
|
+
if (pauseKeyboardHandler.current) {
|
|
49
|
+
pendingHide.current = !0;
|
|
50
|
+
return;
|
|
51
|
+
}
|
|
52
|
+
setIsKeyboardVisible(!1), setKeyboardHeight(0);
|
|
53
|
+
});
|
|
54
|
+
return function () {
|
|
55
|
+
var _showSub_remove, _hideSub_remove;
|
|
56
|
+
showSub == null || (_showSub_remove = showSub.remove) === null || _showSub_remove === void 0 || _showSub_remove.call(showSub), hideSub == null || (_hideSub_remove = hideSub.remove) === null || _hideSub_remove === void 0 || _hideSub_remove.call(hideSub);
|
|
57
|
+
};
|
|
58
|
+
}
|
|
59
|
+
}
|
|
60
|
+
}, [enabled, keyboardControllerEnabled]), useEffect(function () {
|
|
61
|
+
if (enabled && !keyboardControllerEnabled) {
|
|
62
|
+
var showEvent = Platform.OS === "ios" ? "keyboardWillShow" : "keyboardDidShow",
|
|
63
|
+
hideEvent = Platform.OS === "ios" ? "keyboardWillHide" : "keyboardDidHide",
|
|
64
|
+
showListener = Keyboard.addListener(showEvent, function (e) {
|
|
65
|
+
setKeyboardHeight(e.endCoordinates.height), setIsKeyboardVisible(!0);
|
|
66
|
+
}),
|
|
67
|
+
hideListener = Keyboard.addListener(hideEvent, function () {
|
|
68
|
+
if (pauseKeyboardHandler.current) {
|
|
69
|
+
pendingHide.current = !0;
|
|
70
|
+
return;
|
|
71
|
+
}
|
|
72
|
+
setIsKeyboardVisible(!1), setKeyboardHeight(0);
|
|
73
|
+
});
|
|
74
|
+
return function () {
|
|
75
|
+
showListener.remove(), hideListener.remove();
|
|
76
|
+
};
|
|
77
|
+
}
|
|
78
|
+
}, [enabled, keyboardControllerEnabled]), {
|
|
79
|
+
keyboardControllerEnabled,
|
|
80
|
+
keyboardHeight,
|
|
81
|
+
isKeyboardVisible,
|
|
82
|
+
dismissKeyboard,
|
|
83
|
+
pauseKeyboardHandler,
|
|
84
|
+
flushPendingHide
|
|
85
|
+
};
|
|
86
|
+
}
|
|
87
|
+
export { useKeyboardControllerSheet };
|
|
88
|
+
//# sourceMappingURL=useKeyboardControllerSheet.native.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["useCallback","useEffect","useRef","useState","Keyboard","Platform","isKeyboardControllerEnabled","getKeyboardControllerState","nativeModule","require","useKeyboardControllerSheet","options","enabled","keyboardHeight","setKeyboardHeight","isKeyboardVisible","setIsKeyboardVisible","keyboardControllerEnabled","pauseKeyboardHandler","pendingHide","dismissKeyboard","dismiss","_KeyboardController_dismiss","KeyboardController","call","flushPendingHide","current","KeyboardEvents","addListener","showSub","e","_e_height","height","hideSub","_showSub_remove","_hideSub_remove","remove","showEvent","OS","hideEvent","showListener","endCoordinates","hideListener"],"sources":["../../src/useKeyboardControllerSheet.native.ts"],"sourcesContent":[null],"mappings":"AASI,SAASA,WAAA,EAAaC,SAAA,EAAWC,MAAA,EAAQC,QAAA,QAAgB;AAC7D,SAASC,QAAA,EAAUC,QAAA,QAAgB;AAEnC,IAAIC,2BAAA,GAA8B,SAAAA,CAAA,EAAW;IACzC,OAAO;EACX;EACIC,0BAAA,GAA6B,SAAAA,CAAA,EAAW;IACxC,OAAO,CAAC;EACZ;AACA,IAAI;EACA,IAAIC,YAAA,GAAeC,OAAA,CAAQ,iBAAiB;EAC5CH,2BAAA,GAA8BE,YAAA,CAAaF,2BAAA,EAC3CC,0BAAA,GAA6BC,YAAA,CAAaD,0BAAA;AAC9C,QAAY,CAAC;AAEN,SAASG,2BAA2BC,OAAA,EAAS;EAChD,IAAI;MAAEC;IAAQ,IAAID,OAAA;IACd,CAACE,cAAA,EAAgBC,iBAAiB,IAAIX,QAAA,CAAS,CAAC;IAChD,CAACY,iBAAA,EAAmBC,oBAAoB,IAAIb,QAAA,CAAS,EAAK;IAC1Dc,yBAAA,GAA4BX,2BAAA,CAA4B;IAIxDY,oBAAA,GAAuBhB,MAAA,CAAO,EAAK;IAEnCiB,WAAA,GAAcjB,MAAA,CAAO,EAAK;IAE1BkB,eAAA,GAAkBpB,WAAA,CAAY,YAAW;MAEzC,IADAI,QAAA,CAASiB,OAAA,CAAQ,GACbJ,yBAAA,EACA,IAAI;QACA,IAAIK,2BAAA;UACA;YAAEC;UAAmB,IAAIhB,0BAAA,CAA2B;QACxDgB,kBAAA,IAAuB,SAAkDD,2BAAA,GAA8BC,kBAAA,CAAmBF,OAAA,MAAa,QAAQC,2BAAA,KAAgC,UAAkBA,2BAAA,CAA4BE,IAAA,CAAKD,kBAAkB;MACxP,QAAY,CAAC;IAErB;IAAA;IACA,CACIN,yBAAA,CACH;IAGGQ,gBAAA,GAAmBzB,WAAA,CAAY,YAAW;MACtCmB,WAAA,CAAYO,OAAA,KACZP,WAAA,CAAYO,OAAA,GAAU,IACtBV,oBAAA,CAAqB,EAAK,GAC1BF,iBAAA,CAAkB,CAAC;IAE3B,GAAG,EAAE;EAEL,OAAAb,SAAA,CAAU,YAAW;IACjB,IAAI,GAACW,OAAA,IAAW,CAACK,yBAAA,GACjB;MAAA,IAAI;QAAEU;MAAe,IAAIpB,0BAAA,CAA2B;MACpD,IAAsEoB,cAAA,EAAeC,WAAA,EACrF;QAAA,IAAIC,OAAA,GAAUF,cAAA,CAAeC,WAAA,CAAY,oBAAoB,UAASE,CAAA,EAAG;YACrE,IAAIC,SAAA;cACAC,MAAA,IAAUD,SAAA,GAAkDD,CAAA,EAAEE,MAAA,MAAY,QAAQD,SAAA,KAAc,SAASA,SAAA,GAAY;YACrHC,MAAA,GAAS,KACTlB,iBAAA,CAAkBkB,MAAM,GAE5BhB,oBAAA,CAAqB,EAAI;UAC7B,CAAC;UACGiB,OAAA,GAAUN,cAAA,CAAeC,WAAA,CAAY,oBAAoB,YAAW;YACpE,IAAIV,oBAAA,CAAqBQ,OAAA,EAAS;cAC9BP,WAAA,CAAYO,OAAA,GAAU;cACtB;YACJ;YACAV,oBAAA,CAAqB,EAAK,GAC1BF,iBAAA,CAAkB,CAAC;UACvB,CAAC;QACD,OAAO,YAAW;UACd,IAAIoB,eAAA,EAAiBC,eAAA;UACrBN,OAAA,IAAY,SAAuCK,eAAA,GAAkBL,OAAA,CAAQO,MAAA,MAAY,QAAQF,eAAA,KAAoB,UAAkBA,eAAA,CAAgBV,IAAA,CAAKK,OAAO,GACnKI,OAAA,IAAY,SAAuCE,eAAA,GAAkBF,OAAA,CAAQG,MAAA,MAAY,QAAQD,eAAA,KAAoB,UAAkBA,eAAA,CAAgBX,IAAA,CAAKS,OAAO;QACvK;MAAA;IAAA;EACJ,GAAG,CACCrB,OAAA,EACAK,yBAAA,CACH,GAEDhB,SAAA,CAAU,YAAW;IACjB,IAAKW,OAAA,IACD,CAAAK,yBAAA,EACJ;MAAA,IAAIoB,SAAA,GAAYhC,QAAA,CAASiC,EAAA,KAAO,QAAQ,qBAAqB;QACzDC,SAAA,GAAYlC,QAAA,CAASiC,EAAA,KAAO,QAAQ,qBAAqB;QACzDE,YAAA,GAAepC,QAAA,CAASwB,WAAA,CAAYS,SAAA,EAAW,UAASP,CAAA,EAAG;UAC3DhB,iBAAA,CAAkBgB,CAAA,CAAEW,cAAA,CAAeT,MAAM,GACzChB,oBAAA,CAAqB,EAAI;QAC7B,CAAC;QACG0B,YAAA,GAAetC,QAAA,CAASwB,WAAA,CAAYW,SAAA,EAAW,YAAW;UAC1D,IAAIrB,oBAAA,CAAqBQ,OAAA,EAAS;YAC9BP,WAAA,CAAYO,OAAA,GAAU;YACtB;UACJ;UACAV,oBAAA,CAAqB,EAAK,GAC1BF,iBAAA,CAAkB,CAAC;QACvB,CAAC;MACD,OAAO,YAAW;QACd0B,YAAA,CAAaJ,MAAA,CAAO,GACpBM,YAAA,CAAaN,MAAA,CAAO;MACxB;IAAA;EACJ,GAAG,CACCxB,OAAA,EACAK,yBAAA,CACH,GACM;IACHA,yBAAA;IACAJ,cAAA;IACAE,iBAAA;IACAK,eAAA;IACAF,oBAAA;IACAO;EACJ;AACJ","ignoreList":[]}
|
|
@@ -0,0 +1,86 @@
|
|
|
1
|
+
import { useEffect, useRef } from "react";
|
|
2
|
+
function useSheetScrollViewGestures({
|
|
3
|
+
scrollRef,
|
|
4
|
+
scrollBridge,
|
|
5
|
+
hasScrollableContent
|
|
6
|
+
}) {
|
|
7
|
+
const state = useRef({
|
|
8
|
+
startY: 0,
|
|
9
|
+
lastY: 0,
|
|
10
|
+
owner: "none",
|
|
11
|
+
panDragOffset: 0,
|
|
12
|
+
dys: [],
|
|
13
|
+
scrollYAtGestureStart: 0
|
|
14
|
+
});
|
|
15
|
+
return useEffect(() => {
|
|
16
|
+
if (!scrollRef.current) return;
|
|
17
|
+
const controller = new AbortController(), node = scrollRef.current?.getScrollableNode();
|
|
18
|
+
if (!node) return;
|
|
19
|
+
node.style.overscrollBehavior = "contain";
|
|
20
|
+
let originalOverflow = "";
|
|
21
|
+
const disableScroll = () => {
|
|
22
|
+
node.style.overflowY !== "hidden" && (originalOverflow = node.style.overflowY, node.style.overflowY = "hidden");
|
|
23
|
+
}, enableScroll = () => {
|
|
24
|
+
node.style.overflowY = originalOverflow;
|
|
25
|
+
}, handleTouchStart = (e) => {
|
|
26
|
+
const touch = e.touches[0];
|
|
27
|
+
if (!touch) return;
|
|
28
|
+
const currentScrollY = node.scrollTop;
|
|
29
|
+
state.current = {
|
|
30
|
+
startY: touch.pageY,
|
|
31
|
+
lastY: touch.pageY,
|
|
32
|
+
owner: "none",
|
|
33
|
+
panDragOffset: 0,
|
|
34
|
+
dys: [],
|
|
35
|
+
scrollYAtGestureStart: currentScrollY
|
|
36
|
+
}, scrollBridge.scrollStartY = touch.pageY;
|
|
37
|
+
}, handleTouchMove = (e) => {
|
|
38
|
+
const touch = e.touches[0];
|
|
39
|
+
if (!touch) return;
|
|
40
|
+
const { current: s } = state, pageY = touch.pageY, dy = pageY - s.lastY;
|
|
41
|
+
if (s.lastY = pageY, dy === 0) return;
|
|
42
|
+
const isDraggingDown = dy > 0, currentScrollY = node.scrollTop, isPaneAtTop = scrollBridge.paneY <= scrollBridge.paneMinY + 5;
|
|
43
|
+
scrollBridge.y = currentScrollY;
|
|
44
|
+
let shouldPanOwn = !1;
|
|
45
|
+
isPaneAtTop ? currentScrollY <= 0 && isDraggingDown && (shouldPanOwn = !0) : shouldPanOwn = !0;
|
|
46
|
+
const newOwner = shouldPanOwn ? "pan" : "scroll";
|
|
47
|
+
if (newOwner !== s.owner && (newOwner === "pan" ? (s.panDragOffset = 0, s.dys = [], scrollBridge.setParentDragging(!0), disableScroll()) : (scrollBridge.setParentDragging(!1), scrollBridge.scrollLock = !1, enableScroll()), s.owner = newOwner), s.owner === "pan")
|
|
48
|
+
e.cancelable && e.preventDefault(), s.panDragOffset += dy, scrollBridge.drag(s.panDragOffset), s.dys.push(dy), s.dys.length > 100 && (s.dys = s.dys.slice(-10));
|
|
49
|
+
else if (s.owner === "scroll") {
|
|
50
|
+
const scrollDelta = -dy, maxScrollY = node.scrollHeight - node.clientHeight, newScrollY = Math.max(0, Math.min(maxScrollY, currentScrollY + scrollDelta));
|
|
51
|
+
newScrollY !== currentScrollY && (node.scrollTop = newScrollY, scrollBridge.y = newScrollY);
|
|
52
|
+
}
|
|
53
|
+
}, handleTouchEnd = () => {
|
|
54
|
+
const { current: s } = state;
|
|
55
|
+
if (s.owner === "pan") {
|
|
56
|
+
scrollBridge.setParentDragging(!1);
|
|
57
|
+
let vy = 0;
|
|
58
|
+
if (s.dys.length) {
|
|
59
|
+
const recentDys = s.dys.slice(-10);
|
|
60
|
+
vy = recentDys.reduce((a, b) => a + b, 0) / recentDys.length * 0.04;
|
|
61
|
+
}
|
|
62
|
+
scrollBridge.release({ dragAt: s.panDragOffset, vy });
|
|
63
|
+
}
|
|
64
|
+
enableScroll(), s.owner = "none", s.panDragOffset = 0, s.dys = [];
|
|
65
|
+
};
|
|
66
|
+
return node.addEventListener("touchstart", handleTouchStart, {
|
|
67
|
+
signal: controller.signal,
|
|
68
|
+
passive: !0
|
|
69
|
+
}), node.addEventListener("touchmove", handleTouchMove, {
|
|
70
|
+
signal: controller.signal,
|
|
71
|
+
passive: !1
|
|
72
|
+
}), node.addEventListener("touchend", handleTouchEnd, {
|
|
73
|
+
signal: controller.signal,
|
|
74
|
+
passive: !0
|
|
75
|
+
}), node.addEventListener("touchcancel", handleTouchEnd, {
|
|
76
|
+
signal: controller.signal,
|
|
77
|
+
passive: !0
|
|
78
|
+
}), () => {
|
|
79
|
+
enableScroll(), controller.abort();
|
|
80
|
+
};
|
|
81
|
+
}, [scrollRef, scrollBridge, hasScrollableContent]), {};
|
|
82
|
+
}
|
|
83
|
+
export {
|
|
84
|
+
useSheetScrollViewGestures
|
|
85
|
+
};
|
|
86
|
+
//# sourceMappingURL=useSheetScrollViewGestures.js.map
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../src/useSheetScrollViewGestures.ts"],
|
|
4
|
+
"mappings": "AAAA,SAAS,WAAW,cAAc;AAuB3B,SAAS,2BAA2B;AAAA,EACzC;AAAA,EACA;AAAA,EACA;AACF,GAAoC;AAClC,QAAM,QAAQ,OAAqB;AAAA,IACjC,QAAQ;AAAA,IACR,OAAO;AAAA,IACP,OAAO;AAAA,IACP,eAAe;AAAA,IACf,KAAK,CAAC;AAAA,IACN,uBAAuB;AAAA,EACzB,CAAC;AAED,mBAAU,MAAM;AACd,QAAI,CAAC,UAAU,QAAS;AAExB,UAAM,aAAa,IAAI,gBAAgB,GACjC,OAAO,UAAU,SAAS,kBAAkB;AAElD,QAAI,CAAC,KAAM;AAEX,SAAK,MAAM,qBAAqB;AAGhC,QAAI,mBAAmB;AAEvB,UAAM,gBAAgB,MAAM;AAC1B,MAAI,KAAK,MAAM,cAAc,aAC3B,mBAAmB,KAAK,MAAM,WAC9B,KAAK,MAAM,YAAY;AAAA,IAE3B,GAEM,eAAe,MAAM;AACzB,WAAK,MAAM,YAAY;AAAA,IACzB,GAEM,mBAAmB,CAAC,MAAkB;AAC1C,YAAM,QAAQ,EAAE,QAAQ,CAAC;AACzB,UAAI,CAAC,MAAO;AAEZ,YAAM,iBAAiB,KAAK;AAE5B,YAAM,UAAU;AAAA,QACd,QAAQ,MAAM;AAAA,QACd,OAAO,MAAM;AAAA,QACb,OAAO;AAAA,QACP,eAAe;AAAA,QACf,KAAK,CAAC;AAAA,QACN,uBAAuB;AAAA,MACzB,GAEA,aAAa,eAAe,MAAM;AAAA,IACpC,GAEM,kBAAkB,CAAC,MAAkB;AACzC,YAAM,QAAQ,EAAE,QAAQ,CAAC;AACzB,UAAI,CAAC,MAAO;AAEZ,YAAM,EAAE,SAAS,EAAE,IAAI,OACjB,QAAQ,MAAM,OACd,KAAK,QAAQ,EAAE;AAGrB,UAFA,EAAE,QAAQ,OAEN,OAAO,EAAG;AAEd,YAAM,iBAAiB,KAAK,GACtB,iBAAiB,KAAK,WACtB,cAAc,aAAa,SAAS,aAAa,WAAW;AAElE,mBAAa,IAAI;AAMjB,UAAI,eAAe;AAEnB,MAAK,cAGM,kBAAkB,KAAK,mBAEhC,eAAe,MAHf,eAAe;AAMjB,YAAM,WAAyB,eAAe,QAAQ;AAiBtD,UAdI,aAAa,EAAE,UACb,aAAa,SACf,EAAE,gBAAgB,GAClB,EAAE,MAAM,CAAC,GACT,aAAa,kBAAkB,EAAI,GACnC,cAAc,MAEd,aAAa,kBAAkB,EAAK,GACpC,aAAa,aAAa,IAC1B,aAAa,IAEf,EAAE,QAAQ,WAGR,EAAE,UAAU;AACd,QAAI,EAAE,cAAY,EAAE,eAAe,GAEnC,EAAE,iBAAiB,IACnB,aAAa,KAAK,EAAE,aAAa,GAEjC,EAAE,IAAI,KAAK,EAAE,GACT,EAAE,IAAI,SAAS,QAAK,EAAE,MAAM,EAAE,IAAI,MAAM,GAAG;AAAA,eACtC,EAAE,UAAU,UAAU;AAE/B,cAAM,cAAc,CAAC,IACf,aAAa,KAAK,eAAe,KAAK,cACtC,aAAa,KAAK,IAAI,GAAG,KAAK,IAAI,YAAY,iBAAiB,WAAW,CAAC;AACjF,QAAI,eAAe,mBACjB,KAAK,YAAY,YACjB,aAAa,IAAI;AAAA,MAErB;AAAA,IACF,GAEM,iBAAiB,MAAM;AAC3B,YAAM,EAAE,SAAS,EAAE,IAAI;AAEvB,UAAI,EAAE,UAAU,OAAO;AACrB,qBAAa,kBAAkB,EAAK;AAEpC,YAAI,KAAK;AACT,YAAI,EAAE,IAAI,QAAQ;AAChB,gBAAM,YAAY,EAAE,IAAI,MAAM,GAAG;AAEjC,eADa,UAAU,OAAO,CAAC,GAAG,MAAM,IAAI,GAAG,CAAC,IACnC,UAAU,SAAU;AAAA,QACnC;AAEA,qBAAa,QAAQ,EAAE,QAAQ,EAAE,eAAe,GAAG,CAAC;AAAA,MACtD;AAEA,mBAAa,GACb,EAAE,QAAQ,QACV,EAAE,gBAAgB,GAClB,EAAE,MAAM,CAAC;AAAA,IACX;AAEA,gBAAK,iBAAiB,cAAc,kBAAkB;AAAA,MACpD,QAAQ,WAAW;AAAA,MACnB,SAAS;AAAA,IACX,CAAC,GACD,KAAK,iBAAiB,aAAa,iBAAiB;AAAA,MAClD,QAAQ,WAAW;AAAA,MACnB,SAAS;AAAA,IACX,CAAC,GACD,KAAK,iBAAiB,YAAY,gBAAgB;AAAA,MAChD,QAAQ,WAAW;AAAA,MACnB,SAAS;AAAA,IACX,CAAC,GACD,KAAK,iBAAiB,eAAe,gBAAgB;AAAA,MACnD,QAAQ,WAAW;AAAA,MACnB,SAAS;AAAA,IACX,CAAC,GAEM,MAAM;AACX,mBAAa,GACb,WAAW,MAAM;AAAA,IACnB;AAAA,EACF,GAAG,CAAC,WAAW,cAAc,oBAAoB,CAAC,GAE3C,CAAC;AACV;",
|
|
5
|
+
"names": []
|
|
6
|
+
}
|
|
@@ -0,0 +1,100 @@
|
|
|
1
|
+
import { useEffect, useRef } from "react";
|
|
2
|
+
function useSheetScrollViewGestures({
|
|
3
|
+
scrollRef,
|
|
4
|
+
scrollBridge,
|
|
5
|
+
hasScrollableContent
|
|
6
|
+
}) {
|
|
7
|
+
const state = useRef({
|
|
8
|
+
startY: 0,
|
|
9
|
+
lastY: 0,
|
|
10
|
+
owner: "none",
|
|
11
|
+
panDragOffset: 0,
|
|
12
|
+
dys: [],
|
|
13
|
+
scrollYAtGestureStart: 0
|
|
14
|
+
});
|
|
15
|
+
return useEffect(() => {
|
|
16
|
+
if (!scrollRef.current) return;
|
|
17
|
+
const controller = new AbortController(),
|
|
18
|
+
node = scrollRef.current?.getScrollableNode();
|
|
19
|
+
if (!node) return;
|
|
20
|
+
node.style.overscrollBehavior = "contain";
|
|
21
|
+
let originalOverflow = "";
|
|
22
|
+
const disableScroll = () => {
|
|
23
|
+
node.style.overflowY !== "hidden" && (originalOverflow = node.style.overflowY, node.style.overflowY = "hidden");
|
|
24
|
+
},
|
|
25
|
+
enableScroll = () => {
|
|
26
|
+
node.style.overflowY = originalOverflow;
|
|
27
|
+
},
|
|
28
|
+
handleTouchStart = e => {
|
|
29
|
+
const touch = e.touches[0];
|
|
30
|
+
if (!touch) return;
|
|
31
|
+
const currentScrollY = node.scrollTop;
|
|
32
|
+
state.current = {
|
|
33
|
+
startY: touch.pageY,
|
|
34
|
+
lastY: touch.pageY,
|
|
35
|
+
owner: "none",
|
|
36
|
+
panDragOffset: 0,
|
|
37
|
+
dys: [],
|
|
38
|
+
scrollYAtGestureStart: currentScrollY
|
|
39
|
+
}, scrollBridge.scrollStartY = touch.pageY;
|
|
40
|
+
},
|
|
41
|
+
handleTouchMove = e => {
|
|
42
|
+
const touch = e.touches[0];
|
|
43
|
+
if (!touch) return;
|
|
44
|
+
const {
|
|
45
|
+
current: s
|
|
46
|
+
} = state,
|
|
47
|
+
pageY = touch.pageY,
|
|
48
|
+
dy = pageY - s.lastY;
|
|
49
|
+
if (s.lastY = pageY, dy === 0) return;
|
|
50
|
+
const isDraggingDown = dy > 0,
|
|
51
|
+
currentScrollY = node.scrollTop,
|
|
52
|
+
isPaneAtTop = scrollBridge.paneY <= scrollBridge.paneMinY + 5;
|
|
53
|
+
scrollBridge.y = currentScrollY;
|
|
54
|
+
let shouldPanOwn = !1;
|
|
55
|
+
isPaneAtTop ? currentScrollY <= 0 && isDraggingDown && (shouldPanOwn = !0) : shouldPanOwn = !0;
|
|
56
|
+
const newOwner = shouldPanOwn ? "pan" : "scroll";
|
|
57
|
+
if (newOwner !== s.owner && (newOwner === "pan" ? (s.panDragOffset = 0, s.dys = [], scrollBridge.setParentDragging(!0), disableScroll()) : (scrollBridge.setParentDragging(!1), scrollBridge.scrollLock = !1, enableScroll()), s.owner = newOwner), s.owner === "pan") e.cancelable && e.preventDefault(), s.panDragOffset += dy, scrollBridge.drag(s.panDragOffset), s.dys.push(dy), s.dys.length > 100 && (s.dys = s.dys.slice(-10));else if (s.owner === "scroll") {
|
|
58
|
+
const scrollDelta = -dy,
|
|
59
|
+
maxScrollY = node.scrollHeight - node.clientHeight,
|
|
60
|
+
newScrollY = Math.max(0, Math.min(maxScrollY, currentScrollY + scrollDelta));
|
|
61
|
+
newScrollY !== currentScrollY && (node.scrollTop = newScrollY, scrollBridge.y = newScrollY);
|
|
62
|
+
}
|
|
63
|
+
},
|
|
64
|
+
handleTouchEnd = () => {
|
|
65
|
+
const {
|
|
66
|
+
current: s
|
|
67
|
+
} = state;
|
|
68
|
+
if (s.owner === "pan") {
|
|
69
|
+
scrollBridge.setParentDragging(!1);
|
|
70
|
+
let vy = 0;
|
|
71
|
+
if (s.dys.length) {
|
|
72
|
+
const recentDys = s.dys.slice(-10);
|
|
73
|
+
vy = recentDys.reduce((a, b) => a + b, 0) / recentDys.length * 0.04;
|
|
74
|
+
}
|
|
75
|
+
scrollBridge.release({
|
|
76
|
+
dragAt: s.panDragOffset,
|
|
77
|
+
vy
|
|
78
|
+
});
|
|
79
|
+
}
|
|
80
|
+
enableScroll(), s.owner = "none", s.panDragOffset = 0, s.dys = [];
|
|
81
|
+
};
|
|
82
|
+
return node.addEventListener("touchstart", handleTouchStart, {
|
|
83
|
+
signal: controller.signal,
|
|
84
|
+
passive: !0
|
|
85
|
+
}), node.addEventListener("touchmove", handleTouchMove, {
|
|
86
|
+
signal: controller.signal,
|
|
87
|
+
passive: !1
|
|
88
|
+
}), node.addEventListener("touchend", handleTouchEnd, {
|
|
89
|
+
signal: controller.signal,
|
|
90
|
+
passive: !0
|
|
91
|
+
}), node.addEventListener("touchcancel", handleTouchEnd, {
|
|
92
|
+
signal: controller.signal,
|
|
93
|
+
passive: !0
|
|
94
|
+
}), () => {
|
|
95
|
+
enableScroll(), controller.abort();
|
|
96
|
+
};
|
|
97
|
+
}, [scrollRef, scrollBridge, hasScrollableContent]), {};
|
|
98
|
+
}
|
|
99
|
+
export { useSheetScrollViewGestures };
|
|
100
|
+
//# sourceMappingURL=useSheetScrollViewGestures.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["useEffect","useRef","useSheetScrollViewGestures","scrollRef","scrollBridge","hasScrollableContent","state","startY","lastY","owner","panDragOffset","dys","scrollYAtGestureStart","current","controller","AbortController","node","getScrollableNode","style","overscrollBehavior","originalOverflow","disableScroll","overflowY","enableScroll","handleTouchStart","e","touch","touches","currentScrollY","scrollTop","pageY","scrollStartY","handleTouchMove","s","dy","isDraggingDown","isPaneAtTop","paneY","paneMinY","y","shouldPanOwn","newOwner","setParentDragging","scrollLock","cancelable","preventDefault","drag","push","length","slice","scrollDelta","maxScrollY","scrollHeight","clientHeight","newScrollY","Math","max","min","handleTouchEnd","vy","recentDys","reduce","a","b","release","dragAt","addEventListener","signal","passive","abort"],"sources":["../../src/useSheetScrollViewGestures.ts"],"sourcesContent":[null],"mappings":"AAAA,SAASA,SAAA,EAAWC,MAAA,QAAc;AAuB3B,SAASC,2BAA2B;EACzCC,SAAA;EACAC,YAAA;EACAC;AACF,GAAoC;EAClC,MAAMC,KAAA,GAAQL,MAAA,CAAqB;IACjCM,MAAA,EAAQ;IACRC,KAAA,EAAO;IACPC,KAAA,EAAO;IACPC,aAAA,EAAe;IACfC,GAAA,EAAK,EAAC;IACNC,qBAAA,EAAuB;EACzB,CAAC;EAED,OAAAZ,SAAA,CAAU,MAAM;IACd,IAAI,CAACG,SAAA,CAAUU,OAAA,EAAS;IAExB,MAAMC,UAAA,GAAa,IAAIC,eAAA,CAAgB;MACjCC,IAAA,GAAOb,SAAA,CAAUU,OAAA,EAASI,iBAAA,CAAkB;IAElD,IAAI,CAACD,IAAA,EAAM;IAEXA,IAAA,CAAKE,KAAA,CAAMC,kBAAA,GAAqB;IAGhC,IAAIC,gBAAA,GAAmB;IAEvB,MAAMC,aAAA,GAAgBA,CAAA,KAAM;QACtBL,IAAA,CAAKE,KAAA,CAAMI,SAAA,KAAc,aAC3BF,gBAAA,GAAmBJ,IAAA,CAAKE,KAAA,CAAMI,SAAA,EAC9BN,IAAA,CAAKE,KAAA,CAAMI,SAAA,GAAY;MAE3B;MAEMC,YAAA,GAAeA,CAAA,KAAM;QACzBP,IAAA,CAAKE,KAAA,CAAMI,SAAA,GAAYF,gBAAA;MACzB;MAEMI,gBAAA,GAAoBC,CAAA,IAAkB;QAC1C,MAAMC,KAAA,GAAQD,CAAA,CAAEE,OAAA,CAAQ,CAAC;QACzB,IAAI,CAACD,KAAA,EAAO;QAEZ,MAAME,cAAA,GAAiBZ,IAAA,CAAKa,SAAA;QAE5BvB,KAAA,CAAMO,OAAA,GAAU;UACdN,MAAA,EAAQmB,KAAA,CAAMI,KAAA;UACdtB,KAAA,EAAOkB,KAAA,CAAMI,KAAA;UACbrB,KAAA,EAAO;UACPC,aAAA,EAAe;UACfC,GAAA,EAAK,EAAC;UACNC,qBAAA,EAAuBgB;QACzB,GAEAxB,YAAA,CAAa2B,YAAA,GAAeL,KAAA,CAAMI,KAAA;MACpC;MAEME,eAAA,GAAmBP,CAAA,IAAkB;QACzC,MAAMC,KAAA,GAAQD,CAAA,CAAEE,OAAA,CAAQ,CAAC;QACzB,IAAI,CAACD,KAAA,EAAO;QAEZ,MAAM;YAAEb,OAAA,EAASoB;UAAE,IAAI3B,KAAA;UACjBwB,KAAA,GAAQJ,KAAA,CAAMI,KAAA;UACdI,EAAA,GAAKJ,KAAA,GAAQG,CAAA,CAAEzB,KAAA;QAGrB,IAFAyB,CAAA,CAAEzB,KAAA,GAAQsB,KAAA,EAENI,EAAA,KAAO,GAAG;QAEd,MAAMC,cAAA,GAAiBD,EAAA,GAAK;UACtBN,cAAA,GAAiBZ,IAAA,CAAKa,SAAA;UACtBO,WAAA,GAAchC,YAAA,CAAaiC,KAAA,IAASjC,YAAA,CAAakC,QAAA,GAAW;QAElElC,YAAA,CAAamC,CAAA,GAAIX,cAAA;QAMjB,IAAIY,YAAA,GAAe;QAEdJ,WAAA,GAGMR,cAAA,IAAkB,KAAKO,cAAA,KAEhCK,YAAA,GAAe,MAHfA,YAAA,GAAe;QAMjB,MAAMC,QAAA,GAAyBD,YAAA,GAAe,QAAQ;QAiBtD,IAdIC,QAAA,KAAaR,CAAA,CAAExB,KAAA,KACbgC,QAAA,KAAa,SACfR,CAAA,CAAEvB,aAAA,GAAgB,GAClBuB,CAAA,CAAEtB,GAAA,GAAM,EAAC,EACTP,YAAA,CAAasC,iBAAA,CAAkB,EAAI,GACnCrB,aAAA,CAAc,MAEdjB,YAAA,CAAasC,iBAAA,CAAkB,EAAK,GACpCtC,YAAA,CAAauC,UAAA,GAAa,IAC1BpB,YAAA,CAAa,IAEfU,CAAA,CAAExB,KAAA,GAAQgC,QAAA,GAGRR,CAAA,CAAExB,KAAA,KAAU,OACVgB,CAAA,CAAEmB,UAAA,IAAYnB,CAAA,CAAEoB,cAAA,CAAe,GAEnCZ,CAAA,CAAEvB,aAAA,IAAiBwB,EAAA,EACnB9B,YAAA,CAAa0C,IAAA,CAAKb,CAAA,CAAEvB,aAAa,GAEjCuB,CAAA,CAAEtB,GAAA,CAAIoC,IAAA,CAAKb,EAAE,GACTD,CAAA,CAAEtB,GAAA,CAAIqC,MAAA,GAAS,QAAKf,CAAA,CAAEtB,GAAA,GAAMsB,CAAA,CAAEtB,GAAA,CAAIsC,KAAA,CAAM,GAAG,YACtChB,CAAA,CAAExB,KAAA,KAAU,UAAU;UAE/B,MAAMyC,WAAA,GAAc,CAAChB,EAAA;YACfiB,UAAA,GAAanC,IAAA,CAAKoC,YAAA,GAAepC,IAAA,CAAKqC,YAAA;YACtCC,UAAA,GAAaC,IAAA,CAAKC,GAAA,CAAI,GAAGD,IAAA,CAAKE,GAAA,CAAIN,UAAA,EAAYvB,cAAA,GAAiBsB,WAAW,CAAC;UAC7EI,UAAA,KAAe1B,cAAA,KACjBZ,IAAA,CAAKa,SAAA,GAAYyB,UAAA,EACjBlD,YAAA,CAAamC,CAAA,GAAIe,UAAA;QAErB;MACF;MAEMI,cAAA,GAAiBA,CAAA,KAAM;QAC3B,MAAM;UAAE7C,OAAA,EAASoB;QAAE,IAAI3B,KAAA;QAEvB,IAAI2B,CAAA,CAAExB,KAAA,KAAU,OAAO;UACrBL,YAAA,CAAasC,iBAAA,CAAkB,EAAK;UAEpC,IAAIiB,EAAA,GAAK;UACT,IAAI1B,CAAA,CAAEtB,GAAA,CAAIqC,MAAA,EAAQ;YAChB,MAAMY,SAAA,GAAY3B,CAAA,CAAEtB,GAAA,CAAIsC,KAAA,CAAM,GAAG;YAEjCU,EAAA,GADaC,SAAA,CAAUC,MAAA,CAAO,CAACC,CAAA,EAAGC,CAAA,KAAMD,CAAA,GAAIC,CAAA,EAAG,CAAC,IACnCH,SAAA,CAAUZ,MAAA,GAAU;UACnC;UAEA5C,YAAA,CAAa4D,OAAA,CAAQ;YAAEC,MAAA,EAAQhC,CAAA,CAAEvB,aAAA;YAAeiD;UAAG,CAAC;QACtD;QAEApC,YAAA,CAAa,GACbU,CAAA,CAAExB,KAAA,GAAQ,QACVwB,CAAA,CAAEvB,aAAA,GAAgB,GAClBuB,CAAA,CAAEtB,GAAA,GAAM,EAAC;MACX;IAEA,OAAAK,IAAA,CAAKkD,gBAAA,CAAiB,cAAc1C,gBAAA,EAAkB;MACpD2C,MAAA,EAAQrD,UAAA,CAAWqD,MAAA;MACnBC,OAAA,EAAS;IACX,CAAC,GACDpD,IAAA,CAAKkD,gBAAA,CAAiB,aAAalC,eAAA,EAAiB;MAClDmC,MAAA,EAAQrD,UAAA,CAAWqD,MAAA;MACnBC,OAAA,EAAS;IACX,CAAC,GACDpD,IAAA,CAAKkD,gBAAA,CAAiB,YAAYR,cAAA,EAAgB;MAChDS,MAAA,EAAQrD,UAAA,CAAWqD,MAAA;MACnBC,OAAA,EAAS;IACX,CAAC,GACDpD,IAAA,CAAKkD,gBAAA,CAAiB,eAAeR,cAAA,EAAgB;MACnDS,MAAA,EAAQrD,UAAA,CAAWqD,MAAA;MACnBC,OAAA,EAAS;IACX,CAAC,GAEM,MAAM;MACX7C,YAAA,CAAa,GACbT,UAAA,CAAWuD,KAAA,CAAM;IACnB;EACF,GAAG,CAAClE,SAAA,EAAWC,YAAA,EAAcC,oBAAoB,CAAC,GAE3C,CAAC;AACV","ignoreList":[]}
|
|
@@ -0,0 +1,84 @@
|
|
|
1
|
+
import { useRef } from "react";
|
|
2
|
+
function useSheetScrollViewGestures(param) {
|
|
3
|
+
var {
|
|
4
|
+
scrollBridge,
|
|
5
|
+
hasScrollableContent,
|
|
6
|
+
scrollEnabled,
|
|
7
|
+
setScrollEnabled
|
|
8
|
+
} = param,
|
|
9
|
+
state = useRef({
|
|
10
|
+
lastPageY: 0,
|
|
11
|
+
dragAt: 0,
|
|
12
|
+
dys: [],
|
|
13
|
+
isScrolling: !1,
|
|
14
|
+
isDraggingScrollArea: !1,
|
|
15
|
+
scrollEngaged: !1,
|
|
16
|
+
prevScrollY: 0,
|
|
17
|
+
handoffOccurred: !1,
|
|
18
|
+
handoffDragOffset: 0
|
|
19
|
+
}),
|
|
20
|
+
release = function () {
|
|
21
|
+
var s = state.current;
|
|
22
|
+
if (s.isDraggingScrollArea) {
|
|
23
|
+
s.isDraggingScrollArea = !1, scrollBridge.scrollStartY = -1, scrollBridge.scrollLock = !1, s.isScrolling = !1, s.scrollEngaged = !1, s.prevScrollY = 0, s.handoffOccurred = !1, s.handoffDragOffset = 0, setScrollEnabled(!0);
|
|
24
|
+
var vy = 0;
|
|
25
|
+
if (s.dys.length) {
|
|
26
|
+
var recentDys = s.dys.slice(-10),
|
|
27
|
+
dist = recentDys.reduce(function (a, b) {
|
|
28
|
+
return a + b;
|
|
29
|
+
}, 0);
|
|
30
|
+
vy = dist / recentDys.length * 0.04;
|
|
31
|
+
}
|
|
32
|
+
s.dys = [], scrollBridge.release({
|
|
33
|
+
dragAt: s.dragAt,
|
|
34
|
+
vy
|
|
35
|
+
});
|
|
36
|
+
}
|
|
37
|
+
},
|
|
38
|
+
onStartShouldSetResponder = function () {
|
|
39
|
+
var s = state.current;
|
|
40
|
+
return scrollBridge.scrollStartY = -1, s.isDraggingScrollArea = !0, s.scrollEngaged = scrollBridge.y > 0, s.prevScrollY = scrollBridge.y, s.handoffOccurred = !1, s.handoffDragOffset = 0, !1;
|
|
41
|
+
},
|
|
42
|
+
onMoveShouldSetResponder = function (e) {
|
|
43
|
+
if (!scrollEnabled) return !1;
|
|
44
|
+
var s = state.current,
|
|
45
|
+
{
|
|
46
|
+
pageY
|
|
47
|
+
} = e.nativeEvent;
|
|
48
|
+
return s.lastPageY === 0 ? (s.lastPageY = pageY, !1) : Math.abs(pageY - s.lastPageY) > 10;
|
|
49
|
+
},
|
|
50
|
+
onResponderMove = function (e) {
|
|
51
|
+
var s = state.current,
|
|
52
|
+
{
|
|
53
|
+
pageY
|
|
54
|
+
} = e.nativeEvent;
|
|
55
|
+
!s.isScrolling && scrollBridge.scrollStartY === -1 && (scrollBridge.scrollStartY = pageY, s.lastPageY = pageY);
|
|
56
|
+
var dragAt = pageY - scrollBridge.scrollStartY,
|
|
57
|
+
dy = pageY - s.lastPageY;
|
|
58
|
+
s.lastPageY = pageY;
|
|
59
|
+
var isDraggingDown = dy > 0,
|
|
60
|
+
isPaneAtTop = scrollBridge.paneY <= scrollBridge.paneMinY + 5,
|
|
61
|
+
currentScrollY = scrollBridge.y;
|
|
62
|
+
currentScrollY > 0 && (s.scrollEngaged = !0);
|
|
63
|
+
var wasScrolledNowAtZero = s.scrollEngaged && s.prevScrollY > 0 && currentScrollY <= 0;
|
|
64
|
+
wasScrolledNowAtZero && !s.handoffOccurred && (s.handoffOccurred = !0, s.handoffDragOffset = 0), s.prevScrollY = currentScrollY;
|
|
65
|
+
var panHandles = !1;
|
|
66
|
+
if (!isPaneAtTop) panHandles = isDraggingDown ? currentScrollY <= 0 || !hasScrollableContent : !0;else if (isDraggingDown) currentScrollY > 0 && hasScrollableContent && !s.handoffOccurred ? panHandles = !1 : panHandles = s.handoffOccurred || wasScrolledNowAtZero || currentScrollY <= 0;else if (panHandles = !hasScrollableContent, !panHandles) {
|
|
67
|
+
s.isScrolling = !0, scrollBridge.scrollLock = !0, setScrollEnabled(!0);
|
|
68
|
+
return;
|
|
69
|
+
}
|
|
70
|
+
if (panHandles) {
|
|
71
|
+
setScrollEnabled(!1);
|
|
72
|
+
var effectiveDragAt = dragAt;
|
|
73
|
+
s.handoffOccurred && (s.handoffDragOffset += dy, effectiveDragAt = s.handoffDragOffset), scrollBridge.drag(effectiveDragAt), s.dragAt = effectiveDragAt, s.dys.push(dy), s.dys.length > 100 && (s.dys = s.dys.slice(-10));
|
|
74
|
+
} else setScrollEnabled(!0);
|
|
75
|
+
};
|
|
76
|
+
return {
|
|
77
|
+
onResponderRelease: release,
|
|
78
|
+
onStartShouldSetResponder,
|
|
79
|
+
onMoveShouldSetResponder,
|
|
80
|
+
onResponderMove
|
|
81
|
+
};
|
|
82
|
+
}
|
|
83
|
+
export { useSheetScrollViewGestures };
|
|
84
|
+
//# sourceMappingURL=useSheetScrollViewGestures.native.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["useRef","useSheetScrollViewGestures","param","scrollBridge","hasScrollableContent","scrollEnabled","setScrollEnabled","state","lastPageY","dragAt","dys","isScrolling","isDraggingScrollArea","scrollEngaged","prevScrollY","handoffOccurred","handoffDragOffset","release","s","current","scrollStartY","scrollLock","vy","length","recentDys","slice","dist","reduce","a","b","onStartShouldSetResponder","y","onMoveShouldSetResponder","e","pageY","nativeEvent","Math","abs","onResponderMove","dy","isDraggingDown","isPaneAtTop","paneY","paneMinY","currentScrollY","wasScrolledNowAtZero","panHandles","effectiveDragAt","drag","push","onResponderRelease"],"sources":["../../src/useSheetScrollViewGestures.native.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { View } from "react-native-web";
|
|
2
|
+
import { getGestureHandlerState, isGestureHandlerEnabled } from "./gestureState";
|
|
3
|
+
import { jsx } from "react/jsx-runtime";
|
|
4
|
+
function GestureDetectorWrapper({
|
|
5
|
+
gesture,
|
|
6
|
+
children,
|
|
7
|
+
style
|
|
8
|
+
}) {
|
|
9
|
+
const { GestureDetector } = getGestureHandlerState();
|
|
10
|
+
return isGestureHandlerEnabled() && GestureDetector && gesture ? /* @__PURE__ */ jsx(GestureDetector, { gesture, children: /* @__PURE__ */ jsx(View, { style, collapsable: !1, children }) }) : /* @__PURE__ */ jsx(View, { style, children });
|
|
11
|
+
}
|
|
12
|
+
export {
|
|
13
|
+
GestureDetectorWrapper
|
|
14
|
+
};
|
|
15
|
+
//# sourceMappingURL=GestureDetectorWrapper.js.map
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../src/GestureDetectorWrapper.tsx"],
|
|
4
|
+
"mappings": "AACA,SAAS,YAA4B;AACrC,SAAS,wBAAwB,+BAA+B;AA6BxD;AAjBD,SAAS,uBAAuB;AAAA,EACrC;AAAA,EACA;AAAA,EACA;AACF,GAAgC;AAC9B,QAAM,EAAE,gBAAgB,IAAI,uBAAuB;AAMnD,SALgB,wBAAwB,KAKzB,mBAAmB,UAK9B,oBAAC,mBAAgB,SACf,8BAAC,QAAK,OAAc,aAAa,IAC9B,UACH,GACF,IAKG,oBAAC,QAAK,OAAe,UAAS;AACvC;",
|
|
5
|
+
"names": []
|
|
6
|
+
}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import { View } from "react-native-web";
|
|
2
|
+
import { getGestureHandlerState, isGestureHandlerEnabled } from "./gestureState.mjs";
|
|
3
|
+
import { jsx } from "react/jsx-runtime";
|
|
4
|
+
function GestureDetectorWrapper({
|
|
5
|
+
gesture,
|
|
6
|
+
children,
|
|
7
|
+
style
|
|
8
|
+
}) {
|
|
9
|
+
const {
|
|
10
|
+
GestureDetector
|
|
11
|
+
} = getGestureHandlerState();
|
|
12
|
+
return isGestureHandlerEnabled() && GestureDetector && gesture ? /* @__PURE__ */jsx(GestureDetector, {
|
|
13
|
+
gesture,
|
|
14
|
+
children: /* @__PURE__ */jsx(View, {
|
|
15
|
+
style,
|
|
16
|
+
collapsable: !1,
|
|
17
|
+
children
|
|
18
|
+
})
|
|
19
|
+
}) : /* @__PURE__ */jsx(View, {
|
|
20
|
+
style,
|
|
21
|
+
children
|
|
22
|
+
});
|
|
23
|
+
}
|
|
24
|
+
export { GestureDetectorWrapper };
|
|
25
|
+
//# sourceMappingURL=GestureDetectorWrapper.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["View","getGestureHandlerState","isGestureHandlerEnabled","jsx","GestureDetectorWrapper","gesture","children","style","GestureDetector","collapsable"],"sources":["../../src/GestureDetectorWrapper.tsx"],"sourcesContent":[null],"mappings":"AACA,SAASA,IAAA,QAA4B;AACrC,SAASC,sBAAA,EAAwBC,uBAAA,QAA+B;AA6BxD,SAAAC,GAAA;AAjBD,SAASC,uBAAuB;EACrCC,OAAA;EACAC,QAAA;EACAC;AACF,GAAgC;EAC9B,MAAM;IAAEC;EAAgB,IAAIP,sBAAA,CAAuB;EAMnD,OALgBC,uBAAA,CAAwB,KAKzBM,eAAA,IAAmBH,OAAA,GAK9B,eAAAF,GAAA,CAACK,eAAA;IAAgBH,OAAA;IACfC,QAAA,iBAAAH,GAAA,CAACH,IAAA;MAAKO,KAAA;MAAcE,WAAA,EAAa;MAC9BH;IAAA,CACH;EAAA,CACF,IAKG,eAAAH,GAAA,CAACH,IAAA;IAAKO,KAAA;IAAeD;EAAA,CAAS;AACvC","ignoreList":[]}
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var __defProp = Object.defineProperty;
|
|
4
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
5
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
6
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
7
|
+
var __export = (target, all) => {
|
|
8
|
+
for (var name in all) __defProp(target, name, {
|
|
9
|
+
get: all[name],
|
|
10
|
+
enumerable: !0
|
|
11
|
+
});
|
|
12
|
+
},
|
|
13
|
+
__copyProps = (to, from, except, desc) => {
|
|
14
|
+
if (from && typeof from == "object" || typeof from == "function") for (let key of __getOwnPropNames(from)) !__hasOwnProp.call(to, key) && key !== except && __defProp(to, key, {
|
|
15
|
+
get: () => from[key],
|
|
16
|
+
enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable
|
|
17
|
+
});
|
|
18
|
+
return to;
|
|
19
|
+
};
|
|
20
|
+
var __toCommonJS = mod => __copyProps(__defProp({}, "__esModule", {
|
|
21
|
+
value: !0
|
|
22
|
+
}), mod);
|
|
23
|
+
var GestureDetectorWrapper_exports = {};
|
|
24
|
+
__export(GestureDetectorWrapper_exports, {
|
|
25
|
+
GestureDetectorWrapper: () => GestureDetectorWrapper
|
|
26
|
+
});
|
|
27
|
+
module.exports = __toCommonJS(GestureDetectorWrapper_exports);
|
|
28
|
+
var import_jsx_runtime = require("react/jsx-runtime"),
|
|
29
|
+
import_react_native = require("react-native"),
|
|
30
|
+
import_gestureState = require("./gestureState.native.js");
|
|
31
|
+
function GestureDetectorWrapper(param) {
|
|
32
|
+
var {
|
|
33
|
+
gesture,
|
|
34
|
+
children,
|
|
35
|
+
style
|
|
36
|
+
} = param,
|
|
37
|
+
{
|
|
38
|
+
GestureDetector
|
|
39
|
+
} = (0, import_gestureState.getGestureHandlerState)(),
|
|
40
|
+
enabled = (0, import_gestureState.isGestureHandlerEnabled)();
|
|
41
|
+
return enabled && GestureDetector && gesture ? /* @__PURE__ */(0, import_jsx_runtime.jsx)(GestureDetector, {
|
|
42
|
+
gesture,
|
|
43
|
+
children: /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_react_native.View, {
|
|
44
|
+
style,
|
|
45
|
+
collapsable: !1,
|
|
46
|
+
children
|
|
47
|
+
})
|
|
48
|
+
}) : /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_react_native.View, {
|
|
49
|
+
style,
|
|
50
|
+
children
|
|
51
|
+
});
|
|
52
|
+
}
|
|
53
|
+
//# sourceMappingURL=GestureDetectorWrapper.native.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["__defProp","Object","defineProperty","__getOwnPropDesc","getOwnPropertyDescriptor","__getOwnPropNames","getOwnPropertyNames","__hasOwnProp","prototype","hasOwnProperty","__export","target","all","name","get","enumerable","__copyProps","to","from","except","desc","key"],"sources":["../../src/GestureDetectorWrapper.tsx"],"sourcesContent":[null],"mappings":"AACA,YAAS;;AACT,IAAAA,SAAS,GAAAC,MAAA,CAAAC,cAAwB;AA6BzB,IAAAC,gBAAA,GAAAF,MAAA,CAAAG,wBAAA;AAjBD,IAAAC,iBAAS,GAAAJ,MAAA,CAAAK,mBAAuB;AAAA,IACrCC,YAAA,GAAAN,MAAA,CAAAO,SAAA,CAAAC,cAAA;AAAA,IACAC,QAAA,GAAAA,CAAAC,MAAA,EAAAC,GAAA;IACA,SAAAC,IAAA,IAAAD,GAAA,EAC8BZ,SAAA,CAAAW,MAAA,EAAAE,IAAA;MAAAC,GAAA,EAAAF,GAAA,CAAAC,IAAA;MAAAE,UAAA;IAAA;EAC9B;EAAAC,WAAQ,GAAAA,CAAAC,EAAA,EAAAC,IAAgB,EAAAC,MAAI,EAAAC,IAAA;IAM5B,IAAAF,IALgB,WAAAA,IAAA,YAAwB,IAKzB,OAAAA,IAAA,cAAmB,EAepC,SAAAG,GAAA,IAAAhB,iBAAA,CAAAa,IAAA,G","ignoreList":[]}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import { createContext, useContext } from "react";
|
|
2
|
+
import { jsx } from "react/jsx-runtime";
|
|
3
|
+
const GestureSheetContext = createContext(null);
|
|
4
|
+
function useGestureSheetContext() {
|
|
5
|
+
return useContext(GestureSheetContext);
|
|
6
|
+
}
|
|
7
|
+
function GestureSheetProvider({
|
|
8
|
+
children,
|
|
9
|
+
isDragging,
|
|
10
|
+
blockPan,
|
|
11
|
+
setBlockPan,
|
|
12
|
+
panGesture,
|
|
13
|
+
panGestureRef
|
|
14
|
+
}) {
|
|
15
|
+
const value = {
|
|
16
|
+
panGesture,
|
|
17
|
+
panGestureRef,
|
|
18
|
+
isDragging,
|
|
19
|
+
blockPan,
|
|
20
|
+
setBlockPan
|
|
21
|
+
};
|
|
22
|
+
return /* @__PURE__ */ jsx(GestureSheetContext.Provider, { value, children });
|
|
23
|
+
}
|
|
24
|
+
export {
|
|
25
|
+
GestureSheetProvider,
|
|
26
|
+
useGestureSheetContext
|
|
27
|
+
};
|
|
28
|
+
//# sourceMappingURL=GestureSheetContext.js.map
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../src/GestureSheetContext.tsx"],
|
|
4
|
+
"mappings": "AACA,SAAS,eAAe,kBAAkC;AA0DtD;AAhCJ,MAAM,sBAAsB,cAA+C,IAAI;AAExE,SAAS,yBAA0D;AACxE,SAAO,WAAW,mBAAmB;AACvC;AAWO,SAAS,qBAAqB;AAAA,EACnC;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF,GAA8B;AAC5B,QAAM,QAAkC;AAAA,IACtC;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACF;AAEA,SACE,oBAAC,oBAAoB,UAApB,EAA6B,OAAe,UAAS;AAE1D;",
|
|
5
|
+
"names": []
|
|
6
|
+
}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import { createContext, useContext } from "react";
|
|
2
|
+
import { jsx } from "react/jsx-runtime";
|
|
3
|
+
const GestureSheetContext = createContext(null);
|
|
4
|
+
function useGestureSheetContext() {
|
|
5
|
+
return useContext(GestureSheetContext);
|
|
6
|
+
}
|
|
7
|
+
function GestureSheetProvider({
|
|
8
|
+
children,
|
|
9
|
+
isDragging,
|
|
10
|
+
blockPan,
|
|
11
|
+
setBlockPan,
|
|
12
|
+
panGesture,
|
|
13
|
+
panGestureRef
|
|
14
|
+
}) {
|
|
15
|
+
const value = {
|
|
16
|
+
panGesture,
|
|
17
|
+
panGestureRef,
|
|
18
|
+
isDragging,
|
|
19
|
+
blockPan,
|
|
20
|
+
setBlockPan
|
|
21
|
+
};
|
|
22
|
+
return /* @__PURE__ */jsx(GestureSheetContext.Provider, {
|
|
23
|
+
value,
|
|
24
|
+
children
|
|
25
|
+
});
|
|
26
|
+
}
|
|
27
|
+
export { GestureSheetProvider, useGestureSheetContext };
|
|
28
|
+
//# sourceMappingURL=GestureSheetContext.mjs.map
|