tembro 2.0.4 → 2.0.6

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 (401) hide show
  1. package/dist/components/actions/action-menu.cjs +1 -1
  2. package/dist/components/actions/action-menu.d.ts +13 -1
  3. package/dist/components/actions/action-menu.js +87 -61
  4. package/dist/components/actions/button-group.cjs +1 -1
  5. package/dist/components/actions/button-group.d.ts +9 -1
  6. package/dist/components/actions/button-group.js +58 -14
  7. package/dist/components/actions/copy-button.cjs +1 -1
  8. package/dist/components/actions/copy-button.d.ts +2 -1
  9. package/dist/components/actions/copy-button.js +13 -11
  10. package/dist/components/calendar/calendar.cjs +1 -1
  11. package/dist/components/calendar/calendar.d.ts +14 -1
  12. package/dist/components/calendar/calendar.js +207 -128
  13. package/dist/components/calendar/date-picker.cjs +1 -1
  14. package/dist/components/calendar/date-picker.d.ts +3 -1
  15. package/dist/components/calendar/date-picker.js +57 -27
  16. package/dist/components/calendar/date-range-picker.cjs +1 -1
  17. package/dist/components/calendar/date-range-picker.d.ts +10 -1
  18. package/dist/components/calendar/date-range-picker.js +149 -64
  19. package/dist/components/data-table/data-table-pagination.cjs +1 -1
  20. package/dist/components/data-table/data-table-pagination.js +4 -4
  21. package/dist/components/data-table/data-table-toolbar.cjs +1 -1
  22. package/dist/components/data-table/data-table-toolbar.d.ts +5 -1
  23. package/dist/components/data-table/data-table-toolbar.js +36 -23
  24. package/dist/components/data-table/data-table.cjs +1 -1
  25. package/dist/components/data-table/data-table.d.ts +8 -6
  26. package/dist/components/data-table/data-table.js +89 -80
  27. package/dist/components/data-table/demo.cjs +1 -1
  28. package/dist/components/data-table/demo.js +3 -13
  29. package/dist/components/data-table/index.cjs +1 -1
  30. package/dist/components/data-table/index.js +5 -5
  31. package/dist/components/data-table/public.cjs +1 -1
  32. package/dist/components/data-table/public.d.ts +1 -6
  33. package/dist/components/data-table/public.js +7 -12
  34. package/dist/components/display/activity-feed.cjs +1 -1
  35. package/dist/components/display/activity-feed.d.ts +12 -1
  36. package/dist/components/display/activity-feed.js +69 -47
  37. package/dist/components/display/carousel.cjs +1 -1
  38. package/dist/components/display/carousel.d.ts +16 -1
  39. package/dist/components/display/carousel.js +71 -26
  40. package/dist/components/display/code-block.cjs +2 -1
  41. package/dist/components/display/code-block.d.ts +3 -1
  42. package/dist/components/display/code-block.js +33 -19
  43. package/dist/components/display/comparison-card.cjs +1 -1
  44. package/dist/components/display/comparison-card.d.ts +3 -3
  45. package/dist/components/display/comparison-card.js +14 -38
  46. package/dist/components/display/data-state.cjs +1 -1
  47. package/dist/components/display/data-state.d.ts +12 -2
  48. package/dist/components/display/data-state.js +80 -42
  49. package/dist/components/display/demo.cjs +1 -1
  50. package/dist/components/display/demo.js +1 -5
  51. package/dist/components/display/index.cjs +1 -1
  52. package/dist/components/display/index.d.ts +0 -3
  53. package/dist/components/display/index.js +21 -24
  54. package/dist/components/display/smart-card.d.ts +1 -1
  55. package/dist/components/display/status-legend.d.ts +1 -1
  56. package/dist/components/feedback/alert.cjs +1 -1
  57. package/dist/components/feedback/alert.d.ts +6 -1
  58. package/dist/components/feedback/alert.js +49 -19
  59. package/dist/components/feedback/index.cjs +1 -1
  60. package/dist/components/feedback/index.d.ts +0 -2
  61. package/dist/components/feedback/index.js +3 -5
  62. package/dist/components/filters/demo.cjs +1 -1
  63. package/dist/components/filters/demo.js +1 -5
  64. package/dist/components/filters/filter-bar.cjs +1 -1
  65. package/dist/components/filters/filter-bar.d.ts +15 -1
  66. package/dist/components/filters/filter-bar.js +94 -50
  67. package/dist/components/filters/index.cjs +1 -1
  68. package/dist/components/filters/index.d.ts +0 -1
  69. package/dist/components/filters/index.js +3 -4
  70. package/dist/components/form/form-field-shell.cjs +1 -1
  71. package/dist/components/form/form-field-shell.d.ts +17 -3
  72. package/dist/components/form/form-field-shell.js +54 -40
  73. package/dist/components/form/form-input.cjs +1 -1
  74. package/dist/components/form/form-input.d.ts +3 -4
  75. package/dist/components/form/form-input.js +285 -224
  76. package/dist/components/form/form-select.cjs +1 -1
  77. package/dist/components/form/form-select.d.ts +2 -2
  78. package/dist/components/form/form-select.js +49 -35
  79. package/dist/components/form/form-switch.cjs +1 -1
  80. package/dist/components/form/form-switch.js +79 -66
  81. package/dist/components/form/form-textarea.cjs +1 -1
  82. package/dist/components/form/form-textarea.js +59 -48
  83. package/dist/components/form/index.cjs +1 -1
  84. package/dist/components/form/index.js +14 -14
  85. package/dist/components/form/public.cjs +1 -1
  86. package/dist/components/form/public.d.ts +0 -8
  87. package/dist/components/form/public.js +7 -15
  88. package/dist/components/inputs/async-select.cjs +1 -1
  89. package/dist/components/inputs/async-select.d.ts +14 -2
  90. package/dist/components/inputs/async-select.js +278 -270
  91. package/dist/components/inputs/combobox.cjs +1 -1
  92. package/dist/components/inputs/combobox.d.ts +5 -1
  93. package/dist/components/inputs/combobox.js +52 -19
  94. package/dist/components/inputs/search-input.d.ts +3 -0
  95. package/dist/components/inputs/simple-select.cjs +1 -1
  96. package/dist/components/inputs/simple-select.d.ts +10 -31
  97. package/dist/components/inputs/simple-select.js +5 -85
  98. package/dist/components/layout/app-sidebar.cjs +1 -1
  99. package/dist/components/layout/app-sidebar.d.ts +4 -1
  100. package/dist/components/layout/app-sidebar.js +152 -132
  101. package/dist/components/layout/breadcrumbs.cjs +1 -1
  102. package/dist/components/layout/breadcrumbs.d.ts +2 -1
  103. package/dist/components/layout/breadcrumbs.js +10 -10
  104. package/dist/components/layout/index.cjs +1 -1
  105. package/dist/components/layout/index.js +3 -3
  106. package/dist/components/layout/stat-card.cjs +1 -1
  107. package/dist/components/layout/stat-card.d.ts +8 -1
  108. package/dist/components/layout/stat-card.js +33 -11
  109. package/dist/components/modern/calendar-scheduler.cjs +1 -1
  110. package/dist/components/modern/calendar-scheduler.d.ts +2 -1
  111. package/dist/components/modern/calendar-scheduler.js +21 -12
  112. package/dist/components/overlay/alert-dialog.cjs +1 -1
  113. package/dist/components/overlay/alert-dialog.d.ts +15 -1
  114. package/dist/components/overlay/alert-dialog.js +102 -27
  115. package/dist/components/overlay/drawer.cjs +1 -1
  116. package/dist/components/overlay/drawer.d.ts +4 -1
  117. package/dist/components/overlay/drawer.js +20 -17
  118. package/dist/components/patterns/index.cjs +1 -1
  119. package/dist/components/patterns/index.d.ts +0 -1
  120. package/dist/components/patterns/index.js +1 -2
  121. package/dist/components/patterns/public.cjs +1 -1
  122. package/dist/components/patterns/public.d.ts +0 -1
  123. package/dist/components/patterns/public.js +1 -2
  124. package/dist/components/ui/button/index.cjs +1 -1
  125. package/dist/components/ui/button/index.d.ts +3 -1
  126. package/dist/components/ui/button/index.js +7 -5
  127. package/dist/components/ui/card/index.cjs +1 -1
  128. package/dist/components/ui/card/index.d.ts +13 -2
  129. package/dist/components/ui/card/index.js +74 -49
  130. package/dist/components/ui/checkbox/index.cjs +1 -1
  131. package/dist/components/ui/checkbox/index.d.ts +8 -0
  132. package/dist/components/ui/checkbox/index.js +16 -14
  133. package/dist/components/ui/collapse/index.cjs +1 -1
  134. package/dist/components/ui/collapse/index.d.ts +17 -3
  135. package/dist/components/ui/collapse/index.js +88 -33
  136. package/dist/components/ui/dialog/index.cjs +1 -1
  137. package/dist/components/ui/dialog/index.d.ts +2 -1
  138. package/dist/components/ui/dialog/index.js +6 -4
  139. package/dist/components/ui/dropdown-menu/index.cjs +1 -1
  140. package/dist/components/ui/dropdown-menu/index.d.ts +9 -4
  141. package/dist/components/ui/dropdown-menu/index.js +87 -62
  142. package/dist/components/ui/input/index.cjs +1 -1
  143. package/dist/components/ui/input/index.d.ts +8 -0
  144. package/dist/components/ui/input/index.js +63 -30
  145. package/dist/components/ui/select/index.cjs +1 -1
  146. package/dist/components/ui/select/index.d.ts +33 -1
  147. package/dist/components/ui/select/index.js +154 -48
  148. package/dist/index.cjs +1 -1
  149. package/dist/index.js +137 -156
  150. package/dist/public-component-surface.cjs +1 -1
  151. package/dist/public-component-surface.js +0 -15
  152. package/dist/showcase/component-api-schema.cjs +1 -1
  153. package/dist/showcase/component-api-schema.js +2 -2
  154. package/dist/showcase/create-demo.cjs +23 -36
  155. package/dist/showcase/create-demo.js +15 -16
  156. package/dist/showcase/fallback.cjs +3 -3
  157. package/dist/showcase/fallback.js +275 -265
  158. package/dist/showcase/premium/accordion/showcase.cjs +1 -1
  159. package/dist/showcase/premium/accordion/showcase.js +36 -5
  160. package/dist/showcase/premium/action-menu/showcase.cjs +1 -1
  161. package/dist/showcase/premium/action-menu/showcase.js +26 -8
  162. package/dist/showcase/premium/activity-feed/showcase.cjs +1 -1
  163. package/dist/showcase/premium/activity-feed/showcase.js +60 -36
  164. package/dist/showcase/premium/alert/showcase.cjs +1 -1
  165. package/dist/showcase/premium/alert/showcase.js +41 -18
  166. package/dist/showcase/premium/alert-dialog/showcase.cjs +1 -1
  167. package/dist/showcase/premium/alert-dialog/showcase.js +35 -7
  168. package/dist/showcase/premium/async-multi-select/mock.cjs +4 -3
  169. package/dist/showcase/premium/async-multi-select/mock.js +5 -5
  170. package/dist/showcase/premium/async-multi-select/showcase.cjs +1 -1
  171. package/dist/showcase/premium/async-multi-select/showcase.js +4 -3
  172. package/dist/showcase/premium/async-select/mock.cjs +1 -1
  173. package/dist/showcase/premium/async-select/mock.js +1 -1
  174. package/dist/showcase/premium/async-select/showcase.cjs +1 -1
  175. package/dist/showcase/premium/async-select/showcase.js +69 -22
  176. package/dist/showcase/premium/button/showcase.cjs +1 -1
  177. package/dist/showcase/premium/button/showcase.js +49 -3
  178. package/dist/showcase/premium/button-group/showcase.cjs +1 -1
  179. package/dist/showcase/premium/button-group/showcase.js +53 -29
  180. package/dist/showcase/premium/calendar/showcase.cjs +1 -1
  181. package/dist/showcase/premium/calendar/showcase.js +7 -2
  182. package/dist/showcase/premium/carousel/showcase.cjs +1 -1
  183. package/dist/showcase/premium/carousel/showcase.js +95 -47
  184. package/dist/showcase/premium/checkbox/showcase.cjs +1 -1
  185. package/dist/showcase/premium/checkbox/showcase.js +143 -67
  186. package/dist/showcase/premium/clearable-input/mock.cjs +4 -3
  187. package/dist/showcase/premium/clearable-input/mock.js +3 -2
  188. package/dist/showcase/premium/clearable-input/showcase.cjs +1 -1
  189. package/dist/showcase/premium/clearable-input/showcase.js +8 -2
  190. package/dist/showcase/premium/collapse/showcase.cjs +1 -1
  191. package/dist/showcase/premium/collapse/showcase.js +7 -0
  192. package/dist/showcase/premium/combobox/showcase.cjs +1 -1
  193. package/dist/showcase/premium/combobox/showcase.d.ts +2 -1
  194. package/dist/showcase/premium/combobox/showcase.js +56 -47
  195. package/dist/showcase/premium/data-table/showcase.cjs +1 -1
  196. package/dist/showcase/premium/data-table/showcase.js +138 -46
  197. package/dist/showcase/premium/data-table-parts/showcase.cjs +1 -1
  198. package/dist/showcase/premium/data-table-parts/showcase.js +16 -14
  199. package/dist/showcase/premium/date-input/mock.cjs +1 -1
  200. package/dist/showcase/premium/date-input/mock.js +1 -1
  201. package/dist/showcase/premium/date-range-picker/showcase.cjs +1 -1
  202. package/dist/showcase/premium/date-range-picker/showcase.js +32 -1
  203. package/dist/showcase/premium/dropdown-menu/showcase.cjs +1 -1
  204. package/dist/showcase/premium/dropdown-menu/showcase.js +88 -54
  205. package/dist/showcase/premium/form-wrapper/mock.cjs +41 -15
  206. package/dist/showcase/premium/form-wrapper/mock.js +4 -4
  207. package/dist/showcase/premium/form-wrapper/showcase.cjs +1 -1
  208. package/dist/showcase/premium/form-wrapper/showcase.js +77 -28
  209. package/dist/showcase/premium/index.cjs +1 -1
  210. package/dist/showcase/premium/index.js +426 -467
  211. package/dist/showcase/premium/input/mock.cjs +4 -1
  212. package/dist/showcase/premium/input/mock.js +1 -1
  213. package/dist/showcase/premium/masked-input/mock.cjs +1 -1
  214. package/dist/showcase/premium/masked-input/mock.js +1 -1
  215. package/dist/showcase/premium/money-input/mock.cjs +1 -1
  216. package/dist/showcase/premium/money-input/mock.js +1 -1
  217. package/dist/showcase/premium/number-input/mock.cjs +1 -1
  218. package/dist/showcase/premium/number-input/mock.js +1 -1
  219. package/dist/showcase/premium/phone-input/mock.cjs +1 -1
  220. package/dist/showcase/premium/phone-input/mock.js +1 -1
  221. package/dist/showcase/premium/quantity-input/mock.cjs +1 -1
  222. package/dist/showcase/premium/quantity-input/mock.js +1 -1
  223. package/dist/showcase/premium/select/mock.cjs +8 -9
  224. package/dist/showcase/premium/select/mock.js +1 -1
  225. package/dist/showcase/premium/select/showcase.cjs +1 -1
  226. package/dist/showcase/premium/select/showcase.js +76 -86
  227. package/dist/showcase/premium/simple-select/mock.cjs +1 -1
  228. package/dist/showcase/premium/simple-select/mock.js +1 -1
  229. package/dist/showcase/premium/simple-select/showcase.cjs +1 -1
  230. package/dist/showcase/premium/simple-select/showcase.js +4 -2
  231. package/dist/showcase/preview-catalog.cjs +7 -10
  232. package/dist/showcase/preview-catalog.js +7 -7
  233. package/dist/showcase/registry-quality.cjs +1 -1
  234. package/dist/showcase/registry-quality.js +0 -23
  235. package/dist/showcase/registry-specific.cjs +1 -1
  236. package/dist/showcase/registry-specific.js +153 -383
  237. package/dist/showcase/render-registry-preview.cjs +1 -1
  238. package/dist/showcase/render-registry-preview.js +169 -197
  239. package/dist/showcase/site-data.cjs +1 -1
  240. package/dist/showcase/site-data.js +197 -941
  241. package/dist/showcase/supplemental.cjs +1 -1
  242. package/dist/showcase/supplemental.js +1 -1
  243. package/dist/showcase/tembro-registry.json.cjs +1 -1
  244. package/dist/showcase/tembro-registry.json.js +33 -51
  245. package/package.json +1 -1
  246. package/packages/cli/dist/index.cjs +2 -2
  247. package/packages/cli/vendor/src/components/actions/action-menu.tsx +149 -83
  248. package/packages/cli/vendor/src/components/actions/button-group.tsx +141 -33
  249. package/packages/cli/vendor/src/components/actions/copy-button.tsx +21 -16
  250. package/packages/cli/vendor/src/components/calendar/calendar.tsx +223 -88
  251. package/packages/cli/vendor/src/components/calendar/date-picker.tsx +73 -29
  252. package/packages/cli/vendor/src/components/calendar/date-range-picker.tsx +154 -49
  253. package/packages/cli/vendor/src/components/data-table/data-table-pagination.tsx +7 -7
  254. package/packages/cli/vendor/src/components/data-table/data-table-toolbar.tsx +71 -50
  255. package/packages/cli/vendor/src/components/data-table/data-table.tsx +86 -73
  256. package/packages/cli/vendor/src/components/data-table/demo.tsx +2 -12
  257. package/packages/cli/vendor/src/components/data-table/public.ts +1 -6
  258. package/packages/cli/vendor/src/components/display/activity-feed.tsx +98 -40
  259. package/packages/cli/vendor/src/components/display/carousel.tsx +104 -6
  260. package/packages/cli/vendor/src/components/display/code-block.tsx +58 -26
  261. package/packages/cli/vendor/src/components/display/comparison-card.tsx +15 -41
  262. package/packages/cli/vendor/src/components/display/data-state.tsx +119 -50
  263. package/packages/cli/vendor/src/components/display/demo.tsx +0 -4
  264. package/packages/cli/vendor/src/components/display/index.ts +0 -3
  265. package/packages/cli/vendor/src/components/display/smart-card.tsx +1 -1
  266. package/packages/cli/vendor/src/components/display/status-legend.tsx +1 -1
  267. package/packages/cli/vendor/src/components/feedback/alert.tsx +86 -28
  268. package/packages/cli/vendor/src/components/feedback/index.ts +0 -2
  269. package/packages/cli/vendor/src/components/filters/demo.tsx +0 -1
  270. package/packages/cli/vendor/src/components/filters/filter-bar.tsx +126 -54
  271. package/packages/cli/vendor/src/components/filters/index.ts +0 -1
  272. package/packages/cli/vendor/src/components/form/form-field-shell.tsx +72 -34
  273. package/packages/cli/vendor/src/components/form/form-input.tsx +127 -23
  274. package/packages/cli/vendor/src/components/form/form-select.tsx +30 -7
  275. package/packages/cli/vendor/src/components/form/form-switch.tsx +77 -58
  276. package/packages/cli/vendor/src/components/form/form-textarea.tsx +65 -51
  277. package/packages/cli/vendor/src/components/form/public.ts +0 -9
  278. package/packages/cli/vendor/src/components/inputs/async-select.tsx +138 -91
  279. package/packages/cli/vendor/src/components/inputs/combobox.tsx +66 -9
  280. package/packages/cli/vendor/src/components/inputs/search-input.tsx +5 -2
  281. package/packages/cli/vendor/src/components/inputs/simple-select.tsx +20 -162
  282. package/packages/cli/vendor/src/components/layout/app-sidebar.tsx +42 -1
  283. package/packages/cli/vendor/src/components/layout/breadcrumbs.tsx +17 -8
  284. package/packages/cli/vendor/src/components/layout/stat-card.tsx +63 -23
  285. package/packages/cli/vendor/src/components/modern/calendar-scheduler.tsx +32 -22
  286. package/packages/cli/vendor/src/components/overlay/alert-dialog.tsx +148 -24
  287. package/packages/cli/vendor/src/components/overlay/drawer.tsx +42 -30
  288. package/packages/cli/vendor/src/components/patterns/index.ts +0 -1
  289. package/packages/cli/vendor/src/components/patterns/public.ts +0 -1
  290. package/packages/cli/vendor/src/components/ui/button/index.tsx +27 -17
  291. package/packages/cli/vendor/src/components/ui/card/index.tsx +95 -25
  292. package/packages/cli/vendor/src/components/ui/checkbox/index.tsx +22 -5
  293. package/packages/cli/vendor/src/components/ui/collapse/index.tsx +97 -16
  294. package/packages/cli/vendor/src/components/ui/dialog/index.tsx +12 -8
  295. package/packages/cli/vendor/src/components/ui/dropdown-menu/index.tsx +82 -28
  296. package/packages/cli/vendor/src/components/ui/input/index.tsx +98 -0
  297. package/packages/cli/vendor/src/components/ui/select/index.tsx +227 -34
  298. package/packages/cli/vendor/src/public-component-surface.ts +0 -3
  299. package/packages/cli/vendor/src/showcase/component-api-schema.ts +2 -2
  300. package/packages/cli/vendor/src/showcase/create-demo.tsx +44 -58
  301. package/packages/cli/vendor/src/showcase/fallback.tsx +80 -99
  302. package/packages/cli/vendor/src/showcase/premium/accordion/showcase.tsx +32 -2
  303. package/packages/cli/vendor/src/showcase/premium/action-menu/showcase.tsx +12 -3
  304. package/packages/cli/vendor/src/showcase/premium/activity-feed/showcase.tsx +15 -2
  305. package/packages/cli/vendor/src/showcase/premium/alert/showcase.tsx +32 -17
  306. package/packages/cli/vendor/src/showcase/premium/alert-dialog/showcase.tsx +28 -3
  307. package/packages/cli/vendor/src/showcase/premium/async-multi-select/mock.ts +6 -5
  308. package/packages/cli/vendor/src/showcase/premium/async-multi-select/showcase.tsx +5 -4
  309. package/packages/cli/vendor/src/showcase/premium/async-select/mock.ts +1 -1
  310. package/packages/cli/vendor/src/showcase/premium/async-select/showcase.tsx +36 -0
  311. package/packages/cli/vendor/src/showcase/premium/button/showcase.tsx +26 -5
  312. package/packages/cli/vendor/src/showcase/premium/button-group/showcase.tsx +20 -3
  313. package/packages/cli/vendor/src/showcase/premium/calendar/showcase.tsx +5 -0
  314. package/packages/cli/vendor/src/showcase/premium/carousel/showcase.tsx +33 -5
  315. package/packages/cli/vendor/src/showcase/premium/checkbox/showcase.tsx +46 -3
  316. package/packages/cli/vendor/src/showcase/premium/clearable-input/mock.ts +5 -3
  317. package/packages/cli/vendor/src/showcase/premium/clearable-input/showcase.tsx +5 -2
  318. package/packages/cli/vendor/src/showcase/premium/collapse/showcase.tsx +4 -0
  319. package/packages/cli/vendor/src/showcase/premium/combobox/showcase.tsx +8 -0
  320. package/packages/cli/vendor/src/showcase/premium/data-table/showcase.tsx +77 -27
  321. package/packages/cli/vendor/src/showcase/premium/data-table-parts/showcase.tsx +14 -14
  322. package/packages/cli/vendor/src/showcase/premium/date-input/mock.ts +1 -1
  323. package/packages/cli/vendor/src/showcase/premium/date-range-picker/showcase.tsx +7 -0
  324. package/packages/cli/vendor/src/showcase/premium/dropdown-menu/showcase.tsx +46 -3
  325. package/packages/cli/vendor/src/showcase/premium/form-wrapper/mock.ts +70 -44
  326. package/packages/cli/vendor/src/showcase/premium/form-wrapper/showcase.tsx +129 -12
  327. package/packages/cli/vendor/src/showcase/premium/index.ts +7 -24
  328. package/packages/cli/vendor/src/showcase/premium/input/mock.ts +2 -2
  329. package/packages/cli/vendor/src/showcase/premium/masked-input/mock.ts +1 -1
  330. package/packages/cli/vendor/src/showcase/premium/money-input/mock.ts +1 -1
  331. package/packages/cli/vendor/src/showcase/premium/number-input/mock.ts +1 -1
  332. package/packages/cli/vendor/src/showcase/premium/phone-input/mock.ts +1 -1
  333. package/packages/cli/vendor/src/showcase/premium/quantity-input/mock.ts +1 -1
  334. package/packages/cli/vendor/src/showcase/premium/select/mock.ts +1 -1
  335. package/packages/cli/vendor/src/showcase/premium/select/showcase.tsx +13 -21
  336. package/packages/cli/vendor/src/showcase/premium/simple-select/mock.ts +1 -1
  337. package/packages/cli/vendor/src/showcase/premium/simple-select/showcase.tsx +2 -1
  338. package/packages/cli/vendor/src/showcase/preview-catalog.tsx +7 -7
  339. package/packages/cli/vendor/src/showcase/registry-quality.ts +4 -28
  340. package/packages/cli/vendor/src/showcase/registry-specific.tsx +10 -186
  341. package/packages/cli/vendor/src/showcase/render-registry-preview.tsx +23 -57
  342. package/packages/cli/vendor/src/showcase/site-data.tsx +2443 -2761
  343. package/packages/cli/vendor/src/showcase/supplemental.tsx +2 -42
  344. package/packages/cli/vendor/src/showcase/tembro-registry.json +11 -58
  345. package/registry.json +11 -61
  346. package/dist/components/display/entity-card.cjs +0 -1
  347. package/dist/components/display/entity-card.d.ts +0 -18
  348. package/dist/components/display/entity-card.js +0 -61
  349. package/dist/components/display/entity-header.cjs +0 -1
  350. package/dist/components/display/entity-header.d.ts +0 -13
  351. package/dist/components/display/entity-header.js +0 -52
  352. package/dist/components/display/file-card.cjs +0 -1
  353. package/dist/components/display/file-card.d.ts +0 -14
  354. package/dist/components/display/file-card.js +0 -59
  355. package/dist/components/feedback/empty-search-state.cjs +0 -1
  356. package/dist/components/feedback/empty-search-state.d.ts +0 -11
  357. package/dist/components/feedback/empty-search-state.js +0 -45
  358. package/dist/components/feedback/empty-state.cjs +0 -1
  359. package/dist/components/feedback/empty-state.d.ts +0 -11
  360. package/dist/components/feedback/empty-state.js +0 -38
  361. package/dist/components/filters/filter-chips.cjs +0 -1
  362. package/dist/components/filters/filter-chips.d.ts +0 -18
  363. package/dist/components/filters/filter-chips.js +0 -61
  364. package/dist/components/patterns/form-builder-presets.cjs +0 -1
  365. package/dist/components/patterns/form-builder-presets.d.ts +0 -1
  366. package/dist/components/patterns/form-builder-presets.js +0 -2
  367. package/dist/components/patterns/form-builder.cjs +0 -1
  368. package/dist/components/patterns/form-builder.d.ts +0 -109
  369. package/dist/components/patterns/form-builder.js +0 -263
  370. package/dist/showcase/premium/empty-state/index.cjs +0 -1
  371. package/dist/showcase/premium/empty-state/index.d.ts +0 -2
  372. package/dist/showcase/premium/empty-state/index.js +0 -3
  373. package/dist/showcase/premium/empty-state/mock.cjs +0 -14
  374. package/dist/showcase/premium/empty-state/mock.d.ts +0 -2
  375. package/dist/showcase/premium/empty-state/mock.js +0 -31
  376. package/dist/showcase/premium/empty-state/showcase.cjs +0 -1
  377. package/dist/showcase/premium/empty-state/showcase.d.ts +0 -3
  378. package/dist/showcase/premium/empty-state/showcase.js +0 -99
  379. package/dist/showcase/premium/form-builder/index.cjs +0 -1
  380. package/dist/showcase/premium/form-builder/index.d.ts +0 -2
  381. package/dist/showcase/premium/form-builder/index.js +0 -3
  382. package/dist/showcase/premium/form-builder/mock.cjs +0 -57
  383. package/dist/showcase/premium/form-builder/mock.d.ts +0 -2
  384. package/dist/showcase/premium/form-builder/mock.js +0 -40
  385. package/dist/showcase/premium/form-builder/showcase.cjs +0 -1
  386. package/dist/showcase/premium/form-builder/showcase.d.ts +0 -3
  387. package/dist/showcase/premium/form-builder/showcase.js +0 -69
  388. package/packages/cli/vendor/src/components/display/entity-card.tsx +0 -80
  389. package/packages/cli/vendor/src/components/display/entity-header.tsx +0 -80
  390. package/packages/cli/vendor/src/components/display/file-card.tsx +0 -61
  391. package/packages/cli/vendor/src/components/feedback/empty-search-state.tsx +0 -65
  392. package/packages/cli/vendor/src/components/feedback/empty-state.tsx +0 -56
  393. package/packages/cli/vendor/src/components/filters/filter-chips.tsx +0 -89
  394. package/packages/cli/vendor/src/components/patterns/form-builder-presets.ts +0 -13
  395. package/packages/cli/vendor/src/components/patterns/form-builder.tsx +0 -443
  396. package/packages/cli/vendor/src/showcase/premium/empty-state/index.ts +0 -2
  397. package/packages/cli/vendor/src/showcase/premium/empty-state/mock.ts +0 -30
  398. package/packages/cli/vendor/src/showcase/premium/empty-state/showcase.tsx +0 -65
  399. package/packages/cli/vendor/src/showcase/premium/form-builder/index.ts +0 -2
  400. package/packages/cli/vendor/src/showcase/premium/form-builder/mock.ts +0 -79
  401. package/packages/cli/vendor/src/showcase/premium/form-builder/showcase.tsx +0 -55
@@ -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/card/index.cjs"),r=require("../ui/badge/index.cjs");let i=require("react");i=e.__toESM(i,1);let a=require("react/jsx-runtime");var o={default:`text-foreground`,success:`text-emerald-600 dark:text-emerald-400`,warning:`text-amber-600 dark:text-amber-400`,danger:`text-destructive`,info:`text-blue-600 dark:text-blue-400`,muted:`text-muted-foreground`};function s(){return(0,a.jsxs)(`div`,{className:`space-y-3`,children:[(0,a.jsx)(`div`,{className:`h-4 w-28 animate-pulse rounded-md bg-muted`}),(0,a.jsx)(`div`,{className:`h-8 w-36 animate-pulse rounded-md bg-muted`}),(0,a.jsx)(`div`,{className:`h-4 w-44 animate-pulse rounded-md bg-muted`})]})}function c({className:e,title:i,value:c,description:l,icon:u,action:d,trend:f,footer:p,helperText:m,loading:h=!1,valuePrefix:g,valueSuffix:_,contentClassName:v,iconClassName:y,valueClassName:b,...x}){return(0,a.jsx)(n.Card,{"data-slot":`stat-card`,className:t.cn(`min-w-0`,e),...x,children:h?(0,a.jsx)(n.CardContent,{children:(0,a.jsx)(s,{})}):(0,a.jsxs)(a.Fragment,{children:[(0,a.jsx)(n.CardHeader,{children:(0,a.jsxs)(`div`,{className:`flex min-w-0 items-start justify-between gap-3`,children:[(0,a.jsxs)(`div`,{className:`min-w-0 space-y-1`,children:[i&&(0,a.jsx)(n.CardDescription,{className:`truncate`,children:i}),c==null?null:(0,a.jsxs)(n.CardTitle,{className:t.cn(`flex items-baseline gap-1 truncate text-2xl`,b),children:[g?(0,a.jsx)(`span`,{className:`text-base text-muted-foreground`,children:g}):null,(0,a.jsx)(`span`,{className:`truncate`,children:c}),_?(0,a.jsx)(`span`,{className:`text-base text-muted-foreground`,children:_}):null]})]}),(u||d)&&(0,a.jsx)(n.CardAction,{children:d??(0,a.jsx)(`div`,{className:t.cn(`flex size-9 items-center justify-center rounded-lg bg-muted text-muted-foreground`,y),children:u})})]})}),(l||f||m||p)&&(0,a.jsxs)(n.CardContent,{className:t.cn(`space-y-2`,v),children:[(l||f)&&(0,a.jsxs)(`div`,{className:`flex flex-wrap items-center gap-2 text-sm`,children:[f&&(0,a.jsx)(r.Badge,{variant:`ghost`,tone:f.tone===`muted`||f.tone==="default"?`neutral`:f.tone,size:`sm`,className:t.cn(`font-medium`,o[f.tone??`default`]),children:f.value}),f?.label?(0,a.jsx)(`span`,{className:`text-muted-foreground`,children:f.label}):null,l&&(0,a.jsx)(`span`,{className:`text-muted-foreground`,children:l})]}),m?(0,a.jsx)(`p`,{className:`text-xs leading-5 text-muted-foreground`,children:m}):null,p]})]})})}exports.StatCard=c;
1
+ Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=require("../../_virtual/_rolldown/runtime.cjs"),t=require("../../lib/utils.cjs"),n=require("../ui/card/index.cjs"),r=require("../ui/badge/index.cjs");let i=require("react");i=e.__toESM(i,1);let a=require("react/jsx-runtime");var o={default:`text-foreground`,success:`text-emerald-600 dark:text-emerald-400`,warning:`text-amber-600 dark:text-amber-400`,danger:`text-destructive`,info:`text-blue-600 dark:text-blue-400`,muted:`text-muted-foreground`};function s(){return(0,a.jsxs)(`div`,{className:`space-y-3`,children:[(0,a.jsx)(`div`,{className:`h-4 w-28 animate-pulse rounded-md bg-muted`}),(0,a.jsx)(`div`,{className:`h-8 w-36 animate-pulse rounded-md bg-muted`}),(0,a.jsx)(`div`,{className:`h-4 w-44 animate-pulse rounded-md bg-muted`})]})}function c({className:e,title:i,value:c,description:l,icon:u,action:d,trend:f,footer:p,helperText:m,comparisonItems:h,comparisonColumns:g=2,loading:_=!1,valuePrefix:v,valueSuffix:y,contentClassName:b,iconClassName:x,valueClassName:S,...C}){return(0,a.jsx)(n.Card,{"data-slot":`stat-card`,className:t.cn(`min-w-0`,e),...C,children:_?(0,a.jsx)(n.CardContent,{children:(0,a.jsx)(s,{})}):(0,a.jsxs)(a.Fragment,{children:[(0,a.jsx)(n.CardHeader,{children:(0,a.jsxs)(`div`,{className:`flex min-w-0 items-start justify-between gap-3`,children:[(0,a.jsxs)(`div`,{className:`min-w-0 space-y-1`,children:[i&&(0,a.jsx)(n.CardDescription,{className:`truncate`,children:i}),c==null?null:(0,a.jsxs)(n.CardTitle,{className:t.cn(`flex items-baseline gap-1 truncate text-2xl`,S),children:[v?(0,a.jsx)(`span`,{className:`text-base text-muted-foreground`,children:v}):null,(0,a.jsx)(`span`,{className:`truncate`,children:c}),y?(0,a.jsx)(`span`,{className:`text-base text-muted-foreground`,children:y}):null]})]}),(u||d)&&(0,a.jsx)(n.CardAction,{children:d??(0,a.jsx)(`div`,{className:t.cn(`flex size-9 items-center justify-center rounded-lg bg-muted text-muted-foreground`,x),children:u})})]})}),(l||f||m||p||h?.length)&&(0,a.jsxs)(n.CardContent,{className:t.cn(`space-y-2`,b),children:[(l||f)&&(0,a.jsxs)(`div`,{className:`flex flex-wrap items-center gap-2 text-sm`,children:[f&&(0,a.jsx)(r.Badge,{variant:`ghost`,tone:f.tone===`muted`||f.tone==="default"?`neutral`:f.tone,size:`sm`,className:t.cn(`font-medium`,o[f.tone??`default`]),children:f.value}),f?.label?(0,a.jsx)(`span`,{className:`text-muted-foreground`,children:f.label}):null,l&&(0,a.jsx)(`span`,{className:`text-muted-foreground`,children:l})]}),h?.length?(0,a.jsx)(`div`,{"data-slot":`stat-card-comparison`,className:t.cn(`grid gap-3 pt-1`,g===2&&`grid-cols-2`,g===3&&`grid-cols-3`,g===4&&`grid-cols-2 sm:grid-cols-4`),children:h.map((e,t)=>(0,a.jsxs)(`div`,{className:`min-w-0 space-y-1`,children:[(0,a.jsx)(`p`,{className:`truncate text-[11px] font-medium uppercase tracking-[0.16em] text-muted-foreground`,children:e.label}),(0,a.jsxs)(`div`,{className:`flex flex-wrap items-center gap-2`,children:[(0,a.jsx)(`span`,{className:`text-base font-semibold text-foreground`,children:e.value}),e.change?(0,a.jsx)(r.Badge,{variant:`ghost`,tone:e.trend===`neutral`||e.trend==="default"?`neutral`:e.trend,size:`sm`,children:e.change}):null]})]},t))}):null,m?(0,a.jsx)(`p`,{className:`text-xs leading-5 text-muted-foreground`,children:m}):null,p]})]})})}exports.StatCard=c;
@@ -14,6 +14,13 @@ export type StatCardProps = React.ComponentProps<typeof Card> & {
14
14
  trend?: StatCardTrend;
15
15
  footer?: React.ReactNode;
16
16
  helperText?: React.ReactNode;
17
+ comparisonItems?: Array<{
18
+ label: React.ReactNode;
19
+ value: React.ReactNode;
20
+ change?: React.ReactNode;
21
+ trend?: StatCardTrend["tone"] | "neutral";
22
+ }>;
23
+ comparisonColumns?: 2 | 3 | 4;
17
24
  loading?: boolean;
18
25
  valuePrefix?: React.ReactNode;
19
26
  valueSuffix?: React.ReactNode;
@@ -21,5 +28,5 @@ export type StatCardProps = React.ComponentProps<typeof Card> & {
21
28
  iconClassName?: string;
22
29
  valueClassName?: string;
23
30
  };
24
- declare function StatCard({ className, title, value, description, icon, action, trend, footer, helperText, loading, valuePrefix, valueSuffix, contentClassName, iconClassName, valueClassName, ...props }: StatCardProps): React.JSX.Element;
31
+ declare function StatCard({ className, title, value, description, icon, action, trend, footer, helperText, comparisonItems, comparisonColumns, loading, valuePrefix, valueSuffix, contentClassName, iconClassName, valueClassName, ...props }: StatCardProps): React.JSX.Element;
25
32
  export { StatCard };
@@ -22,12 +22,12 @@ function f() {
22
22
  ]
23
23
  });
24
24
  }
25
- function p({ className: p, title: m, value: h, description: g, icon: _, action: v, trend: y, footer: b, helperText: x, loading: S = !1, valuePrefix: C, valueSuffix: w, contentClassName: T, iconClassName: E, valueClassName: D, ...O }) {
25
+ function p({ className: p, title: m, value: h, description: g, icon: _, action: v, trend: y, footer: b, helperText: x, comparisonItems: S, comparisonColumns: C = 2, loading: w = !1, valuePrefix: T, valueSuffix: E, contentClassName: D, iconClassName: O, valueClassName: k, ...A }) {
26
26
  return /* @__PURE__ */ l(t, {
27
27
  "data-slot": "stat-card",
28
28
  className: e("min-w-0", p),
29
- ...O,
30
- children: S ? /* @__PURE__ */ l(r, { children: /* @__PURE__ */ l(f, {}) }) : /* @__PURE__ */ u(c, { children: [/* @__PURE__ */ l(a, { children: /* @__PURE__ */ u("div", {
29
+ ...A,
30
+ children: w ? /* @__PURE__ */ l(r, { children: /* @__PURE__ */ l(f, {}) }) : /* @__PURE__ */ u(c, { children: [/* @__PURE__ */ l(a, { children: /* @__PURE__ */ u("div", {
31
31
  className: "flex min-w-0 items-start justify-between gap-3",
32
32
  children: [/* @__PURE__ */ u("div", {
33
33
  className: "min-w-0 space-y-1",
@@ -35,28 +35,28 @@ function p({ className: p, title: m, value: h, description: g, icon: _, action:
35
35
  className: "truncate",
36
36
  children: m
37
37
  }), h == null ? null : /* @__PURE__ */ u(o, {
38
- className: e("flex items-baseline gap-1 truncate text-2xl", D),
38
+ className: e("flex items-baseline gap-1 truncate text-2xl", k),
39
39
  children: [
40
- C ? /* @__PURE__ */ l("span", {
40
+ T ? /* @__PURE__ */ l("span", {
41
41
  className: "text-base text-muted-foreground",
42
- children: C
42
+ children: T
43
43
  }) : null,
44
44
  /* @__PURE__ */ l("span", {
45
45
  className: "truncate",
46
46
  children: h
47
47
  }),
48
- w ? /* @__PURE__ */ l("span", {
48
+ E ? /* @__PURE__ */ l("span", {
49
49
  className: "text-base text-muted-foreground",
50
- children: w
50
+ children: E
51
51
  }) : null
52
52
  ]
53
53
  })]
54
54
  }), (_ || v) && /* @__PURE__ */ l(n, { children: v ?? /* @__PURE__ */ l("div", {
55
- className: e("flex size-9 items-center justify-center rounded-lg bg-muted text-muted-foreground", E),
55
+ className: e("flex size-9 items-center justify-center rounded-lg bg-muted text-muted-foreground", O),
56
56
  children: _
57
57
  }) })]
58
- }) }), (g || y || x || b) && /* @__PURE__ */ u(r, {
59
- className: e("space-y-2", T),
58
+ }) }), (g || y || x || b || S?.length) && /* @__PURE__ */ u(r, {
59
+ className: e("space-y-2", D),
60
60
  children: [
61
61
  (g || y) && /* @__PURE__ */ u("div", {
62
62
  className: "flex flex-wrap items-center gap-2 text-sm",
@@ -78,6 +78,28 @@ function p({ className: p, title: m, value: h, description: g, icon: _, action:
78
78
  })
79
79
  ]
80
80
  }),
81
+ S?.length ? /* @__PURE__ */ l("div", {
82
+ "data-slot": "stat-card-comparison",
83
+ className: e("grid gap-3 pt-1", C === 2 && "grid-cols-2", C === 3 && "grid-cols-3", C === 4 && "grid-cols-2 sm:grid-cols-4"),
84
+ children: S.map((e, t) => /* @__PURE__ */ u("div", {
85
+ className: "min-w-0 space-y-1",
86
+ children: [/* @__PURE__ */ l("p", {
87
+ className: "truncate text-[11px] font-medium uppercase tracking-[0.16em] text-muted-foreground",
88
+ children: e.label
89
+ }), /* @__PURE__ */ u("div", {
90
+ className: "flex flex-wrap items-center gap-2",
91
+ children: [/* @__PURE__ */ l("span", {
92
+ className: "text-base font-semibold text-foreground",
93
+ children: e.value
94
+ }), e.change ? /* @__PURE__ */ l(s, {
95
+ variant: "ghost",
96
+ tone: e.trend === "neutral" || e.trend === "default" ? "neutral" : e.trend,
97
+ size: "sm",
98
+ children: e.change
99
+ }) : null]
100
+ })]
101
+ }, t))
102
+ }) : null,
81
103
  x ? /* @__PURE__ */ l("p", {
82
104
  className: "text-xs leading-5 text-muted-foreground",
83
105
  children: x
@@ -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("react/jsx-runtime");var i={default:`border-border bg-muted`,success:`border-emerald-200 bg-emerald-50 text-emerald-700 dark:border-emerald-900 dark:bg-emerald-950 dark:text-emerald-300`,warning:`border-amber-200 bg-amber-50 text-amber-700 dark:border-amber-900 dark:bg-amber-950 dark:text-amber-300`,danger:`border-red-200 bg-red-50 text-red-700 dark:border-red-900 dark:bg-red-950 dark:text-red-300`};function a({events:e,days:n,className:a,...o}){let s=n??Array.from(new Set(e.map(e=>e.date)));return(0,r.jsx)(`div`,{"data-slot":`calendar-scheduler`,className:t.cn(`grid gap-3`,a),...o,children:s.map(n=>(0,r.jsxs)(`section`,{className:`rounded-xl border bg-card p-3`,children:[(0,r.jsx)(`div`,{className:`mb-2 text-sm font-semibold`,children:n}),(0,r.jsx)(`div`,{className:`grid gap-2`,children:e.filter(e=>e.date===n).map(e=>(0,r.jsxs)(`div`,{className:t.cn(`rounded-md border px-3 py-2 text-sm`,i[e.tone??`default`]),children:[(0,r.jsx)(`div`,{className:`font-medium`,children:e.title}),e.time&&(0,r.jsx)(`div`,{className:`text-xs opacity-70`,children:e.time})]},e.id))})]},n))})}exports.CalendarScheduler=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("react/jsx-runtime");var i={default:`border-border bg-muted`,success:`border-emerald-200 bg-emerald-50 text-emerald-700 dark:border-emerald-900 dark:bg-emerald-950 dark:text-emerald-300`,warning:`border-amber-200 bg-amber-50 text-amber-700 dark:border-amber-900 dark:bg-amber-950 dark:text-amber-300`,danger:`border-red-200 bg-red-50 text-red-700 dark:border-red-900 dark:bg-red-950 dark:text-red-300`};function a({events:e,days:n,empty:a=`No events scheduled.`,className:o,...s}){let c=n??Array.from(new Set(e.map(e=>e.date)));return(0,r.jsx)(`div`,{"data-slot":`calendar-scheduler`,className:t.cn(`grid gap-3`,o),...s,children:c.map(n=>(0,r.jsxs)(`section`,{className:`rounded-[var(--aui-card-radius,var(--radius-xl))] border border-[color:var(--aui-card-border,var(--border))] bg-card p-4 shadow-[var(--aui-card-shadow,var(--aui-control-shadow,none))]`,children:[(0,r.jsxs)(`div`,{className:`mb-3 flex items-center justify-between gap-3`,children:[(0,r.jsx)(`div`,{className:`text-sm font-semibold text-foreground`,children:n}),(0,r.jsxs)(`div`,{className:`text-xs text-muted-foreground`,children:[e.filter(e=>e.date===n).length,` items`]})]}),(0,r.jsx)(`div`,{className:`grid gap-2`,children:e.filter(e=>e.date===n).length===0?(0,r.jsx)(`div`,{className:`rounded-[var(--radius-md)] border border-dashed border-[color:var(--aui-card-border,var(--border))] px-3 py-4 text-sm text-muted-foreground`,children:a}):e.filter(e=>e.date===n).map(e=>(0,r.jsxs)(`div`,{className:t.cn(`rounded-[var(--radius-md)] border px-3 py-2.5 text-sm shadow-sm`,i[e.tone??`default`]),children:[(0,r.jsx)(`div`,{className:`font-medium`,children:e.title}),e.time&&(0,r.jsx)(`div`,{className:`mt-1 text-xs opacity-70`,children:e.time})]},e.id))})]},n))})}exports.CalendarScheduler=a;
@@ -9,6 +9,7 @@ export type CalendarSchedulerEvent = {
9
9
  export type CalendarSchedulerProps = React.ComponentProps<"div"> & {
10
10
  events: CalendarSchedulerEvent[];
11
11
  days?: string[];
12
+ empty?: React.ReactNode;
12
13
  };
13
- declare function CalendarScheduler({ events, days, className, ...props }: CalendarSchedulerProps): React.JSX.Element;
14
+ declare function CalendarScheduler({ events, days, empty, className, ...props }: CalendarSchedulerProps): React.JSX.Element;
14
15
  export { CalendarScheduler };
@@ -8,26 +8,35 @@ var r = {
8
8
  warning: "border-amber-200 bg-amber-50 text-amber-700 dark:border-amber-900 dark:bg-amber-950 dark:text-amber-300",
9
9
  danger: "border-red-200 bg-red-50 text-red-700 dark:border-red-900 dark:bg-red-950 dark:text-red-300"
10
10
  };
11
- function i({ events: i, days: a, className: o, ...s }) {
12
- let c = a ?? Array.from(new Set(i.map((e) => e.date)));
11
+ function i({ events: i, days: a, empty: o = "No events scheduled.", className: s, ...c }) {
12
+ let l = a ?? Array.from(new Set(i.map((e) => e.date)));
13
13
  return /* @__PURE__ */ t("div", {
14
14
  "data-slot": "calendar-scheduler",
15
- className: e("grid gap-3", o),
16
- ...s,
17
- children: c.map((a) => /* @__PURE__ */ n("section", {
18
- className: "rounded-xl border bg-card p-3",
19
- children: [/* @__PURE__ */ t("div", {
20
- className: "mb-2 text-sm font-semibold",
21
- children: a
15
+ className: e("grid gap-3", s),
16
+ ...c,
17
+ children: l.map((a) => /* @__PURE__ */ n("section", {
18
+ className: "rounded-[var(--aui-card-radius,var(--radius-xl))] border border-[color:var(--aui-card-border,var(--border))] bg-card p-4 shadow-[var(--aui-card-shadow,var(--aui-control-shadow,none))]",
19
+ children: [/* @__PURE__ */ n("div", {
20
+ className: "mb-3 flex items-center justify-between gap-3",
21
+ children: [/* @__PURE__ */ t("div", {
22
+ className: "text-sm font-semibold text-foreground",
23
+ children: a
24
+ }), /* @__PURE__ */ n("div", {
25
+ className: "text-xs text-muted-foreground",
26
+ children: [i.filter((e) => e.date === a).length, " items"]
27
+ })]
22
28
  }), /* @__PURE__ */ t("div", {
23
29
  className: "grid gap-2",
24
- children: i.filter((e) => e.date === a).map((i) => /* @__PURE__ */ n("div", {
25
- className: e("rounded-md border px-3 py-2 text-sm", r[i.tone ?? "default"]),
30
+ children: i.filter((e) => e.date === a).length === 0 ? /* @__PURE__ */ t("div", {
31
+ className: "rounded-[var(--radius-md)] border border-dashed border-[color:var(--aui-card-border,var(--border))] px-3 py-4 text-sm text-muted-foreground",
32
+ children: o
33
+ }) : i.filter((e) => e.date === a).map((i) => /* @__PURE__ */ n("div", {
34
+ className: e("rounded-[var(--radius-md)] border px-3 py-2.5 text-sm shadow-sm", r[i.tone ?? "default"]),
26
35
  children: [/* @__PURE__ */ t("div", {
27
36
  className: "font-medium",
28
37
  children: i.title
29
38
  }), i.time && /* @__PURE__ */ t("div", {
30
- className: "text-xs opacity-70",
39
+ className: "mt-1 text-xs opacity-70",
31
40
  children: i.time
32
41
  })]
33
42
  }, i.id))
@@ -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/dialog/index.cjs");let r=require("react");r=e.__toESM(r,1);let i=require("lucide-react"),a=require("react/jsx-runtime");function o({title:e=`Are you sure?`,description:r,icon:o=(0,a.jsx)(i.AlertTriangleIcon,{}),cancelLabel:s=`Cancel`,actionLabel:c=`Continue`,actionTone:l=`destructive`,loading:u=!1,onAction:d,children:f,...p}){return(0,a.jsxs)(n.Dialog,{...p,children:[f,(0,a.jsxs)(n.DialogContent,{children:[(0,a.jsxs)(n.DialogHeader,{children:[(0,a.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:o}),(0,a.jsx)(n.DialogTitle,{children:e}),r?(0,a.jsx)(n.DialogDescription,{children:r}):null]}),(0,a.jsxs)(n.DialogFooter,{children:[(0,a.jsx)(n.DialogClose,{render:()=>(0,a.jsx)(t.Button,{type:`button`,variant:`outline`,disabled:u,children:s})}),(0,a.jsx)(t.Button,{type:`button`,variant:l===`destructive`?`destructive`:`default`,loading:u,onClick:()=>void d?.(),children:c})]})]})]})}exports.AlertDialog=o;
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,4 +1,5 @@
1
1
  import * as React from "react";
2
+ import { Button } from "@/components/ui/button";
2
3
  import { Dialog } from "@/components/ui/dialog";
3
4
  export type AlertDialogProps = Omit<React.ComponentProps<typeof Dialog>, "children"> & {
4
5
  title?: React.ReactNode;
@@ -7,9 +8,22 @@ export type AlertDialogProps = Omit<React.ComponentProps<typeof Dialog>, "childr
7
8
  cancelLabel?: React.ReactNode;
8
9
  actionLabel?: React.ReactNode;
9
10
  actionTone?: "default" | "destructive";
11
+ cancelVariant?: React.ComponentProps<typeof Button>["variant"];
10
12
  loading?: boolean;
13
+ closeOnAction?: boolean;
14
+ confirmValue?: string;
15
+ confirmLabel?: React.ReactNode;
16
+ confirmPlaceholder?: string;
17
+ confirmDescription?: React.ReactNode;
18
+ confirmCaseSensitive?: boolean;
19
+ severityNote?: React.ReactNode;
20
+ errorMessage?: React.ReactNode;
21
+ onActionError?: (error: unknown) => void;
11
22
  onAction?: () => void | Promise<void>;
12
23
  children?: React.ReactNode;
24
+ preventCloseWhileLoading?: boolean;
25
+ actionButtonProps?: Omit<React.ComponentProps<typeof Button>, "type" | "variant" | "loading" | "disabled" | "onClick" | "children">;
26
+ cancelButtonProps?: Omit<React.ComponentProps<typeof Button>, "type" | "variant" | "disabled" | "children">;
13
27
  };
14
- declare function AlertDialog({ title, description, icon, cancelLabel, actionLabel, actionTone, loading, onAction, children, ...props }: AlertDialogProps): React.JSX.Element;
28
+ declare function AlertDialog({ title, description, icon, cancelLabel, actionLabel, actionTone, cancelVariant, loading, closeOnAction, confirmValue, confirmLabel, confirmPlaceholder, confirmDescription, confirmCaseSensitive, severityNote, errorMessage, onActionError, onAction, children, preventCloseWhileLoading, actionButtonProps, cancelButtonProps, onOpenChange, ...props }: AlertDialogProps): React.JSX.Element;
15
29
  export { AlertDialog };
@@ -1,32 +1,107 @@
1
1
  import { Button as e } from "../ui/button/index.js";
2
- import { Dialog as t, DialogClose as n, DialogContent as r, DialogDescription as i, DialogFooter as a, DialogHeader as o, DialogTitle as s } from "../ui/dialog/index.js";
3
- import "react";
4
- import { AlertTriangleIcon as c } from "lucide-react";
5
- import { jsx as l, jsxs as u } from "react/jsx-runtime";
2
+ import { Input as t } from "../ui/input/index.js";
3
+ import { Dialog as n, DialogClose as r, DialogContent as i, DialogDescription as a, DialogFooter as o, DialogHeader as s, DialogTitle as c } from "../ui/dialog/index.js";
4
+ import * as l from "react";
5
+ import { AlertTriangleIcon as u } from "lucide-react";
6
+ import { Fragment as d, jsx as f, jsxs as p } from "react/jsx-runtime";
6
7
  //#region src/components/overlay/alert-dialog.tsx
7
- function d({ title: d = "Are you sure?", description: f, icon: p = /* @__PURE__ */ l(c, {}), cancelLabel: m = "Cancel", actionLabel: h = "Continue", actionTone: g = "destructive", loading: _ = !1, onAction: v, children: y, ...b }) {
8
- return /* @__PURE__ */ u(t, {
9
- ...b,
10
- children: [y, /* @__PURE__ */ u(r, { children: [/* @__PURE__ */ u(o, { children: [
11
- /* @__PURE__ */ l("div", {
12
- 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",
13
- children: p
14
- }),
15
- /* @__PURE__ */ l(s, { children: d }),
16
- f ? /* @__PURE__ */ l(i, { children: f }) : null
17
- ] }), /* @__PURE__ */ u(a, { children: [/* @__PURE__ */ l(n, { render: () => /* @__PURE__ */ l(e, {
18
- type: "button",
19
- variant: "outline",
20
- disabled: _,
21
- children: m
22
- }) }), /* @__PURE__ */ l(e, {
23
- type: "button",
24
- variant: g === "destructive" ? "destructive" : "default",
25
- loading: _,
26
- onClick: () => void v?.(),
27
- children: h
28
- })] })] })]
8
+ function m({ title: m = "Are you sure?", description: h, icon: g = /* @__PURE__ */ f(u, {}), cancelLabel: _ = "Cancel", actionLabel: v = "Continue", actionTone: y = "destructive", cancelVariant: b = "outline", loading: x = !1, closeOnAction: S = !0, confirmValue: C, confirmLabel: w = "Type to confirm", confirmPlaceholder: T, confirmDescription: E, confirmCaseSensitive: D = !0, severityNote: O, errorMessage: k = "Action could not be completed. Try again.", onActionError: A, onAction: j, children: M, preventCloseWhileLoading: N = !0, actionButtonProps: P, cancelButtonProps: F, onOpenChange: I, ...L }) {
9
+ let [R, z] = l.useState(!1), [B, V] = l.useState(""), [H, U] = l.useState(null), W = x || R, G = !!C?.trim(), K = D ? C?.trim() : C?.trim().toLowerCase(), q = D ? B.trim() : B.trim().toLowerCase(), J = !G || q === K;
10
+ l.useEffect(() => {
11
+ L.open || (V(""), U(null));
12
+ }, [L.open]);
13
+ let Y = l.useCallback((e, t) => {
14
+ !e && N && W || I?.(e, t);
15
+ }, [
16
+ I,
17
+ N,
18
+ W
19
+ ]), X = () => {
20
+ Y(!1, void 0);
21
+ }, Z = async () => {
22
+ if (!(!J || W)) {
23
+ if (U(null), !j) {
24
+ S && X();
25
+ return;
26
+ }
27
+ try {
28
+ z(!0), await j(), S && X();
29
+ } catch (e) {
30
+ U(k), A?.(e);
31
+ } finally {
32
+ z(!1);
33
+ }
34
+ }
35
+ };
36
+ return /* @__PURE__ */ p(n, {
37
+ onOpenChange: Y,
38
+ ...L,
39
+ children: [M, /* @__PURE__ */ p(i, { children: [
40
+ /* @__PURE__ */ p(s, { children: [
41
+ /* @__PURE__ */ f("div", {
42
+ 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",
43
+ children: g
44
+ }),
45
+ /* @__PURE__ */ f(c, { children: m }),
46
+ h ? /* @__PURE__ */ f(a, { children: h }) : null
47
+ ] }),
48
+ G ? /* @__PURE__ */ p("div", {
49
+ className: "grid gap-2.5",
50
+ children: [/* @__PURE__ */ p("div", {
51
+ className: "space-y-1",
52
+ children: [/* @__PURE__ */ f("p", {
53
+ className: "text-sm font-medium text-foreground",
54
+ children: w
55
+ }), /* @__PURE__ */ f("p", {
56
+ className: "text-xs leading-5 text-muted-foreground",
57
+ children: E ?? /* @__PURE__ */ p(d, { children: [
58
+ "Type ",
59
+ /* @__PURE__ */ f("span", {
60
+ className: "font-semibold text-foreground",
61
+ children: C
62
+ }),
63
+ " to continue."
64
+ ] })
65
+ })]
66
+ }), /* @__PURE__ */ f(t, {
67
+ value: B,
68
+ onValueChange: V,
69
+ placeholder: T ?? C,
70
+ autoComplete: "off",
71
+ autoCapitalize: "off",
72
+ spellCheck: !1,
73
+ "aria-invalid": H ? !0 : void 0,
74
+ "aria-describedby": H ? "alert-dialog-error" : void 0
75
+ })]
76
+ }) : null,
77
+ O ? /* @__PURE__ */ f("div", {
78
+ className: "rounded-2xl border border-border/70 bg-muted/35 px-3.5 py-3 text-sm leading-6 text-muted-foreground",
79
+ children: O
80
+ }) : null,
81
+ H ? /* @__PURE__ */ f("div", {
82
+ id: "alert-dialog-error",
83
+ role: "alert",
84
+ "aria-live": "polite",
85
+ className: "rounded-2xl border border-destructive/20 bg-destructive/8 px-3.5 py-3 text-sm leading-6 text-destructive",
86
+ children: H
87
+ }) : null,
88
+ /* @__PURE__ */ p(o, { children: [/* @__PURE__ */ f(r, { render: () => /* @__PURE__ */ f(e, {
89
+ type: "button",
90
+ variant: b,
91
+ disabled: W,
92
+ ...F,
93
+ children: _
94
+ }) }), /* @__PURE__ */ f(e, {
95
+ type: "button",
96
+ variant: y === "destructive" ? "destructive" : "default",
97
+ loading: W,
98
+ disabled: !J && !W,
99
+ onClick: () => void Z(),
100
+ ...P,
101
+ children: v
102
+ })] })
103
+ ] })]
29
104
  });
30
105
  }
31
106
  //#endregion
32
- export { d as AlertDialog };
107
+ export { m as AlertDialog };
@@ -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)] 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)] 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)]`,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)]`};function s({trigger:e,title:n,description:i,side:s=`right`,footer:c,contentClassName:l,showCloseButton:u=!0,children:d,...f}){return(0,a.jsxs)(r.Dialog,{...f,children:[e?(0,a.jsx)(r.DialogTrigger,{render:e}):null,(0,a.jsxs)(r.DialogContent,{showCloseButton:u,className:t.cn(`fixed p-0`,o[s],l),children:[(n||i)&&(0,a.jsxs)(r.DialogHeader,{className:`border-b border-border/70 p-6`,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:`min-h-0 flex-1 overflow-y-auto p-6`,children:d}),c?(0,a.jsx)(`div`,{"data-slot":`drawer-footer`,className:`border-t border-border/70 p-5`,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 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;
@@ -8,10 +8,13 @@ export type DrawerProps = Omit<React.ComponentProps<typeof Dialog>, "children">
8
8
  description?: React.ReactNode;
9
9
  side?: DrawerSide;
10
10
  footer?: React.ReactNode;
11
+ headerClassName?: string;
12
+ bodyClassName?: string;
13
+ footerClassName?: string;
11
14
  contentClassName?: string;
12
15
  showCloseButton?: boolean;
13
16
  children?: React.ReactNode;
14
17
  };
15
- declare function Drawer({ trigger, title, description, side, footer, contentClassName, showCloseButton, children, ...props }: DrawerProps): React.JSX.Element;
18
+ declare function Drawer({ trigger, title, description, side, footer, headerClassName, bodyClassName, footerClassName, contentClassName, showCloseButton, children, ...props }: DrawerProps): React.JSX.Element;
16
19
  declare function DrawerCloseButton({ children, ...props }: React.ComponentProps<typeof Button>): React.JSX.Element;
17
20
  export { Drawer, DrawerCloseButton };
@@ -5,30 +5,31 @@ 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)] 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)] sm:max-w-lg",
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)]",
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)]"
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",
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
+ 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
12
  };
13
- function f({ trigger: t, title: r, description: f, side: p = "right", footer: m, contentClassName: h, showCloseButton: g = !0, children: _, ...v }) {
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 }) {
14
14
  return /* @__PURE__ */ u(n, {
15
- ...v,
15
+ ...x,
16
16
  children: [t ? /* @__PURE__ */ l(c, { render: t }) : null, /* @__PURE__ */ u(i, {
17
- showCloseButton: g,
18
- className: e("fixed p-0", d[p], h),
17
+ size: "full",
18
+ showCloseButton: y,
19
+ className: e("fixed grid grid-rows-[auto_minmax(0,1fr)_auto] gap-0 p-0", d[p], v),
19
20
  children: [
20
21
  (r || f) && /* @__PURE__ */ u(o, {
21
- className: "border-b border-border/70 p-6",
22
+ className: e("border-b border-border/70 p-6", h),
22
23
  children: [r ? /* @__PURE__ */ l(s, { children: r }) : null, f ? /* @__PURE__ */ l(a, { children: f }) : null]
23
24
  }),
24
25
  /* @__PURE__ */ l("div", {
25
26
  "data-slot": "drawer-body",
26
- className: "min-h-0 flex-1 overflow-y-auto p-6",
27
- children: _
27
+ className: e("min-h-0 flex-1 overflow-y-auto p-6", g),
28
+ children: b
28
29
  }),
29
30
  m ? /* @__PURE__ */ l("div", {
30
31
  "data-slot": "drawer-footer",
31
- className: "border-t border-border/70 p-5",
32
+ className: e("border-t border-border/70 p-5", _),
32
33
  children: m
33
34
  }) : null
34
35
  ]
@@ -36,12 +37,14 @@ function f({ trigger: t, title: r, description: f, side: p = "right", footer: m,
36
37
  });
37
38
  }
38
39
  function p({ children: e = "Close", ...n }) {
39
- return /* @__PURE__ */ l(r, { render: () => /* @__PURE__ */ l(t, {
40
- type: "button",
41
- variant: "outline",
42
- ...n,
40
+ return /* @__PURE__ */ l(r, {
41
+ render: /* @__PURE__ */ l(t, {
42
+ type: "button",
43
+ variant: "outline",
44
+ ...n
45
+ }),
43
46
  children: e
44
- }) });
47
+ });
45
48
  }
46
49
  //#endregion
47
50
  export { f as Drawer, p as DrawerCloseButton };
@@ -1 +1 @@
1
- Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=require("./resource-detail-page.cjs"),t=require("./resource-page.cjs"),n=require("./form-builder.cjs");exports.FormBuilder=n.FormBuilder,exports.ResourceDetailPage=e.ResourceDetailPage,exports.ResourcePage=t.ResourcePage,exports.ResourcePageSection=t.ResourcePageSection,exports.asyncSelectField=n.asyncSelectField,exports.customField=n.customField,exports.dateField=n.dateField,exports.dateRangeField=n.dateRangeField,exports.formSection=n.formSection,exports.inputField=n.inputField,exports.numberField=n.numberField,exports.phoneField=n.phoneField,exports.renderFormBuilderField=n.renderFormBuilderField,exports.selectField=n.selectField,exports.switchField=n.switchField,exports.textareaField=n.textareaField;
1
+ Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=require("./resource-detail-page.cjs"),t=require("./resource-page.cjs");exports.ResourceDetailPage=e.ResourceDetailPage,exports.ResourcePage=t.ResourcePage,exports.ResourcePageSection=t.ResourcePageSection;
@@ -1,3 +1,2 @@
1
1
  export * from './resource-page';
2
2
  export * from './resource-detail-page';
3
- export * from './form-builder';
@@ -1,4 +1,3 @@
1
1
  import { ResourceDetailPage as e } from "./resource-detail-page.js";
2
2
  import { ResourcePage as t, ResourcePageSection as n } from "./resource-page.js";
3
- import { FormBuilder as r, asyncSelectField as i, customField as a, dateField as o, dateRangeField as s, formSection as c, inputField as l, numberField as u, phoneField as d, renderFormBuilderField as f, selectField as p, switchField as m, textareaField as h } from "./form-builder.js";
4
- export { r as FormBuilder, e as ResourceDetailPage, t as ResourcePage, n as ResourcePageSection, i as asyncSelectField, a as customField, o as dateField, s as dateRangeField, c as formSection, l as inputField, u as numberField, d as phoneField, f as renderFormBuilderField, p as selectField, m as switchField, h as textareaField };
3
+ export { e as ResourceDetailPage, t as ResourcePage, n as ResourcePageSection };
@@ -1 +1 @@
1
- Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=require("./resource-detail-page.cjs"),t=require("./resource-page.cjs"),n=require("./form-builder.cjs");exports.FormBuilder=n.FormBuilder,exports.ResourceDetailPage=e.ResourceDetailPage,exports.ResourcePage=t.ResourcePage,exports.ResourcePageSection=t.ResourcePageSection,exports.asyncSelectField=n.asyncSelectField,exports.customField=n.customField,exports.dateField=n.dateField,exports.dateRangeField=n.dateRangeField,exports.formSection=n.formSection,exports.inputField=n.inputField,exports.numberField=n.numberField,exports.phoneField=n.phoneField,exports.renderFormBuilderField=n.renderFormBuilderField,exports.selectField=n.selectField,exports.switchField=n.switchField,exports.textareaField=n.textareaField;
1
+ Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=require("./resource-detail-page.cjs"),t=require("./resource-page.cjs");exports.ResourceDetailPage=e.ResourceDetailPage,exports.ResourcePage=t.ResourcePage,exports.ResourcePageSection=t.ResourcePageSection;
@@ -1,3 +1,2 @@
1
1
  export * from "./resource-page";
2
2
  export * from "./resource-detail-page";
3
- export * from "./form-builder";
@@ -1,4 +1,3 @@
1
1
  import { ResourceDetailPage as e } from "./resource-detail-page.js";
2
2
  import { ResourcePage as t, ResourcePageSection as n } from "./resource-page.js";
3
- import { FormBuilder as r, asyncSelectField as i, customField as a, dateField as o, dateRangeField as s, formSection as c, inputField as l, numberField as u, phoneField as d, renderFormBuilderField as f, selectField as p, switchField as m, textareaField as h } from "./form-builder.js";
4
- export { r as FormBuilder, e as ResourceDetailPage, t as ResourcePage, n as ResourcePageSection, i as asyncSelectField, a as customField, o as dateField, s as dateRangeField, c as formSection, l as inputField, u as numberField, d as phoneField, f as renderFormBuilderField, p as selectField, m as switchField, h as textareaField };
3
+ export { e as ResourceDetailPage, t as ResourcePage, n as ResourcePageSection };
@@ -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,children:f,...p}){return(0,a.jsxs)(r.Button,{"data-slot":`button`,"data-variant":n??`default`,"data-size":i??`default`,"data-loading":c||void 0,disabled:s||c,"aria-busy":c||void 0,className:t.cn(o({variant:n,size:i,className:e})),...p,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,f?(0,a.jsx)(`span`,{"data-slot":`button-label`,children:c?l:f}):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,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;
@@ -10,6 +10,8 @@ export type ButtonProps = ButtonPrimitive.Props & VariantProps<typeof buttonVari
10
10
  loadingLabel?: string;
11
11
  leftIcon?: React.ReactNode;
12
12
  rightIcon?: React.ReactNode;
13
+ fullWidth?: boolean;
14
+ pressed?: boolean;
13
15
  };
14
- declare function Button({ className, variant, size, disabled, loading, loadingLabel, leftIcon, rightIcon, children, ...props }: ButtonProps): React.JSX.Element;
16
+ declare function Button({ className, variant, size, disabled, loading, loadingLabel, leftIcon, rightIcon, fullWidth, pressed, children, ...props }: ButtonProps): React.JSX.Element;
15
17
  export { Button, buttonVariants };
@@ -33,20 +33,22 @@ 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, children: p, ...m }) {
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 }) {
37
37
  return /* @__PURE__ */ i(t, {
38
38
  "data-slot": "button",
39
39
  "data-variant": o ?? "default",
40
40
  "data-size": s ?? "default",
41
41
  "data-loading": l || void 0,
42
+ "data-pressed": m || void 0,
42
43
  disabled: c || l,
43
44
  "aria-busy": l || void 0,
45
+ "aria-pressed": m || void 0,
44
46
  className: e(a({
45
47
  variant: o,
46
48
  size: s,
47
49
  className: n
48
- })),
49
- ...m,
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,
50
52
  children: [
51
53
  l ? /* @__PURE__ */ r("span", {
52
54
  "data-slot": "button-spinner",
@@ -58,9 +60,9 @@ function o({ className: n, variant: o = "default", size: s = "default", disabled
58
60
  className: "inline-flex shrink-0 items-center justify-center",
59
61
  children: d
60
62
  }) : null,
61
- p ? /* @__PURE__ */ r("span", {
63
+ h ? /* @__PURE__ */ r("span", {
62
64
  "data-slot": "button-label",
63
- children: l ? u : p
65
+ children: l ? u : h
64
66
  }) : null,
65
67
  !l && f ? /* @__PURE__ */ r("span", {
66
68
  "data-icon": "inline-end",