@jsverse/transloco
Version:
The internationalization (i18n) library for Angular
26 lines • 3.66 kB
JavaScript
import { Inject, Injectable, InjectionToken } from '@angular/core';
import { TRANSLOCO_CONFIG } from './transloco.config';
import * as i0 from "@angular/core";
export const TRANSLOCO_FALLBACK_STRATEGY = new InjectionToken('TRANSLOCO_FALLBACK_STRATEGY');
export class DefaultFallbackStrategy {
userConfig;
constructor(userConfig) {
this.userConfig = userConfig;
}
getNextLangs() {
const fallbackLang = this.userConfig.fallbackLang;
if (!fallbackLang) {
throw new Error('When using the default fallback, a fallback language must be provided in the config!');
}
return Array.isArray(fallbackLang) ? fallbackLang : [fallbackLang];
}
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.4", ngImport: i0, type: DefaultFallbackStrategy, deps: [{ token: TRANSLOCO_CONFIG }], target: i0.ɵɵFactoryTarget.Injectable });
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.0.4", ngImport: i0, type: DefaultFallbackStrategy });
}
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.4", ngImport: i0, type: DefaultFallbackStrategy, decorators: [{
type: Injectable
}], ctorParameters: () => [{ type: undefined, decorators: [{
type: Inject,
args: [TRANSLOCO_CONFIG]
}] }] });
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNsb2NvLWZhbGxiYWNrLXN0cmF0ZWd5LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vbGlicy90cmFuc2xvY28vc3JjL2xpYi90cmFuc2xvY28tZmFsbGJhY2stc3RyYXRlZ3kudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUUsY0FBYyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRW5FLE9BQU8sRUFBRSxnQkFBZ0IsRUFBbUIsTUFBTSxvQkFBb0IsQ0FBQzs7QUFFdkUsTUFBTSxDQUFDLE1BQU0sMkJBQTJCLEdBQ3RDLElBQUksY0FBYyxDQUE0Qiw2QkFBNkIsQ0FBQyxDQUFDO0FBTy9FLE1BQU0sT0FBTyx1QkFBdUI7SUFDWTtJQUE5QyxZQUE4QyxVQUEyQjtRQUEzQixlQUFVLEdBQVYsVUFBVSxDQUFpQjtJQUFHLENBQUM7SUFFN0UsWUFBWTtRQUNWLE1BQU0sWUFBWSxHQUFHLElBQUksQ0FBQyxVQUFVLENBQUMsWUFBWSxDQUFDO1FBQ2xELElBQUksQ0FBQyxZQUFZLEVBQUUsQ0FBQztZQUNsQixNQUFNLElBQUksS0FBSyxDQUNiLHNGQUFzRixDQUN2RixDQUFDO1FBQ0osQ0FBQztRQUVELE9BQU8sS0FBSyxDQUFDLE9BQU8sQ0FBQyxZQUFZLENBQUMsQ0FBQyxDQUFDLENBQUMsWUFBWSxDQUFDLENBQUMsQ0FBQyxDQUFDLFlBQVksQ0FBQyxDQUFDO0lBQ3JFLENBQUM7dUdBWlUsdUJBQXVCLGtCQUNkLGdCQUFnQjsyR0FEekIsdUJBQXVCOzsyRkFBdkIsdUJBQXVCO2tCQURuQyxVQUFVOzswQkFFSSxNQUFNOzJCQUFDLGdCQUFnQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdCwgSW5qZWN0YWJsZSwgSW5qZWN0aW9uVG9rZW4gfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuaW1wb3J0IHsgVFJBTlNMT0NPX0NPTkZJRywgVHJhbnNsb2NvQ29uZmlnIH0gZnJvbSAnLi90cmFuc2xvY28uY29uZmlnJztcblxuZXhwb3J0IGNvbnN0IFRSQU5TTE9DT19GQUxMQkFDS19TVFJBVEVHWSA9XG4gIG5ldyBJbmplY3Rpb25Ub2tlbjxUcmFuc2xvY29GYWxsYmFja1N0cmF0ZWd5PignVFJBTlNMT0NPX0ZBTExCQUNLX1NUUkFURUdZJyk7XG5cbmV4cG9ydCBpbnRlcmZhY2UgVHJhbnNsb2NvRmFsbGJhY2tTdHJhdGVneSB7XG4gIGdldE5leHRMYW5ncyhmYWlsZWRMYW5nOiBzdHJpbmcpOiBzdHJpbmdbXTtcbn1cblxuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIERlZmF1bHRGYWxsYmFja1N0cmF0ZWd5IGltcGxlbWVudHMgVHJhbnNsb2NvRmFsbGJhY2tTdHJhdGVneSB7XG4gIGNvbnN0cnVjdG9yKEBJbmplY3QoVFJBTlNMT0NPX0NPTkZJRykgcHJpdmF0ZSB1c2VyQ29uZmlnOiBUcmFuc2xvY29Db25maWcpIHt9XG5cbiAgZ2V0TmV4dExhbmdzKCkge1xuICAgIGNvbnN0IGZhbGxiYWNrTGFuZyA9IHRoaXMudXNlckNvbmZpZy5mYWxsYmFja0xhbmc7XG4gICAgaWYgKCFmYWxsYmFja0xhbmcpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcihcbiAgICAgICAgJ1doZW4gdXNpbmcgdGhlIGRlZmF1bHQgZmFsbGJhY2ssIGEgZmFsbGJhY2sgbGFuZ3VhZ2UgbXVzdCBiZSBwcm92aWRlZCBpbiB0aGUgY29uZmlnIScsXG4gICAgICApO1xuICAgIH1cblxuICAgIHJldHVybiBBcnJheS5pc0FycmF5KGZhbGxiYWNrTGFuZykgPyBmYWxsYmFja0xhbmcgOiBbZmFsbGJhY2tMYW5nXTtcbiAgfVxufVxuIl19