@tamagui/native 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 (354) hide show
  1. package/.turbo/turbo-build.log +2 -0
  2. package/dist/cjs/PressBoundary.cjs +92 -0
  3. package/dist/cjs/PressBoundary.native.js +105 -0
  4. package/dist/cjs/PressBoundary.native.js.map +1 -0
  5. package/dist/cjs/burntState.cjs +46 -0
  6. package/dist/cjs/burntState.native.js +49 -0
  7. package/dist/cjs/burntState.native.js.map +1 -0
  8. package/dist/cjs/components.cjs +20 -15
  9. package/dist/cjs/components.native.js +24 -22
  10. package/dist/cjs/components.native.js.map +1 -1
  11. package/dist/cjs/gesture-handler.cjs +36 -0
  12. package/dist/cjs/gesture-handler.native.js +39 -0
  13. package/dist/cjs/gesture-handler.native.js.map +1 -0
  14. package/dist/cjs/gestureState.cjs +124 -36
  15. package/dist/cjs/gestureState.native.js +130 -46
  16. package/dist/cjs/gestureState.native.js.map +1 -1
  17. package/dist/cjs/globalState.cjs +45 -0
  18. package/dist/cjs/globalState.native.js +48 -0
  19. package/dist/cjs/globalState.native.js.map +1 -0
  20. package/dist/cjs/index.cjs +28 -19
  21. package/dist/cjs/index.native.js +28 -19
  22. package/dist/cjs/index.native.js.map +1 -1
  23. package/dist/cjs/keyboardControllerState.cjs +26 -28
  24. package/dist/cjs/keyboardControllerState.native.js +26 -28
  25. package/dist/cjs/keyboardControllerState.native.js.map +1 -1
  26. package/dist/cjs/linearGradientState.cjs +19 -16
  27. package/dist/cjs/linearGradientState.native.js +19 -16
  28. package/dist/cjs/linearGradientState.native.js.map +1 -1
  29. package/dist/cjs/nativeMenuContext.cjs +29 -0
  30. package/dist/cjs/nativeMenuContext.native.js +32 -0
  31. package/dist/cjs/nativeMenuContext.native.js.map +1 -0
  32. package/dist/cjs/portalState.cjs +19 -16
  33. package/dist/cjs/portalState.native.js +19 -16
  34. package/dist/cjs/portalState.native.js.map +1 -1
  35. package/dist/cjs/safeAreaState.cjs +43 -38
  36. package/dist/cjs/safeAreaState.native.js +43 -38
  37. package/dist/cjs/safeAreaState.native.js.map +1 -1
  38. package/dist/cjs/setup-burnt.cjs +17 -0
  39. package/dist/cjs/setup-burnt.native.js +20 -0
  40. package/dist/cjs/setup-burnt.native.js.map +1 -0
  41. package/dist/cjs/setup-expo-linear-gradient.cjs +9 -8
  42. package/dist/cjs/setup-expo-linear-gradient.native.js +9 -8
  43. package/dist/cjs/setup-expo-linear-gradient.native.js.map +1 -1
  44. package/dist/cjs/setup-gesture-handler.cjs +58 -18
  45. package/dist/cjs/setup-gesture-handler.native.js +58 -18
  46. package/dist/cjs/setup-gesture-handler.native.js.map +1 -1
  47. package/dist/cjs/setup-keyboard-controller.native.js +20 -17
  48. package/dist/cjs/setup-safe-area.cjs +3 -1
  49. package/dist/cjs/setup-safe-area.native.js +15 -17
  50. package/dist/cjs/setup-safe-area.native.js.map +1 -1
  51. package/dist/cjs/setup-teleport.cjs +13 -13
  52. package/dist/cjs/setup-teleport.native.js +13 -13
  53. package/dist/cjs/setup-teleport.native.js.map +1 -1
  54. package/dist/cjs/setup-worklets.cjs +11 -8
  55. package/dist/cjs/setup-worklets.native.js +11 -8
  56. package/dist/cjs/setup-worklets.native.js.map +1 -1
  57. package/dist/cjs/setup-zeego.cjs +13 -8
  58. package/dist/cjs/setup-zeego.native.js +13 -8
  59. package/dist/cjs/setup-zeego.native.js.map +1 -1
  60. package/dist/cjs/types.cjs +7 -5
  61. package/dist/cjs/types.native.js +7 -5
  62. package/dist/cjs/types.native.js.map +1 -1
  63. package/dist/cjs/workletsState.cjs +23 -25
  64. package/dist/cjs/workletsState.native.js +23 -25
  65. package/dist/cjs/workletsState.native.js.map +1 -1
  66. package/dist/cjs/zeegoState.cjs +19 -16
  67. package/dist/cjs/zeegoState.native.js +19 -16
  68. package/dist/cjs/zeegoState.native.js.map +1 -1
  69. package/dist/esm/PressBoundary.mjs +56 -0
  70. package/dist/esm/PressBoundary.mjs.map +1 -0
  71. package/dist/esm/PressBoundary.native.js +66 -0
  72. package/dist/esm/PressBoundary.native.js.map +1 -0
  73. package/dist/esm/burntState.mjs +21 -0
  74. package/dist/esm/burntState.mjs.map +1 -0
  75. package/dist/esm/burntState.native.js +21 -0
  76. package/dist/esm/burntState.native.js.map +1 -0
  77. package/dist/esm/components.mjs +6 -3
  78. package/dist/esm/components.mjs.map +1 -1
  79. package/dist/esm/components.native.js +10 -10
  80. package/dist/esm/components.native.js.map +1 -1
  81. package/dist/esm/gesture-handler.mjs +6 -0
  82. package/dist/esm/gesture-handler.mjs.map +1 -0
  83. package/dist/esm/gesture-handler.native.js +6 -0
  84. package/dist/esm/gesture-handler.native.js.map +1 -0
  85. package/dist/esm/gestureState.mjs +110 -26
  86. package/dist/esm/gestureState.mjs.map +1 -1
  87. package/dist/esm/gestureState.native.js +116 -36
  88. package/dist/esm/gestureState.native.js.map +1 -1
  89. package/dist/esm/globalState.mjs +20 -0
  90. package/dist/esm/globalState.mjs.map +1 -0
  91. package/dist/esm/globalState.native.js +20 -0
  92. package/dist/esm/globalState.native.js.map +1 -0
  93. package/dist/esm/index.js +12 -26
  94. package/dist/esm/index.js.map +1 -6
  95. package/dist/esm/index.mjs +4 -1
  96. package/dist/esm/index.mjs.map +1 -1
  97. package/dist/esm/index.native.js +4 -1
  98. package/dist/esm/index.native.js.map +1 -1
  99. package/dist/esm/keyboardControllerState.mjs +14 -18
  100. package/dist/esm/keyboardControllerState.mjs.map +1 -1
  101. package/dist/esm/keyboardControllerState.native.js +14 -18
  102. package/dist/esm/keyboardControllerState.native.js.map +1 -1
  103. package/dist/esm/linearGradientState.mjs +7 -6
  104. package/dist/esm/linearGradientState.mjs.map +1 -1
  105. package/dist/esm/linearGradientState.native.js +7 -6
  106. package/dist/esm/linearGradientState.native.js.map +1 -1
  107. package/dist/esm/nativeMenuContext.mjs +4 -0
  108. package/dist/esm/nativeMenuContext.mjs.map +1 -0
  109. package/dist/esm/nativeMenuContext.native.js +4 -0
  110. package/dist/esm/nativeMenuContext.native.js.map +1 -0
  111. package/dist/esm/portalState.mjs +7 -6
  112. package/dist/esm/portalState.mjs.map +1 -1
  113. package/dist/esm/portalState.native.js +7 -6
  114. package/dist/esm/portalState.native.js.map +1 -1
  115. package/dist/esm/safeAreaState.mjs +31 -28
  116. package/dist/esm/safeAreaState.mjs.map +1 -1
  117. package/dist/esm/safeAreaState.native.js +31 -28
  118. package/dist/esm/safeAreaState.native.js.map +1 -1
  119. package/dist/esm/setup-burnt.mjs +18 -0
  120. package/dist/esm/setup-burnt.mjs.map +1 -0
  121. package/dist/esm/setup-burnt.native.js +18 -0
  122. package/dist/esm/setup-burnt.native.js.map +1 -0
  123. package/dist/esm/setup-expo-linear-gradient.mjs +9 -8
  124. package/dist/esm/setup-expo-linear-gradient.mjs.map +1 -1
  125. package/dist/esm/setup-expo-linear-gradient.native.js +9 -8
  126. package/dist/esm/setup-expo-linear-gradient.native.js.map +1 -1
  127. package/dist/esm/setup-gesture-handler.mjs +31 -18
  128. package/dist/esm/setup-gesture-handler.mjs.map +1 -1
  129. package/dist/esm/setup-gesture-handler.native.js +31 -18
  130. package/dist/esm/setup-gesture-handler.native.js.map +1 -1
  131. package/dist/esm/setup-keyboard-controller.native.js +20 -17
  132. package/dist/esm/setup-safe-area.mjs +2 -0
  133. package/dist/esm/setup-safe-area.mjs.map +1 -1
  134. package/dist/esm/setup-safe-area.native.js +15 -17
  135. package/dist/esm/setup-safe-area.native.js.map +1 -1
  136. package/dist/esm/setup-teleport.mjs +13 -13
  137. package/dist/esm/setup-teleport.mjs.map +1 -1
  138. package/dist/esm/setup-teleport.native.js +13 -13
  139. package/dist/esm/setup-teleport.native.js.map +1 -1
  140. package/dist/esm/setup-worklets.mjs +11 -8
  141. package/dist/esm/setup-worklets.mjs.map +1 -1
  142. package/dist/esm/setup-worklets.native.js +11 -8
  143. package/dist/esm/setup-worklets.native.js.map +1 -1
  144. package/dist/esm/setup-zeego.mjs +13 -8
  145. package/dist/esm/setup-zeego.mjs.map +1 -1
  146. package/dist/esm/setup-zeego.native.js +13 -8
  147. package/dist/esm/setup-zeego.native.js.map +1 -1
  148. package/dist/esm/workletsState.mjs +11 -15
  149. package/dist/esm/workletsState.mjs.map +1 -1
  150. package/dist/esm/workletsState.native.js +11 -15
  151. package/dist/esm/workletsState.native.js.map +1 -1
  152. package/dist/esm/zeegoState.mjs +7 -6
  153. package/dist/esm/zeegoState.mjs.map +1 -1
  154. package/dist/esm/zeegoState.native.js +7 -6
  155. package/dist/esm/zeegoState.native.js.map +1 -1
  156. package/gesture-handler/index.cjs +1 -0
  157. package/gesture-handler/index.js +1 -0
  158. package/gesture-handler/index.native.cjs +1 -0
  159. package/gesture-handler/index.native.js +1 -0
  160. package/gesture-handler.cjs +1 -0
  161. package/package.json +70 -69
  162. package/setup-burnt/index.cjs +2 -0
  163. package/setup-burnt/index.js +2 -0
  164. package/setup-burnt/index.native.cjs +2 -0
  165. package/setup-burnt/index.native.js +2 -0
  166. package/setup-burnt.cjs +1 -0
  167. package/setup-expo-linear-gradient/index.cjs +2 -0
  168. package/setup-expo-linear-gradient/index.js +2 -0
  169. package/setup-expo-linear-gradient/index.native.cjs +2 -0
  170. package/setup-expo-linear-gradient/index.native.js +2 -0
  171. package/setup-expo-linear-gradient.cjs +1 -0
  172. package/setup-gesture-handler/index.cjs +2 -0
  173. package/setup-gesture-handler/index.js +2 -0
  174. package/setup-gesture-handler/index.native.cjs +2 -0
  175. package/setup-gesture-handler/index.native.js +2 -0
  176. package/setup-gesture-handler.cjs +1 -0
  177. package/setup-keyboard-controller/index.cjs +2 -0
  178. package/setup-keyboard-controller/index.js +2 -0
  179. package/setup-keyboard-controller/index.native.cjs +2 -0
  180. package/setup-keyboard-controller/index.native.js +2 -0
  181. package/setup-keyboard-controller.cjs +1 -0
  182. package/setup-safe-area/index.cjs +2 -0
  183. package/setup-safe-area/index.js +2 -0
  184. package/setup-safe-area/index.native.cjs +2 -0
  185. package/setup-safe-area/index.native.js +2 -0
  186. package/setup-safe-area.cjs +1 -0
  187. package/setup-teleport/index.cjs +2 -0
  188. package/setup-teleport/index.js +2 -0
  189. package/setup-teleport/index.native.cjs +2 -0
  190. package/setup-teleport/index.native.js +2 -0
  191. package/setup-teleport.cjs +1 -0
  192. package/setup-worklets/index.cjs +2 -0
  193. package/setup-worklets/index.js +2 -0
  194. package/setup-worklets/index.native.cjs +2 -0
  195. package/setup-worklets/index.native.js +2 -0
  196. package/setup-worklets.cjs +1 -0
  197. package/setup-zeego/index.cjs +2 -0
  198. package/setup-zeego/index.js +2 -0
  199. package/setup-zeego/index.native.cjs +2 -0
  200. package/setup-zeego/index.native.js +2 -0
  201. package/setup-zeego.cjs +1 -0
  202. package/src/PressBoundary.tsx +81 -0
  203. package/src/burntState.ts +28 -0
  204. package/src/gesture-handler.ts +17 -0
  205. package/src/gestureState.ts +148 -26
  206. package/src/globalState.ts +32 -0
  207. package/src/index.ts +18 -1
  208. package/src/keyboardControllerState.ts +16 -31
  209. package/src/linearGradientState.ts +8 -4
  210. package/src/nativeMenuContext.ts +4 -0
  211. package/src/portalState.ts +8 -4
  212. package/src/safeAreaState.ts +16 -23
  213. package/src/setup-burnt.ts +38 -0
  214. package/src/setup-gesture-handler.ts +35 -8
  215. package/src/setup-zeego.ts +4 -1
  216. package/src/types.ts +17 -0
  217. package/src/workletsState.ts +11 -19
  218. package/src/zeegoState.ts +9 -4
  219. package/tsconfig.json +12 -0
  220. package/types/PressBoundary.d.ts +14 -0
  221. package/types/PressBoundary.d.ts.map +11 -0
  222. package/types/burntState.d.ts +9 -0
  223. package/types/burntState.d.ts.map +11 -0
  224. package/types/components.d.ts.map +2 -2
  225. package/types/gesture-handler.d.ts +8 -0
  226. package/types/gesture-handler.d.ts.map +11 -0
  227. package/types/gestureState.d.ts +4 -0
  228. package/types/gestureState.d.ts.map +4 -4
  229. package/types/globalState.d.ts +8 -0
  230. package/types/globalState.d.ts.map +11 -0
  231. package/types/index.d.ts +7 -2
  232. package/types/index.d.ts.map +4 -4
  233. package/types/keyboardControllerState.d.ts +2 -10
  234. package/types/keyboardControllerState.d.ts.map +4 -4
  235. package/types/linearGradientState.d.ts.map +4 -4
  236. package/types/nativeMenuContext.d.ts +4 -0
  237. package/types/nativeMenuContext.d.ts.map +11 -0
  238. package/types/portalState.d.ts.map +4 -4
  239. package/types/safeAreaState.d.ts.map +4 -4
  240. package/types/setup-burnt.d.ts +3 -0
  241. package/types/setup-burnt.d.ts.map +11 -0
  242. package/types/setup-expo-linear-gradient.d.ts.map +2 -2
  243. package/types/setup-gesture-handler.d.ts +8 -1
  244. package/types/setup-gesture-handler.d.ts.map +4 -4
  245. package/types/setup-keyboard-controller.d.ts.map +2 -2
  246. package/types/setup-keyboard-controller.web.d.ts.map +2 -2
  247. package/types/setup-safe-area.d.ts.map +2 -2
  248. package/types/setup-teleport.d.ts.map +2 -2
  249. package/types/setup-worklets.d.ts.map +2 -2
  250. package/types/setup-zeego.d.ts.map +3 -3
  251. package/types/types.d.ts +15 -0
  252. package/types/types.d.ts.map +4 -4
  253. package/types/workletsState.d.ts.map +4 -4
  254. package/types/zeegoState.d.ts.map +4 -4
  255. package/dist/cjs/components.js +0 -41
  256. package/dist/cjs/components.js.map +0 -6
  257. package/dist/cjs/gestureState.js +0 -62
  258. package/dist/cjs/gestureState.js.map +0 -6
  259. package/dist/cjs/index.js +0 -32
  260. package/dist/cjs/index.js.map +0 -6
  261. package/dist/cjs/keyboardControllerState.js +0 -46
  262. package/dist/cjs/keyboardControllerState.js.map +0 -6
  263. package/dist/cjs/linearGradientState.js +0 -34
  264. package/dist/cjs/linearGradientState.js.map +0 -6
  265. package/dist/cjs/portalState.js +0 -34
  266. package/dist/cjs/portalState.js.map +0 -6
  267. package/dist/cjs/safeAreaState.js +0 -52
  268. package/dist/cjs/safeAreaState.js.map +0 -6
  269. package/dist/cjs/setup-expo-linear-gradient.js +0 -17
  270. package/dist/cjs/setup-expo-linear-gradient.js.map +0 -6
  271. package/dist/cjs/setup-gesture-handler.js +0 -24
  272. package/dist/cjs/setup-gesture-handler.js.map +0 -6
  273. package/dist/cjs/setup-keyboard-controller.js +0 -1
  274. package/dist/cjs/setup-keyboard-controller.js.map +0 -6
  275. package/dist/cjs/setup-portal.cjs +0 -66
  276. package/dist/cjs/setup-portal.js +0 -53
  277. package/dist/cjs/setup-portal.js.map +0 -6
  278. package/dist/cjs/setup-portal.native.js +0 -74
  279. package/dist/cjs/setup-portal.native.js.map +0 -1
  280. package/dist/cjs/setup-safe-area.js +0 -2
  281. package/dist/cjs/setup-safe-area.js.map +0 -6
  282. package/dist/cjs/setup-teleport.js +0 -17
  283. package/dist/cjs/setup-teleport.js.map +0 -6
  284. package/dist/cjs/setup-worklets.js +0 -20
  285. package/dist/cjs/setup-worklets.js.map +0 -6
  286. package/dist/cjs/setup-zeego.js +0 -18
  287. package/dist/cjs/setup-zeego.js.map +0 -6
  288. package/dist/cjs/setup.cjs +0 -64
  289. package/dist/cjs/setup.js +0 -50
  290. package/dist/cjs/setup.js.map +0 -6
  291. package/dist/cjs/setup.native.js +0 -72
  292. package/dist/cjs/setup.native.js.map +0 -1
  293. package/dist/cjs/state.cjs +0 -36
  294. package/dist/cjs/state.js +0 -28
  295. package/dist/cjs/state.js.map +0 -6
  296. package/dist/cjs/state.native.js +0 -39
  297. package/dist/cjs/state.native.js.map +0 -1
  298. package/dist/cjs/types.js +0 -14
  299. package/dist/cjs/types.js.map +0 -6
  300. package/dist/cjs/workletsState.js +0 -45
  301. package/dist/cjs/workletsState.js.map +0 -6
  302. package/dist/cjs/zeegoState.js +0 -34
  303. package/dist/cjs/zeegoState.js.map +0 -6
  304. package/dist/esm/components.js +0 -26
  305. package/dist/esm/components.js.map +0 -6
  306. package/dist/esm/gestureState.js +0 -46
  307. package/dist/esm/gestureState.js.map +0 -6
  308. package/dist/esm/keyboardControllerState.js +0 -30
  309. package/dist/esm/keyboardControllerState.js.map +0 -6
  310. package/dist/esm/linearGradientState.js +0 -18
  311. package/dist/esm/linearGradientState.js.map +0 -6
  312. package/dist/esm/portalState.js +0 -18
  313. package/dist/esm/portalState.js.map +0 -6
  314. package/dist/esm/safeAreaState.js +0 -36
  315. package/dist/esm/safeAreaState.js.map +0 -6
  316. package/dist/esm/setup-expo-linear-gradient.js +0 -17
  317. package/dist/esm/setup-expo-linear-gradient.js.map +0 -6
  318. package/dist/esm/setup-gesture-handler.js +0 -24
  319. package/dist/esm/setup-gesture-handler.js.map +0 -6
  320. package/dist/esm/setup-keyboard-controller.js +0 -1
  321. package/dist/esm/setup-keyboard-controller.js.map +0 -6
  322. package/dist/esm/setup-portal.js +0 -37
  323. package/dist/esm/setup-portal.js.map +0 -6
  324. package/dist/esm/setup-portal.mjs +0 -43
  325. package/dist/esm/setup-portal.mjs.map +0 -1
  326. package/dist/esm/setup-portal.native.js +0 -48
  327. package/dist/esm/setup-portal.native.js.map +0 -1
  328. package/dist/esm/setup-safe-area.js +0 -2
  329. package/dist/esm/setup-safe-area.js.map +0 -6
  330. package/dist/esm/setup-teleport.js +0 -17
  331. package/dist/esm/setup-teleport.js.map +0 -6
  332. package/dist/esm/setup-worklets.js +0 -20
  333. package/dist/esm/setup-worklets.js.map +0 -6
  334. package/dist/esm/setup-zeego.js +0 -18
  335. package/dist/esm/setup-zeego.js.map +0 -6
  336. package/dist/esm/setup.js +0 -34
  337. package/dist/esm/setup.js.map +0 -6
  338. package/dist/esm/setup.mjs +0 -41
  339. package/dist/esm/setup.mjs.map +0 -1
  340. package/dist/esm/setup.native.js +0 -46
  341. package/dist/esm/setup.native.js.map +0 -1
  342. package/dist/esm/state.js +0 -12
  343. package/dist/esm/state.js.map +0 -6
  344. package/dist/esm/state.mjs +0 -12
  345. package/dist/esm/state.mjs.map +0 -1
  346. package/dist/esm/state.native.js +0 -12
  347. package/dist/esm/state.native.js.map +0 -1
  348. package/dist/esm/types.js +0 -1
  349. package/dist/esm/types.js.map +0 -6
  350. package/dist/esm/workletsState.js +0 -29
  351. package/dist/esm/workletsState.js.map +0 -6
  352. package/dist/esm/zeegoState.js +0 -18
  353. package/dist/esm/zeegoState.js.map +0 -6
  354. package/types/setup-portal.d.ts.map +0 -11
@@ -0,0 +1,66 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
+ import React from "react";
3
+ import { View } from "react-native";
4
+ import { claimExternalPressOwnership, releaseExternalPressOwnership } from "./gestureState.native.js";
5
+ function composeFirst(ours, theirs) {
6
+ return function () {
7
+ for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
8
+ args[_key] = arguments[_key];
9
+ }
10
+ ours(...args);
11
+ theirs === null || theirs === void 0 ? void 0 : theirs(...args);
12
+ };
13
+ }
14
+ function composeLast(theirs, ours) {
15
+ return function () {
16
+ for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
17
+ args[_key] = arguments[_key];
18
+ }
19
+ theirs === null || theirs === void 0 ? void 0 : theirs(...args);
20
+ ours(...args);
21
+ };
22
+ }
23
+ var PressBoundary = /* @__PURE__ */React.forwardRef(function PressBoundary2(param, forwardedRef) {
24
+ var {
25
+ enabled,
26
+ stopPropagation,
27
+ debugName,
28
+ onTouchStart,
29
+ onTouchEnd,
30
+ onTouchCancel,
31
+ onResponderGrant,
32
+ onResponderRelease,
33
+ onResponderTerminate,
34
+ ...props
35
+ } = param;
36
+ var tokenRef = React.useRef(null);
37
+ var _ref;
38
+ var isEnabled = (_ref = enabled !== null && enabled !== void 0 ? enabled : stopPropagation) !== null && _ref !== void 0 ? _ref : true;
39
+ var claim = React.useCallback(function () {
40
+ if (!isEnabled) return;
41
+ if (tokenRef.current) {
42
+ releaseExternalPressOwnership(tokenRef.current, debugName);
43
+ }
44
+ tokenRef.current = claimExternalPressOwnership(debugName);
45
+ }, [debugName, isEnabled]);
46
+ var release = React.useCallback(function () {
47
+ if (!tokenRef.current) return;
48
+ releaseExternalPressOwnership(tokenRef.current, debugName);
49
+ tokenRef.current = null;
50
+ }, [debugName]);
51
+ React.useEffect(function () {
52
+ return release;
53
+ }, [release]);
54
+ return /* @__PURE__ */_jsx(View, {
55
+ ref: forwardedRef,
56
+ ...props,
57
+ onTouchStart: composeFirst(claim, onTouchStart),
58
+ onTouchEnd: composeLast(onTouchEnd, release),
59
+ onTouchCancel: composeLast(onTouchCancel, release),
60
+ onResponderGrant: composeFirst(claim, onResponderGrant),
61
+ onResponderRelease: composeLast(onResponderRelease, release),
62
+ onResponderTerminate: composeLast(onResponderTerminate, release)
63
+ });
64
+ });
65
+ export { PressBoundary };
66
+ //# sourceMappingURL=PressBoundary.native.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["jsx","_jsx","React","View","claimExternalPressOwnership","releaseExternalPressOwnership","composeFirst","ours","theirs","_len","arguments","length","args","Array","_key","composeLast","PressBoundary","forwardRef","PressBoundary2","param","forwardedRef","enabled","stopPropagation","debugName","onTouchStart","onTouchEnd","onTouchCancel","onResponderGrant","onResponderRelease","onResponderTerminate","props","tokenRef","useRef","_ref","isEnabled","claim","useCallback","current","release","useEffect","ref"],"sources":["../../src/PressBoundary.tsx"],"sourcesContent":[null],"mappings":"AAAA,SAAOA,GAAA,IAAAC,IAAW;AAClB,OAAAC,KAAS,aAA4B;AACrC,SAAAC,IAAA;AAAA,SACEC,2BAAA,EAAAC,6BAAA;AAAA,SACAC,aAAAC,IAAA,EAAAC,MAAA;EAAA,OAEK;IA+DH,SAAAC,IAAA,GAAAC,SAAA,CAAAC,MAAA,EAAAC,IAAA,OAAAC,KAAA,CAAAJ,IAAA,GAAAK,IAAA,MAAAA,IAAA,GAAAL,IAAA,EAAAK,IAAA;MAnDJF,IAAS,CAAAE,IAAA,IAAAJ,SAA0D,CAAAI,IAAA;IACjE;IACEP,IAAA,CAAK,GAAGK,IAAI;IACZJ,MAAA,KAAS,IAAG,IAAIA,MAAA,uBAAAA,MAAA,IAAAI,IAAA;EAClB;AACF;AAEA,SAASG,YAAgDP,MAAA,EAAuBD,IAAA,EAAS;EACvF,OAAO,YAAI;IACT,SAASE,IAAG,GAAIC,SAAA,CAAAC,MAAA,EAAAC,IAAA,OAAAC,KAAA,CAAAJ,IAAA,GAAAK,IAAA,MAAAA,IAAA,GAAAL,IAAA,EAAAK,IAAA;MAChBF,IAAK,CAAAE,IAAG,CAAI,GAAAJ,SAAA,CAAAI,IAAA;IACd;IACFN,MAAA,aAAAA,MAAA,uBAAAA,MAAA,IAAAI,IAAA;IAEOL,IAAM,IAAAK,IAAA;EAIT;AAAA;AACA,IACAI,aAAA,kBAAAd,KAAA,CAAAe,UAAA,UAAAC,eAAAC,KAAA,EAAAC,YAAA;EACA;IAAAC,OAAA;IAAAC,eAAA;IAAAC,SAAA;IAAAC,YAAA;IAAAC,UAAA;IAAAC,aAAA;IAAAC,gBAAA;IAAAC,kBAAA;IAAAC,oBAAA;IAAA,GAAAC;EAAA,IAAAX,KAAA;EACA,IAAAY,QAAA,GAAA7B,KAAA,CAAA8B,MAAA;EACA,IAAAC,IAAA;EACA,IAAAC,SAAA,IAAAD,IAAA,GAAAZ,OAAA,aAAAA,OAAA,cAAAA,OAAA,GAAAC,eAAA,cAAAW,IAAA,cAAAA,IAAA;EACA,IAAAE,KAAA,GAAAjC,KAAA,CAAAkC,WAAA;IACA,KAAAF,SAAA;IACA,IAAGH,QAAA,CAAAM,OAAA;MAELhC,6BACA,CAAA0B,QAAA,CAAAM,OAAA,EAAAd,SAAA;IACA;IACAQ,QAAM,CAAAM,OAAY,GAAAjC,2BAA8B,CAAAmB,SAAA;EAEhD,IACEA,SAAK,EACLW,SAAI,CACF;EAAyD,IAC3DI,OAAA,GAAApC,KAAA,CAAAkC,WAAA;IACA,KAAAL,QAAS,CAAAM,OAAU;IACrBhC,6BAAyB,CAAA0B,QAAA,CAAAM,OAAA,EAAAd,SAAA;IAEzBQ,QAAM,CAAAM,OAAU,OAAM;EACpB,IACAd,SAAA,CACA;EACFrB,KAAI,CAAAqC,SAAU;IAEd,OAAMD,OAAU;EAEhB,IACGA,OAAA;EAAA,OACC,eAAKrC,IAAA,CAAAE,IAAA;IAAAqC,GACJ,EAAGpB,YAAA;IAAA,GACJU,KAAA;IAA8CN,YAC9C,EAAYlB,YAAY,CAAA6B,KAAA,EAAAX,YAAmB;IAAAC,UAC3C,EAAAV,WAAe,CAAAU,UAAY,EAAAa,OAAA,CAAe;IAAOZ,aACjD,EAAAX,WAAkB,CAAAW,aAAoB,EAAAY,OAAA;IAAgBX,gBACtD,EAAArB,YAAoB,CAAA6B,KAAY,EAAAR,gBAAoB;IAAOC,kBAC3D,EAAAb,WAAsB,CAAAa,kBAAY,EAAAU,OAAsB;IAAOT,oBAAA,EAAAd,WAAA,CAAAc,oBAAA,EAAAS,OAAA;EACjE;AAEJ,CAAC","ignoreList":[]}
@@ -0,0 +1,21 @@
1
+ import { createGlobalState } from "./globalState.mjs";
2
+ const state = createGlobalState(`burnt`, {
3
+ enabled: false,
4
+ toast: null,
5
+ dismissAllAlerts: null
6
+ });
7
+ function getBurnt() {
8
+ return {
9
+ get isEnabled() {
10
+ return state.get().enabled;
11
+ },
12
+ get state() {
13
+ return state.get();
14
+ },
15
+ set(newState) {
16
+ state.set(newState);
17
+ }
18
+ };
19
+ }
20
+ export { getBurnt };
21
+ //# sourceMappingURL=burntState.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["createGlobalState","state","enabled","toast","dismissAllAlerts","getBurnt","isEnabled","get","set","newState"],"sources":["../../src/burntState.ts"],"sourcesContent":[null],"mappings":"AAAA,SAASA,iBAAA,QAAyB;AAGlC,MAAMC,KAAA,GAAQD,iBAAA,CAA8B,SAAS;EACnDE,OAAA,EAAS;EACTC,KAAA,EAAO;EACPC,gBAAA,EAAkB;AACpB,CAAC;AAQM,SAASC,SAAA,EAA0B;EACxC,OAAO;IACL,IAAIC,UAAA,EAAqB;MACvB,OAAOL,KAAA,CAAMM,GAAA,CAAI,EAAEL,OAAA;IACrB;IACA,IAAID,MAAA,EAAoB;MACtB,OAAOA,KAAA,CAAMM,GAAA,CAAI;IACnB;IACAC,IAAIC,QAAA,EAA4B;MAC9BR,KAAA,CAAMO,GAAA,CAAIC,QAAQ;IACpB;EACF;AACF","ignoreList":[]}
@@ -0,0 +1,21 @@
1
+ import { createGlobalState } from "./globalState.native.js";
2
+ var state = createGlobalState(`burnt`, {
3
+ enabled: false,
4
+ toast: null,
5
+ dismissAllAlerts: null
6
+ });
7
+ function getBurnt() {
8
+ return {
9
+ get isEnabled() {
10
+ return state.get().enabled;
11
+ },
12
+ get state() {
13
+ return state.get();
14
+ },
15
+ set(newState) {
16
+ state.set(newState);
17
+ }
18
+ };
19
+ }
20
+ export { getBurnt };
21
+ //# sourceMappingURL=burntState.native.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["createGlobalState","state","enabled","toast","dismissAllAlerts","getBurnt","isEnabled","get","set","newState"],"sources":["../../src/burntState.ts"],"sourcesContent":[null],"mappings":"AAAA,SAASA,iBAAA,QAAyB;AAGlC,IAAAC,KAAM,GAAAD,iBAAQ,QAA8B;EAC1CE,OAAA,EAAS;EACTC,KAAA,EAAO;EACPC,gBAAA,EAAkB;AACpB,CAAC;AAQM,SAASC,SAAA,EAA0B;EACxC,OAAO;IACL,IAAIC,UAAA,EAAqB;MACvB,OAAOL,KAAA,CAAMM,GAAA,CAAI,EAAEL,OAAA;IACrB;IACA,IAAID,MAAA,EAAoB;MACtB,OAAOA,KAAA,CAAMM,GAAA,CAAI;IACnB;IACAC,IAAIC,QAAA,EAA4B;MAC9BR,KAAA,CAAMO,GAAA,CAAIC,QAAQ;IACpB;EACF;AACF","ignoreList":[]}
@@ -4,7 +4,8 @@ function NativePortal({
4
4
  hostName = "root",
5
5
  children
6
6
  }) {
7
- if (getPortal().state.type !== "teleport") return null;
7
+ const state = getPortal().state;
8
+ if (state.type !== "teleport") return null;
8
9
  const {
9
10
  Portal
10
11
  } = globalThis.__tamagui_teleport;
@@ -16,7 +17,8 @@ function NativePortal({
16
17
  function NativePortalHost({
17
18
  name
18
19
  }) {
19
- if (getPortal().state.type !== "teleport") return null;
20
+ const state = getPortal().state;
21
+ if (state.type !== "teleport") return null;
20
22
  const {
21
23
  PortalHost
22
24
  } = globalThis.__tamagui_teleport;
@@ -27,7 +29,8 @@ function NativePortalHost({
27
29
  function NativePortalProvider({
28
30
  children
29
31
  }) {
30
- if (getPortal().state.type !== "teleport") return /* @__PURE__ */jsx(Fragment, {
32
+ const state = getPortal().state;
33
+ if (state.type !== "teleport") return /* @__PURE__ */jsx(Fragment, {
31
34
  children
32
35
  });
33
36
  const {
@@ -1 +1 @@
1
- {"version":3,"names":["getPortal","Fragment","jsx","NativePortal","hostName","children","state","type","Portal","globalThis","__tamagui_teleport","NativePortalHost","name","PortalHost","NativePortalProvider","PortalProvider"],"sources":["../../src/components.tsx"],"sourcesContent":[null],"mappings":"AACA,SAASA,SAAA,QAAiB;AAqBjB,SAqB+BC,QAAA,EArB/BC,GAAA;AARF,SAASC,aAAa;EAC3BC,QAAA,GAAW;EACXC;AACF,GAAiC;EAE/B,IADcL,SAAA,CAAU,EAAEM,KAAA,CAChBC,IAAA,KAAS,YAAY,OAAO;EAEtC,MAAM;IAAEC;EAAO,IAAKC,UAAA,CAAmBC,kBAAA;EACvC,OAAO,eAAAR,GAAA,CAACM,MAAA;IAAOJ,QAAA;IAAqBC;EAAA,CAAS;AAC/C;AAMO,SAASM,iBAAiB;EAAEC;AAAK,GAAqC;EAE3E,IADcZ,SAAA,CAAU,EAAEM,KAAA,CAChBC,IAAA,KAAS,YAAY,OAAO;EAEtC,MAAM;IAAEM;EAAW,IAAKJ,UAAA,CAAmBC,kBAAA;EAC3C,OAAO,eAAAR,GAAA,CAACW,UAAA;IAAWD;EAAA,CAAY;AACjC;AAMO,SAASE,qBAAqB;EAAET;AAAS,GAAyC;EAEvF,IADcL,SAAA,CAAU,EAAEM,KAAA,CAChBC,IAAA,KAAS,YAAY,OAAO,eAAAL,GAAA,CAAAD,QAAA;IAAGI;EAAA,CAAS;EAElD,MAAM;IAAEU;EAAe,IAAKN,UAAA,CAAmBC,kBAAA;EAC/C,OAAO,eAAAR,GAAA,CAACa,cAAA;IAAgBV;EAAA,CAAS;AACnC","ignoreList":[]}
1
+ {"version":3,"names":["getPortal","Fragment","jsx","NativePortal","hostName","children","state","type","Portal","globalThis","__tamagui_teleport","NativePortalHost","name","PortalHost","NativePortalProvider","PortalProvider"],"sources":["../../src/components.tsx"],"sourcesContent":[null],"mappings":"AACA,SAASA,SAAA,QAAiB;AAqBjB,SAqB+BC,QAAA,EArB/BC,GAAA;AARF,SAASC,aAAa;EAC3BC,QAAA,GAAW;EACXC;AACF,GAAiC;EAC/B,MAAMC,KAAA,GAAQN,SAAA,CAAU,EAAEM,KAAA;EAC1B,IAAIA,KAAA,CAAMC,IAAA,KAAS,YAAY,OAAO;EAEtC,MAAM;IAAEC;EAAO,IAAKC,UAAA,CAAmBC,kBAAA;EACvC,OAAO,eAAAR,GAAA,CAACM,MAAA;IAAOJ,QAAA;IAAqBC;EAAA,CAAS;AAC/C;AAMO,SAASM,iBAAiB;EAAEC;AAAK,GAAqC;EAC3E,MAAMN,KAAA,GAAQN,SAAA,CAAU,EAAEM,KAAA;EAC1B,IAAIA,KAAA,CAAMC,IAAA,KAAS,YAAY,OAAO;EAEtC,MAAM;IAAEM;EAAW,IAAKJ,UAAA,CAAmBC,kBAAA;EAC3C,OAAO,eAAAR,GAAA,CAACW,UAAA;IAAWD;EAAA,CAAY;AACjC;AAMO,SAASE,qBAAqB;EAAET;AAAS,GAAyC;EACvF,MAAMC,KAAA,GAAQN,SAAA,CAAU,EAAEM,KAAA;EAC1B,IAAIA,KAAA,CAAMC,IAAA,KAAS,YAAY,OAAO,eAAAL,GAAA,CAAAD,QAAA;IAAGI;EAAA,CAAS;EAElD,MAAM;IAAEU;EAAe,IAAKN,UAAA,CAAmBC,kBAAA;EAC/C,OAAO,eAAAR,GAAA,CAACa,cAAA;IAAgBV;EAAA,CAAS;AACnC","ignoreList":[]}
@@ -2,10 +2,10 @@ import { jsx as _jsx, Fragment as _Fragment } from "react/jsx-runtime";
2
2
  import { getPortal } from "./portalState.native.js";
3
3
  function NativePortal(param) {
4
4
  var {
5
- hostName = "root",
6
- children
7
- } = param,
8
- state = getPortal().state;
5
+ hostName = "root",
6
+ children
7
+ } = param;
8
+ var state = getPortal().state;
9
9
  if (state.type !== "teleport") return null;
10
10
  var {
11
11
  Portal
@@ -17,9 +17,9 @@ function NativePortal(param) {
17
17
  }
18
18
  function NativePortalHost(param) {
19
19
  var {
20
- name
21
- } = param,
22
- state = getPortal().state;
20
+ name
21
+ } = param;
22
+ var state = getPortal().state;
23
23
  if (state.type !== "teleport") return null;
24
24
  var {
25
25
  PortalHost
@@ -30,9 +30,9 @@ function NativePortalHost(param) {
30
30
  }
31
31
  function NativePortalProvider(param) {
32
32
  var {
33
- children
34
- } = param,
35
- state = getPortal().state;
33
+ children
34
+ } = param;
35
+ var state = getPortal().state;
36
36
  if (state.type !== "teleport") return /* @__PURE__ */_jsx(_Fragment, {
37
37
  children
38
38
  });
@@ -1 +1 @@
1
- {"version":3,"names":["jsx","_jsx","Fragment","_Fragment","getPortal","NativePortal","param","hostName","children","state","type","Portal","globalThis","__tamagui_teleport","NativePortalHost","name","PortalHost","NativePortalProvider"],"sources":["../../src/components.tsx"],"sourcesContent":[null],"mappings":"AACA,SAASA,GAAA,IAAAC,IAAA,EAAAC,QAAiB,IAAAC,SAAA;AAqBjB,SAqB+BC,SAAA,QArB/B;AARF,SAASC,aAAaC,KAAA;EAC3B;MAAAC,QAAW;MAAAC;IAAA,IAAAF,KAAA;IAAAG,KAAA,GAAAL,SAAA,GAAAK,KAAA;EACX,IAAAA,KAAA,CAAAC,IAAA;EACF,IAAiC;IAAAC;EAAA,IAAAC,UAAA,CAAAC,kBAAA;EAE/B,OADc,eACJZ,IAAA,CAAAU,MAAS;IAEnBJ,QAAQ;IACRC;EACF;AAMO;AAEL,SADcM,gBACJA,CAAAR,KAAA,EAAS;EAEnB;MAAMS;IAAE,IAAAT,KAAW;IAAAG,KAAK,GAAAL,SAAmB,GAAAK,KAAA;EAC3C,IAAAA,KAAO,CAAAC,IAAA,eAAC,aAAW;EACrB;IAAAM;EAAA,IAAAJ,UAAA,CAAAC,kBAAA;EAMO,OAAS,eAAAZ,IAAA,CAAqBe,UAAE,EAAS;IAE9CD;EAEA;AACA;AACF,SAAAE,qBAAAX,KAAA","ignoreList":[]}
1
+ {"version":3,"names":["jsx","_jsx","Fragment","_Fragment","getPortal","NativePortal","param","hostName","children","state","type","Portal","globalThis","__tamagui_teleport","NativePortalHost","name","PortalHost","NativePortalProvider"],"sources":["../../src/components.tsx"],"sourcesContent":[null],"mappings":"AACA,SAASA,GAAA,IAAAC,IAAA,EAAAC,QAAiB,IAAAC,SAAA;AAqBjB,SAqB+BC,SAAA,QArB/B;AARF,SAASC,aAAaC,KAAA;EAC3B;IAAAC,QAAW;IAAAC;EAAA,IAAAF,KAAA;EACX,IAAAG,KAAA,GAAAL,SAAA,GAAAK,KAAA;EACF,IAAiCA,KAAA,CAAAC,IAAA;EAC/B;IAAMC;EAAA,CAAQ,GAAAC,UAAY,CAAAC,kBAAA;EAC1B,OAAI,eAAeZ,IAAA,CAAAU,MAAY;IAE/BJ,QAAQ;IACRC;EACF;AAMO;AACL,SAAMM,gBAAQA,CAAUR,KAAE;EAC1B,IAAI;IAAAS;EAAM,IAAAT,KAAS;EAEnB,IAAAG,KAAQ,GAAAL,SAAW,EAAK,CAAAK,KAAA;EACxB,IAAAA,KAAO,CAAAC,IAAA,eAAC,aAAW;EACrB;IAAAM;EAAA,IAAAJ,UAAA,CAAAC,kBAAA;EAMO,OAAS,eAAAZ,IAAA,CAAqBe,UAAE,EAAS;IAC9CD;EACA;AAEA;AACA,SAAOE,oBAACA,CAAAX,KAAA;EACV;IAAAE;EAAA,IAAAF,KAAA","ignoreList":[]}
@@ -0,0 +1,6 @@
1
+ import { getGestureHandler } from "./gestureState.mjs";
2
+ import { claimExternalPressOwnership, releaseExternalPressOwnership } from "./gestureState.mjs";
3
+ import { PressBoundary } from "./PressBoundary.mjs";
4
+ import { getGestureHandlerConfig, setupGestureHandler } from "./setup-gesture-handler.mjs";
5
+ export { PressBoundary, getGestureHandler, getGestureHandlerConfig, setupGestureHandler, claimExternalPressOwnership as unstable_claimExternalPressOwnership, releaseExternalPressOwnership as unstable_releaseExternalPressOwnership };
6
+ //# sourceMappingURL=gesture-handler.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["getGestureHandler","claimExternalPressOwnership","releaseExternalPressOwnership","PressBoundary","getGestureHandlerConfig","setupGestureHandler"],"sources":["../../src/gesture-handler.ts"],"sourcesContent":[null],"mappings":"AAAA,SAASA,iBAAA,QAAyB;AAMlC,SACiCC,2BAAA,EACEC,6BAAA,QAC5B;AACP,SAASC,aAAA,QAAqB;AAE9B,SACEC,uBAAA,EACAC,mBAAA,QAEK","ignoreList":[]}
@@ -0,0 +1,6 @@
1
+ import { getGestureHandler } from "./gestureState.native.js";
2
+ import { claimExternalPressOwnership, releaseExternalPressOwnership } from "./gestureState.native.js";
3
+ import { PressBoundary } from "./PressBoundary.native.js";
4
+ import { getGestureHandlerConfig, setupGestureHandler } from "./setup-gesture-handler.native.js";
5
+ export { PressBoundary, getGestureHandler, getGestureHandlerConfig, setupGestureHandler, claimExternalPressOwnership as unstable_claimExternalPressOwnership, releaseExternalPressOwnership as unstable_releaseExternalPressOwnership };
6
+ //# sourceMappingURL=gesture-handler.native.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["getGestureHandler","claimExternalPressOwnership","releaseExternalPressOwnership","PressBoundary","getGestureHandlerConfig","setupGestureHandler","unstable_claimExternalPressOwnership"],"sources":["../../src/gesture-handler.ts"],"sourcesContent":[null],"mappings":"AAAA,SAASA,iBAAA,QAAyB;AAMlC,SAAAC,2BAAA,EAAAC,6BAAA;AAAA,SACiCC,aAAA;AAAA,SACEC,uBAAA,EAAAC,mBAAA;AAAA,SAEnCF,aAAS,EAETH,iBAAA,EACEI,uBAAA,EACAC,mBAAA,EAAAJ,2BAEK,IAAAK,oCAAA,E","ignoreList":[]}
@@ -1,47 +1,131 @@
1
- const GLOBAL_KEY = "__tamagui_native_gesture_state__";
2
- function getGlobalState() {
3
- const g = globalThis;
4
- return g[GLOBAL_KEY] || (g[GLOBAL_KEY] = {
5
- enabled: !1,
6
- Gesture: null,
7
- GestureDetector: null,
8
- ScrollView: null
9
- }), g[GLOBAL_KEY];
1
+ import { createGlobalState } from "./globalState.mjs";
2
+ const state = createGlobalState(`gesture`, {
3
+ enabled: false,
4
+ Gesture: null,
5
+ GestureDetector: null,
6
+ ScrollView: null
7
+ });
8
+ let pressGestureDebugId = 0;
9
+ let externalPressDebugId = 0;
10
+ const pressState = {
11
+ owner: null,
12
+ ownerId: null,
13
+ ownerSource: null,
14
+ timestamp: 0
15
+ };
16
+ function resetPressOwner() {
17
+ pressState.owner = null;
18
+ pressState.ownerId = null;
19
+ pressState.ownerSource = null;
20
+ pressState.timestamp = 0;
21
+ }
22
+ function resetStaleOwner(now, debugName) {
23
+ if (now - pressState.timestamp > 2e3) {
24
+ resetPressOwner();
25
+ }
26
+ }
27
+ function claimExternalPressOwnership(debugName) {
28
+ const now = Date.now();
29
+ resetStaleOwner(now, debugName);
30
+ const token = {};
31
+ const ownerId = ++externalPressDebugId;
32
+ const previousOwnerId = pressState.ownerId;
33
+ const previousOwnerSource = pressState.ownerSource;
34
+ pressState.owner = token;
35
+ pressState.ownerId = ownerId;
36
+ pressState.ownerSource = "external";
37
+ pressState.timestamp = now;
38
+ return token;
39
+ }
40
+ function releaseExternalPressOwnership(token, debugName) {
41
+ if (!token || pressState.owner !== token) {
42
+ return;
43
+ }
44
+ resetPressOwner();
10
45
  }
11
46
  function getGestureHandler() {
12
47
  return {
13
48
  get isEnabled() {
14
- return getGlobalState().enabled;
49
+ return state.get().enabled;
15
50
  },
16
51
  get state() {
17
- return getGlobalState();
52
+ return state.get();
18
53
  },
19
54
  set(updates) {
20
- const state = getGlobalState();
21
- Object.assign(state, updates);
55
+ Object.assign(state.get(), updates);
22
56
  },
23
57
  disable() {
24
- const state = getGlobalState();
25
- state.enabled = !1;
58
+ state.get().enabled = false;
26
59
  },
27
60
  createPressGesture(config) {
28
61
  const {
29
62
  Gesture
30
- } = getGlobalState();
63
+ } = state.get();
31
64
  if (!Gesture) return null;
32
- const longPressDuration = config.delayLongPress ?? 500,
33
- tap = Gesture.Tap().runOnJS(!0).maxDuration(1e4).onBegin(e => {
34
- config.onPressIn?.(e);
35
- }).onEnd(e => {
65
+ const longPressDuration = config.delayLongPress ?? 500;
66
+ const myToken = {};
67
+ const myDebugId = ++pressGestureDebugId;
68
+ const GRACE_PERIOD_MS = process.env.TAMAGUI_RNGH_PRESS_DELAY ? +process.env.TAMAGUI_RNGH_PRESS_DELAY : 24;
69
+ const tryClaimOwnership = () => {
70
+ const now = Date.now();
71
+ resetStaleOwner(now, config.debugName);
72
+ const withinGrace = now - pressState.timestamp < GRACE_PERIOD_MS;
73
+ const previousOwnerId = pressState.ownerId;
74
+ const previousOwnerSource = pressState.ownerSource;
75
+ if (pressState.owner === null || withinGrace && pressState.ownerSource !== "external") {
76
+ pressState.owner = myToken;
77
+ pressState.ownerId = myDebugId;
78
+ pressState.ownerSource = "internal";
79
+ pressState.timestamp = now;
80
+ }
81
+ return pressState.owner === myToken;
82
+ };
83
+ const isOwner = () => pressState.owner === myToken;
84
+ const releaseOwnership = () => {
85
+ if (pressState.owner === myToken) {
86
+ resetPressOwner();
87
+ }
88
+ };
89
+ const tap = Gesture.Tap().runOnJS(true).maxDuration(1e4).onBegin(e => {
90
+ tryClaimOwnership();
91
+ setTimeout(() => {
92
+ if (isOwner()) {
93
+ config.onPressIn?.(e);
94
+ }
95
+ }, GRACE_PERIOD_MS + 1);
96
+ }).onEnd(e => {
97
+ if (isOwner()) {
36
98
  config.onPress?.(e);
37
- }).onFinalize(e => {
99
+ }
100
+ }).onFinalize(e => {
101
+ if (isOwner()) {
102
+ config.onPressOut?.(e);
103
+ releaseOwnership();
104
+ }
105
+ });
106
+ if (config.hitSlop) tap.hitSlop(config.hitSlop);
107
+ if (!config.onLongPress) return tap;
108
+ const longPress = Gesture.LongPress().runOnJS(true).minDuration(longPressDuration).onBegin(e => {
109
+ tryClaimOwnership();
110
+ setTimeout(() => {
111
+ if (isOwner()) {
112
+ config.onPressIn?.(e);
113
+ }
114
+ }, GRACE_PERIOD_MS + 1);
115
+ }).onStart(e => {
116
+ if (isOwner()) {
117
+ config.onLongPress?.(e);
118
+ }
119
+ }).onFinalize(e => {
120
+ if (isOwner()) {
38
121
  config.onPressOut?.(e);
39
- });
40
- if (config.hitSlop && tap.hitSlop(config.hitSlop), !config.onLongPress) return tap;
41
- const longPress = Gesture.LongPress().runOnJS(!0).minDuration(longPressDuration).onBegin(e => config.onPressIn?.(e)).onStart(e => config.onLongPress?.(e)).onFinalize(e => config.onPressOut?.(e));
42
- return config.hitSlop && longPress.hitSlop(config.hitSlop), Gesture.Exclusive(longPress, tap);
122
+ releaseOwnership();
123
+ }
124
+ });
125
+ if (config.hitSlop) longPress.hitSlop(config.hitSlop);
126
+ return Gesture.Exclusive(longPress, tap);
43
127
  }
44
128
  };
45
129
  }
46
- export { getGestureHandler };
130
+ export { claimExternalPressOwnership, getGestureHandler, releaseExternalPressOwnership };
47
131
  //# sourceMappingURL=gestureState.mjs.map
@@ -1 +1 @@
1
- {"version":3,"names":["GLOBAL_KEY","getGlobalState","g","globalThis","enabled","Gesture","GestureDetector","ScrollView","getGestureHandler","isEnabled","state","set","updates","Object","assign","disable","createPressGesture","config","longPressDuration","delayLongPress","tap","Tap","runOnJS","maxDuration","onBegin","e","onPressIn","onEnd","onPress","onFinalize","onPressOut","hitSlop","onLongPress","longPress","LongPress","minDuration","onStart","Exclusive"],"sources":["../../src/gestureState.ts"],"sourcesContent":[null],"mappings":"AAEA,MAAMA,UAAA,GAAa;AAEnB,SAASC,eAAA,EAA+B;EACtC,MAAMC,CAAA,GAAIC,UAAA;EACV,OAAKD,CAAA,CAAEF,UAAU,MACfE,CAAA,CAAEF,UAAU,IAAI;IACdI,OAAA,EAAS;IACTC,OAAA,EAAS;IACTC,eAAA,EAAiB;IACjBC,UAAA,EAAY;EACd,IAEKL,CAAA,CAAEF,UAAU;AACrB;AA0BO,SAASQ,kBAAA,EAA4C;EAC1D,OAAO;IACL,IAAIC,UAAA,EAAqB;MACvB,OAAOR,cAAA,CAAe,EAAEG,OAAA;IAC1B;IACA,IAAIM,MAAA,EAAsB;MACxB,OAAOT,cAAA,CAAe;IACxB;IACAU,IAAIC,OAAA,EAAsC;MACxC,MAAMF,KAAA,GAAQT,cAAA,CAAe;MAC7BY,MAAA,CAAOC,MAAA,CAAOJ,KAAA,EAAOE,OAAO;IAC9B;IAEAG,QAAA,EAAgB;MACd,MAAML,KAAA,GAAQT,cAAA,CAAe;MAC7BS,KAAA,CAAMN,OAAA,GAAU;IAClB;IAEAY,mBAAmBC,MAAA,EAAiC;MAClD,MAAM;QAAEZ;MAAQ,IAAIJ,cAAA,CAAe;MACnC,IAAI,CAACI,OAAA,EAAS,OAAO;MAErB,MAAMa,iBAAA,GAAoBD,MAAA,CAAOE,cAAA,IAAkB;QAI7CC,GAAA,GAAMf,OAAA,CAAQgB,GAAA,CAAI,EACrBC,OAAA,CAAQ,EAAI,EACZC,WAAA,CAAY,GAAK,EACjBC,OAAA,CAASC,CAAA,IAAW;UACnBR,MAAA,CAAOS,SAAA,GAAYD,CAAC;QACtB,CAAC,EACAE,KAAA,CAAOF,CAAA,IAAW;UACjBR,MAAA,CAAOW,OAAA,GAAUH,CAAC;QACpB,CAAC,EACAI,UAAA,CAAYJ,CAAA,IAAW;UACtBR,MAAA,CAAOa,UAAA,GAAaL,CAAC;QACvB,CAAC;MAKH,IAHIR,MAAA,CAAOc,OAAA,IAASX,GAAA,CAAIW,OAAA,CAAQd,MAAA,CAAOc,OAAO,GAG1C,CAACd,MAAA,CAAOe,WAAA,EAAa,OAAOZ,GAAA;MAGhC,MAAMa,SAAA,GAAY5B,OAAA,CAAQ6B,SAAA,CAAU,EACjCZ,OAAA,CAAQ,EAAI,EACZa,WAAA,CAAYjB,iBAAiB,EAC7BM,OAAA,CAASC,CAAA,IAAWR,MAAA,CAAOS,SAAA,GAAYD,CAAC,CAAC,EACzCW,OAAA,CAASX,CAAA,IAAWR,MAAA,CAAOe,WAAA,GAAcP,CAAC,CAAC,EAC3CI,UAAA,CAAYJ,CAAA,IAAWR,MAAA,CAAOa,UAAA,GAAaL,CAAC,CAAC;MAEhD,OAAIR,MAAA,CAAOc,OAAA,IAASE,SAAA,CAAUF,OAAA,CAAQd,MAAA,CAAOc,OAAO,GAG7C1B,OAAA,CAAQgC,SAAA,CAAUJ,SAAA,EAAWb,GAAG;IACzC;EACF;AACF","ignoreList":[]}
1
+ {"version":3,"names":["createGlobalState","state","enabled","Gesture","GestureDetector","ScrollView","pressGestureDebugId","externalPressDebugId","pressState","owner","ownerId","ownerSource","timestamp","resetPressOwner","resetStaleOwner","now","debugName","claimExternalPressOwnership","Date","token","previousOwnerId","previousOwnerSource","releaseExternalPressOwnership","getGestureHandler","isEnabled","get","set","updates","Object","assign","disable","createPressGesture","config","longPressDuration","delayLongPress","myToken","myDebugId","GRACE_PERIOD_MS","process","env","TAMAGUI_RNGH_PRESS_DELAY","tryClaimOwnership","withinGrace","isOwner","releaseOwnership","tap","Tap","runOnJS","maxDuration","onBegin","e","setTimeout","onPressIn","onEnd","onPress","onFinalize","onPressOut","hitSlop","onLongPress","longPress","LongPress","minDuration","onStart","Exclusive"],"sources":["../../src/gestureState.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
@@ -1,60 +1,140 @@
1
- var GLOBAL_KEY = "__tamagui_native_gesture_state__";
2
- function getGlobalState() {
3
- var g = globalThis;
4
- return g[GLOBAL_KEY] || (g[GLOBAL_KEY] = {
5
- enabled: !1,
6
- Gesture: null,
7
- GestureDetector: null,
8
- ScrollView: null
9
- }), g[GLOBAL_KEY];
1
+ import { createGlobalState } from "./globalState.native.js";
2
+ var state = createGlobalState(`gesture`, {
3
+ enabled: false,
4
+ Gesture: null,
5
+ GestureDetector: null,
6
+ ScrollView: null
7
+ });
8
+ var pressGestureDebugId = 0;
9
+ var externalPressDebugId = 0;
10
+ var pressState = {
11
+ owner: null,
12
+ ownerId: null,
13
+ ownerSource: null,
14
+ timestamp: 0
15
+ };
16
+ function resetPressOwner() {
17
+ pressState.owner = null;
18
+ pressState.ownerId = null;
19
+ pressState.ownerSource = null;
20
+ pressState.timestamp = 0;
21
+ }
22
+ function resetStaleOwner(now, debugName) {
23
+ if (now - pressState.timestamp > 2e3) {
24
+ resetPressOwner();
25
+ }
26
+ }
27
+ function claimExternalPressOwnership(debugName) {
28
+ var now = Date.now();
29
+ resetStaleOwner(now, debugName);
30
+ var token = {};
31
+ var ownerId = ++externalPressDebugId;
32
+ var previousOwnerId = pressState.ownerId;
33
+ var previousOwnerSource = pressState.ownerSource;
34
+ pressState.owner = token;
35
+ pressState.ownerId = ownerId;
36
+ pressState.ownerSource = "external";
37
+ pressState.timestamp = now;
38
+ return token;
39
+ }
40
+ function releaseExternalPressOwnership(token, debugName) {
41
+ if (!token || pressState.owner !== token) {
42
+ return;
43
+ }
44
+ resetPressOwner();
10
45
  }
11
46
  function getGestureHandler() {
12
47
  return {
13
48
  get isEnabled() {
14
- return getGlobalState().enabled;
49
+ return state.get().enabled;
15
50
  },
16
51
  get state() {
17
- return getGlobalState();
52
+ return state.get();
18
53
  },
19
54
  set(updates) {
20
- var state = getGlobalState();
21
- Object.assign(state, updates);
55
+ Object.assign(state.get(), updates);
22
56
  },
23
57
  disable() {
24
- var state = getGlobalState();
25
- state.enabled = !1;
58
+ state.get().enabled = false;
26
59
  },
27
60
  createPressGesture(config) {
28
61
  var {
29
62
  Gesture
30
- } = getGlobalState();
63
+ } = state.get();
31
64
  if (!Gesture) return null;
32
- var _config_delayLongPress,
33
- longPressDuration = (_config_delayLongPress = config.delayLongPress) !== null && _config_delayLongPress !== void 0 ? _config_delayLongPress : 500,
34
- tap = Gesture.Tap().runOnJS(!0).maxDuration(1e4).onBegin(function (e) {
35
- var _config_onPressIn;
36
- (_config_onPressIn = config.onPressIn) === null || _config_onPressIn === void 0 || _config_onPressIn.call(config, e);
37
- }).onEnd(function (e) {
65
+ var _config_delayLongPress;
66
+ var longPressDuration = (_config_delayLongPress = config.delayLongPress) !== null && _config_delayLongPress !== void 0 ? _config_delayLongPress : 500;
67
+ var myToken = {};
68
+ var myDebugId = ++pressGestureDebugId;
69
+ var GRACE_PERIOD_MS = process.env.TAMAGUI_RNGH_PRESS_DELAY ? +process.env.TAMAGUI_RNGH_PRESS_DELAY : 24;
70
+ var tryClaimOwnership = function () {
71
+ var now = Date.now();
72
+ resetStaleOwner(now, config.debugName);
73
+ var withinGrace = now - pressState.timestamp < GRACE_PERIOD_MS;
74
+ var previousOwnerId = pressState.ownerId;
75
+ var previousOwnerSource = pressState.ownerSource;
76
+ if (pressState.owner === null || withinGrace && pressState.ownerSource !== "external") {
77
+ pressState.owner = myToken;
78
+ pressState.ownerId = myDebugId;
79
+ pressState.ownerSource = "internal";
80
+ pressState.timestamp = now;
81
+ }
82
+ return pressState.owner === myToken;
83
+ };
84
+ var isOwner = function () {
85
+ return pressState.owner === myToken;
86
+ };
87
+ var releaseOwnership = function () {
88
+ if (pressState.owner === myToken) {
89
+ resetPressOwner();
90
+ }
91
+ };
92
+ var tap = Gesture.Tap().runOnJS(true).maxDuration(1e4).onBegin(function (e) {
93
+ tryClaimOwnership();
94
+ setTimeout(function () {
95
+ if (isOwner()) {
96
+ var _config_onPressIn;
97
+ (_config_onPressIn = config.onPressIn) === null || _config_onPressIn === void 0 ? void 0 : _config_onPressIn.call(config, e);
98
+ }
99
+ }, GRACE_PERIOD_MS + 1);
100
+ }).onEnd(function (e) {
101
+ if (isOwner()) {
38
102
  var _config_onPress;
39
- (_config_onPress = config.onPress) === null || _config_onPress === void 0 || _config_onPress.call(config, e);
40
- }).onFinalize(function (e) {
103
+ (_config_onPress = config.onPress) === null || _config_onPress === void 0 ? void 0 : _config_onPress.call(config, e);
104
+ }
105
+ }).onFinalize(function (e) {
106
+ if (isOwner()) {
41
107
  var _config_onPressOut;
42
- (_config_onPressOut = config.onPressOut) === null || _config_onPressOut === void 0 || _config_onPressOut.call(config, e);
43
- });
44
- if (config.hitSlop && tap.hitSlop(config.hitSlop), !config.onLongPress) return tap;
45
- var longPress = Gesture.LongPress().runOnJS(!0).minDuration(longPressDuration).onBegin(function (e) {
46
- var _config_onPressIn;
47
- return (_config_onPressIn = config.onPressIn) === null || _config_onPressIn === void 0 ? void 0 : _config_onPressIn.call(config, e);
108
+ (_config_onPressOut = config.onPressOut) === null || _config_onPressOut === void 0 ? void 0 : _config_onPressOut.call(config, e);
109
+ releaseOwnership();
110
+ }
111
+ });
112
+ if (config.hitSlop) tap.hitSlop(config.hitSlop);
113
+ if (!config.onLongPress) return tap;
114
+ var longPress = Gesture.LongPress().runOnJS(true).minDuration(longPressDuration).onBegin(function (e) {
115
+ tryClaimOwnership();
116
+ setTimeout(function () {
117
+ if (isOwner()) {
118
+ var _config_onPressIn;
119
+ (_config_onPressIn = config.onPressIn) === null || _config_onPressIn === void 0 ? void 0 : _config_onPressIn.call(config, e);
120
+ }
121
+ }, GRACE_PERIOD_MS + 1);
48
122
  }).onStart(function (e) {
49
- var _config_onLongPress;
50
- return (_config_onLongPress = config.onLongPress) === null || _config_onLongPress === void 0 ? void 0 : _config_onLongPress.call(config, e);
123
+ if (isOwner()) {
124
+ var _config_onLongPress;
125
+ (_config_onLongPress = config.onLongPress) === null || _config_onLongPress === void 0 ? void 0 : _config_onLongPress.call(config, e);
126
+ }
51
127
  }).onFinalize(function (e) {
52
- var _config_onPressOut;
53
- return (_config_onPressOut = config.onPressOut) === null || _config_onPressOut === void 0 ? void 0 : _config_onPressOut.call(config, e);
128
+ if (isOwner()) {
129
+ var _config_onPressOut;
130
+ (_config_onPressOut = config.onPressOut) === null || _config_onPressOut === void 0 ? void 0 : _config_onPressOut.call(config, e);
131
+ releaseOwnership();
132
+ }
54
133
  });
55
- return config.hitSlop && longPress.hitSlop(config.hitSlop), Gesture.Exclusive(longPress, tap);
134
+ if (config.hitSlop) longPress.hitSlop(config.hitSlop);
135
+ return Gesture.Exclusive(longPress, tap);
56
136
  }
57
137
  };
58
138
  }
59
- export { getGestureHandler };
139
+ export { claimExternalPressOwnership, getGestureHandler, releaseExternalPressOwnership };
60
140
  //# sourceMappingURL=gestureState.native.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["GLOBAL_KEY","getGlobalState","g","globalThis","enabled","Gesture","GestureDetector","ScrollView","getGestureHandler","isEnabled","state","set","updates","Object","assign","disable","createPressGesture","config","_config_delayLongPress","longPressDuration","delayLongPress","tap","Tap","runOnJS","maxDuration","onBegin","e","_config_onPressIn","onPressIn","call","onEnd","_config_onPress","onPress","onFinalize","_config_onPressOut","onPressOut","hitSlop","onLongPress","longPress","LongPress","minDuration"],"sources":["../../src/gestureState.ts"],"sourcesContent":[null],"mappings":"AAEA,IAAAA,UAAM,qCAAa;AAEnB,SAASC,eAAA,EAA+B;EACtC,IAAAC,CAAA,GAAMC,UAAI;EACV,OAAKD,CAAA,CAAEF,UAAU,MACfE,CAAA,CAAEF,UAAU,IAAI;IACdI,OAAA,EAAS;IACTC,OAAA,EAAS;IACTC,eAAA,EAAiB;IACjBC,UAAA,EAAY;EACd,IAEKL,CAAA,CAAEF,UAAU;AACrB;AA0BO,SAASQ,kBAAA,EAA4C;EAC1D,OAAO;IACL,IAAIC,UAAA,EAAqB;MACvB,OAAOR,cAAA,CAAe,EAAEG,OAAA;IAC1B;IACA,IAAIM,MAAA,EAAsB;MACxB,OAAOT,cAAA,CAAe;IACxB;IACAU,IAAIC,OAAA,EAAsC;MACxC,IAAAF,KAAM,GAAAT,cAAQ;MACdY,MAAA,CAAOC,MAAA,CAAOJ,KAAA,EAAOE,OAAO;IAC9B;IAEAG,QAAA,EAAgB;MACd,IAAAL,KAAM,GAAAT,cAAQ;MACdS,KAAA,CAAMN,OAAA,GAAU;IAClB;IAEAY,mBAAmBC,MAAA,EAAiC;MAClD;QAAMZ;MAAE,IAAQJ,cAAI;MACpB,IAAI,CAACI,OAAA,EAAS,OAAO;MAErB,IAAAa,sBAA0B;QAAAC,iBAAO,IAAAD,sBAIb,GAAID,MACrB,CAAAG,cACA,MAAY,IACZ,IAAAF,sBAAoB,cAAAA,sBAAA;QAAAG,GAAA,GAAAhB,OAAA,CAAAiB,GAAA,GAAAC,OAAA,KAAAC,WAAA,MAAAC,OAAA,WAAAC,CAAA;UACnB,IAAAC,iBAAoB;UACrB,CACAA,iBAAkB,GAAAV,MAAA,CAAAW,SAAA,cAAAD,iBAAA,eAAAA,iBAAA,CAAAE,IAAA,CAAAZ,MAAA,EAAAS,CAAA;QACjB,GAAAI,KAAA,CAAO,UAAAJ,CAAU,EAAC;UACnB,IACAK,eAAuB;UACtB,CAAAA,eAAO,GAAAd,MAAc,CAAAe,OAAA,cAAAD,eAAA,eAAAA,eAAA,CAAAF,IAAA,CAAAZ,MAAA,EAAAS,CAAA;QACvB,CAAC,EAAAO,UAAA,WAAAP,CAAA;UAKH,IAHIQ,kBAAgB;UAMpB,CAAAA,kBAAkB,GAAAjB,MAAQ,CAAAkB,UACvB,MAAQ,IACR,IAAAD,kBAAY,UACZ,KAAAA,kBAA2B,CAAAL,IAAA,CAAAZ,MAAc,EACzCS,CAAA;QAGH;MAIF,IAAAT,MAAA,CAAAmB,OAAA,IAAAf,GAAA,CAAAe,OAAA,CAAAnB,MAAA,CAAAmB,OAAA,IAAAnB,MAAA,CAAAoB,WAAA,SAAAhB,GAAA;MACF,IAAAiB,SAAA,GAAAjC,OAAA,CAAAkC,SAAA,GAAAhB,OAAA,KAAAiB,WAAA,CAAArB,iBAAA,EAAAM,OAAA,WAAAC,CAAA;QACF,IAAAC,iBAAA","ignoreList":[]}
1
+ {"version":3,"names":["createGlobalState","state","enabled","Gesture","GestureDetector","ScrollView","pressGestureDebugId","externalPressDebugId","pressState","owner","ownerId","ownerSource","timestamp","resetPressOwner","resetStaleOwner","now","debugName","claimExternalPressOwnership","Date","token","previousOwnerId","previousOwnerSource","releaseExternalPressOwnership","getGestureHandler","isEnabled","get","set","updates","Object","assign","disable","createPressGesture","config","_config_delayLongPress","longPressDuration","delayLongPress","myToken","myDebugId","GRACE_PERIOD_MS","process","env","TAMAGUI_RNGH_PRESS_DELAY","tryClaimOwnership","withinGrace","isOwner","releaseOwnership","tap","Tap","runOnJS","maxDuration","onBegin","e","setTimeout","_config_onPressIn","onPressIn","call","onEnd","_config_onPress","onPress","onFinalize","_config_onPressOut","onPressOut","hitSlop","onLongPress","longPress","LongPress","minDuration","onStart","_config_onLongPress"],"sources":["../../src/gestureState.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}