diff --git a/CHANGELOG.md b/CHANGELOG.md
index 4deb6650d..ae0b2ad84 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -4,6 +4,10 @@ All notable changes to this project will be documented in this file.
## [Unreleased]
+### Added
+
+- Countries: show states for Mexico
+
### Changed
- upgraded Flutter to stable v3.27.1
diff --git a/lib/geo/states.dart b/lib/geo/states.dart
index c7b01b3e8..ea7417906 100644
--- a/lib/geo/states.dart
+++ b/lib/geo/states.dart
@@ -5,12 +5,14 @@ class GeoStates {
static final aus = CountryCode.AU.alpha2;
static final gbr = CountryCode.GB.alpha2;
static final ind = CountryCode.IN.alpha2;
+ static final mex = CountryCode.MX.alpha2;
static final usa = CountryCode.US.alpha2;
static final Set stateCountryCodes = {
aus,
gbr,
ind,
+ mex,
usa,
};
@@ -18,16 +20,53 @@ class GeoStates {
aus: EmojiStateCodes.aus,
gbr: EmojiStateCodes.gbr,
ind: EmojiStateCodes.ind,
+ mex: EmojiStateCodes.mex,
usa: EmojiStateCodes.usa,
};
static const stateCodeByName = {
..._australiaEnglish,
..._indiaEnglish,
+ ..._mexicoSpanish,
..._unitedKingdomEnglish,
..._unitedStatesEnglish,
};
+ static const _mexicoSpanish = {
+ 'Aguascalientes': EmojiStateCodes.mxAguascalientes,
+ 'Baja California': EmojiStateCodes.mxBajaCalifornia,
+ 'Baja California Sur': EmojiStateCodes.mxBajaCaliforniaSur,
+ 'Campeche': EmojiStateCodes.mxCampeche,
+ 'Chiapas': EmojiStateCodes.mxChiapas,
+ 'Chihuahua': EmojiStateCodes.mxChihuahua,
+ 'Ciudad de México': EmojiStateCodes.mxCiudadDeMexico,
+ 'Coahuila': EmojiStateCodes.mxCoahuila,
+ 'Colima': EmojiStateCodes.mxColima,
+ 'Durango': EmojiStateCodes.mxDurango,
+ 'Guanajuato': EmojiStateCodes.mxGuanajuato,
+ 'Guerrero': EmojiStateCodes.mxGuerrero,
+ 'Hidalgo': EmojiStateCodes.mxHidalgo,
+ 'Jalisco': EmojiStateCodes.mxJalisco,
+ 'Estado de México': EmojiStateCodes.mxMexicoState,
+ 'Michoacán': EmojiStateCodes.mxMichoacan,
+ 'Morelos': EmojiStateCodes.mxMorelos,
+ 'Nayarit': EmojiStateCodes.mxNayarit,
+ 'Nuevo León': EmojiStateCodes.mxNuevoLeon,
+ 'Oaxaca': EmojiStateCodes.mxOaxaca,
+ 'Puebla': EmojiStateCodes.mxPuebla,
+ 'Querétaro': EmojiStateCodes.mxQueretaro,
+ 'Quintana Roo': EmojiStateCodes.mxQuintanaRoo,
+ 'San Luis Potosí': EmojiStateCodes.mxSanLuisPotosi,
+ 'Sinaloa': EmojiStateCodes.mxSinaloa,
+ 'Sonora': EmojiStateCodes.mxSonora,
+ 'Tabasco': EmojiStateCodes.mxTabasco,
+ 'Tamaulipas': EmojiStateCodes.mxTamaulipas,
+ 'Tlaxcala': EmojiStateCodes.mxTlaxcala,
+ 'Veracruz': EmojiStateCodes.mxVeracruz,
+ 'Yucatán': EmojiStateCodes.mxYucatan,
+ 'Zacatecas': EmojiStateCodes.mxZacatecas,
+ };
+
static const _australiaEnglish = {
'Australian Capital Territory': EmojiStateCodes.auAustralianCapitalTerritory,
'New South Wales': EmojiStateCodes.auNewSouthWales,
diff --git a/lib/ref/unicode.dart b/lib/ref/unicode.dart
index 9220d9fb2..4da540a0e 100644
--- a/lib/ref/unicode.dart
+++ b/lib/ref/unicode.dart
@@ -135,6 +135,75 @@ class EmojiStateCodes {
inWestBengal,
};
+ // MX
+ static const mxAguascalientes = 'mxagu';
+ static const mxBajaCalifornia = 'mxbcn';
+ static const mxBajaCaliforniaSur = 'mxbcs';
+ static const mxCampeche = 'mxcam';
+ static const mxChiapas = 'mxchp';
+ static const mxChihuahua = 'mxchh';
+ static const mxCiudadDeMexico = 'mxcmx';
+ static const mxCoahuila = 'mxcoa';
+ static const mxColima = 'mxcol';
+ static const mxDurango = 'mxdur';
+ static const mxGuanajuato = 'mxgua';
+ static const mxGuerrero = 'mxgro';
+ static const mxHidalgo = 'mxhid';
+ static const mxJalisco = 'mxjal';
+ static const mxMexicoState = 'mxmex';
+ static const mxMichoacan = 'mxmic';
+ static const mxMorelos = 'mxmor';
+ static const mxNayarit = 'mxnay';
+ static const mxNuevoLeon = 'mxnle';
+ static const mxOaxaca = 'mxoax';
+ static const mxPuebla = 'mxpue';
+ static const mxQueretaro = 'mxque';
+ static const mxQuintanaRoo = 'mxroo';
+ static const mxSanLuisPotosi = 'mxslp';
+ static const mxSinaloa = 'mxsin';
+ static const mxSonora = 'mxson';
+ static const mxTabasco = 'mxtab';
+ static const mxTamaulipas = 'mxtam';
+ static const mxTlaxcala = 'mxtla';
+ static const mxVeracruz = 'mxver';
+ static const mxYucatan = 'mxyuc';
+ static const mxZacatecas = 'mxzac';
+
+ static const mex = {
+ mxAguascalientes,
+ mxBajaCalifornia,
+ mxBajaCaliforniaSur,
+ mxCampeche,
+ mxChiapas,
+ mxChihuahua,
+ mxCiudadDeMexico,
+ mxCoahuila,
+ mxColima,
+ mxDurango,
+ mxGuanajuato,
+ mxGuerrero,
+ mxHidalgo,
+ mxJalisco,
+ mxMexicoState,
+ mxMichoacan,
+ mxMorelos,
+ mxNayarit,
+ mxNuevoLeon,
+ mxOaxaca,
+ mxPuebla,
+ mxQueretaro,
+ mxQuintanaRoo,
+ mxSanLuisPotosi,
+ mxSinaloa,
+ mxSonora,
+ mxTabasco,
+ mxTamaulipas,
+ mxTlaxcala,
+ mxVeracruz,
+ mxYucatan,
+ mxZacatecas,
+ };
+
// US
static const usAlabama = 'usal';
static const usAlaska = 'usak';