600 lines
28 KiB
PHP
600 lines
28 KiB
PHP
<?php
|
|
|
|
namespace App\Enums;
|
|
|
|
use App\Traits\Enums\BaseEnum;
|
|
|
|
enum Country: int
|
|
{
|
|
use BaseEnum;
|
|
|
|
case afghanistan = 1;
|
|
case alandIslands = 2;
|
|
case albania = 3;
|
|
case algeria = 4;
|
|
case americanSamoa = 5;
|
|
case andorra = 6;
|
|
case angola = 7;
|
|
case anguilla = 8;
|
|
case antarctica = 9;
|
|
case antiguaAndBarbuda = 10;
|
|
case argentina = 11;
|
|
case armenia = 12;
|
|
case aruba = 13;
|
|
case australia = 14;
|
|
case austria = 15;
|
|
case azerbaijan = 16;
|
|
case bahrain = 17;
|
|
case bahamas = 18;
|
|
case bangladesh = 19;
|
|
case barbados = 20;
|
|
case belarus = 21;
|
|
case belgium = 22;
|
|
case belize = 23;
|
|
case benin = 24;
|
|
case bermuda = 25;
|
|
case bhutan = 26;
|
|
case boliviaPlurinationalStateOf = 27;
|
|
case bonaireSintEustatiusAndSaba = 28;
|
|
case bosniaAndHerzegovina = 29;
|
|
case botswana = 30;
|
|
case bouvetIsland = 31;
|
|
case brazil = 32;
|
|
case britishIndianOceanTerritory = 33;
|
|
case bruneiDarussalam = 34;
|
|
case bulgaria = 35;
|
|
case burkinaFaso = 36;
|
|
case burundi = 37;
|
|
case cambodia = 38;
|
|
case cameroon = 39;
|
|
case canada = 40;
|
|
case capeVerde = 41;
|
|
case caymanIslands = 42;
|
|
case centralAfricanRepublic = 43;
|
|
case chad = 44;
|
|
case chile = 45;
|
|
case china = 46;
|
|
case christmasIsland = 47;
|
|
case cocosKeelingIslands = 48;
|
|
case colombia = 49;
|
|
case comoros = 50;
|
|
case congo = 51;
|
|
case congoTheDemocraticRepublicOfThe = 52;
|
|
case cookIslands = 53;
|
|
case costaRica = 54;
|
|
case coteDivoire = 55;
|
|
case croatia = 56;
|
|
case cuba = 57;
|
|
case curacao = 58;
|
|
case cyprus = 59;
|
|
case czechRepublic = 60;
|
|
case denmark = 61;
|
|
case djibouti = 62;
|
|
case dominica = 63;
|
|
case dominicanRepublic = 64;
|
|
case ecuador = 65;
|
|
case egypt = 66;
|
|
case elSalvador = 67;
|
|
case equatorialGuinea = 68;
|
|
case eritrea = 69;
|
|
case estonia = 70;
|
|
case ethiopia = 71;
|
|
case falklandIslandsMalvinas = 72;
|
|
case faroeIslands = 73;
|
|
case fiji = 74;
|
|
case finland = 75;
|
|
case france = 76;
|
|
case frenchGuiana = 77;
|
|
case frenchPolynesia = 78;
|
|
case frenchSouthernTerritories = 79;
|
|
case gabon = 80;
|
|
case gambia = 81;
|
|
case georgia = 82;
|
|
case germany = 83;
|
|
case ghana = 84;
|
|
case gibraltar = 85;
|
|
case greece = 86;
|
|
case greenland = 87;
|
|
case grenada = 88;
|
|
case guadeloupe = 89;
|
|
case guam = 90;
|
|
case guatemala = 91;
|
|
case guernsey = 92;
|
|
case guinea = 93;
|
|
case guineaBissau = 94;
|
|
case guyana = 95;
|
|
case haiti = 96;
|
|
case heardIslandAndMcdonaldIslands = 97;
|
|
case holySeeVaticanCityState = 98;
|
|
case honduras = 99;
|
|
case hongKong = 100;
|
|
case hungary = 101;
|
|
case iceland = 102;
|
|
case india = 103;
|
|
case indonesia = 104;
|
|
case iranIslamicRepublicOf = 105;
|
|
case iraq = 106;
|
|
case ireland = 107;
|
|
case isleOfMan = 108;
|
|
case israel = 109;
|
|
case italy = 110;
|
|
case jamaica = 111;
|
|
case japan = 112;
|
|
case jersey = 113;
|
|
case jordan = 114;
|
|
case kazakhstan = 115;
|
|
case kenya = 116;
|
|
case kiribati = 117;
|
|
case koreaDemocraticPeoplesRepublicOf = 118;
|
|
case koreaRepublicOf = 119;
|
|
case kuwait = 120;
|
|
case kyrgyzstan = 121;
|
|
case laoPeoplesDemocraticRepublic = 122;
|
|
case latvia = 123;
|
|
case lebanon = 124;
|
|
case lesotho = 125;
|
|
case liberia = 126;
|
|
case libya = 127;
|
|
case liechtenstein = 128;
|
|
case lithuania = 129;
|
|
case luxembourg = 130;
|
|
case macao = 131;
|
|
case macedoniaTheFormerYugoslavRepublicOf = 132;
|
|
case madagascar = 133;
|
|
case malawi = 134;
|
|
case malaysia = 135;
|
|
case maldives = 136;
|
|
case mali = 137;
|
|
case malta = 138;
|
|
case marshallIslands = 139;
|
|
case martinique = 140;
|
|
case mauritania = 141;
|
|
case mauritius = 142;
|
|
case mayotte = 143;
|
|
case mexico = 144;
|
|
case micronesiaFederatedStatesOf = 145;
|
|
case moldovaRepublicOf = 146;
|
|
case monaco = 147;
|
|
case mongolia = 148;
|
|
case montenegro = 149;
|
|
case montserrat = 150;
|
|
case morocco = 151;
|
|
case mozambique = 152;
|
|
case myanmar = 153;
|
|
case namibia = 154;
|
|
case nauru = 155;
|
|
case nepal = 156;
|
|
case netherlands = 157;
|
|
case newCaledonia = 158;
|
|
case newZealand = 159;
|
|
case nicaragua = 160;
|
|
case niger = 161;
|
|
case nigeria = 162;
|
|
case niue = 163;
|
|
case norfolkIsland = 164;
|
|
case northernMarianaIslands = 165;
|
|
case norway = 166;
|
|
case oman = 167;
|
|
case pakistan = 168;
|
|
case palau = 169;
|
|
case palestineStateOf = 170;
|
|
case panama = 171;
|
|
case papuaNewGuinea = 172;
|
|
case paraguay = 173;
|
|
case peru = 174;
|
|
case philippines = 175;
|
|
case pitcairn = 176;
|
|
case poland = 177;
|
|
case portugal = 178;
|
|
case puertoRico = 179;
|
|
case qatar = 180;
|
|
case reunion = 181;
|
|
case romania = 182;
|
|
case russianFederation = 183;
|
|
case rwanda = 184;
|
|
case saintBarthelemy = 185;
|
|
case saintHelenaAscensionAndTristanDaCunha = 186;
|
|
case saintKittsAndNevis = 187;
|
|
case saintLucia = 188;
|
|
case saintMartinFrenchPart = 189;
|
|
case saintPierreAndMiquelon = 190;
|
|
case saintVincentAndTheGrenadines = 191;
|
|
case samoa = 192;
|
|
case sanMarino = 193;
|
|
case saoTomeAndPrincipe = 194;
|
|
case saudiArabia = 195;
|
|
case senegal = 196;
|
|
case serbia = 197;
|
|
case seychelles = 198;
|
|
case sierraLeone = 199;
|
|
case singapore = 200;
|
|
case sintMaartenDutchPart = 201;
|
|
case slovakia = 202;
|
|
case slovenia = 203;
|
|
case solomonIslands = 204;
|
|
case somalia = 205;
|
|
case southAfrica = 206;
|
|
case southGeorgiaAndTheSouthSandwichIslands = 207;
|
|
case southSudan = 208;
|
|
case spain = 209;
|
|
case sriLanka = 210;
|
|
case sudan = 211;
|
|
case suriname = 212;
|
|
case svalbardAndJanMayen = 213;
|
|
case swaziland = 214;
|
|
case sweden = 215;
|
|
case switzerland = 216;
|
|
case syrianArabRepublic = 217;
|
|
case taiwanProvinceOfChina = 218;
|
|
case tajikistan = 219;
|
|
case tanzaniaUnitedRepublicOf = 220;
|
|
case thailand = 221;
|
|
case timorLeste = 222;
|
|
case togo = 223;
|
|
case tokelau = 224;
|
|
case tonga = 225;
|
|
case trinidadAndTobago = 226;
|
|
case tunisia = 227;
|
|
case turkey = 228;
|
|
case turkmenistan = 229;
|
|
case turksAndCaicosIslands = 230;
|
|
case tuvalu = 231;
|
|
case uganda = 232;
|
|
case ukraine = 233;
|
|
case unitedArabEmirates = 234;
|
|
case unitedKingdom = 235;
|
|
case unitedStates = 236;
|
|
case unitedStatesMinorOutlyingIslands = 237;
|
|
case uruguay = 238;
|
|
case uzbekistan = 239;
|
|
case vanuatu = 240;
|
|
case venezuelaBolivarianRepublicOf = 241;
|
|
case vietNam = 242;
|
|
case virginIslandsBritish = 243;
|
|
case virginIslandsUs = 244;
|
|
case wallisAndFutuna = 245;
|
|
case westernSahara = 246;
|
|
case yemen = 247;
|
|
case zambia = 248;
|
|
case zimbabwe = 249;
|
|
|
|
/**
|
|
* Custom added images definition
|
|
*/
|
|
private const LABELS = [
|
|
self::afghanistan->name => "Afghanistan",
|
|
self::alandIslands->name => "Åland Islands",
|
|
self::albania->name => "Albania",
|
|
self::algeria->name => "Algeria",
|
|
self::americanSamoa->name => "American Samoa",
|
|
self::andorra->name => "Andorra",
|
|
self::angola->name => "Angola",
|
|
self::anguilla->name => "Anguilla",
|
|
self::antarctica->name => "Antarctica",
|
|
self::antiguaAndBarbuda->name => "Antigua and Barbuda",
|
|
self::argentina->name => "Argentina",
|
|
self::armenia->name => "Armenia",
|
|
self::aruba->name => "Aruba",
|
|
self::australia->name => "Australia",
|
|
self::austria->name => "Austria",
|
|
self::azerbaijan->name => "Azerbaijan",
|
|
self::bahrain->name => "Bahrain",
|
|
self::bahamas->name => "Bahamas",
|
|
self::bangladesh->name => "Bangladesh",
|
|
self::barbados->name => "Barbados",
|
|
self::belarus->name => "Belarus",
|
|
self::belgium->name => "Belgium",
|
|
self::belize->name => "Belize",
|
|
self::benin->name => "Benin",
|
|
self::bermuda->name => "Bermuda",
|
|
self::bhutan->name => "Bhutan",
|
|
self::boliviaPlurinationalStateOf->name => "Bolivia, Plurinational State of",
|
|
self::bonaireSintEustatiusAndSaba->name => "Bonaire, Sint Eustatius and Saba",
|
|
self::bosniaAndHerzegovina->name => "Bosnia and Herzegovina",
|
|
self::botswana->name => "Botswana",
|
|
self::bouvetIsland->name => "Bouvet Island",
|
|
self::brazil->name => "Brazil",
|
|
self::britishIndianOceanTerritory->name => "British Indian Ocean Territory",
|
|
self::bruneiDarussalam->name => "Brunei Darussalam",
|
|
self::bulgaria->name => "Bulgaria",
|
|
self::burkinaFaso->name => "Burkina Faso",
|
|
self::burundi->name => "Burundi",
|
|
self::cambodia->name => "Cambodia",
|
|
self::cameroon->name => "Cameroon",
|
|
self::canada->name => "Canada",
|
|
self::capeVerde->name => "Cape Verde",
|
|
self::caymanIslands->name => "Cayman Islands",
|
|
self::centralAfricanRepublic->name => "Central African Republic",
|
|
self::chad->name => "Chad",
|
|
self::chile->name => "Chile",
|
|
self::china->name => "China",
|
|
self::christmasIsland->name => "Christmas Island",
|
|
self::cocosKeelingIslands->name => "Cocos (Keeling) Islands",
|
|
self::colombia->name => "Colombia",
|
|
self::comoros->name => "Comoros",
|
|
self::congo->name => "Congo",
|
|
self::congoTheDemocraticRepublicOfThe->name => "Congo, the Democratic Republic of the",
|
|
self::cookIslands->name => "Cook Islands",
|
|
self::costaRica->name => "Costa Rica",
|
|
self::coteDivoire->name => "Côte d'Ivoire",
|
|
self::croatia->name => "Croatia",
|
|
self::cuba->name => "Cuba",
|
|
self::curacao->name => "Curaçao",
|
|
self::cyprus->name => "Cyprus",
|
|
self::czechRepublic->name => "Czech Republic",
|
|
self::denmark->name => "Denmark",
|
|
self::djibouti->name => "Djibouti",
|
|
self::dominica->name => "Dominica",
|
|
self::dominicanRepublic->name => "Dominican Republic",
|
|
self::ecuador->name => "Ecuador",
|
|
self::egypt->name => "Egypt",
|
|
self::elSalvador->name => "El Salvador",
|
|
self::equatorialGuinea->name => "Equatorial Guinea",
|
|
self::eritrea->name => "Eritrea",
|
|
self::estonia->name => "Estonia",
|
|
self::ethiopia->name => "Ethiopia",
|
|
self::falklandIslandsMalvinas->name => "Falkland Islands (Malvinas)",
|
|
self::faroeIslands->name => "Faroe Islands",
|
|
self::fiji->name => "Fiji",
|
|
self::finland->name => "Finland",
|
|
self::france->name => "France",
|
|
self::frenchGuiana->name => "French Guiana",
|
|
self::frenchPolynesia->name => "French Polynesia",
|
|
self::frenchSouthernTerritories->name => "French Southern Territories",
|
|
self::gabon->name => "Gabon",
|
|
self::gambia->name => "Gambia",
|
|
self::georgia->name => "Georgia",
|
|
self::germany->name => "Germany",
|
|
self::ghana->name => "Ghana",
|
|
self::gibraltar->name => "Gibraltar",
|
|
self::greece->name => "Greece",
|
|
self::greenland->name => "Greenland",
|
|
self::grenada->name => "Grenada",
|
|
self::guadeloupe->name => "Guadeloupe",
|
|
self::guam->name => "Guam",
|
|
self::guatemala->name => "Guatemala",
|
|
self::guernsey->name => "Guernsey",
|
|
self::guinea->name => "Guinea",
|
|
self::guineaBissau->name => "GuineaBissau",
|
|
self::guyana->name => "Guyana",
|
|
self::haiti->name => "Haiti",
|
|
self::heardIslandAndMcdonaldIslands->name => "Heard Island and McDonald Islands",
|
|
self::holySeeVaticanCityState->name => "Holy See (Vatican City State)",
|
|
self::honduras->name => "Honduras",
|
|
self::hongKong->name => "Hong Kong",
|
|
self::hungary->name => "Hungary",
|
|
self::iceland->name => "Iceland",
|
|
self::india->name => "India",
|
|
self::indonesia->name => "Indonesia",
|
|
self::iranIslamicRepublicOf->name => "Iran, Islamic Republic of",
|
|
self::iraq->name => "Iraq",
|
|
self::ireland->name => "Ireland",
|
|
self::isleOfMan->name => "Isle of Man",
|
|
self::israel->name => "Israel",
|
|
self::italy->name => "Italy",
|
|
self::jamaica->name => "Jamaica",
|
|
self::japan->name => "Japan",
|
|
self::jersey->name => "Jersey",
|
|
self::jordan->name => "Jordan",
|
|
self::kazakhstan->name => "Kazakhstan",
|
|
self::kenya->name => "Kenya",
|
|
self::kiribati->name => "Kiribati",
|
|
self::koreaDemocraticPeoplesRepublicOf->name => "Korea, Democratic People's Republic of",
|
|
self::koreaRepublicOf->name => "Korea, Republic of",
|
|
self::kuwait->name => "Kuwait",
|
|
self::kyrgyzstan->name => "Kyrgyzstan",
|
|
self::laoPeoplesDemocraticRepublic->name => "Lao People's Democratic Republic",
|
|
self::latvia->name => "Latvia",
|
|
self::lebanon->name => "Lebanon",
|
|
self::lesotho->name => "Lesotho",
|
|
self::liberia->name => "Liberia",
|
|
self::libya->name => "Libya",
|
|
self::liechtenstein->name => "Liechtenstein",
|
|
self::lithuania->name => "Lithuania",
|
|
self::luxembourg->name => "Luxembourg",
|
|
self::macao->name => "Macao",
|
|
self::macedoniaTheFormerYugoslavRepublicOf->name => "Macedonia, the Former Yugoslav Republic of",
|
|
self::madagascar->name => "Madagascar",
|
|
self::malawi->name => "Malawi",
|
|
self::malaysia->name => "Malaysia",
|
|
self::maldives->name => "Maldives",
|
|
self::mali->name => "Mali",
|
|
self::malta->name => "Malta",
|
|
self::marshallIslands->name => "Marshall Islands",
|
|
self::martinique->name => "Martinique",
|
|
self::mauritania->name => "Mauritania",
|
|
self::mauritius->name => "Mauritius",
|
|
self::mayotte->name => "Mayotte",
|
|
self::mexico->name => "Mexico",
|
|
self::micronesiaFederatedStatesOf->name => "Micronesia, Federated States of",
|
|
self::moldovaRepublicOf->name => "Moldova, Republic of",
|
|
self::monaco->name => "Monaco",
|
|
self::mongolia->name => "Mongolia",
|
|
self::montenegro->name => "Montenegro",
|
|
self::montserrat->name => "Montserrat",
|
|
self::morocco->name => "Morocco",
|
|
self::mozambique->name => "Mozambique",
|
|
self::myanmar->name => "Myanmar",
|
|
self::namibia->name => "Namibia",
|
|
self::nauru->name => "Nauru",
|
|
self::nepal->name => "Nepal",
|
|
self::netherlands->name => "Netherlands",
|
|
self::newCaledonia->name => "New Caledonia",
|
|
self::newZealand->name => "New Zealand",
|
|
self::nicaragua->name => "Nicaragua",
|
|
self::niger->name => "Niger",
|
|
self::nigeria->name => "Nigeria",
|
|
self::niue->name => "Niue",
|
|
self::norfolkIsland->name => "Norfolk Island",
|
|
self::northernMarianaIslands->name => "Northern Mariana Islands",
|
|
self::norway->name => "Norway",
|
|
self::oman->name => "Oman",
|
|
self::pakistan->name => "Pakistan",
|
|
self::palau->name => "Palau",
|
|
self::palestineStateOf->name => "Palestine, State of",
|
|
self::panama->name => "Panama",
|
|
self::papuaNewGuinea->name => "Papua New Guinea",
|
|
self::paraguay->name => "Paraguay",
|
|
self::peru->name => "Peru",
|
|
self::philippines->name => "Philippines",
|
|
self::pitcairn->name => "Pitcairn",
|
|
self::poland->name => "Poland",
|
|
self::portugal->name => "Portugal",
|
|
self::puertoRico->name => "Puerto Rico",
|
|
self::qatar->name => "Qatar",
|
|
self::reunion->name => "Réunion",
|
|
self::romania->name => "Romania",
|
|
self::russianFederation->name => "Russian Federation",
|
|
self::rwanda->name => "Rwanda",
|
|
self::saintBarthelemy->name => "Saint Barthélemy",
|
|
self::saintHelenaAscensionAndTristanDaCunha->name => "Saint Helena, Ascension and Tristan da Cunha",
|
|
self::saintKittsAndNevis->name => "Saint Kitts and Nevis",
|
|
self::saintLucia->name => "Saint Lucia",
|
|
self::saintMartinFrenchPart->name => "Saint Martin (French part)",
|
|
self::saintPierreAndMiquelon->name => "Saint Pierre and Miquelon",
|
|
self::saintVincentAndTheGrenadines->name => "Saint Vincent and the Grenadines",
|
|
self::samoa->name => "Samoa",
|
|
self::sanMarino->name => "San Marino",
|
|
self::saoTomeAndPrincipe->name => "Sao Tome and Principe",
|
|
self::saudiArabia->name => "Saudi Arabia",
|
|
self::senegal->name => "Senegal",
|
|
self::serbia->name => "Serbia",
|
|
self::seychelles->name => "Seychelles",
|
|
self::sierraLeone->name => "Sierra Leone",
|
|
self::singapore->name => "Singapore",
|
|
self::sintMaartenDutchPart->name => "Sint Maarten (Dutch part)",
|
|
self::slovakia->name => "Slovakia",
|
|
self::slovenia->name => "Slovenia",
|
|
self::solomonIslands->name => "Solomon Islands",
|
|
self::somalia->name => "Somalia",
|
|
self::southAfrica->name => "South Africa",
|
|
self::southGeorgiaAndTheSouthSandwichIslands->name => "South Georgia and the South Sandwich Islands",
|
|
self::southSudan->name => "South Sudan",
|
|
self::spain->name => "Spain",
|
|
self::sriLanka->name => "Sri Lanka",
|
|
self::sudan->name => "Sudan",
|
|
self::suriname->name => "Suriname",
|
|
self::svalbardAndJanMayen->name => "Svalbard and Jan Mayen",
|
|
self::swaziland->name => "Swaziland",
|
|
self::sweden->name => "Sweden",
|
|
self::switzerland->name => "Switzerland",
|
|
self::syrianArabRepublic->name => "Syrian Arab Republic",
|
|
self::taiwanProvinceOfChina->name => "Taiwan, Province of China",
|
|
self::tajikistan->name => "Tajikistan",
|
|
self::tanzaniaUnitedRepublicOf->name => "Tanzania, United Republic of",
|
|
self::thailand->name => "Thailand",
|
|
self::timorLeste->name => "TimorLeste",
|
|
self::togo->name => "Togo",
|
|
self::tokelau->name => "Tokelau",
|
|
self::tonga->name => "Tonga",
|
|
self::trinidadAndTobago->name => "Trinidad and Tobago",
|
|
self::tunisia->name => "Tunisia",
|
|
self::turkey->name => "Turkey",
|
|
self::turkmenistan->name => "Turkmenistan",
|
|
self::turksAndCaicosIslands->name => "Turks and Caicos Islands",
|
|
self::tuvalu->name => "Tuvalu",
|
|
self::uganda->name => "Uganda",
|
|
self::ukraine->name => "Ukraine",
|
|
self::unitedArabEmirates->name => "United Arab Emirates",
|
|
self::unitedKingdom->name => "United Kingdom",
|
|
self::unitedStates->name => "United States",
|
|
self::unitedStatesMinorOutlyingIslands->name => "United States Minor Outlying Islands",
|
|
self::uruguay->name => "Uruguay",
|
|
self::uzbekistan->name => "Uzbekistan",
|
|
self::vanuatu->name => "Vanuatu",
|
|
self::venezuelaBolivarianRepublicOf->name => "Venezuela, Bolivarian Republic of",
|
|
self::vietNam->name => "Viet Nam",
|
|
self::virginIslandsBritish->name => "Virgin Islands, British",
|
|
self::virginIslandsUs->name => "Virgin Islands, U.S.",
|
|
self::wallisAndFutuna->name => "Wallis and Futuna",
|
|
self::westernSahara->name => "Western Sahara",
|
|
self::yemen->name => "Yemen",
|
|
self::zambia->name => "Zambia",
|
|
self::zimbabwe->name => "Zimbabwe"
|
|
];
|
|
|
|
/**
|
|
* Get valid countries label
|
|
*
|
|
* @return array
|
|
*/
|
|
public static function getValidCountriesLabel(): array
|
|
{
|
|
return collect(self::getValidCountries())->map(function (self $country) {
|
|
return $country->label;
|
|
})->all();
|
|
}
|
|
|
|
/**
|
|
* Get Alpha 2 ISO code of valid countries
|
|
*
|
|
* @return array
|
|
*/
|
|
public static function getValidIsoAplha2Codes(): array
|
|
{
|
|
return \array_values(self::isoCodes());
|
|
}
|
|
|
|
/**
|
|
* Get valid countries
|
|
*
|
|
* @return array
|
|
*/
|
|
public static function getValidCountries(): array
|
|
{
|
|
return [
|
|
Country::belgium,
|
|
Country::luxembourg,
|
|
Country::france,
|
|
// * DROM C.
|
|
Country::guadeloupe,
|
|
Country::martinique,
|
|
Country::frenchGuiana,
|
|
Country::reunion,
|
|
Country::saintPierreAndMiquelon,
|
|
Country::mayotte,
|
|
Country::saintBarthelemy,
|
|
Country::saintMartinFrenchPart,
|
|
Country::wallisAndFutuna,
|
|
Country::frenchPolynesia,
|
|
Country::newCaledonia
|
|
];
|
|
}
|
|
|
|
/**
|
|
* Enum classes
|
|
*
|
|
* @return array
|
|
*/
|
|
protected static function isoCodes(): array
|
|
{
|
|
return [
|
|
'france' => 'FR',
|
|
'belgium' => 'BE',
|
|
'luxembourg' => 'LU',
|
|
'guadeloupe' => 'GP',
|
|
'martinique' => 'MQ',
|
|
'frenchGuiana' => 'GF',
|
|
'reunion' => 'RE',
|
|
'saintPierreAndMiquelon' => 'PM',
|
|
'mayotte' => 'YT',
|
|
'saintBarthelemy' => 'BL',
|
|
'saintMartinFrenchPart' => 'MF',
|
|
'wallisAndFutuna' => 'WF',
|
|
'frenchPolynesia' => 'PF',
|
|
'newCaledonia' => 'NC',
|
|
];
|
|
}
|
|
|
|
/**
|
|
* @param string $attribute
|
|
* @return integer|string
|
|
*/
|
|
public function get(string $attribute)
|
|
{
|
|
if ($attribute === 'iso') {
|
|
return $this->isoCodes()[$this->name] ?? null;
|
|
}
|
|
return $this->{$attribute};
|
|
}
|
|
}
|