@yext/phonenumber-util 0.2.7 โ†’ 0.2.8

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@yext/phonenumber-util",
3
- "version": "0.2.7",
3
+ "version": "0.2.8",
4
4
  "author": "bajohnson@hearsaycorp.com",
5
5
  "license": "BSD-3-Clause",
6
6
  "description": "Utility for extracting and validating phone numbers",
@@ -25,16 +25,16 @@
25
25
  "make-badges": "istanbul-badges-readme"
26
26
  },
27
27
  "devDependencies": {
28
- "@eslint/js": "^9.22.0",
29
- "@vitest/coverage-v8": "^3.0.9",
30
- "eslint": "^9.22.0",
28
+ "@eslint/js": "^9.24.0",
29
+ "@vitest/coverage-v8": "^3.1.1",
30
+ "eslint": "^9.24.0",
31
31
  "generate-license-file": "4.0.0",
32
32
  "globals": "^16.0.0",
33
33
  "husky": "^9.1.7",
34
34
  "istanbul-badges-readme": "^1.9.0",
35
- "lint-staged": "^15.5.0",
35
+ "lint-staged": "^15.5.1",
36
36
  "prettier": "^3.5.3",
37
- "vitest": "^3.0.9"
37
+ "vitest": "^3.1.1"
38
38
  },
39
39
  "eslintConfig": {},
40
40
  "lint-staged": {
@@ -239,7 +239,7 @@ describe('Phone number pretty formatting', () => {
239
239
  expect(formatPhoneNumber(testNumbers.nullCase)).toBe(null);
240
240
  expect(formatPhoneNumber(testNumbers.us)).toBe('(310) 349-6200');
241
241
  expect(formatPhoneNumber(testNumbers.colombia)).toBe('+57 321 123 4567');
242
- expect(formatPhoneNumber(testNumbers.germanyAlt)).toBe('+49 17 08765432');
242
+ expect(formatPhoneNumber(testNumbers.germanyAlt)).toBe('+49 170 8765432');
243
243
  // This looks like a Norwegian number, but doesn't match a known format. In this case, we'll return a sanitized generic format.
244
244
  expect(formatPhoneNumber(testNumbers.norwayUnexpected)).toBe(
245
245
  '+47174087654',
package/src/phoneCodes.js CHANGED
@@ -656,6 +656,7 @@ export const REGION_CODES = {
656
656
  54: { name: 'Argentina', code: 'AR', flag: '๐Ÿ‡ฆ๐Ÿ‡ท' },
657
657
  374: { name: 'Armenia', code: 'AM', flag: '๐Ÿ‡ฆ๐Ÿ‡ฒ' },
658
658
  297: { name: 'Aruba', code: 'AW', flag: '๐Ÿ‡ฆ๐Ÿ‡ผ' },
659
+ 247: { name: 'Ascension Island', code: 'AC', flag: '๐Ÿ‡ฆ๐Ÿ‡จ' },
659
660
  43: { name: 'Austria', code: 'AT', flag: '๐Ÿ‡ฆ๐Ÿ‡น' },
660
661
  994: { name: 'Azerbaijan', code: 'AZ', flag: '๐Ÿ‡ฆ๐Ÿ‡ฟ' },
661
662
  973: { name: 'Bahrain', code: 'BH', flag: '๐Ÿ‡ง๐Ÿ‡ญ' },
@@ -715,6 +716,7 @@ export const REGION_CODES = {
715
716
  350: { name: 'Gibraltar', code: 'GI', flag: '๐Ÿ‡ฌ๐Ÿ‡ฎ' },
716
717
  30: { name: 'Greece', code: 'GR', flag: '๐Ÿ‡ฌ๐Ÿ‡ท' },
717
718
  299: { name: 'Greenland', code: 'GL', flag: '๐Ÿ‡ฌ๐Ÿ‡ฑ' },
719
+ 473: { name: 'Grenada', code: 'GD', flag: '๐Ÿ‡ฌ๐Ÿ‡ฉ' },
718
720
  502: { name: 'Guatemala', code: 'GT', flag: '๐Ÿ‡ฌ๐Ÿ‡น' },
719
721
  224: { name: 'Guinea', code: 'GN', flag: '๐Ÿ‡ฌ๐Ÿ‡ณ' },
720
722
  245: { name: 'Guinea-Bissau', code: 'GW', flag: '๐Ÿ‡ฌ๐Ÿ‡ผ' },
@@ -1,214 +1,267 @@
1
1
  // For each region, provide a pretty format. Some regions may have multiple formats, in which case an array can be used. Each "x" will be replaced with a digit when the number of digits matches the number of "x"s in the format.
2
2
  // If no format is found with a correct matching length, a sanitized e164 is returned as a fall-back.
3
3
  export const PHONE_FORMATS = {
4
- 1: '(xxx) xxx-xxxx', // United States
5
- 7: '+x xxx xxx-xx-xx', // Russia
6
- 20: '+xx x xxxxxxxx', // Egypt
4
+ 1: '(xxx) xxx-xxxx', // US, Canada, and NANP regions
5
+ 7: '+x xxx xxx-xx-xx', // Russia, Kazakhstan
6
+ 20: '+xx xxx xxx xxxx', // Egypt
7
7
  27: '+xx xx xxx xxxx', // South Africa
8
8
  30: '+xx xxx xxx xxxx', // Greece
9
- 31: '+xx xx xxx xxxx', // Netherlands
9
+ 31: '+xx xx xxxxxxxx', // Netherlands
10
10
  32: '+xx xxx xx xx xx', // Belgium
11
11
  33: '+xx x xx xx xx xx', // France
12
- 34: '+xx xxx xx xx xx', // Spain
13
- 36: '+xx xx xxx xxxx', // Hungary
12
+ 34: '+xx xxx xxx xxx', // Spain
13
+ 36: '+xx xxx xxx xxx', // Hungary
14
14
  39: '+xx xxx xxx xxxx', // Italy
15
- 40: '+xx xxx xxx xxxx', // Romania
16
- 41: '+xx xx xxx xx xx', // Switzerland
17
- 43: '+xx xxx xxx xxxx', // Austria
18
- 44: '+xx xxxx xxxxxx', // United Kingdom
15
+ 40: '+xx xxx xxx xxx', // Romania
16
+ 41: '+xx xxx xxx xx xx', // Switzerland
17
+ 43: [
18
+ '+xx xxxx xxx-xxx', // 10 digits (mobile)
19
+ '+xx xxxx xxx-xxxx', // 11 digits
20
+ ], // Austria
21
+ 44: [
22
+ '+xx xxxx xxxxxx', // 10 digits (landline)
23
+ '+xx xxxxx xxxxxx', // 11 digits (mobile)
24
+ ], // United Kingdom
19
25
  45: '+xx xx xx xx xx', // Denmark
20
- 46: '+xx xx xxx xx xx', // Sweden
26
+ 46: '+xx xx-xxx xx xx', // Sweden
21
27
  47: '+xx xxx xx xxx', // Norway
22
28
  48: '+xx xxx xxx xxx', // Poland
23
29
  49: [
24
- '+xx xx xxxxxx',
25
- '+xx xx xxxxxxx',
26
- '+xx xx xxxxxxxx',
27
- '+xx xxx xxxxxxxx',
30
+ '+xx xxx xxxxxxx', // 10 digits (standard)
31
+ '+xx xxxx xxxxxxxx', // 11 digits (mobile)
28
32
  ], // Germany
29
33
  51: '+xx xxx xxx xxx', // Peru
30
- 52: '+xx x xxxx xxxx', // Mexico
31
- 53: '+x xxx xxxx', // Cuba
32
- 54: '+xx xx xxxx xxxx', // Argentina
33
- 55: '+xx xx xxxx xxxx', // Brazil
34
+ 52: [
35
+ '+xx xxx xxx xxxx', // 10 digits (standard)
36
+ '+xx xx xx xxxx xxxx', // 12 digits (with area code)
37
+ ], // Mexico
38
+ 53: '+xx x xxx xxxx', // Cuba
39
+ 54: [
40
+ '+xx xxx-xxx-xxxx', // 10 digits (mobile and Buenos Aires)
41
+ '+xx xxxx-xx-xxxx', // 11 digits (mobile with 9 prefix)
42
+ ], // Argentina
43
+ 55: [
44
+ '+xx xx xxxx-xxxx', // 10 digits (standard)
45
+ '+xx xx xxxxx-xxxx', // 11 digits (mobile)
46
+ ], // Brazil
34
47
  56: '+xx x xxxx xxxx', // Chile
35
48
  57: '+xx xxx xxx xxxx', // Colombia
36
- 58: '+xx xxx xxx xxxx', // Venezuela
37
- 60: '+xx xx xxx xxxx', // Malaysia
38
- 61: '+xx xxxx xxxx', // Australia
39
- 62: '+xx xxx xxx xxx', // Indonesia
40
- 63: '+xx xxx xxx xxxx', // Philippines
41
- 64: '+xx xxx xxx xxxx', // New Zealand
49
+ 58: '+xx xxx-xxxxxxx', // Venezuela
50
+ 60: '+xx xx-xxx xxxx', // Malaysia
51
+ 61: [
52
+ '+xx xx xxxx xxxx', // 10 digits (standard)
53
+ '+xx xxx xxx xxx', // 9 digits (some services)
54
+ ], // Australia
55
+ 62: [
56
+ '+xx xxx-xxx-xxx', // 9 digits (landline)
57
+ '+xx xxx-xxx-xxxx', // 10-12 digits (mobile)
58
+ ], // Indonesia
59
+ 63: [
60
+ '+xx xxxx xxxx', // 8 digits (landline)
61
+ '+xx xxxx xxx xxxx', // 11 digits (mobile)
62
+ ], // Philippines
63
+ 64: '+xx xx xxx xxxx', // New Zealand
42
64
  65: '+xx xxxx xxxx', // Singapore
43
- 66: '+xx xx xxx xxxx', // Thailand
44
- 81: '+xx xx xxxx xxxx', // Japan
45
- 82: '+xx xx xxx xxxx', // South Korea
46
- 84: '+xx xxx xxxx xxxx', // Vietnam
47
- 86: '+xx xxx xxxx xxxx', // China
48
- 90: '+xx xxx xxx xxxx', // Turkey
49
- 91: '+xx xx xxxx xxxx', // India
65
+ 66: [
66
+ '+xx xx xxx xxxx', // 9 digits (landline)
67
+ '+xx xxx-xxx-xxxx', // 10 digits (mobile)
68
+ ], // Thailand
69
+ 81: [
70
+ '+xx xx-xxxx-xxxx', // 10 digits (landline)
71
+ '+xx xxx-xxxx-xxxx', // 11 digits (mobile)
72
+ ], // Japan
73
+ 82: '+xx xx-xxxx-xxxx', // South Korea
74
+ 84: [
75
+ '+xx xx xx xxx xx', // 10 digits (standard)
76
+ '+xx xxx xxxx xxxx', // 11 digits (mobile)
77
+ ], // Vietnam
78
+ 86: [
79
+ '+xx xxx xxxx xxxx', // 11 digits (mobile)
80
+ '+xx xxxx xxxx xxxx', // 12 digits (special services)
81
+ ], // China
82
+ 90: '+xx xxx xxx xx xx', // Turkey
83
+ 91: [
84
+ '+xx xxxxx xxxxx', // 10 digits (standard)
85
+ '+xx xxxxx xxxxxx', // 11 digits (with area code)
86
+ ], // India
50
87
  92: '+xx xxx xxx xxxx', // Pakistan
51
88
  93: '+xx xx xxx xxxx', // Afghanistan
52
89
  94: '+xx xx xxx xxxx', // Sri Lanka
53
- 95: '+xx xxx xxx xxxx', // Myanmar
90
+ 95: '+xx xx xxx xxxx', // Myanmar
54
91
  98: '+xx xxx xxx xxxx', // Iran
55
- 211: '+xxx xxx xxxx', // South Sudan
56
- 212: '+xxx xx xx xx xx', // Morocco
57
- 213: '+xxx xx xx xx', // Algeria
58
- 216: '+xxx xx xxx', // Tunisia
59
- 218: '+xxx xx xxx xxx', // Libya
92
+ 211: '+xxx xx xxx xxxx', // South Sudan
93
+ 212: '+xxx xxx xx xx xx', // Morocco
94
+ 213: '+xxx xx xx xx xx', // Algeria
95
+ 216: '+xxx xx xxx xxx', // Tunisia
96
+ 218: '+xxx xx xxx xxxx', // Libya
60
97
  220: '+xxx xxx xxxx', // Gambia
61
- 221: '+xxx xxx xxx xxx', // Senegal
62
- 222: '+xxx xxx xxxx', // Mauritania
63
- 223: '+xxx xxx xxxx', // Mali
98
+ 221: '+xxx xx xxx xx xx', // Senegal
99
+ 222: '+xxx xxxx xxxx', // Mauritania
100
+ 223: '+xxx xxxx xxxx', // Mali
64
101
  224: '+xxx xxx xxx xxx', // Guinea
65
- 225: '+xxx xx xx xx xx', // Ivory Coast
102
+ 225: '+xxx xx xx xx xxxx', // Cรดte d'Ivoire
66
103
  226: '+xxx xx xx xx xx', // Burkina Faso
67
104
  227: '+xxx xx xx xx xx', // Niger
68
- 228: '+xxx xxx xxx xxx', // Togo
105
+ 228: '+xxx xx xxx xxx', // Togo
69
106
  229: '+xxx xx xx xx xx', // Benin
70
107
  230: '+xxx xxxx xxxx', // Mauritius
71
- 231: '+xxx xx xx xx xx', // Liberia
72
- 232: '+xxx xxx xxxx', // Sierra Leone
73
- 233: '+xxx xxx xxxx', // Ghana
74
- 234: '+xxx xxx xxxx xxxx', // Nigeria
108
+ 231: '+xxx xx xxx xxxx', // Liberia
109
+ 232: '+xxx xx xxx xxx', // Sierra Leone
110
+ 233: '+xxx xxx xxx xxxx', // Ghana
111
+ 234: '+xxx xxx xxx xxxx', // Nigeria
75
112
  235: '+xxx xx xx xx xx', // Chad
76
113
  236: '+xxx xx xx xx xx', // Central African Republic
77
- 237: '+xxx xxxx xxxx', // Cameroon
78
- 238: '+xxx xxxx xxxx', // Cape Verde
79
- 239: '+xxx xxxx xxxx', // Sao Tome and Principe
80
- 240: '+xxx xxx xxxx xxxx', // Equatorial Guinea
81
- 241: '+xxx xxx xxxx xxxx', // Gabon
82
- 242: '+xxx xxx xxxx xxxx', // Republic of the Congo
83
- 243: '+xxx xxx xxxx xxxx', // Democratic Republic of the Congo
84
- 244: '+xxx xxx xxxx xxxx', // Angola
85
- 245: '+xxx xxx xxxx xxxx', // Guinea-Bissau
114
+ 237: '+xxx xxx xx xx xx', // Cameroon
115
+ 238: '+xxx xxx xxxx', // Cape Verde
116
+ 239: '+xxx xx xxxxx', // Sรฃo Tomรฉ and Prรญncipe
117
+ 240: '+xxx xxx xxx xxx', // Equatorial Guinea
118
+ 241: '+xxx x xx xx xx', // Gabon
119
+ 242: '+xxx xx xxx xxxx', // Republic of the Congo
120
+ 243: '+xxx xxx xxx xxx', // Democratic Republic of the Congo
121
+ 244: '+xxx xxx xxx xxx', // Angola
122
+ 245: '+xxx xxx xxxx', // Guinea-Bissau
86
123
  246: '+xxx xxx xxxx', // British Indian Ocean Territory
87
- 248: '+xxx xxxx xxxx', // Seychelles
88
- 249: '+xxx xxx xxxx xxxx', // Sudan
89
- 250: '+xxx xxx xxxx xxxx', // Rwanda
90
- 251: '+xxx xxx xxxx xxxx', // Ethiopia
91
- 252: '+xxx xxx xxxx xxxx', // Somalia
92
- 253: '+xxx xxx xxxx xxxx', // Djibouti
93
- 254: '+xxx xxx xxxx xxxx', // Kenya
94
- 255: '+xxx xxx xxxx xxxx', // Tanzania
95
- 256: '+xxx xxx xxxx xxxx', // Uganda
96
- 257: '+xxx xx xx xx xx', // Burundi
97
- 258: '+xxx xxx xxxx xxxx', // Mozambique
98
- 260: '+xxx xxx xxxx xxxx', // Zambia
99
- 261: '+xxx xx xx xx xx', // Madagascar
100
- 263: '+xxx xxx xxxx xxxx', // Zimbabwe
101
- 264: '+xxx xxx xxxx xxxx', // Namibia
102
- 265: '+xxx xxx xxxx xxxx', // Malawi
103
- 266: '+xxx xx xx xx xx', // Lesotho
104
- 267: '+xxx xxx xxxx xxxx', // Botswana
105
- 268: '+xxx xx xx xx xx', // Eswatini
106
- 269: '+xxx xx xx xx xx', // Comoros
107
- 290: '+xxx xxxx xxxx', // Saint Helena
108
- 291: '+xxx xxx xxxx xxxx', // Eritrea
109
- 297: '+xxx xxxx xxxx', // Aruba
124
+ 247: '+xxx xxxxx', // Ascension Island
125
+ 248: '+xxx x xx xx xx', // Seychelles
126
+ 249: '+xxx xx xxx xxxx', // Sudan
127
+ 250: '+xxx xxx xxx xxx', // Rwanda
128
+ 251: '+xxx xx xxx xxxx', // Ethiopia
129
+ 252: '+xxx xx xxx xxx', // Somalia
130
+ 253: '+xxx xx xx xx xx', // Djibouti
131
+ 254: '+xxx xxx xxx xxx', // Kenya
132
+ 255: '+xxx xxx xxx xxx', // Tanzania
133
+ 256: '+xxx xxx xxx xxx', // Uganda
134
+ 257: '+xxx xx xx xxxx', // Burundi
135
+ 258: '+xxx xx xxx xxxx', // Mozambique
136
+ 260: '+xxx xx xxx xxxx', // Zambia
137
+ 261: '+xxx xx xx xxx xx', // Madagascar
138
+ 262: '+xxx xxx xx xx xx', // Rรฉunion, Mayotte
139
+ 263: '+xxx xx xxx xxxx', // Zimbabwe
140
+ 264: '+xxx xx xxx xxxx', // Namibia
141
+ 265: '+xxx xxx xx xx xx', // Malawi
142
+ 266: '+xxx xx xxx xxx', // Lesotho
143
+ 267: '+xxx xx xxx xxx', // Botswana
144
+ 268: '+xxx xxxx xxxx', // Eswatini
145
+ 269: '+xxx xxx xx xx', // Comoros
146
+ 290: '+xxx xxxx', // Saint Helena
147
+ 291: '+xxx x xxx xxx', // Eritrea
148
+ 295: '+xxx xxx xxxx', // San Marino
149
+ 297: '+xxx xxx xxxx', // Aruba
110
150
  298: '+xxx xxx xxx', // Faroe Islands
111
- 299: '+xxx xxx xxx xxx', // Greenland
112
- 350: '+xxx xxx xxxx xxxx', // Gibraltar
113
- 351: '+xxx xxx xxxx xxxx', // Portugal
114
- 352: '+xxx xxx xxxx xxxx', // Luxembourg
115
- 353: '+xxx xxx xxxx xxxx', // Ireland
116
- 354: '+xxx xxx xxxx xxxx', // Iceland
117
- 355: '+xxx xxx xxxx xxxx', // Albania
118
- 356: '+xxx xx xx xx xx', // Malta
119
- 357: '+xxx xxx xxxx xxxx', // Cyprus
120
- 358: '+xxx xxx xxxx xxxx', // Finland
121
- 359: '+xxx xxx xxxx xxxx', // Bulgaria
122
- 370: '+xxx xxx xxxx xxxx', // Lithuania
123
- 371: '+xxx xxx xxxx xxxx', // Latvia
124
- 372: '+xxx xxx xxxx xxxx', // Estonia
125
- 373: '+xxx xxx xxxx xxxx', // Moldova
126
- 374: '+xxx xxx xxxx xxxx', // Armenia
127
- 375: '+xxx xxx xxxx xxxx', // Belarus
128
- 376: '+xxx xxx xxxx xxxx', // Andorra
129
- 377: '+xxx xxx xxxx xxxx', // Monaco
130
- 378: '+xxx xxx xxxx xxxx', // San Marino
131
- 379: '+xxx xxx xxxx xxxx', // Vatican
132
- 380: '+xxx xxx xxxx xxxx', // Ukraine
133
- 381: '+xxx xxx xxxx xxxx', // Serbia
134
- 382: '+xxx xxx xxxx xxxx', // Montenegro
135
- 383: '+xxx xxx xxxx xxxx', // Kosovo
136
- 385: '+xxx xxx xxxx xxxx', // Croatia
137
- 386: '+xxx xxx xxxx xxxx', // Slovenia
138
- 387: '+xxx xxx xxxx xxxx', // Bosnia and Herzegovina
139
- 389: '+xxx xxx xxxx xxxx', // North Macedonia
140
- 420: '+xxx xxx xxxx xxxx', // Czech Republic
141
- 421: '+xxx xxx xxxx xxxx', // Slovakia
142
- 423: '+xxx xxxx xxxx xxxx', // Liechtenstein
143
- 500: '+xxx xxxx xxxx', // Falkland Islands
144
- 501: '+xxx xxxx xxxx', // Belize
145
- 502: '+xxx xxxx xxxx', // Guatemala
151
+ 299: '+xxx xx xx xx', // Greenland
152
+ 350: '+xxx xxxx xxxx', // Gibraltar
153
+ 351: '+xxx xxx xxx xxx', // Portugal
154
+ 352: '+xxx xxx xxx xxx', // Luxembourg
155
+ 353: [
156
+ '+xxx xxx xxx xxxx', // 10 digits (standard)
157
+ '+xxx xxx xxx xxxxx', // 11 digits (some services)
158
+ ], // Ireland
159
+ 354: '+xxx xxx xxxx', // Iceland
160
+ 355: '+xxx xx xxx xxxx', // Albania
161
+ 356: '+xxx xxxx xxxx', // Malta
162
+ 357: '+xxx xx xxxxxx', // Cyprus
163
+ 358: ['+xxx xxx xxx xxxx', '+xxx xx xxx xxxx'], // Finland
164
+ 359: '+xxx xxx xxx xxx', // Bulgaria
165
+ 370: '+xxx xxx xxxxx', // Lithuania
166
+ 371: '+xxx xxxx xxxx', // Latvia
167
+ 372: ['+xxx xxxx xxxx', '+xxx xxx xxxx'], // Estonia
168
+ 373: '+xxx xxx xx xxx', // Moldova
169
+ 374: '+xxx xx xxx xxx', // Armenia
170
+ 375: '+xxx xx xxx-xx-xx', // Belarus
171
+ 376: '+xxx xxx xxx', // Andorra
172
+ 377: '+xxx xxxx xxx xxx', // Monaco
173
+ 378: '+xxx xxx xx xx xx', // San Marino
174
+ 379: '+xxx xx xxxxxx', // Vatican City
175
+ 380: '+xxx xxx xxx xxxx', // Ukraine
176
+ 381: '+xxx xx xxx xxxx', // Serbia
177
+ 382: '+xxx xx xxx xxx', // Montenegro
178
+ 383: '+xxx xx xxx xxx', // Kosovo
179
+ 385: '+xxx xx xxx xxxx', // Croatia
180
+ 386: '+xxx xx xxx xxx', // Slovenia
181
+ 387: '+xxx xx xxx xxx', // Bosnia and Herzegovina
182
+ 389: '+xxx xx xxx xxx', // North Macedonia
183
+ 420: '+xxx xxx xxx xxx', // Czech Republic
184
+ 421: '+xxx xxx xxx xxx', // Slovakia
185
+ 423: '+xxx xxx xxx xx xx', // Liechtenstein
186
+ 473: '+x xxx xxx xxxx', // Grenada
187
+ 500: '+xxx xxxxx', // Falkland Islands
188
+ 501: '+xxx xxx-xxxx', // Belize
189
+ 502: '+xxx x xxx xxxx', // Guatemala
146
190
  503: '+xxx xxxx xxxx', // El Salvador
147
- 504: '+xxx xxxx xxxx', // Honduras
191
+ 504: '+xxx xxxx-xxxx', // Honduras
148
192
  505: '+xxx xxxx xxxx', // Nicaragua
149
193
  506: '+xxx xxxx xxxx', // Costa Rica
150
- 507: '+xxx xxxx xxxx', // Panama
151
- 508: '+xxx xxxx xxxx', // Saint Pierre and Miquelon
194
+ 507: '+xxx xxxx-xxxx', // Panama
195
+ 508: '+xxx xx xx xx', // Saint Pierre and Miquelon
152
196
  509: '+xxx xxxx xxxx', // Haiti
153
- 590: '+xxx xxxx xxxx', // Saint Martin
154
- 591: '+xxx xxx xxxx xxxx', // Bolivia
155
- 592: '+xxx xxxx xxxx', // Guyana
156
- 593: '+xxx xxx xxxx xxxx', // Ecuador
157
- 594: '+xxx xxxx xxxx', // French Guiana
158
- 595: '+xxx xxx xxxx xxxx', // Paraguay
159
- 596: '+xxx xxxx xxxx', // Martinique
160
- 597: '+xxx xxxx xxxx', // Suriname
161
- 598: '+xxx xxx xxxx xxxx', // Uruguay
162
- 599: '+xxx xxxx xxxx xxxx', // Curaรงao
163
- 670: '+xxx xxxx xxxx', // East Timor
164
- 672: '+xxx xxxx xxxx', // Antarctica
165
- 673: '+xxx xxxx xxxx', // Brunei
166
- 674: '+xxx xxxx xxxx', // Nauru
167
- 675: '+xxx xxxx xxxx xxxx', // Papua New Guinea
168
- 676: '+xxx xxxx xxxx xxxx', // Tonga
169
- 677: '+xxx xxxx xxxx xxxx', // Solomon Islands
170
- 678: '+xxx xxxx xxxx xxxx', // Vanuatu
171
- 679: '+xxx xxxx xxxx xxxx', // Fiji
172
- 680: '+xxx xxxx xxxx xxxx', // Palau
173
- 681: '+xxx xxxx xxxx xxxx', // Wallis and Futuna
174
- 682: '+xxx xxxx xxxx xxxx', // Cook Islands
175
- 683: '+xxx xxxx xxxx xxxx', // Niue
176
- 685: '+xxx xxxx xxxx xxxx', // Samoa
177
- 686: '+xxx xxxx xxxx xxxx', // Kiribati
178
- 687: '+xxx xxxx xxxx xxxx', // New Caledonia
179
- 688: '+xxx xxxx xxxx xxxx', // Tuvalu
180
- 689: '+xxx xxxx xxxx xxxx', // French Polynesia
181
- 690: '+xxx xxxx xxxx xxxx', // Tokelau
182
- 691: '+xxx xxxx xxxx xxxx', // Micronesia
183
- 692: '+xxx xxxx xxxx xxxx', // Marshall Islands
184
- 850: '+xxx xxxx xxxx xxxx', // North Korea
185
- 852: '+xxx xxxx xxxx xxxx', // Hong Kong
186
- 853: '+xxx xxxx xxxx xxxx', // Macau
187
- 855: '+xxx xxx xxxx xxxx', // Cambodia
188
- 856: '+xxx xxxx xxxx xxxx', // Laos
189
- 880: '+xxx xxx xxxx xxxx', // Bangladesh
190
- 886: '+xxx xxxx xxxx xxxx', // Taiwan
191
- 960: '+xxx xxx xxxx xxxx', // Maldives
192
- 961: '+xxx xxx xxxx xxxx', // Lebanon
193
- 962: '+xxx xxxx xxxx xxxx', // Jordan
194
- 963: '+xxx xxxx xxxx xxxx', // Syria
195
- 964: '+xxx xxxx xxxx xxxx', // Iraq
196
- 965: '+xxx xxxx xxxx xxxx', // Kuwait
197
- 966: '+xxx xxxx xxxx xxxx', // Saudi Arabia
198
- 967: '+xxx xxxx xxxx xxxx', // Yemen
199
- 968: '+xxx xxxx xxxx xxxx', // Oman
200
- 970: '+xxx xxx xxxx xxxx', // Palestine
201
- 971: '+xxx xxx xxxx xxxx', // United Arab Emirates
202
- 972: '+xxx xxxx xxxx xxxx', // Israel
203
- 973: '+xxx xxxx xxxx xxxx', // Bahrain
204
- 974: '+xxx xxxx xxxx xxxx', // Qatar
205
- 975: '+xxx xxxx xxxx xxxx', // Bhutan
206
- 976: '+xxx xxx xxxx xxxx', // Mongolia
207
- 977: '+xxx xxxx xxxx xxxx', // Nepal
208
- 992: '+xxx xxxx xxxx xxxx', // Tajikistan
209
- 993: '+xxx xxx xxxx xxxx', // Turkmenistan
210
- 994: '+xxx xxx xxxx xxxx', // Azerbaijan
211
- 995: '+xxx xxxx xxxx xxxx', // Georgia
212
- 996: '+xxx xxxx xxxx xxxx', // Kyrgyzstan
213
- 998: '+xxx xxxx xxxx xxxx', // Uzbekistan
197
+ 590: '+xxx (xxx) xxx-xxxx', // Guadeloupe, Saint Barthรฉlemy, Saint Martin
198
+ 591: '+xxx x xxx xxxx', // Bolivia
199
+ 592: '+xxx xxx xxxx', // Guyana
200
+ 593: '+xxx xx xxx xxxx', // Ecuador
201
+ 594: '+xxx xxxx xx xx xx', // French Guiana
202
+ 595: '+xxx xxx xxx xxx', // Paraguay
203
+ 596: '+xxx (xxx) xxx-xxxx', // Martinique
204
+ 597: '+xxx xxx-xxxx', // Suriname
205
+ 598: '+xxx x xxx xx xx', // Uruguay
206
+ 599: [
207
+ '+xxx x xxx xxxx', // Netherlands Antilles format 1
208
+ '+xxx xxx xxxx', // Netherlands Antilles format 2
209
+ ],
210
+ 670: '+xxx xxxx xxxx', // Timor-Leste
211
+ 672: [
212
+ '+xxx xxxxx', // Norfolk Island
213
+ '+xxx xx xxxx', // Australian External Territories
214
+ ],
215
+ 673: '+xxx xxx xxxx', // Brunei
216
+ 674: '+xxx xxx xxxx', // Nauru
217
+ 675: '+xxx xxx xxxx', // Papua New Guinea
218
+ 676: '+xxx xxxxx', // Tonga
219
+ 677: '+xxx xxxxxxx', // Solomon Islands
220
+ 678: '+xxx xx xxxxx', // Vanuatu
221
+ 679: '+xxx xxx xxxx', // Fiji
222
+ 680: '+xxx xxx xxxx', // Palau
223
+ 681: '+xxx xx xx xx', // Wallis and Futuna
224
+ 682: '+xxx xx xxx', // Cook Islands
225
+ 683: '+xxx xxxx', // Niue
226
+ 685: '+xxx xxxxx', // Samoa
227
+ 686: '+xxx xxxxx', // Kiribati
228
+ 687: '+xxx xx.xx.xx', // New Caledonia
229
+ 688: '+xxx xxxxx', // Tuvalu
230
+ 689: '+xxx xx xx xx', // French Polynesia
231
+ 690: '+xxx xxxx', // Tokelau
232
+ 691: '+xxx xxx xxxx', // Micronesia
233
+ 692: '+xxx xxx xxxx', // Marshall Islands
234
+ 850: '+xxx xx xxx xxxx', // North Korea
235
+ 852: '+xxx xxxx xxxx', // Hong Kong
236
+ 853: '+xxx xxxx xxxx', // Macau
237
+ 855: '+xxx xx xxx xxx', // Cambodia
238
+ 856: '+xxx xx xx xxx xxx', // Laos
239
+ 880: '+xxx xxxx-xxxxxx', // Bangladesh
240
+ 886: '+xxx xxxx-xxx-xxx', // Taiwan
241
+ 960: '+xxx xxx-xxxx', // Maldives
242
+ 961: '+xxx xx xxx xxx', // Lebanon
243
+ 962: '+xxx x xxxx xxxx', // Jordan
244
+ 963: '+xxx xx xxxx xxx', // Syria
245
+ 964: '+xxx xxxx xxx xxxx', // Iraq
246
+ 965: '+xxx xxxx xxxx', // Kuwait
247
+ 966: '+xxx xx xxx xxxx', // Saudi Arabia
248
+ 967: '+xxx xxx xxx xxx', // Yemen
249
+ 968: '+xxx xxxx xxxx', // Oman
250
+ 970: '+xxx xxx xx xxxx', // Palestine
251
+ 971: '+xxx xx xxx xxxx', // United Arab Emirates
252
+ 972: [
253
+ '+xxx xx-xxx-xxxx', // 9 digits (standard)
254
+ '+xxx xxx-xxx-xxxx', // 10 digits (mobile)
255
+ ], // Israel
256
+ 973: '+xxx xxxx xxxx', // Bahrain
257
+ 974: '+xxx xxxx xxxx', // Qatar
258
+ 975: '+xxx x xxx xxxx', // Bhutan
259
+ 976: '+xxx xxxx xxxx', // Mongolia
260
+ 977: '+xxx xxx-xxxxxxx', // Nepal
261
+ 992: ['+xxx xxx xx xxxx', '+xxx xxx xxx xxxx'], // Tajikistan
262
+ 993: '+xxx xx xxxxxx', // Turkmenistan
263
+ 994: '+xxx xx xxx xx xx', // Azerbaijan
264
+ 995: '+xxx xxx xxx xxx', // Georgia
265
+ 996: '+xxx xxx xxx xxx', // Kyrgyzstan
266
+ 998: ['+xxx xx xxx xx xx', '+xxx xx xxxxxxx'], // Uzbekistan
214
267
  };