diff --git a/package-lock.json b/package-lock.json index 8e9242e1b..be820fabf 100644 --- a/package-lock.json +++ b/package-lock.json @@ -685,11 +685,6 @@ "webpack-sources": "1.1.0" } }, - "@ngx-pwa/local-storage": { - "version": "6.0.0-rc.0", - "resolved": "https://registry.npmjs.org/@ngx-pwa/local-storage/-/local-storage-6.0.0-rc.0.tgz", - "integrity": "sha512-ks+5nSjSbErv8u22jsu4zKUDcQuXTum9k5qVptq2+mytzxXfNZLMNz3NT91Ww72axgsoDKBNEYNaLuY4ST5pLg==" - }, "@ngx-rocket/ascii-logo": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/@ngx-rocket/ascii-logo/-/ascii-logo-1.1.0.tgz", diff --git a/package.json b/package.json index c9a3bbb7a..c7202f271 100644 --- a/package.json +++ b/package.json @@ -37,7 +37,6 @@ "@angular/platform-browser-dynamic": "^6.0.6", "@angular/router": "^6.0.6", "@angular/service-worker": "^6.0.6", - "@ngx-pwa/local-storage": "^6.0.0-rc.0", "@ngx-translate/core": "^10.0.2", "@swimlane/ngx-charts": "^8.1.0", "angular-archwizard": "^3.0.0", diff --git a/src/app/core/shell/toolbar/theme-picker/theme-picker.component.ts b/src/app/core/shell/toolbar/theme-picker/theme-picker.component.ts index 06d597bb6..b3ff56013 100644 --- a/src/app/core/shell/toolbar/theme-picker/theme-picker.component.ts +++ b/src/app/core/shell/toolbar/theme-picker/theme-picker.component.ts @@ -55,9 +55,10 @@ export class ThemePickerComponent implements OnInit { constructor(public themeManagerService: ThemeManagerService, private themeStorageService: ThemeStorageService) { - this.themeStorageService.getTheme().subscribe((theme) => { + const theme = this.themeStorageService.getTheme(); + if (theme) { this.installTheme(theme); - }); + } } ngOnInit() { } diff --git a/src/app/core/shell/toolbar/theme-picker/theme-storage.service.ts b/src/app/core/shell/toolbar/theme-picker/theme-storage.service.ts index 3ff8bab1a..08fe1c605 100644 --- a/src/app/core/shell/toolbar/theme-picker/theme-storage.service.ts +++ b/src/app/core/shell/toolbar/theme-picker/theme-storage.service.ts @@ -1,8 +1,5 @@ import {Injectable, EventEmitter} from '@angular/core'; -import { LocalStorage } from '@ngx-pwa/local-storage'; -import { Observable } from 'rxjs'; - import { Theme } from './theme.model'; @Injectable({ @@ -13,21 +10,21 @@ export class ThemeStorageService { private themeStorageKey = 'mifosXTheme'; onThemeUpdate: EventEmitter; - constructor(private localStorage: LocalStorage) { + constructor() { this.onThemeUpdate = new EventEmitter(); } storeTheme(mifosXTheme: Theme) { - this.localStorage.setItem(this.themeStorageKey, mifosXTheme) - .subscribe(() => this.onThemeUpdate.emit(mifosXTheme)); + localStorage.setItem(this.themeStorageKey, JSON.stringify(mifosXTheme)); + this.onThemeUpdate.emit(mifosXTheme); } - getTheme(): Observable { - return this.localStorage.getItem(this.themeStorageKey); + getTheme(): Theme { + return JSON.parse(localStorage.getItem(this.themeStorageKey)); } clearTheme() { - this.localStorage.removeItemSubscribe(this.themeStorageKey); + localStorage.removeItem(this.themeStorageKey); } }