@nadicodeai/ui 12.1.102 → 12.1.104

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 (562) hide show
  1. package/dist/components/accordion.d.ts +38 -12
  2. package/dist/components/accordion.d.ts.map +1 -1
  3. package/dist/components/accordion.js +36 -15
  4. package/dist/components/account-menu.js +2 -2
  5. package/dist/components/action-menu.d.ts +20 -19
  6. package/dist/components/action-menu.d.ts.map +1 -1
  7. package/dist/components/action-menu.js +22 -15
  8. package/dist/components/action-status.d.ts +14 -10
  9. package/dist/components/action-status.d.ts.map +1 -1
  10. package/dist/components/action-status.js +14 -10
  11. package/dist/components/activity-calendar.d.ts +3 -1
  12. package/dist/components/activity-calendar.d.ts.map +1 -1
  13. package/dist/components/activity-calendar.js +16 -2
  14. package/dist/components/activity-feed.d.ts +2 -2
  15. package/dist/components/activity-feed.d.ts.map +1 -1
  16. package/dist/components/activity-feed.js +14 -5
  17. package/dist/components/agent-card.d.ts +11 -5
  18. package/dist/components/agent-card.d.ts.map +1 -1
  19. package/dist/components/agent-card.js +13 -7
  20. package/dist/components/agent-list-row.js +1 -1
  21. package/dist/components/agent-orb-appearance.d.ts +7 -1
  22. package/dist/components/agent-orb-appearance.d.ts.map +1 -1
  23. package/dist/components/agent-orb-appearance.js +26 -0
  24. package/dist/components/agent-profile.d.ts +8 -7
  25. package/dist/components/agent-profile.d.ts.map +1 -1
  26. package/dist/components/agent-profile.js +6 -6
  27. package/dist/components/alert-dialog.d.ts +25 -16
  28. package/dist/components/alert-dialog.d.ts.map +1 -1
  29. package/dist/components/alert-dialog.js +30 -18
  30. package/dist/components/alert.d.ts +1 -1
  31. package/dist/components/avatar.d.ts +83 -17
  32. package/dist/components/avatar.d.ts.map +1 -1
  33. package/dist/components/avatar.js +89 -23
  34. package/dist/components/badge.d.ts +59 -8
  35. package/dist/components/badge.d.ts.map +1 -1
  36. package/dist/components/badge.js +57 -14
  37. package/dist/components/breadcrumb.d.ts +18 -7
  38. package/dist/components/breadcrumb.d.ts.map +1 -1
  39. package/dist/components/breadcrumb.js +37 -13
  40. package/dist/components/button-group.d.ts +12 -15
  41. package/dist/components/button-group.d.ts.map +1 -1
  42. package/dist/components/button-group.js +13 -17
  43. package/dist/components/button.d.ts +126 -23
  44. package/dist/components/button.d.ts.map +1 -1
  45. package/dist/components/button.js +164 -39
  46. package/dist/components/calendar.d.ts +26 -15
  47. package/dist/components/calendar.d.ts.map +1 -1
  48. package/dist/components/calendar.js +60 -46
  49. package/dist/components/card-row.d.ts +13 -5
  50. package/dist/components/card-row.d.ts.map +1 -1
  51. package/dist/components/card-row.js +24 -10
  52. package/dist/components/card.d.ts +6 -12
  53. package/dist/components/card.d.ts.map +1 -1
  54. package/dist/components/card.js +11 -16
  55. package/dist/components/carousel.d.ts +3 -3
  56. package/dist/components/carousel.d.ts.map +1 -1
  57. package/dist/components/carousel.js +7 -7
  58. package/dist/components/catalog-drawer.d.ts +7 -7
  59. package/dist/components/catalog-drawer.d.ts.map +1 -1
  60. package/dist/components/catalog-drawer.js +6 -6
  61. package/dist/components/chart-area-stacked.d.ts +1 -1
  62. package/dist/components/chart-area-stacked.d.ts.map +1 -1
  63. package/dist/components/chart-area-stacked.js +4 -4
  64. package/dist/components/chart-axis.d.ts +14 -1
  65. package/dist/components/chart-axis.d.ts.map +1 -1
  66. package/dist/components/chart-axis.js +11 -1
  67. package/dist/components/chart-bar-horizontal.d.ts +2 -2
  68. package/dist/components/chart-bar-horizontal.d.ts.map +1 -1
  69. package/dist/components/chart-bar-horizontal.js +14 -5
  70. package/dist/components/chart-bar-multiple.d.ts +1 -1
  71. package/dist/components/chart-bar-multiple.d.ts.map +1 -1
  72. package/dist/components/chart-bar-multiple.js +3 -3
  73. package/dist/components/chart-bar-stacked.d.ts +1 -1
  74. package/dist/components/chart-bar-stacked.d.ts.map +1 -1
  75. package/dist/components/chart-bar-stacked.js +3 -3
  76. package/dist/components/chart-card.d.ts +17 -6
  77. package/dist/components/chart-card.d.ts.map +1 -1
  78. package/dist/components/chart-card.js +11 -4
  79. package/dist/components/chart-date-range-control.d.ts +18 -9
  80. package/dist/components/chart-date-range-control.d.ts.map +1 -1
  81. package/dist/components/chart-date-range-control.js +43 -47
  82. package/dist/components/chart-sparkline.d.ts +4 -3
  83. package/dist/components/chart-sparkline.d.ts.map +1 -1
  84. package/dist/components/chart-sparkline.js +6 -5
  85. package/dist/components/check-counts.d.ts +44 -0
  86. package/dist/components/check-counts.d.ts.map +1 -0
  87. package/dist/components/check-counts.js +51 -0
  88. package/dist/components/checkbox.d.ts +39 -11
  89. package/dist/components/checkbox.d.ts.map +1 -1
  90. package/dist/components/checkbox.js +38 -11
  91. package/dist/components/choicebox.d.ts +96 -0
  92. package/dist/components/choicebox.d.ts.map +1 -0
  93. package/dist/components/choicebox.js +113 -0
  94. package/dist/components/clearable-input.d.ts +57 -0
  95. package/dist/components/clearable-input.d.ts.map +1 -0
  96. package/dist/components/clearable-input.js +58 -0
  97. package/dist/components/code-block.d.ts +77 -17
  98. package/dist/components/code-block.d.ts.map +1 -1
  99. package/dist/components/code-block.js +85 -15
  100. package/dist/components/collapsible.d.ts +27 -10
  101. package/dist/components/collapsible.d.ts.map +1 -1
  102. package/dist/components/collapsible.js +24 -9
  103. package/dist/components/collection-filters.d.ts +3 -1
  104. package/dist/components/collection-filters.d.ts.map +1 -1
  105. package/dist/components/collection-filters.js +7 -9
  106. package/dist/components/collection-page.d.ts +31 -10
  107. package/dist/components/collection-page.d.ts.map +1 -1
  108. package/dist/components/collection-page.js +14 -13
  109. package/dist/components/collection-search.d.ts +32 -10
  110. package/dist/components/collection-search.d.ts.map +1 -1
  111. package/dist/components/collection-search.js +24 -13
  112. package/dist/components/collection-sort.d.ts.map +1 -1
  113. package/dist/components/collection-sort.js +2 -2
  114. package/dist/components/collection-toolbar.d.ts +5 -2
  115. package/dist/components/collection-toolbar.d.ts.map +1 -1
  116. package/dist/components/collection-toolbar.js +7 -4
  117. package/dist/components/combobox.d.ts +97 -22
  118. package/dist/components/combobox.d.ts.map +1 -1
  119. package/dist/components/combobox.js +80 -28
  120. package/dist/components/command.d.ts +34 -21
  121. package/dist/components/command.d.ts.map +1 -1
  122. package/dist/components/command.js +33 -25
  123. package/dist/components/confirm-dialog.d.ts +23 -6
  124. package/dist/components/confirm-dialog.d.ts.map +1 -1
  125. package/dist/components/confirm-dialog.js +32 -13
  126. package/dist/components/context-menu.d.ts +14 -10
  127. package/dist/components/context-menu.d.ts.map +1 -1
  128. package/dist/components/context-menu.js +17 -12
  129. package/dist/components/copy-button.d.ts +5 -2
  130. package/dist/components/copy-button.d.ts.map +1 -1
  131. package/dist/components/copy-button.js +16 -8
  132. package/dist/components/data-table.d.ts +120 -54
  133. package/dist/components/data-table.d.ts.map +1 -1
  134. package/dist/components/data-table.js +163 -92
  135. package/dist/components/desktop-shell.d.ts +4 -2
  136. package/dist/components/desktop-shell.d.ts.map +1 -1
  137. package/dist/components/desktop-shell.js +3 -3
  138. package/dist/components/dialog.d.ts +63 -24
  139. package/dist/components/dialog.d.ts.map +1 -1
  140. package/dist/components/dialog.js +52 -31
  141. package/dist/components/disclosure-row.d.ts +1 -2
  142. package/dist/components/disclosure-row.d.ts.map +1 -1
  143. package/dist/components/disclosure-row.js +1 -2
  144. package/dist/components/disclosure.d.ts +1 -1
  145. package/dist/components/disclosure.js +1 -1
  146. package/dist/components/drawer.d.ts +33 -12
  147. package/dist/components/drawer.d.ts.map +1 -1
  148. package/dist/components/drawer.js +47 -35
  149. package/dist/components/dropdown-menu.d.ts +59 -14
  150. package/dist/components/dropdown-menu.d.ts.map +1 -1
  151. package/dist/components/dropdown-menu.js +58 -26
  152. package/dist/components/empty-state.d.ts +35 -12
  153. package/dist/components/empty-state.d.ts.map +1 -1
  154. package/dist/components/empty-state.js +35 -17
  155. package/dist/components/entry-scene.d.ts +4 -4
  156. package/dist/components/entry-scene.d.ts.map +1 -1
  157. package/dist/components/entry-scene.js +2 -2
  158. package/dist/components/field.d.ts +44 -14
  159. package/dist/components/field.d.ts.map +1 -1
  160. package/dist/components/field.js +49 -20
  161. package/dist/components/file-diff.d.ts.map +1 -1
  162. package/dist/components/file-diff.js +3 -4
  163. package/dist/components/form-dialog.d.ts +7 -7
  164. package/dist/components/form-dialog.d.ts.map +1 -1
  165. package/dist/components/form-dialog.js +13 -11
  166. package/dist/components/form-drawer.d.ts +10 -7
  167. package/dist/components/form-drawer.d.ts.map +1 -1
  168. package/dist/components/form-drawer.js +11 -10
  169. package/dist/components/gauge.d.ts +64 -0
  170. package/dist/components/gauge.d.ts.map +1 -0
  171. package/dist/components/gauge.js +73 -0
  172. package/dist/components/hover-card.d.ts +72 -14
  173. package/dist/components/hover-card.d.ts.map +1 -1
  174. package/dist/components/hover-card.js +51 -17
  175. package/dist/components/identity-mark.d.ts +8 -1
  176. package/dist/components/identity-mark.d.ts.map +1 -1
  177. package/dist/components/identity-mark.js +31 -5
  178. package/dist/components/input-group.d.ts +44 -21
  179. package/dist/components/input-group.d.ts.map +1 -1
  180. package/dist/components/input-group.js +74 -27
  181. package/dist/components/input.d.ts +64 -12
  182. package/dist/components/input.d.ts.map +1 -1
  183. package/dist/components/input.js +51 -15
  184. package/dist/components/item.d.ts +37 -15
  185. package/dist/components/item.d.ts.map +1 -1
  186. package/dist/components/item.js +41 -22
  187. package/dist/components/kbd.d.ts +49 -13
  188. package/dist/components/kbd.d.ts.map +1 -1
  189. package/dist/components/kbd.js +115 -16
  190. package/dist/components/kpi-card.d.ts +12 -4
  191. package/dist/components/kpi-card.d.ts.map +1 -1
  192. package/dist/components/kpi-card.js +13 -4
  193. package/dist/components/label.d.ts +17 -10
  194. package/dist/components/label.d.ts.map +1 -1
  195. package/dist/components/label.js +18 -11
  196. package/dist/components/library-shelf.d.ts +6 -6
  197. package/dist/components/library-shelf.d.ts.map +1 -1
  198. package/dist/components/library-shelf.js +5 -5
  199. package/dist/components/load-more-button.d.ts +35 -0
  200. package/dist/components/load-more-button.d.ts.map +1 -0
  201. package/dist/components/load-more-button.js +26 -0
  202. package/dist/components/message-notice.d.ts +8 -13
  203. package/dist/components/message-notice.d.ts.map +1 -1
  204. package/dist/components/message-notice.js +25 -22
  205. package/dist/components/middle-truncate.d.ts +33 -0
  206. package/dist/components/middle-truncate.d.ts.map +1 -0
  207. package/dist/components/middle-truncate.js +72 -0
  208. package/dist/components/multi-select.d.ts +94 -0
  209. package/dist/components/multi-select.d.ts.map +1 -0
  210. package/dist/components/multi-select.js +132 -0
  211. package/dist/components/native-select.d.ts +37 -13
  212. package/dist/components/native-select.d.ts.map +1 -1
  213. package/dist/components/native-select.js +27 -11
  214. package/dist/components/notice-banner.d.ts +17 -10
  215. package/dist/components/notice-banner.d.ts.map +1 -1
  216. package/dist/components/notice-banner.js +12 -11
  217. package/dist/components/numbered-steps.d.ts +10 -4
  218. package/dist/components/numbered-steps.d.ts.map +1 -1
  219. package/dist/components/numbered-steps.js +9 -7
  220. package/dist/components/object-page.d.ts +40 -14
  221. package/dist/components/object-page.d.ts.map +1 -1
  222. package/dist/components/object-page.js +12 -10
  223. package/dist/components/object-workspace.d.ts +29 -10
  224. package/dist/components/object-workspace.d.ts.map +1 -1
  225. package/dist/components/object-workspace.js +18 -8
  226. package/dist/components/overview-page.d.ts +2 -2
  227. package/dist/components/overview-page.d.ts.map +1 -1
  228. package/dist/components/overview-page.js +8 -7
  229. package/dist/components/page-actions.d.ts +28 -8
  230. package/dist/components/page-actions.d.ts.map +1 -1
  231. package/dist/components/page-actions.js +22 -25
  232. package/dist/components/page-header.d.ts +11 -4
  233. package/dist/components/page-header.d.ts.map +1 -1
  234. package/dist/components/page-header.js +10 -5
  235. package/dist/components/pending-label.d.ts +6 -5
  236. package/dist/components/pending-label.d.ts.map +1 -1
  237. package/dist/components/pending-label.js +14 -6
  238. package/dist/components/picture-label.d.ts +2 -2
  239. package/dist/components/picture-label.d.ts.map +1 -1
  240. package/dist/components/picture-label.js +3 -3
  241. package/dist/components/portal-sidebar-frame.d.ts +9 -21
  242. package/dist/components/portal-sidebar-frame.d.ts.map +1 -1
  243. package/dist/components/portal-sidebar-frame.js +13 -27
  244. package/dist/components/progress-checklist.d.ts +46 -0
  245. package/dist/components/progress-checklist.d.ts.map +1 -0
  246. package/dist/components/progress-checklist.js +46 -0
  247. package/dist/components/progress.d.ts +48 -8
  248. package/dist/components/progress.d.ts.map +1 -1
  249. package/dist/components/progress.js +92 -16
  250. package/dist/components/prose.d.ts +19 -0
  251. package/dist/components/prose.d.ts.map +1 -0
  252. package/dist/components/prose.js +29 -0
  253. package/dist/components/radio-group.d.ts +51 -12
  254. package/dist/components/radio-group.d.ts.map +1 -1
  255. package/dist/components/radio-group.js +42 -12
  256. package/dist/components/reading-column.js +1 -1
  257. package/dist/components/record-identity.d.ts +6 -5
  258. package/dist/components/record-identity.d.ts.map +1 -1
  259. package/dist/components/record-identity.js +12 -3
  260. package/dist/components/record-list.d.ts +117 -27
  261. package/dist/components/record-list.d.ts.map +1 -1
  262. package/dist/components/record-list.js +185 -55
  263. package/dist/components/record-time.d.ts +20 -7
  264. package/dist/components/record-time.d.ts.map +1 -1
  265. package/dist/components/record-time.js +38 -19
  266. package/dist/components/resizable.d.ts +7 -5
  267. package/dist/components/resizable.d.ts.map +1 -1
  268. package/dist/components/resizable.js +6 -6
  269. package/dist/components/scope-switcher.d.ts +2 -0
  270. package/dist/components/scope-switcher.d.ts.map +1 -1
  271. package/dist/components/scope-switcher.js +2 -2
  272. package/dist/components/scroll-area.d.ts +47 -11
  273. package/dist/components/scroll-area.d.ts.map +1 -1
  274. package/dist/components/scroll-area.js +72 -14
  275. package/dist/components/segmented-control.d.ts +82 -0
  276. package/dist/components/segmented-control.d.ts.map +1 -0
  277. package/dist/components/segmented-control.js +90 -0
  278. package/dist/components/select.d.ts +55 -15
  279. package/dist/components/select.d.ts.map +1 -1
  280. package/dist/components/select.js +62 -19
  281. package/dist/components/separator.d.ts +12 -5
  282. package/dist/components/separator.d.ts.map +1 -1
  283. package/dist/components/separator.js +11 -6
  284. package/dist/components/settings-facts.d.ts +34 -14
  285. package/dist/components/settings-facts.d.ts.map +1 -1
  286. package/dist/components/settings-facts.js +21 -12
  287. package/dist/components/settings-page.d.ts +4 -4
  288. package/dist/components/settings-page.js +5 -5
  289. package/dist/components/settings-section.d.ts +160 -34
  290. package/dist/components/settings-section.d.ts.map +1 -1
  291. package/dist/components/settings-section.js +92 -39
  292. package/dist/components/sheet.d.ts +47 -16
  293. package/dist/components/sheet.d.ts.map +1 -1
  294. package/dist/components/sheet.js +40 -19
  295. package/dist/components/sidebar-sections.d.ts +16 -12
  296. package/dist/components/sidebar-sections.d.ts.map +1 -1
  297. package/dist/components/sidebar-sections.js +30 -15
  298. package/dist/components/sidebar.d.ts +117 -21
  299. package/dist/components/sidebar.d.ts.map +1 -1
  300. package/dist/components/sidebar.js +180 -55
  301. package/dist/components/skeleton.d.ts +54 -8
  302. package/dist/components/skeleton.d.ts.map +1 -1
  303. package/dist/components/skeleton.js +44 -9
  304. package/dist/components/slider.d.ts +53 -11
  305. package/dist/components/slider.d.ts.map +1 -1
  306. package/dist/components/slider.js +71 -17
  307. package/dist/components/snippet.d.ts +57 -0
  308. package/dist/components/snippet.d.ts.map +1 -0
  309. package/dist/components/snippet.js +60 -0
  310. package/dist/components/sonner.d.ts +13 -14
  311. package/dist/components/sonner.d.ts.map +1 -1
  312. package/dist/components/sonner.js +25 -22
  313. package/dist/components/status-badge.d.ts +37 -11
  314. package/dist/components/status-badge.d.ts.map +1 -1
  315. package/dist/components/status-badge.js +63 -15
  316. package/dist/components/status-dot.d.ts +42 -11
  317. package/dist/components/status-dot.d.ts.map +1 -1
  318. package/dist/components/status-dot.js +40 -11
  319. package/dist/components/switch.d.ts +43 -12
  320. package/dist/components/switch.d.ts.map +1 -1
  321. package/dist/components/switch.js +42 -12
  322. package/dist/components/table-card.d.ts +21 -12
  323. package/dist/components/table-card.d.ts.map +1 -1
  324. package/dist/components/table-card.js +17 -9
  325. package/dist/components/table-layouts.d.ts +40 -8
  326. package/dist/components/table-layouts.d.ts.map +1 -1
  327. package/dist/components/table-layouts.js +52 -8
  328. package/dist/components/table-value.d.ts +4 -3
  329. package/dist/components/table-value.d.ts.map +1 -1
  330. package/dist/components/table-value.js +6 -5
  331. package/dist/components/table.d.ts +62 -25
  332. package/dist/components/table.d.ts.map +1 -1
  333. package/dist/components/table.js +62 -26
  334. package/dist/components/tabs.d.ts +86 -17
  335. package/dist/components/tabs.d.ts.map +1 -1
  336. package/dist/components/tabs.js +93 -22
  337. package/dist/components/text-link.d.ts +4 -1
  338. package/dist/components/text-link.d.ts.map +1 -1
  339. package/dist/components/text-link.js +4 -1
  340. package/dist/components/text-with-copy-button.d.ts +30 -0
  341. package/dist/components/text-with-copy-button.d.ts.map +1 -0
  342. package/dist/components/text-with-copy-button.js +32 -0
  343. package/dist/components/textarea.d.ts +40 -10
  344. package/dist/components/textarea.d.ts.map +1 -1
  345. package/dist/components/textarea.js +50 -11
  346. package/dist/components/theme-mode-switcher.d.ts +18 -1
  347. package/dist/components/theme-mode-switcher.d.ts.map +1 -1
  348. package/dist/components/theme-mode-switcher.js +20 -2
  349. package/dist/components/toggle-group.d.ts +28 -8
  350. package/dist/components/toggle-group.d.ts.map +1 -1
  351. package/dist/components/toggle-group.js +12 -6
  352. package/dist/components/toggle.d.ts +6 -3
  353. package/dist/components/toggle.d.ts.map +1 -1
  354. package/dist/components/toggle.js +10 -7
  355. package/dist/components/tooltip.d.ts +43 -12
  356. package/dist/components/tooltip.d.ts.map +1 -1
  357. package/dist/components/tooltip.js +45 -16
  358. package/dist/components/trend-badge.js +1 -1
  359. package/dist/components/update-card.js +1 -1
  360. package/dist/eslint/index.js +82 -0
  361. package/dist/eslint/rules/badge-is-static-label.js +93 -0
  362. package/dist/eslint/rules/button-icon-slot.js +102 -0
  363. package/dist/eslint/rules/button-link-for-navigation.js +146 -0
  364. package/dist/eslint/rules/button-no-aria-label-with-text.js +75 -0
  365. package/dist/eslint/rules/button-type-roles-only-in-buttons.js +83 -0
  366. package/dist/eslint/rules/choice-control-has-a-name.js +98 -0
  367. package/dist/eslint/rules/choice-group-in-fieldset.js +86 -0
  368. package/dist/eslint/rules/command-shortcut-single-owner.js +118 -0
  369. package/dist/eslint/rules/confirm-dialog-words.js +63 -0
  370. package/dist/eslint/rules/data-table-one-unsized-column.js +96 -0
  371. package/dist/eslint/rules/destructive-action-placement.js +69 -0
  372. package/dist/eslint/rules/disabled-choice-says-why.js +71 -0
  373. package/dist/eslint/rules/ellipsis-opens-a-dialog.js +110 -0
  374. package/dist/eslint/rules/input-group-owners.js +155 -0
  375. package/dist/eslint/rules/kbd-children-no-modifier-text.js +128 -0
  376. package/dist/eslint/rules/literal-text.js +41 -0
  377. package/dist/eslint/rules/middle-truncate-placement.js +69 -0
  378. package/dist/eslint/rules/no-bare-button-label.js +55 -0
  379. package/dist/eslint/rules/no-control-in-read-only-surface.js +106 -0
  380. package/dist/eslint/rules/no-hand-built-busy.js +104 -0
  381. package/dist/eslint/rules/no-hand-built-theme-picker.js +144 -0
  382. package/dist/eslint/rules/no-hand-built-tile.js +41 -0
  383. package/dist/eslint/rules/no-hand-formatted-date.js +87 -0
  384. package/dist/eslint/rules/no-hand-stacked-avatars.js +67 -0
  385. package/dist/eslint/rules/no-nested-collapse.js +60 -0
  386. package/dist/eslint/rules/no-search-in-form.js +47 -0
  387. package/dist/eslint/rules/no-shadcn-appearance-override.js +2 -16
  388. package/dist/eslint/rules/no-shell-prompt-in-snippet.js +74 -0
  389. package/dist/eslint/rules/no-stock-error-words.js +56 -0
  390. package/dist/eslint/rules/no-tooltip-around-labelled-field.js +72 -0
  391. package/dist/eslint/rules/no-weight-class-on-strong-in-type-role.js +57 -0
  392. package/dist/eslint/rules/one-submenu-level.js +43 -0
  393. package/dist/eslint/rules/one-toast-per-flow.js +91 -0
  394. package/dist/eslint/rules/option-count.js +167 -0
  395. package/dist/eslint/rules/page-command-link-not-render.js +43 -0
  396. package/dist/eslint/rules/progress-needs-name.js +57 -0
  397. package/dist/eslint/rules/settings-limit-in-footer.js +94 -0
  398. package/dist/eslint/rules/skeleton-in-region.js +80 -0
  399. package/dist/eslint/rules/sortable-heading-uses-sort.js +79 -0
  400. package/dist/eslint/rules/table-cell-inset-owner.js +107 -0
  401. package/dist/eslint/rules/tabs-selection-is-controlled.js +47 -0
  402. package/dist/eslint/rules/tooltip-only-arrow.js +38 -0
  403. package/dist/eslint/rules/tooltip-trigger-accessible-name.js +114 -0
  404. package/dist/eslint/strict-design-system.js +21 -7
  405. package/dist/index.d.ts +13 -13
  406. package/dist/index.d.ts.map +1 -1
  407. package/dist/index.js +12 -13
  408. package/dist/internal/assistant-ui/attachment.d.ts.map +1 -1
  409. package/dist/internal/assistant-ui/attachment.js +2 -2
  410. package/dist/internal/assistant-ui/reasoning.d.ts +1 -1
  411. package/dist/internal/assistant-ui/reasoning.d.ts.map +1 -1
  412. package/dist/internal/assistant-ui/tool-fallback.js +1 -1
  413. package/dist/internal/assistant-ui/tool-group.d.ts +1 -1
  414. package/dist/internal/assistant-ui/tool-group.d.ts.map +1 -1
  415. package/dist/internal/assistant-ui/tooltip-icon-button.d.ts +2 -3
  416. package/dist/internal/assistant-ui/tooltip-icon-button.d.ts.map +1 -1
  417. package/dist/internal/assistant-ui/tooltip-icon-button.js +1 -1
  418. package/dist/internal/catalog-list.js +2 -2
  419. package/dist/internal/collection-note.d.ts +23 -0
  420. package/dist/internal/collection-note.d.ts.map +1 -0
  421. package/dist/internal/collection-note.js +17 -0
  422. package/dist/internal/collection-rail.d.ts +57 -0
  423. package/dist/internal/collection-rail.d.ts.map +1 -0
  424. package/dist/internal/collection-rail.js +33 -0
  425. package/dist/internal/company-logo.d.ts +18 -0
  426. package/dist/internal/company-logo.d.ts.map +1 -0
  427. package/dist/internal/company-logo.js +14 -0
  428. package/dist/internal/control-name.d.ts +12 -0
  429. package/dist/internal/control-name.d.ts.map +1 -0
  430. package/dist/internal/control-name.js +1 -0
  431. package/dist/internal/diff-line.d.ts +9 -0
  432. package/dist/internal/diff-line.d.ts.map +1 -0
  433. package/dist/internal/diff-line.js +8 -0
  434. package/dist/internal/empty.d.ts +8 -4
  435. package/dist/internal/empty.d.ts.map +1 -1
  436. package/dist/internal/empty.js +14 -8
  437. package/dist/internal/field-frame.d.ts +33 -0
  438. package/dist/internal/field-frame.d.ts.map +1 -0
  439. package/dist/internal/field-frame.js +20 -0
  440. package/dist/internal/final-focus.d.ts +8 -0
  441. package/dist/internal/final-focus.d.ts.map +1 -0
  442. package/dist/internal/final-focus.js +10 -0
  443. package/dist/internal/footer-strip.d.ts.map +1 -1
  444. package/dist/internal/footer-strip.js +3 -1
  445. package/dist/internal/form-submit.d.ts +9 -5
  446. package/dist/internal/form-submit.d.ts.map +1 -1
  447. package/dist/internal/form-submit.js +31 -2
  448. package/dist/internal/input-box.d.ts +26 -0
  449. package/dist/internal/input-box.d.ts.map +1 -0
  450. package/dist/internal/input-box.js +59 -0
  451. package/dist/internal/menu-surface.d.ts +10 -3
  452. package/dist/internal/menu-surface.d.ts.map +1 -1
  453. package/dist/internal/menu-surface.js +10 -3
  454. package/dist/internal/notice.d.ts +25 -0
  455. package/dist/internal/notice.d.ts.map +1 -0
  456. package/dist/internal/notice.js +33 -0
  457. package/dist/internal/overlay-stem.d.ts +5 -0
  458. package/dist/internal/overlay-stem.d.ts.map +1 -0
  459. package/dist/internal/overlay-stem.js +7 -0
  460. package/dist/internal/phone-sheet.d.ts +4 -0
  461. package/dist/internal/phone-sheet.d.ts.map +1 -0
  462. package/dist/internal/phone-sheet.js +2 -0
  463. package/dist/internal/present-content.d.ts +3 -0
  464. package/dist/internal/present-content.d.ts.map +1 -0
  465. package/dist/internal/present-content.js +1 -0
  466. package/dist/internal/record-menu-items.d.ts +4 -3
  467. package/dist/internal/record-menu-items.d.ts.map +1 -1
  468. package/dist/internal/record-menu-items.js +21 -6
  469. package/dist/internal/settings-save.d.ts +9 -2
  470. package/dist/internal/settings-save.d.ts.map +1 -1
  471. package/dist/internal/settings-save.js +19 -6
  472. package/dist/internal/table-compact-line.d.ts +38 -0
  473. package/dist/internal/table-compact-line.d.ts.map +1 -0
  474. package/dist/internal/table-compact-line.js +35 -0
  475. package/dist/internal/title-when-cut.d.ts +8 -0
  476. package/dist/internal/title-when-cut.d.ts.map +1 -0
  477. package/dist/internal/title-when-cut.js +22 -0
  478. package/dist/internal/unsaved-guard.d.ts +18 -0
  479. package/dist/internal/unsaved-guard.d.ts.map +1 -0
  480. package/dist/internal/unsaved-guard.js +31 -0
  481. package/dist/lib/merge-tokens.generated.js +2 -2
  482. package/dist/showcase/foundations.d.ts.map +1 -1
  483. package/dist/showcase/foundations.js +10 -2
  484. package/dist/showcase/specimens/actions.d.ts +2 -0
  485. package/dist/showcase/specimens/actions.d.ts.map +1 -1
  486. package/dist/showcase/specimens/actions.js +30 -5
  487. package/dist/showcase/specimens/charts.d.ts.map +1 -1
  488. package/dist/showcase/specimens/charts.js +22 -13
  489. package/dist/showcase/specimens/choices.d.ts +14 -3
  490. package/dist/showcase/specimens/choices.d.ts.map +1 -1
  491. package/dist/showcase/specimens/choices.js +93 -13
  492. package/dist/showcase/specimens/compositions.d.ts.map +1 -1
  493. package/dist/showcase/specimens/compositions.js +136 -23
  494. package/dist/showcase/specimens/data.d.ts +12 -7
  495. package/dist/showcase/specimens/data.d.ts.map +1 -1
  496. package/dist/showcase/specimens/data.js +139 -35
  497. package/dist/showcase/specimens/feedback.d.ts +2 -0
  498. package/dist/showcase/specimens/feedback.d.ts.map +1 -1
  499. package/dist/showcase/specimens/feedback.js +39 -15
  500. package/dist/showcase/specimens/index.d.ts +20 -12
  501. package/dist/showcase/specimens/index.d.ts.map +1 -1
  502. package/dist/showcase/specimens/inputs.d.ts +4 -2
  503. package/dist/showcase/specimens/inputs.d.ts.map +1 -1
  504. package/dist/showcase/specimens/inputs.js +62 -19
  505. package/dist/showcase/specimens/menus.d.ts +0 -1
  506. package/dist/showcase/specimens/menus.d.ts.map +1 -1
  507. package/dist/showcase/specimens/menus.js +47 -17
  508. package/dist/showcase/specimens/navigation.d.ts +6 -4
  509. package/dist/showcase/specimens/navigation.d.ts.map +1 -1
  510. package/dist/showcase/specimens/navigation.js +61 -32
  511. package/dist/showcase/specimens/other.d.ts +1 -3
  512. package/dist/showcase/specimens/other.d.ts.map +1 -1
  513. package/dist/showcase/specimens/other.js +17 -13
  514. package/dist/showcase/specimens/status.d.ts +4 -1
  515. package/dist/showcase/specimens/status.d.ts.map +1 -1
  516. package/dist/showcase/specimens/status.js +64 -11
  517. package/dist/showcase/usage.generated.d.ts +1 -1
  518. package/dist/showcase/usage.generated.d.ts.map +1 -1
  519. package/dist/showcase/usage.generated.js +632 -544
  520. package/dist/standalone/index.js +1 -1
  521. package/dist/styles/components.css +13 -13
  522. package/dist/styles/globals.css +25 -0
  523. package/package.json +2 -3
  524. package/dist/components/approval-row.d.ts +0 -34
  525. package/dist/components/approval-row.d.ts.map +0 -1
  526. package/dist/components/approval-row.js +0 -27
  527. package/dist/components/channel-view.d.ts +0 -112
  528. package/dist/components/channel-view.d.ts.map +0 -1
  529. package/dist/components/channel-view.js +0 -84
  530. package/dist/components/dashboard-shell.d.ts +0 -51
  531. package/dist/components/dashboard-shell.d.ts.map +0 -1
  532. package/dist/components/dashboard-shell.js +0 -89
  533. package/dist/components/direction.d.ts +0 -2
  534. package/dist/components/direction.d.ts.map +0 -1
  535. package/dist/components/direction.js +0 -1
  536. package/dist/components/expandable-block.d.ts +0 -20
  537. package/dist/components/expandable-block.d.ts.map +0 -1
  538. package/dist/components/expandable-block.js +0 -32
  539. package/dist/components/form.d.ts +0 -42
  540. package/dist/components/form.d.ts.map +0 -1
  541. package/dist/components/form.js +0 -91
  542. package/dist/components/label-system.d.ts +0 -17
  543. package/dist/components/label-system.d.ts.map +0 -1
  544. package/dist/components/label-system.js +0 -21
  545. package/dist/components/memory-item.d.ts +0 -21
  546. package/dist/components/memory-item.d.ts.map +0 -1
  547. package/dist/components/memory-item.js +0 -18
  548. package/dist/components/menubar.d.ts +0 -43
  549. package/dist/components/menubar.d.ts.map +0 -1
  550. package/dist/components/menubar.js +0 -69
  551. package/dist/components/navigation-menu.d.ts +0 -26
  552. package/dist/components/navigation-menu.d.ts.map +0 -1
  553. package/dist/components/navigation-menu.js +0 -45
  554. package/dist/components/pagination.d.ts +0 -33
  555. package/dist/components/pagination.d.ts.map +0 -1
  556. package/dist/components/pagination.js +0 -41
  557. package/dist/components/plugin-slot-boundary.d.ts +0 -42
  558. package/dist/components/plugin-slot-boundary.d.ts.map +0 -1
  559. package/dist/components/plugin-slot-boundary.js +0 -41
  560. package/dist/components/status-row.d.ts +0 -32
  561. package/dist/components/status-row.d.ts.map +0 -1
  562. package/dist/components/status-row.js +0 -35
@@ -1,20 +1,22 @@
1
1
  declare function CommandDialogSpecimen(): import("react").JSX.Element;
2
2
  declare function ScopeSwitcherSpecimen(): import("react").JSX.Element;
3
3
  declare function SidebarSectionsSpecimen(): import("react").JSX.Element;
4
+ declare function TabsSpecimen(): import("react").JSX.Element;
4
5
  export declare const NAVIGATION: {
5
6
  AgentListRow: () => import("react").JSX.Element;
6
7
  Breadcrumb: () => import("react").JSX.Element;
7
8
  CommandDialog: typeof CommandDialogSpecimen;
8
- DashboardShell: () => import("react").JSX.Element;
9
9
  DesktopAppShell: () => import("react").JSX.Element;
10
10
  Footer: () => import("react").JSX.Element;
11
- NavigationMenu: () => import("react").JSX.Element;
12
- Pagination: () => import("react").JSX.Element;
13
11
  PortalSidebarFrame: () => import("react").JSX.Element;
14
12
  ScopeSwitcher: typeof ScopeSwitcherSpecimen;
15
13
  Sidebar: () => import("react").JSX.Element;
14
+ SidebarBrand: () => import("react").JSX.Element;
15
+ SidebarFind: () => import("react").JSX.Element;
16
+ SidebarFrame: () => import("react").JSX.Element;
17
+ SidebarMenuChevron: () => import("react").JSX.Element;
16
18
  SidebarSections: typeof SidebarSectionsSpecimen;
17
- Tabs: () => import("react").JSX.Element;
19
+ Tabs: typeof TabsSpecimen;
18
20
  TabsNav: () => import("react").JSX.Element;
19
21
  textLinkVariants: () => import("react").JSX.Element;
20
22
  };
@@ -1 +1 @@
1
- {"version":3,"file":"navigation.d.ts","sourceRoot":"","sources":["../../../src/showcase/specimens/navigation.tsx"],"names":[],"mappings":"AAgFA,iBAAS,qBAAqB,gCAgC7B;AAED,iBAAS,qBAAqB,gCAc7B;AAED,iBAAS,uBAAuB,gCAiC/B;AAED,eAAO,MAAM,UAAU;;;;;;;;;;;;;;;;CA4PI,CAAC"}
1
+ {"version":3,"file":"navigation.d.ts","sourceRoot":"","sources":["../../../src/showcase/specimens/navigation.tsx"],"names":[],"mappings":"AAqEA,iBAAS,qBAAqB,gCAoC7B;AAED,iBAAS,qBAAqB,gCAmB7B;AAED,iBAAS,uBAAuB,gCAiE/B;AAED,iBAAS,YAAY,gCAqCpB;AAED,eAAO,MAAM,UAAU;;;;;;;;;;;;;;;;;CA0SI,CAAC"}
@@ -2,21 +2,19 @@
2
2
  import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
3
3
  import { Building2, CreditCard, Download, LayoutDashboard, Settings, Users } from "lucide-react";
4
4
  import { useState } from "react";
5
+ import { AccountMenuIdentity } from "../../components/account-menu.js";
5
6
  import { AgentListRow } from "../../components/agent-list-row.js";
6
7
  import { BrandWordmark } from "../../components/brand.js";
7
- import { Breadcrumb, BreadcrumbItem, BreadcrumbLink, BreadcrumbList, BreadcrumbPage, BreadcrumbSeparator, } from "../../components/breadcrumb.js";
8
+ import { Breadcrumb, BreadcrumbEllipsis, BreadcrumbItem, BreadcrumbLink, BreadcrumbList, BreadcrumbPage, BreadcrumbSeparator, } from "../../components/breadcrumb.js";
8
9
  import { Button } from "../../components/button.js";
9
10
  import { CommandDialog, CommandEmpty, CommandGroup, CommandInput, CommandItem, CommandList, CommandShortcut, } from "../../components/command.js";
10
- import { DashboardShell } from "../../components/dashboard-shell.js";
11
11
  import { DesktopAppShell } from "../../components/desktop-shell.js";
12
12
  import { Footer, FooterBrand, FooterIdentity, FooterInner, FooterMeta, FooterNav, } from "../../components/footer.js";
13
13
  import { AgentIcon, ApprovalsIcon } from "../../components/house-icons.js";
14
14
  import { Kbd } from "../../components/kbd.js";
15
- import { NavigationMenu, NavigationMenuContent, NavigationMenuItem, NavigationMenuLink, NavigationMenuList, NavigationMenuTrigger, } from "../../components/navigation-menu.js";
16
- import { Pagination, PaginationContent, PaginationItem, PaginationLink, PaginationNext, PaginationPrevious, } from "../../components/pagination.js";
17
15
  import { PortalSidebarFrame } from "../../components/portal-sidebar-frame.js";
18
16
  import { ScopeSwitcher } from "../../components/scope-switcher.js";
19
- import { Sidebar, SidebarContent, SidebarGroup, SidebarGroupLabel, SidebarMenu, SidebarMenuButton, SidebarMenuItem, SidebarProvider, } from "../../components/sidebar.js";
17
+ import { Sidebar, SidebarBrand, SidebarContent, SidebarFind, SidebarFrame, SidebarGroup, SidebarGroupLabel, SidebarMenu, SidebarMenuButton, SidebarMenuChevron, SidebarMenuItem, SidebarProvider, } from "../../components/sidebar.js";
20
18
  import { SidebarSections } from "../../components/sidebar-sections.js";
21
19
  import { Tabs, TabsContent, TabsLink, TabsList, TabsNav, TabsTrigger } from "../../components/tabs.js";
22
20
  import { textLinkVariants } from "../../components/text-link.js";
@@ -26,11 +24,16 @@ function Navigation({ children }) {
26
24
  }
27
25
  function CommandDialogSpecimen() {
28
26
  const [open, setOpen] = useState(false);
29
- return (_jsxs(_Fragment, { children: [_jsxs(Button, { onClick: () => setOpen(true), variant: "outline", children: ["Find", _jsx(Kbd, { children: "\u2318K" })] }), _jsxs(CommandDialog, { description: "Find an Agent, a customer or a page", onOpenChange: setOpen, open: open, title: "Find", children: [_jsx(CommandInput, { placeholder: "Find anything" }), _jsxs(CommandList, { children: [_jsx(CommandEmpty, { children: "Nothing matches" }), _jsxs(CommandGroup, { heading: "Agents", children: [_jsx(CommandItem, { onSelect: () => setOpen(false), children: "Invoices" }), _jsx(CommandItem, { onSelect: () => setOpen(false), children: "Orders" })] }), _jsxs(CommandGroup, { heading: "Go to", children: [_jsxs(CommandItem, { onSelect: () => setOpen(false), children: ["Usage and billing", _jsx(CommandShortcut, { children: "\u2318U" })] }), _jsx(CommandItem, { onSelect: () => setOpen(false), children: "New Agent" })] })] })] })] }));
27
+ return (_jsxs(_Fragment, { children: [_jsxs(Button, { onClick: () => setOpen(true), variant: "outline", children: ["Find", _jsx(Kbd, { meta: true, size: "sm", children: "K" })] }), _jsxs(CommandDialog, { closeLabel: "Close", description: "Find an Agent, a customer or a page", onOpenChange: setOpen, open: open, resultCount: (count) => `${count} results`, title: "Find", children: [_jsx(CommandInput, { placeholder: "Find anything" }), _jsxs(CommandList, { children: [_jsx(CommandEmpty, { children: "Nothing matches" }), _jsxs(CommandGroup, { heading: "Agents", children: [_jsx(CommandItem, { onSelect: () => setOpen(false), children: "Invoices" }), _jsx(CommandItem, { onSelect: () => setOpen(false), children: "Orders" })] }), _jsxs(CommandGroup, { heading: "Go to", children: [_jsxs(CommandItem, { onSelect: () => setOpen(false), children: ["Usage and billing", _jsx(CommandShortcut, { meta: true, children: "U" })] }), _jsx(CommandItem, { onSelect: () => setOpen(false), children: "New Agent" })] })] })] })] }));
30
28
  }
31
29
  function ScopeSwitcherSpecimen() {
32
30
  const [scope, setScope] = useState("all");
33
- return (_jsx(ScopeSwitcher, { copy: { label: "Scope", search: "Find a scope", empty: "No scope matches" }, onValueChange: setScope, options: [
31
+ return (_jsx(ScopeSwitcher, { copy: {
32
+ label: "Scope",
33
+ search: "Find a scope",
34
+ empty: "No scope matches",
35
+ results: (count) => `${count} results`,
36
+ }, onValueChange: setScope, options: [
34
37
  { value: "all", label: "All customers" },
35
38
  { value: "rossi", label: "Rossi Ottica", group: "Partners" },
36
39
  { value: "bizeta", label: "Bizeta Arredamenti", group: "Customers" },
@@ -38,35 +41,57 @@ function ScopeSwitcherSpecimen() {
38
41
  }
39
42
  function SidebarSectionsSpecimen() {
40
43
  const [section, setSection] = useState("overview");
41
- return (_jsx(Navigation, { children: _jsx(Sidebar, { collapsible: "none", children: _jsx(SidebarSections, { back: { label: "Agents", onClick: nothing }, current: section, identity: {
42
- name: "Invoices",
43
- mark: { kind: "agent", orb: { form: "orbit", color: COBALTO } },
44
- detail: "Drafts and sends the month's invoices",
45
- }, label: "Invoices", sections: [
46
- {
47
- id: "overview",
48
- label: "Overview",
49
- icon: LayoutDashboard,
50
- onClick: () => setSection("overview"),
51
- },
52
- { id: "skills", label: "Skills", icon: AgentIcon, onClick: () => setSection("skills") },
53
- {
54
- id: "settings",
55
- label: "Settings",
56
- icon: Settings,
57
- onClick: () => setSection("settings"),
58
- },
59
- ] }) }) }));
44
+ const [page, setPage] = useState("identity");
45
+ return (_jsxs("div", { className: "flex flex-wrap gap-6", children: [_jsx(Navigation, { children: _jsx(Sidebar, { collapsible: "none", children: _jsx(SidebarSections, { back: { label: "Back to workspace", onClick: nothing }, current: page, label: "Company", sections: [
46
+ {
47
+ id: "identity",
48
+ label: "Identity",
49
+ icon: Building2,
50
+ onClick: () => setPage("identity"),
51
+ },
52
+ { id: "members", label: "Members", icon: Users, onClick: () => setPage("members") },
53
+ {
54
+ id: "accounts",
55
+ label: "Subscriptions",
56
+ icon: CreditCard,
57
+ onClick: () => setPage("accounts"),
58
+ },
59
+ ] }) }) }), _jsx(Navigation, { children: _jsx(Sidebar, { collapsible: "none", children: _jsx(SidebarSections, { back: { label: "Agents", onClick: nothing }, current: section, identity: {
60
+ name: "Invoices",
61
+ mark: { kind: "agent", orb: { form: "orbit", color: COBALTO } },
62
+ detail: "Drafts and sends the month's invoices",
63
+ }, label: "Invoices", sections: [
64
+ {
65
+ id: "overview",
66
+ label: "Overview",
67
+ icon: LayoutDashboard,
68
+ onClick: () => setSection("overview"),
69
+ },
70
+ {
71
+ id: "skills",
72
+ label: "Skills",
73
+ icon: AgentIcon,
74
+ onClick: () => setSection("skills"),
75
+ },
76
+ {
77
+ id: "settings",
78
+ label: "Settings",
79
+ icon: Settings,
80
+ onClick: () => setSection("settings"),
81
+ },
82
+ ] }) }) })] }));
83
+ }
84
+ function TabsSpecimen() {
85
+ const [plain, setPlain] = useState("overview");
86
+ const [lined, setLined] = useState("overview");
87
+ return (_jsxs("div", { className: "grid gap-8", children: [_jsxs(Tabs, { onValueChange: setPlain, value: plain, children: [_jsxs(TabsList, { "aria-label": "Rossi Ottica", children: [_jsx(TabsTrigger, { value: "overview", children: "Overview" }), _jsx(TabsTrigger, { value: "installations", children: "Installations" }), _jsx(TabsTrigger, { disabled: true, disabledReason: "Only owners see billing", value: "billing", children: "Billing" })] }), _jsx(TabsContent, { className: "pt-3 text-sm text-muted-foreground", value: "overview", children: "What the customer runs, at a glance." }), _jsx(TabsContent, { className: "pt-3 text-sm text-muted-foreground", value: "installations", children: "Every machine Nadia is installed on." })] }), _jsxs(Tabs, { onValueChange: setLined, value: lined, children: [_jsxs(TabsList, { "aria-label": "Rossi Ottica, with a rule", variant: "line", children: [_jsx(TabsTrigger, { value: "overview", children: "Overview" }), _jsx(TabsTrigger, { value: "installations", children: "Installations" }), _jsx(TabsTrigger, { disabled: true, disabledReason: "Only owners see billing", value: "billing", children: "Billing" })] }), _jsx(TabsContent, { className: "pt-3 text-sm text-muted-foreground", value: "overview", children: "What the customer runs, at a glance." }), _jsx(TabsContent, { className: "pt-3 text-sm text-muted-foreground", value: "installations", children: "Every machine Nadia is installed on." })] })] }));
60
88
  }
61
89
  export const NAVIGATION = {
62
90
  AgentListRow: () => (_jsxs("ul", { className: "grid max-w-xs gap-1", children: [_jsx("li", { children: _jsx(AgentListRow, { color: COBALTO, current: true, form: "orbit", name: "Invoices", state: "working", stateLine: "Drafting October's invoices" }) }), _jsx("li", { children: _jsx(AgentListRow, { color: VERDE, form: "lattice", name: "Orders", state: "waiting", stateLine: "Waiting for you", stateTone: "warn" }) })] })),
63
- Breadcrumb: () => (_jsx(Breadcrumb, { "aria-label": "Path", children: _jsxs(BreadcrumbList, { children: [_jsx(BreadcrumbItem, { children: _jsx(BreadcrumbLink, { href: "#customers", children: "Customers" }) }), _jsx(BreadcrumbSeparator, {}), _jsx(BreadcrumbItem, { children: _jsx(BreadcrumbPage, { children: "Rossi Ottica" }) })] }) })),
91
+ Breadcrumb: () => (_jsxs("div", { className: "grid gap-4", children: [_jsx(Breadcrumb, { "aria-label": "Path", children: _jsxs(BreadcrumbList, { children: [_jsx(BreadcrumbItem, { children: _jsx(BreadcrumbLink, { href: "#customers", children: "Customers" }) }), _jsx(BreadcrumbSeparator, {}), _jsx(BreadcrumbItem, { children: _jsx(BreadcrumbPage, { children: "Rossi Ottica" }) })] }) }), _jsx(Breadcrumb, { "aria-label": "Path with a closed ancestor", children: _jsxs(BreadcrumbList, { children: [_jsx(BreadcrumbItem, { children: _jsx(BreadcrumbLink, { disabled: true, children: "Partners" }) }), _jsx(BreadcrumbSeparator, {}), _jsx(BreadcrumbItem, { children: _jsx(BreadcrumbLink, { href: "#customers", children: "Customers" }) }), _jsx(BreadcrumbSeparator, {}), _jsx(BreadcrumbItem, { children: _jsx(BreadcrumbPage, { children: "Rossi Ottica" }) })] }) }), _jsx(Breadcrumb, { "aria-label": "Long path", children: _jsxs(BreadcrumbList, { children: [_jsx(BreadcrumbItem, { children: _jsx(BreadcrumbLink, { href: "#customers", children: "Customers" }) }), _jsx(BreadcrumbSeparator, {}), _jsx(BreadcrumbItem, { children: _jsx(BreadcrumbEllipsis, { label: "More" }) }), _jsx(BreadcrumbSeparator, {}), _jsx(BreadcrumbItem, { children: _jsx(BreadcrumbLink, { href: "#installations", children: "Installations" }) }), _jsx(BreadcrumbSeparator, {}), _jsx(BreadcrumbItem, { children: _jsx(BreadcrumbPage, { children: "Rossi Ottica, Milano" }) })] }) })] })),
64
92
  CommandDialog: CommandDialogSpecimen,
65
- DashboardShell: () => (_jsx("div", { className: "h-96 overflow-hidden rounded-md border border-border", children: _jsx(DashboardShell, { className: "min-h-0", contentLabel: "Customers", header: _jsx("span", { className: "text-sm font-medium", children: "Customers" }), mobileNavigationLabel: "Navigation", passive: true, sidebar: _jsxs(SidebarMenu, { children: [_jsx(SidebarMenuItem, { children: _jsxs(SidebarMenuButton, { isActive: true, children: [_jsx(Building2, { "aria-hidden": "true" }), "Customers"] }) }), _jsx(SidebarMenuItem, { children: _jsxs(SidebarMenuButton, { children: [_jsx(CreditCard, { "aria-hidden": "true" }), "Usage and billing"] }) })] }), sidebarCollapsible: "none", children: _jsx("p", { className: "text-sm text-muted-foreground", children: "The page's content scrolls here." }) }) })),
66
93
  DesktopAppShell: () => (_jsx("div", { className: "h-96 overflow-hidden rounded-md border border-border", children: _jsx(DesktopAppShell, { activityRail: _jsx(Navigation, { children: _jsx(SidebarMenu, { className: "p-2", children: _jsx(SidebarMenuItem, { children: _jsx(SidebarMenuButton, { isActive: true, children: _jsx(AgentListRow, { color: COBALTO, form: "orbit", name: "Invoices", size: 24 }) }) }) }) }), activityRailLabel: "Agents", className: "h-full", primaryPaneLabel: "Conversation", title: "Invoices", children: _jsx("p", { className: "p-4 text-sm text-muted-foreground", children: "The Agent's conversation." }) }) })),
67
94
  Footer: () => (_jsx(Footer, { children: _jsxs(FooterInner, { children: [_jsx(FooterBrand, { "aria-label": "nadicode", href: "#top", children: _jsx(BrandWordmark, { alt: "" }) }), _jsx(FooterIdentity, { children: "Agents that do the work, for Italian companies." }), _jsxs(FooterNav, { "aria-label": "Company", children: [_jsx("a", { href: "#privacy", children: "Privacy" }), _jsx("a", { href: "#terms", children: "Terms" })] }), _jsx(FooterMeta, { children: "\u00A9 2026 nadicode" })] }) })),
68
- NavigationMenu: () => (_jsx(NavigationMenu, { children: _jsxs(NavigationMenuList, { children: [_jsxs(NavigationMenuItem, { children: [_jsx(NavigationMenuTrigger, { children: "Product" }), _jsx(NavigationMenuContent, { children: _jsxs("ul", { className: "grid w-72 gap-1 p-2", children: [_jsx("li", { children: _jsx(NavigationMenuLink, { href: "#nadia", children: "Nadia" }) }), _jsx("li", { children: _jsx(NavigationMenuLink, { href: "#portal", children: "The Portal" }) })] }) })] }), _jsx(NavigationMenuItem, { children: _jsx(NavigationMenuLink, { href: "#pricing", children: "Pricing" }) })] }) })),
69
- Pagination: () => (_jsx(Pagination, { children: _jsxs(PaginationContent, { children: [_jsx(PaginationItem, { children: _jsx(PaginationPrevious, { href: "#page-1" }) }), _jsx(PaginationItem, { children: _jsx(PaginationLink, { href: "#page-1", children: "1" }) }), _jsx(PaginationItem, { children: _jsx(PaginationLink, { href: "#page-2", isActive: true, children: "2" }) }), _jsx(PaginationItem, { children: _jsx(PaginationLink, { href: "#page-3", children: "3" }) }), _jsx(PaginationItem, { children: _jsx(PaginationNext, { href: "#page-3" }) })] }) })),
70
95
  PortalSidebarFrame: () => (_jsx(Navigation, { children: _jsx(PortalSidebarFrame, { account: { name: "Ada Rossi", initials: "AR", lines: ["Acme S.r.l."] }, bands: [
71
96
  {
72
97
  id: "work",
@@ -96,8 +121,12 @@ export const NAVIGATION = {
96
121
  ], findLabel: "Find", footerItem: { id: "get-nadia", label: "Get Nadia", icon: _jsx(Download, { "aria-hidden": "true" }) }, subtitle: "Portal", toggleLabel: "Collapse navigation" }) })),
97
122
  ScopeSwitcher: ScopeSwitcherSpecimen,
98
123
  Sidebar: () => (_jsx(Navigation, { children: _jsx(Sidebar, { collapsible: "none", children: _jsx(SidebarContent, { children: _jsxs(SidebarGroup, { children: [_jsx(SidebarGroupLabel, { children: "Company" }), _jsxs(SidebarMenu, { children: [_jsx(SidebarMenuItem, { children: _jsxs(SidebarMenuButton, { isActive: true, children: [_jsx(Building2, { "aria-hidden": "true" }), "Statements"] }) }), _jsx(SidebarMenuItem, { children: _jsxs(SidebarMenuButton, { children: [_jsx(CreditCard, { "aria-hidden": "true" }), "Usage and billing"] }) })] })] }) }) }) })),
124
+ SidebarBrand: () => (_jsx("div", { className: "w-56", children: _jsx(SidebarBrand, { subtitle: "Portal" }) })),
125
+ SidebarFind: () => (_jsx(Navigation, { children: _jsx("div", { className: "w-64", children: _jsx(SidebarFind, { label: "Find", onClick: nothing, shortcut: _jsx(Kbd, { meta: true, size: "sm", children: "K" }) }) }) })),
126
+ SidebarFrame: () => (_jsx(Navigation, { children: _jsx("div", { className: "h-96 w-64 overflow-hidden rounded-md border border-border", children: _jsx(Sidebar, { collapsible: "none", children: _jsx(SidebarFrame, { account: _jsx(AccountMenuIdentity, { identity: { name: "Ada Rossi", initials: "AR", lines: ["Acme S.r.l."] } }), find: _jsx(SidebarFind, { label: "Find", onClick: nothing, shortcut: _jsx(Kbd, { meta: true, size: "sm", children: "K" }) }), header: _jsx(SidebarBrand, { subtitle: "Portal" }), children: _jsxs(SidebarGroup, { children: [_jsx(SidebarGroupLabel, { children: "Work" }), _jsxs(SidebarMenu, { children: [_jsx(SidebarMenuItem, { children: _jsxs(SidebarMenuButton, { isActive: true, children: [_jsx(AgentIcon, { "aria-hidden": "true" }), "Agents"] }) }), _jsx(SidebarMenuItem, { children: _jsxs(SidebarMenuButton, { children: [_jsx(ApprovalsIcon, { "aria-hidden": "true" }), "Approvals"] }) })] })] }) }) }) }) })),
127
+ SidebarMenuChevron: () => (_jsx(Navigation, { children: _jsx(SidebarMenu, { className: "w-64", children: _jsx(SidebarMenuItem, { children: _jsxs(SidebarMenuButton, { children: [_jsx(Settings, { "aria-hidden": "true" }), "Settings", _jsx(SidebarMenuChevron, {})] }) }) }) })),
99
128
  SidebarSections: SidebarSectionsSpecimen,
100
- Tabs: () => (_jsxs(Tabs, { defaultValue: "overview", children: [_jsxs(TabsList, { children: [_jsx(TabsTrigger, { value: "overview", children: "Overview" }), _jsx(TabsTrigger, { value: "installations", children: "Installations" })] }), _jsx(TabsContent, { className: "pt-3 text-sm text-muted-foreground", value: "overview", children: "What the customer runs, at a glance." }), _jsx(TabsContent, { className: "pt-3 text-sm text-muted-foreground", value: "installations", children: "Every machine Nadia is installed on." })] })),
101
- TabsNav: () => (_jsxs(TabsNav, { "aria-label": "Rossi Ottica", variant: "line", children: [_jsx(TabsLink, { current: true, href: "#overview", children: "Overview" }), _jsx(TabsLink, { href: "#installations", children: "Installations" }), _jsx(TabsLink, { href: "#billing", children: "Billing" })] })),
129
+ Tabs: TabsSpecimen,
130
+ TabsNav: () => (_jsxs("div", { className: "grid gap-8", children: [_jsxs(TabsNav, { "aria-label": "Rossi Ottica", children: [_jsx(TabsLink, { current: true, href: "#overview", children: "Overview" }), _jsx(TabsLink, { href: "#installations", children: "Installations" }), _jsx(TabsLink, { href: "#billing", children: "Billing" })] }), _jsxs(TabsNav, { "aria-label": "Rossi Ottica, with a rule", variant: "line", children: [_jsx(TabsLink, { current: true, href: "#overview", children: "Overview" }), _jsx(TabsLink, { href: "#installations", children: "Installations" }), _jsx(TabsLink, { href: "#billing", children: "Billing" })] }), _jsx("div", { className: "max-w-72", children: _jsxs(TabsNav, { "aria-label": "Rossi Ottica, scrolled", children: [_jsx(TabsLink, { href: "#overview", children: "Overview" }), _jsx(TabsLink, { href: "#tasks", children: "Scheduled tasks" }), _jsx(TabsLink, { current: true, href: "#usage", children: "Usage" }), _jsx(TabsLink, { href: "#capabilities", children: "Capabilities" }), _jsx(TabsLink, { href: "#settings", children: "Settings" })] }) })] })),
102
131
  textLinkVariants: () => (_jsxs("p", { className: "max-w-md text-sm", children: ["Your data stays in the EU. Read the", " ", _jsx("a", { className: textLinkVariants({ kind: "inline" }), href: "#privacy", children: "privacy notice" }), " ", "for what each Agent keeps.", " ", _jsx("a", { className: textLinkVariants({ kind: "quiet" }), href: "#learn", children: "Learn more" })] })),
103
132
  };
@@ -7,15 +7,13 @@ export declare const OTHER: {
7
7
  AspectRatio: typeof AspectRatioSpecimen;
8
8
  BrandField: () => import("react").JSX.Element;
9
9
  Carousel: () => import("react").JSX.Element;
10
- ChannelView: () => import("react").JSX.Element;
11
10
  Collapsible: () => import("react").JSX.Element;
12
11
  CompanyCard: typeof CompanyCardSpecimen;
13
12
  Disclosure: () => import("react").JSX.Element;
14
- ExpandableBlock: () => import("react").JSX.Element;
15
13
  HiveScene: typeof HiveSceneSpecimen;
16
14
  NadiaPresence: typeof NadiaPresenceSpecimen;
17
15
  NumberedSteps: () => import("react").JSX.Element;
18
- PluginSlotBoundary: () => import("react").JSX.Element;
16
+ Prose: () => import("react").JSX.Element;
19
17
  ReadingColumn: () => import("react").JSX.Element;
20
18
  ResizablePanelGroup: () => import("react").JSX.Element;
21
19
  ScrollArea: () => import("react").JSX.Element;
@@ -1 +1 @@
1
- {"version":3,"file":"other.d.ts","sourceRoot":"","sources":["../../../src/showcase/specimens/other.tsx"],"names":[],"mappings":"AAwDA,iBAAS,mBAAmB,gCAS3B;AAED,iBAAS,mBAAmB,gCAiB3B;AAED,iBAAS,iBAAiB,gCAczB;AAED,iBAAS,qBAAqB,gCAa7B;AAED,eAAO,MAAM,KAAK;;;;;;;;;;;;;;;;;;;CAmJS,CAAC"}
1
+ {"version":3,"file":"other.d.ts","sourceRoot":"","sources":["../../../src/showcase/specimens/other.tsx"],"names":[],"mappings":"AA8CA,iBAAS,mBAAmB,gCAS3B;AAED,iBAAS,mBAAmB,gCAiB3B;AAED,iBAAS,iBAAiB,gCAczB;AAED,iBAAS,qBAAqB,gCAa7B;AAED,eAAO,MAAM,KAAK;;;;;;;;;;;;;;;;;CA6LS,CAAC"}
@@ -3,28 +3,24 @@ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
3
3
  import { ChevronDown } from "lucide-react";
4
4
  import { useState } from "react";
5
5
  import { Accordion, AccordionContent, AccordionItem, AccordionTrigger, } from "../../components/accordion.js";
6
- import { AgentOrb } from "../../components/agent-orb.js";
7
6
  import { AspectRatio } from "../../components/aspect-ratio.js";
8
7
  import { BrandField } from "../../components/brand-field.js";
9
8
  import { BrandWordmark } from "../../components/brand.js";
10
9
  import { Button } from "../../components/button.js";
11
10
  import { Carousel, CarouselContent, CarouselItem, CarouselNext, CarouselPrevious, } from "../../components/carousel.js";
12
- import { ChannelDay, ChannelHeader, ChannelMessage, ChannelPerson, ChannelView, } from "../../components/channel-view.js";
13
11
  import { Collapsible, CollapsibleContent, CollapsibleTrigger } from "../../components/collapsible.js";
14
12
  import { CompanyCard } from "../../components/company-card.js";
15
13
  import { Disclosure } from "../../components/disclosure.js";
16
- import { ExpandableBlock } from "../../components/expandable-block.js";
17
14
  import { HiveScene } from "../../components/hive-scene.js";
18
15
  import { NadiaPresence } from "../../components/nadia-presence.js";
19
16
  import { NumberedSteps } from "../../components/numbered-steps.js";
20
- import { PluginSlotBoundary } from "../../components/plugin-slot-boundary.js";
17
+ import { Prose } from "../../components/prose.js";
21
18
  import { ReadingColumn } from "../../components/reading-column.js";
22
19
  import { ResizableHandle, ResizablePanel, ResizablePanelGroup } from "../../components/resizable.js";
23
20
  import { ScrollArea } from "../../components/scroll-area.js";
24
21
  import { Separator } from "../../components/separator.js";
25
22
  import { ToolIcon } from "../../components/tool-icon.js";
26
23
  import { useEmptyArt } from "../assets.js";
27
- import { COBALTO } from "../samples.js";
28
24
  const HIVE_LOGO = "data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M4 21V11a8 8 0 0 1 16 0v10' fill='none' stroke='white' stroke-width='2'/%3E%3C/svg%3E";
29
25
  const LOG = Array.from({ length: 14 }, (_, line) => `07:30:${String(line).padStart(2, "0")} read row ${line + 1}`).join("\n");
30
26
  function AspectRatioSpecimen() {
@@ -48,15 +44,13 @@ function NadiaPresenceSpecimen() {
48
44
  return (_jsxs("div", { className: "grid justify-items-start gap-3", children: [_jsx(NadiaPresence, { label: "Nadia is getting ready", reveal: reveal, state: "arriving" }), _jsx(Button, { onClick: () => setReveal((value) => (value >= 1 ? 0 : value + 0.2)), variant: "outline", children: "Move her arrival on" })] }));
49
45
  }
50
46
  export const OTHER = {
51
- Accordion: () => (_jsxs(Accordion, { className: "max-w-lg", children: [_jsxs(AccordionItem, { value: "data", children: [_jsx(AccordionTrigger, { children: "Where does my data live?" }), _jsx(AccordionContent, { children: "In the EU, on servers nadicode runs." })] }), _jsxs(AccordionItem, { value: "agents", children: [_jsx(AccordionTrigger, { children: "Can an Agent send email on its own?" }), _jsx(AccordionContent, { children: "Only from a mailbox you connect, and only with approval." })] })] })),
47
+ Accordion: () => (_jsxs("div", { className: "grid max-w-lg gap-10", children: [["default", "small"].map((size) => (_jsxs(Accordion, { size: size, children: [_jsxs(AccordionItem, { value: "data", children: [_jsx(AccordionTrigger, { children: "Where does my data live?" }), _jsx(AccordionContent, { children: "In the EU, on servers nadicode runs." })] }), _jsxs(AccordionItem, { value: "agents", children: [_jsx(AccordionTrigger, { children: "Can an Agent send email on its own?" }), _jsx(AccordionContent, { children: "Only from a mailbox you connect, and only with approval." })] }), _jsxs(AccordionItem, { value: "export", children: [_jsx(AccordionTrigger, { children: "Can I take my data with me?" }), _jsx(AccordionContent, { hiddenUntilFound: false, children: "Yes. Export every record as a .zip from Settings." })] })] }, size))), _jsxs(Accordion, { multiple: true, children: [_jsxs(AccordionItem, { value: "invoices", children: [_jsx(AccordionTrigger, { children: "Invoices" }), _jsx(AccordionContent, { children: "Issued on the first of each month." })] }), _jsxs(AccordionItem, { value: "payments", children: [_jsx(AccordionTrigger, { children: "Payments" }), _jsx(AccordionContent, { children: "Card and bank transfer, in euro." })] })] })] })),
52
48
  AspectRatio: AspectRatioSpecimen,
53
49
  BrandField: () => (_jsxs(BrandField, { className: "grid gap-2 rounded-md p-8", children: [_jsx(BrandWordmark, {}), _jsx("p", { className: "text-sm text-muted-foreground", children: "White on ink, in either theme." })] })),
54
50
  Carousel: () => (_jsxs(Carousel, { className: "mx-12 max-w-xs", children: [_jsx(CarouselContent, { children: ["Invoices", "Orders", "Support"].map((name) => (_jsx(CarouselItem, { children: _jsx("div", { className: "grid h-32 place-items-center rounded-md border border-border text-sm", children: name }) }, name))) }), _jsx(CarouselPrevious, {}), _jsx(CarouselNext, {})] })),
55
- ChannelView: () => (_jsx("div", { className: "max-w-lg", children: _jsxs(ChannelView, { header: _jsx(ChannelHeader, { memberCount: 4, membersLabel: "4 members", name: "sales" }), children: [_jsx(ChannelDay, { label: "Today" }), _jsx(ChannelMessage, { author: "Marco Bianchi", member: _jsx(ChannelPerson, { initials: "MB", name: "Marco Bianchi" }), time: "09:12", children: "Can someone quote Rossi Ottica for 40 frames?" }), _jsx(ChannelMessage, { author: "Acme Quotes", member: _jsx(AgentOrb, { color: COBALTO, decorative: true, form: "orbit", size: 32 }), time: "09:13", children: "Drafted from the price list: \u20AC 3,120 before VAT. It's waiting for your approval." })] }) })),
56
- Collapsible: () => (_jsxs(Collapsible, { className: "max-w-sm", children: [_jsxs(CollapsibleTrigger, { render: _jsx(Button, { variant: "ghost" }), children: [_jsx(ChevronDown, { "aria-hidden": "true", "data-icon": "inline-start" }), "src"] }), _jsxs(CollapsibleContent, { className: "grid gap-1 pl-8 font-mono text-sm", children: [_jsx("span", { children: "index.ts" }), _jsx("span", { children: "quote.ts" })] })] })),
51
+ Collapsible: () => (_jsxs(Collapsible, { className: "max-w-sm", children: [_jsx(CollapsibleTrigger, { render: _jsx(Button, { prefix: _jsx(ChevronDown, { "aria-hidden": "true" }), variant: "ghost" }), children: "src" }), _jsxs(CollapsibleContent, { className: "grid gap-1 pl-8 font-mono text-sm", children: [_jsx("span", { children: "index.ts" }), _jsx("span", { children: "quote.ts" })] })] })),
57
52
  CompanyCard: CompanyCardSpecimen,
58
53
  Disclosure: () => (_jsx(Disclosure, { label: "Other formats", children: _jsx("p", { className: "text-sm text-muted-foreground", children: "Download for Windows, or as a .zip for macOS." }) })),
59
- ExpandableBlock: () => (_jsx("div", { className: "max-w-md", children: _jsx(ExpandableBlock, { collapseLabel: "Show less", expandLabel: "Show all", children: _jsx("pre", { className: "font-mono text-xs", children: LOG }) }) })),
60
54
  HiveScene: HiveSceneSpecimen,
61
55
  NadiaPresence: NadiaPresenceSpecimen,
62
56
  NumberedSteps: () => (_jsx(NumberedSteps, { current: { id: "pair", label: "Current step" }, label: "Connect Telegram", steps: [
@@ -64,10 +58,20 @@ export const OTHER = {
64
58
  { id: "pair", title: "Send it the code", description: "The code is valid for 10 minutes." },
65
59
  { id: "done", title: "Come back here" },
66
60
  ] })),
67
- PluginSlotBoundary: () => (_jsx(PluginSlotBoundary, { className: "max-w-lg", contentLabel: "Weather plugin", description: "Shows the forecast for each delivery address.", permissions: [{ id: "network", label: "Network", level: "review" }], title: "Weather", children: _jsx("p", { className: "text-sm", children: "Milano: 18\u00B0, light rain." }) })),
61
+ Prose: () => (_jsx(ReadingColumn, { children: _jsxs(Prose, { children: [_jsx("h2", { children: "Payment terms" }), _jsxs("p", { children: ["Invoices are due within ", _jsx("strong", { children: "30 days" }), ". The full terms are in the", " ", _jsx("a", { href: "#terms", children: "service agreement" }), ", and late payment adds ", _jsx("code", { children: "0.5%" }), " a month."] }), _jsxs("ul", { children: [_jsx("li", { children: "Pay by bank transfer or card." }), _jsx("li", { children: "Ask billing for a copy of any invoice." })] }), _jsx("blockquote", { children: "Nothing here is a quote until it is signed." })] }) })),
68
62
  ReadingColumn: () => (_jsx(ReadingColumn, { className: "rounded-md border border-dashed border-border p-4 text-sm", children: "The reading column holds prose and conversations at a comfortable measure." })),
69
- ResizablePanelGroup: () => (_jsx("div", { className: "h-40 max-w-lg rounded-md border border-border", children: _jsxs(ResizablePanelGroup, { orientation: "horizontal", children: [_jsx(ResizablePanel, { defaultSize: 60, minSize: 30, children: _jsx("div", { className: "p-4 text-sm", children: "Conversation" }) }), _jsx(ResizableHandle, { withHandle: true }), _jsx(ResizablePanel, { defaultSize: 40, minSize: 20, children: _jsx("div", { className: "p-4 text-sm", children: "Side panel" }) })] }) })),
70
- ScrollArea: () => (_jsx(ScrollArea, { className: "h-32 max-w-xs rounded-md border border-border", children: _jsx("pre", { className: "p-3 font-mono text-xs", children: LOG }) })),
71
- Separator: () => (_jsxs("div", { className: "grid max-w-xs gap-3 text-sm", children: ["Agents", _jsx(Separator, {}), "Settings"] })),
63
+ ResizablePanelGroup: () => (_jsx("div", { className: "h-40 max-w-lg rounded-md border border-border", children: _jsxs(ResizablePanelGroup, { orientation: "horizontal", children: [_jsx(ResizablePanel, { defaultSize: "60%", minSize: "30%", children: _jsx("div", { className: "p-4 text-sm", children: "Conversation" }) }), _jsx(ResizableHandle, { "aria-label": "Resize the first panel", withHandle: true }), _jsx(ResizablePanel, { defaultSize: "40%", minSize: "20%", children: _jsx("div", { className: "p-4 text-sm", children: "Side panel" }) })] }) })),
64
+ ScrollArea: () => (_jsxs("div", { className: "grid max-w-xs gap-6", children: [_jsx(ScrollArea, { className: "h-32 rounded-md border border-border", overflow: "y", children: _jsx("pre", { className: "p-3 font-mono text-xs", children: LOG }) }), _jsx(ScrollArea, { buttonLabels: {
65
+ previous: "Scroll customer logos left",
66
+ next: "Scroll customer logos right",
67
+ }, className: "rounded-md border border-border", contentClassName: "flex gap-3 p-3", overflow: "x", children: [
68
+ "Rossi Ottica",
69
+ "Bianchi Srl",
70
+ "Conti & Figli",
71
+ "Verdi Moda",
72
+ "Ferri Auto",
73
+ "Neri Caffè",
74
+ ].map((customer) => (_jsx("span", { className: "grid h-16 w-28 shrink-0 place-items-center rounded-sm border border-border text-sm", children: customer }, customer))) }), _jsx(ScrollArea, { className: "h-32 rounded-md border border-border", overflow: "both", children: _jsx("pre", { className: "w-[640px] p-3 font-mono text-xs", children: LOG }) })] })),
75
+ Separator: () => (_jsxs("div", { className: "grid max-w-xs gap-6 text-sm", children: [_jsxs("div", { className: "grid gap-3", children: ["Agents", _jsx(Separator, {}), "Settings"] }), _jsxs("div", { className: "flex h-5 items-center gap-3", children: ["Runs", _jsx(Separator, { orientation: "vertical" }), "Approvals", _jsx(Separator, { orientation: "vertical" }), "Cost"] }), _jsxs("div", { className: "grid gap-3 rounded-md border border-border p-px", children: [_jsx("span", { className: "px-3 pt-3", children: "Billing" }), _jsx(Separator, { inset: true }), _jsx("span", { className: "px-3 pb-3", children: "Invoices" })] })] })),
72
76
  ToolIcon: () => (_jsx("div", { className: "flex flex-wrap items-center gap-4 text-sm", children: ["search", "edit", "terminal", "globe"].map((name) => (_jsxs("span", { className: "flex items-center gap-2", children: [_jsx(ToolIcon, { "aria-hidden": "true", name: name }), name] }, name))) })),
73
77
  };
@@ -1,4 +1,5 @@
1
1
  declare function ActionStatusSpecimen(): import("react").JSX.Element;
2
+ declare function GaugeSpecimen(): import("react").JSX.Element;
2
3
  export declare const STATUS: {
3
4
  ActionStatus: typeof ActionStatusSpecimen;
4
5
  AgentOrb: () => import("react").JSX.Element;
@@ -7,12 +8,14 @@ export declare const STATUS: {
7
8
  Avatar: () => import("react").JSX.Element;
8
9
  Badge: () => import("react").JSX.Element;
9
10
  BrandWordmark: () => import("react").JSX.Element;
11
+ CheckCounts: () => import("react").JSX.Element;
10
12
  FileTypeIcon: () => import("react").JSX.Element;
13
+ Gauge: typeof GaugeSpecimen;
11
14
  IdentityMark: () => import("react").JSX.Element;
12
- MetaLabel: () => import("react").JSX.Element;
13
15
  ModelIdentity: () => import("react").JSX.Element;
14
16
  ModelMark: () => import("react").JSX.Element;
15
17
  PlatformMark: () => import("react").JSX.Element;
18
+ ProgressChecklist: () => import("react").JSX.Element;
16
19
  RecordIdentity: () => import("react").JSX.Element;
17
20
  StatusBadge: () => import("react").JSX.Element;
18
21
  StatusDot: () => import("react").JSX.Element;
@@ -1 +1 @@
1
- {"version":3,"file":"status.d.ts","sourceRoot":"","sources":["../../../src/showcase/specimens/status.tsx"],"names":[],"mappings":"AA0BA,iBAAS,oBAAoB,gCAsB5B;AAED,eAAO,MAAM,MAAM;;;;;;;;;;;;;;;;;;CAyKQ,CAAC"}
1
+ {"version":3,"file":"status.d.ts","sourceRoot":"","sources":["../../../src/showcase/specimens/status.tsx"],"names":[],"mappings":"AAyDA,iBAAS,oBAAoB,gCAiB5B;AAYD,iBAAS,aAAa,gCA2DrB;AAED,eAAO,MAAM,MAAM;;;;;;;;;;;;;;;;;;;;CA6QQ,CAAC"}
@@ -1,44 +1,97 @@
1
1
  "use client";
2
2
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
3
- import { Mail, Save, Wrench } from "lucide-react";
3
+ import { useId } from "react";
4
+ import { Building2, Check, Clock, CreditCard, Database, Lock, Mail, MonitorDown, Pause, Save, Wrench, } from "lucide-react";
4
5
  import { ActionStatus } from "../../components/action-status.js";
5
6
  import { AgentOrb } from "../../components/agent-orb.js";
6
7
  import { AppMark, composioLogo } from "../../components/app-mark.js";
7
- import { Avatar, AvatarFallback, AvatarGroup, AvatarGroupCount } from "../../components/avatar.js";
8
+ import { Avatar, AvatarFallback, AvatarGroup, AvatarWithIcon } from "../../components/avatar.js";
8
9
  import { Badge } from "../../components/badge.js";
9
10
  import { BrandMark, BrandWordmark } from "../../components/brand.js";
10
- import { Button } from "../../components/button.js";
11
+ import { CheckCounts, CheckState } from "../../components/check-counts.js";
11
12
  import { FileTypeIcon } from "../../components/file-type-icon.js";
13
+ import { Gauge } from "../../components/gauge.js";
12
14
  import { AgentIcon, ApprovalsIcon, ArchIcon } from "../../components/house-icons.js";
13
15
  import { IdentityMark } from "../../components/identity-mark.js";
14
- import { MetaLabel } from "../../components/label-system.js";
15
16
  import { ModelIdentity } from "../../components/model-identity.js";
16
17
  import { ModelMark } from "../../components/model-mark.js";
17
18
  import { PlatformMark } from "../../components/platform-mark.js";
19
+ import { ProgressChecklist } from "../../components/progress-checklist.js";
18
20
  import { RecordIdentity } from "../../components/record-identity.js";
19
21
  import { StatusBadge } from "../../components/status-badge.js";
20
22
  import { StatusDot } from "../../components/status-dot.js";
21
23
  import { Tag } from "../../components/tag.js";
22
- import { ARANCIO, COBALTO, VERDE } from "../samples.js";
24
+ import { ARANCIO, COBALTO, nothing, VERDE } from "../samples.js";
25
+ // A one-ink logo as Sofia keeps it: white where the mark is, transparent elsewhere.
26
+ const SAMPLE_LOGO = `data:image/svg+xml,${encodeURIComponent('<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 64 16"><text x="0" y="13" fill="white" font-family="sans-serif" font-size="14" font-weight="700">ROSSI</text></svg>')}`;
27
+ const SAMPLE_ICON = `data:image/svg+xml,${encodeURIComponent('<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 32 32"><rect width="32" height="32" rx="7" fill="royalblue"/><path d="M10 9h8a5 5 0 0 1 0 10h-4v5h-4z" fill="white"/></svg>')}`;
28
+ const MEMBERS = [
29
+ { id: "1", name: "Ada Rossi" },
30
+ { id: "2", name: "Marco Bianchi" },
31
+ { id: "3", name: "Luca Conti" },
32
+ { id: "4", name: "Sara Kim" },
33
+ { id: "5", name: "Tom Hill" },
34
+ ];
23
35
  function ActionStatusSpecimen() {
24
- return (_jsx("div", { className: "flex flex-wrap items-center gap-2", children: ["idle", "saving", "done"].map((state) => (_jsx(Button, { "aria-busy": state === "saving" || undefined, disabled: state === "saving", variant: "outline", children: _jsx(ActionStatus, { busy: "Saving", done: "Saved", idle: "Save changes", idleIcon: _jsx(Save, { "aria-hidden": "true", "data-icon": "inline-start" }), state: state }) }, state))) }));
36
+ return (_jsx("div", { className: "flex flex-wrap items-center gap-2", children: ["idle", "saving", "done"].map((state) => (_jsx(ActionStatus, { busy: "Saving", done: "Saved", idle: "Save changes", idleIcon: _jsx(Save, { "aria-hidden": "true" }), state: state, type: "button", variant: "outline" }, state))) }));
37
+ }
38
+ function GaugeRow({ label, gauge }) {
39
+ const labelId = useId();
40
+ return (_jsxs("div", { className: "flex items-center gap-3 text-sm", children: [gauge(labelId), _jsx("span", { id: labelId, children: label })] }));
41
+ }
42
+ function GaugeSpecimen() {
43
+ return (_jsxs("div", { className: "grid gap-6", children: [_jsxs("div", { className: "flex flex-wrap items-end gap-6", children: [_jsx(GaugeRow, { gauge: (id) => _jsx(Gauge, { "aria-labelledby": id, size: "xs", value: 42 }), label: "Storage used" }), _jsx(GaugeRow, { gauge: (id) => _jsx(Gauge, { "aria-labelledby": id, size: "sm", value: 64 }), label: "Plan used" }), _jsx(GaugeRow, { gauge: (id) => _jsx(Gauge, { "aria-labelledby": id, size: "md", value: 87 }), label: "Tasks done" }), _jsx(GaugeRow, { gauge: (id) => _jsx(Gauge, { "aria-labelledby": id, size: "lg", value: 99.97 }), label: "Cache hit rate" })] }), _jsxs("div", { className: "flex flex-wrap items-center gap-6", children: [_jsx(GaugeRow, { gauge: (id) => _jsx(Gauge, { "aria-labelledby": id, showValue: true, size: "sm", value: 64 }), label: "Plan used, 64%" }), _jsx(GaugeRow, { gauge: (id) => _jsx(Gauge, { "aria-labelledby": id, showValue: true, size: "md", value: 87 }), label: "Tasks done, 87%" }), _jsx(GaugeRow, { gauge: (id) => _jsx(Gauge, { "aria-labelledby": id, showValue: true, size: "lg", value: 99.97 }), label: "Cache hit rate, 99.97%" })] }), _jsxs("div", { className: "flex flex-wrap items-center gap-6", children: [_jsx(GaugeRow, { gauge: (id) => (_jsx(Gauge, { "aria-labelledby": id, showValue: true, size: "md", tone: "warning", value: 82 })), label: "Model budget, 82%: close to the limit" }), _jsx(GaugeRow, { gauge: (id) => (_jsx(Gauge, { "aria-labelledby": id, showValue: true, size: "md", tone: "critical", value: 97 })), label: "Mailbox space, 97%: almost full" }), _jsx(GaugeRow, { gauge: (id) => (_jsx(Gauge, { "aria-labelledby": id, size: "md", value: 58, children: _jsx(Database, { "aria-hidden": "true" }) })), label: "Memory used" })] })] }));
25
44
  }
26
45
  export const STATUS = {
27
46
  ActionStatus: ActionStatusSpecimen,
28
47
  AgentOrb: () => (_jsxs("div", { className: "flex flex-wrap items-end gap-6", children: [_jsx(AgentOrb, { color: COBALTO, form: "orbit", label: "Invoices, working", size: 64, state: "working" }), _jsx(AgentOrb, { color: VERDE, form: "lattice", label: "Orders, waiting for you", size: 64, state: "waiting" }), _jsx(AgentOrb, { color: ARANCIO, form: "braid", label: "Support", size: 32 }), _jsx(AgentOrb, { form: "nadia", label: "Nadia", size: 96 })] })),
29
48
  AppMark: () => (_jsxs("div", { className: "flex flex-wrap items-center gap-3 text-sm", children: [_jsx(AppMark, { app: "gmail", logo: composioLogo("gmail") }), "Gmail", _jsx(AppMark, { app: "telegram", platform: "telegram" }), "Telegram", _jsx(AppMark, { app: "Fatture in Cloud" }), "Fatture in Cloud"] })),
30
49
  ArchIcon: () => (_jsxs("div", { className: "flex flex-wrap items-center gap-4 text-sm", children: [_jsxs("span", { className: "flex items-center gap-2", children: [_jsx(ArchIcon, { "aria-hidden": "true", className: "size-5" }), "Company"] }), _jsxs("span", { className: "flex items-center gap-2", children: [_jsx(ApprovalsIcon, { "aria-hidden": "true", className: "size-5" }), "Approvals"] }), _jsxs("span", { className: "flex items-center gap-2", children: [_jsx(AgentIcon, { "aria-hidden": "true", className: "size-5" }), "Agents"] })] })),
31
- Avatar: () => (_jsxs("div", { className: "flex flex-wrap items-center gap-6", children: [_jsx(Avatar, { children: _jsx(AvatarFallback, { children: "AR" }) }), _jsxs(AvatarGroup, { "aria-label": "5 members", children: [_jsx(Avatar, { children: _jsx(AvatarFallback, { children: "AR" }) }), _jsx(Avatar, { children: _jsx(AvatarFallback, { children: "MB" }) }), _jsx(Avatar, { children: _jsx(AvatarFallback, { children: "LC" }) }), _jsx(AvatarGroupCount, { children: "+2" })] })] })),
32
- Badge: () => (_jsxs("div", { className: "flex flex-wrap items-center gap-2", children: [_jsx(Badge, { children: "Owner" }), _jsx(Badge, { variant: "secondary", children: "Business plan" }), _jsx(Badge, { variant: "outline", children: "Beta" })] })),
50
+ Avatar: () => (_jsxs("div", { className: "grid gap-6", children: [_jsx("div", { className: "flex flex-wrap items-center gap-4", children: ["xs", "sm", "default", "lg"].map((size) => (_jsx(Avatar, { label: "Ada Rossi", size: size, children: _jsx(AvatarFallback, { children: size === "xs" ? "A" : "AR" }) }, size))) }), _jsxs("div", { className: "flex flex-wrap items-center gap-6", children: [_jsx(AvatarGroup, { label: "5 members", limit: 3, members: MEMBERS }), _jsx(AvatarGroup, { label: "5 members, last on top", limit: 3, members: MEMBERS, reverse: true }), _jsx(AvatarGroup, { label: "5 members, tight", limit: 3, members: MEMBERS, overlap: 6 })] }), _jsxs("div", { className: "flex flex-wrap items-center gap-6 text-sm", children: [_jsxs("span", { className: "flex items-center gap-2", children: [_jsx(AvatarWithIcon, { icon: _jsx(Check, {}), iconBackground: true, label: "Ada Rossi, approved", name: "Ada Rossi" }), "Ada Rossi"] }), _jsxs("span", { className: "flex items-center gap-2", children: [_jsx(AvatarWithIcon, { icon: _jsx(Pause, {}), iconBackground: true, label: "Marco Bianchi, paused", name: "Marco Bianchi" }), "Marco Bianchi"] }), _jsx(AvatarWithIcon, { icon: _jsx(Clock, {}), iconBackground: true, label: "Luca Conti, waiting for approval", name: "Luca Conti" })] })] })),
51
+ Badge: () => (_jsxs("div", { className: "grid gap-4", children: [_jsxs("div", { className: "flex flex-wrap items-center gap-2", children: [_jsx(Badge, { children: "Owner" }), _jsx(Badge, { variant: "secondary", children: "Business plan" }), _jsx(Badge, { variant: "outline", children: "Beta" })] }), _jsxs("div", { className: "flex flex-wrap items-center gap-2", children: [_jsx(Badge, { size: "sm", variant: "secondary", children: "Small" }), _jsx(Badge, { size: "md", variant: "secondary", children: "Medium" }), _jsx(Badge, { size: "lg", variant: "secondary", children: "Large" })] }), _jsxs("div", { className: "flex flex-wrap items-center gap-2", children: [_jsx(Badge, { icon: _jsx(Mail, { "aria-hidden": "true" }), variant: "secondary", children: "Mailbox" }), _jsx(Badge, { icon: _jsx(Lock, { "aria-hidden": "true" }), title: "Read only", variant: "secondary" }), _jsx(Badge, { render: _jsx("a", { href: "#" }), variant: "outline", children: "Release notes" })] })] })),
33
52
  BrandWordmark: () => (_jsxs("div", { className: "flex flex-wrap items-center gap-6", children: [_jsx(BrandWordmark, {}), _jsx(BrandMark, {})] })),
53
+ CheckCounts: () => (_jsxs("div", { className: "grid max-w-md gap-2 text-sm", children: [_jsxs("span", { className: "flex items-center gap-3", children: [_jsx("span", { className: "flex-1", children: "Health checks" }), _jsx(CheckCounts, { counts: [
54
+ { outcome: "passed", count: 12, label: "12 tasks completed" },
55
+ { outcome: "failed", count: 1, label: "1 task failed" },
56
+ { outcome: "warning", count: 0, label: "0 outcomes unknown" },
57
+ { outcome: "pending", count: 2, label: "2 tasks running" },
58
+ ] }), _jsx(CheckState, { label: "1 check failed", outcome: "failed" })] }), _jsxs("span", { className: "flex items-center gap-3", children: [_jsx("span", { className: "flex-1", children: "Messaging" }), _jsx(CheckState, { label: "All channels connected", outcome: "passed" })] })] })),
34
59
  FileTypeIcon: () => (_jsx("div", { className: "grid gap-2 text-sm", children: ["mcp.json", "deploy.sh", "README.md", "schema.sql"].map((path) => (_jsxs("span", { className: "flex items-center gap-2 font-mono", children: [_jsx(FileTypeIcon, { className: "size-4", path: path }), path] }, path))) })),
35
- IdentityMark: () => (_jsxs("div", { className: "flex flex-wrap items-center gap-4", children: [_jsx(IdentityMark, { kind: "agent", orb: { form: "orbit", color: COBALTO } }), _jsx(IdentityMark, { app: "gmail", kind: "app", logo: composioLogo("gmail") }), _jsx(IdentityMark, { kind: "company", name: "Acme Service & Parts" }), _jsx(IdentityMark, { kind: "person", name: "Ada Rossi" }), _jsx(IdentityMark, { icon: Mail, kind: "record" }), _jsx(IdentityMark, { icon: Wrench, kind: "record", size: 40, tone: "skill" })] })),
36
- MetaLabel: () => (_jsxs("span", { className: "flex items-center gap-2 text-sm", children: ["Price list", _jsx(MetaLabel, { children: "Read only" })] })),
60
+ Gauge: GaugeSpecimen,
61
+ IdentityMark: () => (_jsxs("div", { className: "flex flex-wrap items-center gap-4", children: [_jsx(IdentityMark, { kind: "agent", orb: { form: "orbit", color: COBALTO } }), _jsx(IdentityMark, { app: "gmail", kind: "app", logo: composioLogo("gmail") }), _jsx(IdentityMark, { kind: "company", name: "Acme Service & Parts" }), _jsx(IdentityMark, { kind: "company", logo: SAMPLE_LOGO, name: "Studio Rossi" }), _jsx(IdentityMark, { kind: "company", logo: SAMPLE_ICON, name: "Polaris Studio" }), _jsx(IdentityMark, { kind: "person", name: "Ada Rossi" }), _jsx(IdentityMark, { icon: Mail, kind: "record" }), _jsx(IdentityMark, { icon: Wrench, kind: "record", size: 40, tone: "skill" })] })),
37
62
  ModelIdentity: () => (_jsxs("div", { className: "grid gap-2", children: [_jsx(ModelIdentity, { model: "anthropic/claude-opus-5" }), _jsx(ModelIdentity, { model: "openai/gpt-5.6-sol" }), _jsx(ModelIdentity, { model: "x-ai/grok-4.5" })] })),
38
63
  ModelMark: () => (_jsxs("div", { className: "flex flex-wrap items-center gap-4", children: [_jsx(ModelMark, { author: "anthropic", name: "Claude Opus 5" }), _jsx(ModelMark, { author: "mistralai", label: "Mistral" })] })),
39
64
  PlatformMark: () => (_jsx("div", { className: "flex flex-wrap items-center gap-4 text-sm", children: ["google", "microsoft", "apple", "telegram", "whatsapp", "slack"].map((platform) => (_jsxs("span", { className: "flex items-center gap-2 capitalize", children: [_jsx(PlatformMark, { platform: platform, size: 20 }), platform] }, platform))) })),
65
+ ProgressChecklist: () => (_jsx(ProgressChecklist, { closeLabel: "Close", description: "What Studio Rossi still needs before its Agents work for it.", doneLabel: "Done", finishLabel: "Done", label: "Studio Rossi's setup, 1 of 3 done", steps: [
66
+ {
67
+ id: "company",
68
+ title: "Company details confirmed",
69
+ description: "Legal name, VAT number and registered office checked.",
70
+ icon: Building2,
71
+ tone: "blue",
72
+ done: true,
73
+ },
74
+ {
75
+ id: "plan",
76
+ title: "Plan chosen",
77
+ description: "No member account holds a plan yet.",
78
+ icon: CreditCard,
79
+ tone: "green",
80
+ done: false,
81
+ action: { label: "Open billing", onClick: nothing },
82
+ },
83
+ {
84
+ id: "nadia",
85
+ title: "Nadia connected",
86
+ description: "Nadia has not reported an Agent from this company yet.",
87
+ icon: MonitorDown,
88
+ tone: "purple",
89
+ done: false,
90
+ action: { label: "Open downloads", onClick: nothing },
91
+ },
92
+ ], title: "Customer setup" })),
40
93
  RecordIdentity: () => (_jsx("div", { className: "max-w-sm", children: _jsx(RecordIdentity, { detail: "Company skill \u00B7 every Agent has it", hint: "skl_0042", mark: { kind: "record", icon: Wrench, tone: "skill" }, name: "Write quotes from the price list" }) })),
41
94
  StatusBadge: () => (_jsxs("div", { className: "flex flex-wrap items-center gap-2", children: [_jsx(StatusBadge, { label: "Connected", tone: "success" }), _jsx(StatusBadge, { label: "Waiting for you", since: "2h", tone: "warning" }), _jsx(StatusBadge, { label: "Failed", tone: "danger" }), _jsx(StatusBadge, { label: "Running", tone: "info" }), _jsx(StatusBadge, { label: "Paused", tone: "neutral" })] })),
42
- StatusDot: () => (_jsxs("div", { className: "grid gap-2 text-sm", children: [_jsxs("span", { className: "flex items-center gap-2", children: [_jsx(StatusDot, { tone: "good" }), "Telegram connected"] }), _jsxs("span", { className: "flex items-center gap-2", children: [_jsx(StatusDot, { tone: "warn" }), "WhatsApp needs a new code"] }), _jsxs("span", { className: "flex items-center gap-2", children: [_jsx(StatusDot, { tone: "bad" }), "Slack disconnected"] })] })),
95
+ StatusDot: () => (_jsxs("div", { className: "grid gap-2 text-sm", children: [_jsxs("span", { className: "flex items-center gap-2", children: [_jsx(StatusDot, { decorative: true, tone: "good" }), "Telegram connected"] }), _jsxs("span", { className: "flex items-center gap-2", children: [_jsx(StatusDot, { decorative: true, tone: "warn" }), "WhatsApp needs a new code"] }), _jsxs("span", { className: "flex items-center gap-2", children: [_jsx(StatusDot, { decorative: true, tone: "bad" }), "Slack disconnected"] })] })),
43
96
  Tag: () => (_jsxs("div", { className: "flex flex-wrap items-center gap-2", children: [_jsx(Tag, { tone: "blue", children: "Rossi Ottica" }), _jsx(Tag, { tone: "teal", children: "Partner" }), _jsx(Tag, { note: "Your account", quiet: true, children: "Direct customer" })] })),
44
97
  };
@@ -1,4 +1,4 @@
1
- export type UsageName = "ActivityFeed" | "AgentProfileCard" | "CatalogDrawer" | "CollectionFilters" | "CollectionPage" | "CollectionToolbar" | "ConfirmDialog" | "EntryScene" | "FormDialog" | "FormDrawer" | "LibraryShelf" | "ObjectPage" | "ObjectSection" | "OverviewPage" | "PageHeader" | "RecordList" | "RecordSheet" | "RowEditForm" | "SettingsPage" | "SettingsSection" | "Button" | "ButtonGroup" | "CopyButton" | "PageActions" | "Calendar" | "CollectionSearch" | "Field" | "Form" | "Input" | "InputGroup" | "InputOTP" | "Label" | "NativeSelect" | "SettingsField" | "Slider" | "Textarea" | "Checkbox" | "CollectionSort" | "Combobox" | "ModelSelect" | "RadioGroup" | "SegmentedChoice" | "Select" | "Switch" | "ThemeModeSwitcher" | "Toggle" | "ToggleGroup" | "ActionStatus" | "AgentOrb" | "AppMark" | "ArchIcon" | "Avatar" | "Badge" | "BrandWordmark" | "FileTypeIcon" | "IdentityMark" | "MetaLabel" | "ModelIdentity" | "ModelMark" | "PlatformMark" | "RecordIdentity" | "StatusBadge" | "StatusDot" | "Tag" | "AgentListRow" | "Breadcrumb" | "CommandDialog" | "DashboardShell" | "DesktopAppShell" | "Footer" | "NavigationMenu" | "Pagination" | "PortalSidebarFrame" | "ScopeSwitcher" | "Sidebar" | "SidebarSections" | "Tabs" | "TabsNav" | "textLinkVariants" | "AgentCard" | "ApprovalRow" | "Card" | "CardRow" | "CodeBlock" | "DataTable" | "DiffCount" | "DisclosureRow" | "FileDiff" | "Item" | "Kbd" | "MemoryItem" | "ObjectFacts" | "PairingCode" | "Progress" | "QrCode" | "RecordTime" | "RunTimeline" | "SettingsFactsSection" | "StatusRow" | "Table" | "TableCard" | "TableValue" | "UsageMeter" | "Alert" | "EmptyState" | "EntryProgress" | "EntryStageList" | "HoverCard" | "LabelledPicture" | "MessageNotice" | "NoticeBanner" | "PendingLabel" | "Skeleton" | "Toaster" | "Tooltip" | "UpdateCard" | "WaitingLine" | "AccountMenu" | "ActionContextMenu" | "ActionMenu" | "AlertDialog" | "ContextMenu" | "Dialog" | "Drawer" | "DropdownMenu" | "GlassControl" | "MenuChoiceRow" | "Menubar" | "Popover" | "Sheet" | "ThemeModeMenu" | "ActivityCalendar" | "ChartAreaStacked" | "ChartBarHorizontal" | "ChartBarMultiple" | "ChartBarStacked" | "ChartCard" | "ChartContainer" | "ChartSparkline" | "DateRangeControl" | "KpiCard" | "TrendBadge" | "createEntityColorMap" | "Accordion" | "AspectRatio" | "BrandField" | "Carousel" | "ChannelView" | "Collapsible" | "CompanyCard" | "Disclosure" | "ExpandableBlock" | "HiveScene" | "NadiaPresence" | "NumberedSteps" | "PluginSlotBoundary" | "ReadingColumn" | "ResizablePanelGroup" | "ScrollArea" | "Separator" | "ToolIcon";
1
+ export type UsageName = "ActivityFeed" | "AgentProfileCard" | "CatalogDrawer" | "CollectionFilters" | "CollectionPage" | "CollectionToolbar" | "ConfirmDialog" | "EntryScene" | "FormDialog" | "FormDrawer" | "LibraryShelf" | "ObjectPage" | "ObjectSection" | "OverviewPage" | "PageHeader" | "RecordList" | "RecordSheet" | "RowEditForm" | "SettingsPage" | "SettingsSection" | "Button" | "ButtonGroup" | "ButtonLink" | "CopyButton" | "LoadMoreButton" | "PageActions" | "Calendar" | "ClearableInput" | "CollectionSearch" | "Field" | "Input" | "InputGroup" | "InputOTP" | "Label" | "NativeSelect" | "SettingsField" | "SettingsRows" | "Slider" | "Textarea" | "Checkbox" | "ChoiceboxGroup" | "CollectionSort" | "Combobox" | "ModelSelect" | "MultiSelect" | "RadioGroup" | "SegmentedChoice" | "SegmentedControl" | "Select" | "Switch" | "ThemeModeSegments" | "ThemeModeSwitcher" | "Toggle" | "ToggleGroup" | "ActionStatus" | "AgentOrb" | "AppMark" | "ArchIcon" | "Avatar" | "Badge" | "BrandWordmark" | "CheckCounts" | "FileTypeIcon" | "IdentityMark" | "ModelIdentity" | "ModelMark" | "PlatformMark" | "ProgressChecklist" | "RecordIdentity" | "StatusBadge" | "StatusDot" | "Tag" | "AgentListRow" | "Breadcrumb" | "CommandDialog" | "DesktopAppShell" | "Footer" | "PortalSidebarFrame" | "ScopeSwitcher" | "Sidebar" | "SidebarBrand" | "SidebarFind" | "SidebarFrame" | "SidebarMenuChevron" | "SidebarSections" | "Tabs" | "TabsNav" | "textLinkVariants" | "AgentCard" | "Card" | "CardRow" | "CodeBlock" | "DataTable" | "DiffCount" | "DisclosureRow" | "FileDiff" | "Gauge" | "Item" | "Kbd" | "MiddleTruncate" | "ObjectFacts" | "PairingCode" | "Progress" | "QrCode" | "RecordTime" | "RunTimeline" | "SettingsFactsSection" | "Snippet" | "Table" | "TableCard" | "TableValue" | "TextWithCopyButton" | "UsageMeter" | "Alert" | "EmptyState" | "EntryProgress" | "EntryStageList" | "HoverCard" | "LabelledPicture" | "MessageNotice" | "NoticeBanner" | "PendingLabel" | "Skeleton" | "SkeletonRegion" | "Toaster" | "Tooltip" | "UpdateCard" | "WaitingLine" | "AccountMenu" | "ActionContextMenu" | "ActionMenu" | "AlertDialog" | "ContextMenu" | "Dialog" | "Drawer" | "DropdownMenu" | "GlassControl" | "MenuChoiceRow" | "Popover" | "Sheet" | "ThemeModeMenu" | "ActivityCalendar" | "ChartAreaStacked" | "ChartBarHorizontal" | "ChartBarMultiple" | "ChartBarStacked" | "ChartCard" | "ChartContainer" | "ChartSparkline" | "DateRangeControl" | "KpiCard" | "TrendBadge" | "createEntityColorMap" | "Accordion" | "AspectRatio" | "BrandField" | "Carousel" | "Collapsible" | "CompanyCard" | "Disclosure" | "HiveScene" | "NadiaPresence" | "NumberedSteps" | "Prose" | "ReadingColumn" | "ResizablePanelGroup" | "ScrollArea" | "Separator" | "ToolIcon";
2
2
  export type UsageFamily = "Compositions" | "Actions" | "Inputs" | "Choices" | "Status" | "Navigation" | "Data" | "Feedback" | "Menus" | "Charts" | "Other";
3
3
  export type ComponentUsage = {
4
4
  name: UsageName;
@@ -1 +1 @@
1
- {"version":3,"file":"usage.generated.d.ts","sourceRoot":"","sources":["../../src/showcase/usage.generated.ts"],"names":[],"mappings":"AAGA,MAAM,MAAM,SAAS,GACjB,cAAc,GACd,kBAAkB,GAClB,eAAe,GACf,mBAAmB,GACnB,gBAAgB,GAChB,mBAAmB,GACnB,eAAe,GACf,YAAY,GACZ,YAAY,GACZ,YAAY,GACZ,cAAc,GACd,YAAY,GACZ,eAAe,GACf,cAAc,GACd,YAAY,GACZ,YAAY,GACZ,aAAa,GACb,aAAa,GACb,cAAc,GACd,iBAAiB,GACjB,QAAQ,GACR,aAAa,GACb,YAAY,GACZ,aAAa,GACb,UAAU,GACV,kBAAkB,GAClB,OAAO,GACP,MAAM,GACN,OAAO,GACP,YAAY,GACZ,UAAU,GACV,OAAO,GACP,cAAc,GACd,eAAe,GACf,QAAQ,GACR,UAAU,GACV,UAAU,GACV,gBAAgB,GAChB,UAAU,GACV,aAAa,GACb,YAAY,GACZ,iBAAiB,GACjB,QAAQ,GACR,QAAQ,GACR,mBAAmB,GACnB,QAAQ,GACR,aAAa,GACb,cAAc,GACd,UAAU,GACV,SAAS,GACT,UAAU,GACV,QAAQ,GACR,OAAO,GACP,eAAe,GACf,cAAc,GACd,cAAc,GACd,WAAW,GACX,eAAe,GACf,WAAW,GACX,cAAc,GACd,gBAAgB,GAChB,aAAa,GACb,WAAW,GACX,KAAK,GACL,cAAc,GACd,YAAY,GACZ,eAAe,GACf,gBAAgB,GAChB,iBAAiB,GACjB,QAAQ,GACR,gBAAgB,GAChB,YAAY,GACZ,oBAAoB,GACpB,eAAe,GACf,SAAS,GACT,iBAAiB,GACjB,MAAM,GACN,SAAS,GACT,kBAAkB,GAClB,WAAW,GACX,aAAa,GACb,MAAM,GACN,SAAS,GACT,WAAW,GACX,WAAW,GACX,WAAW,GACX,eAAe,GACf,UAAU,GACV,MAAM,GACN,KAAK,GACL,YAAY,GACZ,aAAa,GACb,aAAa,GACb,UAAU,GACV,QAAQ,GACR,YAAY,GACZ,aAAa,GACb,sBAAsB,GACtB,WAAW,GACX,OAAO,GACP,WAAW,GACX,YAAY,GACZ,YAAY,GACZ,OAAO,GACP,YAAY,GACZ,eAAe,GACf,gBAAgB,GAChB,WAAW,GACX,iBAAiB,GACjB,eAAe,GACf,cAAc,GACd,cAAc,GACd,UAAU,GACV,SAAS,GACT,SAAS,GACT,YAAY,GACZ,aAAa,GACb,aAAa,GACb,mBAAmB,GACnB,YAAY,GACZ,aAAa,GACb,aAAa,GACb,QAAQ,GACR,QAAQ,GACR,cAAc,GACd,cAAc,GACd,eAAe,GACf,SAAS,GACT,SAAS,GACT,OAAO,GACP,eAAe,GACf,kBAAkB,GAClB,kBAAkB,GAClB,oBAAoB,GACpB,kBAAkB,GAClB,iBAAiB,GACjB,WAAW,GACX,gBAAgB,GAChB,gBAAgB,GAChB,kBAAkB,GAClB,SAAS,GACT,YAAY,GACZ,sBAAsB,GACtB,WAAW,GACX,aAAa,GACb,YAAY,GACZ,UAAU,GACV,aAAa,GACb,aAAa,GACb,aAAa,GACb,YAAY,GACZ,iBAAiB,GACjB,WAAW,GACX,eAAe,GACf,eAAe,GACf,oBAAoB,GACpB,eAAe,GACf,qBAAqB,GACrB,YAAY,GACZ,WAAW,GACX,UAAU,CAAC;AAEf,MAAM,MAAM,WAAW,GACnB,cAAc,GACd,SAAS,GACT,QAAQ,GACR,SAAS,GACT,QAAQ,GACR,YAAY,GACZ,MAAM,GACN,UAAU,GACV,OAAO,GACP,QAAQ,GACR,OAAO,CAAC;AAEZ,MAAM,MAAM,cAAc,GAAG;IAC3B,IAAI,EAAE,SAAS,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,WAAW,CAAC;IACpB,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;CAChB,CAAC;AAEF,eAAO,MAAM,cAAc,EAAE,SAAS,WAAW,EAYhD,CAAC;AAEF,eAAO,MAAM,KAAK,EAAE,SAAS,cAAc,EAyyE1C,CAAC"}
1
+ {"version":3,"file":"usage.generated.d.ts","sourceRoot":"","sources":["../../src/showcase/usage.generated.ts"],"names":[],"mappings":"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"}