@arolariu/components 1.0.0 → 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 (451) hide show
  1. package/CHANGELOG.md +89 -0
  2. package/EXAMPLES.md +2510 -0
  3. package/dist/components/ui/accordion.js +3 -3
  4. package/dist/components/ui/accordion.js.map +1 -1
  5. package/dist/components/ui/accordion_module.css.map +1 -1
  6. package/dist/components/ui/alert-dialog.d.ts +4 -16
  7. package/dist/components/ui/alert-dialog.d.ts.map +1 -1
  8. package/dist/components/ui/alert-dialog.js +21 -17
  9. package/dist/components/ui/alert-dialog.js.map +1 -1
  10. package/dist/components/ui/alert-dialog_module.css +1 -1
  11. package/dist/components/ui/alert-dialog_module.css.map +1 -1
  12. package/dist/components/ui/alert.js +4 -4
  13. package/dist/components/ui/alert.js.map +1 -1
  14. package/dist/components/ui/alert_module.css.map +1 -1
  15. package/dist/components/ui/aspect-ratio.js +2 -2
  16. package/dist/components/ui/aspect-ratio.js.map +1 -1
  17. package/dist/components/ui/aspect-ratio_module.css.map +1 -1
  18. package/dist/components/ui/async-boundary.js +2 -2
  19. package/dist/components/ui/async-boundary.js.map +1 -1
  20. package/dist/components/ui/avatar.d.ts +3 -12
  21. package/dist/components/ui/avatar.d.ts.map +1 -1
  22. package/dist/components/ui/avatar.js +18 -15
  23. package/dist/components/ui/avatar.js.map +1 -1
  24. package/dist/components/ui/avatar_module.css.map +1 -1
  25. package/dist/components/ui/background-beams.js +3 -3
  26. package/dist/components/ui/background-beams.js.map +1 -1
  27. package/dist/components/ui/background-beams_module.css.map +1 -1
  28. package/dist/components/ui/badge.js +2 -2
  29. package/dist/components/ui/badge.js.map +1 -1
  30. package/dist/components/ui/badge_module.css.map +1 -1
  31. package/dist/components/ui/breadcrumb.js +10 -10
  32. package/dist/components/ui/breadcrumb.js.map +1 -1
  33. package/dist/components/ui/breadcrumb_module.css.map +1 -1
  34. package/dist/components/ui/bubble-background.js +5 -5
  35. package/dist/components/ui/bubble-background.js.map +1 -1
  36. package/dist/components/ui/bubble-background_module.css.map +1 -1
  37. package/dist/components/ui/button-group.d.ts +1 -1
  38. package/dist/components/ui/button-group.d.ts.map +1 -1
  39. package/dist/components/ui/button-group.js +6 -6
  40. package/dist/components/ui/button-group.js.map +1 -1
  41. package/dist/components/ui/button-group_module.css.map +1 -1
  42. package/dist/components/ui/button.js +4 -4
  43. package/dist/components/ui/button.js.map +1 -1
  44. package/dist/components/ui/button_module.css.map +1 -1
  45. package/dist/components/ui/calendar.d.ts +3 -5
  46. package/dist/components/ui/calendar.d.ts.map +1 -1
  47. package/dist/components/ui/calendar.js +9 -9
  48. package/dist/components/ui/calendar.js.map +1 -1
  49. package/dist/components/ui/calendar_module.css.map +1 -1
  50. package/dist/components/ui/card-skeleton.js +2 -2
  51. package/dist/components/ui/card-skeleton.js.map +1 -1
  52. package/dist/components/ui/card-skeleton_module.css.map +1 -1
  53. package/dist/components/ui/card.js +8 -8
  54. package/dist/components/ui/card.js.map +1 -1
  55. package/dist/components/ui/card_module.css.map +1 -1
  56. package/dist/components/ui/carousel.d.ts.map +1 -1
  57. package/dist/components/ui/carousel.js +16 -16
  58. package/dist/components/ui/carousel.js.map +1 -1
  59. package/dist/components/ui/carousel_module.css +1 -1
  60. package/dist/components/ui/carousel_module.css.map +1 -1
  61. package/dist/components/ui/chart.d.ts +6 -3
  62. package/dist/components/ui/chart.d.ts.map +1 -1
  63. package/dist/components/ui/chart.js +70 -70
  64. package/dist/components/ui/chart.js.map +1 -1
  65. package/dist/components/ui/chart_module.css.map +1 -1
  66. package/dist/components/ui/checkbox-group.d.ts +2 -6
  67. package/dist/components/ui/checkbox-group.d.ts.map +1 -1
  68. package/dist/components/ui/checkbox-group.js +8 -7
  69. package/dist/components/ui/checkbox-group.js.map +1 -1
  70. package/dist/components/ui/checkbox-group_module.css.map +1 -1
  71. package/dist/components/ui/checkbox.d.ts +3 -1
  72. package/dist/components/ui/checkbox.d.ts.map +1 -1
  73. package/dist/components/ui/checkbox.js +6 -3
  74. package/dist/components/ui/checkbox.js.map +1 -1
  75. package/dist/components/ui/checkbox_module.css.map +1 -1
  76. package/dist/components/ui/collapsible.d.ts.map +1 -1
  77. package/dist/components/ui/collapsible.js +4 -4
  78. package/dist/components/ui/collapsible.js.map +1 -1
  79. package/dist/components/ui/collapsible_module.css.map +1 -1
  80. package/dist/components/ui/combobox.d.ts +335 -0
  81. package/dist/components/ui/combobox.d.ts.map +1 -0
  82. package/dist/components/ui/combobox.js +206 -0
  83. package/dist/components/ui/combobox.js.map +1 -0
  84. package/dist/components/ui/combobox.module.js +23 -0
  85. package/dist/components/ui/combobox.module.js.map +1 -0
  86. package/dist/components/ui/combobox_module.css +142 -0
  87. package/dist/components/ui/combobox_module.css.map +1 -0
  88. package/dist/components/ui/command.d.ts.map +1 -1
  89. package/dist/components/ui/command.js +62 -53
  90. package/dist/components/ui/command.js.map +1 -1
  91. package/dist/components/ui/command_module.css +1 -1
  92. package/dist/components/ui/command_module.css.map +1 -1
  93. package/dist/components/ui/context-menu.d.ts.map +1 -1
  94. package/dist/components/ui/context-menu.js +6 -6
  95. package/dist/components/ui/context-menu.js.map +1 -1
  96. package/dist/components/ui/context-menu_module.css.map +1 -1
  97. package/dist/components/ui/copy-button.js +6 -6
  98. package/dist/components/ui/copy-button.js.map +1 -1
  99. package/dist/components/ui/copy-button_module.css.map +1 -1
  100. package/dist/components/ui/counting-number.js +6 -6
  101. package/dist/components/ui/counting-number.js.map +1 -1
  102. package/dist/components/ui/counting-number_module.css.map +1 -1
  103. package/dist/components/ui/dialog.js +6 -6
  104. package/dist/components/ui/dialog.js.map +1 -1
  105. package/dist/components/ui/dialog_module.css +1 -1
  106. package/dist/components/ui/dialog_module.css.map +1 -1
  107. package/dist/components/ui/dot-background_module.css.map +1 -1
  108. package/dist/components/ui/drawer.d.ts.map +1 -1
  109. package/dist/components/ui/drawer.js +5 -5
  110. package/dist/components/ui/drawer.js.map +1 -1
  111. package/dist/components/ui/drawer_module.css.map +1 -1
  112. package/dist/components/ui/dropdown-menu.d.ts.map +1 -1
  113. package/dist/components/ui/dropdown-menu.js +6 -6
  114. package/dist/components/ui/dropdown-menu.js.map +1 -1
  115. package/dist/components/ui/dropdown-menu_module.css.map +1 -1
  116. package/dist/components/ui/dropdrawer.d.ts +10 -16
  117. package/dist/components/ui/dropdrawer.d.ts.map +1 -1
  118. package/dist/components/ui/dropdrawer.js +73 -65
  119. package/dist/components/ui/dropdrawer.js.map +1 -1
  120. package/dist/components/ui/dropdrawer_module.css.map +1 -1
  121. package/dist/components/ui/empty.js +7 -7
  122. package/dist/components/ui/empty.js.map +1 -1
  123. package/dist/components/ui/empty_module.css.map +1 -1
  124. package/dist/components/ui/error-boundary.js +2 -2
  125. package/dist/components/ui/error-boundary.js.map +1 -1
  126. package/dist/components/ui/error-boundary_module.css.map +1 -1
  127. package/dist/components/ui/field.js +12 -12
  128. package/dist/components/ui/field.js.map +1 -1
  129. package/dist/components/ui/field_module.css.map +1 -1
  130. package/dist/components/ui/fireworks-background.js +6 -6
  131. package/dist/components/ui/fireworks-background.js.map +1 -1
  132. package/dist/components/ui/fireworks-background_module.css.map +1 -1
  133. package/dist/components/ui/flip-button.js +5 -5
  134. package/dist/components/ui/flip-button.js.map +1 -1
  135. package/dist/components/ui/flip-button_module.css.map +1 -1
  136. package/dist/components/ui/focus-scope.js +6 -6
  137. package/dist/components/ui/focus-scope.js.map +1 -1
  138. package/dist/components/ui/focus-scope_module.css.map +1 -1
  139. package/dist/components/ui/form-skeleton.js +2 -2
  140. package/dist/components/ui/form-skeleton.js.map +1 -1
  141. package/dist/components/ui/form-skeleton_module.css.map +1 -1
  142. package/dist/components/ui/form.d.ts +3 -3
  143. package/dist/components/ui/form.d.ts.map +1 -1
  144. package/dist/components/ui/form.js +13 -13
  145. package/dist/components/ui/form.js.map +1 -1
  146. package/dist/components/ui/form_module.css.map +1 -1
  147. package/dist/components/ui/gradient-background.js +2 -2
  148. package/dist/components/ui/gradient-background.js.map +1 -1
  149. package/dist/components/ui/gradient-background_module.css.map +1 -1
  150. package/dist/components/ui/gradient-text.js +2 -2
  151. package/dist/components/ui/gradient-text.js.map +1 -1
  152. package/dist/components/ui/gradient-text_module.css.map +1 -1
  153. package/dist/components/ui/highlight-text.js +4 -4
  154. package/dist/components/ui/highlight-text.js.map +1 -1
  155. package/dist/components/ui/highlight-text_module.css.map +1 -1
  156. package/dist/components/ui/hole-background.js +21 -21
  157. package/dist/components/ui/hole-background.js.map +1 -1
  158. package/dist/components/ui/hole-background_module.css.map +1 -1
  159. package/dist/components/ui/hover-card.js +3 -3
  160. package/dist/components/ui/hover-card.js.map +1 -1
  161. package/dist/components/ui/hover-card_module.css.map +1 -1
  162. package/dist/components/ui/input-group.js +7 -7
  163. package/dist/components/ui/input-group.js.map +1 -1
  164. package/dist/components/ui/input-group_module.css.map +1 -1
  165. package/dist/components/ui/input-otp.d.ts +3 -3
  166. package/dist/components/ui/input-otp.d.ts.map +1 -1
  167. package/dist/components/ui/input-otp.js +6 -6
  168. package/dist/components/ui/input-otp.js.map +1 -1
  169. package/dist/components/ui/input-otp_module.css.map +1 -1
  170. package/dist/components/ui/input.js +2 -2
  171. package/dist/components/ui/input.js.map +1 -1
  172. package/dist/components/ui/input_module.css.map +1 -1
  173. package/dist/components/ui/item.d.ts +1 -1
  174. package/dist/components/ui/item.d.ts.map +1 -1
  175. package/dist/components/ui/item.js +13 -13
  176. package/dist/components/ui/item.js.map +1 -1
  177. package/dist/components/ui/item_module.css.map +1 -1
  178. package/dist/components/ui/kbd.js +3 -3
  179. package/dist/components/ui/kbd.js.map +1 -1
  180. package/dist/components/ui/kbd_module.css.map +1 -1
  181. package/dist/components/ui/label.js +2 -2
  182. package/dist/components/ui/label.js.map +1 -1
  183. package/dist/components/ui/label_module.css.map +1 -1
  184. package/dist/components/ui/list-skeleton.js +2 -2
  185. package/dist/components/ui/list-skeleton.js.map +1 -1
  186. package/dist/components/ui/list-skeleton_module.css.map +1 -1
  187. package/dist/components/ui/loading-overlay.js +2 -2
  188. package/dist/components/ui/loading-overlay.js.map +1 -1
  189. package/dist/components/ui/loading-overlay_module.css.map +1 -1
  190. package/dist/components/ui/menubar.d.ts +11 -13
  191. package/dist/components/ui/menubar.d.ts.map +1 -1
  192. package/dist/components/ui/menubar.js +4 -4
  193. package/dist/components/ui/menubar.js.map +1 -1
  194. package/dist/components/ui/menubar_module.css.map +1 -1
  195. package/dist/components/ui/meter.d.ts +8 -24
  196. package/dist/components/ui/meter.d.ts.map +1 -1
  197. package/dist/components/ui/meter.js +23 -19
  198. package/dist/components/ui/meter.js.map +1 -1
  199. package/dist/components/ui/meter_module.css.map +1 -1
  200. package/dist/components/ui/navigation-menu.d.ts +3 -12
  201. package/dist/components/ui/navigation-menu.d.ts.map +1 -1
  202. package/dist/components/ui/navigation-menu.js +15 -12
  203. package/dist/components/ui/navigation-menu.js.map +1 -1
  204. package/dist/components/ui/navigation-menu_module.css +1 -1
  205. package/dist/components/ui/navigation-menu_module.css.map +1 -1
  206. package/dist/components/ui/number-field.d.ts +6 -12
  207. package/dist/components/ui/number-field.d.ts.map +1 -1
  208. package/dist/components/ui/number-field.js +3 -3
  209. package/dist/components/ui/number-field.js.map +1 -1
  210. package/dist/components/ui/number-field_module.css.map +1 -1
  211. package/dist/components/ui/pagination.js +8 -8
  212. package/dist/components/ui/pagination.js.map +1 -1
  213. package/dist/components/ui/pagination_module.css.map +1 -1
  214. package/dist/components/ui/popover.js +5 -5
  215. package/dist/components/ui/popover.js.map +1 -1
  216. package/dist/components/ui/popover_module.css.map +1 -1
  217. package/dist/components/ui/progress.d.ts +1 -4
  218. package/dist/components/ui/progress.d.ts.map +1 -1
  219. package/dist/components/ui/progress.js +10 -9
  220. package/dist/components/ui/progress.js.map +1 -1
  221. package/dist/components/ui/progress_module.css.map +1 -1
  222. package/dist/components/ui/radio-group.d.ts +2 -4
  223. package/dist/components/ui/radio-group.d.ts.map +1 -1
  224. package/dist/components/ui/radio-group.js +3 -3
  225. package/dist/components/ui/radio-group.js.map +1 -1
  226. package/dist/components/ui/radio-group_module.css.map +1 -1
  227. package/dist/components/ui/resizable.d.ts +13 -29
  228. package/dist/components/ui/resizable.d.ts.map +1 -1
  229. package/dist/components/ui/resizable.js +8 -7
  230. package/dist/components/ui/resizable.js.map +1 -1
  231. package/dist/components/ui/resizable_module.css.map +1 -1
  232. package/dist/components/ui/ripple-button.js +9 -9
  233. package/dist/components/ui/ripple-button.js.map +1 -1
  234. package/dist/components/ui/ripple-button_module.css.map +1 -1
  235. package/dist/components/ui/scratcher.d.ts +1 -1
  236. package/dist/components/ui/scratcher.d.ts.map +1 -1
  237. package/dist/components/ui/scratcher.js +5 -4
  238. package/dist/components/ui/scratcher.js.map +1 -1
  239. package/dist/components/ui/scratcher_module.css.map +1 -1
  240. package/dist/components/ui/scroll-area.d.ts +2 -4
  241. package/dist/components/ui/scroll-area.d.ts.map +1 -1
  242. package/dist/components/ui/scroll-area.js +2 -2
  243. package/dist/components/ui/scroll-area.js.map +1 -1
  244. package/dist/components/ui/scroll-area_module.css.map +1 -1
  245. package/dist/components/ui/select.js +4 -4
  246. package/dist/components/ui/select.js.map +1 -1
  247. package/dist/components/ui/select_module.css.map +1 -1
  248. package/dist/components/ui/separator.d.ts +1 -4
  249. package/dist/components/ui/separator.d.ts.map +1 -1
  250. package/dist/components/ui/separator.js +9 -8
  251. package/dist/components/ui/separator.js.map +1 -1
  252. package/dist/components/ui/separator_module.css.map +1 -1
  253. package/dist/components/ui/sheet.d.ts.map +1 -1
  254. package/dist/components/ui/sheet.js +6 -6
  255. package/dist/components/ui/sheet.js.map +1 -1
  256. package/dist/components/ui/sheet_module.css.map +1 -1
  257. package/dist/components/ui/sidebar.d.ts +1 -1
  258. package/dist/components/ui/sidebar.d.ts.map +1 -1
  259. package/dist/components/ui/sidebar.js +36 -36
  260. package/dist/components/ui/sidebar.js.map +1 -1
  261. package/dist/components/ui/sidebar_module.css.map +1 -1
  262. package/dist/components/ui/skeleton.js +2 -2
  263. package/dist/components/ui/skeleton.js.map +1 -1
  264. package/dist/components/ui/skeleton_module.css.map +1 -1
  265. package/dist/components/ui/slider.js +2 -2
  266. package/dist/components/ui/slider.js.map +1 -1
  267. package/dist/components/ui/slider_module.css.map +1 -1
  268. package/dist/components/ui/spinner.js +2 -2
  269. package/dist/components/ui/spinner.js.map +1 -1
  270. package/dist/components/ui/spinner_module.css.map +1 -1
  271. package/dist/components/ui/stepper.js +2 -2
  272. package/dist/components/ui/stepper.js.map +1 -1
  273. package/dist/components/ui/stepper_module.css.map +1 -1
  274. package/dist/components/ui/switch.js +2 -2
  275. package/dist/components/ui/switch.js.map +1 -1
  276. package/dist/components/ui/switch_module.css.map +1 -1
  277. package/dist/components/ui/table-skeleton.js +2 -2
  278. package/dist/components/ui/table-skeleton.js.map +1 -1
  279. package/dist/components/ui/table-skeleton_module.css.map +1 -1
  280. package/dist/components/ui/table.js +9 -9
  281. package/dist/components/ui/table.js.map +1 -1
  282. package/dist/components/ui/table_module.css.map +1 -1
  283. package/dist/components/ui/tabs.js +3 -3
  284. package/dist/components/ui/tabs.js.map +1 -1
  285. package/dist/components/ui/tabs_module.css.map +1 -1
  286. package/dist/components/ui/textarea.js +2 -2
  287. package/dist/components/ui/textarea.js.map +1 -1
  288. package/dist/components/ui/textarea_module.css.map +1 -1
  289. package/dist/components/ui/timeline.js +5 -5
  290. package/dist/components/ui/timeline.js.map +1 -1
  291. package/dist/components/ui/timeline_module.css.map +1 -1
  292. package/dist/components/ui/{sonner.d.ts → toast.d.ts} +15 -6
  293. package/dist/components/ui/toast.d.ts.map +1 -0
  294. package/dist/components/ui/{sonner.js → toast.js} +43 -42
  295. package/dist/components/ui/toast.js.map +1 -0
  296. package/dist/components/ui/toast.module.js +34 -0
  297. package/dist/components/ui/toast.module.js.map +1 -0
  298. package/dist/components/ui/{sonner_module.css → toast_module.css} +35 -35
  299. package/dist/components/ui/toast_module.css.map +1 -0
  300. package/dist/components/ui/toggle-group.d.ts +2 -8
  301. package/dist/components/ui/toggle-group.d.ts.map +1 -1
  302. package/dist/components/ui/toggle-group.js +14 -12
  303. package/dist/components/ui/toggle-group.js.map +1 -1
  304. package/dist/components/ui/toggle-group_module.css.map +1 -1
  305. package/dist/components/ui/toggle.js +2 -2
  306. package/dist/components/ui/toggle.js.map +1 -1
  307. package/dist/components/ui/toggle_module.css.map +1 -1
  308. package/dist/components/ui/toolbar.d.ts +10 -30
  309. package/dist/components/ui/toolbar.d.ts.map +1 -1
  310. package/dist/components/ui/toolbar.js +28 -23
  311. package/dist/components/ui/toolbar.js.map +1 -1
  312. package/dist/components/ui/toolbar_module.css.map +1 -1
  313. package/dist/components/ui/tooltip.js +4 -4
  314. package/dist/components/ui/tooltip.js.map +1 -1
  315. package/dist/components/ui/tooltip_module.css.map +1 -1
  316. package/dist/components/ui/typewriter.js +4 -4
  317. package/dist/components/ui/typewriter.js.map +1 -1
  318. package/dist/components/ui/typewriter_module.css.map +1 -1
  319. package/dist/components/ui/visually-hidden.js +2 -2
  320. package/dist/components/ui/visually-hidden.js.map +1 -1
  321. package/dist/components/ui/visually-hidden_module.css.map +1 -1
  322. package/dist/hooks/useAnnounce.js +5 -5
  323. package/dist/hooks/useAnnounce.js.map +1 -1
  324. package/dist/hooks/useClipboard.d.ts +77 -0
  325. package/dist/hooks/useClipboard.d.ts.map +1 -0
  326. package/dist/hooks/useClipboard.js +42 -0
  327. package/dist/hooks/useClipboard.js.map +1 -0
  328. package/dist/hooks/useControllableState.d.ts +54 -0
  329. package/dist/hooks/useControllableState.d.ts.map +1 -0
  330. package/dist/hooks/useControllableState.js +29 -0
  331. package/dist/hooks/useControllableState.js.map +1 -0
  332. package/dist/hooks/useDebounce.d.ts +33 -0
  333. package/dist/hooks/useDebounce.d.ts.map +1 -0
  334. package/dist/hooks/useDebounce.js +20 -0
  335. package/dist/hooks/useDebounce.js.map +1 -0
  336. package/dist/hooks/useEventCallback.d.ts +34 -0
  337. package/dist/hooks/useEventCallback.d.ts.map +1 -0
  338. package/dist/hooks/useEventCallback.js +12 -0
  339. package/dist/hooks/useEventCallback.js.map +1 -0
  340. package/dist/hooks/useFocusManager.js +6 -6
  341. package/dist/hooks/useFocusManager.js.map +1 -1
  342. package/dist/hooks/useFocusVisible.js +5 -5
  343. package/dist/hooks/useFocusVisible.js.map +1 -1
  344. package/dist/hooks/useId.d.ts +30 -0
  345. package/dist/hooks/useId.d.ts.map +1 -0
  346. package/dist/hooks/useId.js +9 -0
  347. package/dist/hooks/useId.js.map +1 -0
  348. package/dist/hooks/useIntersectionObserver.d.ts +51 -0
  349. package/dist/hooks/useIntersectionObserver.d.ts.map +1 -0
  350. package/dist/hooks/useIntersectionObserver.js +25 -0
  351. package/dist/hooks/useIntersectionObserver.js.map +1 -0
  352. package/dist/hooks/useInterval.d.ts +55 -0
  353. package/dist/hooks/useInterval.d.ts.map +1 -0
  354. package/dist/hooks/useInterval.js +24 -0
  355. package/dist/hooks/useInterval.js.map +1 -0
  356. package/dist/hooks/useLocalStorage.d.ts +43 -0
  357. package/dist/hooks/useLocalStorage.d.ts.map +1 -0
  358. package/dist/hooks/useLocalStorage.js +53 -0
  359. package/dist/hooks/useLocalStorage.js.map +1 -0
  360. package/dist/hooks/useMediaQuery.js +3 -3
  361. package/dist/hooks/useMediaQuery.js.map +1 -1
  362. package/dist/hooks/useMergedRefs.d.ts +27 -0
  363. package/dist/hooks/useMergedRefs.d.ts.map +1 -0
  364. package/dist/hooks/useMergedRefs.js +11 -0
  365. package/dist/hooks/useMergedRefs.js.map +1 -0
  366. package/dist/hooks/useOnClickOutside.d.ts +32 -0
  367. package/dist/hooks/useOnClickOutside.d.ts.map +1 -0
  368. package/dist/hooks/useOnClickOutside.js +23 -0
  369. package/dist/hooks/useOnClickOutside.js.map +1 -0
  370. package/dist/hooks/usePrevious.d.ts +33 -0
  371. package/dist/hooks/usePrevious.d.ts.map +1 -0
  372. package/dist/hooks/usePrevious.js +14 -0
  373. package/dist/hooks/usePrevious.js.map +1 -0
  374. package/dist/hooks/useThrottle.d.ts +37 -0
  375. package/dist/hooks/useThrottle.d.ts.map +1 -0
  376. package/dist/hooks/useThrottle.js +34 -0
  377. package/dist/hooks/useThrottle.js.map +1 -0
  378. package/dist/hooks/useTimeout.d.ts +28 -0
  379. package/dist/hooks/useTimeout.d.ts.map +1 -0
  380. package/dist/hooks/useTimeout.js +24 -0
  381. package/dist/hooks/useTimeout.js.map +1 -0
  382. package/dist/index.css.map +1 -1
  383. package/dist/index.d.ts +17 -3
  384. package/dist/index.d.ts.map +1 -1
  385. package/dist/index.js +15 -1
  386. package/dist/lib/utilities.d.ts +2 -3
  387. package/dist/lib/utilities.d.ts.map +1 -1
  388. package/dist/lib/utilities.js.map +1 -1
  389. package/dist/motion/Collapse.js +2 -2
  390. package/dist/motion/Collapse.js.map +1 -1
  391. package/dist/motion/Collapse_module.css.map +1 -1
  392. package/dist/motion/tokens.js +5 -5
  393. package/dist/motion/tokens.js.map +1 -1
  394. package/package.json +88 -10
  395. package/src/components/ui/alert-dialog.tsx +15 -8
  396. package/src/components/ui/avatar.tsx +9 -6
  397. package/src/components/ui/calendar.tsx +9 -14
  398. package/src/components/ui/carousel.tsx +2 -0
  399. package/src/components/ui/chart.tsx +65 -62
  400. package/src/components/ui/checkbox-group.tsx +4 -5
  401. package/src/components/ui/checkbox.tsx +10 -2
  402. package/src/components/ui/collapsible.tsx +1 -0
  403. package/src/components/ui/combobox.module.css +158 -0
  404. package/src/components/ui/combobox.tsx +569 -0
  405. package/src/components/ui/command.tsx +31 -15
  406. package/src/components/ui/context-menu.tsx +3 -0
  407. package/src/components/ui/drawer.tsx +2 -0
  408. package/src/components/ui/dropdown-menu.tsx +3 -0
  409. package/src/components/ui/dropdrawer.tsx +80 -62
  410. package/src/components/ui/form.tsx +28 -3
  411. package/src/components/ui/input-otp.tsx +3 -3
  412. package/src/components/ui/menubar.tsx +9 -10
  413. package/src/components/ui/meter.tsx +16 -17
  414. package/src/components/ui/navigation-menu.tsx +41 -33
  415. package/src/components/ui/number-field.tsx +6 -13
  416. package/src/components/ui/progress.tsx +3 -2
  417. package/src/components/ui/radio-group.tsx +2 -5
  418. package/src/components/ui/resizable.tsx +15 -18
  419. package/src/components/ui/scratcher.tsx +6 -10
  420. package/src/components/ui/scroll-area.tsx +2 -5
  421. package/src/components/ui/separator.tsx +4 -3
  422. package/src/components/ui/sheet.tsx +3 -0
  423. package/src/components/ui/sidebar.tsx +1 -0
  424. package/src/components/ui/{sonner.module.css → toast.module.css} +1 -1
  425. package/src/components/ui/{sonner.tsx → toast.tsx} +22 -14
  426. package/src/components/ui/toggle-group.tsx +6 -4
  427. package/src/components/ui/toolbar.tsx +20 -21
  428. package/src/hooks/useClipboard.tsx +137 -0
  429. package/src/hooks/useControllableState.tsx +81 -0
  430. package/src/hooks/useDebounce.tsx +50 -0
  431. package/src/hooks/useEventCallback.tsx +47 -0
  432. package/src/hooks/useId.tsx +36 -0
  433. package/src/hooks/useIntersectionObserver.tsx +81 -0
  434. package/src/hooks/useInterval.tsx +80 -0
  435. package/src/hooks/useLocalStorage.tsx +111 -0
  436. package/src/hooks/useMergedRefs.tsx +48 -0
  437. package/src/hooks/useOnClickOutside.tsx +55 -0
  438. package/src/hooks/usePrevious.tsx +44 -0
  439. package/src/hooks/useThrottle.tsx +78 -0
  440. package/src/hooks/useTimeout.tsx +51 -0
  441. package/src/index.ts +27 -4
  442. package/src/lib/utilities.ts +4 -4
  443. package/src/motion/tokens.ts +4 -4
  444. package/src/stories/DesignPrinciples.mdx +48 -0
  445. package/src/stories/GettingStarted.mdx +92 -0
  446. package/src/stories/Welcome.mdx +44 -0
  447. package/dist/components/ui/sonner.d.ts.map +0 -1
  448. package/dist/components/ui/sonner.js.map +0 -1
  449. package/dist/components/ui/sonner.module.js +0 -34
  450. package/dist/components/ui/sonner.module.js.map +0 -1
  451. package/dist/components/ui/sonner_module.css.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"components/ui/tabs.js","sources":["../../../src/components/ui/tabs.tsx"],"sourcesContent":["\"use client\";\r\n\r\nimport {mergeProps} from \"@base-ui/react/merge-props\";\r\nimport {Tabs as BaseTabs} from \"@base-ui/react/tabs\";\r\nimport {useRender} from \"@base-ui/react/use-render\";\r\nimport * as React from \"react\";\r\n\r\nimport {cn} from \"@/lib/utilities\";\r\nimport styles from \"./tabs.module.css\";\r\n\r\ninterface TabsProps extends Omit<React.ComponentPropsWithRef<typeof BaseTabs.Root>, \"className\"> {\r\n /** Additional CSS classes merged with the tabs root styles. @default undefined */\r\n className?: string;\r\n}\r\n\r\ninterface TabsListProps extends Omit<React.ComponentPropsWithRef<typeof BaseTabs.List>, \"className\"> {\r\n /** Additional CSS classes merged with the tabs list styles. @default undefined */\r\n className?: string;\r\n}\r\n\r\ninterface TabsTriggerProps extends Omit<React.ComponentPropsWithRef<typeof BaseTabs.Tab>, \"className\"> {\r\n /** Additional CSS classes merged with the individual tab trigger styles. @default undefined */\r\n className?: string;\r\n}\r\n\r\ninterface TabsContentProps extends Omit<React.ComponentPropsWithRef<typeof BaseTabs.Panel>, \"className\"> {\r\n /** Additional CSS classes merged with the tab panel styles. @default undefined */\r\n className?: string;\r\n}\r\n\r\n/**\r\n * Coordinates a tabbed interface for switching between related panels.\r\n *\r\n * @remarks\r\n * - Renders a `<div>` element by default\r\n * - Built on {@link https://base-ui.com/react/components/tabs | Base UI Tabs}\r\n * - Supports the `render` prop for element composition\r\n * - Styling via CSS Modules with `--ac-*` custom properties\r\n *\r\n * @example Basic usage\r\n * ```tsx\r\n * <Tabs defaultValue=\"overview\">\r\n * <TabsList>\r\n * <TabsTrigger value=\"overview\">Overview</TabsTrigger>\r\n * </TabsList>\r\n * <TabsContent value=\"overview\">Content</TabsContent>\r\n * </Tabs>\r\n * ```\r\n *\r\n * @see {@link https://base-ui.com/react/components/tabs | Base UI Documentation}\r\n */\r\nfunction Tabs(props: Readonly<Tabs.Props>): React.ReactElement {\r\n const {className, children, render, ...otherProps} = props;\r\n\r\n return (\r\n <BaseTabs.Root\r\n {...otherProps}\r\n render={useRender({\r\n defaultTagName: \"div\",\r\n render: render as never,\r\n props: mergeProps({className: cn(styles.root, className)}, {}),\r\n })}>\r\n {children}\r\n </BaseTabs.Root>\r\n );\r\n}\r\nTabs.displayName = \"Tabs\";\r\n\r\n/**\r\n * Renders the tab list along with the shared active indicator.\r\n *\r\n * @remarks\r\n * - Renders a `<div>` element by default\r\n * - Built on {@link https://base-ui.com/react/components/tabs | Base UI Tabs}\r\n * - Supports the `render` prop for element composition\r\n * - Styling via CSS Modules with `--ac-*` custom properties\r\n *\r\n * @example Basic usage\r\n * ```tsx\r\n * <TabsList>\r\n * <TabsTrigger value=\"overview\">Overview</TabsTrigger>\r\n * </TabsList>\r\n * ```\r\n *\r\n * @see {@link https://base-ui.com/react/components/tabs | Base UI Documentation}\r\n */\r\nfunction TabsList(props: Readonly<TabsList.Props>): React.ReactElement {\r\n const {className, children, render, ...otherProps} = props;\r\n\r\n return (\r\n <BaseTabs.List\r\n {...otherProps}\r\n render={useRender({\r\n defaultTagName: \"div\",\r\n render: render as never,\r\n props: mergeProps({className: cn(styles.list, className)}, {}),\r\n })}>\r\n {children}\r\n <BaseTabs.Indicator className={styles.indicator} />\r\n </BaseTabs.List>\r\n );\r\n}\r\nTabsList.displayName = \"TabsList\";\r\n\r\n/**\r\n * Activates a specific tab panel within the surrounding tabs root.\r\n *\r\n * @remarks\r\n * - Renders a `<button>` element by default\r\n * - Built on {@link https://base-ui.com/react/components/tabs | Base UI Tabs}\r\n * - Supports the `render` prop for element composition\r\n * - Styling via CSS Modules with `--ac-*` custom properties\r\n *\r\n * @example Basic usage\r\n * ```tsx\r\n * <TabsTrigger value=\"overview\">Overview</TabsTrigger>\r\n * ```\r\n *\r\n * @see {@link https://base-ui.com/react/components/tabs | Base UI Documentation}\r\n */\r\nconst TabsTrigger = React.forwardRef<React.ComponentRef<typeof BaseTabs.Tab>, TabsTrigger.Props>(\r\n (props: Readonly<TabsTrigger.Props>, ref): React.ReactElement => {\r\n const {className, children, render, ...otherProps} = props;\r\n\r\n return (\r\n <BaseTabs.Tab\r\n ref={ref}\r\n {...otherProps}\r\n render={useRender({\r\n defaultTagName: \"button\",\r\n render: render as never,\r\n props: mergeProps({className: cn(styles.tab, className)}, {}),\r\n })}>\r\n {children}\r\n </BaseTabs.Tab>\r\n );\r\n },\r\n);\r\nTabsTrigger.displayName = \"TabsTrigger\";\r\n\r\n/**\r\n * Renders the content panel associated with the active tab.\r\n *\r\n * @remarks\r\n * - Renders a `<div>` element by default\r\n * - Built on {@link https://base-ui.com/react/components/tabs | Base UI Tabs}\r\n * - Supports the `render` prop for element composition\r\n * - Styling via CSS Modules with `--ac-*` custom properties\r\n *\r\n * @example Basic usage\r\n * ```tsx\r\n * <TabsContent value=\"overview\">Content</TabsContent>\r\n * ```\r\n *\r\n * @see {@link https://base-ui.com/react/components/tabs | Base UI Documentation}\r\n */\r\nconst TabsContent = React.forwardRef<React.ComponentRef<typeof BaseTabs.Panel>, TabsContent.Props>(\r\n (props: Readonly<TabsContent.Props>, ref): React.ReactElement => {\r\n const {className, children, render, ...otherProps} = props;\r\n\r\n return (\r\n <BaseTabs.Panel\r\n ref={ref}\r\n {...otherProps}\r\n render={useRender({\r\n defaultTagName: \"div\",\r\n render: render as never,\r\n props: mergeProps({className: cn(styles.panel, className)}, {}),\r\n })}>\r\n {children}\r\n </BaseTabs.Panel>\r\n );\r\n },\r\n);\r\nTabsContent.displayName = \"TabsContent\";\r\n\r\n// eslint-disable-next-line no-redeclare -- required for the canonical component namespace typing API\r\nnamespace Tabs {\r\n export type Props = TabsProps;\r\n export type State = BaseTabs.Root.State;\r\n}\r\n\r\n// eslint-disable-next-line no-redeclare -- required for the canonical component namespace typing API\r\nnamespace TabsList {\r\n export type Props = TabsListProps;\r\n export type State = BaseTabs.List.State;\r\n}\r\n\r\n// eslint-disable-next-line no-redeclare -- required for the canonical component namespace typing API\r\nnamespace TabsTrigger {\r\n export type Props = TabsTriggerProps;\r\n export type State = BaseTabs.Tab.State;\r\n}\r\n\r\n// eslint-disable-next-line no-redeclare -- required for the canonical component namespace typing API\r\nnamespace TabsContent {\r\n export type Props = TabsContentProps;\r\n export type State = BaseTabs.Panel.State;\r\n}\r\n\r\nexport {Tabs, TabsContent, TabsList, TabsTrigger};\r\n"],"names":["Tabs","props","className","children","render","otherProps","BaseTabs","useRender","mergeProps","cn","styles","TabsList","TabsTrigger","React","ref","TabsContent"],"mappings":";;;;;;;;AAmDA,SAASA,UAAKC,KAA2B;IACvC,MAAM,EAACC,SAAS,EAAEC,QAAQ,EAAEC,MAAM,EAAE,GAAGC,YAAW,GAAGJ;IAErD,OAAO,WAAP,GACE,IAACK,KAAAA,IAAa;QACX,GAAGD,UAAU;QACd,QAAQE,UAAU;YAChB,gBAAgB;YAChB,QAAQH;YACR,OAAOI,WAAW;gBAAC,WAAWC,GAAGC,YAAAA,IAAW,EAAER;YAAU,GAAG,CAAC;QAC9D;kBACCC;;AAGP;AACAH,UAAK,WAAW,GAAG;AAoBnB,SAASW,SAASV,KAA+B;IAC/C,MAAM,EAACC,SAAS,EAAEC,QAAQ,EAAEC,MAAM,EAAE,GAAGC,YAAW,GAAGJ;IAErD,OAAO,WAAP,GACE,KAACK,KAAAA,IAAa;QACX,GAAGD,UAAU;QACd,QAAQE,UAAU;YAChB,gBAAgB;YAChB,QAAQH;YACR,OAAOI,WAAW;gBAAC,WAAWC,GAAGC,YAAAA,IAAW,EAAER;YAAU,GAAG,CAAC;QAC9D;;YACCC;0BACD,IAACG,KAAAA,SAAkB;gBAAC,WAAWI,YAAAA,SAAgB;;;;AAGrD;AACAC,SAAS,WAAW,GAAG;AAkBvB,MAAMC,cAAc,WAAHA,GAAGC,WAClB,CAACZ,OAAoCa;IACnC,MAAM,EAACZ,SAAS,EAAEC,QAAQ,EAAEC,MAAM,EAAE,GAAGC,YAAW,GAAGJ;IAErD,OAAO,WAAP,GACE,IAACK,KAAAA,GAAY;QACX,KAAKQ;QACJ,GAAGT,UAAU;QACd,QAAQE,UAAU;YAChB,gBAAgB;YAChB,QAAQH;YACR,OAAOI,WAAW;gBAAC,WAAWC,GAAGC,YAAAA,GAAU,EAAER;YAAU,GAAG,CAAC;QAC7D;kBACCC;;AAGP;AAEFS,YAAY,WAAW,GAAG;AAkB1B,MAAMG,cAAc,WAAHA,GAAGF,WAClB,CAACZ,OAAoCa;IACnC,MAAM,EAACZ,SAAS,EAAEC,QAAQ,EAAEC,MAAM,EAAE,GAAGC,YAAW,GAAGJ;IAErD,OAAO,WAAP,GACE,IAACK,KAAAA,KAAc;QACb,KAAKQ;QACJ,GAAGT,UAAU;QACd,QAAQE,UAAU;YAChB,gBAAgB;YAChB,QAAQH;YACR,OAAOI,WAAW;gBAAC,WAAWC,GAAGC,YAAAA,KAAY,EAAER;YAAU,GAAG,CAAC;QAC/D;kBACCC;;AAGP;AAEFY,YAAY,WAAW,GAAG"}
1
+ {"version":3,"file":"components/ui/tabs.js","sources":["../../../src/components/ui/tabs.tsx"],"sourcesContent":["\"use client\";\r\n\r\nimport {mergeProps} from \"@base-ui/react/merge-props\";\r\nimport {Tabs as BaseTabs} from \"@base-ui/react/tabs\";\r\nimport {useRender} from \"@base-ui/react/use-render\";\r\nimport * as React from \"react\";\r\n\r\nimport {cn} from \"@/lib/utilities\";\r\nimport styles from \"./tabs.module.css\";\r\n\r\ninterface TabsProps extends Omit<React.ComponentPropsWithRef<typeof BaseTabs.Root>, \"className\"> {\r\n /** Additional CSS classes merged with the tabs root styles. @default undefined */\r\n className?: string;\r\n}\r\n\r\ninterface TabsListProps extends Omit<React.ComponentPropsWithRef<typeof BaseTabs.List>, \"className\"> {\r\n /** Additional CSS classes merged with the tabs list styles. @default undefined */\r\n className?: string;\r\n}\r\n\r\ninterface TabsTriggerProps extends Omit<React.ComponentPropsWithRef<typeof BaseTabs.Tab>, \"className\"> {\r\n /** Additional CSS classes merged with the individual tab trigger styles. @default undefined */\r\n className?: string;\r\n}\r\n\r\ninterface TabsContentProps extends Omit<React.ComponentPropsWithRef<typeof BaseTabs.Panel>, \"className\"> {\r\n /** Additional CSS classes merged with the tab panel styles. @default undefined */\r\n className?: string;\r\n}\r\n\r\n/**\r\n * Coordinates a tabbed interface for switching between related panels.\r\n *\r\n * @remarks\r\n * - Renders a `<div>` element by default\r\n * - Built on {@link https://base-ui.com/react/components/tabs | Base UI Tabs}\r\n * - Supports the `render` prop for element composition\r\n * - Styling via CSS Modules with `--ac-*` custom properties\r\n *\r\n * @example Basic usage\r\n * ```tsx\r\n * <Tabs defaultValue=\"overview\">\r\n * <TabsList>\r\n * <TabsTrigger value=\"overview\">Overview</TabsTrigger>\r\n * </TabsList>\r\n * <TabsContent value=\"overview\">Content</TabsContent>\r\n * </Tabs>\r\n * ```\r\n *\r\n * @see {@link https://base-ui.com/react/components/tabs | Base UI Documentation}\r\n */\r\nfunction Tabs(props: Readonly<Tabs.Props>): React.ReactElement {\r\n const {className, children, render, ...otherProps} = props;\r\n\r\n return (\r\n <BaseTabs.Root\r\n {...otherProps}\r\n render={useRender({\r\n defaultTagName: \"div\",\r\n render: render as never,\r\n props: mergeProps({className: cn(styles.root, className)}, {}),\r\n })}>\r\n {children}\r\n </BaseTabs.Root>\r\n );\r\n}\r\nTabs.displayName = \"Tabs\";\r\n\r\n/**\r\n * Renders the tab list along with the shared active indicator.\r\n *\r\n * @remarks\r\n * - Renders a `<div>` element by default\r\n * - Built on {@link https://base-ui.com/react/components/tabs | Base UI Tabs}\r\n * - Supports the `render` prop for element composition\r\n * - Styling via CSS Modules with `--ac-*` custom properties\r\n *\r\n * @example Basic usage\r\n * ```tsx\r\n * <TabsList>\r\n * <TabsTrigger value=\"overview\">Overview</TabsTrigger>\r\n * </TabsList>\r\n * ```\r\n *\r\n * @see {@link https://base-ui.com/react/components/tabs | Base UI Documentation}\r\n */\r\nfunction TabsList(props: Readonly<TabsList.Props>): React.ReactElement {\r\n const {className, children, render, ...otherProps} = props;\r\n\r\n return (\r\n <BaseTabs.List\r\n {...otherProps}\r\n render={useRender({\r\n defaultTagName: \"div\",\r\n render: render as never,\r\n props: mergeProps({className: cn(styles.list, className)}, {}),\r\n })}>\r\n {children}\r\n <BaseTabs.Indicator className={styles.indicator} />\r\n </BaseTabs.List>\r\n );\r\n}\r\nTabsList.displayName = \"TabsList\";\r\n\r\n/**\r\n * Activates a specific tab panel within the surrounding tabs root.\r\n *\r\n * @remarks\r\n * - Renders a `<button>` element by default\r\n * - Built on {@link https://base-ui.com/react/components/tabs | Base UI Tabs}\r\n * - Supports the `render` prop for element composition\r\n * - Styling via CSS Modules with `--ac-*` custom properties\r\n *\r\n * @example Basic usage\r\n * ```tsx\r\n * <TabsTrigger value=\"overview\">Overview</TabsTrigger>\r\n * ```\r\n *\r\n * @see {@link https://base-ui.com/react/components/tabs | Base UI Documentation}\r\n */\r\nconst TabsTrigger = React.forwardRef<React.ComponentRef<typeof BaseTabs.Tab>, TabsTrigger.Props>(\r\n (props: Readonly<TabsTrigger.Props>, ref): React.ReactElement => {\r\n const {className, children, render, ...otherProps} = props;\r\n\r\n return (\r\n <BaseTabs.Tab\r\n ref={ref}\r\n {...otherProps}\r\n render={useRender({\r\n defaultTagName: \"button\",\r\n render: render as never,\r\n props: mergeProps({className: cn(styles.tab, className)}, {}),\r\n })}>\r\n {children}\r\n </BaseTabs.Tab>\r\n );\r\n },\r\n);\r\nTabsTrigger.displayName = \"TabsTrigger\";\r\n\r\n/**\r\n * Renders the content panel associated with the active tab.\r\n *\r\n * @remarks\r\n * - Renders a `<div>` element by default\r\n * - Built on {@link https://base-ui.com/react/components/tabs | Base UI Tabs}\r\n * - Supports the `render` prop for element composition\r\n * - Styling via CSS Modules with `--ac-*` custom properties\r\n *\r\n * @example Basic usage\r\n * ```tsx\r\n * <TabsContent value=\"overview\">Content</TabsContent>\r\n * ```\r\n *\r\n * @see {@link https://base-ui.com/react/components/tabs | Base UI Documentation}\r\n */\r\nconst TabsContent = React.forwardRef<React.ComponentRef<typeof BaseTabs.Panel>, TabsContent.Props>(\r\n (props: Readonly<TabsContent.Props>, ref): React.ReactElement => {\r\n const {className, children, render, ...otherProps} = props;\r\n\r\n return (\r\n <BaseTabs.Panel\r\n ref={ref}\r\n {...otherProps}\r\n render={useRender({\r\n defaultTagName: \"div\",\r\n render: render as never,\r\n props: mergeProps({className: cn(styles.panel, className)}, {}),\r\n })}>\r\n {children}\r\n </BaseTabs.Panel>\r\n );\r\n },\r\n);\r\nTabsContent.displayName = \"TabsContent\";\r\n\r\n// eslint-disable-next-line no-redeclare -- required for the canonical component namespace typing API\r\nnamespace Tabs {\r\n export type Props = TabsProps;\r\n export type State = BaseTabs.Root.State;\r\n}\r\n\r\n// eslint-disable-next-line no-redeclare -- required for the canonical component namespace typing API\r\nnamespace TabsList {\r\n export type Props = TabsListProps;\r\n export type State = BaseTabs.List.State;\r\n}\r\n\r\n// eslint-disable-next-line no-redeclare -- required for the canonical component namespace typing API\r\nnamespace TabsTrigger {\r\n export type Props = TabsTriggerProps;\r\n export type State = BaseTabs.Tab.State;\r\n}\r\n\r\n// eslint-disable-next-line no-redeclare -- required for the canonical component namespace typing API\r\nnamespace TabsContent {\r\n export type Props = TabsContentProps;\r\n export type State = BaseTabs.Panel.State;\r\n}\r\n\r\nexport {Tabs, TabsContent, TabsList, TabsTrigger};\r\n"],"names":["Tabs","props","className","children","render","otherProps","BaseTabs","useRender","mergeProps","cn","styles","TabsList","TabsTrigger","React","ref","TabsContent"],"mappings":";;;;;;;;AAmDA,SAASA,UAAKC,KAA2B;IACvC,MAAM,EAACC,SAAS,EAAEC,QAAQ,EAAEC,MAAM,EAAE,GAAGC,YAAW,GAAGJ;IAErD,OAAO,WAAP,GACE,IAACK,KAAAA,IAAa;QACX,GAAGD,UAAU;QACd,QAAQE,UAAU;YAChB,gBAAgB;YAChB,QAAQH;YACR,OAAOI,WAAW;gBAAC,WAAWC,GAAGC,YAAAA,IAAW,EAAER;YAAU,GAAG,CAAC;QAC9D;kBACCC;;AAGP;AACAH,UAAK,WAAW,GAAG;AAoBnB,SAASW,SAASV,KAA+B;IAC/C,MAAM,EAACC,SAAS,EAAEC,QAAQ,EAAEC,MAAM,EAAE,GAAGC,YAAW,GAAGJ;IAErD,OAAO,WAAP,GACE,KAACK,KAAAA,IAAa;QACX,GAAGD,UAAU;QACd,QAAQE,UAAU;YAChB,gBAAgB;YAChB,QAAQH;YACR,OAAOI,WAAW;gBAAC,WAAWC,GAAGC,YAAAA,IAAW,EAAER;YAAU,GAAG,CAAC;QAC9D;;YACCC;0BACD,IAACG,KAAAA,SAAkB;gBAAC,WAAWI,YAAAA,SAAgB;;;;AAGrD;AACAC,SAAS,WAAW,GAAG;AAkBvB,MAAMC,cAAc,WAAHA,GAAGC,wBAAAA,UAAgB,CAClC,CAACZ,OAAoCa;IACnC,MAAM,EAACZ,SAAS,EAAEC,QAAQ,EAAEC,MAAM,EAAE,GAAGC,YAAW,GAAGJ;IAErD,OAAO,WAAP,GACE,IAACK,KAAAA,GAAY;QACX,KAAKQ;QACJ,GAAGT,UAAU;QACd,QAAQE,UAAU;YAChB,gBAAgB;YAChB,QAAQH;YACR,OAAOI,WAAW;gBAAC,WAAWC,GAAGC,YAAAA,GAAU,EAAER;YAAU,GAAG,CAAC;QAC7D;kBACCC;;AAGP;AAEFS,YAAY,WAAW,GAAG;AAkB1B,MAAMG,cAAc,WAAHA,GAAGF,wBAAAA,UAAgB,CAClC,CAACZ,OAAoCa;IACnC,MAAM,EAACZ,SAAS,EAAEC,QAAQ,EAAEC,MAAM,EAAE,GAAGC,YAAW,GAAGJ;IAErD,OAAO,WAAP,GACE,IAACK,KAAAA,KAAc;QACb,KAAKQ;QACJ,GAAGT,UAAU;QACd,QAAQE,UAAU;YAChB,gBAAgB;YAChB,QAAQH;YACR,OAAOI,WAAW;gBAAC,WAAWC,GAAGC,YAAAA,KAAY,EAAER;YAAU,GAAG,CAAC;QAC/D;kBACCC;;AAGP;AAEFY,YAAY,WAAW,GAAG"}
@@ -1 +1 @@
1
- {"version":3,"sources":["webpack://./home/runner/work/arolariu.ro/arolariu.ro/packages/components/src/components/ui/tabs.module.css","webpack://./src/components/ui/tabs.module.css"],"names":[],"mappings":"AADA;ECEE,yCAAyC;EACzC,UAAU;EACV,uBAAuB;EACvB,MAAM;EACN,iBAAiB;EACjB,aAAa;EACb,kBAAkB;AACpB;;AAEA;EACE,gBAAgB;EAChB,iCAAiC;EACjC,eAAe;EACf,oBAAoB;EACpB,4BAA4B;EAC5B,eAAe;EACf,gBAAgB;EAChB,iCAAiC;EACjC,2CAA2C;EAC3C,yBAAyB;EACzB,iBAAiB;EACjB,mBAAmB;EACnB,oBAAoB;EACpB,gBAAgB;EAChB,SAAS;EACT,aAAa;EACb,uBAAuB;EACvB,mBAAmB;EACnB,SAAS;EACT,gBAAgB;EAChB,aAAa;;EAEb;IACE,2BAA2B;EAC7B;;EAEA;IACE;MACE,2BAA2B;IAC7B;EACF;;EAEA;IACE,kBAAkB;;IAElB;MACE,kCAAkC;MAClC,WAAW;MACX,0BAA0B;MAC1B,iCAAiC;MACjC,oBAAoB;MACpB,kBAAkB;IACpB;EACF;AACF;;AAEA;EACE,sCAAsC;EACtC,WAAW;EACX,mCAAmC;EACnC,8BAA8B;EAC9B,UAAU;EACV,qCAAqC;EACrC,wBAAwB;EACxB,uCAAuC;EACvC,kBAAkB;EAClB,YAAY;EACZ,OAAO;AACT;;AAEA;EACE,8BAA8B;EAC9B,aAAa;EACb,kBAAkB;;EAElB;IACE,kCAAkC;IAClC,iCAAiC;IACjC,oBAAoB;EACtB;;EAEA;IACE,aAAa;EACf;AACF","sourcesContent":[".list{background-color:transparent;border-bottom:1px solid var(--ac-border);display:flex;gap:0;padding-inline:0;position:relative;z-index:0}.tab{align-items:center;appearance:none;background:none;border:0;color:var(--ac-muted-foreground);cursor:pointer;display:flex;font-family:inherit;font-size:var(--ac-text-sm);font-weight:500;height:2.25rem;justify-content:center;margin:0;outline:none;padding-block:0;padding-inline:var(--ac-space-3);transition:color var(--ac-transition-fast);user-select:none;white-space:nowrap;word-break:keep-all;&[data-active]{color:var(--ac-foreground)}@media (hover:hover){&:hover{color:var(--ac-foreground)}}&:focus-visible{position:relative;&:before{border-radius:var(--ac-radius-xs);content:\"\";inset:var(--ac-space-1) 0;outline:2px solid var(--ac-ring);outline-offset:-1px;position:absolute}}}.indicator{background-color:var(--ac-foreground);bottom:-1px;height:2px;left:0;position:absolute;transition-duration:.2s;transition-property:translate,width;transition-timing-function:ease-in-out;translate:var(--active-tab-left) 0;width:var(--active-tab-width);z-index:0}.panel{outline:none;padding-top:var(--ac-space-4);position:relative;&:focus-visible{border-radius:var(--ac-radius-md);outline:2px solid var(--ac-ring);outline-offset:-1px}&[hidden]{display:none}}",".list {\n border-bottom: 1px solid var(--ac-border);\n z-index: 0;\n background-color: #0000;\n gap: 0;\n padding-inline: 0;\n display: flex;\n position: relative;\n}\n\n.tab {\n appearance: none;\n color: var(--ac-muted-foreground);\n cursor: pointer;\n font-family: inherit;\n font-size: var(--ac-text-sm);\n height: 2.25rem;\n padding-block: 0;\n padding-inline: var(--ac-space-3);\n transition: color var(--ac-transition-fast);\n -webkit-user-select: none;\n user-select: none;\n white-space: nowrap;\n word-break: keep-all;\n background: none;\n border: 0;\n outline: none;\n justify-content: center;\n align-items: center;\n margin: 0;\n font-weight: 500;\n display: flex;\n\n &[data-active] {\n color: var(--ac-foreground);\n }\n\n @media (hover: hover) {\n &:hover {\n color: var(--ac-foreground);\n }\n }\n\n &:focus-visible {\n position: relative;\n\n &:before {\n border-radius: var(--ac-radius-xs);\n content: \"\";\n inset: var(--ac-space-1) 0;\n outline: 2px solid var(--ac-ring);\n outline-offset: -1px;\n position: absolute;\n }\n }\n}\n\n.indicator {\n background-color: var(--ac-foreground);\n height: 2px;\n translate: var(--active-tab-left) 0;\n width: var(--active-tab-width);\n z-index: 0;\n transition-property: translate, width;\n transition-duration: .2s;\n transition-timing-function: ease-in-out;\n position: absolute;\n bottom: -1px;\n left: 0;\n}\n\n.panel {\n padding-top: var(--ac-space-4);\n outline: none;\n position: relative;\n\n &:focus-visible {\n border-radius: var(--ac-radius-md);\n outline: 2px solid var(--ac-ring);\n outline-offset: -1px;\n }\n\n &[hidden] {\n display: none;\n }\n}\n"],"sourceRoot":""}
1
+ {"version":3,"sources":["webpack://./../../node_modules/@rslib/core/node_modules/@rsbuild/core/compiled/css-loader/index.js??ruleSet[1].rules[1].oneOf[2].use[1]!builtin:lightningcss-loader??ruleSet[1].rules[1].oneOf[2].use[2]!/home/runner/work/arolariu.ro/arolariu.ro/node_modules/@rslib/core/node_modules/@rsbuild/core/compiled/postcss-loader/index.js??ruleSet[1].rules[1].oneOf[2].use[3]!/home/runner/work/arolariu.ro/arolariu.ro/packages/components/src/components/ui/tabs.module.css","webpack://./src/components/ui/tabs.module.css"],"names":[],"mappings":"AAAA;ECCE,yCAAyC;EACzC,UAAU;EACV,uBAAuB;EACvB,MAAM;EACN,iBAAiB;EACjB,aAAa;EACb,kBAAkB;AACpB;;ADR4I;ECW1I,gBAAgB;EAChB,iCAAiC;EACjC,eAAe;EACf,oBAAoB;EACpB,4BAA4B;EAC5B,eAAe;EACf,gBAAgB;EAChB,iCAAiC;EACjC,2CAA2C;EAC3C,yBAAyB;EACzB,iBAAiB;EACjB,mBAAmB;EACnB,oBAAoB;EACpB,gBAAgB;EAChB,SAAS;EACT,aAAa;EACb,uBAAuB;EACvB,mBAAmB;EACnB,SAAS;EACT,gBAAgB;EAChB,aAAa;;ED/B2gB;ICkCthB,2BAA2B;EAC7B;;EDnCkkB;IAAqB;MCuCnlB,2BAA2B;IAC7B;EACF;;EDzC2nB;IC4CznB,kBAAkB;;ID5CyoB;MC+CzpB,kCAAkC;MAClC,WAAW;MACX,0BAA0B;MAC1B,iCAAiC;MACjC,oBAAoB;MACpB,kBAAkB;IACpB;EACF;AACF;;ADvDwzB;EC0DtzB,sCAAsC;EACtC,WAAW;EACX,mCAAmC;EACnC,8BAA8B;EAC9B,UAAU;EACV,qCAAqC;EACrC,wBAAwB;EACxB,uCAAuC;EACvC,kBAAkB;EAClB,YAAY;EACZ,OAAO;AACT;;ADrEukC;ECwErkC,8BAA8B;EAC9B,aAAa;EACb,kBAAkB;;ED1EunC;IC6EvoC,kCAAkC;IAClC,iCAAiC;IACjC,oBAAoB;EACtB;;EDhFgvC;ICmF9uC,aAAa;EACf;AACF","sourcesContent":[".list{background-color:transparent;border-bottom:1px solid var(--ac-border);display:flex;gap:0;padding-inline:0;position:relative;z-index:0}.tab{align-items:center;appearance:none;background:none;border:0;color:var(--ac-muted-foreground);cursor:pointer;display:flex;font-family:inherit;font-size:var(--ac-text-sm);font-weight:500;height:2.25rem;justify-content:center;margin:0;outline:none;padding-block:0;padding-inline:var(--ac-space-3);transition:color var(--ac-transition-fast);user-select:none;white-space:nowrap;word-break:keep-all;&[data-active]{color:var(--ac-foreground)}@media (hover:hover){&:hover{color:var(--ac-foreground)}}&:focus-visible{position:relative;&:before{border-radius:var(--ac-radius-xs);content:\"\";inset:var(--ac-space-1) 0;outline:2px solid var(--ac-ring);outline-offset:-1px;position:absolute}}}.indicator{background-color:var(--ac-foreground);bottom:-1px;height:2px;left:0;position:absolute;transition-duration:.2s;transition-property:translate,width;transition-timing-function:ease-in-out;translate:var(--active-tab-left) 0;width:var(--active-tab-width);z-index:0}.panel{outline:none;padding-top:var(--ac-space-4);position:relative;&:focus-visible{border-radius:var(--ac-radius-md);outline:2px solid var(--ac-ring);outline-offset:-1px}&[hidden]{display:none}}",".list {\n border-bottom: 1px solid var(--ac-border);\n z-index: 0;\n background-color: #0000;\n gap: 0;\n padding-inline: 0;\n display: flex;\n position: relative;\n}\n\n.tab {\n appearance: none;\n color: var(--ac-muted-foreground);\n cursor: pointer;\n font-family: inherit;\n font-size: var(--ac-text-sm);\n height: 2.25rem;\n padding-block: 0;\n padding-inline: var(--ac-space-3);\n transition: color var(--ac-transition-fast);\n -webkit-user-select: none;\n user-select: none;\n white-space: nowrap;\n word-break: keep-all;\n background: none;\n border: 0;\n outline: none;\n justify-content: center;\n align-items: center;\n margin: 0;\n font-weight: 500;\n display: flex;\n\n &[data-active] {\n color: var(--ac-foreground);\n }\n\n @media (hover: hover) {\n &:hover {\n color: var(--ac-foreground);\n }\n }\n\n &:focus-visible {\n position: relative;\n\n &:before {\n border-radius: var(--ac-radius-xs);\n content: \"\";\n inset: var(--ac-space-1) 0;\n outline: 2px solid var(--ac-ring);\n outline-offset: -1px;\n position: absolute;\n }\n }\n}\n\n.indicator {\n background-color: var(--ac-foreground);\n height: 2px;\n translate: var(--active-tab-left) 0;\n width: var(--active-tab-width);\n z-index: 0;\n transition-property: translate, width;\n transition-duration: .2s;\n transition-timing-function: ease-in-out;\n position: absolute;\n bottom: -1px;\n left: 0;\n}\n\n.panel {\n padding-top: var(--ac-space-4);\n outline: none;\n position: relative;\n\n &:focus-visible {\n border-radius: var(--ac-radius-md);\n outline: 2px solid var(--ac-ring);\n outline-offset: -1px;\n }\n\n &[hidden] {\n display: none;\n }\n}\n"],"sourceRoot":""}
@@ -1,8 +1,8 @@
1
1
  import { jsx } from "react/jsx-runtime";
2
- import { forwardRef } from "react";
3
2
  import { cn } from "../../lib/utilities.js";
4
3
  import textarea_module from "./textarea.module.js";
5
- const Textarea = /*#__PURE__*/ forwardRef(({ className, ...props }, ref)=>/*#__PURE__*/ jsx("textarea", {
4
+ import * as __rspack_external_react from "react";
5
+ const Textarea = /*#__PURE__*/ __rspack_external_react.forwardRef(({ className, ...props }, ref)=>/*#__PURE__*/ jsx("textarea", {
6
6
  ref: ref,
7
7
  className: cn(textarea_module.textarea, className),
8
8
  ...props
@@ -1 +1 @@
1
- {"version":3,"file":"components/ui/textarea.js","sources":["../../../src/components/ui/textarea.tsx"],"sourcesContent":["import * as React from \"react\";\r\n\r\nimport {cn} from \"@/lib/utilities\";\r\nimport styles from \"./textarea.module.css\";\r\n\r\n/**\r\n * Props for the shared textarea wrapper.\r\n */\r\ninterface TextareaProps extends React.ComponentPropsWithoutRef<\"textarea\"> {\r\n /** Additional CSS classes merged with the textarea styles. @default undefined */\r\n className?: string;\r\n}\r\n\r\n/**\r\n * Renders a multi-line text area for longer free-form text input.\r\n *\r\n * @remarks\r\n * - Renders a `<textarea>` element by default\r\n * - Built on {@link https://base-ui.com/react/components/textarea | Base UI Textarea}\r\n * - Supports the `render` prop for element composition through standard React composition patterns\r\n * - Styling via CSS Modules with `--ac-*` custom properties\r\n *\r\n * @example Basic usage\r\n * ```tsx\r\n * <Textarea placeholder=\"Add additional details\" />\r\n * ```\r\n *\r\n * @see {@link https://base-ui.com/react/components/textarea | Base UI Documentation}\r\n */\r\nconst Textarea = React.forwardRef<HTMLTextAreaElement, TextareaProps>(\r\n ({className, ...props}: Readonly<TextareaProps>, ref): React.JSX.Element => (\r\n <textarea\r\n ref={ref}\r\n className={cn(styles.textarea, className)}\r\n {...props}\r\n />\r\n ),\r\n);\r\nTextarea.displayName = \"Textarea\";\r\n\r\nexport {Textarea};\r\n"],"names":["Textarea","React","className","props","ref","cn","styles"],"mappings":";;;;AA6BA,MAAMA,WAAW,WAAHA,GAAGC,WACf,CAAC,EAACC,SAAS,EAAE,GAAGC,OAA+B,EAAEC,MAAAA,WAAAA,GAC/C,IAAC;QACC,KAAKA;QACL,WAAWC,GAAGC,gBAAAA,QAAe,EAAEJ;QAC9B,GAAGC,KAAK;;AAIfH,SAAS,WAAW,GAAG"}
1
+ {"version":3,"file":"components/ui/textarea.js","sources":["../../../src/components/ui/textarea.tsx"],"sourcesContent":["import * as React from \"react\";\r\n\r\nimport {cn} from \"@/lib/utilities\";\r\nimport styles from \"./textarea.module.css\";\r\n\r\n/**\r\n * Props for the shared textarea wrapper.\r\n */\r\ninterface TextareaProps extends React.ComponentPropsWithoutRef<\"textarea\"> {\r\n /** Additional CSS classes merged with the textarea styles. @default undefined */\r\n className?: string;\r\n}\r\n\r\n/**\r\n * Renders a multi-line text area for longer free-form text input.\r\n *\r\n * @remarks\r\n * - Renders a `<textarea>` element by default\r\n * - Built on {@link https://base-ui.com/react/components/textarea | Base UI Textarea}\r\n * - Supports the `render` prop for element composition through standard React composition patterns\r\n * - Styling via CSS Modules with `--ac-*` custom properties\r\n *\r\n * @example Basic usage\r\n * ```tsx\r\n * <Textarea placeholder=\"Add additional details\" />\r\n * ```\r\n *\r\n * @see {@link https://base-ui.com/react/components/textarea | Base UI Documentation}\r\n */\r\nconst Textarea = React.forwardRef<HTMLTextAreaElement, TextareaProps>(\r\n ({className, ...props}: Readonly<TextareaProps>, ref): React.JSX.Element => (\r\n <textarea\r\n ref={ref}\r\n className={cn(styles.textarea, className)}\r\n {...props}\r\n />\r\n ),\r\n);\r\nTextarea.displayName = \"Textarea\";\r\n\r\nexport {Textarea};\r\n"],"names":["Textarea","React","className","props","ref","cn","styles"],"mappings":";;;;AA6BA,MAAMA,WAAW,WAAHA,GAAGC,wBAAAA,UAAgB,CAC/B,CAAC,EAACC,SAAS,EAAE,GAAGC,OAA+B,EAAEC,MAAAA,WAAAA,GAC/C,IAAC;QACC,KAAKA;QACL,WAAWC,GAAGC,gBAAAA,QAAe,EAAEJ;QAC9B,GAAGC,KAAK;;AAIfH,SAAS,WAAW,GAAG"}
@@ -1 +1 @@
1
- {"version":3,"sources":["webpack://./home/runner/work/arolariu.ro/arolariu.ro/packages/components/src/components/ui/textarea.module.css","webpack://./src/components/ui/textarea.module.css"],"names":[],"mappings":"AADA;ECEE,iCAAiC;EACjC,kCAAkC;EAClC,sBAAsB;EACtB,2BAA2B;EAC3B,4BAA4B;EAC5B,mBAAmB;EACnB,4CAA4C;EAC5C,gBAAgB;EAChB,uFAAuF;EACvF,uBAAuB;EACvB,aAAa;EACb,WAAW;EACX,gBAAgB;EAChB,aAAa;;EAEb;IACE,iCAAiC;EACnC;;EAEA;IACE,4BAA4B;IAC5B,oCAAoC;EACtC;;EAEA;IACE,mBAAmB;IACnB,WAAW;EACb;AACF","sourcesContent":[".textarea{background-color:transparent;border:1px solid var(--ac-input);border-radius:var(--ac-radius-md);box-sizing:border-box;color:var(--ac-foreground);display:flex;font-size:var(--ac-text-sm);line-height:1.5;min-height:3.75rem;outline:none;padding:var(--ac-space-2) var(--ac-space-3);resize:vertical;transition:border-color var(--ac-transition-fast),box-shadow var(--ac-transition-fast);width:100%;&::placeholder{color:var(--ac-muted-foreground)}&:focus-visible{border-color:var(--ac-ring);box-shadow:0 0 0 1px var(--ac-ring)}&:disabled{cursor:not-allowed;opacity:.5}}",".textarea {\n border: 1px solid var(--ac-input);\n border-radius: var(--ac-radius-md);\n box-sizing: border-box;\n color: var(--ac-foreground);\n font-size: var(--ac-text-sm);\n min-height: 3.75rem;\n padding: var(--ac-space-2) var(--ac-space-3);\n resize: vertical;\n transition: border-color var(--ac-transition-fast),box-shadow var(--ac-transition-fast);\n background-color: #0000;\n outline: none;\n width: 100%;\n line-height: 1.5;\n display: flex;\n\n &::placeholder {\n color: var(--ac-muted-foreground);\n }\n\n &:focus-visible {\n border-color: var(--ac-ring);\n box-shadow: 0 0 0 1px var(--ac-ring);\n }\n\n &:disabled {\n cursor: not-allowed;\n opacity: .5;\n }\n}\n"],"sourceRoot":""}
1
+ {"version":3,"sources":["webpack://./../../node_modules/@rslib/core/node_modules/@rsbuild/core/compiled/css-loader/index.js??ruleSet[1].rules[1].oneOf[2].use[1]!builtin:lightningcss-loader??ruleSet[1].rules[1].oneOf[2].use[2]!/home/runner/work/arolariu.ro/arolariu.ro/node_modules/@rslib/core/node_modules/@rsbuild/core/compiled/postcss-loader/index.js??ruleSet[1].rules[1].oneOf[2].use[3]!/home/runner/work/arolariu.ro/arolariu.ro/packages/components/src/components/ui/textarea.module.css","webpack://./src/components/ui/textarea.module.css"],"names":[],"mappings":"AAAA;ECCE,iCAAiC;EACjC,kCAAkC;EAClC,sBAAsB;EACtB,2BAA2B;EAC3B,4BAA4B;EAC5B,mBAAmB;EACnB,4CAA4C;EAC5C,gBAAgB;EAChB,uFAAuF;EACvF,uBAAuB;EACvB,aAAa;EACb,WAAW;EACX,gBAAgB;EAChB,aAAa;;EDdmY;ICiB9Y,iCAAiC;EACnC;;EDlBgc;ICqB9b,4BAA4B;IAC5B,oCAAoC;EACtC;;EDvBghB;IC0B9gB,mBAAmB;IACnB,WAAW;EACb;AACF","sourcesContent":[".textarea{background-color:transparent;border:1px solid var(--ac-input);border-radius:var(--ac-radius-md);box-sizing:border-box;color:var(--ac-foreground);display:flex;font-size:var(--ac-text-sm);line-height:1.5;min-height:3.75rem;outline:none;padding:var(--ac-space-2) var(--ac-space-3);resize:vertical;transition:border-color var(--ac-transition-fast),box-shadow var(--ac-transition-fast);width:100%;&::placeholder{color:var(--ac-muted-foreground)}&:focus-visible{border-color:var(--ac-ring);box-shadow:0 0 0 1px var(--ac-ring)}&:disabled{cursor:not-allowed;opacity:.5}}",".textarea {\n border: 1px solid var(--ac-input);\n border-radius: var(--ac-radius-md);\n box-sizing: border-box;\n color: var(--ac-foreground);\n font-size: var(--ac-text-sm);\n min-height: 3.75rem;\n padding: var(--ac-space-2) var(--ac-space-3);\n resize: vertical;\n transition: border-color var(--ac-transition-fast),box-shadow var(--ac-transition-fast);\n background-color: #0000;\n outline: none;\n width: 100%;\n line-height: 1.5;\n display: flex;\n\n &::placeholder {\n color: var(--ac-muted-foreground);\n }\n\n &:focus-visible {\n border-color: var(--ac-ring);\n box-shadow: 0 0 0 1px var(--ac-ring);\n }\n\n &:disabled {\n cursor: not-allowed;\n opacity: .5;\n }\n}\n"],"sourceRoot":""}
@@ -1,29 +1,29 @@
1
1
  import { jsx } from "react/jsx-runtime";
2
- import { forwardRef } from "react";
3
2
  import { cn } from "../../lib/utilities.js";
4
3
  import timeline_module from "./timeline.module.js";
5
- const Timeline = /*#__PURE__*/ forwardRef(({ className, ...props }, ref)=>/*#__PURE__*/ jsx("div", {
4
+ import * as __rspack_external_react from "react";
5
+ const Timeline = /*#__PURE__*/ __rspack_external_react.forwardRef(({ className, ...props }, ref)=>/*#__PURE__*/ jsx("div", {
6
6
  ref: ref,
7
7
  role: "list",
8
8
  className: cn(timeline_module.timeline, className),
9
9
  ...props
10
10
  }));
11
11
  Timeline.displayName = "Timeline";
12
- const TimelineItem = /*#__PURE__*/ forwardRef(({ className, ...props }, ref)=>/*#__PURE__*/ jsx("div", {
12
+ const TimelineItem = /*#__PURE__*/ __rspack_external_react.forwardRef(({ className, ...props }, ref)=>/*#__PURE__*/ jsx("div", {
13
13
  ref: ref,
14
14
  role: "listitem",
15
15
  className: cn(timeline_module.item, className),
16
16
  ...props
17
17
  }));
18
18
  TimelineItem.displayName = "TimelineItem";
19
- const TimelineDot = /*#__PURE__*/ forwardRef(({ className, ...props }, ref)=>/*#__PURE__*/ jsx("div", {
19
+ const TimelineDot = /*#__PURE__*/ __rspack_external_react.forwardRef(({ className, ...props }, ref)=>/*#__PURE__*/ jsx("div", {
20
20
  ref: ref,
21
21
  "aria-hidden": "true",
22
22
  className: cn(timeline_module.dot, className),
23
23
  ...props
24
24
  }));
25
25
  TimelineDot.displayName = "TimelineDot";
26
- const TimelineContent = /*#__PURE__*/ forwardRef(({ className, ...props }, ref)=>/*#__PURE__*/ jsx("div", {
26
+ const TimelineContent = /*#__PURE__*/ __rspack_external_react.forwardRef(({ className, ...props }, ref)=>/*#__PURE__*/ jsx("div", {
27
27
  ref: ref,
28
28
  className: cn(timeline_module.content, className),
29
29
  ...props
@@ -1 +1 @@
1
- {"version":3,"file":"components/ui/timeline.js","sources":["../../../src/components/ui/timeline.tsx"],"sourcesContent":["import * as React from \"react\";\r\n\r\nimport {cn} from \"@/lib/utilities\";\r\nimport styles from \"./timeline.module.css\";\r\n\r\n/**\r\n * Represents the configurable props for the {@link Timeline} component.\r\n *\r\n * @remarks\r\n * Extends native `<div>` attributes so timelines can expose test hooks, ARIA metadata,\r\n * and layout overrides while delegating item composition to child components.\r\n */\r\ninterface TimelineProps extends React.HTMLAttributes<HTMLDivElement> {\r\n /**\r\n * Timeline items composed as children.\r\n */\r\n children: React.ReactNode;\r\n}\r\n\r\n/**\r\n * Represents the configurable props for the {@link TimelineItem} component.\r\n */\r\ninterface TimelineItemProps extends React.HTMLAttributes<HTMLDivElement> {\r\n /**\r\n * The composed timeline dot and content for an individual event.\r\n */\r\n children: React.ReactNode;\r\n}\r\n\r\n/**\r\n * Represents the configurable props for the {@link TimelineDot} component.\r\n */\r\ntype TimelineDotProps = React.HTMLAttributes<HTMLDivElement>;\r\n\r\n/**\r\n * Represents the configurable props for the {@link TimelineContent} component.\r\n */\r\ninterface TimelineContentProps extends React.HTMLAttributes<HTMLDivElement> {\r\n /**\r\n * Content rendered alongside the timeline marker.\r\n */\r\n children: React.ReactNode;\r\n}\r\n\r\n/**\r\n * A vertical timeline container for displaying chronological events.\r\n *\r\n * @remarks\r\n * **Rendering Context**: Server- and client-compatible presentational component.\r\n *\r\n * Compose it with {@link TimelineItem}, {@link TimelineDot}, and {@link TimelineContent}\r\n * to render milestones, release notes, audit trails, or journey steps in order.\r\n *\r\n * @example\r\n * ```tsx\r\n * <Timeline>\r\n * <TimelineItem>\r\n * <TimelineDot />\r\n * <TimelineContent>Account created</TimelineContent>\r\n * </TimelineItem>\r\n * </Timeline>\r\n * ```\r\n *\r\n * @see {@link TimelineItem}\r\n * @see {@link TimelineContent}\r\n */\r\nconst Timeline = React.forwardRef<HTMLDivElement, TimelineProps>(({className, ...props}, ref) => (\r\n <div\r\n ref={ref}\r\n role='list'\r\n className={cn(styles.timeline, className)}\r\n {...props}\r\n />\r\n));\r\nTimeline.displayName = \"Timeline\";\r\n\r\n/**\r\n * A single event row within a {@link Timeline}.\r\n *\r\n * @remarks\r\n * Renders a flex row that aligns a marker with its corresponding content block.\r\n *\r\n * @example\r\n * ```tsx\r\n * <TimelineItem>\r\n * <TimelineDot />\r\n * <TimelineContent>Invoice submitted</TimelineContent>\r\n * </TimelineItem>\r\n * ```\r\n *\r\n * @see {@link Timeline}\r\n */\r\nconst TimelineItem = React.forwardRef<HTMLDivElement, TimelineItemProps>(({className, ...props}, ref) => (\r\n <div\r\n ref={ref}\r\n role='listitem'\r\n className={cn(styles.item, className)}\r\n {...props}\r\n />\r\n));\r\nTimelineItem.displayName = \"TimelineItem\";\r\n\r\n/**\r\n * A visual marker used to indicate a timeline event point.\r\n *\r\n * @remarks\r\n * The dot is decorative by default and is removed from the accessibility tree with\r\n * `aria-hidden=\"true\"`.\r\n *\r\n * @example\r\n * ```tsx\r\n * <TimelineDot />\r\n * ```\r\n *\r\n * @see {@link TimelineItem}\r\n */\r\nconst TimelineDot = React.forwardRef<HTMLDivElement, TimelineDotProps>(({className, ...props}, ref) => (\r\n <div\r\n ref={ref}\r\n aria-hidden='true'\r\n className={cn(styles.dot, className)}\r\n {...props}\r\n />\r\n));\r\nTimelineDot.displayName = \"TimelineDot\";\r\n\r\n/**\r\n * The content container rendered beside a {@link TimelineDot}.\r\n *\r\n * @remarks\r\n * Use this wrapper for text, metadata, or richer composed content associated with a\r\n * timeline event.\r\n *\r\n * @example\r\n * ```tsx\r\n * <TimelineContent>\r\n * <strong>Version 1.0 released</strong>\r\n * </TimelineContent>\r\n * ```\r\n *\r\n * @see {@link Timeline}\r\n */\r\nconst TimelineContent = React.forwardRef<HTMLDivElement, TimelineContentProps>(({className, ...props}, ref) => (\r\n <div\r\n ref={ref}\r\n className={cn(styles.content, className)}\r\n {...props}\r\n />\r\n));\r\nTimelineContent.displayName = \"TimelineContent\";\r\n\r\nexport {Timeline, TimelineContent, TimelineDot, TimelineItem};\r\nexport type {TimelineContentProps, TimelineDotProps, TimelineItemProps, TimelineProps};\r\n"],"names":["Timeline","React","className","props","ref","cn","styles","TimelineItem","TimelineDot","TimelineContent"],"mappings":";;;;AAkEA,MAAMA,WAAW,WAAHA,GAAGC,WAAgD,CAAC,EAACC,SAAS,EAAE,GAAGC,OAAM,EAAEC,MAAAA,WAAAA,GACvF,IAAC;QACC,KAAKA;QACL,MAAK;QACL,WAAWC,GAAGC,gBAAAA,QAAe,EAAEJ;QAC9B,GAAGC,KAAK;;AAGbH,SAAS,WAAW,GAAG;AAkBvB,MAAMO,eAAe,WAAHA,GAAGN,WAAoD,CAAC,EAACC,SAAS,EAAE,GAAGC,OAAM,EAAEC,MAAAA,WAAAA,GAC/F,IAAC;QACC,KAAKA;QACL,MAAK;QACL,WAAWC,GAAGC,gBAAAA,IAAW,EAAEJ;QAC1B,GAAGC,KAAK;;AAGbI,aAAa,WAAW,GAAG;AAgB3B,MAAMC,cAAc,WAAHA,GAAGP,WAAmD,CAAC,EAACC,SAAS,EAAE,GAAGC,OAAM,EAAEC,MAAAA,WAAAA,GAC7F,IAAC;QACC,KAAKA;QACL,eAAY;QACZ,WAAWC,GAAGC,gBAAAA,GAAU,EAAEJ;QACzB,GAAGC,KAAK;;AAGbK,YAAY,WAAW,GAAG;AAkB1B,MAAMC,kBAAkB,WAAHA,GAAGR,WAAuD,CAAC,EAACC,SAAS,EAAE,GAAGC,OAAM,EAAEC,MAAAA,WAAAA,GACrG,IAAC;QACC,KAAKA;QACL,WAAWC,GAAGC,gBAAAA,OAAc,EAAEJ;QAC7B,GAAGC,KAAK;;AAGbM,gBAAgB,WAAW,GAAG"}
1
+ {"version":3,"file":"components/ui/timeline.js","sources":["../../../src/components/ui/timeline.tsx"],"sourcesContent":["import * as React from \"react\";\r\n\r\nimport {cn} from \"@/lib/utilities\";\r\nimport styles from \"./timeline.module.css\";\r\n\r\n/**\r\n * Represents the configurable props for the {@link Timeline} component.\r\n *\r\n * @remarks\r\n * Extends native `<div>` attributes so timelines can expose test hooks, ARIA metadata,\r\n * and layout overrides while delegating item composition to child components.\r\n */\r\ninterface TimelineProps extends React.HTMLAttributes<HTMLDivElement> {\r\n /**\r\n * Timeline items composed as children.\r\n */\r\n children: React.ReactNode;\r\n}\r\n\r\n/**\r\n * Represents the configurable props for the {@link TimelineItem} component.\r\n */\r\ninterface TimelineItemProps extends React.HTMLAttributes<HTMLDivElement> {\r\n /**\r\n * The composed timeline dot and content for an individual event.\r\n */\r\n children: React.ReactNode;\r\n}\r\n\r\n/**\r\n * Represents the configurable props for the {@link TimelineDot} component.\r\n */\r\ntype TimelineDotProps = React.HTMLAttributes<HTMLDivElement>;\r\n\r\n/**\r\n * Represents the configurable props for the {@link TimelineContent} component.\r\n */\r\ninterface TimelineContentProps extends React.HTMLAttributes<HTMLDivElement> {\r\n /**\r\n * Content rendered alongside the timeline marker.\r\n */\r\n children: React.ReactNode;\r\n}\r\n\r\n/**\r\n * A vertical timeline container for displaying chronological events.\r\n *\r\n * @remarks\r\n * **Rendering Context**: Server- and client-compatible presentational component.\r\n *\r\n * Compose it with {@link TimelineItem}, {@link TimelineDot}, and {@link TimelineContent}\r\n * to render milestones, release notes, audit trails, or journey steps in order.\r\n *\r\n * @example\r\n * ```tsx\r\n * <Timeline>\r\n * <TimelineItem>\r\n * <TimelineDot />\r\n * <TimelineContent>Account created</TimelineContent>\r\n * </TimelineItem>\r\n * </Timeline>\r\n * ```\r\n *\r\n * @see {@link TimelineItem}\r\n * @see {@link TimelineContent}\r\n */\r\nconst Timeline = React.forwardRef<HTMLDivElement, TimelineProps>(({className, ...props}, ref) => (\r\n <div\r\n ref={ref}\r\n role='list'\r\n className={cn(styles.timeline, className)}\r\n {...props}\r\n />\r\n));\r\nTimeline.displayName = \"Timeline\";\r\n\r\n/**\r\n * A single event row within a {@link Timeline}.\r\n *\r\n * @remarks\r\n * Renders a flex row that aligns a marker with its corresponding content block.\r\n *\r\n * @example\r\n * ```tsx\r\n * <TimelineItem>\r\n * <TimelineDot />\r\n * <TimelineContent>Invoice submitted</TimelineContent>\r\n * </TimelineItem>\r\n * ```\r\n *\r\n * @see {@link Timeline}\r\n */\r\nconst TimelineItem = React.forwardRef<HTMLDivElement, TimelineItemProps>(({className, ...props}, ref) => (\r\n <div\r\n ref={ref}\r\n role='listitem'\r\n className={cn(styles.item, className)}\r\n {...props}\r\n />\r\n));\r\nTimelineItem.displayName = \"TimelineItem\";\r\n\r\n/**\r\n * A visual marker used to indicate a timeline event point.\r\n *\r\n * @remarks\r\n * The dot is decorative by default and is removed from the accessibility tree with\r\n * `aria-hidden=\"true\"`.\r\n *\r\n * @example\r\n * ```tsx\r\n * <TimelineDot />\r\n * ```\r\n *\r\n * @see {@link TimelineItem}\r\n */\r\nconst TimelineDot = React.forwardRef<HTMLDivElement, TimelineDotProps>(({className, ...props}, ref) => (\r\n <div\r\n ref={ref}\r\n aria-hidden='true'\r\n className={cn(styles.dot, className)}\r\n {...props}\r\n />\r\n));\r\nTimelineDot.displayName = \"TimelineDot\";\r\n\r\n/**\r\n * The content container rendered beside a {@link TimelineDot}.\r\n *\r\n * @remarks\r\n * Use this wrapper for text, metadata, or richer composed content associated with a\r\n * timeline event.\r\n *\r\n * @example\r\n * ```tsx\r\n * <TimelineContent>\r\n * <strong>Version 1.0 released</strong>\r\n * </TimelineContent>\r\n * ```\r\n *\r\n * @see {@link Timeline}\r\n */\r\nconst TimelineContent = React.forwardRef<HTMLDivElement, TimelineContentProps>(({className, ...props}, ref) => (\r\n <div\r\n ref={ref}\r\n className={cn(styles.content, className)}\r\n {...props}\r\n />\r\n));\r\nTimelineContent.displayName = \"TimelineContent\";\r\n\r\nexport {Timeline, TimelineContent, TimelineDot, TimelineItem};\r\nexport type {TimelineContentProps, TimelineDotProps, TimelineItemProps, TimelineProps};\r\n"],"names":["Timeline","React","className","props","ref","cn","styles","TimelineItem","TimelineDot","TimelineContent"],"mappings":";;;;AAkEA,MAAMA,WAAW,WAAHA,GAAGC,wBAAAA,UAAgB,CAAgC,CAAC,EAACC,SAAS,EAAE,GAAGC,OAAM,EAAEC,MAAAA,WAAAA,GACvF,IAAC;QACC,KAAKA;QACL,MAAK;QACL,WAAWC,GAAGC,gBAAAA,QAAe,EAAEJ;QAC9B,GAAGC,KAAK;;AAGbH,SAAS,WAAW,GAAG;AAkBvB,MAAMO,eAAe,WAAHA,GAAGN,wBAAAA,UAAgB,CAAoC,CAAC,EAACC,SAAS,EAAE,GAAGC,OAAM,EAAEC,MAAAA,WAAAA,GAC/F,IAAC;QACC,KAAKA;QACL,MAAK;QACL,WAAWC,GAAGC,gBAAAA,IAAW,EAAEJ;QAC1B,GAAGC,KAAK;;AAGbI,aAAa,WAAW,GAAG;AAgB3B,MAAMC,cAAc,WAAHA,GAAGP,wBAAAA,UAAgB,CAAmC,CAAC,EAACC,SAAS,EAAE,GAAGC,OAAM,EAAEC,MAAAA,WAAAA,GAC7F,IAAC;QACC,KAAKA;QACL,eAAY;QACZ,WAAWC,GAAGC,gBAAAA,GAAU,EAAEJ;QACzB,GAAGC,KAAK;;AAGbK,YAAY,WAAW,GAAG;AAkB1B,MAAMC,kBAAkB,WAAHA,GAAGR,wBAAAA,UAAgB,CAAuC,CAAC,EAACC,SAAS,EAAE,GAAGC,OAAM,EAAEC,MAAAA,WAAAA,GACrG,IAAC;QACC,KAAKA;QACL,WAAWC,GAAGC,gBAAAA,OAAc,EAAEJ;QAC7B,GAAGC,KAAK;;AAGbM,gBAAgB,WAAW,GAAG"}
@@ -1 +1 @@
1
- {"version":3,"sources":["webpack://./home/runner/work/arolariu.ro/arolariu.ro/packages/components/src/components/ui/timeline.module.css","webpack://./src/components/ui/timeline.module.css"],"names":[],"mappings":"AADA;ECEE,sBAAsB;EACtB,MAAM;AACR;;AAEA;EACE,aAAa;EACb,kBAAkB;AACpB;;AAEA;EACE,sBAAsB;EACtB,iCAAiC;AACnC;;AAEA;EACE,iBAAiB;AACnB;;AAEA;EACE,kCAAkC;EAClC,WAAW;EACX,UAAU;EACV,kBAAkB;EAClB,WAAW;EACX,SAAS;EACT,cAAc;AAChB;;AAEA;EACE,sCAAsC;EACtC,mCAAmC;EACnC,kBAAkB;EAClB,cAAc;EACd,cAAc;EACd,eAAe;EACf,mBAAmB;AACrB;;AAEA;EACE,YAAY;EACZ,iCAAiC;EACjC,OAAO;AACT","sourcesContent":[".timeline{flex-direction:column;gap:0}.item,.timeline{display:flex;position:relative}.item{gap:var(--ac-space-3);padding-bottom:var(--ac-space-4)}.item:last-child{padding-bottom:0}.item:not(:last-child):before{background-color:var(--ac-border);bottom:0;content:\"\";left:.5625rem;position:absolute;top:1.5rem;width:2px}.dot{background-color:var(--ac-background);border:2px solid var(--ac-primary);border-radius:50%;flex-shrink:0;height:1.25rem;margin-top:.125rem;width:1.25rem}.content{flex:1;min-width:0;padding-bottom:var(--ac-space-1)}",".timeline {\n flex-direction: column;\n gap: 0;\n}\n\n.item, .timeline {\n display: flex;\n position: relative;\n}\n\n.item {\n gap: var(--ac-space-3);\n padding-bottom: var(--ac-space-4);\n}\n\n.item:last-child {\n padding-bottom: 0;\n}\n\n.item:not(:last-child):before {\n background-color: var(--ac-border);\n content: \"\";\n width: 2px;\n position: absolute;\n top: 1.5rem;\n bottom: 0;\n left: .5625rem;\n}\n\n.dot {\n background-color: var(--ac-background);\n border: 2px solid var(--ac-primary);\n border-radius: 50%;\n flex-shrink: 0;\n width: 1.25rem;\n height: 1.25rem;\n margin-top: .125rem;\n}\n\n.content {\n min-width: 0;\n padding-bottom: var(--ac-space-1);\n flex: 1;\n}\n"],"sourceRoot":""}
1
+ {"version":3,"sources":["webpack://./../../node_modules/@rslib/core/node_modules/@rsbuild/core/compiled/css-loader/index.js??ruleSet[1].rules[1].oneOf[2].use[1]!builtin:lightningcss-loader??ruleSet[1].rules[1].oneOf[2].use[2]!/home/runner/work/arolariu.ro/arolariu.ro/node_modules/@rslib/core/node_modules/@rsbuild/core/compiled/postcss-loader/index.js??ruleSet[1].rules[1].oneOf[2].use[3]!/home/runner/work/arolariu.ro/arolariu.ro/packages/components/src/components/ui/timeline.module.css","webpack://./src/components/ui/timeline.module.css"],"names":[],"mappings":"AAAA;ECCE,sBAAsB;EACtB,MAAM;AACR;;ADHsC;ECMpC,aAAa;EACb,kBAAkB;AACpB;;ADRqF;ECWnF,sBAAsB;EACtB,iCAAiC;AACnC;;ADbkJ;ECgBhJ,iBAAiB;AACnB;;ADjBoL;ECoBlL,kCAAkC;EAClC,WAAW;EACX,UAAU;EACV,kBAAkB;EAClB,WAAW;EACX,SAAS;EACT,cAAc;AAChB;;AD3B6T;EC8B3T,sCAAsC;EACtC,mCAAmC;EACnC,kBAAkB;EAClB,cAAc;EACd,cAAc;EACd,eAAe;EACf,mBAAmB;AACrB;;ADrC2d;ECwCzd,YAAY;EACZ,iCAAiC;EACjC,OAAO;AACT","sourcesContent":[".timeline{flex-direction:column;gap:0}.item,.timeline{display:flex;position:relative}.item{gap:var(--ac-space-3);padding-bottom:var(--ac-space-4)}.item:last-child{padding-bottom:0}.item:not(:last-child):before{background-color:var(--ac-border);bottom:0;content:\"\";left:.5625rem;position:absolute;top:1.5rem;width:2px}.dot{background-color:var(--ac-background);border:2px solid var(--ac-primary);border-radius:50%;flex-shrink:0;height:1.25rem;margin-top:.125rem;width:1.25rem}.content{flex:1;min-width:0;padding-bottom:var(--ac-space-1)}",".timeline {\n flex-direction: column;\n gap: 0;\n}\n\n.item, .timeline {\n display: flex;\n position: relative;\n}\n\n.item {\n gap: var(--ac-space-3);\n padding-bottom: var(--ac-space-4);\n}\n\n.item:last-child {\n padding-bottom: 0;\n}\n\n.item:not(:last-child):before {\n background-color: var(--ac-border);\n content: \"\";\n width: 2px;\n position: absolute;\n top: 1.5rem;\n bottom: 0;\n left: .5625rem;\n}\n\n.dot {\n background-color: var(--ac-background);\n border: 2px solid var(--ac-primary);\n border-radius: 50%;\n flex-shrink: 0;\n width: 1.25rem;\n height: 1.25rem;\n margin-top: .125rem;\n}\n\n.content {\n min-width: 0;\n padding-bottom: var(--ac-space-1);\n flex: 1;\n}\n"],"sourceRoot":""}
@@ -1,3 +1,11 @@
1
+ /**
2
+ * @fileoverview Base UI-backed toast provider and imperative toast bridge.
3
+ *
4
+ * Replaces the previous `sonner` runtime dependency while preserving the existing public exports:
5
+ * `Toaster` for container rendering and `toast` for imperative notifications used throughout the
6
+ * website and component consumers.
7
+ */
8
+ import { Toast } from "@base-ui/react/toast";
1
9
  import * as React from "react";
2
10
  type ToastPosition = "top-left" | "top-right" | "bottom-left" | "bottom-right" | "top-center" | "bottom-center";
3
11
  type ToastVariant = "default" | "success" | "error" | "info" | "warning" | "loading";
@@ -115,10 +123,11 @@ interface ToastApi {
115
123
  *
116
124
  * @see {@link https://base-ui.com/react/components/toast | Base UI Toast Docs}
117
125
  */
118
- declare function Toaster({ className, closeButton, containerAriaLabel, duration, position, style, toastOptions, visibleToasts, }: Readonly<ToasterProps>): React.JSX.Element;
119
- declare namespace Toaster {
120
- var displayName: string;
121
- }
126
+ /**
127
+ * Toaster is the root viewport container for displaying toast notifications.
128
+ * It should be rendered once at the app root level.
129
+ */
130
+ declare const Toaster: React.ForwardRefExoticComponent<ToasterProps & React.RefAttributes<HTMLDivElement>>;
122
131
  /**
123
132
  * Imperative toast API for creating transient notifications outside React render flows.
124
133
  *
@@ -134,6 +143,6 @@ declare namespace Toaster {
134
143
  * @see {@link https://base-ui.com/react/components/toast | Base UI Toast Docs}
135
144
  */
136
145
  declare const toast: ToastApi;
137
- export type { Toast } from "@base-ui/react/toast";
146
+ export type { Toast };
138
147
  export { toast, Toaster };
139
- //# sourceMappingURL=sonner.d.ts.map
148
+ //# sourceMappingURL=toast.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"toast.d.ts","sourceRoot":"","sources":["../../../src/components/ui/toast.tsx"],"names":[],"mappings":"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"}
@@ -2,28 +2,28 @@
2
2
  import { Fragment, jsx, jsxs } from "react/jsx-runtime";
3
3
  import { Toast } from "@base-ui/react/toast";
4
4
  import { AlertCircle, BellRing, CheckCircle2, Info, LoaderCircle, TriangleAlert, X } from "lucide-react";
5
- import { isValidElement, useEffect, useId } from "react";
6
5
  import { cn } from "../../lib/utilities.js";
7
- import sonner_module from "./sonner.module.js";
6
+ import toast_module from "./toast.module.js";
7
+ import * as __rspack_external_react from "react";
8
8
  const DEFAULT_TOAST_DURATION = 5000;
9
9
  const DEFAULT_TOAST_LIMIT = 3;
10
10
  const DEFAULT_TOAST_CLOSE_LABEL = "Close notification";
11
11
  const DEFAULT_VIEWPORT_ARIA_LABEL = "Notifications";
12
12
  const positionStyles = {
13
- "bottom-center": sonner_module.viewportBottomCenter,
14
- "bottom-left": sonner_module.viewportBottomLeft,
15
- "bottom-right": sonner_module.viewportBottomRight,
16
- "top-center": sonner_module.viewportTopCenter,
17
- "top-left": sonner_module.viewportTopLeft,
18
- "top-right": sonner_module.viewportTopRight
13
+ "bottom-center": toast_module.viewportBottomCenter,
14
+ "bottom-left": toast_module.viewportBottomLeft,
15
+ "bottom-right": toast_module.viewportBottomRight,
16
+ "top-center": toast_module.viewportTopCenter,
17
+ "top-left": toast_module.viewportTopLeft,
18
+ "top-right": toast_module.viewportTopRight
19
19
  };
20
20
  const variantStyles = {
21
- default: sonner_module["default"],
22
- error: sonner_module.error,
23
- info: sonner_module.info,
24
- loading: sonner_module.loading,
25
- success: sonner_module.success,
26
- warning: sonner_module.warning
21
+ default: toast_module["default"],
22
+ error: toast_module.error,
23
+ info: toast_module.info,
24
+ loading: toast_module.loading,
25
+ success: toast_module.success,
26
+ warning: toast_module.warning
27
27
  };
28
28
  const toastManager = Toast.createToastManager();
29
29
  const toastHistory = [];
@@ -180,7 +180,7 @@ function updateToast(toastId, options) {
180
180
  const normalizedToastId = String(toastId);
181
181
  const existingRecord = toastRecords.get(normalizedToastId);
182
182
  const mergedOptions = {
183
- ...existingRecord?.options ?? {},
183
+ ...existingRecord?.options,
184
184
  ...options
185
185
  };
186
186
  const variant = options.variant ?? existingRecord?.snapshot.variant ?? "default";
@@ -213,34 +213,34 @@ function isPromiseResolvedOptions(value) {
213
213
  return "object" == typeof value && null !== value && "message" in value;
214
214
  }
215
215
  function isToastAction(value) {
216
- if (/*#__PURE__*/ isValidElement(value)) return false;
216
+ if (/*#__PURE__*/ __rspack_external_react.isValidElement(value)) return false;
217
217
  return "object" == typeof value && null !== value && "label" in value && "onClick" in value;
218
218
  }
219
219
  function getVariantIcon(variant) {
220
220
  const icons = {
221
221
  default: /*#__PURE__*/ jsx(BellRing, {
222
222
  "aria-hidden": "true",
223
- className: sonner_module.icon
223
+ className: toast_module.icon
224
224
  }),
225
225
  error: /*#__PURE__*/ jsx(AlertCircle, {
226
226
  "aria-hidden": "true",
227
- className: sonner_module.icon
227
+ className: toast_module.icon
228
228
  }),
229
229
  info: /*#__PURE__*/ jsx(Info, {
230
230
  "aria-hidden": "true",
231
- className: sonner_module.icon
231
+ className: toast_module.icon
232
232
  }),
233
233
  loading: /*#__PURE__*/ jsx(LoaderCircle, {
234
234
  "aria-hidden": "true",
235
- className: cn(sonner_module.icon, sonner_module.iconSpin)
235
+ className: cn(toast_module.icon, toast_module.iconSpin)
236
236
  }),
237
237
  success: /*#__PURE__*/ jsx(CheckCircle2, {
238
238
  "aria-hidden": "true",
239
- className: sonner_module.icon
239
+ className: toast_module.icon
240
240
  }),
241
241
  warning: /*#__PURE__*/ jsx(TriangleAlert, {
242
242
  "aria-hidden": "true",
243
- className: sonner_module.icon
243
+ className: toast_module.icon
244
244
  })
245
245
  };
246
246
  return icons[variant];
@@ -249,7 +249,7 @@ function ToastActions({ toastId, action, cancel }) {
249
249
  if (!action && !cancel) return null;
250
250
  const renderAction = (value, className)=>{
251
251
  if (!value) return null;
252
- if (/*#__PURE__*/ isValidElement(value)) return value;
252
+ if (/*#__PURE__*/ __rspack_external_react.isValidElement(value)) return value;
253
253
  if (isToastAction(value)) return /*#__PURE__*/ jsx("button", {
254
254
  className: className,
255
255
  type: "button",
@@ -262,10 +262,10 @@ function ToastActions({ toastId, action, cancel }) {
262
262
  return null;
263
263
  };
264
264
  return /*#__PURE__*/ jsxs("div", {
265
- className: sonner_module.actions,
265
+ className: toast_module.actions,
266
266
  children: [
267
- renderAction(cancel, sonner_module.secondaryAction),
268
- renderAction(action, sonner_module.primaryAction)
267
+ renderAction(cancel, toast_module.secondaryAction),
268
+ renderAction(action, toast_module.primaryAction)
269
269
  ]
270
270
  });
271
271
  }
@@ -278,26 +278,26 @@ function ToastViewportContent() {
278
278
  const cancel = toastItem.data?.cancel;
279
279
  return /*#__PURE__*/ jsx(Toast.Root, {
280
280
  toast: toastItem,
281
- className: cn(sonner_module.root, variantStyles[variant], toastItem.data?.className),
281
+ className: cn(toast_module.root, variantStyles[variant], toastItem.data?.className),
282
282
  "data-variant": variant,
283
283
  style: toastItem.data?.style,
284
284
  children: /*#__PURE__*/ jsx(Toast.Content, {
285
- className: sonner_module.content,
285
+ className: toast_module.content,
286
286
  children: toastItem.data?.customContent ?? /*#__PURE__*/ jsxs(Fragment, {
287
287
  children: [
288
288
  /*#__PURE__*/ jsx("div", {
289
- className: sonner_module.leading,
289
+ className: toast_module.leading,
290
290
  children: getVariantIcon(variant)
291
291
  }),
292
292
  /*#__PURE__*/ jsxs("div", {
293
- className: sonner_module.body,
293
+ className: toast_module.body,
294
294
  children: [
295
295
  toastItem.title ? /*#__PURE__*/ jsx(Toast.Title, {
296
- className: sonner_module.title,
296
+ className: toast_module.title,
297
297
  children: toastItem.title
298
298
  }) : null,
299
299
  toastItem.description ? /*#__PURE__*/ jsx(Toast.Description, {
300
- className: cn(sonner_module.description, toastItem.data?.descriptionClassName),
300
+ className: cn(toast_module.description, toastItem.data?.descriptionClassName),
301
301
  children: toastItem.description
302
302
  }) : null,
303
303
  /*#__PURE__*/ jsx(ToastActions, {
@@ -309,10 +309,10 @@ function ToastViewportContent() {
309
309
  }),
310
310
  toastItem.data?.closeButton ? /*#__PURE__*/ jsx(Toast.Close, {
311
311
  "aria-label": toastItem.data.closeButtonAriaLabel,
312
- className: sonner_module.close,
312
+ className: toast_module.close,
313
313
  children: /*#__PURE__*/ jsx(X, {
314
314
  "aria-hidden": "true",
315
- className: sonner_module.closeIcon
315
+ className: toast_module.closeIcon
316
316
  })
317
317
  }) : null
318
318
  ]
@@ -322,9 +322,9 @@ function ToastViewportContent() {
322
322
  })
323
323
  });
324
324
  }
325
- function Toaster({ className, closeButton = true, containerAriaLabel = DEFAULT_VIEWPORT_ARIA_LABEL, duration = DEFAULT_TOAST_DURATION, position = "bottom-right", style, toastOptions, visibleToasts = DEFAULT_TOAST_LIMIT }) {
326
- const toasterId = useId();
327
- useEffect(()=>{
325
+ const toast_Toaster = /*#__PURE__*/ __rspack_external_react.forwardRef(function({ className, closeButton = true, containerAriaLabel = DEFAULT_VIEWPORT_ARIA_LABEL, duration = DEFAULT_TOAST_DURATION, position = "bottom-right", style, toastOptions, visibleToasts = DEFAULT_TOAST_LIMIT }, forwardedRef) {
326
+ const toasterId = __rspack_external_react.useId();
327
+ __rspack_external_react.useEffect(()=>{
328
328
  toasterRegistrations.set(toasterId, {
329
329
  closeButton,
330
330
  toastOptions: toastOptions ?? {}
@@ -343,15 +343,16 @@ function Toaster({ className, closeButton = true, containerAriaLabel = DEFAULT_V
343
343
  toastManager: toastManager,
344
344
  children: /*#__PURE__*/ jsx(Toast.Portal, {
345
345
  children: /*#__PURE__*/ jsx(Toast.Viewport, {
346
+ ref: forwardedRef,
346
347
  "aria-label": containerAriaLabel,
347
- className: cn(sonner_module.viewport, positionStyles[position], className),
348
+ className: cn(toast_module.viewport, positionStyles[position], className),
348
349
  style: style,
349
350
  children: /*#__PURE__*/ jsx(ToastViewportContent, {})
350
351
  })
351
352
  })
352
353
  });
353
- }
354
- Toaster.displayName = "Toaster";
354
+ });
355
+ toast_Toaster.displayName = "Toaster";
355
356
  const toast = (message, options)=>showToast(message, "default", options);
356
357
  toast.success = (message, options)=>showToast(message, "success", options);
357
358
  toast.error = (message, options)=>showToast(message, "error", options);
@@ -451,6 +452,6 @@ toast.getToasts = ()=>[
451
452
  toast.getHistory = ()=>[
452
453
  ...toastHistory
453
454
  ];
454
- export { Toaster, toast };
455
+ export { toast, toast_Toaster as Toaster };
455
456
 
456
- //# sourceMappingURL=sonner.js.map
457
+ //# sourceMappingURL=toast.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"components/ui/toast.js","sources":["../../../src/components/ui/toast.tsx"],"sourcesContent":["\"use client\";\r\n\r\n/**\r\n * @fileoverview Base UI-backed toast provider and imperative toast bridge.\r\n *\r\n * Replaces the previous `sonner` runtime dependency while preserving the existing public exports:\r\n * `Toaster` for container rendering and `toast` for imperative notifications used throughout the\r\n * website and component consumers.\r\n */\r\n\r\nimport {Toast} from \"@base-ui/react/toast\";\r\nimport {AlertCircle, BellRing, CheckCircle2, Info, LoaderCircle, TriangleAlert, X} from \"lucide-react\";\r\nimport * as React from \"react\";\r\n\r\nimport {cn} from \"@/lib/utilities\";\r\nimport styles from \"./toast.module.css\";\r\n\r\nconst DEFAULT_TOAST_DURATION = 5000;\r\nconst DEFAULT_TOAST_LIMIT = 3;\r\nconst DEFAULT_TOAST_CLOSE_LABEL = \"Close notification\";\r\nconst DEFAULT_VIEWPORT_ARIA_LABEL = \"Notifications\";\r\n\r\ntype ToastPosition = \"top-left\" | \"top-right\" | \"bottom-left\" | \"bottom-right\" | \"top-center\" | \"bottom-center\";\r\ntype ToastVariant = \"default\" | \"success\" | \"error\" | \"info\" | \"warning\" | \"loading\";\r\ntype ToastIdentifier = number | string;\r\ntype ToastRenderable = React.ReactNode | (() => React.ReactNode);\r\ntype ToastPromise<Value> = Promise<Value> | (() => Promise<Value>);\r\ntype ResolvedPromiseState = ToastRenderable | ToastPromiseResolvedOptions | undefined;\r\n\r\ninterface ToastAction {\r\n label: React.ReactNode;\r\n onClick: (event: React.MouseEvent<HTMLButtonElement>) => void;\r\n}\r\n\r\ntype ToastActionRenderable = React.ReactNode | ToastAction;\r\n\r\ninterface ToastOptions {\r\n id?: ToastIdentifier;\r\n description?: ToastRenderable;\r\n duration?: number;\r\n className?: string;\r\n descriptionClassName?: string;\r\n closeButton?: boolean;\r\n closeButtonAriaLabel?: string;\r\n style?: React.CSSProperties;\r\n priority?: \"high\" | \"low\";\r\n action?: ToastActionRenderable;\r\n cancel?: ToastActionRenderable;\r\n onDismiss?: (toast: ToastSnapshot) => void;\r\n onAutoClose?: (toast: ToastSnapshot) => void;\r\n}\r\n\r\ninterface ToastPromiseResolvedOptions extends ToastOptions {\r\n message: ToastRenderable;\r\n}\r\n\r\ntype ToastPromiseState<Value> =\r\n | ToastRenderable\r\n | ToastPromiseResolvedOptions\r\n | ((value: Value) => ToastRenderable | ToastPromiseResolvedOptions | Promise<ToastRenderable | ToastPromiseResolvedOptions>);\r\n\r\ninterface ToastPromiseOptions<Value> extends ToastOptions {\r\n loading?: ToastRenderable | ToastPromiseResolvedOptions;\r\n success?: ToastPromiseState<Value>;\r\n error?: ToastPromiseState<unknown>;\r\n finally?: () => void | Promise<void>;\r\n}\r\n\r\ninterface ToasterProps {\r\n /**\r\n * Screen position used for the toast viewport.\r\n * @default \"bottom-right\"\r\n */\r\n position?: ToastPosition;\r\n /**\r\n * Default auto-dismiss duration, in milliseconds, for each toast.\r\n * @default 5000\r\n */\r\n duration?: number;\r\n /**\r\n * Maximum number of simultaneously visible toasts.\r\n * @default 3\r\n */\r\n visibleToasts?: number;\r\n /**\r\n * Whether to render a close button for each toast by default.\r\n * @default true\r\n */\r\n closeButton?: boolean;\r\n /**\r\n * Accessible label announced for the toast viewport container.\r\n * @default \"Notifications\"\r\n */\r\n containerAriaLabel?: string;\r\n /**\r\n * Additional CSS classes merged with the toast viewport.\r\n * @default undefined\r\n */\r\n className?: string;\r\n /**\r\n * Inline styles applied to the toast viewport.\r\n * @default undefined\r\n */\r\n style?: React.CSSProperties;\r\n /**\r\n * Default options merged into each toast created while this toaster is mounted.\r\n * @default undefined\r\n */\r\n toastOptions?: ToastOptions;\r\n}\r\n\r\ninterface ToastSnapshot {\r\n id: string;\r\n variant: ToastVariant;\r\n title?: React.ReactNode;\r\n description?: React.ReactNode;\r\n}\r\n\r\ninterface ToastMetadata {\r\n variant: ToastVariant;\r\n className?: string;\r\n descriptionClassName?: string;\r\n closeButton: boolean;\r\n closeButtonAriaLabel: string;\r\n style?: React.CSSProperties;\r\n action?: ToastActionRenderable;\r\n cancel?: ToastActionRenderable;\r\n customContent?: React.ReactNode;\r\n}\r\n\r\ninterface ToastUpdateOptions extends ToastOptions {\r\n message?: ToastRenderable;\r\n variant?: ToastVariant;\r\n}\r\n\r\ninterface ToasterRegistration {\r\n closeButton: boolean;\r\n toastOptions: ToastOptions;\r\n}\r\n\r\ninterface ToastRecord {\r\n metadata: ToastMetadata;\r\n options: ToastOptions;\r\n snapshot: ToastSnapshot;\r\n}\r\n\r\ninterface ToastApi {\r\n (message: ToastRenderable, options?: ToastOptions): string;\r\n success: (message: ToastRenderable, options?: ToastOptions) => string;\r\n error: (message: ToastRenderable, options?: ToastOptions) => string;\r\n info: (message: ToastRenderable, options?: ToastOptions) => string;\r\n warning: (message: ToastRenderable, options?: ToastOptions) => string;\r\n loading: (message: ToastRenderable, options?: ToastOptions) => string;\r\n message: (message: ToastRenderable, options?: ToastOptions) => string;\r\n update: (toastId: ToastIdentifier, options: ToastUpdateOptions) => string;\r\n dismiss: (toastId?: ToastIdentifier) => string | undefined;\r\n promise: <Value>(promise: ToastPromise<Value>, options?: ToastPromiseOptions<Value>) => Promise<Value>;\r\n custom: (renderer: (toastId: string) => React.ReactElement, options?: ToastOptions) => string;\r\n getToasts: () => ReadonlyArray<ToastSnapshot>;\r\n getHistory: () => ReadonlyArray<ToastSnapshot>;\r\n}\r\n\r\nconst positionStyles: Record<ToastPosition, string> = {\r\n \"bottom-center\": styles.viewportBottomCenter,\r\n \"bottom-left\": styles.viewportBottomLeft,\r\n \"bottom-right\": styles.viewportBottomRight,\r\n \"top-center\": styles.viewportTopCenter,\r\n \"top-left\": styles.viewportTopLeft,\r\n \"top-right\": styles.viewportTopRight,\r\n};\r\n\r\nconst variantStyles: Record<ToastVariant, string> = {\r\n default: styles.default,\r\n error: styles.error,\r\n info: styles.info,\r\n loading: styles.loading,\r\n success: styles.success,\r\n warning: styles.warning,\r\n};\r\n\r\nconst toastManager = Toast.createToastManager<ToastMetadata>();\r\ntype ToastAddOptions = Parameters<typeof toastManager.add>[0];\r\ntype ToastUpdatePayload = Parameters<typeof toastManager.update>[1];\r\nconst toastHistory: ToastSnapshot[] = [];\r\nconst activeToasts = new Map<string, ToastSnapshot>();\r\nconst toastRecords = new Map<string, ToastRecord>();\r\nconst toasterRegistrations = new Map<string, ToasterRegistration>();\r\n\r\nlet toastSequence = 0;\r\n\r\nfunction createToastIdentifier(identifier?: ToastIdentifier): string {\r\n if (identifier !== undefined) {\r\n return String(identifier);\r\n }\r\n\r\n if (typeof globalThis.crypto?.randomUUID === \"function\") {\r\n return globalThis.crypto.randomUUID();\r\n }\r\n\r\n toastSequence += 1;\r\n return `toast-${String(toastSequence)}`;\r\n}\r\n\r\nfunction isRenderableFactory(value: ToastRenderable | undefined): value is () => React.ReactNode {\r\n return typeof value === \"function\";\r\n}\r\n\r\n// eslint-disable-next-line sonarjs/function-return-type -- React renderables intentionally normalize to one public node type.\r\nfunction resolveRenderable(value?: ToastRenderable): React.ReactNode | undefined {\r\n const resolvedValue = isRenderableFactory(value) ? value() : value;\r\n return resolvedValue;\r\n}\r\n\r\nfunction getSnapshot(id: string, variant: ToastVariant, title?: React.ReactNode, description?: React.ReactNode): ToastSnapshot {\r\n return {\r\n description,\r\n id,\r\n title,\r\n variant,\r\n };\r\n}\r\n\r\nfunction registerToast(snapshot: ToastSnapshot): void {\r\n activeToasts.set(snapshot.id, snapshot);\r\n toastHistory.push(snapshot);\r\n}\r\n\r\nfunction registerToastRecord(record: ToastRecord): void {\r\n toastRecords.set(record.snapshot.id, record);\r\n registerToast(record.snapshot);\r\n}\r\n\r\nfunction replaceToastHistorySnapshot(snapshot: ToastSnapshot): void {\r\n for (let index = toastHistory.length - 1; index >= 0; index -= 1) {\r\n if (toastHistory[index]?.id === snapshot.id) {\r\n toastHistory[index] = snapshot;\r\n return;\r\n }\r\n }\r\n\r\n toastHistory.push(snapshot);\r\n}\r\n\r\nfunction replaceToastRecord(record: ToastRecord): void {\r\n toastRecords.set(record.snapshot.id, record);\r\n activeToasts.set(record.snapshot.id, record.snapshot);\r\n replaceToastHistorySnapshot(record.snapshot);\r\n}\r\n\r\nfunction unregisterToast(toastId?: string): void {\r\n if (!toastId) {\r\n activeToasts.clear();\r\n toastRecords.clear();\r\n return;\r\n }\r\n\r\n activeToasts.delete(toastId);\r\n toastRecords.delete(toastId);\r\n}\r\n\r\nfunction getActiveToasterRegistration(): ToasterRegistration {\r\n const registrations = [...toasterRegistrations.values()];\r\n return registrations.at(-1) ?? {closeButton: true, toastOptions: {}};\r\n}\r\n\r\nfunction mergeToastOptions(options?: ToastOptions): ToastOptions {\r\n return {\r\n ...getActiveToasterRegistration().toastOptions,\r\n ...options,\r\n };\r\n}\r\n\r\nfunction isToastVariant(value: string | undefined): value is ToastVariant {\r\n return value === \"default\" || value === \"error\" || value === \"info\" || value === \"loading\" || value === \"success\" || value === \"warning\";\r\n}\r\n\r\nfunction createToastMetadata(\r\n variant: ToastVariant,\r\n options: ToastOptions,\r\n closeButton: boolean,\r\n customContent?: React.ReactNode,\r\n): ToastMetadata {\r\n return {\r\n action: options.action,\r\n cancel: options.cancel,\r\n className: options.className,\r\n closeButton,\r\n closeButtonAriaLabel: options.closeButtonAriaLabel ?? DEFAULT_TOAST_CLOSE_LABEL,\r\n customContent,\r\n descriptionClassName: options.descriptionClassName,\r\n style: options.style,\r\n variant,\r\n };\r\n}\r\n\r\nfunction createToastRecord({\r\n id,\r\n message,\r\n options,\r\n variant,\r\n customContent,\r\n}: Readonly<{\r\n customContent?: React.ReactNode;\r\n id: string;\r\n message?: ToastRenderable;\r\n options: ToastOptions;\r\n variant: ToastVariant;\r\n}>): ToastRecord {\r\n const activeRegistration = getActiveToasterRegistration();\r\n const closeButton = options.closeButton ?? activeRegistration.closeButton;\r\n const title = message === undefined ? undefined : resolveRenderable(message);\r\n const description = resolveRenderable(options.description);\r\n const snapshot = getSnapshot(id, variant, title, description);\r\n\r\n return {\r\n metadata: createToastMetadata(variant, options, closeButton, customContent),\r\n options,\r\n snapshot,\r\n };\r\n}\r\n\r\nfunction createToastLifecycleHandlers(toastId: string, record: ToastRecord): Pick<ToastAddOptions, \"onClose\" | \"onRemove\"> {\r\n return {\r\n onClose: () => {\r\n record.options.onDismiss?.(activeToasts.get(toastId) ?? record.snapshot);\r\n },\r\n onRemove: () => {\r\n const snapshot = activeToasts.get(toastId) ?? record.snapshot;\r\n unregisterToast(toastId);\r\n record.options.onAutoClose?.(snapshot);\r\n },\r\n };\r\n}\r\n\r\nfunction createToastAddPayload(record: ToastRecord): ToastAddOptions {\r\n const lifecycleHandlers = createToastLifecycleHandlers(record.snapshot.id, record);\r\n\r\n return {\r\n description: record.snapshot.description,\r\n id: record.snapshot.id,\r\n priority: record.options.priority,\r\n timeout: record.options.duration,\r\n title: record.snapshot.title,\r\n type: record.snapshot.variant,\r\n data: record.metadata,\r\n ...lifecycleHandlers,\r\n };\r\n}\r\n\r\nfunction buildToastOptions(message: ToastRenderable, variant: ToastVariant, options?: ToastOptions): ToastAddOptions {\r\n const mergedOptions = mergeToastOptions(options);\r\n const toastId = createToastIdentifier(mergedOptions.id);\r\n const record = createToastRecord({\r\n id: toastId,\r\n message,\r\n options: mergedOptions,\r\n variant,\r\n });\r\n\r\n registerToastRecord(record);\r\n\r\n return createToastAddPayload(record);\r\n}\r\n\r\nfunction showToast(message: ToastRenderable, variant: ToastVariant, options?: ToastOptions): string {\r\n const payload = buildToastOptions(message, variant, options);\r\n return toastManager.add(payload);\r\n}\r\n\r\nfunction dismissToast(toastId?: ToastIdentifier): string | undefined {\r\n if (toastId === undefined) {\r\n unregisterToast();\r\n toastManager.close();\r\n return undefined;\r\n }\r\n\r\n const normalizedToastId = String(toastId);\r\n unregisterToast(normalizedToastId);\r\n toastManager.close(normalizedToastId);\r\n return normalizedToastId;\r\n}\r\n\r\nfunction updateToast(toastId: ToastIdentifier, options: ToastUpdateOptions): string {\r\n const normalizedToastId = String(toastId);\r\n const existingRecord = toastRecords.get(normalizedToastId);\r\n const mergedOptions: ToastOptions = {\r\n ...existingRecord?.options,\r\n ...options,\r\n };\r\n const variant = options.variant ?? existingRecord?.snapshot.variant ?? \"default\";\r\n const nextMessage = options.message === undefined ? existingRecord?.snapshot.title : resolveRenderable(options.message);\r\n const nextDescription = options.description === undefined ? existingRecord?.snapshot.description : resolveRenderable(options.description);\r\n const metadata = createToastMetadata(\r\n variant,\r\n mergedOptions,\r\n mergedOptions.closeButton ?? existingRecord?.metadata.closeButton ?? getActiveToasterRegistration().closeButton,\r\n existingRecord?.metadata.customContent,\r\n );\r\n const record: ToastRecord = {\r\n metadata,\r\n options: mergedOptions,\r\n snapshot: getSnapshot(normalizedToastId, variant, nextMessage, nextDescription),\r\n };\r\n\r\n replaceToastRecord(record);\r\n\r\n const payload: ToastUpdatePayload = {\r\n description: record.snapshot.description,\r\n priority: record.options.priority,\r\n timeout: record.options.duration,\r\n title: record.snapshot.title,\r\n type: record.snapshot.variant,\r\n data: record.metadata,\r\n ...createToastLifecycleHandlers(normalizedToastId, record),\r\n };\r\n\r\n toastManager.update(normalizedToastId, payload);\r\n\r\n return normalizedToastId;\r\n}\r\n\r\nfunction resolvePromiseState<Value>(state: ToastPromiseState<Value> | ResolvedPromiseState, value: Value): Promise<ResolvedPromiseState> {\r\n if (typeof state === \"function\") {\r\n return Promise.resolve(state(value));\r\n }\r\n\r\n return Promise.resolve(state);\r\n}\r\n\r\nfunction isPromiseResolvedOptions(value: ToastRenderable | ToastPromiseResolvedOptions | undefined): value is ToastPromiseResolvedOptions {\r\n return typeof value === \"object\" && value !== null && \"message\" in value;\r\n}\r\n\r\nfunction isToastAction(value: ToastActionRenderable | undefined): value is ToastAction {\r\n if (React.isValidElement(value)) {\r\n return false;\r\n }\r\n\r\n return typeof value === \"object\" && value !== null && \"label\" in value && \"onClick\" in value;\r\n}\r\n\r\n// eslint-disable-next-line sonarjs/function-return-type -- Variant selection intentionally maps to React nodes for a single icon slot.\r\nfunction getVariantIcon(variant: ToastVariant): React.ReactNode {\r\n const icons: Record<ToastVariant, React.ReactNode> = {\r\n default: (\r\n <BellRing\r\n aria-hidden='true'\r\n className={styles.icon}\r\n />\r\n ),\r\n error: (\r\n <AlertCircle\r\n aria-hidden='true'\r\n className={styles.icon}\r\n />\r\n ),\r\n info: (\r\n <Info\r\n aria-hidden='true'\r\n className={styles.icon}\r\n />\r\n ),\r\n loading: (\r\n <LoaderCircle\r\n aria-hidden='true'\r\n className={cn(styles.icon, styles.iconSpin)}\r\n />\r\n ),\r\n success: (\r\n <CheckCircle2\r\n aria-hidden='true'\r\n className={styles.icon}\r\n />\r\n ),\r\n warning: (\r\n <TriangleAlert\r\n aria-hidden='true'\r\n className={styles.icon}\r\n />\r\n ),\r\n };\r\n\r\n return icons[variant];\r\n}\r\n\r\nfunction ToastActions({\r\n toastId,\r\n action,\r\n cancel,\r\n}: Readonly<{toastId: string; action?: ToastActionRenderable; cancel?: ToastActionRenderable}>): React.JSX.Element | null {\r\n if (!action && !cancel) {\r\n return null;\r\n }\r\n\r\n const renderAction = (value: ToastActionRenderable | undefined, className: string): React.ReactElement | null => {\r\n if (!value) {\r\n return null;\r\n }\r\n\r\n if (React.isValidElement(value)) {\r\n return value;\r\n }\r\n\r\n if (isToastAction(value)) {\r\n return (\r\n <button\r\n className={className}\r\n type='button'\r\n onClick={(event) => {\r\n value.onClick(event);\r\n dismissToast(toastId);\r\n }}>\r\n {value.label}\r\n </button>\r\n );\r\n }\r\n\r\n return null;\r\n };\r\n\r\n return (\r\n <div className={styles.actions}>\r\n {renderAction(cancel, styles.secondaryAction)}\r\n {renderAction(action, styles.primaryAction)}\r\n </div>\r\n );\r\n}\r\n\r\nfunction ToastViewportContent(): React.JSX.Element {\r\n const {toasts} = Toast.useToastManager<ToastMetadata>();\r\n\r\n return (\r\n <>\r\n {toasts.map((toastItem) => {\r\n const variant = isToastVariant(toastItem.type) ? toastItem.type : \"default\";\r\n const action = toastItem.data?.action;\r\n const cancel = toastItem.data?.cancel;\r\n\r\n return (\r\n <Toast.Root\r\n key={toastItem.id}\r\n toast={toastItem}\r\n className={cn(styles.root, variantStyles[variant], toastItem.data?.className)}\r\n data-variant={variant}\r\n style={toastItem.data?.style}>\r\n <Toast.Content className={styles.content}>\r\n {toastItem.data?.customContent ?? (\r\n <>\r\n <div className={styles.leading}>{getVariantIcon(variant)}</div>\r\n <div className={styles.body}>\r\n {toastItem.title ? <Toast.Title className={styles.title}>{toastItem.title}</Toast.Title> : null}\r\n {toastItem.description ? (\r\n <Toast.Description className={cn(styles.description, toastItem.data?.descriptionClassName)}>\r\n {toastItem.description}\r\n </Toast.Description>\r\n ) : null}\r\n <ToastActions\r\n action={action}\r\n cancel={cancel}\r\n toastId={toastItem.id}\r\n />\r\n </div>\r\n {toastItem.data?.closeButton ? (\r\n <Toast.Close\r\n aria-label={toastItem.data.closeButtonAriaLabel}\r\n className={styles.close}>\r\n <X\r\n aria-hidden='true'\r\n className={styles.closeIcon}\r\n />\r\n </Toast.Close>\r\n ) : null}\r\n </>\r\n )}\r\n </Toast.Content>\r\n </Toast.Root>\r\n );\r\n })}\r\n </>\r\n );\r\n}\r\n\r\n/**\r\n * Toast notification container.\r\n *\r\n * @remarks\r\n * Renders the Base UI provider, portal, and viewport with defaults that preserve the previous\r\n * shared `Toaster` export behavior used by the website.\r\n *\r\n * @example\r\n * ```tsx\r\n * <Toaster position='top-right' visibleToasts={5} />\r\n * ```\r\n *\r\n * @see {@link https://base-ui.com/react/components/toast | Base UI Toast Docs}\r\n */\r\n/**\r\n * Toaster is the root viewport container for displaying toast notifications.\r\n * It should be rendered once at the app root level.\r\n */\r\nconst Toaster = React.forwardRef<HTMLDivElement, ToasterProps>(function Toaster(\r\n {\r\n className,\r\n closeButton = true,\r\n containerAriaLabel = DEFAULT_VIEWPORT_ARIA_LABEL,\r\n duration = DEFAULT_TOAST_DURATION,\r\n position = \"bottom-right\",\r\n style,\r\n toastOptions,\r\n visibleToasts = DEFAULT_TOAST_LIMIT,\r\n },\r\n forwardedRef,\r\n) {\r\n const toasterId = React.useId();\r\n\r\n React.useEffect(() => {\r\n toasterRegistrations.set(toasterId, {\r\n closeButton,\r\n toastOptions: toastOptions ?? {},\r\n });\r\n\r\n return () => {\r\n toasterRegistrations.delete(toasterId);\r\n };\r\n }, [closeButton, toastOptions, toasterId]);\r\n\r\n return (\r\n <Toast.Provider\r\n limit={visibleToasts}\r\n timeout={duration}\r\n toastManager={toastManager}>\r\n <Toast.Portal>\r\n <Toast.Viewport\r\n ref={forwardedRef}\r\n aria-label={containerAriaLabel}\r\n className={cn(styles.viewport, positionStyles[position], className)}\r\n style={style}>\r\n <ToastViewportContent />\r\n </Toast.Viewport>\r\n </Toast.Portal>\r\n </Toast.Provider>\r\n );\r\n});\r\n\r\nToaster.displayName = \"Toaster\";\r\n\r\n/**\r\n * Imperative toast API for creating transient notifications outside React render flows.\r\n *\r\n * @remarks\r\n * Built on Base UI's toast manager and preserved as a drop-in replacement for the previous\r\n * `sonner` export surface.\r\n *\r\n * @example\r\n * ```tsx\r\n * toast.success(\"Profile updated\");\r\n * ```\r\n *\r\n * @see {@link https://base-ui.com/react/components/toast | Base UI Toast Docs}\r\n */\r\nconst toast = ((message: ToastRenderable, options?: ToastOptions): string => showToast(message, \"default\", options)) as ToastApi;\r\n\r\ntoast.success = (message: ToastRenderable, options?: ToastOptions): string => showToast(message, \"success\", options);\r\ntoast.error = (message: ToastRenderable, options?: ToastOptions): string => showToast(message, \"error\", options);\r\ntoast.info = (message: ToastRenderable, options?: ToastOptions): string => showToast(message, \"info\", options);\r\ntoast.warning = (message: ToastRenderable, options?: ToastOptions): string => showToast(message, \"warning\", options);\r\ntoast.loading = (message: ToastRenderable, options?: ToastOptions): string => showToast(message, \"loading\", options);\r\ntoast.message = (message: ToastRenderable, options?: ToastOptions): string => showToast(message, \"default\", options);\r\ntoast.update = (toastId: ToastIdentifier, options: ToastUpdateOptions): string => updateToast(toastId, options);\r\ntoast.dismiss = (toastId?: ToastIdentifier): string | undefined => dismissToast(toastId);\r\ntoast.custom = (renderer: (toastId: string) => React.ReactElement, options?: ToastOptions): string => {\r\n const mergedOptions = mergeToastOptions(options);\r\n const toastId = createToastIdentifier(mergedOptions.id);\r\n const record = createToastRecord({\r\n customContent: renderer(toastId),\r\n id: toastId,\r\n options: mergedOptions,\r\n variant: \"default\",\r\n });\r\n\r\n registerToastRecord(record);\r\n\r\n toastManager.add(createToastAddPayload(record));\r\n\r\n return toastId;\r\n};\r\nfunction mergePromiseToastOptions(baseOptions: ToastOptions, override?: ToastPromiseResolvedOptions): ToastOptions {\r\n if (!override) {\r\n return baseOptions;\r\n }\r\n\r\n return {\r\n action: override.action ?? baseOptions.action,\r\n cancel: override.cancel ?? baseOptions.cancel,\r\n className: override.className ?? baseOptions.className,\r\n closeButton: override.closeButton ?? baseOptions.closeButton,\r\n closeButtonAriaLabel: override.closeButtonAriaLabel ?? baseOptions.closeButtonAriaLabel,\r\n description: override.description ?? baseOptions.description,\r\n descriptionClassName: override.descriptionClassName ?? baseOptions.descriptionClassName,\r\n duration: override.duration ?? baseOptions.duration,\r\n id: override.id ?? baseOptions.id,\r\n onAutoClose: override.onAutoClose ?? baseOptions.onAutoClose,\r\n onDismiss: override.onDismiss ?? baseOptions.onDismiss,\r\n priority: override.priority ?? baseOptions.priority,\r\n style: override.style ?? baseOptions.style,\r\n };\r\n}\r\n\r\nfunction getPromiseBaseOptions<Value>(options?: ToastPromiseOptions<Value>): ToastOptions {\r\n return {\r\n action: options?.action,\r\n cancel: options?.cancel,\r\n className: options?.className,\r\n closeButton: options?.closeButton,\r\n closeButtonAriaLabel: options?.closeButtonAriaLabel,\r\n description: options?.description,\r\n descriptionClassName: options?.descriptionClassName,\r\n duration: options?.duration,\r\n id: options?.id,\r\n onAutoClose: options?.onAutoClose,\r\n onDismiss: options?.onDismiss,\r\n priority: options?.priority,\r\n style: options?.style,\r\n };\r\n}\r\n\r\nfunction showResolvedPromiseToast(\r\n loadingToastId: string | undefined,\r\n variant: Exclude<ToastVariant, \"default\">,\r\n resolvedState: ToastRenderable | ToastPromiseResolvedOptions | undefined,\r\n baseOptions: ToastOptions,\r\n): void {\r\n if (!resolvedState) {\r\n if (loadingToastId) {\r\n dismissToast(loadingToastId);\r\n }\r\n\r\n return;\r\n }\r\n\r\n const overrideOptions = isPromiseResolvedOptions(resolvedState) ? resolvedState : undefined;\r\n const message = isPromiseResolvedOptions(resolvedState) ? resolvedState.message : resolvedState;\r\n const mergedOptions = mergePromiseToastOptions(baseOptions, overrideOptions);\r\n\r\n if (loadingToastId) {\r\n toast.update(loadingToastId, {\r\n ...mergedOptions,\r\n message,\r\n variant,\r\n });\r\n\r\n return;\r\n }\r\n\r\n showToast(message, variant, mergedOptions);\r\n}\r\n\r\ntoast.promise = async function promise<Value>(promiseValue: ToastPromise<Value>, options?: ToastPromiseOptions<Value>): Promise<Value> {\r\n const pendingPromise = typeof promiseValue === \"function\" ? promiseValue() : promiseValue;\r\n const baseOptions = getPromiseBaseOptions(options);\r\n const loadingState = options?.loading;\r\n const loadingOptions = isPromiseResolvedOptions(loadingState) ? loadingState : undefined;\r\n const loadingMessage = isPromiseResolvedOptions(loadingState) ? loadingState.message : loadingState;\r\n const loadingToastId = loadingMessage ? toast.loading(loadingMessage, mergePromiseToastOptions(baseOptions, loadingOptions)) : undefined;\r\n\r\n try {\r\n const result = await pendingPromise;\r\n const successState = await resolvePromiseState(options?.success, result);\r\n showResolvedPromiseToast(loadingToastId, \"success\", successState, baseOptions);\r\n\r\n return result;\r\n } catch (error: unknown) {\r\n const errorState = await resolvePromiseState(options?.error, error);\r\n showResolvedPromiseToast(loadingToastId, \"error\", errorState, baseOptions);\r\n\r\n throw error;\r\n } finally {\r\n const handleFinally = options?.finally;\r\n if (handleFinally) {\r\n await handleFinally();\r\n }\r\n }\r\n};\r\ntoast.getToasts = (): ReadonlyArray<ToastSnapshot> => [...activeToasts.values()];\r\ntoast.getHistory = (): ReadonlyArray<ToastSnapshot> => [...toastHistory];\r\n\r\nexport type {Toast};\r\nexport {toast, Toaster};\r\n"],"names":["DEFAULT_TOAST_DURATION","DEFAULT_TOAST_LIMIT","DEFAULT_TOAST_CLOSE_LABEL","DEFAULT_VIEWPORT_ARIA_LABEL","positionStyles","styles","variantStyles","toastManager","Toast","toastHistory","activeToasts","Map","toastRecords","toasterRegistrations","toastSequence","createToastIdentifier","identifier","undefined","String","globalThis","isRenderableFactory","value","resolveRenderable","resolvedValue","getSnapshot","id","variant","title","description","registerToast","snapshot","registerToastRecord","record","replaceToastHistorySnapshot","index","replaceToastRecord","unregisterToast","toastId","getActiveToasterRegistration","registrations","mergeToastOptions","options","isToastVariant","createToastMetadata","closeButton","customContent","createToastRecord","message","activeRegistration","createToastLifecycleHandlers","createToastAddPayload","lifecycleHandlers","buildToastOptions","mergedOptions","showToast","payload","dismissToast","normalizedToastId","updateToast","existingRecord","nextMessage","nextDescription","metadata","resolvePromiseState","state","Promise","isPromiseResolvedOptions","isToastAction","React","getVariantIcon","icons","BellRing","AlertCircle","Info","LoaderCircle","cn","CheckCircle2","TriangleAlert","ToastActions","action","cancel","renderAction","className","event","ToastViewportContent","toasts","toastItem","X","Toaster","containerAriaLabel","duration","position","style","toastOptions","visibleToasts","forwardedRef","toasterId","toast","renderer","mergePromiseToastOptions","baseOptions","override","getPromiseBaseOptions","showResolvedPromiseToast","loadingToastId","resolvedState","overrideOptions","promiseValue","pendingPromise","loadingState","loadingOptions","loadingMessage","result","successState","error","errorState","handleFinally"],"mappings":"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"}
@@ -0,0 +1,34 @@
1
+ import "./toast_module.css";
2
+ const toast_module = {
3
+ viewport: "viewport-jvCIkI",
4
+ viewportTopLeft: "viewportTopLeft-Kb0Dxx",
5
+ viewportTopRight: "viewportTopRight-cN2v_K",
6
+ viewportBottomLeft: "viewportBottomLeft-QsijST",
7
+ viewportBottomRight: "viewportBottomRight-vFah1i",
8
+ viewportTopCenter: "viewportTopCenter-N1lhMQ",
9
+ viewportBottomCenter: "viewportBottomCenter-UYbiwI",
10
+ root: "root-uwGvth",
11
+ content: "content-TMHpYm",
12
+ leading: "leading-gM08RM",
13
+ body: "body-kFIEHQ",
14
+ title: "title-kXfMGB",
15
+ description: "description-I8ct1l",
16
+ close: "close-eMrgdZ",
17
+ closeIcon: "closeIcon-OazeuD",
18
+ icon: "icon-G29Yjv",
19
+ iconSpin: "iconSpin-xicEw2",
20
+ "toast-spin": "toast-spin-PgaAxf",
21
+ toastSpin: "toast-spin-PgaAxf",
22
+ actions: "actions-ISQ9_4",
23
+ primaryAction: "primaryAction-L_Ifg3",
24
+ secondaryAction: "secondaryAction-Uv1cEU",
25
+ default: "default-KHMvJy",
26
+ success: "success-VAn7xf",
27
+ error: "error-fbRDFy",
28
+ info: "info-be_454",
29
+ warning: "warning-EzQWby",
30
+ loading: "loading-OTB2rn"
31
+ };
32
+ export default toast_module;
33
+
34
+ //# sourceMappingURL=toast.module.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"components/ui/toast.module.js","sources":["../../../src/components/ui/toast.module.css"],"sourcesContent":["// extracted by LIB_CSS_EXTRACT_LOADER\nimport \"./toast_module.css\"\nexport default {\"viewport\":\"viewport-jvCIkI\",\"viewportTopLeft\":\"viewportTopLeft-Kb0Dxx\",\"viewportTopRight\":\"viewportTopRight-cN2v_K\",\"viewportBottomLeft\":\"viewportBottomLeft-QsijST\",\"viewportBottomRight\":\"viewportBottomRight-vFah1i\",\"viewportTopCenter\":\"viewportTopCenter-N1lhMQ\",\"viewportBottomCenter\":\"viewportBottomCenter-UYbiwI\",\"root\":\"root-uwGvth\",\"content\":\"content-TMHpYm\",\"leading\":\"leading-gM08RM\",\"body\":\"body-kFIEHQ\",\"title\":\"title-kXfMGB\",\"description\":\"description-I8ct1l\",\"close\":\"close-eMrgdZ\",\"closeIcon\":\"closeIcon-OazeuD\",\"icon\":\"icon-G29Yjv\",\"iconSpin\":\"iconSpin-xicEw2\",\"toast-spin\":\"toast-spin-PgaAxf\",\"toastSpin\":\"toast-spin-PgaAxf\",\"actions\":\"actions-ISQ9_4\",\"primaryAction\":\"primaryAction-L_Ifg3\",\"secondaryAction\":\"secondaryAction-Uv1cEU\",\"default\":\"default-KHMvJy\",\"success\":\"success-VAn7xf\",\"error\":\"error-fbRDFy\",\"info\":\"info-be_454\",\"warning\":\"warning-EzQWby\",\"loading\":\"loading-OTB2rn\"};"],"names":[],"mappings":";AAEA,qBAAe;IAAC,UAAW;IAAkB,iBAAkB;IAAyB,kBAAmB;IAA0B,oBAAqB;IAA4B,qBAAsB;IAA6B,mBAAoB;IAA2B,sBAAuB;IAA8B,MAAO;IAAc,SAAU;IAAiB,SAAU;IAAiB,MAAO;IAAc,OAAQ;IAAe,aAAc;IAAqB,OAAQ;IAAe,WAAY;IAAmB,MAAO;IAAc,UAAW;IAAkB,cAAa;IAAoB,WAAY;IAAoB,SAAU;IAAiB,eAAgB;IAAuB,iBAAkB;IAAyB,SAAU;IAAiB,SAAU;IAAiB,OAAQ;IAAe,MAAO;IAAc,SAAU;IAAiB,SAAU;AAAgB"}