@tamagui/sheet 2.0.0-rc.4 → 2.0.0-rc.40

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 (429) hide show
  1. package/.turbo/turbo-build.log +3 -0
  2. package/controller/index.cjs +2 -0
  3. package/controller/index.js +2 -0
  4. package/controller/index.native.cjs +2 -0
  5. package/controller/index.native.js +2 -0
  6. package/dist/cjs/GestureDetectorWrapper.cjs +27 -21
  7. package/dist/cjs/GestureDetectorWrapper.native.js +33 -28
  8. package/dist/cjs/GestureDetectorWrapper.native.js.map +1 -1
  9. package/dist/cjs/GestureSheetContext.cjs +14 -12
  10. package/dist/cjs/GestureSheetContext.native.js +29 -27
  11. package/dist/cjs/GestureSheetContext.native.js.map +1 -1
  12. package/dist/cjs/Sheet.cjs +88 -86
  13. package/dist/cjs/Sheet.native.js +88 -86
  14. package/dist/cjs/Sheet.native.js.map +1 -1
  15. package/dist/cjs/SheetContext.cjs +16 -14
  16. package/dist/cjs/SheetContext.native.js +16 -14
  17. package/dist/cjs/SheetContext.native.js.map +1 -1
  18. package/dist/cjs/SheetController.cjs +40 -32
  19. package/dist/cjs/SheetController.native.js +62 -54
  20. package/dist/cjs/SheetController.native.js.map +1 -1
  21. package/dist/cjs/SheetImplementationCustom.cjs +545 -429
  22. package/dist/cjs/SheetImplementationCustom.native.js +569 -474
  23. package/dist/cjs/SheetImplementationCustom.native.js.map +1 -1
  24. package/dist/cjs/SheetScrollView.cjs +168 -132
  25. package/dist/cjs/SheetScrollView.native.js +189 -163
  26. package/dist/cjs/SheetScrollView.native.js.map +1 -1
  27. package/dist/cjs/constants.cjs +16 -14
  28. package/dist/cjs/constants.native.js +16 -14
  29. package/dist/cjs/constants.native.js.map +1 -1
  30. package/dist/cjs/contexts.cjs +27 -25
  31. package/dist/cjs/contexts.native.js +29 -27
  32. package/dist/cjs/contexts.native.js.map +1 -1
  33. package/dist/cjs/controller.cjs +14 -12
  34. package/dist/cjs/controller.native.js +14 -12
  35. package/dist/cjs/controller.native.js.map +1 -1
  36. package/dist/cjs/createSheet.cjs +159 -160
  37. package/dist/cjs/createSheet.native.js +172 -180
  38. package/dist/cjs/createSheet.native.js.map +1 -1
  39. package/dist/cjs/gestureState.cjs +12 -10
  40. package/dist/cjs/gestureState.native.js +12 -10
  41. package/dist/cjs/gestureState.native.js.map +1 -1
  42. package/dist/cjs/helpers.cjs +17 -13
  43. package/dist/cjs/helpers.native.js +17 -13
  44. package/dist/cjs/helpers.native.js.map +1 -1
  45. package/dist/cjs/index.cjs +7 -5
  46. package/dist/cjs/index.native.js +7 -5
  47. package/dist/cjs/index.native.js.map +1 -1
  48. package/dist/cjs/nativeSheet.cjs +64 -55
  49. package/dist/cjs/nativeSheet.native.js +73 -68
  50. package/dist/cjs/nativeSheet.native.js.map +1 -1
  51. package/dist/cjs/setupGestureHandler.cjs +24 -18
  52. package/dist/cjs/setupGestureHandler.native.js +24 -19
  53. package/dist/cjs/setupGestureHandler.native.js.map +1 -1
  54. package/dist/cjs/types.cjs +7 -5
  55. package/dist/cjs/types.native.js +7 -5
  56. package/dist/cjs/types.native.js.map +1 -1
  57. package/dist/cjs/useGestureHandlerPan.cjs +181 -111
  58. package/dist/cjs/useGestureHandlerPan.native.js +183 -115
  59. package/dist/cjs/useGestureHandlerPan.native.js.map +1 -1
  60. package/dist/cjs/useKeyboardControllerSheet.cjs +15 -13
  61. package/dist/cjs/useKeyboardControllerSheet.native.js +100 -82
  62. package/dist/cjs/useKeyboardControllerSheet.native.js.map +1 -1
  63. package/dist/cjs/useSheet.cjs +12 -10
  64. package/dist/cjs/useSheet.native.js +16 -14
  65. package/dist/cjs/useSheet.native.js.map +1 -1
  66. package/dist/cjs/useSheetController.cjs +35 -33
  67. package/dist/cjs/useSheetController.native.js +37 -35
  68. package/dist/cjs/useSheetController.native.js.map +1 -1
  69. package/dist/cjs/useSheetOffscreenSize.cjs +35 -23
  70. package/dist/cjs/useSheetOffscreenSize.native.js +36 -27
  71. package/dist/cjs/useSheetOffscreenSize.native.js.map +1 -1
  72. package/dist/cjs/useSheetOpenState.cjs +28 -25
  73. package/dist/cjs/useSheetOpenState.native.js +39 -37
  74. package/dist/cjs/useSheetOpenState.native.js.map +1 -1
  75. package/dist/cjs/useSheetProviderProps.cjs +129 -81
  76. package/dist/cjs/useSheetProviderProps.native.js +165 -122
  77. package/dist/cjs/useSheetProviderProps.native.js.map +1 -1
  78. package/dist/cjs/useSheetScrollViewGestures.cjs +124 -81
  79. package/dist/cjs/useSheetScrollViewGestures.native.js +128 -79
  80. package/dist/cjs/useSheetScrollViewGestures.native.js.map +1 -1
  81. package/dist/esm/GestureDetectorWrapper.mjs +12 -8
  82. package/dist/esm/GestureDetectorWrapper.mjs.map +1 -1
  83. package/dist/esm/GestureDetectorWrapper.native.js +18 -15
  84. package/dist/esm/GestureDetectorWrapper.native.js.map +1 -1
  85. package/dist/esm/GestureSheetContext.native.js +14 -14
  86. package/dist/esm/GestureSheetContext.native.js.map +1 -1
  87. package/dist/esm/Sheet.mjs +70 -70
  88. package/dist/esm/Sheet.mjs.map +1 -1
  89. package/dist/esm/Sheet.native.js +70 -70
  90. package/dist/esm/Sheet.native.js.map +1 -1
  91. package/dist/esm/SheetContext.mjs +2 -2
  92. package/dist/esm/SheetContext.mjs.map +1 -1
  93. package/dist/esm/SheetContext.native.js +2 -2
  94. package/dist/esm/SheetContext.native.js.map +1 -1
  95. package/dist/esm/SheetController.mjs +12 -6
  96. package/dist/esm/SheetController.mjs.map +1 -1
  97. package/dist/esm/SheetController.native.js +18 -12
  98. package/dist/esm/SheetController.native.js.map +1 -1
  99. package/dist/esm/SheetImplementationCustom.mjs +503 -389
  100. package/dist/esm/SheetImplementationCustom.mjs.map +1 -1
  101. package/dist/esm/SheetImplementationCustom.native.js +523 -434
  102. package/dist/esm/SheetImplementationCustom.native.js.map +1 -1
  103. package/dist/esm/SheetScrollView.mjs +133 -99
  104. package/dist/esm/SheetScrollView.mjs.map +1 -1
  105. package/dist/esm/SheetScrollView.native.js +155 -131
  106. package/dist/esm/SheetScrollView.native.js.map +1 -1
  107. package/dist/esm/constants.mjs +4 -4
  108. package/dist/esm/constants.mjs.map +1 -1
  109. package/dist/esm/constants.native.js +4 -4
  110. package/dist/esm/constants.native.js.map +1 -1
  111. package/dist/esm/contexts.mjs +3 -3
  112. package/dist/esm/contexts.mjs.map +1 -1
  113. package/dist/esm/contexts.native.js +3 -3
  114. package/dist/esm/contexts.native.js.map +1 -1
  115. package/dist/esm/createSheet.mjs +130 -133
  116. package/dist/esm/createSheet.mjs.map +1 -1
  117. package/dist/esm/createSheet.native.js +142 -152
  118. package/dist/esm/createSheet.native.js.map +1 -1
  119. package/dist/esm/helpers.mjs +5 -3
  120. package/dist/esm/helpers.mjs.map +1 -1
  121. package/dist/esm/helpers.native.js +5 -3
  122. package/dist/esm/helpers.native.js.map +1 -1
  123. package/dist/esm/index.js +11 -11
  124. package/dist/esm/index.js.map +1 -6
  125. package/dist/esm/nativeSheet.mjs +45 -38
  126. package/dist/esm/nativeSheet.mjs.map +1 -1
  127. package/dist/esm/nativeSheet.native.js +51 -48
  128. package/dist/esm/nativeSheet.native.js.map +1 -1
  129. package/dist/esm/setupGestureHandler.mjs +12 -8
  130. package/dist/esm/setupGestureHandler.mjs.map +1 -1
  131. package/dist/esm/setupGestureHandler.native.js +12 -9
  132. package/dist/esm/setupGestureHandler.native.js.map +1 -1
  133. package/dist/esm/useGestureHandlerPan.mjs +167 -99
  134. package/dist/esm/useGestureHandlerPan.mjs.map +1 -1
  135. package/dist/esm/useGestureHandlerPan.native.js +168 -102
  136. package/dist/esm/useGestureHandlerPan.native.js.map +1 -1
  137. package/dist/esm/useKeyboardControllerSheet.mjs +3 -3
  138. package/dist/esm/useKeyboardControllerSheet.mjs.map +1 -1
  139. package/dist/esm/useKeyboardControllerSheet.native.js +85 -69
  140. package/dist/esm/useKeyboardControllerSheet.native.js.map +1 -1
  141. package/dist/esm/useSheetController.mjs +11 -11
  142. package/dist/esm/useSheetController.mjs.map +1 -1
  143. package/dist/esm/useSheetController.native.js +11 -11
  144. package/dist/esm/useSheetController.native.js.map +1 -1
  145. package/dist/esm/useSheetOffscreenSize.mjs +23 -13
  146. package/dist/esm/useSheetOffscreenSize.mjs.map +1 -1
  147. package/dist/esm/useSheetOffscreenSize.native.js +24 -17
  148. package/dist/esm/useSheetOffscreenSize.native.js.map +1 -1
  149. package/dist/esm/useSheetOpenState.mjs +14 -13
  150. package/dist/esm/useSheetOpenState.mjs.map +1 -1
  151. package/dist/esm/useSheetOpenState.native.js +17 -17
  152. package/dist/esm/useSheetOpenState.native.js.map +1 -1
  153. package/dist/esm/useSheetProviderProps.mjs +101 -55
  154. package/dist/esm/useSheetProviderProps.mjs.map +1 -1
  155. package/dist/esm/useSheetProviderProps.native.js +137 -96
  156. package/dist/esm/useSheetProviderProps.native.js.map +1 -1
  157. package/dist/esm/useSheetScrollViewGestures.mjs +112 -71
  158. package/dist/esm/useSheetScrollViewGestures.mjs.map +1 -1
  159. package/dist/esm/useSheetScrollViewGestures.native.js +116 -69
  160. package/dist/esm/useSheetScrollViewGestures.native.js.map +1 -1
  161. package/dist/jsx/GestureDetectorWrapper.mjs +12 -8
  162. package/dist/jsx/GestureDetectorWrapper.mjs.map +1 -1
  163. package/dist/jsx/GestureDetectorWrapper.native.js +33 -28
  164. package/dist/jsx/GestureDetectorWrapper.native.js.map +1 -1
  165. package/dist/jsx/GestureSheetContext.native.js +29 -27
  166. package/dist/jsx/GestureSheetContext.native.js.map +1 -1
  167. package/dist/jsx/Sheet.mjs +70 -70
  168. package/dist/jsx/Sheet.mjs.map +1 -1
  169. package/dist/jsx/Sheet.native.js +88 -86
  170. package/dist/jsx/Sheet.native.js.map +1 -1
  171. package/dist/jsx/SheetContext.mjs +2 -2
  172. package/dist/jsx/SheetContext.mjs.map +1 -1
  173. package/dist/jsx/SheetContext.native.js +16 -14
  174. package/dist/jsx/SheetContext.native.js.map +1 -1
  175. package/dist/jsx/SheetController.mjs +12 -6
  176. package/dist/jsx/SheetController.mjs.map +1 -1
  177. package/dist/jsx/SheetController.native.js +62 -54
  178. package/dist/jsx/SheetController.native.js.map +1 -1
  179. package/dist/jsx/SheetImplementationCustom.mjs +503 -389
  180. package/dist/jsx/SheetImplementationCustom.mjs.map +1 -1
  181. package/dist/jsx/SheetImplementationCustom.native.js +569 -474
  182. package/dist/jsx/SheetImplementationCustom.native.js.map +1 -1
  183. package/dist/jsx/SheetScrollView.mjs +133 -99
  184. package/dist/jsx/SheetScrollView.mjs.map +1 -1
  185. package/dist/jsx/SheetScrollView.native.js +189 -163
  186. package/dist/jsx/SheetScrollView.native.js.map +1 -1
  187. package/dist/jsx/constants.mjs +4 -4
  188. package/dist/jsx/constants.mjs.map +1 -1
  189. package/dist/jsx/constants.native.js +16 -14
  190. package/dist/jsx/constants.native.js.map +1 -1
  191. package/dist/jsx/contexts.mjs +3 -3
  192. package/dist/jsx/contexts.mjs.map +1 -1
  193. package/dist/jsx/contexts.native.js +29 -27
  194. package/dist/jsx/contexts.native.js.map +1 -1
  195. package/dist/jsx/controller.native.js +14 -12
  196. package/dist/jsx/createSheet.mjs +130 -133
  197. package/dist/jsx/createSheet.mjs.map +1 -1
  198. package/dist/jsx/createSheet.native.js +172 -180
  199. package/dist/jsx/createSheet.native.js.map +1 -1
  200. package/dist/jsx/gestureState.native.js +12 -10
  201. package/dist/jsx/gestureState.native.js.map +1 -1
  202. package/dist/jsx/helpers.mjs +5 -3
  203. package/dist/jsx/helpers.mjs.map +1 -1
  204. package/dist/jsx/helpers.native.js +17 -13
  205. package/dist/jsx/helpers.native.js.map +1 -1
  206. package/dist/jsx/index.js +11 -11
  207. package/dist/jsx/index.js.map +1 -6
  208. package/dist/jsx/index.native.js +7 -5
  209. package/dist/jsx/index.native.js.map +1 -1
  210. package/dist/jsx/nativeSheet.mjs +45 -38
  211. package/dist/jsx/nativeSheet.mjs.map +1 -1
  212. package/dist/jsx/nativeSheet.native.js +73 -68
  213. package/dist/jsx/nativeSheet.native.js.map +1 -1
  214. package/dist/jsx/setupGestureHandler.mjs +12 -8
  215. package/dist/jsx/setupGestureHandler.mjs.map +1 -1
  216. package/dist/jsx/setupGestureHandler.native.js +24 -19
  217. package/dist/jsx/setupGestureHandler.native.js.map +1 -1
  218. package/dist/jsx/types.native.js +7 -5
  219. package/dist/jsx/useGestureHandlerPan.mjs +167 -99
  220. package/dist/jsx/useGestureHandlerPan.mjs.map +1 -1
  221. package/dist/jsx/useGestureHandlerPan.native.js +183 -115
  222. package/dist/jsx/useGestureHandlerPan.native.js.map +1 -1
  223. package/dist/jsx/useKeyboardControllerSheet.mjs +3 -3
  224. package/dist/jsx/useKeyboardControllerSheet.mjs.map +1 -1
  225. package/dist/jsx/useKeyboardControllerSheet.native.js +100 -82
  226. package/dist/jsx/useKeyboardControllerSheet.native.js.map +1 -1
  227. package/dist/jsx/useSheet.native.js +16 -14
  228. package/dist/jsx/useSheetController.mjs +11 -11
  229. package/dist/jsx/useSheetController.mjs.map +1 -1
  230. package/dist/jsx/useSheetController.native.js +37 -35
  231. package/dist/jsx/useSheetController.native.js.map +1 -1
  232. package/dist/jsx/useSheetOffscreenSize.mjs +23 -13
  233. package/dist/jsx/useSheetOffscreenSize.mjs.map +1 -1
  234. package/dist/jsx/useSheetOffscreenSize.native.js +36 -27
  235. package/dist/jsx/useSheetOffscreenSize.native.js.map +1 -1
  236. package/dist/jsx/useSheetOpenState.mjs +14 -13
  237. package/dist/jsx/useSheetOpenState.mjs.map +1 -1
  238. package/dist/jsx/useSheetOpenState.native.js +39 -37
  239. package/dist/jsx/useSheetOpenState.native.js.map +1 -1
  240. package/dist/jsx/useSheetProviderProps.mjs +101 -55
  241. package/dist/jsx/useSheetProviderProps.mjs.map +1 -1
  242. package/dist/jsx/useSheetProviderProps.native.js +165 -122
  243. package/dist/jsx/useSheetProviderProps.native.js.map +1 -1
  244. package/dist/jsx/useSheetScrollViewGestures.mjs +112 -71
  245. package/dist/jsx/useSheetScrollViewGestures.mjs.map +1 -1
  246. package/dist/jsx/useSheetScrollViewGestures.native.js +128 -79
  247. package/dist/jsx/useSheetScrollViewGestures.native.js.map +1 -1
  248. package/next.md +78 -0
  249. package/package.json +31 -46
  250. package/setup-gesture-handler/index.cjs +2 -0
  251. package/setup-gesture-handler/index.js +2 -0
  252. package/setup-gesture-handler/index.native.cjs +2 -0
  253. package/setup-gesture-handler/index.native.js +2 -0
  254. package/setup-gesture-handler.cjs +1 -0
  255. package/src/SheetController.tsx +4 -1
  256. package/src/SheetImplementationCustom.tsx +87 -45
  257. package/src/types.tsx +5 -0
  258. package/src/useGestureHandlerPan.tsx +5 -3
  259. package/src/useSheetController.tsx +4 -0
  260. package/tsconfig.json +56 -0
  261. package/types/Sheet.d.ts +3 -0
  262. package/types/Sheet.d.ts.map +1 -1
  263. package/types/SheetController.d.ts +1 -1
  264. package/types/SheetController.d.ts.map +1 -1
  265. package/types/SheetImplementationCustom.d.ts +3 -0
  266. package/types/SheetImplementationCustom.d.ts.map +1 -1
  267. package/types/createSheet.d.ts +3 -0
  268. package/types/createSheet.d.ts.map +1 -1
  269. package/types/types.d.ts +6 -0
  270. package/types/types.d.ts.map +1 -1
  271. package/types/useGestureHandlerPan.d.ts.map +1 -1
  272. package/types/useSheetController.d.ts +3 -0
  273. package/types/useSheetController.d.ts.map +1 -1
  274. package/dist/cjs/GestureDetectorWrapper.js +0 -29
  275. package/dist/cjs/GestureDetectorWrapper.js.map +0 -6
  276. package/dist/cjs/GestureSheetContext.js +0 -43
  277. package/dist/cjs/GestureSheetContext.js.map +0 -6
  278. package/dist/cjs/Sheet.js +0 -104
  279. package/dist/cjs/Sheet.js.map +0 -6
  280. package/dist/cjs/SheetContext.js +0 -28
  281. package/dist/cjs/SheetContext.js.map +0 -6
  282. package/dist/cjs/SheetController.js +0 -52
  283. package/dist/cjs/SheetController.js.map +0 -6
  284. package/dist/cjs/SheetImplementationCustom.js +0 -393
  285. package/dist/cjs/SheetImplementationCustom.js.map +0 -6
  286. package/dist/cjs/SheetScrollView.js +0 -137
  287. package/dist/cjs/SheetScrollView.js.map +0 -6
  288. package/dist/cjs/constants.js +0 -24
  289. package/dist/cjs/constants.js.map +0 -6
  290. package/dist/cjs/contexts.js +0 -33
  291. package/dist/cjs/contexts.js.map +0 -6
  292. package/dist/cjs/controller.js +0 -23
  293. package/dist/cjs/controller.js.map +0 -6
  294. package/dist/cjs/createSheet.js +0 -152
  295. package/dist/cjs/createSheet.js.map +0 -6
  296. package/dist/cjs/gestureState.js +0 -34
  297. package/dist/cjs/gestureState.js.map +0 -6
  298. package/dist/cjs/helpers.js +0 -26
  299. package/dist/cjs/helpers.js.map +0 -6
  300. package/dist/cjs/index.js +0 -25
  301. package/dist/cjs/index.js.map +0 -6
  302. package/dist/cjs/nativeSheet.js +0 -56
  303. package/dist/cjs/nativeSheet.js.map +0 -6
  304. package/dist/cjs/setupGestureHandler.js +0 -38
  305. package/dist/cjs/setupGestureHandler.js.map +0 -6
  306. package/dist/cjs/types.js +0 -14
  307. package/dist/cjs/types.js.map +0 -6
  308. package/dist/cjs/useGestureHandlerPan.js +0 -126
  309. package/dist/cjs/useGestureHandlerPan.js.map +0 -6
  310. package/dist/cjs/useKeyboardControllerSheet.js +0 -34
  311. package/dist/cjs/useKeyboardControllerSheet.js.map +0 -6
  312. package/dist/cjs/useSheet.js +0 -22
  313. package/dist/cjs/useSheet.js.map +0 -6
  314. package/dist/cjs/useSheetController.js +0 -39
  315. package/dist/cjs/useSheetController.js.map +0 -6
  316. package/dist/cjs/useSheetOffscreenSize.js +0 -43
  317. package/dist/cjs/useSheetOffscreenSize.js.map +0 -6
  318. package/dist/cjs/useSheetOpenState.js +0 -37
  319. package/dist/cjs/useSheetOpenState.js.map +0 -6
  320. package/dist/cjs/useSheetProviderProps.js +0 -130
  321. package/dist/cjs/useSheetProviderProps.js.map +0 -6
  322. package/dist/cjs/useSheetScrollViewGestures.js +0 -102
  323. package/dist/cjs/useSheetScrollViewGestures.js.map +0 -6
  324. package/dist/esm/GestureDetectorWrapper.js +0 -15
  325. package/dist/esm/GestureDetectorWrapper.js.map +0 -6
  326. package/dist/esm/GestureSheetContext.js +0 -28
  327. package/dist/esm/GestureSheetContext.js.map +0 -6
  328. package/dist/esm/Sheet.js +0 -92
  329. package/dist/esm/Sheet.js.map +0 -6
  330. package/dist/esm/SheetContext.js +0 -13
  331. package/dist/esm/SheetContext.js.map +0 -6
  332. package/dist/esm/SheetController.js +0 -31
  333. package/dist/esm/SheetController.js.map +0 -6
  334. package/dist/esm/SheetImplementationCustom.js +0 -395
  335. package/dist/esm/SheetImplementationCustom.js.map +0 -6
  336. package/dist/esm/SheetScrollView.js +0 -122
  337. package/dist/esm/SheetScrollView.js.map +0 -6
  338. package/dist/esm/constants.js +0 -8
  339. package/dist/esm/constants.js.map +0 -6
  340. package/dist/esm/contexts.js +0 -9
  341. package/dist/esm/contexts.js.map +0 -6
  342. package/dist/esm/controller.js +0 -11
  343. package/dist/esm/controller.js.map +0 -6
  344. package/dist/esm/createSheet.js +0 -153
  345. package/dist/esm/createSheet.js.map +0 -6
  346. package/dist/esm/gestureState.js +0 -18
  347. package/dist/esm/gestureState.js.map +0 -6
  348. package/dist/esm/helpers.js +0 -10
  349. package/dist/esm/helpers.js.map +0 -6
  350. package/dist/esm/nativeSheet.js +0 -46
  351. package/dist/esm/nativeSheet.js.map +0 -6
  352. package/dist/esm/setupGestureHandler.js +0 -22
  353. package/dist/esm/setupGestureHandler.js.map +0 -6
  354. package/dist/esm/types.js +0 -1
  355. package/dist/esm/types.js.map +0 -6
  356. package/dist/esm/useGestureHandlerPan.js +0 -111
  357. package/dist/esm/useGestureHandlerPan.js.map +0 -6
  358. package/dist/esm/useKeyboardControllerSheet.js +0 -18
  359. package/dist/esm/useKeyboardControllerSheet.js.map +0 -6
  360. package/dist/esm/useSheet.js +0 -6
  361. package/dist/esm/useSheet.js.map +0 -6
  362. package/dist/esm/useSheetController.js +0 -15
  363. package/dist/esm/useSheetController.js.map +0 -6
  364. package/dist/esm/useSheetOffscreenSize.js +0 -27
  365. package/dist/esm/useSheetOffscreenSize.js.map +0 -6
  366. package/dist/esm/useSheetOpenState.js +0 -22
  367. package/dist/esm/useSheetOpenState.js.map +0 -6
  368. package/dist/esm/useSheetProviderProps.js +0 -109
  369. package/dist/esm/useSheetProviderProps.js.map +0 -6
  370. package/dist/esm/useSheetScrollViewGestures.js +0 -86
  371. package/dist/esm/useSheetScrollViewGestures.js.map +0 -6
  372. package/dist/jsx/GestureDetectorWrapper.js +0 -15
  373. package/dist/jsx/GestureDetectorWrapper.js.map +0 -6
  374. package/dist/jsx/GestureSheetContext.js +0 -28
  375. package/dist/jsx/GestureSheetContext.js.map +0 -6
  376. package/dist/jsx/Sheet.js +0 -92
  377. package/dist/jsx/Sheet.js.map +0 -6
  378. package/dist/jsx/SheetContext.js +0 -13
  379. package/dist/jsx/SheetContext.js.map +0 -6
  380. package/dist/jsx/SheetController.js +0 -31
  381. package/dist/jsx/SheetController.js.map +0 -6
  382. package/dist/jsx/SheetImplementationCustom.js +0 -395
  383. package/dist/jsx/SheetImplementationCustom.js.map +0 -6
  384. package/dist/jsx/SheetScrollView.js +0 -122
  385. package/dist/jsx/SheetScrollView.js.map +0 -6
  386. package/dist/jsx/constants.js +0 -8
  387. package/dist/jsx/constants.js.map +0 -6
  388. package/dist/jsx/contexts.js +0 -9
  389. package/dist/jsx/contexts.js.map +0 -6
  390. package/dist/jsx/controller.js +0 -11
  391. package/dist/jsx/controller.js.map +0 -6
  392. package/dist/jsx/createSheet.js +0 -153
  393. package/dist/jsx/createSheet.js.map +0 -6
  394. package/dist/jsx/gestureState.js +0 -18
  395. package/dist/jsx/gestureState.js.map +0 -6
  396. package/dist/jsx/helpers.js +0 -10
  397. package/dist/jsx/helpers.js.map +0 -6
  398. package/dist/jsx/nativeSheet.js +0 -46
  399. package/dist/jsx/nativeSheet.js.map +0 -6
  400. package/dist/jsx/setupGestureHandler.js +0 -22
  401. package/dist/jsx/setupGestureHandler.js.map +0 -6
  402. package/dist/jsx/types.js +0 -1
  403. package/dist/jsx/types.js.map +0 -6
  404. package/dist/jsx/useGestureHandlerPan.js +0 -111
  405. package/dist/jsx/useGestureHandlerPan.js.map +0 -6
  406. package/dist/jsx/useKeyboardControllerSheet.js +0 -18
  407. package/dist/jsx/useKeyboardControllerSheet.js.map +0 -6
  408. package/dist/jsx/useSheet.js +0 -6
  409. package/dist/jsx/useSheet.js.map +0 -6
  410. package/dist/jsx/useSheetController.js +0 -15
  411. package/dist/jsx/useSheetController.js.map +0 -6
  412. package/dist/jsx/useSheetOffscreenSize.js +0 -27
  413. package/dist/jsx/useSheetOffscreenSize.js.map +0 -6
  414. package/dist/jsx/useSheetOpenState.js +0 -22
  415. package/dist/jsx/useSheetOpenState.js.map +0 -6
  416. package/dist/jsx/useSheetProviderProps.js +0 -109
  417. package/dist/jsx/useSheetProviderProps.js.map +0 -6
  418. package/dist/jsx/useSheetScrollViewGestures.js +0 -86
  419. package/dist/jsx/useSheetScrollViewGestures.js.map +0 -6
  420. package/types/GestureDetectorWrapper.native.d.ts +0 -14
  421. package/types/GestureDetectorWrapper.native.d.ts.map +0 -1
  422. package/types/gestureState.native.d.ts +0 -12
  423. package/types/gestureState.native.d.ts.map +0 -1
  424. package/types/setupGestureHandler.native.d.ts +0 -41
  425. package/types/setupGestureHandler.native.d.ts.map +0 -1
  426. package/types/useGestureHandlerPan.native.d.ts +0 -33
  427. package/types/useGestureHandlerPan.native.d.ts.map +0 -1
  428. package/types/useSheetScrollViewGestures.web.d.ts +0 -15
  429. package/types/useSheetScrollViewGestures.web.d.ts.map +0 -1
@@ -4,150 +4,193 @@ var __create = Object.create;
4
4
  var __defProp = Object.defineProperty;
5
5
  var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
6
6
  var __getOwnPropNames = Object.getOwnPropertyNames;
7
- var __getProtoOf = Object.getPrototypeOf,
8
- __hasOwnProp = Object.prototype.hasOwnProperty;
7
+ var __getProtoOf = Object.getPrototypeOf;
8
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
9
9
  var __export = (target, all) => {
10
- for (var name in all) __defProp(target, name, {
11
- get: all[name],
12
- enumerable: !0
13
- });
14
- },
15
- __copyProps = (to, from, except, desc) => {
16
- if (from && typeof from == "object" || typeof from == "function") for (let key of __getOwnPropNames(from)) !__hasOwnProp.call(to, key) && key !== except && __defProp(to, key, {
10
+ for (var name in all) __defProp(target, name, {
11
+ get: all[name],
12
+ enumerable: true
13
+ });
14
+ };
15
+ var __copyProps = (to, from, except, desc) => {
16
+ if (from && typeof from === "object" || typeof from === "function") {
17
+ for (let key of __getOwnPropNames(from)) if (!__hasOwnProp.call(to, key) && key !== except) __defProp(to, key, {
17
18
  get: () => from[key],
18
19
  enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable
19
20
  });
20
- return to;
21
- };
21
+ }
22
+ return to;
23
+ };
22
24
  var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
23
- // If the importer is in node compatibility mode or this is not an ESM
24
- // file that has been converted to a CommonJS file using a Babel-
25
- // compatible transform (i.e. "__esModule" has not been set), then set
26
- // "default" to the CommonJS "module.exports" for node compatibility.
27
- isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", {
28
- value: mod,
29
- enumerable: !0
30
- }) : target, mod)),
31
- __toCommonJS = mod => __copyProps(__defProp({}, "__esModule", {
32
- value: !0
33
- }), mod);
25
+ // If the importer is in node compatibility mode or this is not an ESM
26
+ // file that has been converted to a CommonJS file using a Babel-
27
+ // compatible transform (i.e. "__esModule" has not been set), then set
28
+ // "default" to the CommonJS "module.exports" for node compatibility.
29
+ isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", {
30
+ value: mod,
31
+ enumerable: true
32
+ }) : target, mod));
33
+ var __toCommonJS = mod => __copyProps(__defProp({}, "__esModule", {
34
+ value: true
35
+ }), mod);
34
36
  var useSheetProviderProps_exports = {};
35
37
  __export(useSheetProviderProps_exports, {
36
38
  useSheetProviderProps: () => useSheetProviderProps
37
39
  });
38
40
  module.exports = __toCommonJS(useSheetProviderProps_exports);
39
- var import_react = __toESM(require("react"), 1),
40
- import_core = require("@tamagui/core"),
41
- import_use_constant = require("@tamagui/use-constant"),
42
- import_use_controllable_state = require("@tamagui/use-controllable-state");
41
+ var import_react = __toESM(require("react"), 1);
42
+ var import_core = require("@tamagui/core");
43
+ var import_use_constant = require("@tamagui/use-constant");
44
+ var import_use_controllable_state = require("@tamagui/use-controllable-state");
43
45
  function useSheetProviderProps(props, state) {
44
- var options = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : {},
45
- handleRef = import_react.default.useRef(null),
46
- contentRef = import_react.default.useRef(null),
47
- [frameSize, setFrameSize] = import_react.default.useState(0),
48
- [maxContentSize, setMaxContentSize] = import_react.default.useState(0),
49
- _props_snapPointsMode,
50
- snapPointsMode = (_props_snapPointsMode = props.snapPointsMode) !== null && _props_snapPointsMode !== void 0 ? _props_snapPointsMode : "percent",
51
- _props_snapPoints,
52
- snapPointsProp = (_props_snapPoints = props.snapPoints) !== null && _props_snapPoints !== void 0 ? _props_snapPoints : snapPointsMode === "percent" ? [80] : snapPointsMode === "constant" ? [256] : ["fit"],
53
- hasFit = snapPointsProp[0] === "fit",
54
- snapPoints = import_react.default.useMemo(function () {
55
- return props.dismissOnSnapToBottom ? [...snapPointsProp, 0] : snapPointsProp;
56
- }, [JSON.stringify(snapPointsProp), props.dismissOnSnapToBottom]),
57
- [position_, setPositionImmediate] = (0, import_use_controllable_state.useControllableState)({
58
- prop: props.position,
59
- defaultProp: props.defaultPosition || (state.open ? 0 : -1),
60
- onChange: props.onPositionChange,
61
- strategy: "most-recent-wins"
62
- }),
63
- position = state.open === !1 ? -1 : position_,
64
- {
65
- open
66
- } = state,
67
- setPosition = import_react.default.useCallback(function (next) {
68
- props.dismissOnSnapToBottom && next === snapPoints.length - 1 ? state.setOpen(!1) : setPositionImmediate(next);
69
- }, [props.dismissOnSnapToBottom, snapPoints.length, setPositionImmediate, state.setOpen]);
70
- process.env.NODE_ENV === "development" && (snapPointsMode === "mixed" && snapPoints.some(function (p) {
71
- if (typeof p == "string") {
72
- if (p === "fit") return !1;
73
- if (p.endsWith("%")) {
74
- var n = Number(p.slice(0, -1));
75
- return n < 0 || n > 100;
46
+ var options = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : {};
47
+ var handleRef = import_react.default.useRef(null);
48
+ var contentRef = import_react.default.useRef(null);
49
+ var [frameSize, setFrameSize] = import_react.default.useState(0);
50
+ var [maxContentSize, setMaxContentSize] = import_react.default.useState(0);
51
+ var _props_snapPointsMode;
52
+ var snapPointsMode = (_props_snapPointsMode = props.snapPointsMode) !== null && _props_snapPointsMode !== void 0 ? _props_snapPointsMode : "percent";
53
+ var _props_snapPoints;
54
+ var snapPointsProp = (_props_snapPoints = props.snapPoints) !== null && _props_snapPoints !== void 0 ? _props_snapPoints : snapPointsMode === "percent" ? [80] : snapPointsMode === "constant" ? [256] : ["fit"];
55
+ var hasFit = snapPointsProp[0] === "fit";
56
+ var snapPoints = import_react.default.useMemo(function () {
57
+ return props.dismissOnSnapToBottom ? [...snapPointsProp, 0] : snapPointsProp;
58
+ }, [JSON.stringify(snapPointsProp), props.dismissOnSnapToBottom]);
59
+ var [position_, setPositionImmediate] = (0, import_use_controllable_state.useControllableState)({
60
+ prop: props.position,
61
+ defaultProp: props.defaultPosition || (state.open ? 0 : -1),
62
+ onChange: props.onPositionChange,
63
+ strategy: "most-recent-wins"
64
+ });
65
+ var position = state.open === false ? -1 : position_;
66
+ var {
67
+ open
68
+ } = state;
69
+ var setPosition = import_react.default.useCallback(function (next) {
70
+ if (props.dismissOnSnapToBottom && next === snapPoints.length - 1) {
71
+ state.setOpen(false);
72
+ } else {
73
+ setPositionImmediate(next);
74
+ }
75
+ }, [props.dismissOnSnapToBottom, snapPoints.length, setPositionImmediate, state.setOpen]);
76
+ if (process.env.NODE_ENV === "development") {
77
+ if (snapPointsMode === "mixed" && snapPoints.some(function (p) {
78
+ if (typeof p === "string") {
79
+ if (p === "fit") {
80
+ return false;
81
+ }
82
+ if (p.endsWith("%")) {
83
+ var n = Number(p.slice(0, -1));
84
+ return n < 0 || n > 100;
85
+ }
86
+ return true;
76
87
  }
77
- return !0;
88
+ return typeof p !== "number" || p < 0;
89
+ })) {
90
+ console.warn('\u26A0\uFE0F Invalid snapPoint given, snapPoints must be positive numeric values, string percentages between 0-100%, or "fit" when snapPointsMode is mixed');
91
+ }
92
+ if (snapPointsMode === "mixed" && snapPoints.indexOf("fit") > 0) {
93
+ console.warn('\u26A0\uFE0F Invalid snapPoint given, "fit" must be the first/largest snap point when snapPointsMode is mixed');
94
+ }
95
+ if (snapPointsMode === "fit" && (snapPoints.length !== (props.dismissOnSnapToBottom ? 2 : 1) || snapPoints[0] !== "fit")) {
96
+ console.warn("\u26A0\uFE0F Invalid snapPoint given, there are no snap points when snapPointsMode is fit");
78
97
  }
79
- return typeof p != "number" || p < 0;
80
- }) && console.warn('\u26A0\uFE0F Invalid snapPoint given, snapPoints must be positive numeric values, string percentages between 0-100%, or "fit" when snapPointsMode is mixed'), snapPointsMode === "mixed" && snapPoints.indexOf("fit") > 0 && console.warn('\u26A0\uFE0F Invalid snapPoint given, "fit" must be the first/largest snap point when snapPointsMode is mixed'), snapPointsMode === "fit" && (snapPoints.length !== (props.dismissOnSnapToBottom ? 2 : 1) || snapPoints[0] !== "fit") && console.warn("\u26A0\uFE0F Invalid snapPoint given, there are no snap points when snapPointsMode is fit"), snapPointsMode === "constant" && snapPoints.some(function (p) {
81
- return typeof p != "number" || p < 0;
82
- }) && console.warn("\u26A0\uFE0F Invalid snapPoint given, snapPoints must be positive numeric values when snapPointsMode is constant"), snapPointsMode === "percent" && snapPoints.some(function (p) {
83
- return typeof p != "number" || p < 0 || p > 100;
84
- }) && console.warn("\u26A0\uFE0F Invalid snapPoint given, snapPoints must be numeric values between 0 and 100 when snapPointsMode is percent")), open && props.dismissOnSnapToBottom && position === snapPoints.length - 1 && setPositionImmediate(0);
98
+ if (snapPointsMode === "constant" && snapPoints.some(function (p) {
99
+ return typeof p !== "number" || p < 0;
100
+ })) {
101
+ console.warn("\u26A0\uFE0F Invalid snapPoint given, snapPoints must be positive numeric values when snapPointsMode is constant");
102
+ }
103
+ if (snapPointsMode === "percent" && snapPoints.some(function (p) {
104
+ return typeof p !== "number" || p < 0 || p > 100;
105
+ })) {
106
+ console.warn("\u26A0\uFE0F Invalid snapPoint given, snapPoints must be numeric values between 0 and 100 when snapPointsMode is percent");
107
+ }
108
+ }
109
+ if (open && props.dismissOnSnapToBottom && position === snapPoints.length - 1) {
110
+ setPositionImmediate(0);
111
+ }
85
112
  var shouldSetPositionOpen = open && position < 0;
86
113
  import_react.default.useEffect(function () {
87
- shouldSetPositionOpen && setPosition(0);
114
+ if (shouldSetPositionOpen) {
115
+ setPosition(0);
116
+ }
88
117
  }, [setPosition, shouldSetPositionOpen]);
89
118
  var {
90
119
  animationDriver
91
120
  } = (0, import_core.useConfiguration)();
92
- if (!animationDriver) throw new Error(process.env.NODE_ENV === "production" ? "\u274C 008" : "Must set animations in tamagui.config.ts");
121
+ if (!animationDriver) {
122
+ throw new Error(process.env.NODE_ENV === "production" ? `\u274C 008` : "Must set animations in tamagui.config.ts");
123
+ }
93
124
  var scrollBridge = (0, import_use_constant.useConstant)(function () {
94
- var parentDragListeners = /* @__PURE__ */new Set(),
95
- bridge = {
96
- hasScrollableContent: !1,
97
- enabled: !1,
98
- y: 0,
99
- paneY: 0,
100
- paneMinY: 0,
101
- scrollStartY: -1,
102
- drag: function () {},
103
- release: function () {},
104
- scrollLock: !1,
105
- isParentDragging: !1,
106
- onParentDragging: function (cb) {
107
- return parentDragListeners.add(cb), function () {
108
- parentDragListeners.delete(cb);
109
- };
110
- },
111
- setParentDragging: function (val) {
112
- val !== bridge.isParentDragging && (bridge.isParentDragging = val, parentDragListeners.forEach(function (cb) {
113
- return cb(val);
114
- }));
115
- }
125
+ var parentDragListeners = /* @__PURE__ */new Set();
126
+ var bridge = {
127
+ hasScrollableContent: false,
128
+ enabled: false,
129
+ y: 0,
130
+ paneY: 0,
131
+ paneMinY: 0,
132
+ scrollStartY: -1,
133
+ drag: function () {},
134
+ release: function () {},
135
+ scrollLock: false,
136
+ isParentDragging: false,
137
+ onParentDragging: function (cb) {
138
+ parentDragListeners.add(cb);
139
+ return function () {
140
+ parentDragListeners.delete(cb);
116
141
  };
117
- return bridge;
118
- }),
119
- disableRemoveScroll;
120
- props.disableRemoveScroll !== void 0 ? disableRemoveScroll = props.disableRemoveScroll || !open || !props.modal : props.forceRemoveScrollEnabled !== void 0 ? (process.env.NODE_ENV === "development" && console.warn("[Sheet] forceRemoveScrollEnabled is deprecated. Use disableRemoveScroll instead."), disableRemoveScroll = !props.forceRemoveScrollEnabled) : disableRemoveScroll = !open || !props.modal;
121
- var maxSnapPoint = snapPoints[0],
122
- screenSize = snapPointsMode === "percent" ? frameSize / ((typeof maxSnapPoint == "number" ? maxSnapPoint : 100) / 100) : maxContentSize,
123
- _props_dismissOnOverlayPress,
124
- _props_dismissOnSnapToBottom,
125
- providerProps = {
126
- screenSize,
127
- maxSnapPoint,
128
- disableRemoveScroll,
129
- scrollBridge,
130
- modal: !!props.modal,
131
- open: state.open,
132
- setOpen: state.setOpen,
133
- hidden: !!state.isHidden,
134
- contentRef,
135
- handleRef,
136
- frameSize,
137
- setFrameSize,
138
- dismissOnOverlayPress: (_props_dismissOnOverlayPress = props.dismissOnOverlayPress) !== null && _props_dismissOnOverlayPress !== void 0 ? _props_dismissOnOverlayPress : !0,
139
- dismissOnSnapToBottom: (_props_dismissOnSnapToBottom = props.dismissOnSnapToBottom) !== null && _props_dismissOnSnapToBottom !== void 0 ? _props_dismissOnSnapToBottom : !1,
140
- onOverlayComponent: options.onOverlayComponent,
141
- scope: props.__scopeSheet,
142
- hasFit,
143
- position,
144
- snapPoints,
145
- snapPointsMode,
146
- setMaxContentSize,
147
- setPosition,
148
- setPositionImmediate,
149
- onlyShowFrame: !1
142
+ },
143
+ setParentDragging: function (val) {
144
+ if (val !== bridge.isParentDragging) {
145
+ bridge.isParentDragging = val;
146
+ parentDragListeners.forEach(function (cb) {
147
+ return cb(val);
148
+ });
149
+ }
150
+ }
150
151
  };
152
+ return bridge;
153
+ });
154
+ var disableRemoveScroll;
155
+ if (props.disableRemoveScroll !== void 0) {
156
+ disableRemoveScroll = props.disableRemoveScroll || !open || !props.modal;
157
+ } else if (props.forceRemoveScrollEnabled !== void 0) {
158
+ if (process.env.NODE_ENV === "development") {
159
+ console.warn("[Sheet] forceRemoveScrollEnabled is deprecated. Use disableRemoveScroll instead.");
160
+ }
161
+ disableRemoveScroll = !props.forceRemoveScrollEnabled;
162
+ } else {
163
+ disableRemoveScroll = !open || !props.modal;
164
+ }
165
+ var maxSnapPoint = snapPoints[0];
166
+ var screenSize = snapPointsMode === "percent" ? frameSize / ((typeof maxSnapPoint === "number" ? maxSnapPoint : 100) / 100) : maxContentSize;
167
+ var _props_dismissOnOverlayPress, _props_dismissOnSnapToBottom;
168
+ var providerProps = {
169
+ screenSize,
170
+ maxSnapPoint,
171
+ disableRemoveScroll,
172
+ scrollBridge,
173
+ modal: !!props.modal,
174
+ open: state.open,
175
+ setOpen: state.setOpen,
176
+ hidden: !!state.isHidden,
177
+ contentRef,
178
+ handleRef,
179
+ frameSize,
180
+ setFrameSize,
181
+ dismissOnOverlayPress: (_props_dismissOnOverlayPress = props.dismissOnOverlayPress) !== null && _props_dismissOnOverlayPress !== void 0 ? _props_dismissOnOverlayPress : true,
182
+ dismissOnSnapToBottom: (_props_dismissOnSnapToBottom = props.dismissOnSnapToBottom) !== null && _props_dismissOnSnapToBottom !== void 0 ? _props_dismissOnSnapToBottom : false,
183
+ onOverlayComponent: options.onOverlayComponent,
184
+ scope: props.__scopeSheet,
185
+ hasFit,
186
+ position,
187
+ snapPoints,
188
+ snapPointsMode,
189
+ setMaxContentSize,
190
+ setPosition,
191
+ setPositionImmediate,
192
+ onlyShowFrame: false
193
+ };
151
194
  return providerProps;
152
195
  }
153
196
  //# sourceMappingURL=useSheetProviderProps.native.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["__toCommonJS","mod","__copyProps","__defProp","value","useSheetProviderProps_exports","__export","useSheetProviderProps","module","exports","import_react","__toESM","require","import_core","import_use_constant","import_use_controllable_state","props","state","options","arguments","length","handleRef","default","useRef","contentRef","frameSize","setFrameSize","useState","maxContentSize","setMaxContentSize","_props_snapPointsMode","snapPointsMode","_props_snapPoints","snapPointsProp","snapPoints","hasFit","useMemo","dismissOnSnapToBottom","JSON","stringify","position_","setPositionImmediate","useControllableState","prop","position","defaultProp","defaultPosition","open","onChange","onPositionChange","strategy","setPosition","useCallback","next","setOpen","process","env","NODE_ENV","some","p","endsWith","n","Number","slice","console","warn","indexOf","shouldSetPositionOpen","useEffect","animationDriver","useConfiguration","Error","scrollBridge","useConstant","parentDragListeners","Set","bridge","hasScrollableContent","enabled","y","paneY","paneMinY","scrollStartY","drag","release","scrollLock","isParentDragging","onParentDragging","cb","add","delete","setParentDragging","val","forEach","disableRemoveScroll","modal","forceRemoveScrollEnabled","maxSnapPoint","screenSize","_props_dismissOnOverlayPress","_props_dismissOnSnapToBottom","providerProps","hidden","isHidden","dismissOnOverlayPress","onOverlayComponent","scope","__scopeSheet"],"sources":["../../src/useSheetProviderProps.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["__toCommonJS","mod","__copyProps","__defProp","value","useSheetProviderProps_exports","__export","useSheetProviderProps","module","exports","import_react","__toESM","require","import_core","import_use_constant","import_use_controllable_state","props","state","options","arguments","length","handleRef","default","useRef","contentRef","frameSize","setFrameSize","useState","maxContentSize","setMaxContentSize","_props_snapPointsMode","snapPointsMode","_props_snapPoints","snapPointsProp","snapPoints","hasFit","useMemo","dismissOnSnapToBottom","JSON","stringify","position_","setPositionImmediate","useControllableState","prop","position","defaultProp","defaultPosition","open","onChange","onPositionChange","strategy","setPosition","useCallback","next","setOpen","process","env","NODE_ENV","some","p","endsWith","n","Number","slice","console","warn","indexOf","shouldSetPositionOpen","useEffect","animationDriver","useConfiguration","Error","scrollBridge","useConstant","parentDragListeners","Set","bridge","hasScrollableContent","enabled","y","paneY","paneMinY","scrollStartY","drag","release","scrollLock","isParentDragging","onParentDragging","cb","add","delete","setParentDragging","val","forEach","disableRemoveScroll","modal","forceRemoveScrollEnabled","maxSnapPoint","screenSize","_props_dismissOnOverlayPress","_props_dismissOnSnapToBottom","providerProps","hidden","isHidden","dismissOnOverlayPress"],"sources":["../../src/useSheetProviderProps.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
@@ -3,20 +3,22 @@ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
3
3
  var __getOwnPropNames = Object.getOwnPropertyNames;
4
4
  var __hasOwnProp = Object.prototype.hasOwnProperty;
5
5
  var __export = (target, all) => {
6
- for (var name in all) __defProp(target, name, {
7
- get: all[name],
8
- enumerable: !0
9
- });
10
- },
11
- __copyProps = (to, from, except, desc) => {
12
- if (from && typeof from == "object" || typeof from == "function") for (let key of __getOwnPropNames(from)) !__hasOwnProp.call(to, key) && key !== except && __defProp(to, key, {
6
+ for (var name in all) __defProp(target, name, {
7
+ get: all[name],
8
+ enumerable: true
9
+ });
10
+ };
11
+ var __copyProps = (to, from, except, desc) => {
12
+ if (from && typeof from === "object" || typeof from === "function") {
13
+ for (let key of __getOwnPropNames(from)) if (!__hasOwnProp.call(to, key) && key !== except) __defProp(to, key, {
13
14
  get: () => from[key],
14
15
  enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable
15
16
  });
16
- return to;
17
- };
17
+ }
18
+ return to;
19
+ };
18
20
  var __toCommonJS = mod => __copyProps(__defProp({}, "__esModule", {
19
- value: !0
21
+ value: true
20
22
  }), mod);
21
23
  var useSheetScrollViewGestures_exports = {};
22
24
  __export(useSheetScrollViewGestures_exports, {
@@ -37,87 +39,128 @@ function useSheetScrollViewGestures({
37
39
  dys: [],
38
40
  scrollYAtGestureStart: 0
39
41
  });
40
- return (0, import_react.useEffect)(() => {
42
+ (0, import_react.useEffect)(() => {
41
43
  if (!scrollRef.current) return;
42
- const controller = new AbortController(),
43
- node = scrollRef.current?.getScrollableNode();
44
+ const controller = new AbortController();
45
+ const node = scrollRef.current?.getScrollableNode();
44
46
  if (!node) return;
45
47
  node.style.overscrollBehavior = "contain";
46
48
  let originalOverflow = "";
47
49
  const disableScroll = () => {
48
- node.style.overflowY !== "hidden" && (originalOverflow = node.style.overflowY, node.style.overflowY = "hidden");
49
- },
50
- enableScroll = () => {
51
- node.style.overflowY = originalOverflow;
52
- },
53
- handleTouchStart = e => {
54
- const touch = e.touches[0];
55
- if (!touch) return;
56
- const currentScrollY = node.scrollTop;
57
- state.current = {
58
- startY: touch.pageY,
59
- lastY: touch.pageY,
60
- owner: "none",
61
- panDragOffset: 0,
62
- dys: [],
63
- scrollYAtGestureStart: currentScrollY
64
- }, scrollBridge.scrollStartY = touch.pageY;
65
- },
66
- handleTouchMove = e => {
67
- const touch = e.touches[0];
68
- if (!touch) return;
69
- const {
70
- current: s
71
- } = state,
72
- pageY = touch.pageY,
73
- dy = pageY - s.lastY;
74
- if (s.lastY = pageY, dy === 0) return;
75
- const isDraggingDown = dy > 0,
76
- currentScrollY = node.scrollTop,
77
- isPaneAtTop = scrollBridge.paneY <= scrollBridge.paneMinY + 5;
78
- scrollBridge.y = currentScrollY;
79
- let shouldPanOwn = !1;
80
- isPaneAtTop ? currentScrollY <= 0 && isDraggingDown && (shouldPanOwn = !0) : shouldPanOwn = !0;
81
- const newOwner = shouldPanOwn ? "pan" : "scroll";
82
- 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") {
83
- const scrollDelta = -dy,
84
- maxScrollY = node.scrollHeight - node.clientHeight,
85
- newScrollY = Math.max(0, Math.min(maxScrollY, currentScrollY + scrollDelta));
86
- newScrollY !== currentScrollY && (node.scrollTop = newScrollY, scrollBridge.y = newScrollY);
50
+ if (node.style.overflowY !== "hidden") {
51
+ originalOverflow = node.style.overflowY;
52
+ node.style.overflowY = "hidden";
53
+ }
54
+ };
55
+ const enableScroll = () => {
56
+ node.style.overflowY = originalOverflow;
57
+ };
58
+ const handleTouchStart = e => {
59
+ const touch = e.touches[0];
60
+ if (!touch) return;
61
+ const currentScrollY = node.scrollTop;
62
+ state.current = {
63
+ startY: touch.pageY,
64
+ lastY: touch.pageY,
65
+ owner: "none",
66
+ panDragOffset: 0,
67
+ dys: [],
68
+ scrollYAtGestureStart: currentScrollY
69
+ };
70
+ scrollBridge.scrollStartY = touch.pageY;
71
+ };
72
+ const handleTouchMove = e => {
73
+ const touch = e.touches[0];
74
+ if (!touch) return;
75
+ const {
76
+ current: s
77
+ } = state;
78
+ const pageY = touch.pageY;
79
+ const dy = pageY - s.lastY;
80
+ s.lastY = pageY;
81
+ if (dy === 0) return;
82
+ const isDraggingDown = dy > 0;
83
+ const currentScrollY = node.scrollTop;
84
+ const isPaneAtTop = scrollBridge.paneY <= scrollBridge.paneMinY + 5;
85
+ scrollBridge.y = currentScrollY;
86
+ let shouldPanOwn = false;
87
+ if (!isPaneAtTop) {
88
+ shouldPanOwn = true;
89
+ } else if (currentScrollY <= 0 && isDraggingDown) {
90
+ shouldPanOwn = true;
91
+ }
92
+ const newOwner = shouldPanOwn ? "pan" : "scroll";
93
+ if (newOwner !== s.owner) {
94
+ if (newOwner === "pan") {
95
+ s.panDragOffset = 0;
96
+ s.dys = [];
97
+ scrollBridge.setParentDragging(true);
98
+ disableScroll();
99
+ } else {
100
+ scrollBridge.setParentDragging(false);
101
+ scrollBridge.scrollLock = false;
102
+ enableScroll();
87
103
  }
88
- },
89
- handleTouchEnd = () => {
90
- const {
91
- current: s
92
- } = state;
93
- if (s.owner === "pan") {
94
- scrollBridge.setParentDragging(!1);
95
- let vy = 0;
96
- if (s.dys.length) {
97
- const recentDys = s.dys.slice(-10);
98
- vy = recentDys.reduce((a, b) => a + b, 0) / recentDys.length * 0.04;
99
- }
100
- scrollBridge.release({
101
- dragAt: s.panDragOffset,
102
- vy
103
- });
104
+ s.owner = newOwner;
105
+ }
106
+ if (s.owner === "pan") {
107
+ if (e.cancelable) e.preventDefault();
108
+ s.panDragOffset += dy;
109
+ scrollBridge.drag(s.panDragOffset);
110
+ s.dys.push(dy);
111
+ if (s.dys.length > 100) s.dys = s.dys.slice(-10);
112
+ } else if (s.owner === "scroll") {
113
+ const scrollDelta = -dy;
114
+ const maxScrollY = node.scrollHeight - node.clientHeight;
115
+ const newScrollY = Math.max(0, Math.min(maxScrollY, currentScrollY + scrollDelta));
116
+ if (newScrollY !== currentScrollY) {
117
+ node.scrollTop = newScrollY;
118
+ scrollBridge.y = newScrollY;
104
119
  }
105
- enableScroll(), s.owner = "none", s.panDragOffset = 0, s.dys = [];
106
- };
107
- return node.addEventListener("touchstart", handleTouchStart, {
120
+ }
121
+ };
122
+ const handleTouchEnd = () => {
123
+ const {
124
+ current: s
125
+ } = state;
126
+ if (s.owner === "pan") {
127
+ scrollBridge.setParentDragging(false);
128
+ let vy = 0;
129
+ if (s.dys.length) {
130
+ const recentDys = s.dys.slice(-10);
131
+ const dist = recentDys.reduce((a, b) => a + b, 0);
132
+ vy = dist / recentDys.length * 0.04;
133
+ }
134
+ scrollBridge.release({
135
+ dragAt: s.panDragOffset,
136
+ vy
137
+ });
138
+ }
139
+ enableScroll();
140
+ s.owner = "none";
141
+ s.panDragOffset = 0;
142
+ s.dys = [];
143
+ };
144
+ node.addEventListener("touchstart", handleTouchStart, {
108
145
  signal: controller.signal,
109
- passive: !0
110
- }), node.addEventListener("touchmove", handleTouchMove, {
146
+ passive: true
147
+ });
148
+ node.addEventListener("touchmove", handleTouchMove, {
111
149
  signal: controller.signal,
112
- passive: !1
113
- }), node.addEventListener("touchend", handleTouchEnd, {
150
+ passive: false
151
+ });
152
+ node.addEventListener("touchend", handleTouchEnd, {
114
153
  signal: controller.signal,
115
- passive: !0
116
- }), node.addEventListener("touchcancel", handleTouchEnd, {
154
+ passive: true
155
+ });
156
+ node.addEventListener("touchcancel", handleTouchEnd, {
117
157
  signal: controller.signal,
118
- passive: !0
119
- }), () => {
120
- enableScroll(), controller.abort();
158
+ passive: true
159
+ });
160
+ return () => {
161
+ enableScroll();
162
+ controller.abort();
121
163
  };
122
- }, [scrollRef, scrollBridge, hasScrollableContent]), {};
164
+ }, [scrollRef, scrollBridge, hasScrollableContent]);
165
+ return {};
123
166
  }