mask-any-number
Version:
Apply flexible numeric masks to any string. Perfect for phone numbers, documents, and custom input formatting.
1,894 lines (1,890 loc) โข 26.1 kB
JavaScript
;
var rawCountries = [
{
iso2: "AD",
name: "Andorra",
flag: "๐ฆ๐ฉ",
countryCode: "376"
},
{
iso2: "AE",
name: "United Arab Emirates",
flag: "๐ฆ๐ช",
countryCode: "971",
masks: [
"0 000 0000"
]
},
{
iso2: "AF",
name: "Afghanistan",
flag: "๐ฆ๐ซ",
countryCode: "93",
masks: [
"00 000 0000"
]
},
{
iso2: "AG",
name: "Antigua and Barbuda",
flag: "๐ฆ๐ฌ",
countryCode: "1-268"
},
{
iso2: "AI",
name: "Anguilla",
flag: "๐ฆ๐ฎ",
countryCode: "1-264"
},
{
iso2: "AL",
name: "Albania",
flag: "๐ฆ๐ฑ",
countryCode: "355",
masks: [
"00 000 0000"
]
},
{
iso2: "AM",
name: "Armenia",
flag: "๐ฆ๐ฒ",
countryCode: "374",
masks: [
"00 000000"
]
},
{
iso2: "AO",
name: "Angola",
flag: "๐ฆ๐ด",
countryCode: "244",
masks: [
"000 000 000"
]
},
{
iso2: "AQ",
name: "Antarctica",
flag: "๐ฆ๐ถ",
countryCode: "672"
},
{
iso2: "AR",
name: "Argentina",
flag: "๐ฆ๐ท",
countryCode: "54",
masks: [
"00 0000-0000"
]
},
{
iso2: "AS",
name: "American Samoa",
flag: "๐ฆ๐ธ",
countryCode: "1-684"
},
{
iso2: "AT",
name: "Austria",
flag: "๐ฆ๐น",
countryCode: "43",
masks: [
"000 0000000"
]
},
{
iso2: "AU",
name: "Australia",
flag: "๐ฆ๐บ",
countryCode: "61",
suggested: true,
masks: [
"0 0000 0000"
]
},
{
iso2: "AW",
name: "Aruba",
flag: "๐ฆ๐ผ",
countryCode: "297"
},
{
iso2: "AX",
name: "ร
land Islands",
flag: "๐ฆ๐ฝ",
countryCode: "358"
},
{
iso2: "AZ",
name: "Azerbaijan",
flag: "๐ฆ๐ฟ",
countryCode: "994",
masks: [
"00 000 00 00"
]
},
{
iso2: "BA",
name: "Bosnia and Herzegovina",
flag: "๐ง๐ฆ",
countryCode: "387",
masks: [
"00 000 000"
]
},
{
iso2: "BB",
name: "Barbados",
flag: "๐ง๐ง",
countryCode: "1-246"
},
{
iso2: "BD",
name: "Bangladesh",
flag: "๐ง๐ฉ",
countryCode: "880",
masks: [
"00 000 000"
]
},
{
iso2: "BE",
name: "Belgium",
flag: "๐ง๐ช",
countryCode: "32",
masks: [
"000 00 00 00"
]
},
{
iso2: "BF",
name: "Burkina Faso",
flag: "๐ง๐ซ",
countryCode: "226"
},
{
iso2: "BG",
name: "Bulgaria",
flag: "๐ง๐ฌ",
countryCode: "359",
masks: [
"00 000 0000"
]
},
{
iso2: "BH",
name: "Bahrain",
flag: "๐ง๐ญ",
countryCode: "973",
masks: [
"0000 0000"
]
},
{
iso2: "BI",
name: "Burundi",
flag: "๐ง๐ฎ",
countryCode: "257"
},
{
iso2: "BJ",
name: "Benin",
flag: "๐ง๐ฏ",
countryCode: "229"
},
{
iso2: "BL",
name: "Saint Barthรฉlemy",
flag: "๐ง๐ฑ",
countryCode: "590"
},
{
iso2: "BM",
name: "Bermuda",
flag: "๐ง๐ฒ",
countryCode: "1-441"
},
{
iso2: "BN",
name: "Brunei Darussalam",
flag: "๐ง๐ณ",
countryCode: "673"
},
{
iso2: "BO",
name: "Bolivia",
flag: "๐ง๐ด",
countryCode: "591",
masks: [
"0 0000000"
]
},
{
iso2: "BR",
name: "Brazil",
flag: "๐ง๐ท",
countryCode: "55",
masks: [
"00 0000-0000",
"00 00000-0000"
]
},
{
iso2: "BS",
name: "Bahamas",
flag: "๐ง๐ธ",
countryCode: "1-242"
},
{
iso2: "BT",
name: "Bhutan",
flag: "๐ง๐น",
countryCode: "975"
},
{
iso2: "BV",
name: "Bouvet Island",
flag: "๐ง๐ป",
countryCode: "47"
},
{
iso2: "BW",
name: "Botswana",
flag: "๐ง๐ผ",
countryCode: "267"
},
{
iso2: "BY",
name: "Belarus",
flag: "๐ง๐พ",
countryCode: "375",
masks: [
"0 000 000-00-00"
]
},
{
iso2: "BZ",
name: "Belize",
flag: "๐ง๐ฟ",
countryCode: "501"
},
{
iso2: "CA",
name: "Canada",
flag: "๐จ๐ฆ",
countryCode: "1",
suggested: true,
masks: [
"000-000-0000"
]
},
{
iso2: "CC",
name: "Cocos (Keeling) Islands",
flag: "๐จ๐จ",
countryCode: "61"
},
{
iso2: "CD",
name: "Congo, Democratic Republic of the",
flag: "๐จ๐ฉ",
countryCode: "243"
},
{
iso2: "CF",
name: "Central African Republic",
flag: "๐จ๐ซ",
countryCode: "236"
},
{
iso2: "CG",
name: "Congo, Republic of the",
flag: "๐จ๐ฌ",
countryCode: "242"
},
{
iso2: "CH",
name: "Switzerland",
flag: "๐จ๐ญ",
countryCode: "41",
masks: [
"00 000 00 00"
]
},
{
iso2: "CI",
name: "Cรดte d'Ivoire",
flag: "๐จ๐ฎ",
countryCode: "225"
},
{
iso2: "CK",
name: "Cook Islands",
flag: "๐จ๐ฐ",
countryCode: "682"
},
{
iso2: "CL",
name: "Chile",
flag: "๐จ๐ฑ",
countryCode: "56",
masks: [
"0 0000 0000"
]
},
{
iso2: "CM",
name: "Cameroon",
flag: "๐จ๐ฒ",
countryCode: "237"
},
{
iso2: "CN",
name: "China",
flag: "๐จ๐ณ",
countryCode: "86",
masks: [
"000 0000 0000"
]
},
{
iso2: "CO",
name: "Colombia",
flag: "๐จ๐ด",
countryCode: "57",
masks: [
"000 0000000"
]
},
{
iso2: "CR",
name: "Costa Rica",
flag: "๐จ๐ท",
countryCode: "506",
masks: [
"0000 0000"
]
},
{
iso2: "CU",
name: "Cuba",
flag: "๐จ๐บ",
countryCode: "53"
},
{
iso2: "CV",
name: "Cape Verde",
flag: "๐จ๐ป",
countryCode: "238"
},
{
iso2: "CW",
name: "Curaรงao",
flag: "๐จ๐ผ",
countryCode: "599"
},
{
iso2: "CX",
name: "Christmas Island",
flag: "๐จ๐ฝ",
countryCode: "61"
},
{
iso2: "CY",
name: "Cyprus",
flag: "๐จ๐พ",
countryCode: "357",
masks: [
"00 000000"
]
},
{
iso2: "CZ",
name: "Czech Republic",
flag: "๐จ๐ฟ",
countryCode: "420",
masks: [
"000 000 000"
]
},
{
iso2: "DE",
name: "Germany",
flag: "๐ฉ๐ช",
countryCode: "49",
masks: [
"0000 0000000"
]
},
{
iso2: "DJ",
name: "Djibouti",
flag: "๐ฉ๐ฏ",
countryCode: "253"
},
{
iso2: "DK",
name: "Denmark",
flag: "๐ฉ๐ฐ",
countryCode: "45",
masks: [
"00 00 00 00"
]
},
{
iso2: "DM",
name: "Dominica",
flag: "๐ฉ๐ฒ",
countryCode: "1-767"
},
{
iso2: "DO",
name: "Dominican Republic",
flag: "๐ฉ๐ด",
countryCode: "1-809",
masks: [
"000-000-0000"
]
},
{
iso2: "DZ",
name: "Algeria",
flag: "๐ฉ๐ฟ",
countryCode: "213",
masks: [
"00 00 00 00"
]
},
{
iso2: "EC",
name: "Ecuador",
flag: "๐ช๐จ",
countryCode: "593",
masks: [
"00 000 0000"
]
},
{
iso2: "EE",
name: "Estonia",
flag: "๐ช๐ช",
countryCode: "372",
masks: [
"0000 000000"
]
},
{
iso2: "EG",
name: "Egypt",
flag: "๐ช๐ฌ",
countryCode: "20",
masks: [
"000 000 0000"
]
},
{
iso2: "EH",
name: "Western Sahara",
flag: "๐ช๐ญ",
countryCode: "212"
},
{
iso2: "ER",
name: "Eritrea",
flag: "๐ช๐ท",
countryCode: "291"
},
{
iso2: "ES",
name: "Spain",
flag: "๐ช๐ธ",
countryCode: "34",
masks: [
"000 00 00 00"
]
},
{
iso2: "ET",
name: "Ethiopia",
flag: "๐ช๐น",
countryCode: "251"
},
{
iso2: "FI",
name: "Finland",
flag: "๐ซ๐ฎ",
countryCode: "358",
masks: [
"00 00000000"
]
},
{
iso2: "FJ",
name: "Fiji",
flag: "๐ซ๐ฏ",
countryCode: "679"
},
{
iso2: "FK",
name: "Falkland Islands (Malvinas)",
flag: "๐ซ๐ฐ",
countryCode: "500"
},
{
iso2: "FM",
name: "Micronesia, Federated States of",
flag: "๐ซ๐ฒ",
countryCode: "691"
},
{
iso2: "FO",
name: "Faroe Islands",
flag: "๐ซ๐ด",
countryCode: "298"
},
{
iso2: "FR",
name: "France",
flag: "๐ซ๐ท",
countryCode: "33",
masks: [
"0 00 00 00 00"
]
},
{
iso2: "GA",
name: "Gabon",
flag: "๐ฌ๐ฆ",
countryCode: "241"
},
{
iso2: "GB",
name: "United Kingdom",
flag: "๐ฌ๐ง",
countryCode: "44",
masks: [
"0000 000000"
]
},
{
iso2: "GD",
name: "Grenada",
flag: "๐ฌ๐ฉ",
countryCode: "1-473"
},
{
iso2: "GE",
name: "Georgia",
flag: "๐ฌ๐ช",
countryCode: "995",
masks: [
"000 00 00 00"
]
},
{
iso2: "GF",
name: "French Guiana",
flag: "๐ฌ๐ซ",
countryCode: "594"
},
{
iso2: "GG",
name: "Guernsey",
flag: "๐ฌ๐ฌ",
countryCode: "44"
},
{
iso2: "GH",
name: "Ghana",
flag: "๐ฌ๐ญ",
countryCode: "233",
masks: [
"00 000 0000"
]
},
{
iso2: "GI",
name: "Gibraltar",
flag: "๐ฌ๐ฎ",
countryCode: "350"
},
{
iso2: "GL",
name: "Greenland",
flag: "๐ฌ๐ฑ",
countryCode: "299"
},
{
iso2: "GM",
name: "Gambia",
flag: "๐ฌ๐ฒ",
countryCode: "220"
},
{
iso2: "GN",
name: "Guinea",
flag: "๐ฌ๐ณ",
countryCode: "224"
},
{
iso2: "GP",
name: "Guadeloupe",
flag: "๐ฌ๐ต",
countryCode: "590"
},
{
iso2: "GQ",
name: "Equatorial Guinea",
flag: "๐ฌ๐ถ",
countryCode: "240"
},
{
iso2: "GR",
name: "Greece",
flag: "๐ฌ๐ท",
countryCode: "30",
masks: [
"000 000 0000"
]
},
{
iso2: "GS",
name: "South Georgia and the South Sandwich Islands",
flag: "๐ฌ๐ธ",
countryCode: "500"
},
{
iso2: "GT",
name: "Guatemala",
flag: "๐ฌ๐น",
countryCode: "502",
masks: [
"0000 0000"
]
},
{
iso2: "GU",
name: "Guam",
flag: "๐ฌ๐บ",
countryCode: "1-671"
},
{
iso2: "GW",
name: "Guinea-Bissau",
flag: "๐ฌ๐ผ",
countryCode: "245"
},
{
iso2: "GY",
name: "Guyana",
flag: "๐ฌ๐พ",
countryCode: "592"
},
{
iso2: "HK",
name: "Hong Kong",
flag: "๐ญ๐ฐ",
countryCode: "852",
masks: [
"0000 0000"
]
},
{
iso2: "HM",
name: "Heard Island and McDonald Islands",
flag: "๐ญ๐ฒ",
countryCode: "672"
},
{
iso2: "HN",
name: "Honduras",
flag: "๐ญ๐ณ",
countryCode: "504",
masks: [
"0000-0000"
]
},
{
iso2: "HR",
name: "Croatia",
flag: "๐ญ๐ท",
countryCode: "385",
masks: [
"00 000 0000"
]
},
{
iso2: "HT",
name: "Haiti",
flag: "๐ญ๐น",
countryCode: "509",
masks: [
"00 00 0000"
]
},
{
iso2: "HU",
name: "Hungary",
flag: "๐ญ๐บ",
countryCode: "36",
masks: [
"00 000 0000"
]
},
{
iso2: "ID",
name: "Indonesia",
flag: "๐ฎ๐ฉ",
countryCode: "62",
masks: [
"000-000-000"
]
},
{
iso2: "IE",
name: "Ireland",
flag: "๐ฎ๐ช",
countryCode: "353",
masks: [
"00 000 0000"
]
},
{
iso2: "IL",
name: "Israel",
flag: "๐ฎ๐ฑ",
countryCode: "972",
masks: [
"000-000-0000"
]
},
{
iso2: "IM",
name: "Isle of Man",
flag: "๐ฎ๐ฒ",
countryCode: "44"
},
{
iso2: "IN",
name: "India",
flag: "๐ฎ๐ณ",
countryCode: "91",
masks: [
"00000 00000"
]
},
{
iso2: "IO",
name: "British Indian Ocean Territory",
flag: "๐ฎ๐ด",
countryCode: "246"
},
{
iso2: "IQ",
name: "Iraq",
flag: "๐ฎ๐ท",
countryCode: "964",
masks: [
"000 000 0000"
]
},
{
iso2: "IR",
name: "Iran, Islamic Republic of",
flag: "๐ฎ๐ท",
countryCode: "98",
masks: [
"000 000 0000"
]
},
{
iso2: "IS",
name: "Iceland",
flag: "๐ฎ๐ธ",
countryCode: "354",
masks: [
"000 0000"
]
},
{
iso2: "IT",
name: "Italy",
flag: "๐ฎ๐น",
countryCode: "39",
masks: [
"000 000 0000"
]
},
{
iso2: "JE",
name: "Jersey",
flag: "๐ฏ๐ช",
countryCode: "44"
},
{
iso2: "JM",
name: "Jamaica",
flag: "๐ฏ๐ฒ",
countryCode: "1-876"
},
{
iso2: "JO",
name: "Jordan",
flag: "๐ฏ๐ด",
countryCode: "962",
masks: [
"0 0000 0000"
]
},
{
iso2: "JP",
name: "Japan",
flag: "๐ฏ๐ต",
countryCode: "81",
masks: [
"00-0000-0000"
]
},
{
iso2: "KE",
name: "Kenya",
flag: "๐ฐ๐ช",
countryCode: "254",
masks: [
"000 000000"
]
},
{
iso2: "KG",
name: "Kyrgyzstan",
flag: "๐ฐ๐ฌ",
countryCode: "996",
masks: [
"000 000 000"
]
},
{
iso2: "KH",
name: "Cambodia",
flag: "๐ฐ๐ญ",
countryCode: "855",
masks: [
"00 000 000"
]
},
{
iso2: "KI",
name: "Kiribati",
flag: "๐ฐ๐ฎ",
countryCode: "686"
},
{
iso2: "KM",
name: "Comoros",
flag: "๐ฐ๐ฒ",
countryCode: "269"
},
{
iso2: "KN",
name: "Saint Kitts and Nevis",
flag: "๐ฐ๐ณ",
countryCode: "1-869"
},
{
iso2: "KP",
name: "Korea, Democratic People's Republic of",
flag: "๐ฐ๐ต",
countryCode: "850"
},
{
iso2: "KR",
name: "Korea, Republic of",
flag: "๐ฐ๐ท",
countryCode: "82",
masks: [
"00-000-0000"
]
},
{
iso2: "KW",
name: "Kuwait",
flag: "๐ฐ๐ผ",
countryCode: "965",
masks: [
"000 00000"
]
},
{
iso2: "KY",
name: "Cayman Islands",
flag: "๐ฐ๐พ",
countryCode: "1-345"
},
{
iso2: "KZ",
name: "Kazakhstan",
flag: "๐ฐ๐ฟ",
countryCode: "7",
masks: [
"0 000 000 00 00"
]
},
{
iso2: "LA",
name: "Lao People's Democratic Republic",
flag: "๐ฑ๐ฆ",
countryCode: "856"
},
{
iso2: "LB",
name: "Lebanon",
flag: "๐ฑ๐ง",
countryCode: "961",
masks: [
"00 000 000"
]
},
{
iso2: "LC",
name: "Saint Lucia",
flag: "๐ฑ๐จ",
countryCode: "1-758"
},
{
iso2: "LI",
name: "Liechtenstein",
flag: "๐ฑ๐ฎ",
countryCode: "423",
masks: [
"000 000 000"
]
},
{
iso2: "LK",
name: "Sri Lanka",
flag: "๐ฑ๐ฐ",
countryCode: "94",
masks: [
"00 000 0000"
]
},
{
iso2: "LR",
name: "Liberia",
flag: "๐ฑ๐ท",
countryCode: "231"
},
{
iso2: "LS",
name: "Lesotho",
flag: "๐ฑ๐ธ",
countryCode: "266"
},
{
iso2: "LT",
name: "Lithuania",
flag: "๐ฑ๐น",
countryCode: "370",
masks: [
"000 00 000"
]
},
{
iso2: "LU",
name: "Luxembourg",
flag: "๐ฑ๐บ",
countryCode: "352",
masks: [
"000 000 000"
]
},
{
iso2: "LV",
name: "Latvia",
flag: "๐ฑ๐ป",
countryCode: "371",
masks: [
"00 000 000"
]
},
{
iso2: "LY",
name: "Libya",
flag: "๐ฑ๐พ",
countryCode: "218"
},
{
iso2: "MA",
name: "Morocco",
flag: "๐ฒ๐ฆ",
countryCode: "212",
masks: [
"0000-000000"
]
},
{
iso2: "MC",
name: "Monaco",
flag: "๐ฒ๐จ",
countryCode: "377"
},
{
iso2: "MD",
name: "Moldova, Republic of",
flag: "๐ฒ๐ฉ",
countryCode: "373",
masks: [
"0000 00 000"
]
},
{
iso2: "ME",
name: "Montenegro",
flag: "๐ฒ๐ช",
countryCode: "382"
},
{
iso2: "MF",
name: "Saint Martin (French part)",
flag: "๐ฒ๐ซ",
countryCode: "590"
},
{
iso2: "MG",
name: "Madagascar",
flag: "๐ฒ๐ฌ",
countryCode: "261"
},
{
iso2: "MH",
name: "Marshall Islands",
flag: "๐ฒ๐ญ",
countryCode: "692"
},
{
iso2: "MK",
name: "Macedonia, the Former Yugoslav Republic of",
flag: "๐ฒ๐ฐ",
countryCode: "389"
},
{
iso2: "ML",
name: "Mali",
flag: "๐ฒ๐ฑ",
countryCode: "223"
},
{
iso2: "MM",
name: "Myanmar",
flag: "๐ฒ๐ฒ",
countryCode: "95",
masks: [
"0 000 000"
]
},
{
iso2: "MN",
name: "Mongolia",
flag: "๐ฒ๐ณ",
countryCode: "976",
masks: [
"0000 0000"
]
},
{
iso2: "MO",
name: "Macao",
flag: "๐ฒ๐ด",
countryCode: "853"
},
{
iso2: "MP",
name: "Northern Mariana Islands",
flag: "๐ฒ๐ต",
countryCode: "1-670"
},
{
iso2: "MQ",
name: "Martinique",
flag: "๐ฒ๐ถ",
countryCode: "596"
},
{
iso2: "MR",
name: "Mauritania",
flag: "๐ฒ๐ท",
countryCode: "222"
},
{
iso2: "MS",
name: "Montserrat",
flag: "๐ฒ๐ธ",
countryCode: "1-664"
},
{
iso2: "MT",
name: "Malta",
flag: "๐ฒ๐น",
countryCode: "356",
masks: [
"0000 0000"
]
},
{
iso2: "MU",
name: "Mauritius",
flag: "๐ฒ๐บ",
countryCode: "230",
masks: [
"000 0000"
]
},
{
iso2: "MV",
name: "Maldives",
flag: "๐ฒ๐ป",
countryCode: "960",
masks: [
"000-0000"
]
},
{
iso2: "MW",
name: "Malawi",
flag: "๐ฒ๐ผ",
countryCode: "265"
},
{
iso2: "MX",
name: "Mexico",
flag: "๐ฒ๐ฝ",
countryCode: "52",
masks: [
"000 000 0000"
]
},
{
iso2: "MY",
name: "Malaysia",
flag: "๐ฒ๐พ",
countryCode: "60",
masks: [
"00-000 0000"
]
},
{
iso2: "MZ",
name: "Mozambique",
flag: "๐ฒ๐ฟ",
countryCode: "258"
},
{
iso2: "NA",
name: "Namibia",
flag: "๐ณ๐ฆ",
countryCode: "264"
},
{
iso2: "NC",
name: "New Caledonia",
flag: "๐ณ๐จ",
countryCode: "687"
},
{
iso2: "NE",
name: "Niger",
flag: "๐ณ๐ช",
countryCode: "227"
},
{
iso2: "NF",
name: "Norfolk Island",
flag: "๐ณ๐ซ",
countryCode: "672"
},
{
iso2: "NG",
name: "Nigeria",
flag: "๐ณ๐ฌ",
countryCode: "234",
masks: [
"000 000 0000"
]
},
{
iso2: "NI",
name: "Nicaragua",
flag: "๐ณ๐ฎ",
countryCode: "505",
masks: [
"0000 0000"
]
},
{
iso2: "NL",
name: "Netherlands",
flag: "๐ณ๐ฑ",
countryCode: "31",
masks: [
"00 00000000"
]
},
{
iso2: "NO",
name: "Norway",
flag: "๐ณ๐ด",
countryCode: "47",
masks: [
"000 00 000"
]
},
{
iso2: "NP",
name: "Nepal",
flag: "๐ณ๐ต",
countryCode: "977",
masks: [
"000-0000000"
]
},
{
iso2: "NR",
name: "Nauru",
flag: "๐ณ๐ท",
countryCode: "674"
},
{
iso2: "NU",
name: "Niue",
flag: "๐ณ๐บ",
countryCode: "683"
},
{
iso2: "NZ",
name: "New Zealand",
flag: "๐ณ๐ฟ",
countryCode: "64",
masks: [
"000-000-0000"
]
},
{
iso2: "OM",
name: "Oman",
flag: "๐ด๐ฒ",
countryCode: "968",
masks: [
"0000 0000"
]
},
{
iso2: "PA",
name: "Panama",
flag: "๐ต๐ฆ",
countryCode: "507",
masks: [
"0000-0000"
]
},
{
iso2: "PE",
name: "Peru",
flag: "๐ต๐ช",
countryCode: "51",
masks: [
"000 000 000"
]
},
{
iso2: "PF",
name: "French Polynesia",
flag: "๐ต๐ซ",
countryCode: "689"
},
{
iso2: "PG",
name: "Papua New Guinea",
flag: "๐ต๐ฌ",
countryCode: "675"
},
{
iso2: "PH",
name: "Philippines",
flag: "๐ต๐ญ",
countryCode: "63",
masks: [
"000 000 0000"
]
},
{
iso2: "PK",
name: "Pakistan",
flag: "๐ต๐ฐ",
countryCode: "92",
masks: [
"000 0000000"
]
},
{
iso2: "PL",
name: "Poland",
flag: "๐ต๐ฑ",
countryCode: "48",
masks: [
"000-000-000"
]
},
{
iso2: "PM",
name: "Saint Pierre and Miquelon",
flag: "๐ต๐ฒ",
countryCode: "508"
},
{
iso2: "PN",
name: "Pitcairn",
flag: "๐ต๐ณ",
countryCode: "870"
},
{
iso2: "PR",
name: "Puerto Rico",
flag: "๐ต๐ท",
countryCode: "1-787"
},
{
iso2: "PS",
name: "Palestine, State of",
flag: "๐ต๐ธ",
countryCode: "970"
},
{
iso2: "PT",
name: "Portugal",
flag: "๐ต๐น",
countryCode: "351",
masks: [
"000 000 000"
]
},
{
iso2: "PW",
name: "Palau",
flag: "๐ต๐ผ",
countryCode: "680"
},
{
iso2: "PY",
name: "Paraguay",
flag: "๐ต๐พ",
countryCode: "595",
masks: [
"000 000000"
]
},
{
iso2: "QA",
name: "Qatar",
flag: "๐ถ๐ฆ",
countryCode: "974",
masks: [
"0000 0000"
]
},
{
iso2: "RE",
name: "Rรฉunion",
flag: "๐ท๐ช",
countryCode: "262"
},
{
iso2: "RO",
name: "Romania",
flag: "๐ท๐ด",
countryCode: "40",
masks: [
"000 000 0000"
]
},
{
iso2: "RS",
name: "Serbia",
flag: "๐ท๐ธ",
countryCode: "381",
masks: [
"00 0000000"
]
},
{
iso2: "RU",
name: "Russian Federation",
flag: "๐ท๐บ",
countryCode: "7",
masks: [
"000 000-00-00"
]
},
{
iso2: "RW",
name: "Rwanda",
flag: "๐ท๐ผ",
countryCode: "250",
masks: [
"000 000 000"
]
},
{
iso2: "SA",
name: "Saudi Arabia",
flag: "๐ธ๐ฆ",
countryCode: "966",
masks: [
"0 0000 0000"
]
},
{
iso2: "SB",
name: "Solomon Islands",
flag: "๐ธ๐ง",
countryCode: "677"
},
{
iso2: "SC",
name: "Seychelles",
flag: "๐ธ๐จ",
countryCode: "248"
},
{
iso2: "SD",
name: "Sudan",
flag: "๐ธ๐ฉ",
countryCode: "249"
},
{
iso2: "SE",
name: "Sweden",
flag: "๐ธ๐ช",
countryCode: "46",
masks: [
"00-000 00 00"
]
},
{
iso2: "SG",
name: "Singapore",
flag: "๐ธ๐ฌ",
countryCode: "65",
masks: [
"0000 0000"
]
},
{
iso2: "SH",
name: "Saint Helena",
flag: "๐ธ๐ญ",
countryCode: "290"
},
{
iso2: "SI",
name: "Slovenia",
flag: "๐ธ๐ฎ",
countryCode: "386",
masks: [
"00 000 000"
]
},
{
iso2: "SJ",
name: "Svalbard and Jan Mayen",
flag: "๐ธ๐ฏ",
countryCode: "47"
},
{
iso2: "SK",
name: "Slovakia",
flag: "๐ธ๐ฐ",
countryCode: "421",
masks: [
"000 000 000"
]
},
{
iso2: "SL",
name: "Sierra Leone",
flag: "๐ธ๐ฑ",
countryCode: "232"
},
{
iso2: "SM",
name: "San Marino",
flag: "๐ธ๐ฒ",
countryCode: "378"
},
{
iso2: "SN",
name: "Senegal",
flag: "๐ธ๐ณ",
countryCode: "221"
},
{
iso2: "SO",
name: "Somalia",
flag: "๐ธ๐ด",
countryCode: "252"
},
{
iso2: "SR",
name: "Suriname",
flag: "๐ธ๐ท",
countryCode: "597"
},
{
iso2: "SS",
name: "South Sudan",
flag: "๐ธ๐ธ",
countryCode: "211"
},
{
iso2: "ST",
name: "Sao Tome and Principe",
flag: "๐ธ๐น",
countryCode: "239"
},
{
iso2: "SV",
name: "El Salvador",
flag: "๐ธ๐ป",
countryCode: "503",
masks: [
"0000 0000"
]
},
{
iso2: "SX",
name: "Sint Maarten (Dutch part)",
flag: "๐ธ๐ฝ",
countryCode: "1-721"
},
{
iso2: "SY",
name: "Syrian Arab Republic",
flag: "๐ธ๐พ",
countryCode: "963",
masks: [
"000 000 000"
]
},
{
iso2: "SZ",
name: "Swaziland",
flag: "๐ธ๐ฟ",
countryCode: "268"
},
{
iso2: "TC",
name: "Turks and Caicos Islands",
flag: "๐น๐จ",
countryCode: "1-649"
},
{
iso2: "TD",
name: "Chad",
flag: "๐น๐ฉ",
countryCode: "235"
},
{
iso2: "TF",
name: "French Southern Territories",
flag: "๐น๐ซ",
countryCode: "262"
},
{
iso2: "TG",
name: "Togo",
flag: "๐น๐ฌ",
countryCode: "228"
},
{
iso2: "TH",
name: "Thailand",
flag: "๐น๐ญ",
countryCode: "66",
masks: [
"00 000 0000"
]
},
{
iso2: "TJ",
name: "Tajikistan",
flag: "๐น๐ฏ",
countryCode: "992",
masks: [
"000 00 0000"
]
},
{
iso2: "TK",
name: "Tokelau",
flag: "๐น๐ฐ",
countryCode: "690"
},
{
iso2: "TL",
name: "Timor-Leste",
flag: "๐น๐ฑ",
countryCode: "670"
},
{
iso2: "TM",
name: "Turkmenistan",
flag: "๐น๐ฒ",
countryCode: "993",
masks: [
"0 0000000"
]
},
{
iso2: "TN",
name: "Tunisia",
flag: "๐น๐ณ",
countryCode: "216",
masks: [
"00 000 000"
]
},
{
iso2: "TO",
name: "Tonga",
flag: "๐น๐ด",
countryCode: "676"
},
{
iso2: "TR",
name: "Turkey",
flag: "๐น๐ท",
countryCode: "90",
masks: [
"000 000 00 00"
]
},
{
iso2: "TT",
name: "Trinidad and Tobago",
flag: "๐น๐น",
countryCode: "1-868"
},
{
iso2: "TV",
name: "Tuvalu",
flag: "๐น๐ป",
countryCode: "688"
},
{
iso2: "TW",
name: "Taiwan",
flag: "๐น๐ผ",
countryCode: "886",
masks: [
"0000 000 000"
]
},
{
iso2: "TZ",
name: "Tanzania, United Republic of",
flag: "๐น๐ฟ",
countryCode: "255",
masks: [
"00 000 0000"
]
},
{
iso2: "UA",
name: "Ukraine",
flag: "๐บ๐ฆ",
countryCode: "380",
masks: [
"00 000 0000"
]
},
{
iso2: "UG",
name: "Uganda",
flag: "๐บ๐ฌ",
countryCode: "256",
masks: [
"000 000000"
]
},
{
iso2: "US",
name: "United States",
flag: "๐บ๐ธ",
countryCode: "1",
suggested: true,
masks: [
"000-000-0000"
]
},
{
iso2: "UY",
name: "Uruguay",
flag: "๐บ๐พ",
countryCode: "598",
masks: [
"00 000 000"
]
},
{
iso2: "UZ",
name: "Uzbekistan",
flag: "๐บ๐ฟ",
countryCode: "998",
masks: [
"00 000 00 00"
]
},
{
iso2: "VA",
name: "Holy See (Vatican City State)",
flag: "๐ป๐ฆ",
countryCode: "379"
},
{
iso2: "VC",
name: "Saint Vincent and the Grenadines",
flag: "๐ป๐จ",
countryCode: "1-784"
},
{
iso2: "VE",
name: "Venezuela",
flag: "๐ป๐ช",
countryCode: "58",
masks: [
"0000-0000000"
]
},
{
iso2: "VG",
name: "British Virgin Islands",
flag: "๐ป๐ฌ",
countryCode: "1-284"
},
{
iso2: "VI",
name: "Virgin Islands, U.S.",
flag: "๐ป๐ฎ",
countryCode: "1-340"
},
{
iso2: "VN",
name: "Vietnam",
flag: "๐ป๐ณ",
countryCode: "84",
masks: [
"00 0000 000"
]
},
{
iso2: "VU",
name: "Vanuatu",
flag: "๐ป๐บ",
countryCode: "678"
},
{
iso2: "WF",
name: "Wallis and Futuna",
flag: "๐ผ๐ซ",
countryCode: "681"
},
{
iso2: "WS",
name: "Samoa",
flag: "๐ผ๐ธ",
countryCode: "685"
},
{
iso2: "XK",
name: "Kosovo",
flag: "๐ฝ๐ฐ",
countryCode: "383"
},
{
iso2: "YE",
name: "Yemen",
flag: "๐พ๐ช",
countryCode: "967",
masks: [
"000 000 000"
]
},
{
iso2: "YT",
name: "Mayotte",
flag: "๐พ๐น",
countryCode: "262"
},
{
iso2: "ZA",
name: "South Africa",
flag: "๐ฟ๐ฆ",
countryCode: "27",
masks: [
"00 000 0000"
]
},
{
iso2: "ZM",
name: "Zambia",
flag: "๐ฟ๐ฒ",
countryCode: "260"
},
{
iso2: "ZW",
name: "Zimbabwe",
flag: "๐ฟ๐ผ",
countryCode: "263"
}
];
const countries = rawCountries;
function maskNumber(value, masks) {
const digits = value.replace(/\D/g, '');
if (masks.length === 0) {
return digits;
}
let mask = masks[0];
for (let i = 0; i < masks.length; i++) {
const zeros = (masks[i].match(/0/g) || []).length;
if (digits.length <= zeros) {
mask = masks[i];
break;
}
if (i === masks.length - 1) {
mask = masks[i];
}
}
let formatted = '';
let digitIndex = 0;
for (let i = 0; i < mask.length; i++) {
if (mask[i] === '0') {
if (digitIndex < digits.length) {
formatted += digits[digitIndex];
digitIndex++;
}
else {
break;
}
}
else {
(mask.slice(i + 1).match(/0/g) || []).length;
if (digits.length > digitIndex) {
formatted += mask[i];
}
}
}
return formatted;
}
exports.countries = countries;
exports.maskNumber = maskNumber;
//# sourceMappingURL=index.cjs.js.map