@duoduo-oba/ng-devui
Version:
DevUI components based on Angular
63 lines • 4.46 kB
JavaScript
/**
* @fileoverview added by tsickle
* Generated from: i18n.service.ts
* @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
*/
import { Injectable } from '@angular/core';
import { Subject } from 'rxjs';
import zhCN from './zh-cn';
import enUS from './en-us';
import * as i0 from "@angular/core";
export class I18nService {
constructor() {
this.i18nConfig = {
'zh-cn': zhCN,
'en-us': enUS
};
this.i18nSubject = new Subject();
}
/**
* @param {?=} lang
* @return {?}
*/
toggleLang(lang = 'zh-cn') {
localStorage.setItem('lang', lang);
this.i18nSubject.next(this.getI18nText());
}
/**
* @return {?}
*/
getI18nText() {
/** @type {?} */
const lang = localStorage.getItem('lang') ? localStorage.getItem('lang').toLocaleLowerCase() : 'zh-cn';
if (this.i18nConfig.hasOwnProperty(lang)) {
return this.i18nConfig[lang];
}
else {
return zhCN;
}
}
/**
* @return {?}
*/
langChange() {
return this.i18nSubject.asObservable();
}
}
I18nService.decorators = [
{ type: Injectable, args: [{ providedIn: 'root' },] }
];
/** @nocollapse */ I18nService.ngInjectableDef = i0.ɵɵdefineInjectable({ factory: function I18nService_Factory() { return new I18nService(); }, token: I18nService, providedIn: "root" });
if (false) {
/**
* @type {?}
* @private
*/
I18nService.prototype.i18nConfig;
/**
* @type {?}
* @private
*/
I18nService.prototype.i18nSubject;
}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaTE4bi5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6Im5nOi8vbmctZGV2dWkvaTE4bi8iLCJzb3VyY2VzIjpbImkxOG4uc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0MsT0FBTyxFQUFjLE9BQU8sRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUUzQyxPQUFPLElBQUksTUFBTSxTQUFTLENBQUM7QUFDM0IsT0FBTyxJQUFJLE1BQU0sU0FBUyxDQUFDOztBQUszQixNQUFNLE9BQU8sV0FBVztJQUh4QjtRQUlVLGVBQVUsR0FBRztZQUNuQixPQUFPLEVBQUUsSUFBSTtZQUNiLE9BQU8sRUFBRSxJQUFJO1NBQ2QsQ0FBQztRQUNNLGdCQUFXLEdBQUcsSUFBSSxPQUFPLEVBQWlCLENBQUM7S0FrQnBEOzs7OztJQWpCQyxVQUFVLENBQUMsSUFBSSxHQUFHLE9BQU87UUFDdkIsWUFBWSxDQUFDLE9BQU8sQ0FBQyxNQUFNLEVBQUUsSUFBSSxDQUFDLENBQUM7UUFDbkMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFdBQVcsRUFBRSxDQUFDLENBQUM7SUFDNUMsQ0FBQzs7OztJQUVELFdBQVc7O2NBQ0gsSUFBSSxHQUFHLFlBQVksQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDLFlBQVksQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLENBQUMsaUJBQWlCLEVBQUUsQ0FBQyxDQUFDLENBQUMsT0FBTztRQUN0RyxJQUFJLElBQUksQ0FBQyxVQUFVLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQyxFQUFFO1lBQ3hDLE9BQU8sSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsQ0FBQztTQUM5QjthQUFNO1lBQ0wsT0FBTyxJQUFJLENBQUM7U0FDYjtJQUNILENBQUM7Ozs7SUFFRCxVQUFVO1FBQ1IsT0FBTyxJQUFJLENBQUMsV0FBVyxDQUFDLFlBQVksRUFBRSxDQUFDO0lBQ3pDLENBQUM7OztZQXpCRixVQUFVLFNBQ1QsRUFBQyxVQUFVLEVBQUUsTUFBTSxFQUFDOzs7Ozs7OztJQUdwQixpQ0FHRTs7Ozs7SUFDRixrQ0FBbUQiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IE9ic2VydmFibGUsIFN1YmplY3QgfSBmcm9tICdyeGpzJztcclxuaW1wb3J0IHsgSTE4bkludGVyZmFjZSB9IGZyb20gJy4vaTE4bi5tb2RlbCc7XHJcbmltcG9ydCB6aENOIGZyb20gJy4vemgtY24nO1xyXG5pbXBvcnQgZW5VUyBmcm9tICcuL2VuLXVzJztcclxuXHJcbkBJbmplY3RhYmxlKFxyXG4gIHtwcm92aWRlZEluOiAncm9vdCd9XHJcbilcclxuZXhwb3J0IGNsYXNzIEkxOG5TZXJ2aWNlIHtcclxuICBwcml2YXRlIGkxOG5Db25maWcgPSB7XHJcbiAgICAnemgtY24nOiB6aENOLFxyXG4gICAgJ2VuLXVzJzogZW5VU1xyXG4gIH07XHJcbiAgcHJpdmF0ZSBpMThuU3ViamVjdCA9IG5ldyBTdWJqZWN0PEkxOG5JbnRlcmZhY2U+KCk7XHJcbiAgdG9nZ2xlTGFuZyhsYW5nID0gJ3poLWNuJykge1xyXG4gICAgbG9jYWxTdG9yYWdlLnNldEl0ZW0oJ2xhbmcnLCBsYW5nKTtcclxuICAgIHRoaXMuaTE4blN1YmplY3QubmV4dCh0aGlzLmdldEkxOG5UZXh0KCkpO1xyXG4gIH1cclxuXHJcbiAgZ2V0STE4blRleHQoKTogSTE4bkludGVyZmFjZSB7XHJcbiAgICBjb25zdCBsYW5nID0gbG9jYWxTdG9yYWdlLmdldEl0ZW0oJ2xhbmcnKSA/IGxvY2FsU3RvcmFnZS5nZXRJdGVtKCdsYW5nJykudG9Mb2NhbGVMb3dlckNhc2UoKSA6ICd6aC1jbic7XHJcbiAgICBpZiAodGhpcy5pMThuQ29uZmlnLmhhc093blByb3BlcnR5KGxhbmcpKSB7XHJcbiAgICAgIHJldHVybiB0aGlzLmkxOG5Db25maWdbbGFuZ107XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICByZXR1cm4gemhDTjtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIGxhbmdDaGFuZ2UoKTogT2JzZXJ2YWJsZTxJMThuSW50ZXJmYWNlPiB7XHJcbiAgICByZXR1cm4gdGhpcy5pMThuU3ViamVjdC5hc09ic2VydmFibGUoKTtcclxuICB9XHJcbn1cclxuIl19