@tamagui/sheet 2.0.0-1769233344020 → 2.0.0-1769256574467

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.
Files changed (150) hide show
  1. package/dist/cjs/GestureDetectorWrapper.cjs +48 -0
  2. package/dist/cjs/GestureDetectorWrapper.js +29 -0
  3. package/dist/cjs/GestureDetectorWrapper.js.map +6 -0
  4. package/dist/cjs/GestureDetectorWrapper.native.js +53 -0
  5. package/dist/cjs/GestureDetectorWrapper.native.js.map +1 -0
  6. package/dist/cjs/GestureSheetContext.cjs +52 -0
  7. package/dist/cjs/GestureSheetContext.js +43 -0
  8. package/dist/cjs/GestureSheetContext.js.map +6 -0
  9. package/dist/cjs/GestureSheetContext.native.js +56 -0
  10. package/dist/cjs/GestureSheetContext.native.js.map +1 -0
  11. package/dist/cjs/SheetImplementationCustom.cjs +85 -40
  12. package/dist/cjs/SheetImplementationCustom.js +81 -58
  13. package/dist/cjs/SheetImplementationCustom.js.map +1 -1
  14. package/dist/cjs/SheetImplementationCustom.native.js +105 -50
  15. package/dist/cjs/SheetImplementationCustom.native.js.map +1 -1
  16. package/dist/cjs/SheetScrollView.cjs +80 -8
  17. package/dist/cjs/SheetScrollView.js +76 -10
  18. package/dist/cjs/SheetScrollView.js.map +1 -1
  19. package/dist/cjs/SheetScrollView.native.js +94 -10
  20. package/dist/cjs/SheetScrollView.native.js.map +1 -1
  21. package/dist/cjs/gestureState.cjs +31 -0
  22. package/dist/cjs/gestureState.js +24 -0
  23. package/dist/cjs/gestureState.js.map +6 -0
  24. package/dist/cjs/gestureState.native.js +34 -0
  25. package/dist/cjs/gestureState.native.js.map +1 -0
  26. package/dist/cjs/setupGestureHandler.cjs +43 -0
  27. package/dist/cjs/setupGestureHandler.js +35 -0
  28. package/dist/cjs/setupGestureHandler.js.map +6 -0
  29. package/dist/cjs/setupGestureHandler.native.js +47 -0
  30. package/dist/cjs/setupGestureHandler.native.js.map +1 -0
  31. package/dist/cjs/useGestureHandlerPan.cjs +125 -0
  32. package/dist/cjs/useGestureHandlerPan.js +116 -0
  33. package/dist/cjs/useGestureHandlerPan.js.map +6 -0
  34. package/dist/cjs/useGestureHandlerPan.native.js +134 -0
  35. package/dist/cjs/useGestureHandlerPan.native.js.map +1 -0
  36. package/dist/esm/GestureDetectorWrapper.js +15 -0
  37. package/dist/esm/GestureDetectorWrapper.js.map +6 -0
  38. package/dist/esm/GestureDetectorWrapper.mjs +25 -0
  39. package/dist/esm/GestureDetectorWrapper.mjs.map +1 -0
  40. package/dist/esm/GestureDetectorWrapper.native.js +27 -0
  41. package/dist/esm/GestureDetectorWrapper.native.js.map +1 -0
  42. package/dist/esm/GestureSheetContext.js +28 -0
  43. package/dist/esm/GestureSheetContext.js.map +6 -0
  44. package/dist/esm/GestureSheetContext.mjs +28 -0
  45. package/dist/esm/GestureSheetContext.mjs.map +1 -0
  46. package/dist/esm/GestureSheetContext.native.js +29 -0
  47. package/dist/esm/GestureSheetContext.native.js.map +1 -0
  48. package/dist/esm/SheetImplementationCustom.js +83 -57
  49. package/dist/esm/SheetImplementationCustom.js.map +1 -1
  50. package/dist/esm/SheetImplementationCustom.mjs +85 -40
  51. package/dist/esm/SheetImplementationCustom.mjs.map +1 -1
  52. package/dist/esm/SheetImplementationCustom.native.js +105 -50
  53. package/dist/esm/SheetImplementationCustom.native.js.map +1 -1
  54. package/dist/esm/SheetScrollView.js +77 -9
  55. package/dist/esm/SheetScrollView.js.map +1 -1
  56. package/dist/esm/SheetScrollView.mjs +80 -8
  57. package/dist/esm/SheetScrollView.mjs.map +1 -1
  58. package/dist/esm/SheetScrollView.native.js +94 -10
  59. package/dist/esm/SheetScrollView.native.js.map +1 -1
  60. package/dist/esm/gestureState.js +13 -0
  61. package/dist/esm/gestureState.js.map +6 -0
  62. package/dist/esm/gestureState.mjs +5 -0
  63. package/dist/esm/gestureState.mjs.map +1 -0
  64. package/dist/esm/gestureState.native.js +5 -0
  65. package/dist/esm/gestureState.native.js.map +1 -0
  66. package/dist/esm/setupGestureHandler.js +19 -0
  67. package/dist/esm/setupGestureHandler.js.map +6 -0
  68. package/dist/esm/setupGestureHandler.mjs +19 -0
  69. package/dist/esm/setupGestureHandler.mjs.map +1 -0
  70. package/dist/esm/setupGestureHandler.native.js +20 -0
  71. package/dist/esm/setupGestureHandler.native.js.map +1 -0
  72. package/dist/esm/useGestureHandlerPan.js +101 -0
  73. package/dist/esm/useGestureHandlerPan.js.map +6 -0
  74. package/dist/esm/useGestureHandlerPan.mjs +102 -0
  75. package/dist/esm/useGestureHandlerPan.mjs.map +1 -0
  76. package/dist/esm/useGestureHandlerPan.native.js +108 -0
  77. package/dist/esm/useGestureHandlerPan.native.js.map +1 -0
  78. package/dist/jsx/GestureDetectorWrapper.js +15 -0
  79. package/dist/jsx/GestureDetectorWrapper.js.map +6 -0
  80. package/dist/jsx/GestureDetectorWrapper.mjs +25 -0
  81. package/dist/jsx/GestureDetectorWrapper.mjs.map +1 -0
  82. package/dist/jsx/GestureDetectorWrapper.native.js +53 -0
  83. package/dist/jsx/GestureDetectorWrapper.native.js.map +1 -0
  84. package/dist/jsx/GestureSheetContext.js +28 -0
  85. package/dist/jsx/GestureSheetContext.js.map +6 -0
  86. package/dist/jsx/GestureSheetContext.mjs +28 -0
  87. package/dist/jsx/GestureSheetContext.mjs.map +1 -0
  88. package/dist/jsx/GestureSheetContext.native.js +56 -0
  89. package/dist/jsx/GestureSheetContext.native.js.map +1 -0
  90. package/dist/jsx/SheetImplementationCustom.js +83 -57
  91. package/dist/jsx/SheetImplementationCustom.js.map +1 -1
  92. package/dist/jsx/SheetImplementationCustom.mjs +85 -40
  93. package/dist/jsx/SheetImplementationCustom.mjs.map +1 -1
  94. package/dist/jsx/SheetImplementationCustom.native.js +105 -50
  95. package/dist/jsx/SheetImplementationCustom.native.js.map +1 -1
  96. package/dist/jsx/SheetScrollView.js +77 -9
  97. package/dist/jsx/SheetScrollView.js.map +1 -1
  98. package/dist/jsx/SheetScrollView.mjs +80 -8
  99. package/dist/jsx/SheetScrollView.mjs.map +1 -1
  100. package/dist/jsx/SheetScrollView.native.js +94 -10
  101. package/dist/jsx/SheetScrollView.native.js.map +1 -1
  102. package/dist/jsx/gestureState.js +13 -0
  103. package/dist/jsx/gestureState.js.map +6 -0
  104. package/dist/jsx/gestureState.mjs +5 -0
  105. package/dist/jsx/gestureState.mjs.map +1 -0
  106. package/dist/jsx/gestureState.native.js +34 -0
  107. package/dist/jsx/gestureState.native.js.map +1 -0
  108. package/dist/jsx/setupGestureHandler.js +19 -0
  109. package/dist/jsx/setupGestureHandler.js.map +6 -0
  110. package/dist/jsx/setupGestureHandler.mjs +19 -0
  111. package/dist/jsx/setupGestureHandler.mjs.map +1 -0
  112. package/dist/jsx/setupGestureHandler.native.js +47 -0
  113. package/dist/jsx/setupGestureHandler.native.js.map +1 -0
  114. package/dist/jsx/useGestureHandlerPan.js +101 -0
  115. package/dist/jsx/useGestureHandlerPan.js.map +6 -0
  116. package/dist/jsx/useGestureHandlerPan.mjs +102 -0
  117. package/dist/jsx/useGestureHandlerPan.mjs.map +1 -0
  118. package/dist/jsx/useGestureHandlerPan.native.js +134 -0
  119. package/dist/jsx/useGestureHandlerPan.native.js.map +1 -0
  120. package/package.json +48 -21
  121. package/src/GestureDetectorWrapper.tsx +41 -0
  122. package/src/GestureSheetContext.tsx +62 -0
  123. package/src/SheetImplementationCustom.tsx +124 -57
  124. package/src/SheetScrollView.tsx +157 -8
  125. package/src/gestureState.ts +17 -0
  126. package/src/setupGestureHandler.ts +32 -0
  127. package/src/types.tsx +15 -0
  128. package/src/useGestureHandlerPan.tsx +299 -0
  129. package/types/GestureDetectorWrapper.d.ts +14 -0
  130. package/types/GestureDetectorWrapper.d.ts.map +1 -0
  131. package/types/GestureDetectorWrapper.native.d.ts +14 -0
  132. package/types/GestureDetectorWrapper.native.d.ts.map +1 -0
  133. package/types/GestureSheetContext.d.ts +36 -0
  134. package/types/GestureSheetContext.d.ts.map +1 -0
  135. package/types/SheetImplementationCustom.d.ts.map +1 -1
  136. package/types/SheetScrollView.d.ts.map +1 -1
  137. package/types/gestureState.d.ts +9 -0
  138. package/types/gestureState.d.ts.map +1 -0
  139. package/types/gestureState.native.d.ts +12 -0
  140. package/types/gestureState.native.d.ts.map +1 -0
  141. package/types/setupGestureHandler.d.ts +12 -0
  142. package/types/setupGestureHandler.d.ts.map +1 -0
  143. package/types/setupGestureHandler.native.d.ts +41 -0
  144. package/types/setupGestureHandler.native.d.ts.map +1 -0
  145. package/types/types.d.ts +8 -0
  146. package/types/types.d.ts.map +1 -1
  147. package/types/useGestureHandlerPan.d.ts +43 -0
  148. package/types/useGestureHandlerPan.d.ts.map +1 -0
  149. package/types/useGestureHandlerPan.native.d.ts +33 -0
  150. package/types/useGestureHandlerPan.native.d.ts.map +1 -0
@@ -4,6 +4,8 @@ import { isClient, isWeb, View } from "@tamagui/core";
4
4
  import { ScrollView } from "@tamagui/scroll-view";
5
5
  import { useControllableState } from "@tamagui/use-controllable-state";
6
6
  import React, { useEffect, useRef, useState } from "react";
7
+ import { useGestureSheetContext } from "./GestureSheetContext.native.js";
8
+ import { getGestureHandlerState, isGestureHandlerEnabled } from "./gestureState.native.js";
7
9
  import { useSheetContext } from "./SheetContext.native.js";
8
10
  var SHEET_SCROLL_VIEW_NAME = "SheetScrollView",
9
11
  SheetScrollView = /* @__PURE__ */React.forwardRef(
@@ -18,6 +20,7 @@ var SHEET_SCROLL_VIEW_NAME = "SheetScrollView",
18
20
  ...props
19
21
  } = param,
20
22
  context = useSheetContext(SHEET_SCROLL_VIEW_NAME, __scopeSheet),
23
+ gestureContext = useGestureSheetContext(),
21
24
  {
22
25
  scrollBridge,
23
26
  setHasScrollView
@@ -27,11 +30,32 @@ var SHEET_SCROLL_VIEW_NAME = "SheetScrollView",
27
30
  defaultProp: !0
28
31
  }),
29
32
  scrollRef = React.useRef(null),
30
- setScrollEnabled = function (next) {
31
- var _scrollRef_current_setNativeProps, _scrollRef_current;
32
- (_scrollRef_current = scrollRef.current) === null || _scrollRef_current === void 0 || (_scrollRef_current_setNativeProps = _scrollRef_current.setNativeProps) === null || _scrollRef_current_setNativeProps === void 0 || _scrollRef_current_setNativeProps.call(_scrollRef_current, {
33
- scrollEnabled: next
34
- }), setScrollEnabled_(next);
33
+ panGestureRef = gestureContext?.panGestureRef,
34
+ {
35
+ ScrollView: RNGHScrollView
36
+ } = getGestureHandlerState(),
37
+ useRNGHScrollView = isGestureHandlerEnabled() && RNGHScrollView && panGestureRef,
38
+ currentScrollOffset = useRef(0),
39
+ lockedScrollY = useRef(0),
40
+ setScrollEnabled = function (next, lockTo) {
41
+ if (next) lockedScrollY.current = currentScrollOffset.current, scrollBridge.scrollLockY = void 0;else {
42
+ var _scrollRef_current_scrollTo,
43
+ _scrollRef_current,
44
+ lockY = lockTo ?? currentScrollOffset.current;
45
+ lockedScrollY.current = lockY, scrollBridge.scrollLockY = lockY, (_scrollRef_current = scrollRef.current) === null || _scrollRef_current === void 0 || (_scrollRef_current_scrollTo = _scrollRef_current.scrollTo) === null || _scrollRef_current_scrollTo === void 0 || _scrollRef_current_scrollTo.call(_scrollRef_current, {
46
+ x: 0,
47
+ y: lockY,
48
+ animated: !1
49
+ });
50
+ }
51
+ },
52
+ forceScrollTo = function (y) {
53
+ var _scrollRef_current_scrollTo, _scrollRef_current;
54
+ (_scrollRef_current = scrollRef.current) === null || _scrollRef_current === void 0 || (_scrollRef_current_scrollTo = _scrollRef_current.scrollTo) === null || _scrollRef_current_scrollTo === void 0 || _scrollRef_current_scrollTo.call(_scrollRef_current, {
55
+ x: 0,
56
+ y,
57
+ animated: !1
58
+ });
35
59
  },
36
60
  state = React.useRef({
37
61
  lastPageY: 0,
@@ -42,8 +66,8 @@ var SHEET_SCROLL_VIEW_NAME = "SheetScrollView",
42
66
  isDraggingScrollArea: !1
43
67
  });
44
68
  useEffect(function () {
45
- return setHasScrollView(!0), function () {
46
- setHasScrollView(!1);
69
+ return setHasScrollView(!0), isGestureHandlerEnabled() && (scrollBridge.setScrollEnabled = setScrollEnabled, scrollBridge.forceScrollTo = forceScrollTo), function () {
70
+ setHasScrollView(!1), scrollBridge.setScrollEnabled && (scrollBridge.setScrollEnabled = void 0), scrollBridge.forceScrollTo && (scrollBridge.forceScrollTo = void 0);
47
71
  };
48
72
  }, []);
49
73
  var release = function () {
@@ -95,15 +119,74 @@ var SHEET_SCROLL_VIEW_NAME = "SheetScrollView",
95
119
  setIsScrollable = function () {
96
120
  parentHeight.current && contentHeight.current && setHasScrollableContent(contentHeight.current > parentHeight.current);
97
121
  };
98
- return useEffect(function () {
122
+ if (useEffect(function () {
99
123
  scrollBridge.hasScrollableContent = hasScrollableContent;
100
- }, [hasScrollableContent]), /* @__PURE__ */_jsxs(ScrollView, {
124
+ }, [hasScrollableContent]), useRNGHScrollView && RNGHScrollView && panGestureRef) {
125
+ var RNGHComponent = RNGHScrollView;
126
+ return /* @__PURE__ */_jsxs(RNGHComponent, {
127
+ ref: composeRefs(scrollRef, ref),
128
+ style: {
129
+ flex: 1
130
+ },
131
+ scrollEventThrottle: 1,
132
+ scrollEnabled: scrollable,
133
+ simultaneousHandlers: [panGestureRef],
134
+ onLayout: function (e) {
135
+ parentHeight.current = Math.ceil(e.nativeEvent.layout.height), setIsScrollable();
136
+ },
137
+ onScroll: function (e) {
138
+ var {
139
+ y
140
+ } = e.nativeEvent.contentOffset;
141
+ if (currentScrollOffset.current = y, scrollBridge.scrollLockY !== void 0) {
142
+ if (y !== scrollBridge.scrollLockY) {
143
+ var _scrollRef_current_scrollTo, _scrollRef_current;
144
+ (_scrollRef_current = scrollRef.current) === null || _scrollRef_current === void 0 || (_scrollRef_current_scrollTo = _scrollRef_current.scrollTo) === null || _scrollRef_current_scrollTo === void 0 || _scrollRef_current_scrollTo.call(_scrollRef_current, {
145
+ x: 0,
146
+ y: scrollBridge.scrollLockY,
147
+ animated: !1
148
+ });
149
+ }
150
+ scrollBridge.y = scrollBridge.scrollLockY;
151
+ var lockedEvent = {
152
+ ...e,
153
+ nativeEvent: {
154
+ ...e.nativeEvent,
155
+ contentOffset: {
156
+ ...e.nativeEvent.contentOffset,
157
+ y: scrollBridge.scrollLockY
158
+ }
159
+ }
160
+ };
161
+ onScroll?.(lockedEvent);
162
+ return;
163
+ }
164
+ scrollBridge.y = y, y > 0 && (scrollBridge.scrollStartY = -1), onScroll?.(e);
165
+ },
166
+ contentContainerStyle: {
167
+ minHeight: "100%"
168
+ },
169
+ bounces: !1,
170
+ ...props,
171
+ children: [/* content height measurer */
172
+ /* @__PURE__ */_jsx(View, {
173
+ position: "absolute",
174
+ inset: 0,
175
+ pointerEvents: "none",
176
+ zIndex: -1,
177
+ onLayout: function (e) {
178
+ contentHeight.current = Math.floor(e.nativeEvent.layout.height), setIsScrollable();
179
+ }
180
+ }), children]
181
+ });
182
+ }
183
+ var content = /* @__PURE__ */_jsxs(ScrollView, {
101
184
  onLayout: function (e) {
102
185
  parentHeight.current = Math.ceil(e.nativeEvent.layout.height), setIsScrollable();
103
186
  },
104
187
  ref: composeRefs(scrollRef, ref),
105
188
  flex: 1,
106
- scrollEventThrottle: 8,
189
+ scrollEventThrottle: 1,
107
190
  onResponderRelease: release,
108
191
  className: "_ovs-contain",
109
192
  scrollEnabled: scrollable,
@@ -170,6 +253,7 @@ var SHEET_SCROLL_VIEW_NAME = "SheetScrollView",
170
253
  }
171
254
  }), children]
172
255
  });
256
+ return content;
173
257
  });
174
258
  export { SheetScrollView };
175
259
  //# sourceMappingURL=SheetScrollView.native.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["jsx","_jsx","jsxs","_jsxs","composeRefs","isClient","isWeb","View","ScrollView","useControllableState","React","useEffect","useRef","useState","useSheetContext","SHEET_SCROLL_VIEW_NAME","SheetScrollView","forwardRef","param","ref","__scopeSheet","children","onScroll","scrollEnabled","scrollEnabledProp","props","context","scrollBridge","setHasScrollView","setScrollEnabled_","prop","defaultProp","scrollRef","setScrollEnabled","next","_scrollRef_current_setNativeProps","_scrollRef_current","current","setNativeProps","call","state","lastPageY","dragAt","dys","isScrolling","isDraggingScrollArea","release","scrollStartY","scrollLock","vy","length","recentDys","slice","dist","reduce","a","b","avgDy","scrollable","controller","AbortController","node","getScrollableNode","addEventListener","e","isParentDragging","scrollTo","top","y","behavior","signal","passive","disposeBridgeListen","onParentDragging","val","abort","hasScrollableContent","setHasScrollableContent","parentHeight","contentHeight","setIsScrollable","onLayout","Math","ceil","nativeEvent","layout","height","flex","scrollEventThrottle","onResponderRelease","className","contentOffset","onStartShouldSetResponder","onMoveShouldSetResponder","pageY","dy","abs","contentContainerStyle","minHeight","onResponderMove","isDraggingUp","isPaneAtTop","paneY","paneMinY","shouldScrollLock","isDraggingUpFromTopOnFirstScroll","drag","push"],"sources":["../../src/SheetScrollView.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["jsx","_jsx","jsxs","_jsxs","composeRefs","isClient","isWeb","View","ScrollView","useControllableState","React","useEffect","useRef","useState","useGestureSheetContext","getGestureHandlerState","isGestureHandlerEnabled","useSheetContext","SHEET_SCROLL_VIEW_NAME","SheetScrollView","forwardRef","param","ref","__scopeSheet","children","onScroll","scrollEnabled","scrollEnabledProp","props","context","gestureContext","scrollBridge","setHasScrollView","setScrollEnabled_","prop","defaultProp","scrollRef","panGestureRef","RNGHScrollView","useRNGHScrollView","currentScrollOffset","lockedScrollY","setScrollEnabled","next","lockTo","current","scrollLockY","_scrollRef_current_scrollTo","_scrollRef_current","lockY","scrollTo","call","x","y","animated","forceScrollTo","state","lastPageY","dragAt","dys","isScrolling","isDraggingScrollArea","release","scrollStartY","scrollLock","vy","length","recentDys","slice","dist","reduce","a","b","avgDy","scrollable","controller","AbortController","node","getScrollableNode","addEventListener","e","isParentDragging","top","behavior","signal","passive","disposeBridgeListen","onParentDragging","val","abort","hasScrollableContent","setHasScrollableContent","parentHeight","contentHeight","setIsScrollable","RNGHComponent","style","flex","scrollEventThrottle","simultaneousHandlers","onLayout","Math","ceil","nativeEvent","layout","height","contentOffset","lockedEvent","contentContainerStyle","minHeight","bounces","position","inset","pointerEvents","zIndex","floor","content","onResponderRelease","className","onStartShouldSetResponder","onMoveShouldSetResponder","pageY","dy","abs","onResponderMove","isDraggingUp","isPaneAtTop","paneY","paneMinY","shouldScrollLock"],"sources":["../../src/SheetScrollView.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,13 @@
1
+ import {
2
+ isGestureHandlerEnabled,
3
+ getGestureHandlerState
4
+ } from "@tamagui/native";
5
+ import { setGestureHandlerState } from "@tamagui/native";
6
+ import { setGestureHandlerState as setGestureHandlerState2 } from "@tamagui/native";
7
+ export {
8
+ getGestureHandlerState,
9
+ isGestureHandlerEnabled,
10
+ setGestureHandlerState,
11
+ setGestureHandlerState2 as setGestureState
12
+ };
13
+ //# sourceMappingURL=gestureState.js.map
@@ -0,0 +1,6 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../src/gestureState.ts"],
4
+ "mappings": "AAKA;AAAA,EACE;AAAA,EACA;AAAA,OACK;AAKP,SAAS,8BAA8B;AAGvC,SAAmC,0BAA1BA,+BAAiD;",
5
+ "names": ["setGestureHandlerState"]
6
+ }
@@ -0,0 +1,5 @@
1
+ import { isGestureHandlerEnabled, getGestureHandlerState } from "@tamagui/native";
2
+ import { setGestureHandlerState } from "@tamagui/native";
3
+ import { setGestureHandlerState as setGestureHandlerState2 } from "@tamagui/native";
4
+ export { getGestureHandlerState, isGestureHandlerEnabled, setGestureHandlerState, setGestureHandlerState2 as setGestureState };
5
+ //# sourceMappingURL=gestureState.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["isGestureHandlerEnabled","getGestureHandlerState","setGestureHandlerState","setGestureHandlerState2"],"sources":["../../src/gestureState.ts"],"sourcesContent":[null],"mappings":"AAKA,SACEA,uBAAA,EACAC,sBAAA,QACK;AAKP,SAASC,sBAAA,QAA8B;AAGvC,SAAmCA,sBAAA,IAA1BC,uBAAA,QAAiD","ignoreList":[]}
@@ -0,0 +1,5 @@
1
+ import { isGestureHandlerEnabled, getGestureHandlerState } from "@tamagui/native";
2
+ import { setGestureHandlerState } from "@tamagui/native";
3
+ import { setGestureHandlerState as setGestureHandlerState2 } from "@tamagui/native";
4
+ export { getGestureHandlerState, isGestureHandlerEnabled, setGestureHandlerState, setGestureHandlerState2 as setGestureState };
5
+ //# sourceMappingURL=gestureState.native.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["isGestureHandlerEnabled","getGestureHandlerState","setGestureHandlerState","setGestureHandlerState2"],"sources":["../../src/gestureState.ts"],"sourcesContent":[null],"mappings":"AAKA,SAAAA,uBAAA,EAAAC,sBAAA;AAAA,SACEC,sBAAA;AAAA,SACAA,sBAAA,IAAAC,uBAAA;AAAA,SAMFF,sBAAS,EAGTD,uBAAmC,E","ignoreList":[]}
@@ -0,0 +1,19 @@
1
+ import { setGestureHandlerState, isGestureHandlerEnabled } from "@tamagui/native";
2
+ function setupGestureHandler(config) {
3
+ const g = globalThis;
4
+ if (g.__tamagui_sheet_gesture_handler_setup)
5
+ return;
6
+ g.__tamagui_sheet_gesture_handler_setup = !0;
7
+ const { Gesture, GestureDetector, ScrollView } = config;
8
+ Gesture && GestureDetector && setGestureHandlerState({
9
+ enabled: !0,
10
+ Gesture,
11
+ GestureDetector,
12
+ ScrollView: ScrollView || null
13
+ });
14
+ }
15
+ export {
16
+ isGestureHandlerEnabled,
17
+ setupGestureHandler
18
+ };
19
+ //# sourceMappingURL=setupGestureHandler.js.map
@@ -0,0 +1,6 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../src/setupGestureHandler.ts"],
4
+ "mappings": "AAIA,SAAS,wBAAwB,+BAA+B;AAUzD,SAAS,oBAAoB,QAAyC;AAC3E,QAAM,IAAI;AACV,MAAI,EAAE;AACJ;AAEF,IAAE,wCAAwC;AAE1C,QAAM,EAAE,SAAS,iBAAiB,WAAW,IAAI;AAEjD,EAAI,WAAW,mBACb,uBAAuB;AAAA,IACrB,SAAS;AAAA,IACT;AAAA,IACA;AAAA,IACA,YAAY,cAAc;AAAA,EAC5B,CAAC;AAEL;",
5
+ "names": []
6
+ }
@@ -0,0 +1,19 @@
1
+ import { setGestureHandlerState, isGestureHandlerEnabled } from "@tamagui/native";
2
+ function setupGestureHandler(config) {
3
+ const g = globalThis;
4
+ if (g.__tamagui_sheet_gesture_handler_setup) return;
5
+ g.__tamagui_sheet_gesture_handler_setup = !0;
6
+ const {
7
+ Gesture,
8
+ GestureDetector,
9
+ ScrollView
10
+ } = config;
11
+ Gesture && GestureDetector && setGestureHandlerState({
12
+ enabled: !0,
13
+ Gesture,
14
+ GestureDetector,
15
+ ScrollView: ScrollView || null
16
+ });
17
+ }
18
+ export { isGestureHandlerEnabled, setupGestureHandler };
19
+ //# sourceMappingURL=setupGestureHandler.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["setGestureHandlerState","isGestureHandlerEnabled","setupGestureHandler","config","g","globalThis","__tamagui_sheet_gesture_handler_setup","Gesture","GestureDetector","ScrollView","enabled"],"sources":["../../src/setupGestureHandler.ts"],"sourcesContent":[null],"mappings":"AAIA,SAASA,sBAAA,EAAwBC,uBAAA,QAA+B;AAUzD,SAASC,oBAAoBC,MAAA,EAAyC;EAC3E,MAAMC,CAAA,GAAIC,UAAA;EACV,IAAID,CAAA,CAAEE,qCAAA,EACJ;EAEFF,CAAA,CAAEE,qCAAA,GAAwC;EAE1C,MAAM;IAAEC,OAAA;IAASC,eAAA;IAAiBC;EAAW,IAAIN,MAAA;EAE7CI,OAAA,IAAWC,eAAA,IACbR,sBAAA,CAAuB;IACrBU,OAAA,EAAS;IACTH,OAAA;IACAC,eAAA;IACAC,UAAA,EAAYA,UAAA,IAAc;EAC5B,CAAC;AAEL","ignoreList":[]}
@@ -0,0 +1,20 @@
1
+ import { setGestureHandlerState, isGestureHandlerEnabled } from "@tamagui/native";
2
+ function setupGestureHandler(config) {
3
+ var g = globalThis;
4
+ if (!g.__tamagui_sheet_gesture_handler_setup) {
5
+ g.__tamagui_sheet_gesture_handler_setup = !0;
6
+ var {
7
+ Gesture,
8
+ GestureDetector,
9
+ ScrollView
10
+ } = config;
11
+ Gesture && GestureDetector && setGestureHandlerState({
12
+ enabled: !0,
13
+ Gesture,
14
+ GestureDetector,
15
+ ScrollView: ScrollView || null
16
+ });
17
+ }
18
+ }
19
+ export { isGestureHandlerEnabled, setupGestureHandler };
20
+ //# sourceMappingURL=setupGestureHandler.native.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["setGestureHandlerState","isGestureHandlerEnabled","setupGestureHandler","config","g","globalThis","__tamagui_sheet_gesture_handler_setup","Gesture","GestureDetector","ScrollView","enabled"],"sources":["../../src/setupGestureHandler.ts"],"sourcesContent":[null],"mappings":"AAIA,SAASA,sBAAA,EAAwBC,uBAAA,QAA+B;AAUzD,SAASC,oBAAoBC,MAAA,EAAyC;EAC3E,IAAAC,CAAA,GAAMC,UAAI;EACV,IAAI,CAAAD,CAAE,CAAAE,qCAAA;IACJF,CAAA,CAAAE,qCAAA;IAEA;MAAAC,OAAA;MAAAC,eAAA;MAAAC;IAAwC,IAAAN,MAAA;IAE1CI,OAAQ,IAAAC,eAAS,IAAAR,sBAAgC;MAE7CU,OAAW;MAEXH,OAAS;MACTC,eAAA;MACAC,UAAA,EAAAA,UAAA;IACA;EACF;AAEJ","ignoreList":[]}
@@ -0,0 +1,101 @@
1
+ import { useCallback, useMemo, useRef } from "react";
2
+ import { getGestureHandlerState, isGestureHandlerEnabled } from "./gestureState";
3
+ const AT_TOP_THRESHOLD = 5;
4
+ function useGestureHandlerPan(config) {
5
+ const {
6
+ positions,
7
+ frameSize,
8
+ setPosition,
9
+ animateTo,
10
+ stopSpring,
11
+ scrollBridge,
12
+ setIsDragging,
13
+ getCurrentPosition,
14
+ resisted,
15
+ disableDrag,
16
+ isShowingInnerSheet,
17
+ setAnimatedPosition,
18
+ scrollGestureRef
19
+ } = config, gestureHandlerEnabled = isGestureHandlerEnabled(), panGestureRef = useRef(null), gestureStateRef = useRef({
20
+ startY: 0,
21
+ // track last translation when pan was active (for position calculation after handoff)
22
+ lastPanTranslationY: 0,
23
+ // accumulated position offset from all pan movements
24
+ accumulatedOffset: 0,
25
+ // track previous translation for direction detection (like actions-sheet)
26
+ prevTranslationY: 0,
27
+ // track if scroll was engaged (scrollY > 0) at some point
28
+ scrollEngaged: !1
29
+ }), onStart = useCallback(() => {
30
+ stopSpring(), setIsDragging(!0);
31
+ }, [stopSpring, setIsDragging]), onEnd = useCallback(
32
+ (closestPoint) => {
33
+ setIsDragging(!1), scrollBridge.setParentDragging(!1), scrollBridge.setScrollEnabled?.(!0), setPosition(closestPoint), animateTo(closestPoint);
34
+ },
35
+ [setIsDragging, scrollBridge, setPosition, animateTo]
36
+ );
37
+ return {
38
+ panGesture: useMemo(() => {
39
+ if (!gestureHandlerEnabled || disableDrag || isShowingInnerSheet || !frameSize)
40
+ return null;
41
+ const { Gesture } = getGestureHandlerState();
42
+ if (!Gesture)
43
+ return null;
44
+ const minY = positions[0], gs = gestureStateRef.current, gesture = Gesture.Pan().withRef(panGestureRef).failOffsetX([-20, 20]).shouldCancelWhenOutside(!1).onBegin(() => {
45
+ const pos = getCurrentPosition(), atTop = pos <= minY + AT_TOP_THRESHOLD, currentScrollY = scrollBridge.y;
46
+ gs.startY = pos, gs.lastPanTranslationY = 0, gs.accumulatedOffset = 0, gs.prevTranslationY = 0, gs.scrollEngaged = currentScrollY > 0, atTop || scrollBridge.setScrollEnabled?.(!1, 0);
47
+ }).onStart(() => {
48
+ scrollBridge.initialPosition = gs.startY, onStart();
49
+ }).onChange((event) => {
50
+ const { translationY } = event, isSwipingDown = gs.prevTranslationY < translationY, deltaY = translationY - gs.prevTranslationY;
51
+ gs.prevTranslationY = translationY;
52
+ const scrollY = scrollBridge.y;
53
+ scrollY > 0 && (gs.scrollEngaged = !0);
54
+ const isCurrentlyAtTop = gs.startY + gs.accumulatedOffset <= minY + AT_TOP_THRESHOLD, nodeIsScrolling = scrollY > 0;
55
+ let panHandles = !1;
56
+ if (isCurrentlyAtTop ? isSwipingDown ? nodeIsScrolling ? panHandles = !1 : (gs.scrollEngaged, panHandles = !0) : panHandles = !1 : isSwipingDown ? panHandles = !nodeIsScrolling : panHandles = !0, panHandles) {
57
+ const lockTo = isCurrentlyAtTop ? void 0 : 0;
58
+ scrollBridge.setScrollEnabled?.(!1, lockTo), gs.accumulatedOffset += deltaY;
59
+ const newPosition = resisted(gs.startY + gs.accumulatedOffset, minY);
60
+ scrollBridge.paneY = newPosition, setAnimatedPosition(newPosition), scrollBridge.setParentDragging(newPosition > minY);
61
+ } else
62
+ scrollBridge.setScrollEnabled?.(!0);
63
+ }).onEnd((event) => {
64
+ const { velocityY } = event, currentPos = gs.startY + gs.accumulatedOffset;
65
+ if (scrollBridge.scrollLockY = void 0, currentPos <= minY + AT_TOP_THRESHOLD && scrollBridge.y > 0) {
66
+ onEnd(0);
67
+ return;
68
+ }
69
+ const velocity = velocityY / 1e3, projectedEnd = currentPos + frameSize * velocity * 0.2;
70
+ let closestPoint = 0, minDist = Number.POSITIVE_INFINITY;
71
+ for (let i = 0; i < positions.length; i++) {
72
+ const pos = positions[i], dist = Math.abs(projectedEnd - pos);
73
+ dist < minDist && (minDist = dist, closestPoint = i);
74
+ }
75
+ onEnd(closestPoint);
76
+ }).onFinalize(() => {
77
+ scrollBridge.scrollLockY = void 0;
78
+ }).runOnJS(!0);
79
+ return scrollGestureRef?.current ? gesture.simultaneousWithExternalGesture(scrollGestureRef.current) : gesture;
80
+ }, [
81
+ gestureHandlerEnabled,
82
+ disableDrag,
83
+ isShowingInnerSheet,
84
+ frameSize,
85
+ positions,
86
+ scrollBridge,
87
+ getCurrentPosition,
88
+ resisted,
89
+ onStart,
90
+ onEnd,
91
+ setIsDragging,
92
+ setAnimatedPosition
93
+ ]),
94
+ panGestureRef,
95
+ gestureHandlerEnabled
96
+ };
97
+ }
98
+ export {
99
+ useGestureHandlerPan
100
+ };
101
+ //# sourceMappingURL=useGestureHandlerPan.js.map
@@ -0,0 +1,6 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../src/useGestureHandlerPan.tsx"],
4
+ "mappings": "AAAA,SAAS,aAAa,SAAS,cAA8B;AAC7D,SAAS,wBAAwB,+BAA+B;AAKhE,MAAM,mBAAmB;AA4ClB,SAAS,qBAAqB,QAA4C;AAC/E,QAAM;AAAA,IACJ;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACF,IAAI,QAEE,wBAAwB,wBAAwB,GAChD,gBAAgB,OAAY,IAAI,GAIhC,kBAAkB,OAAO;AAAA,IAC7B,QAAQ;AAAA;AAAA,IAER,qBAAqB;AAAA;AAAA,IAErB,mBAAmB;AAAA;AAAA,IAEnB,kBAAkB;AAAA;AAAA,IAElB,eAAe;AAAA,EACjB,CAAC,GAEK,UAAU,YAAY,MAAM;AAChC,eAAW,GACX,cAAc,EAAI;AAAA,EACpB,GAAG,CAAC,YAAY,aAAa,CAAC,GAExB,QAAQ;AAAA,IACZ,CAAC,iBAAyB;AACxB,oBAAc,EAAK,GACnB,aAAa,kBAAkB,EAAK,GAEpC,aAAa,mBAAmB,EAAI,GACpC,YAAY,YAAY,GACxB,UAAU,YAAY;AAAA,IACxB;AAAA,IACA,CAAC,eAAe,cAAc,aAAa,SAAS;AAAA,EACtD;AAkMA,SAAO;AAAA,IACL,YAjMiB,QAAQ,MAAM;AAE/B,UAAI,CAAC,yBAAyB,eAAe,uBAAuB,CAAC;AACnE,eAAO;AAGT,YAAM,EAAE,QAAQ,IAAI,uBAAuB;AAC3C,UAAI,CAAC;AACH,eAAO;AAGT,YAAM,OAAO,UAAU,CAAC,GAClB,KAAK,gBAAgB,SAKrB,UAAU,QAAQ,IAAI,EACzB,QAAQ,aAAa,EAErB,YAAY,CAAC,KAAK,EAAE,CAAC,EACrB,wBAAwB,EAAK,EAC7B,QAAQ,MAAM;AAEb,cAAM,MAAM,mBAAmB,GACzB,QAAQ,OAAO,OAAO,kBACtB,iBAAiB,aAAa;AAEpC,WAAG,SAAS,KACZ,GAAG,sBAAsB,GACzB,GAAG,oBAAoB,GACvB,GAAG,mBAAmB,GACtB,GAAG,gBAAgB,iBAAiB,GAI/B,SACH,aAAa,mBAAmB,IAAO,CAAC;AAAA,MAE5C,CAAC,EACA,QAAQ,MAAM;AAEb,qBAAa,kBAAkB,GAAG,QAClC,QAAQ;AAAA,MACV,CAAC,EACA,SAAS,CAAC,UAAuD;AAChE,cAAM,EAAE,aAAa,IAAI,OAInB,gBAAgB,GAAG,mBAAmB,cACtC,SAAS,eAAe,GAAG;AACjC,WAAG,mBAAmB;AAEtB,cAAM,UAAU,aAAa;AAE7B,QAAI,UAAU,MACZ,GAAG,gBAAgB;AAKrB,cAAM,mBADa,GAAG,SAAS,GAAG,qBACK,OAAO,kBACxC,kBAAkB,UAAU;AASlC,YAAI,aAAa;AAoCjB,YAlCK,mBAYC,gBAEE,kBAEF,aAAa,MACJ,GAAG,eAIZ,aAAa,MAOf,aAAa,KA1BX,gBAGF,aAAa,CAAC,kBAGd,aAAa,IA0Bb,YAAY;AAId,gBAAM,SAAS,mBAAmB,SAAY;AAC9C,uBAAa,mBAAmB,IAAO,MAAM,GAG7C,GAAG,qBAAqB;AACxB,gBAAM,cAAc,SAAS,GAAG,SAAS,GAAG,mBAAmB,IAAI;AAGnE,uBAAa,QAAQ,aACrB,oBAAoB,WAAW,GAC/B,aAAa,kBAAkB,cAAc,IAAI;AAAA,QACnD;AAEE,uBAAa,mBAAmB,EAAI;AAAA,MAGxC,CAAC,EACA,MAAM,CAAC,UAAiC;AACvC,cAAM,EAAE,UAAU,IAAI,OAChB,aAAa,GAAG,SAAS,GAAG;AAQlC,YAHA,aAAa,cAAc,QAGvB,cAAc,OAAO,oBAAoB,aAAa,IAAI,GAAG;AAC/D,gBAAM,CAAC;AACP;AAAA,QACF;AAGA,cAAM,WAAW,YAAY,KACvB,eAAe,aAAa,YAAY,WAAW;AAEzD,YAAI,eAAe,GACf,UAAU,OAAO;AAErB,iBAAS,IAAI,GAAG,IAAI,UAAU,QAAQ,KAAK;AACzC,gBAAM,MAAM,UAAU,CAAC,GACjB,OAAO,KAAK,IAAI,eAAe,GAAG;AACxC,UAAI,OAAO,YACT,UAAU,MACV,eAAe;AAAA,QAEnB;AAEA,cAAM,YAAY;AAAA,MACpB,CAAC,EACA,WAAW,MAAM;AAGhB,qBAAa,cAAc;AAAA,MAC7B,CAAC,EACA,QAAQ,EAAI;AAIf,aAAI,kBAAkB,UAEb,QAAQ,gCAAgC,iBAAiB,OAAO,IAGlE;AAAA,IACT,GAAG;AAAA,MACD;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACF,CAAC;AAAA,IAIC;AAAA,IACA;AAAA,EACF;AACF;",
5
+ "names": []
6
+ }
@@ -0,0 +1,102 @@
1
+ import { useCallback, useMemo, useRef } from "react";
2
+ import { getGestureHandlerState, isGestureHandlerEnabled } from "./gestureState.mjs";
3
+ const AT_TOP_THRESHOLD = 5;
4
+ function useGestureHandlerPan(config) {
5
+ const {
6
+ positions,
7
+ frameSize,
8
+ setPosition,
9
+ animateTo,
10
+ stopSpring,
11
+ scrollBridge,
12
+ setIsDragging,
13
+ getCurrentPosition,
14
+ resisted,
15
+ disableDrag,
16
+ isShowingInnerSheet,
17
+ setAnimatedPosition,
18
+ scrollGestureRef
19
+ } = config,
20
+ gestureHandlerEnabled = isGestureHandlerEnabled(),
21
+ panGestureRef = useRef(null),
22
+ gestureStateRef = useRef({
23
+ startY: 0,
24
+ // track last translation when pan was active (for position calculation after handoff)
25
+ lastPanTranslationY: 0,
26
+ // accumulated position offset from all pan movements
27
+ accumulatedOffset: 0,
28
+ // track previous translation for direction detection (like actions-sheet)
29
+ prevTranslationY: 0,
30
+ // track if scroll was engaged (scrollY > 0) at some point
31
+ scrollEngaged: !1
32
+ }),
33
+ onStart = useCallback(() => {
34
+ stopSpring(), setIsDragging(!0);
35
+ }, [stopSpring, setIsDragging]),
36
+ onEnd = useCallback(closestPoint => {
37
+ setIsDragging(!1), scrollBridge.setParentDragging(!1), scrollBridge.setScrollEnabled?.(!0), setPosition(closestPoint), animateTo(closestPoint);
38
+ }, [setIsDragging, scrollBridge, setPosition, animateTo]);
39
+ return {
40
+ panGesture: useMemo(() => {
41
+ if (!gestureHandlerEnabled || disableDrag || isShowingInnerSheet || !frameSize) return null;
42
+ const {
43
+ Gesture
44
+ } = getGestureHandlerState();
45
+ if (!Gesture) return null;
46
+ const minY = positions[0],
47
+ gs = gestureStateRef.current,
48
+ gesture = Gesture.Pan().withRef(panGestureRef).failOffsetX([-20, 20]).shouldCancelWhenOutside(!1).onBegin(() => {
49
+ const pos = getCurrentPosition(),
50
+ atTop = pos <= minY + AT_TOP_THRESHOLD,
51
+ currentScrollY = scrollBridge.y;
52
+ gs.startY = pos, gs.lastPanTranslationY = 0, gs.accumulatedOffset = 0, gs.prevTranslationY = 0, gs.scrollEngaged = currentScrollY > 0, atTop || scrollBridge.setScrollEnabled?.(!1, 0);
53
+ }).onStart(() => {
54
+ scrollBridge.initialPosition = gs.startY, onStart();
55
+ }).onChange(event => {
56
+ const {
57
+ translationY
58
+ } = event,
59
+ isSwipingDown = gs.prevTranslationY < translationY,
60
+ deltaY = translationY - gs.prevTranslationY;
61
+ gs.prevTranslationY = translationY;
62
+ const scrollY = scrollBridge.y;
63
+ scrollY > 0 && (gs.scrollEngaged = !0);
64
+ const isCurrentlyAtTop = gs.startY + gs.accumulatedOffset <= minY + AT_TOP_THRESHOLD,
65
+ nodeIsScrolling = scrollY > 0;
66
+ let panHandles = !1;
67
+ if (isCurrentlyAtTop ? isSwipingDown ? nodeIsScrolling ? panHandles = !1 : (gs.scrollEngaged, panHandles = !0) : panHandles = !1 : isSwipingDown ? panHandles = !nodeIsScrolling : panHandles = !0, panHandles) {
68
+ const lockTo = isCurrentlyAtTop ? void 0 : 0;
69
+ scrollBridge.setScrollEnabled?.(!1, lockTo), gs.accumulatedOffset += deltaY;
70
+ const newPosition = resisted(gs.startY + gs.accumulatedOffset, minY);
71
+ scrollBridge.paneY = newPosition, setAnimatedPosition(newPosition), scrollBridge.setParentDragging(newPosition > minY);
72
+ } else scrollBridge.setScrollEnabled?.(!0);
73
+ }).onEnd(event => {
74
+ const {
75
+ velocityY
76
+ } = event,
77
+ currentPos = gs.startY + gs.accumulatedOffset;
78
+ if (scrollBridge.scrollLockY = void 0, currentPos <= minY + AT_TOP_THRESHOLD && scrollBridge.y > 0) {
79
+ onEnd(0);
80
+ return;
81
+ }
82
+ const velocity = velocityY / 1e3,
83
+ projectedEnd = currentPos + frameSize * velocity * 0.2;
84
+ let closestPoint = 0,
85
+ minDist = Number.POSITIVE_INFINITY;
86
+ for (let i = 0; i < positions.length; i++) {
87
+ const pos = positions[i],
88
+ dist = Math.abs(projectedEnd - pos);
89
+ dist < minDist && (minDist = dist, closestPoint = i);
90
+ }
91
+ onEnd(closestPoint);
92
+ }).onFinalize(() => {
93
+ scrollBridge.scrollLockY = void 0;
94
+ }).runOnJS(!0);
95
+ return scrollGestureRef?.current ? gesture.simultaneousWithExternalGesture(scrollGestureRef.current) : gesture;
96
+ }, [gestureHandlerEnabled, disableDrag, isShowingInnerSheet, frameSize, positions, scrollBridge, getCurrentPosition, resisted, onStart, onEnd, setIsDragging, setAnimatedPosition]),
97
+ panGestureRef,
98
+ gestureHandlerEnabled
99
+ };
100
+ }
101
+ export { useGestureHandlerPan };
102
+ //# sourceMappingURL=useGestureHandlerPan.mjs.map
@@ -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","onStart","onEnd","closestPoint","setParentDragging","setScrollEnabled","panGesture","Gesture","minY","gs","current","gesture","Pan","withRef","failOffsetX","shouldCancelWhenOutside","onBegin","pos","atTop","currentScrollY","y","initialPosition","onChange","event","translationY","isSwipingDown","deltaY","scrollY","isCurrentlyAtTop","nodeIsScrolling","panHandles","lockTo","newPosition","paneY","velocityY","currentPos","scrollLockY","velocity","projectedEnd","minDist","Number","POSITIVE_INFINITY","i","length","dist","Math","abs","onFinalize","runOnJS","simultaneousWithExternalGesture"],"sources":["../../src/useGestureHandlerPan.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}