@nadicodeai/ui 12.1.164 → 12.1.166

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 (364) hide show
  1. package/AGENTS.md +8 -9
  2. package/README.md +2 -17
  3. package/dist/components/accordion.d.ts.map +1 -1
  4. package/dist/components/accordion.js +2 -1
  5. package/dist/components/account-menu.d.ts.map +1 -1
  6. package/dist/components/account-menu.js +5 -3
  7. package/dist/components/activity-calendar.d.ts.map +1 -1
  8. package/dist/components/activity-calendar.js +3 -2
  9. package/dist/components/agent-card.js +1 -1
  10. package/dist/components/agent-orb.d.ts.map +1 -1
  11. package/dist/components/agent-orb.js +1 -0
  12. package/dist/components/agent-profile.d.ts.map +1 -1
  13. package/dist/components/agent-profile.js +7 -4
  14. package/dist/components/alert-dialog.d.ts +1 -1
  15. package/dist/components/alert-dialog.d.ts.map +1 -1
  16. package/dist/components/alert-dialog.js +3 -3
  17. package/dist/components/app-mark.js +1 -1
  18. package/dist/components/avatar.js +8 -8
  19. package/dist/components/badge.d.ts +11 -16
  20. package/dist/components/badge.d.ts.map +1 -1
  21. package/dist/components/badge.js +7 -43
  22. package/dist/components/breadcrumb.d.ts.map +1 -1
  23. package/dist/components/breadcrumb.js +3 -2
  24. package/dist/components/button.d.ts +5 -21
  25. package/dist/components/button.d.ts.map +1 -1
  26. package/dist/components/button.js +6 -76
  27. package/dist/components/calendar.d.ts +1 -1
  28. package/dist/components/calendar.d.ts.map +1 -1
  29. package/dist/components/calendar.js +3 -3
  30. package/dist/components/card-row.js +1 -1
  31. package/dist/components/card.d.ts +4 -1
  32. package/dist/components/card.d.ts.map +1 -1
  33. package/dist/components/card.js +3 -2
  34. package/dist/components/catalog-drawer.d.ts.map +1 -1
  35. package/dist/components/catalog-drawer.js +3 -2
  36. package/dist/components/chart-axis.d.ts.map +1 -1
  37. package/dist/components/chart-axis.js +0 -2
  38. package/dist/components/chart-bar-horizontal.d.ts.map +1 -1
  39. package/dist/components/chart-bar-horizontal.js +16 -14
  40. package/dist/components/chart-card.d.ts.map +1 -1
  41. package/dist/components/chart-card.js +0 -1
  42. package/dist/components/chart.d.ts.map +1 -1
  43. package/dist/components/chart.js +18 -32
  44. package/dist/components/checkbox.d.ts +3 -2
  45. package/dist/components/checkbox.d.ts.map +1 -1
  46. package/dist/components/checkbox.js +4 -3
  47. package/dist/components/choicebox.d.ts +5 -5
  48. package/dist/components/choicebox.d.ts.map +1 -1
  49. package/dist/components/choicebox.js +6 -5
  50. package/dist/components/clearable-input.d.ts.map +1 -1
  51. package/dist/components/clearable-input.js +2 -2
  52. package/dist/components/code-block.d.ts.map +1 -1
  53. package/dist/components/code-block.js +4 -2
  54. package/dist/components/collapsible.js +1 -1
  55. package/dist/components/collection-filters.d.ts.map +1 -1
  56. package/dist/components/collection-filters.js +1 -0
  57. package/dist/components/collection-page.js +1 -1
  58. package/dist/components/collection-sort.d.ts.map +1 -1
  59. package/dist/components/collection-sort.js +1 -4
  60. package/dist/components/collection-toolbar.js +1 -1
  61. package/dist/components/combobox.js +4 -4
  62. package/dist/components/command.d.ts.map +1 -1
  63. package/dist/components/command.js +1 -1
  64. package/dist/components/confirm-dialog.js +2 -2
  65. package/dist/components/context-menu.d.ts +1 -1
  66. package/dist/components/context-menu.d.ts.map +1 -1
  67. package/dist/components/copy-button.js +1 -1
  68. package/dist/components/data-table.d.ts +11 -3
  69. package/dist/components/data-table.d.ts.map +1 -1
  70. package/dist/components/data-table.js +12 -4
  71. package/dist/components/dialog.d.ts +1 -1
  72. package/dist/components/dialog.d.ts.map +1 -1
  73. package/dist/components/dialog.js +2 -2
  74. package/dist/components/drawer.d.ts +4 -4
  75. package/dist/components/drawer.d.ts.map +1 -1
  76. package/dist/components/drawer.js +14 -15
  77. package/dist/components/dropdown-menu.d.ts +1 -1
  78. package/dist/components/dropdown-menu.d.ts.map +1 -1
  79. package/dist/components/dropdown-menu.js +9 -5
  80. package/dist/components/empty-art.js +1 -1
  81. package/dist/components/empty-state.js +2 -2
  82. package/dist/components/entry-scene.d.ts.map +1 -1
  83. package/dist/components/entry-scene.js +2 -3
  84. package/dist/components/field.js +3 -3
  85. package/dist/components/file-diff.d.ts.map +1 -1
  86. package/dist/components/file-diff.js +5 -2
  87. package/dist/components/footer.d.ts +1 -1
  88. package/dist/components/footer.d.ts.map +1 -1
  89. package/dist/components/footer.js +3 -3
  90. package/dist/components/form-dialog.d.ts.map +1 -1
  91. package/dist/components/form-dialog.js +2 -1
  92. package/dist/components/form-drawer.d.ts +7 -9
  93. package/dist/components/form-drawer.d.ts.map +1 -1
  94. package/dist/components/form-drawer.js +5 -5
  95. package/dist/components/form.d.ts +26 -0
  96. package/dist/components/form.d.ts.map +1 -0
  97. package/dist/components/form.js +29 -0
  98. package/dist/components/gauge.js +2 -2
  99. package/dist/components/heatmap/calendar-heatmap.d.ts.map +1 -1
  100. package/dist/components/heatmap/calendar-heatmap.js +15 -13
  101. package/dist/components/hive-scene.d.ts +3 -3
  102. package/dist/components/hive-scene.d.ts.map +1 -1
  103. package/dist/components/hive-scene.js +4 -2
  104. package/dist/components/hover-card.d.ts +1 -1
  105. package/dist/components/hover-card.d.ts.map +1 -1
  106. package/dist/components/hover-card.js +1 -1
  107. package/dist/components/input-group.d.ts +5 -6
  108. package/dist/components/input-group.d.ts.map +1 -1
  109. package/dist/components/input-group.js +8 -11
  110. package/dist/components/input-otp.d.ts.map +1 -1
  111. package/dist/components/input-otp.js +2 -2
  112. package/dist/components/item.d.ts +1 -1
  113. package/dist/components/item.js +2 -2
  114. package/dist/components/kbd.d.ts +6 -9
  115. package/dist/components/kbd.d.ts.map +1 -1
  116. package/dist/components/kbd.js +7 -3
  117. package/dist/components/message-notice.js +1 -1
  118. package/dist/components/middle-truncate.d.ts.map +1 -1
  119. package/dist/components/middle-truncate.js +1 -0
  120. package/dist/components/model-identity.d.ts +4 -4
  121. package/dist/components/model-identity.d.ts.map +1 -1
  122. package/dist/components/model-identity.js +2 -2
  123. package/dist/components/model-mark.d.ts.map +1 -1
  124. package/dist/components/model-mark.js +4 -2
  125. package/dist/components/multi-select.js +2 -2
  126. package/dist/components/native-select.d.ts.map +1 -1
  127. package/dist/components/native-select.js +2 -6
  128. package/dist/components/notice-banner.js +1 -1
  129. package/dist/components/object-page.js +2 -2
  130. package/dist/components/object-workspace.d.ts.map +1 -1
  131. package/dist/components/object-workspace.js +1 -3
  132. package/dist/components/overview-page.d.ts +1 -1
  133. package/dist/components/overview-page.d.ts.map +1 -1
  134. package/dist/components/overview-page.js +2 -1
  135. package/dist/components/page-actions.d.ts.map +1 -1
  136. package/dist/components/page-actions.js +9 -4
  137. package/dist/components/pairing-code.js +1 -1
  138. package/dist/components/pending-label.d.ts.map +1 -1
  139. package/dist/components/pending-label.js +0 -1
  140. package/dist/components/popover.d.ts +1 -1
  141. package/dist/components/popover.d.ts.map +1 -1
  142. package/dist/components/portal-sidebar-frame.d.ts.map +1 -1
  143. package/dist/components/portal-sidebar-frame.js +1 -1
  144. package/dist/components/product-message.d.ts.map +1 -1
  145. package/dist/components/product-message.js +1 -0
  146. package/dist/components/progress-checklist.d.ts.map +1 -1
  147. package/dist/components/progress-checklist.js +2 -2
  148. package/dist/components/progress.d.ts.map +1 -1
  149. package/dist/components/progress.js +5 -4
  150. package/dist/components/radio-group.js +2 -2
  151. package/dist/components/reading-column.js +1 -1
  152. package/dist/components/record-identity.d.ts.map +1 -1
  153. package/dist/components/record-identity.js +2 -5
  154. package/dist/components/record-list.d.ts.map +1 -1
  155. package/dist/components/record-list.js +4 -3
  156. package/dist/components/record-sheet.js +1 -1
  157. package/dist/components/record-time.d.ts.map +1 -1
  158. package/dist/components/record-time.js +2 -1
  159. package/dist/components/resizable.d.ts.map +1 -1
  160. package/dist/components/resizable.js +1 -1
  161. package/dist/components/row-edit-form.d.ts +2 -1
  162. package/dist/components/row-edit-form.d.ts.map +1 -1
  163. package/dist/components/row-edit-form.js +2 -1
  164. package/dist/components/run-timeline.js +1 -1
  165. package/dist/components/scope-switcher.js +1 -1
  166. package/dist/components/segmented-control.js +1 -1
  167. package/dist/components/select.js +1 -1
  168. package/dist/components/settings-facts.js +1 -1
  169. package/dist/components/settings-section.js +1 -1
  170. package/dist/components/sheet.d.ts +1 -1
  171. package/dist/components/sheet.d.ts.map +1 -1
  172. package/dist/components/sheet.js +1 -1
  173. package/dist/components/sidebar.d.ts +2 -2
  174. package/dist/components/sidebar.d.ts.map +1 -1
  175. package/dist/components/sidebar.js +16 -18
  176. package/dist/components/site-menu.d.ts +28 -0
  177. package/dist/components/site-menu.d.ts.map +1 -0
  178. package/dist/components/site-menu.js +23 -0
  179. package/dist/components/slider.d.ts.map +1 -1
  180. package/dist/components/slider.js +2 -1
  181. package/dist/components/snippet.d.ts +2 -0
  182. package/dist/components/snippet.d.ts.map +1 -1
  183. package/dist/components/snippet.js +13 -6
  184. package/dist/components/sonner.d.ts.map +1 -1
  185. package/dist/components/sonner.js +3 -4
  186. package/dist/components/status-badge.d.ts +1 -1
  187. package/dist/components/status-badge.d.ts.map +1 -1
  188. package/dist/components/switch.js +1 -1
  189. package/dist/components/table-card.js +1 -1
  190. package/dist/components/table.js +4 -4
  191. package/dist/components/tabs-nav.d.ts +52 -0
  192. package/dist/components/tabs-nav.d.ts.map +1 -0
  193. package/dist/components/tabs-nav.js +95 -0
  194. package/dist/components/tabs.d.ts +2 -56
  195. package/dist/components/tabs.d.ts.map +1 -1
  196. package/dist/components/tabs.js +2 -91
  197. package/dist/components/text-link.d.ts +1 -2
  198. package/dist/components/text-link.d.ts.map +1 -1
  199. package/dist/components/text-link.js +1 -2
  200. package/dist/components/textarea.d.ts +5 -2
  201. package/dist/components/textarea.d.ts.map +1 -1
  202. package/dist/components/textarea.js +12 -4
  203. package/dist/components/toast.d.ts +2 -0
  204. package/dist/components/toast.d.ts.map +1 -1
  205. package/dist/components/toast.js +4 -0
  206. package/dist/components/toggle-group.d.ts +3 -1
  207. package/dist/components/toggle-group.d.ts.map +1 -1
  208. package/dist/components/toggle-group.js +3 -6
  209. package/dist/components/toggle.js +1 -1
  210. package/dist/components/tooltip.d.ts +12 -12
  211. package/dist/components/tooltip.d.ts.map +1 -1
  212. package/dist/components/tooltip.js +9 -9
  213. package/dist/components/trend-badge.js +2 -2
  214. package/dist/components/update-card.js +1 -1
  215. package/dist/components/usage-meter.d.ts +1 -1
  216. package/dist/components/usage-meter.d.ts.map +1 -1
  217. package/dist/components/usage-meter.js +9 -7
  218. package/dist/components/waiting-line.js +1 -1
  219. package/dist/index.d.ts +3 -7
  220. package/dist/index.d.ts.map +1 -1
  221. package/dist/index.js +3 -7
  222. package/dist/internal/agent-orb-motion.d.ts +4 -1
  223. package/dist/internal/agent-orb-motion.d.ts.map +1 -1
  224. package/dist/internal/agent-orb-motion.js +9 -7
  225. package/dist/internal/agent-orb.d.ts +4 -1
  226. package/dist/internal/agent-orb.d.ts.map +1 -1
  227. package/dist/internal/agent-orb.js +7 -1
  228. package/dist/internal/assistant-ui/attachment.d.ts.map +1 -1
  229. package/dist/internal/assistant-ui/attachment.js +15 -15
  230. package/dist/internal/assistant-ui/follow-up-suggestions.js +1 -1
  231. package/dist/internal/assistant-ui/markdown-text.js +26 -25
  232. package/dist/internal/assistant-ui/reasoning.d.ts.map +1 -1
  233. package/dist/internal/assistant-ui/reasoning.js +13 -16
  234. package/dist/internal/assistant-ui/thread.d.ts.map +1 -1
  235. package/dist/internal/assistant-ui/thread.js +22 -16
  236. package/dist/internal/assistant-ui/tool-fallback.d.ts.map +1 -1
  237. package/dist/internal/assistant-ui/tool-fallback.js +29 -21
  238. package/dist/internal/assistant-ui/tool-group.d.ts.map +1 -1
  239. package/dist/internal/assistant-ui/tool-group.js +6 -7
  240. package/dist/internal/assistant-ui/tooltip-icon-button.js +1 -1
  241. package/dist/internal/badge-frame.d.ts +15 -0
  242. package/dist/internal/badge-frame.d.ts.map +1 -0
  243. package/dist/internal/badge-frame.js +44 -0
  244. package/dist/internal/button-classes.d.ts +20 -0
  245. package/dist/internal/button-classes.d.ts.map +1 -0
  246. package/dist/internal/button-classes.js +74 -0
  247. package/dist/internal/catalog-list.d.ts.map +1 -1
  248. package/dist/internal/catalog-list.js +8 -4
  249. package/dist/internal/collection-rail.js +3 -3
  250. package/dist/internal/form-drawer-frame.d.ts +10 -0
  251. package/dist/internal/form-drawer-frame.d.ts.map +1 -0
  252. package/dist/internal/form-drawer-frame.js +9 -0
  253. package/dist/internal/form-submit.d.ts +2 -1
  254. package/dist/internal/form-submit.d.ts.map +1 -1
  255. package/dist/internal/settings-save.d.ts.map +1 -1
  256. package/dist/internal/settings-save.js +4 -2
  257. package/dist/internal/status-mark.d.ts.map +1 -1
  258. package/dist/internal/status-mark.js +4 -1
  259. package/dist/internal/tab-row.d.ts +10 -0
  260. package/dist/internal/tab-row.d.ts.map +1 -0
  261. package/dist/internal/tab-row.js +2 -0
  262. package/dist/internal/table-compact-line.d.ts +1 -1
  263. package/dist/internal/table-compact-line.d.ts.map +1 -1
  264. package/dist/internal/table-compact-line.js +1 -1
  265. package/dist/internal/tooltip-content-frame.d.ts +14 -0
  266. package/dist/internal/tooltip-content-frame.d.ts.map +1 -0
  267. package/dist/internal/tooltip-content-frame.js +11 -0
  268. package/dist/lib/css-variables.d.ts +8 -0
  269. package/dist/lib/css-variables.d.ts.map +1 -0
  270. package/dist/lib/css-variables.js +4 -0
  271. package/dist/lib/merge-tokens.generated.js +1 -1
  272. package/dist/lib/use-copy-to-clipboard.d.ts.map +1 -1
  273. package/dist/lib/use-copy-to-clipboard.js +1 -2
  274. package/dist/showcase/samples.js +1 -1
  275. package/dist/showcase/specimens/choices.d.ts.map +1 -1
  276. package/dist/showcase/specimens/choices.js +3 -2
  277. package/dist/showcase/specimens/compositions.d.ts.map +1 -1
  278. package/dist/showcase/specimens/compositions.js +7 -5
  279. package/dist/showcase/specimens/data.d.ts.map +1 -1
  280. package/dist/showcase/specimens/data.js +1 -1
  281. package/dist/showcase/specimens/feedback.d.ts.map +1 -1
  282. package/dist/showcase/specimens/feedback.js +1 -2
  283. package/dist/showcase/specimens/index.d.ts +2 -0
  284. package/dist/showcase/specimens/index.d.ts.map +1 -1
  285. package/dist/showcase/specimens/inputs.d.ts +1 -0
  286. package/dist/showcase/specimens/inputs.d.ts.map +1 -1
  287. package/dist/showcase/specimens/inputs.js +5 -2
  288. package/dist/showcase/specimens/menus.d.ts +1 -0
  289. package/dist/showcase/specimens/menus.d.ts.map +1 -1
  290. package/dist/showcase/specimens/menus.js +7 -2
  291. package/dist/showcase/specimens/navigation.d.ts.map +1 -1
  292. package/dist/showcase/specimens/navigation.js +6 -5
  293. package/dist/showcase/specimens/status.d.ts.map +1 -1
  294. package/dist/showcase/specimens/status.js +4 -4
  295. package/dist/showcase/usage.generated.d.ts +1 -1
  296. package/dist/showcase/usage.generated.d.ts.map +1 -1
  297. package/dist/showcase/usage.generated.js +39 -17
  298. package/dist/standalone/index.js +1 -1
  299. package/dist/standalone/orb-page.js +10 -8
  300. package/dist/styles/components.css +14 -19
  301. package/package.json +32 -33
  302. package/dist/eslint/index.js +0 -224
  303. package/dist/eslint/rules/badge-is-static-label.js +0 -93
  304. package/dist/eslint/rules/button-icon-slot.js +0 -102
  305. package/dist/eslint/rules/button-link-for-navigation.js +0 -146
  306. package/dist/eslint/rules/button-no-aria-label-with-text.js +0 -75
  307. package/dist/eslint/rules/button-type-roles-only-in-buttons.js +0 -83
  308. package/dist/eslint/rules/choice-control-has-a-name.js +0 -98
  309. package/dist/eslint/rules/choice-group-in-fieldset.js +0 -86
  310. package/dist/eslint/rules/command-shortcut-single-owner.js +0 -118
  311. package/dist/eslint/rules/confirm-dialog-words.js +0 -63
  312. package/dist/eslint/rules/data-table-one-unsized-column.js +0 -96
  313. package/dist/eslint/rules/destructive-action-placement.js +0 -69
  314. package/dist/eslint/rules/disabled-choice-says-why.js +0 -71
  315. package/dist/eslint/rules/disabled-control-appearance.js +0 -75
  316. package/dist/eslint/rules/ellipsis-opens-a-dialog.js +0 -110
  317. package/dist/eslint/rules/empty-state-owner.js +0 -145
  318. package/dist/eslint/rules/input-group-owners.js +0 -155
  319. package/dist/eslint/rules/jsx-class-utility.js +0 -200
  320. package/dist/eslint/rules/kbd-children-no-modifier-text.js +0 -128
  321. package/dist/eslint/rules/literal-text.js +0 -41
  322. package/dist/eslint/rules/menu-owner.js +0 -75
  323. package/dist/eslint/rules/middle-truncate-placement.js +0 -69
  324. package/dist/eslint/rules/no-app-feature-component.js +0 -100
  325. package/dist/eslint/rules/no-bare-button-label.js +0 -55
  326. package/dist/eslint/rules/no-choice-control-wrapper.js +0 -97
  327. package/dist/eslint/rules/no-comment.js +0 -77
  328. package/dist/eslint/rules/no-control-in-read-only-surface.js +0 -106
  329. package/dist/eslint/rules/no-decorative-icon.js +0 -164
  330. package/dist/eslint/rules/no-deprecated-zod-api.js +0 -215
  331. package/dist/eslint/rules/no-global-patch.js +0 -115
  332. package/dist/eslint/rules/no-hand-built-busy.js +0 -104
  333. package/dist/eslint/rules/no-hand-built-theme-picker.js +0 -144
  334. package/dist/eslint/rules/no-hand-built-tile.js +0 -41
  335. package/dist/eslint/rules/no-hand-formatted-date.js +0 -87
  336. package/dist/eslint/rules/no-hand-stacked-avatars.js +0 -67
  337. package/dist/eslint/rules/no-nested-collapse.js +0 -60
  338. package/dist/eslint/rules/no-package-component-redefinition.js +0 -175
  339. package/dist/eslint/rules/no-search-in-form.js +0 -47
  340. package/dist/eslint/rules/no-shadcn-appearance-override.js +0 -305
  341. package/dist/eslint/rules/no-shell-prompt-in-snippet.js +0 -74
  342. package/dist/eslint/rules/no-stock-error-words.js +0 -56
  343. package/dist/eslint/rules/no-subject-derived-expectation.js +0 -183
  344. package/dist/eslint/rules/no-tooltip-around-labelled-field.js +0 -72
  345. package/dist/eslint/rules/no-weight-class-on-strong-in-type-role.js +0 -57
  346. package/dist/eslint/rules/no-write-in-subscription.js +0 -140
  347. package/dist/eslint/rules/one-submenu-level.js +0 -43
  348. package/dist/eslint/rules/one-toast-per-flow.js +0 -91
  349. package/dist/eslint/rules/option-count.js +0 -167
  350. package/dist/eslint/rules/page-command-link-not-render.js +0 -43
  351. package/dist/eslint/rules/page-composition.js +0 -232
  352. package/dist/eslint/rules/progress-needs-name.js +0 -57
  353. package/dist/eslint/rules/rendered-import.js +0 -121
  354. package/dist/eslint/rules/server-action-discipline.js +0 -233
  355. package/dist/eslint/rules/settings-limit-in-footer.js +0 -94
  356. package/dist/eslint/rules/skeleton-in-region.js +0 -80
  357. package/dist/eslint/rules/sortable-heading-uses-sort.js +0 -79
  358. package/dist/eslint/rules/table-cell-inset-owner.js +0 -107
  359. package/dist/eslint/rules/tabs-selection-is-controlled.js +0 -47
  360. package/dist/eslint/rules/test-files-from-one-definition.js +0 -67
  361. package/dist/eslint/rules/tooltip-only-arrow.js +0 -38
  362. package/dist/eslint/rules/tooltip-trigger-accessible-name.js +0 -114
  363. package/dist/eslint/rules/workspace-declares-imports.js +0 -163
  364. package/dist/eslint/strict-design-system.js +0 -250
@@ -24,5 +24,5 @@ function NarrowUpdate(props) {
24
24
  const button = props.state === "available" ? (_jsx(Button, { "aria-label": `${props.action.pending ? (props.action.pendingLabel ?? props.action.label) : props.action.label}: ${props.version}`, disabled: props.action.disabled, loading: props.action.pending, size: "icon", variant: "ghost", ...(props.action.render
25
25
  ? { render: props.action.render, nativeButton: false }
26
26
  : { onClick: props.action.onClick, type: "button" }), children: _jsx(ArrowDownToLine, { "aria-hidden": "true" }) })) : (_jsx(Button, { "aria-label": `${props.dismiss.label}: ${props.title}`, onClick: props.dismiss.onClick, size: "icon", type: "button", variant: "ghost", children: _jsx(CircleCheck, { "aria-hidden": "true" }) }));
27
- return (_jsxs(Tooltip, { children: [_jsx(TooltipTrigger, { render: button }), _jsxs(TooltipContent, { side: "right", children: [props.title, ", ", props.version] })] }));
27
+ return (_jsxs(Tooltip, { children: [_jsx(TooltipTrigger, { render: button }), _jsx(TooltipContent, { side: "right", children: `${props.title}, ${props.version}` })] }));
28
28
  }
@@ -15,7 +15,7 @@ import * as React from "react";
15
15
  * @access The meter's printed figures are the reading; its track is decorative.
16
16
  */
17
17
  declare function UsageMeter({ className, fields, trailing, usage, children, ...props }: Omit<React.ComponentProps<"div">, "children"> & {
18
- fields?: string[];
18
+ fields?: readonly string[];
19
19
  trailing?: string;
20
20
  usage?: number | string;
21
21
  children?: React.ReactNode;
@@ -1 +1 @@
1
- {"version":3,"file":"usage-meter.d.ts","sourceRoot":"","sources":["../../src/components/usage-meter.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAK/B;;;;;;;;;;;;;;GAcG;AACH,iBAAS,UAAU,CAAC,EAClB,SAAS,EACT,MAAW,EACX,QAAQ,EACR,KAAK,EACL,QAAQ,EACR,GAAG,KAAK,EACT,EAAE,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,KAAK,CAAC,EAAE,UAAU,CAAC,GAAG;IACjD,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IACxB,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;CAC5B,qBAqCA;AAED,OAAO,EAAE,UAAU,EAAE,CAAC"}
1
+ {"version":3,"file":"usage-meter.d.ts","sourceRoot":"","sources":["../../src/components/usage-meter.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAO/B;;;;;;;;;;;;;;GAcG;AACH,iBAAS,UAAU,CAAC,EAClB,SAAS,EACT,MAAkB,EAClB,QAAQ,EACR,KAAK,EACL,QAAQ,EACR,GAAG,KAAK,EACT,EAAE,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,KAAK,CAAC,EAAE,UAAU,CAAC,GAAG;IACjD,MAAM,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IAC3B,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IACxB,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;CAC5B,qBAwCA;AAED,OAAO,EAAE,UAAU,EAAE,CAAC"}
@@ -1,6 +1,8 @@
1
1
  import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
2
2
  import * as React from "react";
3
3
  import { cn } from "../lib/utils.js";
4
+ import { cssVariables } from "../lib/css-variables.js";
5
+ const NO_FIELDS = [];
4
6
  /**
5
7
  * Consumption against an allowance in a dense spot.
6
8
  *
@@ -16,12 +18,12 @@ import { cn } from "../lib/utils.js";
16
18
  * uppercase mono by the stylesheet, so they are written in sentence case.
17
19
  * @access The meter's printed figures are the reading; its track is decorative.
18
20
  */
19
- function UsageMeter({ className, fields = [], trailing, usage, children, ...props }) {
20
- const hasMeta = fields.length > 0 || trailing != null || children != null;
21
- return (_jsxs("div", { "data-slot": "usage-meter", className: cn("nc-usage-meter", className), ...props, children: [hasMeta && (_jsxs("div", { className: "nc-usage-meter-meta", children: [fields.map((field, index) => (_jsxs(React.Fragment, { children: [index > 0 && _jsx("span", { className: "nc-usage-meter-sep", children: "/" }), _jsx("span", { children: field })] }, index))), trailing != null && (_jsxs(_Fragment, { children: [_jsx("span", { className: "nc-usage-meter-spacer" }), _jsx("span", { children: trailing })] })), children != null && _jsx("span", { "data-slot": "usage-meter-slot", children: children })] })), usage != null && (_jsx("div", { className: "nc-usage-meter-track", children: _jsx("div", { className: "nc-usage-meter-fill",
22
- // SAFETY: CSSProperties lists only standard properties; React sets each `--` custom property key here through style.setProperty.
23
- style:
24
- // oxlint-disable-next-line anti-slop/no-runtime-typeof -- usage is our own number | string prop: a number is a percentage, a string a CSS length.
25
- { "--nc-usage": typeof usage === "number" ? `${usage}%` : usage } }) }))] }));
21
+ function UsageMeter({ className, fields = NO_FIELDS, trailing, usage, children, ...props }) {
22
+ const hasMeta = fields.length > 0 ||
23
+ (trailing !== null && trailing !== undefined) ||
24
+ (children !== null && children !== undefined);
25
+ return (_jsxs("div", { "data-slot": "usage-meter", className: cn("nc-usage-meter", className), ...props, children: [hasMeta && (_jsxs("div", { className: "nc-usage-meter-meta", children: [fields.map((field, index) => (_jsxs(React.Fragment, { children: [index > 0 && _jsx("span", { className: "nc-usage-meter-sep", children: "/" }), _jsx("span", { children: field })] }, index))), trailing !== null && trailing !== undefined && (_jsxs(_Fragment, { children: [_jsx("span", { className: "nc-usage-meter-spacer" }), _jsx("span", { children: trailing })] })), children !== null && children !== undefined && (_jsx("span", { "data-slot": "usage-meter-slot", children: children }))] })), usage !== null && usage !== undefined && (_jsx("div", { className: "nc-usage-meter-track", children: _jsx("div", { className: "nc-usage-meter-fill", style: cssVariables({
26
+ "--nc-usage": typeof usage === "number" ? `${usage}%` : usage,
27
+ }) }) }))] }));
26
28
  }
27
29
  export { UsageMeter };
@@ -41,7 +41,7 @@ function WaitingLine({ className, decorative = false, label, waiting, ...props }
41
41
  }, [waiting]);
42
42
  const elapsed = waiting && elapsedWait;
43
43
  const announced = elapsed && !decorative;
44
- return (_jsx("div", { ...props, "aria-label": announced ? label : undefined, className: cn("relative h-0.5 w-full overflow-hidden", className), "data-slot": "waiting-line", "data-waiting": elapsed || undefined, role: announced ? "status" : undefined, children: elapsed ? (_jsx("span", { "aria-hidden": "true", className: "nc-anim-wait absolute inset-y-0 start-0 block bg-current" })) : null }));
44
+ return (_jsx("div", { ...props, "aria-label": announced ? label : undefined, className: cn("relative h-0.5 w-full overflow-hidden", className), "data-slot": "waiting-line", "data-waiting": elapsed || undefined, role: announced ? "status" : undefined, children: elapsed ? (_jsx("span", { "aria-hidden": "true", className: "nc-anim-wait absolute inset-y-0 inset-s-0 block bg-current" })) : null }));
45
45
  }
46
46
  /** A record's wait in its row: the detail line naming the work, with the waiting line along the bottom of the detail's own box, out of the flow but inside a row that clips its detail, so the row keeps its height when its detail turns into the wait. */
47
47
  function WaitingDetail({ work }) {
package/dist/index.d.ts CHANGED
@@ -23,7 +23,6 @@ export * from "./components/calendar.js";
23
23
  export * from "./components/card.js";
24
24
  export * from "./components/card-row.js";
25
25
  export * from "./components/catalog-drawer.js";
26
- export * from "./components/chart.js";
27
26
  export * from "./components/chart-area-stacked.js";
28
27
  export * from "./components/chart-bar-horizontal.js";
29
28
  export * from "./components/chart-bar-multiple.js";
@@ -48,7 +47,6 @@ export * from "./components/combobox.js";
48
47
  export * from "./components/command.js";
49
48
  export * from "./components/company-card.js";
50
49
  export * from "./components/confirm-dialog.js";
51
- export * from "./components/context-menu.js";
52
50
  export * from "./components/copy-button.js";
53
51
  export * from "./components/data-table.js";
54
52
  export * from "./components/dialog.js";
@@ -56,23 +54,21 @@ export * from "./components/diff-count.js";
56
54
  export * from "./components/disclosure.js";
57
55
  export * from "./components/disclosure-row.js";
58
56
  export * from "./components/drawer.js";
59
- export * from "./components/dropdown-menu.js";
60
57
  export * from "./components/empty-state.js";
61
58
  export * from "./components/entry-scene.js";
62
59
  export * from "./components/field.js";
63
60
  export * from "./components/file-diff.js";
64
61
  export * from "./components/file-type-icon.js";
65
62
  export * from "./components/footer.js";
63
+ export * from "./components/form.js";
66
64
  export * from "./components/form-dialog.js";
67
65
  export * from "./components/form-drawer.js";
68
66
  export * from "./components/gauge.js";
69
67
  export * from "./components/glass-control.js";
70
68
  export * from "./components/hive-scene.js";
71
69
  export * from "./components/house-icons.js";
72
- export * from "./components/hover-card.js";
73
70
  export * from "./components/identity-mark.js";
74
71
  export * from "./components/input.js";
75
- export * from "./components/input-group.js";
76
72
  export * from "./components/input-otp.js";
77
73
  export * from "./components/item.js";
78
74
  export * from "./components/kbd.js";
@@ -82,7 +78,6 @@ export * from "./components/library-shelf.js";
82
78
  export * from "./components/load-more-button.js";
83
79
  export * from "./components/menu-choice-row.js";
84
80
  export * from "./components/message-notice.js";
85
- export * from "./components/middle-truncate.js";
86
81
  export * from "./components/model-identity.js";
87
82
  export * from "./components/model-mark.js";
88
83
  export * from "./components/multi-select.js";
@@ -97,7 +92,6 @@ export * from "./components/overview-page.js";
97
92
  export * from "./components/page-actions.js";
98
93
  export * from "./components/page-header.js";
99
94
  export * from "./components/pairing-code.js";
100
- export * from "./components/pending-label.js";
101
95
  export * from "./components/platform-mark.js";
102
96
  export * from "./components/popover.js";
103
97
  export * from "./components/portal-sidebar-frame.js";
@@ -125,6 +119,7 @@ export * from "./components/settings-section.js";
125
119
  export * from "./components/sheet.js";
126
120
  export * from "./components/sidebar.js";
127
121
  export * from "./components/sidebar-sections.js";
122
+ export * from "./components/site-menu.js";
128
123
  export * from "./components/skeleton.js";
129
124
  export * from "./components/slider.js";
130
125
  export * from "./components/snippet.js";
@@ -135,6 +130,7 @@ export * from "./components/table.js";
135
130
  export * from "./components/table-card.js";
136
131
  export * from "./components/table-value.js";
137
132
  export * from "./components/tabs.js";
133
+ export * from "./components/tabs-nav.js";
138
134
  export * from "./components/tag.js";
139
135
  export * from "./components/text-link.js";
140
136
  export * from "./components/text-with-copy-button.js";
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/dist/index.js CHANGED
@@ -23,7 +23,6 @@ export * from "./components/calendar.js";
23
23
  export * from "./components/card.js";
24
24
  export * from "./components/card-row.js";
25
25
  export * from "./components/catalog-drawer.js";
26
- export * from "./components/chart.js";
27
26
  export * from "./components/chart-area-stacked.js";
28
27
  export * from "./components/chart-bar-horizontal.js";
29
28
  export * from "./components/chart-bar-multiple.js";
@@ -48,7 +47,6 @@ export * from "./components/combobox.js";
48
47
  export * from "./components/command.js";
49
48
  export * from "./components/company-card.js";
50
49
  export * from "./components/confirm-dialog.js";
51
- export * from "./components/context-menu.js";
52
50
  export * from "./components/copy-button.js";
53
51
  export * from "./components/data-table.js";
54
52
  export * from "./components/dialog.js";
@@ -56,23 +54,21 @@ export * from "./components/diff-count.js";
56
54
  export * from "./components/disclosure.js";
57
55
  export * from "./components/disclosure-row.js";
58
56
  export * from "./components/drawer.js";
59
- export * from "./components/dropdown-menu.js";
60
57
  export * from "./components/empty-state.js";
61
58
  export * from "./components/entry-scene.js";
62
59
  export * from "./components/field.js";
63
60
  export * from "./components/file-diff.js";
64
61
  export * from "./components/file-type-icon.js";
65
62
  export * from "./components/footer.js";
63
+ export * from "./components/form.js";
66
64
  export * from "./components/form-dialog.js";
67
65
  export * from "./components/form-drawer.js";
68
66
  export * from "./components/gauge.js";
69
67
  export * from "./components/glass-control.js";
70
68
  export * from "./components/hive-scene.js";
71
69
  export * from "./components/house-icons.js";
72
- export * from "./components/hover-card.js";
73
70
  export * from "./components/identity-mark.js";
74
71
  export * from "./components/input.js";
75
- export * from "./components/input-group.js";
76
72
  export * from "./components/input-otp.js";
77
73
  export * from "./components/item.js";
78
74
  export * from "./components/kbd.js";
@@ -82,7 +78,6 @@ export * from "./components/library-shelf.js";
82
78
  export * from "./components/load-more-button.js";
83
79
  export * from "./components/menu-choice-row.js";
84
80
  export * from "./components/message-notice.js";
85
- export * from "./components/middle-truncate.js";
86
81
  export * from "./components/model-identity.js";
87
82
  export * from "./components/model-mark.js";
88
83
  export * from "./components/multi-select.js";
@@ -97,7 +92,6 @@ export * from "./components/overview-page.js";
97
92
  export * from "./components/page-actions.js";
98
93
  export * from "./components/page-header.js";
99
94
  export * from "./components/pairing-code.js";
100
- export * from "./components/pending-label.js";
101
95
  export * from "./components/platform-mark.js";
102
96
  export * from "./components/popover.js";
103
97
  export * from "./components/portal-sidebar-frame.js";
@@ -125,6 +119,7 @@ export * from "./components/settings-section.js";
125
119
  export * from "./components/sheet.js";
126
120
  export * from "./components/sidebar.js";
127
121
  export * from "./components/sidebar-sections.js";
122
+ export * from "./components/site-menu.js";
128
123
  export * from "./components/skeleton.js";
129
124
  export * from "./components/slider.js";
130
125
  export * from "./components/snippet.js";
@@ -135,6 +130,7 @@ export * from "./components/table.js";
135
130
  export * from "./components/table-card.js";
136
131
  export * from "./components/table-value.js";
137
132
  export * from "./components/tabs.js";
133
+ export * from "./components/tabs-nav.js";
138
134
  export * from "./components/tag.js";
139
135
  export * from "./components/text-link.js";
140
136
  export * from "./components/text-with-copy-button.js";
@@ -1,5 +1,7 @@
1
1
  import type { AgentOrbFigure } from "./agent-orb.js";
2
- export type AgentOrbState = "idle" | "working" | "waiting" | "blocked" | "thinking" | "done";
2
+ declare const agentOrbStates: readonly ["idle", "working", "waiting", "blocked", "thinking", "done"];
3
+ export type AgentOrbState = (typeof agentOrbStates)[number];
4
+ export declare const isAgentOrbState: (value: string) => value is AgentOrbState;
3
5
  export declare function nativeSpeed(form: AgentOrbFigure): number;
4
6
  export declare function stateSpeed(state: AgentOrbState, form: AgentOrbFigure, age?: number, timing?: {
5
7
  wait: number;
@@ -55,4 +57,5 @@ ink?: number, timing?: {
55
57
  gestureAge: (age: number) => number;
56
58
  settle: (age: number, delay?: number) => number;
57
59
  }, statusColor?: string): void;
60
+ export {};
58
61
  //# sourceMappingURL=agent-orb-motion.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"agent-orb-motion.d.ts","sourceRoot":"","sources":["../../src/internal/agent-orb-motion.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAElD,MAAM,MAAM,aAAa,GAAG,MAAM,GAAG,SAAS,GAAG,SAAS,GAAG,SAAS,GAAG,UAAU,GAAG,MAAM,CAAC;AAc7F,wBAAgB,WAAW,CAAC,IAAI,EAAE,cAAc,UAE/C;AAED,wBAAgB,UAAU,CACxB,KAAK,EAAE,aAAa,EACpB,IAAI,EAAE,cAAc,EACpB,GAAG,SAAI,EACP,MAAM;;;;;;sBA6Cc,MAAM;kBACV,MAAM;CA9CA,UAWvB;AAED,eAAO,MAAM,cAAc;;;CAAqC,CAAC;AAKjE;;;;GAIG;AACH,wBAAgB,aAAa,CAAC,KAAK,EAAE,aAAa,EAAE,OAAO,EAAE,MAAM,UAIlE;AAED,wBAAgB,aAAa,CAAC,KAAK,CAAC,EAAE,mBAAmB;;;;;;sBAgBnC,MAAM;kBACV,MAAM;EAGvB;AAUD,wBAAgB,UAAU,CACxB,KAAK,EAAE,aAAa,EACpB,GAAG,EAAE,MAAM,EACX,MAAM;;;;;;sBAjBc,MAAM;kBACV,MAAM;CAgBA,EACtB,OAAO,UAAQ;;;;;;EA+ChB;AA6ED,wBAAgB,WAAW,CACzB,OAAO,EAAE,wBAAwB,EACjC,KAAK,EAAE,aAAa,EACpB,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,OAAO,EAChB,MAAM,EAAE,SAAS,MAAM,EAAE,EACzB,KAAK,EAAE,MAAM,GAAG,OAAO;AACvB,mFAAmF;AACnF,GAAG,SAAI,EACP,MAAM;;;;;;sBAxJc,MAAM;kBACV,MAAM;CAuJA,EACtB,WAAW,SAA8B,QA4E1C"}
1
+ {"version":3,"file":"agent-orb-motion.d.ts","sourceRoot":"","sources":["../../src/internal/agent-orb-motion.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAElD,QAAA,MAAM,cAAc,wEAAyE,CAAC;AAC9F,MAAM,MAAM,aAAa,GAAG,CAAC,OAAO,cAAc,CAAC,CAAC,MAAM,CAAC,CAAC;AAE5D,eAAO,MAAM,eAAe,GAAI,OAAO,MAAM,KAAG,KAAK,IAAI,aACR,CAAC;AAclD,wBAAgB,WAAW,CAAC,IAAI,EAAE,cAAc,UAE/C;AAED,wBAAgB,UAAU,CACxB,KAAK,EAAE,aAAa,EACpB,IAAI,EAAE,cAAc,EACpB,GAAG,SAAI,EACP,MAAM;;;;;;sBA6Cc,MAAM;kBACV,MAAM;CA9CA,UAWvB;AAED,eAAO,MAAM,cAAc;;;CAAqC,CAAC;AAKjE;;;;GAIG;AACH,wBAAgB,aAAa,CAAC,KAAK,EAAE,aAAa,EAAE,OAAO,EAAE,MAAM,UAIlE;AAED,wBAAgB,aAAa,CAAC,KAAK,CAAC,EAAE,mBAAmB;;;;;;sBAgBnC,MAAM;kBACV,MAAM;EAGvB;AAUD,wBAAgB,UAAU,CACxB,KAAK,EAAE,aAAa,EACpB,GAAG,EAAE,MAAM,EACX,MAAM;;;;;;sBAjBc,MAAM;kBACV,MAAM;CAgBA,EACtB,OAAO,UAAQ;;;;;;EA+ChB;AA6ED,wBAAgB,WAAW,CACzB,OAAO,EAAE,wBAAwB,EACjC,KAAK,EAAE,aAAa,EACpB,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,OAAO,EAChB,MAAM,EAAE,SAAS,MAAM,EAAE,EACzB,KAAK,EAAE,MAAM,GAAG,OAAO;AACvB,mFAAmF;AACnF,GAAG,SAAI,EACP,MAAM;;;;;;sBAxJc,MAAM;kBACV,MAAM;CAuJA,EACtB,WAAW,SAA8B,QA6E1C"}
@@ -1,4 +1,6 @@
1
1
  import { spring } from "motion";
2
+ const agentOrbStates = ["idle", "working", "waiting", "blocked", "thinking", "done"];
3
+ export const isAgentOrbState = (value) => agentOrbStates.some((state) => state === value);
2
4
  const personalities = {
3
5
  ribbon: { speed: 0.55 },
4
6
  nadia: { speed: 0.55 },
@@ -192,19 +194,19 @@ ink = 1, timing = defaultTiming, statusColor = colors[0] ?? "currentColor") {
192
194
  }
193
195
  if (state !== "working" && state !== "thinking" && state !== "done")
194
196
  return;
195
- seconds *=
196
- state === "done"
197
+ const elapsed = seconds *
198
+ (state === "done"
197
199
  ? 3.1 / timing.doneDuration
198
200
  : state === "working"
199
201
  ? 7.2 / (timing.wait * 2)
200
- : 3.6 / (timing.wait * 1.5);
202
+ : 3.6 / (timing.wait * 1.5));
201
203
  context.save();
202
204
  if (state === "thinking") {
203
205
  if (depth === "front") {
204
206
  for (let i = 0; i < 3; i++) {
205
207
  const pulse = reduced
206
208
  ? 0.5
207
- : (1 + Math.cos((seconds * Math.PI * 2) / 3.6 - (i * Math.PI * 2) / 3)) / 2;
209
+ : (1 + Math.cos((elapsed * Math.PI * 2) / 3.6 - (i * Math.PI * 2) / 3)) / 2;
208
210
  const dot = colors[i % colors.length];
209
211
  if (dot !== undefined)
210
212
  context.fillStyle = dot;
@@ -215,14 +217,14 @@ ink = 1, timing = defaultTiming, statusColor = colors[0] ?? "currentColor") {
215
217
  }
216
218
  }
217
219
  }
218
- else if (state === "working" || (!reduced && seconds < 3.1)) {
220
+ else if (state === "working" || (!reduced && elapsed < 3.1)) {
219
221
  const count = state === "done" ? 3 : 1;
220
222
  for (let wave = 0; wave < count; wave++) {
221
- const progress = state === "done" ? (seconds - wave * 0.38) / 2.2 : 0;
223
+ const progress = state === "done" ? (elapsed - wave * 0.38) / 2.2 : 0;
222
224
  if (progress < 0 || progress > 1)
223
225
  continue;
224
226
  const fade = state === "done" ? Math.sin(progress * Math.PI) : 1;
225
- const head = (reduced ? 0.8 : (seconds * Math.PI * 2) / 7.2) + wave * 2.1;
227
+ const head = (reduced ? 0.8 : (elapsed * Math.PI * 2) / 7.2) + wave * 2.1;
226
228
  const tailLength = Math.PI * 1.4;
227
229
  const tilt = -0.38 + wave * 0.4;
228
230
  const radiusX = size * (0.44 + progress * 0.03);
@@ -16,7 +16,10 @@ export type AgentOrbForm = keyof typeof agentOrbForms;
16
16
  * brand's five colours.
17
17
  */
18
18
  export type AgentOrbFigure = AgentOrbForm | "nadia" | "sofia";
19
- export type AgentOrbSize = 20 | 24 | 32 | 40 | 64 | 96 | 160;
19
+ export declare const isAgentOrbFigure: (value: string) => value is AgentOrbFigure;
20
+ declare const agentOrbSizes: readonly [20, 24, 32, 40, 64, 96, 160];
21
+ export type AgentOrbSize = (typeof agentOrbSizes)[number];
22
+ export declare const isAgentOrbSize: (value: number) => value is AgentOrbSize;
20
23
  /** How loudly one orb reads on its own ground. */
21
24
  export type AgentOrbPresence = "plain" | "over-picture";
22
25
  /** Status motion follows the Agent's real state; ambient motion shows only the native form. */
@@ -1 +1 @@
1
- {"version":3,"file":"agent-orb.d.ts","sourceRoot":"","sources":["../../src/internal/agent-orb.ts"],"names":[],"mappings":"AAAA,OAAO,EAIL,KAAK,QAAQ,EAEb,KAAK,QAAQ,EAId,MAAM,sBAAsB,CAAC;AAE9B,OAAO,EACL,KAAK,aAAa,EAQnB,MAAM,oBAAoB,CAAC;AAE5B,QAAA,MAAM,aAAa;;;;;;;;CAQ0B,CAAC;AAE9C,MAAM,MAAM,YAAY,GAAG,MAAM,OAAO,aAAa,CAAC;AACtD;;;;GAIG;AACH,MAAM,MAAM,cAAc,GAAG,YAAY,GAAG,OAAO,GAAG,OAAO,CAAC;AAC9D,MAAM,MAAM,YAAY,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,GAAG,CAAC;AAE7D,kDAAkD;AAClD,MAAM,MAAM,gBAAgB,GAAG,OAAO,GAAG,cAAc,CAAC;AACxD,+FAA+F;AAC/F,MAAM,MAAM,cAAc,GAAG,QAAQ,GAAG,SAAS,CAAC;AAgElD;;;;;GAKG;AACH,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,QAAQ,GAAG,QAAQ,CAuDpF;AAqJD,KAAK,iBAAiB,GAAG;IACvB,IAAI,EAAE,cAAc,CAAC;IACrB;;;OAGG;IACH,IAAI,EAAE,YAAY,CAAC;IACnB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,QAAQ,CAAC,EAAE,gBAAgB,CAAC;CAC7B,CAAC;AAEF,MAAM,MAAM,oBAAoB,GAAG,iBAAiB,GAClD,CAAC;IAAE,MAAM,CAAC,EAAE,QAAQ,CAAC;IAAC,KAAK,CAAC,EAAE,aAAa,CAAA;CAAE,GAAG;IAAE,MAAM,EAAE,SAAS,CAAC;IAAC,KAAK,CAAC,EAAE,KAAK,CAAA;CAAE,CAAC,CAAC;AAmIxF,eAAO,MAAM,qBAAqB,MAAM,CAAC;AAEzC,wBAAgB,aAAa,CAAC,MAAM,EAAE,iBAAiB,EAAE,OAAO,EAAE,oBAAoB;;sBAIzC,OAAO;qBAAuB,aAAa;EA2LvF"}
1
+ {"version":3,"file":"agent-orb.d.ts","sourceRoot":"","sources":["../../src/internal/agent-orb.ts"],"names":[],"mappings":"AAAA,OAAO,EAIL,KAAK,QAAQ,EAEb,KAAK,QAAQ,EAId,MAAM,sBAAsB,CAAC;AAE9B,OAAO,EACL,KAAK,aAAa,EAQnB,MAAM,oBAAoB,CAAC;AAE5B,QAAA,MAAM,aAAa;;;;;;;;CAQ0B,CAAC;AAE9C,MAAM,MAAM,YAAY,GAAG,MAAM,OAAO,aAAa,CAAC;AACtD;;;;GAIG;AACH,MAAM,MAAM,cAAc,GAAG,YAAY,GAAG,OAAO,GAAG,OAAO,CAAC;AAE9D,eAAO,MAAM,gBAAgB,GAAI,OAAO,MAAM,KAAG,KAAK,IAAI,cACqB,CAAC;AAEhF,QAAA,MAAM,aAAa,wCAAyC,CAAC;AAC7D,MAAM,MAAM,YAAY,GAAG,CAAC,OAAO,aAAa,CAAC,CAAC,MAAM,CAAC,CAAC;AAE1D,eAAO,MAAM,cAAc,GAAI,OAAO,MAAM,KAAG,KAAK,IAAI,YACV,CAAC;AAE/C,kDAAkD;AAClD,MAAM,MAAM,gBAAgB,GAAG,OAAO,GAAG,cAAc,CAAC;AACxD,+FAA+F;AAC/F,MAAM,MAAM,cAAc,GAAG,QAAQ,GAAG,SAAS,CAAC;AAgElD;;;;;GAKG;AACH,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,QAAQ,GAAG,QAAQ,CAuDpF;AAqJD,KAAK,iBAAiB,GAAG;IACvB,IAAI,EAAE,cAAc,CAAC;IACrB;;;OAGG;IACH,IAAI,EAAE,YAAY,CAAC;IACnB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,QAAQ,CAAC,EAAE,gBAAgB,CAAC;CAC7B,CAAC;AAEF,MAAM,MAAM,oBAAoB,GAAG,iBAAiB,GAClD,CAAC;IAAE,MAAM,CAAC,EAAE,QAAQ,CAAC;IAAC,KAAK,CAAC,EAAE,aAAa,CAAA;CAAE,GAAG;IAAE,MAAM,EAAE,SAAS,CAAC;IAAC,KAAK,CAAC,EAAE,KAAK,CAAA;CAAE,CAAC,CAAC;AAmIxF,eAAO,MAAM,qBAAqB,MAAM,CAAC;AAEzC,wBAAgB,aAAa,CAAC,MAAM,EAAE,iBAAiB,EAAE,OAAO,EAAE,oBAAoB;;sBAIzC,OAAO;qBAAuB,aAAa;EA4LvF"}
@@ -9,6 +9,9 @@ const agentOrbForms = {
9
9
  ribbon: "composing",
10
10
  morph: "shaping",
11
11
  };
12
+ export const isAgentOrbFigure = (value) => Object.hasOwn(agentOrbForms, value) || value === "nadia" || value === "sofia";
13
+ const agentOrbSizes = [20, 24, 32, 40, 64, 96, 160];
14
+ export const isAgentOrbSize = (value) => agentOrbSizes.some((size) => size === value);
12
15
  /**
13
16
  * Presence belongs to the orb, not to the module: two orbs on one page can
14
17
  * want different weights. `plain` is the interface's own ink. `over-picture`
@@ -460,7 +463,10 @@ export function mountAgentOrb(canvas, options) {
460
463
  blocked: computedColor(appearance.tokens.get(statusTokens.blocked) || color),
461
464
  };
462
465
  celebrationColors = celebrationTokens.map((token) => computedColor(`color-mix(in oklch, ${appearance.tokens.get(token) || color} 75%, white)`));
463
- stripeColors = (figureStripes[form] ?? []).map((token) => (token && appearance.tokens.get(token)) || color);
466
+ stripeColors = (figureStripes[form] ?? []).map((token) => {
467
+ const resolved = token ? appearance.tokens.get(token) : undefined;
468
+ return resolved || color;
469
+ });
464
470
  resize(side);
465
471
  }
466
472
  function readResize() {
@@ -1 +1 @@
1
- {"version":3,"file":"attachment.d.ts","sourceRoot":"","sources":["../../../src/internal/assistant-ui/attachment.tsx"],"names":[],"mappings":"AAEA,OAAO,EAA+C,KAAK,EAAE,EAAkB,MAAM,OAAO,CAAC;AA2N7F,eAAO,MAAM,sBAAsB,EAAE,EAMpC,CAAC;AAEF,eAAO,MAAM,mBAAmB,EAAE,EAMjC,CAAC;AAEF,eAAO,MAAM,qBAAqB,EAAE,EAiBnC,CAAC"}
1
+ {"version":3,"file":"attachment.d.ts","sourceRoot":"","sources":["../../../src/internal/assistant-ui/attachment.tsx"],"names":[],"mappings":"AAEA,OAAO,EAA+C,KAAK,EAAE,EAAkB,MAAM,OAAO,CAAC;AA+M7F,eAAO,MAAM,sBAAsB,EAAE,EAMpC,CAAC;AAEF,eAAO,MAAM,mBAAmB,EAAE,EAMjC,CAAC;AAEF,eAAO,MAAM,qBAAqB,EAAE,EAiBnC,CAAC"}
@@ -4,26 +4,26 @@ import { useEffect, useState, isValidElement } from "react";
4
4
  import { XIcon, PlusIcon, FileText, AlertCircleIcon } from "lucide-react";
5
5
  import { AttachmentPrimitive, ComposerPrimitive, MessagePrimitive, useAuiState, useAui, } from "@assistant-ui/react";
6
6
  import { useShallow } from "zustand/shallow";
7
- import { Tooltip, TooltipContent, TooltipProvider, TooltipTrigger } from "../../components/tooltip.js";
7
+ import { Tooltip, TooltipProvider, TooltipTrigger } from "../../components/tooltip.js";
8
+ import { TooltipContentFrame } from "../tooltip-content-frame.js";
8
9
  import { Dialog, DialogTitle, DialogContent, DialogTrigger } from "../../components/dialog.js";
9
10
  import { Avatar, AvatarImage, AvatarFallback } from "../../components/avatar.js";
10
11
  import { WaitingLine } from "../../components/waiting-line.js";
11
12
  import { TooltipIconButton } from "./tooltip-icon-button.js";
12
13
  import { cn } from "../../lib/utils.js";
13
14
  const useFileSrc = (file) => {
14
- const [src, setSrc] = useState(undefined);
15
+ const [object, setObject] = useState(undefined);
15
16
  useEffect(() => {
16
- if (!file) {
17
- setSrc(undefined);
17
+ if (!file)
18
18
  return;
19
- }
20
19
  const objectUrl = URL.createObjectURL(file);
21
- setSrc(objectUrl);
20
+ // oxlint-disable-next-line react/set-state-in-effect -- the object URL is a browser resource this effect creates and its cleanup revokes; one made during render would be revoked by Strict Mode's second run while still on screen
21
+ setObject({ file, src: objectUrl });
22
22
  return () => {
23
23
  URL.revokeObjectURL(objectUrl);
24
24
  };
25
25
  }, [file]);
26
- return src;
26
+ return object !== undefined && object.file === file ? object.src : undefined;
27
27
  };
28
28
  const useAttachmentSrc = () => {
29
29
  const { file, src } = useAuiState(useShallow((s) => {
@@ -39,17 +39,17 @@ const useAttachmentSrc = () => {
39
39
  return useFileSrc(file) ?? src;
40
40
  };
41
41
  const AttachmentPreview = ({ src }) => {
42
- return (_jsx("img", { src: src, alt: "Attachment preview", className: "aui-attachment-preview-image block h-auto max-h-[80vh] w-auto max-w-full rounded-sm object-contain" }));
42
+ return (_jsx("img", { src: src, alt: "Attachment preview", className: "block size-auto max-h-[80vh] max-w-full rounded-sm object-contain" }));
43
43
  };
44
44
  const AttachmentPreviewDialog = ({ children }) => {
45
45
  const src = useAttachmentSrc();
46
46
  if (!src)
47
47
  return children;
48
- return (_jsxs(Dialog, { children: [_jsx(DialogTrigger, { nativeButton: false, className: "aui-attachment-preview-trigger", render: isValidElement(children) ? children : _jsx("button", { type: "button" }) }), _jsxs(DialogContent, { className: "aui-attachment-preview-dialog-content sm:max-w-3xl", closeLabel: "Close", children: [_jsx(DialogTitle, { className: "aui-sr-only sr-only", children: "Image Attachment Preview" }), _jsx("div", { className: "aui-attachment-preview bg-background relative mx-auto flex max-h-[80dvh] w-full items-center justify-center overflow-hidden rounded-sm", children: _jsx(AttachmentPreview, { src: src }) })] })] }));
48
+ return (_jsxs(Dialog, { children: [_jsx(DialogTrigger, { nativeButton: false, render: isValidElement(children) ? children : _jsx("button", { type: "button" }) }), _jsxs(DialogContent, { className: "sm:max-w-3xl", closeLabel: "Close", children: [_jsx(DialogTitle, { className: "sr-only", children: "Image Attachment Preview" }), _jsx("div", { className: "bg-background relative mx-auto flex max-h-[80dvh] w-full items-center justify-center overflow-hidden rounded-sm", children: _jsx(AttachmentPreview, { src: src }) })] })] }));
49
49
  };
50
50
  const AttachmentThumb = () => {
51
51
  const src = useAttachmentSrc();
52
- return (_jsxs(Avatar, { decorative: true, className: "aui-attachment-tile-avatar h-full w-full rounded-none after:hidden", children: [_jsx(AvatarImage, { src: src, alt: "Attachment preview", className: "aui-attachment-tile-image object-cover" }), _jsx(AvatarFallback, { children: _jsx(FileText, { className: "aui-attachment-tile-fallback-icon text-muted-foreground/80 size-6 stroke-[1.5]" }) })] }));
52
+ return (_jsxs(Avatar, { decorative: true, className: "size-full rounded-none after:hidden", children: [_jsx(AvatarImage, { src: src, alt: "Attachment preview", className: "object-cover" }), _jsx(AvatarFallback, { children: _jsx(FileText, { className: "text-muted-foreground/80 size-6 stroke-[1.5]" }) })] }));
53
53
  };
54
54
  const AttachmentUI = () => {
55
55
  const aui = useAui();
@@ -78,17 +78,17 @@ const AttachmentUI = () => {
78
78
  const errorMessage = useAuiState((s) => s.attachment.status.type === "incomplete" && s.attachment.status.reason === "error"
79
79
  ? (s.attachment.status.message ?? "Upload failed")
80
80
  : undefined);
81
- return (_jsx(TooltipProvider, { children: _jsxs(Tooltip, { children: [_jsxs(AttachmentPrimitive.Root, { className: cn("aui-attachment-root relative", isComposer && "nc-transition-opacity", isImage && !isComposer && "aui-attachment-root-message only:*:first:size-24"), children: [_jsx(AttachmentPreviewDialog, { children: _jsxs(TooltipTrigger, { render: _jsx("div", { className: cn("aui-attachment-tile nc-transition-transform relative size-14 cursor-pointer overflow-hidden rounded-[calc(var(--composer-radius)-var(--composer-padding))] bg-muted after:pointer-events-none after:absolute after:inset-0 after:rounded-[inherit] after:ring-1 after:ring-border after:ring-inset hover:after:bg-foreground/10", isError && "after:ring-destructive/60"), role: "button", tabIndex: 0, "aria-label": `${typeLabel} attachment${isError ? ", upload failed" : isUploading ? ", uploading" : ""}` }), children: [_jsx(AttachmentThumb, {}), isUploading && (_jsx("div", { "aria-hidden": "true", className: "aui-attachment-tile-uploading nc-transition-opacity absolute inset-0 flex items-center justify-center bg-muted", children: _jsx(WaitingLine, { className: "w-8", decorative: true, waiting: true }) })), isError && (_jsx("div", { "aria-hidden": "true", className: "aui-attachment-tile-error nc-transition-opacity absolute inset-0 flex items-center justify-center bg-muted", children: _jsx(AlertCircleIcon, { className: "text-destructive size-4" }) }))] }) }), isComposer && _jsx(AttachmentRemove, {})] }), _jsxs(TooltipContent, { side: "top", children: [_jsx(AttachmentPrimitive.Name, {}), errorMessage && _jsx("p", { className: "aui-attachment-error-message", children: errorMessage })] })] }) }));
81
+ return (_jsx(TooltipProvider, { children: _jsxs(Tooltip, { children: [_jsxs(AttachmentPrimitive.Root, { className: cn("relative", isComposer && "nc-transition-opacity", isImage && !isComposer && "only:*:first:size-24"), children: [_jsx(AttachmentPreviewDialog, { children: _jsxs(TooltipTrigger, { render: _jsx("div", { className: cn("nc-transition-transform relative size-14 cursor-pointer overflow-hidden rounded-[calc(var(--composer-radius)-var(--composer-padding))] bg-muted after:pointer-events-none after:absolute after:inset-0 after:rounded-[inherit] after:ring-1 after:ring-border after:ring-inset hover:after:bg-foreground/10", isError && "after:ring-destructive/60"), role: "button", tabIndex: 0, "aria-label": `${typeLabel} attachment${isError ? ", upload failed" : isUploading ? ", uploading" : ""}` }), children: [_jsx(AttachmentThumb, {}), isUploading && (_jsx("div", { "aria-hidden": "true", className: "nc-transition-opacity absolute inset-0 flex items-center justify-center bg-muted", children: _jsx(WaitingLine, { className: "w-8", decorative: true, waiting: true }) })), isError && (_jsx("div", { "aria-hidden": "true", className: "nc-transition-opacity absolute inset-0 flex items-center justify-center bg-muted", children: _jsx(AlertCircleIcon, { className: "text-destructive size-4" }) }))] }) }), isComposer && _jsx(AttachmentRemove, {})] }), _jsxs(TooltipContentFrame, { side: "top", children: [_jsx(AttachmentPrimitive.Name, {}), errorMessage && _jsx("p", { children: errorMessage })] })] }) }));
82
82
  };
83
83
  const AttachmentRemove = () => {
84
- return (_jsx(AttachmentPrimitive.Remove, { render: _jsx(TooltipIconButton, { tooltip: "Remove file", className: "aui-attachment-tile-remove absolute end-1 top-1 rounded-md bg-background nc-elevation-floating after:absolute after:-inset-1.5", side: "top" }), children: _jsx(XIcon, { className: "aui-attachment-remove-icon size-3 stroke-[2.5]" }) }));
84
+ return (_jsx(AttachmentPrimitive.Remove, { render: _jsx(TooltipIconButton, { tooltip: "Remove file", className: "absolute inset-e-1 top-1 rounded-md bg-background nc-elevation-floating after:absolute after:-inset-1.5", side: "top" }), children: _jsx(XIcon, { className: "size-3 stroke-[2.5]" }) }));
85
85
  };
86
86
  export const UserMessageAttachments = () => {
87
- return (_jsx("div", { className: "aui-user-message-attachments-end col-span-full col-start-1 row-start-1 flex w-full flex-row justify-end gap-2", children: _jsx(MessagePrimitive.Attachments, { children: () => _jsx(AttachmentUI, {}) }) }));
87
+ return (_jsx("div", { className: "col-span-full col-start-1 row-start-1 flex w-full flex-row justify-end gap-2", children: _jsx(MessagePrimitive.Attachments, { children: () => _jsx(AttachmentUI, {}) }) }));
88
88
  };
89
89
  export const ComposerAttachments = () => {
90
- return (_jsx("div", { className: "aui-composer-attachments flex w-full flex-row items-center gap-2 overflow-x-auto empty:hidden", children: _jsx(ComposerPrimitive.Attachments, { children: () => _jsx(AttachmentUI, {}) }) }));
90
+ return (_jsx("div", { className: "flex w-full flex-row items-center gap-2 overflow-x-auto empty:hidden", children: _jsx(ComposerPrimitive.Attachments, { children: () => _jsx(AttachmentUI, {}) }) }));
91
91
  };
92
92
  export const ComposerAddAttachment = () => {
93
- return (_jsx(ComposerPrimitive.AddAttachment, { render: _jsx(TooltipIconButton, { tooltip: "Add Attachment", side: "bottom", variant: "ghost", size: "icon", className: "aui-composer-add-attachment rounded-md p-1 text-xs font-semibold", "aria-label": "Add Attachment" }), children: _jsx(PlusIcon, { className: "aui-attachment-add-icon size-4.5 stroke-[1.5px]" }) }));
93
+ return (_jsx(ComposerPrimitive.AddAttachment, { render: _jsx(TooltipIconButton, { tooltip: "Add Attachment", side: "bottom", variant: "ghost", size: "icon", className: "rounded-md p-1 text-xs font-semibold", "aria-label": "Add Attachment" }), children: _jsx(PlusIcon, { className: "size-4.5 stroke-[1.5px]" }) }));
94
94
  };
@@ -3,7 +3,7 @@ import { jsx as _jsx } from "react/jsx-runtime";
3
3
  import { AuiIf, ThreadPrimitive, useAuiState } from "@assistant-ui/react";
4
4
  const FollowupSuggestionsRow = () => {
5
5
  const suggestions = useAuiState((s) => s.thread.suggestions);
6
- return (_jsx("div", { className: "aui-thread-followup-suggestions -my-1 w-full overflow-x-auto py-1 [-ms-overflow-style:none] [scrollbar-width:none] [&::-webkit-scrollbar]:hidden", children: _jsx("div", { className: "mx-auto flex min-h-8 w-max items-center gap-2 px-0.5", children: suggestions.map((suggestion, index) => (_jsx(ThreadPrimitive.Suggestion, { className: "aui-thread-followup-suggestion nc-transition-paint rounded-md border border-border bg-background px-3 py-1 text-sm whitespace-nowrap hover:bg-accent", prompt: suggestion.prompt,
6
+ return (_jsx("div", { className: "-my-1 w-full overflow-x-auto py-1 [-ms-overflow-style:none] scrollbar-none [&::-webkit-scrollbar]:hidden", children: _jsx("div", { className: "mx-auto flex min-h-8 w-max items-center gap-2 px-0.5", children: suggestions.map((suggestion, index) => (_jsx(ThreadPrimitive.Suggestion, { className: "nc-transition-paint rounded-md border border-border bg-background px-3 py-1 text-sm whitespace-nowrap hover:bg-accent", prompt: suggestion.prompt,
7
7
  // `method="replace"` + `autoSend` under their current names: the
8
8
  // library renamed them to `clearComposer` + `send` and deprecated
9
9
  // the old pair, with the same behaviour behind both.
@@ -2,7 +2,7 @@
2
2
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
3
3
  import { MarkdownTextPrimitive, memoizeMarkdownComponents, useIsMarkdownCodeBlock, } from "@assistant-ui/react-markdown";
4
4
  import remarkGfm from "remark-gfm";
5
- import { memo } from "react";
5
+ import { memo, startTransition } from "react";
6
6
  import { CheckIcon, CopyIcon } from "lucide-react";
7
7
  import { TooltipIconButton } from "./tooltip-icon-button.js";
8
8
  import { useCopyToClipboard } from "../../lib/use-copy-to-clipboard.js";
@@ -20,35 +20,36 @@ const CodeHeader = ({ language, code }) => {
20
20
  const onCopy = () => {
21
21
  if (!code || isCopied)
22
22
  return;
23
- void copyToClipboard();
23
+ startTransition(async () => {
24
+ await copyToClipboard();
25
+ });
24
26
  };
25
- return (_jsxs("div", { className: "aui-code-header-root border-border bg-muted mt-3 flex items-center justify-between rounded-t-md border border-b-0 px-3.5 py-1.5 text-xs", children: [_jsx("span", { className: "aui-code-header-language text-muted-foreground font-medium lowercase", children: language }), _jsxs(TooltipIconButton, { tooltip: "Copy", onClick: onCopy, children: [!isCopied && _jsx(CopyIcon, {}), isCopied && _jsx(CheckIcon, {})] })] }));
27
+ return (_jsxs("div", { className: "border-border bg-muted mt-3 flex items-center justify-between rounded-t-md border border-b-0 px-3.5 py-1.5 text-xs", children: [_jsx("span", { className: "text-muted-foreground font-medium lowercase", children: language }), _jsxs(TooltipIconButton, { tooltip: "Copy", onClick: onCopy, children: [!isCopied && _jsx(CopyIcon, {}), isCopied && _jsx(CheckIcon, {})] })] }));
26
28
  };
27
29
  const defaultComponents = memoizeMarkdownComponents({
28
- h1: ({ className, ...props }) => (_jsx("h1", { className: cn("aui-md-h1 mt-5 mb-2 scroll-m-20 text-xl font-semibold first:mt-0 last:mb-0", className), ...props })),
29
- h2: ({ className, ...props }) => (_jsx("h2", { className: cn("aui-md-h2 mt-5 mb-2 scroll-m-20 text-lg font-semibold first:mt-0 last:mb-0", className), ...props })),
30
- h3: ({ className, ...props }) => (_jsx("h3", { className: cn("aui-md-h3 mt-4 mb-1.5 scroll-m-20 text-base font-semibold first:mt-0 last:mb-0", className), ...props })),
31
- h4: ({ className, ...props }) => (_jsx("h4", { className: cn("aui-md-h4 mt-3.5 mb-1 scroll-m-20 text-base font-medium first:mt-0 last:mb-0", className), ...props })),
32
- h5: ({ className, ...props }) => (_jsx("h5", { className: cn("aui-md-h5 mt-3 mb-1 text-sm font-semibold first:mt-0 last:mb-0", className), ...props })),
33
- h6: ({ className, ...props }) => (_jsx("h6", { className: cn("aui-md-h6 mt-3 mb-1 text-sm font-medium first:mt-0 last:mb-0", className), ...props })),
34
- p: ({ className, ...props }) => (_jsx("p", { className: cn("aui-md-p my-3 leading-relaxed first:mt-0 last:mb-0", className), ...props })),
35
- a: ({ className, ...props }) => (_jsx("a", { className: cn("aui-md-a text-primary hover:text-primary/80 underline underline-offset-2", className), ...props })),
36
- blockquote: ({ className, ...props }) => (_jsx("blockquote", { className: cn("aui-md-blockquote border-muted-foreground/30 text-muted-foreground my-3 border-s-2 ps-4", className), ...props })),
37
- ul: ({ className, ...props }) => (_jsx("ul", { className: cn("aui-md-ul marker:text-muted-foreground my-3 ms-5 list-disc [&>li]:mt-1", className), ...props })),
38
- ol: ({ className, ...props }) => (_jsx("ol", { className: cn("aui-md-ol marker:text-muted-foreground my-3 ms-5 list-decimal [&>li]:mt-1", className), ...props })),
39
- hr: ({ className, ...props }) => (_jsx("hr", { className: cn("aui-md-hr border-muted-foreground/20 my-3", className), ...props })),
40
- table: ({ className, ...props }) => (_jsx("table", { className: cn("aui-md-table my-3 w-full border-separate border-spacing-0 overflow-y-auto", className), ...props })),
41
- th: ({ className, ...props }) => (_jsx("th", { className: cn("aui-md-th bg-muted px-3 py-1.5 text-start font-medium first:rounded-ss-md last:rounded-se-md [[align=center]]:text-center [[align=right]]:text-right", className), ...props })),
42
- td: ({ className, ...props }) => (_jsx("td", { className: cn("aui-md-td border-muted-foreground/20 border-s border-b px-3 py-1.5 text-start last:border-e [[align=center]]:text-center [[align=right]]:text-right", className), ...props })),
43
- tr: ({ className, ...props }) => (_jsx("tr", { className: cn("aui-md-tr m-0 border-b p-0 first:border-t [&:last-child>td:first-child]:rounded-es-md [&:last-child>td:last-child]:rounded-ee-md", className), ...props })),
44
- li: ({ className, ...props }) => (_jsx("li", { className: cn("aui-md-li leading-relaxed", className), ...props })),
45
- strong: ({ className, ...props }) => (_jsx("strong", { className: cn("aui-md-strong font-semibold", className), ...props })),
46
- sup: ({ className, ...props }) => (_jsx("sup", { className: cn("aui-md-sup [&>a]:text-xs [&>a]:no-underline", className), ...props })),
47
- pre: ({ className, ...props }) => (_jsx("pre", { className: cn("aui-md-pre border-border bg-muted overflow-x-auto rounded-t-none rounded-b-md border border-t-0 p-3.5 text-[13px] leading-relaxed", className), ...props })),
30
+ h1: ({ className, children, ...props }) => (_jsx("h1", { className: cn("mt-5 mb-2 scroll-m-20 text-xl font-semibold first:mt-0 last:mb-0", className), ...props, children: children })),
31
+ h2: ({ className, children, ...props }) => (_jsx("h2", { className: cn("mt-5 mb-2 scroll-m-20 text-lg font-semibold first:mt-0 last:mb-0", className), ...props, children: children })),
32
+ h3: ({ className, children, ...props }) => (_jsx("h3", { className: cn("mt-4 mb-1.5 scroll-m-20 text-base font-semibold first:mt-0 last:mb-0", className), ...props, children: children })),
33
+ h4: ({ className, children, ...props }) => (_jsx("h4", { className: cn("mt-3.5 mb-1 scroll-m-20 text-base font-medium first:mt-0 last:mb-0", className), ...props, children: children })),
34
+ h5: ({ className, children, ...props }) => (_jsx("h5", { className: cn("mt-3 mb-1 text-sm font-semibold first:mt-0 last:mb-0", className), ...props, children: children })),
35
+ h6: ({ className, children, ...props }) => (_jsx("h6", { className: cn("mt-3 mb-1 text-sm font-medium first:mt-0 last:mb-0", className), ...props, children: children })),
36
+ p: ({ className, ...props }) => (_jsx("p", { className: cn("my-3 leading-relaxed first:mt-0 last:mb-0", className), ...props })),
37
+ a: ({ className, children, ...props }) => (_jsx("a", { className: cn("text-primary hover:text-primary/80 underline underline-offset-2", className), ...props, children: children })),
38
+ blockquote: ({ className, ...props }) => (_jsx("blockquote", { className: cn("border-muted-foreground/30 text-muted-foreground my-3 border-s-2 ps-4", className), ...props })),
39
+ ul: ({ className, ...props }) => (_jsx("ul", { className: cn("marker:text-muted-foreground my-3 ms-5 list-disc [&>li]:mt-1", className), ...props })),
40
+ ol: ({ className, ...props }) => (_jsx("ol", { className: cn("marker:text-muted-foreground my-3 ms-5 list-decimal [&>li]:mt-1", className), ...props })),
41
+ hr: ({ className, ...props }) => (_jsx("hr", { className: cn("border-muted-foreground/20 my-3", className), ...props })),
42
+ table: ({ className, ...props }) => (_jsx("table", { className: cn("my-3 w-full border-separate border-spacing-0 overflow-y-auto", className), ...props })),
43
+ th: ({ className, ...props }) => (_jsx("th", { className: cn("bg-muted px-3 py-1.5 text-start font-medium first:rounded-ss-md last:rounded-se-md [[align=center]]:text-center [[align=right]]:text-right", className), ...props })),
44
+ td: ({ className, ...props }) => (_jsx("td", { className: cn("border-muted-foreground/20 border-s border-b px-3 py-1.5 text-start last:border-e [[align=center]]:text-center [[align=right]]:text-right", className), ...props })),
45
+ tr: ({ className, ...props }) => (_jsx("tr", { className: cn("m-0 border-b p-0 first:border-t [&:last-child>td:first-child]:rounded-es-md [&:last-child>td:last-child]:rounded-ee-md", className), ...props })),
46
+ li: ({ className, ...props }) => _jsx("li", { className: cn("leading-relaxed", className), ...props }),
47
+ strong: ({ className, ...props }) => (_jsx("strong", { className: cn("font-semibold", className), ...props })),
48
+ sup: ({ className, ...props }) => (_jsx("sup", { className: cn("[&>a]:text-xs [&>a]:no-underline", className), ...props })),
49
+ pre: ({ className, ...props }) => (_jsx("pre", { className: cn("border-border bg-muted overflow-x-auto rounded-t-none rounded-b-md border border-t-0 p-3.5 text-body-compact/relaxed ", className), ...props })),
48
50
  code: function Code({ className, ...props }) {
49
51
  const isCodeBlock = useIsMarkdownCodeBlock();
50
- return (_jsx("code", { className: cn(!isCodeBlock &&
51
- "aui-md-inline-code bg-muted rounded-md px-1.5 py-0.5 font-mono text-[0.85em]", className), ...props }));
52
+ return (_jsx("code", { className: cn(!isCodeBlock && "bg-muted rounded-md px-1.5 py-0.5 font-mono text-[0.85em]", className), ...props }));
52
53
  },
53
54
  CodeHeader,
54
55
  });
@@ -1 +1 @@
1
- {"version":3,"file":"reasoning.d.ts","sourceRoot":"","sources":["../../../src/internal/assistant-ui/reasoning.tsx"],"names":[],"mappings":"AAYA,OAAO,EAAO,KAAK,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAElE,OAAO,EAAiB,KAAK,6BAA6B,EAAE,MAAM,qBAAqB,CAAC;AAExF,OAAO,EAAE,WAAW,EAAE,kBAAkB,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAC;AAM/F,QAAA,MAAM,iBAAiB;;8EAWrB,CAAC;AAEH,MAAM,MAAM,kBAAkB,GAAG,IAAI,CACnC,KAAK,CAAC,cAAc,CAAC,OAAO,WAAW,CAAC,EACxC,MAAM,GAAG,cAAc,CACxB,GACC,YAAY,CAAC,OAAO,iBAAiB,CAAC,GAAG;IACvC,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,YAAY,CAAC,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,IAAI,CAAC;IACvC,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB;;;;;;;;OAQG;IACH,SAAS,CAAC,EAAE,OAAO,CAAC;CACrB,CAAC;AAEJ,iBAAS,aAAa,CAAC,EACrB,SAAS,EACT,OAAO,EACP,IAAI,EAAE,cAAc,EACpB,YAAY,EAAE,sBAAsB,EACpC,WAAmB,EACnB,SAAS,EACT,QAAQ,EACR,GAAG,KAAK,EACT,EAAE,kBAAkB,+BAuDpB;AAkCD,iBAAS,gBAAgB,CAAC,EACxB,MAAM,EACN,QAAQ,EACR,SAAS,EACT,GAAG,KAAK,EACT,EAAE,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,OAAO,kBAAkB,CAAC,EAAE,UAAU,CAAC,GAAG;IACrE,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB,+BAmCA;AAED,iBAAS,gBAAgB,CAAC,EACxB,SAAS,EACT,QAAQ,EACR,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,kBAAkB,CAAC,+BAmBjD;AAED,iBAAS,aAAa,CAAC,EAAE,SAAS,EAAE,QAAQ,EAAE,GAAG,KAAK,EAAE,EAAE,KAAK,CAAC,cAAc,CAAC,KAAK,CAAC,+BA6DpF;AAID,QAAA,MAAM,SAAS,EAAE,6BAAmD,CAAC;AAIrE,OAAO,EAAE,SAAS,EAAE,aAAa,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,aAAa,EAAE,CAAC"}
1
+ {"version":3,"file":"reasoning.d.ts","sourceRoot":"","sources":["../../../src/internal/assistant-ui/reasoning.tsx"],"names":[],"mappings":"AAYA,OAAO,EAAO,KAAK,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAElE,OAAO,EAAiB,KAAK,6BAA6B,EAAE,MAAM,qBAAqB,CAAC;AAExF,OAAO,EAAE,WAAW,EAAE,kBAAkB,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAC;AAO/F,QAAA,MAAM,iBAAiB;;8EAWrB,CAAC;AAEH,MAAM,MAAM,kBAAkB,GAAG,IAAI,CACnC,KAAK,CAAC,cAAc,CAAC,OAAO,WAAW,CAAC,EACxC,MAAM,GAAG,cAAc,CACxB,GACC,YAAY,CAAC,OAAO,iBAAiB,CAAC,GAAG;IACvC,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,YAAY,CAAC,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,IAAI,CAAC;IACvC,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB;;;;;;;;OAQG;IACH,SAAS,CAAC,EAAE,OAAO,CAAC;CACrB,CAAC;AAEJ,iBAAS,aAAa,CAAC,EACrB,SAAS,EACT,OAAO,EACP,IAAI,EAAE,cAAc,EACpB,YAAY,EAAE,sBAAsB,EACpC,WAAmB,EACnB,SAAS,EACT,QAAQ,EACR,GAAG,KAAK,EACT,EAAE,kBAAkB,+BAkDpB;AAkCD,iBAAS,gBAAgB,CAAC,EACxB,MAAM,EACN,QAAQ,EACR,SAAS,EACT,GAAG,KAAK,EACT,EAAE,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,OAAO,kBAAkB,CAAC,EAAE,UAAU,CAAC,GAAG;IACrE,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB,+BAgCA;AAED,iBAAS,gBAAgB,CAAC,EACxB,SAAS,EACT,QAAQ,EACR,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,kBAAkB,CAAC,+BAmBjD;AAED,iBAAS,aAAa,CAAC,EAAE,SAAS,EAAE,QAAQ,EAAE,GAAG,KAAK,EAAE,EAAE,KAAK,CAAC,cAAc,CAAC,KAAK,CAAC,+BA6DpF;AAID,QAAA,MAAM,SAAS,EAAE,6BAAmD,CAAC;AAIrE,OAAO,EAAE,SAAS,EAAE,aAAa,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,aAAa,EAAE,CAAC"}