@tamagui/toast 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 (413) hide show
  1. package/dist/cjs/Toast.cjs +149 -141
  2. package/dist/cjs/Toast.native.js +149 -142
  3. package/dist/cjs/Toast.native.js.map +1 -1
  4. package/dist/cjs/ToastAnnounce.cjs +78 -72
  5. package/dist/cjs/ToastAnnounce.native.js +85 -79
  6. package/dist/cjs/ToastAnnounce.native.js.map +1 -1
  7. package/dist/cjs/ToastComposable.cjs +780 -591
  8. package/dist/cjs/ToastComposable.native.js +863 -706
  9. package/dist/cjs/ToastComposable.native.js.map +1 -1
  10. package/dist/cjs/ToastImperative.cjs +99 -80
  11. package/dist/cjs/ToastImperative.native.js +104 -96
  12. package/dist/cjs/ToastImperative.native.js.map +1 -1
  13. package/dist/cjs/ToastImpl.cjs +300 -238
  14. package/dist/cjs/ToastImpl.native.js +309 -271
  15. package/dist/cjs/ToastImpl.native.js.map +1 -1
  16. package/dist/cjs/ToastItemFrame.cjs +143 -0
  17. package/dist/cjs/ToastItemFrame.native.js +148 -0
  18. package/dist/cjs/ToastItemFrame.native.js.map +1 -0
  19. package/dist/cjs/ToastPortal.cjs +23 -18
  20. package/dist/cjs/ToastPortal.native.js +27 -22
  21. package/dist/cjs/ToastPortal.native.js.map +1 -1
  22. package/dist/cjs/ToastProvider.cjs +102 -98
  23. package/dist/cjs/ToastProvider.native.js +108 -106
  24. package/dist/cjs/ToastProvider.native.js.map +1 -1
  25. package/dist/cjs/ToastState.cjs +218 -155
  26. package/dist/cjs/ToastState.native.js +270 -203
  27. package/dist/cjs/ToastState.native.js.map +1 -1
  28. package/dist/cjs/ToastViewport.cjs +274 -233
  29. package/dist/cjs/ToastViewport.native.js +301 -273
  30. package/dist/cjs/ToastViewport.native.js.map +1 -1
  31. package/dist/cjs/Toaster.cjs +71 -233
  32. package/dist/cjs/Toaster.native.js +72 -289
  33. package/dist/cjs/Toaster.native.js.map +1 -1
  34. package/dist/cjs/constants.cjs +14 -12
  35. package/dist/cjs/constants.native.js +14 -12
  36. package/dist/cjs/constants.native.js.map +1 -1
  37. package/dist/cjs/createNativeToast.cjs +43 -35
  38. package/dist/cjs/createNativeToast.native.js +42 -30
  39. package/dist/cjs/createNativeToast.native.js.map +1 -1
  40. package/dist/cjs/dispatchNativeToast.cjs +47 -0
  41. package/dist/cjs/dispatchNativeToast.native.js +52 -0
  42. package/dist/cjs/dispatchNativeToast.native.js.map +1 -0
  43. package/dist/cjs/index.cjs +7 -5
  44. package/dist/cjs/index.native.js +7 -5
  45. package/dist/cjs/index.native.js.map +1 -1
  46. package/dist/cjs/types.cjs +7 -5
  47. package/dist/cjs/types.native.js +7 -5
  48. package/dist/cjs/types.native.js.map +1 -1
  49. package/dist/cjs/useAnimatedDragGesture.cjs +184 -83
  50. package/dist/cjs/useAnimatedDragGesture.native.js +193 -79
  51. package/dist/cjs/useAnimatedDragGesture.native.js.map +1 -1
  52. package/dist/cjs/useReducedMotion.cjs +44 -30
  53. package/dist/cjs/useReducedMotion.native.js +52 -43
  54. package/dist/cjs/useReducedMotion.native.js.map +1 -1
  55. package/dist/cjs/useToastAnimations.cjs +233 -155
  56. package/dist/cjs/useToastAnimations.native.js +246 -170
  57. package/dist/cjs/useToastAnimations.native.js.map +1 -1
  58. package/dist/cjs/v2.cjs +36 -0
  59. package/dist/cjs/v2.native.js +39 -0
  60. package/dist/cjs/v2.native.js.map +1 -0
  61. package/dist/esm/Toast.mjs +112 -106
  62. package/dist/esm/Toast.mjs.map +1 -1
  63. package/dist/esm/Toast.native.js +112 -107
  64. package/dist/esm/Toast.native.js.map +1 -1
  65. package/dist/esm/ToastAnnounce.mjs +46 -42
  66. package/dist/esm/ToastAnnounce.mjs.map +1 -1
  67. package/dist/esm/ToastAnnounce.native.js +52 -48
  68. package/dist/esm/ToastAnnounce.native.js.map +1 -1
  69. package/dist/esm/ToastComposable.mjs +742 -555
  70. package/dist/esm/ToastComposable.mjs.map +1 -1
  71. package/dist/esm/ToastComposable.native.js +825 -670
  72. package/dist/esm/ToastComposable.native.js.map +1 -1
  73. package/dist/esm/ToastImperative.mjs +71 -54
  74. package/dist/esm/ToastImperative.mjs.map +1 -1
  75. package/dist/esm/ToastImperative.native.js +76 -70
  76. package/dist/esm/ToastImperative.native.js.map +1 -1
  77. package/dist/esm/ToastImpl.mjs +261 -201
  78. package/dist/esm/ToastImpl.mjs.map +1 -1
  79. package/dist/esm/ToastImpl.native.js +270 -234
  80. package/dist/esm/ToastImpl.native.js.map +1 -1
  81. package/dist/esm/ToastItemFrame.mjs +114 -0
  82. package/dist/esm/ToastItemFrame.mjs.map +1 -0
  83. package/dist/esm/ToastItemFrame.native.js +116 -0
  84. package/dist/esm/ToastItemFrame.native.js.map +1 -0
  85. package/dist/esm/ToastPortal.mjs +8 -5
  86. package/dist/esm/ToastPortal.mjs.map +1 -1
  87. package/dist/esm/ToastPortal.native.js +12 -9
  88. package/dist/esm/ToastPortal.native.js.map +1 -1
  89. package/dist/esm/ToastProvider.mjs +71 -69
  90. package/dist/esm/ToastProvider.mjs.map +1 -1
  91. package/dist/esm/ToastProvider.native.js +77 -77
  92. package/dist/esm/ToastProvider.native.js.map +1 -1
  93. package/dist/esm/ToastState.mjs +205 -144
  94. package/dist/esm/ToastState.mjs.map +1 -1
  95. package/dist/esm/ToastState.native.js +258 -193
  96. package/dist/esm/ToastState.native.js.map +1 -1
  97. package/dist/esm/ToastViewport.mjs +238 -199
  98. package/dist/esm/ToastViewport.mjs.map +1 -1
  99. package/dist/esm/ToastViewport.native.js +265 -239
  100. package/dist/esm/ToastViewport.native.js.map +1 -1
  101. package/dist/esm/Toaster.mjs +45 -209
  102. package/dist/esm/Toaster.mjs.map +1 -1
  103. package/dist/esm/Toaster.native.js +46 -265
  104. package/dist/esm/Toaster.native.js.map +1 -1
  105. package/dist/esm/constants.mjs +2 -2
  106. package/dist/esm/constants.mjs.map +1 -1
  107. package/dist/esm/constants.native.js +2 -2
  108. package/dist/esm/constants.native.js.map +1 -1
  109. package/dist/esm/createNativeToast.mjs +29 -24
  110. package/dist/esm/createNativeToast.mjs.map +1 -1
  111. package/dist/esm/createNativeToast.native.js +27 -18
  112. package/dist/esm/createNativeToast.native.js.map +1 -1
  113. package/dist/esm/dispatchNativeToast.mjs +22 -0
  114. package/dist/esm/dispatchNativeToast.mjs.map +1 -0
  115. package/dist/esm/dispatchNativeToast.native.js +24 -0
  116. package/dist/esm/dispatchNativeToast.native.js.map +1 -0
  117. package/dist/esm/index.js +1 -1
  118. package/dist/esm/index.js.map +1 -6
  119. package/dist/esm/useAnimatedDragGesture.mjs +160 -61
  120. package/dist/esm/useAnimatedDragGesture.mjs.map +1 -1
  121. package/dist/esm/useAnimatedDragGesture.native.js +167 -55
  122. package/dist/esm/useAnimatedDragGesture.native.js.map +1 -1
  123. package/dist/esm/useReducedMotion.mjs +18 -6
  124. package/dist/esm/useReducedMotion.mjs.map +1 -1
  125. package/dist/esm/useReducedMotion.native.js +25 -18
  126. package/dist/esm/useReducedMotion.native.js.map +1 -1
  127. package/dist/esm/useToastAnimations.mjs +206 -130
  128. package/dist/esm/useToastAnimations.mjs.map +1 -1
  129. package/dist/esm/useToastAnimations.native.js +218 -144
  130. package/dist/esm/useToastAnimations.native.js.map +1 -1
  131. package/dist/esm/v2.mjs +6 -0
  132. package/dist/esm/v2.mjs.map +1 -0
  133. package/dist/esm/v2.native.js +6 -0
  134. package/dist/esm/v2.native.js.map +1 -0
  135. package/dist/jsx/Toast.mjs +112 -106
  136. package/dist/jsx/Toast.mjs.map +1 -1
  137. package/dist/jsx/Toast.native.js +149 -142
  138. package/dist/jsx/Toast.native.js.map +1 -1
  139. package/dist/jsx/ToastAnnounce.mjs +46 -42
  140. package/dist/jsx/ToastAnnounce.mjs.map +1 -1
  141. package/dist/jsx/ToastAnnounce.native.js +85 -79
  142. package/dist/jsx/ToastAnnounce.native.js.map +1 -1
  143. package/dist/jsx/ToastComposable.mjs +742 -555
  144. package/dist/jsx/ToastComposable.mjs.map +1 -1
  145. package/dist/jsx/ToastComposable.native.js +863 -706
  146. package/dist/jsx/ToastComposable.native.js.map +1 -1
  147. package/dist/jsx/ToastImperative.mjs +71 -54
  148. package/dist/jsx/ToastImperative.mjs.map +1 -1
  149. package/dist/jsx/ToastImperative.native.js +104 -96
  150. package/dist/jsx/ToastImperative.native.js.map +1 -1
  151. package/dist/jsx/ToastImpl.mjs +261 -201
  152. package/dist/jsx/ToastImpl.mjs.map +1 -1
  153. package/dist/jsx/ToastImpl.native.js +309 -271
  154. package/dist/jsx/ToastImpl.native.js.map +1 -1
  155. package/dist/jsx/ToastItemFrame.mjs +114 -0
  156. package/dist/jsx/ToastItemFrame.mjs.map +1 -0
  157. package/dist/jsx/ToastItemFrame.native.js +148 -0
  158. package/dist/jsx/ToastItemFrame.native.js.map +1 -0
  159. package/dist/jsx/ToastPortal.mjs +8 -5
  160. package/dist/jsx/ToastPortal.mjs.map +1 -1
  161. package/dist/jsx/ToastPortal.native.js +27 -22
  162. package/dist/jsx/ToastPortal.native.js.map +1 -1
  163. package/dist/jsx/ToastProvider.mjs +71 -69
  164. package/dist/jsx/ToastProvider.mjs.map +1 -1
  165. package/dist/jsx/ToastProvider.native.js +108 -106
  166. package/dist/jsx/ToastProvider.native.js.map +1 -1
  167. package/dist/jsx/ToastState.mjs +205 -144
  168. package/dist/jsx/ToastState.mjs.map +1 -1
  169. package/dist/jsx/ToastState.native.js +270 -203
  170. package/dist/jsx/ToastState.native.js.map +1 -1
  171. package/dist/jsx/ToastViewport.mjs +238 -199
  172. package/dist/jsx/ToastViewport.mjs.map +1 -1
  173. package/dist/jsx/ToastViewport.native.js +301 -273
  174. package/dist/jsx/ToastViewport.native.js.map +1 -1
  175. package/dist/jsx/Toaster.mjs +45 -209
  176. package/dist/jsx/Toaster.mjs.map +1 -1
  177. package/dist/jsx/Toaster.native.js +72 -289
  178. package/dist/jsx/Toaster.native.js.map +1 -1
  179. package/dist/jsx/constants.mjs +2 -2
  180. package/dist/jsx/constants.mjs.map +1 -1
  181. package/dist/jsx/constants.native.js +14 -12
  182. package/dist/jsx/constants.native.js.map +1 -1
  183. package/dist/jsx/createNativeToast.mjs +29 -24
  184. package/dist/jsx/createNativeToast.mjs.map +1 -1
  185. package/dist/jsx/createNativeToast.native.js +42 -30
  186. package/dist/jsx/createNativeToast.native.js.map +1 -1
  187. package/dist/jsx/dispatchNativeToast.mjs +22 -0
  188. package/dist/jsx/dispatchNativeToast.mjs.map +1 -0
  189. package/dist/jsx/dispatchNativeToast.native.js +52 -0
  190. package/dist/jsx/dispatchNativeToast.native.js.map +1 -0
  191. package/dist/jsx/index.js +1 -1
  192. package/dist/jsx/index.js.map +1 -6
  193. package/dist/jsx/index.native.js +7 -5
  194. package/dist/jsx/types.native.js +7 -5
  195. package/dist/jsx/useAnimatedDragGesture.mjs +160 -61
  196. package/dist/jsx/useAnimatedDragGesture.mjs.map +1 -1
  197. package/dist/jsx/useAnimatedDragGesture.native.js +193 -79
  198. package/dist/jsx/useAnimatedDragGesture.native.js.map +1 -1
  199. package/dist/jsx/useReducedMotion.mjs +18 -6
  200. package/dist/jsx/useReducedMotion.mjs.map +1 -1
  201. package/dist/jsx/useReducedMotion.native.js +52 -43
  202. package/dist/jsx/useReducedMotion.native.js.map +1 -1
  203. package/dist/jsx/useToastAnimations.mjs +206 -130
  204. package/dist/jsx/useToastAnimations.mjs.map +1 -1
  205. package/dist/jsx/useToastAnimations.native.js +246 -170
  206. package/dist/jsx/useToastAnimations.native.js.map +1 -1
  207. package/dist/jsx/v2.mjs +6 -0
  208. package/dist/jsx/v2.mjs.map +1 -0
  209. package/dist/jsx/v2.native.js +39 -0
  210. package/dist/jsx/v2.native.js.map +1 -0
  211. package/package.json +41 -24
  212. package/src/ToastComposable.tsx +1380 -0
  213. package/src/ToastImpl.tsx +14 -2
  214. package/src/ToastItemFrame.tsx +136 -0
  215. package/src/ToastPortal.tsx +2 -2
  216. package/src/ToastProvider.tsx +8 -1
  217. package/src/ToastState.ts +398 -0
  218. package/src/ToastViewport.tsx +4 -3
  219. package/src/Toaster.tsx +181 -0
  220. package/src/createNativeToast.native.tsx +4 -0
  221. package/src/createNativeToast.tsx +18 -24
  222. package/src/dispatchNativeToast.ts +43 -0
  223. package/src/useAnimatedDragGesture.native.ts +255 -0
  224. package/src/useAnimatedDragGesture.ts +319 -0
  225. package/src/useReducedMotion.ts +59 -0
  226. package/src/useToastAnimations.ts +372 -0
  227. package/src/v2.ts +31 -0
  228. package/types/ToastComposable.d.ts +199 -0
  229. package/types/ToastComposable.d.ts.map +1 -1
  230. package/types/ToastImpl.d.ts.map +1 -1
  231. package/types/ToastItemFrame.d.ts +25 -0
  232. package/types/ToastItemFrame.d.ts.map +1 -0
  233. package/types/ToastPortal.d.ts.map +1 -1
  234. package/types/ToastProvider.d.ts +1 -1
  235. package/types/ToastProvider.d.ts.map +1 -1
  236. package/types/ToastState.d.ts +179 -0
  237. package/types/ToastState.d.ts.map +1 -1
  238. package/types/ToastViewport.d.ts.map +1 -1
  239. package/types/Toaster.d.ts +112 -0
  240. package/types/Toaster.d.ts.map +1 -1
  241. package/types/createNativeToast.d.ts +5 -0
  242. package/types/createNativeToast.d.ts.map +1 -1
  243. package/types/createNativeToast.native.d.ts +1 -0
  244. package/types/createNativeToast.native.d.ts.map +1 -1
  245. package/types/dispatchNativeToast.d.ts +12 -0
  246. package/types/dispatchNativeToast.d.ts.map +1 -0
  247. package/types/useAnimatedDragGesture.d.ts +33 -0
  248. package/types/useAnimatedDragGesture.d.ts.map +1 -1
  249. package/types/useAnimatedDragGesture.native.d.ts +33 -0
  250. package/types/useAnimatedDragGesture.native.d.ts.map +1 -1
  251. package/types/useReducedMotion.d.ts +6 -0
  252. package/types/useToastAnimations.d.ts +50 -0
  253. package/types/useToastAnimations.d.ts.map +1 -1
  254. package/types/v2.d.ts +10 -0
  255. package/types/v2.d.ts.map +1 -0
  256. package/v2/index.cjs +2 -0
  257. package/v2/index.js +2 -0
  258. package/v2/index.native.cjs +2 -0
  259. package/v2/index.native.js +2 -0
  260. package/LICENSE +0 -21
  261. package/dist/cjs/Toast.js +0 -119
  262. package/dist/cjs/Toast.js.map +0 -6
  263. package/dist/cjs/ToastAnnounce.js +0 -72
  264. package/dist/cjs/ToastAnnounce.js.map +0 -6
  265. package/dist/cjs/ToastComposable.js +0 -548
  266. package/dist/cjs/ToastComposable.js.map +0 -6
  267. package/dist/cjs/ToastImperative.js +0 -71
  268. package/dist/cjs/ToastImperative.js.map +0 -6
  269. package/dist/cjs/ToastImpl.js +0 -227
  270. package/dist/cjs/ToastImpl.js.map +0 -6
  271. package/dist/cjs/ToastItem.cjs +0 -526
  272. package/dist/cjs/ToastItem.js +0 -409
  273. package/dist/cjs/ToastItem.js.map +0 -6
  274. package/dist/cjs/ToastItem.native.js +0 -614
  275. package/dist/cjs/ToastItem.native.js.map +0 -1
  276. package/dist/cjs/ToastPortal.js +0 -26
  277. package/dist/cjs/ToastPortal.js.map +0 -6
  278. package/dist/cjs/ToastProvider.js +0 -105
  279. package/dist/cjs/ToastProvider.js.map +0 -6
  280. package/dist/cjs/ToastState.js +0 -160
  281. package/dist/cjs/ToastState.js.map +0 -6
  282. package/dist/cjs/ToastViewport.js +0 -263
  283. package/dist/cjs/ToastViewport.js.map +0 -6
  284. package/dist/cjs/Toaster.js +0 -204
  285. package/dist/cjs/Toaster.js.map +0 -6
  286. package/dist/cjs/constants.js +0 -22
  287. package/dist/cjs/constants.js.map +0 -6
  288. package/dist/cjs/createNativeToast.js +0 -44
  289. package/dist/cjs/createNativeToast.js.map +0 -6
  290. package/dist/cjs/index.js +0 -15
  291. package/dist/cjs/index.js.map +0 -6
  292. package/dist/cjs/types.js +0 -14
  293. package/dist/cjs/types.js.map +0 -6
  294. package/dist/cjs/useAnimatedDragGesture.js +0 -97
  295. package/dist/cjs/useAnimatedDragGesture.js.map +0 -6
  296. package/dist/cjs/useDragGesture.cjs +0 -129
  297. package/dist/cjs/useDragGesture.js +0 -100
  298. package/dist/cjs/useDragGesture.js.map +0 -6
  299. package/dist/cjs/useDragGesture.native.js +0 -146
  300. package/dist/cjs/useDragGesture.native.js.map +0 -1
  301. package/dist/cjs/useReducedMotion.js +0 -53
  302. package/dist/cjs/useReducedMotion.js.map +0 -6
  303. package/dist/cjs/useToastAnimations.js +0 -144
  304. package/dist/cjs/useToastAnimations.js.map +0 -6
  305. package/dist/cjs/v1.cjs +0 -31
  306. package/dist/cjs/v1.js +0 -26
  307. package/dist/cjs/v1.js.map +0 -6
  308. package/dist/cjs/v1.native.js +0 -34
  309. package/dist/cjs/v1.native.js.map +0 -1
  310. package/dist/esm/Toast.js +0 -107
  311. package/dist/esm/Toast.js.map +0 -6
  312. package/dist/esm/ToastAnnounce.js +0 -55
  313. package/dist/esm/ToastAnnounce.js.map +0 -6
  314. package/dist/esm/ToastComposable.js +0 -543
  315. package/dist/esm/ToastComposable.js.map +0 -6
  316. package/dist/esm/ToastImperative.js +0 -50
  317. package/dist/esm/ToastImperative.js.map +0 -6
  318. package/dist/esm/ToastImpl.js +0 -225
  319. package/dist/esm/ToastImpl.js.map +0 -6
  320. package/dist/esm/ToastItem.js +0 -393
  321. package/dist/esm/ToastItem.js.map +0 -6
  322. package/dist/esm/ToastItem.mjs +0 -492
  323. package/dist/esm/ToastItem.mjs.map +0 -1
  324. package/dist/esm/ToastItem.native.js +0 -577
  325. package/dist/esm/ToastItem.native.js.map +0 -1
  326. package/dist/esm/ToastPortal.js +0 -13
  327. package/dist/esm/ToastPortal.js.map +0 -6
  328. package/dist/esm/ToastProvider.js +0 -87
  329. package/dist/esm/ToastProvider.js.map +0 -6
  330. package/dist/esm/ToastState.js +0 -144
  331. package/dist/esm/ToastState.js.map +0 -6
  332. package/dist/esm/ToastViewport.js +0 -250
  333. package/dist/esm/ToastViewport.js.map +0 -6
  334. package/dist/esm/Toaster.js +0 -188
  335. package/dist/esm/Toaster.js.map +0 -6
  336. package/dist/esm/constants.js +0 -6
  337. package/dist/esm/constants.js.map +0 -6
  338. package/dist/esm/createNativeToast.js +0 -28
  339. package/dist/esm/createNativeToast.js.map +0 -6
  340. package/dist/esm/types.js +0 -1
  341. package/dist/esm/types.js.map +0 -6
  342. package/dist/esm/useAnimatedDragGesture.js +0 -73
  343. package/dist/esm/useAnimatedDragGesture.js.map +0 -6
  344. package/dist/esm/useDragGesture.js +0 -76
  345. package/dist/esm/useDragGesture.js.map +0 -6
  346. package/dist/esm/useDragGesture.mjs +0 -95
  347. package/dist/esm/useDragGesture.mjs.map +0 -1
  348. package/dist/esm/useDragGesture.native.js +0 -109
  349. package/dist/esm/useDragGesture.native.js.map +0 -1
  350. package/dist/esm/useReducedMotion.js +0 -30
  351. package/dist/esm/useReducedMotion.js.map +0 -6
  352. package/dist/esm/useToastAnimations.js +0 -122
  353. package/dist/esm/useToastAnimations.js.map +0 -6
  354. package/dist/esm/v1.js +0 -17
  355. package/dist/esm/v1.js.map +0 -6
  356. package/dist/esm/v1.mjs +0 -3
  357. package/dist/esm/v1.mjs.map +0 -1
  358. package/dist/esm/v1.native.js +0 -3
  359. package/dist/esm/v1.native.js.map +0 -1
  360. package/dist/jsx/Toast.js +0 -107
  361. package/dist/jsx/Toast.js.map +0 -6
  362. package/dist/jsx/ToastAnnounce.js +0 -55
  363. package/dist/jsx/ToastAnnounce.js.map +0 -6
  364. package/dist/jsx/ToastComposable.js +0 -543
  365. package/dist/jsx/ToastComposable.js.map +0 -6
  366. package/dist/jsx/ToastImperative.js +0 -50
  367. package/dist/jsx/ToastImperative.js.map +0 -6
  368. package/dist/jsx/ToastImpl.js +0 -225
  369. package/dist/jsx/ToastImpl.js.map +0 -6
  370. package/dist/jsx/ToastItem.js +0 -393
  371. package/dist/jsx/ToastItem.js.map +0 -6
  372. package/dist/jsx/ToastItem.mjs +0 -492
  373. package/dist/jsx/ToastItem.mjs.map +0 -1
  374. package/dist/jsx/ToastItem.native.js +0 -614
  375. package/dist/jsx/ToastItem.native.js.map +0 -1
  376. package/dist/jsx/ToastPortal.js +0 -13
  377. package/dist/jsx/ToastPortal.js.map +0 -6
  378. package/dist/jsx/ToastProvider.js +0 -87
  379. package/dist/jsx/ToastProvider.js.map +0 -6
  380. package/dist/jsx/ToastState.js +0 -144
  381. package/dist/jsx/ToastState.js.map +0 -6
  382. package/dist/jsx/ToastViewport.js +0 -250
  383. package/dist/jsx/ToastViewport.js.map +0 -6
  384. package/dist/jsx/Toaster.js +0 -188
  385. package/dist/jsx/Toaster.js.map +0 -6
  386. package/dist/jsx/constants.js +0 -6
  387. package/dist/jsx/constants.js.map +0 -6
  388. package/dist/jsx/createNativeToast.js +0 -28
  389. package/dist/jsx/createNativeToast.js.map +0 -6
  390. package/dist/jsx/types.js +0 -1
  391. package/dist/jsx/types.js.map +0 -6
  392. package/dist/jsx/useAnimatedDragGesture.js +0 -73
  393. package/dist/jsx/useAnimatedDragGesture.js.map +0 -6
  394. package/dist/jsx/useDragGesture.js +0 -76
  395. package/dist/jsx/useDragGesture.js.map +0 -6
  396. package/dist/jsx/useDragGesture.mjs +0 -95
  397. package/dist/jsx/useDragGesture.mjs.map +0 -1
  398. package/dist/jsx/useDragGesture.native.js +0 -146
  399. package/dist/jsx/useDragGesture.native.js.map +0 -1
  400. package/dist/jsx/useReducedMotion.js +0 -30
  401. package/dist/jsx/useReducedMotion.js.map +0 -6
  402. package/dist/jsx/useToastAnimations.js +0 -122
  403. package/dist/jsx/useToastAnimations.js.map +0 -6
  404. package/dist/jsx/v1.js +0 -17
  405. package/dist/jsx/v1.js.map +0 -6
  406. package/dist/jsx/v1.mjs +0 -3
  407. package/dist/jsx/v1.mjs.map +0 -1
  408. package/dist/jsx/v1.native.js +0 -34
  409. package/dist/jsx/v1.native.js.map +0 -1
  410. package/types/ToastItem.d.ts.map +0 -1
  411. package/types/useDragGesture.d.ts.map +0 -1
  412. package/types/useDragGesture.native.d.ts.map +0 -1
  413. package/types/v1.d.ts.map +0 -1
@@ -1,543 +0,0 @@
1
- import { AnimatePresence } from "@tamagui/animate-presence";
2
- import { isWeb } from "@tamagui/constants";
3
- import {
4
- createStyledContext,
5
- styled,
6
- Theme,
7
- useEvent,
8
- useThemeName,
9
- View
10
- } from "@tamagui/core";
11
- import { withStaticProperties } from "@tamagui/helpers";
12
- import { Portal } from "@tamagui/portal";
13
- import { XStack, YStack } from "@tamagui/stacks";
14
- import { SizableText } from "@tamagui/text";
15
- import * as React from "react";
16
- import { ToastState } from "./ToastState";
17
- import { useAnimatedDragGesture } from "./useAnimatedDragGesture";
18
- import { useToastAnimations } from "./useToastAnimations";
19
- import { useReducedMotion } from "./useReducedMotion";
20
- import { jsx, jsxs } from "react/jsx-runtime";
21
- const VISIBLE_TOASTS_AMOUNT = 4, VIEWPORT_OFFSET = 24, TOAST_GAP = 14, TOAST_LIFETIME = 4e3, TIME_BEFORE_UNMOUNT = 200, ToastContext = createStyledContext(
22
- {},
23
- "Toast__"
24
- ), useToastContext = ToastContext.useStyledContext, ToastItemContext = React.createContext(null);
25
- function useToastItemContext() {
26
- const ctx = React.useContext(ToastItemContext);
27
- if (!ctx)
28
- throw new Error("useToastItemContext must be used within Toast.Item or Toast.List");
29
- return ctx;
30
- }
31
- const DefaultSuccessIcon = () => /* @__PURE__ */ jsx(SizableText, { size: "$5", color: "$green10", children: "\u2713" }), DefaultErrorIcon = () => /* @__PURE__ */ jsx(SizableText, { size: "$5", color: "$red10", children: "\u2715" }), DefaultWarningIcon = () => /* @__PURE__ */ jsx(SizableText, { size: "$5", color: "$yellow10", children: "\u26A0" }), DefaultInfoIcon = () => /* @__PURE__ */ jsx(SizableText, { size: "$5", color: "$blue10", children: "\u2139" }), DefaultLoadingIcon = () => /* @__PURE__ */ jsx(SizableText, { size: "$5", color: "$color11", children: "\u27F3" }), DefaultCloseIcon = () => /* @__PURE__ */ jsx(SizableText, { size: "$1", color: "$color11", children: "\u2715" });
32
- function resolveSwipeDirection(direction, position) {
33
- if (direction !== "auto") return direction;
34
- const [yPosition, xPosition] = position.split("-");
35
- return xPosition === "left" ? "left" : xPosition === "right" ? "right" : yPosition === "top" ? "up" : "down";
36
- }
37
- const ToastRoot = React.forwardRef(
38
- function(props, ref) {
39
- const {
40
- children,
41
- position = "bottom-right",
42
- duration = TOAST_LIFETIME,
43
- gap = TOAST_GAP,
44
- visibleToasts = VISIBLE_TOASTS_AMOUNT,
45
- swipeDirection: swipeDirectionProp = "auto",
46
- swipeThreshold = 50,
47
- closeButton = !1,
48
- theme: themeProp,
49
- reducedMotion: reducedMotionProp,
50
- icons
51
- } = props, reducedMotion = useReducedMotion(reducedMotionProp), [toasts, setToasts] = React.useState([]), [heights, setHeights] = React.useState([]), [expanded, setExpanded] = React.useState(!1), [interacting, setInteracting] = React.useState(!1);
52
- React.useEffect(() => ToastState.subscribe((toast) => {
53
- if (toast.dismiss) {
54
- setToasts(
55
- (toasts2) => toasts2.map((t) => t.id === toast.id ? { ...t, delete: !0 } : t)
56
- );
57
- return;
58
- }
59
- setToasts((toasts2) => {
60
- const idx = toasts2.findIndex((t) => t.id === toast.id);
61
- return idx !== -1 ? [
62
- ...toasts2.slice(0, idx),
63
- { ...toasts2[idx], ...toast },
64
- ...toasts2.slice(idx + 1)
65
- ] : [toast, ...toasts2];
66
- });
67
- }), []), React.useEffect(() => {
68
- toasts.length <= 1 && setExpanded(!1);
69
- }, [toasts.length]);
70
- const removeToast = React.useCallback((toastToRemove) => {
71
- setToasts((toasts2) => (toasts2.find((t) => t.id === toastToRemove.id)?.delete || ToastState.dismiss(toastToRemove.id), toasts2.filter(({ id }) => id !== toastToRemove.id)));
72
- }, []), swipeDirection = resolveSwipeDirection(swipeDirectionProp, position), currentTheme = useThemeName(), resolvedTheme = themeProp === "system" || !themeProp ? currentTheme?.includes("dark") ? "dark" : "light" : themeProp, contextValue = {
73
- toasts,
74
- heights,
75
- setHeights,
76
- expanded,
77
- setExpanded,
78
- interacting,
79
- setInteracting,
80
- removeToast,
81
- position,
82
- duration,
83
- gap,
84
- visibleToasts,
85
- swipeDirection,
86
- swipeThreshold,
87
- closeButton,
88
- reducedMotion,
89
- icons
90
- };
91
- return /* @__PURE__ */ jsx(ToastContext.Provider, { ...contextValue, children: /* @__PURE__ */ jsx(Theme, { name: resolvedTheme, children }) });
92
- }
93
- ), ToastViewportFrame = styled(View, {
94
- name: "ToastViewport",
95
- variants: {
96
- unstyled: {
97
- false: {
98
- position: isWeb ? "fixed" : "absolute",
99
- zIndex: 1e5,
100
- pointerEvents: "box-none",
101
- maxWidth: "100%",
102
- width: 356,
103
- minHeight: 1
104
- }
105
- }
106
- },
107
- defaultVariants: {
108
- unstyled: process.env.TAMAGUI_HEADLESS === "1"
109
- }
110
- }), ToastViewport = ToastViewportFrame.styleable(
111
- function(props, ref) {
112
- const {
113
- offset = VIEWPORT_OFFSET,
114
- hotkey = ["altKey", "KeyT"],
115
- label = "Notifications",
116
- portalToRoot = !0,
117
- children,
118
- ...rest
119
- } = props, ctx = useToastContext(), listRef = React.useRef(null), hoverTimeoutRef = React.useRef(null), hoverCooldownRef = React.useRef(!1), [yPosition, xPosition] = ctx.position.split("-"), offsetStyles = React.useMemo(() => {
120
- const styles = {}, defaultOffset = typeof offset == "number" ? offset : VIEWPORT_OFFSET, offsetObj = typeof offset == "object" ? offset : {
121
- top: defaultOffset,
122
- right: defaultOffset,
123
- bottom: defaultOffset,
124
- left: defaultOffset
125
- };
126
- return yPosition === "top" ? styles.top = offsetObj.top ?? defaultOffset : styles.bottom = offsetObj.bottom ?? defaultOffset, xPosition === "left" ? styles.left = offsetObj.left ?? defaultOffset : xPosition === "right" ? styles.right = offsetObj.right ?? defaultOffset : (styles.left = "50%", styles.transform = "translateX(-50%)"), styles;
127
- }, [offset, yPosition, xPosition]);
128
- if (React.useEffect(() => {
129
- if (!isWeb) return;
130
- const handleKeyDown = (event) => {
131
- hotkey.length > 0 && hotkey.every((key) => event[key] || event.code === key) && (ctx.setExpanded(!0), listRef.current?.focus()), event.code === "Escape" && ctx.setExpanded(!1);
132
- };
133
- return document.addEventListener("keydown", handleKeyDown), () => document.removeEventListener("keydown", handleKeyDown);
134
- }, [hotkey]), ctx.toasts.length === 0) return null;
135
- const hotkeyLabel = hotkey.join("+").replace(/Key/g, "").replace(/Digit/g, ""), content = /* @__PURE__ */ jsx(
136
- ToastViewportFrame,
137
- {
138
- ref: listRef,
139
- "aria-label": `${label} ${hotkeyLabel}`,
140
- tabIndex: -1,
141
- "aria-live": "polite",
142
- style: offsetStyles,
143
- "data-y-position": yPosition,
144
- "data-x-position": xPosition,
145
- onMouseEnter: () => {
146
- ctx.toasts.length > 1 && !ctx.interacting && !hoverCooldownRef.current && (hoverTimeoutRef.current = setTimeout(() => ctx.setExpanded(!0), 50));
147
- },
148
- onMouseLeave: () => {
149
- hoverTimeoutRef.current && (clearTimeout(hoverTimeoutRef.current), hoverTimeoutRef.current = null), ctx.interacting || ctx.setExpanded(!1);
150
- },
151
- onPointerDown: () => {
152
- hoverTimeoutRef.current && (clearTimeout(hoverTimeoutRef.current), hoverTimeoutRef.current = null), ctx.setInteracting(!0);
153
- },
154
- onPointerUp: () => ctx.setInteracting(!1),
155
- ...rest,
156
- children
157
- }
158
- );
159
- return portalToRoot && isWeb ? /* @__PURE__ */ jsx(Portal, { children: content }) : content;
160
- }
161
- );
162
- function ToastList({ renderItem }) {
163
- const ctx = useToastContext(), getHeightBeforeMe = (index) => {
164
- const heightIndex = ctx.heights.findIndex((h) => h.toastId === ctx.toasts[index]?.id);
165
- return heightIndex === -1 ? 0 : ctx.heights.reduce((prev, curr, i) => i >= heightIndex ? prev : prev + curr.height, 0);
166
- };
167
- return /* @__PURE__ */ jsx(AnimatePresence, { children: ctx.toasts.map((toast, index) => {
168
- const handleClose = () => {
169
- toast.dismissible !== !1 && (toast.onDismiss?.(toast), ctx.removeToast(toast));
170
- }, itemContextValue = {
171
- toast,
172
- handleClose
173
- };
174
- return renderItem ? /* @__PURE__ */ jsx(ToastItemContext.Provider, { value: itemContextValue, children: renderItem({ toast, index, handleClose }) }, toast.id) : /* @__PURE__ */ jsx(ToastItemContext.Provider, { value: itemContextValue, children: /* @__PURE__ */ jsx(ToastItemInner, { toast, index, children: /* @__PURE__ */ jsx(DefaultToastContent, { toast }) }) }, toast.id);
175
- }) });
176
- }
177
- function DefaultToastContent({ toast }) {
178
- const ctx = useToastContext(), { handleClose } = useToastItemContext(), toastType = toast.type ?? "default", title = typeof toast.title == "function" ? toast.title() : toast.title, description = typeof toast.description == "function" ? toast.description() : toast.description;
179
- return /* @__PURE__ */ jsxs(XStack, { alignItems: "flex-start", gap: "$3", children: [
180
- toastType !== "default" && /* @__PURE__ */ jsx(ToastIcon, {}),
181
- /* @__PURE__ */ jsxs(YStack, { flex: 1, gap: "$1", children: [
182
- title && /* @__PURE__ */ jsx(ToastTitle, { children: title }),
183
- description && /* @__PURE__ */ jsx(ToastDescription, { children: description }),
184
- (toast.action || toast.cancel) && /* @__PURE__ */ jsxs(XStack, { gap: "$2", marginTop: "$2", children: [
185
- toast.cancel && /* @__PURE__ */ jsx(
186
- ToastActionFrame,
187
- {
188
- backgroundColor: "transparent",
189
- onPress: (e) => {
190
- toast.cancel?.onClick?.(e), handleClose();
191
- },
192
- children: /* @__PURE__ */ jsx(SizableText, { size: "$2", color: "$color11", children: toast.cancel.label })
193
- }
194
- ),
195
- toast.action && /* @__PURE__ */ jsx(
196
- ToastActionFrame,
197
- {
198
- backgroundColor: "$color12",
199
- hoverStyle: { backgroundColor: "$color11" },
200
- pressStyle: { backgroundColor: "$color10" },
201
- onPress: (e) => {
202
- toast.action?.onClick?.(e), e.defaultPrevented || handleClose();
203
- },
204
- children: /* @__PURE__ */ jsx(SizableText, { size: "$2", fontWeight: "600", color: "$background", children: toast.action.label })
205
- }
206
- )
207
- ] })
208
- ] }),
209
- ctx.closeButton && /* @__PURE__ */ jsx(ToastClose, {})
210
- ] });
211
- }
212
- const ToastPositionWrapper = styled(YStack, {
213
- name: "ToastPositionWrapper",
214
- pointerEvents: "auto",
215
- position: "absolute",
216
- left: 0,
217
- right: 0,
218
- opacity: 1,
219
- scale: 1,
220
- y: 0,
221
- x: 0
222
- }), ToastItemFrame = styled(YStack, {
223
- name: "ToastItem",
224
- userSelect: "none",
225
- cursor: "grab",
226
- focusable: !0,
227
- variants: {
228
- unstyled: {
229
- false: {
230
- backgroundColor: "$background",
231
- borderRadius: "$4",
232
- paddingHorizontal: "$4",
233
- paddingVertical: "$3",
234
- borderWidth: 1,
235
- borderColor: "$borderColor",
236
- shadowColor: "rgba(0, 0, 0, 0.15)",
237
- shadowOffset: { width: 0, height: 4 },
238
- shadowRadius: 12,
239
- focusVisibleStyle: {
240
- outlineWidth: 2,
241
- outlineColor: "$color8",
242
- outlineStyle: "solid"
243
- }
244
- }
245
- }
246
- },
247
- defaultVariants: {
248
- unstyled: process.env.TAMAGUI_HEADLESS === "1"
249
- }
250
- });
251
- function DragWrapper({
252
- animatedStyle,
253
- gestureHandlers,
254
- AnimatedView,
255
- dragRef,
256
- children
257
- }) {
258
- return isWeb ? /* @__PURE__ */ jsx(
259
- "div",
260
- {
261
- ref: dragRef,
262
- style: {
263
- flex: 1,
264
- display: "flex",
265
- flexDirection: "column",
266
- userSelect: "none",
267
- WebkitUserSelect: "none",
268
- touchAction: "none",
269
- cursor: "grab"
270
- },
271
- ...gestureHandlers,
272
- children
273
- }
274
- ) : /* @__PURE__ */ jsx(AnimatedView, { style: [{ flex: 1 }, animatedStyle], ...gestureHandlers, children });
275
- }
276
- const ToastItemInner = ToastItemFrame.styleable(
277
- function(props, ref) {
278
- const { toast, index, children, ...rest } = props, ctx = useToastContext(), [mounted, setMounted] = React.useState(!1), [removed, setRemoved] = React.useState(!1), [swipeOut, setSwipeOut] = React.useState(!1), closeTimerRef = React.useRef(null), closeTimerStartRef = React.useRef(0), lastPauseTimeRef = React.useRef(0), remainingTimeRef = React.useRef(toast.duration ?? ctx.duration), isFront = index === 0, isVisible = index < ctx.visibleToasts, toastType = toast.type ?? "default", dismissible = toast.dismissible !== !1, duration = toast.duration ?? ctx.duration, [yPosition] = ctx.position.split("-"), isTop = yPosition === "top", heightIndex = React.useMemo(
279
- () => ctx.heights.findIndex((h) => h.toastId === toast.id) || 0,
280
- [ctx.heights, toast.id]
281
- ), toastsHeightBefore = React.useMemo(() => ctx.heights.reduce((prev, curr, i) => i >= heightIndex ? prev : prev + curr.height, 0), [ctx.heights, heightIndex]), startTimer = React.useCallback(() => {
282
- duration === Number.POSITIVE_INFINITY || toastType === "loading" || (closeTimerStartRef.current = Date.now(), closeTimerRef.current = setTimeout(() => {
283
- toast.onAutoClose?.(toast), setRemoved(!0), setTimeout(() => ctx.removeToast(toast), TIME_BEFORE_UNMOUNT);
284
- }, remainingTimeRef.current));
285
- }, [duration, toastType, toast, ctx.removeToast]), pauseTimer = useEvent(() => {
286
- if (closeTimerRef.current && clearTimeout(closeTimerRef.current), lastPauseTimeRef.current < closeTimerStartRef.current) {
287
- const elapsed = Date.now() - closeTimerStartRef.current;
288
- remainingTimeRef.current = Math.max(0, remainingTimeRef.current - elapsed);
289
- }
290
- lastPauseTimeRef.current = Date.now();
291
- }), resumeTimer = useEvent(() => {
292
- startTimer();
293
- });
294
- React.useEffect(() => {
295
- setMounted(!0);
296
- }, []), React.useEffect(() => {
297
- toast.delete && (setRemoved(!0), setTimeout(() => {
298
- ctx.removeToast(toast);
299
- }, TIME_BEFORE_UNMOUNT));
300
- }, [toast.delete, toast, ctx.removeToast]), React.useEffect(() => (ctx.expanded || ctx.interacting ? pauseTimer() : startTimer(), () => {
301
- closeTimerRef.current && clearTimeout(closeTimerRef.current);
302
- }), [ctx.expanded, ctx.interacting, startTimer]), React.useEffect(() => {
303
- remainingTimeRef.current = duration;
304
- }, [duration]);
305
- const {
306
- setDragOffset,
307
- springBack,
308
- animateOut,
309
- animatedStyle,
310
- AnimatedView,
311
- dragRef
312
- } = useToastAnimations({ reducedMotion: ctx.reducedMotion }), { isDragging, gestureHandlers } = useAnimatedDragGesture({
313
- direction: ctx.swipeDirection,
314
- threshold: ctx.swipeThreshold,
315
- disabled: !dismissible || toastType === "loading",
316
- expanded: ctx.expanded,
317
- onDragStart: pauseTimer,
318
- onDragMove: setDragOffset,
319
- onDismiss: (exitDirection, velocity) => {
320
- setSwipeOut(!0), toast.onDismiss?.(toast), setRemoved(!0), ctx.setHeights((prev) => prev.filter((h) => h.toastId !== toast.id)), animateOut(exitDirection, velocity, () => ctx.removeToast(toast));
321
- },
322
- onCancel: () => {
323
- springBack(() => {
324
- resumeTimer();
325
- });
326
- }
327
- }), handleLayout = React.useCallback(
328
- (event) => {
329
- const { height } = event.nativeEvent.layout;
330
- ctx.setHeights((prev) => prev.find((h) => h.toastId === toast.id) ? prev.map((h) => h.toastId === toast.id ? { ...h, height } : h) : [{ toastId: toast.id, height }, ...prev]);
331
- },
332
- [toast.id]
333
- );
334
- React.useEffect(() => () => {
335
- ctx.setHeights((prev) => prev.filter((h) => h.toastId !== toast.id));
336
- }, [toast.id]);
337
- const handleClose = React.useCallback(() => {
338
- dismissible && (toast.onDismiss?.(toast), setRemoved(!0), setTimeout(() => ctx.removeToast(toast), TIME_BEFORE_UNMOUNT));
339
- }, [dismissible, toast, ctx.removeToast]), frontToastHeight = ctx.heights.length > 0 ? ctx.heights[0]?.height ?? 55 : 55, stackScale = !ctx.expanded && !isFront ? 1 - index * 0.05 : 1, expandedOffset = toastsHeightBefore + index * ctx.gap, peekVisible = 10, stackY = ctx.expanded ? isTop ? expandedOffset : -expandedOffset : isFront ? 0 : isTop ? peekVisible * index : -peekVisible * index, computedOpacity = index >= ctx.visibleToasts ? 0 : !ctx.expanded && index === ctx.visibleToasts - 1 ? 0.5 : 1, computedZIndex = removed ? 0 : ctx.visibleToasts - index + 1, computedHeight = !ctx.expanded && !isFront ? frontToastHeight : void 0, computedPointerEvents = index >= ctx.visibleToasts ? "none" : "auto", gapFillerHeight = ctx.expanded ? ctx.gap + 1 : 0, dataAttributes = {
340
- "data-mounted": mounted ? "true" : "false",
341
- "data-removed": removed ? "true" : "false",
342
- "data-swipe-out": swipeOut ? "true" : "false",
343
- "data-visible": isVisible ? "true" : "false",
344
- "data-front": isFront ? "true" : "false",
345
- "data-index": String(index),
346
- "data-type": toastType,
347
- "data-expanded": ctx.expanded ? "true" : "false"
348
- };
349
- return /* @__PURE__ */ jsx(
350
- ToastPositionWrapper,
351
- {
352
- ref,
353
- ...dataAttributes,
354
- onLayout: handleLayout,
355
- transition: isDragging || ctx.reducedMotion ? void 0 : "200ms",
356
- y: stackY,
357
- scale: stackScale,
358
- opacity: computedOpacity,
359
- zIndex: computedZIndex,
360
- height: computedHeight,
361
- overflow: computedHeight ? "hidden" : void 0,
362
- pointerEvents: computedPointerEvents,
363
- top: isTop ? 0 : void 0,
364
- bottom: isTop ? void 0 : 0,
365
- ...isWeb && !isFront && !ctx.expanded && {
366
- style: { transformOrigin: isTop ? "top center" : "bottom center" }
367
- },
368
- enterStyle: ctx.reducedMotion ? { opacity: 0 } : { opacity: 0, y: isTop ? -10 : 10, scale: 0.95 },
369
- exitStyle: ctx.reducedMotion ? { opacity: 0 } : {
370
- opacity: 0,
371
- x: 0,
372
- y: swipeOut ? 0 : isTop ? -10 : 10,
373
- scale: swipeOut ? 1 : 0.95
374
- },
375
- children: /* @__PURE__ */ jsx(
376
- DragWrapper,
377
- {
378
- animatedStyle,
379
- gestureHandlers,
380
- AnimatedView,
381
- dragRef,
382
- children: /* @__PURE__ */ jsxs(
383
- ToastItemFrame,
384
- {
385
- role: "status",
386
- "aria-live": "polite",
387
- "aria-atomic": !0,
388
- tabIndex: 0,
389
- ...isWeb && {
390
- onKeyDown: (event) => {
391
- event.key === "Escape" && dismissible && handleClose();
392
- }
393
- },
394
- ...rest,
395
- children: [
396
- ctx.expanded && gapFillerHeight > 0 && /* @__PURE__ */ jsx(
397
- View,
398
- {
399
- position: "absolute",
400
- left: 0,
401
- right: 0,
402
- height: gapFillerHeight,
403
- pointerEvents: "auto",
404
- ...isTop ? { top: "100%" } : { bottom: "100%" }
405
- }
406
- ),
407
- children
408
- ]
409
- }
410
- )
411
- }
412
- )
413
- }
414
- );
415
- }
416
- ), ToastTitle = styled(SizableText, {
417
- name: "ToastTitle",
418
- variants: {
419
- unstyled: {
420
- false: {
421
- color: "$color",
422
- fontWeight: "600",
423
- size: "$4"
424
- }
425
- }
426
- },
427
- defaultVariants: {
428
- unstyled: process.env.TAMAGUI_HEADLESS === "1"
429
- }
430
- }), ToastDescription = styled(SizableText, {
431
- name: "ToastDescription",
432
- variants: {
433
- unstyled: {
434
- false: {
435
- color: "$color11",
436
- size: "$2"
437
- }
438
- }
439
- },
440
- defaultVariants: {
441
- unstyled: process.env.TAMAGUI_HEADLESS === "1"
442
- }
443
- }), ToastCloseFrame = styled(XStack, {
444
- name: "ToastClose",
445
- render: "button",
446
- alignItems: "center",
447
- justifyContent: "center",
448
- cursor: "pointer",
449
- variants: {
450
- unstyled: {
451
- false: {
452
- width: 20,
453
- height: 20,
454
- borderRadius: "$10",
455
- backgroundColor: "$color5",
456
- hoverStyle: { backgroundColor: "$color6" },
457
- pressStyle: { backgroundColor: "$color7" }
458
- }
459
- }
460
- },
461
- defaultVariants: {
462
- unstyled: process.env.TAMAGUI_HEADLESS === "1"
463
- }
464
- }), ToastClose = ToastCloseFrame.styleable(function(props, ref) {
465
- let handleClose;
466
- try {
467
- handleClose = useToastItemContext().handleClose;
468
- } catch {
469
- }
470
- const ctx = useToastContext();
471
- return /* @__PURE__ */ jsx(ToastCloseFrame, { ref, "aria-label": "Close toast", onPress: handleClose, ...props, children: props.children ?? ctx.icons?.close ?? /* @__PURE__ */ jsx(DefaultCloseIcon, {}) });
472
- }), ToastActionFrame = styled(XStack, {
473
- name: "ToastAction",
474
- render: "button",
475
- alignItems: "center",
476
- justifyContent: "center",
477
- cursor: "pointer",
478
- variants: {
479
- unstyled: {
480
- false: {
481
- borderRadius: "$2",
482
- paddingHorizontal: "$2",
483
- height: 24,
484
- backgroundColor: "$color5",
485
- hoverStyle: { backgroundColor: "$color6" },
486
- pressStyle: { backgroundColor: "$color7" }
487
- }
488
- }
489
- },
490
- defaultVariants: {
491
- unstyled: process.env.TAMAGUI_HEADLESS === "1"
492
- }
493
- }), ToastAction = ToastActionFrame.styleable(function(props, ref) {
494
- return /* @__PURE__ */ jsx(ToastActionFrame, { ref, ...props });
495
- });
496
- function ToastIcon(props) {
497
- const ctx = useToastContext();
498
- let toast;
499
- try {
500
- toast = useToastItemContext().toast;
501
- } catch {
502
- return null;
503
- }
504
- if (!toast) return null;
505
- if (toast.icon !== void 0)
506
- return /* @__PURE__ */ jsx(View, { flexShrink: 0, marginTop: "$0.5", children: toast.icon });
507
- const toastType = toast.type ?? "default", icon = {
508
- default: null,
509
- success: ctx.icons?.success ?? /* @__PURE__ */ jsx(DefaultSuccessIcon, {}),
510
- error: ctx.icons?.error ?? /* @__PURE__ */ jsx(DefaultErrorIcon, {}),
511
- warning: ctx.icons?.warning ?? /* @__PURE__ */ jsx(DefaultWarningIcon, {}),
512
- info: ctx.icons?.info ?? /* @__PURE__ */ jsx(DefaultInfoIcon, {}),
513
- loading: ctx.icons?.loading ?? /* @__PURE__ */ jsx(DefaultLoadingIcon, {})
514
- }[toastType];
515
- return icon ? /* @__PURE__ */ jsx(View, { flexShrink: 0, marginTop: "$0.5", children: icon }) : null;
516
- }
517
- function useToasts() {
518
- const ctx = useToastContext();
519
- return {
520
- toasts: ctx.toasts,
521
- expanded: ctx.expanded,
522
- position: ctx.position
523
- };
524
- }
525
- function useToastItem() {
526
- return useToastItemContext();
527
- }
528
- const Toast = withStaticProperties(ToastRoot, {
529
- Viewport: ToastViewport,
530
- List: ToastList,
531
- Item: ToastItemInner,
532
- Title: ToastTitle,
533
- Description: ToastDescription,
534
- Close: ToastClose,
535
- Action: ToastAction,
536
- Icon: ToastIcon
537
- });
538
- export {
539
- Toast,
540
- useToastItem,
541
- useToasts
542
- };
543
- //# sourceMappingURL=ToastComposable.js.map
@@ -1,6 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["../../src/ToastComposable.tsx"],
4
- "mappings": "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",
5
- "names": ["toasts"]
6
- }
@@ -1,50 +0,0 @@
1
- import { isAndroid, isIos, isWeb } from "@tamagui/core";
2
- import React from "react";
3
- import { createNativeToast } from "./createNativeToast";
4
- import { jsx } from "react/jsx-runtime";
5
- const ToastContext = React.createContext({}), ToastCurrentContext = React.createContext(null), useToastController = () => React.useContext(ToastContext), useToastState = () => React.useContext(ToastCurrentContext), useToast = () => ({
6
- ...useToastController(),
7
- currentToast: useToastState()
8
- }), ToastImperativeProvider = ({
9
- children,
10
- options
11
- }) => {
12
- const counterRef = React.useRef(0), [toast, setToast] = React.useState(null), [lastNativeToastRef, setLastNativeToastRef] = React.useState(null), show = React.useCallback(
13
- (title, showOptions) => {
14
- const native = showOptions?.native ?? options.native, isWebNative = Array.isArray(native) ? native.includes("web") : native === "web", isMobileNative = Array.isArray(native) ? native.includes("mobile") : native === "mobile", isAndroidNative = isMobileNative || (Array.isArray(native) ? native.includes("android") : native === "android"), isIosNative = isMobileNative || (Array.isArray(native) ? native.includes("ios") : native === "ios"), isHandledNatively = native === !0 || isWeb && isWebNative || !isWeb && isMobileNative || isAndroid && isAndroidNative || isIos && isIosNative;
15
- if (isHandledNatively) {
16
- const nativeToastResult = createNativeToast(title, showOptions ?? {});
17
- typeof nativeToastResult == "object" && nativeToastResult.nativeToastRef && setLastNativeToastRef(nativeToastResult.nativeToastRef);
18
- }
19
- return counterRef.current++, setToast({
20
- ...showOptions?.customData,
21
- ...showOptions,
22
- viewportName: showOptions?.viewportName ?? "default",
23
- title,
24
- id: counterRef.current.toString(),
25
- isHandledNatively
26
- }), !0;
27
- },
28
- [setToast, JSON.stringify(options.native || null)]
29
- ), hide = React.useCallback(() => {
30
- lastNativeToastRef?.close(), setToast((prev) => prev ? {
31
- ...prev,
32
- hide: !0
33
- } : null), setTimeout(() => {
34
- setToast(null);
35
- }, 100);
36
- }, [setToast, lastNativeToastRef]), contextValue = React.useMemo(() => ({
37
- show,
38
- hide,
39
- nativeToast: lastNativeToastRef,
40
- options
41
- }), [show, hide, lastNativeToastRef, JSON.stringify(options || null)]);
42
- return /* @__PURE__ */ jsx(ToastContext.Provider, { value: contextValue, children: /* @__PURE__ */ jsx(ToastCurrentContext.Provider, { value: toast, children }) });
43
- };
44
- export {
45
- ToastImperativeProvider,
46
- useToast,
47
- useToastController,
48
- useToastState
49
- };
50
- //# sourceMappingURL=ToastImperative.js.map
@@ -1,6 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["../../src/ToastImperative.tsx"],
4
- "mappings": "AACA,SAAS,WAAW,OAAO,aAAa;AACxC,OAAO,WAAW;AAClB,SAAS,yBAAyB;AAqL5B;AA3GN,MAAM,eAAe,MAAM,cAA6B,CAAC,CAAQ,GAC3D,sBAAsB,MAAM,cAAgC,IAAI,GAEzD,qBAAqB,MACzB,MAAM,WAAW,YAAY,GAGzB,gBAAgB,MACpB,MAAM,WAAW,mBAAmB,GAIhC,WAAW,OACf;AAAA,EACL,GAAG,mBAAmB;AAAA,EACtB,cAAc,cAAc;AAC9B,IAWW,0BAA0B,CAAC;AAAA,EACtC;AAAA,EACA;AACF,MAAoC;AAClC,QAAM,aAAa,MAAM,OAAO,CAAC,GAE3B,CAAC,OAAO,QAAQ,IAAI,MAAM,SAA2B,IAAI,GAEzD,CAAC,oBAAoB,qBAAqB,IAC9C,MAAM,SAAuC,IAAI,GAE7C,OAAO,MAAM;AAAA,IACjB,CAAC,OAAO,gBAAgB;AACtB,YAAM,SAAS,aAAa,UAAU,QAAQ,QACxC,cAAc,MAAM,QAAQ,MAAM,IACpC,OAAO,SAAS,KAAK,IACrB,WAAW,OACT,iBAAiB,MAAM,QAAQ,MAAM,IACvC,OAAO,SAAS,QAAQ,IACxB,WAAW,UACT,kBACJ,mBACC,MAAM,QAAQ,MAAM,IAAI,OAAO,SAAS,SAAS,IAAI,WAAW,YAC7D,cACJ,mBACC,MAAM,QAAQ,MAAM,IAAI,OAAO,SAAS,KAAK,IAAI,WAAW,QAEzD,oBACJ,WAAW,MACV,SAAS,eACT,CAAC,SAAS,kBACV,aAAa,mBACb,SAAS;AAEZ,UAAI,mBAAmB;AACrB,cAAM,oBAAoB,kBAAkB,OAAO,eAAe,CAAC,CAAC;AACpE,QAAI,OAAO,qBAAsB,YAAY,kBAAkB,kBAC7D,sBAAsB,kBAAkB,cAAc;AAAA,MAE1D;AACA,wBAAW,WACX,SAAS;AAAA,QACP,GAAG,aAAa;AAAA,QAChB,GAAG;AAAA,QACH,cAAc,aAAa,gBAAgB;AAAA,QAC3C;AAAA,QACA,IAAI,WAAW,QAAQ,SAAS;AAAA,QAChC;AAAA,MACF,CAAC,GACM;AAAA,IACT;AAAA,IACA,CAAC,UAAU,KAAK,UAAU,QAAQ,UAAU,IAAI,CAAC;AAAA,EACnD,GAEM,OAAO,MAAM,YAAY,MAAM;AACnC,wBAAoB,MAAM,GAC1B,SAAS,CAAC,SACH,OACE;AAAA,MACL,GAAG;AAAA,MACH,MAAM;AAAA,IACR,IAJkB,IAKnB,GAED,WAAW,MAAM;AACf,eAAS,IAAI;AAAA,IACf,GAAG,GAAG;AAAA,EACR,GAAG,CAAC,UAAU,kBAAkB,CAAC,GAE3B,eAAe,MAAM,QAAQ,OAC1B;AAAA,IACL;AAAA,IACA;AAAA,IACA,aAAa;AAAA,IACb;AAAA,EACF,IACC,CAAC,MAAM,MAAM,oBAAoB,KAAK,UAAU,WAAW,IAAI,CAAC,CAAC;AAEpE,SACE,oBAAC,aAAa,UAAb,EAAsB,OAAO,cAC5B,8BAAC,oBAAoB,UAApB,EAA6B,OAAO,OAClC,UACH,GACF;AAEJ;",
5
- "names": []
6
- }