@mcp-b/react-components 0.12.0 → 0.14.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 (229) hide show
  1. package/dist/{AgentChat-CRmsKg9B.d.ts → AgentChat-Cgb1xuT7.d.ts} +36 -5
  2. package/dist/{Button-Ct5I6aTu.d.ts → Button-FX_hpqxm.d.ts} +8 -11
  3. package/dist/{CodeBlock-XNQOupQ3.js → CodeBlock-BUFXG8HW.js} +22 -12
  4. package/dist/{CodeBlock-CxQXv3C4.d.ts → CodeBlock-DUh9WOGo.d.ts} +13 -7
  5. package/dist/{Combobox-D9anamNr.d.ts → Combobox-B9Fcd6q-.d.ts} +4 -14
  6. package/dist/{FileTree-wMyZhhHO.js → FileTree-mpEIcfzA.js} +1 -1
  7. package/dist/{Menu-BLhnNnRK.d.ts → Menu-Bgu-ufb5.d.ts} +26 -65
  8. package/dist/{ModelSelector-BB-xB-Es.js → ModelSelector-DVgVBdvw.js} +7 -7
  9. package/dist/{PromptInput-IyM6ZETj.d.ts → PromptInput-ClNqBiIw.d.ts} +313 -46
  10. package/dist/Select-Dl_vF_Bt.d.ts +213 -0
  11. package/dist/{Tabs-D9EAq09D.d.ts → Tabs-3Zc4tb9D.d.ts} +9 -6
  12. package/dist/{ThinkChat-B3wYahor.js → ThinkChat-7DQ2CogF.js} +34 -2
  13. package/dist/{ThinkChatActivity-F4KFPcJA.d.ts → ThinkChatActivity-m9orbdeI.d.ts} +1 -1
  14. package/dist/{attachment-preview-ChtC3HiU.js → attachment-preview-DIs50Q0h.js} +3 -3
  15. package/dist/components/Accordion.d.ts +17 -6
  16. package/dist/components/Accordion.js +23 -36
  17. package/dist/components/Activity.d.ts +5 -5
  18. package/dist/components/Activity.js +9 -9
  19. package/dist/components/AgentChat.d.ts +1 -1
  20. package/dist/components/AgentChat.js +309 -116
  21. package/dist/components/AgentConnection.js +2 -2
  22. package/dist/components/AlertDialog.d.ts +40 -32
  23. package/dist/components/AlertDialog.js +46 -39
  24. package/dist/components/Artifact.d.ts +1 -1
  25. package/dist/components/Artifact.js +5 -5
  26. package/dist/components/Autocomplete.js +10 -2
  27. package/dist/components/Avatar.d.ts +2 -2
  28. package/dist/components/Avatar.js +3 -3
  29. package/dist/components/Badge.d.ts +11 -14
  30. package/dist/components/Badge.js +10 -18
  31. package/dist/components/BrowserLiveView.js +26 -36
  32. package/dist/components/BrowserReplay.js +4 -4
  33. package/dist/components/BrowserRunPanel.js +1 -1
  34. package/dist/components/Button.d.ts +2 -2
  35. package/dist/components/Button.js +7 -30
  36. package/dist/components/ChainOfThought.d.ts +5 -5
  37. package/dist/components/ChainOfThought.js +8 -5
  38. package/dist/components/ChatGptSignInScreen.js +3 -3
  39. package/dist/components/Checkbox.d.ts +10 -2
  40. package/dist/components/Checkbox.js +13 -6
  41. package/dist/components/CheckboxGroup.d.ts +6 -6
  42. package/dist/components/CheckboxGroup.js +6 -6
  43. package/dist/components/CodeBlock.d.ts +1 -1
  44. package/dist/components/CodeBlock.js +1 -1
  45. package/dist/components/CodexModelSelector.d.ts +23 -28
  46. package/dist/components/CodexModelSelector.js +116 -94
  47. package/dist/components/Collapsible.d.ts +2 -4
  48. package/dist/components/Collapsible.js +9 -7
  49. package/dist/components/Combobox.d.ts +2 -2
  50. package/dist/components/Combobox.js +20 -22
  51. package/dist/components/Commit.d.ts +5 -5
  52. package/dist/components/Commit.js +6 -6
  53. package/dist/components/Context.js +5 -1
  54. package/dist/components/ContextMenu.d.ts +20 -72
  55. package/dist/components/ContextMenu.js +46 -56
  56. package/dist/components/Conversation.d.ts +1 -1
  57. package/dist/components/Conversation.js +1 -1
  58. package/dist/components/Dialog.d.ts +38 -30
  59. package/dist/components/Dialog.js +46 -34
  60. package/dist/components/EnvironmentVariables.d.ts +1 -1
  61. package/dist/components/EnvironmentVariables.js +5 -5
  62. package/dist/components/Field.d.ts +3 -3
  63. package/dist/components/Field.js +7 -8
  64. package/dist/components/Fieldset.d.ts +2 -2
  65. package/dist/components/Fieldset.js +2 -2
  66. package/dist/components/FileTree.js +1 -1
  67. package/dist/components/Label.d.ts +1 -1
  68. package/dist/components/Label.js +1 -1
  69. package/dist/components/McpServerPicker.js +21 -19
  70. package/dist/components/Menu.d.ts +2 -2
  71. package/dist/components/Menu.js +39 -49
  72. package/dist/components/Menubar.d.ts +16 -52
  73. package/dist/components/Menubar.js +44 -56
  74. package/dist/components/Message.d.ts +1 -1
  75. package/dist/components/Message.js +6 -6
  76. package/dist/components/MessageScroller.d.ts +1 -1
  77. package/dist/components/MessageScroller.js +1 -1
  78. package/dist/components/Meter.js +5 -0
  79. package/dist/components/ModelSelector.d.ts +1 -1
  80. package/dist/components/ModelSelector.js +1 -1
  81. package/dist/components/NavigationMenu.d.ts +3 -14
  82. package/dist/components/NavigationMenu.js +22 -38
  83. package/dist/components/NumberField.js +6 -0
  84. package/dist/components/Popover.d.ts +21 -44
  85. package/dist/components/Popover.js +33 -23
  86. package/dist/components/PreviewCard.d.ts +20 -18
  87. package/dist/components/PreviewCard.js +30 -20
  88. package/dist/components/PricingPage.js +30 -29
  89. package/dist/components/Progress.d.ts +7 -3
  90. package/dist/components/Progress.js +9 -4
  91. package/dist/components/PromptInput.d.ts +2 -2
  92. package/dist/components/PromptInput.js +306 -54
  93. package/dist/components/Queue.d.ts +7 -7
  94. package/dist/components/Queue.js +6 -6
  95. package/dist/components/RadioGroup.d.ts +10 -9
  96. package/dist/components/RadioGroup.js +8 -9
  97. package/dist/components/Reasoning.d.ts +4 -4
  98. package/dist/components/Reasoning.js +10 -6
  99. package/dist/components/ScrollArea.d.ts +2 -9
  100. package/dist/components/ScrollArea.js +5 -23
  101. package/dist/components/Select.d.ts +2 -2
  102. package/dist/components/Select.js +100 -134
  103. package/dist/components/Slider.d.ts +10 -7
  104. package/dist/components/Slider.js +12 -11
  105. package/dist/components/Sources.d.ts +4 -4
  106. package/dist/components/Sources.js +8 -5
  107. package/dist/components/Stepper.js +1 -1
  108. package/dist/components/Switch.d.ts +6 -3
  109. package/dist/components/Switch.js +7 -4
  110. package/dist/components/Tabs.d.ts +2 -2
  111. package/dist/components/Tabs.js +9 -4
  112. package/dist/components/Task.d.ts +4 -4
  113. package/dist/components/Task.js +10 -6
  114. package/dist/components/Terminal.d.ts +2 -2
  115. package/dist/components/Terminal.js +5 -5
  116. package/dist/components/TestResults.d.ts +4 -4
  117. package/dist/components/TestResults.js +5 -5
  118. package/dist/components/ThinkChat.d.ts +14 -2
  119. package/dist/components/ThinkChat.js +1 -1
  120. package/dist/components/ThinkChatActivity.d.ts +1 -1
  121. package/dist/components/ThinkChatActivity.js +1 -1
  122. package/dist/components/ThinkChatToolPanels.js +8 -8
  123. package/dist/components/ThinkExecutionWorkbench.js +28 -28
  124. package/dist/components/ThinkFullApp.js +8 -8
  125. package/dist/components/ThinkThreadPicker.js +1 -1
  126. package/dist/components/ThinkThreadShell.js +5 -5
  127. package/dist/components/Toast.js +7 -0
  128. package/dist/components/ToggleGroup.d.ts +6 -2
  129. package/dist/components/ToggleGroup.js +6 -2
  130. package/dist/components/Toolbar.js +6 -0
  131. package/dist/components/Tooltip.d.ts +36 -27
  132. package/dist/components/Tooltip.js +45 -29
  133. package/dist/components/WebPreview.d.ts +1 -1
  134. package/dist/components/WebPreview.js +3 -3
  135. package/dist/components/WorkspaceExplorer.d.ts +6 -8
  136. package/dist/components/WorkspaceExplorer.js +6 -6
  137. package/dist/components/icons.d.ts +2 -2
  138. package/dist/components/icons.js +2 -2
  139. package/dist/{copy-button-C6JSKtFE.js → copy-button-DUMLYdsk.js} +7 -6
  140. package/dist/{copy-button-BKXqGiNm.d.ts → copy-button-DtPMgN7e.d.ts} +3 -2
  141. package/dist/icons-Ba9THQKz.js +64 -0
  142. package/dist/icons-CUCz_Sft.d.ts +210 -0
  143. package/dist/styles/accessibility.css +14 -0
  144. package/dist/styles/accordion.css +21 -61
  145. package/dist/styles/activity.css +23 -58
  146. package/dist/styles/agent-chat.css +45 -4
  147. package/dist/styles/agent-connection.css +8 -10
  148. package/dist/styles/alert-dialog.css +20 -26
  149. package/dist/styles/artifact.css +6 -6
  150. package/dist/styles/attachment-preview.css +1 -1
  151. package/dist/styles/autocomplete.css +5 -170
  152. package/dist/styles/avatar.css +8 -8
  153. package/dist/styles/badge.css +8 -10
  154. package/dist/styles/base-ui-motion.css +176 -0
  155. package/dist/styles/base.css +19 -25
  156. package/dist/styles/browser-live-view.css +7 -7
  157. package/dist/styles/browser-replay.css +5 -5
  158. package/dist/styles/browser-run-panel.css +5 -5
  159. package/dist/styles/button.css +48 -43
  160. package/dist/styles/card.css +3 -5
  161. package/dist/styles/chain-of-thought.css +14 -70
  162. package/dist/styles/chatgpt-sign-in-screen.css +3 -3
  163. package/dist/styles/checkbox-group.css +1 -1
  164. package/dist/styles/checkbox.css +3 -7
  165. package/dist/styles/code-block.css +10 -10
  166. package/dist/styles/codex-model-selector.css +33 -44
  167. package/dist/styles/collapsible.css +11 -27
  168. package/dist/styles/combobox.css +3 -149
  169. package/dist/styles/commit.css +19 -35
  170. package/dist/styles/context-menu.css +1 -77
  171. package/dist/styles/context.css +12 -12
  172. package/dist/styles/conversation.css +7 -7
  173. package/dist/styles/dialog.css +34 -55
  174. package/dist/styles/environment-variables.css +10 -10
  175. package/dist/styles/field.css +16 -58
  176. package/dist/styles/fieldset.css +2 -2
  177. package/dist/styles/file-tree.css +7 -9
  178. package/dist/styles/index.css +8 -1
  179. package/dist/styles/input.css +1 -51
  180. package/dist/styles/label.css +2 -2
  181. package/dist/styles/marker.css +2 -4
  182. package/dist/styles/mcp-server-picker.css +5 -5
  183. package/dist/styles/menu.css +6 -153
  184. package/dist/styles/menubar.css +6 -105
  185. package/dist/styles/message-scroller.css +1 -1
  186. package/dist/styles/message.css +86 -8
  187. package/dist/styles/meter.css +4 -20
  188. package/dist/styles/model-selector.css +13 -13
  189. package/dist/styles/navigation-menu.css +14 -54
  190. package/dist/styles/number-field.css +8 -23
  191. package/dist/styles/popover.css +13 -68
  192. package/dist/styles/preview-card.css +5 -46
  193. package/dist/styles/pricing-page.css +43 -43
  194. package/dist/styles/progress.css +7 -16
  195. package/dist/styles/prompt-input.css +185 -44
  196. package/dist/styles/queue.css +12 -28
  197. package/dist/styles/radio.css +4 -8
  198. package/dist/styles/reasoning.css +3 -62
  199. package/dist/styles/recipes.css +475 -0
  200. package/dist/styles/select.css +7 -103
  201. package/dist/styles/shell.css +3 -3
  202. package/dist/styles/slider.css +5 -7
  203. package/dist/styles/sources.css +9 -66
  204. package/dist/styles/stepper.css +16 -14
  205. package/dist/styles/streamdown.css +9 -9
  206. package/dist/styles/switch.css +4 -7
  207. package/dist/styles/tabs.css +7 -8
  208. package/dist/styles/task.css +13 -42
  209. package/dist/styles/terminal.css +7 -7
  210. package/dist/styles/test-results.css +21 -37
  211. package/dist/styles/think-execution-workbench.css +23 -23
  212. package/dist/styles/think-full-app.css +12 -20
  213. package/dist/styles/think-resize-handle.css +2 -2
  214. package/dist/styles/think-thread-picker.css +19 -10
  215. package/dist/styles/think-thread-shell.css +7 -7
  216. package/dist/styles/toast.css +14 -25
  217. package/dist/styles/toggle-group.css +16 -14
  218. package/dist/styles/toggle.css +14 -15
  219. package/dist/styles/toolbar.css +13 -25
  220. package/dist/styles/tooltip.css +6 -16
  221. package/dist/styles/web-preview.css +15 -15
  222. package/dist/styles/workspace-explorer.css +14 -13
  223. package/dist/utils/codex-model-catalog.d.ts +142 -0
  224. package/dist/utils/codex-model-catalog.js +112 -0
  225. package/dist/utils/structured-code.d.ts +1 -1
  226. package/package.json +8 -2
  227. package/dist/Select-CRsKCJ9x.d.ts +0 -200
  228. package/dist/icons-CbjtbIJK.d.ts +0 -51
  229. package/dist/icons-D2Q5n5C1.js +0 -291
@@ -4,15 +4,15 @@
4
4
  background-color: var(--sigvelo-color-neutral-bg-subtle);
5
5
  border-radius: var(--sigvelo-radius-md);
6
6
  padding: 0.25rem;
7
- gap: 0.125rem;
7
+ gap: var(--sigvelo-spacing-0-5);
8
8
  }
9
9
 
10
10
  .toggle-group--sm {
11
- padding: 0.125rem;
11
+ padding: var(--sigvelo-spacing-0-5);
12
12
  }
13
13
 
14
14
  .toggle-group--lg {
15
- padding: 0.375rem;
15
+ padding: var(--sigvelo-spacing-1-5);
16
16
  gap: 0.25rem;
17
17
  }
18
18
 
@@ -20,9 +20,11 @@
20
20
  display: inline-flex;
21
21
  align-items: center;
22
22
  justify-content: center;
23
- padding: 0.5rem 0.75rem;
24
- font-family: var(--sigvelo-font-sans);
25
- font-size: 0.875rem;
23
+ min-block-size: var(--sigvelo-recipe-control-height);
24
+ padding-block: 0;
25
+ padding-inline: var(--sigvelo-recipe-control-padding-inline);
26
+ font-family: inherit;
27
+ font-size: var(--sigvelo-recipe-control-font-size);
26
28
  font-weight: var(--sigvelo-font-weight-semibold);
27
29
  color: var(--sigvelo-color-text-muted);
28
30
  background-color: transparent;
@@ -36,13 +38,15 @@
36
38
  }
37
39
 
38
40
  .toggle-group--sm .toggle-group__item {
39
- padding: 0.25rem 0.5rem;
40
- font-size: 0.75rem;
41
+ --sigvelo-recipe-control-height: var(--sigvelo-control-height-sm);
42
+ --sigvelo-recipe-control-padding-inline: var(--sigvelo-spacing-2);
43
+ --sigvelo-recipe-control-font-size: var(--sigvelo-control-text-sm);
41
44
  }
42
45
 
43
46
  .toggle-group--lg .toggle-group__item {
44
- padding: 0.625rem 1rem;
45
- font-size: 1rem;
47
+ --sigvelo-recipe-control-height: var(--sigvelo-control-height-lg);
48
+ --sigvelo-recipe-control-padding-inline: var(--sigvelo-spacing-4);
49
+ --sigvelo-recipe-control-font-size: var(--sigvelo-control-text-lg);
46
50
  }
47
51
 
48
52
  .toggle-group__item:hover:not([data-disabled]) {
@@ -51,9 +55,7 @@
51
55
 
52
56
  .toggle-group__item:focus-visible {
53
57
  outline: none;
54
- box-shadow:
55
- 0 0 0 2px var(--sigvelo-color-canvas),
56
- 0 0 0 4px var(--sigvelo-color-focus);
58
+ box-shadow: var(--sigvelo-recipe-focus-shadow);
57
59
  z-index: 1;
58
60
  }
59
61
 
@@ -66,6 +68,6 @@
66
68
  }
67
69
 
68
70
  .toggle-group__item[data-disabled] {
69
- opacity: 0.5;
71
+ opacity: var(--sigvelo-recipe-disabled-opacity);
70
72
  cursor: not-allowed;
71
73
  }
@@ -2,11 +2,12 @@
2
2
  display: inline-flex;
3
3
  align-items: center;
4
4
  justify-content: center;
5
- gap: 0.5rem;
6
- padding-block: 0.5rem;
7
- padding-inline: 0.75rem;
8
- font-family: var(--sigvelo-font-sans);
9
- font-size: 0.875rem;
5
+ gap: var(--sigvelo-recipe-control-gap);
6
+ min-block-size: var(--sigvelo-recipe-control-height);
7
+ padding-block: 0;
8
+ padding-inline: var(--sigvelo-recipe-control-padding-inline);
9
+ font-family: inherit;
10
+ font-size: var(--sigvelo-recipe-control-font-size);
10
11
  font-weight: var(--sigvelo-font-weight-semibold);
11
12
  line-height: 1.25;
12
13
  color: var(--sigvelo-color-text);
@@ -27,15 +28,15 @@
27
28
  }
28
29
 
29
30
  .toggle--sm {
30
- padding-block: 0.25rem;
31
- padding-inline: 0.5rem;
32
- font-size: 0.75rem;
31
+ --sigvelo-recipe-control-height: var(--sigvelo-control-height-sm);
32
+ --sigvelo-recipe-control-padding-inline: var(--sigvelo-spacing-2);
33
+ --sigvelo-recipe-control-font-size: var(--sigvelo-control-text-sm);
33
34
  }
34
35
 
35
36
  .toggle--lg {
36
- padding-block: 0.625rem;
37
- padding-inline: 1rem;
38
- font-size: 1rem;
37
+ --sigvelo-recipe-control-height: var(--sigvelo-control-height-lg);
38
+ --sigvelo-recipe-control-padding-inline: var(--sigvelo-spacing-4);
39
+ --sigvelo-recipe-control-font-size: var(--sigvelo-control-text-lg);
39
40
  }
40
41
 
41
42
  .toggle:hover {
@@ -45,9 +46,7 @@
45
46
 
46
47
  .toggle:focus-visible {
47
48
  outline: none;
48
- box-shadow:
49
- 0 0 0 2px var(--sigvelo-color-canvas),
50
- 0 0 0 4px var(--sigvelo-color-focus);
49
+ box-shadow: var(--sigvelo-recipe-focus-shadow);
51
50
  }
52
51
 
53
52
  .toggle[data-pressed] {
@@ -57,6 +56,6 @@
57
56
  }
58
57
 
59
58
  .toggle:disabled {
60
- opacity: 0.5;
59
+ opacity: var(--sigvelo-recipe-disabled-opacity);
61
60
  pointer-events: none;
62
61
  }
@@ -15,7 +15,7 @@
15
15
  }
16
16
 
17
17
  .toolbar[data-disabled] {
18
- opacity: 0.5;
18
+ opacity: var(--sigvelo-recipe-disabled-opacity);
19
19
  pointer-events: none;
20
20
  }
21
21
 
@@ -24,8 +24,8 @@
24
24
  align-items: center;
25
25
  justify-content: center;
26
26
  padding: 0.5rem;
27
- font-family: var(--sigvelo-font-sans);
28
- font-size: 0.875rem;
27
+ font-family: inherit;
28
+ font-size: var(--sigvelo-text-sm);
29
29
  font-weight: var(--sigvelo-font-weight-semibold);
30
30
  color: var(--sigvelo-color-text);
31
31
  background-color: transparent;
@@ -44,13 +44,11 @@
44
44
 
45
45
  .toolbar__button:focus-visible {
46
46
  outline: none;
47
- box-shadow:
48
- 0 0 0 2px var(--sigvelo-color-canvas),
49
- 0 0 0 4px var(--sigvelo-color-focus);
47
+ box-shadow: var(--sigvelo-recipe-focus-shadow);
50
48
  }
51
49
 
52
50
  .toolbar__button[data-disabled] {
53
- opacity: 0.5;
51
+ opacity: var(--sigvelo-recipe-disabled-opacity);
54
52
  pointer-events: none;
55
53
  }
56
54
 
@@ -64,8 +62,8 @@
64
62
  align-items: center;
65
63
  justify-content: center;
66
64
  padding: 0.5rem;
67
- font-family: var(--sigvelo-font-sans);
68
- font-size: 0.875rem;
65
+ font-family: inherit;
66
+ font-size: var(--sigvelo-text-sm);
69
67
  font-weight: var(--sigvelo-font-weight-semibold);
70
68
  color: var(--sigvelo-color-text);
71
69
  text-decoration: none;
@@ -82,15 +80,13 @@
82
80
 
83
81
  .toolbar__link:focus-visible {
84
82
  outline: none;
85
- box-shadow:
86
- 0 0 0 2px var(--sigvelo-color-canvas),
87
- 0 0 0 4px var(--sigvelo-color-focus);
83
+ box-shadow: var(--sigvelo-recipe-focus-shadow);
88
84
  }
89
85
 
90
86
  .toolbar__group {
91
87
  display: flex;
92
88
  align-items: center;
93
- gap: 0.125rem;
89
+ gap: var(--sigvelo-spacing-0-5);
94
90
  }
95
91
 
96
92
  .toolbar[data-orientation="vertical"] .toolbar__group {
@@ -111,23 +107,15 @@
111
107
  }
112
108
 
113
109
  .toolbar__input {
114
- padding-block: 0.375rem;
115
- padding-inline: 0.5rem;
116
- font-family: var(--sigvelo-font-sans);
117
- font-size: 0.875rem;
118
- color: var(--sigvelo-color-text);
119
- background-color: var(--sigvelo-color-canvas);
120
- border: var(--sigvelo-border-style) var(--sigvelo-border-width)
121
- var(--sigvelo-color-neutral-border-muted);
122
- border-radius: var(--sigvelo-radius-sm);
110
+ --sigvelo-recipe-control-height: var(--sigvelo-control-height-sm);
111
+ --sigvelo-recipe-control-padding-inline: var(--sigvelo-spacing-2);
112
+ --sigvelo-recipe-control-radius: var(--sigvelo-radius-sm);
123
113
  }
124
114
 
125
115
  .toolbar__input:focus-visible {
126
116
  outline: none;
127
117
  border-color: var(--sigvelo-color-focus);
128
- box-shadow:
129
- 0 0 0 2px var(--sigvelo-color-canvas),
130
- 0 0 0 4px color-mix(in oklab, var(--sigvelo-color-focus), transparent 80%);
118
+ box-shadow: var(--sigvelo-recipe-focus-shadow-subtle);
131
119
  }
132
120
 
133
121
  @container (max-width: 20rem) {
@@ -1,22 +1,12 @@
1
1
  .tooltip__popup {
2
+ --sigvelo-recipe-surface-padding: 0.375rem 0.75rem;
3
+ --sigvelo-recipe-surface-shadow: var(--sigvelo-shadow-sm);
4
+
2
5
  z-index: 50;
3
- padding-block: 0.375rem;
4
- padding-inline: 0.75rem;
5
- font-family: var(--sigvelo-font-sans);
6
- font-size: 0.75rem;
6
+ max-inline-size: min(20rem, var(--available-width));
7
+ overflow-y: auto;
8
+ font-size: var(--sigvelo-text-xs);
7
9
  line-height: 1.25;
8
- color: var(--sigvelo-color-text);
9
- background-color: var(--sigvelo-color-surface);
10
- border: var(--sigvelo-border-style) var(--sigvelo-border-width)
11
- var(--sigvelo-color-neutral-border-muted);
12
- border-radius: var(--sigvelo-radius-md);
13
- box-shadow: var(--sigvelo-shadow-sm);
14
- }
15
-
16
- .tooltip__popup[data-starting-style],
17
- .tooltip__popup[data-ending-style] {
18
- opacity: 0;
19
- transform: scale(0.95);
20
10
  }
21
11
 
22
12
  .tooltip__arrow {
@@ -2,7 +2,7 @@
2
2
  display: flex;
3
3
  flex-direction: column;
4
4
  width: 100%;
5
- font-family: var(--sigvelo-font-sans);
5
+ font-family: inherit;
6
6
  color: var(--sigvelo-color-text);
7
7
  background-color: var(--sigvelo-color-surface);
8
8
  border: var(--sigvelo-border-style) var(--sigvelo-border-width)
@@ -14,9 +14,9 @@
14
14
  .web-preview__nav {
15
15
  display: flex;
16
16
  align-items: center;
17
- gap: 0.375rem;
17
+ gap: var(--sigvelo-spacing-1-5);
18
18
  padding-block: 0.5rem;
19
- padding-inline: 0.625rem;
19
+ padding-inline: var(--sigvelo-spacing-2-5);
20
20
  background-color: var(--sigvelo-color-neutral-bg-subtle);
21
21
  border-block-end: var(--sigvelo-border-style) var(--sigvelo-border-width)
22
22
  var(--sigvelo-color-neutral-border-subtle);
@@ -34,7 +34,7 @@
34
34
  .web-preview__url {
35
35
  width: 100%;
36
36
  font-family: var(--sigvelo-font-mono);
37
- font-size: 0.75rem;
37
+ font-size: var(--sigvelo-text-xs);
38
38
  }
39
39
 
40
40
  .web-preview__body {
@@ -55,7 +55,7 @@
55
55
  justify-content: center;
56
56
  padding: 2rem;
57
57
  color: var(--sigvelo-color-text-muted);
58
- font-size: 0.8125rem;
58
+ font-size: var(--sigvelo-text-compact);
59
59
  text-align: center;
60
60
  }
61
61
 
@@ -71,10 +71,10 @@
71
71
  display: flex;
72
72
  align-items: center;
73
73
  justify-content: space-between;
74
- padding-block: 0.375rem;
75
- padding-inline: 0.75rem;
74
+ padding-block: var(--sigvelo-spacing-1-5);
75
+ padding-inline: var(--sigvelo-spacing-3);
76
76
  border: 0;
77
- font-size: 0.6875rem;
77
+ font-size: var(--sigvelo-text-2xs);
78
78
  font-weight: var(--sigvelo-font-weight-bold);
79
79
  text-transform: uppercase;
80
80
  letter-spacing: 0.05em;
@@ -116,9 +116,9 @@
116
116
  }
117
117
 
118
118
  .web-preview__console-empty {
119
- padding-block: 0.75rem;
120
- padding-inline: 0.75rem;
121
- font-size: 0.75rem;
119
+ padding-block: var(--sigvelo-spacing-3);
120
+ padding-inline: var(--sigvelo-spacing-3);
121
+ font-size: var(--sigvelo-text-xs);
122
122
  color: var(--sigvelo-color-text-muted);
123
123
  text-align: center;
124
124
  }
@@ -128,10 +128,10 @@
128
128
  grid-template-columns: auto 1fr auto;
129
129
  gap: 0.5rem;
130
130
  align-items: baseline;
131
- padding-block: 0.375rem;
132
- padding-inline: 0.75rem;
131
+ padding-block: var(--sigvelo-spacing-1-5);
132
+ padding-inline: var(--sigvelo-spacing-3);
133
133
  font-family: var(--sigvelo-font-mono);
134
- font-size: 0.75rem;
134
+ font-size: var(--sigvelo-text-xs);
135
135
  border-block-end: var(--sigvelo-border-style) var(--sigvelo-border-width)
136
136
  var(--sigvelo-color-neutral-border-subtle);
137
137
  }
@@ -156,7 +156,7 @@
156
156
  .web-preview__console-time {
157
157
  color: var(--sigvelo-color-text-muted);
158
158
  font-variant-numeric: tabular-nums;
159
- font-size: 0.6875rem;
159
+ font-size: var(--sigvelo-text-2xs);
160
160
  }
161
161
 
162
162
  @media (forced-colors: active) {
@@ -3,7 +3,7 @@
3
3
  flex-direction: column;
4
4
  min-height: 0;
5
5
  height: 100%;
6
- font-family: var(--sigvelo-font-sans);
6
+ font-family: inherit;
7
7
  color: var(--sigvelo-color-text);
8
8
  }
9
9
 
@@ -13,18 +13,18 @@
13
13
  align-items: center;
14
14
  gap: 0.5rem;
15
15
  min-height: 2.5rem;
16
- padding: 0.25rem 0.625rem;
16
+ padding: 0.25rem var(--sigvelo-spacing-2-5);
17
17
  border-block-end: var(--sigvelo-border-style) var(--sigvelo-border-width)
18
18
  var(--sigvelo-color-neutral-border-subtle);
19
19
  }
20
20
 
21
21
  .workspace-explorer__title {
22
- font-size: 0.8125rem;
22
+ font-size: var(--sigvelo-text-compact);
23
23
  font-weight: 550;
24
24
  }
25
25
 
26
26
  .workspace-explorer__count {
27
- font-size: 0.75rem;
27
+ font-size: var(--sigvelo-text-xs);
28
28
  color: var(--sigvelo-color-text-muted);
29
29
  }
30
30
 
@@ -34,7 +34,7 @@
34
34
  overflow: hidden;
35
35
  text-overflow: ellipsis;
36
36
  white-space: nowrap;
37
- font-size: 0.75rem;
37
+ font-size: var(--sigvelo-text-xs);
38
38
  font-family: var(--sigvelo-font-mono);
39
39
  color: var(--sigvelo-color-text-muted);
40
40
  }
@@ -49,17 +49,17 @@
49
49
  .workspace-explorer__body {
50
50
  display: flex;
51
51
  flex-direction: column;
52
- gap: 0.375rem;
52
+ gap: var(--sigvelo-spacing-1-5);
53
53
  min-height: 0;
54
54
  flex: 1;
55
- padding: 0.375rem 0.625rem;
55
+ padding: var(--sigvelo-spacing-1-5) var(--sigvelo-spacing-2-5);
56
56
  overflow: auto;
57
57
  }
58
58
 
59
59
  .workspace-explorer__filter {
60
60
  display: flex;
61
61
  align-items: center;
62
- gap: 0.375rem;
62
+ gap: var(--sigvelo-spacing-1-5);
63
63
  min-height: 2rem;
64
64
  padding-inline: 0.5rem;
65
65
  color: var(--sigvelo-color-text-muted);
@@ -83,11 +83,12 @@
83
83
  background: transparent;
84
84
  color: var(--sigvelo-color-text);
85
85
  font-family: inherit;
86
- font-size: 0.75rem;
86
+ font-size: var(--sigvelo-text-xs);
87
87
  }
88
88
 
89
89
  .workspace-explorer__filter-input.input:focus-visible {
90
- box-shadow: none;
90
+ outline: var(--sigvelo-focus-width) solid var(--sigvelo-color-focus);
91
+ outline-offset: var(--sigvelo-focus-offset);
91
92
  }
92
93
 
93
94
  .workspace-explorer__tree {
@@ -115,8 +116,8 @@
115
116
  flex: 1;
116
117
  align-items: center;
117
118
  justify-content: center;
118
- padding: 1.5rem 0.75rem;
119
- font-size: 0.8125rem;
119
+ padding: 1.5rem var(--sigvelo-spacing-3);
120
+ font-size: var(--sigvelo-text-compact);
120
121
  color: var(--sigvelo-color-text-muted);
121
122
  text-align: center;
122
123
  }
@@ -137,6 +138,6 @@
137
138
 
138
139
  /* File contents read at gutter scale, like the original workbench preview. */
139
140
  .workspace-explorer__code :is(.code-block__content, .code-block__content pre) {
140
- font-size: 0.75rem;
141
+ font-size: var(--sigvelo-text-xs);
141
142
  line-height: 1.6;
142
143
  }
@@ -0,0 +1,142 @@
1
+ //#region src/utils/codex-model-catalog.d.ts
2
+ /**
3
+ * Codex app-server model catalog types.
4
+ *
5
+ * Upstream generates these types with ts-rs but does not publish them from
6
+ * `@openai/codex-sdk`. Keep the field names and shapes aligned with:
7
+ * https://github.com/openai/codex/tree/main/codex-rs/app-server-protocol/schema/typescript
8
+ */
9
+ /** Canonical user-input modality tags advertised by a Codex model. */
10
+ type CodexInputModality = "text" | "image";
11
+ /** Codex intentionally keeps this open so new effort levels do not break clients. */
12
+ type CodexReasoningEffort = string;
13
+ type CodexReasoningEffortOption = {
14
+ reasoningEffort: CodexReasoningEffort;
15
+ description: string;
16
+ };
17
+ type CodexModelServiceTier = {
18
+ id: string;
19
+ name: string;
20
+ description: string;
21
+ };
22
+ type CodexModelUpgradeInfo = {
23
+ model: string;
24
+ upgradeCopy: string | null;
25
+ modelLink: string | null;
26
+ migrationMarkdown: string | null;
27
+ };
28
+ type CodexModelAvailabilityNux = {
29
+ message: string;
30
+ };
31
+ /** Whole upstream `v2/Model` response shape from Codex app-server `model/list`. */
32
+ type CodexModel = {
33
+ id: string;
34
+ model: string;
35
+ upgrade: string | null;
36
+ upgradeInfo: CodexModelUpgradeInfo | null;
37
+ availabilityNux: CodexModelAvailabilityNux | null;
38
+ displayName: string;
39
+ description: string;
40
+ hidden: boolean;
41
+ supportedReasoningEfforts: CodexReasoningEffortOption[];
42
+ defaultReasoningEffort: CodexReasoningEffort;
43
+ inputModalities: CodexInputModality[];
44
+ supportsPersonality: boolean; /** @deprecated Upstream Codex uses `serviceTiers` for structured tier metadata. */
45
+ additionalSpeedTiers: string[];
46
+ serviceTiers: CodexModelServiceTier[];
47
+ defaultServiceTier: string | null;
48
+ isDefault: boolean;
49
+ };
50
+ /** Whole upstream `v2/ModelListResponse` shape. */
51
+ type CodexModelListResponse = {
52
+ data: CodexModel[]; /** Opaque cursor for the next `model/list` request. */
53
+ nextCursor: string | null;
54
+ };
55
+ /** Current visible model ids in upstream Codex's checked-in catalog. */
56
+ declare const CODEX_MODEL_IDS: readonly ["gpt-5.6-sol", "gpt-5.6-terra", "gpt-5.6-luna", "gpt-5.5", "gpt-5.4", "gpt-5.4-mini", "gpt-5.2"];
57
+ type CodexModelId = (typeof CODEX_MODEL_IDS)[number];
58
+ /** Preserves literal ids and capability values for checked-in Codex catalogs. */
59
+ declare function defineCodexModels<const Models extends readonly CodexModel[]>(models: Models): Models;
60
+ /**
61
+ * Checked-in snapshot of upstream Codex's visible model catalog
62
+ * (`codex-rs/models-manager/models.json`). Display data for hosts without a
63
+ * live `model/list`; runtime account catalogs remain authoritative because
64
+ * availability differs by account and rollout.
65
+ */
66
+ declare const CHECKED_IN_CODEX_MODELS: readonly [{
67
+ readonly id: "gpt-5.6-sol";
68
+ readonly model: "gpt-5.6-sol";
69
+ readonly displayName: "GPT-5.6-Sol";
70
+ readonly description: "Fast agentic coding model for responsive everyday work.";
71
+ readonly supportedReasoningEfforts: [...CodexReasoningEffortOption[], CodexReasoningEffortOption, {
72
+ readonly reasoningEffort: "ultra";
73
+ readonly description: "Maximum reasoning with automatic task delegation";
74
+ }];
75
+ readonly defaultReasoningEffort: "low";
76
+ readonly isDefault: false;
77
+ readonly upgrade: null;
78
+ readonly upgradeInfo: null;
79
+ readonly availabilityNux: null;
80
+ readonly hidden: boolean;
81
+ readonly inputModalities: ("image" | "text")[];
82
+ readonly supportsPersonality: boolean;
83
+ readonly additionalSpeedTiers: never[];
84
+ readonly serviceTiers: never[];
85
+ readonly defaultServiceTier: null;
86
+ }, {
87
+ readonly id: "gpt-5.6-terra";
88
+ readonly model: "gpt-5.6-terra";
89
+ readonly displayName: "GPT-5.6-Terra";
90
+ readonly description: "Balanced agentic coding model for everyday work.";
91
+ readonly supportedReasoningEfforts: [...CodexReasoningEffortOption[], CodexReasoningEffortOption, {
92
+ readonly reasoningEffort: "ultra";
93
+ readonly description: "Maximum reasoning with automatic task delegation";
94
+ }];
95
+ readonly defaultReasoningEffort: "medium";
96
+ readonly isDefault: true;
97
+ readonly upgrade: null;
98
+ readonly upgradeInfo: null;
99
+ readonly availabilityNux: null;
100
+ readonly hidden: boolean;
101
+ readonly inputModalities: ("image" | "text")[];
102
+ readonly supportsPersonality: boolean;
103
+ readonly additionalSpeedTiers: never[];
104
+ readonly serviceTiers: never[];
105
+ readonly defaultServiceTier: null;
106
+ }, {
107
+ readonly id: "gpt-5.6-luna";
108
+ readonly model: "gpt-5.6-luna";
109
+ readonly displayName: "GPT-5.6-Luna";
110
+ readonly description: "Agentic coding model tuned for deliberate work.";
111
+ readonly supportedReasoningEfforts: [...CodexReasoningEffortOption[], CodexReasoningEffortOption];
112
+ readonly defaultReasoningEffort: "medium";
113
+ readonly isDefault: false;
114
+ readonly upgrade: null;
115
+ readonly upgradeInfo: null;
116
+ readonly availabilityNux: null;
117
+ readonly hidden: boolean;
118
+ readonly inputModalities: ("image" | "text")[];
119
+ readonly supportsPersonality: boolean;
120
+ readonly additionalSpeedTiers: never[];
121
+ readonly serviceTiers: never[];
122
+ readonly defaultServiceTier: null;
123
+ }, {
124
+ readonly id: "gpt-5.5";
125
+ readonly model: "gpt-5.5";
126
+ readonly displayName: "GPT-5.5";
127
+ readonly description: "Previous-generation agentic coding model.";
128
+ readonly supportedReasoningEfforts: CodexReasoningEffortOption[];
129
+ readonly defaultReasoningEffort: "medium";
130
+ readonly isDefault: false;
131
+ readonly upgrade: null;
132
+ readonly upgradeInfo: null;
133
+ readonly availabilityNux: null;
134
+ readonly hidden: boolean;
135
+ readonly inputModalities: ("image" | "text")[];
136
+ readonly supportsPersonality: boolean;
137
+ readonly additionalSpeedTiers: never[];
138
+ readonly serviceTiers: never[];
139
+ readonly defaultServiceTier: null;
140
+ }];
141
+ //#endregion
142
+ export { CHECKED_IN_CODEX_MODELS, CODEX_MODEL_IDS, CodexInputModality, CodexModel, CodexModelAvailabilityNux, CodexModelId, CodexModelListResponse, CodexModelServiceTier, CodexModelUpgradeInfo, CodexReasoningEffort, CodexReasoningEffortOption, defineCodexModels };
@@ -0,0 +1,112 @@
1
+ //#region src/utils/codex-model-catalog.ts
2
+ /** Current visible model ids in upstream Codex's checked-in catalog. */
3
+ const CODEX_MODEL_IDS = [
4
+ "gpt-5.6-sol",
5
+ "gpt-5.6-terra",
6
+ "gpt-5.6-luna",
7
+ "gpt-5.5",
8
+ "gpt-5.4",
9
+ "gpt-5.4-mini",
10
+ "gpt-5.2"
11
+ ];
12
+ /** Preserves literal ids and capability values for checked-in Codex catalogs. */
13
+ function defineCodexModels(models) {
14
+ return models;
15
+ }
16
+ const standardReasoningEfforts = [
17
+ {
18
+ reasoningEffort: "low",
19
+ description: "Fast responses with lighter reasoning"
20
+ },
21
+ {
22
+ reasoningEffort: "medium",
23
+ description: "Balances speed and reasoning depth for everyday tasks"
24
+ },
25
+ {
26
+ reasoningEffort: "high",
27
+ description: "Greater reasoning depth for complex problems"
28
+ },
29
+ {
30
+ reasoningEffort: "xhigh",
31
+ description: "Extra high reasoning depth for complex problems"
32
+ }
33
+ ];
34
+ const maxReasoningEffort = {
35
+ reasoningEffort: "max",
36
+ description: "Maximum reasoning depth for hard problems"
37
+ };
38
+ const checkedInModelMetadata = {
39
+ upgrade: null,
40
+ upgradeInfo: null,
41
+ availabilityNux: null,
42
+ hidden: false,
43
+ inputModalities: ["text", "image"],
44
+ supportsPersonality: true,
45
+ additionalSpeedTiers: [],
46
+ serviceTiers: [],
47
+ defaultServiceTier: null
48
+ };
49
+ /**
50
+ * Checked-in snapshot of upstream Codex's visible model catalog
51
+ * (`codex-rs/models-manager/models.json`). Display data for hosts without a
52
+ * live `model/list`; runtime account catalogs remain authoritative because
53
+ * availability differs by account and rollout.
54
+ */
55
+ const CHECKED_IN_CODEX_MODELS = defineCodexModels([
56
+ {
57
+ ...checkedInModelMetadata,
58
+ id: "gpt-5.6-sol",
59
+ model: "gpt-5.6-sol",
60
+ displayName: "GPT-5.6-Sol",
61
+ description: "Fast agentic coding model for responsive everyday work.",
62
+ supportedReasoningEfforts: [
63
+ ...standardReasoningEfforts,
64
+ maxReasoningEffort,
65
+ {
66
+ reasoningEffort: "ultra",
67
+ description: "Maximum reasoning with automatic task delegation"
68
+ }
69
+ ],
70
+ defaultReasoningEffort: "low",
71
+ isDefault: false
72
+ },
73
+ {
74
+ ...checkedInModelMetadata,
75
+ id: "gpt-5.6-terra",
76
+ model: "gpt-5.6-terra",
77
+ displayName: "GPT-5.6-Terra",
78
+ description: "Balanced agentic coding model for everyday work.",
79
+ supportedReasoningEfforts: [
80
+ ...standardReasoningEfforts,
81
+ maxReasoningEffort,
82
+ {
83
+ reasoningEffort: "ultra",
84
+ description: "Maximum reasoning with automatic task delegation"
85
+ }
86
+ ],
87
+ defaultReasoningEffort: "medium",
88
+ isDefault: true
89
+ },
90
+ {
91
+ ...checkedInModelMetadata,
92
+ id: "gpt-5.6-luna",
93
+ model: "gpt-5.6-luna",
94
+ displayName: "GPT-5.6-Luna",
95
+ description: "Agentic coding model tuned for deliberate work.",
96
+ supportedReasoningEfforts: [...standardReasoningEfforts, maxReasoningEffort],
97
+ defaultReasoningEffort: "medium",
98
+ isDefault: false
99
+ },
100
+ {
101
+ ...checkedInModelMetadata,
102
+ id: "gpt-5.5",
103
+ model: "gpt-5.5",
104
+ displayName: "GPT-5.5",
105
+ description: "Previous-generation agentic coding model.",
106
+ supportedReasoningEfforts: standardReasoningEfforts,
107
+ defaultReasoningEffort: "medium",
108
+ isDefault: false
109
+ }
110
+ ]);
111
+ //#endregion
112
+ export { CHECKED_IN_CODEX_MODELS, CODEX_MODEL_IDS, defineCodexModels };
@@ -1,4 +1,4 @@
1
- import { A as CodeBlockLanguage } from "../CodeBlock-CxQXv3C4.js";
1
+ import { A as CodeBlockLanguage } from "../CodeBlock-DUh9WOGo.js";
2
2
 
3
3
  //#region src/utils/structured-code.d.ts
4
4
  interface StructuredCodeDisplay {