Add support for the Kazakh language (#31578)

diff --git a/packages/flutter_localizations/lib/src/l10n/generated_date_localizations.dart b/packages/flutter_localizations/lib/src/l10n/generated_date_localizations.dart
index 3f11af3..7e1f809 100644
--- a/packages/flutter_localizations/lib/src/l10n/generated_date_localizations.dart
+++ b/packages/flutter_localizations/lib/src/l10n/generated_date_localizations.dart
@@ -6458,6 +6458,187 @@
       r'''{1} {0}'''
     ],
   },
+  'kk': <String, dynamic>{
+    'NAME': r'''kk''',
+    'ERAS': <dynamic>[r'''б.з.д.''', r'''б.з.'''],
+    'ERANAMES': <dynamic>[
+      r'''Біздің заманымызға дейін''',
+      r'''біздің заманымыз'''
+    ],
+    'NARROWMONTHS': <dynamic>[
+      r'''Қ''',
+      r'''А''',
+      r'''Н''',
+      r'''С''',
+      r'''М''',
+      r'''М''',
+      r'''Ш''',
+      r'''Т''',
+      r'''Қ''',
+      r'''Қ''',
+      r'''Қ''',
+      r'''Ж'''
+    ],
+    'STANDALONENARROWMONTHS': <dynamic>[
+      r'''Қ''',
+      r'''А''',
+      r'''Н''',
+      r'''С''',
+      r'''М''',
+      r'''М''',
+      r'''Ш''',
+      r'''Т''',
+      r'''Қ''',
+      r'''Қ''',
+      r'''Қ''',
+      r'''Ж'''
+    ],
+    'MONTHS': <dynamic>[
+      r'''қаңтар''',
+      r'''ақпан''',
+      r'''наурыз''',
+      r'''сәуір''',
+      r'''мамыр''',
+      r'''маусым''',
+      r'''шілде''',
+      r'''тамыз''',
+      r'''қыркүйек''',
+      r'''қазан''',
+      r'''қараша''',
+      r'''желтоқсан'''
+    ],
+    'STANDALONEMONTHS': <dynamic>[
+      r'''Қаңтар''',
+      r'''Ақпан''',
+      r'''Наурыз''',
+      r'''Сәуір''',
+      r'''Мамыр''',
+      r'''Маусым''',
+      r'''Шілде''',
+      r'''Тамыз''',
+      r'''Қыркүйек''',
+      r'''Қазан''',
+      r'''Қараша''',
+      r'''Желтоқсан'''
+    ],
+    'SHORTMONTHS': <dynamic>[
+      r'''қаң.''',
+      r'''ақп.''',
+      r'''нау.''',
+      r'''сәу.''',
+      r'''мам.''',
+      r'''мау.''',
+      r'''шіл.''',
+      r'''там.''',
+      r'''қыр.''',
+      r'''қаз.''',
+      r'''қар.''',
+      r'''жел.'''
+    ],
+    'STANDALONESHORTMONTHS': <dynamic>[
+      r'''Қаң.''',
+      r'''Ақп.''',
+      r'''Нау.''',
+      r'''Сәу.''',
+      r'''Мам.''',
+      r'''Мау.''',
+      r'''Шіл.''',
+      r'''Там.''',
+      r'''Қыр.''',
+      r'''Қаз.''',
+      r'''Қар.''',
+      r'''Жел.'''
+    ],
+    'WEEKDAYS': <dynamic>[
+      r'''жексенбі''',
+      r'''дүйсенбі''',
+      r'''сейсенбі''',
+      r'''сәрсенбі''',
+      r'''бейсенбі''',
+      r'''жұма''',
+      r'''сенбі'''
+    ],
+    'STANDALONEWEEKDAYS': <dynamic>[
+      r'''Жексенбі''',
+      r'''Дүйсенбі''',
+      r'''Сейсенбі''',
+      r'''Сәрсенбі''',
+      r'''Бейсенбі''',
+      r'''Жұма''',
+      r'''Сенбі'''
+    ],
+    'SHORTWEEKDAYS': <dynamic>[
+      r'''Жс''',
+      r'''Дс''',
+      r'''Сс''',
+      r'''Ср''',
+      r'''Бс''',
+      r'''Жм''',
+      r'''Сб'''
+    ],
+    'STANDALONESHORTWEEKDAYS': <dynamic>[
+      r'''Жс''',
+      r'''Дс''',
+      r'''Сс''',
+      r'''Ср''',
+      r'''Бс''',
+      r'''Жм''',
+      r'''Сб'''
+    ],
+    'NARROWWEEKDAYS': <dynamic>[
+      r'''Ж''',
+      r'''Д''',
+      r'''С''',
+      r'''С''',
+      r'''Б''',
+      r'''Ж''',
+      r'''С'''
+    ],
+    'STANDALONENARROWWEEKDAYS': <dynamic>[
+      r'''Ж''',
+      r'''Д''',
+      r'''С''',
+      r'''С''',
+      r'''Б''',
+      r'''Ж''',
+      r'''С'''
+    ],
+    'SHORTQUARTERS': <dynamic>[
+      r'''І тқс.''',
+      r'''ІІ тқс.''',
+      r'''ІІІ тқс.''',
+      r'''IV тқс.'''
+    ],
+    'QUARTERS': <dynamic>[
+      r'''І тоқсан''',
+      r'''ІІ тоқсан''',
+      r'''ІІІ тоқсан''',
+      r'''IV тоқсан'''
+    ],
+    'AMPMS': <dynamic>[r'''AM''', r'''PM'''],
+    'DATEFORMATS': <dynamic>[
+      r"""y 'ж'. d MMMM, EEEE""",
+      r"""y 'ж'. d MMMM""",
+      r"""y 'ж'. dd MMM""",
+      r'''dd.MM.yy'''
+    ],
+    'TIMEFORMATS': <dynamic>[
+      r'''HH:mm:ss zzzz''',
+      r'''HH:mm:ss z''',
+      r'''HH:mm:ss''',
+      r'''HH:mm'''
+    ],
+    'AVAILABLEFORMATS': null,
+    'FIRSTDAYOFWEEK': 0,
+    'WEEKENDRANGE': <dynamic>[5, 6],
+    'FIRSTWEEKCUTOFFDAY': 6,
+    'DATETIMEFORMATS': <dynamic>[
+      r'''{1}, {0}''',
+      r'''{1}, {0}''',
+      r'''{1}, {0}''',
+      r'''{1}, {0}'''
+    ],
+  },
   'km': <String, dynamic>{
     'NAME': r'''km''',
     'ERAS': <dynamic>[r'''មុន គ.ស.''', r'''គ.ស.'''],
@@ -13592,6 +13773,52 @@
     'zzzz': r'''zzzz''',
     'ZZZZ': r'''ZZZZ''',
   },
+  'kk': <String, String>{
+    'd': r'''d''',
+    'E': r'''ccc''',
+    'EEEE': r'''cccc''',
+    'LLL': r'''LLL''',
+    'LLLL': r'''LLLL''',
+    'M': r'''L''',
+    'Md': r'''dd.MM''',
+    'MEd': r'''dd.MM, EEE''',
+    'MMM': r'''LLL''',
+    'MMMd': r'''d MMM''',
+    'MMMEd': r'''d MMM, EEE''',
+    'MMMM': r'''LLLL''',
+    'MMMMd': r'''d MMMM''',
+    'MMMMEEEEd': r'''d MMMM, EEEE''',
+    'QQQ': r'''QQQ''',
+    'QQQQ': r'''QQQQ''',
+    'y': r'''y''',
+    'yM': r'''MM.y''',
+    'yMd': r'''dd.MM.y''',
+    'yMEd': r'''dd.MM.y, EEE''',
+    'yMMM': r"""y 'ж'. MMM""",
+    'yMMMd': r"""y 'ж'. d MMM""",
+    'yMMMEd': r"""y 'ж'. d MMM, EEE""",
+    'yMMMM': r"""y 'ж'. MMMM""",
+    'yMMMMd': r"""y 'ж'. d MMMM""",
+    'yMMMMEEEEd': r"""y 'ж'. d MMMM, EEEE""",
+    'yQQQ': r"""y 'ж'. QQQ""",
+    'yQQQQ': r"""y 'ж'. QQQQ""",
+    'H': r'''HH''',
+    'Hm': r'''HH:mm''',
+    'Hms': r'''HH:mm:ss''',
+    'j': r'''HH''',
+    'jm': r'''HH:mm''',
+    'jms': r'''HH:mm:ss''',
+    'jmv': r'''HH:mm v''',
+    'jmz': r'''HH:mm z''',
+    'jz': r'''HH z''',
+    'm': r'''m''',
+    'ms': r'''mm:ss''',
+    's': r'''s''',
+    'v': r'''v''',
+    'z': r'''z''',
+    'zzzz': r'''zzzz''',
+    'ZZZZ': r'''ZZZZ''',
+  },
   'km': <String, String>{
     'd': r'''d''',
     'E': r'''ccc''',
diff --git a/packages/flutter_localizations/lib/src/l10n/generated_material_localizations.dart b/packages/flutter_localizations/lib/src/l10n/generated_material_localizations.dart
index a373dbe..b6430ed 100644
--- a/packages/flutter_localizations/lib/src/l10n/generated_material_localizations.dart
+++ b/packages/flutter_localizations/lib/src/l10n/generated_material_localizations.dart
@@ -7104,6 +7104,210 @@
   String get viewLicensesButtonLabel => r'ライセンスを表示';
 }
 
+/// The translations for Kazakh (`kk`).
+class MaterialLocalizationKk extends GlobalMaterialLocalizations {
+  /// Create an instance of the translation bundle for Kazakh.
+  ///
+  /// For details on the meaning of the arguments, see [GlobalMaterialLocalizations].
+  const MaterialLocalizationKk({
+    String localeName = 'kk',
+    @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
+  String get aboutListTileTitleRaw => r'$applicationName тұралы';
+
+  @override
+  String get alertDialogLabel => r'Ескерту';
+
+  @override
+  String get anteMeridiemAbbreviation => r'AM';
+
+  @override
+  String get backButtonTooltip => r'Артқа';
+
+  @override
+  String get cancelButtonLabel => r'ЖОЮ';
+
+  @override
+  String get closeButtonLabel => r'ЖАБУ';
+
+  @override
+  String get closeButtonTooltip => r'Жабу';
+
+  @override
+  String get collapsedIconTapHint => r'Жазу';
+
+  @override
+  String get continueButtonLabel => r'ЖАЛҒАСТЫРУ';
+
+  @override
+  String get copyButtonLabel => r'КӨШІРУ';
+
+  @override
+  String get cutButtonLabel => r'ҚИЫП АЛУ';
+
+  @override
+  String get deleteButtonTooltip => r'Өшіру';
+
+  @override
+  String get dialogLabel => r'Диалогтік терезесі';
+
+  @override
+  String get drawerLabel => r'Навигациялық мәзір';
+
+  @override
+  String get expandedIconTapHint => r'Орау';
+
+  @override
+  String get hideAccountsLabel => r'Тіркеулік жасбасыны жасыру';
+
+  @override
+  String get licensesPageTitle => r'Лицензиялар';
+
+  @override
+  String get modalBarrierDismissLabel => r'Болдырмау';
+
+  @override
+  String get nextMonthTooltip => r'Келесі ай';
+
+  @override
+  String get nextPageTooltip => r'Келесі бет';
+
+  @override
+  String get okButtonLabel => r'ЖАҚСЫ';
+
+  @override
+  String get openAppDrawerTooltip => r'Навигация мәзірді ашу';
+
+  @override
+  String get pageRowsInfoTitleRaw => r'$firstRow–$lastRow $rowCount ішінде';
+
+  @override
+  String get pageRowsInfoTitleApproximateRaw => r'$firstRow–$lastRow $rowCount шамасының ішінде';
+
+  @override
+  String get pasteButtonLabel => r'ҚОНДЫРУ';
+
+  @override
+  String get popupMenuLabel => r'Ашылмалы мәзір';
+
+  @override
+  String get postMeridiemAbbreviation => r'PM';
+
+  @override
+  String get previousMonthTooltip => r'Өткен ай';
+
+  @override
+  String get previousPageTooltip => r'Алдынғы бет';
+
+  @override
+  String get refreshIndicatorSemanticLabel => r'Жаңарту';
+
+  @override
+  String get remainingTextFieldCharacterCountFew => null;
+
+  @override
+  String get remainingTextFieldCharacterCountMany => null;
+
+  @override
+  String get remainingTextFieldCharacterCountOne => null;
+
+  @override
+  String get remainingTextFieldCharacterCountOther => r'$remainingCount таңба қалды';
+
+  @override
+  String get remainingTextFieldCharacterCountTwo => null;
+
+  @override
+  String get remainingTextFieldCharacterCountZero => r'Таңбалар қалмады';
+
+  @override
+  String get reorderItemDown => r'Төменге орналастыру';
+
+  @override
+  String get reorderItemLeft => r'Солға орналастыру';
+
+  @override
+  String get reorderItemRight => r'Оңға орналастыру';
+
+  @override
+  String get reorderItemToEnd => r'Аяққа орналастыру';
+
+  @override
+  String get reorderItemToStart => r'Басына орналастыру';
+
+  @override
+  String get reorderItemUp => r'Жоғарға орналастыру';
+
+  @override
+  String get rowsPerPageTitle => r'Бір бетіне жазбалар:';
+
+  @override
+  ScriptCategory get scriptCategory => ScriptCategory.englishLike;
+
+  @override
+  String get searchFieldLabel => r'Іздеу';
+
+  @override
+  String get selectAllButtonLabel => r'БӘРІН ТАҢДАУ';
+
+  @override
+  String get selectedRowCountTitleFew => null;
+
+  @override
+  String get selectedRowCountTitleMany => null;
+
+  @override
+  String get selectedRowCountTitleOne => null;
+
+  @override
+  String get selectedRowCountTitleOther => r'$selectedRowCount тармақ таңдалған';
+
+  @override
+  String get selectedRowCountTitleTwo => null;
+
+  @override
+  String get selectedRowCountTitleZero => r'Тармақ таңдалмаған';
+
+  @override
+  String get showAccountsLabel => r'Тіркеулік жасбасыны көрсету';
+
+  @override
+  String get showMenuTooltip => r'Мәзірді көрсету';
+
+  @override
+  String get signedInLabel => r'Жүйеге кірді';
+
+  @override
+  String get tabLabelRaw => r'$tabCount қосымша парақтардың $tabIndex парақ';
+
+  @override
+  TimeOfDayFormat get timeOfDayFormatRaw => TimeOfDayFormat.H_colon_mm;
+
+  @override
+  String get timePickerHourModeAnnouncement => r'Сағатты таңдау';
+
+  @override
+  String get timePickerMinuteModeAnnouncement => r'Минутты таңдау';
+
+  @override
+  String get viewLicensesButtonLabel => r'ЛИЦЕНЗИЯЛАРДЫ КӨРУ';
+}
+
 /// The translations for Khmer Central Khmer (`km`).
 class MaterialLocalizationKm extends GlobalMaterialLocalizations {
   /// Create an instance of the translation bundle for Khmer Central Khmer.
@@ -13171,6 +13375,7 @@
   'id', // Indonesian
   'it', // Italian
   'ja', // Japanese
+  'kk', // Kazakh
   'km', // Khmer Central Khmer
   'ko', // Korean
   'lt', // Lithuanian
@@ -13235,6 +13440,7 @@
 ///  * `id` - Indonesian
 ///  * `it` - Italian
 ///  * `ja` - Japanese
+///  * `kk` - Kazakh
 ///  * `km` - Khmer Central Khmer
 ///  * `ko` - Korean
 ///  * `lt` - Lithuanian
@@ -13396,6 +13602,8 @@
       return MaterialLocalizationIt(fullYearFormat: fullYearFormat, mediumDateFormat: mediumDateFormat, longDateFormat: longDateFormat, yearMonthFormat: yearMonthFormat, decimalFormat: decimalFormat, twoDigitZeroPaddedFormat: twoDigitZeroPaddedFormat);
     case 'ja':
       return MaterialLocalizationJa(fullYearFormat: fullYearFormat, mediumDateFormat: mediumDateFormat, longDateFormat: longDateFormat, yearMonthFormat: yearMonthFormat, decimalFormat: decimalFormat, twoDigitZeroPaddedFormat: twoDigitZeroPaddedFormat);
+    case 'kk':
+      return MaterialLocalizationKk(fullYearFormat: fullYearFormat, mediumDateFormat: mediumDateFormat, longDateFormat: longDateFormat, yearMonthFormat: yearMonthFormat, decimalFormat: decimalFormat, twoDigitZeroPaddedFormat: twoDigitZeroPaddedFormat);
     case 'km':
       return MaterialLocalizationKm(fullYearFormat: fullYearFormat, mediumDateFormat: mediumDateFormat, longDateFormat: longDateFormat, yearMonthFormat: yearMonthFormat, decimalFormat: decimalFormat, twoDigitZeroPaddedFormat: twoDigitZeroPaddedFormat);
     case 'ko':
diff --git a/packages/flutter_localizations/lib/src/l10n/material_kk.arb b/packages/flutter_localizations/lib/src/l10n/material_kk.arb
new file mode 100644
index 0000000..96e50aa
--- /dev/null
+++ b/packages/flutter_localizations/lib/src/l10n/material_kk.arb
@@ -0,0 +1,54 @@
+{
+  "scriptCategory": "English-like",
+  "timeOfDayFormat": "H:mm",
+  "openAppDrawerTooltip": "Навигация мәзірді ашу",
+  "backButtonTooltip": "Артқа",
+  "closeButtonTooltip": "Жабу",
+  "deleteButtonTooltip": "Өшіру",
+  "nextMonthTooltip": "Келесі ай",
+  "previousMonthTooltip": "Өткен ай",
+  "nextPageTooltip": "Келесі бет",
+  "previousPageTooltip": "Алдынғы бет",
+  "showMenuTooltip": "Мәзірді көрсету",
+  "aboutListTileTitle": "$applicationName тұралы",
+  "licensesPageTitle": "Лицензиялар",
+  "pageRowsInfoTitle": "$firstRow–$lastRow $rowCount ішінде",
+  "pageRowsInfoTitleApproximate": "$firstRow–$lastRow $rowCount шамасының ішінде",
+  "rowsPerPageTitle": "Бір бетіне жазбалар:",
+  "tabLabel": "$tabCount қосымша парақтардың $tabIndex парақ",
+  "selectedRowCountTitleZero": "Тармақ таңдалмаған",
+  "selectedRowCountTitleOther": "$selectedRowCount тармақ таңдалған",
+  "cancelButtonLabel": "ЖОЮ",
+  "closeButtonLabel": "ЖАБУ",
+  "continueButtonLabel": "ЖАЛҒАСТЫРУ",
+  "copyButtonLabel": "КӨШІРУ",
+  "cutButtonLabel": "ҚИЫП АЛУ",
+  "okButtonLabel": "ЖАҚСЫ",
+  "pasteButtonLabel": "ҚОНДЫРУ",
+  "selectAllButtonLabel": "БӘРІН ТАҢДАУ",
+  "viewLicensesButtonLabel": "ЛИЦЕНЗИЯЛАРДЫ КӨРУ",
+  "anteMeridiemAbbreviation": "AM",
+  "postMeridiemAbbreviation": "PM",
+  "timePickerHourModeAnnouncement": "Сағатты таңдау",
+  "timePickerMinuteModeAnnouncement": "Минутты таңдау",
+  "modalBarrierDismissLabel": "Болдырмау",
+  "signedInLabel": "Жүйеге кірді",
+  "hideAccountsLabel": "Тіркеулік жасбасыны жасыру",
+  "showAccountsLabel": "Тіркеулік жасбасыны көрсету",
+  "drawerLabel": "Навигациялық мәзір",
+  "popupMenuLabel": "Ашылмалы мәзір",
+  "dialogLabel": "Диалогтік терезесі",
+  "alertDialogLabel": "Ескерту",
+  "searchFieldLabel": "Іздеу",
+  "reorderItemToStart": "Басына орналастыру",
+  "reorderItemToEnd": "Аяққа орналастыру",
+  "reorderItemUp": "Жоғарға орналастыру",
+  "reorderItemDown": "Төменге орналастыру",
+  "reorderItemLeft": "Солға орналастыру",
+  "reorderItemRight": "Оңға орналастыру",
+  "expandedIconTapHint": "Орау",
+  "collapsedIconTapHint": "Жазу",
+  "remainingTextFieldCharacterCountZero": "Таңбалар қалмады",
+  "remainingTextFieldCharacterCountOther": "$remainingCount таңба қалды",
+  "refreshIndicatorSemanticLabel": "Жаңарту"
+}