@tamagui/native 2.0.0-rc.9 → 2.0.0

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 (298) hide show
  1. package/.turbo/turbo-build.log +2 -0
  2. package/dist/cjs/PressBoundary.cjs +92 -0
  3. package/dist/cjs/PressBoundary.native.js +105 -0
  4. package/dist/cjs/PressBoundary.native.js.map +1 -0
  5. package/dist/cjs/burntState.cjs +14 -12
  6. package/dist/cjs/burntState.native.js +18 -16
  7. package/dist/cjs/burntState.native.js.map +1 -1
  8. package/dist/cjs/components.cjs +20 -15
  9. package/dist/cjs/components.native.js +24 -22
  10. package/dist/cjs/components.native.js.map +1 -1
  11. package/dist/cjs/gesture-handler.cjs +36 -0
  12. package/dist/cjs/gesture-handler.native.js +39 -0
  13. package/dist/cjs/gesture-handler.native.js.map +1 -0
  14. package/dist/cjs/gestureState.cjs +201 -23
  15. package/dist/cjs/gestureState.native.js +217 -39
  16. package/dist/cjs/gestureState.native.js.map +1 -1
  17. package/dist/cjs/globalState.cjs +17 -11
  18. package/dist/cjs/globalState.native.js +17 -11
  19. package/dist/cjs/globalState.native.js.map +1 -1
  20. package/dist/cjs/index.cjs +27 -20
  21. package/dist/cjs/index.native.js +27 -20
  22. package/dist/cjs/index.native.js.map +1 -1
  23. package/dist/cjs/keyboardControllerState.cjs +14 -12
  24. package/dist/cjs/keyboardControllerState.native.js +23 -21
  25. package/dist/cjs/keyboardControllerState.native.js.map +1 -1
  26. package/dist/cjs/linearGradientState.cjs +14 -12
  27. package/dist/cjs/linearGradientState.native.js +17 -15
  28. package/dist/cjs/linearGradientState.native.js.map +1 -1
  29. package/dist/cjs/nativeMenuContext.cjs +29 -0
  30. package/dist/cjs/nativeMenuContext.native.js +32 -0
  31. package/dist/cjs/nativeMenuContext.native.js.map +1 -0
  32. package/dist/cjs/portalState.cjs +14 -12
  33. package/dist/cjs/portalState.native.js +17 -15
  34. package/dist/cjs/portalState.native.js.map +1 -1
  35. package/dist/cjs/safeAreaState.cjs +38 -30
  36. package/dist/cjs/safeAreaState.native.js +39 -31
  37. package/dist/cjs/safeAreaState.native.js.map +1 -1
  38. package/dist/cjs/setup-burnt.cjs +9 -8
  39. package/dist/cjs/setup-burnt.native.js +9 -8
  40. package/dist/cjs/setup-burnt.native.js.map +1 -1
  41. package/dist/cjs/setup-expo-linear-gradient.cjs +9 -8
  42. package/dist/cjs/setup-expo-linear-gradient.native.js +9 -8
  43. package/dist/cjs/setup-expo-linear-gradient.native.js.map +1 -1
  44. package/dist/cjs/setup-gesture-handler.cjs +69 -20
  45. package/dist/cjs/setup-gesture-handler.native.js +69 -20
  46. package/dist/cjs/setup-gesture-handler.native.js.map +1 -1
  47. package/dist/cjs/setup-keyboard-controller.native.js +20 -17
  48. package/dist/cjs/setup-safe-area.cjs +3 -1
  49. package/dist/cjs/setup-safe-area.native.js +15 -17
  50. package/dist/cjs/setup-safe-area.native.js.map +1 -1
  51. package/dist/cjs/setup-teleport.cjs +13 -13
  52. package/dist/cjs/setup-teleport.native.js +13 -13
  53. package/dist/cjs/setup-teleport.native.js.map +1 -1
  54. package/dist/cjs/setup-worklets.cjs +11 -8
  55. package/dist/cjs/setup-worklets.native.js +11 -8
  56. package/dist/cjs/setup-worklets.native.js.map +1 -1
  57. package/dist/cjs/setup-zeego.cjs +12 -9
  58. package/dist/cjs/setup-zeego.native.js +12 -9
  59. package/dist/cjs/setup-zeego.native.js.map +1 -1
  60. package/dist/cjs/types.cjs +7 -5
  61. package/dist/cjs/types.native.js +7 -5
  62. package/dist/cjs/types.native.js.map +1 -1
  63. package/dist/cjs/workletsState.cjs +14 -12
  64. package/dist/cjs/workletsState.native.js +20 -18
  65. package/dist/cjs/workletsState.native.js.map +1 -1
  66. package/dist/cjs/zeegoState.cjs +14 -12
  67. package/dist/cjs/zeegoState.native.js +18 -16
  68. package/dist/cjs/zeegoState.native.js.map +1 -1
  69. package/dist/esm/PressBoundary.mjs +56 -0
  70. package/dist/esm/PressBoundary.mjs.map +1 -0
  71. package/dist/esm/PressBoundary.native.js +66 -0
  72. package/dist/esm/PressBoundary.native.js.map +1 -0
  73. package/dist/esm/burntState.mjs +2 -2
  74. package/dist/esm/burntState.native.js +2 -2
  75. package/dist/esm/components.mjs +6 -3
  76. package/dist/esm/components.mjs.map +1 -1
  77. package/dist/esm/components.native.js +10 -10
  78. package/dist/esm/components.native.js.map +1 -1
  79. package/dist/esm/gesture-handler.mjs +6 -0
  80. package/dist/esm/gesture-handler.mjs.map +1 -0
  81. package/dist/esm/gesture-handler.native.js +6 -0
  82. package/dist/esm/gesture-handler.native.js.map +1 -0
  83. package/dist/esm/gestureState.mjs +186 -13
  84. package/dist/esm/gestureState.mjs.map +1 -1
  85. package/dist/esm/gestureState.native.js +198 -25
  86. package/dist/esm/gestureState.native.js.map +1 -1
  87. package/dist/esm/globalState.mjs +5 -1
  88. package/dist/esm/globalState.mjs.map +1 -1
  89. package/dist/esm/globalState.native.js +5 -1
  90. package/dist/esm/globalState.native.js.map +1 -1
  91. package/dist/esm/index.js +12 -28
  92. package/dist/esm/index.js.map +1 -6
  93. package/dist/esm/index.mjs +3 -1
  94. package/dist/esm/index.mjs.map +1 -1
  95. package/dist/esm/index.native.js +3 -1
  96. package/dist/esm/index.native.js.map +1 -1
  97. package/dist/esm/keyboardControllerState.mjs +2 -2
  98. package/dist/esm/keyboardControllerState.native.js +2 -2
  99. package/dist/esm/linearGradientState.mjs +2 -2
  100. package/dist/esm/linearGradientState.native.js +2 -2
  101. package/dist/esm/nativeMenuContext.mjs +4 -0
  102. package/dist/esm/nativeMenuContext.mjs.map +1 -0
  103. package/dist/esm/nativeMenuContext.native.js +4 -0
  104. package/dist/esm/nativeMenuContext.native.js.map +1 -0
  105. package/dist/esm/portalState.mjs +2 -2
  106. package/dist/esm/portalState.native.js +2 -2
  107. package/dist/esm/safeAreaState.mjs +26 -20
  108. package/dist/esm/safeAreaState.mjs.map +1 -1
  109. package/dist/esm/safeAreaState.native.js +26 -20
  110. package/dist/esm/safeAreaState.native.js.map +1 -1
  111. package/dist/esm/setup-burnt.mjs +9 -8
  112. package/dist/esm/setup-burnt.mjs.map +1 -1
  113. package/dist/esm/setup-burnt.native.js +9 -8
  114. package/dist/esm/setup-burnt.native.js.map +1 -1
  115. package/dist/esm/setup-expo-linear-gradient.mjs +9 -8
  116. package/dist/esm/setup-expo-linear-gradient.mjs.map +1 -1
  117. package/dist/esm/setup-expo-linear-gradient.native.js +9 -8
  118. package/dist/esm/setup-expo-linear-gradient.native.js.map +1 -1
  119. package/dist/esm/setup-gesture-handler.mjs +43 -21
  120. package/dist/esm/setup-gesture-handler.mjs.map +1 -1
  121. package/dist/esm/setup-gesture-handler.native.js +43 -21
  122. package/dist/esm/setup-gesture-handler.native.js.map +1 -1
  123. package/dist/esm/setup-keyboard-controller.native.js +20 -17
  124. package/dist/esm/setup-safe-area.mjs +2 -0
  125. package/dist/esm/setup-safe-area.mjs.map +1 -1
  126. package/dist/esm/setup-safe-area.native.js +15 -17
  127. package/dist/esm/setup-safe-area.native.js.map +1 -1
  128. package/dist/esm/setup-teleport.mjs +13 -13
  129. package/dist/esm/setup-teleport.mjs.map +1 -1
  130. package/dist/esm/setup-teleport.native.js +13 -13
  131. package/dist/esm/setup-teleport.native.js.map +1 -1
  132. package/dist/esm/setup-worklets.mjs +11 -8
  133. package/dist/esm/setup-worklets.mjs.map +1 -1
  134. package/dist/esm/setup-worklets.native.js +11 -8
  135. package/dist/esm/setup-worklets.native.js.map +1 -1
  136. package/dist/esm/setup-zeego.mjs +12 -9
  137. package/dist/esm/setup-zeego.mjs.map +1 -1
  138. package/dist/esm/setup-zeego.native.js +12 -9
  139. package/dist/esm/setup-zeego.native.js.map +1 -1
  140. package/dist/esm/workletsState.mjs +2 -2
  141. package/dist/esm/workletsState.native.js +2 -2
  142. package/dist/esm/zeegoState.mjs +2 -2
  143. package/dist/esm/zeegoState.native.js +2 -2
  144. package/gesture-handler/index.cjs +1 -0
  145. package/gesture-handler/index.js +1 -0
  146. package/gesture-handler/index.native.cjs +1 -0
  147. package/gesture-handler/index.native.js +1 -0
  148. package/gesture-handler.cjs +1 -0
  149. package/package.json +48 -77
  150. package/setup-burnt/index.cjs +2 -0
  151. package/setup-burnt/index.js +2 -0
  152. package/setup-burnt/index.native.cjs +2 -0
  153. package/setup-burnt/index.native.js +2 -0
  154. package/setup-expo-linear-gradient/index.cjs +2 -0
  155. package/setup-expo-linear-gradient/index.js +2 -0
  156. package/setup-expo-linear-gradient/index.native.cjs +2 -0
  157. package/setup-expo-linear-gradient/index.native.js +2 -0
  158. package/setup-gesture-handler/index.cjs +2 -0
  159. package/setup-gesture-handler/index.js +2 -0
  160. package/setup-gesture-handler/index.native.cjs +2 -0
  161. package/setup-gesture-handler/index.native.js +2 -0
  162. package/setup-keyboard-controller/index.cjs +2 -0
  163. package/setup-keyboard-controller/index.js +2 -0
  164. package/setup-keyboard-controller/index.native.cjs +2 -0
  165. package/setup-keyboard-controller/index.native.js +2 -0
  166. package/setup-safe-area/index.cjs +2 -0
  167. package/setup-safe-area/index.js +2 -0
  168. package/setup-safe-area/index.native.cjs +2 -0
  169. package/setup-safe-area/index.native.js +2 -0
  170. package/setup-teleport/index.cjs +2 -0
  171. package/setup-teleport/index.js +2 -0
  172. package/setup-teleport/index.native.cjs +2 -0
  173. package/setup-teleport/index.native.js +2 -0
  174. package/setup-worklets/index.cjs +2 -0
  175. package/setup-worklets/index.js +2 -0
  176. package/setup-worklets/index.native.cjs +2 -0
  177. package/setup-worklets/index.native.js +2 -0
  178. package/setup-zeego/index.cjs +2 -0
  179. package/setup-zeego/index.js +2 -0
  180. package/setup-zeego/index.native.cjs +2 -0
  181. package/setup-zeego/index.native.js +2 -0
  182. package/src/PressBoundary.tsx +81 -0
  183. package/src/gesture-handler.ts +17 -0
  184. package/src/gestureState.ts +319 -11
  185. package/src/index.ts +13 -1
  186. package/src/nativeMenuContext.ts +4 -0
  187. package/src/setup-gesture-handler.ts +52 -10
  188. package/src/types.ts +4 -0
  189. package/tsconfig.json +12 -0
  190. package/types/PressBoundary.d.ts +14 -0
  191. package/types/PressBoundary.d.ts.map +11 -0
  192. package/types/burntState.d.ts.map +2 -2
  193. package/types/components.d.ts.map +2 -2
  194. package/types/gesture-handler.d.ts +8 -0
  195. package/types/gesture-handler.d.ts.map +11 -0
  196. package/types/gestureState.d.ts +5 -0
  197. package/types/gestureState.d.ts.map +4 -4
  198. package/types/globalState.d.ts.map +2 -2
  199. package/types/index.d.ts +4 -1
  200. package/types/index.d.ts.map +4 -4
  201. package/types/keyboardControllerState.d.ts.map +2 -2
  202. package/types/linearGradientState.d.ts.map +2 -2
  203. package/types/nativeMenuContext.d.ts +4 -0
  204. package/types/nativeMenuContext.d.ts.map +11 -0
  205. package/types/portalState.d.ts.map +2 -2
  206. package/types/safeAreaState.d.ts.map +2 -2
  207. package/types/setup-burnt.d.ts.map +2 -2
  208. package/types/setup-expo-linear-gradient.d.ts.map +2 -2
  209. package/types/setup-gesture-handler.d.ts +8 -1
  210. package/types/setup-gesture-handler.d.ts.map +4 -4
  211. package/types/setup-keyboard-controller.d.ts.map +2 -2
  212. package/types/setup-keyboard-controller.web.d.ts.map +2 -2
  213. package/types/setup-safe-area.d.ts.map +2 -2
  214. package/types/setup-teleport.d.ts.map +2 -2
  215. package/types/setup-worklets.d.ts.map +2 -2
  216. package/types/setup-zeego.d.ts.map +2 -2
  217. package/types/types.d.ts +1 -0
  218. package/types/types.d.ts.map +4 -4
  219. package/types/workletsState.d.ts.map +2 -2
  220. package/types/zeegoState.d.ts.map +2 -2
  221. package/dist/cjs/burntState.js +0 -39
  222. package/dist/cjs/burntState.js.map +0 -6
  223. package/dist/cjs/components.js +0 -41
  224. package/dist/cjs/components.js.map +0 -6
  225. package/dist/cjs/gestureState.js +0 -57
  226. package/dist/cjs/gestureState.js.map +0 -6
  227. package/dist/cjs/globalState.js +0 -34
  228. package/dist/cjs/globalState.js.map +0 -6
  229. package/dist/cjs/index.js +0 -33
  230. package/dist/cjs/index.js.map +0 -6
  231. package/dist/cjs/keyboardControllerState.js +0 -42
  232. package/dist/cjs/keyboardControllerState.js.map +0 -6
  233. package/dist/cjs/linearGradientState.js +0 -38
  234. package/dist/cjs/linearGradientState.js.map +0 -6
  235. package/dist/cjs/portalState.js +0 -38
  236. package/dist/cjs/portalState.js.map +0 -6
  237. package/dist/cjs/safeAreaState.js +0 -48
  238. package/dist/cjs/safeAreaState.js.map +0 -6
  239. package/dist/cjs/setup-burnt.js +0 -18
  240. package/dist/cjs/setup-burnt.js.map +0 -6
  241. package/dist/cjs/setup-expo-linear-gradient.js +0 -17
  242. package/dist/cjs/setup-expo-linear-gradient.js.map +0 -6
  243. package/dist/cjs/setup-gesture-handler.js +0 -24
  244. package/dist/cjs/setup-gesture-handler.js.map +0 -6
  245. package/dist/cjs/setup-keyboard-controller.js +0 -1
  246. package/dist/cjs/setup-keyboard-controller.js.map +0 -6
  247. package/dist/cjs/setup-safe-area.js +0 -2
  248. package/dist/cjs/setup-safe-area.js.map +0 -6
  249. package/dist/cjs/setup-teleport.js +0 -17
  250. package/dist/cjs/setup-teleport.js.map +0 -6
  251. package/dist/cjs/setup-worklets.js +0 -20
  252. package/dist/cjs/setup-worklets.js.map +0 -6
  253. package/dist/cjs/setup-zeego.js +0 -19
  254. package/dist/cjs/setup-zeego.js.map +0 -6
  255. package/dist/cjs/types.js +0 -14
  256. package/dist/cjs/types.js.map +0 -6
  257. package/dist/cjs/workletsState.js +0 -41
  258. package/dist/cjs/workletsState.js.map +0 -6
  259. package/dist/cjs/zeegoState.js +0 -39
  260. package/dist/cjs/zeegoState.js.map +0 -6
  261. package/dist/esm/burntState.js +0 -23
  262. package/dist/esm/burntState.js.map +0 -6
  263. package/dist/esm/components.js +0 -26
  264. package/dist/esm/components.js.map +0 -6
  265. package/dist/esm/gestureState.js +0 -41
  266. package/dist/esm/gestureState.js.map +0 -6
  267. package/dist/esm/globalState.js +0 -18
  268. package/dist/esm/globalState.js.map +0 -6
  269. package/dist/esm/keyboardControllerState.js +0 -26
  270. package/dist/esm/keyboardControllerState.js.map +0 -6
  271. package/dist/esm/linearGradientState.js +0 -22
  272. package/dist/esm/linearGradientState.js.map +0 -6
  273. package/dist/esm/portalState.js +0 -22
  274. package/dist/esm/portalState.js.map +0 -6
  275. package/dist/esm/safeAreaState.js +0 -32
  276. package/dist/esm/safeAreaState.js.map +0 -6
  277. package/dist/esm/setup-burnt.js +0 -18
  278. package/dist/esm/setup-burnt.js.map +0 -6
  279. package/dist/esm/setup-expo-linear-gradient.js +0 -17
  280. package/dist/esm/setup-expo-linear-gradient.js.map +0 -6
  281. package/dist/esm/setup-gesture-handler.js +0 -24
  282. package/dist/esm/setup-gesture-handler.js.map +0 -6
  283. package/dist/esm/setup-keyboard-controller.js +0 -1
  284. package/dist/esm/setup-keyboard-controller.js.map +0 -6
  285. package/dist/esm/setup-safe-area.js +0 -2
  286. package/dist/esm/setup-safe-area.js.map +0 -6
  287. package/dist/esm/setup-teleport.js +0 -17
  288. package/dist/esm/setup-teleport.js.map +0 -6
  289. package/dist/esm/setup-worklets.js +0 -20
  290. package/dist/esm/setup-worklets.js.map +0 -6
  291. package/dist/esm/setup-zeego.js +0 -19
  292. package/dist/esm/setup-zeego.js.map +0 -6
  293. package/dist/esm/types.js +0 -1
  294. package/dist/esm/types.js.map +0 -6
  295. package/dist/esm/workletsState.js +0 -25
  296. package/dist/esm/workletsState.js.map +0 -6
  297. package/dist/esm/zeegoState.js +0 -23
  298. package/dist/esm/zeegoState.js.map +0 -6
@@ -1,6 +1,6 @@
1
1
  import { createGlobalState } from "./globalState.native.js";
2
- var state = createGlobalState("burnt", {
3
- enabled: !1,
2
+ var state = createGlobalState(`burnt`, {
3
+ enabled: false,
4
4
  toast: null,
5
5
  dismissAllAlerts: null
6
6
  });
@@ -4,7 +4,8 @@ function NativePortal({
4
4
  hostName = "root",
5
5
  children
6
6
  }) {
7
- if (getPortal().state.type !== "teleport") return null;
7
+ const state = getPortal().state;
8
+ if (state.type !== "teleport") return null;
8
9
  const {
9
10
  Portal
10
11
  } = globalThis.__tamagui_teleport;
@@ -16,7 +17,8 @@ function NativePortal({
16
17
  function NativePortalHost({
17
18
  name
18
19
  }) {
19
- if (getPortal().state.type !== "teleport") return null;
20
+ const state = getPortal().state;
21
+ if (state.type !== "teleport") return null;
20
22
  const {
21
23
  PortalHost
22
24
  } = globalThis.__tamagui_teleport;
@@ -27,7 +29,8 @@ function NativePortalHost({
27
29
  function NativePortalProvider({
28
30
  children
29
31
  }) {
30
- if (getPortal().state.type !== "teleport") return /* @__PURE__ */jsx(Fragment, {
32
+ const state = getPortal().state;
33
+ if (state.type !== "teleport") return /* @__PURE__ */jsx(Fragment, {
31
34
  children
32
35
  });
33
36
  const {
@@ -1 +1 @@
1
- {"version":3,"names":["getPortal","Fragment","jsx","NativePortal","hostName","children","state","type","Portal","globalThis","__tamagui_teleport","NativePortalHost","name","PortalHost","NativePortalProvider","PortalProvider"],"sources":["../../src/components.tsx"],"sourcesContent":[null],"mappings":"AACA,SAASA,SAAA,QAAiB;AAqBjB,SAqB+BC,QAAA,EArB/BC,GAAA;AARF,SAASC,aAAa;EAC3BC,QAAA,GAAW;EACXC;AACF,GAAiC;EAE/B,IADcL,SAAA,CAAU,EAAEM,KAAA,CAChBC,IAAA,KAAS,YAAY,OAAO;EAEtC,MAAM;IAAEC;EAAO,IAAKC,UAAA,CAAmBC,kBAAA;EACvC,OAAO,eAAAR,GAAA,CAACM,MAAA;IAAOJ,QAAA;IAAqBC;EAAA,CAAS;AAC/C;AAMO,SAASM,iBAAiB;EAAEC;AAAK,GAAqC;EAE3E,IADcZ,SAAA,CAAU,EAAEM,KAAA,CAChBC,IAAA,KAAS,YAAY,OAAO;EAEtC,MAAM;IAAEM;EAAW,IAAKJ,UAAA,CAAmBC,kBAAA;EAC3C,OAAO,eAAAR,GAAA,CAACW,UAAA;IAAWD;EAAA,CAAY;AACjC;AAMO,SAASE,qBAAqB;EAAET;AAAS,GAAyC;EAEvF,IADcL,SAAA,CAAU,EAAEM,KAAA,CAChBC,IAAA,KAAS,YAAY,OAAO,eAAAL,GAAA,CAAAD,QAAA;IAAGI;EAAA,CAAS;EAElD,MAAM;IAAEU;EAAe,IAAKN,UAAA,CAAmBC,kBAAA;EAC/C,OAAO,eAAAR,GAAA,CAACa,cAAA;IAAgBV;EAAA,CAAS;AACnC","ignoreList":[]}
1
+ {"version":3,"names":["getPortal","Fragment","jsx","NativePortal","hostName","children","state","type","Portal","globalThis","__tamagui_teleport","NativePortalHost","name","PortalHost","NativePortalProvider","PortalProvider"],"sources":["../../src/components.tsx"],"sourcesContent":[null],"mappings":"AACA,SAASA,SAAA,QAAiB;AAqBjB,SAqB+BC,QAAA,EArB/BC,GAAA;AARF,SAASC,aAAa;EAC3BC,QAAA,GAAW;EACXC;AACF,GAAiC;EAC/B,MAAMC,KAAA,GAAQN,SAAA,CAAU,EAAEM,KAAA;EAC1B,IAAIA,KAAA,CAAMC,IAAA,KAAS,YAAY,OAAO;EAEtC,MAAM;IAAEC;EAAO,IAAKC,UAAA,CAAmBC,kBAAA;EACvC,OAAO,eAAAR,GAAA,CAACM,MAAA;IAAOJ,QAAA;IAAqBC;EAAA,CAAS;AAC/C;AAMO,SAASM,iBAAiB;EAAEC;AAAK,GAAqC;EAC3E,MAAMN,KAAA,GAAQN,SAAA,CAAU,EAAEM,KAAA;EAC1B,IAAIA,KAAA,CAAMC,IAAA,KAAS,YAAY,OAAO;EAEtC,MAAM;IAAEM;EAAW,IAAKJ,UAAA,CAAmBC,kBAAA;EAC3C,OAAO,eAAAR,GAAA,CAACW,UAAA;IAAWD;EAAA,CAAY;AACjC;AAMO,SAASE,qBAAqB;EAAET;AAAS,GAAyC;EACvF,MAAMC,KAAA,GAAQN,SAAA,CAAU,EAAEM,KAAA;EAC1B,IAAIA,KAAA,CAAMC,IAAA,KAAS,YAAY,OAAO,eAAAL,GAAA,CAAAD,QAAA;IAAGI;EAAA,CAAS;EAElD,MAAM;IAAEU;EAAe,IAAKN,UAAA,CAAmBC,kBAAA;EAC/C,OAAO,eAAAR,GAAA,CAACa,cAAA;IAAgBV;EAAA,CAAS;AACnC","ignoreList":[]}
@@ -2,10 +2,10 @@ import { jsx as _jsx, Fragment as _Fragment } from "react/jsx-runtime";
2
2
  import { getPortal } from "./portalState.native.js";
3
3
  function NativePortal(param) {
4
4
  var {
5
- hostName = "root",
6
- children
7
- } = param,
8
- state = getPortal().state;
5
+ hostName = "root",
6
+ children
7
+ } = param;
8
+ var state = getPortal().state;
9
9
  if (state.type !== "teleport") return null;
10
10
  var {
11
11
  Portal
@@ -17,9 +17,9 @@ function NativePortal(param) {
17
17
  }
18
18
  function NativePortalHost(param) {
19
19
  var {
20
- name
21
- } = param,
22
- state = getPortal().state;
20
+ name
21
+ } = param;
22
+ var state = getPortal().state;
23
23
  if (state.type !== "teleport") return null;
24
24
  var {
25
25
  PortalHost
@@ -30,9 +30,9 @@ function NativePortalHost(param) {
30
30
  }
31
31
  function NativePortalProvider(param) {
32
32
  var {
33
- children
34
- } = param,
35
- state = getPortal().state;
33
+ children
34
+ } = param;
35
+ var state = getPortal().state;
36
36
  if (state.type !== "teleport") return /* @__PURE__ */_jsx(_Fragment, {
37
37
  children
38
38
  });
@@ -1 +1 @@
1
- {"version":3,"names":["jsx","_jsx","Fragment","_Fragment","getPortal","NativePortal","param","hostName","children","state","type","Portal","globalThis","__tamagui_teleport","NativePortalHost","name","PortalHost","NativePortalProvider"],"sources":["../../src/components.tsx"],"sourcesContent":[null],"mappings":"AACA,SAASA,GAAA,IAAAC,IAAA,EAAAC,QAAiB,IAAAC,SAAA;AAqBjB,SAqB+BC,SAAA,QArB/B;AARF,SAASC,aAAaC,KAAA;EAC3B;MAAAC,QAAW;MAAAC;IAAA,IAAAF,KAAA;IAAAG,KAAA,GAAAL,SAAA,GAAAK,KAAA;EACX,IAAAA,KAAA,CAAAC,IAAA;EACF,IAAiC;IAAAC;EAAA,IAAAC,UAAA,CAAAC,kBAAA;EAE/B,OADc,eACJZ,IAAA,CAAAU,MAAS;IAEnBJ,QAAQ;IACRC;EACF;AAMO;AAEL,SADcM,gBACJA,CAAAR,KAAA,EAAS;EAEnB;MAAMS;IAAE,IAAAT,KAAW;IAAAG,KAAK,GAAAL,SAAmB,GAAAK,KAAA;EAC3C,IAAAA,KAAO,CAAAC,IAAA,eAAC,aAAW;EACrB;IAAAM;EAAA,IAAAJ,UAAA,CAAAC,kBAAA;EAMO,OAAS,eAAAZ,IAAA,CAAqBe,UAAE,EAAS;IAE9CD;EAEA;AACA;AACF,SAAAE,qBAAAX,KAAA","ignoreList":[]}
1
+ {"version":3,"names":["jsx","_jsx","Fragment","_Fragment","getPortal","NativePortal","param","hostName","children","state","type","Portal","globalThis","__tamagui_teleport","NativePortalHost","name","PortalHost","NativePortalProvider"],"sources":["../../src/components.tsx"],"sourcesContent":[null],"mappings":"AACA,SAASA,GAAA,IAAAC,IAAA,EAAAC,QAAiB,IAAAC,SAAA;AAqBjB,SAqB+BC,SAAA,QArB/B;AARF,SAASC,aAAaC,KAAA;EAC3B;IAAAC,QAAW;IAAAC;EAAA,IAAAF,KAAA;EACX,IAAAG,KAAA,GAAAL,SAAA,GAAAK,KAAA;EACF,IAAiCA,KAAA,CAAAC,IAAA;EAC/B;IAAMC;EAAA,CAAQ,GAAAC,UAAY,CAAAC,kBAAA;EAC1B,OAAI,eAAeZ,IAAA,CAAAU,MAAY;IAE/BJ,QAAQ;IACRC;EACF;AAMO;AACL,SAAMM,gBAAQA,CAAUR,KAAE;EAC1B,IAAI;IAAAS;EAAM,IAAAT,KAAS;EAEnB,IAAAG,KAAQ,GAAAL,SAAW,EAAK,CAAAK,KAAA;EACxB,IAAAA,KAAO,CAAAC,IAAA,eAAC,aAAW;EACrB;IAAAM;EAAA,IAAAJ,UAAA,CAAAC,kBAAA;EAMO,OAAS,eAAAZ,IAAA,CAAqBe,UAAE,EAAS;IAC9CD;EACA;AAEA;AACA,SAAOE,oBAACA,CAAAX,KAAA;EACV;IAAAE;EAAA,IAAAF,KAAA","ignoreList":[]}
@@ -0,0 +1,6 @@
1
+ import { getGestureHandler } from "./gestureState.mjs";
2
+ import { claimExternalPressOwnership, releaseExternalPressOwnership } from "./gestureState.mjs";
3
+ import { PressBoundary } from "./PressBoundary.mjs";
4
+ import { getGestureHandlerConfig, setupGestureHandler } from "./setup-gesture-handler.mjs";
5
+ export { PressBoundary, getGestureHandler, getGestureHandlerConfig, setupGestureHandler, claimExternalPressOwnership as unstable_claimExternalPressOwnership, releaseExternalPressOwnership as unstable_releaseExternalPressOwnership };
6
+ //# sourceMappingURL=gesture-handler.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["getGestureHandler","claimExternalPressOwnership","releaseExternalPressOwnership","PressBoundary","getGestureHandlerConfig","setupGestureHandler"],"sources":["../../src/gesture-handler.ts"],"sourcesContent":[null],"mappings":"AAAA,SAASA,iBAAA,QAAyB;AAMlC,SACiCC,2BAAA,EACEC,6BAAA,QAC5B;AACP,SAASC,aAAA,QAAqB;AAE9B,SACEC,uBAAA,EACAC,mBAAA,QAEK","ignoreList":[]}
@@ -0,0 +1,6 @@
1
+ import { getGestureHandler } from "./gestureState.native.js";
2
+ import { claimExternalPressOwnership, releaseExternalPressOwnership } from "./gestureState.native.js";
3
+ import { PressBoundary } from "./PressBoundary.native.js";
4
+ import { getGestureHandlerConfig, setupGestureHandler } from "./setup-gesture-handler.native.js";
5
+ export { PressBoundary, getGestureHandler, getGestureHandlerConfig, setupGestureHandler, claimExternalPressOwnership as unstable_claimExternalPressOwnership, releaseExternalPressOwnership as unstable_releaseExternalPressOwnership };
6
+ //# sourceMappingURL=gesture-handler.native.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["getGestureHandler","claimExternalPressOwnership","releaseExternalPressOwnership","PressBoundary","getGestureHandlerConfig","setupGestureHandler","unstable_claimExternalPressOwnership"],"sources":["../../src/gesture-handler.ts"],"sourcesContent":[null],"mappings":"AAAA,SAASA,iBAAA,QAAyB;AAMlC,SAAAC,2BAAA,EAAAC,6BAAA;AAAA,SACiCC,aAAA;AAAA,SACEC,uBAAA,EAAAC,mBAAA;AAAA,SAEnCF,aAAS,EAETH,iBAAA,EACEI,uBAAA,EACAC,mBAAA,EAAAJ,2BAEK,IAAAK,oCAAA,E","ignoreList":[]}
@@ -1,10 +1,83 @@
1
1
  import { createGlobalState } from "./globalState.mjs";
2
- const state = createGlobalState("gesture", {
3
- enabled: !1,
2
+ const state = createGlobalState(`gesture`, {
3
+ enabled: false,
4
4
  Gesture: null,
5
5
  GestureDetector: null,
6
- ScrollView: null
6
+ ScrollView: null,
7
+ RootView: null
7
8
  });
9
+ const GESTURE_ENABLED_FREEZE_KEY = "__tamagui_gesture_enabled_freeze__";
10
+ function getGestureEnabledFreezeState() {
11
+ const g = globalThis;
12
+ if (!g[GESTURE_ENABLED_FREEZE_KEY]) {
13
+ g[GESTURE_ENABLED_FREEZE_KEY] = {
14
+ frozen: false,
15
+ enabled: false,
16
+ warned: false
17
+ };
18
+ }
19
+ return g[GESTURE_ENABLED_FREEZE_KEY];
20
+ }
21
+ function warnGestureEnabledMutationIgnored(source) {
22
+ const freezeState = getGestureEnabledFreezeState();
23
+ if (freezeState.warned || process.env.NODE_ENV === "production") {
24
+ return;
25
+ }
26
+ freezeState.warned = true;
27
+ console.warn(`[Tamagui] Ignored ${source} because gesture handler press events were already ${freezeState.enabled ? "enabled" : "disabled"} when TamaguiProvider mounted. Configure gesture handler mode before the first render.`);
28
+ }
29
+ function canChangeGestureHandlerEnabled(nextEnabled, source) {
30
+ const freezeState = getGestureEnabledFreezeState();
31
+ if (!freezeState.frozen || freezeState.enabled === nextEnabled) {
32
+ return true;
33
+ }
34
+ warnGestureEnabledMutationIgnored(source);
35
+ return false;
36
+ }
37
+ let pressGestureDebugId = 0;
38
+ let externalPressDebugId = 0;
39
+ const PRESS_MOVE_CANCEL_DISTANCE = 12;
40
+ const PRESS_MOVE_CANCEL_DISTANCE_SQ = PRESS_MOVE_CANCEL_DISTANCE * PRESS_MOVE_CANCEL_DISTANCE;
41
+ function getEventPointerId(e) {
42
+ const pointerId = e?.pointerId ?? e?.pointer?.id ?? e?.event?.pointerId ?? e?.event?.pointer?.id ?? e?.nativeEvent?.pointerId ?? e?.nativeEvent?.id ?? e?.event?.nativeEvent?.pointerId ?? e?.event?.nativeEvent?.id ?? null;
43
+ return pointerId == null || Number.isNaN(pointerId) ? null : Number(pointerId);
44
+ }
45
+ const pressState = {
46
+ owner: null,
47
+ ownerId: null,
48
+ ownerSource: null,
49
+ ownerPointerId: null,
50
+ timestamp: 0
51
+ };
52
+ function resetPressOwner() {
53
+ pressState.owner = null;
54
+ pressState.ownerId = null;
55
+ pressState.ownerSource = null;
56
+ pressState.ownerPointerId = null;
57
+ pressState.timestamp = 0;
58
+ }
59
+ function resetStaleOwner(now, debugName) {
60
+ if (now - pressState.timestamp > 2e3) {
61
+ resetPressOwner();
62
+ }
63
+ }
64
+ function claimExternalPressOwnership(debugName) {
65
+ const now = Date.now();
66
+ resetStaleOwner(now, debugName);
67
+ const token = {};
68
+ const ownerId = ++externalPressDebugId;
69
+ pressState.owner = token;
70
+ pressState.ownerId = ownerId;
71
+ pressState.ownerSource = "external";
72
+ pressState.timestamp = now;
73
+ return token;
74
+ }
75
+ function releaseExternalPressOwnership(token, debugName) {
76
+ if (!token || pressState.owner !== token) {
77
+ return;
78
+ }
79
+ resetPressOwner();
80
+ }
8
81
  function getGestureHandler() {
9
82
  return {
10
83
  get isEnabled() {
@@ -14,29 +87,129 @@ function getGestureHandler() {
14
87
  return state.get();
15
88
  },
16
89
  set(updates) {
90
+ if (updates.enabled !== void 0 && !canChangeGestureHandlerEnabled(updates.enabled, "getGestureHandler().set()")) {
91
+ return;
92
+ }
17
93
  Object.assign(state.get(), updates);
18
94
  },
19
95
  disable() {
20
- state.get().enabled = !1;
96
+ if (!canChangeGestureHandlerEnabled(false, "getGestureHandler().disable()")) {
97
+ return;
98
+ }
99
+ state.get().enabled = false;
21
100
  },
22
101
  createPressGesture(config) {
23
102
  const {
24
103
  Gesture
25
104
  } = state.get();
26
105
  if (!Gesture) return null;
27
- const longPressDuration = config.delayLongPress ?? 500,
28
- tap = Gesture.Tap().runOnJS(!0).maxDuration(1e4).onBegin(e => {
106
+ const longPressDuration = config.delayLongPress ?? 500;
107
+ const myToken = {};
108
+ const myDebugId = ++pressGestureDebugId;
109
+ const flags = {
110
+ didLongPress: false,
111
+ didPressIn: false,
112
+ pressInTimer: null,
113
+ // absolute (screen) coords of the press start, and whether the finger
114
+ // has since travelled far enough to be treated as a scroll/drag.
115
+ moveStartX: null,
116
+ moveStartY: 0,
117
+ cancelledByMove: false
118
+ };
119
+ const GRACE_PERIOD_MS = process.env.TAMAGUI_RNGH_PRESS_DELAY ? +process.env.TAMAGUI_RNGH_PRESS_DELAY : 24;
120
+ const tryClaimOwnership = e => {
121
+ const now = Date.now();
122
+ resetStaleOwner(now, config.debugName);
123
+ const currentPointerId = getEventPointerId(e);
124
+ const isSameTouchPointer = currentPointerId == null || pressState.ownerPointerId == null || pressState.ownerPointerId === currentPointerId;
125
+ if (pressState.owner === null || pressState.ownerSource === "internal" && isSameTouchPointer) {
126
+ pressState.owner = myToken;
127
+ pressState.ownerId = myDebugId;
128
+ pressState.ownerSource = "internal";
129
+ pressState.ownerPointerId = currentPointerId;
130
+ pressState.timestamp = now;
131
+ }
132
+ return pressState.owner === myToken;
133
+ };
134
+ const isOwner = () => pressState.owner === myToken;
135
+ const releaseOwnership = () => {
136
+ if (flags.pressInTimer) {
137
+ clearTimeout(flags.pressInTimer);
138
+ flags.pressInTimer = null;
139
+ }
140
+ if (pressState.owner === myToken) {
141
+ resetPressOwner();
142
+ }
143
+ };
144
+ const firePressIn = e => {
145
+ if (!flags.didPressIn && isOwner()) {
146
+ flags.didPressIn = true;
29
147
  config.onPressIn?.(e);
30
- }).onEnd(e => {
148
+ }
149
+ };
150
+ const schedulePressIn = e => {
151
+ if (flags.pressInTimer) {
152
+ clearTimeout(flags.pressInTimer);
153
+ }
154
+ flags.pressInTimer = setTimeout(() => {
155
+ flags.pressInTimer = null;
156
+ if (isOwner()) {
157
+ firePressIn(e);
158
+ }
159
+ }, GRACE_PERIOD_MS + 1);
160
+ };
161
+ const tap = Gesture.Tap().runOnJS(true).maxDuration(1e4).onBegin(e => {
162
+ flags.didLongPress = false;
163
+ flags.didPressIn = false;
164
+ flags.cancelledByMove = false;
165
+ flags.moveStartX = typeof e.absoluteX === "number" ? e.absoluteX : null;
166
+ flags.moveStartY = typeof e.absoluteY === "number" ? e.absoluteY : 0;
167
+ tryClaimOwnership(e);
168
+ schedulePressIn(e);
169
+ }).onTouchesMove(e => {
170
+ if (flags.cancelledByMove || flags.moveStartX === null) return;
171
+ const touch = e.changedTouches?.[0] ?? e.allTouches?.[0];
172
+ if (!touch) return;
173
+ const dx = touch.absoluteX - flags.moveStartX;
174
+ const dy = touch.absoluteY - flags.moveStartY;
175
+ if (dx * dx + dy * dy <= PRESS_MOVE_CANCEL_DISTANCE_SQ) return;
176
+ flags.cancelledByMove = true;
177
+ if (flags.pressInTimer) {
178
+ clearTimeout(flags.pressInTimer);
179
+ flags.pressInTimer = null;
180
+ }
181
+ if (flags.didPressIn) {
182
+ flags.didPressIn = false;
183
+ config.onPressOut?.(e);
184
+ }
185
+ releaseOwnership();
186
+ }).onEnd(e => {
187
+ if (isOwner() && !flags.didLongPress && !flags.cancelledByMove) {
188
+ firePressIn(e);
31
189
  config.onPress?.(e);
32
- }).onFinalize(e => {
190
+ }
191
+ }).onFinalize(e => {
192
+ if (isOwner()) {
193
+ config.onPressOut?.(e);
194
+ releaseOwnership();
195
+ } else if (flags.didPressIn) {
196
+ flags.didPressIn = false;
33
197
  config.onPressOut?.(e);
34
- });
35
- if (config.hitSlop && tap.hitSlop(config.hitSlop), !config.onLongPress) return tap;
36
- const longPress = Gesture.LongPress().runOnJS(!0).minDuration(longPressDuration).onBegin(e => config.onPressIn?.(e)).onStart(e => config.onLongPress?.(e)).onFinalize(e => config.onPressOut?.(e));
37
- return config.hitSlop && longPress.hitSlop(config.hitSlop), Gesture.Exclusive(longPress, tap);
198
+ }
199
+ });
200
+ if (config.hitSlop) tap.hitSlop(config.hitSlop);
201
+ if (!config.onLongPress) return tap;
202
+ const longPress = Gesture.LongPress().runOnJS(true).minDuration(longPressDuration).onStart(e => {
203
+ flags.didLongPress = true;
204
+ if (isOwner()) {
205
+ firePressIn(e);
206
+ config.onLongPress?.(e);
207
+ }
208
+ });
209
+ if (config.hitSlop) longPress.hitSlop(config.hitSlop);
210
+ return Gesture.Exclusive(longPress, tap);
38
211
  }
39
212
  };
40
213
  }
41
- export { getGestureHandler };
214
+ export { canChangeGestureHandlerEnabled, claimExternalPressOwnership, getGestureHandler, releaseExternalPressOwnership };
42
215
  //# sourceMappingURL=gestureState.mjs.map
@@ -1 +1 @@
1
- {"version":3,"names":["createGlobalState","state","enabled","Gesture","GestureDetector","ScrollView","getGestureHandler","isEnabled","get","set","updates","Object","assign","disable","createPressGesture","config","longPressDuration","delayLongPress","tap","Tap","runOnJS","maxDuration","onBegin","e","onPressIn","onEnd","onPress","onFinalize","onPressOut","hitSlop","onLongPress","longPress","LongPress","minDuration","onStart","Exclusive"],"sources":["../../src/gestureState.ts"],"sourcesContent":[null],"mappings":"AAAA,SAASA,iBAAA,QAAyB;AAGlC,MAAMC,KAAA,GAAQD,iBAAA,CAAgC,WAAW;EACvDE,OAAA,EAAS;EACTC,OAAA,EAAS;EACTC,eAAA,EAAiB;EACjBC,UAAA,EAAY;AACd,CAAC;AA0BM,SAASC,kBAAA,EAA4C;EAC1D,OAAO;IACL,IAAIC,UAAA,EAAqB;MACvB,OAAON,KAAA,CAAMO,GAAA,CAAI,EAAEN,OAAA;IACrB;IACA,IAAID,MAAA,EAAsB;MACxB,OAAOA,KAAA,CAAMO,GAAA,CAAI;IACnB;IACAC,IAAIC,OAAA,EAAsC;MACxCC,MAAA,CAAOC,MAAA,CAAOX,KAAA,CAAMO,GAAA,CAAI,GAAGE,OAAO;IACpC;IAEAG,QAAA,EAAgB;MACdZ,KAAA,CAAMO,GAAA,CAAI,EAAEN,OAAA,GAAU;IACxB;IAEAY,mBAAmBC,MAAA,EAAiC;MAClD,MAAM;QAAEZ;MAAQ,IAAIF,KAAA,CAAMO,GAAA,CAAI;MAC9B,IAAI,CAACL,OAAA,EAAS,OAAO;MAErB,MAAMa,iBAAA,GAAoBD,MAAA,CAAOE,cAAA,IAAkB;QAI7CC,GAAA,GAAMf,OAAA,CAAQgB,GAAA,CAAI,EACrBC,OAAA,CAAQ,EAAI,EACZC,WAAA,CAAY,GAAK,EACjBC,OAAA,CAASC,CAAA,IAAW;UACnBR,MAAA,CAAOS,SAAA,GAAYD,CAAC;QACtB,CAAC,EACAE,KAAA,CAAOF,CAAA,IAAW;UACjBR,MAAA,CAAOW,OAAA,GAAUH,CAAC;QACpB,CAAC,EACAI,UAAA,CAAYJ,CAAA,IAAW;UACtBR,MAAA,CAAOa,UAAA,GAAaL,CAAC;QACvB,CAAC;MAKH,IAHIR,MAAA,CAAOc,OAAA,IAASX,GAAA,CAAIW,OAAA,CAAQd,MAAA,CAAOc,OAAO,GAG1C,CAACd,MAAA,CAAOe,WAAA,EAAa,OAAOZ,GAAA;MAGhC,MAAMa,SAAA,GAAY5B,OAAA,CAAQ6B,SAAA,CAAU,EACjCZ,OAAA,CAAQ,EAAI,EACZa,WAAA,CAAYjB,iBAAiB,EAC7BM,OAAA,CAASC,CAAA,IAAWR,MAAA,CAAOS,SAAA,GAAYD,CAAC,CAAC,EACzCW,OAAA,CAASX,CAAA,IAAWR,MAAA,CAAOe,WAAA,GAAcP,CAAC,CAAC,EAC3CI,UAAA,CAAYJ,CAAA,IAAWR,MAAA,CAAOa,UAAA,GAAaL,CAAC,CAAC;MAEhD,OAAIR,MAAA,CAAOc,OAAA,IAASE,SAAA,CAAUF,OAAA,CAAQd,MAAA,CAAOc,OAAO,GAG7C1B,OAAA,CAAQgC,SAAA,CAAUJ,SAAA,EAAWb,GAAG;IACzC;EACF;AACF","ignoreList":[]}
1
+ {"version":3,"names":["createGlobalState","state","enabled","Gesture","GestureDetector","ScrollView","RootView","GESTURE_ENABLED_FREEZE_KEY","getGestureEnabledFreezeState","g","globalThis","frozen","warned","warnGestureEnabledMutationIgnored","source","freezeState","process","env","NODE_ENV","console","warn","canChangeGestureHandlerEnabled","nextEnabled","pressGestureDebugId","externalPressDebugId","PRESS_MOVE_CANCEL_DISTANCE","PRESS_MOVE_CANCEL_DISTANCE_SQ","getEventPointerId","e","pointerId","pointer","id","event","nativeEvent","Number","isNaN","pressState","owner","ownerId","ownerSource","ownerPointerId","timestamp","resetPressOwner","resetStaleOwner","now","debugName","claimExternalPressOwnership","Date","token","releaseExternalPressOwnership","getGestureHandler","isEnabled","get","set","updates","Object","assign","disable","createPressGesture","config","longPressDuration","delayLongPress","myToken","myDebugId","flags","didLongPress","didPressIn","pressInTimer","moveStartX","moveStartY","cancelledByMove","GRACE_PERIOD_MS","TAMAGUI_RNGH_PRESS_DELAY","tryClaimOwnership","currentPointerId","isSameTouchPointer","isOwner","releaseOwnership","clearTimeout","firePressIn","onPressIn","schedulePressIn","setTimeout","tap","Tap","runOnJS","maxDuration","onBegin","absoluteX","absoluteY","onTouchesMove","touch","changedTouches","allTouches","dx","dy","onPressOut","onEnd","onPress","onFinalize","hitSlop","onLongPress","longPress","LongPress","minDuration","onStart","Exclusive"],"sources":["../../src/gestureState.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
@@ -1,10 +1,85 @@
1
1
  import { createGlobalState } from "./globalState.native.js";
2
- var state = createGlobalState("gesture", {
3
- enabled: !1,
2
+ var state = createGlobalState(`gesture`, {
3
+ enabled: false,
4
4
  Gesture: null,
5
5
  GestureDetector: null,
6
- ScrollView: null
6
+ ScrollView: null,
7
+ RootView: null
7
8
  });
9
+ var GESTURE_ENABLED_FREEZE_KEY = "__tamagui_gesture_enabled_freeze__";
10
+ function getGestureEnabledFreezeState() {
11
+ var g = globalThis;
12
+ if (!g[GESTURE_ENABLED_FREEZE_KEY]) {
13
+ g[GESTURE_ENABLED_FREEZE_KEY] = {
14
+ frozen: false,
15
+ enabled: false,
16
+ warned: false
17
+ };
18
+ }
19
+ return g[GESTURE_ENABLED_FREEZE_KEY];
20
+ }
21
+ function warnGestureEnabledMutationIgnored(source) {
22
+ var freezeState = getGestureEnabledFreezeState();
23
+ if (freezeState.warned || process.env.NODE_ENV === "production") {
24
+ return;
25
+ }
26
+ freezeState.warned = true;
27
+ console.warn(`[Tamagui] Ignored ${source} because gesture handler press events were already ${freezeState.enabled ? "enabled" : "disabled"} when TamaguiProvider mounted. Configure gesture handler mode before the first render.`);
28
+ }
29
+ function canChangeGestureHandlerEnabled(nextEnabled, source) {
30
+ var freezeState = getGestureEnabledFreezeState();
31
+ if (!freezeState.frozen || freezeState.enabled === nextEnabled) {
32
+ return true;
33
+ }
34
+ warnGestureEnabledMutationIgnored(source);
35
+ return false;
36
+ }
37
+ var pressGestureDebugId = 0;
38
+ var externalPressDebugId = 0;
39
+ var PRESS_MOVE_CANCEL_DISTANCE = 12;
40
+ var PRESS_MOVE_CANCEL_DISTANCE_SQ = PRESS_MOVE_CANCEL_DISTANCE * PRESS_MOVE_CANCEL_DISTANCE;
41
+ function getEventPointerId(e) {
42
+ var _e_pointer, _e_event, _e_event_pointer, _e_event1, _e_nativeEvent, _e_nativeEvent1, _e_event_nativeEvent, _e_event2, _e_event_nativeEvent1, _e_event3;
43
+ var _e_pointerId, _ref, _ref1, _ref2, _ref3, _ref4, _ref5, _ref6;
44
+ var pointerId = (_ref6 = (_ref5 = (_ref4 = (_ref3 = (_ref2 = (_ref1 = (_ref = (_e_pointerId = e === null || e === void 0 ? void 0 : e.pointerId) !== null && _e_pointerId !== void 0 ? _e_pointerId : e === null || e === void 0 ? void 0 : (_e_pointer = e.pointer) === null || _e_pointer === void 0 ? void 0 : _e_pointer.id) !== null && _ref !== void 0 ? _ref : e === null || e === void 0 ? void 0 : (_e_event = e.event) === null || _e_event === void 0 ? void 0 : _e_event.pointerId) !== null && _ref1 !== void 0 ? _ref1 : e === null || e === void 0 ? void 0 : (_e_event1 = e.event) === null || _e_event1 === void 0 ? void 0 : (_e_event_pointer = _e_event1.pointer) === null || _e_event_pointer === void 0 ? void 0 : _e_event_pointer.id) !== null && _ref2 !== void 0 ? _ref2 : e === null || e === void 0 ? void 0 : (_e_nativeEvent = e.nativeEvent) === null || _e_nativeEvent === void 0 ? void 0 : _e_nativeEvent.pointerId) !== null && _ref3 !== void 0 ? _ref3 : e === null || e === void 0 ? void 0 : (_e_nativeEvent1 = e.nativeEvent) === null || _e_nativeEvent1 === void 0 ? void 0 : _e_nativeEvent1.id) !== null && _ref4 !== void 0 ? _ref4 : e === null || e === void 0 ? void 0 : (_e_event2 = e.event) === null || _e_event2 === void 0 ? void 0 : (_e_event_nativeEvent = _e_event2.nativeEvent) === null || _e_event_nativeEvent === void 0 ? void 0 : _e_event_nativeEvent.pointerId) !== null && _ref5 !== void 0 ? _ref5 : e === null || e === void 0 ? void 0 : (_e_event3 = e.event) === null || _e_event3 === void 0 ? void 0 : (_e_event_nativeEvent1 = _e_event3.nativeEvent) === null || _e_event_nativeEvent1 === void 0 ? void 0 : _e_event_nativeEvent1.id) !== null && _ref6 !== void 0 ? _ref6 : null;
45
+ return pointerId == null || Number.isNaN(pointerId) ? null : Number(pointerId);
46
+ }
47
+ var pressState = {
48
+ owner: null,
49
+ ownerId: null,
50
+ ownerSource: null,
51
+ ownerPointerId: null,
52
+ timestamp: 0
53
+ };
54
+ function resetPressOwner() {
55
+ pressState.owner = null;
56
+ pressState.ownerId = null;
57
+ pressState.ownerSource = null;
58
+ pressState.ownerPointerId = null;
59
+ pressState.timestamp = 0;
60
+ }
61
+ function resetStaleOwner(now, debugName) {
62
+ if (now - pressState.timestamp > 2e3) {
63
+ resetPressOwner();
64
+ }
65
+ }
66
+ function claimExternalPressOwnership(debugName) {
67
+ var now = Date.now();
68
+ resetStaleOwner(now, debugName);
69
+ var token = {};
70
+ var ownerId = ++externalPressDebugId;
71
+ pressState.owner = token;
72
+ pressState.ownerId = ownerId;
73
+ pressState.ownerSource = "external";
74
+ pressState.timestamp = now;
75
+ return token;
76
+ }
77
+ function releaseExternalPressOwnership(token, debugName) {
78
+ if (!token || pressState.owner !== token) {
79
+ return;
80
+ }
81
+ resetPressOwner();
82
+ }
8
83
  function getGestureHandler() {
9
84
  return {
10
85
  get isEnabled() {
@@ -14,42 +89,140 @@ function getGestureHandler() {
14
89
  return state.get();
15
90
  },
16
91
  set(updates) {
92
+ if (updates.enabled !== void 0 && !canChangeGestureHandlerEnabled(updates.enabled, "getGestureHandler().set()")) {
93
+ return;
94
+ }
17
95
  Object.assign(state.get(), updates);
18
96
  },
19
97
  disable() {
20
- state.get().enabled = !1;
98
+ if (!canChangeGestureHandlerEnabled(false, "getGestureHandler().disable()")) {
99
+ return;
100
+ }
101
+ state.get().enabled = false;
21
102
  },
22
103
  createPressGesture(config) {
23
104
  var {
24
105
  Gesture
25
106
  } = state.get();
26
107
  if (!Gesture) return null;
27
- var _config_delayLongPress,
28
- longPressDuration = (_config_delayLongPress = config.delayLongPress) !== null && _config_delayLongPress !== void 0 ? _config_delayLongPress : 500,
29
- tap = Gesture.Tap().runOnJS(!0).maxDuration(1e4).onBegin(function (e) {
108
+ var _config_delayLongPress;
109
+ var longPressDuration = (_config_delayLongPress = config.delayLongPress) !== null && _config_delayLongPress !== void 0 ? _config_delayLongPress : 500;
110
+ var myToken = {};
111
+ var myDebugId = ++pressGestureDebugId;
112
+ var flags = {
113
+ didLongPress: false,
114
+ didPressIn: false,
115
+ pressInTimer: null,
116
+ // absolute (screen) coords of the press start, and whether the finger
117
+ // has since travelled far enough to be treated as a scroll/drag.
118
+ moveStartX: null,
119
+ moveStartY: 0,
120
+ cancelledByMove: false
121
+ };
122
+ var GRACE_PERIOD_MS = process.env.TAMAGUI_RNGH_PRESS_DELAY ? +process.env.TAMAGUI_RNGH_PRESS_DELAY : 24;
123
+ var tryClaimOwnership = function (e) {
124
+ var now = Date.now();
125
+ resetStaleOwner(now, config.debugName);
126
+ var currentPointerId = getEventPointerId(e);
127
+ var isSameTouchPointer = currentPointerId == null || pressState.ownerPointerId == null || pressState.ownerPointerId === currentPointerId;
128
+ if (pressState.owner === null || pressState.ownerSource === "internal" && isSameTouchPointer) {
129
+ pressState.owner = myToken;
130
+ pressState.ownerId = myDebugId;
131
+ pressState.ownerSource = "internal";
132
+ pressState.ownerPointerId = currentPointerId;
133
+ pressState.timestamp = now;
134
+ }
135
+ return pressState.owner === myToken;
136
+ };
137
+ var isOwner = function () {
138
+ return pressState.owner === myToken;
139
+ };
140
+ var releaseOwnership = function () {
141
+ if (flags.pressInTimer) {
142
+ clearTimeout(flags.pressInTimer);
143
+ flags.pressInTimer = null;
144
+ }
145
+ if (pressState.owner === myToken) {
146
+ resetPressOwner();
147
+ }
148
+ };
149
+ var firePressIn = function (e) {
150
+ if (!flags.didPressIn && isOwner()) {
30
151
  var _config_onPressIn;
31
- (_config_onPressIn = config.onPressIn) === null || _config_onPressIn === void 0 || _config_onPressIn.call(config, e);
32
- }).onEnd(function (e) {
33
- var _config_onPress;
34
- (_config_onPress = config.onPress) === null || _config_onPress === void 0 || _config_onPress.call(config, e);
35
- }).onFinalize(function (e) {
152
+ flags.didPressIn = true;
153
+ (_config_onPressIn = config.onPressIn) === null || _config_onPressIn === void 0 ? void 0 : _config_onPressIn.call(config, e);
154
+ }
155
+ };
156
+ var schedulePressIn = function (e) {
157
+ if (flags.pressInTimer) {
158
+ clearTimeout(flags.pressInTimer);
159
+ }
160
+ flags.pressInTimer = setTimeout(function () {
161
+ flags.pressInTimer = null;
162
+ if (isOwner()) {
163
+ firePressIn(e);
164
+ }
165
+ }, GRACE_PERIOD_MS + 1);
166
+ };
167
+ var tap = Gesture.Tap().runOnJS(true).maxDuration(1e4).onBegin(function (e) {
168
+ flags.didLongPress = false;
169
+ flags.didPressIn = false;
170
+ flags.cancelledByMove = false;
171
+ flags.moveStartX = typeof e.absoluteX === "number" ? e.absoluteX : null;
172
+ flags.moveStartY = typeof e.absoluteY === "number" ? e.absoluteY : 0;
173
+ tryClaimOwnership(e);
174
+ schedulePressIn(e);
175
+ }).onTouchesMove(function (e) {
176
+ var _e_changedTouches, _e_allTouches;
177
+ if (flags.cancelledByMove || flags.moveStartX === null) return;
178
+ var _e_changedTouches_;
179
+ var touch = (_e_changedTouches_ = (_e_changedTouches = e.changedTouches) === null || _e_changedTouches === void 0 ? void 0 : _e_changedTouches[0]) !== null && _e_changedTouches_ !== void 0 ? _e_changedTouches_ : (_e_allTouches = e.allTouches) === null || _e_allTouches === void 0 ? void 0 : _e_allTouches[0];
180
+ if (!touch) return;
181
+ var dx = touch.absoluteX - flags.moveStartX;
182
+ var dy = touch.absoluteY - flags.moveStartY;
183
+ if (dx * dx + dy * dy <= PRESS_MOVE_CANCEL_DISTANCE_SQ) return;
184
+ flags.cancelledByMove = true;
185
+ if (flags.pressInTimer) {
186
+ clearTimeout(flags.pressInTimer);
187
+ flags.pressInTimer = null;
188
+ }
189
+ if (flags.didPressIn) {
36
190
  var _config_onPressOut;
37
- (_config_onPressOut = config.onPressOut) === null || _config_onPressOut === void 0 || _config_onPressOut.call(config, e);
38
- });
39
- if (config.hitSlop && tap.hitSlop(config.hitSlop), !config.onLongPress) return tap;
40
- var longPress = Gesture.LongPress().runOnJS(!0).minDuration(longPressDuration).onBegin(function (e) {
41
- var _config_onPressIn;
42
- return (_config_onPressIn = config.onPressIn) === null || _config_onPressIn === void 0 ? void 0 : _config_onPressIn.call(config, e);
43
- }).onStart(function (e) {
44
- var _config_onLongPress;
45
- return (_config_onLongPress = config.onLongPress) === null || _config_onLongPress === void 0 ? void 0 : _config_onLongPress.call(config, e);
191
+ flags.didPressIn = false;
192
+ (_config_onPressOut = config.onPressOut) === null || _config_onPressOut === void 0 ? void 0 : _config_onPressOut.call(config, e);
193
+ }
194
+ releaseOwnership();
195
+ }).onEnd(function (e) {
196
+ if (isOwner() && !flags.didLongPress && !flags.cancelledByMove) {
197
+ var _config_onPress;
198
+ firePressIn(e);
199
+ (_config_onPress = config.onPress) === null || _config_onPress === void 0 ? void 0 : _config_onPress.call(config, e);
200
+ }
46
201
  }).onFinalize(function (e) {
47
- var _config_onPressOut;
48
- return (_config_onPressOut = config.onPressOut) === null || _config_onPressOut === void 0 ? void 0 : _config_onPressOut.call(config, e);
202
+ if (isOwner()) {
203
+ var _config_onPressOut;
204
+ (_config_onPressOut = config.onPressOut) === null || _config_onPressOut === void 0 ? void 0 : _config_onPressOut.call(config, e);
205
+ releaseOwnership();
206
+ } else if (flags.didPressIn) {
207
+ var _config_onPressOut1;
208
+ flags.didPressIn = false;
209
+ (_config_onPressOut1 = config.onPressOut) === null || _config_onPressOut1 === void 0 ? void 0 : _config_onPressOut1.call(config, e);
210
+ }
211
+ });
212
+ if (config.hitSlop) tap.hitSlop(config.hitSlop);
213
+ if (!config.onLongPress) return tap;
214
+ var longPress = Gesture.LongPress().runOnJS(true).minDuration(longPressDuration).onStart(function (e) {
215
+ flags.didLongPress = true;
216
+ if (isOwner()) {
217
+ var _config_onLongPress;
218
+ firePressIn(e);
219
+ (_config_onLongPress = config.onLongPress) === null || _config_onLongPress === void 0 ? void 0 : _config_onLongPress.call(config, e);
220
+ }
49
221
  });
50
- return config.hitSlop && longPress.hitSlop(config.hitSlop), Gesture.Exclusive(longPress, tap);
222
+ if (config.hitSlop) longPress.hitSlop(config.hitSlop);
223
+ return Gesture.Exclusive(longPress, tap);
51
224
  }
52
225
  };
53
226
  }
54
- export { getGestureHandler };
227
+ export { canChangeGestureHandlerEnabled, claimExternalPressOwnership, getGestureHandler, releaseExternalPressOwnership };
55
228
  //# sourceMappingURL=gestureState.native.js.map