UNPKG

@ngneat/transloco

Version:

The internationalization (i18n) library for Angular

155 lines 13 kB
/** * @fileoverview added by tsickle * Generated from: lib/transloco-testing.module.ts * @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc */ import { APP_INITIALIZER, Inject, Injectable, InjectionToken, NgModule } from '@angular/core'; import { TRANSLOCO_LOADER } from './transloco.loader'; import { of } from 'rxjs'; import { defaultProviders, TranslocoModule } from './transloco.module'; import { TRANSLOCO_CONFIG, translocoConfig } from './transloco.config'; import { TranslocoService } from './transloco.service'; /** * @record */ export function TranslocoTestingOptions() { } if (false) { /** @type {?|undefined} */ TranslocoTestingOptions.prototype.translocoConfig; /** @type {?|undefined} */ TranslocoTestingOptions.prototype.preloadLangs; /** @type {?|undefined} */ TranslocoTestingOptions.prototype.langs; } /** @type {?} */ const TRANSLOCO_TEST_LANGS = new InjectionToken('TRANSLOCO_TEST_LANGS - Available testing languages'); /** @type {?} */ const TRANSLOCO_TEST_OPTIONS = new InjectionToken('TRANSLOCO_TEST_OPTIONS - Testing options'); export class TestingLoader { /** * @param {?} langs */ constructor(langs) { this.langs = langs; } /** * @param {?} lang * @return {?} */ getTranslation(lang) { return of(this.langs[lang]); } } TestingLoader.decorators = [ { type: Injectable } ]; /** @nocollapse */ TestingLoader.ctorParameters = () => [ { type: undefined, decorators: [{ type: Inject, args: [TRANSLOCO_TEST_LANGS,] }] } ]; if (false) { /** * @type {?} * @private */ TestingLoader.prototype.langs; } /** * @param {?} service * @param {?=} langs * @param {?=} options * @return {?} */ export function initTranslocoService(service, langs = {}, options) { /** @type {?} */ const preloadAllLangs = (/** * @return {?} */ () => options.preloadLangs ? Promise.all(Object.keys(langs).map((/** * @param {?} lang * @return {?} */ lang => service.load(lang).toPromise()))) : Promise.resolve()); return preloadAllLangs; } export class TranslocoTestingModule { /** * @param {?} options * @return {?} */ static forRoot(options) { return { ngModule: TranslocoTestingModule, providers: [ { provide: TRANSLOCO_TEST_LANGS, useValue: options.langs }, { provide: TRANSLOCO_TEST_OPTIONS, useValue: options }, { provide: APP_INITIALIZER, useFactory: initTranslocoService, deps: [TranslocoService, TRANSLOCO_TEST_LANGS, TRANSLOCO_TEST_OPTIONS], multi: true }, { provide: TRANSLOCO_LOADER, useClass: TestingLoader }, defaultProviders, { provide: TRANSLOCO_CONFIG, useValue: translocoConfig(Object.assign({ prodMode: true, missingHandler: { logMissingKey: false } }, options.translocoConfig)) } ] }; } /** * @deprecated - use forRoot instead * @param {?} langs * @param {?=} config * @param {?=} options * @return {?} */ static withLangs(langs, config = {}, options = {}) { return { ngModule: TranslocoTestingModule, providers: [ { provide: TRANSLOCO_TEST_LANGS, useValue: langs }, { provide: TRANSLOCO_TEST_OPTIONS, useValue: options }, { provide: APP_INITIALIZER, useFactory: initTranslocoService, deps: [TranslocoService, TRANSLOCO_TEST_LANGS, TRANSLOCO_TEST_OPTIONS], multi: true }, { provide: TRANSLOCO_LOADER, useClass: TestingLoader }, defaultProviders, { provide: TRANSLOCO_CONFIG, useValue: translocoConfig(Object.assign({ prodMode: true, missingHandler: { logMissingKey: false } }, config)) } ] }; } } TranslocoTestingModule.decorators = [ { type: NgModule, args: [{ exports: [TranslocoModule] },] } ]; //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNsb2NvLXRlc3RpbmcubW9kdWxlLmpzIiwic291cmNlUm9vdCI6Im5nOi8vQG5nbmVhdC90cmFuc2xvY28vIiwic291cmNlcyI6WyJsaWIvdHJhbnNsb2NvLXRlc3RpbmcubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQUEsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLEVBQUUsVUFBVSxFQUFFLGNBQWMsRUFBdUIsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ25ILE9BQU8sRUFBRSxnQkFBZ0IsRUFBbUIsTUFBTSxvQkFBb0IsQ0FBQztBQUV2RSxPQUFPLEVBQWMsRUFBRSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ3RDLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxlQUFlLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUN2RSxPQUFPLEVBQUUsZ0JBQWdCLEVBQW1CLGVBQWUsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBQ3hGLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHFCQUFxQixDQUFDOzs7O0FBRXZELDZDQUlDOzs7SUFIQyxrREFBMkM7O0lBQzNDLCtDQUF1Qjs7SUFDdkIsd0NBQTZCOzs7TUFHekIsb0JBQW9CLEdBQUcsSUFBSSxjQUFjLENBQzdDLG9EQUFvRCxDQUNyRDs7TUFDSyxzQkFBc0IsR0FBRyxJQUFJLGNBQWMsQ0FBMEIsMENBQTBDLENBQUM7QUFHdEgsTUFBTSxPQUFPLGFBQWE7Ozs7SUFDeEIsWUFBa0QsS0FBMkI7UUFBM0IsVUFBSyxHQUFMLEtBQUssQ0FBc0I7SUFBRyxDQUFDOzs7OztJQUVqRixjQUFjLENBQUMsSUFBWTtRQUN6QixPQUFPLEVBQUUsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUM7SUFDOUIsQ0FBQzs7O1lBTkYsVUFBVTs7Ozs0Q0FFSSxNQUFNLFNBQUMsb0JBQW9COzs7Ozs7O0lBQTVCLDhCQUFpRTs7Ozs7Ozs7QUFPL0UsTUFBTSxVQUFVLG9CQUFvQixDQUNsQyxPQUF5QixFQUN6QixRQUE4QixFQUFFLEVBQ2hDLE9BQWdDOztVQUUxQixlQUFlOzs7SUFBRyxHQUFHLEVBQUUsQ0FDM0IsT0FBTyxDQUFDLFlBQVk7UUFDbEIsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxHQUFHOzs7O1FBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDLFNBQVMsRUFBRSxFQUFDLENBQUM7UUFDN0UsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxPQUFPLEVBQUUsQ0FBQTtJQUV2QixPQUFPLGVBQWUsQ0FBQztBQUN6QixDQUFDO0FBS0QsTUFBTSxPQUFPLHNCQUFzQjs7Ozs7SUFDakMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxPQUFnQztRQUM3QyxPQUFPO1lBQ0wsUUFBUSxFQUFFLHNCQUFzQjtZQUNoQyxTQUFTLEVBQUU7Z0JBQ1Q7b0JBQ0UsT0FBTyxFQUFFLG9CQUFvQjtvQkFDN0IsUUFBUSxFQUFFLE9BQU8sQ0FBQyxLQUFLO2lCQUN4QjtnQkFDRDtvQkFDRSxPQUFPLEVBQUUsc0JBQXNCO29CQUMvQixRQUFRLEVBQUUsT0FBTztpQkFDbEI7Z0JBQ0Q7b0JBQ0UsT0FBTyxFQUFFLGVBQWU7b0JBQ3hCLFVBQVUsRUFBRSxvQkFBb0I7b0JBQ2hDLElBQUksRUFBRSxDQUFDLGdCQUFnQixFQUFFLG9CQUFvQixFQUFFLHNCQUFzQixDQUFDO29CQUN0RSxLQUFLLEVBQUUsSUFBSTtpQkFDWjtnQkFDRDtvQkFDRSxPQUFPLEVBQUUsZ0JBQWdCO29CQUN6QixRQUFRLEVBQUUsYUFBYTtpQkFDeEI7Z0JBQ0QsZ0JBQWdCO2dCQUNoQjtvQkFDRSxPQUFPLEVBQUUsZ0JBQWdCO29CQUN6QixRQUFRLEVBQUUsZUFBZSxpQkFDdkIsUUFBUSxFQUFFLElBQUksRUFDZCxjQUFjLEVBQUUsRUFBRSxhQUFhLEVBQUUsS0FBSyxFQUFFLElBQ3JDLE9BQU8sQ0FBQyxlQUFlLEVBQzFCO2lCQUNIO2FBQ0Y7U0FDRixDQUFDO0lBQ0osQ0FBQzs7Ozs7Ozs7SUFHRCxNQUFNLENBQUMsU0FBUyxDQUNkLEtBQTJCLEVBQzNCLFNBQW1DLEVBQUUsRUFDckMsVUFBbUMsRUFBRTtRQUVyQyxPQUFPO1lBQ0wsUUFBUSxFQUFFLHNCQUFzQjtZQUNoQyxTQUFTLEVBQUU7Z0JBQ1Q7b0JBQ0UsT0FBTyxFQUFFLG9CQUFvQjtvQkFDN0IsUUFBUSxFQUFFLEtBQUs7aUJBQ2hCO2dCQUNEO29CQUNFLE9BQU8sRUFBRSxzQkFBc0I7b0JBQy9CLFFBQVEsRUFBRSxPQUFPO2lCQUNsQjtnQkFDRDtvQkFDRSxPQUFPLEVBQUUsZUFBZTtvQkFDeEIsVUFBVSxFQUFFLG9CQUFvQjtvQkFDaEMsSUFBSSxFQUFFLENBQUMsZ0JBQWdCLEVBQUUsb0JBQW9CLEVBQUUsc0JBQXNCLENBQUM7b0JBQ3RFLEtBQUssRUFBRSxJQUFJO2lCQUNaO2dCQUNEO29CQUNFLE9BQU8sRUFBRSxnQkFBZ0I7b0JBQ3pCLFFBQVEsRUFBRSxhQUFhO2lCQUN4QjtnQkFDRCxnQkFBZ0I7Z0JBQ2hCO29CQUNFLE9BQU8sRUFBRSxnQkFBZ0I7b0JBQ3pCLFFBQVEsRUFBRSxlQUFlLGlCQUN2QixRQUFRLEVBQUUsSUFBSSxFQUNkLGNBQWMsRUFBRSxFQUFFLGFBQWEsRUFBRSxLQUFLLEVBQUUsSUFDckMsTUFBTSxFQUNUO2lCQUNIO2FBQ0Y7U0FDRixDQUFDO0lBQ0osQ0FBQzs7O1lBN0VGLFFBQVEsU0FBQztnQkFDUixPQUFPLEVBQUUsQ0FBQyxlQUFlLENBQUM7YUFDM0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBUFBfSU5JVElBTElaRVIsIEluamVjdCwgSW5qZWN0YWJsZSwgSW5qZWN0aW9uVG9rZW4sIE1vZHVsZVdpdGhQcm92aWRlcnMsIE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBUUkFOU0xPQ09fTE9BREVSLCBUcmFuc2xvY29Mb2FkZXIgfSBmcm9tICcuL3RyYW5zbG9jby5sb2FkZXInO1xuaW1wb3J0IHsgSGFzaE1hcCwgVHJhbnNsYXRpb24gfSBmcm9tICcuL3R5cGVzJztcbmltcG9ydCB7IE9ic2VydmFibGUsIG9mIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBkZWZhdWx0UHJvdmlkZXJzLCBUcmFuc2xvY29Nb2R1bGUgfSBmcm9tICcuL3RyYW5zbG9jby5tb2R1bGUnO1xuaW1wb3J0IHsgVFJBTlNMT0NPX0NPTkZJRywgVHJhbnNsb2NvQ29uZmlnLCB0cmFuc2xvY29Db25maWcgfSBmcm9tICcuL3RyYW5zbG9jby5jb25maWcnO1xuaW1wb3J0IHsgVHJhbnNsb2NvU2VydmljZSB9IGZyb20gJy4vdHJhbnNsb2NvLnNlcnZpY2UnO1xuXG5leHBvcnQgaW50ZXJmYWNlIFRyYW5zbG9jb1Rlc3RpbmdPcHRpb25zIHtcbiAgdHJhbnNsb2NvQ29uZmlnPzogUGFydGlhbDxUcmFuc2xvY29Db25maWc+O1xuICBwcmVsb2FkTGFuZ3M/OiBib29sZWFuO1xuICBsYW5ncz86IEhhc2hNYXA8VHJhbnNsYXRpb24+O1xufVxuXG5jb25zdCBUUkFOU0xPQ09fVEVTVF9MQU5HUyA9IG5ldyBJbmplY3Rpb25Ub2tlbjxIYXNoTWFwPFRyYW5zbGF0aW9uPj4oXG4gICdUUkFOU0xPQ09fVEVTVF9MQU5HUyAtIEF2YWlsYWJsZSB0ZXN0aW5nIGxhbmd1YWdlcydcbik7XG5jb25zdCBUUkFOU0xPQ09fVEVTVF9PUFRJT05TID0gbmV3IEluamVjdGlvblRva2VuPFRyYW5zbG9jb1Rlc3RpbmdPcHRpb25zPignVFJBTlNMT0NPX1RFU1RfT1BUSU9OUyAtIFRlc3Rpbmcgb3B0aW9ucycpO1xuXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgVGVzdGluZ0xvYWRlciBpbXBsZW1lbnRzIFRyYW5zbG9jb0xvYWRlciB7XG4gIGNvbnN0cnVjdG9yKEBJbmplY3QoVFJBTlNMT0NPX1RFU1RfTEFOR1MpIHByaXZhdGUgbGFuZ3M6IEhhc2hNYXA8VHJhbnNsYXRpb24+KSB7fVxuXG4gIGdldFRyYW5zbGF0aW9uKGxhbmc6IHN0cmluZyk6IE9ic2VydmFibGU8VHJhbnNsYXRpb24+IHwgUHJvbWlzZTxUcmFuc2xhdGlvbj4ge1xuICAgIHJldHVybiBvZih0aGlzLmxhbmdzW2xhbmddKTtcbiAgfVxufVxuXG5leHBvcnQgZnVuY3Rpb24gaW5pdFRyYW5zbG9jb1NlcnZpY2UoXG4gIHNlcnZpY2U6IFRyYW5zbG9jb1NlcnZpY2UsXG4gIGxhbmdzOiBIYXNoTWFwPFRyYW5zbGF0aW9uPiA9IHt9LFxuICBvcHRpb25zOiBUcmFuc2xvY29UZXN0aW5nT3B0aW9uc1xuKSB7XG4gIGNvbnN0IHByZWxvYWRBbGxMYW5ncyA9ICgpID0+XG4gICAgb3B0aW9ucy5wcmVsb2FkTGFuZ3NcbiAgICAgID8gUHJvbWlzZS5hbGwoT2JqZWN0LmtleXMobGFuZ3MpLm1hcChsYW5nID0+IHNlcnZpY2UubG9hZChsYW5nKS50b1Byb21pc2UoKSkpXG4gICAgICA6IFByb21pc2UucmVzb2x2ZSgpO1xuXG4gIHJldHVybiBwcmVsb2FkQWxsTGFuZ3M7XG59XG5cbkBOZ01vZHVsZSh7XG4gIGV4cG9ydHM6IFtUcmFuc2xvY29Nb2R1bGVdXG59KVxuZXhwb3J0IGNsYXNzIFRyYW5zbG9jb1Rlc3RpbmdNb2R1bGUge1xuICBzdGF0aWMgZm9yUm9vdChvcHRpb25zOiBUcmFuc2xvY29UZXN0aW5nT3B0aW9ucykge1xuICAgIHJldHVybiB7XG4gICAgICBuZ01vZHVsZTogVHJhbnNsb2NvVGVzdGluZ01vZHVsZSxcbiAgICAgIHByb3ZpZGVyczogW1xuICAgICAgICB7XG4gICAgICAgICAgcHJvdmlkZTogVFJBTlNMT0NPX1RFU1RfTEFOR1MsXG4gICAgICAgICAgdXNlVmFsdWU6IG9wdGlvbnMubGFuZ3NcbiAgICAgICAgfSxcbiAgICAgICAge1xuICAgICAgICAgIHByb3ZpZGU6IFRSQU5TTE9DT19URVNUX09QVElPTlMsXG4gICAgICAgICAgdXNlVmFsdWU6IG9wdGlvbnNcbiAgICAgICAgfSxcbiAgICAgICAge1xuICAgICAgICAgIHByb3ZpZGU6IEFQUF9JTklUSUFMSVpFUixcbiAgICAgICAgICB1c2VGYWN0b3J5OiBpbml0VHJhbnNsb2NvU2VydmljZSxcbiAgICAgICAgICBkZXBzOiBbVHJhbnNsb2NvU2VydmljZSwgVFJBTlNMT0NPX1RFU1RfTEFOR1MsIFRSQU5TTE9DT19URVNUX09QVElPTlNdLFxuICAgICAgICAgIG11bHRpOiB0cnVlXG4gICAgICAgIH0sXG4gICAgICAgIHtcbiAgICAgICAgICBwcm92aWRlOiBUUkFOU0xPQ09fTE9BREVSLFxuICAgICAgICAgIHVzZUNsYXNzOiBUZXN0aW5nTG9hZGVyXG4gICAgICAgIH0sXG4gICAgICAgIGRlZmF1bHRQcm92aWRlcnMsXG4gICAgICAgIHtcbiAgICAgICAgICBwcm92aWRlOiBUUkFOU0xPQ09fQ09ORklHLFxuICAgICAgICAgIHVzZVZhbHVlOiB0cmFuc2xvY29Db25maWcoe1xuICAgICAgICAgICAgcHJvZE1vZGU6IHRydWUsXG4gICAgICAgICAgICBtaXNzaW5nSGFuZGxlcjogeyBsb2dNaXNzaW5nS2V5OiBmYWxzZSB9LFxuICAgICAgICAgICAgLi4ub3B0aW9ucy50cmFuc2xvY29Db25maWdcbiAgICAgICAgICB9KVxuICAgICAgICB9XG4gICAgICBdXG4gICAgfTtcbiAgfVxuXG4gIC8qKiBAZGVwcmVjYXRlZCAtIHVzZSBmb3JSb290IGluc3RlYWQgKi9cbiAgc3RhdGljIHdpdGhMYW5ncyhcbiAgICBsYW5nczogSGFzaE1hcDxUcmFuc2xhdGlvbj4sXG4gICAgY29uZmlnOiBQYXJ0aWFsPFRyYW5zbG9jb0NvbmZpZz4gPSB7fSxcbiAgICBvcHRpb25zOiBUcmFuc2xvY29UZXN0aW5nT3B0aW9ucyA9IHt9XG4gICk6IE1vZHVsZVdpdGhQcm92aWRlcnM8VHJhbnNsb2NvVGVzdGluZ01vZHVsZT4ge1xuICAgIHJldHVybiB7XG4gICAgICBuZ01vZHVsZTogVHJhbnNsb2NvVGVzdGluZ01vZHVsZSxcbiAgICAgIHByb3ZpZGVyczogW1xuICAgICAgICB7XG4gICAgICAgICAgcHJvdmlkZTogVFJBTlNMT0NPX1RFU1RfTEFOR1MsXG4gICAgICAgICAgdXNlVmFsdWU6IGxhbmdzXG4gICAgICAgIH0sXG4gICAgICAgIHtcbiAgICAgICAgICBwcm92aWRlOiBUUkFOU0xPQ09fVEVTVF9PUFRJT05TLFxuICAgICAgICAgIHVzZVZhbHVlOiBvcHRpb25zXG4gICAgICAgIH0sXG4gICAgICAgIHtcbiAgICAgICAgICBwcm92aWRlOiBBUFBfSU5JVElBTElaRVIsXG4gICAgICAgICAgdXNlRmFjdG9yeTogaW5pdFRyYW5zbG9jb1NlcnZpY2UsXG4gICAgICAgICAgZGVwczogW1RyYW5zbG9jb1NlcnZpY2UsIFRSQU5TTE9DT19URVNUX0xBTkdTLCBUUkFOU0xPQ09fVEVTVF9PUFRJT05TXSxcbiAgICAgICAgICBtdWx0aTogdHJ1ZVxuICAgICAgICB9LFxuICAgICAgICB7XG4gICAgICAgICAgcHJvdmlkZTogVFJBTlNMT0NPX0xPQURFUixcbiAgICAgICAgICB1c2VDbGFzczogVGVzdGluZ0xvYWRlclxuICAgICAgICB9LFxuICAgICAgICBkZWZhdWx0UHJvdmlkZXJzLFxuICAgICAgICB7XG4gICAgICAgICAgcHJvdmlkZTogVFJBTlNMT0NPX0NPTkZJRyxcbiAgICAgICAgICB1c2VWYWx1ZTogdHJhbnNsb2NvQ29uZmlnKHtcbiAgICAgICAgICAgIHByb2RNb2RlOiB0cnVlLFxuICAgICAgICAgICAgbWlzc2luZ0hhbmRsZXI6IHsgbG9nTWlzc2luZ0tleTogZmFsc2UgfSxcbiAgICAgICAgICAgIC4uLmNvbmZpZ1xuICAgICAgICAgIH0pXG4gICAgICAgIH1cbiAgICAgIF1cbiAgICB9O1xuICB9XG59XG4iXX0=