@hanzogui/native 8.3.1 → 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 +80 -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,45 @@
1
+ import { Fragment as _Fragment, jsx as _jsx } from "react/jsx-runtime";
2
+ import { getPortal } from './portalState.js';
3
+ /**
4
+ * Renders children into a teleport Portal when available.
5
+ * Returns null when teleport is not set up (allows fallback handling by caller).
6
+ */
7
+ export function NativePortal({ hostName = 'root', children, }) {
8
+ const state = getPortal().state;
9
+ if (state.type !== 'teleport')
10
+ return null;
11
+ const teleport = globalThis.__hanzogui_teleport;
12
+ if (!teleport?.Portal)
13
+ return null;
14
+ const { Portal } = teleport;
15
+ return _jsx(Portal, { hostName: hostName, children: children });
16
+ }
17
+ /**
18
+ * Renders a teleport PortalHost when available.
19
+ * Returns null when teleport is not set up.
20
+ */
21
+ export function NativePortalHost({ name }) {
22
+ const state = getPortal().state;
23
+ if (state.type !== 'teleport')
24
+ return null;
25
+ const teleport = globalThis.__hanzogui_teleport;
26
+ if (!teleport?.PortalHost)
27
+ return null;
28
+ const { PortalHost } = teleport;
29
+ return _jsx(PortalHost, { name: name });
30
+ }
31
+ /**
32
+ * Wraps children with teleport PortalProvider when available.
33
+ * Returns children as-is when teleport is not set up.
34
+ */
35
+ export function NativePortalProvider({ children }) {
36
+ const state = getPortal().state;
37
+ if (state.type !== 'teleport')
38
+ return _jsx(_Fragment, { children: children });
39
+ const teleport = globalThis.__hanzogui_teleport;
40
+ if (!teleport?.PortalProvider)
41
+ return _jsx(_Fragment, { children: children });
42
+ const { PortalProvider } = teleport;
43
+ return _jsx(PortalProvider, { children: children });
44
+ }
45
+ //# sourceMappingURL=components.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"components.js","sourceRoot":"","sources":["../../src/components.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAA;AAS5C;;;GAGG;AACH,MAAM,UAAU,YAAY,CAAC,EAC3B,QAAQ,GAAG,MAAM,EACjB,QAAQ,GACU;IAClB,MAAM,KAAK,GAAG,SAAS,EAAE,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,KAAC,MAAM,IAAC,QAAQ,EAAE,QAAQ,YAAG,QAAQ,GAAU,CAAA;AACxD,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,gBAAgB,CAAC,EAAE,IAAI,EAAyB;IAC9D,MAAM,KAAK,GAAG,SAAS,EAAE,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,KAAC,UAAU,IAAC,IAAI,EAAE,IAAI,GAAI,CAAA;AACnC,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,oBAAoB,CAAC,EAAE,QAAQ,EAA6B;IAC1E,MAAM,KAAK,GAAG,SAAS,EAAE,CAAC,KAAK,CAAA;IAC/B,IAAI,KAAK,CAAC,IAAI,KAAK,UAAU;QAAE,OAAO,4BAAG,QAAQ,GAAI,CAAA;IAErD,MAAM,QAAQ,GAAI,UAAkB,CAAC,mBAAmB,CAAA;IACxD,IAAI,CAAC,QAAQ,EAAE,cAAc;QAAE,OAAO,4BAAG,QAAQ,GAAI,CAAA;IACrD,MAAM,EAAE,cAAc,EAAE,GAAG,QAAQ,CAAA;IACnC,OAAO,KAAC,cAAc,cAAE,QAAQ,GAAkB,CAAA;AACpD,CAAC"}
@@ -0,0 +1,5 @@
1
+ export { getGestureHandler } from './gestureState.js';
2
+ export { claimExternalPressOwnership as unstable_claimExternalPressOwnership, hasExternalPressOwnership as unstable_hasExternalPressOwnership, releaseExternalPressOwnership as unstable_releaseExternalPressOwnership, } from './gestureState.js';
3
+ export { PressBoundary } from './PressBoundary.js';
4
+ export { getGestureHandlerConfig, setupGestureHandler, } from './setup-gesture-handler.js';
5
+ //# sourceMappingURL=gesture-handler.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"gesture-handler.js","sourceRoot":"","sources":["../../src/gesture-handler.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAA;AAMrD,OAAO,EACL,2BAA2B,IAAI,oCAAoC,EACnE,yBAAyB,IAAI,kCAAkC,EAC/D,6BAA6B,IAAI,sCAAsC,GACxE,MAAM,mBAAmB,CAAA;AAC1B,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAqB,CAAA;AAEnD,OAAO,EACL,uBAAuB,EACvB,mBAAmB,GAEpB,MAAM,4BAA4B,CAAA"}
@@ -0,0 +1,300 @@
1
+ var _a;
2
+ import { createGlobalState } from './globalState.js';
3
+ const state = createGlobalState(`gesture`, {
4
+ enabled: false,
5
+ Gesture: null,
6
+ GestureDetector: null,
7
+ ScrollView: null,
8
+ RootView: null,
9
+ });
10
+ const GESTURE_ENABLED_FREEZE_KEY = '__hanzogui_gesture_enabled_freeze__';
11
+ function getGestureEnabledFreezeState() {
12
+ const g = globalThis;
13
+ if (!g[GESTURE_ENABLED_FREEZE_KEY]) {
14
+ g[GESTURE_ENABLED_FREEZE_KEY] = {
15
+ frozen: false,
16
+ enabled: false,
17
+ warned: false,
18
+ };
19
+ }
20
+ return g[GESTURE_ENABLED_FREEZE_KEY];
21
+ }
22
+ function warnGestureEnabledMutationIgnored(source) {
23
+ const freezeState = getGestureEnabledFreezeState();
24
+ if (freezeState.warned || process.env.NODE_ENV === 'production') {
25
+ return;
26
+ }
27
+ freezeState.warned = true;
28
+ console.warn(`[Gui] Ignored ${source} because gesture handler press events were already ` +
29
+ `${freezeState.enabled ? 'enabled' : 'disabled'} when GuiProvider mounted. ` +
30
+ `Configure gesture handler mode before the first render.`);
31
+ }
32
+ export function canChangeGestureHandlerEnabled(nextEnabled, source) {
33
+ const freezeState = getGestureEnabledFreezeState();
34
+ if (!freezeState.frozen || freezeState.enabled === nextEnabled) {
35
+ return true;
36
+ }
37
+ warnGestureEnabledMutationIgnored(source);
38
+ return false;
39
+ }
40
+ let pressGestureDebugId = 0;
41
+ let externalPressDebugId = 0;
42
+ // distance in dp the finger may travel before a press is treated as a
43
+ // scroll/drag and cancelled. tracked in absolute (screen) coordinates by the
44
+ // Tap's onTouchesMove (see createPressGesture) so a view translating under a
45
+ // stationary finger - a sheet sliding on keyboard open/close, a sheet open
46
+ // animation - does not cancel the press; only genuine finger travel does.
47
+ // this also makes scroll-cancels-press work for any scroll container (a plain
48
+ // RN ScrollView/FlatList or an RNGH one), since the press cancels itself
49
+ // rather than relying on a parent RNGH gesture to steal it.
50
+ const PRESS_MOVE_CANCEL_DISTANCE = 12;
51
+ const PRESS_MOVE_CANCEL_DISTANCE_SQ = PRESS_MOVE_CANCEL_DISTANCE * PRESS_MOVE_CANCEL_DISTANCE;
52
+ const PRESS_STATE_KEY = '__hanzogui_press_state__';
53
+ function getEventPointerId(e) {
54
+ const pointerId = e?.pointerId ??
55
+ e?.pointer?.id ??
56
+ e?.event?.pointerId ??
57
+ e?.event?.pointer?.id ??
58
+ e?.nativeEvent?.pointerId ??
59
+ e?.nativeEvent?.id ??
60
+ e?.event?.nativeEvent?.pointerId ??
61
+ e?.event?.nativeEvent?.id ??
62
+ null;
63
+ return pointerId == null || Number.isNaN(pointerId) ? null : Number(pointerId);
64
+ }
65
+ /**
66
+ * Global press coordination - ensures only innermost pressable fires press events,
67
+ * matching RN Pressable/responder system semantics where deepest component wins.
68
+ * Uses a grace period to allow child gestures to steal ownership from parent,
69
+ * since RNGH fires parent gestures before child gestures.
70
+ */
71
+ const pressState = ((_a = globalThis)[PRESS_STATE_KEY] ?? (_a[PRESS_STATE_KEY] = {
72
+ owner: null,
73
+ ownerId: null,
74
+ ownerSource: null,
75
+ ownerPointerId: null,
76
+ timestamp: 0,
77
+ }));
78
+ function resetPressOwner() {
79
+ pressState.owner = null;
80
+ pressState.ownerId = null;
81
+ pressState.ownerSource = null;
82
+ pressState.ownerPointerId = null;
83
+ pressState.timestamp = 0;
84
+ }
85
+ function resetStaleOwner(now, debugName) {
86
+ if (now - pressState.timestamp > 2000) {
87
+ resetPressOwner();
88
+ }
89
+ }
90
+ export function claimExternalPressOwnership(debugName) {
91
+ const now = Date.now();
92
+ resetStaleOwner(now, debugName);
93
+ const token = {};
94
+ const ownerId = ++externalPressDebugId;
95
+ pressState.owner = token;
96
+ pressState.ownerId = ownerId;
97
+ pressState.ownerSource = 'external';
98
+ pressState.timestamp = now;
99
+ return token;
100
+ }
101
+ export function releaseExternalPressOwnership(token, debugName) {
102
+ if (!token || pressState.owner !== token) {
103
+ return;
104
+ }
105
+ resetPressOwner();
106
+ }
107
+ export function hasExternalPressOwnership() {
108
+ resetStaleOwner(Date.now());
109
+ return pressState.ownerSource === 'external';
110
+ }
111
+ export function getGestureHandler() {
112
+ return {
113
+ get isEnabled() {
114
+ return state.get().enabled;
115
+ },
116
+ get state() {
117
+ return state.get();
118
+ },
119
+ set(updates) {
120
+ if (updates.enabled !== undefined &&
121
+ !canChangeGestureHandlerEnabled(updates.enabled, 'getGestureHandler().set()')) {
122
+ return;
123
+ }
124
+ Object.assign(state.get(), updates);
125
+ },
126
+ disable() {
127
+ if (!canChangeGestureHandlerEnabled(false, 'getGestureHandler().disable()')) {
128
+ return;
129
+ }
130
+ state.get().enabled = false;
131
+ },
132
+ createPressGesture(config) {
133
+ const { Gesture } = state.get();
134
+ if (!Gesture)
135
+ return null;
136
+ const longPressDuration = config.delayLongPress ?? 500;
137
+ // unique token for this gesture instance - used to track ownership
138
+ const myToken = {};
139
+ const myDebugId = ++pressGestureDebugId;
140
+ // mutable gesture state kept on an object so handler bodies that get
141
+ // workletized by react-native-worklets (>=0.7.4) see live values.
142
+ // primitive `let`s get frozen into the worklet's serialized __closure
143
+ // at factory time, so reassignments from workletized handlers never
144
+ // propagate out. object property mutation goes through the captured
145
+ // reference and is always observed.
146
+ const flags = {
147
+ didLongPress: false,
148
+ didPressIn: false,
149
+ pressInTimer: null,
150
+ // absolute (screen) coords of the press start, and whether the finger
151
+ // has since travelled far enough to be treated as a scroll/drag.
152
+ moveStartX: null,
153
+ moveStartY: 0,
154
+ cancelledByMove: false,
155
+ };
156
+ // Grace period for child gestures to steal ownership from parent.
157
+ // RNGH fires parent before child, but we want innermost to win.
158
+ // Claims typically span a few ms, 24ms gives enough room to observe
159
+ // ordering while debugging slower frames.
160
+ const GRACE_PERIOD_MS = process.env.GUI_RNGH_PRESS_DELAY
161
+ ? +process.env.GUI_RNGH_PRESS_DELAY
162
+ : 24;
163
+ const tryClaimOwnership = (e) => {
164
+ const now = Date.now();
165
+ resetStaleOwner(now, config.debugName);
166
+ const currentPointerId = getEventPointerId(e);
167
+ const isSameTouchPointer = currentPointerId == null ||
168
+ pressState.ownerPointerId == null ||
169
+ pressState.ownerPointerId === currentPointerId;
170
+ if (pressState.owner === null ||
171
+ (pressState.ownerSource === 'internal' && isSameTouchPointer)) {
172
+ pressState.owner = myToken;
173
+ pressState.ownerId = myDebugId;
174
+ pressState.ownerSource = 'internal';
175
+ pressState.ownerPointerId = currentPointerId;
176
+ pressState.timestamp = now;
177
+ }
178
+ return pressState.owner === myToken;
179
+ };
180
+ const isOwner = () => pressState.owner === myToken;
181
+ const releaseOwnership = () => {
182
+ if (flags.pressInTimer) {
183
+ clearTimeout(flags.pressInTimer);
184
+ flags.pressInTimer = null;
185
+ }
186
+ if (pressState.owner === myToken) {
187
+ resetPressOwner();
188
+ }
189
+ };
190
+ const firePressIn = (e) => {
191
+ if (!flags.didPressIn && isOwner()) {
192
+ flags.didPressIn = true;
193
+ config.onPressIn?.(e);
194
+ }
195
+ };
196
+ const schedulePressIn = (e) => {
197
+ if (flags.pressInTimer) {
198
+ clearTimeout(flags.pressInTimer);
199
+ }
200
+ flags.pressInTimer = setTimeout(() => {
201
+ flags.pressInTimer = null;
202
+ if (isOwner()) {
203
+ firePressIn(e);
204
+ }
205
+ }, GRACE_PERIOD_MS + 1);
206
+ };
207
+ // Tap gesture for regular presses.
208
+ //
209
+ // maxDuration is long so long-presses aren't cut off. We deliberately do
210
+ // not use RNGH's .maxDistance(): it measures finger travel in the gesture
211
+ // view's own coordinate space, so a view that translates under a
212
+ // stationary finger (a sheet sliding on keyboard open/close, a sheet open
213
+ // animation) reads as finger movement and silently cancels the press -
214
+ // onPress never fires. Instead onTouchesMove tracks the finger in
215
+ // absolute (screen) coordinates and cancels only on genuine finger
216
+ // travel. That also makes scroll-cancels-press work for any scroll
217
+ // container, since the press cancels itself instead of depending on a
218
+ // parent RNGH gesture to steal the touch.
219
+ const tap = Gesture.Tap()
220
+ .runOnJS(true)
221
+ .maxDuration(10000) // allow very long presses
222
+ .onBegin((e) => {
223
+ flags.didLongPress = false;
224
+ flags.didPressIn = false;
225
+ flags.cancelledByMove = false;
226
+ flags.moveStartX = typeof e.absoluteX === 'number' ? e.absoluteX : null;
227
+ flags.moveStartY = typeof e.absoluteY === 'number' ? e.absoluteY : 0;
228
+ tryClaimOwnership(e);
229
+ // Defer onPressIn until after the grace window so child pressables
230
+ // can steal ownership, but flush it on tap end for very fast taps.
231
+ schedulePressIn(e);
232
+ })
233
+ .onTouchesMove((e) => {
234
+ if (flags.cancelledByMove || flags.moveStartX === null)
235
+ return;
236
+ const touch = e.changedTouches?.[0] ?? e.allTouches?.[0];
237
+ if (!touch)
238
+ return;
239
+ const dx = touch.absoluteX - flags.moveStartX;
240
+ const dy = touch.absoluteY - flags.moveStartY;
241
+ if (dx * dx + dy * dy <= PRESS_MOVE_CANCEL_DISTANCE_SQ)
242
+ return;
243
+ // finger has travelled far enough to be a scroll/drag, not a tap.
244
+ // release the pressStyle now (mid-scroll, so it doesn't stay stuck)
245
+ // and make onEnd skip onPress on finger lift.
246
+ flags.cancelledByMove = true;
247
+ if (flags.pressInTimer) {
248
+ clearTimeout(flags.pressInTimer);
249
+ flags.pressInTimer = null;
250
+ }
251
+ if (flags.didPressIn) {
252
+ flags.didPressIn = false;
253
+ config.onPressOut?.(e);
254
+ }
255
+ releaseOwnership();
256
+ })
257
+ .onEnd((e) => {
258
+ if (isOwner() && !flags.didLongPress && !flags.cancelledByMove) {
259
+ firePressIn(e);
260
+ config.onPress?.(e);
261
+ }
262
+ })
263
+ .onFinalize((e) => {
264
+ if (isOwner()) {
265
+ config.onPressOut?.(e);
266
+ releaseOwnership();
267
+ }
268
+ else if (flags.didPressIn) {
269
+ // we already fired onPressIn but lost ownership before finalize
270
+ // (e.g. finger dragged onto a sibling pressable and that one
271
+ // claimed ownership). fire onPressOut so callers can clear their
272
+ // press state - otherwise pressStyle stays stuck on this view.
273
+ flags.didPressIn = false;
274
+ config.onPressOut?.(e);
275
+ }
276
+ });
277
+ if (config.hitSlop)
278
+ tap.hitSlop(config.hitSlop);
279
+ // if no long press handler, just use tap
280
+ if (!config.onLongPress)
281
+ return tap;
282
+ // LongPress gesture for long press handling
283
+ const longPress = Gesture.LongPress()
284
+ .runOnJS(true)
285
+ .minDuration(longPressDuration)
286
+ .onStart((e) => {
287
+ flags.didLongPress = true;
288
+ if (isOwner()) {
289
+ firePressIn(e);
290
+ config.onLongPress?.(e);
291
+ }
292
+ });
293
+ if (config.hitSlop)
294
+ longPress.hitSlop(config.hitSlop);
295
+ // exclusive: longPress has priority, tap is fallback for quick presses
296
+ return Gesture.Exclusive(longPress, tap);
297
+ },
298
+ };
299
+ }
300
+ //# 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,21 @@
1
+ export function createGlobalState(key, defaultValue) {
2
+ const GLOBAL_KEY = `__hanzogui_${key}__`;
3
+ function getGlobalState() {
4
+ const g = globalThis;
5
+ if (!g[GLOBAL_KEY]) {
6
+ // reset on module load so reloadReactNative gets a clean state
7
+ // (globalThis persists across reloads but module scope re-evaluates)
8
+ g[GLOBAL_KEY] = defaultValue;
9
+ }
10
+ return g[GLOBAL_KEY];
11
+ }
12
+ function setGlobalState(newState) {
13
+ ;
14
+ globalThis[GLOBAL_KEY] = newState;
15
+ }
16
+ return {
17
+ get: getGlobalState,
18
+ set: setGlobalState,
19
+ };
20
+ }
21
+ //# sourceMappingURL=globalState.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"globalState.js","sourceRoot":"","sources":["../../src/globalState.ts"],"names":[],"mappings":"AAAA,MAAM,UAAU,iBAAiB,CAC/B,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"}
package/dist/esm/index.js CHANGED
@@ -1,13 +1,41 @@
1
- import { getPortal } from "./portalState.mjs";
2
- import { getGestureHandler } from "./gestureState.mjs";
3
- import { claimExternalPressOwnership, hasExternalPressOwnership, releaseExternalPressOwnership } from "./gestureState.mjs";
4
- import { getWorklets } from "./workletsState.mjs";
5
- import { getSafeArea } from "./safeAreaState.mjs";
6
- import { getLinearGradient } from "./linearGradientState.mjs";
7
- import { isKeyboardControllerEnabled, getKeyboardControllerState, setKeyboardControllerState } from "./keyboardControllerState.mjs";
8
- import { getZeego } from "./zeegoState.mjs";
9
- import { NativeMenuContext } from "./nativeMenuContext.mjs";
10
- import { getBurnt } from "./burntState.mjs";
11
- import { NativePortal, NativePortalHost, NativePortalProvider } from "./components.mjs";
12
- export { NativeMenuContext, NativePortal, NativePortalHost, NativePortalProvider, getBurnt, getGestureHandler, getKeyboardControllerState, getLinearGradient, getPortal, getSafeArea, getWorklets, getZeego, isKeyboardControllerEnabled, setKeyboardControllerState, claimExternalPressOwnership as unstable_claimExternalPressOwnership, hasExternalPressOwnership as unstable_hasExternalPressOwnership, releaseExternalPressOwnership as unstable_releaseExternalPressOwnership };
13
- //# sourceMappingURL=index.js.map
1
+ /**
2
+ * @hanzogui/native
3
+ *
4
+ * Native setup modules for Gui. Import these at the top of your app entry point.
5
+ *
6
+ * @example
7
+ * ```tsx
8
+ * // In your app entry (index.js or App.tsx)
9
+ * import '@hanzogui/native/setup-teleport'
10
+ * import '@hanzogui/native/setup-gesture-handler'
11
+ * import '@hanzogui/native/setup-worklets'
12
+ * import '@hanzogui/native/setup-safe-area'
13
+ * import '@hanzogui/native/expo-linear-gradient'
14
+ * import '@hanzogui/native/setup-keyboard-controller'
15
+ *
16
+ * // Then use Gui components normally
17
+ * // Sheet will automatically use native gestures when available
18
+ * // LinearGradient will use expo-linear-gradient when installed
19
+ * ```
20
+ */
21
+ // portal
22
+ export { getPortal } from './portalState.js';
23
+ // gesture handler
24
+ export { getGestureHandler } from './gestureState.js';
25
+ export { claimExternalPressOwnership as unstable_claimExternalPressOwnership, hasExternalPressOwnership as unstable_hasExternalPressOwnership, releaseExternalPressOwnership as unstable_releaseExternalPressOwnership, } from './gestureState.js';
26
+ // worklets
27
+ export { getWorklets } from './workletsState.js';
28
+ // safe area
29
+ export { getSafeArea } from './safeAreaState.js';
30
+ // linear gradient
31
+ export { getLinearGradient } from './linearGradientState.js';
32
+ // keyboard controller state exports (safe - no side effects)
33
+ export { isKeyboardControllerEnabled, getKeyboardControllerState, setKeyboardControllerState, } from './keyboardControllerState.js';
34
+ // zeego (native menus)
35
+ export { getZeego } from './zeegoState.js';
36
+ export { NativeMenuContext } from './nativeMenuContext.js';
37
+ // burnt (native toasts)
38
+ export { getBurnt } from './burntState.js';
39
+ // components
40
+ export { NativePortal, NativePortalHost, NativePortalProvider } from './components.js';
41
+ //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["getPortal","getGestureHandler","claimExternalPressOwnership","hasExternalPressOwnership","releaseExternalPressOwnership","getWorklets","getSafeArea","getLinearGradient","isKeyboardControllerEnabled","getKeyboardControllerState","setKeyboardControllerState","getZeego","NativeMenuContext","getBurnt","NativePortal","NativePortalHost","NativePortalProvider"],"sources":["../../src/index.ts"],"sourcesContent":[null],"mappings":"AAuCA,SAASA,SAAA,QAAiB;AAI1B,SAASC,iBAAA,QAAyB;AAClC,SACiCC,2BAAA,EACFC,yBAAA,EACIC,6BAAA,QAC5B;AAWP,SAASC,WAAA,QAAmB;AAI5B,SAASC,WAAA,QAAmB;AAI5B,SAASC,iBAAA,QAAyB;AAIlC,SACEC,2BAAA,EACAC,0BAAA,EACAC,0BAAA,QACK;AAIP,SAASC,QAAA,QAAgB;AAEzB,SAASC,iBAAA,QAAyB;AAGlC,SAASC,QAAA,QAAgB;AAIzB,SAASC,YAAA,EAAcC,gBAAA,EAAkBC,oBAAA,QAA4B","ignoreList":[]}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;GAmBG;AAmBH,SAAS;AACT,OAAO,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAA;AAG5C,kBAAkB;AAClB,OAAO,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAA;AACrD,OAAO,EACL,2BAA2B,IAAI,oCAAoC,EACnE,yBAAyB,IAAI,kCAAkC,EAC/D,6BAA6B,IAAI,sCAAsC,GACxE,MAAM,mBAAmB,CAAA;AAU1B,WAAW;AACX,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAA;AAGhD,YAAY;AACZ,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAA;AAGhD,kBAAkB;AAClB,OAAO,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAA;AAG5D,6DAA6D;AAC7D,OAAO,EACL,2BAA2B,EAC3B,0BAA0B,EAC1B,0BAA0B,GAC3B,MAAM,8BAA8B,CAAA;AAGrC,uBAAuB;AACvB,OAAO,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAA;AAE1C,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAA;AAE1D,wBAAwB;AACxB,OAAO,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAA;AAG1C,aAAa;AACb,OAAO,EAAE,YAAY,EAAE,gBAAgB,EAAE,oBAAoB,EAAE,MAAM,iBAAkB,CAAA"}
@@ -0,0 +1,21 @@
1
+ import { createGlobalState } from './globalState.js';
2
+ const state = createGlobalState(`keyboard_controller`, {
3
+ enabled: false,
4
+ KeyboardProvider: null,
5
+ KeyboardAwareScrollView: null,
6
+ useKeyboardHandler: null,
7
+ useReanimatedKeyboardAnimation: null,
8
+ KeyboardController: null,
9
+ KeyboardEvents: null,
10
+ KeyboardStickyView: null,
11
+ });
12
+ export function isKeyboardControllerEnabled() {
13
+ return state.get().enabled;
14
+ }
15
+ export function getKeyboardControllerState() {
16
+ return state.get();
17
+ }
18
+ export function setKeyboardControllerState(updates) {
19
+ Object.assign(state.get(), updates);
20
+ }
21
+ //# sourceMappingURL=keyboardControllerState.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"keyboardControllerState.js","sourceRoot":"","sources":["../../src/keyboardControllerState.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAA;AAKpD,MAAM,KAAK,GAAG,iBAAiB,CAA0B,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,MAAM,UAAU,2BAA2B;IACzC,OAAO,KAAK,CAAC,GAAG,EAAE,CAAC,OAAO,CAAA;AAC5B,CAAC;AAED,MAAM,UAAU,0BAA0B;IACxC,OAAO,KAAK,CAAC,GAAG,EAAE,CAAA;AACpB,CAAC;AAED,MAAM,UAAU,0BAA0B,CACxC,OAAyC;IAEzC,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,EAAE,EAAE,OAAO,CAAC,CAAA;AACrC,CAAC"}
@@ -0,0 +1,19 @@
1
+ import { createGlobalState } from './globalState.js';
2
+ const state = createGlobalState(`linear_gradient`, {
3
+ enabled: false,
4
+ Component: null,
5
+ });
6
+ export function getLinearGradient() {
7
+ return {
8
+ get isEnabled() {
9
+ return state.get().enabled;
10
+ },
11
+ get state() {
12
+ return state.get();
13
+ },
14
+ set(newState) {
15
+ state.set(newState);
16
+ },
17
+ };
18
+ }
19
+ //# sourceMappingURL=linearGradientState.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"linearGradientState.js","sourceRoot":"","sources":["../../src/linearGradientState.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAA;AAGpD,MAAM,KAAK,GAAG,iBAAiB,CAAsB,iBAAiB,EAAE;IACtE,OAAO,EAAE,KAAK;IACd,SAAS,EAAE,IAAI;CAChB,CAAC,CAAA;AAQF,MAAM,UAAU,iBAAiB;IAC/B,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,3 @@
1
+ import { createContext } from 'react';
2
+ export const NativeMenuContext = createContext(false);
3
+ //# sourceMappingURL=nativeMenuContext.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"nativeMenuContext.js","sourceRoot":"","sources":["../../src/nativeMenuContext.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,aAAa,EAAE,MAAM,OAAO,CAAA;AAErC,MAAM,CAAC,MAAM,iBAAiB,GAA2B,aAAa,CAAC,KAAK,CAAC,CAAA"}
@@ -0,0 +1,19 @@
1
+ import { createGlobalState } from './globalState.js';
2
+ const state = createGlobalState(`portal`, {
3
+ enabled: false,
4
+ type: null,
5
+ });
6
+ export function getPortal() {
7
+ return {
8
+ get isEnabled() {
9
+ return state.get().enabled;
10
+ },
11
+ get state() {
12
+ return state.get();
13
+ },
14
+ set(newState) {
15
+ state.set(newState);
16
+ },
17
+ };
18
+ }
19
+ //# sourceMappingURL=portalState.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"portalState.js","sourceRoot":"","sources":["../../src/portalState.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAA;AAGpD,MAAM,KAAK,GAAG,iBAAiB,CAAoB,QAAQ,EAAE;IAC3D,OAAO,EAAE,KAAK;IACd,IAAI,EAAE,IAAI;CACX,CAAC,CAAA;AAQF,MAAM,UAAU,SAAS;IACvB,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,QAA2B;YAC7B,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAA;QACrB,CAAC;KACF,CAAA;AACH,CAAC"}
@@ -0,0 +1,37 @@
1
+ import { createGlobalState } from './globalState.js';
2
+ const state = createGlobalState(`safe_area`, {
3
+ enabled: false,
4
+ useSafeAreaInsets: null,
5
+ useSafeAreaFrame: null,
6
+ initialMetrics: null,
7
+ });
8
+ const defaultInsets = { top: 0, right: 0, bottom: 0, left: 0 };
9
+ const defaultFrame = { x: 0, y: 0, width: 0, height: 0 };
10
+ export function getSafeArea() {
11
+ return {
12
+ get isEnabled() {
13
+ return state.get().enabled;
14
+ },
15
+ get state() {
16
+ return state.get();
17
+ },
18
+ set(updates) {
19
+ Object.assign(state.get(), updates);
20
+ },
21
+ getInsets() {
22
+ const s = state.get();
23
+ if (!s.enabled || !s.initialMetrics) {
24
+ return defaultInsets;
25
+ }
26
+ return s.initialMetrics.insets;
27
+ },
28
+ getFrame() {
29
+ const s = state.get();
30
+ if (!s.enabled || !s.initialMetrics) {
31
+ return defaultFrame;
32
+ }
33
+ return s.initialMetrics.frame;
34
+ },
35
+ };
36
+ }
37
+ //# sourceMappingURL=safeAreaState.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"safeAreaState.js","sourceRoot":"","sources":["../../src/safeAreaState.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAA;AAGpD,MAAM,KAAK,GAAG,iBAAiB,CAAgB,WAAW,EAAE;IAC1D,OAAO,EAAE,KAAK;IACd,iBAAiB,EAAE,IAAI;IACvB,gBAAgB,EAAE,IAAI;IACtB,cAAc,EAAE,IAAI;CACrB,CAAC,CAAA;AAEF,MAAM,aAAa,GAAmB,EAAE,GAAG,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,CAAA;AAC9E,MAAM,YAAY,GAAkB,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,CAAA;AAYvE,MAAM,UAAU,WAAW;IACzB,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,OAA+B;YACjC,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,EAAE,EAAE,OAAO,CAAC,CAAA;QACrC,CAAC;QACD,SAAS;YACP,MAAM,CAAC,GAAG,KAAK,CAAC,GAAG,EAAE,CAAA;YACrB,IAAI,CAAC,CAAC,CAAC,OAAO,IAAI,CAAC,CAAC,CAAC,cAAc,EAAE,CAAC;gBACpC,OAAO,aAAa,CAAA;YACtB,CAAC;YACD,OAAO,CAAC,CAAC,cAAc,CAAC,MAAM,CAAA;QAChC,CAAC;QACD,QAAQ;YACN,MAAM,CAAC,GAAG,KAAK,CAAC,GAAG,EAAE,CAAA;YACrB,IAAI,CAAC,CAAC,CAAC,OAAO,IAAI,CAAC,CAAC,CAAC,cAAc,EAAE,CAAC;gBACpC,OAAO,YAAY,CAAA;YACrB,CAAC;YACD,OAAO,CAAC,CAAC,cAAc,CAAC,KAAK,CAAA;QAC/B,CAAC;KACF,CAAA;AACH,CAAC"}
@@ -0,0 +1,36 @@
1
+ /**
2
+ * Setup burnt for Gui native toasts.
3
+ *
4
+ * Simply import this module at the top of your app entry point:
5
+ *
6
+ * @example
7
+ * ```tsx
8
+ * import '@hanzogui/native/setup-burnt'
9
+ * ```
10
+ *
11
+ * This automatically detects and configures burnt for use with
12
+ * native Toast functionality.
13
+ */
14
+ import { getBurnt } from './burntState.js';
15
+ function setup() {
16
+ const g = globalThis;
17
+ if (g.__hanzogui_native_burnt_setup)
18
+ return;
19
+ g.__hanzogui_native_burnt_setup = true;
20
+ try {
21
+ const Burnt = require('burnt');
22
+ if (Burnt) {
23
+ getBurnt().set({
24
+ enabled: true,
25
+ toast: Burnt.toast,
26
+ dismissAllAlerts: Burnt.dismissAllAlerts,
27
+ });
28
+ }
29
+ }
30
+ catch {
31
+ // burnt not installed
32
+ }
33
+ }
34
+ // run setup immediately on import
35
+ setup();
36
+ //# sourceMappingURL=setup-burnt.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"setup-burnt.js","sourceRoot":"","sources":["../../src/setup-burnt.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAEH,OAAO,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAA;AAE1C,SAAS,KAAK;IACZ,MAAM,CAAC,GAAG,UAAiB,CAAA;IAC3B,IAAI,CAAC,CAAC,6BAA6B;QAAE,OAAM;IAC3C,CAAC,CAAC,6BAA6B,GAAG,IAAI,CAAA;IAEtC,IAAI,CAAC;QACH,MAAM,KAAK,GAAG,OAAO,CAAC,OAAO,CAA2B,CAAA;QAExD,IAAI,KAAK,EAAE,CAAC;YACV,QAAQ,EAAE,CAAC,GAAG,CAAC;gBACb,OAAO,EAAE,IAAI;gBACb,KAAK,EAAE,KAAK,CAAC,KAAK;gBAClB,gBAAgB,EAAE,KAAK,CAAC,gBAAgB;aACzC,CAAC,CAAA;QACJ,CAAC;IACH,CAAC;IAAC,MAAM,CAAC;QACP,sBAAsB;IACxB,CAAC;AACH,CAAC;AAED,kCAAkC;AAClC,KAAK,EAAE,CAAA"}