summaryrefslogtreecommitdiff
path: root/static/js/util/setThemeBeforeRender.js
diff options
context:
space:
mode:
Diffstat (limited to 'static/js/util/setThemeBeforeRender.js')
-rw-r--r--static/js/util/setThemeBeforeRender.js11
1 files changed, 11 insertions, 0 deletions
diff --git a/static/js/util/setThemeBeforeRender.js b/static/js/util/setThemeBeforeRender.js
new file mode 100644
index 0000000..b025cce
--- /dev/null
+++ b/static/js/util/setThemeBeforeRender.js
@@ -0,0 +1,11 @@
+const preferredMode = window.matchMedia("(prefers-color-scheme: dark)").matches
+ ? "DARK"
+ : "LIGHT";
+
+// sets theme before rendering & jquery loaded to prevent flashing of uninitialized theme
+// (ugly white background)
+localStorage.setItem("theme", localStorage.getItem("theme") || preferredMode);
+document.documentElement.setAttribute(
+ "data-theme",
+ localStorage.getItem("theme"),
+);