From 870f0eff1a6815a94a99a5f3ad566f01ab82a350 Mon Sep 17 00:00:00 2001 From: Eva Decker Date: Thu, 23 Nov 2023 13:58:38 -0500 Subject: [PATCH] Inline theme preloading --- src/app.html | 38 +++++++++++++++++++++++++++++++++- static/scripts/preloadTheme.js | 35 ------------------------------- 2 files changed, 37 insertions(+), 36 deletions(-) delete mode 100644 static/scripts/preloadTheme.js diff --git a/src/app.html b/src/app.html index c23d627..d4ff23f 100644 --- a/src/app.html +++ b/src/app.html @@ -27,7 +27,43 @@ %sveltekit.head% - +
%sveltekit.body%
diff --git a/static/scripts/preloadTheme.js b/static/scripts/preloadTheme.js deleted file mode 100644 index 62b7d15..0000000 --- a/static/scripts/preloadTheme.js +++ /dev/null @@ -1,35 +0,0 @@ -const setTheme = (theme) => { - document.body.classList.toggle('dark', theme === 'dark'); - - const metaTheme = document.querySelector('meta[name="theme-color"]'); - if (metaTheme !== null) - metaTheme.setAttribute('content', theme === 'dark' ? '#121113' : '#FDFCFD'); - - window.localStorage.setItem('theme', theme); - - const lightToggle = document.querySelector('[data-theme-toggle-light]'); - const darkToggle = document.querySelector('[data-theme-toggle-dark]'); - - if (theme === 'light') { - lightToggle?.classList.add('active'); - darkToggle?.classList.remove('active'); - } else { - lightToggle?.classList.remove('active'); - darkToggle?.classList.add('active'); - } -}; - -function getUserPreference() { - if (window.localStorage.getItem('theme')) { - return window.localStorage.getItem('theme'); - } - - return window.matchMedia('(prefers-color-scheme: dark)').matches ? 'dark' : 'light'; -} - -const setInitialTheme = () => { - const userPreference = getUserPreference(); - setTheme(userPreference); -}; - -setInitialTheme();