New Case Study:See how Anthropic automated 95% of dependency reviews with Socket.Learn More
Socket
Sign inDemoInstall
Socket

ngx-intl-tel-input

Package Overview
Dependencies
Maintainers
3
Versions
67
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

ngx-intl-tel-input - npm Package Compare versions

Comparing version 2.2.0 to 2.2.1

ngx-intl-tel-input-2.2.1.tgz

2

bundles/ngx-intl-tel-input.umd.min.js

@@ -1,2 +0,2 @@

!function(a,e){"object"==typeof exports&&"undefined"!=typeof module?e(exports,require("google-libphonenumber"),require("@angular/core"),require("@angular/common"),require("ngx-bootstrap"),require("@angular/forms")):"function"==typeof define&&define.amd?define("ngx-intl-tel-input",["exports","google-libphonenumber","@angular/core","@angular/common","ngx-bootstrap","@angular/forms"],e):e(a["ngx-intl-tel-input"]={},a["^3"][2][1],a.ng.core,a.ng.common,a["^3"][1][3],a.ng.forms)}(this,function(a,o,e,n,i,t){"use strict";var r=function(){function a(){}return a.decorators=[{type:e.Injectable,args:[{providedIn:"root"}]}],a.ctorParameters=function(){return[]},a.ngInjectableDef=e.defineInjectable({factory:function(){return new a},token:a,providedIn:"root"}),a}(),s={Afghanistan:"af",Albania:"al",Algeria:"dz",AmericanSamoa:"as",Andorra:"ad",Angola:"ao",Anguilla:"ai",AntiguaAndBarbuda:"ag",Argentina:"ar",Armenia:"am",Aruba:"aw",Australia:"au",Austria:"at",Azerbaijan:"az",Bahamas:"bs",Bahrain:"bh",Bangladesh:"bd",Barbados:"bb",Belarus:"by",Belgium:"be",Belize:"bz",Benin:"bj",Bermuda:"bm",Bhutan:"bt",Bolivia:"bo",BosniaAndHerzegovina:"ba",Botswana:"bw",Brazil:"br",BritishIndianOceanTerritory:"io",BritishVirginIslands:"vg",Brunei:"bn",Bulgaria:"bg",BurkinaFaso:"bf",Burundi:"bi",Cambodia:"kh",Cameroon:"cm",Canada:"ca",CapeVerde:"cv",CaribbeanNetherlands:"bq",CaymanIslands:"ky",CentralAfricanRepublic:"cf",Chad:"td",Chile:"cl",China:"cn",ChristmasIsland:"cx",Cocos:"cc",Colombia:"co",Comoros:"km",CongoDRCJamhuriYaKidemokrasiaYaKongo:"cd",CongoRepublicCongoBrazzaville:"cg",CookIslands:"ck",CostaRica:"cr","CôteDIvoire":"ci",Croatia:"hr",Cuba:"cu","Curaçao":"cw",Cyprus:"cy",CzechRepublic:"cz",Denmark:"dk",Djibouti:"dj",Dominica:"dm",DominicanRepublic:"do",Ecuador:"ec",Egypt:"eg",ElSalvador:"sv",EquatorialGuinea:"gq",Eritrea:"er",Estonia:"ee",Ethiopia:"et",FalklandIslands:"fk",FaroeIslands:"fo",Fiji:"fj",Finland:"fi",France:"fr",FrenchGuiana:"gf",FrenchPolynesia:"pf",Gabon:"ga",Gambia:"gm",Georgia:"ge",Germany:"de",Ghana:"gh",Gibraltar:"gi",Greece:"gr",Greenland:"gl",Grenada:"gd",Guadeloupe:"gp",Guam:"gu",Guatemala:"gt",Guernsey:"gg",Guinea:"gn",GuineaBissau:"gw",Guyana:"gy",Haiti:"ht",Honduras:"hn",HongKong:"hk",Hungary:"hu",Iceland:"is",India:"in",Indonesia:"id",Iran:"ir",Iraq:"iq",Ireland:"ie",IsleOfMan:"im",Israel:"il",Italy:"it",Jamaica:"jm",Japan:"jp",Jersey:"je",Jordan:"jo",Kazakhstan:"kz",Kenya:"ke",Kiribati:"ki",Kosovo:"xk",Kuwait:"kw",Kyrgyzstan:"kg",Laos:"la",Latvia:"lv",Lebanon:"lb",Lesotho:"ls",Liberia:"lr",Libya:"ly",Liechtenstein:"li",Lithuania:"lt",Luxembourg:"lu",Macau:"mo",Macedonia:"mk",Madagascar:"mg",Malawi:"mw",Malaysia:"my",Maldives:"mv",Mali:"ml",Malta:"mt",MarshallIslands:"mh",Martinique:"mq",Mauritania:"mr",Mauritius:"mu",Mayotte:"yt",Mexico:"mx",Micronesia:"fm",Moldova:"md",Monaco:"mc",Mongolia:"mn",Montenegro:"me",Montserrat:"ms",Morocco:"ma",Mozambique:"mz",Myanmar:"mm",Namibia:"na",Nauru:"nr",Nepal:"np",Netherlands:"nl",NewCaledonia:"nc",NewZealand:"nz",Nicaragua:"ni",Niger:"ne",Nigeria:"ng",Niue:"nu",NorfolkIsland:"nf",NorthKorea:"kp",NorthernMarianaIslands:"mp",Norway:"no",Oman:"om",Pakistan:"pk",Palau:"pw",Palestine:"ps",Panama:"pa",PapuaNewGuinea:"pg",Paraguay:"py",Peru:"pe",Philippines:"ph",Poland:"pl",Portugal:"pt",PuertoRico:"pr",Qatar:"qa","Réunion":"re",Romania:"ro",Russia:"ru",Rwanda:"rw","SaintBarthélemy":"bl",SaintHelena:"sh",SaintKittsAndNevis:"kn",SaintLucia:"lc",SaintMartin:"mf",SaintPierreAndMiquelon:"pm",SaintVincentAndTheGrenadines:"vc",Samoa:"ws",SanMarino:"sm","SãoToméAndPríncipe":"st",SaudiArabia:"sa",Senegal:"sn",Serbia:"rs",Seychelles:"sc",SierraLeone:"sl",Singapore:"sg",SintMaarten:"sx",Slovakia:"sk",Slovenia:"si",SolomonIslands:"sb",Somalia:"so",SouthAfrica:"za",SouthKorea:"kr",SouthSudan:"ss",Spain:"es",SriLanka:"lk",Sudan:"sd",Suriname:"sr",SvalbardAndJanMayen:"sj",Swaziland:"sz",Sweden:"se",Switzerland:"ch",Syria:"sy",Taiwan:"tw",Tajikistan:"tj",Tanzania:"tz",Thailand:"th",TimorLeste:"tl",Togo:"tg",Tokelau:"tk",Tonga:"to",TrinidadAndTobago:"tt",Tunisia:"tn",Turkey:"tr",Turkmenistan:"tm",TurksAndCaicosIslands:"tc",Tuvalu:"tv",USVirginIslands:"vi",Uganda:"ug",Ukraine:"ua",UnitedArabEmirates:"ae",UnitedKingdom:"gb",UnitedStates:"us",Uruguay:"uy",Uzbekistan:"uz",Vanuatu:"vu",VaticanCity:"va",Venezuela:"ve",Vietnam:"vn",WallisAndFutuna:"wf",WesternSahara:"eh",Yemen:"ye",Zambia:"zm",Zimbabwe:"zw","ÅlandIslands":"ax"},l=function p(){this.allCountries=[["Afghanistan (‫افغانستان‬‎)",s.Afghanistan,"93"],["Albania (Shqipëri)",s.Albania,"355"],["Algeria (‫الجزائر‬‎)",s.Algeria,"213"],["American Samoa",s.AmericanSamoa,"1684"],["Andorra",s.Andorra,"376"],["Angola",s.Angola,"244"],["Anguilla",s.Anguilla,"1264"],["Antigua and Barbuda",s.AntiguaAndBarbuda,"1268"],["Argentina",s.Argentina,"54"],["Armenia (Հայաստան)",s.Armenia,"374"],["Aruba",s.Aruba,"297"],["Australia",s.Australia,"61",0],["Austria (Österreich)",s.Austria,"43"],["Azerbaijan (Azərbaycan)",s.Azerbaijan,"994"],["Bahamas",s.Bahamas,"1242"],["Bahrain (‫البحرين‬‎)",s.Bahrain,"973"],["Bangladesh (বাংলাদেশ)",s.Bangladesh,"880"],["Barbados",s.Barbados,"1246"],["Belarus (Беларусь)",s.Belarus,"375"],["Belgium (België)",s.Belgium,"32"],["Belize",s.Belize,"501"],["Benin (Bénin)",s.Benin,"229"],["Bermuda",s.Bermuda,"1441"],["Bhutan (འབྲུག)",s.Bhutan,"975"],["Bolivia",s.Bolivia,"591"],["Bosnia and Herzegovina (Босна и Херцеговина)",s.BosniaAndHerzegovina,"387"],["Botswana",s.Botswana,"267"],["Brazil (Brasil)",s.Brazil,"55"],["British Indian Ocean Territory",s.BritishIndianOceanTerritory,"246"],["British Virgin Islands",s.BritishVirginIslands,"1284"],["Brunei",s.Brunei,"673"],["Bulgaria (България)",s.Bulgaria,"359"],["Burkina Faso",s.BurkinaFaso,"226"],["Burundi (Uburundi)",s.Burundi,"257"],["Cambodia (កម្ពុជា)",s.Cambodia,"855"],["Cameroon (Cameroun)",s.Cameroon,"237"],["Canada",s.Canada,"1",1,["204","226","236","249","250","289","306","343","365","387","403","416","418","431","437","438","450","506","514","519","548","579","581","587","604","613","639","647","672","705","709","742","778","780","782","807","819","825","867","873","902","905"]],["Cape Verde (Kabu Verdi)",s.CapeVerde,"238"],["Caribbean Netherlands",s.CaribbeanNetherlands,"599",1],["Cayman Islands",s.CaymanIslands,"1345"],["Central African Republic (République centrafricaine)",s.CentralAfricanRepublic,"236"],["Chad (Tchad)",s.Chad,"235"],["Chile",s.Chile,"56"],["China (中国)",s.China,"86"],["Christmas Island",s.ChristmasIsland,"61",2],["Cocos (Keeling) Islands",s.Cocos,"61",1],["Colombia",s.Colombia,"57"],["Comoros (‫جزر القمر‬‎)",s.Comoros,"269"],["Congo (DRC) (Jamhuri ya Kidemokrasia ya Kongo)",s.CongoDRCJamhuriYaKidemokrasiaYaKongo,"243"],["Congo (Republic) (Congo-Brazzaville)",s.CongoRepublicCongoBrazzaville,"242"],["Cook Islands",s.CookIslands,"682"],["Costa Rica",s.CostaRica,"506"],["Côte d’Ivoire",s.CôteDIvoire,"225"],["Croatia (Hrvatska)",s.Croatia,"385"],["Cuba",s.Cuba,"53"],["Curaçao",s.Curaçao,"599",0],["Cyprus (Κύπρος)",s.Cyprus,"357"],["Czech Republic (Česká republika)",s.CzechRepublic,"420"],["Denmark (Danmark)",s.Denmark,"45"],["Djibouti",s.Djibouti,"253"],["Dominica",s.Dominica,"1767"],["Dominican Republic (República Dominicana)",s.DominicanRepublic,"1",2,["809","829","849"]],["Ecuador",s.Ecuador,"593"],["Egypt (‫مصر‬‎)",s.Egypt,"20"],["El Salvador",s.ElSalvador,"503"],["Equatorial Guinea (Guinea Ecuatorial)",s.EquatorialGuinea,"240"],["Eritrea",s.Eritrea,"291"],["Estonia (Eesti)",s.Estonia,"372"],["Ethiopia",s.Ethiopia,"251"],["Falkland Islands (Islas Malvinas)",s.FalklandIslands,"500"],["Faroe Islands (Føroyar)",s.FaroeIslands,"298"],["Fiji",s.Fiji,"679"],["Finland (Suomi)",s.Finland,"358",0],["France",s.France,"33"],["French Guiana (Guyane française)",s.FrenchGuiana,"594"],["French Polynesia (Polynésie française)",s.FrenchPolynesia,"689"],["Gabon",s.Gabon,"241"],["Gambia",s.Gambia,"220"],["Georgia (საქართველო)",s.Georgia,"995"],["Germany (Deutschland)",s.Germany,"49"],["Ghana (Gaana)",s.Ghana,"233"],["Gibraltar",s.Gibraltar,"350"],["Greece (Ελλάδα)",s.Greece,"30"],["Greenland (Kalaallit Nunaat)",s.Greenland,"299"],["Grenada",s.Grenada,"1473"],["Guadeloupe",s.Guadeloupe,"590",0],["Guam",s.Guam,"1671"],["Guatemala",s.Guatemala,"502"],["Guernsey",s.Guernsey,"44",1,[1481]],["Guinea (Guinée)",s.Guinea,"224"],["Guinea-Bissau (Guiné Bissau)",s.GuineaBissau,"245"],["Guyana",s.Guyana,"592"],["Haiti",s.Haiti,"509"],["Honduras",s.Honduras,"504"],["Hong Kong (香港)",s.HongKong,"852"],["Hungary (Magyarország)",s.Hungary,"36"],["Iceland (Ísland)",s.Iceland,"354"],["India (भारत)",s.India,"91"],["Indonesia",s.Indonesia,"62"],["Iran (‫ایران‬‎)",s.Iran,"98"],["Iraq (‫العراق‬‎)",s.Iraq,"964"],["Ireland",s.Ireland,"353"],["Isle of Man",s.IsleOfMan,"44",2,[1624]],["Israel (‫ישראל‬‎)",s.Israel,"972"],["Italy (Italia)",s.Italy,"39",0],["Jamaica",s.Jamaica,"1876"],["Japan (日本)",s.Japan,"81"],["Jersey",s.Jersey,"44",3,[1534]],["Jordan (‫الأردن‬‎)",s.Jordan,"962"],["Kazakhstan (Казахстан)",s.Kazakhstan,"7",1],["Kenya",s.Kenya,"254"],["Kiribati",s.Kiribati,"686"],["Kosovo",s.Kosovo,"383"],["Kuwait (‫الكويت‬‎)",s.Kuwait,"965"],["Kyrgyzstan (Кыргызстан)",s.Kyrgyzstan,"996"],["Laos (ລາວ)",s.Laos,"856"],["Latvia (Latvija)",s.Latvia,"371"],["Lebanon (‫لبنان‬‎)",s.Lebanon,"961"],["Lesotho",s.Lesotho,"266"],["Liberia",s.Liberia,"231"],["Libya (‫ليبيا‬‎)",s.Libya,"218"],["Liechtenstein",s.Liechtenstein,"423"],["Lithuania (Lietuva)",s.Lithuania,"370"],["Luxembourg",s.Luxembourg,"352"],["Macau (澳門)",s.Macau,"853"],["Macedonia (FYROM) (Македонија)",s.Macedonia,"389"],["Madagascar (Madagasikara)",s.Madagascar,"261"],["Malawi",s.Malawi,"265"],["Malaysia",s.Malaysia,"60"],["Maldives",s.Maldives,"960"],["Mali",s.Mali,"223"],["Malta",s.Malta,"356"],["Marshall Islands",s.MarshallIslands,"692"],["Martinique",s.Martinique,"596"],["Mauritania (‫موريتانيا‬‎)",s.Mauritania,"222"],["Mauritius (Moris)",s.Mauritius,"230"],["Mayotte",s.Mayotte,"262",1],["Mexico (México)",s.Mexico,"52"],["Micronesia",s.Micronesia,"691"],["Moldova (Republica Moldova)",s.Moldova,"373"],["Monaco",s.Monaco,"377"],["Mongolia (Монгол)",s.Mongolia,"976"],["Montenegro (Crna Gora)",s.Montenegro,"382"],["Montserrat",s.Montserrat,"1664"],["Morocco (‫المغرب‬‎)",s.Morocco,"212",0],["Mozambique (Moçambique)",s.Mozambique,"258"],["Myanmar (Burma) (မြန်မာ)",s.Myanmar,"95"],["Namibia (Namibië)",s.Namibia,"264"],["Nauru",s.Nauru,"674"],["Nepal (नेपाल)",s.Nepal,"977"],["Netherlands (Nederland)",s.Netherlands,"31"],["New Caledonia (Nouvelle-Calédonie)",s.NewCaledonia,"687"],["New Zealand",s.NewZealand,"64"],["Nicaragua",s.Nicaragua,"505"],["Niger (Nijar)",s.Niger,"227"],["Nigeria",s.Nigeria,"234"],["Niue",s.Niue,"683"],["Norfolk Island",s.NorfolkIsland,"672"],["North Korea (조선 민주주의 인민 공화국)",s.NorthKorea,"850"],["Northern Mariana Islands",s.NorthernMarianaIslands,"1670"],["Norway (Norge)",s.Norway,"47",0],["Oman (‫عُمان‬‎)",s.Oman,"968"],["Pakistan (‫پاکستان‬‎)",s.Pakistan,"92"],["Palau",s.Palau,"680"],["Palestine (‫فلسطين‬‎)",s.Palestine,"970"],["Panama (Panamá)",s.Panama,"507"],["Papua New Guinea",s.PapuaNewGuinea,"675"],["Paraguay",s.Paraguay,"595"],["Peru (Perú)",s.Peru,"51"],["Philippines",s.Philippines,"63"],["Poland (Polska)",s.Poland,"48"],["Portugal",s.Portugal,"351"],["Puerto Rico",s.PuertoRico,"1",3,["787","939"]],["Qatar (‫قطر‬‎)",s.Qatar,"974"],["Réunion (La Réunion)",s.Réunion,"262",0],["Romania (România)",s.Romania,"40"],["Russia (Россия)",s.Russia,"7",0],["Rwanda",s.Rwanda,"250"],["Saint Barthélemy (Saint-Barthélemy)",s.SaintBarthélemy,"590",1],["Saint Helena",s.SaintHelena,"290"],["Saint Kitts and Nevis",s.SaintKittsAndNevis,"1869"],["Saint Lucia",s.SaintLucia,"1758"],["Saint Martin (Saint-Martin (partie française))",s.SaintMartin,"590",2],["Saint Pierre and Miquelon (Saint-Pierre-et-Miquelon)",s.SaintPierreAndMiquelon,"508"],["Saint Vincent and the Grenadines",s.SaintVincentAndTheGrenadines,"1784"],["Samoa",s.Samoa,"685"],["San Marino",s.SanMarino,"378"],["São Tomé and Príncipe (São Tomé e Príncipe)",s.SãoToméAndPríncipe,"239"],["Saudi Arabia (‫المملكة العربية السعودية‬‎)",s.SaudiArabia,"966"],["Senegal (Sénégal)",s.Senegal,"221"],["Serbia (Србија)",s.Serbia,"381"],["Seychelles",s.Seychelles,"248"],["Sierra Leone",s.SierraLeone,"232"],["Singapore",s.Singapore,"65"],["Sint Maarten",s.SintMaarten,"1721"],["Slovakia (Slovensko)",s.Slovakia,"421"],["Slovenia (Slovenija)",s.Slovenia,"386"],["Solomon Islands",s.SolomonIslands,"677"],["Somalia (Soomaaliya)",s.Somalia,"252"],["South Africa",s.SouthAfrica,"27"],["South Korea (대한민국)",s.SouthKorea,"82"],["South Sudan (‫جنوب السودان‬‎)",s.SouthSudan,"211"],["Spain (España)",s.Spain,"34"],["Sri Lanka (ශ්‍රී ලංකාව)",s.SriLanka,"94"],["Sudan (‫السودان‬‎)",s.Sudan,"249"],["Suriname",s.Suriname,"597"],["Svalbard and Jan Mayen",s.SvalbardAndJanMayen,"47",1],["Swaziland",s.Swaziland,"268"],["Sweden (Sverige)",s.Sweden,"46"],["Switzerland (Schweiz)",s.Switzerland,"41"],["Syria (‫سوريا‬‎)",s.Syria,"963"],["Taiwan (台灣)",s.Taiwan,"886"],["Tajikistan",s.Tajikistan,"992"],["Tanzania",s.Tanzania,"255"],["Thailand (ไทย)",s.Thailand,"66"],["Timor-Leste",s.TimorLeste,"670"],["Togo",s.Togo,"228"],["Tokelau",s.Tokelau,"690"],["Tonga",s.Tonga,"676"],["Trinidad and Tobago",s.TrinidadAndTobago,"1868"],["Tunisia (‫تونس‬‎)",s.Tunisia,"216"],["Turkey (Türkiye)",s.Turkey,"90"],["Turkmenistan",s.Turkmenistan,"993"],["Turks and Caicos Islands",s.TurksAndCaicosIslands,"1649"],["Tuvalu",s.Tuvalu,"688"],["U.S. Virgin Islands",s.USVirginIslands,"1340"],["Uganda",s.Uganda,"256"],["Ukraine (Україна)",s.Ukraine,"380"],["United Arab Emirates (‫الإمارات العربية المتحدة‬‎)",s.UnitedArabEmirates,"971"],["United Kingdom",s.UnitedKingdom,"44",0],["United States",s.UnitedStates,"1",0],["Uruguay",s.Uruguay,"598"],["Uzbekistan (Oʻzbekiston)",s.Uzbekistan,"998"],["Vanuatu",s.Vanuatu,"678"],["Vatican City (Città del Vaticano)",s.VaticanCity,"39",1],["Venezuela",s.Venezuela,"58"],["Vietnam (Việt Nam)",s.Vietnam,"84"],["Wallis and Futuna",s.WallisAndFutuna,"681"],["Western Sahara (‫الصحراء الغربية‬‎)",s.WesternSahara,"212",1],["Yemen (‫اليمن‬‎)",s.Yemen,"967"],["Zambia",s.Zambia,"260"],["Zimbabwe",s.Zimbabwe,"263"],["Åland Islands",s.ÅlandIslands,"358",1]]},u=function(a){var e=document.getElementById("phone").getAttribute("validation");if("true"==e){var n=a.errors&&!0===a.errors.required,i={validatePhoneNumber:{valid:!1}},t=void 0;try{t=o.PhoneNumberUtil.getInstance().parse(a.value.number,a.value.countryCode)}catch(r){if(!0===n)return i}if(a.value){if(!t)return i;if(!o.PhoneNumberUtil.getInstance().isValidNumberForRegion(t,a.value.countryCode))return i}}else"false"==e&&a.clearValidators()},d=u,c=function(){function a(a){this.countryCodeData=a,this.value="",this.preferredCountries=[],this.enablePlaceholder=!0,this.cssClass="form-control",this.onlyCountries=[],this.enableAutoCountrySelect=!0,this.searchCountryFlag=!1,this.searchCountryField=["all"],this.maxLength="",this.selectFirstCountry=!0,this.phoneValidation=!0,this.selectedCountry={areaCodes:undefined,dialCode:"",flagClass:"",iso2:"",name:"",placeHolder:"",priority:0},this.phoneNumber="",this.allCountries=[],this.preferredCountriesInDropDown=[],this.phoneUtil=o.PhoneNumberUtil.getInstance(),this.disabled=!1,this.errors=["Phone number is required."],this.countrySearchText="",this.onTouched=function(){},this.propagateChange=function(a){}}return a.prototype.ngOnInit=function(){var e=this;this.fetchCountryData(),this.preferredCountries.length&&this.getPreferredCountries(),this.onlyCountries.length&&(this.allCountries=this.allCountries.filter(function(a){return e.onlyCountries.includes(a.iso2)})),this.selectFirstCountry&&(this.preferredCountriesInDropDown.length?this.selectedCountry=this.preferredCountriesInDropDown[0]:this.selectedCountry=this.allCountries[0]),this.getSelectedCountry()},a.prototype.ngOnChanges=function(a){this.allCountries&&a.selectedCountryISO&&a.selectedCountryISO.currentValue!==a.selectedCountryISO.previousValue&&this.getSelectedCountry(),a.preferredCountries&&this.getPreferredCountries()},a.prototype.getPreferredCountries=function(){var n=this;this.preferredCountries.length&&(this.preferredCountriesInDropDown=[],this.preferredCountries.forEach(function(e){var a=n.allCountries.filter(function(a){return a.iso2===e});n.preferredCountriesInDropDown.push(a[0])}))},a.prototype.getSelectedCountry=function(){var e=this;this.selectedCountryISO&&(this.selectedCountry=this.allCountries.find(function(a){return a.iso2.toLowerCase()===e.selectedCountryISO.toLowerCase()}),this.selectedCountry&&(this.phoneNumber?this.onPhoneNumberChange():this.propagateChange(undefined)))},a.prototype.searchCountry=function(){var e=this;if(this.countrySearchText){var n=this.countrySearchText.toLowerCase(),a=this.allCountries.filter(function(a){if(-1<e.searchCountryField.indexOf("all")){if(a.iso2.toLowerCase().startsWith(n))return a;if(a.name.toLowerCase().startsWith(n))return a;if(a.dialCode.startsWith(e.countrySearchText))return a}else{if(-1<e.searchCountryField.indexOf("iso2")&&a.iso2.toLowerCase().startsWith(n))return a;if(-1<e.searchCountryField.indexOf("name")&&a.name.toLowerCase().startsWith(n))return a;if(-1<e.searchCountryField.indexOf("dialCode")&&a.dialCode.startsWith(e.countrySearchText))return a}});if(0<a.length){var i=this.countryList.nativeElement.querySelector("#"+a[0].iso2);i&&i.scrollIntoView({behavior:"smooth"})}}else this.countryList.nativeElement.querySelector("li").scrollIntoView({behavior:"smooth"})},a.prototype.onPhoneNumberChange=function(){var a;this.value=this.phoneNumber;try{a=this.phoneUtil.parse(this.phoneNumber,this.selectedCountry.iso2.toUpperCase())}catch(i){}var e=this.selectedCountry.iso2;if(this.enableAutoCountrySelect&&(e=a&&a.getCountryCode()?this.getCountryIsoCode(a.getCountryCode(),a):this.selectedCountry.iso2)&&e!==this.selectedCountry.iso2){var n=this.allCountries.find(function(a){return a.iso2===e});n&&(this.selectedCountry=n)}e=e||this.selectedCountry.iso2,this.value?this.propagateChange({number:this.value,internationalNumber:a?this.phoneUtil.format(a,o.PhoneNumberFormat.INTERNATIONAL):"",nationalNumber:a?this.phoneUtil.format(a,o.PhoneNumberFormat.NATIONAL):"",countryCode:e.toUpperCase(),dialCode:"+"+this.selectedCountry.dialCode}):this.propagateChange(null)},a.prototype.onCountrySelect=function(a,e){if(this.selectedCountry=a,0<this.phoneNumber.length){this.value=this.phoneNumber;var n=void 0;try{n=this.phoneUtil.parse(this.phoneNumber,this.selectedCountry.iso2.toUpperCase())}catch(i){}this.propagateChange({number:this.value,internationalNumber:n?this.phoneUtil.format(n,o.PhoneNumberFormat.INTERNATIONAL):"",nationalNumber:n?this.phoneUtil.format(n,o.PhoneNumberFormat.NATIONAL):"",countryCode:this.selectedCountry.iso2.toUpperCase(),dialCode:"+"+this.selectedCountry.dialCode})}e.focus()},a.prototype.onInputKeyPress=function(a){/[0-9\+\-\ ]/.test(a.key)||a.ctrlKey&&/[axcv]/.test(a.key)||["ArrowLeft","ArrowUp","ArrowRight","ArrowDown","Home","End","Insert","Delete","Backspace"].includes(a.key)||a.preventDefault()},a.prototype.fetchCountryData=function(){var n=this;this.countryCodeData.allCountries.forEach(function(a){var e={name:a[0].toString(),iso2:a[1].toString(),dialCode:a[2].toString(),priority:+a[3]||0,areaCodes:a[4]||undefined,flagClass:a[1].toString().toLocaleLowerCase(),placeHolder:""};n.enablePlaceholder&&(e.placeHolder=n.getPhoneNumberPlaceHolder(e.iso2.toUpperCase())),n.allCountries.push(e)})},a.prototype.getPhoneNumberPlaceHolder=function(a){try{return this.phoneUtil.format(this.phoneUtil.getExampleNumber(a),o.PhoneNumberFormat.INTERNATIONAL)}catch(e){return e}},a.prototype.registerOnChange=function(a){this.propagateChange=a},a.prototype.registerOnTouched=function(a){this.onTouched=a},a.prototype.setDisabledState=function(a){this.disabled=a},a.prototype.writeValue=function(a){var e=this;"object"!=typeof a&&(this.phoneNumber=a),setTimeout(function(){e.onPhoneNumberChange()},1)},a.prototype.getCountryIsoCode=function(e,a){var n=a.values_[2].toString(),i=this.allCountries.filter(function(a){return a.dialCode===e.toString()}),t=i.find(function(a){return a.areaCodes===undefined}),r=i.filter(function(a){return a.areaCodes!==undefined}),o=t?t.iso2:undefined;return r.forEach(function(e){e.areaCodes.forEach(function(a){n.startsWith(a)&&(o=e.iso2)})}),o},a.decorators=[{type:e.Component,args:[{selector:"ngx-intl-tel-input",template:'<div class="intl-tel-input allow-dropdown">\n <div class="flag-container" dropdown [ngClass]="{\'disabled\': disabled}">\n <div class="selected-flag dropdown-toggle" dropdownToggle>\n <div class="iti-flag" [ngClass]="selectedCountry?.flagClass"\n [tooltip]="selectedCountry ? selectedCountry[tooltipField] : \'\'"></div>\n <div class="iti-arrow"></div>\n </div>\n <div *dropdownMenu class="dropdown-menu country-dropdown">\n <div class="search-container" *ngIf="searchCountryFlag && searchCountryField">\n <input id="country-search-box" [(ngModel)]="countrySearchText" (keyup)="searchCountry()"\n (click)="$event.stopPropagation()" autofocus>\n </div>\n <ul class="country-list" #countryList>\n <li class="country" *ngFor="let country of preferredCountriesInDropDown"\n (click)="onCountrySelect(country, focusable)" [id]="country.iso2">\n <div class="flag-box">\n <div class="iti-flag" [ngClass]="country.flagClass"></div>\n </div>\n <span class="country-name">{{country.name}}</span>\n <span class="dial-code">+{{country.dialCode}}</span>\n </li>\n <li class="divider" *ngIf="preferredCountriesInDropDown?.length"></li>\n <li class="country" *ngFor="let country of allCountries" (click)="onCountrySelect(country, focusable)"\n [id]="country.iso2">\n <div class="flag-box">\n <div class="iti-flag" [ngClass]="country.flagClass"></div>\n </div>\n <span class="country-name">{{country.name}}</span>\n <span class="dial-code">+{{country.dialCode}}</span>\n </li>\n </ul>\n </div>\n </div>\n <input type="tel" id="phone" autocomplete="off" [ngClass]="cssClass" (blur)="onTouched()"\n (keypress)="onInputKeyPress($event)" [(ngModel)]="phoneNumber" (ngModelChange)="onPhoneNumberChange()"\n [disabled]="disabled" [placeholder]="selectedCountry?.placeHolder || \'\'" [attr.maxLength]="maxLength"\n [attr.validation]="phoneValidation" #focusable>\n</div>',providers:[l,{provide:t.NG_VALUE_ACCESSOR,useExisting:e.forwardRef(function(){return a}),multi:!0},{provide:t.NG_VALIDATORS,useValue:d,multi:!0}],styles:["li.country:hover{background-color:rgba(0,0,0,.05)}.selected-flag.dropdown-toggle:after{content:none}.flag-container.disabled{cursor:default!important}.intl-tel-input.allow-dropdown .flag-container.disabled:hover .selected-flag{background:0 0}.country-dropdown{border:1px solid #ccc;width:-webkit-fit-content;width:-moz-fit-content;width:fit-content;padding:1px;border-collapse:collapse}.search-container{position:relative}.search-container input{width:100%;border:none;border-bottom:1px solid #ccc;padding-left:10px}.search-icon{position:absolute;z-index:2;width:25px;margin:1px 10px}.country-list{position:relative;border:none}"]}]}],a.ctorParameters=function(){return[{type:l}]},a.propDecorators={value:[{type:e.Input}],preferredCountries:[{type:e.Input}],enablePlaceholder:[{type:e.Input}],cssClass:[{type:e.Input}],onlyCountries:[{type:e.Input}],enableAutoCountrySelect:[{type:e.Input}],searchCountryFlag:[{type:e.Input}],searchCountryField:[{type:e.Input}],maxLength:[{type:e.Input}],tooltipField:[{type:e.Input}],selectFirstCountry:[{type:e.Input}],selectedCountryISO:[{type:e.Input}],phoneValidation:[{type:e.Input}],countryList:[{type:e.ViewChild,args:["countryList"]}]},a}(),h=function(){function a(){}return a.forRoot=function(){return{ngModule:a,providers:[r]}},a.decorators=[{type:e.NgModule,args:[{declarations:[c],imports:[n.CommonModule,t.FormsModule,t.ReactiveFormsModule,i.BsDropdownModule.forRoot(),i.TooltipModule.forRoot()],exports:[c]}]}],a}();a.NgxIntlTelInputService=r,a.NgxIntlTelInputComponent=c,a.NgxIntlTelInputModule=h,a.CountryISO=s,a.ɵa=l,a.ɵb=u,Object.defineProperty(a,"__esModule",{value:!0})});
!function(a,e){"object"==typeof exports&&"undefined"!=typeof module?e(exports,require("google-libphonenumber"),require("@angular/core"),require("@angular/common"),require("ngx-bootstrap"),require("@angular/forms")):"function"==typeof define&&define.amd?define("ngx-intl-tel-input",["exports","google-libphonenumber","@angular/core","@angular/common","ngx-bootstrap","@angular/forms"],e):e(a["ngx-intl-tel-input"]={},a["^3"][2][1],a.ng.core,a.ng.common,a["^3"][1][3],a.ng.forms)}(this,function(a,o,e,n,i,t){"use strict";var r=function(){function a(){}return a.decorators=[{type:e.Injectable,args:[{providedIn:"root"}]}],a.ctorParameters=function(){return[]},a.ngInjectableDef=e.defineInjectable({factory:function(){return new a},token:a,providedIn:"root"}),a}(),s={Afghanistan:"af",Albania:"al",Algeria:"dz",AmericanSamoa:"as",Andorra:"ad",Angola:"ao",Anguilla:"ai",AntiguaAndBarbuda:"ag",Argentina:"ar",Armenia:"am",Aruba:"aw",Australia:"au",Austria:"at",Azerbaijan:"az",Bahamas:"bs",Bahrain:"bh",Bangladesh:"bd",Barbados:"bb",Belarus:"by",Belgium:"be",Belize:"bz",Benin:"bj",Bermuda:"bm",Bhutan:"bt",Bolivia:"bo",BosniaAndHerzegovina:"ba",Botswana:"bw",Brazil:"br",BritishIndianOceanTerritory:"io",BritishVirginIslands:"vg",Brunei:"bn",Bulgaria:"bg",BurkinaFaso:"bf",Burundi:"bi",Cambodia:"kh",Cameroon:"cm",Canada:"ca",CapeVerde:"cv",CaribbeanNetherlands:"bq",CaymanIslands:"ky",CentralAfricanRepublic:"cf",Chad:"td",Chile:"cl",China:"cn",ChristmasIsland:"cx",Cocos:"cc",Colombia:"co",Comoros:"km",CongoDRCJamhuriYaKidemokrasiaYaKongo:"cd",CongoRepublicCongoBrazzaville:"cg",CookIslands:"ck",CostaRica:"cr","CôteDIvoire":"ci",Croatia:"hr",Cuba:"cu","Curaçao":"cw",Cyprus:"cy",CzechRepublic:"cz",Denmark:"dk",Djibouti:"dj",Dominica:"dm",DominicanRepublic:"do",Ecuador:"ec",Egypt:"eg",ElSalvador:"sv",EquatorialGuinea:"gq",Eritrea:"er",Estonia:"ee",Ethiopia:"et",FalklandIslands:"fk",FaroeIslands:"fo",Fiji:"fj",Finland:"fi",France:"fr",FrenchGuiana:"gf",FrenchPolynesia:"pf",Gabon:"ga",Gambia:"gm",Georgia:"ge",Germany:"de",Ghana:"gh",Gibraltar:"gi",Greece:"gr",Greenland:"gl",Grenada:"gd",Guadeloupe:"gp",Guam:"gu",Guatemala:"gt",Guernsey:"gg",Guinea:"gn",GuineaBissau:"gw",Guyana:"gy",Haiti:"ht",Honduras:"hn",HongKong:"hk",Hungary:"hu",Iceland:"is",India:"in",Indonesia:"id",Iran:"ir",Iraq:"iq",Ireland:"ie",IsleOfMan:"im",Israel:"il",Italy:"it",Jamaica:"jm",Japan:"jp",Jersey:"je",Jordan:"jo",Kazakhstan:"kz",Kenya:"ke",Kiribati:"ki",Kosovo:"xk",Kuwait:"kw",Kyrgyzstan:"kg",Laos:"la",Latvia:"lv",Lebanon:"lb",Lesotho:"ls",Liberia:"lr",Libya:"ly",Liechtenstein:"li",Lithuania:"lt",Luxembourg:"lu",Macau:"mo",Macedonia:"mk",Madagascar:"mg",Malawi:"mw",Malaysia:"my",Maldives:"mv",Mali:"ml",Malta:"mt",MarshallIslands:"mh",Martinique:"mq",Mauritania:"mr",Mauritius:"mu",Mayotte:"yt",Mexico:"mx",Micronesia:"fm",Moldova:"md",Monaco:"mc",Mongolia:"mn",Montenegro:"me",Montserrat:"ms",Morocco:"ma",Mozambique:"mz",Myanmar:"mm",Namibia:"na",Nauru:"nr",Nepal:"np",Netherlands:"nl",NewCaledonia:"nc",NewZealand:"nz",Nicaragua:"ni",Niger:"ne",Nigeria:"ng",Niue:"nu",NorfolkIsland:"nf",NorthKorea:"kp",NorthernMarianaIslands:"mp",Norway:"no",Oman:"om",Pakistan:"pk",Palau:"pw",Palestine:"ps",Panama:"pa",PapuaNewGuinea:"pg",Paraguay:"py",Peru:"pe",Philippines:"ph",Poland:"pl",Portugal:"pt",PuertoRico:"pr",Qatar:"qa","Réunion":"re",Romania:"ro",Russia:"ru",Rwanda:"rw","SaintBarthélemy":"bl",SaintHelena:"sh",SaintKittsAndNevis:"kn",SaintLucia:"lc",SaintMartin:"mf",SaintPierreAndMiquelon:"pm",SaintVincentAndTheGrenadines:"vc",Samoa:"ws",SanMarino:"sm","SãoToméAndPríncipe":"st",SaudiArabia:"sa",Senegal:"sn",Serbia:"rs",Seychelles:"sc",SierraLeone:"sl",Singapore:"sg",SintMaarten:"sx",Slovakia:"sk",Slovenia:"si",SolomonIslands:"sb",Somalia:"so",SouthAfrica:"za",SouthKorea:"kr",SouthSudan:"ss",Spain:"es",SriLanka:"lk",Sudan:"sd",Suriname:"sr",SvalbardAndJanMayen:"sj",Swaziland:"sz",Sweden:"se",Switzerland:"ch",Syria:"sy",Taiwan:"tw",Tajikistan:"tj",Tanzania:"tz",Thailand:"th",TimorLeste:"tl",Togo:"tg",Tokelau:"tk",Tonga:"to",TrinidadAndTobago:"tt",Tunisia:"tn",Turkey:"tr",Turkmenistan:"tm",TurksAndCaicosIslands:"tc",Tuvalu:"tv",USVirginIslands:"vi",Uganda:"ug",Ukraine:"ua",UnitedArabEmirates:"ae",UnitedKingdom:"gb",UnitedStates:"us",Uruguay:"uy",Uzbekistan:"uz",Vanuatu:"vu",VaticanCity:"va",Venezuela:"ve",Vietnam:"vn",WallisAndFutuna:"wf",WesternSahara:"eh",Yemen:"ye",Zambia:"zm",Zimbabwe:"zw","ÅlandIslands":"ax"},l=function g(){this.allCountries=[["Afghanistan (‫افغانستان‬‎)",s.Afghanistan,"93"],["Albania (Shqipëri)",s.Albania,"355"],["Algeria (‫الجزائر‬‎)",s.Algeria,"213"],["American Samoa",s.AmericanSamoa,"1684"],["Andorra",s.Andorra,"376"],["Angola",s.Angola,"244"],["Anguilla",s.Anguilla,"1264"],["Antigua and Barbuda",s.AntiguaAndBarbuda,"1268"],["Argentina",s.Argentina,"54"],["Armenia (Հայաստան)",s.Armenia,"374"],["Aruba",s.Aruba,"297"],["Australia",s.Australia,"61",0],["Austria (Österreich)",s.Austria,"43"],["Azerbaijan (Azərbaycan)",s.Azerbaijan,"994"],["Bahamas",s.Bahamas,"1242"],["Bahrain (‫البحرين‬‎)",s.Bahrain,"973"],["Bangladesh (বাংলাদেশ)",s.Bangladesh,"880"],["Barbados",s.Barbados,"1246"],["Belarus (Беларусь)",s.Belarus,"375"],["Belgium (België)",s.Belgium,"32"],["Belize",s.Belize,"501"],["Benin (Bénin)",s.Benin,"229"],["Bermuda",s.Bermuda,"1441"],["Bhutan (འབྲུག)",s.Bhutan,"975"],["Bolivia",s.Bolivia,"591"],["Bosnia and Herzegovina (Босна и Херцеговина)",s.BosniaAndHerzegovina,"387"],["Botswana",s.Botswana,"267"],["Brazil (Brasil)",s.Brazil,"55"],["British Indian Ocean Territory",s.BritishIndianOceanTerritory,"246"],["British Virgin Islands",s.BritishVirginIslands,"1284"],["Brunei",s.Brunei,"673"],["Bulgaria (България)",s.Bulgaria,"359"],["Burkina Faso",s.BurkinaFaso,"226"],["Burundi (Uburundi)",s.Burundi,"257"],["Cambodia (កម្ពុជា)",s.Cambodia,"855"],["Cameroon (Cameroun)",s.Cameroon,"237"],["Canada",s.Canada,"1",1,["204","226","236","249","250","289","306","343","365","387","403","416","418","431","437","438","450","506","514","519","548","579","581","587","604","613","639","647","672","705","709","742","778","780","782","807","819","825","867","873","902","905"]],["Cape Verde (Kabu Verdi)",s.CapeVerde,"238"],["Caribbean Netherlands",s.CaribbeanNetherlands,"599",1],["Cayman Islands",s.CaymanIslands,"1345"],["Central African Republic (République centrafricaine)",s.CentralAfricanRepublic,"236"],["Chad (Tchad)",s.Chad,"235"],["Chile",s.Chile,"56"],["China (中国)",s.China,"86"],["Christmas Island",s.ChristmasIsland,"61",2],["Cocos (Keeling) Islands",s.Cocos,"61",1],["Colombia",s.Colombia,"57"],["Comoros (‫جزر القمر‬‎)",s.Comoros,"269"],["Congo (DRC) (Jamhuri ya Kidemokrasia ya Kongo)",s.CongoDRCJamhuriYaKidemokrasiaYaKongo,"243"],["Congo (Republic) (Congo-Brazzaville)",s.CongoRepublicCongoBrazzaville,"242"],["Cook Islands",s.CookIslands,"682"],["Costa Rica",s.CostaRica,"506"],["Côte d’Ivoire",s.CôteDIvoire,"225"],["Croatia (Hrvatska)",s.Croatia,"385"],["Cuba",s.Cuba,"53"],["Curaçao",s.Curaçao,"599",0],["Cyprus (Κύπρος)",s.Cyprus,"357"],["Czech Republic (Česká republika)",s.CzechRepublic,"420"],["Denmark (Danmark)",s.Denmark,"45"],["Djibouti",s.Djibouti,"253"],["Dominica",s.Dominica,"1767"],["Dominican Republic (República Dominicana)",s.DominicanRepublic,"1",2,["809","829","849"]],["Ecuador",s.Ecuador,"593"],["Egypt (‫مصر‬‎)",s.Egypt,"20"],["El Salvador",s.ElSalvador,"503"],["Equatorial Guinea (Guinea Ecuatorial)",s.EquatorialGuinea,"240"],["Eritrea",s.Eritrea,"291"],["Estonia (Eesti)",s.Estonia,"372"],["Ethiopia",s.Ethiopia,"251"],["Falkland Islands (Islas Malvinas)",s.FalklandIslands,"500"],["Faroe Islands (Føroyar)",s.FaroeIslands,"298"],["Fiji",s.Fiji,"679"],["Finland (Suomi)",s.Finland,"358",0],["France",s.France,"33"],["French Guiana (Guyane française)",s.FrenchGuiana,"594"],["French Polynesia (Polynésie française)",s.FrenchPolynesia,"689"],["Gabon",s.Gabon,"241"],["Gambia",s.Gambia,"220"],["Georgia (საქართველო)",s.Georgia,"995"],["Germany (Deutschland)",s.Germany,"49"],["Ghana (Gaana)",s.Ghana,"233"],["Gibraltar",s.Gibraltar,"350"],["Greece (Ελλάδα)",s.Greece,"30"],["Greenland (Kalaallit Nunaat)",s.Greenland,"299"],["Grenada",s.Grenada,"1473"],["Guadeloupe",s.Guadeloupe,"590",0],["Guam",s.Guam,"1671"],["Guatemala",s.Guatemala,"502"],["Guernsey",s.Guernsey,"44",1,[1481]],["Guinea (Guinée)",s.Guinea,"224"],["Guinea-Bissau (Guiné Bissau)",s.GuineaBissau,"245"],["Guyana",s.Guyana,"592"],["Haiti",s.Haiti,"509"],["Honduras",s.Honduras,"504"],["Hong Kong (香港)",s.HongKong,"852"],["Hungary (Magyarország)",s.Hungary,"36"],["Iceland (Ísland)",s.Iceland,"354"],["India (भारत)",s.India,"91"],["Indonesia",s.Indonesia,"62"],["Iran (‫ایران‬‎)",s.Iran,"98"],["Iraq (‫العراق‬‎)",s.Iraq,"964"],["Ireland",s.Ireland,"353"],["Isle of Man",s.IsleOfMan,"44",2,[1624]],["Israel (‫ישראל‬‎)",s.Israel,"972"],["Italy (Italia)",s.Italy,"39",0],["Jamaica",s.Jamaica,"1876"],["Japan (日本)",s.Japan,"81"],["Jersey",s.Jersey,"44",3,[1534]],["Jordan (‫الأردن‬‎)",s.Jordan,"962"],["Kazakhstan (Казахстан)",s.Kazakhstan,"7",1],["Kenya",s.Kenya,"254"],["Kiribati",s.Kiribati,"686"],["Kosovo",s.Kosovo,"383"],["Kuwait (‫الكويت‬‎)",s.Kuwait,"965"],["Kyrgyzstan (Кыргызстан)",s.Kyrgyzstan,"996"],["Laos (ລາວ)",s.Laos,"856"],["Latvia (Latvija)",s.Latvia,"371"],["Lebanon (‫لبنان‬‎)",s.Lebanon,"961"],["Lesotho",s.Lesotho,"266"],["Liberia",s.Liberia,"231"],["Libya (‫ليبيا‬‎)",s.Libya,"218"],["Liechtenstein",s.Liechtenstein,"423"],["Lithuania (Lietuva)",s.Lithuania,"370"],["Luxembourg",s.Luxembourg,"352"],["Macau (澳門)",s.Macau,"853"],["Macedonia (FYROM) (Македонија)",s.Macedonia,"389"],["Madagascar (Madagasikara)",s.Madagascar,"261"],["Malawi",s.Malawi,"265"],["Malaysia",s.Malaysia,"60"],["Maldives",s.Maldives,"960"],["Mali",s.Mali,"223"],["Malta",s.Malta,"356"],["Marshall Islands",s.MarshallIslands,"692"],["Martinique",s.Martinique,"596"],["Mauritania (‫موريتانيا‬‎)",s.Mauritania,"222"],["Mauritius (Moris)",s.Mauritius,"230"],["Mayotte",s.Mayotte,"262",1],["Mexico (México)",s.Mexico,"52"],["Micronesia",s.Micronesia,"691"],["Moldova (Republica Moldova)",s.Moldova,"373"],["Monaco",s.Monaco,"377"],["Mongolia (Монгол)",s.Mongolia,"976"],["Montenegro (Crna Gora)",s.Montenegro,"382"],["Montserrat",s.Montserrat,"1664"],["Morocco (‫المغرب‬‎)",s.Morocco,"212",0],["Mozambique (Moçambique)",s.Mozambique,"258"],["Myanmar (Burma) (မြန်မာ)",s.Myanmar,"95"],["Namibia (Namibië)",s.Namibia,"264"],["Nauru",s.Nauru,"674"],["Nepal (नेपाल)",s.Nepal,"977"],["Netherlands (Nederland)",s.Netherlands,"31"],["New Caledonia (Nouvelle-Calédonie)",s.NewCaledonia,"687"],["New Zealand",s.NewZealand,"64"],["Nicaragua",s.Nicaragua,"505"],["Niger (Nijar)",s.Niger,"227"],["Nigeria",s.Nigeria,"234"],["Niue",s.Niue,"683"],["Norfolk Island",s.NorfolkIsland,"672"],["North Korea (조선 민주주의 인민 공화국)",s.NorthKorea,"850"],["Northern Mariana Islands",s.NorthernMarianaIslands,"1670"],["Norway (Norge)",s.Norway,"47",0],["Oman (‫عُمان‬‎)",s.Oman,"968"],["Pakistan (‫پاکستان‬‎)",s.Pakistan,"92"],["Palau",s.Palau,"680"],["Palestine (‫فلسطين‬‎)",s.Palestine,"970"],["Panama (Panamá)",s.Panama,"507"],["Papua New Guinea",s.PapuaNewGuinea,"675"],["Paraguay",s.Paraguay,"595"],["Peru (Perú)",s.Peru,"51"],["Philippines",s.Philippines,"63"],["Poland (Polska)",s.Poland,"48"],["Portugal",s.Portugal,"351"],["Puerto Rico",s.PuertoRico,"1",3,["787","939"]],["Qatar (‫قطر‬‎)",s.Qatar,"974"],["Réunion (La Réunion)",s.Réunion,"262",0],["Romania (România)",s.Romania,"40"],["Russia (Россия)",s.Russia,"7",0],["Rwanda",s.Rwanda,"250"],["Saint Barthélemy (Saint-Barthélemy)",s.SaintBarthélemy,"590",1],["Saint Helena",s.SaintHelena,"290"],["Saint Kitts and Nevis",s.SaintKittsAndNevis,"1869"],["Saint Lucia",s.SaintLucia,"1758"],["Saint Martin (Saint-Martin (partie française))",s.SaintMartin,"590",2],["Saint Pierre and Miquelon (Saint-Pierre-et-Miquelon)",s.SaintPierreAndMiquelon,"508"],["Saint Vincent and the Grenadines",s.SaintVincentAndTheGrenadines,"1784"],["Samoa",s.Samoa,"685"],["San Marino",s.SanMarino,"378"],["São Tomé and Príncipe (São Tomé e Príncipe)",s.SãoToméAndPríncipe,"239"],["Saudi Arabia (‫المملكة العربية السعودية‬‎)",s.SaudiArabia,"966"],["Senegal (Sénégal)",s.Senegal,"221"],["Serbia (Србија)",s.Serbia,"381"],["Seychelles",s.Seychelles,"248"],["Sierra Leone",s.SierraLeone,"232"],["Singapore",s.Singapore,"65"],["Sint Maarten",s.SintMaarten,"1721"],["Slovakia (Slovensko)",s.Slovakia,"421"],["Slovenia (Slovenija)",s.Slovenia,"386"],["Solomon Islands",s.SolomonIslands,"677"],["Somalia (Soomaaliya)",s.Somalia,"252"],["South Africa",s.SouthAfrica,"27"],["South Korea (대한민국)",s.SouthKorea,"82"],["South Sudan (‫جنوب السودان‬‎)",s.SouthSudan,"211"],["Spain (España)",s.Spain,"34"],["Sri Lanka (ශ්‍රී ලංකාව)",s.SriLanka,"94"],["Sudan (‫السودان‬‎)",s.Sudan,"249"],["Suriname",s.Suriname,"597"],["Svalbard and Jan Mayen",s.SvalbardAndJanMayen,"47",1],["Swaziland",s.Swaziland,"268"],["Sweden (Sverige)",s.Sweden,"46"],["Switzerland (Schweiz)",s.Switzerland,"41"],["Syria (‫سوريا‬‎)",s.Syria,"963"],["Taiwan (台灣)",s.Taiwan,"886"],["Tajikistan",s.Tajikistan,"992"],["Tanzania",s.Tanzania,"255"],["Thailand (ไทย)",s.Thailand,"66"],["Timor-Leste",s.TimorLeste,"670"],["Togo",s.Togo,"228"],["Tokelau",s.Tokelau,"690"],["Tonga",s.Tonga,"676"],["Trinidad and Tobago",s.TrinidadAndTobago,"1868"],["Tunisia (‫تونس‬‎)",s.Tunisia,"216"],["Turkey (Türkiye)",s.Turkey,"90"],["Turkmenistan",s.Turkmenistan,"993"],["Turks and Caicos Islands",s.TurksAndCaicosIslands,"1649"],["Tuvalu",s.Tuvalu,"688"],["U.S. Virgin Islands",s.USVirginIslands,"1340"],["Uganda",s.Uganda,"256"],["Ukraine (Україна)",s.Ukraine,"380"],["United Arab Emirates (‫الإمارات العربية المتحدة‬‎)",s.UnitedArabEmirates,"971"],["United Kingdom",s.UnitedKingdom,"44",0],["United States",s.UnitedStates,"1",0],["Uruguay",s.Uruguay,"598"],["Uzbekistan (Oʻzbekiston)",s.Uzbekistan,"998"],["Vanuatu",s.Vanuatu,"678"],["Vatican City (Città del Vaticano)",s.VaticanCity,"39",1],["Venezuela",s.Venezuela,"58"],["Vietnam (Việt Nam)",s.Vietnam,"84"],["Wallis and Futuna",s.WallisAndFutuna,"681"],["Western Sahara (‫الصحراء الغربية‬‎)",s.WesternSahara,"212",1],["Yemen (‫اليمن‬‎)",s.Yemen,"967"],["Zambia",s.Zambia,"260"],["Zimbabwe",s.Zimbabwe,"263"],["Åland Islands",s.ÅlandIslands,"358",1]]},u=function(a){var e=document.getElementById("phone").getAttribute("validation");if("true"==e){var n=a.errors&&!0===a.errors.required,i={validatePhoneNumber:{valid:!1}},t=void 0;try{t=o.PhoneNumberUtil.getInstance().parse(a.value.number,a.value.countryCode)}catch(r){if(!0===n)return i}if(a.value){if(!t)return i;if(!o.PhoneNumberUtil.getInstance().isValidNumberForRegion(t,a.value.countryCode))return i}}else"false"==e&&a.clearValidators()},d={DialCode:"dialCode",Iso2:"iso2",Name:"name",All:"all"},c=u,h=function(){function a(a){this.countryCodeData=a,this.value="",this.preferredCountries=[],this.enablePlaceholder=!0,this.cssClass="form-control",this.onlyCountries=[],this.enableAutoCountrySelect=!0,this.searchCountryFlag=!1,this.searchCountryField=[d.All],this.maxLength="",this.selectFirstCountry=!0,this.phoneValidation=!0,this.selectedCountry={areaCodes:undefined,dialCode:"",flagClass:"",iso2:"",name:"",placeHolder:"",priority:0},this.phoneNumber="",this.allCountries=[],this.preferredCountriesInDropDown=[],this.phoneUtil=o.PhoneNumberUtil.getInstance(),this.disabled=!1,this.errors=["Phone number is required."],this.countrySearchText="",this.onTouched=function(){},this.propagateChange=function(a){}}return a.prototype.ngOnInit=function(){var e=this;this.fetchCountryData(),this.preferredCountries.length&&this.getPreferredCountries(),this.onlyCountries.length&&(this.allCountries=this.allCountries.filter(function(a){return e.onlyCountries.includes(a.iso2)})),this.selectFirstCountry&&(this.preferredCountriesInDropDown.length?this.selectedCountry=this.preferredCountriesInDropDown[0]:this.selectedCountry=this.allCountries[0]),this.getSelectedCountry()},a.prototype.ngOnChanges=function(a){this.allCountries&&a.selectedCountryISO&&a.selectedCountryISO.currentValue!==a.selectedCountryISO.previousValue&&this.getSelectedCountry(),a.preferredCountries&&this.getPreferredCountries()},a.prototype.getPreferredCountries=function(){var n=this;this.preferredCountries.length&&(this.preferredCountriesInDropDown=[],this.preferredCountries.forEach(function(e){var a=n.allCountries.filter(function(a){return a.iso2===e});n.preferredCountriesInDropDown.push(a[0])}))},a.prototype.getSelectedCountry=function(){var e=this;this.selectedCountryISO&&(this.selectedCountry=this.allCountries.find(function(a){return a.iso2.toLowerCase()===e.selectedCountryISO.toLowerCase()}),this.selectedCountry&&(this.phoneNumber?this.onPhoneNumberChange():this.propagateChange(undefined)))},a.prototype.searchCountry=function(){var e=this;if(this.countrySearchText){var n=this.countrySearchText.toLowerCase(),a=this.allCountries.filter(function(a){if(-1<e.searchCountryField.indexOf(d.All)){if(a.iso2.toLowerCase().startsWith(n))return a;if(a.name.toLowerCase().startsWith(n))return a;if(a.dialCode.startsWith(e.countrySearchText))return a}else{if(-1<e.searchCountryField.indexOf(d.Iso2)&&a.iso2.toLowerCase().startsWith(n))return a;if(-1<e.searchCountryField.indexOf(d.Name)&&a.name.toLowerCase().startsWith(n))return a;if(-1<e.searchCountryField.indexOf(d.DialCode)&&a.dialCode.startsWith(e.countrySearchText))return a}});if(0<a.length){var i=this.countryList.nativeElement.querySelector("#"+a[0].iso2);i&&i.scrollIntoView({behavior:"smooth"})}}else this.countryList.nativeElement.querySelector("li").scrollIntoView({behavior:"smooth"})},a.prototype.onPhoneNumberChange=function(){var a;this.value=this.phoneNumber;try{a=this.phoneUtil.parse(this.phoneNumber,this.selectedCountry.iso2.toUpperCase())}catch(i){}var e=this.selectedCountry.iso2;if(this.enableAutoCountrySelect&&(e=a&&a.getCountryCode()?this.getCountryIsoCode(a.getCountryCode(),a):this.selectedCountry.iso2)&&e!==this.selectedCountry.iso2){var n=this.allCountries.find(function(a){return a.iso2===e});n&&(this.selectedCountry=n)}e=e||this.selectedCountry.iso2,this.value?this.propagateChange({number:this.value,internationalNumber:a?this.phoneUtil.format(a,o.PhoneNumberFormat.INTERNATIONAL):"",nationalNumber:a?this.phoneUtil.format(a,o.PhoneNumberFormat.NATIONAL):"",countryCode:e.toUpperCase(),dialCode:"+"+this.selectedCountry.dialCode}):this.propagateChange(null)},a.prototype.onCountrySelect=function(a,e){if(this.selectedCountry=a,0<this.phoneNumber.length){this.value=this.phoneNumber;var n=void 0;try{n=this.phoneUtil.parse(this.phoneNumber,this.selectedCountry.iso2.toUpperCase())}catch(i){}this.propagateChange({number:this.value,internationalNumber:n?this.phoneUtil.format(n,o.PhoneNumberFormat.INTERNATIONAL):"",nationalNumber:n?this.phoneUtil.format(n,o.PhoneNumberFormat.NATIONAL):"",countryCode:this.selectedCountry.iso2.toUpperCase(),dialCode:"+"+this.selectedCountry.dialCode})}e.focus()},a.prototype.onInputKeyPress=function(a){/[0-9\+\-\ ]/.test(a.key)||a.ctrlKey&&/[axcv]/.test(a.key)||["ArrowLeft","ArrowUp","ArrowRight","ArrowDown","Home","End","Insert","Delete","Backspace"].includes(a.key)||a.preventDefault()},a.prototype.fetchCountryData=function(){var n=this;this.countryCodeData.allCountries.forEach(function(a){var e={name:a[0].toString(),iso2:a[1].toString(),dialCode:a[2].toString(),priority:+a[3]||0,areaCodes:a[4]||undefined,flagClass:a[1].toString().toLocaleLowerCase(),placeHolder:""};n.enablePlaceholder&&(e.placeHolder=n.getPhoneNumberPlaceHolder(e.iso2.toUpperCase())),n.allCountries.push(e)})},a.prototype.getPhoneNumberPlaceHolder=function(a){try{return this.phoneUtil.format(this.phoneUtil.getExampleNumber(a),o.PhoneNumberFormat.INTERNATIONAL)}catch(e){return e}},a.prototype.registerOnChange=function(a){this.propagateChange=a},a.prototype.registerOnTouched=function(a){this.onTouched=a},a.prototype.setDisabledState=function(a){this.disabled=a},a.prototype.writeValue=function(a){var e=this;"object"!=typeof a&&(this.phoneNumber=a),setTimeout(function(){e.onPhoneNumberChange()},1)},a.prototype.getCountryIsoCode=function(e,a){var n=a.values_[2].toString(),i=this.allCountries.filter(function(a){return a.dialCode===e.toString()}),t=i.find(function(a){return a.areaCodes===undefined}),r=i.filter(function(a){return a.areaCodes!==undefined}),o=t?t.iso2:undefined;return r.forEach(function(e){e.areaCodes.forEach(function(a){n.startsWith(a)&&(o=e.iso2)})}),o},a.decorators=[{type:e.Component,args:[{selector:"ngx-intl-tel-input",template:'<div class="intl-tel-input allow-dropdown">\n <div class="flag-container" dropdown [ngClass]="{\'disabled\': disabled}">\n <div class="selected-flag dropdown-toggle" dropdownToggle>\n <div class="iti-flag" [ngClass]="selectedCountry?.flagClass"\n [tooltip]="selectedCountry ? selectedCountry[tooltipField] : \'\'"></div>\n <div class="iti-arrow"></div>\n </div>\n <div *dropdownMenu class="dropdown-menu country-dropdown">\n <div class="search-container" *ngIf="searchCountryFlag && searchCountryField">\n <input id="country-search-box" [(ngModel)]="countrySearchText" (keyup)="searchCountry()"\n (click)="$event.stopPropagation()" autofocus>\n </div>\n <ul class="country-list" #countryList>\n <li class="country" *ngFor="let country of preferredCountriesInDropDown"\n (click)="onCountrySelect(country, focusable)" [id]="country.iso2">\n <div class="flag-box">\n <div class="iti-flag" [ngClass]="country.flagClass"></div>\n </div>\n <span class="country-name">{{country.name}}</span>\n <span class="dial-code">+{{country.dialCode}}</span>\n </li>\n <li class="divider" *ngIf="preferredCountriesInDropDown?.length"></li>\n <li class="country" *ngFor="let country of allCountries" (click)="onCountrySelect(country, focusable)"\n [id]="country.iso2">\n <div class="flag-box">\n <div class="iti-flag" [ngClass]="country.flagClass"></div>\n </div>\n <span class="country-name">{{country.name}}</span>\n <span class="dial-code">+{{country.dialCode}}</span>\n </li>\n </ul>\n </div>\n </div>\n <input type="tel" id="phone" autocomplete="off" [ngClass]="cssClass" (blur)="onTouched()"\n (keypress)="onInputKeyPress($event)" [(ngModel)]="phoneNumber" (ngModelChange)="onPhoneNumberChange()"\n [disabled]="disabled" [placeholder]="selectedCountry?.placeHolder || \'\'" [attr.maxLength]="maxLength"\n [attr.validation]="phoneValidation" #focusable>\n</div>',providers:[l,{provide:t.NG_VALUE_ACCESSOR,useExisting:e.forwardRef(function(){return a}),multi:!0},{provide:t.NG_VALIDATORS,useValue:c,multi:!0}],styles:["li.country:hover{background-color:rgba(0,0,0,.05)}.selected-flag.dropdown-toggle:after{content:none}.flag-container.disabled{cursor:default!important}.intl-tel-input.allow-dropdown .flag-container.disabled:hover .selected-flag{background:0 0}.country-dropdown{border:1px solid #ccc;width:-webkit-fit-content;width:-moz-fit-content;width:fit-content;padding:1px;border-collapse:collapse}.search-container{position:relative}.search-container input{width:100%;border:none;border-bottom:1px solid #ccc;padding-left:10px}.search-icon{position:absolute;z-index:2;width:25px;margin:1px 10px}.country-list{position:relative;border:none}"]}]}],a.ctorParameters=function(){return[{type:l}]},a.propDecorators={value:[{type:e.Input}],preferredCountries:[{type:e.Input}],enablePlaceholder:[{type:e.Input}],cssClass:[{type:e.Input}],onlyCountries:[{type:e.Input}],enableAutoCountrySelect:[{type:e.Input}],searchCountryFlag:[{type:e.Input}],searchCountryField:[{type:e.Input}],maxLength:[{type:e.Input}],tooltipField:[{type:e.Input}],selectFirstCountry:[{type:e.Input}],selectedCountryISO:[{type:e.Input}],phoneValidation:[{type:e.Input}],countryList:[{type:e.ViewChild,args:["countryList"]}]},a}(),p=function(){function a(){}return a.forRoot=function(){return{ngModule:a,providers:[r]}},a.decorators=[{type:e.NgModule,args:[{declarations:[h],imports:[n.CommonModule,t.FormsModule,t.ReactiveFormsModule,i.BsDropdownModule.forRoot(),i.TooltipModule.forRoot()],exports:[h]}]}],a}();a.NgxIntlTelInputService=r,a.NgxIntlTelInputComponent=h,a.NgxIntlTelInputModule=p,a.CountryISO=s,a.SearchCountryField=d,a.TooltipLabel={Name:"name",Iso2:"iso2"},a.ɵa=l,a.ɵb=u,Object.defineProperty(a,"__esModule",{value:!0})});
//# sourceMappingURL=ngx-intl-tel-input.umd.min.js.map

@@ -13,2 +13,2 @@ /**

export { SearchCountryField };
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VhcmNoLWNvdW50cnktZmllbGQuZW51bS5qcyIsInNvdXJjZVJvb3QiOiJuZzovL25neC1pbnRsLXRlbC1pbnB1dC8iLCJzb3VyY2VzIjpbImxpYi9lbnVtcy9zZWFyY2gtY291bnRyeS1maWVsZC5lbnVtLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7OztJQUNDLFVBQVcsVUFBVTtJQUNyQixNQUFPLE1BQU07SUFDYixNQUFPLE1BQU07SUFDYixLQUFNLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgY29uc3QgZW51bSBTZWFyY2hDb3VudHJ5RmllbGQge1xuXHREaWFsQ29kZSA9ICdkaWFsQ29kZScsXG5cdElzbzIgPSAnaXNvMicsXG5cdE5hbWUgPSAnbmFtZScsXG5cdEFsbCA9ICdhbGwnXG59XG4iXX0=
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VhcmNoLWNvdW50cnktZmllbGQuZW51bS5qcyIsInNvdXJjZVJvb3QiOiJuZzovL25neC1pbnRsLXRlbC1pbnB1dC8iLCJzb3VyY2VzIjpbImxpYi9lbnVtcy9zZWFyY2gtY291bnRyeS1maWVsZC5lbnVtLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7OztJQUNDLFVBQVcsVUFBVTtJQUNyQixNQUFPLE1BQU07SUFDYixNQUFPLE1BQU07SUFDYixLQUFNLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgZW51bSBTZWFyY2hDb3VudHJ5RmllbGQge1xuXHREaWFsQ29kZSA9ICdkaWFsQ29kZScsXG5cdElzbzIgPSAnaXNvMicsXG5cdE5hbWUgPSAnbmFtZScsXG5cdEFsbCA9ICdhbGwnXG59XG4iXX0=

@@ -11,2 +11,2 @@ /**

export { TooltipLabel };
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9vbHRpcC1sYWJlbC5lbnVtLmpzIiwic291cmNlUm9vdCI6Im5nOi8vbmd4LWludGwtdGVsLWlucHV0LyIsInNvdXJjZXMiOlsibGliL2VudW1zL3Rvb2x0aXAtbGFiZWwuZW51bS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7SUFDQyxNQUFPLE1BQU07SUFDYixNQUFPLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgY29uc3QgZW51bSBUb29sdGlwTGFiZWwge1xuXHROYW1lID0gJ25hbWUnLFxuXHRJc28yID0gJ2lzbzInXG59XG4iXX0=
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9vbHRpcC1sYWJlbC5lbnVtLmpzIiwic291cmNlUm9vdCI6Im5nOi8vbmd4LWludGwtdGVsLWlucHV0LyIsInNvdXJjZXMiOlsibGliL2VudW1zL3Rvb2x0aXAtbGFiZWwuZW51bS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7SUFDQyxNQUFPLE1BQU07SUFDYixNQUFPLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgZW51bSBUb29sdGlwTGFiZWwge1xuXHROYW1lID0gJ25hbWUnLFxuXHRJc28yID0gJ2lzbzInXG59XG4iXX0=

@@ -10,2 +10,4 @@ /**

import * as lpn from 'google-libphonenumber';
import { SearchCountryField } from './enums/search-country-field.enum';
import { TooltipLabel } from './enums/tooltip-label.enum';
import { CountryISO } from './enums/country-iso.enum';

@@ -26,3 +28,3 @@ const ɵ0 = phoneNumberValidator;

this.searchCountryFlag = false;
this.searchCountryField = ["all" /* All */];
this.searchCountryField = [SearchCountryField.All];
this.maxLength = '';

@@ -129,3 +131,3 @@ this.selectFirstCountry = true;

const country = this.allCountries.filter(c => {
if (this.searchCountryField.indexOf("all" /* All */) > -1) {
if (this.searchCountryField.indexOf(SearchCountryField.All) > -1) {
// Search in all fields

@@ -144,3 +146,3 @@ if (c.iso2.toLowerCase().startsWith(countrySearchTextLower)) {

// Or search by specific SearchCountryField(s)
if (this.searchCountryField.indexOf("iso2" /* Iso2 */) > -1) {
if (this.searchCountryField.indexOf(SearchCountryField.Iso2) > -1) {
if (c.iso2.toLowerCase().startsWith(countrySearchTextLower)) {

@@ -150,3 +152,3 @@ return c;

}
if (this.searchCountryField.indexOf("name" /* Name */) > -1) {
if (this.searchCountryField.indexOf(SearchCountryField.Name) > -1) {
if (c.name.toLowerCase().startsWith(countrySearchTextLower)) {

@@ -156,3 +158,3 @@ return c;

}
if (this.searchCountryField.indexOf("dialCode" /* DialCode */) > -1) {
if (this.searchCountryField.indexOf(SearchCountryField.DialCode) > -1) {
if (c.dialCode.startsWith(this.countrySearchText)) {

@@ -461,2 +463,2 @@ return c;

export { ɵ0 };
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmd4LWludGwtdGVsLWlucHV0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiJuZzovL25neC1pbnRsLXRlbC1pbnB1dC8iLCJzb3VyY2VzIjpbImxpYi9uZ3gtaW50bC10ZWwtaW5wdXQuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7QUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFVLFVBQVUsRUFBRSxLQUFLLEVBQUUsU0FBUyxFQUFFLFVBQVUsRUFBNEIsTUFBTSxlQUFlLENBQUM7QUFDdEgsT0FBTyxFQUFFLGFBQWEsRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ2xFLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUNsRCxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUV0RSxPQUFPLEtBQUssR0FBRyxNQUFNLHVCQUF1QixDQUFDO0FBRzdDLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztXQWdCekMsb0JBQW9CO0FBS2pDLE1BQU0sT0FBTyx3QkFBd0I7Ozs7SUF1Q3BDLFlBQ1MsZUFBNEI7UUFBNUIsb0JBQWUsR0FBZixlQUFlLENBQWE7UUF0QzVCLFVBQUssR0FBRyxFQUFFLENBQUM7UUFDWCx1QkFBa0IsR0FBa0IsRUFBRSxDQUFDO1FBQ3ZDLHNCQUFpQixHQUFHLElBQUksQ0FBQztRQUN6QixhQUFRLEdBQUcsY0FBYyxDQUFDO1FBQzFCLGtCQUFhLEdBQWtCLEVBQUUsQ0FBQztRQUNsQyw0QkFBdUIsR0FBRyxJQUFJLENBQUM7UUFDL0Isc0JBQWlCLEdBQUcsS0FBSyxDQUFDO1FBQzFCLHVCQUFrQixHQUF5QixpQkFBd0IsQ0FBQztRQUNwRSxjQUFTLEdBQUcsRUFBRSxDQUFDO1FBRWYsdUJBQWtCLEdBQUcsSUFBSSxDQUFDO1FBRTFCLG9CQUFlLEdBQUcsSUFBSSxDQUFDO1FBQ2hDLG9CQUFlLEdBQVk7WUFDMUIsU0FBUyxFQUFFLFNB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QUV2QiwrQ0FBa0Q7O0lBRWxELDZDQUFzQjs7SUFDdEIsbURBQWtDOzs7OztJQUdqQyxtREFBb0MiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIE9uSW5pdCwgZm9yd2FyZFJlZiwgSW5wdXQsIFZpZXdDaGlsZCwgRWxlbWVudFJlZiwgU2ltcGxlQ2hhbmdlcywgT25DaGFuZ2VzIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBOR19WQUxJREFUT1JTLCBOR19WQUxVRV9BQ0NFU1NPUiB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IENvdW50cnlDb2RlIH0gZnJvbSAnLi9kYXRhL2NvdW50cnktY29kZSc7XG5pbXBvcnQgeyBwaG9uZU51bWJlclZhbGlkYXRvciB9IGZyb20gJy4vbmd4LWludGwtdGVsLWlucHV0LnZhbGlkYXRvcic7XG5pbXBvcnQgeyBDb3VudHJ5IH0gZnJvbSAnLi9tb2RlbC9jb3VudHJ5Lm1vZGVsJztcbmltcG9ydCAqIGFzIGxwbiBmcm9tICdnb29nbGUtbGlicGhvbmVudW1iZXInO1xuaW1wb3J0IHsgU2VhcmNoQ291bnRyeUZpZWxkIH0gZnJvbSAnLi9lbnVtcy9zZWFyY2gtY291bnRyeS1maWVsZC5lbnVtJztcbmltcG9ydCB7IFRvb2x0aXBMYWJlbCB9IGZyb20gJy4vZW51bXMvdG9vbHRpcC1sYWJlbC5lbnVtJztcbmltcG9ydCB7IENvdW50cnlJU08gfSBmcm9tICcuL2VudW1zL2NvdW50cnktaXNvLmVudW0nO1xuXG5AQ29tcG9uZW50KHtcblx0c2VsZWN0b3I6ICduZ3gtaW50bC10ZWwtaW5wdXQnLFxuXHR0ZW1wbGF0ZVVybDogJy4vbmd4LWludGwtdGVsLWlucHV0LmNvbXBvbmVudC5odG1sJyxcblx0c3R5bGVVcmxzOiBbJy4vbmd4LWludGwtdGVsLWlucHV0LmNvbXBvbmVudC5jc3MnXSxcblx0cHJvdmlkZXJzOiBbXG5cdFx0Q291bnRyeUNvZGUsXG5cdFx0e1xuXHRcdFx0cHJvdmlkZTogTkdfVkFMVUVfQUNDRVNTT1IsXG5cdFx0XHQvLyB0c2xpbnQ6ZGlzYWJsZS1uZXh0LWxpbmU6bm8tZm9yd2FyZC1yZWZcblx0XHRcdHVzZUV4aXN0aW5nOiBmb3J3YXJkUmVmKCgpID0+IE5neEludGxUZWxJbnB1dENvbXBvbmVudCksXG5cdFx0XHRtdWx0aTogdHJ1ZVxuXHRcdH0sXG5cdFx0e1xuXHRcdFx0cHJvdmlkZTogTkdfVkFMSURBVE9SUyxcblx0XHRcdHVzZVZhbHVlOiBwaG9uZU51bWJlclZhbGlkYXRvcixcblx0XHRcdG11bHRpOiB0cnVlLFxuXHRcdH1cblx0XVxufSlcbmV4cG9ydCBjbGFzcyBOZ3hJbnRsVGVsSW5wdXRDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIE9uQ2hhbmdlcyB7XG5cblx0QElucHV0KCkgdmFsdWUgPSAnJztcblx0QElucHV0KCkgcHJlZmVycmVkQ291bnRyaWVzOiBBcnJheTxzdHJpbmc+ID0gW107XG5cdEBJbnB1dCgpIGVuYWJsZVBsYWNlaG9sZGVyID0gdHJ1ZTtcblx0QElucHV0KCkgY3NzQ2xhc3MgPSAnZm9ybS1jb250cm9sJztcblx0QElucHV0KCkgb25seUNvdW50cmllczogQXJyYXk8c3RyaW5nPiA9IFtdO1xuXHRASW5wdXQoKSBlbmFibGVBdXRvQ291bnRyeVNlbGVjdCA9IHRydWU7XG5cdEBJbnB1dCgpIHNlYXJjaENvdW50cnlGbGFnID0gZmFsc2U7XG5cdEBJbnB1dCgpIHNlYXJjaENvdW50cnlGaWVsZDogU2VhcmNoQ291bnRyeUZpZWxkW10gPSBbU2VhcmNoQ291bnRyeUZpZWxkLkFsbF07XG5cdEBJbnB1dCgpIG1heExlbmd0aCA9ICcnO1xuXHRASW5wdXQoKSB0b29sdGlwRmllbGQ6IFRvb2x0aXBMYWJlbDtcblx0QElucHV0KCkgc2VsZWN0Rmlyc3RDb3VudHJ5ID0gdHJ1ZTtcblx0QElucHV0KCkgc2VsZWN0ZWRDb3VudHJ5SVNPOiBDb3VudHJ5SVNPO1xuXHRASW5wdXQoKSBwaG9uZVZhbGlkYXRpb24gPSB0cnVlO1xuXHRzZWxlY3RlZENvdW50cnk6IENvdW50cnkgPSB7XG5cdFx0YXJlYUNvZGVzOiB1bmRlZmluZWQsXG5cdFx0ZGlhbENvZGU6ICcnLFxuXHRcdGZsYWdDbGFzczogJycsXG5cdFx0aXNvMjogJycsXG5cdFx0bmFtZTogJycsXG5cdFx0cGxhY2VIb2xkZXI6ICcnLFxuXHRcdHByaW9yaXR5OiAwXG5cdH07XG5cblx0cGhvbmVOdW1iZXIgPSAnJztcblx0YWxsQ291bnRyaWVzOiBBcnJheTxDb3VudHJ5PiA9IFtdO1xuXHRwcmVmZXJyZWRDb3VudHJpZXNJbkRyb3BEb3duOiBBcnJheTxDb3VudHJ5PiA9IFtdO1xuXHQvLyBIYXMgdG8gYmUgJ2FueScgdG8gcHJldmVudCBhIG5lZWQgdG8gaW5zdGFsbCBAdHlwZXMvZ29vZ2xlLWxpYnBob25lbnVtYmVyIGJ5IHRoZSBwYWNrYWdlIHVzZXIuLi5cblx0cGhvbmVVdGlsOiBhbnkgPSBscG4uUGhvbmVOdW1iZXJVdGlsLmdldEluc3RhbmNlKCk7XG5cdGRpc2FibGVkID0gZmFsc2U7XG5cdGVycm9yczogQXJyYXk8YW55PiA9IFsnUGhvbmUgbnVtYmVyIGlzIHJlcXVpcmVkLiddO1xuXHRjb3VudHJ5U2VhcmNoVGV4dCA9ICcnO1xuXG5cdEBWaWV3Q2hpbGQoJ2NvdW50cnlMaXN0JykgY291bnRyeUxpc3Q6IEVsZW1lbnRSZWY7XG5cblx0b25Ub3VjaGVkID0gKCkgPT4geyB9O1xuXHRwcm9wYWdhdGVDaGFuZ2UgPSAoXzogYW55KSA9PiB7IH07XG5cblx0Y29uc3RydWN0b3IoXG5cdFx0cHJpdmF0ZSBjb3VudHJ5Q29kZURhdGE6IENvdW50cnlDb2RlLFxuXHQpIHsgfVxuXG5cdG5nT25Jbml0KCkge1xuXG5cdFx0dGhpcy5mZXRjaENvdW50cnlEYXRhKCk7XG5cdFx0aWYgKHRoaXMucHJlZmVycmVkQ291bnRyaWVzLmxlbmd0aCkge1xuXHRcdFx0dGhpcy5nZXRQcmVmZXJyZWRDb3VudHJpZXMoKTtcblx0XHR9XG5cdFx0aWYgKHRoaXMub25seUNvdW50cmllcy5sZW5ndGgpIHtcblx0XHRcdHRoaXMuYWxsQ291bnRyaWVzID0gdGhpcy5hbGxDb3VudHJpZXMuZmlsdGVyKGMgPT4gdGhpcy5vbmx5Q291bnRyaWVzLmluY2x1ZGVzKGMuaXNvMikpO1xuXHRcdH1cblx0XHRpZiAodGhpcy5zZWxlY3RGaXJzdENvdW50cnkpIHtcblx0XHRcdGlmICh0aGlzLnByZWZlcnJlZENvdW50cmllc0luRHJvcERvd24ubGVuZ3RoKSB7XG5cdFx0XHRcdHRoaXMuc2VsZWN0ZWRDb3VudHJ5ID0gdGhpcy5wcmVmZXJyZWRDb3VudHJpZXNJbkRyb3BEb3duWzBdO1xuXHRcdFx0fSBlbHNlIHtcblx0XHRcdFx0dGhpcy5zZWxlY3RlZENvdW50cnkgPSB0aGlzLmFsbENvdW50cmllc1swXTtcblx0XHRcdH1cblx0XHR9XG5cdFx0dGhpcy5nZXRTZWxlY3RlZENvdW50cnkoKTtcblx0fVxuXG5cdG5nT25DaGFuZ2VzKGNoYW5nZXM6IFNpbXBsZUNoYW5nZXMpIHtcblx0XHRpZiAodGhpcy5hbGxDb3VudHJpZXMgJiYgY2hhbmdlc1snc2VsZWN0ZWRDb3VudHJ5SVNPJ11cblx0XHQmJiBjaGFuZ2VzWydzZWxlY3RlZENvdW50cnlJU08nXS5jdXJyZW50VmFsdWUgIT09IGNoYW5nZXNbJ3NlbGVjdGVkQ291bnRyeUlTTyddLnByZXZpb3VzVmFsdWUpIHtcblx0XHRcdHRoaXMuZ2V0U2VsZWN0ZWRDb3VudHJ5KCk7XG5cdFx0fVxuXHRcdGlmIChjaGFuZ2VzLnByZWZlcnJlZENvdW50cmllcykge1xuXHRcdFx0dGhpcy5nZXRQcmVmZXJyZWRDb3VudHJpZXMoKTtcblx0XHR9XG5cdH1cblxuXHRnZXRQcmVmZXJyZWRDb3VudHJpZXMoKSB7XG5cdFx0aWYgKHRoaXMucHJlZmVycmVkQ291bnRyaWVzLmxlbmd0aCkge1xuXHRcdFx0dGhpcy5wcmVmZXJyZWRDb3VudHJpZXNJbkRyb3BEb3duID0gW107XG5cdFx0XHR0aGlzLnByZWZlcnJlZENvdW50cmllcy5mb3JFYWNoKGlzbzIgPT4ge1xuXHRcdFx0XHRjb25zdCBwcmVmZXJyZWRDb3VudHJ5ID0gdGhpcy5hbGxDb3VudHJpZXMuZmlsdGVyKChjKSA9PiB7XG5cdFx0XHRcdFx0cmV0dXJuIGMuaXNvMiA9PT0gaXNvMjtcblx0XHRcdFx0fSk7XG5cblx0XHRcdFx0dGhpcy5wcmVmZXJyZWRDb3VudHJpZXNJbkRyb3BEb3duLnB1c2gocHJlZmVycmVkQ291bnRyeVswXSk7XG5cdFx0XHR9KTtcblx0XHR9XG5cdH1cblxuXHRnZXRTZWxlY3RlZENvdW50cnkoKSB7XG5cdFx0aWYgKHRoaXMuc2VsZWN0ZWRDb3VudHJ5SVNPKSB7XG5cdFx0XHR0aGlzLnNlbGVjdGVkQ291bnRyeSA9IHRoaXMuYWxsQ291bnRyaWVzLmZpbmQoYyA9PiB7IHJldHVybiAoYy5pc28yLnRvTG93ZXJDYXNlKCkgPT09IHRoaXMuc2VsZWN0ZWRDb3VudHJ5SVNPLnRvTG93ZXJDYXNlKCkpOyB9KTtcblx0XHRcdGlmICh0aGlzLnNlbGVjdGVkQ291bnRyeSkge1xuXHRcdFx0XHRpZiAodGhpcy5waG9uZU51bWJlcikge1xuXHRcdFx0XHRcdHRoaXMub25QaG9uZU51bWJlckNoYW5nZSgpO1xuXHRcdFx0XHR9IGVsc2Uge1xuXHRcdFx0XHRcdHRoaXMucHJvcGFnYXRlQ2hhbmdlKHVuZGVmaW5lZCk7XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHR9XG5cdH1cblxuXG5cdC8qKlxuXHQgKiBTZWFyY2ggY291bnRyeSBiYXNlZCBvbiBjb3VudHJ5IG5hbWUsIGlzbzIsIGRpYWxDb2RlIG9yIGFsbCBvZiB0aGVtLlxuXHQgKi9cblx0c2VhcmNoQ291bnRyeSgpIHtcblx0XHRpZiAoIXRoaXMuY291bnRyeVNlYXJjaFRleHQpIHtcblx0XHRcdHRoaXMuY291bnRyeUxpc3QubmF0aXZlRWxlbWVudC5xdWVyeVNlbGVjdG9yKCdsaScpLnNjcm9sbEludG9WaWV3KHsgYmVoYXZpb3I6ICdzbW9vdGgnIH0pO1xuXHRcdFx0cmV0dXJuO1xuXHRcdH1cblx0XHRjb25zdCBjb3VudHJ5U2VhcmNoVGV4dExvd2VyID0gdGhpcy5jb3VudHJ5U2VhcmNoVGV4dC50b0xvd2VyQ2FzZSgpO1xuXHRcdGNvbnN0IGNvdW50cnkgPSB0aGlzLmFsbENvdW50cmllcy5maWx0ZXIoYyA9PiB7XG5cdFx0XHRpZiAodGhpcy5zZWFyY2hDb3VudHJ5RmllbGQuaW5kZXhPZihTZWFyY2hDb3VudHJ5RmllbGQuQWxsKSA+IC0xKSB7XG5cdFx0XHRcdC8vIFNlYXJjaCBpbiBhbGwgZmllbGRzXG5cdFx0XHRcdGlmIChjLmlzbzIudG9Mb3dlckNhc2UoKS5zdGFydHNXaXRoKGNvdW50cnlTZWFyY2hUZXh0TG93ZXIpKSB7XG5cdFx0XHRcdFx0cmV0dXJuIGM7XG5cdFx0XHRcdH1cblx0XHRcdFx0aWYgKGMubmFtZS50b0xvd2VyQ2FzZSgpLnN0YXJ0c1dpdGgoY291bnRyeVNlYXJjaFRleHRMb3dlcikpIHtcblx0XHRcdFx0XHRyZXR1cm4gYztcblx0XHRcdFx0fVxuXHRcdFx0XHRpZiAoYy5kaWFsQ29kZS5zdGFydHNXaXRoKHRoaXMuY291bnRyeVNlYXJjaFRleHQpKSB7XG5cdFx0XHRcdFx0cmV0dXJuIGM7XG5cdFx0XHRcdH1cblx0XHRcdH0gZWxzZSB7XG5cdFx0XHRcdC8vIE9yIHNlYXJjaCBieSBzcGVjaWZpYyBTZWFyY2hDb3VudHJ5RmllbGQocylcblx0XHRcdFx0aWYgKHRoaXMuc2VhcmNoQ291bnRyeUZpZWxkLmluZGV4T2YoU2VhcmNoQ291bnRyeUZpZWxkLklzbzIpID4gLTEpIHtcblx0XHRcdFx0XHRpZiAoYy5pc28yLnRvTG93ZXJDYXNlKCkuc3RhcnRzV2l0aChjb3VudHJ5U2VhcmNoVGV4dExvd2VyKSkge1xuXHRcdFx0XHRcdFx0cmV0dXJuIGM7XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9XG5cdFx0XHRcdGlmICh0aGlzLnNlYXJjaENvdW50cnlGaWVsZC5pbmRleE9mKFNlYXJjaENvdW50cnlGaWVsZC5OYW1lKSA+IC0xKSB7XG5cdFx0XHRcdFx0aWYgKGMubmFtZS50b0xvd2VyQ2FzZSgpLnN0YXJ0c1dpdGgoY291bnRyeVNlYXJjaFRleHRMb3dlcikpIHtcblx0XHRcdFx0XHRcdHJldHVybiBjO1xuXHRcdFx0XHRcdH1cblx0XHRcdFx0fVxuXHRcdFx0XHRpZiAodGhpcy5zZWFyY2hDb3VudHJ5RmllbGQuaW5kZXhPZihTZWFyY2hDb3VudHJ5RmllbGQuRGlhbENvZGUpID4gLTEpIHtcblx0XHRcdFx0XHRpZiAoYy5kaWFsQ29kZS5zdGFydHNXaXRoKHRoaXMuY291bnRyeVNlYXJjaFRleHQpKSB7XG5cdFx0XHRcdFx0XHRyZXR1cm4gYztcblx0XHRcdFx0XHR9XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHR9KTtcblxuXHRcdGlmIChjb3VudHJ5Lmxlbmd0aCA+IDApIHtcblx0XHRcdGNvbnN0IGVsID0gdGhpcy5jb3VudHJ5TGlzdC5uYXRpdmVFbGVtZW50LnF1ZXJ5U2VsZWN0b3IoJyMnICsgY291bnRyeVswXS5pc28yKTtcblx0XHRcdGlmIChlbCkge1xuXHRcdFx0XHRlbC5zY3JvbGxJbnRvVmlldyh7IGJlaGF2aW9yOiAnc21vb3RoJyB9KTtcblx0XHRcdH1cblx0XHR9XG5cdH1cblxuXHRwdWJsaWMgb25QaG9uZU51bWJlckNoYW5nZSgpOiB2b2lkIHtcblx0XHR0aGlzLnZhbHVlID0gdGhpcy5waG9uZU51bWJlcjtcblxuXHRcdGxldCBudW1iZXI6IGxwbi5QaG9uZU51bWJlcjtcblx0XHR0cnkge1xuXHRcdFx0bnVtYmVyID0gdGhpcy5waG9uZVV0aWwucGFyc2UodGhpcy5waG9uZU51bWJlciwgdGhpcy5zZWxlY3RlZENvdW50cnkuaXNvMi50b1VwcGVyQ2FzZSgpKTtcblx0XHR9IGNhdGNoIChlKSB7XG5cdFx0fVxuXG5cdFx0bGV0IGNvdW50cnlDb2RlID0gdGhpcy5zZWxlY3RlZENvdW50cnkuaXNvMjtcblx0XHQvLyBhdXRvIHNlbGVjdCBjb3VudHJ5IGJhc2VkIG9uIHRoZSBleHRlbnNpb24gKGFuZCBhcmVhQ29kZSBpZiBuZWVkZWQpIChlLmcgc2VsZWN0IENhbmFkYSBpZiBudW1iZXIgc3RhcnRzIHdpdGggKzEgNDE2KVxuXHRcdGlmICh0aGlzLmVuYWJsZUF1dG9Db3VudHJ5U2VsZWN0KSB7XG5cdFx0XHRjb3VudHJ5Q29kZSA9IG51bWJlciAmJiBudW1iZXIuZ2V0Q291bnRyeUNvZGUoKVxuXHRcdFx0XHQ/IHRoaXMuZ2V0Q291bnRyeUlzb0NvZGUobnVtYmVyLmdldENvdW50cnlDb2RlKCksIG51bWJlcilcblx0XHRcdFx0OiB0aGlzLnNlbGVjdGVkQ291bnRyeS5pc28yO1xuXHRcdFx0aWYgKGNvdW50cnlDb2RlICYmIGNvdW50cnlDb2RlICE9PSB0aGlzLnNlbGVjdGVkQ291bnRyeS5pc28yKSB7XG5cdFx0XHRcdGNvbnN0IG5ld0NvdW50cnkgPSB0aGlzLmFsbENvdW50cmllcy5maW5kKGMgPT4gYy5pc28yID09PSBjb3VudHJ5Q29kZSk7XG5cdFx0XHRcdGlmIChuZXdDb3VudHJ5KSB7XG5cdFx0XHRcdFx0dGhpcy5zZWxlY3RlZENvdW50cnkgPSBuZXdDb3VudHJ5O1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0fVxuXHRcdGNvdW50cnlDb2RlID0gY291bnRyeUNvZGUgPyBjb3VudHJ5Q29kZSA6IHRoaXMuc2VsZWN0ZWRDb3VudHJ5LmlzbzI7XG5cblx0XHRpZiAoIXRoaXMudmFsdWUpIHtcblx0XHRcdC8vIHRzbGludDpkaXNhYmxlLW5leHQtbGluZTpuby1udWxsLWtleXdvcmRcblx0XHRcdHRoaXMucHJvcGFnYXRlQ2hhbmdlKG51bGwpO1xuXHRcdH0gZWxzZSB7XG5cdFx0XHR0aGlzLnByb3BhZ2F0ZUNoYW5nZSh7XG5cdFx0XHRcdG51bWJlcjogdGhpcy52YWx1ZSxcblx0XHRcdFx0aW50ZXJuYXRpb25hbE51bWJlcjogbnVtYmVyID8gdGhpcy5waG9uZVV0aWwuZm9ybWF0KG51bWJlciwgbHBuLlBob25lTnVtYmVyRm9ybWF0LklOVEVSTkFUSU9OQUwpIDogJycsXG5cdFx0XHRcdG5hdGlvbmFsTnVtYmVyOiBudW1iZXIgPyB0aGlzLnBob25lVXRpbC5mb3JtYXQobnVtYmVyLCBscG4uUGhvbmVOdW1iZXJGb3JtYXQuTkFUSU9OQUwpIDogJycsXG5cdFx0XHRcdGNvdW50cnlDb2RlOiBjb3VudHJ5Q29kZS50b1VwcGVyQ2FzZSgpLFxuXHRcdFx0XHRkaWFsQ29kZTogJysnICsgdGhpcy5zZWxlY3RlZENvdW50cnkuZGlhbENvZGVcblx0XHRcdH0pO1xuXHRcdH1cblx0fVxuXG5cdHB1YmxpYyBvbkNvdW50cnlTZWxlY3QoY291bnRyeTogQ291bnRyeSwgZWwpOiB2b2lkIHtcblx0XHR0aGlzLnNlbGVjdGVkQ291bnRyeSA9IGNvdW50cnk7XG5cblx0XHRpZiAodGhpcy5waG9uZU51bWJlci5sZW5ndGggPiAwKSB7XG5cdFx0XHR0aGlzLnZhbHVlID0gdGhpcy5waG9uZU51bWJlcjtcblxuXHRcdFx0bGV0IG51bWJlcjogbHBuLlBob25lTnVtYmVyO1xuXHRcdFx0dHJ5IHtcblx0XHRcdFx0bnVtYmVyID0gdGhpcy5waG9uZVV0aWwucGFyc2UodGhpcy5waG9uZU51bWJlciwgdGhpcy5zZWxlY3RlZENvdW50cnkuaXNvMi50b1VwcGVyQ2FzZSgpKTtcblx0XHRcdH0gY2F0Y2ggKGUpIHtcblx0XHRcdH1cblxuXHRcdFx0dGhpcy5wcm9wYWdhdGVDaGFuZ2Uoe1xuXHRcdFx0XHRudW1iZXI6IHRoaXMudmFsdWUsXG5cdFx0XHRcdGludGVybmF0aW9uYWxOdW1iZXI6IG51bWJlciA/IHRoaXMucGhvbmVVdGlsLmZvcm1hdChudW1iZXIsIGxwbi5QaG9uZU51bWJlckZvcm1hdC5JTlRFUk5BVElPTkFMKSA6ICcnLFxuXHRcdFx0XHRuYXRpb25hbE51bWJlcjogbnVtYmVyID8gdGhpcy5waG9uZVV0aWwuZm9ybWF0KG51bWJlciwgbHBuLlBob25lTnVtYmVyRm9ybWF0Lk5BVElPTkFMKSA6ICcnLFxuXHRcdFx0XHRjb3VudHJ5Q29kZTogdGhpcy5zZWxlY3RlZENvdW50cnkuaXNvMi50b1VwcGVyQ2FzZSgpLFxuXHRcdFx0XHRkaWFsQ29kZTogJysnICsgdGhpcy5zZWxlY3RlZENvdW50cnkuZGlhbENvZGVcblx0XHRcdH0pO1xuXHRcdH1cblxuXHRcdGVsLmZvY3VzKCk7XG5cdH1cblxuXHRwdWJsaWMgb25JbnB1dEtleVByZXNzKGV2ZW50OiBLZXlib2FyZEV2ZW50KTogdm9pZCB7XG5cdFx0Y29uc3QgYWxsb3dlZENoYXJzID0gL1swLTlcXCtcXC1cXCBdLztcblx0XHRjb25zdCBhbGxvd2VkQ3RybENoYXJzID0gL1theGN2XS87IC8vIEFsbG93cyBjb3B5LXBhc3Rpbmdcblx0XHRjb25zdCBhbGxvd2VkT3RoZXJLZXlzID0gW1xuXHRcdFx0J0Fycm93TGVmdCcsICdBcnJvd1VwJywgJ0Fycm93UmlnaHQnLCAnQXJyb3dEb3duJyxcblx0XHRcdCdIb21lJywgJ0VuZCcsICdJbnNlcnQnLCAnRGVsZXRlJywgJ0JhY2tzcGFjZSdcblx0XHRdO1xuXG5cdFx0aWYgKCFhbGxvd2VkQ2hhcnMudGVzdChldmVudC5rZXkpXG5cdFx0XHQmJiAhKGV2ZW50LmN0cmxLZXkgJiYgYWxsb3dlZEN0cmxDaGFycy50ZXN0KGV2ZW50LmtleSkpXG5cdFx0XHQmJiAhKGFsbG93ZWRPdGhlcktleXMuaW5jbHVkZXMoZXZlbnQua2V5KSkpIHtcblx0XHRcdGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG5cdFx0fVxuXHR9XG5cblx0cHJvdGVjdGVkIGZldGNoQ291bnRyeURhdGEoKTogdm9pZCB7XG5cdFx0dGhpcy5jb3VudHJ5Q29kZURhdGEuYWxsQ291bnRyaWVzLmZvckVhY2goYyA9PiB7XG5cdFx0XHRjb25zdCBjb3VudHJ5OiBDb3VudHJ5ID0ge1xuXHRcdFx0XHRuYW1lOiBjWzBdLnRvU3RyaW5nKCksXG5cdFx0XHRcdGlzbzI6IGNbMV0udG9TdHJpbmcoKSxcblx0XHRcdFx0ZGlhbENvZGU6IGNbMl0udG9TdHJpbmcoKSxcblx0XHRcdFx0cHJpb3JpdHk6ICtjWzNdIHx8IDAsXG5cdFx0XHRcdGFyZWFDb2RlczogY1s0XSBhcyBzdHJpbmdbXSB8fCB1bmRlZmluZWQsXG5cdFx0XHRcdGZsYWdDbGFzczogY1sxXS50b1N0cmluZygpLnRvTG9jYWxlTG93ZXJDYXNlKCksXG5cdFx0XHRcdHBsYWNlSG9sZGVyOiAnJ1xuXHRcdFx0fTtcblxuXHRcdFx0aWYgKHRoaXMuZW5hYmxlUGxhY2Vob2xkZXIpIHtcblx0XHRcdFx0Y291bnRyeS5wbGFjZUhvbGRlciA9IHRoaXMuZ2V0UGhvbmVOdW1iZXJQbGFjZUhvbGRlcihjb3VudHJ5LmlzbzIudG9VcHBlckNhc2UoKSk7XG5cdFx0XHR9XG5cblx0XHRcdHRoaXMuYWxsQ291bnRyaWVzLnB1c2goY291bnRyeSk7XG5cdFx0fSk7XG5cdH1cblxuXHRwcm90ZWN0ZWQgZ2V0UGhvbmVOdW1iZXJQbGFjZUhvbGRlcihjb3VudHJ5Q29kZTogc3RyaW5nKTogc3RyaW5nIHtcblx0XHR0cnkge1xuXHRcdFx0cmV0dXJuIHRoaXMucGhvbmVVdGlsLmZvcm1hdCh0aGlzLnBob25lVXRpbC5nZXRFeGFtcGxlTnVtYmVyKGNvdW50cnlDb2RlKSwgbHBuLlBob25lTnVtYmVyRm9ybWF0LklOVEVSTkFUSU9OQUwpO1xuXHRcdH0gY2F0Y2ggKGUpIHtcblx0XHRcdHJldHVybiBlO1xuXHRcdH1cblx0fVxuXG5cdHJlZ2lzdGVyT25DaGFuZ2UoZm46IGFueSk6IHZvaWQge1xuXHRcdHRoaXMucHJvcGFnYXRlQ2hhbmdlID0gZm47XG5cdH1cblxuXHRyZWdpc3Rlck9uVG91Y2hlZChmbjogYW55KSB7XG5cdFx0dGhpcy5vblRvdWNoZWQgPSBmbjtcblx0fVxuXG5cdHNldERpc2FibGVkU3RhdGUoaXNEaXNhYmxlZDogYm9vbGVhbik6IHZvaWQge1xuXHRcdHRoaXMuZGlzYWJsZWQgPSBpc0Rpc2FibGVkO1xuXHR9XG5cblx0d3JpdGVWYWx1ZShvYmo6IGFueSk6IHZvaWQge1xuXHRcdGlmICh0eXBlb2Ygb2JqICE9PSAnb2JqZWN0Jykge1xuXHRcdFx0dGhpcy5waG9uZU51bWJlciA9IG9iajtcblx0XHR9XG5cdFx0c2V0VGltZW91dCgoKSA9PiB7XG5cdFx0XHR0aGlzLm9uUGhvbmVOdW1iZXJDaGFuZ2UoKTtcblx0XHR9LCAxKTtcblx0fVxuXG5cdHByaXZhdGUgZ2V0Q291bnRyeUlzb0NvZGUoY291bnRyeUNvZGU6IG51bWJlciwgbnVtYmVyOiBscG4uUGhvbmVOdW1iZXIpOiBzdHJpbmcgfCB1bmRlZmluZWQge1xuXHRcdC8vIFdpbGwgdXNlIHRoaXMgdG8gbWF0Y2ggYXJlYSBjb2RlIGZyb20gdGhlIGZpcnN0IG51bWJlcnNcblx0XHRjb25zdCByYXdOdW1iZXIgPSBudW1iZXJbJ3ZhbHVlc18nXVsnMiddLnRvU3RyaW5nKCk7XG5cdFx0Ly8gTGlzdCBvZiBhbGwgY291bnRyaWVzIHdpdGggY291bnRyeUNvZGUgKGNhbiBiZSBtb3JlIHRoYW4gb25lLiBlLnguIFVTLCBDQSwgRE8sIFBSIGFsbCBoYXZlICsxIGNvdW50cnlDb2RlKVxuXHRcdGNvbnN0IGNvdW50cmllcyA9IHRoaXMuYWxsQ291bnRyaWVzLmZpbHRlcihjID0+IGMuZGlhbENvZGUgPT09IGNvdW50cnlDb2RlLnRvU3RyaW5nKCkpO1xuXHRcdC8vIE1haW4gY291bnRyeSBpcyB0aGUgY291bnRyeSwgd2hpY2ggaGFzIG5vIGFyZWFDb2RlcyBzcGVjaWZpZWQgaW4gY291bnRyeS1jb2RlLnRzIGZpbGUuXG5cdFx0Y29uc3QgbWFpbkNvdW50cnkgPSBjb3VudHJpZXMuZmluZChjID0+IGMuYXJlYUNvZGVzID09PSB1bmRlZmluZWQpO1xuXHRcdC8vIFNlY29uZGFyeSBjb3VudHJpZXMgYXJlIGFsbCBjb3VudHJpZXMsIHdoaWNoIGhhdmUgYXJlYUNvZGVzIHNwZWNpZmllZCBpbiBjb3VudHJ5LWNvZGUudHMgZmlsZS5cblx0XHRjb25zdCBzZWNvbmRhcnlDb3VudHJpZXMgPSBjb3VudHJpZXMuZmlsdGVyKGMgPT4gYy5hcmVhQ29kZXMgIT09IHVuZGVmaW5lZCk7XG5cdFx0bGV0IG1hdGNoZWRDb3VudHJ5ID0gbWFpbkNvdW50cnkgPyBtYWluQ291bnRyeS5pc28yIDogdW5kZWZpbmVkO1xuXG5cdFx0Lypcblx0XHRcdEludGVyYXRlIG92ZXIgZWFjaCBzZWNvbmRhcnkgY291bnRyeSBhbmQgY2hlY2sgaWYgbmF0aW9uYWxOdW1iZXIgc3RhcnRzIHdpdGggYW55IG9mIGFyZWFDb2RlcyBhdmFpbGFibGUuXG5cdFx0XHRJZiBubyBtYXRjaGVzIGZvdW5kLCBmYWxsYmFjayB0byB0aGUgbWFpbiBjb3VudHJ5LlxuXHRcdCovXG5cdFx0c2Vjb25kYXJ5Q291bnRyaWVzLmZvckVhY2goY291bnRyeSA9PiB7XG5cdFx0XHRjb3VudHJ5LmFyZWFDb2Rlcy5mb3JFYWNoKGFyZWFDb2RlID0+IHtcblx0XHRcdFx0aWYgKHJhd051bWJlci5zdGFydHNXaXRoKGFyZWFDb2RlKSkge1xuXHRcdFx0XHRcdG1hdGNoZWRDb3VudHJ5ID0gY291bnRyeS5pc28yO1xuXHRcdFx0XHR9XG5cdFx0XHR9KTtcblx0XHR9KTtcblxuXHRcdHJldHVybiBtYXRjaGVkQ291bnRyeTtcblx0fVxuXG59XG4iXX0=
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmd4LWludGwtdGVsLWlucHV0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiJuZzovL25neC1pbnRsLXRlbC1pbnB1dC8iLCJzb3VyY2VzIjpbImxpYi9uZ3gtaW50bC10ZWwtaW5wdXQuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7QUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFVLFVBQVUsRUFBRSxLQUFLLEVBQUUsU0FBUyxFQUFFLFVBQVUsRUFBNEIsTUFBTSxlQUFlLENBQUM7QUFDdEgsT0FBTyxFQUFFLGFBQWEsRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ2xFLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUNsRCxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUV0RSxPQUFPLEtBQUssR0FBRyxNQUFNLHVCQUF1QixDQUFDO0FBQzdDLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLG1DQUFtQyxDQUFDO0FBQ3ZFLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUMxRCxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sMEJBQTBCLENBQUM7V0FnQnpDLG9CQUFvQjtBQUtqQyxNQUFNLE9BQU8sd0JBQXdCOzs7O0lBdUNwQyxZQUNTLGVBQTRCO1FBQTVCLG9CQUFlLEdBQWYsZUFBZSxDQUFhO1FBdEM1QixVQUFLLEdBQUcsRUFBRSxDQUFDO1FBQ1gsdUJBQWtCLEdBQWtCLEVBQUUsQ0FBQztRQUN2QyxzQkFBaUIsR0FBRyxJQUFJLENBQUM7UUFDekIsYUFBUSxHQUFHLGNBQWMsQ0FBQztRQUMxQixrQkFBYSxHQUFrQixFQUFFLENBQUM7UUFDbEMsNEJBQXVCLEdBQUcsSUFBSSxDQUFDO1FBQy9CLHNCQUFpQixHQUFHLEtBQUssQ0FBQztRQUMxQix1QkFBa0IsR0FBeUIsQ0FBQyxrQkFBa0IsQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUNwRSxj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REFBNkU7O0lBQzdFLDZDQUF3Qjs7SUFDeEIsZ0RBQW9DOztJQUNwQyxzREFBbUM7O0lBQ25DLHNEQUF3Qzs7SUFDeEMsbURBQWdDOztJQUNoQyxtREFRRTs7SUFFRiwrQ0FBaUI7O0lBQ2pCLGdEQUFrQzs7SUFDbEMsZ0VBQWtEOztJQUVsRCw2Q0FBbUQ7O0lBQ25ELDRDQUFpQjs7SUFDakIsMENBQW1EOztJQUNuRCxxREFBdUI7O0lBRXZCLCtDQUFrRDs7SUFFbEQsNkNBQXNCOztJQUN0QixtREFBa0M7Ozs7O0lBR2pDLG1EQUFvQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgT25Jbml0LCBmb3J3YXJkUmVmLCBJbnB1dCwgVmlld0NoaWxkLCBFbGVtZW50UmVmLCBTaW1wbGVDaGFuZ2VzLCBPbkNoYW5nZXMgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE5HX1ZBTElEQVRPUlMsIE5HX1ZBTFVFX0FDQ0VTU09SIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgQ291bnRyeUNvZGUgfSBmcm9tICcuL2RhdGEvY291bnRyeS1jb2RlJztcbmltcG9ydCB7IHBob25lTnVtYmVyVmFsaWRhdG9yIH0gZnJvbSAnLi9uZ3gtaW50bC10ZWwtaW5wdXQudmFsaWRhdG9yJztcbmltcG9ydCB7IENvdW50cnkgfSBmcm9tICcuL21vZGVsL2NvdW50cnkubW9kZWwnO1xuaW1wb3J0ICogYXMgbHBuIGZyb20gJ2dvb2dsZS1saWJwaG9uZW51bWJlcic7XG5pbXBvcnQgeyBTZWFyY2hDb3VudHJ5RmllbGQgfSBmcm9tICcuL2VudW1zL3NlYXJjaC1jb3VudHJ5LWZpZWxkLmVudW0nO1xuaW1wb3J0IHsgVG9vbHRpcExhYmVsIH0gZnJvbSAnLi9lbnVtcy90b29sdGlwLWxhYmVsLmVudW0nO1xuaW1wb3J0IHsgQ291bnRyeUlTTyB9IGZyb20gJy4vZW51bXMvY291bnRyeS1pc28uZW51bSc7XG5cbkBDb21wb25lbnQoe1xuXHRzZWxlY3RvcjogJ25neC1pbnRsLXRlbC1pbnB1dCcsXG5cdHRlbXBsYXRlVXJsOiAnLi9uZ3gtaW50bC10ZWwtaW5wdXQuY29tcG9uZW50Lmh0bWwnLFxuXHRzdHlsZVVybHM6IFsnLi9uZ3gtaW50bC10ZWwtaW5wdXQuY29tcG9uZW50LmNzcyddLFxuXHRwcm92aWRlcnM6IFtcblx0XHRDb3VudHJ5Q29kZSxcblx0XHR7XG5cdFx0XHRwcm92aWRlOiBOR19WQUxVRV9BQ0NFU1NPUixcblx0XHRcdC8vIHRzbGludDpkaXNhYmxlLW5leHQtbGluZTpuby1mb3J3YXJkLXJlZlxuXHRcdFx0dXNlRXhpc3Rpbmc6IGZvcndhcmRSZWYoKCkgPT4gTmd4SW50bFRlbElucHV0Q29tcG9uZW50KSxcblx0XHRcdG11bHRpOiB0cnVlXG5cdFx0fSxcblx0XHR7XG5cdFx0XHRwcm92aWRlOiBOR19WQUxJREFUT1JTLFxuXHRcdFx0dXNlVmFsdWU6IHBob25lTnVtYmVyVmFsaWRhdG9yLFxuXHRcdFx0bXVsdGk6IHRydWUsXG5cdFx0fVxuXHRdXG59KVxuZXhwb3J0IGNsYXNzIE5neEludGxUZWxJbnB1dENvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgT25DaGFuZ2VzIHtcblxuXHRASW5wdXQoKSB2YWx1ZSA9ICcnO1xuXHRASW5wdXQoKSBwcmVmZXJyZWRDb3VudHJpZXM6IEFycmF5PHN0cmluZz4gPSBbXTtcblx0QElucHV0KCkgZW5hYmxlUGxhY2Vob2xkZXIgPSB0cnVlO1xuXHRASW5wdXQoKSBjc3NDbGFzcyA9ICdmb3JtLWNvbnRyb2wnO1xuXHRASW5wdXQoKSBvbmx5Q291bnRyaWVzOiBBcnJheTxzdHJpbmc+ID0gW107XG5cdEBJbnB1dCgpIGVuYWJsZUF1dG9Db3VudHJ5U2VsZWN0ID0gdHJ1ZTtcblx0QElucHV0KCkgc2VhcmNoQ291bnRyeUZsYWcgPSBmYWxzZTtcblx0QElucHV0KCkgc2VhcmNoQ291bnRyeUZpZWxkOiBTZWFyY2hDb3VudHJ5RmllbGRbXSA9IFtTZWFyY2hDb3VudHJ5RmllbGQuQWxsXTtcblx0QElucHV0KCkgbWF4TGVuZ3RoID0gJyc7XG5cdEBJbnB1dCgpIHRvb2x0aXBGaWVsZDogVG9vbHRpcExhYmVsO1xuXHRASW5wdXQoKSBzZWxlY3RGaXJzdENvdW50cnkgPSB0cnVlO1xuXHRASW5wdXQoKSBzZWxlY3RlZENvdW50cnlJU086IENvdW50cnlJU087XG5cdEBJbnB1dCgpIHBob25lVmFsaWRhdGlvbiA9IHRydWU7XG5cdHNlbGVjdGVkQ291bnRyeTogQ291bnRyeSA9IHtcblx0XHRhcmVhQ29kZXM6IHVuZGVmaW5lZCxcblx0XHRkaWFsQ29kZTogJycsXG5cdFx0ZmxhZ0NsYXNzOiAnJyxcblx0XHRpc28yOiAnJyxcblx0XHRuYW1lOiAnJyxcblx0XHRwbGFjZUhvbGRlcjogJycsXG5cdFx0cHJpb3JpdHk6IDBcblx0fTtcblxuXHRwaG9uZU51bWJlciA9ICcnO1xuXHRhbGxDb3VudHJpZXM6IEFycmF5PENvdW50cnk+ID0gW107XG5cdHByZWZlcnJlZENvdW50cmllc0luRHJvcERvd246IEFycmF5PENvdW50cnk+ID0gW107XG5cdC8vIEhhcyB0byBiZSAnYW55JyB0byBwcmV2ZW50IGEgbmVlZCB0byBpbnN0YWxsIEB0eXBlcy9nb29nbGUtbGlicGhvbmVudW1iZXIgYnkgdGhlIHBhY2thZ2UgdXNlci4uLlxuXHRwaG9uZVV0aWw6IGFueSA9IGxwbi5QaG9uZU51bWJlclV0aWwuZ2V0SW5zdGFuY2UoKTtcblx0ZGlzYWJsZWQgPSBmYWxzZTtcblx0ZXJyb3JzOiBBcnJheTxhbnk+ID0gWydQaG9uZSBudW1iZXIgaXMgcmVxdWlyZWQuJ107XG5cdGNvdW50cnlTZWFyY2hUZXh0ID0gJyc7XG5cblx0QFZpZXdDaGlsZCgnY291bnRyeUxpc3QnKSBjb3VudHJ5TGlzdDogRWxlbWVudFJlZjtcblxuXHRvblRvdWNoZWQgPSAoKSA9PiB7IH07XG5cdHByb3BhZ2F0ZUNoYW5nZSA9IChfOiBhbnkpID0+IHsgfTtcblxuXHRjb25zdHJ1Y3Rvcihcblx0XHRwcml2YXRlIGNvdW50cnlDb2RlRGF0YTogQ291bnRyeUNvZGUsXG5cdCkgeyB9XG5cblx0bmdPbkluaXQoKSB7XG5cblx0XHR0aGlzLmZldGNoQ291bnRyeURhdGEoKTtcblx0XHRpZiAodGhpcy5wcmVmZXJyZWRDb3VudHJpZXMubGVuZ3RoKSB7XG5cdFx0XHR0aGlzLmdldFByZWZlcnJlZENvdW50cmllcygpO1xuXHRcdH1cblx0XHRpZiAodGhpcy5vbmx5Q291bnRyaWVzLmxlbmd0aCkge1xuXHRcdFx0dGhpcy5hbGxDb3VudHJpZXMgPSB0aGlzLmFsbENvdW50cmllcy5maWx0ZXIoYyA9PiB0aGlzLm9ubHlDb3VudHJpZXMuaW5jbHVkZXMoYy5pc28yKSk7XG5cdFx0fVxuXHRcdGlmICh0aGlzLnNlbGVjdEZpcnN0Q291bnRyeSkge1xuXHRcdFx0aWYgKHRoaXMucHJlZmVycmVkQ291bnRyaWVzSW5Ecm9wRG93bi5sZW5ndGgpIHtcblx0XHRcdFx0dGhpcy5zZWxlY3RlZENvdW50cnkgPSB0aGlzLnByZWZlcnJlZENvdW50cmllc0luRHJvcERvd25bMF07XG5cdFx0XHR9IGVsc2Uge1xuXHRcdFx0XHR0aGlzLnNlbGVjdGVkQ291bnRyeSA9IHRoaXMuYWxsQ291bnRyaWVzWzBdO1xuXHRcdFx0fVxuXHRcdH1cblx0XHR0aGlzLmdldFNlbGVjdGVkQ291bnRyeSgpO1xuXHR9XG5cblx0bmdPbkNoYW5nZXMoY2hhbmdlczogU2ltcGxlQ2hhbmdlcykge1xuXHRcdGlmICh0aGlzLmFsbENvdW50cmllcyAmJiBjaGFuZ2VzWydzZWxlY3RlZENvdW50cnlJU08nXVxuXHRcdCYmIGNoYW5nZXNbJ3NlbGVjdGVkQ291bnRyeUlTTyddLmN1cnJlbnRWYWx1ZSAhPT0gY2hhbmdlc1snc2VsZWN0ZWRDb3VudHJ5SVNPJ10ucHJldmlvdXNWYWx1ZSkge1xuXHRcdFx0dGhpcy5nZXRTZWxlY3RlZENvdW50cnkoKTtcblx0XHR9XG5cdFx0aWYgKGNoYW5nZXMucHJlZmVycmVkQ291bnRyaWVzKSB7XG5cdFx0XHR0aGlzLmdldFByZWZlcnJlZENvdW50cmllcygpO1xuXHRcdH1cblx0fVxuXG5cdGdldFByZWZlcnJlZENvdW50cmllcygpIHtcblx0XHRpZiAodGhpcy5wcmVmZXJyZWRDb3VudHJpZXMubGVuZ3RoKSB7XG5cdFx0XHR0aGlzLnByZWZlcnJlZENvdW50cmllc0luRHJvcERvd24gPSBbXTtcblx0XHRcdHRoaXMucHJlZmVycmVkQ291bnRyaWVzLmZvckVhY2goaXNvMiA9PiB7XG5cdFx0XHRcdGNvbnN0IHByZWZlcnJlZENvdW50cnkgPSB0aGlzLmFsbENvdW50cmllcy5maWx0ZXIoKGMpID0+IHtcblx0XHRcdFx0XHRyZXR1cm4gYy5pc28yID09PSBpc28yO1xuXHRcdFx0XHR9KTtcblxuXHRcdFx0XHR0aGlzLnByZWZlcnJlZENvdW50cmllc0luRHJvcERvd24ucHVzaChwcmVmZXJyZWRDb3VudHJ5WzBdKTtcblx0XHRcdH0pO1xuXHRcdH1cblx0fVxuXG5cdGdldFNlbGVjdGVkQ291bnRyeSgpIHtcblx0XHRpZiAodGhpcy5zZWxlY3RlZENvdW50cnlJU08pIHtcblx0XHRcdHRoaXMuc2VsZWN0ZWRDb3VudHJ5ID0gdGhpcy5hbGxDb3VudHJpZXMuZmluZChjID0+IHsgcmV0dXJuIChjLmlzbzIudG9Mb3dlckNhc2UoKSA9PT0gdGhpcy5zZWxlY3RlZENvdW50cnlJU08udG9Mb3dlckNhc2UoKSk7IH0pO1xuXHRcdFx0aWYgKHRoaXMuc2VsZWN0ZWRDb3VudHJ5KSB7XG5cdFx0XHRcdGlmICh0aGlzLnBob25lTnVtYmVyKSB7XG5cdFx0XHRcdFx0dGhpcy5vblBob25lTnVtYmVyQ2hhbmdlKCk7XG5cdFx0XHRcdH0gZWxzZSB7XG5cdFx0XHRcdFx0dGhpcy5wcm9wYWdhdGVDaGFuZ2UodW5kZWZpbmVkKTtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdH1cblx0fVxuXG5cblx0LyoqXG5cdCAqIFNlYXJjaCBjb3VudHJ5IGJhc2VkIG9uIGNvdW50cnkgbmFtZSwgaXNvMiwgZGlhbENvZGUgb3IgYWxsIG9mIHRoZW0uXG5cdCAqL1xuXHRzZWFyY2hDb3VudHJ5KCkge1xuXHRcdGlmICghdGhpcy5jb3VudHJ5U2VhcmNoVGV4dCkge1xuXHRcdFx0dGhpcy5jb3VudHJ5TGlzdC5uYXRpdmVFbGVtZW50LnF1ZXJ5U2VsZWN0b3IoJ2xpJykuc2Nyb2xsSW50b1ZpZXcoeyBiZWhhdmlvcjogJ3Ntb290aCcgfSk7XG5cdFx0XHRyZXR1cm47XG5cdFx0fVxuXHRcdGNvbnN0IGNvdW50cnlTZWFyY2hUZXh0TG93ZXIgPSB0aGlzLmNvdW50cnlTZWFyY2hUZXh0LnRvTG93ZXJDYXNlKCk7XG5cdFx0Y29uc3QgY291bnRyeSA9IHRoaXMuYWxsQ291bnRyaWVzLmZpbHRlcihjID0+IHtcblx0XHRcdGlmICh0aGlzLnNlYXJjaENvdW50cnlGaWVsZC5pbmRleE9mKFNlYXJjaENvdW50cnlGaWVsZC5BbGwpID4gLTEpIHtcblx0XHRcdFx0Ly8gU2VhcmNoIGluIGFsbCBmaWVsZHNcblx0XHRcdFx0aWYgKGMuaXNvMi50b0xvd2VyQ2FzZSgpLnN0YXJ0c1dpdGgoY291bnRyeVNlYXJjaFRleHRMb3dlcikpIHtcblx0XHRcdFx0XHRyZXR1cm4gYztcblx0XHRcdFx0fVxuXHRcdFx0XHRpZiAoYy5uYW1lLnRvTG93ZXJDYXNlKCkuc3RhcnRzV2l0aChjb3VudHJ5U2VhcmNoVGV4dExvd2VyKSkge1xuXHRcdFx0XHRcdHJldHVybiBjO1xuXHRcdFx0XHR9XG5cdFx0XHRcdGlmIChjLmRpYWxDb2RlLnN0YXJ0c1dpdGgodGhpcy5jb3VudHJ5U2VhcmNoVGV4dCkpIHtcblx0XHRcdFx0XHRyZXR1cm4gYztcblx0XHRcdFx0fVxuXHRcdFx0fSBlbHNlIHtcblx0XHRcdFx0Ly8gT3Igc2VhcmNoIGJ5IHNwZWNpZmljIFNlYXJjaENvdW50cnlGaWVsZChzKVxuXHRcdFx0XHRpZiAodGhpcy5zZWFyY2hDb3VudHJ5RmllbGQuaW5kZXhPZihTZWFyY2hDb3VudHJ5RmllbGQuSXNvMikgPiAtMSkge1xuXHRcdFx0XHRcdGlmIChjLmlzbzIudG9Mb3dlckNhc2UoKS5zdGFydHNXaXRoKGNvdW50cnlTZWFyY2hUZXh0TG93ZXIpKSB7XG5cdFx0XHRcdFx0XHRyZXR1cm4gYztcblx0XHRcdFx0XHR9XG5cdFx0XHRcdH1cblx0XHRcdFx0aWYgKHRoaXMuc2VhcmNoQ291bnRyeUZpZWxkLmluZGV4T2YoU2VhcmNoQ291bnRyeUZpZWxkLk5hbWUpID4gLTEpIHtcblx0XHRcdFx0XHRpZiAoYy5uYW1lLnRvTG93ZXJDYXNlKCkuc3RhcnRzV2l0aChjb3VudHJ5U2VhcmNoVGV4dExvd2VyKSkge1xuXHRcdFx0XHRcdFx0cmV0dXJuIGM7XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9XG5cdFx0XHRcdGlmICh0aGlzLnNlYXJjaENvdW50cnlGaWVsZC5pbmRleE9mKFNlYXJjaENvdW50cnlGaWVsZC5EaWFsQ29kZSkgPiAtMSkge1xuXHRcdFx0XHRcdGlmIChjLmRpYWxDb2RlLnN0YXJ0c1dpdGgodGhpcy5jb3VudHJ5U2VhcmNoVGV4dCkpIHtcblx0XHRcdFx0XHRcdHJldHVybiBjO1xuXHRcdFx0XHRcdH1cblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdH0pO1xuXG5cdFx0aWYgKGNvdW50cnkubGVuZ3RoID4gMCkge1xuXHRcdFx0Y29uc3QgZWwgPSB0aGlzLmNvdW50cnlMaXN0Lm5hdGl2ZUVsZW1lbnQucXVlcnlTZWxlY3RvcignIycgKyBjb3VudHJ5WzBdLmlzbzIpO1xuXHRcdFx0aWYgKGVsKSB7XG5cdFx0XHRcdGVsLnNjcm9sbEludG9WaWV3KHsgYmVoYXZpb3I6ICdzbW9vdGgnIH0pO1xuXHRcdFx0fVxuXHRcdH1cblx0fVxuXG5cdHB1YmxpYyBvblBob25lTnVtYmVyQ2hhbmdlKCk6IHZvaWQge1xuXHRcdHRoaXMudmFsdWUgPSB0aGlzLnBob25lTnVtYmVyO1xuXG5cdFx0bGV0IG51bWJlcjogbHBuLlBob25lTnVtYmVyO1xuXHRcdHRyeSB7XG5cdFx0XHRudW1iZXIgPSB0aGlzLnBob25lVXRpbC5wYXJzZSh0aGlzLnBob25lTnVtYmVyLCB0aGlzLnNlbGVjdGVkQ291bnRyeS5pc28yLnRvVXBwZXJDYXNlKCkpO1xuXHRcdH0gY2F0Y2ggKGUpIHtcblx0XHR9XG5cblx0XHRsZXQgY291bnRyeUNvZGUgPSB0aGlzLnNlbGVjdGVkQ291bnRyeS5pc28yO1xuXHRcdC8vIGF1dG8gc2VsZWN0IGNvdW50cnkgYmFzZWQgb24gdGhlIGV4dGVuc2lvbiAoYW5kIGFyZWFDb2RlIGlmIG5lZWRlZCkgKGUuZyBzZWxlY3QgQ2FuYWRhIGlmIG51bWJlciBzdGFydHMgd2l0aCArMSA0MTYpXG5cdFx0aWYgKHRoaXMuZW5hYmxlQXV0b0NvdW50cnlTZWxlY3QpIHtcblx0XHRcdGNvdW50cnlDb2RlID0gbnVtYmVyICYmIG51bWJlci5nZXRDb3VudHJ5Q29kZSgpXG5cdFx0XHRcdD8gdGhpcy5nZXRDb3VudHJ5SXNvQ29kZShudW1iZXIuZ2V0Q291bnRyeUNvZGUoKSwgbnVtYmVyKVxuXHRcdFx0XHQ6IHRoaXMuc2VsZWN0ZWRDb3VudHJ5LmlzbzI7XG5cdFx0XHRpZiAoY291bnRyeUNvZGUgJiYgY291bnRyeUNvZGUgIT09IHRoaXMuc2VsZWN0ZWRDb3VudHJ5LmlzbzIpIHtcblx0XHRcdFx0Y29uc3QgbmV3Q291bnRyeSA9IHRoaXMuYWxsQ291bnRyaWVzLmZpbmQoYyA9PiBjLmlzbzIgPT09IGNvdW50cnlDb2RlKTtcblx0XHRcdFx0aWYgKG5ld0NvdW50cnkpIHtcblx0XHRcdFx0XHR0aGlzLnNlbGVjdGVkQ291bnRyeSA9IG5ld0NvdW50cnk7XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHR9XG5cdFx0Y291bnRyeUNvZGUgPSBjb3VudHJ5Q29kZSA/IGNvdW50cnlDb2RlIDogdGhpcy5zZWxlY3RlZENvdW50cnkuaXNvMjtcblxuXHRcdGlmICghdGhpcy52YWx1ZSkge1xuXHRcdFx0Ly8gdHNsaW50OmRpc2FibGUtbmV4dC1saW5lOm5vLW51bGwta2V5d29yZFxuXHRcdFx0dGhpcy5wcm9wYWdhdGVDaGFuZ2UobnVsbCk7XG5cdFx0fSBlbHNlIHtcblx0XHRcdHRoaXMucHJvcGFnYXRlQ2hhbmdlKHtcblx0XHRcdFx0bnVtYmVyOiB0aGlzLnZhbHVlLFxuXHRcdFx0XHRpbnRlcm5hdGlvbmFsTnVtYmVyOiBudW1iZXIgPyB0aGlzLnBob25lVXRpbC5mb3JtYXQobnVtYmVyLCBscG4uUGhvbmVOdW1iZXJGb3JtYXQuSU5URVJOQVRJT05BTCkgOiAnJyxcblx0XHRcdFx0bmF0aW9uYWxOdW1iZXI6IG51bWJlciA/IHRoaXMucGhvbmVVdGlsLmZvcm1hdChudW1iZXIsIGxwbi5QaG9uZU51bWJlckZvcm1hdC5OQVRJT05BTCkgOiAnJyxcblx0XHRcdFx0Y291bnRyeUNvZGU6IGNvdW50cnlDb2RlLnRvVXBwZXJDYXNlKCksXG5cdFx0XHRcdGRpYWxDb2RlOiAnKycgKyB0aGlzLnNlbGVjdGVkQ291bnRyeS5kaWFsQ29kZVxuXHRcdFx0fSk7XG5cdFx0fVxuXHR9XG5cblx0cHVibGljIG9uQ291bnRyeVNlbGVjdChjb3VudHJ5OiBDb3VudHJ5LCBlbCk6IHZvaWQge1xuXHRcdHRoaXMuc2VsZWN0ZWRDb3VudHJ5ID0gY291bnRyeTtcblxuXHRcdGlmICh0aGlzLnBob25lTnVtYmVyLmxlbmd0aCA+IDApIHtcblx0XHRcdHRoaXMudmFsdWUgPSB0aGlzLnBob25lTnVtYmVyO1xuXG5cdFx0XHRsZXQgbnVtYmVyOiBscG4uUGhvbmVOdW1iZXI7XG5cdFx0XHR0cnkge1xuXHRcdFx0XHRudW1iZXIgPSB0aGlzLnBob25lVXRpbC5wYXJzZSh0aGlzLnBob25lTnVtYmVyLCB0aGlzLnNlbGVjdGVkQ291bnRyeS5pc28yLnRvVXBwZXJDYXNlKCkpO1xuXHRcdFx0fSBjYXRjaCAoZSkge1xuXHRcdFx0fVxuXG5cdFx0XHR0aGlzLnByb3BhZ2F0ZUNoYW5nZSh7XG5cdFx0XHRcdG51bWJlcjogdGhpcy52YWx1ZSxcblx0XHRcdFx0aW50ZXJuYXRpb25hbE51bWJlcjogbnVtYmVyID8gdGhpcy5waG9uZVV0aWwuZm9ybWF0KG51bWJlciwgbHBuLlBob25lTnVtYmVyRm9ybWF0LklOVEVSTkFUSU9OQUwpIDogJycsXG5cdFx0XHRcdG5hdGlvbmFsTnVtYmVyOiBudW1iZXIgPyB0aGlzLnBob25lVXRpbC5mb3JtYXQobnVtYmVyLCBscG4uUGhvbmVOdW1iZXJGb3JtYXQuTkFUSU9OQUwpIDogJycsXG5cdFx0XHRcdGNvdW50cnlDb2RlOiB0aGlzLnNlbGVjdGVkQ291bnRyeS5pc28yLnRvVXBwZXJDYXNlKCksXG5cdFx0XHRcdGRpYWxDb2RlOiAnKycgKyB0aGlzLnNlbGVjdGVkQ291bnRyeS5kaWFsQ29kZVxuXHRcdFx0fSk7XG5cdFx0fVxuXG5cdFx0ZWwuZm9jdXMoKTtcblx0fVxuXG5cdHB1YmxpYyBvbklucHV0S2V5UHJlc3MoZXZlbnQ6IEtleWJvYXJkRXZlbnQpOiB2b2lkIHtcblx0XHRjb25zdCBhbGxvd2VkQ2hhcnMgPSAvWzAtOVxcK1xcLVxcIF0vO1xuXHRcdGNvbnN0IGFsbG93ZWRDdHJsQ2hhcnMgPSAvW2F4Y3ZdLzsgLy8gQWxsb3dzIGNvcHktcGFzdGluZ1xuXHRcdGNvbnN0IGFsbG93ZWRPdGhlcktleXMgPSBbXG5cdFx0XHQnQXJyb3dMZWZ0JywgJ0Fycm93VXAnLCAnQXJyb3dSaWdodCcsICdBcnJvd0Rvd24nLFxuXHRcdFx0J0hvbWUnLCAnRW5kJywgJ0luc2VydCcsICdEZWxldGUnLCAnQmFja3NwYWNlJ1xuXHRcdF07XG5cblx0XHRpZiAoIWFsbG93ZWRDaGFycy50ZXN0KGV2ZW50LmtleSlcblx0XHRcdCYmICEoZXZlbnQuY3RybEtleSAmJiBhbGxvd2VkQ3RybENoYXJzLnRlc3QoZXZlbnQua2V5KSlcblx0XHRcdCYmICEoYWxsb3dlZE90aGVyS2V5cy5pbmNsdWRlcyhldmVudC5rZXkpKSkge1xuXHRcdFx0ZXZlbnQucHJldmVudERlZmF1bHQoKTtcblx0XHR9XG5cdH1cblxuXHRwcm90ZWN0ZWQgZmV0Y2hDb3VudHJ5RGF0YSgpOiB2b2lkIHtcblx0XHR0aGlzLmNvdW50cnlDb2RlRGF0YS5hbGxDb3VudHJpZXMuZm9yRWFjaChjID0+IHtcblx0XHRcdGNvbnN0IGNvdW50cnk6IENvdW50cnkgPSB7XG5cdFx0XHRcdG5hbWU6IGNbMF0udG9TdHJpbmcoKSxcblx0XHRcdFx0aXNvMjogY1sxXS50b1N0cmluZygpLFxuXHRcdFx0XHRkaWFsQ29kZTogY1syXS50b1N0cmluZygpLFxuXHRcdFx0XHRwcmlvcml0eTogK2NbM10gfHwgMCxcblx0XHRcdFx0YXJlYUNvZGVzOiBjWzRdIGFzIHN0cmluZ1tdIHx8IHVuZGVmaW5lZCxcblx0XHRcdFx0ZmxhZ0NsYXNzOiBjWzFdLnRvU3RyaW5nKCkudG9Mb2NhbGVMb3dlckNhc2UoKSxcblx0XHRcdFx0cGxhY2VIb2xkZXI6ICcnXG5cdFx0XHR9O1xuXG5cdFx0XHRpZiAodGhpcy5lbmFibGVQbGFjZWhvbGRlcikge1xuXHRcdFx0XHRjb3VudHJ5LnBsYWNlSG9sZGVyID0gdGhpcy5nZXRQaG9uZU51bWJlclBsYWNlSG9sZGVyKGNvdW50cnkuaXNvMi50b1VwcGVyQ2FzZSgpKTtcblx0XHRcdH1cblxuXHRcdFx0dGhpcy5hbGxDb3VudHJpZXMucHVzaChjb3VudHJ5KTtcblx0XHR9KTtcblx0fVxuXG5cdHByb3RlY3RlZCBnZXRQaG9uZU51bWJlclBsYWNlSG9sZGVyKGNvdW50cnlDb2RlOiBzdHJpbmcpOiBzdHJpbmcge1xuXHRcdHRyeSB7XG5cdFx0XHRyZXR1cm4gdGhpcy5waG9uZVV0aWwuZm9ybWF0KHRoaXMucGhvbmVVdGlsLmdldEV4YW1wbGVOdW1iZXIoY291bnRyeUNvZGUpLCBscG4uUGhvbmVOdW1iZXJGb3JtYXQuSU5URVJOQVRJT05BTCk7XG5cdFx0fSBjYXRjaCAoZSkge1xuXHRcdFx0cmV0dXJuIGU7XG5cdFx0fVxuXHR9XG5cblx0cmVnaXN0ZXJPbkNoYW5nZShmbjogYW55KTogdm9pZCB7XG5cdFx0dGhpcy5wcm9wYWdhdGVDaGFuZ2UgPSBmbjtcblx0fVxuXG5cdHJlZ2lzdGVyT25Ub3VjaGVkKGZuOiBhbnkpIHtcblx0XHR0aGlzLm9uVG91Y2hlZCA9IGZuO1xuXHR9XG5cblx0c2V0RGlzYWJsZWRTdGF0ZShpc0Rpc2FibGVkOiBib29sZWFuKTogdm9pZCB7XG5cdFx0dGhpcy5kaXNhYmxlZCA9IGlzRGlzYWJsZWQ7XG5cdH1cblxuXHR3cml0ZVZhbHVlKG9iajogYW55KTogdm9pZCB7XG5cdFx0aWYgKHR5cGVvZiBvYmogIT09ICdvYmplY3QnKSB7XG5cdFx0XHR0aGlzLnBob25lTnVtYmVyID0gb2JqO1xuXHRcdH1cblx0XHRzZXRUaW1lb3V0KCgpID0+IHtcblx0XHRcdHRoaXMub25QaG9uZU51bWJlckNoYW5nZSgpO1xuXHRcdH0sIDEpO1xuXHR9XG5cblx0cHJpdmF0ZSBnZXRDb3VudHJ5SXNvQ29kZShjb3VudHJ5Q29kZTogbnVtYmVyLCBudW1iZXI6IGxwbi5QaG9uZU51bWJlcik6IHN0cmluZyB8IHVuZGVmaW5lZCB7XG5cdFx0Ly8gV2lsbCB1c2UgdGhpcyB0byBtYXRjaCBhcmVhIGNvZGUgZnJvbSB0aGUgZmlyc3QgbnVtYmVyc1xuXHRcdGNvbnN0IHJhd051bWJlciA9IG51bWJlclsndmFsdWVzXyddWycyJ10udG9TdHJpbmcoKTtcblx0XHQvLyBMaXN0IG9mIGFsbCBjb3VudHJpZXMgd2l0aCBjb3VudHJ5Q29kZSAoY2FuIGJlIG1vcmUgdGhhbiBvbmUuIGUueC4gVVMsIENBLCBETywgUFIgYWxsIGhhdmUgKzEgY291bnRyeUNvZGUpXG5cdFx0Y29uc3QgY291bnRyaWVzID0gdGhpcy5hbGxDb3VudHJpZXMuZmlsdGVyKGMgPT4gYy5kaWFsQ29kZSA9PT0gY291bnRyeUNvZGUudG9TdHJpbmcoKSk7XG5cdFx0Ly8gTWFpbiBjb3VudHJ5IGlzIHRoZSBjb3VudHJ5LCB3aGljaCBoYXMgbm8gYXJlYUNvZGVzIHNwZWNpZmllZCBpbiBjb3VudHJ5LWNvZGUudHMgZmlsZS5cblx0XHRjb25zdCBtYWluQ291bnRyeSA9IGNvdW50cmllcy5maW5kKGMgPT4gYy5hcmVhQ29kZXMgPT09IHVuZGVmaW5lZCk7XG5cdFx0Ly8gU2Vjb25kYXJ5IGNvdW50cmllcyBhcmUgYWxsIGNvdW50cmllcywgd2hpY2ggaGF2ZSBhcmVhQ29kZXMgc3BlY2lmaWVkIGluIGNvdW50cnktY29kZS50cyBmaWxlLlxuXHRcdGNvbnN0IHNlY29uZGFyeUNvdW50cmllcyA9IGNvdW50cmllcy5maWx0ZXIoYyA9PiBjLmFyZWFDb2RlcyAhPT0gdW5kZWZpbmVkKTtcblx0XHRsZXQgbWF0Y2hlZENvdW50cnkgPSBtYWluQ291bnRyeSA/IG1haW5Db3VudHJ5LmlzbzIgOiB1bmRlZmluZWQ7XG5cblx0XHQvKlxuXHRcdFx0SW50ZXJhdGUgb3ZlciBlYWNoIHNlY29uZGFyeSBjb3VudHJ5IGFuZCBjaGVjayBpZiBuYXRpb25hbE51bWJlciBzdGFydHMgd2l0aCBhbnkgb2YgYXJlYUNvZGVzIGF2YWlsYWJsZS5cblx0XHRcdElmIG5vIG1hdGNoZXMgZm91bmQsIGZhbGxiYWNrIHRvIHRoZSBtYWluIGNvdW50cnkuXG5cdFx0Ki9cblx0XHRzZWNvbmRhcnlDb3VudHJpZXMuZm9yRWFjaChjb3VudHJ5ID0+IHtcblx0XHRcdGNvdW50cnkuYXJlYUNvZGVzLmZvckVhY2goYXJlYUNvZGUgPT4ge1xuXHRcdFx0XHRpZiAocmF3TnVtYmVyLnN0YXJ0c1dpdGgoYXJlYUNvZGUpKSB7XG5cdFx0XHRcdFx0bWF0Y2hlZENvdW50cnkgPSBjb3VudHJ5LmlzbzI7XG5cdFx0XHRcdH1cblx0XHRcdH0pO1xuXHRcdH0pO1xuXG5cdFx0cmV0dXJuIG1hdGNoZWRDb3VudHJ5O1xuXHR9XG5cbn1cbiJdfQ==

@@ -8,5 +8,5 @@ /**

*/
export { NgxIntlTelInputService, NgxIntlTelInputComponent, NgxIntlTelInputModule, CountryISO } from './public_api';
export { NgxIntlTelInputService, NgxIntlTelInputComponent, NgxIntlTelInputModule, CountryISO, SearchCountryField, TooltipLabel } from './public_api';
export { CountryCode as ɵa } from './lib/data/country-code';
export { phoneNumberValidator as ɵb } from './lib/ngx-intl-tel-input.validator';
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmd4LWludGwtdGVsLWlucHV0LmpzIiwic291cmNlUm9vdCI6Im5nOi8vbmd4LWludGwtdGVsLWlucHV0LyIsInNvdXJjZXMiOlsibmd4LWludGwtdGVsLWlucHV0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7QUFJQSxvR0FBYyxjQUFjLENBQUM7QUFFN0IsT0FBTyxFQUFDLFdBQVcsSUFBSSxFQUFFLEVBQUMsTUFBTSx5QkFBeUIsQ0FBQztBQUMxRCxPQUFPLEVBQUMsb0JBQW9CLElBQUksRUFBRSxFQUFDLE1BQU0sb0NBQW9DLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEdlbmVyYXRlZCBidW5kbGUgaW5kZXguIERvIG5vdCBlZGl0LlxuICovXG5cbmV4cG9ydCAqIGZyb20gJy4vcHVibGljX2FwaSc7XG5cbmV4cG9ydCB7Q291bnRyeUNvZGUgYXMgybVhfSBmcm9tICcuL2xpYi9kYXRhL2NvdW50cnktY29kZSc7XG5leHBvcnQge3Bob25lTnVtYmVyVmFsaWRhdG9yIGFzIMm1Yn0gZnJvbSAnLi9saWIvbmd4LWludGwtdGVsLWlucHV0LnZhbGlkYXRvcic7Il19
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmd4LWludGwtdGVsLWlucHV0LmpzIiwic291cmNlUm9vdCI6Im5nOi8vbmd4LWludGwtdGVsLWlucHV0LyIsInNvdXJjZXMiOlsibmd4LWludGwtdGVsLWlucHV0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7QUFJQSxzSUFBYyxjQUFjLENBQUM7QUFFN0IsT0FBTyxFQUFDLFdBQVcsSUFBSSxFQUFFLEVBQUMsTUFBTSx5QkFBeUIsQ0FBQztBQUMxRCxPQUFPLEVBQUMsb0JBQW9CLElBQUksRUFBRSxFQUFDLE1BQU0sb0NBQW9DLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEdlbmVyYXRlZCBidW5kbGUgaW5kZXguIERvIG5vdCBlZGl0LlxuICovXG5cbmV4cG9ydCAqIGZyb20gJy4vcHVibGljX2FwaSc7XG5cbmV4cG9ydCB7Q291bnRyeUNvZGUgYXMgybVhfSBmcm9tICcuL2xpYi9kYXRhL2NvdW50cnktY29kZSc7XG5leHBvcnQge3Bob25lTnVtYmVyVmFsaWRhdG9yIGFzIMm1Yn0gZnJvbSAnLi9saWIvbmd4LWludGwtdGVsLWlucHV0LnZhbGlkYXRvcic7Il19

@@ -12,2 +12,4 @@ /**

export { CountryISO } from './lib/enums/country-iso.enum';
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljX2FwaS5qcyIsInNvdXJjZVJvb3QiOiJuZzovL25neC1pbnRsLXRlbC1pbnB1dC8iLCJzb3VyY2VzIjpbInB1YmxpY19hcGkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7OztBQUlBLHVDQUFjLGtDQUFrQyxDQUFDO0FBQ2pELHlDQUFjLG9DQUFvQyxDQUFDO0FBQ25ELHNDQUFjLGlDQUFpQyxDQUFDO0FBQ2hELDJCQUFjLDhCQUE4QixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLypcbiAqIFB1YmxpYyBBUEkgU3VyZmFjZSBvZiBuZ3gtaW50bC10ZWwtaW5wdXRcbiAqL1xuXG5leHBvcnQgKiBmcm9tICcuL2xpYi9uZ3gtaW50bC10ZWwtaW5wdXQuc2VydmljZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9uZ3gtaW50bC10ZWwtaW5wdXQuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL25neC1pbnRsLXRlbC1pbnB1dC5tb2R1bGUnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvZW51bXMvY291bnRyeS1pc28uZW51bSc7XG4iXX0=
export { SearchCountryField } from './lib/enums/search-country-field.enum';
export { TooltipLabel } from './lib/enums/tooltip-label.enum';
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljX2FwaS5qcyIsInNvdXJjZVJvb3QiOiJuZzovL25neC1pbnRsLXRlbC1pbnB1dC8iLCJzb3VyY2VzIjpbInB1YmxpY19hcGkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7OztBQUlBLHVDQUFjLGtDQUFrQyxDQUFDO0FBQ2pELHlDQUFjLG9DQUFvQyxDQUFDO0FBQ25ELHNDQUFjLGlDQUFpQyxDQUFDO0FBQ2hELDJCQUFjLDhCQUE4QixDQUFDO0FBQzdDLG1DQUFjLHVDQUF1QyxDQUFDO0FBQ3RELDZCQUFjLGdDQUFnQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLypcbiAqIFB1YmxpYyBBUEkgU3VyZmFjZSBvZiBuZ3gtaW50bC10ZWwtaW5wdXRcbiAqL1xuXG5leHBvcnQgKiBmcm9tICcuL2xpYi9uZ3gtaW50bC10ZWwtaW5wdXQuc2VydmljZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9uZ3gtaW50bC10ZWwtaW5wdXQuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL25neC1pbnRsLXRlbC1pbnB1dC5tb2R1bGUnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvZW51bXMvY291bnRyeS1pc28uZW51bSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9lbnVtcy9zZWFyY2gtY291bnRyeS1maWVsZC5lbnVtJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2VudW1zL3Rvb2x0aXAtbGFiZWwuZW51bSc7XG4iXX0=

@@ -13,2 +13,2 @@ /**

export { SearchCountryField };
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VhcmNoLWNvdW50cnktZmllbGQuZW51bS5qcyIsInNvdXJjZVJvb3QiOiJuZzovL25neC1pbnRsLXRlbC1pbnB1dC8iLCJzb3VyY2VzIjpbImxpYi9lbnVtcy9zZWFyY2gtY291bnRyeS1maWVsZC5lbnVtLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7OztJQUNDLFVBQVcsVUFBVTtJQUNyQixNQUFPLE1BQU07SUFDYixNQUFPLE1BQU07SUFDYixLQUFNLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgY29uc3QgZW51bSBTZWFyY2hDb3VudHJ5RmllbGQge1xuXHREaWFsQ29kZSA9ICdkaWFsQ29kZScsXG5cdElzbzIgPSAnaXNvMicsXG5cdE5hbWUgPSAnbmFtZScsXG5cdEFsbCA9ICdhbGwnXG59XG4iXX0=
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VhcmNoLWNvdW50cnktZmllbGQuZW51bS5qcyIsInNvdXJjZVJvb3QiOiJuZzovL25neC1pbnRsLXRlbC1pbnB1dC8iLCJzb3VyY2VzIjpbImxpYi9lbnVtcy9zZWFyY2gtY291bnRyeS1maWVsZC5lbnVtLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7OztJQUNDLFVBQVcsVUFBVTtJQUNyQixNQUFPLE1BQU07SUFDYixNQUFPLE1BQU07SUFDYixLQUFNLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgZW51bSBTZWFyY2hDb3VudHJ5RmllbGQge1xuXHREaWFsQ29kZSA9ICdkaWFsQ29kZScsXG5cdElzbzIgPSAnaXNvMicsXG5cdE5hbWUgPSAnbmFtZScsXG5cdEFsbCA9ICdhbGwnXG59XG4iXX0=

@@ -11,2 +11,2 @@ /**

export { TooltipLabel };
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9vbHRpcC1sYWJlbC5lbnVtLmpzIiwic291cmNlUm9vdCI6Im5nOi8vbmd4LWludGwtdGVsLWlucHV0LyIsInNvdXJjZXMiOlsibGliL2VudW1zL3Rvb2x0aXAtbGFiZWwuZW51bS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7SUFDQyxNQUFPLE1BQU07SUFDYixNQUFPLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgY29uc3QgZW51bSBUb29sdGlwTGFiZWwge1xuXHROYW1lID0gJ25hbWUnLFxuXHRJc28yID0gJ2lzbzInXG59XG4iXX0=
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9vbHRpcC1sYWJlbC5lbnVtLmpzIiwic291cmNlUm9vdCI6Im5nOi8vbmd4LWludGwtdGVsLWlucHV0LyIsInNvdXJjZXMiOlsibGliL2VudW1zL3Rvb2x0aXAtbGFiZWwuZW51bS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7SUFDQyxNQUFPLE1BQU07SUFDYixNQUFPLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgZW51bSBUb29sdGlwTGFiZWwge1xuXHROYW1lID0gJ25hbWUnLFxuXHRJc28yID0gJ2lzbzInXG59XG4iXX0=

@@ -10,2 +10,4 @@ /**

import * as lpn from 'google-libphonenumber';
import { SearchCountryField } from './enums/search-country-field.enum';
import { TooltipLabel } from './enums/tooltip-label.enum';
import { CountryISO } from './enums/country-iso.enum';

@@ -23,3 +25,3 @@ var ɵ0 = phoneNumberValidator;

this.searchCountryFlag = false;
this.searchCountryField = ["all" /* All */];
this.searchCountryField = [SearchCountryField.All];
this.maxLength = '';

@@ -150,3 +152,3 @@ this.selectFirstCountry = true;

var country = this.allCountries.filter(function (c) {
if (_this.searchCountryField.indexOf("all" /* All */) > -1) {
if (_this.searchCountryField.indexOf(SearchCountryField.All) > -1) {
// Search in all fields

@@ -165,3 +167,3 @@ if (c.iso2.toLowerCase().startsWith(countrySearchTextLower)) {

// Or search by specific SearchCountryField(s)
if (_this.searchCountryField.indexOf("iso2" /* Iso2 */) > -1) {
if (_this.searchCountryField.indexOf(SearchCountryField.Iso2) > -1) {
if (c.iso2.toLowerCase().startsWith(countrySearchTextLower)) {

@@ -171,3 +173,3 @@ return c;

}
if (_this.searchCountryField.indexOf("name" /* Name */) > -1) {
if (_this.searchCountryField.indexOf(SearchCountryField.Name) > -1) {
if (c.name.toLowerCase().startsWith(countrySearchTextLower)) {

@@ -177,3 +179,3 @@ return c;

}
if (_this.searchCountryField.indexOf("dialCode" /* DialCode */) > -1) {
if (_this.searchCountryField.indexOf(SearchCountryField.DialCode) > -1) {
if (c.dialCode.startsWith(_this.countrySearchText)) {

@@ -529,2 +531,2 @@ return c;

export { ɵ0 };
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmd4LWludGwtdGVsLWlucHV0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiJuZzovL25neC1pbnRsLXRlbC1pbnB1dC8iLCJzb3VyY2VzIjpbImxpYi9uZ3gtaW50bC10ZWwtaW5wdXQuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7QUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFVLFVBQVUsRUFBRSxLQUFLLEVBQUUsU0FBUyxFQUFFLFVBQVUsRUFBNEIsTUFBTSxlQUFlLENBQUM7QUFDdEgsT0FBTyxFQUFFLGFBQWEsRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ2xFLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUNsRCxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUV0RSxPQUFPLEtBQUssR0FBRyxNQUFNLHVCQUF1QixDQUFDO0FBRzdDLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztTQWdCekMsb0JBQW9CO0FBZGpDO0lBMERDLGtDQUNTLGVBQTRCO1FBQTVCLG9CQUFlLEdBQWYsZUFBZSxDQUFhO1FBdEM1QixVQUFLLEdBQUcsRUFBRSxDQUFDO1FBQ1gsdUJBQWtCLEdBQWtCLEVBQUUsQ0FBQztRQUN2QyxzQkFBaUIsR0FBRyxJQUFJLENBQUM7UUFDekIsYUFBUSxHQUFHLGNBQWMsQ0FBQztRQUMxQixrQkFBYSxHQUFrQixFQUFFLENBQUM7UUFDbEMsNEJBQXVCLEdBQUcsSUFBSSxDQUFDO1FBQy9CLHNCQUFpQixHQUFHLEtBQUssQ0FBQztRQUMxQix1QkFBa0IsR0FBeUIsaUJBQXdCLENBQUM7UUFDcEUsY0FBUyxHQUFHLEVBQUUsQ0FBQztRQUVmLHVCQUFrQixHQUFHLElBQUksQ0FBQztRQUUxQixvQkFBZSxHQUFHLElBQUksQ0FBQztRQUNoQyxvQkFBZSxHQUFZO1lBQzFCLFNBQVMsRUFBRSxTQUFTO1lBQ3BCLFFBQVEsRUFBRSxF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bEMsNENBQW1DOztJQUNuQyxpREFBMkM7O0lBQzNDLDJEQUF3Qzs7SUFDeEMscURBQW1DOztJQUNuQyxzREFBNkU7O0lBQzdFLDZDQUF3Qjs7SUFDeEIsZ0RBQW9DOztJQUNwQyxzREFBbUM7O0lBQ25DLHNEQUF3Qzs7SUFDeEMsbURBQWdDOztJQUNoQyxtREFRRTs7SUFFRiwrQ0FBaUI7O0lBQ2pCLGdEQUFrQzs7SUFDbEMsZ0VBQWtEOztJQUVsRCw2Q0FBbUQ7O0lBQ25ELDRDQUFpQjs7SUFDakIsMENBQW1EOztJQUNuRCxxREFBdUI7O0lBRXZCLCtDQUFrRDs7SUFFbEQsNkNBQXNCOztJQUN0QixtREFBa0M7Ozs7O0lBR2pDLG1EQUFvQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgT25Jbml0LCBmb3J3YXJkUmVmLCBJbnB1dCwgVmlld0NoaWxkLCBFbGVtZW50UmVmLCBTaW1wbGVDaGFuZ2VzLCBPbkNoYW5nZXMgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE5HX1ZBTElEQVRPUlMsIE5HX1ZBTFVFX0FDQ0VTU09SIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgQ291bnRyeUNvZGUgfSBmcm9tICcuL2RhdGEvY291bnRyeS1jb2RlJztcbmltcG9ydCB7IHBob25lTnVtYmVyVmFsaWRhdG9yIH0gZnJvbSAnLi9uZ3gtaW50bC10ZWwtaW5wdXQudmFsaWRhdG9yJztcbmltcG9ydCB7IENvdW50cnkgfSBmcm9tICcuL21vZGVsL2NvdW50cnkubW9kZWwnO1xuaW1wb3J0ICogYXMgbHBuIGZyb20gJ2dvb2dsZS1saWJwaG9uZW51bWJlcic7XG5pbXBvcnQgeyBTZWFyY2hDb3VudHJ5RmllbGQgfSBmcm9tICcuL2VudW1zL3NlYXJjaC1jb3VudHJ5LWZpZWxkLmVudW0nO1xuaW1wb3J0IHsgVG9vbHRpcExhYmVsIH0gZnJvbSAnLi9lbnVtcy90b29sdGlwLWxhYmVsLmVudW0nO1xuaW1wb3J0IHsgQ291bnRyeUlTTyB9IGZyb20gJy4vZW51bXMvY291bnRyeS1pc28uZW51bSc7XG5cbkBDb21wb25lbnQoe1xuXHRzZWxlY3RvcjogJ25neC1pbnRsLXRlbC1pbnB1dCcsXG5cdHRlbXBsYXRlVXJsOiAnLi9uZ3gtaW50bC10ZWwtaW5wdXQuY29tcG9uZW50Lmh0bWwnLFxuXHRzdHlsZVVybHM6IFsnLi9uZ3gtaW50bC10ZWwtaW5wdXQuY29tcG9uZW50LmNzcyddLFxuXHRwcm92aWRlcnM6IFtcblx0XHRDb3VudHJ5Q29kZSxcblx0XHR7XG5cdFx0XHRwcm92aWRlOiBOR19WQUxVRV9BQ0NFU1NPUixcblx0XHRcdC8vIHRzbGludDpkaXNhYmxlLW5leHQtbGluZTpuby1mb3J3YXJkLXJlZlxuXHRcdFx0dXNlRXhpc3Rpbmc6IGZvcndhcmRSZWYoKCkgPT4gTmd4SW50bFRlbElucHV0Q29tcG9uZW50KSxcblx0XHRcdG11bHRpOiB0cnVlXG5cdFx0fSxcblx0XHR7XG5cdFx0XHRwcm92aWRlOiBOR19WQUxJREFUT1JTLFxuXHRcdFx0dXNlVmFsdWU6IHBob25lTnVtYmVyVmFsaWRhdG9yLFxuXHRcdFx0bXVsdGk6IHRydWUsXG5cdFx0fVxuXHRdXG59KVxuZXhwb3J0IGNsYXNzIE5neEludGxUZWxJbnB1dENvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgT25DaGFuZ2VzIHtcblxuXHRASW5wdXQoKSB2YWx1ZSA9ICcnO1xuXHRASW5wdXQoKSBwcmVmZXJyZWRDb3VudHJpZXM6IEFycmF5PHN0cmluZz4gPSBbXTtcblx0QElucHV0KCkgZW5hYmxlUGxhY2Vob2xkZXIgPSB0cnVlO1xuXHRASW5wdXQoKSBjc3NDbGFzcyA9ICdmb3JtLWNvbnRyb2wnO1xuXHRASW5wdXQoKSBvbmx5Q291bnRyaWVzOiBBcnJheTxzdHJpbmc+ID0gW107XG5cdEBJbnB1dCgpIGVuYWJsZUF1dG9Db3VudHJ5U2VsZWN0ID0gdHJ1ZTtcblx0QElucHV0KCkgc2VhcmNoQ291bnRyeUZsYWcgPSBmYWxzZTtcblx0QElucHV0KCkgc2VhcmNoQ291bnRyeUZpZWxkOiBTZWFyY2hDb3VudHJ5RmllbGRbXSA9IFtTZWFyY2hDb3VudHJ5RmllbGQuQWxsXTtcblx0QElucHV0KCkgbWF4TGVuZ3RoID0gJyc7XG5cdEBJbnB1dCgpIHRvb2x0aXBGaWVsZDogVG9vbHRpcExhYmVsO1xuXHRASW5wdXQoKSBzZWxlY3RGaXJzdENvdW50cnkgPSB0cnVlO1xuXHRASW5wdXQoKSBzZWxlY3RlZENvdW50cnlJU086IENvdW50cnlJU087XG5cdEBJbnB1dCgpIHBob25lVmFsaWRhdGlvbiA9IHRydWU7XG5cdHNlbGVjdGVkQ291bnRyeTogQ291bnRyeSA9IHtcblx0XHRhcmVhQ29kZXM6IHVuZGVmaW5lZCxcblx0XHRkaWFsQ29kZTogJycsXG5cdFx0ZmxhZ0NsYXNzOiAnJyxcblx0XHRpc28yOiAnJyxcblx0XHRuYW1lOiAnJyxcblx0XHRwbGFjZUhvbGRlcjogJycsXG5cdFx0cHJpb3JpdHk6IDBcblx0fTtcblxuXHRwaG9uZU51bWJlciA9ICcnO1xuXHRhbGxDb3VudHJpZXM6IEFycmF5PENvdW50cnk+ID0gW107XG5cdHByZWZlcnJlZENvdW50cmllc0luRHJvcERvd246IEFycmF5PENvdW50cnk+ID0gW107XG5cdC8vIEhhcyB0byBiZSAnYW55JyB0byBwcmV2ZW50IGEgbmVlZCB0byBpbnN0YWxsIEB0eXBlcy9nb29nbGUtbGlicGhvbmVudW1iZXIgYnkgdGhlIHBhY2thZ2UgdXNlci4uLlxuXHRwaG9uZVV0aWw6IGFueSA9IGxwbi5QaG9uZU51bWJlclV0aWwuZ2V0SW5zdGFuY2UoKTtcblx0ZGlzYWJsZWQgPSBmYWxzZTtcblx0ZXJyb3JzOiBBcnJheTxhbnk+ID0gWydQaG9uZSBudW1iZXIgaXMgcmVxdWlyZWQuJ107XG5cdGNvdW50cnlTZWFyY2hUZXh0ID0gJyc7XG5cblx0QFZpZXdDaGlsZCgnY291bnRyeUxpc3QnKSBjb3VudHJ5TGlzdDogRWxlbWVudFJlZjtcblxuXHRvblRvdWNoZWQgPSAoKSA9PiB7IH07XG5cdHByb3BhZ2F0ZUNoYW5nZSA9IChfOiBhbnkpID0+IHsgfTtcblxuXHRjb25zdHJ1Y3Rvcihcblx0XHRwcml2YXRlIGNvdW50cnlDb2RlRGF0YTogQ291bnRyeUNvZGUsXG5cdCkgeyB9XG5cblx0bmdPbkluaXQoKSB7XG5cblx0XHR0aGlzLmZldGNoQ291bnRyeURhdGEoKTtcblx0XHRpZiAodGhpcy5wcmVmZXJyZWRDb3VudHJpZXMubGVuZ3RoKSB7XG5cdFx0XHR0aGlzLmdldFByZWZlcnJlZENvdW50cmllcygpO1xuXHRcdH1cblx0XHRpZiAodGhpcy5vbmx5Q291bnRyaWVzLmxlbmd0aCkge1xuXHRcdFx0dGhpcy5hbGxDb3VudHJpZXMgPSB0aGlzLmFsbENvdW50cmllcy5maWx0ZXIoYyA9PiB0aGlzLm9ubHlDb3VudHJpZXMuaW5jbHVkZXMoYy5pc28yKSk7XG5cdFx0fVxuXHRcdGlmICh0aGlzLnNlbGVjdEZpcnN0Q291bnRyeSkge1xuXHRcdFx0aWYgKHRoaXMucHJlZmVycmVkQ291bnRyaWVzSW5Ecm9wRG93bi5sZW5ndGgpIHtcblx0XHRcdFx0dGhpcy5zZWxlY3RlZENvdW50cnkgPSB0aGlzLnByZWZlcnJlZENvdW50cmllc0luRHJvcERvd25bMF07XG5cdFx0XHR9IGVsc2Uge1xuXHRcdFx0XHR0aGlzLnNlbGVjdGVkQ291bnRyeSA9IHRoaXMuYWxsQ291bnRyaWVzWzBdO1xuXHRcdFx0fVxuXHRcdH1cblx0XHR0aGlzLmdldFNlbGVjdGVkQ291bnRyeSgpO1xuXHR9XG5cblx0bmdPbkNoYW5nZXMoY2hhbmdlczogU2ltcGxlQ2hhbmdlcykge1xuXHRcdGlmICh0aGlzLmFsbENvdW50cmllcyAmJiBjaGFuZ2VzWydzZWxlY3RlZENvdW50cnlJU08nXVxuXHRcdCYmIGNoYW5nZXNbJ3NlbGVjdGVkQ291bnRyeUlTTyddLmN1cnJlbnRWYWx1ZSAhPT0gY2hhbmdlc1snc2VsZWN0ZWRDb3VudHJ5SVNPJ10ucHJldmlvdXNWYWx1ZSkge1xuXHRcdFx0dGhpcy5nZXRTZWxlY3RlZENvdW50cnkoKTtcblx0XHR9XG5cdFx0aWYgKGNoYW5nZXMucHJlZmVycmVkQ291bnRyaWVzKSB7XG5cdFx0XHR0aGlzLmdldFByZWZlcnJlZENvdW50cmllcygpO1xuXHRcdH1cblx0fVxuXG5cdGdldFByZWZlcnJlZENvdW50cmllcygpIHtcblx0XHRpZiAodGhpcy5wcmVmZXJyZWRDb3VudHJpZXMubGVuZ3RoKSB7XG5cdFx0XHR0aGlzLnByZWZlcnJlZENvdW50cmllc0luRHJvcERvd24gPSBbXTtcblx0XHRcdHRoaXMucHJlZmVycmVkQ291bnRyaWVzLmZvckVhY2goaXNvMiA9PiB7XG5cdFx0XHRcdGNvbnN0IHByZWZlcnJlZENvdW50cnkgPSB0aGlzLmFsbENvdW50cmllcy5maWx0ZXIoKGMpID0+IHtcblx0XHRcdFx0XHRyZXR1cm4gYy5pc28yID09PSBpc28yO1xuXHRcdFx0XHR9KTtcblxuXHRcdFx0XHR0aGlzLnByZWZlcnJlZENvdW50cmllc0luRHJvcERvd24ucHVzaChwcmVmZXJyZWRDb3VudHJ5WzBdKTtcblx0XHRcdH0pO1xuXHRcdH1cblx0fVxuXG5cdGdldFNlbGVjdGVkQ291bnRyeSgpIHtcblx0XHRpZiAodGhpcy5zZWxlY3RlZENvdW50cnlJU08pIHtcblx0XHRcdHRoaXMuc2VsZWN0ZWRDb3VudHJ5ID0gdGhpcy5hbGxDb3VudHJpZXMuZmluZChjID0+IHsgcmV0dXJuIChjLmlzbzIudG9Mb3dlckNhc2UoKSA9PT0gdGhpcy5zZWxlY3RlZENvdW50cnlJU08udG9Mb3dlckNhc2UoKSk7IH0pO1xuXHRcdFx0aWYgKHRoaXMuc2VsZWN0ZWRDb3VudHJ5KSB7XG5cdFx0XHRcdGlmICh0aGlzLnBob25lTnVtYmVyKSB7XG5cdFx0XHRcdFx0dGhpcy5vblBob25lTnVtYmVyQ2hhbmdlKCk7XG5cdFx0XHRcdH0gZWxzZSB7XG5cdFx0XHRcdFx0dGhpcy5wcm9wYWdhdGVDaGFuZ2UodW5kZWZpbmVkKTtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdH1cblx0fVxuXG5cblx0LyoqXG5cdCAqIFNlYXJjaCBjb3VudHJ5IGJhc2VkIG9uIGNvdW50cnkgbmFtZSwgaXNvMiwgZGlhbENvZGUgb3IgYWxsIG9mIHRoZW0uXG5cdCAqL1xuXHRzZWFyY2hDb3VudHJ5KCkge1xuXHRcdGlmICghdGhpcy5jb3VudHJ5U2VhcmNoVGV4dCkge1xuXHRcdFx0dGhpcy5jb3VudHJ5TGlzdC5uYXRpdmVFbGVtZW50LnF1ZXJ5U2VsZWN0b3IoJ2xpJykuc2Nyb2xsSW50b1ZpZXcoeyBiZWhhdmlvcjogJ3Ntb290aCcgfSk7XG5cdFx0XHRyZXR1cm47XG5cdFx0fVxuXHRcdGNvbnN0IGNvdW50cnlTZWFyY2hUZXh0TG93ZXIgPSB0aGlzLmNvdW50cnlTZWFyY2hUZXh0LnRvTG93ZXJDYXNlKCk7XG5cdFx0Y29uc3QgY291bnRyeSA9IHRoaXMuYWxsQ291bnRyaWVzLmZpbHRlcihjID0+IHtcblx0XHRcdGlmICh0aGlzLnNlYXJjaENvdW50cnlGaWVsZC5pbmRleE9mKFNlYXJjaENvdW50cnlGaWVsZC5BbGwpID4gLTEpIHtcblx0XHRcdFx0Ly8gU2VhcmNoIGluIGFsbCBmaWVsZHNcblx0XHRcdFx0aWYgKGMuaXNvMi50b0xvd2VyQ2FzZSgpLnN0YXJ0c1dpdGgoY291bnRyeVNlYXJjaFRleHRMb3dlcikpIHtcblx0XHRcdFx0XHRyZXR1cm4gYztcblx0XHRcdFx0fVxuXHRcdFx0XHRpZiAoYy5uYW1lLnRvTG93ZXJDYXNlKCkuc3RhcnRzV2l0aChjb3VudHJ5U2VhcmNoVGV4dExvd2VyKSkge1xuXHRcdFx0XHRcdHJldHVybiBjO1xuXHRcdFx0XHR9XG5cdFx0XHRcdGlmIChjLmRpYWxDb2RlLnN0YXJ0c1dpdGgodGhpcy5jb3VudHJ5U2VhcmNoVGV4dCkpIHtcblx0XHRcdFx0XHRyZXR1cm4gYztcblx0XHRcdFx0fVxuXHRcdFx0fSBlbHNlIHtcblx0XHRcdFx0Ly8gT3Igc2VhcmNoIGJ5IHNwZWNpZmljIFNlYXJjaENvdW50cnlGaWVsZChzKVxuXHRcdFx0XHRpZiAodGhpcy5zZWFyY2hDb3VudHJ5RmllbGQuaW5kZXhPZihTZWFyY2hDb3VudHJ5RmllbGQuSXNvMikgPiAtMSkge1xuXHRcdFx0XHRcdGlmIChjLmlzbzIudG9Mb3dlckNhc2UoKS5zdGFydHNXaXRoKGNvdW50cnlTZWFyY2hUZXh0TG93ZXIpKSB7XG5cdFx0XHRcdFx0XHRyZXR1cm4gYztcblx0XHRcdFx0XHR9XG5cdFx0XHRcdH1cblx0XHRcdFx0aWYgKHRoaXMuc2VhcmNoQ291bnRyeUZpZWxkLmluZGV4T2YoU2VhcmNoQ291bnRyeUZpZWxkLk5hbWUpID4gLTEpIHtcblx0XHRcdFx0XHRpZiAoYy5uYW1lLnRvTG93ZXJDYXNlKCkuc3RhcnRzV2l0aChjb3VudHJ5U2VhcmNoVGV4dExvd2VyKSkge1xuXHRcdFx0XHRcdFx0cmV0dXJuIGM7XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9XG5cdFx0XHRcdGlmICh0aGlzLnNlYXJjaENvdW50cnlGaWVsZC5pbmRleE9mKFNlYXJjaENvdW50cnlGaWVsZC5EaWFsQ29kZSkgPiAtMSkge1xuXHRcdFx0XHRcdGlmIChjLmRpYWxDb2RlLnN0YXJ0c1dpdGgodGhpcy5jb3VudHJ5U2VhcmNoVGV4dCkpIHtcblx0XHRcdFx0XHRcdHJldHVybiBjO1xuXHRcdFx0XHRcdH1cblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdH0pO1xuXG5cdFx0aWYgKGNvdW50cnkubGVuZ3RoID4gMCkge1xuXHRcdFx0Y29uc3QgZWwgPSB0aGlzLmNvdW50cnlMaXN0Lm5hdGl2ZUVsZW1lbnQucXVlcnlTZWxlY3RvcignIycgKyBjb3VudHJ5WzBdLmlzbzIpO1xuXHRcdFx0aWYgKGVsKSB7XG5cdFx0XHRcdGVsLnNjcm9sbEludG9WaWV3KHsgYmVoYXZpb3I6ICdzbW9vdGgnIH0pO1xuXHRcdFx0fVxuXHRcdH1cblx0fVxuXG5cdHB1YmxpYyBvblBob25lTnVtYmVyQ2hhbmdlKCk6IHZvaWQge1xuXHRcdHRoaXMudmFsdWUgPSB0aGlzLnBob25lTnVtYmVyO1xuXG5cdFx0bGV0IG51bWJlcjogbHBuLlBob25lTnVtYmVyO1xuXHRcdHRyeSB7XG5cdFx0XHRudW1iZXIgPSB0aGlzLnBob25lVXRpbC5wYXJzZSh0aGlzLnBob25lTnVtYmVyLCB0aGlzLnNlbGVjdGVkQ291bnRyeS5pc28yLnRvVXBwZXJDYXNlKCkpO1xuXHRcdH0gY2F0Y2ggKGUpIHtcblx0XHR9XG5cblx0XHRsZXQgY291bnRyeUNvZGUgPSB0aGlzLnNlbGVjdGVkQ291bnRyeS5pc28yO1xuXHRcdC8vIGF1dG8gc2VsZWN0IGNvdW50cnkgYmFzZWQgb24gdGhlIGV4dGVuc2lvbiAoYW5kIGFyZWFDb2RlIGlmIG5lZWRlZCkgKGUuZyBzZWxlY3QgQ2FuYWRhIGlmIG51bWJlciBzdGFydHMgd2l0aCArMSA0MTYpXG5cdFx0aWYgKHRoaXMuZW5hYmxlQXV0b0NvdW50cnlTZWxlY3QpIHtcblx0XHRcdGNvdW50cnlDb2RlID0gbnVtYmVyICYmIG51bWJlci5nZXRDb3VudHJ5Q29kZSgpXG5cdFx0XHRcdD8gdGhpcy5nZXRDb3VudHJ5SXNvQ29kZShudW1iZXIuZ2V0Q291bnRyeUNvZGUoKSwgbnVtYmVyKVxuXHRcdFx0XHQ6IHRoaXMuc2VsZWN0ZWRDb3VudHJ5LmlzbzI7XG5cdFx0XHRpZiAoY291bnRyeUNvZGUgJiYgY291bnRyeUNvZGUgIT09IHRoaXMuc2VsZWN0ZWRDb3VudHJ5LmlzbzIpIHtcblx0XHRcdFx0Y29uc3QgbmV3Q291bnRyeSA9IHRoaXMuYWxsQ291bnRyaWVzLmZpbmQoYyA9PiBjLmlzbzIgPT09IGNvdW50cnlDb2RlKTtcblx0XHRcdFx0aWYgKG5ld0NvdW50cnkpIHtcblx0XHRcdFx0XHR0aGlzLnNlbGVjdGVkQ291bnRyeSA9IG5ld0NvdW50cnk7XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHR9XG5cdFx0Y291bnRyeUNvZGUgPSBjb3VudHJ5Q29kZSA/IGNvdW50cnlDb2RlIDogdGhpcy5zZWxlY3RlZENvdW50cnkuaXNvMjtcblxuXHRcdGlmICghdGhpcy52YWx1ZSkge1xuXHRcdFx0Ly8gdHNsaW50OmRpc2FibGUtbmV4dC1saW5lOm5vLW51bGwta2V5d29yZFxuXHRcdFx0dGhpcy5wcm9wYWdhdGVDaGFuZ2UobnVsbCk7XG5cdFx0fSBlbHNlIHtcblx0XHRcdHRoaXMucHJvcGFnYXRlQ2hhbmdlKHtcblx0XHRcdFx0bnVtYmVyOiB0aGlzLnZhbHVlLFxuXHRcdFx0XHRpbnRlcm5hdGlvbmFsTnVtYmVyOiBudW1iZXIgPyB0aGlzLnBob25lVXRpbC5mb3JtYXQobnVtYmVyLCBscG4uUGhvbmVOdW1iZXJGb3JtYXQuSU5URVJOQVRJT05BTCkgOiAnJyxcblx0XHRcdFx0bmF0aW9uYWxOdW1iZXI6IG51bWJlciA/IHRoaXMucGhvbmVVdGlsLmZvcm1hdChudW1iZXIsIGxwbi5QaG9uZU51bWJlckZvcm1hdC5OQVRJT05BTCkgOiAnJyxcblx0XHRcdFx0Y291bnRyeUNvZGU6IGNvdW50cnlDb2RlLnRvVXBwZXJDYXNlKCksXG5cdFx0XHRcdGRpYWxDb2RlOiAnKycgKyB0aGlzLnNlbGVjdGVkQ291bnRyeS5kaWFsQ29kZVxuXHRcdFx0fSk7XG5cdFx0fVxuXHR9XG5cblx0cHVibGljIG9uQ291bnRyeVNlbGVjdChjb3VudHJ5OiBDb3VudHJ5LCBlbCk6IHZvaWQge1xuXHRcdHRoaXMuc2VsZWN0ZWRDb3VudHJ5ID0gY291bnRyeTtcblxuXHRcdGlmICh0aGlzLnBob25lTnVtYmVyLmxlbmd0aCA+IDApIHtcblx0XHRcdHRoaXMudmFsdWUgPSB0aGlzLnBob25lTnVtYmVyO1xuXG5cdFx0XHRsZXQgbnVtYmVyOiBscG4uUGhvbmVOdW1iZXI7XG5cdFx0XHR0cnkge1xuXHRcdFx0XHRudW1iZXIgPSB0aGlzLnBob25lVXRpbC5wYXJzZSh0aGlzLnBob25lTnVtYmVyLCB0aGlzLnNlbGVjdGVkQ291bnRyeS5pc28yLnRvVXBwZXJDYXNlKCkpO1xuXHRcdFx0fSBjYXRjaCAoZSkge1xuXHRcdFx0fVxuXG5cdFx0XHR0aGlzLnByb3BhZ2F0ZUNoYW5nZSh7XG5cdFx0XHRcdG51bWJlcjogdGhpcy52YWx1ZSxcblx0XHRcdFx0aW50ZXJuYXRpb25hbE51bWJlcjogbnVtYmVyID8gdGhpcy5waG9uZVV0aWwuZm9ybWF0KG51bWJlciwgbHBuLlBob25lTnVtYmVyRm9ybWF0LklOVEVSTkFUSU9OQUwpIDogJycsXG5cdFx0XHRcdG5hdGlvbmFsTnVtYmVyOiBudW1iZXIgPyB0aGlzLnBob25lVXRpbC5mb3JtYXQobnVtYmVyLCBscG4uUGhvbmVOdW1iZXJGb3JtYXQuTkFUSU9OQUwpIDogJycsXG5cdFx0XHRcdGNvdW50cnlDb2RlOiB0aGlzLnNlbGVjdGVkQ291bnRyeS5pc28yLnRvVXBwZXJDYXNlKCksXG5cdFx0XHRcdGRpYWxDb2RlOiAnKycgKyB0aGlzLnNlbGVjdGVkQ291bnRyeS5kaWFsQ29kZVxuXHRcdFx0fSk7XG5cdFx0fVxuXG5cdFx0ZWwuZm9jdXMoKTtcblx0fVxuXG5cdHB1YmxpYyBvbklucHV0S2V5UHJlc3MoZXZlbnQ6IEtleWJvYXJkRXZlbnQpOiB2b2lkIHtcblx0XHRjb25zdCBhbGxvd2VkQ2hhcnMgPSAvWzAtOVxcK1xcLVxcIF0vO1xuXHRcdGNvbnN0IGFsbG93ZWRDdHJsQ2hhcnMgPSAvW2F4Y3ZdLzsgLy8gQWxsb3dzIGNvcHktcGFzdGluZ1xuXHRcdGNvbnN0IGFsbG93ZWRPdGhlcktleXMgPSBbXG5cdFx0XHQnQXJyb3dMZWZ0JywgJ0Fycm93VXAnLCAnQXJyb3dSaWdodCcsICdBcnJvd0Rvd24nLFxuXHRcdFx0J0hvbWUnLCAnRW5kJywgJ0luc2VydCcsICdEZWxldGUnLCAnQmFja3NwYWNlJ1xuXHRcdF07XG5cblx0XHRpZiAoIWFsbG93ZWRDaGFycy50ZXN0KGV2ZW50LmtleSlcblx0XHRcdCYmICEoZXZlbnQuY3RybEtleSAmJiBhbGxvd2VkQ3RybENoYXJzLnRlc3QoZXZlbnQua2V5KSlcblx0XHRcdCYmICEoYWxsb3dlZE90aGVyS2V5cy5pbmNsdWRlcyhldmVudC5rZXkpKSkge1xuXHRcdFx0ZXZlbnQucHJldmVudERlZmF1bHQoKTtcblx0XHR9XG5cdH1cblxuXHRwcm90ZWN0ZWQgZmV0Y2hDb3VudHJ5RGF0YSgpOiB2b2lkIHtcblx0XHR0aGlzLmNvdW50cnlDb2RlRGF0YS5hbGxDb3VudHJpZXMuZm9yRWFjaChjID0+IHtcblx0XHRcdGNvbnN0IGNvdW50cnk6IENvdW50cnkgPSB7XG5cdFx0XHRcdG5hbWU6IGNbMF0udG9TdHJpbmcoKSxcblx0XHRcdFx0aXNvMjogY1sxXS50b1N0cmluZygpLFxuXHRcdFx0XHRkaWFsQ29kZTogY1syXS50b1N0cmluZygpLFxuXHRcdFx0XHRwcmlvcml0eTogK2NbM10gfHwgMCxcblx0XHRcdFx0YXJlYUNvZGVzOiBjWzRdIGFzIHN0cmluZ1tdIHx8IHVuZGVmaW5lZCxcblx0XHRcdFx0ZmxhZ0NsYXNzOiBjWzFdLnRvU3RyaW5nKCkudG9Mb2NhbGVMb3dlckNhc2UoKSxcblx0XHRcdFx0cGxhY2VIb2xkZXI6ICcnXG5cdFx0XHR9O1xuXG5cdFx0XHRpZiAodGhpcy5lbmFibGVQbGFjZWhvbGRlcikge1xuXHRcdFx0XHRjb3VudHJ5LnBsYWNlSG9sZGVyID0gdGhpcy5nZXRQaG9uZU51bWJlclBsYWNlSG9sZGVyKGNvdW50cnkuaXNvMi50b1VwcGVyQ2FzZSgpKTtcblx0XHRcdH1cblxuXHRcdFx0dGhpcy5hbGxDb3VudHJpZXMucHVzaChjb3VudHJ5KTtcblx0XHR9KTtcblx0fVxuXG5cdHByb3RlY3RlZCBnZXRQaG9uZU51bWJlclBsYWNlSG9sZGVyKGNvdW50cnlDb2RlOiBzdHJpbmcpOiBzdHJpbmcge1xuXHRcdHRyeSB7XG5cdFx0XHRyZXR1cm4gdGhpcy5waG9uZVV0aWwuZm9ybWF0KHRoaXMucGhvbmVVdGlsLmdldEV4YW1wbGVOdW1iZXIoY291bnRyeUNvZGUpLCBscG4uUGhvbmVOdW1iZXJGb3JtYXQuSU5URVJOQVRJT05BTCk7XG5cdFx0fSBjYXRjaCAoZSkge1xuXHRcdFx0cmV0dXJuIGU7XG5cdFx0fVxuXHR9XG5cblx0cmVnaXN0ZXJPbkNoYW5nZShmbjogYW55KTogdm9pZCB7XG5cdFx0dGhpcy5wcm9wYWdhdGVDaGFuZ2UgPSBmbjtcblx0fVxuXG5cdHJlZ2lzdGVyT25Ub3VjaGVkKGZuOiBhbnkpIHtcblx0XHR0aGlzLm9uVG91Y2hlZCA9IGZuO1xuXHR9XG5cblx0c2V0RGlzYWJsZWRTdGF0ZShpc0Rpc2FibGVkOiBib29sZWFuKTogdm9pZCB7XG5cdFx0dGhpcy5kaXNhYmxlZCA9IGlzRGlzYWJsZWQ7XG5cdH1cblxuXHR3cml0ZVZhbHVlKG9iajogYW55KTogdm9pZCB7XG5cdFx0aWYgKHR5cGVvZiBvYmogIT09ICdvYmplY3QnKSB7XG5cdFx0XHR0aGlzLnBob25lTnVtYmVyID0gb2JqO1xuXHRcdH1cblx0XHRzZXRUaW1lb3V0KCgpID0+IHtcblx0XHRcdHRoaXMub25QaG9uZU51bWJlckNoYW5nZSgpO1xuXHRcdH0sIDEpO1xuXHR9XG5cblx0cHJpdmF0ZSBnZXRDb3VudHJ5SXNvQ29kZShjb3VudHJ5Q29kZTogbnVtYmVyLCBudW1iZXI6IGxwbi5QaG9uZU51bWJlcik6IHN0cmluZyB8IHVuZGVmaW5lZCB7XG5cdFx0Ly8gV2lsbCB1c2UgdGhpcyB0byBtYXRjaCBhcmVhIGNvZGUgZnJvbSB0aGUgZmlyc3QgbnVtYmVyc1xuXHRcdGNvbnN0IHJhd051bWJlciA9IG51bWJlclsndmFsdWVzXyddWycyJ10udG9TdHJpbmcoKTtcblx0XHQvLyBMaXN0IG9mIGFsbCBjb3VudHJpZXMgd2l0aCBjb3VudHJ5Q29kZSAoY2FuIGJlIG1vcmUgdGhhbiBvbmUuIGUueC4gVVMsIENBLCBETywgUFIgYWxsIGhhdmUgKzEgY291bnRyeUNvZGUpXG5cdFx0Y29uc3QgY291bnRyaWVzID0gdGhpcy5hbGxDb3VudHJpZXMuZmlsdGVyKGMgPT4gYy5kaWFsQ29kZSA9PT0gY291bnRyeUNvZGUudG9TdHJpbmcoKSk7XG5cdFx0Ly8gTWFpbiBjb3VudHJ5IGlzIHRoZSBjb3VudHJ5LCB3aGljaCBoYXMgbm8gYXJlYUNvZGVzIHNwZWNpZmllZCBpbiBjb3VudHJ5LWNvZGUudHMgZmlsZS5cblx0XHRjb25zdCBtYWluQ291bnRyeSA9IGNvdW50cmllcy5maW5kKGMgPT4gYy5hcmVhQ29kZXMgPT09IHVuZGVmaW5lZCk7XG5cdFx0Ly8gU2Vjb25kYXJ5IGNvdW50cmllcyBhcmUgYWxsIGNvdW50cmllcywgd2hpY2ggaGF2ZSBhcmVhQ29kZXMgc3BlY2lmaWVkIGluIGNvdW50cnktY29kZS50cyBmaWxlLlxuXHRcdGNvbnN0IHNlY29uZGFyeUNvdW50cmllcyA9IGNvdW50cmllcy5maWx0ZXIoYyA9PiBjLmFyZWFDb2RlcyAhPT0gdW5kZWZpbmVkKTtcblx0XHRsZXQgbWF0Y2hlZENvdW50cnkgPSBtYWluQ291bnRyeSA/IG1haW5Db3VudHJ5LmlzbzIgOiB1bmRlZmluZWQ7XG5cblx0XHQvKlxuXHRcdFx0SW50ZXJhdGUgb3ZlciBlYWNoIHNlY29uZGFyeSBjb3VudHJ5IGFuZCBjaGVjayBpZiBuYXRpb25hbE51bWJlciBzdGFydHMgd2l0aCBhbnkgb2YgYXJlYUNvZGVzIGF2YWlsYWJsZS5cblx0XHRcdElmIG5vIG1hdGNoZXMgZm91bmQsIGZhbGxiYWNrIHRvIHRoZSBtYWluIGNvdW50cnkuXG5cdFx0Ki9cblx0XHRzZWNvbmRhcnlDb3VudHJpZXMuZm9yRWFjaChjb3VudHJ5ID0+IHtcblx0XHRcdGNvdW50cnkuYXJlYUNvZGVzLmZvckVhY2goYXJlYUNvZGUgPT4ge1xuXHRcdFx0XHRpZiAocmF3TnVtYmVyLnN0YXJ0c1dpdGgoYXJlYUNvZGUpKSB7XG5cdFx0XHRcdFx0bWF0Y2hlZENvdW50cnkgPSBjb3VudHJ5LmlzbzI7XG5cdFx0XHRcdH1cblx0XHRcdH0pO1xuXHRcdH0pO1xuXG5cdFx0cmV0dXJuIG1hdGNoZWRDb3VudHJ5O1xuXHR9XG5cbn1cbiJdfQ==
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmd4LWludGwtdGVsLWlucHV0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiJuZzovL25neC1pbnRsLXRlbC1pbnB1dC8iLCJzb3VyY2VzIjpbImxpYi9uZ3gtaW50bC10ZWwtaW5wdXQuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7QUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFVLFVBQVUsRUFBRSxLQUFLLEVBQUUsU0FBUyxFQUFFLFVBQVUsRUFBNEIsTUFBTSxlQUFlLENBQUM7QUFDdEgsT0FBTyxFQUFFLGFBQWEsRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ2xFLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUNsRCxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUV0RSxPQUFPLEtBQUssR0FBRyxNQUFNLHVCQUF1QixDQUFDO0FBQzdDLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLG1DQUFtQyxDQUFDO0FBQ3ZFLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUMxRCxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sMEJBQTBCLENBQUM7U0FnQnpDLG9CQUFvQjtBQWRqQztJQTBEQyxrQ0FDUyxlQUE0QjtRQUE1QixvQkFBZSxHQUFmLGVBQWUsQ0FBYTtRQXRDNUIsVUFBSyxHQUFHLEVBQUUsQ0FBQztRQUNYLHVCQUFrQixHQUFrQixFQUFFLENBQUM7UUFDdkMsc0JBQWlCLEdBQUcsSUFBSSxDQUFDO1FBQ3pCLGFBQVEsR0FBRyxjQUFjLENBQUM7UUFDMUIsa0JBQWEsR0FBa0IsRUFBRSxDQUFDO1FBQ2xDLDRCQUF1QixHQUFHLElBQUksQ0FBQztRQUMvQixzQkFBaUIsR0FBRyxLQUFLLENBQUM7UUFDMUIsdUJBQWtCLEdBQXlCLENBQUMsa0JBQWtCLENBQUMsR0FBRyxDQUFDLENBQUM7UUFDcEUsY0FBUyxHQUFHLEVBQUUsQ0FBQztR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QUNMLEtBQUs7cUNBQ0wsS0FBSzs0QkFDTCxLQUFLOytCQUNMLEtBQUs7cUNBQ0wsS0FBSztxQ0FDTCxLQUFLO2tDQUNMLEtBQUs7OEJBb0JMLFNBQVMsU0FBQyxhQUFhOztJQTBRekIsK0JBQUM7Q0FBQSxBQS9URCxJQStUQztTQTVTWSx3QkFBd0I7OztJQUVwQyx5Q0FBb0I7O0lBQ3BCLHNEQUFnRDs7SUFDaEQscURBQWtDOztJQUNsQyw0Q0FBbUM7O0lBQ25DLGlEQUEyQzs7SUFDM0MsMkRBQXdDOztJQUN4QyxxREFBbUM7O0lBQ25DLHNEQUE2RTs7SUFDN0UsNkNBQXdCOztJQUN4QixnREFBb0M7O0lBQ3BDLHNEQUFtQzs7SUFDbkMsc0RBQXdDOztJQUN4QyxtREFBZ0M7O0lBQ2hDLG1EQVFFOztJQUVGLCtDQUFpQjs7SUFDakIsZ0RBQWtDOztJQUNsQyxnRUFBa0Q7O0lBRWxELDZDQUFtRDs7SUFDbkQsNENBQWlCOztJQUNqQiwwQ0FBbUQ7O0lBQ25ELHFEQUF1Qjs7SUFFdkIsK0NBQWtEOztJQUVsRCw2Q0FBc0I7O0lBQ3RCLG1EQUFrQzs7Ozs7SUFHakMsbURBQW9DIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBPbkluaXQsIGZvcndhcmRSZWYsIElucHV0LCBWaWV3Q2hpbGQsIEVsZW1lbnRSZWYsIFNpbXBsZUNoYW5nZXMsIE9uQ2hhbmdlcyB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgTkdfVkFMSURBVE9SUywgTkdfVkFMVUVfQUNDRVNTT1IgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBDb3VudHJ5Q29kZSB9IGZyb20gJy4vZGF0YS9jb3VudHJ5LWNvZGUnO1xuaW1wb3J0IHsgcGhvbmVOdW1iZXJWYWxpZGF0b3IgfSBmcm9tICcuL25neC1pbnRsLXRlbC1pbnB1dC52YWxpZGF0b3InO1xuaW1wb3J0IHsgQ291bnRyeSB9IGZyb20gJy4vbW9kZWwvY291bnRyeS5tb2RlbCc7XG5pbXBvcnQgKiBhcyBscG4gZnJvbSAnZ29vZ2xlLWxpYnBob25lbnVtYmVyJztcbmltcG9ydCB7IFNlYXJjaENvdW50cnlGaWVsZCB9IGZyb20gJy4vZW51bXMvc2VhcmNoLWNvdW50cnktZmllbGQuZW51bSc7XG5pbXBvcnQgeyBUb29sdGlwTGFiZWwgfSBmcm9tICcuL2VudW1zL3Rvb2x0aXAtbGFiZWwuZW51bSc7XG5pbXBvcnQgeyBDb3VudHJ5SVNPIH0gZnJvbSAnLi9lbnVtcy9jb3VudHJ5LWlzby5lbnVtJztcblxuQENvbXBvbmVudCh7XG5cdHNlbGVjdG9yOiAnbmd4LWludGwtdGVsLWlucHV0Jyxcblx0dGVtcGxhdGVVcmw6ICcuL25neC1pbnRsLXRlbC1pbnB1dC5jb21wb25lbnQuaHRtbCcsXG5cdHN0eWxlVXJsczogWycuL25neC1pbnRsLXRlbC1pbnB1dC5jb21wb25lbnQuY3NzJ10sXG5cdHByb3ZpZGVyczogW1xuXHRcdENvdW50cnlDb2RlLFxuXHRcdHtcblx0XHRcdHByb3ZpZGU6IE5HX1ZBTFVFX0FDQ0VTU09SLFxuXHRcdFx0Ly8gdHNsaW50OmRpc2FibGUtbmV4dC1saW5lOm5vLWZvcndhcmQtcmVmXG5cdFx0XHR1c2VFeGlzdGluZzogZm9yd2FyZFJlZigoKSA9PiBOZ3hJbnRsVGVsSW5wdXRDb21wb25lbnQpLFxuXHRcdFx0bXVsdGk6IHRydWVcblx0XHR9LFxuXHRcdHtcblx0XHRcdHByb3ZpZGU6IE5HX1ZBTElEQVRPUlMsXG5cdFx0XHR1c2VWYWx1ZTogcGhvbmVOdW1iZXJWYWxpZGF0b3IsXG5cdFx0XHRtdWx0aTogdHJ1ZSxcblx0XHR9XG5cdF1cbn0pXG5leHBvcnQgY2xhc3MgTmd4SW50bFRlbElucHV0Q29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkNoYW5nZXMge1xuXG5cdEBJbnB1dCgpIHZhbHVlID0gJyc7XG5cdEBJbnB1dCgpIHByZWZlcnJlZENvdW50cmllczogQXJyYXk8c3RyaW5nPiA9IFtdO1xuXHRASW5wdXQoKSBlbmFibGVQbGFjZWhvbGRlciA9IHRydWU7XG5cdEBJbnB1dCgpIGNzc0NsYXNzID0gJ2Zvcm0tY29udHJvbCc7XG5cdEBJbnB1dCgpIG9ubHlDb3VudHJpZXM6IEFycmF5PHN0cmluZz4gPSBbXTtcblx0QElucHV0KCkgZW5hYmxlQXV0b0NvdW50cnlTZWxlY3QgPSB0cnVlO1xuXHRASW5wdXQoKSBzZWFyY2hDb3VudHJ5RmxhZyA9IGZhbHNlO1xuXHRASW5wdXQoKSBzZWFyY2hDb3VudHJ5RmllbGQ6IFNlYXJjaENvdW50cnlGaWVsZFtdID0gW1NlYXJjaENvdW50cnlGaWVsZC5BbGxdO1xuXHRASW5wdXQoKSBtYXhMZW5ndGggPSAnJztcblx0QElucHV0KCkgdG9vbHRpcEZpZWxkOiBUb29sdGlwTGFiZWw7XG5cdEBJbnB1dCgpIHNlbGVjdEZpcnN0Q291bnRyeSA9IHRydWU7XG5cdEBJbnB1dCgpIHNlbGVjdGVkQ291bnRyeUlTTzogQ291bnRyeUlTTztcblx0QElucHV0KCkgcGhvbmVWYWxpZGF0aW9uID0gdHJ1ZTtcblx0c2VsZWN0ZWRDb3VudHJ5OiBDb3VudHJ5ID0ge1xuXHRcdGFyZWFDb2RlczogdW5kZWZpbmVkLFxuXHRcdGRpYWxDb2RlOiAnJyxcblx0XHRmbGFnQ2xhc3M6ICcnLFxuXHRcdGlzbzI6ICcnLFxuXHRcdG5hbWU6ICcnLFxuXHRcdHBsYWNlSG9sZGVyOiAnJyxcblx0XHRwcmlvcml0eTogMFxuXHR9O1xuXG5cdHBob25lTnVtYmVyID0gJyc7XG5cdGFsbENvdW50cmllczogQXJyYXk8Q291bnRyeT4gPSBbXTtcblx0cHJlZmVycmVkQ291bnRyaWVzSW5Ecm9wRG93bjogQXJyYXk8Q291bnRyeT4gPSBbXTtcblx0Ly8gSGFzIHRvIGJlICdhbnknIHRvIHByZXZlbnQgYSBuZWVkIHRvIGluc3RhbGwgQHR5cGVzL2dvb2dsZS1saWJwaG9uZW51bWJlciBieSB0aGUgcGFja2FnZSB1c2VyLi4uXG5cdHBob25lVXRpbDogYW55ID0gbHBuLlBob25lTnVtYmVyVXRpbC5nZXRJbnN0YW5jZSgpO1xuXHRkaXNhYmxlZCA9IGZhbHNlO1xuXHRlcnJvcnM6IEFycmF5PGFueT4gPSBbJ1Bob25lIG51bWJlciBpcyByZXF1aXJlZC4nXTtcblx0Y291bnRyeVNlYXJjaFRleHQgPSAnJztcblxuXHRAVmlld0NoaWxkKCdjb3VudHJ5TGlzdCcpIGNvdW50cnlMaXN0OiBFbGVtZW50UmVmO1xuXG5cdG9uVG91Y2hlZCA9ICgpID0+IHsgfTtcblx0cHJvcGFnYXRlQ2hhbmdlID0gKF86IGFueSkgPT4geyB9O1xuXG5cdGNvbnN0cnVjdG9yKFxuXHRcdHByaXZhdGUgY291bnRyeUNvZGVEYXRhOiBDb3VudHJ5Q29kZSxcblx0KSB7IH1cblxuXHRuZ09uSW5pdCgpIHtcblxuXHRcdHRoaXMuZmV0Y2hDb3VudHJ5RGF0YSgpO1xuXHRcdGlmICh0aGlzLnByZWZlcnJlZENvdW50cmllcy5sZW5ndGgpIHtcblx0XHRcdHRoaXMuZ2V0UHJlZmVycmVkQ291bnRyaWVzKCk7XG5cdFx0fVxuXHRcdGlmICh0aGlzLm9ubHlDb3VudHJpZXMubGVuZ3RoKSB7XG5cdFx0XHR0aGlzLmFsbENvdW50cmllcyA9IHRoaXMuYWxsQ291bnRyaWVzLmZpbHRlcihjID0+IHRoaXMub25seUNvdW50cmllcy5pbmNsdWRlcyhjLmlzbzIpKTtcblx0XHR9XG5cdFx0aWYgKHRoaXMuc2VsZWN0Rmlyc3RDb3VudHJ5KSB7XG5cdFx0XHRpZiAodGhpcy5wcmVmZXJyZWRDb3VudHJpZXNJbkRyb3BEb3duLmxlbmd0aCkge1xuXHRcdFx0XHR0aGlzLnNlbGVjdGVkQ291bnRyeSA9IHRoaXMucHJlZmVycmVkQ291bnRyaWVzSW5Ecm9wRG93blswXTtcblx0XHRcdH0gZWxzZSB7XG5cdFx0XHRcdHRoaXMuc2VsZWN0ZWRDb3VudHJ5ID0gdGhpcy5hbGxDb3VudHJpZXNbMF07XG5cdFx0XHR9XG5cdFx0fVxuXHRcdHRoaXMuZ2V0U2VsZWN0ZWRDb3VudHJ5KCk7XG5cdH1cblxuXHRuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKSB7XG5cdFx0aWYgKHRoaXMuYWxsQ291bnRyaWVzICYmIGNoYW5nZXNbJ3NlbGVjdGVkQ291bnRyeUlTTyddXG5cdFx0JiYgY2hhbmdlc1snc2VsZWN0ZWRDb3VudHJ5SVNPJ10uY3VycmVudFZhbHVlICE9PSBjaGFuZ2VzWydzZWxlY3RlZENvdW50cnlJU08nXS5wcmV2aW91c1ZhbHVlKSB7XG5cdFx0XHR0aGlzLmdldFNlbGVjdGVkQ291bnRyeSgpO1xuXHRcdH1cblx0XHRpZiAoY2hhbmdlcy5wcmVmZXJyZWRDb3VudHJpZXMpIHtcblx0XHRcdHRoaXMuZ2V0UHJlZmVycmVkQ291bnRyaWVzKCk7XG5cdFx0fVxuXHR9XG5cblx0Z2V0UHJlZmVycmVkQ291bnRyaWVzKCkge1xuXHRcdGlmICh0aGlzLnByZWZlcnJlZENvdW50cmllcy5sZW5ndGgpIHtcblx0XHRcdHRoaXMucHJlZmVycmVkQ291bnRyaWVzSW5Ecm9wRG93biA9IFtdO1xuXHRcdFx0dGhpcy5wcmVmZXJyZWRDb3VudHJpZXMuZm9yRWFjaChpc28yID0+IHtcblx0XHRcdFx0Y29uc3QgcHJlZmVycmVkQ291bnRyeSA9IHRoaXMuYWxsQ291bnRyaWVzLmZpbHRlcigoYykgPT4ge1xuXHRcdFx0XHRcdHJldHVybiBjLmlzbzIgPT09IGlzbzI7XG5cdFx0XHRcdH0pO1xuXG5cdFx0XHRcdHRoaXMucHJlZmVycmVkQ291bnRyaWVzSW5Ecm9wRG93bi5wdXNoKHByZWZlcnJlZENvdW50cnlbMF0pO1xuXHRcdFx0fSk7XG5cdFx0fVxuXHR9XG5cblx0Z2V0U2VsZWN0ZWRDb3VudHJ5KCkge1xuXHRcdGlmICh0aGlzLnNlbGVjdGVkQ291bnRyeUlTTykge1xuXHRcdFx0dGhpcy5zZWxlY3RlZENvdW50cnkgPSB0aGlzLmFsbENvdW50cmllcy5maW5kKGMgPT4geyByZXR1cm4gKGMuaXNvMi50b0xvd2VyQ2FzZSgpID09PSB0aGlzLnNlbGVjdGVkQ291bnRyeUlTTy50b0xvd2VyQ2FzZSgpKTsgfSk7XG5cdFx0XHRpZiAodGhpcy5zZWxlY3RlZENvdW50cnkpIHtcblx0XHRcdFx0aWYgKHRoaXMucGhvbmVOdW1iZXIpIHtcblx0XHRcdFx0XHR0aGlzLm9uUGhvbmVOdW1iZXJDaGFuZ2UoKTtcblx0XHRcdFx0fSBlbHNlIHtcblx0XHRcdFx0XHR0aGlzLnByb3BhZ2F0ZUNoYW5nZSh1bmRlZmluZWQpO1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG5cblxuXHQvKipcblx0ICogU2VhcmNoIGNvdW50cnkgYmFzZWQgb24gY291bnRyeSBuYW1lLCBpc28yLCBkaWFsQ29kZSBvciBhbGwgb2YgdGhlbS5cblx0ICovXG5cdHNlYXJjaENvdW50cnkoKSB7XG5cdFx0aWYgKCF0aGlzLmNvdW50cnlTZWFyY2hUZXh0KSB7XG5cdFx0XHR0aGlzLmNvdW50cnlMaXN0Lm5hdGl2ZUVsZW1lbnQucXVlcnlTZWxlY3RvcignbGknKS5zY3JvbGxJbnRvVmlldyh7IGJlaGF2aW9yOiAnc21vb3RoJyB9KTtcblx0XHRcdHJldHVybjtcblx0XHR9XG5cdFx0Y29uc3QgY291bnRyeVNlYXJjaFRleHRMb3dlciA9IHRoaXMuY291bnRyeVNlYXJjaFRleHQudG9Mb3dlckNhc2UoKTtcblx0XHRjb25zdCBjb3VudHJ5ID0gdGhpcy5hbGxDb3VudHJpZXMuZmlsdGVyKGMgPT4ge1xuXHRcdFx0aWYgKHRoaXMuc2VhcmNoQ291bnRyeUZpZWxkLmluZGV4T2YoU2VhcmNoQ291bnRyeUZpZWxkLkFsbCkgPiAtMSkge1xuXHRcdFx0XHQvLyBTZWFyY2ggaW4gYWxsIGZpZWxkc1xuXHRcdFx0XHRpZiAoYy5pc28yLnRvTG93ZXJDYXNlKCkuc3RhcnRzV2l0aChjb3VudHJ5U2VhcmNoVGV4dExvd2VyKSkge1xuXHRcdFx0XHRcdHJldHVybiBjO1xuXHRcdFx0XHR9XG5cdFx0XHRcdGlmIChjLm5hbWUudG9Mb3dlckNhc2UoKS5zdGFydHNXaXRoKGNvdW50cnlTZWFyY2hUZXh0TG93ZXIpKSB7XG5cdFx0XHRcdFx0cmV0dXJuIGM7XG5cdFx0XHRcdH1cblx0XHRcdFx0aWYgKGMuZGlhbENvZGUuc3RhcnRzV2l0aCh0aGlzLmNvdW50cnlTZWFyY2hUZXh0KSkge1xuXHRcdFx0XHRcdHJldHVybiBjO1xuXHRcdFx0XHR9XG5cdFx0XHR9IGVsc2Uge1xuXHRcdFx0XHQvLyBPciBzZWFyY2ggYnkgc3BlY2lmaWMgU2VhcmNoQ291bnRyeUZpZWxkKHMpXG5cdFx0XHRcdGlmICh0aGlzLnNlYXJjaENvdW50cnlGaWVsZC5pbmRleE9mKFNlYXJjaENvdW50cnlGaWVsZC5Jc28yKSA+IC0xKSB7XG5cdFx0XHRcdFx0aWYgKGMuaXNvMi50b0xvd2VyQ2FzZSgpLnN0YXJ0c1dpdGgoY291bnRyeVNlYXJjaFRleHRMb3dlcikpIHtcblx0XHRcdFx0XHRcdHJldHVybiBjO1xuXHRcdFx0XHRcdH1cblx0XHRcdFx0fVxuXHRcdFx0XHRpZiAodGhpcy5zZWFyY2hDb3VudHJ5RmllbGQuaW5kZXhPZihTZWFyY2hDb3VudHJ5RmllbGQuTmFtZSkgPiAtMSkge1xuXHRcdFx0XHRcdGlmIChjLm5hbWUudG9Mb3dlckNhc2UoKS5zdGFydHNXaXRoKGNvdW50cnlTZWFyY2hUZXh0TG93ZXIpKSB7XG5cdFx0XHRcdFx0XHRyZXR1cm4gYztcblx0XHRcdFx0XHR9XG5cdFx0XHRcdH1cblx0XHRcdFx0aWYgKHRoaXMuc2VhcmNoQ291bnRyeUZpZWxkLmluZGV4T2YoU2VhcmNoQ291bnRyeUZpZWxkLkRpYWxDb2RlKSA+IC0xKSB7XG5cdFx0XHRcdFx0aWYgKGMuZGlhbENvZGUuc3RhcnRzV2l0aCh0aGlzLmNvdW50cnlTZWFyY2hUZXh0KSkge1xuXHRcdFx0XHRcdFx0cmV0dXJuIGM7XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0fSk7XG5cblx0XHRpZiAoY291bnRyeS5sZW5ndGggPiAwKSB7XG5cdFx0XHRjb25zdCBlbCA9IHRoaXMuY291bnRyeUxpc3QubmF0aXZlRWxlbWVudC5xdWVyeVNlbGVjdG9yKCcjJyArIGNvdW50cnlbMF0uaXNvMik7XG5cdFx0XHRpZiAoZWwpIHtcblx0XHRcdFx0ZWwuc2Nyb2xsSW50b1ZpZXcoeyBiZWhhdmlvcjogJ3Ntb290aCcgfSk7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG5cblx0cHVibGljIG9uUGhvbmVOdW1iZXJDaGFuZ2UoKTogdm9pZCB7XG5cdFx0dGhpcy52YWx1ZSA9IHRoaXMucGhvbmVOdW1iZXI7XG5cblx0XHRsZXQgbnVtYmVyOiBscG4uUGhvbmVOdW1iZXI7XG5cdFx0dHJ5IHtcblx0XHRcdG51bWJlciA9IHRoaXMucGhvbmVVdGlsLnBhcnNlKHRoaXMucGhvbmVOdW1iZXIsIHRoaXMuc2VsZWN0ZWRDb3VudHJ5LmlzbzIudG9VcHBlckNhc2UoKSk7XG5cdFx0fSBjYXRjaCAoZSkge1xuXHRcdH1cblxuXHRcdGxldCBjb3VudHJ5Q29kZSA9IHRoaXMuc2VsZWN0ZWRDb3VudHJ5LmlzbzI7XG5cdFx0Ly8gYXV0byBzZWxlY3QgY291bnRyeSBiYXNlZCBvbiB0aGUgZXh0ZW5zaW9uIChhbmQgYXJlYUNvZGUgaWYgbmVlZGVkKSAoZS5nIHNlbGVjdCBDYW5hZGEgaWYgbnVtYmVyIHN0YXJ0cyB3aXRoICsxIDQxNilcblx0XHRpZiAodGhpcy5lbmFibGVBdXRvQ291bnRyeVNlbGVjdCkge1xuXHRcdFx0Y291bnRyeUNvZGUgPSBudW1iZXIgJiYgbnVtYmVyLmdldENvdW50cnlDb2RlKClcblx0XHRcdFx0PyB0aGlzLmdldENvdW50cnlJc29Db2RlKG51bWJlci5nZXRDb3VudHJ5Q29kZSgpLCBudW1iZXIpXG5cdFx0XHRcdDogdGhpcy5zZWxlY3RlZENvdW50cnkuaXNvMjtcblx0XHRcdGlmIChjb3VudHJ5Q29kZSAmJiBjb3VudHJ5Q29kZSAhPT0gdGhpcy5zZWxlY3RlZENvdW50cnkuaXNvMikge1xuXHRcdFx0XHRjb25zdCBuZXdDb3VudHJ5ID0gdGhpcy5hbGxDb3VudHJpZXMuZmluZChjID0+IGMuaXNvMiA9PT0gY291bnRyeUNvZGUpO1xuXHRcdFx0XHRpZiAobmV3Q291bnRyeSkge1xuXHRcdFx0XHRcdHRoaXMuc2VsZWN0ZWRDb3VudHJ5ID0gbmV3Q291bnRyeTtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdH1cblx0XHRjb3VudHJ5Q29kZSA9IGNvdW50cnlDb2RlID8gY291bnRyeUNvZGUgOiB0aGlzLnNlbGVjdGVkQ291bnRyeS5pc28yO1xuXG5cdFx0aWYgKCF0aGlzLnZhbHVlKSB7XG5cdFx0XHQvLyB0c2xpbnQ6ZGlzYWJsZS1uZXh0LWxpbmU6bm8tbnVsbC1rZXl3b3JkXG5cdFx0XHR0aGlzLnByb3BhZ2F0ZUNoYW5nZShudWxsKTtcblx0XHR9IGVsc2Uge1xuXHRcdFx0dGhpcy5wcm9wYWdhdGVDaGFuZ2Uoe1xuXHRcdFx0XHRudW1iZXI6IHRoaXMudmFsdWUsXG5cdFx0XHRcdGludGVybmF0aW9uYWxOdW1iZXI6IG51bWJlciA/IHRoaXMucGhvbmVVdGlsLmZvcm1hdChudW1iZXIsIGxwbi5QaG9uZU51bWJlckZvcm1hdC5JTlRFUk5BVElPTkFMKSA6ICcnLFxuXHRcdFx0XHRuYXRpb25hbE51bWJlcjogbnVtYmVyID8gdGhpcy5waG9uZVV0aWwuZm9ybWF0KG51bWJlciwgbHBuLlBob25lTnVtYmVyRm9ybWF0Lk5BVElPTkFMKSA6ICcnLFxuXHRcdFx0XHRjb3VudHJ5Q29kZTogY291bnRyeUNvZGUudG9VcHBlckNhc2UoKSxcblx0XHRcdFx0ZGlhbENvZGU6ICcrJyArIHRoaXMuc2VsZWN0ZWRDb3VudHJ5LmRpYWxDb2RlXG5cdFx0XHR9KTtcblx0XHR9XG5cdH1cblxuXHRwdWJsaWMgb25Db3VudHJ5U2VsZWN0KGNvdW50cnk6IENvdW50cnksIGVsKTogdm9pZCB7XG5cdFx0dGhpcy5zZWxlY3RlZENvdW50cnkgPSBjb3VudHJ5O1xuXG5cdFx0aWYgKHRoaXMucGhvbmVOdW1iZXIubGVuZ3RoID4gMCkge1xuXHRcdFx0dGhpcy52YWx1ZSA9IHRoaXMucGhvbmVOdW1iZXI7XG5cblx0XHRcdGxldCBudW1iZXI6IGxwbi5QaG9uZU51bWJlcjtcblx0XHRcdHRyeSB7XG5cdFx0XHRcdG51bWJlciA9IHRoaXMucGhvbmVVdGlsLnBhcnNlKHRoaXMucGhvbmVOdW1iZXIsIHRoaXMuc2VsZWN0ZWRDb3VudHJ5LmlzbzIudG9VcHBlckNhc2UoKSk7XG5cdFx0XHR9IGNhdGNoIChlKSB7XG5cdFx0XHR9XG5cblx0XHRcdHRoaXMucHJvcGFnYXRlQ2hhbmdlKHtcblx0XHRcdFx0bnVtYmVyOiB0aGlzLnZhbHVlLFxuXHRcdFx0XHRpbnRlcm5hdGlvbmFsTnVtYmVyOiBudW1iZXIgPyB0aGlzLnBob25lVXRpbC5mb3JtYXQobnVtYmVyLCBscG4uUGhvbmVOdW1iZXJGb3JtYXQuSU5URVJOQVRJT05BTCkgOiAnJyxcblx0XHRcdFx0bmF0aW9uYWxOdW1iZXI6IG51bWJlciA/IHRoaXMucGhvbmVVdGlsLmZvcm1hdChudW1iZXIsIGxwbi5QaG9uZU51bWJlckZvcm1hdC5OQVRJT05BTCkgOiAnJyxcblx0XHRcdFx0Y291bnRyeUNvZGU6IHRoaXMuc2VsZWN0ZWRDb3VudHJ5LmlzbzIudG9VcHBlckNhc2UoKSxcblx0XHRcdFx0ZGlhbENvZGU6ICcrJyArIHRoaXMuc2VsZWN0ZWRDb3VudHJ5LmRpYWxDb2RlXG5cdFx0XHR9KTtcblx0XHR9XG5cblx0XHRlbC5mb2N1cygpO1xuXHR9XG5cblx0cHVibGljIG9uSW5wdXRLZXlQcmVzcyhldmVudDogS2V5Ym9hcmRFdmVudCk6IHZvaWQge1xuXHRcdGNvbnN0IGFsbG93ZWRDaGFycyA9IC9bMC05XFwrXFwtXFwgXS87XG5cdFx0Y29uc3QgYWxsb3dlZEN0cmxDaGFycyA9IC9bYXhjdl0vOyAvLyBBbGxvd3MgY29weS1wYXN0aW5nXG5cdFx0Y29uc3QgYWxsb3dlZE90aGVyS2V5cyA9IFtcblx0XHRcdCdBcnJvd0xlZnQnLCAnQXJyb3dVcCcsICdBcnJvd1JpZ2h0JywgJ0Fycm93RG93bicsXG5cdFx0XHQnSG9tZScsICdFbmQnLCAnSW5zZXJ0JywgJ0RlbGV0ZScsICdCYWNrc3BhY2UnXG5cdFx0XTtcblxuXHRcdGlmICghYWxsb3dlZENoYXJzLnRlc3QoZXZlbnQua2V5KVxuXHRcdFx0JiYgIShldmVudC5jdHJsS2V5ICYmIGFsbG93ZWRDdHJsQ2hhcnMudGVzdChldmVudC5rZXkpKVxuXHRcdFx0JiYgIShhbGxvd2VkT3RoZXJLZXlzLmluY2x1ZGVzKGV2ZW50LmtleSkpKSB7XG5cdFx0XHRldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuXHRcdH1cblx0fVxuXG5cdHByb3RlY3RlZCBmZXRjaENvdW50cnlEYXRhKCk6IHZvaWQge1xuXHRcdHRoaXMuY291bnRyeUNvZGVEYXRhLmFsbENvdW50cmllcy5mb3JFYWNoKGMgPT4ge1xuXHRcdFx0Y29uc3QgY291bnRyeTogQ291bnRyeSA9IHtcblx0XHRcdFx0bmFtZTogY1swXS50b1N0cmluZygpLFxuXHRcdFx0XHRpc28yOiBjWzFdLnRvU3RyaW5nKCksXG5cdFx0XHRcdGRpYWxDb2RlOiBjWzJdLnRvU3RyaW5nKCksXG5cdFx0XHRcdHByaW9yaXR5OiArY1szXSB8fCAwLFxuXHRcdFx0XHRhcmVhQ29kZXM6IGNbNF0gYXMgc3RyaW5nW10gfHwgdW5kZWZpbmVkLFxuXHRcdFx0XHRmbGFnQ2xhc3M6IGNbMV0udG9TdHJpbmcoKS50b0xvY2FsZUxvd2VyQ2FzZSgpLFxuXHRcdFx0XHRwbGFjZUhvbGRlcjogJydcblx0XHRcdH07XG5cblx0XHRcdGlmICh0aGlzLmVuYWJsZVBsYWNlaG9sZGVyKSB7XG5cdFx0XHRcdGNvdW50cnkucGxhY2VIb2xkZXIgPSB0aGlzLmdldFBob25lTnVtYmVyUGxhY2VIb2xkZXIoY291bnRyeS5pc28yLnRvVXBwZXJDYXNlKCkpO1xuXHRcdFx0fVxuXG5cdFx0XHR0aGlzLmFsbENvdW50cmllcy5wdXNoKGNvdW50cnkpO1xuXHRcdH0pO1xuXHR9XG5cblx0cHJvdGVjdGVkIGdldFBob25lTnVtYmVyUGxhY2VIb2xkZXIoY291bnRyeUNvZGU6IHN0cmluZyk6IHN0cmluZyB7XG5cdFx0dHJ5IHtcblx0XHRcdHJldHVybiB0aGlzLnBob25lVXRpbC5mb3JtYXQodGhpcy5waG9uZVV0aWwuZ2V0RXhhbXBsZU51bWJlcihjb3VudHJ5Q29kZSksIGxwbi5QaG9uZU51bWJlckZvcm1hdC5JTlRFUk5BVElPTkFMKTtcblx0XHR9IGNhdGNoIChlKSB7XG5cdFx0XHRyZXR1cm4gZTtcblx0XHR9XG5cdH1cblxuXHRyZWdpc3Rlck9uQ2hhbmdlKGZuOiBhbnkpOiB2b2lkIHtcblx0XHR0aGlzLnByb3BhZ2F0ZUNoYW5nZSA9IGZuO1xuXHR9XG5cblx0cmVnaXN0ZXJPblRvdWNoZWQoZm46IGFueSkge1xuXHRcdHRoaXMub25Ub3VjaGVkID0gZm47XG5cdH1cblxuXHRzZXREaXNhYmxlZFN0YXRlKGlzRGlzYWJsZWQ6IGJvb2xlYW4pOiB2b2lkIHtcblx0XHR0aGlzLmRpc2FibGVkID0gaXNEaXNhYmxlZDtcblx0fVxuXG5cdHdyaXRlVmFsdWUob2JqOiBhbnkpOiB2b2lkIHtcblx0XHRpZiAodHlwZW9mIG9iaiAhPT0gJ29iamVjdCcpIHtcblx0XHRcdHRoaXMucGhvbmVOdW1iZXIgPSBvYmo7XG5cdFx0fVxuXHRcdHNldFRpbWVvdXQoKCkgPT4ge1xuXHRcdFx0dGhpcy5vblBob25lTnVtYmVyQ2hhbmdlKCk7XG5cdFx0fSwgMSk7XG5cdH1cblxuXHRwcml2YXRlIGdldENvdW50cnlJc29Db2RlKGNvdW50cnlDb2RlOiBudW1iZXIsIG51bWJlcjogbHBuLlBob25lTnVtYmVyKTogc3RyaW5nIHwgdW5kZWZpbmVkIHtcblx0XHQvLyBXaWxsIHVzZSB0aGlzIHRvIG1hdGNoIGFyZWEgY29kZSBmcm9tIHRoZSBmaXJzdCBudW1iZXJzXG5cdFx0Y29uc3QgcmF3TnVtYmVyID0gbnVtYmVyWyd2YWx1ZXNfJ11bJzInXS50b1N0cmluZygpO1xuXHRcdC8vIExpc3Qgb2YgYWxsIGNvdW50cmllcyB3aXRoIGNvdW50cnlDb2RlIChjYW4gYmUgbW9yZSB0aGFuIG9uZS4gZS54LiBVUywgQ0EsIERPLCBQUiBhbGwgaGF2ZSArMSBjb3VudHJ5Q29kZSlcblx0XHRjb25zdCBjb3VudHJpZXMgPSB0aGlzLmFsbENvdW50cmllcy5maWx0ZXIoYyA9PiBjLmRpYWxDb2RlID09PSBjb3VudHJ5Q29kZS50b1N0cmluZygpKTtcblx0XHQvLyBNYWluIGNvdW50cnkgaXMgdGhlIGNvdW50cnksIHdoaWNoIGhhcyBubyBhcmVhQ29kZXMgc3BlY2lmaWVkIGluIGNvdW50cnktY29kZS50cyBmaWxlLlxuXHRcdGNvbnN0IG1haW5Db3VudHJ5ID0gY291bnRyaWVzLmZpbmQoYyA9PiBjLmFyZWFDb2RlcyA9PT0gdW5kZWZpbmVkKTtcblx0XHQvLyBTZWNvbmRhcnkgY291bnRyaWVzIGFyZSBhbGwgY291bnRyaWVzLCB3aGljaCBoYXZlIGFyZWFDb2RlcyBzcGVjaWZpZWQgaW4gY291bnRyeS1jb2RlLnRzIGZpbGUuXG5cdFx0Y29uc3Qgc2Vjb25kYXJ5Q291bnRyaWVzID0gY291bnRyaWVzLmZpbHRlcihjID0+IGMuYXJlYUNvZGVzICE9PSB1bmRlZmluZWQpO1xuXHRcdGxldCBtYXRjaGVkQ291bnRyeSA9IG1haW5Db3VudHJ5ID8gbWFpbkNvdW50cnkuaXNvMiA6IHVuZGVmaW5lZDtcblxuXHRcdC8qXG5cdFx0XHRJbnRlcmF0ZSBvdmVyIGVhY2ggc2Vjb25kYXJ5IGNvdW50cnkgYW5kIGNoZWNrIGlmIG5hdGlvbmFsTnVtYmVyIHN0YXJ0cyB3aXRoIGFueSBvZiBhcmVhQ29kZXMgYXZhaWxhYmxlLlxuXHRcdFx0SWYgbm8gbWF0Y2hlcyBmb3VuZCwgZmFsbGJhY2sgdG8gdGhlIG1haW4gY291bnRyeS5cblx0XHQqL1xuXHRcdHNlY29uZGFyeUNvdW50cmllcy5mb3JFYWNoKGNvdW50cnkgPT4ge1xuXHRcdFx0Y291bnRyeS5hcmVhQ29kZXMuZm9yRWFjaChhcmVhQ29kZSA9PiB7XG5cdFx0XHRcdGlmIChyYXdOdW1iZXIuc3RhcnRzV2l0aChhcmVhQ29kZSkpIHtcblx0XHRcdFx0XHRtYXRjaGVkQ291bnRyeSA9IGNvdW50cnkuaXNvMjtcblx0XHRcdFx0fVxuXHRcdFx0fSk7XG5cdFx0fSk7XG5cblx0XHRyZXR1cm4gbWF0Y2hlZENvdW50cnk7XG5cdH1cblxufVxuIl19

@@ -8,5 +8,5 @@ /**

*/
export { NgxIntlTelInputService, NgxIntlTelInputComponent, NgxIntlTelInputModule, CountryISO } from './public_api';
export { NgxIntlTelInputService, NgxIntlTelInputComponent, NgxIntlTelInputModule, CountryISO, SearchCountryField, TooltipLabel } from './public_api';
export { CountryCode as ɵa } from './lib/data/country-code';
export { phoneNumberValidator as ɵb } from './lib/ngx-intl-tel-input.validator';
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmd4LWludGwtdGVsLWlucHV0LmpzIiwic291cmNlUm9vdCI6Im5nOi8vbmd4LWludGwtdGVsLWlucHV0LyIsInNvdXJjZXMiOlsibmd4LWludGwtdGVsLWlucHV0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7QUFJQSxvR0FBYyxjQUFjLENBQUM7QUFFN0IsT0FBTyxFQUFDLFdBQVcsSUFBSSxFQUFFLEVBQUMsTUFBTSx5QkFBeUIsQ0FBQztBQUMxRCxPQUFPLEVBQUMsb0JBQW9CLElBQUksRUFBRSxFQUFDLE1BQU0sb0NBQW9DLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEdlbmVyYXRlZCBidW5kbGUgaW5kZXguIERvIG5vdCBlZGl0LlxuICovXG5cbmV4cG9ydCAqIGZyb20gJy4vcHVibGljX2FwaSc7XG5cbmV4cG9ydCB7Q291bnRyeUNvZGUgYXMgybVhfSBmcm9tICcuL2xpYi9kYXRhL2NvdW50cnktY29kZSc7XG5leHBvcnQge3Bob25lTnVtYmVyVmFsaWRhdG9yIGFzIMm1Yn0gZnJvbSAnLi9saWIvbmd4LWludGwtdGVsLWlucHV0LnZhbGlkYXRvcic7Il19
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmd4LWludGwtdGVsLWlucHV0LmpzIiwic291cmNlUm9vdCI6Im5nOi8vbmd4LWludGwtdGVsLWlucHV0LyIsInNvdXJjZXMiOlsibmd4LWludGwtdGVsLWlucHV0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7QUFJQSxzSUFBYyxjQUFjLENBQUM7QUFFN0IsT0FBTyxFQUFDLFdBQVcsSUFBSSxFQUFFLEVBQUMsTUFBTSx5QkFBeUIsQ0FBQztBQUMxRCxPQUFPLEVBQUMsb0JBQW9CLElBQUksRUFBRSxFQUFDLE1BQU0sb0NBQW9DLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEdlbmVyYXRlZCBidW5kbGUgaW5kZXguIERvIG5vdCBlZGl0LlxuICovXG5cbmV4cG9ydCAqIGZyb20gJy4vcHVibGljX2FwaSc7XG5cbmV4cG9ydCB7Q291bnRyeUNvZGUgYXMgybVhfSBmcm9tICcuL2xpYi9kYXRhL2NvdW50cnktY29kZSc7XG5leHBvcnQge3Bob25lTnVtYmVyVmFsaWRhdG9yIGFzIMm1Yn0gZnJvbSAnLi9saWIvbmd4LWludGwtdGVsLWlucHV0LnZhbGlkYXRvcic7Il19

@@ -12,2 +12,4 @@ /**

export { CountryISO } from './lib/enums/country-iso.enum';
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljX2FwaS5qcyIsInNvdXJjZVJvb3QiOiJuZzovL25neC1pbnRsLXRlbC1pbnB1dC8iLCJzb3VyY2VzIjpbInB1YmxpY19hcGkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7OztBQUlBLHVDQUFjLGtDQUFrQyxDQUFDO0FBQ2pELHlDQUFjLG9DQUFvQyxDQUFDO0FBQ25ELHNDQUFjLGlDQUFpQyxDQUFDO0FBQ2hELDJCQUFjLDhCQUE4QixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLypcbiAqIFB1YmxpYyBBUEkgU3VyZmFjZSBvZiBuZ3gtaW50bC10ZWwtaW5wdXRcbiAqL1xuXG5leHBvcnQgKiBmcm9tICcuL2xpYi9uZ3gtaW50bC10ZWwtaW5wdXQuc2VydmljZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9uZ3gtaW50bC10ZWwtaW5wdXQuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL25neC1pbnRsLXRlbC1pbnB1dC5tb2R1bGUnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvZW51bXMvY291bnRyeS1pc28uZW51bSc7XG4iXX0=
export { SearchCountryField } from './lib/enums/search-country-field.enum';
export { TooltipLabel } from './lib/enums/tooltip-label.enum';
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljX2FwaS5qcyIsInNvdXJjZVJvb3QiOiJuZzovL25neC1pbnRsLXRlbC1pbnB1dC8iLCJzb3VyY2VzIjpbInB1YmxpY19hcGkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7OztBQUlBLHVDQUFjLGtDQUFrQyxDQUFDO0FBQ2pELHlDQUFjLG9DQUFvQyxDQUFDO0FBQ25ELHNDQUFjLGlDQUFpQyxDQUFDO0FBQ2hELDJCQUFjLDhCQUE4QixDQUFDO0FBQzdDLG1DQUFjLHVDQUF1QyxDQUFDO0FBQ3RELDZCQUFjLGdDQUFnQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLypcbiAqIFB1YmxpYyBBUEkgU3VyZmFjZSBvZiBuZ3gtaW50bC10ZWwtaW5wdXRcbiAqL1xuXG5leHBvcnQgKiBmcm9tICcuL2xpYi9uZ3gtaW50bC10ZWwtaW5wdXQuc2VydmljZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9uZ3gtaW50bC10ZWwtaW5wdXQuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL25neC1pbnRsLXRlbC1pbnB1dC5tb2R1bGUnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvZW51bXMvY291bnRyeS1pc28uZW51bSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9lbnVtcy9zZWFyY2gtY291bnRyeS1maWVsZC5lbnVtJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2VudW1zL3Rvb2x0aXAtbGFiZWwuZW51bSc7XG4iXX0=

@@ -1583,2 +1583,24 @@ import { PhoneNumberUtil, PhoneNumberFormat } from 'google-libphonenumber';

*/
/** @enum {string} */
const SearchCountryField = {
DialCode: 'dialCode',
Iso2: 'iso2',
Name: 'name',
All: 'all',
};
/**
* @fileoverview added by tsickle
* @suppress {checkTypes,extraRequire,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
*/
/** @enum {string} */
const TooltipLabel = {
Name: 'name',
Iso2: 'iso2',
};
/**
* @fileoverview added by tsickle
* @suppress {checkTypes,extraRequire,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
*/
const ɵ0 = phoneNumberValidator;

@@ -1598,3 +1620,3 @@ class NgxIntlTelInputComponent {

this.searchCountryFlag = false;
this.searchCountryField = ["all" /* All */];
this.searchCountryField = [SearchCountryField.All];
this.maxLength = '';

@@ -1701,3 +1723,3 @@ this.selectFirstCountry = true;

const country = this.allCountries.filter(c => {
if (this.searchCountryField.indexOf("all" /* All */) > -1) {
if (this.searchCountryField.indexOf(SearchCountryField.All) > -1) {
// Search in all fields

@@ -1716,3 +1738,3 @@ if (c.iso2.toLowerCase().startsWith(countrySearchTextLower)) {

// Or search by specific SearchCountryField(s)
if (this.searchCountryField.indexOf("iso2" /* Iso2 */) > -1) {
if (this.searchCountryField.indexOf(SearchCountryField.Iso2) > -1) {
if (c.iso2.toLowerCase().startsWith(countrySearchTextLower)) {

@@ -1722,3 +1744,3 @@ return c;

}
if (this.searchCountryField.indexOf("name" /* Name */) > -1) {
if (this.searchCountryField.indexOf(SearchCountryField.Name) > -1) {
if (c.name.toLowerCase().startsWith(countrySearchTextLower)) {

@@ -1728,3 +1750,3 @@ return c;

}
if (this.searchCountryField.indexOf("dialCode" /* DialCode */) > -1) {
if (this.searchCountryField.indexOf(SearchCountryField.DialCode) > -1) {
if (c.dialCode.startsWith(this.countrySearchText)) {

@@ -2017,4 +2039,4 @@ return c;

export { NgxIntlTelInputService, NgxIntlTelInputComponent, NgxIntlTelInputModule, CountryISO, CountryCode as ɵa, phoneNumberValidator as ɵb };
export { NgxIntlTelInputService, NgxIntlTelInputComponent, NgxIntlTelInputModule, CountryISO, SearchCountryField, TooltipLabel, CountryCode as ɵa, phoneNumberValidator as ɵb };
//# sourceMappingURL=ngx-intl-tel-input.js.map
import { PhoneNumberUtil, PhoneNumberFormat } from 'google-libphonenumber';
import { Injectable, Component, forwardRef, Input, ViewChild, NgModule, defineInjectable } from '@angular/core';
import { Injectable, NgModule, Component, forwardRef, Input, ViewChild, defineInjectable } from '@angular/core';
import { CommonModule } from '@angular/common';

@@ -1586,2 +1586,24 @@ import { BsDropdownModule, TooltipModule } from 'ngx-bootstrap';

*/
/** @enum {string} */
var SearchCountryField = {
DialCode: 'dialCode',
Iso2: 'iso2',
Name: 'name',
All: 'all',
};
/**
* @fileoverview added by tsickle
* @suppress {checkTypes,extraRequire,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
*/
/** @enum {string} */
var TooltipLabel = {
Name: 'name',
Iso2: 'iso2',
};
/**
* @fileoverview added by tsickle
* @suppress {checkTypes,extraRequire,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
*/
var ɵ0 = phoneNumberValidator;

@@ -1598,3 +1620,3 @@ var NgxIntlTelInputComponent = /** @class */ (function () {

this.searchCountryFlag = false;
this.searchCountryField = ["all" /* All */];
this.searchCountryField = [SearchCountryField.All];
this.maxLength = '';

@@ -1725,3 +1747,3 @@ this.selectFirstCountry = true;

var country = this.allCountries.filter(function (c) {
if (_this.searchCountryField.indexOf("all" /* All */) > -1) {
if (_this.searchCountryField.indexOf(SearchCountryField.All) > -1) {
// Search in all fields

@@ -1740,3 +1762,3 @@ if (c.iso2.toLowerCase().startsWith(countrySearchTextLower)) {

// Or search by specific SearchCountryField(s)
if (_this.searchCountryField.indexOf("iso2" /* Iso2 */) > -1) {
if (_this.searchCountryField.indexOf(SearchCountryField.Iso2) > -1) {
if (c.iso2.toLowerCase().startsWith(countrySearchTextLower)) {

@@ -1746,3 +1768,3 @@ return c;

}
if (_this.searchCountryField.indexOf("name" /* Name */) > -1) {
if (_this.searchCountryField.indexOf(SearchCountryField.Name) > -1) {
if (c.name.toLowerCase().startsWith(countrySearchTextLower)) {

@@ -1752,3 +1774,3 @@ return c;

}
if (_this.searchCountryField.indexOf("dialCode" /* DialCode */) > -1) {
if (_this.searchCountryField.indexOf(SearchCountryField.DialCode) > -1) {
if (c.dialCode.startsWith(_this.countrySearchText)) {

@@ -2093,4 +2115,4 @@ return c;

export { NgxIntlTelInputService, NgxIntlTelInputComponent, NgxIntlTelInputModule, CountryISO, CountryCode as ɵa, phoneNumberValidator as ɵb };
export { NgxIntlTelInputService, NgxIntlTelInputComponent, NgxIntlTelInputModule, CountryISO, SearchCountryField, TooltipLabel, CountryCode as ɵa, phoneNumberValidator as ɵb };
//# sourceMappingURL=ngx-intl-tel-input.js.map

@@ -1,2 +0,2 @@

export declare const enum SearchCountryField {
export declare enum SearchCountryField {
DialCode = "dialCode",

@@ -3,0 +3,0 @@ Iso2 = "iso2",

@@ -1,4 +0,4 @@

export declare const enum TooltipLabel {
export declare enum TooltipLabel {
Name = "name",
Iso2 = "iso2"
}

@@ -1,1 +0,1 @@

{"__symbolic":"module","version":4,"metadata":{"NgxIntlTelInputService":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable","line":2,"character":1},"arguments":[{"providedIn":"root"}]}],"members":{"__ctor__":[{"__symbolic":"constructor"}]},"statics":{"ngInjectableDef":{}}},"NgxIntlTelInputComponent":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":10,"character":1},"arguments":[{"selector":"ngx-intl-tel-input","providers":[{"__symbolic":"reference","name":"ɵa"},{"provide":{"__symbolic":"reference","module":"@angular/forms","name":"NG_VALUE_ACCESSOR","line":17,"character":12},"useExisting":{"__symbolic":"reference","name":"NgxIntlTelInputComponent"},"multi":true},{"provide":{"__symbolic":"reference","module":"@angular/forms","name":"NG_VALIDATORS","line":23,"character":12},"useValue":{"__symbolic":"reference","name":"ɵb"},"multi":true}],"template":"<div class=\"intl-tel-input allow-dropdown\">\n <div class=\"flag-container\" dropdown [ngClass]=\"{'disabled': disabled}\">\n <div class=\"selected-flag dropdown-toggle\" dropdownToggle>\n <div class=\"iti-flag\" [ngClass]=\"selectedCountry?.flagClass\"\n [tooltip]=\"selectedCountry ? selectedCountry[tooltipField] : ''\"></div>\n <div class=\"iti-arrow\"></div>\n </div>\n <div *dropdownMenu class=\"dropdown-menu country-dropdown\">\n <div class=\"search-container\" *ngIf=\"searchCountryFlag && searchCountryField\">\n <input id=\"country-search-box\" [(ngModel)]=\"countrySearchText\" (keyup)=\"searchCountry()\"\n (click)=\"$event.stopPropagation()\" autofocus>\n </div>\n <ul class=\"country-list\" #countryList>\n <li class=\"country\" *ngFor=\"let country of preferredCountriesInDropDown\"\n (click)=\"onCountrySelect(country, focusable)\" [id]=\"country.iso2\">\n <div class=\"flag-box\">\n <div class=\"iti-flag\" [ngClass]=\"country.flagClass\"></div>\n </div>\n <span class=\"country-name\">{{country.name}}</span>\n <span class=\"dial-code\">+{{country.dialCode}}</span>\n </li>\n <li class=\"divider\" *ngIf=\"preferredCountriesInDropDown?.length\"></li>\n <li class=\"country\" *ngFor=\"let country of allCountries\" (click)=\"onCountrySelect(country, focusable)\"\n [id]=\"country.iso2\">\n <div class=\"flag-box\">\n <div class=\"iti-flag\" [ngClass]=\"country.flagClass\"></div>\n </div>\n <span class=\"country-name\">{{country.name}}</span>\n <span class=\"dial-code\">+{{country.dialCode}}</span>\n </li>\n </ul>\n </div>\n </div>\n <input type=\"tel\" id=\"phone\" autocomplete=\"off\" [ngClass]=\"cssClass\" (blur)=\"onTouched()\"\n (keypress)=\"onInputKeyPress($event)\" [(ngModel)]=\"phoneNumber\" (ngModelChange)=\"onPhoneNumberChange()\"\n [disabled]=\"disabled\" [placeholder]=\"selectedCountry?.placeHolder || ''\" [attr.maxLength]=\"maxLength\"\n [attr.validation]=\"phoneValidation\" #focusable>\n</div>","styles":["li.country:hover{background-color:rgba(0,0,0,.05)}.selected-flag.dropdown-toggle:after{content:none}.flag-container.disabled{cursor:default!important}.intl-tel-input.allow-dropdown .flag-container.disabled:hover .selected-flag{background:0 0}.country-dropdown{border:1px solid #ccc;width:-webkit-fit-content;width:-moz-fit-content;width:fit-content;padding:1px;border-collapse:collapse}.search-container{position:relative}.search-container input{width:100%;border:none;border-bottom:1px solid #ccc;padding-left:10px}.search-icon{position:absolute;z-index:2;width:25px;margin:1px 10px}.country-list{position:relative;border:none}"]}]}],"members":{"value":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":31,"character":2}}]}],"preferredCountries":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":32,"character":2}}]}],"enablePlaceholder":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":33,"character":2}}]}],"cssClass":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":34,"character":2}}]}],"onlyCountries":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":35,"character":2}}]}],"enableAutoCountrySelect":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":36,"character":2}}]}],"searchCountryFlag":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":37,"character":2}}]}],"searchCountryField":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":38,"character":2}}]}],"maxLength":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":39,"character":2}}]}],"tooltipField":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":40,"character":2}}]}],"selectFirstCountry":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":41,"character":2}}]}],"selectedCountryISO":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":42,"character":2}}]}],"phoneValidation":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":43,"character":2}}]}],"countryList":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"ViewChild","line":63,"character":2},"arguments":["countryList"]}]}],"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"ɵa"}]}],"ngOnInit":[{"__symbolic":"method"}],"ngOnChanges":[{"__symbolic":"method"}],"getPreferredCountries":[{"__symbolic":"method"}],"getSelectedCountry":[{"__symbolic":"method"}],"searchCountry":[{"__symbolic":"method"}],"onPhoneNumberChange":[{"__symbolic":"method"}],"onCountrySelect":[{"__symbolic":"method"}],"onInputKeyPress":[{"__symbolic":"method"}],"fetchCountryData":[{"__symbolic":"method"}],"getPhoneNumberPlaceHolder":[{"__symbolic":"method"}],"registerOnChange":[{"__symbolic":"method"}],"registerOnTouched":[{"__symbolic":"method"}],"setDisabledState":[{"__symbolic":"method"}],"writeValue":[{"__symbolic":"method"}],"getCountryIsoCode":[{"__symbolic":"method"}]}},"NgxIntlTelInputModule":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"NgModule","line":7,"character":1},"arguments":[{"declarations":[{"__symbolic":"reference","name":"NgxIntlTelInputComponent"}],"imports":[{"__symbolic":"reference","module":"@angular/common","name":"CommonModule","line":10,"character":2},{"__symbolic":"reference","module":"@angular/forms","name":"FormsModule","line":11,"character":2},{"__symbolic":"reference","module":"@angular/forms","name":"ReactiveFormsModule","line":12,"character":2},{"__symbolic":"call","expression":{"__symbolic":"select","expression":{"__symbolic":"reference","module":"ngx-bootstrap","name":"BsDropdownModule","line":13,"character":2},"member":"forRoot"}},{"__symbolic":"call","expression":{"__symbolic":"select","expression":{"__symbolic":"reference","module":"ngx-bootstrap","name":"TooltipModule","line":14,"character":2},"member":"forRoot"}}],"exports":[{"__symbolic":"reference","name":"NgxIntlTelInputComponent"}]}]}],"members":{},"statics":{"forRoot":{"__symbolic":"function","parameters":[],"value":{"ngModule":{"__symbolic":"reference","name":"NgxIntlTelInputModule"},"providers":[{"__symbolic":"reference","name":"NgxIntlTelInputService"}]}}}},"CountryISO":{"Afghanistan":"af","Albania":"al","Algeria":"dz","AmericanSamoa":"as","Andorra":"ad","Angola":"ao","Anguilla":"ai","AntiguaAndBarbuda":"ag","Argentina":"ar","Armenia":"am","Aruba":"aw","Australia":"au","Austria":"at","Azerbaijan":"az","Bahamas":"bs","Bahrain":"bh","Bangladesh":"bd","Barbados":"bb","Belarus":"by","Belgium":"be","Belize":"bz","Benin":"bj","Bermuda":"bm","Bhutan":"bt","Bolivia":"bo","BosniaAndHerzegovina":"ba","Botswana":"bw","Brazil":"br","BritishIndianOceanTerritory":"io","BritishVirginIslands":"vg","Brunei":"bn","Bulgaria":"bg","BurkinaFaso":"bf","Burundi":"bi","Cambodia":"kh","Cameroon":"cm","Canada":"ca","CapeVerde":"cv","CaribbeanNetherlands":"bq","CaymanIslands":"ky","CentralAfricanRepublic":"cf","Chad":"td","Chile":"cl","China":"cn","ChristmasIsland":"cx","Cocos":"cc","Colombia":"co","Comoros":"km","CongoDRCJamhuriYaKidemokrasiaYaKongo":"cd","CongoRepublicCongoBrazzaville":"cg","CookIslands":"ck","CostaRica":"cr","CôteDIvoire":"ci","Croatia":"hr","Cuba":"cu","Curaçao":"cw","Cyprus":"cy","CzechRepublic":"cz","Denmark":"dk","Djibouti":"dj","Dominica":"dm","DominicanRepublic":"do","Ecuador":"ec","Egypt":"eg","ElSalvador":"sv","EquatorialGuinea":"gq","Eritrea":"er","Estonia":"ee","Ethiopia":"et","FalklandIslands":"fk","FaroeIslands":"fo","Fiji":"fj","Finland":"fi","France":"fr","FrenchGuiana":"gf","FrenchPolynesia":"pf","Gabon":"ga","Gambia":"gm","Georgia":"ge","Germany":"de","Ghana":"gh","Gibraltar":"gi","Greece":"gr","Greenland":"gl","Grenada":"gd","Guadeloupe":"gp","Guam":"gu","Guatemala":"gt","Guernsey":"gg","Guinea":"gn","GuineaBissau":"gw","Guyana":"gy","Haiti":"ht","Honduras":"hn","HongKong":"hk","Hungary":"hu","Iceland":"is","India":"in","Indonesia":"id","Iran":"ir","Iraq":"iq","Ireland":"ie","IsleOfMan":"im","Israel":"il","Italy":"it","Jamaica":"jm","Japan":"jp","Jersey":"je","Jordan":"jo","Kazakhstan":"kz","Kenya":"ke","Kiribati":"ki","Kosovo":"xk","Kuwait":"kw","Kyrgyzstan":"kg","Laos":"la","Latvia":"lv","Lebanon":"lb","Lesotho":"ls","Liberia":"lr","Libya":"ly","Liechtenstein":"li","Lithuania":"lt","Luxembourg":"lu","Macau":"mo","Macedonia":"mk","Madagascar":"mg","Malawi":"mw","Malaysia":"my","Maldives":"mv","Mali":"ml","Malta":"mt","MarshallIslands":"mh","Martinique":"mq","Mauritania":"mr","Mauritius":"mu","Mayotte":"yt","Mexico":"mx","Micronesia":"fm","Moldova":"md","Monaco":"mc","Mongolia":"mn","Montenegro":"me","Montserrat":"ms","Morocco":"ma","Mozambique":"mz","Myanmar":"mm","Namibia":"na","Nauru":"nr","Nepal":"np","Netherlands":"nl","NewCaledonia":"nc","NewZealand":"nz","Nicaragua":"ni","Niger":"ne","Nigeria":"ng","Niue":"nu","NorfolkIsland":"nf","NorthKorea":"kp","NorthernMarianaIslands":"mp","Norway":"no","Oman":"om","Pakistan":"pk","Palau":"pw","Palestine":"ps","Panama":"pa","PapuaNewGuinea":"pg","Paraguay":"py","Peru":"pe","Philippines":"ph","Poland":"pl","Portugal":"pt","PuertoRico":"pr","Qatar":"qa","Réunion":"re","Romania":"ro","Russia":"ru","Rwanda":"rw","SaintBarthélemy":"bl","SaintHelena":"sh","SaintKittsAndNevis":"kn","SaintLucia":"lc","SaintMartin":"mf","SaintPierreAndMiquelon":"pm","SaintVincentAndTheGrenadines":"vc","Samoa":"ws","SanMarino":"sm","SãoToméAndPríncipe":"st","SaudiArabia":"sa","Senegal":"sn","Serbia":"rs","Seychelles":"sc","SierraLeone":"sl","Singapore":"sg","SintMaarten":"sx","Slovakia":"sk","Slovenia":"si","SolomonIslands":"sb","Somalia":"so","SouthAfrica":"za","SouthKorea":"kr","SouthSudan":"ss","Spain":"es","SriLanka":"lk","Sudan":"sd","Suriname":"sr","SvalbardAndJanMayen":"sj","Swaziland":"sz","Sweden":"se","Switzerland":"ch","Syria":"sy","Taiwan":"tw","Tajikistan":"tj","Tanzania":"tz","Thailand":"th","TimorLeste":"tl","Togo":"tg","Tokelau":"tk","Tonga":"to","TrinidadAndTobago":"tt","Tunisia":"tn","Turkey":"tr","Turkmenistan":"tm","TurksAndCaicosIslands":"tc","Tuvalu":"tv","USVirginIslands":"vi","Uganda":"ug","Ukraine":"ua","UnitedArabEmirates":"ae","UnitedKingdom":"gb","UnitedStates":"us","Uruguay":"uy","Uzbekistan":"uz","Vanuatu":"vu","VaticanCity":"va","Venezuela":"ve","Vietnam":"vn","WallisAndFutuna":"wf","WesternSahara":"eh","Yemen":"ye","Zambia":"zm","Zimbabwe":"zw","ÅlandIslands":"ax"},"ɵa":{"__symbolic":"class","members":{}},"ɵb":{"__symbolic":"error","message":"Lambda not supported","line":3,"character":36,"module":"./lib/ngx-intl-tel-input.validator"}},"origins":{"NgxIntlTelInputService":"./lib/ngx-intl-tel-input.service","NgxIntlTelInputComponent":"./lib/ngx-intl-tel-input.component","NgxIntlTelInputModule":"./lib/ngx-intl-tel-input.module","CountryISO":"./lib/enums/country-iso.enum","ɵa":"./lib/data/country-code","ɵb":"./lib/ngx-intl-tel-input.validator"},"importAs":"ngx-intl-tel-input"}
{"__symbolic":"module","version":4,"metadata":{"NgxIntlTelInputService":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable","line":2,"character":1},"arguments":[{"providedIn":"root"}]}],"members":{"__ctor__":[{"__symbolic":"constructor"}]},"statics":{"ngInjectableDef":{}}},"NgxIntlTelInputComponent":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":10,"character":1},"arguments":[{"selector":"ngx-intl-tel-input","providers":[{"__symbolic":"reference","name":"ɵa"},{"provide":{"__symbolic":"reference","module":"@angular/forms","name":"NG_VALUE_ACCESSOR","line":17,"character":12},"useExisting":{"__symbolic":"reference","name":"NgxIntlTelInputComponent"},"multi":true},{"provide":{"__symbolic":"reference","module":"@angular/forms","name":"NG_VALIDATORS","line":23,"character":12},"useValue":{"__symbolic":"reference","name":"ɵb"},"multi":true}],"template":"<div class=\"intl-tel-input allow-dropdown\">\n <div class=\"flag-container\" dropdown [ngClass]=\"{'disabled': disabled}\">\n <div class=\"selected-flag dropdown-toggle\" dropdownToggle>\n <div class=\"iti-flag\" [ngClass]=\"selectedCountry?.flagClass\"\n [tooltip]=\"selectedCountry ? selectedCountry[tooltipField] : ''\"></div>\n <div class=\"iti-arrow\"></div>\n </div>\n <div *dropdownMenu class=\"dropdown-menu country-dropdown\">\n <div class=\"search-container\" *ngIf=\"searchCountryFlag && searchCountryField\">\n <input id=\"country-search-box\" [(ngModel)]=\"countrySearchText\" (keyup)=\"searchCountry()\"\n (click)=\"$event.stopPropagation()\" autofocus>\n </div>\n <ul class=\"country-list\" #countryList>\n <li class=\"country\" *ngFor=\"let country of preferredCountriesInDropDown\"\n (click)=\"onCountrySelect(country, focusable)\" [id]=\"country.iso2\">\n <div class=\"flag-box\">\n <div class=\"iti-flag\" [ngClass]=\"country.flagClass\"></div>\n </div>\n <span class=\"country-name\">{{country.name}}</span>\n <span class=\"dial-code\">+{{country.dialCode}}</span>\n </li>\n <li class=\"divider\" *ngIf=\"preferredCountriesInDropDown?.length\"></li>\n <li class=\"country\" *ngFor=\"let country of allCountries\" (click)=\"onCountrySelect(country, focusable)\"\n [id]=\"country.iso2\">\n <div class=\"flag-box\">\n <div class=\"iti-flag\" [ngClass]=\"country.flagClass\"></div>\n </div>\n <span class=\"country-name\">{{country.name}}</span>\n <span class=\"dial-code\">+{{country.dialCode}}</span>\n </li>\n </ul>\n </div>\n </div>\n <input type=\"tel\" id=\"phone\" autocomplete=\"off\" [ngClass]=\"cssClass\" (blur)=\"onTouched()\"\n (keypress)=\"onInputKeyPress($event)\" [(ngModel)]=\"phoneNumber\" (ngModelChange)=\"onPhoneNumberChange()\"\n [disabled]=\"disabled\" [placeholder]=\"selectedCountry?.placeHolder || ''\" [attr.maxLength]=\"maxLength\"\n [attr.validation]=\"phoneValidation\" #focusable>\n</div>","styles":["li.country:hover{background-color:rgba(0,0,0,.05)}.selected-flag.dropdown-toggle:after{content:none}.flag-container.disabled{cursor:default!important}.intl-tel-input.allow-dropdown .flag-container.disabled:hover .selected-flag{background:0 0}.country-dropdown{border:1px solid #ccc;width:-webkit-fit-content;width:-moz-fit-content;width:fit-content;padding:1px;border-collapse:collapse}.search-container{position:relative}.search-container input{width:100%;border:none;border-bottom:1px solid #ccc;padding-left:10px}.search-icon{position:absolute;z-index:2;width:25px;margin:1px 10px}.country-list{position:relative;border:none}"]}]}],"members":{"value":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":31,"character":2}}]}],"preferredCountries":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":32,"character":2}}]}],"enablePlaceholder":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":33,"character":2}}]}],"cssClass":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":34,"character":2}}]}],"onlyCountries":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":35,"character":2}}]}],"enableAutoCountrySelect":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":36,"character":2}}]}],"searchCountryFlag":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":37,"character":2}}]}],"searchCountryField":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":38,"character":2}}]}],"maxLength":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":39,"character":2}}]}],"tooltipField":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":40,"character":2}}]}],"selectFirstCountry":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":41,"character":2}}]}],"selectedCountryISO":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":42,"character":2}}]}],"phoneValidation":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":43,"character":2}}]}],"countryList":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"ViewChild","line":63,"character":2},"arguments":["countryList"]}]}],"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"ɵa"}]}],"ngOnInit":[{"__symbolic":"method"}],"ngOnChanges":[{"__symbolic":"method"}],"getPreferredCountries":[{"__symbolic":"method"}],"getSelectedCountry":[{"__symbolic":"method"}],"searchCountry":[{"__symbolic":"method"}],"onPhoneNumberChange":[{"__symbolic":"method"}],"onCountrySelect":[{"__symbolic":"method"}],"onInputKeyPress":[{"__symbolic":"method"}],"fetchCountryData":[{"__symbolic":"method"}],"getPhoneNumberPlaceHolder":[{"__symbolic":"method"}],"registerOnChange":[{"__symbolic":"method"}],"registerOnTouched":[{"__symbolic":"method"}],"setDisabledState":[{"__symbolic":"method"}],"writeValue":[{"__symbolic":"method"}],"getCountryIsoCode":[{"__symbolic":"method"}]}},"NgxIntlTelInputModule":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"NgModule","line":7,"character":1},"arguments":[{"declarations":[{"__symbolic":"reference","name":"NgxIntlTelInputComponent"}],"imports":[{"__symbolic":"reference","module":"@angular/common","name":"CommonModule","line":10,"character":2},{"__symbolic":"reference","module":"@angular/forms","name":"FormsModule","line":11,"character":2},{"__symbolic":"reference","module":"@angular/forms","name":"ReactiveFormsModule","line":12,"character":2},{"__symbolic":"call","expression":{"__symbolic":"select","expression":{"__symbolic":"reference","module":"ngx-bootstrap","name":"BsDropdownModule","line":13,"character":2},"member":"forRoot"}},{"__symbolic":"call","expression":{"__symbolic":"select","expression":{"__symbolic":"reference","module":"ngx-bootstrap","name":"TooltipModule","line":14,"character":2},"member":"forRoot"}}],"exports":[{"__symbolic":"reference","name":"NgxIntlTelInputComponent"}]}]}],"members":{},"statics":{"forRoot":{"__symbolic":"function","parameters":[],"value":{"ngModule":{"__symbolic":"reference","name":"NgxIntlTelInputModule"},"providers":[{"__symbolic":"reference","name":"NgxIntlTelInputService"}]}}}},"CountryISO":{"Afghanistan":"af","Albania":"al","Algeria":"dz","AmericanSamoa":"as","Andorra":"ad","Angola":"ao","Anguilla":"ai","AntiguaAndBarbuda":"ag","Argentina":"ar","Armenia":"am","Aruba":"aw","Australia":"au","Austria":"at","Azerbaijan":"az","Bahamas":"bs","Bahrain":"bh","Bangladesh":"bd","Barbados":"bb","Belarus":"by","Belgium":"be","Belize":"bz","Benin":"bj","Bermuda":"bm","Bhutan":"bt","Bolivia":"bo","BosniaAndHerzegovina":"ba","Botswana":"bw","Brazil":"br","BritishIndianOceanTerritory":"io","BritishVirginIslands":"vg","Brunei":"bn","Bulgaria":"bg","BurkinaFaso":"bf","Burundi":"bi","Cambodia":"kh","Cameroon":"cm","Canada":"ca","CapeVerde":"cv","CaribbeanNetherlands":"bq","CaymanIslands":"ky","CentralAfricanRepublic":"cf","Chad":"td","Chile":"cl","China":"cn","ChristmasIsland":"cx","Cocos":"cc","Colombia":"co","Comoros":"km","CongoDRCJamhuriYaKidemokrasiaYaKongo":"cd","CongoRepublicCongoBrazzaville":"cg","CookIslands":"ck","CostaRica":"cr","CôteDIvoire":"ci","Croatia":"hr","Cuba":"cu","Curaçao":"cw","Cyprus":"cy","CzechRepublic":"cz","Denmark":"dk","Djibouti":"dj","Dominica":"dm","DominicanRepublic":"do","Ecuador":"ec","Egypt":"eg","ElSalvador":"sv","EquatorialGuinea":"gq","Eritrea":"er","Estonia":"ee","Ethiopia":"et","FalklandIslands":"fk","FaroeIslands":"fo","Fiji":"fj","Finland":"fi","France":"fr","FrenchGuiana":"gf","FrenchPolynesia":"pf","Gabon":"ga","Gambia":"gm","Georgia":"ge","Germany":"de","Ghana":"gh","Gibraltar":"gi","Greece":"gr","Greenland":"gl","Grenada":"gd","Guadeloupe":"gp","Guam":"gu","Guatemala":"gt","Guernsey":"gg","Guinea":"gn","GuineaBissau":"gw","Guyana":"gy","Haiti":"ht","Honduras":"hn","HongKong":"hk","Hungary":"hu","Iceland":"is","India":"in","Indonesia":"id","Iran":"ir","Iraq":"iq","Ireland":"ie","IsleOfMan":"im","Israel":"il","Italy":"it","Jamaica":"jm","Japan":"jp","Jersey":"je","Jordan":"jo","Kazakhstan":"kz","Kenya":"ke","Kiribati":"ki","Kosovo":"xk","Kuwait":"kw","Kyrgyzstan":"kg","Laos":"la","Latvia":"lv","Lebanon":"lb","Lesotho":"ls","Liberia":"lr","Libya":"ly","Liechtenstein":"li","Lithuania":"lt","Luxembourg":"lu","Macau":"mo","Macedonia":"mk","Madagascar":"mg","Malawi":"mw","Malaysia":"my","Maldives":"mv","Mali":"ml","Malta":"mt","MarshallIslands":"mh","Martinique":"mq","Mauritania":"mr","Mauritius":"mu","Mayotte":"yt","Mexico":"mx","Micronesia":"fm","Moldova":"md","Monaco":"mc","Mongolia":"mn","Montenegro":"me","Montserrat":"ms","Morocco":"ma","Mozambique":"mz","Myanmar":"mm","Namibia":"na","Nauru":"nr","Nepal":"np","Netherlands":"nl","NewCaledonia":"nc","NewZealand":"nz","Nicaragua":"ni","Niger":"ne","Nigeria":"ng","Niue":"nu","NorfolkIsland":"nf","NorthKorea":"kp","NorthernMarianaIslands":"mp","Norway":"no","Oman":"om","Pakistan":"pk","Palau":"pw","Palestine":"ps","Panama":"pa","PapuaNewGuinea":"pg","Paraguay":"py","Peru":"pe","Philippines":"ph","Poland":"pl","Portugal":"pt","PuertoRico":"pr","Qatar":"qa","Réunion":"re","Romania":"ro","Russia":"ru","Rwanda":"rw","SaintBarthélemy":"bl","SaintHelena":"sh","SaintKittsAndNevis":"kn","SaintLucia":"lc","SaintMartin":"mf","SaintPierreAndMiquelon":"pm","SaintVincentAndTheGrenadines":"vc","Samoa":"ws","SanMarino":"sm","SãoToméAndPríncipe":"st","SaudiArabia":"sa","Senegal":"sn","Serbia":"rs","Seychelles":"sc","SierraLeone":"sl","Singapore":"sg","SintMaarten":"sx","Slovakia":"sk","Slovenia":"si","SolomonIslands":"sb","Somalia":"so","SouthAfrica":"za","SouthKorea":"kr","SouthSudan":"ss","Spain":"es","SriLanka":"lk","Sudan":"sd","Suriname":"sr","SvalbardAndJanMayen":"sj","Swaziland":"sz","Sweden":"se","Switzerland":"ch","Syria":"sy","Taiwan":"tw","Tajikistan":"tj","Tanzania":"tz","Thailand":"th","TimorLeste":"tl","Togo":"tg","Tokelau":"tk","Tonga":"to","TrinidadAndTobago":"tt","Tunisia":"tn","Turkey":"tr","Turkmenistan":"tm","TurksAndCaicosIslands":"tc","Tuvalu":"tv","USVirginIslands":"vi","Uganda":"ug","Ukraine":"ua","UnitedArabEmirates":"ae","UnitedKingdom":"gb","UnitedStates":"us","Uruguay":"uy","Uzbekistan":"uz","Vanuatu":"vu","VaticanCity":"va","Venezuela":"ve","Vietnam":"vn","WallisAndFutuna":"wf","WesternSahara":"eh","Yemen":"ye","Zambia":"zm","Zimbabwe":"zw","ÅlandIslands":"ax"},"SearchCountryField":{"DialCode":"dialCode","Iso2":"iso2","Name":"name","All":"all"},"TooltipLabel":{"Name":"name","Iso2":"iso2"},"ɵa":{"__symbolic":"class","members":{}},"ɵb":{"__symbolic":"error","message":"Lambda not supported","line":3,"character":36,"module":"./lib/ngx-intl-tel-input.validator"}},"origins":{"NgxIntlTelInputService":"./lib/ngx-intl-tel-input.service","NgxIntlTelInputComponent":"./lib/ngx-intl-tel-input.component","NgxIntlTelInputModule":"./lib/ngx-intl-tel-input.module","CountryISO":"./lib/enums/country-iso.enum","SearchCountryField":"./lib/enums/search-country-field.enum","TooltipLabel":"./lib/enums/tooltip-label.enum","ɵa":"./lib/data/country-code","ɵb":"./lib/ngx-intl-tel-input.validator"},"importAs":"ngx-intl-tel-input"}
{
"name": "ngx-intl-tel-input",
"version": "2.2.0",
"version": "2.2.1",
"peerDependencies": {

@@ -5,0 +5,0 @@ "@angular/common": "^7.1.0",

@@ -5,1 +5,3 @@ export * from './lib/ngx-intl-tel-input.service';

export * from './lib/enums/country-iso.enum';
export * from './lib/enums/search-country-field.enum';
export * from './lib/enums/tooltip-label.enum';

@@ -74,18 +74,17 @@ # International Telephone Input for Angular (NgxIntlTelInput)

<form #f="ngForm" [formGroup]="phoneForm">
<ngx-intl-tel-input
[cssClass]="'custom'"
[preferredCountries]="preferredCountries"
[onlyCountries]="['us', 'gb', 'es']"
[enableAutoCountrySelect]="true"
[enablePlaceholder]="true"
[searchCountryFlag]="true"
[searchCountryField]="['iso2','name']'"
[selectFirstCountry]="true"
[selectedCountryISO]=""
[maxLength]="20"
[tooltipField]="'name'"
[phoneValidation]="true"
name="phone"
formControlName="phone"></ngx-intl-tel-input>
</form>
<ngx-intl-tel-input
[cssClass]="'custom'"
[preferredCountries]="[CountryISO.UnitedStates, CountryISO.UnitedKingdom]"
[enableAutoCountrySelect]="false"
[enablePlaceholder]="true"
[searchCountryFlag]="true"
[searchCountryField]="[SearchCountryField.Iso2, SearchCountryField.Name]"
[selectFirstCountry]="false"
[selectedCountryISO]="CountryISO.India"
[maxLength]="15"
[tooltipField]="TooltipLabel.Name"
[phoneValidation]="true"
name="phone"
formControlName="phone"></ngx-intl-tel-input>
</form>

@@ -92,0 +91,0 @@ ```

Sorry, the diff of this file is too big to display

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc