Files
buntspecht/frontend/src/app/utils/i18n.pipe.ts
T
2024-10-27 20:06:51 +01:00

44 lines
910 B
TypeScript

import { Pipe, PipeTransform } from '@angular/core';
import { I18nService } from './../services/i18n.service';
@Pipe({
name: 'i18n'
})
export class I18nPipe implements PipeTransform {
constructor(private i18n: I18nService) {
}
transform(value: string, ...args: any[]): string {
if (args.length === 1 && Array.isArray(args[0])) {
args = args[0];
}
return this.i18n.get(value, args);
}
}
@Pipe({
name: 'i18nEmpty'
})
export class I18nEmptyPipe implements PipeTransform {
constructor(private i18n: I18nService) {
}
transform(value: string, ...args: any[]): string {
return this.i18n.getEmpty(value, args);
}
}
@Pipe({
name: 'errorCode'
})
export class ErrorCodePipe implements PipeTransform {
transform(value: string): string {
return value && value.toUpperCase().replaceAll('-', '_') || value;
}
}