PageSourceSearch

https://platform.cequens.com/assets/MFASetupPage-D6JLQb0F.js

js cequens.com collected 2026-09-24 19:24:33 UTC 11,695 bytes, 1 lines download raw bytes

1import{l as ee,r as g,u as se,f as te,j as s}from"./vendor-react-BXs1OprT.js";import{T as w,H as F,n as re,o as oe,F as ne,a as ae,b as ie,e as le,B as U,J as ce,A as D,E as C}from"./index-DpjOc5GW.js";import{I as ue,a as Y,b as I,c as de}from"./input-otp-2rYkZKJn.js";import{s as fe}from"./transitions-DWovD12U.js";import{ab as me,t as c}from"./vendor-ui-S-DBAgCa.js";import"./vendor-lib-D0CMuov3.js";function be(){const{t:e}=ee(),[v,G]=g.useState(""),[q,L]=g.useState(!1),[R,A]=g.useState({}),[H,P]=g.useState({}),[N,M]=g.useState(null),[J,_]=g.useState(null),[K,O]=g.useState(null),[B,V]=g.useState(null),[Q,h]=g.useState(!0),[W,y]=g.useState(!1),z=g.useRef(!1),T=se(),u=te();let r=u.state?.loginData||null,S=u.state?.mfaType||"SMS",j=null;if(u.state?.sessionSecret&&(j=u.state.sessionSecret),u.state?.loginData)u.state?.loginData?.session&&!j&&(j=u.state.loginData.session||null);else try{const x=sessionStorage.getItem("mfaSetupState");if(x){const t=JSON.parse(x);r=t.loginData||r,S=t.mfaType||S,j||(j=t.sessionSecret||t.loginData?.session||null)}}catch(x){console.error("[MFASetup] Error reading sessionStorage:",x)}g.useEffect(()=>{if(W||z.current)return;if(r?.session&&S==="EMAIL"){y(!0),h(!1);const t=r?.idToken||w.getIdToken();if(t){_(t);const n=F(t);O(n.sub??null),V(n["cognito:username"]||n.email||null),M(r.session)}return}(async()=>{z.current=!0,y(!0);try{const t=u.state?.mobileVerified;let n=r?.idToken||w.getIdToken();if(t&&S==="SMS"&&(n=w.getIdToken()||r?.idToken),!n)throw new Error(e("mfa.setup.error.missingToken"));_(n);const f=F(n);if(O(f.sub??null),V(f["cognito:username"]||f.email||null),S==="SMS"){const i=j||u.state?.sessionSecret||(u.state?.loginData?.session&&typeof u.state.loginData.session=="string"?u.state.loginData.session:null),o=r?.session&&typeof r.session=="string"&&r.session.length>0?r.session:null,m=i||o;if(m){M(m),h(!1);return}const k=f.phone_number,b=ce(f["custom:Mobileverified"]);if(!k){c.error(e("mfa.setup.error.phoneRequired"),{description:e("mfa.setup.error.phoneRequiredDescription"),duration:5e3}),T("/mobile-verification",{state:{loginData:r,mfaType:"SMS",returnTo:"/mfa-setup"},replace:!0}),y(!1);return}if(!b){c.warning(e("mfa.setup.warning.phoneVerificationRequired"),{description:e("mfa.setup.warning.phoneVerificationRequiredDescription"),duration:5e3}),T("/mobile-verification",{state:{loginData:r,mfaType:"SMS",returnTo:"/mfa-setup"},replace:!0}),y(!1);return}try{h(!0);const p=await D.initiateMfaSms({userId:f.sub??"",idToken:n,refreshToken:r?.refreshToken||w.getRefreshToken()||"",session:r?.session});let l=null;if(typeof p=="string")l=p.trim();else{const d=p;l=d.secretString||d.body?.secretString||d.data?.secretString||d.checkCode||d.body?.checkCode||d.data?.checkCode||d.session||d.body?.session||d.data?.session||null}if(!l&&p&&typeof p=="object"){const a=Object.values(p).find(E=>typeof E=="string"&&E.length>0);a&&(l=a)}M(l||""),h(!1),c.success(e("mfa.setup.sms.codeSent.title"),{description:e("mfa.setup.sms.codeSent.description"),duration:5e3})}catch(p){console.error("Error initiating SMS MFA:",p);const l=p;if(l.response?.status===429||l.status===429){if(N||r?.session){c.warning(e("mfa.setup.sms.codeAlreadySent.title"),{description:e("mfa.setup.sms.codeAlreadySent.description"),duration:7e3}),h(!1),r?.session&&!N&&M(r.session);return}c.error("Too Many Requests",{description:"You've made too many requests. Please wait a moment and try again.",duration:7e3}),y(!1),h(!1);return}if(l.response?.status===500||l.status===500){const a=l.response?.data?.message||l.response?.body?.message||l.message||"Server error. This might be because your phone number is not verified.";if(a.toLowerCase().includes("phone")||a.toLowerCase().includes("mobile")||a.toLowerCase().includes("verify")||!f.phone_number||!b){c.error(e("mfa.setup.error.phoneVerificationRequired"),{description:e("mfa.setup.error.phoneVerificationRequiredDescription"),duration:5e3}),T("/mobile-verification",{state:{loginData:r,mfaType:"SMS",returnTo:"/mfa-setup"},replace:!0}),y(!1);return}}y(!1);const d=l.response?.data?.message||l.response?.body?.message||l.response?.statusText||l.message||e("mfa.setup.error.initiateSmsFailed");c.error(e("mfa.setup.error.general"),{description:d,duration:5e3}),T("/choose-mfa",{state:{loginData:r},replace:!0})}}else if(S==="EMAIL")try{const i=await D.initiateMfaEmail({idToken:n,refreshToken:r?.refreshToken||w.getRefreshToken()||"",userAction:!0,toHash:r?.toHash,session:r?.session});let o=i;if(i&&typeof i=="object"){const b=i;o=b.body||b.data||b}let m=null;
1typeof o=="string"?m=o:o&&typeof o=="object"&&(m=o.result||o.secretString||o.session||o.checkCode||o.value||null);const k=m||r?.session;if(!k)throw console.error("[MFA Setup] No session found in response:",i),c.error(e("mfa.setup.error.setupError"),{description:e("mfa.setup.error.setupErrorDescription"),duration:5e3}),new Error(e("mfa.setup.error.missingSessionCode"));M(k),h(!1),c.success(e("mfa.setup.email.codeSent.title"),{description:e("mfa.setup.email.codeSent.description"),duration:5e3})}catch(i){console.error("Error initiating Email MFA:",i);const o=i;if(o.response?.status===429||o.status===429){if(N||r?.session){c.warning(e("mfa.setup.email.codeAlreadySent.title"),{description:e("mfa.setup.email.codeAlreadySent.description"),duration:7e3}),h(!1),r?.session&&!N&&M(r.session);return}c.error("Too Many Requests",{description:"You've made too many requests. Please wait a moment and try again.",duration:7e3}),y(!1),h(!1);return}y(!1);const m=o.response?.data?.message||o.response?.body?.message||o.message||e("mfa.setup.error.initiateEmailFailed");c.error(e("mfa.setup.error.general"),{description:m,duration:5e3}),T("/choose-mfa",{state:{loginData:r},replace:!0})}else h(!1)}catch(t){console.error("Error initializing MFA:",t),y(!1);const n=t;if(n.response?.status===429||n.status===429){c.error(e("mfa.setup.error.tooManyRequests"),{description:e("mfa.setup.error.tooManyRequestsDescription"),duration:7e3}),h(!1);return}c.error(e("mfa.setup.error.general"),{description:n.response?.data?.message||n.message||e("mfa.setup.error.generalDescription"),duration:5e3}),T("/choose-mfa",{state:{loginData:r},replace:!0})}})()},[]);const X=x=>{G(x),P(t=>({...t,otp:!0})),R.otp&&A(t=>{const n={...t};return delete n.otp,n})},Z=()=>{P(x=>({...x,otp:!0})),v.length!==6&&A({otp:{isValid:!1,message:e("mfa.setup.error.sixDigit")}})},$=async x=>{if(x.preventDefault(),L(!0),v.length!==6){A({otp:{isValid:!1,message:e("mfa.setup.error.sixDigit")}}),L(!1);return}try{const t=J||r?.idToken||w.getIdToken();if(!t)throw new Error(e("mfa.setup.error.missingToken"));if(!K||!B){const a=F(t);O(a.sub??null),V(a["cognito:username"]||a.email||null)}let n=null;try{const a=sessionStorage.getItem("mfaSetupState");if(a){const E=JSON.parse(a);n=E.sessionSecret||E.loginData?.session||null}}catch(a){console.error("[MFA Setup] Error reading sessionStorage in handleSubmit:",a)}const f=N||r?.session||n||u.state?.sessionSecret||u.state?.loginData?.session;if(!f||typeof f=="string"&&f.trim().length===0){const a=e("mfa.setup.error.missingSessionData");throw console.error("[MFA Setup] Missing session data:",a),c.error(e("mfa.setup.error.sessionError"),{description:e("mfa.setup.error.sessionErrorDescription"),duration:5e3}),new Error(a)}let i;if(S==="SMS"){const a=F(t);i=await D.verifyMfaSms({username:B||a["cognito:username"]||a.email||"",checkCode:f,userCode:v,idToken:t,enable:!0})}else if(S==="EMAIL")try{i=await D.verifyMfaEmail({session:f,userCode:v,idToken:t})}catch(a){throw console.error("[MFA Setup] verifyMfaEmail API error:",a),a}else throw new Error(e("mfa.setup.error.unsupportedType",{type:S}));const o=typeof i=="string"?null:i,m=o?.body||o?.data||o,k=typeof i=="string"&&(i.toLowerCase().includes("success")||i.toLowerCase().includes("enabled")||i.toLowerCase().includes("mfa")),b=m?.idToken||o?.idToken,p=m?.refreshToken||o?.refreshToken,l=m?.accessToken||o?.accessToken;if(b&&p)w.setTokens(b,l||b,p);else if(!(k||i==="Successfully enabled MFA Email"))throw console.error("[MFA Setup] Invalid response - no tokens and no success message"),new Error(e("mfa.setup.error.invalidResponse"));localStorage.setItem(C.MFA_SIGNED_IN,"true"),localStorage.setItem(C.MFA_TYPE,S);try{sessionStorage.removeItem("mfaSetupState")}catch{}const d=localStorage.getItem(C.COLLECT_ACCOUNT_INFO)==="true"||localStorage.getItem(C.COLLECT_BUSINESS_INFO)==="true";c.success(e("mfa.setup.success.title"),{description:e("mfa.setup.success.description"),duration:4e3}),d?T("/account/persona",{replace:!0}):T("/",{replace:!0})}catch(t){console.error("[MFA Setup] Error verifying MFA code:",t),console.error("[MFA Setup] Error details:",{response:t.response,status:t.response?.status,data:t.response?.data,body:t.response?.body,message:t.message});const n=t.response?.body?.message||t.response?.data?.message||t.response?.data?.error?.message||t.message||e("mfa.setup.error.invali
1dCode");c.error(e("mfa.setup.error.verificationFailed"),{description:n,duration:5e3}),A({otp:{isValid:!1,message:n}}),L(!1)}};return Q?s.jsx("div",{className:"mx-auto h-full max-h-[calc(100vh-2rem)] w-full max-w-lg overflow-hidden rounded-2xl bg-white shadow-lg dark:bg-card",children:s.jsx("div",{className:"flex h-full items-center justify-center p-4",children:s.jsxs("div",{className:"text-center",children:[s.jsx("div",{className:"mx-auto mb-4 h-8 w-8 animate-spin rounded-full border-4 border-primary border-t-transparent"}),s.jsx("p",{className:"text-sm text-muted-foreground",children:e("mfa.setup.settingUp")})]})})}):s.jsx("div",{className:"mx-auto h-full max-h-[calc(100vh-2rem)] w-full max-w-lg overflow-hidden rounded-2xl bg-white shadow-lg dark:bg-card",children:s.jsx("div",{className:"flex h-full flex-col overflow-y-auto",children:s.jsx(re.div,{className:"flex flex-col items-center justify-center bg-white p-4 dark:bg-card",initial:{opacity:0,y:-20},animate:{opacity:1,y:0},exit:{opacity:0,y:20},transition:fe,children:s.jsxs("div",{className:"w-full",children:[s.jsxs("div",{className:"mb-6 text-start sm:mb-8",children:[s.jsx("div",{className:"mb-3 h-4 w-auto py-6 sm:mb-4",children:s.jsx(oe,{className:"w-25 h-auto"})}),s.jsx("h1",{className:"mb-1 text-xl font-semibold tracking-tight text-foreground",children:e("mfa.setup.title")}),s.jsx("p",{className:"text-sm text-muted-foreground",children:e("mfa.setup.description",{channel:e(S==="SMS"?"mfa.setup.channel.mobile":"mfa.setup.channel.email")})})]}),s.jsxs("form",{onSubmit:$,className:"grid gap-3 sm:gap-4",children:[s.jsxs(ne,{children:[s.jsx(ae,{htmlFor:"otp",children:e("mfa.setup.codeLabel")}),s.jsxs(ie,{children:[s.jsx("div",{className:"flex justify-center px-2 sm:px-0",children:s.jsxs(ue,{"data-dd-privacy":"hidden",maxLength:6,value:v,onChange:X,onBlur:Z,containerClassName:"w-full justify-center",children:[s.jsxs(Y,{children:[s.jsx(I,{index:0}),s.jsx(I,{index:1}),s.jsx(I,{index:2})]}),s.jsx(de,{}),s.jsxs(Y,{children:[s.jsx(I,{index:3}),s.jsx(I,{index:4}),s.jsx(I,{index:5})]})]})}),H.otp&&R.otp&&s.jsx(le,{className:"text-center",children:R.otp.message})]})]}),s.jsxs("div",{className:"flex flex-col gap-3",children:[s.jsx(U,{type:"submit",className:"w-full",disabled:q||v.length!==6,children:q?s.jsxs("div",{className:"flex items-center space-x-2",children:[s.jsx("div",{className:"h-4 w-4 animate-spin rounded-full border-2 border-white border-t-transparent"}),s.jsx("span",{children:e("mfa.setup.verifying")})]}):e("mfa.setup.completeButton")}),s.jsxs(U,{type:"button",variant:"ghost",onClick:()=>T("/choose-mfa",{state:{loginData:r},replace:!0}),className:"flex items-center gap-2",children:[s.jsx(me,{className:"h-4 w-4 rtl:rotate-180"}),e("mfa.setup.backButton")]})]})]})]})})})})}export{be 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.