-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathchunk-A7YDWOAO.js
1 lines (1 loc) · 2.46 KB
/
chunk-A7YDWOAO.js
1
import{a as r}from"./chunk-GNGLHN23.js";import{C as h,K as l,cc as T,fa as S,l as n,la as m}from"./chunk-PPE7DTG5.js";var o=function(e){return e.LIGHT="light",e.DARK="dark",e.SYSTEM="system",e}(o||{}),i=function(e){return e.LIGHT="light",e.DARK="dark",e}(i||{}),a=function(e){return e[e.FIFTEEN_SECONDS=15e3]="FIFTEEN_SECONDS",e[e.THIRTY_SECONDS=3e4]="THIRTY_SECONDS",e[e.ONE_MINUTE=6e4]="ONE_MINUTE",e}(a||{});var C=(()=>{class e{constructor(t){this.document=t,this.DEFAULT_SETTINGS={theme:o.SYSTEM,colorScheme:i.DARK,refreshInterval:a.THIRTY_SECONDS};let s=this.getTheme(),c=this.getColorScheme(),g=this.getRefreshInterval();this.applyTheme(s),this.settingsSubject$=new n({theme:s,colorScheme:c,refreshInterval:g}),this.settings$=this.settingsSubject$.asObservable(),this.resize$=h(window,"resize").pipe(l(500)),window.matchMedia("(prefers-color-scheme: dark)").addEventListener("change",({matches:E})=>{this.getTheme()===o.SYSTEM&&(this.applyTheme(E?o.DARK:o.LIGHT),this.settingsSubject$.next({theme:this.getTheme(),colorScheme:this.getColorScheme(),refreshInterval:this.getRefreshInterval()}))})}setTheme(t){t&&Object.values(o).includes(t)&&localStorage&&(localStorage.setItem(r.settings.THEME,t),this.applyTheme(t),this.settingsSubject$.next({theme:t,colorScheme:this.getColorScheme(),refreshInterval:this.getRefreshInterval()}))}setRefreshInterval(t){t&&!isNaN(Number(t))&&t in a&&localStorage&&(localStorage.setItem(r.settings.REFRESH_INTERVAL,String(t)),this.settingsSubject$.next({refreshInterval:t,theme:this.getTheme(),colorScheme:this.getColorScheme()}))}setColorScheme(t){t&&Object.values(i).includes(t)&&localStorage&&localStorage.setItem(r.settings.COLOR_SCHEME,t)}getTheme(){return localStorage&&(localStorage.getItem(r.settings.THEME)||this.DEFAULT_SETTINGS.theme)}getColorScheme(){return localStorage&&(localStorage.getItem(r.settings.COLOR_SCHEME)||this.DEFAULT_SETTINGS.colorScheme)}getRefreshInterval(){return localStorage&&(Number(localStorage.getItem(r.settings.REFRESH_INTERVAL))||this.DEFAULT_SETTINGS.refreshInterval)}applyTheme(t){let s=this.document.documentElement.classList,c=!1;(t===o.SYSTEM&&window.matchMedia("(prefers-color-scheme: dark)").matches||t===o.DARK)&&(c=!0),c?(!s.contains("dark")&&s.add("dark"),this.setColorScheme(i.DARK)):(s.contains("dark")&&s.remove("dark"),this.setColorScheme(i.LIGHT))}static{this.\u0275fac=function(s){return new(s||e)(m(T))}}static{this.\u0275prov=S({token:e,factory:e.\u0275fac,providedIn:"root"})}}return e})();export{o as a,i as b,a as c,C as d};