@sero-ai/ui 0.4.0 → 0.4.2

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 (332) hide show
  1. package/.turbo/turbo-build.log +628 -628
  2. package/.turbo/turbo-test.log +18 -0
  3. package/.turbo/turbo-typecheck.log +1 -1
  4. package/CHANGELOG.md +22 -2
  5. package/LICENSE +201 -0
  6. package/dist/components/ai-elements/agent.cjs +6 -6
  7. package/dist/components/ai-elements/agent.js +6 -6
  8. package/dist/components/ai-elements/artifact.cjs +2 -2
  9. package/dist/components/ai-elements/artifact.js +2 -2
  10. package/dist/components/ai-elements/attachments.cjs +2 -2
  11. package/dist/components/ai-elements/attachments.js +2 -2
  12. package/dist/components/ai-elements/chain-of-thought.cjs +2 -2
  13. package/dist/components/ai-elements/chain-of-thought.js +2 -2
  14. package/dist/components/ai-elements/code-block.cjs +7 -5
  15. package/dist/components/ai-elements/code-block.d.cts +2 -1
  16. package/dist/components/ai-elements/code-block.d.ts +2 -1
  17. package/dist/components/ai-elements/code-block.js +7 -5
  18. package/dist/components/ai-elements/commit.cjs +2 -2
  19. package/dist/components/ai-elements/commit.js +2 -2
  20. package/dist/components/ai-elements/confirmation.cjs +1 -1
  21. package/dist/components/ai-elements/confirmation.js +1 -1
  22. package/dist/components/ai-elements/conversation.cjs +2 -2
  23. package/dist/components/ai-elements/conversation.js +2 -2
  24. package/dist/components/ai-elements/environment-variables.cjs +3 -3
  25. package/dist/components/ai-elements/environment-variables.js +3 -3
  26. package/dist/components/ai-elements/file-tree.cjs +1 -1
  27. package/dist/components/ai-elements/file-tree.js +1 -1
  28. package/dist/components/ai-elements/inline-citation.cjs +3 -3
  29. package/dist/components/ai-elements/inline-citation.js +3 -3
  30. package/dist/components/ai-elements/jsx-preview.cjs +1 -1
  31. package/dist/components/ai-elements/jsx-preview.js +1 -1
  32. package/dist/components/ai-elements/message.cjs +1 -1
  33. package/dist/components/ai-elements/message.js +1 -1
  34. package/dist/components/ai-elements/package-info.cjs +4 -4
  35. package/dist/components/ai-elements/package-info.js +4 -4
  36. package/dist/components/ai-elements/prompt-input-context.cjs +2 -3
  37. package/dist/components/ai-elements/prompt-input-context.js +2 -3
  38. package/dist/components/ai-elements/queue.cjs +2 -2
  39. package/dist/components/ai-elements/queue.js +2 -2
  40. package/dist/components/ai-elements/reasoning.cjs +2 -2
  41. package/dist/components/ai-elements/reasoning.js +2 -2
  42. package/dist/components/ai-elements/sandbox.cjs +3 -3
  43. package/dist/components/ai-elements/sandbox.js +3 -3
  44. package/dist/components/ai-elements/schema-display.cjs +12 -12
  45. package/dist/components/ai-elements/schema-display.js +12 -12
  46. package/dist/components/ai-elements/speech-input.cjs +18 -2
  47. package/dist/components/ai-elements/speech-input.js +16 -0
  48. package/dist/components/ai-elements/stack-trace.cjs +1 -1
  49. package/dist/components/ai-elements/stack-trace.js +1 -1
  50. package/dist/components/ai-elements/task.cjs +3 -3
  51. package/dist/components/ai-elements/task.js +3 -3
  52. package/dist/components/ai-elements/terminal.cjs +2 -2
  53. package/dist/components/ai-elements/terminal.js +2 -2
  54. package/dist/components/ai-elements/test-results.cjs +4 -4
  55. package/dist/components/ai-elements/test-results.js +4 -4
  56. package/dist/components/ai-elements/tool.cjs +4 -4
  57. package/dist/components/ai-elements/tool.js +4 -4
  58. package/dist/components/ai-elements/transcription.cjs +1 -1
  59. package/dist/components/ai-elements/transcription.js +1 -1
  60. package/dist/components/ai-elements/web-preview.cjs +2 -2
  61. package/dist/components/ai-elements/web-preview.js +2 -2
  62. package/dist/components/context-editor/CapabilitySection.cjs +2 -2
  63. package/dist/components/context-editor/CapabilitySection.js +2 -2
  64. package/dist/components/context-editor/ContextEditor.cjs +2 -2
  65. package/dist/components/context-editor/ContextEditor.js +2 -2
  66. package/dist/components/context-editor/PresetBar.cjs +3 -3
  67. package/dist/components/context-editor/PresetBar.js +3 -3
  68. package/dist/components/context-editor/SystemPromptSection.cjs +4 -4
  69. package/dist/components/context-editor/SystemPromptSection.js +4 -4
  70. package/dist/components/context-editor/parts.cjs +6 -6
  71. package/dist/components/context-editor/parts.js +6 -6
  72. package/dist/components/dashboard/activity-list.cjs +2 -2
  73. package/dist/components/dashboard/activity-list.js +2 -2
  74. package/dist/components/dashboard/catalog.cjs +1 -322
  75. package/dist/components/dashboard/catalog.d.cts +1 -2
  76. package/dist/components/dashboard/catalog.d.ts +1 -2
  77. package/dist/components/dashboard/catalog.js +0 -322
  78. package/dist/components/dashboard/catalog.json +312 -0
  79. package/dist/components/dashboard/empty-state.cjs +1 -1
  80. package/dist/components/dashboard/empty-state.js +1 -1
  81. package/dist/components/dashboard/index.d.cts +1 -1
  82. package/dist/components/dashboard/index.d.ts +1 -1
  83. package/dist/components/dashboard/item-list.cjs +2 -2
  84. package/dist/components/dashboard/item-list.js +2 -2
  85. package/dist/components/dashboard/layout.cjs +1 -1
  86. package/dist/components/dashboard/layout.js +1 -1
  87. package/dist/components/dashboard/metric.cjs +1 -1
  88. package/dist/components/dashboard/metric.js +1 -1
  89. package/dist/components/dashboard/stale-indicator.cjs +1 -1
  90. package/dist/components/dashboard/stale-indicator.js +1 -1
  91. package/dist/components/dashboard/status.cjs +6 -2
  92. package/dist/components/dashboard/status.js +7 -3
  93. package/dist/components/dashboard/tone.cjs +9 -1
  94. package/dist/components/dashboard/tone.d.cts +7 -1
  95. package/dist/components/dashboard/tone.d.ts +7 -1
  96. package/dist/components/dashboard/tone.js +8 -0
  97. package/dist/components/dashboard/typography.cjs +4 -4
  98. package/dist/components/dashboard/typography.d.cts +1 -1
  99. package/dist/components/dashboard/typography.d.ts +1 -1
  100. package/dist/components/dashboard/typography.js +4 -4
  101. package/dist/components/model-selection/available-model-picker.cjs +6 -6
  102. package/dist/components/model-selection/available-model-picker.js +6 -6
  103. package/dist/components/model-selection/thinking-level-picker.cjs +1 -1
  104. package/dist/components/model-selection/thinking-level-picker.js +1 -1
  105. package/dist/components/model-selection/thinking-picker.cjs +70 -0
  106. package/dist/components/model-selection/thinking-picker.d.cts +12 -0
  107. package/dist/components/model-selection/thinking-picker.d.ts +12 -0
  108. package/dist/components/model-selection/thinking-picker.js +70 -0
  109. package/dist/components/ui/accordion.cjs +2 -2
  110. package/dist/components/ui/accordion.js +2 -2
  111. package/dist/components/ui/alert-dialog.cjs +4 -2
  112. package/dist/components/ui/alert-dialog.js +4 -2
  113. package/dist/components/ui/alert.cjs +2 -2
  114. package/dist/components/ui/alert.js +2 -2
  115. package/dist/components/ui/avatar.cjs +2 -2
  116. package/dist/components/ui/avatar.js +2 -2
  117. package/dist/components/ui/breadcrumb.cjs +1 -1
  118. package/dist/components/ui/breadcrumb.js +1 -1
  119. package/dist/components/ui/button-group.cjs +1 -1
  120. package/dist/components/ui/button-group.js +1 -1
  121. package/dist/components/ui/button.cjs +1 -1
  122. package/dist/components/ui/button.js +1 -1
  123. package/dist/components/ui/calendar.cjs +2 -2
  124. package/dist/components/ui/calendar.js +2 -2
  125. package/dist/components/ui/card.cjs +1 -1
  126. package/dist/components/ui/card.js +1 -1
  127. package/dist/components/ui/carousel.cjs +3 -2
  128. package/dist/components/ui/carousel.js +2 -1
  129. package/dist/components/ui/chart.cjs +36 -27
  130. package/dist/components/ui/chart.d.cts +21 -17
  131. package/dist/components/ui/chart.d.ts +21 -17
  132. package/dist/components/ui/chart.js +30 -21
  133. package/dist/components/ui/combobox.cjs +7 -5
  134. package/dist/components/ui/combobox.js +7 -5
  135. package/dist/components/ui/command.cjs +3 -3
  136. package/dist/components/ui/command.js +3 -3
  137. package/dist/components/ui/context-menu.cjs +10 -7
  138. package/dist/components/ui/context-menu.js +10 -7
  139. package/dist/components/ui/dialog.cjs +4 -2
  140. package/dist/components/ui/dialog.js +4 -2
  141. package/dist/components/ui/drawer.cjs +4 -2
  142. package/dist/components/ui/drawer.js +4 -2
  143. package/dist/components/ui/dropdown-menu.cjs +10 -7
  144. package/dist/components/ui/dropdown-menu.js +10 -7
  145. package/dist/components/ui/empty.cjs +2 -2
  146. package/dist/components/ui/empty.js +2 -2
  147. package/dist/components/ui/field.cjs +5 -5
  148. package/dist/components/ui/field.js +5 -5
  149. package/dist/components/ui/form.cjs +2 -2
  150. package/dist/components/ui/form.js +2 -2
  151. package/dist/components/ui/hover-card.cjs +3 -1
  152. package/dist/components/ui/hover-card.js +3 -1
  153. package/dist/components/ui/input-group.cjs +3 -3
  154. package/dist/components/ui/input-group.js +3 -3
  155. package/dist/components/ui/input-otp.cjs +1 -1
  156. package/dist/components/ui/input-otp.js +1 -1
  157. package/dist/components/ui/input.cjs +1 -1
  158. package/dist/components/ui/input.js +1 -1
  159. package/dist/components/ui/item.cjs +3 -3
  160. package/dist/components/ui/item.js +3 -3
  161. package/dist/components/ui/label.cjs +1 -1
  162. package/dist/components/ui/label.js +1 -1
  163. package/dist/components/ui/menubar.cjs +9 -7
  164. package/dist/components/ui/menubar.js +9 -7
  165. package/dist/components/ui/native-select.cjs +1 -1
  166. package/dist/components/ui/native-select.js +1 -1
  167. package/dist/components/ui/navigation-menu.cjs +2 -2
  168. package/dist/components/ui/navigation-menu.js +2 -2
  169. package/dist/components/ui/plugin-safety-disclaimer.cjs +1 -1
  170. package/dist/components/ui/plugin-safety-disclaimer.js +1 -1
  171. package/dist/components/ui/popover.cjs +4 -2
  172. package/dist/components/ui/popover.js +4 -2
  173. package/dist/components/ui/select.cjs +5 -3
  174. package/dist/components/ui/select.js +5 -3
  175. package/dist/components/ui/sheet.cjs +4 -2
  176. package/dist/components/ui/sheet.js +4 -2
  177. package/dist/components/ui/sidebar.cjs +5 -5
  178. package/dist/components/ui/sidebar.js +5 -5
  179. package/dist/components/ui/table.cjs +2 -2
  180. package/dist/components/ui/table.js +2 -2
  181. package/dist/components/ui/tabs.cjs +1 -1
  182. package/dist/components/ui/tabs.js +1 -1
  183. package/dist/components/ui/textarea.cjs +1 -1
  184. package/dist/components/ui/textarea.js +1 -1
  185. package/dist/components/ui/toggle.cjs +1 -1
  186. package/dist/components/ui/toggle.js +1 -1
  187. package/dist/components/ui/tooltip.cjs +3 -1
  188. package/dist/components/ui/tooltip.js +3 -1
  189. package/dist/index.cjs +5 -1
  190. package/dist/index.d.cts +4 -1
  191. package/dist/index.d.ts +4 -1
  192. package/dist/index.js +5 -1
  193. package/dist/plugin-style-scope-context.cjs +10 -0
  194. package/dist/plugin-style-scope-context.d.cts +13 -0
  195. package/dist/plugin-style-scope-context.d.ts +13 -0
  196. package/dist/plugin-style-scope-context.js +10 -0
  197. package/dist/plugin-style-scope.cjs +25 -0
  198. package/dist/plugin-style-scope.d.cts +11 -0
  199. package/dist/plugin-style-scope.d.ts +11 -0
  200. package/dist/plugin-style-scope.js +25 -0
  201. package/dist/reference.cjs +1251 -3
  202. package/dist/reference.d.cts +11 -5
  203. package/dist/reference.d.ts +11 -5
  204. package/dist/reference.js +1224 -6
  205. package/dist/styles/globals.css +22 -3
  206. package/dist/styles/plugin-theme.css +80 -0
  207. package/dist/styles/plugin.css +14 -2
  208. package/package.json +53 -70
  209. package/scripts/ensure-pnpm-publish.mjs +23 -0
  210. package/scripts/smoke-dist.mjs +68 -0
  211. package/src/components/ai-elements/agent.tsx +6 -6
  212. package/src/components/ai-elements/artifact.tsx +2 -2
  213. package/src/components/ai-elements/attachments.tsx +2 -2
  214. package/src/components/ai-elements/chain-of-thought.tsx +2 -2
  215. package/src/components/ai-elements/code-block.tsx +6 -3
  216. package/src/components/ai-elements/commit.tsx +2 -2
  217. package/src/components/ai-elements/confirmation.tsx +1 -1
  218. package/src/components/ai-elements/conversation.tsx +2 -2
  219. package/src/components/ai-elements/environment-variables.tsx +3 -3
  220. package/src/components/ai-elements/file-tree.tsx +1 -1
  221. package/src/components/ai-elements/inline-citation.tsx +3 -3
  222. package/src/components/ai-elements/jsx-preview.tsx +1 -1
  223. package/src/components/ai-elements/message.tsx +1 -1
  224. package/src/components/ai-elements/package-info.tsx +4 -4
  225. package/src/components/ai-elements/prompt-input-context.tsx +3 -2
  226. package/src/components/ai-elements/queue.tsx +2 -2
  227. package/src/components/ai-elements/reasoning.tsx +2 -2
  228. package/src/components/ai-elements/sandbox.tsx +3 -3
  229. package/src/components/ai-elements/schema-display.tsx +12 -12
  230. package/src/components/ai-elements/speech-input.tsx +17 -0
  231. package/src/components/ai-elements/stack-trace.tsx +1 -1
  232. package/src/components/ai-elements/task.tsx +3 -3
  233. package/src/components/ai-elements/terminal.tsx +2 -2
  234. package/src/components/ai-elements/test-results.tsx +4 -4
  235. package/src/components/ai-elements/tool.tsx +4 -4
  236. package/src/components/ai-elements/transcription.tsx +1 -1
  237. package/src/components/ai-elements/web-preview.tsx +2 -2
  238. package/src/components/context-editor/CapabilitySection.tsx +2 -2
  239. package/src/components/context-editor/ContextEditor.tsx +2 -2
  240. package/src/components/context-editor/PresetBar.tsx +3 -3
  241. package/src/components/context-editor/SystemPromptSection.tsx +4 -4
  242. package/src/components/context-editor/parts.tsx +6 -6
  243. package/src/components/dashboard/__tests__/catalog.test.ts +7 -2
  244. package/src/components/dashboard/__tests__/state.test.tsx +19 -2
  245. package/src/components/dashboard/activity-list.tsx +2 -2
  246. package/src/components/dashboard/catalog.json +312 -0
  247. package/src/components/dashboard/catalog.ts +6 -328
  248. package/src/components/dashboard/empty-state.tsx +1 -1
  249. package/src/components/dashboard/index.ts +2 -2
  250. package/src/components/dashboard/item-list.tsx +2 -2
  251. package/src/components/dashboard/layout.tsx +1 -1
  252. package/src/components/dashboard/metric.tsx +1 -1
  253. package/src/components/dashboard/stale-indicator.tsx +1 -1
  254. package/src/components/dashboard/status.tsx +15 -2
  255. package/src/components/dashboard/tone.ts +13 -0
  256. package/src/components/dashboard/typography.tsx +5 -5
  257. package/src/components/model-selection/available-model-picker.tsx +7 -7
  258. package/src/components/model-selection/thinking-level-picker.tsx +1 -1
  259. package/src/components/model-selection/thinking-picker.tsx +90 -0
  260. package/src/components/ui/accordion.tsx +2 -2
  261. package/src/components/ui/alert-dialog.tsx +4 -2
  262. package/src/components/ui/alert.tsx +2 -2
  263. package/src/components/ui/avatar.tsx +2 -2
  264. package/src/components/ui/breadcrumb.tsx +1 -1
  265. package/src/components/ui/button-group.tsx +1 -1
  266. package/src/components/ui/button.tsx +1 -1
  267. package/src/components/ui/calendar.tsx +3 -3
  268. package/src/components/ui/card.tsx +1 -1
  269. package/src/components/ui/carousel.tsx +2 -1
  270. package/src/components/ui/chart.tsx +54 -36
  271. package/src/components/ui/combobox.tsx +7 -5
  272. package/src/components/ui/command.tsx +3 -3
  273. package/src/components/ui/context-menu.tsx +10 -7
  274. package/src/components/ui/dialog.tsx +4 -2
  275. package/src/components/ui/drawer.tsx +4 -2
  276. package/src/components/ui/dropdown-menu.tsx +10 -7
  277. package/src/components/ui/empty.tsx +2 -2
  278. package/src/components/ui/field.tsx +5 -5
  279. package/src/components/ui/form.tsx +2 -2
  280. package/src/components/ui/hover-card.tsx +3 -1
  281. package/src/components/ui/input-group.tsx +3 -3
  282. package/src/components/ui/input-otp.tsx +1 -1
  283. package/src/components/ui/input.tsx +1 -1
  284. package/src/components/ui/item.tsx +3 -3
  285. package/src/components/ui/label.tsx +1 -1
  286. package/src/components/ui/menubar.tsx +9 -7
  287. package/src/components/ui/native-select.tsx +1 -1
  288. package/src/components/ui/navigation-menu.tsx +2 -2
  289. package/src/components/ui/plugin-safety-disclaimer.tsx +1 -1
  290. package/src/components/ui/popover.tsx +4 -2
  291. package/src/components/ui/select.tsx +5 -3
  292. package/src/components/ui/sheet.tsx +4 -2
  293. package/src/components/ui/sidebar.tsx +5 -5
  294. package/src/components/ui/table.tsx +2 -2
  295. package/src/components/ui/tabs.tsx +1 -1
  296. package/src/components/ui/textarea.tsx +1 -1
  297. package/src/components/ui/toggle.tsx +1 -1
  298. package/src/components/ui/tooltip.tsx +3 -1
  299. package/src/index.ts +5 -1
  300. package/src/plugin-style-scope-context.ts +21 -0
  301. package/src/plugin-style-scope.test.tsx +38 -0
  302. package/src/plugin-style-scope.tsx +35 -0
  303. package/src/styles/globals.css +22 -3
  304. package/src/styles/plugin-theme.css +80 -0
  305. package/src/styles/plugin.css +14 -2
  306. package/tsup.config.ts +13 -3
  307. package/tsup.reference.config.ts +15 -0
  308. package/dist/components/reference/ActivityExample.cjs +0 -47
  309. package/dist/components/reference/ActivityExample.d.cts +0 -5
  310. package/dist/components/reference/ActivityExample.d.ts +0 -5
  311. package/dist/components/reference/ActivityExample.js +0 -47
  312. package/dist/components/reference/ResourceExample.cjs +0 -54
  313. package/dist/components/reference/ResourceExample.d.cts +0 -5
  314. package/dist/components/reference/ResourceExample.d.ts +0 -5
  315. package/dist/components/reference/ResourceExample.js +0 -54
  316. package/dist/components/reference/SchedulerExample.cjs +0 -68
  317. package/dist/components/reference/SchedulerExample.d.cts +0 -5
  318. package/dist/components/reference/SchedulerExample.d.ts +0 -5
  319. package/dist/components/reference/SchedulerExample.js +0 -68
  320. package/dist/components/reference/StarterExample.cjs +0 -34
  321. package/dist/components/reference/StarterExample.d.cts +0 -5
  322. package/dist/components/reference/StarterExample.d.ts +0 -5
  323. package/dist/components/reference/StarterExample.js +0 -34
  324. package/dist/components/reference/index.cjs +0 -10
  325. package/dist/components/reference/index.d.cts +0 -5
  326. package/dist/components/reference/index.d.ts +0 -5
  327. package/dist/components/reference/index.js +0 -10
  328. package/dist/dashboard-catalog.cjs +0 -8
  329. package/dist/dashboard-catalog.d.cts +0 -1
  330. package/dist/dashboard-catalog.d.ts +0 -1
  331. package/dist/dashboard-catalog.js +0 -8
  332. package/src/dashboard-catalog.ts +0 -13
@@ -116,7 +116,7 @@
116
116
  /* Typography (themeable) */
117
117
  --font-sans: system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
118
118
  --font-mono: 'JetBrains Mono', 'SF Mono', 'Fira Code', 'Cascadia Code', Menlo, monospace;
119
- --font-size-base: 14px;
119
+ --font-size-base: 13px;
120
120
 
121
121
  /* Spacing */
122
122
  --space-xs: 4px;
@@ -132,7 +132,7 @@
132
132
 
133
133
  /* Sero font sizes (legacy — use Tailwind text-* for new components) */
134
134
  --sero-text-xs: 12px;
135
- --sero-text-sm: 13px;
135
+ --sero-text-base: 13px;
136
136
  --sero-text-base: 14px;
137
137
  --sero-text-lg: 15px;
138
138
  --sero-text-xl: 16px;
@@ -236,6 +236,14 @@
236
236
  }
237
237
 
238
238
  @theme inline {
239
+ --text-xs: 0.8rem;
240
+ --text-xs--line-height: 1rem;
241
+
242
+ --text-sm: 0.9rem;
243
+ --text-sm--line-height: 1.2rem;
244
+
245
+ --text-base--line-height: 1.4rem;
246
+
239
247
  --radius-sm: calc(var(--radius) - 4px);
240
248
  --radius-md: calc(var(--radius) - 2px);
241
249
  --radius-lg: var(--radius);
@@ -483,7 +491,7 @@
483
491
  }
484
492
 
485
493
  html {
486
- font-size: var(--font-size-base, 14px);
494
+ font-size: var(--font-size-base, 13px);
487
495
  font-family: var(--font-sans);
488
496
  }
489
497
 
@@ -495,3 +503,14 @@ html {
495
503
  @apply bg-background text-foreground;
496
504
  }
497
505
  }
506
+
507
+ @media (prefers-reduced-motion: reduce) {
508
+ *,
509
+ *::before,
510
+ *::after {
511
+ animation-duration: 0.01ms !important;
512
+ animation-iteration-count: 1 !important;
513
+ scroll-behavior: auto !important;
514
+ transition-duration: 0.01ms !important;
515
+ }
516
+ }
@@ -0,0 +1,80 @@
1
+ @theme inline {
2
+ --text-xs: 0.8rem;
3
+ --text-xs--line-height: 1rem;
4
+
5
+ --text-sm: 0.9rem;
6
+ --text-sm--line-height: 1.2rem;
7
+
8
+ --text-base--line-height: 1.4rem;
9
+
10
+ --radius-sm: calc(var(--radius) - 4px);
11
+ --radius-md: calc(var(--radius) - 2px);
12
+ --radius-lg: var(--radius);
13
+ --radius-xl: calc(var(--radius) + 4px);
14
+ --radius-2xl: calc(var(--radius) + 8px);
15
+ --radius-3xl: calc(var(--radius) + 12px);
16
+ --radius-4xl: calc(var(--radius) + 16px);
17
+ --color-background: var(--background);
18
+ --color-foreground: var(--foreground);
19
+ --color-brand-primary: var(--brand-primary);
20
+ --color-brand-primary-foreground: var(--brand-primary-foreground);
21
+ --color-brand-primary-muted: var(--brand-primary-muted);
22
+ --color-brand-primary-subtle: var(--brand-primary-subtle);
23
+ --color-brand-primary-faint: var(--brand-primary-faint);
24
+ --color-brand-primary-border: var(--brand-primary-border);
25
+ --color-brand-secondary: var(--brand-secondary);
26
+ --color-brand-secondary-foreground: var(--brand-secondary-foreground);
27
+ --color-brand-secondary-muted: var(--brand-secondary-muted);
28
+ --color-brand-secondary-subtle: var(--brand-secondary-subtle);
29
+ --color-brand-secondary-faint: var(--brand-secondary-faint);
30
+ --color-brand-secondary-border: var(--brand-secondary-border);
31
+ --color-status-success: var(--status-success);
32
+ --color-status-success-muted: var(--status-success-muted);
33
+ --color-status-success-subtle: var(--status-success-subtle);
34
+ --color-status-success-faint: var(--status-success-faint);
35
+ --color-status-success-border: var(--status-success-border);
36
+ --color-status-warning: var(--status-warning);
37
+ --color-status-warning-muted: var(--status-warning-muted);
38
+ --color-status-warning-subtle: var(--status-warning-subtle);
39
+ --color-status-warning-faint: var(--status-warning-faint);
40
+ --color-status-warning-border: var(--status-warning-border);
41
+ --color-status-error: var(--status-error);
42
+ --color-status-error-muted: var(--status-error-muted);
43
+ --color-status-error-subtle: var(--status-error-subtle);
44
+ --color-status-error-faint: var(--status-error-faint);
45
+ --color-status-error-border: var(--status-error-border);
46
+ --color-status-info: var(--status-info);
47
+ --color-status-info-muted: var(--status-info-muted);
48
+ --color-status-info-subtle: var(--status-info-subtle);
49
+ --color-status-info-faint: var(--status-info-faint);
50
+ --color-status-info-border: var(--status-info-border);
51
+ --color-card: var(--card);
52
+ --color-card-foreground: var(--card-foreground);
53
+ --color-popover: var(--popover);
54
+ --color-popover-foreground: var(--popover-foreground);
55
+ --color-primary: var(--primary);
56
+ --color-primary-foreground: var(--primary-foreground);
57
+ --color-secondary: var(--secondary);
58
+ --color-secondary-foreground: var(--secondary-foreground);
59
+ --color-muted: var(--muted);
60
+ --color-muted-foreground: var(--muted-foreground);
61
+ --color-accent: var(--accent);
62
+ --color-accent-foreground: var(--accent-foreground);
63
+ --color-destructive: var(--destructive);
64
+ --color-border: var(--border);
65
+ --color-input: var(--input);
66
+ --color-ring: var(--ring);
67
+ --color-chart-1: var(--chart-1);
68
+ --color-chart-2: var(--chart-2);
69
+ --color-chart-3: var(--chart-3);
70
+ --color-chart-4: var(--chart-4);
71
+ --color-chart-5: var(--chart-5);
72
+ --color-sidebar: var(--sidebar);
73
+ --color-sidebar-foreground: var(--sidebar-foreground);
74
+ --color-sidebar-primary: var(--sidebar-primary);
75
+ --color-sidebar-primary-foreground: var(--sidebar-primary-foreground);
76
+ --color-sidebar-accent: var(--sidebar-accent);
77
+ --color-sidebar-accent-foreground: var(--sidebar-accent-foreground);
78
+ --color-sidebar-border: var(--sidebar-border);
79
+ --color-sidebar-ring: var(--sidebar-ring);
80
+ }
@@ -1,4 +1,16 @@
1
- @import "./globals.css";
1
+ @import "tailwindcss";
2
+ @import "tw-animate-css";
3
+ @import "shadcn/tailwind.css";
4
+ @import "./plugin-theme.css";
5
+
6
+ @source "../components";
7
+
8
+ @custom-variant dark (&:is(.dark *));
2
9
 
3
10
  /* Federated Sero plugins should import this file, then add plugin-local
4
- @source directives. It keeps Tailwind 4 token names aligned with the shell. */
11
+ @source directives. The seroPluginCssScope Vite helper rewrites this file's
12
+ document-level selectors (:root/:host theme blocks, html/body preflight) to
13
+ :scope, so a plugin's default Tailwind theme and resets are self-contained on
14
+ its own scope root. Sero design tokens (--background, --brand-*, …) are still
15
+ owned by the host: plugin-theme.css references them via @theme inline, so
16
+ they inherit from the host document root. */
package/package.json CHANGED
@@ -1,67 +1,43 @@
1
1
  {
2
2
  "name": "@sero-ai/ui",
3
- "version": "0.4.0",
3
+ "version": "0.4.2",
4
4
  "description": "Shared UI components, AI elements, and design tokens for the Sero platform",
5
5
  "type": "module",
6
- "main": "./src/index.ts",
7
- "types": "./src/index.ts",
6
+ "main": "./dist/index.js",
7
+ "types": "./dist/index.d.ts",
8
8
  "exports": {
9
- ".": "./src/index.ts",
10
- "./dashboard-catalog": "./src/dashboard-catalog.ts",
11
- "./reference": "./src/reference.ts",
12
- "./theme": "./src/theme/index.ts",
13
- "./theme/*": "./src/theme/*",
14
- "./styles/*": "./src/styles/*",
9
+ ".": {
10
+ "types": "./dist/index.d.ts",
11
+ "import": "./dist/index.js",
12
+ "require": "./dist/index.cjs"
13
+ },
14
+ "./dashboard-catalog.json": "./dist/components/dashboard/catalog.json",
15
+ "./reference": {
16
+ "types": "./dist/reference.d.ts",
17
+ "import": "./dist/reference.js",
18
+ "require": "./dist/reference.cjs"
19
+ },
20
+ "./theme": {
21
+ "types": "./dist/theme/index.d.ts",
22
+ "import": "./dist/theme/index.js",
23
+ "require": "./dist/theme/index.cjs"
24
+ },
25
+ "./theme/*": {
26
+ "types": "./dist/theme/*.d.ts",
27
+ "import": "./dist/theme/*.js",
28
+ "require": "./dist/theme/*.cjs"
29
+ },
30
+ "./styles/*": "./dist/styles/*",
15
31
  "./package.json": "./package.json",
16
- "./*": "./src/*"
17
- },
18
- "scripts": {
19
- "build": "tsup",
20
- "typecheck": "tsc --noEmit",
21
- "test": "vitest run"
22
- },
23
- "publishConfig": {
24
- "main": "./dist/index.js",
25
- "module": "./dist/index.js",
26
- "types": "./dist/index.d.ts",
27
- "exports": {
28
- ".": {
29
- "types": "./dist/index.d.ts",
30
- "import": "./dist/index.js",
31
- "require": "./dist/index.cjs"
32
- },
33
- "./dashboard-catalog": {
34
- "types": "./dist/dashboard-catalog.d.ts",
35
- "import": "./dist/dashboard-catalog.js",
36
- "require": "./dist/dashboard-catalog.cjs"
37
- },
38
- "./reference": {
39
- "types": "./dist/reference.d.ts",
40
- "import": "./dist/reference.js",
41
- "require": "./dist/reference.cjs"
42
- },
43
- "./theme": {
44
- "types": "./dist/theme/index.d.ts",
45
- "import": "./dist/theme/index.js",
46
- "require": "./dist/theme/index.cjs"
47
- },
48
- "./theme/*": {
49
- "types": "./dist/theme/*.d.ts",
50
- "import": "./dist/theme/*.js",
51
- "require": "./dist/theme/*.cjs"
52
- },
53
- "./styles/*": "./dist/styles/*",
54
- "./package.json": "./package.json",
55
- "./*": {
56
- "types": "./dist/*.d.ts",
57
- "import": "./dist/*.js",
58
- "require": "./dist/*.cjs"
59
- }
32
+ "./*": {
33
+ "types": "./dist/*.d.ts",
34
+ "import": "./dist/*.js",
35
+ "require": "./dist/*.cjs"
60
36
  }
61
37
  },
62
38
  "peerDependencies": {
63
- "react": "catalog:peer",
64
- "react-dom": "catalog:peer"
39
+ "react": "^19.2.4",
40
+ "react-dom": "^19.2.4"
65
41
  },
66
42
  "dependencies": {
67
43
  "@base-ui/react": "^1.3.0",
@@ -70,7 +46,6 @@
70
46
  "@radix-ui/react-use-controllable-state": "^1.2.2",
71
47
  "@remixicon/react": "^4.9.0",
72
48
  "@rive-app/react-webgl2": "^4.27.1",
73
- "@sero-ai/common": "workspace:*",
74
49
  "@streamdown/cjk": "^1.0.2",
75
50
  "@streamdown/code": "^1.1.0",
76
51
  "@streamdown/math": "^1.0.2",
@@ -84,9 +59,9 @@
84
59
  "date-fns": "^4.1.0",
85
60
  "embla-carousel-react": "^8.6.0",
86
61
  "input-otp": "^1.4.2",
87
- "lucide-react": "catalog:",
62
+ "lucide-react": "^0.563.0",
88
63
  "media-chrome": "^4.18.0",
89
- "motion": "catalog:",
64
+ "motion": "^12.34.0",
90
65
  "nanoid": "^5.1.11",
91
66
  "next-themes": "^0.4.6",
92
67
  "radix-ui": "^1.4.3",
@@ -95,28 +70,36 @@
95
70
  "react-jsx-parser": "^2.4.1",
96
71
  "react-resizable-panels": "^4.7.2",
97
72
  "react-syntax-highlighter": "^16.1.1",
98
- "recharts": "2.15.4",
73
+ "recharts": "3.9.2",
99
74
  "shiki": "^3.23.0",
100
75
  "sonner": "^2.0.7",
101
- "streamdown": "catalog:",
76
+ "streamdown": "^2.5.0",
102
77
  "tailwind-merge": "^3.5.0",
103
78
  "tokenlens": "^1.3.1",
104
79
  "use-stick-to-bottom": "^1.1.4",
105
- "vaul": "^1.1.2"
80
+ "vaul": "^1.1.2",
81
+ "@sero-ai/common": "0.3.1"
106
82
  },
107
83
  "devDependencies": {
108
84
  "@hookform/resolvers": "^5.2.2",
109
- "@types/react": "catalog:",
110
- "@types/react-dom": "catalog:",
85
+ "@types/react": "^19.2.13",
86
+ "@types/react-dom": "^19.2.3",
111
87
  "@types/react-syntax-highlighter": "^15.5.13",
112
88
  "jsdom": "^26.1.0",
113
- "react": "catalog:peer",
114
- "react-dom": "catalog:peer",
89
+ "react": "^19.2.4",
90
+ "react-dom": "^19.2.4",
115
91
  "shadcn": "^3.8.5",
116
- "tailwindcss": "catalog:",
92
+ "tailwindcss": "4.1.18",
117
93
  "tsup": "^8.5.1",
118
94
  "tw-animate-css": "^1.4.0",
119
- "typescript": "catalog:",
120
- "vitest": "catalog:"
121
- }
122
- }
95
+ "typescript": "^5.9.3",
96
+ "vitest": "^4.1.7"
97
+ },
98
+ "scripts": {
99
+ "build": "tsup && tsup --config tsup.reference.config.ts",
100
+ "typecheck": "tsc --noEmit",
101
+ "test": "vitest run",
102
+ "smoke": "node scripts/smoke-dist.mjs"
103
+ },
104
+ "module": "./dist/index.js"
105
+ }
@@ -0,0 +1,23 @@
1
+ // Publish guard — this package MUST be published with `pnpm publish`.
2
+ //
3
+ // The `publishConfig` block swaps main/types/exports over to the built `dist/`
4
+ // at publish time. That override is a pnpm (and yarn) feature; plain npm
5
+ // IGNORES it and publishes the top-level fields, which point at `src/`. So
6
+ // `npm publish` here silently ships raw TypeScript source instead of the
7
+ // compiled package — exactly how 0.4.0 went out wrong.
8
+ //
9
+ // This runs from `prepublishOnly`, so it fires on every publish. It aborts
10
+ // unless the invoking package manager is pnpm.
11
+
12
+ const ua = process.env.npm_config_user_agent ?? "";
13
+
14
+ if (!ua.startsWith("pnpm")) {
15
+ const tool = ua.split("/")[0] || "an unknown tool";
16
+ console.error(
17
+ `\n✖ @sero-ai/ui must be published with pnpm, but this ran under ${tool}.\n\n` +
18
+ " Plain npm ignores the publishConfig dist overrides and would ship raw\n" +
19
+ " TypeScript source instead of the built dist/. Use:\n\n" +
20
+ " pnpm publish (from packages/ui)\n",
21
+ );
22
+ process.exit(1);
23
+ }
@@ -0,0 +1,68 @@
1
+ // Smoke test for the published artifact.
2
+ //
3
+ // The package is bundle:false and bundler-resolved, so its public entrypoints
4
+ // are easy to break under raw Node ESM (extensionless / directory imports).
5
+ // This runs the built dist the way a published consumer would: it imports the
6
+ // reference entry (ESM + CJS) and reads the catalogue JSON, failing loudly if
7
+ // any entrypoint no longer resolves. Run after `pnpm build`.
8
+
9
+ import { createRequire } from "node:module";
10
+ import { existsSync, readFileSync } from "node:fs";
11
+ import { fileURLToPath } from "node:url";
12
+ import { dirname, resolve } from "node:path";
13
+
14
+ const require = createRequire(import.meta.url);
15
+ const here = dirname(fileURLToPath(import.meta.url));
16
+ const dist = resolve(here, "..", "dist");
17
+
18
+ const fail = (msg) => {
19
+ console.error(`✗ ${msg}`);
20
+ process.exitCode = 1;
21
+ };
22
+
23
+ if (!existsSync(dist)) {
24
+ fail("dist/ is missing — run `pnpm build` first");
25
+ process.exit(1);
26
+ }
27
+
28
+ // 1. Reference entrypoint resolves as ESM and exposes the example widgets.
29
+ const EXPECTED = [
30
+ "StarterExample",
31
+ "SchedulerExample",
32
+ "ResourceExample",
33
+ "ActivityExample",
34
+ ];
35
+
36
+ const esm = await import(resolve(dist, "reference.js"));
37
+ for (const name of EXPECTED) {
38
+ if (typeof esm[name] !== "function") fail(`reference.js missing export ${name}`);
39
+ }
40
+
41
+ // 2. Reference entrypoint resolves as CJS too.
42
+ const cjs = require(resolve(dist, "reference.cjs"));
43
+ for (const name of EXPECTED) {
44
+ if (typeof cjs[name] !== "function") fail(`reference.cjs missing export ${name}`);
45
+ }
46
+
47
+ // The publishConfig `types` map points at these; a clean-race once dropped them.
48
+ for (const f of ["reference.d.ts", "reference.d.cts"]) {
49
+ if (!existsSync(resolve(dist, f))) fail(`${f} not emitted to dist`);
50
+ }
51
+
52
+ // 3. Catalogue ships as plain JSON with the expected shape.
53
+ const catalogPath = resolve(dist, "components", "dashboard", "catalog.json");
54
+ if (!existsSync(catalogPath)) fail("dashboard-catalog.json not emitted to dist");
55
+ else {
56
+ const catalog = JSON.parse(readFileSync(catalogPath, "utf8"));
57
+ if (!Array.isArray(catalog) || catalog.length === 0) {
58
+ fail("dashboard-catalog.json is not a non-empty array");
59
+ } else if (!catalog.every((e) => e.name && e.category && e.kind)) {
60
+ fail("dashboard-catalog.json has malformed entries");
61
+ }
62
+ }
63
+
64
+ if (process.exitCode) {
65
+ console.error("Smoke test failed.");
66
+ } else {
67
+ console.log("✓ dist entrypoints resolve (reference esm+cjs, catalog json)");
68
+ }
@@ -41,7 +41,7 @@ export const AgentHeader = memo(
41
41
  >
42
42
  <div className="flex items-center gap-2">
43
43
  <BotIcon className="size-4 text-muted-foreground" />
44
- <span className="font-medium text-sm">{name}</span>
44
+ <span className="font-medium text-base">{name}</span>
45
45
  {model && (
46
46
  <Badge className="font-mono text-xs" variant="secondary">
47
47
  {model}
@@ -67,10 +67,10 @@ export type AgentInstructionsProps = ComponentProps<"div"> & {
67
67
  export const AgentInstructions = memo(
68
68
  ({ className, children, ...props }: AgentInstructionsProps) => (
69
69
  <div className={cn("space-y-2", className)} {...props}>
70
- <span className="font-medium text-muted-foreground text-sm">
70
+ <span className="font-medium text-muted-foreground text-base">
71
71
  Instructions
72
72
  </span>
73
- <div className="rounded-md bg-muted/50 p-3 text-muted-foreground text-sm">
73
+ <div className="rounded-md bg-muted/50 p-3 text-muted-foreground text-base">
74
74
  <p>{children}</p>
75
75
  </div>
76
76
  </div>
@@ -81,7 +81,7 @@ export type AgentToolsProps = ComponentProps<typeof Accordion>;
81
81
 
82
82
  export const AgentTools = memo(({ className, ...props }: AgentToolsProps) => (
83
83
  <div className={cn("space-y-2", className)}>
84
- <span className="font-medium text-muted-foreground text-sm">Tools</span>
84
+ <span className="font-medium text-muted-foreground text-base">Tools</span>
85
85
  <Accordion className="rounded-md border" {...props} />
86
86
  </div>
87
87
  ));
@@ -103,7 +103,7 @@ export const AgentTool = memo(
103
103
  value={value}
104
104
  {...props}
105
105
  >
106
- <AccordionTrigger className="px-3 py-2 text-sm hover:no-underline">
106
+ <AccordionTrigger className="px-3 py-2 text-base hover:no-underline">
107
107
  {tool.description ?? "No description"}
108
108
  </AccordionTrigger>
109
109
  <AccordionContent className="px-3 pb-3">
@@ -123,7 +123,7 @@ export type AgentOutputProps = ComponentProps<"div"> & {
123
123
  export const AgentOutput = memo(
124
124
  ({ className, schema, ...props }: AgentOutputProps) => (
125
125
  <div className={cn("space-y-2", className)} {...props}>
126
- <span className="font-medium text-muted-foreground text-sm">
126
+ <span className="font-medium text-muted-foreground text-base">
127
127
  Output Schema
128
128
  </span>
129
129
  <div className="rounded-md bg-muted/50">
@@ -68,7 +68,7 @@ export type ArtifactTitleProps = HTMLAttributes<HTMLParagraphElement>;
68
68
 
69
69
  export const ArtifactTitle = ({ className, ...props }: ArtifactTitleProps) => (
70
70
  <p
71
- className={cn("font-medium text-foreground text-sm", className)}
71
+ className={cn("font-medium text-foreground text-base", className)}
72
72
  {...props}
73
73
  />
74
74
  );
@@ -79,7 +79,7 @@ export const ArtifactDescription = ({
79
79
  className,
80
80
  ...props
81
81
  }: ArtifactDescriptionProps) => (
82
- <p className={cn("text-muted-foreground text-sm", className)} {...props} />
82
+ <p className={cn("text-muted-foreground text-base", className)} {...props} />
83
83
  );
84
84
 
85
85
  export type ArtifactActionsProps = HTMLAttributes<HTMLDivElement>;
@@ -209,7 +209,7 @@ export const Attachment = ({
209
209
  variant === "inline" && [
210
210
  "flex h-8 cursor-pointer select-none items-center gap-1.5",
211
211
  "rounded-md border border-border px-1.5",
212
- "font-medium text-sm transition-all",
212
+ "font-medium text-base transition-all",
213
213
  "hover:bg-accent hover:text-accent-foreground dark:hover:bg-accent/50",
214
214
  ],
215
215
  variant === "list" && [
@@ -417,7 +417,7 @@ export const AttachmentEmpty = ({
417
417
  }: AttachmentEmptyProps) => (
418
418
  <div
419
419
  className={cn(
420
- "flex items-center justify-center p-4 text-muted-foreground text-sm",
420
+ "flex items-center justify-center p-4 text-muted-foreground text-base",
421
421
  className
422
422
  )}
423
423
  {...props}
@@ -81,7 +81,7 @@ export const ChainOfThoughtHeader = memo(
81
81
  <Collapsible onOpenChange={setIsOpen} open={isOpen}>
82
82
  <CollapsibleTrigger
83
83
  className={cn(
84
- "flex w-full items-center gap-2 text-muted-foreground text-sm transition-colors hover:text-foreground",
84
+ "flex w-full items-center gap-2 text-muted-foreground text-base transition-colors hover:text-foreground",
85
85
  className
86
86
  )}
87
87
  {...props}
@@ -127,7 +127,7 @@ export const ChainOfThoughtStep = memo(
127
127
  }: ChainOfThoughtStepProps) => (
128
128
  <div
129
129
  className={cn(
130
- "flex gap-2 text-sm",
130
+ "flex gap-2 text-base",
131
131
  stepStatusStyles[status],
132
132
  "fade-in-0 slide-in-from-top-2 animate-in",
133
133
  className
@@ -276,14 +276,14 @@ const CodeBlockBody = memo(
276
276
  return (
277
277
  <pre
278
278
  className={cn(
279
- "dark:!bg-[var(--shiki-dark-bg)] dark:!text-[var(--shiki-dark)] m-0 p-4 text-sm",
279
+ "dark:!bg-[var(--shiki-dark-bg)] dark:!text-[var(--shiki-dark)] m-0 p-4 text-base",
280
280
  className
281
281
  )}
282
282
  style={preStyle}
283
283
  >
284
284
  <code
285
285
  className={cn(
286
- "font-mono text-sm",
286
+ "font-mono",
287
287
  showLineNumbers && "[counter-increment:line_0] [counter-reset:line]"
288
288
  )}
289
289
  >
@@ -380,10 +380,12 @@ export const CodeBlockContent = ({
380
380
  code,
381
381
  language,
382
382
  showLineNumbers = false,
383
+ className
383
384
  }: {
384
385
  code: string;
385
386
  language: BundledLanguage;
386
387
  showLineNumbers?: boolean;
388
+ className?: string
387
389
  }) => {
388
390
  // Memoized raw tokens for immediate display
389
391
  const rawTokens = useMemo(() => createRawTokens(code), [code]);
@@ -413,7 +415,7 @@ export const CodeBlockContent = ({
413
415
 
414
416
  return (
415
417
  <div className="relative overflow-auto">
416
- <CodeBlockBody showLineNumbers={showLineNumbers} tokenized={tokenized} />
418
+ <CodeBlockBody showLineNumbers={showLineNumbers} tokenized={tokenized} className={className} />
417
419
  </div>
418
420
  );
419
421
  };
@@ -436,6 +438,7 @@ export const CodeBlock = ({
436
438
  code={code}
437
439
  language={language}
438
440
  showLineNumbers={showLineNumbers}
441
+ className={className}
439
442
  />
440
443
  </CodeBlockContainer>
441
444
  </CodeBlockContext.Provider>
@@ -70,7 +70,7 @@ export const CommitMessage = ({
70
70
  children,
71
71
  ...props
72
72
  }: CommitMessageProps) => (
73
- <span className={cn("font-medium text-sm", className)} {...props}>
73
+ <span className={cn("font-medium text-base", className)} {...props}>
74
74
  {children}
75
75
  </span>
76
76
  );
@@ -291,7 +291,7 @@ export const CommitFile = ({
291
291
  }: CommitFileProps) => (
292
292
  <div
293
293
  className={cn(
294
- "flex items-center justify-between gap-2 rounded px-2 py-1 text-sm hover:bg-muted/50",
294
+ "flex items-center justify-between gap-2 rounded px-2 py-1 text-base hover:bg-muted/50",
295
295
  className
296
296
  )}
297
297
  {...props}
@@ -169,5 +169,5 @@ export const ConfirmationActions = ({
169
169
  export type ConfirmationActionProps = ComponentProps<typeof Button>;
170
170
 
171
171
  export const ConfirmationAction = (props: ConfirmationActionProps) => (
172
- <Button className="h-8 px-3 text-sm" type="button" {...props} />
172
+ <Button className="h-8 px-3 text-base" type="button" {...props} />
173
173
  );
@@ -59,9 +59,9 @@ export const ConversationEmptyState = ({
59
59
  <>
60
60
  {icon && <div className="text-muted-foreground">{icon}</div>}
61
61
  <div className="space-y-1">
62
- <h3 className="font-medium text-sm">{title}</h3>
62
+ <h3 className="font-medium text-base">{title}</h3>
63
63
  {description && (
64
- <p className="text-muted-foreground text-sm">{description}</p>
64
+ <p className="text-muted-foreground text-base">{description}</p>
65
65
  )}
66
66
  </div>
67
67
  </>
@@ -100,7 +100,7 @@ export const EnvironmentVariablesTitle = ({
100
100
  children,
101
101
  ...props
102
102
  }: EnvironmentVariablesTitleProps) => (
103
- <h3 className={cn("font-medium text-sm", className)} {...props}>
103
+ <h3 className={cn("font-medium text-base", className)} {...props}>
104
104
  {children ?? "Environment Variables"}
105
105
  </h3>
106
106
  );
@@ -209,7 +209,7 @@ export const EnvironmentVariableName = ({
209
209
  const { name } = use(EnvironmentVariableContext);
210
210
 
211
211
  return (
212
- <span className={cn("font-mono text-sm", className)} {...props}>
212
+ <span className={cn("font-mono text-base", className)} {...props}>
213
213
  {children ?? name}
214
214
  </span>
215
215
  );
@@ -232,7 +232,7 @@ export const EnvironmentVariableValue = ({
232
232
  return (
233
233
  <span
234
234
  className={cn(
235
- "font-mono text-muted-foreground text-sm",
235
+ "font-mono text-muted-foreground text-base",
236
236
  !showValues && "select-none",
237
237
  className
238
238
  )}
@@ -83,7 +83,7 @@ export const FileTree = ({
83
83
  <FileTreeContext.Provider value={contextValue}>
84
84
  <div
85
85
  className={cn(
86
- "rounded-lg border bg-background font-mono text-sm",
86
+ "rounded-lg border bg-background font-mono text-base",
87
87
  className
88
88
  )}
89
89
  role="tree"