@cueplusplus/ui 0.3.0 → 0.6.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (541) hide show
  1. package/CHANGELOG.md +2263 -0
  2. package/dist/agent-runtime/_glyphs.js +43 -0
  3. package/dist/agent-runtime/branch-picker.d.ts +45 -0
  4. package/dist/agent-runtime/branch-picker.js +87 -0
  5. package/dist/agent-runtime/index.d.ts +4 -0
  6. package/dist/agent-runtime/index.js +4 -0
  7. package/dist/agent-runtime/tool-call-card.d.ts +69 -0
  8. package/dist/agent-runtime/tool-call-card.js +187 -0
  9. package/dist/agent-runtime/use-agent-thread.d.ts +164 -0
  10. package/dist/agent-runtime/use-agent-thread.js +251 -0
  11. package/dist/chat/index.d.ts +2 -2
  12. package/dist/chat/message-list.d.ts +6 -0
  13. package/dist/chat/message-list.js +35 -0
  14. package/dist/chrome/_drag.js +59 -0
  15. package/dist/chrome/_status-bar-item.js +85 -0
  16. package/dist/chrome/_status-bar.d.ts +15 -0
  17. package/dist/chrome/_status-bar.js +171 -0
  18. package/dist/chrome/app-shell.d.ts +120 -2
  19. package/dist/chrome/app-shell.js +107 -8
  20. package/dist/chrome/index.d.ts +4 -3
  21. package/dist/chrome/status-bar.d.ts +87 -4
  22. package/dist/chrome/status-bar.js +80 -16
  23. package/dist/chrome/title-bar.d.ts +11 -1
  24. package/dist/chrome/title-bar.js +1 -3
  25. package/dist/configurator/_export.js +3 -2
  26. package/dist/configurator/_overrides.d.ts +1 -1
  27. package/dist/configurator/token-editor.js +4 -1
  28. package/dist/date/_segments.js +52 -6
  29. package/dist/elements/activity-graph.d.ts +40 -0
  30. package/dist/elements/activity-graph.js +81 -0
  31. package/dist/elements/agent-card.d.ts +49 -0
  32. package/dist/elements/agent-card.js +91 -0
  33. package/dist/elements/agent-handoff.d.ts +24 -0
  34. package/dist/elements/agent-handoff.js +53 -0
  35. package/dist/elements/agent-mode-badge.d.ts +72 -0
  36. package/dist/elements/agent-mode-badge.js +110 -0
  37. package/dist/elements/agent-plan.d.ts +24 -0
  38. package/dist/elements/agent-plan.js +74 -0
  39. package/dist/elements/agent-status.d.ts +29 -0
  40. package/dist/elements/agent-status.js +46 -0
  41. package/dist/elements/agent-surface.d.ts +65 -0
  42. package/dist/elements/agent-surface.js +68 -0
  43. package/dist/elements/animated-number.d.ts +86 -0
  44. package/dist/elements/animated-number.js +118 -0
  45. package/dist/elements/approval-card.d.ts +40 -0
  46. package/dist/elements/approval-card.js +78 -0
  47. package/dist/elements/artifact-card.d.ts +30 -0
  48. package/dist/elements/artifact-card.js +58 -0
  49. package/dist/elements/background-inbox.d.ts +39 -0
  50. package/dist/elements/background-inbox.js +60 -0
  51. package/dist/elements/canvas-split.d.ts +77 -0
  52. package/dist/elements/canvas-split.js +138 -0
  53. package/dist/elements/chart.d.ts +41 -0
  54. package/dist/elements/chart.js +117 -0
  55. package/dist/elements/chat-panel.d.ts +46 -0
  56. package/dist/elements/chat-panel.js +104 -0
  57. package/dist/elements/checkpoint-history.d.ts +31 -0
  58. package/dist/elements/checkpoint-history.js +65 -0
  59. package/dist/elements/clamp.d.ts +90 -0
  60. package/dist/elements/clamp.js +109 -0
  61. package/dist/elements/code-diff.d.ts +42 -0
  62. package/dist/elements/code-diff.js +69 -0
  63. package/dist/elements/code-runner.d.ts +38 -0
  64. package/dist/elements/code-runner.js +84 -0
  65. package/dist/elements/command-palette.d.ts +48 -0
  66. package/dist/elements/command-palette.js +129 -0
  67. package/dist/elements/compaction-row.d.ts +63 -0
  68. package/dist/elements/compaction-row.js +110 -0
  69. package/dist/elements/comparison-card.d.ts +47 -0
  70. package/dist/elements/comparison-card.js +69 -0
  71. package/dist/elements/composer.d.ts +274 -0
  72. package/dist/elements/composer.js +505 -0
  73. package/dist/elements/computer-use.d.ts +40 -0
  74. package/dist/elements/computer-use.js +92 -0
  75. package/dist/elements/confidence-marker.d.ts +39 -0
  76. package/dist/elements/confidence-marker.js +64 -0
  77. package/dist/elements/connection-state.d.ts +29 -0
  78. package/dist/elements/connection-state.js +66 -0
  79. package/dist/elements/context-breakdown.d.ts +30 -0
  80. package/dist/elements/context-breakdown.js +86 -0
  81. package/dist/elements/context-usage.d.ts +99 -0
  82. package/dist/elements/context-usage.js +225 -0
  83. package/dist/elements/conversation-search.d.ts +48 -0
  84. package/dist/elements/conversation-search.js +88 -0
  85. package/dist/elements/cost-meter.d.ts +33 -0
  86. package/dist/elements/cost-meter.js +75 -0
  87. package/dist/elements/data-table.d.ts +31 -0
  88. package/dist/elements/data-table.js +67 -0
  89. package/dist/elements/day-separator.d.ts +34 -0
  90. package/dist/elements/day-separator.js +50 -0
  91. package/dist/elements/diagram.d.ts +34 -0
  92. package/dist/elements/diagram.js +75 -0
  93. package/dist/elements/document-reference.d.ts +37 -0
  94. package/dist/elements/document-reference.js +66 -0
  95. package/dist/elements/draft-restore.d.ts +27 -0
  96. package/dist/elements/draft-restore.js +54 -0
  97. package/dist/elements/edit-message.d.ts +36 -0
  98. package/dist/elements/edit-message.js +77 -0
  99. package/dist/elements/elements.css +459 -0
  100. package/dist/elements/elicitation-form.d.ts +48 -0
  101. package/dist/elements/elicitation-form.js +106 -0
  102. package/dist/elements/empty-state.d.ts +52 -0
  103. package/dist/elements/empty-state.js +98 -0
  104. package/dist/elements/end-of-turn-summary.d.ts +60 -0
  105. package/dist/elements/end-of-turn-summary.js +75 -0
  106. package/dist/elements/error-state.d.ts +29 -0
  107. package/dist/elements/error-state.js +55 -0
  108. package/dist/elements/feedback-dialog.d.ts +36 -0
  109. package/dist/elements/feedback-dialog.js +81 -0
  110. package/dist/elements/file-tree.d.ts +45 -0
  111. package/dist/elements/file-tree.js +84 -0
  112. package/dist/elements/flow-graph.d.ts +45 -0
  113. package/dist/elements/flow-graph.js +78 -0
  114. package/dist/elements/generative/chart.js +200 -0
  115. package/dist/elements/generative/faults.js +111 -0
  116. package/dist/elements/generative/icons.d.ts +41 -0
  117. package/dist/elements/generative/icons.js +190 -0
  118. package/dist/elements/generative/intrinsics.js +483 -0
  119. package/dist/elements/generative/spec.d.ts +110 -0
  120. package/dist/elements/generative/spec.js +366 -0
  121. package/dist/elements/generative.css +1145 -0
  122. package/dist/elements/generative.d.ts +144 -0
  123. package/dist/elements/generative.js +126 -0
  124. package/dist/elements/guardrail-notice.d.ts +29 -0
  125. package/dist/elements/guardrail-notice.js +63 -0
  126. package/dist/elements/image-generation.d.ts +18 -0
  127. package/dist/elements/image-generation.js +64 -0
  128. package/dist/elements/index.d.ts +116 -0
  129. package/dist/elements/index.js +115 -0
  130. package/dist/elements/inline-citation.d.ts +43 -0
  131. package/dist/elements/inline-citation.js +93 -0
  132. package/dist/elements/job-progress.d.ts +49 -0
  133. package/dist/elements/job-progress.js +74 -0
  134. package/dist/elements/launcher-bubble.d.ts +34 -0
  135. package/dist/elements/launcher-bubble.js +72 -0
  136. package/dist/elements/live-region-announcer.d.ts +130 -0
  137. package/dist/elements/live-region-announcer.js +230 -0
  138. package/dist/elements/loading-state.d.ts +27 -0
  139. package/dist/elements/loading-state.js +36 -0
  140. package/dist/elements/map-answer.d.ts +38 -0
  141. package/dist/elements/map-answer.js +93 -0
  142. package/dist/elements/markdown.d.ts +131 -0
  143. package/dist/elements/markdown.js +528 -0
  144. package/dist/elements/math-block.d.ts +51 -0
  145. package/dist/elements/math-block.js +70 -0
  146. package/dist/elements/mcp-server-panel.d.ts +41 -0
  147. package/dist/elements/mcp-server-panel.js +115 -0
  148. package/dist/elements/memory-chips.d.ts +30 -0
  149. package/dist/elements/memory-chips.js +43 -0
  150. package/dist/elements/message-actions.d.ts +38 -0
  151. package/dist/elements/message-actions.js +71 -0
  152. package/dist/elements/message-attachment.d.ts +48 -0
  153. package/dist/elements/message-attachment.js +63 -0
  154. package/dist/elements/message-branches.d.ts +25 -0
  155. package/dist/elements/message-branches.js +65 -0
  156. package/dist/elements/message-pair.d.ts +33 -0
  157. package/dist/elements/message-pair.js +65 -0
  158. package/dist/elements/message-queue.d.ts +31 -0
  159. package/dist/elements/message-queue.js +80 -0
  160. package/dist/elements/message-timing.d.ts +33 -0
  161. package/dist/elements/message-timing.js +37 -0
  162. package/dist/elements/mobile-composer.d.ts +44 -0
  163. package/dist/elements/mobile-composer.js +88 -0
  164. package/dist/elements/model-picker.d.ts +38 -0
  165. package/dist/elements/model-picker.js +69 -0
  166. package/dist/elements/number-ticker.d.ts +18 -0
  167. package/dist/elements/number-ticker.js +47 -0
  168. package/dist/elements/onboarding.d.ts +30 -0
  169. package/dist/elements/onboarding.js +75 -0
  170. package/dist/elements/permission-grant.d.ts +35 -0
  171. package/dist/elements/permission-grant.js +86 -0
  172. package/dist/elements/permission-scopes.d.ts +215 -0
  173. package/dist/elements/permission-scopes.js +249 -0
  174. package/dist/elements/prompt-library.d.ts +43 -0
  175. package/dist/elements/prompt-library.js +117 -0
  176. package/dist/elements/queue-dock.d.ts +101 -0
  177. package/dist/elements/queue-dock.js +132 -0
  178. package/dist/elements/quota-banner.d.ts +26 -0
  179. package/dist/elements/quota-banner.js +66 -0
  180. package/dist/elements/quote-reply.d.ts +44 -0
  181. package/dist/elements/quote-reply.js +79 -0
  182. package/dist/elements/range.d.ts +29 -0
  183. package/dist/elements/range.js +45 -0
  184. package/dist/elements/read-aloud.d.ts +45 -0
  185. package/dist/elements/read-aloud.js +75 -0
  186. package/dist/elements/reasoning-effort.d.ts +36 -0
  187. package/dist/elements/reasoning-effort.js +67 -0
  188. package/dist/elements/reasoning-panel.d.ts +46 -0
  189. package/dist/elements/reasoning-panel.js +75 -0
  190. package/dist/elements/recommendation-card.d.ts +45 -0
  191. package/dist/elements/recommendation-card.js +83 -0
  192. package/dist/elements/regenerate-menu.d.ts +45 -0
  193. package/dist/elements/regenerate-menu.js +51 -0
  194. package/dist/elements/replay.d.ts +217 -0
  195. package/dist/elements/replay.js +498 -0
  196. package/dist/elements/research-report.d.ts +38 -0
  197. package/dist/elements/research-report.js +69 -0
  198. package/dist/elements/retrieval-chunks.d.ts +43 -0
  199. package/dist/elements/retrieval-chunks.js +81 -0
  200. package/dist/elements/revert-dock.d.ts +159 -0
  201. package/dist/elements/revert-dock.js +327 -0
  202. package/dist/elements/reviewable-diff.d.ts +45 -0
  203. package/dist/elements/reviewable-diff.js +110 -0
  204. package/dist/elements/risk-badge.d.ts +52 -0
  205. package/dist/elements/risk-badge.js +91 -0
  206. package/dist/elements/schedule-card.d.ts +42 -0
  207. package/dist/elements/schedule-card.js +90 -0
  208. package/dist/elements/score-breakdown.d.ts +47 -0
  209. package/dist/elements/score-breakdown.js +82 -0
  210. package/dist/elements/scroll-anchor.d.ts +32 -0
  211. package/dist/elements/scroll-anchor.js +121 -0
  212. package/dist/elements/settings-panel.d.ts +52 -0
  213. package/dist/elements/settings-panel.js +107 -0
  214. package/dist/elements/shared-conversation.d.ts +39 -0
  215. package/dist/elements/shared-conversation.js +68 -0
  216. package/dist/elements/sources.d.ts +33 -0
  217. package/dist/elements/sources.js +61 -0
  218. package/dist/elements/speaker-identity.d.ts +32 -0
  219. package/dist/elements/speaker-identity.js +51 -0
  220. package/dist/elements/spec-sheet.d.ts +31 -0
  221. package/dist/elements/spec-sheet.js +45 -0
  222. package/dist/elements/stopped-run.d.ts +22 -0
  223. package/dist/elements/stopped-run.js +50 -0
  224. package/dist/elements/streaming-text.d.ts +31 -0
  225. package/dist/elements/streaming-text.js +45 -0
  226. package/dist/elements/subagent-list.d.ts +37 -0
  227. package/dist/elements/subagent-list.js +79 -0
  228. package/dist/elements/suggestions.d.ts +30 -0
  229. package/dist/elements/suggestions.js +36 -0
  230. package/dist/elements/surfaces.d.ts +85 -0
  231. package/dist/elements/surfaces.js +107 -0
  232. package/dist/elements/tail-status.d.ts +131 -0
  233. package/dist/elements/tail-status.js +94 -0
  234. package/dist/elements/terminal-block.d.ts +29 -0
  235. package/dist/elements/terminal-block.js +54 -0
  236. package/dist/elements/thinking-indicator.d.ts +18 -0
  237. package/dist/elements/thinking-indicator.js +36 -0
  238. package/dist/elements/thread-list.d.ts +35 -0
  239. package/dist/elements/thread-list.js +68 -0
  240. package/dist/elements/thread-search.d.ts +42 -0
  241. package/dist/elements/thread-search.js +99 -0
  242. package/dist/elements/timeline.d.ts +37 -0
  243. package/dist/elements/timeline.js +46 -0
  244. package/dist/elements/todo-list.d.ts +42 -0
  245. package/dist/elements/todo-list.js +59 -0
  246. package/dist/elements/tool-call.d.ts +41 -0
  247. package/dist/elements/tool-call.js +85 -0
  248. package/dist/elements/tool-error.d.ts +39 -0
  249. package/dist/elements/tool-error.js +76 -0
  250. package/dist/elements/tool-group.d.ts +45 -0
  251. package/dist/elements/tool-group.js +71 -0
  252. package/dist/elements/tool-timeline.d.ts +65 -0
  253. package/dist/elements/tool-timeline.js +88 -0
  254. package/dist/elements/trace-waterfall.d.ts +37 -0
  255. package/dist/elements/trace-waterfall.js +69 -0
  256. package/dist/elements/transcript-rules.d.ts +67 -0
  257. package/dist/elements/transcript-rules.js +95 -0
  258. package/dist/elements/turn-footer.d.ts +74 -0
  259. package/dist/elements/turn-footer.js +101 -0
  260. package/dist/elements/typing-indicator.d.ts +16 -0
  261. package/dist/elements/typing-indicator.js +51 -0
  262. package/dist/elements/verdict-row.d.ts +89 -0
  263. package/dist/elements/verdict-row.js +150 -0
  264. package/dist/elements/vocabulary.d.ts +612 -0
  265. package/dist/elements/vocabulary.js +611 -0
  266. package/dist/elements/voice-conversation.d.ts +49 -0
  267. package/dist/elements/voice-conversation.js +123 -0
  268. package/dist/elements/web-preview.d.ts +32 -0
  269. package/dist/elements/web-preview.js +66 -0
  270. package/dist/elements/web-search.d.ts +37 -0
  271. package/dist/elements/web-search.js +66 -0
  272. package/dist/elements/work-collapse.d.ts +103 -0
  273. package/dist/elements/work-collapse.js +131 -0
  274. package/dist/forms/_chassis.d.ts +104 -4
  275. package/dist/forms/_chassis.js +104 -4
  276. package/dist/forms/input-group.d.ts +8 -3
  277. package/dist/forms/input-group.js +8 -3
  278. package/dist/forms/number-field.d.ts +3 -2
  279. package/dist/forms/number-field.js +3 -2
  280. package/dist/icons/containers.d.ts +89 -0
  281. package/dist/icons/containers.js +295 -0
  282. package/dist/icons/index.d.ts +2 -0
  283. package/dist/index.d.ts +12 -6
  284. package/dist/index.js +5 -1
  285. package/dist/instruments/_data-row.js +118 -0
  286. package/dist/instruments/data-row.d.ts +94 -0
  287. package/dist/instruments/data-row.js +151 -0
  288. package/dist/instruments/data-tree.d.ts +126 -0
  289. package/dist/instruments/data-tree.js +303 -0
  290. package/dist/instruments/index.d.ts +5 -2
  291. package/dist/instruments/index.js +4 -1
  292. package/dist/instruments/ledger.d.ts +105 -0
  293. package/dist/instruments/ledger.js +114 -0
  294. package/dist/instruments/table.d.ts +70 -2
  295. package/dist/instruments/table.js +133 -39
  296. package/dist/instruments/two-step-button.js +25 -6
  297. package/dist/layout/sidebar.d.ts +19 -1
  298. package/dist/layout/sidebar.js +19 -1
  299. package/dist/primitives/button.js +11 -1
  300. package/dist/primitives/chip.d.ts +35 -9
  301. package/dist/primitives/chip.js +97 -11
  302. package/dist/system/agent-skin.d.ts +27 -0
  303. package/dist/system/agent-skin.js +20 -0
  304. package/dist/system/portal.d.ts +5 -3
  305. package/dist/system/portal.js +19 -5
  306. package/dist/system/theme-provider.js +54 -9
  307. package/dist/system/use-density.d.ts +9 -0
  308. package/dist/system/use-density.js +9 -0
  309. package/dist/system/use-isomorphic-layout-effect.js +19 -1
  310. package/dist/theming/_presets.d.ts +1 -1
  311. package/dist/theming/_presets.js +74 -11
  312. package/dist/theming/contrast.d.ts +16 -4
  313. package/dist/theming/contrast.js +33 -6
  314. package/dist/theming/create-theme.d.ts +6 -2
  315. package/dist/theming/create-theme.js +32 -5
  316. package/dist/theming/serialize.d.ts +10 -1
  317. package/dist/theming/serialize.js +62 -8
  318. package/manifest/components/activity-graph.json +88 -0
  319. package/manifest/components/agent-card.json +120 -0
  320. package/manifest/components/agent-handoff.json +87 -0
  321. package/manifest/components/agent-mode-badge.json +84 -0
  322. package/manifest/components/agent-plan.json +67 -0
  323. package/manifest/components/agent-status.json +73 -0
  324. package/manifest/components/agent-surface.json +78 -0
  325. package/manifest/components/alert-dialog.json +1 -1
  326. package/manifest/components/animated-number.json +67 -0
  327. package/manifest/components/app-shell.json +142 -9
  328. package/manifest/components/approval-card.json +106 -0
  329. package/manifest/components/artifact-card.json +81 -0
  330. package/manifest/components/audience-icon.json +52 -0
  331. package/manifest/components/autocomplete.json +2 -0
  332. package/manifest/components/background-inbox.json +71 -0
  333. package/manifest/components/branch-picker.json +124 -0
  334. package/manifest/components/button.json +1 -0
  335. package/manifest/components/canvas-split-body.json +62 -0
  336. package/manifest/components/canvas-split-document.json +54 -0
  337. package/manifest/components/canvas-split-header.json +83 -0
  338. package/manifest/components/canvas-split-line.json +62 -0
  339. package/manifest/components/canvas-split-message.json +62 -0
  340. package/manifest/components/canvas-split-thread.json +54 -0
  341. package/manifest/components/canvas-split.json +60 -0
  342. package/manifest/components/catalogue-icon.json +52 -0
  343. package/manifest/components/channel-beta-icon.json +52 -0
  344. package/manifest/components/channel-released-icon.json +52 -0
  345. package/manifest/components/chart.json +93 -0
  346. package/manifest/components/chat-empty-state.json +55 -0
  347. package/manifest/components/chat-panel-assistant-message.json +51 -0
  348. package/manifest/components/chat-panel-composer.json +66 -0
  349. package/manifest/components/chat-panel-messages.json +51 -0
  350. package/manifest/components/chat-panel-typing.json +51 -0
  351. package/manifest/components/chat-panel-user-message.json +51 -0
  352. package/manifest/components/chat-panel.json +57 -0
  353. package/manifest/components/checkpoint-history.json +80 -0
  354. package/manifest/components/chip.json +24 -12
  355. package/manifest/components/clamp.json +102 -0
  356. package/manifest/components/cli-tool-icon.json +52 -0
  357. package/manifest/components/code-diff.json +87 -0
  358. package/manifest/components/code-runner.json +97 -0
  359. package/manifest/components/color-field.json +2 -0
  360. package/manifest/components/color-picker.json +2 -0
  361. package/manifest/components/combobox.json +2 -0
  362. package/manifest/components/compaction-row.json +100 -0
  363. package/manifest/components/comparison-card.json +83 -0
  364. package/manifest/components/composer-actions.json +65 -0
  365. package/manifest/components/composer-attach-button.json +65 -0
  366. package/manifest/components/composer-attachment-chip.json +75 -0
  367. package/manifest/components/composer-attachments.json +60 -0
  368. package/manifest/components/composer-bar.json +73 -0
  369. package/manifest/components/composer-command-item.json +79 -0
  370. package/manifest/components/composer-context.json +67 -0
  371. package/manifest/components/composer-input.json +73 -0
  372. package/manifest/components/composer-menu-item.json +72 -0
  373. package/manifest/components/composer-menu.json +79 -0
  374. package/manifest/components/composer-model-item.json +75 -0
  375. package/manifest/components/composer-model-trigger.json +75 -0
  376. package/manifest/components/composer-person-item.json +79 -0
  377. package/manifest/components/composer-send.json +80 -0
  378. package/manifest/components/composer-toolbar.json +65 -0
  379. package/manifest/components/composer-voice-button.json +68 -0
  380. package/manifest/components/composer-voice.json +75 -0
  381. package/manifest/components/composer.json +2 -0
  382. package/manifest/components/computer-use.json +84 -0
  383. package/manifest/components/confidence-marker.json +74 -0
  384. package/manifest/components/connection-state.json +84 -0
  385. package/manifest/components/context-breakdown.json +65 -0
  386. package/manifest/components/context-usage.json +85 -0
  387. package/manifest/components/conversation-search.json +92 -0
  388. package/manifest/components/cost-meter.json +74 -0
  389. package/manifest/components/cue-portal-frame.json +1 -1
  390. package/manifest/components/data-row.json +203 -0
  391. package/manifest/components/data-tree.json +151 -0
  392. package/manifest/components/date-field.json +2 -0
  393. package/manifest/components/date-picker.json +2 -0
  394. package/manifest/components/date-range-picker.json +2 -0
  395. package/manifest/components/day-separator.json +58 -0
  396. package/manifest/components/delegation-card.json +1 -1
  397. package/manifest/components/density.json +1 -1
  398. package/manifest/components/diagram.json +100 -0
  399. package/manifest/components/document-reference.json +90 -0
  400. package/manifest/components/draft-restore.json +82 -0
  401. package/manifest/components/drawer.json +1 -1
  402. package/manifest/components/dropdown-menu.json +1 -1
  403. package/manifest/components/edit-message.json +105 -0
  404. package/manifest/components/elements-command-palette.json +100 -0
  405. package/manifest/components/elements-composer.json +71 -0
  406. package/manifest/components/elements-data-table.json +68 -0
  407. package/manifest/components/elements-timeline.json +69 -0
  408. package/manifest/components/elicitation-form.json +103 -0
  409. package/manifest/components/empty-state-composer.json +64 -0
  410. package/manifest/components/empty-state-greeting.json +49 -0
  411. package/manifest/components/empty-state-suggestion.json +57 -0
  412. package/manifest/components/empty-state-suggestions.json +49 -0
  413. package/manifest/components/end-of-turn-summary.json +77 -0
  414. package/manifest/components/env-var-input.json +2 -0
  415. package/manifest/components/error-state.json +80 -0
  416. package/manifest/components/feedback-dialog.json +107 -0
  417. package/manifest/components/file-tree.json +83 -0
  418. package/manifest/components/flow-graph.json +75 -0
  419. package/manifest/components/folder-icon.json +52 -0
  420. package/manifest/components/frac.json +59 -0
  421. package/manifest/components/generation-loader.json +64 -0
  422. package/manifest/components/generative-ui.json +93 -0
  423. package/manifest/components/guardrail-notice.json +91 -0
  424. package/manifest/components/hover-card.json +1 -1
  425. package/manifest/components/image-generation.json +67 -0
  426. package/manifest/components/info-tip.json +1 -1
  427. package/manifest/components/inline-citation.json +77 -0
  428. package/manifest/components/input-group.json +4 -2
  429. package/manifest/components/input.json +3 -1
  430. package/manifest/components/job-progress.json +96 -0
  431. package/manifest/components/launcher-bubble.json +105 -0
  432. package/manifest/components/ledger.json +187 -0
  433. package/manifest/components/live-region-announcer.json +79 -0
  434. package/manifest/components/map-answer.json +83 -0
  435. package/manifest/components/markdown-text.json +94 -0
  436. package/manifest/components/math-block.json +74 -0
  437. package/manifest/components/mcp-server-icon.json +52 -0
  438. package/manifest/components/mcp-server-panel.json +87 -0
  439. package/manifest/components/memory-chips.json +65 -0
  440. package/manifest/components/message-actions.json +99 -0
  441. package/manifest/components/message-attachments.json +63 -0
  442. package/manifest/components/message-branches.json +71 -0
  443. package/manifest/components/message-list.json +1 -1
  444. package/manifest/components/message-pair.json +86 -0
  445. package/manifest/components/message-queue.json +74 -0
  446. package/manifest/components/message-timing.json +62 -0
  447. package/manifest/components/mobile-composer.json +126 -0
  448. package/manifest/components/model-picker.json +76 -0
  449. package/manifest/components/multi-select.json +2 -0
  450. package/manifest/components/musical-time-input.json +2 -0
  451. package/manifest/components/node-card.json +1 -1
  452. package/manifest/components/node-handle.json +1 -1
  453. package/manifest/components/number-field.json +3 -1
  454. package/manifest/components/number-ticker.json +61 -0
  455. package/manifest/components/onboarding.json +84 -0
  456. package/manifest/components/otp-field.json +9 -7
  457. package/manifest/components/password-input.json +2 -0
  458. package/manifest/components/permission-grant.json +92 -0
  459. package/manifest/components/permission-scopes.json +139 -0
  460. package/manifest/components/popover.json +1 -1
  461. package/manifest/components/prompt-library.json +99 -0
  462. package/manifest/components/queue-dock.json +110 -0
  463. package/manifest/components/quota-banner.json +94 -0
  464. package/manifest/components/quote-reply.json +105 -0
  465. package/manifest/components/read-aloud.json +111 -0
  466. package/manifest/components/reasoning-effort.json +81 -0
  467. package/manifest/components/reasoning-panel.json +108 -0
  468. package/manifest/components/recommendation-card.json +107 -0
  469. package/manifest/components/regenerate-menu.json +89 -0
  470. package/manifest/components/replay-player.json +102 -0
  471. package/manifest/components/research-report.json +76 -0
  472. package/manifest/components/retrieval-chunks.json +84 -0
  473. package/manifest/components/revert-dock.json +150 -0
  474. package/manifest/components/reviewable-diff.json +93 -0
  475. package/manifest/components/risk-badge.json +74 -0
  476. package/manifest/components/schedule-card.json +101 -0
  477. package/manifest/components/score-breakdown.json +91 -0
  478. package/manifest/components/scroll-anchor.json +72 -0
  479. package/manifest/components/scroll-area.json +7 -7
  480. package/manifest/components/scrub-input.json +2 -0
  481. package/manifest/components/search-input.json +9 -7
  482. package/manifest/components/segmented-control.json +21 -21
  483. package/manifest/components/select.json +1 -0
  484. package/manifest/components/settings-panel.json +118 -0
  485. package/manifest/components/shared-conversation.json +89 -0
  486. package/manifest/components/shimmer-label.json +59 -0
  487. package/manifest/components/skill-icon.json +52 -0
  488. package/manifest/components/sources.json +83 -0
  489. package/manifest/components/speaker-identity.json +61 -0
  490. package/manifest/components/spec-sheet.json +80 -0
  491. package/manifest/components/stack-icon.json +52 -0
  492. package/manifest/components/stacks-matrix-icon.json +52 -0
  493. package/manifest/components/stat.json +1 -1
  494. package/manifest/components/status-bar.json +146 -12
  495. package/manifest/components/status-dot.json +1 -1
  496. package/manifest/components/stopped-run.json +81 -0
  497. package/manifest/components/streaming-text.json +71 -0
  498. package/manifest/components/sub.json +44 -0
  499. package/manifest/components/subagent-list.json +88 -0
  500. package/manifest/components/suggestions.json +84 -0
  501. package/manifest/components/sup.json +44 -0
  502. package/manifest/components/swap-label.json +71 -0
  503. package/manifest/components/table-scroll-region.json +6 -0
  504. package/manifest/components/table.json +88 -4
  505. package/manifest/components/tags-input.json +2 -0
  506. package/manifest/components/tail-status.json +109 -0
  507. package/manifest/components/terminal-block.json +91 -0
  508. package/manifest/components/textarea.json +3 -1
  509. package/manifest/components/theme-provider.json +2 -2
  510. package/manifest/components/thinking-indicator.json +63 -0
  511. package/manifest/components/thread-list.json +76 -0
  512. package/manifest/components/thread-search.json +90 -0
  513. package/manifest/components/threshold-rail.json +2 -2
  514. package/manifest/components/time-boundary.json +62 -0
  515. package/manifest/components/time-field.json +2 -0
  516. package/manifest/components/timeline.json +1 -1
  517. package/manifest/components/title-bar.json +1 -1
  518. package/manifest/components/todo-list.json +69 -0
  519. package/manifest/components/toggle-group.json +9 -7
  520. package/manifest/components/toggle.json +2 -0
  521. package/manifest/components/token-editor.json +1 -1
  522. package/manifest/components/tool-call-card.json +200 -0
  523. package/manifest/components/tool-call.json +119 -0
  524. package/manifest/components/tool-error.json +114 -0
  525. package/manifest/components/tool-group.json +83 -0
  526. package/manifest/components/tool-timeline.json +119 -0
  527. package/manifest/components/toolbar.json +7 -7
  528. package/manifest/components/tooltip.json +1 -1
  529. package/manifest/components/trace-waterfall.json +74 -0
  530. package/manifest/components/turn-footer.json +105 -0
  531. package/manifest/components/typing-indicator.json +53 -0
  532. package/manifest/components/unread-divider.json +55 -0
  533. package/manifest/components/usage-chart.json +1 -1
  534. package/manifest/components/verdict-row.json +91 -0
  535. package/manifest/components/voice-conversation.json +109 -0
  536. package/manifest/components/web-preview.json +87 -0
  537. package/manifest/components/web-search.json +92 -0
  538. package/manifest/components/work-collapse.json +102 -0
  539. package/manifest/manifest.json +2736 -60
  540. package/manifest/tokens.json +22 -1
  541. package/package.json +44 -2
@@ -0,0 +1,295 @@
1
+ import { jsx, jsxs } from "react/jsx-runtime";
2
+ //#region src/icons/containers.tsx
3
+ /**
4
+ * The containers a catalogue sorts things into, drawn.
5
+ *
6
+ * A console's navigation column is a list of *places*: everything, one person's
7
+ * stack, everyone's stacks at once, an audience, a channel, a folder somebody
8
+ * made, and the two kinds of thing a registry files beside a skill. Every one
9
+ * of those rows has a name, and a name is enough — right up until the column
10
+ * rails, at which point the row is nothing but its glyph and a place with no
11
+ * glyph is a place that has disappeared. That is what this set is for, and it
12
+ * is why it is a set rather than ten icons: they are read in one column, one
13
+ * after another, so a grid or a weight that drifts on any one of them is read
14
+ * as a mistake on that row rather than as a style.
15
+ *
16
+ * Drawn inline, on the same terms as the library's own `_glyphs` modules: a
17
+ * navigation column should not put an icon dependency on its render path, and
18
+ * hand-set strokes stay hairline-thin at the 10–16px `--cue-icon-*` sizes
19
+ * console density asks for. `lucide-react` stays the answer for everything
20
+ * outside this vocabulary — it is an optional peer, and these ten are here
21
+ * only because no icon library has a mark for "everyone's stacks, side by
22
+ * side".
23
+ *
24
+ * Three rules hold the set together, and the suite holds all three:
25
+ *
26
+ * - **One grid.** `0 0 16 16` at `stroke-width` 1.5, the grid and the weight
27
+ * every glyph in this library is already drawn on. A 24 grid is what
28
+ * `lucide-react` uses and what the prototype these came from used, but 1.5
29
+ * on a 24 grid renders two-thirds the weight of 1.5 on a 16 grid at the same
30
+ * box — so matching the number there would have meant not matching the line.
31
+ * The line is the thing a reader sees.
32
+ * - **No size.** No `width`, no `height`: the caller sizes them, and in this
33
+ * library that means a density token — `size-icon-md` on a navigation row,
34
+ * `size-icon-sm` inside a control. An icon that measured itself would be the
35
+ * one thing in a density island that did not move.
36
+ * - **No colour.** `currentColor` throughout, so the tone comes from the row:
37
+ * muted at rest, `--cue-fg` when it is the current place, `--cue-danger`
38
+ * inside a destructive menu item. Nothing here reads a token directly.
39
+ *
40
+ * They are decorative by default — `aria-hidden` — because they mark a row that
41
+ * already carries its name, and a second announcement of the same word is
42
+ * noise. The props spread last, so a glyph that has become the *only* name for
43
+ * something (an icon-only rail with no `sr-only` label, which is a shape this
44
+ * library argues against but does not forbid) can be turned back into a picture
45
+ * with `aria-hidden={false} role="img"` and a `<title>`.
46
+ */
47
+ /**
48
+ * The chassis every icon in the set is drawn on.
49
+ *
50
+ * One object rather than six attributes written ten times: consistency by
51
+ * construction is the only kind that survives an eleventh icon being added in a
52
+ * hurry.
53
+ *
54
+ * @internal Not part of the public API.
55
+ */
56
+ const CONTAINER_ICON = {
57
+ viewBox: "0 0 16 16",
58
+ fill: "none",
59
+ stroke: "currentColor",
60
+ strokeWidth: "1.5",
61
+ strokeLinecap: "round",
62
+ strokeLinejoin: "round",
63
+ "aria-hidden": true
64
+ };
65
+ /**
66
+ * The catalogue itself: everything there is, before anything has been narrowed.
67
+ *
68
+ * One tile repeated over a 2×2 rather than a stack of rows, because the row
69
+ * this marks is the one that *undoes* a filter — "all of it" is a shape, and a
70
+ * list glyph would have promised an ordering the row does not have.
71
+ */
72
+ function CatalogueIcon(props) {
73
+ return /* @__PURE__ */ jsxs("svg", {
74
+ ...CONTAINER_ICON,
75
+ ...props,
76
+ children: [
77
+ /* @__PURE__ */ jsx("rect", {
78
+ x: "2.25",
79
+ y: "2.25",
80
+ width: "5",
81
+ height: "5",
82
+ rx: "1"
83
+ }),
84
+ /* @__PURE__ */ jsx("rect", {
85
+ x: "8.75",
86
+ y: "2.25",
87
+ width: "5",
88
+ height: "5",
89
+ rx: "1"
90
+ }),
91
+ /* @__PURE__ */ jsx("rect", {
92
+ x: "2.25",
93
+ y: "8.75",
94
+ width: "5",
95
+ height: "5",
96
+ rx: "1"
97
+ }),
98
+ /* @__PURE__ */ jsx("rect", {
99
+ x: "8.75",
100
+ y: "8.75",
101
+ width: "5",
102
+ height: "5",
103
+ rx: "1"
104
+ })
105
+ ]
106
+ });
107
+ }
108
+ /**
109
+ * One person's stack: the set of things they have actually installed.
110
+ *
111
+ * Plates seen edge-on — the layers idiom — because a stack is an accumulation
112
+ * and not a container: things go into it one at a time and the order they went
113
+ * in is part of what it is.
114
+ */
115
+ function StackIcon(props) {
116
+ return /* @__PURE__ */ jsxs("svg", {
117
+ ...CONTAINER_ICON,
118
+ ...props,
119
+ children: [/* @__PURE__ */ jsx("path", { d: "M8 2.75 14 6l-6 3.25L2 6z" }), /* @__PURE__ */ jsx("path", { d: "m2 10 6 3.25L14 10" })]
120
+ });
121
+ }
122
+ /**
123
+ * Every stack at once, one column each: who has what, read across.
124
+ *
125
+ * A table rather than more plates. The head rule and the name column are what
126
+ * make it a matrix instead of a grid — the question it answers is "which of
127
+ * these does that person not have", and that is a question with two axes.
128
+ */
129
+ function StacksMatrixIcon(props) {
130
+ return /* @__PURE__ */ jsxs("svg", {
131
+ ...CONTAINER_ICON,
132
+ ...props,
133
+ children: [/* @__PURE__ */ jsx("rect", {
134
+ x: "2.25",
135
+ y: "3",
136
+ width: "11.5",
137
+ height: "10",
138
+ rx: "1.25"
139
+ }), /* @__PURE__ */ jsx("path", { d: "M2.25 6.5h11.5M6.25 6.5V13" })]
140
+ });
141
+ }
142
+ /**
143
+ * An audience: a named group of people something is published to.
144
+ *
145
+ * People, not an abstract shape. An audience is the one container in this set
146
+ * whose members are humans rather than artefacts, and drawing it as a diamond
147
+ * or a tag would have filed it with the folders — which is exactly the mistake
148
+ * a reader makes when deciding where to publish something.
149
+ */
150
+ function AudienceIcon(props) {
151
+ return /* @__PURE__ */ jsxs("svg", {
152
+ ...CONTAINER_ICON,
153
+ ...props,
154
+ children: [
155
+ /* @__PURE__ */ jsx("circle", {
156
+ cx: "6.25",
157
+ cy: "5.5",
158
+ r: "2.25"
159
+ }),
160
+ /* @__PURE__ */ jsx("path", { d: "M2 13.25c0-2.2 1.9-3.5 4.25-3.5s4.25 1.3 4.25 3.5" }),
161
+ /* @__PURE__ */ jsx("path", { d: "M10.5 3.6a2.25 2.25 0 0 1 0 3.8" }),
162
+ /* @__PURE__ */ jsx("path", { d: "M11.9 9.95c1.35.5 2.1 1.6 2.1 3.3" })
163
+ ]
164
+ });
165
+ }
166
+ /**
167
+ * The released channel: what a colleague gets when they install without asking
168
+ * for anything in particular.
169
+ *
170
+ * A ring filled solid. Its pair, {@link ChannelBetaIcon}, is the same ring
171
+ * filled halfway — the two are one mark told twice, so a reader never has to
172
+ * learn which of two unrelated pictures means "finished".
173
+ */
174
+ function ChannelReleasedIcon(props) {
175
+ return /* @__PURE__ */ jsxs("svg", {
176
+ ...CONTAINER_ICON,
177
+ ...props,
178
+ children: [/* @__PURE__ */ jsx("circle", {
179
+ cx: "8",
180
+ cy: "8",
181
+ r: "5.5"
182
+ }), /* @__PURE__ */ jsx("circle", {
183
+ cx: "8",
184
+ cy: "8",
185
+ r: "3",
186
+ fill: "currentColor",
187
+ stroke: "none"
188
+ })]
189
+ });
190
+ }
191
+ /**
192
+ * The beta channel: the same things, one merge earlier.
193
+ *
194
+ * The released ring at half fill. Half rather than empty because a beta is not
195
+ * an absence of a release — it is a release that has not finished happening,
196
+ * and an empty ring would have read as "nothing here yet".
197
+ */
198
+ function ChannelBetaIcon(props) {
199
+ return /* @__PURE__ */ jsxs("svg", {
200
+ ...CONTAINER_ICON,
201
+ ...props,
202
+ children: [/* @__PURE__ */ jsx("circle", {
203
+ cx: "8",
204
+ cy: "8",
205
+ r: "5.5"
206
+ }), /* @__PURE__ */ jsx("path", {
207
+ d: "M8 5a3 3 0 0 1 0 6z",
208
+ fill: "currentColor",
209
+ stroke: "none"
210
+ })]
211
+ });
212
+ }
213
+ /**
214
+ * A folder somebody made: a shelf of bookmarks, filed by hand.
215
+ *
216
+ * The tab is the whole glyph. A plain rounded box in this library is a panel,
217
+ * a card or a dialog, and the one thing a folder has to say is that a person
218
+ * put these here on purpose rather than a query having returned them.
219
+ */
220
+ function FolderIcon(props) {
221
+ return /* @__PURE__ */ jsx("svg", {
222
+ ...CONTAINER_ICON,
223
+ ...props,
224
+ children: /* @__PURE__ */ jsx("path", { d: "M2 12.5V4.5a1 1 0 0 1 1-1h3.4l1.6 2H13a1 1 0 0 1 1 1v6a1 1 0 0 1-1 1H3a1 1 0 0 1-1-1z" })
225
+ });
226
+ }
227
+ /**
228
+ * An MCP server in the registry: a thing an agent connects *to*.
229
+ *
230
+ * Two rack units with a status lamp each. It is drawn as hardware on purpose —
231
+ * an MCP server is the one entry in a catalogue of files that is a running
232
+ * process somewhere, with an address and a session, and a row that looked like
233
+ * a document would hide the only fact about it that matters operationally.
234
+ */
235
+ function McpServerIcon(props) {
236
+ return /* @__PURE__ */ jsxs("svg", {
237
+ ...CONTAINER_ICON,
238
+ ...props,
239
+ children: [
240
+ /* @__PURE__ */ jsx("rect", {
241
+ x: "2.25",
242
+ y: "3",
243
+ width: "11.5",
244
+ height: "4.5",
245
+ rx: "1.25"
246
+ }),
247
+ /* @__PURE__ */ jsx("rect", {
248
+ x: "2.25",
249
+ y: "8.5",
250
+ width: "11.5",
251
+ height: "4.5",
252
+ rx: "1.25"
253
+ }),
254
+ /* @__PURE__ */ jsx("path", { d: "M4.75 5.25h.01M4.75 10.75h.01" })
255
+ ]
256
+ });
257
+ }
258
+ /**
259
+ * A CLI tool in the registry: a thing that runs in a terminal.
260
+ *
261
+ * A window with a prompt in it, rather than a bare chevron. A chevron on its
262
+ * own is a disclosure everywhere else in this library, and a navigation row
263
+ * that appeared to expand and then navigated instead is a worse failure than a
264
+ * slightly busier glyph at 10px.
265
+ */
266
+ function CliToolIcon(props) {
267
+ return /* @__PURE__ */ jsxs("svg", {
268
+ ...CONTAINER_ICON,
269
+ ...props,
270
+ children: [/* @__PURE__ */ jsx("rect", {
271
+ x: "2.25",
272
+ y: "2.75",
273
+ width: "11.5",
274
+ height: "10.5",
275
+ rx: "1.5"
276
+ }), /* @__PURE__ */ jsx("path", { d: "m5 6.75 1.9 1.75L5 10.25M8.75 10.25h2.5" })]
277
+ });
278
+ }
279
+ /**
280
+ * A skill: the thing every other container in this set holds.
281
+ *
282
+ * One mark, and a spark rather than a document, because what is being filed is
283
+ * a capability. The file it happens to be written in is an implementation
284
+ * detail of how it travels, and a page glyph would have made the catalogue look
285
+ * like a folder of documents rather than a list of things an agent can now do.
286
+ */
287
+ function SkillIcon(props) {
288
+ return /* @__PURE__ */ jsx("svg", {
289
+ ...CONTAINER_ICON,
290
+ ...props,
291
+ children: /* @__PURE__ */ jsx("path", { d: "M8 2.25 9.6 6.4l4.15 1.6-4.15 1.6L8 13.75 6.4 9.6 2.25 8 6.4 6.4z" })
292
+ });
293
+ }
294
+ //#endregion
295
+ export { AudienceIcon, CatalogueIcon, ChannelBetaIcon, ChannelReleasedIcon, CliToolIcon, FolderIcon, McpServerIcon, SkillIcon, StackIcon, StacksMatrixIcon };
@@ -0,0 +1,2 @@
1
+ import { AudienceIcon, CatalogueIcon, ChannelBetaIcon, ChannelReleasedIcon, CliToolIcon, FolderIcon, McpServerIcon, SkillIcon, StackIcon, StacksMatrixIcon } from "./containers.js";
2
+ export { AudienceIcon, CatalogueIcon, ChannelBetaIcon, ChannelReleasedIcon, CliToolIcon, FolderIcon, McpServerIcon, SkillIcon, StackIcon, StacksMatrixIcon };
package/dist/index.d.ts CHANGED
@@ -1,9 +1,9 @@
1
+ import { AskAnswer, AskBox, AskBoxProps, AskDanger, AskKind, AskOption } from "./chat/ask-box.js";
2
+ import { Message, MessageProps, MessageRole } from "./chat/message.js";
1
3
  import { AGENT_COLOR_PROPERTY, AGENT_HUES, AGENT_ROOT_COLOR, AgentColorOptions, agentColor, agentColorStyle } from "./chat/agent-color.js";
2
4
  import { AgentPile, AgentPileEntry, AgentPileProps, AgentPileSize } from "./chat/agent-pile.js";
3
- import { AskAnswer, AskBox, AskBoxProps, AskDanger, AskKind, AskOption } from "./chat/ask-box.js";
4
5
  import { Composer, ComposerProps, ComposerSubmitKey } from "./chat/composer.js";
5
6
  import { DelegationCard, DelegationCardProps, DelegationDirection, DelegationStatus } from "./chat/delegation-card.js";
6
- import { Message, MessageProps, MessageRole } from "./chat/message.js";
7
7
  import { MessageList, MessageListProps } from "./chat/message-list.js";
8
8
  import "./chat/index.js";
9
9
  import { ScrollEdges, TAB_FADE_PX, computeScrollEdges, edgeFadeMask } from "./chrome/_tabs-scroll.js";
@@ -13,7 +13,7 @@ import { Link, LinkProps, linkVariants } from "./layout/link.js";
13
13
  import { Separator, SeparatorProps } from "./primitives/separator.js";
14
14
  import { AppBar, AppBarActionsProps, AppBarBrandProps, AppBarLinkProps, AppBarNavProps, AppBarRegister, AppBarRootProps, AppBarSeparatorProps } from "./chrome/app-bar.js";
15
15
  import { Sidebar, SidebarItemProps, SidebarRailProps, SidebarRootProps, SidebarSectionProps, useSidebar } from "./layout/sidebar.js";
16
- import { AppShell, AppShellAsideProps, AppShellBodyProps, AppShellContentProps, AppShellNavTriggerProps, AppShellRootProps, AppShellScrollerProps, AppShellSidebarProps } from "./chrome/app-shell.js";
16
+ import { AppShell, AppShellAsideProps, AppShellBarProps, AppShellBodyProps, AppShellContentProps, AppShellNavTriggerProps, AppShellRootProps, AppShellScrollerProps, AppShellSidebarProps } from "./chrome/app-shell.js";
17
17
  import { EmptyState, EmptyStateProps } from "./chrome/empty-state.js";
18
18
  import { Eyebrow, EyebrowProps } from "./chrome/eyebrow.js";
19
19
  import { Container, ContainerProps, ContainerWidth } from "./layout/container.js";
@@ -25,7 +25,8 @@ import { Row, RowProps, SeamList, SeamListProps, rowVariants } from "./chrome/ro
25
25
  import { ScrollArea, ScrollAreaOrientation, ScrollAreaProps } from "./chrome/scroll-area.js";
26
26
  import { SectionHeader, SectionHeaderProps } from "./chrome/section-header.js";
27
27
  import { SegmentedControl, SegmentedControlItem, SegmentedControlProps, SegmentedControlSize } from "./chrome/segmented-control.js";
28
- import { StatusBar, StatusBarItemProps, StatusBarProps, StatusBarTone } from "./chrome/status-bar.js";
28
+ import { StatusBarProminence } from "./chrome/_status-bar.js";
29
+ import { StatusBar, StatusBarGroupProps, StatusBarItemProps, StatusBarProps, StatusBarTone } from "./chrome/status-bar.js";
29
30
  import { ScrollableTabsList, ScrollableTabsListProps, Tabs, TabsListProps, TabsPanelProps, TabsRootProps, TabsTabProps } from "./chrome/tabs.js";
30
31
  import { TitleBar, TitleBarProps } from "./chrome/title-bar.js";
31
32
  import { Tree, TreeProps, TreeVisibility, TreeVisibilityToggle, TreeVisibilityToggleProps } from "./chrome/tree.js";
@@ -63,16 +64,21 @@ import { CueLogotype, CueLogotypeProps } from "./brand/cue-logotype.js";
63
64
  import { CueMark, CueMarkProps } from "./brand/cue-mark.js";
64
65
  import { Plussie, PlussieExpression, PlussieProps } from "./brand/plussie.js";
65
66
  import "./brand/index.js";
67
+ import { AudienceIcon, CatalogueIcon, ChannelBetaIcon, ChannelReleasedIcon, CliToolIcon, FolderIcon, McpServerIcon, SkillIcon, StackIcon, StacksMatrixIcon } from "./icons/containers.js";
68
+ import "./icons/index.js";
66
69
  import { AppWindowFrame, AppWindowFrameProps } from "./instruments/app-window-frame.js";
67
70
  import { Button, ButtonProps, buttonVariants } from "./primitives/button.js";
68
71
  import { CopyButton, CopyButtonProps } from "./instruments/copy-button.js";
72
+ import { DataRow, DataRowDisclosure, DataRowRootProps, DataRowSlotProps } from "./instruments/data-row.js";
73
+ import { DataTree, DataTreeItem, DataTreeProps, DataTreeRowState } from "./instruments/data-tree.js";
69
74
  import { GroupBar, GroupBarItem, GroupBarProps, GroupBarTone } from "./instruments/group-bar.js";
75
+ import { Ledger, LedgerEmptyProps, LedgerGroupProps, LedgerRootProps, LedgerTierProps } from "./instruments/ledger.js";
70
76
  import { Meter, MeterProps, MeterProvenance, MeterTone } from "./instruments/meter.js";
71
77
  import { Progress, ProgressProps } from "./instruments/progress.js";
72
78
  import { SeamCell, SeamCellProps, SeamGrid, SeamGridProps, SeamGround } from "./instruments/seam-grid.js";
73
79
  import { Sparkline, SparklineProps } from "./instruments/sparkline.js";
74
80
  import { Stat, StatProps, StatTone } from "./instruments/stat.js";
75
- import { Table, TableCaptionProps, TableCellProps, TableHeadProps, TableRootProps, TableRowProps, TableScrollRegion, TableScrollRegionProps, TableSectionProps } from "./instruments/table.js";
81
+ import { Table, TableCaptionProps, TableCellProps, TableGroupRowProps, TableHeadProps, TableRootProps, TableRowProps, TableScrollRegion, TableScrollRegionProps, TableSectionProps } from "./instruments/table.js";
76
82
  import { TerminalFrame, TerminalFrameLine, TerminalFrameProps, TerminalLine, TerminalLineTone, TerminalScript, TerminalStep } from "./instruments/terminal-frame.js";
77
83
  import { TwoStepButton, TwoStepButtonProps, TwoStepTone } from "./instruments/two-step-button.js";
78
84
  import { UsageChart, UsageChartPoint, UsageChartProps, UsageChartTone } from "./instruments/usage-chart.js";
@@ -118,4 +124,4 @@ import { DEFAULT_STORAGE_KEY, PersistedPreferences, PrepaintDefaults, PrepaintOp
118
124
  import { ControlSize, useControlHeight, useDensity } from "./system/use-density.js";
119
125
  import { useTheme } from "./system/use-theme.js";
120
126
  import { DensityLevel, FontName, Mode, ThemeName } from "./system/index.js";
121
- export { AGENT_COLOR_PROPERTY, AGENT_HUES, AGENT_ROOT_COLOR, Accordion, type AccordionHeaderProps, type AccordionItemProps, type AccordionPanelProps, type AccordionRootProps, type AccordionTriggerProps, type AgentColorOptions, AgentPile, type AgentPileEntry, type AgentPileProps, type AgentPileSize, AlertDialog, type AlertDialogActionProps, type AlertDialogCancelProps, type AlertDialogContentProps, type AlertDialogDescriptionProps, type AlertDialogFooterProps, type AlertDialogRootProps, type AlertDialogTitleProps, type AlertDialogTriggerProps, AppBar, type AppBarActionsProps, type AppBarBrandProps, type AppBarLinkProps, type AppBarNavProps, type AppBarRegister, type AppBarRootProps, type AppBarSeparatorProps, AppShell, type AppShellAsideProps, type AppShellBodyProps, type AppShellContentProps, type AppShellNavTriggerProps, type AppShellRootProps, type AppShellScrollerProps, type AppShellSidebarProps, AppWindowFrame, type AppWindowFrameProps, type AskAnswer, AskBox, type AskBoxProps, type AskDanger, type AskKind, type AskOption, Autocomplete, type AutocompleteProps, Avatar, AvatarGroup, type AvatarGroupProps, type AvatarProps, type AvatarSize, type BarOverflow, type BrandAssetProps, type BrandSize, type BrandTone, Breadcrumb, type BreadcrumbItem, type BreadcrumbProps, Button, ButtonGroup, type ButtonGroupOrientation, type ButtonGroupProps, type ButtonProps, Card, type CardContentProps, type CardDescriptionProps, type CardFooterProps, type CardHeaderProps, type CardRootProps, type CardTitleProps, Checkbox, CheckboxGroup, type CheckboxGroupProps, type CheckboxProps, Chip, type ChipProps, Collapsible, type CollapsiblePanelProps, type CollapsibleRootProps, type CollapsibleTriggerProps, Combobox, type ComboboxOption, type ComboboxProps, CommandPalette, type CommandPaletteItem, type CommandPaletteProps, Composer, type ComposerProps, type ComposerSubmitKey, Container, type ContainerProps, type ContainerWidth, ContextMenu, type ContextMenuContentProps, type ContextMenuRootProps, type ContextMenuTriggerProps, type ControlSize, type ControlVariantProps, CopyButton, type CopyButtonProps, CueLogotype, type CueLogotypeProps, CueMark, type CueMarkProps, CuePortalFrame, type CuePortalFrameProps, DEFAULT_STORAGE_KEY, DelegationCard, type DelegationCardProps, type DelegationDirection, type DelegationStatus, Density, type DensityLevel, type DensityProps, DescriptionList, type DescriptionListDetailProps, type DescriptionListLayout, type DescriptionListRootProps, type DescriptionListTermProps, Dialog, type DialogCloseProps, type DialogContentProps, type DialogDescriptionProps, type DialogFooterProps, type DialogRootProps, type DialogTitleProps, type DialogTriggerProps, Disclosure, type DisclosureProps, Drawer, type DrawerCloseProps, type DrawerContentProps, type DrawerDescriptionProps, type DrawerFooterProps, type DrawerRootProps, type DrawerSwipeDirection, type DrawerTitleProps, type DrawerTriggerProps, DropdownMenu, type DropdownMenuCheckboxItemProps, type DropdownMenuContentProps, type DropdownMenuGroupProps, type DropdownMenuItemProps, type DropdownMenuLabelProps, type DropdownMenuRootProps, type DropdownMenuSeparatorProps, type DropdownMenuTriggerProps, EmptyState, type EmptyStateProps, EnvVarInput, type EnvVarInputProps, Eyebrow, type EyebrowProps, Field, FieldDescription, type FieldDescriptionProps, FieldError, type FieldErrorProps, type FieldIssue, FieldLabel, type FieldLabelProps, type FieldProps, type FilePartition, type FilePartitionOptions, type FileRejectReason, type FileRejection, FileUpload, type FileUploadProps, type FontFamilies, type FontName, Footer, type FooterProps, type FormControlSize, Grid, type GridColumns, type GridProps, GroupBar, type GroupBarItem, type GroupBarProps, type GroupBarTone, HoverCard, type HoverCardContentProps, type HoverCardRootProps, type HoverCardTriggerProps, IconButton, type IconButtonProps, InfoTip, type InfoTipProps, Input, InputGroup, type InputGroupProps, type InputProps, Item, type ItemProps, Kbd, type KbdProps, Link, type LinkProps, Menubar, type MenubarContentProps, type MenubarMenuProps, type MenubarRootProps, type MenubarTriggerProps, Message, MessageList, type MessageListProps, type MessageProps, type MessageRole, Meter, type MeterProps, type MeterProvenance, type MeterTone, type Mode, MultiSelect, type MultiSelectProps, NavigationMenu, type NavigationMenuContentProps, type NavigationMenuItemProps, type NavigationMenuLinkProps, type NavigationMenuListProps, type NavigationMenuRootProps, type NavigationMenuTriggerProps, type NavigationMenuViewportProps, NumberField, type NumberFieldProps, OTPField, type OTPFieldProps, OVERLAY_SIDE_OFFSET, PageShell, type PageShellProps, type PageWidth, Pagination, type PaginationEntry, type PaginationProps, Panel, PanelHeader, type PanelHeaderProps, type PanelProps, PasswordInput, type PasswordInputProps, type PersistedPreferences, Plussie, type PlussieExpression, type PlussieProps, Popover, type PopoverCloseProps, type PopoverContentProps, type PopoverDescriptionProps, type PopoverRootProps, type PopoverTitleProps, type PopoverTriggerProps, type PrepaintDefaults, type PrepaintOptions, Progress, type ProgressProps, Radio, RadioGroup, type RadioGroupProps, type RadioProps, Rating, type RatingProps, type RatingSize, type ResolvedMode, Row, type RowProps, ScrollArea, type ScrollAreaOrientation, type ScrollAreaProps, type ScrollEdges, ScrollableTabsList, type ScrollableTabsListProps, ScrubInput, type ScrubInputProps, SeamCell, type SeamCellProps, SeamGrid, type SeamGridProps, type SeamGround, SeamList, type SeamListProps, SearchInput, type SearchInputProps, SectionHeader, type SectionHeaderProps, SegmentedControl, type SegmentedControlItem, type SegmentedControlProps, type SegmentedControlSize, Select, type SelectOption, type SelectProps, Separator, type SeparatorProps, Sheet, type SheetCloseProps, type SheetContentProps, type SheetDescriptionProps, type SheetFooterProps, type SheetRootProps, type SheetTitleProps, type SheetTriggerProps, Sidebar, type SidebarItemProps, type SidebarRailProps, type SidebarRootProps, type SidebarSectionProps, Skeleton, type SkeletonProps, Slider, type SliderProps, type SpaceStep, Sparkline, type SparklineProps, Spinner, type SpinnerProps, Stack, type StackAlign, type StackJustify, type StackProps, Stat, type StatProps, type StatTone, StatusBar, type StatusBarItemProps, type StatusBarProps, type StatusBarTone, StatusDot, type StatusDotProps, type StatusTone, Stepper, type StepperProps, type StepperState, type StepperStep, Switch, type SwitchProps, TAB_FADE_PX, TREE_GUIDE_GLYPHS, Table, type TableCaptionProps, type TableCellProps, type TableHeadProps, type TableRootProps, type TableRowProps, TableScrollRegion, type TableScrollRegionProps, type TableSectionProps, Tabs, type TabsListProps, type TabsPanelProps, type TabsRootProps, type TabsTabProps, TagsInput, type TagsInputProps, TerminalFrame, type TerminalFrameLine, type TerminalFrameProps, type TerminalLine, type TerminalLineTone, type TerminalScript, type TerminalStep, Textarea, type TextareaProps, type ThemeContextValue, type ThemeName, ThemeProvider, type ThemeProviderProps, Timeline, type TimelineContentProps, type TimelineItemProps, type TimelineMarkerProps, type TimelineRootProps, TitleBar, type TitleBarProps, Toast, type ToastManager, type ToastOptions, type ToastProviderProps, type ToastTone, type ToastViewportProps, Toggle, ToggleGroup, type ToggleGroupProps, type ToggleProps, Toolbar, type ToolbarButtonProps, type ToolbarGroupProps, type ToolbarRootProps, type ToolbarSeparatorProps, Tooltip, type TooltipContentProps, type TooltipProviderProps, type TooltipRootProps, type TooltipTriggerProps, Tree, type TreeGuide, type TreeItem, type TreeProps, type TreeRow, type TreeVisibility, TreeVisibilityToggle, type TreeVisibilityToggleProps, TwoStepButton, type TwoStepButtonProps, type TwoStepTone, type UploadFile, type UploadStatus, UsageChart, type UsageChartPoint, type UsageChartProps, type UsageChartTone, agentColor, agentColorStyle, bareControlClasses, buttonVariants, chipVariants, computeScrollEdges, controlClasses, controlGroupFocusClasses, controlSurface, controlVariants, edgeFadeMask, envReference, flattenTree, itemVariants, linkVariants, menuItemClasses, menuLabelClasses, menuPopupClasses, menuSeparatorClasses, overlayDescriptionClasses, overlayFooterClasses, overlayModalTransitionClasses, overlayPopupTransitionClasses, overlayPositionerClasses, overlaySurfaceClasses, overlayTextClasses, overlayTitleClasses, paginationRange, parseEnvReference, partitionFiles, prepaintScript, rowVariants, scrimClasses, useControlHeight, useCuePortalProps, useDensity, useSidebar, useTheme, useToast };
127
+ export { AGENT_COLOR_PROPERTY, AGENT_HUES, AGENT_ROOT_COLOR, Accordion, type AccordionHeaderProps, type AccordionItemProps, type AccordionPanelProps, type AccordionRootProps, type AccordionTriggerProps, type AgentColorOptions, AgentPile, type AgentPileEntry, type AgentPileProps, type AgentPileSize, AlertDialog, type AlertDialogActionProps, type AlertDialogCancelProps, type AlertDialogContentProps, type AlertDialogDescriptionProps, type AlertDialogFooterProps, type AlertDialogRootProps, type AlertDialogTitleProps, type AlertDialogTriggerProps, AppBar, type AppBarActionsProps, type AppBarBrandProps, type AppBarLinkProps, type AppBarNavProps, type AppBarRegister, type AppBarRootProps, type AppBarSeparatorProps, AppShell, type AppShellAsideProps, type AppShellBarProps, type AppShellBodyProps, type AppShellContentProps, type AppShellNavTriggerProps, type AppShellRootProps, type AppShellScrollerProps, type AppShellSidebarProps, AppWindowFrame, type AppWindowFrameProps, type AskAnswer, AskBox, type AskBoxProps, type AskDanger, type AskKind, type AskOption, AudienceIcon, Autocomplete, type AutocompleteProps, Avatar, AvatarGroup, type AvatarGroupProps, type AvatarProps, type AvatarSize, type BarOverflow, type BrandAssetProps, type BrandSize, type BrandTone, Breadcrumb, type BreadcrumbItem, type BreadcrumbProps, Button, ButtonGroup, type ButtonGroupOrientation, type ButtonGroupProps, type ButtonProps, Card, type CardContentProps, type CardDescriptionProps, type CardFooterProps, type CardHeaderProps, type CardRootProps, type CardTitleProps, CatalogueIcon, ChannelBetaIcon, ChannelReleasedIcon, Checkbox, CheckboxGroup, type CheckboxGroupProps, type CheckboxProps, Chip, type ChipProps, CliToolIcon, Collapsible, type CollapsiblePanelProps, type CollapsibleRootProps, type CollapsibleTriggerProps, Combobox, type ComboboxOption, type ComboboxProps, CommandPalette, type CommandPaletteItem, type CommandPaletteProps, Composer, type ComposerProps, type ComposerSubmitKey, Container, type ContainerProps, type ContainerWidth, ContextMenu, type ContextMenuContentProps, type ContextMenuRootProps, type ContextMenuTriggerProps, type ControlSize, type ControlVariantProps, CopyButton, type CopyButtonProps, CueLogotype, type CueLogotypeProps, CueMark, type CueMarkProps, CuePortalFrame, type CuePortalFrameProps, DEFAULT_STORAGE_KEY, DataRow, type DataRowDisclosure, type DataRowRootProps, type DataRowSlotProps, DataTree, type DataTreeItem, type DataTreeProps, type DataTreeRowState, DelegationCard, type DelegationCardProps, type DelegationDirection, type DelegationStatus, Density, type DensityLevel, type DensityProps, DescriptionList, type DescriptionListDetailProps, type DescriptionListLayout, type DescriptionListRootProps, type DescriptionListTermProps, Dialog, type DialogCloseProps, type DialogContentProps, type DialogDescriptionProps, type DialogFooterProps, type DialogRootProps, type DialogTitleProps, type DialogTriggerProps, Disclosure, type DisclosureProps, Drawer, type DrawerCloseProps, type DrawerContentProps, type DrawerDescriptionProps, type DrawerFooterProps, type DrawerRootProps, type DrawerSwipeDirection, type DrawerTitleProps, type DrawerTriggerProps, DropdownMenu, type DropdownMenuCheckboxItemProps, type DropdownMenuContentProps, type DropdownMenuGroupProps, type DropdownMenuItemProps, type DropdownMenuLabelProps, type DropdownMenuRootProps, type DropdownMenuSeparatorProps, type DropdownMenuTriggerProps, EmptyState, type EmptyStateProps, EnvVarInput, type EnvVarInputProps, Eyebrow, type EyebrowProps, Field, FieldDescription, type FieldDescriptionProps, FieldError, type FieldErrorProps, type FieldIssue, FieldLabel, type FieldLabelProps, type FieldProps, type FilePartition, type FilePartitionOptions, type FileRejectReason, type FileRejection, FileUpload, type FileUploadProps, FolderIcon, type FontFamilies, type FontName, Footer, type FooterProps, type FormControlSize, Grid, type GridColumns, type GridProps, GroupBar, type GroupBarItem, type GroupBarProps, type GroupBarTone, HoverCard, type HoverCardContentProps, type HoverCardRootProps, type HoverCardTriggerProps, IconButton, type IconButtonProps, InfoTip, type InfoTipProps, Input, InputGroup, type InputGroupProps, type InputProps, Item, type ItemProps, Kbd, type KbdProps, Ledger, type LedgerEmptyProps, type LedgerGroupProps, type LedgerRootProps, type LedgerTierProps, Link, type LinkProps, McpServerIcon, Menubar, type MenubarContentProps, type MenubarMenuProps, type MenubarRootProps, type MenubarTriggerProps, Message, MessageList, type MessageListProps, type MessageProps, type MessageRole, Meter, type MeterProps, type MeterProvenance, type MeterTone, type Mode, MultiSelect, type MultiSelectProps, NavigationMenu, type NavigationMenuContentProps, type NavigationMenuItemProps, type NavigationMenuLinkProps, type NavigationMenuListProps, type NavigationMenuRootProps, type NavigationMenuTriggerProps, type NavigationMenuViewportProps, NumberField, type NumberFieldProps, OTPField, type OTPFieldProps, OVERLAY_SIDE_OFFSET, PageShell, type PageShellProps, type PageWidth, Pagination, type PaginationEntry, type PaginationProps, Panel, PanelHeader, type PanelHeaderProps, type PanelProps, PasswordInput, type PasswordInputProps, type PersistedPreferences, Plussie, type PlussieExpression, type PlussieProps, Popover, type PopoverCloseProps, type PopoverContentProps, type PopoverDescriptionProps, type PopoverRootProps, type PopoverTitleProps, type PopoverTriggerProps, type PrepaintDefaults, type PrepaintOptions, Progress, type ProgressProps, Radio, RadioGroup, type RadioGroupProps, type RadioProps, Rating, type RatingProps, type RatingSize, type ResolvedMode, Row, type RowProps, ScrollArea, type ScrollAreaOrientation, type ScrollAreaProps, type ScrollEdges, ScrollableTabsList, type ScrollableTabsListProps, ScrubInput, type ScrubInputProps, SeamCell, type SeamCellProps, SeamGrid, type SeamGridProps, type SeamGround, SeamList, type SeamListProps, SearchInput, type SearchInputProps, SectionHeader, type SectionHeaderProps, SegmentedControl, type SegmentedControlItem, type SegmentedControlProps, type SegmentedControlSize, Select, type SelectOption, type SelectProps, Separator, type SeparatorProps, Sheet, type SheetCloseProps, type SheetContentProps, type SheetDescriptionProps, type SheetFooterProps, type SheetRootProps, type SheetTitleProps, type SheetTriggerProps, Sidebar, type SidebarItemProps, type SidebarRailProps, type SidebarRootProps, type SidebarSectionProps, Skeleton, type SkeletonProps, SkillIcon, Slider, type SliderProps, type SpaceStep, Sparkline, type SparklineProps, Spinner, type SpinnerProps, Stack, type StackAlign, StackIcon, type StackJustify, type StackProps, StacksMatrixIcon, Stat, type StatProps, type StatTone, StatusBar, type StatusBarGroupProps, type StatusBarItemProps, type StatusBarProminence, type StatusBarProps, type StatusBarTone, StatusDot, type StatusDotProps, type StatusTone, Stepper, type StepperProps, type StepperState, type StepperStep, Switch, type SwitchProps, TAB_FADE_PX, TREE_GUIDE_GLYPHS, Table, type TableCaptionProps, type TableCellProps, type TableGroupRowProps, type TableHeadProps, type TableRootProps, type TableRowProps, TableScrollRegion, type TableScrollRegionProps, type TableSectionProps, Tabs, type TabsListProps, type TabsPanelProps, type TabsRootProps, type TabsTabProps, TagsInput, type TagsInputProps, TerminalFrame, type TerminalFrameLine, type TerminalFrameProps, type TerminalLine, type TerminalLineTone, type TerminalScript, type TerminalStep, Textarea, type TextareaProps, type ThemeContextValue, type ThemeName, ThemeProvider, type ThemeProviderProps, Timeline, type TimelineContentProps, type TimelineItemProps, type TimelineMarkerProps, type TimelineRootProps, TitleBar, type TitleBarProps, Toast, type ToastManager, type ToastOptions, type ToastProviderProps, type ToastTone, type ToastViewportProps, Toggle, ToggleGroup, type ToggleGroupProps, type ToggleProps, Toolbar, type ToolbarButtonProps, type ToolbarGroupProps, type ToolbarRootProps, type ToolbarSeparatorProps, Tooltip, type TooltipContentProps, type TooltipProviderProps, type TooltipRootProps, type TooltipTriggerProps, Tree, type TreeGuide, type TreeItem, type TreeProps, type TreeRow, type TreeVisibility, TreeVisibilityToggle, type TreeVisibilityToggleProps, TwoStepButton, type TwoStepButtonProps, type TwoStepTone, type UploadFile, type UploadStatus, UsageChart, type UsageChartPoint, type UsageChartProps, type UsageChartTone, agentColor, agentColorStyle, bareControlClasses, buttonVariants, chipVariants, computeScrollEdges, controlClasses, controlGroupFocusClasses, controlSurface, controlVariants, edgeFadeMask, envReference, flattenTree, itemVariants, linkVariants, menuItemClasses, menuLabelClasses, menuPopupClasses, menuSeparatorClasses, overlayDescriptionClasses, overlayFooterClasses, overlayModalTransitionClasses, overlayPopupTransitionClasses, overlayPositionerClasses, overlaySurfaceClasses, overlayTextClasses, overlayTitleClasses, paginationRange, parseEnvReference, partitionFiles, prepaintScript, rowVariants, scrimClasses, useControlHeight, useCuePortalProps, useDensity, useSidebar, useTheme, useToast };
package/dist/index.js CHANGED
@@ -66,9 +66,13 @@ import { TagsInput } from "./forms/tags-input.js";
66
66
  import { Textarea } from "./forms/textarea.js";
67
67
  import { ToggleGroup } from "./forms/toggle-group.js";
68
68
  import { Toggle } from "./forms/toggle.js";
69
+ import { AudienceIcon, CatalogueIcon, ChannelBetaIcon, ChannelReleasedIcon, CliToolIcon, FolderIcon, McpServerIcon, SkillIcon, StackIcon, StacksMatrixIcon } from "./icons/containers.js";
69
70
  import { AppWindowFrame } from "./instruments/app-window-frame.js";
70
71
  import { CopyButton } from "./instruments/copy-button.js";
72
+ import { DataRow } from "./instruments/data-row.js";
73
+ import { DataTree } from "./instruments/data-tree.js";
71
74
  import { GroupBar } from "./instruments/group-bar.js";
75
+ import { Ledger } from "./instruments/ledger.js";
72
76
  import { Meter } from "./instruments/meter.js";
73
77
  import { Progress } from "./instruments/progress.js";
74
78
  import { SeamCell, SeamGrid } from "./instruments/seam-grid.js";
@@ -107,4 +111,4 @@ import { Kbd } from "./primitives/kbd.js";
107
111
  import { Skeleton } from "./primitives/skeleton.js";
108
112
  import { useControlHeight, useDensity } from "./system/use-density.js";
109
113
  import { useTheme } from "./system/use-theme.js";
110
- export { AGENT_COLOR_PROPERTY, AGENT_HUES, AGENT_ROOT_COLOR, Accordion, AgentPile, AlertDialog, AppBar, AppShell, AppWindowFrame, AskBox, Autocomplete, Avatar, AvatarGroup, Breadcrumb, Button, ButtonGroup, Card, Checkbox, CheckboxGroup, Chip, Collapsible, Combobox, CommandPalette, Composer, Container, ContextMenu, CopyButton, CueLogotype, CueMark, CuePortalFrame, DEFAULT_STORAGE_KEY, DelegationCard, Density, DescriptionList, Dialog, Disclosure, Drawer, DropdownMenu, EmptyState, EnvVarInput, Eyebrow, Field, FieldDescription, FieldError, FieldLabel, FileUpload, Footer, Grid, GroupBar, HoverCard, IconButton, InfoTip, Input, InputGroup, Item, Kbd, Link, Menubar, Message, MessageList, Meter, MultiSelect, NavigationMenu, NumberField, OTPField, OVERLAY_SIDE_OFFSET, PageShell, Pagination, Panel, PanelHeader, PasswordInput, Plussie, Popover, Progress, Radio, RadioGroup, Rating, Row, ScrollArea, ScrollableTabsList, ScrubInput, SeamCell, SeamGrid, SeamList, SearchInput, SectionHeader, SegmentedControl, Select, Separator, Sheet, Sidebar, Skeleton, Slider, Sparkline, Spinner, Stack, Stat, StatusBar, StatusDot, Stepper, Switch, TAB_FADE_PX, TREE_GUIDE_GLYPHS, Table, TableScrollRegion, Tabs, TagsInput, TerminalFrame, Textarea, ThemeProvider, Timeline, TitleBar, Toast, Toggle, ToggleGroup, Toolbar, Tooltip, Tree, TreeVisibilityToggle, TwoStepButton, UsageChart, agentColor, agentColorStyle, bareControlClasses, buttonVariants, chipVariants, computeScrollEdges, controlClasses, controlGroupFocusClasses, controlSurface, controlVariants, edgeFadeMask, envReference, flattenTree, itemVariants, linkVariants, menuItemClasses, menuLabelClasses, menuPopupClasses, menuSeparatorClasses, overlayDescriptionClasses, overlayFooterClasses, overlayModalTransitionClasses, overlayPopupTransitionClasses, overlayPositionerClasses, overlaySurfaceClasses, overlayTextClasses, overlayTitleClasses, paginationRange, parseEnvReference, partitionFiles, prepaintScript, rowVariants, scrimClasses, useControlHeight, useCuePortalProps, useDensity, useSidebar, useTheme, useToast };
114
+ export { AGENT_COLOR_PROPERTY, AGENT_HUES, AGENT_ROOT_COLOR, Accordion, AgentPile, AlertDialog, AppBar, AppShell, AppWindowFrame, AskBox, AudienceIcon, Autocomplete, Avatar, AvatarGroup, Breadcrumb, Button, ButtonGroup, Card, CatalogueIcon, ChannelBetaIcon, ChannelReleasedIcon, Checkbox, CheckboxGroup, Chip, CliToolIcon, Collapsible, Combobox, CommandPalette, Composer, Container, ContextMenu, CopyButton, CueLogotype, CueMark, CuePortalFrame, DEFAULT_STORAGE_KEY, DataRow, DataTree, DelegationCard, Density, DescriptionList, Dialog, Disclosure, Drawer, DropdownMenu, EmptyState, EnvVarInput, Eyebrow, Field, FieldDescription, FieldError, FieldLabel, FileUpload, FolderIcon, Footer, Grid, GroupBar, HoverCard, IconButton, InfoTip, Input, InputGroup, Item, Kbd, Ledger, Link, McpServerIcon, Menubar, Message, MessageList, Meter, MultiSelect, NavigationMenu, NumberField, OTPField, OVERLAY_SIDE_OFFSET, PageShell, Pagination, Panel, PanelHeader, PasswordInput, Plussie, Popover, Progress, Radio, RadioGroup, Rating, Row, ScrollArea, ScrollableTabsList, ScrubInput, SeamCell, SeamGrid, SeamList, SearchInput, SectionHeader, SegmentedControl, Select, Separator, Sheet, Sidebar, Skeleton, SkillIcon, Slider, Sparkline, Spinner, Stack, StackIcon, StacksMatrixIcon, Stat, StatusBar, StatusDot, Stepper, Switch, TAB_FADE_PX, TREE_GUIDE_GLYPHS, Table, TableScrollRegion, Tabs, TagsInput, TerminalFrame, Textarea, ThemeProvider, Timeline, TitleBar, Toast, Toggle, ToggleGroup, Toolbar, Tooltip, Tree, TreeVisibilityToggle, TwoStepButton, UsageChart, agentColor, agentColorStyle, bareControlClasses, buttonVariants, chipVariants, computeScrollEdges, controlClasses, controlGroupFocusClasses, controlSurface, controlVariants, edgeFadeMask, envReference, flattenTree, itemVariants, linkVariants, menuItemClasses, menuLabelClasses, menuPopupClasses, menuSeparatorClasses, overlayDescriptionClasses, overlayFooterClasses, overlayModalTransitionClasses, overlayPopupTransitionClasses, overlayPositionerClasses, overlaySurfaceClasses, overlayTextClasses, overlayTitleClasses, paginationRange, parseEnvReference, partitionFiles, prepaintScript, rowVariants, scrimClasses, useControlHeight, useCuePortalProps, useDensity, useSidebar, useTheme, useToast };
@@ -0,0 +1,118 @@
1
+ import { cva } from "../lib/cva.js";
2
+ //#region src/instruments/_data-row.ts
3
+ /**
4
+ * The row recipe, in the three shapes the surfaces need.
5
+ *
6
+ * `layout` — `grid` is the row proper, whose children are its columns; `flex`
7
+ * is the tree row, which puts a disclosure chevron outside the grid so the
8
+ * chevron is not a column the caller has to count (see the column-count rule in
9
+ * {@link DATA_ROW_COLUMNS}).
10
+ *
11
+ * `indent` — the tree's depth step, folded into the row's own left padding
12
+ * rather than applied to an inner wrapper, because the guides
13
+ * ({@link DataTreeProps.guides}) are painted on the row's background box and
14
+ * have to start where the padding does.
15
+ *
16
+ * `interactive` — the row responds to a pointer and to the keyboard. The focus
17
+ * ring is *inset* (`-outline-offset-2`), the same ruling as `Row`: these rows
18
+ * live in clipped panes, where an outset ring on the first or last row is cut
19
+ * off by the pane's own rim. `outline-solid` rides along with every
20
+ * `outline-<n>` in this file because Tailwind v4 leaves `--tw-outline-style`
21
+ * unset otherwise and the ring never paints — `test/focus-ring.test.ts` is what
22
+ * keeps the pair together.
23
+ *
24
+ * The selected tint is in the base rather than in `interactive`: a static row in
25
+ * a selected group still reads as selected, and the attribute is the contract
26
+ * either way. It is declared after the hover wash on purpose — Tailwind emits
27
+ * `data-*` variants after `hover:`, so a selected row keeps its accent tint
28
+ * while the pointer is over it instead of flickering back to the hover grey.
29
+ *
30
+ * @example
31
+ * cn(dataRowVariants({ interactive: true }), className)
32
+ */
33
+ const dataRowVariants = cva([
34
+ "group/data-row w-full items-center gap-(--cue-space-3) py-(--cue-pad-row-y)",
35
+ "font-mono text-(length:--cue-text-ui) text-fg",
36
+ "border-t border-t-(--cue-hair) first:border-t-0",
37
+ "data-[selected]:bg-accent-soft data-[disabled]:pointer-events-none data-[disabled]:opacity-40"
38
+ ].join(" "), {
39
+ variants: {
40
+ layout: {
41
+ grid: "grid [grid-template-columns:var(--cue-data-row-cols,1fr_auto)]",
42
+ flex: "flex"
43
+ },
44
+ indent: {
45
+ true: "pr-(--cue-pad-row-x) pl-[calc(var(--cue-pad-row-x)_+_var(--depth)_*_var(--cue-data-tree-indent,1.25rem))]",
46
+ false: "px-(--cue-pad-row-x)"
47
+ },
48
+ interactive: {
49
+ true: "cursor-pointer outline-none hover:bg-(--cue-row-hover) focus-visible:outline-2 focus-visible:outline-solid focus-visible:-outline-offset-2 focus-visible:outline-accent",
50
+ false: ""
51
+ }
52
+ },
53
+ defaultVariants: {
54
+ layout: "grid",
55
+ indent: false,
56
+ interactive: false
57
+ }
58
+ });
59
+ /**
60
+ * Whether a click on a row means "open this row", and act on it if it does.
61
+ *
62
+ * Four cases a naive `onClick={open}` gets wrong, and this is the whole reason
63
+ * the row is not simply a `<button>`:
64
+ *
65
+ * - **A control inside the row.** The action cluster, a menu trigger, a
66
+ * checkbox — pressing one is not the same gesture as picking the row. Anything
67
+ * under a `[data-stop]` ancestor is left entirely alone, which is why
68
+ * `DataRow.Actions` stamps that attribute on itself.
69
+ * - **A link inside the row.** A plain click on it should open the row's own
70
+ * surface (the drawer, the detail pane), so the anchor's navigation is
71
+ * suppressed — but ⌘/Ctrl/Shift/Alt-click must still open a tab, which is the
72
+ * whole value of having shipped a real `<a href>` in the first place.
73
+ * - **A secondary button.** Only the primary button activates; the middle
74
+ * button belongs to the browser.
75
+ * - **An already-handled event.** A caller's own `onClick` that called
76
+ * `preventDefault()` has said no.
77
+ *
78
+ * @param event The row's own click event.
79
+ * @param activate What "open this row" means to the surface.
80
+ * @example
81
+ * onClick={(event) => activateRowFromClick(event, () => open(row))}
82
+ */
83
+ function activateRowFromClick(event, activate) {
84
+ if (event.defaultPrevented || event.button !== 0) return;
85
+ const target = event.target;
86
+ if (target === null) return;
87
+ if (target.closest("[data-stop]") !== null) return;
88
+ if (target.closest("a[href]") !== null) {
89
+ if (event.metaKey || event.ctrlKey || event.shiftKey || event.altKey) return;
90
+ event.preventDefault();
91
+ }
92
+ activate();
93
+ }
94
+ /**
95
+ * Whether a key press on a row means "open this row", and act on it if it does.
96
+ *
97
+ * Guarded on `event.target === event.currentTarget` so a control inside the row
98
+ * keeps its own keys: without it a rename field on a row could never contain a
99
+ * space, and every action button's Enter would also open the row behind it.
100
+ *
101
+ * Space is prevented rather than merely handled, because the browser's default
102
+ * for Space on a focused non-control is to scroll the page — a row that opened
103
+ * a drawer *and* jumped the list a screenful would read as a bug.
104
+ *
105
+ * @param event The row's own keydown event.
106
+ * @param activate What "open this row" means to the surface.
107
+ * @example
108
+ * onKeyDown={(event) => activateRowFromKeyDown(event, () => open(row))}
109
+ */
110
+ function activateRowFromKeyDown(event, activate) {
111
+ if (event.defaultPrevented) return;
112
+ if (event.target !== event.currentTarget) return;
113
+ if (event.key !== "Enter" && event.key !== " ") return;
114
+ event.preventDefault();
115
+ activate();
116
+ }
117
+ //#endregion
118
+ export { activateRowFromClick, activateRowFromKeyDown, dataRowVariants };
@@ -0,0 +1,94 @@
1
+ import * as React from "react";
2
+ //#region src/instruments/data-row.d.ts
3
+ /** What an interactive row discloses, when it discloses something. */
4
+ interface DataRowDisclosure {
5
+ /** Whether the surface this row opens is currently showing. */
6
+ expanded: boolean;
7
+ /**
8
+ * The `id` of the element the row opens, when that element is in the DOM.
9
+ *
10
+ * Omit it while the surface is closed and unrendered: `aria-controls`
11
+ * pointing at an id that does not exist is worse than no `aria-controls`.
12
+ */
13
+ controls?: string;
14
+ }
15
+ interface DataRowRootProps extends React.ComponentPropsWithoutRef<"div"> {
16
+ /**
17
+ * The row responds to a pointer and to the keyboard: hover wash, `cursor`,
18
+ * an inset focus ring and a tab stop. Defaults to `false`.
19
+ */
20
+ interactive?: boolean;
21
+ /**
22
+ * Draw the row as picked out of the list. Defaults to `false`.
23
+ *
24
+ * Sets `data-selected`, which is also what the hover-revealed action track and
25
+ * the accent tint key off — so a `<tr data-selected>` in the table idiom gets
26
+ * exactly the same treatment without going through this component.
27
+ */
28
+ selected?: boolean;
29
+ /** Grey the row out and stop it responding to anything. Defaults to `false`. */
30
+ disabled?: boolean;
31
+ /** What "open this row" means — a drawer, a detail pane, a route. */
32
+ onActivate?: () => void;
33
+ /**
34
+ * Expose the row as a disclosure: `data-expanded` always, `aria-expanded`
35
+ * when the row has a `role` that can carry it, and `aria-controls` when the
36
+ * disclosed element is on the page.
37
+ *
38
+ * **`aria-expanded` is gated on the role, because on a bare `<div>` it is
39
+ * worse than nothing.** A role-less div maps to `generic`, which supports
40
+ * only the global attributes — so the state is dropped outright by Blink,
41
+ * WebKit and Gecko alike (verified through Chromium's own accessibility
42
+ * tree), announces nothing, and adds a critical `aria-allowed-attr` finding
43
+ * to any axe run over the console that used it. `role` passes straight
44
+ * through as a div prop, so a row that genuinely is a disclosure says which
45
+ * kind it is — `role="button"` for a row that opens a drawer, `role="row"`
46
+ * inside a grid — and gets the attribute with it. Everything else gets
47
+ * `data-expanded`, which styles and tests exactly as well and promises
48
+ * nothing to a screen reader.
49
+ *
50
+ * The row is still not given a widget role on its own account: a
51
+ * `role="button"` row could not legally hold the buttons and links these rows
52
+ * exist to contain, and that judgement belongs to the caller who knows what
53
+ * their row does. Where the disclosure has to be bulletproof for assistive
54
+ * technology, reach for `DataTree` (real `treeitem` expansion) or a
55
+ * `Table.GroupRow` with a real toggle button in it.
56
+ */
57
+ disclosure?: DataRowDisclosure;
58
+ }
59
+ /** The native `<span>` surface every row slot shares, plus `className`. */
60
+ type DataRowSlotProps = React.ComponentPropsWithoutRef<"span">;
61
+ /**
62
+ * The dense interactive row, as one anatomy three surfaces share.
63
+ *
64
+ * `Ledger`, a grouped `Table` and `DataTree` are three drawings of the same row
65
+ * model, and this is the model: a marker, a label, a description, tags, a
66
+ * figure, and a trailing action cluster that is only there when you are looking
67
+ * at the row. Composing them yourself — rather than passing a `columns` array —
68
+ * is what keeps the primitive domain-neutral: a corpus of skills and a rig of
69
+ * fixtures need the same six slots and completely different columns.
70
+ *
71
+ * The slots are thin: each is a `<span>` with a `data-slot`, the type and
72
+ * truncation rule for its column, and nothing else. They may be used inside a
73
+ * `DataTree` row and inside a `Table.Cell` too — `Table.Row` carries the same
74
+ * `group/data-row` name, so `DataRow.Actions` reveals in the table idiom
75
+ * without a second implementation.
76
+ *
77
+ * @example
78
+ * <DataRow.Root interactive onActivate={() => open(skill)}>
79
+ * <DataRow.Marker><StatusDot tone="ok" /></DataRow.Marker>
80
+ * <DataRow.Label>{skill.name}</DataRow.Label>
81
+ * <DataRow.Meta>{skill.installs}</DataRow.Meta>
82
+ * </DataRow.Root>
83
+ */
84
+ declare const DataRow: {
85
+ Root: React.ForwardRefExoticComponent<DataRowRootProps & React.RefAttributes<HTMLDivElement>>;
86
+ Marker: React.ForwardRefExoticComponent<Omit<React.DetailedHTMLProps<React.HTMLAttributes<HTMLSpanElement>, HTMLSpanElement>, "ref"> & React.RefAttributes<HTMLSpanElement>>;
87
+ Label: React.ForwardRefExoticComponent<Omit<React.DetailedHTMLProps<React.HTMLAttributes<HTMLSpanElement>, HTMLSpanElement>, "ref"> & React.RefAttributes<HTMLSpanElement>>;
88
+ Description: React.ForwardRefExoticComponent<Omit<React.DetailedHTMLProps<React.HTMLAttributes<HTMLSpanElement>, HTMLSpanElement>, "ref"> & React.RefAttributes<HTMLSpanElement>>;
89
+ Tags: React.ForwardRefExoticComponent<Omit<React.DetailedHTMLProps<React.HTMLAttributes<HTMLSpanElement>, HTMLSpanElement>, "ref"> & React.RefAttributes<HTMLSpanElement>>;
90
+ Meta: React.ForwardRefExoticComponent<Omit<React.DetailedHTMLProps<React.HTMLAttributes<HTMLSpanElement>, HTMLSpanElement>, "ref"> & React.RefAttributes<HTMLSpanElement>>;
91
+ Actions: React.ForwardRefExoticComponent<Omit<React.DetailedHTMLProps<React.HTMLAttributes<HTMLSpanElement>, HTMLSpanElement>, "ref"> & React.RefAttributes<HTMLSpanElement>>;
92
+ };
93
+ //#endregion
94
+ export { DataRow, DataRowDisclosure, DataRowRootProps, DataRowSlotProps };