{"version":3,"file":"mat-tel-input.mjs","sources":["../../../../libs/mat-tel-input/src/lib/country-code.ts","../../../../libs/mat-tel-input/src/lib/mat-tel-input.validator.ts","../../../../libs/mat-tel-input/src/lib/search-country.pipe.ts","../../../../libs/mat-tel-input/src/lib/mat-tel-input.component.ts","../../../../libs/mat-tel-input/src/lib/mat-tel-input.component.html","../../../../libs/mat-tel-input/src/mat-tel-input.ts"],"sourcesContent":["/* eslint-disable */\n\nimport { Injectable } from '@angular/core';\n@Injectable()\nexport class CountryCode {\n  public allCountries = [\n    ['Afghanistan (‫افغانستان‬‎)', 'af', '93'],\n    ['Albania (Shqipëri)', 'al', '355'],\n    ['Algeria (‫الجزائر‬‎)', 'dz', '213'],\n    ['American Samoa', 'as', '1684'],\n    ['Andorra', 'ad', '376'],\n    ['Angola', 'ao', '244'],\n    ['Anguilla', 'ai', '1264'],\n    ['Antigua and Barbuda', 'ag', '1268'],\n    ['Argentina', 'ar', '54'],\n    ['Armenia (Հայաստան)', 'am', '374'],\n    ['Aruba', 'aw', '297'],\n    ['Australia', 'au', '61', 0],\n    ['Austria (Österreich)', 'at', '43'],\n    ['Azerbaijan (Azərbaycan)', 'az', '994'],\n    ['Bahamas', 'bs', '1242'],\n    ['Bahrain (‫البحرين‬‎)', 'bh', '973'],\n    ['Bangladesh (বাংলাদেশ)', 'bd', '880'],\n    ['Barbados', 'bb', '1246'],\n    ['Belarus (Беларусь)', 'by', '375'],\n    ['Belgium (België)', 'be', '32'],\n    ['Belize', 'bz', '501'],\n    ['Benin (Bénin)', 'bj', '229'],\n    ['Bermuda', 'bm', '1441'],\n    ['Bhutan (འབྲུག)', 'bt', '975'],\n    ['Bolivia', 'bo', '591'],\n    ['Bosnia and Herzegovina (Босна и Херцеговина)', 'ba', '387'],\n    ['Botswana', 'bw', '267'],\n    ['Brazil (Brasil)', 'br', '55'],\n    ['British Indian Ocean Territory', 'io', '246'],\n    ['British Virgin Islands', 'vg', '1284'],\n    ['Brunei', 'bn', '673'],\n    ['Bulgaria (България)', 'bg', '359'],\n    ['Burkina Faso', 'bf', '226'],\n    ['Burundi (Uburundi)', 'bi', '257'],\n    ['Cambodia (កម្ពុជា)', 'kh', '855'],\n    ['Cameroon (Cameroun)', 'cm', '237'],\n    [\n      'Canada',\n      'ca',\n      '1',\n      1,\n      [\n        '204',\n        '226',\n        '236',\n        '249',\n        '250',\n        '289',\n        '306',\n        '343',\n        '365',\n        '387',\n        '403',\n        '416',\n        '418',\n        '431',\n        '437',\n        '438',\n        '450',\n        '506',\n        '514',\n        '519',\n        '548',\n        '579',\n        '581',\n        '587',\n        '604',\n        '613',\n        '639',\n        '647',\n        '672',\n        '705',\n        '709',\n        '742',\n        '778',\n        '780',\n        '782',\n        '807',\n        '819',\n        '825',\n        '867',\n        '873',\n        '902',\n        '905',\n      ],\n    ],\n    ['Cape Verde (Kabu Verdi)', 'cv', '238'],\n    ['Caribbean Netherlands', 'bq', '599', 1],\n    ['Cayman Islands', 'ky', '1345'],\n    ['Central African Republic (République centrafricaine)', 'cf', '236'],\n    ['Chad (Tchad)', 'td', '235'],\n    ['Chile', 'cl', '56'],\n    ['China (中国)', 'cn', '86'],\n    ['Christmas Island', 'cx', '61', 2],\n    ['Cocos (Keeling) Islands', 'cc', '61', 1],\n    ['Colombia', 'co', '57'],\n    ['Comoros (‫جزر القمر‬‎)', 'km', '269'],\n    ['Congo (DRC) (Jamhuri ya Kidemokrasia ya Kongo)', 'cd', '243'],\n    ['Congo (Republic) (Congo-Brazzaville)', 'cg', '242'],\n    ['Cook Islands', 'ck', '682'],\n    ['Costa Rica', 'cr', '506'],\n    ['Côte d’Ivoire', 'ci', '225'],\n    ['Croatia (Hrvatska)', 'hr', '385'],\n    ['Cuba', 'cu', '53'],\n    ['Curaçao', 'cw', '599', 0],\n    ['Cyprus (Κύπρος)', 'cy', '357'],\n    ['Czech Republic (Česká republika)', 'cz', '420'],\n    ['Denmark (Danmark)', 'dk', '45'],\n    ['Djibouti', 'dj', '253'],\n    ['Dominica', 'dm', '1767'],\n    [\n      'Dominican Republic (República Dominicana)',\n      'do',\n      '1',\n      2,\n      ['809', '829', '849'],\n    ],\n    ['Ecuador', 'ec', '593'],\n    ['Egypt (‫مصر‬‎)', 'eg', '20'],\n    ['El Salvador', 'sv', '503'],\n    ['Equatorial Guinea (Guinea Ecuatorial)', 'gq', '240'],\n    ['Eritrea', 'er', '291'],\n    ['Estonia (Eesti)', 'ee', '372'],\n    ['Ethiopia', 'et', '251'],\n    ['Falkland Islands (Islas Malvinas)', 'fk', '500'],\n    ['Faroe Islands (Føroyar)', 'fo', '298'],\n    ['Fiji', 'fj', '679'],\n    ['Finland (Suomi)', 'fi', '358', 0],\n    ['France', 'fr', '33'],\n    ['French Guiana (Guyane française)', 'gf', '594'],\n    ['French Polynesia (Polynésie française)', 'pf', '689'],\n    ['Gabon', 'ga', '241'],\n    ['Gambia', 'gm', '220'],\n    ['Georgia (საქართველო)', 'ge', '995'],\n    ['Germany (Deutschland)', 'de', '49'],\n    ['Ghana (Gaana)', 'gh', '233'],\n    ['Gibraltar', 'gi', '350'],\n    ['Greece (Ελλάδα)', 'gr', '30'],\n    ['Greenland (Kalaallit Nunaat)', 'gl', '299'],\n    ['Grenada', 'gd', '1473'],\n    ['Guadeloupe', 'gp', '590', 0],\n    ['Guam', 'gu', '1671'],\n    ['Guatemala', 'gt', '502'],\n    ['Guernsey', 'gg', '44', 1],\n    ['Guinea (Guinée)', 'gn', '224'],\n    ['Guinea-Bissau (Guiné Bissau)', 'gw', '245'],\n    ['Guyana', 'gy', '592'],\n    ['Haiti', 'ht', '509'],\n    ['Honduras', 'hn', '504'],\n    ['Hong Kong (香港)', 'hk', '852'],\n    ['Hungary (Magyarország)', 'hu', '36'],\n    ['Iceland (Ísland)', 'is', '354'],\n    ['India (भारत)', 'in', '91'],\n    ['Indonesia', 'id', '62'],\n    ['Iran (‫ایران‬‎)', 'ir', '98'],\n    ['Iraq (‫العراق‬‎)', 'iq', '964'],\n    ['Ireland', 'ie', '353'],\n    ['Isle of Man', 'im', '44', 2],\n    ['Israel (‫ישראל‬‎)', 'il', '972'],\n    ['Italy (Italia)', 'it', '39', 0],\n    ['Jamaica', 'jm', '1', 4, ['876', '658']],\n    ['Japan (日本)', 'jp', '81'],\n    ['Jersey', 'je', '44', 3],\n    ['Jordan (‫الأردن‬‎)', 'jo', '962'],\n    ['Kazakhstan (Казахстан)', 'kz', '7', 1],\n    ['Kenya', 'ke', '254'],\n    ['Kiribati', 'ki', '686'],\n    ['Kosovo', 'xk', '383'],\n    ['Kuwait (‫الكويت‬‎)', 'kw', '965'],\n    ['Kyrgyzstan (Кыргызстан)', 'kg', '996'],\n    ['Laos (ລາວ)', 'la', '856'],\n    ['Latvia (Latvija)', 'lv', '371'],\n    ['Lebanon (‫لبنان‬‎)', 'lb', '961'],\n    ['Lesotho', 'ls', '266'],\n    ['Liberia', 'lr', '231'],\n    ['Libya (‫ليبيا‬‎)', 'ly', '218'],\n    ['Liechtenstein', 'li', '423'],\n    ['Lithuania (Lietuva)', 'lt', '370'],\n    ['Luxembourg', 'lu', '352'],\n    ['Macau (澳門)', 'mo', '853'],\n    ['Macedonia (FYROM) (Македонија)', 'mk', '389'],\n    ['Madagascar (Madagasikara)', 'mg', '261'],\n    ['Malawi', 'mw', '265'],\n    ['Malaysia', 'my', '60'],\n    ['Maldives', 'mv', '960'],\n    ['Mali', 'ml', '223'],\n    ['Malta', 'mt', '356'],\n    ['Marshall Islands', 'mh', '692'],\n    ['Martinique', 'mq', '596'],\n    ['Mauritania (‫موريتانيا‬‎)', 'mr', '222'],\n    ['Mauritius (Moris)', 'mu', '230'],\n    ['Mayotte', 'yt', '262', 1],\n    ['Mexico (México)', 'mx', '52'],\n    ['Micronesia', 'fm', '691'],\n    ['Moldova (Republica Moldova)', 'md', '373'],\n    ['Monaco', 'mc', '377'],\n    ['Mongolia (Монгол)', 'mn', '976'],\n    ['Montenegro (Crna Gora)', 'me', '382'],\n    ['Montserrat', 'ms', '1664'],\n    ['Morocco (‫المغرب‬‎)', 'ma', '212', 0],\n    ['Mozambique (Moçambique)', 'mz', '258'],\n    ['Myanmar (Burma) (မြန်မာ)', 'mm', '95'],\n    ['Namibia (Namibië)', 'na', '264'],\n    ['Nauru', 'nr', '674'],\n    ['Nepal (नेपाल)', 'np', '977'],\n    ['Netherlands (Nederland)', 'nl', '31'],\n    ['New Caledonia (Nouvelle-Calédonie)', 'nc', '687'],\n    ['New Zealand', 'nz', '64'],\n    ['Nicaragua', 'ni', '505'],\n    ['Niger (Nijar)', 'ne', '227'],\n    ['Nigeria', 'ng', '234'],\n    ['Niue', 'nu', '683'],\n    ['Norfolk Island', 'nf', '672'],\n    ['North Korea (조선 민주주의 인민 공화국)', 'kp', '850'],\n    ['Northern Mariana Islands', 'mp', '1670'],\n    ['Norway (Norge)', 'no', '47', 0],\n    ['Oman (‫عُمان‬‎)', 'om', '968'],\n    ['Pakistan (‫پاکستان‬‎)', 'pk', '92'],\n    ['Palau', 'pw', '680'],\n    ['Palestine (‫فلسطين‬‎)', 'ps', '970'],\n    ['Panama (Panamá)', 'pa', '507'],\n    ['Papua New Guinea', 'pg', '675'],\n    ['Paraguay', 'py', '595'],\n    ['Peru (Perú)', 'pe', '51'],\n    ['Philippines', 'ph', '63'],\n    ['Poland (Polska)', 'pl', '48'],\n    ['Portugal', 'pt', '351'],\n    ['Puerto Rico', 'pr', '1', 3, ['787', '939']],\n    ['Qatar (‫قطر‬‎)', 'qa', '974'],\n    ['Réunion (La Réunion)', 're', '262', 0],\n    ['Romania (România)', 'ro', '40'],\n    ['Russia (Россия)', 'ru', '7', 0],\n    ['Rwanda', 'rw', '250'],\n    ['Saint Barthélemy', 'bl', '590', 1],\n    ['Saint Helena', 'sh', '290'],\n    ['Saint Kitts and Nevis', 'kn', '1869'],\n    ['Saint Lucia', 'lc', '1758'],\n    ['Saint Martin (Saint-Martin (partie française))', 'mf', '590', 2],\n    ['Saint Pierre and Miquelon (Saint-Pierre-et-Miquelon)', 'pm', '508'],\n    ['Saint Vincent and the Grenadines', 'vc', '1784'],\n    ['Samoa', 'ws', '685'],\n    ['San Marino', 'sm', '378'],\n    ['São Tomé and Príncipe (São Tomé e Príncipe)', 'st', '239'],\n    ['Saudi Arabia (‫المملكة العربية السعودية‬‎)', 'sa', '966'],\n    ['Senegal (Sénégal)', 'sn', '221'],\n    ['Serbia (Србија)', 'rs', '381'],\n    ['Seychelles', 'sc', '248'],\n    ['Sierra Leone', 'sl', '232'],\n    ['Singapore', 'sg', '65'],\n    ['Sint Maarten', 'sx', '1721'],\n    ['Slovakia (Slovensko)', 'sk', '421'],\n    ['Slovenia (Slovenija)', 'si', '386'],\n    ['Solomon Islands', 'sb', '677'],\n    ['Somalia (Soomaaliya)', 'so', '252'],\n    ['South Africa', 'za', '27'],\n    ['South Korea (대한민국)', 'kr', '82'],\n    ['South Sudan (‫جنوب السودان‬‎)', 'ss', '211'],\n    ['Spain (España)', 'es', '34'],\n    ['Sri Lanka (ශ්‍රී ලංකාව)', 'lk', '94'],\n    ['Sudan (‫السودان‬‎)', 'sd', '249'],\n    ['Suriname', 'sr', '597'],\n    ['Svalbard and Jan Mayen', 'sj', '47', 1],\n    ['Swaziland', 'sz', '268'],\n    ['Sweden (Sverige)', 'se', '46'],\n    ['Switzerland (Schweiz)', 'ch', '41'],\n    ['Syria (‫سوريا‬‎)', 'sy', '963'],\n    ['Taiwan (台灣)', 'tw', '886'],\n    ['Tajikistan', 'tj', '992'],\n    ['Tanzania', 'tz', '255'],\n    ['Thailand (ไทย)', 'th', '66'],\n    ['Timor-Leste', 'tl', '670'],\n    ['Togo', 'tg', '228'],\n    ['Tokelau', 'tk', '690'],\n    ['Tonga', 'to', '676'],\n    ['Trinidad and Tobago', 'tt', '1868'],\n    ['Tunisia (‫تونس‬‎)', 'tn', '216'],\n    ['Turkey (Türkiye)', 'tr', '90'],\n    ['Turkmenistan', 'tm', '993'],\n    ['Turks and Caicos Islands', 'tc', '1649'],\n    ['Tuvalu', 'tv', '688'],\n    ['U.S. Virgin Islands', 'vi', '1340'],\n    ['Uganda', 'ug', '256'],\n    ['Ukraine (Україна)', 'ua', '380'],\n    ['United Arab Emirates (‫الإمارات العربية المتحدة‬‎)', 'ae', '971'],\n    ['United Kingdom', 'gb', '44', 0],\n    ['United States', 'us', '1', 0],\n    ['Uruguay', 'uy', '598'],\n    ['Uzbekistan (Oʻzbekiston)', 'uz', '998'],\n    ['Vanuatu', 'vu', '678'],\n    ['Vatican City (Città del Vaticano)', 'va', '39', 1],\n    ['Venezuela', 've', '58'],\n    ['Vietnam (Việt Nam)', 'vn', '84'],\n    ['Wallis and Futuna (Wallis-et-Futuna)', 'wf', '681'],\n    ['Western Sahara (‫الصحراء الغربية‬‎)', 'eh', '212', 1],\n    ['Yemen (‫اليمن‬‎)', 'ye', '967'],\n    ['Zambia', 'zm', '260'],\n    ['Zimbabwe', 'zw', '263'],\n    ['Åland Islands', 'ax', '358', 1],\n  ];\n}\n\nexport const Examples: any = {\n  '001': '001',\n  AC: '40123',\n  AD: '312345',\n  AE: '501234567',\n  AF: '701234567',\n  AG: '2684641234',\n  AI: '2642351234',\n  AL: '662123456',\n  AM: '77123456',\n  AO: '923123456',\n  AR: '91123456789',\n  AS: '6847331234',\n  AT: '664123456',\n  AU: '412345678',\n  AW: '5601234',\n  AX: '412345678',\n  AZ: '401234567',\n  BA: '61123456',\n  BB: '2462501234',\n  BD: '1812345678',\n  BE: '470123456',\n  BF: '70123456',\n  BG: '48123456',\n  BH: '36001234',\n  BI: '79561234',\n  BJ: '90011234',\n  BL: '690001234',\n  BM: '4413701234',\n  BN: '7123456',\n  BO: '71234567',\n  BQ: '3181234',\n  BR: '11961234567',\n  BS: '2423591234',\n  BT: '17123456',\n  BW: '71123456',\n  BY: '294911911',\n  BZ: '6221234',\n  CA: '5062345678',\n  CC: '412345678',\n  CD: '991234567',\n  CF: '70012345',\n  CG: '061234567',\n  CH: '781234567',\n  CI: '01234567',\n  CK: '71234',\n  CL: '221234567',\n  CM: '671234567',\n  CN: '13123456789',\n  CO: '3211234567',\n  CR: '83123456',\n  CU: '51234567',\n  CV: '9911234',\n  CW: '95181234',\n  CX: '412345678',\n  CY: '96123456',\n  CZ: '601123456',\n  DE: '15123456789',\n  DJ: '77831001',\n  DK: '32123456',\n  DM: '7672251234',\n  DO: '8092345678',\n  DZ: '551234567',\n  EC: '991234567',\n  EE: '51234567',\n  EG: '1001234567',\n  EH: '650123456',\n  ER: '7123456',\n  ES: '612345678',\n  ET: '911234567',\n  FI: '412345678',\n  FJ: '7012345',\n  FK: '51234',\n  FM: '3501234',\n  FO: '211234',\n  FR: '612345678',\n  GA: '06031234',\n  GB: '7400123456',\n  GD: '4734031234',\n  GE: '555123456',\n  GF: '694201234',\n  GG: '7781123456',\n  GH: '231234567',\n  GI: '57123456',\n  GL: '221234',\n  GM: '3012345',\n  GN: '601123456',\n  GP: '690001234',\n  GQ: '222123456',\n  GR: '6912345678',\n  GT: '51234567',\n  GU: '6713001234',\n  GW: '955012345',\n  GY: '6091234',\n  HK: '51234567',\n  HN: '91234567',\n  HR: '921234567',\n  HT: '34101234',\n  HU: '201234567',\n  ID: '812345678',\n  IE: '850123456',\n  IL: '502345678',\n  IM: '7924123456',\n  IN: '8123456789',\n  IO: '3801234',\n  IQ: '7912345678',\n  IR: '9123456789',\n  IS: '6111234',\n  IT: '3123456789',\n  JE: '7797712345',\n  JM: '8762101234',\n  JO: '790123456',\n  JP: '9012345678',\n  KE: '712123456',\n  KG: '700123456',\n  KH: '91234567',\n  KI: '72001234',\n  KM: '3212345',\n  KN: '8697652917',\n  KP: '1921234567',\n  KR: '1000000000',\n  KW: '50012345',\n  KY: '3453231234',\n  KZ: '7710009998',\n  LA: '2023123456',\n  LB: '71123456',\n  LC: '7582845678',\n  LI: '660234567',\n  LK: '712345678',\n  LR: '770123456',\n  LS: '50123456',\n  LT: '61234567',\n  LU: '628123456',\n  LV: '21234567',\n  LY: '912345678',\n  MA: '650123456',\n  MC: '612345678',\n  MD: '62112345',\n  ME: '67622901',\n  MF: '690001234',\n  MG: '321234567',\n  MH: '2351234',\n  MK: '72345678',\n  ML: '65012345',\n  MM: '92123456',\n  MN: '88123456',\n  MO: '66123456',\n  MP: '6702345678',\n  MQ: '696201234',\n  MR: '22123456',\n  MS: '6644923456',\n  MT: '96961234',\n  MU: '52512345',\n  MV: '7712345',\n  MW: '991234567',\n  MX: '12221234567',\n  MY: '123456789',\n  MZ: '821234567',\n  NA: '811234567',\n  NC: '751234',\n  NE: '93123456',\n  NF: '381234',\n  NG: '8021234567',\n  NI: '81234567',\n  NL: '612345678',\n  NO: '40612345',\n  NP: '9841234567',\n  NR: '5551234',\n  NU: '8884012',\n  NZ: '211234567',\n  OM: '92123456',\n  PA: '61234567',\n  PE: '912345678',\n  PF: '87123456',\n  PG: '70123456',\n  PH: '9051234567',\n  PK: '3012345678',\n  PL: '512345678',\n  PM: '551234',\n  PR: '7872345678',\n  PS: '599123456',\n  PT: '912345678',\n  PW: '6201234',\n  PY: '961456789',\n  QA: '33123456',\n  RE: '692123456',\n  RO: '712034567',\n  RS: '601234567',\n  RU: '9123456789',\n  RW: '720123456',\n  SA: '512345678',\n  SB: '7421234',\n  SC: '2510123',\n  SD: '911231234',\n  SE: '701234567',\n  SG: '81234567',\n  SH: '51234',\n  SI: '31234567',\n  SJ: '41234567',\n  SK: '912123456',\n  SL: '25123456',\n  SM: '66661212',\n  SN: '701234567',\n  SO: '71123456',\n  SR: '7412345',\n  SS: '977123456',\n  ST: '9812345',\n  SV: '70123456',\n  SX: '7215205678',\n  SY: '944567890',\n  SZ: '76123456',\n  TA: '8999',\n  TC: '6492311234',\n  TD: '63012345',\n  TG: '90112345',\n  TH: '812345678',\n  TJ: '917123456',\n  TK: '7290',\n  TL: '77212345',\n  TM: '66123456',\n  TN: '20123456',\n  TO: '7715123',\n  TR: '5012345678',\n  TT: '8682911234',\n  TV: '901234',\n  TW: '912345678',\n  TZ: '621234567',\n  UA: '501234567',\n  UG: '712345678',\n  US: '2015550123',\n  UY: '94231234',\n  UZ: '912345678',\n  VA: '3123456789',\n  VC: '7844301234',\n  VE: '4121234567',\n  VG: '2843001234',\n  VI: '3406421234',\n  VN: '912345678',\n  VU: '5912345',\n  WF: '501234',\n  WS: '7212345',\n  XK: '43201234',\n  YE: '712345678',\n  YT: '639012345',\n  ZA: '711234567',\n  ZM: '955123456',\n  ZW: '712345678',\n};\n","import { AbstractControl, ValidationErrors } from '@angular/forms';\nimport { parsePhoneNumber, PhoneNumber } from 'libphonenumber-js';\n\nexport const matTelInputValidator = (\n  control: AbstractControl,\n): ValidationErrors | null => {\n  const error = { validatePhoneNumber: true };\n  let numberInstance: PhoneNumber;\n\n  if (control.value) {\n    try {\n      numberInstance = parsePhoneNumber(control.value);\n    } catch (e) {\n      return error;\n    }\n\n    if (numberInstance && !numberInstance.isValid()) {\n      if (!control.touched) {\n        control.markAsTouched();\n      }\n      return error;\n    }\n  }\n  return null;\n};\n","import { Pipe, PipeTransform } from '@angular/core';\n\nimport { Country } from './country.model';\n\n@Pipe({\n  name: 'search',\n  standalone: true,\n})\nexport class SearchCountryPipe implements PipeTransform {\n  transform(countries: Country[], searchCriteria?: string): Country[] {\n    if (!searchCriteria || searchCriteria === '') {\n      return countries;\n    }\n\n    return countries.filter((country) => {\n      return `${country.name}+${country.dialCode}${\n        country.areaCodes ? country.areaCodes.join(',') : ''\n      }`\n        .toLowerCase()\n        .includes(searchCriteria.toLowerCase());\n    });\n  }\n}\n","import { FocusMonitor } from '@angular/cdk/a11y';\nimport { coerceBooleanProperty } from '@angular/cdk/coercion';\nimport { NgClass } from '@angular/common';\nimport {\n  ChangeDetectionStrategy,\n  ChangeDetectorRef,\n  Component,\n  DoCheck,\n  ElementRef,\n  EventEmitter,\n  HostBinding,\n  Injector,\n  Input,\n  OnDestroy,\n  OnInit,\n  Optional,\n  Output,\n  Self,\n  ViewChild,\n  afterNextRender,\n  booleanAttribute,\n} from '@angular/core';\nimport {\n  FormGroupDirective,\n  FormsModule,\n  NG_VALIDATORS,\n  NgControl,\n  NgForm,\n  ReactiveFormsModule,\n  Validators,\n} from '@angular/forms';\nimport { ErrorStateMatcher, MatRippleModule } from '@angular/material/core';\nimport { MatDividerModule } from '@angular/material/divider';\nimport { MatFormFieldControl } from '@angular/material/form-field';\nimport { MatInputModule } from '@angular/material/input';\nimport { MatMenu, MatMenuModule } from '@angular/material/menu';\nimport {\n  AsYouType,\n  CountryCode as CC,\n  E164Number,\n  NationalNumber,\n  PhoneNumber,\n  getExampleNumber,\n  parsePhoneNumberFromString,\n} from 'libphonenumber-js';\nimport { Subject } from 'rxjs';\n\nimport { CountryCode, Examples } from './country-code';\nimport { Country } from './country.model';\nimport { PhoneNumberFormat } from './mat-tel-format.model';\nimport { matTelInputValidator } from './mat-tel-input.validator';\nimport { SearchCountryPipe } from './search-country.pipe';\n\nclass matTelInputBase {\n  constructor(\n    public _defaultErrorStateMatcher: ErrorStateMatcher,\n    public _parentForm: NgForm,\n    public _parentFormGroup: FormGroupDirective,\n    public ngControl: NgControl,\n  ) {}\n}\n\n@Component({\n  selector: 'mat-tel-input',\n  templateUrl: './mat-tel-input.component.html',\n  styleUrls: ['./mat-tel-input.component.scss'],\n  providers: [\n    CountryCode,\n    { provide: MatFormFieldControl, useExisting: MatTelInput },\n    {\n      provide: NG_VALIDATORS,\n      useValue: matTelInputValidator,\n      multi: true,\n    },\n  ],\n  changeDetection: ChangeDetectionStrategy.OnPush,\n  imports: [\n    NgClass,\n\n    FormsModule,\n    ReactiveFormsModule,\n    MatInputModule,\n\n    MatMenuModule,\n    MatRippleModule,\n    MatDividerModule,\n\n    SearchCountryPipe,\n  ],\n})\nexport class MatTelInput\n  extends matTelInputBase\n  implements OnInit, DoCheck, OnDestroy\n{\n  static nextId = 0;\n  @ViewChild(MatMenu) matMenu!: MatMenu;\n  @ViewChild('menuSearchInput', { static: false })\n  menuSearchInput?: ElementRef<HTMLInputElement>;\n  @ViewChild('focusable', { static: false }) focusable!: ElementRef;\n\n  @HostBinding()\n  id = `mat-tel-input-${MatTelInput.nextId++}`;\n  @HostBinding('class.floating')\n  get shouldLabelFloat(): boolean {\n    return true;\n  }\n\n  @Input() autocomplete: 'off' | 'tel' = 'off';\n  @Input() cssClass?: string;\n  @Input() errorStateMatcher: ErrorStateMatcher =\n    this._defaultErrorStateMatcher;\n  @Input() placeholder: string = '';\n  @Input() maxLength: string | number = 15;\n  @Input() name?: string;\n  @Input() onlyCountries: string[] = [];\n  @Input() preferredCountries: string[] = [];\n  @Input() searchPlaceholder = 'Search country or code';\n  @Input({ transform: booleanAttribute }) enablePlaceholder = false;\n  @Input({ transform: booleanAttribute }) enableSearch = false;\n  @Input({ transform: booleanAttribute }) resetOnChange = false;\n  @Input()\n  set format(value: PhoneNumberFormat) {\n    this._format = value;\n    this.phoneNumber = this.formattedPhoneNumber();\n    this.stateChanges.next();\n  }\n  get format(): PhoneNumberFormat {\n    return this._format;\n  }\n\n  private _required?: boolean;\n  @Input({ transform: booleanAttribute })\n  set required(value: boolean) {\n    this._required = coerceBooleanProperty(value);\n    this.stateChanges.next(undefined);\n  }\n  get required(): boolean {\n    return (\n      this._required ??\n      this.ngControl?.control?.hasValidator(Validators.required) ??\n      false\n    );\n  }\n\n  private _disabled = false;\n  @Input({ alias: 'disabled', transform: booleanAttribute })\n  set disabled(value: boolean) {\n    this._disabled = coerceBooleanProperty(value);\n    this.stateChanges.next(undefined);\n  }\n  get disabled(): boolean {\n    return this._disabled;\n  }\n\n  get empty(): boolean {\n    return !this.phoneNumber;\n  }\n\n  @Output()\n  countryChanged: EventEmitter<Country> = new EventEmitter<Country>();\n\n  stateChanges = new Subject<void>();\n  focused = false;\n  describedBy = '';\n  phoneNumber?: E164Number | NationalNumber = '' as E164Number | NationalNumber;\n  allCountries: Country[] = [];\n  preferredCountriesInDropDown: Country[] = [];\n  selectedCountry!: Country;\n  numberInstance?: PhoneNumber;\n  value?: any;\n  searchCriteria?: string;\n\n  private _previousFormattedNumber?: string;\n  private _format: PhoneNumberFormat = 'default';\n\n  onTouched = () => {};\n  propagateChange = (_: any) => {};\n\n  private errorState?: boolean;\n\n  constructor(\n    private _changeDetectorRef: ChangeDetectorRef,\n    private countryCodeData: CountryCode,\n    private _focusMonitor: FocusMonitor,\n    private _elementRef: ElementRef<HTMLElement>,\n    private _injector: Injector,\n    @Optional() @Self() _ngControl: NgControl,\n    @Optional() _parentForm: NgForm,\n    @Optional() _parentFormGroup: FormGroupDirective,\n    _defaultErrorStateMatcher: ErrorStateMatcher,\n  ) {\n    super(_defaultErrorStateMatcher, _parentForm, _parentFormGroup, _ngControl);\n\n    _focusMonitor.monitor(_elementRef, true).subscribe((origin: any) => {\n      if (this.focused && !origin) {\n        this.onTouched();\n      }\n      this.focused = !!origin;\n      this.stateChanges.next();\n    });\n\n    if (this.ngControl != null) {\n      this.ngControl.valueAccessor = this;\n    }\n  }\n\n  ngOnInit() {\n    this.fetchCountryData();\n\n    if (this.preferredCountries.length) {\n      this.preferredCountries.forEach((iso2) => {\n        const preferredCountry = this.allCountries\n          .filter((c) => {\n            return c.iso2 === iso2;\n          })\n          .shift();\n\n        if (preferredCountry)\n          this.preferredCountriesInDropDown.push(preferredCountry);\n      });\n    }\n\n    if (this.onlyCountries.length) {\n      this.allCountries = this.allCountries.filter((c) =>\n        this.onlyCountries.includes(c.iso2),\n      );\n    }\n\n    if (!this.numberInstance && this.ngControl?.control?.value) {\n      this._hydrateFromValue(this.ngControl.control.value);\n    }\n\n    this._setDefaultCountry();\n\n    this._changeDetectorRef.markForCheck();\n    this.stateChanges.next();\n  }\n\n  updateErrorState(): void {\n    if (!this.ngControl) {\n      return;\n    }\n\n    const oldState = this.errorState;\n    const parent = this._parentFormGroup || this._parentForm;\n    const control = this.ngControl.control ?? null;\n    const newState =\n      this.errorStateMatcher.isErrorState(control, parent) ?? false;\n\n    if (newState !== oldState) {\n      this.errorState = newState;\n      this._changeDetectorRef.markForCheck();\n      this.stateChanges.next();\n    }\n  }\n\n  private _setDefaultCountry() {\n    if (this._syncSelectedCountryFromNumber()) {\n      return;\n    }\n\n    if (this.preferredCountriesInDropDown.length) {\n      this.selectedCountry = this.preferredCountriesInDropDown[0];\n    } else {\n      this.selectedCountry = this.allCountries[0];\n    }\n\n    this.countryChanged.emit(this.selectedCountry);\n  }\n\n  private _syncSelectedCountryFromNumber(): boolean {\n    const countryCode = this.numberInstance?.country;\n\n    if (!countryCode || !this.allCountries.length) {\n      return false;\n    }\n\n    const resolvedCountry = this.allCountries.find(\n      (country) => country.iso2 === countryCode.toLowerCase(),\n    );\n\n    if (!resolvedCountry?.dialCode) {\n      return false;\n    }\n\n    this.selectedCountry = resolvedCountry;\n\n    if (\n      !this.preferredCountries.includes(resolvedCountry.iso2) &&\n      !this.preferredCountriesInDropDown.some(\n        (country) => country.iso2 === resolvedCountry.iso2,\n      )\n    ) {\n      this.preferredCountriesInDropDown.push(resolvedCountry);\n    }\n\n    this.countryChanged.emit(this.selectedCountry);\n    return true;\n  }\n\n  ngDoCheck(): void {\n    if (this.ngControl) {\n      this.updateErrorState();\n    }\n  }\n\n  ngOnDestroy() {\n    this.stateChanges.complete();\n    this._focusMonitor.stopMonitoring(this._elementRef);\n  }\n\n  public onPhoneNumberChange(): void {\n    try {\n      this._setCountry();\n    } catch (e) {\n      // Pass a value to trigger the validator error\n      this.value = this.formattedPhoneNumber().toString();\n    }\n\n    this.propagateChange(this.value);\n    this._changeDetectorRef.markForCheck();\n  }\n\n  private _setCountry() {\n    if (!this.phoneNumber) {\n      this.value = null;\n      return;\n    }\n\n    this.numberInstance = parsePhoneNumberFromString(\n      this.phoneNumber.toString(),\n      this.selectedCountry.iso2.toUpperCase() as CC,\n    );\n\n    this.formatAsYouTypeIfEnabled();\n    this.value = this.numberInstance?.number;\n\n    if (!this.value) throw new Error('Incorrect phone number');\n\n    if (this.numberInstance && this.numberInstance.isValid()) {\n      if (this.phoneNumber !== this.formattedPhoneNumber()) {\n        this.phoneNumber = this.formattedPhoneNumber();\n      }\n      if (\n        this.selectedCountry.iso2 !== this.numberInstance.country &&\n        this.numberInstance.country\n      ) {\n        this.selectedCountry = this.getCountry(this.numberInstance.country);\n        this.countryChanged.emit(this.selectedCountry);\n      }\n    }\n  }\n\n  public onCountrySelect(country: Country, el: HTMLInputElement): void {\n    if (this.phoneNumber) {\n      this.phoneNumber = this.numberInstance?.nationalNumber;\n    }\n    if (this.resetOnChange && this.selectedCountry !== country) {\n      this.reset();\n    }\n\n    this.selectedCountry = country;\n    this.countryChanged.emit(this.selectedCountry);\n\n    this.onPhoneNumberChange();\n    el.focus();\n  }\n\n  public onMenuOpened(): void {\n    if (!this.enableSearch) {\n      return;\n    }\n\n    // Run after Material's deferred menu-item focus so the search input wins.\n    afterNextRender(\n      () => {\n        this.menuSearchInput?.nativeElement.focus();\n      },\n      { injector: this._injector },\n    );\n  }\n\n  public onSearchInputKeydown(event: KeyboardEvent): void {\n    if (event.key === 'Escape') {\n      return;\n    }\n\n    if (\n      event.key === 'Tab' ||\n      event.key.startsWith('Arrow') ||\n      event.key.length === 1\n    ) {\n      event.stopPropagation();\n    }\n  }\n\n  public getCountry(code: CC): Country {\n    return (this.allCountries.find((c) => c.iso2 === code.toLowerCase()) || {\n      name: 'UN',\n      iso2: 'UN',\n      dialCode: undefined,\n      priority: 0,\n      areaCodes: undefined,\n      flagClass: 'UN',\n      placeHolder: '',\n    }) as Country;\n  }\n\n  public onInputKeyPress(event: any): void {\n    const pattern = /[0-9+\\- ]/;\n    if (!pattern.test(event.key)) {\n      event.preventDefault();\n    }\n  }\n\n  protected fetchCountryData(): void {\n    this.countryCodeData.allCountries.forEach((c) => {\n      const country: Country = {\n        name: c[0].toString(),\n        iso2: c[1].toString(),\n        dialCode: c[2].toString(),\n        priority: +c[3] || 0,\n        areaCodes: (c[4] as string[]) || undefined,\n        flagClass: c[1].toString().toUpperCase(),\n        placeHolder: '',\n      };\n\n      if (this.enablePlaceholder) {\n        country.placeHolder = this._getPhoneNumberPlaceHolder(\n          country.iso2.toUpperCase(),\n        );\n      }\n\n      this.allCountries.push(country);\n    });\n  }\n\n  private _getPhoneNumberPlaceHolder(countryISOCode: any): string | undefined {\n    try {\n      return getExampleNumber(countryISOCode, Examples)?.number;\n    } catch (e) {\n      return e as any;\n    }\n  }\n\n  registerOnChange(fn: any): void {\n    this.propagateChange = fn;\n  }\n\n  registerOnTouched(fn: any): void {\n    this.onTouched = fn;\n  }\n\n  setDisabledState(isDisabled: boolean): void {\n    this.disabled = isDisabled;\n    this._changeDetectorRef.markForCheck();\n    this.stateChanges.next(undefined);\n  }\n\n  private _hydrateFromValue(value: any): void {\n    if (!value) {\n      this.numberInstance = undefined;\n      this.phoneNumber = '' as E164Number | NationalNumber;\n      this._previousFormattedNumber = undefined;\n      return;\n    }\n\n    this.numberInstance = parsePhoneNumberFromString(value);\n\n    if (this.numberInstance) {\n      this.phoneNumber = this.formattedPhoneNumber();\n      this._previousFormattedNumber = this.phoneNumber.toString();\n      return;\n    }\n\n    this.phoneNumber = value;\n    this._previousFormattedNumber = value.toString();\n  }\n\n  writeValue(value: any): void {\n    // External control writes should hydrate the view without echoing the value\n    // back through the ControlValueAccessor change callback.\n    this.value = value;\n    this._hydrateFromValue(value);\n\n    if (this.numberInstance) {\n      this._syncSelectedCountryFromNumber();\n    }\n\n    this._changeDetectorRef.markForCheck();\n    this.stateChanges.next();\n  }\n\n  setDescribedByIds(ids: string[]) {\n    this.describedBy = ids.join(' ');\n  }\n\n  onContainerClick(event: MouseEvent): void {\n    if ((event.target as Element).tagName.toLowerCase() !== 'input') {\n      this._elementRef.nativeElement.querySelector('input')!.focus();\n    }\n  }\n\n  reset() {\n    this.phoneNumber = '' as E164Number | NationalNumber;\n    this.propagateChange(null);\n\n    this._changeDetectorRef.markForCheck();\n    this.stateChanges.next(undefined);\n  }\n\n  private formattedPhoneNumber(): E164Number | NationalNumber {\n    if (!this.numberInstance) {\n      return (this.phoneNumber?.toString() || '') as\n        | E164Number\n        | NationalNumber;\n    }\n    switch (this.format) {\n      case 'national':\n        return this.numberInstance.formatNational() as\n          | E164Number\n          | NationalNumber;\n      case 'international':\n        return this.numberInstance.formatInternational() as\n          | E164Number\n          | NationalNumber;\n      default:\n        return this.numberInstance.nationalNumber.toString() as\n          | E164Number\n          | NationalNumber;\n    }\n  }\n\n  private formatAsYouTypeIfEnabled(): void {\n    if (this.format === 'default') {\n      return;\n    }\n    const asYouType: AsYouType = new AsYouType(\n      this.selectedCountry.iso2.toUpperCase() as CC,\n    );\n    // To avoid caret positioning we apply formatting only if the caret is at the end:\n    if (!this.phoneNumber) return;\n\n    if (\n      this.phoneNumber\n        ?.toString()\n        .startsWith(this._previousFormattedNumber || '')\n    ) {\n      this.phoneNumber = asYouType.input(this.phoneNumber.toString()) as\n        | E164Number\n        | NationalNumber;\n    }\n    this._previousFormattedNumber = this.phoneNumber.toString();\n  }\n}\n","<div class=\"mat-tel-input-container\">\n  <button\n    type=\"button\"\n    matRipple\n    matIconPrefix\n    [matMenuTriggerFor]=\"menu\"\n    class=\"country-selector\"\n    [disabled]=\"disabled\"\n    (menuOpened)=\"onMenuOpened()\"\n  >\n    <span\n      class=\"country-selector-flag flag\"\n      [ngClass]=\"selectedCountry.flagClass\"\n    ></span>\n\n    @if (selectedCountry.dialCode) {\n      <span class=\"country-selector-code\">+{{ selectedCountry.dialCode }}</span>\n    }\n  </button>\n\n  <mat-menu\n    #menu=\"matMenu\"\n    class=\"mat-tel-input-overlay-panel\"\n    [backdropClass]=\"'mat-tel-input-overlay-backdrop'\"\n  >\n    @if (enableSearch) {\n      <input\n        #menuSearchInput\n        class=\"country-search\"\n        [(ngModel)]=\"searchCriteria\"\n        type=\"text\"\n        [placeholder]=\"searchPlaceholder\"\n        (click)=\"$event.stopPropagation()\"\n        (keydown)=\"onSearchInputKeydown($event)\"\n      />\n    }\n    @for (country of preferredCountriesInDropDown; track $index) {\n      <button\n        type=\"button\"\n        mat-menu-item\n        class=\"country-list-button\"\n        (click)=\"onCountrySelect(country, focusable)\"\n      >\n        <div class=\"icon-wrapper\">\n          <div class=\"flag\" [ngClass]=\"country.flagClass\"></div>\n        </div>\n        <div class=\"label-wrapper\">\n          {{ country.name }}\n\n          @if (country?.dialCode) {\n            <span [style]=\"!searchCriteria ? 'white-space: nowrap' : ''\">\n              +{{ country.dialCode }}\n\n              @if (country.areaCodes) {\n                {{ country.areaCodes.join(', ') }}\n              }\n            </span>\n          }\n        </div>\n      </button>\n    }\n    @if (preferredCountriesInDropDown.length) {\n      <mat-divider></mat-divider>\n    }\n    @for (country of allCountries | search: searchCriteria; track $index) {\n      <button\n        type=\"button\"\n        mat-menu-item\n        class=\"country-list-button\"\n        (click)=\"onCountrySelect(country, focusable)\"\n      >\n        <div class=\"icon-wrapper\">\n          <div class=\"flag\" [ngClass]=\"country.flagClass\"></div>\n        </div>\n        <div class=\"label-wrapper\">\n          {{ country.name }}\n\n          @if (country?.dialCode) {\n            <span [style]=\"!searchCriteria ? 'white-space: nowrap' : ''\">\n              +{{ country.dialCode }}\n\n              @if (country.areaCodes) {\n                {{ country.areaCodes.join(', ') }}\n              }\n            </span>\n          }\n        </div>\n      </button>\n    }\n  </mat-menu>\n\n  <input\n    class=\"mat-tel-input-input\"\n    matInput\n    type=\"tel\"\n    inputmode=\"tel\"\n    [autocomplete]=\"autocomplete\"\n    [ngClass]=\"cssClass\"\n    (blur)=\"onTouched()\"\n    (keypress)=\"onInputKeyPress($event)\"\n    [(ngModel)]=\"phoneNumber\"\n    (ngModelChange)=\"onPhoneNumberChange()\"\n    [errorStateMatcher]=\"errorStateMatcher\"\n    [placeholder]=\"placeholder || $any(selectedCountry.placeHolder)\"\n    [disabled]=\"disabled\"\n    #focusable\n    [maxlength]=\"maxLength\"\n  />\n</div>\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i1.CountryCode"],"mappings":"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"}