@@ -9,18 +9,31 @@ import { en } from '../assets/i18n/en';
99 providedIn : 'root' ,
1010} )
1111export class StreamI18nService {
12- constructor ( private translteService : TranslateService ) { }
12+ constructor ( private translateService : TranslateService ) { }
1313
1414 /**
1515 * Registers the translation to the [ngx-translate](https://github.com/ngx-translate/core) TranslateService.
1616 * @param lang The language key to register the translation to
1717 * @param overrides An object which keys are translation keys, and the values are custom translations
1818 */
1919 setTranslation ( lang = 'en' , overrides ?: { [ key : string ] : string } ) {
20- if ( ! this . translteService . defaultLang ) {
21- this . translteService . defaultLang = lang ;
20+ const translateService = this . translateService as TranslateService & {
21+ getFallbackLang ?: ( ) => string ;
22+ setDefaultLang ?: ( lang : string ) => void ;
23+ } ;
24+
25+ const defaultLang =
26+ 'getFallbackLang' in translateService
27+ ? translateService . getFallbackLang ?.( )
28+ : translateService . defaultLang ;
29+ if ( ! defaultLang ) {
30+ if ( typeof translateService . setDefaultLang !== 'undefined' ) {
31+ translateService . setDefaultLang ( lang ) ;
32+ } else {
33+ translateService . defaultLang = lang ;
34+ }
2235 }
23- this . translteService . setTranslation (
36+ this . translateService . setTranslation (
2437 lang ,
2538 { streamChat : { ...en . streamChat , ...overrides } } ,
2639 true
0 commit comments