refactor: add selected language signal
This commit is contained in:
@@ -1,4 +1,4 @@
|
||||
import { inject, Injectable } from '@angular/core';
|
||||
import { inject, Injectable, signal } from '@angular/core';
|
||||
import { STRINGS_INJECTOR } from '../app.config';
|
||||
import { Language } from '../types/Language.type';
|
||||
|
||||
@@ -8,9 +8,12 @@ import { Language } from '../types/Language.type';
|
||||
export class LanguageManager {
|
||||
private readonly stringsDictionary = inject(STRINGS_INJECTOR);
|
||||
|
||||
private readonly selectedLanguage = signal<Language>('en');
|
||||
readonly selectedLanguage$ = this.selectedLanguage.asReadonly();
|
||||
strings = this.stringsDictionary.en;
|
||||
|
||||
setLanguage(language: Language) {
|
||||
this.selectedLanguage.set(language);
|
||||
this.strings = this.stringsDictionary[language];
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user