Skip to content

Commit db4718c

Browse files
committed
Setup initial dark and light themes
1 parent 0c21ecc commit db4718c

1 file changed

Lines changed: 37 additions & 9 deletions

File tree

ui/src/main.mjs

Lines changed: 37 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -35,21 +35,48 @@ function retrieveDefaultThemeFromCache () {
3535
return null
3636
}
3737

38+
function retrieveDarkModeFromCache () {
39+
const cachedDarkMode = localStorage.getItem('ndrb-theme-dark-mode')
40+
if (cachedDarkMode) {
41+
return JSON.parse(cachedDarkMode)
42+
}
43+
return false
44+
}
45+
3846
const defaultTheme = retrieveDefaultThemeFromCache()
47+
const darkMode = retrieveDarkModeFromCache()
3948

4049
// set a base theme on which we will add our custom NR-defined theme (initially set to the default theme if exists in cache)
41-
const theme = {
50+
const lightTheme = {
4251
dark: false,
4352
colors: {
44-
background: defaultTheme ? defaultTheme.colors.bgPage : '#fff',
45-
'navigation-background': defaultTheme ? defaultTheme.colors.surface : '#ffffff',
46-
'group-background': defaultTheme ? defaultTheme.colors.groupBg : '#ffffff',
47-
'group-outline': defaultTheme ? defaultTheme.colors.groupOutline : '#d1d1d1',
48-
primary: defaultTheme ? defaultTheme.colors.primary : '#0094CE',
53+
background: defaultTheme ? defaultTheme.colors.light.bgPage : '#fff',
54+
'navigation-background': defaultTheme ? defaultTheme.colors.light.surface : '#ffffff',
55+
'group-background': defaultTheme ? defaultTheme.colors.light.groupBg : '#ffffff',
56+
'group-outline': defaultTheme ? defaultTheme.colors.light.groupOutline : '#d1d1d1',
57+
primary: defaultTheme ? defaultTheme.colors.light.primary : '#0094CE',
58+
accent: '#ff6b99',
59+
secondary: '#26ff8c',
60+
success: '#a5d64c',
61+
surface: defaultTheme ? defaultTheme.colors.light.surface : '#ffffff',
62+
info: '#ff53d0',
63+
warning: '#ff8e00',
64+
error: '#ff5252'
65+
}
66+
}
67+
68+
const darkTheme = {
69+
dark: true,
70+
colors: {
71+
background: defaultTheme ? defaultTheme.colors.dark.bgPage : '#222222',
72+
'navigation-background': defaultTheme ? defaultTheme.colors.dark.surface : '#111111',
73+
'group-background': defaultTheme ? defaultTheme.colors.dark.groupBg : '#333333',
74+
'group-outline': defaultTheme ? defaultTheme.colors.dark.groupOutline : '#cccccc',
75+
primary: defaultTheme ? defaultTheme.colors.dark.primary : '#0094CE',
4976
accent: '#ff6b99',
5077
secondary: '#26ff8c',
5178
success: '#a5d64c',
52-
surface: defaultTheme ? defaultTheme.colors.surface : '#ffffff',
79+
surface: defaultTheme ? defaultTheme.colors.dark.surface : '#111111',
5380
info: '#ff53d0',
5481
warning: '#ff8e00',
5582
error: '#ff5252'
@@ -67,9 +94,10 @@ const vuetify = createVuetify({
6794
resize: Resize
6895
},
6996
theme: {
70-
defaultTheme: 'nrdb',
97+
defaultTheme: darkMode ? 'nrdbDark' : 'nrdbLight',
7198
themes: {
72-
nrdb: theme
99+
nrdbLight: lightTheme,
100+
nrdbDark: darkTheme
73101
}
74102
},
75103
defaults: {

0 commit comments

Comments
 (0)