tembro 2.0.3 → 2.0.5

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 (579) 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-toolbar.cjs +1 -1
  20. package/dist/components/data-table/data-table-toolbar.d.ts +5 -1
  21. package/dist/components/data-table/data-table-toolbar.js +36 -23
  22. package/dist/components/data-table/data-table.cjs +1 -1
  23. package/dist/components/data-table/data-table.d.ts +6 -4
  24. package/dist/components/data-table/data-table.js +87 -79
  25. package/dist/components/data-table/demo.cjs +1 -1
  26. package/dist/components/data-table/demo.js +3 -13
  27. package/dist/components/data-table/index.cjs +1 -1
  28. package/dist/components/data-table/index.js +5 -5
  29. package/dist/components/data-table/public.cjs +1 -1
  30. package/dist/components/data-table/public.d.ts +1 -6
  31. package/dist/components/data-table/public.js +7 -12
  32. package/dist/components/display/activity-feed.cjs +1 -1
  33. package/dist/components/display/activity-feed.d.ts +12 -1
  34. package/dist/components/display/activity-feed.js +69 -47
  35. package/dist/components/display/carousel.cjs +1 -1
  36. package/dist/components/display/carousel.d.ts +10 -1
  37. package/dist/components/display/carousel.js +68 -23
  38. package/dist/components/display/code-block.cjs +2 -1
  39. package/dist/components/display/code-block.d.ts +3 -1
  40. package/dist/components/display/code-block.js +33 -19
  41. package/dist/components/display/comparison-card.cjs +1 -1
  42. package/dist/components/display/comparison-card.d.ts +3 -3
  43. package/dist/components/display/comparison-card.js +14 -38
  44. package/dist/components/display/data-state.cjs +1 -1
  45. package/dist/components/display/data-state.d.ts +12 -2
  46. package/dist/components/display/data-state.js +80 -42
  47. package/dist/components/display/demo.cjs +1 -1
  48. package/dist/components/display/demo.js +1 -5
  49. package/dist/components/display/index.cjs +1 -1
  50. package/dist/components/display/index.d.ts +0 -8
  51. package/dist/components/display/index.js +21 -29
  52. package/dist/components/feedback/alert.cjs +1 -1
  53. package/dist/components/feedback/alert.d.ts +6 -1
  54. package/dist/components/feedback/alert.js +49 -19
  55. package/dist/components/feedback/index.cjs +1 -1
  56. package/dist/components/feedback/index.d.ts +0 -2
  57. package/dist/components/feedback/index.js +3 -5
  58. package/dist/components/filters/demo.cjs +1 -1
  59. package/dist/components/filters/demo.js +1 -5
  60. package/dist/components/filters/filter-bar.cjs +1 -1
  61. package/dist/components/filters/filter-bar.d.ts +15 -1
  62. package/dist/components/filters/filter-bar.js +94 -50
  63. package/dist/components/filters/index.cjs +1 -1
  64. package/dist/components/filters/index.d.ts +0 -1
  65. package/dist/components/filters/index.js +3 -4
  66. package/dist/components/form/demo.cjs +1 -1
  67. package/dist/components/form/demo.js +1 -2
  68. package/dist/components/form/form-field-shell.cjs +1 -1
  69. package/dist/components/form/form-field-shell.d.ts +17 -3
  70. package/dist/components/form/form-field-shell.js +54 -40
  71. package/dist/components/form/form-input.cjs +1 -1
  72. package/dist/components/form/form-input.js +278 -217
  73. package/dist/components/form/form-select.cjs +1 -1
  74. package/dist/components/form/form-select.js +47 -33
  75. package/dist/components/form/form-switch.cjs +1 -1
  76. package/dist/components/form/form-switch.js +79 -66
  77. package/dist/components/form/form-textarea.cjs +1 -1
  78. package/dist/components/form/form-textarea.js +59 -48
  79. package/dist/components/form/index.cjs +1 -1
  80. package/dist/components/form/index.d.ts +0 -1
  81. package/dist/components/form/index.js +11 -12
  82. package/dist/components/form/public.cjs +1 -1
  83. package/dist/components/form/public.d.ts +0 -9
  84. package/dist/components/form/public.js +7 -16
  85. package/dist/components/inputs/async-select.cjs +1 -1
  86. package/dist/components/inputs/async-select.d.ts +11 -2
  87. package/dist/components/inputs/async-select.js +278 -270
  88. package/dist/components/inputs/combobox.cjs +1 -1
  89. package/dist/components/inputs/combobox.d.ts +5 -1
  90. package/dist/components/inputs/combobox.js +52 -19
  91. package/dist/components/inputs/index.cjs +1 -1
  92. package/dist/components/inputs/index.d.ts +0 -2
  93. package/dist/components/inputs/index.js +3 -5
  94. package/dist/components/inputs/public.cjs +1 -1
  95. package/dist/components/inputs/public.d.ts +0 -2
  96. package/dist/components/inputs/public.js +3 -5
  97. package/dist/components/inputs/simple-select.cjs +1 -1
  98. package/dist/components/inputs/simple-select.d.ts +2 -1
  99. package/dist/components/inputs/simple-select.js +32 -16
  100. package/dist/components/layout/app-sidebar.cjs +1 -1
  101. package/dist/components/layout/app-sidebar.d.ts +4 -1
  102. package/dist/components/layout/app-sidebar.js +152 -132
  103. package/dist/components/layout/breadcrumbs.cjs +1 -1
  104. package/dist/components/layout/breadcrumbs.d.ts +2 -1
  105. package/dist/components/layout/breadcrumbs.js +10 -10
  106. package/dist/components/layout/index.cjs +1 -1
  107. package/dist/components/layout/index.d.ts +0 -1
  108. package/dist/components/layout/index.js +4 -5
  109. package/dist/components/layout/public.cjs +1 -1
  110. package/dist/components/layout/public.d.ts +0 -1
  111. package/dist/components/layout/public.js +2 -3
  112. package/dist/components/layout/stat-card.cjs +1 -1
  113. package/dist/components/layout/stat-card.d.ts +8 -1
  114. package/dist/components/layout/stat-card.js +33 -11
  115. package/dist/components/modern/calendar-scheduler.cjs +1 -1
  116. package/dist/components/modern/calendar-scheduler.d.ts +2 -1
  117. package/dist/components/modern/calendar-scheduler.js +21 -12
  118. package/dist/components/modern/index.cjs +1 -1
  119. package/dist/components/modern/index.d.ts +0 -4
  120. package/dist/components/modern/index.js +12 -16
  121. package/dist/components/overlay/alert-dialog.cjs +1 -1
  122. package/dist/components/overlay/alert-dialog.d.ts +15 -1
  123. package/dist/components/overlay/alert-dialog.js +102 -27
  124. package/dist/components/overlay/drawer.cjs +1 -1
  125. package/dist/components/overlay/drawer.d.ts +4 -1
  126. package/dist/components/overlay/drawer.js +20 -17
  127. package/dist/components/patterns/index.cjs +1 -1
  128. package/dist/components/patterns/index.d.ts +0 -1
  129. package/dist/components/patterns/index.js +1 -2
  130. package/dist/components/patterns/public.cjs +1 -1
  131. package/dist/components/patterns/public.d.ts +0 -1
  132. package/dist/components/patterns/public.js +1 -2
  133. package/dist/components/ui/button/index.cjs +1 -1
  134. package/dist/components/ui/button/index.d.ts +3 -1
  135. package/dist/components/ui/button/index.js +7 -5
  136. package/dist/components/ui/checkbox/index.cjs +1 -1
  137. package/dist/components/ui/checkbox/index.d.ts +8 -0
  138. package/dist/components/ui/checkbox/index.js +16 -14
  139. package/dist/components/ui/collapse/index.cjs +1 -1
  140. package/dist/components/ui/collapse/index.d.ts +17 -3
  141. package/dist/components/ui/collapse/index.js +88 -33
  142. package/dist/components/ui/dialog/index.cjs +1 -1
  143. package/dist/components/ui/dialog/index.d.ts +2 -1
  144. package/dist/components/ui/dialog/index.js +6 -4
  145. package/dist/components/ui/dropdown-menu/index.cjs +1 -1
  146. package/dist/components/ui/dropdown-menu/index.d.ts +9 -4
  147. package/dist/components/ui/dropdown-menu/index.js +87 -62
  148. package/dist/index.cjs +1 -1
  149. package/dist/index.js +145 -177
  150. package/dist/public-component-surface.cjs +1 -1
  151. package/dist/public-component-surface.js +0 -80
  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 +20 -34
  155. package/dist/showcase/create-demo.js +15 -16
  156. package/dist/showcase/fallback.cjs +3 -3
  157. package/dist/showcase/fallback.js +287 -451
  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 +13 -13
  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 +467 -574
  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/simple-select/mock.cjs +1 -1
  224. package/dist/showcase/premium/simple-select/mock.js +1 -1
  225. package/dist/showcase/premium/simple-select/showcase.cjs +1 -1
  226. package/dist/showcase/premium/simple-select/showcase.js +4 -2
  227. package/dist/showcase/preview-catalog.cjs +7 -10
  228. package/dist/showcase/preview-catalog.js +7 -7
  229. package/dist/showcase/registry-quality.cjs +1 -1
  230. package/dist/showcase/registry-quality.js +0 -24
  231. package/dist/showcase/registry-specific.cjs +1 -1
  232. package/dist/showcase/registry-specific.js +149 -383
  233. package/dist/showcase/render-registry-preview.cjs +1 -1
  234. package/dist/showcase/render-registry-preview.js +163 -195
  235. package/dist/showcase/site-data.cjs +1 -1
  236. package/dist/showcase/site-data.js +197 -941
  237. package/dist/showcase/supplemental.cjs +1 -1
  238. package/dist/showcase/supplemental.js +1 -1
  239. package/dist/showcase/tembro-registry.json.cjs +1 -1
  240. package/dist/showcase/tembro-registry.json.js +33 -59
  241. package/package.json +1 -1
  242. package/packages/cli/dist/index.cjs +2 -2
  243. package/packages/cli/vendor/src/components/actions/action-menu.tsx +149 -83
  244. package/packages/cli/vendor/src/components/actions/button-group.tsx +141 -33
  245. package/packages/cli/vendor/src/components/actions/copy-button.tsx +21 -16
  246. package/packages/cli/vendor/src/components/calendar/calendar.tsx +223 -88
  247. package/packages/cli/vendor/src/components/calendar/date-picker.tsx +73 -29
  248. package/packages/cli/vendor/src/components/calendar/date-range-picker.tsx +154 -49
  249. package/packages/cli/vendor/src/components/data-table/data-table-toolbar.tsx +71 -50
  250. package/packages/cli/vendor/src/components/data-table/data-table.tsx +65 -53
  251. package/packages/cli/vendor/src/components/data-table/demo.tsx +2 -12
  252. package/packages/cli/vendor/src/components/data-table/public.ts +1 -6
  253. package/packages/cli/vendor/src/components/display/activity-feed.tsx +98 -40
  254. package/packages/cli/vendor/src/components/display/carousel.tsx +88 -2
  255. package/packages/cli/vendor/src/components/display/code-block.tsx +58 -26
  256. package/packages/cli/vendor/src/components/display/comparison-card.tsx +15 -41
  257. package/packages/cli/vendor/src/components/display/data-state.tsx +119 -50
  258. package/packages/cli/vendor/src/components/display/demo.tsx +0 -4
  259. package/packages/cli/vendor/src/components/display/index.ts +0 -8
  260. package/packages/cli/vendor/src/components/feedback/alert.tsx +86 -28
  261. package/packages/cli/vendor/src/components/feedback/index.ts +0 -2
  262. package/packages/cli/vendor/src/components/filters/demo.tsx +0 -1
  263. package/packages/cli/vendor/src/components/filters/filter-bar.tsx +126 -54
  264. package/packages/cli/vendor/src/components/filters/index.ts +0 -1
  265. package/packages/cli/vendor/src/components/form/demo.tsx +0 -1
  266. package/packages/cli/vendor/src/components/form/form-field-shell.tsx +72 -34
  267. package/packages/cli/vendor/src/components/form/form-input.tsx +118 -11
  268. package/packages/cli/vendor/src/components/form/form-select.tsx +26 -3
  269. package/packages/cli/vendor/src/components/form/form-switch.tsx +77 -58
  270. package/packages/cli/vendor/src/components/form/form-textarea.tsx +65 -51
  271. package/packages/cli/vendor/src/components/form/index.ts +0 -1
  272. package/packages/cli/vendor/src/components/form/public.ts +0 -11
  273. package/packages/cli/vendor/src/components/inputs/async-select.tsx +126 -82
  274. package/packages/cli/vendor/src/components/inputs/combobox.tsx +66 -9
  275. package/packages/cli/vendor/src/components/inputs/index.ts +0 -2
  276. package/packages/cli/vendor/src/components/inputs/public.ts +0 -2
  277. package/packages/cli/vendor/src/components/inputs/simple-select.tsx +52 -24
  278. package/packages/cli/vendor/src/components/layout/app-sidebar.tsx +42 -1
  279. package/packages/cli/vendor/src/components/layout/breadcrumbs.tsx +17 -8
  280. package/packages/cli/vendor/src/components/layout/index.ts +0 -1
  281. package/packages/cli/vendor/src/components/layout/public.ts +0 -1
  282. package/packages/cli/vendor/src/components/layout/stat-card.tsx +63 -23
  283. package/packages/cli/vendor/src/components/modern/calendar-scheduler.tsx +32 -22
  284. package/packages/cli/vendor/src/components/modern/index.ts +1 -5
  285. package/packages/cli/vendor/src/components/overlay/alert-dialog.tsx +148 -24
  286. package/packages/cli/vendor/src/components/overlay/drawer.tsx +42 -30
  287. package/packages/cli/vendor/src/components/patterns/index.ts +0 -1
  288. package/packages/cli/vendor/src/components/patterns/public.ts +0 -1
  289. package/packages/cli/vendor/src/components/ui/button/index.tsx +27 -17
  290. package/packages/cli/vendor/src/components/ui/checkbox/index.tsx +22 -5
  291. package/packages/cli/vendor/src/components/ui/collapse/index.tsx +97 -16
  292. package/packages/cli/vendor/src/components/ui/dialog/index.tsx +12 -8
  293. package/packages/cli/vendor/src/components/ui/dropdown-menu/index.tsx +82 -28
  294. package/packages/cli/vendor/src/public-component-surface.ts +0 -16
  295. package/packages/cli/vendor/src/showcase/component-api-schema.ts +2 -2
  296. package/packages/cli/vendor/src/showcase/create-demo.tsx +31 -46
  297. package/packages/cli/vendor/src/showcase/fallback.tsx +83 -263
  298. package/packages/cli/vendor/src/showcase/premium/accordion/showcase.tsx +32 -2
  299. package/packages/cli/vendor/src/showcase/premium/action-menu/showcase.tsx +12 -3
  300. package/packages/cli/vendor/src/showcase/premium/activity-feed/showcase.tsx +15 -2
  301. package/packages/cli/vendor/src/showcase/premium/alert/showcase.tsx +32 -17
  302. package/packages/cli/vendor/src/showcase/premium/alert-dialog/showcase.tsx +28 -3
  303. package/packages/cli/vendor/src/showcase/premium/async-multi-select/mock.ts +6 -5
  304. package/packages/cli/vendor/src/showcase/premium/async-multi-select/showcase.tsx +5 -4
  305. package/packages/cli/vendor/src/showcase/premium/async-select/mock.ts +1 -1
  306. package/packages/cli/vendor/src/showcase/premium/async-select/showcase.tsx +36 -0
  307. package/packages/cli/vendor/src/showcase/premium/button/showcase.tsx +26 -5
  308. package/packages/cli/vendor/src/showcase/premium/button-group/showcase.tsx +20 -3
  309. package/packages/cli/vendor/src/showcase/premium/calendar/showcase.tsx +5 -0
  310. package/packages/cli/vendor/src/showcase/premium/carousel/showcase.tsx +33 -5
  311. package/packages/cli/vendor/src/showcase/premium/checkbox/showcase.tsx +46 -3
  312. package/packages/cli/vendor/src/showcase/premium/clearable-input/mock.ts +5 -3
  313. package/packages/cli/vendor/src/showcase/premium/clearable-input/showcase.tsx +5 -2
  314. package/packages/cli/vendor/src/showcase/premium/collapse/showcase.tsx +4 -0
  315. package/packages/cli/vendor/src/showcase/premium/combobox/showcase.tsx +8 -0
  316. package/packages/cli/vendor/src/showcase/premium/data-table/showcase.tsx +77 -27
  317. package/packages/cli/vendor/src/showcase/premium/data-table-parts/showcase.tsx +11 -11
  318. package/packages/cli/vendor/src/showcase/premium/date-input/mock.ts +1 -1
  319. package/packages/cli/vendor/src/showcase/premium/date-range-picker/showcase.tsx +7 -0
  320. package/packages/cli/vendor/src/showcase/premium/dropdown-menu/showcase.tsx +46 -3
  321. package/packages/cli/vendor/src/showcase/premium/form-wrapper/mock.ts +70 -44
  322. package/packages/cli/vendor/src/showcase/premium/form-wrapper/showcase.tsx +129 -12
  323. package/packages/cli/vendor/src/showcase/premium/index.ts +7 -46
  324. package/packages/cli/vendor/src/showcase/premium/input/mock.ts +2 -2
  325. package/packages/cli/vendor/src/showcase/premium/masked-input/mock.ts +1 -1
  326. package/packages/cli/vendor/src/showcase/premium/money-input/mock.ts +1 -1
  327. package/packages/cli/vendor/src/showcase/premium/number-input/mock.ts +1 -1
  328. package/packages/cli/vendor/src/showcase/premium/phone-input/mock.ts +1 -1
  329. package/packages/cli/vendor/src/showcase/premium/quantity-input/mock.ts +1 -1
  330. package/packages/cli/vendor/src/showcase/premium/simple-select/mock.ts +1 -1
  331. package/packages/cli/vendor/src/showcase/premium/simple-select/showcase.tsx +2 -1
  332. package/packages/cli/vendor/src/showcase/preview-catalog.tsx +7 -7
  333. package/packages/cli/vendor/src/showcase/registry-quality.ts +4 -30
  334. package/packages/cli/vendor/src/showcase/registry-specific.tsx +3 -178
  335. package/packages/cli/vendor/src/showcase/render-registry-preview.tsx +18 -51
  336. package/packages/cli/vendor/src/showcase/site-data.tsx +2443 -2761
  337. package/packages/cli/vendor/src/showcase/supplemental.tsx +2 -42
  338. package/packages/cli/vendor/src/showcase/tembro-registry.json +206 -280
  339. package/registry.json +251 -329
  340. package/dist/components/display/aspect-ratio.cjs +0 -1
  341. package/dist/components/display/aspect-ratio.d.ts +0 -6
  342. package/dist/components/display/aspect-ratio.js +0 -21
  343. package/dist/components/display/entity-card.cjs +0 -1
  344. package/dist/components/display/entity-card.d.ts +0 -18
  345. package/dist/components/display/entity-card.js +0 -61
  346. package/dist/components/display/entity-header.cjs +0 -1
  347. package/dist/components/display/entity-header.d.ts +0 -13
  348. package/dist/components/display/entity-header.js +0 -52
  349. package/dist/components/display/file-card.cjs +0 -1
  350. package/dist/components/display/file-card.d.ts +0 -14
  351. package/dist/components/display/file-card.js +0 -59
  352. package/dist/components/display/float-button.cjs +0 -1
  353. package/dist/components/display/float-button.d.ts +0 -6
  354. package/dist/components/display/float-button.js +0 -20
  355. package/dist/components/display/key-value-card.cjs +0 -1
  356. package/dist/components/display/key-value-card.d.ts +0 -16
  357. package/dist/components/display/key-value-card.js +0 -35
  358. package/dist/components/display/keyboard-shortcut.cjs +0 -1
  359. package/dist/components/display/keyboard-shortcut.d.ts +0 -7
  360. package/dist/components/display/keyboard-shortcut.js +0 -18
  361. package/dist/components/display/skeleton-form.cjs +0 -1
  362. package/dist/components/display/skeleton-form.d.ts +0 -9
  363. package/dist/components/display/skeleton-form.js +0 -31
  364. package/dist/components/display/skeleton-table.cjs +0 -1
  365. package/dist/components/display/skeleton-table.d.ts +0 -9
  366. package/dist/components/display/skeleton-table.js +0 -42
  367. package/dist/components/display/tag-list.cjs +0 -1
  368. package/dist/components/display/tag-list.d.ts +0 -17
  369. package/dist/components/display/tag-list.js +0 -30
  370. package/dist/components/display/watermark.cjs +0 -1
  371. package/dist/components/display/watermark.d.ts +0 -6
  372. package/dist/components/display/watermark.js +0 -23
  373. package/dist/components/feedback/empty-search-state.cjs +0 -1
  374. package/dist/components/feedback/empty-search-state.d.ts +0 -11
  375. package/dist/components/feedback/empty-search-state.js +0 -45
  376. package/dist/components/feedback/empty-state.cjs +0 -1
  377. package/dist/components/feedback/empty-state.d.ts +0 -11
  378. package/dist/components/feedback/empty-state.js +0 -38
  379. package/dist/components/filters/filter-chips.cjs +0 -1
  380. package/dist/components/filters/filter-chips.d.ts +0 -18
  381. package/dist/components/filters/filter-chips.js +0 -61
  382. package/dist/components/form/repeater-field.cjs +0 -1
  383. package/dist/components/form/repeater-field.d.ts +0 -16
  384. package/dist/components/form/repeater-field.js +0 -48
  385. package/dist/components/inputs/cascader.cjs +0 -1
  386. package/dist/components/inputs/cascader.d.ts +0 -13
  387. package/dist/components/inputs/cascader.js +0 -58
  388. package/dist/components/inputs/mention-input.cjs +0 -1
  389. package/dist/components/inputs/mention-input.d.ts +0 -18
  390. package/dist/components/inputs/mention-input.js +0 -96
  391. package/dist/components/layout/stack.cjs +0 -1
  392. package/dist/components/layout/stack.d.ts +0 -23
  393. package/dist/components/layout/stack.js +0 -57
  394. package/dist/components/modern/affix.cjs +0 -1
  395. package/dist/components/modern/affix.d.ts +0 -7
  396. package/dist/components/modern/affix.js +0 -18
  397. package/dist/components/patterns/form-builder-presets.cjs +0 -1
  398. package/dist/components/patterns/form-builder-presets.d.ts +0 -1
  399. package/dist/components/patterns/form-builder-presets.js +0 -2
  400. package/dist/components/patterns/form-builder.cjs +0 -1
  401. package/dist/components/patterns/form-builder.d.ts +0 -109
  402. package/dist/components/patterns/form-builder.js +0 -263
  403. package/dist/showcase/premium/affix/index.cjs +0 -1
  404. package/dist/showcase/premium/affix/index.d.ts +0 -2
  405. package/dist/showcase/premium/affix/index.js +0 -3
  406. package/dist/showcase/premium/affix/mock.cjs +0 -12
  407. package/dist/showcase/premium/affix/mock.d.ts +0 -2
  408. package/dist/showcase/premium/affix/mock.js +0 -15
  409. package/dist/showcase/premium/affix/showcase.cjs +0 -1
  410. package/dist/showcase/premium/affix/showcase.d.ts +0 -2
  411. package/dist/showcase/premium/affix/showcase.js +0 -64
  412. package/dist/showcase/premium/aspect-ratio/index.cjs +0 -1
  413. package/dist/showcase/premium/aspect-ratio/index.d.ts +0 -2
  414. package/dist/showcase/premium/aspect-ratio/index.js +0 -3
  415. package/dist/showcase/premium/aspect-ratio/mock.cjs +0 -11
  416. package/dist/showcase/premium/aspect-ratio/mock.d.ts +0 -2
  417. package/dist/showcase/premium/aspect-ratio/mock.js +0 -26
  418. package/dist/showcase/premium/aspect-ratio/showcase.cjs +0 -1
  419. package/dist/showcase/premium/aspect-ratio/showcase.d.ts +0 -2
  420. package/dist/showcase/premium/aspect-ratio/showcase.js +0 -53
  421. package/dist/showcase/premium/cascader/index.cjs +0 -1
  422. package/dist/showcase/premium/cascader/index.d.ts +0 -2
  423. package/dist/showcase/premium/cascader/index.js +0 -3
  424. package/dist/showcase/premium/cascader/mock.cjs +0 -9
  425. package/dist/showcase/premium/cascader/mock.d.ts +0 -2
  426. package/dist/showcase/premium/cascader/mock.js +0 -19
  427. package/dist/showcase/premium/cascader/showcase.cjs +0 -1
  428. package/dist/showcase/premium/cascader/showcase.d.ts +0 -2
  429. package/dist/showcase/premium/cascader/showcase.js +0 -43
  430. package/dist/showcase/premium/empty-state/index.cjs +0 -1
  431. package/dist/showcase/premium/empty-state/index.d.ts +0 -2
  432. package/dist/showcase/premium/empty-state/index.js +0 -3
  433. package/dist/showcase/premium/empty-state/mock.cjs +0 -14
  434. package/dist/showcase/premium/empty-state/mock.d.ts +0 -2
  435. package/dist/showcase/premium/empty-state/mock.js +0 -31
  436. package/dist/showcase/premium/empty-state/showcase.cjs +0 -1
  437. package/dist/showcase/premium/empty-state/showcase.d.ts +0 -3
  438. package/dist/showcase/premium/empty-state/showcase.js +0 -99
  439. package/dist/showcase/premium/float-button/index.cjs +0 -1
  440. package/dist/showcase/premium/float-button/index.d.ts +0 -2
  441. package/dist/showcase/premium/float-button/index.js +0 -3
  442. package/dist/showcase/premium/float-button/mock.cjs +0 -10
  443. package/dist/showcase/premium/float-button/mock.d.ts +0 -2
  444. package/dist/showcase/premium/float-button/mock.js +0 -15
  445. package/dist/showcase/premium/float-button/showcase.cjs +0 -1
  446. package/dist/showcase/premium/float-button/showcase.d.ts +0 -2
  447. package/dist/showcase/premium/float-button/showcase.js +0 -28
  448. package/dist/showcase/premium/form-builder/index.cjs +0 -1
  449. package/dist/showcase/premium/form-builder/index.d.ts +0 -2
  450. package/dist/showcase/premium/form-builder/index.js +0 -3
  451. package/dist/showcase/premium/form-builder/mock.cjs +0 -57
  452. package/dist/showcase/premium/form-builder/mock.d.ts +0 -2
  453. package/dist/showcase/premium/form-builder/mock.js +0 -40
  454. package/dist/showcase/premium/form-builder/showcase.cjs +0 -1
  455. package/dist/showcase/premium/form-builder/showcase.d.ts +0 -3
  456. package/dist/showcase/premium/form-builder/showcase.js +0 -69
  457. package/dist/showcase/premium/keyboard-shortcut/index.cjs +0 -1
  458. package/dist/showcase/premium/keyboard-shortcut/index.d.ts +0 -2
  459. package/dist/showcase/premium/keyboard-shortcut/index.js +0 -3
  460. package/dist/showcase/premium/keyboard-shortcut/mock.cjs +0 -5
  461. package/dist/showcase/premium/keyboard-shortcut/mock.d.ts +0 -2
  462. package/dist/showcase/premium/keyboard-shortcut/mock.js +0 -26
  463. package/dist/showcase/premium/keyboard-shortcut/showcase.cjs +0 -1
  464. package/dist/showcase/premium/keyboard-shortcut/showcase.d.ts +0 -1
  465. package/dist/showcase/premium/keyboard-shortcut/showcase.js +0 -64
  466. package/dist/showcase/premium/mention-input/index.cjs +0 -1
  467. package/dist/showcase/premium/mention-input/index.d.ts +0 -2
  468. package/dist/showcase/premium/mention-input/index.js +0 -3
  469. package/dist/showcase/premium/mention-input/mock.cjs +0 -11
  470. package/dist/showcase/premium/mention-input/mock.d.ts +0 -2
  471. package/dist/showcase/premium/mention-input/mock.js +0 -19
  472. package/dist/showcase/premium/mention-input/showcase.cjs +0 -1
  473. package/dist/showcase/premium/mention-input/showcase.d.ts +0 -2
  474. package/dist/showcase/premium/mention-input/showcase.js +0 -35
  475. package/dist/showcase/premium/skeleton-form/index.cjs +0 -1
  476. package/dist/showcase/premium/skeleton-form/index.d.ts +0 -2
  477. package/dist/showcase/premium/skeleton-form/index.js +0 -3
  478. package/dist/showcase/premium/skeleton-form/mock.cjs +0 -5
  479. package/dist/showcase/premium/skeleton-form/mock.d.ts +0 -2
  480. package/dist/showcase/premium/skeleton-form/mock.js +0 -19
  481. package/dist/showcase/premium/skeleton-form/showcase.cjs +0 -1
  482. package/dist/showcase/premium/skeleton-form/showcase.d.ts +0 -2
  483. package/dist/showcase/premium/skeleton-form/showcase.js +0 -52
  484. package/dist/showcase/premium/skeleton-table/index.cjs +0 -1
  485. package/dist/showcase/premium/skeleton-table/index.d.ts +0 -2
  486. package/dist/showcase/premium/skeleton-table/index.js +0 -3
  487. package/dist/showcase/premium/skeleton-table/mock.cjs +0 -5
  488. package/dist/showcase/premium/skeleton-table/mock.d.ts +0 -2
  489. package/dist/showcase/premium/skeleton-table/mock.js +0 -19
  490. package/dist/showcase/premium/skeleton-table/showcase.cjs +0 -1
  491. package/dist/showcase/premium/skeleton-table/showcase.d.ts +0 -2
  492. package/dist/showcase/premium/skeleton-table/showcase.js +0 -59
  493. package/dist/showcase/premium/stack/index.cjs +0 -1
  494. package/dist/showcase/premium/stack/index.d.ts +0 -2
  495. package/dist/showcase/premium/stack/index.js +0 -3
  496. package/dist/showcase/premium/stack/mock.cjs +0 -10
  497. package/dist/showcase/premium/stack/mock.d.ts +0 -2
  498. package/dist/showcase/premium/stack/mock.js +0 -26
  499. package/dist/showcase/premium/stack/showcase.cjs +0 -1
  500. package/dist/showcase/premium/stack/showcase.d.ts +0 -1
  501. package/dist/showcase/premium/stack/showcase.js +0 -47
  502. package/dist/showcase/premium/tag-list/index.cjs +0 -1
  503. package/dist/showcase/premium/tag-list/index.d.ts +0 -2
  504. package/dist/showcase/premium/tag-list/index.js +0 -3
  505. package/dist/showcase/premium/tag-list/mock.cjs +0 -12
  506. package/dist/showcase/premium/tag-list/mock.d.ts +0 -2
  507. package/dist/showcase/premium/tag-list/mock.js +0 -26
  508. package/dist/showcase/premium/tag-list/showcase.cjs +0 -1
  509. package/dist/showcase/premium/tag-list/showcase.d.ts +0 -2
  510. package/dist/showcase/premium/tag-list/showcase.js +0 -83
  511. package/dist/showcase/premium/watermark/index.cjs +0 -1
  512. package/dist/showcase/premium/watermark/index.d.ts +0 -2
  513. package/dist/showcase/premium/watermark/index.js +0 -3
  514. package/dist/showcase/premium/watermark/mock.cjs +0 -11
  515. package/dist/showcase/premium/watermark/mock.d.ts +0 -2
  516. package/dist/showcase/premium/watermark/mock.js +0 -26
  517. package/dist/showcase/premium/watermark/showcase.cjs +0 -1
  518. package/dist/showcase/premium/watermark/showcase.d.ts +0 -2
  519. package/dist/showcase/premium/watermark/showcase.js +0 -34
  520. package/packages/cli/vendor/src/components/display/aspect-ratio.tsx +0 -22
  521. package/packages/cli/vendor/src/components/display/entity-card.tsx +0 -80
  522. package/packages/cli/vendor/src/components/display/entity-header.tsx +0 -80
  523. package/packages/cli/vendor/src/components/display/file-card.tsx +0 -61
  524. package/packages/cli/vendor/src/components/display/float-button.tsx +0 -27
  525. package/packages/cli/vendor/src/components/display/key-value-card.tsx +0 -50
  526. package/packages/cli/vendor/src/components/display/keyboard-shortcut.tsx +0 -31
  527. package/packages/cli/vendor/src/components/display/skeleton-form.tsx +0 -51
  528. package/packages/cli/vendor/src/components/display/skeleton-table.tsx +0 -59
  529. package/packages/cli/vendor/src/components/display/tag-list.tsx +0 -52
  530. package/packages/cli/vendor/src/components/display/watermark.tsx +0 -20
  531. package/packages/cli/vendor/src/components/feedback/empty-search-state.tsx +0 -65
  532. package/packages/cli/vendor/src/components/feedback/empty-state.tsx +0 -56
  533. package/packages/cli/vendor/src/components/filters/filter-chips.tsx +0 -89
  534. package/packages/cli/vendor/src/components/form/repeater-field.tsx +0 -93
  535. package/packages/cli/vendor/src/components/inputs/cascader.tsx +0 -41
  536. package/packages/cli/vendor/src/components/inputs/mention-input.tsx +0 -162
  537. package/packages/cli/vendor/src/components/layout/stack.tsx +0 -106
  538. package/packages/cli/vendor/src/components/modern/affix.tsx +0 -21
  539. package/packages/cli/vendor/src/components/patterns/form-builder-presets.ts +0 -13
  540. package/packages/cli/vendor/src/components/patterns/form-builder.tsx +0 -443
  541. package/packages/cli/vendor/src/showcase/premium/affix/index.ts +0 -3
  542. package/packages/cli/vendor/src/showcase/premium/affix/mock.ts +0 -26
  543. package/packages/cli/vendor/src/showcase/premium/affix/showcase.tsx +0 -37
  544. package/packages/cli/vendor/src/showcase/premium/aspect-ratio/index.ts +0 -2
  545. package/packages/cli/vendor/src/showcase/premium/aspect-ratio/mock.ts +0 -26
  546. package/packages/cli/vendor/src/showcase/premium/aspect-ratio/showcase.tsx +0 -37
  547. package/packages/cli/vendor/src/showcase/premium/cascader/index.ts +0 -3
  548. package/packages/cli/vendor/src/showcase/premium/cascader/mock.ts +0 -24
  549. package/packages/cli/vendor/src/showcase/premium/cascader/showcase.tsx +0 -20
  550. package/packages/cli/vendor/src/showcase/premium/empty-state/index.ts +0 -2
  551. package/packages/cli/vendor/src/showcase/premium/empty-state/mock.ts +0 -30
  552. package/packages/cli/vendor/src/showcase/premium/empty-state/showcase.tsx +0 -65
  553. package/packages/cli/vendor/src/showcase/premium/float-button/index.ts +0 -3
  554. package/packages/cli/vendor/src/showcase/premium/float-button/mock.ts +0 -24
  555. package/packages/cli/vendor/src/showcase/premium/float-button/showcase.tsx +0 -21
  556. package/packages/cli/vendor/src/showcase/premium/form-builder/index.ts +0 -2
  557. package/packages/cli/vendor/src/showcase/premium/form-builder/mock.ts +0 -79
  558. package/packages/cli/vendor/src/showcase/premium/form-builder/showcase.tsx +0 -55
  559. package/packages/cli/vendor/src/showcase/premium/keyboard-shortcut/index.ts +0 -2
  560. package/packages/cli/vendor/src/showcase/premium/keyboard-shortcut/mock.ts +0 -20
  561. package/packages/cli/vendor/src/showcase/premium/keyboard-shortcut/showcase.tsx +0 -42
  562. package/packages/cli/vendor/src/showcase/premium/mention-input/index.ts +0 -3
  563. package/packages/cli/vendor/src/showcase/premium/mention-input/mock.ts +0 -26
  564. package/packages/cli/vendor/src/showcase/premium/mention-input/showcase.tsx +0 -27
  565. package/packages/cli/vendor/src/showcase/premium/skeleton-form/index.ts +0 -3
  566. package/packages/cli/vendor/src/showcase/premium/skeleton-form/mock.ts +0 -20
  567. package/packages/cli/vendor/src/showcase/premium/skeleton-form/showcase.tsx +0 -34
  568. package/packages/cli/vendor/src/showcase/premium/skeleton-table/index.ts +0 -3
  569. package/packages/cli/vendor/src/showcase/premium/skeleton-table/mock.ts +0 -20
  570. package/packages/cli/vendor/src/showcase/premium/skeleton-table/showcase.tsx +0 -37
  571. package/packages/cli/vendor/src/showcase/premium/stack/index.ts +0 -2
  572. package/packages/cli/vendor/src/showcase/premium/stack/mock.ts +0 -25
  573. package/packages/cli/vendor/src/showcase/premium/stack/showcase.tsx +0 -22
  574. package/packages/cli/vendor/src/showcase/premium/tag-list/index.ts +0 -2
  575. package/packages/cli/vendor/src/showcase/premium/tag-list/mock.ts +0 -27
  576. package/packages/cli/vendor/src/showcase/premium/tag-list/showcase.tsx +0 -55
  577. package/packages/cli/vendor/src/showcase/premium/watermark/index.ts +0 -2
  578. package/packages/cli/vendor/src/showcase/premium/watermark/mock.ts +0 -26
  579. package/packages/cli/vendor/src/showcase/premium/watermark/showcase.tsx +0 -26
@@ -11,8 +11,17 @@ export type CarouselProps = React.ComponentProps<"div"> & {
11
11
  ariaLabel?: string;
12
12
  previousLabel?: string;
13
13
  nextLabel?: string;
14
+ swipeThreshold?: number;
15
+ autoplay?: boolean;
16
+ autoplayInterval?: number;
17
+ pauseOnHover?: boolean;
18
+ stopAutoplayOnInteraction?: boolean;
19
+ showPlaybackControl?: boolean;
20
+ playLabel?: string;
21
+ pauseLabel?: string;
22
+ onAutoplayChange?: (playing: boolean) => void;
14
23
  };
15
24
  export type CarouselItemProps = React.ComponentProps<"div">;
16
- declare function Carousel({ index, defaultIndex, onIndexChange, loop, variant, showDots, showArrows, keyboard, ariaLabel, previousLabel, nextLabel, className, children, ...props }: CarouselProps): React.JSX.Element;
25
+ declare function Carousel({ index, defaultIndex, onIndexChange, loop, variant, showDots, showArrows, keyboard, ariaLabel, previousLabel, nextLabel, swipeThreshold, autoplay, autoplayInterval, pauseOnHover, stopAutoplayOnInteraction, showPlaybackControl, playLabel, pauseLabel, onAutoplayChange, className, children, ...props }: CarouselProps): React.JSX.Element;
17
26
  declare function CarouselItem({ className, ...props }: CarouselItemProps): React.JSX.Element;
18
27
  export { Carousel, CarouselItem };
@@ -7,61 +7,106 @@ import { Fragment as a, jsx as o, jsxs as s } from "react/jsx-runtime";
7
7
  function c(e, t, n) {
8
8
  return t <= 0 ? 0 : n ? (e % t + t) % t : Math.min(Math.max(e, 0), t - 1);
9
9
  }
10
- function l({ index: l, defaultIndex: u = 0, onIndexChange: d, loop: f = !1, variant: p = "default", showDots: m = !0, showArrows: h = !0, keyboard: g = !0, ariaLabel: _ = "Carousel", previousLabel: v = "Previous slide", nextLabel: y = "Next slide", className: b, children: x, ...S }) {
11
- let C = n.Children.toArray(x), [w, T] = n.useState(u), E = l !== void 0, D = c(E ? l : w, C.length, f);
12
- function O(e) {
13
- let t = c(e, C.length, f);
14
- E || T(t), d?.(t);
10
+ function l({ index: l, defaultIndex: u = 0, onIndexChange: d, loop: f = !1, variant: p = "default", showDots: m = !0, showArrows: h = !0, keyboard: g = !0, ariaLabel: _ = "Carousel", previousLabel: v = "Previous slide", nextLabel: y = "Next slide", swipeThreshold: b = 44, autoplay: x = !1, autoplayInterval: S = 4500, pauseOnHover: C = !0, stopAutoplayOnInteraction: w = !0, showPlaybackControl: T = !1, playLabel: E = "Start autoplay", pauseLabel: D = "Pause autoplay", onAutoplayChange: O, className: k, children: A, ...j }) {
11
+ let M = n.Children.toArray(A), [N, P] = n.useState(u), F = n.useRef(null), [I, L] = n.useState(!1), [R, z] = n.useState(!1), [B, V] = n.useState(x), H = l !== void 0, U = c(H ? l : N, M.length, f);
12
+ n.useEffect(() => {
13
+ V(x);
14
+ }, [x]);
15
+ function W(e, t = "manual") {
16
+ let n = c(e, M.length, f);
17
+ H || P(n), t === "manual" && w && (z(!0), B && (V(!1), O?.(!1))), d?.(n);
15
18
  }
16
- let k = f || D > 0, A = f || D < C.length - 1;
17
- return /* @__PURE__ */ s("div", {
19
+ let G = f || U > 0, K = f || U < M.length - 1;
20
+ return n.useEffect(() => {
21
+ if (!B || M.length <= 1 || R || C && I) return;
22
+ let e = window.setInterval(() => {
23
+ if (!f && U >= M.length - 1) {
24
+ W(0, "autoplay");
25
+ return;
26
+ }
27
+ W(U + 1, "autoplay");
28
+ }, S);
29
+ return () => {
30
+ window.clearInterval(e);
31
+ };
32
+ }, [
33
+ U,
34
+ B,
35
+ S,
36
+ R,
37
+ I,
38
+ M.length,
39
+ f,
40
+ C
41
+ ]), /* @__PURE__ */ s("div", {
18
42
  "data-slot": "carousel",
19
43
  "data-variant": p,
20
44
  role: "region",
21
45
  "aria-roledescription": "carousel",
22
46
  "aria-label": _,
23
- className: e("grid gap-3", b),
47
+ tabIndex: g ? 0 : void 0,
48
+ className: e("grid gap-3", k),
24
49
  onKeyDown: (e) => {
25
- !g || C.length <= 1 || (e.key === "ArrowLeft" && k && (e.preventDefault(), O(D - 1)), e.key === "ArrowRight" && A && (e.preventDefault(), O(D + 1)));
50
+ !g || M.length <= 1 || (e.key === "ArrowLeft" && G && (e.preventDefault(), W(U - 1)), e.key === "ArrowRight" && K && (e.preventDefault(), W(U + 1)));
26
51
  },
27
- ...S,
52
+ onTouchStart: (e) => {
53
+ F.current = e.touches[0]?.clientX ?? null;
54
+ },
55
+ onTouchEnd: (e) => {
56
+ if (F.current == null || M.length <= 1) return;
57
+ let t = (e.changedTouches[0]?.clientX ?? F.current) - F.current;
58
+ F.current = null, !(Math.abs(t) < b) && (t > 0 && G && W(U - 1), t < 0 && K && W(U + 1));
59
+ },
60
+ onMouseEnter: () => L(!0),
61
+ onMouseLeave: () => L(!1),
62
+ ...j,
28
63
  children: [/* @__PURE__ */ s("div", {
29
64
  className: e("relative overflow-hidden rounded-[var(--aui-card-radius,var(--radius-lg))] border border-[color:var(--aui-card-border,var(--border))] bg-card shadow-[var(--aui-card-shadow,0_12px_32px_rgba(15,23,42,0.08))]", p === "hero" && "min-h-72", p === "minimal" && "rounded-[var(--radius-md)] shadow-none"),
30
65
  children: [/* @__PURE__ */ o("div", {
31
66
  className: "transition-transform duration-300 ease-out",
32
67
  "aria-live": "polite",
33
- children: C[D]
34
- }), h && C.length > 1 ? /* @__PURE__ */ s(a, { children: [/* @__PURE__ */ o(t, {
68
+ children: M[U]
69
+ }), h && M.length > 1 ? /* @__PURE__ */ s(a, { children: [/* @__PURE__ */ o(t, {
35
70
  type: "button",
36
71
  variant: p === "hero" ? "default" : "secondary",
37
72
  size: "icon-sm",
38
73
  className: "absolute left-3 top-1/2 -translate-y-1/2 rounded-full shadow-lg",
39
- disabled: !k,
74
+ disabled: !G,
40
75
  "aria-label": v,
41
- onClick: () => O(D - 1),
76
+ onClick: () => W(U - 1),
42
77
  children: /* @__PURE__ */ o(r, {})
43
78
  }), /* @__PURE__ */ o(t, {
44
79
  type: "button",
45
80
  variant: p === "hero" ? "default" : "secondary",
46
81
  size: "icon-sm",
47
82
  className: "absolute right-3 top-1/2 -translate-y-1/2 rounded-full shadow-lg",
48
- disabled: !A,
83
+ disabled: !K,
49
84
  "aria-label": y,
50
- onClick: () => O(D + 1),
85
+ onClick: () => W(U + 1),
51
86
  children: /* @__PURE__ */ o(i, {})
52
87
  })] }) : null]
53
- }), m && C.length > 1 && /* @__PURE__ */ o("div", {
54
- className: "flex items-center justify-center gap-2",
88
+ }), m && M.length > 1 && /* @__PURE__ */ s("div", {
89
+ className: "flex flex-wrap items-center justify-center gap-2",
55
90
  role: "tablist",
56
91
  "aria-label": `${_} slides`,
57
- children: C.map((t, n) => /* @__PURE__ */ o("button", {
92
+ children: [M.map((t, n) => /* @__PURE__ */ o("button", {
58
93
  type: "button",
59
94
  role: "tab",
60
95
  "aria-label": `Go to slide ${n + 1}`,
61
- "aria-selected": n === D,
62
- className: e("h-2.5 rounded-full bg-muted-foreground/30 transition-[width,background-color,opacity] hover:bg-muted-foreground/55", n === D ? "w-7 bg-primary" : "w-2.5"),
63
- onClick: () => O(n)
64
- }, n))
96
+ "aria-selected": n === U,
97
+ className: e("h-2.5 rounded-full bg-muted-foreground/30 transition-[width,background-color,opacity] hover:bg-muted-foreground/55", n === U ? "w-7 bg-primary" : "w-2.5"),
98
+ onClick: () => W(n)
99
+ }, n)), T ? /* @__PURE__ */ o(t, {
100
+ type: "button",
101
+ variant: "ghost",
102
+ size: "sm",
103
+ className: "ml-2 rounded-full",
104
+ onClick: () => {
105
+ let e = !B;
106
+ z(!1), V(e), O?.(e);
107
+ },
108
+ children: B ? D : E
109
+ }) : null]
65
110
  })]
66
111
  });
67
112
  }
@@ -1 +1,2 @@
1
- Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=require("../../_virtual/_rolldown/runtime.cjs"),t=require("../../lib/utils.cjs"),n=require("../actions/copy-button.cjs");let r=require("react");r=e.__toESM(r,1);let i=require("react/jsx-runtime");function a({code:e,language:r,title:a,showCopy:o=!0,wrap:s=!1,className:c,...l}){return(0,i.jsxs)(`div`,{"data-slot":`code-block`,className:t.cn(`overflow-hidden rounded-lg border bg-card`,c),...l,children:[(a||r||o)&&(0,i.jsxs)(`div`,{className:`flex items-center justify-between gap-3 border-b px-3 py-2 text-xs text-muted-foreground`,children:[(0,i.jsxs)(`div`,{className:`flex min-w-0 items-center gap-2`,children:[a&&(0,i.jsx)(`span`,{className:`truncate font-medium text-foreground`,children:a}),r&&(0,i.jsx)(`span`,{className:`rounded bg-muted px-1.5 py-0.5 font-mono`,children:r})]}),o&&(0,i.jsx)(n.CopyButton,{value:e,size:`sm`,variant:`ghost`,copyLabel:`Copy`,copiedLabel:`Copied`})]}),(0,i.jsx)(`pre`,{className:t.cn(`overflow-x-auto p-3 text-sm`,s&&`whitespace-pre-wrap break-words`),children:(0,i.jsx)(`code`,{children:e})})]})}exports.CodeBlock=a;
1
+ Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=require("../../_virtual/_rolldown/runtime.cjs"),t=require("../../lib/utils.cjs"),n=require("../actions/copy-button.cjs");let r=require("react");r=e.__toESM(r,1);let i=require("react/jsx-runtime");function a({code:e,language:a,title:o,showCopy:s=!0,wrap:c=!1,lineNumbers:l=!1,maxHeight:u,className:d,...f}){let p=r.useMemo(()=>e.split(`
2
+ `),[e]);return(0,i.jsxs)(`div`,{"data-slot":`code-block`,className:t.cn(`overflow-hidden rounded-[var(--aui-card-radius,var(--radius-xl))] border border-[color:var(--aui-card-border,var(--border))] bg-card`,d),...f,children:[(o||a||s)&&(0,i.jsxs)(`div`,{className:`flex items-center justify-between gap-3 border-b border-[color:var(--aui-card-border,var(--border))] bg-[color:color-mix(in_oklch,var(--muted),transparent_72%)] px-3 py-2 text-xs text-muted-foreground`,children:[(0,i.jsxs)(`div`,{className:`flex min-w-0 items-center gap-2`,children:[o&&(0,i.jsx)(`span`,{className:`truncate font-medium text-foreground`,children:o}),a&&(0,i.jsx)(`span`,{className:`rounded bg-muted px-1.5 py-0.5 font-mono`,children:a})]}),s&&(0,i.jsx)(n.CopyButton,{value:e,size:`sm`,variant:`ghost`,copyLabel:`Copy`,copiedLabel:`Copied`})]}),(0,i.jsx)(`pre`,{className:t.cn(`overflow-x-auto p-3 text-sm leading-6`,c&&`whitespace-pre-wrap break-words`),style:u?{maxHeight:u,overflowY:`auto`}:void 0,children:l?(0,i.jsx)(`code`,{className:`grid`,children:p.map((e,t)=>(0,i.jsxs)(`span`,{className:`grid grid-cols-[auto_1fr] gap-4`,children:[(0,i.jsx)(`span`,{className:`select-none text-right text-xs text-muted-foreground/75`,children:t+1}),(0,i.jsx)(`span`,{children:e||` `})]},`${t}-${e}`))}):(0,i.jsx)(`code`,{children:e})})]})}exports.CodeBlock=a;
@@ -5,6 +5,8 @@ export type CodeBlockProps = React.ComponentProps<"div"> & {
5
5
  title?: React.ReactNode;
6
6
  showCopy?: boolean;
7
7
  wrap?: boolean;
8
+ lineNumbers?: boolean;
9
+ maxHeight?: number | string;
8
10
  };
9
- declare function CodeBlock({ code, language, title, showCopy, wrap, className, ...props }: CodeBlockProps): React.JSX.Element;
11
+ declare function CodeBlock({ code, language, title, showCopy, wrap, lineNumbers, maxHeight, className, ...props }: CodeBlockProps): React.JSX.Element;
10
12
  export { CodeBlock };
@@ -1,36 +1,50 @@
1
1
  import { cn as e } from "../../lib/utils.js";
2
2
  import { CopyButton as t } from "../actions/copy-button.js";
3
- import "react";
4
- import { jsx as n, jsxs as r } from "react/jsx-runtime";
3
+ import * as n from "react";
4
+ import { jsx as r, jsxs as i } from "react/jsx-runtime";
5
5
  //#region src/components/display/code-block.tsx
6
- function i({ code: i, language: a, title: o, showCopy: s = !0, wrap: c = !1, className: l, ...u }) {
7
- return /* @__PURE__ */ r("div", {
6
+ function a({ code: a, language: o, title: s, showCopy: c = !0, wrap: l = !1, lineNumbers: u = !1, maxHeight: d, className: f, ...p }) {
7
+ let m = n.useMemo(() => a.split("\n"), [a]);
8
+ return /* @__PURE__ */ i("div", {
8
9
  "data-slot": "code-block",
9
- className: e("overflow-hidden rounded-lg border bg-card", l),
10
- ...u,
11
- children: [(o || a || s) && /* @__PURE__ */ r("div", {
12
- className: "flex items-center justify-between gap-3 border-b px-3 py-2 text-xs text-muted-foreground",
13
- children: [/* @__PURE__ */ r("div", {
10
+ className: e("overflow-hidden rounded-[var(--aui-card-radius,var(--radius-xl))] border border-[color:var(--aui-card-border,var(--border))] bg-card", f),
11
+ ...p,
12
+ children: [(s || o || c) && /* @__PURE__ */ i("div", {
13
+ className: "flex items-center justify-between gap-3 border-b border-[color:var(--aui-card-border,var(--border))] bg-[color:color-mix(in_oklch,var(--muted),transparent_72%)] px-3 py-2 text-xs text-muted-foreground",
14
+ children: [/* @__PURE__ */ i("div", {
14
15
  className: "flex min-w-0 items-center gap-2",
15
- children: [o && /* @__PURE__ */ n("span", {
16
+ children: [s && /* @__PURE__ */ r("span", {
16
17
  className: "truncate font-medium text-foreground",
17
- children: o
18
- }), a && /* @__PURE__ */ n("span", {
18
+ children: s
19
+ }), o && /* @__PURE__ */ r("span", {
19
20
  className: "rounded bg-muted px-1.5 py-0.5 font-mono",
20
- children: a
21
+ children: o
21
22
  })]
22
- }), s && /* @__PURE__ */ n(t, {
23
- value: i,
23
+ }), c && /* @__PURE__ */ r(t, {
24
+ value: a,
24
25
  size: "sm",
25
26
  variant: "ghost",
26
27
  copyLabel: "Copy",
27
28
  copiedLabel: "Copied"
28
29
  })]
29
- }), /* @__PURE__ */ n("pre", {
30
- className: e("overflow-x-auto p-3 text-sm", c && "whitespace-pre-wrap break-words"),
31
- children: /* @__PURE__ */ n("code", { children: i })
30
+ }), /* @__PURE__ */ r("pre", {
31
+ className: e("overflow-x-auto p-3 text-sm leading-6", l && "whitespace-pre-wrap break-words"),
32
+ style: d ? {
33
+ maxHeight: d,
34
+ overflowY: "auto"
35
+ } : void 0,
36
+ children: u ? /* @__PURE__ */ r("code", {
37
+ className: "grid",
38
+ children: m.map((e, t) => /* @__PURE__ */ i("span", {
39
+ className: "grid grid-cols-[auto_1fr] gap-4",
40
+ children: [/* @__PURE__ */ r("span", {
41
+ className: "select-none text-right text-xs text-muted-foreground/75",
42
+ children: t + 1
43
+ }), /* @__PURE__ */ r("span", { children: e || " " })]
44
+ }, `${t}-${e}`))
45
+ }) : /* @__PURE__ */ r("code", { children: a })
32
46
  })]
33
47
  });
34
48
  }
35
49
  //#endregion
36
- export { i as CodeBlock };
50
+ export { a as CodeBlock };
@@ -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("./delta-badge.cjs");let i=require("react");i=e.__toESM(i,1);let a=require("react/jsx-runtime");function o({title:e,items:i,columns:o=2,className:s,...c}){return(0,a.jsxs)(n.Card,{"data-slot":`comparison-card`,className:s,...c,children:[e&&(0,a.jsx)(n.CardHeader,{className:`pb-3`,children:(0,a.jsx)(n.CardTitle,{className:`text-sm font-medium`,children:e})}),(0,a.jsx)(n.CardContent,{className:t.cn(e?`pt-0`:``),children:(0,a.jsx)(`div`,{className:t.cn(`grid gap-4`,o===2&&`grid-cols-2`,o===3&&`grid-cols-3`,o===4&&`grid-cols-2 sm:grid-cols-4`,!e&&`pt-6`),children:i.map((e,t)=>(0,a.jsxs)(`div`,{className:`flex flex-col gap-1`,children:[(0,a.jsx)(`span`,{className:`text-xs text-muted-foreground`,children:e.label}),(0,a.jsxs)(`div`,{className:`flex items-baseline gap-1.5`,children:[(0,a.jsx)(`span`,{className:`text-lg font-semibold leading-none`,children:e.value}),e.change&&(0,a.jsx)(r.DeltaBadge,{size:`sm`,value:e.change,trend:e.trend})]})]},t))})})]})}exports.ComparisonCard=o;
1
+ Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=require("../../_virtual/_rolldown/runtime.cjs"),t=require("../layout/stat-card.cjs");let n=require("react");n=e.__toESM(n,1);let r=require("react/jsx-runtime");function i({title:e,items:n,columns:i=2,...a}){return(0,r.jsx)(t.StatCard,{"data-slot":`comparison-card`,title:e,comparisonColumns:i,comparisonItems:n.map(e=>({label:e.label,value:e.value,change:e.change,trend:e.trend===`up`?`success`:e.trend===`down`?`danger`:`neutral`})),...a})}exports.ComparisonCard=i;
@@ -1,15 +1,15 @@
1
1
  import * as React from "react";
2
- import { Card } from "@/components/ui/card";
2
+ import { StatCard } from "@/components/layout/stat-card";
3
3
  export type ComparisonCardItem = {
4
4
  label: React.ReactNode;
5
5
  value: React.ReactNode;
6
6
  change?: React.ReactNode;
7
7
  trend?: "up" | "down" | "neutral";
8
8
  };
9
- export type ComparisonCardProps = React.ComponentProps<typeof Card> & {
9
+ export type ComparisonCardProps = Omit<React.ComponentProps<typeof StatCard>, "comparisonItems" | "comparisonColumns"> & {
10
10
  title?: React.ReactNode;
11
11
  items: ComparisonCardItem[];
12
12
  columns?: 2 | 3 | 4;
13
13
  };
14
- declare function ComparisonCard({ title, items, columns, className, ...props }: ComparisonCardProps): React.JSX.Element;
14
+ declare function ComparisonCard({ title, items, columns, ...props }: ComparisonCardProps): React.JSX.Element;
15
15
  export { ComparisonCard };
@@ -1,44 +1,20 @@
1
- import { cn as e } from "../../lib/utils.js";
2
- import { Card as t, CardContent as n, CardHeader as r, CardTitle as i } from "../ui/card/index.js";
3
- import { DeltaBadge as a } from "./delta-badge.js";
1
+ import { StatCard as e } from "../layout/stat-card.js";
4
2
  import "react";
5
- import { jsx as o, jsxs as s } from "react/jsx-runtime";
3
+ import { jsx as t } from "react/jsx-runtime";
6
4
  //#region src/components/display/comparison-card.tsx
7
- function c({ title: c, items: l, columns: u = 2, className: d, ...f }) {
8
- return /* @__PURE__ */ s(t, {
5
+ function n({ title: n, items: r, columns: i = 2, ...a }) {
6
+ return /* @__PURE__ */ t(e, {
9
7
  "data-slot": "comparison-card",
10
- className: d,
11
- ...f,
12
- children: [c && /* @__PURE__ */ o(r, {
13
- className: "pb-3",
14
- children: /* @__PURE__ */ o(i, {
15
- className: "text-sm font-medium",
16
- children: c
17
- })
18
- }), /* @__PURE__ */ o(n, {
19
- className: e(c ? "pt-0" : ""),
20
- children: /* @__PURE__ */ o("div", {
21
- className: e("grid gap-4", u === 2 && "grid-cols-2", u === 3 && "grid-cols-3", u === 4 && "grid-cols-2 sm:grid-cols-4", !c && "pt-6"),
22
- children: l.map((e, t) => /* @__PURE__ */ s("div", {
23
- className: "flex flex-col gap-1",
24
- children: [/* @__PURE__ */ o("span", {
25
- className: "text-xs text-muted-foreground",
26
- children: e.label
27
- }), /* @__PURE__ */ s("div", {
28
- className: "flex items-baseline gap-1.5",
29
- children: [/* @__PURE__ */ o("span", {
30
- className: "text-lg font-semibold leading-none",
31
- children: e.value
32
- }), e.change && /* @__PURE__ */ o(a, {
33
- size: "sm",
34
- value: e.change,
35
- trend: e.trend
36
- })]
37
- })]
38
- }, t))
39
- })
40
- })]
8
+ title: n,
9
+ comparisonColumns: i,
10
+ comparisonItems: r.map((e) => ({
11
+ label: e.label,
12
+ value: e.value,
13
+ change: e.change,
14
+ trend: e.trend === "up" ? "success" : e.trend === "down" ? "danger" : "neutral"
15
+ })),
16
+ ...a
41
17
  });
42
18
  }
43
19
  //#endregion
44
- export { c as ComparisonCard };
20
+ export { n as ComparisonCard };
@@ -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/card/index.cjs");let i=require("react");i=e.__toESM(i,1);let a=require("lucide-react"),o=require("react/jsx-runtime");var s={idle:{title:`Ready`,description:`No action has started yet.`,icon:(0,o.jsx)(a.CheckCircle2Icon,{})},loading:{title:`Loading`,description:`Please wait while data is being prepared.`,icon:(0,o.jsx)(a.Loader2Icon,{className:`animate-spin`})},empty:{title:`No data`,description:`There is nothing to show yet.`,icon:(0,o.jsx)(a.SearchXIcon,{})},error:{title:`Something went wrong`,description:`Try again or check the request.`,icon:(0,o.jsx)(a.AlertTriangleIcon,{})},success:{title:`Ready`,description:`Data loaded successfully.`,icon:(0,o.jsx)(a.CheckCircle2Icon,{})}};function c({status:e,title:i,description:a,actions:c,icon:l,compact:u=!1,children:d,retryLabel:f=`Retry`,onRetry:p,className:m,...h}){let g=s[e];return(0,o.jsx)(r.Card,{"data-slot":`data-state`,"data-status":e,className:t.cn(`min-w-0 border-border/75 bg-card/96 shadow-sm ring-1 ring-foreground/4`,m),...h,children:(0,o.jsxs)(r.CardContent,{className:t.cn(`flex flex-col items-center justify-center text-center`,u?`p-4`:`min-h-52 p-8`),children:[(0,o.jsx)(`div`,{className:t.cn(`mb-3 flex items-center justify-center rounded-full border border-border/70 bg-muted/45 text-muted-foreground shadow-[0_1px_0_rgba(255,255,255,0.05)] [&_svg]:size-5`,u?`size-9`:`size-12`),children:l??g.icon}),(0,o.jsx)(`div`,{className:t.cn(`font-semibold tracking-tight text-foreground`,u?`text-sm`:`text-base`),children:i??g.title}),(0,o.jsx)(`p`,{className:`mt-1 max-w-md text-sm text-muted-foreground`,children:a??g.description}),d&&(0,o.jsx)(`div`,{className:`mt-4 w-full`,children:d}),(c||p)&&(0,o.jsxs)(`div`,{className:`mt-4 flex flex-wrap justify-center gap-2`,children:[p&&(0,o.jsx)(n.Button,{size:`sm`,variant:e===`error`?`default`:`outline`,onClick:p,children:f}),c]})]})})}exports.DataState=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/card/index.cjs");let i=require("react");i=e.__toESM(i,1);let a=require("lucide-react"),o=require("react/jsx-runtime");var s={idle:{title:`Ready`,description:`No action has started yet.`,icon:(0,o.jsx)(a.CheckCircle2Icon,{})},loading:{title:`Loading`,description:`Please wait while data is being prepared.`,icon:(0,o.jsx)(a.Loader2Icon,{className:`animate-spin`})},empty:{title:`No data`,description:`There is nothing to show yet.`,icon:(0,o.jsx)(a.SearchXIcon,{})},error:{title:`Something went wrong`,description:`Try again or check the request.`,icon:(0,o.jsx)(a.AlertTriangleIcon,{})},success:{title:`Ready`,description:`Data loaded successfully.`,icon:(0,o.jsx)(a.CheckCircle2Icon,{})}},c={default:`text-muted-foreground`,muted:`text-muted-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`};function l({status:e,title:i,description:l,badge:u,actions:d,footer:f,icon:p,tone:m,variant:h=`card`,compact:g=!1,align:_=`center`,query:v,children:y,retryLabel:b=`Retry`,onRetry:x,clearLabel:S=`Clear`,onClear:C,className:w,...T}){let E=s[e],D=m??(e===`error`?`danger`:e===`success`?`success`:`default`),O=h===`plain`||h===`inline`,k=(0,o.jsxs)(`div`,{className:t.cn(`flex flex-col justify-center`,_===`center`?`items-center text-center`:`items-start text-left`,g||h===`inline`?`p-4`:`min-h-52 p-8`),children:[(0,o.jsx)(`div`,{className:t.cn(`mb-3 flex items-center justify-center rounded-full border border-border/70 bg-muted/45 shadow-[0_1px_0_rgba(255,255,255,0.05)] [&_svg]:size-5`,c[D],g||h===`inline`?`size-9`:`size-12`),children:p??E.icon}),(0,o.jsxs)(`div`,{className:t.cn(`flex flex-wrap items-center gap-2`,_===`center`?`justify-center`:`justify-start`),children:[(0,o.jsx)(`div`,{className:t.cn(`font-semibold tracking-tight text-foreground`,g?`text-sm`:`text-base`),children:i??E.title}),u]}),(0,o.jsx)(`p`,{className:`mt-1 max-w-md text-sm text-muted-foreground`,children:l??E.description}),v&&(0,o.jsx)(`div`,{className:`mt-3 max-w-full rounded-md border border-border/70 bg-muted/45 px-2.5 py-1 text-sm text-muted-foreground`,children:v}),y&&(0,o.jsx)(`div`,{className:`mt-4 w-full`,children:y}),(d||x||C)&&(0,o.jsxs)(`div`,{className:t.cn(`mt-4 flex flex-wrap gap-2`,_===`center`?`justify-center`:`justify-start`),children:[x&&(0,o.jsx)(n.Button,{size:`sm`,variant:e===`error`?`default`:`outline`,onClick:x,children:b}),C&&(0,o.jsxs)(n.Button,{size:`sm`,variant:`ghost`,onClick:C,children:[(0,o.jsx)(a.XIcon,{"data-icon":`inline-start`}),S]}),d]}),f?(0,o.jsx)(`div`,{className:`mt-4 w-full`,children:f}):null]});return O?(0,o.jsx)(`div`,{"data-slot":`data-state`,"data-status":e,"data-variant":h,className:t.cn(h===`inline`?`rounded-lg border border-border/70 bg-muted/20`:`min-w-0`,w),...T,children:k}):(0,o.jsx)(r.Card,{"data-slot":`data-state`,"data-status":e,"data-variant":h,className:t.cn(`min-w-0 border-border/75 bg-card/96 shadow-sm ring-1 ring-foreground/4`,w),...T,children:(0,o.jsx)(r.CardContent,{className:`p-0`,children:k})})}exports.DataState=l;
@@ -1,16 +1,26 @@
1
1
  import * as React from "react";
2
2
  import { Card } from "@/components/ui/card";
3
3
  export type DataStateStatus = "idle" | "loading" | "empty" | "error" | "success";
4
- export type DataStateProps = React.ComponentProps<typeof Card> & {
4
+ export type DataStateVariant = "card" | "plain" | "inline";
5
+ export type DataStateTone = "default" | "muted" | "success" | "warning" | "danger" | "info";
6
+ export type DataStateProps = Omit<React.ComponentProps<typeof Card>, "content" | "title" | "description" | "variant" | "tone"> & {
5
7
  status: DataStateStatus;
6
8
  title?: React.ReactNode;
7
9
  description?: React.ReactNode;
10
+ badge?: React.ReactNode;
8
11
  actions?: React.ReactNode;
12
+ footer?: React.ReactNode;
9
13
  icon?: React.ReactNode;
14
+ tone?: DataStateTone;
15
+ variant?: DataStateVariant;
10
16
  compact?: boolean;
17
+ align?: "start" | "center";
18
+ query?: React.ReactNode;
11
19
  children?: React.ReactNode;
12
20
  retryLabel?: React.ReactNode;
13
21
  onRetry?: () => void;
22
+ clearLabel?: React.ReactNode;
23
+ onClear?: () => void;
14
24
  };
15
- declare function DataState({ status, title, description, actions, icon, compact, children, retryLabel, onRetry, className, ...props }: DataStateProps): React.JSX.Element;
25
+ declare function DataState({ status, title, description, badge, actions, footer, icon, tone, variant, compact, align, query, children, retryLabel, onRetry, clearLabel, onClear, className, ...props }: DataStateProps): React.JSX.Element;
16
26
  export { DataState };
@@ -2,74 +2,112 @@ import { cn as e } from "../../lib/utils.js";
2
2
  import { Button as t } from "../ui/button/index.js";
3
3
  import { Card as n, CardContent as r } from "../ui/card/index.js";
4
4
  import "react";
5
- import { AlertTriangleIcon as i, CheckCircle2Icon as a, Loader2Icon as o, SearchXIcon as s } from "lucide-react";
6
- import { jsx as c, jsxs as l } from "react/jsx-runtime";
5
+ import { AlertTriangleIcon as i, CheckCircle2Icon as a, Loader2Icon as o, SearchXIcon as s, XIcon as c } from "lucide-react";
6
+ import { jsx as l, jsxs as u } from "react/jsx-runtime";
7
7
  //#region src/components/display/data-state.tsx
8
- var u = {
8
+ var d = {
9
9
  idle: {
10
10
  title: "Ready",
11
11
  description: "No action has started yet.",
12
- icon: /* @__PURE__ */ c(a, {})
12
+ icon: /* @__PURE__ */ l(a, {})
13
13
  },
14
14
  loading: {
15
15
  title: "Loading",
16
16
  description: "Please wait while data is being prepared.",
17
- icon: /* @__PURE__ */ c(o, { className: "animate-spin" })
17
+ icon: /* @__PURE__ */ l(o, { className: "animate-spin" })
18
18
  },
19
19
  empty: {
20
20
  title: "No data",
21
21
  description: "There is nothing to show yet.",
22
- icon: /* @__PURE__ */ c(s, {})
22
+ icon: /* @__PURE__ */ l(s, {})
23
23
  },
24
24
  error: {
25
25
  title: "Something went wrong",
26
26
  description: "Try again or check the request.",
27
- icon: /* @__PURE__ */ c(i, {})
27
+ icon: /* @__PURE__ */ l(i, {})
28
28
  },
29
29
  success: {
30
30
  title: "Ready",
31
31
  description: "Data loaded successfully.",
32
- icon: /* @__PURE__ */ c(a, {})
32
+ icon: /* @__PURE__ */ l(a, {})
33
33
  }
34
+ }, f = {
35
+ default: "text-muted-foreground",
36
+ muted: "text-muted-foreground",
37
+ success: "text-emerald-600 dark:text-emerald-400",
38
+ warning: "text-amber-600 dark:text-amber-400",
39
+ danger: "text-destructive",
40
+ info: "text-blue-600 dark:text-blue-400"
34
41
  };
35
- function d({ status: i, title: a, description: o, actions: s, icon: d, compact: f = !1, children: p, retryLabel: m = "Retry", onRetry: h, className: g, ..._ }) {
36
- let v = u[i];
37
- return /* @__PURE__ */ c(n, {
42
+ function p({ status: i, title: a, description: o, badge: s, actions: p, footer: m, icon: h, tone: g, variant: _ = "card", compact: v = !1, align: y = "center", query: b, children: x, retryLabel: S = "Retry", onRetry: C, clearLabel: w = "Clear", onClear: T, className: E, ...D }) {
43
+ let O = d[i], k = g ?? (i === "error" ? "danger" : i === "success" ? "success" : "default"), A = _ === "plain" || _ === "inline", j = /* @__PURE__ */ u("div", {
44
+ className: e("flex flex-col justify-center", y === "center" ? "items-center text-center" : "items-start text-left", v || _ === "inline" ? "p-4" : "min-h-52 p-8"),
45
+ children: [
46
+ /* @__PURE__ */ l("div", {
47
+ className: e("mb-3 flex items-center justify-center rounded-full border border-border/70 bg-muted/45 shadow-[0_1px_0_rgba(255,255,255,0.05)] [&_svg]:size-5", f[k], v || _ === "inline" ? "size-9" : "size-12"),
48
+ children: h ?? O.icon
49
+ }),
50
+ /* @__PURE__ */ u("div", {
51
+ className: e("flex flex-wrap items-center gap-2", y === "center" ? "justify-center" : "justify-start"),
52
+ children: [/* @__PURE__ */ l("div", {
53
+ className: e("font-semibold tracking-tight text-foreground", v ? "text-sm" : "text-base"),
54
+ children: a ?? O.title
55
+ }), s]
56
+ }),
57
+ /* @__PURE__ */ l("p", {
58
+ className: "mt-1 max-w-md text-sm text-muted-foreground",
59
+ children: o ?? O.description
60
+ }),
61
+ b && /* @__PURE__ */ l("div", {
62
+ className: "mt-3 max-w-full rounded-md border border-border/70 bg-muted/45 px-2.5 py-1 text-sm text-muted-foreground",
63
+ children: b
64
+ }),
65
+ x && /* @__PURE__ */ l("div", {
66
+ className: "mt-4 w-full",
67
+ children: x
68
+ }),
69
+ (p || C || T) && /* @__PURE__ */ u("div", {
70
+ className: e("mt-4 flex flex-wrap gap-2", y === "center" ? "justify-center" : "justify-start"),
71
+ children: [
72
+ C && /* @__PURE__ */ l(t, {
73
+ size: "sm",
74
+ variant: i === "error" ? "default" : "outline",
75
+ onClick: C,
76
+ children: S
77
+ }),
78
+ T && /* @__PURE__ */ u(t, {
79
+ size: "sm",
80
+ variant: "ghost",
81
+ onClick: T,
82
+ children: [/* @__PURE__ */ l(c, { "data-icon": "inline-start" }), w]
83
+ }),
84
+ p
85
+ ]
86
+ }),
87
+ m ? /* @__PURE__ */ l("div", {
88
+ className: "mt-4 w-full",
89
+ children: m
90
+ }) : null
91
+ ]
92
+ });
93
+ return A ? /* @__PURE__ */ l("div", {
38
94
  "data-slot": "data-state",
39
95
  "data-status": i,
40
- className: e("min-w-0 border-border/75 bg-card/96 shadow-sm ring-1 ring-foreground/4", g),
41
- ..._,
96
+ "data-variant": _,
97
+ className: e(_ === "inline" ? "rounded-lg border border-border/70 bg-muted/20" : "min-w-0", E),
98
+ ...D,
99
+ children: j
100
+ }) : /* @__PURE__ */ l(n, {
101
+ "data-slot": "data-state",
102
+ "data-status": i,
103
+ "data-variant": _,
104
+ className: e("min-w-0 border-border/75 bg-card/96 shadow-sm ring-1 ring-foreground/4", E),
105
+ ...D,
42
106
  children: /* @__PURE__ */ l(r, {
43
- className: e("flex flex-col items-center justify-center text-center", f ? "p-4" : "min-h-52 p-8"),
44
- children: [
45
- /* @__PURE__ */ c("div", {
46
- className: e("mb-3 flex items-center justify-center rounded-full border border-border/70 bg-muted/45 text-muted-foreground shadow-[0_1px_0_rgba(255,255,255,0.05)] [&_svg]:size-5", f ? "size-9" : "size-12"),
47
- children: d ?? v.icon
48
- }),
49
- /* @__PURE__ */ c("div", {
50
- className: e("font-semibold tracking-tight text-foreground", f ? "text-sm" : "text-base"),
51
- children: a ?? v.title
52
- }),
53
- /* @__PURE__ */ c("p", {
54
- className: "mt-1 max-w-md text-sm text-muted-foreground",
55
- children: o ?? v.description
56
- }),
57
- p && /* @__PURE__ */ c("div", {
58
- className: "mt-4 w-full",
59
- children: p
60
- }),
61
- (s || h) && /* @__PURE__ */ l("div", {
62
- className: "mt-4 flex flex-wrap justify-center gap-2",
63
- children: [h && /* @__PURE__ */ c(t, {
64
- size: "sm",
65
- variant: i === "error" ? "default" : "outline",
66
- onClick: h,
67
- children: m
68
- }), s]
69
- })
70
- ]
107
+ className: "p-0",
108
+ children: j
71
109
  })
72
110
  });
73
111
  }
74
112
  //#endregion
75
- export { d as DataState };
113
+ export { p as DataState };
@@ -1 +1 @@
1
- Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=require("../../showcase/create-demo.cjs");var t=e.createShowcaseDemoRegistry([e.component(`description-list`,`DescriptionList`,`display`,`Structured key-value details for entity, invoice and profile pages.`),e.component(`progress`,`Progress`,`display`,`Linear progress with label, value formatter, tone and indeterminate state.`),e.component(`progress-circle`,`ProgressCircle`,`display`,`Compact circular progress for sidebars and status cards.`),e.component(`timeline`,`Timeline`,`display`,`Vertical or horizontal event stream for workflow history.`),e.component(`status-dot`,`StatusDot`,`display`,`Tiny live status indicator with optional pulse animation.`),e.component(`user-card`,`UserCard`,`display`,`User summary row with avatar, metadata and actions.`),e.component(`delta-badge`,`DeltaBadge`,`display`,`Compact positive, negative, and risk deltas for metric summaries.`),e.component(`entity-header`,`EntityHeader`,`display`,`Top summary row for a customer, invoice, or workspace.`),e.component(`notification-center`,`NotificationCenter`,`display`,`Compact activity and notifications stream.`),e.component(`entity-card`,`EntityCard`,`display`,`Structured summary card with title, meta, state and actions.`),e.component(`file-card`,`FileCard`,`display`,`Compact file summary with state and actions.`),e.component(`data-list`,`DataList`,`display`,`Readable title and description rows for compact operational lists.`),e.component(`status-legend`,`StatusLegend`,`display`,`Explain status meaning and counts in a compact legend.`),e.component(`trend-card`,`TrendCard`,`display`,`Metric summary card with trend context.`),e.component(`comparison-card`,`ComparisonCard`,`display`,`Compare current and previous values in one compact card.`)]);exports.displayShowcaseDemoRegistry=t;
1
+ Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=require("../../showcase/create-demo.cjs");var t=e.createShowcaseDemoRegistry([e.component(`description-list`,`DescriptionList`,`display`,`Structured key-value details for entity, invoice and profile pages.`),e.component(`progress`,`Progress`,`display`,`Linear progress with label, value formatter, tone and indeterminate state.`),e.component(`progress-circle`,`ProgressCircle`,`display`,`Compact circular progress for sidebars and status cards.`),e.component(`timeline`,`Timeline`,`display`,`Vertical or horizontal event stream for workflow history.`),e.component(`status-dot`,`StatusDot`,`display`,`Tiny live status indicator with optional pulse animation.`),e.component(`user-card`,`UserCard`,`display`,`User summary row with avatar, metadata and actions.`),e.component(`delta-badge`,`DeltaBadge`,`display`,`Compact positive, negative, and risk deltas for metric summaries.`),e.component(`notification-center`,`NotificationCenter`,`display`,`Compact activity and notifications stream.`),e.component(`data-list`,`DataList`,`display`,`Readable title and description rows for compact operational lists.`),e.component(`status-legend`,`StatusLegend`,`display`,`Explain status meaning and counts in a compact legend.`),e.component(`trend-card`,`TrendCard`,`display`,`Metric summary card with trend context.`)]);exports.displayShowcaseDemoRegistry=t;
@@ -8,14 +8,10 @@ var n = t([
8
8
  e("status-dot", "StatusDot", "display", "Tiny live status indicator with optional pulse animation."),
9
9
  e("user-card", "UserCard", "display", "User summary row with avatar, metadata and actions."),
10
10
  e("delta-badge", "DeltaBadge", "display", "Compact positive, negative, and risk deltas for metric summaries."),
11
- e("entity-header", "EntityHeader", "display", "Top summary row for a customer, invoice, or workspace."),
12
11
  e("notification-center", "NotificationCenter", "display", "Compact activity and notifications stream."),
13
- e("entity-card", "EntityCard", "display", "Structured summary card with title, meta, state and actions."),
14
- e("file-card", "FileCard", "display", "Compact file summary with state and actions."),
15
12
  e("data-list", "DataList", "display", "Readable title and description rows for compact operational lists."),
16
13
  e("status-legend", "StatusLegend", "display", "Explain status meaning and counts in a compact legend."),
17
- e("trend-card", "TrendCard", "display", "Metric summary card with trend context."),
18
- e("comparison-card", "ComparisonCard", "display", "Compare current and previous values in one compact card.")
14
+ e("trend-card", "TrendCard", "display", "Metric summary card with trend context.")
19
15
  ]);
20
16
  //#endregion
21
17
  export { n as displayShowcaseDemoRegistry };
@@ -1 +1 @@
1
- Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=require("./description-list.cjs"),t=require("./data-list.cjs"),n=require("./activity-feed.cjs"),r=require("./avatar.cjs"),i=require("./entity-header.cjs"),a=require("./descriptions.cjs"),o=require("./keyboard-shortcut.cjs"),s=require("./kanban.cjs"),c=require("./code-block.cjs"),l=require("./data-state.cjs"),u=require("./entity-card.cjs"),d=require("./file-card.cjs"),f=require("./list.cjs"),p=require("./metric-grid.cjs"),m=require("./progress.cjs"),h=require("./progress-circle.cjs"),g=require("./property-grid.cjs"),_=require("./key-value-card.cjs"),v=require("./result.cjs"),y=require("./statistic.cjs"),b=require("./status-dot.cjs"),x=require("./status-legend.cjs"),S=require("./tag-list.cjs"),C=require("./timeline.cjs"),w=require("./tree-view.cjs"),T=require("./user-card.cjs"),E=require("./delta-badge.cjs"),D=require("./trend-card.cjs"),O=require("./comparison-card.cjs"),k=require("./skeleton-table.cjs"),A=require("./skeleton-form.cjs"),j=require("./smart-card.cjs");exports.ActivityFeed=n.ActivityFeed,exports.Avatar=r.Avatar,exports.AvatarGroup=r.AvatarGroup,exports.CodeBlock=c.CodeBlock,exports.ComparisonCard=O.ComparisonCard,exports.DataList=t.DataList,exports.DataListRow=t.DataListRow,exports.DataState=l.DataState,exports.DeltaBadge=E.DeltaBadge,exports.DescriptionList=e.DescriptionList,exports.Descriptions=a.Descriptions,exports.EntityCard=u.EntityCard,exports.EntityHeader=i.EntityHeader,exports.FileCard=d.FileCard,exports.InfoCard=j.SmartCard,exports.KanbanBoard=s.KanbanBoard,exports.KeyValueCard=_.KeyValueCard,exports.KeyboardShortcut=o.KeyboardShortcut,exports.List=f.List,exports.ListRow=f.ListRow,exports.MetricGrid=p.MetricGrid,exports.Progress=m.Progress,exports.ProgressCard=m.ProgressCard,exports.ProgressCircle=h.ProgressCircle,exports.PropertyGrid=g.PropertyGrid,exports.Result=v.Result,exports.ResultAction=v.ResultAction,exports.SkeletonForm=A.SkeletonForm,exports.SkeletonTable=k.SkeletonTable,exports.SmartCard=j.SmartCard,exports.Statistic=y.Statistic,exports.StatisticCard=y.StatisticCard,exports.StatisticGrid=y.StatisticGrid,exports.StatusDot=b.StatusDot,exports.StatusLegend=x.StatusLegend,exports.TagList=S.TagList,exports.Timeline=C.Timeline,exports.TreeView=w.TreeView,exports.TrendCard=D.TrendCard,exports.UserCard=T.UserCard,exports.getProgressPercent=m.getProgressPercent;
1
+ Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=require("./description-list.cjs"),t=require("./data-list.cjs"),n=require("./activity-feed.cjs"),r=require("./avatar.cjs"),i=require("./descriptions.cjs"),a=require("./kanban.cjs"),o=require("./code-block.cjs"),s=require("./data-state.cjs"),c=require("./list.cjs"),l=require("./metric-grid.cjs"),u=require("./progress.cjs"),d=require("./progress-circle.cjs"),f=require("./property-grid.cjs"),p=require("./result.cjs"),m=require("./statistic.cjs"),h=require("./status-dot.cjs"),g=require("./status-legend.cjs"),_=require("./timeline.cjs"),v=require("./tree-view.cjs"),y=require("./user-card.cjs"),b=require("./delta-badge.cjs"),x=require("./trend-card.cjs"),S=require("./comparison-card.cjs"),C=require("./smart-card.cjs");exports.ActivityFeed=n.ActivityFeed,exports.Avatar=r.Avatar,exports.AvatarGroup=r.AvatarGroup,exports.CodeBlock=o.CodeBlock,exports.ComparisonCard=S.ComparisonCard,exports.DataList=t.DataList,exports.DataListRow=t.DataListRow,exports.DataState=s.DataState,exports.DeltaBadge=b.DeltaBadge,exports.DescriptionList=e.DescriptionList,exports.Descriptions=i.Descriptions,exports.InfoCard=C.SmartCard,exports.KanbanBoard=a.KanbanBoard,exports.List=c.List,exports.ListRow=c.ListRow,exports.MetricGrid=l.MetricGrid,exports.Progress=u.Progress,exports.ProgressCard=u.ProgressCard,exports.ProgressCircle=d.ProgressCircle,exports.PropertyGrid=f.PropertyGrid,exports.Result=p.Result,exports.ResultAction=p.ResultAction,exports.SmartCard=C.SmartCard,exports.Statistic=m.Statistic,exports.StatisticCard=m.StatisticCard,exports.StatisticGrid=m.StatisticGrid,exports.StatusDot=h.StatusDot,exports.StatusLegend=g.StatusLegend,exports.Timeline=_.Timeline,exports.TreeView=v.TreeView,exports.TrendCard=x.TrendCard,exports.UserCard=y.UserCard,exports.getProgressPercent=u.getProgressPercent;
@@ -2,31 +2,23 @@ export * from "./description-list";
2
2
  export * from "./data-list";
3
3
  export * from "./activity-feed";
4
4
  export * from "./avatar";
5
- export * from "./entity-header";
6
5
  export * from "./descriptions";
7
- export * from "./keyboard-shortcut";
8
6
  export * from "./kanban";
9
7
  export * from "./code-block";
10
8
  export * from "./data-state";
11
- export * from "./entity-card";
12
- export * from "./file-card";
13
9
  export * from "./list";
14
10
  export * from "./metric-grid";
15
11
  export * from "./progress";
16
12
  export * from "./progress-circle";
17
13
  export * from "./property-grid";
18
- export * from "./key-value-card";
19
14
  export * from "./result";
20
15
  export * from "./statistic";
21
16
  export * from "./status-dot";
22
17
  export * from "./status-legend";
23
- export * from "./tag-list";
24
18
  export * from "./timeline";
25
19
  export * from "./tree-view";
26
20
  export * from "./user-card";
27
21
  export * from "./trend-card";
28
22
  export * from "./comparison-card";
29
23
  export * from "./delta-badge";
30
- export * from "./skeleton-table";
31
- export * from "./skeleton-form";
32
24
  export { SmartCard as InfoCard, SmartCard, type SmartCardClassNames, type SmartCardClassNames as InfoCardClassNames, type SmartCardDensity, type SmartCardDensity as InfoCardDensity, type SmartCardOrientation, type SmartCardOrientation as InfoCardOrientation, type SmartCardProps, type SmartCardProps as InfoCardProps, type SmartCardRenderContext, type SmartCardRenderContext as InfoCardRenderContext, type SmartCardSize, type SmartCardSize as InfoCardSize, type SmartCardVariant, type SmartCardVariant as InfoCardVariant, } from "./smart-card";