Skip to content
This repository has been archived by the owner on Mar 6, 2024. It is now read-only.

[i18n] Add number formatting to the translation service based on the user locale #545

Open
wants to merge 1 commit into
base: master
Choose a base branch
from

Conversation

dpresiana
Copy link
Contributor

@dpresiana dpresiana commented Dec 11, 2023

PR Checklist

Please check if your PR fulfills the following requirements:

  • Tests for the changes have been added (for bug fixes / features)
  • Examples have been added / updated (for bug fixes / features)
  • Changelog has been updated (there is no changelog for i18n project)

PR Type

What kind of change does this PR introduce?

  • Bugfix
  • Feature
  • Code style update (formatting, local variables)
  • Refactoring (no functional changes, no api changes)
  • Build related changes
  • CI related changes
  • Documentation content changes
  • Example website changes
  • Version bump
  • Other... Please describe:

What does this change do?

Add number formatting to the translation service based on the user locale

Description

Currently the decimal point in the numbers was incorrect for some locales (IT, ES, FR, DE, pt-BR) - it was displayed as dot, but should be coma.

Fix Description

Add a format number method that uses Intl.NumberFormat() method to format the number based on locale

Note: I have added 2 default format options:

  • maximumFractionDigits: 20 - The default one is 3. We need to override this to be able to respect user defined precision if it is set
  • useGrouping: false - Disable grouping, since currently we are not using any grouping of the large numbers (ex. number = 1234567.89, Output with grouping: 1,234,567.89, Output without grouping: 1234567.89).

What manual testing did you do?

  • All unit tests are passing
  • The changes are tested within VCD application

Expected:

The number format displays correctly for FR/ES/DE/IT/pt-BR languages, the decimal point is displayed as comma.

Does this PR introduce a breaking change?

  • Yes
  • No

Other information

…user locale

Description
===========
Currently the decimal point in the numbers was incorrect for some locales (IT, ES, FR, DE, pt-BR) - it was displayed as dot, but should be coma.

Fix Description
===============
Add a format number method that uses Intl.NumberFormat() method to format the number based on locale

Note: I have added 2 default format options:
*  `maximumFractionDigits: 20` - The default one is 3. We need to override this to be able to respect user defined precision if it is set
* `useGrouping: false` - Disable grouping, since currently we are not using any grouping of the large numbers (ex. number = 1234567.89, Output with grouping: 1,234,567.89, Output without grouping: 1234567.89).

Testing Done
===========
* All unit tests are passing
* The changes are tested within VCD application

Signed-off-by: Presiana Dimitrova <[email protected]>
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant