Src/Private/Get-CountryName.ps1
function Get-CountryName { param ( [Parameter(Mandatory = $true)] [string]$CountryCode ) # Define a hashtable of country codes and names $CountryLookup = @{ AF = 'Afghanistan' AX = 'Åland Islands' AL = 'Albania' DZ = 'Algeria' AS = 'American Samoa' AD = 'Andorra' AO = 'Angola' AQ = 'Antarctica' AG = 'Antigua and Barbuda' AR = 'Argentina' AM = 'Armenia' AW = 'Aruba' AU = 'Australia' AT = 'Austria' AZ = 'Azerbaijan' BS = 'Bahamas' BH = 'Bahrain' BD = 'Bangladesh' BB = 'Barbados' BY = 'Belarus' BE = 'Belgium' BZ = 'Belize' BJ = 'Benin' BM = 'Bermuda' BT = 'Bhutan' BO = 'Bolivia' BQ = 'Bonaire' BA = 'Bosnia and Herzegovina' BW = 'Botswana' BV = 'Bouvet Island' BR = 'Brazil' IO = 'British Indian Ocean Territory' VG = 'British Virgin Islands' BN = 'Brunei' BG = 'Bulgaria' BF = 'Burkina Faso' BI = 'Burundi' CV = 'Cabo Verde' KH = 'Cambodia' CM = 'Cameroon' CA = 'Canada' KY = 'Cayman Islands' CF = 'Central African Republic' TD = 'Chad' CZ = 'Czechia' CL = 'Chile' CN = 'China' CX = 'Christmas Island' CC = 'Cocos (Keeling) Islands' CO = 'Colombia' KM = 'Comoros' CG = 'Congo' CD = 'Congo (DRC)' CK = 'Cook Islands' CR = 'Costa Rica' CI = 'Côte d''Ivoire' HR = 'Croatia' CU = 'Cuba' CW = 'Curaçao' CY = 'Cyprus' DK = 'Denmark' DJ = 'Djibouti' DM = 'Dominica' DO = 'Dominican Republic' EC = 'Ecuador' EG = 'Egypt' SV = 'El Salvador' GQ = 'Equatorial Guinea' ER = 'Eritrea' EE = 'Estonia' SZ = 'eSwatini' ET = 'Ethiopia' FO = 'Faroe Islands' FJ = 'Fiji' FI = 'Finland' FR = 'France' GF = 'French Guiana' PF = 'French Polynesia' TF = 'French Southern Territories' GA = 'Gabon' GM = 'Gambia' GE = 'Georgia' DE = 'Germany' GH = 'Ghana' GI = 'Gibraltar' GR = 'Greece' GL = 'Greenland' GD = 'Grenada' GP = 'Guadeloupe' GU = 'Guam' GT = 'Guatemala' GG = 'Guernsey' GN = 'Guinea' GW = 'Guinea-Bissau' GY = 'Guyana' HT = 'Haiti' HM = 'Heard Island and McDonald Islands' HN = 'Honduras' HK = 'Hong Kong SAR' HU = 'Hungary' IS = 'Iceland' IN = 'India' ID = 'Indonesia' IR = 'Iran' IQ = 'Iraq' IE = 'Ireland' IM = 'Isle of Man' IL = 'Israel' IT = 'Italy' JM = 'Jamaica' JP = 'Japan' JE = 'Jersey' JO = 'Jordan' KZ = 'Kazakhstan' KE = 'Kenya' KI = 'Kiribati' KR = 'Korea (South)' KW = 'Kuwait' KG = 'Kyrgyzstan' LA = 'Laos' LV = 'Latvia' LB = 'Lebanon' LS = 'Lesotho' LR = 'Liberia' LY = 'Libya' LI = 'Liechtenstein' LT = 'Lithuania' LU = 'Luxembourg' MO = 'Macao SAR' MG = 'Madagascar' MW = 'Malawi' MY = 'Malaysia' MV = 'Maldives' ML = 'Mali' MT = 'Malta' MH = 'Marshall Islands' MQ = 'Martinique' MR = 'Mauritania' MU = 'Mauritius' YT = 'Mayotte' MX = 'Mexico' FM = 'Micronesia' MD = 'Moldova' MC = 'Monaco' MN = 'Mongolia' ME = 'Montenegro' MS = 'Montserrat' MA = 'Morocco' MZ = 'Mozambique' MM = 'Myanmar' NA = 'Namibia' NR = 'Nauru' NP = 'Nepal' NL = 'Netherlands' NC = 'New Caledonia' NZ = 'New Zealand' NI = 'Nicaragua' NE = 'Niger' NG = 'Nigeria' NU = 'Niue' NF = 'Norfolk Island' KP = 'North Korea' MP = 'Northern Mariana Islands' MK = 'North Macedonia' NO = 'Norway' OM = 'Oman' PK = 'Pakistan' PW = 'Palau' PS = 'Palestinian Authority' PA = 'Panama' PG = 'Papua New Guinea' PY = 'Paraguay' PE = 'Peru' PH = 'Philippines' PN = 'Pitcairn Islands' PL = 'Poland' PT = 'Portugal' PR = 'Puerto Rico' QA = 'Qatar' RE = 'Réunion' RO = 'Romania' RU = 'Russia' RW = 'Rwanda' BL = 'Saint Barthélemy' KN = 'Saint Kitts and Nevis' LC = 'Saint Lucia' MF = 'Saint Martin' PM = 'Saint Pierre and Miquelon' VC = 'Saint Vincent and the Grenadines' WS = 'Samoa' SM = 'San Marino' ST = 'São Tomé and Príncipe' SA = 'Saudi Arabia' SN = 'Senegal' RS = 'Serbia' SC = 'Seychelles' SL = 'Sierra Leone' SG = 'Singapore' SX = 'Sint Maarten' SK = 'Slovakia' SI = 'Slovenia' SB = 'Solomon Islands' SO = 'Somalia' ZA = 'South Africa' GS = 'South Georgia and South Sandwich Islands' SS = 'South Sudan' ES = 'Spain' LK = 'Sri Lanka' SH = 'St Helena, Ascension, Tristan da Cunha' SD = 'Sudan' SR = 'Suriname' SJ = 'Svalbard' SE = 'Sweden' CH = 'Switzerland' SY = 'Syria' TW = 'Taiwan' TJ = 'Tajikistan' TZ = 'Tanzania' TH = 'Thailand' TL = 'Timor-Leste' TG = 'Togo' TK = 'Tokelau' TO = 'Tonga' TT = 'Trinidad and Tobago' TN = 'Tunisia' TR = 'Türkiye' TM = 'Turkmenistan' TC = 'Turks and Caicos Islands' TV = 'Tuvalu' UG = 'Uganda' UA = 'Ukraine' AE = 'United Arab Emirates' GB = 'United Kingdom' US = 'United States' UY = 'Uruguay' UM = 'U.S. Outlying Islands' VI = 'U.S. Virgin Islands' UZ = 'Uzbekistan' VU = 'Vanuatu' VA = 'Vatican City' VE = 'Venezuela' VN = 'Vietnam' WF = 'Wallis and Futuna' YE = 'Yemen' ZM = 'Zambia' ZW = 'Zimbabwe' } # Convert input to uppercase to handle case insensitivity $CountryCode = $CountryCode.ToUpper() # Lookup the country name or return a default message if not found if ($CountryLookup.ContainsKey($CountryCode)) { return $CountryLookup[$CountryCode] } else { return "Country code not found" } } |