ladybird/Userland/Libraries/LibJS/Tests/builtins/Intl
Timothy Flynn ca0d926036 LibJS: Use decimal compact patterns for currency style sub-patterns
When formatting a currency style pattern with compact notation, we were
(trying to) doubly insert the currency symbol into the formatted string.
We would first look up the currency pattern in GetNumberFormatPattern
(for the en locale, this is "¤#,##0.00", which our generator transforms
to "{currency}{number}").

When we hit the "{number}" field, NumberFormat will do a second lookup
for the compact pattern to use for the number being formatted. By using
the currency compact patterns, we receive a second pattern that also has
the currency symbol (for the en locale, if formatting the number 1000,
this is "¤0K", which our generator transforms to
"{currency}{number}{compactIdentifier:0}". This second lookup is not
supposed to have currency symbols (or any other symbols), thus we hit a
VERIFY_NOT_REACHED().

Instead, we are meant to use the decimal compact pattern, and allow the
currency symbol to be handled by only the outer currency pattern.
2023-09-04 18:22:28 +02:00
..
Collator LibJS: Define the Intl.Collator's compare function name to be empty 2022-02-21 16:30:19 +00:00
DateTimeFormat LibJS: Format the era of ISO year 0 as BC 2023-02-02 12:12:26 +00:00
DisplayNames LibLocale+LibJS: Update to CLDR version 42.0.0 2022-10-25 10:10:39 +01:00
DurationFormat LibJS: Throw a RangeError when when formatting strings in DurationFormat 2022-12-15 09:40:09 +00:00
ListFormat LibJS: Change wording of ErrorType::NotA to be independent of context 2021-09-12 00:16:39 +02:00
Locale Everywhere: Fix a variety of typos 2022-09-14 04:46:49 +00:00
NumberFormat LibJS: Use decimal compact patterns for currency style sub-patterns 2023-09-04 18:22:28 +02:00
PluralRules LibJS: Raise the upper minimum/maximum fraction digit limit to 100 2023-07-22 10:18:55 +02:00
RelativeTimeFormat LibLocale+LibJS: Update to CLDR version 42.0.0 2022-10-25 10:10:39 +01:00
Segmenter LibUnicode: Fix typos causing text segmentation on mid-word punctuation 2023-02-15 12:36:47 +01:00
Intl.@@toStringTag.js
Intl.getCanonicalLocales.js LibJS: Handle existing Intl.Locale objects in CanonicalizeLocaleList 2021-09-02 17:56:42 +01:00
Intl.supportedValuesOf.js LibJS: Implement Intl.supportedValuesOf 2022-01-31 00:32:41 +00:00