Branch

top.js

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
ac0345 Tucker McKnight
ac0345 Tucker McKnight
ac0345 Tucker McKnight
ac0345 Tucker McKnight
ac0345 Tucker McKnight
ac0345 Tucker McKnight
ac0345 Tucker McKnight
ac0345 Tucker McKnight
ac0345 Tucker McKnight
ac0345 Tucker McKnight
ac0345 Tucker McKnight
ac0345 Tucker McKnight
ac0345 Tucker McKnight
ac0345 Tucker McKnight
ac0345 Tucker McKnight
ac0345 Tucker McKnight
ac0345 Tucker McKnight
ac0345 Tucker McKnight
ac0345 Tucker McKnight
ac0345 Tucker McKnight
ac0345 Tucker McKnight
ac0345 Tucker McKnight
ac0345 Tucker McKnight
ac0345 Tucker McKnight
ac0345 Tucker McKnight
ac0345 Tucker McKnight
ac0345 Tucker McKnight
ac0345 Tucker McKnight
ac0345 Tucker McKnight
ac0345 Tucker McKnight
ac0345 Tucker McKnight
ac0345 Tucker McKnight
ac0345 Tucker McKnight
ac0345 Tucker McKnight
ac0345 Tucker McKnight
ac0345 Tucker McKnight
ac0345 Tucker McKnight
ac0345 Tucker McKnight
ac0345 Tucker McKnight
(function () {
    var htmlElem = document.querySelector('html');
    window['setMode'] = function (mode) {
        localStorage.setItem('theme', mode);
        if (mode === 'dark') {
            htmlElem.setAttribute('data-bs-theme', mode);
        }
        else if (mode === 'light') {
            htmlElem.setAttribute('data-bs-theme', mode);
        }
        else if (mode === 'auto') {
            var preferred = matchMedia('(prefers-color-scheme: dark)').matches ? 'dark' : 'light';
            htmlElem.setAttribute('data-bs-theme', preferred);
        }
        window['currentTheme'] = mode;
    };
    window['currentTheme'] = localStorage.getItem("theme") || "auto";
    window['setMode'](window['currentTheme']);
    window['setCheckbox'] = function (mode, element) {
        if (mode === 'light') {
            element.innerHTML = "<i class=\"bi bi-brightness-high\"></i>";
        }
        if (mode === 'dark') {
            element.innerHTML = "<i class=\"bi bi-moon\"></i>";
        }
        if (mode === 'auto') {
            element.innerHTML = "<i class=\"bi bi-yin-yang\"></i>";
        }
        var link = document.getElementById("prism-theme");
        var preferred = matchMedia('(prefers-color-scheme: dark)').matches ? 'dark' : 'light';
        var stylesheet = window['currentTheme'] === 'dark' || (window['currentTheme'] === 'auto' && preferred === 'dark') ? "prism_dark.css" : "prism.css";
        link.href = link.href.split("/").slice(0, -1).concat(stylesheet).join("/");
    };
    window['toggleDarkMode'] = function (button) {
        var clickedOption = button.dataset.themePref;
        window['setMode'](clickedOption);
        window['setCheckbox'](clickedOption, document.getElementById('dark-mode-switch'));
    };
}());