ngx-shout-intl-tel-input
Version:
[](https://github.com/webcat12345/ngx-intl-tel-input/actions/workflows/ci.yml) [
{"version":3,"file":"ngx-shout-intl-tel-input.mjs","sources":["../../../projects/ngx-intl-tel-input/src/lib/enums/search-country-field.enum.ts","../../../projects/ngx-intl-tel-input/src/lib/ngx-intl-tel-input.validator.ts","../../../projects/ngx-intl-tel-input/src/lib/enums/country-iso.enum.ts","../../../projects/ngx-intl-tel-input/src/lib/data/country-code.ts","../../../projects/ngx-intl-tel-input/src/lib/directives/native-element-injector.directive.ts","../../../projects/ngx-intl-tel-input/src/lib/ngx-intl-tel-input.component.ts","../../../projects/ngx-intl-tel-input/src/lib/ngx-intl-tel-input.component.html","../../../projects/ngx-intl-tel-input/src/lib/ngx-intl-tel-input.module.ts","../../../projects/ngx-intl-tel-input/src/lib/enums/phone-number-format.enum.ts","../../../projects/ngx-intl-tel-input/src/public_api.ts","../../../projects/ngx-intl-tel-input/src/ngx-shout-intl-tel-input.ts"],"sourcesContent":["export enum SearchCountryField {\r\n DialCode = 'dialCode',\r\n Iso2 = 'iso2',\r\n Name = 'name',\r\n All = 'all',\r\n}\r\n","import * as lpn from 'libphonenumber-js';\r\n\r\n/*\r\nWe use \"control: any\" instead of \"control: FormControl\" to silence:\r\n\"Property 'nativeElement' does not exist on type 'FormControl'\".\r\nThis happens because I've expanded control with nativeElement via\r\n'NativeElementInjectorDirective' to get an access to the element.\r\nMore about this approach and reasons for this:\r\nhttps://github.com/angular/angular/issues/18025\r\nhttps://stackoverflow.com/a/54075119/1617590\r\n*/\r\nexport const phoneNumberValidator = (control: any) => {\r\n if (!control.value) {\r\n return;\r\n }\r\n // Find <input> inside injected nativeElement and get its \"id\".\r\n const el: HTMLElement = control.nativeElement as HTMLElement;\r\n const inputBox: HTMLInputElement | any = el ? el.querySelector('input[type=\"tel\"]') : undefined;\r\n if (inputBox) {\r\n const id = inputBox.id;\r\n const isCheckValidation = inputBox.getAttribute('validation');\r\n if (isCheckValidation === 'true') {\r\n const isRequired = control.errors && control.errors.required === true;\r\n const error = { validatePhoneNumber: { valid: false } };\r\n\r\n inputBox.setCustomValidity('Invalid field.');\r\n\r\n let number: lpn.PhoneNumber;\r\n\r\n try {\r\n number = lpn.parsePhoneNumberFromString(\r\n control.value.number,\r\n control.value.countryCode\r\n )!;\r\n } catch (e) {\r\n if (isRequired) {\r\n return error;\r\n } else {\r\n inputBox.setCustomValidity('');\r\n }\r\n }\r\n\r\n if (control.value) {\r\n // @ts-ignore\r\n if (!number) {\r\n return error;\r\n } else {\r\n if (\r\n !lpn.isValidPhoneNumber(\r\n control.value.number,\r\n control.value.countryCode\r\n )\r\n ) {\r\n return error;\r\n } else {\r\n inputBox.setCustomValidity('');\r\n }\r\n }\r\n }\r\n } else if (isCheckValidation === 'false') {\r\n inputBox.setCustomValidity('');\r\n\r\n control.clearValidators();\r\n }\r\n }\r\n return;\r\n};\r\n","export enum CountryISO {\r\n Afghanistan = 'af',\r\n Albania = 'al',\r\n Algeria = 'dz',\r\n AmericanSamoa = 'as',\r\n Andorra = 'ad',\r\n Angola = 'ao',\r\n Anguilla = 'ai',\r\n AntiguaAndBarbuda = 'ag',\r\n Argentina = 'ar',\r\n Armenia = 'am',\r\n Aruba = 'aw',\r\n Australia = 'au',\r\n Austria = 'at',\r\n Azerbaijan = 'az',\r\n Bahamas = 'bs',\r\n Bahrain = 'bh',\r\n Bangladesh = 'bd',\r\n Barbados = 'bb',\r\n Belarus = 'by',\r\n Belgium = 'be',\r\n Belize = 'bz',\r\n Benin = 'bj',\r\n Bermuda = 'bm',\r\n Bhutan = 'bt',\r\n Bolivia = 'bo',\r\n BosniaAndHerzegovina = 'ba',\r\n Botswana = 'bw',\r\n Brazil = 'br',\r\n BritishIndianOceanTerritory = 'io',\r\n BritishVirginIslands = 'vg',\r\n Brunei = 'bn',\r\n Bulgaria = 'bg',\r\n BurkinaFaso = 'bf',\r\n Burundi = 'bi',\r\n Cambodia = 'kh',\r\n Cameroon = 'cm',\r\n Canada = 'ca',\r\n CapeVerde = 'cv',\r\n CaribbeanNetherlands = 'bq',\r\n CaymanIslands = 'ky',\r\n CentralAfricanRepublic = 'cf',\r\n Chad = 'td',\r\n Chile = 'cl',\r\n China = 'cn',\r\n ChristmasIsland = 'cx',\r\n Cocos = 'cc',\r\n Colombia = 'co',\r\n Comoros = 'km',\r\n CongoDRCJamhuriYaKidemokrasiaYaKongo = 'cd',\r\n CongoRepublicCongoBrazzaville = 'cg',\r\n CookIslands = 'ck',\r\n CostaRica = 'cr',\r\n CôteDIvoire = 'ci',\r\n Croatia = 'hr',\r\n Cuba = 'cu',\r\n Curaçao = 'cw',\r\n Cyprus = 'cy',\r\n CzechRepublic = 'cz',\r\n Denmark = 'dk',\r\n Djibouti = 'dj',\r\n Dominica = 'dm',\r\n DominicanRepublic = 'do',\r\n Ecuador = 'ec',\r\n Egypt = 'eg',\r\n ElSalvador = 'sv',\r\n EquatorialGuinea = 'gq',\r\n Eritrea = 'er',\r\n Estonia = 'ee',\r\n Ethiopia = 'et',\r\n FalklandIslands = 'fk',\r\n FaroeIslands = 'fo',\r\n Fiji = 'fj',\r\n Finland = 'fi',\r\n France = 'fr',\r\n FrenchGuiana = 'gf',\r\n FrenchPolynesia = 'pf',\r\n Gabon = 'ga',\r\n Gambia = 'gm',\r\n Georgia = 'ge',\r\n Germany = 'de',\r\n Ghana = 'gh',\r\n Gibraltar = 'gi',\r\n Greece = 'gr',\r\n Greenland = 'gl',\r\n Grenada = 'gd',\r\n Guadeloupe = 'gp',\r\n Guam = 'gu',\r\n Guatemala = 'gt',\r\n Guernsey = 'gg',\r\n Guinea = 'gn',\r\n GuineaBissau = 'gw',\r\n Guyana = 'gy',\r\n Haiti = 'ht',\r\n Honduras = 'hn',\r\n HongKong = 'hk',\r\n Hungary = 'hu',\r\n Iceland = 'is',\r\n India = 'in',\r\n Indonesia = 'id',\r\n Iran = 'ir',\r\n Iraq = 'iq',\r\n Ireland = 'ie',\r\n IsleOfMan = 'im',\r\n Israel = 'il',\r\n Italy = 'it',\r\n Jamaica = 'jm',\r\n Japan = 'jp',\r\n Jersey = 'je',\r\n Jordan = 'jo',\r\n Kazakhstan = 'kz',\r\n Kenya = 'ke',\r\n Kiribati = 'ki',\r\n Kosovo = 'xk',\r\n Kuwait = 'kw',\r\n Kyrgyzstan = 'kg',\r\n Laos = 'la',\r\n Latvia = 'lv',\r\n Lebanon = 'lb',\r\n Lesotho = 'ls',\r\n Liberia = 'lr',\r\n Libya = 'ly',\r\n Liechtenstein = 'li',\r\n Lithuania = 'lt',\r\n Luxembourg = 'lu',\r\n Macau = 'mo',\r\n Macedonia = 'mk',\r\n Madagascar = 'mg',\r\n Malawi = 'mw',\r\n Malaysia = 'my',\r\n Maldives = 'mv',\r\n Mali = 'ml',\r\n Malta = 'mt',\r\n MarshallIslands = 'mh',\r\n Martinique = 'mq',\r\n Mauritania = 'mr',\r\n Mauritius = 'mu',\r\n Mayotte = 'yt',\r\n Mexico = 'mx',\r\n Micronesia = 'fm',\r\n Moldova = 'md',\r\n Monaco = 'mc',\r\n Mongolia = 'mn',\r\n Montenegro = 'me',\r\n Montserrat = 'ms',\r\n Morocco = 'ma',\r\n Mozambique = 'mz',\r\n Myanmar = 'mm',\r\n Namibia = 'na',\r\n Nauru = 'nr',\r\n Nepal = 'np',\r\n Netherlands = 'nl',\r\n NewCaledonia = 'nc',\r\n NewZealand = 'nz',\r\n Nicaragua = 'ni',\r\n Niger = 'ne',\r\n Nigeria = 'ng',\r\n Niue = 'nu',\r\n NorfolkIsland = 'nf',\r\n NorthKorea = 'kp',\r\n NorthernMarianaIslands = 'mp',\r\n Norway = 'no',\r\n Oman = 'om',\r\n Pakistan = 'pk',\r\n Palau = 'pw',\r\n Palestine = 'ps',\r\n Panama = 'pa',\r\n PapuaNewGuinea = 'pg',\r\n Paraguay = 'py',\r\n Peru = 'pe',\r\n Philippines = 'ph',\r\n Poland = 'pl',\r\n Portugal = 'pt',\r\n PuertoRico = 'pr',\r\n Qatar = 'qa',\r\n Réunion = 're',\r\n Romania = 'ro',\r\n Russia = 'ru',\r\n Rwanda = 'rw',\r\n SaintBarthélemy = 'bl',\r\n SaintHelena = 'sh',\r\n SaintKittsAndNevis = 'kn',\r\n SaintLucia = 'lc',\r\n SaintMartin = 'mf',\r\n SaintPierreAndMiquelon = 'pm',\r\n SaintVincentAndTheGrenadines = 'vc',\r\n Samoa = 'ws',\r\n SanMarino = 'sm',\r\n SãoToméAndPríncipe = 'st',\r\n SaudiArabia = 'sa',\r\n Senegal = 'sn',\r\n Serbia = 'rs',\r\n Seychelles = 'sc',\r\n SierraLeone = 'sl',\r\n Singapore = 'sg',\r\n SintMaarten = 'sx',\r\n Slovakia = 'sk',\r\n Slovenia = 'si',\r\n SolomonIslands = 'sb',\r\n Somalia = 'so',\r\n SouthAfrica = 'za',\r\n SouthKorea = 'kr',\r\n SouthSudan = 'ss',\r\n Spain = 'es',\r\n SriLanka = 'lk',\r\n Sudan = 'sd',\r\n Suriname = 'sr',\r\n SvalbardAndJanMayen = 'sj',\r\n Swaziland = 'sz',\r\n Sweden = 'se',\r\n Switzerland = 'ch',\r\n Syria = 'sy',\r\n Taiwan = 'tw',\r\n Tajikistan = 'tj',\r\n Tanzania = 'tz',\r\n Thailand = 'th',\r\n TimorLeste = 'tl',\r\n Togo = 'tg',\r\n Tokelau = 'tk',\r\n Tonga = 'to',\r\n TrinidadAndTobago = 'tt',\r\n Tunisia = 'tn',\r\n Turkey = 'tr',\r\n Turkmenistan = 'tm',\r\n TurksAndCaicosIslands = 'tc',\r\n Tuvalu = 'tv',\r\n USVirginIslands = 'vi',\r\n Uganda = 'ug',\r\n Ukraine = 'ua',\r\n UnitedArabEmirates = 'ae',\r\n UnitedKingdom = 'gb',\r\n UnitedStates = 'us',\r\n Uruguay = 'uy',\r\n Uzbekistan = 'uz',\r\n Vanuatu = 'vu',\r\n VaticanCity = 'va',\r\n Venezuela = 've',\r\n Vietnam = 'vn',\r\n WallisAndFutuna = 'wf',\r\n WesternSahara = 'eh',\r\n Yemen = 'ye',\r\n Zambia = 'zm',\r\n Zimbabwe = 'zw',\r\n ÅlandIslands = 'ax',\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { CountryISO } from '../enums/country-iso.enum';\r\n\r\n@Injectable()\r\nexport class CountryCode {\r\n public allCountries = [\r\n ['Afghanistan (افغانستان)', CountryISO.Afghanistan, '93'],\r\n ['Albania (Shqipëri)', CountryISO.Albania, '355'],\r\n ['Algeria (الجزائر)', CountryISO.Algeria, '213'],\r\n ['American Samoa', 'as', '1', 1, ['684']],\r\n ['Andorra', CountryISO.Andorra, '376'],\r\n ['Angola', CountryISO.Angola, '244'],\r\n ['Anguilla', 'ai', '1', 1, ['264']],\r\n ['Antigua and Barbuda', 'ag', '1', 1, ['268']],\r\n ['Argentina', CountryISO.Argentina, '54'],\r\n ['Armenia (Հայաստան)', CountryISO.Armenia, '374'],\r\n ['Aruba', CountryISO.Aruba, '297'],\r\n ['Australia', CountryISO.Australia, '61', 0],\r\n ['Austria (Österreich)', CountryISO.Austria, '43'],\r\n ['Azerbaijan (Azərbaycan)', CountryISO.Azerbaijan, '994'],\r\n ['Bahamas', 'bs', '1', 1, ['242']],\r\n ['Bahrain (البحرين)', CountryISO.Bahrain, '973'],\r\n ['Bangladesh (বাংলাদেশ)', CountryISO.Bangladesh, '880'],\r\n ['Barbados', 'bb', '1', 1, ['246']],\r\n ['Belarus (Беларусь)', CountryISO.Belarus, '375'],\r\n ['Belgium (België)', CountryISO.Belgium, '32'],\r\n ['Belize', CountryISO.Belize, '501'],\r\n ['Benin (Bénin)', CountryISO.Benin, '229'],\r\n ['Bermuda', 'bm', '1', 1, ['441']],\r\n ['Bhutan (འབྲུག)', CountryISO.Bhutan, '975'],\r\n ['Bolivia', CountryISO.Bolivia, '591'],\r\n ['Bosnia and Herzegovina (Босна и Херцеговина)', CountryISO.BosniaAndHerzegovina, '387'],\r\n ['Botswana', CountryISO.Botswana, '267'],\r\n ['Brazil (Brasil)', CountryISO.Brazil, '55'],\r\n ['British Indian Ocean Territory', CountryISO.BritishIndianOceanTerritory, '246'],\r\n ['British Virgin Islands', 'vg', '1', 1, ['284']],\r\n ['Brunei', CountryISO.Brunei, '673'],\r\n ['Bulgaria (България)', CountryISO.Bulgaria, '359'],\r\n ['Burkina Faso', CountryISO.BurkinaFaso, '226'],\r\n ['Burundi (Uburundi)', CountryISO.Burundi, '257'],\r\n ['Cambodia (កម្ពុជា)', CountryISO.Cambodia, '855'],\r\n ['Cameroon (Cameroun)', CountryISO.Cameroon, '237'],\r\n [\r\n 'Canada',\r\n CountryISO.Canada,\r\n '1',\r\n 1,\r\n [\r\n '204',\r\n '226',\r\n '236',\r\n '249',\r\n '250',\r\n '289',\r\n '306',\r\n '343',\r\n '365',\r\n '387',\r\n '403',\r\n '416',\r\n '418',\r\n '431',\r\n '437',\r\n '438',\r\n '450',\r\n '506',\r\n '514',\r\n '519',\r\n '548',\r\n '579',\r\n '581',\r\n '587',\r\n '604',\r\n '613',\r\n '639',\r\n '647',\r\n '672',\r\n '705',\r\n '709',\r\n '742',\r\n '778',\r\n '780',\r\n '782',\r\n '807',\r\n '819',\r\n '825',\r\n '867',\r\n '873',\r\n '902',\r\n '905',\r\n ],\r\n ],\r\n ['Cape Verde (Kabu Verdi)', CountryISO.CapeVerde, '238'],\r\n ['Caribbean Netherlands', CountryISO.CaribbeanNetherlands, '599', 1],\r\n ['Cayman Islands', 'ky', '1', 1, ['345']],\r\n [\r\n 'Central African Republic (République centrafricaine)',\r\n CountryISO.CentralAfricanRepublic,\r\n '236',\r\n ],\r\n ['Chad (Tchad)', CountryISO.Chad, '235'],\r\n ['Chile', CountryISO.Chile, '56'],\r\n ['China (中国)', CountryISO.China, '86'],\r\n ['Christmas Island', CountryISO.ChristmasIsland, '61', 2],\r\n ['Cocos (Keeling) Islands', CountryISO.Cocos, '61', 1],\r\n ['Colombia', CountryISO.Colombia, '57'],\r\n ['Comoros (جزر القمر)', CountryISO.Comoros, '269'],\r\n [\r\n 'Congo (DRC) (Jamhuri ya Kidemokrasia ya Kongo)',\r\n CountryISO.CongoDRCJamhuriYaKidemokrasiaYaKongo,\r\n '243',\r\n ],\r\n ['Congo (Republic) (Congo-Brazzaville)', CountryISO.CongoRepublicCongoBrazzaville, '242'],\r\n ['Cook Islands', CountryISO.CookIslands, '682'],\r\n ['Costa Rica', CountryISO.CostaRica, '506'],\r\n ['Côte d’Ivoire', CountryISO.CôteDIvoire, '225'],\r\n ['Croatia (Hrvatska)', CountryISO.Croatia, '385'],\r\n ['Cuba', CountryISO.Cuba, '53'],\r\n ['Curaçao', CountryISO.Curaçao, '599', 0],\r\n ['Cyprus (Κύπρος)', CountryISO.Cyprus, '357'],\r\n ['Czech Republic (Česká republika)', CountryISO.CzechRepublic, '420'],\r\n ['Denmark (Danmark)', CountryISO.Denmark, '45'],\r\n ['Djibouti', CountryISO.Djibouti, '253'],\r\n ['Dominica', CountryISO.Dominica, '1767'],\r\n [\r\n 'Dominican Republic (República Dominicana)',\r\n CountryISO.DominicanRepublic,\r\n '1',\r\n 2,\r\n ['809', '829', '849'],\r\n ],\r\n ['Ecuador', CountryISO.Ecuador, '593'],\r\n ['Egypt (مصر)', CountryISO.Egypt, '20'],\r\n ['El Salvador', CountryISO.ElSalvador, '503'],\r\n ['Equatorial Guinea (Guinea Ecuatorial)', CountryISO.EquatorialGuinea, '240'],\r\n ['Eritrea', CountryISO.Eritrea, '291'],\r\n ['Estonia (Eesti)', CountryISO.Estonia, '372'],\r\n ['Ethiopia', CountryISO.Ethiopia, '251'],\r\n ['Falkland Islands (Islas Malvinas)', CountryISO.FalklandIslands, '500'],\r\n ['Faroe Islands (Føroyar)', CountryISO.FaroeIslands, '298'],\r\n ['Fiji', CountryISO.Fiji, '679'],\r\n ['Finland (Suomi)', CountryISO.Finland, '358', 0],\r\n ['France', CountryISO.France, '33'],\r\n ['French Guiana (Guyane française)', CountryISO.FrenchGuiana, '594'],\r\n ['French Polynesia (Polynésie française)', CountryISO.FrenchPolynesia, '689'],\r\n ['Gabon', CountryISO.Gabon, '241'],\r\n ['Gambia', CountryISO.Gambia, '220'],\r\n ['Georgia (საქართველო)', CountryISO.Georgia, '995'],\r\n ['Germany (Deutschland)', CountryISO.Germany, '49'],\r\n ['Ghana (Gaana)', CountryISO.Ghana, '233'],\r\n ['Gibraltar', CountryISO.Gibraltar, '350'],\r\n ['Greece (Ελλάδα)', CountryISO.Greece, '30'],\r\n ['Greenland (Kalaallit Nunaat)', CountryISO.Greenland, '299'],\r\n ['Grenada', CountryISO.Grenada, '1473'],\r\n ['Guadeloupe', CountryISO.Guadeloupe, '590', 0],\r\n ['Guam', 'gu', '1', 1, ['671']],\r\n ['Guatemala', CountryISO.Guatemala, '502'],\r\n ['Guernsey', CountryISO.Guernsey, '44', 1, [1481]],\r\n ['Guinea (Guinée)', CountryISO.Guinea, '224'],\r\n ['Guinea-Bissau (Guiné Bissau)', CountryISO.GuineaBissau, '245'],\r\n ['Guyana', CountryISO.Guyana, '592'],\r\n ['Haiti', CountryISO.Haiti, '509'],\r\n ['Honduras', CountryISO.Honduras, '504'],\r\n ['Hong Kong (香港)', CountryISO.HongKong, '852'],\r\n ['Hungary (Magyarország)', CountryISO.Hungary, '36'],\r\n ['Iceland (Ísland)', CountryISO.Iceland, '354'],\r\n ['India (भारत)', CountryISO.India, '91'],\r\n ['Indonesia', CountryISO.Indonesia, '62'],\r\n ['Iran (ایران)', CountryISO.Iran, '98'],\r\n ['Iraq (العراق)', CountryISO.Iraq, '964'],\r\n ['Ireland', CountryISO.Ireland, '353'],\r\n ['Isle of Man', CountryISO.IsleOfMan, '44', 2, [1624]],\r\n ['Israel (ישראל)', CountryISO.Israel, '972'],\r\n ['Italy (Italia)', CountryISO.Italy, '39', 0],\r\n ['Jamaica', 'jm', '1', 1, ['876']],\r\n ['Japan (日本)', CountryISO.Japan, '81'],\r\n ['Jersey', CountryISO.Jersey, '44', 3, [1534]],\r\n ['Jordan (الأردن)', CountryISO.Jordan, '962'],\r\n ['Kazakhstan (Казахстан)', CountryISO.Kazakhstan, '7', 1],\r\n ['Kenya', CountryISO.Kenya, '254'],\r\n ['Kiribati', CountryISO.Kiribati, '686'],\r\n ['Kosovo', CountryISO.Kosovo, '383'],\r\n ['Kuwait (الكويت)', CountryISO.Kuwait, '965'],\r\n ['Kyrgyzstan (Кыргызстан)', CountryISO.Kyrgyzstan, '996'],\r\n ['Laos (ລາວ)', CountryISO.Laos, '856'],\r\n ['Latvia (Latvija)', CountryISO.Latvia, '371'],\r\n ['Lebanon (لبنان)', CountryISO.Lebanon, '961'],\r\n ['Lesotho', CountryISO.Lesotho, '266'],\r\n ['Liberia', CountryISO.Liberia, '231'],\r\n ['Libya (ليبيا)', CountryISO.Libya, '218'],\r\n ['Liechtenstein', CountryISO.Liechtenstein, '423'],\r\n ['Lithuania (Lietuva)', CountryISO.Lithuania, '370'],\r\n ['Luxembourg', CountryISO.Luxembourg, '352'],\r\n ['Macau (澳門)', CountryISO.Macau, '853'],\r\n ['Macedonia (FYROM) (Македонија)', CountryISO.Macedonia, '389'],\r\n ['Madagascar (Madagasikara)', CountryISO.Madagascar, '261'],\r\n ['Malawi', CountryISO.Malawi, '265'],\r\n ['Malaysia', CountryISO.Malaysia, '60'],\r\n ['Maldives', CountryISO.Maldives, '960'],\r\n ['Mali', CountryISO.Mali, '223'],\r\n ['Malta', CountryISO.Malta, '356'],\r\n ['Marshall Islands', CountryISO.MarshallIslands, '692'],\r\n ['Martinique', CountryISO.Martinique, '596'],\r\n ['Mauritania (موريتانيا)', CountryISO.Mauritania, '222'],\r\n ['Mauritius (Moris)', CountryISO.Mauritius, '230'],\r\n ['Mayotte', CountryISO.Mayotte, '262', 1],\r\n ['Mexico (México)', CountryISO.Mexico, '52'],\r\n ['Micronesia', CountryISO.Micronesia, '691'],\r\n ['Moldova (Republica Moldova)', CountryISO.Moldova, '373'],\r\n ['Monaco', CountryISO.Monaco, '377'],\r\n ['Mongolia (Монгол)', CountryISO.Mongolia, '976'],\r\n ['Montenegro (Crna Gora)', CountryISO.Montenegro, '382'],\r\n ['Montserrat', 'ms', '1', 1, ['664']],\r\n ['Morocco (المغرب)', CountryISO.Morocco, '212', 0],\r\n ['Mozambique (Moçambique)', CountryISO.Mozambique, '258'],\r\n ['Myanmar (Burma) (မြန်မာ)', CountryISO.Myanmar, '95'],\r\n ['Namibia (Namibië)', CountryISO.Namibia, '264'],\r\n ['Nauru', CountryISO.Nauru, '674'],\r\n ['Nepal (नेपाल)', CountryISO.Nepal, '977'],\r\n ['Netherlands (Nederland)', CountryISO.Netherlands, '31'],\r\n ['New Caledonia (Nouvelle-Calédonie)', CountryISO.NewCaledonia, '687'],\r\n ['New Zealand', CountryISO.NewZealand, '64'],\r\n ['Nicaragua', CountryISO.Nicaragua, '505'],\r\n ['Niger (Nijar)', CountryISO.Niger, '227'],\r\n ['Nigeria', CountryISO.Nigeria, '234'],\r\n ['Niue', CountryISO.Niue, '683'],\r\n ['Norfolk Island', CountryISO.NorfolkIsland, '672'],\r\n ['North Korea (조선 민주주의 인민 공화국)', CountryISO.NorthKorea, '850'],\r\n ['Northern Mariana Islands', CountryISO.NorthernMarianaIslands, '1670'],\r\n ['Norway (Norge)', CountryISO.Norway, '47', 0],\r\n ['Oman (عُمان)', CountryISO.Oman, '968'],\r\n ['Pakistan (پاکستان)', CountryISO.Pakistan, '92'],\r\n ['Palau', CountryISO.Palau, '680'],\r\n ['Palestine (فلسطين)', CountryISO.Palestine, '970'],\r\n ['Panama (Panamá)', CountryISO.Panama, '507'],\r\n ['Papua New Guinea', CountryISO.PapuaNewGuinea, '675'],\r\n ['Paraguay', CountryISO.Paraguay, '595'],\r\n ['Peru (Perú)', CountryISO.Peru, '51'],\r\n ['Philippines', CountryISO.Philippines, '63'],\r\n ['Poland (Polska)', CountryISO.Poland, '48'],\r\n ['Portugal', CountryISO.Portugal, '351'],\r\n ['Puerto Rico', CountryISO.PuertoRico, '1', 3, ['787', '939']],\r\n ['Qatar (قطر)', CountryISO.Qatar, '974'],\r\n ['Réunion (La Réunion)', CountryISO.Réunion, '262', 0],\r\n ['Romania (România)', CountryISO.Romania, '40'],\r\n ['Russia (Россия)', CountryISO.Russia, '7', 0],\r\n ['Rwanda', CountryISO.Rwanda, '250'],\r\n ['Saint Barthélemy (Saint-Barthélemy)', CountryISO.SaintBarthélemy, '590', 1],\r\n ['Saint Helena', CountryISO.SaintHelena, '290'],\r\n ['Saint Kitts and Nevis', CountryISO.SaintKittsAndNevis, '1869'],\r\n ['Saint Lucia', 'lc', '1', 1, ['758']],\r\n ['Saint Martin (Saint-Martin (partie française))', CountryISO.SaintMartin, '590', 2],\r\n [\r\n 'Saint Pierre and Miquelon (Saint-Pierre-et-Miquelon)',\r\n CountryISO.SaintPierreAndMiquelon,\r\n '508',\r\n ],\r\n ['Saint Vincent and the Grenadines', 'vc', '1', 1, ['784']],\r\n ['Samoa', CountryISO.Samoa, '685'],\r\n ['San Marino', CountryISO.SanMarino, '378'],\r\n ['São Tomé and Príncipe (São Tomé e Príncipe)', CountryISO.SãoToméAndPríncipe, '239'],\r\n ['Saudi Arabia (المملكة العربية السعودية)', CountryISO.SaudiArabia, '966'],\r\n ['Senegal (Sénégal)', CountryISO.Senegal, '221'],\r\n ['Serbia (Србија)', CountryISO.Serbia, '381'],\r\n ['Seychelles', CountryISO.Seychelles, '248'],\r\n ['Sierra Leone', CountryISO.SierraLeone, '232'],\r\n ['Singapore', CountryISO.Singapore, '65'],\r\n ['Sint Maarten', 'sx', '1', 1, ['721']],\r\n ['Slovakia (Slovensko)', CountryISO.Slovakia, '421'],\r\n ['Slovenia (Slovenija)', CountryISO.Slovenia, '386'],\r\n ['Solomon Islands', CountryISO.SolomonIslands, '677'],\r\n ['Somalia (Soomaaliya)', CountryISO.Somalia, '252'],\r\n ['South Africa', CountryISO.SouthAfrica, '27'],\r\n ['South Korea (대한민국)', CountryISO.SouthKorea, '82'],\r\n ['South Sudan (جنوب السودان)', CountryISO.SouthSudan, '211'],\r\n ['Spain (España)', CountryISO.Spain, '34'],\r\n ['Sri Lanka (ශ්රී ලංකාව)', CountryISO.SriLanka, '94'],\r\n ['Sudan (السودان)', CountryISO.Sudan, '249'],\r\n ['Suriname', CountryISO.Suriname, '597'],\r\n ['Svalbard and Jan Mayen', CountryISO.SvalbardAndJanMayen, '47', 1],\r\n ['Swaziland', CountryISO.Swaziland, '268'],\r\n ['Sweden (Sverige)', CountryISO.Sweden, '46'],\r\n ['Switzerland (Schweiz)', CountryISO.Switzerland, '41'],\r\n ['Syria (سوريا)', CountryISO.Syria, '963'],\r\n ['Taiwan (台灣)', CountryISO.Taiwan, '886'],\r\n ['Tajikistan', CountryISO.Tajikistan, '992'],\r\n ['Tanzania', CountryISO.Tanzania, '255'],\r\n ['Thailand (ไทย)', CountryISO.Thailand, '66'],\r\n ['Timor-Leste', CountryISO.TimorLeste, '670'],\r\n ['Togo', CountryISO.Togo, '228'],\r\n ['Tokelau', CountryISO.Tokelau, '690'],\r\n ['Tonga', CountryISO.Tonga, '676'],\r\n ['Trinidad and Tobago', 'tt', '1', 1, ['868']],\r\n ['Tunisia (تونس)', CountryISO.Tunisia, '216'],\r\n ['Turkey (Türkiye)', CountryISO.Turkey, '90'],\r\n ['Turkmenistan', CountryISO.Turkmenistan, '993'],\r\n ['Turks and Caicos Islands', CountryISO.TurksAndCaicosIslands, '1649'],\r\n ['Tuvalu', CountryISO.Tuvalu, '688'],\r\n ['U.S. Virgin Islands', 'vi', '1', 1, ['340']],\r\n ['Uganda', CountryISO.Uganda, '256'],\r\n ['Ukraine (Україна)', CountryISO.Ukraine, '380'],\r\n ['United Arab Emirates (الإمارات العربية المتحدة)', CountryISO.UnitedArabEmirates, '971'],\r\n ['United Kingdom', CountryISO.UnitedKingdom, '44', 0],\r\n ['United States', CountryISO.UnitedStates, '1', 0],\r\n ['Uruguay', CountryISO.Uruguay, '598'],\r\n ['Uzbekistan (Oʻzbekiston)', CountryISO.Uzbekistan, '998'],\r\n ['Vanuatu', CountryISO.Vanuatu, '678'],\r\n ['Vatican City (Città del Vaticano)', CountryISO.VaticanCity, '39', 1],\r\n ['Venezuela', CountryISO.Venezuela, '58'],\r\n ['Vietnam (Việt Nam)', CountryISO.Vietnam, '84'],\r\n ['Wallis and Futuna', CountryISO.WallisAndFutuna, '681'],\r\n ['Western Sahara (الصحراء الغربية)', CountryISO.WesternSahara, '212', 1],\r\n ['Yemen (اليمن)', CountryISO.Yemen, '967'],\r\n ['Zambia', CountryISO.Zambia, '260'],\r\n ['Zimbabwe', CountryISO.Zimbabwe, '263'],\r\n ['Åland Islands', CountryISO.ÅlandIslands, '358', 1],\r\n ];\r\n}\r\n","import { Directive, ElementRef, OnInit } from '@angular/core';\r\nimport { NgControl } from '@angular/forms';\r\n\r\n/*\r\n\"Property 'nativeElement' does not exist on type 'FormControl'\".\r\n'NativeElementInjectorDirective' injects nativeElement to each control,\r\nso we can access it from inside validator for example.\r\nMore about this approach and reasons for this:\r\nhttps://github.com/angular/angular/issues/18025\r\nhttps://stackoverflow.com/a/54075119/1617590\r\n*/\r\n@Directive({\r\n // tslint:disable-next-line: directive-selector\r\n selector: '[ngModel], [formControl], [formControlName]',\r\n standalone: false\r\n})\r\nexport class NativeElementInjectorDirective implements OnInit {\r\n constructor(private controlDir: NgControl, private host: ElementRef<HTMLFormElement>) {}\r\n ngOnInit() {\r\n if (this.controlDir.control) {\r\n // @ts-ignore\r\n this.controlDir.control['nativeElement'] = this.host.nativeElement;\r\n }\r\n }\r\n}\r\n","import * as lpn from 'libphonenumber-js';\r\nimport examples from 'libphonenumber-js/mobile/examples'\r\nimport {\r\n Component,\r\n ElementRef,\r\n EventEmitter,\r\n forwardRef,\r\n Input,\r\n OnChanges,\r\n OnInit,\r\n Output,\r\n SimpleChanges,\r\n ViewChild,\r\n} from '@angular/core';\r\nimport { NG_VALIDATORS, NG_VALUE_ACCESSOR } from '@angular/forms';\r\n\r\nimport { setTheme } from 'ngx-bootstrap/utils';\r\n\r\nimport { CountryISO } from './enums/country-iso.enum';\r\nimport { SearchCountryField } from './enums/search-country-field.enum';\r\nimport { ChangeData } from './interfaces/change-data';\r\nimport { Country } from './model/country.model';\r\nimport { phoneNumberValidator } from './ngx-intl-tel-input.validator';\r\nimport { PhoneNumberFormat } from './enums/phone-number-format.enum';\r\nimport {CountryCode} from './data/country-code';\r\nimport {NumberFormat} from 'libphonenumber-js/types';\r\n\r\n@Component({\r\n // tslint:disable-next-line: component-selector\r\n selector: 'ngx-intl-tel-input',\r\n templateUrl: './ngx-intl-tel-input.component.html',\r\n styleUrls: ['./bootstrap-dropdown.css', './ngx-intl-tel-input.component.css'],\r\n standalone: false,\r\n providers: [\r\n CountryCode,\r\n {\r\n provide: NG_VALUE_ACCESSOR,\r\n // tslint:disable-next-line:no-forward-ref\r\n useExisting: forwardRef(() => NgxIntlTelInputComponent),\r\n multi: true,\r\n },\r\n {\r\n provide: NG_VALIDATORS,\r\n useValue: phoneNumberValidator,\r\n multi: true,\r\n },\r\n ],\r\n})\r\nexport class NgxIntlTelInputComponent implements OnInit, OnChanges {\r\n @Input() value: string | undefined = '';\r\n @Input() preferredCountries: Array<string> = [];\r\n @Input() enablePlaceholder = true;\r\n @Input() customPlaceholder: string;\r\n @Input() numberFormat: NumberFormat = 'INTERNATIONAL';\r\n @Input() cssClass = 'form-control';\r\n @Input() onlyCountries: Array<string> = [];\r\n @Input() enableAutoCountrySelect = true;\r\n @Input() searchCountryFlag = false;\r\n @Input() searchCountryField: SearchCountryField[] = [SearchCountryField.All];\r\n @Input() searchCountryPlaceholder = 'Search Country';\r\n @Input() maxLength: number;\r\n @Input() selectFirstCountry = true;\r\n @Input() selectedCountryISO: CountryISO;\r\n @Input() phoneValidation = true;\r\n @Input() inputId = 'phone';\r\n @Input() separateDialCode = false;\r\n separateDialCodeClass: string;\r\n\r\n @Output() readonly countryChange = new EventEmitter<Country>();\r\n\r\n selectedCountry: Country = {\r\n areaCodes: undefined,\r\n dialCode: '',\r\n htmlId: '',\r\n flagClass: '',\r\n iso2: '',\r\n name: '',\r\n placeHolder: '',\r\n priority: 0,\r\n };\r\n\r\n phoneNumber: string | undefined = '';\r\n allCountries: Array<Country> = [];\r\n preferredCountriesInDropDown: Array<Country> = [];\r\n // Has to be 'any' to prevent a need to install @types/google-libphonenumber by the package user...\r\n phoneUtil = lpn;\r\n disabled = false;\r\n errors: Array<any> = ['Phone number is required.'];\r\n countrySearchText = '';\r\n\r\n @ViewChild('countryList') countryList: ElementRef;\r\n\r\n onTouched = () => {};\r\n propagateChange = (_: ChangeData) => {};\r\n\r\n constructor(private countryCodeData: CountryCode) {\r\n // If this is not set, ngx-bootstrap will try to use the bs3 CSS (which is not what we've embedded) and will\r\n // Add the wrong classes and such\r\n setTheme('bs4');\r\n }\r\n\r\n ngOnInit() {\r\n this.init();\r\n }\r\n\r\n ngOnChanges(changes: SimpleChanges) {\r\n const selectedISO = changes['selectedCountryISO'];\r\n if (\r\n this.allCountries &&\r\n selectedISO &&\r\n selectedISO.currentValue !== selectedISO.previousValue\r\n ) {\r\n this.updateSelectedCountry();\r\n }\r\n if (changes['preferredCountries']) {\r\n this.updatePreferredCountries();\r\n }\r\n this.checkSeparateDialCodeStyle();\r\n }\r\n\r\n /*\r\n This is a wrapper method to avoid calling this.ngOnInit() in writeValue().\r\n Ref: http://codelyzer.com/rules/no-life-cycle-call/\r\n */\r\n init() {\r\n this.fetchCountryData();\r\n if (this.preferredCountries.length) {\r\n this.updatePreferredCountries();\r\n }\r\n if (this.onlyCountries.length) {\r\n this.allCountries = this.allCountries.filter(c => this.onlyCountries.includes(c.iso2));\r\n }\r\n if (this.selectFirstCountry) {\r\n if (this.preferredCountriesInDropDown.length) {\r\n this.setSelectedCountry(this.preferredCountriesInDropDown[0]);\r\n } else {\r\n this.setSelectedCountry(this.allCountries[0]);\r\n }\r\n }\r\n this.updateSelectedCountry();\r\n this.checkSeparateDialCodeStyle();\r\n }\r\n\r\n setSelectedCountry(country: Country) {\r\n this.selectedCountry = country;\r\n this.countryChange.emit(country);\r\n }\r\n\r\n /**\r\n * Search country based on country name, iso2, dialCode or all of them.\r\n */\r\n public searchCountry() {\r\n if (!this.countrySearchText) {\r\n this.countryList.nativeElement.querySelector('.iti__country-list li').scrollIntoView({\r\n behavior: 'smooth',\r\n block: 'nearest',\r\n inline: 'nearest',\r\n });\r\n return;\r\n }\r\n const countrySearchTextLower = this.countrySearchText.toLowerCase();\r\n // @ts-ignore\r\n const country = this.allCountries.filter(c => {\r\n if (this.searchCountryField.indexOf(SearchCountryField.All) > -1) {\r\n // Search in all fields\r\n if (c.iso2.toLowerCase().startsWith(countrySearchTextLower)) {\r\n return c;\r\n }\r\n if (c.name.toLowerCase().startsWith(countrySearchTextLower)) {\r\n return c;\r\n }\r\n if (c.dialCode.startsWith(this.countrySearchText)) {\r\n return c;\r\n }\r\n } else {\r\n // Or search by specific SearchCountryField(s)\r\n if (this.searchCountryField.indexOf(SearchCountryField.Iso2) > -1) {\r\n if (c.iso2.toLowerCase().startsWith(countrySearchTextLower)) {\r\n return c;\r\n }\r\n }\r\n if (this.searchCountryField.indexOf(SearchCountryField.Name) > -1) {\r\n if (c.name.toLowerCase().startsWith(countrySearchTextLower)) {\r\n return c;\r\n }\r\n }\r\n if (this.searchCountryField.indexOf(SearchCountryField.DialCode) > -1) {\r\n if (c.dialCode.startsWith(this.countrySearchText)) {\r\n return c;\r\n }\r\n }\r\n }\r\n });\r\n\r\n if (country.length > 0) {\r\n const el = this.countryList.nativeElement.querySelector('#' + country[0].htmlId);\r\n if (el) {\r\n el.scrollIntoView({\r\n behavior: 'smooth',\r\n block: 'nearest',\r\n inline: 'nearest',\r\n });\r\n }\r\n }\r\n\r\n this.checkSeparateDialCodeStyle();\r\n }\r\n\r\n public onPhoneNumberChange(): void {\r\n let countryCode: string | undefined;\r\n // Handle the case where the user sets the value programatically based on a persisted ChangeData obj.\r\n if (this.phoneNumber && typeof this.phoneNumber === 'object') {\r\n const numberObj: ChangeData = this.phoneNumber;\r\n this.phoneNumber = numberObj.number;\r\n countryCode = numberObj.countryCode;\r\n }\r\n\r\n this.value = this.phoneNumber;\r\n countryCode = countryCode || this.selectedCountry.iso2;\r\n\r\n const number = this.getParsedNumber(this.phoneNumber!, countryCode);\r\n\r\n // auto select country based on the extension (and areaCode if needed) (e.g select Canada if number starts with +1 416)\r\n if (this.enableAutoCountrySelect) {\r\n countryCode =\r\n number && number.getPossibleCountries()[0]\r\n ? // @ts-ignore\r\n this.getCountryIsoCode(number.getPossibleCountries()[0], number)\r\n : this.selectedCountry.iso2;\r\n if (countryCode && countryCode !== this.selectedCountry.iso2) {\r\n const newCountry = this.allCountries\r\n .slice()\r\n .sort((a, b) => {\r\n return a.priority - b.priority;\r\n })\r\n .find(c => c.iso2 === countryCode);\r\n if (newCountry) {\r\n this.selectedCountry = newCountry;\r\n }\r\n }\r\n }\r\n countryCode = countryCode ? countryCode : this.selectedCountry.iso2;\r\n\r\n this.checkSeparateDialCodeStyle();\r\n\r\n if (!this.value) {\r\n // Reason: avoid https://stackoverflow.com/a/54358133/1617590\r\n // tslint:disable-next-line: no-null-keyword\r\n // @ts-ignore\r\n this.propagateChange(null);\r\n } else {\r\n const intlNo = number\r\n ? number.format('INTERNATIONAL')\r\n : '';\r\n\r\n // parse phoneNumber if separate dial code is needed\r\n if (this.separateDialCode && intlNo) {\r\n this.value = this.removeDialCode(intlNo);\r\n }\r\n\r\n this.propagateChange({\r\n number: this.value,\r\n internationalNumber: intlNo,\r\n nationalNumber: number ? number.format('NATIONAL') : '',\r\n e164Number: number ? number.format('E.164') : '',\r\n countryCode: countryCode.toUpperCase(),\r\n dialCode: '+' + this.selectedCountry.dialCode,\r\n });\r\n }\r\n }\r\n\r\n public onCountrySelect(country: Country, el: { focus: () => void }): void {\r\n this.setSelectedCountry(country);\r\n\r\n this.checkSeparateDialCodeStyle();\r\n\r\n if (this.phoneNumber && this.phoneNumber.length > 0) {\r\n this.value = this.phoneNumber;\r\n const number = this.getParsedNumber(this.phoneNumber, this.selectedCountry.iso2);\r\n const intlNo = number\r\n ? number.format('INTERNATIONAL')\r\n : '';\r\n // parse phoneNumber if separate dial code is needed\r\n if (this.separateDialCode && intlNo) {\r\n this.value = this.removeDialCode(intlNo);\r\n }\r\n\r\n this.propagateChange({\r\n number: this.value,\r\n internationalNumber: intlNo,\r\n nationalNumber: number ? number.format('NATIONAL') : '',\r\n e164Number: number ? number.format('E.164') : '',\r\n countryCode: this.selectedCountry.iso2.toUpperCase(),\r\n dialCode: '+' + this.selectedCountry.dialCode,\r\n });\r\n } else {\r\n // Reason: avoid https://stackoverflow.com/a/54358133/1617590\r\n // tslint:disable-next-line: no-null-keyword\r\n // @ts-ignore\r\n this.propagateChange(null);\r\n }\r\n\r\n el.focus();\r\n }\r\n\r\n public onInputKeyPress(event: KeyboardEvent): void {\r\n const allowedChars = /[0-9\\+\\-\\(\\)\\ ]/;\r\n const allowedCtrlChars = /[axcv]/; // Allows copy-pasting\r\n const allowedOtherKeys = [\r\n 'ArrowLeft',\r\n 'ArrowUp',\r\n 'ArrowRight',\r\n 'ArrowDown',\r\n 'Home',\r\n 'End',\r\n 'Insert',\r\n 'Delete',\r\n 'Backspace',\r\n ];\r\n\r\n if (\r\n !allowedChars.test(event.key) &&\r\n !(event.ctrlKey && allowedCtrlChars.test(event.key)) &&\r\n !allowedOtherKeys.includes(event.key)\r\n ) {\r\n event.preventDefault();\r\n }\r\n }\r\n\r\n registerOnChange(fn: any): void {\r\n this.propagateChange = fn;\r\n }\r\n\r\n registerOnTouched(fn: any) {\r\n this.onTouched = fn;\r\n }\r\n\r\n setDisabledState(isDisabled: boolean): void {\r\n this.disabled = isDisabled;\r\n }\r\n\r\n writeValue(obj: any): void {\r\n if (obj === undefined) {\r\n this.init();\r\n }\r\n this.phoneNumber = obj;\r\n setTimeout(() => {\r\n this.onPhoneNumberChange();\r\n }, 1);\r\n }\r\n\r\n resolvePlaceholder(): string {\r\n let placeholder = '';\r\n if (this.customPlaceholder) {\r\n placeholder = this.customPlaceholder;\r\n } else if (this.selectedCountry.placeHolder) {\r\n placeholder = this.selectedCountry.placeHolder;\r\n if (this.separateDialCode) {\r\n placeholder = this.removeDialCode(placeholder);\r\n }\r\n }\r\n return placeholder;\r\n }\r\n\r\n /* --------------------------------- Helpers -------------------------------- */\r\n /**\r\n * Returns parse PhoneNumber object.\r\n * @param phoneNumber string\r\n * @param countryCode string\r\n */\r\n private getParsedNumber(phoneNumber: string, countryCode: string): lpn.PhoneNumber {\r\n let number: lpn.PhoneNumber;\r\n try {\r\n number = this.phoneUtil.parsePhoneNumberFromString(phoneNumber, countryCode.toUpperCase() as lpn.CountryCode)!;\r\n } catch (e) {}\r\n // @ts-ignore\r\n return number;\r\n }\r\n\r\n /**\r\n * Adjusts input alignment based on the dial code presentation style.\r\n */\r\n private checkSeparateDialCodeStyle() {\r\n if (this.separateDialCode && this.selectedCountry) {\r\n const cntryCd = this.selectedCountry.dialCode;\r\n this.separateDialCodeClass = 'separate-dial-code iti-sdc-' + (cntryCd.length + 1);\r\n } else {\r\n this.separateDialCodeClass = '';\r\n }\r\n }\r\n\r\n /**\r\n * Cleans dialcode from phone number string.\r\n * @param phoneNumber string\r\n */\r\n private removeDialCode(phoneNumber: string): string {\r\n const number = this.getParsedNumber(phoneNumber, this.selectedCountry.iso2);\r\n phoneNumber = number.format(this.numberFormat);\r\n if (phoneNumber.startsWith('+') && this.separateDialCode) {\r\n phoneNumber = phoneNumber.substr(phoneNumber.indexOf(' ') + 1);\r\n }\r\n return phoneNumber;\r\n }\r\n\r\n /**\r\n * Sifts through all countries and returns iso code of the primary country\r\n * based on the number provided.\r\n * @param countryCode country code in number format\r\n * @param number PhoneNumber object\r\n */\r\n private getCountryIsoCode(countryCode: number, number: lpn.PhoneNumber): string | undefined {\r\n // Will use this to match area code from the first numbers\r\n // @ts-ignore\r\n const rawNumber = number.number;\r\n // List of all countries with countryCode (can be more than one. e.x. US, CA, DO, PR all have +1 countryCode)\r\n const countries = this.allCountries.filter(c => c.dialCode === countryCode.toString());\r\n // Main country is the country, which has no areaCodes specified in country-code.ts file.\r\n const mainCountry = countries.find(c => c.areaCodes === undefined);\r\n // Secondary countries are all countries, which have areaCodes specified in country-code.ts file.\r\n const secondaryCountries = countries.filter(c => c.areaCodes !== undefined);\r\n let matchedCountry = mainCountry ? mainCountry.iso2 : undefined;\r\n\r\n /*\r\n Iterate over each secondary country and check if nationalNumber starts with any of areaCodes available.\r\n If no matches found, fallback to the main country.\r\n */\r\n secondaryCountries.forEach(country => {\r\n // @ts-ignore\r\n country.areaCodes.forEach(areaCode => {\r\n if (rawNumber.startsWith(areaCode)) {\r\n matchedCountry = country.iso2;\r\n }\r\n });\r\n });\r\n\r\n return matchedCountry;\r\n }\r\n\r\n /**\r\n * Gets formatted example phone number from phoneUtil.\r\n * @param countryCode string\r\n */\r\n protected getPhoneNumberPlaceHolder(countryCode: lpn.CountryCode): string {\r\n try {\r\n return this.phoneUtil.getExampleNumber(countryCode, examples)!.format(this.numberFormat);\r\n } catch (e) {\r\n // @ts-ignore\r\n return e;\r\n }\r\n }\r\n\r\n /**\r\n * Clearing the list to avoid duplicates (https://github.com/webcat12345/ngx-intl-tel-input/issues/248)\r\n */\r\n protected fetchCountryData(): void {\r\n this.allCountries = [];\r\n\r\n this.countryCodeData.allCountries.forEach(c => {\r\n const country: Country = {\r\n name: c[0].toString(),\r\n iso2: c[1].toString(),\r\n dialCode: c[2].toString(),\r\n priority: +c[3] || 0,\r\n areaCodes: (c[4] as string[]) || undefined,\r\n htmlId: `iti-0__item-${c[1].toString()}`,\r\n flagClass: `iti__${c[1].toString().toLocaleLowerCase()}`,\r\n placeHolder: '',\r\n };\r\n\r\n if (this.enablePlaceholder) {\r\n country.placeHolder = this.getPhoneNumberPlaceHolder(country.iso2.toUpperCase() as lpn.CountryCode);\r\n }\r\n\r\n this.allCountries.push(country);\r\n });\r\n }\r\n\r\n /**\r\n * Populates preferredCountriesInDropDown with prefferred countries.\r\n */\r\n private updatePreferredCountries() {\r\n if (this.preferredCountries.length) {\r\n this.preferredCountriesInDropDown = [];\r\n this.preferredCountries.forEach(iso2 => {\r\n const preferredCountry = this.allCountries.filter(c => {\r\n return c.iso2 === iso2;\r\n });\r\n\r\n this.preferredCountriesInDropDown.push(preferredCountry[0]);\r\n });\r\n }\r\n }\r\n\r\n /**\r\n * Updates selectedCountry.\r\n */\r\n private updateSelectedCountry() {\r\n if (this.selectedCountryISO) {\r\n // @ts-ignore\r\n this.selectedCountry = this.allCountries.find(c => {\r\n return c.iso2.toLowerCase() === this.selectedCountryISO.toLowerCase();\r\n });\r\n if (this.selectedCountry) {\r\n if (this.phoneNumber) {\r\n this.onPhoneNumberChange();\r\n } else {\r\n // Reason: avoid https://stackoverflow.com/a/54358133/1617590\r\n // tslint:disable-next-line: no-null-keyword\r\n // @ts-ignore\r\n this.propagateChange(null);\r\n }\r\n }\r\n }\r\n }\r\n}\r\n","<div class=\"iti iti--allow-dropdown\" [ngClass]=\"separateDialCodeClass\">\r\n <div\r\n class=\"iti__flag-container\"\r\n dropdown\r\n [ngClass]=\"{ disabled: disabled }\"\r\n [isDisabled]=\"disabled\"\r\n >\r\n <div class=\"iti__selected-flag dropdown-toggle\" dropdownToggle>\r\n <div class=\"iti__flag\" [ngClass]=\"selectedCountry.flagClass || ''\"></div>\r\n <div *ngIf=\"separateDialCode\" class=\"selected-dial-code\">+{{ selectedCountry.dialCode }}</div>\r\n <div class=\"iti__arrow\"></div>\r\n </div>\r\n <div *dropdownMenu class=\"dropdown-menu iti__dropdown-content\">\r\n <div class=\"search-container\" *ngIf=\"searchCountryFlag && searchCountryField\">\r\n <input\r\n id=\"country-search-box\"\r\n [(ngModel)]=\"countrySearchText\"\r\n (keyup)=\"searchCountry()\"\r\n (click)=\"$event.stopPropagation()\"\r\n [placeholder]=\"searchCountryPlaceholder\"\r\n autofocus\r\n />\r\n </div>\r\n <ul class=\"iti__country-list\" #countryList>\r\n <li\r\n class=\"iti__country iti__preferred\"\r\n *ngFor=\"let country of preferredCountriesInDropDown\"\r\n (click)=\"onCountrySelect(country, focusable)\"\r\n [id]=\"country.htmlId + '-preferred'\"\r\n >\r\n <div class=\"iti__flag-box\">\r\n <div class=\"iti__flag\" [ngClass]=\"country.flagClass\"></div>\r\n </div>\r\n <span class=\"iti__country-name\">{{ country.name }}</span>\r\n <span class=\"iti__dial-code\">+{{ country.dialCode }}</span>\r\n </li>\r\n <li class=\"iti__divider\" *ngIf=\"preferredCountriesInDropDown?.length\"></li>\r\n <li\r\n class=\"iti__country iti__standard\"\r\n *ngFor=\"let country of allCountries\"\r\n (click)=\"onCountrySelect(country, focusable)\"\r\n [id]=\"country.htmlId\"\r\n >\r\n <div class=\"iti__flag-box\">\r\n <div class=\"iti__flag\" [ngClass]=\"country.flagClass\"></div>\r\n </div>\r\n <span class=\"iti__country-name\">{{ country.name }}</span>\r\n <span class=\"iti__dial-code\">+{{ country.dialCode }}</span>\r\n </li>\r\n </ul>\r\n </div>\r\n </div>\r\n <input\r\n type=\"tel\"\r\n [id]=\"inputId\"\r\n autocomplete=\"off\"\r\n class=\"iti__tel-input\"\r\n [ngClass]=\"cssClass\"\r\n (blur)=\"onTouched()\"\r\n (keypress)=\"onInputKeyPress($event)\"\r\n [(ngModel)]=\"phoneNumber\"\r\n (ngModelChange)=\"onPhoneNumberChange()\"\r\n [disabled]=\"disabled\"\r\n [placeholder]=\"resolvePlaceholder()\"\r\n [attr.maxLength]=\"maxLength\"\r\n [attr.validation]=\"phoneValidation\"\r\n #focusable\r\n />\r\n</div>\r\n","import { BsDropdownModule } from 'ngx-bootstrap/dropdown';\r\n\r\nimport { CommonModule } from '@angular/common';\r\nimport { NgModule, ModuleWithProviders } from '@angular/core';\r\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\r\n\r\nimport { NativeElementInjectorDirective } from './directives/native-element-injector.directive';\r\nimport { NgxIntlTelInputComponent } from './ngx-intl-tel-input.component';\r\n\r\nexport const dropdownModuleForRoot: ModuleWithProviders<BsDropdownModule> =\r\n BsDropdownModule.forRoot();\r\n\r\n@NgModule({\r\n declarations: [NgxIntlTelInputComponent, NativeElementInjectorDirective],\r\n imports: [CommonModule, FormsModule, ReactiveFormsModule, dropdownModuleForRoot],\r\n exports: [NgxIntlTelInputComponent, NativeElementInjectorDirective],\r\n})\r\nexport class NgxIntlTelInputModule {}\r\n","export enum PhoneNumberFormat {\r\n International = 'INTERNATIONAL',\r\n National = 'NATIONAL',\r\n}\r\n","/*\r\n * Public API Surface of ngx-intl-tel-input\r\n */\r\n\r\nexport * from './lib/ngx-intl-tel-input.component';\r\nexport * from './lib/directives/native-element-injector.directive';\r\nexport * from './lib/ngx-intl-tel-input.module';\r\nexport * from './lib/enums/country-iso.enum';\r\nexport * from './lib/enums/search-country-field.enum';\r\nexport * from './lib/enums/phone-number-format.enum';\r\nexport * from './lib/interfaces/change-data';\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":["i1","i1.CountryCode","i5.NativeElementInjectorDirective"],"mappings":"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"}