(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[123],{12342:(e,t,a)=>{"use strict";a.d(t,{A:()=>r});let r=a(91040).A.create({timeout:18e4})},26262:(e,t,a)=>{(window.__NEXT_P=window.__NEXT_P||[]).push(["/lab-flow-testing/login",function(){return a(88973)}])},88973:(e,t,a)=>{"use strict";a.r(t),a.d(t,{default:()=>n});var r=a(37876),o=a(12342),s=a(37477),l=a(89099),i=a(14232);function n(){let e=(0,l.useRouter)(),t=(0,s.useToast)(),[a,n]=(0,i.useState)(!1),[d,c]=(0,i.useState)(""),[u,p]=(0,i.useState)(""),g=async a=>{var r,s,l,i,c,p,g,m,x,h,v,f,b;if(null==a||a.preventDefault(),!d||!u)return void t({title:"Error",description:"Please enter both email and password",status:"error"});try{n(!0);let a=Intl.DateTimeFormat().resolvedOptions().timeZone||"UTC",m=await o.A.post("/api/lab-flow-testing/auth",{email:d.trim(),password:u,strategy:"local",timezone:a});if(m.data.success){let a=m.data.accessToken;if(a){let o=m.data.data||{},n=(null==(l=o.data.associations)||null==(s=l.Patient)||null==(r=s.patient)?void 0:r.id)||(null==(g=o.associations)||null==(p=g.Patient)||null==(c=p.organizations)||null==(i=c[0])?void 0:i["organizations_patients.patientId"]);localStorage.setItem("evolve_access_token",a),localStorage.setItem("evolve_user_email",d.trim()),t({title:"Success",description:"Logged in successfully",status:"success"}),e.push("/lab-flow-testing/form".concat(n?"?patientId=".concat(n):""))}else throw Error("Access token not received from Evolve API")}else throw Error(m.data.message||"Authentication failed")}catch(a){console.error("Login error:",a),console.error("Error response:",null==(m=a.response)?void 0:m.data),console.error("Error status:",null==(x=a.response)?void 0:x.status),console.error("Full error:",JSON.stringify(null==(h=a.response)?void 0:h.data,null,2));let e=null==(v=a.response)?void 0:v.data;t({title:"Error",description:(null==e?void 0:e.message)||(null==e||null==(f=e.error)?void 0:f.message)||(null==e||null==(b=e.details)?void 0:b.message)||(null==e?void 0:e.error)||a.message||"Failed to login",status:"error",duration:1e4})}finally{n(!1)}};return(0,r.jsx)(s.Box,{display:"flex",flexDirection:"column",alignItems:"center",justifyContent:"center",minHeight:"100vh",padding:"spacer-8",backgroundColor:"background-page-01",children:(0,r.jsxs)(s.Box,{maxWidth:"400px",width:"100%",padding:"spacer-8",backgroundColor:"background-surface-01",borderRadius:"radius-4",boxShadow:"shadow-lg",as:"form",onSubmit:g,children:[(0,r.jsxs)(s.TextPairing,{variant:"textpairing-header-2XL",marginBottom:"spacer-6",children:[(0,r.jsx)(s.TextPairing.Label,{color:"text-primary",children:"Lab Flow Testing Login"}),(0,r.jsx)(s.TextPairing.SubLabel,{color:"text-secondary",children:"Enter your credentials to authenticate"})]}),(0,r.jsxs)(s.Box,{display:"flex",flexDirection:"column",gap:"spacer-4",marginBottom:"spacer-6",children:[(0,r.jsxs)(s.Box,{display:"flex",flexDirection:"column",gap:"spacer-2",children:[(0,r.jsx)(s.Text,{as:"label",variant:"text-body-large-bold",color:"text-primary-negative",htmlFor:"email",children:"Email"}),(0,r.jsx)(s.Input,{id:"email",type:"email",autoComplete:"email",placeholder:"name@email.com",value:d,onChange:e=>c(e.target.value),isDisabled:a,size:"l",variant:"flushed",required:!0})]}),(0,r.jsxs)(s.Box,{display:"flex",flexDirection:"column",gap:"spacer-2",children:[(0,r.jsx)(s.Text,{as:"label",variant:"text-body-large-bold",color:"text-primary-negative",htmlFor:"password",children:"Password"}),(0,r.jsx)(s.Input,{id:"password",type:"password",autoComplete:"current-password",placeholder:"Enter your password",value:u,onChange:e=>p(e.target.value),isDisabled:a,size:"l",variant:"flushed",required:!0})]})]}),(0,r.jsx)(s.Button,{type:"submit",size:"m",variant:"primary",onClick:g,isLoading:a,width:"100%",isDisabled:!d||!u||a,children:"Login"})]})})}}},e=>{e.O(0,[846,636,593,792],()=>e(e.s=26262)),_N_E=e.O()}]);