import {Component, HostListener} from '@angular/core'; import {AuthService} from './services/auth.service'; import {I18nService} from './services/i18n.service'; import {Router} from '@angular/router'; import {DomSanitizer} from '@angular/platform-browser'; import {MatIconRegistry} from '@angular/material/icon'; import {DateAdapter, MAT_DATE_FORMATS, MAT_DATE_LOCALE} from '@angular/material/core'; @Component({ selector: 'app-root', templateUrl: './app.component.html', styleUrls: ['./app.component.scss'] }) export class AppComponent { opened = true; title = 'we.bstly'; currentLocale: String; locales; auth; constructor(private i18n: I18nService, private authService: AuthService, private router: Router, private iconRegistry: MatIconRegistry, private sanitizer: DomSanitizer, private _adapter: DateAdapter) { this.currentLocale = this.i18n.getLocale(); this.locales = this.i18n.getLocales(); this.authService.auth.subscribe(data => { this.auth = data; }) this._adapter.setLocale(this.currentLocale); iconRegistry.addSvgIcon('logo', sanitizer.bypassSecurityTrustResourceUrl('assets/icons/logo.svg')); } ngOnInit() { const width = window.innerWidth || document.documentElement.clientWidth || document.body.clientWidth; if(width < 768) { this.opened = false; } else { this.opened = true; } } setLocale(locale) { localStorage.setItem("bstly.locale", locale); window.location.reload(); } logout() { this.authService.logout().subscribe(data => { this.router.navigate([""]).then(() => { window.location.reload(); }); }) } isBiggerScreen() { const width = window.innerWidth || document.documentElement.clientWidth || document.body.clientWidth; if(width < 768) { return false; } else { return true; } } @HostListener('window:resize', ['$event']) onResize(event) { if(event.target.innerWidth < 768) { this.opened = false; } else { this.opened = true; } } }