diff --git a/config/nimdoc.cfg b/config/nimdoc.cfg index 945a3dc6c0..3560c0d65d 100644 --- a/config/nimdoc.cfg +++ b/config/nimdoc.cfg @@ -240,21 +240,12 @@ function main() { toggleSwitch.addEventListener('change', switchTheme, false); + const currentTheme = localStorage.getItem('theme') ? localStorage.getItem('theme') : null; + if (currentTheme) { + document.documentElement.setAttribute('data-theme', currentTheme); - if (window.matchMedia && window.matchMedia('(prefers-color-scheme: dark)').matches) { - document.documentElement.setAttribute('data-theme', "dark"); - toggleSwitch.checked = true; - } else if (window.matchMedia && window.matchMedia('(prefers-color-scheme: light)').matches) { - document.documentElement.setAttribute('data-theme', "light"); - toggleSwitch.checked = false; - } else { - const currentTheme = localStorage.getItem('theme') ? localStorage.getItem('theme') : null; - if (currentTheme) { - document.documentElement.setAttribute('data-theme', currentTheme); - - if (currentTheme === 'dark') { - toggleSwitch.checked = true; - } + if (currentTheme === 'dark') { + toggleSwitch.checked = true; } } } diff --git a/nimdoc/test_out_index_dot_html/expected/index.html b/nimdoc/test_out_index_dot_html/expected/index.html index a8b65b2c9b..f353345037 100644 --- a/nimdoc/test_out_index_dot_html/expected/index.html +++ b/nimdoc/test_out_index_dot_html/expected/index.html @@ -47,21 +47,12 @@ function main() { toggleSwitch.addEventListener('change', switchTheme, false); + const currentTheme = localStorage.getItem('theme') ? localStorage.getItem('theme') : null; + if (currentTheme) { + document.documentElement.setAttribute('data-theme', currentTheme); - if (window.matchMedia && window.matchMedia('(prefers-color-scheme: dark)').matches) { - document.documentElement.setAttribute('data-theme', "dark"); - toggleSwitch.checked = true; - } else if (window.matchMedia && window.matchMedia('(prefers-color-scheme: light)').matches) { - document.documentElement.setAttribute('data-theme', "light"); - toggleSwitch.checked = false; - } else { - const currentTheme = localStorage.getItem('theme') ? localStorage.getItem('theme') : null; - if (currentTheme) { - document.documentElement.setAttribute('data-theme', currentTheme); - - if (currentTheme === 'dark') { - toggleSwitch.checked = true; - } + if (currentTheme === 'dark') { + toggleSwitch.checked = true; } } } diff --git a/nimdoc/test_out_index_dot_html/expected/theindex.html b/nimdoc/test_out_index_dot_html/expected/theindex.html index 095dd74716..b2863f99a1 100644 --- a/nimdoc/test_out_index_dot_html/expected/theindex.html +++ b/nimdoc/test_out_index_dot_html/expected/theindex.html @@ -47,21 +47,12 @@ function main() { toggleSwitch.addEventListener('change', switchTheme, false); + const currentTheme = localStorage.getItem('theme') ? localStorage.getItem('theme') : null; + if (currentTheme) { + document.documentElement.setAttribute('data-theme', currentTheme); - if (window.matchMedia && window.matchMedia('(prefers-color-scheme: dark)').matches) { - document.documentElement.setAttribute('data-theme', "dark"); - toggleSwitch.checked = true; - } else if (window.matchMedia && window.matchMedia('(prefers-color-scheme: light)').matches) { - document.documentElement.setAttribute('data-theme', "light"); - toggleSwitch.checked = false; - } else { - const currentTheme = localStorage.getItem('theme') ? localStorage.getItem('theme') : null; - if (currentTheme) { - document.documentElement.setAttribute('data-theme', currentTheme); - - if (currentTheme === 'dark') { - toggleSwitch.checked = true; - } + if (currentTheme === 'dark') { + toggleSwitch.checked = true; } } } diff --git a/nimdoc/testproject/expected/subdir/subdir_b/utils.html b/nimdoc/testproject/expected/subdir/subdir_b/utils.html index 6e83f718ff..eefbcfdf94 100644 --- a/nimdoc/testproject/expected/subdir/subdir_b/utils.html +++ b/nimdoc/testproject/expected/subdir/subdir_b/utils.html @@ -47,21 +47,12 @@ function main() { toggleSwitch.addEventListener('change', switchTheme, false); + const currentTheme = localStorage.getItem('theme') ? localStorage.getItem('theme') : null; + if (currentTheme) { + document.documentElement.setAttribute('data-theme', currentTheme); - if (window.matchMedia && window.matchMedia('(prefers-color-scheme: dark)').matches) { - document.documentElement.setAttribute('data-theme', "dark"); - toggleSwitch.checked = true; - } else if (window.matchMedia && window.matchMedia('(prefers-color-scheme: light)').matches) { - document.documentElement.setAttribute('data-theme', "light"); - toggleSwitch.checked = false; - } else { - const currentTheme = localStorage.getItem('theme') ? localStorage.getItem('theme') : null; - if (currentTheme) { - document.documentElement.setAttribute('data-theme', currentTheme); - - if (currentTheme === 'dark') { - toggleSwitch.checked = true; - } + if (currentTheme === 'dark') { + toggleSwitch.checked = true; } } } diff --git a/nimdoc/testproject/expected/testproject.html b/nimdoc/testproject/expected/testproject.html index 648ecb6294..479a2e89d8 100644 --- a/nimdoc/testproject/expected/testproject.html +++ b/nimdoc/testproject/expected/testproject.html @@ -47,21 +47,12 @@ function main() { toggleSwitch.addEventListener('change', switchTheme, false); + const currentTheme = localStorage.getItem('theme') ? localStorage.getItem('theme') : null; + if (currentTheme) { + document.documentElement.setAttribute('data-theme', currentTheme); - if (window.matchMedia && window.matchMedia('(prefers-color-scheme: dark)').matches) { - document.documentElement.setAttribute('data-theme', "dark"); - toggleSwitch.checked = true; - } else if (window.matchMedia && window.matchMedia('(prefers-color-scheme: light)').matches) { - document.documentElement.setAttribute('data-theme', "light"); - toggleSwitch.checked = false; - } else { - const currentTheme = localStorage.getItem('theme') ? localStorage.getItem('theme') : null; - if (currentTheme) { - document.documentElement.setAttribute('data-theme', currentTheme); - - if (currentTheme === 'dark') { - toggleSwitch.checked = true; - } + if (currentTheme === 'dark') { + toggleSwitch.checked = true; } } } diff --git a/nimdoc/testproject/expected/theindex.html b/nimdoc/testproject/expected/theindex.html index 0b835c4091..66dea92fcc 100644 --- a/nimdoc/testproject/expected/theindex.html +++ b/nimdoc/testproject/expected/theindex.html @@ -47,21 +47,12 @@ function main() { toggleSwitch.addEventListener('change', switchTheme, false); + const currentTheme = localStorage.getItem('theme') ? localStorage.getItem('theme') : null; + if (currentTheme) { + document.documentElement.setAttribute('data-theme', currentTheme); - if (window.matchMedia && window.matchMedia('(prefers-color-scheme: dark)').matches) { - document.documentElement.setAttribute('data-theme', "dark"); - toggleSwitch.checked = true; - } else if (window.matchMedia && window.matchMedia('(prefers-color-scheme: light)').matches) { - document.documentElement.setAttribute('data-theme', "light"); - toggleSwitch.checked = false; - } else { - const currentTheme = localStorage.getItem('theme') ? localStorage.getItem('theme') : null; - if (currentTheme) { - document.documentElement.setAttribute('data-theme', currentTheme); - - if (currentTheme === 'dark') { - toggleSwitch.checked = true; - } + if (currentTheme === 'dark') { + toggleSwitch.checked = true; } } }