@hanzogui/native 8.3.0 → 8.3.2

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 (372) hide show
  1. package/dist/cjs/PressBoundary.js +41 -0
  2. package/dist/cjs/PressBoundary.js.map +1 -0
  3. package/dist/cjs/burntState.js +23 -0
  4. package/dist/cjs/burntState.js.map +1 -0
  5. package/dist/cjs/components.js +50 -0
  6. package/dist/cjs/components.js.map +1 -0
  7. package/dist/cjs/gesture-handler.js +15 -0
  8. package/dist/cjs/gesture-handler.js.map +1 -0
  9. package/dist/cjs/gestureState.js +307 -0
  10. package/dist/cjs/gestureState.js.map +1 -0
  11. package/dist/cjs/globalState.js +24 -0
  12. package/dist/cjs/globalState.js.map +1 -0
  13. package/dist/cjs/index.js +61 -0
  14. package/dist/cjs/index.js.map +1 -0
  15. package/dist/cjs/keyboardControllerState.js +26 -0
  16. package/dist/cjs/keyboardControllerState.js.map +1 -0
  17. package/dist/cjs/linearGradientState.js +22 -0
  18. package/dist/cjs/linearGradientState.js.map +1 -0
  19. package/dist/cjs/nativeMenuContext.js +6 -0
  20. package/dist/cjs/nativeMenuContext.js.map +1 -0
  21. package/dist/cjs/package.json +1 -0
  22. package/dist/cjs/portalState.js +22 -0
  23. package/dist/cjs/portalState.js.map +1 -0
  24. package/dist/cjs/safeAreaState.js +40 -0
  25. package/dist/cjs/safeAreaState.js.map +1 -0
  26. package/dist/cjs/setup-burnt.js +38 -0
  27. package/dist/cjs/setup-burnt.js.map +1 -0
  28. package/dist/cjs/setup-expo-linear-gradient.js +37 -0
  29. package/dist/cjs/setup-expo-linear-gradient.js.map +1 -0
  30. package/dist/cjs/setup-gesture-handler.js +76 -0
  31. package/dist/cjs/setup-gesture-handler.js.map +1 -0
  32. package/dist/cjs/setup-keyboard-controller.js +51 -0
  33. package/dist/cjs/setup-keyboard-controller.js.map +1 -0
  34. package/dist/cjs/setup-keyboard-controller.web.js +7 -0
  35. package/dist/cjs/setup-keyboard-controller.web.js.map +1 -0
  36. package/dist/cjs/setup-safe-area.js +54 -0
  37. package/dist/cjs/setup-safe-area.js.map +1 -0
  38. package/dist/cjs/setup-teleport.js +37 -0
  39. package/dist/cjs/setup-teleport.js.map +1 -0
  40. package/dist/cjs/setup-worklets.js +48 -0
  41. package/dist/cjs/setup-worklets.js.map +1 -0
  42. package/dist/cjs/setup-zeego.js +42 -0
  43. package/dist/cjs/setup-zeego.js.map +1 -0
  44. package/dist/cjs/types.js +3 -0
  45. package/dist/cjs/types.js.map +1 -0
  46. package/dist/cjs/workletsState.js +25 -0
  47. package/dist/cjs/workletsState.js.map +1 -0
  48. package/dist/cjs/zeegoState.js +23 -0
  49. package/dist/cjs/zeegoState.js.map +1 -0
  50. package/dist/esm/PressBoundary.js +37 -0
  51. package/dist/esm/PressBoundary.js.map +1 -0
  52. package/dist/esm/burntState.js +20 -0
  53. package/dist/esm/burntState.js.map +1 -0
  54. package/dist/esm/components.js +45 -0
  55. package/dist/esm/components.js.map +1 -0
  56. package/dist/esm/gesture-handler.js +5 -0
  57. package/dist/esm/gesture-handler.js.map +1 -0
  58. package/dist/esm/gestureState.js +300 -0
  59. package/dist/esm/gestureState.js.map +1 -0
  60. package/dist/esm/globalState.js +21 -0
  61. package/dist/esm/globalState.js.map +1 -0
  62. package/dist/esm/index.js +41 -13
  63. package/dist/esm/index.js.map +1 -1
  64. package/dist/esm/keyboardControllerState.js +21 -0
  65. package/dist/esm/keyboardControllerState.js.map +1 -0
  66. package/dist/esm/linearGradientState.js +19 -0
  67. package/dist/esm/linearGradientState.js.map +1 -0
  68. package/dist/esm/nativeMenuContext.js +3 -0
  69. package/dist/esm/nativeMenuContext.js.map +1 -0
  70. package/dist/esm/portalState.js +19 -0
  71. package/dist/esm/portalState.js.map +1 -0
  72. package/dist/esm/safeAreaState.js +37 -0
  73. package/dist/esm/safeAreaState.js.map +1 -0
  74. package/dist/esm/setup-burnt.js +36 -0
  75. package/dist/esm/setup-burnt.js.map +1 -0
  76. package/dist/esm/setup-expo-linear-gradient.js +35 -0
  77. package/dist/esm/setup-expo-linear-gradient.js.map +1 -0
  78. package/dist/esm/setup-gesture-handler.js +72 -0
  79. package/dist/esm/setup-gesture-handler.js.map +1 -0
  80. package/dist/esm/setup-keyboard-controller.js +49 -0
  81. package/dist/esm/setup-keyboard-controller.js.map +1 -0
  82. package/dist/esm/setup-keyboard-controller.web.js +7 -0
  83. package/dist/esm/setup-keyboard-controller.web.js.map +1 -0
  84. package/dist/esm/setup-safe-area.js +52 -0
  85. package/dist/esm/setup-safe-area.js.map +1 -0
  86. package/dist/esm/setup-teleport.js +35 -0
  87. package/dist/esm/setup-teleport.js.map +1 -0
  88. package/dist/esm/setup-worklets.js +46 -0
  89. package/dist/esm/setup-worklets.js.map +1 -0
  90. package/dist/esm/setup-zeego.js +40 -0
  91. package/dist/esm/setup-zeego.js.map +1 -0
  92. package/dist/esm/types.js +2 -0
  93. package/dist/esm/types.js.map +1 -0
  94. package/dist/esm/workletsState.js +22 -0
  95. package/dist/esm/workletsState.js.map +1 -0
  96. package/dist/esm/zeegoState.js +20 -0
  97. package/dist/esm/zeegoState.js.map +1 -0
  98. package/package.json +75 -93
  99. package/src/PressBoundary.tsx +1 -1
  100. package/src/burntState.ts +2 -2
  101. package/src/components.tsx +11 -5
  102. package/src/gesture-handler.ts +6 -6
  103. package/src/gestureState.ts +2 -2
  104. package/src/index.ts +21 -21
  105. package/src/keyboardControllerState.ts +2 -2
  106. package/src/linearGradientState.ts +2 -2
  107. package/src/portalState.ts +2 -2
  108. package/src/safeAreaState.ts +2 -2
  109. package/src/setup-burnt.ts +1 -1
  110. package/src/setup-expo-linear-gradient.ts +1 -1
  111. package/src/setup-gesture-handler.ts +1 -1
  112. package/src/setup-keyboard-controller.ts +1 -1
  113. package/src/setup-safe-area.ts +1 -1
  114. package/src/setup-teleport.ts +1 -1
  115. package/src/setup-worklets.ts +1 -1
  116. package/src/setup-zeego.ts +1 -1
  117. package/src/workletsState.ts +2 -2
  118. package/src/zeegoState.ts +2 -2
  119. package/types/PressBoundary.d.ts +9 -10
  120. package/types/PressBoundary.d.ts.map +1 -11
  121. package/types/burntState.d.ts +4 -5
  122. package/types/burntState.d.ts.map +1 -11
  123. package/types/components.d.ts +12 -13
  124. package/types/components.d.ts.map +1 -11
  125. package/types/gesture-handler.d.ts +6 -7
  126. package/types/gesture-handler.d.ts.map +1 -11
  127. package/types/gestureState.d.ts +17 -18
  128. package/types/gestureState.d.ts.map +1 -11
  129. package/types/globalState.d.ts +3 -4
  130. package/types/globalState.d.ts.map +1 -11
  131. package/types/index.d.ts +40 -41
  132. package/types/index.d.ts.map +1 -11
  133. package/types/keyboardControllerState.d.ts +1 -2
  134. package/types/keyboardControllerState.d.ts.map +1 -11
  135. package/types/linearGradientState.d.ts +4 -5
  136. package/types/linearGradientState.d.ts.map +1 -11
  137. package/types/nativeMenuContext.d.ts +1 -2
  138. package/types/nativeMenuContext.d.ts.map +1 -11
  139. package/types/portalState.d.ts +4 -5
  140. package/types/portalState.d.ts.map +1 -11
  141. package/types/safeAreaState.d.ts +8 -9
  142. package/types/safeAreaState.d.ts.map +1 -11
  143. package/types/setup-burnt.d.ts +13 -1
  144. package/types/setup-burnt.d.ts.map +1 -11
  145. package/types/setup-expo-linear-gradient.d.ts +13 -1
  146. package/types/setup-expo-linear-gradient.d.ts.map +1 -11
  147. package/types/setup-gesture-handler.d.ts +22 -5
  148. package/types/setup-gesture-handler.d.ts.map +1 -11
  149. package/types/setup-keyboard-controller.d.ts +18 -1
  150. package/types/setup-keyboard-controller.d.ts.map +1 -11
  151. package/types/setup-keyboard-controller.web.d.ts +4 -1
  152. package/types/setup-keyboard-controller.web.d.ts.map +1 -11
  153. package/types/setup-safe-area.d.ts +23 -1
  154. package/types/setup-safe-area.d.ts.map +1 -11
  155. package/types/setup-teleport.d.ts +13 -1
  156. package/types/setup-teleport.d.ts.map +1 -11
  157. package/types/setup-worklets.d.ts +19 -1
  158. package/types/setup-worklets.d.ts.map +1 -11
  159. package/types/setup-zeego.d.ts +13 -1
  160. package/types/setup-zeego.d.ts.map +1 -11
  161. package/types/types.d.ts +47 -48
  162. package/types/types.d.ts.map +1 -11
  163. package/types/workletsState.d.ts +4 -5
  164. package/types/workletsState.d.ts.map +1 -11
  165. package/types/zeegoState.d.ts +4 -5
  166. package/types/zeegoState.d.ts.map +1 -11
  167. package/dist/cjs/PressBoundary.cjs +0 -92
  168. package/dist/cjs/PressBoundary.native.js +0 -105
  169. package/dist/cjs/PressBoundary.native.js.map +0 -1
  170. package/dist/cjs/burntState.cjs +0 -46
  171. package/dist/cjs/burntState.native.js +0 -49
  172. package/dist/cjs/burntState.native.js.map +0 -1
  173. package/dist/cjs/components.cjs +0 -71
  174. package/dist/cjs/components.native.js +0 -77
  175. package/dist/cjs/components.native.js.map +0 -1
  176. package/dist/cjs/gesture-handler.cjs +0 -37
  177. package/dist/cjs/gesture-handler.native.js +0 -40
  178. package/dist/cjs/gesture-handler.native.js.map +0 -1
  179. package/dist/cjs/gestureState.cjs +0 -249
  180. package/dist/cjs/gestureState.native.js +0 -268
  181. package/dist/cjs/gestureState.native.js.map +0 -1
  182. package/dist/cjs/globalState.cjs +0 -45
  183. package/dist/cjs/globalState.native.js +0 -48
  184. package/dist/cjs/globalState.native.js.map +0 -1
  185. package/dist/cjs/index.cjs +0 -54
  186. package/dist/cjs/index.native.js +0 -57
  187. package/dist/cjs/index.native.js.map +0 -1
  188. package/dist/cjs/keyboardControllerState.cjs +0 -49
  189. package/dist/cjs/keyboardControllerState.native.js +0 -52
  190. package/dist/cjs/keyboardControllerState.native.js.map +0 -1
  191. package/dist/cjs/linearGradientState.cjs +0 -45
  192. package/dist/cjs/linearGradientState.native.js +0 -48
  193. package/dist/cjs/linearGradientState.native.js.map +0 -1
  194. package/dist/cjs/nativeMenuContext.cjs +0 -29
  195. package/dist/cjs/nativeMenuContext.native.js +0 -32
  196. package/dist/cjs/nativeMenuContext.native.js.map +0 -1
  197. package/dist/cjs/portalState.cjs +0 -45
  198. package/dist/cjs/portalState.native.js +0 -48
  199. package/dist/cjs/portalState.native.js.map +0 -1
  200. package/dist/cjs/safeAreaState.cjs +0 -73
  201. package/dist/cjs/safeAreaState.native.js +0 -76
  202. package/dist/cjs/safeAreaState.native.js.map +0 -1
  203. package/dist/cjs/setup-burnt.cjs +0 -17
  204. package/dist/cjs/setup-burnt.native.js +0 -20
  205. package/dist/cjs/setup-burnt.native.js.map +0 -1
  206. package/dist/cjs/setup-expo-linear-gradient.cjs +0 -16
  207. package/dist/cjs/setup-expo-linear-gradient.native.js +0 -19
  208. package/dist/cjs/setup-expo-linear-gradient.native.js.map +0 -1
  209. package/dist/cjs/setup-gesture-handler.cjs +0 -76
  210. package/dist/cjs/setup-gesture-handler.native.js +0 -79
  211. package/dist/cjs/setup-gesture-handler.native.js.map +0 -1
  212. package/dist/cjs/setup-keyboard-controller.cjs +0 -0
  213. package/dist/cjs/setup-keyboard-controller.native.js +0 -36
  214. package/dist/cjs/setup-keyboard-controller.native.js.map +0 -1
  215. package/dist/cjs/setup-safe-area.cjs +0 -3
  216. package/dist/cjs/setup-safe-area.native.js +0 -23
  217. package/dist/cjs/setup-safe-area.native.js.map +0 -1
  218. package/dist/cjs/setup-teleport.cjs +0 -18
  219. package/dist/cjs/setup-teleport.native.js +0 -21
  220. package/dist/cjs/setup-teleport.native.js.map +0 -1
  221. package/dist/cjs/setup-worklets.cjs +0 -21
  222. package/dist/cjs/setup-worklets.native.js +0 -24
  223. package/dist/cjs/setup-worklets.native.js.map +0 -1
  224. package/dist/cjs/setup-zeego.cjs +0 -22
  225. package/dist/cjs/setup-zeego.native.js +0 -25
  226. package/dist/cjs/setup-zeego.native.js.map +0 -1
  227. package/dist/cjs/types.cjs +0 -18
  228. package/dist/cjs/types.native.js +0 -21
  229. package/dist/cjs/types.native.js.map +0 -1
  230. package/dist/cjs/workletsState.cjs +0 -48
  231. package/dist/cjs/workletsState.native.js +0 -51
  232. package/dist/cjs/workletsState.native.js.map +0 -1
  233. package/dist/cjs/zeegoState.cjs +0 -46
  234. package/dist/cjs/zeegoState.native.js +0 -49
  235. package/dist/cjs/zeegoState.native.js.map +0 -1
  236. package/dist/esm/PressBoundary.mjs +0 -56
  237. package/dist/esm/PressBoundary.mjs.map +0 -1
  238. package/dist/esm/PressBoundary.native.js +0 -66
  239. package/dist/esm/PressBoundary.native.js.map +0 -1
  240. package/dist/esm/burntState.mjs +0 -21
  241. package/dist/esm/burntState.mjs.map +0 -1
  242. package/dist/esm/burntState.native.js +0 -21
  243. package/dist/esm/burntState.native.js.map +0 -1
  244. package/dist/esm/components.mjs +0 -44
  245. package/dist/esm/components.mjs.map +0 -1
  246. package/dist/esm/components.native.js +0 -47
  247. package/dist/esm/components.native.js.map +0 -1
  248. package/dist/esm/gesture-handler.mjs +0 -6
  249. package/dist/esm/gesture-handler.mjs.map +0 -1
  250. package/dist/esm/gesture-handler.native.js +0 -6
  251. package/dist/esm/gesture-handler.native.js.map +0 -1
  252. package/dist/esm/gestureState.mjs +0 -220
  253. package/dist/esm/gestureState.mjs.map +0 -1
  254. package/dist/esm/gestureState.native.js +0 -236
  255. package/dist/esm/gestureState.native.js.map +0 -1
  256. package/dist/esm/globalState.mjs +0 -20
  257. package/dist/esm/globalState.mjs.map +0 -1
  258. package/dist/esm/globalState.native.js +0 -20
  259. package/dist/esm/globalState.native.js.map +0 -1
  260. package/dist/esm/index.mjs +0 -13
  261. package/dist/esm/index.mjs.map +0 -1
  262. package/dist/esm/index.native.js +0 -13
  263. package/dist/esm/index.native.js.map +0 -1
  264. package/dist/esm/keyboardControllerState.mjs +0 -22
  265. package/dist/esm/keyboardControllerState.mjs.map +0 -1
  266. package/dist/esm/keyboardControllerState.native.js +0 -22
  267. package/dist/esm/keyboardControllerState.native.js.map +0 -1
  268. package/dist/esm/linearGradientState.mjs +0 -20
  269. package/dist/esm/linearGradientState.mjs.map +0 -1
  270. package/dist/esm/linearGradientState.native.js +0 -20
  271. package/dist/esm/linearGradientState.native.js.map +0 -1
  272. package/dist/esm/nativeMenuContext.mjs +0 -4
  273. package/dist/esm/nativeMenuContext.mjs.map +0 -1
  274. package/dist/esm/nativeMenuContext.native.js +0 -4
  275. package/dist/esm/nativeMenuContext.native.js.map +0 -1
  276. package/dist/esm/portalState.mjs +0 -20
  277. package/dist/esm/portalState.mjs.map +0 -1
  278. package/dist/esm/portalState.native.js +0 -20
  279. package/dist/esm/portalState.native.js.map +0 -1
  280. package/dist/esm/safeAreaState.mjs +0 -48
  281. package/dist/esm/safeAreaState.mjs.map +0 -1
  282. package/dist/esm/safeAreaState.native.js +0 -48
  283. package/dist/esm/safeAreaState.native.js.map +0 -1
  284. package/dist/esm/setup-burnt.mjs +0 -18
  285. package/dist/esm/setup-burnt.mjs.map +0 -1
  286. package/dist/esm/setup-burnt.native.js +0 -18
  287. package/dist/esm/setup-burnt.native.js.map +0 -1
  288. package/dist/esm/setup-expo-linear-gradient.mjs +0 -17
  289. package/dist/esm/setup-expo-linear-gradient.mjs.map +0 -1
  290. package/dist/esm/setup-expo-linear-gradient.native.js +0 -17
  291. package/dist/esm/setup-expo-linear-gradient.native.js.map +0 -1
  292. package/dist/esm/setup-gesture-handler.mjs +0 -50
  293. package/dist/esm/setup-gesture-handler.mjs.map +0 -1
  294. package/dist/esm/setup-gesture-handler.native.js +0 -50
  295. package/dist/esm/setup-gesture-handler.native.js.map +0 -1
  296. package/dist/esm/setup-keyboard-controller.mjs +0 -2
  297. package/dist/esm/setup-keyboard-controller.mjs.map +0 -1
  298. package/dist/esm/setup-keyboard-controller.native.js +0 -34
  299. package/dist/esm/setup-keyboard-controller.native.js.map +0 -1
  300. package/dist/esm/setup-safe-area.mjs +0 -4
  301. package/dist/esm/setup-safe-area.mjs.map +0 -1
  302. package/dist/esm/setup-safe-area.native.js +0 -27
  303. package/dist/esm/setup-safe-area.native.js.map +0 -1
  304. package/dist/esm/setup-teleport.mjs +0 -19
  305. package/dist/esm/setup-teleport.mjs.map +0 -1
  306. package/dist/esm/setup-teleport.native.js +0 -19
  307. package/dist/esm/setup-teleport.native.js.map +0 -1
  308. package/dist/esm/setup-worklets.mjs +0 -22
  309. package/dist/esm/setup-worklets.mjs.map +0 -1
  310. package/dist/esm/setup-worklets.native.js +0 -22
  311. package/dist/esm/setup-worklets.native.js.map +0 -1
  312. package/dist/esm/setup-zeego.mjs +0 -23
  313. package/dist/esm/setup-zeego.mjs.map +0 -1
  314. package/dist/esm/setup-zeego.native.js +0 -23
  315. package/dist/esm/setup-zeego.native.js.map +0 -1
  316. package/dist/esm/types.mjs +0 -2
  317. package/dist/esm/types.mjs.map +0 -1
  318. package/dist/esm/types.native.js +0 -2
  319. package/dist/esm/types.native.js.map +0 -1
  320. package/dist/esm/workletsState.mjs +0 -23
  321. package/dist/esm/workletsState.mjs.map +0 -1
  322. package/dist/esm/workletsState.native.js +0 -23
  323. package/dist/esm/workletsState.native.js.map +0 -1
  324. package/dist/esm/zeegoState.mjs +0 -21
  325. package/dist/esm/zeegoState.mjs.map +0 -1
  326. package/dist/esm/zeegoState.native.js +0 -21
  327. package/dist/esm/zeegoState.native.js.map +0 -1
  328. package/gesture-handler/index.cjs +0 -1
  329. package/gesture-handler/index.js +0 -1
  330. package/gesture-handler/index.native.cjs +0 -1
  331. package/gesture-handler/index.native.js +0 -1
  332. package/gesture-handler.cjs +0 -1
  333. package/setup-burnt/index.cjs +0 -2
  334. package/setup-burnt/index.js +0 -2
  335. package/setup-burnt/index.native.cjs +0 -2
  336. package/setup-burnt/index.native.js +0 -2
  337. package/setup-burnt.cjs +0 -1
  338. package/setup-expo-linear-gradient/index.cjs +0 -2
  339. package/setup-expo-linear-gradient/index.js +0 -2
  340. package/setup-expo-linear-gradient/index.native.cjs +0 -2
  341. package/setup-expo-linear-gradient/index.native.js +0 -2
  342. package/setup-expo-linear-gradient.cjs +0 -1
  343. package/setup-gesture-handler/index.cjs +0 -2
  344. package/setup-gesture-handler/index.js +0 -2
  345. package/setup-gesture-handler/index.native.cjs +0 -2
  346. package/setup-gesture-handler/index.native.js +0 -2
  347. package/setup-gesture-handler.cjs +0 -1
  348. package/setup-keyboard-controller/index.cjs +0 -2
  349. package/setup-keyboard-controller/index.js +0 -2
  350. package/setup-keyboard-controller/index.native.cjs +0 -2
  351. package/setup-keyboard-controller/index.native.js +0 -2
  352. package/setup-keyboard-controller.cjs +0 -1
  353. package/setup-safe-area/index.cjs +0 -2
  354. package/setup-safe-area/index.js +0 -2
  355. package/setup-safe-area/index.native.cjs +0 -2
  356. package/setup-safe-area/index.native.js +0 -2
  357. package/setup-safe-area.cjs +0 -1
  358. package/setup-teleport/index.cjs +0 -2
  359. package/setup-teleport/index.js +0 -2
  360. package/setup-teleport/index.native.cjs +0 -2
  361. package/setup-teleport/index.native.js +0 -2
  362. package/setup-teleport.cjs +0 -1
  363. package/setup-worklets/index.cjs +0 -2
  364. package/setup-worklets/index.js +0 -2
  365. package/setup-worklets/index.native.cjs +0 -2
  366. package/setup-worklets/index.native.js +0 -2
  367. package/setup-worklets.cjs +0 -1
  368. package/setup-zeego/index.cjs +0 -2
  369. package/setup-zeego/index.js +0 -2
  370. package/setup-zeego/index.native.cjs +0 -2
  371. package/setup-zeego/index.native.js +0 -2
  372. package/setup-zeego.cjs +0 -1
@@ -0,0 +1,41 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.PressBoundary = void 0;
4
+ const tslib_1 = require("tslib");
5
+ const jsx_runtime_1 = require("react/jsx-runtime");
6
+ const react_1 = tslib_1.__importDefault(require("react"));
7
+ const react_native_1 = require("react-native");
8
+ const gestureState_ts_1 = require("./gestureState.js");
9
+ function composeFirst(ours, theirs) {
10
+ return (...args) => {
11
+ ours(...args);
12
+ theirs?.(...args);
13
+ };
14
+ }
15
+ function composeLast(theirs, ours) {
16
+ return (...args) => {
17
+ theirs?.(...args);
18
+ ours(...args);
19
+ };
20
+ }
21
+ exports.PressBoundary = react_1.default.forwardRef(function PressBoundary({ enabled, stopPropagation, debugName, onTouchStart, onTouchEnd, onTouchCancel, onResponderGrant, onResponderRelease, onResponderTerminate, ...props }, forwardedRef) {
22
+ const tokenRef = react_1.default.useRef(null);
23
+ const isEnabled = enabled ?? stopPropagation ?? true;
24
+ const claim = react_1.default.useCallback(() => {
25
+ if (!isEnabled)
26
+ return;
27
+ if (tokenRef.current) {
28
+ (0, gestureState_ts_1.releaseExternalPressOwnership)(tokenRef.current, debugName);
29
+ }
30
+ tokenRef.current = (0, gestureState_ts_1.claimExternalPressOwnership)(debugName);
31
+ }, [debugName, isEnabled]);
32
+ const release = react_1.default.useCallback(() => {
33
+ if (!tokenRef.current)
34
+ return;
35
+ (0, gestureState_ts_1.releaseExternalPressOwnership)(tokenRef.current, debugName);
36
+ tokenRef.current = null;
37
+ }, [debugName]);
38
+ react_1.default.useEffect(() => release, [release]);
39
+ return ((0, jsx_runtime_1.jsx)(react_native_1.View, { ref: forwardedRef, ...props, onTouchStart: composeFirst(claim, onTouchStart), onTouchEnd: composeLast(onTouchEnd, release), onTouchCancel: composeLast(onTouchCancel, release), onResponderGrant: composeFirst(claim, onResponderGrant), onResponderRelease: composeLast(onResponderRelease, release), onResponderTerminate: composeLast(onResponderTerminate, release) }));
40
+ });
41
+ //# sourceMappingURL=PressBoundary.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"PressBoundary.js","sourceRoot":"","sources":["../../src/PressBoundary.tsx"],"names":[],"mappings":";;;;;AAAA,0DAAyB;AACzB,+CAAmD;AACnD,uDAI0B;AAY1B,SAAS,YAAY,CAAqC,IAAO,EAAE,MAAU;IAC3E,OAAO,CAAC,GAAG,IAAmB,EAAE,EAAE;QAChC,IAAI,CAAC,GAAG,IAAI,CAAC,CAAA;QACb,MAAM,EAAE,CAAC,GAAG,IAAI,CAAC,CAAA;IACnB,CAAC,CAAA;AACH,CAAC;AAED,SAAS,WAAW,CAAqC,MAAqB,EAAE,IAAO;IACrF,OAAO,CAAC,GAAG,IAAmB,EAAE,EAAE;QAChC,MAAM,EAAE,CAAC,GAAG,IAAI,CAAC,CAAA;QACjB,IAAI,CAAC,GAAG,IAAI,CAAC,CAAA;IACf,CAAC,CAAA;AACH,CAAC;AAEY,QAAA,aAAa,GAEtB,eAAK,CAAC,UAAU,CAA2B,SAAS,aAAa,CACnE,EACE,OAAO,EACP,eAAe,EACf,SAAS,EACT,YAAY,EACZ,UAAU,EACV,aAAa,EACb,gBAAgB,EAChB,kBAAkB,EAClB,oBAAoB,EACpB,GAAG,KAAK,EACT,EACD,YAAY;IAEZ,MAAM,QAAQ,GAAG,eAAK,CAAC,MAAM,CAAqC,IAAI,CAAC,CAAA;IACvE,MAAM,SAAS,GAAG,OAAO,IAAI,eAAe,IAAI,IAAI,CAAA;IAEpD,MAAM,KAAK,GAAG,eAAK,CAAC,WAAW,CAAC,GAAS,EAAE;QACzC,IAAI,CAAC,SAAS;YAAE,OAAM;QACtB,IAAI,QAAQ,CAAC,OAAO,EAAE,CAAC;YACrB,IAAA,+CAA6B,EAAC,QAAQ,CAAC,OAAO,EAAE,SAAS,CAAC,CAAA;QAC5D,CAAC;QACD,QAAQ,CAAC,OAAO,GAAG,IAAA,6CAA2B,EAAC,SAAS,CAAC,CAAA;IAC3D,CAAC,EAAE,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC,CAAA;IAE1B,MAAM,OAAO,GAAG,eAAK,CAAC,WAAW,CAAC,GAAS,EAAE;QAC3C,IAAI,CAAC,QAAQ,CAAC,OAAO;YAAE,OAAM;QAC7B,IAAA,+CAA6B,EAAC,QAAQ,CAAC,OAAO,EAAE,SAAS,CAAC,CAAA;QAC1D,QAAQ,CAAC,OAAO,GAAG,IAAI,CAAA;IACzB,CAAC,EAAE,CAAC,SAAS,CAAC,CAAC,CAAA;IAEf,eAAK,CAAC,SAAS,CAAC,GAAG,EAAE,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,CAAC,CAAA;IAEzC,OAAO,CACL,uBAAC,mBAAI,IACH,GAAG,EAAE,YAAY,KACb,KAAK,EACT,YAAY,EAAE,YAAY,CAAC,KAAK,EAAE,YAAY,CAAC,EAC/C,UAAU,EAAE,WAAW,CAAC,UAAU,EAAE,OAAO,CAAC,EAC5C,aAAa,EAAE,WAAW,CAAC,aAAa,EAAE,OAAO,CAAC,EAClD,gBAAgB,EAAE,YAAY,CAAC,KAAK,EAAE,gBAAgB,CAAC,EACvD,kBAAkB,EAAE,WAAW,CAAC,kBAAkB,EAAE,OAAO,CAAC,EAC5D,oBAAoB,EAAE,WAAW,CAAC,oBAAoB,EAAE,OAAO,CAAC,GAChE,CACH,CAAA;AACH,CAAC,CAAC,CAAA"}
@@ -0,0 +1,23 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.getBurnt = getBurnt;
4
+ const globalState_ts_1 = require("./globalState.js");
5
+ const state = (0, globalState_ts_1.createGlobalState)(`burnt`, {
6
+ enabled: false,
7
+ toast: null,
8
+ dismissAllAlerts: null,
9
+ });
10
+ function getBurnt() {
11
+ return {
12
+ get isEnabled() {
13
+ return state.get().enabled;
14
+ },
15
+ get state() {
16
+ return state.get();
17
+ },
18
+ set(newState) {
19
+ state.set(newState);
20
+ },
21
+ };
22
+ }
23
+ //# sourceMappingURL=burntState.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"burntState.js","sourceRoot":"","sources":["../../src/burntState.ts"],"names":[],"mappings":";;;AAAA,qDAAoD;AAGpD,MAAM,KAAK,GAAG,IAAA,kCAAiB,EAAa,OAAO,EAAE;IACnD,OAAO,EAAE,KAAK;IACd,KAAK,EAAE,IAAI;IACX,gBAAgB,EAAE,IAAI;CACvB,CAAC,CAAA;AAQF;IACE,OAAO;QACL,IAAI,SAAS;YACX,OAAO,KAAK,CAAC,GAAG,EAAE,CAAC,OAAO,CAAA;QAC5B,CAAC;QACD,IAAI,KAAK;YACP,OAAO,KAAK,CAAC,GAAG,EAAE,CAAA;QACpB,CAAC;QACD,GAAG,CAAC,QAAoB;YACtB,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAA;QACrB,CAAC;KACF,CAAA;AACH,CAAC"}
@@ -0,0 +1,50 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.NativePortal = NativePortal;
4
+ exports.NativePortalHost = NativePortalHost;
5
+ exports.NativePortalProvider = NativePortalProvider;
6
+ const jsx_runtime_1 = require("react/jsx-runtime");
7
+ const portalState_ts_1 = require("./portalState.js");
8
+ /**
9
+ * Renders children into a teleport Portal when available.
10
+ * Returns null when teleport is not set up (allows fallback handling by caller).
11
+ */
12
+ function NativePortal({ hostName = 'root', children, }) {
13
+ const state = (0, portalState_ts_1.getPortal)().state;
14
+ if (state.type !== 'teleport')
15
+ return null;
16
+ const teleport = globalThis.__hanzogui_teleport;
17
+ if (!teleport?.Portal)
18
+ return null;
19
+ const { Portal } = teleport;
20
+ return (0, jsx_runtime_1.jsx)(Portal, { hostName: hostName, children: children });
21
+ }
22
+ /**
23
+ * Renders a teleport PortalHost when available.
24
+ * Returns null when teleport is not set up.
25
+ */
26
+ function NativePortalHost({ name }) {
27
+ const state = (0, portalState_ts_1.getPortal)().state;
28
+ if (state.type !== 'teleport')
29
+ return null;
30
+ const teleport = globalThis.__hanzogui_teleport;
31
+ if (!teleport?.PortalHost)
32
+ return null;
33
+ const { PortalHost } = teleport;
34
+ return (0, jsx_runtime_1.jsx)(PortalHost, { name: name });
35
+ }
36
+ /**
37
+ * Wraps children with teleport PortalProvider when available.
38
+ * Returns children as-is when teleport is not set up.
39
+ */
40
+ function NativePortalProvider({ children }) {
41
+ const state = (0, portalState_ts_1.getPortal)().state;
42
+ if (state.type !== 'teleport')
43
+ return (0, jsx_runtime_1.jsx)(jsx_runtime_1.Fragment, { children: children });
44
+ const teleport = globalThis.__hanzogui_teleport;
45
+ if (!teleport?.PortalProvider)
46
+ return (0, jsx_runtime_1.jsx)(jsx_runtime_1.Fragment, { children: children });
47
+ const { PortalProvider } = teleport;
48
+ return (0, jsx_runtime_1.jsx)(PortalProvider, { children: children });
49
+ }
50
+ //# sourceMappingURL=components.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"components.js","sourceRoot":"","sources":["../../src/components.tsx"],"names":[],"mappings":";;;;;;AACA,qDAA4C;AAS5C;;;GAGG;AACH,sBAA6B,EAC3B,QAAQ,GAAG,MAAM,EACjB,QAAQ,GACU;IAClB,MAAM,KAAK,GAAG,IAAA,0BAAS,GAAE,CAAC,KAAK,CAAA;IAC/B,IAAI,KAAK,CAAC,IAAI,KAAK,UAAU;QAAE,OAAO,IAAI,CAAA;IAE1C,MAAM,QAAQ,GAAI,UAAkB,CAAC,mBAAmB,CAAA;IACxD,IAAI,CAAC,QAAQ,EAAE,MAAM;QAAE,OAAO,IAAI,CAAA;IAClC,MAAM,EAAE,MAAM,EAAE,GAAG,QAAQ,CAAA;IAC3B,OAAO,uBAAC,MAAM,IAAC,QAAQ,EAAE,QAAQ,YAAG,QAAQ,GAAU,CAAA;AACxD,CAAC;AAED;;;GAGG;AACH,0BAAiC,EAAE,IAAI,EAAyB;IAC9D,MAAM,KAAK,GAAG,IAAA,0BAAS,GAAE,CAAC,KAAK,CAAA;IAC/B,IAAI,KAAK,CAAC,IAAI,KAAK,UAAU;QAAE,OAAO,IAAI,CAAA;IAE1C,MAAM,QAAQ,GAAI,UAAkB,CAAC,mBAAmB,CAAA;IACxD,IAAI,CAAC,QAAQ,EAAE,UAAU;QAAE,OAAO,IAAI,CAAA;IACtC,MAAM,EAAE,UAAU,EAAE,GAAG,QAAQ,CAAA;IAC/B,OAAO,uBAAC,UAAU,IAAC,IAAI,EAAE,IAAI,GAAI,CAAA;AACnC,CAAC;AAED;;;GAGG;AACH,8BAAqC,EAAE,QAAQ,EAA6B;IAC1E,MAAM,KAAK,GAAG,IAAA,0BAAS,GAAE,CAAC,KAAK,CAAA;IAC/B,IAAI,KAAK,CAAC,IAAI,KAAK,UAAU;QAAE,OAAO,2DAAG,QAAQ,GAAI,CAAA;IAErD,MAAM,QAAQ,GAAI,UAAkB,CAAC,mBAAmB,CAAA;IACxD,IAAI,CAAC,QAAQ,EAAE,cAAc;QAAE,OAAO,2DAAG,QAAQ,GAAI,CAAA;IACrD,MAAM,EAAE,cAAc,EAAE,GAAG,QAAQ,CAAA;IACnC,OAAO,uBAAC,cAAc,cAAE,QAAQ,GAAkB,CAAA;AACpD,CAAC"}
@@ -0,0 +1,15 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.setupGestureHandler = exports.getGestureHandlerConfig = exports.PressBoundary = exports.unstable_releaseExternalPressOwnership = exports.unstable_hasExternalPressOwnership = exports.unstable_claimExternalPressOwnership = exports.getGestureHandler = void 0;
4
+ var gestureState_ts_1 = require("./gestureState.js");
5
+ Object.defineProperty(exports, "getGestureHandler", { enumerable: true, get: function () { return gestureState_ts_1.getGestureHandler; } });
6
+ var gestureState_ts_2 = require("./gestureState.js");
7
+ Object.defineProperty(exports, "unstable_claimExternalPressOwnership", { enumerable: true, get: function () { return gestureState_ts_2.claimExternalPressOwnership; } });
8
+ Object.defineProperty(exports, "unstable_hasExternalPressOwnership", { enumerable: true, get: function () { return gestureState_ts_2.hasExternalPressOwnership; } });
9
+ Object.defineProperty(exports, "unstable_releaseExternalPressOwnership", { enumerable: true, get: function () { return gestureState_ts_2.releaseExternalPressOwnership; } });
10
+ var PressBoundary_tsx_1 = require("./PressBoundary.js");
11
+ Object.defineProperty(exports, "PressBoundary", { enumerable: true, get: function () { return PressBoundary_tsx_1.PressBoundary; } });
12
+ var setup_gesture_handler_ts_1 = require("./setup-gesture-handler.js");
13
+ Object.defineProperty(exports, "getGestureHandlerConfig", { enumerable: true, get: function () { return setup_gesture_handler_ts_1.getGestureHandlerConfig; } });
14
+ Object.defineProperty(exports, "setupGestureHandler", { enumerable: true, get: function () { return setup_gesture_handler_ts_1.setupGestureHandler; } });
15
+ //# sourceMappingURL=gesture-handler.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"gesture-handler.js","sourceRoot":"","sources":["../../src/gesture-handler.ts"],"names":[],"mappings":";;;AAAA,qDAAqD;AAA5C,oHAAA,iBAAiB,OAAA;AAM1B,qDAI0B;AAHxB,uIAAA,2BAA2B,OAAwC;AACnE,qIAAA,yBAAyB,OAAsC;AAC/D,yIAAA,6BAA6B,OAA0C;AAEzE,wDAAmD;AAA1C,kHAAA,aAAa,OAAA;AAEtB,uEAImC;AAHjC,mIAAA,uBAAuB,OAAA;AACvB,+HAAA,mBAAmB,OAAA"}
@@ -0,0 +1,307 @@
1
+ "use strict";
2
+ var _a;
3
+ Object.defineProperty(exports, "__esModule", { value: true });
4
+ exports.canChangeGestureHandlerEnabled = canChangeGestureHandlerEnabled;
5
+ exports.claimExternalPressOwnership = claimExternalPressOwnership;
6
+ exports.releaseExternalPressOwnership = releaseExternalPressOwnership;
7
+ exports.hasExternalPressOwnership = hasExternalPressOwnership;
8
+ exports.getGestureHandler = getGestureHandler;
9
+ const globalState_ts_1 = require("./globalState.js");
10
+ const state = (0, globalState_ts_1.createGlobalState)(`gesture`, {
11
+ enabled: false,
12
+ Gesture: null,
13
+ GestureDetector: null,
14
+ ScrollView: null,
15
+ RootView: null,
16
+ });
17
+ const GESTURE_ENABLED_FREEZE_KEY = '__hanzogui_gesture_enabled_freeze__';
18
+ function getGestureEnabledFreezeState() {
19
+ const g = globalThis;
20
+ if (!g[GESTURE_ENABLED_FREEZE_KEY]) {
21
+ g[GESTURE_ENABLED_FREEZE_KEY] = {
22
+ frozen: false,
23
+ enabled: false,
24
+ warned: false,
25
+ };
26
+ }
27
+ return g[GESTURE_ENABLED_FREEZE_KEY];
28
+ }
29
+ function warnGestureEnabledMutationIgnored(source) {
30
+ const freezeState = getGestureEnabledFreezeState();
31
+ if (freezeState.warned || process.env.NODE_ENV === 'production') {
32
+ return;
33
+ }
34
+ freezeState.warned = true;
35
+ console.warn(`[Gui] Ignored ${source} because gesture handler press events were already ` +
36
+ `${freezeState.enabled ? 'enabled' : 'disabled'} when GuiProvider mounted. ` +
37
+ `Configure gesture handler mode before the first render.`);
38
+ }
39
+ function canChangeGestureHandlerEnabled(nextEnabled, source) {
40
+ const freezeState = getGestureEnabledFreezeState();
41
+ if (!freezeState.frozen || freezeState.enabled === nextEnabled) {
42
+ return true;
43
+ }
44
+ warnGestureEnabledMutationIgnored(source);
45
+ return false;
46
+ }
47
+ let pressGestureDebugId = 0;
48
+ let externalPressDebugId = 0;
49
+ // distance in dp the finger may travel before a press is treated as a
50
+ // scroll/drag and cancelled. tracked in absolute (screen) coordinates by the
51
+ // Tap's onTouchesMove (see createPressGesture) so a view translating under a
52
+ // stationary finger - a sheet sliding on keyboard open/close, a sheet open
53
+ // animation - does not cancel the press; only genuine finger travel does.
54
+ // this also makes scroll-cancels-press work for any scroll container (a plain
55
+ // RN ScrollView/FlatList or an RNGH one), since the press cancels itself
56
+ // rather than relying on a parent RNGH gesture to steal it.
57
+ const PRESS_MOVE_CANCEL_DISTANCE = 12;
58
+ const PRESS_MOVE_CANCEL_DISTANCE_SQ = PRESS_MOVE_CANCEL_DISTANCE * PRESS_MOVE_CANCEL_DISTANCE;
59
+ const PRESS_STATE_KEY = '__hanzogui_press_state__';
60
+ function getEventPointerId(e) {
61
+ const pointerId = e?.pointerId ??
62
+ e?.pointer?.id ??
63
+ e?.event?.pointerId ??
64
+ e?.event?.pointer?.id ??
65
+ e?.nativeEvent?.pointerId ??
66
+ e?.nativeEvent?.id ??
67
+ e?.event?.nativeEvent?.pointerId ??
68
+ e?.event?.nativeEvent?.id ??
69
+ null;
70
+ return pointerId == null || Number.isNaN(pointerId) ? null : Number(pointerId);
71
+ }
72
+ /**
73
+ * Global press coordination - ensures only innermost pressable fires press events,
74
+ * matching RN Pressable/responder system semantics where deepest component wins.
75
+ * Uses a grace period to allow child gestures to steal ownership from parent,
76
+ * since RNGH fires parent gestures before child gestures.
77
+ */
78
+ const pressState = ((_a = globalThis)[PRESS_STATE_KEY] ?? (_a[PRESS_STATE_KEY] = {
79
+ owner: null,
80
+ ownerId: null,
81
+ ownerSource: null,
82
+ ownerPointerId: null,
83
+ timestamp: 0,
84
+ }));
85
+ function resetPressOwner() {
86
+ pressState.owner = null;
87
+ pressState.ownerId = null;
88
+ pressState.ownerSource = null;
89
+ pressState.ownerPointerId = null;
90
+ pressState.timestamp = 0;
91
+ }
92
+ function resetStaleOwner(now, debugName) {
93
+ if (now - pressState.timestamp > 2000) {
94
+ resetPressOwner();
95
+ }
96
+ }
97
+ function claimExternalPressOwnership(debugName) {
98
+ const now = Date.now();
99
+ resetStaleOwner(now, debugName);
100
+ const token = {};
101
+ const ownerId = ++externalPressDebugId;
102
+ pressState.owner = token;
103
+ pressState.ownerId = ownerId;
104
+ pressState.ownerSource = 'external';
105
+ pressState.timestamp = now;
106
+ return token;
107
+ }
108
+ function releaseExternalPressOwnership(token, debugName) {
109
+ if (!token || pressState.owner !== token) {
110
+ return;
111
+ }
112
+ resetPressOwner();
113
+ }
114
+ function hasExternalPressOwnership() {
115
+ resetStaleOwner(Date.now());
116
+ return pressState.ownerSource === 'external';
117
+ }
118
+ function getGestureHandler() {
119
+ return {
120
+ get isEnabled() {
121
+ return state.get().enabled;
122
+ },
123
+ get state() {
124
+ return state.get();
125
+ },
126
+ set(updates) {
127
+ if (updates.enabled !== undefined &&
128
+ !canChangeGestureHandlerEnabled(updates.enabled, 'getGestureHandler().set()')) {
129
+ return;
130
+ }
131
+ Object.assign(state.get(), updates);
132
+ },
133
+ disable() {
134
+ if (!canChangeGestureHandlerEnabled(false, 'getGestureHandler().disable()')) {
135
+ return;
136
+ }
137
+ state.get().enabled = false;
138
+ },
139
+ createPressGesture(config) {
140
+ const { Gesture } = state.get();
141
+ if (!Gesture)
142
+ return null;
143
+ const longPressDuration = config.delayLongPress ?? 500;
144
+ // unique token for this gesture instance - used to track ownership
145
+ const myToken = {};
146
+ const myDebugId = ++pressGestureDebugId;
147
+ // mutable gesture state kept on an object so handler bodies that get
148
+ // workletized by react-native-worklets (>=0.7.4) see live values.
149
+ // primitive `let`s get frozen into the worklet's serialized __closure
150
+ // at factory time, so reassignments from workletized handlers never
151
+ // propagate out. object property mutation goes through the captured
152
+ // reference and is always observed.
153
+ const flags = {
154
+ didLongPress: false,
155
+ didPressIn: false,
156
+ pressInTimer: null,
157
+ // absolute (screen) coords of the press start, and whether the finger
158
+ // has since travelled far enough to be treated as a scroll/drag.
159
+ moveStartX: null,
160
+ moveStartY: 0,
161
+ cancelledByMove: false,
162
+ };
163
+ // Grace period for child gestures to steal ownership from parent.
164
+ // RNGH fires parent before child, but we want innermost to win.
165
+ // Claims typically span a few ms, 24ms gives enough room to observe
166
+ // ordering while debugging slower frames.
167
+ const GRACE_PERIOD_MS = process.env.GUI_RNGH_PRESS_DELAY
168
+ ? +process.env.GUI_RNGH_PRESS_DELAY
169
+ : 24;
170
+ const tryClaimOwnership = (e) => {
171
+ const now = Date.now();
172
+ resetStaleOwner(now, config.debugName);
173
+ const currentPointerId = getEventPointerId(e);
174
+ const isSameTouchPointer = currentPointerId == null ||
175
+ pressState.ownerPointerId == null ||
176
+ pressState.ownerPointerId === currentPointerId;
177
+ if (pressState.owner === null ||
178
+ (pressState.ownerSource === 'internal' && isSameTouchPointer)) {
179
+ pressState.owner = myToken;
180
+ pressState.ownerId = myDebugId;
181
+ pressState.ownerSource = 'internal';
182
+ pressState.ownerPointerId = currentPointerId;
183
+ pressState.timestamp = now;
184
+ }
185
+ return pressState.owner === myToken;
186
+ };
187
+ const isOwner = () => pressState.owner === myToken;
188
+ const releaseOwnership = () => {
189
+ if (flags.pressInTimer) {
190
+ clearTimeout(flags.pressInTimer);
191
+ flags.pressInTimer = null;
192
+ }
193
+ if (pressState.owner === myToken) {
194
+ resetPressOwner();
195
+ }
196
+ };
197
+ const firePressIn = (e) => {
198
+ if (!flags.didPressIn && isOwner()) {
199
+ flags.didPressIn = true;
200
+ config.onPressIn?.(e);
201
+ }
202
+ };
203
+ const schedulePressIn = (e) => {
204
+ if (flags.pressInTimer) {
205
+ clearTimeout(flags.pressInTimer);
206
+ }
207
+ flags.pressInTimer = setTimeout(() => {
208
+ flags.pressInTimer = null;
209
+ if (isOwner()) {
210
+ firePressIn(e);
211
+ }
212
+ }, GRACE_PERIOD_MS + 1);
213
+ };
214
+ // Tap gesture for regular presses.
215
+ //
216
+ // maxDuration is long so long-presses aren't cut off. We deliberately do
217
+ // not use RNGH's .maxDistance(): it measures finger travel in the gesture
218
+ // view's own coordinate space, so a view that translates under a
219
+ // stationary finger (a sheet sliding on keyboard open/close, a sheet open
220
+ // animation) reads as finger movement and silently cancels the press -
221
+ // onPress never fires. Instead onTouchesMove tracks the finger in
222
+ // absolute (screen) coordinates and cancels only on genuine finger
223
+ // travel. That also makes scroll-cancels-press work for any scroll
224
+ // container, since the press cancels itself instead of depending on a
225
+ // parent RNGH gesture to steal the touch.
226
+ const tap = Gesture.Tap()
227
+ .runOnJS(true)
228
+ .maxDuration(10000) // allow very long presses
229
+ .onBegin((e) => {
230
+ flags.didLongPress = false;
231
+ flags.didPressIn = false;
232
+ flags.cancelledByMove = false;
233
+ flags.moveStartX = typeof e.absoluteX === 'number' ? e.absoluteX : null;
234
+ flags.moveStartY = typeof e.absoluteY === 'number' ? e.absoluteY : 0;
235
+ tryClaimOwnership(e);
236
+ // Defer onPressIn until after the grace window so child pressables
237
+ // can steal ownership, but flush it on tap end for very fast taps.
238
+ schedulePressIn(e);
239
+ })
240
+ .onTouchesMove((e) => {
241
+ if (flags.cancelledByMove || flags.moveStartX === null)
242
+ return;
243
+ const touch = e.changedTouches?.[0] ?? e.allTouches?.[0];
244
+ if (!touch)
245
+ return;
246
+ const dx = touch.absoluteX - flags.moveStartX;
247
+ const dy = touch.absoluteY - flags.moveStartY;
248
+ if (dx * dx + dy * dy <= PRESS_MOVE_CANCEL_DISTANCE_SQ)
249
+ return;
250
+ // finger has travelled far enough to be a scroll/drag, not a tap.
251
+ // release the pressStyle now (mid-scroll, so it doesn't stay stuck)
252
+ // and make onEnd skip onPress on finger lift.
253
+ flags.cancelledByMove = true;
254
+ if (flags.pressInTimer) {
255
+ clearTimeout(flags.pressInTimer);
256
+ flags.pressInTimer = null;
257
+ }
258
+ if (flags.didPressIn) {
259
+ flags.didPressIn = false;
260
+ config.onPressOut?.(e);
261
+ }
262
+ releaseOwnership();
263
+ })
264
+ .onEnd((e) => {
265
+ if (isOwner() && !flags.didLongPress && !flags.cancelledByMove) {
266
+ firePressIn(e);
267
+ config.onPress?.(e);
268
+ }
269
+ })
270
+ .onFinalize((e) => {
271
+ if (isOwner()) {
272
+ config.onPressOut?.(e);
273
+ releaseOwnership();
274
+ }
275
+ else if (flags.didPressIn) {
276
+ // we already fired onPressIn but lost ownership before finalize
277
+ // (e.g. finger dragged onto a sibling pressable and that one
278
+ // claimed ownership). fire onPressOut so callers can clear their
279
+ // press state - otherwise pressStyle stays stuck on this view.
280
+ flags.didPressIn = false;
281
+ config.onPressOut?.(e);
282
+ }
283
+ });
284
+ if (config.hitSlop)
285
+ tap.hitSlop(config.hitSlop);
286
+ // if no long press handler, just use tap
287
+ if (!config.onLongPress)
288
+ return tap;
289
+ // LongPress gesture for long press handling
290
+ const longPress = Gesture.LongPress()
291
+ .runOnJS(true)
292
+ .minDuration(longPressDuration)
293
+ .onStart((e) => {
294
+ flags.didLongPress = true;
295
+ if (isOwner()) {
296
+ firePressIn(e);
297
+ config.onLongPress?.(e);
298
+ }
299
+ });
300
+ if (config.hitSlop)
301
+ longPress.hitSlop(config.hitSlop);
302
+ // exclusive: longPress has priority, tap is fallback for quick presses
303
+ return Gesture.Exclusive(longPress, tap);
304
+ },
305
+ };
306
+ }
307
+ //# sourceMappingURL=gestureState.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"gestureState.js","sourceRoot":"","sources":["../../src/gestureState.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,24 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.createGlobalState = createGlobalState;
4
+ function createGlobalState(key, defaultValue) {
5
+ const GLOBAL_KEY = `__hanzogui_${key}__`;
6
+ function getGlobalState() {
7
+ const g = globalThis;
8
+ if (!g[GLOBAL_KEY]) {
9
+ // reset on module load so reloadReactNative gets a clean state
10
+ // (globalThis persists across reloads but module scope re-evaluates)
11
+ g[GLOBAL_KEY] = defaultValue;
12
+ }
13
+ return g[GLOBAL_KEY];
14
+ }
15
+ function setGlobalState(newState) {
16
+ ;
17
+ globalThis[GLOBAL_KEY] = newState;
18
+ }
19
+ return {
20
+ get: getGlobalState,
21
+ set: setGlobalState,
22
+ };
23
+ }
24
+ //# sourceMappingURL=globalState.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"globalState.js","sourceRoot":"","sources":["../../src/globalState.ts"],"names":[],"mappings":";;;AAAA,2BACE,GAAW,EACX,YAAe;IAKf,MAAM,UAAU,GAAG,cAAc,GAAG,IAAI,CAAA;IAMxC,SAAS,cAAc;QACrB,MAAM,CAAC,GAAG,UAAuB,CAAA;QACjC,IAAI,CAAC,CAAC,CAAC,UAAU,CAAC,EAAE,CAAC;YACnB,+DAA+D;YAC/D,qEAAqE;YACrE,CAAC,CAAC,UAAU,CAAC,GAAG,YAAY,CAAA;QAC9B,CAAC;QACD,OAAO,CAAC,CAAC,UAAU,CAAE,CAAA;IACvB,CAAC;IAED,SAAS,cAAc,CAAC,QAAW;QACjC,CAAC;QAAC,UAAwB,CAAC,UAAU,CAAC,GAAG,QAAQ,CAAA;IACnD,CAAC;IAED,OAAO;QACL,GAAG,EAAE,cAAc;QACnB,GAAG,EAAE,cAAc;KACpB,CAAA;AACH,CAAC"}
@@ -0,0 +1,61 @@
1
+ "use strict";
2
+ /**
3
+ * @hanzogui/native
4
+ *
5
+ * Native setup modules for Gui. Import these at the top of your app entry point.
6
+ *
7
+ * @example
8
+ * ```tsx
9
+ * // In your app entry (index.js or App.tsx)
10
+ * import '@hanzogui/native/setup-teleport'
11
+ * import '@hanzogui/native/setup-gesture-handler'
12
+ * import '@hanzogui/native/setup-worklets'
13
+ * import '@hanzogui/native/setup-safe-area'
14
+ * import '@hanzogui/native/expo-linear-gradient'
15
+ * import '@hanzogui/native/setup-keyboard-controller'
16
+ *
17
+ * // Then use Gui components normally
18
+ * // Sheet will automatically use native gestures when available
19
+ * // LinearGradient will use expo-linear-gradient when installed
20
+ * ```
21
+ */
22
+ Object.defineProperty(exports, "__esModule", { value: true });
23
+ exports.NativePortalProvider = exports.NativePortalHost = exports.NativePortal = exports.getBurnt = exports.NativeMenuContext = exports.getZeego = exports.setKeyboardControllerState = exports.getKeyboardControllerState = exports.isKeyboardControllerEnabled = exports.getLinearGradient = exports.getSafeArea = exports.getWorklets = exports.unstable_releaseExternalPressOwnership = exports.unstable_hasExternalPressOwnership = exports.unstable_claimExternalPressOwnership = exports.getGestureHandler = exports.getPortal = void 0;
24
+ // portal
25
+ var portalState_ts_1 = require("./portalState.js");
26
+ Object.defineProperty(exports, "getPortal", { enumerable: true, get: function () { return portalState_ts_1.getPortal; } });
27
+ // gesture handler
28
+ var gestureState_ts_1 = require("./gestureState.js");
29
+ Object.defineProperty(exports, "getGestureHandler", { enumerable: true, get: function () { return gestureState_ts_1.getGestureHandler; } });
30
+ var gestureState_ts_2 = require("./gestureState.js");
31
+ Object.defineProperty(exports, "unstable_claimExternalPressOwnership", { enumerable: true, get: function () { return gestureState_ts_2.claimExternalPressOwnership; } });
32
+ Object.defineProperty(exports, "unstable_hasExternalPressOwnership", { enumerable: true, get: function () { return gestureState_ts_2.hasExternalPressOwnership; } });
33
+ Object.defineProperty(exports, "unstable_releaseExternalPressOwnership", { enumerable: true, get: function () { return gestureState_ts_2.releaseExternalPressOwnership; } });
34
+ // worklets
35
+ var workletsState_ts_1 = require("./workletsState.js");
36
+ Object.defineProperty(exports, "getWorklets", { enumerable: true, get: function () { return workletsState_ts_1.getWorklets; } });
37
+ // safe area
38
+ var safeAreaState_ts_1 = require("./safeAreaState.js");
39
+ Object.defineProperty(exports, "getSafeArea", { enumerable: true, get: function () { return safeAreaState_ts_1.getSafeArea; } });
40
+ // linear gradient
41
+ var linearGradientState_ts_1 = require("./linearGradientState.js");
42
+ Object.defineProperty(exports, "getLinearGradient", { enumerable: true, get: function () { return linearGradientState_ts_1.getLinearGradient; } });
43
+ // keyboard controller state exports (safe - no side effects)
44
+ var keyboardControllerState_ts_1 = require("./keyboardControllerState.js");
45
+ Object.defineProperty(exports, "isKeyboardControllerEnabled", { enumerable: true, get: function () { return keyboardControllerState_ts_1.isKeyboardControllerEnabled; } });
46
+ Object.defineProperty(exports, "getKeyboardControllerState", { enumerable: true, get: function () { return keyboardControllerState_ts_1.getKeyboardControllerState; } });
47
+ Object.defineProperty(exports, "setKeyboardControllerState", { enumerable: true, get: function () { return keyboardControllerState_ts_1.setKeyboardControllerState; } });
48
+ // zeego (native menus)
49
+ var zeegoState_ts_1 = require("./zeegoState.js");
50
+ Object.defineProperty(exports, "getZeego", { enumerable: true, get: function () { return zeegoState_ts_1.getZeego; } });
51
+ var nativeMenuContext_ts_1 = require("./nativeMenuContext.js");
52
+ Object.defineProperty(exports, "NativeMenuContext", { enumerable: true, get: function () { return nativeMenuContext_ts_1.NativeMenuContext; } });
53
+ // burnt (native toasts)
54
+ var burntState_ts_1 = require("./burntState.js");
55
+ Object.defineProperty(exports, "getBurnt", { enumerable: true, get: function () { return burntState_ts_1.getBurnt; } });
56
+ // components
57
+ var components_tsx_1 = require("./components.js");
58
+ Object.defineProperty(exports, "NativePortal", { enumerable: true, get: function () { return components_tsx_1.NativePortal; } });
59
+ Object.defineProperty(exports, "NativePortalHost", { enumerable: true, get: function () { return components_tsx_1.NativePortalHost; } });
60
+ Object.defineProperty(exports, "NativePortalProvider", { enumerable: true, get: function () { return components_tsx_1.NativePortalProvider; } });
61
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;;;;GAmBG;;;AAmBH,SAAS;AACT,mDAA4C;AAAnC,2GAAA,SAAS,OAAA;AAGlB,kBAAkB;AAClB,qDAAqD;AAA5C,oHAAA,iBAAiB,OAAA;AAC1B,qDAI0B;AAHxB,uIAAA,2BAA2B,OAAwC;AACnE,qIAAA,yBAAyB,OAAsC;AAC/D,yIAAA,6BAA6B,OAA0C;AAWzE,WAAW;AACX,uDAAgD;AAAvC,+GAAA,WAAW,OAAA;AAGpB,YAAY;AACZ,uDAAgD;AAAvC,+GAAA,WAAW,OAAA;AAGpB,kBAAkB;AAClB,mEAA4D;AAAnD,2HAAA,iBAAiB,OAAA;AAG1B,6DAA6D;AAC7D,2EAIqC;AAHnC,yIAAA,2BAA2B,OAAA;AAC3B,wIAAA,0BAA0B,OAAA;AAC1B,wIAAA,0BAA0B,OAAA;AAI5B,uBAAuB;AACvB,iDAA0C;AAAjC,yGAAA,QAAQ,OAAA;AAEjB,+DAA0D;AAAjD,yHAAA,iBAAiB,OAAA;AAE1B,wBAAwB;AACxB,iDAA0C;AAAjC,yGAAA,QAAQ,OAAA;AAGjB,aAAa;AACb,kDAAuF;AAA9E,8GAAA,YAAY,OAAA;AAAE,kHAAA,gBAAgB,OAAA;AAAE,sHAAA,oBAAoB,OAAA"}
@@ -0,0 +1,26 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.isKeyboardControllerEnabled = isKeyboardControllerEnabled;
4
+ exports.getKeyboardControllerState = getKeyboardControllerState;
5
+ exports.setKeyboardControllerState = setKeyboardControllerState;
6
+ const globalState_ts_1 = require("./globalState.js");
7
+ const state = (0, globalState_ts_1.createGlobalState)(`keyboard_controller`, {
8
+ enabled: false,
9
+ KeyboardProvider: null,
10
+ KeyboardAwareScrollView: null,
11
+ useKeyboardHandler: null,
12
+ useReanimatedKeyboardAnimation: null,
13
+ KeyboardController: null,
14
+ KeyboardEvents: null,
15
+ KeyboardStickyView: null,
16
+ });
17
+ function isKeyboardControllerEnabled() {
18
+ return state.get().enabled;
19
+ }
20
+ function getKeyboardControllerState() {
21
+ return state.get();
22
+ }
23
+ function setKeyboardControllerState(updates) {
24
+ Object.assign(state.get(), updates);
25
+ }
26
+ //# sourceMappingURL=keyboardControllerState.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"keyboardControllerState.js","sourceRoot":"","sources":["../../src/keyboardControllerState.ts"],"names":[],"mappings":";;;;;AAAA,qDAAoD;AAKpD,MAAM,KAAK,GAAG,IAAA,kCAAiB,EAA0B,qBAAqB,EAAE;IAC9E,OAAO,EAAE,KAAK;IACd,gBAAgB,EAAE,IAAI;IACtB,uBAAuB,EAAE,IAAI;IAC7B,kBAAkB,EAAE,IAAI;IACxB,8BAA8B,EAAE,IAAI;IACpC,kBAAkB,EAAE,IAAI;IACxB,cAAc,EAAE,IAAI;IACpB,kBAAkB,EAAE,IAAI;CACzB,CAAC,CAAA;AAEF;IACE,OAAO,KAAK,CAAC,GAAG,EAAE,CAAC,OAAO,CAAA;AAC5B,CAAC;AAED;IACE,OAAO,KAAK,CAAC,GAAG,EAAE,CAAA;AACpB,CAAC;AAED,oCACE,OAAyC;IAEzC,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,EAAE,EAAE,OAAO,CAAC,CAAA;AACrC,CAAC"}
@@ -0,0 +1,22 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.getLinearGradient = getLinearGradient;
4
+ const globalState_ts_1 = require("./globalState.js");
5
+ const state = (0, globalState_ts_1.createGlobalState)(`linear_gradient`, {
6
+ enabled: false,
7
+ Component: null,
8
+ });
9
+ function getLinearGradient() {
10
+ return {
11
+ get isEnabled() {
12
+ return state.get().enabled;
13
+ },
14
+ get state() {
15
+ return state.get();
16
+ },
17
+ set(newState) {
18
+ state.set(newState);
19
+ },
20
+ };
21
+ }
22
+ //# sourceMappingURL=linearGradientState.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"linearGradientState.js","sourceRoot":"","sources":["../../src/linearGradientState.ts"],"names":[],"mappings":";;;AAAA,qDAAoD;AAGpD,MAAM,KAAK,GAAG,IAAA,kCAAiB,EAAsB,iBAAiB,EAAE;IACtE,OAAO,EAAE,KAAK;IACd,SAAS,EAAE,IAAI;CAChB,CAAC,CAAA;AAQF;IACE,OAAO;QACL,IAAI,SAAS;YACX,OAAO,KAAK,CAAC,GAAG,EAAE,CAAC,OAAO,CAAA;QAC5B,CAAC;QACD,IAAI,KAAK;YACP,OAAO,KAAK,CAAC,GAAG,EAAE,CAAA;QACpB,CAAC;QACD,GAAG,CAAC,QAA6B;YAC/B,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAA;QACrB,CAAC;KACF,CAAA;AACH,CAAC"}
@@ -0,0 +1,6 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.NativeMenuContext = void 0;
4
+ const react_1 = require("react");
5
+ exports.NativeMenuContext = (0, react_1.createContext)(false);
6
+ //# sourceMappingURL=nativeMenuContext.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"nativeMenuContext.js","sourceRoot":"","sources":["../../src/nativeMenuContext.ts"],"names":[],"mappings":";;;AACA,iCAAqC;AAExB,QAAA,iBAAiB,GAA2B,IAAA,qBAAa,EAAC,KAAK,CAAC,CAAA"}
@@ -0,0 +1 @@
1
+ { "type": "commonjs" }