Added support for the Tamil language, locale ta_IN (#24553)

diff --git a/packages/flutter_localizations/lib/src/l10n/date_localizations.dart b/packages/flutter_localizations/lib/src/l10n/date_localizations.dart
index fe1e42f..fcb0ec4 100644
--- a/packages/flutter_localizations/lib/src/l10n/date_localizations.dart
+++ b/packages/flutter_localizations/lib/src/l10n/date_localizations.dart
@@ -9620,6 +9620,184 @@
       r'''{1} {0}'''
     ],
   },
+  'ta': <String, dynamic>{
+    'NAME': r'''ta''',
+    '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'''காலா.1''',
+      r'''காலா.2''',
+      r'''காலா.3''',
+      r'''காலா.4'''
+    ],
+    'QUARTERS': <dynamic>[
+      r'''ஒன்றாம் காலாண்டு''',
+      r'''இரண்டாம் காலாண்டு''',
+      r'''மூன்றாம் காலாண்டு''',
+      r'''நான்காம் காலாண்டு'''
+    ],
+    'AMPMS': <dynamic>[r'''முற்பகல்''', r'''பிற்பகல்'''],
+    'DATEFORMATS': <dynamic>[
+      r'''EEEE, d MMMM, y''',
+      r'''d MMMM, y''',
+      r'''d MMM, y''',
+      r'''d/M/yy'''
+    ],
+    'TIMEFORMATS': <dynamic>[
+      r'''a h:mm:ss zzzz''',
+      r'''a h:mm:ss z''',
+      r'''a h:mm:ss''',
+      r'''a h:mm'''
+    ],
+    'AVAILABLEFORMATS': null,
+    'FIRSTDAYOFWEEK': 6,
+    'WEEKENDRANGE': <dynamic>[6, 6],
+    'FIRSTWEEKCUTOFFDAY': 5,
+    'DATETIMEFORMATS': <dynamic>[
+      r'''{1} ’அன்று’ {0}''',
+      r'''{1} ’அன்று’ {0}''',
+      r'''{1}, {0}''',
+      r'''{1}, {0}'''
+    ],
+  },
   'th': <String, dynamic>{
     'NAME': r'''th''',
     'ERAS': <dynamic>[r'''ปีก่อน ค.ศ.''', r'''ค.ศ.'''],
@@ -13710,6 +13888,52 @@
     'zzzz': r'''zzzz''',
     'ZZZZ': r'''ZZZZ''',
   },
+  'ta': <String, String>{
+    'd': r'''d''',
+    'E': r'''ccc''',
+    'EEEE': r'''cccc''',
+    'LLL': r'''LLL''',
+    'LLLL': r'''LLLL''',
+    'M': r'''L''',
+    'Md': r'''d/M''',
+    'MEd': r'''dd-MM, EEE''',
+    'MMM': r'''LLL''',
+    'MMMd': r'''MMM d''',
+    'MMMEd': r'''MMM d, EEE''',
+    'MMMM': r'''LLLL''',
+    'MMMMd': r'''d MMMM''',
+    'MMMMEEEEd': r'''MMMM d, EEEE''',
+    'QQQ': r'''QQQ''',
+    'QQQQ': r'''QQQQ''',
+    'y': r'''y''',
+    'yM': r'''M/y''',
+    'yMd': r'''d/M/y''',
+    'yMEd': r'''EEE, d/M/y''',
+    'yMMM': r'''MMM y''',
+    'yMMMd': r'''d MMM, y''',
+    'yMMMEd': r'''EEE, d MMM, y''',
+    'yMMMM': r'''MMMM y''',
+    'yMMMMd': r'''d MMMM, y''',
+    'yMMMMEEEEd': r'''EEEE, d MMMM, y''',
+    'yQQQ': r'''QQQ y''',
+    'yQQQQ': r'''QQQQ y''',
+    'H': r'''HH''',
+    'Hm': r'''HH:mm''',
+    'Hms': r'''HH:mm:ss''',
+    'j': r'''a h''',
+    'jm': r'''a h:mm''',
+    'jms': r'''a h:mm:ss''',
+    'jmv': r'''a h:mm v''',
+    'jmz': r'''a h:mm z''',
+    'jz': r'''a h z''',
+    'm': r'''m''',
+    'ms': r'''mm:ss''',
+    's': r'''s''',
+    'v': r'''v''',
+    'z': r'''z''',
+    'zzzz': r'''zzzz''',
+    'ZZZZ': r'''ZZZZ''',
+  },
   'th': <String, String>{
     'd': r'''d''',
     'E': r'''ccc''',
diff --git a/packages/flutter_localizations/lib/src/l10n/localizations.dart b/packages/flutter_localizations/lib/src/l10n/localizations.dart
index dc1295f..532ab2e 100644
--- a/packages/flutter_localizations/lib/src/l10n/localizations.dart
+++ b/packages/flutter_localizations/lib/src/l10n/localizations.dart
@@ -10653,6 +10653,210 @@
   String get viewLicensesButtonLabel => r'VISA LICENSER';
 }
 
+/// The translations for Tamil (`ta`).
+class MaterialLocalizationTa extends GlobalMaterialLocalizations {
+  /// Create an instance of the translation bundle for Tamil.
+  ///
+  /// For details on the meaning of the arguments, see [GlobalMaterialLocalizations].
+  const MaterialLocalizationTa({
+    String localeName = 'ta',
+    @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'காலை';
+
+  @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'$rowCount-யில் $firstRow–$lastRow';
+
+  @override
+  String get pageRowsInfoTitleApproximateRaw => r'கிட்டத்தட்ட $rowCount-யில் $firstRow–$lastRow';
+
+  @override
+  String get pasteButtonLabel => r'ஒட்டு';
+
+  @override
+  String get popupMenuLabel => r'பாப்-அப் பட்டி';
+
+  @override
+  String get postMeridiemAbbreviation => r'மாலை';
+
+  @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 => r'ஒரு எழுத்து உள்ளது';
+
+  @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.dense;
+
+  @override
+  String get searchFieldLabel => r'தேடுக';
+
+  @override
+  String get selectAllButtonLabel => r'அனைத்தையும் தேர்ந்தெடு';
+
+  @override
+  String get selectedRowCountTitleFew => null;
+
+  @override
+  String get selectedRowCountTitleMany => null;
+
+  @override
+  String get selectedRowCountTitleOne => r'1 வரிசை தேர்ந்தெடுக்கப்பட்டது';
+
+  @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.a_space_h_colon_mm;
+
+  @override
+  String get timePickerHourModeAnnouncement => r'மணி நேரம் தேர்ந்தெடுக்கவும்';
+
+  @override
+  String get timePickerMinuteModeAnnouncement => r'நிமிடங்கள் தேர்ந்தெடுக்கவும்';
+
+  @override
+  String get viewLicensesButtonLabel => r'உரிமங்களை பார்க்கவும்';
+}
+
 /// The translations for Thai (`th`).
 class MaterialLocalizationTh extends GlobalMaterialLocalizations {
   /// Create an instance of the translation bundle for Thai.
@@ -12365,6 +12569,7 @@
   'sl', // Slovenian
   'sr', // Serbian
   'sv', // Swedish
+  'ta', // Tamil
   'th', // Thai
   'tl', // Tagalog
   'tr', // Turkish
@@ -12425,6 +12630,7 @@
 ///  * `sl` - Slovenian
 ///  * `sr` - Serbian (plus 2 scripts)
 ///  * `sv` - Swedish
+///  * `ta` - Tamil
 ///  * `th` - Thai
 ///  * `tl` - Tagalog
 ///  * `tr` - Turkish
@@ -12612,6 +12818,8 @@
     }
     case 'sv':
       return MaterialLocalizationSv(fullYearFormat: fullYearFormat, mediumDateFormat: mediumDateFormat, longDateFormat: longDateFormat, yearMonthFormat: yearMonthFormat, decimalFormat: decimalFormat, twoDigitZeroPaddedFormat: twoDigitZeroPaddedFormat);
+    case 'ta':
+      return MaterialLocalizationTa(fullYearFormat: fullYearFormat, mediumDateFormat: mediumDateFormat, longDateFormat: longDateFormat, yearMonthFormat: yearMonthFormat, decimalFormat: decimalFormat, twoDigitZeroPaddedFormat: twoDigitZeroPaddedFormat);
     case 'th':
       return MaterialLocalizationTh(fullYearFormat: fullYearFormat, mediumDateFormat: mediumDateFormat, longDateFormat: longDateFormat, yearMonthFormat: yearMonthFormat, decimalFormat: decimalFormat, twoDigitZeroPaddedFormat: twoDigitZeroPaddedFormat);
     case 'tl':
diff --git a/packages/flutter_localizations/lib/src/l10n/material_ta.arb b/packages/flutter_localizations/lib/src/l10n/material_ta.arb
new file mode 100644
index 0000000..03f871c
--- /dev/null
+++ b/packages/flutter_localizations/lib/src/l10n/material_ta.arb
@@ -0,0 +1,56 @@
+{
+  "scriptCategory": "dense",
+  "timeOfDayFormat": "ah:mm",
+  "showAccountsLabel" : "கணக்குகளை காமிக்கவும்",
+  "hideAccountsLabel": "கணக்குகளை மறைக்கவும்",
+  "okButtonLabel": "சரி",
+  "continueButtonLabel": "தொடர்க",
+  "nextPageTooltip": "அடுத்த பக்கம்",
+  "previousPageTooltip": "முன் பக்கம்",
+  "searchFieldLabel": "தேடுக",
+  "reorderItemToStart": "ஆரம்பத்திற்கு செல்",
+  "reorderItemToEnd": "முடிவிற்கு செல்",
+  "reorderItemUp": "மேலே செல்",
+  "reorderItemDown": "கீழே செல்",
+  "reorderItemLeft": "இடைப்பக்கம் செல்",
+  "reorderItemRight": "வலப்பக்கம் செல்",
+  "cutButtonLabel": "வெட்டு",
+  "pasteButtonLabel": "ஒட்டு",
+  "previousMonthTooltip": "முந்திய மாதம்",
+  "nextMonthTooltip": "அடுத்த மாதம்",
+  "closeButtonLabel": "மூடு",
+  "copyButtonLabel": "நகல்",
+  "closeButtonTooltip": "மூடு",
+  "deleteButtonTooltip": "நீக்குக",
+  "selectAllButtonLabel": "அனைத்தையும் தேர்ந்தெடு",
+  "openAppDrawerTooltip": "வழிசெலுத்தல் பட்டி திறக்க",
+  "backButtonTooltip": "பின் செல்க",
+  "showMenuTooltip": "பட்டியை காண்பி",
+  "aboutListTileTitle": "$applicationName-ஐ பற்றி",
+  "licensesPageTitle": "உரிமங்கள்",
+  "pageRowsInfoTitle": "$rowCount-யில் $firstRow–$lastRow",
+  "pageRowsInfoTitleApproximate": "கிட்டத்தட்ட $rowCount-யில் $firstRow–$lastRow",
+  "rowsPerPageTitle": "பக்கத்திற்கு வரிசைகள்:",
+  "tabLabel": "$tabCount தாவலில் $tabIndex",
+  "selectedRowCountTitleZero": "எந்த வரிசையும் தேர்ந்தெடுக்கவில்லை",
+  "selectedRowCountTitleOne": "1 வரிசை தேர்ந்தெடுக்கப்பட்டது",
+  "selectedRowCountTitleOther": "$selectedRowCount வரிசைகள் தேர்ந்தெடுக்கப்பட்டன",
+  "cancelButtonLabel": "ரத்து",
+  "viewLicensesButtonLabel": "உரிமங்களை பார்க்கவும்",
+  "anteMeridiemAbbreviation": "காலை",
+  "postMeridiemAbbreviation": "மாலை",
+  "timePickerHourModeAnnouncement": "மணி நேரம் தேர்ந்தெடுக்கவும்",
+  "timePickerMinuteModeAnnouncement": "நிமிடங்கள் தேர்ந்தெடுக்கவும்",
+  "modalBarrierDismissLabel": "நிராகரி",
+  "signedInLabel": "உள்நுழைந்துள்ளீர்கள்",
+  "drawerLabel": "வழிசெலுத்தல் பட்டி",
+  "popupMenuLabel": "பாப்-அப் பட்டி",
+  "dialogLabel": "உரையாடல்",
+  "alertDialogLabel": "எச்சரிக்கை",
+  "expandedIconTapHint": "சுருக்கு",
+  "collapsedIconTapHint": "விரி",
+  "remainingTextFieldCharacterCountZero": "எழுத்துக்கள் எதுவும் இல்லை",
+  "remainingTextFieldCharacterCountOne": "ஒரு எழுத்து உள்ளது",
+  "remainingTextFieldCharacterCountOther": "$remainingCount எழுத்துக்கள் உள்ளன",
+  "refreshIndicatorSemanticLabel": "புதுப்பிக்கவும்"
+}