react-international-phone
Version:
☎️ International phone input component for React
1 lines • 37.4 kB
JavaScript
"use strict";function e(e,r){if(r==null||r>e.length)r=e.length;for(var t=0,n=new Array(r);t<r;t++)n[t]=e[t];return n}function r(e){if(Array.isArray(e))return e}function t(r){if(Array.isArray(r))return e(r)}function n(e,r,t){if(r in e){Object.defineProperty(e,r,{value:t,enumerable:true,configurable:true,writable:true})}else{e[r]=t}return e}function a(e){if(typeof Symbol!=="undefined"&&e[Symbol.iterator]!=null||e["@@iterator"]!=null)return Array.from(e)}function o(e,r){var t=e==null?null:typeof Symbol!=="undefined"&&e[Symbol.iterator]||e["@@iterator"];if(t==null)return;var n=[];var a=true;var o=false;var i,u;try{for(t=t.call(e);!(a=(i=t.next()).done);a=true){n.push(i.value);if(r&&n.length===r)break}}catch(e){o=true;u=e}finally{try{if(!a&&t["return"]!=null)t["return"]()}finally{if(o)throw u}}return n}function i(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function u(){throw new TypeError("Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function l(e){for(var r=1;r<arguments.length;r++){var t=arguments[r]!=null?arguments[r]:{};var a=Object.keys(t);if(typeof Object.getOwnPropertySymbols==="function"){a=a.concat(Object.getOwnPropertySymbols(t).filter(function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))}a.forEach(function(r){n(e,r,t[r])})}return e}function c(e,r){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);if(r){n=n.filter(function(r){return Object.getOwnPropertyDescriptor(e,r).enumerable})}t.push.apply(t,n)}return t}function s(e,r){r=r!=null?r:{};if(Object.getOwnPropertyDescriptors){Object.defineProperties(e,Object.getOwnPropertyDescriptors(r))}else{c(Object(r)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))})}return e}function d(e,r){if(e==null)return{};var t=f(e,r);var n,a;if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);for(a=0;a<o.length;a++){n=o[a];if(r.indexOf(n)>=0)continue;if(!Object.prototype.propertyIsEnumerable.call(e,n))continue;t[n]=e[n]}}return t}function f(e,r){if(e==null)return{};var t={};var n=Object.keys(e);var a,o;for(o=0;o<n.length;o++){a=n[o];if(r.indexOf(a)>=0)continue;t[a]=e[a]}return t}function v(e,t){return r(e)||o(e,t)||m(e,t)||i()}function p(e){return t(e)||a(e)||m(e)||u()}function y(e){"@swc/helpers - typeof";return e&&typeof Symbol!=="undefined"&&e.constructor===Symbol?"symbol":typeof e}function m(r,t){if(!r)return;if(typeof r==="string")return e(r,t);var n=Object.prototype.toString.call(r).slice(8,-1);if(n==="Object"&&r.constructor)n=r.constructor.name;if(n==="Map"||n==="Set")return Array.from(n);if(n==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return e(r,t)}var h=Object.create;var C=Object.defineProperty;var b=Object.getOwnPropertyDescriptor;var g=Object.getOwnPropertyNames;var w=Object.getPrototypeOf,D=Object.prototype.hasOwnProperty;var P=function(e,r){for(var t in r)C(e,t,{get:r[t],enumerable:!0})},S=function(e,r,t,n){var a=true,o=false,i=undefined;if(r&&typeof r=="object"||typeof r=="function")try{var u=function(){var a=c.value;!D.call(e,a)&&a!==t&&C(e,a,{get:function(){return r[a]},enumerable:!(n=b(r,a))||n.enumerable})};for(var l=g(r)[Symbol.iterator](),c;!(a=(c=l.next()).done);a=true)u()}catch(e){o=true;i=e}finally{try{if(!a&&l.return!=null){l.return()}}finally{if(o){throw i}}}return e};var k=function(e,r,t){return t=e!=null?h(w(e)):{},S(r||!e||!e.__esModule?C(t,"default",{value:e,enumerable:!0}):t,e)},x=function(e){return S(C({},"__esModule",{value:!0}),e)};var N={};P(N,{CountrySelector:function(){return eC},CountrySelectorDropdown:function(){return eh},DialCodePreview:function(){return eg},FlagImage:function(){return ep},PhoneInput:function(){return eD},buildCountryData:function(){return B},defaultCountries:function(){return E},getActiveFormattingMask:function(){return en},getCountry:function(){return ei},guessCountryByPartialPhoneNumber:function(){return eu},parseCountry:function(){return ea},removeDialCode:function(){return G},usePhoneInput:function(){return et}});module.exports=x(N);var A=k(require("react"));var E=[["Afghanistan","af","93"],["Albania","al","355"],["Algeria","dz","213"],["Andorra","ad","376"],["Angola","ao","244"],["Antigua and Barbuda","ag","1268"],["Argentina","ar","54",{default:"(..) .... ....","/^11/":"(..) .... ....","/^15/":"(..) ... ....","/^(2|3|4|5)/":"(.) .... ....","/^9/":"(.) .... ....."},0],["Armenia","am","374",".. ......"],["Aruba","aw","297"],["Australia","au","61",{default:". .... ....","/^4/":"... ... ...","/^5(?!50)/":"... ... ...","/^1(3|8)00/":".... ... ...","/^13/":".. .. ..","/^180/":"... ...."},0,[]],["Austria","at","43"],["Azerbaijan","az","994","(..) ... .. .."],["Bahamas","bs","1242"],["Bahrain","bh","973",".... ...."],["Bangladesh","bd","880"],["Barbados","bb","1246"],["Belarus","by","375","(..) ... .. .."],["Belgium","be","32","... .. .. .."],["Belize","bz","501"],["Benin","bj","229"],["Bhutan","bt","975"],["Bolivia","bo","591"],["Bosnia and Herzegovina","ba","387"],["Botswana","bw","267"],["Brazil","br","55","(..) .....-...."],["British Indian Ocean Territory","io","246"],["Brunei","bn","673"],["Bulgaria","bg","359"],["Burkina Faso","bf","226"],["Burundi","bi","257"],["Cambodia","kh","855"],["Cameroon","cm","237"],["Canada","ca","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","cv","238"],["Caribbean Netherlands","bq","599","",1],["Cayman Islands","ky","1","... ... ....",4,["345"]],["Central African Republic","cf","236"],["Chad","td","235"],["Chile","cl","56"],["China","cn","86","... .... ...."],["Colombia","co","57","... ... ...."],["Comoros","km","269"],["Congo","cd","243"],["Congo","cg","242"],["Costa Rica","cr","506","....-...."],["C\xf4te d'Ivoire","ci","225",".. .. .. .. .."],["Croatia","hr","385"],["Cuba","cu","53"],["Cura\xe7ao","cw","599","",0],["Cyprus","cy","357",".. ......"],["Czech Republic","cz","420","... ... ..."],["Denmark","dk","45",".. .. .. .."],["Djibouti","dj","253",".. .. ...."],["Dominica","dm","1767"],["Dominican Republic","do","1","(...) ...-....",2,["809","829","849"]],["Ecuador","ec","593"],["Egypt","eg","20"],["El Salvador","sv","503","....-...."],["Equatorial Guinea","gq","240"],["Eritrea","er","291"],["Estonia","ee","372",".... ......"],["Ethiopia","et","251",".. ... ...."],["Faroe Islands","fo","298",".. .. .."],["Fiji","fj","679"],["Finland","fi","358",".. ... .. .."],["France","fr","33",". .. .. .. .."],["French Guiana","gf","594","... .. .. .."],["French Polynesia","pf","689",{"/^44/":".. .. ..","/^80[0-5]/":"... .. .. ..",default:".. .. .. .."}],["Gabon","ga","241"],["Gambia","gm","220"],["Georgia","ge","995"],["Germany","de","49","... ........."],["Ghana","gh","233"],["Gibraltar","gi","350"],["Greece","gr","30"],["Greenland","gl","299",".. .. .."],["Grenada","gd","1473"],["Guadeloupe","gp","590","... .. .. ..",0],["Guam","gu","1671"],["Guatemala","gt","502","....-...."],["Guinea","gn","224"],["Guinea-Bissau","gw","245"],["Guyana","gy","592"],["Haiti","ht","509","....-...."],["Honduras","hn","504"],["Hong Kong","hk","852",".... ...."],["Hungary","hu","36"],["Iceland","is","354","... ...."],["India","in","91",".....-....."],["Indonesia","id","62"],["Iran","ir","98","... ... ...."],["Iraq","iq","964"],["Ireland","ie","353",".. ......."],["Israel","il","972","... ... ...."],["Italy","it","39","... .......",0],["Jamaica","jm","1876"],["Japan","jp","81",".. .... ...."],["Jordan","jo","962"],["Kazakhstan","kz","7","... ...-..-..",0],["Kenya","ke","254"],["Kiribati","ki","686"],["Kosovo","xk","383"],["Kuwait","kw","965",".... ...."],["Kyrgyzstan","kg","996","... ... ..."],["Laos","la","856"],["Latvia","lv","371",".. ... ..."],["Lebanon","lb","961"],["Lesotho","ls","266"],["Liberia","lr","231"],["Libya","ly","218"],["Liechtenstein","li","423"],["Lithuania","lt","370"],["Luxembourg","lu","352"],["Macau","mo","853"],["Macedonia","mk","389"],["Madagascar","mg","261"],["Malawi","mw","265"],["Malaysia","my","60","..-....-...."],["Maldives","mv","960"],["Mali","ml","223"],["Malta","mt","356"],["Marshall Islands","mh","692"],["Martinique","mq","596","... .. .. .."],["Mauritania","mr","222"],["Mauritius","mu","230"],["Mayotte","yt","262","... .. .. ..",1,["269","639"]],["Mexico","mx","52","... ... ....",0],["Micronesia","fm","691"],["Moldova","md","373","(..) ..-..-.."],["Monaco","mc","377"],["Mongolia","mn","976"],["Montenegro","me","382"],["Morocco","ma","212"],["Mozambique","mz","258"],["Myanmar","mm","95"],["Namibia","na","264"],["Nauru","nr","674"],["Nepal","np","977"],["Netherlands","nl","31",{"/^06/":"(.). .........","/^6/":". .........","/^0(10|13|14|15|20|23|24|26|30|33|35|36|38|40|43|44|45|46|50|53|55|58|70|71|72|73|74|75|76|77|78|79|82|84|85|87|88|91)/":"(.).. ........","/^(10|13|14|15|20|23|24|26|30|33|35|36|38|40|43|44|45|46|50|53|55|58|70|71|72|73|74|75|76|77|78|79|82|84|85|87|88|91)/":".. ........","/^0/":"(.)... .......",default:"... ......."}],["New Caledonia","nc","687"],["New Zealand","nz","64","...-...-...."],["Nicaragua","ni","505"],["Niger","ne","227"],["Nigeria","ng","234"],["North Korea","kp","850"],["Norway","no","47","... .. ..."],["Oman","om","968",".... ...."],["Pakistan","pk","92","...-......."],["Palau","pw","680"],["Palestine","ps","970"],["Panama","pa","507"],["Papua New Guinea","pg","675"],["Paraguay","py","595"],["Peru","pe","51"],["Philippines","ph","63","... ... ...."],["Poland","pl","48","...-...-..."],["Portugal","pt","351"],["Puerto Rico","pr","1","(...) ...-....",3,["787","939"]],["Qatar","qa","974",".... ...."],["R\xe9union","re","262","... .. .. ..",0],["Romania","ro","40"],["Russia","ru","7","(...) ...-..-..",1],["Rwanda","rw","250"],["Saint Kitts and Nevis","kn","1869"],["Saint Lucia","lc","1758"],["Saint Pierre & Miquelon","pm","508",{"/^708/":"... ... ...","/^8/":"... .. .. ..",default:".. .. .."}],["Saint Vincent and the Grenadines","vc","1784"],["Samoa","ws","685"],["San Marino","sm","378"],["S\xe3o Tom\xe9 and Pr\xedncipe","st","239"],["Saudi Arabia","sa","966",".. ... ...."],["Senegal","sn","221"],["Serbia","rs","381"],["Seychelles","sc","248"],["Sierra Leone","sl","232"],["Singapore","sg","65","....-...."],["Slovakia","sk","421"],["Slovenia","si","386"],["Solomon Islands","sb","677"],["Somalia","so","252"],["South Africa","za","27"],["South Korea","kr","82","... .... ...."],["South Sudan","ss","211"],["Spain","es","34","... ... ..."],["Sri Lanka","lk","94"],["Sudan","sd","249"],["Suriname","sr","597"],["Swaziland","sz","268"],["Sweden","se","46","... ... ..."],["Switzerland","ch","41",".. ... .. .."],["Syria","sy","963"],["Taiwan","tw","886"],["Tajikistan","tj","992"],["Tanzania","tz","255"],["Thailand","th","66"],["Timor-Leste","tl","670"],["Togo","tg","228"],["Tonga","to","676"],["Trinidad and Tobago","tt","1868"],["Tunisia","tn","216"],["Turkey","tr","90","... ... .. .."],["Turkmenistan","tm","993"],["Tuvalu","tv","688"],["Uganda","ug","256"],["Ukraine","ua","380","(..) ... .. .."],["United Arab Emirates","ae","971",{default:".. ... ....","/^5[024568]/":".. ... ....","/^[234679]/":". ... ...."}],["United Kingdom","gb","44",".... ......"],["United States","us","1","(...) ...-....",0],["Uruguay","uy","598"],["Uzbekistan","uz","998",".. ... .. .."],["Vanuatu","vu","678"],["Vatican City","va","39",".. .... ....",1],["Venezuela","ve","58"],["Vietnam","vn","84"],["Wallis & Futuna","wf","681",".. .. .."],["Yemen","ye","967"],["Zambia","zm","260"],["Zimbabwe","zw","263"]];var M="react-international-phone-",I=function(){for(var e=arguments.length,r=new Array(e),t=0;t<e;t++){r[t]=arguments[t]}return r.filter(function(e){return!!e}).join(" ").trim()},O=function(){for(var e=arguments.length,r=new Array(e),t=0;t<e;t++){r[t]=arguments[t]}return I.apply(void 0,p(r)).split(" ").map(function(e){return"".concat(M).concat(e)}).join(" ")},j=function(e){var r=e.addPrefix,t=e.rawClassNames;return I.apply(void 0,[O.apply(void 0,p(r))].concat(p(t)))};var _=function(e){var r=e.value,t=e.mask,n=e.maskSymbol,a=e.offset,o=a===void 0?0:a,i=e.trimNonMaskCharsLeftover,u=i===void 0?!1:i;if(r.length<o)return r;var l=r.slice(0,o),c=r.slice(o),s=l,d=0;var f=true,v=false,p=undefined;try{for(var y=t.split("")[Symbol.iterator](),m;!(f=(m=y.next()).done);f=true){var h=m.value;if(d>=c.length){if(!u&&h!==n){s+=h;continue}break}h===n?(s+=c[d],d+=1):s+=h}}catch(e){v=true;p=e}finally{try{if(!f&&y.return!=null){y.return()}}finally{if(v){throw p}}}return s};var F=function(e){return e?/^\d+$/.test(e):!1};var L=function(e){return e.replace(/\D/g,"")};var z=function(e,r){var t=e.style.display;t!=="block"&&(e.style.display="block");var n=e.getBoundingClientRect(),a=r.getBoundingClientRect(),o=a.top-n.top,i=n.bottom-a.bottom;o>=0&&i>=0||(Math.abs(o)<Math.abs(i)?e.scrollTop+=o:e.scrollTop-=i),e.style.display=t};var B=function(e){var r=e.name,t=e.iso2,n=e.dialCode,a=e.format,o=e.priority,i=e.areaCodes,u=[r,t,n,a,o,i];for(var l=0;l<u.length;l+=1){if(l===0)continue;var c=u[l-1],s=u[l];if(c===void 0&&s!==void 0){var d=JSON.stringify(u,function(e,r){return r===void 0?"__undefined":r}).replace(/"__undefined"/g,"undefined");throw new Error("[react-international-phone] invalid country values passed to buildCountryData. Check ".concat(c," in: ").concat(d))}}return u.filter(function(e){return e!==void 0})};var V=require("react");var R=function(){return(typeof window==="undefined"?"undefined":y(window))>"u"?!1:window.navigator.userAgent.toLowerCase().includes("macintosh")};var G=function(e){var r=e.phone,t=e.dialCode,n=e.prefix,a=n===void 0?"+":n,o=e.charAfterDialCode,i=o===void 0?" ":o;if(!r||!t)return r;var u=r;return u.startsWith(a)&&(u=u.replace(a,"")),u.startsWith(t)?(u=u.replace(t,""),u.startsWith(i)&&(u=u.replace(i,"")),u):r};var q=function(e,r){var t=r.disableDialCodeAndPrefix?!1:r.forceDialCode,n=r.disableDialCodeAndPrefix?!1:r.insertDialCodeOnEmpty,a=e,o=function(e){return r.trimNonDigitsEnd?e.trim():e};if(!a)return n&&!a.length||t?o("".concat(r.prefix).concat(r.dialCode).concat(r.charAfterDialCode)):o(a);if(a=L(a),a===r.dialCode&&!r.disableDialCodeAndPrefix)return o("".concat(r.prefix).concat(r.dialCode).concat(r.charAfterDialCode));if(r.dialCode.startsWith(a)&&!r.disableDialCodeAndPrefix)return o(t?"".concat(r.prefix).concat(r.dialCode).concat(r.charAfterDialCode):"".concat(r.prefix).concat(a));if(!a.startsWith(r.dialCode)&&!r.disableDialCodeAndPrefix){if(t)return o("".concat(r.prefix).concat(r.dialCode).concat(r.charAfterDialCode));if(a.length<r.dialCode.length)return o("".concat(r.prefix).concat(a))}var i=function(){var e=r.dialCode.length,t=a.slice(0,e),n=a.slice(e);return{phoneLeftSide:t,phoneRightSide:n}},u=i(),l=u.phoneLeftSide,c=u.phoneRightSide;return l="".concat(r.prefix).concat(l).concat(r.charAfterDialCode),c=_({value:c,mask:r.mask,maskSymbol:r.maskChar,trimNonMaskCharsLeftover:r.trimNonDigitsEnd||r.disableDialCodeAndPrefix&&c.length===0}),r.disableDialCodeAndPrefix&&(l=""),o("".concat(l).concat(c))};var T=function(e){var r=e.phoneBeforeInput,t=e.phoneAfterInput,n=e.phoneAfterFormatted,a=e.cursorPositionAfterInput,o=e.leftOffset,i=o===void 0?0:o,u=e.deletion;if(a<i)return i;if(!r)return n.length;var l=null;for(var c=a-1;c>=0;c-=1)if(F(t[c])){l=c;break}if(l===null){for(var s=0;s<t.length;s+=1)if(F(n[s]))return s;return t.length}var d=0;for(var f=0;f<l;f+=1)F(t[f])&&(d+=1);var v=0,p=0;for(var y=0;y<n.length&&(v+=1,F(n[y])&&(p+=1),!(p>=d+1));y+=1);if(u!=="backward")for(;!F(n[v])&&v<n.length;)v+=1;return v};var K=function(e){var r=e.phone,t=e.prefix;return r?"".concat(t).concat(L(r)):""};function W(e){var r=e.value,t=e.country,n=e.insertDialCodeOnEmpty,a=e.trimNonDigitsEnd,o=e.countries,i=e.prefix,u=e.charAfterDialCode,l=e.forceDialCode,c=e.disableDialCodeAndPrefix,s=e.defaultMask,d=e.countryGuessingEnabled,f=e.disableFormatting;var v,p,y;var m=r;c&&(m=m.startsWith("".concat(i))?m:"".concat(i).concat(t.dialCode).concat(m));var h;var C=d?eu({phone:m,countries:o,currentCountryIso2:(v=t)===null||v===void 0?void 0:v.iso2}):void 0,b=(h=(p=C)===null||p===void 0?void 0:p.country)!==null&&h!==void 0?h:t,g=q(m,{prefix:i,mask:en({phone:m,country:b,defaultMask:s,disableFormatting:f}),maskChar:ee,dialCode:b.dialCode,trimNonDigitsEnd:a,charAfterDialCode:u,forceDialCode:l,insertDialCodeOnEmpty:n,disableDialCodeAndPrefix:c}),w=d&&!((y=C)===null||y===void 0?void 0:y.fullDialCodeMatch)?t:b;return{phone:K({phone:c?"".concat(w.dialCode).concat(g):g,prefix:i}),inputValue:g,country:w}}var U=function(e){var r,t;var n;if((n=(r=e)===null||r===void 0?void 0:r.toLocaleLowerCase().includes("delete"))!==null&&n!==void 0?n:!1)return((t=e)===null||t===void 0?void 0:t.toLocaleLowerCase().includes("forward"))?"forward":"backward"},H=function(e,r){var t=r.country,n=r.insertDialCodeOnEmpty,a=r.phoneBeforeInput,o=r.prefix,i=r.charAfterDialCode,u=r.forceDialCode,l=r.disableDialCodeAndPrefix,c=r.countryGuessingEnabled,s=r.defaultMask,d=r.disableFormatting,f=r.countries;var v,p,y,m;var h;var C=e.nativeEvent,b=C.inputType,g=U(b),w=!!((v=b)===null||v===void 0?void 0:v.startsWith("insertFrom")),D=b==="insertText",P=((p=C)===null||p===void 0?void 0:p.data)||void 0,S=e.target.value,k=(h=e.target.selectionStart)!==null&&h!==void 0?h:0;if((y=b)===null||y===void 0?void 0:y.includes("history"))return{inputValue:a,phone:K({phone:a,prefix:o}),cursorPosition:a.length,country:t};var x;if(D&&!F(P)&&S!==o)return{inputValue:a,phone:K({phone:l?"".concat(t.dialCode).concat(a):a,prefix:o}),cursorPosition:k-((x=(m=P)===null||m===void 0?void 0:m.length)!==null&&x!==void 0?x:0),country:t};if(u&&!S.startsWith("".concat(o).concat(t.dialCode))&&!w){var N=S?a:"".concat(o).concat(t.dialCode).concat(i);return{inputValue:N,phone:K({phone:N,prefix:o}),cursorPosition:o.length+t.dialCode.length+i.length,country:t}}var A=W({value:S,country:t,trimNonDigitsEnd:g==="backward",insertDialCodeOnEmpty:n,countryGuessingEnabled:c,countries:f,prefix:o,charAfterDialCode:i,forceDialCode:u,disableDialCodeAndPrefix:l,disableFormatting:d,defaultMask:s}),E=A.phone,M=A.inputValue,I=A.country,O=T({cursorPositionAfterInput:k,phoneBeforeInput:a,phoneAfterInput:S,phoneAfterFormatted:M,leftOffset:u?o.length+t.dialCode.length+i.length:0,deletion:g});return{phone:E,inputValue:M,cursorPosition:O,country:I}};var J=require("react");var Z=function(e,r){var t=Object.keys(e),n=Object.keys(r);if(t.length!==n.length)return!1;var a=true,o=false,i=undefined;try{for(var u=t[Symbol.iterator](),l;!(a=(l=u.next()).done);a=true){var c=l.value;if(e[c]!==r[c])return!1}}catch(e){o=true;i=e}finally{try{if(!a&&u.return!=null){u.return()}}finally{if(o){throw i}}}return!0};var $=require("react"),Q=function(){var e=(0,$.useRef)(),r=(0,$.useRef)(Date.now()),t=(0,$.useCallback)(function(){var t=Date.now(),n=e.current?t-r.current:void 0;return e.current=r.current,r.current=t,n},[]);return(0,$.useMemo)(function(){return{check:t}},[t])};var Y={size:20,overrideLastItemDebounceMS:-1};function X(e,r){var t=l({},Y,r),n=t.size,a=t.overrideLastItemDebounceMS,o=t.onChange,i=v((0,J.useState)(e),2),u=i[0],c=i[1],s=(0,J.useRef)([u]),d=(0,J.useRef)(0),f=Q(),y=(0,J.useCallback)(function(e,r){var t,i;var u=s.current[d.current];if(e===u||typeof e=="object"&&typeof u=="object"&&Z(e,u))return;var l=a>0,v=f.check(),y=l&&v!==void 0?v>a:!0;if(((t=r)===null||t===void 0?void 0:t.overrideLastItem)!==void 0?r.overrideLastItem:!y)s.current=p(s.current.slice(0,d.current)).concat([e]);else{var m=s.current.length>=n;s.current=p(s.current.slice(m?1:0,d.current+1)).concat([e]),m||(d.current+=1)}c(e),(i=o)===null||i===void 0?void 0:i(e)},[o,a,n,f]),m=(0,J.useCallback)(function(){var e;if(d.current<=0)return{success:!1};var r=s.current[d.current-1];return c(r),d.current-=1,(e=o)===null||e===void 0?void 0:e(r),{success:!0,value:r}},[o]),h=(0,J.useCallback)(function(){var e;if(d.current+1>=s.current.length)return{success:!1};var r=s.current[d.current+1];return c(r),d.current+=1,(e=o)===null||e===void 0?void 0:e(r),{success:!0,value:r}},[o]);return[u,y,m,h]}var ee=".",er={defaultCountry:"us",value:"",prefix:"+",defaultMask:"............",charAfterDialCode:" ",historySaveDebounceMS:200,disableCountryGuess:!1,disableDialCodePrefill:!1,forceDialCode:!1,disableDialCodeAndPrefix:!1,disableFormatting:!1,countries:E,preferredCountries:[]},et=function(e){var r=e.defaultCountry,t=r===void 0?er.defaultCountry:r,n=e.value,a=n===void 0?er.value:n,o=e.countries,i=o===void 0?er.countries:o,u=e.prefix,c=u===void 0?er.prefix:u,s=e.defaultMask,d=s===void 0?er.defaultMask:s,f=e.charAfterDialCode,p=f===void 0?er.charAfterDialCode:f,m=e.historySaveDebounceMS,h=m===void 0?er.historySaveDebounceMS:m,C=e.disableCountryGuess,b=C===void 0?er.disableCountryGuess:C,g=e.disableDialCodePrefill,w=g===void 0?er.disableDialCodePrefill:g,D=e.forceDialCode,P=D===void 0?er.forceDialCode:D,S=e.disableDialCodeAndPrefix,k=S===void 0?er.disableDialCodeAndPrefix:S,x=e.disableFormatting,N=x===void 0?er.disableFormatting:x,A=e.onChange,E=e.inputRef;var M={countries:i,prefix:c,charAfterDialCode:p,forceDialCode:k?!1:P,disableDialCodeAndPrefix:k,defaultMask:d,countryGuessingEnabled:!b,disableFormatting:N},I=(0,V.useRef)(null),O=E||I,j=function(e){Promise.resolve().then(function(){var r,t;(typeof window==="undefined"?"undefined":y(window))>"u"||O.current!==((r=document)===null||r===void 0?void 0:r.activeElement)||((t=O.current)===null||t===void 0?void 0:t.setSelectionRange(e,e))})},_=(0,V.useCallback)(function(e){return ei({value:e,field:"iso2",countries:i})},[i]),F=(0,V.useCallback)(function(e){var r=e.inputValue,t=e.phone,n=e.country;if(!A)return;var a=_(n);A({phone:t,inputValue:r,country:a})},[_,A]),L=v(X(function(){var e=ei({value:t,field:"iso2",countries:i});e||console.error('[react-international-phone]: can not find a country with "'.concat(t,'" iso2 code'));var r=e||ei({value:"us",field:"iso2",countries:i}),n=W(l({value:a,country:r,insertDialCodeOnEmpty:!w},M)),o=n.phone,u=n.inputValue,c=n.country;return j(u.length),{phone:o,inputValue:u,country:c.iso2}},{overrideLastItemDebounceMS:h,onChange:F}),4),z=L[0],B=z.phone,G=z.inputValue,q=z.country,T=L[1],K=L[2],U=L[3],J=(0,V.useMemo)(function(){return _(q)},[q,_]);(0,V.useEffect)(function(){var e=O.current;if(!e)return;var r=function(e){if(!e.key)return;var r=e.ctrlKey,t=e.metaKey,n=e.shiftKey;if(e.key.toLowerCase()==="z"){if(R()){if(!t)return}else if(!r)return;n?U():K()}};return e.addEventListener("keydown",r),function(){e.removeEventListener("keydown",r)}},[O,K,U]);var Z=function(e){e.preventDefault();var r=H(e,l({country:J,phoneBeforeInput:G,insertDialCodeOnEmpty:!1},M)),t=r.phone,n=r.inputValue,o=r.country,i=r.cursorPosition;return T({inputValue:n,phone:t,country:o.iso2}),j(i),a},$=(0,V.useCallback)(function(e){var r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{focusOnInput:!1};var t=ei({value:e,field:"iso2",countries:i});if(!t){console.error('[react-international-phone]: can not find a country with "'.concat(e,'" iso2 code'));return}var n=k?"":"".concat(c).concat(t.dialCode).concat(p);T({inputValue:n,phone:"".concat(c).concat(t.dialCode),country:t.iso2}),r.focusOnInput&&Promise.resolve().then(function(){var e;(e=O.current)===null||e===void 0?void 0:e.focus()})},[i,k,c,p,T,O]),Q=v((0,V.useState)(!1),2),Y=Q[0],ee=Q[1];return(0,V.useEffect)(function(){if(!Y){var e;ee(!0),a!==B&&((e=A)===null||e===void 0?void 0:e({inputValue:G,phone:B,country:J}));return}if(a===B)return;var r=W(l({value:a,country:J,insertDialCodeOnEmpty:!w},M)),t=r.phone,n=r.inputValue,o=r.country;T({phone:t,inputValue:n,country:o.iso2})},[a]),{phone:B,inputValue:G,country:J,setCountry:$,handlePhoneValueChange:Z,inputRef:O}};var en=function(e){var r=e.phone,t=e.country,n=e.defaultMask,a=n===void 0?"............":n,o=e.disableFormatting,i=o===void 0?!1:o;var u=t.format,l=function(e){return i?e.replace(new RegExp("[^".concat(ee,"]"),"g"),""):e};if(!u)return l(a);if(typeof u=="string")return l(u);if(!u.default)return console.error("[react-international-phone]: default mask for ".concat(t.iso2," is not provided")),l(a);var c=Object.keys(u).find(function(e){if(e==="default")return!1;if(!(e.charAt(0)==="/"&&e.charAt(e.length-1)==="/"))return console.error('[react-international-phone]: format regex "'.concat(e,'" for ').concat(t.iso2," is not valid")),!1;var n=new RegExp(e.substring(1,e.length-1)),a=r.replace(t.dialCode,"");return n.test(L(a))});return l(c?u[c]:u.default)};var ea=function(e){var r=v(e,6),t=r[0],n=r[1],a=r[2],o=r[3],i=r[4],u=r[5];return{name:t,iso2:n,dialCode:a,format:o,priority:i,areaCodes:u}};var eo=function(e){return'Field "'.concat(e,'" is not supported')},ei=function(e){var r=e.field,t=e.value,n=e.countries,a=n===void 0?E:n;if(["priority"].includes(r))throw new Error(eo(r));var o=a.find(function(e){var n=ea(e);return t===n[r]});if(o)return ea(o)};var eu=function(e){var r=e.phone,t=e.countries,n=t===void 0?E:t,a=e.currentCountryIso2;var o={country:void 0,fullDialCodeMatch:!1};if(!r)return o;var i=L(r);if(!i)return o;var u=o,l=function(e){var r=e.country,t=e.fullDialCodeMatch;var n,a;var o,i;var l=r.dialCode===((n=u.country)===null||n===void 0?void 0:n.dialCode),c=((o=r.priority)!==null&&o!==void 0?o:0)<((i=(a=u.country)===null||a===void 0?void 0:a.priority)!==null&&i!==void 0?i:0);(!l||c)&&(u={country:r,fullDialCodeMatch:t})};var c=true,s=false,d=undefined;try{for(var f=n[Symbol.iterator](),v;!(c=(v=f.next()).done);c=true){var p=v.value;var y=ea(p),m=y.dialCode,h=y.areaCodes;if(i.startsWith(m)){var C=u.country?Number(m)>=Number(u.country.dialCode):!0;if(h){var b=i.substring(m.length);var g=true,w=false,D=undefined;try{for(var P=h[Symbol.iterator](),S;!(g=(S=P.next()).done);g=true){var k=S.value;if(b.startsWith(k))return{country:y,fullDialCodeMatch:!0}}}catch(e){w=true;D=e}finally{try{if(!g&&P.return!=null){P.return()}}finally{if(w){throw D}}}}(C||m===i||!u.fullDialCodeMatch)&&l({country:y,fullDialCodeMatch:!0})}u.fullDialCodeMatch||i.length<m.length&&m.startsWith(i)&&(!u.country||Number(m)<=Number(u.country.dialCode))&&l({country:y,fullDialCodeMatch:!1})}}catch(e){s=true;d=e}finally{try{if(!c&&f.return!=null){f.return()}}finally{if(s){throw d}}}if(a){var x;var N=ei({value:a,field:"iso2",countries:n});if(!N)return u;var A=N?function(e){var r;if(!((r=e)===null||r===void 0?void 0:r.areaCodes))return!1;var t=i.substring(e.dialCode.length);return e.areaCodes.some(function(e){return e.startsWith(t)})}(N):!1;!!u&&((x=u.country)===null||x===void 0?void 0:x.dialCode)===N.dialCode&&u.country!==N&&u.fullDialCodeMatch&&(!N.areaCodes||A)&&(u={country:N,fullDialCodeMatch:!0})}return u};var el=k(require("react"));var ec=function(e,r){var t=parseInt(e,16);return Number(t+r).toString(16)},es="abcdefghijklmnopqrstuvwxyz",ed="1f1e6",ef=es.split("").reduce(function(e,r,t){return s(l({},e),n({},r,ec(ed,t)))},{}),ev=function(e){return[ef[e[0]],ef[e[1]]].join("-")},ep=function(e){var r=e.iso2,t=e.size,n=e.src,a=e.protocol,o=a===void 0?"https":a,i=e.disableLazyLoading,u=e.className,c=e.style,s=d(e,["iso2","size","src","protocol","disableLazyLoading","className","style"]);if(!r)return el.default.createElement("img",l({className:j({addPrefix:["flag-emoji"],rawClassNames:[u]}),width:t,height:t},s));var f=function(){if(n)return n;var e=ev(r);return"".concat(o,"://cdnjs.cloudflare.com/ajax/libs/twemoji/14.0.2/svg/").concat(e,".svg")};return el.default.createElement("img",l({className:j({addPrefix:["flag-emoji"],rawClassNames:[u]}),src:f(),width:t,height:t,draggable:!1,"data-country":r,loading:i?void 0:"lazy",style:l({width:t,height:t},c),alt:""},s))};var ey=k(require("react"));var em=1e3,eh=function(e){var r=e.show,t=e.dialCodePrefix,n=t===void 0?"+":t,a=e.selectedCountry,o=e.countries,i=o===void 0?E:o,u=e.preferredCountries,c=u===void 0?[]:u,s=e.flags,f=e.onSelect,y=e.onClose,m=d(e,["show","dialCodePrefix","selectedCountry","countries","preferredCountries","flags","onSelect","onClose"]);var h=(0,ey.useRef)(null),C=(0,ey.useRef)(),b=(0,ey.useMemo)(function(){if(!c||!c.length)return i;var e=[],r=p(i);var t=true,n=false,a=undefined;try{var o=function(){var t=l.value;var n=r.findIndex(function(e){return ea(e).iso2===t});if(n!==-1){var a=r.splice(n,1)[0];e.push(a)}};for(var u=c[Symbol.iterator](),l;!(t=(l=u.next()).done);t=true)o()}catch(e){n=true;a=e}finally{try{if(!t&&u.return!=null){u.return()}}finally{if(n){throw a}}}return e.concat(r)},[i,c]),g=(0,ey.useRef)({updatedAt:void 0,value:""}),w=function(e){var r=g.current.updatedAt&&new Date().getTime()-g.current.updatedAt.getTime()>em;g.current={value:r?e:"".concat(g.current.value).concat(e),updatedAt:new Date};var t=b.findIndex(function(e){return ea(e).name.toLowerCase().startsWith(g.current.value)});t!==-1&&k(t)},D=(0,ey.useCallback)(function(e){return b.findIndex(function(r){return ea(r).iso2===e})},[b]),P=v((0,ey.useState)(D(a)),2),S=P[0],k=P[1],x=function(){C.current!==a&&k(D(a))},N=(0,ey.useCallback)(function(e){var r;k(D(e.iso2)),(r=f)===null||r===void 0?void 0:r(e)},[f,D]),A=function(e){var r=b.length-1,t=function(t){return e==="prev"?t-1:e==="next"?t+1:e==="last"?r:0};k(function(e){var n=t(e);return n<0?0:n>r?r:n})},M=function(e){if(e.stopPropagation(),e.key==="Enter"){e.preventDefault();var r=ea(b[S]);N(r);return}if(e.key==="Escape"){var t;(t=y)===null||t===void 0?void 0:t();return}if(e.key==="ArrowUp"){e.preventDefault(),A("prev");return}if(e.key==="ArrowDown"){e.preventDefault(),A("next");return}if(e.key==="PageUp"){e.preventDefault(),A("first");return}if(e.key==="PageDown"){e.preventDefault(),A("last");return}e.key===" "&&e.preventDefault(),e.key.length===1&&!e.altKey&&!e.ctrlKey&&!e.metaKey&&w(e.key.toLocaleLowerCase())},I=(0,ey.useCallback)(function(){if(!h.current||S===void 0)return;var e=ea(b[S]).iso2;if(e===C.current)return;var r=h.current.querySelector('[data-country="'.concat(e,'"]'));r&&(z(h.current,r),C.current=e)},[S,b]);return(0,ey.useEffect)(function(){I()},[S,I]),(0,ey.useEffect)(function(){h.current&&(r?h.current.focus():x())},[r]),(0,ey.useEffect)(function(){x()},[a]),ey.default.createElement("ul",{ref:h,role:"listbox",className:j({addPrefix:["country-selector-dropdown"],rawClassNames:[m.className]}),style:l({display:r?"block":"none"},m.style),onKeyDown:M,onBlur:y,tabIndex:-1,"aria-activedescendant":"react-international-phone__".concat(ea(b[S]).iso2,"-option")},b.map(function(e,r){var t,o;var i=ea(e),u=i.iso2===a,l=r===S,d=c.includes(i.iso2),f=r===c.length-1,v=(t=s)===null||t===void 0?void 0:t.find(function(e){return e.iso2===i.iso2});return ey.default.createElement(ey.default.Fragment,{key:i.iso2},ey.default.createElement("li",{"data-country":i.iso2,role:"option","aria-selected":u,"aria-label":"".concat(i.name," ").concat(n).concat(i.dialCode),id:"react-international-phone__".concat(i.iso2,"-option"),className:j({addPrefix:["country-selector-dropdown__list-item",d&&"country-selector-dropdown__list-item--preferred",u&&"country-selector-dropdown__list-item--selected",l&&"country-selector-dropdown__list-item--focused"],rawClassNames:[m.listItemClassName,d&&m.listItemPreferredClassName,u&&m.listItemSelectedClassName,l&&m.listItemFocusedClassName]}),onClick:function(){return N(i)},style:m.listItemStyle,title:i.name},ey.default.createElement(ep,{iso2:i.iso2,src:(o=v)===null||o===void 0?void 0:o.src,className:j({addPrefix:["country-selector-dropdown__list-item-flag-emoji"],rawClassNames:[m.listItemFlagClassName]}),style:m.listItemFlagStyle}),ey.default.createElement("span",{className:j({addPrefix:["country-selector-dropdown__list-item-country-name"],rawClassNames:[m.listItemCountryNameClassName]}),style:m.listItemCountryNameStyle},i.name),ey.default.createElement("span",{className:j({addPrefix:["country-selector-dropdown__list-item-dial-code"],rawClassNames:[m.listItemDialCodeClassName]}),style:m.listItemDialCodeStyle},n,i.dialCode)),f?ey.default.createElement("hr",{className:j({addPrefix:["country-selector-dropdown__preferred-list-divider"],rawClassNames:[m.preferredListDividerClassName]}),style:m.preferredListDividerStyle}):null)}))};var eC=A.default.memo(function(e){var r=e.selectedCountry,t=e.onSelect,n=e.disabled,a=e.hideDropdown,o=e.countries,i=o===void 0?E:o,u=e.preferredCountries,c=u===void 0?[]:u,f=e.flags,p=e.renderButtonWrapper,y=d(e,["selectedCountry","onSelect","disabled","hideDropdown","countries","preferredCountries","flags","renderButtonWrapper"]);var m=v((0,A.useState)(!1),2),h=m[0],C=m[1],b=(0,A.useMemo)(function(){if(r)return ei({value:r,field:"iso2",countries:i})},[i,r]),g=(0,A.useRef)(null),w=function(e){e.key&&["ArrowUp","ArrowDown"].includes(e.key)&&(e.preventDefault(),C(!0))},D=function(){var e,t,o;var i={title:(e=b)===null||e===void 0?void 0:e.name,onClick:function(){return C(function(e){return!e})},onMouseDown:function(e){return e.preventDefault()},onKeyDown:w,disabled:a||n,role:"combobox","aria-label":"Country selector","aria-haspopup":"listbox","aria-expanded":h},u=A.default.createElement("div",{className:j({addPrefix:["country-selector-button__button-content"],rawClassNames:[y.buttonContentWrapperClassName]}),style:y.buttonContentWrapperStyle},A.default.createElement(ep,{iso2:r,src:(o=f)===null||o===void 0?void 0:(t=o.find(function(e){return e.iso2===r}))===null||t===void 0?void 0:t.src,className:j({addPrefix:["country-selector-button__flag-emoji",n&&"country-selector-button__flag-emoji--disabled"],rawClassNames:[y.flagClassName]}),style:l({visibility:r?"visible":"hidden"},y.flagStyle)}),!a&&A.default.createElement("div",{className:j({addPrefix:["country-selector-button__dropdown-arrow",n&&"country-selector-button__dropdown-arrow--disabled",h&&"country-selector-button__dropdown-arrow--active"],rawClassNames:[y.dropdownArrowClassName]}),style:y.dropdownArrowStyle}));return p?p({children:u,rootProps:i}):A.default.createElement("button",s(l({},i),{type:"button",className:j({addPrefix:["country-selector-button",h&&"country-selector-button--active",n&&"country-selector-button--disabled",a&&"country-selector-button--hide-dropdown"],rawClassNames:[y.buttonClassName]}),"data-country":r,style:y.buttonStyle}),u)};return A.default.createElement("div",{className:j({addPrefix:["country-selector"],rawClassNames:[y.className]}),style:y.style,ref:g},D(),A.default.createElement(eh,l({show:h,countries:i,preferredCountries:c,flags:f,onSelect:function(e){var r;C(!1),(r=t)===null||r===void 0?void 0:r(e)},selectedCountry:r,onClose:function(){C(!1)}},y.dropdownStyleProps)))});var eb=k(require("react"));var eg=function(e){var r=e.dialCode,t=e.prefix,n=e.disabled,a=e.style,o=e.className;return eb.default.createElement("div",{className:j({addPrefix:["dial-code-preview",n&&"dial-code-preview--disabled"],rawClassNames:[o]}),style:a},"".concat(t).concat(r))};var ew=k(require("react"));var eD=(0,ew.forwardRef)(function(e,r){var t=e.value,n=e.onChange,a=e.countries,o=a===void 0?E:a,i=e.preferredCountries,u=e.hideDropdown,c=e.showDisabledDialCodeAndPrefix,f=e.disableFocusAfterCountrySelect,v=e.flags,p=e.style,y=e.className,m=e.inputStyle,h=e.inputClassName,C=e.countrySelectorStyleProps,b=e.dialCodePreviewStyleProps,g=e.inputProps,w=e.placeholder,D=e.disabled,P=e.name,S=e.onFocus,k=e.onBlur,x=e.required,N=e.autoFocus,A=d(e,["value","onChange","countries","preferredCountries","hideDropdown","showDisabledDialCodeAndPrefix","disableFocusAfterCountrySelect","flags","style","className","inputStyle","inputClassName","countrySelectorStyleProps","dialCodePreviewStyleProps","inputProps","placeholder","disabled","name","onFocus","onBlur","required","autoFocus"]);var M,I;var O=(0,ew.useCallback)(function(e){var r;(r=n)===null||r===void 0?void 0:r(e.phone,{country:e.country,inputValue:e.inputValue})},[n]),_=et(s(l({value:t,countries:o},A),{onChange:O})),F=_.phone,L=_.inputValue,z=_.inputRef,B=_.country,V=_.setCountry,R=_.handlePhoneValueChange,G=A.disableDialCodeAndPrefix&&c&&((M=B)===null||M===void 0?void 0:M.dialCode),q=(0,ew.useCallback)(function(e){V(e.iso2,{focusOnInput:!f})},[V,f]);var T;return(0,ew.useImperativeHandle)(r,function(){return z.current?Object.assign(z.current,{setCountry:V,state:{phone:F,inputValue:L,country:B}}):null},[z,V,F,L,B]),ew.default.createElement("div",{ref:r,className:j({addPrefix:["input-container"],rawClassNames:[y]}),style:p},ew.default.createElement(eC,l({onSelect:q,flags:v,selectedCountry:(I=B)===null||I===void 0?void 0:I.iso2,countries:o,preferredCountries:i,disabled:D,hideDropdown:u},C)),G&&ew.default.createElement(eg,l({dialCode:B.dialCode,prefix:(T=A.prefix)!==null&&T!==void 0?T:"+",disabled:D},b)),ew.default.createElement("input",l({onChange:R,value:L,type:"tel",ref:z,className:j({addPrefix:["input",D&&"input--disabled"],rawClassNames:[h]}),placeholder:w,disabled:D,style:m,name:P,onFocus:S,onBlur:k,autoFocus:N,required:x},g)))});0&&(module.exports={CountrySelector:CountrySelector,CountrySelectorDropdown:CountrySelectorDropdown,DialCodePreview:DialCodePreview,FlagImage:FlagImage,PhoneInput:PhoneInput,buildCountryData:buildCountryData,defaultCountries:defaultCountries,getActiveFormattingMask:getActiveFormattingMask,getCountry:getCountry,guessCountryByPartialPhoneNumber:guessCountryByPartialPhoneNumber,parseCountry:parseCountry,removeDialCode:removeDialCode,usePhoneInput:usePhoneInput});