UNPKG

@cause-911/core

Version:

Run `npm install @cause-911/core --save` to add this library to your project

71 lines 6.43 kB
/** * @fileoverview added by tsickle * @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc */ import { Injectable, Inject } from '@angular/core'; import { TranslateService } from '@ngx-translate/core'; import { CAUSE_CORE_MODULE_OPTIONS, CoreModuleOptions } from './shared/models/core-module-options'; import { Configuration } from './shared/classes/configuration'; import * as i0 from "@angular/core"; import * as i1 from "./shared/models/core-module-options"; import * as i2 from "@ngx-translate/core"; var CoreService = /** @class */ (function () { function CoreService(options, translateService) { this.translateService = translateService; this.config = new Configuration(options); this.config.locale = localStorage.getItem('locale') || this.config.locale || 'fr'; this.config.languages = this.config.languages || ['fr', 'en']; this.translateService.addLangs(this.config.languages); this.translateService.setDefaultLang(this.config.locale); this.translateService.use(this.config.locale); } /** * @return {?} */ CoreService.prototype.getConfig = /** * @return {?} */ function () { return this.config; }; /** * @return {?} */ CoreService.prototype.toggleLanguage = /** * @return {?} */ function () { if (this.config.languages.length < 2) { throw new Error('You need to configure at least two languages.'); } else if (this.config.languages.length === 2) { localStorage.setItem('locale', this.config.locale === 'fr' ? 'en' : 'fr'); } }; CoreService.decorators = [ { type: Injectable, args: [{ providedIn: 'root' },] } ]; /** @nocollapse */ CoreService.ctorParameters = function () { return [ { type: CoreModuleOptions, decorators: [{ type: Inject, args: [CAUSE_CORE_MODULE_OPTIONS,] }] }, { type: TranslateService } ]; }; /** @nocollapse */ CoreService.ngInjectableDef = i0.ɵɵdefineInjectable({ factory: function CoreService_Factory() { return new CoreService(i0.ɵɵinject(i1.CAUSE_CORE_MODULE_OPTIONS), i0.ɵɵinject(i2.TranslateService)); }, token: CoreService, providedIn: "root" }); return CoreService; }()); export { CoreService }; if (false) { /** * @type {?} * @private */ CoreService.prototype.config; /** * @type {?} * @private */ CoreService.prototype.translateService; } //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29yZS5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6Im5nOi8vQGNhdXNlLTkxMS9jb3JlLyIsInNvdXJjZXMiOlsibGliL2NvcmUuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7O0FBQUEsT0FBTyxFQUFDLFVBQVUsRUFBRSxNQUFNLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDakQsT0FBTyxFQUFDLGdCQUFnQixFQUFDLE1BQU0scUJBQXFCLENBQUM7QUFDckQsT0FBTyxFQUFDLHlCQUF5QixFQUFFLGlCQUFpQixFQUFDLE1BQU0scUNBQXFDLENBQUM7QUFDakcsT0FBTyxFQUFDLGFBQWEsRUFBQyxNQUFNLGdDQUFnQyxDQUFDOzs7O0FBRTdEO0lBTUkscUJBQ3VDLE9BQTBCLEVBQ3JELGdCQUFrQztRQUFsQyxxQkFBZ0IsR0FBaEIsZ0JBQWdCLENBQWtCO1FBRTFDLElBQUksQ0FBQyxNQUFNLEdBQUcsSUFBSSxhQUFhLENBQUMsT0FBTyxDQUFDLENBQUM7UUFDekMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxNQUFNLEdBQUcsWUFBWSxDQUFDLE9BQU8sQ0FBQyxRQUFRLENBQUMsSUFBSSxJQUFJLENBQUMsTUFBTSxDQUFDLE1BQU0sSUFBSSxJQUFJLENBQUM7UUFDbEYsSUFBSSxDQUFDLE1BQU0sQ0FBQyxTQUFTLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxTQUFTLElBQUksQ0FBQyxJQUFJLEVBQUUsSUFBSSxDQUFDLENBQUM7UUFDOUQsSUFBSSxDQUFDLGdCQUFnQixDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLFNBQVMsQ0FBQyxDQUFDO1FBQ3RELElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxjQUFjLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUN6RCxJQUFJLENBQUMsZ0JBQWdCLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLENBQUM7SUFDbEQsQ0FBQzs7OztJQUVNLCtCQUFTOzs7SUFBaEI7UUFDSSxPQUFPLElBQUksQ0FBQyxNQUFNLENBQUM7SUFDdkIsQ0FBQzs7OztJQUVNLG9DQUFjOzs7SUFBckI7UUFDSSxJQUFJLElBQUksQ0FBQyxNQUFNLENBQUMsU0FBUyxDQUFDLE1BQU0sR0FBRyxDQUFDLEVBQUU7WUFDbEMsTUFBTSxJQUFJLEtBQUssQ0FBQywrQ0FBK0MsQ0FBQyxDQUFDO1NBQ3BFO2FBQU0sSUFBSSxJQUFJLENBQUMsTUFBTSxDQUFDLFNBQVMsQ0FBQyxNQUFNLEtBQUssQ0FBQyxFQUFFO1lBQzNDLFlBQVksQ0FBQyxPQUFPLENBQUMsUUFBUSxFQUFFLElBQUksQ0FBQyxNQUFNLENBQUMsTUFBTSxLQUFLLElBQUksQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQztTQUM3RTtJQUNMLENBQUM7O2dCQTVCSixVQUFVLFNBQUM7b0JBQ1IsVUFBVSxFQUFFLE1BQU07aUJBQ3JCOzs7O2dCQUxrQyxpQkFBaUIsdUJBVTNDLE1BQU0sU0FBQyx5QkFBeUI7Z0JBWGpDLGdCQUFnQjs7O3NCQUR4QjtDQWtDQyxBQTdCRCxJQTZCQztTQTFCWSxXQUFXOzs7Ozs7SUFDcEIsNkJBQThCOzs7OztJQUkxQix1Q0FBMEMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0luamVjdGFibGUsIEluamVjdH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1RyYW5zbGF0ZVNlcnZpY2V9IGZyb20gJ0BuZ3gtdHJhbnNsYXRlL2NvcmUnO1xuaW1wb3J0IHtDQVVTRV9DT1JFX01PRFVMRV9PUFRJT05TLCBDb3JlTW9kdWxlT3B0aW9uc30gZnJvbSAnLi9zaGFyZWQvbW9kZWxzL2NvcmUtbW9kdWxlLW9wdGlvbnMnO1xuaW1wb3J0IHtDb25maWd1cmF0aW9ufSBmcm9tICcuL3NoYXJlZC9jbGFzc2VzL2NvbmZpZ3VyYXRpb24nO1xuXG5ASW5qZWN0YWJsZSh7XG4gICAgcHJvdmlkZWRJbjogJ3Jvb3QnXG59KVxuZXhwb3J0IGNsYXNzIENvcmVTZXJ2aWNlIHtcbiAgICBwcml2YXRlIGNvbmZpZzogQ29uZmlndXJhdGlvbjtcblxuICAgIGNvbnN0cnVjdG9yKFxuICAgICAgICBASW5qZWN0KENBVVNFX0NPUkVfTU9EVUxFX09QVElPTlMpIG9wdGlvbnM6IENvcmVNb2R1bGVPcHRpb25zLFxuICAgICAgICBwcml2YXRlIHRyYW5zbGF0ZVNlcnZpY2U6IFRyYW5zbGF0ZVNlcnZpY2VcbiAgICApIHtcbiAgICAgICAgdGhpcy5jb25maWcgPSBuZXcgQ29uZmlndXJhdGlvbihvcHRpb25zKTtcbiAgICAgICAgdGhpcy5jb25maWcubG9jYWxlID0gbG9jYWxTdG9yYWdlLmdldEl0ZW0oJ2xvY2FsZScpIHx8IHRoaXMuY29uZmlnLmxvY2FsZSB8fCAnZnInO1xuICAgICAgICB0aGlzLmNvbmZpZy5sYW5ndWFnZXMgPSB0aGlzLmNvbmZpZy5sYW5ndWFnZXMgfHwgWydmcicsICdlbiddO1xuICAgICAgICB0aGlzLnRyYW5zbGF0ZVNlcnZpY2UuYWRkTGFuZ3ModGhpcy5jb25maWcubGFuZ3VhZ2VzKTtcbiAgICAgICAgdGhpcy50cmFuc2xhdGVTZXJ2aWNlLnNldERlZmF1bHRMYW5nKHRoaXMuY29uZmlnLmxvY2FsZSk7XG4gICAgICAgIHRoaXMudHJhbnNsYXRlU2VydmljZS51c2UodGhpcy5jb25maWcubG9jYWxlKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgZ2V0Q29uZmlnKCk6IENvbmZpZ3VyYXRpb24ge1xuICAgICAgICByZXR1cm4gdGhpcy5jb25maWc7XG4gICAgfVxuXG4gICAgcHVibGljIHRvZ2dsZUxhbmd1YWdlKCk6IHZvaWQge1xuICAgICAgICBpZiAodGhpcy5jb25maWcubGFuZ3VhZ2VzLmxlbmd0aCA8IDIpIHtcbiAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcignWW91IG5lZWQgdG8gY29uZmlndXJlIGF0IGxlYXN0IHR3byBsYW5ndWFnZXMuJyk7XG4gICAgICAgIH0gZWxzZSBpZiAodGhpcy5jb25maWcubGFuZ3VhZ2VzLmxlbmd0aCA9PT0gMikge1xuICAgICAgICAgICAgbG9jYWxTdG9yYWdlLnNldEl0ZW0oJ2xvY2FsZScsIHRoaXMuY29uZmlnLmxvY2FsZSA9PT0gJ2ZyJyA/ICdlbicgOiAnZnInKTtcbiAgICAgICAgfVxuICAgIH1cbn1cbiJdfQ==