Unverified Commit 2b498567 authored by Shi-Hao Hong's avatar Shi-Hao Hong Committed by GitHub

Sort Localization generation output (#44743)

* Sort Localization generation output

- When creating locales that were assumed from existing locales, the
file that is used is non-deterministic. This adds a sort to the iterator
to ensure that the same existing locale is used to generate the assumed
locale
- When generating material, cupertino and date localizations, the generated getters were not sorted. This
introduces an alphabetic sort

* remove main.dart.snapshot
parent d39e2bb7
...@@ -99,7 +99,7 @@ String generateArbBasedLocalizationSubclasses({ ...@@ -99,7 +99,7 @@ String generateArbBasedLocalizationSubclasses({
} }
languageToLocales[locale.languageCode] ??= <LocaleInfo>[]; languageToLocales[locale.languageCode] ??= <LocaleInfo>[];
languageToLocales[locale.languageCode].add(locale); languageToLocales[locale.languageCode].add(locale);
allResourceIdentifiers.addAll(localeToResources[locale].keys); allResourceIdentifiers.addAll(localeToResources[locale].keys.toList()..sort());
} }
// We generate one class per supported language (e.g. // We generate one class per supported language (e.g.
...@@ -155,7 +155,7 @@ String generateArbBasedLocalizationSubclasses({ ...@@ -155,7 +155,7 @@ String generateArbBasedLocalizationSubclasses({
)); ));
output.writeln(generateConstructor(scriptBaseLocale)); output.writeln(generateConstructor(scriptBaseLocale));
final Map<String, String> scriptResources = localeToResources[scriptBaseLocale]; final Map<String, String> scriptResources = localeToResources[scriptBaseLocale];
for (String key in scriptResources.keys) { for (String key in scriptResources.keys.toList()..sort()) {
if (languageResources[key] == scriptResources[key]) if (languageResources[key] == scriptResources[key])
continue; continue;
final Map<String, dynamic> attributes = localeToResourceAttributes[canonicalLocale][key]; final Map<String, dynamic> attributes = localeToResourceAttributes[canonicalLocale][key];
......
...@@ -12,6 +12,10 @@ import 'package:meta/meta.dart'; ...@@ -12,6 +12,10 @@ import 'package:meta/meta.dart';
typedef HeaderGenerator = String Function(String regenerateInstructions); typedef HeaderGenerator = String Function(String regenerateInstructions);
typedef ConstructorGenerator = String Function(LocaleInfo locale); typedef ConstructorGenerator = String Function(LocaleInfo locale);
int sortFilesByPath (FileSystemEntity a, FileSystemEntity b) {
return a.path.compareTo(b.path);
}
/// Simple data class to hold parsed locale. Does not promise validity of any data. /// Simple data class to hold parsed locale. Does not promise validity of any data.
class LocaleInfo implements Comparable<LocaleInfo> { class LocaleInfo implements Comparable<LocaleInfo> {
LocaleInfo({ LocaleInfo({
...@@ -153,7 +157,7 @@ void loadMatchingArbsIntoBundleMaps({ ...@@ -153,7 +157,7 @@ void loadMatchingArbsIntoBundleMaps({
/// overwrite the existing assumed data. /// overwrite the existing assumed data.
final Set<LocaleInfo> assumedLocales = <LocaleInfo>{}; final Set<LocaleInfo> assumedLocales = <LocaleInfo>{};
for (FileSystemEntity entity in directory.listSync()) { for (FileSystemEntity entity in directory.listSync().toList()..sort(sortFilesByPath)) {
final String entityPath = entity.path; final String entityPath = entity.path;
if (FileSystemEntity.isFileSync(entityPath) && filenamePattern.hasMatch(entityPath)) { if (FileSystemEntity.isFileSync(entityPath) && filenamePattern.hasMatch(entityPath)) {
final String localeString = filenamePattern.firstMatch(entityPath)[1]; final String localeString = filenamePattern.firstMatch(entityPath)[1];
......
...@@ -10685,19 +10685,19 @@ class CupertinoLocalizationSrLatn extends CupertinoLocalizationSr { ...@@ -10685,19 +10685,19 @@ class CupertinoLocalizationSrLatn extends CupertinoLocalizationSr {
); );
@override @override
String get datePickerHourSemanticsLabelFew => r'$hour sata'; String get alertDialogLabel => r'Obaveštenje';
@override @override
String get datePickerMinuteSemanticsLabelFew => r'$minute minuta'; String get anteMeridiemAbbreviation => r'pre podne';
@override @override
String get timerPickerHourLabelFew => r'sata'; String get copyButtonLabel => r'Kopiraj';
@override @override
String get timerPickerMinuteLabelFew => r'min'; String get cutButtonLabel => r'Iseci';
@override @override
String get timerPickerSecondLabelFew => r'sek'; String get datePickerHourSemanticsLabelFew => r'$hour sata';
@override @override
String get datePickerHourSemanticsLabelOne => r'$hour sat'; String get datePickerHourSemanticsLabelOne => r'$hour sat';
...@@ -10705,6 +10705,9 @@ class CupertinoLocalizationSrLatn extends CupertinoLocalizationSr { ...@@ -10705,6 +10705,9 @@ class CupertinoLocalizationSrLatn extends CupertinoLocalizationSr {
@override @override
String get datePickerHourSemanticsLabelOther => r'$hour sati'; String get datePickerHourSemanticsLabelOther => r'$hour sati';
@override
String get datePickerMinuteSemanticsLabelFew => r'$minute minuta';
@override @override
String get datePickerMinuteSemanticsLabelOne => r'1 minut'; String get datePickerMinuteSemanticsLabelOne => r'1 minut';
...@@ -10712,16 +10715,16 @@ class CupertinoLocalizationSrLatn extends CupertinoLocalizationSr { ...@@ -10712,16 +10715,16 @@ class CupertinoLocalizationSrLatn extends CupertinoLocalizationSr {
String get datePickerMinuteSemanticsLabelOther => r'$minute minuta'; String get datePickerMinuteSemanticsLabelOther => r'$minute minuta';
@override @override
String get anteMeridiemAbbreviation => r'pre podne'; String get pasteButtonLabel => r'Nalepi';
@override @override
String get postMeridiemAbbreviation => r'po podne'; String get postMeridiemAbbreviation => r'po podne';
@override @override
String get todayLabel => r'Danas'; String get selectAllButtonLabel => r'Izaberi sve';
@override @override
String get alertDialogLabel => r'Obaveštenje'; String get timerPickerHourLabelFew => r'sata';
@override @override
String get timerPickerHourLabelOne => r'sat'; String get timerPickerHourLabelOne => r'sat';
...@@ -10730,28 +10733,25 @@ class CupertinoLocalizationSrLatn extends CupertinoLocalizationSr { ...@@ -10730,28 +10733,25 @@ class CupertinoLocalizationSrLatn extends CupertinoLocalizationSr {
String get timerPickerHourLabelOther => r'sati'; String get timerPickerHourLabelOther => r'sati';
@override @override
String get timerPickerMinuteLabelOne => r'min'; String get timerPickerMinuteLabelFew => r'min';
@override
String get timerPickerMinuteLabelOther => r'min';
@override @override
String get timerPickerSecondLabelOne => r'sek'; String get timerPickerMinuteLabelOne => r'min';
@override @override
String get timerPickerSecondLabelOther => r'sek'; String get timerPickerMinuteLabelOther => r'min';
@override @override
String get cutButtonLabel => r'Iseci'; String get timerPickerSecondLabelFew => r'sek';
@override @override
String get copyButtonLabel => r'Kopiraj'; String get timerPickerSecondLabelOne => r'sek';
@override @override
String get pasteButtonLabel => r'Nalepi'; String get timerPickerSecondLabelOther => r'sek';
@override @override
String get selectAllButtonLabel => r'Izaberi sve'; String get todayLabel => r'Danas';
} }
/// The translations for Swedish (`sv`). /// The translations for Swedish (`sv`).
...@@ -12586,46 +12586,46 @@ class CupertinoLocalizationZhHant extends CupertinoLocalizationZh { ...@@ -12586,46 +12586,46 @@ class CupertinoLocalizationZhHant extends CupertinoLocalizationZh {
); );
@override @override
String get datePickerHourSemanticsLabelOne => r'$hour 點'; String get alertDialogLabel => r'通知';
@override @override
String get datePickerHourSemanticsLabelOther => r'$hour 點'; String get copyButtonLabel => r'複製';
@override @override
String get datePickerMinuteSemanticsLabelOne => r'1 分鐘'; String get cutButtonLabel => r'剪下';
@override @override
String get datePickerMinuteSemanticsLabelOther => r'$minute 分鐘'; String get datePickerDateTimeOrderString => r'date_dayPeriod_time';
@override @override
String get datePickerDateTimeOrderString => r'date_dayPeriod_time'; String get datePickerHourSemanticsLabelOne => r'$hour 點';
@override @override
String get alertDialogLabel => r'通知'; String get datePickerHourSemanticsLabelOther => r'$hour 點';
@override @override
String get timerPickerHourLabelOne => r'小時'; String get datePickerMinuteSemanticsLabelOne => r'1 分鐘';
@override @override
String get timerPickerHourLabelOther => r'小時'; String get datePickerMinuteSemanticsLabelOther => r'$minute 分鐘';
@override @override
String get timerPickerMinuteLabelOne => r'分鐘'; String get pasteButtonLabel => r'貼上';
@override @override
String get timerPickerMinuteLabelOther => r'分鐘'; String get selectAllButtonLabel => r'全選';
@override @override
String get cutButtonLabel => r'剪下'; String get timerPickerHourLabelOne => r'小時';
@override @override
String get copyButtonLabel => r'複製'; String get timerPickerHourLabelOther => r'小時';
@override @override
String get pasteButtonLabel => r'貼上'; String get timerPickerMinuteLabelOne => r'分鐘';
@override @override
String get selectAllButtonLabel => r'全選'; String get timerPickerMinuteLabelOther => r'分鐘';
} }
/// The translations for Chinese, as used in Hong Kong, using the Han script (`zh_Hant_HK`). /// The translations for Chinese, as used in Hong Kong, using the Han script (`zh_Hant_HK`).
......
...@@ -15255,160 +15255,160 @@ class MaterialLocalizationSrLatn extends MaterialLocalizationSr { ...@@ -15255,160 +15255,160 @@ class MaterialLocalizationSrLatn extends MaterialLocalizationSr {
); );
@override @override
String get remainingTextFieldCharacterCountFew => r'Preostala su $remainingCount znaka'; String get aboutListTileTitleRaw => r'O aplikaciji $applicationName';
@override @override
String get selectedRowCountTitleFew => r'Izabrane su $selectedRowCount stavke'; String get alertDialogLabel => r'Obaveštenje';
@override @override
String get openAppDrawerTooltip => r'Otvorite meni za navigaciju'; String get anteMeridiemAbbreviation => r'pre podne';
@override @override
String get backButtonTooltip => r'Nazad'; String get backButtonTooltip => r'Nazad';
@override @override
String get closeButtonTooltip => r'Zatvorite'; String get cancelButtonLabel => r'OTKAŽI';
@override @override
String get deleteButtonTooltip => r'Izbrišite'; String get closeButtonLabel => r'ZATVORI';
@override @override
String get nextMonthTooltip => r'Sledeći mesec'; String get closeButtonTooltip => r'Zatvorite';
@override @override
String get previousMonthTooltip => r'Prethodni mesec'; String get collapsedIconTapHint => r'Proširi';
@override @override
String get nextPageTooltip => r'Sledeća stranica'; String get continueButtonLabel => r'NASTAVI';
@override @override
String get previousPageTooltip => r'Prethodna stranica'; String get copyButtonLabel => r'KOPIRAJ';
@override @override
String get showMenuTooltip => r'Prikaži meni'; String get cutButtonLabel => r'ISECI';
@override @override
String get aboutListTileTitleRaw => r'O aplikaciji $applicationName'; String get deleteButtonTooltip => r'Izbrišite';
@override @override
String get licensesPageTitle => r'Licence'; String get dialogLabel => r'Dijalog';
@override @override
String get pageRowsInfoTitleRaw => r'$firstRow – $lastRow od $rowCount'; String get drawerLabel => r'Meni za navigaciju';
@override @override
String get pageRowsInfoTitleApproximateRaw => r'$firstRow – $lastRow od približno $rowCount'; String get expandedIconTapHint => r'Skupi';
@override @override
String get rowsPerPageTitle => r'Redova po stranici:'; String get hideAccountsLabel => r'Sakrij naloge';
@override @override
String get tabLabelRaw => r'$tabIndex. kartica od $tabCount'; String get licensesPageTitle => r'Licence';
@override @override
String get selectedRowCountTitleOne => r'Izabrana je 1 stavka'; String get modalBarrierDismissLabel => r'Odbaci';
@override @override
String get selectedRowCountTitleOther => r'Izabrano je $selectedRowCount stavki'; String get nextMonthTooltip => r'Sledeći mesec';
@override @override
String get cancelButtonLabel => r'OTKAŽI'; String get nextPageTooltip => r'Sledeća stranica';
@override @override
String get closeButtonLabel => r'ZATVORI'; String get okButtonLabel => r'Potvrdi';
@override @override
String get continueButtonLabel => r'NASTAVI'; String get openAppDrawerTooltip => r'Otvorite meni za navigaciju';
@override @override
String get copyButtonLabel => r'KOPIRAJ'; String get pageRowsInfoTitleRaw => r'$firstRow – $lastRow od $rowCount';
@override @override
String get cutButtonLabel => r'ISECI'; String get pageRowsInfoTitleApproximateRaw => r'$firstRow – $lastRow od približno $rowCount';
@override @override
String get okButtonLabel => r'Potvrdi'; String get pasteButtonLabel => r'NALEPI';
@override @override
String get pasteButtonLabel => r'NALEPI'; String get popupMenuLabel => r'Iskačući meni';
@override @override
String get selectAllButtonLabel => r'IZABERI SVE'; String get postMeridiemAbbreviation => r'po podne';
@override @override
String get viewLicensesButtonLabel => r'PRIKAŽI LICENCE'; String get previousMonthTooltip => r'Prethodni mesec';
@override @override
String get anteMeridiemAbbreviation => r'pre podne'; String get previousPageTooltip => r'Prethodna stranica';
@override @override
String get postMeridiemAbbreviation => r'po podne'; String get refreshIndicatorSemanticLabel => r'Osveži';
@override @override
String get timePickerHourModeAnnouncement => r'Izaberite sate'; String get remainingTextFieldCharacterCountFew => r'Preostala su $remainingCount znaka';
@override @override
String get timePickerMinuteModeAnnouncement => r'Izaberite minute'; String get remainingTextFieldCharacterCountOne => r'Preostao je 1 znak';
@override @override
String get modalBarrierDismissLabel => r'Odbaci'; String get remainingTextFieldCharacterCountOther => r'Preostalo je $remainingCount znakova';
@override @override
String get signedInLabel => r'Prijavljeni ste'; String get reorderItemDown => r'Pomerite nadole';
@override @override
String get hideAccountsLabel => r'Sakrij naloge'; String get reorderItemLeft => r'Pomerite ulevo';
@override @override
String get showAccountsLabel => r'Prikaži naloge'; String get reorderItemRight => r'Pomerite udesno';
@override @override
String get drawerLabel => r'Meni za navigaciju'; String get reorderItemToEnd => r'Pomerite na kraj';
@override @override
String get popupMenuLabel => r'Iskačući meni'; String get reorderItemToStart => r'Pomerite na početak';
@override @override
String get dialogLabel => r'Dijalog'; String get reorderItemUp => r'Pomerite nagore';
@override @override
String get alertDialogLabel => r'Obaveštenje'; String get rowsPerPageTitle => r'Redova po stranici:';
@override @override
String get searchFieldLabel => r'Pretražite'; String get searchFieldLabel => r'Pretražite';
@override @override
String get reorderItemToStart => r'Pomerite na početak'; String get selectAllButtonLabel => r'IZABERI SVE';
@override @override
String get reorderItemToEnd => r'Pomerite na kraj'; String get selectedRowCountTitleFew => r'Izabrane su $selectedRowCount stavke';
@override @override
String get reorderItemUp => r'Pomerite nagore'; String get selectedRowCountTitleOne => r'Izabrana je 1 stavka';
@override @override
String get reorderItemDown => r'Pomerite nadole'; String get selectedRowCountTitleOther => r'Izabrano je $selectedRowCount stavki';
@override @override
String get reorderItemLeft => r'Pomerite ulevo'; String get showAccountsLabel => r'Prikaži naloge';
@override @override
String get reorderItemRight => r'Pomerite udesno'; String get showMenuTooltip => r'Prikaži meni';
@override @override
String get expandedIconTapHint => r'Skupi'; String get signedInLabel => r'Prijavljeni ste';
@override @override
String get collapsedIconTapHint => r'Proširi'; String get tabLabelRaw => r'$tabIndex. kartica od $tabCount';
@override @override
String get remainingTextFieldCharacterCountOne => r'Preostao je 1 znak'; String get timePickerHourModeAnnouncement => r'Izaberite sate';
@override @override
String get remainingTextFieldCharacterCountOther => r'Preostalo je $remainingCount znakova'; String get timePickerMinuteModeAnnouncement => r'Izaberite minute';
@override @override
String get refreshIndicatorSemanticLabel => r'Osveži'; String get viewLicensesButtonLabel => r'PRIKAŽI LICENCE';
} }
/// The translations for Swedish (`sv`). /// The translations for Swedish (`sv`).
...@@ -17907,142 +17907,142 @@ class MaterialLocalizationZhHant extends MaterialLocalizationZh { ...@@ -17907,142 +17907,142 @@ class MaterialLocalizationZhHant extends MaterialLocalizationZh {
); );
@override @override
String get tabLabelRaw => r'第 $tabIndex 個分頁 (共 $tabCount 個)'; String get aboutListTileTitleRaw => r'關於$applicationName';
@override @override
String get showAccountsLabel => r'顯示帳戶'; String get alertDialogLabel => r'通知';
@override @override
String get modalBarrierDismissLabel => r'關閉'; String get closeButtonLabel => r'關閉';
@override @override
String get hideAccountsLabel => r'隱藏帳戶'; String get closeButtonTooltip => r'關閉';
@override @override
String get signedInLabel => r'已登入帳戶'; String get collapsedIconTapHint => r'展開';
@override @override
String get openAppDrawerTooltip => r'開啟導覽選單'; String get continueButtonLabel => r'繼續';
@override @override
String get closeButtonTooltip => r'關閉'; String get copyButtonLabel => r'複製';
@override @override
String get deleteButtonTooltip => r'刪除'; String get cutButtonLabel => r'剪下';
@override @override
String get nextMonthTooltip => r'下個月'; String get deleteButtonTooltip => r'刪除';
@override @override
String get previousMonthTooltip => r'上個月'; String get dialogLabel => r'對話方塊';
@override @override
String get nextPageTooltip => r'下一頁'; String get drawerLabel => r'導覽選單';
@override @override
String get previousPageTooltip => r'上一頁'; String get expandedIconTapHint => r'收合';
@override @override
String get showMenuTooltip => r'顯示選單'; String get hideAccountsLabel => r'隱藏帳戶';
@override @override
String get aboutListTileTitleRaw => r'關於「$applicationName」'; String get licensesPageTitle => r'授權';
@override @override
String get licensesPageTitle => r'授權'; String get modalBarrierDismissLabel => r'拒絕';
@override @override
String get pageRowsInfoTitleRaw => r'第 $firstRow - $lastRow 列 (總共 $rowCount 列)'; String get nextMonthTooltip => r'下個月';
@override @override
String get pageRowsInfoTitleApproximateRaw => r'第 $firstRow - $lastRow 列 (總共約 $rowCount 列)'; String get nextPageTooltip => r'下一頁';
@override @override
String get rowsPerPageTitle => r'每頁列數:'; String get okButtonLabel => r'確定';
@override @override
String get selectedRowCountTitleOne => r'已選取 1 個項目'; String get openAppDrawerTooltip => r'開啟導覽選單';
@override @override
String get selectedRowCountTitleOther => r'已選取 $selectedRowCount 個項目'; String get pageRowsInfoTitleRaw => r'第 $firstRow 至 $lastRow 列,共 $rowCount 列';
@override @override
String get closeButtonLabel => r'關閉'; String get pageRowsInfoTitleApproximateRaw => r'第 $firstRow 至 $lastRow 列,共約 $rowCount 列';
@override @override
String get continueButtonLabel => r'繼續'; String get pasteButtonLabel => r'貼上';
@override @override
String get copyButtonLabel => r'複製'; String get popupMenuLabel => r'彈出式選單';
@override @override
String get cutButtonLabel => r'剪下'; String get previousMonthTooltip => r'上個月';
@override @override
String get okButtonLabel => r'確定'; String get previousPageTooltip => r'上一頁';
@override @override
String get pasteButtonLabel => r'貼上'; String get refreshIndicatorSemanticLabel => r'重新整理';
@override @override
String get selectAllButtonLabel => r'全選'; String get remainingTextFieldCharacterCountOne => r'尚餘 1 個字元';
@override @override
String get viewLicensesButtonLabel => r'查看授權'; String get remainingTextFieldCharacterCountOther => r'尚餘 $remainingCount 個字元';
@override @override
String get timePickerHourModeAnnouncement => r'選取小時數'; String get reorderItemDown => r'向下移';
@override @override
String get timePickerMinuteModeAnnouncement => r'選取分鐘數'; String get reorderItemLeft => r'向左移';
@override @override
String get drawerLabel => r'導覽選單'; String get reorderItemRight => r'向右移';
@override @override
String get popupMenuLabel => r'彈出式選單'; String get reorderItemToEnd => r'移到最後';
@override @override
String get dialogLabel => r'對話方塊'; String get reorderItemToStart => r'移到開頭';
@override @override
String get alertDialogLabel => r'快訊'; String get reorderItemUp => r'向上移';
@override @override
String get searchFieldLabel => r'搜尋'; String get rowsPerPageTitle => r'每頁列數:';
@override @override
String get reorderItemToStart => r'移至開頭'; String get searchFieldLabel => r'搜尋';
@override @override
String get reorderItemToEnd => r'移至結尾'; String get selectAllButtonLabel => r'全選';
@override @override
String get reorderItemUp => r'向上移'; String get selectedRowCountTitleOne => r'已選取 1 個項目';
@override @override
String get reorderItemDown => r'向下移'; String get selectedRowCountTitleOther => r'已選取 $selectedRowCount 個項目';
@override @override
String get reorderItemLeft => r'向左移'; String get showAccountsLabel => r'顯示帳戶';
@override @override
String get reorderItemRight => r'向右移'; String get showMenuTooltip => r'顯示選單';
@override @override
String get expandedIconTapHint => r'收合'; String get signedInLabel => r'已登入';
@override @override
String get collapsedIconTapHint => r'展開'; String get tabLabelRaw => r'第 $tabIndex 個標籤,總共 $tabCount 個';
@override @override
String get remainingTextFieldCharacterCountOne => r'還可輸入 1 個字元'; String get timePickerHourModeAnnouncement => r'揀選小時';
@override @override
String get remainingTextFieldCharacterCountOther => r'還可輸入 $remainingCount 個字元'; String get timePickerMinuteModeAnnouncement => r'揀選分鐘';
@override @override
String get refreshIndicatorSemanticLabel => r'重新整理'; String get viewLicensesButtonLabel => r'查看授權';
} }
/// The translations for Chinese, as used in Hong Kong, using the Han script (`zh_Hant_HK`). /// The translations for Chinese, as used in Hong Kong, using the Han script (`zh_Hant_HK`).
...@@ -18067,69 +18067,69 @@ class MaterialLocalizationZhHantHk extends MaterialLocalizationZhHant { ...@@ -18067,69 +18067,69 @@ class MaterialLocalizationZhHantHk extends MaterialLocalizationZhHant {
decimalFormat: decimalFormat, decimalFormat: decimalFormat,
twoDigitZeroPaddedFormat: twoDigitZeroPaddedFormat, twoDigitZeroPaddedFormat: twoDigitZeroPaddedFormat,
); );
}
@override /// The translations for Chinese, as used in Taiwan, using the Han script (`zh_Hant_TW`).
String get tabLabelRaw => r'第 $tabIndex 個標籤,總共 $tabCount 個'; class MaterialLocalizationZhHantTw extends MaterialLocalizationZhHant {
/// Create an instance of the translation bundle for Chinese, as used in Taiwan, using the Han script.
///
/// For details on the meaning of the arguments, see [GlobalMaterialLocalizations].
const MaterialLocalizationZhHantTw({
String localeName = 'zh_Hant_TW',
@required intl.DateFormat fullYearFormat,
@required intl.DateFormat mediumDateFormat,
@required intl.DateFormat longDateFormat,
@required intl.DateFormat yearMonthFormat,
@required intl.NumberFormat decimalFormat,
@required intl.NumberFormat twoDigitZeroPaddedFormat,
}) : super(
localeName: localeName,
fullYearFormat: fullYearFormat,
mediumDateFormat: mediumDateFormat,
longDateFormat: longDateFormat,
yearMonthFormat: yearMonthFormat,
decimalFormat: decimalFormat,
twoDigitZeroPaddedFormat: twoDigitZeroPaddedFormat,
);
@override @override
String get modalBarrierDismissLabel => r'拒絕'; String get tabLabelRaw => r'第 $tabIndex 個分頁 (共 $tabCount 個)';
@override @override
String get signedInLabel => r'已登入'; String get modalBarrierDismissLabel => r'關閉';
@override @override
String get aboutListTileTitleRaw => r'關於$applicationName'; String get signedInLabel => r'已登入帳戶';
@override @override
String get pageRowsInfoTitleRaw => r'第 $firstRow 至 $lastRow 列,共 $rowCount 列'; String get aboutListTileTitleRaw => r'關於「$applicationName」';
@override @override
String get pageRowsInfoTitleApproximateRaw => r'第 $firstRow 至 $lastRow 列,共約 $rowCount 列'; String get pageRowsInfoTitleRaw => r'第 $firstRow - $lastRow 列 (總共 $rowCount 列)';
@override @override
String get timePickerHourModeAnnouncement => r'揀選小時'; String get pageRowsInfoTitleApproximateRaw => r'第 $firstRow - $lastRow 列 (總共約 $rowCount 列)';
@override @override
String get timePickerMinuteModeAnnouncement => r'揀選分鐘'; String get timePickerHourModeAnnouncement => r'選取小時數';
@override @override
String get alertDialogLabel => r'通知'; String get timePickerMinuteModeAnnouncement => r'選取分鐘數';
@override @override
String get reorderItemToStart => r'移到開頭'; String get alertDialogLabel => r'快訊';
@override @override
String get reorderItemToEnd => r'移到最後'; String get reorderItemToStart => r'移至開頭';
@override @override
String get remainingTextFieldCharacterCountOne => r'尚餘 1 個字元'; String get reorderItemToEnd => r'移至結尾';
@override @override
String get remainingTextFieldCharacterCountOther => r'尚餘 $remainingCount 個字元'; String get remainingTextFieldCharacterCountOne => r'還可輸入 1 個字元';
}
/// The translations for Chinese, as used in Taiwan, using the Han script (`zh_Hant_TW`). @override
class MaterialLocalizationZhHantTw extends MaterialLocalizationZhHant { String get remainingTextFieldCharacterCountOther => r'還可輸入 $remainingCount 個字元';
/// Create an instance of the translation bundle for Chinese, as used in Taiwan, using the Han script.
///
/// For details on the meaning of the arguments, see [GlobalMaterialLocalizations].
const MaterialLocalizationZhHantTw({
String localeName = 'zh_Hant_TW',
@required intl.DateFormat fullYearFormat,
@required intl.DateFormat mediumDateFormat,
@required intl.DateFormat longDateFormat,
@required intl.DateFormat yearMonthFormat,
@required intl.NumberFormat decimalFormat,
@required intl.NumberFormat twoDigitZeroPaddedFormat,
}) : super(
localeName: localeName,
fullYearFormat: fullYearFormat,
mediumDateFormat: mediumDateFormat,
longDateFormat: longDateFormat,
yearMonthFormat: yearMonthFormat,
decimalFormat: decimalFormat,
twoDigitZeroPaddedFormat: twoDigitZeroPaddedFormat,
);
} }
/// The translations for Zulu (`zu`). /// The translations for Zulu (`zu`).
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment