1const{Core,Store,Events}=Global,STORE_KEY="dark-mode",DARK_MODE_CN="glob--theme-dark-mode";customElements.define("dark-mode-switch",class extends Core{propTypes={"main-color-scheme-cn":String,"dark-color-scheme-cn":String};elements={$:["switch"]};MAIN_COLOR_SCHEME_CN=this.prop("main-color-scheme-cn");DARK_COLOR_SCHEME_CN=this.prop("dark-color-scheme-cn");render(){this.sub(Events.DARK_MODE_CHANGE,this._syncSwitchers),this.$("switch",{change:this._handleChange}),this._init()}_init(){(this.darkModeState===null&&this.isOSDarkMode||this.darkModeState)&&(this.$("switch").checked=!0,this._toggleDarkMode())}_handleChange({target}){this._toggleDarkMode(target.checked),this.pub(Events.DARK_MODE_CHANGE,target.checked)}_toggleDarkMode(state=!0){requestAnimationFrame(()=>{setTimeout(()=>{this._toggleClassNames(state),Store.set(STORE_KEY,state?1:0)},0)})}_toggleClassNames(state){document.body.classList.replace(state?this.MAIN_COLOR_SCHEME_CN:this.DARK_COLOR_SCHEME_CN,state?this.DARK_COLOR_SCHEME_CN:this.MAIN_COLOR_SCHEME_CN),document.body.classList.toggle(DARK_MODE_CN,state)}_syncSwitchers(state){this.$("switch").checked!==state&&(this.$("switch").checked=state)}get darkModeState(){return Store.get(STORE_KEY)}get isOSDarkMode(){return window.matchMedia("(prefers-color-scheme: dark)").matches}}); 2//# sourceMappingURL=/cdn/shop/t/71/assets/dark-mode-switch.js.map?v=67063491050861274651790017446
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.