@mcp-b/react-components 0.17.0 → 0.18.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 (292) hide show
  1. package/dist/{AgentActivity-BNUNrP9O.d.ts → AgentActivity-D2SHSGFX.d.ts} +1 -1
  2. package/dist/{AgentChat-CRuMi1Pb.d.ts → AgentChat-ClxViuUM.d.ts} +1 -20
  3. package/dist/{Button-FX_hpqxm.d.ts → Button-DLGzHsjc.d.ts} +13 -7
  4. package/dist/{CodeBlock-Co1noLbC.js → CodeBlock-Bfp5PAg3.js} +9 -6
  5. package/dist/{CodeBlock-Dnpr88ZQ.d.ts → CodeBlock-gV4kZeCI.d.ts} +2 -9
  6. package/dist/{FileTree-B7bBsUyU.js → FileTree-3zYtrddG.js} +42 -16
  7. package/dist/{Message-C4eYRogZ.js → Message-BXtmfc9Q.js} +13 -20
  8. package/dist/{ModelSelector-BNrZlY_Y.js → ModelSelector-Cqw_qrUG.js} +15 -22
  9. package/dist/{PromptInput-OLfXPuHM.d.ts → PromptInput-Bdh9pqlo.d.ts} +4 -6
  10. package/dist/{Select-CwSqP07Y.d.ts → Select-B_13gg_J.d.ts} +2 -2
  11. package/dist/{Tabs-9zddXDQo.d.ts → Tabs-ColWK-XA.d.ts} +10 -2
  12. package/dist/{ThinkChat-DInElus-.js → ThinkChat-15EhfvYJ.js} +84 -61
  13. package/dist/{ThinkChatActivity-BgesTfZ4.d.ts → ThinkChatActivity-Bzot45kX.d.ts} +4 -7
  14. package/dist/{ThinkChatActivitySummary-BPmu9a-c.d.ts → ThinkChatActivitySummary-D1xOrNrq.d.ts} +1 -1
  15. package/dist/{Toggle-DaXpe1Lc.d.ts → Toggle-JKZ43D5S.d.ts} +1 -1
  16. package/dist/{ToggleGroup-yseEWkOC.d.ts → ToggleGroup-DNd6cDJZ.d.ts} +2 -2
  17. package/dist/Workspace-Jez8ffUj.d.ts +274 -0
  18. package/dist/{WorkspaceExplorer-sZewzT2O.d.ts → WorkspaceExplorer-B9dQWNVK.d.ts} +2 -2
  19. package/dist/{WorkspaceFile-C8UzuSH4.d.ts → WorkspaceFile-CzyHnESE.d.ts} +1 -1
  20. package/dist/{WorkspaceFileView-DNdGAEiX.js → WorkspaceFileView-C68Ub8S8.js} +120 -127
  21. package/dist/{WorkspaceLink-B1ykV1dS.js → WorkspaceLink-BYYeTQLf.js} +6 -27
  22. package/dist/{WorkspaceLink-DK1DWMHe.d.ts → WorkspaceLink-O-EBKUJ8.d.ts} +6 -9
  23. package/dist/{class-names-Bk-QLWWI.js → class-names-BiMDVpUo.js} +4 -1
  24. package/dist/components/Accordion.js +7 -2
  25. package/dist/components/Activity.js +2 -2
  26. package/dist/components/AgentActivity.d.ts +1 -1
  27. package/dist/components/AgentActivity.js +4 -5
  28. package/dist/components/AgentActivityPreview.d.ts +9 -9
  29. package/dist/components/AgentActivityPreview.js +8 -12
  30. package/dist/components/AgentAttention.d.ts +1 -1
  31. package/dist/components/AgentAttention.js +1 -1
  32. package/dist/components/AgentChat.d.ts +1 -1
  33. package/dist/components/AgentChat.js +94 -62
  34. package/dist/components/AgentChatMessageEditor.js +2 -2
  35. package/dist/components/AgentChatTurnError.js +2 -2
  36. package/dist/components/AgentConnection.js +3 -3
  37. package/dist/components/AgentMessageParts.js +1 -1
  38. package/dist/components/AgentToolDetail.d.ts +6 -4
  39. package/dist/components/AgentToolDetail.js +12 -10
  40. package/dist/components/AlertDialog.js +1 -1
  41. package/dist/components/AppTopBar.d.ts +24 -7
  42. package/dist/components/AppTopBar.js +32 -8
  43. package/dist/components/Approval.js +4 -4
  44. package/dist/components/Artifact.d.ts +1 -1
  45. package/dist/components/Artifact.js +6 -4
  46. package/dist/components/Autocomplete.js +1 -1
  47. package/dist/components/Avatar.d.ts +1 -1
  48. package/dist/components/Avatar.js +2 -2
  49. package/dist/components/Badge.js +3 -0
  50. package/dist/components/BrowserLiveView.js +27 -12
  51. package/dist/components/BrowserReplay.js +4 -3
  52. package/dist/components/BrowserRunPanel.js +5 -5
  53. package/dist/components/Button.d.ts +1 -1
  54. package/dist/components/Button.js +14 -11
  55. package/dist/components/Card.d.ts +7 -8
  56. package/dist/components/Card.js +19 -10
  57. package/dist/components/ChainOfThought.d.ts +1 -1
  58. package/dist/components/ChainOfThought.js +2 -2
  59. package/dist/components/ChatGptSignInScreen.js +8 -8
  60. package/dist/components/Checkbox.js +2 -2
  61. package/dist/components/CheckboxGroup.js +1 -1
  62. package/dist/components/Checkpoint.js +2 -2
  63. package/dist/components/CodeBlock.d.ts +1 -1
  64. package/dist/components/CodeBlock.js +1 -1
  65. package/dist/components/CodexModelSelector.js +2 -2
  66. package/dist/components/Collapsible.js +2 -2
  67. package/dist/components/Combobox.js +1 -1
  68. package/dist/components/Commit.d.ts +1 -1
  69. package/dist/components/Commit.js +3 -3
  70. package/dist/components/Context.js +1 -1
  71. package/dist/components/ContextMenu.js +2 -2
  72. package/dist/components/Conversation.d.ts +1 -1
  73. package/dist/components/Conversation.js +5 -4
  74. package/dist/components/DescriptionListParts.js +1 -1
  75. package/dist/components/Dialog.js +1 -1
  76. package/dist/components/EnvironmentVariables.d.ts +1 -1
  77. package/dist/components/EnvironmentVariables.js +3 -3
  78. package/dist/components/Field.js +5 -2
  79. package/dist/components/Fieldset.js +1 -1
  80. package/dist/components/FileTree.d.ts +6 -0
  81. package/dist/components/FileTree.js +1 -1
  82. package/dist/components/Form.js +1 -1
  83. package/dist/components/GithubMotionMark.js +1 -1
  84. package/dist/components/IconButton.d.ts +2 -3
  85. package/dist/components/IconButton.js +2 -1
  86. package/dist/components/InlineCitation.js +1 -1
  87. package/dist/components/Input.js +1 -1
  88. package/dist/components/Marker.js +1 -1
  89. package/dist/components/McpConnectionRequest.js +2 -2
  90. package/dist/components/McpServerPicker.js +2 -2
  91. package/dist/components/MediaPreviewCard.d.ts +103 -0
  92. package/dist/components/MediaPreviewCard.js +193 -0
  93. package/dist/components/Menu.js +1 -1
  94. package/dist/components/Menubar.js +2 -2
  95. package/dist/components/Message.d.ts +4 -1
  96. package/dist/components/Message.js +1 -1
  97. package/dist/components/MessageScroller.d.ts +1 -1
  98. package/dist/components/MessageScroller.js +5 -4
  99. package/dist/components/Meter.js +1 -1
  100. package/dist/components/ModelSelector.d.ts +4 -3
  101. package/dist/components/ModelSelector.js +1 -1
  102. package/dist/components/NavigationMenu.js +1 -1
  103. package/dist/components/NumberField.js +1 -1
  104. package/dist/components/Plan.js +2 -2
  105. package/dist/components/Popover.js +1 -1
  106. package/dist/components/PreviewCard.js +1 -1
  107. package/dist/components/PricingBillingToggle.js +1 -1
  108. package/dist/components/PricingFAQ.js +1 -1
  109. package/dist/components/PricingPage.js +2 -1
  110. package/dist/components/PricingPlanCard.js +4 -3
  111. package/dist/components/PricingUsageCalculator.js +2 -2
  112. package/dist/components/Progress.js +1 -1
  113. package/dist/components/PromptInput.d.ts +1 -1
  114. package/dist/components/PromptInput.js +33 -20
  115. package/dist/components/Queue.d.ts +1 -1
  116. package/dist/components/Queue.js +2 -3
  117. package/dist/components/RadioGroup.js +1 -1
  118. package/dist/components/Reasoning.js +3 -6
  119. package/dist/components/ResizableSidePanel.js +1 -1
  120. package/dist/components/ResponsiveSidebarShell.js +16 -10
  121. package/dist/components/ScrollArea.js +2 -1
  122. package/dist/components/SearchField.d.ts +43 -0
  123. package/dist/components/SearchField.js +52 -0
  124. package/dist/components/Select.d.ts +1 -1
  125. package/dist/components/Select.js +5 -6
  126. package/dist/components/Separator.js +1 -1
  127. package/dist/components/Slider.js +1 -1
  128. package/dist/components/Sources.js +2 -2
  129. package/dist/components/Stepper.js +16 -9
  130. package/dist/components/SubagentRunDetails.js +1 -1
  131. package/dist/components/SubagentRunIndicator.js +2 -2
  132. package/dist/components/SubagentRunList.d.ts +3 -5
  133. package/dist/components/SubagentRunList.js +3 -4
  134. package/dist/components/SubagentRunSelector.d.ts +8 -12
  135. package/dist/components/SubagentRunSelector.js +17 -20
  136. package/dist/components/Switch.d.ts +2 -2
  137. package/dist/components/Switch.js +4 -5
  138. package/dist/components/Tabs.d.ts +2 -2
  139. package/dist/components/Tabs.js +12 -3
  140. package/dist/components/Task.js +2 -2
  141. package/dist/components/Terminal.d.ts +2 -2
  142. package/dist/components/Terminal.js +5 -4
  143. package/dist/components/TestResults.js +10 -6
  144. package/dist/components/Textarea.js +1 -1
  145. package/dist/components/ThemeModeControl.js +1 -1
  146. package/dist/components/ThinkChat.d.ts +33 -20
  147. package/dist/components/ThinkChat.js +4 -4
  148. package/dist/components/ThinkChatActivity.d.ts +2 -2
  149. package/dist/components/ThinkChatActivity.js +8 -10
  150. package/dist/components/ThinkChatActivitySummary.d.ts +1 -1
  151. package/dist/components/ThinkChatActivitySummary.js +7 -3
  152. package/dist/components/ThinkChatToolPanels.js +26 -16
  153. package/dist/components/ThinkExecutionDetail.js +2 -2
  154. package/dist/components/ThinkExecutionStatus.js +2 -2
  155. package/dist/components/ThinkExecutionWorkbench.d.ts +30 -8
  156. package/dist/components/ThinkExecutionWorkbench.js +70 -134
  157. package/dist/components/ThinkFullApp.d.ts +36 -35
  158. package/dist/components/ThinkFullApp.js +156 -109
  159. package/dist/components/ThinkFullAppViewSwitch.d.ts +1 -1
  160. package/dist/components/ThinkFullAppViewSwitch.js +1 -1
  161. package/dist/components/ThinkRecoveryNotice.js +18 -12
  162. package/dist/components/ThinkRoutineBrowser.d.ts +17 -9
  163. package/dist/components/ThinkRoutineBrowser.js +33 -40
  164. package/dist/components/ThinkRoutineDetail.d.ts +5 -2
  165. package/dist/components/ThinkRoutineDetail.js +4 -4
  166. package/dist/components/ThinkRoutineForm.d.ts +3 -2
  167. package/dist/components/ThinkRoutineForm.js +11 -10
  168. package/dist/components/ThinkRoutineLibrary.d.ts +24 -31
  169. package/dist/components/ThinkRoutineLibrary.js +57 -80
  170. package/dist/components/ThinkRoutineRuns.d.ts +3 -2
  171. package/dist/components/ThinkRoutineRuns.js +31 -24
  172. package/dist/components/ThinkThreadPicker.d.ts +17 -11
  173. package/dist/components/ThinkThreadPicker.js +163 -39
  174. package/dist/components/Toast.js +1 -1
  175. package/dist/components/Toggle.d.ts +1 -1
  176. package/dist/components/Toggle.js +9 -7
  177. package/dist/components/ToggleGroup.d.ts +1 -1
  178. package/dist/components/ToggleGroup.js +15 -13
  179. package/dist/components/ToolInvocation.js +1 -1
  180. package/dist/components/Toolbar.js +1 -1
  181. package/dist/components/Tooltip.d.ts +8 -1
  182. package/dist/components/Tooltip.js +11 -2
  183. package/dist/components/TransitionSurface.d.ts +27 -0
  184. package/dist/components/TransitionSurface.js +20 -0
  185. package/dist/components/WebPreview.d.ts +5 -5
  186. package/dist/components/WebPreview.js +68 -54
  187. package/dist/components/Workspace.d.ts +2 -2
  188. package/dist/components/Workspace.js +358 -328
  189. package/dist/components/WorkspaceBrowser.d.ts +4 -7
  190. package/dist/components/WorkspaceBrowser.js +15 -25
  191. package/dist/components/WorkspaceExplorer.d.ts +5 -5
  192. package/dist/components/WorkspaceExplorer.js +19 -32
  193. package/dist/components/WorkspaceFile.d.ts +1 -1
  194. package/dist/components/WorkspaceFileView.d.ts +14 -2
  195. package/dist/components/WorkspaceFileView.js +1 -1
  196. package/dist/components/WorkspaceHeader.d.ts +0 -8
  197. package/dist/components/WorkspaceHeader.js +3 -15
  198. package/dist/components/WorkspaceLink.d.ts +1 -1
  199. package/dist/components/WorkspaceLink.js +1 -1
  200. package/dist/components/icons.d.ts +2 -2
  201. package/dist/components/icons.js +2 -2
  202. package/dist/{copy-button-CQx3LQAC.d.ts → copy-button-D7aAYA-2.d.ts} +1 -1
  203. package/dist/{copy-button-cYsJBauI.js → copy-button-DeK6KXEV.js} +3 -2
  204. package/dist/{icons--FqCZEc3.js → icons-CQJ-aMnI.js} +6 -3
  205. package/dist/{icons-DpUqY8Mp.d.ts → icons-CYXmvKlJ.d.ts} +17 -2
  206. package/dist/navigation-link-Cob7KBlM.js +19 -0
  207. package/dist/styles/accordion.css +4 -19
  208. package/dist/styles/activity.css +48 -56
  209. package/dist/styles/agent-activity-preview.css +2 -0
  210. package/dist/styles/agent-chat.css +14 -22
  211. package/dist/styles/alert-dialog.css +16 -18
  212. package/dist/styles/app-top-bar.css +17 -9
  213. package/dist/styles/approval.css +11 -6
  214. package/dist/styles/artifact.css +6 -6
  215. package/dist/styles/autocomplete.css +2 -1
  216. package/dist/styles/avatar.css +35 -30
  217. package/dist/styles/badge.css +10 -10
  218. package/dist/styles/base-ui-motion.css +94 -39
  219. package/dist/styles/browser-control-overlay.css +0 -1
  220. package/dist/styles/browser-live-view.css +39 -22
  221. package/dist/styles/browser-replay.css +1 -1
  222. package/dist/styles/browser-run-panel.css +8 -4
  223. package/dist/styles/button.css +36 -33
  224. package/dist/styles/card.css +5 -6
  225. package/dist/styles/chain-of-thought.css +22 -16
  226. package/dist/styles/checkbox.css +18 -5
  227. package/dist/styles/codex-model-selector.css +3 -7
  228. package/dist/styles/collapsible.css +10 -10
  229. package/dist/styles/combobox.css +3 -2
  230. package/dist/styles/commit.css +19 -18
  231. package/dist/styles/composition-motion.css +83 -0
  232. package/dist/styles/context-menu.css +3 -3
  233. package/dist/styles/context.css +11 -10
  234. package/dist/styles/conversation.css +18 -23
  235. package/dist/styles/dialog.css +15 -15
  236. package/dist/styles/field.css +32 -12
  237. package/dist/styles/file-tree.css +69 -9
  238. package/dist/styles/form.css +1 -1
  239. package/dist/styles/index.css +5 -0
  240. package/dist/styles/input.css +2 -2
  241. package/dist/styles/marker.css +14 -13
  242. package/dist/styles/mcp-server-picker.css +20 -17
  243. package/dist/styles/media-preview-card.css +160 -0
  244. package/dist/styles/menu.css +11 -11
  245. package/dist/styles/menubar.css +12 -11
  246. package/dist/styles/message.css +27 -21
  247. package/dist/styles/meter.css +2 -2
  248. package/dist/styles/model-selector.css +16 -14
  249. package/dist/styles/motion-reduction.css +29 -0
  250. package/dist/styles/navigation-menu.css +14 -30
  251. package/dist/styles/number-field.css +22 -4
  252. package/dist/styles/plan.css +5 -0
  253. package/dist/styles/popover.css +15 -16
  254. package/dist/styles/preview-card.css +2 -32
  255. package/dist/styles/progress.css +8 -3
  256. package/dist/styles/prompt-input.css +75 -75
  257. package/dist/styles/queue.css +48 -32
  258. package/dist/styles/radio.css +19 -12
  259. package/dist/styles/reasoning.css +2 -1
  260. package/dist/styles/recipes.css +109 -37
  261. package/dist/styles/resizable-side-panel.css +4 -10
  262. package/dist/styles/responsive-sidebar-shell.css +16 -15
  263. package/dist/styles/scroll-area.css +32 -15
  264. package/dist/styles/search-field.css +21 -0
  265. package/dist/styles/select.css +19 -12
  266. package/dist/styles/slider.css +25 -29
  267. package/dist/styles/sources.css +3 -3
  268. package/dist/styles/stepper.css +36 -26
  269. package/dist/styles/subagent-run.css +1 -1
  270. package/dist/styles/switch.css +32 -29
  271. package/dist/styles/tabs.css +79 -23
  272. package/dist/styles/task.css +13 -9
  273. package/dist/styles/test-results.css +29 -23
  274. package/dist/styles/theme-mode-control.css +8 -0
  275. package/dist/styles/think-execution-workbench.css +18 -15
  276. package/dist/styles/think-full-app.css +45 -68
  277. package/dist/styles/think-routine-library.css +43 -24
  278. package/dist/styles/think-thread-picker.css +193 -51
  279. package/dist/styles/toast.css +48 -27
  280. package/dist/styles/toggle-group.css +2 -36
  281. package/dist/styles/toggle.css +29 -5
  282. package/dist/styles/toolbar.css +25 -27
  283. package/dist/styles/tooltip.css +2 -32
  284. package/dist/styles/transition-surface.css +55 -0
  285. package/dist/styles/workspace-explorer.css +99 -44
  286. package/dist/summarize-tool-input-CqTcGRYy.js +15 -0
  287. package/dist/utils/mcp-server-catalog.d.ts +132 -0
  288. package/dist/utils/mcp-server-catalog.js +90 -0
  289. package/dist/utils/structured-code.d.ts +1 -1
  290. package/package.json +13 -7
  291. package/dist/Workspace-C9RFoxcu.d.ts +0 -62
  292. package/dist/summarize-tool-input-BUJsENSn.js +0 -12
@@ -2,6 +2,7 @@
2
2
  --sigvelo-recipe-button-height: var(--sigvelo-control-height-md);
3
3
  --sigvelo-recipe-button-padding-inline: var(--sigvelo-spacing-3);
4
4
  --sigvelo-recipe-button-font-size: var(--sigvelo-control-text-md);
5
+ --sigvelo-recipe-button-icon-size: var(--sigvelo-control-icon-size-md);
5
6
  --sigvelo-recipe-button-radius: var(--sigvelo-radius-md);
6
7
 
7
8
  display: inline-flex;
@@ -20,17 +21,26 @@
20
21
  line-height: 1.25;
21
22
  text-decoration: none;
22
23
  border-radius: var(--sigvelo-recipe-button-radius);
24
+ translate: 0;
23
25
  transition:
24
- background-color var(--sigvelo-duration-fast) var(--sigvelo-ease-standard),
25
- color var(--sigvelo-duration-fast) var(--sigvelo-ease-standard),
26
- border-color var(--sigvelo-duration-fast) var(--sigvelo-ease-standard),
27
- box-shadow var(--sigvelo-duration-fast) var(--sigvelo-ease-standard);
26
+ background-color var(--sigvelo-motion-duration-interaction) var(--sigvelo-motion-ease-change),
27
+ color var(--sigvelo-motion-duration-interaction) var(--sigvelo-motion-ease-change),
28
+ border-color var(--sigvelo-motion-duration-interaction) var(--sigvelo-motion-ease-change),
29
+ box-shadow var(--sigvelo-motion-duration-interaction) var(--sigvelo-motion-ease-change),
30
+ translate var(--sigvelo-motion-duration-interaction) var(--sigvelo-motion-ease-change);
31
+ }
32
+
33
+ .button svg {
34
+ inline-size: var(--sigvelo-recipe-button-icon-size);
35
+ block-size: var(--sigvelo-recipe-button-icon-size);
36
+ flex: none;
28
37
  }
29
38
 
30
39
  /* ponytail: one brightness rule covers press feedback for every variant;
31
40
  upgrade to per-variant color-mix rules if filter side effects ever bite */
32
41
  .button:active:not([data-disabled]) {
33
42
  filter: brightness(0.94);
43
+ translate: 0 var(--sigvelo-motion-distance-xs);
34
44
  }
35
45
 
36
46
  .button:focus-visible {
@@ -131,63 +141,46 @@
131
141
 
132
142
  .button--xs {
133
143
  --sigvelo-recipe-button-height: var(--sigvelo-control-height-xs);
134
- --sigvelo-recipe-button-padding-inline: var(--sigvelo-spacing-2);
144
+ --sigvelo-recipe-button-padding-inline: var(--sigvelo-control-padding-inline-xs);
135
145
  --sigvelo-recipe-button-font-size: var(--sigvelo-control-text-xs);
146
+ --sigvelo-recipe-button-icon-size: var(--sigvelo-control-icon-size-xs);
136
147
  --sigvelo-recipe-button-radius: var(--sigvelo-radius-sm);
137
148
  }
138
149
 
139
150
  .button--sm {
140
151
  --sigvelo-recipe-button-height: var(--sigvelo-control-height-sm);
141
- --sigvelo-recipe-button-padding-inline: var(--sigvelo-spacing-2-5);
152
+ --sigvelo-recipe-button-padding-inline: var(--sigvelo-control-padding-inline-sm);
142
153
  --sigvelo-recipe-button-font-size: var(--sigvelo-control-text-sm);
154
+ --sigvelo-recipe-button-icon-size: var(--sigvelo-control-icon-size-sm);
143
155
  --sigvelo-recipe-button-radius: var(--sigvelo-radius-sm);
144
156
  }
145
157
 
146
158
  .button--md {
147
159
  --sigvelo-recipe-button-height: var(--sigvelo-control-height-md);
148
- --sigvelo-recipe-button-padding-inline: var(--sigvelo-spacing-3);
160
+ --sigvelo-recipe-button-padding-inline: var(--sigvelo-control-padding-inline-md);
149
161
  --sigvelo-recipe-button-font-size: var(--sigvelo-control-text-md);
162
+ --sigvelo-recipe-button-icon-size: var(--sigvelo-control-icon-size-md);
150
163
  }
151
164
 
152
165
  .button--lg {
153
166
  --sigvelo-recipe-button-height: var(--sigvelo-control-height-lg);
154
- --sigvelo-recipe-button-padding-inline: var(--sigvelo-spacing-4);
167
+ --sigvelo-recipe-button-padding-inline: var(--sigvelo-control-padding-inline-lg);
155
168
  --sigvelo-recipe-button-font-size: var(--sigvelo-control-text-lg);
169
+ --sigvelo-recipe-button-icon-size: var(--sigvelo-control-icon-size-lg);
156
170
  }
157
171
 
158
172
  .button--xl {
159
173
  --sigvelo-recipe-button-height: var(--sigvelo-control-height-xl);
160
- --sigvelo-recipe-button-padding-inline: 1.25rem;
174
+ --sigvelo-recipe-button-padding-inline: var(--sigvelo-control-padding-inline-xl);
161
175
  --sigvelo-recipe-button-font-size: var(--sigvelo-control-text-xl);
176
+ --sigvelo-recipe-button-icon-size: var(--sigvelo-control-icon-size-xl);
162
177
  }
163
178
 
164
- .button--icon {
165
- --sigvelo-recipe-button-padding-inline: 0;
166
-
167
- inline-size: var(--sigvelo-recipe-button-height);
168
- }
169
-
170
- .button--icon-xs {
171
- --sigvelo-recipe-button-height: var(--sigvelo-control-height-xs);
172
- --sigvelo-recipe-button-padding-inline: 0;
173
- --sigvelo-recipe-button-radius: var(--sigvelo-radius-sm);
174
-
175
- inline-size: var(--sigvelo-recipe-button-height);
176
- }
177
-
178
- .button--icon-sm {
179
- --sigvelo-recipe-button-height: var(--sigvelo-control-height-sm);
180
- --sigvelo-recipe-button-padding-inline: 0;
181
- --sigvelo-recipe-button-radius: var(--sigvelo-radius-sm);
182
-
183
- inline-size: var(--sigvelo-recipe-button-height);
184
- }
185
-
186
- .button--icon-lg {
187
- --sigvelo-recipe-button-height: var(--sigvelo-control-height-lg);
179
+ .button[data-icon-only] {
188
180
  --sigvelo-recipe-button-padding-inline: 0;
189
181
 
190
182
  inline-size: var(--sigvelo-recipe-button-height);
183
+ flex: none;
191
184
  }
192
185
 
193
186
  @media (forced-colors: active) {
@@ -206,3 +199,13 @@
206
199
  opacity: 1;
207
200
  }
208
201
  }
202
+
203
+ @media (prefers-reduced-motion: reduce) {
204
+ .button {
205
+ translate: none;
206
+ }
207
+ }
208
+
209
+ :root[data-motion="reduce"] .button {
210
+ translate: none;
211
+ }
@@ -4,11 +4,9 @@
4
4
  /* Shadow-led elevation: no perimeter border */
5
5
  border-radius: var(--sigvelo-radius-lg);
6
6
  padding: var(--sigvelo-spacing-4);
7
- container-type: inline-size;
8
7
  box-shadow: var(--sigvelo-shadow-sm);
9
- transition:
10
- box-shadow var(--sigvelo-duration-fast) var(--sigvelo-ease-standard),
11
- transform var(--sigvelo-duration-fast) var(--sigvelo-ease-standard);
8
+ transition: box-shadow var(--sigvelo-motion-duration-interaction)
9
+ var(--sigvelo-motion-ease-change);
12
10
  }
13
11
 
14
12
  .card[data-size="sm"] {
@@ -58,12 +56,14 @@
58
56
  }
59
57
 
60
58
  .card__title {
59
+ min-inline-size: 0;
61
60
  font-size: var(--sigvelo-text-base);
62
61
  font-weight: var(--sigvelo-font-weight-semibold);
63
62
  line-height: var(--sigvelo-leading-tight);
64
63
  }
65
64
 
66
65
  .card__description {
66
+ min-inline-size: 0;
67
67
  color: var(--sigvelo-color-text-muted);
68
68
  font-size: var(--sigvelo-text-compact);
69
69
  }
@@ -83,8 +83,7 @@
83
83
  }
84
84
 
85
85
  .card--hover:hover {
86
- box-shadow: var(--sigvelo-shadow-sm);
87
- transform: translateY(-1px);
86
+ box-shadow: var(--sigvelo-shadow-md);
88
87
  }
89
88
 
90
89
  .card--hover:focus-visible {
@@ -5,8 +5,9 @@
5
5
  margin: 0;
6
6
  padding-block: var(--sigvelo-spacing-2);
7
7
  padding-inline: var(--sigvelo-spacing-2);
8
- margin-inline-start: 1rem;
9
- border-inline-start: var(--sigvelo-border-style) 2px var(--sigvelo-color-neutral-border-subtle);
8
+ margin-inline-start: var(--sigvelo-spacing-4);
9
+ border-inline-start: var(--sigvelo-border-style) calc(var(--sigvelo-border-width) * 2)
10
+ var(--sigvelo-color-neutral-border-subtle);
10
11
  list-style: none;
11
12
  }
12
13
 
@@ -22,9 +23,9 @@
22
23
  display: inline-flex;
23
24
  align-items: center;
24
25
  justify-content: center;
25
- width: 1.25rem;
26
- height: 1.25rem;
27
- margin-inline-start: -1.625rem;
26
+ inline-size: var(--sigvelo-spacing-5);
27
+ block-size: var(--sigvelo-spacing-5);
28
+ margin-inline-start: calc((var(--sigvelo-spacing-6) + var(--sigvelo-spacing-0-5)) * -1);
28
29
  border-radius: var(--sigvelo-radius-full);
29
30
  background-color: var(--sigvelo-color-surface);
30
31
  border: var(--sigvelo-border-style) var(--sigvelo-border-width)
@@ -50,7 +51,7 @@
50
51
  display: flex;
51
52
  flex-direction: column;
52
53
  gap: var(--sigvelo-spacing-1-5);
53
- min-width: 0;
54
+ min-inline-size: 0;
54
55
  flex: 1;
55
56
  }
56
57
 
@@ -93,8 +94,9 @@
93
94
  .chain-of-thought__search-result {
94
95
  display: inline-flex;
95
96
  align-items: center;
96
- padding-block: 0.25rem;
97
- padding-inline: 0.5rem;
97
+ min-block-size: var(--sigvelo-control-height-xs);
98
+ padding-block: 0;
99
+ padding-inline: var(--sigvelo-spacing-2);
98
100
  background-color: var(--sigvelo-color-neutral-bg-subtle);
99
101
  border: var(--sigvelo-border-style) var(--sigvelo-border-width)
100
102
  var(--sigvelo-color-neutral-border-subtle);
@@ -102,13 +104,13 @@
102
104
  font-size: var(--sigvelo-text-xs);
103
105
  color: var(--sigvelo-color-text);
104
106
  text-decoration: none;
105
- max-width: 18rem;
107
+ max-inline-size: 18rem;
106
108
  overflow: hidden;
107
109
  text-overflow: ellipsis;
108
110
  white-space: nowrap;
109
111
  transition:
110
- background-color var(--sigvelo-duration-fast) var(--sigvelo-ease-standard),
111
- border-color var(--sigvelo-duration-fast) var(--sigvelo-ease-standard);
112
+ background-color var(--sigvelo-motion-duration-interaction) var(--sigvelo-motion-ease-change),
113
+ border-color var(--sigvelo-motion-duration-interaction) var(--sigvelo-motion-ease-change);
112
114
  }
113
115
 
114
116
  .chain-of-thought__search-result:hover {
@@ -125,13 +127,13 @@
125
127
  margin: 0;
126
128
  display: flex;
127
129
  flex-direction: column;
128
- gap: 0.25rem;
129
- max-width: 18rem;
130
+ gap: var(--sigvelo-spacing-1);
131
+ max-inline-size: 18rem;
130
132
  }
131
133
 
132
134
  .chain-of-thought__image-img {
133
- width: 100%;
134
- height: auto;
135
+ inline-size: 100%;
136
+ block-size: auto;
135
137
  border-radius: var(--sigvelo-radius-sm);
136
138
  border: var(--sigvelo-border-style) var(--sigvelo-border-width)
137
139
  var(--sigvelo-color-neutral-border-subtle);
@@ -139,7 +141,7 @@
139
141
 
140
142
  .chain-of-thought__image-frame {
141
143
  display: flex;
142
- max-height: 22rem;
144
+ max-block-size: 22rem;
143
145
  align-items: center;
144
146
  justify-content: center;
145
147
  overflow: hidden;
@@ -170,6 +172,10 @@
170
172
  }
171
173
  }
172
174
 
175
+ :root[data-motion="reduce"] .chain-of-thought__step--active .chain-of-thought__step-indicator {
176
+ animation: none;
177
+ }
178
+
173
179
  @media (forced-colors: active) {
174
180
  .chain-of-thought__step-indicator,
175
181
  .chain-of-thought__search-result {
@@ -1,9 +1,11 @@
1
1
  .checkbox {
2
+ --sigvelo-recipe-checkbox-size: var(--sigvelo-control-icon-size-md);
3
+
2
4
  display: inline-flex;
3
5
  align-items: center;
4
6
  justify-content: center;
5
- width: 1rem;
6
- height: 1rem;
7
+ inline-size: var(--sigvelo-recipe-checkbox-size);
8
+ block-size: var(--sigvelo-recipe-checkbox-size);
7
9
  flex-shrink: 0;
8
10
  border: var(--sigvelo-border-style) var(--sigvelo-border-width)
9
11
  var(--sigvelo-color-neutral-border-muted);
@@ -12,9 +14,9 @@
12
14
  outline: none;
13
15
  cursor: pointer;
14
16
  transition:
15
- background-color var(--sigvelo-duration-fast) var(--sigvelo-ease-standard),
16
- border-color var(--sigvelo-duration-fast) var(--sigvelo-ease-standard),
17
- box-shadow var(--sigvelo-duration-fast) var(--sigvelo-ease-standard);
17
+ background-color var(--sigvelo-motion-duration-interaction) var(--sigvelo-motion-ease-change),
18
+ border-color var(--sigvelo-motion-duration-interaction) var(--sigvelo-motion-ease-change),
19
+ box-shadow var(--sigvelo-motion-duration-interaction) var(--sigvelo-motion-ease-change);
18
20
  }
19
21
 
20
22
  .checkbox:hover:not([data-disabled]) {
@@ -49,4 +51,15 @@
49
51
  align-items: center;
50
52
  justify-content: center;
51
53
  color: var(--sigvelo-color-primary-text-on-bg);
54
+ opacity: 1;
55
+ scale: 1;
56
+ transition:
57
+ opacity var(--sigvelo-motion-duration-interaction) var(--sigvelo-motion-ease-change),
58
+ scale var(--sigvelo-motion-duration-interaction) var(--sigvelo-motion-ease-enter);
59
+ }
60
+
61
+ .checkbox__indicator[data-starting-style],
62
+ .checkbox__indicator[data-ending-style] {
63
+ opacity: 0;
64
+ scale: var(--sigvelo-motion-presence-scale);
52
65
  }
@@ -36,15 +36,11 @@
36
36
  background-color: var(--sigvelo-color-neutral-bg-muted);
37
37
  border-radius: var(--sigvelo-radius-full);
38
38
  opacity: 0;
39
- transform: scale(0.96);
40
- transition:
41
- opacity var(--sigvelo-duration-fast) var(--sigvelo-ease-standard),
42
- transform var(--sigvelo-duration-fast) var(--sigvelo-ease-standard);
39
+ transition: opacity var(--sigvelo-motion-duration-interaction) var(--sigvelo-motion-ease-change);
43
40
  }
44
41
 
45
42
  .codex-model-selector__trigger:is(:hover, :focus-visible, [data-popup-open])::before {
46
43
  opacity: 1;
47
- transform: scale(1);
48
44
  }
49
45
 
50
46
  .codex-model-selector__trigger:focus-visible {
@@ -89,8 +85,8 @@
89
85
  }
90
86
 
91
87
  .codex-model-selector__trigger-icon {
92
- inline-size: 0.875rem;
93
- block-size: 0.875rem;
88
+ inline-size: var(--sigvelo-control-icon-size-sm);
89
+ block-size: var(--sigvelo-control-icon-size-sm);
94
90
  }
95
91
 
96
92
  .codex-model-selector__menu {
@@ -1,7 +1,7 @@
1
1
  .collapsible {
2
2
  display: flex;
3
3
  flex-direction: column;
4
- width: 100%;
4
+ inline-size: 100%;
5
5
  }
6
6
 
7
7
  .collapsible__trigger {
@@ -9,7 +9,7 @@
9
9
  align-items: center;
10
10
  justify-content: space-between;
11
11
  gap: var(--sigvelo-recipe-control-gap);
12
- width: 100%;
12
+ inline-size: 100%;
13
13
  min-block-size: var(--sigvelo-recipe-control-height);
14
14
  padding-block: 0;
15
15
  padding-inline: var(--sigvelo-recipe-control-padding-inline);
@@ -24,8 +24,8 @@
24
24
  border-radius: var(--sigvelo-radius-md);
25
25
  cursor: pointer;
26
26
  transition:
27
- background-color var(--sigvelo-duration-fast) var(--sigvelo-ease-standard),
28
- border-color var(--sigvelo-duration-fast) var(--sigvelo-ease-standard);
27
+ background-color var(--sigvelo-motion-duration-interaction) var(--sigvelo-motion-ease-change),
28
+ border-color var(--sigvelo-motion-duration-interaction) var(--sigvelo-motion-ease-change);
29
29
  }
30
30
 
31
31
  .collapsible__trigger:hover {
@@ -44,16 +44,16 @@
44
44
 
45
45
  .collapsible__trigger::after {
46
46
  content: "";
47
- width: 0;
48
- height: 0;
47
+ inline-size: 0;
48
+ block-size: 0;
49
49
  border-left: 5px solid transparent;
50
50
  border-right: 5px solid transparent;
51
51
  border-top: 5px solid currentColor;
52
- transition: transform var(--sigvelo-duration-medium) var(--sigvelo-ease-standard);
52
+ transition: rotate var(--sigvelo-motion-duration-interaction) var(--sigvelo-motion-ease-change);
53
53
  }
54
54
 
55
55
  .collapsible__trigger[data-panel-open]::after {
56
- transform: rotate(180deg);
56
+ rotate: 180deg;
57
57
  }
58
58
 
59
59
  .collapsible__trigger[data-panel-open] {
@@ -69,10 +69,10 @@
69
69
  }
70
70
 
71
71
  .collapsible__panel > * {
72
- padding: 1rem;
72
+ padding: var(--sigvelo-spacing-4);
73
73
  background-color: var(--sigvelo-color-surface);
74
74
  border: var(--sigvelo-border-style) var(--sigvelo-border-width)
75
75
  var(--sigvelo-color-neutral-border-muted);
76
- border-top: none;
76
+ border-block-start: none;
77
77
  border-radius: 0 0 var(--sigvelo-radius-md) var(--sigvelo-radius-md);
78
78
  }
@@ -8,9 +8,10 @@
8
8
 
9
9
  .combobox__popup {
10
10
  --sigvelo-recipe-surface-padding: var(--sigvelo-combobox-popup-padding, 0);
11
+ --sigvelo-recipe-popup-min-inline-size: 12.5rem;
11
12
 
12
13
  inline-size: var(--anchor-width);
13
- min-inline-size: 12.5rem;
14
+ min-inline-size: var(--sigvelo-recipe-popup-min-inline-size);
14
15
  }
15
16
 
16
17
  .combobox__item[data-selected] {
@@ -22,6 +23,6 @@
22
23
  display: inline-flex;
23
24
  align-items: center;
24
25
  justify-content: center;
25
- width: 1rem;
26
+ inline-size: var(--sigvelo-recipe-control-icon-size);
26
27
  color: var(--sigvelo-color-primary-bg);
27
28
  }
@@ -1,8 +1,8 @@
1
1
  .commit__header {
2
2
  display: flex;
3
3
  align-items: center;
4
- gap: 0.5rem;
5
- width: 100%;
4
+ gap: var(--sigvelo-spacing-2);
5
+ inline-size: 100%;
6
6
  padding-block: var(--sigvelo-spacing-2-5);
7
7
  padding-inline: var(--sigvelo-spacing-3);
8
8
  background-color: transparent;
@@ -12,7 +12,8 @@
12
12
  font-size: var(--sigvelo-text-compact);
13
13
  text-align: start;
14
14
  cursor: pointer;
15
- transition: background-color var(--sigvelo-duration-fast) var(--sigvelo-ease-standard);
15
+ transition: background-color var(--sigvelo-motion-duration-interaction)
16
+ var(--sigvelo-motion-ease-change);
16
17
  }
17
18
 
18
19
  .commit__header:hover:not([data-disabled]) {
@@ -28,11 +29,11 @@
28
29
  display: inline-flex;
29
30
  flex-shrink: 0;
30
31
  color: var(--sigvelo-color-text-muted);
31
- transition: transform var(--sigvelo-duration-medium) var(--sigvelo-ease-standard);
32
+ transition: rotate var(--sigvelo-motion-duration-disclosure) var(--sigvelo-motion-ease-change);
32
33
  }
33
34
 
34
35
  .commit__header[data-panel-open] .commit__header-icon {
35
- transform: rotate(90deg);
36
+ rotate: 90deg;
36
37
  }
37
38
 
38
39
  .commit__header-body {
@@ -40,32 +41,32 @@
40
41
  align-items: center;
41
42
  gap: var(--sigvelo-spacing-3);
42
43
  flex: 1;
43
- min-width: 0;
44
+ min-inline-size: 0;
44
45
  }
45
46
 
46
47
  .commit__author {
47
48
  display: inline-flex;
48
49
  align-items: center;
49
- gap: 0.5rem;
50
+ gap: var(--sigvelo-spacing-2);
50
51
  flex-shrink: 0;
51
52
  }
52
53
 
53
54
  .commit__author-avatar {
54
- width: 1.5rem;
55
- height: 1.5rem;
55
+ inline-size: var(--sigvelo-spacing-6);
56
+ block-size: var(--sigvelo-spacing-6);
56
57
  font-size: var(--sigvelo-text-3xs);
57
58
  }
58
59
 
59
60
  .commit__info {
60
61
  display: inline-flex;
61
62
  align-items: center;
62
- gap: 0.5rem;
63
- min-width: 0;
63
+ gap: var(--sigvelo-spacing-2);
64
+ min-inline-size: 0;
64
65
  flex: 1;
65
66
  }
66
67
 
67
68
  .commit__message {
68
- min-width: 0;
69
+ min-inline-size: 0;
69
70
  overflow: hidden;
70
71
  font-weight: var(--sigvelo-font-weight-semibold);
71
72
  text-overflow: ellipsis;
@@ -88,7 +89,7 @@
88
89
  font-family: var(--sigvelo-font-mono);
89
90
  font-size: var(--sigvelo-text-xs);
90
91
  color: var(--sigvelo-color-text-muted);
91
- padding-block: 0.0625rem;
92
+ padding-block: var(--sigvelo-spacing-0-5);
92
93
  padding-inline: var(--sigvelo-spacing-1-5);
93
94
  background-color: var(--sigvelo-color-neutral-bg-subtle);
94
95
  border-radius: var(--sigvelo-radius-sm);
@@ -103,7 +104,7 @@
103
104
  .commit__actions {
104
105
  display: inline-flex;
105
106
  align-items: center;
106
- gap: 0.25rem;
107
+ gap: var(--sigvelo-spacing-1);
107
108
  flex-shrink: 0;
108
109
  }
109
110
 
@@ -115,8 +116,8 @@
115
116
  .commit__file {
116
117
  display: flex;
117
118
  align-items: center;
118
- gap: 0.5rem;
119
- padding-block: 0.5rem;
119
+ gap: var(--sigvelo-spacing-2);
120
+ padding-block: var(--sigvelo-spacing-2);
120
121
  padding-inline: var(--sigvelo-spacing-3);
121
122
  font-size: var(--sigvelo-text-compact);
122
123
  border-block-end: var(--sigvelo-border-style) var(--sigvelo-border-width)
@@ -129,7 +130,7 @@
129
130
 
130
131
  .commit__file-status {
131
132
  flex-shrink: 0;
132
- min-width: 1.25rem;
133
+ min-inline-size: var(--sigvelo-spacing-5);
133
134
  justify-content: center;
134
135
  }
135
136
 
@@ -144,7 +145,7 @@
144
145
  font-size: var(--sigvelo-text-xs);
145
146
  color: var(--sigvelo-color-text);
146
147
  flex: 1;
147
- min-width: 0;
148
+ min-inline-size: 0;
148
149
  overflow: hidden;
149
150
  text-overflow: ellipsis;
150
151
  white-space: nowrap;
@@ -0,0 +1,83 @@
1
+ /*
2
+ * Block-level presence for transcript and structured-agent units. These rules
3
+ * run only when a complete block is inserted; streaming text updates do not
4
+ * retrigger them or disturb transcript scrolling.
5
+ */
6
+ :where(
7
+ .message,
8
+ .queue,
9
+ .queue__item,
10
+ .agent-chat__queued-message,
11
+ .reasoning,
12
+ .sources,
13
+ .sources__item,
14
+ .context,
15
+ .chain-of-thought__step,
16
+ .approval,
17
+ .checkpoint,
18
+ .plan,
19
+ .activity,
20
+ .task,
21
+ .commit,
22
+ .test-results
23
+ ) {
24
+ opacity: 1;
25
+ translate: 0;
26
+ transition:
27
+ opacity var(--sigvelo-motion-duration-presence) var(--sigvelo-motion-ease-enter),
28
+ translate var(--sigvelo-motion-duration-presence) var(--sigvelo-motion-ease-enter);
29
+ }
30
+
31
+ @starting-style {
32
+ :where(
33
+ .message,
34
+ .queue,
35
+ .queue__item,
36
+ .agent-chat__queued-message,
37
+ .reasoning,
38
+ .sources,
39
+ .sources__item,
40
+ .context,
41
+ .chain-of-thought__step,
42
+ .approval,
43
+ .checkpoint,
44
+ .plan,
45
+ .activity,
46
+ .task,
47
+ .commit,
48
+ .test-results
49
+ ) {
50
+ opacity: 0;
51
+ translate: 0 var(--sigvelo-motion-distance-sm);
52
+ }
53
+ }
54
+
55
+ /*
56
+ * Native snapshot motion uses the major-layout rhythm instead of Chrome's UA
57
+ * default. Element-scoped pseudo-trees attach to their transition root, while
58
+ * the :root selector also covers the document fallback.
59
+ */
60
+ :where(
61
+ :root,
62
+ .workspace-explorer,
63
+ .responsive-sidebar-shell__frame,
64
+ .think-execution-workbench,
65
+ .think-routine-library,
66
+ .think-full-app__view-scope,
67
+ .think-full-app__workbench-panel
68
+ )::view-transition {
69
+ pointer-events: none;
70
+ }
71
+
72
+ :where(
73
+ :root,
74
+ .workspace-explorer,
75
+ .responsive-sidebar-shell__frame,
76
+ .think-execution-workbench,
77
+ .think-routine-library,
78
+ .think-full-app__view-scope,
79
+ .think-full-app__workbench-panel
80
+ )::view-transition-group(*) {
81
+ animation-duration: var(--sigvelo-motion-duration-layout);
82
+ animation-timing-function: var(--sigvelo-motion-ease-change);
83
+ }
@@ -7,13 +7,13 @@
7
7
  }
8
8
 
9
9
  .context-menu__popup {
10
- min-width: 10rem;
11
- overflow-y: auto;
10
+ min-inline-size: var(--sigvelo-recipe-popup-min-inline-size);
11
+ overflow-block: auto;
12
12
  }
13
13
 
14
14
  .context-menu__item--inset,
15
15
  .context-menu__label--inset {
16
- padding-inline-start: 2rem;
16
+ padding-inline-start: var(--sigvelo-control-height-sm);
17
17
  }
18
18
 
19
19
  .context-menu__item[data-variant="destructive"] {