Skip to content

Commit a1d5bf2

Browse files
committed
prettier formatting
1 parent a465a82 commit a1d5bf2

1 file changed

Lines changed: 96 additions & 89 deletions

File tree

src/style/themes.ts

Lines changed: 96 additions & 89 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,13 @@
11
import type { editor } from 'monaco-editor';
22

3+
import { CatppuccinFlavor, ColorFormat, flavors } from '@catppuccin/palette';
34
import dracula from 'monaco-themes/themes/Dracula.json';
45
import monokai from 'monaco-themes/themes/Monokai.json';
56
import solarizedDark from 'monaco-themes/themes/Solarized-dark.json';
67
import solarizedLight from 'monaco-themes/themes/Solarized-light.json';
7-
import { CatppuccinFlavor, flavors, ColorFormat } from '@catppuccin/palette';
88

99
type Color = `#${string}`;
10-
type Extra = Record<string, Color>;
10+
type ColorRecord = Record<string, Color>;
1111

1212
export interface Theme {
1313
id: string;
@@ -50,31 +50,34 @@ const themes: Themes = {
5050
backgroundColor: '#161b22', // canvas.overlay
5151
},
5252

53-
editor: makeMonacoTheme({
54-
base: 'vs-dark',
55-
colors: {
56-
primary: '#c9d1d9', // fg.default
57-
background: '#0d1117', // canvas.default
58-
comment: '#8b949e',
59-
delimiter: '#d2a8ff',
60-
annotation: '#a5d6ff',
61-
constant: '#ff7b72',
62-
number: '#f2cc60',
63-
string: '#79c0ff',
64-
operator: '#ff7b72',
65-
keyword: '#ff7b72',
66-
type: '#ffa657',
67-
variable: '#ffa657',
68-
logInfo: '#3fb950', // green.3
69-
logError: '#f85149', // red.4
70-
logWarning: '#d29922', // yellow.3
71-
logDate: '#33B3AE', // teal.3
72-
logException: '#f8e3a1', // yellow.0
73-
diffMeta: '#33B3AE', // teal.3
74-
diffAddition: '#3fb950', // green.3
75-
diffDeletion: '#f85149', // red.4
53+
editor: makeMonacoTheme(
54+
{
55+
base: 'vs-dark',
56+
colors: {
57+
primary: '#c9d1d9', // fg.default
58+
background: '#0d1117', // canvas.default
59+
comment: '#8b949e',
60+
delimiter: '#d2a8ff',
61+
annotation: '#a5d6ff',
62+
constant: '#ff7b72',
63+
number: '#f2cc60',
64+
string: '#79c0ff',
65+
operator: '#ff7b72',
66+
keyword: '#ff7b72',
67+
type: '#ffa657',
68+
variable: '#ffa657',
69+
logInfo: '#3fb950', // green.3
70+
logError: '#f85149', // red.4
71+
logWarning: '#d29922', // yellow.3
72+
logDate: '#33B3AE', // teal.3
73+
logException: '#f8e3a1', // yellow.0
74+
diffMeta: '#33B3AE', // teal.3
75+
diffAddition: '#3fb950', // green.3
76+
diffDeletion: '#f85149', // red.4
77+
},
7678
},
77-
}, {}),
79+
{}
80+
),
7881
},
7982
'light': {
8083
id: 'light',
@@ -89,31 +92,34 @@ const themes: Themes = {
8992
backgroundColor: '#e0f6ff',
9093
},
9194

92-
editor: makeMonacoTheme({
93-
base: 'vs',
94-
colors: {
95-
primary: '#000000',
96-
background: '#ffffff',
97-
comment: '#708090',
98-
delimiter: '#999999',
99-
annotation: '#999999',
100-
constant: '#990055',
101-
number: '#990055',
102-
string: '#669900',
103-
operator: '#9a6e3a',
104-
keyword: '#0077aa',
105-
type: '#DD4A68',
106-
variable: '#ee9900',
107-
logInfo: '#2da44e', // green.4
108-
logError: '#cf222e', // red.5
109-
logWarning: '#d4a72c', // yellow.3
110-
logDate: '#136061', // teal.6
111-
logException: '#7d4e00', // yellow.6
112-
diffMeta: '#136061', // teal.6
113-
diffAddition: '#2da44e', // green.4
114-
diffDeletion: '#cf222e', // red.5
95+
editor: makeMonacoTheme(
96+
{
97+
base: 'vs',
98+
colors: {
99+
primary: '#000000',
100+
background: '#ffffff',
101+
comment: '#708090',
102+
delimiter: '#999999',
103+
annotation: '#999999',
104+
constant: '#990055',
105+
number: '#990055',
106+
string: '#669900',
107+
operator: '#9a6e3a',
108+
keyword: '#0077aa',
109+
type: '#DD4A68',
110+
variable: '#ee9900',
111+
logInfo: '#2da44e', // green.4
112+
logError: '#cf222e', // red.5
113+
logWarning: '#d4a72c', // yellow.3
114+
logDate: '#136061', // teal.6
115+
logException: '#7d4e00', // yellow.6
116+
diffMeta: '#136061', // teal.6
117+
diffAddition: '#2da44e', // green.4
118+
diffDeletion: '#cf222e', // red.5
119+
},
115120
},
116-
}, {}),
121+
{}
122+
),
117123
},
118124
'dracula': {
119125
id: 'dracula',
@@ -242,7 +248,7 @@ interface MonacoThemeProps {
242248

243249
export function makeMonacoTheme(
244250
props: MonacoThemeProps,
245-
extra: Extra
251+
extraColors: ColorRecord
246252
): editor.IStandaloneThemeData {
247253
const colors = Object.fromEntries(
248254
Object.entries(props.colors).map(([key, color]) => [
@@ -251,13 +257,11 @@ export function makeMonacoTheme(
251257
])
252258
) as Record<keyof MonacoThemeProps['colors'], string>;
253259

254-
let editorColors: Extra = {
260+
const editorColors: ColorRecord = {
255261
'editor.background': `#${colors.background}`,
256262
'editor.foreground': `#${colors.primary}`,
257263
};
258264

259-
editorColors = { ...editorColors, ...extra };
260-
261265
return {
262266
base: props.base,
263267
inherit: true,
@@ -292,7 +296,7 @@ export function makeMonacoTheme(
292296
{ token: 'addition.diff', foreground: colors.diffAddition },
293297
{ token: 'deletion.diff', foreground: colors.diffDeletion },
294298
],
295-
colors: editorColors
299+
colors: { ...editorColors, ...extraColors },
296300
};
297301
}
298302

@@ -327,40 +331,43 @@ export function createCatppuccinTheme(flavor: CatppuccinFlavor): Theme {
327331
[flavors.mocha.name]: 'mocha',
328332
};
329333

330-
const editorTheme = makeMonacoTheme({
331-
base: flavor.dark ? 'vs-dark' : 'vs',
332-
colors: {
333-
// Monaco
334-
primary: color(flavor.colors.text),
335-
background: color(flavor.colors.mantle),
336-
string: color(flavor.colors.green),
337-
comment: color(flavor.colors.overlay2),
338-
delimiter: color(flavor.colors.overlay2),
339-
annotation: color(flavor.colors.yellow),
340-
constant: color(flavor.colors.peach),
341-
number: color(flavor.colors.peach),
342-
operator: color(flavor.colors.sky),
343-
keyword: color(flavor.colors.mauve),
344-
type: color(flavor.colors.yellow),
345-
variable: color(flavor.colors.text),
334+
const editorTheme = makeMonacoTheme(
335+
{
336+
base: flavor.dark ? 'vs-dark' : 'vs',
337+
colors: {
338+
// Monaco
339+
primary: color(flavor.colors.text),
340+
background: color(flavor.colors.mantle),
341+
string: color(flavor.colors.green),
342+
comment: color(flavor.colors.overlay2),
343+
delimiter: color(flavor.colors.overlay2),
344+
annotation: color(flavor.colors.yellow),
345+
constant: color(flavor.colors.peach),
346+
number: color(flavor.colors.peach),
347+
operator: color(flavor.colors.sky),
348+
keyword: color(flavor.colors.mauve),
349+
type: color(flavor.colors.yellow),
350+
variable: color(flavor.colors.text),
346351

347-
// Log Files
348-
logDate: color(flavor.colors.mauve),
349-
logInfo: color(flavor.colors.green),
350-
logWarning: color(flavor.colors.yellow),
351-
logError: color(flavor.colors.red),
352-
logException: color(flavor.colors.yellow),
352+
// Log Files
353+
logDate: color(flavor.colors.mauve),
354+
logInfo: color(flavor.colors.green),
355+
logWarning: color(flavor.colors.yellow),
356+
logError: color(flavor.colors.red),
357+
logException: color(flavor.colors.yellow),
353358

354-
// Diff Files
355-
diffMeta: color(flavor.colors.sky),
356-
diffAddition: color(flavor.colors.green),
357-
diffDeletion: color(flavor.colors.red),
359+
// Diff Files
360+
diffMeta: color(flavor.colors.sky),
361+
diffAddition: color(flavor.colors.green),
362+
diffDeletion: color(flavor.colors.red),
363+
},
364+
},
365+
{
366+
'editorBracketHighlight.foreground1': color(flavor.colors.overlay2),
367+
'editorBracketHighlight.foreground2': color(flavor.colors.overlay2),
368+
'editorBracketHighlight.foreground3': color(flavor.colors.overlay2),
358369
}
359-
}, {
360-
"editorBracketHighlight.foreground1": color(flavor.colors.overlay2),
361-
"editorBracketHighlight.foreground2": color(flavor.colors.overlay2),
362-
"editorBracketHighlight.foreground3": color(flavor.colors.overlay2)
363-
});
370+
);
364371

365372
return {
366373
id: nameToId[flavor.name],
@@ -371,8 +378,8 @@ export function createCatppuccinTheme(flavor: CatppuccinFlavor): Theme {
371378
background: color(flavor.colors.mantle),
372379
highlightedLine: {
373380
color: color(flavor.colors.rosewater),
374-
backgroundColor: color(flavor.colors.surface2)
381+
backgroundColor: color(flavor.colors.surface2),
375382
},
376-
editor: editorTheme
383+
editor: editorTheme,
377384
};
378-
}
385+
}

0 commit comments

Comments
 (0)