next-helios-fe 1.8.12 → 1.8.14
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.
@@ -1,1489 +1,1484 @@
|
|
1
1
|
"use client";
|
2
2
|
import React, { useState, useEffect, useRef } from "react";
|
3
|
-
import {
|
3
|
+
import { Dropdown } from "../../../components";
|
4
4
|
import { Icon } from "@iconify/react";
|
5
5
|
|
6
|
-
|
7
|
-
extends React.InputHTMLAttributes<HTMLInputElement> {
|
8
|
-
label?: string;
|
9
|
-
description?: string;
|
10
|
-
options?: {
|
11
|
-
width?: "full" | "fit";
|
12
|
-
height?: "short" | "medium" | "high";
|
13
|
-
};
|
14
|
-
getPhoneNumber?: (value: string) => void;
|
15
|
-
}
|
16
|
-
|
17
|
-
const countryCodes = [
|
6
|
+
const countryPhoneCode = [
|
18
7
|
{
|
19
8
|
name: "Afghanistan",
|
20
|
-
dial_code: "
|
9
|
+
dial_code: "93",
|
21
10
|
emoji: "🇦🇫",
|
22
11
|
code: "AF",
|
23
12
|
},
|
24
13
|
{
|
25
14
|
name: "Aland Islands",
|
26
|
-
dial_code: "
|
15
|
+
dial_code: "358",
|
27
16
|
emoji: "🇦🇽",
|
28
17
|
code: "AX",
|
29
18
|
},
|
30
19
|
{
|
31
20
|
name: "Albania",
|
32
|
-
dial_code: "
|
21
|
+
dial_code: "355",
|
33
22
|
emoji: "🇦🇱",
|
34
23
|
code: "AL",
|
35
24
|
},
|
36
25
|
{
|
37
26
|
name: "Algeria",
|
38
|
-
dial_code: "
|
27
|
+
dial_code: "213",
|
39
28
|
emoji: "🇩🇿",
|
40
29
|
code: "DZ",
|
41
30
|
},
|
42
31
|
{
|
43
32
|
name: "AmericanSamoa",
|
44
|
-
dial_code: "
|
33
|
+
dial_code: "1684",
|
45
34
|
emoji: "🇦🇸",
|
46
35
|
code: "AS",
|
47
36
|
},
|
48
37
|
{
|
49
38
|
name: "Andorra",
|
50
|
-
dial_code: "
|
39
|
+
dial_code: "376",
|
51
40
|
emoji: "🇦🇩",
|
52
41
|
code: "AD",
|
53
42
|
},
|
54
43
|
{
|
55
44
|
name: "Angola",
|
56
|
-
dial_code: "
|
45
|
+
dial_code: "244",
|
57
46
|
emoji: "🇦🇴",
|
58
47
|
code: "AO",
|
59
48
|
},
|
60
49
|
{
|
61
50
|
name: "Anguilla",
|
62
|
-
dial_code: "
|
51
|
+
dial_code: "1264",
|
63
52
|
emoji: "🇦🇮",
|
64
53
|
code: "AI",
|
65
54
|
},
|
66
55
|
{
|
67
56
|
name: "Antarctica",
|
68
|
-
dial_code: "
|
57
|
+
dial_code: "672",
|
69
58
|
emoji: "🇦🇶",
|
70
59
|
code: "AQ",
|
71
60
|
},
|
72
61
|
{
|
73
62
|
name: "Antigua and Barbuda",
|
74
|
-
dial_code: "
|
63
|
+
dial_code: "1268",
|
75
64
|
emoji: "🇦🇬",
|
76
65
|
code: "AG",
|
77
66
|
},
|
78
67
|
{
|
79
68
|
name: "Argentina",
|
80
|
-
dial_code: "
|
69
|
+
dial_code: "54",
|
81
70
|
emoji: "🇦🇷",
|
82
71
|
code: "AR",
|
83
72
|
},
|
84
73
|
{
|
85
74
|
name: "Armenia",
|
86
|
-
dial_code: "
|
75
|
+
dial_code: "374",
|
87
76
|
emoji: "🇦🇲",
|
88
77
|
code: "AM",
|
89
78
|
},
|
90
79
|
{
|
91
80
|
name: "Aruba",
|
92
|
-
dial_code: "
|
81
|
+
dial_code: "297",
|
93
82
|
emoji: "🇦🇼",
|
94
83
|
code: "AW",
|
95
84
|
},
|
96
85
|
{
|
97
86
|
name: "Australia",
|
98
|
-
dial_code: "
|
87
|
+
dial_code: "61",
|
99
88
|
emoji: "🇦🇺",
|
100
89
|
code: "AU",
|
101
90
|
},
|
102
91
|
{
|
103
92
|
name: "Austria",
|
104
|
-
dial_code: "
|
93
|
+
dial_code: "43",
|
105
94
|
emoji: "🇦🇹",
|
106
95
|
code: "AT",
|
107
96
|
},
|
108
97
|
{
|
109
98
|
name: "Azerbaijan",
|
110
|
-
dial_code: "
|
99
|
+
dial_code: "994",
|
111
100
|
emoji: "🇦🇿",
|
112
101
|
code: "AZ",
|
113
102
|
},
|
114
103
|
{
|
115
104
|
name: "Bahamas",
|
116
|
-
dial_code: "
|
105
|
+
dial_code: "1242",
|
117
106
|
emoji: "🇧🇸",
|
118
107
|
code: "BS",
|
119
108
|
},
|
120
109
|
{
|
121
110
|
name: "Bahrain",
|
122
|
-
dial_code: "
|
111
|
+
dial_code: "973",
|
123
112
|
emoji: "🇧🇭",
|
124
113
|
code: "BH",
|
125
114
|
},
|
126
115
|
{
|
127
116
|
name: "Bangladesh",
|
128
|
-
dial_code: "
|
117
|
+
dial_code: "880",
|
129
118
|
emoji: "🇧🇩",
|
130
119
|
code: "BD",
|
131
120
|
},
|
132
121
|
{
|
133
122
|
name: "Barbados",
|
134
|
-
dial_code: "
|
123
|
+
dial_code: "1246",
|
135
124
|
emoji: "🇧🇧",
|
136
125
|
code: "BB",
|
137
126
|
},
|
138
127
|
{
|
139
128
|
name: "Belarus",
|
140
|
-
dial_code: "
|
129
|
+
dial_code: "375",
|
141
130
|
emoji: "🇧🇾",
|
142
131
|
code: "BY",
|
143
132
|
},
|
144
133
|
{
|
145
134
|
name: "Belgium",
|
146
|
-
dial_code: "
|
135
|
+
dial_code: "32",
|
147
136
|
emoji: "🇧🇪",
|
148
137
|
code: "BE",
|
149
138
|
},
|
150
139
|
{
|
151
140
|
name: "Belize",
|
152
|
-
dial_code: "
|
141
|
+
dial_code: "501",
|
153
142
|
emoji: "🇧🇿",
|
154
143
|
code: "BZ",
|
155
144
|
},
|
156
145
|
{
|
157
146
|
name: "Benin",
|
158
|
-
dial_code: "
|
147
|
+
dial_code: "229",
|
159
148
|
emoji: "🇧🇯",
|
160
149
|
code: "BJ",
|
161
150
|
},
|
162
151
|
{
|
163
152
|
name: "Bermuda",
|
164
|
-
dial_code: "
|
153
|
+
dial_code: "1441",
|
165
154
|
emoji: "🇧🇲",
|
166
155
|
code: "BM",
|
167
156
|
},
|
168
157
|
{
|
169
158
|
name: "Bhutan",
|
170
|
-
dial_code: "
|
159
|
+
dial_code: "975",
|
171
160
|
emoji: "🇧🇹",
|
172
161
|
code: "BT",
|
173
162
|
},
|
174
163
|
{
|
175
164
|
name: "Bolivia, Plurinational State of",
|
176
|
-
dial_code: "
|
165
|
+
dial_code: "591",
|
177
166
|
emoji: "🇧🇴",
|
178
167
|
code: "BO",
|
179
168
|
},
|
180
169
|
{
|
181
170
|
name: "Bosnia and Herzegovina",
|
182
|
-
dial_code: "
|
171
|
+
dial_code: "387",
|
183
172
|
emoji: "🇧🇦",
|
184
173
|
code: "BA",
|
185
174
|
},
|
186
175
|
{
|
187
176
|
name: "Botswana",
|
188
|
-
dial_code: "
|
177
|
+
dial_code: "267",
|
189
178
|
emoji: "🇧🇼",
|
190
179
|
code: "BW",
|
191
180
|
},
|
192
181
|
{
|
193
182
|
name: "Brazil",
|
194
|
-
dial_code: "
|
183
|
+
dial_code: "55",
|
195
184
|
emoji: "🇧🇷",
|
196
185
|
code: "BR",
|
197
186
|
},
|
198
187
|
{
|
199
188
|
name: "British Indian Ocean Territory",
|
200
|
-
dial_code: "
|
189
|
+
dial_code: "246",
|
201
190
|
emoji: "🇮🇴",
|
202
191
|
code: "IO",
|
203
192
|
},
|
204
193
|
{
|
205
194
|
name: "Brunei Darussalam",
|
206
|
-
dial_code: "
|
195
|
+
dial_code: "673",
|
207
196
|
emoji: "🇧🇳",
|
208
197
|
code: "BN",
|
209
198
|
},
|
210
199
|
{
|
211
200
|
name: "Bulgaria",
|
212
|
-
dial_code: "
|
201
|
+
dial_code: "359",
|
213
202
|
emoji: "🇧🇬",
|
214
203
|
code: "BG",
|
215
204
|
},
|
216
205
|
{
|
217
206
|
name: "Burkina Faso",
|
218
|
-
dial_code: "
|
207
|
+
dial_code: "226",
|
219
208
|
emoji: "🇧🇫",
|
220
209
|
code: "BF",
|
221
210
|
},
|
222
211
|
{
|
223
212
|
name: "Burundi",
|
224
|
-
dial_code: "
|
213
|
+
dial_code: "257",
|
225
214
|
emoji: "🇧🇮",
|
226
215
|
code: "BI",
|
227
216
|
},
|
228
217
|
{
|
229
218
|
name: "Cambodia",
|
230
|
-
dial_code: "
|
219
|
+
dial_code: "855",
|
231
220
|
emoji: "🇰🇭",
|
232
221
|
code: "KH",
|
233
222
|
},
|
234
223
|
{
|
235
224
|
name: "Cameroon",
|
236
|
-
dial_code: "
|
225
|
+
dial_code: "237",
|
237
226
|
emoji: "🇨🇲",
|
238
227
|
code: "CM",
|
239
228
|
},
|
240
229
|
{
|
241
230
|
name: "Canada",
|
242
|
-
dial_code: "
|
231
|
+
dial_code: "1",
|
243
232
|
emoji: "🇨🇦",
|
244
233
|
code: "CA",
|
245
234
|
},
|
246
235
|
{
|
247
236
|
name: "Cape Verde",
|
248
|
-
dial_code: "
|
237
|
+
dial_code: "238",
|
249
238
|
emoji: "🇨🇻",
|
250
239
|
code: "CV",
|
251
240
|
},
|
252
241
|
{
|
253
242
|
name: "Cayman Islands",
|
254
|
-
dial_code: "
|
243
|
+
dial_code: "345",
|
255
244
|
emoji: "🇰🇾",
|
256
245
|
code: "KY",
|
257
246
|
},
|
258
247
|
{
|
259
248
|
name: "Central African Republic",
|
260
|
-
dial_code: "
|
249
|
+
dial_code: "236",
|
261
250
|
emoji: "🇨🇫",
|
262
251
|
code: "CF",
|
263
252
|
},
|
264
253
|
{
|
265
254
|
name: "Chad",
|
266
|
-
dial_code: "
|
255
|
+
dial_code: "235",
|
267
256
|
emoji: "🇹🇩",
|
268
257
|
code: "TD",
|
269
258
|
},
|
270
259
|
{
|
271
260
|
name: "Chile",
|
272
|
-
dial_code: "
|
261
|
+
dial_code: "56",
|
273
262
|
emoji: "🇨🇱",
|
274
263
|
code: "CL",
|
275
264
|
},
|
276
265
|
{
|
277
266
|
name: "China",
|
278
|
-
dial_code: "
|
267
|
+
dial_code: "86",
|
279
268
|
emoji: "🇨🇳",
|
280
269
|
code: "CN",
|
281
270
|
},
|
282
271
|
{
|
283
272
|
name: "Christmas Island",
|
284
|
-
dial_code: "
|
273
|
+
dial_code: "61",
|
285
274
|
emoji: "🇨🇽",
|
286
275
|
code: "CX",
|
287
276
|
},
|
288
277
|
{
|
289
278
|
name: "Cocos (Keeling) Islands",
|
290
|
-
dial_code: "
|
279
|
+
dial_code: "61",
|
291
280
|
emoji: "🇨🇨",
|
292
281
|
code: "CC",
|
293
282
|
},
|
294
283
|
{
|
295
284
|
name: "Colombia",
|
296
|
-
dial_code: "
|
285
|
+
dial_code: "57",
|
297
286
|
emoji: "🇨🇴",
|
298
287
|
code: "CO",
|
299
288
|
},
|
300
289
|
{
|
301
290
|
name: "Comoros",
|
302
|
-
dial_code: "
|
291
|
+
dial_code: "269",
|
303
292
|
emoji: "🇰🇲",
|
304
293
|
code: "KM",
|
305
294
|
},
|
306
295
|
{
|
307
296
|
name: "Congo",
|
308
|
-
dial_code: "
|
297
|
+
dial_code: "242",
|
309
298
|
emoji: "🇨🇬",
|
310
299
|
code: "CG",
|
311
300
|
},
|
312
301
|
{
|
313
302
|
name: "Congo, The Democratic Republic of the Congo",
|
314
|
-
dial_code: "
|
303
|
+
dial_code: "243",
|
315
304
|
emoji: "🇨🇩",
|
316
305
|
code: "CD",
|
317
306
|
},
|
318
307
|
{
|
319
308
|
name: "Cook Islands",
|
320
|
-
dial_code: "
|
309
|
+
dial_code: "682",
|
321
310
|
emoji: "🇨🇰",
|
322
311
|
code: "CK",
|
323
312
|
},
|
324
313
|
{
|
325
314
|
name: "Costa Rica",
|
326
|
-
dial_code: "
|
315
|
+
dial_code: "506",
|
327
316
|
emoji: "🇨🇷",
|
328
317
|
code: "CR",
|
329
318
|
},
|
330
319
|
{
|
331
320
|
name: "Cote d'Ivoire",
|
332
|
-
dial_code: "
|
321
|
+
dial_code: "225",
|
333
322
|
emoji: "🇨🇮",
|
334
323
|
code: "CI",
|
335
324
|
},
|
336
325
|
{
|
337
326
|
name: "Croatia",
|
338
|
-
dial_code: "
|
327
|
+
dial_code: "385",
|
339
328
|
emoji: "🇭🇷",
|
340
329
|
code: "HR",
|
341
330
|
},
|
342
331
|
{
|
343
332
|
name: "Cuba",
|
344
|
-
dial_code: "
|
333
|
+
dial_code: "53",
|
345
334
|
emoji: "🇨🇺",
|
346
335
|
code: "CU",
|
347
336
|
},
|
348
337
|
{
|
349
338
|
name: "Cyprus",
|
350
|
-
dial_code: "
|
339
|
+
dial_code: "357",
|
351
340
|
emoji: "🇨🇾",
|
352
341
|
code: "CY",
|
353
342
|
},
|
354
343
|
{
|
355
344
|
name: "Czech Republic",
|
356
|
-
dial_code: "
|
345
|
+
dial_code: "420",
|
357
346
|
emoji: "🇨🇿",
|
358
347
|
code: "CZ",
|
359
348
|
},
|
360
349
|
{
|
361
350
|
name: "Denmark",
|
362
|
-
dial_code: "
|
351
|
+
dial_code: "45",
|
363
352
|
emoji: "🇩🇰",
|
364
353
|
code: "DK",
|
365
354
|
},
|
366
355
|
{
|
367
356
|
name: "Djibouti",
|
368
|
-
dial_code: "
|
357
|
+
dial_code: "253",
|
369
358
|
emoji: "🇩🇯",
|
370
359
|
code: "DJ",
|
371
360
|
},
|
372
361
|
{
|
373
362
|
name: "Dominica",
|
374
|
-
dial_code: "
|
363
|
+
dial_code: "1767",
|
375
364
|
emoji: "🇩🇲",
|
376
365
|
code: "DM",
|
377
366
|
},
|
378
367
|
{
|
379
368
|
name: "Dominican Republic",
|
380
|
-
dial_code: "
|
369
|
+
dial_code: "1849",
|
381
370
|
emoji: "🇩🇴",
|
382
371
|
code: "DO",
|
383
372
|
},
|
384
373
|
{
|
385
374
|
name: "Ecuador",
|
386
|
-
dial_code: "
|
375
|
+
dial_code: "593",
|
387
376
|
emoji: "🇪🇨",
|
388
377
|
code: "EC",
|
389
378
|
},
|
390
379
|
{
|
391
380
|
name: "Egypt",
|
392
|
-
dial_code: "
|
381
|
+
dial_code: "20",
|
393
382
|
emoji: "🇪🇬",
|
394
383
|
code: "EG",
|
395
384
|
},
|
396
385
|
{
|
397
386
|
name: "El Salvador",
|
398
|
-
dial_code: "
|
387
|
+
dial_code: "503",
|
399
388
|
emoji: "🇸🇻",
|
400
389
|
code: "SV",
|
401
390
|
},
|
402
391
|
{
|
403
392
|
name: "Equatorial Guinea",
|
404
|
-
dial_code: "
|
393
|
+
dial_code: "240",
|
405
394
|
emoji: "🇬🇶",
|
406
395
|
code: "GQ",
|
407
396
|
},
|
408
397
|
{
|
409
398
|
name: "Eritrea",
|
410
|
-
dial_code: "
|
399
|
+
dial_code: "291",
|
411
400
|
emoji: "🇪🇷",
|
412
401
|
code: "ER",
|
413
402
|
},
|
414
403
|
{
|
415
404
|
name: "Estonia",
|
416
|
-
dial_code: "
|
405
|
+
dial_code: "372",
|
417
406
|
emoji: "🇪🇪",
|
418
407
|
code: "EE",
|
419
408
|
},
|
420
409
|
{
|
421
410
|
name: "Ethiopia",
|
422
|
-
dial_code: "
|
411
|
+
dial_code: "251",
|
423
412
|
emoji: "🇪🇹",
|
424
413
|
code: "ET",
|
425
414
|
},
|
426
415
|
{
|
427
416
|
name: "Falkland Islands (Malvinas)",
|
428
|
-
dial_code: "
|
417
|
+
dial_code: "500",
|
429
418
|
emoji: "🇫🇰",
|
430
419
|
code: "FK",
|
431
420
|
},
|
432
421
|
{
|
433
422
|
name: "Faroe Islands",
|
434
|
-
dial_code: "
|
423
|
+
dial_code: "298",
|
435
424
|
emoji: "🇫🇴",
|
436
425
|
code: "FO",
|
437
426
|
},
|
438
427
|
{
|
439
428
|
name: "Fiji",
|
440
|
-
dial_code: "
|
429
|
+
dial_code: "679",
|
441
430
|
emoji: "🇫🇯",
|
442
431
|
code: "FJ",
|
443
432
|
},
|
444
433
|
{
|
445
434
|
name: "Finland",
|
446
|
-
dial_code: "
|
435
|
+
dial_code: "358",
|
447
436
|
emoji: "🇫🇮",
|
448
437
|
code: "FI",
|
449
438
|
},
|
450
439
|
{
|
451
440
|
name: "France",
|
452
|
-
dial_code: "
|
441
|
+
dial_code: "33",
|
453
442
|
emoji: "🇫🇷",
|
454
443
|
code: "FR",
|
455
444
|
},
|
456
445
|
{
|
457
446
|
name: "French Guiana",
|
458
|
-
dial_code: "
|
447
|
+
dial_code: "594",
|
459
448
|
emoji: "🇬🇫",
|
460
449
|
code: "GF",
|
461
450
|
},
|
462
451
|
{
|
463
452
|
name: "French Polynesia",
|
464
|
-
dial_code: "
|
453
|
+
dial_code: "689",
|
465
454
|
emoji: "🇵🇫",
|
466
455
|
code: "PF",
|
467
456
|
},
|
468
457
|
{
|
469
458
|
name: "Gabon",
|
470
|
-
dial_code: "
|
459
|
+
dial_code: "241",
|
471
460
|
emoji: "🇬🇦",
|
472
461
|
code: "GA",
|
473
462
|
},
|
474
463
|
{
|
475
464
|
name: "Gambia",
|
476
|
-
dial_code: "
|
465
|
+
dial_code: "220",
|
477
466
|
emoji: "🇬🇲",
|
478
467
|
code: "GM",
|
479
468
|
},
|
480
469
|
{
|
481
470
|
name: "Georgia",
|
482
|
-
dial_code: "
|
471
|
+
dial_code: "995",
|
483
472
|
emoji: "🇬🇪",
|
484
473
|
code: "GE",
|
485
474
|
},
|
486
475
|
{
|
487
476
|
name: "Germany",
|
488
|
-
dial_code: "
|
477
|
+
dial_code: "49",
|
489
478
|
emoji: "🇩🇪",
|
490
479
|
code: "DE",
|
491
480
|
},
|
492
481
|
{
|
493
482
|
name: "Ghana",
|
494
|
-
dial_code: "
|
483
|
+
dial_code: "233",
|
495
484
|
emoji: "🇬🇭",
|
496
485
|
code: "GH",
|
497
486
|
},
|
498
487
|
{
|
499
488
|
name: "Gibraltar",
|
500
|
-
dial_code: "
|
489
|
+
dial_code: "350",
|
501
490
|
emoji: "🇬🇮",
|
502
491
|
code: "GI",
|
503
492
|
},
|
504
493
|
{
|
505
494
|
name: "Greece",
|
506
|
-
dial_code: "
|
495
|
+
dial_code: "30",
|
507
496
|
emoji: "🇬🇷",
|
508
497
|
code: "GR",
|
509
498
|
},
|
510
499
|
{
|
511
500
|
name: "Greenland",
|
512
|
-
dial_code: "
|
501
|
+
dial_code: "299",
|
513
502
|
emoji: "🇬🇱",
|
514
503
|
code: "GL",
|
515
504
|
},
|
516
505
|
{
|
517
506
|
name: "Grenada",
|
518
|
-
dial_code: "
|
507
|
+
dial_code: "1473",
|
519
508
|
emoji: "🇬🇩",
|
520
509
|
code: "GD",
|
521
510
|
},
|
522
511
|
{
|
523
512
|
name: "Guadeloupe",
|
524
|
-
dial_code: "
|
513
|
+
dial_code: "590",
|
525
514
|
emoji: "🇬🇵",
|
526
515
|
code: "GP",
|
527
516
|
},
|
528
517
|
{
|
529
518
|
name: "Guam",
|
530
|
-
dial_code: "
|
519
|
+
dial_code: "1671",
|
531
520
|
emoji: "🇬🇺",
|
532
521
|
code: "GU",
|
533
522
|
},
|
534
523
|
{
|
535
524
|
name: "Guatemala",
|
536
|
-
dial_code: "
|
525
|
+
dial_code: "502",
|
537
526
|
emoji: "🇬🇹",
|
538
527
|
code: "GT",
|
539
528
|
},
|
540
529
|
{
|
541
530
|
name: "Guernsey",
|
542
|
-
dial_code: "
|
531
|
+
dial_code: "44",
|
543
532
|
emoji: "🇬🇬",
|
544
533
|
code: "GG",
|
545
534
|
},
|
546
535
|
{
|
547
536
|
name: "Guinea",
|
548
|
-
dial_code: "
|
537
|
+
dial_code: "224",
|
549
538
|
emoji: "🇬🇳",
|
550
539
|
code: "GN",
|
551
540
|
},
|
552
541
|
{
|
553
542
|
name: "Guinea-Bissau",
|
554
|
-
dial_code: "
|
543
|
+
dial_code: "245",
|
555
544
|
emoji: "🇬🇼",
|
556
545
|
code: "GW",
|
557
546
|
},
|
558
547
|
{
|
559
548
|
name: "Guyana",
|
560
|
-
dial_code: "
|
549
|
+
dial_code: "595",
|
561
550
|
emoji: "🇬🇾",
|
562
551
|
code: "GY",
|
563
552
|
},
|
564
553
|
{
|
565
554
|
name: "Haiti",
|
566
|
-
dial_code: "
|
555
|
+
dial_code: "509",
|
567
556
|
emoji: "🇭🇹",
|
568
557
|
code: "HT",
|
569
558
|
},
|
570
559
|
{
|
571
560
|
name: "Holy See (Vatican City State)",
|
572
|
-
dial_code: "
|
561
|
+
dial_code: "379",
|
573
562
|
emoji: "🇻🇦",
|
574
563
|
code: "VA",
|
575
564
|
},
|
576
565
|
{
|
577
566
|
name: "Honduras",
|
578
|
-
dial_code: "
|
567
|
+
dial_code: "504",
|
579
568
|
emoji: "🇭🇳",
|
580
569
|
code: "HN",
|
581
570
|
},
|
582
571
|
{
|
583
572
|
name: "Hong Kong",
|
584
|
-
dial_code: "
|
573
|
+
dial_code: "852",
|
585
574
|
emoji: "🇭🇰",
|
586
575
|
code: "HK",
|
587
576
|
},
|
588
577
|
{
|
589
578
|
name: "Hungary",
|
590
|
-
dial_code: "
|
579
|
+
dial_code: "36",
|
591
580
|
emoji: "🇭🇺",
|
592
581
|
code: "HU",
|
593
582
|
},
|
594
583
|
{
|
595
584
|
name: "Iceland",
|
596
|
-
dial_code: "
|
585
|
+
dial_code: "354",
|
597
586
|
emoji: "🇮🇸",
|
598
587
|
code: "IS",
|
599
588
|
},
|
600
589
|
{
|
601
590
|
name: "India",
|
602
|
-
dial_code: "
|
591
|
+
dial_code: "91",
|
603
592
|
emoji: "🇮🇳",
|
604
593
|
code: "IN",
|
605
594
|
},
|
606
595
|
{
|
607
596
|
name: "Indonesia",
|
608
|
-
dial_code: "
|
597
|
+
dial_code: "62",
|
609
598
|
emoji: "🇮🇩",
|
610
599
|
code: "ID",
|
611
600
|
},
|
612
601
|
{
|
613
602
|
name: "Iran, Islamic Republic of Persian Gulf",
|
614
|
-
dial_code: "
|
603
|
+
dial_code: "98",
|
615
604
|
emoji: "🇮🇷",
|
616
605
|
code: "IR",
|
617
606
|
},
|
618
607
|
{
|
619
608
|
name: "Iraq",
|
620
|
-
dial_code: "
|
609
|
+
dial_code: "964",
|
621
610
|
emoji: "🇮🇷",
|
622
611
|
code: "IQ",
|
623
612
|
},
|
624
613
|
{
|
625
614
|
name: "Ireland",
|
626
|
-
dial_code: "
|
615
|
+
dial_code: "353",
|
627
616
|
emoji: "🇮🇪",
|
628
617
|
code: "IE",
|
629
618
|
},
|
630
619
|
{
|
631
620
|
name: "Isle of Man",
|
632
|
-
dial_code: "
|
621
|
+
dial_code: "44",
|
633
622
|
emoji: "🇮🇲",
|
634
623
|
code: "IM",
|
635
624
|
},
|
636
625
|
{
|
637
626
|
name: "Israel",
|
638
|
-
dial_code: "
|
627
|
+
dial_code: "972",
|
639
628
|
emoji: "🇮🇱",
|
640
629
|
code: "IL",
|
641
630
|
},
|
642
631
|
{
|
643
632
|
name: "Italy",
|
644
|
-
dial_code: "
|
633
|
+
dial_code: "39",
|
645
634
|
emoji: "🇮🇹",
|
646
635
|
code: "IT",
|
647
636
|
},
|
648
637
|
{
|
649
638
|
name: "Jamaica",
|
650
|
-
dial_code: "
|
639
|
+
dial_code: "1876",
|
651
640
|
emoji: "🇯🇲",
|
652
641
|
code: "JM",
|
653
642
|
},
|
654
643
|
{
|
655
644
|
name: "Japan",
|
656
|
-
dial_code: "
|
645
|
+
dial_code: "81",
|
657
646
|
emoji: "🇯🇵",
|
658
647
|
code: "JP",
|
659
648
|
},
|
660
649
|
{
|
661
650
|
name: "Jersey",
|
662
|
-
dial_code: "
|
651
|
+
dial_code: "44",
|
663
652
|
emoji: "🇯🇪",
|
664
653
|
code: "JE",
|
665
654
|
},
|
666
655
|
{
|
667
656
|
name: "Jordan",
|
668
|
-
dial_code: "
|
657
|
+
dial_code: "962",
|
669
658
|
emoji: "🇯🇴",
|
670
659
|
code: "JO",
|
671
660
|
},
|
672
661
|
{
|
673
662
|
name: "Kazakhstan",
|
674
|
-
dial_code: "
|
663
|
+
dial_code: "77",
|
675
664
|
emoji: "🇰🇿",
|
676
665
|
code: "KZ",
|
677
666
|
},
|
678
667
|
{
|
679
668
|
name: "Kenya",
|
680
|
-
dial_code: "
|
669
|
+
dial_code: "254",
|
681
670
|
emoji: "🇰🇪",
|
682
671
|
code: "KE",
|
683
672
|
},
|
684
673
|
{
|
685
674
|
name: "Kiribati",
|
686
|
-
dial_code: "
|
675
|
+
dial_code: "686",
|
687
676
|
emoji: "🇰🇮",
|
688
677
|
code: "KI",
|
689
678
|
},
|
690
679
|
{
|
691
680
|
name: "Korea, Democratic People's Republic of Korea",
|
692
|
-
dial_code: "
|
681
|
+
dial_code: "850",
|
693
682
|
emoji: "🇰🇵",
|
694
683
|
code: "KP",
|
695
684
|
},
|
696
685
|
{
|
697
686
|
name: "Korea, Republic of South Korea",
|
698
|
-
dial_code: "
|
687
|
+
dial_code: "82",
|
699
688
|
emoji: "🇰🇷",
|
700
689
|
code: "KR",
|
701
690
|
},
|
702
691
|
{
|
703
692
|
name: "Kuwait",
|
704
|
-
dial_code: "
|
693
|
+
dial_code: "965",
|
705
694
|
emoji: "🇰🇼",
|
706
695
|
code: "KW",
|
707
696
|
},
|
708
697
|
{
|
709
698
|
name: "Kyrgyzstan",
|
710
|
-
dial_code: "
|
699
|
+
dial_code: "996",
|
711
700
|
emoji: "🇰🇬",
|
712
701
|
code: "KG",
|
713
702
|
},
|
714
703
|
{
|
715
704
|
name: "Laos",
|
716
|
-
dial_code: "
|
705
|
+
dial_code: "856",
|
717
706
|
emoji: "🇱🇦",
|
718
707
|
code: "LA",
|
719
708
|
},
|
720
709
|
{
|
721
710
|
name: "Latvia",
|
722
|
-
dial_code: "
|
711
|
+
dial_code: "371",
|
723
712
|
emoji: "🇱🇻",
|
724
713
|
code: "LV",
|
725
714
|
},
|
726
715
|
{
|
727
716
|
name: "Lebanon",
|
728
|
-
dial_code: "
|
717
|
+
dial_code: "961",
|
729
718
|
emoji: "🇱🇧",
|
730
719
|
code: "LB",
|
731
720
|
},
|
732
721
|
{
|
733
722
|
name: "Lesotho",
|
734
|
-
dial_code: "
|
723
|
+
dial_code: "266",
|
735
724
|
emoji: "🇱🇸",
|
736
725
|
code: "LS",
|
737
726
|
},
|
738
727
|
{
|
739
728
|
name: "Liberia",
|
740
|
-
dial_code: "
|
729
|
+
dial_code: "231",
|
741
730
|
emoji: "🇱🇷",
|
742
731
|
code: "LR",
|
743
732
|
},
|
744
733
|
{
|
745
734
|
name: "Libyan Arab Jamahiriya",
|
746
|
-
dial_code: "
|
735
|
+
dial_code: "218",
|
747
736
|
emoji: "🇱🇾",
|
748
737
|
code: "LY",
|
749
738
|
},
|
750
739
|
{
|
751
740
|
name: "Liechtenstein",
|
752
|
-
dial_code: "
|
741
|
+
dial_code: "423",
|
753
742
|
emoji: "🇱🇮",
|
754
743
|
code: "LI",
|
755
744
|
},
|
756
745
|
{
|
757
746
|
name: "Lithuania",
|
758
|
-
dial_code: "
|
747
|
+
dial_code: "370",
|
759
748
|
emoji: "🇱🇹",
|
760
749
|
code: "LT",
|
761
750
|
},
|
762
751
|
{
|
763
752
|
name: "Luxembourg",
|
764
|
-
dial_code: "
|
753
|
+
dial_code: "352",
|
765
754
|
emoji: "🇱🇺",
|
766
755
|
code: "LU",
|
767
756
|
},
|
768
757
|
{
|
769
758
|
name: "Macao",
|
770
|
-
dial_code: "
|
759
|
+
dial_code: "853",
|
771
760
|
emoji: "🇲🇴",
|
772
761
|
code: "MO",
|
773
762
|
},
|
774
763
|
{
|
775
764
|
name: "Macedonia",
|
776
|
-
dial_code: "
|
765
|
+
dial_code: "389",
|
777
766
|
emoji: "🇲🇰",
|
778
767
|
code: "MK",
|
779
768
|
},
|
780
769
|
{
|
781
770
|
name: "Madagascar",
|
782
|
-
dial_code: "
|
771
|
+
dial_code: "261",
|
783
772
|
emoji: "🇲🇬",
|
784
773
|
code: "MG",
|
785
774
|
},
|
786
775
|
{
|
787
776
|
name: "Malawi",
|
788
|
-
dial_code: "
|
777
|
+
dial_code: "265",
|
789
778
|
emoji: "🇲🇼",
|
790
779
|
code: "MW",
|
791
780
|
},
|
792
781
|
{
|
793
782
|
name: "Malaysia",
|
794
|
-
dial_code: "
|
783
|
+
dial_code: "60",
|
795
784
|
emoji: "🇲🇾",
|
796
785
|
code: "MY",
|
797
786
|
},
|
798
787
|
{
|
799
788
|
name: "Maldives",
|
800
|
-
dial_code: "
|
789
|
+
dial_code: "960",
|
801
790
|
emoji: "🇲🇻",
|
802
791
|
code: "MV",
|
803
792
|
},
|
804
793
|
{
|
805
794
|
name: "Mali",
|
806
|
-
dial_code: "
|
795
|
+
dial_code: "223",
|
807
796
|
emoji: "🇲🇱",
|
808
797
|
code: "ML",
|
809
798
|
},
|
810
799
|
{
|
811
800
|
name: "Malta",
|
812
|
-
dial_code: "
|
801
|
+
dial_code: "356",
|
813
802
|
emoji: "🇲🇹",
|
814
803
|
code: "MT",
|
815
804
|
},
|
816
805
|
{
|
817
806
|
name: "Marshall Islands",
|
818
|
-
dial_code: "
|
807
|
+
dial_code: "692",
|
819
808
|
emoji: "🇲🇭",
|
820
809
|
code: "MH",
|
821
810
|
},
|
822
811
|
{
|
823
812
|
name: "Martinique",
|
824
|
-
dial_code: "
|
813
|
+
dial_code: "596",
|
825
814
|
emoji: "🇲🇶",
|
826
815
|
code: "MQ",
|
827
816
|
},
|
828
817
|
{
|
829
818
|
name: "Mauritania",
|
830
|
-
dial_code: "
|
819
|
+
dial_code: "222",
|
831
820
|
emoji: "🇲🇷",
|
832
821
|
code: "MR",
|
833
822
|
},
|
834
823
|
{
|
835
824
|
name: "Mauritius",
|
836
|
-
dial_code: "
|
825
|
+
dial_code: "230",
|
837
826
|
emoji: "🇲🇺",
|
838
827
|
code: "MU",
|
839
828
|
},
|
840
829
|
{
|
841
830
|
name: "Mayotte",
|
842
|
-
dial_code: "
|
831
|
+
dial_code: "262",
|
843
832
|
emoji: "🇾🇹",
|
844
833
|
code: "YT",
|
845
834
|
},
|
846
835
|
{
|
847
836
|
name: "Mexico",
|
848
|
-
dial_code: "
|
837
|
+
dial_code: "52",
|
849
838
|
emoji: "🇲🇽",
|
850
839
|
code: "MX",
|
851
840
|
},
|
852
841
|
{
|
853
842
|
name: "Micronesia, Federated States of Micronesia",
|
854
|
-
dial_code: "
|
843
|
+
dial_code: "691",
|
855
844
|
emoji: "🇫🇲",
|
856
845
|
code: "FM",
|
857
846
|
},
|
858
847
|
{
|
859
848
|
name: "Moldova",
|
860
|
-
dial_code: "
|
849
|
+
dial_code: "373",
|
861
850
|
emoji: "🇲🇩",
|
862
851
|
code: "MD",
|
863
852
|
},
|
864
853
|
{
|
865
854
|
name: "Monaco",
|
866
|
-
dial_code: "
|
855
|
+
dial_code: "377",
|
867
856
|
emoji: "🇲🇨",
|
868
857
|
code: "MC",
|
869
858
|
},
|
870
859
|
{
|
871
860
|
name: "Mongolia",
|
872
|
-
dial_code: "
|
861
|
+
dial_code: "976",
|
873
862
|
emoji: "🇲🇳",
|
874
863
|
code: "MN",
|
875
864
|
},
|
876
865
|
{
|
877
866
|
name: "Montenegro",
|
878
|
-
dial_code: "
|
867
|
+
dial_code: "382",
|
879
868
|
emoji: "🇲🇪",
|
880
869
|
code: "ME",
|
881
870
|
},
|
882
871
|
{
|
883
872
|
name: "Montserrat",
|
884
|
-
dial_code: "
|
873
|
+
dial_code: "1664",
|
885
874
|
emoji: "🇲🇸",
|
886
875
|
code: "MS",
|
887
876
|
},
|
888
877
|
{
|
889
878
|
name: "Morocco",
|
890
|
-
dial_code: "
|
879
|
+
dial_code: "212",
|
891
880
|
emoji: "🇲🇦",
|
892
881
|
code: "MA",
|
893
882
|
},
|
894
883
|
{
|
895
884
|
name: "Mozambique",
|
896
|
-
dial_code: "
|
885
|
+
dial_code: "258",
|
897
886
|
emoji: "🇲🇿",
|
898
887
|
code: "MZ",
|
899
888
|
},
|
900
889
|
{
|
901
890
|
name: "Myanmar",
|
902
|
-
dial_code: "
|
891
|
+
dial_code: "95",
|
903
892
|
emoji: "🇲🇲",
|
904
893
|
code: "MM",
|
905
894
|
},
|
906
895
|
{
|
907
896
|
name: "Namibia",
|
908
897
|
emoji: "🇳🇦",
|
909
|
-
dial_code: "
|
898
|
+
dial_code: "264",
|
910
899
|
code: "NA",
|
911
900
|
},
|
912
901
|
{
|
913
902
|
name: "Nauru",
|
914
|
-
dial_code: "
|
903
|
+
dial_code: "674",
|
915
904
|
emoji: "🇳🇷",
|
916
905
|
code: "NR",
|
917
906
|
},
|
918
907
|
{
|
919
908
|
name: "Nepal",
|
920
|
-
dial_code: "
|
909
|
+
dial_code: "977",
|
921
910
|
emoji: "🇳🇵",
|
922
911
|
code: "NP",
|
923
912
|
},
|
924
913
|
{
|
925
914
|
name: "Netherlands",
|
926
|
-
dial_code: "
|
915
|
+
dial_code: "31",
|
927
916
|
emoji: "🇳🇱",
|
928
917
|
code: "NL",
|
929
918
|
},
|
930
919
|
{
|
931
920
|
name: "Netherlands Antilles",
|
932
|
-
dial_code: "
|
921
|
+
dial_code: "599",
|
933
922
|
emoji: "🇧🇶",
|
934
923
|
code: "AN",
|
935
924
|
},
|
936
925
|
{
|
937
926
|
name: "New Caledonia",
|
938
|
-
dial_code: "
|
927
|
+
dial_code: "687",
|
939
928
|
emoji: "🇳🇨",
|
940
929
|
code: "NC",
|
941
930
|
},
|
942
931
|
{
|
943
932
|
name: "New Zealand",
|
944
|
-
dial_code: "
|
933
|
+
dial_code: "64",
|
945
934
|
emoji: "🇳🇿",
|
946
935
|
code: "NZ",
|
947
936
|
},
|
948
937
|
{
|
949
938
|
name: "Nicaragua",
|
950
|
-
dial_code: "
|
939
|
+
dial_code: "505",
|
951
940
|
emoji: "🇳🇮",
|
952
941
|
code: "NI",
|
953
942
|
},
|
954
943
|
{
|
955
944
|
name: "Niger",
|
956
|
-
dial_code: "
|
945
|
+
dial_code: "227",
|
957
946
|
emoji: "🇳🇪",
|
958
947
|
code: "NE",
|
959
948
|
},
|
960
949
|
{
|
961
950
|
name: "Nigeria",
|
962
|
-
dial_code: "
|
951
|
+
dial_code: "234",
|
963
952
|
emoji: "🇳🇬",
|
964
953
|
code: "NG",
|
965
954
|
},
|
966
955
|
{
|
967
956
|
name: "Niue",
|
968
|
-
dial_code: "
|
957
|
+
dial_code: "683",
|
969
958
|
emoji: "🇳🇺",
|
970
959
|
code: "NU",
|
971
960
|
},
|
972
961
|
{
|
973
962
|
name: "Norfolk Island",
|
974
|
-
dial_code: "
|
963
|
+
dial_code: "672",
|
975
964
|
emoji: "🇳🇫",
|
976
965
|
code: "NF",
|
977
966
|
},
|
978
967
|
{
|
979
968
|
name: "Northern Mariana Islands",
|
980
|
-
dial_code: "
|
969
|
+
dial_code: "1670",
|
981
970
|
emoji: "🇲🇵",
|
982
971
|
code: "MP",
|
983
972
|
},
|
984
973
|
{
|
985
974
|
name: "Norway",
|
986
|
-
dial_code: "
|
975
|
+
dial_code: "47",
|
987
976
|
emoji: "🇳🇴",
|
988
977
|
code: "NO",
|
989
978
|
},
|
990
979
|
{
|
991
980
|
name: "Oman",
|
992
|
-
dial_code: "
|
981
|
+
dial_code: "968",
|
993
982
|
emoji: "🇴🇲",
|
994
983
|
code: "OM",
|
995
984
|
},
|
996
985
|
{
|
997
986
|
name: "Pakistan",
|
998
|
-
dial_code: "
|
987
|
+
dial_code: "92",
|
999
988
|
emoji: "🇵🇰",
|
1000
989
|
code: "PK",
|
1001
990
|
},
|
1002
991
|
{
|
1003
992
|
name: "Palau",
|
1004
|
-
dial_code: "
|
993
|
+
dial_code: "680",
|
1005
994
|
emoji: "🇵🇼",
|
1006
995
|
code: "PW",
|
1007
996
|
},
|
1008
997
|
{
|
1009
998
|
name: "Palestinian Territory, Occupied",
|
1010
|
-
dial_code: "
|
999
|
+
dial_code: "970",
|
1011
1000
|
emoji: "🇵🇸",
|
1012
1001
|
code: "PS",
|
1013
1002
|
},
|
1014
1003
|
{
|
1015
1004
|
name: "Panama",
|
1016
|
-
dial_code: "
|
1005
|
+
dial_code: "507",
|
1017
1006
|
emoji: "🇵🇦",
|
1018
1007
|
code: "PA",
|
1019
1008
|
},
|
1020
1009
|
{
|
1021
1010
|
name: "Papua New Guinea",
|
1022
|
-
dial_code: "
|
1011
|
+
dial_code: "675",
|
1023
1012
|
emoji: "🇵🇬",
|
1024
1013
|
code: "PG",
|
1025
1014
|
},
|
1026
1015
|
{
|
1027
1016
|
name: "Paraguay",
|
1028
|
-
dial_code: "
|
1017
|
+
dial_code: "595",
|
1029
1018
|
emoji: "🇵🇾",
|
1030
1019
|
code: "PY",
|
1031
1020
|
},
|
1032
1021
|
{
|
1033
1022
|
name: "Peru",
|
1034
|
-
dial_code: "
|
1023
|
+
dial_code: "51",
|
1035
1024
|
emoji: "🇵🇪",
|
1036
1025
|
code: "PE",
|
1037
1026
|
},
|
1038
1027
|
{
|
1039
1028
|
name: "Philippines",
|
1040
|
-
dial_code: "
|
1029
|
+
dial_code: "63",
|
1041
1030
|
emoji: "🇵🇭",
|
1042
1031
|
code: "PH",
|
1043
1032
|
},
|
1044
1033
|
{
|
1045
1034
|
name: "Pitcairn",
|
1046
|
-
dial_code: "
|
1035
|
+
dial_code: "872",
|
1047
1036
|
emoji: "🇵🇳",
|
1048
1037
|
code: "PN",
|
1049
1038
|
},
|
1050
1039
|
{
|
1051
1040
|
name: "Poland",
|
1052
|
-
dial_code: "
|
1041
|
+
dial_code: "48",
|
1053
1042
|
emoji: "🇵🇱",
|
1054
1043
|
code: "PL",
|
1055
1044
|
},
|
1056
1045
|
{
|
1057
1046
|
name: "Portugal",
|
1058
|
-
dial_code: "
|
1047
|
+
dial_code: "351",
|
1059
1048
|
emoji: "🇵🇹",
|
1060
1049
|
code: "PT",
|
1061
1050
|
},
|
1062
1051
|
{
|
1063
1052
|
name: "Puerto Rico",
|
1064
|
-
dial_code: "
|
1053
|
+
dial_code: "1939",
|
1065
1054
|
emoji: "🇵🇷",
|
1066
1055
|
code: "PR",
|
1067
1056
|
},
|
1068
1057
|
{
|
1069
1058
|
name: "Qatar",
|
1070
|
-
dial_code: "
|
1059
|
+
dial_code: "974",
|
1071
1060
|
emoji: "🇶🇦",
|
1072
1061
|
code: "QA",
|
1073
1062
|
},
|
1074
1063
|
{
|
1075
1064
|
name: "Romania",
|
1076
|
-
dial_code: "
|
1065
|
+
dial_code: "40",
|
1077
1066
|
emoji: "🇷🇴",
|
1078
1067
|
code: "RO",
|
1079
1068
|
},
|
1080
1069
|
{
|
1081
1070
|
name: "Russia",
|
1082
|
-
dial_code: "
|
1071
|
+
dial_code: "7",
|
1083
1072
|
emoji: "🇷🇺",
|
1084
1073
|
code: "RU",
|
1085
1074
|
},
|
1086
1075
|
{
|
1087
1076
|
name: "Rwanda",
|
1088
|
-
dial_code: "
|
1077
|
+
dial_code: "250",
|
1089
1078
|
emoji: "🇷🇼",
|
1090
1079
|
code: "RW",
|
1091
1080
|
},
|
1092
1081
|
{
|
1093
1082
|
name: "Reunion",
|
1094
|
-
dial_code: "
|
1083
|
+
dial_code: "262",
|
1095
1084
|
emoji: "🇷🇪",
|
1096
1085
|
code: "RE",
|
1097
1086
|
},
|
1098
1087
|
{
|
1099
1088
|
name: "Saint Barthelemy",
|
1100
|
-
dial_code: "
|
1089
|
+
dial_code: "590",
|
1101
1090
|
emoji: "🇧🇱",
|
1102
1091
|
code: "BL",
|
1103
1092
|
},
|
1104
1093
|
{
|
1105
1094
|
name: "Saint Helena, Ascension and Tristan Da Cunha",
|
1106
|
-
dial_code: "
|
1095
|
+
dial_code: "290",
|
1107
1096
|
emoji: "🇸🇭",
|
1108
1097
|
code: "SH",
|
1109
1098
|
},
|
1110
1099
|
{
|
1111
1100
|
name: "Saint Kitts and Nevis",
|
1112
|
-
dial_code: "
|
1101
|
+
dial_code: "1869",
|
1113
1102
|
emoji: "🇰🇳",
|
1114
1103
|
code: "KN",
|
1115
1104
|
},
|
1116
1105
|
{
|
1117
1106
|
name: "Saint Lucia",
|
1118
|
-
dial_code: "
|
1107
|
+
dial_code: "1758",
|
1119
1108
|
emoji: "🇱🇨",
|
1120
1109
|
code: "LC",
|
1121
1110
|
},
|
1122
1111
|
{
|
1123
1112
|
name: "Saint Martin",
|
1124
|
-
dial_code: "
|
1113
|
+
dial_code: "590",
|
1125
1114
|
emoji: "🇲🇫",
|
1126
1115
|
code: "MF",
|
1127
1116
|
},
|
1128
1117
|
{
|
1129
1118
|
name: "Saint Pierre and Miquelon",
|
1130
|
-
dial_code: "
|
1119
|
+
dial_code: "508",
|
1131
1120
|
emoji: "🇵🇲",
|
1132
1121
|
code: "PM",
|
1133
1122
|
},
|
1134
1123
|
{
|
1135
1124
|
name: "Saint Vincent and the Grenadines",
|
1136
|
-
dial_code: "
|
1125
|
+
dial_code: "1784",
|
1137
1126
|
emoji: "🇻🇨",
|
1138
1127
|
code: "VC",
|
1139
1128
|
},
|
1140
1129
|
{
|
1141
1130
|
name: "Samoa",
|
1142
|
-
dial_code: "
|
1131
|
+
dial_code: "685",
|
1143
1132
|
emoji: "🇼🇸",
|
1144
1133
|
code: "WS",
|
1145
1134
|
},
|
1146
1135
|
{
|
1147
1136
|
name: "San Marino",
|
1148
|
-
dial_code: "
|
1137
|
+
dial_code: "378",
|
1149
1138
|
emoji: "🇸🇲",
|
1150
1139
|
code: "SM",
|
1151
1140
|
},
|
1152
1141
|
{
|
1153
1142
|
name: "Sao Tome and Principe",
|
1154
|
-
dial_code: "
|
1143
|
+
dial_code: "239",
|
1155
1144
|
emoji: "🇸🇹",
|
1156
1145
|
code: "ST",
|
1157
1146
|
},
|
1158
1147
|
{
|
1159
1148
|
name: "Saudi Arabia",
|
1160
|
-
dial_code: "
|
1149
|
+
dial_code: "966",
|
1161
1150
|
emoji: "🇸🇦",
|
1162
1151
|
code: "SA",
|
1163
1152
|
},
|
1164
1153
|
{
|
1165
1154
|
name: "Senegal",
|
1166
|
-
dial_code: "
|
1155
|
+
dial_code: "221",
|
1167
1156
|
emoji: "🇸🇳",
|
1168
1157
|
code: "SN",
|
1169
1158
|
},
|
1170
1159
|
{
|
1171
1160
|
name: "Serbia",
|
1172
|
-
dial_code: "
|
1161
|
+
dial_code: "381",
|
1173
1162
|
emoji: "🇷🇸",
|
1174
1163
|
code: "RS",
|
1175
1164
|
},
|
1176
1165
|
{
|
1177
1166
|
name: "Seychelles",
|
1178
|
-
dial_code: "
|
1167
|
+
dial_code: "248",
|
1179
1168
|
emoji: "🇸🇨",
|
1180
1169
|
code: "SC",
|
1181
1170
|
},
|
1182
1171
|
{
|
1183
1172
|
name: "Sierra Leone",
|
1184
|
-
dial_code: "
|
1173
|
+
dial_code: "232",
|
1185
1174
|
emoji: "🇸🇱",
|
1186
1175
|
code: "SL",
|
1187
1176
|
},
|
1188
1177
|
{
|
1189
1178
|
name: "Singapore",
|
1190
|
-
dial_code: "
|
1179
|
+
dial_code: "65",
|
1191
1180
|
emoji: "🇸🇬",
|
1192
1181
|
code: "SG",
|
1193
1182
|
},
|
1194
1183
|
{
|
1195
1184
|
name: "Slovakia",
|
1196
|
-
dial_code: "
|
1185
|
+
dial_code: "421",
|
1197
1186
|
emoji: "🇸🇰",
|
1198
1187
|
code: "SK",
|
1199
1188
|
},
|
1200
1189
|
{
|
1201
1190
|
name: "Slovenia",
|
1202
|
-
dial_code: "
|
1191
|
+
dial_code: "386",
|
1203
1192
|
emoji: "🇸🇮",
|
1204
1193
|
code: "SI",
|
1205
1194
|
},
|
1206
1195
|
{
|
1207
1196
|
name: "Solomon Islands",
|
1208
|
-
dial_code: "
|
1197
|
+
dial_code: "677",
|
1209
1198
|
emoji: "🇸🇧",
|
1210
1199
|
code: "SB",
|
1211
1200
|
},
|
1212
1201
|
{
|
1213
1202
|
name: "Somalia",
|
1214
|
-
dial_code: "
|
1203
|
+
dial_code: "252",
|
1215
1204
|
emoji: "🇸🇴",
|
1216
1205
|
code: "SO",
|
1217
1206
|
},
|
1218
1207
|
{
|
1219
1208
|
name: "South Africa",
|
1220
|
-
dial_code: "
|
1209
|
+
dial_code: "27",
|
1221
1210
|
emoji: "🇿🇦",
|
1222
1211
|
code: "ZA",
|
1223
1212
|
},
|
1224
1213
|
{
|
1225
1214
|
name: "South Sudan",
|
1226
|
-
dial_code: "
|
1215
|
+
dial_code: "211",
|
1227
1216
|
emoji: "🇸🇸",
|
1228
1217
|
code: "SS",
|
1229
1218
|
},
|
1230
1219
|
{
|
1231
1220
|
name: "South Georgia and the South Sandwich Islands",
|
1232
|
-
dial_code: "
|
1221
|
+
dial_code: "500",
|
1233
1222
|
emoji: "🇬🇸",
|
1234
1223
|
code: "GS",
|
1235
1224
|
},
|
1236
1225
|
{
|
1237
1226
|
name: "Spain",
|
1238
|
-
dial_code: "
|
1227
|
+
dial_code: "34",
|
1239
1228
|
emoji: "🇪🇸",
|
1240
1229
|
code: "ES",
|
1241
1230
|
},
|
1242
1231
|
{
|
1243
1232
|
name: "Sri Lanka",
|
1244
|
-
dial_code: "
|
1233
|
+
dial_code: "94",
|
1245
1234
|
emoji: "🇱🇰",
|
1246
1235
|
code: "LK",
|
1247
1236
|
},
|
1248
1237
|
{
|
1249
1238
|
name: "Sudan",
|
1250
|
-
dial_code: "
|
1239
|
+
dial_code: "249",
|
1251
1240
|
emoji: "🇸🇩",
|
1252
1241
|
code: "SD",
|
1253
1242
|
},
|
1254
1243
|
{
|
1255
1244
|
name: "Suriname",
|
1256
|
-
dial_code: "
|
1245
|
+
dial_code: "597",
|
1257
1246
|
emoji: "🇸🇷",
|
1258
1247
|
code: "SR",
|
1259
1248
|
},
|
1260
1249
|
{
|
1261
1250
|
name: "Svalbard and Jan Mayen",
|
1262
|
-
dial_code: "
|
1251
|
+
dial_code: "47",
|
1263
1252
|
emoji: "🇸🇯",
|
1264
1253
|
code: "SJ",
|
1265
1254
|
},
|
1266
1255
|
{
|
1267
1256
|
name: "Swaziland",
|
1268
|
-
dial_code: "
|
1257
|
+
dial_code: "268",
|
1269
1258
|
emoji: "🇸🇿",
|
1270
1259
|
code: "SZ",
|
1271
1260
|
},
|
1272
1261
|
{
|
1273
1262
|
name: "Sweden",
|
1274
|
-
dial_code: "
|
1263
|
+
dial_code: "46",
|
1275
1264
|
emoji: "🇸🇪",
|
1276
1265
|
code: "SE",
|
1277
1266
|
},
|
1278
1267
|
{
|
1279
1268
|
name: "Switzerland",
|
1280
|
-
dial_code: "
|
1269
|
+
dial_code: "41",
|
1281
1270
|
emoji: "🇨🇭",
|
1282
1271
|
code: "CH",
|
1283
1272
|
},
|
1284
1273
|
{
|
1285
1274
|
name: "Syrian Arab Republic",
|
1286
|
-
dial_code: "
|
1275
|
+
dial_code: "963",
|
1287
1276
|
emoji: "🇸🇾",
|
1288
1277
|
code: "SY",
|
1289
1278
|
},
|
1290
1279
|
{
|
1291
1280
|
name: "Taiwan",
|
1292
|
-
dial_code: "
|
1281
|
+
dial_code: "886",
|
1293
1282
|
emoji: "🇹🇼",
|
1294
1283
|
code: "TW",
|
1295
1284
|
},
|
1296
1285
|
{
|
1297
1286
|
name: "Tajikistan",
|
1298
|
-
dial_code: "
|
1287
|
+
dial_code: "992",
|
1299
1288
|
emoji: "🇹🇯",
|
1300
1289
|
code: "TJ",
|
1301
1290
|
},
|
1302
1291
|
{
|
1303
1292
|
name: "Tanzania, United Republic of Tanzania",
|
1304
|
-
dial_code: "
|
1293
|
+
dial_code: "255",
|
1305
1294
|
emoji: "🇹🇿",
|
1306
1295
|
code: "TZ",
|
1307
1296
|
},
|
1308
1297
|
{
|
1309
1298
|
name: "Thailand",
|
1310
|
-
dial_code: "
|
1299
|
+
dial_code: "66",
|
1311
1300
|
emoji: "🇹🇭",
|
1312
1301
|
code: "TH",
|
1313
1302
|
},
|
1314
1303
|
{
|
1315
1304
|
name: "Timor-Leste",
|
1316
|
-
dial_code: "
|
1305
|
+
dial_code: "670",
|
1317
1306
|
emoji: "🇹🇱",
|
1318
1307
|
code: "TL",
|
1319
1308
|
},
|
1320
1309
|
{
|
1321
1310
|
name: "Togo",
|
1322
|
-
dial_code: "
|
1311
|
+
dial_code: "228",
|
1323
1312
|
emoji: "🇹🇬",
|
1324
1313
|
code: "TG",
|
1325
1314
|
},
|
1326
1315
|
{
|
1327
1316
|
name: "Tokelau",
|
1328
|
-
dial_code: "
|
1317
|
+
dial_code: "690",
|
1329
1318
|
emoji: "🇹🇰",
|
1330
1319
|
code: "TK",
|
1331
1320
|
},
|
1332
1321
|
{
|
1333
1322
|
name: "Tonga",
|
1334
|
-
dial_code: "
|
1323
|
+
dial_code: "676",
|
1335
1324
|
emoji: "🇹🇴",
|
1336
1325
|
code: "TO",
|
1337
1326
|
},
|
1338
1327
|
{
|
1339
1328
|
name: "Trinidad and Tobago",
|
1340
|
-
dial_code: "
|
1329
|
+
dial_code: "1868",
|
1341
1330
|
emoji: "🇹🇹",
|
1342
1331
|
code: "TT",
|
1343
1332
|
},
|
1344
1333
|
{
|
1345
1334
|
name: "Tunisia",
|
1346
|
-
dial_code: "
|
1335
|
+
dial_code: "216",
|
1347
1336
|
emoji: "🇹🇳",
|
1348
1337
|
code: "TN",
|
1349
1338
|
},
|
1350
1339
|
{
|
1351
1340
|
name: "Turkey",
|
1352
|
-
dial_code: "
|
1341
|
+
dial_code: "90",
|
1353
1342
|
emoji: "🇹🇷",
|
1354
1343
|
code: "TR",
|
1355
1344
|
},
|
1356
1345
|
{
|
1357
1346
|
name: "Turkmenistan",
|
1358
|
-
dial_code: "
|
1347
|
+
dial_code: "993",
|
1359
1348
|
emoji: "🇹🇲",
|
1360
1349
|
code: "TM",
|
1361
1350
|
},
|
1362
1351
|
{
|
1363
1352
|
name: "Turks and Caicos Islands",
|
1364
|
-
dial_code: "
|
1353
|
+
dial_code: "1649",
|
1365
1354
|
emoji: "🇹🇨",
|
1366
1355
|
code: "TC",
|
1367
1356
|
},
|
1368
1357
|
{
|
1369
1358
|
name: "Tuvalu",
|
1370
|
-
dial_code: "
|
1359
|
+
dial_code: "688",
|
1371
1360
|
emoji: "🇹🇻",
|
1372
1361
|
code: "TV",
|
1373
1362
|
},
|
1374
1363
|
{
|
1375
1364
|
name: "Uganda",
|
1376
|
-
dial_code: "
|
1365
|
+
dial_code: "256",
|
1377
1366
|
emoji: "🇺🇬",
|
1378
1367
|
code: "UG",
|
1379
1368
|
},
|
1380
1369
|
{
|
1381
1370
|
name: "Ukraine",
|
1382
|
-
dial_code: "
|
1371
|
+
dial_code: "380",
|
1383
1372
|
emoji: "🇺🇦",
|
1384
1373
|
code: "UA",
|
1385
1374
|
},
|
1386
1375
|
{
|
1387
1376
|
name: "United Arab Emirates",
|
1388
|
-
dial_code: "
|
1377
|
+
dial_code: "971",
|
1389
1378
|
emoji: "🇦🇪",
|
1390
1379
|
code: "AE",
|
1391
1380
|
},
|
1392
1381
|
{
|
1393
1382
|
name: "United Kingdom",
|
1394
|
-
dial_code: "
|
1383
|
+
dial_code: "44",
|
1395
1384
|
emoji: "🇬🇧",
|
1396
1385
|
code: "GB",
|
1397
1386
|
},
|
1398
1387
|
{
|
1399
1388
|
name: "United States",
|
1400
|
-
dial_code: "
|
1389
|
+
dial_code: "1",
|
1401
1390
|
emoji: "🇺🇸",
|
1402
1391
|
code: "US",
|
1403
1392
|
},
|
1404
1393
|
{
|
1405
1394
|
name: "Uruguay",
|
1406
|
-
dial_code: "
|
1395
|
+
dial_code: "598",
|
1407
1396
|
emoji: "🇺🇾",
|
1408
1397
|
code: "UY",
|
1409
1398
|
},
|
1410
1399
|
{
|
1411
1400
|
name: "Uzbekistan",
|
1412
|
-
dial_code: "
|
1401
|
+
dial_code: "998",
|
1413
1402
|
emoji: "🇺🇿",
|
1414
1403
|
code: "UZ",
|
1415
1404
|
},
|
1416
1405
|
{
|
1417
1406
|
name: "Vanuatu",
|
1418
|
-
dial_code: "
|
1407
|
+
dial_code: "678",
|
1419
1408
|
emoji: "🇻🇺",
|
1420
1409
|
code: "VU",
|
1421
1410
|
},
|
1422
1411
|
{
|
1423
1412
|
name: "Venezuela, Bolivarian Republic of Venezuela",
|
1424
|
-
dial_code: "
|
1413
|
+
dial_code: "58",
|
1425
1414
|
emoji: "🇻🇪",
|
1426
1415
|
code: "VE",
|
1427
1416
|
},
|
1428
1417
|
{
|
1429
1418
|
name: "Vietnam",
|
1430
|
-
dial_code: "
|
1419
|
+
dial_code: "84",
|
1431
1420
|
emoji: "🇻🇳",
|
1432
1421
|
code: "VN",
|
1433
1422
|
},
|
1434
1423
|
{
|
1435
1424
|
name: "Virgin Islands, British",
|
1436
|
-
dial_code: "
|
1425
|
+
dial_code: "1284",
|
1437
1426
|
emoji: "🇻🇬",
|
1438
1427
|
code: "VG",
|
1439
1428
|
},
|
1440
1429
|
{
|
1441
1430
|
name: "Virgin Islands, U.S.",
|
1442
|
-
dial_code: "
|
1431
|
+
dial_code: "1340",
|
1443
1432
|
emoji: "🇻🇮",
|
1444
1433
|
code: "VI",
|
1445
1434
|
},
|
1446
1435
|
{
|
1447
1436
|
name: "Wallis and Futuna",
|
1448
|
-
dial_code: "
|
1437
|
+
dial_code: "681",
|
1449
1438
|
emoji: "🇼🇫",
|
1450
1439
|
code: "WF",
|
1451
1440
|
},
|
1452
1441
|
{
|
1453
1442
|
name: "Yemen",
|
1454
|
-
dial_code: "
|
1443
|
+
dial_code: "967",
|
1455
1444
|
emoji: "🇾🇪",
|
1456
1445
|
code: "YE",
|
1457
1446
|
},
|
1458
1447
|
{
|
1459
1448
|
name: "Zambia",
|
1460
|
-
dial_code: "
|
1449
|
+
dial_code: "260",
|
1461
1450
|
emoji: "🇿🇲",
|
1462
1451
|
code: "ZM",
|
1463
1452
|
},
|
1464
1453
|
{
|
1465
1454
|
name: "Zimbabwe",
|
1466
|
-
dial_code: "
|
1455
|
+
dial_code: "263",
|
1467
1456
|
emoji: "🇿🇼",
|
1468
1457
|
code: "ZW",
|
1469
1458
|
},
|
1470
1459
|
];
|
1471
1460
|
|
1461
|
+
export interface PhoneNumberProps
|
1462
|
+
extends React.InputHTMLAttributes<HTMLInputElement> {
|
1463
|
+
label?: string;
|
1464
|
+
description?: string;
|
1465
|
+
options?: {
|
1466
|
+
variant?: "default" | "split";
|
1467
|
+
width?: "full" | "fit";
|
1468
|
+
height?: "short" | "medium" | "high";
|
1469
|
+
};
|
1470
|
+
}
|
1471
|
+
|
1472
1472
|
export const PhoneNumber: React.FC<PhoneNumberProps> = ({
|
1473
1473
|
options,
|
1474
1474
|
label,
|
1475
1475
|
description,
|
1476
|
-
getPhoneNumber,
|
1477
1476
|
...rest
|
1478
1477
|
}) => {
|
1479
|
-
const
|
1480
|
-
const dropdownRef = useRef<
|
1481
|
-
const [tempValue, setTempValue] = useState(["
|
1478
|
+
const inputRef = useRef<HTMLDivElement>(null);
|
1479
|
+
const dropdownRef = useRef<HTMLButtonElement>(null);
|
1480
|
+
const [tempValue, setTempValue] = useState(["62", ""]);
|
1482
1481
|
const [openDropdown, setOpenDropdown] = useState(false);
|
1483
|
-
const [position, setPosition] = useState<{
|
1484
|
-
top: number;
|
1485
|
-
left: number;
|
1486
|
-
} | null>(null);
|
1487
1482
|
const [dropdownWidth, setDropdownWidth] = useState<number>(0);
|
1488
1483
|
const width = options?.width === "fit" ? "w-fit" : "w-full";
|
1489
1484
|
const height =
|
@@ -1494,192 +1489,161 @@ export const PhoneNumber: React.FC<PhoneNumberProps> = ({
|
|
1494
1489
|
: "py-1.5";
|
1495
1490
|
|
1496
1491
|
useEffect(() => {
|
1497
|
-
|
1498
|
-
if (
|
1499
|
-
dropdownRef.current &&
|
1500
|
-
!dropdownRef.current.contains(e.target as Node) &&
|
1501
|
-
!triggerRef.current?.contains(e.target as Node)
|
1502
|
-
) {
|
1492
|
+
document.addEventListener("mousedown", (e) => {
|
1493
|
+
if (e.target instanceof HTMLElement) {
|
1503
1494
|
setOpenDropdown(false);
|
1504
1495
|
}
|
1505
|
-
};
|
1506
|
-
|
1507
|
-
document.addEventListener("mousedown", handleClickOutside);
|
1508
|
-
return () => {
|
1509
|
-
document.removeEventListener("mousedown", handleClickOutside);
|
1510
|
-
};
|
1496
|
+
});
|
1511
1497
|
}, []);
|
1512
1498
|
|
1513
1499
|
useEffect(() => {
|
1514
|
-
if (
|
1515
|
-
|
1516
|
-
|
1517
|
-
|
1518
|
-
|
1519
|
-
|
1520
|
-
|
1521
|
-
left: rect.left + window.scrollX,
|
1522
|
-
});
|
1523
|
-
|
1524
|
-
setDropdownWidth(rect.width);
|
1525
|
-
|
1526
|
-
if (rect.bottom + dropdownHeight > windowHeight) {
|
1527
|
-
setPosition((prev) =>
|
1528
|
-
prev
|
1529
|
-
? { ...prev, top: rect.top + window.scrollY - dropdownHeight - 10 }
|
1530
|
-
: null
|
1531
|
-
);
|
1500
|
+
if (options?.variant !== "split") {
|
1501
|
+
if (rest.value) {
|
1502
|
+
setTempValue((prev) => [prev[0], rest.value as string]);
|
1503
|
+
return;
|
1504
|
+
} else if (rest.defaultValue) {
|
1505
|
+
setTempValue((prev) => [prev[0], rest.defaultValue as string]);
|
1506
|
+
return;
|
1532
1507
|
}
|
1533
1508
|
}
|
1534
|
-
|
1535
|
-
if (openDropdown) {
|
1536
|
-
document.getElementById("body")!.style.overflow = "hidden";
|
1537
|
-
} else {
|
1538
|
-
document.getElementById("body")!.style.overflow = "auto";
|
1539
|
-
}
|
1540
|
-
}, [openDropdown]);
|
1541
|
-
|
1542
|
-
useEffect(() => {
|
1543
|
-
if (rest.value) {
|
1544
|
-
setTempValue((prev) => [prev[0], rest.value as string]);
|
1545
|
-
return;
|
1546
|
-
} else if (rest.defaultValue) {
|
1547
|
-
setTempValue((prev) => [prev[0], rest.defaultValue as string]);
|
1548
|
-
return;
|
1549
|
-
}
|
1550
|
-
}, [rest.value, rest.defaultValue]);
|
1509
|
+
}, [options?.variant, rest.value, rest.defaultValue]);
|
1551
1510
|
|
1552
1511
|
useEffect(() => {
|
1553
1512
|
rest.onChange &&
|
1554
1513
|
rest.onChange({
|
1555
1514
|
target: {
|
1556
|
-
value:
|
1515
|
+
value:
|
1516
|
+
options?.variant === "split" ? tempValue.join("") : tempValue[1],
|
1557
1517
|
} as HTMLInputElement,
|
1558
1518
|
} as React.ChangeEvent<HTMLInputElement>);
|
1559
1519
|
}, [tempValue]);
|
1560
1520
|
|
1561
|
-
useEffect(() => {
|
1562
|
-
getPhoneNumber &&
|
1563
|
-
getPhoneNumber(
|
1564
|
-
`${
|
1565
|
-
countryCodes.find((item) => item.code === tempValue[0].split(" ")[1])
|
1566
|
-
?.dial_code || ""
|
1567
|
-
}${tempValue[1]}`
|
1568
|
-
);
|
1569
|
-
}, [tempValue]);
|
1570
|
-
|
1571
1521
|
return (
|
1572
|
-
<
|
1573
|
-
|
1574
|
-
|
1575
|
-
|
1576
|
-
|
1577
|
-
|
1578
|
-
|
1579
|
-
|
1580
|
-
|
1581
|
-
|
1582
|
-
|
1583
|
-
|
1584
|
-
|
1585
|
-
|
1586
|
-
|
1587
|
-
|
1588
|
-
|
1589
|
-
|
1590
|
-
|
1591
|
-
|
1592
|
-
|
1593
|
-
|
1594
|
-
)}
|
1595
|
-
<div className="flex flex-row-reverse gap-4">
|
1596
|
-
<div className="relative flex-1 flex items-center">
|
1597
|
-
<div className="absolute left-0 flex justify-center w-14 border-r">
|
1598
|
-
<span className="text-disabled">
|
1599
|
-
{countryCodes.find(
|
1600
|
-
(item) => item.code === tempValue[0].split(" ")[1]
|
1601
|
-
)?.dial_code || ""}
|
1602
|
-
</span>
|
1522
|
+
<div className="flex flex-row-reverse items-end">
|
1523
|
+
<label className={`grid gap-2 ${width}`}>
|
1524
|
+
{(label || description) && (
|
1525
|
+
<div className="flex items-center">
|
1526
|
+
{label && (
|
1527
|
+
<span
|
1528
|
+
className={`text-sm select-none ${
|
1529
|
+
rest.required &&
|
1530
|
+
"after:content-['*'] after:ml-1 after:text-danger"
|
1531
|
+
}`}
|
1532
|
+
>
|
1533
|
+
{label}
|
1534
|
+
</span>
|
1535
|
+
)}
|
1536
|
+
{description && (
|
1537
|
+
<span
|
1538
|
+
title={description}
|
1539
|
+
className="ms-auto text-sm text-primary-dark"
|
1540
|
+
>
|
1541
|
+
<Icon icon="octicon:info-16" />
|
1542
|
+
</span>
|
1543
|
+
)}
|
1603
1544
|
</div>
|
1604
|
-
|
1605
|
-
|
1606
|
-
|
1607
|
-
|
1608
|
-
|
1609
|
-
|
1610
|
-
|
1611
|
-
|
1612
|
-
}}
|
1613
|
-
/>
|
1614
|
-
</div>
|
1615
|
-
<div className="flex flex-col">
|
1616
|
-
<div className="relative" ref={triggerRef}>
|
1545
|
+
)}
|
1546
|
+
<div ref={inputRef} className="flex flex-row-reverse gap-4">
|
1547
|
+
<div className="relative flex-1 flex items-center">
|
1548
|
+
{options?.variant === "split" && (
|
1549
|
+
<div className="absolute left-0 flex justify-center w-14 border-r">
|
1550
|
+
<span className="text-disabled">{`+${tempValue[0]}`}</span>
|
1551
|
+
</div>
|
1552
|
+
)}
|
1617
1553
|
<input
|
1618
|
-
type="
|
1619
|
-
className={`
|
1554
|
+
type="number"
|
1555
|
+
className={`w-full border-default border rounded-md bg-secondary-bg [appearance:textfield] [&::-webkit-outer-spin-button]:appearance-none [&::-webkit-inner-spin-button]:appearance-none placeholder:duration-300 placeholder:translate-x-0 focus:placeholder:translate-x-1 placeholder:text-silent focus:outline-none focus:ring-1 focus:ring-primary focus:shadow focus:shadow-primary focus:border-primary-dark disabled:bg-secondary-light disabled:text-disabled ${height} ${
|
1556
|
+
options?.variant === "split" ? "ps-16 pe-4" : "px-4"
|
1557
|
+
}`}
|
1558
|
+
placeholder={rest.placeholder}
|
1559
|
+
value={tempValue[1]}
|
1560
|
+
required={rest.required}
|
1620
1561
|
disabled={rest.disabled}
|
1621
|
-
value={tempValue[0]}
|
1622
1562
|
onChange={(e) => {
|
1623
|
-
setTempValue((prev) => [e.target.value
|
1624
|
-
}}
|
1625
|
-
onClick={() => {
|
1626
|
-
setOpenDropdown(true);
|
1627
|
-
setTempValue((prev) => ["", prev[1]]);
|
1563
|
+
setTempValue((prev) => [prev[0], e.target.value]);
|
1628
1564
|
}}
|
1629
1565
|
/>
|
1630
|
-
{openDropdown &&
|
1631
|
-
position &&
|
1632
|
-
createPortal(
|
1633
|
-
<div
|
1634
|
-
ref={dropdownRef}
|
1635
|
-
className="absolute max-h-40 p-1 z-50 pointer-events-auto bg-secondary-bg shadow border rounded-md overflow-auto"
|
1636
|
-
style={{
|
1637
|
-
top: position.top,
|
1638
|
-
left: position.left,
|
1639
|
-
width: dropdownWidth,
|
1640
|
-
}}
|
1641
|
-
>
|
1642
|
-
{countryCodes.filter((item) =>
|
1643
|
-
item.code.toLowerCase().includes(tempValue[0].toLowerCase())
|
1644
|
-
).length === 0 ? (
|
1645
|
-
<div className="flex justify-center">
|
1646
|
-
<span className="px-4 py-1">No data found</span>
|
1647
|
-
</div>
|
1648
|
-
) : (
|
1649
|
-
countryCodes
|
1650
|
-
.filter((item) =>
|
1651
|
-
item.code
|
1652
|
-
.toLowerCase()
|
1653
|
-
.includes(tempValue[0].toLowerCase())
|
1654
|
-
)
|
1655
|
-
.map((item, index) => (
|
1656
|
-
<button
|
1657
|
-
key={index}
|
1658
|
-
type="button"
|
1659
|
-
className="w-full my-0.5 px-4 py-2 rounded-md text-sm text-left text-default hover:bg-secondary-light disabled:bg-primary-transparent"
|
1660
|
-
disabled={
|
1661
|
-
(countryCodes.find(
|
1662
|
-
(item) => item.code === rest.value
|
1663
|
-
)?.code || countryCodes) === item?.code
|
1664
|
-
}
|
1665
|
-
onMouseDown={() => {
|
1666
|
-
setTempValue((prev) => [
|
1667
|
-
`${item.emoji} ${item.code}`,
|
1668
|
-
prev[1],
|
1669
|
-
]);
|
1670
|
-
setOpenDropdown(false);
|
1671
|
-
}}
|
1672
|
-
>
|
1673
|
-
{`${item.emoji} ${item.code}`}
|
1674
|
-
</button>
|
1675
|
-
))
|
1676
|
-
)}
|
1677
|
-
</div>,
|
1678
|
-
document.body
|
1679
|
-
)}
|
1680
1566
|
</div>
|
1567
|
+
{options?.variant === "split" && (
|
1568
|
+
<div className="relative flex items-center cursor-pointer">
|
1569
|
+
<input
|
1570
|
+
type="text"
|
1571
|
+
className={`max-w-24 w-min ps-4 pe-4 border-default border rounded-md bg-secondary-bg placeholder:duration-300 placeholder:translate-x-0 focus:placeholder:translate-x-1 placeholder:text-silent focus:outline-none focus:ring-1 focus:ring-primary focus:shadow focus:shadow-primary focus:border-primary-dark disabled:bg-secondary-light disabled:text-disabled disabled:cursor-default ${height} ${
|
1572
|
+
openDropdown
|
1573
|
+
? "placeholder:translate-x-1 outline-none ring-1 ring-primary shadow shadow-primary border-primary-dark"
|
1574
|
+
: "border-default placeholder:translate-x-0"
|
1575
|
+
}`}
|
1576
|
+
disabled={rest.disabled}
|
1577
|
+
value={`${
|
1578
|
+
countryPhoneCode.find(
|
1579
|
+
(item) => item.dial_code === tempValue[0]
|
1580
|
+
)?.emoji
|
1581
|
+
} ${
|
1582
|
+
countryPhoneCode.find(
|
1583
|
+
(item) => item.dial_code === tempValue[0]
|
1584
|
+
)?.code
|
1585
|
+
}`}
|
1586
|
+
onClick={(e) => {
|
1587
|
+
e.preventDefault();
|
1588
|
+
setOpenDropdown(true);
|
1589
|
+
dropdownRef.current?.click();
|
1590
|
+
setDropdownWidth(
|
1591
|
+
inputRef?.current?.getBoundingClientRect()?.width || 0
|
1592
|
+
);
|
1593
|
+
}}
|
1594
|
+
/>
|
1595
|
+
<div className="absolute right-4 text-xl text-disabled pointer-events-none">
|
1596
|
+
<Icon
|
1597
|
+
icon={`gravity-ui:chevron-${openDropdown ? "up" : "down"}`}
|
1598
|
+
/>
|
1599
|
+
</div>
|
1600
|
+
</div>
|
1601
|
+
)}
|
1681
1602
|
</div>
|
1603
|
+
</label>
|
1604
|
+
<div className="w-0 overflow-hidden">
|
1605
|
+
<Dropdown
|
1606
|
+
placement="bottom-start"
|
1607
|
+
trigger={
|
1608
|
+
<button
|
1609
|
+
type="button"
|
1610
|
+
ref={dropdownRef}
|
1611
|
+
className={`w-0 my-0.5 ${height}`}
|
1612
|
+
>
|
1613
|
+
1
|
1614
|
+
</button>
|
1615
|
+
}
|
1616
|
+
>
|
1617
|
+
<div
|
1618
|
+
style={{
|
1619
|
+
width: dropdownWidth - 11,
|
1620
|
+
}}
|
1621
|
+
>
|
1622
|
+
{countryPhoneCode.length === 0 ? (
|
1623
|
+
<div className="flex justify-center">
|
1624
|
+
<span className="px-4 py-1">No data found</span>
|
1625
|
+
</div>
|
1626
|
+
) : (
|
1627
|
+
countryPhoneCode.map((item, index) => {
|
1628
|
+
return (
|
1629
|
+
<button
|
1630
|
+
key={index}
|
1631
|
+
type="button"
|
1632
|
+
className="flex justify-between items-center min-w-40 w-full my-0.5 px-4 py-2 rounded-md text-sm text-left hover:bg-secondary-light disabled:bg-primary-transparent disabled:text-primary"
|
1633
|
+
disabled={tempValue[0] === item.dial_code}
|
1634
|
+
onClick={() => {
|
1635
|
+
setTempValue((prev) => [item.dial_code, prev[1]]);
|
1636
|
+
setOpenDropdown(false);
|
1637
|
+
}}
|
1638
|
+
>
|
1639
|
+
<span>{`${item.emoji} ${item.name}`}</span>
|
1640
|
+
</button>
|
1641
|
+
);
|
1642
|
+
})
|
1643
|
+
)}
|
1644
|
+
</div>
|
1645
|
+
</Dropdown>
|
1682
1646
|
</div>
|
1683
|
-
</
|
1647
|
+
</div>
|
1684
1648
|
);
|
1685
1649
|
};
|