PageSourceSearch

https://cp.ecos.am/_nuxt/StK3Pwso.js

js ecos.am collected 2026-10-01 11:27:24 UTC 52,324 bytes, 1 lines download raw bytes

1import{_ as Nt}from"./D-Ekv8Fh.js";import{_ as Gt,G as Ut,b as Ft,a as Ot}from"./CG2V5Y7Y.js";import{_ as tt,a as $t}from"./E6UmVeRS.js";import{_ as nt,i as Kt}from"./BUY2GtcU.js";import{_ as qt}from"./DMBXOVku.js";import{_ as Ht}from"./BpEMA95_.js";import{_ as Wt}from"./BBsDtKHy.js";import{p as ta,aK as ot,Q as Sa,a as ye,P as _e,m as Ca,af as Y,W as x,X as j,ay as me,aA as jt,aL as _a,r as d,g as r,h as m,i as s,k as a,V as v,a3 as y,Y as ne,ap as Ke,e as T,o as st,a5 as W,am as he,au as ea,as as aa,at as wa,R as G,aR as zt,aS as Zt,aT as ba,u as Yt,a0 as Jt,$ as Xt,U as Qt,aU as en,aC as an,H as tn,aj as le,b as nn,_ as Ae,aV as $e,an as on,aB as Ya,q as sn,aD as ha,aW as Ja,O as Xa}from"./0XwV3hpy.js";import{_ as Ea}from"./DH33LfDt.js";import{useTokenClient as rn}from"./C7iflFnK.js";import{p as ln,_ as un}from"./BLCwo70c.js";import{I as Qa,a as et}from"./BJLLytDN.js";import{o as it,s as cn,n as rt,_ as dn}from"./DJUrZq06.js";import{s as mn}from"./7RFupTvF.js";(function(){try{var u=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{};u.SENTRY_RELEASE={id:"ecos-frontend-cp@32b46d188678f896e839c69d78ed855453967266"};var c=new u.Error().stack;c&&(u._sentryDebugIds=u._sentryDebugIds||{},u._sentryDebugIds[c]="dcbc1315-7e58-47da-b401-e99d525ea0ce",u._sentryDebugIdIdentifier="sentry-dbid-dcbc1315-7e58-47da-b401-e99d525ea0ce")}catch{}})();const pn=["aria-label","disabled"],vn={class:"signup-recovery-modal__header"},fn={id:"signup-recovery-title",class:"signup-recovery-modal__title"},gn={id:"signup-recovery-description",class:"signup-recovery-modal__description"},hn={key:0,class:"signup-recovery-modal__error",role:"alert","aria-live":"assertive"},yn=ta({__name:"SignupRecoveryCaptchaModal",props:_a({open:{type:Boolean},loading:{type:Boolean},error:{}},{modelValue:{},modelModifiers:{}}),emits:_a(["close","submit"],["update:modelValue"]),setup(u,{expose:c,emit:f}){const R=u,l=f,M=ot(u,"modelValue"),{t:S}=Sa(),A=d(null),C=d(null);let w=null,b="";const g=["button:not([disabled])","[href]","input:not([disabled])","select:not([disabled])","textarea:not([disabled])","iframe",'[tabindex]:not([tabindex="-1"])'].join(",");function oe(){R.loading||l("close")}function ee(I){if(!R.open)return;if(I.key==="Escape"){I.preventDefault(),oe();return}if(I.key!=="Tab"||!A.value)return;const E=Array.from(A.value.querySelectorAll(g));if(E.length===0){I.preventDefault(),A.value.focus();return}const K=E[0],D=E.at(-1);!K||!D||(I.shiftKey&&(document.activeElement===K||document.activeElement===A.value)?(I.preventDefault(),D.focus()):!I.shiftKey&&(document.activeElement===D||!A.value.contains(document.activeElement))&&(I.preventDefault(),K.focus()))}async function q(){M.value=void 0,await C.value?.reset()}return ye(()=>R.open,async I=>{if(I){w=document.activeElement instanceof HTMLElement?document.activeElement:null,b=document.body.style.overflow,document.body.style.overflow="hidden",document.addEventListener("keydown",ee),await _e(),A.value?.focus();return}document.removeEventListener("keydown",ee),document.body.style.overflow=b,w?.focus(),w=null}),Ca(()=>{document.removeEventListener("keydown",ee),R.open&&(document.body.style.overflow=b)}),c({reset:q}),(I,E)=>{const K=nt,D=tt;return r(),Y(jt,{to:"body"},[x(me,{name:"signup-recovery-modal"},{default:j(()=>[u.open?(r(),m("div",{key:0,class:"signup-recovery-modal",role:"presentation",onMousedown:Ke(oe,["self"])},[s("section",{ref_key:"dialog",ref:A,class:"signup-recovery-modal__dialog",role:"dialog","aria-modal":"true","aria-labelledby":"signup-recovery-title","aria-describedby":"signup-recovery-description",tabindex:"-1"},[s("button",{type:"button",class:"signup-recovery-modal__close","aria-label":a(S)("page.auth.signup-recovery-close"),disabled:u.loading,onClick:oe},[...E[2]||(E[2]=[s("span",{"aria-hidden":"true"},"×",-1)])],8,pn),s("div",vn,[s("h2",fn,v(a(S)("page.auth.signup-recovery-title")),1),s("p",gn,v(a(S)("page.auth.signup-recovery-description")),1)]),x(K,{ref_key:"turnstile",ref:C,modelValue:M.value,"onUpdate:modelValue":E[0]||(E[0]=N=>M.value=N),context:"login"},null,8,["modelValue"]),u.error?(r(),m("p",hn,v(u.error),1)):y("",!0),x(D,{id:"signup_recovery_submit",variant:"orange",type:"button",disabled:u.loading||!M.value,"is-load":u.loading,onClick:E[1]||(E[1]=N=>l("submit"))},{default:j(()=>[ne(v(u.loading?a(S)("page.auth.signup-recovery-signing-in"):a(S)("page.auth.signup-recovery-continue")),1)]),_:1},8,["disabled","is-load"])],512)],32)):y("",!0)]),_:1})])}}}),_n=Object.assign(Ea(yn,[["__scopeId","data-v-b6d439e5"]]),{__name:"AuthSignupRecoveryCaptchaModal"});function lt(u,c){if(u==="disabled")return{ok:!0,phone:null};if(c==null||typeof c=="string"&&!c.trim())return u==="required"?{ok:!1,co
1de:"PHONE_REQUIRED"}:{ok:!0,phone:null};if(typeof c!="string"||c.length>64||!/^\+[\d\s().-]+$/.test(c.trim()))return{ok:!1,code:"PHONE_INVALID"};const f=ln(c.trim());return!f?.isValid()||f.ext?{ok:!1,code:"PHONE_INVALID"}:{ok:!0,phone:f.number}}const wn={class:"registration-phone"},bn={for:"registration-phone"},kn=ta({__name:"RegistrationPhoneInput",props:_a({required:{type:Boolean}},{modelValue:{required:!0},modelModifiers:{}}),emits:["update:modelValue"],setup(u){const c=u,f=ot(u,"modelValue"),{locale:R,t:l}=Sa(),S={en:"US",ru:"RU",de:"DE",fr:"FR",es:"ES",pt:"PT",zh:"CN"}[R.value]??"US",A=T(()=>{const C=lt(c.required?"required":"optional",f.value);return{valid:C.ok,message:C.ok?"":l(C.code==="PHONE_REQUIRED"?"phone_validation.errors.empty":"page.auth.phone-invalid")}});return(C,w)=>{const b=un;return r(),m("div",wn,[s("label",bn,v(a(l)(u.required?"page.auth.phone-required-label":"page.auth.phone-optional-label")),1),x(b,{id:"registration-phone",modelValue:f.value,"onUpdate:modelValue":w[0]||(w[0]=g=>f.value=g),required:u.required,validation:a(A),"default-country":a(S),"strict-spam-detection":!1,"search-placeholder":a(l)("page.auth.phone-country-search"),"no-results-text":a(l)("page.auth.phone-country-empty"),"select-country-label":a(l)("page.auth.phone-country-select")},null,8,["modelValue","required","validation","default-country","search-placeholder","no-results-text","select-country-label"])])}}}),Sn=Object.assign(Ea(kn,[["__scopeId","data-v-aace71eb"]]),{__name:"AuthRegistrationPhoneInput"}),ka=[{name:"Australia",code:"AU"},{name:"Austria",code:"AT"},{name:"Azerbaijan",code:"AZ"},{name:"Aland Islands",code:"AX"},{name:"Albania",code:"AL"},{name:"Algeria",code:"DZ"},{name:"Anguilla",code:"AI"},{name:"Angola",code:"AO"},{name:"Andorra",code:"AD"},{name:"Argentina",code:"AR"},{name:"Armenia",code:"AM"},{name:"Aruba",code:"AW"},{name:"Afghanistan",code:"AF"},{name:"Bahamas",code:"BS"},{name:"Bangladesh",code:"BD"},{name:"Barbados",code:"BB"},{name:"Bahrain",code:"BH"},{name:"Belarus",code:"BY"},{name:"Belize",code:"BZ"},{name:"Belgium",code:"BE"},{name:"Benin",code:"BJ"},{name:"Bulgaria",code:"BG"},{name:"Bolivia",code:"BO"},{name:"Botswana",code:"BW"},{name:"Brazil",code:"BR"},{name:"Brunei Darussalam",code:"BN"},{name:"Burundi",code:"BI"},{name:"Bhutan",code:"BT"},{name:"Vatican City",code:"VA"},{name:"United Kingdom",code:"GB"},{name:"Hungary",code:"HU"},{name:"Venezuela",code:"VE"},{name:"Timor, East",code:"TL"},{name:"Viet Nam",code:"VN"},{name:"Gabon",code:"GA"},{name:"Haiti",code:"HT"},{name:"Gambia",code:"GM"},{name:"Ghana",code:"GH"},{name:"Guadeloupe",code:"GP"},{name:"Guatemala",code:"GT"},{name:"Guinea",code:"GN"},{name:"Guinea-Bissau",code:"GW"},{name:"Germany",code:"DE"},{name:"Gibraltar",code:"GI"},{name:"Hong Kong",code:"HK"},{name:"Honduras",code:"HN"},{name:"Grenada",code:"GD"},{name:"Greenland",code:"GL"},{name:"Greece",code:"GR"},{name:"Georgia",code:"GE"},{name:"Guam",code:"GU"},{name:"Denmark",code:"DK"},{name:"Dominica",code:"DM"},{name:"Dominican Republic",code:"DO"},{name:"Egypt",code:"EG"},{name:"Zambia",code:"ZM"},{name:"Zimbabwe",code:"ZW"},{name:"Israel",code:"IL"},{name:"India",code:"IN"},{name:"Indonesia",code:"ID"},{name:"Jordan",code:"JO"},{name:"Iraq",code:"IQ"},{name:"Iran",code:"IR"},{name:"Ireland",code:"IE"},{name:"Iceland",code:"IS"},{name:"Spain",code:"ES"},{name:"Italy",code:"IT"},{name:"Yemen",code:"YE"},{name:"Kazakhstan",code:"KZ"},{name:"Cambodia",code:"KH"},{name:"Cameroon",code:"CM"},{name:"Canada",code:"CA"},{name:"Qatar",code:"QA"},{name:"Kenya",code:"KE"},{name:"Cyprus",code:"CY"},{name:"Kyrgyzstan",code:"KG"},{name:"Kiribati",code:"KI"},{name:"China",code:"CN"},{name:"Colombia",code:"CO"},{name:"Korea, D.P.R.",code:"KP"},{name:"Korea",code:"KR"},{name:"Costa Rica",code:"CR"},{name:"Cote d'Ivoire",code:"CI"},{name:"Cuba",code:"CU"},{name:"Kuwait",code:"KW"},{name:"Lao P.D.R.",code:"LA"},{name:"Latvia",code:"LV"},{name:"Lesotho",code:"LS"},{name:"Liberia",code:"LR"},{name:"Lebanon",code:"LB"},{name:"Libyan Arab Jamahiriya",code:"LY"},{name:"Lithuania",code:"LT"},{name:"Liechtenstein",code:"LI"},{name:"Luxembourg",code:"LU"},{name:"Mauritius",code:"MU"},{name:"Mauritania",code:"MR"},{name:"Madagascar",code:"MG"},{name:"Macedonia",code:"MK"},{name:"Malawi",code:"MW"},{name:"Malaysia",code:"MY"},{name:"Mali",code:"ML"},{name:"Maldives",code:"MV"},{name:"Malta",code:"MT"},{name:"Morocco",code:"MA"},{name:"Mexico",code:"MX"},{name:"Mozambique",code:"MZ"},{name:"Moldova",code:"MD"},{name:"Monaco",code:"MC"},{name:"Mongolia",code:"MN"},{name:"Namibia",code:"NA"},{name:"Nepal",code:"NP"},{name:"Niger",code:"NE"},{name:"Nigeria",code:"NG"},{name:"Netherlands",code:"NL"},{name:"Nicaragua",code:"NI"},{name:"New Zealand",code:"NZ"},{name:"Norway",code:"NO"},{name:"United Arab Emirates",code:"AE"},{name:"Oman",code:"OM"},{name:"Pakistan",code:"PK"},{name:"Panama",code:"PA"},{name:"Paraguay",code:"PY"},{name:"Peru",code:"PE"},{name:"Poland",code:"PL"},{name:"Portugal",code:"PT"},{name:"Russia",code:"RU"},{name:"Romania",code:"RO"},{name:"San Marino",code:"SM"},{name:"Saudi Arabia",code:"SA"},{name:"Senegal",code:"SN"},{name:"Serbia",code:"RS"},{name:"Singapore",code:"SG"},{name:"Syrian Arab Republic",code:"SY"},{name:"Slovakia",code:"SK"},{name:"Slovenia",code:"SI"},{name:"Somalia",code:"SO"},{name:"Sudan",code:"SD"},{name:"United States of America (USA)",code:"US"},{name:"Tajikistan",code:"TJ"},{name:"Thailand",code:"TH"},{name:"Tanzania",code:"TZ"},{name:"Togo",code:"TG"},{name:"Tunisia",code:"TN"},{name:"Turkmenistan",code:"TM"},{name:"Turkey",code:"TR"},{name:"Uganda",code:"UG"},{name:"Uzbekistan",code:"UZ"},{name:"Ukraine",code:"UA"},{name:"Uruguay",code:"UY"},{name:"Micronesia",code:"FM"},{name:"Fiji",code:"FJ"},{name:"Philippines",code:"PH"},{name:"Finland",code:"FI"},{name:"France",code:"FR"},{name:"Croatia",code:"HR"},{name:"Chad",code:"TD"},{name:"Montenegro",code:"ME"},{name:"Czech Republic",code:"CZ"},{name:"Chile",code:"CL"},{name:"Switzerland",code:"CH"},{name:"Sweden",code:"SE"},{name:"Sri Lanka",code:"LK"},{name:"Ecuador",code:"EC"},{name:"Eritrea",code:"ER"},{name:"Estonia",code:"EE"},{name:"Ethiopia",code:"ET"},{name:"South Africa",code:"ZA"},{name:"Jamaica",code:"JM"},{name:"Japan",code:"JP"},{name:"Myanmar",code:"MM"},{name:"Burkina-Faso",code:"BF"},{name:"Swaziland",code:"SZ"},{name:"El Salvador",code:"SV"},{name:"French Polynesia",code:"PF"},{name:"Papua New Guinea",code:"PG"},{name:"Sierra Leone",code:"SL"},{name:"American Samoa",code:"AS"},{name:"Antarctica",code:"AQ"},{name:"Antigua and Barbuda",code:"AG"},{name:"Bermuda",code:"BM"},{name:"Bonaire, Sint Eustatius and Saba",code:"BQ"},{name:"Bosnia and Herzegovina",code:"BA"},{name:"Bouvet Island",code:"BV"},{name:"British Indian Ocean Territory",code:"IO"},{name:"Cabo Verde",code:"CV"},{name:"Cayman Islands",code:"KY"},{name:"Central African Republic",code:"CF"},{name:"Christmas Island",code:"CX"},{name:"Cocos (Keeling) Islands",code:"CC"},{name:"Comoros",code:"KM"},{name:"Congo",code:"CG"},{name:"Congo (Democratic Republic of the)",code:"CD"},{name:"Cook Islands",code:"CK"},{name:"Curaçao",code:"CW"},{name:"Djibouti",code:"DJ"},{name:"Equatorial Guinea",code:"GQ"},{name:"Falkland Islands (Malvinas)",code:"FK"},{name:"Faroe Islands",code:"FO"},{name:"French Guiana",code:"GF"},{name:"French Southern Territories",code:"TF"},{name:"Guernsey",code:"GG"},{name:"Guyana",code:"GY"},{name:"Heard Island and McDonald Islands",code:"HM"},{name:"Isle of Man",code:"IM"},{name:"Jersey",code:"JE"},{name:"Macao",code:"MO"},{name:"Marshall Islands",code:"MH"},{name:"Martinique",code:"MQ"},{name:"Mayotte",code:"YT"},{name:"Montserrat",code:"MS"},{name:"Nauru",code:"NR"},{name:"New Caledonia",code:"NC"},{name:"Niue",code:"NU"},{name:"Norfolk Island",code:"NF"},{name:"Northern Mariana Islands",code:"MP"},{name:"Palau",code:"PW"},{name:"Palestine, State of",code:"PS"},{name:"Pitcairn",code:"PN"},{name:"Puerto Rico",code:"PR"},{name:"Republic of Kosovo",code:"XK"},{name:"Réunion",code:"RE"},{name:"Rwanda",code:"RW"},{name:"Saint Barthélemy",code:"BL"},{name:"Saint Helena, Ascension and Tristan da Cunha",code:"SH"},{name:"Saint Kitts and Nevis",code:"KN"},{name:"Saint Lucia",code:"LC"},{name:"Saint Martin (French part)",code:"MF"},{name:"Saint Pierre and Miquelon",code:"PM"},{name:"Saint Vincent and the Grenadines",code:"VC"},{name:"Samoa",code:"WS"},{name:"Sao Tome and Principe",code:"ST"},{name:"Seychelles",code:"SC"},{name:"Sint Maarten (Dutch part)",code:"SX"},{name:"Solomon Islands",code:"SB"},{name:"South Georgia and the South Sandwich Islands",code:"GS"},{name:"South Sudan",code:"SS"},{name:"Suriname",code:"SR"},{name:"Svalbard and Jan Mayen",code:"SJ"},{name:"Taiwan, Province of China",code:"TW"},{name:"Tokelau",code:"TK"},{name:"Tonga",code:"TO"},{name:"Trinidad and Tobago",code:"TT"},{name:"Turks and Caicos Islands",code:"TC"},{name:"Tuvalu",code:"TV"},{name:"United States Minor Outlying Islands",code:"UM"},{name:"Vanuatu",code:"VU"},{name:"Virgin Islands (British)",code:"VG"},{name:"Virgin Islands (U.S.)",code:"VI"},{name:"Wallis and Futuna",code:"WF"},{name:"Western Sahara",code:"EH"}];function Cn(u){if(!u.trim())return ka;const c=u.toLowerCase().trim();return ka.map(f=>{const R=f.name.toLowerCase(),l=f.code.toLowerCase();let M=Number.POSITIVE_INFINITY;return l===c?M=0:R===c?M=1:l.startsWith(c)?M=2:R.startsWith(c)?M=3:R.includes(c)?M=4:l.includes(c)&&(M=5),{country:f,rank:M}}).filter(({rank:f})=>Number.isFinite(f)).sort((f,R)=>f.rank-R.rank||f.country.name.localeCompare(R.country.name)).map(({country:f})=>f)}const En=["placeholder"],Tn={key:0,class:"country-dropdown"},Mn={key:0,class:"country-dropdown-empty"},An=["onClick","onMouseenter"],Pn=["innerHTML"],Rn={class:"country-code"},In=ta({__name:"CountrySelect",props:{modelValue:{default:""},placeholder:{default:"Select your country"}},emits:["update:modelValue"],setup(u,{emit:c}){const f=u,R=c,l=d(null),M=d(null),S=d(!1),A=d(""),C=d(-1),w=T(()=>Cn(A.value));ye(()=>f.modelValue,_=>{_?A.value=_:A.value=""},{immediate:!0});function b(){S.value=!0,C.value=-1,_e(()=>{M.value&&!f.modelValue&&M.value.select()})}function g(_){setTimeout(()=>{const B=_.relatedTarget;l.value?.contains(B)||(S.value=!1,f.modelValue?A.value=f.modelValue:A.value="")},200)}function oe(){S.value=!S.value,S.value&&M.value?.focus()}function ee(){S.value=!0,C.value=-1}function q(_){if(!S.value&&(_.key==="Enter"||_.key==="ArrowDown")){_.preventDefault(),S.value=!0;return}if(_.key==="ArrowDown")_.preventDefault(),C.value=Math.min(C.value+1,w.value.length-1),I();else if(_.key==="ArrowUp")_.preventDefault(),C.value=Math.max(C.value-1,-1),I();else if(_.key==="Enter"){_.preventDefault();const B=w.value[C.value];if(C.value>=0&&B)E(B);else if(w.value.length===1){const h=w.value[0];h&&E(h)}}else _.key==="Escape"&&(S.value=!1,M.value?.blur())}function I(){if(C.value>=0){const _=l.value?.querySelector(".country-dropdown"),B=_?.children[C.value];B&&_&&B.scrollIntoView({block:"nearest",behavior:"smooth"})}}function E(_){R("update:modelValue",_.name),A.value=_.name,S.value=!1,M.value?.blur()}function K(_){l.value&&!l.value.contains(_.target)&&(S.value=!1)}
1function D(){R("update:modelValue",""),A.value="",S.value=!0,M.value?.focus(),C.value=-1}function N(_){if(!A.value.trim())return _;const B=A.value.trim(),h=new RegExp(`(${B.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")})`,"gi");return _.replace(h,"<mark>$1</mark>")}return st(()=>{document.addEventListener("click",K)}),Ca(()=>{document.removeEventListener("click",K)}),(_,B)=>(r(),m("div",{class:"country-select-wrapper",ref_key:"wrapperRef",ref:l},[s("div",{class:W(["country-select-input",{"is-open":S.value,"has-value":u.modelValue}])},[he(s("input",{ref_key:"inputRef",ref:M,"onUpdate:modelValue":B[0]||(B[0]=h=>A.value=h),type:"text",placeholder:u.placeholder,class:"country-input",onFocus:b,onBlur:g,onKeydown:q,onInput:ee},null,40,En),[[ea,A.value]]),A.value||u.modelValue?(r(),m("button",{key:0,type:"button",class:"clear-icon",onMousedown:Ke(D,["prevent","stop"])},[...B[1]||(B[1]=[s("svg",{width:"14",height:"14",viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg"},[s("path",{d:"M10.5 3.5L3.5 10.5M3.5 3.5L10.5 10.5",stroke:"currentColor","stroke-width":"1.5","stroke-linecap":"round","stroke-linejoin":"round"})],-1)])],32)):y("",!0),s("div",{class:"country-select-icon",onClick:oe},[...B[2]||(B[2]=[s("svg",{width:"12",height:"8",viewBox:"0 0 12 8",fill:"none",xmlns:"http://www.w3.org/2000/svg"},[s("path",{d:"M1 1L6 6L11 1",stroke:"currentColor","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round"})],-1)])])],2),x(me,{name:"dropdown"},{default:j(()=>[S.value?(r(),m("div",Tn,[w.value.length===0?(r(),m("div",Mn,"No countries found")):y("",!0),(r(!0),m(aa,null,wa(w.value,(h,U)=>(r(),m("div",{key:h.code,class:W(["country-option",{"is-selected":h.name===u.modelValue,"is-highlighted":U===C.value}]),onClick:se=>E(h),onMouseenter:se=>C.value=U},[s("span",{class:"country-name",innerHTML:N(h.name)},null,8,Pn),s("span",Rn,v(h.code),1)],42,An))),128))])):y("",!0)]),_:1})],512))}}),xn=Object.assign(Ea(In,[["__scopeId","data-v-fa09b80f"]]),{__name:"CountrySelect"}),Dn=["@mailinator.com","@temp-mail.org","@guerrillamail.com","@10minutemail.com","@throwawaymail.com","@trashmail.com","@yopmail.com","@disposable-mail.com","@tempmail.net","@maildrop.cc","@mailnesia.com","@mohmal.com","@shitmail.me","@tempmail.co","@tempmail.lol","@incognitomail.co","@snapmail.cc","@33mail.com","@minuteinbox.com","@emailondeck.com"];function at(u){if(!u||typeof u!="string")return!1;const c=u.toLowerCase();return Dn.some(f=>c.endsWith(f))}function Vn(u){if(!u||typeof u!="object")return;const c=Reflect.get(u,"data");if(!c||typeof c!="object")return;const f=Reflect.get(c,"ambiguous");if(typeof f=="boolean")return f;const R=Reflect.get(c,"data"),l=R&&typeof R=="object"?Reflect.get(R,"ambiguous"):void 0;return typeof l=="boolean"?l:void 0}function Bn(u){const c=Vn(u);if(c!==void 0)return c;if(!u||typeof u!="object")return!1;const f=Reflect.get(u,"statusCode")??Reflect.get(u,"status");return f===520||typeof f=="number"&&f>=500&&f<600&&f!==501}const ut=dn(["disabled","optional","required"]),Ln=it({phoneMode:ut,version:rt().int().positive(),updatedAt:cn().datetime()}).strict();it({phoneMode:ut,expectedVersion:rt().int().positive()}).strict();const Nn=()=>window.innerWidth<768?"mobile-web":"web",Gn=u=>u?.startsWith("REF-")||u?.startsWith("AFF_"),Un=u=>{const c={maxAge:31104e3,domain:".ecos.am"}
1,f=a(G("ref",c)),R=a(G("loyalty_ref",c)),l=R||(Gn(f)?f:R),M=a(G("affise_1",c)),S=a(G("affise_2",c)),A=a(G("affise_3",c)),C=zt(),w=C.ga_client_id||a(G("_ga",c))?.split(".").slice(-2).join("."),b=C.ga_session_id,g=w,oe=a(G("_ym_uid",c)),ee=a(Zt()),q=u.email,I=u.password,E=u.confirmPassword,K=u.terms,D=Nn(),N=a(G("first_url",c)),_=a(G("external_url",c)),B=a(G("internal_url",c)),h=a(G("utm_source",c)),U=a(G("utm_medium",c)),se=a(G("utm_content",c)),pe=a(G("utm_campaign",c)),ue=a(G("utm_term",c)),we=a(G("carrotquest_uid",c));let ce=[];return ce=[h?`utm_source=${h}`:void 0,U?`utm_medium=${U}`:void 0,se?`utm_content=${se}`:void 0,pe?`utm_campaign=${pe}`:void 0,ue?`utm_term=${ue}`:void 0],{password:I,password_confirmation:E,referralCode:f,loyalty_ref:l,affisePartnerId:M,affiseOfferId:S,affiseClickId:A,ga_cid_token:w,ya_cid_token:oe,lang:ee,email:q,terms:K,channel:D,firstTrafficSource:N,external_url:_,innerTrafficSource:B,utm:ce,carrotquest_uid:we,ga_client_id:g,ga_session_id:b,...ba()}},Fn={class:"reg-group"},On={class:"reg-block"},$n={class:"reg-block__top"},Kn={class:"reg-block__count"},qn={class:"reg"},Hn={class:"title-group"},Wn={class:"reg-block__logo-group"},jn={href:"https://ecos.am/en/"},zn={class:"title"},Zn={class:"registration-progress"},Yn={class:"progress-steps"},Jn={class:"progress-step-circle"},Xn={key:0,class:"progress-step-check"},Qn={key:1},eo={style:{display:"flex","align-items":"center",gap:"12px","justify-content":"center"}},ao=["disabled"],to={class:"progress-text"},no={key:0,class:"feedback-message success-message",role:"status","aria-live":"polite"},oo={key:0,class:"feedback-message error-message",role:"alert"},so={key:1,class:"registration-sso-primary"},io={key:2,class:"registration-divider"},ro={key:3,class:"skeleton-loader"},lo={key:4,class:"input"},uo={class:"input-with-copy"},co=["placeholder"],mo={key:0,class:"email-error"},po={key:1,class:"email-suggestion"},vo={key:6,class:"code-expiry-info",style:{"margin-top":"8px"}},fo={key:0,style:{"margin-left":"8px",opacity:"0.8"}},go={key:7,class:"code-expiry-info",style:{"margin-top":"8px"}},ho={style:{position:"relative",width:"100%"}},yo=["data-tooltip"],_o={class:"reg-block__account-accept"},wo={class:"registration-sso-primary__terms"},bo={href:"https://ecos.am/en/terms-of-use",target:"_blank"},ko={href:"https://ecos.am/en/privacy-policy",target:"_blank"},So={class:"reg-block__reg-account-group"},Co={class:"reg-block__reg-account"},Eo={class:"subtitle"},To={key:0,class:"hint-box spam-hint"},Mo={class:"input"},Ao={class:"code-inputs"},Po=["onUpdate:modelValue","onInput","onKeydown"],Ro={class:"resend-section"},Io=["disabled"],xo={key:0},Do={key:1},Vo={key:0,style:{margin:"20px 0",display:"flex","justify-content":"center"}},Bo={key:2,style:{"text-align":"center","margin-top":"16px"}},Lo={key:0,class:"skeleton-loader"},No={class:"input"},Go={class:"password-input-wrapper"},Uo=["placeholder","type"],Fo={key:0,class:"password-strength-container"},Oo={class:"password-strength-bar"},$o={key:1,class:"password-hints"},Ko={key:0,class:"hint-text"},qo={key:1,class:"hint-text"},Ho={key:2,class:"hint-text warning"},Wo={key:3,class:"hint-text warning"},jo={key:2,class:"password-hints"},zo={key:3,class:"password-validation"},Zo={class:"requirement-icon"},Yo={class:"requirement-icon"},Jo={class:"requirement-icon"},Xo={class:"input"},Qo={class:"password-input-wrapper"},es=["placeholder","type"],as={key:0},ts={key:0,class:"email-error"},ns={class:"input"},os={key:0,role:"status"},ss={key:1,role:"alert"},is={key:2,class:"input"},rs={style:{position:"relative",width:"100%"}},ls=["data-tooltip"],us={key:3,class:"code-expiry-info",style:{"margin-top":"8px","text-align":"center"}},ya="/dashboard/trial-mining?activateTrial=1",Qe=!0,cs=3e4,ds=5e3,ms=5e3,ps=60,vs=300,xs=ta({__name:"registration",setup(u){const c=Yt(),f=Jt(),R=Xt(),{t:l}=Sa(),M=nn(),S=!!M.public.googleClientId,A=t=>t.startsWith("REF-")||t.startsWith("AFF_");Qt({title:"Registration",meta:[{name:"description",content:"registration page"}]});function C(t){if(!t||typeof t!="object")return{};const e=Reflect.get(t,"statusCode"),o=Reflect.get(t,"status"),n=Reflect.get(t,"message"),p=Reflect.get(t,"data");return{...typeof e=="number"?{statusCode:e}:{},...typeof o=="number"?{status:o}:{},...typeof n=="string"?{message:n}:{},...p&&typeof p=="object"?{data:p}:{}}}function w(t){return Array.isArray(t)?t[0]??"":t??""}const b=d("email"),g=d(""),oe=T(()=>g.value),ee=d(null),q=d(void 0),I=d(void 0),E=d(void 0),K=d(""),D=d(["","","","","",""]),N=d(""),_=d([]),B=d(null),h=d(""),U=d(""),se=d(!1),pe=d(!1),ue=d(!1),we=d(!1),ce=d(""),qe=d(""),{data:Pe,error:Ta,status:ct,refresh:Ma}=en("/api/auth/registration-settings",{server:!1,transform:t=>Ln.parse(t)},"$Og4E9sEqr4"),na=T(()=>Pe.value?lt(Pe.value.phoneMode,qe.value):null),Aa=T(()=>!!ce.value),Pa=T(()=>ka.find(e=>e.name===ce.value)?.code||""),J=d(!1),He=d(!1),ae=d(!1),be=d(!1),X=T(()=>J.value||He.value||ae.value||be.value),We=d(!1),Re=d(""),oa=d(null),ve=d(""),ke=d(""),Ie=d(Date.now()),sa=d(0),Se=d(0),Ra=d(0),F=d(0),Ce=d(""),Ia=d(!1),fe=d(""),ie=d(""),xe=d(!1),De=d(!1),Ve=d(null),ia=d(0),ra=d(0);let xa=Date.now(),la=null,H=null,Be=null,Da=!1;async function Va(t,e){if(!P.value||Z&&(!We.value||!E.value))return!1;try{const o=await Ae({"X-CSRF-TOKEN":P.value});Z&&E.value&&(o["X-Captcha"]=E.value);const n=await $fetch("/api/auth/login-recovery",{method:"POST",headers:o,body:{email:t,password:e}});return!n?.ok||!n.authKey?!1:(ha(n.authKey,n.sessionToken),await Ba(),window.location.replace(ya),!0)}catch(o){return $e(o,"cp.registration.recovery-login"),!1}}function dt(t,e){oa.value={email:t,password:e},E.value=void 0,Re.value="",We.value=!0,re()}function mt(){be.value||(We.value=!1,oa.value=null,E.value=void 0,Re.value="",i(l("page.auth.signup-recovery-cancelled"),8e3))}async function pt(){const t=oa.value;if(!(!t||be.value||Z&&!E.value)){be.value=!0,Re.value="";try{await Va(t.email,t.password)||(Re.value=l("page.auth.signup-recovery-error"),E.value=void 0,await Fa.value?.reset())}finally{be.value=!1}}}async function Ba(){if(Da)return;Da=!0;const t=await Xa.getGaIdentifiers();await Xa.eventAndWait("registration",{method:"email",page_location:window.location.href,page_path:window.location.pathname,...t.ga_client_id?{client_id:t.ga_client_id,ga_client_id:t.ga_client_id}:{},...t.ga_session_id?{session_id:t.ga_session_id,ga_session_id:t.ga_session_id}:{}},{timeoutMs:1500})}const La=S?rn({onSuccess:async t=>{try{await de();const e=P.value;if(!e)return i("Security init failed. Try again.");const o=await $fetch("/api/auth/google-auth",{method:"POST",headers:await Ae({"X-CSRF-TOKEN":e}),body:{token:t.access_token,terms:Qe}});o&&o.ok&&o.authKey?(ha(o.authKey,o.sessionToken),await R.loadUser(),window.location.replace(ya)):i("Google auth failed")}catch{i("Google auth error")}},onError:t=>i("Google auth error")}):null,Na=T(()=>!!La?.isReady.value),vt=()=>{Na.value&&!X.value&&La?.login()},ua=M.public,Le=ua.ddosProtectEnabled,z=ua.powProtectEnabled===!0,Z=Kt(ua.captchaEnabled),P=d(null),L=d(null),Ga=d(),Ua=d(),Fa=d(null);async function ca(){q.value=void 0,await Ga.value?.reset()}async function ft(){I.value=void 0,await Ua.value?.reset()}async function de(t=!1){if(!(!t&&P.value&&(!z||L.value&&Date.now()<L.value.expAt)))try{const e=await $fetch("/api/auth/session",{headers:await Ae()});if(!e||!e.csrf||z&&!e.pow){$e(new Error("Registration session endpoint returned an invali
1d response"),"cp.registration.session-contract"),i("Security init failed");return}P.value=e.csrf,L.value=z?e.pow??null:null}catch(e){$e(e,"cp.registration.session"),i("Security init failed")}}function gt(t){const e=t;return/pow expired/i.test(e?.statusMessage||"")||/pow expired/i.test(e?.message||"")||/pow expired/i.test(e?.data?.message||"")}async function Oa(t=cs){return z?(await de(),!P.value||!L.value?!1:L.value.expAt-Date.now()>t?!0:(P.value=null,L.value=null,await de(!0),!!P.value&&!!L.value)):(await de(),!!P.value)}async function ht(){if(!z)return null;const t=await Oa(),e=L.value;if(!t||!e)return null;let o=await $a(e.challenge,e.difficulty);if(Date.now()<=e.expAt-ds)return o;P.value=null,L.value=null;const n=await Oa(),p=L.value;return!n||!p?null:(o=await $a(p.challenge,p.difficulty),o)}function yt(t){const e=new TextEncoder().encode(t);return crypto.subtle.digest("SHA-256",e).then(o=>Array.from(new Uint8Array(o)).map(p=>p.toString(16).padStart(2,"0")).join(""))}async function $a(t,e){const o=Math.floor(e/4),n=e%4;Ra.value=0,Se.value=0;const p=Math.pow(2,e),V=Date.now();let O=0;for(;;){const Q=await yt(t+String(O));if(Q.startsWith("0".repeat(o))&&(n===0||parseInt(Q[o]??"0",16)<1<<4-n))return Se.value=100,fe.value="",String(O);if(O++,Ra.value=O,O%1e3===0){Se.value=Math.min(95,O/p*100);const $=Date.now()-V,Te=O/$,Oe=(p-O)/Te;Oe<1e3?fe.value="~1 second":Oe<5e3?fe.value=`~${Math.ceil(Oe/1e3)} seconds`:fe.value="",await new Promise(ga=>setTimeout(ga,0))}}}const Ne=T(()=>!(!g.value||!/^[^\s@]+@[^\s@]+\.[^\s@]{2,}$/.test(g.value)||at(g.value))),Ka=T(()=>!g.value||!De.value?"":/^[^\s@]+@[^\s@]+\.[^\s@]{2,}$/.test(g.value)?at(g.value)?"This email provider is not supported. Please use a permanent email address.":"":l("pages.sign_up.error")),je=T(()=>h.value.length>=8),ze=T(()=>/[A-Z]/.test(h.value)),Ze=T(()=>/\d/.test(h.value)),qa=T(()=>je.value&&ze.value&&Ze.value),da=T(()=>!!U.value&&h.value===U.value),Ee=T(()=>{const t=sa.value-Ie.value;return Math.max(0,Math.ceil(t/1e3))}),Ha=T(()=>Ee.value>0?l("page.auth.registration-retry-button",{seconds:Ee.value}):l("pages.sign_up.continue")),ma=T(()=>{const t=!Z||!!q.value;return Ne.value&&t&&Ee.value===0&&!X.value}),Ye=T(()=>qa.value&&da.value&&Aa.value&&!X.value&&!Ta.value&&na.value?.ok===!0),Wa=T(()=>X.value?"Processing...":Ee.value>0?l("page.auth.registration-retry-button",{seconds:Ee.value}):g.value?Ne.value?Z&&!q.value?"Complete captcha":"":"Fix email format":"Enter your email"),ja=T(()=>X.value?"Processing...":h.value?qa.value?da.value?Aa.value?"":"Select your country":"Passwords must match":"Password doesn't meet requirements":"Enter password"),_t=an(c.query.redirect);function i(t,e=3e3){ve.value=t,ke.value="",Ct(),H&&clearTimeout(H),H=setTimeout(()=>{ve.value=""},e)}function Je(t){ke.value=t,ve.value="",H&&clearTimeout(H),H=setTimeout(()=>{ke.value=""},3e3)}function re(){ve.value="",ke.value="",H&&(clearTimeout(H),H=null)}function pa(){if(typeof window>"u")return;const t={email:g.value,step:b.value,codeSentAt:Ge.value,codeExpiresAt:ge.value,timestamp:Date.now()};localStorage.setItem("registration_progress",JSON.stringify(t))}function wt(t){if(!t){F.value=0,Ce.value="";return}let e=0;t.length>=8&&(e+=20),t.length>=12&&(e+=15),t.length>=16&&(e+=15),/[a-z]/.test(t)&&(e+=10),/[A-Z]/.test(t)&&(e+=15),/[0-9]/.test(t)&&(e+=15),/[^a-zA-Z0-9]/.test(t)&&(e+=20),new Set(t).size>t.length*.7&&(e+=10),/password|123456|qwerty/i.test(t)&&(e-=30),g.value&&t.toLowerCase().includes((g.value.split("@")[0]??"").toLowerCase())&&(e-=20),(/^[a-z]+$/.test(t)||/^[A-Z]+$/.test(t)||/^[0-9]+$/.test(t))&&(e-=20),e=Math.max(0,Math.min(100,e)),F.value=e,e<30?Ce.value="Weak":e<60?Ce.value="Medium":e<85?Ce.value="Strong":Ce.value="Very Strong"}function bt(t){const e=["gmail.com","yahoo.com","outlook.com","hotmail.com","icloud.com"],o=t.split("@");if(o.length!==2)return;const n=(o[1]??"").toLowerCase();for(const p of e){if(n===p){ie.value="";return}if(kt(n,p)<=2&&n.length>3){ie.value=`Did you mean @${p}?`;return}}ie.value=""}function kt(t,e){const o=[];for(let n=0;n<=e.length;n++)o[n]=[n];for(let n=0;n<=t.length;n++)o[0][n]=n;for(let n=1;n<=e.length;n++)for(let p=1;p<=t.length;p++)e.charAt(n-1)===t.charAt(p-1)?o[n][p]=o[n-1][p-1]:o[n][p]=Math.min(o[n-1][p-1]+1,o[n][p-1]+1,o[n-1][p]+1);return o[e.length][t.length]}function St(){if(!ie.value)return;const t=ie.value.match(/@([\w.]+)/)?.[1];if(t){const e=g.value.split("@")[0]??"";g.value=`${e}@${t}`,ie.value=""}}function Ct(){xe.value=!0,setTimeout(()=>{xe.value=!1},500)}function Et(){const t=Date.now();if(ra.value>0){const e=t-ra.value;ia.value=e}ra.value=t}const Tt=T(()=>ia.value>0&&ia.value<200?300:800);async function va(t){const e=t.clipboardData?.getData("text");if(!e)return;const o=/([^|]+)\s*\|\s*([^|]+)\s*\|\s*([^|]+)/,n=e.match(o);if(n){t.preventDefault();const p=n[1]??"",V=n[2]??"",O=n[3]??"";if(b.value==="email"&&p.includes("@"))g.value=p.trim();else if(b.value==="code"&&/^\d{6}$/.test(V.trim())){const Q=V.trim().split("");D.value=Q,N.value=V.trim()}else b.value==="password"&&(h.value=O.trim(),U.value=O.trim())}}function Mt(t){const e=Math.floor(t/60),o=t%60;return`${e}:${o.toString().padStart(2,"0")}`}const Ge=d(null),ge=d(null),Ue=T(()=>{if(!Ge.value)return 0;const t=ms-(Ie.value-Ge.value);return Math.max(0,Math.ceil(t/1e3))}),fa=T(()=>Ue.value===0),Xe=T(()=>{if(!ge.value)return 0;const t=ge.value-Ie.value;return Math.max(0,Math.ceil(t/1e3))});function At(t,e){const n=e.target.value.replace(/[^a-zA-Z0-9]/g,"").toUpperCase();D.value[t]=n.slice(-1)||"",n&&t<5&&_.value[t+1]?.focus(),N.value=D.value.join(""),re()}function Pt(t,e){e.key==="Backspace"&&!D.value[t]&&t>0?_.value[t-1]?.focus():e.key==="ArrowLeft"&&t>0?(e.preventDefault(),_.value[t-1]?.focus()):e.key==="ArrowRight"&&t<5&&(e.preventDefault(),_.value[t+1]?.focus())}function Rt(t){t.preventDefault();const e=t.clipboardData?.getData("text").replace(/[^a-zA-Z0-9]/g,"").toUpperCase()||"";if(e.length>=6){for(let o=0;o<6;o++)D.value[o]=e[o]||"";N.value=D.value.join(""),_.value[5]?.focus(),re()}}function It(){Et(),re(),De.value=!1,Ve.value&&clearTimeout(Ve.value),Ve.value=setTimeout(()=>{De.value=!0},Tt.value)}
1async function xt(){re(),b.value==="code"?(b.value="email",N.value="",D.value=["","","","","",""]):b.value==="password"&&(b.value="code",h.value="",U.value="",ue.value=!1,we.value=!1,_e(()=>_.value[0]?.focus()))}async function Dt(){if(!(!Ne.value||Ee.value>0||Z&&!q.value)){if(Le&&K.value){i("Bot detected");return}J.value=!0,re();try{const t=Date.now()-xa;let e=null;const o=z?2:1;for(let n=0;n<o;n++){let p=null;if(z){if(p=await ht(),!P.value||!L.value||!p){console.error("[SUBMIT] No CSRF or valid PoW after refresh"),i("Security init failed. Try again.");return}}else if(await de(),!P.value){console.error("[SUBMIT] No CSRF token after session refresh"),i("Security init failed. Try again.");return}try{const V=await Ae({"X-CSRF-TOKEN":P.value});Z&&q.value&&(V["X-Captcha"]=q.value),e=await $fetch("/api/auth/email-code-send",{method:"POST",headers:V,body:{email:g.value,terms:Qe,...Le?{honeypot:K.value,dwellMs:t}:{},...z?{powNonce:p,powChallenge:L.value}:{},...ba()}});break}catch(V){if(P.value=null,L.value=null,z&&n===0&&gt(V)){console.warn("[SUBMIT] PoW expired during submit, retrying with a fresh challenge");continue}throw V}}if(!e||!e.ok){i("Failed to send code"),P.value=null,L.value=null,await ca();return}sa.value=0,await Ja({email:g.value}),P.value=null,L.value=null,Ge.value=Date.now(),ge.value=Date.now()+(e.codeTtlSec?e.codeTtlSec*1e3:5*6e4),Je("Verification code sent. Please check your email."),b.value="code",N.value="",D.value=["","","","","",""],pa(),Be&&clearTimeout(Be),Be=setTimeout(()=>{b.value==="code"&&N.value.length===0&&(Ia.value=!0)},3e4),await _e(),_.value[0]?.focus(),await ca()}catch(t){const e=C(t);if($e(t,"cp.registration.send-code"),e.statusCode===403)P.value=null,L.value=null,e.statusMessage?.includes("CSRF")?i("Security token expired. Please try again."):z&&e.statusMessage?.includes("PoW")?i("Security verification expired. Please try again."):i("Access denied. Please try again.");else if(e.statusCode===429)i("Too many requests. Please wait a minute and try again.");else if(e.statusCode===400)if(Le&&e.statusMessage?.includes("Too fast"))i("Please wait a moment before submitting the form.");else if(z&&(e.statusMessage?.includes("PoW expired")||e.statusMessage?.includes("PoW")))P.value=null,L.value=null,i("Security verification expired. Please try again.");else if(e.statusMessage?.includes("Invalid email"))i("Please enter a valid email address.");else if(Le&&e.statusMessage?.includes("Bot detected"))i("Automated submission detected. Please try again.");else if(e.data?.data?.errors){const o=e.data.data.errors;if(Array.isArray(o)&&o.length>0){const n=o[0];n?.email?i(w(n.email)):i(typeof n=="string"?n:"Validation error. Please check your input.")}else o.email?i(w(o.email)):i("Validation error. Please check your input.")}else if(e.data?.errors){const o=e.data.errors;if(Array.isArray(o)&&o.length>0){const n=o[0];n?.email?i(w(n.email)):i(typeof n=="string"?n:"Validation error. Please check your input.")}else o.email?i(w(o.email)):i("Validation error. Please check your input.")}else e.data?.message?i(e.data.message):i("Invalid request. Please check your input and try again.");else if(e.statusCode!==void 0&&e.statusCode>=500&&e.statusCode<600){const o=e.data?.retry_after??e.data?.data?.retry_after,n=typeof o=="number"&&Number.isFinite(o)&&o>0?Math.min(Math.ceil(o),vs):ps,p=Date.now();Ie.value=p,sa.value=p+n*1e3,i(l("page.auth.registration-temporary-error",{seconds:n}),n*1e3)}else if(e.data?.message)i(e.data.message);else if(e.data?.errors){const o=e.data.errors;if(Array.isArray(o)&&o.length>0){const n=o[0];n?.email?i(w(n.email)):i(typeof n=="string"?n:"Registration error. Please try again.")}else o.email?i(w(o.email)):i("Registration error. Please try again.")}else i("Connection error. Please check your internet and try again.");await ca()}finally{J.value=!1}}}async function Vt(){if(!(!fa.value||X.value)){if(!g.value){i("Email missing");return}if(Z&&!I.value){i("Complete captcha");return}He.value=!0,re();try{if(await de(),!P.value){i("Security init failed");return}const t=await Ae({"X-CSRF-TOKEN":P.value});Z&&I.value&&(t["X-Captcha"]=I.value);const e=await $fetch("/api/auth/email-code-resend",{method:"POST",headers:t,body:{email:g.value,terms:Qe,...ba()}});!e||!e.ok?(P.value=null,L.value=null,i("Resend failed")):(P.value=null,L.value=null,Ge.value=Date.now(),ge.value=Date.now()+(e.codeTtlSec?e.codeTtlSec*1e3:5*6e4),N.value="",D.value=["","","","","",""],Je("New code sent. Please check your email."),pa())}catch(t){const e=C(t);if($e(t,"cp.registration.resend-code"),e.statusCode===403)P.value=null,L.value=null,i("Security token expired. Please try again.");else if(e.statusCode===429)i("Too many resend attempts. Please wait a minute.");else if(e.data?.message)i(e.data.message);else if(e.data?.errors){const o=e.data.errors;o.email?i(w(o.email)):i("Failed to resend code. Please try again.")}else i("Connection error. Please check your internet and try again.")}finally{await ft(),He.value=!1}}}async function za(){if(!(N.value.length!==6||X.value)){if(ge.value&&Date.now()>=ge.value){i("Code has expired. Please request a new one.");return}Je("Code verified successfully."),await new Promise(t=>setTimeout(t,500)),b.value="password",h.value||(h.value="",U.value="",ue.value=!1,we.value=!1),await _e(),B.value?.focus()}}async function Bt(){if(!Ye.value)return;if(!N.value||!g.value){i("Missing code or email");return}ae.value=!0,re();const t={email:g.value,password:h.value,confirmPassword:U.value,terms:Qe},e=Un(t);try{if(await de(),!P.value){i("Security init failed");return}const o={...e,code:N.value,confirmPassword:U.value,country_code:Pa.value,phone:na.value?.ok?na.value.phone:null};await Ja({email:g.value,country:Pa.value});const n=await $fetch("/api/auth/signup",{method:"POST",headers:await Ae({"X-CSRF-TOKEN":P.value}),body:o});n&&n.ok&&n.authKey?(ha(n.authKey,n.sessionToken),await Ba(),window.location.replace(ya)):(console.error("[PASSWORD] Registration failed - missing ok or authKey"),i("Registration failed"),ae.value=!1)}catch(o){const n=C(o);if(n.statusCode===422&&["PHONE_REQUIRED","PHONE_INVALID"].includes(n.data?.data?.code??"")){await Ma(),i(l("page.auth.phone-settings-changed")),ae.value=!1;return}if(n.data?.data?.code==="REGISTRATION_SETTINGS_UNAVAILABLE"){i(l("page.auth.phone-settings-error")),ae.value=!1;return}if(Bn(o)&&g.value&&h.value){if(Z){dt(g.value,h.value),ae.value=!1;return}if(Je("Account created. Signing you in..."),await Va(g.value,h.value))return}let p=!1;if(n.statusCode===403)P.value=null,L.value=null,i("Security token expired. Please try again.");else if(n.statusCode===429)i("Too many attempts. Please wait a minute and try again.");else if(n.statusCode===400){const V=n.data?.data?.errors?._,O=n.data?.data?.errors?.code,Q=w(V);if(Q.toLowerCase().includes("wrong verification code")||Q.toLowerCase().includes("invalid code")||O)i("The code you entered is incorrect. Please double-check and try again."),p=!0;else if(n.statusMessage?.includes("Invalid code"))i("The verification code is invali
1d. Please check your email and try again."),p=!0;else if(n.statusMessage?.includes("Code expired"))i("This verification code has expired. Please request a new one."),p=!0;else if(n.data?.message?.toLowerCase().includes("code"))i(n.data.message),p=!0;else if(n.data?.data?.errors){const $=n.data.data.errors;if($._){const Te=w($._);i(Te),Te.toLowerCase().includes("code")&&(p=!0)}else i("Validation error. Please check your input.")}else if(n.data?.errors){const $=n.data.errors;$.code?(i(w($.code)),p=!0):$.password?i(w($.password)):$.email?i(w($.email)):i("Validation error. Please check your input.")}else n.data?.message?i(n.data.message):i("Invalid request. Please try again.")}else if(n.data?.message)i(n.data.message),n.data.message.toLowerCase().includes("code")&&(p=!0);else if(n.data?.errors){const V=n.data.errors;V.code?(i(w(V.code)),p=!0):V.password?i(w(V.password)):V.email?i(w(V.email)):i("Registration error. Please try again.")}else i("Connection error. Please check your internet and try again.");p&&(b.value="code",N.value="",D.value=["","","","","",""],ue.value=!0,await _e(),_.value[0]?.focus()),ae.value=!1}}ye(()=>ve.value,t=>{!t&&H&&(clearTimeout(H),H=null)}),ye(()=>N.value,t=>{t.length===6&&b.value==="code"&&!X.value&&za()}),ye(()=>g.value,t=>{t.includes("@")?bt(t):ie.value=""}),ye(()=>h.value,t=>{wt(t)}),ye([b,g],()=>{b.value!=="email"&&g.value&&pa()}),st(async()=>{if(f.get("access-token-user")){tn(_t);return}const t=c.query.ref;if(t&&typeof t=="string"){const o=G("ref",{maxAge:31104e3,domain:".ecos.am"});if(o.value=t,A(t)){const n=G("loyalty_ref",{maxAge:31104e3,domain:".ecos.am"});n.value=t}}const e=c.query.loyalty_ref;if(e&&typeof e=="string"){const o=G("loyalty_ref",{maxAge:31104e3,domain:".ecos.am"});o.value=e}await de(),xa=Date.now(),la=mn(()=>{Ie.value=Date.now()},1e3),await _e(),ee.value?.focus()}),Ca(()=>{la&&clearInterval(la),H&&clearTimeout(H),Be&&clearTimeout(Be),Ve.value&&clearTimeout(Ve.value)});const Lt=T(()=>{switch(b.value){case"email":return l("pages.sign_up.title");case"code":return l("pages.registration.confirm_email_title");case"password":return l("pages.registration.create_password_title");default:return l("pages.sign_up.title")}}),Fe=T(()=>{switch(b.value){case"email":return 1;case"code":return 2;case"password":return 3;default:return 1}});return(t,e)=>{const o=Nt,n=Gt,p=Ot,V=$t,O=nt,Q=qt,$=tt,Te=Ht,Za=Wt,Oe=Ft,ga=_n;return r(),m("div",Fn,[s("div",On,[s("div",$n,[s("div",Kn,[s("div",qn,[s("div",Hn,[s("div",Wn,[s("a",jn,[x(o)]),x(n)]),s("h2",zn,v(Lt.value),1)]),a(b)==="email"?(r(),Y(p,{key:0})):y("",!0),s("div",Zn,[s("div",Yn,[(r(),m(aa,null,wa(3,k=>s("div",{key:k,class:W(["progress-step",{active:k===Fe.value,completed:k<Fe.value}])},[s("div",Jn,[k<Fe.value?(r(),m("span",Xn,"✓")):(r(),m("span",Qn,v(k),1))]),k<3?(r(),m("div",{key:0,class:W(["progress-step-line",{filled:k<Fe.value}])},null,2)):y("",!0)],2)),64))]),s("div",eo,[a(b)!=="email"?(r(),m("button",{key:0,type:"button",class:"back-button",disabled:X.value,onClick:xt},[x(V),e[16]||(e[16]=ne(" Back ",-1))],8,ao)):y("",!0),s("p",to,v(a(l)("pages.step.title"))+" "+v(Fe.value)+" "+v(a(l)("pages.step.of"))+" 3 ",1)])]),x(me,{name:"fade"},{default:j(()=>[a(ke)?(r(),m("div",no,v(a(ke)),1)):y("",!0)]),_:1}),x(me,{name:"fade"},{default:j(()=>[a(ve)?(r(),m("div",oo,v(a(ve)),1)):y("",!0)]),_:1}),x(me,{name:"slide-fade",mode:"out-in"},{default:j(()=>[a(b)==="email"?(r(),m("form",{key:"email-form",class:W(["reg-form",{shake:a(xe)}]),onSubmit:Ke(Dt,["prevent"]),onPaste:va},[a(Le)?he((r(),m("input",{key:0,"onUpdate:modelValue":e[0]||(e[0]=k=>le(K)?K.value=k:null),type:"text",tabindex:"-1",autocomplete:"off",style:{display:"none"},"aria-hidden":"true"},null,512)),[[ea,a(K)]]):y("",!0),a(S)&&!a(J)?(r(),m("div",so,[x(Ut,{block:"",disabled:!Na.value||X.value,label:a(l)("components.google_auth.continue"),onClick:vt},null,8,["disabled","label"])])):y("",!0),a(S)&&!a(J)?(r(),m("div",io,[s("span",null,v(a(l)("pages.sign_up.accept_or")),1)])):a(J)?(r(),m("div",ro,[...e[17]||(e[17]=[s("div",{class:"skeleton-line"},null,-1),s("div",{class:"skeleton-line short"},null,-1),s("div",{class:"skeleton-line medium"},null,-1)])])):y("",!0),a(J)?y("",!0):(r(),m("div",lo,[s("div",uo,[he(s("input",{id:"reg_email",ref_key:"emailInputRef",ref:ee,"onUpdate:modelValue":e[1]||(e[1]=k=>le(g)?g.value=k:null),class:W(["email-in",{"valid-input":a(g)&&Ne.value,"invali
1d-input":a(De)&&a(g)&&!Ne.value}]),placeholder:a(l)("pages.sign_up.email"),type:"email",size:"30",required:"",onInput:It,onBlur:e[2]||(e[2]=k=>De.value=!0)},null,42,co),[[ea,a(g),void 0,{trim:!0}]])]),Ka.value?(r(),m("p",mo,v(Ka.value),1)):y("",!0),a(ie)?(r(),m("div",po,[s("span",null,v(a(ie)),1),s("button",{type:"button",class:"suggestion-fix-btn",onClick:St}," Fix it ")])):y("",!0)])),a(Z)?he((r(),Y(O,{key:5,ref_key:"turnstile",ref:Ga,modelValue:a(q),"onUpdate:modelValue":e[3]||(e[3]=k=>le(q)?q.value=k:null),context:"signup"},null,8,["modelValue"])),[[on,!a(J)]]):y("",!0),z&&a(J)&&a(Se)>0?(r(),m("p",vo,[ne(" Solving security challenge... "+v(Math.round(a(Se)))+"% ",1),a(fe)?(r(),m("span",fo," ("+v(a(fe))+") ",1)):y("",!0)])):a(J)?(r(),m("p",go," Sending code... ")):y("",!0),s("div",ho,[a(J)?(r(),Y(Q,{key:0})):y("",!0),!ma.value&&Wa.value?(r(),m("div",{key:1,class:"button-tooltip","data-tooltip":Wa.value,style:{width:"100%"}},[x($,{id:"reg_submit","disable-after-click":!0,variant:"orange",type:"submit",disabled:!ma.value},{default:j(()=>[ne(v(Ha.value),1)]),_:1},8,["disabled"])],8,yo)):(r(),Y($,{key:2,id:"reg_submit","disable-after-click":!0,variant:"orange",type:"submit",disabled:!ma.value},{default:j(()=>[ne(v(Ha.value),1)]),_:1},8,["disabled"]))]),s("div",_o,[s("p",wo,[ne(v(a(l)("pages.sign_up.accept"))+" ",1),s("a",bo,v(a(l)("pages.sign_up.term_of_use")),1),ne(" "+v(a(l)("pages.sign_up.and"))+" ",1),s("a",ko,v(a(l)("pages.sign_up.privacy_policy")),1)]),s("div",So,[s("p",Co,v(a(l)("pages.sign_up.account")),1),x(Te,{id:"reg_login",to:{path:"/login",query:a(c).query},class:"reg-block__button-sing"},{default:j(()=>[ne(v(a(l)("pages.sign_up.log_in")),1)]),_:1},8,["to"])])])],34)):y("",!0)]),_:1}),x(me,{name:"slide-fade",mode:"out-in"},{default:j(()=>[a(b)==="code"?(r(),m("form",{key:"code-form",class:W(["reg-form",{shake:a(xe)}]),onSubmit:Ke(za,["prevent"]),onPaste:va},[s("p",Eo,v(a(l)("pages.registration.code_description"))+" "+v(oe.value),1),x(me,{name:"fade"},{default:j(()=>[a(Ia)?(r(),m("div",To,[...e[18]||(e[18]=[s("span",null,"Haven't received the code yet? Please check your spam or junk folder.",-1)])])):y("",!0)]),_:1}),s("div",Mo,[s("div",Ao,[(r(!0),m(aa,null,wa(a(D),(k,Me)=>he((r(),m("input",{key:Me,ref_for:!0,ref:te=>{te&&(a(_)[Me]=te)},"onUpdate:modelValue":te=>a(D)[Me]=te,class:"code-digit-input",type:"text",inputmode:"numeric",maxlength:"1",onInput:te=>At(Me,te),onKeydown:te=>Pt(Me,te),onPaste:e[4]||(e[4]=te=>Rt(te))},null,40,Po)),[[ea,a(D)[Me]]])),128))])]),s("div",Ro,[s("button",{type:"button",class:"resend-button",disabled:!fa.value||X.value||Ue.value>0,onClick:Vt},[Ue.value>0?(r(),m("span",xo," Resend code in "+v(Ue.value)+"s... ",1)):(r(),m("span",Do,v(a(l)("pages.registration.resend")),1))],8,Io)]),fa.value&&Ue.value===0?(r(),m("div",Vo,[a(Z)?(r(),Y(O,{key:0,ref_key:"turnstileResend",ref:Ua,modelValue:a(I),"onUpdate:modelValue":e[5]||(e[5]=k=>le(I)?I.value=k:null),context:"signup"},null,8,["modelValue"])):y("",!0)])):y("",!0),Xe.value>0?(r(),m("p",{key:1,class:W(["code-expiry-info",{"expiry-warning":Xe.value<60,"expiry-critical":Xe.value<30}])},v(a(l)("pages.registration.code_expires_in"))+": "+v(Mt(Xe.value)),3)):y("",!0),a(He)?(r(),m("div",Bo,[x(Q),e[19]||(e[19]=s("p",{class:"code-expiry-info",style:{"margin-top":"8px"}},"Verifying code...",-1))])):y("",!0)],34)):y("",!0)]),_:1}),x(me,{name:"slide-fade",mode:"out-in"},{default:j(()=>[a(b)==="password"?(r(),m("form",{key:"password-form",class:W(["reg-form",{shake:a(xe)}]),onSubmit:Ke(Bt,["prevent"]),onPaste:va},[a(ae)?(r(),m("div",Lo,[...e[20]||(e[20]=[s("div",{class:"skeleton-line"},null,-1),s("div",{class:"skeleton-line"},null,-1),s("div",{class:"skeleton-line short"},null,-1)])])):(r(),m(aa,{key:1},[s("div",No,[s("div",Go,[he(s("input",{id:"reg_password",ref_key:"passwordInputRef",ref:B,"onUpdate:modelValue":e[6]||(e[6]=k=>le(h)?h.value=k:null),class:"email-in",placeholder:a(l)("pages.log_in.password"),type:a(se)?"text":"password",required:"",onInput:e[7]||(e[7]=k=>{ue.value=!0,re()})},null,40,Uo),[[Ya,a(h)]]),s("span",{class:"password-toggle",onClick:e[8]||(e[8]=k=>se.value=!a(se))},[a(se)?(r(),Y(Qa,{key:0})):(r(),Y(et,{key:1}))])]),a(h)?(r(),m("div",Fo,[s("div",Oo,[s("div",{class:W(["password-strength-fill",{"strength-weak":a(F)<30,"strength-medium":a(F)>=30&&a(F)<60,"strength-strong":a(F)>=60&&a(F)<85,"strength-very-strong":a(F)>=85}]),style:sn({width:a(F)+"%"})},null,6)]),s("p",{class:W(["password-strength-label",{"strength-weak":a(F)<30,"strength-medium":a(F)>=30&&a(F)<60,"strength-strong":a(F)>=60&&a(F)<85,"strength-very-strong":a(F)>=85}])},v(a(Ce)),3)])):y("",!0),a(h)&&a(F)<60?(r(),m("div",$o,[a(h).length<12?(r(),m("p",Ko," Consider using at least 12 characters for better security ")):y("",!0),/[^a-zA-Z0-9]/.test(a(h))?y("",!0):(r(),m("p",qo," Add special characters like !@#$% to make your password stronger ")),/password|123456|qwerty/i.test(a(h))?(r(),m("p",Ho," Please avoid common words like 'password' or '123456' ")):y("",!0),a(g)&&a(h).toLowerCase().includes((a(g).split("@")[0]??"").toLowerCase())?(r(),m("p",Wo," For security reasons, don't include your email address in the password ")):y("",!0)])):a(F)>=85?(r(),m("div",jo,[...e[21]||(e[21]=[s("p",{class:"hint-text success"}," Excellent! Your password is strong and secure. ",-1)])])):y("",!0),a(h)||a(ue)?(r(),m("div",zo,[s("div",{class:W(["password-requirement",{valid:je.value,invali
1d:!je.value}])},[s("span",Zo,v(je.value?"✓":"✗"),1),s("span",null,v(a(l)("pages.registration.password_min_length")),1)],2),s("div",{class:W(["password-requirement",{valid:ze.value,invalid:!ze.value}])},[s("span",Yo,v(ze.value?"✓":"✗"),1),s("span",null,v(a(l)("pages.registration.password_uppercase")),1)],2),s("div",{class:W(["password-requirement",{valid:Ze.value,invalid:!Ze.value}])},[s("span",Jo,v(Ze.value?"✓":"✗"),1),s("span",null,v(a(l)("pages.registration.password_number")),1)],2)])):y("",!0)]),s("div",Xo,[s("div",Qo,[he(s("input",{id:"reg_confirm_password","onUpdate:modelValue":e[9]||(e[9]=k=>le(U)?U.value=k:null),class:"email-in",placeholder:a(l)("pages.registration.confirm_password"),type:a(pe)?"text":"password",required:"",onInput:e[10]||(e[10]=k=>we.value=!0)},null,40,es),[[Ya,a(U)]]),s("span",{class:"password-toggle",onClick:e[11]||(e[11]=k=>pe.value=!a(pe))},[a(pe)?(r(),Y(Qa,{key:0})):(r(),Y(et,{key:1}))])]),a(we)&&a(U)?(r(),m("div",as,[da.value?y("",!0):(r(),m("p",ts,v(a(l)("pages.registration.passwords_must_match")),1))])):y("",!0)]),s("div",ns,[x(xn,{modelValue:a(ce),"onUpdate:modelValue":e[12]||(e[12]=k=>le(ce)?ce.value=k:null),placeholder:"Select your country"},null,8,["modelValue"])]),a(ct)==="pending"?(r(),m("div",os,v(a(l)("page.auth.phone-settings-loading")),1)):a(Ta)?(r(),m("div",ss,[s("p",null,v(a(l)("page.auth.phone-settings-error")),1),s("button",{type:"button",onClick:e[13]||(e[13]=k=>a(Ma)())},v(a(l)("page.auth.captcha-retry")),1)])):a(Pe)&&a(Pe).phoneMode!=="disabled"?(r(),m("div",is,[x(Sn,{modelValue:a(qe),"onUpdate:modelValue":e[14]||(e[14]=k=>le(qe)?qe.value=k:null),required:a(Pe).phoneMode==="required"},null,8,["modelValue","required"])])):y("",!0),s("div",rs,[a(ae)?(r(),Y(Q,{key:0})):y("",!0),!Ye.value&&ja.value?(r(),m("div",{key:1,class:"button-tooltip","data-tooltip":ja.value,style:{width:"100%"}},[x($,{id:"reg_submit_password","disable-after-click":!0,variant:"orange",type:"submit",disabled:!Ye.value},{default:j(()=>[ne(v(a(l)("pages.sign_up.continue")),1)]),_:1},8,["disabled"])],8,ls)):(r(),Y($,{key:2,id:"reg_submit_password","disable-after-click":!0,variant:"orange",type:"submit",disabled:!Ye.value},{default:j(()=>[ne(v(a(l)("pages.sign_up.continue")),1)]),_:1},8,["disabled"]))]),a(ae)?(r(),m("p",us," Creating your account... ")):y("",!0)],64))],34)):y("",!0)]),_:1})])])]),x(Za)]),x(Oe),x(ga,{ref_key:"signupRecoveryCaptchaModal",ref:Fa,modelValue:a(E),"onUpdate:modelValue":e[15]||(e[15]=k=>le(E)?E.value=k:null),open:a(We),loading:a(be),error:a(Re),onClose:mt,onSubmit:pt},null,8,["modelValue","open","loading","error"])])}}});export{xs as default};

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.