enhance(client): add html color-schema support

This commit is contained in:
syuilo 2022-08-27 00:39:59 +09:00
parent 51efbfeec1
commit 76b14494d7
2 changed files with 9 additions and 0 deletions

View file

@ -92,6 +92,10 @@
}
}
}
const colorSchema = localStorage.getItem('colorSchema');
if (colorSchema) {
document.documentElement.style.setProperty('color-schema', colorSchema);
}
//#endregion
const fontSize = localStorage.getItem('fontSize');

View file

@ -57,6 +57,8 @@ export function applyTheme(theme: Theme, persist = true) {
document.documentElement.classList.remove('_themeChanging_');
}, 1000);
const colorSchema = theme.base === 'dark' ? 'dark' : 'light';
// Deep copy
const _theme = JSON.parse(JSON.stringify(theme));
@ -78,8 +80,11 @@ export function applyTheme(theme: Theme, persist = true) {
document.documentElement.style.setProperty(`--${k}`, v.toString());
}
document.documentElement.style.setProperty('color-schema', colorSchema);
if (persist) {
localStorage.setItem('theme', JSON.stringify(props));
localStorage.setItem('colorSchema', colorSchema);
}
// 色計算など再度行えるようにクライアント全体に通知