Skip to content

Commit da694b9

Browse files
chore: avoid theme flashes (#15927)
* fix: avoid theme flashes * fix: remove unwanted code and revamp `package.json` * chore: revert pacakage.json changes
1 parent baa0153 commit da694b9

2 files changed

Lines changed: 7 additions & 16 deletions

File tree

docs/src/_includes/layouts/base.njk

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -46,13 +46,13 @@
4646
<link rel="preload" href="{{ '/assets/fonts/SpaceMono-Regular-subset.woff2' | url }}" as="font" type="font/woff2" crossorigin>
4747

4848
<script>
49-
(function(){
50-
var theme = window.localStorage.getItem("theme");
51-
if (!theme && window.matchMedia('(prefers-color-scheme: dark)').matches) {
52-
document.documentElement.setAttribute('data-theme', 'dark');
53-
}
54-
else if (theme) document.documentElement.setAttribute('data-theme', theme);
55-
})();
49+
(function () {
50+
var theme = window.localStorage.getItem("theme");
51+
if (theme) document.documentElement.setAttribute('data-theme', theme)
52+
else if (window.matchMedia('(prefers-color-scheme: dark)').matches)
53+
document.documentElement.setAttribute('data-theme', 'dark');
54+
else document.documentElement.setAttribute('data-theme', 'light');
55+
})();
5656
</script>
5757

5858

docs/src/assets/js/themes.js

Lines changed: 0 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -8,11 +8,6 @@
88
btn.setAttribute("aria-pressed", "false");
99
}
1010

11-
12-
let theme = window.localStorage.getItem("theme");
13-
document.documentElement.setAttribute('data-theme', theme);
14-
if (!theme) document.documentElement.setAttribute('data-theme', 'light');
15-
1611
document.addEventListener('DOMContentLoaded', function() {
1712
var switcher = document.getElementById('js-theme-switcher');
1813
switcher.removeAttribute('hidden');
@@ -22,10 +17,6 @@
2217

2318
// get any previously-chosen themes
2419
var theme = window.localStorage.getItem("theme");
25-
if (!theme && window.matchMedia('(prefers-color-scheme: dark)').matches) {
26-
document.documentElement.setAttribute('data-theme', 'dark');
27-
}
28-
else if (theme) document.documentElement.setAttribute('data-theme', theme);
2920

3021
if (theme == "light") {
3122
enableToggle(light_theme_toggle);

0 commit comments

Comments
 (0)