Bluesky app fork with some witchin' additions 馃挮 witchsky.app
bluesky fork client
117
fork

Configure Feed

Select the types of activity you want to include in your feed.

at a876aae44ea07494ebea9727350aa060b81f317b 1293 lines 31 kB view raw
1import {type CountryCode as LibPhoneNumberJsCountryCode} from 'libphonenumber-js' 2 3// Exclude Ascension Island and Tristan da Cunha - merged into `SH` in 2009 4export type CountryCode = Exclude<LibPhoneNumberJsCountryCode, 'AC' | 'TA'> 5 6/** 7 * Note: data is from Wikipedia, but some have been removed to match `libphonenumber-js` 8 * Mostly tiny British overseas territories + Antarctica, all of which 9 * share codes with a larger country. If you've one of the 10 people from these 10 * places, you probably know what to do. 11 */ 12export const INTERNATIONAL_TELEPHONE_CODES = { 13 AD: { 14 code: '+376', 15 unicodeFlag: '馃嚘馃嚛', 16 svgFlag: require('../../assets/icons/flags/AD.svg'), 17 }, 18 AF: { 19 code: '+93', 20 unicodeFlag: '馃嚘馃嚝', 21 svgFlag: require('../../assets/icons/flags/AF.svg'), 22 }, 23 AG: { 24 code: '+1268', 25 unicodeFlag: '馃嚘馃嚞', 26 svgFlag: require('../../assets/icons/flags/AG.svg'), 27 }, 28 AI: { 29 code: '+1264', 30 unicodeFlag: '馃嚘馃嚠', 31 svgFlag: require('../../assets/icons/flags/AI.svg'), 32 }, 33 AL: { 34 code: '+355', 35 unicodeFlag: '馃嚘馃嚤', 36 svgFlag: require('../../assets/icons/flags/AL.svg'), 37 }, 38 AM: { 39 code: '+374', 40 unicodeFlag: '馃嚘馃嚥', 41 svgFlag: require('../../assets/icons/flags/AM.svg'), 42 }, 43 AO: { 44 code: '+244', 45 unicodeFlag: '馃嚘馃嚧', 46 svgFlag: require('../../assets/icons/flags/AO.svg'), 47 }, 48 // sorry penguins :( 49 // same as Norfolk Island 50 // AQ: { 51 // code: '+672', 52 // unicodeFlag: '馃嚘馃嚩', 53 // svgFlag: require('../../assets/icons/flags/AQ.svg'), 54 // }, 55 AR: { 56 code: '+54', 57 unicodeFlag: '馃嚘馃嚪', 58 svgFlag: require('../../assets/icons/flags/AR.svg'), 59 }, 60 AS: { 61 code: '+1684', 62 unicodeFlag: '馃嚘馃嚫', 63 svgFlag: require('../../assets/icons/flags/AS.svg'), 64 }, 65 AT: { 66 code: '+43', 67 unicodeFlag: '馃嚘馃嚬', 68 svgFlag: require('../../assets/icons/flags/AT.svg'), 69 }, 70 AU: { 71 code: '+61', 72 unicodeFlag: '馃嚘馃嚭', 73 svgFlag: require('../../assets/icons/flags/AU.svg'), 74 }, 75 AW: { 76 code: '+297', 77 unicodeFlag: '馃嚘馃嚰', 78 svgFlag: require('../../assets/icons/flags/AW.svg'), 79 }, 80 AX: { 81 code: '+358', 82 unicodeFlag: '馃嚘馃嚱', 83 svgFlag: require('../../assets/icons/flags/AX.svg'), 84 }, 85 AZ: { 86 code: '+994', 87 unicodeFlag: '馃嚘馃嚳', 88 svgFlag: require('../../assets/icons/flags/AZ.svg'), 89 }, 90 BA: { 91 code: '+387', 92 unicodeFlag: '馃嚙馃嚘', 93 svgFlag: require('../../assets/icons/flags/BA.svg'), 94 }, 95 BB: { 96 code: '+1246', 97 unicodeFlag: '馃嚙馃嚙', 98 svgFlag: require('../../assets/icons/flags/BB.svg'), 99 }, 100 BD: { 101 code: '+880', 102 unicodeFlag: '馃嚙馃嚛', 103 svgFlag: require('../../assets/icons/flags/BD.svg'), 104 }, 105 BE: { 106 code: '+32', 107 unicodeFlag: '馃嚙馃嚜', 108 svgFlag: require('../../assets/icons/flags/BE.svg'), 109 }, 110 BF: { 111 code: '+226', 112 unicodeFlag: '馃嚙馃嚝', 113 svgFlag: require('../../assets/icons/flags/BF.svg'), 114 }, 115 BG: { 116 code: '+359', 117 unicodeFlag: '馃嚙馃嚞', 118 svgFlag: require('../../assets/icons/flags/BG.svg'), 119 }, 120 BH: { 121 code: '+973', 122 unicodeFlag: '馃嚙馃嚟', 123 svgFlag: require('../../assets/icons/flags/BH.svg'), 124 }, 125 BI: { 126 code: '+257', 127 unicodeFlag: '馃嚙馃嚠', 128 svgFlag: require('../../assets/icons/flags/BI.svg'), 129 }, 130 BJ: { 131 code: '+229', 132 unicodeFlag: '馃嚙馃嚡', 133 svgFlag: require('../../assets/icons/flags/BJ.svg'), 134 }, 135 BL: { 136 code: '+590', 137 unicodeFlag: '馃嚙馃嚤', 138 svgFlag: require('../../assets/icons/flags/BL.svg'), 139 }, 140 BM: { 141 code: '+1441', 142 unicodeFlag: '馃嚙馃嚥', 143 svgFlag: require('../../assets/icons/flags/BM.svg'), 144 }, 145 BN: { 146 code: '+673', 147 unicodeFlag: '馃嚙馃嚦', 148 svgFlag: require('../../assets/icons/flags/BN.svg'), 149 }, 150 BO: { 151 code: '+591', 152 unicodeFlag: '馃嚙馃嚧', 153 svgFlag: require('../../assets/icons/flags/BO.svg'), 154 }, 155 BQ: { 156 code: '+5997', 157 unicodeFlag: '馃嚙馃嚩', 158 svgFlag: require('../../assets/icons/flags/BQ.svg'), 159 }, 160 BR: { 161 code: '+55', 162 unicodeFlag: '馃嚙馃嚪', 163 svgFlag: require('../../assets/icons/flags/BR.svg'), 164 }, 165 BT: { 166 code: '+975', 167 unicodeFlag: '馃嚙馃嚬', 168 svgFlag: require('../../assets/icons/flags/BT.svg'), 169 }, 170 // same as Norway 171 // BV: { 172 // code: '+47', 173 // unicodeFlag: '馃嚙馃嚮', 174 // svgFlag: require('../../assets/icons/flags/BV.svg'), 175 // }, 176 BW: { 177 code: '+267', 178 unicodeFlag: '馃嚙馃嚰', 179 svgFlag: require('../../assets/icons/flags/BW.svg'), 180 }, 181 BY: { 182 code: '+375', 183 unicodeFlag: '馃嚙馃嚲', 184 svgFlag: require('../../assets/icons/flags/BY.svg'), 185 }, 186 BZ: { 187 code: '+501', 188 unicodeFlag: '馃嚙馃嚳', 189 svgFlag: require('../../assets/icons/flags/BZ.svg'), 190 }, 191 CA: { 192 code: '+1', 193 unicodeFlag: '馃嚚馃嚘', 194 svgFlag: require('../../assets/icons/flags/CA.svg'), 195 }, 196 CH: { 197 code: '+41', 198 unicodeFlag: '馃嚚馃嚟', 199 svgFlag: require('../../assets/icons/flags/CH.svg'), 200 }, 201 CI: { 202 code: '+225', 203 unicodeFlag: '馃嚚馃嚠', 204 svgFlag: require('../../assets/icons/flags/CI.svg'), 205 }, 206 CL: { 207 code: '+56', 208 unicodeFlag: '馃嚚馃嚤', 209 svgFlag: require('../../assets/icons/flags/CL.svg'), 210 }, 211 CM: { 212 code: '+237', 213 unicodeFlag: '馃嚚馃嚥', 214 svgFlag: require('../../assets/icons/flags/CM.svg'), 215 }, 216 CN: { 217 code: '+86', 218 unicodeFlag: '馃嚚馃嚦', 219 svgFlag: require('../../assets/icons/flags/CN.svg'), 220 }, 221 CO: { 222 code: '+57', 223 unicodeFlag: '馃嚚馃嚧', 224 svgFlag: require('../../assets/icons/flags/CO.svg'), 225 }, 226 CR: { 227 code: '+506', 228 unicodeFlag: '馃嚚馃嚪', 229 svgFlag: require('../../assets/icons/flags/CR.svg'), 230 }, 231 CU: { 232 code: '+53', 233 unicodeFlag: '馃嚚馃嚭', 234 svgFlag: require('../../assets/icons/flags/CU.svg'), 235 }, 236 CV: { 237 code: '+238', 238 unicodeFlag: '馃嚚馃嚮', 239 svgFlag: require('../../assets/icons/flags/CV.svg'), 240 }, 241 CW: { 242 code: '+599', 243 unicodeFlag: '馃嚚馃嚰', 244 svgFlag: require('../../assets/icons/flags/CW.svg'), 245 }, 246 CX: { 247 code: '+61', 248 unicodeFlag: '馃嚚馃嚱', 249 svgFlag: require('../../assets/icons/flags/CX.svg'), 250 }, 251 CY: { 252 code: '+357', 253 unicodeFlag: '馃嚚馃嚲', 254 svgFlag: require('../../assets/icons/flags/CY.svg'), 255 }, 256 DE: { 257 code: '+49', 258 unicodeFlag: '馃嚛馃嚜', 259 svgFlag: require('../../assets/icons/flags/DE.svg'), 260 }, 261 DJ: { 262 code: '+253', 263 unicodeFlag: '馃嚛馃嚡', 264 svgFlag: require('../../assets/icons/flags/DJ.svg'), 265 }, 266 DK: { 267 code: '+45', 268 unicodeFlag: '馃嚛馃嚢', 269 svgFlag: require('../../assets/icons/flags/DK.svg'), 270 }, 271 DM: { 272 code: '+767', 273 unicodeFlag: '馃嚛馃嚥', 274 svgFlag: require('../../assets/icons/flags/DM.svg'), 275 }, 276 DZ: { 277 code: '+213', 278 unicodeFlag: '馃嚛馃嚳', 279 svgFlag: require('../../assets/icons/flags/DZ.svg'), 280 }, 281 EC: { 282 code: '+593', 283 unicodeFlag: '馃嚜馃嚚', 284 svgFlag: require('../../assets/icons/flags/EC.svg'), 285 }, 286 EE: { 287 code: '+372', 288 unicodeFlag: '馃嚜馃嚜', 289 svgFlag: require('../../assets/icons/flags/EE.svg'), 290 }, 291 EG: { 292 code: '+20', 293 unicodeFlag: '馃嚜馃嚞', 294 svgFlag: require('../../assets/icons/flags/EG.svg'), 295 }, 296 EH: { 297 code: '+212', 298 unicodeFlag: '馃嚜馃嚟', 299 svgFlag: require('../../assets/icons/flags/EH.svg'), 300 }, 301 ER: { 302 code: '+291', 303 unicodeFlag: '馃嚜馃嚪', 304 svgFlag: require('../../assets/icons/flags/ER.svg'), 305 }, 306 ES: { 307 code: '+34', 308 unicodeFlag: '馃嚜馃嚫', 309 svgFlag: require('../../assets/icons/flags/ES.svg'), 310 }, 311 ET: { 312 code: '+251', 313 unicodeFlag: '馃嚜馃嚬', 314 svgFlag: require('../../assets/icons/flags/ET.svg'), 315 }, 316 FI: { 317 code: '+358', 318 unicodeFlag: '馃嚝馃嚠', 319 svgFlag: require('../../assets/icons/flags/FI.svg'), 320 }, 321 FJ: { 322 code: '+679', 323 unicodeFlag: '馃嚝馃嚡', 324 svgFlag: require('../../assets/icons/flags/FJ.svg'), 325 }, 326 FM: { 327 code: '+691', 328 unicodeFlag: '馃嚝馃嚥', 329 svgFlag: require('../../assets/icons/flags/FM.svg'), 330 }, 331 FR: { 332 code: '+33', 333 unicodeFlag: '馃嚝馃嚪', 334 svgFlag: require('../../assets/icons/flags/FR.svg'), 335 }, 336 GA: { 337 code: '+241', 338 unicodeFlag: '馃嚞馃嚘', 339 svgFlag: require('../../assets/icons/flags/GA.svg'), 340 }, 341 GD: { 342 code: '+1473', 343 unicodeFlag: '馃嚞馃嚛', 344 svgFlag: require('../../assets/icons/flags/GD.svg'), 345 }, 346 GE: { 347 code: '+995', 348 unicodeFlag: '馃嚞馃嚜', 349 svgFlag: require('../../assets/icons/flags/GE.svg'), 350 }, 351 GF: { 352 code: '+594', 353 unicodeFlag: '馃嚞馃嚝', 354 svgFlag: require('../../assets/icons/flags/GF.svg'), 355 }, 356 GG: { 357 code: '+44', 358 unicodeFlag: '馃嚞馃嚞', 359 svgFlag: require('../../assets/icons/flags/GG.svg'), 360 }, 361 GH: { 362 code: '+233', 363 unicodeFlag: '馃嚞馃嚟', 364 svgFlag: require('../../assets/icons/flags/GH.svg'), 365 }, 366 GI: { 367 code: '+350', 368 unicodeFlag: '馃嚞馃嚠', 369 svgFlag: require('../../assets/icons/flags/GI.svg'), 370 }, 371 GL: { 372 code: '+299', 373 unicodeFlag: '馃嚞馃嚤', 374 svgFlag: require('../../assets/icons/flags/GL.svg'), 375 }, 376 GN: { 377 code: '+224', 378 unicodeFlag: '馃嚞馃嚦', 379 svgFlag: require('../../assets/icons/flags/GN.svg'), 380 }, 381 GP: { 382 code: '+590', 383 unicodeFlag: '馃嚞馃嚨', 384 svgFlag: require('../../assets/icons/flags/GP.svg'), 385 }, 386 GQ: { 387 code: '+240', 388 unicodeFlag: '馃嚞馃嚩', 389 svgFlag: require('../../assets/icons/flags/GQ.svg'), 390 }, 391 GR: { 392 code: '+30', 393 unicodeFlag: '馃嚞馃嚪', 394 svgFlag: require('../../assets/icons/flags/GR.svg'), 395 }, 396 // same as Falkland Islands 397 // GS: { 398 // code: '+500', 399 // unicodeFlag: '馃嚞馃嚫', 400 // svgFlag: require('../../assets/icons/flags/GS.svg'), 401 // }, 402 GT: { 403 code: '+502', 404 unicodeFlag: '馃嚞馃嚬', 405 svgFlag: require('../../assets/icons/flags/GT.svg'), 406 }, 407 GU: { 408 code: '+1', 409 unicodeFlag: '馃嚞馃嚭', 410 svgFlag: require('../../assets/icons/flags/GU.svg'), 411 }, 412 GW: { 413 code: '+245', 414 unicodeFlag: '馃嚞馃嚰', 415 svgFlag: require('../../assets/icons/flags/GW.svg'), 416 }, 417 GY: { 418 code: '+592', 419 unicodeFlag: '馃嚞馃嚲', 420 svgFlag: require('../../assets/icons/flags/GY.svg'), 421 }, 422 HK: { 423 code: '+852', 424 unicodeFlag: '馃嚟馃嚢', 425 svgFlag: require('../../assets/icons/flags/HK.svg'), 426 }, 427 HN: { 428 code: '+504', 429 unicodeFlag: '馃嚟馃嚦', 430 svgFlag: require('../../assets/icons/flags/HN.svg'), 431 }, 432 HR: { 433 code: '+385', 434 unicodeFlag: '馃嚟馃嚪', 435 svgFlag: require('../../assets/icons/flags/HR.svg'), 436 }, 437 HT: { 438 code: '+509', 439 unicodeFlag: '馃嚟馃嚬', 440 svgFlag: require('../../assets/icons/flags/HT.svg'), 441 }, 442 HU: { 443 code: '+36', 444 unicodeFlag: '馃嚟馃嚭', 445 svgFlag: require('../../assets/icons/flags/HU.svg'), 446 }, 447 ID: { 448 code: '+62', 449 unicodeFlag: '馃嚠馃嚛', 450 svgFlag: require('../../assets/icons/flags/ID.svg'), 451 }, 452 IE: { 453 code: '+353', 454 unicodeFlag: '馃嚠馃嚜', 455 svgFlag: require('../../assets/icons/flags/IE.svg'), 456 }, 457 IL: { 458 code: '+972', 459 unicodeFlag: '馃嚠馃嚤', 460 svgFlag: require('../../assets/icons/flags/IL.svg'), 461 }, 462 IM: { 463 code: '+44', 464 unicodeFlag: '馃嚠馃嚥', 465 svgFlag: require('../../assets/icons/flags/IM.svg'), 466 }, 467 IN: { 468 code: '+91', 469 unicodeFlag: '馃嚠馃嚦', 470 svgFlag: require('../../assets/icons/flags/IN.svg'), 471 }, 472 IO: { 473 code: '+246', 474 unicodeFlag: '馃嚠馃嚧', 475 svgFlag: require('../../assets/icons/flags/IO.svg'), 476 }, 477 IQ: { 478 code: '+964', 479 unicodeFlag: '馃嚠馃嚩', 480 svgFlag: require('../../assets/icons/flags/IQ.svg'), 481 }, 482 IR: { 483 code: '+98', 484 unicodeFlag: '馃嚠馃嚪', 485 svgFlag: require('../../assets/icons/flags/IR.svg'), 486 }, 487 IS: { 488 code: '+354', 489 unicodeFlag: '馃嚠馃嚫', 490 svgFlag: require('../../assets/icons/flags/IS.svg'), 491 }, 492 IT: { 493 code: '+39', 494 unicodeFlag: '馃嚠馃嚬', 495 svgFlag: require('../../assets/icons/flags/IT.svg'), 496 }, 497 JE: { 498 code: '+44', 499 unicodeFlag: '馃嚡馃嚜', 500 svgFlag: require('../../assets/icons/flags/JE.svg'), 501 }, 502 JM: { 503 code: '+876', 504 unicodeFlag: '馃嚡馃嚥', 505 svgFlag: require('../../assets/icons/flags/JM.svg'), 506 }, 507 JO: { 508 code: '+962', 509 unicodeFlag: '馃嚡馃嚧', 510 svgFlag: require('../../assets/icons/flags/JO.svg'), 511 }, 512 JP: { 513 code: '+81', 514 unicodeFlag: '馃嚡馃嚨', 515 svgFlag: require('../../assets/icons/flags/JP.svg'), 516 }, 517 KE: { 518 code: '+254', 519 unicodeFlag: '馃嚢馃嚜', 520 svgFlag: require('../../assets/icons/flags/KE.svg'), 521 }, 522 KG: { 523 code: '+996', 524 unicodeFlag: '馃嚢馃嚞', 525 svgFlag: require('../../assets/icons/flags/KG.svg'), 526 }, 527 KH: { 528 code: '+855', 529 unicodeFlag: '馃嚢馃嚟', 530 svgFlag: require('../../assets/icons/flags/KH.svg'), 531 }, 532 KP: { 533 code: '+850', 534 unicodeFlag: '馃嚢馃嚨', 535 svgFlag: require('../../assets/icons/flags/KP.svg'), 536 }, 537 KR: { 538 code: '+82', 539 unicodeFlag: '馃嚢馃嚪', 540 svgFlag: require('../../assets/icons/flags/KR.svg'), 541 }, 542 KI: { 543 code: '+686', 544 unicodeFlag: '馃嚢馃嚠', 545 svgFlag: require('../../assets/icons/flags/KI.svg'), 546 }, 547 KN: { 548 code: '+1869', 549 unicodeFlag: '馃嚢馃嚦', 550 svgFlag: require('../../assets/icons/flags/KN.svg'), 551 }, 552 KW: { 553 code: '+965', 554 unicodeFlag: '馃嚢馃嚰', 555 svgFlag: require('../../assets/icons/flags/KW.svg'), 556 }, 557 KZ: { 558 code: '+7', 559 unicodeFlag: '馃嚢馃嚳', 560 svgFlag: require('../../assets/icons/flags/KZ.svg'), 561 }, 562 LB: { 563 code: '+961', 564 unicodeFlag: '馃嚤馃嚙', 565 svgFlag: require('../../assets/icons/flags/LB.svg'), 566 }, 567 LC: { 568 code: '+1758', 569 unicodeFlag: '馃嚤馃嚚', 570 svgFlag: require('../../assets/icons/flags/LC.svg'), 571 }, 572 LI: { 573 code: '+423', 574 unicodeFlag: '馃嚤馃嚠', 575 svgFlag: require('../../assets/icons/flags/LI.svg'), 576 }, 577 LK: { 578 code: '+94', 579 unicodeFlag: '馃嚤馃嚢', 580 svgFlag: require('../../assets/icons/flags/LK.svg'), 581 }, 582 LR: { 583 code: '+231', 584 unicodeFlag: '馃嚤馃嚪', 585 svgFlag: require('../../assets/icons/flags/LR.svg'), 586 }, 587 LS: { 588 code: '+266', 589 unicodeFlag: '馃嚤馃嚫', 590 svgFlag: require('../../assets/icons/flags/LS.svg'), 591 }, 592 LT: { 593 code: '+370', 594 unicodeFlag: '馃嚤馃嚬', 595 svgFlag: require('../../assets/icons/flags/LT.svg'), 596 }, 597 LU: { 598 code: '+352', 599 unicodeFlag: '馃嚤馃嚭', 600 svgFlag: require('../../assets/icons/flags/LU.svg'), 601 }, 602 LV: { 603 code: '+371', 604 unicodeFlag: '馃嚤馃嚮', 605 svgFlag: require('../../assets/icons/flags/LV.svg'), 606 }, 607 LY: { 608 code: '+218', 609 unicodeFlag: '馃嚤馃嚲', 610 svgFlag: require('../../assets/icons/flags/LY.svg'), 611 }, 612 MA: { 613 code: '+212', 614 unicodeFlag: '馃嚥馃嚘', 615 svgFlag: require('../../assets/icons/flags/MA.svg'), 616 }, 617 MC: { 618 code: '+377', 619 unicodeFlag: '馃嚥馃嚚', 620 svgFlag: require('../../assets/icons/flags/MC.svg'), 621 }, 622 ME: { 623 code: '+382', 624 unicodeFlag: '馃嚥馃嚜', 625 svgFlag: require('../../assets/icons/flags/ME.svg'), 626 }, 627 MF: { 628 code: '+590', 629 unicodeFlag: '馃嚥馃嚝', 630 svgFlag: require('../../assets/icons/flags/MF.svg'), 631 }, 632 MG: { 633 code: '+261', 634 unicodeFlag: '馃嚥馃嚞', 635 svgFlag: require('../../assets/icons/flags/MG.svg'), 636 }, 637 ML: { 638 code: '+223', 639 unicodeFlag: '馃嚥馃嚤', 640 svgFlag: require('../../assets/icons/flags/ML.svg'), 641 }, 642 MM: { 643 code: '+95', 644 unicodeFlag: '馃嚥馃嚥', 645 svgFlag: require('../../assets/icons/flags/MM.svg'), 646 }, 647 MN: { 648 code: '+976', 649 unicodeFlag: '馃嚥馃嚦', 650 svgFlag: require('../../assets/icons/flags/MN.svg'), 651 }, 652 MO: { 653 code: '+853', 654 unicodeFlag: '馃嚥馃嚧', 655 svgFlag: require('../../assets/icons/flags/MO.svg'), 656 }, 657 MQ: { 658 code: '+596', 659 unicodeFlag: '馃嚥馃嚩', 660 svgFlag: require('../../assets/icons/flags/MQ.svg'), 661 }, 662 MR: { 663 code: '+222', 664 unicodeFlag: '馃嚥馃嚪', 665 svgFlag: require('../../assets/icons/flags/MR.svg'), 666 }, 667 MS: { 668 code: '+1664', 669 unicodeFlag: '馃嚥馃嚫', 670 svgFlag: require('../../assets/icons/flags/MS.svg'), 671 }, 672 MT: { 673 code: '+356', 674 unicodeFlag: '馃嚥馃嚬', 675 svgFlag: require('../../assets/icons/flags/MT.svg'), 676 }, 677 MU: { 678 code: '+230', 679 unicodeFlag: '馃嚥馃嚭', 680 svgFlag: require('../../assets/icons/flags/MU.svg'), 681 }, 682 MV: { 683 code: '+960', 684 unicodeFlag: '馃嚥馃嚮', 685 svgFlag: require('../../assets/icons/flags/MV.svg'), 686 }, 687 MW: { 688 code: '+265', 689 unicodeFlag: '馃嚥馃嚰', 690 svgFlag: require('../../assets/icons/flags/MW.svg'), 691 }, 692 MX: { 693 code: '+52', 694 unicodeFlag: '馃嚥馃嚱', 695 svgFlag: require('../../assets/icons/flags/MX.svg'), 696 }, 697 MY: { 698 code: '+60', 699 unicodeFlag: '馃嚥馃嚲', 700 svgFlag: require('../../assets/icons/flags/MY.svg'), 701 }, 702 MZ: { 703 code: '+258', 704 unicodeFlag: '馃嚥馃嚳', 705 svgFlag: require('../../assets/icons/flags/MZ.svg'), 706 }, 707 NA: { 708 code: '+264', 709 unicodeFlag: '馃嚦馃嚘', 710 svgFlag: require('../../assets/icons/flags/NA.svg'), 711 }, 712 NC: { 713 code: '+687', 714 unicodeFlag: '馃嚦馃嚚', 715 svgFlag: require('../../assets/icons/flags/NC.svg'), 716 }, 717 NF: { 718 code: '+672', 719 unicodeFlag: '馃嚦馃嚝', 720 svgFlag: require('../../assets/icons/flags/NF.svg'), 721 }, 722 NG: { 723 code: '+234', 724 unicodeFlag: '馃嚦馃嚞', 725 svgFlag: require('../../assets/icons/flags/NG.svg'), 726 }, 727 NI: { 728 code: '+505', 729 unicodeFlag: '馃嚦馃嚠', 730 svgFlag: require('../../assets/icons/flags/NI.svg'), 731 }, 732 NO: { 733 code: '+47', 734 unicodeFlag: '馃嚦馃嚧', 735 svgFlag: require('../../assets/icons/flags/NO.svg'), 736 }, 737 NP: { 738 code: '+977', 739 unicodeFlag: '馃嚦馃嚨', 740 svgFlag: require('../../assets/icons/flags/NP.svg'), 741 }, 742 NR: { 743 code: '+674', 744 unicodeFlag: '馃嚦馃嚪', 745 svgFlag: require('../../assets/icons/flags/NR.svg'), 746 }, 747 NU: { 748 code: '+683', 749 unicodeFlag: '馃嚦馃嚭', 750 svgFlag: require('../../assets/icons/flags/NU.svg'), 751 }, 752 NZ: { 753 code: '+64', 754 unicodeFlag: '馃嚦馃嚳', 755 svgFlag: require('../../assets/icons/flags/NZ.svg'), 756 }, 757 OM: { 758 code: '+968', 759 unicodeFlag: '馃嚧馃嚥', 760 svgFlag: require('../../assets/icons/flags/OM.svg'), 761 }, 762 PA: { 763 code: '+507', 764 unicodeFlag: '馃嚨馃嚘', 765 svgFlag: require('../../assets/icons/flags/PA.svg'), 766 }, 767 PE: { 768 code: '+51', 769 unicodeFlag: '馃嚨馃嚜', 770 svgFlag: require('../../assets/icons/flags/PE.svg'), 771 }, 772 PF: { 773 code: '+689', 774 unicodeFlag: '馃嚨馃嚝', 775 svgFlag: require('../../assets/icons/flags/PF.svg'), 776 }, 777 PG: { 778 code: '+675', 779 unicodeFlag: '馃嚨馃嚞', 780 svgFlag: require('../../assets/icons/flags/PG.svg'), 781 }, 782 PK: { 783 code: '+92', 784 unicodeFlag: '馃嚨馃嚢', 785 svgFlag: require('../../assets/icons/flags/PK.svg'), 786 }, 787 PL: { 788 code: '+48', 789 unicodeFlag: '馃嚨馃嚤', 790 svgFlag: require('../../assets/icons/flags/PL.svg'), 791 }, 792 PM: { 793 code: '+508', 794 unicodeFlag: '馃嚨馃嚥', 795 svgFlag: require('../../assets/icons/flags/PM.svg'), 796 }, 797 // same as New Zealand 798 // PN: { 799 // code: '+64', 800 // unicodeFlag: '馃嚨馃嚦', 801 // svgFlag: require('../../assets/icons/flags/PN.svg'), 802 // }, 803 PR: { 804 code: '+1', 805 unicodeFlag: '馃嚨馃嚪', 806 svgFlag: require('../../assets/icons/flags/PR.svg'), 807 }, 808 PS: { 809 code: '+970', 810 unicodeFlag: '馃嚨馃嚫', 811 svgFlag: require('../../assets/icons/flags/PS.svg'), 812 }, 813 PT: { 814 code: '+351', 815 unicodeFlag: '馃嚨馃嚬', 816 svgFlag: require('../../assets/icons/flags/PT.svg'), 817 }, 818 PW: { 819 code: '+680', 820 unicodeFlag: '馃嚨馃嚰', 821 svgFlag: require('../../assets/icons/flags/PW.svg'), 822 }, 823 PY: { 824 code: '+595', 825 unicodeFlag: '馃嚨馃嚲', 826 svgFlag: require('../../assets/icons/flags/PY.svg'), 827 }, 828 QA: { 829 code: '+974', 830 unicodeFlag: '馃嚩馃嚘', 831 svgFlag: require('../../assets/icons/flags/QA.svg'), 832 }, 833 RE: { 834 code: '+262', 835 unicodeFlag: '馃嚪馃嚜', 836 svgFlag: require('../../assets/icons/flags/RE.svg'), 837 }, 838 RO: { 839 code: '+40', 840 unicodeFlag: '馃嚪馃嚧', 841 svgFlag: require('../../assets/icons/flags/RO.svg'), 842 }, 843 RS: { 844 code: '+381', 845 unicodeFlag: '馃嚪馃嚫', 846 svgFlag: require('../../assets/icons/flags/RS.svg'), 847 }, 848 RU: { 849 code: '+7', 850 unicodeFlag: '馃嚪馃嚭', 851 svgFlag: require('../../assets/icons/flags/RU.svg'), 852 }, 853 RW: { 854 code: '+250', 855 unicodeFlag: '馃嚪馃嚰', 856 svgFlag: require('../../assets/icons/flags/RW.svg'), 857 }, 858 SA: { 859 code: '+966', 860 unicodeFlag: '馃嚫馃嚘', 861 svgFlag: require('../../assets/icons/flags/SA.svg'), 862 }, 863 SB: { 864 code: '+677', 865 unicodeFlag: '馃嚫馃嚙', 866 svgFlag: require('../../assets/icons/flags/SB.svg'), 867 }, 868 SC: { 869 code: '+248', 870 unicodeFlag: '馃嚫馃嚚', 871 svgFlag: require('../../assets/icons/flags/SC.svg'), 872 }, 873 SE: { 874 code: '+46', 875 unicodeFlag: '馃嚫馃嚜', 876 svgFlag: require('../../assets/icons/flags/SE.svg'), 877 }, 878 SG: { 879 code: '+65', 880 unicodeFlag: '馃嚫馃嚞', 881 svgFlag: require('../../assets/icons/flags/SG.svg'), 882 }, 883 SH: { 884 code: '+290', 885 unicodeFlag: '馃嚫馃嚟', 886 svgFlag: require('../../assets/icons/flags/SH.svg'), 887 }, 888 SI: { 889 code: '+386', 890 unicodeFlag: '馃嚫馃嚠', 891 svgFlag: require('../../assets/icons/flags/SI.svg'), 892 }, 893 SJ: { 894 code: '+4779', 895 unicodeFlag: '馃嚫馃嚡', 896 svgFlag: require('../../assets/icons/flags/SJ.svg'), 897 }, 898 SK: { 899 code: '+421', 900 unicodeFlag: '馃嚫馃嚢', 901 svgFlag: require('../../assets/icons/flags/SK.svg'), 902 }, 903 SL: { 904 code: '+232', 905 unicodeFlag: '馃嚫馃嚤', 906 svgFlag: require('../../assets/icons/flags/SL.svg'), 907 }, 908 SM: { 909 code: '+378', 910 unicodeFlag: '馃嚫馃嚥', 911 svgFlag: require('../../assets/icons/flags/SM.svg'), 912 }, 913 SN: { 914 code: '+221', 915 unicodeFlag: '馃嚫馃嚦', 916 svgFlag: require('../../assets/icons/flags/SN.svg'), 917 }, 918 SO: { 919 code: '+252', 920 unicodeFlag: '馃嚫馃嚧', 921 svgFlag: require('../../assets/icons/flags/SO.svg'), 922 }, 923 SR: { 924 code: '+597', 925 unicodeFlag: '馃嚫馃嚪', 926 svgFlag: require('../../assets/icons/flags/SR.svg'), 927 }, 928 SS: { 929 code: '+211', 930 unicodeFlag: '馃嚫馃嚫', 931 svgFlag: require('../../assets/icons/flags/SS.svg'), 932 }, 933 ST: { 934 code: '+239', 935 unicodeFlag: '馃嚫馃嚬', 936 svgFlag: require('../../assets/icons/flags/ST.svg'), 937 }, 938 SV: { 939 code: '+503', 940 unicodeFlag: '馃嚫馃嚮', 941 svgFlag: require('../../assets/icons/flags/SV.svg'), 942 }, 943 SX: { 944 code: '+1721', 945 unicodeFlag: '馃嚫馃嚱', 946 svgFlag: require('../../assets/icons/flags/SX.svg'), 947 }, 948 SY: { 949 code: '+963', 950 unicodeFlag: '馃嚫馃嚲', 951 svgFlag: require('../../assets/icons/flags/SY.svg'), 952 }, 953 TD: { 954 code: '+235', 955 unicodeFlag: '馃嚬馃嚛', 956 svgFlag: require('../../assets/icons/flags/TD.svg'), 957 }, 958 TG: { 959 code: '+228', 960 unicodeFlag: '馃嚬馃嚞', 961 svgFlag: require('../../assets/icons/flags/TG.svg'), 962 }, 963 TH: { 964 code: '+66', 965 unicodeFlag: '馃嚬馃嚟', 966 svgFlag: require('../../assets/icons/flags/TH.svg'), 967 }, 968 TJ: { 969 code: '+992', 970 unicodeFlag: '馃嚬馃嚡', 971 svgFlag: require('../../assets/icons/flags/TJ.svg'), 972 }, 973 TK: { 974 code: '+690', 975 unicodeFlag: '馃嚬馃嚢', 976 svgFlag: require('../../assets/icons/flags/TK.svg'), 977 }, 978 TL: { 979 code: '+670', 980 unicodeFlag: '馃嚬馃嚤', 981 svgFlag: require('../../assets/icons/flags/TL.svg'), 982 }, 983 TM: { 984 code: '+993', 985 unicodeFlag: '馃嚬馃嚥', 986 svgFlag: require('../../assets/icons/flags/TM.svg'), 987 }, 988 TN: { 989 code: '+216', 990 unicodeFlag: '馃嚬馃嚦', 991 svgFlag: require('../../assets/icons/flags/TN.svg'), 992 }, 993 TO: { 994 code: '+676', 995 unicodeFlag: '馃嚬馃嚧', 996 svgFlag: require('../../assets/icons/flags/TO.svg'), 997 }, 998 TR: { 999 code: '+90', 1000 unicodeFlag: '馃嚬馃嚪', 1001 svgFlag: require('../../assets/icons/flags/TR.svg'), 1002 }, 1003 TT: { 1004 code: '+868', 1005 unicodeFlag: '馃嚬馃嚬', 1006 svgFlag: require('../../assets/icons/flags/TT.svg'), 1007 }, 1008 TV: { 1009 code: '+688', 1010 unicodeFlag: '馃嚬馃嚮', 1011 svgFlag: require('../../assets/icons/flags/TV.svg'), 1012 }, 1013 TZ: { 1014 code: '+255', 1015 unicodeFlag: '馃嚬馃嚳', 1016 svgFlag: require('../../assets/icons/flags/TZ.svg'), 1017 }, 1018 UA: { 1019 code: '+380', 1020 unicodeFlag: '馃嚭馃嚘', 1021 svgFlag: require('../../assets/icons/flags/UA.svg'), 1022 }, 1023 UG: { 1024 code: '+256', 1025 unicodeFlag: '馃嚭馃嚞', 1026 svgFlag: require('../../assets/icons/flags/UG.svg'), 1027 }, 1028 US: { 1029 code: '+1', 1030 unicodeFlag: '馃嚭馃嚫', 1031 svgFlag: require('../../assets/icons/flags/US.svg'), 1032 }, 1033 UY: { 1034 code: '+598', 1035 unicodeFlag: '馃嚭馃嚲', 1036 svgFlag: require('../../assets/icons/flags/UY.svg'), 1037 }, 1038 UZ: { 1039 code: '+998', 1040 unicodeFlag: '馃嚭馃嚳', 1041 svgFlag: require('../../assets/icons/flags/UZ.svg'), 1042 }, 1043 VC: { 1044 code: '+1784', 1045 unicodeFlag: '馃嚮馃嚚', 1046 svgFlag: require('../../assets/icons/flags/VC.svg'), 1047 }, 1048 VE: { 1049 code: '+58', 1050 unicodeFlag: '馃嚮馃嚜', 1051 svgFlag: require('../../assets/icons/flags/VE.svg'), 1052 }, 1053 VG: { 1054 code: '+1284', 1055 unicodeFlag: '馃嚮馃嚞', 1056 svgFlag: require('../../assets/icons/flags/VG.svg'), 1057 }, 1058 VI: { 1059 code: '+1340', 1060 unicodeFlag: '馃嚮馃嚠', 1061 svgFlag: require('../../assets/icons/flags/VI.svg'), 1062 }, 1063 VN: { 1064 code: '+84', 1065 unicodeFlag: '馃嚮馃嚦', 1066 svgFlag: require('../../assets/icons/flags/VN.svg'), 1067 }, 1068 VU: { 1069 code: '+678', 1070 unicodeFlag: '馃嚮馃嚭', 1071 svgFlag: require('../../assets/icons/flags/VU.svg'), 1072 }, 1073 WF: { 1074 code: '+681', 1075 unicodeFlag: '馃嚰馃嚝', 1076 svgFlag: require('../../assets/icons/flags/WF.svg'), 1077 }, 1078 WS: { 1079 code: '+685', 1080 unicodeFlag: '馃嚰馃嚫', 1081 svgFlag: require('../../assets/icons/flags/WS.svg'), 1082 }, 1083 YE: { 1084 code: '+967', 1085 unicodeFlag: '馃嚲馃嚜', 1086 svgFlag: require('../../assets/icons/flags/YE.svg'), 1087 }, 1088 YT: { 1089 code: '+262', 1090 unicodeFlag: '馃嚲馃嚬', 1091 svgFlag: require('../../assets/icons/flags/YT.svg'), 1092 }, 1093 ZA: { 1094 code: '+27', 1095 unicodeFlag: '馃嚳馃嚘', 1096 svgFlag: require('../../assets/icons/flags/ZA.svg'), 1097 }, 1098 ZM: { 1099 code: '+260', 1100 unicodeFlag: '馃嚳馃嚥', 1101 svgFlag: require('../../assets/icons/flags/ZM.svg'), 1102 }, 1103 ZW: { 1104 code: '+263', 1105 unicodeFlag: '馃嚳馃嚰', 1106 svgFlag: require('../../assets/icons/flags/ZW.svg'), 1107 }, 1108 SZ: { 1109 code: '+268', 1110 unicodeFlag: '馃嚫馃嚳', 1111 svgFlag: require('../../assets/icons/flags/SZ.svg'), 1112 }, 1113 MK: { 1114 code: '+389', 1115 unicodeFlag: '馃嚥馃嚢', 1116 svgFlag: require('../../assets/icons/flags/MK.svg'), 1117 }, 1118 PH: { 1119 code: '+63', 1120 unicodeFlag: '馃嚨馃嚟', 1121 svgFlag: require('../../assets/icons/flags/PH.svg'), 1122 }, 1123 NL: { 1124 code: '+31', 1125 unicodeFlag: '馃嚦馃嚤', 1126 svgFlag: require('../../assets/icons/flags/NL.svg'), 1127 }, 1128 AE: { 1129 code: '+971', 1130 unicodeFlag: '馃嚘馃嚜', 1131 svgFlag: require('../../assets/icons/flags/AE.svg'), 1132 }, 1133 MD: { 1134 code: '+373', 1135 unicodeFlag: '馃嚥馃嚛', 1136 svgFlag: require('../../assets/icons/flags/MD.svg'), 1137 }, 1138 GM: { 1139 code: '+220', 1140 unicodeFlag: '馃嚞馃嚥', 1141 svgFlag: require('../../assets/icons/flags/GM.svg'), 1142 }, 1143 DO: { 1144 code: '+1', 1145 unicodeFlag: '馃嚛馃嚧', 1146 svgFlag: require('../../assets/icons/flags/DO.svg'), 1147 }, 1148 SD: { 1149 code: '+249', 1150 unicodeFlag: '馃嚫馃嚛', 1151 svgFlag: require('../../assets/icons/flags/SD.svg'), 1152 }, 1153 LA: { 1154 code: '+856', 1155 unicodeFlag: '馃嚤馃嚘', 1156 svgFlag: require('../../assets/icons/flags/LA.svg'), 1157 }, 1158 TW: { 1159 code: '+886', 1160 unicodeFlag: '馃嚬馃嚰', 1161 svgFlag: require('../../assets/icons/flags/TW.svg'), 1162 }, 1163 CG: { 1164 code: '+242', 1165 unicodeFlag: '馃嚚馃嚞', 1166 svgFlag: require('../../assets/icons/flags/CG.svg'), 1167 }, 1168 CZ: { 1169 code: '+420', 1170 unicodeFlag: '馃嚚馃嚳', 1171 svgFlag: require('../../assets/icons/flags/CZ.svg'), 1172 }, 1173 GB: { 1174 code: '+44', 1175 unicodeFlag: '馃嚞馃嚙', 1176 svgFlag: require('../../assets/icons/flags/GB.svg'), 1177 }, 1178 NE: { 1179 code: '+227', 1180 unicodeFlag: '馃嚦馃嚜', 1181 svgFlag: require('../../assets/icons/flags/NE.svg'), 1182 }, 1183 CD: { 1184 code: '+243', 1185 unicodeFlag: '馃嚚馃嚛', 1186 svgFlag: require('../../assets/icons/flags/CD.svg'), 1187 }, 1188 BS: { 1189 code: '+1 242', 1190 unicodeFlag: '馃嚙馃嚫', 1191 svgFlag: require('../../assets/icons/flags/BS.svg'), 1192 }, 1193 CC: { 1194 code: '+61 891', 1195 unicodeFlag: '馃嚚馃嚚', 1196 svgFlag: require('../../assets/icons/flags/CC.svg'), 1197 }, 1198 CF: { 1199 code: '+236', 1200 unicodeFlag: '馃嚚馃嚝', 1201 svgFlag: require('../../assets/icons/flags/CF.svg'), 1202 }, 1203 CK: { 1204 code: '+682', 1205 unicodeFlag: '馃嚚馃嚢', 1206 svgFlag: require('../../assets/icons/flags/CK.svg'), 1207 }, 1208 FK: { 1209 code: '+500', 1210 unicodeFlag: '馃嚝馃嚢', 1211 svgFlag: require('../../assets/icons/flags/FK.svg'), 1212 }, 1213 FO: { 1214 code: '+298', 1215 unicodeFlag: '馃嚝馃嚧', 1216 svgFlag: require('../../assets/icons/flags/FO.svg'), 1217 }, 1218 // same as Norfolk Island 1219 // HM: { 1220 // code: '+672', 1221 // unicodeFlag: '馃嚟馃嚥', 1222 // svgFlag: require('../../assets/icons/flags/HM.svg'), 1223 // }, 1224 KM: { 1225 code: '+269', 1226 unicodeFlag: '馃嚢馃嚥', 1227 svgFlag: require('../../assets/icons/flags/KM.svg'), 1228 }, 1229 KY: { 1230 code: '+1 345', 1231 unicodeFlag: '馃嚢馃嚲', 1232 svgFlag: require('../../assets/icons/flags/KY.svg'), 1233 }, 1234 MH: { 1235 code: '+692', 1236 unicodeFlag: '馃嚥馃嚟', 1237 svgFlag: require('../../assets/icons/flags/MH.svg'), 1238 }, 1239 MP: { 1240 code: '+1 670', 1241 unicodeFlag: '馃嚥馃嚨', 1242 svgFlag: require('../../assets/icons/flags/MP.svg'), 1243 }, 1244 TC: { 1245 code: '+1 649', 1246 unicodeFlag: '馃嚬馃嚚', 1247 svgFlag: require('../../assets/icons/flags/TC.svg'), 1248 }, 1249 // same as Norfolk Island 1250 // TF: { 1251 // code: '+672', 1252 // unicodeFlag: '馃嚬馃嚝', 1253 // svgFlag: require('../../assets/icons/flags/TF.svg'), 1254 // }, 1255 // same as US mainland 1256 // UM: { 1257 // code: '+1', 1258 // unicodeFlag: '馃嚭馃嚥', 1259 // svgFlag: require('../../assets/icons/flags/UM.svg'), 1260 // }, 1261 VA: { 1262 code: '+39', 1263 unicodeFlag: '馃嚮馃嚘', 1264 svgFlag: require('../../assets/icons/flags/VA.svg'), 1265 }, 1266 XK: { 1267 code: '+383', 1268 unicodeFlag: '馃嚱馃嚢', 1269 svgFlag: require('../../assets/icons/flags/XK.svg'), 1270 }, 1271} satisfies Record< 1272 CountryCode, 1273 { 1274 code: string 1275 unicodeFlag: string 1276 svgFlag: any 1277 } 1278> 1279 1280const DEFAULT_PHONE_COUNTRY = 'US' as const 1281 1282export function getDefaultCountry(location?: { 1283 countryCode?: string 1284}): CountryCode { 1285 const locationCountryCode = location?.countryCode?.toUpperCase() 1286 if ( 1287 locationCountryCode && 1288 locationCountryCode in INTERNATIONAL_TELEPHONE_CODES 1289 ) { 1290 return locationCountryCode as CountryCode 1291 } 1292 return DEFAULT_PHONE_COUNTRY 1293}