@opencode-ai/ui 0.0.0-beta-202606260802 → 0.0.0-beta-202606260922

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 (125) hide show
  1. package/dist/components/accordion.d.ts +24 -0
  2. package/dist/components/animated-number.d.ts +4 -0
  3. package/dist/components/app-icon.d.ts +6 -0
  4. package/dist/components/app-icons/types.d.ts +2 -0
  5. package/dist/components/avatar.d.ts +9 -0
  6. package/dist/components/button.d.ts +9 -0
  7. package/dist/components/card.d.ts +22 -0
  8. package/dist/components/checkbox.d.ts +8 -0
  9. package/dist/components/collapsible.d.ts +17 -0
  10. package/dist/components/context-menu.d.ts +80 -0
  11. package/dist/components/dialog.d.ts +12 -0
  12. package/dist/components/diff-changes.d.ts +11 -0
  13. package/dist/components/dock-surface.d.ts +7 -0
  14. package/dist/components/dropdown-menu.d.ts +80 -0
  15. package/dist/components/favicon.d.ts +1 -0
  16. package/dist/components/file-icon.d.ts +12 -0
  17. package/dist/components/file-icons/types.d.ts +2 -0
  18. package/dist/components/font.d.ts +1 -0
  19. package/dist/components/hover-card.d.ts +9 -0
  20. package/dist/components/icon-button.d.ts +10 -0
  21. package/dist/components/icon.d.ts +104 -0
  22. package/dist/components/image-preview.d.ts +5 -0
  23. package/dist/components/inline-input.d.ts +5 -0
  24. package/dist/components/keybind.d.ts +6 -0
  25. package/dist/components/list.d.ts +45 -0
  26. package/dist/components/logo.d.ts +8 -0
  27. package/dist/components/motion-spring.d.ts +4 -0
  28. package/dist/components/popover.d.ts +14 -0
  29. package/dist/components/progress-circle.d.ts +7 -0
  30. package/dist/components/progress.d.ts +7 -0
  31. package/dist/components/provider-icon.d.ts +5 -0
  32. package/dist/components/provider-icons/types.d.ts +2 -0
  33. package/dist/components/radio-group.d.ts +16 -0
  34. package/dist/components/resize-handle.d.ts +12 -0
  35. package/dist/components/scroll-view.d.ts +15 -0
  36. package/dist/components/select.d.ts +21 -0
  37. package/dist/components/spinner.d.ts +6 -0
  38. package/dist/components/sticky-accordion-header.d.ts +5 -0
  39. package/dist/components/switch.d.ts +7 -0
  40. package/dist/components/tabs.d.ts +32 -0
  41. package/dist/components/tag.d.ts +5 -0
  42. package/dist/components/text-field.d.ts +13 -0
  43. package/dist/components/text-reveal.d.ts +13 -0
  44. package/dist/components/text-shimmer.d.ts +8 -0
  45. package/dist/components/text-strikethrough.d.ts +11 -0
  46. package/dist/components/toast.d.ts +56 -0
  47. package/dist/components/tooltip.d.ts +17 -0
  48. package/dist/components/typewriter.d.ts +6 -0
  49. package/dist/context/dialog.d.ts +18 -0
  50. package/dist/context/file.d.ts +5 -0
  51. package/dist/context/helper.d.ts +14 -0
  52. package/dist/context/i18n.d.ts +12 -0
  53. package/dist/context/index.d.ts +4 -0
  54. package/dist/context/marked.d.ts +9 -0
  55. package/dist/context/worker-pool.d.ts +9 -0
  56. package/dist/hooks/create-auto-scroll.d.ts +17 -0
  57. package/dist/hooks/index.d.ts +2 -0
  58. package/dist/hooks/use-filtered-list.d.ts +39 -0
  59. package/dist/i18n/ar.d.ts +148 -0
  60. package/dist/i18n/br.d.ts +148 -0
  61. package/dist/i18n/bs.d.ts +148 -0
  62. package/dist/i18n/da.d.ts +148 -0
  63. package/dist/i18n/de.d.ts +148 -0
  64. package/dist/i18n/en.d.ts +1 -0
  65. package/dist/i18n/es.d.ts +148 -0
  66. package/dist/i18n/fr.d.ts +148 -0
  67. package/dist/i18n/ja.d.ts +148 -0
  68. package/dist/i18n/ko.d.ts +148 -0
  69. package/dist/i18n/no.d.ts +4 -0
  70. package/dist/i18n/pl.d.ts +148 -0
  71. package/dist/i18n/ru.d.ts +148 -0
  72. package/dist/i18n/th.d.ts +148 -0
  73. package/dist/i18n/tr.d.ts +148 -0
  74. package/dist/i18n/uk.d.ts +1 -0
  75. package/dist/i18n/zh.d.ts +148 -0
  76. package/dist/i18n/zht.d.ts +148 -0
  77. package/dist/storybook/fixtures.d.ts +19 -0
  78. package/dist/storybook/scaffold.d.ts +16 -0
  79. package/dist/theme/color.d.ts +30 -0
  80. package/dist/theme/context.d.ts +21 -0
  81. package/dist/theme/default-themes.d.ts +39 -0
  82. package/dist/theme/index.d.ts +7 -0
  83. package/dist/theme/loader.d.ts +6 -0
  84. package/dist/theme/resolve.d.ts +7 -0
  85. package/dist/theme/types.d.ts +56 -0
  86. package/dist/theme/v2/avatar.d.ts +5 -0
  87. package/dist/theme/v2/default-primitives.d.ts +3 -0
  88. package/dist/theme/v2/foreground.d.ts +2 -0
  89. package/dist/theme/v2/mapping.d.ts +3 -0
  90. package/dist/theme/v2/resolve.d.ts +9 -0
  91. package/dist/v2/components/accordion-v2.d.ts +26 -0
  92. package/dist/v2/components/avatar-v2.d.ts +11 -0
  93. package/dist/v2/components/badge-v2.d.ts +5 -0
  94. package/dist/v2/components/button-v2.d.ts +10 -0
  95. package/dist/v2/components/checkbox-v2.d.ts +10 -0
  96. package/dist/v2/components/dialog-v2.d.ts +14 -0
  97. package/dist/v2/components/diff-changes-v2.d.ts +11 -0
  98. package/dist/v2/components/field-v2.d.ts +28 -0
  99. package/dist/v2/components/icon-button-v2.d.ts +11 -0
  100. package/dist/v2/components/icon.d.ts +81 -0
  101. package/dist/v2/components/inline-input-v2.d.ts +21 -0
  102. package/dist/v2/components/keybind-v2.d.ts +7 -0
  103. package/dist/v2/components/line-comment-v2.d.ts +28 -0
  104. package/dist/v2/components/menu-v2.d.ts +52 -0
  105. package/dist/v2/components/project-avatar-v2.d.ts +11 -0
  106. package/dist/v2/components/radio-v2.d.ts +16 -0
  107. package/dist/v2/components/segmented-control-v2.d.ts +21 -0
  108. package/dist/v2/components/select-v2.d.ts +24 -0
  109. package/dist/v2/components/switch-v2.d.ts +7 -0
  110. package/dist/v2/components/tab-state-indicator.d.ts +2 -0
  111. package/dist/v2/components/tabs-v2.d.ts +34 -0
  112. package/dist/v2/components/text-input-v2.d.ts +17 -0
  113. package/dist/v2/components/text-shimmer-v2.d.ts +9 -0
  114. package/dist/v2/components/textarea-v2.d.ts +7 -0
  115. package/dist/v2/components/toast-v2.d.ts +48 -0
  116. package/dist/v2/components/tooltip-v2.d.ts +13 -0
  117. package/dist/v2/components/wordmark-v2.d.ts +2 -0
  118. package/package.json +59 -15
  119. package/src/components/accordion.css +31 -7
  120. package/src/components/card.css +26 -5
  121. package/src/components/card.tsx +1 -1
  122. package/src/styles/tailwind/colors.css +1 -0
  123. package/src/theme/themes/oc-2.json +20 -14
  124. package/src/theme/v2/mapping.ts +2 -0
  125. package/src/v2/styles/theme.css +16 -0
@@ -19,14 +19,14 @@
19
19
  font-weight: var(--font-weight-regular);
20
20
  line-height: var(--line-height-large);
21
21
  letter-spacing: var(--letter-spacing-normal);
22
- color: var(--text-strong);
22
+ color: var(--v2-text-text-base);
23
23
 
24
24
  --card-gap: 8px;
25
25
  --card-icon: 16px;
26
26
  --card-indent: 0px;
27
27
  --card-line-pad: 8px;
28
28
 
29
- --card-accent: var(--icon-active);
29
+ --card-accent: var(--v2-icon-icon-base);
30
30
 
31
31
  &:has([data-slot="card-title"]) {
32
32
  gap: 8px;
@@ -48,7 +48,7 @@
48
48
  }
49
49
 
50
50
  :where([data-card="title"], [data-slot="card-title"]) {
51
- color: var(--text-strong);
51
+ color: var(--v2-text-text-base);
52
52
  font-weight: var(--font-weight-medium);
53
53
  }
54
54
 
@@ -72,7 +72,7 @@
72
72
  }
73
73
 
74
74
  :where([data-slot="card-title-icon"][data-placeholder]) [data-component="icon"] {
75
- color: var(--text-weak);
75
+ color: var(--v2-text-text-faint);
76
76
  }
77
77
 
78
78
  :where([data-slot="card-title-icon"])
@@ -82,7 +82,7 @@
82
82
  }
83
83
 
84
84
  :where([data-card="description"], [data-slot="card-description"]) {
85
- color: var(--text-base);
85
+ color: var(--v2-text-text-muted);
86
86
  white-space: pre-wrap;
87
87
  overflow-wrap: anywhere;
88
88
  word-break: break-word;
@@ -92,3 +92,24 @@
92
92
  padding-left: var(--card-indent);
93
93
  }
94
94
  }
95
+
96
+ body:not([data-new-layout]) [data-component="card"] {
97
+ color: var(--text-strong);
98
+ --card-accent: var(--icon-active);
99
+
100
+ :where([data-card="title"], [data-slot="card-title"]) {
101
+ color: var(--text-strong);
102
+ }
103
+
104
+ :where([data-slot="card-title-icon"][data-placeholder]) [data-component="icon"] {
105
+ color: var(--text-weak);
106
+ }
107
+
108
+ :where([data-card="description"], [data-slot="card-description"]) {
109
+ color: var(--text-base);
110
+ }
111
+
112
+ &[data-variant="error"] {
113
+ --card-accent: var(--icon-critical-base) !important;
114
+ }
115
+ }
@@ -40,7 +40,7 @@ export function Card(props: CardProps) {
40
40
  const variant = () => split.variant ?? "normal"
41
41
  const accent = () => {
42
42
  const v = variant()
43
- if (v === "error") return "var(--icon-critical-base)"
43
+ if (v === "error") return "var(--v2-state-fg-danger)"
44
44
  if (v === "warning") return "var(--icon-warning-active)"
45
45
  if (v === "success") return "var(--icon-success-active)"
46
46
  if (v === "info") return "var(--icon-info-active)"
@@ -249,6 +249,7 @@
249
249
  --color-v2-text-text-contrast: var(--v2-text-text-contrast);
250
250
  --color-v2-text-text-accent: var(--v2-text-text-accent);
251
251
  --color-v2-text-text-accent-hover: var(--v2-text-text-accent-hover);
252
+ --color-v2-text-text-code-accent: var(--v2-text-text-code-accent);
252
253
  --color-v2-icon-icon-base: var(--v2-icon-icon-base);
253
254
  --color-v2-icon-icon-muted: var(--v2-icon-icon-muted);
254
255
  --color-v2-icon-icon-inverse: var(--v2-icon-icon-inverse);
@@ -20,6 +20,8 @@
20
20
  "text-base": "#6F6F6F",
21
21
  "text-weak": "#8F8F8F",
22
22
  "text-weaker": "#C7C7C7",
23
+ "text-diff-add-base": "var(--v2-state-fg-success)",
24
+ "text-diff-delete-base": "var(--v2-state-fg-danger)",
23
25
  "border-weak-base": "#DBDBDB",
24
26
  "border-weaker-base": "#E8E8E8",
25
27
  "icon-base": "#8F8F8F",
@@ -31,14 +33,14 @@
31
33
  "surface-interactive-weak": "#F5FAFF",
32
34
  "icon-success-base": "#0ABE00",
33
35
  "surface-success-base": "#E6FFE5",
34
- "syntax-comment": "#7a7a7a",
35
- "syntax-keyword": "#a753ae",
36
- "syntax-string": "#00ceb9",
37
- "syntax-primitive": "#034cff",
38
- "syntax-property": "#a753ae",
39
- "syntax-type": "#8a6f00",
36
+ "syntax-comment": "var(--v2-text-text-muted)",
37
+ "syntax-keyword": "var(--v2-pink-800)",
38
+ "syntax-string": "var(--v2-green-800)",
39
+ "syntax-primitive": "var(--v2-pink-800)",
40
+ "syntax-property": "var(--v2-orange-800)",
41
+ "syntax-type": "var(--v2-purple-800)",
40
42
  "syntax-constant": "#007b80",
41
- "syntax-critical": "#ff8c00",
43
+ "syntax-critical": "var(--v2-red-800)",
42
44
  "syntax-diff-delete": "#ff8c00",
43
45
  "syntax-diff-unknown": "#a753ae",
44
46
  "surface-critical-base": "#FFF2F0"
@@ -170,6 +172,7 @@
170
172
  "v2-text-text-contrast": "var(--v2-grey-50)",
171
173
  "v2-text-text-accent": "var(--v2-blue-600)",
172
174
  "v2-text-text-accent-hover": "var(--v2-blue-700)",
175
+ "v2-text-text-code-accent": "var(--v2-blue-900)",
173
176
  "v2-icon-icon-base": "var(--v2-grey-800)",
174
177
  "v2-icon-icon-muted": "var(--v2-grey-600)",
175
178
  "v2-icon-icon-inverse": "var(--v2-grey-50)",
@@ -252,6 +255,8 @@
252
255
  "text-base": "#A0A0A0",
253
256
  "text-weak": "#707070",
254
257
  "text-weaker": "#505050",
258
+ "text-diff-add-base": "var(--v2-state-fg-success)",
259
+ "text-diff-delete-base": "var(--v2-state-fg-danger)",
255
260
  "border-weak-base": "#282828",
256
261
  "border-weaker-base": "#232323",
257
262
  "icon-base": "#7E7E7E",
@@ -262,14 +267,14 @@
262
267
  "surface-base-hover": "#FFFFFF0D",
263
268
  "surface-interactive-weak": "#0D172B",
264
269
  "surface-success-base": "#022B00",
265
- "syntax-comment": "#8f8f8f",
266
- "syntax-keyword": "#edb2f1",
267
- "syntax-string": "#00ceb9",
268
- "syntax-primitive": "#8cb0ff",
269
- "syntax-property": "#fab283",
270
- "syntax-type": "#fcd53a",
270
+ "syntax-comment": "var(--v2-text-text-muted)",
271
+ "syntax-keyword": "var(--v2-pink-400)",
272
+ "syntax-string": "var(--v2-green-400)",
273
+ "syntax-primitive": "var(--v2-pink-400)",
274
+ "syntax-property": "var(--v2-orange-400)",
275
+ "syntax-type": "var(--v2-purple-400)",
271
276
  "syntax-constant": "#93e9f6",
272
- "syntax-critical": "#fab283",
277
+ "syntax-critical": "var(--v2-red-400)",
273
278
  "syntax-diff-delete": "#fab283",
274
279
  "syntax-diff-unknown": "#edb2f1",
275
280
  "surface-critical-base": "#1F0603"
@@ -401,6 +406,7 @@
401
406
  "v2-text-text-contrast": "var(--v2-grey-50)",
402
407
  "v2-text-text-accent": "var(--v2-blue-400)",
403
408
  "v2-text-text-accent-hover": "var(--v2-blue-300)",
409
+ "v2-text-text-code-accent": "var(--v2-blue-400)",
404
410
  "v2-icon-icon-base": "var(--v2-grey-400)",
405
411
  "v2-icon-icon-muted": "var(--v2-grey-600)",
406
412
  "v2-icon-icon-inverse": "var(--v2-grey-1100)",
@@ -18,6 +18,7 @@ const light: Record<string, V2ColorValue> = {
18
18
  "v2-text-text-contrast": ref("v2-grey-100"),
19
19
  "v2-text-text-accent": ref("v2-blue-600"),
20
20
  "v2-text-text-accent-hover": ref("v2-blue-700"),
21
+ "v2-text-text-code-accent": ref("v2-blue-900"),
21
22
  "v2-border-border-muted": ref("v2-alpha-dark-8"),
22
23
  "v2-border-border-base": ref("v2-alpha-dark-10"),
23
24
  "v2-border-border-strong": ref("v2-alpha-dark-20"),
@@ -81,6 +82,7 @@ const dark: Record<string, V2ColorValue> = {
81
82
  "v2-text-text-contrast": ref("v2-grey-100"),
82
83
  "v2-text-text-accent": ref("v2-blue-400"),
83
84
  "v2-text-text-accent-hover": ref("v2-blue-300"),
85
+ "v2-text-text-code-accent": ref("v2-blue-400"),
84
86
  "v2-border-border-muted": ref("v2-alpha-light-8"),
85
87
  "v2-border-border-base": ref("v2-alpha-light-10"),
86
88
  "v2-border-border-strong": ref("v2-alpha-light-20"),
@@ -1,4 +1,16 @@
1
1
  @layer theme {
2
+ html[data-theme="oc-2"] body:not([data-new-layout]) {
3
+ --text-diff-add-base: light-dark(#167517, #c4ffc0);
4
+ --text-diff-delete-base: light-dark(#fa3012, #ec2f14);
5
+ --syntax-comment: light-dark(#7a7a7a, #8f8f8f);
6
+ --syntax-keyword: light-dark(#a753ae, #edb2f1);
7
+ --syntax-string: #00ceb9;
8
+ --syntax-primitive: light-dark(#034cff, #8cb0ff);
9
+ --syntax-property: light-dark(#a753ae, #fab283);
10
+ --syntax-type: light-dark(#8a6f00, #fcd53a);
11
+ --syntax-critical: light-dark(#ff8c00, #fab283);
12
+ }
13
+
2
14
  :root {
3
15
  color-scheme: light;
4
16
 
@@ -22,6 +34,7 @@
22
34
  --v2-text-text-contrast: var(--v2-grey-50);
23
35
  --v2-text-text-accent: var(--v2-blue-600);
24
36
  --v2-text-text-accent-hover: var(--v2-blue-700);
37
+ --v2-text-text-code-accent: var(--v2-blue-900);
25
38
 
26
39
  /* ── Icon ── */
27
40
  --v2-icon-icon-base: var(--v2-grey-800);
@@ -141,6 +154,7 @@
141
154
  --v2-text-text-contrast: var(--v2-grey-100);
142
155
  --v2-text-text-accent: var(--v2-blue-400);
143
156
  --v2-text-text-accent-hover: var(--v2-blue-300);
157
+ --v2-text-text-code-accent: var(--v2-blue-400);
144
158
 
145
159
  --v2-icon-icon-base: var(--v2-grey-400);
146
160
  --v2-icon-icon-muted: var(--v2-grey-600);
@@ -243,6 +257,7 @@
243
257
  --v2-text-text-contrast: var(--v2-grey-50);
244
258
  --v2-text-text-accent: var(--v2-blue-600);
245
259
  --v2-text-text-accent-hover: var(--v2-blue-700);
260
+ --v2-text-text-code-accent: var(--v2-blue-900);
246
261
 
247
262
  --v2-icon-icon-base: var(--v2-grey-800);
248
263
  --v2-icon-icon-muted: var(--v2-grey-600);
@@ -352,6 +367,7 @@
352
367
  --v2-text-text-contrast: var(--v2-grey-50);
353
368
  --v2-text-text-accent: var(--v2-blue-400);
354
369
  --v2-text-text-accent-hover: var(--v2-blue-300);
370
+ --v2-text-text-code-accent: var(--v2-blue-400);
355
371
 
356
372
  --v2-icon-icon-base: var(--v2-grey-400);
357
373
  --v2-icon-icon-muted: var(--v2-grey-600);