dsh-cool-theme 0.3.1 → 0.5.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 (66) hide show
  1. package/README.md +9 -10
  2. package/README.zh.md +9 -10
  3. package/lib/client.js +2694 -215
  4. package/lib/index.js +304 -6
  5. package/lib/types/client/components.d.ts +43 -3
  6. package/lib/types/client/components.d.ts.map +1 -1
  7. package/lib/types/client/custom.d.ts +124 -0
  8. package/lib/types/client/custom.d.ts.map +1 -0
  9. package/lib/types/client/locales.d.ts +102 -0
  10. package/lib/types/client/locales.d.ts.map +1 -1
  11. package/lib/types/client/presets/aura.d.ts +26 -0
  12. package/lib/types/client/presets/aura.d.ts.map +1 -0
  13. package/lib/types/client/presets/catppuccin-frappe.d.ts +26 -0
  14. package/lib/types/client/presets/catppuccin-frappe.d.ts.map +1 -0
  15. package/lib/types/client/presets/catppuccin-macchiato.d.ts +26 -0
  16. package/lib/types/client/presets/catppuccin-macchiato.d.ts.map +1 -0
  17. package/lib/types/client/presets/cobalt2.d.ts +26 -0
  18. package/lib/types/client/presets/cobalt2.d.ts.map +1 -0
  19. package/lib/types/client/presets/cursor.d.ts +26 -0
  20. package/lib/types/client/presets/cursor.d.ts.map +1 -0
  21. package/lib/types/client/presets/everforest.d.ts +26 -0
  22. package/lib/types/client/presets/everforest.d.ts.map +1 -0
  23. package/lib/types/client/presets/flexoki.d.ts +26 -0
  24. package/lib/types/client/presets/flexoki.d.ts.map +1 -0
  25. package/lib/types/client/presets/kanagawa.d.ts +26 -0
  26. package/lib/types/client/presets/kanagawa.d.ts.map +1 -0
  27. package/lib/types/client/presets/lucent-orng.d.ts +26 -0
  28. package/lib/types/client/presets/lucent-orng.d.ts.map +1 -0
  29. package/lib/types/client/presets/material.d.ts +26 -0
  30. package/lib/types/client/presets/material.d.ts.map +1 -0
  31. package/lib/types/client/presets/matrix.d.ts +26 -0
  32. package/lib/types/client/presets/matrix.d.ts.map +1 -0
  33. package/lib/types/client/presets/mercury.d.ts +26 -0
  34. package/lib/types/client/presets/mercury.d.ts.map +1 -0
  35. package/lib/types/client/presets/nightowl.d.ts +26 -0
  36. package/lib/types/client/presets/nightowl.d.ts.map +1 -0
  37. package/lib/types/client/presets/opencode.d.ts +26 -0
  38. package/lib/types/client/presets/opencode.d.ts.map +1 -0
  39. package/lib/types/client/presets/orng.d.ts +26 -0
  40. package/lib/types/client/presets/orng.d.ts.map +1 -0
  41. package/lib/types/client/presets/osaka-jade.d.ts +26 -0
  42. package/lib/types/client/presets/osaka-jade.d.ts.map +1 -0
  43. package/lib/types/client/presets/palenight.d.ts +26 -0
  44. package/lib/types/client/presets/palenight.d.ts.map +1 -0
  45. package/lib/types/client/presets/synthwave84.d.ts +26 -0
  46. package/lib/types/client/presets/synthwave84.d.ts.map +1 -0
  47. package/lib/types/client/presets/system.d.ts +26 -0
  48. package/lib/types/client/presets/system.d.ts.map +1 -0
  49. package/lib/types/client/presets/vercel.d.ts +26 -0
  50. package/lib/types/client/presets/vercel.d.ts.map +1 -0
  51. package/lib/types/client/presets/vesper.d.ts +26 -0
  52. package/lib/types/client/presets/vesper.d.ts.map +1 -0
  53. package/lib/types/client/presets.d.ts +537 -0
  54. package/lib/types/client/presets.d.ts.map +1 -1
  55. package/lib/types/client/theme-files.d.ts +37 -0
  56. package/lib/types/client/theme-files.d.ts.map +1 -0
  57. package/lib/types/client/theme.d.ts.map +1 -1
  58. package/lib/types/client/tokens.d.ts +16 -3
  59. package/lib/types/client/tokens.d.ts.map +1 -1
  60. package/lib/types/contract.d.ts +43 -0
  61. package/lib/types/contract.d.ts.map +1 -1
  62. package/lib/types/host/index.d.ts +6 -3
  63. package/lib/types/host/index.d.ts.map +1 -1
  64. package/lib/types/host/theme-files.d.ts +38 -0
  65. package/lib/types/host/theme-files.d.ts.map +1 -0
  66. package/package.json +1 -1
@@ -1,4 +1,36 @@
1
+ import type { StaticMap } from './css/primitives.js';
2
+ /** A fully resolved theme: one primitive map per appearance. */
3
+ export type PresetDef = {
4
+ label: string;
5
+ light: StaticMap;
6
+ dark: StaticMap;
7
+ };
1
8
  export declare const PRESETS: {
9
+ readonly aura: {
10
+ readonly label: "Aura";
11
+ readonly light: {
12
+ readonly '--shiki-token-constant': "#7C3AED";
13
+ readonly '--shiki-token-string': "#059669";
14
+ readonly '--shiki-token-comment': "#6B7280";
15
+ readonly '--shiki-token-keyword': "#C026D3";
16
+ readonly '--shiki-token-parameter': "#B45309";
17
+ readonly '--shiki-token-function': "#7C3AED";
18
+ readonly '--shiki-token-string-expression': "#059669";
19
+ readonly '--shiki-token-punctuation': "#4B5563";
20
+ readonly '--shiki-token-link': "#7C3AED";
21
+ };
22
+ readonly dark: {
23
+ readonly '--shiki-token-constant': "#FFCA85";
24
+ readonly '--shiki-token-string': "#61FFCA";
25
+ readonly '--shiki-token-comment': "#6C6F93";
26
+ readonly '--shiki-token-keyword': "#FF61EF";
27
+ readonly '--shiki-token-parameter': "#FFCA85";
28
+ readonly '--shiki-token-function': "#A277FF";
29
+ readonly '--shiki-token-string-expression': "#61FFCA";
30
+ readonly '--shiki-token-punctuation': "#B4B7CF";
31
+ readonly '--shiki-token-link': "#A277FF";
32
+ };
33
+ };
2
34
  readonly ayu: {
3
35
  readonly label: "Ayu";
4
36
  readonly light: {
@@ -49,6 +81,106 @@ export declare const PRESETS: {
49
81
  readonly '--shiki-token-link': "#89DCEB";
50
82
  };
51
83
  };
84
+ readonly 'catppuccin-frappe': {
85
+ readonly label: "Catppuccin Frappe";
86
+ readonly light: {
87
+ readonly '--shiki-token-constant': "#CA6702";
88
+ readonly '--shiki-token-string': "#40A02B";
89
+ readonly '--shiki-token-comment': "#6C7086";
90
+ readonly '--shiki-token-keyword': "#8839EF";
91
+ readonly '--shiki-token-parameter': "#1E66F5";
92
+ readonly '--shiki-token-function': "#7287FD";
93
+ readonly '--shiki-token-string-expression': "#40A02B";
94
+ readonly '--shiki-token-punctuation': "#5C5F77";
95
+ readonly '--shiki-token-link': "#04A5E5";
96
+ };
97
+ readonly dark: {
98
+ readonly '--shiki-token-constant': "#EF9F76";
99
+ readonly '--shiki-token-string': "#A6D189";
100
+ readonly '--shiki-token-comment': "#838BA7";
101
+ readonly '--shiki-token-keyword': "#CA9EE6";
102
+ readonly '--shiki-token-parameter': "#8CAAEE";
103
+ readonly '--shiki-token-function': "#BABBF1";
104
+ readonly '--shiki-token-string-expression': "#A6D189";
105
+ readonly '--shiki-token-punctuation': "#C6D0F5";
106
+ readonly '--shiki-token-link': "#99D1DB";
107
+ };
108
+ };
109
+ readonly 'catppuccin-macchiato': {
110
+ readonly label: "Catppuccin Macchiato";
111
+ readonly light: {
112
+ readonly '--shiki-token-constant': "#CA6702";
113
+ readonly '--shiki-token-string': "#40A02B";
114
+ readonly '--shiki-token-comment': "#6C7086";
115
+ readonly '--shiki-token-keyword': "#8839EF";
116
+ readonly '--shiki-token-parameter': "#1E66F5";
117
+ readonly '--shiki-token-function': "#7287FD";
118
+ readonly '--shiki-token-string-expression': "#40A02B";
119
+ readonly '--shiki-token-punctuation': "#5C5F77";
120
+ readonly '--shiki-token-link': "#04A5E5";
121
+ };
122
+ readonly dark: {
123
+ readonly '--shiki-token-constant': "#F5A97F";
124
+ readonly '--shiki-token-string': "#A6DA95";
125
+ readonly '--shiki-token-comment': "#8087A2";
126
+ readonly '--shiki-token-keyword': "#C6A0F6";
127
+ readonly '--shiki-token-parameter': "#8AADF4";
128
+ readonly '--shiki-token-function': "#B7BDF8";
129
+ readonly '--shiki-token-string-expression': "#A6DA95";
130
+ readonly '--shiki-token-punctuation': "#CAD3F5";
131
+ readonly '--shiki-token-link': "#91D7E3";
132
+ };
133
+ };
134
+ readonly cobalt2: {
135
+ readonly label: "Cobalt2";
136
+ readonly light: {
137
+ readonly '--shiki-token-constant': "#0054A6";
138
+ readonly '--shiki-token-string': "#0E7A4A";
139
+ readonly '--shiki-token-comment': "#6B7C8D";
140
+ readonly '--shiki-token-keyword': "#A31515";
141
+ readonly '--shiki-token-parameter': "#8A6A00";
142
+ readonly '--shiki-token-function': "#0054A6";
143
+ readonly '--shiki-token-string-expression': "#0E7A4A";
144
+ readonly '--shiki-token-punctuation': "#334454";
145
+ readonly '--shiki-token-link': "#0054A6";
146
+ };
147
+ readonly dark: {
148
+ readonly '--shiki-token-constant': "#FFC600";
149
+ readonly '--shiki-token-string': "#3AD900";
150
+ readonly '--shiki-token-comment': "#7C8B9E";
151
+ readonly '--shiki-token-keyword': "#FF9D00";
152
+ readonly '--shiki-token-parameter': "#FFC600";
153
+ readonly '--shiki-token-function': "#0088FF";
154
+ readonly '--shiki-token-string-expression': "#3AD900";
155
+ readonly '--shiki-token-punctuation': "#E1EFFF";
156
+ readonly '--shiki-token-link': "#0088FF";
157
+ };
158
+ };
159
+ readonly cursor: {
160
+ readonly label: "Cursor";
161
+ readonly light: {
162
+ readonly '--shiki-token-constant': "#4F46E5";
163
+ readonly '--shiki-token-string': "#059669";
164
+ readonly '--shiki-token-comment': "#6B7280";
165
+ readonly '--shiki-token-keyword': "#7C3AED";
166
+ readonly '--shiki-token-parameter': "#B45309";
167
+ readonly '--shiki-token-function': "#4F46E5";
168
+ readonly '--shiki-token-string-expression': "#059669";
169
+ readonly '--shiki-token-punctuation': "#3F3F46";
170
+ readonly '--shiki-token-link': "#4F46E5";
171
+ };
172
+ readonly dark: {
173
+ readonly '--shiki-token-constant': "#5E6AD2";
174
+ readonly '--shiki-token-string': "#0DBF6A";
175
+ readonly '--shiki-token-comment': "#6B7280";
176
+ readonly '--shiki-token-keyword': "#A78BFA";
177
+ readonly '--shiki-token-parameter': "#FF8A00";
178
+ readonly '--shiki-token-function': "#5E6AD2";
179
+ readonly '--shiki-token-string-expression': "#0DBF6A";
180
+ readonly '--shiki-token-punctuation': "#A1A1AA";
181
+ readonly '--shiki-token-link': "#5E6AD2";
182
+ };
183
+ };
52
184
  readonly dracula: {
53
185
  readonly label: "Dracula";
54
186
  readonly light: {
@@ -83,6 +215,56 @@ export declare const PRESETS: {
83
215
  readonly [x: string]: string;
84
216
  };
85
217
  };
218
+ readonly everforest: {
219
+ readonly label: "Everforest";
220
+ readonly light: {
221
+ readonly '--shiki-token-constant': "#8DA101";
222
+ readonly '--shiki-token-string': "#4D7D0F";
223
+ readonly '--shiki-token-comment': "#8B9A7E";
224
+ readonly '--shiki-token-keyword': "#DF69A0";
225
+ readonly '--shiki-token-parameter': "#DFA000";
226
+ readonly '--shiki-token-function': "#42675A";
227
+ readonly '--shiki-token-string-expression': "#4D7D0F";
228
+ readonly '--shiki-token-punctuation': "#5C6A72";
229
+ readonly '--shiki-token-link': "#3A94C5";
230
+ };
231
+ readonly dark: {
232
+ readonly '--shiki-token-constant': "#DBBC7F";
233
+ readonly '--shiki-token-string': "#A7C080";
234
+ readonly '--shiki-token-comment': "#859289";
235
+ readonly '--shiki-token-keyword': "#D699B6";
236
+ readonly '--shiki-token-parameter': "#E69875";
237
+ readonly '--shiki-token-function': "#7FBBB3";
238
+ readonly '--shiki-token-string-expression': "#A7C080";
239
+ readonly '--shiki-token-punctuation': "#D3C6AA";
240
+ readonly '--shiki-token-link': "#83C092";
241
+ };
242
+ };
243
+ readonly flexoki: {
244
+ readonly label: "Flexoki";
245
+ readonly light: {
246
+ readonly '--shiki-token-constant': "#BC5215";
247
+ readonly '--shiki-token-string': "#66800B";
248
+ readonly '--shiki-token-comment': "#6F6E69";
249
+ readonly '--shiki-token-keyword': "#A02F6F";
250
+ readonly '--shiki-token-parameter': "#AD8301";
251
+ readonly '--shiki-token-function': "#205EA6";
252
+ readonly '--shiki-token-string-expression': "#66800B";
253
+ readonly '--shiki-token-punctuation': "#575653";
254
+ readonly '--shiki-token-link': "#205EA6";
255
+ };
256
+ readonly dark: {
257
+ readonly '--shiki-token-constant': "#DA702C";
258
+ readonly '--shiki-token-string': "#879A39";
259
+ readonly '--shiki-token-comment': "#6F6E69";
260
+ readonly '--shiki-token-keyword': "#CE5D97";
261
+ readonly '--shiki-token-parameter': "#D0A215";
262
+ readonly '--shiki-token-function': "#4385BE";
263
+ readonly '--shiki-token-string-expression': "#879A39";
264
+ readonly '--shiki-token-punctuation': "#CECDC3";
265
+ readonly '--shiki-token-link': "#4385BE";
266
+ };
267
+ };
86
268
  readonly github: {
87
269
  readonly label: "GitHub";
88
270
  readonly light: {
@@ -133,6 +315,131 @@ export declare const PRESETS: {
133
315
  readonly '--shiki-token-link': "#83A598";
134
316
  };
135
317
  };
318
+ readonly kanagawa: {
319
+ readonly label: "Kanagawa";
320
+ readonly light: {
321
+ readonly '--shiki-token-constant': "#5A6A8A";
322
+ readonly '--shiki-token-string': "#587353";
323
+ readonly '--shiki-token-comment': "#8A9A7B";
324
+ readonly '--shiki-token-keyword': "#957FB8";
325
+ readonly '--shiki-token-parameter': "#8A6A2E";
326
+ readonly '--shiki-token-function': "#2D4F67";
327
+ readonly '--shiki-token-string-expression': "#587353";
328
+ readonly '--shiki-token-punctuation': "#43436C";
329
+ readonly '--shiki-token-link': "#2D4F67";
330
+ };
331
+ readonly dark: {
332
+ readonly '--shiki-token-constant': "#DCA561";
333
+ readonly '--shiki-token-string': "#98BB6C";
334
+ readonly '--shiki-token-comment': "#727169";
335
+ readonly '--shiki-token-keyword': "#957FB8";
336
+ readonly '--shiki-token-parameter': "#FFA066";
337
+ readonly '--shiki-token-function': "#7E9CD8";
338
+ readonly '--shiki-token-string-expression': "#98BB6C";
339
+ readonly '--shiki-token-punctuation': "#DCD7BA";
340
+ readonly '--shiki-token-link': "#7FB4CA";
341
+ };
342
+ };
343
+ readonly 'lucent-orng': {
344
+ readonly label: "Lucent Orng";
345
+ readonly light: {
346
+ readonly '--shiki-token-constant': "#9A3412";
347
+ readonly '--shiki-token-string': "#166534";
348
+ readonly '--shiki-token-comment': "#9A8B7A";
349
+ readonly '--shiki-token-keyword': "#C2410C";
350
+ readonly '--shiki-token-parameter': "#EA580C";
351
+ readonly '--shiki-token-function': "#9A3412";
352
+ readonly '--shiki-token-string-expression': "#166534";
353
+ readonly '--shiki-token-punctuation': "#57534E";
354
+ readonly '--shiki-token-link': "#9A3412";
355
+ };
356
+ readonly dark: {
357
+ readonly '--shiki-token-constant': "#FB923C";
358
+ readonly '--shiki-token-string': "#4ADE80";
359
+ readonly '--shiki-token-comment': "#8C7A65";
360
+ readonly '--shiki-token-keyword': "#FF8904";
361
+ readonly '--shiki-token-parameter': "#FDBA74";
362
+ readonly '--shiki-token-function': "#FF8904";
363
+ readonly '--shiki-token-string-expression': "#4ADE80";
364
+ readonly '--shiki-token-punctuation': "#F5E6D3";
365
+ readonly '--shiki-token-link': "#FF8904";
366
+ };
367
+ };
368
+ readonly material: {
369
+ readonly label: "Material";
370
+ readonly light: {
371
+ readonly '--shiki-token-constant': "#1565C0";
372
+ readonly '--shiki-token-string': "#2E7D32";
373
+ readonly '--shiki-token-comment': "#6B7C8D";
374
+ readonly '--shiki-token-keyword': "#7C4DFF";
375
+ readonly '--shiki-token-parameter': "#EF6C00";
376
+ readonly '--shiki-token-function': "#1565C0";
377
+ readonly '--shiki-token-string-expression': "#2E7D32";
378
+ readonly '--shiki-token-punctuation': "#37474F";
379
+ readonly '--shiki-token-link': "#1565C0";
380
+ };
381
+ readonly dark: {
382
+ readonly '--shiki-token-constant': "#FFCB6B";
383
+ readonly '--shiki-token-string': "#C3E88D";
384
+ readonly '--shiki-token-comment': "#676E95";
385
+ readonly '--shiki-token-keyword': "#C792EA";
386
+ readonly '--shiki-token-parameter': "#FFCB6B";
387
+ readonly '--shiki-token-function': "#82AAFF";
388
+ readonly '--shiki-token-string-expression': "#C3E88D";
389
+ readonly '--shiki-token-punctuation': "#EEFFFF";
390
+ readonly '--shiki-token-link': "#82AAFF";
391
+ };
392
+ };
393
+ readonly matrix: {
394
+ readonly label: "Matrix";
395
+ readonly light: {
396
+ readonly '--shiki-token-constant': "#0A5300";
397
+ readonly '--shiki-token-string': "#0A7A00";
398
+ readonly '--shiki-token-comment': "#5A7A5A";
399
+ readonly '--shiki-token-keyword': "#0A5300";
400
+ readonly '--shiki-token-parameter': "#5A7A00";
401
+ readonly '--shiki-token-function': "#0A5300";
402
+ readonly '--shiki-token-string-expression': "#0A7A00";
403
+ readonly '--shiki-token-punctuation': "#2E3B2E";
404
+ readonly '--shiki-token-link': "#0A5300";
405
+ };
406
+ readonly dark: {
407
+ readonly '--shiki-token-constant': "#76FF03";
408
+ readonly '--shiki-token-string': "#00E676";
409
+ readonly '--shiki-token-comment': "#4A7A4A";
410
+ readonly '--shiki-token-keyword': "#00FF41";
411
+ readonly '--shiki-token-parameter': "#76FF03";
412
+ readonly '--shiki-token-function': "#00FF41";
413
+ readonly '--shiki-token-string-expression': "#00E676";
414
+ readonly '--shiki-token-punctuation': "#CCFFCC";
415
+ readonly '--shiki-token-link': "#00FF41";
416
+ };
417
+ };
418
+ readonly mercury: {
419
+ readonly label: "Mercury";
420
+ readonly light: {
421
+ readonly '--shiki-token-constant': "#334155";
422
+ readonly '--shiki-token-string': "#047857";
423
+ readonly '--shiki-token-comment': "#64748B";
424
+ readonly '--shiki-token-keyword': "#7C3AED";
425
+ readonly '--shiki-token-parameter': "#B45309";
426
+ readonly '--shiki-token-function': "#334155";
427
+ readonly '--shiki-token-string-expression': "#047857";
428
+ readonly '--shiki-token-punctuation': "#334155";
429
+ readonly '--shiki-token-link': "#0284C7";
430
+ };
431
+ readonly dark: {
432
+ readonly '--shiki-token-constant': "#38BDF8";
433
+ readonly '--shiki-token-string': "#34D399";
434
+ readonly '--shiki-token-comment': "#64748B";
435
+ readonly '--shiki-token-keyword': "#A78BFA";
436
+ readonly '--shiki-token-parameter': "#FBBF24";
437
+ readonly '--shiki-token-function': "#38BDF8";
438
+ readonly '--shiki-token-string-expression': "#34D399";
439
+ readonly '--shiki-token-punctuation': "#E2E8F0";
440
+ readonly '--shiki-token-link': "#38BDF8";
441
+ };
442
+ };
136
443
  readonly monokai: {
137
444
  readonly label: "Monokai";
138
445
  readonly light: {
@@ -158,6 +465,31 @@ export declare const PRESETS: {
158
465
  readonly '--shiki-token-link': "#AB9DF2";
159
466
  };
160
467
  };
468
+ readonly nightowl: {
469
+ readonly label: "Night Owl";
470
+ readonly light: {
471
+ readonly '--shiki-token-constant': "#0B2948";
472
+ readonly '--shiki-token-string': "#0A7A5A";
473
+ readonly '--shiki-token-comment': "#6B7B8D";
474
+ readonly '--shiki-token-keyword': "#7C3AED";
475
+ readonly '--shiki-token-parameter': "#8A6A00";
476
+ readonly '--shiki-token-function': "#0B2948";
477
+ readonly '--shiki-token-string-expression': "#0A7A5A";
478
+ readonly '--shiki-token-punctuation': "#2C3E50";
479
+ readonly '--shiki-token-link': "#0B2948";
480
+ };
481
+ readonly dark: {
482
+ readonly '--shiki-token-constant': "#FFEB95";
483
+ readonly '--shiki-token-string': "#22DA6E";
484
+ readonly '--shiki-token-comment': "#637777";
485
+ readonly '--shiki-token-keyword': "#C792EA";
486
+ readonly '--shiki-token-parameter': "#F78C6C";
487
+ readonly '--shiki-token-function': "#82AAFF";
488
+ readonly '--shiki-token-string-expression': "#22DA6E";
489
+ readonly '--shiki-token-punctuation': "#D6DEEB";
490
+ readonly '--shiki-token-link': "#7FDBCA";
491
+ };
492
+ };
161
493
  readonly nord: {
162
494
  readonly label: "Nord";
163
495
  readonly light: {
@@ -208,6 +540,106 @@ export declare const PRESETS: {
208
540
  readonly '--shiki-token-link': "#61AFEF";
209
541
  };
210
542
  };
543
+ readonly opencode: {
544
+ readonly label: "OpenCode";
545
+ readonly light: {
546
+ readonly '--shiki-token-constant': "#4F46E5";
547
+ readonly '--shiki-token-string': "#059669";
548
+ readonly '--shiki-token-comment': "#6B7280";
549
+ readonly '--shiki-token-keyword': "#7C3AED";
550
+ readonly '--shiki-token-parameter': "#B45309";
551
+ readonly '--shiki-token-function': "#4F46E5";
552
+ readonly '--shiki-token-string-expression': "#059669";
553
+ readonly '--shiki-token-punctuation': "#27272A";
554
+ readonly '--shiki-token-link': "#4F46E5";
555
+ };
556
+ readonly dark: {
557
+ readonly '--shiki-token-constant': "#5E6AD2";
558
+ readonly '--shiki-token-string': "#0DBF6A";
559
+ readonly '--shiki-token-comment': "#6B7280";
560
+ readonly '--shiki-token-keyword': "#A78BFA";
561
+ readonly '--shiki-token-parameter': "#FF8A00";
562
+ readonly '--shiki-token-function': "#5E6AD2";
563
+ readonly '--shiki-token-string-expression': "#0DBF6A";
564
+ readonly '--shiki-token-punctuation': "#A1A1AA";
565
+ readonly '--shiki-token-link': "#5E6AD2";
566
+ };
567
+ };
568
+ readonly orng: {
569
+ readonly label: "Orng";
570
+ readonly light: {
571
+ readonly '--shiki-token-constant': "#9A3412";
572
+ readonly '--shiki-token-string': "#166534";
573
+ readonly '--shiki-token-comment': "#9A8B7A";
574
+ readonly '--shiki-token-keyword': "#C2410C";
575
+ readonly '--shiki-token-parameter': "#EA580C";
576
+ readonly '--shiki-token-function': "#9A3412";
577
+ readonly '--shiki-token-string-expression': "#166534";
578
+ readonly '--shiki-token-punctuation': "#451A03";
579
+ readonly '--shiki-token-link': "#9A3412";
580
+ };
581
+ readonly dark: {
582
+ readonly '--shiki-token-constant': "#FF8A00";
583
+ readonly '--shiki-token-string': "#22C55E";
584
+ readonly '--shiki-token-comment': "#8C6A4A";
585
+ readonly '--shiki-token-keyword': "#FF6B00";
586
+ readonly '--shiki-token-parameter': "#FDBA74";
587
+ readonly '--shiki-token-function': "#FF6B00";
588
+ readonly '--shiki-token-string-expression': "#22C55E";
589
+ readonly '--shiki-token-punctuation': "#FFEFD6";
590
+ readonly '--shiki-token-link': "#FF6B00";
591
+ };
592
+ };
593
+ readonly 'osaka-jade': {
594
+ readonly label: "Osaka Jade";
595
+ readonly light: {
596
+ readonly '--shiki-token-constant': "#0F6F5C";
597
+ readonly '--shiki-token-string': "#0B7A3E";
598
+ readonly '--shiki-token-comment': "#6B8A7A";
599
+ readonly '--shiki-token-keyword': "#0F6F5C";
600
+ readonly '--shiki-token-parameter': "#8A6A00";
601
+ readonly '--shiki-token-function': "#0F6F5C";
602
+ readonly '--shiki-token-string-expression': "#0B7A3E";
603
+ readonly '--shiki-token-punctuation': "#1A3A2A";
604
+ readonly '--shiki-token-link': "#0F6F5C";
605
+ };
606
+ readonly dark: {
607
+ readonly '--shiki-token-constant': "#6A9589";
608
+ readonly '--shiki-token-string': "#98BB6C";
609
+ readonly '--shiki-token-comment': "#6B8A7A";
610
+ readonly '--shiki-token-keyword': "#00A86B";
611
+ readonly '--shiki-token-parameter': "#E6C384";
612
+ readonly '--shiki-token-function': "#00A86B";
613
+ readonly '--shiki-token-string-expression': "#98BB6C";
614
+ readonly '--shiki-token-punctuation': "#D0E8D8";
615
+ readonly '--shiki-token-link': "#7FB4CA";
616
+ };
617
+ };
618
+ readonly palenight: {
619
+ readonly label: "Palenight";
620
+ readonly light: {
621
+ readonly '--shiki-token-constant': "#3A4A6B";
622
+ readonly '--shiki-token-string': "#2E7D32";
623
+ readonly '--shiki-token-comment': "#6B7C8D";
624
+ readonly '--shiki-token-keyword': "#7C4DFF";
625
+ readonly '--shiki-token-parameter': "#B47A00";
626
+ readonly '--shiki-token-function': "#3A4A6B";
627
+ readonly '--shiki-token-string-expression': "#2E7D32";
628
+ readonly '--shiki-token-punctuation': "#3C435E";
629
+ readonly '--shiki-token-link': "#3A4A6B";
630
+ };
631
+ readonly dark: {
632
+ readonly '--shiki-token-constant': "#FFCB6B";
633
+ readonly '--shiki-token-string': "#C3E88D";
634
+ readonly '--shiki-token-comment': "#676E95";
635
+ readonly '--shiki-token-keyword': "#C792EA";
636
+ readonly '--shiki-token-parameter': "#FFCB6B";
637
+ readonly '--shiki-token-function': "#82AAFF";
638
+ readonly '--shiki-token-string-expression': "#C3E88D";
639
+ readonly '--shiki-token-punctuation': "#A6ACCD";
640
+ readonly '--shiki-token-link': "#82AAFF";
641
+ };
642
+ };
211
643
  readonly rosepine: {
212
644
  readonly label: "Rosé Pine";
213
645
  readonly light: {
@@ -258,6 +690,56 @@ export declare const PRESETS: {
258
690
  readonly '--shiki-token-link': "#63ABDF";
259
691
  };
260
692
  };
693
+ readonly synthwave84: {
694
+ readonly label: "Synthwave 84";
695
+ readonly light: {
696
+ readonly '--shiki-token-constant': "#6B21A8";
697
+ readonly '--shiki-token-string': "#0E7A5A";
698
+ readonly '--shiki-token-comment': "#8A7FA8";
699
+ readonly '--shiki-token-keyword': "#C0265A";
700
+ readonly '--shiki-token-parameter': "#9A6A00";
701
+ readonly '--shiki-token-function': "#6B21A8";
702
+ readonly '--shiki-token-string-expression': "#0E7A5A";
703
+ readonly '--shiki-token-punctuation': "#3A2E4A";
704
+ readonly '--shiki-token-link': "#6B21A8";
705
+ };
706
+ readonly dark: {
707
+ readonly '--shiki-token-constant': "#FEDE5D";
708
+ readonly '--shiki-token-string': "#36F9F6";
709
+ readonly '--shiki-token-comment': "#848BBD";
710
+ readonly '--shiki-token-keyword': "#FF7EDB";
711
+ readonly '--shiki-token-parameter': "#FEDE5D";
712
+ readonly '--shiki-token-function': "#FF7EDB";
713
+ readonly '--shiki-token-string-expression': "#36F9F6";
714
+ readonly '--shiki-token-punctuation': "#FFFFFF";
715
+ readonly '--shiki-token-link': "#36F9F6";
716
+ };
717
+ };
718
+ readonly system: {
719
+ readonly label: "System";
720
+ readonly light: {
721
+ readonly '--shiki-token-constant': "#007AFF";
722
+ readonly '--shiki-token-string': "#34C759";
723
+ readonly '--shiki-token-comment': "#8E8E93";
724
+ readonly '--shiki-token-keyword': "#AF52DE";
725
+ readonly '--shiki-token-parameter': "#FF9500";
726
+ readonly '--shiki-token-function': "#007AFF";
727
+ readonly '--shiki-token-string-expression': "#34C759";
728
+ readonly '--shiki-token-punctuation': "#1C1C1E";
729
+ readonly '--shiki-token-link': "#007AFF";
730
+ };
731
+ readonly dark: {
732
+ readonly '--shiki-token-constant': "#0A84FF";
733
+ readonly '--shiki-token-string': "#30D158";
734
+ readonly '--shiki-token-comment': "#8E8E93";
735
+ readonly '--shiki-token-keyword': "#BF5AF2";
736
+ readonly '--shiki-token-parameter': "#FF9F0A";
737
+ readonly '--shiki-token-function': "#0A84FF";
738
+ readonly '--shiki-token-string-expression': "#30D158";
739
+ readonly '--shiki-token-punctuation': "#F5F5F7";
740
+ readonly '--shiki-token-link': "#0A84FF";
741
+ };
742
+ };
261
743
  readonly tokyonight: {
262
744
  readonly label: "Tokyo Night";
263
745
  readonly light: {
@@ -283,6 +765,56 @@ export declare const PRESETS: {
283
765
  readonly '--shiki-token-link': "#7AA2F7";
284
766
  };
285
767
  };
768
+ readonly vercel: {
769
+ readonly label: "Vercel";
770
+ readonly light: {
771
+ readonly '--shiki-token-constant': "#0070F3";
772
+ readonly '--shiki-token-string': "#0A7A42";
773
+ readonly '--shiki-token-comment': "#8A8A8A";
774
+ readonly '--shiki-token-keyword': "#000000";
775
+ readonly '--shiki-token-parameter': "#B45309";
776
+ readonly '--shiki-token-function': "#0070F3";
777
+ readonly '--shiki-token-string-expression': "#0A7A42";
778
+ readonly '--shiki-token-punctuation': "#000000";
779
+ readonly '--shiki-token-link': "#0070F3";
780
+ };
781
+ readonly dark: {
782
+ readonly '--shiki-token-constant': "#3291FF";
783
+ readonly '--shiki-token-string': "#0CCB6A";
784
+ readonly '--shiki-token-comment': "#8A8A8A";
785
+ readonly '--shiki-token-keyword': "#FFFFFF";
786
+ readonly '--shiki-token-parameter': "#F5A623";
787
+ readonly '--shiki-token-function': "#3291FF";
788
+ readonly '--shiki-token-string-expression': "#0CCB6A";
789
+ readonly '--shiki-token-punctuation': "#FFFFFF";
790
+ readonly '--shiki-token-link': "#3291FF";
791
+ };
792
+ };
793
+ readonly vesper: {
794
+ readonly label: "Vesper";
795
+ readonly light: {
796
+ readonly '--shiki-token-constant': "#3A3A3A";
797
+ readonly '--shiki-token-string': "#5A7A3A";
798
+ readonly '--shiki-token-comment': "#8A8A8A";
799
+ readonly '--shiki-token-keyword': "#3A3A3A";
800
+ readonly '--shiki-token-parameter': "#8A6A2E";
801
+ readonly '--shiki-token-function': "#3A3A3A";
802
+ readonly '--shiki-token-string-expression': "#5A7A3A";
803
+ readonly '--shiki-token-punctuation': "#2A2A2A";
804
+ readonly '--shiki-token-link': "#3A3A3A";
805
+ };
806
+ readonly dark: {
807
+ readonly '--shiki-token-constant': "#E8E8E8";
808
+ readonly '--shiki-token-string': "#B8C8A8";
809
+ readonly '--shiki-token-comment': "#8A8A8A";
810
+ readonly '--shiki-token-keyword': "#E8E8E8";
811
+ readonly '--shiki-token-parameter': "#D6C8A8";
812
+ readonly '--shiki-token-function': "#E8E8E8";
813
+ readonly '--shiki-token-string-expression': "#B8C8A8";
814
+ readonly '--shiki-token-punctuation': "#E8E8E8";
815
+ readonly '--shiki-token-link': "#E8E8E8";
816
+ };
817
+ };
286
818
  readonly zenburn: {
287
819
  readonly label: "Zenburn";
288
820
  readonly light: {
@@ -311,6 +843,11 @@ export declare const PRESETS: {
311
843
  };
312
844
  /** `native` is a legacy storage alias for `dsh` — both mean "system default, no overrides". */
313
845
  export type PresetId = keyof typeof PRESETS | 'native';
846
+ /**
847
+ * Presets that override nothing: the shell keeps its own colours. The single
848
+ * source of this set, so the token layer and the panel cannot drift on it.
849
+ */
850
+ export declare const NOOP_PRESET_IDS: ReadonlySet<PresetId>;
314
851
  export declare const presetOptions: {
315
852
  value: PresetId;
316
853
  label: string;
@@ -1 +1 @@
1
- {"version":3,"file":"presets.d.ts","sourceRoot":"","sources":["../../../src/client/presets.ts"],"names":[],"mappings":"AAkBA,eAAO,MAAM,OAAO;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAc0B,CAAA;AAE9C,+FAA+F;AAC/F,MAAM,MAAM,QAAQ,GAAG,MAAM,OAAO,OAAO,GAAG,QAAQ,CAAA;AAEtD,eAAO,MAAM,aAAa,EAAE;IAAE,KAAK,EAAE,QAAQ,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,EAK7D,CAAA"}
1
+ {"version":3,"file":"presets.d.ts","sourceRoot":"","sources":["../../../src/client/presets.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAA;AAqCpD,gEAAgE;AAChE,MAAM,MAAM,SAAS,GAAG;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,SAAS,CAAC;IAAC,IAAI,EAAE,SAAS,CAAA;CAAE,CAAA;AAE5E,eAAO,MAAM,OAAO;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAmC0B,CAAA;AAE9C,+FAA+F;AAC/F,MAAM,MAAM,QAAQ,GAAG,MAAM,OAAO,OAAO,GAAG,QAAQ,CAAA;AAEtD;;;GAGG;AACH,eAAO,MAAM,eAAe,EAAE,WAAW,CAAC,QAAQ,CAAwC,CAAA;AAE1F,eAAO,MAAM,aAAa,EAAE;IAAE,KAAK,EAAE,QAAQ,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,EAK7D,CAAA"}
@@ -0,0 +1,37 @@
1
+ /**
2
+ * Browser half of the theme-file transport.
3
+ *
4
+ * The Host owns the files; this module is the only place that knows the wire
5
+ * shape, so the rest of the client keeps working with plain `SavedTheme`
6
+ * records. Every call is same-origin against the Host's own prefix route.
7
+ */
8
+ import type { ThemeDocument } from '../contract.js';
9
+ import { type CustomTheme, type SavedTheme } from './custom.js';
10
+ /** Repair one stored document against the preset its seeds derive from. */
11
+ export declare function documentToSaved(doc: ThemeDocument, fallbackFor: (base: string) => CustomTheme): SavedTheme;
12
+ /** The document payload for one entry; timestamps stay the Host's business. */
13
+ export declare function savedToDocument(entry: SavedTheme): Record<string, unknown>;
14
+ /**
15
+ * The Host answered as something other than this API — its route half is not
16
+ * mounted (the usual cause is a DSH process started before this plugin's host
17
+ * half existed). Distinguished from a write failure because only this one tells
18
+ * the user to restart, and the browser copy is still intact meanwhile.
19
+ */
20
+ export declare class ThemeApiUnavailableError extends Error {
21
+ }
22
+ /** Every stored theme, in the Host's creation-time order (oldest first). */
23
+ export declare function fetchThemes(fallbackFor: (base: string) => CustomTheme): Promise<SavedTheme[]>;
24
+ /** Insert or replace the given entries; resolves with what the Host stored. */
25
+ export declare function pushThemes(entries: SavedTheme[], fallbackFor: (base: string) => CustomTheme): Promise<SavedTheme[]>;
26
+ /** Remove one theme's directory. */
27
+ export declare function removeTheme(id: string): Promise<void>;
28
+ /**
29
+ * The themes a browser saved before files became the store, minus those the
30
+ * Host already has.
31
+ *
32
+ * Ids are the join key: a theme another browser already migrated must not be
33
+ * written twice, while one this roster lacks would otherwise disappear from the
34
+ * UI. Callers adopt the result, then stop reading the browser copy.
35
+ */
36
+ export declare function legacyThemesToAdopt(legacy: SavedTheme[], hostThemes: SavedTheme[]): SavedTheme[];
37
+ //# sourceMappingURL=theme-files.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"theme-files.d.ts","sourceRoot":"","sources":["../../../src/client/theme-files.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAGH,OAAO,KAAK,EAAc,aAAa,EAAE,MAAM,gBAAgB,CAAA;AAC/D,OAAO,EAAmB,KAAK,WAAW,EAAE,KAAK,UAAU,EAAE,MAAM,aAAa,CAAA;AAEhF,2EAA2E;AAC3E,wBAAgB,eAAe,CAC7B,GAAG,EAAE,aAAa,EAClB,WAAW,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,WAAW,GACzC,UAAU,CAQZ;AAED,+EAA+E;AAC/E,wBAAgB,eAAe,CAAC,KAAK,EAAE,UAAU,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAS1E;AAMD;;;;;GAKG;AACH,qBAAa,wBAAyB,SAAQ,KAAK;CAAG;AA4DtD,4EAA4E;AAC5E,wBAAsB,WAAW,CAC/B,WAAW,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,WAAW,GACzC,OAAO,CAAC,UAAU,EAAE,CAAC,CAEvB;AAED,+EAA+E;AAC/E,wBAAsB,UAAU,CAC9B,OAAO,EAAE,UAAU,EAAE,EACrB,WAAW,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,WAAW,GACzC,OAAO,CAAC,UAAU,EAAE,CAAC,CAMvB;AAED,oCAAoC;AACpC,wBAAsB,WAAW,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAE3D;AAED;;;;;;;GAOG;AACH,wBAAgB,mBAAmB,CACjC,MAAM,EAAE,UAAU,EAAE,EACpB,UAAU,EAAE,UAAU,EAAE,GACvB,UAAU,EAAE,CAGd"}
@@ -1 +1 @@
1
- {"version":3,"file":"theme.d.ts","sourceRoot":"","sources":["../../../src/client/theme.tsx"],"names":[],"mappings":"AAiCA,wBAAgB,aAAa,CAAC,GAAG,EAAE,GAAG,QAsQrC"}
1
+ {"version":3,"file":"theme.d.ts","sourceRoot":"","sources":["../../../src/client/theme.tsx"],"names":[],"mappings":"AA2KA,wBAAgB,aAAa,CAAC,GAAG,EAAE,GAAG,QAqcrC"}