UNPKG

@frank-auth/react

Version:

Flexible and customizable React UI components for Frank Authentication

4 lines (3 loc) 19.4 kB
'use client'; "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("react/jsx-runtime");require("@emotion/styled");const W=require("../../ui/button/button.cjs"),je=require("../../ui/input/input.cjs"),be=require("../../ui/checkbox/checkbox.cjs"),X=require("../../ui/link/link.cjs"),z=require("../../ui/divider/divider.cjs"),D=require("@heroicons/react/24/outline"),Z=require("@heroui/react"),ye=require("framer-motion"),i=require("react"),U=require("../../forms/email-field.cjs"),ve=require("../../forms/form-wrapper.cjs"),we=require("../../forms/password-field.cjs"),Ce=require("../../../hooks/use-auth.cjs"),F=require("../../../hooks/use-config.cjs"),Ne=require("../../../hooks/use-passkeys.cjs"),Me=require("../../../hooks/use-oauth.cjs"),Se=require("../../../hooks/use-magic-link.cjs"),Le=a=>a&&a.__esModule?a:{default:a},M=Le(i),ee=M.default.memo(()=>e.jsxs("svg",{className:"w-4 h-4",viewBox:"0 0 24 24",children:[e.jsx("path",{fill:"#4285F4",d:"M22.56 12.25c0-.78-.07-1.53-.2-2.25H12v4.26h5.92c-.26 1.37-1.04 2.53-2.21 3.31v2.77h3.57c2.08-1.92 3.28-4.74 3.28-8.09z"}),e.jsx("path",{fill:"#34A853",d:"M12 23c2.97 0 5.46-.98 7.28-2.66l-3.57-2.77c-.98.66-2.23 1.06-3.71 1.06-2.86 0-5.29-1.93-6.16-4.53H2.18v2.84C3.99 20.53 7.7 23 12 23z"}),e.jsx("path",{fill:"#FBBC05",d:"M5.84 14.09c-.22-.66-.35-1.36-.35-2.09s.13-1.43.35-2.09V7.07H2.18C1.43 8.55 1 10.22 1 12s.43 3.45 1.18 4.93l2.85-2.22.81-.62z"}),e.jsx("path",{fill:"#EA4335",d:"M12 5.38c1.62 0 3.06.56 4.21 1.64l3.15-3.15C17.45 2.09 14.97 1 12 1 7.7 1 3.99 3.47 2.18 7.07l3.66 2.84c.87-2.6 3.3-4.53 6.16-4.53z"})]})),se=M.default.memo(()=>e.jsx("svg",{className:"w-4 h-4",fill:"currentColor",viewBox:"0 0 24 24",children:e.jsx("path",{d:"M12 0c-6.626 0-12 5.373-12 12 0 5.302 3.438 9.8 8.207 11.387.599.111.793-.261.793-.577v-2.234c-3.338.726-4.033-1.416-4.033-1.416-.546-1.387-1.333-1.756-1.333-1.756-1.089-.745.083-.729.083-.729 1.205.084 1.839 1.237 1.839 1.237 1.07 1.834 2.807 1.304 3.492.997.107-.775.418-1.305.762-1.604-2.665-.305-5.467-1.334-5.467-5.931 0-1.311.469-2.381 1.236-3.221-.124-.303-.535-1.524.117-3.176 0 0 1.008-.322 3.301 1.23.957-.266 1.983-.399 3.003-.404 1.02.005 2.047.138 3.006.404 2.291-1.552 3.297-1.23 3.297-1.23.653 1.653.242 2.874.118 3.176.77.84 1.235 1.911 1.235 3.221 0 4.609-2.807 5.624-5.479 5.921.43.372.823 1.102.823 2.222v3.293c0 .319.192.694.801.576 4.765-1.589 8.199-6.086 8.199-11.386 0-6.627-5.373-12-12-12z"})})),te=M.default.memo(()=>e.jsxs("svg",{className:"w-4 h-4",viewBox:"0 0 24 24",children:[e.jsx("path",{fill:"#f25022",d:"M1 1h10v10H1z"}),e.jsx("path",{fill:"#00a4ef",d:"M13 1h10v10H13z"}),e.jsx("path",{fill:"#7fba00",d:"M1 13h10v10H1z"}),e.jsx("path",{fill:"#ffb900",d:"M13 13h10v10H13z"})]})),ne=M.default.memo(()=>e.jsx("svg",{className:"w-4 h-4",fill:"currentColor",viewBox:"0 0 24 24",children:e.jsx("path",{d:"M18.71 19.5c-.83 1.24-1.71 2.45-3.05 2.47-1.34.03-1.77-.79-3.29-.79-1.53 0-2 .77-3.27.82-1.31.05-2.3-1.32-3.14-2.53C4.25 17 2.94 12.45 4.7 9.39c.87-1.52 2.43-2.48 4.12-2.51 1.28-.02 2.5.87 3.29.87.78 0 2.26-1.07 3.81-.91.65.03 2.47.26 3.64 1.98-.09.06-2.17 1.28-2.15 3.81.03 3.02 2.65 4.03 2.68 4.04-.03.07-.42 1.44-1.38 2.83M13 3.5c.73-.83 1.94-1.46 2.94-1.5.13 1.17-.34 2.35-1.04 3.19-.69.85-1.83 1.51-2.95 1.42-.15-1.15.41-2.35 1.05-3.11z"})}));ee.displayName="GoogleIcon";se.displayName="GitHubIcon";te.displayName="MicrosoftIcon";ne.displayName="AppleIcon";const ae=M.default.memo(({successType:a,successData:m,redirectUrl:u})=>{const{components:c}=F.useConfig(),l=c.Button??W.Button,f=i.useCallback(()=>{switch(a){case"password-signin":return{title:"Welcome back!",subtitle:"You have been successfully signed in.",icon:e.jsx("svg",{className:"w-8 h-8 text-success-600 dark:text-success-400",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24",children:e.jsx("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M5 13l4 4L19 7"})})};case"oauth-signin":return{title:"Welcome back!",subtitle:`Successfully signed in with ${m?.provider||"OAuth"}.`,icon:e.jsx("svg",{className:"w-8 h-8 text-success-600 dark:text-success-400",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24",children:e.jsx("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M5 13l4 4L19 7"})})};case"passkey-signin":return{title:"Authenticated!",subtitle:"Successfully signed in with your passkey.",icon:e.jsx(D.LockClosedIcon,{className:"w-8 h-8 text-success-600 dark:text-success-400"})};case"mfa-verified":return{title:"Verification complete!",subtitle:"Two-factor authentication successful.",icon:e.jsx("svg",{className:"w-8 h-8 text-success-600 dark:text-success-400",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24",children:e.jsx("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M9 12l2 2 4-4m5.618-4.016A11.955 11.955 0 0112 2.944a11.955 11.955 0 01-8.618 3.04A12.02 12.02 0 003 9c0 5.591 3.824 10.29 9 11.622 5.176-1.332 9-6.03 9-11.622 0-1.042-.133-2.052-.382-3.016z"})})};case"email-verification-required":return{title:"Check your email",subtitle:`We've sent a verification link to ${m?.email||"your email address"}. Please click the link to complete your sign-in.`,icon:e.jsx(D.EnvelopeIcon,{className:"w-8 h-8 text-warning-600 dark:text-warning-400"}),extraButton:e.jsx(l,{size:"sm",children:"Resend Email"})};case"magic-link-sent":return{title:"Magic link sent!",subtitle:`Check your email at ${m?.email} and click the link to sign in.`,icon:e.jsx("svg",{className:"w-8 h-8 text-primary-600 dark:text-primary-400",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24",children:e.jsx("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M3 8l7.89 7.89a2 2 0 002.83 0L21 8M5 19h14a2 2 0 002-2V7a2 2 0 00-2-2H5a2 2 0 00-2 2v10a2 2 0 002 2z"})}),extraButton:e.jsx(l,{onClick:async()=>{await m.sendMagicLink(m.email,{redirectUrl:u,organizationId:m.organizationId})},size:"sm",children:"Resend magic link"})};default:return{title:"Success!",subtitle:"Operation completed successfully.",icon:e.jsx("svg",{className:"w-8 h-8 text-success-600 dark:text-success-400",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24",children:e.jsx("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M5 13l4 4L19 7"})})}}},[a,m])(),w=u&&!["email-verification-required","magic-link-sent"].includes(a);return e.jsxs("div",{className:"text-center space-y-4",children:[e.jsx(ye.motion.div,{initial:{scale:0},animate:{scale:1},className:`mx-auto w-16 h-16 rounded-full flex items-center justify-center ${a==="email-verification-required"?"bg-warning-100 dark:bg-warning-900/30":a==="magic-link-sent"?"bg-primary-100 dark:bg-primary-900/30":"bg-success-100 dark:bg-success-900/30"}`,children:f.icon}),e.jsxs("div",{children:[e.jsx("h3",{className:"text-xl font-semibold text-foreground mb-2",children:f.title}),e.jsx("p",{className:"text-default-500 text-sm",children:f.subtitle}),f.extraButton&&e.jsx("div",{className:"flex justify-center py-4",children:f.extraButton})]}),w&&e.jsxs("div",{className:"flex items-center justify-center gap-2 text-sm text-default-500",children:[e.jsx("div",{className:"animate-spin rounded-full h-4 w-4 border-b-2 border-primary"}),e.jsx("span",{children:"Redirecting..."})]}),a==="email-verification-required"&&e.jsx("div",{className:"text-xs text-default-400",children:"Didn't receive the email? Check your spam folder or contact support."})]})});ae.displayName="SuccessMessage";const ie=M.default.memo(({onSuccess:a,onError:m,redirectUrl:u,organizationId:c,disabled:l,size:d="md",radius:f="md"})=>{const{signInWithGoogle:w,signInWithGitHub:b,signInWithMicrosoft:y,signInWithApple:C,isLoading:h}=Me.useOAuth(),{components:o}=F.useConfig(),r=o.Button??W.Button,x=i.useCallback(async(A,P)=>{try{const k=await P();a(A,{provider:A,...k})}catch(k){m?.(k instanceof Error?k:new Error(`${A} sign-in failed`))}},[a,m]),S=i.useCallback(()=>{x("Google",()=>w({redirectUrl:u,organizationId:c}))},[x,w,u,c]),p=i.useCallback(()=>{x("GitHub",()=>b({redirectUrl:u,organizationId:c}))},[x,b,u,c]),L=i.useCallback(()=>{x("Microsoft",()=>y({redirectUrl:u,organizationId:c}))},[x,y,u,c]),v=i.useCallback(()=>{x("Apple",()=>C({redirectUrl:u,organizationId:c}))},[x,C,u,c]);return e.jsxs("div",{className:"space-y-3",children:[e.jsx(r,{type:"button",variant:"bordered",size:d,radius:f,className:"w-full",startContent:e.jsx(ee,{}),onPress:S,isDisabled:l||h,children:"Continue with Google"}),e.jsx(r,{type:"button",variant:"bordered",size:d,radius:f,className:"w-full",startContent:e.jsx(se,{}),onPress:p,isDisabled:l||h,children:"Continue with GitHub"}),e.jsx(r,{type:"button",variant:"bordered",size:d,radius:f,className:"w-full",startContent:e.jsx(te,{}),onPress:L,isDisabled:l||h,children:"Continue with Microsoft"}),e.jsx(r,{type:"button",variant:"bordered",size:d,radius:f,className:"w-full",startContent:e.jsx(ne,{}),onPress:v,isDisabled:l||h,children:"Continue with Apple"})]})});ie.displayName="OAuthButtons";const H=M.default.memo(({email:a,onSuccess:m,onError:u,redirectUrl:c,organizationId:l,disabled:d,size:f="md",radius:w="md"})=>{const{sendMagicLink:b,isLoading:y,lastSentEmail:C,canResend:h}=Se.useMagicLink(),[o,r]=i.useState(!1),{components:x}=F.useConfig(),S=x.Button??W.Button,p=i.useMemo(()=>e.jsx(D.EnvelopeIcon,{className:"w-4 h-4"}),[]),L=i.useCallback(async()=>{if(a)try{const v=await b(a,{redirectUrl:c,organizationId:l});v.success&&(r(!0),m({type:"magic-link-sent",email:a,redirectUrl:c,organizationId:l,...v,sendMagicLink:b,canResend:h}))}catch(v){u?.(v instanceof Error?v:new Error("Failed to send magic link"))}},[a,b,c,l,m,u]);return o&&C?e.jsxs("div",{className:"text-center space-y-4",children:[e.jsxs("div",{className:"text-success-600 font-medium",children:["Magic link sent to ",C]}),e.jsx("p",{className:"text-default-500 text-sm",children:"Check your email and click the link to sign in"}),h&&e.jsx(S,{type:"button",variant:"light",size:"sm",onPress:L,isDisabled:d||y,children:"Resend magic link"})]}):e.jsx(S,{type:"button",variant:"bordered",size:f,radius:w,className:"w-full",startContent:p,onPress:L,isDisabled:d||y||!a,isLoading:y,children:"Send magic link"})});H.displayName="MagicLinkSection";const ce=M.default.memo(({length:a=6,onComplete:m,disabled:u=!1})=>{const{components:c}=F.useConfig(),l=c.Input??je.Input,[d,f]=i.useState(Array(a).fill("")),[w,b]=i.useState(0),y=i.useCallback((h,o)=>{if(o.length>1)return;const r=[...d];r[h]=o,f(r),o&&h<a-1&&b(h+1),r.every(x=>x!=="")&&r.join("").length===a&&m(r.join(""))},[d,a,m]),C=i.useCallback((h,o)=>{o.key==="Backspace"&&!d[h]&&h>0&&b(h-1)},[d]);return e.jsx("div",{className:"flex gap-2 justify-center",children:Array.from({length:a},(h,o)=>e.jsx(l,{type:"text",maxLength:1,value:d[o],onChange:r=>y(o,r.target.value),onKeyDown:r=>C(o,r),className:"w-12 text-center",classNames:{input:"text-center text-lg font-mono",inputWrapper:"h-12 w-12"},isDisabled:u,disabled:u,autoFocus:o===w},o))})});ce.displayName="VerificationCode";function Ae({methods:a=["password","oauth","magic-link"],email:m="",organizationId:u,redirectUrl:c,onSuccess:l,onError:d,showSignUpLink:f=!0,showForgotPasswordLink:w=!0,showOrganizationSelector:b=!1,title:y,subtitle:C,variant:h="default",size:o="lg",radius:r="md",className:x="",showBranding:S=!0,disabled:p=!1,titleAlignment:L,footer:v,header:A}){const{signIn:P,isLoading:k,organizationMemberships:O}=Ce.useAuth(),{features:I,organizationSettings:B,components:R,linksPath:G,titleAlignment:V}=F.useConfig(),{authenticateWithPasskey:_}=Ne.usePasskeys(),$=i.useMemo(()=>e.jsx(D.EnvelopeIcon,{className:"w-4 h-4 text-default-400"}),[]),oe=i.useMemo(()=>e.jsx(D.LockClosedIcon,{className:"w-4 h-4 text-default-400"}),[]),le=i.useMemo(()=>e.jsx(D.LockClosedIcon,{className:"w-4 h-4"}),[]),re=M.default.useMemo(()=>L??V,[L,V]),E=R.Button??W.Button,K=R.SignInForm;if(K)return e.jsx(K,{methods:a,email:m,organizationId:u,redirectUrl:c,onSuccess:l,onError:d,showSignUpLink:f,showForgotPasswordLink:w,showOrganizationSelector:b,title:y,subtitle:C,variant:h,size:o,className:x,showBranding:S,disabled:p,footer:v,header:A});const[n,j]=i.useState({step:"credentials",method:"password",email:m,password:"",selectedOrganization:u,rememberMe:!0,showPassword:!1}),[T,q]=i.useState(null),N=i.useMemo(()=>a.filter(t=>{switch(t){case"oauth":return I.oauth;case"magic-link":return I.magicLink;case"passkey":return I.passkeys;case"sso":return I.sso;case"password":default:return!0}}),[a,I]),ue=i.useMemo(()=>{const s=B?.branding?.customLoginText?{title:B.branding.customLoginText.title||"Welcome back",subtitle:B.branding.customLoginText.subtitle||"Sign in to your account"}:{title:"Welcome back",subtitle:"Sign in to your account"},g=y||s.title,ke=C||s.subtitle;let Q;return S&&B?.branding?.logoUrl&&(Q=e.jsx("img",{src:B.branding.logoUrl,alt:"Organization Logo",className:"h-8 w-auto mx-auto mb-4"})),{size:o,variant:"flat",className:`space-y-6 ${x}`,footer:v,header:A,title:g,subtitle:ke,showCard:!1,logo:Q}},[y,C,o,x,v,A,S,B?.branding?.customLoginText,B?.branding?.logoUrl]),de=i.useCallback(async t=>{if(t.preventDefault(),q(null),!n.email||!n.password){q("Please enter your email and password");return}try{const s=await P({strategy:"password",identifier:n.email,password:n.password,organizationId:n.selectedOrganization||u});if(s.status==="needs_mfa"){j(g=>({...g,step:"mfa",mfaToken:s.mfaToken}));return}if(s.status==="needs_verification"){j(g=>({...g,step:"success",successType:"email-verification-required",successData:{email:n.email}})),l?.(s);return}s.status==="complete"&&s.user&&(j(g=>({...g,step:"success",successType:"password-signin"})),l?.(s),c&&setTimeout(()=>{window.location.href=c},1e3)),s.status==="complete"&&s.error&&q(s.error.message)}catch(s){const g=s instanceof Error?s:new Error("Sign in failed");console.error(g),q(g.message),d?.(g)}},[n.email,n.password,n.selectedOrganization,u,P,l,d,c]),me=i.useCallback(async t=>{if(n.mfaToken)try{j(s=>({...s,step:"success",successType:"mfa-verified"})),l?.({mfaVerified:!0}),c&&setTimeout(()=>{window.location.href=c},1e3)}catch(s){const g=s instanceof Error?s:new Error("MFA verification failed");q(g.message),d?.(g)}},[n.mfaToken,l,d,c]),he=i.useCallback((t,s)=>{j(g=>({...g,step:"success",successType:"oauth-signin",successData:{provider:t}})),l?.(s)},[l]),Y=i.useCallback(t=>{t.type==="magic-link-sent"?j(s=>({...s,step:"success",successType:"magic-link-sent",successData:{email:t.email,message:t.message,sendMagicLink:t.sendMagicLink,canResend:t.canResend}})):j(s=>({...s,step:"success",successType:"password-signin"})),l?.(t)},[l]),ge=i.useCallback(async()=>{try{const t=await _();t.success&&(j(s=>({...s,step:"success",successType:"passkey-signin"})),l?.(t))}catch(t){const s=t instanceof Error?t:new Error("Passkey authentication failed");q(s.message),d?.(s)}},[_,l,d]),J=i.useCallback(t=>{j(s=>({...s,email:t}))},[]),fe=i.useCallback(t=>{j(s=>({...s,password:t}))},[]),xe=i.useCallback(t=>{j(s=>({...s,rememberMe:t}))},[]),pe=i.useCallback(t=>{const s=Array.from(t)[0];j(g=>({...g,selectedOrganization:s}))},[]);return n.step==="success"?e.jsx(ae,{successType:n.successType,successData:n.successData,redirectUrl:c}):n.step==="mfa"?e.jsxs("div",{className:"space-y-6",children:[e.jsxs("div",{className:"text-center",children:[e.jsx("h3",{className:"text-xl font-semibold text-foreground mb-2",children:"Two-Factor Authentication"}),e.jsx("p",{className:"text-default-500 text-sm",children:"Enter the verification code from your authenticator app"})]}),e.jsx(ce,{length:6,onComplete:me,disabled:p||k}),T&&e.jsx("div",{className:"text-danger-600 text-sm bg-danger-50 dark:bg-danger-900/20 rounded-lg p-3 text-center",children:T}),e.jsx(E,{type:"button",variant:"light",size:"sm",onPress:()=>j(t=>({...t,step:"credentials"})),className:"w-full",children:"Back to sign in"})]}):e.jsxs(ve.default,{...ue,onSubmit:de,titleAlignment:re,children:[N.includes("oauth")&&e.jsxs(e.Fragment,{children:[e.jsx(ie,{onSuccess:he,onError:d,redirectUrl:c,organizationId:n.selectedOrganization||u,disabled:p,size:o,radius:r}),(N.includes("password")||N.includes("magic-link"))&&e.jsxs("div",{className:"relative",children:[e.jsx(z.Divider,{className:"my-4"}),e.jsx("div",{className:"absolute inset-0 flex items-center justify-center",children:e.jsx("span",{className:"bg-background text-sm text-default-500",children:"or"})})]})]}),N.includes("password")&&e.jsxs("div",{className:"space-y-2",children:[b&&O.length>1&&e.jsx(Z.Select,{label:"Organization",placeholder:"Select an organization",selectedKeys:n.selectedOrganization?[n.selectedOrganization]:[],onSelectionChange:pe,size:o,radius:r,isDisabled:p||k,children:O.map(t=>e.jsx(Z.SelectItem,{value:t.organization.id,children:t.organization.name},t.organization.id))}),e.jsx(U.default,{label:"Email",name:"email",placeholder:"Enter your email",value:n.email,onChange:J,startContent:$,size:o,radius:r,required:!0,disabled:p||k,showSuggestions:!1,showVerificationStatus:!0,variant:"bordered"}),n.email&&e.jsxs(e.Fragment,{children:[e.jsx(we.default,{label:"Password",name:"password",placeholder:"Enter your password",value:n.password,onChange:fe,startContent:oe,size:o,radius:r,required:!0,disabled:p||k,variant:"bordered"}),e.jsxs("div",{className:"flex items-center justify-between",children:[e.jsx(be.Checkbox,{isSelected:n.rememberMe,onValueChange:xe,size:"sm",isDisabled:p||k,children:"Remember me"}),w&&e.jsx(X.Link,{href:G?.forgotPassword,size:"sm",color:"primary",children:"Forgot password?"})]})]}),T&&e.jsx("div",{className:"text-danger-600 text-sm bg-danger-50 dark:bg-danger-900/20 rounded-lg p-3",children:T}),e.jsx(E,{type:"submit",color:"primary",size:o,radius:r,className:"w-full",isLoading:k,isDisabled:p||!n.email||!n.password,children:k?"Signing in...":"Sign in"}),N.includes("magic-link")&&n.email&&e.jsxs(e.Fragment,{children:[e.jsx("div",{className:"relative",children:e.jsx(z.Divider,{className:"my-1",children:e.jsx("span",{className:"bg-background text-sm text-default-500",children:"or"})})}),e.jsx(H,{email:n.email,onSuccess:Y,onError:d,redirectUrl:c,organizationId:n.selectedOrganization||u,disabled:p,size:o,radius:r})]})]}),e.jsxs("div",{className:"space-y-2",children:[N.includes("magic-link")&&!N.includes("password")&&e.jsxs("div",{className:"space-y-4",children:[e.jsx(U.default,{label:"Email",placeholder:"Enter your email",value:n.email,onChange:J,startContent:$,size:o,radius:r,required:!0,disabled:p||k,autoFocus:!0,variant:"bordered"}),e.jsx(H,{email:n.email,onSuccess:Y,onError:d,redirectUrl:c,organizationId:n.selectedOrganization||u,disabled:p,size:o,radius:r})]}),N.includes("passkey")&&e.jsxs(e.Fragment,{children:[N.includes("password")&&N.includes("magic-link")&&!n.email&&e.jsxs("div",{className:"relative",children:[e.jsx(z.Divider,{className:"my-1"}),e.jsx("div",{className:"absolute inset-0 flex items-center justify-center",children:e.jsx("span",{className:"bg-background px-2 text-sm text-default-500",children:"or"})})]}),e.jsx(E,{type:"button",variant:"bordered",size:o,radius:r,className:"w-full",startContent:le,onPress:ge,isDisabled:p||k,children:"Sign in with passkey"})]}),f&&I.signUp&&e.jsxs("div",{className:"text-center text-sm",children:[e.jsx("span",{className:"text-default-500",children:"Don't have an account? "}),e.jsx(X.Link,{href:G?.signUp,color:"primary",children:"Sign up"})]})]}),v]})}exports.SignInForm=Ae; //# sourceMappingURL=sign-in-form.cjs.map