1import{z as j,w as L,a as w,A as N,p as T}from"./chunk-EPOLDU6W-Cy0pbNoL.js";import{j as e}from"./jsx-runtime-u17CrQMm.js";import{u as y}from"./user-profile-DknISN-A.js";import{B,f as l,k as H,h as P,m as I,H as A,L as U,P as v}from"./index-e26oBipY.js";import{u as F,C as b}from"./index.esm-B0oGELu-.js";import{P as R,E as q,a as M}from"./password-control-VZ_UVzCj.js";import{E,a as z}from"./elevated-container-BseI2e8E.js";import{L as K}from"./loading-spinner-DZzY5wqw.js";import{A as x}from"./data-layer-1kvIXlWL.js";import{u as k}from"./use-status-announcer-MDvt8qpK.js";import{u as O}from"./user-provider-BVDzkoqu.js";import{b as _}from"./root.css-l3_4NLdg.js";import{a as S}from"./status-announcer-provider-twgJHQuP.js";import{A as $}from"./middleware-OTSEx0cA.js";import{n as W}from"./helpers-Dqt3x3rr.js";import"./index-hDuMSH-s.js";import"./sbs-login-instance-QtxHg8-X.js";import"./constant-DgzOUPqJ.js";import"./QueryClientProvider-CC4TKqza.js";import"./i18nInstance-CHFDjdcJ.js";import"./mutation-BhTIUPuz.js";var D="_1qqn41e0";const Z=!1;function G({accessToken:a,lang:r="en"}){const{t}=S(),{user:p}=O(),{control:u,handleSubmit:m,formState:i,setError:d}=F({mode:"onBlur",defaultValues:{newPassword:"",newPasswordConfirm:""}}),o=j();k(t("resetPassword.heading"));const{mutate:h,isPending:n}=y.useMutation("post","/profile/reset_password_with_token",{onSuccess:()=>{const s={event:"userInteraction",userInteractionDetails:{interactionName:"mysbs:resetPassword:click:success"},identification:{janrainUUID:"",hashedEmail:""}};x.push(s),o("/sign-in",{state:{callout:{result:"success",i18nKey:"resetPassword.success"},lang:r}})},onError:s=>{const f={event:"userInteraction",userInteractionDetails:{interactionName:"mysbs:resetPassword:click:invalid"},identification:{janrainUUID:"",hashedEmail:""}};x.push(f),o("/sign-in",{state:{callout:{result:"error",i18nKey:s?.detail==="password_mismatch"?"resetPassword.errorMismatch":"resetPassword.error"},lang:r}})}}),c=({newPasswordConfirm:s,newPassword:f})=>{if(f!==s)d("newPasswordConfirm",{type:"confirmPassword"});else{h({body:{newPassword:f,newPasswordConfirm:s,token:a,lang:r}});const g={event:"userInteraction",userInteractionDetails:{interactionName:"mysbs:resetPassword:click:submit"},identification:{janrainUUID:"",hashedEmail:""}};x.push(g)}};return n?e.jsx(B,{marginX:"auto",paddingY:{xs:"spacing.500",md:"spacing.1000"},children:e.jsx(K,{})}):e.jsx(E,{children:e.jsxs(l,{space:"spacing.400",children:[e.jsxs(l,{space:"spacing.400",children:[e.jsx(z,{children:t("resetPassword.heading")}),Z]}),e.jsx("form",{onSubmit:s=>{m(c)(s)},children:e.jsxs(l,{alignItems:"flex-start",space:"spacing.300",children:[e.jsxs(l,{space:"spacing.400",width:"100%",children:[e.jsx(b,{control:u,name:"newPassword",rules:{required:!0,pattern:{value:/^(?=(.*\d.*))[\s\S]{5,}$/,message:t("formError.passwordStrength")}},render:({field:s})=>e.jsx(R,{field:s,error:i.errors.newPassword,label:t("formFields.newPassword"),autoComplete:"new-password"})}),e.jsx(b,{control:u,name:"newPasswordConfirm",rules:{required:!0,pattern:{value:/^(?=(.*\d.*))[\s\S]{5,}$/,message:t("formError.passwordStrength")}},render:({field:s})=>e.jsx(R,{field:s,error:i.errors.newPasswordConfirm,label:t("formFields.confirmPassword"),autoComplete:"new-password"})})]}),e.jsxs(H,{paddingTop:"spacing.300",flexDirection:{xs:"column",sm:"row"},gap:"spacing.200",width:"100%",alignItems:"center",justifyContent:{xs:void 0,sm:"center"},children:[e.jsx(P,{className:I(_,D),type:"submit",children:t("button.updatePassword")}),e.jsx(P,{className:I(_,D),onClick:()=>{x.push({event:"userInteraction",userInteractionDetails:{interactionName:"mysbs:changePassword:click:cancel"},identification:{janrainUUID:p.id??"",hashedEmail:p.emailHash??""}}),o("/sign-in")},variant:"secondary",children:t("button.cancel")})]}),e.jsx("div",{role:"alert",children:i.errors.root?.message&&e.jsx(q,{children:i.errors.root.message})})]})})]})})}function Q(){const{t:a,i18n:r}=S(),{control:t,handleSubmit:p,formState:u,setError:m}=F(),i=j();k(a("resetPasswordRequestForm.heading"));const{mutate:d,isPending:o}=y.useMutation("post","/profile/reset_password",{onMutate:()=>{m("root",{type:void 0})},onSuccess:(n,c,s)=>{i("/reset-password",{state:{resetPasswordRequest:{result:"success",email:c.body.email}}})},onError:(n,c,s)=>{n instanceof $&&n.status===400?m("email",{type:"emailCannotBeUsed"}):m("root",{type:"generic"})}}),h=async n=>{d({body:{email:n.email,lang:r.language}}
1);const c={event:"userInteraction",userInteractionDetails:{interactionName:"mysbs:resetPassword:click:sendLink"},identification:{janrainUUID:"",hashedEmail:""}};x.push(c)};return e.jsx(E,{children:e.jsxs(l,{alignItems:"center",space:{xs:"spacing.300",sm:"spacing.500"},textAlign:"center",children:[e.jsx(l,{space:"spacing.300",children:e.jsx(A,{fontSize:{xs:"xl",sm:"2xl"},children:a("resetPasswordRequestForm.heading")})}),e.jsx(l,{asChild:!0,space:"spacing.500",width:"100%",style:{maxWidth:600},textAlign:"left",children:e.jsxs("form",{onSubmit:n=>{p(h)(n)},children:[e.jsx(b,{control:t,name:"email",render:({field:n})=>e.jsx(M,{field:n,error:u.errors.email,autoComplete:"email"}),rules:{required:!0,pattern:{value:/^[\w.%+-]+@[A-Z0-9.-]+\.[A-Z]{2,}$/i,message:a("formError.invalidEmail")}}}),e.jsx(P,{type:"submit",disabled:o,children:a("resetPasswordRequestForm.submit")}),e.jsx(U,{textAlign:"center",href:"/sign-in",children:a("link.alreadyHaveAccount")}),e.jsx("div",{role:"alert",children:u.errors.root?.type==="generic"&&e.jsx(q,{children:a("formError.generic")})})]})})]})})}function V({email:a}){const{t:r}=S(),t=j();return k(r("resetPasswordSuccess.heading")),e.jsx(E,{children:e.jsx(l,{alignItems:"center",space:{xs:"spacing.300",sm:"spacing.500"},textAlign:"center",children:e.jsxs(l,{space:"spacing.300",children:[e.jsx(A,{fontSize:{xs:"xl",sm:"2xl"},children:r("resetPasswordSuccess.heading")}),e.jsx(v,{children:r("resetPasswordSuccess.p1",{email:a})}),e.jsx(v,{children:r("resetPasswordSuccess.p2")}),e.jsxs(v,{children:[r("resetPasswordSuccess.p3")," ",e.jsx(U,{color:"text-subtle",href:"https://help.sbs.com.au/hc/en-au",rel:"noopener noreferrer",target:"_blank",textDecoration:"underline",children:r("resetPasswordSuccess.contactUsLink")},"resetPasswordSuccess.contactUsLink")]}),e.jsx(P,{onClick:()=>{t("/sign-in")},children:r("button.signIn")})]})})})}const xe=()=>[{title:"Reset Password"}],Pe=L(function(){const{i18n:{changeLanguage:r}}=S(),t=w.useRef(!1),[p,u]=w.useState(!1),m=j(),[i]=N(),d=i.get("code")||"",o=i.get("lang"),[h,n]=w.useState(""),{mutate:c,isPending:s}=y.useMutation("post","/profile/verify_reset_password_token",{onSuccess:C=>{u(!0),C.access_token&&n(C.access_token)},onError:()=>{m("/sign-in",{state:{callout:{result:"error",i18nKey:"resetPassword.error"},lang:o}})}});w.useEffect(()=>{if(d&&!s){if(t.current)return;t.current=!0,c({body:{token:d}})}},[s,c,d]),w.useEffect(()=>{o&&r(W(o))},[r,o]);const g=T().state?.resetPasswordRequest;if(g&&g.result==="success")return e.jsx(V,{email:g.email});if(d){if(p)return e.jsx(G,{accessToken:h,lang:o||"en"})}else return e.jsx(Q,{})});export{Pe as default,xe as meta};
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.