From aa54090c5a55db3cdf87ec4d000f689383e2ca7b Mon Sep 17 00:00:00 2001 From: "k.triantafyllou" Date: Fri, 9 Jun 2023 20:52:10 +0300 Subject: [PATCH] Add locale in number pipes and stakeholder. --- monitor/entities/stakeholder.ts | 1 + utils/pipes/number-percentage.pipe.ts | 7 +++++++ utils/pipes/number-round.pipe.ts | 12 +++++++++++- 3 files changed, 19 insertions(+), 1 deletion(-) diff --git a/monitor/entities/stakeholder.ts b/monitor/entities/stakeholder.ts index 9fc420a1..2fece777 100644 --- a/monitor/entities/stakeholder.ts +++ b/monitor/entities/stakeholder.ts @@ -23,6 +23,7 @@ export class Stakeholder { index_name: string; index_shortName: string; statsProfile: string = "monitor"; + locale: string = 'eu'; alias: string; defaultId: string; visibility: Visibility; diff --git a/utils/pipes/number-percentage.pipe.ts b/utils/pipes/number-percentage.pipe.ts index 4480d12c..1e11b500 100644 --- a/utils/pipes/number-percentage.pipe.ts +++ b/utils/pipes/number-percentage.pipe.ts @@ -12,6 +12,13 @@ export class NumberPercentagePipe implements PipeTransform { /** * */ transform(value: number | string, ...args: any[]): any { + let locale: string = 'en'; + if (args[0]) { + locale = args[0]; + this.decimalPipe = new DecimalPipe(locale); + } else { + this.decimalPipe = new DecimalPipe('en'); + } value = Number.parseFloat(value.toString()) * 100; return this.decimalPipe.transform(value) + '%'; } diff --git a/utils/pipes/number-round.pipe.ts b/utils/pipes/number-round.pipe.ts index b42a93aa..397658ad 100644 --- a/utils/pipes/number-round.pipe.ts +++ b/utils/pipes/number-round.pipe.ts @@ -1,12 +1,15 @@ import {Pipe, PipeTransform} from "@angular/core"; import {Level, NumberSize, NumberUtils} from "../number-utils.class"; -import {DecimalPipe} from "@angular/common"; +import {DecimalPipe, registerLocaleData} from "@angular/common"; +import l from '@angular/common/locales/eu'; +import e from '@angular/common/locales/extra/eu'; @Pipe({name: 'numberRound'}) export class NumberRoundPipe implements PipeTransform { decimalPipe: DecimalPipe = new DecimalPipe("en"); constructor() { + registerLocaleData(l, 'eu', e); } /** @@ -16,12 +19,19 @@ export class NumberRoundPipe implements PipeTransform { transform(value: number | string, ...args: any[]): any { let level = Level.ALL; let decimal = 0; + let locale: string = 'en'; if (args[0]) { level = args[0]; } if (args[1]) { decimal = args[1]; } + if (args[2]) { + locale = args[2]; + this.decimalPipe = new DecimalPipe(locale); + } else { + this.decimalPipe = new DecimalPipe('en'); + } let size: NumberSize = NumberUtils.roundNumber(value, level, decimal); return this.decimalPipe.transform(size.number) + (size.size ? '' + size.size + '' : ''); }