read prefers-color-scheme (#225)

This commit is contained in:
Zai Shi 2024-09-06 04:38:59 +02:00 committed by GitHub
parent aada9d0797
commit abc2f0020f
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194

View File

@ -16,12 +16,22 @@ const script = () => {
return null;
};
const setTheme = (mode: 'dark' | 'light') => {
document.documentElement.setAttribute('data-stack-theme', mode);
};
const copyFromColorScheme = () => {
const colorScheme = getComputedStyle(document.documentElement).getPropertyValue('color-scheme');
if (colorScheme) {
if (colorScheme === 'normal') {
const isDark = window.matchMedia("(prefers-color-scheme: dark)").matches;
setTheme(isDark ? 'dark' : 'light');
return true;
}
const mode = getColorMode(colorScheme);
if (mode) {
document.documentElement.setAttribute('data-stack-theme', mode);
setTheme(mode);
return true;
}
}
@ -34,7 +44,7 @@ const script = () => {
if (colorTheme) {
const mode = getColorMode(colorTheme);
if (mode) {
document.documentElement.setAttribute('data-stack-theme', mode);
setTheme(mode);
return true;
}
}