tembro 2.0.5 → 2.1.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 (381) hide show
  1. package/dist/components/calendar/calendar.cjs +1 -1
  2. package/dist/components/calendar/calendar.d.ts +2 -1
  3. package/dist/components/calendar/calendar.js +126 -122
  4. package/dist/components/calendar/date-range-picker.cjs +1 -1
  5. package/dist/components/calendar/date-range-picker.d.ts +2 -1
  6. package/dist/components/calendar/date-range-picker.js +39 -39
  7. package/dist/components/charts/charts.cjs +1 -1
  8. package/dist/components/charts/charts.d.ts +13 -4
  9. package/dist/components/charts/charts.js +76 -46
  10. package/dist/components/charts/progress-ring.cjs +1 -1
  11. package/dist/components/charts/progress-ring.d.ts +3 -1
  12. package/dist/components/charts/progress-ring.js +11 -10
  13. package/dist/components/data-table/data-table-column-visibility-menu.cjs +1 -1
  14. package/dist/components/data-table/data-table-column-visibility-menu.d.ts +4 -1
  15. package/dist/components/data-table/data-table-column-visibility-menu.js +36 -8
  16. package/dist/components/data-table/data-table-pagination.cjs +1 -1
  17. package/dist/components/data-table/data-table-pagination.js +4 -4
  18. package/dist/components/data-table/data-table-toolbar.cjs +1 -1
  19. package/dist/components/data-table/data-table-toolbar.js +12 -13
  20. package/dist/components/data-table/data-table.cjs +1 -1
  21. package/dist/components/data-table/data-table.d.ts +2 -2
  22. package/dist/components/data-table/data-table.js +2 -1
  23. package/dist/components/display/carousel.cjs +1 -1
  24. package/dist/components/display/carousel.d.ts +15 -1
  25. package/dist/components/display/carousel.js +128 -86
  26. package/dist/components/display/code-block.cjs +2 -2
  27. package/dist/components/display/code-block.d.ts +2 -1
  28. package/dist/components/display/code-block.js +17 -12
  29. package/dist/components/display/delta-badge.cjs +1 -1
  30. package/dist/components/display/delta-badge.d.ts +2 -1
  31. package/dist/components/display/delta-badge.js +11 -7
  32. package/dist/components/display/kanban.cjs +1 -1
  33. package/dist/components/display/kanban.d.ts +4 -1
  34. package/dist/components/display/kanban.js +60 -33
  35. package/dist/components/display/metric-grid.cjs +1 -1
  36. package/dist/components/display/metric-grid.d.ts +1 -0
  37. package/dist/components/display/metric-grid.js +1 -1
  38. package/dist/components/display/qr-code.cjs +1 -1
  39. package/dist/components/display/qr-code.d.ts +2 -1
  40. package/dist/components/display/qr-code.js +19 -16
  41. package/dist/components/display/smart-card.d.ts +1 -1
  42. package/dist/components/display/status-legend.d.ts +1 -1
  43. package/dist/components/display/tag.cjs +1 -1
  44. package/dist/components/display/tag.d.ts +2 -1
  45. package/dist/components/display/tag.js +28 -22
  46. package/dist/components/display/tree-view.cjs +1 -1
  47. package/dist/components/display/tree-view.d.ts +9 -1
  48. package/dist/components/display/tree-view.js +104 -40
  49. package/dist/components/display/trend-card.cjs +1 -1
  50. package/dist/components/display/trend-card.js +27 -41
  51. package/dist/components/feedback/alert.cjs +1 -1
  52. package/dist/components/feedback/alert.d.ts +2 -1
  53. package/dist/components/feedback/alert.js +6 -6
  54. package/dist/components/feedback/loading-state.cjs +1 -1
  55. package/dist/components/feedback/loading-state.d.ts +3 -1
  56. package/dist/components/feedback/loading-state.js +23 -10
  57. package/dist/components/feedback/page-state.cjs +1 -1
  58. package/dist/components/feedback/page-state.d.ts +2 -1
  59. package/dist/components/feedback/page-state.js +7 -4
  60. package/dist/components/form/form-field-shell.cjs +1 -1
  61. package/dist/components/form/form-field-shell.d.ts +4 -2
  62. package/dist/components/form/form-field-shell.js +57 -41
  63. package/dist/components/form/form-input.cjs +1 -1
  64. package/dist/components/form/form-input.d.ts +3 -4
  65. package/dist/components/form/form-input.js +259 -257
  66. package/dist/components/form/form-select.cjs +1 -1
  67. package/dist/components/form/form-select.d.ts +2 -2
  68. package/dist/components/form/form-select.js +8 -6
  69. package/dist/components/form/form-switch.cjs +1 -1
  70. package/dist/components/form/form-switch.d.ts +1 -1
  71. package/dist/components/form/form-switch.js +58 -54
  72. package/dist/components/form/form-textarea.cjs +1 -1
  73. package/dist/components/form/form-textarea.d.ts +1 -1
  74. package/dist/components/form/form-textarea.js +29 -27
  75. package/dist/components/inputs/async-select.d.ts +3 -0
  76. package/dist/components/inputs/search-input.d.ts +3 -0
  77. package/dist/components/inputs/simple-select.cjs +1 -1
  78. package/dist/components/inputs/simple-select.d.ts +10 -32
  79. package/dist/components/inputs/simple-select.js +5 -101
  80. package/dist/components/layout/app-sidebar.cjs +1 -1
  81. package/dist/components/layout/app-sidebar.d.ts +1 -0
  82. package/dist/components/layout/app-sidebar.js +36 -36
  83. package/dist/components/layout/breadcrumbs.cjs +1 -1
  84. package/dist/components/layout/breadcrumbs.d.ts +2 -1
  85. package/dist/components/layout/breadcrumbs.js +7 -7
  86. package/dist/components/modern/calendar-scheduler.cjs +1 -1
  87. package/dist/components/modern/calendar-scheduler.d.ts +5 -1
  88. package/dist/components/modern/calendar-scheduler.js +47 -28
  89. package/dist/components/modern/dual-list-picker.cjs +1 -1
  90. package/dist/components/modern/dual-list-picker.d.ts +5 -1
  91. package/dist/components/modern/dual-list-picker.js +81 -23
  92. package/dist/components/modern/rich-text-editor.cjs +1 -1
  93. package/dist/components/modern/rich-text-editor.d.ts +3 -1
  94. package/dist/components/modern/rich-text-editor.js +12 -9
  95. package/dist/components/modern/tour.cjs +1 -1
  96. package/dist/components/modern/tour.d.ts +5 -1
  97. package/dist/components/modern/tour.js +57 -35
  98. package/dist/components/navigation/command-bar.cjs +1 -1
  99. package/dist/components/navigation/command-bar.d.ts +3 -1
  100. package/dist/components/navigation/command-bar.js +10 -7
  101. package/dist/components/navigation/demo.cjs +1 -1
  102. package/dist/components/navigation/demo.js +0 -1
  103. package/dist/components/navigation/nav-tabs.cjs +1 -1
  104. package/dist/components/navigation/nav-tabs.js +39 -27
  105. package/dist/components/navigation/page-tabs.cjs +1 -1
  106. package/dist/components/navigation/page-tabs.js +41 -30
  107. package/dist/components/navigation/pagination.cjs +1 -1
  108. package/dist/components/navigation/pagination.d.ts +7 -1
  109. package/dist/components/navigation/pagination.js +48 -25
  110. package/dist/components/notifications/notification-center.cjs +1 -1
  111. package/dist/components/notifications/notification-center.d.ts +3 -1
  112. package/dist/components/notifications/notification-center.js +56 -38
  113. package/dist/components/notifications/toast.cjs +1 -1
  114. package/dist/components/notifications/toast.d.ts +1 -0
  115. package/dist/components/notifications/toast.js +4 -0
  116. package/dist/components/overlay/alert-dialog.cjs +1 -1
  117. package/dist/components/overlay/alert-dialog.js +1 -1
  118. package/dist/components/overlay/confirm-dialog.cjs +1 -1
  119. package/dist/components/overlay/confirm-dialog.d.ts +4 -2
  120. package/dist/components/overlay/confirm-dialog.js +31 -22
  121. package/dist/components/overlay/drawer.cjs +1 -1
  122. package/dist/components/overlay/drawer.d.ts +3 -1
  123. package/dist/components/overlay/drawer.js +24 -16
  124. package/dist/components/ui/accordion/index.d.ts +4 -0
  125. package/dist/components/ui/badge/index.cjs +1 -1
  126. package/dist/components/ui/badge/index.d.ts +1 -1
  127. package/dist/components/ui/badge/index.js +2 -1
  128. package/dist/components/ui/button/index.cjs +1 -1
  129. package/dist/components/ui/button/index.d.ts +2 -1
  130. package/dist/components/ui/button/index.js +13 -10
  131. package/dist/components/ui/card/index.cjs +1 -1
  132. package/dist/components/ui/card/index.d.ts +13 -2
  133. package/dist/components/ui/card/index.js +74 -49
  134. package/dist/components/ui/dialog/index.cjs +1 -1
  135. package/dist/components/ui/dialog/index.js +2 -1
  136. package/dist/components/ui/hover-card.cjs +1 -1
  137. package/dist/components/ui/hover-card.d.ts +11 -3
  138. package/dist/components/ui/hover-card.js +29 -24
  139. package/dist/components/ui/input/index.cjs +1 -1
  140. package/dist/components/ui/input/index.d.ts +9 -1
  141. package/dist/components/ui/input/index.js +63 -30
  142. package/dist/components/ui/popover/index.cjs +1 -1
  143. package/dist/components/ui/popover/index.d.ts +2 -2
  144. package/dist/components/ui/popover/index.js +6 -5
  145. package/dist/components/ui/radio-group/index.cjs +1 -1
  146. package/dist/components/ui/radio-group/index.d.ts +5 -1
  147. package/dist/components/ui/radio-group/index.js +50 -16
  148. package/dist/components/ui/right-click-menu/index.cjs +1 -1
  149. package/dist/components/ui/right-click-menu/index.d.ts +5 -1
  150. package/dist/components/ui/right-click-menu/index.js +77 -23
  151. package/dist/components/ui/segmented-control/index.cjs +1 -1
  152. package/dist/components/ui/segmented-control/index.d.ts +2 -1
  153. package/dist/components/ui/segmented-control/index.js +23 -11
  154. package/dist/components/ui/select/index.cjs +1 -1
  155. package/dist/components/ui/select/index.d.ts +40 -1
  156. package/dist/components/ui/select/index.js +159 -48
  157. package/dist/components/ui/switch/index.cjs +1 -1
  158. package/dist/components/ui/switch/index.d.ts +18 -0
  159. package/dist/components/ui/switch/index.js +47 -17
  160. package/dist/components/ui/tabs/index.cjs +1 -1
  161. package/dist/components/ui/tabs/index.d.ts +14 -4
  162. package/dist/components/ui/tabs/index.js +11 -8
  163. package/dist/components/ui/textarea/index.cjs +1 -1
  164. package/dist/components/ui/textarea/index.d.ts +10 -2
  165. package/dist/components/ui/textarea/index.js +37 -8
  166. package/dist/components/ui/textarea.cjs +1 -0
  167. package/dist/components/ui/textarea.d.ts +1 -0
  168. package/dist/components/ui/textarea.js +2 -0
  169. package/dist/components/ui/tooltip/index.cjs +1 -1
  170. package/dist/components/ui/tooltip/index.d.ts +11 -3
  171. package/dist/components/ui/tooltip/index.js +41 -20
  172. package/dist/components/upload/file-upload.cjs +1 -1
  173. package/dist/components/upload/file-upload.d.ts +8 -1
  174. package/dist/components/upload/file-upload.js +132 -100
  175. package/dist/components/upload/image-upload.cjs +1 -1
  176. package/dist/components/upload/image-upload.d.ts +5 -1
  177. package/dist/components/upload/image-upload.js +34 -9
  178. package/dist/index.cjs +1 -1
  179. package/dist/index.js +31 -31
  180. package/dist/public-component-surface.cjs +1 -1
  181. package/dist/public-component-surface.js +15 -0
  182. package/dist/showcase/component-api-schema.cjs +1 -1
  183. package/dist/showcase/component-api-schema.js +187 -10
  184. package/dist/showcase/create-demo.cjs +5 -4
  185. package/dist/showcase/create-demo.js +2 -2
  186. package/dist/showcase/fallback.cjs +3 -3
  187. package/dist/showcase/fallback.js +221 -243
  188. package/dist/showcase/premium/alert/showcase.cjs +1 -1
  189. package/dist/showcase/premium/alert/showcase.js +1 -0
  190. package/dist/showcase/premium/app-sidebar/showcase.cjs +1 -1
  191. package/dist/showcase/premium/app-sidebar/showcase.js +1 -0
  192. package/dist/showcase/premium/badge/showcase.cjs +1 -1
  193. package/dist/showcase/premium/badge/showcase.js +7 -0
  194. package/dist/showcase/premium/badge/types.d.ts +1 -1
  195. package/dist/showcase/premium/breadcrumbs/showcase.cjs +1 -1
  196. package/dist/showcase/premium/breadcrumbs/showcase.js +12 -1
  197. package/dist/showcase/premium/button/mock.cjs +1 -4
  198. package/dist/showcase/premium/button/mock.js +1 -1
  199. package/dist/showcase/premium/button/showcase.cjs +1 -1
  200. package/dist/showcase/premium/button/showcase.js +2 -2
  201. package/dist/showcase/premium/card/showcase.cjs +1 -1
  202. package/dist/showcase/premium/card/showcase.js +96 -47
  203. package/dist/showcase/premium/carousel/showcase.cjs +1 -1
  204. package/dist/showcase/premium/carousel/showcase.js +76 -49
  205. package/dist/showcase/premium/command-bar/showcase.cjs +1 -1
  206. package/dist/showcase/premium/command-bar/showcase.js +2 -0
  207. package/dist/showcase/premium/data-table/mock.cjs +12 -11
  208. package/dist/showcase/premium/data-table/mock.js +1 -1
  209. package/dist/showcase/premium/data-table/showcase.cjs +1 -1
  210. package/dist/showcase/premium/data-table/showcase.js +1 -1
  211. package/dist/showcase/premium/data-table-parts/showcase.cjs +1 -1
  212. package/dist/showcase/premium/data-table-parts/showcase.js +3 -1
  213. package/dist/showcase/premium/file-upload/showcase.cjs +1 -1
  214. package/dist/showcase/premium/file-upload/showcase.js +25 -4
  215. package/dist/showcase/premium/image-upload/showcase.cjs +1 -1
  216. package/dist/showcase/premium/image-upload/showcase.js +4 -1
  217. package/dist/showcase/premium/index.cjs +1 -1
  218. package/dist/showcase/premium/index.js +396 -402
  219. package/dist/showcase/premium/loading-state/showcase.cjs +1 -1
  220. package/dist/showcase/premium/loading-state/showcase.js +3 -1
  221. package/dist/showcase/premium/metric-grid/showcase.cjs +1 -1
  222. package/dist/showcase/premium/metric-grid/showcase.js +96 -28
  223. package/dist/showcase/premium/notification-center/showcase.cjs +1 -1
  224. package/dist/showcase/premium/notification-center/showcase.js +7 -3
  225. package/dist/showcase/premium/page-state/showcase.cjs +1 -1
  226. package/dist/showcase/premium/page-state/showcase.js +5 -1
  227. package/dist/showcase/premium/pagination/showcase.cjs +1 -1
  228. package/dist/showcase/premium/pagination/showcase.js +15 -2
  229. package/dist/showcase/premium/popover/showcase.cjs +1 -1
  230. package/dist/showcase/premium/popover/showcase.js +85 -50
  231. package/dist/showcase/premium/radio-group/showcase.cjs +1 -1
  232. package/dist/showcase/premium/radio-group/showcase.js +27 -4
  233. package/dist/showcase/premium/right-click-menu/showcase.cjs +1 -1
  234. package/dist/showcase/premium/right-click-menu/showcase.js +56 -43
  235. package/dist/showcase/premium/segmented-control/showcase.cjs +1 -1
  236. package/dist/showcase/premium/segmented-control/showcase.js +1 -0
  237. package/dist/showcase/premium/select/data.cjs +1 -1
  238. package/dist/showcase/premium/select/data.js +69 -34
  239. package/dist/showcase/premium/select/mock.cjs +20 -8
  240. package/dist/showcase/premium/select/mock.js +3 -2
  241. package/dist/showcase/premium/select/showcase.cjs +1 -1
  242. package/dist/showcase/premium/select/showcase.js +101 -86
  243. package/dist/showcase/premium/select/types.d.ts +3 -0
  244. package/dist/showcase/premium/statistic/showcase.cjs +1 -1
  245. package/dist/showcase/premium/statistic/showcase.js +57 -25
  246. package/dist/showcase/premium/switch/showcase.cjs +1 -1
  247. package/dist/showcase/premium/switch/showcase.js +25 -14
  248. package/dist/showcase/premium/tabs/showcase.cjs +1 -1
  249. package/dist/showcase/premium/tabs/showcase.js +171 -48
  250. package/dist/showcase/premium/textarea/mock.cjs +12 -4
  251. package/dist/showcase/premium/textarea/mock.js +1 -1
  252. package/dist/showcase/premium/textarea/showcase.cjs +1 -1
  253. package/dist/showcase/premium/textarea/showcase.js +8 -3
  254. package/dist/showcase/premium/toast/showcase.cjs +1 -1
  255. package/dist/showcase/premium/toast/showcase.js +32 -6
  256. package/dist/showcase/premium/types.d.ts +1 -1
  257. package/dist/showcase/registry-quality.cjs +1 -1
  258. package/dist/showcase/registry-quality.js +1 -0
  259. package/dist/showcase/registry-specific.cjs +1 -1
  260. package/dist/showcase/registry-specific.js +78 -74
  261. package/dist/showcase/render-registry-preview.cjs +1 -1
  262. package/dist/showcase/render-registry-preview.js +90 -108
  263. package/dist/showcase/site-data.cjs +1 -1
  264. package/dist/showcase/site-data.js +60 -21
  265. package/dist/showcase/tembro-registry.json.cjs +1 -1
  266. package/dist/showcase/tembro-registry.json.js +34 -20
  267. package/dist/showcase/types.d.ts +1 -1
  268. package/package.json +1 -1
  269. package/packages/cli/dist/index.cjs +31 -31
  270. package/packages/cli/vendor/src/components/calendar/calendar.tsx +59 -50
  271. package/packages/cli/vendor/src/components/calendar/date-range-picker.tsx +7 -4
  272. package/packages/cli/vendor/src/components/charts/charts.tsx +109 -66
  273. package/packages/cli/vendor/src/components/charts/progress-ring.tsx +37 -26
  274. package/packages/cli/vendor/src/components/data-table/data-table-column-visibility-menu.tsx +41 -22
  275. package/packages/cli/vendor/src/components/data-table/data-table-pagination.tsx +7 -7
  276. package/packages/cli/vendor/src/components/data-table/data-table-toolbar.tsx +8 -6
  277. package/packages/cli/vendor/src/components/data-table/data-table.tsx +21 -20
  278. package/packages/cli/vendor/src/components/display/carousel.tsx +102 -9
  279. package/packages/cli/vendor/src/components/display/code-block.tsx +22 -2
  280. package/packages/cli/vendor/src/components/display/delta-badge.tsx +11 -11
  281. package/packages/cli/vendor/src/components/display/kanban.tsx +103 -57
  282. package/packages/cli/vendor/src/components/display/metric-grid.tsx +16 -13
  283. package/packages/cli/vendor/src/components/display/qr-code.tsx +17 -15
  284. package/packages/cli/vendor/src/components/display/smart-card.tsx +1 -1
  285. package/packages/cli/vendor/src/components/display/status-legend.tsx +1 -1
  286. package/packages/cli/vendor/src/components/display/tag.tsx +39 -21
  287. package/packages/cli/vendor/src/components/display/tree-view.tsx +221 -84
  288. package/packages/cli/vendor/src/components/display/trend-card.tsx +6 -40
  289. package/packages/cli/vendor/src/components/feedback/alert.tsx +3 -1
  290. package/packages/cli/vendor/src/components/feedback/loading-state.tsx +33 -17
  291. package/packages/cli/vendor/src/components/feedback/page-state.tsx +8 -7
  292. package/packages/cli/vendor/src/components/form/form-field-shell.tsx +37 -8
  293. package/packages/cli/vendor/src/components/form/form-input.tsx +11 -12
  294. package/packages/cli/vendor/src/components/form/form-select.tsx +6 -4
  295. package/packages/cli/vendor/src/components/form/form-switch.tsx +9 -3
  296. package/packages/cli/vendor/src/components/form/form-textarea.tsx +6 -2
  297. package/packages/cli/vendor/src/components/inputs/async-select.tsx +11 -8
  298. package/packages/cli/vendor/src/components/inputs/search-input.tsx +5 -2
  299. package/packages/cli/vendor/src/components/inputs/simple-select.tsx +20 -190
  300. package/packages/cli/vendor/src/components/layout/app-sidebar.tsx +3 -1
  301. package/packages/cli/vendor/src/components/layout/breadcrumbs.tsx +3 -1
  302. package/packages/cli/vendor/src/components/modern/calendar-scheduler.tsx +28 -13
  303. package/packages/cli/vendor/src/components/modern/dual-list-picker.tsx +103 -35
  304. package/packages/cli/vendor/src/components/modern/rich-text-editor.tsx +25 -22
  305. package/packages/cli/vendor/src/components/modern/tour.tsx +47 -29
  306. package/packages/cli/vendor/src/components/navigation/command-bar.tsx +6 -0
  307. package/packages/cli/vendor/src/components/navigation/demo.tsx +0 -1
  308. package/packages/cli/vendor/src/components/navigation/nav-tabs.tsx +38 -29
  309. package/packages/cli/vendor/src/components/navigation/page-tabs.tsx +35 -23
  310. package/packages/cli/vendor/src/components/navigation/pagination.tsx +65 -31
  311. package/packages/cli/vendor/src/components/notifications/notification-center.tsx +64 -39
  312. package/packages/cli/vendor/src/components/notifications/toast.tsx +23 -21
  313. package/packages/cli/vendor/src/components/overlay/alert-dialog.tsx +1 -1
  314. package/packages/cli/vendor/src/components/overlay/confirm-dialog.tsx +45 -22
  315. package/packages/cli/vendor/src/components/overlay/drawer.tsx +18 -5
  316. package/packages/cli/vendor/src/components/ui/accordion/index.tsx +4 -0
  317. package/packages/cli/vendor/src/components/ui/badge/index.tsx +2 -1
  318. package/packages/cli/vendor/src/components/ui/button/index.tsx +11 -5
  319. package/packages/cli/vendor/src/components/ui/card/index.tsx +95 -25
  320. package/packages/cli/vendor/src/components/ui/dialog/index.tsx +2 -1
  321. package/packages/cli/vendor/src/components/ui/hover-card.tsx +54 -28
  322. package/packages/cli/vendor/src/components/ui/input/index.tsx +98 -0
  323. package/packages/cli/vendor/src/components/ui/popover/index.tsx +10 -8
  324. package/packages/cli/vendor/src/components/ui/radio-group/index.tsx +55 -6
  325. package/packages/cli/vendor/src/components/ui/right-click-menu/index.tsx +120 -9
  326. package/packages/cli/vendor/src/components/ui/segmented-control/index.tsx +29 -3
  327. package/packages/cli/vendor/src/components/ui/select/index.tsx +260 -34
  328. package/packages/cli/vendor/src/components/ui/switch/index.tsx +71 -6
  329. package/packages/cli/vendor/src/components/ui/tabs/index.tsx +22 -6
  330. package/packages/cli/vendor/src/components/ui/textarea/index.tsx +105 -15
  331. package/packages/cli/vendor/src/components/ui/textarea.tsx +2 -0
  332. package/packages/cli/vendor/src/components/ui/tooltip/index.tsx +67 -22
  333. package/packages/cli/vendor/src/components/upload/file-upload.tsx +120 -57
  334. package/packages/cli/vendor/src/components/upload/image-upload.tsx +71 -24
  335. package/packages/cli/vendor/src/public-component-surface.ts +3 -0
  336. package/packages/cli/vendor/src/showcase/component-api-schema.ts +79 -41
  337. package/packages/cli/vendor/src/showcase/create-demo.tsx +16 -15
  338. package/packages/cli/vendor/src/showcase/fallback.tsx +4 -19
  339. package/packages/cli/vendor/src/showcase/premium/alert/showcase.tsx +1 -0
  340. package/packages/cli/vendor/src/showcase/premium/app-sidebar/showcase.tsx +1 -0
  341. package/packages/cli/vendor/src/showcase/premium/badge/showcase.tsx +4 -2
  342. package/packages/cli/vendor/src/showcase/premium/badge/types.ts +1 -1
  343. package/packages/cli/vendor/src/showcase/premium/breadcrumbs/showcase.tsx +3 -1
  344. package/packages/cli/vendor/src/showcase/premium/button/mock.ts +2 -5
  345. package/packages/cli/vendor/src/showcase/premium/button/showcase.tsx +2 -2
  346. package/packages/cli/vendor/src/showcase/premium/card/showcase.tsx +26 -1
  347. package/packages/cli/vendor/src/showcase/premium/carousel/showcase.tsx +19 -3
  348. package/packages/cli/vendor/src/showcase/premium/command-bar/showcase.tsx +1 -1
  349. package/packages/cli/vendor/src/showcase/premium/data-table/mock.ts +26 -25
  350. package/packages/cli/vendor/src/showcase/premium/data-table/showcase.tsx +3 -3
  351. package/packages/cli/vendor/src/showcase/premium/data-table-parts/showcase.tsx +3 -3
  352. package/packages/cli/vendor/src/showcase/premium/file-upload/showcase.tsx +21 -1
  353. package/packages/cli/vendor/src/showcase/premium/image-upload/showcase.tsx +4 -1
  354. package/packages/cli/vendor/src/showcase/premium/index.ts +0 -2
  355. package/packages/cli/vendor/src/showcase/premium/loading-state/showcase.tsx +1 -1
  356. package/packages/cli/vendor/src/showcase/premium/metric-grid/showcase.tsx +36 -4
  357. package/packages/cli/vendor/src/showcase/premium/notification-center/showcase.tsx +4 -3
  358. package/packages/cli/vendor/src/showcase/premium/page-state/showcase.tsx +1 -0
  359. package/packages/cli/vendor/src/showcase/premium/pagination/showcase.tsx +13 -1
  360. package/packages/cli/vendor/src/showcase/premium/popover/showcase.tsx +27 -11
  361. package/packages/cli/vendor/src/showcase/premium/radio-group/showcase.tsx +13 -1
  362. package/packages/cli/vendor/src/showcase/premium/right-click-menu/showcase.tsx +8 -5
  363. package/packages/cli/vendor/src/showcase/premium/segmented-control/showcase.tsx +1 -0
  364. package/packages/cli/vendor/src/showcase/premium/select/data.ts +12 -3
  365. package/packages/cli/vendor/src/showcase/premium/select/mock.ts +4 -4
  366. package/packages/cli/vendor/src/showcase/premium/select/showcase.tsx +35 -22
  367. package/packages/cli/vendor/src/showcase/premium/select/types.ts +3 -0
  368. package/packages/cli/vendor/src/showcase/premium/statistic/showcase.tsx +10 -1
  369. package/packages/cli/vendor/src/showcase/premium/switch/showcase.tsx +15 -6
  370. package/packages/cli/vendor/src/showcase/premium/tabs/showcase.tsx +48 -1
  371. package/packages/cli/vendor/src/showcase/premium/textarea/mock.ts +12 -4
  372. package/packages/cli/vendor/src/showcase/premium/textarea/showcase.tsx +5 -0
  373. package/packages/cli/vendor/src/showcase/premium/toast/showcase.tsx +17 -1
  374. package/packages/cli/vendor/src/showcase/premium/types.ts +1 -1
  375. package/packages/cli/vendor/src/showcase/registry-quality.ts +3 -2
  376. package/packages/cli/vendor/src/showcase/registry-specific.tsx +7 -8
  377. package/packages/cli/vendor/src/showcase/render-registry-preview.tsx +5 -21
  378. package/packages/cli/vendor/src/showcase/site-data.tsx +21 -15
  379. package/packages/cli/vendor/src/showcase/tembro-registry.json +42 -20
  380. package/packages/cli/vendor/src/showcase/types.ts +1 -1
  381. package/registry.json +18 -6
@@ -5,22 +5,25 @@ import "react";
5
5
  import { BellIcon as a } from "lucide-react";
6
6
  import { jsx as o, jsxs as s } from "react/jsx-runtime";
7
7
  //#region src/components/notifications/notification-center.tsx
8
- function c({ notifications: c, onMarkAllRead: l, onNotificationClick: u, emptyLabel: d = "No new notifications", title: f = "Notifications", className: p, ...m }) {
9
- let h = c.filter((e) => !e.read).length;
8
+ function c({ notifications: c, onMarkAllRead: l, onClearAll: u, onNotificationClick: d, emptyLabel: f = "No new notifications", title: p = "Notifications", className: m, ...h }) {
9
+ let g = c.filter((e) => !e.read).length, _ = c.reduce((e, t) => {
10
+ let n = String(t.group ?? "Recent");
11
+ return e[n] = [...e[n] ?? [], t], e;
12
+ }, {});
10
13
  return /* @__PURE__ */ o("div", {
11
14
  "data-slot": "notification-center",
12
- className: p,
13
- ...m,
15
+ className: m,
16
+ ...h,
14
17
  children: /* @__PURE__ */ s(n, { children: [/* @__PURE__ */ s(t, {
15
18
  render: /* @__PURE__ */ o(i, {}),
16
19
  variant: "ghost",
17
20
  size: "icon",
18
21
  className: "relative rounded-full border border-[color:var(--aui-surface-border)] bg-[color:var(--aui-control-bg)] text-foreground shadow-sm hover:bg-[color:color-mix(in_srgb,var(--aui-control-bg)_82%,white_18%)]",
19
- children: [/* @__PURE__ */ o(a, { className: "size-5" }), h > 0 && /* @__PURE__ */ s("span", {
22
+ children: [/* @__PURE__ */ o(a, { className: "size-5" }), g > 0 && /* @__PURE__ */ s("span", {
20
23
  className: "absolute -right-1 -top-1 inline-flex min-w-5 items-center justify-center rounded-full bg-[color:var(--aui-brand-strong)] px-1.5 py-0.5 text-[10px] font-bold leading-none text-white shadow-[0_8px_20px_rgba(16,185,129,0.35)]",
21
- children: [h, /* @__PURE__ */ s("span", {
24
+ children: [g, /* @__PURE__ */ s("span", {
22
25
  className: "sr-only",
23
- children: [h, " unread notifications"]
26
+ children: [g, " unread notifications"]
24
27
  })]
25
28
  })]
26
29
  }), /* @__PURE__ */ s(r, {
@@ -32,46 +35,61 @@ function c({ notifications: c, onMarkAllRead: l, onNotificationClick: u, emptyLa
32
35
  className: "grid gap-0.5",
33
36
  children: [/* @__PURE__ */ o("h4", {
34
37
  className: "font-semibold tracking-tight text-foreground",
35
- children: f
38
+ children: p
36
39
  }), /* @__PURE__ */ o("span", {
37
40
  className: "text-xs text-muted-foreground",
38
- children: h > 0 ? `${h} unread update${h > 1 ? "s" : ""}` : "You're all caught up"
41
+ children: g > 0 ? `${g} unread update${g > 1 ? "s" : ""}` : "You're all caught up"
39
42
  })]
40
- }), h > 0 && l && /* @__PURE__ */ o(t, {
41
- variant: "ghost",
42
- size: "sm",
43
- className: "h-8 rounded-full border border-[color:var(--aui-surface-border)] px-3 text-xs font-semibold text-muted-foreground hover:bg-[color:var(--aui-page-bg)] hover:text-foreground",
44
- onClick: l,
45
- children: "Mark all read"
43
+ }), /* @__PURE__ */ s("div", {
44
+ className: "flex items-center gap-2",
45
+ children: [g > 0 && l ? /* @__PURE__ */ o(t, {
46
+ variant: "ghost",
47
+ size: "sm",
48
+ className: "h-8 rounded-full border border-[color:var(--aui-surface-border)] px-3 text-xs font-semibold text-muted-foreground hover:bg-[color:var(--aui-page-bg)] hover:text-foreground",
49
+ onClick: l,
50
+ children: "Mark all read"
51
+ }) : null, c.length > 0 && u ? /* @__PURE__ */ o(t, {
52
+ variant: "ghost",
53
+ size: "sm",
54
+ className: "h-8 rounded-full border border-[color:var(--aui-surface-border)] px-3 text-xs font-semibold text-muted-foreground hover:bg-[color:var(--aui-page-bg)] hover:text-foreground",
55
+ onClick: u,
56
+ children: "Clear all"
57
+ }) : null]
46
58
  })]
47
59
  }), /* @__PURE__ */ o("div", {
48
60
  className: "max-h-[400px] overflow-y-auto bg-[color:var(--aui-page-bg)] p-2",
49
61
  children: c.length === 0 ? /* @__PURE__ */ o("div", {
50
62
  className: "rounded-2xl border border-dashed border-[color:var(--aui-surface-border)] px-6 py-10 text-center text-sm text-muted-foreground",
51
- children: d
63
+ children: f
52
64
  }) : /* @__PURE__ */ o("div", {
53
- className: "flex flex-col",
54
- children: c.map((t) => /* @__PURE__ */ s("button", {
55
- className: e("flex flex-col gap-1 rounded-2xl border border-transparent px-4 py-3 text-left transition hover:border-[color:var(--aui-surface-border)] hover:bg-[color:var(--aui-control-bg)]", !t.read && "border-[color:color-mix(in_srgb,var(--aui-brand-strong)_16%,var(--aui-surface-border))] bg-[color:color-mix(in_srgb,var(--aui-brand-strong)_8%,var(--aui-control-bg))]"),
56
- onClick: () => u?.(t),
57
- children: [
58
- /* @__PURE__ */ s("div", {
59
- className: "flex w-full items-start justify-between gap-2",
60
- children: [/* @__PURE__ */ o("span", {
61
- className: "text-sm font-semibold leading-tight text-foreground",
62
- children: t.title
63
- }), !t.read && /* @__PURE__ */ o("span", { className: "mt-1 flex size-2 shrink-0 rounded-full bg-[color:var(--aui-brand-strong)] shadow-[0_0_0_4px_color-mix(in_srgb,var(--aui-brand-strong)_14%,transparent)]" })]
64
- }),
65
- t.description && /* @__PURE__ */ o("span", {
66
- className: "line-clamp-2 text-xs leading-5 text-muted-foreground",
67
- children: t.description
68
- }),
69
- t.time && /* @__PURE__ */ o("span", {
70
- className: "mt-1 text-[10px] font-semibold uppercase tracking-[0.16em] text-muted-foreground/80",
71
- children: t.time
72
- })
73
- ]
74
- }, t.id))
65
+ className: "flex flex-col gap-3",
66
+ children: Object.entries(_).map(([t, n]) => /* @__PURE__ */ s("div", {
67
+ className: "grid gap-2",
68
+ children: [/* @__PURE__ */ o("div", {
69
+ className: "px-2 pt-1 text-[10px] font-semibold uppercase tracking-[0.18em] text-muted-foreground",
70
+ children: t
71
+ }), n.map((t) => /* @__PURE__ */ s("button", {
72
+ className: e("flex flex-col gap-1 rounded-2xl border border-transparent px-4 py-3 text-left transition hover:border-[color:var(--aui-surface-border)] hover:bg-[color:var(--aui-control-bg)]", !t.read && "border-[color:color-mix(in_srgb,var(--aui-brand-strong)_16%,var(--aui-surface-border))] bg-[color:color-mix(in_srgb,var(--aui-brand-strong)_8%,var(--aui-control-bg))]"),
73
+ onClick: () => d?.(t),
74
+ children: [
75
+ /* @__PURE__ */ s("div", {
76
+ className: "flex w-full items-start justify-between gap-2",
77
+ children: [/* @__PURE__ */ o("span", {
78
+ className: "text-sm font-semibold leading-tight text-foreground",
79
+ children: t.title
80
+ }), !t.read && /* @__PURE__ */ o("span", { className: "mt-1 flex size-2 shrink-0 rounded-full bg-[color:var(--aui-brand-strong)] shadow-[0_0_0_4px_color-mix(in_srgb,var(--aui-brand-strong)_14%,transparent)]" })]
81
+ }),
82
+ t.description && /* @__PURE__ */ o("span", {
83
+ className: "line-clamp-2 text-xs leading-5 text-muted-foreground",
84
+ children: t.description
85
+ }),
86
+ t.time && /* @__PURE__ */ o("span", {
87
+ className: "mt-1 text-[10px] font-semibold uppercase tracking-[0.16em] text-muted-foreground/80",
88
+ children: t.time
89
+ })
90
+ ]
91
+ }, t.id))]
92
+ }, t))
75
93
  })
76
94
  })]
77
95
  })] })
@@ -1 +1 @@
1
- Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=require("../../_virtual/_rolldown/runtime.cjs"),t=require("../../lib/utils.cjs"),n=require("../ui/button/index.cjs");let r=require("react");r=e.__toESM(r,1);let i=require("lucide-react"),a=require("react/jsx-runtime");var o=r.createContext(null),s={default:`border-border bg-popover text-popover-foreground`,success:`border-emerald-500/20 bg-emerald-500/10 text-emerald-950 dark:text-emerald-100`,info:`border-blue-500/20 bg-blue-500/10 text-blue-950 dark:text-blue-100`,warning:`border-amber-500/20 bg-amber-500/10 text-amber-950 dark:text-amber-100`,danger:`border-destructive/20 bg-destructive/10 text-destructive`,loading:`border-border bg-popover text-popover-foreground`},c={default:(0,a.jsx)(i.InfoIcon,{className:`size-4`}),success:(0,a.jsx)(i.CheckCircle2Icon,{className:`size-4`}),info:(0,a.jsx)(i.InfoIcon,{className:`size-4`}),warning:(0,a.jsx)(i.TriangleAlertIcon,{className:`size-4`}),danger:(0,a.jsx)(i.AlertCircleIcon,{className:`size-4`}),loading:(0,a.jsx)(i.Loader2Icon,{className:`size-4 animate-spin`})};function l(){return`toast-${Date.now()}-${Math.random().toString(16).slice(2)}`}function u(e){return typeof e==`object`&&!!e&&!r.isValidElement(e)&&!Array.isArray(e)}function d(e,t){return u(e)?{...e,tone:e.tone??t}:{title:e,tone:t}}function f(e,t){return typeof e==`function`?e(t):e}var p={"top-right":`right-4 top-4`,"top-left":`left-4 top-4`,"bottom-right":`bottom-4 right-4`,"bottom-left":`bottom-4 left-4`,"top-center":`left-1/2 top-4 -translate-x-1/2`,"bottom-center":`bottom-4 left-1/2 -translate-x-1/2`};function m({children:e,defaultDuration:n=4e3,maxToasts:i=5,pauseOnHover:s=!0,position:c=`top-right`}){let[u,m]=r.useState([]),g=r.useCallback(e=>{m(t=>t.filter(t=>t.id!==e))},[]),_=r.useCallback(e=>{let t=e.id??l(),r={tone:`default`,duration:n,dismissible:!0,...e,id:t};return m(e=>[r,...e.filter(e=>e.id!==t)].slice(0,i)),t},[n,i]),v=r.useCallback((e,t)=>{m(n=>n.map(n=>n.id===e?{...n,...t}:n))},[]),y=r.useCallback(()=>{m([])},[]),b=r.useCallback(e=>_(d(e,`success`)),[_]),x=r.useCallback(e=>_(d(e,`info`)),[_]),S=r.useCallback(e=>_(d(e,`warning`)),[_]),C=r.useCallback(e=>_(d(e,`danger`)),[_]),w=r.useCallback(e=>_({duration:0,...d(e,`loading`)}),[_]),T=r.useCallback(async(e,t)=>{let r=_({duration:0,dismissible:!1,...d(t.loading,`loading`)});try{let i=await e;return v(r,{duration:n,dismissible:!0,...d(f(t.success,i),`success`)}),i}catch(e){throw v(r,{duration:n,dismissible:!0,...d(f(t.error,e),`danger`)}),e}},[_,n,v]),E=r.useMemo(()=>({toasts:u,addToast:_,updateToast:v,dismissToast:g,clearToasts:y,success:b,info:x,warning:S,error:C,loading:w,promise:T}),[_,y,g,C,x,w,T,b,u,v,S]);return(0,a.jsxs)(o.Provider,{value:E,children:[e,(0,a.jsx)(`div`,{"data-slot":`toast-viewport`,className:t.cn(`fixed z-[100] flex w-[min(100%-2rem,24rem)] flex-col gap-2`,p[c]),children:u.map(e=>(0,a.jsx)(h,{toast:e,pauseOnHover:s,onDismiss:g},e.id))})]})}function h({toast:e,pauseOnHover:o,onDismiss:l}){let u=e.tone??`default`,[d,f]=r.useState(!1);return r.useEffect(()=>{if(e.duration===1/0||e.duration===0||o&&d)return;let t=window.setTimeout(()=>l(e.id),e.duration??4e3);return()=>window.clearTimeout(t)},[d,l,o,e.duration,e.id]),(0,a.jsxs)(`div`,{"data-slot":`toast`,"data-tone":u,className:t.cn(`flex gap-3 rounded-lg border p-3 shadow-lg backdrop-blur`,s[u]),role:`status`,"aria-live":`polite`,onMouseEnter:()=>f(!0),onMouseLeave:()=>f(!1),children:[(0,a.jsx)(`div`,{className:`mt-0.5 shrink-0`,children:c[u]}),(0,a.jsxs)(`div`,{className:`min-w-0 flex-1 space-y-1`,children:[e.title&&(0,a.jsx)(`div`,{className:`text-sm font-medium leading-none`,children:e.title}),e.description&&(0,a.jsx)(`div`,{className:`text-sm text-muted-foreground`,children:e.description}),e.action&&(0,a.jsx)(`div`,{className:`pt-1`,children:e.action})]}),e.dismissible!==!1&&(0,a.jsxs)(n.Button,{type:`button`,variant:`ghost`,size:`icon-xs`,onClick:()=>l(e.id),children:[(0,a.jsx)(i.XIcon,{}),(0,a.jsx)(`span`,{className:`sr-only`,children:`Dismiss`})]})]})}function g(){let e=r.useContext(o);if(!e)throw Error(`useToast must be used inside ToastProvider`);return e}exports.ToastProvider=m,exports.useToast=g;
1
+ Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=require("../../_virtual/_rolldown/runtime.cjs"),t=require("../../lib/utils.cjs"),n=require("../ui/button/index.cjs");let r=require("react");r=e.__toESM(r,1);let i=require("lucide-react"),a=require("react/jsx-runtime");var o=r.createContext(null),s={default:`border-border bg-popover text-popover-foreground`,success:`border-emerald-500/20 bg-emerald-500/10 text-emerald-950 dark:text-emerald-100`,info:`border-blue-500/20 bg-blue-500/10 text-blue-950 dark:text-blue-100`,warning:`border-amber-500/20 bg-amber-500/10 text-amber-950 dark:text-amber-100`,danger:`border-destructive/20 bg-destructive/10 text-destructive`,loading:`border-border bg-popover text-popover-foreground`},c={default:(0,a.jsx)(i.InfoIcon,{className:`size-4`}),success:(0,a.jsx)(i.CheckCircle2Icon,{className:`size-4`}),info:(0,a.jsx)(i.InfoIcon,{className:`size-4`}),warning:(0,a.jsx)(i.TriangleAlertIcon,{className:`size-4`}),danger:(0,a.jsx)(i.AlertCircleIcon,{className:`size-4`}),loading:(0,a.jsx)(i.Loader2Icon,{className:`size-4 animate-spin`})};function l(){return`toast-${Date.now()}-${Math.random().toString(16).slice(2)}`}function u(e){return typeof e==`object`&&!!e&&!r.isValidElement(e)&&!Array.isArray(e)}function d(e,t){return u(e)?{...e,tone:e.tone??t}:{title:e,tone:t}}function f(e,t){return typeof e==`function`?e(t):e}var p={"top-right":`right-4 top-4`,"top-left":`left-4 top-4`,"bottom-right":`bottom-4 right-4`,"bottom-left":`bottom-4 left-4`,"top-center":`left-1/2 top-4 -translate-x-1/2`,"bottom-center":`bottom-4 left-1/2 -translate-x-1/2`};function m({children:e,defaultDuration:n=4e3,maxToasts:i=5,pauseOnHover:s=!0,position:c=`top-right`}){let[u,m]=r.useState([]),g=r.useCallback(e=>{m(t=>t.filter(t=>t.id!==e))},[]),_=r.useCallback(e=>{let t=e.id??l(),r={tone:`default`,duration:n,dismissible:!0,...e,id:t};return m(e=>[r,...e.filter(e=>e.id!==t)].slice(0,i)),t},[n,i]),v=r.useCallback((e,t)=>{m(n=>n.map(n=>n.id===e?{...n,...t}:n))},[]),y=r.useCallback(()=>{m([])},[]),b=r.useCallback(e=>_(d(e,`success`)),[_]),x=r.useCallback(e=>_(d(e,`info`)),[_]),S=r.useCallback(e=>_(d(e,`warning`)),[_]),C=r.useCallback(e=>_(d(e,`danger`)),[_]),w=r.useCallback(e=>_({duration:0,...d(e,`loading`)}),[_]),T=r.useCallback(async(e,t)=>{let r=_({duration:0,dismissible:!1,...d(t.loading,`loading`)});try{let i=await e;return v(r,{duration:n,dismissible:!0,...d(f(t.success,i),`success`)}),i}catch(e){throw v(r,{duration:n,dismissible:!0,...d(f(t.error,e),`danger`)}),e}},[_,n,v]),E=r.useMemo(()=>({toasts:u,addToast:_,updateToast:v,dismissToast:g,clearToasts:y,success:b,info:x,warning:S,error:C,loading:w,promise:T}),[_,y,g,C,x,w,T,b,u,v,S]);return(0,a.jsxs)(o.Provider,{value:E,children:[e,(0,a.jsx)(`div`,{"data-slot":`toast-viewport`,className:t.cn(`fixed z-[100] flex w-[min(100%-2rem,24rem)] flex-col gap-2`,p[c]),children:u.map(e=>(0,a.jsx)(h,{toast:e,pauseOnHover:s,onDismiss:g},e.id))})]})}function h({toast:e,pauseOnHover:o,onDismiss:l}){let u=e.tone??`default`,[d,f]=r.useState(!1);return r.useEffect(()=>{if(e.duration===1/0||e.duration===0||o&&d)return;let t=window.setTimeout(()=>l(e.id),e.duration??4e3);return()=>window.clearTimeout(t)},[d,l,o,e.duration,e.id]),(0,a.jsxs)(`div`,{"data-slot":`toast`,"data-tone":u,className:t.cn(`flex gap-3 rounded-lg border p-3 shadow-lg backdrop-blur`,s[u]),role:`status`,"aria-live":`polite`,onMouseEnter:()=>f(!0),onMouseLeave:()=>f(!1),children:[(0,a.jsx)(`div`,{className:`mt-0.5 shrink-0`,children:c[u]}),(0,a.jsxs)(`div`,{className:`min-w-0 flex-1 space-y-1`,children:[e.group?(0,a.jsx)(`div`,{className:`text-[10px] font-semibold uppercase tracking-[0.18em] text-muted-foreground`,children:e.group}):null,e.title&&(0,a.jsx)(`div`,{className:`text-sm font-medium leading-none`,children:e.title}),e.description&&(0,a.jsx)(`div`,{className:`text-sm text-muted-foreground`,children:e.description}),e.action&&(0,a.jsx)(`div`,{className:`pt-1`,children:e.action})]}),e.dismissible!==!1&&(0,a.jsxs)(n.Button,{type:`button`,variant:`ghost`,size:`icon-xs`,onClick:()=>l(e.id),children:[(0,a.jsx)(i.XIcon,{}),(0,a.jsx)(`span`,{className:`sr-only`,children:`Dismiss`})]})]})}function g(){let e=r.useContext(o);if(!e)throw Error(`useToast must be used inside ToastProvider`);return e}exports.ToastProvider=m,exports.useToast=g;
@@ -8,6 +8,7 @@ export type ToastItem = {
8
8
  action?: React.ReactNode;
9
9
  duration?: number;
10
10
  dismissible?: boolean;
11
+ group?: React.ReactNode;
11
12
  };
12
13
  export type CreateToastInput = Omit<ToastItem, "id"> & {
13
14
  id?: string;
@@ -157,6 +157,10 @@ function b({ toast: r, pauseOnHover: i, onDismiss: a }) {
157
157
  /* @__PURE__ */ u("div", {
158
158
  className: "min-w-0 flex-1 space-y-1",
159
159
  children: [
160
+ r.group ? /* @__PURE__ */ l("div", {
161
+ className: "text-[10px] font-semibold uppercase tracking-[0.18em] text-muted-foreground",
162
+ children: r.group
163
+ }) : null,
160
164
  r.title && /* @__PURE__ */ l("div", {
161
165
  className: "text-sm font-medium leading-none",
162
166
  children: r.title
@@ -1 +1 @@
1
- Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=require("../../_virtual/_rolldown/runtime.cjs"),t=require("../ui/button/index.cjs"),n=require("../ui/input/index.cjs"),r=require("../ui/dialog/index.cjs");let i=require("react");i=e.__toESM(i,1);let a=require("lucide-react"),o=require("react/jsx-runtime");function s({title:e=`Are you sure?`,description:s,icon:c=(0,o.jsx)(a.AlertTriangleIcon,{}),cancelLabel:l=`Cancel`,actionLabel:u=`Continue`,actionTone:d=`destructive`,cancelVariant:f=`outline`,loading:p=!1,closeOnAction:m=!0,confirmValue:h,confirmLabel:g=`Type to confirm`,confirmPlaceholder:_,confirmDescription:v,confirmCaseSensitive:y=!0,severityNote:b,errorMessage:x=`Action could not be completed. Try again.`,onActionError:S,onAction:C,children:w,preventCloseWhileLoading:T=!0,actionButtonProps:E,cancelButtonProps:D,onOpenChange:O,...k}){let[A,j]=i.useState(!1),[M,N]=i.useState(``),[P,F]=i.useState(null),I=p||A,L=!!h?.trim(),R=y?h?.trim():h?.trim().toLowerCase(),z=y?M.trim():M.trim().toLowerCase(),B=!L||z===R;i.useEffect(()=>{k.open||(N(``),F(null))},[k.open]);let V=i.useCallback((e,t)=>{!e&&T&&I||O?.(e,t)},[O,T,I]),H=()=>{V(!1,void 0)},U=async()=>{if(!(!B||I)){if(F(null),!C){m&&H();return}try{j(!0),await C(),m&&H()}catch(e){F(x),S?.(e)}finally{j(!1)}}};return(0,o.jsxs)(r.Dialog,{onOpenChange:V,...k,children:[w,(0,o.jsxs)(r.DialogContent,{children:[(0,o.jsxs)(r.DialogHeader,{children:[(0,o.jsx)(`div`,{className:`mb-3 inline-flex size-11 items-center justify-center rounded-2xl border border-destructive/20 bg-destructive/10 text-destructive [&_svg]:size-5`,children:c}),(0,o.jsx)(r.DialogTitle,{children:e}),s?(0,o.jsx)(r.DialogDescription,{children:s}):null]}),L?(0,o.jsxs)(`div`,{className:`grid gap-2.5`,children:[(0,o.jsxs)(`div`,{className:`space-y-1`,children:[(0,o.jsx)(`p`,{className:`text-sm font-medium text-foreground`,children:g}),(0,o.jsx)(`p`,{className:`text-xs leading-5 text-muted-foreground`,children:v??(0,o.jsxs)(o.Fragment,{children:[`Type `,(0,o.jsx)(`span`,{className:`font-semibold text-foreground`,children:h}),` to continue.`]})})]}),(0,o.jsx)(n.Input,{value:M,onValueChange:N,placeholder:_??h,autoComplete:`off`,autoCapitalize:`off`,spellCheck:!1,"aria-invalid":P?!0:void 0,"aria-describedby":P?`alert-dialog-error`:void 0})]}):null,b?(0,o.jsx)(`div`,{className:`rounded-2xl border border-border/70 bg-muted/35 px-3.5 py-3 text-sm leading-6 text-muted-foreground`,children:b}):null,P?(0,o.jsx)(`div`,{id:`alert-dialog-error`,role:`alert`,"aria-live":`polite`,className:`rounded-2xl border border-destructive/20 bg-destructive/8 px-3.5 py-3 text-sm leading-6 text-destructive`,children:P}):null,(0,o.jsxs)(r.DialogFooter,{children:[(0,o.jsx)(r.DialogClose,{render:()=>(0,o.jsx)(t.Button,{type:`button`,variant:f,disabled:I,...D,children:l})}),(0,o.jsx)(t.Button,{type:`button`,variant:d===`destructive`?`destructive`:`default`,loading:I,disabled:!B&&!I,onClick:()=>void U(),...E,children:u})]})]})]})}exports.AlertDialog=s;
1
+ Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=require("../../_virtual/_rolldown/runtime.cjs"),t=require("../ui/button/index.cjs"),n=require("../ui/input/index.cjs"),r=require("../ui/dialog/index.cjs");let i=require("react");i=e.__toESM(i,1);let a=require("lucide-react"),o=require("react/jsx-runtime");function s({title:e=`Are you sure?`,description:s,icon:c=(0,o.jsx)(a.AlertTriangleIcon,{}),cancelLabel:l=`Cancel`,actionLabel:u=`Continue`,actionTone:d=`destructive`,cancelVariant:f=`outline`,loading:p=!1,closeOnAction:m=!0,confirmValue:h,confirmLabel:g=`Type to confirm`,confirmPlaceholder:_,confirmDescription:v,confirmCaseSensitive:y=!0,severityNote:b,errorMessage:x=`Action could not be completed. Try again.`,onActionError:S,onAction:C,children:w,preventCloseWhileLoading:T=!0,actionButtonProps:E,cancelButtonProps:D,onOpenChange:O,...k}){let[A,j]=i.useState(!1),[M,N]=i.useState(``),[P,F]=i.useState(null),I=p||A,L=!!h?.trim(),R=y?h?.trim():h?.trim().toLowerCase(),z=y?M.trim():M.trim().toLowerCase(),B=!L||z===R;i.useEffect(()=>{k.open||(N(``),F(null))},[k.open]);let V=i.useCallback((e,t)=>{!e&&T&&I||O?.(e,t)},[O,T,I]),H=()=>{V(!1,void 0)},U=async()=>{if(!(!B||I)){if(F(null),!C){m&&H();return}try{j(!0),await C(),m&&H()}catch(e){F(x),S?.(e)}finally{j(!1)}}};return(0,o.jsxs)(r.Dialog,{onOpenChange:V,...k,children:[w,(0,o.jsxs)(r.DialogContent,{children:[(0,o.jsxs)(r.DialogHeader,{children:[(0,o.jsx)(`div`,{className:`mb-3 inline-flex size-11 items-center justify-center rounded-2xl border border-destructive/20 bg-destructive/10 text-destructive [&_svg]:size-5`,children:c}),(0,o.jsx)(r.DialogTitle,{children:e}),s?(0,o.jsx)(r.DialogDescription,{children:s}):null]}),L?(0,o.jsxs)(`div`,{className:`grid gap-2.5`,children:[(0,o.jsxs)(`div`,{className:`space-y-1`,children:[(0,o.jsx)(`p`,{className:`text-sm font-medium text-foreground`,children:g}),(0,o.jsx)(`p`,{className:`text-xs leading-5 text-muted-foreground`,children:v??(0,o.jsxs)(o.Fragment,{children:[`Type `,(0,o.jsx)(`span`,{className:`font-semibold text-foreground`,children:h}),` to continue.`]})})]}),(0,o.jsx)(n.Input,{value:M,onValueChange:N,placeholder:_??h,autoComplete:`off`,autoCapitalize:`off`,spellCheck:!1,"aria-invalid":P?!0:void 0,"aria-describedby":P?`alert-dialog-error`:void 0})]}):null,b?(0,o.jsx)(`div`,{className:`rounded-2xl border border-border/70 bg-muted/35 px-3.5 py-3 text-sm leading-6 text-muted-foreground`,children:b}):null,P?(0,o.jsx)(`div`,{id:`alert-dialog-error`,role:`alert`,"aria-live":`polite`,className:`rounded-2xl border border-destructive/20 bg-destructive/8 px-3.5 py-3 text-sm leading-6 text-destructive`,children:P}):null,(0,o.jsxs)(r.DialogFooter,{children:[(0,o.jsx)(r.DialogClose,{render:()=>(0,o.jsx)(t.Button,{type:`button`,variant:f,disabled:I,...D,children:l})}),(0,o.jsx)(t.Button,{type:`button`,variant:d===`destructive`?`destructive`:`default`,loading:I,disabled:!B||I,onClick:()=>void U(),...E,children:u})]})]})]})}exports.AlertDialog=s;
@@ -95,7 +95,7 @@ function m({ title: m = "Are you sure?", description: h, icon: g = /* @__PURE__
95
95
  type: "button",
96
96
  variant: y === "destructive" ? "destructive" : "default",
97
97
  loading: W,
98
- disabled: !J && !W,
98
+ disabled: !J || W,
99
99
  onClick: () => void Z(),
100
100
  ...P,
101
101
  children: v
@@ -1 +1 @@
1
- Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=require("../../_virtual/_rolldown/runtime.cjs"),t=require("./dialog-actions.cjs"),n=require("./modal-shell.cjs");let r=require("react");r=e.__toESM(r,1);let i=require("react/jsx-runtime");function a({cancelText:e=`Cancel`,confirmText:r=`Confirm`,confirmVariant:a=`default`,confirmDisabled:o=!1,cancelDisabled:s=!1,isLoading:c=!1,onCancel:l,onConfirm:u,onOpenChange:d,...f}){return(0,i.jsx)(n.ModalShell,{showCloseButton:!c,onOpenChange:e=>{c&&e===!1||d?.(e)},footer:(0,i.jsxs)(t.DialogActions,{children:[(0,i.jsx)(t.DialogActionButton,{type:`button`,variant:`outline`,disabled:s||c,onClick:()=>{l?.(),c||d?.(!1)},children:e}),(0,i.jsx)(t.DialogActionButton,{type:`button`,variant:a,disabled:o||c,isLoading:c,onClick:u,children:r})]}),...f})}exports.ConfirmDialog=a;
1
+ Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=require("../../_virtual/_rolldown/runtime.cjs"),t=require("./dialog-actions.cjs"),n=require("./modal-shell.cjs");let r=require("react");r=e.__toESM(r,1);let i=require("react/jsx-runtime");function a({cancelText:e=`Cancel`,confirmText:a=`Confirm`,confirmVariant:o=`default`,confirmDisabled:s=!1,cancelDisabled:c=!1,isLoading:l=!1,closeOnConfirm:u=!0,onConfirmError:d,onCancel:f,onConfirm:p,onOpenChange:m,...h}){let[g,_]=r.useState(!1),v=l||g,y=e=>{v&&e===!1||m?.(e)},b=()=>{f?.(),v||m?.(!1)},x=async()=>{if(!(s||v))try{_(!0),await p?.(),u&&m?.(!1)}catch(e){d?.(e)}finally{_(!1)}};return(0,i.jsx)(n.ModalShell,{showCloseButton:!v,onOpenChange:y,footer:(0,i.jsxs)(t.DialogActions,{children:[(0,i.jsx)(t.DialogActionButton,{type:`button`,variant:`outline`,disabled:c||v,onClick:b,children:e}),(0,i.jsx)(t.DialogActionButton,{type:`button`,variant:o,disabled:s||v,isLoading:v,onClick:()=>void x(),children:a})]}),...h})}exports.ConfirmDialog=a;
@@ -9,9 +9,11 @@ type ConfirmDialogProps = Omit<ModalShellProps, "footer"> & {
9
9
  confirmDisabled?: boolean;
10
10
  cancelDisabled?: boolean;
11
11
  isLoading?: boolean;
12
+ closeOnConfirm?: boolean;
13
+ onConfirmError?: (error: unknown) => void;
12
14
  onCancel?: () => void;
13
- onConfirm?: () => void;
15
+ onConfirm?: () => void | Promise<void>;
14
16
  };
15
- declare function ConfirmDialog({ cancelText, confirmText, confirmVariant, confirmDisabled, cancelDisabled, isLoading, onCancel, onConfirm, onOpenChange, ...props }: ConfirmDialogProps): React.JSX.Element;
17
+ declare function ConfirmDialog({ cancelText, confirmText, confirmVariant, confirmDisabled, cancelDisabled, isLoading, closeOnConfirm, onConfirmError, onCancel, onConfirm, onOpenChange, ...props }: ConfirmDialogProps): React.JSX.Element;
16
18
  export { ConfirmDialog };
17
19
  export type { ConfirmDialogProps };
@@ -1,32 +1,41 @@
1
1
  import { DialogActionButton as e, DialogActions as t } from "./dialog-actions.js";
2
2
  import { ModalShell as n } from "./modal-shell.js";
3
- import "react";
4
- import { jsx as r, jsxs as i } from "react/jsx-runtime";
3
+ import * as r from "react";
4
+ import { jsx as i, jsxs as a } from "react/jsx-runtime";
5
5
  //#region src/components/overlay/confirm-dialog.tsx
6
- function a({ cancelText: a = "Cancel", confirmText: o = "Confirm", confirmVariant: s = "default", confirmDisabled: c = !1, cancelDisabled: l = !1, isLoading: u = !1, onCancel: d, onConfirm: f, onOpenChange: p, ...m }) {
7
- return /* @__PURE__ */ r(n, {
8
- showCloseButton: !u,
9
- onOpenChange: (e) => {
10
- u && e === !1 || p?.(e);
11
- },
12
- footer: /* @__PURE__ */ i(t, { children: [/* @__PURE__ */ r(e, {
6
+ function o({ cancelText: o = "Cancel", confirmText: s = "Confirm", confirmVariant: c = "default", confirmDisabled: l = !1, cancelDisabled: u = !1, isLoading: d = !1, closeOnConfirm: f = !0, onConfirmError: p, onCancel: m, onConfirm: h, onOpenChange: g, ..._ }) {
7
+ let [v, y] = r.useState(!1), b = d || v, x = (e) => {
8
+ b && e === !1 || g?.(e);
9
+ }, S = () => {
10
+ m?.(), b || g?.(!1);
11
+ }, C = async () => {
12
+ if (!(l || b)) try {
13
+ y(!0), await h?.(), f && g?.(!1);
14
+ } catch (e) {
15
+ p?.(e);
16
+ } finally {
17
+ y(!1);
18
+ }
19
+ };
20
+ return /* @__PURE__ */ i(n, {
21
+ showCloseButton: !b,
22
+ onOpenChange: x,
23
+ footer: /* @__PURE__ */ a(t, { children: [/* @__PURE__ */ i(e, {
13
24
  type: "button",
14
25
  variant: "outline",
15
- disabled: l || u,
16
- onClick: () => {
17
- d?.(), u || p?.(!1);
18
- },
19
- children: a
20
- }), /* @__PURE__ */ r(e, {
21
- type: "button",
22
- variant: s,
23
- disabled: c || u,
24
- isLoading: u,
25
- onClick: f,
26
+ disabled: u || b,
27
+ onClick: S,
26
28
  children: o
29
+ }), /* @__PURE__ */ i(e, {
30
+ type: "button",
31
+ variant: c,
32
+ disabled: l || b,
33
+ isLoading: b,
34
+ onClick: () => void C(),
35
+ children: s
27
36
  })] }),
28
- ...m
37
+ ..._
29
38
  });
30
39
  }
31
40
  //#endregion
32
- export { a as ConfirmDialog };
41
+ export { o as ConfirmDialog };
@@ -1 +1 @@
1
- Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=require("../../_virtual/_rolldown/runtime.cjs"),t=require("../../lib/utils.cjs"),n=require("../ui/button/index.cjs"),r=require("../ui/dialog/index.cjs");let i=require("react");i=e.__toESM(i,1);let a=require("react/jsx-runtime");var o={right:`left-auto right-0 top-0 h-dvh max-h-dvh w-full max-w-md translate-x-0 translate-y-0 rounded-none rounded-l-[var(--radius-3xl)] data-open:slide-in-from-right data-closed:slide-out-to-right sm:max-w-lg`,left:`left-0 top-0 h-dvh max-h-dvh w-full max-w-md translate-x-0 translate-y-0 rounded-none rounded-r-[var(--radius-3xl)] data-open:slide-in-from-left data-closed:slide-out-to-left sm:max-w-lg`,top:`left-0 top-0 h-auto max-h-[85dvh] w-full max-w-none translate-x-0 translate-y-0 rounded-none rounded-b-[var(--radius-3xl)] data-open:slide-in-from-top data-closed:slide-out-to-top`,bottom:`bottom-0 left-0 top-auto h-auto max-h-[85dvh] w-full max-w-none translate-x-0 translate-y-0 rounded-none rounded-t-[var(--radius-3xl)] data-open:slide-in-from-bottom data-closed:slide-out-to-bottom`};function s({trigger:e,title:n,description:i,side:s=`right`,footer:c,headerClassName:l,bodyClassName:u,footerClassName:d,contentClassName:f,showCloseButton:p=!0,children:m,...h}){return(0,a.jsxs)(r.Dialog,{...h,children:[e?(0,a.jsx)(r.DialogTrigger,{render:e}):null,(0,a.jsxs)(r.DialogContent,{size:`full`,showCloseButton:p,className:t.cn(`fixed grid grid-rows-[auto_minmax(0,1fr)_auto] gap-0 p-0`,o[s],f),children:[(n||i)&&(0,a.jsxs)(r.DialogHeader,{className:t.cn(`border-b border-border/70 p-6`,l),children:[n?(0,a.jsx)(r.DialogTitle,{children:n}):null,i?(0,a.jsx)(r.DialogDescription,{children:i}):null]}),(0,a.jsx)(`div`,{"data-slot":`drawer-body`,className:t.cn(`min-h-0 flex-1 overflow-y-auto p-6`,u),children:m}),c?(0,a.jsx)(`div`,{"data-slot":`drawer-footer`,className:t.cn(`border-t border-border/70 p-5`,d),children:c}):null]})]})}function c({children:e=`Close`,...t}){return(0,a.jsx)(r.DialogClose,{render:(0,a.jsx)(n.Button,{type:`button`,variant:`outline`,...t}),children:e})}exports.Drawer=s,exports.DrawerCloseButton=c;
1
+ Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=require("../../_virtual/_rolldown/runtime.cjs"),t=require("../../lib/utils.cjs"),n=require("../ui/button/index.cjs"),r=require("../ui/dialog/index.cjs");let i=require("react");i=e.__toESM(i,1);let a=require("react/jsx-runtime");var o={right:`left-auto right-0 top-0 h-dvh max-h-dvh w-full translate-x-0 translate-y-0 rounded-none rounded-l-[var(--radius-3xl)] data-open:slide-in-from-right data-closed:slide-out-to-right`,left:`left-0 top-0 h-dvh max-h-dvh w-full translate-x-0 translate-y-0 rounded-none rounded-r-[var(--radius-3xl)] data-open:slide-in-from-left data-closed:slide-out-to-left`,top:`left-0 top-0 h-auto max-h-[85dvh] w-full max-w-none translate-x-0 translate-y-0 rounded-none rounded-b-[var(--radius-3xl)] data-open:slide-in-from-top data-closed:slide-out-to-top`,bottom:`bottom-0 left-0 top-auto h-auto max-h-[85dvh] w-full max-w-none translate-x-0 translate-y-0 rounded-none rounded-t-[var(--radius-3xl)] data-open:slide-in-from-bottom data-closed:slide-out-to-bottom`},s={sm:`sm:max-w-sm`,md:`sm:max-w-md`,lg:`sm:max-w-lg`,xl:`sm:max-w-2xl`,full:`max-w-none sm:max-w-[min(100vw,72rem)]`};function c({trigger:e,title:n,description:i,side:c=`right`,width:l=`lg`,footer:u,headerClassName:d,bodyClassName:f,footerClassName:p,contentClassName:m,showCloseButton:h=!0,children:g,..._}){return(0,a.jsxs)(r.Dialog,{..._,children:[e?(0,a.jsx)(r.DialogTrigger,{render:e}):null,(0,a.jsxs)(r.DialogContent,{size:`full`,showCloseButton:h,"data-side":c,"data-width":l,className:t.cn(`fixed grid grid-rows-[auto_minmax(0,1fr)_auto] gap-0 overscroll-contain p-0`,o[c],(c===`left`||c===`right`)&&s[l],m),children:[(n||i)&&(0,a.jsxs)(r.DialogHeader,{className:t.cn(`border-b border-border/70 p-6`,d),children:[n?(0,a.jsx)(r.DialogTitle,{children:n}):null,i?(0,a.jsx)(r.DialogDescription,{children:i}):null]}),(0,a.jsx)(`div`,{"data-slot":`drawer-body`,className:t.cn(`min-h-0 flex-1 overflow-y-auto p-6`,f),children:g}),u?(0,a.jsx)(`div`,{"data-slot":`drawer-footer`,className:t.cn(`border-t border-border/70 p-5`,p),children:u}):null]})]})}function l({children:e=`Close`,...t}){return(0,a.jsx)(r.DialogClose,{render:(0,a.jsx)(n.Button,{type:`button`,variant:`outline`,...t}),children:e})}exports.Drawer=c,exports.DrawerCloseButton=l;
@@ -2,11 +2,13 @@ import * as React from "react";
2
2
  import { Button } from "@/components/ui/button";
3
3
  import { Dialog } from "@/components/ui/dialog";
4
4
  export type DrawerSide = "left" | "right" | "top" | "bottom";
5
+ export type DrawerWidth = "sm" | "md" | "lg" | "xl" | "full";
5
6
  export type DrawerProps = Omit<React.ComponentProps<typeof Dialog>, "children"> & {
6
7
  trigger?: React.ReactNode;
7
8
  title?: React.ReactNode;
8
9
  description?: React.ReactNode;
9
10
  side?: DrawerSide;
11
+ width?: DrawerWidth;
10
12
  footer?: React.ReactNode;
11
13
  headerClassName?: string;
12
14
  bodyClassName?: string;
@@ -15,6 +17,6 @@ export type DrawerProps = Omit<React.ComponentProps<typeof Dialog>, "children">
15
17
  showCloseButton?: boolean;
16
18
  children?: React.ReactNode;
17
19
  };
18
- declare function Drawer({ trigger, title, description, side, footer, headerClassName, bodyClassName, footerClassName, contentClassName, showCloseButton, children, ...props }: DrawerProps): React.JSX.Element;
20
+ declare function Drawer({ trigger, title, description, side, width, footer, headerClassName, bodyClassName, footerClassName, contentClassName, showCloseButton, children, ...props }: DrawerProps): React.JSX.Element;
19
21
  declare function DrawerCloseButton({ children, ...props }: React.ComponentProps<typeof Button>): React.JSX.Element;
20
22
  export { Drawer, DrawerCloseButton };
@@ -5,38 +5,46 @@ import "react";
5
5
  import { jsx as l, jsxs as u } from "react/jsx-runtime";
6
6
  //#region src/components/overlay/drawer.tsx
7
7
  var d = {
8
- right: "left-auto right-0 top-0 h-dvh max-h-dvh w-full max-w-md translate-x-0 translate-y-0 rounded-none rounded-l-[var(--radius-3xl)] data-open:slide-in-from-right data-closed:slide-out-to-right sm:max-w-lg",
9
- left: "left-0 top-0 h-dvh max-h-dvh w-full max-w-md translate-x-0 translate-y-0 rounded-none rounded-r-[var(--radius-3xl)] data-open:slide-in-from-left data-closed:slide-out-to-left sm:max-w-lg",
8
+ right: "left-auto right-0 top-0 h-dvh max-h-dvh w-full translate-x-0 translate-y-0 rounded-none rounded-l-[var(--radius-3xl)] data-open:slide-in-from-right data-closed:slide-out-to-right",
9
+ left: "left-0 top-0 h-dvh max-h-dvh w-full translate-x-0 translate-y-0 rounded-none rounded-r-[var(--radius-3xl)] data-open:slide-in-from-left data-closed:slide-out-to-left",
10
10
  top: "left-0 top-0 h-auto max-h-[85dvh] w-full max-w-none translate-x-0 translate-y-0 rounded-none rounded-b-[var(--radius-3xl)] data-open:slide-in-from-top data-closed:slide-out-to-top",
11
11
  bottom: "bottom-0 left-0 top-auto h-auto max-h-[85dvh] w-full max-w-none translate-x-0 translate-y-0 rounded-none rounded-t-[var(--radius-3xl)] data-open:slide-in-from-bottom data-closed:slide-out-to-bottom"
12
+ }, f = {
13
+ sm: "sm:max-w-sm",
14
+ md: "sm:max-w-md",
15
+ lg: "sm:max-w-lg",
16
+ xl: "sm:max-w-2xl",
17
+ full: "max-w-none sm:max-w-[min(100vw,72rem)]"
12
18
  };
13
- function f({ trigger: t, title: r, description: f, side: p = "right", footer: m, headerClassName: h, bodyClassName: g, footerClassName: _, contentClassName: v, showCloseButton: y = !0, children: b, ...x }) {
19
+ function p({ trigger: t, title: r, description: p, side: m = "right", width: h = "lg", footer: g, headerClassName: _, bodyClassName: v, footerClassName: y, contentClassName: b, showCloseButton: x = !0, children: S, ...C }) {
14
20
  return /* @__PURE__ */ u(n, {
15
- ...x,
21
+ ...C,
16
22
  children: [t ? /* @__PURE__ */ l(c, { render: t }) : null, /* @__PURE__ */ u(i, {
17
23
  size: "full",
18
- showCloseButton: y,
19
- className: e("fixed grid grid-rows-[auto_minmax(0,1fr)_auto] gap-0 p-0", d[p], v),
24
+ showCloseButton: x,
25
+ "data-side": m,
26
+ "data-width": h,
27
+ className: e("fixed grid grid-rows-[auto_minmax(0,1fr)_auto] gap-0 overscroll-contain p-0", d[m], (m === "left" || m === "right") && f[h], b),
20
28
  children: [
21
- (r || f) && /* @__PURE__ */ u(o, {
22
- className: e("border-b border-border/70 p-6", h),
23
- children: [r ? /* @__PURE__ */ l(s, { children: r }) : null, f ? /* @__PURE__ */ l(a, { children: f }) : null]
29
+ (r || p) && /* @__PURE__ */ u(o, {
30
+ className: e("border-b border-border/70 p-6", _),
31
+ children: [r ? /* @__PURE__ */ l(s, { children: r }) : null, p ? /* @__PURE__ */ l(a, { children: p }) : null]
24
32
  }),
25
33
  /* @__PURE__ */ l("div", {
26
34
  "data-slot": "drawer-body",
27
- className: e("min-h-0 flex-1 overflow-y-auto p-6", g),
28
- children: b
35
+ className: e("min-h-0 flex-1 overflow-y-auto p-6", v),
36
+ children: S
29
37
  }),
30
- m ? /* @__PURE__ */ l("div", {
38
+ g ? /* @__PURE__ */ l("div", {
31
39
  "data-slot": "drawer-footer",
32
- className: e("border-t border-border/70 p-5", _),
33
- children: m
40
+ className: e("border-t border-border/70 p-5", y),
41
+ children: g
34
42
  }) : null
35
43
  ]
36
44
  })]
37
45
  });
38
46
  }
39
- function p({ children: e = "Close", ...n }) {
47
+ function m({ children: e = "Close", ...n }) {
40
48
  return /* @__PURE__ */ l(r, {
41
49
  render: /* @__PURE__ */ l(t, {
42
50
  type: "button",
@@ -47,4 +55,4 @@ function p({ children: e = "Close", ...n }) {
47
55
  });
48
56
  }
49
57
  //#endregion
50
- export { f as Drawer, p as DrawerCloseButton };
58
+ export { p as Drawer, m as DrawerCloseButton };
@@ -5,6 +5,10 @@ export type AccordionProps = CollapseGroupProps;
5
5
  export type AccordionRootProps = CollapseProps;
6
6
  export type AccordionTriggerProps = CollapseTriggerProps;
7
7
  export type AccordionContentProps = React.ComponentProps<"div">;
8
+ /**
9
+ * Accordion is the grouped disclosure API. Use CollapseRoot/CollapseTrigger/CollapseContent
10
+ * for a single standalone disclosure.
11
+ */
8
12
  declare function Accordion(props: AccordionProps): React.JSX.Element;
9
13
  declare function AccordionRoot(props: AccordionRootProps): React.JSX.Element;
10
14
  declare function AccordionTrigger(props: AccordionTriggerProps): React.JSX.Element;
@@ -1 +1 @@
1
- Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=require("../../../_virtual/_rolldown/runtime.cjs"),t=require("../../../lib/utils.cjs");let n=require("react");n=e.__toESM(n,1);let r=require("lucide-react"),i=require("class-variance-authority"),a=require("react/jsx-runtime"),o=require("@base-ui/react/merge-props"),s=require("@base-ui/react/use-render");var c=(0,i.cva)(`group/badge inline-flex w-fit shrink-0 items-center justify-center gap-1.5 whitespace-nowrap rounded-[var(--radius-md)] border border-[color:color-mix(in_oklch,var(--border),var(--foreground)_6%)] bg-[color:color-mix(in_oklch,var(--muted),var(--background)_36%)] font-semibold tracking-[0.01em] text-foreground shadow-[inset_0_1px_0_color-mix(in_oklch,white,transparent_34%)] transition-[background-color,border-color,color,box-shadow,transform] focus-visible:ring-0 focus-visible:shadow-[0_0_0_1px_var(--aui-focus-ring,var(--ring)),0_0_0_5px_var(--aui-focus-ring-soft,transparent)] has-data-[icon=inline-end]:pr-1.5 has-data-[icon=inline-start]:pl-1.5 aria-invalid:border-destructive [&>svg]:pointer-events-none [&>svg]:size-3!`,{variants:{variant:{default:`border-[color:color-mix(in_oklch,var(--primary),transparent_48%)] bg-[color:color-mix(in_oklch,var(--primary),transparent_78%)] text-[color:color-mix(in_oklch,var(--primary),black_24%)] dark:text-[color:color-mix(in_oklch,var(--primary),white_36%)]`,secondary:`border-[color:color-mix(in_oklch,var(--border),var(--foreground)_10%)] bg-[color:color-mix(in_oklch,var(--muted),var(--background)_8%)] text-foreground`,destructive:`border-[color:color-mix(in_oklch,var(--destructive),transparent_52%)] bg-[color:color-mix(in_oklch,var(--destructive),transparent_82%)] text-[color:color-mix(in_oklch,var(--destructive),black_16%)] dark:text-[color:color-mix(in_oklch,var(--destructive),white_38%)]`,outline:`bg-[color:color-mix(in_oklch,var(--background),var(--muted)_6%)] text-foreground shadow-none`,ghost:`border-transparent bg-[color:color-mix(in_oklch,var(--muted),transparent_76%)] text-muted-foreground shadow-none`,link:`border-transparent bg-transparent p-0 text-primary shadow-none underline-offset-4`},tone:{neutral:``,info:`border-[color:color-mix(in_oklch,var(--aui-info,var(--primary)),transparent_64%)] bg-[color:color-mix(in_oklch,var(--aui-info,var(--primary)),transparent_82%)] text-[color:color-mix(in_oklch,var(--aui-info,var(--primary)),black_18%)] dark:text-[color:color-mix(in_oklch,var(--aui-info,var(--primary)),white_48%)]`,success:`border-[color:color-mix(in_oklch,var(--aui-success,var(--primary)),transparent_56%)] bg-[color:color-mix(in_oklch,var(--aui-success,var(--primary)),transparent_78%)] text-[color:color-mix(in_oklch,var(--aui-success,var(--primary)),black_14%)] dark:text-[color:color-mix(in_oklch,var(--aui-success,var(--primary)),white_40%)]`,warning:`border-[color:color-mix(in_oklch,var(--aui-warning,var(--primary)),transparent_52%)] bg-[color:color-mix(in_oklch,var(--aui-warning,var(--primary)),transparent_72%)] text-[color:color-mix(in_oklch,var(--aui-warning-foreground,var(--foreground)),black_6%)] dark:text-[color:color-mix(in_oklch,var(--aui-warning,var(--primary)),white_30%)]`,danger:`border-[color:color-mix(in_oklch,var(--destructive),transparent_56%)] bg-[color:color-mix(in_oklch,var(--destructive),transparent_80%)] text-[color:color-mix(in_oklch,var(--destructive),black_14%)] dark:text-[color:color-mix(in_oklch,var(--destructive),white_38%)]`,muted:`border-[color:color-mix(in_oklch,var(--border),var(--foreground)_8%)] bg-[color:color-mix(in_oklch,var(--muted),var(--background)_18%)] text-muted-foreground`},size:{sm:`min-h-5 px-2.5 py-0.5 text-[0.64rem]`,default:`min-h-6 px-3 py-1 text-[0.7rem]`,lg:`min-h-7 px-3.5 py-1 text-[0.78rem]`},dot:{true:`pl-2`,false:``}},defaultVariants:{variant:`default`,tone:`neutral`,size:`default`,dot:!1}});function l({className:e,variant:n=`default`,tone:i=`neutral`,size:l=`default`,dot:u=!1,label:d,count:f,status:p,removable:m=!1,onRemove:h,removeLabel:g=`Remove badge`,leftIcon:_,rightIcon:v,children:y,render:b,...x}){let S=p??i,C=d??y,w=u||p===`success`||p===`warning`||p===`danger`||p===`info`;return(0,s.useRender)({defaultTagName:`span`,props:(0,o.mergeProps)({className:t.cn(c({variant:n,tone:S,size:l,dot:w}),e),children:(0,a.jsxs)(a.Fragment,{children:[w?(0,a.jsx)(`span`,{"data-slot":`badge-dot`,className:`size-1.5 rounded-full bg-current opacity-75`}):null,_?(0,a.jsx)(`span`,{"data-icon":`inline-start`,"data-slot":`badge-icon`,className:`inline-flex shrink-0 items-center`,children:_}):null,C?(0,a.jsx)(`span`,{"data-slot":`badge-label`,children:C}):null,f==null?null:(0,a.jsx)(`span`,{"data-slot":`badge-count`,className:`inline-flex min-w-5 items-center justify-center rounded-full bg-[color:color-mix(in_oklch,currentColor,transparent_88%)] px-1.5 py-0.5 text-[0.72em] font-semibold`,children:f}),v?(0,a.jsx)(`span`,{"data-icon":`inline-end`,"data-slot":`badge-icon`,className:`inline-flex shrink-0 items-center`,children:v}):null,m?(0,a.jsx)(`button`,{type:`button`,"data-slot":`badge-remove`,"aria-label":g,onClick:e=>{e.preventDefault(),e.stopPropagation(),h?.()},className:`inline-flex size-4 shrink-0 items-center justify-center rounded-full bg-[color:color-mix(in_oklch,currentColor,transparent_90%)] opacity-80 transition hover:opacity-100`,children:(0,a.jsx)(r.XIcon,{className:`size-3`})}):null]})},{"data-variant":n??`default`,"data-tone":S??`neutral`,"data-size":l??`default`,"data-removable":m||void 0},x),render:b,state:{slot:`badge`,variant:n,tone:S,size:l,dot:w}})}exports.Badge=l,exports.badgeVariants=c;
1
+ Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=require("../../../_virtual/_rolldown/runtime.cjs"),t=require("../../../lib/utils.cjs");let n=require("react");n=e.__toESM(n,1);let r=require("lucide-react"),i=require("class-variance-authority"),a=require("react/jsx-runtime"),o=require("@base-ui/react/merge-props"),s=require("@base-ui/react/use-render");var c=(0,i.cva)(`group/badge inline-flex w-fit shrink-0 items-center justify-center gap-1.5 whitespace-nowrap rounded-[var(--radius-md)] border border-[color:color-mix(in_oklch,var(--border),var(--foreground)_6%)] bg-[color:color-mix(in_oklch,var(--muted),var(--background)_36%)] font-semibold tracking-[0.01em] text-foreground shadow-[inset_0_1px_0_color-mix(in_oklch,white,transparent_34%)] transition-[background-color,border-color,color,box-shadow,transform] focus-visible:ring-0 focus-visible:shadow-[0_0_0_1px_var(--aui-focus-ring,var(--ring)),0_0_0_5px_var(--aui-focus-ring-soft,transparent)] has-data-[icon=inline-end]:pr-1.5 has-data-[icon=inline-start]:pl-1.5 aria-invalid:border-destructive [&>svg]:pointer-events-none [&>svg]:size-3!`,{variants:{variant:{default:`border-[color:color-mix(in_oklch,var(--primary),transparent_48%)] bg-[color:color-mix(in_oklch,var(--primary),transparent_78%)] text-[color:color-mix(in_oklch,var(--primary),black_24%)] dark:text-[color:color-mix(in_oklch,var(--primary),white_36%)]`,secondary:`border-[color:color-mix(in_oklch,var(--border),var(--foreground)_10%)] bg-[color:color-mix(in_oklch,var(--muted),var(--background)_8%)] text-foreground`,destructive:`border-[color:color-mix(in_oklch,var(--destructive),transparent_52%)] bg-[color:color-mix(in_oklch,var(--destructive),transparent_82%)] text-[color:color-mix(in_oklch,var(--destructive),black_16%)] dark:text-[color:color-mix(in_oklch,var(--destructive),white_38%)]`,soft:`border-transparent bg-[color:color-mix(in_oklch,var(--muted),transparent_38%)] text-foreground shadow-none`,outline:`bg-[color:color-mix(in_oklch,var(--background),var(--muted)_6%)] text-foreground shadow-none`,ghost:`border-transparent bg-[color:color-mix(in_oklch,var(--muted),transparent_76%)] text-muted-foreground shadow-none`,link:`border-transparent bg-transparent p-0 text-primary shadow-none underline-offset-4`},tone:{neutral:``,info:`border-[color:color-mix(in_oklch,var(--aui-info,var(--primary)),transparent_64%)] bg-[color:color-mix(in_oklch,var(--aui-info,var(--primary)),transparent_82%)] text-[color:color-mix(in_oklch,var(--aui-info,var(--primary)),black_18%)] dark:text-[color:color-mix(in_oklch,var(--aui-info,var(--primary)),white_48%)]`,success:`border-[color:color-mix(in_oklch,var(--aui-success,var(--primary)),transparent_56%)] bg-[color:color-mix(in_oklch,var(--aui-success,var(--primary)),transparent_78%)] text-[color:color-mix(in_oklch,var(--aui-success,var(--primary)),black_14%)] dark:text-[color:color-mix(in_oklch,var(--aui-success,var(--primary)),white_40%)]`,warning:`border-[color:color-mix(in_oklch,var(--aui-warning,var(--primary)),transparent_52%)] bg-[color:color-mix(in_oklch,var(--aui-warning,var(--primary)),transparent_72%)] text-[color:color-mix(in_oklch,var(--aui-warning-foreground,var(--foreground)),black_6%)] dark:text-[color:color-mix(in_oklch,var(--aui-warning,var(--primary)),white_30%)]`,danger:`border-[color:color-mix(in_oklch,var(--destructive),transparent_56%)] bg-[color:color-mix(in_oklch,var(--destructive),transparent_80%)] text-[color:color-mix(in_oklch,var(--destructive),black_14%)] dark:text-[color:color-mix(in_oklch,var(--destructive),white_38%)]`,muted:`border-[color:color-mix(in_oklch,var(--border),var(--foreground)_8%)] bg-[color:color-mix(in_oklch,var(--muted),var(--background)_18%)] text-muted-foreground`},size:{sm:`min-h-5 px-2.5 py-0.5 text-[0.64rem]`,default:`min-h-6 px-3 py-1 text-[0.7rem]`,lg:`min-h-7 px-3.5 py-1 text-[0.78rem]`},dot:{true:`pl-2`,false:``}},defaultVariants:{variant:`default`,tone:`neutral`,size:`default`,dot:!1}});function l({className:e,variant:n=`default`,tone:i=`neutral`,size:l=`default`,dot:u=!1,label:d,count:f,status:p,removable:m=!1,onRemove:h,removeLabel:g=`Remove badge`,leftIcon:_,rightIcon:v,children:y,render:b,...x}){let S=p??i,C=d??y,w=u||p===`success`||p===`warning`||p===`danger`||p===`info`;return(0,s.useRender)({defaultTagName:`span`,props:(0,o.mergeProps)({className:t.cn(c({variant:n,tone:S,size:l,dot:w}),e),children:(0,a.jsxs)(a.Fragment,{children:[w?(0,a.jsx)(`span`,{"data-slot":`badge-dot`,className:`size-1.5 rounded-full bg-current opacity-75`}):null,_?(0,a.jsx)(`span`,{"data-icon":`inline-start`,"data-slot":`badge-icon`,className:`inline-flex shrink-0 items-center`,children:_}):null,C?(0,a.jsx)(`span`,{"data-slot":`badge-label`,children:C}):null,f==null?null:(0,a.jsx)(`span`,{"data-slot":`badge-count`,className:`inline-flex min-w-5 items-center justify-center rounded-full bg-[color:color-mix(in_oklch,currentColor,transparent_88%)] px-1.5 py-0.5 text-[0.72em] font-semibold`,children:f}),v?(0,a.jsx)(`span`,{"data-icon":`inline-end`,"data-slot":`badge-icon`,className:`inline-flex shrink-0 items-center`,children:v}):null,m?(0,a.jsx)(`button`,{type:`button`,"data-slot":`badge-remove`,"aria-label":g,onClick:e=>{e.preventDefault(),e.stopPropagation(),h?.()},className:`inline-flex size-4 shrink-0 items-center justify-center rounded-full bg-[color:color-mix(in_oklch,currentColor,transparent_90%)] opacity-80 transition hover:opacity-100 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-current/35`,children:(0,a.jsx)(r.XIcon,{className:`size-3`})}):null]})},{"data-variant":n??`default`,"data-tone":S??`neutral`,"data-size":l??`default`,"data-removable":m||void 0},x),render:b,state:{slot:`badge`,variant:n,tone:S,size:l,dot:w}})}exports.Badge=l,exports.badgeVariants=c;
@@ -2,7 +2,7 @@ import * as React from "react";
2
2
  import { useRender } from "@base-ui/react/use-render";
3
3
  import { type VariantProps } from "class-variance-authority";
4
4
  declare const badgeVariants: (props?: ({
5
- variant?: "default" | "outline" | "secondary" | "ghost" | "destructive" | "link" | null | undefined;
5
+ variant?: "default" | "outline" | "secondary" | "ghost" | "destructive" | "link" | "soft" | null | undefined;
6
6
  tone?: "warning" | "neutral" | "info" | "success" | "danger" | "muted" | null | undefined;
7
7
  size?: "default" | "sm" | "lg" | null | undefined;
8
8
  dot?: boolean | null | undefined;
@@ -12,6 +12,7 @@ var c = n("group/badge inline-flex w-fit shrink-0 items-center justify-center ga
12
12
  default: "border-[color:color-mix(in_oklch,var(--primary),transparent_48%)] bg-[color:color-mix(in_oklch,var(--primary),transparent_78%)] text-[color:color-mix(in_oklch,var(--primary),black_24%)] dark:text-[color:color-mix(in_oklch,var(--primary),white_36%)]",
13
13
  secondary: "border-[color:color-mix(in_oklch,var(--border),var(--foreground)_10%)] bg-[color:color-mix(in_oklch,var(--muted),var(--background)_8%)] text-foreground",
14
14
  destructive: "border-[color:color-mix(in_oklch,var(--destructive),transparent_52%)] bg-[color:color-mix(in_oklch,var(--destructive),transparent_82%)] text-[color:color-mix(in_oklch,var(--destructive),black_16%)] dark:text-[color:color-mix(in_oklch,var(--destructive),white_38%)]",
15
+ soft: "border-transparent bg-[color:color-mix(in_oklch,var(--muted),transparent_38%)] text-foreground shadow-none",
15
16
  outline: "bg-[color:color-mix(in_oklch,var(--background),var(--muted)_6%)] text-foreground shadow-none",
16
17
  ghost: "border-transparent bg-[color:color-mix(in_oklch,var(--muted),transparent_76%)] text-muted-foreground shadow-none",
17
18
  link: "border-transparent bg-transparent p-0 text-primary shadow-none underline-offset-4"
@@ -85,7 +86,7 @@ function l({ className: n, variant: l = "default", tone: u = "neutral", size: d
85
86
  onClick: (e) => {
86
87
  e.preventDefault(), e.stopPropagation(), _?.();
87
88
  },
88
- className: "inline-flex size-4 shrink-0 items-center justify-center rounded-full bg-[color:color-mix(in_oklch,currentColor,transparent_90%)] opacity-80 transition hover:opacity-100",
89
+ className: "inline-flex size-4 shrink-0 items-center justify-center rounded-full bg-[color:color-mix(in_oklch,currentColor,transparent_90%)] opacity-80 transition hover:opacity-100 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-current/35",
89
90
  children: /* @__PURE__ */ i(t, { className: "size-3" })
90
91
  }) : null
91
92
  ] })
@@ -1 +1 @@
1
- Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=require("../../../_virtual/_rolldown/runtime.cjs"),t=require("../../../lib/utils.cjs");let n=require("react");n=e.__toESM(n,1);let r=require("@base-ui/react/button"),i=require("class-variance-authority"),a=require("react/jsx-runtime");var o=(0,i.cva)(`group/button inline-flex shrink-0 items-center justify-center rounded-[var(--aui-control-radius,var(--radius-md))] border border-[color:var(--aui-control-border-strong,var(--border))] bg-[color:var(--aui-control-surface,var(--background))] bg-clip-padding text-sm font-semibold text-foreground whitespace-nowrap shadow-[var(--aui-control-shadow,0_1px_2px_rgba(15,23,42,0.04))] transition-[transform,background-color,border-color,color,box-shadow,opacity] outline-none select-none hover:border-[color:var(--aui-control-hover-border,var(--ring))] hover:bg-[color:var(--aui-control-surface-hover,var(--muted))] focus-visible:ring-0 focus-visible:shadow-[var(--aui-control-shadow,0_1px_2px_rgba(15,23,42,0.04)),0_0_0_1px_var(--aui-focus-ring,var(--ring)),0_0_0_4px_var(--aui-focus-ring-soft,transparent)] active:not-aria-[haspopup]:translate-y-px disabled:pointer-events-none disabled:cursor-not-allowed disabled:translate-y-0 disabled:border-[color:color-mix(in_oklch,var(--border),transparent_24%)] disabled:bg-[color:var(--aui-control-surface-disabled,var(--muted))] disabled:text-muted-foreground disabled:shadow-none disabled:opacity-100 aria-disabled:pointer-events-none aria-disabled:cursor-not-allowed aria-disabled:translate-y-0 aria-disabled:opacity-100 aria-invalid:border-destructive [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4`,{variants:{variant:{default:`border-[color:color-mix(in_oklch,var(--primary),black_10%)] bg-primary text-primary-foreground shadow-[var(--aui-button-primary-shadow,0_10px_24px_rgba(16,185,129,0.18))] hover:border-[color:color-mix(in_oklch,var(--primary),black_18%)] hover:bg-[color:color-mix(in_oklch,var(--primary),white_8%)] hover:text-primary-foreground`,outline:`bg-[color:var(--aui-control-surface,var(--background))] text-foreground shadow-none`,secondary:`border-[color:color-mix(in_oklch,var(--border),var(--foreground)_6%)] bg-secondary text-secondary-foreground shadow-none`,ghost:`border-transparent bg-transparent shadow-none`,destructive:`border-[color:color-mix(in_oklch,var(--destructive),black_8%)] bg-destructive text-[color:var(--aui-danger-foreground,var(--primary-foreground))] shadow-[var(--aui-button-danger-shadow,0_10px_24px_rgba(239,68,68,0.16))] hover:border-[color:color-mix(in_oklch,var(--destructive),black_16%)] hover:bg-[color:color-mix(in_oklch,var(--destructive),white_6%)]`,warning:`border-[color:color-mix(in_oklch,var(--aui-warning,var(--primary)),transparent_52%)] bg-[color:color-mix(in_oklch,var(--aui-warning,var(--primary)),transparent_78%)] text-[color:var(--aui-warning-foreground,var(--foreground))] shadow-none hover:bg-[color:color-mix(in_oklch,var(--aui-warning,var(--primary)),transparent_70%)]`,link:`rounded-none border-transparent bg-transparent p-0 text-primary shadow-none underline-offset-4 hover:bg-transparent hover:text-[color:color-mix(in_oklch,var(--primary),black_10%)]`},size:{default:`h-9 gap-1.5 px-3.5 has-data-[icon=inline-end]:pr-3 has-data-[icon=inline-start]:pl-3`,xs:`h-7 gap-1 rounded-[var(--radius-sm)] px-2.5 text-xs in-data-[slot=button-group]:rounded-[var(--radius-sm)] has-data-[icon=inline-end]:pr-2 has-data-[icon=inline-start]:pl-2 [&_svg:not([class*='size-'])]:size-3`,sm:`h-8 gap-1 rounded-[var(--radius-md)] px-3.5 text-[0.82rem] in-data-[slot=button-group]:rounded-[var(--radius-md)] has-data-[icon=inline-end]:pr-2.5 has-data-[icon=inline-start]:pl-2.5 [&_svg:not([class*='size-'])]:size-3.5`,md:`h-9 gap-1.5 px-3.5 has-data-[icon=inline-end]:pr-3 has-data-[icon=inline-start]:pl-3`,lg:`h-10 gap-1.5 px-4 has-data-[icon=inline-end]:pr-3 has-data-[icon=inline-start]:pl-3`,xl:`h-11 gap-2 px-5 text-base has-data-[icon=inline-end]:pr-4 has-data-[icon=inline-start]:pl-4`,icon:`size-9`,"icon-xs":`size-7 rounded-[var(--radius-sm)] in-data-[slot=button-group]:rounded-[var(--radius-sm)] [&_svg:not([class*='size-'])]:size-3`,"icon-sm":`size-8 rounded-[var(--radius-md)] in-data-[slot=button-group]:rounded-[var(--radius-md)]`,"icon-lg":`size-10`}},defaultVariants:{variant:`default`,size:`default`}});function s({className:e,variant:n=`default`,size:i=`default`,disabled:s,loading:c=!1,loadingLabel:l=`Loading`,leftIcon:u,rightIcon:d,fullWidth:f=!1,pressed:p=!1,children:m,...h}){return(0,a.jsxs)(r.Button,{"data-slot":`button`,"data-variant":n??`default`,"data-size":i??`default`,"data-loading":c||void 0,"data-pressed":p||void 0,disabled:s||c,"aria-busy":c||void 0,"aria-pressed":p||void 0,className:t.cn(o({variant:n,size:i,className:e}),f&&`w-full`,p&&`shadow-[var(--aui-control-shadow,0_1px_2px_rgba(15,23,42,0.04)),0_0_0_1px_var(--aui-focus-ring,var(--ring))]`),...h,children:[c?(0,a.jsx)(`span`,{"data-slot":`button-spinner`,"aria-hidden":`true`,className:`size-4 animate-spin rounded-full border-2 border-current border-t-transparent opacity-80`}):u?(0,a.jsx)(`span`,{"data-icon":`inline-start`,"data-slot":`button-icon`,className:`inline-flex shrink-0 items-center justify-center`,children:u}):null,m?(0,a.jsx)(`span`,{"data-slot":`button-label`,children:c?l:m}):null,!c&&d?(0,a.jsx)(`span`,{"data-icon":`inline-end`,"data-slot":`button-icon`,className:`inline-flex shrink-0 items-center justify-center`,children:d}):null]})}exports.Button=s,exports.buttonVariants=o;
1
+ Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=require("../../../_virtual/_rolldown/runtime.cjs"),t=require("../../../lib/utils.cjs");let n=require("react");n=e.__toESM(n,1);let r=require("@base-ui/react/button"),i=require("class-variance-authority"),a=require("react/jsx-runtime");var o=(0,i.cva)(`group/button inline-flex shrink-0 items-center justify-center rounded-[var(--aui-control-radius,var(--radius-md))] border border-[color:var(--aui-control-border-strong,var(--border))] bg-[color:var(--aui-control-surface,var(--background))] bg-clip-padding text-sm font-semibold text-foreground whitespace-nowrap shadow-[var(--aui-control-shadow,0_1px_2px_rgba(15,23,42,0.04))] transition-[transform,background-color,border-color,color,box-shadow,opacity] outline-none select-none hover:border-[color:var(--aui-control-hover-border,var(--ring))] hover:bg-[color:var(--aui-control-surface-hover,var(--muted))] focus-visible:ring-0 focus-visible:shadow-[var(--aui-control-shadow,0_1px_2px_rgba(15,23,42,0.04)),0_0_0_1px_var(--aui-focus-ring,var(--ring)),0_0_0_4px_var(--aui-focus-ring-soft,transparent)] active:not-aria-[haspopup]:translate-y-px disabled:pointer-events-none disabled:cursor-not-allowed disabled:translate-y-0 disabled:border-[color:color-mix(in_oklch,var(--border),transparent_24%)] disabled:bg-[color:var(--aui-control-surface-disabled,var(--muted))] disabled:text-muted-foreground disabled:shadow-none disabled:opacity-100 aria-disabled:pointer-events-none aria-disabled:cursor-not-allowed aria-disabled:translate-y-0 aria-disabled:opacity-100 aria-invalid:border-destructive [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4`,{variants:{variant:{default:`border-[color:color-mix(in_oklch,var(--primary),black_10%)] bg-primary text-primary-foreground shadow-[var(--aui-button-primary-shadow,0_10px_24px_rgba(16,185,129,0.18))] hover:border-[color:color-mix(in_oklch,var(--primary),black_18%)] hover:bg-[color:color-mix(in_oklch,var(--primary),white_8%)] hover:text-primary-foreground`,outline:`bg-[color:var(--aui-control-surface,var(--background))] text-foreground shadow-none`,secondary:`border-[color:color-mix(in_oklch,var(--border),var(--foreground)_6%)] bg-secondary text-secondary-foreground shadow-none`,ghost:`border-transparent bg-transparent shadow-none`,destructive:`border-[color:color-mix(in_oklch,var(--destructive),black_8%)] bg-destructive text-[color:var(--aui-danger-foreground,var(--primary-foreground))] shadow-[var(--aui-button-danger-shadow,0_10px_24px_rgba(239,68,68,0.16))] hover:border-[color:color-mix(in_oklch,var(--destructive),black_16%)] hover:bg-[color:color-mix(in_oklch,var(--destructive),white_6%)]`,warning:`border-[color:color-mix(in_oklch,var(--aui-warning,var(--primary)),transparent_52%)] bg-[color:color-mix(in_oklch,var(--aui-warning,var(--primary)),transparent_78%)] text-[color:var(--aui-warning-foreground,var(--foreground))] shadow-none hover:bg-[color:color-mix(in_oklch,var(--aui-warning,var(--primary)),transparent_70%)]`,link:`rounded-none border-transparent bg-transparent p-0 text-primary shadow-none underline-offset-4 hover:bg-transparent hover:text-[color:color-mix(in_oklch,var(--primary),black_10%)]`},size:{default:`h-9 gap-1.5 px-3.5 has-data-[icon=inline-end]:pr-3 has-data-[icon=inline-start]:pl-3`,xs:`h-7 gap-1 rounded-[var(--radius-sm)] px-2.5 text-xs in-data-[slot=button-group]:rounded-[var(--radius-sm)] has-data-[icon=inline-end]:pr-2 has-data-[icon=inline-start]:pl-2 [&_svg:not([class*='size-'])]:size-3`,sm:`h-8 gap-1 rounded-[var(--radius-md)] px-3.5 text-[0.82rem] in-data-[slot=button-group]:rounded-[var(--radius-md)] has-data-[icon=inline-end]:pr-2.5 has-data-[icon=inline-start]:pl-2.5 [&_svg:not([class*='size-'])]:size-3.5`,md:`h-9 gap-1.5 px-3.5 has-data-[icon=inline-end]:pr-3 has-data-[icon=inline-start]:pl-3`,lg:`h-10 gap-1.5 px-4 has-data-[icon=inline-end]:pr-3 has-data-[icon=inline-start]:pl-3`,xl:`h-11 gap-2 px-5 text-base has-data-[icon=inline-end]:pr-4 has-data-[icon=inline-start]:pl-4`,icon:`size-9`,"icon-xs":`size-7 rounded-[var(--radius-sm)] in-data-[slot=button-group]:rounded-[var(--radius-sm)] [&_svg:not([class*='size-'])]:size-3`,"icon-sm":`size-8 rounded-[var(--radius-md)] in-data-[slot=button-group]:rounded-[var(--radius-md)]`,"icon-lg":`size-10`}},defaultVariants:{variant:`default`,size:`default`}});function s({className:e,variant:n=`default`,size:i=`default`,disabled:s,loading:c=!1,loadingLabel:l=`Loading`,leftIcon:u,rightIcon:d,iconOnly:f=!1,fullWidth:p=!1,pressed:m=!1,children:h,"aria-label":g,..._}){let v=s||c,y=f&&(i==="default"||i===`md`)?`icon`:i;return(0,a.jsxs)(r.Button,{"data-slot":`button`,"data-variant":n??`default`,"data-size":y??`default`,"data-icon-only":f||void 0,"data-loading":c||void 0,"data-pressed":m||void 0,disabled:v,"aria-busy":c||void 0,"aria-pressed":m||void 0,"aria-label":g,className:t.cn(o({variant:n,size:y,className:e}),p&&`w-full`,m&&`shadow-[var(--aui-control-shadow,0_1px_2px_rgba(15,23,42,0.04)),0_0_0_1px_var(--aui-focus-ring,var(--ring))]`),..._,children:[c?(0,a.jsx)(`span`,{"data-slot":`button-spinner`,"aria-hidden":`true`,className:`size-4 animate-spin rounded-full border-2 border-current border-t-transparent opacity-80`}):u?(0,a.jsx)(`span`,{"data-icon":`inline-start`,"data-slot":`button-icon`,className:`inline-flex shrink-0 items-center justify-center`,children:u}):null,h?(0,a.jsx)(`span`,{"data-slot":`button-label`,children:c?l:h}):null,!c&&d?(0,a.jsx)(`span`,{"data-icon":`inline-end`,"data-slot":`button-icon`,className:`inline-flex shrink-0 items-center justify-center`,children:d}):null]})}exports.Button=s,exports.buttonVariants=o;
@@ -10,8 +10,9 @@ export type ButtonProps = ButtonPrimitive.Props & VariantProps<typeof buttonVari
10
10
  loadingLabel?: string;
11
11
  leftIcon?: React.ReactNode;
12
12
  rightIcon?: React.ReactNode;
13
+ iconOnly?: boolean;
13
14
  fullWidth?: boolean;
14
15
  pressed?: boolean;
15
16
  };
16
- declare function Button({ className, variant, size, disabled, loading, loadingLabel, leftIcon, rightIcon, fullWidth, pressed, children, ...props }: ButtonProps): React.JSX.Element;
17
+ declare function Button({ className, variant, size, disabled, loading, loadingLabel, leftIcon, rightIcon, iconOnly, fullWidth, pressed, children, "aria-label": ariaLabel, ...props }: ButtonProps): React.JSX.Element;
17
18
  export { Button, buttonVariants };
@@ -33,22 +33,25 @@ var a = n("group/button inline-flex shrink-0 items-center justify-center rounded
33
33
  size: "default"
34
34
  }
35
35
  });
36
- function o({ className: n, variant: o = "default", size: s = "default", disabled: c, loading: l = !1, loadingLabel: u = "Loading", leftIcon: d, rightIcon: f, fullWidth: p = !1, pressed: m = !1, children: h, ...g }) {
36
+ function o({ className: n, variant: o = "default", size: s = "default", disabled: c, loading: l = !1, loadingLabel: u = "Loading", leftIcon: d, rightIcon: f, iconOnly: p = !1, fullWidth: m = !1, pressed: h = !1, children: g, "aria-label": _, ...v }) {
37
+ let y = c || l, b = p && (s === "default" || s === "md") ? "icon" : s;
37
38
  return /* @__PURE__ */ i(t, {
38
39
  "data-slot": "button",
39
40
  "data-variant": o ?? "default",
40
- "data-size": s ?? "default",
41
+ "data-size": b ?? "default",
42
+ "data-icon-only": p || void 0,
41
43
  "data-loading": l || void 0,
42
- "data-pressed": m || void 0,
43
- disabled: c || l,
44
+ "data-pressed": h || void 0,
45
+ disabled: y,
44
46
  "aria-busy": l || void 0,
45
- "aria-pressed": m || void 0,
47
+ "aria-pressed": h || void 0,
48
+ "aria-label": _,
46
49
  className: e(a({
47
50
  variant: o,
48
- size: s,
51
+ size: b,
49
52
  className: n
50
- }), p && "w-full", m && "shadow-[var(--aui-control-shadow,0_1px_2px_rgba(15,23,42,0.04)),0_0_0_1px_var(--aui-focus-ring,var(--ring))]"),
51
- ...g,
53
+ }), m && "w-full", h && "shadow-[var(--aui-control-shadow,0_1px_2px_rgba(15,23,42,0.04)),0_0_0_1px_var(--aui-focus-ring,var(--ring))]"),
54
+ ...v,
52
55
  children: [
53
56
  l ? /* @__PURE__ */ r("span", {
54
57
  "data-slot": "button-spinner",
@@ -60,9 +63,9 @@ function o({ className: n, variant: o = "default", size: s = "default", disabled
60
63
  className: "inline-flex shrink-0 items-center justify-center",
61
64
  children: d
62
65
  }) : null,
63
- h ? /* @__PURE__ */ r("span", {
66
+ g ? /* @__PURE__ */ r("span", {
64
67
  "data-slot": "button-label",
65
- children: l ? u : h
68
+ children: l ? u : g
66
69
  }) : null,
67
70
  !l && f ? /* @__PURE__ */ r("span", {
68
71
  "data-icon": "inline-end",
@@ -1 +1 @@
1
- Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=require("../../../_virtual/_rolldown/runtime.cjs"),t=require("../../../lib/utils.cjs");let n=require("react");n=e.__toESM(n,1);let r=require("class-variance-authority"),i=require("react/jsx-runtime");var a=(0,r.cva)(`group/card flex flex-col gap-(--card-spacing) overflow-hidden rounded-[var(--aui-card-radius,var(--radius-xl))] border py-(--card-spacing) text-sm text-card-foreground transition-[background-color,border-color,box-shadow,transform,opacity] [--card-spacing:--spacing(5)] has-data-[slot=card-footer]:pb-0 has-[>img:first-child]:pt-0 *:[img:first-child]:rounded-t-[var(--aui-card-radius,var(--radius-xl))] *:[img:last-child]:rounded-b-[var(--aui-card-radius,var(--radius-xl))]`,{variants:{variant:{default:``,elevated:``,outline:``,soft:``,ghost:`border-transparent bg-transparent shadow-none ring-0`},size:{sm:`[--card-spacing:--spacing(4)] data-[has-footer=true]:pb-0`,default:`[--card-spacing:--spacing(5)]`,lg:`[--card-spacing:--spacing(6)]`},density:{compact:`text-xs`,default:`text-sm`,comfortable:`text-base`},tone:{neutral:``,info:``,success:``,warning:``,danger:``},interactive:{true:`cursor-pointer focus-visible:outline-none focus-visible:ring-0`,false:``},selected:{true:``,false:``},disabled:{true:`pointer-events-none opacity-55`,false:``}},defaultVariants:{variant:`default`,size:`default`,density:`default`,tone:`neutral`,interactive:!1,selected:!1,disabled:!1}});function o(e){return e.eyebrow!=null||e.title!=null||e.description!=null||e.badge!=null||e.action!=null||e.media!=null||e.content!=null||e.footer!=null}function s({className:e,variant:n,size:r,density:s,tone:m,interactive:h,selected:g,disabled:_,tabIndex:v,eyebrow:y,title:b,description:x,badge:S,action:C,media:w,content:T,footer:E,headerClassName:D,titleClassName:O,descriptionClassName:k,contentClassName:A,footerClassName:j,children:M,...N}){let P=o({eyebrow:y,title:b,description:x,badge:S,action:C,media:w,content:T,footer:E}),F=T??M,I=y!=null||b!=null||x!=null||S!=null||C!=null,L=E!=null;return(0,i.jsx)(`div`,{"data-slot":`card`,"data-surface":P||void 0,"data-size":r??`default`,"data-variant":n??`default`,"data-tone":m??`neutral`,"data-density":s??`default`,"data-interactive":h||void 0,"data-selected":g||void 0,"data-disabled":_||void 0,"data-has-footer":L||void 0,"aria-disabled":_||void 0,tabIndex:h&&!_?v??0:v,className:t.cn(a({variant:n,size:r,density:s,tone:m,interactive:h,selected:g,disabled:_}),e),...N,children:P?(0,i.jsxs)(i.Fragment,{children:[w,I?(0,i.jsxs)(c,{className:D,children:[(0,i.jsxs)(`div`,{className:`min-w-0 space-y-1`,children:[y==null?null:(0,i.jsx)(`div`,{className:`text-[11px] font-semibold uppercase tracking-[0.18em] text-muted-foreground/80`,children:y}),b==null?null:(0,i.jsx)(l,{className:O,children:b}),x==null?null:(0,i.jsx)(u,{className:k,children:x})]}),S!=null||C!=null?(0,i.jsxs)(d,{className:`flex items-center gap-2`,children:[S,C]}):null]}):null,F==null?null:(0,i.jsx)(f,{className:A,children:F}),L?(0,i.jsx)(p,{className:j,children:E}):null]}):M})}function c({className:e,...n}){return(0,i.jsx)(`div`,{"data-slot":`card-header`,className:t.cn(`group/card-header @container/card-header grid auto-rows-min items-start gap-1.5 rounded-t-[var(--aui-card-radius,var(--radius-xl))] px-(--card-spacing) has-data-[slot=card-action]:grid-cols-[1fr_auto] has-data-[slot=card-description]:grid-rows-[auto_auto] [.border-b]:pb-(--card-spacing)`,e),...n})}function l({className:e,...n}){return(0,i.jsx)(`div`,{"data-slot":`card-title`,className:t.cn(`font-heading text-[1.05rem] leading-snug font-semibold tracking-tight group-data-[size=sm]/card:text-sm group-data-[size=lg]/card:text-xl`,e),...n})}function u({className:e,...n}){return(0,i.jsx)(`div`,{"data-slot":`card-description`,className:t.cn(`text-sm leading-6 text-muted-foreground`,e),...n})}function d({className:e,...n}){return(0,i.jsx)(`div`,{"data-slot":`card-action`,className:t.cn(`col-start-2 row-span-2 row-start-1 self-start justify-self-end`,e),...n})}function f({className:e,...n}){return(0,i.jsx)(`div`,{"data-slot":`card-content`,className:t.cn(`px-(--card-spacing)`,e),...n})}function p({className:e,...n}){return(0,i.jsx)(`div`,{"data-slot":`card-footer`,className:t.cn(`flex items-center rounded-b-[var(--aui-card-radius,var(--radius-xl))] border-t border-border/60 bg-muted/22 p-(--card-spacing)`,e),...n})}exports.Card=s,exports.CardAction=d,exports.CardContent=f,exports.CardDescription=u,exports.CardFooter=p,exports.CardHeader=c,exports.CardTitle=l,exports.cardVariants=a;
1
+ Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=require("../../../_virtual/_rolldown/runtime.cjs"),t=require("../../../lib/utils.cjs");let n=require("react");n=e.__toESM(n,1);let r=require("class-variance-authority"),i=require("react/jsx-runtime");var a=(0,r.cva)(`group/card flex flex-col gap-(--card-spacing) overflow-hidden rounded-[var(--aui-card-radius,var(--radius-xl))] border py-(--card-spacing) text-sm text-card-foreground transition-[background-color,border-color,box-shadow,transform,opacity] [--card-spacing:--spacing(5)] has-data-[slot=card-footer]:pb-0 has-[>img:first-child]:pt-0 *:[img:first-child]:rounded-t-[var(--aui-card-radius,var(--radius-xl))] *:[img:last-child]:rounded-b-[var(--aui-card-radius,var(--radius-xl))]`,{variants:{variant:{default:``,elevated:``,outline:``,soft:``,ghost:`border-transparent bg-transparent shadow-none ring-0`},size:{sm:`[--card-spacing:--spacing(4)] data-[has-footer=true]:pb-0`,default:`[--card-spacing:--spacing(5)]`,lg:`[--card-spacing:--spacing(6)]`},density:{compact:`text-xs`,default:`text-sm`,comfortable:`text-base`},tone:{neutral:``,info:``,success:``,warning:``,danger:``},interactive:{true:`cursor-pointer focus-visible:outline-none focus-visible:ring-0`,false:``},selected:{true:``,false:``},disabled:{true:`pointer-events-none opacity-55`,false:``}},defaultVariants:{variant:`default`,size:`default`,density:`default`,tone:`neutral`,interactive:!1,selected:!1,disabled:!1}});function o(e){return e.eyebrow!=null||e.title!=null||e.description!=null||e.badge!=null||e.action!=null||e.media!=null||e.content!=null||e.footer!=null}function s({className:e,variant:n,size:r,density:s,tone:m,interactive:h,selected:g,disabled:_,orientation:v=`vertical`,mediaPosition:y=`start`,mediaAspect:b=`auto`,padding:x=`default`,tabIndex:S,eyebrow:C,title:w,description:T,badge:E,action:D,media:O,content:k,footer:A,mediaClassName:j,bodyClassName:M,headerClassName:N,eyebrowClassName:P,titleClassName:F,descriptionClassName:I,contentClassName:L,footerClassName:R,children:z,...B}){let V=o({eyebrow:C,title:w,description:T,badge:E,action:D,media:O,content:k,footer:A}),H=k??z,U=C!=null||w!=null||T!=null||E!=null||D!=null,W=A!=null,G=O?(0,i.jsx)(`div`,{"data-slot":`card-media`,"data-media-position":y,"data-media-aspect":b,className:t.cn(`overflow-hidden`,v===`horizontal`?`shrink-0 self-stretch`:``,b===`square`&&(v===`horizontal`?`w-40`:`aspect-square`),b===`video`&&(v===`horizontal`?`w-56`:`aspect-video`),b===`poster`&&(v===`horizontal`?`w-36`:`aspect-[3/4]`),b===`wide`&&(v===`horizontal`?`w-72`:`aspect-[16/7]`),j),children:O}):null,K={none:``,sm:`px-4`,default:`px-(--card-spacing)`,lg:`px-6`},q={none:``,sm:`pb-4`,default:``,lg:`pb-6`};return(0,i.jsx)(`div`,{"data-slot":`card`,"data-surface":V||void 0,"data-size":r??`default`,"data-variant":n??`default`,"data-tone":m??`neutral`,"data-density":s??`default`,"data-interactive":h||void 0,"data-selected":g||void 0,"data-disabled":_||void 0,"data-has-footer":W||void 0,"data-orientation":v,"data-padding":x,"aria-disabled":_||void 0,tabIndex:h&&!_?S??0:S,className:t.cn(a({variant:n,size:r,density:s,tone:m,interactive:h,selected:g,disabled:_}),v===`horizontal`&&`flex-row py-0`,h&&`hover:border-[color:var(--aui-control-hover-border,var(--ring))] hover:shadow-[var(--aui-card-shadow-hover,var(--aui-card-shadow,0_12px_32px_rgba(15,23,42,0.08)))]`,g&&`border-[color:var(--aui-control-border-strong,var(--ring))] shadow-[var(--aui-card-shadow-hover,var(--aui-card-shadow,0_12px_32px_rgba(15,23,42,0.08)))]`,e),...B,children:V?(0,i.jsxs)(i.Fragment,{children:[y===`start`?G:null,(0,i.jsxs)(`div`,{"data-slot":`card-body`,className:t.cn(`flex min-w-0 flex-1 flex-col`,v===`horizontal`?`py-(--card-spacing)`:``,q[x],M),children:[U?(0,i.jsxs)(c,{className:t.cn(K[x],N),children:[(0,i.jsxs)(`div`,{className:`min-w-0 space-y-1`,children:[C==null?null:(0,i.jsx)(`div`,{className:t.cn(`text-[11px] font-semibold uppercase tracking-[0.18em] text-muted-foreground/80`,P),children:C}),w==null?null:(0,i.jsx)(l,{className:F,children:w}),T==null?null:(0,i.jsx)(u,{className:I,children:T})]}),E!=null||D!=null?(0,i.jsxs)(d,{className:`flex items-center gap-2`,children:[E,D]}):null]}):null,H==null?null:(0,i.jsx)(f,{className:t.cn(K[x],L),children:H}),W?(0,i.jsx)(p,{className:t.cn(K[x],R),children:A}):null]}),y===`end`?G:null]}):z})}function c({className:e,...n}){return(0,i.jsx)(`div`,{"data-slot":`card-header`,className:t.cn(`group/card-header @container/card-header grid auto-rows-min items-start gap-1.5 rounded-t-[var(--aui-card-radius,var(--radius-xl))] px-(--card-spacing) has-data-[slot=card-action]:grid-cols-[1fr_auto] has-data-[slot=card-description]:grid-rows-[auto_auto] [.border-b]:pb-(--card-spacing)`,e),...n})}function l({className:e,...n}){return(0,i.jsx)(`div`,{"data-slot":`card-title`,className:t.cn(`font-heading text-[1.05rem] leading-snug font-semibold tracking-tight group-data-[size=sm]/card:text-sm group-data-[size=lg]/card:text-xl`,e),...n})}function u({className:e,...n}){return(0,i.jsx)(`div`,{"data-slot":`card-description`,className:t.cn(`text-sm leading-6 text-muted-foreground`,e),...n})}function d({className:e,...n}){return(0,i.jsx)(`div`,{"data-slot":`card-action`,className:t.cn(`col-start-2 row-span-2 row-start-1 self-start justify-self-end`,e),...n})}function f({className:e,...n}){return(0,i.jsx)(`div`,{"data-slot":`card-content`,className:t.cn(`px-(--card-spacing)`,e),...n})}function p({className:e,...n}){return(0,i.jsx)(`div`,{"data-slot":`card-footer`,className:t.cn(`flex items-center rounded-b-[var(--aui-card-radius,var(--radius-xl))] border-t border-border/60 bg-muted/22 p-(--card-spacing)`,e),...n})}exports.Card=s,exports.CardAction=d,exports.CardContent=f,exports.CardDescription=u,exports.CardFooter=p,exports.CardHeader=c,exports.CardTitle=l,exports.cardVariants=a;