{ "version": 3, "sources": ["../scheme.js"], "sourcesContent": ["\uFEFF// this code is first to detect and apply the color scheme as quickly as possible.\n\nconst matchedScheme = window.matchMedia(\"(prefers-color-scheme: dark)\");\nwindow.matchedScheme = matchedScheme;\n\nconst SCHEME_AUTO = \"AUTO\";\nconst SCHEME_DARK = \"DARK\";\nconst SCHEME_LIGHT = \"LIGHT\";\n\nwindow.SCHEME_AUTO = SCHEME_AUTO;\nwindow.SCHEME_DARK = SCHEME_DARK;\nwindow.SCHEME_LIGHT = SCHEME_LIGHT;\n\nlet KEY_SCHEME = \"SCHEME\";\nwindow.KEY_SCHEME = KEY_SCHEME;\n\nconst data = {};\nwindow.cb_hasLocalStorage = false;\n\nif (localStorage) {\n try {\n const x = 'detectStorageCapacity';\n localStorage.setItem(x, x);\n localStorage.removeItem(x);\n window.cb_hasLocalStorage = true;\n } catch (e) {\n window.cb_hasLocalStorage = false;\n }\n}\n\nfunction getSchemePreference() {\n if (window.cb_hasLocalStorage) {\n const pref = window.localStorage.getItem(window.KEY_SCHEME);\n if (pref == SCHEME_DARK || pref == SCHEME_LIGHT) {\n return pref;\n }\n }\n return SCHEME_AUTO;\n}\n\nfunction isAutoSchemeDark() {\n const isDark = matchedScheme.matches;\n return isDark;\n}\n\nfunction getEffectiveScheme() {\n const pref = getSchemePreference();\n if (pref == SCHEME_AUTO) {\n const isDark = matchedScheme.matches;\n return [true, (isDark ? SCHEME_DARK : SCHEME_LIGHT)];\n }\n return [false, pref];\n}\nwindow.getEffectiveScheme = getEffectiveScheme;\n\nfunction setSchemePreference(pref) {\n if (window.cb_hasLocalStorage) {\n window.localStorage.setItem(window.KEY_SCHEME, pref);\n }\n}\nwindow.setSchemePreference = setSchemePreference;\n\nfunction syncEffectiveScheme() {\n const effectiveScheme = getEffectiveScheme();\n\n if (effectiveScheme[1] == SCHEME_DARK) {\n document.body.classList.add('dark-scheme');\n document.body.classList.remove('light-scheme');\n } else {\n document.body.classList.remove('dark-scheme');\n document.body.classList.add('light-scheme');\n }\n}\nsyncEffectiveScheme();\nwindow.syncEffectiveScheme = syncEffectiveScheme;"], "mappings": "MAEA,GAAM,GAAgB,OAAO,WAAW,gCACxC,OAAO,cAAgB,EAEvB,GAAM,GAAc,OACd,EAAc,OACd,EAAe,QAErB,OAAO,YAAc,EACrB,OAAO,YAAc,EACrB,OAAO,aAAe,EAEtB,GAAI,GAAa,SACjB,OAAO,WAAa,EAGpB,OAAO,mBAAqB,GAE5B,GAAI,aACA,IACI,GAAM,GAAI,wBACV,aAAa,QAAQ,EAAG,GACxB,aAAa,WAAW,GACxB,OAAO,mBAAqB,SACvB,GACL,OAAO,mBAAqB,GAIpC,aACI,GAAI,OAAO,oBACP,GAAM,GAAO,OAAO,aAAa,QAAQ,OAAO,YAChD,GAAI,GAAQ,GAAe,GAAQ,EAC/B,MAAO,GAGf,MAAO,GAQX,aACI,GAAM,GAAO,IACb,GAAI,GAAQ,GACR,GAAM,GAAS,EAAc,QAC7B,MAAO,CAAC,GAAO,EAAS,EAAc,GAE1C,MAAO,CAAC,GAAO,GAEnB,OAAO,mBAAqB,EAE5B,WAA6B,GACzB,AAAI,OAAO,oBACP,OAAO,aAAa,QAAQ,OAAO,WAAY,GAGvD,OAAO,oBAAsB,EAE7B,aAGI,AAAI,AAFoB,IAEJ,IAAM,EACtB,UAAS,KAAK,UAAU,IAAI,eAC5B,SAAS,KAAK,UAAU,OAAO,iBAE/B,UAAS,KAAK,UAAU,OAAO,eAC/B,SAAS,KAAK,UAAU,IAAI,iBAGpC,IACA,OAAO,oBAAsB", "names": [] }