Update Dart Intl data to CLDR 31.0.1 and explicitly add en_MY, fr_CH, it_CH and ps.
Also added ps, on request from Flutter. They would also like "sd", but ICU reports that as non-verified data at this point.
Added a fix for an AWV test that breaks with the changed de_CH grouping separator. +dskloet
-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=171965266
diff --git a/CHANGELOG.md b/CHANGELOG.md
index 33b2a9a..031986e 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -1,6 +1,8 @@
## 0.15.2
* Group the padding digits to the left of the number, if present. e.g. 00,001.
* Tweak lookup code to support translated messages as JSON rather than code.
+ * Update data to CLDR 31.0.1
+ * Adds locales en_MY, fr_CH, it_CH, and ps.
## 0.15.1
* Use the platform.locale API to get the OS platform.
diff --git a/lib/date_symbol_data_local.dart b/lib/date_symbol_data_local.dart
index 6a69c06..5ccbbbd 100644
--- a/lib/date_symbol_data_local.dart
+++ b/lib/date_symbol_data_local.dart
@@ -9,7 +9,7 @@
/// DO NOT EDIT. This file is autogenerated by script. See
/// 'http://go/generate_datetime_constants.py' using the --for_dart
/// flag.
-/// File generated from CLDR ver. 30.0.2
+/// File generated from CLDR ver. 31.0.1
///
/// Before checkin, this file could have been manually edited. This is
/// to incorporate changes before we could correct CLDR. All manual
@@ -625,6 +625,162 @@
FIRSTDAYOFWEEK: 5,
WEEKENDRANGE: const [4, 5],
FIRSTWEEKCUTOFFDAY: 4),
+ // Date/time formatting symbols for locale ar_DZ.
+ "ar_DZ": new DateSymbols(
+ NAME: "ar_DZ",
+ ERAS: const ['ق.م', 'م'],
+ ERANAMES: const ['قبل الميلاد', 'ميلادي'],
+ NARROWMONTHS: const [
+ 'ج',
+ 'ف',
+ 'م',
+ 'أ',
+ 'م',
+ 'ج',
+ 'ج',
+ 'أ',
+ 'س',
+ 'أ',
+ 'ن',
+ 'د'
+ ],
+ STANDALONENARROWMONTHS: const [
+ 'ج',
+ 'ف',
+ 'م',
+ 'أ',
+ 'م',
+ 'ج',
+ 'ج',
+ 'أ',
+ 'س',
+ 'أ',
+ 'ن',
+ 'د'
+ ],
+ MONTHS: const [
+ 'جانفي',
+ 'فيفري',
+ 'مارس',
+ 'أفريل',
+ 'ماي',
+ 'جوان',
+ 'جويلية',
+ 'أوت',
+ 'سبتمبر',
+ 'أكتوبر',
+ 'نوفمبر',
+ 'ديسمبر'
+ ],
+ STANDALONEMONTHS: const [
+ 'جانفي',
+ 'فيفري',
+ 'مارس',
+ 'أفريل',
+ 'ماي',
+ 'جوان',
+ 'جويلية',
+ 'أوت',
+ 'سبتمبر',
+ 'أكتوبر',
+ 'نوفمبر',
+ 'ديسمبر'
+ ],
+ SHORTMONTHS: const [
+ 'جانفي',
+ 'فيفري',
+ 'مارس',
+ 'أفريل',
+ 'ماي',
+ 'جوان',
+ 'جويلية',
+ 'أوت',
+ 'سبتمبر',
+ 'أكتوبر',
+ 'نوفمبر',
+ 'ديسمبر'
+ ],
+ STANDALONESHORTMONTHS: const [
+ 'جانفي',
+ 'فيفري',
+ 'مارس',
+ 'أفريل',
+ 'ماي',
+ 'جوان',
+ 'جويلية',
+ 'أوت',
+ 'سبتمبر',
+ 'أكتوبر',
+ 'نوفمبر',
+ 'ديسمبر'
+ ],
+ WEEKDAYS: const [
+ 'الأحد',
+ 'الاثنين',
+ 'الثلاثاء',
+ 'الأربعاء',
+ 'الخميس',
+ 'الجمعة',
+ 'السبت'
+ ],
+ STANDALONEWEEKDAYS: const [
+ 'الأحد',
+ 'الاثنين',
+ 'الثلاثاء',
+ 'الأربعاء',
+ 'الخميس',
+ 'الجمعة',
+ 'السبت'
+ ],
+ SHORTWEEKDAYS: const [
+ 'الأحد',
+ 'الاثنين',
+ 'الثلاثاء',
+ 'الأربعاء',
+ 'الخميس',
+ 'الجمعة',
+ 'السبت'
+ ],
+ STANDALONESHORTWEEKDAYS: const [
+ 'الأحد',
+ 'الاثنين',
+ 'الثلاثاء',
+ 'الأربعاء',
+ 'الخميس',
+ 'الجمعة',
+ 'السبت'
+ ],
+ NARROWWEEKDAYS: const ['ح', 'ن', 'ث', 'ر', 'خ', 'ج', 'س'],
+ STANDALONENARROWWEEKDAYS: const ['ح', 'ن', 'ث', 'ر', 'خ', 'ج', 'س'],
+ SHORTQUARTERS: const [
+ 'الربع الأول',
+ 'الربع الثاني',
+ 'الربع الثالث',
+ 'الربع الرابع'
+ ],
+ QUARTERS: const [
+ 'الربع الأول',
+ 'الربع الثاني',
+ 'الربع الثالث',
+ 'الربع الرابع'
+ ],
+ AMPMS: const ['ص', 'م'],
+ DATEFORMATS: const [
+ 'EEEE، d MMMM، y',
+ 'd MMMM، y',
+ 'dd/MM/y',
+ 'd/M/y'
+ ],
+ TIMEFORMATS: const [
+ 'h:mm:ss a zzzz',
+ 'h:mm:ss a z',
+ 'h:mm:ss a',
+ 'h:mm a'
+ ],
+ DATETIMEFORMATS: const ['{1} {0}', '{1} {0}', '{1} {0}', '{1} {0}'],
+ FIRSTDAYOFWEEK: 5,
+ WEEKENDRANGE: const [4, 5],
+ FIRSTWEEKCUTOFFDAY: 4),
// Date/time formatting symbols for locale az.
"az": new DateSymbols(
NAME: "az",
@@ -3872,6 +4028,162 @@
FIRSTDAYOFWEEK: 6,
WEEKENDRANGE: const [6, 6],
FIRSTWEEKCUTOFFDAY: 5),
+ // Date/time formatting symbols for locale en_MY.
+ "en_MY": new DateSymbols(
+ NAME: "en_MY",
+ ERAS: const ['BC', 'AD'],
+ ERANAMES: const ['Before Christ', 'Anno Domini'],
+ NARROWMONTHS: const [
+ 'J',
+ 'F',
+ 'M',
+ 'A',
+ 'M',
+ 'J',
+ 'J',
+ 'A',
+ 'S',
+ 'O',
+ 'N',
+ 'D'
+ ],
+ STANDALONENARROWMONTHS: const [
+ 'J',
+ 'F',
+ 'M',
+ 'A',
+ 'M',
+ 'J',
+ 'J',
+ 'A',
+ 'S',
+ 'O',
+ 'N',
+ 'D'
+ ],
+ MONTHS: const [
+ 'January',
+ 'February',
+ 'March',
+ 'April',
+ 'May',
+ 'June',
+ 'July',
+ 'August',
+ 'September',
+ 'October',
+ 'November',
+ 'December'
+ ],
+ STANDALONEMONTHS: const [
+ 'January',
+ 'February',
+ 'March',
+ 'April',
+ 'May',
+ 'June',
+ 'July',
+ 'August',
+ 'September',
+ 'October',
+ 'November',
+ 'December'
+ ],
+ SHORTMONTHS: const [
+ 'Jan',
+ 'Feb',
+ 'Mar',
+ 'Apr',
+ 'May',
+ 'Jun',
+ 'Jul',
+ 'Aug',
+ 'Sep',
+ 'Oct',
+ 'Nov',
+ 'Dec'
+ ],
+ STANDALONESHORTMONTHS: const [
+ 'Jan',
+ 'Feb',
+ 'Mar',
+ 'Apr',
+ 'May',
+ 'Jun',
+ 'Jul',
+ 'Aug',
+ 'Sep',
+ 'Oct',
+ 'Nov',
+ 'Dec'
+ ],
+ WEEKDAYS: const [
+ 'Sunday',
+ 'Monday',
+ 'Tuesday',
+ 'Wednesday',
+ 'Thursday',
+ 'Friday',
+ 'Saturday'
+ ],
+ STANDALONEWEEKDAYS: const [
+ 'Sunday',
+ 'Monday',
+ 'Tuesday',
+ 'Wednesday',
+ 'Thursday',
+ 'Friday',
+ 'Saturday'
+ ],
+ SHORTWEEKDAYS: const [
+ 'Sun',
+ 'Mon',
+ 'Tue',
+ 'Wed',
+ 'Thu',
+ 'Fri',
+ 'Sat'
+ ],
+ STANDALONESHORTWEEKDAYS: const [
+ 'Sun',
+ 'Mon',
+ 'Tue',
+ 'Wed',
+ 'Thu',
+ 'Fri',
+ 'Sat'
+ ],
+ NARROWWEEKDAYS: const ['S', 'M', 'T', 'W', 'T', 'F', 'S'],
+ STANDALONENARROWWEEKDAYS: const ['S', 'M', 'T', 'W', 'T', 'F', 'S'],
+ SHORTQUARTERS: const ['Q1', 'Q2', 'Q3', 'Q4'],
+ QUARTERS: const [
+ '1st quarter',
+ '2nd quarter',
+ '3rd quarter',
+ '4th quarter'
+ ],
+ AMPMS: const ['AM', 'PM'],
+ DATEFORMATS: const [
+ 'EEEE, d MMMM y',
+ 'd MMMM y',
+ 'd MMM y',
+ 'dd/MM/y'
+ ],
+ TIMEFORMATS: const [
+ 'h:mm:ss a zzzz',
+ 'h:mm:ss a z',
+ 'h:mm:ss a',
+ 'h:mm a'
+ ],
+ DATETIMEFORMATS: const [
+ '{1} \'at\' {0}',
+ '{1} \'at\' {0}',
+ '{1}, {0}',
+ '{1}, {0}'
+ ],
+ FIRSTDAYOFWEEK: 0,
+ WEEKENDRANGE: const [5, 6],
+ FIRSTWEEKCUTOFFDAY: 6),
// Date/time formatting symbols for locale en_SG.
"en_SG": new DateSymbols(
NAME: "en_SG",
@@ -6154,6 +6466,162 @@
FIRSTDAYOFWEEK: 6,
WEEKENDRANGE: const [5, 6],
FIRSTWEEKCUTOFFDAY: 5),
+ // Date/time formatting symbols for locale fr_CH.
+ "fr_CH": new DateSymbols(
+ NAME: "fr_CH",
+ ERAS: const ['av. J.-C.', 'ap. J.-C.'],
+ ERANAMES: const ['avant Jésus-Christ', 'après Jésus-Christ'],
+ NARROWMONTHS: const [
+ 'J',
+ 'F',
+ 'M',
+ 'A',
+ 'M',
+ 'J',
+ 'J',
+ 'A',
+ 'S',
+ 'O',
+ 'N',
+ 'D'
+ ],
+ STANDALONENARROWMONTHS: const [
+ 'J',
+ 'F',
+ 'M',
+ 'A',
+ 'M',
+ 'J',
+ 'J',
+ 'A',
+ 'S',
+ 'O',
+ 'N',
+ 'D'
+ ],
+ MONTHS: const [
+ 'janvier',
+ 'février',
+ 'mars',
+ 'avril',
+ 'mai',
+ 'juin',
+ 'juillet',
+ 'août',
+ 'septembre',
+ 'octobre',
+ 'novembre',
+ 'décembre'
+ ],
+ STANDALONEMONTHS: const [
+ 'janvier',
+ 'février',
+ 'mars',
+ 'avril',
+ 'mai',
+ 'juin',
+ 'juillet',
+ 'août',
+ 'septembre',
+ 'octobre',
+ 'novembre',
+ 'décembre'
+ ],
+ SHORTMONTHS: const [
+ 'janv.',
+ 'févr.',
+ 'mars',
+ 'avr.',
+ 'mai',
+ 'juin',
+ 'juil.',
+ 'août',
+ 'sept.',
+ 'oct.',
+ 'nov.',
+ 'déc.'
+ ],
+ STANDALONESHORTMONTHS: const [
+ 'janv.',
+ 'févr.',
+ 'mars',
+ 'avr.',
+ 'mai',
+ 'juin',
+ 'juil.',
+ 'août',
+ 'sept.',
+ 'oct.',
+ 'nov.',
+ 'déc.'
+ ],
+ WEEKDAYS: const [
+ 'dimanche',
+ 'lundi',
+ 'mardi',
+ 'mercredi',
+ 'jeudi',
+ 'vendredi',
+ 'samedi'
+ ],
+ STANDALONEWEEKDAYS: const [
+ 'dimanche',
+ 'lundi',
+ 'mardi',
+ 'mercredi',
+ 'jeudi',
+ 'vendredi',
+ 'samedi'
+ ],
+ SHORTWEEKDAYS: const [
+ 'dim.',
+ 'lun.',
+ 'mar.',
+ 'mer.',
+ 'jeu.',
+ 'ven.',
+ 'sam.'
+ ],
+ STANDALONESHORTWEEKDAYS: const [
+ 'dim.',
+ 'lun.',
+ 'mar.',
+ 'mer.',
+ 'jeu.',
+ 'ven.',
+ 'sam.'
+ ],
+ NARROWWEEKDAYS: const ['D', 'L', 'M', 'M', 'J', 'V', 'S'],
+ STANDALONENARROWWEEKDAYS: const ['D', 'L', 'M', 'M', 'J', 'V', 'S'],
+ SHORTQUARTERS: const ['T1', 'T2', 'T3', 'T4'],
+ QUARTERS: const [
+ '1er trimestre',
+ '2e trimestre',
+ '3e trimestre',
+ '4e trimestre'
+ ],
+ AMPMS: const ['AM', 'PM'],
+ DATEFORMATS: const [
+ 'EEEE, d MMMM y',
+ 'd MMMM y',
+ 'd MMM y',
+ 'dd.MM.yy'
+ ],
+ TIMEFORMATS: const [
+ 'HH.mm:ss \'h\' zzzz',
+ 'HH:mm:ss z',
+ 'HH:mm:ss',
+ 'HH:mm'
+ ],
+ DATETIMEFORMATS: const [
+ '{1} \'à\' {0}',
+ '{1} \'à\' {0}',
+ '{1} \'à\' {0}',
+ '{1} {0}'
+ ],
+ FIRSTDAYOFWEEK: 0,
+ WEEKENDRANGE: const [5, 6],
+ FIRSTWEEKCUTOFFDAY: 3),
// Date/time formatting symbols for locale ga.
"ga": new DateSymbols(
NAME: "ga",
@@ -6590,7 +7058,7 @@
'3. Quartal',
'4. Quartal'
],
- AMPMS: const ['vorm.', 'nam.'],
+ AMPMS: const ['am Vormittag', 'am Namittag'],
DATEFORMATS: const [
'EEEE, d. MMMM y',
'd. MMMM y',
@@ -8294,6 +8762,157 @@
FIRSTDAYOFWEEK: 0,
WEEKENDRANGE: const [5, 6],
FIRSTWEEKCUTOFFDAY: 3),
+ // Date/time formatting symbols for locale it_CH.
+ "it_CH": new DateSymbols(
+ NAME: "it_CH",
+ ERAS: const ['a.C.', 'd.C.'],
+ ERANAMES: const ['avanti Cristo', 'dopo Cristo'],
+ NARROWMONTHS: const [
+ 'G',
+ 'F',
+ 'M',
+ 'A',
+ 'M',
+ 'G',
+ 'L',
+ 'A',
+ 'S',
+ 'O',
+ 'N',
+ 'D'
+ ],
+ STANDALONENARROWMONTHS: const [
+ 'G',
+ 'F',
+ 'M',
+ 'A',
+ 'M',
+ 'G',
+ 'L',
+ 'A',
+ 'S',
+ 'O',
+ 'N',
+ 'D'
+ ],
+ MONTHS: const [
+ 'gennaio',
+ 'febbraio',
+ 'marzo',
+ 'aprile',
+ 'maggio',
+ 'giugno',
+ 'luglio',
+ 'agosto',
+ 'settembre',
+ 'ottobre',
+ 'novembre',
+ 'dicembre'
+ ],
+ STANDALONEMONTHS: const [
+ 'gennaio',
+ 'febbraio',
+ 'marzo',
+ 'aprile',
+ 'maggio',
+ 'giugno',
+ 'luglio',
+ 'agosto',
+ 'settembre',
+ 'ottobre',
+ 'novembre',
+ 'dicembre'
+ ],
+ SHORTMONTHS: const [
+ 'gen',
+ 'feb',
+ 'mar',
+ 'apr',
+ 'mag',
+ 'giu',
+ 'lug',
+ 'ago',
+ 'set',
+ 'ott',
+ 'nov',
+ 'dic'
+ ],
+ STANDALONESHORTMONTHS: const [
+ 'gen',
+ 'feb',
+ 'mar',
+ 'apr',
+ 'mag',
+ 'giu',
+ 'lug',
+ 'ago',
+ 'set',
+ 'ott',
+ 'nov',
+ 'dic'
+ ],
+ WEEKDAYS: const [
+ 'domenica',
+ 'lunedì',
+ 'martedì',
+ 'mercoledì',
+ 'giovedì',
+ 'venerdì',
+ 'sabato'
+ ],
+ STANDALONEWEEKDAYS: const [
+ 'domenica',
+ 'lunedì',
+ 'martedì',
+ 'mercoledì',
+ 'giovedì',
+ 'venerdì',
+ 'sabato'
+ ],
+ SHORTWEEKDAYS: const [
+ 'dom',
+ 'lun',
+ 'mar',
+ 'mer',
+ 'gio',
+ 'ven',
+ 'sab'
+ ],
+ STANDALONESHORTWEEKDAYS: const [
+ 'dom',
+ 'lun',
+ 'mar',
+ 'mer',
+ 'gio',
+ 'ven',
+ 'sab'
+ ],
+ NARROWWEEKDAYS: const ['D', 'L', 'M', 'M', 'G', 'V', 'S'],
+ STANDALONENARROWWEEKDAYS: const ['D', 'L', 'M', 'M', 'G', 'V', 'S'],
+ SHORTQUARTERS: const ['T1', 'T2', 'T3', 'T4'],
+ QUARTERS: const [
+ '1º trimestre',
+ '2º trimestre',
+ '3º trimestre',
+ '4º trimestre'
+ ],
+ AMPMS: const ['AM', 'PM'],
+ DATEFORMATS: const [
+ 'EEEE, d MMMM y',
+ 'd MMMM y',
+ 'd MMM y',
+ 'dd.MM.yy'
+ ],
+ TIMEFORMATS: const [
+ 'HH:mm:ss zzzz',
+ 'HH:mm:ss z',
+ 'HH:mm:ss',
+ 'HH:mm'
+ ],
+ DATETIMEFORMATS: const ['{1} {0}', '{1} {0}', '{1}, {0}', '{1}, {0}'],
+ FIRSTDAYOFWEEK: 0,
+ WEEKENDRANGE: const [5, 6],
+ FIRSTWEEKCUTOFFDAY: 3),
// Date/time formatting symbols for locale iw.
"iw": new DateSymbols(
NAME: "iw",
@@ -12377,6 +12996,157 @@
FIRSTDAYOFWEEK: 0,
WEEKENDRANGE: const [5, 6],
FIRSTWEEKCUTOFFDAY: 3),
+ // Date/time formatting symbols for locale ps.
+ "ps": new DateSymbols(
+ NAME: "ps",
+ ERAS: const ['له میلاد وړاندې', 'م.'],
+ ERANAMES: const ['له میلاد څخه وړاندې', 'له میلاد څخه وروسته'],
+ NARROWMONTHS: const [
+ '1',
+ '2',
+ '3',
+ '4',
+ '5',
+ '6',
+ '7',
+ '8',
+ '9',
+ '10',
+ '11',
+ '12'
+ ],
+ STANDALONENARROWMONTHS: const [
+ '1',
+ '2',
+ '3',
+ '4',
+ '5',
+ '6',
+ '7',
+ '8',
+ '9',
+ '10',
+ '11',
+ '12'
+ ],
+ MONTHS: const [
+ 'جنوري',
+ 'فبروري',
+ 'مارچ',
+ 'اپریل',
+ 'مۍ',
+ 'جون',
+ 'جولای',
+ 'اګست',
+ 'سپتمبر',
+ 'اکتوبر',
+ 'نومبر',
+ 'دسمبر'
+ ],
+ STANDALONEMONTHS: const [
+ 'جنوري',
+ 'فبروري',
+ 'مارچ',
+ 'اپریل',
+ 'مۍ',
+ 'جون',
+ 'جولای',
+ 'اګست',
+ 'سپتمبر',
+ 'اکتوبر',
+ 'نومبر',
+ 'دسمبر'
+ ],
+ SHORTMONTHS: const [
+ 'جنوري',
+ 'فبروري',
+ 'مارچ',
+ 'اپریل',
+ 'مۍ',
+ 'جون',
+ 'جولای',
+ 'اګست',
+ 'سپتمبر',
+ 'اکتوبر',
+ 'نومبر',
+ 'دسمبر'
+ ],
+ STANDALONESHORTMONTHS: const [
+ 'جنوري',
+ 'فبروري',
+ 'مارچ',
+ 'اپریل',
+ 'مۍ',
+ 'جون',
+ 'جولای',
+ 'اګست',
+ 'سپتمبر',
+ 'اکتوبر',
+ 'نومبر',
+ 'دسمبر'
+ ],
+ WEEKDAYS: const [
+ 'یکشنبه',
+ 'دوشنبه',
+ 'سهشنبه',
+ 'چهارشنبه',
+ 'پنجشنبه',
+ 'جمعه',
+ 'شنبه'
+ ],
+ STANDALONEWEEKDAYS: const [
+ 'یکشنبه',
+ 'دوشنبه',
+ 'سهشنبه',
+ 'چهارشنبه',
+ 'پنجشنبه',
+ 'جمعه',
+ 'شنبه'
+ ],
+ SHORTWEEKDAYS: const [
+ 'یکشنبه',
+ 'دوشنبه',
+ 'سهشنبه',
+ 'چهارشنبه',
+ 'پنجشنبه',
+ 'جمعه',
+ 'شنبه'
+ ],
+ STANDALONESHORTWEEKDAYS: const [
+ 'یکشنبه',
+ 'دوشنبه',
+ 'سهشنبه',
+ 'چهارشنبه',
+ 'پنجشنبه',
+ 'جمعه',
+ 'شنبه'
+ ],
+ NARROWWEEKDAYS: const ['S', 'M', 'T', 'W', 'T', 'F', 'S'],
+ STANDALONENARROWWEEKDAYS: const ['S', 'M', 'T', 'W', 'T', 'F', 'S'],
+ SHORTQUARTERS: const [
+ 'لومړۍ ربعه',
+ '۲مه ربعه',
+ '۳مه ربعه',
+ '۴مه ربعه'
+ ],
+ QUARTERS: const ['لومړۍ ربعه', '۲مه ربعه', '۳مه ربعه', '۴مه ربعه'],
+ AMPMS: const ['غ.م.', 'غ.و.'],
+ DATEFORMATS: const [
+ 'EEEE د y د MMMM d',
+ 'د y د MMMM d',
+ 'y MMM d',
+ 'y/M/d'
+ ],
+ TIMEFORMATS: const [
+ 'H:mm:ss (zzzz)',
+ 'H:mm:ss (z)',
+ 'H:mm:ss',
+ 'H:mm'
+ ],
+ DATETIMEFORMATS: const ['{1} {0}', '{1} {0}', '{1} {0}', '{1} {0}'],
+ FIRSTDAYOFWEEK: 5,
+ WEEKENDRANGE: const [3, 4],
+ FIRSTWEEKCUTOFFDAY: 4),
// Date/time formatting symbols for locale pt.
"pt": new DateSymbols(
NAME: "pt",
@@ -16387,5 +17157,5 @@
DATETIMEFORMATS: const ['{1} {0}', '{1} {0}', '{1} {0}', '{1} {0}'],
FIRSTDAYOFWEEK: 6,
WEEKENDRANGE: const [5, 6],
- FIRSTWEEKCUTOFFDAY: 5)
+ FIRSTWEEKCUTOFFDAY: 5),
};
diff --git a/lib/date_time_patterns.dart b/lib/date_time_patterns.dart
index 0ff874e..584c0b3 100644
--- a/lib/date_time_patterns.dart
+++ b/lib/date_time_patterns.dart
@@ -6,7 +6,7 @@
///
/// DO NOT EDIT. This file is autogenerated from ICU data. See
/// 'http://go/generate_datetime_pattern_dart.cc' (Google internal)
-/// File generated from CLDR ver. 30.0.2
+/// File generated from CLDR ver. 31.0.1
library date_time_patterns;
@@ -158,6 +158,54 @@
'ZZZZ': 'ZZZZ' // ABBR_UTC_TZ
},
+ /// Extended set of localized date/time patterns for locale ar_DZ.
+ 'ar_DZ': const {
+ 'd': 'd', // DAY
+ 'E': 'ccc', // ABBR_WEEKDAY
+ 'EEEE': 'cccc', // WEEKDAY
+ 'LLL': 'LLL', // ABBR_STANDALONE_MONTH
+ 'LLLL': 'LLLL', // STANDALONE_MONTH
+ 'M': 'L', // NUM_MONTH
+ 'Md': 'd/M', // NUM_MONTH_DAY
+ 'MEd': 'EEE، d/M', // NUM_MONTH_WEEKDAY_DAY
+ 'MMM': 'LLL', // ABBR_MONTH
+ 'MMMd': 'd MMM', // ABBR_MONTH_DAY
+ 'MMMEd': 'EEE، d MMM', // ABBR_MONTH_WEEKDAY_DAY
+ 'MMMM': 'LLLL', // MONTH
+ 'MMMMd': 'd MMMM', // MONTH_DAY
+ 'MMMMEEEEd': 'EEEE، d MMMM', // MONTH_WEEKDAY_DAY
+ 'QQQ': 'QQQ', // ABBR_QUARTER
+ 'QQQQ': 'QQQQ', // QUARTER
+ 'y': 'y', // YEAR
+ 'yM': 'M/y', // YEAR_NUM_MONTH
+ 'yMd': 'd/M/y', // YEAR_NUM_MONTH_DAY
+ 'yMEd': 'EEE، d/M/y', // YEAR_NUM_MONTH_WEEKDAY_DAY
+ 'yMMM': 'MMM y', // YEAR_ABBR_MONTH
+ 'yMMMd': 'd MMM، y', // YEAR_ABBR_MONTH_DAY
+ 'yMMMEd': 'EEE، d MMM، y', // YEAR_ABBR_MONTH_WEEKDAY_DAY
+ 'yMMMM': 'MMMM y', // YEAR_MONTH
+ 'yMMMMd': 'd MMMM، y', // YEAR_MONTH_DAY
+ 'yMMMMEEEEd': 'EEEE، d MMMM، y', // YEAR_MONTH_WEEKDAY_DAY
+ 'yQQQ': 'QQQ y', // YEAR_ABBR_QUARTER
+ 'yQQQQ': 'QQQQ y', // YEAR_QUARTER
+ 'H': 'HH', // HOUR24
+ 'Hm': 'HH:mm', // HOUR24_MINUTE
+ 'Hms': 'HH:mm:ss', // HOUR24_MINUTE_SECOND
+ 'j': 'h a', // HOUR
+ 'jm': 'h:mm a', // HOUR_MINUTE
+ 'jms': 'h:mm:ss a', // HOUR_MINUTE_SECOND
+ 'jmv': 'h:mm a v', // HOUR_MINUTE_GENERIC_TZ
+ 'jmz': 'h:mm a z', // HOUR_MINUTETZ
+ 'jz': 'h a z', // HOURGENERIC_TZ
+ 'm': 'm', // MINUTE
+ 'ms': 'mm:ss', // MINUTE_SECOND
+ 's': 's', // SECOND
+ 'v': 'v', // ABBR_GENERIC_TZ
+ 'z': 'z', // ABBR_SPECIFIC_TZ
+ 'zzzz': 'zzzz', // SPECIFIC_TZ
+ 'ZZZZ': 'ZZZZ' // ABBR_UTC_TZ
+ },
+
/// Extended set of localized date/time patterns for locale az.
'az': const {
'd': 'd', // DAY
@@ -183,7 +231,7 @@
'yMMM': 'MMM y', // YEAR_ABBR_MONTH
'yMMMd': 'd MMM y', // YEAR_ABBR_MONTH_DAY
'yMMMEd': 'd MMM y, EEE', // YEAR_ABBR_MONTH_WEEKDAY_DAY
- 'yMMMM': 'y MMMM', // YEAR_MONTH
+ 'yMMMM': 'MMMM y', // YEAR_MONTH
'yMMMMd': 'd MMMM y', // YEAR_MONTH_DAY
'yMMMMEEEEd': 'd MMMM y, EEEE', // YEAR_MONTH_WEEKDAY_DAY
'yQQQ': 'y QQQ', // YEAR_ABBR_QUARTER
@@ -3015,7 +3063,7 @@
'yMMM': 'MMM y', // YEAR_ABBR_MONTH
'yMMMd': 'd MMM y', // YEAR_ABBR_MONTH_DAY
'yMMMEd': 'EEE, d MMM y', // YEAR_ABBR_MONTH_WEEKDAY_DAY
- 'yMMMM': 'y MMMM', // YEAR_MONTH
+ 'yMMMM': 'MMMM y', // YEAR_MONTH
'yMMMMd': 'd MMMM y', // YEAR_MONTH_DAY
'yMMMMEEEEd': 'EEEE, d MMMM y', // YEAR_MONTH_WEEKDAY_DAY
'yQQQ': 'QQQ y', // YEAR_ABBR_QUARTER
@@ -3831,7 +3879,7 @@
'yMMM': 'MMM y', // YEAR_ABBR_MONTH
'yMMMd': 'd MMM y', // YEAR_ABBR_MONTH_DAY
'yMMMEd': 'EEE, d MMM y', // YEAR_ABBR_MONTH_WEEKDAY_DAY
- 'yMMMM': 'y MMMM', // YEAR_MONTH
+ 'yMMMM': 'MMMM y', // YEAR_MONTH
'yMMMMd': 'd MMMM y', // YEAR_MONTH_DAY
'yMMMMEEEEd': 'EEEE, d MMMM y', // YEAR_MONTH_WEEKDAY_DAY
'yQQQ': 'QQQ y', // YEAR_ABBR_QUARTER
@@ -4887,7 +4935,7 @@
'yMMM': 'MMM y', // YEAR_ABBR_MONTH
'yMMMd': 'd MMM، y', // YEAR_ABBR_MONTH_DAY
'yMMMEd': 'EEE، d MMM، y', // YEAR_ABBR_MONTH_WEEKDAY_DAY
- 'yMMMM': 'y MMMM', // YEAR_MONTH
+ 'yMMMM': 'MMMM y', // YEAR_MONTH
'yMMMMd': 'd MMMM، y', // YEAR_MONTH_DAY
'yMMMMEEEEd': 'EEEE، d MMMM، y', // YEAR_MONTH_WEEKDAY_DAY
'yQQQ': 'QQQ y', // YEAR_ABBR_QUARTER
@@ -5292,5 +5340,197 @@
'z': 'z', // ABBR_SPECIFIC_TZ
'zzzz': 'zzzz', // SPECIFIC_TZ
'ZZZZ': 'ZZZZ' // ABBR_UTC_TZ
+ },
+
+ /// Extended set of localized date/time patterns for locale en_MY.
+ 'en_MY': const {
+ 'd': 'd', // DAY
+ 'E': 'ccc', // ABBR_WEEKDAY
+ 'EEEE': 'cccc', // WEEKDAY
+ 'LLL': 'LLL', // ABBR_STANDALONE_MONTH
+ 'LLLL': 'LLLL', // STANDALONE_MONTH
+ 'M': 'L', // NUM_MONTH
+ 'Md': 'dd/MM', // NUM_MONTH_DAY
+ 'MEd': 'EEE, dd/MM', // NUM_MONTH_WEEKDAY_DAY
+ 'MMM': 'LLL', // ABBR_MONTH
+ 'MMMd': 'd MMM', // ABBR_MONTH_DAY
+ 'MMMEd': 'EEE, d MMM', // ABBR_MONTH_WEEKDAY_DAY
+ 'MMMM': 'LLLL', // MONTH
+ 'MMMMd': 'd MMMM', // MONTH_DAY
+ 'MMMMEEEEd': 'EEEE, d MMMM', // MONTH_WEEKDAY_DAY
+ 'QQQ': 'QQQ', // ABBR_QUARTER
+ 'QQQQ': 'QQQQ', // QUARTER
+ 'y': 'y', // YEAR
+ 'yM': 'MM/y', // YEAR_NUM_MONTH
+ 'yMd': 'dd/MM/y', // YEAR_NUM_MONTH_DAY
+ 'yMEd': 'EEE, dd/MM/y', // YEAR_NUM_MONTH_WEEKDAY_DAY
+ 'yMMM': 'MMM y', // YEAR_ABBR_MONTH
+ 'yMMMd': 'd MMM y', // YEAR_ABBR_MONTH_DAY
+ 'yMMMEd': 'EEE, d MMM y', // YEAR_ABBR_MONTH_WEEKDAY_DAY
+ 'yMMMM': 'MMMM y', // YEAR_MONTH
+ 'yMMMMd': 'd MMMM y', // YEAR_MONTH_DAY
+ 'yMMMMEEEEd': 'EEEE, d MMMM y', // YEAR_MONTH_WEEKDAY_DAY
+ 'yQQQ': 'QQQ y', // YEAR_ABBR_QUARTER
+ 'yQQQQ': 'QQQQ y', // YEAR_QUARTER
+ 'H': 'HH', // HOUR24
+ 'Hm': 'HH:mm', // HOUR24_MINUTE
+ 'Hms': 'HH:mm:ss', // HOUR24_MINUTE_SECOND
+ 'j': 'h a', // HOUR
+ 'jm': 'h:mm a', // HOUR_MINUTE
+ 'jms': 'h:mm:ss a', // HOUR_MINUTE_SECOND
+ 'jmv': 'h:mm a v', // HOUR_MINUTE_GENERIC_TZ
+ 'jmz': 'h:mm a z', // HOUR_MINUTETZ
+ 'jz': 'h a z', // HOURGENERIC_TZ
+ 'm': 'm', // MINUTE
+ 'ms': 'mm:ss', // MINUTE_SECOND
+ 's': 's', // SECOND
+ 'v': 'v', // ABBR_GENERIC_TZ
+ 'z': 'z', // ABBR_SPECIFIC_TZ
+ 'zzzz': 'zzzz', // SPECIFIC_TZ
+ 'ZZZZ': 'ZZZZ' // ABBR_UTC_TZ
+ },
+
+ /// Extended set of localized date/time patterns for locale fr_CH.
+ 'fr_CH': const {
+ 'd': 'd', // DAY
+ 'E': 'EEE', // ABBR_WEEKDAY
+ 'EEEE': 'EEEE', // WEEKDAY
+ 'LLL': 'LLL', // ABBR_STANDALONE_MONTH
+ 'LLLL': 'LLLL', // STANDALONE_MONTH
+ 'M': 'L', // NUM_MONTH
+ 'Md': 'dd.MM.', // NUM_MONTH_DAY
+ 'MEd': 'EEE, dd.MM.', // NUM_MONTH_WEEKDAY_DAY
+ 'MMM': 'LLL', // ABBR_MONTH
+ 'MMMd': 'd MMM', // ABBR_MONTH_DAY
+ 'MMMEd': 'EEE d MMM', // ABBR_MONTH_WEEKDAY_DAY
+ 'MMMM': 'LLLL', // MONTH
+ 'MMMMd': 'd MMMM', // MONTH_DAY
+ 'MMMMEEEEd': 'EEEE d MMMM', // MONTH_WEEKDAY_DAY
+ 'QQQ': 'QQQ', // ABBR_QUARTER
+ 'QQQQ': 'QQQQ', // QUARTER
+ 'y': 'y', // YEAR
+ 'yM': 'MM.y', // YEAR_NUM_MONTH
+ 'yMd': 'dd.MM.y', // YEAR_NUM_MONTH_DAY
+ 'yMEd': 'EEE, dd.MM.y', // YEAR_NUM_MONTH_WEEKDAY_DAY
+ 'yMMM': 'MMM y', // YEAR_ABBR_MONTH
+ 'yMMMd': 'd MMM y', // YEAR_ABBR_MONTH_DAY
+ 'yMMMEd': 'EEE d MMM y', // YEAR_ABBR_MONTH_WEEKDAY_DAY
+ 'yMMMM': 'MMMM y', // YEAR_MONTH
+ 'yMMMMd': 'd MMMM y', // YEAR_MONTH_DAY
+ 'yMMMMEEEEd': 'EEEE, d MMMM y', // YEAR_MONTH_WEEKDAY_DAY
+ 'yQQQ': 'QQQ y', // YEAR_ABBR_QUARTER
+ 'yQQQQ': 'QQQQ y', // YEAR_QUARTER
+ 'H': 'HH \'h\'', // HOUR24
+ 'Hm': 'HH:mm', // HOUR24_MINUTE
+ 'Hms': 'HH:mm:ss', // HOUR24_MINUTE_SECOND
+ 'j': 'HH \'h\'', // HOUR
+ 'jm': 'HH:mm', // HOUR_MINUTE
+ 'jms': 'HH:mm:ss', // HOUR_MINUTE_SECOND
+ 'jmv': 'HH:mm v', // HOUR_MINUTE_GENERIC_TZ
+ 'jmz': 'HH:mm z', // HOUR_MINUTETZ
+ 'jz': 'HH \'h\' z', // HOURGENERIC_TZ
+ 'm': 'm', // MINUTE
+ 'ms': 'mm:ss', // MINUTE_SECOND
+ 's': 's', // SECOND
+ 'v': 'v', // ABBR_GENERIC_TZ
+ 'z': 'z', // ABBR_SPECIFIC_TZ
+ 'zzzz': 'zzzz', // SPECIFIC_TZ
+ 'ZZZZ': 'ZZZZ' // ABBR_UTC_TZ
+ },
+
+ /// Extended set of localized date/time patterns for locale it_CH.
+ 'it_CH': const {
+ 'd': 'd', // DAY
+ 'E': 'ccc', // ABBR_WEEKDAY
+ 'EEEE': 'cccc', // WEEKDAY
+ 'LLL': 'LLL', // ABBR_STANDALONE_MONTH
+ 'LLLL': 'LLLL', // STANDALONE_MONTH
+ 'M': 'L', // NUM_MONTH
+ 'Md': 'd/M', // NUM_MONTH_DAY
+ 'MEd': 'EEE d/M', // NUM_MONTH_WEEKDAY_DAY
+ 'MMM': 'LLL', // ABBR_MONTH
+ 'MMMd': 'd MMM', // ABBR_MONTH_DAY
+ 'MMMEd': 'EEE d MMM', // ABBR_MONTH_WEEKDAY_DAY
+ 'MMMM': 'LLLL', // MONTH
+ 'MMMMd': 'd MMMM', // MONTH_DAY
+ 'MMMMEEEEd': 'EEEE d MMMM', // MONTH_WEEKDAY_DAY
+ 'QQQ': 'QQQ', // ABBR_QUARTER
+ 'QQQQ': 'QQQQ', // QUARTER
+ 'y': 'y', // YEAR
+ 'yM': 'M/y', // YEAR_NUM_MONTH
+ 'yMd': 'd/M/y', // YEAR_NUM_MONTH_DAY
+ 'yMEd': 'EEE d/M/y', // YEAR_NUM_MONTH_WEEKDAY_DAY
+ 'yMMM': 'MMM y', // YEAR_ABBR_MONTH
+ 'yMMMd': 'd MMM y', // YEAR_ABBR_MONTH_DAY
+ 'yMMMEd': 'EEE d MMM y', // YEAR_ABBR_MONTH_WEEKDAY_DAY
+ 'yMMMM': 'MMMM y', // YEAR_MONTH
+ 'yMMMMd': 'd MMMM y', // YEAR_MONTH_DAY
+ 'yMMMMEEEEd': 'EEEE, d MMMM y', // YEAR_MONTH_WEEKDAY_DAY
+ 'yQQQ': 'QQQ y', // YEAR_ABBR_QUARTER
+ 'yQQQQ': 'QQQQ y', // YEAR_QUARTER
+ 'H': 'HH', // HOUR24
+ 'Hm': 'HH:mm', // HOUR24_MINUTE
+ 'Hms': 'HH:mm:ss', // HOUR24_MINUTE_SECOND
+ 'j': 'HH', // HOUR
+ 'jm': 'HH:mm', // HOUR_MINUTE
+ 'jms': 'HH:mm:ss', // HOUR_MINUTE_SECOND
+ 'jmv': 'HH:mm v', // HOUR_MINUTE_GENERIC_TZ
+ 'jmz': 'HH:mm z', // HOUR_MINUTETZ
+ 'jz': 'HH z', // HOURGENERIC_TZ
+ 'm': 'm', // MINUTE
+ 'ms': 'mm:ss', // MINUTE_SECOND
+ 's': 's', // SECOND
+ 'v': 'v', // ABBR_GENERIC_TZ
+ 'z': 'z', // ABBR_SPECIFIC_TZ
+ 'zzzz': 'zzzz', // SPECIFIC_TZ
+ 'ZZZZ': 'ZZZZ' // ABBR_UTC_TZ
+ },
+
+ /// Extended set of localized date/time patterns for locale ps.
+ 'ps': const {
+ 'd': 'd', // DAY
+ 'E': 'ccc', // ABBR_WEEKDAY
+ 'EEEE': 'cccc', // WEEKDAY
+ 'LLL': 'LLL', // ABBR_STANDALONE_MONTH
+ 'LLLL': 'LLLL', // STANDALONE_MONTH
+ 'M': 'L', // NUM_MONTH
+ 'Md': 'M/d', // NUM_MONTH_DAY
+ 'MEd': 'MM-dd, EEE', // NUM_MONTH_WEEKDAY_DAY
+ 'MMM': 'LLL', // ABBR_MONTH
+ 'MMMd': 'MMM d', // ABBR_MONTH_DAY
+ 'MMMEd': 'MMM d, EEE', // ABBR_MONTH_WEEKDAY_DAY
+ 'MMMM': 'LLLL', // MONTH
+ 'MMMMd': 'd MMMM', // MONTH_DAY
+ 'MMMMEEEEd': 'MMMM d, EEEE', // MONTH_WEEKDAY_DAY
+ 'QQQ': 'QQQ', // ABBR_QUARTER
+ 'QQQQ': 'QQQQ', // QUARTER
+ 'y': 'y', // YEAR
+ 'yM': 'y/M', // YEAR_NUM_MONTH
+ 'yMd': 'y-MM-dd', // YEAR_NUM_MONTH_DAY
+ 'yMEd': 'y-MM-dd, EEE', // YEAR_NUM_MONTH_WEEKDAY_DAY
+ 'yMMM': 'y MMM', // YEAR_ABBR_MONTH
+ 'yMMMd': 'y MMM d', // YEAR_ABBR_MONTH_DAY
+ 'yMMMEd': 'y MMM d, EEE', // YEAR_ABBR_MONTH_WEEKDAY_DAY
+ 'yMMMM': 'د y د MMMM', // YEAR_MONTH
+ 'yMMMMd': 'د y د MMMM d', // YEAR_MONTH_DAY
+ 'yMMMMEEEEd': 'EEEE د y د MMMM d', // YEAR_MONTH_WEEKDAY_DAY
+ 'yQQQ': 'y QQQ', // YEAR_ABBR_QUARTER
+ 'yQQQQ': 'y QQQQ', // YEAR_QUARTER
+ 'H': 'H', // HOUR24
+ 'Hm': 'H:mm', // HOUR24_MINUTE
+ 'Hms': 'H:mm:ss', // HOUR24_MINUTE_SECOND
+ 'j': 'H', // HOUR
+ 'jm': 'H:mm', // HOUR_MINUTE
+ 'jms': 'H:mm:ss', // HOUR_MINUTE_SECOND
+ 'jmv': 'HH:mm v', // HOUR_MINUTE_GENERIC_TZ
+ 'jmz': 'HH:mm z', // HOUR_MINUTETZ
+ 'jz': 'H (z)', // HOURGENERIC_TZ
+ 'm': 'm', // MINUTE
+ 'ms': 'mm:ss', // MINUTE_SECOND
+ 's': 's', // SECOND
+ 'v': 'v', // ABBR_GENERIC_TZ
+ 'z': 'z', // ABBR_SPECIFIC_TZ
+ 'zzzz': 'zzzz', // SPECIFIC_TZ
+ 'ZZZZ': 'ZZZZ' // ABBR_UTC_TZ
}
};
diff --git a/lib/number_symbols_data.dart b/lib/number_symbols_data.dart
index 1082193..76a73af 100644
--- a/lib/number_symbols_data.dart
+++ b/lib/number_symbols_data.dart
@@ -73,6 +73,24 @@
PERCENT_PATTERN: '#,##0\u00A0%',
CURRENCY_PATTERN: '#,##0.00\u00A0\u00A4',
DEF_CURRENCY_CODE: 'EGP'),
+ // Number formatting symbols for locale ar_DZ.
+ "ar_DZ": new NumberSymbols(
+ NAME: "ar_DZ",
+ DECIMAL_SEP: ',',
+ GROUP_SEP: '.',
+ PERCENT: '\u200E%\u200E',
+ ZERO_DIGIT: '0',
+ PLUS_SIGN: '\u200E+',
+ MINUS_SIGN: '\u200E-',
+ EXP_SYMBOL: 'E',
+ PERMILL: '\u2030',
+ INFINITY: '\u221E',
+ NAN: '\u0644\u064A\u0633\u00A0\u0631\u0642\u0645\u064B\u0627',
+ DECIMAL_PATTERN: '#,##0.###',
+ SCIENTIFIC_PATTERN: '#E0',
+ PERCENT_PATTERN: '#,##0%',
+ CURRENCY_PATTERN: '\u00A4\u00A0#,##0.00',
+ DEF_CURRENCY_CODE: 'DZD'),
// Number formatting symbols for locale az.
"az": new NumberSymbols(
NAME: "az",
@@ -125,7 +143,7 @@
DECIMAL_PATTERN: '#,##0.###',
SCIENTIFIC_PATTERN: '#E0',
PERCENT_PATTERN: '#,##0%',
- CURRENCY_PATTERN: '#0.00\u00A0\u00A4',
+ CURRENCY_PATTERN: '0.00\u00A0\u00A4',
DEF_CURRENCY_CODE: 'BGN'),
// Number formatting symbols for locale bn.
"bn": new NumberSymbols(
@@ -311,7 +329,7 @@
"de_CH": new NumberSymbols(
NAME: "de_CH",
DECIMAL_SEP: '.',
- GROUP_SEP: '\'',
+ GROUP_SEP: '\u2019',
PERCENT: '%',
ZERO_DIGIT: '0',
PLUS_SIGN: '+',
@@ -451,6 +469,24 @@
PERCENT_PATTERN: '#,##,##0%',
CURRENCY_PATTERN: '\u00A4\u00A0#,##,##0.00',
DEF_CURRENCY_CODE: 'INR'),
+ // Number formatting symbols for locale en_MY.
+ "en_MY": new NumberSymbols(
+ NAME: "en_MY",
+ DECIMAL_SEP: '.',
+ GROUP_SEP: ',',
+ PERCENT: '%',
+ ZERO_DIGIT: '0',
+ PLUS_SIGN: '+',
+ MINUS_SIGN: '-',
+ EXP_SYMBOL: 'E',
+ PERMILL: '\u2030',
+ INFINITY: '\u221E',
+ NAN: 'NaN',
+ DECIMAL_PATTERN: '#,##0.###',
+ SCIENTIFIC_PATTERN: '#E0',
+ PERCENT_PATTERN: '#,##0%',
+ CURRENCY_PATTERN: '\u00A4#,##0.00',
+ DEF_CURRENCY_CODE: 'MYR'),
// Number formatting symbols for locale en_SG.
"en_SG": new NumberSymbols(
NAME: "en_SG",
@@ -722,6 +758,24 @@
PERCENT_PATTERN: '#,##0\u00A0%',
CURRENCY_PATTERN: '#,##0.00\u00A0\u00A4',
DEF_CURRENCY_CODE: 'CAD'),
+ // Number formatting symbols for locale fr_CH.
+ "fr_CH": new NumberSymbols(
+ NAME: "fr_CH",
+ DECIMAL_SEP: ',',
+ GROUP_SEP: '\u00A0',
+ PERCENT: '%',
+ ZERO_DIGIT: '0',
+ PLUS_SIGN: '+',
+ MINUS_SIGN: '-',
+ EXP_SYMBOL: 'E',
+ PERMILL: '\u2030',
+ INFINITY: '\u221E',
+ NAN: 'NaN',
+ DECIMAL_PATTERN: '#,##0.###',
+ SCIENTIFIC_PATTERN: '#E0',
+ PERCENT_PATTERN: '#,##0%',
+ CURRENCY_PATTERN: '#,##0.00\u00A0\u00A4',
+ DEF_CURRENCY_CODE: 'CHF'),
// Number formatting symbols for locale ga.
"ga": new NumberSymbols(
NAME: "ga",
@@ -975,6 +1029,24 @@
PERCENT_PATTERN: '#,##0%',
CURRENCY_PATTERN: '#,##0.00\u00A0\u00A4',
DEF_CURRENCY_CODE: 'EUR'),
+ // Number formatting symbols for locale it_CH.
+ "it_CH": new NumberSymbols(
+ NAME: "it_CH",
+ DECIMAL_SEP: '.',
+ GROUP_SEP: '\u2019',
+ PERCENT: '%',
+ ZERO_DIGIT: '0',
+ PLUS_SIGN: '+',
+ MINUS_SIGN: '-',
+ EXP_SYMBOL: 'E',
+ PERMILL: '\u2030',
+ INFINITY: '\u221E',
+ NAN: 'NaN',
+ DECIMAL_PATTERN: '#,##0.###',
+ SCIENTIFIC_PATTERN: '#E0',
+ PERCENT_PATTERN: '#,##0%',
+ CURRENCY_PATTERN: '\u00A4\u00A0#,##0.00;\u00A4-#,##0.00',
+ DEF_CURRENCY_CODE: 'CHF'),
// Number formatting symbols for locale iw.
"iw": new NumberSymbols(
NAME: "iw",
@@ -1465,6 +1537,24 @@
PERCENT_PATTERN: '#,##0%',
CURRENCY_PATTERN: '#,##0.00\u00A0\u00A4',
DEF_CURRENCY_CODE: 'PLN'),
+ // Number formatting symbols for locale ps.
+ "ps": new NumberSymbols(
+ NAME: "ps",
+ DECIMAL_SEP: '\u066B',
+ GROUP_SEP: '\u066C',
+ PERCENT: '\u066A',
+ ZERO_DIGIT: '\u06F0',
+ PLUS_SIGN: '\u200E+\u200E',
+ MINUS_SIGN: '\u200E-\u200E',
+ EXP_SYMBOL: '\u00D7\u06F1\u06F0^',
+ PERMILL: '\u0609',
+ INFINITY: '\u221E',
+ NAN: 'NaN',
+ DECIMAL_PATTERN: '#,##0.###',
+ SCIENTIFIC_PATTERN: '#E0',
+ PERCENT_PATTERN: '#,##0%',
+ CURRENCY_PATTERN: '#,##0.00\u00A0\u00A4',
+ DEF_CURRENCY_CODE: 'AFN'),
// Number formatting symbols for locale pt.
"pt": new NumberSymbols(
NAME: "pt",
@@ -1599,7 +1689,7 @@
PERCENT: '%',
ZERO_DIGIT: '0',
PLUS_SIGN: '+',
- MINUS_SIGN: '\u2013',
+ MINUS_SIGN: '\u2212',
EXP_SYMBOL: 'e',
PERMILL: '\u2030',
INFINITY: '\u221E',
@@ -2077,6 +2167,47 @@
13: '\u00A4\u00A000\u00A0\u062A\u0631\u0644\u064A\u0648',
14: '\u00A4\u00A0000\u00A0\u062A\u0631\u0644\u064A\u0648',
}),
+ // Compact number symbols for locale ar_DZ.
+ "ar_DZ": new CompactNumberSymbols(COMPACT_DECIMAL_SHORT_PATTERN: const {
+ 3: '0\u00A0\u0623\u0644\u0641',
+ 4: '00\u00A0\u0623\u0644\u0641',
+ 5: '000\u00A0\u0623\u0644\u0641',
+ 6: '0\u00A0\u0645\u0644\u064A\u0648',
+ 7: '00\u00A0\u0645\u0644\u064A\u0648',
+ 8: '000\u00A0\u0645\u0644\u064A\u0648',
+ 9: '0\u00A0\u0645\u0644\u064A\u0627',
+ 10: '00\u00A0\u0645\u0644\u064A\u0627',
+ 11: '000\u00A0\u0645\u0644\u064A\u0627',
+ 12: '0\u00A0\u062A\u0631\u0644\u064A\u0648',
+ 13: '00\u00A0\u062A\u0631\u0644\u064A\u0648',
+ 14: '000\u00A0\u062A\u0631\u0644\u064A\u0648',
+ }, COMPACT_DECIMAL_LONG_PATTERN: const {
+ 3: '0 \u0623\u0644\u0641',
+ 4: '00 \u0623\u0644\u0641',
+ 5: '000 \u0623\u0644\u0641',
+ 6: '0 \u0645\u0644\u064A\u0648\u0646',
+ 7: '00 \u0645\u0644\u064A\u0648\u0646',
+ 8: '000 \u0645\u0644\u064A\u0648\u0646',
+ 9: '0 \u0645\u0644\u064A\u0627\u0631',
+ 10: '00 \u0645\u0644\u064A\u0627\u0631',
+ 11: '000 \u0645\u0644\u064A\u0627\u0631',
+ 12: '0 \u062A\u0631\u064A\u0644\u064A\u0648\u0646',
+ 13: '00 \u062A\u0631\u064A\u0644\u064A\u0648\u0646',
+ 14: '000 \u062A\u0631\u064A\u0644\u064A\u0648\u0646',
+ }, COMPACT_DECIMAL_SHORT_CURRENCY_PATTERN: const {
+ 3: '\u00A4\u00A00\u00A0\u0623\u0644\u0641',
+ 4: '\u00A4\u00A000\u00A0\u0623\u0644\u0641',
+ 5: '\u00A4\u00A0000\u00A0\u0623\u0644\u0641',
+ 6: '\u00A4\u00A00\u00A0\u0645\u0644\u064A\u0648',
+ 7: '\u00A4\u00A000\u00A0\u0645\u0644\u064A\u0648',
+ 8: '\u00A4\u00A0000\u00A0\u0645\u0644\u064A\u0648',
+ 9: '\u00A4\u00A00\u00A0\u0645\u0644\u064A\u0627',
+ 10: '\u00A4\u00A000\u00A0\u0645\u0644\u064A\u0627',
+ 11: '\u00A4\u00A0000\u00A0\u0645\u0644\u064A\u0627',
+ 12: '\u00A4\u00A00\u00A0\u062A\u0631\u0644\u064A\u0648',
+ 13: '\u00A4\u00A000\u00A0\u062A\u0631\u0644\u064A\u0648',
+ 14: '\u00A4\u00A0000\u00A0\u062A\u0631\u0644\u064A\u0648',
+ }),
// Compact number symbols for locale az.
"az": new CompactNumberSymbols(COMPACT_DECIMAL_SHORT_PATTERN: const {
3: '0K',
@@ -2517,9 +2648,9 @@
}),
// Compact number symbols for locale de.
"de": new CompactNumberSymbols(COMPACT_DECIMAL_SHORT_PATTERN: const {
- 3: '0\u00A0Tsd.',
- 4: '00\u00A0Tsd.',
- 5: '000\u00A0Tsd.',
+ 3: '0',
+ 4: '0',
+ 5: '0',
6: '0\u00A0Mio.',
7: '00\u00A0Mio.',
8: '000\u00A0Mio.',
@@ -2558,9 +2689,9 @@
}),
// Compact number symbols for locale de_AT.
"de_AT": new CompactNumberSymbols(COMPACT_DECIMAL_SHORT_PATTERN: const {
- 3: '0\u00A0Tsd.',
- 4: '00\u00A0Tsd.',
- 5: '000\u00A0Tsd.',
+ 3: '0',
+ 4: '0',
+ 5: '0',
6: '0\u00A0Mio.',
7: '00\u00A0Mio.',
8: '000\u00A0Mio.',
@@ -2599,9 +2730,9 @@
}),
// Compact number symbols for locale de_CH.
"de_CH": new CompactNumberSymbols(COMPACT_DECIMAL_SHORT_PATTERN: const {
- 3: '0\u00A0Tsd.',
- 4: '00\u00A0Tsd.',
- 5: '000\u00A0Tsd.',
+ 3: '0',
+ 4: '0',
+ 5: '0',
6: '0\u00A0Mio.',
7: '00\u00A0Mio.',
8: '000\u00A0Mio.',
@@ -2925,6 +3056,47 @@
13: '\u00A400T',
14: '\u00A4000T',
}),
+ // Compact number symbols for locale en_MY.
+ "en_MY": new CompactNumberSymbols(COMPACT_DECIMAL_SHORT_PATTERN: const {
+ 3: '0K',
+ 4: '00K',
+ 5: '000K',
+ 6: '0M',
+ 7: '00M',
+ 8: '000M',
+ 9: '0B',
+ 10: '00B',
+ 11: '000B',
+ 12: '0T',
+ 13: '00T',
+ 14: '000T',
+ }, COMPACT_DECIMAL_LONG_PATTERN: const {
+ 3: '0 thousand',
+ 4: '00 thousand',
+ 5: '000 thousand',
+ 6: '0 million',
+ 7: '00 million',
+ 8: '000 million',
+ 9: '0 billion',
+ 10: '00 billion',
+ 11: '000 billion',
+ 12: '0 trillion',
+ 13: '00 trillion',
+ 14: '000 trillion',
+ }, COMPACT_DECIMAL_SHORT_CURRENCY_PATTERN: const {
+ 3: '\u00A40K',
+ 4: '\u00A400K',
+ 5: '\u00A4000K',
+ 6: '\u00A40M',
+ 7: '\u00A400M',
+ 8: '\u00A4000M',
+ 9: '\u00A40B',
+ 10: '\u00A400B',
+ 11: '\u00A4000B',
+ 12: '\u00A40T',
+ 13: '\u00A400T',
+ 14: '\u00A4000T',
+ }),
// Compact number symbols for locale en_SG.
"en_SG": new CompactNumberSymbols(COMPACT_DECIMAL_SHORT_PATTERN: const {
3: '0K',
@@ -3540,6 +3712,47 @@
13: '00\u00A0bns\u00A0\u00A4',
14: '000\u00A0bns\u00A0\u00A4',
}),
+ // Compact number symbols for locale fr_CH.
+ "fr_CH": new CompactNumberSymbols(COMPACT_DECIMAL_SHORT_PATTERN: const {
+ 3: '0\u00A0k',
+ 4: '00\u00A0k',
+ 5: '000\u00A0k',
+ 6: '0\u00A0M',
+ 7: '00\u00A0M',
+ 8: '000\u00A0M',
+ 9: '0\u00A0Md',
+ 10: '00\u00A0Md',
+ 11: '000\u00A0Md',
+ 12: '0\u00A0Bn',
+ 13: '00\u00A0Bn',
+ 14: '000\u00A0Bn',
+ }, COMPACT_DECIMAL_LONG_PATTERN: const {
+ 3: '0 mille',
+ 4: '00 mille',
+ 5: '000 mille',
+ 6: '0 millions',
+ 7: '00 millions',
+ 8: '000 millions',
+ 9: '0 milliards',
+ 10: '00 milliards',
+ 11: '000 milliards',
+ 12: '0 billions',
+ 13: '00 billions',
+ 14: '000 billions',
+ }, COMPACT_DECIMAL_SHORT_CURRENCY_PATTERN: const {
+ 3: '0\u00A0k\u00A0\u00A4',
+ 4: '00\u00A0k\u00A0\u00A4',
+ 5: '000\u00A0k\u00A0\u00A4',
+ 6: '0\u00A0M\u00A0\u00A4',
+ 7: '00\u00A0M\u00A0\u00A4',
+ 8: '000\u00A0M\u00A0\u00A4',
+ 9: '0\u00A0Md\u00A0\u00A4',
+ 10: '00\u00A0Md\u00A0\u00A4',
+ 11: '000\u00A0Md\u00A0\u00A4',
+ 12: '0\u00A0Bn\u00A0\u00A4',
+ 13: '00\u00A0Bn\u00A0\u00A4',
+ 14: '000\u00A0Bn\u00A0\u00A4',
+ }),
// Compact number symbols for locale ga.
"ga": new CompactNumberSymbols(COMPACT_DECIMAL_SHORT_PATTERN: const {
3: '0k',
@@ -3624,44 +3837,44 @@
}),
// Compact number symbols for locale gsw.
"gsw": new CompactNumberSymbols(COMPACT_DECIMAL_SHORT_PATTERN: const {
- 3: '0\u00A0tsd',
- 4: '00\u00A0tsd',
- 5: '000\u00A0tsd',
- 6: '0\u00A0Mio',
- 7: '00\u00A0Mio',
- 8: '000\u00A0Mio',
- 9: '0\u00A0Mrd',
- 10: '00\u00A0Mrd',
- 11: '000\u00A0Mrd',
- 12: '0\u00A0Bio',
- 13: '00\u00A0Bio',
- 14: '000\u00A0Bio',
+ 3: '0\u00A0Tsg.',
+ 4: '00\u00A0Tsg.',
+ 5: '000\u00A0Tsg.',
+ 6: '0\u00A0Mio.',
+ 7: '00\u00A0Mio.',
+ 8: '000\u00A0Mio.',
+ 9: '0\u00A0Mrd.',
+ 10: '00\u00A0Mrd.',
+ 11: '000\u00A0Mrd.',
+ 12: '0\u00A0Bio.',
+ 13: '00\u00A0Bio.',
+ 14: '000\u00A0Bio.',
}, COMPACT_DECIMAL_LONG_PATTERN: const {
- 3: '0 tausend',
- 4: '00 tausend',
- 5: '000 tausend',
- 6: '0 Millionen',
- 7: '00 Millionen',
- 8: '000 Millionen',
- 9: '0 Milliarden',
- 10: '00 Milliarden',
- 11: '000 Milliarden',
- 12: '0 Billionen',
- 13: '00 Billionen',
- 14: '000 Billionen',
+ 3: '0 Tuusig',
+ 4: '00 Tuusig',
+ 5: '000 Tuusig',
+ 6: '0 Millioone',
+ 7: '00 Millioone',
+ 8: '000 Millioone',
+ 9: '0 Milliarde',
+ 10: '00 Milliarde',
+ 11: '000 Milliarde',
+ 12: '0 Billioone',
+ 13: '00 Billioone',
+ 14: '000 Billioone',
}, COMPACT_DECIMAL_SHORT_CURRENCY_PATTERN: const {
- 3: '0\u00A0tsd\u00A0\u00A4',
- 4: '00\u00A0tsd\u00A0\u00A4',
- 5: '000\u00A0tsd\u00A0\u00A4',
- 6: '0\u00A0Mio\u00A0\u00A4',
- 7: '00\u00A0Mio\u00A0\u00A4',
- 8: '000\u00A0Mio\u00A0\u00A4',
- 9: '0\u00A0Mrd\u00A0\u00A4',
- 10: '00\u00A0Mrd\u00A0\u00A4',
- 11: '000\u00A0Mrd\u00A0\u00A4',
- 12: '0\u00A0Bio\u00A0\u00A4',
- 13: '00\u00A0Bio\u00A0\u00A4',
- 14: '000\u00A0Bio\u00A0\u00A4',
+ 3: '0\u00A0Tsg.\u00A0\u00A4',
+ 4: '00\u00A0Tsg.\u00A0\u00A4',
+ 5: '000\u00A0Tsg.\u00A0\u00A4',
+ 6: '0\u00A0Mio.\u00A0\u00A4',
+ 7: '00\u00A0Mio.\u00A0\u00A4',
+ 8: '000\u00A0Mio.\u00A0\u00A4',
+ 9: '0\u00A0Mrd.\u00A0\u00A4',
+ 10: '00\u00A0Mrd.\u00A0\u00A4',
+ 11: '000\u00A0Mrd.\u00A0\u00A4',
+ 12: '0\u00A0Bio.\u00A0\u00A4',
+ 13: '00\u00A0Bio.\u00A0\u00A4',
+ 14: '000\u00A0Bio.\u00A0\u00A4',
}),
// Compact number symbols for locale gu.
"gu": new CompactNumberSymbols(COMPACT_DECIMAL_SHORT_PATTERN: const {
@@ -4101,6 +4314,47 @@
13: '00\u00A0Bln\u00A0\u00A4',
14: '000\u00A0Bln\u00A0\u00A4',
}),
+ // Compact number symbols for locale it_CH.
+ "it_CH": new CompactNumberSymbols(COMPACT_DECIMAL_SHORT_PATTERN: const {
+ 3: '0',
+ 4: '0',
+ 5: '0',
+ 6: '0\u00A0Mln',
+ 7: '00\u00A0Mln',
+ 8: '000\u00A0Mln',
+ 9: '0\u00A0Mld',
+ 10: '00\u00A0Mld',
+ 11: '000\u00A0Mld',
+ 12: '0\u00A0Bln',
+ 13: '00\u00A0Bln',
+ 14: '000\u00A0Bln',
+ }, COMPACT_DECIMAL_LONG_PATTERN: const {
+ 3: '0 mila',
+ 4: '00 mila',
+ 5: '000 mila',
+ 6: '0 milioni',
+ 7: '00 milioni',
+ 8: '000 milioni',
+ 9: '0 miliardi',
+ 10: '00 miliardi',
+ 11: '000 miliardi',
+ 12: '0 mila miliardi',
+ 13: '00 mila miliardi',
+ 14: '000 mila miliardi',
+ }, COMPACT_DECIMAL_SHORT_CURRENCY_PATTERN: const {
+ 3: '0',
+ 4: '0',
+ 5: '0',
+ 6: '0\u00A0Mio\u00A0\u00A4',
+ 7: '00\u00A0Mio\u00A0\u00A4',
+ 8: '000\u00A0Mio\u00A0\u00A4',
+ 9: '0\u00A0Mrd\u00A0\u00A4',
+ 10: '00\u00A0Mrd\u00A0\u00A4',
+ 11: '000\u00A0Mrd\u00A0\u00A4',
+ 12: '0\u00A0Bln\u00A0\u00A4',
+ 13: '00\u00A0Bln\u00A0\u00A4',
+ 14: '000\u00A0Bln\u00A0\u00A4',
+ }),
// Compact number symbols for locale iw.
"iw": new CompactNumberSymbols(COMPACT_DECIMAL_SHORT_PATTERN: const {
3: '0K',
@@ -5169,6 +5423,34 @@
13: '00\u00A0bln\u00A0\u00A4',
14: '000\u00A0bln\u00A0\u00A4',
}),
+ // Compact number symbols for locale ps.
+ "ps": new CompactNumberSymbols(COMPACT_DECIMAL_SHORT_PATTERN: const {
+ 3: '0K',
+ 4: '00K',
+ 5: '000K',
+ 6: '0M',
+ 7: '00M',
+ 8: '000M',
+ 9: '0G',
+ 10: '00G',
+ 11: '000G',
+ 12: '0T',
+ 13: '00T',
+ 14: '000T',
+ }, COMPACT_DECIMAL_SHORT_CURRENCY_PATTERN: const {
+ 3: '0K\u00A0\u00A4',
+ 4: '00K\u00A0\u00A4',
+ 5: '000K\u00A0\u00A4',
+ 6: '0M\u00A0\u00A4',
+ 7: '00M\u00A0\u00A4',
+ 8: '000M\u00A0\u00A4',
+ 9: '0G\u00A0\u00A4',
+ 10: '00G\u00A0\u00A4',
+ 11: '000G\u00A0\u00A4',
+ 12: '0T\u00A0\u00A4',
+ 13: '00T\u00A0\u00A4',
+ 14: '000T\u00A0\u00A4',
+ }),
// Compact number symbols for locale pt.
"pt": new CompactNumberSymbols(COMPACT_DECIMAL_SHORT_PATTERN: const {
3: '0\u00A0mil',
@@ -5663,44 +5945,44 @@
}),
// Compact number symbols for locale sw.
"sw": new CompactNumberSymbols(COMPACT_DECIMAL_SHORT_PATTERN: const {
- 3: 'elfu\u00A00',
- 4: 'elfu\u00A000',
- 5: 'elfu\u00A0000',
- 6: 'M0',
- 7: 'M00',
- 8: 'M000',
- 9: 'B0',
- 10: 'B00',
- 11: 'B000',
- 12: 'T0',
- 13: 'T00',
- 14: 'T000',
+ 3: 'elfu\u00A00;elfu\u00A0-0',
+ 4: 'elfu\u00A000;elfu\u00A0-00',
+ 5: 'elfu\u00A0000;elfu\u00A0-000',
+ 6: 'M0;M-0',
+ 7: 'M00;M-00',
+ 8: 'M000;M-000',
+ 9: 'B0;B-0',
+ 10: 'B00;B-00',
+ 11: 'B000;B-000',
+ 12: 'T0;T-0',
+ 13: 'T00;T-00',
+ 14: 'T000;T-000',
}, COMPACT_DECIMAL_LONG_PATTERN: const {
- 3: 'Elfu 0',
- 4: 'Elfu 00',
- 5: 'Elfu 000',
- 6: 'Milioni 0',
- 7: 'Milioni 00',
- 8: 'Milioni 000',
- 9: 'Bilioni 0',
- 10: 'Bilioni 00',
- 11: 'Bilioni 000',
- 12: 'Trilioni 0',
- 13: 'Trilioni 00',
- 14: 'Trilioni 000',
+ 3: 'Elfu 0;Elfu -0',
+ 4: 'Elfu 00;Elfu -00',
+ 5: 'Elfu 000;Elfu -000',
+ 6: 'Milioni 0;Milioni -0',
+ 7: 'Milioni 00;Milioni -00',
+ 8: 'Milioni 000;Milioni -000',
+ 9: 'Bilioni 0;Bilioni -0',
+ 10: 'Bilioni 00;Bilioni -00',
+ 11: 'Bilioni 000;Bilioni -000',
+ 12: 'Trilioni 0;Trilioni -0',
+ 13: 'Trilioni 00;Trilioni -00',
+ 14: 'Trilioni 000;Trilioni -000',
}, COMPACT_DECIMAL_SHORT_CURRENCY_PATTERN: const {
- 3: '\u00A4elfu\u00A00',
- 4: '\u00A4elfu\u00A000',
- 5: '\u00A4laki\u00A0000',
- 6: '\u00A4M0',
- 7: '\u00A4M00',
- 8: '\u00A4M000',
- 9: '\u00A4B0',
- 10: '\u00A4B00',
- 11: '\u00A4B000',
- 12: '\u00A4T0',
- 13: '\u00A4T00',
- 14: '\u00A4T000',
+ 3: '\u00A4elfu\u00A00;\u00A4elfu\u00A0-0',
+ 4: '\u00A4elfu\u00A000;\u00A4elfu\u00A0-00',
+ 5: '\u00A4laki\u00A0000;\u00A4laki\u00A0-000',
+ 6: '\u00A4M0;\u00A4M-0',
+ 7: '\u00A4M00;\u00A4M-00',
+ 8: '\u00A4M000;\u00A4M-000',
+ 9: '\u00A4B0;\u00A4B-0',
+ 10: '\u00A4B00;\u00A4B-00',
+ 11: '\u00A4B000;\u00A4B-000',
+ 12: '\u00A4T0;\u00A4T-0',
+ 13: '\u00A4T00;\u00A4T-00',
+ 14: '\u00A4T000;\u00A4T-000',
}),
// Compact number symbols for locale ta.
"ta": new CompactNumberSymbols(COMPACT_DECIMAL_SHORT_PATTERN: const {
@@ -5786,18 +6068,18 @@
}),
// Compact number symbols for locale th.
"th": new CompactNumberSymbols(COMPACT_DECIMAL_SHORT_PATTERN: const {
- 3: '0\u00A0\u0E1E.',
- 4: '0\u00A0\u0E21.',
- 5: '0\u00A0\u0E2A.',
- 6: '0\u00A0\u0E25.',
- 7: '00\u00A0\u0E25.',
- 8: '000\u00A0\u0E25.',
- 9: '0\u00A0\u0E1E.\u0E25.',
- 10: '0\u00A0\u0E21.\u0E25.',
- 11: '0\u00A0\u0E2A.\u0E25.',
- 12: '0\u00A0\u0E25.\u0E25.',
- 13: '00\u00A0\u0E25.\u0E25.',
- 14: '000\u00A0\u0E25.\u0E25.',
+ 3: '0K',
+ 4: '00K',
+ 5: '000K',
+ 6: '0M',
+ 7: '00M',
+ 8: '000M',
+ 9: '0B',
+ 10: '00B',
+ 11: '000B',
+ 12: '0T',
+ 13: '00T',
+ 14: '000T',
}, COMPACT_DECIMAL_LONG_PATTERN: const {
3: '0 \u0E1E\u0E31\u0E19',
4: '0 \u0E2B\u0E21\u0E37\u0E48\u0E19',
@@ -5812,18 +6094,18 @@
13: '00 \u0E25\u0E49\u0E32\u0E19\u0E25\u0E49\u0E32\u0E19',
14: '000 \u0E25\u0E49\u0E32\u0E19\u0E25\u0E49\u0E32\u0E19',
}, COMPACT_DECIMAL_SHORT_CURRENCY_PATTERN: const {
- 3: '\u00A40\u00A0\u0E1E.',
- 4: '\u00A40\u00A0\u0E21.',
- 5: '\u00A40\u00A0\u0E2A.',
- 6: '\u00A40\u00A0\u0E25.',
- 7: '\u00A400\u00A0\u0E25.',
- 8: '\u00A4000\u00A0\u0E25.',
- 9: '\u00A40\u00A0\u0E1E.\u0E25.',
- 10: '\u00A40\u00A0\u0E21.\u0E25.',
- 11: '\u00A40\u00A0\u0E2A.\u0E25.',
- 12: '\u00A40\u00A0\u0E25.\u0E25.',
- 13: '\u00A400\u00A0\u0E25.\u0E25.',
- 14: '\u00A4000\u00A0\u0E25.\u0E25.',
+ 3: '\u00A40K',
+ 4: '\u00A400K',
+ 5: '\u00A4000K',
+ 6: '\u00A40M',
+ 7: '\u00A400M',
+ 8: '\u00A4000M',
+ 9: '\u00A40B',
+ 10: '\u00A400B',
+ 11: '\u00A4000B',
+ 12: '\u00A40T',
+ 13: '\u00A400T',
+ 14: '\u00A4000T',
}),
// Compact number symbols for locale tl.
"tl": new CompactNumberSymbols(COMPACT_DECIMAL_SHORT_PATTERN: const {
@@ -6073,7 +6355,7 @@
}),
// Compact number symbols for locale zh.
"zh": new CompactNumberSymbols(COMPACT_DECIMAL_SHORT_PATTERN: const {
- 3: '0\u5343',
+ 3: '0',
4: '0\u4E07',
5: '00\u4E07',
6: '000\u4E07',
@@ -6086,7 +6368,7 @@
13: '00\u5146',
14: '000\u5146',
}, COMPACT_DECIMAL_LONG_PATTERN: const {
- 3: '0\u5343',
+ 3: '0',
4: '0\u4E07',
5: '00\u4E07',
6: '000\u4E07',
@@ -6099,7 +6381,7 @@
13: '00\u5146',
14: '000\u5146',
}, COMPACT_DECIMAL_SHORT_CURRENCY_PATTERN: const {
- 3: '\u00A40\u5343',
+ 3: '0',
4: '\u00A40\u4E07',
5: '\u00A400\u4E07',
6: '\u00A4000\u4E07',
@@ -6114,7 +6396,7 @@
}),
// Compact number symbols for locale zh_CN.
"zh_CN": new CompactNumberSymbols(COMPACT_DECIMAL_SHORT_PATTERN: const {
- 3: '0\u5343',
+ 3: '0',
4: '0\u4E07',
5: '00\u4E07',
6: '000\u4E07',
@@ -6127,7 +6409,7 @@
13: '00\u5146',
14: '000\u5146',
}, COMPACT_DECIMAL_LONG_PATTERN: const {
- 3: '0\u5343',
+ 3: '0',
4: '0\u4E07',
5: '00\u4E07',
6: '000\u4E07',
@@ -6140,7 +6422,7 @@
13: '00\u5146',
14: '000\u5146',
}, COMPACT_DECIMAL_SHORT_CURRENCY_PATTERN: const {
- 3: '\u00A40\u5343',
+ 3: '0',
4: '\u00A40\u4E07',
5: '\u00A400\u4E07',
6: '\u00A4000\u4E07',
@@ -6168,7 +6450,7 @@
13: '00T',
14: '000T',
}, COMPACT_DECIMAL_LONG_PATTERN: const {
- 3: '0\u5343',
+ 3: '0',
4: '0\u842C',
5: '00\u842C',
6: '000\u842C',
@@ -6196,7 +6478,7 @@
}),
// Compact number symbols for locale zh_TW.
"zh_TW": new CompactNumberSymbols(COMPACT_DECIMAL_SHORT_PATTERN: const {
- 3: '0\u5343',
+ 3: '0',
4: '0\u842C',
5: '00\u842C',
6: '000\u842C',
@@ -6209,7 +6491,7 @@
13: '00\u5146',
14: '000\u5146',
}, COMPACT_DECIMAL_LONG_PATTERN: const {
- 3: '0\u5343',
+ 3: '0',
4: '0\u842C',
5: '00\u842C',
6: '000\u842C',
@@ -6222,7 +6504,7 @@
13: '00\u5146',
14: '000\u5146',
}, COMPACT_DECIMAL_SHORT_CURRENCY_PATTERN: const {
- 3: '\u00A40\u5343',
+ 3: '0',
4: '\u00A40\u842C',
5: '\u00A400\u842C',
6: '\u00A4000\u842C',
diff --git a/lib/src/data/dates/locale_list.dart b/lib/src/data/dates/locale_list.dart
index 1f2bb95..a283b91 100644
--- a/lib/src/data/dates/locale_list.dart
+++ b/lib/src/data/dates/locale_list.dart
@@ -8,6 +8,7 @@
"af",
"am",
"ar",
+ "ar_DZ",
"az",
"be",
"bg",
@@ -29,6 +30,7 @@
"en_GB",
"en_IE",
"en_IN",
+ "en_MY",
"en_SG",
"en_US",
"en_ZA",
@@ -44,6 +46,7 @@
"fil",
"fr",
"fr_CA",
+ "fr_CH",
"ga",
"gl",
"gsw",
@@ -58,6 +61,7 @@
"in",
"is",
"it",
+ "it_CH",
"iw",
"ja",
"ka",
@@ -85,6 +89,7 @@
"or",
"pa",
"pl",
+ "ps",
"pt",
"pt_BR",
"pt_PT",
diff --git a/lib/src/data/dates/patterns/ar_DZ.json b/lib/src/data/dates/patterns/ar_DZ.json
new file mode 100644
index 0000000..720db8c
--- /dev/null
+++ b/lib/src/data/dates/patterns/ar_DZ.json
@@ -0,0 +1 @@
+{"d":"d","E":"ccc","EEEE":"cccc","LLL":"LLL","LLLL":"LLLL","M":"L","Md":"d/M","MEd":"EEE، d/M","MMM":"LLL","MMMd":"d MMM","MMMEd":"EEE، d MMM","MMMM":"LLLL","MMMMd":"d MMMM","MMMMEEEEd":"EEEE، d MMMM","QQQ":"QQQ","QQQQ":"QQQQ","y":"y","yM":"M/y","yMd":"d/M/y","yMEd":"EEE، d/M/y","yMMM":"MMM y","yMMMd":"d MMM، y","yMMMEd":"EEE، d MMM، y","yMMMM":"MMMM y","yMMMMd":"d MMMM، y","yMMMMEEEEd":"EEEE، d MMMM، y","yQQQ":"QQQ y","yQQQQ":"QQQQ y","H":"HH","Hm":"HH:mm","Hms":"HH:mm:ss","j":"h a","jm":"h:mm a","jms":"h:mm:ss a","jmv":"h:mm a v","jmz":"h:mm a z","jz":"h a z","m":"m","ms":"mm:ss","s":"s","v":"v","z":"z","zzzz":"zzzz","ZZZZ":"ZZZZ"}
\ No newline at end of file
diff --git a/lib/src/data/dates/patterns/az.json b/lib/src/data/dates/patterns/az.json
index 4636739..8dca143 100644
--- a/lib/src/data/dates/patterns/az.json
+++ b/lib/src/data/dates/patterns/az.json
@@ -1 +1 @@
-{"d":"d","E":"ccc","EEEE":"cccc","LLL":"LLL","LLLL":"LLLL","M":"L","Md":"dd.MM","MEd":"dd.MM, EEE","MMM":"LLL","MMMd":"d MMM","MMMEd":"d MMM, EEE","MMMM":"LLLL","MMMMd":"MMMM d","MMMMEEEEd":"d MMMM, EEEE","QQQ":"QQQ","QQQQ":"QQQQ","y":"y","yM":"MM.y","yMd":"dd.MM.y","yMEd":"dd.MM.y, EEE","yMMM":"MMM y","yMMMd":"d MMM y","yMMMEd":"d MMM y, EEE","yMMMM":"y MMMM","yMMMMd":"d MMMM y","yMMMMEEEEd":"d MMMM y, EEEE","yQQQ":"y QQQ","yQQQQ":"y QQQQ","H":"HH","Hm":"HH:mm","Hms":"HH:mm:ss","j":"HH","jm":"HH:mm","jms":"HH:mm:ss","jmv":"HH:mm v","jmz":"HH:mm z","jz":"HH z","m":"m","ms":"mm:ss","s":"s","v":"v","z":"z","zzzz":"zzzz","ZZZZ":"ZZZZ"}
\ No newline at end of file
+{"d":"d","E":"ccc","EEEE":"cccc","LLL":"LLL","LLLL":"LLLL","M":"L","Md":"dd.MM","MEd":"dd.MM, EEE","MMM":"LLL","MMMd":"d MMM","MMMEd":"d MMM, EEE","MMMM":"LLLL","MMMMd":"MMMM d","MMMMEEEEd":"d MMMM, EEEE","QQQ":"QQQ","QQQQ":"QQQQ","y":"y","yM":"MM.y","yMd":"dd.MM.y","yMEd":"dd.MM.y, EEE","yMMM":"MMM y","yMMMd":"d MMM y","yMMMEd":"d MMM y, EEE","yMMMM":"MMMM y","yMMMMd":"d MMMM y","yMMMMEEEEd":"d MMMM y, EEEE","yQQQ":"y QQQ","yQQQQ":"y QQQQ","H":"HH","Hm":"HH:mm","Hms":"HH:mm:ss","j":"HH","jm":"HH:mm","jms":"HH:mm:ss","jmv":"HH:mm v","jmz":"HH:mm z","jz":"HH z","m":"m","ms":"mm:ss","s":"s","v":"v","z":"z","zzzz":"zzzz","ZZZZ":"ZZZZ"}
\ No newline at end of file
diff --git a/lib/src/data/dates/patterns/en_MY.json b/lib/src/data/dates/patterns/en_MY.json
new file mode 100644
index 0000000..fef102b
--- /dev/null
+++ b/lib/src/data/dates/patterns/en_MY.json
@@ -0,0 +1 @@
+{"d":"d","E":"ccc","EEEE":"cccc","LLL":"LLL","LLLL":"LLLL","M":"L","Md":"dd/MM","MEd":"EEE, dd/MM","MMM":"LLL","MMMd":"d MMM","MMMEd":"EEE, d MMM","MMMM":"LLLL","MMMMd":"d MMMM","MMMMEEEEd":"EEEE, d MMMM","QQQ":"QQQ","QQQQ":"QQQQ","y":"y","yM":"MM/y","yMd":"dd/MM/y","yMEd":"EEE, dd/MM/y","yMMM":"MMM y","yMMMd":"d MMM y","yMMMEd":"EEE, d MMM y","yMMMM":"MMMM y","yMMMMd":"d MMMM y","yMMMMEEEEd":"EEEE, d MMMM y","yQQQ":"QQQ y","yQQQQ":"QQQQ y","H":"HH","Hm":"HH:mm","Hms":"HH:mm:ss","j":"h a","jm":"h:mm a","jms":"h:mm:ss a","jmv":"h:mm a v","jmz":"h:mm a z","jz":"h a z","m":"m","ms":"mm:ss","s":"s","v":"v","z":"z","zzzz":"zzzz","ZZZZ":"ZZZZ"}
\ No newline at end of file
diff --git a/lib/src/data/dates/patterns/fr_CH.json b/lib/src/data/dates/patterns/fr_CH.json
new file mode 100644
index 0000000..f504c2a
--- /dev/null
+++ b/lib/src/data/dates/patterns/fr_CH.json
@@ -0,0 +1 @@
+{"d":"d","E":"EEE","EEEE":"EEEE","LLL":"LLL","LLLL":"LLLL","M":"L","Md":"dd.MM.","MEd":"EEE, dd.MM.","MMM":"LLL","MMMd":"d MMM","MMMEd":"EEE d MMM","MMMM":"LLLL","MMMMd":"d MMMM","MMMMEEEEd":"EEEE d MMMM","QQQ":"QQQ","QQQQ":"QQQQ","y":"y","yM":"MM.y","yMd":"dd.MM.y","yMEd":"EEE, dd.MM.y","yMMM":"MMM y","yMMMd":"d MMM y","yMMMEd":"EEE d MMM y","yMMMM":"MMMM y","yMMMMd":"d MMMM y","yMMMMEEEEd":"EEEE, d MMMM y","yQQQ":"QQQ y","yQQQQ":"QQQQ y","H":"HH 'h'","Hm":"HH:mm","Hms":"HH:mm:ss","j":"HH 'h'","jm":"HH:mm","jms":"HH:mm:ss","jmv":"HH:mm v","jmz":"HH:mm z","jz":"HH 'h' z","m":"m","ms":"mm:ss","s":"s","v":"v","z":"z","zzzz":"zzzz","ZZZZ":"ZZZZ"}
\ No newline at end of file
diff --git a/lib/src/data/dates/patterns/it_CH.json b/lib/src/data/dates/patterns/it_CH.json
new file mode 100644
index 0000000..5e13920
--- /dev/null
+++ b/lib/src/data/dates/patterns/it_CH.json
@@ -0,0 +1 @@
+{"d":"d","E":"ccc","EEEE":"cccc","LLL":"LLL","LLLL":"LLLL","M":"L","Md":"d/M","MEd":"EEE d/M","MMM":"LLL","MMMd":"d MMM","MMMEd":"EEE d MMM","MMMM":"LLLL","MMMMd":"d MMMM","MMMMEEEEd":"EEEE d MMMM","QQQ":"QQQ","QQQQ":"QQQQ","y":"y","yM":"M/y","yMd":"d/M/y","yMEd":"EEE d/M/y","yMMM":"MMM y","yMMMd":"d MMM y","yMMMEd":"EEE d MMM y","yMMMM":"MMMM y","yMMMMd":"d MMMM y","yMMMMEEEEd":"EEEE, d MMMM y","yQQQ":"QQQ y","yQQQQ":"QQQQ y","H":"HH","Hm":"HH:mm","Hms":"HH:mm:ss","j":"HH","jm":"HH:mm","jms":"HH:mm:ss","jmv":"HH:mm v","jmz":"HH:mm z","jz":"HH z","m":"m","ms":"mm:ss","s":"s","v":"v","z":"z","zzzz":"zzzz","ZZZZ":"ZZZZ"}
\ No newline at end of file
diff --git a/lib/src/data/dates/patterns/lo.json b/lib/src/data/dates/patterns/lo.json
index 4e9dca7..76762f0 100644
--- a/lib/src/data/dates/patterns/lo.json
+++ b/lib/src/data/dates/patterns/lo.json
@@ -1 +1 @@
-{"d":"d","E":"ccc","EEEE":"cccc","LLL":"LLL","LLLL":"LLLL","M":"L","Md":"d/M","MEd":"EEE, d/M","MMM":"LLL","MMMd":"d MMM","MMMEd":"EEE d MMM","MMMM":"LLLL","MMMMd":"MMMM d","MMMMEEEEd":"EEEE d MMMM","QQQ":"QQQ","QQQQ":"QQQQ","y":"y","yM":"M/y","yMd":"d/M/y","yMEd":"EEE, d/M/y","yMMM":"MMM y","yMMMd":"d MMM y","yMMMEd":"EEE, d MMM y","yMMMM":"y MMMM","yMMMMd":"d MMMM y","yMMMMEEEEd":"EEEE, d MMMM y","yQQQ":"QQQ y","yQQQQ":"QQQQ y","H":"HH","Hm":"HH:mm","Hms":"HH:mm:ss","j":"HH","jm":"HH:mm","jms":"HH:mm:ss","jmv":"HH:mm v","jmz":"HH:mm z","jz":"HH z","m":"m","ms":"mm:ss","s":"s","v":"v","z":"z","zzzz":"zzzz","ZZZZ":"ZZZZ"}
\ No newline at end of file
+{"d":"d","E":"ccc","EEEE":"cccc","LLL":"LLL","LLLL":"LLLL","M":"L","Md":"d/M","MEd":"EEE, d/M","MMM":"LLL","MMMd":"d MMM","MMMEd":"EEE d MMM","MMMM":"LLLL","MMMMd":"MMMM d","MMMMEEEEd":"EEEE d MMMM","QQQ":"QQQ","QQQQ":"QQQQ","y":"y","yM":"M/y","yMd":"d/M/y","yMEd":"EEE, d/M/y","yMMM":"MMM y","yMMMd":"d MMM y","yMMMEd":"EEE, d MMM y","yMMMM":"MMMM y","yMMMMd":"d MMMM y","yMMMMEEEEd":"EEEE, d MMMM y","yQQQ":"QQQ y","yQQQQ":"QQQQ y","H":"HH","Hm":"HH:mm","Hms":"HH:mm:ss","j":"HH","jm":"HH:mm","jms":"HH:mm:ss","jmv":"HH:mm v","jmz":"HH:mm z","jz":"HH z","m":"m","ms":"mm:ss","s":"s","v":"v","z":"z","zzzz":"zzzz","ZZZZ":"ZZZZ"}
\ No newline at end of file
diff --git a/lib/src/data/dates/patterns/pa.json b/lib/src/data/dates/patterns/pa.json
index e942ebe..bb1607c 100644
--- a/lib/src/data/dates/patterns/pa.json
+++ b/lib/src/data/dates/patterns/pa.json
@@ -1 +1 @@
-{"d":"d","E":"ccc","EEEE":"cccc","LLL":"LLL","LLLL":"LLLL","M":"L","Md":"d/M","MEd":"EEE, dd-MM.","MMM":"LLL","MMMd":"d MMM","MMMEd":"EEE, d MMM","MMMM":"LLLL","MMMMd":"MMMM d","MMMMEEEEd":"EEEE, d MMMM","QQQ":"QQQ","QQQQ":"QQQQ","y":"y","yM":"M/y","yMd":"d/M/y","yMEd":"EEE, d/M/y","yMMM":"MMM y","yMMMd":"d MMM y","yMMMEd":"EEE, d MMM y","yMMMM":"y MMMM","yMMMMd":"d MMMM y","yMMMMEEEEd":"EEEE, d MMMM y","yQQQ":"QQQ y","yQQQQ":"QQQQ y","H":"HH","Hm":"HH:mm","Hms":"HH:mm:ss","j":"h a","jm":"h:mm a","jms":"h:mm:ss a","jmv":"h:mm a v","jmz":"h:mm a z","jz":"h a z","m":"m","ms":"mm:ss","s":"s","v":"v","z":"z","zzzz":"zzzz","ZZZZ":"ZZZZ"}
\ No newline at end of file
+{"d":"d","E":"ccc","EEEE":"cccc","LLL":"LLL","LLLL":"LLLL","M":"L","Md":"d/M","MEd":"EEE, dd-MM.","MMM":"LLL","MMMd":"d MMM","MMMEd":"EEE, d MMM","MMMM":"LLLL","MMMMd":"MMMM d","MMMMEEEEd":"EEEE, d MMMM","QQQ":"QQQ","QQQQ":"QQQQ","y":"y","yM":"M/y","yMd":"d/M/y","yMEd":"EEE, d/M/y","yMMM":"MMM y","yMMMd":"d MMM y","yMMMEd":"EEE, d MMM y","yMMMM":"MMMM y","yMMMMd":"d MMMM y","yMMMMEEEEd":"EEEE, d MMMM y","yQQQ":"QQQ y","yQQQQ":"QQQQ y","H":"HH","Hm":"HH:mm","Hms":"HH:mm:ss","j":"h a","jm":"h:mm a","jms":"h:mm:ss a","jmv":"h:mm a v","jmz":"h:mm a z","jz":"h a z","m":"m","ms":"mm:ss","s":"s","v":"v","z":"z","zzzz":"zzzz","ZZZZ":"ZZZZ"}
\ No newline at end of file
diff --git a/lib/src/data/dates/patterns/ps.json b/lib/src/data/dates/patterns/ps.json
new file mode 100644
index 0000000..4e9a394
--- /dev/null
+++ b/lib/src/data/dates/patterns/ps.json
@@ -0,0 +1 @@
+{"d":"d","E":"ccc","EEEE":"cccc","LLL":"LLL","LLLL":"LLLL","M":"L","Md":"M/d","MEd":"MM-dd, EEE","MMM":"LLL","MMMd":"MMM d","MMMEd":"MMM d, EEE","MMMM":"LLLL","MMMMd":"d MMMM","MMMMEEEEd":"MMMM d, EEEE","QQQ":"QQQ","QQQQ":"QQQQ","y":"y","yM":"y/M","yMd":"y-MM-dd","yMEd":"y-MM-dd, EEE","yMMM":"y MMM","yMMMd":"y MMM d","yMMMEd":"y MMM d, EEE","yMMMM":"د y د MMMM","yMMMMd":"د y د MMMM d","yMMMMEEEEd":"EEEE د y د MMMM d","yQQQ":"y QQQ","yQQQQ":"y QQQQ","H":"H","Hm":"H:mm","Hms":"H:mm:ss","j":"H","jm":"H:mm","jms":"H:mm:ss","jmv":"HH:mm v","jmz":"HH:mm z","jz":"H (z)","m":"m","ms":"mm:ss","s":"s","v":"v","z":"z","zzzz":"zzzz","ZZZZ":"ZZZZ"}
\ No newline at end of file
diff --git a/lib/src/data/dates/patterns/sd.json b/lib/src/data/dates/patterns/sd.json
new file mode 100644
index 0000000..8e21ba7
--- /dev/null
+++ b/lib/src/data/dates/patterns/sd.json
@@ -0,0 +1 @@
+{"d":"d","E":"ccc","EEEE":"cccc","LLL":"LLL","LLLL":"LLLL","M":"L","Md":"M/d","MEd":"EEE, M/d","MMM":"LLL","MMMd":"MMM d","MMMEd":"EEE, MMM d","MMMM":"LLLL","MMMMd":"MMMM d","MMMMEEEEd":"EEEE, MMMM d","QQQ":"QQQ","QQQQ":"QQQQ","y":"y","yM":"M/y","yMd":"M/d/y","yMEd":"EEE, M/d/y","yMMM":"MMM y","yMMMd":"MMM d, y","yMMMEd":"EEE, MMM d, y","yMMMM":"MMMM y","yMMMMd":"MMMM d, y","yMMMMEEEEd":"EEEE, MMMM d, y","yQQQ":"QQQ y","yQQQQ":"QQQQ y","H":"HH","Hm":"HH:mm","Hms":"HH:mm:ss","j":"h a","jm":"h:mm a","jms":"h:mm:ss a","jmv":"h:mm a v","jmz":"h:mm a z","jz":"h a z","m":"m","ms":"mm:ss","s":"s","v":"v","z":"z","zzzz":"zzzz","ZZZZ":"ZZZZ"}
\ No newline at end of file
diff --git a/lib/src/data/dates/patterns/ur.json b/lib/src/data/dates/patterns/ur.json
index bc124ee..35f5baa 100644
--- a/lib/src/data/dates/patterns/ur.json
+++ b/lib/src/data/dates/patterns/ur.json
@@ -1 +1 @@
-{"d":"d","E":"ccc","EEEE":"cccc","LLL":"LLL","LLLL":"LLLL","M":"L","Md":"d/M","MEd":"EEE، d/M","MMM":"LLL","MMMd":"d MMM","MMMEd":"EEE، d MMM","MMMM":"LLLL","MMMMd":"MMMM d","MMMMEEEEd":"EEEE، d MMMM","QQQ":"QQQ","QQQQ":"QQQQ","y":"y","yM":"M/y","yMd":"d/M/y","yMEd":"EEE، d/M/y","yMMM":"MMM y","yMMMd":"d MMM، y","yMMMEd":"EEE، d MMM، y","yMMMM":"y MMMM","yMMMMd":"d MMMM، y","yMMMMEEEEd":"EEEE، d MMMM، y","yQQQ":"QQQ y","yQQQQ":"QQQQ y","H":"HH","Hm":"HH:mm","Hms":"HH:mm:ss","j":"h a","jm":"h:mm a","jms":"h:mm:ss a","jmv":"h:mm a v","jmz":"h:mm a z","jz":"h a z","m":"m","ms":"mm:ss","s":"s","v":"v","z":"z","zzzz":"zzzz","ZZZZ":"ZZZZ"}
\ No newline at end of file
+{"d":"d","E":"ccc","EEEE":"cccc","LLL":"LLL","LLLL":"LLLL","M":"L","Md":"d/M","MEd":"EEE، d/M","MMM":"LLL","MMMd":"d MMM","MMMEd":"EEE، d MMM","MMMM":"LLLL","MMMMd":"MMMM d","MMMMEEEEd":"EEEE، d MMMM","QQQ":"QQQ","QQQQ":"QQQQ","y":"y","yM":"M/y","yMd":"d/M/y","yMEd":"EEE، d/M/y","yMMM":"MMM y","yMMMd":"d MMM، y","yMMMEd":"EEE، d MMM، y","yMMMM":"MMMM y","yMMMMd":"d MMMM، y","yMMMMEEEEd":"EEEE، d MMMM، y","yQQQ":"QQQ y","yQQQQ":"QQQQ y","H":"HH","Hm":"HH:mm","Hms":"HH:mm:ss","j":"h a","jm":"h:mm a","jms":"h:mm:ss a","jmv":"h:mm a v","jmz":"h:mm a z","jz":"h a z","m":"m","ms":"mm:ss","s":"s","v":"v","z":"z","zzzz":"zzzz","ZZZZ":"ZZZZ"}
\ No newline at end of file
diff --git a/lib/src/data/dates/symbols/ar_DZ.json b/lib/src/data/dates/symbols/ar_DZ.json
new file mode 100644
index 0000000..7dba2c0
--- /dev/null
+++ b/lib/src/data/dates/symbols/ar_DZ.json
@@ -0,0 +1 @@
+{"NAME":"ar_DZ","ERAS":["ق.م","م"],"ERANAMES":["قبل الميلاد","ميلادي"],"NARROWMONTHS":["ج","ف","م","أ","م","ج","ج","أ","س","أ","ن","د"],"STANDALONENARROWMONTHS":["ج","ف","م","أ","م","ج","ج","أ","س","أ","ن","د"],"MONTHS":["جانفي","فيفري","مارس","أفريل","ماي","جوان","جويلية","أوت","سبتمبر","أكتوبر","نوفمبر","ديسمبر"],"STANDALONEMONTHS":["جانفي","فيفري","مارس","أفريل","ماي","جوان","جويلية","أوت","سبتمبر","أكتوبر","نوفمبر","ديسمبر"],"SHORTMONTHS":["جانفي","فيفري","مارس","أفريل","ماي","جوان","جويلية","أوت","سبتمبر","أكتوبر","نوفمبر","ديسمبر"],"STANDALONESHORTMONTHS":["جانفي","فيفري","مارس","أفريل","ماي","جوان","جويلية","أوت","سبتمبر","أكتوبر","نوفمبر","ديسمبر"],"WEEKDAYS":["الأحد","الاثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"],"STANDALONEWEEKDAYS":["الأحد","الاثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"],"SHORTWEEKDAYS":["الأحد","الاثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"],"STANDALONESHORTWEEKDAYS":["الأحد","الاثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"],"NARROWWEEKDAYS":["ح","ن","ث","ر","خ","ج","س"],"STANDALONENARROWWEEKDAYS":["ح","ن","ث","ر","خ","ج","س"],"SHORTQUARTERS":["الربع الأول","الربع الثاني","الربع الثالث","الربع الرابع"],"QUARTERS":["الربع الأول","الربع الثاني","الربع الثالث","الربع الرابع"],"AMPMS":["ص","م"],"DATEFORMATS":["EEEE، d MMMM، y","d MMMM، y","dd/MM/y","d/M/y"],"TIMEFORMATS":["h:mm:ss a zzzz","h:mm:ss a z","h:mm:ss a","h:mm a"],"AVAILABLEFORMATS":null,"FIRSTDAYOFWEEK":5,"WEEKENDRANGE":[4,5],"FIRSTWEEKCUTOFFDAY":4,"DATETIMEFORMATS":["{1} {0}","{1} {0}","{1} {0}","{1} {0}"]}
\ No newline at end of file
diff --git a/lib/src/data/dates/symbols/en_MY.json b/lib/src/data/dates/symbols/en_MY.json
new file mode 100644
index 0000000..1bec747
--- /dev/null
+++ b/lib/src/data/dates/symbols/en_MY.json
@@ -0,0 +1 @@
+{"NAME":"en_MY","ERAS":["BC","AD"],"ERANAMES":["Before Christ","Anno Domini"],"NARROWMONTHS":["J","F","M","A","M","J","J","A","S","O","N","D"],"STANDALONENARROWMONTHS":["J","F","M","A","M","J","J","A","S","O","N","D"],"MONTHS":["January","February","March","April","May","June","July","August","September","October","November","December"],"STANDALONEMONTHS":["January","February","March","April","May","June","July","August","September","October","November","December"],"SHORTMONTHS":["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],"STANDALONESHORTMONTHS":["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],"WEEKDAYS":["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],"STANDALONEWEEKDAYS":["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],"SHORTWEEKDAYS":["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],"STANDALONESHORTWEEKDAYS":["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],"NARROWWEEKDAYS":["S","M","T","W","T","F","S"],"STANDALONENARROWWEEKDAYS":["S","M","T","W","T","F","S"],"SHORTQUARTERS":["Q1","Q2","Q3","Q4"],"QUARTERS":["1st quarter","2nd quarter","3rd quarter","4th quarter"],"AMPMS":["AM","PM"],"DATEFORMATS":["EEEE, d MMMM y","d MMMM y","d MMM y","dd/MM/y"],"TIMEFORMATS":["h:mm:ss a zzzz","h:mm:ss a z","h:mm:ss a","h:mm a"],"AVAILABLEFORMATS":null,"FIRSTDAYOFWEEK":0,"WEEKENDRANGE":[5,6],"FIRSTWEEKCUTOFFDAY":6,"DATETIMEFORMATS":["{1} 'at' {0}","{1} 'at' {0}","{1}, {0}","{1}, {0}"]}
\ No newline at end of file
diff --git a/lib/src/data/dates/symbols/fr_CH.json b/lib/src/data/dates/symbols/fr_CH.json
new file mode 100644
index 0000000..68b4c83
--- /dev/null
+++ b/lib/src/data/dates/symbols/fr_CH.json
@@ -0,0 +1 @@
+{"NAME":"fr_CH","ERAS":["av. J.-C.","ap. J.-C."],"ERANAMES":["avant Jésus-Christ","après Jésus-Christ"],"NARROWMONTHS":["J","F","M","A","M","J","J","A","S","O","N","D"],"STANDALONENARROWMONTHS":["J","F","M","A","M","J","J","A","S","O","N","D"],"MONTHS":["janvier","février","mars","avril","mai","juin","juillet","août","septembre","octobre","novembre","décembre"],"STANDALONEMONTHS":["janvier","février","mars","avril","mai","juin","juillet","août","septembre","octobre","novembre","décembre"],"SHORTMONTHS":["janv.","févr.","mars","avr.","mai","juin","juil.","août","sept.","oct.","nov.","déc."],"STANDALONESHORTMONTHS":["janv.","févr.","mars","avr.","mai","juin","juil.","août","sept.","oct.","nov.","déc."],"WEEKDAYS":["dimanche","lundi","mardi","mercredi","jeudi","vendredi","samedi"],"STANDALONEWEEKDAYS":["dimanche","lundi","mardi","mercredi","jeudi","vendredi","samedi"],"SHORTWEEKDAYS":["dim.","lun.","mar.","mer.","jeu.","ven.","sam."],"STANDALONESHORTWEEKDAYS":["dim.","lun.","mar.","mer.","jeu.","ven.","sam."],"NARROWWEEKDAYS":["D","L","M","M","J","V","S"],"STANDALONENARROWWEEKDAYS":["D","L","M","M","J","V","S"],"SHORTQUARTERS":["T1","T2","T3","T4"],"QUARTERS":["1er trimestre","2e trimestre","3e trimestre","4e trimestre"],"AMPMS":["AM","PM"],"DATEFORMATS":["EEEE, d MMMM y","d MMMM y","d MMM y","dd.MM.yy"],"TIMEFORMATS":["HH.mm:ss 'h' zzzz","HH:mm:ss z","HH:mm:ss","HH:mm"],"AVAILABLEFORMATS":null,"FIRSTDAYOFWEEK":0,"WEEKENDRANGE":[5,6],"FIRSTWEEKCUTOFFDAY":3,"DATETIMEFORMATS":["{1} 'à' {0}","{1} 'à' {0}","{1} 'à' {0}","{1} {0}"]}
\ No newline at end of file
diff --git a/lib/src/data/dates/symbols/gsw.json b/lib/src/data/dates/symbols/gsw.json
index 53c9b20..275b715 100644
--- a/lib/src/data/dates/symbols/gsw.json
+++ b/lib/src/data/dates/symbols/gsw.json
@@ -1 +1 @@
-{"NAME":"gsw","ERAS":["v. Chr.","n. Chr."],"ERANAMES":["v. Chr.","n. Chr."],"NARROWMONTHS":["J","F","M","A","M","J","J","A","S","O","N","D"],"STANDALONENARROWMONTHS":["J","F","M","A","M","J","J","A","S","O","N","D"],"MONTHS":["Januar","Februar","März","April","Mai","Juni","Juli","Auguscht","Septämber","Oktoober","Novämber","Dezämber"],"STANDALONEMONTHS":["Januar","Februar","März","April","Mai","Juni","Juli","Auguscht","Septämber","Oktoober","Novämber","Dezämber"],"SHORTMONTHS":["Jan","Feb","Mär","Apr","Mai","Jun","Jul","Aug","Sep","Okt","Nov","Dez"],"STANDALONESHORTMONTHS":["Jan","Feb","Mär","Apr","Mai","Jun","Jul","Aug","Sep","Okt","Nov","Dez"],"WEEKDAYS":["Sunntig","Määntig","Ziischtig","Mittwuch","Dunschtig","Friitig","Samschtig"],"STANDALONEWEEKDAYS":["Sunntig","Määntig","Ziischtig","Mittwuch","Dunschtig","Friitig","Samschtig"],"SHORTWEEKDAYS":["Su.","Mä.","Zi.","Mi.","Du.","Fr.","Sa."],"STANDALONESHORTWEEKDAYS":["Su.","Mä.","Zi.","Mi.","Du.","Fr.","Sa."],"NARROWWEEKDAYS":["S","M","D","M","D","F","S"],"STANDALONENARROWWEEKDAYS":["S","M","D","M","D","F","S"],"SHORTQUARTERS":["Q1","Q2","Q3","Q4"],"QUARTERS":["1. Quartal","2. Quartal","3. Quartal","4. Quartal"],"AMPMS":["vorm.","nam."],"DATEFORMATS":["EEEE, d. MMMM y","d. MMMM y","dd.MM.y","dd.MM.yy"],"TIMEFORMATS":["HH:mm:ss zzzz","HH:mm:ss z","HH:mm:ss","HH:mm"],"AVAILABLEFORMATS":null,"FIRSTDAYOFWEEK":0,"WEEKENDRANGE":[5,6],"FIRSTWEEKCUTOFFDAY":3,"DATETIMEFORMATS":["{1} {0}","{1} {0}","{1} {0}","{1} {0}"]}
\ No newline at end of file
+{"NAME":"gsw","ERAS":["v. Chr.","n. Chr."],"ERANAMES":["v. Chr.","n. Chr."],"NARROWMONTHS":["J","F","M","A","M","J","J","A","S","O","N","D"],"STANDALONENARROWMONTHS":["J","F","M","A","M","J","J","A","S","O","N","D"],"MONTHS":["Januar","Februar","März","April","Mai","Juni","Juli","Auguscht","Septämber","Oktoober","Novämber","Dezämber"],"STANDALONEMONTHS":["Januar","Februar","März","April","Mai","Juni","Juli","Auguscht","Septämber","Oktoober","Novämber","Dezämber"],"SHORTMONTHS":["Jan","Feb","Mär","Apr","Mai","Jun","Jul","Aug","Sep","Okt","Nov","Dez"],"STANDALONESHORTMONTHS":["Jan","Feb","Mär","Apr","Mai","Jun","Jul","Aug","Sep","Okt","Nov","Dez"],"WEEKDAYS":["Sunntig","Määntig","Ziischtig","Mittwuch","Dunschtig","Friitig","Samschtig"],"STANDALONEWEEKDAYS":["Sunntig","Määntig","Ziischtig","Mittwuch","Dunschtig","Friitig","Samschtig"],"SHORTWEEKDAYS":["Su.","Mä.","Zi.","Mi.","Du.","Fr.","Sa."],"STANDALONESHORTWEEKDAYS":["Su.","Mä.","Zi.","Mi.","Du.","Fr.","Sa."],"NARROWWEEKDAYS":["S","M","D","M","D","F","S"],"STANDALONENARROWWEEKDAYS":["S","M","D","M","D","F","S"],"SHORTQUARTERS":["Q1","Q2","Q3","Q4"],"QUARTERS":["1. Quartal","2. Quartal","3. Quartal","4. Quartal"],"AMPMS":["am Vormittag","am Namittag"],"DATEFORMATS":["EEEE, d. MMMM y","d. MMMM y","dd.MM.y","dd.MM.yy"],"TIMEFORMATS":["HH:mm:ss zzzz","HH:mm:ss z","HH:mm:ss","HH:mm"],"AVAILABLEFORMATS":null,"FIRSTDAYOFWEEK":0,"WEEKENDRANGE":[5,6],"FIRSTWEEKCUTOFFDAY":3,"DATETIMEFORMATS":["{1} {0}","{1} {0}","{1} {0}","{1} {0}"]}
\ No newline at end of file
diff --git a/lib/src/data/dates/symbols/it_CH.json b/lib/src/data/dates/symbols/it_CH.json
new file mode 100644
index 0000000..b67d2b7
--- /dev/null
+++ b/lib/src/data/dates/symbols/it_CH.json
@@ -0,0 +1 @@
+{"NAME":"it_CH","ERAS":["a.C.","d.C."],"ERANAMES":["avanti Cristo","dopo Cristo"],"NARROWMONTHS":["G","F","M","A","M","G","L","A","S","O","N","D"],"STANDALONENARROWMONTHS":["G","F","M","A","M","G","L","A","S","O","N","D"],"MONTHS":["gennaio","febbraio","marzo","aprile","maggio","giugno","luglio","agosto","settembre","ottobre","novembre","dicembre"],"STANDALONEMONTHS":["gennaio","febbraio","marzo","aprile","maggio","giugno","luglio","agosto","settembre","ottobre","novembre","dicembre"],"SHORTMONTHS":["gen","feb","mar","apr","mag","giu","lug","ago","set","ott","nov","dic"],"STANDALONESHORTMONTHS":["gen","feb","mar","apr","mag","giu","lug","ago","set","ott","nov","dic"],"WEEKDAYS":["domenica","lunedì","martedì","mercoledì","giovedì","venerdì","sabato"],"STANDALONEWEEKDAYS":["domenica","lunedì","martedì","mercoledì","giovedì","venerdì","sabato"],"SHORTWEEKDAYS":["dom","lun","mar","mer","gio","ven","sab"],"STANDALONESHORTWEEKDAYS":["dom","lun","mar","mer","gio","ven","sab"],"NARROWWEEKDAYS":["D","L","M","M","G","V","S"],"STANDALONENARROWWEEKDAYS":["D","L","M","M","G","V","S"],"SHORTQUARTERS":["T1","T2","T3","T4"],"QUARTERS":["1º trimestre","2º trimestre","3º trimestre","4º trimestre"],"AMPMS":["AM","PM"],"DATEFORMATS":["EEEE, d MMMM y","d MMMM y","d MMM y","dd.MM.yy"],"TIMEFORMATS":["HH:mm:ss zzzz","HH:mm:ss z","HH:mm:ss","HH:mm"],"AVAILABLEFORMATS":null,"FIRSTDAYOFWEEK":0,"WEEKENDRANGE":[5,6],"FIRSTWEEKCUTOFFDAY":3,"DATETIMEFORMATS":["{1} {0}","{1} {0}","{1}, {0}","{1}, {0}"]}
\ No newline at end of file
diff --git a/lib/src/data/dates/symbols/ps.json b/lib/src/data/dates/symbols/ps.json
new file mode 100644
index 0000000..d6cfd84
--- /dev/null
+++ b/lib/src/data/dates/symbols/ps.json
@@ -0,0 +1 @@
+{"NAME":"ps","ERAS":["له میلاد وړاندې","م."],"ERANAMES":["له میلاد څخه وړاندې","له میلاد څخه وروسته"],"NARROWMONTHS":["1","2","3","4","5","6","7","8","9","10","11","12"],"STANDALONENARROWMONTHS":["1","2","3","4","5","6","7","8","9","10","11","12"],"MONTHS":["جنوري","فبروري","مارچ","اپریل","مۍ","جون","جولای","اګست","سپتمبر","اکتوبر","نومبر","دسمبر"],"STANDALONEMONTHS":["جنوري","فبروري","مارچ","اپریل","مۍ","جون","جولای","اګست","سپتمبر","اکتوبر","نومبر","دسمبر"],"SHORTMONTHS":["جنوري","فبروري","مارچ","اپریل","مۍ","جون","جولای","اګست","سپتمبر","اکتوبر","نومبر","دسمبر"],"STANDALONESHORTMONTHS":["جنوري","فبروري","مارچ","اپریل","مۍ","جون","جولای","اګست","سپتمبر","اکتوبر","نومبر","دسمبر"],"WEEKDAYS":["یکشنبه","دوشنبه","سهشنبه","چهارشنبه","پنجشنبه","جمعه","شنبه"],"STANDALONEWEEKDAYS":["یکشنبه","دوشنبه","سهشنبه","چهارشنبه","پنجشنبه","جمعه","شنبه"],"SHORTWEEKDAYS":["یکشنبه","دوشنبه","سهشنبه","چهارشنبه","پنجشنبه","جمعه","شنبه"],"STANDALONESHORTWEEKDAYS":["یکشنبه","دوشنبه","سهشنبه","چهارشنبه","پنجشنبه","جمعه","شنبه"],"NARROWWEEKDAYS":["S","M","T","W","T","F","S"],"STANDALONENARROWWEEKDAYS":["S","M","T","W","T","F","S"],"SHORTQUARTERS":["لومړۍ ربعه","۲مه ربعه","۳مه ربعه","۴مه ربعه"],"QUARTERS":["لومړۍ ربعه","۲مه ربعه","۳مه ربعه","۴مه ربعه"],"AMPMS":["غ.م.","غ.و."],"DATEFORMATS":["EEEE د y د MMMM d","د y د MMMM d","y MMM d","y/M/d"],"TIMEFORMATS":["H:mm:ss (zzzz)","H:mm:ss (z)","H:mm:ss","H:mm"],"AVAILABLEFORMATS":null,"FIRSTDAYOFWEEK":5,"WEEKENDRANGE":[3,4],"FIRSTWEEKCUTOFFDAY":4,"DATETIMEFORMATS":["{1} {0}","{1} {0}","{1} {0}","{1} {0}"]}
\ No newline at end of file
diff --git a/lib/src/intl/compact_number_format.dart b/lib/src/intl/compact_number_format.dart
index ef4f332..5818018 100644
--- a/lib/src/intl/compact_number_format.dart
+++ b/lib/src/intl/compact_number_format.dart
@@ -4,6 +4,47 @@
part of intl;
+/// An abstract class for compact number styles.
+abstract class _CompactStyleBase {
+ /// The _CompactStyle for the sign of [number], i.e. positive or
+ /// negative.
+ _CompactStyle styleForSign(number);
+
+ /// How many total digits do we expect in the number.
+ ///
+ /// If the pattern is
+ ///
+ /// 4: "00K",
+ ///
+ /// then this is 5, meaning we expect this to be a 5-digit (or more)
+ /// number. We will scale by 1000 and expect 2 integer digits remaining, so we
+ /// get something like '12K'. This is used to find the closest pattern for a
+ /// number.
+ int get totalDigits;
+
+ /// What should we divide the number by in order to print. Normally it is
+ /// either `10^requiredDigits` or 1 if we shouldn't divide at all.
+ int get divisor;
+
+ /// The iterable of all possible styles which we represent.
+ ///
+ /// Normally this will be either a list with just ourself, or of two elements
+ /// for our positive and negative styles.
+ Iterable<_CompactStyle> get allStyles;
+}
+
+/// A compact format with separate styles for positive and negative numbers.
+class _CompactStyleWithNegative extends _CompactStyleBase {
+ _CompactStyleWithNegative(this.positiveStyle, this.negativeStyle);
+ final _CompactStyle positiveStyle;
+ final _CompactStyle negativeStyle;
+ _CompactStyle styleForSign(number) =>
+ number < 0 ? negativeStyle : positiveStyle;
+ int get totalDigits => positiveStyle.totalDigits;
+ int get divisor => positiveStyle.divisor;
+ get allStyles => [positiveStyle, negativeStyle];
+}
+
/// Represents a compact format for a particular base
///
/// For example, 10k can be used to represent 10,000. Corresponds to one of the
@@ -17,7 +58,7 @@
/// expectedDigits: 1, prefix: '', suffix: 'K');
///
/// where expectedDigits is the number of zeros.
-class _CompactStyle {
+class _CompactStyle extends _CompactStyleBase {
_CompactStyle(
{this.pattern,
this.requiredDigits: 0,
@@ -83,6 +124,9 @@
bool get printsAsIs =>
isFallback ||
pattern.replaceAll(new RegExp('[0\u00a0\u00a4]'), '').isEmpty;
+
+ _CompactStyle styleForSign(number) => this;
+ get allStyles => [this];
}
enum _CompactFormatType {
@@ -99,7 +143,7 @@
// COMPACT_DECIMAL_LONG_PATTERN, or COMPACT_DECIMAL_SHORT_CURRENCY_PATTERN
Map<int, String> _patterns;
- List<_CompactStyle> _styles = [];
+ List<_CompactStyleBase> _styles = [];
_CompactNumberFormat(
{String locale,
@@ -122,6 +166,8 @@
case _CompactFormatType.COMPACT_DECIMAL_SHORT_PATTERN:
_patterns = compactSymbols.COMPACT_DECIMAL_SHORT_PATTERN;
break;
+ // TODO(alanknight): Long formats have a one vs. other case,
+ // e.g. million/millions that we don't yet support.
case _CompactFormatType.COMPACT_DECIMAL_LONG_PATTERN:
_patterns = compactSymbols.COMPACT_DECIMAL_LONG_PATTERN ??
compactSymbols.COMPACT_DECIMAL_SHORT_PATTERN;
@@ -132,37 +178,54 @@
default:
throw new ArgumentError.notNull("formatType");
}
- var regex = new RegExp('([^0]*)(0+)(.*)');
_patterns.forEach((int impliedDigits, String pattern) {
- var match = regex.firstMatch(pattern);
- var integerDigits = match.group(2).length;
- var prefix = match.group(1);
- var suffix = match.group(3);
- // If the pattern is just zeros, with no suffix, then we shouldn't divide
- // by the number of digits. e.g. for 'af', the pattern for 3 is '0', but
- // it doesn't mean that 4321 should print as 4. But if the pattern was
- // '0K', then it should print as '4K'. So we have to check if the pattern
- // has a suffix. This seems extremely hacky, but I don't know how else to
- // encode that. Check what other things are doing.
- var divisor = 1;
- if (pattern.replaceAll('0', '').isNotEmpty) {
- divisor = pow(10, impliedDigits - integerDigits + 1);
+ if (pattern.contains(";")) {
+ var patterns = pattern.split(";");
+ _styles.add(new _CompactStyleWithNegative(
+ _createStyle(patterns.first, impliedDigits),
+ _createStyle(patterns.last, impliedDigits)));
+ } else {
+ _styles.add(_createStyle(pattern, impliedDigits));
}
- var style = new _CompactStyle(
- pattern: pattern,
- requiredDigits: impliedDigits,
- expectedDigits: integerDigits,
- prefix: prefix,
- suffix: suffix,
- divisor: divisor);
- _styles.add(style);
});
+
// Reverse the styles so that we look through them from largest to smallest.
_styles = _styles.reversed.toList();
// Add a fallback style that just prints the number.
_styles.add(new _CompactStyle());
}
+ final _regex = new RegExp('([^0]*)(0+)(.*)');
+
+ final _justZeros = new RegExp(r'^0*$');
+
+ /// Does pattern have any additional characters or is it just zeros.
+ bool _hasNonZeroContent(String pattern) => !_justZeros.hasMatch(pattern);
+
+ _CompactStyle _createStyle(String pattern, int impliedDigits) {
+ var match = _regex.firstMatch(pattern);
+ var integerDigits = match.group(2).length;
+ var prefix = match.group(1);
+ var suffix = match.group(3);
+ // If the pattern is just zeros, with no suffix, then we shouldn't divide
+ // by the number of digits. e.g. for 'af', the pattern for 3 is '0', but
+ // it doesn't mean that 4321 should print as 4. But if the pattern was
+ // '0K', then it should print as '4K'. So we have to check if the pattern
+ // has a suffix. This seems extremely hacky, but I don't know how else to
+ // encode that. Check what other things are doing.
+ var divisor = 1;
+ if (_hasNonZeroContent(pattern)) {
+ divisor = pow(10, impliedDigits - integerDigits + 1);
+ }
+ return new _CompactStyle(
+ pattern: pattern,
+ requiredDigits: impliedDigits,
+ expectedDigits: integerDigits,
+ prefix: prefix,
+ suffix: suffix,
+ divisor: divisor);
+ }
+
/// The style in which we will format a particular number.
///
/// This is a temporary variable that is only valid within a call to format.
@@ -246,15 +309,18 @@
}
for (var style in _styles) {
if (digitLength > style.totalDigits) {
- return style;
+ return style.styleForSign(number);
}
}
throw new FormatException(
"No compact style found for number. This should not happen", number);
}
+ Iterable<_CompactStyle> get _stylesForSearching =>
+ _styles.reversed.expand((x) => x.allStyles);
+
num parse(String text) {
- for (var style in _styles.reversed) {
+ for (var style in _stylesForSearching) {
if (text.startsWith(style.prefix) && text.endsWith(style.suffix)) {
var numberText = text.substring(
style.prefix.length, text.length - style.suffix.length);
diff --git a/test/compact_number_test_data.dart b/test/compact_number_test_data.dart
index 122858e..aba7a7e 100644
--- a/test/compact_number_test_data.dart
+++ b/test/compact_number_test_data.dart
@@ -109,6 +109,38 @@
["999444444", "٩٩٩ مليو", "٩٩٩ مليون"],
["9994444444", "٩٫٩٩ مليا", "٩٫٩٩ مليار"],
],
+ "ar_DZ": [
+ ["1", "1", "1"],
+ ["21", "21", "21"],
+ ["321", "321", "321"],
+ ["4321", "4,32 ألف", "4,32 ألف"],
+ ["54321", "54,3 ألف", "54,3 ألف"],
+ ["654321", "654 ألف", "654 ألف"],
+ ["7654321", "7,65 مليو", "7,65 مليون"],
+ ["87654321", "87,7 مليو", "87,7 مليون"],
+ ["987654321", "988 مليو", "988 مليون"],
+ ["1087654321", "1,09 مليا", "1,09 مليار"],
+ ["11987654321", "12 مليا", "12 مليار"],
+ ["129987654321", "130 مليا", "130 مليار"],
+ ["1398987654321", "1,4 ترليو", "1,4 تريليون"],
+ ["14987987654321", "15 ترليو", "15 تريليون"],
+ ["159876987654321", "160 ترليو", "160 تريليون"],
+ ["9", "9", "9"],
+ ["99", "99", "99"],
+ ["999", "999", "999"],
+ ["9999", "10 ألف", "10 ألف"],
+ ["99999", "100 ألف", "100 ألف"],
+ ["99999", "100 ألف", "100 ألف"],
+ ["999999", "1 مليو", "1 مليون"],
+ ["9999999", "10 مليو", "10 ملايين"],
+ ["99999999", "100 مليو", "100 مليون"],
+ ["9994", "9,99 ألف", "9,99 ألف"],
+ ["99944", "99,9 ألف", "99,9 ألف"],
+ ["999444", "999 ألف", "999 ألف"],
+ ["9994444", "9,99 مليو", "9,99 مليون"],
+ ["999444444", "999 مليو", "999 مليون"],
+ ["9994444444", "9,99 مليا", "9,99 مليار"],
+ ],
"az": [
["1", "1", "1"],
["21", "21", "21"],
@@ -465,9 +497,9 @@
["1", "1", "1"],
["21", "21", "21"],
["321", "321", "321"],
- ["4321", "4,32 Tsd.", "4,32 Tausend"],
- ["54321", "54,3 Tsd.", "54,3 Tausend"],
- ["654321", "654 Tsd.", "654 Tausend"],
+ ["4321", "4320", "4,32 Tausend"],
+ ["54321", "54300", "54,3 Tausend"],
+ ["654321", "654000", "654 Tausend"],
["7654321", "7,65 Mio.", "7,65 Millionen"],
["87654321", "87,7 Mio.", "87,7 Millionen"],
["987654321", "988 Mio.", "988 Millionen"],
@@ -480,15 +512,15 @@
["9", "9", "9"],
["99", "99", "99"],
["999", "999", "999"],
- ["9999", "10 Tsd.", "10 Tausend"],
- ["99999", "100 Tsd.", "100 Tausend"],
- ["99999", "100 Tsd.", "100 Tausend"],
+ ["9999", "10000", "10 Tausend"],
+ ["99999", "100000", "100 Tausend"],
+ ["99999", "100000", "100 Tausend"],
["999999", "1 Mio.", "1 Million"],
["9999999", "10 Mio.", "10 Millionen"],
["99999999", "100 Mio.", "100 Millionen"],
- ["9994", "9,99 Tsd.", "9,99 Tausend"],
- ["99944", "99,9 Tsd.", "99,9 Tausend"],
- ["999444", "999 Tsd.", "999 Tausend"],
+ ["9994", "9990", "9,99 Tausend"],
+ ["99944", "99900", "99,9 Tausend"],
+ ["999444", "999000", "999 Tausend"],
["9994444", "9,99 Mio.", "9,99 Millionen"],
["999444444", "999 Mio.", "999 Millionen"],
["9994444444", "9,99 Mrd.", "9,99 Milliarden"],
@@ -497,9 +529,9 @@
["1", "1", "1"],
["21", "21", "21"],
["321", "321", "321"],
- ["4321", "4,32 Tsd.", "4,32 Tausend"],
- ["54321", "54,3 Tsd.", "54,3 Tausend"],
- ["654321", "654 Tsd.", "654 Tausend"],
+ ["4321", "4320", "4,32 Tausend"],
+ ["54321", "54300", "54,3 Tausend"],
+ ["654321", "654000", "654 Tausend"],
["7654321", "7,65 Mio.", "7,65 Millionen"],
["87654321", "87,7 Mio.", "87,7 Millionen"],
["987654321", "988 Mio.", "988 Millionen"],
@@ -512,15 +544,15 @@
["9", "9", "9"],
["99", "99", "99"],
["999", "999", "999"],
- ["9999", "10 Tsd.", "10 Tausend"],
- ["99999", "100 Tsd.", "100 Tausend"],
- ["99999", "100 Tsd.", "100 Tausend"],
+ ["9999", "10000", "10 Tausend"],
+ ["99999", "100000", "100 Tausend"],
+ ["99999", "100000", "100 Tausend"],
["999999", "1 Mio.", "1 Million"],
["9999999", "10 Mio.", "10 Millionen"],
["99999999", "100 Mio.", "100 Millionen"],
- ["9994", "9,99 Tsd.", "9,99 Tausend"],
- ["99944", "99,9 Tsd.", "99,9 Tausend"],
- ["999444", "999 Tsd.", "999 Tausend"],
+ ["9994", "9990", "9,99 Tausend"],
+ ["99944", "99900", "99,9 Tausend"],
+ ["999444", "999000", "999 Tausend"],
["9994444", "9,99 Mio.", "9,99 Millionen"],
["999444444", "999 Mio.", "999 Millionen"],
["9994444444", "9,99 Mrd.", "9,99 Milliarden"],
@@ -529,9 +561,9 @@
["1", "1", "1"],
["21", "21", "21"],
["321", "321", "321"],
- ["4321", "4.32 Tsd.", "4.32 Tausend"],
- ["54321", "54.3 Tsd.", "54.3 Tausend"],
- ["654321", "654 Tsd.", "654 Tausend"],
+ ["4321", "4320", "4.32 Tausend"],
+ ["54321", "54300", "54.3 Tausend"],
+ ["654321", "654000", "654 Tausend"],
["7654321", "7.65 Mio.", "7.65 Millionen"],
["87654321", "87.7 Mio.", "87.7 Millionen"],
["987654321", "988 Mio.", "988 Millionen"],
@@ -544,15 +576,15 @@
["9", "9", "9"],
["99", "99", "99"],
["999", "999", "999"],
- ["9999", "10 Tsd.", "10 Tausend"],
- ["99999", "100 Tsd.", "100 Tausend"],
- ["99999", "100 Tsd.", "100 Tausend"],
+ ["9999", "10000", "10 Tausend"],
+ ["99999", "100000", "100 Tausend"],
+ ["99999", "100000", "100 Tausend"],
["999999", "1 Mio.", "1 Million"],
["9999999", "10 Mio.", "10 Millionen"],
["99999999", "100 Mio.", "100 Millionen"],
- ["9994", "9.99 Tsd.", "9.99 Tausend"],
- ["99944", "99.9 Tsd.", "99.9 Tausend"],
- ["999444", "999 Tsd.", "999 Tausend"],
+ ["9994", "9990", "9.99 Tausend"],
+ ["99944", "99900", "99.9 Tausend"],
+ ["999444", "999000", "999 Tausend"],
["9994444", "9.99 Mio.", "9.99 Millionen"],
["999444444", "999 Mio.", "999 Millionen"],
["9994444444", "9.99 Mrd.", "9.99 Milliarden"],
@@ -1329,33 +1361,33 @@
["1", "1", "1"],
["21", "21", "21"],
["321", "321", "321"],
- ["4321", "4.32K", "4.32K"],
- ["54321", "54.3K", "54.3K"],
- ["654321", "654K", "654K"],
- ["7654321", "7.65M", "7.65M"],
- ["87654321", "87.7M", "87.7M"],
- ["987654321", "988M", "988M"],
- ["1087654321", "1.09G", "1.09G"],
- ["11987654321", "12G", "12G"],
- ["129987654321", "130G", "130G"],
- ["1398987654321", "1.4T", "1.4T"],
- ["14987987654321", "15T", "15T"],
- ["159876987654321", "160T", "160T"],
+ ["4321", "4.32 Tsg.", "4.32 Tuusig"],
+ ["54321", "54.3 Tsg.", "54.3 Tuusig"],
+ ["654321", "654 Tsg.", "654 Tuusig"],
+ ["7654321", "7.65 Mio.", "7.65 Millioone"],
+ ["87654321", "87.7 Mio.", "87.7 Millioone"],
+ ["987654321", "988 Mio.", "988 Millioone"],
+ ["1087654321", "1.09 Mrd.", "1.09 Milliarde"],
+ ["11987654321", "12 Mrd.", "12 Milliarde"],
+ ["129987654321", "130 Mrd.", "130 Milliarde"],
+ ["1398987654321", "1.4 Bio.", "1.4 Billioone"],
+ ["14987987654321", "15 Bio.", "15 Billioone"],
+ ["159876987654321", "160 Bio.", "160 Billioone"],
["9", "9", "9"],
["99", "99", "99"],
["999", "999", "999"],
- ["9999", "10K", "10K"],
- ["99999", "100K", "100K"],
- ["99999", "100K", "100K"],
- ["999999", "1M", "1M"],
- ["9999999", "10M", "10M"],
- ["99999999", "100M", "100M"],
- ["9994", "9.99K", "9.99K"],
- ["99944", "99.9K", "99.9K"],
- ["999444", "999K", "999K"],
- ["9994444", "9.99M", "9.99M"],
- ["999444444", "999M", "999M"],
- ["9994444444", "9.99G", "9.99G"],
+ ["9999", "10 Tsg.", "10 Tuusig"],
+ ["99999", "100 Tsg.", "100 Tuusig"],
+ ["99999", "100 Tsg.", "100 Tuusig"],
+ ["999999", "1 Mio.", "1 Millioon"],
+ ["9999999", "10 Mio.", "10 Millioone"],
+ ["99999999", "100 Mio.", "100 Millioone"],
+ ["9994", "9.99 Tsg.", "9.99 Tuusig"],
+ ["99944", "99.9 Tsg.", "99.9 Tuusig"],
+ ["999444", "999 Tsg.", "999 Tuusig"],
+ ["9994444", "9.99 Mio.", "9.99 Millioone"],
+ ["999444444", "999 Mio.", "999 Millioone"],
+ ["9994444444", "9.99 Mrd.", "9.99 Milliarde"],
],
"gu": [
["1", "1", "1"],
@@ -2583,10 +2615,10 @@
["7654321", "7,65 mi", "7,65 milhões"],
["87654321", "87,7 mi", "87,7 milhões"],
["987654321", "988 mi", "988 milhões"],
- ["1087654321", "1,09 bi", "1,09 bilhões"],
+ ["1087654321", "1,09 bi", "1,09 bilhão"],
["11987654321", "12 bi", "12 bilhões"],
["129987654321", "130 bi", "130 bilhões"],
- ["1398987654321", "1,4 tri", "1,4 trilhões"],
+ ["1398987654321", "1,4 tri", "1,4 trilhão"],
["14987987654321", "15 tri", "15 trilhões"],
["159876987654321", "160 tri", "160 trilhões"],
["9", "9", "9"],
@@ -2615,10 +2647,10 @@
["7654321", "7,65 mi", "7,65 milhões"],
["87654321", "87,7 mi", "87,7 milhões"],
["987654321", "988 mi", "988 milhões"],
- ["1087654321", "1,09 bi", "1,09 bilhões"],
+ ["1087654321", "1,09 bi", "1,09 bilhão"],
["11987654321", "12 bi", "12 bilhões"],
["129987654321", "130 bi", "130 bilhões"],
- ["1398987654321", "1,4 tri", "1,4 trilhões"],
+ ["1398987654321", "1,4 tri", "1,4 trilhão"],
["14987987654321", "15 tri", "15 trilhões"],
["159876987654321", "160 tri", "160 trilhões"],
["9", "9", "9"],
@@ -2650,7 +2682,7 @@
["1087654321", "1,09 mM", "1,09 mil milhões"],
["11987654321", "12 mM", "12 mil milhões"],
["129987654321", "130 mM", "130 mil milhões"],
- ["1398987654321", "1,4 Bi", "1,4 biliões"],
+ ["1398987654321", "1,4 Bi", "1,4 bilião"],
["14987987654321", "15 Bi", "15 biliões"],
["159876987654321", "160 Bi", "160 biliões"],
["9", "9", "9"],
@@ -3057,33 +3089,33 @@
["1", "1", "1"],
["21", "21", "21"],
["321", "321", "321"],
- ["4321", "4.32 พ.", "4.32 พัน"],
- ["54321", "5.43 ม.", "5.43 หมื่น"],
- ["654321", "6.54 ส.", "6.54 แสน"],
- ["7654321", "7.65 ล.", "7.65 ล้าน"],
- ["87654321", "87.7 ล.", "87.7 ล้าน"],
- ["987654321", "988 ล.", "988 ล้าน"],
- ["1087654321", "1.09 พ.ล.", "1.09 พันล้าน"],
- ["11987654321", "1.2 ม.ล.", "1.2 หมื่นล้าน"],
- ["129987654321", "1.3 ส.ล.", "1.3 แสนล้าน"],
- ["1398987654321", "1.4 ล.ล.", "1.4 ล้านล้าน"],
- ["14987987654321", "15 ล.ล.", "15 ล้านล้าน"],
- ["159876987654321", "160 ล.ล.", "160 ล้านล้าน"],
+ ["4321", "4.32K", "4.32 พัน"],
+ ["54321", "54.3K", "5.43 หมื่น"],
+ ["654321", "654K", "6.54 แสน"],
+ ["7654321", "7.65M", "7.65 ล้าน"],
+ ["87654321", "87.7M", "87.7 ล้าน"],
+ ["987654321", "988M", "988 ล้าน"],
+ ["1087654321", "1.09B", "1.09 พันล้าน"],
+ ["11987654321", "12B", "1.2 หมื่นล้าน"],
+ ["129987654321", "130B", "1.3 แสนล้าน"],
+ ["1398987654321", "1.4T", "1.4 ล้านล้าน"],
+ ["14987987654321", "15T", "15 ล้านล้าน"],
+ ["159876987654321", "160T", "160 ล้านล้าน"],
["9", "9", "9"],
["99", "99", "99"],
["999", "999", "999"],
- ["9999", "1 ม.", "1 หมื่น"],
- ["99999", "1 ส.", "1 แสน"],
- ["99999", "1 ส.", "1 แสน"],
- ["999999", "1 ล.", "1 ล้าน"],
- ["9999999", "10 ล.", "10 ล้าน"],
- ["99999999", "100 ล.", "100 ล้าน"],
- ["9994", "9.99 พ.", "9.99 พัน"],
- ["99944", "9.99 ม.", "9.99 หมื่น"],
- ["999444", "9.99 ส.", "9.99 แสน"],
- ["9994444", "9.99 ล.", "9.99 ล้าน"],
- ["999444444", "999 ล.", "999 ล้าน"],
- ["9994444444", "9.99 พ.ล.", "9.99 พันล้าน"],
+ ["9999", "10K", "1 หมื่น"],
+ ["99999", "100K", "1 แสน"],
+ ["99999", "100K", "1 แสน"],
+ ["999999", "1M", "1 ล้าน"],
+ ["9999999", "10M", "10 ล้าน"],
+ ["99999999", "100M", "100 ล้าน"],
+ ["9994", "9.99K", "9.99 พัน"],
+ ["99944", "99.9K", "9.99 หมื่น"],
+ ["999444", "999K", "9.99 แสน"],
+ ["9994444", "9.99M", "9.99 ล้าน"],
+ ["999444444", "999M", "999 ล้าน"],
+ ["9994444444", "9.99B", "9.99 พันล้าน"],
],
"tl": [
["1", "1", "1"],
@@ -3281,7 +3313,7 @@
["1", "1", "1"],
["21", "21", "21"],
["321", "321", "321"],
- ["4321", "4.32千", "4.32千"],
+ ["4321", "4320", "4320"],
["54321", "5.43万", "5.43万"],
["654321", "65.4万", "65.4万"],
["7654321", "765万", "765万"],
@@ -3302,7 +3334,7 @@
["999999", "100万", "100万"],
["9999999", "1000万", "1000万"],
["99999999", "1亿", "1亿"],
- ["9994", "9.99千", "9.99千"],
+ ["9994", "9990", "9990"],
["99944", "9.99万", "9.99万"],
["999444", "99.9万", "99.9万"],
["9994444", "999万", "999万"],
@@ -3313,7 +3345,7 @@
["1", "1", "1"],
["21", "21", "21"],
["321", "321", "321"],
- ["4321", "4.32千", "4.32千"],
+ ["4321", "4320", "4320"],
["54321", "5.43万", "5.43万"],
["654321", "65.4万", "65.4万"],
["7654321", "765万", "765万"],
@@ -3334,7 +3366,7 @@
["999999", "100万", "100万"],
["9999999", "1000万", "1000万"],
["99999999", "1亿", "1亿"],
- ["9994", "9.99千", "9.99千"],
+ ["9994", "9990", "9990"],
["99944", "9.99万", "9.99万"],
["999444", "99.9万", "99.9万"],
["9994444", "999万", "999万"],
@@ -3345,7 +3377,7 @@
["1", "1", "1"],
["21", "21", "21"],
["321", "321", "321"],
- ["4321", "4.32K", "4.32千"],
+ ["4321", "4.32K", "4320"],
["54321", "54.3K", "5.43萬"],
["654321", "654K", "65.4萬"],
["7654321", "7.65M", "765萬"],
@@ -3366,7 +3398,7 @@
["999999", "1M", "100萬"],
["9999999", "10M", "1000萬"],
["99999999", "100M", "1億"],
- ["9994", "9.99K", "9.99千"],
+ ["9994", "9.99K", "9990"],
["99944", "99.9K", "9.99萬"],
["999444", "999K", "99.9萬"],
["9994444", "9.99M", "999萬"],
@@ -3377,7 +3409,7 @@
["1", "1", "1"],
["21", "21", "21"],
["321", "321", "321"],
- ["4321", "4.32千", "4.32千"],
+ ["4321", "4320", "4320"],
["54321", "5.43萬", "5.43萬"],
["654321", "65.4萬", "65.4萬"],
["7654321", "765萬", "765萬"],
@@ -3398,7 +3430,7 @@
["999999", "100萬", "100萬"],
["9999999", "1000萬", "1000萬"],
["99999999", "1億", "1億"],
- ["9994", "9.99千", "9.99千"],
+ ["9994", "9990", "9990"],
["99944", "9.99萬", "9.99萬"],
["999444", "99.9萬", "99.9萬"],
["9994444", "999萬", "999萬"],
@@ -3437,4 +3469,132 @@
["999444444", "999M", "999 isigidi"],
["9994444444", "9.99B", "9.99 isigidi sezigidi"],
],
+ "en_MY": [
+ ["1", "1", "1"],
+ ["21", "21", "21"],
+ ["321", "321", "321"],
+ ["4321", "4.32K", "4.32 thousand"],
+ ["54321", "54.3K", "54.3 thousand"],
+ ["654321", "654K", "654 thousand"],
+ ["7654321", "7.65M", "7.65 million"],
+ ["87654321", "87.7M", "87.7 million"],
+ ["987654321", "988M", "988 million"],
+ ["1087654321", "1.09B", "1.09 billion"],
+ ["11987654321", "12B", "12 billion"],
+ ["129987654321", "130B", "130 billion"],
+ ["1398987654321", "1.4T", "1.4 trillion"],
+ ["14987987654321", "15T", "15 trillion"],
+ ["159876987654321", "160T", "160 trillion"],
+ ["9", "9", "9"],
+ ["99", "99", "99"],
+ ["999", "999", "999"],
+ ["9999", "10K", "10 thousand"],
+ ["99999", "100K", "100 thousand"],
+ ["99999", "100K", "100 thousand"],
+ ["999999", "1M", "1 million"],
+ ["9999999", "10M", "10 million"],
+ ["99999999", "100M", "100 million"],
+ ["9994", "9.99K", "9.99 thousand"],
+ ["99944", "99.9K", "99.9 thousand"],
+ ["999444", "999K", "999 thousand"],
+ ["9994444", "9.99M", "9.99 million"],
+ ["999444444", "999M", "999 million"],
+ ["9994444444", "9.99B", "9.99 billion"],
+ ],
+ "fr_CH": [
+ ["1", "1", "1"],
+ ["21", "21", "21"],
+ ["321", "321", "321"],
+ ["4321", "4,32 k", "4,32 mille"],
+ ["54321", "54,3 k", "54,3 mille"],
+ ["654321", "654 k", "654 mille"],
+ ["7654321", "7,65 M", "7,65 millions"],
+ ["87654321", "87,7 M", "87,7 millions"],
+ ["987654321", "988 M", "988 millions"],
+ ["1087654321", "1,09 Md", "1,09 milliard"],
+ ["11987654321", "12 Md", "12 milliards"],
+ ["129987654321", "130 Md", "130 milliards"],
+ ["1398987654321", "1,4 Bn", "1,4 billion"],
+ ["14987987654321", "15 Bn", "15 billions"],
+ ["159876987654321", "160 Bn", "160 billions"],
+ ["9", "9", "9"],
+ ["99", "99", "99"],
+ ["999", "999", "999"],
+ ["9999", "10 k", "10 mille"],
+ ["99999", "100 k", "100 mille"],
+ ["99999", "100 k", "100 mille"],
+ ["999999", "1 M", "1 million"],
+ ["9999999", "10 M", "10 millions"],
+ ["99999999", "100 M", "100 millions"],
+ ["9994", "9,99 k", "9,99 mille"],
+ ["99944", "99,9 k", "99,9 mille"],
+ ["999444", "999 k", "999 mille"],
+ ["9994444", "9,99 M", "9,99 millions"],
+ ["999444444", "999 M", "999 millions"],
+ ["9994444444", "9,99 Md", "9,99 milliards"],
+ ],
+ "it_CH": [
+ ["1", "1", "1"],
+ ["21", "21", "21"],
+ ["321", "321", "321"],
+ ["4321", "4320", "4.32 mila"],
+ ["54321", "54300", "54.3 mila"],
+ ["654321", "654000", "654 mila"],
+ ["7654321", "7.65 Mln", "7.65 milioni"],
+ ["87654321", "87.7 Mln", "87.7 milioni"],
+ ["987654321", "988 Mln", "988 milioni"],
+ ["1087654321", "1.09 Mld", "1.09 miliardi"],
+ ["11987654321", "12 Mld", "12 miliardi"],
+ ["129987654321", "130 Mld", "130 miliardi"],
+ ["1398987654321", "1.4 Bln", "1.4 mila miliardi"],
+ ["14987987654321", "15 Bln", "15 mila miliardi"],
+ ["159876987654321", "160 Bln", "160 mila miliardi"],
+ ["9", "9", "9"],
+ ["99", "99", "99"],
+ ["999", "999", "999"],
+ ["9999", "10000", "10 mila"],
+ ["99999", "100000", "100 mila"],
+ ["99999", "100000", "100 mila"],
+ ["999999", "1 Mln", "1 milione"],
+ ["9999999", "10 Mln", "10 milioni"],
+ ["99999999", "100 Mln", "100 milioni"],
+ ["9994", "9990", "9.99 mila"],
+ ["99944", "99900", "99.9 mila"],
+ ["999444", "999000", "999 mila"],
+ ["9994444", "9.99 Mln", "9.99 milioni"],
+ ["999444444", "999 Mln", "999 milioni"],
+ ["9994444444", "9.99 Mld", "9.99 miliardi"],
+ ],
+ "ps": [
+ ["1", "۱", "۱"],
+ ["21", "۲۱", "۲۱"],
+ ["321", "۳۲۱", "۳۲۱"],
+ ["4321", "۴٫۳۲K", "۴٫۳۲K"],
+ ["54321", "۵۴٫۳K", "۵۴٫۳K"],
+ ["654321", "۶۵۴K", "۶۵۴K"],
+ ["7654321", "۷٫۶۵M", "۷٫۶۵M"],
+ ["87654321", "۸۷٫۷M", "۸۷٫۷M"],
+ ["987654321", "۹۸۸M", "۹۸۸M"],
+ ["1087654321", "۱٫۰۹G", "۱٫۰۹G"],
+ ["11987654321", "۱۲G", "۱۲G"],
+ ["129987654321", "۱۳۰G", "۱۳۰G"],
+ ["1398987654321", "۱٫۴T", "۱٫۴T"],
+ ["14987987654321", "۱۵T", "۱۵T"],
+ ["159876987654321", "۱۶۰T", "۱۶۰T"],
+ ["9", "۹", "۹"],
+ ["99", "۹۹", "۹۹"],
+ ["999", "۹۹۹", "۹۹۹"],
+ ["9999", "۱۰K", "۱۰K"],
+ ["99999", "۱۰۰K", "۱۰۰K"],
+ ["99999", "۱۰۰K", "۱۰۰K"],
+ ["999999", "۱M", "۱M"],
+ ["9999999", "۱۰M", "۱۰M"],
+ ["99999999", "۱۰۰M", "۱۰۰M"],
+ ["9994", "۹٫۹۹K", "۹٫۹۹K"],
+ ["99944", "۹۹٫۹K", "۹۹٫۹K"],
+ ["999444", "۹۹۹K", "۹۹۹K"],
+ ["9994444", "۹٫۹۹M", "۹٫۹۹M"],
+ ["999444444", "۹۹۹M", "۹۹۹M"],
+ ["9994444444", "۹٫۹۹G", "۹٫۹۹G"],
+ ],
};
diff --git a/test/number_format_compact_test.dart b/test/number_format_compact_test.dart
index 096392f..578ec12 100644
--- a/test/number_format_compact_test.dart
+++ b/test/number_format_compact_test.dart
@@ -134,6 +134,7 @@
"lo", "mk", "my",
"pt_PT", // Seems to differ in appending mil or not after thousands. pt_BR
// does it.
+ "sd", // ICU considers this locale data questionable
"th", // TH Expected abbreviations as '1.09 พ.ล.' rather than '1.09 พ'
"tr", // TR Doesn't have a 0B format, goes directly to 00B, as a result 54321
// just prints as 54321
@@ -150,20 +151,25 @@
//TODO(alanknight): Narrow these down to particular numbers. Often it's just
// 999999.
var problemLocalesLong = [
- "ar",
+ "ar", "ar_DZ",
"be", "bg", "bs",
"ca", "cs", "da", "de", "de_AT", "de_CH", "el", "es", "es_419", "es_ES",
"es_MX", "es_US", "et", "fi",
"fil", // FIL is different, seems like a genuine difference in suffixes
- "fr", "fr_CA", "ga", "gl",
+ "fr", "fr_CA",
+ "fr_CH", // TODO(alanknight): million/millions, supported since CLDR 31.
+ "ga", "gl",
"gsw", // GSW seems like we have long forms and pyICU doesn't
- "hr", "is", "it", "lo", // LO seems to be picking up a different pattern.
+ "hr", "is", "it",
+ "it_CH", "lo", // LO seems to be picking up a different pattern.
"lt", "lv", "mk",
"my", // Seems to come out in the reverse order
"nb", "ne", "no", "no_NO", "pl",
"pt", // PT has some issues with scale as well, but I think it's differences
// in the patterns.
- "pt_BR", "pt_PT", "ro", "ru", "sk", "sl", "sr", "sr_Latn", "sv", "te", "tl",
+ "pt_BR", "pt_PT", "ro", "ru",
+ "sd", // ICU considers this locale data questionable
+ "sk", "sl", "sr", "sr_Latn", "sv", "te", "tl",
"ur",
"uk",
];
diff --git a/test/number_format_test.dart b/test/number_format_test.dart
index 64e8d04..aa0363c 100644
--- a/test/number_format_test.dart
+++ b/test/number_format_test.dart
@@ -164,14 +164,24 @@
var swissConvention = new NumberFormat.currencyPattern('de_CH', r'$');
formatted = swissConvention.format(amount);
var nbsp = new String.fromCharCode(0xa0);
- expect(formatted, r"$" + nbsp + "1'000'000.32");
+ var backquote = new String.fromCharCode(0x2019);
+ expect(formatted,
+ r"$" + nbsp + "1" + backquote + "000" + backquote + "000.32");
readBack = swissConvention.parse(formatted);
expect(readBack, amount);
+ var italianSwiss = new NumberFormat.currencyPattern('it_CH', r'$');
+ formatted = italianSwiss.format(amount);
+ expect(formatted,
+ r"$" + nbsp + "1" + backquote + "000" + backquote + "000.32");
+ readBack = italianSwiss.parse(formatted);
+ expect(readBack, amount);
+
/// Verify we can leave off the currency and it gets filled in.
var plainSwiss = new NumberFormat.currency(locale: 'de_CH');
formatted = plainSwiss.format(amount);
- expect(formatted, r"CHF" + nbsp + "1'000'000.32");
+ expect(formatted,
+ r"CHF" + nbsp + "1" + backquote + "000" + backquote + "000.32");
readBack = plainSwiss.parse(formatted);
expect(readBack, amount);
diff --git a/test/number_test_data.dart b/test/number_test_data.dart
index f79f19c..3206efd 100644
--- a/test/number_test_data.dart
+++ b/test/number_test_data.dart
@@ -5,7 +5,7 @@
/// Test data for numeric formatting from a large set of locales.
///
/// DO NOT EDIT. This file is autogenerated from ICU data.
-/// File generated from CLDR ver. 30.0.2
+/// File generated from CLDR ver. 31.0.1
library number_test_data;
@@ -31,6 +31,13 @@
r"١٢٬٣٠٠ ٪",
r"-١٬٢٣٠ ٪",
r"١٢٣٬٤٥٦٬٧٨٩٬٠٠٠ ٪",
+ "ar_DZ",
+ r"123",
+ r"-12,3",
+ r"1.234.567.890",
+ r"12.300%",
+ r"-1.230%",
+ r"123.456.789.000%",
"az",
r"123",
r"-12,3",
@@ -125,10 +132,10 @@
"de_CH",
r"123",
r"-12.3",
- r"1'234'567'890",
- r"12'300%",
- r"-1'230%",
- r"123'456'789'000%",
+ r"1’234’567’890",
+ r"12’300%",
+ r"-1’230%",
+ r"123’456’789’000%",
"el",
r"123",
r"-12,3",
@@ -621,10 +628,10 @@
r"123 456 789 000 %",
"sl",
r"123",
- r"–12,3",
+ r"−12,3",
r"1.234.567.890",
r"12.300 %",
- r"–1.230 %",
+ r"−1.230 %",
r"123.456.789.000 %",
"sq",
r"123",