tembro 2.0.5 → 2.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (381) hide show
  1. package/dist/components/calendar/calendar.cjs +1 -1
  2. package/dist/components/calendar/calendar.d.ts +2 -1
  3. package/dist/components/calendar/calendar.js +126 -122
  4. package/dist/components/calendar/date-range-picker.cjs +1 -1
  5. package/dist/components/calendar/date-range-picker.d.ts +2 -1
  6. package/dist/components/calendar/date-range-picker.js +39 -39
  7. package/dist/components/charts/charts.cjs +1 -1
  8. package/dist/components/charts/charts.d.ts +13 -4
  9. package/dist/components/charts/charts.js +76 -46
  10. package/dist/components/charts/progress-ring.cjs +1 -1
  11. package/dist/components/charts/progress-ring.d.ts +3 -1
  12. package/dist/components/charts/progress-ring.js +11 -10
  13. package/dist/components/data-table/data-table-column-visibility-menu.cjs +1 -1
  14. package/dist/components/data-table/data-table-column-visibility-menu.d.ts +4 -1
  15. package/dist/components/data-table/data-table-column-visibility-menu.js +36 -8
  16. package/dist/components/data-table/data-table-pagination.cjs +1 -1
  17. package/dist/components/data-table/data-table-pagination.js +4 -4
  18. package/dist/components/data-table/data-table-toolbar.cjs +1 -1
  19. package/dist/components/data-table/data-table-toolbar.js +12 -13
  20. package/dist/components/data-table/data-table.cjs +1 -1
  21. package/dist/components/data-table/data-table.d.ts +2 -2
  22. package/dist/components/data-table/data-table.js +2 -1
  23. package/dist/components/display/carousel.cjs +1 -1
  24. package/dist/components/display/carousel.d.ts +15 -1
  25. package/dist/components/display/carousel.js +128 -86
  26. package/dist/components/display/code-block.cjs +2 -2
  27. package/dist/components/display/code-block.d.ts +2 -1
  28. package/dist/components/display/code-block.js +17 -12
  29. package/dist/components/display/delta-badge.cjs +1 -1
  30. package/dist/components/display/delta-badge.d.ts +2 -1
  31. package/dist/components/display/delta-badge.js +11 -7
  32. package/dist/components/display/kanban.cjs +1 -1
  33. package/dist/components/display/kanban.d.ts +4 -1
  34. package/dist/components/display/kanban.js +60 -33
  35. package/dist/components/display/metric-grid.cjs +1 -1
  36. package/dist/components/display/metric-grid.d.ts +1 -0
  37. package/dist/components/display/metric-grid.js +1 -1
  38. package/dist/components/display/qr-code.cjs +1 -1
  39. package/dist/components/display/qr-code.d.ts +2 -1
  40. package/dist/components/display/qr-code.js +19 -16
  41. package/dist/components/display/smart-card.d.ts +1 -1
  42. package/dist/components/display/status-legend.d.ts +1 -1
  43. package/dist/components/display/tag.cjs +1 -1
  44. package/dist/components/display/tag.d.ts +2 -1
  45. package/dist/components/display/tag.js +28 -22
  46. package/dist/components/display/tree-view.cjs +1 -1
  47. package/dist/components/display/tree-view.d.ts +9 -1
  48. package/dist/components/display/tree-view.js +104 -40
  49. package/dist/components/display/trend-card.cjs +1 -1
  50. package/dist/components/display/trend-card.js +27 -41
  51. package/dist/components/feedback/alert.cjs +1 -1
  52. package/dist/components/feedback/alert.d.ts +2 -1
  53. package/dist/components/feedback/alert.js +6 -6
  54. package/dist/components/feedback/loading-state.cjs +1 -1
  55. package/dist/components/feedback/loading-state.d.ts +3 -1
  56. package/dist/components/feedback/loading-state.js +23 -10
  57. package/dist/components/feedback/page-state.cjs +1 -1
  58. package/dist/components/feedback/page-state.d.ts +2 -1
  59. package/dist/components/feedback/page-state.js +7 -4
  60. package/dist/components/form/form-field-shell.cjs +1 -1
  61. package/dist/components/form/form-field-shell.d.ts +4 -2
  62. package/dist/components/form/form-field-shell.js +57 -41
  63. package/dist/components/form/form-input.cjs +1 -1
  64. package/dist/components/form/form-input.d.ts +3 -4
  65. package/dist/components/form/form-input.js +259 -257
  66. package/dist/components/form/form-select.cjs +1 -1
  67. package/dist/components/form/form-select.d.ts +2 -2
  68. package/dist/components/form/form-select.js +8 -6
  69. package/dist/components/form/form-switch.cjs +1 -1
  70. package/dist/components/form/form-switch.d.ts +1 -1
  71. package/dist/components/form/form-switch.js +58 -54
  72. package/dist/components/form/form-textarea.cjs +1 -1
  73. package/dist/components/form/form-textarea.d.ts +1 -1
  74. package/dist/components/form/form-textarea.js +29 -27
  75. package/dist/components/inputs/async-select.d.ts +3 -0
  76. package/dist/components/inputs/search-input.d.ts +3 -0
  77. package/dist/components/inputs/simple-select.cjs +1 -1
  78. package/dist/components/inputs/simple-select.d.ts +10 -32
  79. package/dist/components/inputs/simple-select.js +5 -101
  80. package/dist/components/layout/app-sidebar.cjs +1 -1
  81. package/dist/components/layout/app-sidebar.d.ts +1 -0
  82. package/dist/components/layout/app-sidebar.js +36 -36
  83. package/dist/components/layout/breadcrumbs.cjs +1 -1
  84. package/dist/components/layout/breadcrumbs.d.ts +2 -1
  85. package/dist/components/layout/breadcrumbs.js +7 -7
  86. package/dist/components/modern/calendar-scheduler.cjs +1 -1
  87. package/dist/components/modern/calendar-scheduler.d.ts +5 -1
  88. package/dist/components/modern/calendar-scheduler.js +47 -28
  89. package/dist/components/modern/dual-list-picker.cjs +1 -1
  90. package/dist/components/modern/dual-list-picker.d.ts +5 -1
  91. package/dist/components/modern/dual-list-picker.js +81 -23
  92. package/dist/components/modern/rich-text-editor.cjs +1 -1
  93. package/dist/components/modern/rich-text-editor.d.ts +3 -1
  94. package/dist/components/modern/rich-text-editor.js +12 -9
  95. package/dist/components/modern/tour.cjs +1 -1
  96. package/dist/components/modern/tour.d.ts +5 -1
  97. package/dist/components/modern/tour.js +57 -35
  98. package/dist/components/navigation/command-bar.cjs +1 -1
  99. package/dist/components/navigation/command-bar.d.ts +3 -1
  100. package/dist/components/navigation/command-bar.js +10 -7
  101. package/dist/components/navigation/demo.cjs +1 -1
  102. package/dist/components/navigation/demo.js +0 -1
  103. package/dist/components/navigation/nav-tabs.cjs +1 -1
  104. package/dist/components/navigation/nav-tabs.js +39 -27
  105. package/dist/components/navigation/page-tabs.cjs +1 -1
  106. package/dist/components/navigation/page-tabs.js +41 -30
  107. package/dist/components/navigation/pagination.cjs +1 -1
  108. package/dist/components/navigation/pagination.d.ts +7 -1
  109. package/dist/components/navigation/pagination.js +48 -25
  110. package/dist/components/notifications/notification-center.cjs +1 -1
  111. package/dist/components/notifications/notification-center.d.ts +3 -1
  112. package/dist/components/notifications/notification-center.js +56 -38
  113. package/dist/components/notifications/toast.cjs +1 -1
  114. package/dist/components/notifications/toast.d.ts +1 -0
  115. package/dist/components/notifications/toast.js +4 -0
  116. package/dist/components/overlay/alert-dialog.cjs +1 -1
  117. package/dist/components/overlay/alert-dialog.js +1 -1
  118. package/dist/components/overlay/confirm-dialog.cjs +1 -1
  119. package/dist/components/overlay/confirm-dialog.d.ts +4 -2
  120. package/dist/components/overlay/confirm-dialog.js +31 -22
  121. package/dist/components/overlay/drawer.cjs +1 -1
  122. package/dist/components/overlay/drawer.d.ts +3 -1
  123. package/dist/components/overlay/drawer.js +24 -16
  124. package/dist/components/ui/accordion/index.d.ts +4 -0
  125. package/dist/components/ui/badge/index.cjs +1 -1
  126. package/dist/components/ui/badge/index.d.ts +1 -1
  127. package/dist/components/ui/badge/index.js +2 -1
  128. package/dist/components/ui/button/index.cjs +1 -1
  129. package/dist/components/ui/button/index.d.ts +2 -1
  130. package/dist/components/ui/button/index.js +13 -10
  131. package/dist/components/ui/card/index.cjs +1 -1
  132. package/dist/components/ui/card/index.d.ts +13 -2
  133. package/dist/components/ui/card/index.js +74 -49
  134. package/dist/components/ui/dialog/index.cjs +1 -1
  135. package/dist/components/ui/dialog/index.js +2 -1
  136. package/dist/components/ui/hover-card.cjs +1 -1
  137. package/dist/components/ui/hover-card.d.ts +11 -3
  138. package/dist/components/ui/hover-card.js +29 -24
  139. package/dist/components/ui/input/index.cjs +1 -1
  140. package/dist/components/ui/input/index.d.ts +9 -1
  141. package/dist/components/ui/input/index.js +63 -30
  142. package/dist/components/ui/popover/index.cjs +1 -1
  143. package/dist/components/ui/popover/index.d.ts +2 -2
  144. package/dist/components/ui/popover/index.js +6 -5
  145. package/dist/components/ui/radio-group/index.cjs +1 -1
  146. package/dist/components/ui/radio-group/index.d.ts +5 -1
  147. package/dist/components/ui/radio-group/index.js +50 -16
  148. package/dist/components/ui/right-click-menu/index.cjs +1 -1
  149. package/dist/components/ui/right-click-menu/index.d.ts +5 -1
  150. package/dist/components/ui/right-click-menu/index.js +77 -23
  151. package/dist/components/ui/segmented-control/index.cjs +1 -1
  152. package/dist/components/ui/segmented-control/index.d.ts +2 -1
  153. package/dist/components/ui/segmented-control/index.js +23 -11
  154. package/dist/components/ui/select/index.cjs +1 -1
  155. package/dist/components/ui/select/index.d.ts +40 -1
  156. package/dist/components/ui/select/index.js +159 -48
  157. package/dist/components/ui/switch/index.cjs +1 -1
  158. package/dist/components/ui/switch/index.d.ts +18 -0
  159. package/dist/components/ui/switch/index.js +47 -17
  160. package/dist/components/ui/tabs/index.cjs +1 -1
  161. package/dist/components/ui/tabs/index.d.ts +14 -4
  162. package/dist/components/ui/tabs/index.js +11 -8
  163. package/dist/components/ui/textarea/index.cjs +1 -1
  164. package/dist/components/ui/textarea/index.d.ts +10 -2
  165. package/dist/components/ui/textarea/index.js +37 -8
  166. package/dist/components/ui/textarea.cjs +1 -0
  167. package/dist/components/ui/textarea.d.ts +1 -0
  168. package/dist/components/ui/textarea.js +2 -0
  169. package/dist/components/ui/tooltip/index.cjs +1 -1
  170. package/dist/components/ui/tooltip/index.d.ts +11 -3
  171. package/dist/components/ui/tooltip/index.js +41 -20
  172. package/dist/components/upload/file-upload.cjs +1 -1
  173. package/dist/components/upload/file-upload.d.ts +8 -1
  174. package/dist/components/upload/file-upload.js +132 -100
  175. package/dist/components/upload/image-upload.cjs +1 -1
  176. package/dist/components/upload/image-upload.d.ts +5 -1
  177. package/dist/components/upload/image-upload.js +34 -9
  178. package/dist/index.cjs +1 -1
  179. package/dist/index.js +31 -31
  180. package/dist/public-component-surface.cjs +1 -1
  181. package/dist/public-component-surface.js +15 -0
  182. package/dist/showcase/component-api-schema.cjs +1 -1
  183. package/dist/showcase/component-api-schema.js +187 -10
  184. package/dist/showcase/create-demo.cjs +5 -4
  185. package/dist/showcase/create-demo.js +2 -2
  186. package/dist/showcase/fallback.cjs +3 -3
  187. package/dist/showcase/fallback.js +221 -243
  188. package/dist/showcase/premium/alert/showcase.cjs +1 -1
  189. package/dist/showcase/premium/alert/showcase.js +1 -0
  190. package/dist/showcase/premium/app-sidebar/showcase.cjs +1 -1
  191. package/dist/showcase/premium/app-sidebar/showcase.js +1 -0
  192. package/dist/showcase/premium/badge/showcase.cjs +1 -1
  193. package/dist/showcase/premium/badge/showcase.js +7 -0
  194. package/dist/showcase/premium/badge/types.d.ts +1 -1
  195. package/dist/showcase/premium/breadcrumbs/showcase.cjs +1 -1
  196. package/dist/showcase/premium/breadcrumbs/showcase.js +12 -1
  197. package/dist/showcase/premium/button/mock.cjs +1 -4
  198. package/dist/showcase/premium/button/mock.js +1 -1
  199. package/dist/showcase/premium/button/showcase.cjs +1 -1
  200. package/dist/showcase/premium/button/showcase.js +2 -2
  201. package/dist/showcase/premium/card/showcase.cjs +1 -1
  202. package/dist/showcase/premium/card/showcase.js +96 -47
  203. package/dist/showcase/premium/carousel/showcase.cjs +1 -1
  204. package/dist/showcase/premium/carousel/showcase.js +76 -49
  205. package/dist/showcase/premium/command-bar/showcase.cjs +1 -1
  206. package/dist/showcase/premium/command-bar/showcase.js +2 -0
  207. package/dist/showcase/premium/data-table/mock.cjs +12 -11
  208. package/dist/showcase/premium/data-table/mock.js +1 -1
  209. package/dist/showcase/premium/data-table/showcase.cjs +1 -1
  210. package/dist/showcase/premium/data-table/showcase.js +1 -1
  211. package/dist/showcase/premium/data-table-parts/showcase.cjs +1 -1
  212. package/dist/showcase/premium/data-table-parts/showcase.js +3 -1
  213. package/dist/showcase/premium/file-upload/showcase.cjs +1 -1
  214. package/dist/showcase/premium/file-upload/showcase.js +25 -4
  215. package/dist/showcase/premium/image-upload/showcase.cjs +1 -1
  216. package/dist/showcase/premium/image-upload/showcase.js +4 -1
  217. package/dist/showcase/premium/index.cjs +1 -1
  218. package/dist/showcase/premium/index.js +396 -402
  219. package/dist/showcase/premium/loading-state/showcase.cjs +1 -1
  220. package/dist/showcase/premium/loading-state/showcase.js +3 -1
  221. package/dist/showcase/premium/metric-grid/showcase.cjs +1 -1
  222. package/dist/showcase/premium/metric-grid/showcase.js +96 -28
  223. package/dist/showcase/premium/notification-center/showcase.cjs +1 -1
  224. package/dist/showcase/premium/notification-center/showcase.js +7 -3
  225. package/dist/showcase/premium/page-state/showcase.cjs +1 -1
  226. package/dist/showcase/premium/page-state/showcase.js +5 -1
  227. package/dist/showcase/premium/pagination/showcase.cjs +1 -1
  228. package/dist/showcase/premium/pagination/showcase.js +15 -2
  229. package/dist/showcase/premium/popover/showcase.cjs +1 -1
  230. package/dist/showcase/premium/popover/showcase.js +85 -50
  231. package/dist/showcase/premium/radio-group/showcase.cjs +1 -1
  232. package/dist/showcase/premium/radio-group/showcase.js +27 -4
  233. package/dist/showcase/premium/right-click-menu/showcase.cjs +1 -1
  234. package/dist/showcase/premium/right-click-menu/showcase.js +56 -43
  235. package/dist/showcase/premium/segmented-control/showcase.cjs +1 -1
  236. package/dist/showcase/premium/segmented-control/showcase.js +1 -0
  237. package/dist/showcase/premium/select/data.cjs +1 -1
  238. package/dist/showcase/premium/select/data.js +69 -34
  239. package/dist/showcase/premium/select/mock.cjs +20 -8
  240. package/dist/showcase/premium/select/mock.js +3 -2
  241. package/dist/showcase/premium/select/showcase.cjs +1 -1
  242. package/dist/showcase/premium/select/showcase.js +101 -86
  243. package/dist/showcase/premium/select/types.d.ts +3 -0
  244. package/dist/showcase/premium/statistic/showcase.cjs +1 -1
  245. package/dist/showcase/premium/statistic/showcase.js +57 -25
  246. package/dist/showcase/premium/switch/showcase.cjs +1 -1
  247. package/dist/showcase/premium/switch/showcase.js +25 -14
  248. package/dist/showcase/premium/tabs/showcase.cjs +1 -1
  249. package/dist/showcase/premium/tabs/showcase.js +171 -48
  250. package/dist/showcase/premium/textarea/mock.cjs +12 -4
  251. package/dist/showcase/premium/textarea/mock.js +1 -1
  252. package/dist/showcase/premium/textarea/showcase.cjs +1 -1
  253. package/dist/showcase/premium/textarea/showcase.js +8 -3
  254. package/dist/showcase/premium/toast/showcase.cjs +1 -1
  255. package/dist/showcase/premium/toast/showcase.js +32 -6
  256. package/dist/showcase/premium/types.d.ts +1 -1
  257. package/dist/showcase/registry-quality.cjs +1 -1
  258. package/dist/showcase/registry-quality.js +1 -0
  259. package/dist/showcase/registry-specific.cjs +1 -1
  260. package/dist/showcase/registry-specific.js +78 -74
  261. package/dist/showcase/render-registry-preview.cjs +1 -1
  262. package/dist/showcase/render-registry-preview.js +90 -108
  263. package/dist/showcase/site-data.cjs +1 -1
  264. package/dist/showcase/site-data.js +60 -21
  265. package/dist/showcase/tembro-registry.json.cjs +1 -1
  266. package/dist/showcase/tembro-registry.json.js +34 -20
  267. package/dist/showcase/types.d.ts +1 -1
  268. package/package.json +1 -1
  269. package/packages/cli/dist/index.cjs +31 -31
  270. package/packages/cli/vendor/src/components/calendar/calendar.tsx +59 -50
  271. package/packages/cli/vendor/src/components/calendar/date-range-picker.tsx +7 -4
  272. package/packages/cli/vendor/src/components/charts/charts.tsx +109 -66
  273. package/packages/cli/vendor/src/components/charts/progress-ring.tsx +37 -26
  274. package/packages/cli/vendor/src/components/data-table/data-table-column-visibility-menu.tsx +41 -22
  275. package/packages/cli/vendor/src/components/data-table/data-table-pagination.tsx +7 -7
  276. package/packages/cli/vendor/src/components/data-table/data-table-toolbar.tsx +8 -6
  277. package/packages/cli/vendor/src/components/data-table/data-table.tsx +21 -20
  278. package/packages/cli/vendor/src/components/display/carousel.tsx +102 -9
  279. package/packages/cli/vendor/src/components/display/code-block.tsx +22 -2
  280. package/packages/cli/vendor/src/components/display/delta-badge.tsx +11 -11
  281. package/packages/cli/vendor/src/components/display/kanban.tsx +103 -57
  282. package/packages/cli/vendor/src/components/display/metric-grid.tsx +16 -13
  283. package/packages/cli/vendor/src/components/display/qr-code.tsx +17 -15
  284. package/packages/cli/vendor/src/components/display/smart-card.tsx +1 -1
  285. package/packages/cli/vendor/src/components/display/status-legend.tsx +1 -1
  286. package/packages/cli/vendor/src/components/display/tag.tsx +39 -21
  287. package/packages/cli/vendor/src/components/display/tree-view.tsx +221 -84
  288. package/packages/cli/vendor/src/components/display/trend-card.tsx +6 -40
  289. package/packages/cli/vendor/src/components/feedback/alert.tsx +3 -1
  290. package/packages/cli/vendor/src/components/feedback/loading-state.tsx +33 -17
  291. package/packages/cli/vendor/src/components/feedback/page-state.tsx +8 -7
  292. package/packages/cli/vendor/src/components/form/form-field-shell.tsx +37 -8
  293. package/packages/cli/vendor/src/components/form/form-input.tsx +11 -12
  294. package/packages/cli/vendor/src/components/form/form-select.tsx +6 -4
  295. package/packages/cli/vendor/src/components/form/form-switch.tsx +9 -3
  296. package/packages/cli/vendor/src/components/form/form-textarea.tsx +6 -2
  297. package/packages/cli/vendor/src/components/inputs/async-select.tsx +11 -8
  298. package/packages/cli/vendor/src/components/inputs/search-input.tsx +5 -2
  299. package/packages/cli/vendor/src/components/inputs/simple-select.tsx +20 -190
  300. package/packages/cli/vendor/src/components/layout/app-sidebar.tsx +3 -1
  301. package/packages/cli/vendor/src/components/layout/breadcrumbs.tsx +3 -1
  302. package/packages/cli/vendor/src/components/modern/calendar-scheduler.tsx +28 -13
  303. package/packages/cli/vendor/src/components/modern/dual-list-picker.tsx +103 -35
  304. package/packages/cli/vendor/src/components/modern/rich-text-editor.tsx +25 -22
  305. package/packages/cli/vendor/src/components/modern/tour.tsx +47 -29
  306. package/packages/cli/vendor/src/components/navigation/command-bar.tsx +6 -0
  307. package/packages/cli/vendor/src/components/navigation/demo.tsx +0 -1
  308. package/packages/cli/vendor/src/components/navigation/nav-tabs.tsx +38 -29
  309. package/packages/cli/vendor/src/components/navigation/page-tabs.tsx +35 -23
  310. package/packages/cli/vendor/src/components/navigation/pagination.tsx +65 -31
  311. package/packages/cli/vendor/src/components/notifications/notification-center.tsx +64 -39
  312. package/packages/cli/vendor/src/components/notifications/toast.tsx +23 -21
  313. package/packages/cli/vendor/src/components/overlay/alert-dialog.tsx +1 -1
  314. package/packages/cli/vendor/src/components/overlay/confirm-dialog.tsx +45 -22
  315. package/packages/cli/vendor/src/components/overlay/drawer.tsx +18 -5
  316. package/packages/cli/vendor/src/components/ui/accordion/index.tsx +4 -0
  317. package/packages/cli/vendor/src/components/ui/badge/index.tsx +2 -1
  318. package/packages/cli/vendor/src/components/ui/button/index.tsx +11 -5
  319. package/packages/cli/vendor/src/components/ui/card/index.tsx +95 -25
  320. package/packages/cli/vendor/src/components/ui/dialog/index.tsx +2 -1
  321. package/packages/cli/vendor/src/components/ui/hover-card.tsx +54 -28
  322. package/packages/cli/vendor/src/components/ui/input/index.tsx +98 -0
  323. package/packages/cli/vendor/src/components/ui/popover/index.tsx +10 -8
  324. package/packages/cli/vendor/src/components/ui/radio-group/index.tsx +55 -6
  325. package/packages/cli/vendor/src/components/ui/right-click-menu/index.tsx +120 -9
  326. package/packages/cli/vendor/src/components/ui/segmented-control/index.tsx +29 -3
  327. package/packages/cli/vendor/src/components/ui/select/index.tsx +260 -34
  328. package/packages/cli/vendor/src/components/ui/switch/index.tsx +71 -6
  329. package/packages/cli/vendor/src/components/ui/tabs/index.tsx +22 -6
  330. package/packages/cli/vendor/src/components/ui/textarea/index.tsx +105 -15
  331. package/packages/cli/vendor/src/components/ui/textarea.tsx +2 -0
  332. package/packages/cli/vendor/src/components/ui/tooltip/index.tsx +67 -22
  333. package/packages/cli/vendor/src/components/upload/file-upload.tsx +120 -57
  334. package/packages/cli/vendor/src/components/upload/image-upload.tsx +71 -24
  335. package/packages/cli/vendor/src/public-component-surface.ts +3 -0
  336. package/packages/cli/vendor/src/showcase/component-api-schema.ts +79 -41
  337. package/packages/cli/vendor/src/showcase/create-demo.tsx +16 -15
  338. package/packages/cli/vendor/src/showcase/fallback.tsx +4 -19
  339. package/packages/cli/vendor/src/showcase/premium/alert/showcase.tsx +1 -0
  340. package/packages/cli/vendor/src/showcase/premium/app-sidebar/showcase.tsx +1 -0
  341. package/packages/cli/vendor/src/showcase/premium/badge/showcase.tsx +4 -2
  342. package/packages/cli/vendor/src/showcase/premium/badge/types.ts +1 -1
  343. package/packages/cli/vendor/src/showcase/premium/breadcrumbs/showcase.tsx +3 -1
  344. package/packages/cli/vendor/src/showcase/premium/button/mock.ts +2 -5
  345. package/packages/cli/vendor/src/showcase/premium/button/showcase.tsx +2 -2
  346. package/packages/cli/vendor/src/showcase/premium/card/showcase.tsx +26 -1
  347. package/packages/cli/vendor/src/showcase/premium/carousel/showcase.tsx +19 -3
  348. package/packages/cli/vendor/src/showcase/premium/command-bar/showcase.tsx +1 -1
  349. package/packages/cli/vendor/src/showcase/premium/data-table/mock.ts +26 -25
  350. package/packages/cli/vendor/src/showcase/premium/data-table/showcase.tsx +3 -3
  351. package/packages/cli/vendor/src/showcase/premium/data-table-parts/showcase.tsx +3 -3
  352. package/packages/cli/vendor/src/showcase/premium/file-upload/showcase.tsx +21 -1
  353. package/packages/cli/vendor/src/showcase/premium/image-upload/showcase.tsx +4 -1
  354. package/packages/cli/vendor/src/showcase/premium/index.ts +0 -2
  355. package/packages/cli/vendor/src/showcase/premium/loading-state/showcase.tsx +1 -1
  356. package/packages/cli/vendor/src/showcase/premium/metric-grid/showcase.tsx +36 -4
  357. package/packages/cli/vendor/src/showcase/premium/notification-center/showcase.tsx +4 -3
  358. package/packages/cli/vendor/src/showcase/premium/page-state/showcase.tsx +1 -0
  359. package/packages/cli/vendor/src/showcase/premium/pagination/showcase.tsx +13 -1
  360. package/packages/cli/vendor/src/showcase/premium/popover/showcase.tsx +27 -11
  361. package/packages/cli/vendor/src/showcase/premium/radio-group/showcase.tsx +13 -1
  362. package/packages/cli/vendor/src/showcase/premium/right-click-menu/showcase.tsx +8 -5
  363. package/packages/cli/vendor/src/showcase/premium/segmented-control/showcase.tsx +1 -0
  364. package/packages/cli/vendor/src/showcase/premium/select/data.ts +12 -3
  365. package/packages/cli/vendor/src/showcase/premium/select/mock.ts +4 -4
  366. package/packages/cli/vendor/src/showcase/premium/select/showcase.tsx +35 -22
  367. package/packages/cli/vendor/src/showcase/premium/select/types.ts +3 -0
  368. package/packages/cli/vendor/src/showcase/premium/statistic/showcase.tsx +10 -1
  369. package/packages/cli/vendor/src/showcase/premium/switch/showcase.tsx +15 -6
  370. package/packages/cli/vendor/src/showcase/premium/tabs/showcase.tsx +48 -1
  371. package/packages/cli/vendor/src/showcase/premium/textarea/mock.ts +12 -4
  372. package/packages/cli/vendor/src/showcase/premium/textarea/showcase.tsx +5 -0
  373. package/packages/cli/vendor/src/showcase/premium/toast/showcase.tsx +17 -1
  374. package/packages/cli/vendor/src/showcase/premium/types.ts +1 -1
  375. package/packages/cli/vendor/src/showcase/registry-quality.ts +3 -2
  376. package/packages/cli/vendor/src/showcase/registry-specific.tsx +7 -8
  377. package/packages/cli/vendor/src/showcase/render-registry-preview.tsx +5 -21
  378. package/packages/cli/vendor/src/showcase/site-data.tsx +21 -15
  379. package/packages/cli/vendor/src/showcase/tembro-registry.json +42 -20
  380. package/packages/cli/vendor/src/showcase/types.ts +1 -1
  381. package/registry.json +18 -6
@@ -1 +1 @@
1
- Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=require("../_virtual/_rolldown/runtime.cjs"),t=require("../components/ui/button/index.cjs"),n=require("../components/actions/action-menu.cjs"),r=require("../components/actions/button-group.cjs"),i=require("../components/inputs/password-input.cjs"),a=require("../components/inputs/search-input.cjs"),o=require("../components/ui/input/index.cjs"),s=require("../components/ui/badge/index.cjs"),c=require("../components/actions/quick-action-grid.cjs"),l=require("../components/layout/section-header.cjs"),u=require("../components/navigation/nav-tabs.cjs"),ee=require("../components/navigation/page-tabs.cjs"),d=require("../components/navigation/pagination.cjs"),f=require("../components/navigation/stepper-tabs.cjs"),p=require("../components/filters/filter-bar.cjs"),te=require("../components/filters/saved-filter-select.cjs"),m=require("../components/overlay/alert-dialog.cjs"),h=require("../components/overlay/drawer.cjs"),g=require("../components/inputs/async-select.cjs"),_=require("../components/inputs/simple-select.cjs"),v=require("../components/inputs/otp-input.cjs"),y=require("../components/inputs/rating.cjs"),b=require("../components/inputs/slider.cjs"),x=require("../components/inputs/tag-input.cjs"),S=require("../components/feedback/alert.cjs"),C=require("../components/feedback/page-state.cjs"),w=require("../components/display/description-list.cjs"),T=require("../components/display/list.cjs"),E=require("../components/display/progress.cjs"),D=require("../components/display/progress-circle.cjs"),O=require("../components/display/status-dot.cjs"),k=require("../components/display/status-legend.cjs"),A=require("../components/display/timeline.cjs"),j=require("../components/display/user-card.cjs"),M=require("../components/layout/stat-card.cjs"),N=require("../components/display/smart-card.cjs"),P=require("../components/calendar/calendar.cjs"),F=require("../components/upload/file-upload.cjs"),I=require("../components/upload/image-upload.cjs"),L=require("../components/upload/file-dropzone.cjs"),R=require("../components/wizard/stepper.cjs"),z=require("../components/wizard/wizard.cjs"),B=require("../components/layout/app-header.cjs"),V=require("../components/patterns/resource-detail-page.cjs"),H=require("../components/patterns/resource-page.cjs");let U=require("react");U=e.__toESM(U,1);let W=require("lucide-react"),G=require("react/jsx-runtime");var K=[J(`alert-dialog`,`AlertDialog`,`overlay`,`Destructive confirmation dialog with loading-ready action states.`),J(`drawer`,`Drawer`,`overlay`,`Side panel for contextual details without leaving the page.`),J(`pagination`,`Pagination`,`navigation`,`Controlled page navigation with edge buttons and active state.`),J(`nav-tabs`,`NavTabs`,`navigation`,`Navigation tabs for switching related document sections.`),J(`search-input`,`SearchInput`,`inputs`,`Search field with icon, count, shortcut and debounce-friendly value handling.`),J(`password-input`,`PasswordInput`,`inputs`,`Password field with visibility toggle and secure autocomplete defaults.`),J(`slider`,`Slider`,`inputs`,`Single value range control for density, threshold, and score tuning.`),J(`range-slider`,`RangeSlider`,`inputs`,`Two-handle slider for min/max filtering.`),J(`rating`,`Rating`,`inputs`,`Compact score input for feedback and review flows.`),J(`otp-input`,`OtpInput`,`inputs`,`One-time code entry with fixed-length slots.`),J(`tag-input`,`TagInput`,`inputs`,`Tokenized text input for labels, skills, and quick filters.`),J(`progress`,`Progress`,`display`,`Linear progress with label, value formatter, tone and indeterminate state.`),J(`progress-circle`,`ProgressCircle`,`display`,`Compact circular progress for sidebars and status cards.`),J(`timeline`,`Timeline`,`display`,`Vertical or horizontal event stream for workflow history.`),J(`status-dot`,`StatusDot`,`display`,`Tiny live status indicator with optional pulse animation.`),J(`user-card`,`UserCard`,`display`,`User summary row with avatar, metadata and actions.`),J(`notification-center`,`NotificationCenter`,`display`,`Compact activity and notifications stream.`),J(`data-list`,`DataList`,`display`,`Readable title and description rows for compact operational lists.`),J(`status-legend`,`StatusLegend`,`display`,`Explain status meaning and counts in a compact legend.`),J(`trend-card`,`TrendCard`,`display`,`Metric summary card with trend context.`),J(`action-menu`,`ActionMenu`,`actions`,`Compact dropdown action menu for rows and cards.`),J(`button-group`,`ButtonGroup`,`actions`,`Grouped action buttons for view switching and compact controls.`),J(`quick-action-grid`,`QuickActionGrid`,`actions`,`Action launcher grid for dense dashboard shortcuts.`),J(`app-header`,`AppHeader`,`layout`,`Sticky product header with left, center and right slots.`),J(`section-header`,`SectionHeader`,`layout`,`Reusable section title block with actions and metadata.`),J(`stat-card`,`StatCard`,`layout`,`Dashboard stat card for KPI, trend and helper text.`),J(`filter-bar`,`FilterBar`,`actions`,`Search, filters, active-count and reset actions in one toolbar.`),J(`page-tabs`,`PageTabs`,`navigation`,`Top-level page tab strip for route-sized sections.`),J(`stepper-tabs`,`StepperTabs`,`navigation`,`Step-like tabs for setup and onboarding progress.`),J(`alert`,`Alert`,`feedback`,`Inline feedback banner for success, warning, info, and error states.`),J(`page-state`,`PageState`,`feedback`,`Full-page completion or blocked state with next actions.`),J(`calendar`,`Calendar`,`calendar`,`Single month calendar surface for date picker and scheduling flows.`),J(`file-upload`,`FileUpload`,`upload`,`Full file upload surface with dropzone, action button and helper text.`),J(`image-upload`,`ImageUpload`,`upload`,`Image upload pattern with preview-oriented copy.`,`ImageUpload`),J(`file-dropzone`,`FileDropzone`,`upload`,`Lightweight file dropzone primitive for custom upload flows.`),J(`stepper`,`Stepper`,`wizard`,`Clickable step navigation for multi-step forms.`),J(`wizard`,`Wizard`,`wizard`,`Stepper, content and footer controls combined into one workflow.`),J(`resource-page`,`ResourcePage`,`patterns`,`Full resource index page shell for admin dashboards.`),J(`resource-detail-page`,`ResourceDetailPage`,`patterns`,`Detail page shell with title, metadata and sections.`)],q=Object.fromEntries(K.map(e=>[e.slug,{mock:Y(e),Showcase:t=>(0,G.jsx)(Z,{definition:e,...t})}]));function J(e,t,n,r,i=t){let a=he(e);return{slug:e,title:a,component:t,kind:n,summary:r,importName:i,highlights:[`${a} uses the real ${t} surface.`,`CLI, import and preview stay scoped to this component.`,`Preview wrappers stay light so the component UI remains visible.`],scenarios:[{title:`Use when`,description:r},{title:`Implementation`,description:`Add ${e}, import ${i}, then pass controlled props where the API requires state.`}]}}function Y(e){return{cliCommand:`npx tembro add ${e.slug}`,code:X(e),highlights:e.highlights,scenarios:e.scenarios,capabilityNotes:[`Add ${e.slug} into your local source with the CLI.`,"Import the public component surface from `tembro` in app code."]}}function X(e){let t=e.importName??e.component;return`import { ${t} } from "tembro"\n\nexport function Demo() {\n return <${t} />\n}`}function Z({definition:e,state:t,setState:n}){return(0,G.jsxs)(`div`,{className:`space-y-5`,children:[(0,G.jsxs)(`header`,{className:`space-y-2`,children:[(0,G.jsx)(`p`,{className:`text-xs font-semibold uppercase tracking-[0.22em] aui-text-muted`,children:e.component}),(0,G.jsxs)(`div`,{children:[(0,G.jsx)(`h3`,{className:`aui-text-strong text-2xl font-semibold tracking-tight`,children:e.title}),(0,G.jsx)(`p`,{className:`aui-text-muted mt-2 max-w-2xl text-sm leading-6`,children:e.summary})]})]}),(0,G.jsx)(`div`,{className:`rounded-2xl border border-[color:var(--aui-divider)] bg-[color:var(--aui-page-bg-alt)] p-4 sm:p-5`,children:Q(e,t,n)})]})}function Q(e,t,n){return e.kind===`inputs`?(0,G.jsx)(ne,{slug:e.slug,state:t,setState:n}):e.kind===`form`?(0,G.jsx)(re,{state:t,setState:n}):e.kind===`overlay`?(0,G.jsx)(ie,{slug:e.slug}):e.kind===`navigation`?(0,G.jsx)(ae,{slug:e.slug}):e.kind===`feedback`?(0,G.jsx)(oe,{slug:e.slug}):e.kind===`display`?(0,G.jsx)(se,{slug:e.slug}):e.kind===`actions`?(0,G.jsx)(ce,{slug:e.slug,state:t,setState:n}):e.kind===`layout`?(0,G.jsx)(le,{slug:e.slug}):e.kind===`data-table`?(0,G.jsx)(ue,{slug:e.slug}):e.kind===`calendar`?(0,G.jsx)(de,{}):e.kind===`upload`?(0,G.jsx)(fe,{slug:e.slug}):e.kind===`wizard`?(0,G.jsx)(pe,{slug:e.slug}):e.kind===`patterns`?(0,G.jsx)(me,{slug:e.slug}):null}function ne({slug:e,state:t,setState:n}){let r=t.textValue,s=e=>n({textValue:e});if(e===`search-input`)return(0,G.jsx)(a.SearchInput,{value:r,onValueChange:s,resultCount:12,shortcut:`Ctrl K`,placeholder:`Search customers...`});if(e===`password-input`)return(0,G.jsx)(i.PasswordInput,{value:`secret-token`,onValueChange:s,placeholder:`Password`});if(e===`slider`)return(0,G.jsx)(b.Slider,{label:`Density`,description:`Tune content density.`,defaultValue:64,showValue:!0});if(e===`range-slider`)return(0,G.jsx)(b.RangeSlider,{label:`Revenue range`,description:`Filter between two values.`,defaultValue:[20,80],showValue:!0});if(e===`rating`)return(0,G.jsx)(y.Rating,{defaultValue:4,labels:{clear:`Reset`}});if(e===`otp-input`)return(0,G.jsx)(v.OtpInput,{value:r.replace(/\D/g,``).slice(0,6),onValueChange:s});if(e===`tag-input`)return(0,G.jsx)(x.TagInput,{defaultValue:[`dashboard`,`beta`,`ops`],placeholder:`Add label`});if(e===`simple-select`)return(0,G.jsxs)(`div`,{className:`grid gap-4`,children:[(0,G.jsx)(_.SimpleSelect,{value:`private`,onValueChange:()=>void 0,options:[{value:`public`,label:`Public`,description:`Visible to all users`},{value:`private`,label:`Private`,description:`Restricted to invited members`},{value:`internal`,label:`Internal`,description:`Only workspace maintainers`},{value:`archived`,label:`Archived`,description:`History only`,disabled:!0}],placeholder:`Visibility`,searchable:!0,clearable:!0}),(0,G.jsxs)(`div`,{className:`grid gap-3 md:grid-cols-3`,children:[(0,G.jsx)(`div`,{className:`rounded-2xl border border-[color:var(--aui-divider)] bg-[color:var(--aui-page-bg-alt)] px-4 py-3 text-sm aui-text-muted`,children:`Static options with lightweight search.`}),(0,G.jsx)(`div`,{className:`rounded-2xl border border-[color:var(--aui-divider)] bg-[color:var(--aui-page-bg-alt)] px-4 py-3 text-sm aui-text-muted`,children:`Clear action stays inside the trigger surface.`}),(0,G.jsx)(`div`,{className:`rounded-2xl border border-[color:var(--aui-divider)] bg-[color:var(--aui-page-bg-alt)] px-4 py-3 text-sm aui-text-muted`,children:`Use before moving to AsyncSelect.`})]})]});if(e===`async-select`){let e=[{value:`north`,label:`North Region`,description:`Sales ops`},{value:`south`,label:`South Region`,description:`Support team`},{value:`west`,label:`West Region`,description:`Billing operations`}];return(0,G.jsxs)(`div`,{className:`grid gap-4`,children:[(0,G.jsx)(g.AsyncSelect,{value:`north`,onValueChange:()=>void 0,loadOptions:async t=>{let n=t.trim().toLowerCase();return n?e.filter(e=>String(e.label).toLowerCase().includes(n)):e},defaultOptions:e,minSearchLength:1,clearable:!0}),(0,G.jsxs)(`div`,{className:`grid gap-3 md:grid-cols-3`,children:[(0,G.jsx)(`div`,{className:`rounded-2xl border border-[color:var(--aui-divider)] bg-[color:var(--aui-page-bg-alt)] px-4 py-3 text-sm aui-text-muted`,children:`Remote-ready select surface.`}),(0,G.jsx)(`div`,{className:`rounded-2xl border border-[color:var(--aui-divider)] bg-[color:var(--aui-page-bg-alt)] px-4 py-3 text-sm aui-text-muted`,children:`Hydration and clear behavior stay aligned.`}),(0,G.jsx)(`div`,{className:`rounded-2xl border border-[color:var(--aui-divider)] bg-[color:var(--aui-page-bg-alt)] px-4 py-3 text-sm aui-text-muted`,children:`Good for large or changing datasets.`})]})]})}return(0,G.jsx)(o.Input,{value:r,onChange:e=>n({textValue:e.currentTarget.value}),placeholder:`Unified input`})}function re({state:e,setState:t}){return(0,G.jsxs)(`div`,{className:`grid gap-4 md:grid-cols-2`,children:[(0,G.jsxs)(`label`,{className:`grid gap-2`,children:[(0,G.jsx)(`span`,{className:`text-sm font-medium aui-text-strong`,children:`Email address`}),(0,G.jsx)(o.Input,{value:e.textValue,onChange:e=>t({textValue:e.currentTarget.value})}),(0,G.jsx)(`span`,{className:`text-xs aui-text-muted`,children:`Form wrappers keep label, hint and error spacing consistent.`})]}),(0,G.jsxs)(`label`,{className:`grid gap-2`,children:[(0,G.jsx)(`span`,{className:`text-sm font-medium aui-text-strong`,children:`Status`}),(0,G.jsx)(a.SearchInput,{value:`Active customers`,resultCount:7,readOnly:!0}),(0,G.jsx)(`span`,{className:`text-xs text-emerald-500`,children:`Ready to submit`})]})]})}function ie({slug:e}){return e===`alert-dialog`?(0,G.jsx)(m.AlertDialog,{open:!1,title:`Archive invoice?`,description:`This keeps the invoice readable but removes it from active queues.`,children:(0,G.jsx)(t.Button,{variant:`destructive`,children:`Open alert`})}):e===`drawer`?(0,G.jsx)(h.Drawer,{open:!1,trigger:(0,G.jsx)(t.Button,{variant:`outline`,children:`Open drawer`}),title:`Customer details`,description:`Side panel for fast inspection.`,children:(0,G.jsx)(w.DescriptionList,{items:[{key:`plan`,label:`Plan`,value:`Scale`},{key:`owner`,label:`Owner`,value:`Azamat UI`}]})}):(0,G.jsxs)(`div`,{className:`flex flex-wrap items-center justify-end gap-2 rounded-xl border border-[color:var(--aui-divider)] bg-[color:var(--aui-page-bg)] p-4`,children:[(0,G.jsx)(t.Button,{variant:`ghost`,children:`Cancel`}),(0,G.jsx)(t.Button,{variant:`outline`,children:`Save draft`}),(0,G.jsx)(t.Button,{children:`Publish`})]})}function ae({slug:e}){return e===`pagination`?(0,G.jsx)(d.Pagination,{page:3,pageCount:9,onPageChange:()=>void 0}):e===`page-tabs`?(0,G.jsx)(ee.PageTabs,{value:`overview`,variant:`pills`,items:[{value:`overview`,label:`Overview`},{value:`usage`,label:`Usage`},{value:`api`,label:`API`,badge:`3`}]}):e===`stepper-tabs`?(0,G.jsx)(f.StepperTabs,{value:`billing`,items:[{value:`profile`,label:`Profile`,description:`Team and owner details`,completed:!0},{value:`billing`,label:`Billing`,description:`Payment and invoices`},{value:`review`,label:`Review`,description:`Confirm release`}]}):(0,G.jsx)(u.NavTabs,{value:`overview`,items:[{value:`overview`,label:`Overview`},{value:`usage`,label:`Usage`},{value:`api`,label:`API`}]})}function oe({slug:e}){return e===`alert`?(0,G.jsx)(S.Alert,{tone:`warning`,title:`Review needed`,description:`Billing rules changed and one approval is pending.`,action:(0,G.jsx)(t.Button,{size:`sm`,children:`Open`})}):e===`page-state`?(0,G.jsx)(C.PageState,{title:`Workspace connected`,description:`The route is ready to accept live data and team actions.`,tone:`success`,action:(0,G.jsx)(t.Button,{size:`sm`,children:`Continue`})}):(0,G.jsxs)(`div`,{className:`flex flex-wrap gap-2`,children:[(0,G.jsx)($,{tone:`success`,children:`Live`}),(0,G.jsx)($,{tone:`warning`,children:`Needs review`}),(0,G.jsx)($,{tone:`danger`,children:`Blocked`}),(0,G.jsx)($,{tone:`info`,children:`Queued`})]})}function se({slug:e}){return e===`progress`?(0,G.jsx)(E.Progress,{label:`Migration progress`,description:`Production rollout`,value:68,tone:`success`,showValue:!0}):e===`progress-circle`?(0,G.jsx)(D.ProgressCircle,{value:72,label:`Profile completed`}):e===`timeline`?(0,G.jsx)(A.Timeline,{items:[{key:`created`,title:`Created`,description:`Invoice generated`,time:`09:20`,tone:`success`},{key:`review`,title:`Review`,description:`Finance team assigned`,time:`10:05`,tone:`info`},{key:`approve`,title:`Approval`,description:`Waiting for manager`,time:`Now`,tone:`warning`}],pending:!0,pendingLabel:`Paid`}):e===`metric-card`||e===`stat-card`?(0,G.jsx)(M.StatCard,{title:`Revenue`,value:`$84.2k`,description:`Compared with last month`,trend:{value:`+12.4%`,tone:`success`},icon:(0,G.jsx)(W.LayoutDashboardIcon,{})}):e===`status-dot`?(0,G.jsxs)(`div`,{className:`grid gap-3`,children:[(0,G.jsx)(O.StatusDot,{tone:`success`,pulse:!0,label:`API healthy`}),(0,G.jsx)(O.StatusDot,{tone:`warning`,label:`Sync delayed`}),(0,G.jsx)(O.StatusDot,{tone:`danger`,label:`Webhook failed`})]}):e===`notification-center`?(0,G.jsx)(T.List,{items:[{key:`1`,title:`Build completed`,description:`Dashboard docs deployment is live.`,extra:`Now`},{key:`2`,title:`New comment`,description:`Review requested on DataTable API.`,extra:`8m`},{key:`3`,title:`Publish reminder`,description:`Package version is ready for release.`,extra:`1h`}]}):e===`data-list`?(0,G.jsx)(T.List,{items:[{key:`1`,title:`Enterprise plan`,description:`Priority support and SSO`,extra:`$499`},{key:`2`,title:`Growth plan`,description:`Most used by product teams`,extra:`$199`},{key:`3`,title:`Starter plan`,description:`Lightweight team setup`,extra:`$49`}]}):e===`status-legend`?(0,G.jsx)(k.StatusLegend,{title:`Delivery states`,description:`Explain what each state means and how often it appears.`,orientation:`grid`,items:[{key:`live`,label:`Live`,description:`Healthy production routes`,tone:`success`,count:18},{key:`review`,label:`Review`,description:`Waiting for QA approval`,tone:`warning`,count:4},{key:`blocked`,label:`Blocked`,description:`Needs engineering action`,tone:`danger`,count:1}]}):e===`trend-card`?(0,G.jsx)(M.StatCard,{title:e===`trend-card`?`Weekly revenue`:`Current vs previous`,value:`$84.2k`,description:`Compared with last month`,trend:{value:`+12.4%`,tone:`success`},icon:(0,G.jsx)(W.LayoutDashboardIcon,{})}):e===`info-card`?(0,G.jsxs)(`div`,{className:`grid gap-4`,children:[(0,G.jsx)(N.SmartCard,{eyebrow:`Summary`,title:`Workspace`,description:`Reusable card surface with header, actions and metadata.`,actions:(0,G.jsx)(t.Button,{size:`sm`,variant:`outline`,children:`Open`}),selected:!0,children:(0,G.jsx)(`p`,{className:`aui-text-muted mt-2 text-sm`,children:`Keep metadata, helper copy and compact actions in one reusable card surface.`})}),(0,G.jsxs)(`div`,{className:`grid gap-3 md:grid-cols-3`,children:[(0,G.jsx)(`div`,{className:`rounded-2xl border border-[color:var(--aui-divider)] bg-[color:var(--aui-page-bg-alt)] px-4 py-3 text-sm aui-text-muted`,children:`Vertical and horizontal layout support.`}),(0,G.jsx)(`div`,{className:`rounded-2xl border border-[color:var(--aui-divider)] bg-[color:var(--aui-page-bg-alt)] px-4 py-3 text-sm aui-text-muted`,children:`Selected and action-safe surfaces.`}),(0,G.jsx)(`div`,{className:`rounded-2xl border border-[color:var(--aui-divider)] bg-[color:var(--aui-page-bg-alt)] px-4 py-3 text-sm aui-text-muted`,children:`Useful for summary panels and detail sidebars.`})]})]}):(0,G.jsx)(j.UserCard,{name:`Azamat Jurayev`,description:`Product designer and maintainer`,meta:`Admin workspace`,actions:(0,G.jsx)(t.Button,{size:`sm`,children:`Invite`})})}function ce({slug:e,state:i,setState:o}){return e===`filter-bar`?(0,G.jsx)(p.FilterBar,{search:(0,G.jsx)(a.SearchInput,{value:i.textValue,onValueChange:e=>o({textValue:e}),placeholder:`Search invoices...`}),activeCount:2,onReset:()=>o({textValue:``}),filters:(0,G.jsxs)(t.Button,{variant:`outline`,size:`sm`,children:[(0,G.jsx)(W.FilterIcon,{"data-icon":`inline-start`}),`Status`]}),actions:(0,G.jsx)(t.Button,{size:`sm`,children:`Export`})}):e===`button-group`?(0,G.jsx)(r.ButtonGroup,{items:[{key:`day`,label:`Day`},{key:`week`,label:`Week`},{key:`month`,label:`Month`}]}):e===`quick-action-grid`?(0,G.jsx)(c.QuickActionGrid,{columns:3,items:[{key:`new`,label:`New invoice`,description:`Create a fresh billing row.`,badge:`N`},{key:`import`,label:`Import CSV`,description:`Bring finance data into the table.`,badge:`I`},{key:`share`,label:`Share workspace`,description:`Invite team members to the route.`,badge:`S`}]}):e===`saved-filter-select`?(0,G.jsxs)(`div`,{className:`grid gap-4`,children:[(0,G.jsx)(te.SavedFilterSelect,{value:`billing`,onValueChange:()=>void 0,onSave:()=>void 0,onDelete:()=>void 0,filters:[{value:`billing`,label:`Billing`,description:`Invoices and payment status`},{value:`ops`,label:`Operations`,description:`Queues and workload`},{value:`owners`,label:`Owner: Azamat`,description:`Assigned records only`}]}),(0,G.jsxs)(`div`,{className:`grid gap-3 md:grid-cols-3`,children:[(0,G.jsx)(`div`,{className:`rounded-2xl border border-[color:var(--aui-divider)] bg-[color:var(--aui-page-bg-alt)] px-4 py-3 text-sm aui-text-muted`,children:`Named view switching for table routes.`}),(0,G.jsx)(`div`,{className:`rounded-2xl border border-[color:var(--aui-divider)] bg-[color:var(--aui-page-bg-alt)] px-4 py-3 text-sm aui-text-muted`,children:`Delete action stays isolated from parent selection.`}),(0,G.jsx)(`div`,{className:`rounded-2xl border border-[color:var(--aui-divider)] bg-[color:var(--aui-page-bg-alt)] px-4 py-3 text-sm aui-text-muted`,children:`Useful in finance, ops and admin dashboards.`})]})]}):(0,G.jsxs)(`div`,{className:`flex items-center justify-between rounded-xl border border-[color:var(--aui-divider)] bg-[color:var(--aui-page-bg)] p-4`,children:[(0,G.jsxs)(`div`,{children:[(0,G.jsx)(`p`,{className:`font-medium aui-text-strong`,children:`Invoice #4821`}),(0,G.jsx)(`p`,{className:`text-sm aui-text-muted`,children:`Pending approval`})]}),(0,G.jsx)(n.ActionMenu,{label:`Actions`,actions:[{key:`open`,label:`Open`,icon:(0,G.jsx)(W.ChevronRightIcon,{className:`size-4`})},{key:`download`,label:`Download`,icon:(0,G.jsx)(W.DownloadIcon,{className:`size-4`})},{key:`archive`,label:`Archive`,icon:(0,G.jsx)(W.ArchiveIcon,{className:`size-4`}),destructive:!0}],trigger:(0,G.jsx)(t.Button,{variant:`outline`,size:`icon-sm`,"aria-label":`Open actions`,children:(0,G.jsx)(W.MoreHorizontalIcon,{})})})]})}function le({slug:e}){return e===`app-header`?(0,G.jsx)(B.AppHeader,{sticky:!1,left:(0,G.jsxs)(G.Fragment,{children:[(0,G.jsx)(W.LayoutDashboardIcon,{className:`size-4`}),(0,G.jsx)(`span`,{className:`font-medium`,children:`Dashboard`})]}),center:(0,G.jsx)(s.Badge,{variant:`secondary`,children:`Preview`}),right:(0,G.jsxs)(G.Fragment,{children:[(0,G.jsx)(t.Button,{variant:`ghost`,size:`icon-sm`,"aria-label":`Notifications`,children:(0,G.jsx)(W.BellIcon,{})}),(0,G.jsx)(t.Button,{size:`sm`,children:`Deploy`})]}),className:`rounded-xl border border-[color:var(--aui-divider)]`}):e===`section-header`?(0,G.jsx)(l.SectionHeader,{eyebrow:`Components`,title:`Production-ready surfaces`,description:`SectionHeader keeps copy, metadata and actions aligned.`,actions:(0,G.jsx)(t.Button,{size:`sm`,children:`Add component`})}):(0,G.jsx)(M.StatCard,{title:`Revenue`,value:`$84.2k`,description:`Compared with last month`,trend:{value:`+12.4%`,tone:`success`},helperText:`StatCard keeps KPI, helper text and trend in one compact tile.`})}function ue({slug:e}){return(0,G.jsxs)(`div`,{className:`overflow-hidden rounded-xl border border-[color:var(--aui-divider)] bg-[color:var(--aui-page-bg)]`,children:[(0,G.jsxs)(`div`,{className:`flex flex-wrap items-center justify-between gap-3 border-b border-[color:var(--aui-divider)] p-3`,children:[(0,G.jsx)(a.SearchInput,{value:``,placeholder:`Search rows...`,className:`max-w-xs`,readOnly:!0}),(0,G.jsxs)(`div`,{className:`flex gap-2`,children:[(0,G.jsxs)(t.Button,{variant:`outline`,size:`sm`,children:[(0,G.jsx)(W.FilterIcon,{"data-icon":`inline-start`}),`Filters`]}),(0,G.jsx)(t.Button,{size:`sm`,children:`Create`})]})]}),(0,G.jsxs)(`div`,{className:`grid grid-cols-[40px_1fr_120px_72px] border-b border-[color:var(--aui-divider)] px-3 py-2 text-xs font-semibold uppercase tracking-[0.18em] aui-text-muted`,children:[(0,G.jsx)(`span`,{children:(0,G.jsx)(`input`,{type:`checkbox`,"aria-label":`Select rows`})}),(0,G.jsx)(`span`,{children:`Name`}),(0,G.jsx)(`span`,{children:`Status`}),(0,G.jsx)(`span`,{children:`Actions`})]}),[`Azamat UI`,`Registry`,`Dashboard`].map((e,n)=>(0,G.jsxs)(`div`,{className:`grid grid-cols-[40px_1fr_120px_72px] items-center border-b border-[color:var(--aui-divider)] px-3 py-3 last:border-b-0`,children:[(0,G.jsx)(`span`,{children:(0,G.jsx)(`input`,{type:`checkbox`,"aria-label":`Select ${e}`,defaultChecked:n===0})}),(0,G.jsx)(`span`,{className:`font-medium aui-text-strong`,children:e}),(0,G.jsx)(`span`,{children:(0,G.jsx)($,{tone:n===2?`warning`:`success`,children:n===2?`Review`:`Live`})}),(0,G.jsx)(`span`,{children:(0,G.jsx)(t.Button,{variant:`ghost`,size:`icon-sm`,"aria-label":`Row actions`,children:(0,G.jsx)(W.MoreHorizontalIcon,{})})})]},e)),(0,G.jsxs)(`div`,{className:`flex flex-wrap items-center justify-between gap-3 border-t border-[color:var(--aui-divider)] p-3 text-sm aui-text-muted`,children:[(0,G.jsxs)(`span`,{children:[{"data-table-column-visibility-menu":`Column visibility`,"data-table-sortable-header":`Sortable header`,"data-table-bulk-actions":`Bulk action bar`,"data-table-view-presets":`Saved view presets`}[e]??`DataTable part`,` preview`]}),(0,G.jsx)(d.Pagination,{page:1,pageCount:4,onPageChange:()=>void 0,showEdges:!1})]})]})}function de(){return(0,G.jsx)(P.Calendar,{value:`2026-06-18`,defaultMonth:`2026-06-01`,onValueChange:()=>void 0})}function fe({slug:e}){return e===`file-dropzone`?(0,G.jsx)(L.FileDropzone,{label:`Drop contract files`,description:`PDF, PNG or CSV up to 10MB.`}):e===`file-upload`?(0,G.jsxs)(`div`,{className:`grid gap-4`,children:[(0,G.jsx)(F.FileUpload,{dropzoneLabel:`Upload documents`,dropzoneDescription:`Drag files here or choose from your device.`,buttonLabel:`Choose files`,helperText:`Supports PDF, CSV and images.`}),(0,G.jsxs)(`div`,{className:`grid gap-3 md:grid-cols-3`,children:[(0,G.jsx)(`div`,{className:`rounded-2xl border border-[color:var(--aui-divider)] bg-[color:var(--aui-page-bg-alt)] px-4 py-3 text-sm aui-text-muted`,children:`Dropzone click and nested actions stay isolated.`}),(0,G.jsx)(`div`,{className:`rounded-2xl border border-[color:var(--aui-divider)] bg-[color:var(--aui-page-bg-alt)] px-4 py-3 text-sm aui-text-muted`,children:`Rejected states and helper copy live in the same component.`}),(0,G.jsx)(`div`,{className:`rounded-2xl border border-[color:var(--aui-divider)] bg-[color:var(--aui-page-bg-alt)] px-4 py-3 text-sm aui-text-muted`,children:`Use for production file routes, not just decorative previews.`})]})]}):e===`image-upload`?(0,G.jsxs)(`div`,{className:`grid gap-4`,children:[(0,G.jsx)(I.ImageUpload,{dropzoneLabel:`Upload product image`,helperText:`Preview-friendly upload for gallery and hero assets.`}),(0,G.jsxs)(`div`,{className:`grid gap-3 md:grid-cols-3`,children:[(0,G.jsx)(`div`,{className:`rounded-2xl border border-[color:var(--aui-divider)] bg-[color:var(--aui-page-bg-alt)] px-4 py-3 text-sm aui-text-muted`,children:`Image preview is part of the reusable component.`}),(0,G.jsx)(`div`,{className:`rounded-2xl border border-[color:var(--aui-divider)] bg-[color:var(--aui-page-bg-alt)] px-4 py-3 text-sm aui-text-muted`,children:`Remove action stays separate from the parent dropzone surface.`}),(0,G.jsx)(`div`,{className:`rounded-2xl border border-[color:var(--aui-divider)] bg-[color:var(--aui-page-bg-alt)] px-4 py-3 text-sm aui-text-muted`,children:`Good for template thumbnails and marketing assets.`})]})]}):(0,G.jsxs)(`div`,{className:`grid gap-4 md:grid-cols-[160px_1fr] md:items-center`,children:[(0,G.jsx)(`div`,{className:`flex aspect-square items-center justify-center rounded-2xl border border-dashed border-[color:var(--aui-divider)] bg-[color:var(--aui-page-bg)]`,children:(0,G.jsx)(W.UploadCloudIcon,{className:`size-8 aui-text-muted`})}),(0,G.jsx)(L.FileDropzone,{label:`Upload product image`,description:`Shows the image-upload flow without custom CSS.`,accept:`image/*`})]})}function pe({slug:e}){let t=[{id:`profile`,title:`Profile`,description:`Account details`,completed:!0},{id:`billing`,title:`Billing`,description:`Payment setup`},{id:`review`,title:`Review`,description:`Confirm data`}];return e===`stepper`?(0,G.jsx)(R.Stepper,{steps:t,currentStep:`billing`,onStepChange:()=>void 0}):(0,G.jsx)(z.Wizard,{steps:t,currentStep:`billing`,onNext:()=>void 0,onPrevious:()=>void 0,onFinish:()=>void 0,children:(0,G.jsxs)(`div`,{className:`rounded-xl border border-[color:var(--aui-divider)] bg-[color:var(--aui-page-bg)] p-4`,children:[(0,G.jsx)(`p`,{className:`font-medium aui-text-strong`,children:`Billing setup`}),(0,G.jsx)(`p`,{className:`mt-1 text-sm aui-text-muted`,children:`Wizard combines steps, content and footer controls.`})]})})}function me({slug:e}){return e===`resource-detail-page`?(0,G.jsx)(V.ResourceDetailPage,{title:`Customer profile`,description:`ResourceDetailPage organizes detail screens.`,actions:(0,G.jsx)(t.Button,{size:`sm`,children:`Edit`}),children:(0,G.jsx)(H.ResourcePageSection,{title:`Account`,children:(0,G.jsx)(w.DescriptionList,{items:[{key:`plan`,label:`Plan`,value:`Scale`},{key:`owner`,label:`Owner`,value:`Design team`}]})})}):(0,G.jsx)(H.ResourcePage,{title:`Customers`,description:`ResourcePage combines header, stats, filters and sections.`,actions:(0,G.jsx)(t.Button,{size:`sm`,children:`New customer`}),stats:(0,G.jsxs)(`div`,{className:`grid gap-3 sm:grid-cols-2`,children:[(0,G.jsx)(M.StatCard,{title:`Active`,value:`2,418`,trend:{value:`+8%`,tone:`success`}}),(0,G.jsx)(M.StatCard,{title:`Health`,value:`94%`,trend:{value:`Stable`,tone:`info`}})]}),filters:(0,G.jsx)(p.FilterBar,{search:(0,G.jsx)(a.SearchInput,{value:``,placeholder:`Search...`,readOnly:!0}),activeCount:1}),children:(0,G.jsx)(H.ResourcePageSection,{title:`Recent activity`,children:(0,G.jsx)(A.Timeline,{items:[{key:`a`,title:`Customer added`,description:`Acme workspace`,tone:`success`},{key:`b`,title:`Plan updated`,description:`Scale plan enabled`,tone:`info`}]})})})}function he(e){return e.split(`-`).map(e=>e.charAt(0).toUpperCase()+e.slice(1)).join(` `)}function $({tone:e,children:t}){return(0,G.jsx)(s.Badge,{variant:{success:`secondary`,warning:`outline`,danger:`destructive`,info:`outline`}[e],children:t})}exports.registrySpecificDemoRegistry=q;
1
+ Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=require("../_virtual/_rolldown/runtime.cjs"),t=require("../components/ui/button/index.cjs"),n=require("../components/actions/action-menu.cjs"),r=require("../components/actions/button-group.cjs"),i=require("../components/inputs/password-input.cjs"),a=require("../components/ui/input/index.cjs"),o=require("../components/ui/badge/index.cjs"),s=require("../components/ui/select/index.cjs"),c=require("../components/actions/quick-action-grid.cjs"),ee=require("../components/layout/section-header.cjs"),l=require("../components/navigation/nav-tabs.cjs"),u=require("../components/navigation/page-tabs.cjs"),d=require("../components/navigation/pagination.cjs"),f=require("../components/navigation/stepper-tabs.cjs"),p=require("../components/filters/filter-bar.cjs"),m=require("../components/filters/saved-filter-select.cjs"),te=require("../components/overlay/alert-dialog.cjs"),h=require("../components/overlay/drawer.cjs"),g=require("../components/inputs/async-select.cjs"),_=require("../components/inputs/otp-input.cjs"),v=require("../components/inputs/rating.cjs"),y=require("../components/inputs/slider.cjs"),ne=require("../components/inputs/tag-input.cjs"),b=require("../components/feedback/alert.cjs"),x=require("../components/feedback/page-state.cjs"),S=require("../components/display/description-list.cjs"),C=require("../components/display/list.cjs"),w=require("../components/display/progress.cjs"),T=require("../components/display/progress-circle.cjs"),E=require("../components/display/status-dot.cjs"),D=require("../components/display/status-legend.cjs"),O=require("../components/display/timeline.cjs"),k=require("../components/display/user-card.cjs"),A=require("../components/layout/stat-card.cjs"),j=require("../components/display/smart-card.cjs"),M=require("../components/calendar/calendar.cjs"),N=require("../components/upload/file-upload.cjs"),P=require("../components/upload/image-upload.cjs"),F=require("../components/upload/file-dropzone.cjs"),I=require("../components/wizard/stepper.cjs"),L=require("../components/wizard/wizard.cjs"),R=require("../components/layout/app-header.cjs"),z=require("../components/patterns/resource-detail-page.cjs"),B=require("../components/patterns/resource-page.cjs");let V=require("react");V=e.__toESM(V,1);let H=require("lucide-react"),U=require("react/jsx-runtime");var W=[K(`alert-dialog`,`AlertDialog`,`overlay`,`Destructive confirmation dialog with loading-ready action states.`),K(`drawer`,`Drawer`,`overlay`,`Side panel for contextual details without leaving the page.`),K(`pagination`,`Pagination`,`navigation`,`Controlled page navigation with edge buttons and active state.`),K(`nav-tabs`,`NavTabs`,`navigation`,`Navigation tabs for switching related document sections.`),K(`search-input`,`SearchInput`,`inputs`,`Search field with icon, count, shortcut and debounce-friendly value handling.`),K(`password-input`,`PasswordInput`,`inputs`,`Password field with visibility toggle and secure autocomplete defaults.`),K(`slider`,`Slider`,`inputs`,`Single value range control for density, threshold, and score tuning.`),K(`range-slider`,`RangeSlider`,`inputs`,`Two-handle slider for min/max filtering.`),K(`rating`,`Rating`,`inputs`,`Compact score input for feedback and review flows.`),K(`otp-input`,`OtpInput`,`inputs`,`One-time code entry with fixed-length slots.`),K(`tag-input`,`TagInput`,`inputs`,`Tokenized text input for labels, skills, and quick filters.`),K(`progress`,`Progress`,`display`,`Linear progress with label, value formatter, tone and indeterminate state.`),K(`progress-circle`,`ProgressCircle`,`display`,`Compact circular progress for sidebars and status cards.`),K(`timeline`,`Timeline`,`display`,`Vertical or horizontal event stream for workflow history.`),K(`status-dot`,`StatusDot`,`display`,`Tiny live status indicator with optional pulse animation.`),K(`user-card`,`UserCard`,`display`,`User summary row with avatar, metadata and actions.`),K(`notification-center`,`NotificationCenter`,`display`,`Compact activity and notifications stream.`),K(`data-list`,`DataList`,`display`,`Readable title and description rows for compact operational lists.`),K(`status-legend`,`StatusLegend`,`display`,`Explain status meaning and counts in a compact legend.`),K(`trend-card`,`TrendCard`,`display`,`Metric summary card with trend context.`),K(`action-menu`,`ActionMenu`,`actions`,`Compact dropdown action menu for rows and cards.`),K(`button-group`,`ButtonGroup`,`actions`,`Grouped action buttons for view switching and compact controls.`),K(`quick-action-grid`,`QuickActionGrid`,`actions`,`Action launcher grid for dense dashboard shortcuts.`),K(`app-header`,`AppHeader`,`layout`,`Sticky product header with left, center and right slots.`),K(`section-header`,`SectionHeader`,`layout`,`Reusable section title block with actions and metadata.`),K(`stat-card`,`StatCard`,`layout`,`Dashboard stat card for KPI, trend and helper text.`),K(`filter-bar`,`FilterBar`,`actions`,`Search, filters, active-count and reset actions in one toolbar.`),K(`page-tabs`,`PageTabs`,`navigation`,`Top-level page tab strip for route-sized sections.`),K(`stepper-tabs`,`StepperTabs`,`navigation`,`Step-like tabs for setup and onboarding progress.`),K(`alert`,`Alert`,`feedback`,`Inline feedback banner for success, warning, info, and error states.`),K(`page-state`,`PageState`,`feedback`,`Full-page completion or blocked state with next actions.`),K(`calendar`,`Calendar`,`calendar`,`Single month calendar surface for date picker and scheduling flows.`),K(`file-upload`,`FileUpload`,`upload`,`Full file upload surface with dropzone, action button and helper text.`),K(`image-upload`,`ImageUpload`,`upload`,`Image upload pattern with preview-oriented copy.`,`ImageUpload`),K(`file-dropzone`,`FileDropzone`,`upload`,`Lightweight file dropzone primitive for custom upload flows.`),K(`stepper`,`Stepper`,`wizard`,`Clickable step navigation for multi-step forms.`),K(`wizard`,`Wizard`,`wizard`,`Stepper, content and footer controls combined into one workflow.`),K(`resource-page`,`ResourcePage`,`patterns`,`Full resource index page shell for admin dashboards.`),K(`resource-detail-page`,`ResourceDetailPage`,`patterns`,`Detail page shell with title, metadata and sections.`)],G=Object.fromEntries(W.map(e=>[e.slug,{mock:q(e),Showcase:t=>(0,U.jsx)(Y,{definition:e,...t})}]));function K(e,t,n,r,i=t){let a=me(e);return{slug:e,title:a,component:t,kind:n,summary:r,importName:i,highlights:[`${a} uses the real ${t} surface.`,`CLI, import and preview stay scoped to this component.`,`Preview wrappers stay light so the component UI remains visible.`],scenarios:[{title:`Use when`,description:r},{title:`Implementation`,description:`Add ${e}, import ${i}, then pass controlled props where the API requires state.`}]}}function q(e){return{cliCommand:`npx tembro add ${e.slug}`,code:J(e),highlights:e.highlights,scenarios:e.scenarios,capabilityNotes:[`Add ${e.slug} into your local source with the CLI.`,"Import the public component surface from `tembro` in app code."]}}function J(e){let t=e.importName??e.component;return`import { ${t} } from "tembro"\n\nexport function Demo() {\n return <${t} />\n}`}function Y({definition:e,state:t,setState:n}){return(0,U.jsxs)(`div`,{className:`space-y-5`,children:[(0,U.jsxs)(`header`,{className:`space-y-2`,children:[(0,U.jsx)(`p`,{className:`text-xs font-semibold uppercase tracking-[0.22em] aui-text-muted`,children:e.component}),(0,U.jsxs)(`div`,{children:[(0,U.jsx)(`h3`,{className:`aui-text-strong text-2xl font-semibold tracking-tight`,children:e.title}),(0,U.jsx)(`p`,{className:`aui-text-muted mt-2 max-w-2xl text-sm leading-6`,children:e.summary})]})]}),(0,U.jsx)(`div`,{className:`rounded-2xl border border-[color:var(--aui-divider)] bg-[color:var(--aui-page-bg-alt)] p-4 sm:p-5`,children:X(e,t,n)})]})}function X(e,t,n){return e.kind===`inputs`?(0,U.jsx)(Z,{slug:e.slug,state:t,setState:n}):e.kind===`form`?(0,U.jsx)(re,{state:t,setState:n}):e.kind===`overlay`?(0,U.jsx)(ie,{slug:e.slug}):e.kind===`navigation`?(0,U.jsx)(ae,{slug:e.slug}):e.kind===`feedback`?(0,U.jsx)(oe,{slug:e.slug}):e.kind===`display`?(0,U.jsx)(se,{slug:e.slug}):e.kind===`actions`?(0,U.jsx)(Q,{slug:e.slug,state:t,setState:n}):e.kind===`layout`?(0,U.jsx)(ce,{slug:e.slug}):e.kind===`data-table`?(0,U.jsx)(le,{slug:e.slug}):e.kind===`calendar`?(0,U.jsx)(ue,{}):e.kind===`upload`?(0,U.jsx)(de,{slug:e.slug}):e.kind===`wizard`?(0,U.jsx)(fe,{slug:e.slug}):e.kind===`patterns`?(0,U.jsx)(pe,{slug:e.slug}):null}function Z({slug:e,state:t,setState:n}){let r=t.textValue,o=e=>n({textValue:e});if(e===`search-input`)return(0,U.jsx)(a.Input,{type:`search`,value:r,onValueChange:o,resultCount:12,shortcut:`Ctrl K`,placeholder:`Search customers...`});if(e===`password-input`)return(0,U.jsx)(i.PasswordInput,{value:`secret-token`,onValueChange:o,placeholder:`Password`});if(e===`slider`)return(0,U.jsx)(y.Slider,{label:`Density`,description:`Tune content density.`,defaultValue:64,showValue:!0});if(e===`range-slider`)return(0,U.jsx)(y.RangeSlider,{label:`Revenue range`,description:`Filter between two values.`,defaultValue:[20,80],showValue:!0});if(e===`rating`)return(0,U.jsx)(v.Rating,{defaultValue:4,labels:{clear:`Reset`}});if(e===`otp-input`)return(0,U.jsx)(_.OtpInput,{value:r.replace(/\D/g,``).slice(0,6),onValueChange:o});if(e===`tag-input`)return(0,U.jsx)(ne.TagInput,{defaultValue:[`dashboard`,`beta`,`ops`],placeholder:`Add label`});if(e===`simple-select`)return(0,U.jsxs)(`div`,{className:`grid gap-4`,children:[(0,U.jsx)(s.Select,{value:`private`,onValueChange:()=>void 0,options:[{value:`public`,label:`Public`,description:`Visible to all users`},{value:`private`,label:`Private`,description:`Restricted to invited members`},{value:`internal`,label:`Internal`,description:`Only workspace maintainers`},{value:`archived`,label:`Archived`,description:`History only`,disabled:!0}],placeholder:`Visibility`,searchable:!0,clearable:!0}),(0,U.jsxs)(`div`,{className:`grid gap-3 md:grid-cols-3`,children:[(0,U.jsx)(`div`,{className:`rounded-2xl border border-[color:var(--aui-divider)] bg-[color:var(--aui-page-bg-alt)] px-4 py-3 text-sm aui-text-muted`,children:`Static options with lightweight search.`}),(0,U.jsx)(`div`,{className:`rounded-2xl border border-[color:var(--aui-divider)] bg-[color:var(--aui-page-bg-alt)] px-4 py-3 text-sm aui-text-muted`,children:`Clear action stays inside the trigger surface.`}),(0,U.jsx)(`div`,{className:`rounded-2xl border border-[color:var(--aui-divider)] bg-[color:var(--aui-page-bg-alt)] px-4 py-3 text-sm aui-text-muted`,children:`Use before moving to AsyncSelect.`})]})]});if(e===`async-select`){let e=[{value:`north`,label:`North Region`,description:`Sales ops`},{value:`south`,label:`South Region`,description:`Support team`},{value:`west`,label:`West Region`,description:`Billing operations`}];return(0,U.jsxs)(`div`,{className:`grid gap-4`,children:[(0,U.jsx)(g.AsyncSelect,{value:`north`,onValueChange:()=>void 0,loadOptions:async t=>{let n=t.trim().toLowerCase();return n?e.filter(e=>String(e.label).toLowerCase().includes(n)):e},defaultOptions:e,minSearchLength:1,clearable:!0}),(0,U.jsxs)(`div`,{className:`grid gap-3 md:grid-cols-3`,children:[(0,U.jsx)(`div`,{className:`rounded-2xl border border-[color:var(--aui-divider)] bg-[color:var(--aui-page-bg-alt)] px-4 py-3 text-sm aui-text-muted`,children:`Remote-ready select surface.`}),(0,U.jsx)(`div`,{className:`rounded-2xl border border-[color:var(--aui-divider)] bg-[color:var(--aui-page-bg-alt)] px-4 py-3 text-sm aui-text-muted`,children:`Hydration and clear behavior stay aligned.`}),(0,U.jsx)(`div`,{className:`rounded-2xl border border-[color:var(--aui-divider)] bg-[color:var(--aui-page-bg-alt)] px-4 py-3 text-sm aui-text-muted`,children:`Good for large or changing datasets.`})]})]})}return(0,U.jsx)(a.Input,{value:r,onChange:e=>n({textValue:e.currentTarget.value}),placeholder:`Unified input`})}function re({state:e,setState:t}){return(0,U.jsxs)(`div`,{className:`grid gap-4 md:grid-cols-2`,children:[(0,U.jsxs)(`label`,{className:`grid gap-2`,children:[(0,U.jsx)(`span`,{className:`text-sm font-medium aui-text-strong`,children:`Email address`}),(0,U.jsx)(a.Input,{value:e.textValue,onChange:e=>t({textValue:e.currentTarget.value})}),(0,U.jsx)(`span`,{className:`text-xs aui-text-muted`,children:`Form wrappers keep label, hint and error spacing consistent.`})]}),(0,U.jsxs)(`label`,{className:`grid gap-2`,children:[(0,U.jsx)(`span`,{className:`text-sm font-medium aui-text-strong`,children:`Status`}),(0,U.jsx)(a.Input,{type:`search`,value:`Active customers`,resultCount:7,readOnly:!0}),(0,U.jsx)(`span`,{className:`text-xs text-emerald-500`,children:`Ready to submit`})]})]})}function ie({slug:e}){return e===`alert-dialog`?(0,U.jsx)(te.AlertDialog,{open:!1,title:`Archive invoice?`,description:`This keeps the invoice readable but removes it from active queues.`,children:(0,U.jsx)(t.Button,{variant:`destructive`,children:`Open alert`})}):e===`drawer`?(0,U.jsx)(h.Drawer,{open:!1,trigger:(0,U.jsx)(t.Button,{variant:`outline`,children:`Open drawer`}),title:`Customer details`,description:`Side panel for fast inspection.`,children:(0,U.jsx)(S.DescriptionList,{items:[{key:`plan`,label:`Plan`,value:`Scale`},{key:`owner`,label:`Owner`,value:`Azamat UI`}]})}):(0,U.jsxs)(`div`,{className:`flex flex-wrap items-center justify-end gap-2 rounded-xl border border-[color:var(--aui-divider)] bg-[color:var(--aui-page-bg)] p-4`,children:[(0,U.jsx)(t.Button,{variant:`ghost`,children:`Cancel`}),(0,U.jsx)(t.Button,{variant:`outline`,children:`Save draft`}),(0,U.jsx)(t.Button,{children:`Publish`})]})}function ae({slug:e}){return e===`pagination`?(0,U.jsx)(d.Pagination,{page:3,pageCount:9,onPageChange:()=>void 0}):e===`page-tabs`?(0,U.jsx)(u.PageTabs,{value:`overview`,variant:`pills`,items:[{value:`overview`,label:`Overview`},{value:`usage`,label:`Usage`},{value:`api`,label:`API`,badge:`3`}]}):e===`stepper-tabs`?(0,U.jsx)(f.StepperTabs,{value:`billing`,items:[{value:`profile`,label:`Profile`,description:`Team and owner details`,completed:!0},{value:`billing`,label:`Billing`,description:`Payment and invoices`},{value:`review`,label:`Review`,description:`Confirm release`}]}):(0,U.jsx)(l.NavTabs,{value:`overview`,items:[{value:`overview`,label:`Overview`},{value:`usage`,label:`Usage`},{value:`api`,label:`API`}]})}function oe({slug:e}){return e===`alert`?(0,U.jsx)(b.Alert,{tone:`warning`,title:`Review needed`,description:`Billing rules changed and one approval is pending.`,action:(0,U.jsx)(t.Button,{size:`sm`,children:`Open`})}):e===`page-state`?(0,U.jsx)(x.PageState,{title:`Workspace connected`,description:`The route is ready to accept live data and team actions.`,tone:`success`,action:(0,U.jsx)(t.Button,{size:`sm`,children:`Continue`})}):(0,U.jsxs)(`div`,{className:`flex flex-wrap gap-2`,children:[(0,U.jsx)($,{tone:`success`,children:`Live`}),(0,U.jsx)($,{tone:`warning`,children:`Needs review`}),(0,U.jsx)($,{tone:`danger`,children:`Blocked`}),(0,U.jsx)($,{tone:`info`,children:`Queued`})]})}function se({slug:e}){return e===`progress`?(0,U.jsx)(w.Progress,{label:`Migration progress`,description:`Production rollout`,value:68,tone:`success`,showValue:!0}):e===`progress-circle`?(0,U.jsx)(T.ProgressCircle,{value:72,label:`Profile completed`}):e===`timeline`?(0,U.jsx)(O.Timeline,{items:[{key:`created`,title:`Created`,description:`Invoice generated`,time:`09:20`,tone:`success`},{key:`review`,title:`Review`,description:`Finance team assigned`,time:`10:05`,tone:`info`},{key:`approve`,title:`Approval`,description:`Waiting for manager`,time:`Now`,tone:`warning`}],pending:!0,pendingLabel:`Paid`}):e===`metric-card`||e===`stat-card`?(0,U.jsx)(A.StatCard,{title:`Revenue`,value:`$84.2k`,description:`Compared with last month`,trend:{value:`+12.4%`,tone:`success`},icon:(0,U.jsx)(H.LayoutDashboardIcon,{})}):e===`status-dot`?(0,U.jsxs)(`div`,{className:`grid gap-3`,children:[(0,U.jsx)(E.StatusDot,{tone:`success`,pulse:!0,label:`API healthy`}),(0,U.jsx)(E.StatusDot,{tone:`warning`,label:`Sync delayed`}),(0,U.jsx)(E.StatusDot,{tone:`danger`,label:`Webhook failed`})]}):e===`notification-center`?(0,U.jsx)(C.List,{items:[{key:`1`,title:`Build completed`,description:`Dashboard docs deployment is live.`,extra:`Now`},{key:`2`,title:`New comment`,description:`Review requested on DataTable API.`,extra:`8m`},{key:`3`,title:`Publish reminder`,description:`Package version is ready for release.`,extra:`1h`}]}):e===`data-list`?(0,U.jsx)(C.List,{items:[{key:`1`,title:`Enterprise plan`,description:`Priority support and SSO`,extra:`$499`},{key:`2`,title:`Growth plan`,description:`Most used by product teams`,extra:`$199`},{key:`3`,title:`Starter plan`,description:`Lightweight team setup`,extra:`$49`}]}):e===`status-legend`?(0,U.jsx)(D.StatusLegend,{title:`Delivery states`,description:`Explain what each state means and how often it appears.`,orientation:`grid`,items:[{key:`live`,label:`Live`,description:`Healthy production routes`,tone:`success`,count:18},{key:`review`,label:`Review`,description:`Waiting for QA approval`,tone:`warning`,count:4},{key:`blocked`,label:`Blocked`,description:`Needs engineering action`,tone:`danger`,count:1}]}):e===`trend-card`?(0,U.jsx)(A.StatCard,{title:e===`trend-card`?`Weekly revenue`:`Current vs previous`,value:`$84.2k`,description:`Compared with last month`,trend:{value:`+12.4%`,tone:`success`},icon:(0,U.jsx)(H.LayoutDashboardIcon,{})}):e===`info-card`?(0,U.jsxs)(`div`,{className:`grid gap-4`,children:[(0,U.jsx)(j.SmartCard,{eyebrow:`Summary`,title:`Workspace`,description:`Reusable card surface with header, actions and metadata.`,actions:(0,U.jsx)(t.Button,{size:`sm`,variant:`outline`,children:`Open`}),selected:!0,children:(0,U.jsx)(`p`,{className:`aui-text-muted mt-2 text-sm`,children:`Keep metadata, helper copy and compact actions in one reusable card surface.`})}),(0,U.jsxs)(`div`,{className:`grid gap-3 md:grid-cols-3`,children:[(0,U.jsx)(`div`,{className:`rounded-2xl border border-[color:var(--aui-divider)] bg-[color:var(--aui-page-bg-alt)] px-4 py-3 text-sm aui-text-muted`,children:`Vertical and horizontal layout support.`}),(0,U.jsx)(`div`,{className:`rounded-2xl border border-[color:var(--aui-divider)] bg-[color:var(--aui-page-bg-alt)] px-4 py-3 text-sm aui-text-muted`,children:`Selected and action-safe surfaces.`}),(0,U.jsx)(`div`,{className:`rounded-2xl border border-[color:var(--aui-divider)] bg-[color:var(--aui-page-bg-alt)] px-4 py-3 text-sm aui-text-muted`,children:`Useful for summary panels and detail sidebars.`})]})]}):(0,U.jsx)(k.UserCard,{name:`Azamat Jurayev`,description:`Product designer and maintainer`,meta:`Admin workspace`,actions:(0,U.jsx)(t.Button,{size:`sm`,children:`Invite`})})}function Q({slug:e,state:i,setState:o}){return e===`filter-bar`?(0,U.jsx)(p.FilterBar,{search:(0,U.jsx)(a.Input,{type:`search`,value:i.textValue,onValueChange:e=>o({textValue:e}),placeholder:`Search invoices...`}),activeCount:2,onReset:()=>o({textValue:``}),filters:(0,U.jsxs)(t.Button,{variant:`outline`,size:`sm`,children:[(0,U.jsx)(H.FilterIcon,{"data-icon":`inline-start`}),`Status`]}),actions:(0,U.jsx)(t.Button,{size:`sm`,children:`Export`})}):e===`button-group`?(0,U.jsx)(r.ButtonGroup,{items:[{key:`day`,label:`Day`},{key:`week`,label:`Week`},{key:`month`,label:`Month`}]}):e===`quick-action-grid`?(0,U.jsx)(c.QuickActionGrid,{columns:3,items:[{key:`new`,label:`New invoice`,description:`Create a fresh billing row.`,badge:`N`},{key:`import`,label:`Import CSV`,description:`Bring finance data into the table.`,badge:`I`},{key:`share`,label:`Share workspace`,description:`Invite team members to the route.`,badge:`S`}]}):e===`saved-filter-select`?(0,U.jsxs)(`div`,{className:`grid gap-4`,children:[(0,U.jsx)(m.SavedFilterSelect,{value:`billing`,onValueChange:()=>void 0,onSave:()=>void 0,onDelete:()=>void 0,filters:[{value:`billing`,label:`Billing`,description:`Invoices and payment status`},{value:`ops`,label:`Operations`,description:`Queues and workload`},{value:`owners`,label:`Owner: Azamat`,description:`Assigned records only`}]}),(0,U.jsxs)(`div`,{className:`grid gap-3 md:grid-cols-3`,children:[(0,U.jsx)(`div`,{className:`rounded-2xl border border-[color:var(--aui-divider)] bg-[color:var(--aui-page-bg-alt)] px-4 py-3 text-sm aui-text-muted`,children:`Named view switching for table routes.`}),(0,U.jsx)(`div`,{className:`rounded-2xl border border-[color:var(--aui-divider)] bg-[color:var(--aui-page-bg-alt)] px-4 py-3 text-sm aui-text-muted`,children:`Delete action stays isolated from parent selection.`}),(0,U.jsx)(`div`,{className:`rounded-2xl border border-[color:var(--aui-divider)] bg-[color:var(--aui-page-bg-alt)] px-4 py-3 text-sm aui-text-muted`,children:`Useful in finance, ops and admin dashboards.`})]})]}):(0,U.jsxs)(`div`,{className:`flex items-center justify-between rounded-xl border border-[color:var(--aui-divider)] bg-[color:var(--aui-page-bg)] p-4`,children:[(0,U.jsxs)(`div`,{children:[(0,U.jsx)(`p`,{className:`font-medium aui-text-strong`,children:`Invoice #4821`}),(0,U.jsx)(`p`,{className:`text-sm aui-text-muted`,children:`Pending approval`})]}),(0,U.jsx)(n.ActionMenu,{label:`Actions`,actions:[{key:`open`,label:`Open`,icon:(0,U.jsx)(H.ChevronRightIcon,{className:`size-4`})},{key:`download`,label:`Download`,icon:(0,U.jsx)(H.DownloadIcon,{className:`size-4`})},{key:`archive`,label:`Archive`,icon:(0,U.jsx)(H.ArchiveIcon,{className:`size-4`}),destructive:!0}],trigger:(0,U.jsx)(t.Button,{variant:`outline`,size:`icon-sm`,"aria-label":`Open actions`,children:(0,U.jsx)(H.MoreHorizontalIcon,{})})})]})}function ce({slug:e}){return e===`app-header`?(0,U.jsx)(R.AppHeader,{sticky:!1,left:(0,U.jsxs)(U.Fragment,{children:[(0,U.jsx)(H.LayoutDashboardIcon,{className:`size-4`}),(0,U.jsx)(`span`,{className:`font-medium`,children:`Dashboard`})]}),center:(0,U.jsx)(o.Badge,{variant:`secondary`,children:`Preview`}),right:(0,U.jsxs)(U.Fragment,{children:[(0,U.jsx)(t.Button,{variant:`ghost`,size:`icon-sm`,"aria-label":`Notifications`,children:(0,U.jsx)(H.BellIcon,{})}),(0,U.jsx)(t.Button,{size:`sm`,children:`Deploy`})]}),className:`rounded-xl border border-[color:var(--aui-divider)]`}):e===`section-header`?(0,U.jsx)(ee.SectionHeader,{eyebrow:`Components`,title:`Production-ready surfaces`,description:`SectionHeader keeps copy, metadata and actions aligned.`,actions:(0,U.jsx)(t.Button,{size:`sm`,children:`Add component`})}):(0,U.jsx)(A.StatCard,{title:`Revenue`,value:`$84.2k`,description:`Compared with last month`,trend:{value:`+12.4%`,tone:`success`},helperText:`StatCard keeps KPI, helper text and trend in one compact tile.`})}function le({slug:e}){return(0,U.jsxs)(`div`,{className:`overflow-hidden rounded-xl border border-[color:var(--aui-divider)] bg-[color:var(--aui-page-bg)]`,children:[(0,U.jsxs)(`div`,{className:`flex flex-wrap items-center justify-between gap-3 border-b border-[color:var(--aui-divider)] p-3`,children:[(0,U.jsx)(a.Input,{type:`search`,value:``,placeholder:`Search rows...`,className:`max-w-xs`,readOnly:!0}),(0,U.jsxs)(`div`,{className:`flex gap-2`,children:[(0,U.jsxs)(t.Button,{variant:`outline`,size:`sm`,children:[(0,U.jsx)(H.FilterIcon,{"data-icon":`inline-start`}),`Filters`]}),(0,U.jsx)(t.Button,{size:`sm`,children:`Create`})]})]}),(0,U.jsxs)(`div`,{className:`grid grid-cols-[40px_1fr_120px_72px] border-b border-[color:var(--aui-divider)] px-3 py-2 text-xs font-semibold uppercase tracking-[0.18em] aui-text-muted`,children:[(0,U.jsx)(`span`,{children:(0,U.jsx)(`input`,{type:`checkbox`,"aria-label":`Select rows`})}),(0,U.jsx)(`span`,{children:`Name`}),(0,U.jsx)(`span`,{children:`Status`}),(0,U.jsx)(`span`,{children:`Actions`})]}),[`Azamat UI`,`Registry`,`Dashboard`].map((e,n)=>(0,U.jsxs)(`div`,{className:`grid grid-cols-[40px_1fr_120px_72px] items-center border-b border-[color:var(--aui-divider)] px-3 py-3 last:border-b-0`,children:[(0,U.jsx)(`span`,{children:(0,U.jsx)(`input`,{type:`checkbox`,"aria-label":`Select ${e}`,defaultChecked:n===0})}),(0,U.jsx)(`span`,{className:`font-medium aui-text-strong`,children:e}),(0,U.jsx)(`span`,{children:(0,U.jsx)($,{tone:n===2?`warning`:`success`,children:n===2?`Review`:`Live`})}),(0,U.jsx)(`span`,{children:(0,U.jsx)(t.Button,{variant:`ghost`,size:`icon-sm`,"aria-label":`Row actions`,children:(0,U.jsx)(H.MoreHorizontalIcon,{})})})]},e)),(0,U.jsxs)(`div`,{className:`flex flex-wrap items-center justify-between gap-3 border-t border-[color:var(--aui-divider)] p-3 text-sm aui-text-muted`,children:[(0,U.jsxs)(`span`,{children:[{"data-table-column-visibility-menu":`Column visibility`,"data-table-sortable-header":`Sortable header`,"data-table-bulk-actions":`Bulk action bar`,"data-table-view-presets":`Saved view presets`}[e]??`DataTable part`,` preview`]}),(0,U.jsx)(d.Pagination,{page:1,pageCount:4,onPageChange:()=>void 0,showEdges:!1})]})]})}function ue(){return(0,U.jsx)(M.Calendar,{value:`2026-06-18`,defaultMonth:`2026-06-01`,onValueChange:()=>void 0})}function de({slug:e}){return e===`file-dropzone`?(0,U.jsx)(F.FileDropzone,{label:`Drop contract files`,description:`PDF, PNG or CSV up to 10MB.`}):e===`file-upload`?(0,U.jsxs)(`div`,{className:`grid gap-4`,children:[(0,U.jsx)(N.FileUpload,{dropzoneLabel:`Upload documents`,dropzoneDescription:`Drag files here or choose from your device.`,buttonLabel:`Choose files`,helperText:`Supports PDF, CSV and images.`}),(0,U.jsxs)(`div`,{className:`grid gap-3 md:grid-cols-3`,children:[(0,U.jsx)(`div`,{className:`rounded-2xl border border-[color:var(--aui-divider)] bg-[color:var(--aui-page-bg-alt)] px-4 py-3 text-sm aui-text-muted`,children:`Dropzone click and nested actions stay isolated.`}),(0,U.jsx)(`div`,{className:`rounded-2xl border border-[color:var(--aui-divider)] bg-[color:var(--aui-page-bg-alt)] px-4 py-3 text-sm aui-text-muted`,children:`Rejected states and helper copy live in the same component.`}),(0,U.jsx)(`div`,{className:`rounded-2xl border border-[color:var(--aui-divider)] bg-[color:var(--aui-page-bg-alt)] px-4 py-3 text-sm aui-text-muted`,children:`Use for production file routes, not just decorative previews.`})]})]}):e===`image-upload`?(0,U.jsxs)(`div`,{className:`grid gap-4`,children:[(0,U.jsx)(P.ImageUpload,{dropzoneLabel:`Upload product image`,helperText:`Preview-friendly upload for gallery and hero assets.`}),(0,U.jsxs)(`div`,{className:`grid gap-3 md:grid-cols-3`,children:[(0,U.jsx)(`div`,{className:`rounded-2xl border border-[color:var(--aui-divider)] bg-[color:var(--aui-page-bg-alt)] px-4 py-3 text-sm aui-text-muted`,children:`Image preview is part of the reusable component.`}),(0,U.jsx)(`div`,{className:`rounded-2xl border border-[color:var(--aui-divider)] bg-[color:var(--aui-page-bg-alt)] px-4 py-3 text-sm aui-text-muted`,children:`Remove action stays separate from the parent dropzone surface.`}),(0,U.jsx)(`div`,{className:`rounded-2xl border border-[color:var(--aui-divider)] bg-[color:var(--aui-page-bg-alt)] px-4 py-3 text-sm aui-text-muted`,children:`Good for template thumbnails and marketing assets.`})]})]}):(0,U.jsxs)(`div`,{className:`grid gap-4 md:grid-cols-[160px_1fr] md:items-center`,children:[(0,U.jsx)(`div`,{className:`flex aspect-square items-center justify-center rounded-2xl border border-dashed border-[color:var(--aui-divider)] bg-[color:var(--aui-page-bg)]`,children:(0,U.jsx)(H.UploadCloudIcon,{className:`size-8 aui-text-muted`})}),(0,U.jsx)(F.FileDropzone,{label:`Upload product image`,description:`Shows the image-upload flow without custom CSS.`,accept:`image/*`})]})}function fe({slug:e}){let t=[{id:`profile`,title:`Profile`,description:`Account details`,completed:!0},{id:`billing`,title:`Billing`,description:`Payment setup`},{id:`review`,title:`Review`,description:`Confirm data`}];return e===`stepper`?(0,U.jsx)(I.Stepper,{steps:t,currentStep:`billing`,onStepChange:()=>void 0}):(0,U.jsx)(L.Wizard,{steps:t,currentStep:`billing`,onNext:()=>void 0,onPrevious:()=>void 0,onFinish:()=>void 0,children:(0,U.jsxs)(`div`,{className:`rounded-xl border border-[color:var(--aui-divider)] bg-[color:var(--aui-page-bg)] p-4`,children:[(0,U.jsx)(`p`,{className:`font-medium aui-text-strong`,children:`Billing setup`}),(0,U.jsx)(`p`,{className:`mt-1 text-sm aui-text-muted`,children:`Wizard combines steps, content and footer controls.`})]})})}function pe({slug:e}){return e===`resource-detail-page`?(0,U.jsx)(z.ResourceDetailPage,{title:`Customer profile`,description:`ResourceDetailPage organizes detail screens.`,actions:(0,U.jsx)(t.Button,{size:`sm`,children:`Edit`}),children:(0,U.jsx)(B.ResourcePageSection,{title:`Account`,children:(0,U.jsx)(S.DescriptionList,{items:[{key:`plan`,label:`Plan`,value:`Scale`},{key:`owner`,label:`Owner`,value:`Design team`}]})})}):(0,U.jsx)(B.ResourcePage,{title:`Customers`,description:`ResourcePage combines header, stats, filters and sections.`,actions:(0,U.jsx)(t.Button,{size:`sm`,children:`New customer`}),stats:(0,U.jsxs)(`div`,{className:`grid gap-3 sm:grid-cols-2`,children:[(0,U.jsx)(A.StatCard,{title:`Active`,value:`2,418`,trend:{value:`+8%`,tone:`success`}}),(0,U.jsx)(A.StatCard,{title:`Health`,value:`94%`,trend:{value:`Stable`,tone:`info`}})]}),filters:(0,U.jsx)(p.FilterBar,{search:(0,U.jsx)(a.Input,{type:`search`,value:``,placeholder:`Search...`,readOnly:!0}),activeCount:1}),children:(0,U.jsx)(B.ResourcePageSection,{title:`Recent activity`,children:(0,U.jsx)(O.Timeline,{items:[{key:`a`,title:`Customer added`,description:`Acme workspace`,tone:`success`},{key:`b`,title:`Plan updated`,description:`Scale plan enabled`,tone:`info`}]})})})}function me(e){return e.split(`-`).map(e=>e.charAt(0).toUpperCase()+e.slice(1)).join(` `)}function $({tone:e,children:t}){return(0,U.jsx)(o.Badge,{variant:{success:`secondary`,warning:`outline`,danger:`destructive`,info:`outline`}[e],children:t})}exports.registrySpecificDemoRegistry=G;
@@ -2,27 +2,26 @@ import { Button as e } from "../components/ui/button/index.js";
2
2
  import { ActionMenu as t } from "../components/actions/action-menu.js";
3
3
  import { ButtonGroup as n } from "../components/actions/button-group.js";
4
4
  import { PasswordInput as r } from "../components/inputs/password-input.js";
5
- import { SearchInput as i } from "../components/inputs/search-input.js";
6
- import { Input as a } from "../components/ui/input/index.js";
7
- import { Badge as o } from "../components/ui/badge/index.js";
5
+ import { Input as i } from "../components/ui/input/index.js";
6
+ import { Badge as a } from "../components/ui/badge/index.js";
7
+ import { Select as o } from "../components/ui/select/index.js";
8
8
  import { QuickActionGrid as s } from "../components/actions/quick-action-grid.js";
9
9
  import { SectionHeader as c } from "../components/layout/section-header.js";
10
10
  import { NavTabs as l } from "../components/navigation/nav-tabs.js";
11
- import { PageTabs as u } from "../components/navigation/page-tabs.js";
12
- import { Pagination as d } from "../components/navigation/pagination.js";
13
- import { StepperTabs as f } from "../components/navigation/stepper-tabs.js";
14
- import { FilterBar as p } from "../components/filters/filter-bar.js";
15
- import { SavedFilterSelect as m } from "../components/filters/saved-filter-select.js";
16
- import { AlertDialog as h } from "../components/overlay/alert-dialog.js";
17
- import { Drawer as g } from "../components/overlay/drawer.js";
18
- import { AsyncSelect as ee } from "../components/inputs/async-select.js";
19
- import { SimpleSelect as _ } from "../components/inputs/simple-select.js";
20
- import { OtpInput as v } from "../components/inputs/otp-input.js";
21
- import { Rating as y } from "../components/inputs/rating.js";
22
- import { RangeSlider as te, Slider as ne } from "../components/inputs/slider.js";
23
- import { TagInput as re } from "../components/inputs/tag-input.js";
24
- import { Alert as ie } from "../components/feedback/alert.js";
25
- import { PageState as ae } from "../components/feedback/page-state.js";
11
+ import { PageTabs as ee } from "../components/navigation/page-tabs.js";
12
+ import { Pagination as u } from "../components/navigation/pagination.js";
13
+ import { StepperTabs as d } from "../components/navigation/stepper-tabs.js";
14
+ import { FilterBar as f } from "../components/filters/filter-bar.js";
15
+ import { SavedFilterSelect as p } from "../components/filters/saved-filter-select.js";
16
+ import { AlertDialog as m } from "../components/overlay/alert-dialog.js";
17
+ import { Drawer as h } from "../components/overlay/drawer.js";
18
+ import { AsyncSelect as g } from "../components/inputs/async-select.js";
19
+ import { OtpInput as te } from "../components/inputs/otp-input.js";
20
+ import { Rating as _ } from "../components/inputs/rating.js";
21
+ import { RangeSlider as v, Slider as y } from "../components/inputs/slider.js";
22
+ import { TagInput as ne } from "../components/inputs/tag-input.js";
23
+ import { Alert as re } from "../components/feedback/alert.js";
24
+ import { PageState as ie } from "../components/feedback/page-state.js";
26
25
  import { DescriptionList as b } from "../components/display/description-list.js";
27
26
  import { List as x } from "../components/display/list.js";
28
27
  import { Progress as S } from "../components/display/progress.js";
@@ -46,7 +45,7 @@ import "react";
46
45
  import { ArchiveIcon as B, BellIcon as V, ChevronRightIcon as H, DownloadIcon as U, FilterIcon as W, LayoutDashboardIcon as G, MoreHorizontalIcon as K, UploadCloudIcon as q } from "lucide-react";
47
46
  import { Fragment as J, jsx as Y, jsxs as X } from "react/jsx-runtime";
48
47
  //#region src/showcase/registry-specific.tsx
49
- var oe = [
48
+ var ae = [
50
49
  Z("alert-dialog", "AlertDialog", "overlay", "Destructive confirmation dialog with loading-ready action states."),
51
50
  Z("drawer", "Drawer", "overlay", "Side panel for contextual details without leaving the page."),
52
51
  Z("pagination", "Pagination", "navigation", "Controlled page navigation with edge buttons and active state."),
@@ -86,15 +85,15 @@ var oe = [
86
85
  Z("wizard", "Wizard", "wizard", "Stepper, content and footer controls combined into one workflow."),
87
86
  Z("resource-page", "ResourcePage", "patterns", "Full resource index page shell for admin dashboards."),
88
87
  Z("resource-detail-page", "ResourceDetailPage", "patterns", "Detail page shell with title, metadata and sections.")
89
- ], se = Object.fromEntries(oe.map((e) => [e.slug, {
90
- mock: ce(e),
91
- Showcase: (t) => /* @__PURE__ */ Y(ue, {
88
+ ], oe = Object.fromEntries(ae.map((e) => [e.slug, {
89
+ mock: se(e),
90
+ Showcase: (t) => /* @__PURE__ */ Y(le, {
92
91
  definition: e,
93
92
  ...t
94
93
  })
95
94
  }]));
96
95
  function Z(e, t, n, r, i = t) {
97
- let a = we(e);
96
+ let a = Ce(e);
98
97
  return {
99
98
  slug: e,
100
99
  title: a,
@@ -116,20 +115,20 @@ function Z(e, t, n, r, i = t) {
116
115
  }]
117
116
  };
118
117
  }
119
- function ce(e) {
118
+ function se(e) {
120
119
  return {
121
120
  cliCommand: `npx tembro add ${e.slug}`,
122
- code: le(e),
121
+ code: ce(e),
123
122
  highlights: e.highlights,
124
123
  scenarios: e.scenarios,
125
124
  capabilityNotes: [`Add ${e.slug} into your local source with the CLI.`, "Import the public component surface from `tembro` in app code."]
126
125
  };
127
126
  }
128
- function le(e) {
127
+ function ce(e) {
129
128
  let t = e.importName ?? e.component;
130
129
  return `import { ${t} } from "tembro"\n\nexport function Demo() {\n return <${t} />\n}`;
131
130
  }
132
- function ue({ definition: e, state: t, setState: n }) {
131
+ function le({ definition: e, state: t, setState: n }) {
133
132
  return /* @__PURE__ */ X("div", {
134
133
  className: "space-y-5",
135
134
  children: [/* @__PURE__ */ X("header", {
@@ -146,28 +145,29 @@ function ue({ definition: e, state: t, setState: n }) {
146
145
  })] })]
147
146
  }), /* @__PURE__ */ Y("div", {
148
147
  className: "rounded-2xl border border-[color:var(--aui-divider)] bg-[color:var(--aui-page-bg-alt)] p-4 sm:p-5",
149
- children: de(e, t, n)
148
+ children: ue(e, t, n)
150
149
  })]
151
150
  });
152
151
  }
153
- function de(e, t, n) {
154
- return e.kind === "inputs" ? /* @__PURE__ */ Y(fe, {
152
+ function ue(e, t, n) {
153
+ return e.kind === "inputs" ? /* @__PURE__ */ Y(de, {
155
154
  slug: e.slug,
156
155
  state: t,
157
156
  setState: n
158
- }) : e.kind === "form" ? /* @__PURE__ */ Y(pe, {
157
+ }) : e.kind === "form" ? /* @__PURE__ */ Y(fe, {
159
158
  state: t,
160
159
  setState: n
161
- }) : e.kind === "overlay" ? /* @__PURE__ */ Y(me, { slug: e.slug }) : e.kind === "navigation" ? /* @__PURE__ */ Y(Q, { slug: e.slug }) : e.kind === "feedback" ? /* @__PURE__ */ Y(he, { slug: e.slug }) : e.kind === "display" ? /* @__PURE__ */ Y(ge, { slug: e.slug }) : e.kind === "actions" ? /* @__PURE__ */ Y(_e, {
160
+ }) : e.kind === "overlay" ? /* @__PURE__ */ Y(pe, { slug: e.slug }) : e.kind === "navigation" ? /* @__PURE__ */ Y(me, { slug: e.slug }) : e.kind === "feedback" ? /* @__PURE__ */ Y(Q, { slug: e.slug }) : e.kind === "display" ? /* @__PURE__ */ Y(he, { slug: e.slug }) : e.kind === "actions" ? /* @__PURE__ */ Y(ge, {
162
161
  slug: e.slug,
163
162
  state: t,
164
163
  setState: n
165
- }) : e.kind === "layout" ? /* @__PURE__ */ Y(ve, { slug: e.slug }) : e.kind === "data-table" ? /* @__PURE__ */ Y(ye, { slug: e.slug }) : e.kind === "calendar" ? /* @__PURE__ */ Y(be, {}) : e.kind === "upload" ? /* @__PURE__ */ Y(xe, { slug: e.slug }) : e.kind === "wizard" ? /* @__PURE__ */ Y(Se, { slug: e.slug }) : e.kind === "patterns" ? /* @__PURE__ */ Y(Ce, { slug: e.slug }) : null;
164
+ }) : e.kind === "layout" ? /* @__PURE__ */ Y(_e, { slug: e.slug }) : e.kind === "data-table" ? /* @__PURE__ */ Y(ve, { slug: e.slug }) : e.kind === "calendar" ? /* @__PURE__ */ Y(ye, {}) : e.kind === "upload" ? /* @__PURE__ */ Y(be, { slug: e.slug }) : e.kind === "wizard" ? /* @__PURE__ */ Y(xe, { slug: e.slug }) : e.kind === "patterns" ? /* @__PURE__ */ Y(Se, { slug: e.slug }) : null;
166
165
  }
167
- function fe({ slug: e, state: t, setState: n }) {
168
- let o = t.textValue, s = (e) => n({ textValue: e });
166
+ function de({ slug: e, state: t, setState: n }) {
167
+ let a = t.textValue, s = (e) => n({ textValue: e });
169
168
  if (e === "search-input") return /* @__PURE__ */ Y(i, {
170
- value: o,
169
+ type: "search",
170
+ value: a,
171
171
  onValueChange: s,
172
172
  resultCount: 12,
173
173
  shortcut: "Ctrl K",
@@ -178,27 +178,27 @@ function fe({ slug: e, state: t, setState: n }) {
178
178
  onValueChange: s,
179
179
  placeholder: "Password"
180
180
  });
181
- if (e === "slider") return /* @__PURE__ */ Y(ne, {
181
+ if (e === "slider") return /* @__PURE__ */ Y(y, {
182
182
  label: "Density",
183
183
  description: "Tune content density.",
184
184
  defaultValue: 64,
185
185
  showValue: !0
186
186
  });
187
- if (e === "range-slider") return /* @__PURE__ */ Y(te, {
187
+ if (e === "range-slider") return /* @__PURE__ */ Y(v, {
188
188
  label: "Revenue range",
189
189
  description: "Filter between two values.",
190
190
  defaultValue: [20, 80],
191
191
  showValue: !0
192
192
  });
193
- if (e === "rating") return /* @__PURE__ */ Y(y, {
193
+ if (e === "rating") return /* @__PURE__ */ Y(_, {
194
194
  defaultValue: 4,
195
195
  labels: { clear: "Reset" }
196
196
  });
197
- if (e === "otp-input") return /* @__PURE__ */ Y(v, {
198
- value: o.replace(/\D/g, "").slice(0, 6),
197
+ if (e === "otp-input") return /* @__PURE__ */ Y(te, {
198
+ value: a.replace(/\D/g, "").slice(0, 6),
199
199
  onValueChange: s
200
200
  });
201
- if (e === "tag-input") return /* @__PURE__ */ Y(re, {
201
+ if (e === "tag-input") return /* @__PURE__ */ Y(ne, {
202
202
  defaultValue: [
203
203
  "dashboard",
204
204
  "beta",
@@ -208,7 +208,7 @@ function fe({ slug: e, state: t, setState: n }) {
208
208
  });
209
209
  if (e === "simple-select") return /* @__PURE__ */ X("div", {
210
210
  className: "grid gap-4",
211
- children: [/* @__PURE__ */ Y(_, {
211
+ children: [/* @__PURE__ */ Y(o, {
212
212
  value: "private",
213
213
  onValueChange: () => void 0,
214
214
  options: [
@@ -275,7 +275,7 @@ function fe({ slug: e, state: t, setState: n }) {
275
275
  ];
276
276
  return /* @__PURE__ */ X("div", {
277
277
  className: "grid gap-4",
278
- children: [/* @__PURE__ */ Y(ee, {
278
+ children: [/* @__PURE__ */ Y(g, {
279
279
  value: "north",
280
280
  onValueChange: () => void 0,
281
281
  loadOptions: async (t) => {
@@ -304,13 +304,13 @@ function fe({ slug: e, state: t, setState: n }) {
304
304
  })]
305
305
  });
306
306
  }
307
- return /* @__PURE__ */ Y(a, {
308
- value: o,
307
+ return /* @__PURE__ */ Y(i, {
308
+ value: a,
309
309
  onChange: (e) => n({ textValue: e.currentTarget.value }),
310
310
  placeholder: "Unified input"
311
311
  });
312
312
  }
313
- function pe({ state: e, setState: t }) {
313
+ function fe({ state: e, setState: t }) {
314
314
  return /* @__PURE__ */ X("div", {
315
315
  className: "grid gap-4 md:grid-cols-2",
316
316
  children: [/* @__PURE__ */ X("label", {
@@ -320,7 +320,7 @@ function pe({ state: e, setState: t }) {
320
320
  className: "text-sm font-medium aui-text-strong",
321
321
  children: "Email address"
322
322
  }),
323
- /* @__PURE__ */ Y(a, {
323
+ /* @__PURE__ */ Y(i, {
324
324
  value: e.textValue,
325
325
  onChange: (e) => t({ textValue: e.currentTarget.value })
326
326
  }),
@@ -337,6 +337,7 @@ function pe({ state: e, setState: t }) {
337
337
  children: "Status"
338
338
  }),
339
339
  /* @__PURE__ */ Y(i, {
340
+ type: "search",
340
341
  value: "Active customers",
341
342
  resultCount: 7,
342
343
  readOnly: !0
@@ -349,8 +350,8 @@ function pe({ state: e, setState: t }) {
349
350
  })]
350
351
  });
351
352
  }
352
- function me({ slug: t }) {
353
- return t === "alert-dialog" ? /* @__PURE__ */ Y(h, {
353
+ function pe({ slug: t }) {
354
+ return t === "alert-dialog" ? /* @__PURE__ */ Y(m, {
354
355
  open: !1,
355
356
  title: "Archive invoice?",
356
357
  description: "This keeps the invoice readable but removes it from active queues.",
@@ -358,7 +359,7 @@ function me({ slug: t }) {
358
359
  variant: "destructive",
359
360
  children: "Open alert"
360
361
  })
361
- }) : t === "drawer" ? /* @__PURE__ */ Y(g, {
362
+ }) : t === "drawer" ? /* @__PURE__ */ Y(h, {
362
363
  open: !1,
363
364
  trigger: /* @__PURE__ */ Y(e, {
364
365
  variant: "outline",
@@ -390,12 +391,12 @@ function me({ slug: t }) {
390
391
  ]
391
392
  });
392
393
  }
393
- function Q({ slug: e }) {
394
- return e === "pagination" ? /* @__PURE__ */ Y(d, {
394
+ function me({ slug: e }) {
395
+ return e === "pagination" ? /* @__PURE__ */ Y(u, {
395
396
  page: 3,
396
397
  pageCount: 9,
397
398
  onPageChange: () => void 0
398
- }) : e === "page-tabs" ? /* @__PURE__ */ Y(u, {
399
+ }) : e === "page-tabs" ? /* @__PURE__ */ Y(ee, {
399
400
  value: "overview",
400
401
  variant: "pills",
401
402
  items: [
@@ -413,7 +414,7 @@ function Q({ slug: e }) {
413
414
  badge: "3"
414
415
  }
415
416
  ]
416
- }) : e === "stepper-tabs" ? /* @__PURE__ */ Y(f, {
417
+ }) : e === "stepper-tabs" ? /* @__PURE__ */ Y(d, {
417
418
  value: "billing",
418
419
  items: [
419
420
  {
@@ -451,8 +452,8 @@ function Q({ slug: e }) {
451
452
  ]
452
453
  });
453
454
  }
454
- function he({ slug: t }) {
455
- return t === "alert" ? /* @__PURE__ */ Y(ie, {
455
+ function Q({ slug: t }) {
456
+ return t === "alert" ? /* @__PURE__ */ Y(re, {
456
457
  tone: "warning",
457
458
  title: "Review needed",
458
459
  description: "Billing rules changed and one approval is pending.",
@@ -460,7 +461,7 @@ function he({ slug: t }) {
460
461
  size: "sm",
461
462
  children: "Open"
462
463
  })
463
- }) : t === "page-state" ? /* @__PURE__ */ Y(ae, {
464
+ }) : t === "page-state" ? /* @__PURE__ */ Y(ie, {
464
465
  title: "Workspace connected",
465
466
  description: "The route is ready to accept live data and team actions.",
466
467
  tone: "success",
@@ -490,7 +491,7 @@ function he({ slug: t }) {
490
491
  ]
491
492
  });
492
493
  }
493
- function ge({ slug: t }) {
494
+ function he({ slug: t }) {
494
495
  return t === "progress" ? /* @__PURE__ */ Y(S, {
495
496
  label: "Migration progress",
496
497
  description: "Production rollout",
@@ -669,9 +670,10 @@ function ge({ slug: t }) {
669
670
  })
670
671
  });
671
672
  }
672
- function _e({ slug: r, state: a, setState: o }) {
673
- return r === "filter-bar" ? /* @__PURE__ */ Y(p, {
673
+ function ge({ slug: r, state: a, setState: o }) {
674
+ return r === "filter-bar" ? /* @__PURE__ */ Y(f, {
674
675
  search: /* @__PURE__ */ Y(i, {
676
+ type: "search",
675
677
  value: a.textValue,
676
678
  onValueChange: (e) => o({ textValue: e }),
677
679
  placeholder: "Search invoices..."
@@ -724,7 +726,7 @@ function _e({ slug: r, state: a, setState: o }) {
724
726
  ]
725
727
  }) : r === "saved-filter-select" ? /* @__PURE__ */ X("div", {
726
728
  className: "grid gap-4",
727
- children: [/* @__PURE__ */ Y(m, {
729
+ children: [/* @__PURE__ */ Y(p, {
728
730
  value: "billing",
729
731
  onValueChange: () => void 0,
730
732
  onSave: () => void 0,
@@ -800,14 +802,14 @@ function _e({ slug: r, state: a, setState: o }) {
800
802
  })]
801
803
  });
802
804
  }
803
- function ve({ slug: t }) {
805
+ function _e({ slug: t }) {
804
806
  return t === "app-header" ? /* @__PURE__ */ Y(I, {
805
807
  sticky: !1,
806
808
  left: /* @__PURE__ */ X(J, { children: [/* @__PURE__ */ Y(G, { className: "size-4" }), /* @__PURE__ */ Y("span", {
807
809
  className: "font-medium",
808
810
  children: "Dashboard"
809
811
  })] }),
810
- center: /* @__PURE__ */ Y(o, {
812
+ center: /* @__PURE__ */ Y(a, {
811
813
  variant: "secondary",
812
814
  children: "Preview"
813
815
  }),
@@ -840,13 +842,14 @@ function ve({ slug: t }) {
840
842
  helperText: "StatCard keeps KPI, helper text and trend in one compact tile."
841
843
  });
842
844
  }
843
- function ye({ slug: t }) {
845
+ function ve({ slug: t }) {
844
846
  return /* @__PURE__ */ X("div", {
845
847
  className: "overflow-hidden rounded-xl border border-[color:var(--aui-divider)] bg-[color:var(--aui-page-bg)]",
846
848
  children: [
847
849
  /* @__PURE__ */ X("div", {
848
850
  className: "flex flex-wrap items-center justify-between gap-3 border-b border-[color:var(--aui-divider)] p-3",
849
851
  children: [/* @__PURE__ */ Y(i, {
852
+ type: "search",
850
853
  value: "",
851
854
  placeholder: "Search rows...",
852
855
  className: "max-w-xs",
@@ -910,7 +913,7 @@ function ye({ slug: t }) {
910
913
  "data-table-sortable-header": "Sortable header",
911
914
  "data-table-bulk-actions": "Bulk action bar",
912
915
  "data-table-view-presets": "Saved view presets"
913
- }[t] ?? "DataTable part", " preview"] }), /* @__PURE__ */ Y(d, {
916
+ }[t] ?? "DataTable part", " preview"] }), /* @__PURE__ */ Y(u, {
914
917
  page: 1,
915
918
  pageCount: 4,
916
919
  onPageChange: () => void 0,
@@ -920,14 +923,14 @@ function ye({ slug: t }) {
920
923
  ]
921
924
  });
922
925
  }
923
- function be() {
926
+ function ye() {
924
927
  return /* @__PURE__ */ Y(A, {
925
928
  value: "2026-06-18",
926
929
  defaultMonth: "2026-06-01",
927
930
  onValueChange: () => void 0
928
931
  });
929
932
  }
930
- function xe({ slug: e }) {
933
+ function be({ slug: e }) {
931
934
  return e === "file-dropzone" ? /* @__PURE__ */ Y(N, {
932
935
  label: "Drop contract files",
933
936
  description: "PDF, PNG or CSV up to 10MB."
@@ -989,7 +992,7 @@ function xe({ slug: e }) {
989
992
  })]
990
993
  });
991
994
  }
992
- function Se({ slug: e }) {
995
+ function xe({ slug: e }) {
993
996
  let t = [
994
997
  {
995
998
  id: "profile",
@@ -1030,7 +1033,7 @@ function Se({ slug: e }) {
1030
1033
  })
1031
1034
  });
1032
1035
  }
1033
- function Ce({ slug: t }) {
1036
+ function Se({ slug: t }) {
1034
1037
  return t === "resource-detail-page" ? /* @__PURE__ */ Y(L, {
1035
1038
  title: "Customer profile",
1036
1039
  description: "ResourceDetailPage organizes detail screens.",
@@ -1075,8 +1078,9 @@ function Ce({ slug: t }) {
1075
1078
  }
1076
1079
  })]
1077
1080
  }),
1078
- filters: /* @__PURE__ */ Y(p, {
1081
+ filters: /* @__PURE__ */ Y(f, {
1079
1082
  search: /* @__PURE__ */ Y(i, {
1083
+ type: "search",
1080
1084
  value: "",
1081
1085
  placeholder: "Search...",
1082
1086
  readOnly: !0
@@ -1099,11 +1103,11 @@ function Ce({ slug: t }) {
1099
1103
  })
1100
1104
  });
1101
1105
  }
1102
- function we(e) {
1106
+ function Ce(e) {
1103
1107
  return e.split("-").map((e) => e.charAt(0).toUpperCase() + e.slice(1)).join(" ");
1104
1108
  }
1105
1109
  function $({ tone: e, children: t }) {
1106
- return /* @__PURE__ */ Y(o, {
1110
+ return /* @__PURE__ */ Y(a, {
1107
1111
  variant: {
1108
1112
  success: "secondary",
1109
1113
  warning: "outline",
@@ -1114,4 +1118,4 @@ function $({ tone: e, children: t }) {
1114
1118
  });
1115
1119
  }
1116
1120
  //#endregion
1117
- export { se as registrySpecificDemoRegistry };
1121
+ export { oe as registrySpecificDemoRegistry };