@oxyhq/bloom 0.50.2 → 0.51.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 (536) hide show
  1. package/NOTICE +89 -0
  2. package/README.md +12 -7
  3. package/lib/commonjs/avatar-group/AvatarGroup.web.js +2 -1
  4. package/lib/commonjs/avatar-group/AvatarGroup.web.js.map +1 -1
  5. package/lib/commonjs/bottom-sheet/index.web.js +2 -1
  6. package/lib/commonjs/bottom-sheet/index.web.js.map +1 -1
  7. package/lib/commonjs/context-menu/index.web.js +3 -2
  8. package/lib/commonjs/context-menu/index.web.js.map +1 -1
  9. package/lib/commonjs/dialog/Dialog.web.js +4 -3
  10. package/lib/commonjs/dialog/Dialog.web.js.map +1 -1
  11. package/lib/commonjs/index.js +90 -83
  12. package/lib/commonjs/index.js.map +1 -1
  13. package/lib/commonjs/index.web.js +116 -109
  14. package/lib/commonjs/index.web.js.map +1 -1
  15. package/lib/commonjs/menu/index.web.js +2 -1
  16. package/lib/commonjs/menu/index.web.js.map +1 -1
  17. package/lib/commonjs/popover/index.web.js +3 -2
  18. package/lib/commonjs/popover/index.web.js.map +1 -1
  19. package/lib/commonjs/portal/index.js +4 -1
  20. package/lib/commonjs/portal/index.js.map +1 -1
  21. package/lib/commonjs/progressive-blur/index.js +79 -0
  22. package/lib/commonjs/progressive-blur/index.js.map +1 -0
  23. package/lib/commonjs/progressive-blur/index.web.js +67 -0
  24. package/lib/commonjs/progressive-blur/index.web.js.map +1 -0
  25. package/lib/commonjs/progressive-blur/shared.js +66 -0
  26. package/lib/commonjs/progressive-blur/shared.js.map +1 -0
  27. package/lib/commonjs/progressive-blur/types.js +6 -0
  28. package/lib/commonjs/progressive-blur/types.js.map +1 -0
  29. package/lib/commonjs/select/index.web.js +2 -1
  30. package/lib/commonjs/select/index.web.js.map +1 -1
  31. package/lib/commonjs/styles/web-view-style.js +26 -0
  32. package/lib/commonjs/styles/web-view-style.js.map +1 -0
  33. package/lib/commonjs/tab-bar/TabBarBase.js +415 -0
  34. package/lib/commonjs/tab-bar/TabBarBase.js.map +1 -0
  35. package/lib/commonjs/tab-bar/expo-router/RouterTabBar.js +83 -0
  36. package/lib/commonjs/tab-bar/expo-router/RouterTabBar.js.map +1 -0
  37. package/lib/commonjs/tab-bar/expo-router/fading-tab-screen.js +119 -0
  38. package/lib/commonjs/tab-bar/expo-router/fading-tab-screen.js.map +1 -0
  39. package/lib/commonjs/tab-bar/expo-router/index.js +26 -0
  40. package/lib/commonjs/tab-bar/expo-router/index.js.map +1 -0
  41. package/lib/commonjs/tab-bar/glyph.js +43 -0
  42. package/lib/commonjs/tab-bar/glyph.js.map +1 -0
  43. package/lib/commonjs/tab-bar/glyph.native.js +55 -0
  44. package/lib/commonjs/tab-bar/glyph.native.js.map +1 -0
  45. package/lib/commonjs/tab-bar/index.js +65 -0
  46. package/lib/commonjs/tab-bar/index.js.map +1 -0
  47. package/lib/commonjs/tab-bar/index.web.js +67 -0
  48. package/lib/commonjs/tab-bar/index.web.js.map +1 -0
  49. package/lib/commonjs/tab-bar/minimize-context.js +127 -0
  50. package/lib/commonjs/tab-bar/minimize-context.js.map +1 -0
  51. package/lib/commonjs/tab-bar/shared.js +139 -0
  52. package/lib/commonjs/tab-bar/shared.js.map +1 -0
  53. package/lib/commonjs/tab-bar/surface.js +50 -0
  54. package/lib/commonjs/tab-bar/surface.js.map +1 -0
  55. package/lib/commonjs/tab-bar/surface.native.js +56 -0
  56. package/lib/commonjs/tab-bar/surface.native.js.map +1 -0
  57. package/lib/commonjs/tab-bar/surface.web.js +59 -0
  58. package/lib/commonjs/tab-bar/surface.web.js.map +1 -0
  59. package/lib/commonjs/tab-bar/types.js +6 -0
  60. package/lib/commonjs/tab-bar/types.js.map +1 -0
  61. package/lib/commonjs/toast/Positioner.js +117 -0
  62. package/lib/commonjs/toast/Positioner.js.map +1 -0
  63. package/lib/commonjs/toast/ToastContent.js +301 -0
  64. package/lib/commonjs/toast/ToastContent.js.map +1 -0
  65. package/lib/commonjs/toast/ToastHost.js +69 -0
  66. package/lib/commonjs/toast/ToastHost.js.map +1 -0
  67. package/lib/commonjs/toast/ToastHost.native.js +44 -0
  68. package/lib/commonjs/toast/ToastHost.native.js.map +1 -0
  69. package/lib/commonjs/toast/ToastIcon.js +57 -0
  70. package/lib/commonjs/toast/ToastIcon.js.map +1 -0
  71. package/lib/commonjs/toast/ToastRow.js +411 -0
  72. package/lib/commonjs/toast/ToastRow.js.map +1 -0
  73. package/lib/commonjs/toast/ToastSwipeHandler.js +189 -0
  74. package/lib/commonjs/toast/ToastSwipeHandler.js.map +1 -0
  75. package/lib/commonjs/toast/Toaster.js +205 -0
  76. package/lib/commonjs/toast/Toaster.js.map +1 -0
  77. package/lib/commonjs/toast/animations.js +274 -0
  78. package/lib/commonjs/toast/animations.js.map +1 -0
  79. package/lib/commonjs/toast/constants.js +56 -0
  80. package/lib/commonjs/toast/constants.js.map +1 -0
  81. package/lib/commonjs/toast/context.js +42 -0
  82. package/lib/commonjs/toast/context.js.map +1 -0
  83. package/lib/commonjs/toast/index.js +32 -126
  84. package/lib/commonjs/toast/index.js.map +1 -1
  85. package/lib/commonjs/toast/position-utils.js +115 -0
  86. package/lib/commonjs/toast/position-utils.js.map +1 -0
  87. package/lib/commonjs/toast/positioner-utils.js +141 -0
  88. package/lib/commonjs/toast/positioner-utils.js.map +1 -0
  89. package/lib/commonjs/toast/toast-comparator.js +28 -0
  90. package/lib/commonjs/toast/toast-comparator.js.map +1 -0
  91. package/lib/commonjs/toast/toast-fns.js +90 -0
  92. package/lib/commonjs/toast/toast-fns.js.map +1 -0
  93. package/lib/commonjs/toast/toast-store.js +352 -0
  94. package/lib/commonjs/toast/toast-store.js.map +1 -0
  95. package/lib/commonjs/toast/toast-timers.js +110 -0
  96. package/lib/commonjs/toast/toast-timers.js.map +1 -0
  97. package/lib/commonjs/toast/types.js +42 -0
  98. package/lib/commonjs/toast/types.js.map +1 -1
  99. package/lib/commonjs/toast/use-animated-target.js +57 -0
  100. package/lib/commonjs/toast/use-animated-target.js.map +1 -0
  101. package/lib/commonjs/toast/use-app-state.js +76 -0
  102. package/lib/commonjs/toast/use-app-state.js.map +1 -0
  103. package/lib/commonjs/toast/use-toast-colors.js +114 -0
  104. package/lib/commonjs/toast/use-toast-colors.js.map +1 -0
  105. package/lib/commonjs/toast/use-toast-position.js +40 -0
  106. package/lib/commonjs/toast/use-toast-position.js.map +1 -0
  107. package/lib/commonjs/tooltip/index.web.js +2 -1
  108. package/lib/commonjs/tooltip/index.web.js.map +1 -1
  109. package/lib/commonjs/zoomable-image-gallery/ZoomableImageGallery.js +20 -8
  110. package/lib/commonjs/zoomable-image-gallery/ZoomableImageGallery.js.map +1 -1
  111. package/lib/module/avatar-group/AvatarGroup.web.js +2 -1
  112. package/lib/module/avatar-group/AvatarGroup.web.js.map +1 -1
  113. package/lib/module/bottom-sheet/index.web.js +2 -1
  114. package/lib/module/bottom-sheet/index.web.js.map +1 -1
  115. package/lib/module/context-menu/index.web.js +3 -2
  116. package/lib/module/context-menu/index.web.js.map +1 -1
  117. package/lib/module/dialog/Dialog.web.js +4 -3
  118. package/lib/module/dialog/Dialog.web.js.map +1 -1
  119. package/lib/module/index.js +3 -2
  120. package/lib/module/index.js.map +1 -1
  121. package/lib/module/index.web.js +3 -2
  122. package/lib/module/index.web.js.map +1 -1
  123. package/lib/module/menu/index.web.js +2 -1
  124. package/lib/module/menu/index.web.js.map +1 -1
  125. package/lib/module/popover/index.web.js +3 -2
  126. package/lib/module/popover/index.web.js.map +1 -1
  127. package/lib/module/portal/index.js +4 -1
  128. package/lib/module/portal/index.js.map +1 -1
  129. package/lib/module/progressive-blur/index.js +74 -0
  130. package/lib/module/progressive-blur/index.js.map +1 -0
  131. package/lib/module/progressive-blur/index.web.js +62 -0
  132. package/lib/module/progressive-blur/index.web.js.map +1 -0
  133. package/lib/module/progressive-blur/shared.js +60 -0
  134. package/lib/module/progressive-blur/shared.js.map +1 -0
  135. package/lib/module/progressive-blur/types.js +4 -0
  136. package/lib/module/progressive-blur/types.js.map +1 -0
  137. package/lib/module/select/index.web.js +2 -1
  138. package/lib/module/select/index.web.js.map +1 -1
  139. package/lib/module/styles/web-view-style.js +22 -0
  140. package/lib/module/styles/web-view-style.js.map +1 -0
  141. package/lib/module/tab-bar/TabBarBase.js +408 -0
  142. package/lib/module/tab-bar/TabBarBase.js.map +1 -0
  143. package/lib/module/tab-bar/expo-router/RouterTabBar.js +78 -0
  144. package/lib/module/tab-bar/expo-router/RouterTabBar.js.map +1 -0
  145. package/lib/module/tab-bar/expo-router/fading-tab-screen.js +113 -0
  146. package/lib/module/tab-bar/expo-router/fading-tab-screen.js.map +1 -0
  147. package/lib/module/tab-bar/expo-router/index.js +15 -0
  148. package/lib/module/tab-bar/expo-router/index.js.map +1 -0
  149. package/lib/module/tab-bar/glyph.js +38 -0
  150. package/lib/module/tab-bar/glyph.js.map +1 -0
  151. package/lib/module/tab-bar/glyph.native.js +50 -0
  152. package/lib/module/tab-bar/glyph.native.js.map +1 -0
  153. package/lib/module/tab-bar/index.js +24 -0
  154. package/lib/module/tab-bar/index.js.map +1 -0
  155. package/lib/module/tab-bar/index.web.js +26 -0
  156. package/lib/module/tab-bar/index.web.js.map +1 -0
  157. package/lib/module/tab-bar/minimize-context.js +118 -0
  158. package/lib/module/tab-bar/minimize-context.js.map +1 -0
  159. package/lib/module/tab-bar/shared.js +132 -0
  160. package/lib/module/tab-bar/shared.js.map +1 -0
  161. package/lib/module/tab-bar/surface.js +44 -0
  162. package/lib/module/tab-bar/surface.js.map +1 -0
  163. package/lib/module/tab-bar/surface.native.js +50 -0
  164. package/lib/module/tab-bar/surface.native.js.map +1 -0
  165. package/lib/module/tab-bar/surface.web.js +53 -0
  166. package/lib/module/tab-bar/surface.web.js.map +1 -0
  167. package/lib/module/tab-bar/types.js +4 -0
  168. package/lib/module/tab-bar/types.js.map +1 -0
  169. package/lib/module/toast/Positioner.js +110 -0
  170. package/lib/module/toast/Positioner.js.map +1 -0
  171. package/lib/module/toast/ToastContent.js +295 -0
  172. package/lib/module/toast/ToastContent.js.map +1 -0
  173. package/lib/module/toast/ToastHost.js +63 -0
  174. package/lib/module/toast/ToastHost.js.map +1 -0
  175. package/lib/module/toast/ToastHost.native.js +38 -0
  176. package/lib/module/toast/ToastHost.native.js.map +1 -0
  177. package/lib/module/toast/ToastIcon.js +52 -0
  178. package/lib/module/toast/ToastIcon.js.map +1 -0
  179. package/lib/module/toast/ToastRow.js +407 -0
  180. package/lib/module/toast/ToastRow.js.map +1 -0
  181. package/lib/module/toast/ToastSwipeHandler.js +182 -0
  182. package/lib/module/toast/ToastSwipeHandler.js.map +1 -0
  183. package/lib/module/toast/Toaster.js +198 -0
  184. package/lib/module/toast/Toaster.js.map +1 -0
  185. package/lib/module/toast/animations.js +261 -0
  186. package/lib/module/toast/animations.js.map +1 -0
  187. package/lib/module/toast/constants.js +52 -0
  188. package/lib/module/toast/constants.js.map +1 -0
  189. package/lib/module/toast/context.js +34 -0
  190. package/lib/module/toast/context.js.map +1 -0
  191. package/lib/module/toast/index.js +27 -103
  192. package/lib/module/toast/index.js.map +1 -1
  193. package/lib/module/toast/position-utils.js +107 -0
  194. package/lib/module/toast/position-utils.js.map +1 -0
  195. package/lib/module/toast/positioner-utils.js +134 -0
  196. package/lib/module/toast/positioner-utils.js.map +1 -0
  197. package/lib/module/toast/toast-comparator.js +22 -0
  198. package/lib/module/toast/toast-comparator.js.map +1 -0
  199. package/lib/module/toast/toast-fns.js +85 -0
  200. package/lib/module/toast/toast-fns.js.map +1 -0
  201. package/lib/module/toast/toast-store.js +346 -0
  202. package/lib/module/toast/toast-store.js.map +1 -0
  203. package/lib/module/toast/toast-timers.js +104 -0
  204. package/lib/module/toast/toast-timers.js.map +1 -0
  205. package/lib/module/toast/types.js +38 -0
  206. package/lib/module/toast/types.js.map +1 -1
  207. package/lib/module/toast/use-animated-target.js +52 -0
  208. package/lib/module/toast/use-animated-target.js.map +1 -0
  209. package/lib/module/toast/use-app-state.js +70 -0
  210. package/lib/module/toast/use-app-state.js.map +1 -0
  211. package/lib/module/toast/use-toast-colors.js +109 -0
  212. package/lib/module/toast/use-toast-colors.js.map +1 -0
  213. package/lib/module/toast/use-toast-position.js +35 -0
  214. package/lib/module/toast/use-toast-position.js.map +1 -0
  215. package/lib/module/tooltip/index.web.js +2 -1
  216. package/lib/module/tooltip/index.web.js.map +1 -1
  217. package/lib/module/zoomable-image-gallery/ZoomableImageGallery.js +20 -8
  218. package/lib/module/zoomable-image-gallery/ZoomableImageGallery.js.map +1 -1
  219. package/lib/typescript/commonjs/avatar-group/AvatarGroup.web.d.ts.map +1 -1
  220. package/lib/typescript/commonjs/bottom-sheet/index.web.d.ts.map +1 -1
  221. package/lib/typescript/commonjs/context-menu/index.web.d.ts.map +1 -1
  222. package/lib/typescript/commonjs/dialog/Dialog.web.d.ts.map +1 -1
  223. package/lib/typescript/commonjs/index.d.ts +2 -1
  224. package/lib/typescript/commonjs/index.d.ts.map +1 -1
  225. package/lib/typescript/commonjs/index.web.d.ts +2 -1
  226. package/lib/typescript/commonjs/index.web.d.ts.map +1 -1
  227. package/lib/typescript/commonjs/menu/index.web.d.ts.map +1 -1
  228. package/lib/typescript/commonjs/popover/index.web.d.ts.map +1 -1
  229. package/lib/typescript/commonjs/portal/index.d.ts.map +1 -1
  230. package/lib/typescript/commonjs/progressive-blur/index.d.ts +23 -0
  231. package/lib/typescript/commonjs/progressive-blur/index.d.ts.map +1 -0
  232. package/lib/typescript/commonjs/progressive-blur/index.web.d.ts +30 -0
  233. package/lib/typescript/commonjs/progressive-blur/index.web.d.ts.map +1 -0
  234. package/lib/typescript/commonjs/progressive-blur/shared.d.ts +35 -0
  235. package/lib/typescript/commonjs/progressive-blur/shared.d.ts.map +1 -0
  236. package/lib/typescript/commonjs/progressive-blur/types.d.ts +21 -0
  237. package/lib/typescript/commonjs/progressive-blur/types.d.ts.map +1 -0
  238. package/lib/typescript/commonjs/select/index.web.d.ts.map +1 -1
  239. package/lib/typescript/commonjs/styles/web-view-style.d.ts +21 -0
  240. package/lib/typescript/commonjs/styles/web-view-style.d.ts.map +1 -0
  241. package/lib/typescript/commonjs/tab-bar/TabBarBase.d.ts +36 -0
  242. package/lib/typescript/commonjs/tab-bar/TabBarBase.d.ts.map +1 -0
  243. package/lib/typescript/commonjs/tab-bar/expo-router/RouterTabBar.d.ts +59 -0
  244. package/lib/typescript/commonjs/tab-bar/expo-router/RouterTabBar.d.ts.map +1 -0
  245. package/lib/typescript/commonjs/tab-bar/expo-router/fading-tab-screen.d.ts +11 -0
  246. package/lib/typescript/commonjs/tab-bar/expo-router/fading-tab-screen.d.ts.map +1 -0
  247. package/lib/typescript/commonjs/tab-bar/expo-router/index.d.ts +14 -0
  248. package/lib/typescript/commonjs/tab-bar/expo-router/index.d.ts.map +1 -0
  249. package/lib/typescript/commonjs/tab-bar/glyph.d.ts +6 -0
  250. package/lib/typescript/commonjs/tab-bar/glyph.d.ts.map +1 -0
  251. package/lib/typescript/commonjs/tab-bar/glyph.native.d.ts +6 -0
  252. package/lib/typescript/commonjs/tab-bar/glyph.native.d.ts.map +1 -0
  253. package/lib/typescript/commonjs/tab-bar/index.d.ts +12 -0
  254. package/lib/typescript/commonjs/tab-bar/index.d.ts.map +1 -0
  255. package/lib/typescript/commonjs/tab-bar/index.web.d.ts +12 -0
  256. package/lib/typescript/commonjs/tab-bar/index.web.d.ts.map +1 -0
  257. package/lib/typescript/commonjs/tab-bar/minimize-context.d.ts +51 -0
  258. package/lib/typescript/commonjs/tab-bar/minimize-context.d.ts.map +1 -0
  259. package/lib/typescript/commonjs/tab-bar/shared.d.ts +93 -0
  260. package/lib/typescript/commonjs/tab-bar/shared.d.ts.map +1 -0
  261. package/lib/typescript/commonjs/tab-bar/surface.d.ts +6 -0
  262. package/lib/typescript/commonjs/tab-bar/surface.d.ts.map +1 -0
  263. package/lib/typescript/commonjs/tab-bar/surface.native.d.ts +6 -0
  264. package/lib/typescript/commonjs/tab-bar/surface.native.d.ts.map +1 -0
  265. package/lib/typescript/commonjs/tab-bar/surface.web.d.ts +6 -0
  266. package/lib/typescript/commonjs/tab-bar/surface.web.d.ts.map +1 -0
  267. package/lib/typescript/commonjs/tab-bar/types.d.ts +85 -0
  268. package/lib/typescript/commonjs/tab-bar/types.d.ts.map +1 -0
  269. package/lib/typescript/commonjs/toast/Positioner.d.ts +21 -0
  270. package/lib/typescript/commonjs/toast/Positioner.d.ts.map +1 -0
  271. package/lib/typescript/commonjs/toast/ToastContent.d.ts +14 -0
  272. package/lib/typescript/commonjs/toast/ToastContent.d.ts.map +1 -0
  273. package/lib/typescript/commonjs/toast/ToastHost.d.ts +6 -0
  274. package/lib/typescript/commonjs/toast/ToastHost.d.ts.map +1 -0
  275. package/lib/typescript/commonjs/toast/ToastHost.native.d.ts +6 -0
  276. package/lib/typescript/commonjs/toast/ToastHost.native.d.ts.map +1 -0
  277. package/lib/typescript/commonjs/toast/ToastIcon.d.ts +9 -0
  278. package/lib/typescript/commonjs/toast/ToastIcon.d.ts.map +1 -0
  279. package/lib/typescript/commonjs/toast/ToastRow.d.ts +80 -0
  280. package/lib/typescript/commonjs/toast/ToastRow.d.ts.map +1 -0
  281. package/lib/typescript/commonjs/toast/ToastSwipeHandler.d.ts +30 -0
  282. package/lib/typescript/commonjs/toast/ToastSwipeHandler.d.ts.map +1 -0
  283. package/lib/typescript/commonjs/toast/Toaster.d.ts +19 -0
  284. package/lib/typescript/commonjs/toast/Toaster.d.ts.map +1 -0
  285. package/lib/typescript/commonjs/toast/animations.d.ts +62 -0
  286. package/lib/typescript/commonjs/toast/animations.d.ts.map +1 -0
  287. package/lib/typescript/commonjs/toast/constants.d.ts +39 -0
  288. package/lib/typescript/commonjs/toast/constants.d.ts.map +1 -0
  289. package/lib/typescript/commonjs/toast/context.d.ts +19 -0
  290. package/lib/typescript/commonjs/toast/context.d.ts.map +1 -0
  291. package/lib/typescript/commonjs/toast/index.d.ts +23 -76
  292. package/lib/typescript/commonjs/toast/index.d.ts.map +1 -1
  293. package/lib/typescript/commonjs/toast/position-utils.d.ts +30 -0
  294. package/lib/typescript/commonjs/toast/position-utils.d.ts.map +1 -0
  295. package/lib/typescript/commonjs/toast/positioner-utils.d.ts +72 -0
  296. package/lib/typescript/commonjs/toast/positioner-utils.d.ts.map +1 -0
  297. package/lib/typescript/commonjs/toast/toast-comparator.d.ts +12 -0
  298. package/lib/typescript/commonjs/toast/toast-comparator.d.ts.map +1 -0
  299. package/lib/typescript/commonjs/toast/toast-fns.d.ts +3 -0
  300. package/lib/typescript/commonjs/toast/toast-fns.d.ts.map +1 -0
  301. package/lib/typescript/commonjs/toast/toast-store.d.ts +52 -0
  302. package/lib/typescript/commonjs/toast/toast-store.d.ts.map +1 -0
  303. package/lib/typescript/commonjs/toast/toast-timers.d.ts +24 -0
  304. package/lib/typescript/commonjs/toast/toast-timers.d.ts.map +1 -0
  305. package/lib/typescript/commonjs/toast/types.d.ts +222 -5
  306. package/lib/typescript/commonjs/toast/types.d.ts.map +1 -1
  307. package/lib/typescript/commonjs/toast/use-animated-target.d.ts +7 -0
  308. package/lib/typescript/commonjs/toast/use-animated-target.d.ts.map +1 -0
  309. package/lib/typescript/commonjs/toast/use-app-state.d.ts +18 -0
  310. package/lib/typescript/commonjs/toast/use-app-state.d.ts.map +1 -0
  311. package/lib/typescript/commonjs/toast/use-toast-colors.d.ts +22 -0
  312. package/lib/typescript/commonjs/toast/use-toast-colors.d.ts.map +1 -0
  313. package/lib/typescript/commonjs/toast/use-toast-position.d.ts +37 -0
  314. package/lib/typescript/commonjs/toast/use-toast-position.d.ts.map +1 -0
  315. package/lib/typescript/commonjs/tooltip/index.web.d.ts.map +1 -1
  316. package/lib/typescript/commonjs/zoomable-image-gallery/ZoomableImageGallery.d.ts.map +1 -1
  317. package/lib/typescript/module/avatar-group/AvatarGroup.web.d.ts.map +1 -1
  318. package/lib/typescript/module/bottom-sheet/index.web.d.ts.map +1 -1
  319. package/lib/typescript/module/context-menu/index.web.d.ts.map +1 -1
  320. package/lib/typescript/module/dialog/Dialog.web.d.ts.map +1 -1
  321. package/lib/typescript/module/index.d.ts +2 -1
  322. package/lib/typescript/module/index.d.ts.map +1 -1
  323. package/lib/typescript/module/index.web.d.ts +2 -1
  324. package/lib/typescript/module/index.web.d.ts.map +1 -1
  325. package/lib/typescript/module/menu/index.web.d.ts.map +1 -1
  326. package/lib/typescript/module/popover/index.web.d.ts.map +1 -1
  327. package/lib/typescript/module/portal/index.d.ts.map +1 -1
  328. package/lib/typescript/module/progressive-blur/index.d.ts +23 -0
  329. package/lib/typescript/module/progressive-blur/index.d.ts.map +1 -0
  330. package/lib/typescript/module/progressive-blur/index.web.d.ts +30 -0
  331. package/lib/typescript/module/progressive-blur/index.web.d.ts.map +1 -0
  332. package/lib/typescript/module/progressive-blur/shared.d.ts +35 -0
  333. package/lib/typescript/module/progressive-blur/shared.d.ts.map +1 -0
  334. package/lib/typescript/module/progressive-blur/types.d.ts +21 -0
  335. package/lib/typescript/module/progressive-blur/types.d.ts.map +1 -0
  336. package/lib/typescript/module/select/index.web.d.ts.map +1 -1
  337. package/lib/typescript/module/styles/web-view-style.d.ts +21 -0
  338. package/lib/typescript/module/styles/web-view-style.d.ts.map +1 -0
  339. package/lib/typescript/module/tab-bar/TabBarBase.d.ts +36 -0
  340. package/lib/typescript/module/tab-bar/TabBarBase.d.ts.map +1 -0
  341. package/lib/typescript/module/tab-bar/expo-router/RouterTabBar.d.ts +59 -0
  342. package/lib/typescript/module/tab-bar/expo-router/RouterTabBar.d.ts.map +1 -0
  343. package/lib/typescript/module/tab-bar/expo-router/fading-tab-screen.d.ts +11 -0
  344. package/lib/typescript/module/tab-bar/expo-router/fading-tab-screen.d.ts.map +1 -0
  345. package/lib/typescript/module/tab-bar/expo-router/index.d.ts +14 -0
  346. package/lib/typescript/module/tab-bar/expo-router/index.d.ts.map +1 -0
  347. package/lib/typescript/module/tab-bar/glyph.d.ts +6 -0
  348. package/lib/typescript/module/tab-bar/glyph.d.ts.map +1 -0
  349. package/lib/typescript/module/tab-bar/glyph.native.d.ts +6 -0
  350. package/lib/typescript/module/tab-bar/glyph.native.d.ts.map +1 -0
  351. package/lib/typescript/module/tab-bar/index.d.ts +12 -0
  352. package/lib/typescript/module/tab-bar/index.d.ts.map +1 -0
  353. package/lib/typescript/module/tab-bar/index.web.d.ts +12 -0
  354. package/lib/typescript/module/tab-bar/index.web.d.ts.map +1 -0
  355. package/lib/typescript/module/tab-bar/minimize-context.d.ts +51 -0
  356. package/lib/typescript/module/tab-bar/minimize-context.d.ts.map +1 -0
  357. package/lib/typescript/module/tab-bar/shared.d.ts +93 -0
  358. package/lib/typescript/module/tab-bar/shared.d.ts.map +1 -0
  359. package/lib/typescript/module/tab-bar/surface.d.ts +6 -0
  360. package/lib/typescript/module/tab-bar/surface.d.ts.map +1 -0
  361. package/lib/typescript/module/tab-bar/surface.native.d.ts +6 -0
  362. package/lib/typescript/module/tab-bar/surface.native.d.ts.map +1 -0
  363. package/lib/typescript/module/tab-bar/surface.web.d.ts +6 -0
  364. package/lib/typescript/module/tab-bar/surface.web.d.ts.map +1 -0
  365. package/lib/typescript/module/tab-bar/types.d.ts +85 -0
  366. package/lib/typescript/module/tab-bar/types.d.ts.map +1 -0
  367. package/lib/typescript/module/toast/Positioner.d.ts +21 -0
  368. package/lib/typescript/module/toast/Positioner.d.ts.map +1 -0
  369. package/lib/typescript/module/toast/ToastContent.d.ts +14 -0
  370. package/lib/typescript/module/toast/ToastContent.d.ts.map +1 -0
  371. package/lib/typescript/module/toast/ToastHost.d.ts +6 -0
  372. package/lib/typescript/module/toast/ToastHost.d.ts.map +1 -0
  373. package/lib/typescript/module/toast/ToastHost.native.d.ts +6 -0
  374. package/lib/typescript/module/toast/ToastHost.native.d.ts.map +1 -0
  375. package/lib/typescript/module/toast/ToastIcon.d.ts +9 -0
  376. package/lib/typescript/module/toast/ToastIcon.d.ts.map +1 -0
  377. package/lib/typescript/module/toast/ToastRow.d.ts +80 -0
  378. package/lib/typescript/module/toast/ToastRow.d.ts.map +1 -0
  379. package/lib/typescript/module/toast/ToastSwipeHandler.d.ts +30 -0
  380. package/lib/typescript/module/toast/ToastSwipeHandler.d.ts.map +1 -0
  381. package/lib/typescript/module/toast/Toaster.d.ts +19 -0
  382. package/lib/typescript/module/toast/Toaster.d.ts.map +1 -0
  383. package/lib/typescript/module/toast/animations.d.ts +62 -0
  384. package/lib/typescript/module/toast/animations.d.ts.map +1 -0
  385. package/lib/typescript/module/toast/constants.d.ts +39 -0
  386. package/lib/typescript/module/toast/constants.d.ts.map +1 -0
  387. package/lib/typescript/module/toast/context.d.ts +19 -0
  388. package/lib/typescript/module/toast/context.d.ts.map +1 -0
  389. package/lib/typescript/module/toast/index.d.ts +23 -76
  390. package/lib/typescript/module/toast/index.d.ts.map +1 -1
  391. package/lib/typescript/module/toast/position-utils.d.ts +30 -0
  392. package/lib/typescript/module/toast/position-utils.d.ts.map +1 -0
  393. package/lib/typescript/module/toast/positioner-utils.d.ts +72 -0
  394. package/lib/typescript/module/toast/positioner-utils.d.ts.map +1 -0
  395. package/lib/typescript/module/toast/toast-comparator.d.ts +12 -0
  396. package/lib/typescript/module/toast/toast-comparator.d.ts.map +1 -0
  397. package/lib/typescript/module/toast/toast-fns.d.ts +3 -0
  398. package/lib/typescript/module/toast/toast-fns.d.ts.map +1 -0
  399. package/lib/typescript/module/toast/toast-store.d.ts +52 -0
  400. package/lib/typescript/module/toast/toast-store.d.ts.map +1 -0
  401. package/lib/typescript/module/toast/toast-timers.d.ts +24 -0
  402. package/lib/typescript/module/toast/toast-timers.d.ts.map +1 -0
  403. package/lib/typescript/module/toast/types.d.ts +222 -5
  404. package/lib/typescript/module/toast/types.d.ts.map +1 -1
  405. package/lib/typescript/module/toast/use-animated-target.d.ts +7 -0
  406. package/lib/typescript/module/toast/use-animated-target.d.ts.map +1 -0
  407. package/lib/typescript/module/toast/use-app-state.d.ts +18 -0
  408. package/lib/typescript/module/toast/use-app-state.d.ts.map +1 -0
  409. package/lib/typescript/module/toast/use-toast-colors.d.ts +22 -0
  410. package/lib/typescript/module/toast/use-toast-colors.d.ts.map +1 -0
  411. package/lib/typescript/module/toast/use-toast-position.d.ts +37 -0
  412. package/lib/typescript/module/toast/use-toast-position.d.ts.map +1 -0
  413. package/lib/typescript/module/tooltip/index.web.d.ts.map +1 -1
  414. package/lib/typescript/module/zoomable-image-gallery/ZoomableImageGallery.d.ts.map +1 -1
  415. package/package.json +63 -25
  416. package/src/__tests__/TabBar.test.tsx +342 -0
  417. package/src/__tests__/TabBarReanimatedDeps.test.ts +130 -0
  418. package/src/__tests__/TabBarWebFork.test.ts +197 -0
  419. package/src/__tests__/ToastContent.test.tsx +192 -0
  420. package/src/__tests__/ToastHostWebFork.test.ts +155 -0
  421. package/src/__tests__/Toaster.test.tsx +527 -0
  422. package/src/__tests__/animated-style-deps.test.ts +156 -0
  423. package/src/__tests__/toast-animations.test.ts +98 -0
  424. package/src/__tests__/toast-comparator.test.ts +131 -0
  425. package/src/__tests__/toast-enter-driver.test.ts +147 -0
  426. package/src/__tests__/toast-fns.test.ts +240 -0
  427. package/src/__tests__/toast-position-utils.test.ts +259 -0
  428. package/src/__tests__/toast-positioner-utils.test.ts +214 -0
  429. package/src/__tests__/toast-store.test.ts +622 -0
  430. package/src/__tests__/toast-timers.test.ts +163 -0
  431. package/src/__tests__/use-animated-target.test.tsx +60 -0
  432. package/src/__tests__/use-app-state.test.tsx +127 -0
  433. package/src/__tests__/use-toast-colors.test.tsx +189 -0
  434. package/src/__tests__/web-position-fixed.test.ts +70 -0
  435. package/src/avatar-group/AvatarGroup.web.tsx +2 -1
  436. package/src/bottom-sheet/index.web.tsx +3 -2
  437. package/src/context-menu/index.web.tsx +3 -2
  438. package/src/dialog/Dialog.web.tsx +4 -3
  439. package/src/index.ts +4 -1
  440. package/src/index.web.ts +4 -1
  441. package/src/menu/index.web.tsx +2 -1
  442. package/src/popover/index.web.tsx +3 -2
  443. package/src/portal/index.tsx +4 -1
  444. package/src/progressive-blur/index.tsx +78 -0
  445. package/src/progressive-blur/index.web.tsx +65 -0
  446. package/src/progressive-blur/shared.ts +81 -0
  447. package/src/progressive-blur/types.ts +21 -0
  448. package/src/select/index.web.tsx +2 -1
  449. package/src/styles/web-view-style.ts +21 -0
  450. package/src/tab-bar/TabBar.stories.tsx +217 -0
  451. package/src/tab-bar/TabBarBase.tsx +517 -0
  452. package/src/tab-bar/expo-router/RouterTabBar.tsx +80 -0
  453. package/src/tab-bar/expo-router/fading-tab-screen.tsx +109 -0
  454. package/src/tab-bar/expo-router/index.ts +13 -0
  455. package/src/tab-bar/glyph.native.tsx +46 -0
  456. package/src/tab-bar/glyph.tsx +31 -0
  457. package/src/tab-bar/index.ts +32 -0
  458. package/src/tab-bar/index.web.tsx +34 -0
  459. package/src/tab-bar/minimize-context.tsx +117 -0
  460. package/src/tab-bar/shared.ts +159 -0
  461. package/src/tab-bar/surface.native.tsx +60 -0
  462. package/src/tab-bar/surface.tsx +47 -0
  463. package/src/tab-bar/surface.web.tsx +56 -0
  464. package/src/tab-bar/types.ts +88 -0
  465. package/src/toast/Positioner.tsx +121 -0
  466. package/src/toast/Toast.stories.tsx +292 -65
  467. package/src/toast/ToastContent.tsx +405 -0
  468. package/src/toast/ToastHost.native.tsx +31 -0
  469. package/src/toast/ToastHost.tsx +67 -0
  470. package/src/toast/ToastIcon.tsx +55 -0
  471. package/src/toast/ToastRow.tsx +485 -0
  472. package/src/toast/ToastSwipeHandler.tsx +222 -0
  473. package/src/toast/Toaster.tsx +259 -0
  474. package/src/toast/animations.ts +313 -0
  475. package/src/toast/constants.ts +76 -0
  476. package/src/toast/context.tsx +44 -0
  477. package/src/toast/index.tsx +47 -123
  478. package/src/toast/position-utils.ts +149 -0
  479. package/src/toast/positioner-utils.ts +142 -0
  480. package/src/toast/toast-comparator.ts +41 -0
  481. package/src/toast/toast-fns.ts +104 -0
  482. package/src/toast/toast-store.ts +432 -0
  483. package/src/toast/toast-timers.ts +124 -0
  484. package/src/toast/types.ts +301 -5
  485. package/src/toast/use-animated-target.ts +61 -0
  486. package/src/toast/use-app-state.ts +77 -0
  487. package/src/toast/use-toast-colors.ts +133 -0
  488. package/src/toast/use-toast-position.ts +46 -0
  489. package/src/tooltip/index.web.tsx +2 -1
  490. package/src/zoomable-image-gallery/ZoomableImageGallery.stories.tsx +134 -0
  491. package/src/zoomable-image-gallery/ZoomableImageGallery.tsx +50 -27
  492. package/lib/commonjs/toast/Toast.js +0 -267
  493. package/lib/commonjs/toast/Toast.js.map +0 -1
  494. package/lib/commonjs/toast/const.js +0 -8
  495. package/lib/commonjs/toast/const.js.map +0 -1
  496. package/lib/commonjs/toast/index.web.js +0 -114
  497. package/lib/commonjs/toast/index.web.js.map +0 -1
  498. package/lib/commonjs/toast/sonner/index.js +0 -9
  499. package/lib/commonjs/toast/sonner/index.js.map +0 -1
  500. package/lib/commonjs/toast/sonner/index.web.js +0 -9
  501. package/lib/commonjs/toast/sonner/index.web.js.map +0 -1
  502. package/lib/module/toast/Toast.js +0 -258
  503. package/lib/module/toast/Toast.js.map +0 -1
  504. package/lib/module/toast/const.js +0 -4
  505. package/lib/module/toast/const.js.map +0 -1
  506. package/lib/module/toast/index.web.js +0 -74
  507. package/lib/module/toast/index.web.js.map +0 -1
  508. package/lib/module/toast/sonner/index.js +0 -5
  509. package/lib/module/toast/sonner/index.js.map +0 -1
  510. package/lib/module/toast/sonner/index.web.js +0 -5
  511. package/lib/module/toast/sonner/index.web.js.map +0 -1
  512. package/lib/typescript/commonjs/toast/Toast.d.ts +0 -23
  513. package/lib/typescript/commonjs/toast/Toast.d.ts.map +0 -1
  514. package/lib/typescript/commonjs/toast/const.d.ts +0 -2
  515. package/lib/typescript/commonjs/toast/const.d.ts.map +0 -1
  516. package/lib/typescript/commonjs/toast/index.web.d.ts +0 -29
  517. package/lib/typescript/commonjs/toast/index.web.d.ts.map +0 -1
  518. package/lib/typescript/commonjs/toast/sonner/index.d.ts +0 -2
  519. package/lib/typescript/commonjs/toast/sonner/index.d.ts.map +0 -1
  520. package/lib/typescript/commonjs/toast/sonner/index.web.d.ts +0 -2
  521. package/lib/typescript/commonjs/toast/sonner/index.web.d.ts.map +0 -1
  522. package/lib/typescript/module/toast/Toast.d.ts +0 -23
  523. package/lib/typescript/module/toast/Toast.d.ts.map +0 -1
  524. package/lib/typescript/module/toast/const.d.ts +0 -2
  525. package/lib/typescript/module/toast/const.d.ts.map +0 -1
  526. package/lib/typescript/module/toast/index.web.d.ts +0 -29
  527. package/lib/typescript/module/toast/index.web.d.ts.map +0 -1
  528. package/lib/typescript/module/toast/sonner/index.d.ts +0 -2
  529. package/lib/typescript/module/toast/sonner/index.d.ts.map +0 -1
  530. package/lib/typescript/module/toast/sonner/index.web.d.ts +0 -2
  531. package/lib/typescript/module/toast/sonner/index.web.d.ts.map +0 -1
  532. package/src/toast/Toast.tsx +0 -269
  533. package/src/toast/const.ts +0 -1
  534. package/src/toast/index.web.tsx +0 -101
  535. package/src/toast/sonner/index.ts +0 -3
  536. package/src/toast/sonner/index.web.ts +0 -3
@@ -0,0 +1,56 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.TabBarSurface = TabBarSurface;
7
+ var _expoGlassEffect = require("expo-glass-effect");
8
+ var _reactNative = require("react-native");
9
+ var _reactNativeReanimated = _interopRequireDefault(require("react-native-reanimated"));
10
+ var _jsxRuntime = require("react/jsx-runtime");
11
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
12
+ /**
13
+ * Ported from expo-glass-tabs v0.1.1 — src/glass-tab-bar.tsx
14
+ * (MIT © 2026 David Mokos). See the top-level NOTICE.
15
+ *
16
+ * NATIVE variant of the tab bar's capsule surface — real liquid glass.
17
+ *
18
+ * `expo-glass-effect` is imported STATICALLY and this file is the only place it
19
+ * appears: Metro selects `.native` on iOS/Android, so the import never reaches
20
+ * a web bundle or a consumer's type-check (that is what the neutral
21
+ * `surface.tsx` sibling is for). A peer dependency plus a static import plus a
22
+ * runtime capability check is the deliberate shape here — not a lazy
23
+ * `require()`, which Metro cannot bundle from published `lib/` when the module
24
+ * name is dynamic and which would also hide the dependency from consumers.
25
+ *
26
+ * `isLiquidGlassAvailable()` is false on Android and pre-iOS-26, where the
27
+ * package's `GlassView` has no material to render; those platforms get the same
28
+ * opaque fallback the neutral variant paints.
29
+ */
30
+
31
+ const AnimatedGlassView = _reactNativeReanimated.default.createAnimatedComponent(_expoGlassEffect.GlassView);
32
+ function TabBarSurface({
33
+ theme,
34
+ style
35
+ }) {
36
+ if ((0, _expoGlassEffect.isLiquidGlassAvailable)()) {
37
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)(AnimatedGlassView, {
38
+ glassEffectStyle: "regular",
39
+ style: [_reactNative.StyleSheet.absoluteFill, styles.surface, {
40
+ backgroundColor: theme.glassTint
41
+ }, style]
42
+ });
43
+ }
44
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNativeReanimated.default.View, {
45
+ style: [_reactNative.StyleSheet.absoluteFill, styles.surface, {
46
+ backgroundColor: theme.solidFallback
47
+ }, style]
48
+ });
49
+ }
50
+ TabBarSurface.displayName = 'TabBarSurface';
51
+ const styles = _reactNative.StyleSheet.create({
52
+ surface: {
53
+ borderCurve: 'continuous'
54
+ }
55
+ });
56
+ //# sourceMappingURL=surface.native.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_expoGlassEffect","require","_reactNative","_reactNativeReanimated","_interopRequireDefault","_jsxRuntime","e","__esModule","default","AnimatedGlassView","Animated","createAnimatedComponent","GlassView","TabBarSurface","theme","style","isLiquidGlassAvailable","jsx","glassEffectStyle","StyleSheet","absoluteFill","styles","surface","backgroundColor","glassTint","View","solidFallback","displayName","create","borderCurve"],"sourceRoot":"../../../src","sources":["tab-bar/surface.native.tsx"],"mappings":";;;;;;AAkBA,IAAAA,gBAAA,GAAAC,OAAA;AACA,IAAAC,YAAA,GAAAD,OAAA;AACA,IAAAE,sBAAA,GAAAC,sBAAA,CAAAH,OAAA;AAA+C,IAAAI,WAAA,GAAAJ,OAAA;AAAA,SAAAG,uBAAAE,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;AApB/C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAOA,MAAMG,iBAAiB,GAAGC,8BAAQ,CAACC,uBAAuB,CAACC,0BAAS,CAAC;AAE9D,SAASC,aAAaA,CAAC;EAAEC,KAAK;EAAEC;AAA0B,CAAC,EAAE;EAClE,IAAI,IAAAC,uCAAsB,EAAC,CAAC,EAAE;IAC5B,oBACE,IAAAX,WAAA,CAAAY,GAAA,EAACR,iBAAiB;MAChBS,gBAAgB,EAAC,SAAS;MAC1BH,KAAK,EAAE,CACLI,uBAAU,CAACC,YAAY,EACvBC,MAAM,CAACC,OAAO,EACd;QAAEC,eAAe,EAAET,KAAK,CAACU;MAAU,CAAC,EACpCT,KAAK;IACL,CACH,CAAC;EAEN;EAEA,oBACE,IAAAV,WAAA,CAAAY,GAAA,EAACd,sBAAA,CAAAK,OAAQ,CAACiB,IAAI;IACZV,KAAK,EAAE,CACLI,uBAAU,CAACC,YAAY,EACvBC,MAAM,CAACC,OAAO,EACd;MAAEC,eAAe,EAAET,KAAK,CAACY;IAAc,CAAC,EACxCX,KAAK;EACL,CACH,CAAC;AAEN;AAEAF,aAAa,CAACc,WAAW,GAAG,eAAe;AAE3C,MAAMN,MAAM,GAAGF,uBAAU,CAACS,MAAM,CAAC;EAC/BN,OAAO,EAAE;IACPO,WAAW,EAAE;EACf;AACF,CAAC,CAAC","ignoreList":[]}
@@ -0,0 +1,59 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.TabBarSurface = TabBarSurface;
7
+ var _reactNative = require("react-native");
8
+ var _reactNativeReanimated = _interopRequireDefault(require("react-native-reanimated"));
9
+ var _jsxRuntime = require("react/jsx-runtime");
10
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
11
+ /**
12
+ * Ported from expo-glass-tabs v0.1.1 — src/glass-tab-bar.tsx
13
+ * (MIT © 2026 David Mokos). See the top-level NOTICE.
14
+ *
15
+ * WEB variant of the tab bar's capsule surface: the browser's own frosted
16
+ * material, `backdrop-filter`, under the theme's translucent glass tint.
17
+ *
18
+ * The element stays a react-native-web `Animated.View` because the capsule
19
+ * radius is animated by reanimated on every minimize frame. The two web-only
20
+ * declarations ride in the STYLE object rather than a CSS class: react-native-
21
+ * web does not forward `className` to the DOM (its `forwardedProps` list has no
22
+ * `className`, and `createDOMProps` overwrites the attribute with the atomic
23
+ * class it generates), whereas unknown style properties ARE passed straight
24
+ * through its style compiler. That is the same route `Dialog.web.tsx` uses for
25
+ * its `animation` shorthand. No stylesheet needs injecting here: there is no
26
+ * `@keyframes` or pseudo-class involved, so nothing that an inline declaration
27
+ * cannot express.
28
+ *
29
+ * Browsers without `backdrop-filter` simply skip it and are left with the
30
+ * translucent tint — a graceful degradation that needs no `@supports` rule.
31
+ */
32
+
33
+ /**
34
+ * Blur radius of the web glass, in px. Tuned to read like the iOS 26 `regular`
35
+ * glass under the same 55%-alpha tint: enough to dissolve text scrolling
36
+ * underneath without smearing large shapes into mush. The saturation boost is
37
+ * what keeps colors behind the bar from going flat and grey.
38
+ */
39
+ const GLASS_BLUR_PX = 24;
40
+ const GLASS_FILTER = `blur(${GLASS_BLUR_PX}px) saturate(180%)`;
41
+
42
+ // Web-only CSS, unknown to React Native's `ViewStyle`. Both spellings are set:
43
+ // Safari still needs the prefixed property for `backdrop-filter`.
44
+ const glassFilterStyle = {
45
+ backdropFilter: GLASS_FILTER,
46
+ WebkitBackdropFilter: GLASS_FILTER
47
+ };
48
+ function TabBarSurface({
49
+ theme,
50
+ style
51
+ }) {
52
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNativeReanimated.default.View, {
53
+ style: [_reactNative.StyleSheet.absoluteFill, glassFilterStyle, {
54
+ backgroundColor: theme.glassTint
55
+ }, style]
56
+ });
57
+ }
58
+ TabBarSurface.displayName = 'TabBarSurface';
59
+ //# sourceMappingURL=surface.web.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_reactNative","require","_reactNativeReanimated","_interopRequireDefault","_jsxRuntime","e","__esModule","default","GLASS_BLUR_PX","GLASS_FILTER","glassFilterStyle","backdropFilter","WebkitBackdropFilter","TabBarSurface","theme","style","jsx","View","StyleSheet","absoluteFill","backgroundColor","glassTint","displayName"],"sourceRoot":"../../../src","sources":["tab-bar/surface.web.tsx"],"mappings":";;;;;;AAqBA,IAAAA,YAAA,GAAAC,OAAA;AACA,IAAAC,sBAAA,GAAAC,sBAAA,CAAAF,OAAA;AAA+C,IAAAG,WAAA,GAAAH,OAAA;AAAA,SAAAE,uBAAAE,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;AAtB/C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAMA;AACA;AACA;AACA;AACA;AACA;AACA,MAAMG,aAAa,GAAG,EAAE;AACxB,MAAMC,YAAY,GAAG,QAAQD,aAAa,oBAAoB;;AAE9D;AACA;AACA,MAAME,gBAAgB,GAAG;EACvBC,cAAc,EAAEF,YAAY;EAC5BG,oBAAoB,EAAEH;AACxB,CAAc;AAEP,SAASI,aAAaA,CAAC;EAAEC,KAAK;EAAEC;AAA0B,CAAC,EAAE;EAClE,oBACE,IAAAX,WAAA,CAAAY,GAAA,EAACd,sBAAA,CAAAK,OAAQ,CAACU,IAAI;IACZF,KAAK,EAAE,CACLG,uBAAU,CAACC,YAAY,EACvBT,gBAAgB,EAChB;MAAEU,eAAe,EAAEN,KAAK,CAACO;IAAU,CAAC,EACpCN,KAAK;EACL,CACH,CAAC;AAEN;AAEAF,aAAa,CAACS,WAAW,GAAG,eAAe","ignoreList":[]}
@@ -0,0 +1,6 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":[],"sourceRoot":"../../../src","sources":["tab-bar/types.ts"],"mappings":"","ignoreList":[]}
@@ -0,0 +1,117 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.Positioner = void 0;
7
+ var React = _interopRequireWildcard(require("react"));
8
+ var _reactNative = require("react-native");
9
+ var _reactNativeSafeAreaContext = require("react-native-safe-area-context");
10
+ var _context = require("./context.js");
11
+ var _positionerUtils = require("./positioner-utils.js");
12
+ var _jsxRuntime = require("react/jsx-runtime");
13
+ function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function (e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, default: e }; if (null === e || "object" != typeof e && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (const t in e) "default" !== t && {}.hasOwnProperty.call(e, t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, t)) && (i.get || i.set) ? o(f, t, i) : f[t] = e[t]); return f; })(e, t); }
14
+ /**
15
+ * Derived from sonner-native v0.26.4 — src/positioner.tsx
16
+ * (MIT © Gunnar Torfi Steinarsson). See the top-level NOTICE.
17
+ *
18
+ * One container per occupied position, plus the press-to-collapse area outside an
19
+ * expanded stack. The container pins all four edges and `getInsetValues` overrides
20
+ * just the anchored one, so it always has a real height and the rows inside it —
21
+ * which are absolutely positioned — are never laid out out of bounds. See
22
+ * `getContainerStyle` for what a zero-height container did to Android.
23
+ *
24
+ * `position: 'absolute'` is correct on BOTH platforms and this file stays fully
25
+ * universal: `ToastHost` supplies a viewport-sized containing block on web, so
26
+ * there is no `.web` fork and no `position: 'fixed'` here (W7).
27
+ *
28
+ * `pointerEvents` goes in `style`, never as a prop — the prop form is deprecated
29
+ * in react-native-web and logs on every render.
30
+ */
31
+
32
+ /**
33
+ * Web `initialWindowMetrics` is `null`, and on native it is null until the
34
+ * provider measures — both fall back to zero insets, which `getInsetValues` then
35
+ * turns into its 16px default.
36
+ */
37
+ const FALLBACK_INSETS = _reactNativeSafeAreaContext.initialWindowMetrics?.insets ?? {
38
+ top: 0,
39
+ bottom: 0,
40
+ left: 0,
41
+ right: 0
42
+ };
43
+
44
+ /**
45
+ * Without elevation the positioner can render behind sibling react-native-screens
46
+ * surfaces (native-stack, bottom-tabs) on Android, hiding toasts entirely. Kept
47
+ * alongside the `zIndex` the host applies, because Android orders those native
48
+ * siblings by elevation.
49
+ */
50
+ const ANDROID_ELEVATION = 9999;
51
+ const androidElevationStyle = _reactNative.Platform.OS === 'android' ? {
52
+ elevation: ANDROID_ELEVATION
53
+ } : null;
54
+ const Positioner = ({
55
+ children,
56
+ position,
57
+ style
58
+ }) => {
59
+ const {
60
+ offset,
61
+ gap,
62
+ visibleToasts
63
+ } = (0, _context.useToastContext)();
64
+ const {
65
+ isExpanded,
66
+ collapse,
67
+ toastHeights
68
+ } = (0, _context.useDynamicToastContext)();
69
+ const insets = React.useContext(_reactNativeSafeAreaContext.SafeAreaInsetsContext) ?? FALLBACK_INSETS;
70
+ const resolvedPosition = position ?? 'bottom-center';
71
+ const insetValues = (0, _positionerUtils.getInsetValues)({
72
+ position: resolvedPosition,
73
+ offset,
74
+ safeAreaInsets: {
75
+ top: insets.top,
76
+ bottom: insets.bottom
77
+ }
78
+ });
79
+ const handleOutsidePress = React.useCallback(() => {
80
+ if (isExpanded) {
81
+ collapse();
82
+ }
83
+ }, [isExpanded, collapse]);
84
+
85
+ // Collapsing by pressing outside only makes sense for an anchored stack.
86
+ const shouldAllowCollapse = resolvedPosition !== 'center' && isExpanded;
87
+ const hasChildren = React.Children.count(children) > 0;
88
+ return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_jsxRuntime.Fragment, {
89
+ children: [shouldAllowCollapse ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.Pressable, {
90
+ style: [(0, _positionerUtils.calculateOutsidePressableArea)({
91
+ position: resolvedPosition,
92
+ toastHeights,
93
+ gap,
94
+ visibleToasts,
95
+ insetValues
96
+ }), androidElevationStyle],
97
+ onPress: handleOutsidePress
98
+ }) : null, /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.View, {
99
+ style: [(0, _positionerUtils.getContainerStyle)(), androidElevationStyle,
100
+ // Overrides ONE edge of the four `getContainerStyle` pins, so the box
101
+ // keeps a real height and the rows inside it stay in bounds.
102
+ insetValues,
103
+ // This container spans the whole host, so it must never swallow a touch.
104
+ // `box-none` passes presses through to the app while still reaching the
105
+ // rows; an EMPTY one on Android drops to `none` outright, because the
106
+ // outlet's configured position always renders a container even with no
107
+ // rows in it (see `Toaster`'s grouping).
108
+ {
109
+ pointerEvents: _reactNative.Platform.OS === 'android' && !hasChildren ? 'none' : 'box-none'
110
+ }, style],
111
+ children: children
112
+ })]
113
+ });
114
+ };
115
+ exports.Positioner = Positioner;
116
+ Positioner.displayName = 'ToastPositioner';
117
+ //# sourceMappingURL=Positioner.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["React","_interopRequireWildcard","require","_reactNative","_reactNativeSafeAreaContext","_context","_positionerUtils","_jsxRuntime","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","FALLBACK_INSETS","initialWindowMetrics","insets","top","bottom","left","right","ANDROID_ELEVATION","androidElevationStyle","Platform","OS","elevation","Positioner","children","position","style","offset","gap","visibleToasts","useToastContext","isExpanded","collapse","toastHeights","useDynamicToastContext","useContext","SafeAreaInsetsContext","resolvedPosition","insetValues","getInsetValues","safeAreaInsets","handleOutsidePress","useCallback","shouldAllowCollapse","hasChildren","Children","count","jsxs","Fragment","jsx","Pressable","calculateOutsidePressableArea","onPress","View","getContainerStyle","pointerEvents","exports","displayName"],"sourceRoot":"../../../src","sources":["toast/Positioner.tsx"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,301 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.ToastContent = ToastContent;
7
+ var React = _interopRequireWildcard(require("react"));
8
+ var _reactNative = require("react-native");
9
+ var _shadows = require("../design-tokens/shadows");
10
+ var _useInteractionState = require("../hooks/useInteractionState.js");
11
+ var _Times = require("../icons/Times.js");
12
+ var _tokens = require("../styles/tokens.js");
13
+ var _ToastIcon = require("./ToastIcon.js");
14
+ var _useToastColors = require("./use-toast-colors.js");
15
+ var _types = require("./types.js");
16
+ var _jsxRuntime = require("react/jsx-runtime");
17
+ function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function (e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, default: e }; if (null === e || "object" != typeof e && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (const t in e) "default" !== t && {}.hasOwnProperty.call(e, t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, t)) && (i.get || i.set) ? o(f, t, i) : f[t] = e[t]); return f; })(e, t); }
18
+ /**
19
+ * Derived from sonner-native v0.26.4 — src/toast.tsx:440-689
20
+ * (MIT © Gunnar Torfi Steinarsson — see the top-level NOTICE), restyled with
21
+ * Bloom's design tokens and absorbing the surface/text/action styling from
22
+ * Bloom's previous `Toast.tsx`.
23
+ *
24
+ * This is the DEFAULT renderer. A consumer who passes `jsx` (via `toast.custom`)
25
+ * owns the whole row and this file is not involved.
26
+ *
27
+ * W11 — the surface elevation comes from `bloomShadowStyle('s')`, which is a
28
+ * `boxShadow` on web and RN `shadow*`/`elevation` on native. Upstream hardcodes
29
+ * iOS-only `shadowOpacity`/`shadowRadius` values, so its toast has no shadow on
30
+ * web (no `boxShadow`) and none on iOS either (no `shadowColor`).
31
+ */
32
+
33
+ function ToastContent({
34
+ id,
35
+ title,
36
+ description,
37
+ variant,
38
+ icon,
39
+ icons,
40
+ action,
41
+ cancel,
42
+ close,
43
+ closeButton,
44
+ dismissible,
45
+ richColors = false,
46
+ promiseOptions,
47
+ styles: styleOverrides,
48
+ style,
49
+ unstyled,
50
+ onDismiss,
51
+ actionButtonStyle,
52
+ actionButtonTextStyle,
53
+ cancelButtonStyle,
54
+ cancelButtonTextStyle,
55
+ allowFontScaling,
56
+ maxFontSizeMultiplier,
57
+ backgroundComponent
58
+ }) {
59
+ const colors = (0, _useToastColors.useToastColors)({
60
+ variant,
61
+ richColors
62
+ });
63
+ const isLoading = Boolean(promiseOptions) || variant === 'loading';
64
+ const surfaceStyle = unstyled ? undefined : {
65
+ backgroundColor: colors.surface,
66
+ borderColor: colors.border
67
+ };
68
+ const textProps = {
69
+ allowFontScaling,
70
+ maxFontSizeMultiplier
71
+ };
72
+ return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactNative.View, {
73
+ style: [unstyled ? undefined : styles.surface, surfaceStyle,
74
+ // A custom background needs the surface transparent and clipped so it can
75
+ // paint edge to edge underneath the content.
76
+ backgroundComponent ? styles.hostedBackground : undefined, styleOverrides?.toast, style],
77
+ children: [backgroundComponent, /*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactNative.View, {
78
+ style: [unstyled ? undefined : styles.row,
79
+ // With a description the row is tall, so the icon sits at the top
80
+ // instead of being centred against two lines of text.
81
+ unstyled || !description ? undefined : styles.rowWithDescription, backgroundComponent ? styles.aboveBackground : undefined, styleOverrides?.toastContent],
82
+ children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(ToastLeadingIcon, {
83
+ variant: variant,
84
+ icon: icon,
85
+ icons: icons,
86
+ isLoading: isLoading,
87
+ color: colors.icon
88
+ }), /*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactNative.View, {
89
+ style: [styles.textContainer, styleOverrides?.textContainer],
90
+ children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.Text, {
91
+ ...textProps,
92
+ style: [unstyled ? undefined : styles.title, unstyled ? undefined : {
93
+ color: colors.title
94
+ }, styleOverrides?.title],
95
+ children: title
96
+ }), description ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.Text, {
97
+ ...textProps,
98
+ style: [unstyled ? undefined : styles.description, unstyled ? undefined : {
99
+ color: colors.description
100
+ }, styleOverrides?.description],
101
+ children: description
102
+ }) : null, action || cancel ? /*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactNative.View, {
103
+ style: [unstyled ? undefined : styles.buttons, styleOverrides?.buttons],
104
+ children: [(0, _types.isToastAction)(action) ? /*#__PURE__*/(0, _jsxRuntime.jsx)(ToastActionButton, {
105
+ action: action,
106
+ colors: colors.action,
107
+ buttonStyle: actionButtonStyle,
108
+ textStyle: actionButtonTextStyle,
109
+ ...textProps
110
+ }) : action, (0, _types.isToastAction)(cancel) ? /*#__PURE__*/(0, _jsxRuntime.jsx)(ToastActionButton, {
111
+ action: {
112
+ label: cancel.label,
113
+ onClick: () => {
114
+ cancel.onClick();
115
+ onDismiss(id);
116
+ }
117
+ },
118
+ colors: colors.action,
119
+ transparent: true,
120
+ buttonStyle: cancelButtonStyle,
121
+ textStyle: [{
122
+ color: colors.cancelText
123
+ }, cancelButtonTextStyle],
124
+ ...textProps
125
+ }) : cancel]
126
+ }) : null]
127
+ }), /*#__PURE__*/(0, _jsxRuntime.jsx)(ToastCloseButton, {
128
+ id: id,
129
+ close: close,
130
+ closeButton: closeButton,
131
+ dismissible: dismissible,
132
+ color: colors.closeButton,
133
+ onDismiss: onDismiss,
134
+ buttonStyle: styleOverrides?.closeButton,
135
+ iconStyle: styleOverrides?.closeButtonIcon
136
+ })]
137
+ })]
138
+ });
139
+ }
140
+ ToastContent.displayName = 'ToastContent';
141
+ function ToastLeadingIcon({
142
+ variant,
143
+ icon,
144
+ icons,
145
+ isLoading,
146
+ color
147
+ }) {
148
+ if (isLoading) {
149
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)(_jsxRuntime.Fragment, {
150
+ children: icons.loading ?? /*#__PURE__*/(0, _jsxRuntime.jsx)(_ToastIcon.ToastIcon, {
151
+ variant: "loading",
152
+ color: color
153
+ })
154
+ });
155
+ }
156
+ if (icon) {
157
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)(_jsxRuntime.Fragment, {
158
+ children: icon
159
+ });
160
+ }
161
+ if (variant && icons[variant]) {
162
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)(_jsxRuntime.Fragment, {
163
+ children: icons[variant]
164
+ });
165
+ }
166
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)(_ToastIcon.ToastIcon, {
167
+ variant: variant,
168
+ color: color
169
+ });
170
+ }
171
+ function ToastActionButton({
172
+ action,
173
+ colors,
174
+ transparent,
175
+ buttonStyle,
176
+ textStyle,
177
+ allowFontScaling,
178
+ maxFontSizeMultiplier
179
+ }) {
180
+ // Driven from state rather than Pressable's function-form `style`, which
181
+ // react-native-css swallows on web (dropping the base padding/radius).
182
+ const {
183
+ state: pressed,
184
+ onIn,
185
+ onOut
186
+ } = (0, _useInteractionState.useInteractionState)();
187
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.Pressable, {
188
+ onPress: action.onClick,
189
+ onPressIn: onIn,
190
+ onPressOut: onOut,
191
+ accessibilityRole: "button",
192
+ style: [styles.actionButton, transparent ? undefined : {
193
+ backgroundColor: pressed ? colors.pressedBackground : colors.background
194
+ }, buttonStyle],
195
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.Text, {
196
+ numberOfLines: 1,
197
+ allowFontScaling: allowFontScaling,
198
+ maxFontSizeMultiplier: maxFontSizeMultiplier,
199
+ style: [styles.actionButtonText, {
200
+ color: pressed ? colors.pressedText : colors.text
201
+ }, textStyle],
202
+ children: action.label
203
+ })
204
+ });
205
+ }
206
+ function ToastCloseButton({
207
+ id,
208
+ close,
209
+ closeButton,
210
+ dismissible,
211
+ color,
212
+ onDismiss,
213
+ buttonStyle,
214
+ iconStyle
215
+ }) {
216
+ const handlePress = React.useCallback(() => {
217
+ onDismiss(id);
218
+ }, [onDismiss, id]);
219
+ if (!dismissible) {
220
+ return null;
221
+ }
222
+ if (close) {
223
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)(_jsxRuntime.Fragment, {
224
+ children: close
225
+ });
226
+ }
227
+ if (!closeButton) {
228
+ return null;
229
+ }
230
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.Pressable, {
231
+ onPress: handlePress,
232
+ hitSlop: CLOSE_BUTTON_HIT_SLOP,
233
+ accessibilityRole: "button",
234
+ style: buttonStyle,
235
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_Times.TimesLarge_Stroke2_Corner0_Rounded, {
236
+ size: "md",
237
+ fill: color,
238
+ style: iconStyle
239
+ })
240
+ });
241
+ }
242
+ const CLOSE_BUTTON_HIT_SLOP = 10;
243
+ const styles = _reactNative.StyleSheet.create({
244
+ surface: {
245
+ justifyContent: 'center',
246
+ paddingHorizontal: _tokens.space.lg,
247
+ paddingVertical: _tokens.space.md,
248
+ marginHorizontal: _tokens.space.lg,
249
+ borderRadius: _tokens.borderRadius.md,
250
+ borderWidth: _reactNative.StyleSheet.hairlineWidth,
251
+ ...(0, _shadows.bloomShadowStyle)('s')
252
+ },
253
+ hostedBackground: {
254
+ overflow: 'hidden',
255
+ backgroundColor: 'transparent'
256
+ },
257
+ aboveBackground: {
258
+ position: 'relative',
259
+ zIndex: 1
260
+ },
261
+ row: {
262
+ flexDirection: 'row',
263
+ alignItems: 'center',
264
+ gap: _tokens.space.md
265
+ },
266
+ rowWithDescription: {
267
+ alignItems: 'flex-start'
268
+ },
269
+ textContainer: {
270
+ flex: 1
271
+ },
272
+ title: {
273
+ fontSize: _tokens.fontSize.md,
274
+ fontWeight: '600',
275
+ lineHeight: 20
276
+ },
277
+ description: {
278
+ fontSize: _tokens.fontSize.sm,
279
+ lineHeight: 20,
280
+ marginTop: _tokens.space._2xs
281
+ },
282
+ buttons: {
283
+ flexDirection: 'row',
284
+ alignItems: 'center',
285
+ gap: _tokens.space.sm,
286
+ marginTop: _tokens.space.md
287
+ },
288
+ actionButton: {
289
+ flexGrow: 0,
290
+ alignSelf: 'flex-start',
291
+ paddingHorizontal: _tokens.space.md,
292
+ paddingVertical: _tokens.space.xs,
293
+ borderRadius: _tokens.borderRadius.sm
294
+ },
295
+ actionButtonText: {
296
+ fontSize: _tokens.fontSize.sm,
297
+ fontWeight: '600',
298
+ lineHeight: 20
299
+ }
300
+ });
301
+ //# sourceMappingURL=ToastContent.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["React","_interopRequireWildcard","require","_reactNative","_shadows","_useInteractionState","_Times","_tokens","_ToastIcon","_useToastColors","_types","_jsxRuntime","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","ToastContent","id","title","description","variant","icon","icons","action","cancel","close","closeButton","dismissible","richColors","promiseOptions","styles","styleOverrides","style","unstyled","onDismiss","actionButtonStyle","actionButtonTextStyle","cancelButtonStyle","cancelButtonTextStyle","allowFontScaling","maxFontSizeMultiplier","backgroundComponent","colors","useToastColors","isLoading","Boolean","surfaceStyle","undefined","backgroundColor","surface","borderColor","border","textProps","jsxs","View","hostedBackground","toast","children","row","rowWithDescription","aboveBackground","toastContent","jsx","ToastLeadingIcon","color","textContainer","Text","buttons","isToastAction","ToastActionButton","buttonStyle","textStyle","label","onClick","transparent","cancelText","ToastCloseButton","iconStyle","closeButtonIcon","displayName","Fragment","loading","ToastIcon","state","pressed","onIn","onOut","useInteractionState","Pressable","onPress","onPressIn","onPressOut","accessibilityRole","actionButton","pressedBackground","background","numberOfLines","actionButtonText","pressedText","text","handlePress","useCallback","hitSlop","CLOSE_BUTTON_HIT_SLOP","TimesLarge_Stroke2_Corner0_Rounded","size","fill","StyleSheet","create","justifyContent","paddingHorizontal","space","lg","paddingVertical","md","marginHorizontal","borderRadius","borderWidth","hairlineWidth","bloomShadowStyle","overflow","position","zIndex","flexDirection","alignItems","gap","flex","fontSize","fontWeight","lineHeight","sm","marginTop","_2xs","flexGrow","alignSelf","xs"],"sourceRoot":"../../../src","sources":["toast/ToastContent.tsx"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,69 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.ToastHost = ToastHost;
7
+ var React = _interopRequireWildcard(require("react"));
8
+ var _reactNative = require("react-native");
9
+ var _reactNativeGestureHandler = require("react-native-gesture-handler");
10
+ var _indexWeb = require("../portal/index.web.js");
11
+ var _webViewStyle = require("../styles/web-view-style.js");
12
+ var _zIndex = require("../styles/z-index.js");
13
+ var _jsxRuntime = require("react/jsx-runtime");
14
+ function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function (e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, default: e }; if (null === e || "object" != typeof e && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (const t in e) "default" !== t && {}.hasOwnProperty.call(e, t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, t)) && (i.get || i.set) ? o(f, t, i) : f[t] = e[t]); return f; })(e, t); }
15
+ /**
16
+ * Bloom-original — the WEB / default toast host. Metro selects
17
+ * `ToastHost.native.tsx` on iOS and Android; every other bundler (and a
18
+ * consumer's `tsc`) sees this file, matching the `.native` split convention
19
+ * `design-tokens/shadows.ts` already uses.
20
+ *
21
+ * Two jobs, both of which are why the rest of the engine can stay universal:
22
+ *
23
+ * - W7: it portals into `#bloom-portal-root` and provides a `position: fixed`,
24
+ * full-viewport containing block. `Positioner`'s `position: 'absolute'` would
25
+ * otherwise anchor to the nearest positioned ancestor — react-native-web's
26
+ * `View` defaults to `relative`, so a deeply-mounted outlet would anchor to a
27
+ * provider somewhere in the tree instead of the viewport. A `Positioner.web`
28
+ * with `position: fixed` would NOT be enough: `fixed` is still contained by any
29
+ * ancestor `transform`/`filter`/`contain`, which is exactly why `Dialog` and
30
+ * `BottomSheet` portal too. Sharing the one portal root also keeps a single
31
+ * document-level overlay layer rather than a second competing one.
32
+ * - W8: portaled content sits outside the app-root `GestureHandlerRootView`, so
33
+ * swipe-to-dismiss would never receive touches. This provides its own, exactly
34
+ * as `bottom-sheet/index.web.tsx` does. Web consumers need no setup.
35
+ *
36
+ * `pointerEvents: 'box-none'` keeps the empty area click-through while the rows
37
+ * themselves stay interactive.
38
+ */
39
+
40
+ function ToastHost({
41
+ children,
42
+ ToasterOverlayWrapper
43
+ }) {
44
+ const content = /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNativeGestureHandler.GestureHandlerRootView, {
45
+ style: styles.host,
46
+ children: children
47
+ });
48
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)(_indexWeb.Portal, {
49
+ children: ToasterOverlayWrapper ? /*#__PURE__*/(0, _jsxRuntime.jsx)(ToasterOverlayWrapper, {
50
+ children: content
51
+ }) : content
52
+ });
53
+ }
54
+ ToastHost.displayName = 'ToastHost';
55
+ const styles = _reactNative.StyleSheet.create({
56
+ host: {
57
+ // Full-viewport containing block for `Positioner`'s `position: 'absolute'`.
58
+ position: _webViewStyle.WEB_POSITION_FIXED,
59
+ top: 0,
60
+ left: 0,
61
+ right: 0,
62
+ bottom: 0,
63
+ // Inside `#bloom-portal-root` (which owns the document layer at 999999),
64
+ // this keeps toasts above Dialog's surface (60) and tooltips (70).
65
+ zIndex: _zIndex.Z_INDEX.toast,
66
+ pointerEvents: 'box-none'
67
+ }
68
+ });
69
+ //# sourceMappingURL=ToastHost.js.map