@cueplusplus/ui 0.15.0 → 0.17.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 (508) hide show
  1. package/CHANGELOG.md +1083 -0
  2. package/README.md +26 -0
  3. package/dist/agent-runtime/tool-call-card.js +7 -3
  4. package/dist/brand/_chassis.d.ts +1 -1
  5. package/dist/brand/cue-mark.d.ts +1 -1
  6. package/dist/brand/cue-mark.js +1 -1
  7. package/dist/charts/ramps.js +1 -1
  8. package/dist/chat/agent-pile.js +2 -1
  9. package/dist/chat/ask-box.js +4 -3
  10. package/dist/chat/delegation-card.js +3 -2
  11. package/dist/chat/message-list.js +4 -2
  12. package/dist/chat/message.js +17 -7
  13. package/dist/chrome/_edge-scroller.js +2 -1
  14. package/dist/chrome/_status-bar.js +9 -3
  15. package/dist/chrome/_tabs-scroll.d.ts +17 -1
  16. package/dist/chrome/_tabs-scroll.js +20 -3
  17. package/dist/chrome/app-bar.js +10 -3
  18. package/dist/chrome/app-shell.js +2 -1
  19. package/dist/chrome/band.d.ts +18 -12
  20. package/dist/chrome/band.js +19 -31
  21. package/dist/chrome/eyebrow.d.ts +13 -5
  22. package/dist/chrome/eyebrow.js +18 -7
  23. package/dist/chrome/footer.d.ts +5 -0
  24. package/dist/chrome/footer.js +14 -3
  25. package/dist/chrome/navigation-menu.js +4 -2
  26. package/dist/chrome/page-shell.js +8 -5
  27. package/dist/chrome/panel.d.ts +5 -2
  28. package/dist/chrome/panel.js +9 -4
  29. package/dist/chrome/row.js +6 -3
  30. package/dist/chrome/scroll-area.js +2 -1
  31. package/dist/chrome/section-header.js +13 -4
  32. package/dist/chrome/segmented-control.js +12 -3
  33. package/dist/chrome/status-bar.js +2 -1
  34. package/dist/chrome/tabs.js +11 -3
  35. package/dist/chrome/toolbar.js +2 -1
  36. package/dist/chrome/tree.js +3 -2
  37. package/dist/color/_thumb.js +9 -3
  38. package/dist/color/color-area.js +1 -1
  39. package/dist/color/color-field.d.ts +2 -1
  40. package/dist/color/color-picker.d.ts +2 -1
  41. package/dist/color/color-swatch.js +1 -1
  42. package/dist/configurator/_overrides.js +13 -4
  43. package/dist/configurator/configurator.js +4 -1
  44. package/dist/configurator/export-dialog.js +5 -2
  45. package/dist/configurator/panel-sections.js +6 -2
  46. package/dist/configurator/token-editor.js +4 -1
  47. package/dist/date/calendar.js +12 -8
  48. package/dist/date/date-field.d.ts +2 -1
  49. package/dist/date/date-picker.d.ts +2 -1
  50. package/dist/date/date-range-picker.d.ts +2 -1
  51. package/dist/date/time-field.d.ts +2 -1
  52. package/dist/dmx/channel-matrix.js +3 -2
  53. package/dist/dmx/dmx-bar.js +1 -1
  54. package/dist/dmx/dmx-strip.js +1 -1
  55. package/dist/dmx/universe-grid.js +3 -2
  56. package/dist/elements/activity-graph.js +3 -3
  57. package/dist/elements/agent-card.js +3 -3
  58. package/dist/elements/approval-card.js +3 -3
  59. package/dist/elements/artifact-card.js +2 -2
  60. package/dist/elements/background-inbox.js +2 -2
  61. package/dist/elements/canvas-split.js +2 -2
  62. package/dist/elements/chart.js +1 -1
  63. package/dist/elements/chat-panel.js +2 -2
  64. package/dist/elements/checkpoint-history.js +2 -2
  65. package/dist/elements/clamp.js +2 -1
  66. package/dist/elements/code-diff.js +1 -1
  67. package/dist/elements/code-runner.js +1 -1
  68. package/dist/elements/command-palette.js +6 -5
  69. package/dist/elements/comparison-card.js +2 -2
  70. package/dist/elements/composer.js +9 -8
  71. package/dist/elements/computer-use.js +1 -1
  72. package/dist/elements/confidence-marker.js +2 -1
  73. package/dist/elements/connection-state.js +1 -1
  74. package/dist/elements/context-breakdown.js +1 -1
  75. package/dist/elements/context-usage.js +1 -1
  76. package/dist/elements/conversation-search.js +4 -3
  77. package/dist/elements/cost-meter.js +1 -1
  78. package/dist/elements/data-table.js +2 -2
  79. package/dist/elements/day-separator.js +1 -1
  80. package/dist/elements/diagram.js +1 -1
  81. package/dist/elements/document-reference.js +3 -3
  82. package/dist/elements/draft-restore.js +1 -1
  83. package/dist/elements/edit-message.js +4 -3
  84. package/dist/elements/elements.css +26 -5
  85. package/dist/elements/elicitation-form.js +3 -3
  86. package/dist/elements/empty-state.js +2 -1
  87. package/dist/elements/error-state.js +1 -1
  88. package/dist/elements/feedback-dialog.js +4 -3
  89. package/dist/elements/file-tree.js +2 -2
  90. package/dist/elements/flow-graph.js +2 -2
  91. package/dist/elements/guardrail-notice.js +3 -3
  92. package/dist/elements/image-generation.js +1 -1
  93. package/dist/elements/inline-citation.js +3 -3
  94. package/dist/elements/job-progress.js +3 -3
  95. package/dist/elements/launcher-bubble.js +2 -2
  96. package/dist/elements/loading-state.js +1 -1
  97. package/dist/elements/map-answer.js +3 -2
  98. package/dist/elements/markdown.js +5 -4
  99. package/dist/elements/math-block.js +1 -1
  100. package/dist/elements/mcp-server-panel.js +3 -3
  101. package/dist/elements/message-attachment.js +4 -4
  102. package/dist/elements/message-pair.js +1 -1
  103. package/dist/elements/message-queue.js +2 -2
  104. package/dist/elements/mobile-composer.js +4 -3
  105. package/dist/elements/model-picker.js +3 -3
  106. package/dist/elements/onboarding.js +2 -2
  107. package/dist/elements/permission-grant.js +2 -2
  108. package/dist/elements/permission-scopes.js +5 -4
  109. package/dist/elements/prompt-library.js +7 -6
  110. package/dist/elements/queue-dock.js +4 -3
  111. package/dist/elements/quota-banner.js +1 -1
  112. package/dist/elements/quote-reply.js +1 -1
  113. package/dist/elements/read-aloud.js +2 -2
  114. package/dist/elements/reasoning-panel.js +2 -1
  115. package/dist/elements/recommendation-card.d.ts +1 -1
  116. package/dist/elements/recommendation-card.js +2 -2
  117. package/dist/elements/regenerate-menu.js +2 -2
  118. package/dist/elements/research-report.js +1 -1
  119. package/dist/elements/retrieval-chunks.js +1 -1
  120. package/dist/elements/revert-dock.js +5 -4
  121. package/dist/elements/reviewable-diff.js +1 -1
  122. package/dist/elements/schedule-card.js +3 -3
  123. package/dist/elements/score-breakdown.js +1 -1
  124. package/dist/elements/scroll-anchor.js +2 -2
  125. package/dist/elements/settings-panel.js +3 -2
  126. package/dist/elements/shared-conversation.js +2 -2
  127. package/dist/elements/sources.js +4 -3
  128. package/dist/elements/speaker-identity.js +1 -1
  129. package/dist/elements/spec-sheet.js +1 -1
  130. package/dist/elements/streaming-text.js +1 -1
  131. package/dist/elements/subagent-list.js +2 -2
  132. package/dist/elements/suggestions.js +1 -1
  133. package/dist/elements/surfaces.d.ts +1 -1
  134. package/dist/elements/surfaces.js +2 -1
  135. package/dist/elements/tail-status.js +1 -1
  136. package/dist/elements/terminal-block.js +1 -1
  137. package/dist/elements/thread-list.js +1 -1
  138. package/dist/elements/thread-search.js +5 -4
  139. package/dist/elements/timeline.js +1 -1
  140. package/dist/elements/todo-list.js +2 -2
  141. package/dist/elements/tool-call.js +4 -3
  142. package/dist/elements/tool-error.js +2 -2
  143. package/dist/elements/tool-group.js +1 -1
  144. package/dist/elements/tool-timeline.js +4 -3
  145. package/dist/elements/trace-waterfall.js +1 -1
  146. package/dist/elements/verdict-row.js +2 -2
  147. package/dist/elements/voice-conversation.js +3 -2
  148. package/dist/elements/web-preview.js +1 -1
  149. package/dist/elements/web-search.js +2 -2
  150. package/dist/elements/work-collapse.js +2 -1
  151. package/dist/flow/node-card.js +3 -2
  152. package/dist/flow/use-flow-theme.js +2 -1
  153. package/dist/forms/_chassis-size.d.ts +22 -0
  154. package/dist/forms/_chassis.d.ts +28 -15
  155. package/dist/forms/_chassis.js +34 -8
  156. package/dist/forms/_listbox.js +8 -5
  157. package/dist/forms/autocomplete.d.ts +2 -1
  158. package/dist/forms/checkbox.js +8 -2
  159. package/dist/forms/combobox.d.ts +2 -1
  160. package/dist/forms/env-var-input.d.ts +2 -1
  161. package/dist/forms/env-var-input.js +3 -2
  162. package/dist/forms/field.d.ts +2 -1
  163. package/dist/forms/field.js +15 -4
  164. package/dist/forms/file-upload.js +3 -2
  165. package/dist/forms/index.d.ts +2 -1
  166. package/dist/forms/input-group.d.ts +2 -1
  167. package/dist/forms/input.d.ts +2 -1
  168. package/dist/forms/multi-select.d.ts +2 -1
  169. package/dist/forms/number-field.js +2 -1
  170. package/dist/forms/otp-field.d.ts +2 -1
  171. package/dist/forms/password-input.d.ts +2 -1
  172. package/dist/forms/password-input.js +4 -2
  173. package/dist/forms/radio-group.js +6 -2
  174. package/dist/forms/rating.js +2 -1
  175. package/dist/forms/scrub-input.d.ts +2 -1
  176. package/dist/forms/scrub-input.js +2 -1
  177. package/dist/forms/search-input.d.ts +2 -1
  178. package/dist/forms/search-input.js +2 -1
  179. package/dist/forms/select.d.ts +2 -1
  180. package/dist/forms/select.js +6 -2
  181. package/dist/forms/slider.js +6 -2
  182. package/dist/forms/switch.js +6 -2
  183. package/dist/forms/tags-input.d.ts +2 -1
  184. package/dist/forms/textarea.js +2 -1
  185. package/dist/forms/toggle-group.d.ts +1 -1
  186. package/dist/forms/toggle.d.ts +1 -1
  187. package/dist/forms/toggle.js +3 -1
  188. package/dist/index.d.ts +4 -3
  189. package/dist/index.js +2 -2
  190. package/dist/instruments/_data-row.js +2 -1
  191. package/dist/instruments/app-window-frame.js +1 -1
  192. package/dist/instruments/code-block.js +8 -2
  193. package/dist/instruments/group-bar.js +1 -1
  194. package/dist/instruments/ledger.js +6 -2
  195. package/dist/instruments/log-viewer.js +5 -3
  196. package/dist/instruments/progress.js +5 -2
  197. package/dist/instruments/seam-grid.js +5 -3
  198. package/dist/instruments/stat.js +10 -3
  199. package/dist/instruments/table.js +28 -10
  200. package/dist/instruments/terminal-frame.js +4 -2
  201. package/dist/instruments/usage-chart.js +1 -1
  202. package/dist/layout/_collapse.js +6 -1
  203. package/dist/layout/bento.js +7 -4
  204. package/dist/layout/breadcrumb.js +7 -3
  205. package/dist/layout/card.js +14 -6
  206. package/dist/layout/carousel.js +3 -2
  207. package/dist/layout/collapsible.js +5 -1
  208. package/dist/layout/container.js +2 -1
  209. package/dist/layout/description-list.js +4 -1
  210. package/dist/layout/frames.js +11 -5
  211. package/dist/layout/item.js +3 -2
  212. package/dist/layout/link.d.ts +16 -0
  213. package/dist/layout/link.js +22 -3
  214. package/dist/layout/pagination.js +2 -1
  215. package/dist/layout/preview.d.ts +32 -12
  216. package/dist/layout/preview.js +149 -40
  217. package/dist/layout/resizable.js +2 -1
  218. package/dist/layout/sidebar.js +11 -3
  219. package/dist/layout/stepper.js +6 -2
  220. package/dist/lib/cn.js +29 -2
  221. package/dist/midi/musical-time-input.d.ts +2 -1
  222. package/dist/midi/piano-keyboard.js +3 -2
  223. package/dist/midi/spectrum-visualizer.js +1 -1
  224. package/dist/midi/threshold-rail.js +2 -1
  225. package/dist/midi/timeline-ruler.js +1 -1
  226. package/dist/overlays/_surface.d.ts +72 -12
  227. package/dist/overlays/_surface.js +86 -12
  228. package/dist/overlays/command-palette.js +9 -5
  229. package/dist/overlays/dialog.d.ts +5 -0
  230. package/dist/overlays/dialog.js +6 -1
  231. package/dist/overlays/info-tip.js +2 -1
  232. package/dist/overlays/menubar.js +3 -1
  233. package/dist/overlays/popover.js +2 -1
  234. package/dist/overlays/toast.js +6 -2
  235. package/dist/overlays/tooltip.js +4 -1
  236. package/dist/primitives/button.d.ts +15 -0
  237. package/dist/primitives/button.js +40 -10
  238. package/dist/primitives/chip.d.ts +20 -2
  239. package/dist/primitives/chip.js +39 -17
  240. package/dist/primitives/kbd.d.ts +6 -0
  241. package/dist/primitives/kbd.js +10 -1
  242. package/dist/primitives/skeleton.js +1 -1
  243. package/dist/system/_focus-ring-field.js +29 -0
  244. package/dist/system/_focus-ring.js +125 -0
  245. package/dist/system/_paint-elevation.js +9 -0
  246. package/dist/system/_paint-glass.js +46 -0
  247. package/dist/system/_paint-glow.js +51 -0
  248. package/dist/system/_paint-ground-pattern.js +30 -0
  249. package/dist/system/_paint-rest-shade.js +32 -0
  250. package/dist/system/_paint-rim.js +59 -0
  251. package/dist/system/_paint-stroke-sunken.js +19 -0
  252. package/dist/system/_paint-stroke-surface-1.js +19 -0
  253. package/dist/system/_paint-stroke-surface-2.js +40 -0
  254. package/dist/system/_paint-texture.js +56 -0
  255. package/dist/system/_style-app-bar.js +65 -0
  256. package/dist/system/_style-band.js +57 -0
  257. package/dist/system/_style-body-leading.js +21 -0
  258. package/dist/system/_style-body-size.js +30 -0
  259. package/dist/system/_style-body-weight.js +24 -0
  260. package/dist/system/_style-body.js +27 -0
  261. package/dist/system/_style-caption.js +19 -0
  262. package/dist/system/_style-card-pad.js +43 -0
  263. package/dist/system/_style-check.js +33 -0
  264. package/dist/system/_style-chip.js +103 -0
  265. package/dist/system/_style-code.js +13 -0
  266. package/dist/system/_style-collapse.js +14 -0
  267. package/dist/system/_style-control-face.js +29 -0
  268. package/dist/system/_style-control-label.js +22 -0
  269. package/dist/system/_style-control-step.js +22 -0
  270. package/dist/system/_style-control.js +76 -0
  271. package/dist/system/_style-data-face.js +28 -0
  272. package/dist/system/_style-description.js +23 -0
  273. package/dist/system/_style-eyebrow.js +43 -0
  274. package/dist/system/_style-footer-rule.js +47 -0
  275. package/dist/system/_style-gutter.js +17 -0
  276. package/dist/system/_style-help-ink.js +14 -0
  277. package/dist/system/_style-help.js +29 -0
  278. package/dist/system/_style-input-face.js +34 -0
  279. package/dist/system/_style-kbd.js +46 -0
  280. package/dist/system/_style-label-case.js +36 -0
  281. package/dist/system/_style-label-face.js +32 -0
  282. package/dist/system/_style-label-ink.js +29 -0
  283. package/dist/system/_style-label-leading.js +14 -0
  284. package/dist/system/_style-label-size.js +36 -0
  285. package/dist/system/_style-label-tracking.js +45 -0
  286. package/dist/system/_style-label-weight.js +40 -0
  287. package/dist/system/_style-lede.js +49 -0
  288. package/dist/system/_style-link.js +46 -0
  289. package/dist/system/_style-menu.js +30 -0
  290. package/dist/system/_style-nav-item.js +41 -0
  291. package/dist/system/_style-nav-voice.js +43 -0
  292. package/dist/system/_style-option.js +42 -0
  293. package/dist/system/_style-overlay-title.js +35 -0
  294. package/dist/system/_style-page-title.js +48 -0
  295. package/dist/system/_style-popover-pad.js +13 -0
  296. package/dist/system/_style-quiet-ink.js +13 -0
  297. package/dist/system/_style-row-pad.js +13 -0
  298. package/dist/system/_style-seam.js +43 -0
  299. package/dist/system/_style-section-rule.js +26 -0
  300. package/dist/system/_style-segment.js +30 -0
  301. package/dist/system/_style-segmented-control.js +86 -0
  302. package/dist/system/_style-selected.js +36 -0
  303. package/dist/system/_style-stage-marks.js +26 -0
  304. package/dist/system/_style-tab.js +71 -0
  305. package/dist/system/_style-textarea.js +21 -0
  306. package/dist/system/_style-title.js +37 -0
  307. package/dist/system/_style-tooltip.js +17 -0
  308. package/dist/system/density.d.ts +15 -5
  309. package/dist/system/density.js +188 -25
  310. package/dist/system/index.d.ts +2 -2
  311. package/dist/system/index.js +2 -2
  312. package/dist/system/overrides.d.ts +1 -0
  313. package/dist/system/overrides.js +151 -3
  314. package/dist/system/portal.d.ts +3 -2
  315. package/dist/system/portal.js +22 -10
  316. package/dist/system/prepaint.d.ts +21 -5
  317. package/dist/system/prepaint.js +3 -1
  318. package/dist/system/published.d.ts +1 -0
  319. package/dist/system/published.js +131 -0
  320. package/dist/system/theme-provider.d.ts +168 -60
  321. package/dist/system/theme-provider.js +375 -79
  322. package/dist/system/theme-registry.d.ts +2 -1
  323. package/dist/system/theme-registry.js +27 -10
  324. package/dist/system/use-density.js +4 -3
  325. package/dist/system/use-theme.d.ts +5 -2
  326. package/dist/system/use-theme.js +7 -4
  327. package/dist/system/vocabulary.js +2 -2
  328. package/dist/theming/create-theme.js +12 -6
  329. package/dist/theming/serialize.d.ts +34 -2
  330. package/dist/theming/serialize.js +86 -4
  331. package/manifest/components/accordion.json +7 -1
  332. package/manifest/components/agent-pile.json +3 -0
  333. package/manifest/components/alert-dialog.json +38 -1
  334. package/manifest/components/app-bar.json +23 -2
  335. package/manifest/components/app-shell.json +5 -0
  336. package/manifest/components/ask-box.json +3 -1
  337. package/manifest/components/autocomplete.json +49 -1
  338. package/manifest/components/band.json +14 -3
  339. package/manifest/components/bento.json +12 -1
  340. package/manifest/components/breadcrumb.json +8 -1
  341. package/manifest/components/button.json +31 -3
  342. package/manifest/components/calendar.json +7 -0
  343. package/manifest/components/card.json +28 -1
  344. package/manifest/components/carousel.json +4 -1
  345. package/manifest/components/channel-matrix.json +40 -1
  346. package/manifest/components/chart-tooltip-content.json +38 -1
  347. package/manifest/components/chat-empty-state.json +3 -1
  348. package/manifest/components/checkbox-group.json +14 -0
  349. package/manifest/components/checkbox.json +14 -0
  350. package/manifest/components/chip.json +16 -1
  351. package/manifest/components/clamp.json +3 -1
  352. package/manifest/components/code-block.json +10 -1
  353. package/manifest/components/collapsible.json +13 -2
  354. package/manifest/components/color-area.json +4 -2
  355. package/manifest/components/color-field.json +14 -0
  356. package/manifest/components/color-picker.json +14 -0
  357. package/manifest/components/color-slider.json +3 -1
  358. package/manifest/components/colors-section.json +9 -1
  359. package/manifest/components/combobox.json +49 -1
  360. package/manifest/components/command-palette.json +37 -1
  361. package/manifest/components/composer-actions.json +3 -0
  362. package/manifest/components/composer-attach-button.json +3 -0
  363. package/manifest/components/composer-attachment-chip.json +3 -0
  364. package/manifest/components/composer-attachments.json +3 -0
  365. package/manifest/components/composer-bar.json +3 -0
  366. package/manifest/components/composer-command-item.json +3 -0
  367. package/manifest/components/composer-context.json +3 -0
  368. package/manifest/components/composer-input.json +3 -0
  369. package/manifest/components/composer-menu-item.json +3 -0
  370. package/manifest/components/composer-menu.json +3 -0
  371. package/manifest/components/composer-model-item.json +3 -0
  372. package/manifest/components/composer-model-trigger.json +3 -0
  373. package/manifest/components/composer-person-item.json +3 -0
  374. package/manifest/components/composer-send.json +3 -0
  375. package/manifest/components/composer-toolbar.json +3 -0
  376. package/manifest/components/composer-voice-button.json +3 -0
  377. package/manifest/components/composer-voice.json +3 -0
  378. package/manifest/components/composer.json +14 -0
  379. package/manifest/components/confidence-marker.json +3 -1
  380. package/manifest/components/container.json +2 -1
  381. package/manifest/components/context-menu.json +38 -1
  382. package/manifest/components/conversation-search.json +3 -1
  383. package/manifest/components/cue-mark.json +2 -2
  384. package/manifest/components/cue-portal-frame.json +1 -1
  385. package/manifest/components/data-row.json +3 -1
  386. package/manifest/components/data-tree.json +3 -1
  387. package/manifest/components/date-field.json +14 -0
  388. package/manifest/components/date-picker.json +14 -0
  389. package/manifest/components/date-range-picker.json +14 -0
  390. package/manifest/components/delegation-card.json +3 -1
  391. package/manifest/components/density.json +21 -7
  392. package/manifest/components/description-list.json +6 -1
  393. package/manifest/components/dialog.json +39 -1
  394. package/manifest/components/disclosure.json +13 -2
  395. package/manifest/components/dmx-bar.json +37 -1
  396. package/manifest/components/dmx-strip.json +37 -1
  397. package/manifest/components/drawer.json +38 -1
  398. package/manifest/components/dropdown-menu.json +38 -1
  399. package/manifest/components/edit-message.json +3 -1
  400. package/manifest/components/elements-command-palette.json +3 -1
  401. package/manifest/components/elements-composer.json +3 -0
  402. package/manifest/components/empty-state-composer.json +3 -1
  403. package/manifest/components/empty-state-greeting.json +3 -1
  404. package/manifest/components/empty-state-suggestion.json +3 -1
  405. package/manifest/components/empty-state-suggestions.json +3 -1
  406. package/manifest/components/env-var-input.json +14 -1
  407. package/manifest/components/export-dialog.json +6 -1
  408. package/manifest/components/eyebrow.json +13 -2
  409. package/manifest/components/feedback-dialog.json +3 -0
  410. package/manifest/components/field-description.json +14 -0
  411. package/manifest/components/field-error.json +14 -0
  412. package/manifest/components/field-label.json +15 -1
  413. package/manifest/components/field.json +14 -0
  414. package/manifest/components/file-upload.json +3 -0
  415. package/manifest/components/footer.json +14 -1
  416. package/manifest/components/frames.json +14 -1
  417. package/manifest/components/hover-card.json +38 -1
  418. package/manifest/components/info-tip.json +3 -0
  419. package/manifest/components/input-group.json +14 -0
  420. package/manifest/components/input.json +14 -0
  421. package/manifest/components/item.json +3 -1
  422. package/manifest/components/kbd.json +10 -1
  423. package/manifest/components/ledger.json +9 -2
  424. package/manifest/components/link.json +10 -0
  425. package/manifest/components/log-viewer.json +10 -0
  426. package/manifest/components/map-answer.json +3 -1
  427. package/manifest/components/markdown-text.json +3 -0
  428. package/manifest/components/menubar.json +41 -2
  429. package/manifest/components/message-list.json +10 -0
  430. package/manifest/components/message.json +6 -1
  431. package/manifest/components/mobile-composer.json +3 -1
  432. package/manifest/components/multi-select.json +49 -1
  433. package/manifest/components/musical-time-input.json +14 -0
  434. package/manifest/components/navigation-menu.json +41 -1
  435. package/manifest/components/node-card.json +3 -0
  436. package/manifest/components/number-field.json +14 -1
  437. package/manifest/components/otp-field.json +13 -0
  438. package/manifest/components/page-shell.json +14 -0
  439. package/manifest/components/pagination.json +3 -0
  440. package/manifest/components/panel-header.json +12 -0
  441. package/manifest/components/panel.json +13 -1
  442. package/manifest/components/password-input.json +14 -1
  443. package/manifest/components/permission-scopes.json +3 -1
  444. package/manifest/components/piano-keyboard.json +3 -0
  445. package/manifest/components/popover.json +39 -1
  446. package/manifest/components/preset-section.json +9 -1
  447. package/manifest/components/preview.json +30 -10
  448. package/manifest/components/progress.json +6 -1
  449. package/manifest/components/prompt-library.json +3 -1
  450. package/manifest/components/queue-dock.json +3 -1
  451. package/manifest/components/radio-group.json +8 -0
  452. package/manifest/components/radio.json +8 -0
  453. package/manifest/components/rating.json +4 -1
  454. package/manifest/components/reasoning-panel.json +3 -1
  455. package/manifest/components/recommendation-card.json +1 -1
  456. package/manifest/components/resizable.json +4 -1
  457. package/manifest/components/revert-dock.json +3 -1
  458. package/manifest/components/row.json +5 -1
  459. package/manifest/components/scroll-area.json +4 -2
  460. package/manifest/components/scrollable-tabs-list.json +19 -0
  461. package/manifest/components/scrub-input.json +14 -1
  462. package/manifest/components/seam-cell.json +1 -0
  463. package/manifest/components/seam-grid.json +1 -0
  464. package/manifest/components/seam-list.json +5 -1
  465. package/manifest/components/search-input.json +14 -1
  466. package/manifest/components/section-header.json +15 -2
  467. package/manifest/components/segmented-control.json +17 -0
  468. package/manifest/components/select.json +28 -0
  469. package/manifest/components/settings-panel.json +3 -0
  470. package/manifest/components/shape-section.json +9 -1
  471. package/manifest/components/sheet.json +38 -1
  472. package/manifest/components/shimmer-label.json +3 -0
  473. package/manifest/components/sidebar.json +19 -2
  474. package/manifest/components/slider.json +8 -0
  475. package/manifest/components/sources.json +3 -1
  476. package/manifest/components/stat.json +9 -0
  477. package/manifest/components/status-bar.json +4 -0
  478. package/manifest/components/stepper.json +8 -0
  479. package/manifest/components/swap-label.json +3 -0
  480. package/manifest/components/switch.json +8 -0
  481. package/manifest/components/table-scroll-region.json +20 -2
  482. package/manifest/components/table.json +20 -2
  483. package/manifest/components/tabs.json +20 -1
  484. package/manifest/components/tags-input.json +49 -1
  485. package/manifest/components/terminal-frame.json +3 -0
  486. package/manifest/components/textarea.json +16 -0
  487. package/manifest/components/theme-configurator.json +38 -1
  488. package/manifest/components/theme-provider.json +37 -19
  489. package/manifest/components/thread-search.json +3 -1
  490. package/manifest/components/threshold-rail.json +3 -0
  491. package/manifest/components/time-field.json +14 -0
  492. package/manifest/components/toast.json +39 -0
  493. package/manifest/components/toggle-group.json +1 -19
  494. package/manifest/components/toggle.json +3 -5
  495. package/manifest/components/token-editor.json +6 -1
  496. package/manifest/components/tool-call-card.json +9 -2
  497. package/manifest/components/tool-call.json +3 -1
  498. package/manifest/components/tool-timeline.json +3 -1
  499. package/manifest/components/toolbar.json +4 -1
  500. package/manifest/components/tooltip.json +40 -1
  501. package/manifest/components/tree-visibility-toggle.json +3 -0
  502. package/manifest/components/tree.json +3 -0
  503. package/manifest/components/universe-grid.json +3 -0
  504. package/manifest/components/voice-conversation.json +3 -0
  505. package/manifest/components/work-collapse.json +3 -1
  506. package/manifest/manifest.json +205 -185
  507. package/manifest/tokens.json +260 -4
  508. package/package.json +6 -6
@@ -216,24 +216,72 @@
216
216
  "--cue-fg-muted",
217
217
  "--cue-fg-subtle",
218
218
  "--cue-focus",
219
+ "--cue-focus-ring",
219
220
  "--cue-font-mono",
220
221
  "--cue-icon-sm",
221
222
  "--cue-leading-ui",
223
+ "--cue-paint-rest-shade",
224
+ "--cue-paint-rim-width",
225
+ "--cue-paint-scrim-filter",
226
+ "--cue-paint-shade-far",
227
+ "--cue-paint-shade-hairline",
228
+ "--cue-paint-shade-near",
229
+ "--cue-paint-shadow-scale",
230
+ "--cue-paint-shadow-spread",
231
+ "--cue-paint-sheen-ink",
232
+ "--cue-paint-stroke-angle",
233
+ "--cue-paint-stroke-from",
234
+ "--cue-paint-stroke-overlay-from",
235
+ "--cue-paint-stroke-overlay-to",
236
+ "--cue-paint-stroke-to",
237
+ "--cue-paint-stroke-width",
222
238
  "--cue-radius-control",
223
239
  "--cue-radius-overlay",
240
+ "--cue-radius-scale",
224
241
  "--cue-scrim",
225
242
  "--cue-space-1",
226
243
  "--cue-space-2",
227
244
  "--cue-space-3",
228
245
  "--cue-space-4",
229
246
  "--cue-space-5",
247
+ "--cue-style-body-face",
248
+ "--cue-style-body-leading",
249
+ "--cue-style-body-size",
250
+ "--cue-style-body-weight",
251
+ "--cue-style-control-face",
252
+ "--cue-style-control-step-size",
253
+ "--cue-style-display-variation",
254
+ "--cue-style-field-focus-offset",
255
+ "--cue-style-focus-edge",
256
+ "--cue-style-focus-width",
257
+ "--cue-style-heading-ink",
258
+ "--cue-style-input-face",
259
+ "--cue-style-label-case",
260
+ "--cue-style-label-face",
261
+ "--cue-style-label-ink",
262
+ "--cue-style-label-size",
263
+ "--cue-style-label-tracking",
264
+ "--cue-style-label-weight",
265
+ "--cue-style-menu-highlight",
266
+ "--cue-style-menu-item-radius",
267
+ "--cue-style-option-ink",
268
+ "--cue-style-option-selected-ink",
269
+ "--cue-style-overlay-ground",
270
+ "--cue-style-overlay-title-leading",
271
+ "--cue-style-overlay-title-size",
272
+ "--cue-style-quiet-ink",
273
+ "--cue-style-title-face",
274
+ "--cue-style-title-weight",
230
275
  "--cue-sunken",
231
276
  "--cue-surface-2",
232
277
  "--cue-text-body",
233
278
  "--cue-text-emphasis",
234
279
  "--cue-text-label",
280
+ "--cue-text-micro",
235
281
  "--cue-text-ui",
236
- "--cue-tracking-caps"
282
+ "--cue-tracking-caps",
283
+ "--cue-tracking-caps-loose",
284
+ "--cue-tracking-caps-tight"
237
285
  ],
238
286
  "summary": "A text field that suggests as you type — and accepts what you typed anyway.",
239
287
  "examples": [
@@ -5,14 +5,14 @@
5
5
  "importPath": "@cueplusplus/ui",
6
6
  "peerDependencies": [],
7
7
  "clientOnly": false,
8
- "description": "A full-bleed horizontal section: the page's rhythm, its separation, and a\ncolumn at the measure.\n\nThis is `Footer`'s recipe with the footer taken out of it — a `w-full`\nelement, a rule running edge to edge, and a centred `Container` inside so the\nline reaches the window while the words stop at the measure. `Footer` is\nbuilt on this rather than beside it; the recipe exists once.\n\nEvery dimension it spends belongs to the style axis, so the same markup\ncomposes differently under `[data-style]` without a prop changing: the\nvertical rhythm is `--cue-band-y` (one `--cue-space-7` with no set, doubled\nunder `editorial`, trebled under `marketing`), the column is\n`--cue-measure-prose` unless `width` names a fixed rung, and the rule and the\nground are `--cue-band-rule` and `--cue-band-ground`. Read `separation`'s own\ndocumentation before choosing one, because two of the four can come out to\nnothing and they do not vanish symmetrically: `--cue-band-ground` is\n`transparent` on `:root` and on two of the three sets, so a `\"ground\"` paints\nnothing in three of the four states a page can be in, while `--cue-band-rule`\nis `0px` under `marketing` alone. Both are deliberate and nothing warns.\n\n**Two substitution boundaries, because `--cue-band-y` is a `calc()` resolved\nat the element that declares it.** A `<Density>` island nested inside a\nstyled page moves every `--cue-space-*` and the band rhythm does **not**\nfollow it — the island inherits the rhythm already resolved above. Restate\nthe set on the island (`<Density density=\"compact\" styleSet=\"editorial\">`) to\nre-resolve it against that island's rung. Likewise a nested `[data-theme]`\nunder a marketing band paints the **outer** theme's `--cue-surface-1` through\nan already-resolved `--cue-band-ground`.\n\nIt renders a `<section>`, which is not a landmark until it has an accessible\nname — so a band with a heading should carry `aria-labelledby` pointing at\nit, and a band without one costs the document nothing.\n\nStatic markup — no `\"use client\"`.",
8
+ "description": "A full-bleed horizontal section: the page's rhythm, its separation, and a\ncolumn at the measure.\n\nThis is `Footer`'s recipe with the footer taken out of it — a `w-full`\nelement, a rule running edge to edge, and a centred `Container` inside so the\nline reaches the window while the words stop at the measure. `Footer` is\nbuilt on this rather than beside it; the recipe exists once.\n\nEvery dimension it spends belongs to the style axis, so the same markup\ncomposes differently under `[data-style]` without a prop changing: the\nvertical rhythm is `--cue-band-y` (one `--cue-space-7` with no set, doubled\nunder `editorial`, trebled under `marketing` and `graphite`), the column is\n`--cue-measure-prose` unless `width` names a fixed rung, and the rule and the\nground are `--cue-band-rule` and `--cue-band-ground`. Read `separation`'s own\ndocumentation before choosing one, because two of the four can come out to\nnothing and they do not vanish symmetrically: `--cue-band-ground` is\n`transparent` on `:root` and on every set but `marketing` and `kiln`, so a\n`\"ground\"` paints nothing on most pages, while `--cue-band-rule` is `0px`\nunder those two alone. Both are deliberate and nothing warns.\n\n**Two substitution boundaries, because `--cue-band-y` is a `calc()` resolved\nat the element that declares it.** A `<Density>` island nested inside a\nstyled page moves every `--cue-space-*` and the band rhythm does **not**\nfollow it — the island inherits the rhythm already resolved above. Restate\nthe set on the island (`<Density density=\"compact\" styleSet=\"editorial\">`) to\nre-resolve it against that island's rung. Likewise a hand-stamped\n`[data-theme]` element under a marketing page paints the **outer** theme's\n`--cue-surface-1` through an already-resolved `--cue-band-ground`, and its\nrule in the outer theme's border. The library's own theme islands do not: a\nnested `ThemeProvider` that names a theme or a mode, and a `Preview` stage\nwith a theme, a mode or a pairing, restate the set in force beside it, so a\nband inside one paints that island's ground and rule.\n\nIt renders a `<section>`, which is not a landmark until it has an accessible\nname — so a band with a heading should carry `aria-labelledby` pointing at\nit, and a band without one costs the document nothing.\n\nStatic markup — no `\"use client\"`.",
9
9
  "props": [
10
10
  {
11
11
  "name": "separation",
12
12
  "type": "\"none\" | \"rule\" | \"ground\" | \"bleed\"",
13
13
  "required": false,
14
14
  "defaultValue": "rule",
15
- "description": "How this band separates itself from the one above it. Defaults to `\"rule\"`.\n\n- **`\"rule\"`** — a line at the top edge, `--cue-band-rule` wide, in\n `border-border`. What `Footer` has always drawn.\n- **`\"ground\"`** — a ground, `--cue-band-ground`, edge to edge. The one\n value that touches colour, and it resolves through the single carve-out\n the token layer allows a style set.\n- **`\"bleed\"`** — neither, and **no column**: the children run the band's\n full width with no measure and no gutters. The separation is the change\n of scale, which is what a full-width image or strip does. `width` has\n nothing to apply to and is ignored.\n- **`\"none\"`** — neither, column kept. Sections separate by rhythm alone,\n which is `--cue-band-y` and is what `editorial` leads with.\n\n**What a style set makes each of these do, because two of them can come out\nto nothing and there is no way for this component to warn you.** The values\nare the token layer's; `packages/ui/test/chrome/band.test.tsx` holds this\ntable to `packages/tokens/dist/axes.css`, so it cannot quietly stop being\ntrue.\n\n| set | `\"rule\"` draws | `\"ground\"` paints |\n|---|---|---|\n| *(no set)* and `console` | 1px | nothing — the ground is `transparent` |\n| `editorial` | a 0.5px hairline, **which Chromium paints at 1px at every DPR**; only retina WebKit draws it thinner | nothing — `transparent` |\n| `marketing` | **nothing — the rule is `0px`** | `--cue-surface-1` |\n\nRead the diagonal: `\"ground\"` is the marketing separation and `\"rule\"` is\neveryone else's. A band that wants to separate under *every* set separates\nby rhythm, which every set has.",
15
+ "description": "How this band separates itself from the one above it. Defaults to `\"rule\"`.\n\n- **`\"rule\"`** — a line at the top edge, `--cue-band-rule` wide, in\n `border-border`. What `Footer` has always drawn.\n- **`\"ground\"`** — a ground, `--cue-band-ground`, edge to edge. The one\n value that touches colour, and it resolves through the single carve-out\n the token layer allows a style set.\n- **`\"bleed\"`** — neither, and **no column**: the children run the band's\n full width with no measure and no gutters. The separation is the change\n of scale, which is what a full-width image or strip does. `width` has\n nothing to apply to and is ignored.\n- **`\"none\"`** — neither, column kept. Sections separate by rhythm alone,\n which is `--cue-band-y` and is what `editorial` leads with.\n\n**What a style set makes each of these do, because two of them can come out\nto nothing and there is no way for this component to warn you.** The values\nare the token layer's; `packages/ui/test/chrome/band.test.tsx` holds this\ntable to `packages/tokens/dist/axes.css`, so it cannot quietly stop being\ntrue.\n\n| set | `\"rule\"` draws | `\"ground\"` paints |\n|---|---|---|\n| *(no set)*, `console`, `tender`, `zine` and `porcelain` | 1px | nothing — the ground is `transparent` |\n| `editorial` | a 0.5px hairline, **which Chromium paints at 1px at every DPR**; only retina WebKit draws it thinner | nothing — `transparent` |\n| `marketing` | **nothing — the rule is `0px`** | `--cue-surface-1` |\n| `kiln` | **nothing — the rule is `0px`**; `Footer` keeps its own, through `--cue-style-footer-rule` | `--cue-sunken`, the recessed ground |\n| `graphite` | 1px, in `--cue-border` | nothing — `transparent` |\n\nRead the diagonal: `\"ground\"` is the marketing and kiln separation and\n`\"rule\"` is everyone else's. A band that wants to separate under *every* set\nseparates by rhythm, which every set has.",
16
16
  "control": {
17
17
  "kind": "enum",
18
18
  "members": [
@@ -74,7 +74,18 @@
74
74
  "--cue-band-rule",
75
75
  "--cue-band-rule-color",
76
76
  "--cue-band-y",
77
- "--cue-measure-prose"
77
+ "--cue-band-y-bottom",
78
+ "--cue-band-y-top",
79
+ "--cue-measure-broad",
80
+ "--cue-measure-prose",
81
+ "--cue-paint-fade",
82
+ "--cue-paint-ground-pattern",
83
+ "--cue-paint-ground-pattern-size",
84
+ "--cue-paint-texture",
85
+ "--cue-paint-texture-blend",
86
+ "--cue-paint-texture-opacity",
87
+ "--cue-paint-texture-size",
88
+ "--cue-style-band-width"
78
89
  ],
79
90
  "summary": "A full-bleed horizontal section: a rule to the window's edge, a column at the measure.",
80
91
  "examples": [
@@ -240,10 +240,11 @@
240
240
  "variants": {},
241
241
  "defaultVariants": {},
242
242
  "tokensUsed": [
243
- "--cue-accent",
244
243
  "--cue-border",
245
244
  "--cue-fg",
246
245
  "--cue-fg-muted",
246
+ "--cue-focus",
247
+ "--cue-focus-ring",
247
248
  "--cue-font-mono",
248
249
  "--cue-radius-surface",
249
250
  "--cue-space-1",
@@ -251,6 +252,16 @@
251
252
  "--cue-space-3",
252
253
  "--cue-space-5",
253
254
  "--cue-space-8",
255
+ "--cue-style-data-face",
256
+ "--cue-style-display-variation",
257
+ "--cue-style-focus-width",
258
+ "--cue-style-heading-ink",
259
+ "--cue-style-title-face",
260
+ "--cue-style-title-leading",
261
+ "--cue-style-title-size",
262
+ "--cue-style-title-tracking",
263
+ "--cue-style-title-variation",
264
+ "--cue-style-title-weight",
254
265
  "--cue-surface-1",
255
266
  "--cue-surface-2",
256
267
  "--cue-text-emphasis",
@@ -52,10 +52,17 @@
52
52
  "--cue-fg",
53
53
  "--cue-fg-muted",
54
54
  "--cue-fg-subtle",
55
+ "--cue-focus",
56
+ "--cue-focus-ring",
55
57
  "--cue-font-mono",
56
58
  "--cue-radius-control",
57
59
  "--cue-space-2",
58
- "--cue-text-label"
60
+ "--cue-style-body-size",
61
+ "--cue-style-control-face",
62
+ "--cue-style-focus-width",
63
+ "--cue-style-help-ink",
64
+ "--cue-text-label",
65
+ "--cue-text-ui"
59
66
  ],
60
67
  "summary": "Where you are, and how to get back.",
61
68
  "examples": [
@@ -5,7 +5,7 @@
5
5
  "importPath": "@cueplusplus/ui",
6
6
  "peerDependencies": [],
7
7
  "clientOnly": true,
8
- "description": "The system's primary action control.\n\nA real `<button>` by default, restyled entirely from tokens: height comes\nfrom the density control ladder, colour from the theme's accent/surface ramp.\nThe focus ring is an `outline`, never a `box-shadow`, so it survives inside\n`overflow: hidden` panels.",
8
+ "description": "The system's primary action control.\n\nA real `<button>` by default, restyled entirely from tokens: height comes\nfrom the density control ladder, colour from the theme's accent/surface ramp.\nThe focus ring is an `outline`, never a `box-shadow`, so it survives inside\n`overflow: hidden` panels.\n\n`className` is merged with `tailwind-merge`, so a caller's `px-2`,\n`font-semibold` or `shadow-none` replaces the class the recipe set for the\nsame property. Only here: `buttonVariants()` concatenates, and says what that\ncosts.",
9
9
  "props": [
10
10
  {
11
11
  "name": "render",
@@ -100,8 +100,9 @@
100
100
  },
101
101
  "tokensUsed": [
102
102
  "--cue-accent",
103
- "--cue-accent-fg",
104
- "--cue-accent-hover",
103
+ "--cue-accent-fill",
104
+ "--cue-accent-fill-fg",
105
+ "--cue-accent-fill-hover",
105
106
  "--cue-border",
106
107
  "--cue-border-strong",
107
108
  "--cue-control-lg",
@@ -111,15 +112,42 @@
111
112
  "--cue-danger-fg",
112
113
  "--cue-fg",
113
114
  "--cue-fg-muted",
115
+ "--cue-focus",
116
+ "--cue-focus-ring",
114
117
  "--cue-font-mono",
115
118
  "--cue-icon-md",
116
119
  "--cue-icon-sm",
120
+ "--cue-paint-danger-glow-ink",
121
+ "--cue-paint-glow-blur",
122
+ "--cue-paint-glow-blur-far",
123
+ "--cue-paint-glow-ink",
124
+ "--cue-paint-glow-ink-hover",
125
+ "--cue-paint-rest-shade",
126
+ "--cue-paint-shadow-scale",
117
127
  "--cue-radius-control",
118
128
  "--cue-space-4",
119
129
  "--cue-space-5",
120
130
  "--cue-space-6",
131
+ "--cue-style-control-case",
132
+ "--cue-style-control-face",
133
+ "--cue-style-control-pad",
134
+ "--cue-style-control-step-size",
135
+ "--cue-style-control-tracking",
136
+ "--cue-style-control-trim",
137
+ "--cue-style-control-weight",
138
+ "--cue-style-focus-offset",
139
+ "--cue-style-focus-width",
140
+ "--cue-style-outline-edge",
141
+ "--cue-style-quiet-ink",
142
+ "--cue-style-secondary-edge",
143
+ "--cue-style-secondary-ground",
144
+ "--cue-style-secondary-hover-edge",
145
+ "--cue-style-secondary-hover-ink",
146
+ "--cue-style-secondary-ink",
121
147
  "--cue-surface-2",
148
+ "--cue-text-body",
122
149
  "--cue-text-emphasis",
150
+ "--cue-text-label",
123
151
  "--cue-text-ui"
124
152
  ],
125
153
  "summary": "The action control: six variants across three density-sized heights.",
@@ -26,17 +26,24 @@
26
26
  "--cue-fg",
27
27
  "--cue-fg-muted",
28
28
  "--cue-fg-subtle",
29
+ "--cue-focus",
30
+ "--cue-focus-ring",
29
31
  "--cue-font-mono",
30
32
  "--cue-icon-sm",
31
33
  "--cue-radius-control",
32
34
  "--cue-space-2",
33
35
  "--cue-space-5",
36
+ "--cue-style-focus-width",
37
+ "--cue-style-label-case",
38
+ "--cue-style-label-face",
39
+ "--cue-style-label-tracking",
34
40
  "--cue-sunken",
35
41
  "--cue-surface-3",
36
42
  "--cue-text-label",
37
43
  "--cue-text-micro",
38
44
  "--cue-text-ui",
39
45
  "--cue-tracking-caps",
46
+ "--cue-tracking-caps-loose",
40
47
  "--cue-tracking-caps-tight"
41
48
  ],
42
49
  "summary": "A month grid, on react-day-picker.",
@@ -40,7 +40,7 @@
40
40
  {
41
41
  "name": "Header",
42
42
  "usage": "Card.Header",
43
- "description": "The card's title block: heading column left, actions right.\n\nCarries no bottom padding of its own, so the body's own `p-(--cue-space-5)`\nis the whole gap between the two. Under `seam` it takes its full padding\nback, because the hairline — not the whitespace — is then the separator.",
43
+ "description": "The card's title block: heading column left, actions right.\n\nCarries no bottom padding of its own, so the body's own padding is the\nwhole gap between the two. Under `seam` it takes its full padding back,\nbecause the hairline — not the whitespace — is then the separator. Every side\nis `--cue-space-5` times the style set's `--cue-style-card-pad` (1 unless a\nset says otherwise).",
44
44
  "props": [
45
45
  {
46
46
  "name": "actions",
@@ -114,14 +114,41 @@
114
114
  "--cue-fg-muted",
115
115
  "--cue-font-mono",
116
116
  "--cue-leading-ui",
117
+ "--cue-paint-rest-shade",
118
+ "--cue-paint-rim-ink",
119
+ "--cue-paint-rim-width",
120
+ "--cue-paint-shadow-scale",
121
+ "--cue-paint-stroke-angle",
122
+ "--cue-paint-stroke-from",
123
+ "--cue-paint-stroke-raised-from",
124
+ "--cue-paint-stroke-raised-to",
125
+ "--cue-paint-stroke-to",
126
+ "--cue-paint-stroke-width",
117
127
  "--cue-radius-surface",
118
128
  "--cue-space-1",
119
129
  "--cue-space-2",
120
130
  "--cue-space-3",
121
131
  "--cue-space-4",
122
132
  "--cue-space-5",
133
+ "--cue-style-body-face",
134
+ "--cue-style-body-leading",
135
+ "--cue-style-body-size",
136
+ "--cue-style-body-weight",
137
+ "--cue-style-card-pad",
138
+ "--cue-style-description-leading",
139
+ "--cue-style-description-tracking",
140
+ "--cue-style-display-variation",
141
+ "--cue-style-heading-ink",
142
+ "--cue-style-seam-color",
143
+ "--cue-style-title-face",
144
+ "--cue-style-title-leading",
145
+ "--cue-style-title-size",
146
+ "--cue-style-title-tracking",
147
+ "--cue-style-title-variation",
148
+ "--cue-style-title-weight",
123
149
  "--cue-surface-1",
124
150
  "--cue-text-emphasis",
151
+ "--cue-text-label",
125
152
  "--cue-text-ui"
126
153
  ],
127
154
  "summary": "A padded container for one thing: a summary, a setting group, a preview.",
@@ -211,8 +211,11 @@
211
211
  "tokensUsed": [
212
212
  "--cue-accent",
213
213
  "--cue-border-strong",
214
+ "--cue-focus",
215
+ "--cue-focus-ring",
214
216
  "--cue-space-2",
215
- "--cue-space-4"
217
+ "--cue-space-4",
218
+ "--cue-style-focus-width"
216
219
  ],
217
220
  "summary": "A swipeable strip of slides, on embla.",
218
221
  "examples": [
@@ -195,22 +195,61 @@
195
195
  "--cue-fg",
196
196
  "--cue-fg-muted",
197
197
  "--cue-fg-subtle",
198
+ "--cue-focus",
199
+ "--cue-focus-ring",
198
200
  "--cue-font-mono",
199
201
  "--cue-leading-ui",
202
+ "--cue-paint-rim-width",
203
+ "--cue-paint-scrim-filter",
204
+ "--cue-paint-shade-far",
205
+ "--cue-paint-shade-hairline",
206
+ "--cue-paint-shade-near",
207
+ "--cue-paint-shadow-scale",
208
+ "--cue-paint-shadow-spread",
209
+ "--cue-paint-sheen-ink",
210
+ "--cue-paint-stroke-angle",
211
+ "--cue-paint-stroke-overlay-from",
212
+ "--cue-paint-stroke-overlay-to",
213
+ "--cue-paint-stroke-width",
200
214
  "--cue-radius-control",
201
215
  "--cue-radius-overlay",
216
+ "--cue-radius-scale",
202
217
  "--cue-scrim",
203
218
  "--cue-space-1",
204
219
  "--cue-space-2",
205
220
  "--cue-space-3",
206
221
  "--cue-space-4",
222
+ "--cue-style-body-face",
223
+ "--cue-style-body-leading",
224
+ "--cue-style-body-size",
225
+ "--cue-style-body-weight",
226
+ "--cue-style-control-face",
227
+ "--cue-style-display-variation",
228
+ "--cue-style-focus-width",
229
+ "--cue-style-heading-ink",
230
+ "--cue-style-label-case",
231
+ "--cue-style-label-face",
232
+ "--cue-style-label-ink",
233
+ "--cue-style-label-size",
234
+ "--cue-style-label-tracking",
235
+ "--cue-style-label-weight",
236
+ "--cue-style-menu-highlight",
237
+ "--cue-style-menu-item-radius",
238
+ "--cue-style-overlay-ground",
239
+ "--cue-style-overlay-title-leading",
240
+ "--cue-style-overlay-title-size",
241
+ "--cue-style-quiet-ink",
242
+ "--cue-style-title-face",
243
+ "--cue-style-title-weight",
207
244
  "--cue-surface-1",
208
245
  "--cue-surface-2",
209
246
  "--cue-text-emphasis",
210
247
  "--cue-text-label",
211
248
  "--cue-text-micro",
212
249
  "--cue-text-ui",
213
- "--cue-tracking-caps"
250
+ "--cue-tracking-caps",
251
+ "--cue-tracking-caps-loose",
252
+ "--cue-tracking-caps-tight"
214
253
  ],
215
254
  "summary": "The channel-by-channel view: 512 addressed cells, repainted imperatively.",
216
255
  "examples": [
@@ -101,17 +101,54 @@
101
101
  "--cue-fg-subtle",
102
102
  "--cue-font-mono",
103
103
  "--cue-leading-ui",
104
+ "--cue-paint-rim-width",
105
+ "--cue-paint-scrim-filter",
106
+ "--cue-paint-shade-far",
107
+ "--cue-paint-shade-hairline",
108
+ "--cue-paint-shade-near",
109
+ "--cue-paint-shadow-scale",
110
+ "--cue-paint-shadow-spread",
111
+ "--cue-paint-sheen-ink",
112
+ "--cue-paint-stroke-angle",
113
+ "--cue-paint-stroke-overlay-from",
114
+ "--cue-paint-stroke-overlay-to",
115
+ "--cue-paint-stroke-width",
104
116
  "--cue-radius-control",
105
117
  "--cue-radius-overlay",
118
+ "--cue-radius-scale",
106
119
  "--cue-scrim",
107
120
  "--cue-space-1",
108
121
  "--cue-space-2",
109
122
  "--cue-space-3",
123
+ "--cue-style-body-face",
124
+ "--cue-style-body-leading",
125
+ "--cue-style-body-size",
126
+ "--cue-style-body-weight",
127
+ "--cue-style-control-face",
128
+ "--cue-style-display-variation",
129
+ "--cue-style-heading-ink",
130
+ "--cue-style-label-case",
131
+ "--cue-style-label-face",
132
+ "--cue-style-label-ink",
133
+ "--cue-style-label-size",
134
+ "--cue-style-label-tracking",
135
+ "--cue-style-label-weight",
136
+ "--cue-style-menu-highlight",
137
+ "--cue-style-menu-item-radius",
138
+ "--cue-style-overlay-ground",
139
+ "--cue-style-overlay-title-leading",
140
+ "--cue-style-overlay-title-size",
141
+ "--cue-style-quiet-ink",
142
+ "--cue-style-title-face",
143
+ "--cue-style-title-weight",
110
144
  "--cue-surface-2",
111
145
  "--cue-text-emphasis",
112
146
  "--cue-text-label",
147
+ "--cue-text-micro",
113
148
  "--cue-text-ui",
114
- "--cue-tracking-caps"
149
+ "--cue-tracking-caps",
150
+ "--cue-tracking-caps-loose",
151
+ "--cue-tracking-caps-tight"
115
152
  ],
116
153
  "summary": "The chart tooltip surface: an overlay, styled like every other overlay.",
117
154
  "examples": [
@@ -17,8 +17,10 @@
17
17
  "variants": {},
18
18
  "defaultVariants": {},
19
19
  "tokensUsed": [
20
- "--cue-accent",
21
20
  "--cue-fg-subtle",
21
+ "--cue-focus",
22
+ "--cue-focus-ring",
23
+ "--cue-style-focus-width",
22
24
  "--cue-text-body",
23
25
  "--cue-text-emphasis",
24
26
  "--cue-text-title"
@@ -32,12 +32,26 @@
32
32
  "--cue-border-strong",
33
33
  "--cue-danger",
34
34
  "--cue-fg-muted",
35
+ "--cue-fg-subtle",
36
+ "--cue-focus",
37
+ "--cue-focus-ring",
35
38
  "--cue-font-mono",
36
39
  "--cue-icon-md",
37
40
  "--cue-icon-sm",
41
+ "--cue-paint-rest-shade",
42
+ "--cue-paint-shadow-scale",
38
43
  "--cue-radius-control",
44
+ "--cue-radius-scale",
39
45
  "--cue-space-2",
40
46
  "--cue-space-3",
47
+ "--cue-style-body-weight",
48
+ "--cue-style-check-edge",
49
+ "--cue-style-check-radius",
50
+ "--cue-style-check-size",
51
+ "--cue-style-control-face",
52
+ "--cue-style-focus-width",
53
+ "--cue-style-label-ink",
54
+ "--cue-style-label-weight",
41
55
  "--cue-sunken",
42
56
  "--cue-text-ui"
43
57
  ],
@@ -57,12 +57,26 @@
57
57
  "--cue-border-strong",
58
58
  "--cue-danger",
59
59
  "--cue-fg-muted",
60
+ "--cue-fg-subtle",
61
+ "--cue-focus",
62
+ "--cue-focus-ring",
60
63
  "--cue-font-mono",
61
64
  "--cue-icon-md",
62
65
  "--cue-icon-sm",
66
+ "--cue-paint-rest-shade",
67
+ "--cue-paint-shadow-scale",
63
68
  "--cue-radius-control",
69
+ "--cue-radius-scale",
64
70
  "--cue-space-2",
65
71
  "--cue-space-3",
72
+ "--cue-style-body-weight",
73
+ "--cue-style-check-edge",
74
+ "--cue-style-check-radius",
75
+ "--cue-style-check-size",
76
+ "--cue-style-control-face",
77
+ "--cue-style-focus-width",
78
+ "--cue-style-label-ink",
79
+ "--cue-style-label-weight",
66
80
  "--cue-sunken",
67
81
  "--cue-text-ui"
68
82
  ],
@@ -5,7 +5,7 @@
5
5
  "importPath": "@cueplusplus/ui",
6
6
  "peerDependencies": [],
7
7
  "clientOnly": true,
8
- "description": "A compact status/label pill: mono, uppercase, wide-tracked, one line tall.\n\n`tone` uses the shared status vocabulary (`ok | busy | warn | danger | info`)\nplus `neutral` and `accent`, so a chip, a `StatusDot` and a `Meter` always\nagree on what \"warn\" looks like.\n\n`variant` sets how loudly it says it. `tinted` is the chip proper — a tone\ntint behind tone ink. `outline` drops the fill and keeps the voice, for a\nchip on an already-busy ground. `tag` drops both: a hairline rim, micro type\nand closed tracking, for the facts that sit *beside* a row's name — a kind, a\nlifecycle, a scope — where a row full of tinted chips would read as a row of\nbuttons. All three keep `h-chip`, so a mixed row still has one baseline.",
8
+ "description": "A compact status/label pill: mono, uppercase, wide-tracked, one line tall —\nby default, the style set's choice inside one.\n\nA chip speaks in the label voice: it reads the label face\n(`--cue-style-label-face`) and its own case (`--cue-style-chip-case`, which\nfalls back to the label case), so under a sans, sentence-case Look its text\nis sans and sentence case like the captions around it. This reverses the\nearlier ruling that a tag's text is the value being shown and stays mono\n(spec 2026-09-26-looks-fidelity F-15): under a sans Look a mono uppercase\nchip was the most visible console voice left on the page. A consumer that\nwants a chip mono under every set passes `className=\"font-mono uppercase\"`.\n\n`tone` uses the shared status vocabulary (`ok | busy | warn | danger | info`)\nplus `neutral` and `accent`, so a chip, a `StatusDot` and a `Meter` always\nagree on what \"warn\" looks like.\n\n`variant` sets how loudly it says it. `tinted` is the chip proper — a tone\ntint behind tone ink. `outline` drops the fill and keeps the voice, for a\nchip on an already-busy ground. `tag` drops both: a hairline rim, micro type\nand closed tracking, for the facts that sit *beside* a row's name — a kind, a\nlifecycle, a scope — where a row full of tinted chips would read as a row of\nbuttons. All three keep `h-chip`, so a mixed row still has one baseline.",
9
9
  "props": [
10
10
  {
11
11
  "name": "interactive",
@@ -113,13 +113,28 @@
113
113
  "--cue-danger",
114
114
  "--cue-fg",
115
115
  "--cue-fg-muted",
116
+ "--cue-focus",
117
+ "--cue-focus-ring",
116
118
  "--cue-font-mono",
117
119
  "--cue-hair-strong",
118
120
  "--cue-info",
119
121
  "--cue-ok",
120
122
  "--cue-radius-control",
123
+ "--cue-radius-scale",
121
124
  "--cue-space-2",
122
125
  "--cue-space-3",
126
+ "--cue-style-chip-case",
127
+ "--cue-style-chip-edge",
128
+ "--cue-style-chip-fill",
129
+ "--cue-style-chip-height",
130
+ "--cue-style-chip-pad",
131
+ "--cue-style-chip-radius",
132
+ "--cue-style-chip-size",
133
+ "--cue-style-chip-tracking",
134
+ "--cue-style-focus-width",
135
+ "--cue-style-label-case",
136
+ "--cue-style-label-face",
137
+ "--cue-style-label-weight",
123
138
  "--cue-surface-2",
124
139
  "--cue-text-label",
125
140
  "--cue-text-micro",
@@ -88,13 +88,15 @@
88
88
  "variants": {},
89
89
  "defaultVariants": {},
90
90
  "tokensUsed": [
91
- "--cue-accent",
92
91
  "--cue-elements-clamp-fade",
93
92
  "--cue-elements-clamp-height",
94
93
  "--cue-elements-clamp-mask",
95
94
  "--cue-fg",
96
95
  "--cue-fg-muted",
96
+ "--cue-focus",
97
+ "--cue-focus-ring",
97
98
  "--cue-radius-control",
99
+ "--cue-style-focus-width",
98
100
  "--cue-text-ui"
99
101
  ],
100
102
  "summary": "Long content, cut to a height, dissolving at the cut, with a way back.",
@@ -55,10 +55,19 @@
55
55
  "--cue-pad-row-x",
56
56
  "--cue-pad-row-y",
57
57
  "--cue-space-4",
58
+ "--cue-style-code-weight",
59
+ "--cue-style-label-case",
60
+ "--cue-style-label-face",
61
+ "--cue-style-label-ink",
62
+ "--cue-style-label-size",
63
+ "--cue-style-label-tracking",
58
64
  "--cue-sunken",
65
+ "--cue-text-label",
59
66
  "--cue-text-micro",
60
67
  "--cue-text-ui",
61
- "--cue-tracking-caps"
68
+ "--cue-tracking-caps",
69
+ "--cue-tracking-caps-loose",
70
+ "--cue-tracking-caps-tight"
62
71
  ],
63
72
  "summary": "A block of code with a copy button and no highlighter palette; `language=\"jsx\"` adds emphasis in three inks the theme already has.",
64
73
  "examples": [
@@ -88,11 +88,12 @@
88
88
  "variants": {},
89
89
  "defaultVariants": {},
90
90
  "tokensUsed": [
91
- "--cue-accent",
92
91
  "--cue-control-md",
93
92
  "--cue-fg",
94
93
  "--cue-fg-muted",
95
94
  "--cue-fg-subtle",
95
+ "--cue-focus",
96
+ "--cue-focus-ring",
96
97
  "--cue-font-mono",
97
98
  "--cue-icon-sm",
98
99
  "--cue-leading-ui",
@@ -101,10 +102,20 @@
101
102
  "--cue-space-2",
102
103
  "--cue-space-3",
103
104
  "--cue-space-4",
105
+ "--cue-style-collapse-height",
106
+ "--cue-style-control-face",
107
+ "--cue-style-focus-width",
108
+ "--cue-style-label-case",
109
+ "--cue-style-label-face",
110
+ "--cue-style-label-tracking",
111
+ "--cue-style-label-weight",
112
+ "--cue-style-quiet-ink",
104
113
  "--cue-text-label",
105
114
  "--cue-text-micro",
106
115
  "--cue-text-ui",
107
- "--cue-tracking-caps"
116
+ "--cue-tracking-caps",
117
+ "--cue-tracking-caps-loose",
118
+ "--cue-tracking-caps-tight"
108
119
  ],
109
120
  "summary": "One section that opens and closes — an accordion of exactly one.",
110
121
  "examples": [
@@ -28,11 +28,13 @@
28
28
  "variants": {},
29
29
  "defaultVariants": {},
30
30
  "tokensUsed": [
31
- "--cue-accent",
32
31
  "--cue-bg",
33
32
  "--cue-border",
34
33
  "--cue-fg",
35
- "--cue-radius-control"
34
+ "--cue-focus",
35
+ "--cue-focus-ring",
36
+ "--cue-radius-control",
37
+ "--cue-style-focus-width"
36
38
  ],
37
39
  "summary": "The two-axis colour field — saturation against brightness by default.",
38
40
  "examples": [