@opencode/theme 2.0.8 → 2.0.10

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.
@@ -1,455 +0,0 @@
1
- export const DEFAULT_CATEGORICAL = [
2
- "blue",
3
- "purple",
4
- "green",
5
- "orange",
6
- "red",
7
- "cyan",
8
- ];
9
- export const DEFAULT_THEME = {
10
- version: 2,
11
- light: {
12
- hue: {
13
- gray: {
14
- 100: "#f3f4f6",
15
- 200: "#e5e7eb",
16
- 300: "#d1d5db",
17
- 400: "#9ca3af",
18
- 500: "#6b7280",
19
- 600: "#4b5563",
20
- 700: "#374151",
21
- 800: "#1f2937",
22
- 900: "#111827",
23
- },
24
- red: {
25
- 100: "#fee2e2",
26
- 200: "#fecaca",
27
- 300: "#fca5a5",
28
- 400: "#f87171",
29
- 500: "#ef4444",
30
- 600: "#dc2626",
31
- 700: "#b91c1c",
32
- 800: "#991b1b",
33
- 900: "#7f1d1d",
34
- },
35
- orange: {
36
- 100: "#ffedd5",
37
- 200: "#fed7aa",
38
- 300: "#fdba74",
39
- 400: "#fb923c",
40
- 500: "#f97316",
41
- 600: "#ea580c",
42
- 700: "#c2410c",
43
- 800: "#9a3412",
44
- 900: "#7c2d12",
45
- },
46
- yellow: {
47
- 100: "#fef9c3",
48
- 200: "#fef08a",
49
- 300: "#fde047",
50
- 400: "#facc15",
51
- 500: "#eab308",
52
- 600: "#ca8a04",
53
- 700: "#a16207",
54
- 800: "#854d0e",
55
- 900: "#713f12",
56
- },
57
- green: {
58
- 100: "#dcfce7",
59
- 200: "#bbf7d0",
60
- 300: "#86efac",
61
- 400: "#4ade80",
62
- 500: "#22c55e",
63
- 600: "#16a34a",
64
- 700: "#15803d",
65
- 800: "#166534",
66
- 900: "#14532d",
67
- },
68
- cyan: {
69
- 100: "#cffafe",
70
- 200: "#a5f3fc",
71
- 300: "#67e8f9",
72
- 400: "#22d3ee",
73
- 500: "#06b6d4",
74
- 600: "#0891b2",
75
- 700: "#0e7490",
76
- 800: "#155e75",
77
- 900: "#164e63",
78
- },
79
- blue: {
80
- 100: "#dbeafe",
81
- 200: "#bfdbfe",
82
- 300: "#93c5fd",
83
- 400: "#60a5fa",
84
- 500: "#3b82f6",
85
- 600: "#2563eb",
86
- 700: "#1d4ed8",
87
- 800: "#1e40af",
88
- 900: "#1e3a8a",
89
- },
90
- purple: {
91
- 100: "#f3e8ff",
92
- 200: "#e9d5ff",
93
- 300: "#d8b4fe",
94
- 400: "#c084fc",
95
- 500: "#a855f7",
96
- 600: "#9333ea",
97
- 700: "#7e22ce",
98
- 800: "#6b21a8",
99
- 900: "#581c87",
100
- },
101
- accent: "$hue.blue",
102
- interactive: "$hue.blue",
103
- neutral: "$hue.gray",
104
- },
105
- categorical: DEFAULT_CATEGORICAL,
106
- text: {
107
- default: "$hue.neutral.800",
108
- subdued: "$hue.neutral.600",
109
- action: {
110
- primary: { default: "$hue.neutral.200", $disabled: "$hue.neutral.500" },
111
- secondary: { default: "$text.subdued", $hovered: "$text.default" },
112
- destructive: { default: "$hue.red.200", $disabled: "$hue.neutral.500" },
113
- },
114
- formfield: {
115
- default: "$hue.neutral.800",
116
- $focused: "$text.action.primary.default",
117
- $pressed: "$hue.neutral.200",
118
- $disabled: "$hue.neutral.500",
119
- $selected: "$hue.interactive.700",
120
- },
121
- status: {
122
- running: "$hue.interactive.800",
123
- question: "$text.status.unread",
124
- permission: "$text.status.unread",
125
- unread: "$hue.accent.800",
126
- },
127
- feedback: {
128
- error: { default: "$hue.red.700", subdued: "$hue.red.600" },
129
- warning: { default: "$hue.yellow.800", subdued: "$hue.yellow.700" },
130
- success: { default: "$hue.green.700", subdued: "$hue.green.600" },
131
- info: { default: "$hue.cyan.700", subdued: "$hue.cyan.600" },
132
- },
133
- },
134
- background: {
135
- default: "$hue.neutral.200",
136
- raised: {
137
- base: "$hue.neutral.300",
138
- high: "$hue.neutral.400",
139
- max: "$hue.neutral.500",
140
- },
141
- action: {
142
- primary: {
143
- default: "$hue.interactive.600",
144
- $hovered: "$hue.interactive.700",
145
- $focused: "$hue.interactive.700",
146
- $pressed: "$hue.interactive.800",
147
- $selected: "$hue.interactive.700",
148
- $disabled: "$hue.neutral.300",
149
- },
150
- secondary: { default: "transparent" },
151
- destructive: {
152
- default: "$hue.red.600",
153
- $hovered: "$hue.red.700",
154
- $focused: "$hue.red.700",
155
- $pressed: "$hue.red.800",
156
- $selected: "$hue.red.700",
157
- $disabled: "$hue.neutral.300",
158
- },
159
- },
160
- formfield: {
161
- default: "$background.default",
162
- $hovered: "$background.raised.base",
163
- $focused: "$background.action.primary.default",
164
- $pressed: "$hue.interactive.800",
165
- $disabled: "$background.default",
166
- $selected: "$background.formfield.default",
167
- },
168
- feedback: {
169
- error: { default: "$background.default" },
170
- warning: { default: "$background.default" },
171
- success: { default: "$background.default" },
172
- info: { default: "$background.default" },
173
- },
174
- },
175
- border: { default: "$hue.neutral.300" },
176
- scrollbar: { default: "$hue.neutral.400" },
177
- diff: {
178
- text: {
179
- added: "$hue.green.700",
180
- removed: "$hue.red.700",
181
- context: "$hue.neutral.900",
182
- hunkHeader: "$hue.purple.600",
183
- },
184
- background: { added: "$hue.green.100", removed: "$hue.red.100", context: "$hue.neutral.100" },
185
- highlight: { added: "$hue.green.600", removed: "$hue.red.600" },
186
- lineNumber: {
187
- text: "$hue.neutral.600",
188
- background: { added: "$hue.green.200", removed: "$hue.red.200" },
189
- },
190
- },
191
- syntax: {
192
- comment: "$hue.neutral.600",
193
- keyword: "$hue.purple.600",
194
- function: "$hue.accent.600",
195
- variable: "$hue.neutral.900",
196
- string: "$hue.green.700",
197
- number: "$hue.yellow.800",
198
- type: "$hue.yellow.500",
199
- operator: "$hue.cyan.600",
200
- punctuation: "$hue.neutral.900",
201
- },
202
- markdown: {
203
- text: "$hue.neutral.900",
204
- heading: "$hue.purple.600",
205
- link: "$hue.accent.600",
206
- linkText: "$hue.cyan.600",
207
- code: "$hue.green.700",
208
- blockQuote: "$hue.neutral.600",
209
- emphasis: "$hue.yellow.500",
210
- strong: "$hue.neutral.900",
211
- horizontalRule: "$hue.neutral.300",
212
- listItem: "$hue.accent.600",
213
- listEnumeration: "$hue.cyan.600",
214
- image: "$hue.accent.600",
215
- imageText: "$hue.cyan.600",
216
- codeBlock: "$hue.neutral.900",
217
- },
218
- "@context:elevated": {
219
- text: { action: { primary: { default: "$hue.neutral.100" } } },
220
- background: {
221
- default: "$background.raised.base",
222
- action: { primary: { default: "$hue.interactive.500", $hovered: "$background.raised.high" } },
223
- },
224
- },
225
- "@context:overlay": {
226
- text: { action: { primary: { default: "$hue.neutral.100" } } },
227
- background: {
228
- default: "$background.raised.high",
229
- action: { primary: { default: "$hue.interactive.500" } },
230
- },
231
- },
232
- },
233
- dark: {
234
- hue: {
235
- gray: {
236
- 100: "#f3f4f6",
237
- 200: "#e5e7eb",
238
- 300: "#d1d5db",
239
- 400: "#9ca3af",
240
- 500: "#6b7280",
241
- 600: "#4b5563",
242
- 700: "#374151",
243
- 800: "#1f2937",
244
- 900: "#111827",
245
- },
246
- red: {
247
- 100: "#fee2e2",
248
- 200: "#fecaca",
249
- 300: "#fca5a5",
250
- 400: "#f87171",
251
- 500: "#ef4444",
252
- 600: "#dc2626",
253
- 700: "#b91c1c",
254
- 800: "#991b1b",
255
- 900: "#7f1d1d",
256
- },
257
- orange: {
258
- 100: "#ffedd5",
259
- 200: "#fed7aa",
260
- 300: "#fdba74",
261
- 400: "#fb923c",
262
- 500: "#f97316",
263
- 600: "#ea580c",
264
- 700: "#c2410c",
265
- 800: "#9a3412",
266
- 900: "#7c2d12",
267
- },
268
- yellow: {
269
- 100: "#fef9c3",
270
- 200: "#fef08a",
271
- 300: "#fde047",
272
- 400: "#facc15",
273
- 500: "#eab308",
274
- 600: "#ca8a04",
275
- 700: "#a16207",
276
- 800: "#854d0e",
277
- 900: "#713f12",
278
- },
279
- green: {
280
- 100: "#dcfce7",
281
- 200: "#bbf7d0",
282
- 300: "#86efac",
283
- 400: "#4ade80",
284
- 500: "#22c55e",
285
- 600: "#16a34a",
286
- 700: "#15803d",
287
- 800: "#166534",
288
- 900: "#14532d",
289
- },
290
- cyan: {
291
- 100: "#cffafe",
292
- 200: "#a5f3fc",
293
- 300: "#67e8f9",
294
- 400: "#22d3ee",
295
- 500: "#06b6d4",
296
- 600: "#0891b2",
297
- 700: "#0e7490",
298
- 800: "#155e75",
299
- 900: "#164e63",
300
- },
301
- blue: {
302
- 100: "#dbeafe",
303
- 200: "#bfdbfe",
304
- 300: "#93c5fd",
305
- 400: "#60a5fa",
306
- 500: "#3b82f6",
307
- 600: "#2563eb",
308
- 700: "#1d4ed8",
309
- 800: "#1e40af",
310
- 900: "#1e3a8a",
311
- },
312
- purple: {
313
- 100: "#f3e8ff",
314
- 200: "#e9d5ff",
315
- 300: "#d8b4fe",
316
- 400: "#c084fc",
317
- 500: "#a855f7",
318
- 600: "#9333ea",
319
- 700: "#7e22ce",
320
- 800: "#6b21a8",
321
- 900: "#581c87",
322
- },
323
- accent: "$hue.blue",
324
- interactive: "$hue.blue",
325
- neutral: "$hue.gray",
326
- },
327
- categorical: DEFAULT_CATEGORICAL,
328
- text: {
329
- default: "$hue.neutral.200",
330
- subdued: "$hue.neutral.400",
331
- action: {
332
- primary: { default: "$hue.neutral.200", $disabled: "$hue.neutral.500" },
333
- secondary: { default: "$text.subdued", $hovered: "$text.default" },
334
- destructive: { default: "$hue.red.200", $disabled: "$hue.neutral.500" },
335
- },
336
- formfield: {
337
- default: "$hue.neutral.200",
338
- $focused: "$text.action.primary.default",
339
- $pressed: "$hue.neutral.200",
340
- $disabled: "$hue.neutral.500",
341
- $selected: "$hue.interactive.500",
342
- },
343
- status: {
344
- running: "$hue.interactive.200",
345
- question: "$text.status.unread",
346
- permission: "$text.status.unread",
347
- unread: "$hue.accent.200",
348
- },
349
- feedback: {
350
- error: { default: "$hue.red.300", subdued: "$hue.red.400" },
351
- warning: { default: "$hue.yellow.200", subdued: "$hue.yellow.300" },
352
- success: { default: "$hue.green.300", subdued: "$hue.green.400" },
353
- info: { default: "$hue.cyan.300", subdued: "$hue.cyan.400" },
354
- },
355
- },
356
- background: {
357
- default: "$hue.neutral.800",
358
- raised: {
359
- base: "$hue.neutral.700",
360
- high: "$hue.neutral.600",
361
- max: "$hue.neutral.500",
362
- },
363
- action: {
364
- primary: {
365
- default: "$hue.interactive.500",
366
- $hovered: "$hue.interactive.600",
367
- $focused: "$hue.interactive.600",
368
- $pressed: "$hue.interactive.800",
369
- $selected: "$hue.interactive.600",
370
- $disabled: "$hue.neutral.800",
371
- },
372
- secondary: { default: "transparent" },
373
- destructive: {
374
- default: "$hue.red.600",
375
- $hovered: "$hue.red.700",
376
- $focused: "$hue.red.700",
377
- $pressed: "$hue.red.800",
378
- $selected: "$hue.red.700",
379
- $disabled: "$hue.neutral.800",
380
- },
381
- },
382
- formfield: {
383
- default: "$background.default",
384
- $hovered: "$background.raised.base",
385
- $focused: "$background.action.primary.default",
386
- $pressed: "$hue.interactive.800",
387
- $disabled: "$background.default",
388
- $selected: "$background.formfield.default",
389
- },
390
- feedback: {
391
- error: { default: "$background.default" },
392
- warning: { default: "$background.default" },
393
- success: { default: "$background.default" },
394
- info: { default: "$background.default" },
395
- },
396
- },
397
- border: { default: "$hue.neutral.700" },
398
- scrollbar: { default: "$hue.neutral.600" },
399
- diff: {
400
- text: {
401
- added: "$hue.green.300",
402
- removed: "$hue.red.300",
403
- context: "$hue.neutral.100",
404
- hunkHeader: "$hue.purple.400",
405
- },
406
- background: { added: "$hue.green.900", removed: "$hue.red.900", context: "$hue.neutral.900" },
407
- highlight: { added: "$hue.green.400", removed: "$hue.red.400" },
408
- lineNumber: {
409
- text: "$hue.neutral.400",
410
- background: { added: "$hue.green.800", removed: "$hue.red.800" },
411
- },
412
- },
413
- syntax: {
414
- comment: "$hue.neutral.400",
415
- keyword: "$hue.purple.400",
416
- function: "$hue.accent.400",
417
- variable: "$hue.neutral.100",
418
- string: "$hue.green.300",
419
- number: "$hue.yellow.200",
420
- type: "$hue.yellow.500",
421
- operator: "$hue.cyan.400",
422
- punctuation: "$hue.neutral.100",
423
- },
424
- markdown: {
425
- text: "$hue.neutral.100",
426
- heading: "$hue.purple.400",
427
- link: "$hue.accent.400",
428
- linkText: "$hue.cyan.400",
429
- code: "$hue.green.300",
430
- blockQuote: "$hue.neutral.400",
431
- emphasis: "$hue.yellow.500",
432
- strong: "$hue.neutral.100",
433
- horizontalRule: "$hue.neutral.700",
434
- listItem: "$hue.accent.400",
435
- listEnumeration: "$hue.cyan.400",
436
- image: "$hue.accent.400",
437
- imageText: "$hue.cyan.400",
438
- codeBlock: "$hue.neutral.100",
439
- },
440
- "@context:elevated": {
441
- text: { action: { primary: { default: "$hue.neutral.200" } } },
442
- background: {
443
- default: "$background.raised.base",
444
- action: { primary: { default: "$hue.interactive.400", $hovered: "$background.raised.high" } },
445
- },
446
- },
447
- "@context:overlay": {
448
- text: { action: { primary: { default: "$hue.neutral.200" } } },
449
- background: {
450
- default: "$background.raised.high",
451
- action: { primary: { default: "$hue.interactive.400" } },
452
- },
453
- },
454
- },
455
- };
@@ -1,2 +0,0 @@
1
- import type { Mode, ThemeTokensDefinition } from "./index.js";
2
- export declare function fallback(mode: Mode): ThemeTokensDefinition;
@@ -1,56 +0,0 @@
1
- import { DEFAULT_THEME } from "./defaults.js";
2
- import { ActionVariant, FeedbackKind } from "./schema.js";
3
- export function fallback(mode) {
4
- const red = "#ff0000";
5
- return {
6
- text: {
7
- default: red,
8
- action: Object.fromEntries(ActionVariant.literals.map((variant) => [variant, { default: red }])),
9
- formfield: { default: red },
10
- status: DEFAULT_THEME[mode].text.status,
11
- feedback: Object.fromEntries(FeedbackKind.literals.map((kind) => [kind, { default: red }])),
12
- },
13
- background: {
14
- default: red,
15
- raised: { base: red, high: red, max: red },
16
- action: Object.fromEntries(ActionVariant.literals.map((variant) => [variant, { default: red }])),
17
- formfield: { default: red },
18
- feedback: Object.fromEntries(FeedbackKind.literals.map((kind) => [kind, { default: red }])),
19
- },
20
- border: { default: red },
21
- scrollbar: { default: red },
22
- diff: {
23
- text: { added: red, removed: red, context: red, hunkHeader: red },
24
- background: { added: red, removed: red, context: red },
25
- highlight: { added: red, removed: red },
26
- lineNumber: { text: red, background: { added: red, removed: red } },
27
- },
28
- syntax: {
29
- comment: red,
30
- keyword: red,
31
- function: red,
32
- variable: red,
33
- string: red,
34
- number: red,
35
- type: red,
36
- operator: red,
37
- punctuation: red,
38
- },
39
- markdown: {
40
- text: red,
41
- heading: red,
42
- link: red,
43
- linkText: red,
44
- code: red,
45
- blockQuote: red,
46
- emphasis: red,
47
- strong: red,
48
- horizontalRule: red,
49
- listItem: red,
50
- listEnumeration: red,
51
- image: red,
52
- imageText: red,
53
- codeBlock: red,
54
- },
55
- };
56
- }