Last active
April 3, 2020 23:49
-
-
Save AntsiferovMaxim/d845190ca4760e864a503cfa1a74f903 to your computer and use it in GitHub Desktop.
Airbnb phone input
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
{ | |
"+93": { | |
"country": "Afghanistan", | |
"name": "Afghanistan (+93)", | |
"dial_code": "+93", | |
"code": "AF", | |
"id": "14306d15-2554-403e-89c7-411145a44bee" | |
}, | |
"+358": { | |
"country": "Finland", | |
"name": "Finland (+358)", | |
"dial_code": "+358", | |
"code": "FI", | |
"id": "70eb2cba-d92c-4b76-a8e7-6ed436d1b48b" | |
}, | |
"+355": { | |
"country": "Albania", | |
"name": "Albania (+355)", | |
"dial_code": "+355", | |
"code": "AL", | |
"id": "41dade2f-8ba6-4314-8af5-60226cccaff1" | |
}, | |
"+213": { | |
"country": "Algeria", | |
"name": "Algeria (+213)", | |
"dial_code": "+213", | |
"code": "DZ", | |
"id": "e7bbbf17-fa85-4560-8837-6c664a9f0255" | |
}, | |
"+1 684": { | |
"country": "AmericanSamoa", | |
"name": "AmericanSamoa (+1 684)", | |
"dial_code": "+1 684", | |
"code": "AS", | |
"id": "a01dde9d-291c-4a24-911d-b38d12c37ae5" | |
}, | |
"+376": { | |
"country": "Andorra", | |
"name": "Andorra (+376)", | |
"dial_code": "+376", | |
"code": "AD", | |
"id": "2747437a-12ab-4a08-84f0-ea6001a5f768" | |
}, | |
"+244": { | |
"country": "Angola", | |
"name": "Angola (+244)", | |
"dial_code": "+244", | |
"code": "AO", | |
"id": "6d8732dc-d8be-4416-a6d5-e87407b0e2bb" | |
}, | |
"+1 264": { | |
"country": "Anguilla", | |
"name": "Anguilla (+1 264)", | |
"dial_code": "+1 264", | |
"code": "AI", | |
"id": "883d68e8-8f11-4e5e-95ec-991951d56ae1" | |
}, | |
"+672": { | |
"country": "Norfolk Island", | |
"name": "Norfolk Island (+672)", | |
"dial_code": "+672", | |
"code": "NF", | |
"id": "31df7b36-c6ec-4328-9db5-255ec7b851b7" | |
}, | |
"+1268": { | |
"country": "Antigua and Barbuda", | |
"name": "Antigua and Barbuda (+1268)", | |
"dial_code": "+1268", | |
"code": "AG", | |
"id": "177fd02c-c2ca-4888-9abe-5138f841d45a" | |
}, | |
"+54": { | |
"country": "Argentina", | |
"name": "Argentina (+54)", | |
"dial_code": "+54", | |
"code": "AR", | |
"id": "1a4f23bb-1a4b-4049-83cb-1e596e9d7bf6" | |
}, | |
"+374": { | |
"country": "Armenia", | |
"name": "Armenia (+374)", | |
"dial_code": "+374", | |
"code": "AM", | |
"id": "1a3c1c22-45a1-4f3a-a086-75d684dd4c64" | |
}, | |
"+297": { | |
"country": "Aruba", | |
"name": "Aruba (+297)", | |
"dial_code": "+297", | |
"code": "AW", | |
"id": "9ff41560-87e2-4470-b01d-58f70dca9bc0" | |
}, | |
"+61": { | |
"country": "Cocos (Keeling) Islands", | |
"name": "Cocos (Keeling) Islands (+61)", | |
"dial_code": "+61", | |
"code": "CC", | |
"id": "53661326-05ef-4c49-8252-b31cee6299df" | |
}, | |
"+43": { | |
"country": "Austria", | |
"name": "Austria (+43)", | |
"dial_code": "+43", | |
"code": "AT", | |
"id": "999af121-fc25-43c5-ba5e-9b814834d57a" | |
}, | |
"+994": { | |
"country": "Azerbaijan", | |
"name": "Azerbaijan (+994)", | |
"dial_code": "+994", | |
"code": "AZ", | |
"id": "d39053a9-e10c-4334-b80c-59b41ae8f6b6" | |
}, | |
"+1 242": { | |
"country": "Bahamas", | |
"name": "Bahamas (+1 242)", | |
"dial_code": "+1 242", | |
"code": "BS", | |
"id": "8a04a870-084c-41b3-b1cf-dcdf351b0dd0" | |
}, | |
"+973": { | |
"country": "Bahrain", | |
"name": "Bahrain (+973)", | |
"dial_code": "+973", | |
"code": "BH", | |
"id": "07afdc21-3887-41a6-a215-e6c12bf13564" | |
}, | |
"+880": { | |
"country": "Bangladesh", | |
"name": "Bangladesh (+880)", | |
"dial_code": "+880", | |
"code": "BD", | |
"id": "334947b4-b256-4e4c-a8a8-4dcd5f245530" | |
}, | |
"+1 246": { | |
"country": "Barbados", | |
"name": "Barbados (+1 246)", | |
"dial_code": "+1 246", | |
"code": "BB", | |
"id": "807f1e7b-3704-4872-a4e0-d1c9387be2aa" | |
}, | |
"+375": { | |
"country": "Belarus", | |
"name": "Belarus (+375)", | |
"dial_code": "+375", | |
"code": "BY", | |
"id": "94ef358a-8711-4051-9fe3-8ae53f84833e" | |
}, | |
"+32": { | |
"country": "Belgium", | |
"name": "Belgium (+32)", | |
"dial_code": "+32", | |
"code": "BE", | |
"id": "db082467-2b71-4cae-bf52-62213b23cd6c" | |
}, | |
"+501": { | |
"country": "Belize", | |
"name": "Belize (+501)", | |
"dial_code": "+501", | |
"code": "BZ", | |
"id": "0df915a0-deba-4330-8009-93b2e97213e9" | |
}, | |
"+229": { | |
"country": "Benin", | |
"name": "Benin (+229)", | |
"dial_code": "+229", | |
"code": "BJ", | |
"id": "4aa5e5bf-6629-413a-8984-c55c8612b75f" | |
}, | |
"+1 441": { | |
"country": "Bermuda", | |
"name": "Bermuda (+1 441)", | |
"dial_code": "+1 441", | |
"code": "BM", | |
"id": "b3c39655-baa3-4bfb-addd-aedb79b41bde" | |
}, | |
"+975": { | |
"country": "Bhutan", | |
"name": "Bhutan (+975)", | |
"dial_code": "+975", | |
"code": "BT", | |
"id": "eabf75a8-98c4-4b17-ad4c-d038eaf38453" | |
}, | |
"+591": { | |
"country": "Bolivia, Plurinational State of", | |
"name": "Bolivia, Plurinational State of (+591)", | |
"dial_code": "+591", | |
"code": "BO", | |
"id": "44ce9ffb-fbd6-4432-bf15-03ba4d54a1c5" | |
}, | |
"+387": { | |
"country": "Bosnia and Herzegovina", | |
"name": "Bosnia and Herzegovina (+387)", | |
"dial_code": "+387", | |
"code": "BA", | |
"id": "0d3ce4bd-f860-41f9-acd4-61c95aaed5c5" | |
}, | |
"+267": { | |
"country": "Botswana", | |
"name": "Botswana (+267)", | |
"dial_code": "+267", | |
"code": "BW", | |
"id": "fe055f6e-ad2c-4501-acbc-e687b9574a7d" | |
}, | |
"+55": { | |
"country": "Brazil", | |
"name": "Brazil (+55)", | |
"dial_code": "+55", | |
"code": "BR", | |
"id": "28093802-d552-445f-a2a9-85bee0212bee" | |
}, | |
"+246": { | |
"country": "British Indian Ocean Territory", | |
"name": "British Indian Ocean Territory (+246)", | |
"dial_code": "+246", | |
"code": "IO", | |
"id": "4d69e2c0-d07e-4721-96c7-70003f05aa32" | |
}, | |
"+673": { | |
"country": "Brunei Darussalam", | |
"name": "Brunei Darussalam (+673)", | |
"dial_code": "+673", | |
"code": "BN", | |
"id": "967a9b1f-254f-49ed-8845-c7fa3e1efe61" | |
}, | |
"+359": { | |
"country": "Bulgaria", | |
"name": "Bulgaria (+359)", | |
"dial_code": "+359", | |
"code": "BG", | |
"id": "1323e3fb-4c07-4b6b-9575-3aedb876c7d6" | |
}, | |
"+226": { | |
"country": "Burkina Faso", | |
"name": "Burkina Faso (+226)", | |
"dial_code": "+226", | |
"code": "BF", | |
"id": "73cc7d01-47f7-467b-9ec0-e67c87bee813" | |
}, | |
"+257": { | |
"country": "Burundi", | |
"name": "Burundi (+257)", | |
"dial_code": "+257", | |
"code": "BI", | |
"id": "cfaa8bd3-a8ae-43e6-9d37-25fb24b2adca" | |
}, | |
"+855": { | |
"country": "Cambodia", | |
"name": "Cambodia (+855)", | |
"dial_code": "+855", | |
"code": "KH", | |
"id": "5f9f372f-ad92-4772-9612-efa10a477cb2" | |
}, | |
"+237": { | |
"country": "Cameroon", | |
"name": "Cameroon (+237)", | |
"dial_code": "+237", | |
"code": "CM", | |
"id": "2b93ae26-1462-4bb1-9485-3cf4ae99c292" | |
}, | |
"+1": { | |
"country": "United States", | |
"name": "United States (+1)", | |
"dial_code": "+1", | |
"code": "US", | |
"id": "751658b9-325e-46c1-9afc-7d46b0df1099" | |
}, | |
"+238": { | |
"country": "Cape Verde", | |
"name": "Cape Verde (+238)", | |
"dial_code": "+238", | |
"code": "CV", | |
"id": "167efb78-38ff-477b-808f-4fe6ade0097e" | |
}, | |
"+ 345": { | |
"country": "Cayman Islands", | |
"name": "Cayman Islands (+ 345)", | |
"dial_code": "+ 345", | |
"code": "KY", | |
"id": "b05b22fa-c627-4e1c-a2c9-4c0149291791" | |
}, | |
"+236": { | |
"country": "Central African Republic", | |
"name": "Central African Republic (+236)", | |
"dial_code": "+236", | |
"code": "CF", | |
"id": "f61dca1c-a4af-4422-8ef5-beafc4d2cf10" | |
}, | |
"+235": { | |
"country": "Chad", | |
"name": "Chad (+235)", | |
"dial_code": "+235", | |
"code": "TD", | |
"id": "61e61627-ce80-45eb-b3bf-f3d53c20f3c2" | |
}, | |
"+56": { | |
"country": "Chile", | |
"name": "Chile (+56)", | |
"dial_code": "+56", | |
"code": "CL", | |
"id": "269b518d-9558-4090-a547-c92461d999a8" | |
}, | |
"+86": { | |
"country": "China", | |
"name": "China (+86)", | |
"dial_code": "+86", | |
"code": "CN", | |
"id": "fadc6fc8-d1e3-45c0-b8ac-cac41f328225" | |
}, | |
"+57": { | |
"country": "Colombia", | |
"name": "Colombia (+57)", | |
"dial_code": "+57", | |
"code": "CO", | |
"id": "44f77df1-213a-472e-a7a2-be58c441bb93" | |
}, | |
"+269": { | |
"country": "Comoros", | |
"name": "Comoros (+269)", | |
"dial_code": "+269", | |
"code": "KM", | |
"id": "f99444ae-a7ee-4fdb-bc89-602cc31aaae2" | |
}, | |
"+242": { | |
"country": "Congo", | |
"name": "Congo (+242)", | |
"dial_code": "+242", | |
"code": "CG", | |
"id": "39190297-4519-4b20-81aa-0dff07a543c2" | |
}, | |
"+243": { | |
"country": "Congo, The Democratic Republic of the Congo", | |
"name": "Congo, The Democratic Republic of the Congo (+243)", | |
"dial_code": "+243", | |
"code": "CD", | |
"id": "079b719e-2eea-40b9-9632-b5be876a11f7" | |
}, | |
"+682": { | |
"country": "Cook Islands", | |
"name": "Cook Islands (+682)", | |
"dial_code": "+682", | |
"code": "CK", | |
"id": "51326187-a36f-49b9-9e45-5fa30a90e0f6" | |
}, | |
"+506": { | |
"country": "Costa Rica", | |
"name": "Costa Rica (+506)", | |
"dial_code": "+506", | |
"code": "CR", | |
"id": "85c60111-8f2c-435b-9003-26ea075bf653" | |
}, | |
"+225": { | |
"country": "Cote d'Ivoire", | |
"name": "Cote d'Ivoire (+225)", | |
"dial_code": "+225", | |
"code": "CI", | |
"id": "ea484878-dca5-4299-b907-6a1531d6d69e" | |
}, | |
"+385": { | |
"country": "Croatia", | |
"name": "Croatia (+385)", | |
"dial_code": "+385", | |
"code": "HR", | |
"id": "8660c262-d28a-433b-9323-7c7dc4ca39d6" | |
}, | |
"+53": { | |
"country": "Cuba", | |
"name": "Cuba (+53)", | |
"dial_code": "+53", | |
"code": "CU", | |
"id": "df440399-2054-4c32-842f-8fd34fc4a1e8" | |
}, | |
"+357": { | |
"country": "Cyprus", | |
"name": "Cyprus (+357)", | |
"dial_code": "+357", | |
"code": "CY", | |
"id": "6f9c9a4a-b99b-4023-9700-becc6215ef35" | |
}, | |
"+420": { | |
"country": "Czech Republic", | |
"name": "Czech Republic (+420)", | |
"dial_code": "+420", | |
"code": "CZ", | |
"id": "c05f233f-0753-4029-8146-a9f3244878b8" | |
}, | |
"+45": { | |
"country": "Denmark", | |
"name": "Denmark (+45)", | |
"dial_code": "+45", | |
"code": "DK", | |
"id": "b0add477-e0da-443c-abb9-50946749fd65" | |
}, | |
"+253": { | |
"country": "Djibouti", | |
"name": "Djibouti (+253)", | |
"dial_code": "+253", | |
"code": "DJ", | |
"id": "3bd286e1-e67e-4761-b391-1da37708bde3" | |
}, | |
"+1 767": { | |
"country": "Dominica", | |
"name": "Dominica (+1 767)", | |
"dial_code": "+1 767", | |
"code": "DM", | |
"id": "c19820aa-90b1-4ac8-9170-090617e014c4" | |
}, | |
"+1 849": { | |
"country": "Dominican Republic", | |
"name": "Dominican Republic (+1 849)", | |
"dial_code": "+1 849", | |
"code": "DO", | |
"id": "d72eca01-e191-4f2f-b6b8-f1e2d8677d9c" | |
}, | |
"+593": { | |
"country": "Ecuador", | |
"name": "Ecuador (+593)", | |
"dial_code": "+593", | |
"code": "EC", | |
"id": "efedf329-54ad-48d8-b78b-6a4cd1c47aad" | |
}, | |
"+20": { | |
"country": "Egypt", | |
"name": "Egypt (+20)", | |
"dial_code": "+20", | |
"code": "EG", | |
"id": "cedde53a-26de-42f2-bdff-c18bd2e5b1d3" | |
}, | |
"+503": { | |
"country": "El Salvador", | |
"name": "El Salvador (+503)", | |
"dial_code": "+503", | |
"code": "SV", | |
"id": "b3ce527f-7f37-4253-a983-3b586127c303" | |
}, | |
"+240": { | |
"country": "Equatorial Guinea", | |
"name": "Equatorial Guinea (+240)", | |
"dial_code": "+240", | |
"code": "GQ", | |
"id": "5bade479-b2de-4cd0-a17a-cb4db9d26fbc" | |
}, | |
"+291": { | |
"country": "Eritrea", | |
"name": "Eritrea (+291)", | |
"dial_code": "+291", | |
"code": "ER", | |
"id": "9d5e69e7-6e69-4011-ad2e-f95f68154e94" | |
}, | |
"+372": { | |
"country": "Estonia", | |
"name": "Estonia (+372)", | |
"dial_code": "+372", | |
"code": "EE", | |
"id": "fe88f4a0-aca6-40b3-be59-8da5ba1a1fff" | |
}, | |
"+251": { | |
"country": "Ethiopia", | |
"name": "Ethiopia (+251)", | |
"dial_code": "+251", | |
"code": "ET", | |
"id": "0b124aff-e952-4219-afed-1060b6e91d7d" | |
}, | |
"+500": { | |
"country": "South Georgia and the South Sandwich Islands", | |
"name": "South Georgia and the South Sandwich Islands (+500)", | |
"dial_code": "+500", | |
"code": "GS", | |
"id": "e5d37843-7c0f-40b7-add6-f160182e8744" | |
}, | |
"+298": { | |
"country": "Faroe Islands", | |
"name": "Faroe Islands (+298)", | |
"dial_code": "+298", | |
"code": "FO", | |
"id": "ad011ffd-ad17-4b43-939b-41cbb783fdab" | |
}, | |
"+679": { | |
"country": "Fiji", | |
"name": "Fiji (+679)", | |
"dial_code": "+679", | |
"code": "FJ", | |
"id": "5b323f02-02e2-4cc0-8465-1c29c1a9a5e9" | |
}, | |
"+33": { | |
"country": "France", | |
"name": "France (+33)", | |
"dial_code": "+33", | |
"code": "FR", | |
"id": "92c3a631-2b33-430e-b855-e4fa3731b6a5" | |
}, | |
"+594": { | |
"country": "French Guiana", | |
"name": "French Guiana (+594)", | |
"dial_code": "+594", | |
"code": "GF", | |
"id": "3e7d0c79-1f7a-47e2-90ee-0bd790a2945c" | |
}, | |
"+689": { | |
"country": "French Polynesia", | |
"name": "French Polynesia (+689)", | |
"dial_code": "+689", | |
"code": "PF", | |
"id": "3aa7e1f4-df24-4c1c-bcb2-972dab2ca210" | |
}, | |
"+241": { | |
"country": "Gabon", | |
"name": "Gabon (+241)", | |
"dial_code": "+241", | |
"code": "GA", | |
"id": "7174066a-eb72-40bd-8d8b-f1924f2df6f2" | |
}, | |
"+220": { | |
"country": "Gambia", | |
"name": "Gambia (+220)", | |
"dial_code": "+220", | |
"code": "GM", | |
"id": "a1f524ef-3795-4c2b-9d77-a105af69211e" | |
}, | |
"+995": { | |
"country": "Georgia", | |
"name": "Georgia (+995)", | |
"dial_code": "+995", | |
"code": "GE", | |
"id": "5bbddcac-81bd-47dc-b4e5-5d6df09df62a" | |
}, | |
"+49": { | |
"country": "Germany", | |
"name": "Germany (+49)", | |
"dial_code": "+49", | |
"code": "DE", | |
"id": "c9db9832-2812-40a3-9bb4-dc0a2048f018" | |
}, | |
"+233": { | |
"country": "Ghana", | |
"name": "Ghana (+233)", | |
"dial_code": "+233", | |
"code": "GH", | |
"id": "32989415-ef56-46d0-b932-b389ecf61362" | |
}, | |
"+350": { | |
"country": "Gibraltar", | |
"name": "Gibraltar (+350)", | |
"dial_code": "+350", | |
"code": "GI", | |
"id": "44c44d6e-868c-47f9-9d90-bfa1d86789c6" | |
}, | |
"+30": { | |
"country": "Greece", | |
"name": "Greece (+30)", | |
"dial_code": "+30", | |
"code": "GR", | |
"id": "85f63378-51ac-43b6-873b-de18ace89052" | |
}, | |
"+299": { | |
"country": "Greenland", | |
"name": "Greenland (+299)", | |
"dial_code": "+299", | |
"code": "GL", | |
"id": "5cb02ac2-425c-45e1-8365-f946d6b2d828" | |
}, | |
"+1 473": { | |
"country": "Grenada", | |
"name": "Grenada (+1 473)", | |
"dial_code": "+1 473", | |
"code": "GD", | |
"id": "b3d733de-53ea-49a9-8980-9d1da6ed8d39" | |
}, | |
"+590": { | |
"country": "Saint Martin", | |
"name": "Saint Martin (+590)", | |
"dial_code": "+590", | |
"code": "MF", | |
"id": "52c9ffb5-5f7a-4698-9410-6c0ae5651774" | |
}, | |
"+1 671": { | |
"country": "Guam", | |
"name": "Guam (+1 671)", | |
"dial_code": "+1 671", | |
"code": "GU", | |
"id": "53fef964-cf6c-444b-a7c2-1d3d6ce7236d" | |
}, | |
"+502": { | |
"country": "Guatemala", | |
"name": "Guatemala (+502)", | |
"dial_code": "+502", | |
"code": "GT", | |
"id": "8d9ad90d-3c0d-413c-8816-f2c36ad686ec" | |
}, | |
"+44": { | |
"country": "United Kingdom", | |
"name": "United Kingdom (+44)", | |
"dial_code": "+44", | |
"code": "GB", | |
"id": "94fd4a91-4f4c-4eeb-9430-57f14f81dc78" | |
}, | |
"+224": { | |
"country": "Guinea", | |
"name": "Guinea (+224)", | |
"dial_code": "+224", | |
"code": "GN", | |
"id": "bbcb8392-2bac-44a0-8e54-c4520cb8a365" | |
}, | |
"+245": { | |
"country": "Guinea-Bissau", | |
"name": "Guinea-Bissau (+245)", | |
"dial_code": "+245", | |
"code": "GW", | |
"id": "9efc590b-6ccd-46b3-a23b-5ab3e6d78066" | |
}, | |
"+595": { | |
"country": "Paraguay", | |
"name": "Paraguay (+595)", | |
"dial_code": "+595", | |
"code": "PY", | |
"id": "c71c2a1c-10f6-4c13-8d29-1721621016b9" | |
}, | |
"+509": { | |
"country": "Haiti", | |
"name": "Haiti (+509)", | |
"dial_code": "+509", | |
"code": "HT", | |
"id": "8c5ffca9-8a20-4a5e-a892-340d24051a2b" | |
}, | |
"+379": { | |
"country": "Holy See (Vatican City State)", | |
"name": "Holy See (Vatican City State) (+379)", | |
"dial_code": "+379", | |
"code": "VA", | |
"id": "10db405e-495f-4799-9a60-48c2019c1532" | |
}, | |
"+504": { | |
"country": "Honduras", | |
"name": "Honduras (+504)", | |
"dial_code": "+504", | |
"code": "HN", | |
"id": "a9584dc1-f750-4eb2-8750-bdd76c5b0b6e" | |
}, | |
"+852": { | |
"country": "Hong Kong", | |
"name": "Hong Kong (+852)", | |
"dial_code": "+852", | |
"code": "HK", | |
"id": "ebc0f325-69cc-4ce1-ba39-0b081a7e1fe0" | |
}, | |
"+36": { | |
"country": "Hungary", | |
"name": "Hungary (+36)", | |
"dial_code": "+36", | |
"code": "HU", | |
"id": "4fdcbc61-ed67-4254-8bcb-1dfacd917f52" | |
}, | |
"+354": { | |
"country": "Iceland", | |
"name": "Iceland (+354)", | |
"dial_code": "+354", | |
"code": "IS", | |
"id": "aee6dd99-dc2b-4b8e-ba1d-fef4c890203f" | |
}, | |
"+91": { | |
"country": "India", | |
"name": "India (+91)", | |
"dial_code": "+91", | |
"code": "IN", | |
"id": "0db07c8d-3c33-47a5-80fa-feeea66da7c2" | |
}, | |
"+62": { | |
"country": "Indonesia", | |
"name": "Indonesia (+62)", | |
"dial_code": "+62", | |
"code": "ID", | |
"id": "9641a634-89b8-4c04-b1a9-784435d603a0" | |
}, | |
"+98": { | |
"country": "Iran, Islamic Republic of Persian Gulf", | |
"name": "Iran, Islamic Republic of Persian Gulf (+98)", | |
"dial_code": "+98", | |
"code": "IR", | |
"id": "4c04ec2a-4ef5-4758-8a64-da79093d243b" | |
}, | |
"+964": { | |
"country": "Iraq", | |
"name": "Iraq (+964)", | |
"dial_code": "+964", | |
"code": "IQ", | |
"id": "6f37a466-2af8-4ea7-9e4f-41898468f2bb" | |
}, | |
"+353": { | |
"country": "Ireland", | |
"name": "Ireland (+353)", | |
"dial_code": "+353", | |
"code": "IE", | |
"id": "b26619e8-118b-47c3-acd8-dbaa7d06c3e7" | |
}, | |
"+972": { | |
"country": "Israel", | |
"name": "Israel (+972)", | |
"dial_code": "+972", | |
"code": "IL", | |
"id": "15a8f0f2-ccad-49ea-b490-26c4b83f4003" | |
}, | |
"+39": { | |
"country": "Italy", | |
"name": "Italy (+39)", | |
"dial_code": "+39", | |
"code": "IT", | |
"id": "3f83d8a6-7dc8-47f5-82f3-5edf572c34fc" | |
}, | |
"+1 876": { | |
"country": "Jamaica", | |
"name": "Jamaica (+1 876)", | |
"dial_code": "+1 876", | |
"code": "JM", | |
"id": "899a1cdc-c9b8-4f58-94a7-3b0394979d9c" | |
}, | |
"+81": { | |
"country": "Japan", | |
"name": "Japan (+81)", | |
"dial_code": "+81", | |
"code": "JP", | |
"id": "8c3f91f8-1a69-4136-9ae2-6c13e902be2d" | |
}, | |
"+962": { | |
"country": "Jordan", | |
"name": "Jordan (+962)", | |
"dial_code": "+962", | |
"code": "JO", | |
"id": "753b0e8a-f71b-40f6-8676-7683518716ad" | |
}, | |
"+7 7": { | |
"country": "Kazakhstan", | |
"name": "Kazakhstan (+7 7)", | |
"dial_code": "+7 7", | |
"code": "KZ", | |
"id": "8d6f72da-4a18-4544-9ca5-c77f706d66c3" | |
}, | |
"+254": { | |
"country": "Kenya", | |
"name": "Kenya (+254)", | |
"dial_code": "+254", | |
"code": "KE", | |
"id": "2a5be433-6dc3-45f4-ab33-c5be908daabb" | |
}, | |
"+686": { | |
"country": "Kiribati", | |
"name": "Kiribati (+686)", | |
"dial_code": "+686", | |
"code": "KI", | |
"id": "ceaed9cb-f1dd-4455-9965-d6c69a2a2bee" | |
}, | |
"+850": { | |
"country": "Korea, Democratic People's Republic of Korea", | |
"name": "Korea, Democratic People's Republic of Korea (+850)", | |
"dial_code": "+850", | |
"code": "KP", | |
"id": "2909bbcd-520e-451a-bbe0-7c9f8083349f" | |
}, | |
"+82": { | |
"country": "Korea, Republic of South Korea", | |
"name": "Korea, Republic of South Korea (+82)", | |
"dial_code": "+82", | |
"code": "KR", | |
"id": "8ed62e7c-026b-442e-a245-66b842f7a5a1" | |
}, | |
"+965": { | |
"country": "Kuwait", | |
"name": "Kuwait (+965)", | |
"dial_code": "+965", | |
"code": "KW", | |
"id": "b9d1fe32-61d6-44bc-89ad-eb8ecf3677b7" | |
}, | |
"+996": { | |
"country": "Kyrgyzstan", | |
"name": "Kyrgyzstan (+996)", | |
"dial_code": "+996", | |
"code": "KG", | |
"id": "72412ff0-6850-43d3-a87d-b4bb2177133d" | |
}, | |
"+856": { | |
"country": "Laos", | |
"name": "Laos (+856)", | |
"dial_code": "+856", | |
"code": "LA", | |
"id": "ea36c4c3-4700-4f3d-84bc-cc5533b6abf5" | |
}, | |
"+371": { | |
"country": "Latvia", | |
"name": "Latvia (+371)", | |
"dial_code": "+371", | |
"code": "LV", | |
"id": "14f70744-8772-464d-8a78-487a234b56c3" | |
}, | |
"+961": { | |
"country": "Lebanon", | |
"name": "Lebanon (+961)", | |
"dial_code": "+961", | |
"code": "LB", | |
"id": "39d19186-e70f-49b0-a1b5-a96aa249c2fe" | |
}, | |
"+266": { | |
"country": "Lesotho", | |
"name": "Lesotho (+266)", | |
"dial_code": "+266", | |
"code": "LS", | |
"id": "43cced83-f885-4e7b-b299-4ee3534f20a1" | |
}, | |
"+231": { | |
"country": "Liberia", | |
"name": "Liberia (+231)", | |
"dial_code": "+231", | |
"code": "LR", | |
"id": "a03ec9d5-5618-4da1-8e6f-e942771f090f" | |
}, | |
"+218": { | |
"country": "Libyan Arab Jamahiriya", | |
"name": "Libyan Arab Jamahiriya (+218)", | |
"dial_code": "+218", | |
"code": "LY", | |
"id": "fa80c53d-0e06-4e3a-8b3d-7aab16cdd61b" | |
}, | |
"+423": { | |
"country": "Liechtenstein", | |
"name": "Liechtenstein (+423)", | |
"dial_code": "+423", | |
"code": "LI", | |
"id": "3e356b0e-d5a5-452b-948b-4dfaa54378a4" | |
}, | |
"+370": { | |
"country": "Lithuania", | |
"name": "Lithuania (+370)", | |
"dial_code": "+370", | |
"code": "LT", | |
"id": "502de5db-61aa-4f59-b4df-729d43a1d4bc" | |
}, | |
"+352": { | |
"country": "Luxembourg", | |
"name": "Luxembourg (+352)", | |
"dial_code": "+352", | |
"code": "LU", | |
"id": "36a898eb-b8c1-47b3-91a2-f34bc3f62871" | |
}, | |
"+853": { | |
"country": "Macao", | |
"name": "Macao (+853)", | |
"dial_code": "+853", | |
"code": "MO", | |
"id": "77b3b061-3d48-4e2c-9d49-5fedeaf138aa" | |
}, | |
"+389": { | |
"country": "Macedonia", | |
"name": "Macedonia (+389)", | |
"dial_code": "+389", | |
"code": "MK", | |
"id": "a2706675-f46f-476b-b152-616238045baa" | |
}, | |
"+261": { | |
"country": "Madagascar", | |
"name": "Madagascar (+261)", | |
"dial_code": "+261", | |
"code": "MG", | |
"id": "a3325f55-797f-4f45-ac4d-e0cf252f2fc6" | |
}, | |
"+265": { | |
"country": "Malawi", | |
"name": "Malawi (+265)", | |
"dial_code": "+265", | |
"code": "MW", | |
"id": "bf58ad82-e12d-42e6-b129-aab0a1d80605" | |
}, | |
"+60": { | |
"country": "Malaysia", | |
"name": "Malaysia (+60)", | |
"dial_code": "+60", | |
"code": "MY", | |
"id": "85bdcf28-2d3c-477a-86ff-7259c2f507d8" | |
}, | |
"+960": { | |
"country": "Maldives", | |
"name": "Maldives (+960)", | |
"dial_code": "+960", | |
"code": "MV", | |
"id": "85f532e9-c398-4479-9231-7528403e8485" | |
}, | |
"+223": { | |
"country": "Mali", | |
"name": "Mali (+223)", | |
"dial_code": "+223", | |
"code": "ML", | |
"id": "f4bb60f0-fccf-4926-a9bc-5555cb6c8252" | |
}, | |
"+356": { | |
"country": "Malta", | |
"name": "Malta (+356)", | |
"dial_code": "+356", | |
"code": "MT", | |
"id": "2e46ef04-75b3-492e-a8e1-b54691f23962" | |
}, | |
"+692": { | |
"country": "Marshall Islands", | |
"name": "Marshall Islands (+692)", | |
"dial_code": "+692", | |
"code": "MH", | |
"id": "1d7314d6-e80e-4000-b61c-35e99b78e62c" | |
}, | |
"+596": { | |
"country": "Martinique", | |
"name": "Martinique (+596)", | |
"dial_code": "+596", | |
"code": "MQ", | |
"id": "8539ce77-cbb3-4773-8479-0061079b9258" | |
}, | |
"+222": { | |
"country": "Mauritania", | |
"name": "Mauritania (+222)", | |
"dial_code": "+222", | |
"code": "MR", | |
"id": "79471a7a-2cb8-4a5e-9e95-d14d3cc157f4" | |
}, | |
"+230": { | |
"country": "Mauritius", | |
"name": "Mauritius (+230)", | |
"dial_code": "+230", | |
"code": "MU", | |
"id": "97a350c6-832f-484f-8f47-e84907b4d751" | |
}, | |
"+262": { | |
"country": "Reunion", | |
"name": "Reunion (+262)", | |
"dial_code": "+262", | |
"code": "RE", | |
"id": "8560374a-ec40-40ea-93c0-5bf009f2b94d" | |
}, | |
"+52": { | |
"country": "Mexico", | |
"name": "Mexico (+52)", | |
"dial_code": "+52", | |
"code": "MX", | |
"id": "fad30c8c-c70c-43ca-83f1-dc63a1842342" | |
}, | |
"+691": { | |
"country": "Micronesia, Federated States of Micronesia", | |
"name": "Micronesia, Federated States of Micronesia (+691)", | |
"dial_code": "+691", | |
"code": "FM", | |
"id": "ee60f4bb-02e9-48fb-86eb-1d6ff6602cb8" | |
}, | |
"+373": { | |
"country": "Moldova", | |
"name": "Moldova (+373)", | |
"dial_code": "+373", | |
"code": "MD", | |
"id": "3c4dec36-86ac-44dd-bdb0-b4ca24eb18f4" | |
}, | |
"+377": { | |
"country": "Monaco", | |
"name": "Monaco (+377)", | |
"dial_code": "+377", | |
"code": "MC", | |
"id": "aee63866-bd6e-4d9d-bde9-f1d431a2c231" | |
}, | |
"+976": { | |
"country": "Mongolia", | |
"name": "Mongolia (+976)", | |
"dial_code": "+976", | |
"code": "MN", | |
"id": "b74b7eae-47a5-495c-8388-489cae9bba66" | |
}, | |
"+382": { | |
"country": "Montenegro", | |
"name": "Montenegro (+382)", | |
"dial_code": "+382", | |
"code": "ME", | |
"id": "1917e73a-da3d-4610-9e35-a534a1c4b2fd" | |
}, | |
"+1664": { | |
"country": "Montserrat", | |
"name": "Montserrat (+1664)", | |
"dial_code": "+1664", | |
"code": "MS", | |
"id": "d7e34c23-9c89-42b1-85ab-d9d981161baf" | |
}, | |
"+212": { | |
"country": "Morocco", | |
"name": "Morocco (+212)", | |
"dial_code": "+212", | |
"code": "MA", | |
"id": "29624435-29e7-4f92-92b7-fe9849e4e510" | |
}, | |
"+258": { | |
"country": "Mozambique", | |
"name": "Mozambique (+258)", | |
"dial_code": "+258", | |
"code": "MZ", | |
"id": "a278b33c-f8d8-4a41-881e-df90e2d9ccfd" | |
}, | |
"+95": { | |
"country": "Myanmar", | |
"name": "Myanmar (+95)", | |
"dial_code": "+95", | |
"code": "MM", | |
"id": "c14289e7-c442-439c-b131-1d323ebf4afd" | |
}, | |
"+264": { | |
"country": "Namibia", | |
"name": "Namibia (+264)", | |
"dial_code": "+264", | |
"code": "NA", | |
"id": "8a1ec75b-6058-4cac-ba48-3464c041922b" | |
}, | |
"+674": { | |
"country": "Nauru", | |
"name": "Nauru (+674)", | |
"dial_code": "+674", | |
"code": "NR", | |
"id": "f0272ad4-6c6f-4038-94f9-db51cec528b0" | |
}, | |
"+977": { | |
"country": "Nepal", | |
"name": "Nepal (+977)", | |
"dial_code": "+977", | |
"code": "NP", | |
"id": "ac599af8-48ed-4ab0-8fda-0d5d5d0d6f45" | |
}, | |
"+31": { | |
"country": "Netherlands", | |
"name": "Netherlands (+31)", | |
"dial_code": "+31", | |
"code": "NL", | |
"id": "458e0af6-e2a1-4291-a18b-17a203e2b788" | |
}, | |
"+599": { | |
"country": "Netherlands Antilles", | |
"name": "Netherlands Antilles (+599)", | |
"dial_code": "+599", | |
"code": "AN", | |
"id": "7de4ccce-ce3d-4d91-b65b-7c99b004d98c" | |
}, | |
"+687": { | |
"country": "New Caledonia", | |
"name": "New Caledonia (+687)", | |
"dial_code": "+687", | |
"code": "NC", | |
"id": "137f2e2a-85b9-47ea-aeab-f86939e7aec2" | |
}, | |
"+64": { | |
"country": "New Zealand", | |
"name": "New Zealand (+64)", | |
"dial_code": "+64", | |
"code": "NZ", | |
"id": "8782f1db-e7f9-42c8-b653-7c618b777f8c" | |
}, | |
"+505": { | |
"country": "Nicaragua", | |
"name": "Nicaragua (+505)", | |
"dial_code": "+505", | |
"code": "NI", | |
"id": "8d8b11fe-8f1a-45ed-b2e1-8630bf9828c6" | |
}, | |
"+227": { | |
"country": "Niger", | |
"name": "Niger (+227)", | |
"dial_code": "+227", | |
"code": "NE", | |
"id": "3339f147-1720-4a34-82de-637208371f14" | |
}, | |
"+234": { | |
"country": "Nigeria", | |
"name": "Nigeria (+234)", | |
"dial_code": "+234", | |
"code": "NG", | |
"id": "1c6ca5d4-a88f-422d-a294-d10e57d4a582" | |
}, | |
"+683": { | |
"country": "Niue", | |
"name": "Niue (+683)", | |
"dial_code": "+683", | |
"code": "NU", | |
"id": "e8e32936-7350-47b7-ab33-5cae8db9d0e2" | |
}, | |
"+1 670": { | |
"country": "Northern Mariana Islands", | |
"name": "Northern Mariana Islands (+1 670)", | |
"dial_code": "+1 670", | |
"code": "MP", | |
"id": "d15e49ec-e4b5-4ba6-b858-dfee45be1810" | |
}, | |
"+47": { | |
"country": "Svalbard and Jan Mayen", | |
"name": "Svalbard and Jan Mayen (+47)", | |
"dial_code": "+47", | |
"code": "SJ", | |
"id": "2caff444-a3f9-4287-8418-c204677da32b" | |
}, | |
"+968": { | |
"country": "Oman", | |
"name": "Oman (+968)", | |
"dial_code": "+968", | |
"code": "OM", | |
"id": "efe8c3ab-1ff9-4b69-a4c2-06267de440ab" | |
}, | |
"+92": { | |
"country": "Pakistan", | |
"name": "Pakistan (+92)", | |
"dial_code": "+92", | |
"code": "PK", | |
"id": "22a2aa96-cd2f-426d-921e-bbff1aa04be0" | |
}, | |
"+680": { | |
"country": "Palau", | |
"name": "Palau (+680)", | |
"dial_code": "+680", | |
"code": "PW", | |
"id": "0f8ac08b-5947-4746-bc77-98a43c42d812" | |
}, | |
"+970": { | |
"country": "Palestinian Territory, Occupied", | |
"name": "Palestinian Territory, Occupied (+970)", | |
"dial_code": "+970", | |
"code": "PS", | |
"id": "2eb1618a-ccf1-42fc-b183-7e67f8f0a275" | |
}, | |
"+507": { | |
"country": "Panama", | |
"name": "Panama (+507)", | |
"dial_code": "+507", | |
"code": "PA", | |
"id": "286b6bf0-e333-4903-8977-be5fcd58aaef" | |
}, | |
"+675": { | |
"country": "Papua New Guinea", | |
"name": "Papua New Guinea (+675)", | |
"dial_code": "+675", | |
"code": "PG", | |
"id": "7eb37f4a-f275-46c2-a09e-14588baa1abb" | |
}, | |
"+51": { | |
"country": "Peru", | |
"name": "Peru (+51)", | |
"dial_code": "+51", | |
"code": "PE", | |
"id": "798165e5-990c-4357-8681-44ebafd60701" | |
}, | |
"+63": { | |
"country": "Philippines", | |
"name": "Philippines (+63)", | |
"dial_code": "+63", | |
"code": "PH", | |
"id": "d465ffde-906e-4780-bae3-2b19e2c3653d" | |
}, | |
"+872": { | |
"country": "Pitcairn", | |
"name": "Pitcairn (+872)", | |
"dial_code": "+872", | |
"code": "PN", | |
"id": "81d0a21b-4de2-4900-8424-c8004363f5bc" | |
}, | |
"+48": { | |
"country": "Poland", | |
"name": "Poland (+48)", | |
"dial_code": "+48", | |
"code": "PL", | |
"id": "b9f1383c-6415-4f81-82bd-945a48f0b336" | |
}, | |
"+351": { | |
"country": "Portugal", | |
"name": "Portugal (+351)", | |
"dial_code": "+351", | |
"code": "PT", | |
"id": "bfa7cf4e-8612-471e-aaa8-066376ff71d9" | |
}, | |
"+1 939": { | |
"country": "Puerto Rico", | |
"name": "Puerto Rico (+1 939)", | |
"dial_code": "+1 939", | |
"code": "PR", | |
"id": "f93e2c67-df98-4117-9777-73e5fc9b7500" | |
}, | |
"+974": { | |
"country": "Qatar", | |
"name": "Qatar (+974)", | |
"dial_code": "+974", | |
"code": "QA", | |
"id": "ee53ce44-31aa-46a3-bb7b-b3883a8e7703" | |
}, | |
"+40": { | |
"country": "Romania", | |
"name": "Romania (+40)", | |
"dial_code": "+40", | |
"code": "RO", | |
"id": "41cc0ccc-8257-42a9-9f6d-540a6ce5fe6f" | |
}, | |
"+7": { | |
"country": "Russia", | |
"name": "Russia (+7)", | |
"dial_code": "+7", | |
"code": "RU", | |
"id": "d9e50c5a-5d2c-492c-81ca-68bff37c8396" | |
}, | |
"+250": { | |
"country": "Rwanda", | |
"name": "Rwanda (+250)", | |
"dial_code": "+250", | |
"code": "RW", | |
"id": "a3894dc8-30ec-414d-8b21-9fe7a7ae80b9" | |
}, | |
"+290": { | |
"country": "Saint Helena, Ascension and Tristan Da Cunha", | |
"name": "Saint Helena, Ascension and Tristan Da Cunha (+290)", | |
"dial_code": "+290", | |
"code": "SH", | |
"id": "44572bb7-caac-4047-b33c-075dee578b8b" | |
}, | |
"+1 869": { | |
"country": "Saint Kitts and Nevis", | |
"name": "Saint Kitts and Nevis (+1 869)", | |
"dial_code": "+1 869", | |
"code": "KN", | |
"id": "4d385df2-713a-4924-a826-76bd577ca69e" | |
}, | |
"+1 758": { | |
"country": "Saint Lucia", | |
"name": "Saint Lucia (+1 758)", | |
"dial_code": "+1 758", | |
"code": "LC", | |
"id": "dab7b518-966e-4b66-bbca-2ffb281c7c3e" | |
}, | |
"+508": { | |
"country": "Saint Pierre and Miquelon", | |
"name": "Saint Pierre and Miquelon (+508)", | |
"dial_code": "+508", | |
"code": "PM", | |
"id": "37e63f76-dd8d-43b3-b254-55f4766b5647" | |
}, | |
"+1 784": { | |
"country": "Saint Vincent and the Grenadines", | |
"name": "Saint Vincent and the Grenadines (+1 784)", | |
"dial_code": "+1 784", | |
"code": "VC", | |
"id": "03310fbd-ffb1-4cf8-948a-cd675a45532a" | |
}, | |
"+685": { | |
"country": "Samoa", | |
"name": "Samoa (+685)", | |
"dial_code": "+685", | |
"code": "WS", | |
"id": "c48ab915-2412-484f-a18c-5f177ff98d4c" | |
}, | |
"+378": { | |
"country": "San Marino", | |
"name": "San Marino (+378)", | |
"dial_code": "+378", | |
"code": "SM", | |
"id": "13f2c521-761a-4454-aafb-1bab2bb75474" | |
}, | |
"+239": { | |
"country": "Sao Tome and Principe", | |
"name": "Sao Tome and Principe (+239)", | |
"dial_code": "+239", | |
"code": "ST", | |
"id": "5e1ae722-5116-4239-b4f0-94fdfa24da20" | |
}, | |
"+966": { | |
"country": "Saudi Arabia", | |
"name": "Saudi Arabia (+966)", | |
"dial_code": "+966", | |
"code": "SA", | |
"id": "f2e2d885-1221-4429-ac2d-e1400c200e7d" | |
}, | |
"+221": { | |
"country": "Senegal", | |
"name": "Senegal (+221)", | |
"dial_code": "+221", | |
"code": "SN", | |
"id": "e7ea9d00-67f5-4bd0-aae6-147c7b8bdedb" | |
}, | |
"+381": { | |
"country": "Serbia", | |
"name": "Serbia (+381)", | |
"dial_code": "+381", | |
"code": "RS", | |
"id": "596d4a9c-d71b-458e-9a27-02801ee9c9be" | |
}, | |
"+248": { | |
"country": "Seychelles", | |
"name": "Seychelles (+248)", | |
"dial_code": "+248", | |
"code": "SC", | |
"id": "42e1577d-b683-4e49-a292-094c641c00a0" | |
}, | |
"+232": { | |
"country": "Sierra Leone", | |
"name": "Sierra Leone (+232)", | |
"dial_code": "+232", | |
"code": "SL", | |
"id": "022c437f-0cd7-4e1a-9c4c-7482bf3fdbeb" | |
}, | |
"+65": { | |
"country": "Singapore", | |
"name": "Singapore (+65)", | |
"dial_code": "+65", | |
"code": "SG", | |
"id": "d21a41b5-ddc7-4a79-800b-c6552c924129" | |
}, | |
"+421": { | |
"country": "Slovakia", | |
"name": "Slovakia (+421)", | |
"dial_code": "+421", | |
"code": "SK", | |
"id": "1dd11539-cec5-4823-a8b1-10dbfec21fa1" | |
}, | |
"+386": { | |
"country": "Slovenia", | |
"name": "Slovenia (+386)", | |
"dial_code": "+386", | |
"code": "SI", | |
"id": "22218b8b-614c-40c1-8821-5147e2fc1f1c" | |
}, | |
"+677": { | |
"country": "Solomon Islands", | |
"name": "Solomon Islands (+677)", | |
"dial_code": "+677", | |
"code": "SB", | |
"id": "5eb41e9e-0852-4ded-b0dd-62b50b2799b2" | |
}, | |
"+252": { | |
"country": "Somalia", | |
"name": "Somalia (+252)", | |
"dial_code": "+252", | |
"code": "SO", | |
"id": "d2ff70f4-e130-4853-b2b3-d039e71f0a7d" | |
}, | |
"+27": { | |
"country": "South Africa", | |
"name": "South Africa (+27)", | |
"dial_code": "+27", | |
"code": "ZA", | |
"id": "9c5e3a53-e3c3-44b7-bbd9-5cfe1c5db5f7" | |
}, | |
"+34": { | |
"country": "Spain", | |
"name": "Spain (+34)", | |
"dial_code": "+34", | |
"code": "ES", | |
"id": "1b3f1f27-9b96-4425-a25d-92d851856c78" | |
}, | |
"+94": { | |
"country": "Sri Lanka", | |
"name": "Sri Lanka (+94)", | |
"dial_code": "+94", | |
"code": "LK", | |
"id": "86c60d95-7aa0-4369-a1e2-3b656109cd0b" | |
}, | |
"+249": { | |
"country": "Sudan", | |
"name": "Sudan (+249)", | |
"dial_code": "+249", | |
"code": "SD", | |
"id": "f43b0a12-667b-45dd-9db1-07e501dd6532" | |
}, | |
"+597": { | |
"country": "Suriname", | |
"name": "Suriname (+597)", | |
"dial_code": "+597", | |
"code": "SR", | |
"id": "3c8867d2-00ab-49c7-9cd8-4fcbe94079e6" | |
}, | |
"+268": { | |
"country": "Swaziland", | |
"name": "Swaziland (+268)", | |
"dial_code": "+268", | |
"code": "SZ", | |
"id": "531cd58d-69d7-4242-bddb-81415e742258" | |
}, | |
"+46": { | |
"country": "Sweden", | |
"name": "Sweden (+46)", | |
"dial_code": "+46", | |
"code": "SE", | |
"id": "b65f7a11-a6a0-4458-a322-ea4d3fbcf678" | |
}, | |
"+41": { | |
"country": "Switzerland", | |
"name": "Switzerland (+41)", | |
"dial_code": "+41", | |
"code": "CH", | |
"id": "3c854c8f-29cc-4892-b06c-3af6a18b9ec3" | |
}, | |
"+963": { | |
"country": "Syrian Arab Republic", | |
"name": "Syrian Arab Republic (+963)", | |
"dial_code": "+963", | |
"code": "SY", | |
"id": "aa7929b0-719b-4077-a10b-e2b059bfc96e" | |
}, | |
"+886": { | |
"country": "Taiwan", | |
"name": "Taiwan (+886)", | |
"dial_code": "+886", | |
"code": "TW", | |
"id": "13dbf70f-9fe8-48de-866a-0491de530306" | |
}, | |
"+992": { | |
"country": "Tajikistan", | |
"name": "Tajikistan (+992)", | |
"dial_code": "+992", | |
"code": "TJ", | |
"id": "0a6f9ad7-329a-4b6e-a5e0-e94a683c6686" | |
}, | |
"+255": { | |
"country": "Tanzania, United Republic of Tanzania", | |
"name": "Tanzania, United Republic of Tanzania (+255)", | |
"dial_code": "+255", | |
"code": "TZ", | |
"id": "931bd9f1-267c-4e59-b24c-e9c1bc1bcd90" | |
}, | |
"+66": { | |
"country": "Thailand", | |
"name": "Thailand (+66)", | |
"dial_code": "+66", | |
"code": "TH", | |
"id": "ec0705da-301d-446a-b5c3-c6bc30be9f9c" | |
}, | |
"+670": { | |
"country": "Timor-Leste", | |
"name": "Timor-Leste (+670)", | |
"dial_code": "+670", | |
"code": "TL", | |
"id": "a78a5787-cc5a-4c67-bed1-7d5643f4bbaf" | |
}, | |
"+228": { | |
"country": "Togo", | |
"name": "Togo (+228)", | |
"dial_code": "+228", | |
"code": "TG", | |
"id": "77c3ea90-d24a-4909-9da1-f8facee078f5" | |
}, | |
"+690": { | |
"country": "Tokelau", | |
"name": "Tokelau (+690)", | |
"dial_code": "+690", | |
"code": "TK", | |
"id": "15d7ab35-80bc-461c-b710-f3ce5854826d" | |
}, | |
"+676": { | |
"country": "Tonga", | |
"name": "Tonga (+676)", | |
"dial_code": "+676", | |
"code": "TO", | |
"id": "d5de1a43-79bb-46e7-9baf-6bffba95c120" | |
}, | |
"+1 868": { | |
"country": "Trinidad and Tobago", | |
"name": "Trinidad and Tobago (+1 868)", | |
"dial_code": "+1 868", | |
"code": "TT", | |
"id": "ff8055b3-ad4e-4aa9-a37d-ba3406d84a49" | |
}, | |
"+216": { | |
"country": "Tunisia", | |
"name": "Tunisia (+216)", | |
"dial_code": "+216", | |
"code": "TN", | |
"id": "3aa55657-d28d-43a9-9b05-c94a7fa508c3" | |
}, | |
"+90": { | |
"country": "Turkey", | |
"name": "Turkey (+90)", | |
"dial_code": "+90", | |
"code": "TR", | |
"id": "8c6a2dbd-dd59-42f8-9a36-fbd371bb05fd" | |
}, | |
"+993": { | |
"country": "Turkmenistan", | |
"name": "Turkmenistan (+993)", | |
"dial_code": "+993", | |
"code": "TM", | |
"id": "7b8fe5ed-ba21-4abf-bce1-265a2161ed9a" | |
}, | |
"+1 649": { | |
"country": "Turks and Caicos Islands", | |
"name": "Turks and Caicos Islands (+1 649)", | |
"dial_code": "+1 649", | |
"code": "TC", | |
"id": "978204ed-98bf-49ef-bb08-7d1b1745463a" | |
}, | |
"+688": { | |
"country": "Tuvalu", | |
"name": "Tuvalu (+688)", | |
"dial_code": "+688", | |
"code": "TV", | |
"id": "061c9c37-6165-4c03-9426-2cff6069ee1b" | |
}, | |
"+256": { | |
"country": "Uganda", | |
"name": "Uganda (+256)", | |
"dial_code": "+256", | |
"code": "UG", | |
"id": "d00c67a3-51a8-4b4d-9755-0bfadc28eeb0" | |
}, | |
"+380": { | |
"country": "Ukraine", | |
"name": "Ukraine (+380)", | |
"dial_code": "+380", | |
"code": "UA", | |
"id": "1d41e7e7-d666-4b27-9940-30648de57944" | |
}, | |
"+971": { | |
"country": "United Arab Emirates", | |
"name": "United Arab Emirates (+971)", | |
"dial_code": "+971", | |
"code": "AE", | |
"id": "4377ef0b-2ed9-45a2-a3df-4726ce369e85" | |
}, | |
"+598": { | |
"country": "Uruguay", | |
"name": "Uruguay (+598)", | |
"dial_code": "+598", | |
"code": "UY", | |
"id": "f94c33ca-4540-46f7-8902-c8d87ba338e4" | |
}, | |
"+998": { | |
"country": "Uzbekistan", | |
"name": "Uzbekistan (+998)", | |
"dial_code": "+998", | |
"code": "UZ", | |
"id": "3a2fa5e4-517d-4fac-a1b8-fbcfb9cd17be" | |
}, | |
"+678": { | |
"country": "Vanuatu", | |
"name": "Vanuatu (+678)", | |
"dial_code": "+678", | |
"code": "VU", | |
"id": "65675db1-fb44-4937-ade7-a65a7383cfc4" | |
}, | |
"+58": { | |
"country": "Venezuela, Bolivarian Republic of Venezuela", | |
"name": "Venezuela, Bolivarian Republic of Venezuela (+58)", | |
"dial_code": "+58", | |
"code": "VE", | |
"id": "dbc659bb-72bf-4372-8ea6-382fcdd94037" | |
}, | |
"+84": { | |
"country": "Vietnam", | |
"name": "Vietnam (+84)", | |
"dial_code": "+84", | |
"code": "VN", | |
"id": "8f4cd568-8cec-4c76-aeed-d2b74ccc653a" | |
}, | |
"+1 284": { | |
"country": "Virgin Islands, British", | |
"name": "Virgin Islands, British (+1 284)", | |
"dial_code": "+1 284", | |
"code": "VG", | |
"id": "01eea7b3-a7d5-4d5d-8f68-ff2171852393" | |
}, | |
"+1 340": { | |
"country": "Virgin Islands, U.S.", | |
"name": "Virgin Islands, U.S. (+1 340)", | |
"dial_code": "+1 340", | |
"code": "VI", | |
"id": "580363b2-2b36-4061-85b3-f98b08055e04" | |
}, | |
"+681": { | |
"country": "Wallis and Futuna", | |
"name": "Wallis and Futuna (+681)", | |
"dial_code": "+681", | |
"code": "WF", | |
"id": "25c8ead7-0ded-49c3-9a29-baa540babaca" | |
}, | |
"+967": { | |
"country": "Yemen", | |
"name": "Yemen (+967)", | |
"dial_code": "+967", | |
"code": "YE", | |
"id": "3415d105-ad47-4f3d-894f-ae1de7e98d76" | |
}, | |
"+260": { | |
"country": "Zambia", | |
"name": "Zambia (+260)", | |
"dial_code": "+260", | |
"code": "ZM", | |
"id": "dc43f135-af2d-4752-9091-7522e64e9c59" | |
}, | |
"+263": { | |
"country": "Zimbabwe", | |
"name": "Zimbabwe (+263)", | |
"dial_code": "+263", | |
"code": "ZW", | |
"id": "b7225d4d-5fe5-424d-a12c-37e023e82695" | |
} | |
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
import styled from 'astroturf'; | |
import React, { useState, useCallback, ChangeEvent, FC } from 'react'; | |
export type InputProps<T = HTMLInputElement> = { | |
name: string; | |
id?: string; | |
onChange?: (e: ChangeEvent<T>) => void; | |
value: string | number; | |
label: string; | |
} | |
export const InputBase: FC<InputProps> = (props) => { | |
const { id, value, label, children } = props; | |
const [focused, changeFocused] = useState(false); | |
const onFocus = useCallback( | |
() => changeFocused(true), | |
[changeFocused], | |
); | |
const onBlur = useCallback( | |
() => changeFocused(false), | |
[changeFocused], | |
); | |
const isTitleTop = focused || value !== ''; | |
return ( | |
<Label | |
htmlFor={id} | |
onFocus={onFocus} | |
onBlur={onBlur} | |
data-focused={focused} | |
> | |
<Title data-top={isTitleTop}>{label}</Title> | |
{children} | |
</Label> | |
); | |
}; | |
const Label = styled('label')` | |
display: flex; | |
position: relative; | |
border-radius: 8px; | |
--padding: 26px 36px 10px 12px; | |
&:before { | |
content: ''; | |
display: block; | |
position: absolute; | |
box-sizing: border-box; | |
top: 0; | |
left: 0; | |
width: 100%; | |
height: 100%; | |
border: 1px solid rgb(176, 176, 176); | |
border-radius: 8px; | |
transition: border-color .2s ease-in-out; | |
pointer-events: none; | |
} | |
&[data-focused='true']:before { | |
border-width: 2px; | |
border-color: #222; | |
} | |
`; | |
const Title = styled('span')` | |
position: absolute; | |
top: 18px; | |
left: 12px; | |
color: rgb(113, 113, 113); | |
font-size: 16px; | |
transition: transform .2s ease-in-out; | |
transform: translate(0, 0); | |
&[data-top='true'] { | |
transform: translate(-10px, -12px) scale(.8); | |
} | |
`; |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
import styled from 'astroturf'; | |
import React, { useState, FC, ChangeEvent, useCallback } from 'react'; | |
import { InputBase, InputProps } from 'ui/input/input-base'; | |
const phoneRegExp = /\d+$/; | |
export const InputPhoneNumber: FC<InputProps & { code: string }> = (props) => { | |
const { name, id = name, value, label, onChange, code } = props; | |
const [focused, changeFocused] = useState(false); | |
const onFocus = useCallback( | |
() => changeFocused(true), | |
[changeFocused], | |
); | |
const onBlur = useCallback( | |
() => changeFocused(false), | |
[changeFocused], | |
); | |
const validate = useCallback( | |
(e: ChangeEvent<HTMLInputElement>) => { | |
if (e.target.value === '' || phoneRegExp.test(e.target.value)) { | |
onChange && onChange(e); | |
} | |
}, | |
[onChange] | |
); | |
const isCodeVisible = focused || value !== ''; | |
return ( | |
<InputBase | |
name={name} | |
id={id} | |
value={value} | |
label={label} | |
> | |
<Code | |
data-visible={isCodeVisible} | |
> | |
{code} | |
</Code> | |
<Input | |
onFocus={onFocus} | |
onBlur={onBlur} | |
type="tel" | |
value={value} | |
onChange={validate} | |
id={id} | |
name={id} | |
/> | |
</InputBase> | |
); | |
}; | |
const Code = styled('span')` | |
padding: var(--padding); | |
padding-right: 0; | |
font-size: 16px; | |
opacity: 0; | |
transition: .2s ease-in-out; | |
&[data-visible='true'] { | |
opacity: 1; | |
} | |
`; | |
const Input = styled('input')` | |
display: block; | |
width: 100%; | |
padding: var(--padding); | |
box-sizing: border-box; | |
border-width: 0; | |
border-color: transparent; | |
outline: none; | |
font-size: 16px; | |
`; |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
import React, { FC, useState } from 'react'; | |
import styled from 'astroturf'; | |
import countries from 'ui/input/countries.json'; | |
import { InputSelect, OptionItem } from 'ui/input/input-select'; | |
import { InputPhoneNumber } from 'ui/input/input-phone-number'; | |
interface CountryCode { | |
country: string, | |
name: string, | |
dial_code: string, | |
code: string, | |
id: string | |
} | |
export type PhoneNumber = { | |
code: string; | |
number: string; | |
}; | |
type InputFullPhoneProps = { | |
onChange: (payload: PhoneNumber) => void; | |
value: PhoneNumber, | |
}; | |
const options: OptionItem[] = Object | |
.entries(countries) | |
.map(([value, { name }]: [string, CountryCode]) => ({ | |
value, | |
label: name, | |
})); | |
export const InputPhone: FC<InputFullPhoneProps> = (props) => { | |
const { value } = props; | |
const [code, changeCode] = useState(value.code); | |
const [number, updateNumber] = useState(value.number); | |
return ( | |
<InputsGroup> | |
<InputSelect | |
value={code} | |
options={options} | |
onChange={e => changeCode(e.target.value)} | |
label='Country/Region' | |
name='phone-code' | |
/> | |
<InputPhoneNumber | |
code={code} | |
value={number} | |
onChange={e => updateNumber(e.target.value)} | |
label='Phone number' | |
name='phone' | |
/> | |
</InputsGroup> | |
); | |
}; | |
const InputsGroup = styled('div')` | |
& > label:first-child { | |
margin-bottom: -1px; | |
&::before { | |
border-bottom-right-radius: 0; | |
border-bottom-left-radius: 0; | |
} | |
} | |
& > label:last-child:before { | |
border-top-right-radius: 0; | |
border-top-left-radius: 0; | |
} | |
`; |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
import styled from 'astroturf'; | |
import React, { FC } from 'react'; | |
import { InputBase, InputProps } from './input-base'; | |
export type InputSelectProps = InputProps<HTMLSelectElement> & { | |
options: OptionItem[], | |
} | |
export interface OptionItem { | |
value: string | number; | |
label?: string | number; | |
} | |
export const InputSelect: FC<InputSelectProps> = (props) => { | |
const { | |
name, | |
id = name, | |
label, | |
value, | |
options, | |
} = props; | |
return ( | |
<InputBase | |
name={name} | |
id={id} | |
label={label} | |
value={value} | |
> | |
<Select | |
name={props.name} | |
id={props.id} | |
value={props.value} | |
onChange={props.onChange} | |
> | |
{options.map(({ value, label }) => ( | |
<option | |
key={value} | |
value={value} | |
> | |
{label || value} | |
</option> | |
))} | |
</Select> | |
</InputBase> | |
); | |
}; | |
const Select = styled('select')` | |
appearance: none; | |
display: block; | |
background: transparent; | |
border-color: transparent; | |
padding: var(--padding); | |
width: 100%; | |
font-size: 16px; | |
outline: none; | |
`; | |
const Title = styled('span')` | |
position: absolute; | |
top: 8px !important; | |
left: 12px !important; | |
font-size: 13px; | |
color: rgb(113, 113, 113); | |
`; |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment