1import{d as M,C as w,O as Y,h as G,o as R,N as V,b as P,w as c,k as p,l as o,L as z,m as f,u as h,S as F,K as L,x as O,e as $,M as _,_ as U}from"./index-C9r8owh7.js";import{T as D}from"./TrozoSplitAuthLayout-C-glQUfU.js";import{b as q,u as J,_ as K,a as H}from"./useAuthScreenLock-B3SXzRdb.js";import{u as Q}from"./index-CQlqqUBS.js";import{s as W}from"./signupSession-BiHGXWPV.js";import"./index-BjwILhDf.js";import{I as X}from"./Input-DY6Aek9z.js";import{F as j}from"./index-DIvOWUbs.js";import{_ as Z}from"./index-pi1dp3tN.js";import{_ as aa}from"./FormItem-Bon-TH0-.js";import{_ as ea}from"./Password-CTSXnfzn.js";import"./FormItemContext-3PuPPDrG.js";import"./compact-item-DuSeT5J-.js";import"./_getTag-DxVd3pm0.js";import"./index-DHrbVJk1.js";import"./Search-Dkeyk99i.js";import"./SearchOutlined-BwgoY0CH.js";import"./index-CLu1tNcX.js";import"./devWarning-IFmr1OY9.js";import"./vnode-B8wK1Gz1.js";import"./isPlainObject-DnaOnK2P.js";import"./omit-DKsPv_gh.js";import"./inputProps-CVUpVF9Y.js";import"./TextArea-DcVwMxwP.js";import"./statusUtils-BoZG2RGH.js";import"./index-BP215OSD.js";import"./index-DNw8WBlh.js";import"./_arrayIncludes-Bzs2wNx8.js";import"./collapseMotion-uNUQFII1.js";import"./debounce-Cn_uZkjp.js";import"./toNumber-DivMxJXv.js";import"./responsiveObserve-CAw7-iSX.js";import"./useFlexGapSupport-sR00GEqN.js";import"./styleChecker-CK7Nkzvi.js";import"./QuestionCircleOutlined-dYbKBGD2.js";import"./EyeOutlined-CvMQ0YcA.js";import"./EyeInvisibleOutlined-C2a71FcZ.js";const k="trozo_signup_campaign",ta=7*24*60*60*1e3;function C(r){return String(r||"").trim().toLowerCase().replace(/[^a-z0-9-]+/g,"-").replace(/^-+|-+$/g,"")}function oa(r){const n=C(r);if(!n)return;const S={code:n,createdAt:Date.now()};sessionStorage.setItem(k,JSON.stringify(S))}function na(){try{const r=sessionStorage.getItem(k);if(!r)return null;const n=JSON.parse(r);return n!=null&&n.code?Date.now()-(n.createdAt||0)>ta?(y(),null):n.code:null}catch{return null}}function y(){sessionStorage.removeItem(k)}const sa={class:"auth-vfinal"},ia={class:"auth-vfinal__header"},ra={class:"auth-vfinal__subtitle"},la={class:"auth-vfinal__legal"},ua=["href"],ma=["href"],ca=M({__name:"index",setup(r){const n=V(),S=O(),b=Q(),{marketingPath:x}=q();J();const g=w(!1),d=w(null),l=w(""),v=w("success"),e=Y({fullName:"",email:"",password:"",confirmPassword:""}),N=G(()=>{const s=e.email.trim();return!!(e.fullName.trim()&&s&&e.password&&e.confirmPassword&&e.password===e.confirmPassword)});function A(s){return new Intl.NumberFormat("en-IN").format(s)}async function I(s){try{const a=await b.fetchSignupCampaign(s);if(a!=null&&a.valid){if(a.grantTrial){const i=a.trialDays??15,u=a.trialMaxImages??10,t=a.trialMaxVideoSeconds??12;l.value=`You're signing up for a ${i}-day trial: ${u} images and ${t}s of video from ${a.name}.`}else a.creditGrant>0?l.value=`You're signing up with ${A(a.creditGrant)} bonus credits from ${a.name}.`:l.value=`You're signing up with ${a.name}.`;v.value="success";return}l.value=(a==null?void 0:a.status)==="full"?"This signup offer has reached its limit. You can still create an account without the bonus.":(a==null?void 0:a.status)==="expired"?"This signup offer has expired. You can still create an account without the bonus.":"This signup offer is not available. You can still create an account without the bonus.",v.value="warning",d.value=null,y()}catch{l.value="We could not verify this signup offer. You can still create an account.",v.value="warning",d.value=null,y()}}R(async()=>{const s=C(String(n.params.campaignSlug||"")),a=C(String(n.query.campaign||"")),i=s||a||na();i&&(d.value=i,oa(i),await I(i))});const T=async()=>{var s,a,i,u;if(!(!N.value||g.value)){if(e.password!==e.confirmPassword){_.error("Passwords do not match");return}try{g.value=!0;const t=await b.signUp({...e,...d.value?{campaignCode:d.value}:{}});W(e.email.trim(),e.password),y(),(s=t==null?void 0:t.campaignBonus)!=null&&s.creditsGranted?_.success(`Account created with ${A(t.campaignBonus.creditsGranted)} bonus credits.`):(a=t==null?void 0:t.campaignBonus)!=null&&a.trialGranted?_.success("Account created with your trial access. Check your email to verify your account."):_.success("Check your email for a six-digit verification code."),await S.push({name:"CheckEmail",query:{email:e.email.trim()}})}catch(t){_.error(((u=(i=t==null?void 0:t.response)==null?void 0:i.data)==null?void 0:u.message)||"Failed to create account")}finally{g.value=!1}}};return(s,a)=>{const i=Z,u=X,t=aa,B=ea,E=j;return $(),P(D,null,{default:c(()=>[p("div",sa,[o(K),p("header",ia,[a[6]||(a[6]=p("h1",{class:"auth-vfinal__title"},"Create your account",-1)),p("p",ra,[a[5]||(a[5]=f(" Have an account already? ")),o(h(F),{to:"/login",class:"auth-vfinal__subtitle-link signin-green"},{default:c(()=>a[4]||(a[4]=[f("Sign in.")])),_:1,__:[4]})])]),l.value?($(),P(i,{key:0,message:l.value,type:v.value,"show-icon":"",class:"auth-vfinal__banner"},null,8,["message","type"])):z("",!0),o(E,{layout:"vertical",model:e,class:"auth-vfinal__stack",onSubmit:L(T,["prevent"])},{default:c(()=>[o(t,{label:"Full name",class:"auth-vfinal__field"},{default:c(()=>[o(u,{id:"signup-name",value:e.fullName,"onUpdate:value":a[0]||(a[0]=m=>e.fullName=m),name:"name",autocomplete:"name",placeholder:"Enter your full name"},null,8,["value"])]),_:1}),o(t,{label:"Email",class:"auth-vfinal__field"},{default:c(()=>[o(u,{id:"signup-email",value:e.email,"onUpdate:value":a[1]||(a[1]=m=>e.email=m),name:"email",type:"email",autocomplete:"email",placeholder:"Enter your email ID"},null,8,["value"])]),_:1}),o(t,{label:"Password",class:"auth-vfinal__field"},{default:c(()=>[o(B,{id:"signup-password",value:e.password,"onUpdate:value":a[2]||(a[2]=m=>e.password=m),name:"password",autocomplete:"new-password",placeholder:"Enter your password"},null,8,["value"])]),_:1}),o(t,{label:"Confirm password",class:"auth-vfinal__field"},{default:c(()=>[o(B,{id:"signup-confirm-password",value:e.confirmPassword,"onUpdate:value":a[3]||(a[3]=m=>e.confirmPassword=m),name:"confirm-password",autocomplete:"new-password",placeholder:"Re-enter your password"},null,8,["value"])]),_:1}),o(H,{type:"submit",label:"Sign up","loading-label":"Signing upâ¦",enabled:N.value,loading:g.value||h(b).loading},null,8,["enabled","loading"])]),_:1},8,["model"]),p("p",la,[a[7]||(a[7]=f(" By logging in, you agree to our ")),p("a",{href:h(x)("/terms")},"Terms",8,ua),a[8]||(a[8]=f(" and ")),p("a",{href:h(x)("/privacy")},"Privacy Policy",8,ma),a[9]||(a[9]=f(". "))])])]),_:1})}}}),Qa=U(ca,[["__scopeId","data-v-6004f0ee"]]);export{Qa 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.