@hurbis/comum
Version:
Biblioteca contendo rotinas e utilitários para desenvolvimento em Angular.
104 lines • 6.8 kB
JavaScript
/**
* @fileoverview added by tsickle
* @suppress {checkTypes,extraRequire,missingReturn,uselessCode} checked by tsc
*/
import { Injectable } from "@angular/core";
import { TranslateService, TranslatePipe } from "@ngx-translate/core";
import * as i0 from "@angular/core";
import * as i1 from "@ngx-translate/core";
/**
* @record
*/
export function Localizacao() { }
if (false) {
/** @type {?} */
Localizacao.prototype.idioma;
/** @type {?} */
Localizacao.prototype.traducao;
}
export class LocalizacaoService {
/**
* @param {?} translate
* @param {?} translatePipe
*/
constructor(translate, translatePipe) {
this.translate = translate;
this.translatePipe = translatePipe;
}
/**
* @param {?} linguagem
* @return {?}
*/
definirLinguagemPadrao(linguagem) {
this.translate.setDefaultLang(linguagem);
}
/**
* @param {...?} traducoes
* @return {?}
*/
carregar(...traducoes) {
/** @type {?} */
const traducoesAux = [...traducoes];
traducoesAux.forEach((localizacao) => {
this.translate.setTranslation(localizacao.idioma, localizacao.traducao, true);
});
}
/**
* @param {?} linguagens
* @return {?}
*/
adicionar(linguagens) {
this.translate.addLangs(linguagens);
}
/**
* @param {?=} linguagem
* @return {?}
*/
traduzir(linguagem) {
this.translate.use((linguagem) ? linguagem : this.sugerida()).subscribe();
}
/**
* @param {?} chave
* @return {?}
*/
traducaoSimples(chave) {
return this.translatePipe.transform(chave);
}
/**
* @param {?} chaves
* @return {?}
*/
traducao(chaves) {
return this.translate.get(chaves);
}
/**
* @return {?}
*/
selecionada() {
return this.translate.currentLang;
}
/**
* @return {?}
*/
sugerida() {
return this.translate.getBrowserLang() || this.translate.getDefaultLang();
}
}
LocalizacaoService.decorators = [
{ type: Injectable, args: [{
providedIn: 'root'
},] }
];
/** @nocollapse */
LocalizacaoService.ctorParameters = () => [
{ type: TranslateService },
{ type: TranslatePipe }
];
/** @nocollapse */ LocalizacaoService.ngInjectableDef = i0.defineInjectable({ factory: function LocalizacaoService_Factory() { return new LocalizacaoService(i0.inject(i1.TranslateService), i0.inject(i1.TranslatePipe)); }, token: LocalizacaoService, providedIn: "root" });
if (false) {
/** @type {?} */
LocalizacaoService.prototype.translate;
/** @type {?} */
LocalizacaoService.prototype.translatePipe;
}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9jYWxpemFjYW8uc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BodXJiaXMvY29tdW0vIiwic291cmNlcyI6WyJsaWIvdXRpbC9sb2NhbGl6YWNhby5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7QUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNDLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxhQUFhLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQzs7Ozs7O0FBR3RFLGlDQUdDOzs7SUFGQyw2QkFBZTs7SUFDZiwrQkFBaUI7O0FBTW5CLE1BQU0sT0FBTyxrQkFBa0I7Ozs7O0lBRTdCLFlBQW9CLFNBQTJCLEVBQVUsYUFBNEI7UUFBakUsY0FBUyxHQUFULFNBQVMsQ0FBa0I7UUFBVSxrQkFBYSxHQUFiLGFBQWEsQ0FBZTtJQUNyRixDQUFDOzs7OztJQUVELHNCQUFzQixDQUFDLFNBQWlCO1FBQ3RDLElBQUksQ0FBQyxTQUFTLENBQUMsY0FBYyxDQUFDLFNBQVMsQ0FBQyxDQUFDO0lBQzNDLENBQUM7Ozs7O0lBRUQsUUFBUSxDQUFDLEdBQUcsU0FBd0I7O2NBQzVCLFlBQVksR0FBRyxDQUFDLEdBQUcsU0FBUyxDQUFDO1FBRW5DLFlBQVksQ0FBQyxPQUFPLENBQUMsQ0FBQyxXQUFXLEVBQUUsRUFBRTtZQUNuQyxJQUFJLENBQUMsU0FBUyxDQUFDLGNBQWMsQ0FBQyxXQUFXLENBQUMsTUFBTSxFQUFFLFdBQVcsQ0FBQyxRQUFRLEVBQUUsSUFBSSxDQUFDLENBQUM7UUFDaEYsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDOzs7OztJQUVELFNBQVMsQ0FBQyxVQUFvQjtRQUM1QixJQUFJLENBQUMsU0FBUyxDQUFDLFFBQVEsQ0FBQyxVQUFVLENBQUMsQ0FBQztJQUN0QyxDQUFDOzs7OztJQUVELFFBQVEsQ0FBQyxTQUFrQjtRQUN6QixJQUFJLENBQUMsU0FBUyxDQUFDLEdBQUcsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxRQUFRLEVBQUUsQ0FBQyxDQUFDLFNBQVMsRUFBRSxDQUFDO0lBQzVFLENBQUM7Ozs7O0lBRUQsZUFBZSxDQUFDLEtBQWE7UUFDM0IsT0FBTyxJQUFJLENBQUMsYUFBYSxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUM3QyxDQUFDOzs7OztJQUVELFFBQVEsQ0FBQyxNQUFnQjtRQUN2QixPQUFPLElBQUksQ0FBQyxTQUFTLENBQUMsR0FBRyxDQUFDLE1BQU0sQ0FBQyxDQUFDO0lBQ3BDLENBQUM7Ozs7SUFFRCxXQUFXO1FBQ1QsT0FBTyxJQUFJLENBQUMsU0FBUyxDQUFDLFdBQVcsQ0FBQztJQUNwQyxDQUFDOzs7O0lBRUQsUUFBUTtRQUNOLE9BQU8sSUFBSSxDQUFDLFNBQVMsQ0FBQyxjQUFjLEVBQUUsSUFBSSxJQUFJLENBQUMsU0FBUyxDQUFDLGNBQWMsRUFBRSxDQUFDO0lBQzVFLENBQUM7OztZQTFDRixVQUFVLFNBQUM7Z0JBQ1YsVUFBVSxFQUFFLE1BQU07YUFDbkI7Ozs7WUFWUSxnQkFBZ0I7WUFBRSxhQUFhOzs7OztJQWExQix1Q0FBbUM7O0lBQUUsMkNBQW9DIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XHJcbmltcG9ydCB7IFRyYW5zbGF0ZVNlcnZpY2UsIFRyYW5zbGF0ZVBpcGUgfSBmcm9tIFwiQG5neC10cmFuc2xhdGUvY29yZVwiO1xyXG5pbXBvcnQgeyBPYnNlcnZhYmxlIH0gZnJvbSBcInJ4anNcIjtcclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgTG9jYWxpemFjYW8ge1xyXG4gIGlkaW9tYTogc3RyaW5nO1xyXG4gIHRyYWR1Y2FvOiBPYmplY3Q7XHJcbn1cclxuXHJcbkBJbmplY3RhYmxlKHtcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnXG59KVxyXG5leHBvcnQgY2xhc3MgTG9jYWxpemFjYW9TZXJ2aWNlIHtcclxuXHJcbiAgY29uc3RydWN0b3IocHJpdmF0ZSB0cmFuc2xhdGU6IFRyYW5zbGF0ZVNlcnZpY2UsIHByaXZhdGUgdHJhbnNsYXRlUGlwZTogVHJhbnNsYXRlUGlwZSkge1xyXG4gIH1cclxuXHJcbiAgZGVmaW5pckxpbmd1YWdlbVBhZHJhbyhsaW5ndWFnZW06IHN0cmluZyk6IHZvaWQge1xyXG4gICAgdGhpcy50cmFuc2xhdGUuc2V0RGVmYXVsdExhbmcobGluZ3VhZ2VtKTtcclxuICB9XHJcblxyXG4gIGNhcnJlZ2FyKC4uLnRyYWR1Y29lczogTG9jYWxpemFjYW9bXSk6IHZvaWQge1xyXG4gICAgY29uc3QgdHJhZHVjb2VzQXV4ID0gWy4uLnRyYWR1Y29lc107XHJcblxyXG4gICAgdHJhZHVjb2VzQXV4LmZvckVhY2goKGxvY2FsaXphY2FvKSA9PiB7XHJcbiAgICAgIHRoaXMudHJhbnNsYXRlLnNldFRyYW5zbGF0aW9uKGxvY2FsaXphY2FvLmlkaW9tYSwgbG9jYWxpemFjYW8udHJhZHVjYW8sIHRydWUpO1xyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICBhZGljaW9uYXIobGluZ3VhZ2Vuczogc3RyaW5nW10pOiB2b2lkIHtcclxuICAgIHRoaXMudHJhbnNsYXRlLmFkZExhbmdzKGxpbmd1YWdlbnMpO1xyXG4gIH1cclxuXHJcbiAgdHJhZHV6aXIobGluZ3VhZ2VtPzogc3RyaW5nKTogdm9pZCB7XHJcbiAgICB0aGlzLnRyYW5zbGF0ZS51c2UoKGxpbmd1YWdlbSkgPyBsaW5ndWFnZW0gOiB0aGlzLnN1Z2VyaWRhKCkpLnN1YnNjcmliZSgpO1xyXG4gIH1cclxuXHJcbiAgdHJhZHVjYW9TaW1wbGVzKGNoYXZlOiBzdHJpbmcpOiBzdHJpbmcge1xyXG4gICAgcmV0dXJuIHRoaXMudHJhbnNsYXRlUGlwZS50cmFuc2Zvcm0oY2hhdmUpO1xyXG4gIH1cclxuXHJcbiAgdHJhZHVjYW8oY2hhdmVzOiBzdHJpbmdbXSk6IE9ic2VydmFibGU8c3RyaW5nPiB7XHJcbiAgICByZXR1cm4gdGhpcy50cmFuc2xhdGUuZ2V0KGNoYXZlcyk7XHJcbiAgfVxyXG5cclxuICBzZWxlY2lvbmFkYSgpOiBzdHJpbmcge1xyXG4gICAgcmV0dXJuIHRoaXMudHJhbnNsYXRlLmN1cnJlbnRMYW5nO1xyXG4gIH1cclxuXHJcbiAgc3VnZXJpZGEoKTogc3RyaW5nIHtcclxuICAgIHJldHVybiB0aGlzLnRyYW5zbGF0ZS5nZXRCcm93c2VyTGFuZygpIHx8IHRoaXMudHJhbnNsYXRlLmdldERlZmF1bHRMYW5nKCk7XHJcbiAgfVxyXG5cclxufVxyXG4iXX0=