1794 lines
38 KiB
TypeScript
1794 lines
38 KiB
TypeScript
import "svg-sprites/country-flags";
|
|
import {CountryFlag} from "svg-sprites/country-flags";
|
|
import {LogCategory, logWarn} from "tc-shared/log";
|
|
|
|
interface CountryInfo {
|
|
name: string;
|
|
alpha_2: string;
|
|
alpha_3: string;
|
|
un_code: number;
|
|
icon: string;
|
|
|
|
flagMissingWarned?: boolean;
|
|
}
|
|
const registeredCountries: CountryInfo[] = [];
|
|
const alphaCode2Info: { [name: string]: CountryInfo } = {};
|
|
|
|
const registerCountries = (array: CountryInfo[]) => {
|
|
array.push({
|
|
name: "Afghanistan",
|
|
alpha_2: "AF",
|
|
alpha_3: "AFG",
|
|
un_code: 4,
|
|
icon: "afghanistan",
|
|
});
|
|
array.push({
|
|
name: "Aland Islands",
|
|
alpha_2: "AX",
|
|
alpha_3: "ALA",
|
|
un_code: 248,
|
|
icon: "aland-islands",
|
|
});
|
|
array.push({
|
|
name: "Albania",
|
|
alpha_2: "AL",
|
|
alpha_3: "ALB",
|
|
un_code: 8,
|
|
icon: "albania",
|
|
});
|
|
array.push({
|
|
name: "Algeria",
|
|
alpha_2: "DZ",
|
|
alpha_3: "DZA",
|
|
un_code: 12,
|
|
icon: "algeria",
|
|
});
|
|
array.push({
|
|
name: "American Samoa",
|
|
alpha_2: "AS",
|
|
alpha_3: "ASM",
|
|
un_code: 16,
|
|
icon: "american-samoa",
|
|
});
|
|
array.push({
|
|
name: "Andorra",
|
|
alpha_2: "AD",
|
|
alpha_3: "AND",
|
|
un_code: 20,
|
|
icon: "andorra",
|
|
});
|
|
array.push({
|
|
name: "Angola",
|
|
alpha_2: "AO",
|
|
alpha_3: "AGO",
|
|
un_code: 24,
|
|
icon: "angola",
|
|
});
|
|
array.push({
|
|
name: "Anguilla",
|
|
alpha_2: "AI",
|
|
alpha_3: "AIA",
|
|
un_code: 660,
|
|
icon: "anguilla",
|
|
});
|
|
/* TODO(flag): https://en.wikipedia.org/wiki/Flag_of_Antarctica */
|
|
array.push({
|
|
name: "Antarctica",
|
|
alpha_2: "AQ",
|
|
alpha_3: "ATA",
|
|
un_code: 10,
|
|
icon: "worldwide",
|
|
});
|
|
array.push({
|
|
name: "Antigua and Barbuda",
|
|
alpha_2: "AG",
|
|
alpha_3: "ATG",
|
|
un_code: 28,
|
|
icon: "antigua-and-barbuda",
|
|
});
|
|
array.push({
|
|
name: "Argentina",
|
|
alpha_2: "AR",
|
|
alpha_3: "ARG",
|
|
un_code: 32,
|
|
icon: "argentina",
|
|
});
|
|
array.push({
|
|
name: "Armenia",
|
|
alpha_2: "AM",
|
|
alpha_3: "ARM",
|
|
un_code: 51,
|
|
icon: "armenia",
|
|
});
|
|
array.push({
|
|
name: "Aruba",
|
|
alpha_2: "AW",
|
|
alpha_3: "ABW",
|
|
un_code: 533,
|
|
icon: "aruba",
|
|
});
|
|
array.push({
|
|
name: "Australia",
|
|
alpha_2: "AU",
|
|
alpha_3: "AUS",
|
|
un_code: 36,
|
|
icon: "australia",
|
|
});
|
|
array.push({
|
|
name: "Austria",
|
|
alpha_2: "AT",
|
|
alpha_3: "AUT",
|
|
un_code: 40,
|
|
icon: "austria",
|
|
});
|
|
array.push({
|
|
name: "Azerbaijan",
|
|
alpha_2: "AZ",
|
|
alpha_3: "AZE",
|
|
un_code: 31,
|
|
icon: "azerbaijan",
|
|
});
|
|
array.push({
|
|
name: "Bahamas",
|
|
alpha_2: "BS",
|
|
alpha_3: "BHS",
|
|
un_code: 44,
|
|
icon: "bahamas",
|
|
});
|
|
array.push({
|
|
name: "Bahrain",
|
|
alpha_2: "BH",
|
|
alpha_3: "BHR",
|
|
un_code: 48,
|
|
icon: "bahrain",
|
|
});
|
|
array.push({
|
|
name: "Bangladesh",
|
|
alpha_2: "BD",
|
|
alpha_3: "BGD",
|
|
un_code: 50,
|
|
icon: "bangladesh",
|
|
});
|
|
array.push({
|
|
name: "Barbados",
|
|
alpha_2: "BB",
|
|
alpha_3: "BRB",
|
|
un_code: 52,
|
|
icon: "barbados",
|
|
});
|
|
array.push({
|
|
name: "Belarus",
|
|
alpha_2: "BY",
|
|
alpha_3: "BLR",
|
|
un_code: 112,
|
|
icon: "belarus",
|
|
});
|
|
array.push({
|
|
name: "Belgium",
|
|
alpha_2: "BE",
|
|
alpha_3: "BEL",
|
|
un_code: 56,
|
|
icon: "belgium",
|
|
});
|
|
array.push({
|
|
name: "Belize",
|
|
alpha_2: "BZ",
|
|
alpha_3: "BLZ",
|
|
un_code: 84,
|
|
icon: "belize",
|
|
});
|
|
array.push({
|
|
name: "Benin",
|
|
alpha_2: "BJ",
|
|
alpha_3: "BEN",
|
|
un_code: 204,
|
|
icon: "benin",
|
|
});
|
|
array.push({
|
|
name: "Bermuda",
|
|
alpha_2: "BM",
|
|
alpha_3: "BMU",
|
|
un_code: 60,
|
|
icon: "bermuda",
|
|
});
|
|
array.push({
|
|
name: "Bhutan",
|
|
alpha_2: "BT",
|
|
alpha_3: "BTN",
|
|
un_code: 64,
|
|
icon: "bhutan",
|
|
});
|
|
array.push({
|
|
name: "Bolivia",
|
|
alpha_2: "BO",
|
|
alpha_3: "BOL",
|
|
un_code: 68,
|
|
icon: "bolivia",
|
|
});
|
|
array.push({
|
|
name: "Bosnia and Herzegovina",
|
|
alpha_2: "BA",
|
|
alpha_3: "BIH",
|
|
un_code: 70,
|
|
icon: "bosnia-and-herzegovina",
|
|
});
|
|
array.push({
|
|
name: "Botswana",
|
|
alpha_2: "BW",
|
|
alpha_3: "BWA",
|
|
un_code: 72,
|
|
icon: "botswana",
|
|
});
|
|
/* Island uninhabited */
|
|
array.push({
|
|
name: "Bouvet Island",
|
|
alpha_2: "BV",
|
|
alpha_3: "BVT",
|
|
un_code: 74,
|
|
icon: "worldwide",
|
|
});
|
|
array.push({
|
|
name: "Brazil",
|
|
alpha_2: "BR",
|
|
alpha_3: "BRA",
|
|
un_code: 76,
|
|
icon: "brazil",
|
|
});
|
|
array.push({
|
|
name: "British Virgin Islands",
|
|
alpha_2: "VG",
|
|
alpha_3: "VGB",
|
|
un_code: 92,
|
|
icon: "british-virgin-islands",
|
|
});
|
|
array.push({
|
|
name: "British Indian Ocean Territory",
|
|
alpha_2: "IO",
|
|
alpha_3: "IOT",
|
|
un_code: 86,
|
|
icon: "british-indian-ocean-territory",
|
|
});
|
|
/* TODO(flag): https://de.wikipedia.org/wiki/Brunei */
|
|
array.push({
|
|
name: "Brunei Darussalam",
|
|
alpha_2: "BN",
|
|
alpha_3: "BRN",
|
|
un_code: 96,
|
|
icon: "worldwide",
|
|
});
|
|
array.push({
|
|
name: "Bulgaria",
|
|
alpha_2: "BG",
|
|
alpha_3: "BGR",
|
|
un_code: 100,
|
|
icon: "bulgaria",
|
|
});
|
|
array.push({
|
|
name: "Burkina Faso",
|
|
alpha_2: "BF",
|
|
alpha_3: "BFA",
|
|
un_code: 854,
|
|
icon: "burkina-faso",
|
|
});
|
|
array.push({
|
|
name: "Burundi",
|
|
alpha_2: "BI",
|
|
alpha_3: "BDI",
|
|
un_code: 108,
|
|
icon: "burundi",
|
|
});
|
|
array.push({
|
|
name: "Cambodia",
|
|
alpha_2: "KH",
|
|
alpha_3: "KHM",
|
|
un_code: 116,
|
|
icon: "cambodia",
|
|
});
|
|
array.push({
|
|
name: "Cameroon",
|
|
alpha_2: "CM",
|
|
alpha_3: "CMR",
|
|
un_code: 120,
|
|
icon: "cameroon",
|
|
});
|
|
array.push({
|
|
name: "Canada",
|
|
alpha_2: "CA",
|
|
alpha_3: "CAN",
|
|
un_code: 124,
|
|
icon: "canada",
|
|
});
|
|
array.push({
|
|
name: "Cape Verde",
|
|
alpha_2: "CV",
|
|
alpha_3: "CPV",
|
|
un_code: 132,
|
|
icon: "cape-verde",
|
|
});
|
|
array.push({
|
|
name: "Cayman Islands",
|
|
alpha_2: "KY",
|
|
alpha_3: "CYM",
|
|
un_code: 136,
|
|
icon: "cayman-islands",
|
|
});
|
|
array.push({
|
|
name: "Central African Republic",
|
|
alpha_2: "CF",
|
|
alpha_3: "CAF",
|
|
un_code: 140,
|
|
icon: "central-african-republic",
|
|
});
|
|
array.push({
|
|
name: "Chad",
|
|
alpha_2: "TD",
|
|
alpha_3: "TCD",
|
|
un_code: 148,
|
|
icon: "chad",
|
|
});
|
|
array.push({
|
|
name: "Chile",
|
|
alpha_2: "CL",
|
|
alpha_3: "CHL",
|
|
un_code: 152,
|
|
icon: "chile",
|
|
});
|
|
array.push({
|
|
name: "China",
|
|
alpha_2: "CN",
|
|
alpha_3: "CHN",
|
|
un_code: 156,
|
|
icon: "china",
|
|
});
|
|
array.push({
|
|
name: "Hong Kong, SAR China",
|
|
alpha_2: "HK",
|
|
alpha_3: "HKG",
|
|
un_code: 344,
|
|
icon: "hong-kong",
|
|
});
|
|
array.push({
|
|
name: "Macao, SAR China",
|
|
alpha_2: "MO",
|
|
alpha_3: "MAC",
|
|
un_code: 446,
|
|
icon: "macao",
|
|
});
|
|
array.push({
|
|
name: "Christmas Island",
|
|
alpha_2: "CX",
|
|
alpha_3: "CXR",
|
|
un_code: 162,
|
|
icon: "christmas-island",
|
|
});
|
|
array.push({
|
|
name: "Cocos (Keeling) Islands",
|
|
alpha_2: "CC",
|
|
alpha_3: "CCK",
|
|
un_code: 166,
|
|
icon: "cocos-island",
|
|
});
|
|
array.push({
|
|
name: "Colombia",
|
|
alpha_2: "CO",
|
|
alpha_3: "COL",
|
|
un_code: 170,
|
|
icon: "colombia",
|
|
});
|
|
array.push({
|
|
name: "Comoros",
|
|
alpha_2: "KM",
|
|
alpha_3: "COM",
|
|
un_code: 174,
|
|
icon: "comoros",
|
|
});
|
|
array.push({
|
|
name: "Congo (Brazzaville)",
|
|
alpha_2: "CG",
|
|
alpha_3: "COG",
|
|
un_code: 178,
|
|
icon: "republic-of-the-congo",
|
|
});
|
|
array.push({
|
|
name: "Congo (Kinshasa)",
|
|
alpha_2: "CD",
|
|
alpha_3: "COD",
|
|
un_code: 180,
|
|
icon: "democratic-republic-of-congo",
|
|
});
|
|
array.push({
|
|
name: "Cook Islands",
|
|
alpha_2: "CK",
|
|
alpha_3: "COK",
|
|
un_code: 184,
|
|
icon: "cook-islands",
|
|
});
|
|
array.push({
|
|
name: "Costa Rica",
|
|
alpha_2: "CR",
|
|
alpha_3: "CRI",
|
|
un_code: 188,
|
|
icon: "costa-rica",
|
|
});
|
|
array.push({
|
|
name: "Côte d'Ivoire",
|
|
alpha_2: "CI",
|
|
alpha_3: "CIV",
|
|
un_code: 384,
|
|
icon: "ivory-coast",
|
|
});
|
|
array.push({
|
|
name: "Croatia",
|
|
alpha_2: "HR",
|
|
alpha_3: "HRV",
|
|
un_code: 191,
|
|
icon: "croatia",
|
|
});
|
|
array.push({
|
|
name: "Cuba",
|
|
alpha_2: "CU",
|
|
alpha_3: "CUB",
|
|
un_code: 192,
|
|
icon: "cuba",
|
|
});
|
|
array.push({
|
|
name: "Cyprus",
|
|
alpha_2: "CY",
|
|
alpha_3: "CYP",
|
|
un_code: 196,
|
|
icon: "cyprus",
|
|
});
|
|
array.push({
|
|
name: "Czech Republic",
|
|
alpha_2: "CZ",
|
|
alpha_3: "CZE",
|
|
un_code: 203,
|
|
icon: "czech-republic",
|
|
});
|
|
array.push({
|
|
name: "Denmark",
|
|
alpha_2: "DK",
|
|
alpha_3: "DNK",
|
|
un_code: 208,
|
|
icon: "denmark",
|
|
});
|
|
array.push({
|
|
name: "Djibouti",
|
|
alpha_2: "DJ",
|
|
alpha_3: "DJI",
|
|
un_code: 262,
|
|
icon: "djibouti",
|
|
});
|
|
array.push({
|
|
name: "Dominica",
|
|
alpha_2: "DM",
|
|
alpha_3: "DMA",
|
|
un_code: 212,
|
|
icon: "dominica",
|
|
});
|
|
array.push({
|
|
name: "Dominican Republic",
|
|
alpha_2: "DO",
|
|
alpha_3: "DOM",
|
|
un_code: 214,
|
|
icon: "dominican-republic",
|
|
});
|
|
array.push({
|
|
name: "Ecuador",
|
|
alpha_2: "EC",
|
|
alpha_3: "ECU",
|
|
un_code: 218,
|
|
icon: "ecuador",
|
|
});
|
|
array.push({
|
|
name: "Egypt",
|
|
alpha_2: "EG",
|
|
alpha_3: "EGY",
|
|
un_code: 818,
|
|
icon: "egypt",
|
|
});
|
|
array.push({
|
|
name: "El Salvador",
|
|
alpha_2: "SV",
|
|
alpha_3: "SLV",
|
|
un_code: 222,
|
|
icon: "el-salvador",
|
|
});
|
|
array.push({
|
|
name: "Equatorial Guinea",
|
|
alpha_2: "GQ",
|
|
alpha_3: "GNQ",
|
|
un_code: 226,
|
|
icon: "equatorial-guinea",
|
|
});
|
|
array.push({
|
|
name: "Eritrea",
|
|
alpha_2: "ER",
|
|
alpha_3: "ERI",
|
|
un_code: 232,
|
|
icon: "eritrea",
|
|
});
|
|
array.push({
|
|
name: "Estonia",
|
|
alpha_2: "EE",
|
|
alpha_3: "EST",
|
|
un_code: 233,
|
|
icon: "estonia",
|
|
});
|
|
array.push({
|
|
name: "Ethiopia",
|
|
alpha_2: "ET",
|
|
alpha_3: "ETH",
|
|
un_code: 231,
|
|
icon: "ethiopia",
|
|
});
|
|
array.push({
|
|
name: "Falkland Islands (Malvinas)",
|
|
alpha_2: "FK",
|
|
alpha_3: "FLK",
|
|
un_code: 238,
|
|
icon: "falkland-islands",
|
|
});
|
|
array.push({
|
|
name: "Faroe Islands",
|
|
alpha_2: "FO",
|
|
alpha_3: "FRO",
|
|
un_code: 234,
|
|
icon: "faroe-islands",
|
|
});
|
|
array.push({
|
|
name: "Fiji",
|
|
alpha_2: "FJ",
|
|
alpha_3: "FJI",
|
|
un_code: 242,
|
|
icon: "fiji",
|
|
});
|
|
array.push({
|
|
name: "Finland",
|
|
alpha_2: "FI",
|
|
alpha_3: "FIN",
|
|
un_code: 246,
|
|
icon: "finland",
|
|
});
|
|
array.push({
|
|
name: "France",
|
|
alpha_2: "FR",
|
|
alpha_3: "FRA",
|
|
un_code: 250,
|
|
icon: "france",
|
|
});
|
|
/* TODO(flag): https://en.wikipedia.org/wiki/French_Guiana */
|
|
array.push({
|
|
name: "French Guiana",
|
|
alpha_2: "GF",
|
|
alpha_3: "GUF",
|
|
un_code: 254,
|
|
icon: "worldwide",
|
|
});
|
|
array.push({
|
|
name: "French Polynesia",
|
|
alpha_2: "PF",
|
|
alpha_3: "PYF",
|
|
un_code: 258,
|
|
icon: "french-polynesia",
|
|
});
|
|
/* TODO(flag): https://de.wikipedia.org/wiki/Französische_Süd-_und_Antarktisgebiete */
|
|
array.push({
|
|
name: "French Southern Territories",
|
|
alpha_2: "TF",
|
|
alpha_3: "ATF",
|
|
un_code: 260,
|
|
icon: "worldwide",
|
|
});
|
|
array.push({
|
|
name: "Gabon",
|
|
alpha_2: "GA",
|
|
alpha_3: "GAB",
|
|
un_code: 266,
|
|
icon: "gabon",
|
|
});
|
|
array.push({
|
|
name: "Gambia",
|
|
alpha_2: "GM",
|
|
alpha_3: "GMB",
|
|
un_code: 270,
|
|
icon: "gambia",
|
|
});
|
|
array.push({
|
|
name: "Georgia",
|
|
alpha_2: "GE",
|
|
alpha_3: "GEO",
|
|
un_code: 268,
|
|
icon: "georgia",
|
|
});
|
|
array.push({
|
|
name: "Germany",
|
|
alpha_2: "DE",
|
|
alpha_3: "DEU",
|
|
un_code: 276,
|
|
icon: "germany",
|
|
});
|
|
array.push({
|
|
name: "Ghana",
|
|
alpha_2: "GH",
|
|
alpha_3: "GHA",
|
|
un_code: 288,
|
|
icon: "ghana",
|
|
});
|
|
array.push({
|
|
name: "Gibraltar",
|
|
alpha_2: "GI",
|
|
alpha_3: "GIB",
|
|
un_code: 292,
|
|
icon: "gibraltar",
|
|
});
|
|
array.push({
|
|
name: "Greece",
|
|
alpha_2: "GR",
|
|
alpha_3: "GRC",
|
|
un_code: 300,
|
|
icon: "greece",
|
|
});
|
|
array.push({
|
|
name: "Greenland",
|
|
alpha_2: "GL",
|
|
alpha_3: "GRL",
|
|
un_code: 304,
|
|
icon: "greenland",
|
|
});
|
|
array.push({
|
|
name: "Grenada",
|
|
alpha_2: "GD",
|
|
alpha_3: "GRD",
|
|
un_code: 308,
|
|
icon: "grenada",
|
|
});
|
|
/* The france flag is the official flag of Guadeloupe */
|
|
array.push({
|
|
name: "Guadeloupe",
|
|
alpha_2: "GP",
|
|
alpha_3: "GLP",
|
|
un_code: 312,
|
|
icon: "france",
|
|
});
|
|
array.push({
|
|
name: "Guam",
|
|
alpha_2: "GU",
|
|
alpha_3: "GUM",
|
|
un_code: 316,
|
|
icon: "guam",
|
|
});
|
|
array.push({
|
|
name: "Guatemala",
|
|
alpha_2: "GT",
|
|
alpha_3: "GTM",
|
|
un_code: 320,
|
|
icon: "guatemala",
|
|
});
|
|
array.push({
|
|
name: "Guernsey",
|
|
alpha_2: "GG",
|
|
alpha_3: "GGY",
|
|
un_code: 831,
|
|
icon: "guernsey",
|
|
});
|
|
array.push({
|
|
name: "Guinea",
|
|
alpha_2: "GN",
|
|
alpha_3: "GIN",
|
|
un_code: 324,
|
|
icon: "guinea",
|
|
});
|
|
array.push({
|
|
name: "Guinea-Bissau",
|
|
alpha_2: "GW",
|
|
alpha_3: "GNB",
|
|
un_code: 624,
|
|
icon: "guinea_bissau",
|
|
});
|
|
/* TODO(flag): https://de.wikipedia.org/wiki/Guyana */
|
|
array.push({
|
|
name: "Guyana",
|
|
alpha_2: "GY",
|
|
alpha_3: "GUY",
|
|
un_code: 328,
|
|
icon: "worldwide",
|
|
});
|
|
array.push({
|
|
name: "Haiti",
|
|
alpha_2: "HT",
|
|
alpha_3: "HTI",
|
|
un_code: 332,
|
|
icon: "haiti",
|
|
});
|
|
/* Uninhibited */
|
|
array.push({
|
|
name: "Heard and Mcdonald Islands",
|
|
alpha_2: "HM",
|
|
alpha_3: "HMD",
|
|
un_code: 334,
|
|
icon: "worldwide",
|
|
});
|
|
array.push({
|
|
name: "Holy See (Vatican City State)",
|
|
alpha_2: "VA",
|
|
alpha_3: "VAT",
|
|
un_code: 336,
|
|
icon: "vatican_city",
|
|
});
|
|
array.push({
|
|
name: "Honduras",
|
|
alpha_2: "HN",
|
|
alpha_3: "HND",
|
|
un_code: 340,
|
|
icon: "honduras",
|
|
});
|
|
array.push({
|
|
name: "Hungary",
|
|
alpha_2: "HU",
|
|
alpha_3: "HUN",
|
|
un_code: 348,
|
|
icon: "hungary",
|
|
});
|
|
array.push({
|
|
name: "Iceland",
|
|
alpha_2: "IS",
|
|
alpha_3: "ISL",
|
|
un_code: 352,
|
|
icon: "iceland",
|
|
});
|
|
array.push({
|
|
name: "India",
|
|
alpha_2: "IN",
|
|
alpha_3: "IND",
|
|
un_code: 356,
|
|
icon: "india",
|
|
});
|
|
array.push({
|
|
name: "Indonesia",
|
|
alpha_2: "ID",
|
|
alpha_3: "IDN",
|
|
un_code: 360,
|
|
icon: "indonesia",
|
|
});
|
|
array.push({
|
|
name: "Iran, Islamic Republic of",
|
|
alpha_2: "IR",
|
|
alpha_3: "IRN",
|
|
un_code: 364,
|
|
icon: "iran",
|
|
});
|
|
array.push({
|
|
name: "Iraq",
|
|
alpha_2: "IQ",
|
|
alpha_3: "IRQ",
|
|
un_code: 368,
|
|
icon: "iraq",
|
|
});
|
|
array.push({
|
|
name: "Ireland",
|
|
alpha_2: "IE",
|
|
alpha_3: "IRL",
|
|
un_code: 372,
|
|
icon: "ireland",
|
|
});
|
|
array.push({
|
|
name: "Isle of Man",
|
|
alpha_2: "IM",
|
|
alpha_3: "IMN",
|
|
un_code: 833,
|
|
icon: "isle-of-man",
|
|
});
|
|
array.push({
|
|
name: "Israel",
|
|
alpha_2: "IL",
|
|
alpha_3: "ISR",
|
|
un_code: 376,
|
|
icon: "israel",
|
|
});
|
|
array.push({
|
|
name: "Italy",
|
|
alpha_2: "IT",
|
|
alpha_3: "ITA",
|
|
un_code: 380,
|
|
icon: "italy",
|
|
});
|
|
array.push({
|
|
name: "Jamaica",
|
|
alpha_2: "JM",
|
|
alpha_3: "JAM",
|
|
un_code: 388,
|
|
icon: "jamaica",
|
|
});
|
|
array.push({
|
|
name: "Japan",
|
|
alpha_2: "JP",
|
|
alpha_3: "JPN",
|
|
un_code: 392,
|
|
icon: "japan",
|
|
});
|
|
array.push({
|
|
name: "Jersey",
|
|
alpha_2: "JE",
|
|
alpha_3: "JEY",
|
|
un_code: 832,
|
|
icon: "jersey",
|
|
});
|
|
array.push({
|
|
name: "Jordan",
|
|
alpha_2: "JO",
|
|
alpha_3: "JOR",
|
|
un_code: 400,
|
|
icon: "jordan",
|
|
});
|
|
array.push({
|
|
name: "Kazakhstan",
|
|
alpha_2: "KZ",
|
|
alpha_3: "KAZ",
|
|
un_code: 398,
|
|
icon: "kazakhstan",
|
|
});
|
|
array.push({
|
|
name: "Kenya",
|
|
alpha_2: "KE",
|
|
alpha_3: "KEN",
|
|
un_code: 404,
|
|
icon: "kenya",
|
|
});
|
|
/* TODO(flag): https://de.wikipedia.org/wiki/Kiribati */
|
|
array.push({
|
|
name: "Kiribati",
|
|
alpha_2: "KI",
|
|
alpha_3: "KIR",
|
|
un_code: 296,
|
|
icon: "worldwide",
|
|
});
|
|
/* Will ever anybody join from there? :D */
|
|
array.push({
|
|
name: "Korea (North)",
|
|
alpha_2: "KP",
|
|
alpha_3: "PRK",
|
|
un_code: 408,
|
|
icon: "north-korea",
|
|
});
|
|
array.push({
|
|
name: "Korea (South)",
|
|
alpha_2: "KR",
|
|
alpha_3: "KOR",
|
|
un_code: 410,
|
|
icon: "south-korea",
|
|
});
|
|
array.push({
|
|
name: "Kuwait",
|
|
alpha_2: "KW",
|
|
alpha_3: "KWT",
|
|
un_code: 414,
|
|
icon: "kuwait",
|
|
});
|
|
array.push({
|
|
name: "Kyrgyzstan",
|
|
alpha_2: "KG",
|
|
alpha_3: "KGZ",
|
|
un_code: 417,
|
|
icon: "kyrgyzstan",
|
|
});
|
|
array.push({
|
|
name: "Lao PDR",
|
|
alpha_2: "LA",
|
|
alpha_3: "LAO",
|
|
un_code: 418,
|
|
icon: "laos",
|
|
});
|
|
array.push({
|
|
name: "Latvia",
|
|
alpha_2: "LV",
|
|
alpha_3: "LVA",
|
|
un_code: 428,
|
|
icon: "latvia",
|
|
});
|
|
array.push({
|
|
name: "Lebanon",
|
|
alpha_2: "LB",
|
|
alpha_3: "LBN",
|
|
un_code: 422,
|
|
icon: "lebanon",
|
|
});
|
|
array.push({
|
|
name: "Lesotho",
|
|
alpha_2: "LS",
|
|
alpha_3: "LSO",
|
|
un_code: 426,
|
|
icon: "lesotho",
|
|
});
|
|
array.push({
|
|
name: "Liberia",
|
|
alpha_2: "LR",
|
|
alpha_3: "LBR",
|
|
un_code: 430,
|
|
icon: "liberia",
|
|
});
|
|
array.push({
|
|
name: "Libya",
|
|
alpha_2: "LY",
|
|
alpha_3: "LBY",
|
|
un_code: 434,
|
|
icon: "libya",
|
|
});
|
|
array.push({
|
|
name: "Liechtenstein",
|
|
alpha_2: "LI",
|
|
alpha_3: "LIE",
|
|
un_code: 438,
|
|
icon: "liechtenstein",
|
|
});
|
|
array.push({
|
|
name: "Lithuania",
|
|
alpha_2: "LT",
|
|
alpha_3: "LTU",
|
|
un_code: 440,
|
|
icon: "lithuania",
|
|
});
|
|
array.push({
|
|
name: "Luxembourg",
|
|
alpha_2: "LU",
|
|
alpha_3: "LUX",
|
|
un_code: 442,
|
|
icon: "luxembourg",
|
|
});
|
|
array.push({
|
|
name: "Macedonia, Republic of",
|
|
alpha_2: "MK",
|
|
alpha_3: "MKD",
|
|
un_code: 807,
|
|
icon: "republic-of-macedonia",
|
|
});
|
|
array.push({
|
|
name: "Madagascar",
|
|
alpha_2: "MG",
|
|
alpha_3: "MDG",
|
|
un_code: 450,
|
|
icon: "madagascar",
|
|
});
|
|
array.push({
|
|
name: "Malawi",
|
|
alpha_2: "MW",
|
|
alpha_3: "MWI",
|
|
un_code: 454,
|
|
icon: "malawi",
|
|
});
|
|
array.push({
|
|
name: "Malaysia",
|
|
alpha_2: "MY",
|
|
alpha_3: "MYS",
|
|
un_code: 458,
|
|
icon: "malaysia",
|
|
});
|
|
array.push({
|
|
name: "Maldives",
|
|
alpha_2: "MV",
|
|
alpha_3: "MDV",
|
|
un_code: 462,
|
|
icon: "maldives",
|
|
});
|
|
array.push({
|
|
name: "Mali",
|
|
alpha_2: "ML",
|
|
alpha_3: "MLI",
|
|
un_code: 466,
|
|
icon: "mali",
|
|
});
|
|
array.push({
|
|
name: "Malta",
|
|
alpha_2: "MT",
|
|
alpha_3: "MLT",
|
|
un_code: 470,
|
|
icon: "malta",
|
|
});
|
|
array.push({
|
|
name: "Marshall Islands",
|
|
alpha_2: "MH",
|
|
alpha_3: "MHL",
|
|
un_code: 584,
|
|
icon: "marshall-island",
|
|
});
|
|
array.push({
|
|
name: "Martinique",
|
|
alpha_2: "MQ",
|
|
alpha_3: "MTQ",
|
|
un_code: 474,
|
|
icon: "martinique",
|
|
});
|
|
array.push({
|
|
name: "Mauritania",
|
|
alpha_2: "MR",
|
|
alpha_3: "MRT",
|
|
un_code: 478,
|
|
icon: "mauritania",
|
|
});
|
|
array.push({
|
|
name: "Mauritius",
|
|
alpha_2: "MU",
|
|
alpha_3: "MUS",
|
|
un_code: 480,
|
|
icon: "mauritius",
|
|
});
|
|
/* TODO(flag): https://de.wikipedia.org/wiki/Mayotte */
|
|
array.push({
|
|
name: "Mayotte",
|
|
alpha_2: "YT",
|
|
alpha_3: "MYT",
|
|
un_code: 175,
|
|
icon: "worldwide",
|
|
});
|
|
array.push({
|
|
name: "Mexico",
|
|
alpha_2: "MX",
|
|
alpha_3: "MEX",
|
|
un_code: 484,
|
|
icon: "mexico",
|
|
});
|
|
array.push({
|
|
name: "Micronesia, Federated States of",
|
|
alpha_2: "FM",
|
|
alpha_3: "FSM",
|
|
un_code: 583,
|
|
icon: "micronesia",
|
|
});
|
|
array.push({
|
|
name: "Moldova",
|
|
alpha_2: "MD",
|
|
alpha_3: "MDA",
|
|
un_code: 498,
|
|
icon: "moldova",
|
|
});
|
|
array.push({
|
|
name: "Monaco",
|
|
alpha_2: "MC",
|
|
alpha_3: "MCO",
|
|
un_code: 492,
|
|
icon: "monaco",
|
|
});
|
|
array.push({
|
|
name: "Mongolia",
|
|
alpha_2: "MN",
|
|
alpha_3: "MNG",
|
|
un_code: 496,
|
|
icon: "mongolia",
|
|
});
|
|
array.push({
|
|
name: "Montenegro",
|
|
alpha_2: "ME",
|
|
alpha_3: "MNE",
|
|
un_code: 499,
|
|
icon: "montenegro",
|
|
});
|
|
array.push({
|
|
name: "Montserrat",
|
|
alpha_2: "MS",
|
|
alpha_3: "MSR",
|
|
un_code: 500,
|
|
icon: "montserrat",
|
|
});
|
|
array.push({
|
|
name: "Morocco",
|
|
alpha_2: "MA",
|
|
alpha_3: "MAR",
|
|
un_code: 504,
|
|
icon: "morocco",
|
|
});
|
|
array.push({
|
|
name: "Mozambique",
|
|
alpha_2: "MZ",
|
|
alpha_3: "MOZ",
|
|
un_code: 508,
|
|
icon: "mozambique",
|
|
});
|
|
array.push({
|
|
name: "Myanmar",
|
|
alpha_2: "MM",
|
|
alpha_3: "MMR",
|
|
un_code: 104,
|
|
icon: "myanmar",
|
|
});
|
|
array.push({
|
|
name: "Namibia",
|
|
alpha_2: "NA",
|
|
alpha_3: "NAM",
|
|
un_code: 516,
|
|
icon: "namibia",
|
|
});
|
|
array.push({
|
|
name: "Nauru",
|
|
alpha_2: "NR",
|
|
alpha_3: "NRU",
|
|
un_code: 520,
|
|
icon: "nauru",
|
|
});
|
|
array.push({
|
|
name: "Nepal",
|
|
alpha_2: "NP",
|
|
alpha_3: "NPL",
|
|
un_code: 524,
|
|
icon: "nepal",
|
|
});
|
|
array.push({
|
|
name: "Netherlands",
|
|
alpha_2: "NL",
|
|
alpha_3: "NLD",
|
|
un_code: 528,
|
|
icon: "netherlands",
|
|
});
|
|
/* Official flag is the french flag */
|
|
array.push({
|
|
name: "New Caledonia",
|
|
alpha_2: "NC",
|
|
alpha_3: "NCL",
|
|
un_code: 540,
|
|
icon: "french",
|
|
});
|
|
array.push({
|
|
name: "New Zealand",
|
|
alpha_2: "NZ",
|
|
alpha_3: "NZL",
|
|
un_code: 554,
|
|
icon: "new-zealand",
|
|
});
|
|
array.push({
|
|
name: "Nicaragua",
|
|
alpha_2: "NI",
|
|
alpha_3: "NIC",
|
|
un_code: 558,
|
|
icon: "nicaragua",
|
|
});
|
|
array.push({
|
|
name: "Niger",
|
|
alpha_2: "NE",
|
|
alpha_3: "NER",
|
|
un_code: 562,
|
|
icon: "niger",
|
|
});
|
|
array.push({
|
|
name: "Nigeria",
|
|
alpha_2: "NG",
|
|
alpha_3: "NGA",
|
|
un_code: 566,
|
|
icon: "nigeria",
|
|
});
|
|
array.push({
|
|
name: "Niue",
|
|
alpha_2: "NU",
|
|
alpha_3: "NIU",
|
|
un_code: 570,
|
|
icon: "niue",
|
|
});
|
|
array.push({
|
|
name: "Norfolk Island",
|
|
alpha_2: "NF",
|
|
alpha_3: "NFK",
|
|
un_code: 574,
|
|
icon: "norfolk-island",
|
|
});
|
|
array.push({
|
|
name: "Northern Mariana Islands",
|
|
alpha_2: "MP",
|
|
alpha_3: "MNP",
|
|
un_code: 580,
|
|
icon: "northern-marianas-islands",
|
|
});
|
|
array.push({
|
|
name: "Norway",
|
|
alpha_2: "NO",
|
|
alpha_3: "NOR",
|
|
un_code: 578,
|
|
icon: "norway",
|
|
});
|
|
array.push({
|
|
name: "Oman",
|
|
alpha_2: "OM",
|
|
alpha_3: "OMN",
|
|
un_code: 512,
|
|
icon: "oman",
|
|
});
|
|
array.push({
|
|
name: "Pakistan",
|
|
alpha_2: "PK",
|
|
alpha_3: "PAK",
|
|
un_code: 586,
|
|
icon: "pakistan",
|
|
});
|
|
array.push({
|
|
name: "Palau",
|
|
alpha_2: "PW",
|
|
alpha_3: "PLW",
|
|
un_code: 585,
|
|
icon: "palau",
|
|
});
|
|
/* TODO(flag): https://en.wikipedia.org/wiki/Palestinians */
|
|
array.push({
|
|
name: "Palestinian Territory",
|
|
alpha_2: "PS",
|
|
alpha_3: "PSE",
|
|
un_code: 275,
|
|
icon: "worldwide",
|
|
});
|
|
array.push({
|
|
name: "Panama",
|
|
alpha_2: "PA",
|
|
alpha_3: "PAN",
|
|
un_code: 591,
|
|
icon: "panama",
|
|
});
|
|
array.push({
|
|
name: "Papua New Guinea",
|
|
alpha_2: "PG",
|
|
alpha_3: "PNG",
|
|
un_code: 598,
|
|
icon: "papua-new-guinea",
|
|
});
|
|
array.push({
|
|
name: "Paraguay",
|
|
alpha_2: "PY",
|
|
alpha_3: "PRY",
|
|
un_code: 600,
|
|
icon: "paraguay",
|
|
});
|
|
array.push({
|
|
name: "Peru",
|
|
alpha_2: "PE",
|
|
alpha_3: "PER",
|
|
un_code: 604,
|
|
icon: "peru",
|
|
});
|
|
array.push({
|
|
name: "Philippines",
|
|
alpha_2: "PH",
|
|
alpha_3: "PHL",
|
|
un_code: 608,
|
|
icon: "philippines",
|
|
});
|
|
array.push({
|
|
name: "Pitcairn",
|
|
alpha_2: "PN",
|
|
alpha_3: "PCN",
|
|
un_code: 612,
|
|
icon: "pitcairn-islands",
|
|
});
|
|
array.push({
|
|
name: "Poland",
|
|
alpha_2: "PL",
|
|
alpha_3: "POL",
|
|
un_code: 616,
|
|
icon: "poland",
|
|
});
|
|
array.push({
|
|
name: "Portugal",
|
|
alpha_2: "PT",
|
|
alpha_3: "PRT",
|
|
un_code: 620,
|
|
icon: "portugal",
|
|
});
|
|
array.push({
|
|
name: "Puerto Rico",
|
|
alpha_2: "PR",
|
|
alpha_3: "PRI",
|
|
un_code: 630,
|
|
icon: "puerto-rico",
|
|
});
|
|
array.push({
|
|
name: "Qatar",
|
|
alpha_2: "QA",
|
|
alpha_3: "QAT",
|
|
un_code: 634,
|
|
icon: "qatar",
|
|
});
|
|
array.push({
|
|
name: "Réunion",
|
|
alpha_2: "RE",
|
|
alpha_3: "REU",
|
|
un_code: 638,
|
|
icon: "french",
|
|
});
|
|
array.push({
|
|
name: "Romania",
|
|
alpha_2: "RO",
|
|
alpha_3: "ROU",
|
|
un_code: 642,
|
|
icon: "romania",
|
|
});
|
|
array.push({
|
|
name: "Russian Federation",
|
|
alpha_2: "RU",
|
|
alpha_3: "RUS",
|
|
un_code: 643,
|
|
icon: "russia",
|
|
});
|
|
array.push({
|
|
name: "Rwanda",
|
|
alpha_2: "RW",
|
|
alpha_3: "RWA",
|
|
un_code: 646,
|
|
icon: "rwanda",
|
|
});
|
|
array.push({
|
|
name: "Saint-Barthélemy",
|
|
alpha_2: "BL",
|
|
alpha_3: "BLM",
|
|
un_code: 652,
|
|
icon: "french",
|
|
});
|
|
/* More or less uninhibited (2017: 4846 inhabitants)*/
|
|
array.push({
|
|
name: "Saint Helena",
|
|
alpha_2: "SH",
|
|
alpha_3: "SHN",
|
|
un_code: 654,
|
|
icon: "worldwide",
|
|
});
|
|
array.push({
|
|
name: "Saint Kitts and Nevis",
|
|
alpha_2: "KN",
|
|
alpha_3: "KNA",
|
|
un_code: 659,
|
|
icon: "saint-kitts-and-nevis",
|
|
});
|
|
array.push({
|
|
name: "Saint Lucia",
|
|
alpha_2: "LC",
|
|
alpha_3: "LCA",
|
|
un_code: 662,
|
|
icon: "st_lucia",
|
|
});
|
|
array.push({
|
|
name: "Saint-Martin (French part)",
|
|
alpha_2: "MF",
|
|
alpha_3: "MAF",
|
|
un_code: 663,
|
|
icon: "french",
|
|
});
|
|
array.push({
|
|
name: "Saint Pierre and Miquelon",
|
|
alpha_2: "PM",
|
|
alpha_3: "SPM",
|
|
un_code: 666,
|
|
icon: "french",
|
|
});
|
|
/* TODO(flag): https://de.wikipedia.org/wiki/St._Vincent_und_die_Grenadinen */
|
|
array.push({
|
|
name: "Saint Vincent and Grenadines",
|
|
alpha_2: "VC",
|
|
alpha_3: "VCT",
|
|
un_code: 670,
|
|
icon: "worldwide",
|
|
});
|
|
array.push({
|
|
name: "Samoa",
|
|
alpha_2: "WS",
|
|
alpha_3: "WSM",
|
|
un_code: 882,
|
|
icon: "samoa",
|
|
});
|
|
array.push({
|
|
name: "San Marino",
|
|
alpha_2: "SM",
|
|
alpha_3: "SMR",
|
|
un_code: 674,
|
|
icon: "san-marino",
|
|
});
|
|
array.push({
|
|
name: "Sao Tome and Principe",
|
|
alpha_2: "ST",
|
|
alpha_3: "STP",
|
|
un_code: 678,
|
|
icon: "sao-tome-and-principe",
|
|
});
|
|
array.push({
|
|
name: "Saudi Arabia",
|
|
alpha_2: "SA",
|
|
alpha_3: "SAU",
|
|
un_code: 682,
|
|
icon: "saudi-arabia",
|
|
});
|
|
array.push({
|
|
name: "Senegal",
|
|
alpha_2: "SN",
|
|
alpha_3: "SEN",
|
|
un_code: 686,
|
|
icon: "senegal",
|
|
});
|
|
array.push({
|
|
name: "Serbia",
|
|
alpha_2: "RS",
|
|
alpha_3: "SRB",
|
|
un_code: 688,
|
|
icon: "serbia",
|
|
});
|
|
array.push({
|
|
name: "Seychelles",
|
|
alpha_2: "SC",
|
|
alpha_3: "SYC",
|
|
un_code: 690,
|
|
icon: "seychelles",
|
|
});
|
|
array.push({
|
|
name: "Sierra Leone",
|
|
alpha_2: "SL",
|
|
alpha_3: "SLE",
|
|
un_code: 694,
|
|
icon: "sierra-leone",
|
|
});
|
|
array.push({
|
|
name: "Singapore",
|
|
alpha_2: "SG",
|
|
alpha_3: "SGP",
|
|
un_code: 702,
|
|
icon: "singapore",
|
|
});
|
|
array.push({
|
|
name: "Slovakia",
|
|
alpha_2: "SK",
|
|
alpha_3: "SVK",
|
|
un_code: 703,
|
|
icon: "slovakia",
|
|
});
|
|
array.push({
|
|
name: "Slovenia",
|
|
alpha_2: "SI",
|
|
alpha_3: "SVN",
|
|
un_code: 705,
|
|
icon: "slovenia",
|
|
});
|
|
array.push({
|
|
name: "Solomon Islands",
|
|
alpha_2: "SB",
|
|
alpha_3: "SLB",
|
|
un_code: 90,
|
|
icon: "solomon-islands",
|
|
});
|
|
array.push({
|
|
name: "Somalia",
|
|
alpha_2: "SO",
|
|
alpha_3: "SOM",
|
|
un_code: 706,
|
|
icon: "somalia",
|
|
});
|
|
array.push({
|
|
name: "South Africa",
|
|
alpha_2: "ZA",
|
|
alpha_3: "ZAF",
|
|
un_code: 710,
|
|
icon: "south-africa",
|
|
});
|
|
array.push({
|
|
name: "South Georgia and the South Sandwich Islands",
|
|
alpha_2: "GS",
|
|
alpha_3: "SGS",
|
|
un_code: 239,
|
|
icon: "worldwide",
|
|
});
|
|
array.push({
|
|
name: "South Sudan",
|
|
alpha_2: "SS",
|
|
alpha_3: "SSD",
|
|
un_code: 728,
|
|
icon: "south-sudan",
|
|
});
|
|
array.push({
|
|
name: "Spain",
|
|
alpha_2: "ES",
|
|
alpha_3: "ESP",
|
|
un_code: 724,
|
|
icon: "spain",
|
|
});
|
|
array.push({
|
|
name: "Sri Lanka",
|
|
alpha_2: "LK",
|
|
alpha_3: "LKA",
|
|
un_code: 144,
|
|
icon: "sri-lanka",
|
|
});
|
|
array.push({
|
|
name: "Sudan",
|
|
alpha_2: "SD",
|
|
alpha_3: "SDN",
|
|
un_code: 736,
|
|
icon: "sudan",
|
|
});
|
|
array.push({
|
|
name: "Suriname",
|
|
alpha_2: "SR",
|
|
alpha_3: "SUR",
|
|
un_code: 740,
|
|
icon: "suriname",
|
|
});
|
|
array.push({
|
|
name: "Svalbard and Jan Mayen Islands",
|
|
alpha_2: "SJ",
|
|
alpha_3: "SJM",
|
|
un_code: 744,
|
|
icon: "worldwide",
|
|
});
|
|
array.push({
|
|
name: "Swaziland",
|
|
alpha_2: "SZ",
|
|
alpha_3: "SWZ",
|
|
un_code: 748,
|
|
icon: "worldwide",
|
|
});
|
|
array.push({
|
|
name: "Sweden",
|
|
alpha_2: "SE",
|
|
alpha_3: "SWE",
|
|
un_code: 752,
|
|
icon: "sweden",
|
|
});
|
|
array.push({
|
|
name: "Switzerland",
|
|
alpha_2: "CH",
|
|
alpha_3: "CHE",
|
|
un_code: 756,
|
|
icon: "switzerland",
|
|
});
|
|
array.push({
|
|
name: "Syrian Arab Republic (Syria)",
|
|
alpha_2: "SY",
|
|
alpha_3: "SYR",
|
|
un_code: 760,
|
|
icon: "syria",
|
|
});
|
|
array.push({
|
|
name: "Taiwan, Republic of China",
|
|
alpha_2: "TW",
|
|
alpha_3: "TWN",
|
|
un_code: 158,
|
|
icon: "taiwan",
|
|
});
|
|
array.push({
|
|
name: "Tajikistan",
|
|
alpha_2: "TJ",
|
|
alpha_3: "TJK",
|
|
un_code: 762,
|
|
icon: "tajikistan",
|
|
});
|
|
array.push({
|
|
name: "Tanzania, United Republic of",
|
|
alpha_2: "TZ",
|
|
alpha_3: "TZA",
|
|
un_code: 834,
|
|
icon: "tanzania",
|
|
});
|
|
array.push({
|
|
name: "Thailand",
|
|
alpha_2: "TH",
|
|
alpha_3: "THA",
|
|
un_code: 764,
|
|
icon: "thailand",
|
|
});
|
|
array.push({
|
|
name: "Timor-Leste",
|
|
alpha_2: "TL",
|
|
alpha_3: "TLS",
|
|
un_code: 626,
|
|
icon: "east-timor",
|
|
});
|
|
array.push({
|
|
name: "Togo",
|
|
alpha_2: "TG",
|
|
alpha_3: "TGO",
|
|
un_code: 768,
|
|
icon: "togo",
|
|
});
|
|
array.push({
|
|
name: "Tokelau",
|
|
alpha_2: "TK",
|
|
alpha_3: "TKL",
|
|
un_code: 772,
|
|
icon: "tokelau",
|
|
});
|
|
array.push({
|
|
name: "Tonga",
|
|
alpha_2: "TO",
|
|
alpha_3: "TON",
|
|
un_code: 776,
|
|
icon: "tonga",
|
|
});
|
|
array.push({
|
|
name: "Trinidad and Tobago",
|
|
alpha_2: "TT",
|
|
alpha_3: "TTO",
|
|
un_code: 780,
|
|
icon: "trinidad-and-tobago",
|
|
});
|
|
array.push({
|
|
name: "Tunisia",
|
|
alpha_2: "TN",
|
|
alpha_3: "TUN",
|
|
un_code: 788,
|
|
icon: "tunisia",
|
|
});
|
|
array.push({
|
|
name: "Turkey",
|
|
alpha_2: "TR",
|
|
alpha_3: "TUR",
|
|
un_code: 792,
|
|
icon: "turkey",
|
|
});
|
|
array.push({
|
|
name: "Turkmenistan",
|
|
alpha_2: "TM",
|
|
alpha_3: "TKM",
|
|
un_code: 795,
|
|
icon: "turkmenistan",
|
|
});
|
|
array.push({
|
|
name: "Turks and Caicos Islands",
|
|
alpha_2: "TC",
|
|
alpha_3: "TCA",
|
|
un_code: 796,
|
|
icon: "worldwide",
|
|
});
|
|
array.push({
|
|
name: "Tuvalu",
|
|
alpha_2: "TV",
|
|
alpha_3: "TUV",
|
|
un_code: 798,
|
|
icon: "worldwide",
|
|
});
|
|
array.push({
|
|
name: "Uganda",
|
|
alpha_2: "UG",
|
|
alpha_3: "UGA",
|
|
un_code: 800,
|
|
icon: "uganda",
|
|
});
|
|
array.push({
|
|
name: "Ukraine",
|
|
alpha_2: "UA",
|
|
alpha_3: "UKR",
|
|
un_code: 804,
|
|
icon: "ukraine",
|
|
});
|
|
array.push({
|
|
name: "United Arab Emirates",
|
|
alpha_2: "AE",
|
|
alpha_3: "ARE",
|
|
un_code: 784,
|
|
icon: "united-arab-emirates",
|
|
});
|
|
array.push({
|
|
name: "United Kingdom",
|
|
alpha_2: "GB",
|
|
alpha_3: "GBR",
|
|
un_code: 826,
|
|
icon: "united-kingdom",
|
|
});
|
|
array.push({
|
|
name: "United States of America",
|
|
alpha_2: "US",
|
|
alpha_3: "USA",
|
|
un_code: 840,
|
|
icon: "united-states-of-america",
|
|
});
|
|
array.push({
|
|
name: "US Minor Outlying Islands",
|
|
alpha_2: "UM",
|
|
alpha_3: "UMI",
|
|
un_code: 581,
|
|
icon: "worldwide",
|
|
});
|
|
array.push({
|
|
name: "Uruguay",
|
|
alpha_2: "UY",
|
|
alpha_3: "URY",
|
|
un_code: 858,
|
|
icon: "uruguay",
|
|
});
|
|
/* TODO(flag): https://en.wikipedia.org/wiki/Uzbekistan */
|
|
array.push({
|
|
name: "Uzbekistan",
|
|
alpha_2: "UZ",
|
|
alpha_3: "UZB",
|
|
un_code: 860,
|
|
icon: "worldwide",
|
|
});
|
|
array.push({
|
|
name: "Vanuatu",
|
|
alpha_2: "VU",
|
|
alpha_3: "VUT",
|
|
un_code: 548,
|
|
icon: "vanuatu",
|
|
});
|
|
array.push({
|
|
name: "Venezuela (Bolivarian Republic)",
|
|
alpha_2: "VE",
|
|
alpha_3: "VEN",
|
|
un_code: 862,
|
|
icon: "venezuela",
|
|
});
|
|
array.push({
|
|
name: "Viet Nam",
|
|
alpha_2: "VN",
|
|
alpha_3: "VNM",
|
|
un_code: 704,
|
|
icon: "vietnam",
|
|
});
|
|
array.push({
|
|
name: "Virgin Islands, US",
|
|
alpha_2: "VI",
|
|
alpha_3: "VIR",
|
|
un_code: 850,
|
|
icon: "virgin-islands",
|
|
});
|
|
array.push({
|
|
name: "Wallis and Futuna Islands",
|
|
alpha_2: "WF",
|
|
alpha_3: "WLF",
|
|
un_code: 876,
|
|
icon: "worldwide",
|
|
});
|
|
array.push({
|
|
name: "Western Sahara",
|
|
alpha_2: "EH",
|
|
alpha_3: "ESH",
|
|
un_code: 732,
|
|
icon: "sahrawi_arab_democratic_republic",
|
|
});
|
|
array.push({
|
|
name: "Yemen",
|
|
alpha_2: "YE",
|
|
alpha_3: "YEM",
|
|
un_code: 887,
|
|
icon: "yemen",
|
|
});
|
|
array.push({
|
|
name: "Zambia",
|
|
alpha_2: "ZM",
|
|
alpha_3: "ZMB",
|
|
un_code: 894,
|
|
icon: "zambia",
|
|
});
|
|
array.push({
|
|
name: "Zimbabwe",
|
|
alpha_2: "ZW",
|
|
alpha_3: "ZWE",
|
|
un_code: 716,
|
|
icon: "zimbabwe",
|
|
});
|
|
};
|
|
|
|
export function getKnownCountries() : CountryInfo[] {
|
|
return registeredCountries;
|
|
}
|
|
|
|
export function getCountryName(alphaCode: string, fallback?: string) {
|
|
const countryInfo = alphaCode2Info[alphaCode?.toUpperCase()];
|
|
if(!countryInfo) {
|
|
return fallback || "unknown";
|
|
}
|
|
|
|
return countryInfo.name;
|
|
}
|
|
|
|
export function getCountryFlag(alphaCode: string) : CountryFlag {
|
|
const countryInfo = alphaCode2Info[alphaCode?.toUpperCase()];
|
|
if(!countryInfo) {
|
|
return CountryFlag.Worldwide;
|
|
}
|
|
|
|
const flag = CountryFlag["flag-" + countryInfo.icon.replace(/-/, "_")];
|
|
if(!flag) {
|
|
if(!countryInfo.flagMissingWarned) {
|
|
countryInfo.flagMissingWarned = true;
|
|
logWarn(LogCategory.GENERAL, tr("Missing country flag for %o"), countryInfo);
|
|
}
|
|
|
|
return CountryFlag.Worldwide;
|
|
}
|
|
|
|
return CountryFlag[flag] || CountryFlag.Worldwide;
|
|
}
|
|
|
|
registerCountries(registeredCountries);
|
|
for(const country of registeredCountries) {
|
|
alphaCode2Info[country.alpha_2] = country;
|
|
}
|