@tern-secure/auth 1.1.0-canary.v20251206165958 → 1.1.0-canary.v20251207162402

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (16) hide show
  1. package/dist/{signin_ternsecure_e38554_1.1.0-canary.v20251206165958.js → signin_ternsecure_139cdd_1.1.0-canary.v20251207162402.js} +1 -1
  2. package/dist/{signup_ternsecure_e38554_1.1.0-canary.v20251206165958.js → signup_ternsecure_139cdd_1.1.0-canary.v20251207162402.js} +1 -1
  3. package/dist/ternsecure.browser.js +2 -2
  4. package/dist/ternsecure.js +3 -3
  5. package/dist/ternsecure.mjs +3 -3
  6. package/dist/{ui-common_ternsecure_e38554_1.1.0-canary.v20251206165958.js → ui-common_ternsecure_139cdd_1.1.0-canary.v20251207162402.js} +1 -1
  7. package/dist/{userbutton_ternsecure_e38554_1.1.0-canary.v20251206165958.js → userbutton_ternsecure_139cdd_1.1.0-canary.v20251207162402.js} +1 -1
  8. package/package.json +3 -3
  9. /package/dist/{492_ternsecure_e38554_1.1.0-canary.v20251206165958.js → 492_ternsecure_139cdd_1.1.0-canary.v20251207162402.js} +0 -0
  10. /package/dist/{687_ternsecure_e38554_1.1.0-canary.v20251206165958.js → 687_ternsecure_139cdd_1.1.0-canary.v20251207162402.js} +0 -0
  11. /package/dist/{68_ternsecure_e38554_1.1.0-canary.v20251206165958.js → 68_ternsecure_139cdd_1.1.0-canary.v20251207162402.js} +0 -0
  12. /package/dist/{framework_ternsecure_e38554_1.1.0-canary.v20251206165958.js → framework_ternsecure_139cdd_1.1.0-canary.v20251207162402.js} +0 -0
  13. /package/dist/{signin_ternsecure_e38554_1.1.0-canary.v20251206165958.css → signin_ternsecure_139cdd_1.1.0-canary.v20251207162402.css} +0 -0
  14. /package/dist/{signup_ternsecure_e38554_1.1.0-canary.v20251206165958.css → signup_ternsecure_139cdd_1.1.0-canary.v20251207162402.css} +0 -0
  15. /package/dist/{userbutton_ternsecure_e38554_1.1.0-canary.v20251206165958.css → userbutton_ternsecure_139cdd_1.1.0-canary.v20251207162402.css} +0 -0
  16. /package/dist/{vendors_ternsecure_e38554_1.1.0-canary.v20251206165958.js → vendors_ternsecure_139cdd_1.1.0-canary.v20251207162402.js} +0 -0
@@ -1 +1 @@
1
- "use strict";(globalThis.webpackChunk_tern_secure_auth=globalThis.webpackChunk_tern_secure_auth||[]).push([["666"],{9953:function(e,r,t){t.d(r,{T:()=>a});var n=t(4557);t(4105);let a=({id:e,className:r})=>{switch(e){case"google":return(0,n.jsxs)("svg",{className:r,xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",fill:"currentColor",children:[(0,n.jsx)("path",{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",fill:"#4285F4"}),(0,n.jsx)("path",{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",fill:"#34A853"}),(0,n.jsx)("path",{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",fill:"#FBBC05"}),(0,n.jsx)("path",{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",fill:"#EA4335"})]});case"github":return(0,n.jsx)("svg",{className:r,xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",fill:"currentColor",children:(0,n.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"})});case"microsoft":return(0,n.jsxs)("svg",{className:r,xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 23 23",fill:"currentColor",children:[(0,n.jsx)("path",{fill:"#f35325",d:"M1 1h10v10H1z"}),(0,n.jsx)("path",{fill:"#81bc06",d:"M12 1h10v10H12z"}),(0,n.jsx)("path",{fill:"#05a6f0",d:"M1 12h10v10H1z"}),(0,n.jsx)("path",{fill:"#ffba08",d:"M12 12h10v10H12z"})]});case"apple":return(0,n.jsx)("svg",{className:r,xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",fill:"currentColor",children:(0,n.jsx)("path",{d:"M17.05 20.28c-.98.95-2.05.88-3.08.4-1.09-.5-2.08-.48-3.24.02-1.44.62-2.2.44-3.06-.4C2.79 15.25 3.51 7.59 9.05 7.31c1.35.07 2.29.74 3.08.74 1.18 0 2.45-1.62 4.37-1.62 1.71.12 2.7.84 3.4 1.84-3.18 1.62-2.67 5.86.34 7.1-.68 1.75-1.6 3.47-3.19 4.91zM12.03 7.25c-.15-2.23 1.66-4.07 3.74-4.25.29 2.58-2.34 4.5-3.74 4.25z"})});case"facebook":return(0,n.jsx)("svg",{className:r,xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",fill:"currentColor",children:(0,n.jsx)("path",{d:"M24 12.073c0-6.627-5.373-12-12-12s-12 5.373-12 12c0 5.99 4.388 10.954 10.125 11.854v-8.385H7.078v-3.47h3.047V9.43c0-3.007 1.792-4.669 4.533-4.669 1.312 0 2.686.235 2.686.235v2.953H15.83c-1.491 0-1.956.925-1.956 1.874v2.25h3.328l-.532 3.47h-2.796v8.385C19.612 23.027 24 18.062 24 12.073z",fill:"#1877F2"})});case"twitter":return(0,n.jsx)("svg",{className:r,xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",fill:"currentColor",children:(0,n.jsx)("path",{d:"M18.244 2.25h3.308l-7.227 8.26 8.502 11.24H16.17l-5.214-6.817L4.99 21.75H1.68l7.73-8.835L1.254 2.25H8.08l4.713 6.231zm-1.161 17.52h1.833L7.084 4.126H5.117z"})});default:return null}}},2648:function(e,r,t){t.d(r,{_:()=>l});var n=t(4557),a=t(4853),s=t(8992),i=t(384);let l=e=>{let{navigate:r}=(0,i.rd)(),t=(0,s.f0)();return(0,n.jsx)("div",{className:"tern:relative tern:flex tern:justify-center tern:p-6 tern:md:p-10",children:(0,n.jsx)("div",{className:"tern:w-full tern:max-w-sm",children:(0,n.jsxs)(s.Zp,{className:(0,a.cn)("tern:mt-8 tern:w-full tern:max-w-md"),children:[(0,n.jsxs)(s.aR,{className:"tern:space-y-1 tern:text-center",children:[(0,n.jsx)(s.ZB,{children:"Verify your email"}),(0,n.jsx)(s.BT,{className:(0,a.cn)("tern:text-muted-foreground"),children:e.emailSent?"We've sent a verification link to your email address. Please check your inbox and click the link to continue.":"Sending verification email..."})]}),(0,n.jsxs)(s.Wu,{className:"tern:space-y-4",children:[t.error&&(0,n.jsx)(s.Fc,{variant:"destructive",className:"tern:animate-in tern:fade-in-50",children:(0,n.jsx)(s.TN,{children:t.error.message})}),e.emailSent&&e.onResend&&(0,n.jsxs)("div",{className:"tern:space-y-2",children:[(0,n.jsx)(s.Fc,{children:(0,n.jsx)(s.TN,{children:"Didn't receive the email? Check your spam folder or click the button below to resend."})}),(0,n.jsx)(s.MS,{onClick:()=>void e.onResend?.(),disabled:e.isLoading,variant:"outline",className:"tern:w-full",startDisabled:!0,throttleTimeInSec:60,children:e.isLoading?"Sending...":"Resend verification email"})]})]}),(0,n.jsx)(s.ry,{className:"tern:text-center",children:(0,n.jsx)("a",{onClick:()=>void r("../"),children:"Go back"})})]})})})}},1687:function(e,r,t){t.r(r),t.d(r,{PasswordResetSuccess:()=>f,PasswordReset:()=>h,SignIn:()=>$,SignInModal:()=>V}),t(4518);var n=t(4557),a=t(802),s=t(4105),i=t(5197),l=t(5977),o=t(384),c=t(4853),d=t(8992);function u(){let e=(0,l.o1)(),r=(0,d.f0)(),{navigate:t}=(0,o.rd)(),a=(0,d.T3)({defaultValues:{email:""},validators:{onSubmitAsync:async({value:n})=>{try{await e?.sendPasswordResetEmail(n.email),t("../reset-password-success")}catch(e){throw r.setError({status:"error",name:"ResetPasswordError",message:e.message||"Failed to send reset email",error:e}),e}}}});return(0,n.jsx)("div",{className:"tern:relative tern:flex tern:justify-center tern:p-6 tern:md:p-10",children:(0,n.jsxs)(d.Zp,{className:(0,c.cn)("tern:mt-8 tern:w-full tern:max-w-md"),children:[(0,n.jsxs)(d.aR,{className:"tern:space-y-1",children:[(0,n.jsx)(d.ZB,{children:"Reset Password"}),(0,n.jsx)(d.BT,{children:"Enter your email address and we'll send you a link to reset your password"})]}),(0,n.jsxs)(d.Wu,{children:[r.error&&(0,n.jsx)(d.Fc,{variant:"destructive",className:"tern:animate-in tern:fade-in-50 tern:mb-4",children:(0,n.jsx)(d.TN,{children:r.error.message})}),(0,n.jsx)("form",{onSubmit:e=>{e.preventDefault(),e.stopPropagation(),a.handleSubmit()},children:(0,n.jsxs)(d.M_,{children:[(0,n.jsx)(a.AppField,{name:"email",children:e=>(0,n.jsx)(e.TernEmailField,{label:"Email",placeholder:"Enter your email",disabled:a.state.isSubmitting,required:!0})}),(0,n.jsxs)("div",{className:"tern:flex tern:gap-3",children:[(0,n.jsx)(d.$n,{type:"submit",disabled:!a.state.canSubmit||a.state.isSubmitting,className:"tern:flex-1",children:a.state.isSubmitting?"Sending...":"Send Reset Link"}),(0,n.jsx)(d.$n,{type:"button",variant:"outline",onClick:()=>{t("../")},disabled:a.state.isSubmitting,className:"tern:flex-1",children:"Cancel"})]})]})})]})]})})}let h=()=>(0,n.jsx)(d.pe,{children:(0,n.jsx)(u,{})});var m=t(3873);function f(){let{navigate:e}=(0,o.rd)();return(0,n.jsx)("div",{className:"tern:relative tern:flex tern:items-center tern:justify-center",children:(0,n.jsxs)(d.Zp,{className:(0,c.cn)("tern:w-full tern:max-w-md tern:mx-auto tern:mt-8"),children:[(0,n.jsxs)(d.aR,{className:"tern:space-y-1 tern:text-center",children:[(0,n.jsx)("div",{className:"tern:w-12 tern:h-12 tern:mx-auto tern:bg-green-500 tern:rounded-full tern:flex tern:items-center tern:justify-center tern:text-white",children:(0,n.jsx)(m.Jl,{className:"tern:w-6 tern:h-6"})}),(0,n.jsx)(d.ZB,{className:"tern:font-bold",children:"Check your email"}),(0,n.jsx)(d.BT,{className:"tern:text-muted-foreground",children:"Password reset instructions sent"})]}),(0,n.jsx)(d.Wu,{className:"tern:space-y-4",children:(0,n.jsx)(d.$n,{onClick:()=>e("../"),className:"tern:w-full",children:"Back to sign in"})})]})})}var p=t(6282),x=t(4904),g=t(3777);let v={password:""},j=e=>{let r=(0,d.f0)(),{signInWithPassword:t,onForgotPassword:a}=e,s=(0,d.T3)({defaultValues:v,validators:{onSubmitAsync:({value:e})=>t?.(e.password)}});return(0,n.jsx)("div",{className:"tern:relative tern:flex tern:justify-center tern:p-6 tern:md:p-10",children:(0,n.jsx)("div",{className:"tern:w-full tern:max-w-sm",children:(0,n.jsxs)(d.Zp,{className:(0,c.cn)("tern:mt-8 tern:w-full tern:max-w-md"),children:[(0,n.jsxs)(d.aR,{className:"tern:space-y-1 tern:text-center",children:[(0,n.jsx)(d.ZB,{className:(0,c.cn)("tern:font-bold"),children:"Enter your password"}),(0,n.jsx)(d.BT,{className:(0,c.cn)("tern:text-muted-foreground"),children:"Enter the password for your account to continue"})]}),(0,n.jsxs)(d.Wu,{className:"tern:space-y-4",children:[r.error&&(0,n.jsx)(d.Fc,{variant:"destructive",className:"tern:animate-in tern:fade-in-50",children:(0,n.jsx)(d.TN,{children:r.error.message})}),(0,n.jsx)(d.M_,{children:(0,n.jsx)("form",{onSubmit:e=>{e.preventDefault(),e.stopPropagation(),s.handleSubmit()},className:"tern:flex tern:flex-col tern:gap-4",children:(0,n.jsx)(s.Subscribe,{selector:e=>[e.canSubmit,e.isSubmitting],children:([e,t])=>(0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)(s.AppField,{name:"password",children:e=>(0,n.jsx)(e.TernPasswordField,{label:"Password",placeholder:"Enter your password",disabled:t||r.isLoading,required:!0,onForgotPassword:a})}),(0,n.jsx)(g.pr,{canSubmit:e,isSubmitting:t,submitText:"Continue",submittingText:"Signing in..."})]})})})})]})]})})})};var w=t(4186);let b=e=>{let r=(0,d.f0)(),t=(0,d.xM)({onCodeEntryFinished:(r,t,n)=>{e.onCodeEntryFinishedAction(r,t,n)},onResendCodeClicked:e.onResendCodeClicked});return(0,n.jsx)("div",{className:"tern:relative tern:flex tern:justify-center tern:p-6 tern:md:p-10",children:(0,n.jsx)("div",{className:"tern:w-full tern:max-w-sm",children:(0,n.jsxs)(d.Zp,{className:(0,c.cn)("tern:mt-8 tern:w-full tern:max-w-md"),children:[(0,n.jsxs)(d.aR,{className:"tern:space-y-1 tern:text-center",children:[(0,n.jsx)(d.ZB,{children:e.cardTitle}),(0,n.jsx)(d.BT,{children:e.cardDescription})]}),(0,n.jsxs)(d.Wu,{className:"tern:space-y-4",children:[r.error&&(0,n.jsx)(d.Fc,{variant:"destructive",children:(0,n.jsx)(d.TN,{children:r.error.message})}),(0,n.jsx)(y,{...t,onResendCode:t.onResendCode}),(0,n.jsx)(d.$n,{className:"tern:w-full",disabled:t.isLoading,onClick:()=>{let{values:e,length:n}=t.otpControl.otpInputProps;e.join("").length<n?r.setError({status:"error",message:"Please enter the code.",error:Error("Incomplete code")}):t.onFakeContinue()},children:e.submitButtonText})]})]})})})},y=e=>{let{otpControl:r,resendButton:t,description:a,isLoading:s,isDisabled:i,onResendCode:l,centerAlign:o=!0}=e,{values:u,setValues:h,length:m,feedback:f,feedbackType:p,ref:x}=r.otpInputProps,g=u.join("");return(0,n.jsxs)("div",{className:(0,c.cn)("tern:flex tern:flex-col tern:gap-4",o&&"tern:items-center"),children:[(0,n.jsxs)(d.UV,{maxLength:m,value:g,onChange:e=>{let r=e.split("");for(;r.length<m;)r.push("");h(r)},disabled:i||s,ref:x,children:[(0,n.jsxs)(d.NV,{children:[(0,n.jsx)(d.sF,{index:0}),(0,n.jsx)(d.sF,{index:1}),(0,n.jsx)(d.sF,{index:2})]}),(0,n.jsx)(d.pf,{}),(0,n.jsxs)(d.NV,{children:[(0,n.jsx)(d.sF,{index:3}),(0,n.jsx)(d.sF,{index:4}),(0,n.jsx)(d.sF,{index:5})]})]}),a&&(0,n.jsx)("div",{className:"tern:text-sm tern:text-muted-foreground",children:a}),l&&(0,n.jsx)(d.MS,{onClick:l,startDisabled:!0,disabled:"success"===p||s,showCounter:"success"!==p,throttleTimeInSec:60,className:"tern:text-sm tern:text-muted-foreground hover:tern:text-primary tern:underline tern:underline-offset-4",children:"Resend Code"})]})},N="recaptcha-verifier-container",S=e=>{let r=(0,l.o1)(),t=(0,d.f0)(),{navigate:i}=(0,o.rd)(),{afterSignInUrl:c}=(0,l.r3)(),u=(0,a.qn)();(0,l.At)();let h=s.useRef(null),[m,f]=s.useState(null),[p,x]=s.useState(!1),g=s.useRef(!1),v=u.firebaseApp,j=(0,w.xI)(v),y=s.useCallback(async()=>{if(!r?.identifier)return;let e=window.recaptchaVerifier,n=await r.authenticateWithPhoneNumber({phoneNumber:r.identifier,appVerifier:e});"error"===n.status&&t.setError({status:"error",message:n.message,error:n.error})},[r,t]),S=s.useCallback(async()=>{if("phone_code"===e.factor.strategy&&r&&h.current&&!m&&!p&&!g.current){g.current=!0,x(!0);try{let e=h.current;e.id||(e.id=N),window.recaptchaVerifier=new w.kT(j,e,{size:"invisible",callback:e=>{console.log("reCAPTCHA solved. Appcheck Verified this flow",e)},"expired-callback":()=>{t.setError({status:"error",message:"reCAPTCHA expired. Please try again."}),x(!1),g.current=!1}});let r=window.recaptchaVerifier;f(r),await y()}catch(e){console.error("Failed to initialize reCAPTCHA verifier",e),t.setError({status:"error",message:"Failed to initialize security verification",error:e}),x(!1),g.current=!1}}},[e.factor.strategy,r,m,p,y,t]);return s.useEffect(()=>(S(),()=>{window.recaptchaVerifier&&(window.recaptchaVerifier.clear(),delete window.recaptchaVerifier)}),[]),(0,n.jsxs)(n.Fragment,{children:["phone_code"===e.factor.strategy&&(0,n.jsx)("div",{ref:h,id:N,style:{minHeight:"78px",display:"flex",justifyContent:"center",alignItems:"center",width:"100%"}}),(0,n.jsx)(b,{cardTitle:"Enter Code",cardDescription:`Please enter the code sent to your ${"phone_code"===e.factor.strategy?"phone":"email"}.`,onCodeEntryFinishedAction:(t,n,a)=>{(async()=>{try{let s;"phone_code"===e.factor.strategy&&(s=await r?.attemptPhoneNumberVerification({code:t})),s?.status==="success"?(await n(),r?.user&&await u.createActiveSession({session:r.user,redirectUrl:c})):await a(Error("Verification failed"))}catch(e){await a(e)}})()},onResendCodeClicked:t=>{t.preventDefault(),(async()=>{"phone_code"===e.factor.strategy&&r?.identifier&&m&&await y()})()},onBackLinkClicked:()=>{i("../")},inputLabel:"SignIn PhoneCode",submitButtonText:"Continue"})]})},E=e=>(0,n.jsx)(S,{...e}),P=(0,d.dm)(function(){let e=(0,l.o1)(),r=(0,a.qn)(),t=r.requiresVerification,i=(0,d.f0)(),c=(0,o.rd)(),{navigate:u}=c,{afterSignInUrl:h}=(0,p.r)(),[m,f]=s.useState(null),g=(0,x.u)(m,e?.supportedFirstFactors);s.useEffect(()=>{(e?.status==="needs_identifier"||e?.status===null)&&c.navigate("../")},[e?.status,c]);let v=async n=>{if(!e?.identifier)return void i.setError({status:"error",message:"Identifier is missing"});let a=await e?.authenticateWithPassword({email:e.identifier,password:n});if(a?.status==="error"&&i.setError({status:"error",message:a.message,error:a.error}),a?.status==="success"){if(t&&!a.user.emailVerified)return void u("../verify-email-address");await r.createActiveSession({session:a.user,redirectUrl:h})}};if(!g&&e?.status)return(0,n.jsx)(d.Jr,{});if(!g)return(0,n.jsx)(d.B0,{});switch(g?.strategy){case"password":return(0,n.jsx)(j,{signInWithPassword:v,onForgotPassword:()=>{u("../reset-password")}});case"phone_code":return(0,n.jsx)(E,{factor:{...g}});default:return(0,n.jsx)(d.B0,{})}});var C=t(5305);t(9953);let k=e=>{let{isExternal:r,children:t,href:a,onClick:s,...i}=e,l=s?e=>{a||e.preventDefault(),s(e)}:void 0;return(0,n.jsx)("a",{...i,onClick:l,href:a||"",target:a&&r?"_blank":void 0,rel:a&&r?"noopener":void 0,children:t})},R=e=>{let{to:r,onClick:t,...a}=e,s=(0,o.rd)(),i=s.resolve(r||s.indexPath);return(0,n.jsx)(k,{...a,onClick:e=>(e.preventDefault(),t&&!r)?t(e):s.navigate(i.href),href:i.href})},A=()=>{let e=(0,l.o1)(),r=(0,a.qn)(),t=(0,d.f0)(),i=(0,l.r3)(),{afterSignInUrl:o,socialProviders:c}=i,u=(0,l.At)(),h=c||u.socialProviders||[];s.useEffect(()=>{i.checkRedirectResult()},[]);let m=async n=>{let a=n.options||{mode:"popup"},s=await e?.authenticateWithSocialProvider(n.name,{mode:a.mode||"popup",customParameters:a.customParameters,scopes:a.scopes});s?.status==="error"&&t.setError({status:"error",message:s.message,error:s.error}),s?.status==="success"&&await r.createActiveSession({session:s.user,redirectUrl:o})};return 0===h.length?null:(0,n.jsx)(d.VR,{onProviderClick:e=>void m(e),disabled:t.isLoading,providers:h})},U={email:"",password:""},F=e=>{let{onError:r,isDisabled:t,signInWithPassword:a,onForgotPassword:s}=e,i=(0,d.T3)({defaultValues:U,validators:{onSubmitAsync:async({value:e})=>{try{a&&await a(e.email,e.password)}catch(e){throw r?.(e),e}}}});return(0,n.jsxs)(d.M_,{children:[(0,n.jsx)("form",{onSubmit:e=>{e.preventDefault(),e.stopPropagation(),i.handleSubmit()},className:"tern:flex tern:flex-col tern:gap-7",children:(0,n.jsx)(i.Subscribe,{selector:e=>[e.canSubmit,e.isSubmitting],children:([e,r])=>(0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)(i.AppField,{name:"email",children:e=>(0,n.jsx)(e.TernEmailField,{label:"Email",placeholder:"Enter your email",disabled:r||t,required:!0})}),(0,n.jsx)(i.AppField,{name:"password",children:e=>(0,n.jsx)(e.TernPasswordField,{label:"Password",placeholder:"Enter your password",disabled:r||t,required:!0,onForgotPassword:s})}),(0,n.jsx)(g.pr,{canSubmit:e,isSubmitting:r,submitText:"Sign In",submittingText:"Signing in..."}),(0,n.jsx)(d.KB,{children:"Or continue with"})]})})}),(0,n.jsx)(A,{})]})},T=({src:e,alt:r})=>(0,n.jsx)("div",{className:"tern:mb-4 tern:flex tern:justify-center",children:(0,n.jsx)("img",{src:e,alt:r,className:"tern:h-10 tern:w-auto"})}),I=(0,d.dm)(function(){let e=(0,l.o1)(),r=(0,a.qn)(),t=(0,l.At)(),{appName:i}=t,u=(0,p.r)(),h=t.signUpMode||"public",m=t.passwordAuthentication??!0,f=r.requiresVerification,x=(0,d.f0)(),{navigate:v}=(0,o.rd)(),{afterSignInUrl:j,signUpUrl:w,showCombinedForm:b,appearance:y}=u,N=u.preferredEmailStrategy||"password",S=(0,s.useMemo)(()=>["email_address","phone_number"],[]),E=y?.layout,P=E?.logoPlacement||"inside",k=E?.logoImageUrl,U=E?.socialButtonsPlacement||"bottom",I=u.initialValues?.phoneNumber!==void 0&&void 0===u.initialValues.emailAddress&&S.includes("phone_number"),[_,L]=(0,s.useState)(I?"phone_number":S[0]||""),q=u.initialValues||{},M=(0,s.useMemo)(()=>({email_address:q.emailAddress,email_address_username:q.emailAddress||q.username,username:q.username,phone_number:q.phoneNumber}),[q.emailAddress,q.phoneNumber,q.username]),{fieldName:B,label:$,placeholder:V}=(0,s.useMemo)(()=>"phone_number"===_?{fieldName:"phoneNumber",label:"Phone number",placeholder:"Enter your phone number"}:{fieldName:"email",label:"Email",placeholder:"Enter your email"},[_]),O=(u.socialProviders||t.socialProviders||[]).length>0,z=(0,s.useMemo)(()=>"phone_number"===_?"tel":"email",[_]),D=(0,s.useMemo)(()=>({[B]:M[_]||""}),[B,_,M[_]]),W=(0,d.T3)({defaultValues:D,validators:{onSubmitAsync:({value:e})=>H(e)}}),H=async t=>{try{let n,a,s=await e?.create((n=t.phoneNumber||t.email||t.identifier||"",a="phone_number"===_?"phone_code":"email_code",("phone_number"!==_&&"password"===N&&(a="password"),"password"===a)?{strategy:"password",identifier:n}:{strategy:a,identifier:n}));switch(s?.status){case"needs_first_factor":return v("factor-one");case"needs_email_verification":return v("verify-email-address");case"success":return r.createActiveSession({redirectUrl:j})}}catch(e){if(e instanceof C.yS){let r=e.errors[0];x.setError({status:"error",message:r?.message||e.message,error:r})}else x.setError({status:"error",message:"An unexpected error occurred.",error:e})}},Z=async(t,n)=>{let a=await e?.authenticateWithPassword({email:t,password:n});if(a?.status==="error"&&x.setError({status:"error",message:a.message,error:a.error}),a?.status==="success"){if(f&&a?.user.emailVerified===!1)return void v("verify-email-address");await r.createActiveSession({session:a.user,redirectUrl:j})}};return(0,n.jsx)("div",{className:"tern:relative tern:flex tern:justify-center tern:p-6 tern:md:p-10",children:(0,n.jsxs)("div",{className:"tern:w-full tern:max-w-sm",children:["outside"===P&&k&&(0,n.jsx)(T,{src:k,alt:i||"App Logo"}),(0,n.jsxs)(d.Zp,{className:(0,c.cn)("tern:mt-8 tern:w-full tern:max-w-md"),children:[(0,n.jsxs)(d.aR,{className:"tern:space-y-1 tern:text-center",children:["inside"===P&&k&&(0,n.jsx)(T,{src:k,alt:i||"App Logo"}),(0,n.jsx)(d.ZB,{className:(0,c.cn)("tern:font-bold"),children:i?`Sign in to ${i}`:"Sign in"}),(0,n.jsx)(d.BT,{className:(0,c.cn)("tern:text-muted-foreground"),children:"Please sign in to continue"})]}),(0,n.jsxs)(d.Wu,{className:"tern:space-y-4",children:[x.error&&(0,n.jsx)(d.Fc,{variant:"destructive",className:"tern:animate-in tern:fade-in-50",children:(0,n.jsx)(d.TN,{children:x.error.message})}),b?(0,n.jsxs)(d.M_,{children:["top"===U&&O&&(0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)(A,{}),m&&(0,n.jsx)(d.KB,{children:"Or continue with"})]}),m&&(0,n.jsx)("form",{onSubmit:e=>{e.preventDefault(),e.stopPropagation(),W.handleSubmit()},className:"tern:flex tern:flex-col tern:gap-7",children:(0,n.jsx)(W.Subscribe,{selector:e=>[e.canSubmit,e.isSubmitting],children:([e,r])=>(0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)(W.AppField,{name:B,children:e=>"tel"===z?(0,n.jsx)(e.TernTextField,{label:$,placeholder:V,disabled:r||x.isLoading,required:!0}):(0,n.jsx)(e.TernEmailField,{label:$,placeholder:V,disabled:r||x.isLoading,required:!0})}),(0,n.jsx)(g.pr,{canSubmit:e,isSubmitting:r,submitText:"Continue",submittingText:"Continuing..."}),"bottom"===U&&O&&(0,n.jsx)(d.KB,{children:"Or continue with"})]})})}),"bottom"===U&&O&&(0,n.jsx)(A,{})]}):m&&(0,n.jsx)(F,{signInWithPassword:Z,onError:e=>{x.setError(e)},isDisabled:x.isLoading,onForgotPassword:()=>{v("reset-password")}}),"public"===h&&(0,n.jsxs)(d.ry,{className:"tern:text-center",children:["Don't have an account? ",(0,n.jsx)(R,{to:w,children:"Sign up"})]})]})]})]})})});var _=t(2648);function L(){let e=(0,l.o1)(),{afterSignInUrl:r}=(0,l.r3)(),t=(0,d.f0)(),[a,i]=s.useState(!1);s.useEffect(()=>{o()},[]);let o=async()=>{let n=await e?.attemptEmailVerification({url:r,handleCodeInApp:!0});n?.status==="error"?t.setError({status:"error",message:n.message,error:n.error}):i(!0)},c=async()=>{t.setLoading(),await o(),t.setIdle()};return(0,n.jsx)(_._,{emailSent:a,onResend:c,isLoading:t.isLoading})}let q=(0,d.dm)(()=>(0,n.jsx)(L,{}));function M(){let e=(0,a.qn)();return s.useEffect(()=>{e.redirectToSignIn()},[]),null}function B(){return(0,n.jsx)("div",{className:"tern tern:w-full tern:min-h-full",children:(0,n.jsxs)(o.dO,{children:[(0,n.jsx)(o.qh,{path:"reset-password",children:(0,n.jsx)(h,{})}),(0,n.jsx)(o.qh,{path:"reset-password-success",children:(0,n.jsx)(f,{})}),(0,n.jsx)(o.qh,{path:"factor-one",children:(0,n.jsx)(P,{})}),(0,n.jsx)(o.qh,{path:"verify-email-address",canActivate:e=>!!e.signIn?.identifier,children:(0,n.jsx)(q,{})}),(0,n.jsx)(o.qh,{index:!0,children:(0,n.jsx)(I,{})}),(0,n.jsx)(o.qh,{children:(0,n.jsx)(M,{})})]})})}B.displayName="SignIn";let $=function(){let e=(0,l.r3)(),r={componentName:"SignUp",forceRedirectUrl:e.signUpForceRedirectUrl,fallbackRedirectUrl:e.signUpFallbackRedirectUrl,signInUrl:e.signInUrl,...(0,i.C)({routing:e?.routing,path:e?.path})};return(0,n.jsx)(l.gh.Provider,{value:r,children:(0,n.jsx)(B,{})})},V=e=>(0,n.jsx)(o.qh,{path:"sign-in",children:(0,n.jsx)(l.QI.Provider,{value:{componentName:"SignIn",...e,routing:"virtual",mode:"modal"},children:(0,n.jsx)("div",{children:(0,n.jsx)($,{...e,routing:"virtual"})})})})},8102:function(e,r,t){t.r(r),t.d(r,{SignUp:()=>v,SignUpModal:()=>j,SignUpVerifyEmail:()=>p,SignUpStart:()=>h}),t(4518);var n=t(4557),a=t(802),s=t(4105),i=t(5977),l=t(384),o=t(4853),c=t(8992),d=t(3777);let u=()=>{let e=(0,i.o1)(),r=(0,a.qn)(),t=(0,c.f0)(),{afterSignUpUrl:s,socialProviders:l}=(0,i.Xu)(),o=(0,i.At)(),d=l||o.socialProviders||[],u=async n=>{let a=n.options||{mode:"popup"},i=await e?.authenticateWithSocialProvider(n.name,{mode:a.mode||"popup",customParameters:a.customParameters,scopes:a.scopes});i?.status==="error"&&t.setError({status:"error",message:i.message,error:i.error}),i?.status==="success"&&await r.createActiveSession({session:i.user,redirectUrl:s})};return 0===d.length?null:(0,n.jsx)(c.VR,{onProviderClick:e=>void u(e),disabled:t.isLoading,providers:d})},h=(0,c.dm)(function(){let e=(0,i.Kp)(),r=(0,c.f0)(),{navigate:t}=(0,l.rd)(),s=(0,i.Xu)(),{afterSignUpUrl:h,signInUrl:m,shouldShowForm:f=!0}=s,{createActiveSession:p}=(0,a.qn)(),x=(0,i.At)(),{appName:g}=x,v=(s.socialProviders||x.socialProviders||[]).length>0,j=(0,c.T3)({defaultValues:{email:"",password:""},validators:{onSubmitAsync:async({value:e})=>await w(e.email,e.password)}}),w=async(n,a)=>{if(!e)return;let i=await e.withEmailAndPassword({email:n,password:a});if("error"===i.status)return void r.setError({status:"error",message:i.message,error:i.error});let l=s.afterSignUpUrl||"/";await (({signUp:e,verifyEmailPath:r,navigate:t,handleComplete:n})=>"complete"===e.status?n&&n():"missing_requirements"===e.status&&e.unverifiedFields?.includes("email_address")&&r?t(r):void 0)({signUp:i,verifyEmailPath:"verify-email-address",handleComplete:async()=>p({session:i.user,redirectUrl:h}),navigate:t,redirectUrlComplete:l})};return(0,n.jsx)("div",{className:"tern:relative tern:flex tern:justify-center tern:p-6 tern:md:p-10",children:(0,n.jsx)("div",{className:"tern:w-full tern:max-w-sm",children:(0,n.jsxs)(c.Zp,{className:(0,o.cn)("tern:mt-8 tern:w-full tern:max-w-md"),children:[(0,n.jsxs)(c.aR,{className:"tern:space-y-1 tern:text-center",children:[(0,n.jsx)(c.ZB,{children:g?`Create your ${g} account`:"Create your account"}),(0,n.jsx)(c.BT,{className:(0,o.cn)("tern:text-muted-foreground"),children:f?"Welcome! Please fill in the details to get started.":"Welcome! Please sign up to continue."})]}),(0,n.jsxs)(c.Wu,{className:"tern:space-y-4",children:[r.error&&(0,n.jsx)(c.Fc,{variant:"destructive",className:"tern:animate-in tern:fade-in-50",children:(0,n.jsx)(c.TN,{children:r.error.message})}),(0,n.jsxs)(c.M_,{children:[f&&(0,n.jsx)("form",{onSubmit:e=>{e.preventDefault(),e.stopPropagation(),j.handleSubmit()},className:"tern:flex tern:flex-col tern:gap-7",children:(0,n.jsx)(j.Subscribe,{selector:e=>[e.canSubmit,e.isSubmitting],children:([e,t])=>(0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)(j.AppField,{name:"email",children:e=>(0,n.jsx)(e.TernEmailField,{label:"Email",placeholder:"Enter your email",disabled:t||r.isLoading,required:!0})}),(0,n.jsx)(j.AppField,{name:"password",children:e=>(0,n.jsx)(e.TernPasswordField,{label:"Password",placeholder:"Enter your password",disabled:t||r.isLoading,required:!0})}),(0,n.jsx)(d.pr,{canSubmit:e,isSubmitting:t,submitText:"Continue",submittingText:"Creating Account..."}),v&&(0,n.jsx)(c.KB,{children:"Or continue with"})]})})}),v&&(0,n.jsx)(u,{})]})]}),(0,n.jsxs)(c.ry,{className:"tern:text-center",children:["Already have an account? ",(0,n.jsx)("a",{href:m,children:"Sign In"})]})]})})})});var m=t(2648);function f(){let e=(0,i.Kp)(),{afterSignUpUrl:r}=(0,i.Xu)(),t=(0,c.f0)(),[a,l]=s.useState(!1);s.useEffect(()=>{o()},[]);let o=async()=>{let n=await e?.attemptEmailVerification({url:r,handleCodeInApp:!0});n?.status==="error"?t.setError({status:"error",message:n.message,error:n.error}):l(!0)},d=async()=>{t.setLoading(),await o(),t.setIdle()};return(0,n.jsx)(m._,{emailSent:a,onResend:d,isLoading:t.isLoading})}let p=(0,c.dm)(()=>(0,n.jsx)(f,{}));function x(){let e=(0,a.qn)();return s.useEffect(()=>{e.redirectToSignUp()},[]),null}function g(){return(0,n.jsx)("div",{className:"tern",children:(0,n.jsxs)(l.dO,{children:[(0,n.jsx)(l.qh,{path:"verify-email-address",canActivate:e=>!!e.signUp?.user?.email,children:(0,n.jsx)(p,{})}),(0,n.jsx)(l.qh,{index:!0,children:(0,n.jsx)(h,{})}),(0,n.jsx)(l.qh,{children:(0,n.jsx)(x,{})})]})})}g.displayName="SignUp";let v=g,j=e=>(0,n.jsx)(l.qh,{path:"sign-up",children:(0,n.jsx)(i.gh.Provider,{value:{componentName:"SignUp",...e,routing:"virtual",mode:"modal"},children:(0,n.jsx)("div",{children:(0,n.jsx)(v,{...e,routing:"virtual"})})})})},7947:function(e,r,t){t.r(r),t.d(r,{UserButton:()=>l});var n=t(4557);t(4518);var a=t(802),s=t(5977),i=t(8992);function l(){let e,r=(0,s.ZY)(),t=(0,a.qn)(),l="User Avatar";return r?(e=r.displayName?.charAt(0).toUpperCase()||"U",r.displayName&&(l=`${r.displayName}'s Avatar`)):(e="?",l="Guest Avatar"),(0,n.jsx)("div",{className:"tern",style:{display:"contents"},children:r?(0,n.jsxs)(i.$n,{onClick:()=>{t.signOut()},variant:"outline",className:"tern:flex tern:items-center tern:gap-2",children:[(0,n.jsxs)(i.eu,{children:[(0,n.jsx)(i.BK,{src:r?.photoURL||void 0,alt:l}),(0,n.jsx)(i.q5,{children:e})]}),"Sign Out"]}):(0,n.jsxs)(i.$n,{onClick:()=>{t.redirectToSignIn()},variant:"outline",className:"tern:flex tern:items-center tern:gap-2",children:[(0,n.jsxs)(i.eu,{children:[(0,n.jsx)(i.BK,{src:void 0,alt:l}),(0,n.jsx)(i.q5,{children:e})]}),"Sign In"]})})}},4967:function(e,r,t){t.d(r,{At:()=>l,az:()=>i});var n=t(4557),a=t(4105);let s=a.createContext({});function i({children:e,value:r}){return(0,n.jsx)(s.Provider,{value:r,children:e})}function l(){let e=a.useContext(s);if(void 0===e)throw Error("TernSecureAuthOptions context is not available. Ensure that the context is properly initialized.");return e}},6282:function(e,r,t){t.d(r,{Q:()=>u,r:()=>h});var n=t(802),a=t(8978),s=t(4105),i=t(5407),l=t(2117),o=t(384),c=t(4967),d=t(4904);let u=(0,s.createContext)(null),h=()=>{let e=(0,s.useContext)(u),{navigate:r}=(0,o.rd)(),{queryParams:t,queryString:h}=(0,o.rd)(),m=(0,c.At)(),f=(0,n.qn)();if(null===e||"SignIn"!==e.componentName)throw Error("useSignInContext called outside of the mounted SignIn component.");let p="restricted"!==m.signUpMode&&!!(!m.signUpUrl&&m.signInUrl&&!(0,a.v)(m.signInUrl)),x=e.showCombinedForm??!0,{componentName:g,mode:v,...j}=e,w=(0,s.useMemo)(()=>(0,d.t)(h,i.e8),[]),b=(0,s.useCallback)((e,r,t="AuthError",n)=>{let a=Error(e);return a.name=t,a.code=r,a.response=n,a},[]),y=(0,s.useCallback)(e=>{console.error(e)},[]),N=new l.nQ(m,{...j,signInFallbackRedirectUrl:j.signInFallbackRedirectUrl||j.fallbackRedirectUrl,signInForceRedirectUrl:j.signInForceRedirectUrl||j.forceRedirectUrl},t,v);delete j.fallbackRedirectUrl,delete j.forceRedirectUrl;let S=f.constructUrlWithAuthRedirect(N.getAfterSignInUrl()),E=f.constructUrlWithAuthRedirect(N.getAfterSignUpUrl()),P=()=>r(S),C="path"===j.routing&&j.path||m.signInUrl,k=p?"path"===j.routing&&j.path||m.signUpUrl:j.signUpUrl||m.signUpUrl,R=N.getPreservedSearchParams();C=(0,l.kZ)({base:C,hashSearchParams:[t,R]},{stringify:!0}),k=(0,l.kZ)({base:k,hashSearchParams:[t,R]},{stringify:!0});let A=N.toSearchParams().toString(),U=(0,s.useCallback)(async(e,r)=>{try{if(await f.createActiveSession({session:e}),r?.onPreRedirect)try{await r.onPreRedirect()&&P()}catch(r){let e=b("Pre-redirect validation failed","PRE_REDIRECT_FAILED","PreRedirectError",r);y(e)}else P()}catch(e){y(b(e instanceof Error?e.message:"Failed to create session","SESSION_CREATION_FAILED","SessionError",e))}},[f,b,y,P]),F=(0,s.useCallback)(async()=>{try{let e=await f.getRedirectResult();if(e&&"success"===e.status)await U(e.user);else if(e&&"error"===e.status){let r=b(e.message||"Redirect sign-in failed",e.error||"REDIRECT_FAILED","RedirectError",e);y(r)}}catch(e){y(b(e instanceof Error?e.message:"Failed to check redirect result","REDIRECT_CHECK_FAILED","RedirectError",e))}},[f,U,y,b]);return p&&(k=(0,l.kZ)({base:C,hashPath:"/challenge",hashSearchParams:[t,R]},{stringify:!0})),{...j,componentName:g,afterSignInUrl:S,afterSignUpUrl:E,signInUrl:C,signUpUrl:k,queryParams:t,initialValues:{...j.initialValues,...w},authQueryString:A,checkRedirectResult:F,onSignInSuccess:U,handleSignInError:y,redirectAfterSignIn:P,isCombinedFlow:p,showCombinedForm:x}}},5977:function(e,r,t){t.d(r,{g7:()=>w,gh:()=>g,ZY:()=>c,TernSecureContextWrapper:()=>i,r3:()=>u.r,At:()=>d.At,Kp:()=>o,QI:()=>u.Q,TernSecureOptionsProvider:()=>d.az,o1:()=>l,Xu:()=>v});var n=t(4557),a=t(802),s=t(4105);function i(e){let r=e.ternsecure,[t,i]=s.useState({user:r.user,session:r.currentSession});s.useEffect(()=>r.addListener(e=>i({...e})),[]);let l=s.useMemo(()=>({value:r}),[]);return(0,n.jsx)(a.sQ.Provider,{value:l,children:e.children})}function l(){let e=(0,a.xq)();return(0,a._x)(e,a.sQ),e.signIn}function o(){let e=(0,a.xq)();return(0,a._x)(e,a.sQ),e.signUp}function c(){let e=(0,a.xq)();return(0,a._x)(e,a.sQ),e.user||null}var d=t(4967),u=t(6282),h=t(5407),m=t(2117),f=t(8177),p=t(384),x=t(4904);let g=(0,s.createContext)(null),v=()=>{let e=(0,s.useContext)(g),{navigate:r}=(0,p.rd)(),{queryParams:t,queryString:n}=(0,p.rd)(),i=(0,d.At)(),l=(0,a.qn)(),o=(0,s.useMemo)(()=>(0,x.t)(n,h.UU),[]);if(!e||"SignUp"!==e.componentName)throw Error("useSignUpContext called outside of the mounted SignUp component.");let{componentName:c,mode:u,...v}=e,j=new f.n(i,{...v,signUpFallbackRedirectUrl:v.signUpFallbackRedirectUrl||v.fallbackRedirectUrl,signUpForceRedirectUrl:v.signUpForceRedirectUrl||v.forceRedirectUrl},t,u);delete v.fallbackRedirectUrl,delete v.forceRedirectUrl;let w=l.constructUrlWithAuthRedirect(j.getAfterSignInUrl()),b=l.constructUrlWithAuthRedirect(j.getAfterSignInUrl()),y="path"===v.routing&&v.path||i.signUpUrl,N=v.signInUrl||i.signInUrl,S=j.getPreservedSearchParams();N=(0,m.kZ)({base:N,hashSearchParams:[t,S]},{stringify:!0}),y=(0,m.kZ)({base:y,hashSearchParams:[t,S]},{stringify:!0});let E=j.toSearchParams().toString();return{...v,componentName:c,signInUrl:N,signUpUrl:y,afterSignUpUrl:w,afterSignInUrl:b,navigateAfterSignUp:()=>r(w),queryParams:t,initialValues:{...v.initialValues,...o},authQueryString:E}},j=(0,s.createContext)(null);function w({componentName:e,props:r,children:t}){switch(e){case"SignIn":return(0,n.jsx)(u.Q.Provider,{value:{componentName:e,...r},children:t});case"SignUp":return(0,n.jsx)(g.Provider,{value:{componentName:e,...r},children:t});case"UserButton":return(0,n.jsx)(j.Provider,{value:{componentName:e,...r},children:t});default:throw Error(`unknown component context: ${e}`)}}},4904:function(e,r,t){t.d(r,{t:()=>a,u:()=>s});var n=t(2782);function a(e,r){let t={};return new URLSearchParams(e).forEach((e,a)=>{r.includes(a)&&"string"==typeof e&&(t[(0,n.sF)(a)]=e)}),t}function s(e,r){return e||r?.[0]||null}},8992:function(e,r,t){t.d(r,{aR:()=>b,JU:()=>T,BT:()=>N,Fc:()=>K,TN:()=>X,q5:()=>H,Wu:()=>S,ZB:()=>y,Jr:()=>ee,MS:()=>en,xM:()=>ei,dm:()=>U,$n:()=>u,NV:()=>em,bg:()=>O,pf:()=>ep,Zp:()=>w,KB:()=>V,pe:()=>A,f0:()=>k,sF:()=>ef,dh:()=>B,B0:()=>Y,pd:()=>J,T3:()=>g,ry:()=>$,UV:()=>eh,M_:()=>L,D0:()=>M,VR:()=>et,eu:()=>D,BK:()=>W});var n=t(4557),a=t(4105),s=t(3873),i=t(8943),l=t(3796),o=t(4478),c=t(4853);let d=(0,o.F)("tern:cursor-pointer tern:inline-flex tern:items-center tern:justify-center tern:gap-2 tern:whitespace-nowrap tern:rounded-md tern:text-sm tern:font-medium tern:transition-all disabled:tern:pointer-events-none disabled:tern:opacity-50 [&_svg]:tern:pointer-events-none [&_svg:not([class*='size-'])]:tern:size-4 tern:shrink-0 [&_svg]:tern:shrink-0 tern:outline-none focus-visible:tern:border-ring focus-visible:tern:ring-ring/50 focus-visible:tern:ring-[3px] aria-invalid:tern:ring-destructive/20 dark:aria-invalid:tern:ring-destructive/40 aria-invalid:tern:border-destructive",{variants:{variant:{default:"tern:bg-primary tern:text-primary-foreground tern:shadow-xs hover:tern:bg-primary/90",destructive:"tern:bg-destructive tern:text-white tern:shadow-xs hover:tern:bg-destructive/90 focus-visible:tern:ring-destructive/20 dark:focus-visible:tern:ring-destructive/40 dark:tern:bg-destructive/60",outline:"tern:border tern:bg-background tern:shadow-xs hover:tern:bg-accent hover:tern:text-accent-foreground dark:tern:bg-input/30 dark:tern:border-input dark:hover:tern:bg-input/50",secondary:"tern:bg-secondary tern:text-secondary-foreground tern:shadow-xs hover:tern:bg-secondary/80",ghost:"hover:tern:bg-accent hover:tern:text-accent-foreground dark:hover:tern:bg-accent/50",link:"tern:text-primary tern:underline-offset-4 hover:tern:underline"},size:{default:"tern:h-9 tern:px-4 tern:py-2 has-[>svg]:tern:px-3",sm:"tern:h-8 tern:rounded-md tern:gap-1.5 tern:px-3 has-[>svg]:tern:px-2.5",lg:"tern:h-10 tern:rounded-md tern:px-6 has-[>svg]:tern:px-4",icon:"tern:size-9"}},defaultVariants:{variant:"default",size:"default"}});function u({className:e,variant:r,size:t,asChild:a=!1,...s}){let i=a?l.DX:"button";return(0,n.jsx)(i,{"data-slot":"button",className:(0,c.cn)(d({variant:r,size:t,className:e})),...s})}let h=()=>{let e=f().state.meta.errors;if(!e||0===e.length)return null;let r=e.map(e=>({message:e}));return(0,n.jsx)(O,{errors:r})},{fieldContext:m,useFieldContext:f,formContext:p,useFormContext:x}=(0,i.s)(),{useAppForm:g,withForm:v}=(0,i.K)({fieldContext:m,formContext:p,fieldComponents:{EmailField:function({label:e,placeholder:r,disabled:t,required:a}){let s=f();return(0,n.jsxs)("div",{className:"space-y-2",children:[e&&(0,n.jsx)(T,{htmlFor:s.name,children:e}),(0,n.jsx)(J,{id:s.name,name:s.name,type:"email",value:s.state.value,onBlur:s.handleBlur,onChange:e=>s.handleChange(e.target.value),placeholder:r,disabled:t,required:!0}),(0,n.jsx)(j,{})]})},PasswordField:function({label:e,placeholder:r,disabled:t,required:i}){let l=f(),[o,c]=(0,a.useState)(!1);return(0,n.jsxs)("div",{className:"space-y-2",children:[e&&(0,n.jsx)(T,{htmlFor:l.name,children:e}),(0,n.jsxs)("div",{className:"relative",children:[(0,n.jsx)(J,{id:l.name,name:l.name,type:o?"text":"password",value:l.state.value,onBlur:l.handleBlur,onChange:e=>l.handleChange(e.target.value),placeholder:r,disabled:t,required:!0,className:"pr-10"}),(0,n.jsxs)("button",{type:"button",className:"absolute right-2 top-1/2 h-8 w-8 -translate-y-1/2 hover:bg-transparent",onClick:()=>c(!o),disabled:t,children:[o?(0,n.jsx)(s.X_,{className:"text-muted-foreground hover:text-foreground h-4 w-4"}):(0,n.jsx)(s.kU,{className:"text-muted-foreground hover:text-foreground h-4 w-4"}),(0,n.jsx)("span",{className:"sr-only",children:o?"Hide password":"Show password"})]})]}),(0,n.jsx)(j,{})]})},TernEmailField:({label:e,placeholder:r,disabled:t,required:a})=>{let s=f();return(0,n.jsxs)(M,{children:[e&&(0,n.jsx)(B,{htmlFor:s.name,children:e}),(0,n.jsx)(J,{id:s.name,name:s.name,type:"email",value:s.state.value,onBlur:s.handleBlur,onChange:e=>s.handleChange(e.target.value),placeholder:r,disabled:t,required:a}),(0,n.jsx)(h,{})]})},TernPasswordField:({label:e,placeholder:r,disabled:t,required:i,onForgotPassword:l})=>{let o=f(),[c,d]=a.useState(!1);return(0,n.jsxs)(M,{children:[e&&(0,n.jsxs)("div",{className:"tern:flex tern:items-center",children:[(0,n.jsx)(B,{htmlFor:o.name,children:e}),l&&(0,n.jsx)("button",{type:"button",onClick:l,disabled:t,className:"tern:ml-auto tern:inline-block tern:text-sm tern:underline-offset-4 hover:tern:underline",children:"Forgot your password?"})]}),(0,n.jsxs)("div",{className:"tern:relative",children:[(0,n.jsx)(J,{id:o.name,name:o.name,type:c?"text":"password",value:o.state.value,onBlur:o.handleBlur,onChange:e=>o.handleChange(e.target.value),placeholder:r,disabled:t,required:i,className:"tern:pr-10"}),(0,n.jsxs)("button",{type:"button",className:"tern:absolute tern:right-2 tern:top-1/2 tern:h-8 tern:w-8 tern:-translate-y-1/2 hover:tern:bg-transparent",onClick:()=>d(!c),disabled:t,children:[c?(0,n.jsx)(s.X_,{className:"tern:text-muted-foreground hover:tern:text-foreground tern:h-4 tern:w-4"}):(0,n.jsx)(s.kU,{className:"tern:text-muted-foreground hover:tern:text-foreground tern:h-4 tern:w-4"}),(0,n.jsx)("span",{className:"tern:sr-only",children:c?"Hide password":"Show password"})]})]}),(0,n.jsx)(h,{})]})},TernTextField:({label:e,placeholder:r,disabled:t,required:a})=>{let s=f();return(0,n.jsxs)(M,{children:[e&&(0,n.jsx)(B,{htmlFor:s.name,children:e}),(0,n.jsx)(J,{id:s.name,name:s.name,value:s.state.value,onBlur:s.handleBlur,onChange:e=>s.handleChange(e.target.value),placeholder:r,disabled:t,required:a}),(0,n.jsx)(h,{})]})}},formComponents:{SubscribeButton:({label:e})=>{let r=x();return(0,n.jsx)(r.Subscribe,{selector:e=>e.isSubmitting,children:r=>(0,n.jsx)(u,{disabled:r,children:e})})}}});function j(){let e=f().state.meta.errors;return e&&0!==e.length?(0,n.jsx)("div",{className:"mt-1 text-sm text-red-500",children:e.map((e,r)=>(0,n.jsx)("div",{children:e},r))}):null}function w({className:e,...r}){return(0,n.jsx)("div",{"data-slot":"card",className:(0,c.cn)("tern:bg-card tern:text-card-foreground tern:flex tern:flex-col tern:gap-6 tern:rounded-xl tern:border tern:py-6 tern:shadow-sm",e),...r})}function b({className:e,...r}){return(0,n.jsx)("div",{"data-slot":"card-header",className:(0,c.cn)("tern:@container/card-header tern:grid tern:auto-rows-min tern:grid-rows-[auto_auto] tern:items-start tern:gap-2 tern:px-6 tern:has-data-[slot=card-action]:grid-cols-[1fr_auto] tern:[.border-b]:pb-6",e),...r})}function y({className:e,...r}){return(0,n.jsx)("div",{"data-slot":"card-title",className:(0,c.cn)("tern:leading-none tern:font-semibold",e),...r})}function N({className:e,...r}){return(0,n.jsx)("div",{"data-slot":"card-description",className:(0,c.cn)("tern:text-muted-foreground tern:text-sm",e),...r})}function S({className:e,...r}){return(0,n.jsx)("div",{"data-slot":"card-content",className:(0,c.cn)("tern:px-6",e),...r})}function E({className:e,...r}){return(0,n.jsx)("div",{"data-slot":"card-footer",className:(0,c.cn)("tern:flex tern:items-center tern:px-6 tern:[.border-t]:pt-6",e),...r})}var P=t(802);let[C,k]=(0,P.e3)("CardState"),R={status:"idle",error:null};function A({children:e}){let[r,t]=a.useState(R),s=(0,a.useCallback)(e=>{t(r=>({...r,...e}))},[]),i=(0,a.useCallback)(e=>{t(r=>({...r,status:e,error:"error"===e?r.error:null}))},[]),l=(0,a.useCallback)(()=>{t(e=>({...e,status:"loading",error:null}))},[]),o=(0,a.useCallback)(e=>{t(r=>({...r,status:"error",error:{success:!1,message:e.message,error:"code"in e?e.code:void 0,...e}}))},[]),c=(0,a.useCallback)(()=>{t(e=>({...e,status:"idle",error:null}))},[]),d=(0,a.useCallback)(()=>{t(e=>({...e,error:null,status:"idle"}))},[]),u=a.useMemo(()=>({value:{...r,setCardState:s,setStatus:i,setLoading:l,setError:o,setIdle:c,clearError:d,isLoading:"loading"===r.status,isError:"error"===r.status,isSuccess:"success"===r.status,isIdle:"idle"===r.status}}),[r,s,i,l,o,c,d]);return(0,n.jsx)(C.Provider,{value:u,children:e})}let U=e=>r=>(0,n.jsx)(A,{children:(0,n.jsx)(e,{...r})});var F=t(1964);function T({className:e,...r}){return(0,n.jsx)(F.b,{"data-slot":"label",className:(0,c.cn)("tern:flex tern:items-center tern:gap-2 tern:text-sm tern:leading-none tern:font-medium tern:select-none tern:group-data-[disabled=true]:pointer-events-none tern:group-data-[disabled=true]:opacity-50 tern:peer-disabled:cursor-not-allowed tern:peer-disabled:opacity-50",e),...r})}var I=t(6146);function _({className:e,orientation:r="horizontal",decorative:t=!0,...a}){return(0,n.jsx)(I.b,{"data-slot":"separator",decorative:t,orientation:r,className:(0,c.cn)("tern:bg-border tern:shrink-0 tern:data-[orientation=horizontal]:h-px tern:data-[orientation=horizontal]:w-full tern:data-[orientation=vertical]:h-full tern:data-[orientation=vertical]:w-px",e),...a})}function L({className:e,...r}){return(0,n.jsx)("div",{"data-slot":"field-group",className:(0,c.cn)("group/field-group @container/field-group flex w-full flex-col gap-7 data-[slot=checkbox-group]:gap-3 [&>[data-slot=field-group]]:gap-4",e),...r})}let q=(0,o.F)("group/field flex w-full gap-3 data-[invalid=true]:text-destructive",{variants:{orientation:{vertical:["flex-col [&>*]:w-full [&>.sr-only]:w-auto"],horizontal:["flex-row items-center","[&>[data-slot=field-label]]:flex-auto","has-[>[data-slot=field-content]]:items-start has-[>[data-slot=field-content]]:[&>[role=checkbox],[role=radio]]:mt-px"],responsive:["flex-col [&>*]:w-full [&>.sr-only]:w-auto @md/field-group:flex-row @md/field-group:items-center @md/field-group:[&>*]:w-auto","@md/field-group:[&>[data-slot=field-label]]:flex-auto","@md/field-group:has-[>[data-slot=field-content]]:items-start @md/field-group:has-[>[data-slot=field-content]]:[&>[role=checkbox],[role=radio]]:mt-px"]}},defaultVariants:{orientation:"vertical"}});function M({className:e,orientation:r="vertical",...t}){return(0,n.jsx)("div",{role:"group","data-slot":"field","data-orientation":r,className:(0,c.cn)(q({orientation:r}),e),...t})}function B({className:e,...r}){return(0,n.jsx)(T,{"data-slot":"field-label",className:(0,c.cn)("group/field-label peer/field-label flex w-fit gap-2 leading-snug group-data-[disabled=true]/field:opacity-50","has-[>[data-slot=field]]:w-full has-[>[data-slot=field]]:flex-col has-[>[data-slot=field]]:rounded-md has-[>[data-slot=field]]:border [&>*]:data-[slot=field]:p-4","has-data-[state=checked]:bg-primary/5 has-data-[state=checked]:border-primary dark:has-data-[state=checked]:bg-primary/10",e),...r})}function $({className:e,...r}){return(0,n.jsx)("p",{"data-slot":"field-description",className:(0,c.cn)("text-muted-foreground text-sm leading-normal font-normal group-has-[[data-orientation=horizontal]]/field:text-balance","last:mt-0 nth-last-2:-mt-1 [[data-variant=legend]+&]:-mt-1.5","[&>a:hover]:text-primary [&>a]:underline [&>a]:underline-offset-4",e),...r})}function V({children:e,className:r,...t}){return(0,n.jsxs)("div",{"data-slot":"field-separator","data-content":!!e,className:(0,c.cn)("relative -my-2 h-5 text-sm group-data-[variant=outline]/field-group:-mb-2",r),...t,children:[(0,n.jsx)(_,{className:"absolute inset-0 top-1/2"}),e&&(0,n.jsx)("span",{className:"bg-background text-muted-foreground relative mx-auto block w-fit px-2","data-slot":"field-separator-content",children:e})]})}function O({className:e,children:r,errors:t,...s}){let i=(0,a.useMemo)(()=>{if(r)return r;if(!t?.length)return null;let e=[...new Map(t.map(e=>[e?.message,e])).values()];return e?.length==1?e[0]?.message:(0,n.jsx)("ul",{className:"ml-4 flex list-disc flex-col gap-1",children:e.map((e,r)=>e?.message&&(0,n.jsx)("li",{children:e.message},r))})},[r,t]);return i?(0,n.jsx)("div",{role:"alert","data-slot":"field-error",className:(0,c.cn)("text-destructive text-sm font-normal",e),...s,children:i}):null}var z=t(5318);function D({className:e,...r}){return(0,n.jsx)(z.bL,{"data-slot":"avatar",className:(0,c.cn)("tern:relative tern:flex tern:size-8 tern:shrink-0 tern:overflow-hidden tern:rounded-full",e),...r})}function W({className:e,...r}){return(0,n.jsx)(z._V,{"data-slot":"avatar-image",className:(0,c.cn)("tern:aspect-square tern:size-full",e),...r})}function H({className:e,...r}){return(0,n.jsx)(z.H4,{"data-slot":"avatar-fallback",className:(0,c.cn)("tern:bg-muted tern:flex tern:size-full tern:items-center tern:justify-center tern:rounded-full",e),...r})}let Z=(0,o.F)("tern:relative tern:w-full tern:rounded-lg tern:border tern:px-4 tern:py-3 tern:text-sm tern:grid tern:has-[>svg]:grid-cols-[calc(var(--spacing)*4)_1fr] tern:grid-cols-[0_1fr] tern:has-[>svg]:gap-x-3 tern:gap-y-0.5 tern:items-start tern:[&>svg]:size-4 tern:[&>svg]:translate-y-0.5 tern:[&>svg]:text-current",{variants:{variant:{default:"tern:bg-card tern:text-card-foreground",destructive:"tern:text-destructive tern:bg-card tern:[&>svg]:text-current tern:*:data-[slot=alert-description]:text-destructive/90"}},defaultVariants:{variant:"default"}});function K({className:e,variant:r,...t}){return(0,n.jsx)("div",{"data-slot":"alert",role:"alert",className:(0,c.cn)(Z({variant:r}),e),...t})}function Q({className:e,...r}){return(0,n.jsx)("div",{"data-slot":"alert-title",className:(0,c.cn)("tern:col-start-2 tern:line-clamp-1 tern:min-h-4 tern:font-medium tern:tracking-tight",e),...r})}function X({className:e,...r}){return(0,n.jsx)("div",{"data-slot":"alert-description",className:(0,c.cn)("tern:text-muted-foreground tern:col-start-2 tern:grid tern:justify-items-start tern:gap-1 tern:text-sm tern:[&_p]:leading-relaxed",e),...r})}function J({className:e,type:r,...t}){return(0,n.jsx)("input",{type:r,"data-slot":"input",className:(0,c.cn)("tern:file:text-foreground tern:placeholder:text-muted-foreground tern:selection:bg-primary tern:selection:text-primary-foreground tern:dark:bg-input/30 tern:border-input tern:h-9 tern:w-full tern:min-w-0 tern:rounded-md tern:border tern:bg-transparent tern:px-3 tern:py-1 tern:text-base tern:shadow-xs tern:transition-[color,box-shadow] tern:outline-none tern:file:inline-flex tern:file:h-7 tern:file:border-0 tern:file:bg-transparent tern:file:text-sm tern:file:font-medium tern:disabled:pointer-events-none tern:disabled:cursor-not-allowed tern:disabled:opacity-50 tern:md:text-sm","tern:focus-visible:border-ring tern:focus-visible:ring-ring/50 tern:focus-visible:ring-[3px]","tern:aria-invalid:ring-destructive/20 tern:dark:aria-invalid:ring-destructive/40 tern:aria-invalid:border-destructive",e),...t})}let G=({children:e})=>(0,n.jsx)("div",{className:"flex flex-col items-center justify-center py-8",children:e}),Y=U(()=>(0,n.jsx)("div",{className:"relative flex justify-center p-6 md:p-10",children:(0,n.jsx)("div",{className:"w-full max-w-sm",children:(0,n.jsxs)(w,{className:"w-full max-w-md",children:[(0,n.jsx)(b,{className:"space-y-1 text-center",children:(0,n.jsx)(y,{children:"Loading"})}),(0,n.jsx)(S,{children:(0,n.jsx)(G,{children:(0,n.jsx)(s.wm,{className:"text-muted-foreground h-8 w-8 animate-spin"})})})]})})})),ee=U(({cardTitle:e="Unable to sign in",cardSubtitle:r="An error occurred during the sign in process",message:t,onBackLinkClick:a})=>{let i=k(),l=t||i.error?.message||"An unexpected error occurred";return(0,n.jsx)("div",{className:"relative flex justify-center p-6 md:p-10",children:(0,n.jsx)("div",{className:"w-full max-w-sm",children:(0,n.jsxs)(w,{className:"w-full max-w-md",children:[(0,n.jsxs)(b,{className:"space-y-1 text-center",children:[(0,n.jsx)(y,{className:"font-bold text-destructive",children:e}),(0,n.jsx)(N,{children:r})]}),(0,n.jsx)(S,{className:"grid gap-4",children:(0,n.jsxs)(K,{variant:"destructive",children:[(0,n.jsx)(s.RI,{className:"h-4 w-4"}),(0,n.jsx)(Q,{children:"Error"}),(0,n.jsx)(X,{children:l})]})}),a&&(0,n.jsx)(E,{children:(0,n.jsx)(u,{variant:"outline",className:"w-full",onClick:a,children:"Go back"})})]})})})});var er=t(9953);let et=({onProviderClick:e,disabled:r,providers:t})=>(0,n.jsx)("div",{className:"tern:grid tern:gap-4 tern:sm:grid-cols-2",children:t.map((a,s)=>(0,n.jsxs)(u,{variant:"outline",className:(0,c.cn)("tern:w-full tern:gap-2",t.length%2!=0&&s===t.length-1&&"tern:sm:col-span-2"),onClick:()=>e(a),disabled:r,children:[(0,n.jsx)(er.T,{id:a.name,className:"h-4 w-4"}),a.name.charAt(0).toUpperCase()+a.name.slice(1)]},a.name))}),en=({onClick:e,children:r,startDisabled:t,throttleTimeInSec:s=30,showCounter:i=!0,...l})=>{let[o,c]=a.useState(0),d=a.useRef(void 0);(0,P.UQ)(()=>{t&&h()},[]),(0,a.useEffect)(()=>()=>clearInterval(d.current),[]);let h=()=>{c(s),d.current=window.setInterval(()=>{c(e=>(1===e&&clearInterval(d.current),e-1))},1e3)};return(0,n.jsxs)(u,{...l,variant:l.variant||"link",disabled:o>0||l.disabled,onClick:r=>{o||(e?.(r),h())},children:[r,o>0&&i?` (${o})`:""]})};var ea=t(1643);let es=e=>new Promise(r=>setTimeout(r,e)),ei=e=>{let r=k(),{id:t="code",onCodeEntryFinished:n,onResendCodeClicked:s,onResolve:i}=e,l=el({length:6}),o=(0,ea.mN)(),c=async e=>{await es(750),await i?.(e)},d=async e=>{let t=e?.message||(e instanceof Error?e.message:"Invalid code");r.setError({status:"error",message:t,error:e}),l.setError(t),o.setIdle(),await es(750),l.reset()};l.onCodeEntryFinished(e=>{o.setLoading(),l.otpInputProps.clearFeedback(),n(e,c,d)});let u=(0,a.useCallback)(e=>{l.reset(),s?.(e)},[l,s]);return{isLoading:o.isLoading,otpControl:l,onResendCode:s?u:void 0,onFakeContinue:()=>{l.otpInputProps.clearFeedback(),n("",c,d)}}},el=e=>{let r=a.useRef(null),t=a.useRef(void 0),{length:n=6}=e||{},[s,i]=a.useState(Array(n).fill("")),[l,o]=a.useState(null),[c,d]=a.useState(null),u=()=>{o(null),d(null)};return a.useEffect(()=>{if(s.filter(e=>e).length===n){let e=s.map(e=>e||" ").join("");t.current?.(e)}},[s,n]),{otpInputProps:{length:n,values:s,setValues:i,feedback:l,feedbackType:c,clearFeedback:u,ref:r},onCodeEntryFinished:e=>{t.current=e},reset:()=>{i(Array(n).fill("")),u(),r.current&&"function"==typeof r.current.focus&&r.current.focus()},setError:e=>{o(e),d("error")}}},[eo,ec]=(0,P.e3)("OTPInputContext");var ed=t(8521),eu=t(3563);function eh({className:e,containerClassName:r,...t}){return(0,n.jsx)(ed.wE,{"data-slot":"input-otp",containerClassName:(0,c.cn)("flex items-center gap-2 has-disabled:opacity-50",r),className:(0,c.cn)("tern:disabled:cursor-not-allowed",e),...t})}function em({className:e,...r}){return(0,n.jsx)("div",{"data-slot":"input-otp-group",className:(0,c.cn)("tern:flex tern:items-center",e),...r})}function ef({index:e,className:r,...t}){let s=a.useContext(ed.dK),{char:i,hasFakeCaret:l,isActive:o}=s?.slots[e]??{};return(0,n.jsxs)("div",{"data-slot":"input-otp-slot","data-active":o,className:(0,c.cn)("tern:data-[active=true]:border-ring tern:data-[active=true]:ring-ring/50 tern:data-[active=true]:aria-invalid:ring-destructive/20 tern:dark:data-[active=true]:aria-invalid:ring-destructive/40 tern:aria-invalid:border-destructive tern:data-[active=true]:aria-invalid:border-destructive tern:dark:bg-input/30 tern:border-input tern:relative tern:flex tern:h-9 tern:w-9 tern:items-center tern:justify-center tern:border-y tern:border-r tern:text-sm tern:shadow-xs tern:transition-all tern:outline-none tern:first:rounded-l-md tern:first:border-l tern:last:rounded-r-md tern:data-[active=true]:z-10 tern:data-[active=true]:ring-[3px]",r),...t,children:[i,l&&(0,n.jsx)("div",{className:"tern:pointer-events-none tern:absolute tern:inset-0 tern:flex tern:items-center tern:justify-center",children:(0,n.jsx)("div",{className:"tern:animate-caret-blink tern:bg-foreground tern:h-4 tern:w-px tern:duration-1000"})})]})}function ep({...e}){return(0,n.jsx)("div",{"data-slot":"input-otp-separator",role:"separator",...e,children:(0,n.jsx)(eu.A,{})})}},1643:function(e,r,t){t.d(r,{Cb:()=>i,U3:()=>a,mN:()=>l});var n=t(4105);let a=(e,r)=>{n.useEffect(()=>{let t=[e].flat().filter(e=>!!e);if(t.length)return t.forEach(e=>window.addEventListener(e,r)),()=>{t.forEach(e=>window.removeEventListener(e,r))}},[e,r])};var s=t(384);let i=()=>{let e=(0,s.rd)();return{navigateToFlowStart:async()=>{let r=e.indexPath;return r!==e.currentPath?e.navigate(r):e.urlStateParam?.path?e.navigate("/"+e.basePath+e.urlStateParam?.startPath):void 0}}},l=e=>{let[r,t]=function(e){let[r,t]=n.useState(e),a=n.useRef(!0);return n.useEffect(()=>()=>{a.current=!1},[]),[r,n.useCallback(e=>{a.current&&t(e)},[])]}({status:"idle",metadata:void 0,...e});return{status:r.status,setIdle:e=>t({status:"idle",metadata:e}),setError:e=>t({status:"error",metadata:e}),setLoading:e=>t({status:"loading",metadata:e}),loadingMetadata:"loading"===r.status?r.metadata:void 0,isLoading:"loading"===r.status,isIdle:"idle"===r.status}}},3873:function(e,r,t){t.d(r,{kU:()=>g,X_:()=>j,RI:()=>p,Jl:()=>b,wm:()=>m});var n,a,s,i,l,o,c,d,u=t(4105);function h(){return(h=Object.assign?Object.assign.bind():function(e){for(var r=1;r<arguments.length;r++){var t=arguments[r];for(var n in t)({}).hasOwnProperty.call(t,n)&&(e[n]=t[n])}return e}).apply(null,arguments)}let m=e=>u.createElement("svg",h({xmlns:"http://www.w3.org/2000/svg",fill:"none",stroke:"currentColor",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,className:"lucide lucide-loader-circle-icon lucide-loader-circle",viewBox:"0 0 24 24"},e),n||(n=u.createElement("path",{d:"M21 12a9 9 0 1 1-6.219-8.56"})));function f(){return(f=Object.assign?Object.assign.bind():function(e){for(var r=1;r<arguments.length;r++){var t=arguments[r];for(var n in t)({}).hasOwnProperty.call(t,n)&&(e[n]=t[n])}return e}).apply(null,arguments)}let p=e=>u.createElement("svg",f({xmlns:"http://www.w3.org/2000/svg",fill:"none",stroke:"currentColor",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,className:"lucide lucide-alert-circle",viewBox:"0 0 24 24"},e),a||(a=u.createElement("circle",{cx:12,cy:12,r:10})),s||(s=u.createElement("path",{d:"M12 8v4M12 16h.01"})));function x(){return(x=Object.assign?Object.assign.bind():function(e){for(var r=1;r<arguments.length;r++){var t=arguments[r];for(var n in t)({}).hasOwnProperty.call(t,n)&&(e[n]=t[n])}return e}).apply(null,arguments)}let g=e=>u.createElement("svg",x({xmlns:"http://www.w3.org/2000/svg",fill:"none",stroke:"currentColor",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,className:"lucide lucide-eye",viewBox:"0 0 24 24"},e),i||(i=u.createElement("path",{d:"M2 12s3-7 10-7 10 7 10 7-3 7-10 7-10-7-10-7"})),l||(l=u.createElement("circle",{cx:12,cy:12,r:3})));function v(){return(v=Object.assign?Object.assign.bind():function(e){for(var r=1;r<arguments.length;r++){var t=arguments[r];for(var n in t)({}).hasOwnProperty.call(t,n)&&(e[n]=t[n])}return e}).apply(null,arguments)}let j=e=>u.createElement("svg",v({xmlns:"http://www.w3.org/2000/svg",fill:"none",stroke:"currentColor",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,className:"lucide lucide-eye-off",viewBox:"0 0 24 24"},e),o||(o=u.createElement("path",{d:"M9.88 9.88a3 3 0 1 0 4.24 4.24M10.73 5.08A10 10 0 0 1 12 5c7 0 10 7 10 7a13.2 13.2 0 0 1-1.67 2.68"})),c||(c=u.createElement("path",{d:"M6.61 6.61A13.5 13.5 0 0 0 2 12s3 7 10 7a9.74 9.74 0 0 0 5.39-1.61M2 2l20 20"})));function w(){return(w=Object.assign?Object.assign.bind():function(e){for(var r=1;r<arguments.length;r++){var t=arguments[r];for(var n in t)({}).hasOwnProperty.call(t,n)&&(e[n]=t[n])}return e}).apply(null,arguments)}let b=e=>u.createElement("svg",w({xmlns:"http://www.w3.org/2000/svg",fill:"none",stroke:"currentColor",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,className:"lucide lucide-check",viewBox:"0 0 24 24"},e),d||(d=u.createElement("path",{d:"M20 6 9 17l-5-5"})))},8869:function(e,r,t){t.d(r,{createRoot:()=>n.createRoot}),t(5977);var n=t(9292)},5530:function(e,r,t){t.d(r,{Portal:()=>d});var n=t(4557),a=t(4105),s=t(3923),i=t(5407),l=t(5197),o=t(5977),c=t(384);function d({props:e,component:r,componentName:t,node:d}){let u={...e,...(0,l.C)({routing:e?.routing,path:e?.path})},h=(0,n.jsx)(o.g7,{componentName:t,props:u,children:(0,n.jsx)(a.Suspense,{fallback:"",children:a.createElement(r,u)})});if(u?.routing==="path"){if(!u?.path)throw Error("PathRouter requires a path to be specified in routing options.");return s.createPortal((0,n.jsx)(c.$,{preservedParams:i.Ej,basePath:u.path,children:h}),d)}return s.createPortal((0,n.jsx)(c.I9,{preservedParams:i.Ej,children:h}),d)}},384:function(e,r,t){t.d(r,{$:()=>j,qh:()=>p,dO:()=>w,I9:()=>v,rd:()=>s});var n=t(4105);let a=n.createContext(null);a.displayName="RouteContext";let s=()=>{let e=n.useContext(a);if(!e)throw Error("useRouter called while Router is null");return e};var i=t(4557),l=t(802),o=t(2117),c=t(1643);let d=(e,r,t,n)=>{let a=e;t&&(a=r,n||(a+="/"+t)),a.startsWith("//")&&(a=a.substr(1));let s=r+(t?"/"+t:"");return s.startsWith("//")&&(s=s.substr(1)),[a,s]};function u(e,r){let t=[];return function(e,r,t={}){let{decode:n=e=>e}=t;return function(t){let a=e.exec(t);if(!a)return!1;let{0:s,index:i}=a,l=Object.create(null);for(let e=1;e<a.length;e++){if(void 0===a[e])continue;let t=r[e-1];"*"===t.modifier||"+"===t.modifier?l[t.name]=a[e].split(t.prefix+t.suffix).map(e=>n(e,t)):l[t.name]=n(a[e],t)}return{path:s,index:i,params:l}}}(function e(r,t,n){if(r instanceof RegExp){if(!t)return r;let e=r.source.match(/\((?!\?)/g);if(e)for(let r=0;r<e.length;r++)t.push({name:r,prefix:"",suffix:"",modifier:"",pattern:""});return r}if(Array.isArray(r)){let a;return a=r.map(r=>e(r,t,n).source),RegExp(`(?:${a.join("|")})`,m(n))}return function(e,r,t={}){let{strict:n=!1,start:a=!0,end:s=!0,encode:i=e=>e}=t,l=`[${h(t.endsWith||"")}]|$`,o=`[${h(t.delimiter||"/#?")}]`,c=a?"^":"";for(let t of e)if("string"==typeof t)c+=h(i(t));else{let e=h(i(t.prefix)),n=h(i(t.suffix));if(t.pattern)if(r&&r.push(t),e||n)if("+"===t.modifier||"*"===t.modifier){let r="*"===t.modifier?"?":"";c+=`(?:${e}((?:${t.pattern})(?:${n}${e}(?:${t.pattern}))*)${n})${r}`}else c+=`(?:${e}(${t.pattern})${n})${t.modifier}`;else c+=`(${t.pattern})${t.modifier}`;else c+=`(?:${e}${n})${t.modifier}`}if(s)n||(c+=`${o}?`),c+=t.endsWith?`(?=${l})`:"$";else{let r=e[e.length-1],t="string"==typeof r?o.indexOf(r[r.length-1])>-1:void 0===r;n||(c+=`(?:${o}(?=${l}))?`),t||(c+=`(?=${o}|${l})`)}return new RegExp(c,m(t))}(function(e,r={}){let t=function(e){let r=[],t=0;for(;t<e.length;){let n=e[t];if("*"===n||"+"===n||"?"===n){r.push({type:"MODIFIER",index:t,value:e[t++]});continue}if("\\"===n){r.push({type:"ESCAPED_CHAR",index:t++,value:e[t++]});continue}if("{"===n){r.push({type:"OPEN",index:t,value:e[t++]});continue}if("}"===n){r.push({type:"CLOSE",index:t,value:e[t++]});continue}if(":"===n){let n="",a=t+1;for(;a<e.length;){let r=e.charCodeAt(a);if(r>=48&&r<=57||r>=65&&r<=90||r>=97&&r<=122||95===r){n+=e[a++];continue}break}if(!n)throw TypeError(`Missing parameter name at ${t}`);r.push({type:"NAME",index:t,value:n}),t=a;continue}if("("===n){let n=1,a="",s=t+1;if("?"===e[s])throw TypeError(`Pattern cannot start with "?" at ${s}`);for(;s<e.length;){if("\\"===e[s]){a+=e[s++]+e[s++];continue}if(")"===e[s]){if(0==--n){s++;break}}else if("("===e[s]&&(n++,"?"!==e[s+1]))throw TypeError(`Capturing groups are not allowed at ${s}`);a+=e[s++]}if(n)throw TypeError(`Unbalanced pattern at ${t}`);if(!a)throw TypeError(`Missing pattern at ${t}`);r.push({type:"PATTERN",index:t,value:a}),t=s;continue}r.push({type:"CHAR",index:t,value:e[t++]})}return r.push({type:"END",index:t,value:""}),r}(e),{prefixes:n="./"}=r,a=`[^${h(r.delimiter||"/#?")}]+?`,s=[],i=0,l=0,o="",c=e=>{if(l<t.length&&t[l].type===e)return t[l++].value},d=e=>{let r=c(e);if(void 0!==r)return r;let{type:n,index:a}=t[l];throw TypeError(`Unexpected ${n} at ${a}, expected ${e}`)},u=()=>{let e,r="";for(;e=c("CHAR")||c("ESCAPED_CHAR");)r+=e;return r};for(;l<t.length;){let e=c("CHAR"),r=c("NAME"),t=c("PATTERN");if(r||t){let l=e||"";-1===n.indexOf(l)&&(o+=l,l=""),o&&(s.push(o),o=""),s.push({name:r||i++,prefix:l,suffix:"",pattern:t||a,modifier:c("MODIFIER")||""});continue}let l=e||c("ESCAPED_CHAR");if(l){o+=l;continue}if(o&&(s.push(o),o=""),c("OPEN")){let e=u(),r=c("NAME")||"",t=c("PATTERN")||"",n=u();d("CLOSE"),s.push({name:r||(t?i++:""),pattern:r&&!t?a:t,prefix:e,suffix:n,modifier:c("MODIFIER")||""});continue}d("END")}return s}(r,n),t,n)}(e,t,r),t,r)}function h(e){return e.replace(/([.+*?=^!:${}()[\]|/\\])/g,"\\$1")}function m(e){return e&&e.sensitive?"":"i"}let f=({canActivate:e,children:r})=>{let{navigateToFlowStart:t}=(0,c.Cb)(),a=(0,l.qn)();return(n.useEffect(()=>{e(a)||t()}),e(a))?(0,i.jsx)(i.Fragment,{children:r}):null};function p(e){let r=s();if(!e.children)return null;if(!e.index&&!e.path)return(0,i.jsx)(i.Fragment,{children:e.children});if(!r.matches(e.path,e.index))return null;let[t,n]=d(r.indexPath,r.fullPath,e.path,e.index),l=(e,{searchParams:r}={})=>{let t=new URL(e,window.location.origin+n+"/");return r&&(t.search=r.toString()),t.pathname=(0,o.Kj)(t.pathname),t},c=(e,a)=>{let[s,i]=d(t,n,e,a),l=(0,o.Kj)(r.currentPath),c=e&&u(i+"/:foo*")(l)||a&&u(s)(l)||a&&u(i)(l)||!1;return!1!==c&&c.params},h=r.getMatchData(e.path,e.index)||{},m={};for(let[e,r]of Object.entries(h))m[e]=r;let p=(e.flowStart?(0,o.yY)(r.fullPath).replace("/"+r.basePath,""):r.flowStartPath)||r.startPath;return(0,i.jsx)(a.Provider,{value:{basePath:r.basePath,startPath:r.startPath,flowStartPath:p,fullPath:n,indexPath:t,currentPath:r.currentPath,baseNavigate:r.baseNavigate,getMatchData:c,matches:(e,r)=>!!c(e,r),navigate:(e,{searchParams:t}={})=>{let n=l(e,{searchParams:t});return r.baseNavigate(n)},resolve:l,refresh:r.refresh,params:m,queryString:r.queryString,queryParams:r.queryParams,urlStateParam:r.urlStateParam},children:e.canActivate?(0,i.jsx)(f,{canActivate:e.canActivate,children:e.children}):e.children})}let x=({basePath:e,startPath:r,getPath:t,getQueryString:s,internalNavigate:h,refreshEvents:m,preservedParams:f,urlStateParam:x,children:g})=>{let{navigate:v}=(0,l.qn)(),[j,w]=n.useState({path:t(),queryString:s()}),b=j.path,y=j.queryString,N=(0,o.vA)(j.queryString),S=(e,r)=>{let[t,n]=d("","",e,r),a=(0,o.Kj)(b),s=e&&u(n+"/:foo*")(a)||r&&u(t)(a)||r&&u(n)(a)||!1;return!1!==s&&s.params},E=n.useCallback(()=>{let e=t(),r=s();(e!==b||r!==y)&&w({path:e,queryString:r})},[b,y,t,s]);(0,c.U3)(m,E);let P=async r=>{if(!r)return;let t=r.origin!==window.location.origin;if(!r.pathname.startsWith("/"+e)||t){let e=await v(r.href);return E(),e}if(f){let e=(0,o.vA)(r.search);f.forEach(r=>{!e[r]&&N[r]&&(e[r]=N[r])}),r.search=(0,o.Ws)(e)}let n=await h(r,{metadata:{navigationType:"internal"}});return w({path:r.pathname,queryString:r.search}),n};return(0,i.jsx)(a.Provider,{value:{basePath:e,startPath:r,flowStartPath:r,fullPath:"",indexPath:"",currentPath:b,queryString:y,queryParams:N,getMatchData:S.bind(void 0),matches:((e,r)=>!!S(e,r)).bind(void 0),baseNavigate:P.bind(void 0),navigate:async()=>{},resolve:(e=>new URL(e,window.location.origin)).bind(void 0),refresh:E.bind(void 0),params:{},urlStateParam:x},children:(0,i.jsx)(p,{path:e,children:g})})},g="TERNSECURE-ROUTER/HASH",v=({preservedParams:e,children:r})=>{let t=async e=>{if(e)return window.location.hash=(0,o.FV)(e).substring(1+g.length),Promise.resolve()},n=()=>new URL((0,o.tL)(window.location.hash)?window.location.origin+window.location.hash.substring(1):window.location.origin);return(0,i.jsx)(x,{getPath:()=>"/"===n().pathname?"/"+g:"/"+g+n().pathname,basePath:g,startPath:"",getQueryString:()=>n().search,internalNavigate:t,refreshEvents:["popstate","hashchange"],preservedParams:e,children:r})},j=({basePath:e,preservedParams:r,children:t})=>{let{navigate:a}=(0,l.qn)(),[s,c]=n.useState(!1);if(!a)throw Error("Missing navigate option.");let d=(e,r)=>{if(e)return a((0,o.FV)(e),r)};return(n.useEffect(()=>{(async()=>{if((0,o.tL)(window.location.hash)){let e=(0,o.yR)(new URL(window.location.href));await d(e.href,{replace:!0}),c(!0)}})()},[c,a,window.location.hash]),(0,o.tL)(window.location.hash)&&!s)?null:(0,i.jsx)(x,{basePath:e.substring(1),startPath:"",getPath:()=>window.location.pathname,getQueryString:()=>window.location.search,internalNavigate:d,refreshEvents:["popstate"],preservedParams:r,children:t})};function w({children:e}){let r=s(),t=null;return n.Children.forEach(e,e=>{if(t||!(e&&n.isValidElement(e)&&"object"==typeof e&&e.type===p))return;let{index:a,path:s}=e.props;(!a&&!s||r.matches(s,a))&&(t=e)}),(0,i.jsx)(i.Fragment,{children:t})}},3777:function(e,r,t){t.d(r,{pr:()=>l});var n=t(4557),a=t(4853),s=t(8992),i=t(3873);function l({canSubmit:e,isSubmitting:r,submitText:t,submittingText:l,className:o}){return(0,n.jsx)(s.$n,{type:"submit",disabled:!e||r,className:(0,a.cn)("tern:w-full",o),children:r?(0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)(i.wm,{className:"tern:mr-2 tern:h-4 tern:w-4 tern:animate-spin"}),l]}):t})}}}]);
1
+ "use strict";(globalThis.webpackChunk_tern_secure_auth=globalThis.webpackChunk_tern_secure_auth||[]).push([["666"],{9953:function(e,r,t){t.d(r,{T:()=>a});var n=t(4557);t(4105);let a=({id:e,className:r})=>{switch(e){case"google":return(0,n.jsxs)("svg",{className:r,xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",fill:"currentColor",children:[(0,n.jsx)("path",{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",fill:"#4285F4"}),(0,n.jsx)("path",{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",fill:"#34A853"}),(0,n.jsx)("path",{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",fill:"#FBBC05"}),(0,n.jsx)("path",{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",fill:"#EA4335"})]});case"github":return(0,n.jsx)("svg",{className:r,xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",fill:"currentColor",children:(0,n.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"})});case"microsoft":return(0,n.jsxs)("svg",{className:r,xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 23 23",fill:"currentColor",children:[(0,n.jsx)("path",{fill:"#f35325",d:"M1 1h10v10H1z"}),(0,n.jsx)("path",{fill:"#81bc06",d:"M12 1h10v10H12z"}),(0,n.jsx)("path",{fill:"#05a6f0",d:"M1 12h10v10H1z"}),(0,n.jsx)("path",{fill:"#ffba08",d:"M12 12h10v10H12z"})]});case"apple":return(0,n.jsx)("svg",{className:r,xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",fill:"currentColor",children:(0,n.jsx)("path",{d:"M17.05 20.28c-.98.95-2.05.88-3.08.4-1.09-.5-2.08-.48-3.24.02-1.44.62-2.2.44-3.06-.4C2.79 15.25 3.51 7.59 9.05 7.31c1.35.07 2.29.74 3.08.74 1.18 0 2.45-1.62 4.37-1.62 1.71.12 2.7.84 3.4 1.84-3.18 1.62-2.67 5.86.34 7.1-.68 1.75-1.6 3.47-3.19 4.91zM12.03 7.25c-.15-2.23 1.66-4.07 3.74-4.25.29 2.58-2.34 4.5-3.74 4.25z"})});case"facebook":return(0,n.jsx)("svg",{className:r,xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",fill:"currentColor",children:(0,n.jsx)("path",{d:"M24 12.073c0-6.627-5.373-12-12-12s-12 5.373-12 12c0 5.99 4.388 10.954 10.125 11.854v-8.385H7.078v-3.47h3.047V9.43c0-3.007 1.792-4.669 4.533-4.669 1.312 0 2.686.235 2.686.235v2.953H15.83c-1.491 0-1.956.925-1.956 1.874v2.25h3.328l-.532 3.47h-2.796v8.385C19.612 23.027 24 18.062 24 12.073z",fill:"#1877F2"})});case"twitter":return(0,n.jsx)("svg",{className:r,xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",fill:"currentColor",children:(0,n.jsx)("path",{d:"M18.244 2.25h3.308l-7.227 8.26 8.502 11.24H16.17l-5.214-6.817L4.99 21.75H1.68l7.73-8.835L1.254 2.25H8.08l4.713 6.231zm-1.161 17.52h1.833L7.084 4.126H5.117z"})});default:return null}}},2648:function(e,r,t){t.d(r,{_:()=>l});var n=t(4557),a=t(4853),s=t(8992),i=t(384);let l=e=>{let{navigate:r}=(0,i.rd)(),t=(0,s.f0)();return(0,n.jsx)("div",{className:"tern:relative tern:flex tern:justify-center tern:p-6 tern:md:p-10",children:(0,n.jsx)("div",{className:"tern:w-full tern:max-w-sm",children:(0,n.jsxs)(s.Zp,{className:(0,a.cn)("tern:mt-8 tern:w-full tern:max-w-md"),children:[(0,n.jsxs)(s.aR,{className:"tern:space-y-1 tern:text-center",children:[(0,n.jsx)(s.ZB,{children:"Verify your email"}),(0,n.jsx)(s.BT,{className:(0,a.cn)("tern:text-muted-foreground"),children:e.emailSent?"We've sent a verification link to your email address. Please check your inbox and click the link to continue.":"Sending verification email..."})]}),(0,n.jsxs)(s.Wu,{className:"tern:space-y-4",children:[t.error&&(0,n.jsx)(s.Fc,{variant:"destructive",className:"tern:animate-in tern:fade-in-50",children:(0,n.jsx)(s.TN,{children:t.error.message})}),e.emailSent&&e.onResend&&(0,n.jsxs)("div",{className:"tern:space-y-2",children:[(0,n.jsx)(s.Fc,{children:(0,n.jsx)(s.TN,{children:"Didn't receive the email? Check your spam folder or click the button below to resend."})}),(0,n.jsx)(s.MS,{onClick:()=>void e.onResend?.(),disabled:e.isLoading,variant:"outline",className:"tern:w-full",startDisabled:!0,throttleTimeInSec:60,children:e.isLoading?"Sending...":"Resend verification email"})]})]}),(0,n.jsx)(s.ry,{className:"tern:text-center",children:(0,n.jsx)("a",{onClick:()=>void r("../"),children:"Go back"})})]})})})}},1687:function(e,r,t){t.r(r),t.d(r,{PasswordResetSuccess:()=>f,PasswordReset:()=>h,SignIn:()=>$,SignInModal:()=>V}),t(5826);var n=t(4557),a=t(802),s=t(4105),i=t(5197),l=t(5977),o=t(384),c=t(4853),d=t(8992);function u(){let e=(0,l.o1)(),r=(0,d.f0)(),{navigate:t}=(0,o.rd)(),a=(0,d.T3)({defaultValues:{email:""},validators:{onSubmitAsync:async({value:n})=>{try{await e?.sendPasswordResetEmail(n.email),t("../reset-password-success")}catch(e){throw r.setError({status:"error",name:"ResetPasswordError",message:e.message||"Failed to send reset email",error:e}),e}}}});return(0,n.jsx)("div",{className:"tern:relative tern:flex tern:justify-center tern:p-6 tern:md:p-10",children:(0,n.jsxs)(d.Zp,{className:(0,c.cn)("tern:mt-8 tern:w-full tern:max-w-md"),children:[(0,n.jsxs)(d.aR,{className:"tern:space-y-1",children:[(0,n.jsx)(d.ZB,{children:"Reset Password"}),(0,n.jsx)(d.BT,{children:"Enter your email address and we'll send you a link to reset your password"})]}),(0,n.jsxs)(d.Wu,{children:[r.error&&(0,n.jsx)(d.Fc,{variant:"destructive",className:"tern:animate-in tern:fade-in-50 tern:mb-4",children:(0,n.jsx)(d.TN,{children:r.error.message})}),(0,n.jsx)("form",{onSubmit:e=>{e.preventDefault(),e.stopPropagation(),a.handleSubmit()},children:(0,n.jsxs)(d.M_,{children:[(0,n.jsx)(a.AppField,{name:"email",children:e=>(0,n.jsx)(e.TernEmailField,{label:"Email",placeholder:"Enter your email",disabled:a.state.isSubmitting,required:!0})}),(0,n.jsxs)("div",{className:"tern:flex tern:gap-3",children:[(0,n.jsx)(d.$n,{type:"submit",disabled:!a.state.canSubmit||a.state.isSubmitting,className:"tern:flex-1",children:a.state.isSubmitting?"Sending...":"Send Reset Link"}),(0,n.jsx)(d.$n,{type:"button",variant:"outline",onClick:()=>{t("../")},disabled:a.state.isSubmitting,className:"tern:flex-1",children:"Cancel"})]})]})})]})]})})}let h=()=>(0,n.jsx)(d.pe,{children:(0,n.jsx)(u,{})});var m=t(3873);function f(){let{navigate:e}=(0,o.rd)();return(0,n.jsx)("div",{className:"tern:relative tern:flex tern:items-center tern:justify-center",children:(0,n.jsxs)(d.Zp,{className:(0,c.cn)("tern:w-full tern:max-w-md tern:mx-auto tern:mt-8"),children:[(0,n.jsxs)(d.aR,{className:"tern:space-y-1 tern:text-center",children:[(0,n.jsx)("div",{className:"tern:w-12 tern:h-12 tern:mx-auto tern:bg-green-500 tern:rounded-full tern:flex tern:items-center tern:justify-center tern:text-white",children:(0,n.jsx)(m.Jl,{className:"tern:w-6 tern:h-6"})}),(0,n.jsx)(d.ZB,{className:"tern:font-bold",children:"Check your email"}),(0,n.jsx)(d.BT,{className:"tern:text-muted-foreground",children:"Password reset instructions sent"})]}),(0,n.jsx)(d.Wu,{className:"tern:space-y-4",children:(0,n.jsx)(d.$n,{onClick:()=>e("../"),className:"tern:w-full",children:"Back to sign in"})})]})})}var p=t(6282),x=t(4904),g=t(3777);let v={password:""},j=e=>{let r=(0,d.f0)(),{signInWithPassword:t,onForgotPassword:a}=e,s=(0,d.T3)({defaultValues:v,validators:{onSubmitAsync:({value:e})=>t?.(e.password)}});return(0,n.jsx)("div",{className:"tern:relative tern:flex tern:justify-center tern:p-6 tern:md:p-10",children:(0,n.jsx)("div",{className:"tern:w-full tern:max-w-sm",children:(0,n.jsxs)(d.Zp,{className:(0,c.cn)("tern:mt-8 tern:w-full tern:max-w-md"),children:[(0,n.jsxs)(d.aR,{className:"tern:space-y-1 tern:text-center",children:[(0,n.jsx)(d.ZB,{className:(0,c.cn)("tern:font-bold"),children:"Enter your password"}),(0,n.jsx)(d.BT,{className:(0,c.cn)("tern:text-muted-foreground"),children:"Enter the password for your account to continue"})]}),(0,n.jsxs)(d.Wu,{className:"tern:space-y-4",children:[r.error&&(0,n.jsx)(d.Fc,{variant:"destructive",className:"tern:animate-in tern:fade-in-50",children:(0,n.jsx)(d.TN,{children:r.error.message})}),(0,n.jsx)(d.M_,{children:(0,n.jsx)("form",{onSubmit:e=>{e.preventDefault(),e.stopPropagation(),s.handleSubmit()},className:"tern:flex tern:flex-col tern:gap-4",children:(0,n.jsx)(s.Subscribe,{selector:e=>[e.canSubmit,e.isSubmitting],children:([e,t])=>(0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)(s.AppField,{name:"password",children:e=>(0,n.jsx)(e.TernPasswordField,{label:"Password",placeholder:"Enter your password",disabled:t||r.isLoading,required:!0,onForgotPassword:a})}),(0,n.jsx)(g.pr,{canSubmit:e,isSubmitting:t,submitText:"Continue",submittingText:"Signing in..."})]})})})})]})]})})})};var w=t(4186);let b=e=>{let r=(0,d.f0)(),t=(0,d.xM)({onCodeEntryFinished:(r,t,n)=>{e.onCodeEntryFinishedAction(r,t,n)},onResendCodeClicked:e.onResendCodeClicked});return(0,n.jsx)("div",{className:"tern:relative tern:flex tern:justify-center tern:p-6 tern:md:p-10",children:(0,n.jsx)("div",{className:"tern:w-full tern:max-w-sm",children:(0,n.jsxs)(d.Zp,{className:(0,c.cn)("tern:mt-8 tern:w-full tern:max-w-md"),children:[(0,n.jsxs)(d.aR,{className:"tern:space-y-1 tern:text-center",children:[(0,n.jsx)(d.ZB,{children:e.cardTitle}),(0,n.jsx)(d.BT,{children:e.cardDescription})]}),(0,n.jsxs)(d.Wu,{className:"tern:space-y-4",children:[r.error&&(0,n.jsx)(d.Fc,{variant:"destructive",children:(0,n.jsx)(d.TN,{children:r.error.message})}),(0,n.jsx)(y,{...t,onResendCode:t.onResendCode}),(0,n.jsx)(d.$n,{className:"tern:w-full",disabled:t.isLoading,onClick:()=>{let{values:e,length:n}=t.otpControl.otpInputProps;e.join("").length<n?r.setError({status:"error",message:"Please enter the code.",error:Error("Incomplete code")}):t.onFakeContinue()},children:e.submitButtonText})]})]})})})},y=e=>{let{otpControl:r,resendButton:t,description:a,isLoading:s,isDisabled:i,onResendCode:l,centerAlign:o=!0}=e,{values:u,setValues:h,length:m,feedback:f,feedbackType:p,ref:x}=r.otpInputProps,g=u.join("");return(0,n.jsxs)("div",{className:(0,c.cn)("tern:flex tern:flex-col tern:gap-4",o&&"tern:items-center"),children:[(0,n.jsxs)(d.UV,{maxLength:m,value:g,onChange:e=>{let r=e.split("");for(;r.length<m;)r.push("");h(r)},disabled:i||s,ref:x,children:[(0,n.jsxs)(d.NV,{children:[(0,n.jsx)(d.sF,{index:0}),(0,n.jsx)(d.sF,{index:1}),(0,n.jsx)(d.sF,{index:2})]}),(0,n.jsx)(d.pf,{}),(0,n.jsxs)(d.NV,{children:[(0,n.jsx)(d.sF,{index:3}),(0,n.jsx)(d.sF,{index:4}),(0,n.jsx)(d.sF,{index:5})]})]}),a&&(0,n.jsx)("div",{className:"tern:text-sm tern:text-muted-foreground",children:a}),l&&(0,n.jsx)(d.MS,{onClick:l,startDisabled:!0,disabled:"success"===p||s,showCounter:"success"!==p,throttleTimeInSec:60,className:"tern:text-sm tern:text-muted-foreground hover:tern:text-primary tern:underline tern:underline-offset-4",children:"Resend Code"})]})},N="recaptcha-verifier-container",S=e=>{let r=(0,l.o1)(),t=(0,d.f0)(),{navigate:i}=(0,o.rd)(),{afterSignInUrl:c}=(0,l.r3)(),u=(0,a.qn)();(0,l.At)();let h=s.useRef(null),[m,f]=s.useState(null),[p,x]=s.useState(!1),g=s.useRef(!1),v=u.firebaseApp,j=(0,w.xI)(v),y=s.useCallback(async()=>{if(!r?.identifier)return;let e=window.recaptchaVerifier,n=await r.authenticateWithPhoneNumber({phoneNumber:r.identifier,appVerifier:e});"error"===n.status&&t.setError({status:"error",message:n.message,error:n.error})},[r,t]),S=s.useCallback(async()=>{if("phone_code"===e.factor.strategy&&r&&h.current&&!m&&!p&&!g.current){g.current=!0,x(!0);try{let e=h.current;e.id||(e.id=N),window.recaptchaVerifier=new w.kT(j,e,{size:"invisible",callback:e=>{console.log("reCAPTCHA solved. Appcheck Verified this flow",e)},"expired-callback":()=>{t.setError({status:"error",message:"reCAPTCHA expired. Please try again."}),x(!1),g.current=!1}});let r=window.recaptchaVerifier;f(r),await y()}catch(e){console.error("Failed to initialize reCAPTCHA verifier",e),t.setError({status:"error",message:"Failed to initialize security verification",error:e}),x(!1),g.current=!1}}},[e.factor.strategy,r,m,p,y,t]);return s.useEffect(()=>(S(),()=>{window.recaptchaVerifier&&(window.recaptchaVerifier.clear(),delete window.recaptchaVerifier)}),[]),(0,n.jsxs)(n.Fragment,{children:["phone_code"===e.factor.strategy&&(0,n.jsx)("div",{ref:h,id:N,style:{minHeight:"78px",display:"flex",justifyContent:"center",alignItems:"center",width:"100%"}}),(0,n.jsx)(b,{cardTitle:"Enter Code",cardDescription:`Please enter the code sent to your ${"phone_code"===e.factor.strategy?"phone":"email"}.`,onCodeEntryFinishedAction:(t,n,a)=>{(async()=>{try{let s;"phone_code"===e.factor.strategy&&(s=await r?.attemptPhoneNumberVerification({code:t})),s?.status==="success"?(await n(),r?.user&&await u.createActiveSession({session:r.user,redirectUrl:c})):await a(Error("Verification failed"))}catch(e){await a(e)}})()},onResendCodeClicked:t=>{t.preventDefault(),(async()=>{"phone_code"===e.factor.strategy&&r?.identifier&&m&&await y()})()},onBackLinkClicked:()=>{i("../")},inputLabel:"SignIn PhoneCode",submitButtonText:"Continue"})]})},E=e=>(0,n.jsx)(S,{...e}),P=(0,d.dm)(function(){let e=(0,l.o1)(),r=(0,a.qn)(),t=r.requiresVerification,i=(0,d.f0)(),c=(0,o.rd)(),{navigate:u}=c,{afterSignInUrl:h}=(0,p.r)(),[m,f]=s.useState(null),g=(0,x.u)(m,e?.supportedFirstFactors);s.useEffect(()=>{(e?.status==="needs_identifier"||e?.status===null)&&c.navigate("../")},[e?.status,c]);let v=async n=>{if(!e?.identifier)return void i.setError({status:"error",message:"Identifier is missing"});let a=await e?.authenticateWithPassword({email:e.identifier,password:n});if(a?.status==="error"&&i.setError({status:"error",message:a.message,error:a.error}),a?.status==="success"){if(t&&!a.user.emailVerified)return void u("../verify-email-address");await r.createActiveSession({session:a.user,redirectUrl:h})}};if(!g&&e?.status)return(0,n.jsx)(d.Jr,{});if(!g)return(0,n.jsx)(d.B0,{});switch(g?.strategy){case"password":return(0,n.jsx)(j,{signInWithPassword:v,onForgotPassword:()=>{u("../reset-password")}});case"phone_code":return(0,n.jsx)(E,{factor:{...g}});default:return(0,n.jsx)(d.B0,{})}});var C=t(5305);t(9953);let k=e=>{let{isExternal:r,children:t,href:a,onClick:s,...i}=e,l=s?e=>{a||e.preventDefault(),s(e)}:void 0;return(0,n.jsx)("a",{...i,onClick:l,href:a||"",target:a&&r?"_blank":void 0,rel:a&&r?"noopener":void 0,children:t})},R=e=>{let{to:r,onClick:t,...a}=e,s=(0,o.rd)(),i=s.resolve(r||s.indexPath);return(0,n.jsx)(k,{...a,onClick:e=>(e.preventDefault(),t&&!r)?t(e):s.navigate(i.href),href:i.href})},A=()=>{let e=(0,l.o1)(),r=(0,a.qn)(),t=(0,d.f0)(),i=(0,l.r3)(),{afterSignInUrl:o,socialProviders:c}=i,u=(0,l.At)(),h=c||u.socialProviders||[];s.useEffect(()=>{i.checkRedirectResult()},[]);let m=async n=>{let a=n.options||{mode:"popup"},s=await e?.authenticateWithSocialProvider(n.name,{mode:a.mode||"popup",customParameters:a.customParameters,scopes:a.scopes});s?.status==="error"&&t.setError({status:"error",message:s.message,error:s.error}),s?.status==="success"&&await r.createActiveSession({session:s.user,redirectUrl:o})};return 0===h.length?null:(0,n.jsx)(d.VR,{onProviderClick:e=>void m(e),disabled:t.isLoading,providers:h})},U={email:"",password:""},F=e=>{let{onError:r,isDisabled:t,signInWithPassword:a,onForgotPassword:s}=e,i=(0,d.T3)({defaultValues:U,validators:{onSubmitAsync:async({value:e})=>{try{a&&await a(e.email,e.password)}catch(e){throw r?.(e),e}}}});return(0,n.jsxs)(d.M_,{children:[(0,n.jsx)("form",{onSubmit:e=>{e.preventDefault(),e.stopPropagation(),i.handleSubmit()},className:"tern:flex tern:flex-col tern:gap-7",children:(0,n.jsx)(i.Subscribe,{selector:e=>[e.canSubmit,e.isSubmitting],children:([e,r])=>(0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)(i.AppField,{name:"email",children:e=>(0,n.jsx)(e.TernEmailField,{label:"Email",placeholder:"Enter your email",disabled:r||t,required:!0})}),(0,n.jsx)(i.AppField,{name:"password",children:e=>(0,n.jsx)(e.TernPasswordField,{label:"Password",placeholder:"Enter your password",disabled:r||t,required:!0,onForgotPassword:s})}),(0,n.jsx)(g.pr,{canSubmit:e,isSubmitting:r,submitText:"Sign In",submittingText:"Signing in..."}),(0,n.jsx)(d.KB,{children:"Or continue with"})]})})}),(0,n.jsx)(A,{})]})},T=({src:e,alt:r})=>(0,n.jsx)("div",{className:"tern:mb-4 tern:flex tern:justify-center",children:(0,n.jsx)("img",{src:e,alt:r,className:"tern:h-10 tern:w-auto"})}),I=(0,d.dm)(function(){let e=(0,l.o1)(),r=(0,a.qn)(),t=(0,l.At)(),{appName:i}=t,u=(0,p.r)(),h=t.signUpMode||"public",m=t.passwordAuthentication??!0,f=r.requiresVerification,x=(0,d.f0)(),{navigate:v}=(0,o.rd)(),{afterSignInUrl:j,signUpUrl:w,showCombinedForm:b,appearance:y}=u,N=u.preferredEmailStrategy||"password",S=(0,s.useMemo)(()=>["email_address","phone_number"],[]),E=y?.layout,P=E?.logoPlacement||"inside",k=E?.logoImageUrl,U=E?.socialButtonsPlacement||"bottom",I=u.initialValues?.phoneNumber!==void 0&&void 0===u.initialValues.emailAddress&&S.includes("phone_number"),[_,L]=(0,s.useState)(I?"phone_number":S[0]||""),q=u.initialValues||{},M=(0,s.useMemo)(()=>({email_address:q.emailAddress,email_address_username:q.emailAddress||q.username,username:q.username,phone_number:q.phoneNumber}),[q.emailAddress,q.phoneNumber,q.username]),{fieldName:B,label:$,placeholder:V}=(0,s.useMemo)(()=>"phone_number"===_?{fieldName:"phoneNumber",label:"Phone number",placeholder:"Enter your phone number"}:{fieldName:"email",label:"Email",placeholder:"Enter your email"},[_]),O=(u.socialProviders||t.socialProviders||[]).length>0,z=(0,s.useMemo)(()=>"phone_number"===_?"tel":"email",[_]),D=(0,s.useMemo)(()=>({[B]:M[_]||""}),[B,_,M[_]]),W=(0,d.T3)({defaultValues:D,validators:{onSubmitAsync:({value:e})=>H(e)}}),H=async t=>{try{let n,a,s=await e?.create((n=t.phoneNumber||t.email||t.identifier||"",a="phone_number"===_?"phone_code":"email_code",("phone_number"!==_&&"password"===N&&(a="password"),"password"===a)?{strategy:"password",identifier:n}:{strategy:a,identifier:n}));switch(s?.status){case"needs_first_factor":return v("factor-one");case"needs_email_verification":return v("verify-email-address");case"success":return r.createActiveSession({redirectUrl:j})}}catch(e){if(e instanceof C.yS){let r=e.errors[0];x.setError({status:"error",message:r?.message||e.message,error:r})}else x.setError({status:"error",message:"An unexpected error occurred.",error:e})}},Z=async(t,n)=>{let a=await e?.authenticateWithPassword({email:t,password:n});if(a?.status==="error"&&x.setError({status:"error",message:a.message,error:a.error}),a?.status==="success"){if(f&&a?.user.emailVerified===!1)return void v("verify-email-address");await r.createActiveSession({session:a.user,redirectUrl:j})}};return(0,n.jsx)("div",{className:"tern:relative tern:flex tern:justify-center tern:p-6 tern:md:p-10",children:(0,n.jsxs)("div",{className:"tern:w-full tern:max-w-sm",children:["outside"===P&&k&&(0,n.jsx)(T,{src:k,alt:i||"App Logo"}),(0,n.jsxs)(d.Zp,{className:(0,c.cn)("tern:mt-8 tern:w-full tern:max-w-md"),children:[(0,n.jsxs)(d.aR,{className:"tern:space-y-1 tern:text-center",children:["inside"===P&&k&&(0,n.jsx)(T,{src:k,alt:i||"App Logo"}),(0,n.jsx)(d.ZB,{className:(0,c.cn)("tern:font-bold"),children:i?`Sign in to ${i}`:"Sign in"}),(0,n.jsx)(d.BT,{className:(0,c.cn)("tern:text-muted-foreground"),children:"Please sign in to continue"})]}),(0,n.jsxs)(d.Wu,{className:"tern:space-y-4",children:[x.error&&(0,n.jsx)(d.Fc,{variant:"destructive",className:"tern:animate-in tern:fade-in-50",children:(0,n.jsx)(d.TN,{children:x.error.message})}),b?(0,n.jsxs)(d.M_,{children:["top"===U&&O&&(0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)(A,{}),m&&(0,n.jsx)(d.KB,{children:"Or continue with"})]}),m&&(0,n.jsx)("form",{onSubmit:e=>{e.preventDefault(),e.stopPropagation(),W.handleSubmit()},className:"tern:flex tern:flex-col tern:gap-7",children:(0,n.jsx)(W.Subscribe,{selector:e=>[e.canSubmit,e.isSubmitting],children:([e,r])=>(0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)(W.AppField,{name:B,children:e=>"tel"===z?(0,n.jsx)(e.TernTextField,{label:$,placeholder:V,disabled:r||x.isLoading,required:!0}):(0,n.jsx)(e.TernEmailField,{label:$,placeholder:V,disabled:r||x.isLoading,required:!0})}),(0,n.jsx)(g.pr,{canSubmit:e,isSubmitting:r,submitText:"Continue",submittingText:"Continuing..."}),"bottom"===U&&O&&(0,n.jsx)(d.KB,{children:"Or continue with"})]})})}),"bottom"===U&&O&&(0,n.jsx)(A,{})]}):m&&(0,n.jsx)(F,{signInWithPassword:Z,onError:e=>{x.setError(e)},isDisabled:x.isLoading,onForgotPassword:()=>{v("reset-password")}}),"public"===h&&(0,n.jsxs)(d.ry,{className:"tern:text-center",children:["Don't have an account? ",(0,n.jsx)(R,{to:w,children:"Sign up"})]})]})]})]})})});var _=t(2648);function L(){let e=(0,l.o1)(),{afterSignInUrl:r}=(0,l.r3)(),t=(0,d.f0)(),[a,i]=s.useState(!1);s.useEffect(()=>{o()},[]);let o=async()=>{let n=await e?.attemptEmailVerification({url:r,handleCodeInApp:!0});n?.status==="error"?t.setError({status:"error",message:n.message,error:n.error}):i(!0)},c=async()=>{t.setLoading(),await o(),t.setIdle()};return(0,n.jsx)(_._,{emailSent:a,onResend:c,isLoading:t.isLoading})}let q=(0,d.dm)(()=>(0,n.jsx)(L,{}));function M(){let e=(0,a.qn)();return s.useEffect(()=>{e.redirectToSignIn()},[]),null}function B(){return(0,n.jsx)("div",{className:"tern tern:w-full tern:min-h-full",children:(0,n.jsxs)(o.dO,{children:[(0,n.jsx)(o.qh,{path:"reset-password",children:(0,n.jsx)(h,{})}),(0,n.jsx)(o.qh,{path:"reset-password-success",children:(0,n.jsx)(f,{})}),(0,n.jsx)(o.qh,{path:"factor-one",children:(0,n.jsx)(P,{})}),(0,n.jsx)(o.qh,{path:"verify-email-address",canActivate:e=>!!e.signIn?.identifier,children:(0,n.jsx)(q,{})}),(0,n.jsx)(o.qh,{index:!0,children:(0,n.jsx)(I,{})}),(0,n.jsx)(o.qh,{children:(0,n.jsx)(M,{})})]})})}B.displayName="SignIn";let $=function(){let e=(0,l.r3)(),r={componentName:"SignUp",forceRedirectUrl:e.signUpForceRedirectUrl,fallbackRedirectUrl:e.signUpFallbackRedirectUrl,signInUrl:e.signInUrl,...(0,i.C)({routing:e?.routing,path:e?.path})};return(0,n.jsx)(l.gh.Provider,{value:r,children:(0,n.jsx)(B,{})})},V=e=>(0,n.jsx)(o.qh,{path:"sign-in",children:(0,n.jsx)(l.QI.Provider,{value:{componentName:"SignIn",...e,routing:"virtual",mode:"modal"},children:(0,n.jsx)("div",{children:(0,n.jsx)($,{...e,routing:"virtual"})})})})},8102:function(e,r,t){t.r(r),t.d(r,{SignUp:()=>v,SignUpModal:()=>j,SignUpVerifyEmail:()=>p,SignUpStart:()=>h}),t(5826);var n=t(4557),a=t(802),s=t(4105),i=t(5977),l=t(384),o=t(4853),c=t(8992),d=t(3777);let u=()=>{let e=(0,i.o1)(),r=(0,a.qn)(),t=(0,c.f0)(),{afterSignUpUrl:s,socialProviders:l}=(0,i.Xu)(),o=(0,i.At)(),d=l||o.socialProviders||[],u=async n=>{let a=n.options||{mode:"popup"},i=await e?.authenticateWithSocialProvider(n.name,{mode:a.mode||"popup",customParameters:a.customParameters,scopes:a.scopes});i?.status==="error"&&t.setError({status:"error",message:i.message,error:i.error}),i?.status==="success"&&await r.createActiveSession({session:i.user,redirectUrl:s})};return 0===d.length?null:(0,n.jsx)(c.VR,{onProviderClick:e=>void u(e),disabled:t.isLoading,providers:d})},h=(0,c.dm)(function(){let e=(0,i.Kp)(),r=(0,c.f0)(),{navigate:t}=(0,l.rd)(),s=(0,i.Xu)(),{afterSignUpUrl:h,signInUrl:m,shouldShowForm:f=!0}=s,{createActiveSession:p}=(0,a.qn)(),x=(0,i.At)(),{appName:g}=x,v=(s.socialProviders||x.socialProviders||[]).length>0,j=(0,c.T3)({defaultValues:{email:"",password:""},validators:{onSubmitAsync:async({value:e})=>await w(e.email,e.password)}}),w=async(n,a)=>{if(!e)return;let i=await e.withEmailAndPassword({email:n,password:a});if("error"===i.status)return void r.setError({status:"error",message:i.message,error:i.error});let l=s.afterSignUpUrl||"/";await (({signUp:e,verifyEmailPath:r,navigate:t,handleComplete:n})=>"complete"===e.status?n&&n():"missing_requirements"===e.status&&e.unverifiedFields?.includes("email_address")&&r?t(r):void 0)({signUp:i,verifyEmailPath:"verify-email-address",handleComplete:async()=>p({session:i.user,redirectUrl:h}),navigate:t,redirectUrlComplete:l})};return(0,n.jsx)("div",{className:"tern:relative tern:flex tern:justify-center tern:p-6 tern:md:p-10",children:(0,n.jsx)("div",{className:"tern:w-full tern:max-w-sm",children:(0,n.jsxs)(c.Zp,{className:(0,o.cn)("tern:mt-8 tern:w-full tern:max-w-md"),children:[(0,n.jsxs)(c.aR,{className:"tern:space-y-1 tern:text-center",children:[(0,n.jsx)(c.ZB,{children:g?`Create your ${g} account`:"Create your account"}),(0,n.jsx)(c.BT,{className:(0,o.cn)("tern:text-muted-foreground"),children:f?"Welcome! Please fill in the details to get started.":"Welcome! Please sign up to continue."})]}),(0,n.jsxs)(c.Wu,{className:"tern:space-y-4",children:[r.error&&(0,n.jsx)(c.Fc,{variant:"destructive",className:"tern:animate-in tern:fade-in-50",children:(0,n.jsx)(c.TN,{children:r.error.message})}),(0,n.jsxs)(c.M_,{children:[f&&(0,n.jsx)("form",{onSubmit:e=>{e.preventDefault(),e.stopPropagation(),j.handleSubmit()},className:"tern:flex tern:flex-col tern:gap-7",children:(0,n.jsx)(j.Subscribe,{selector:e=>[e.canSubmit,e.isSubmitting],children:([e,t])=>(0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)(j.AppField,{name:"email",children:e=>(0,n.jsx)(e.TernEmailField,{label:"Email",placeholder:"Enter your email",disabled:t||r.isLoading,required:!0})}),(0,n.jsx)(j.AppField,{name:"password",children:e=>(0,n.jsx)(e.TernPasswordField,{label:"Password",placeholder:"Enter your password",disabled:t||r.isLoading,required:!0})}),(0,n.jsx)(d.pr,{canSubmit:e,isSubmitting:t,submitText:"Continue",submittingText:"Creating Account..."}),v&&(0,n.jsx)(c.KB,{children:"Or continue with"})]})})}),v&&(0,n.jsx)(u,{})]})]}),(0,n.jsxs)(c.ry,{className:"tern:text-center",children:["Already have an account? ",(0,n.jsx)("a",{href:m,children:"Sign In"})]})]})})})});var m=t(2648);function f(){let e=(0,i.Kp)(),{afterSignUpUrl:r}=(0,i.Xu)(),t=(0,c.f0)(),[a,l]=s.useState(!1);s.useEffect(()=>{o()},[]);let o=async()=>{let n=await e?.attemptEmailVerification({url:r,handleCodeInApp:!0});n?.status==="error"?t.setError({status:"error",message:n.message,error:n.error}):l(!0)},d=async()=>{t.setLoading(),await o(),t.setIdle()};return(0,n.jsx)(m._,{emailSent:a,onResend:d,isLoading:t.isLoading})}let p=(0,c.dm)(()=>(0,n.jsx)(f,{}));function x(){let e=(0,a.qn)();return s.useEffect(()=>{e.redirectToSignUp()},[]),null}function g(){return(0,n.jsx)("div",{className:"tern",children:(0,n.jsxs)(l.dO,{children:[(0,n.jsx)(l.qh,{path:"verify-email-address",canActivate:e=>!!e.signUp?.user?.email,children:(0,n.jsx)(p,{})}),(0,n.jsx)(l.qh,{index:!0,children:(0,n.jsx)(h,{})}),(0,n.jsx)(l.qh,{children:(0,n.jsx)(x,{})})]})})}g.displayName="SignUp";let v=g,j=e=>(0,n.jsx)(l.qh,{path:"sign-up",children:(0,n.jsx)(i.gh.Provider,{value:{componentName:"SignUp",...e,routing:"virtual",mode:"modal"},children:(0,n.jsx)("div",{children:(0,n.jsx)(v,{...e,routing:"virtual"})})})})},7947:function(e,r,t){t.r(r),t.d(r,{UserButton:()=>l});var n=t(4557);t(5826);var a=t(802),s=t(5977),i=t(8992);function l(){let e,r=(0,s.ZY)(),t=(0,a.qn)(),l="User Avatar";return r?(e=r.displayName?.charAt(0).toUpperCase()||"U",r.displayName&&(l=`${r.displayName}'s Avatar`)):(e="?",l="Guest Avatar"),(0,n.jsx)("div",{className:"tern",style:{display:"contents"},children:r?(0,n.jsxs)(i.$n,{onClick:()=>{t.signOut()},variant:"outline",className:"tern:flex tern:items-center tern:gap-2",children:[(0,n.jsxs)(i.eu,{children:[(0,n.jsx)(i.BK,{src:r?.photoURL||void 0,alt:l}),(0,n.jsx)(i.q5,{children:e})]}),"Sign Out"]}):(0,n.jsxs)(i.$n,{onClick:()=>{t.redirectToSignIn()},variant:"outline",className:"tern:flex tern:items-center tern:gap-2",children:[(0,n.jsxs)(i.eu,{children:[(0,n.jsx)(i.BK,{src:void 0,alt:l}),(0,n.jsx)(i.q5,{children:e})]}),"Sign In"]})})}},4967:function(e,r,t){t.d(r,{At:()=>l,az:()=>i});var n=t(4557),a=t(4105);let s=a.createContext({});function i({children:e,value:r}){return(0,n.jsx)(s.Provider,{value:r,children:e})}function l(){let e=a.useContext(s);if(void 0===e)throw Error("TernSecureAuthOptions context is not available. Ensure that the context is properly initialized.");return e}},6282:function(e,r,t){t.d(r,{Q:()=>u,r:()=>h});var n=t(802),a=t(8978),s=t(4105),i=t(5407),l=t(2117),o=t(384),c=t(4967),d=t(4904);let u=(0,s.createContext)(null),h=()=>{let e=(0,s.useContext)(u),{navigate:r}=(0,o.rd)(),{queryParams:t,queryString:h}=(0,o.rd)(),m=(0,c.At)(),f=(0,n.qn)();if(null===e||"SignIn"!==e.componentName)throw Error("useSignInContext called outside of the mounted SignIn component.");let p="restricted"!==m.signUpMode&&!!(!m.signUpUrl&&m.signInUrl&&!(0,a.v)(m.signInUrl)),x=e.showCombinedForm??!0,{componentName:g,mode:v,...j}=e,w=(0,s.useMemo)(()=>(0,d.t)(h,i.e8),[]),b=(0,s.useCallback)((e,r,t="AuthError",n)=>{let a=Error(e);return a.name=t,a.code=r,a.response=n,a},[]),y=(0,s.useCallback)(e=>{console.error(e)},[]),N=new l.nQ(m,{...j,signInFallbackRedirectUrl:j.signInFallbackRedirectUrl||j.fallbackRedirectUrl,signInForceRedirectUrl:j.signInForceRedirectUrl||j.forceRedirectUrl},t,v);delete j.fallbackRedirectUrl,delete j.forceRedirectUrl;let S=f.constructUrlWithAuthRedirect(N.getAfterSignInUrl()),E=f.constructUrlWithAuthRedirect(N.getAfterSignUpUrl()),P=()=>r(S),C="path"===j.routing&&j.path||m.signInUrl,k=p?"path"===j.routing&&j.path||m.signUpUrl:j.signUpUrl||m.signUpUrl,R=N.getPreservedSearchParams();C=(0,l.kZ)({base:C,hashSearchParams:[t,R]},{stringify:!0}),k=(0,l.kZ)({base:k,hashSearchParams:[t,R]},{stringify:!0});let A=N.toSearchParams().toString(),U=(0,s.useCallback)(async(e,r)=>{try{if(await f.createActiveSession({session:e}),r?.onPreRedirect)try{await r.onPreRedirect()&&P()}catch(r){let e=b("Pre-redirect validation failed","PRE_REDIRECT_FAILED","PreRedirectError",r);y(e)}else P()}catch(e){y(b(e instanceof Error?e.message:"Failed to create session","SESSION_CREATION_FAILED","SessionError",e))}},[f,b,y,P]),F=(0,s.useCallback)(async()=>{try{let e=await f.getRedirectResult();if(e&&"success"===e.status)await U(e.user);else if(e&&"error"===e.status){let r=b(e.message||"Redirect sign-in failed",e.error||"REDIRECT_FAILED","RedirectError",e);y(r)}}catch(e){y(b(e instanceof Error?e.message:"Failed to check redirect result","REDIRECT_CHECK_FAILED","RedirectError",e))}},[f,U,y,b]);return p&&(k=(0,l.kZ)({base:C,hashPath:"/challenge",hashSearchParams:[t,R]},{stringify:!0})),{...j,componentName:g,afterSignInUrl:S,afterSignUpUrl:E,signInUrl:C,signUpUrl:k,queryParams:t,initialValues:{...j.initialValues,...w},authQueryString:A,checkRedirectResult:F,onSignInSuccess:U,handleSignInError:y,redirectAfterSignIn:P,isCombinedFlow:p,showCombinedForm:x}}},5977:function(e,r,t){t.d(r,{g7:()=>w,gh:()=>g,ZY:()=>c,TernSecureContextWrapper:()=>i,r3:()=>u.r,At:()=>d.At,Kp:()=>o,QI:()=>u.Q,TernSecureOptionsProvider:()=>d.az,o1:()=>l,Xu:()=>v});var n=t(4557),a=t(802),s=t(4105);function i(e){let r=e.ternsecure,[t,i]=s.useState({user:r.user,session:r.currentSession});s.useEffect(()=>r.addListener(e=>i({...e})),[]);let l=s.useMemo(()=>({value:r}),[]);return(0,n.jsx)(a.sQ.Provider,{value:l,children:e.children})}function l(){let e=(0,a.xq)();return(0,a._x)(e,a.sQ),e.signIn}function o(){let e=(0,a.xq)();return(0,a._x)(e,a.sQ),e.signUp}function c(){let e=(0,a.xq)();return(0,a._x)(e,a.sQ),e.user||null}var d=t(4967),u=t(6282),h=t(5407),m=t(2117),f=t(8177),p=t(384),x=t(4904);let g=(0,s.createContext)(null),v=()=>{let e=(0,s.useContext)(g),{navigate:r}=(0,p.rd)(),{queryParams:t,queryString:n}=(0,p.rd)(),i=(0,d.At)(),l=(0,a.qn)(),o=(0,s.useMemo)(()=>(0,x.t)(n,h.UU),[]);if(!e||"SignUp"!==e.componentName)throw Error("useSignUpContext called outside of the mounted SignUp component.");let{componentName:c,mode:u,...v}=e,j=new f.n(i,{...v,signUpFallbackRedirectUrl:v.signUpFallbackRedirectUrl||v.fallbackRedirectUrl,signUpForceRedirectUrl:v.signUpForceRedirectUrl||v.forceRedirectUrl},t,u);delete v.fallbackRedirectUrl,delete v.forceRedirectUrl;let w=l.constructUrlWithAuthRedirect(j.getAfterSignInUrl()),b=l.constructUrlWithAuthRedirect(j.getAfterSignInUrl()),y="path"===v.routing&&v.path||i.signUpUrl,N=v.signInUrl||i.signInUrl,S=j.getPreservedSearchParams();N=(0,m.kZ)({base:N,hashSearchParams:[t,S]},{stringify:!0}),y=(0,m.kZ)({base:y,hashSearchParams:[t,S]},{stringify:!0});let E=j.toSearchParams().toString();return{...v,componentName:c,signInUrl:N,signUpUrl:y,afterSignUpUrl:w,afterSignInUrl:b,navigateAfterSignUp:()=>r(w),queryParams:t,initialValues:{...v.initialValues,...o},authQueryString:E}},j=(0,s.createContext)(null);function w({componentName:e,props:r,children:t}){switch(e){case"SignIn":return(0,n.jsx)(u.Q.Provider,{value:{componentName:e,...r},children:t});case"SignUp":return(0,n.jsx)(g.Provider,{value:{componentName:e,...r},children:t});case"UserButton":return(0,n.jsx)(j.Provider,{value:{componentName:e,...r},children:t});default:throw Error(`unknown component context: ${e}`)}}},4904:function(e,r,t){t.d(r,{t:()=>a,u:()=>s});var n=t(2782);function a(e,r){let t={};return new URLSearchParams(e).forEach((e,a)=>{r.includes(a)&&"string"==typeof e&&(t[(0,n.sF)(a)]=e)}),t}function s(e,r){return e||r?.[0]||null}},8992:function(e,r,t){t.d(r,{aR:()=>b,JU:()=>T,BT:()=>N,Fc:()=>K,TN:()=>X,q5:()=>H,Wu:()=>S,ZB:()=>y,Jr:()=>ee,MS:()=>en,xM:()=>ei,dm:()=>U,$n:()=>u,NV:()=>em,bg:()=>O,pf:()=>ep,Zp:()=>w,KB:()=>V,pe:()=>A,f0:()=>k,sF:()=>ef,dh:()=>B,B0:()=>Y,pd:()=>J,T3:()=>g,ry:()=>$,UV:()=>eh,M_:()=>L,D0:()=>M,VR:()=>et,eu:()=>D,BK:()=>W});var n=t(4557),a=t(4105),s=t(3873),i=t(8943),l=t(3796),o=t(4478),c=t(4853);let d=(0,o.F)("tern:cursor-pointer tern:inline-flex tern:items-center tern:justify-center tern:gap-2 tern:whitespace-nowrap tern:rounded-md tern:text-sm tern:font-medium tern:transition-all disabled:tern:pointer-events-none disabled:tern:opacity-50 [&_svg]:tern:pointer-events-none [&_svg:not([class*='size-'])]:tern:size-4 tern:shrink-0 [&_svg]:tern:shrink-0 tern:outline-none focus-visible:tern:border-ring focus-visible:tern:ring-ring/50 focus-visible:tern:ring-[3px] aria-invalid:tern:ring-destructive/20 dark:aria-invalid:tern:ring-destructive/40 aria-invalid:tern:border-destructive",{variants:{variant:{default:"tern:bg-primary tern:text-primary-foreground tern:shadow-xs hover:tern:bg-primary/90",destructive:"tern:bg-destructive tern:text-white tern:shadow-xs hover:tern:bg-destructive/90 focus-visible:tern:ring-destructive/20 dark:focus-visible:tern:ring-destructive/40 dark:tern:bg-destructive/60",outline:"tern:border tern:bg-background tern:shadow-xs hover:tern:bg-accent hover:tern:text-accent-foreground dark:tern:bg-input/30 dark:tern:border-input dark:hover:tern:bg-input/50",secondary:"tern:bg-secondary tern:text-secondary-foreground tern:shadow-xs hover:tern:bg-secondary/80",ghost:"hover:tern:bg-accent hover:tern:text-accent-foreground dark:hover:tern:bg-accent/50",link:"tern:text-primary tern:underline-offset-4 hover:tern:underline"},size:{default:"tern:h-9 tern:px-4 tern:py-2 has-[>svg]:tern:px-3",sm:"tern:h-8 tern:rounded-md tern:gap-1.5 tern:px-3 has-[>svg]:tern:px-2.5",lg:"tern:h-10 tern:rounded-md tern:px-6 has-[>svg]:tern:px-4",icon:"tern:size-9"}},defaultVariants:{variant:"default",size:"default"}});function u({className:e,variant:r,size:t,asChild:a=!1,...s}){let i=a?l.DX:"button";return(0,n.jsx)(i,{"data-slot":"button",className:(0,c.cn)(d({variant:r,size:t,className:e})),...s})}let h=()=>{let e=f().state.meta.errors;if(!e||0===e.length)return null;let r=e.map(e=>({message:e}));return(0,n.jsx)(O,{errors:r})},{fieldContext:m,useFieldContext:f,formContext:p,useFormContext:x}=(0,i.s)(),{useAppForm:g,withForm:v}=(0,i.K)({fieldContext:m,formContext:p,fieldComponents:{EmailField:function({label:e,placeholder:r,disabled:t,required:a}){let s=f();return(0,n.jsxs)("div",{className:"space-y-2",children:[e&&(0,n.jsx)(T,{htmlFor:s.name,children:e}),(0,n.jsx)(J,{id:s.name,name:s.name,type:"email",value:s.state.value,onBlur:s.handleBlur,onChange:e=>s.handleChange(e.target.value),placeholder:r,disabled:t,required:!0}),(0,n.jsx)(j,{})]})},PasswordField:function({label:e,placeholder:r,disabled:t,required:i}){let l=f(),[o,c]=(0,a.useState)(!1);return(0,n.jsxs)("div",{className:"space-y-2",children:[e&&(0,n.jsx)(T,{htmlFor:l.name,children:e}),(0,n.jsxs)("div",{className:"relative",children:[(0,n.jsx)(J,{id:l.name,name:l.name,type:o?"text":"password",value:l.state.value,onBlur:l.handleBlur,onChange:e=>l.handleChange(e.target.value),placeholder:r,disabled:t,required:!0,className:"pr-10"}),(0,n.jsxs)("button",{type:"button",className:"absolute right-2 top-1/2 h-8 w-8 -translate-y-1/2 hover:bg-transparent",onClick:()=>c(!o),disabled:t,children:[o?(0,n.jsx)(s.X_,{className:"text-muted-foreground hover:text-foreground h-4 w-4"}):(0,n.jsx)(s.kU,{className:"text-muted-foreground hover:text-foreground h-4 w-4"}),(0,n.jsx)("span",{className:"sr-only",children:o?"Hide password":"Show password"})]})]}),(0,n.jsx)(j,{})]})},TernEmailField:({label:e,placeholder:r,disabled:t,required:a})=>{let s=f();return(0,n.jsxs)(M,{children:[e&&(0,n.jsx)(B,{htmlFor:s.name,children:e}),(0,n.jsx)(J,{id:s.name,name:s.name,type:"email",value:s.state.value,onBlur:s.handleBlur,onChange:e=>s.handleChange(e.target.value),placeholder:r,disabled:t,required:a}),(0,n.jsx)(h,{})]})},TernPasswordField:({label:e,placeholder:r,disabled:t,required:i,onForgotPassword:l})=>{let o=f(),[c,d]=a.useState(!1);return(0,n.jsxs)(M,{children:[e&&(0,n.jsxs)("div",{className:"tern:flex tern:items-center",children:[(0,n.jsx)(B,{htmlFor:o.name,children:e}),l&&(0,n.jsx)("button",{type:"button",onClick:l,disabled:t,className:"tern:ml-auto tern:inline-block tern:text-sm tern:underline-offset-4 hover:tern:underline",children:"Forgot your password?"})]}),(0,n.jsxs)("div",{className:"tern:relative",children:[(0,n.jsx)(J,{id:o.name,name:o.name,type:c?"text":"password",value:o.state.value,onBlur:o.handleBlur,onChange:e=>o.handleChange(e.target.value),placeholder:r,disabled:t,required:i,className:"tern:pr-10"}),(0,n.jsxs)("button",{type:"button",className:"tern:absolute tern:right-2 tern:top-1/2 tern:h-8 tern:w-8 tern:-translate-y-1/2 hover:tern:bg-transparent",onClick:()=>d(!c),disabled:t,children:[c?(0,n.jsx)(s.X_,{className:"tern:text-muted-foreground hover:tern:text-foreground tern:h-4 tern:w-4"}):(0,n.jsx)(s.kU,{className:"tern:text-muted-foreground hover:tern:text-foreground tern:h-4 tern:w-4"}),(0,n.jsx)("span",{className:"tern:sr-only",children:c?"Hide password":"Show password"})]})]}),(0,n.jsx)(h,{})]})},TernTextField:({label:e,placeholder:r,disabled:t,required:a})=>{let s=f();return(0,n.jsxs)(M,{children:[e&&(0,n.jsx)(B,{htmlFor:s.name,children:e}),(0,n.jsx)(J,{id:s.name,name:s.name,value:s.state.value,onBlur:s.handleBlur,onChange:e=>s.handleChange(e.target.value),placeholder:r,disabled:t,required:a}),(0,n.jsx)(h,{})]})}},formComponents:{SubscribeButton:({label:e})=>{let r=x();return(0,n.jsx)(r.Subscribe,{selector:e=>e.isSubmitting,children:r=>(0,n.jsx)(u,{disabled:r,children:e})})}}});function j(){let e=f().state.meta.errors;return e&&0!==e.length?(0,n.jsx)("div",{className:"mt-1 text-sm text-red-500",children:e.map((e,r)=>(0,n.jsx)("div",{children:e},r))}):null}function w({className:e,...r}){return(0,n.jsx)("div",{"data-slot":"card",className:(0,c.cn)("tern:bg-card tern:text-card-foreground tern:flex tern:flex-col tern:gap-6 tern:rounded-xl tern:border tern:py-6 tern:shadow-sm",e),...r})}function b({className:e,...r}){return(0,n.jsx)("div",{"data-slot":"card-header",className:(0,c.cn)("tern:@container/card-header tern:grid tern:auto-rows-min tern:grid-rows-[auto_auto] tern:items-start tern:gap-2 tern:px-6 tern:has-data-[slot=card-action]:grid-cols-[1fr_auto] tern:[.border-b]:pb-6",e),...r})}function y({className:e,...r}){return(0,n.jsx)("div",{"data-slot":"card-title",className:(0,c.cn)("tern:leading-none tern:font-semibold",e),...r})}function N({className:e,...r}){return(0,n.jsx)("div",{"data-slot":"card-description",className:(0,c.cn)("tern:text-muted-foreground tern:text-sm",e),...r})}function S({className:e,...r}){return(0,n.jsx)("div",{"data-slot":"card-content",className:(0,c.cn)("tern:px-6",e),...r})}function E({className:e,...r}){return(0,n.jsx)("div",{"data-slot":"card-footer",className:(0,c.cn)("tern:flex tern:items-center tern:px-6 tern:[.border-t]:pt-6",e),...r})}var P=t(802);let[C,k]=(0,P.e3)("CardState"),R={status:"idle",error:null};function A({children:e}){let[r,t]=a.useState(R),s=(0,a.useCallback)(e=>{t(r=>({...r,...e}))},[]),i=(0,a.useCallback)(e=>{t(r=>({...r,status:e,error:"error"===e?r.error:null}))},[]),l=(0,a.useCallback)(()=>{t(e=>({...e,status:"loading",error:null}))},[]),o=(0,a.useCallback)(e=>{t(r=>({...r,status:"error",error:{success:!1,message:e.message,error:"code"in e?e.code:void 0,...e}}))},[]),c=(0,a.useCallback)(()=>{t(e=>({...e,status:"idle",error:null}))},[]),d=(0,a.useCallback)(()=>{t(e=>({...e,error:null,status:"idle"}))},[]),u=a.useMemo(()=>({value:{...r,setCardState:s,setStatus:i,setLoading:l,setError:o,setIdle:c,clearError:d,isLoading:"loading"===r.status,isError:"error"===r.status,isSuccess:"success"===r.status,isIdle:"idle"===r.status}}),[r,s,i,l,o,c,d]);return(0,n.jsx)(C.Provider,{value:u,children:e})}let U=e=>r=>(0,n.jsx)(A,{children:(0,n.jsx)(e,{...r})});var F=t(1964);function T({className:e,...r}){return(0,n.jsx)(F.b,{"data-slot":"label",className:(0,c.cn)("tern:flex tern:items-center tern:gap-2 tern:text-sm tern:leading-none tern:font-medium tern:select-none tern:group-data-[disabled=true]:pointer-events-none tern:group-data-[disabled=true]:opacity-50 tern:peer-disabled:cursor-not-allowed tern:peer-disabled:opacity-50",e),...r})}var I=t(6146);function _({className:e,orientation:r="horizontal",decorative:t=!0,...a}){return(0,n.jsx)(I.b,{"data-slot":"separator",decorative:t,orientation:r,className:(0,c.cn)("tern:bg-border tern:shrink-0 tern:data-[orientation=horizontal]:h-px tern:data-[orientation=horizontal]:w-full tern:data-[orientation=vertical]:h-full tern:data-[orientation=vertical]:w-px",e),...a})}function L({className:e,...r}){return(0,n.jsx)("div",{"data-slot":"field-group",className:(0,c.cn)("group/field-group @container/field-group flex w-full flex-col gap-7 data-[slot=checkbox-group]:gap-3 [&>[data-slot=field-group]]:gap-4",e),...r})}let q=(0,o.F)("group/field flex w-full gap-3 data-[invalid=true]:text-destructive",{variants:{orientation:{vertical:["flex-col [&>*]:w-full [&>.sr-only]:w-auto"],horizontal:["flex-row items-center","[&>[data-slot=field-label]]:flex-auto","has-[>[data-slot=field-content]]:items-start has-[>[data-slot=field-content]]:[&>[role=checkbox],[role=radio]]:mt-px"],responsive:["flex-col [&>*]:w-full [&>.sr-only]:w-auto @md/field-group:flex-row @md/field-group:items-center @md/field-group:[&>*]:w-auto","@md/field-group:[&>[data-slot=field-label]]:flex-auto","@md/field-group:has-[>[data-slot=field-content]]:items-start @md/field-group:has-[>[data-slot=field-content]]:[&>[role=checkbox],[role=radio]]:mt-px"]}},defaultVariants:{orientation:"vertical"}});function M({className:e,orientation:r="vertical",...t}){return(0,n.jsx)("div",{role:"group","data-slot":"field","data-orientation":r,className:(0,c.cn)(q({orientation:r}),e),...t})}function B({className:e,...r}){return(0,n.jsx)(T,{"data-slot":"field-label",className:(0,c.cn)("group/field-label peer/field-label flex w-fit gap-2 leading-snug group-data-[disabled=true]/field:opacity-50","has-[>[data-slot=field]]:w-full has-[>[data-slot=field]]:flex-col has-[>[data-slot=field]]:rounded-md has-[>[data-slot=field]]:border [&>*]:data-[slot=field]:p-4","has-data-[state=checked]:bg-primary/5 has-data-[state=checked]:border-primary dark:has-data-[state=checked]:bg-primary/10",e),...r})}function $({className:e,...r}){return(0,n.jsx)("p",{"data-slot":"field-description",className:(0,c.cn)("text-muted-foreground text-sm leading-normal font-normal group-has-[[data-orientation=horizontal]]/field:text-balance","last:mt-0 nth-last-2:-mt-1 [[data-variant=legend]+&]:-mt-1.5","[&>a:hover]:text-primary [&>a]:underline [&>a]:underline-offset-4",e),...r})}function V({children:e,className:r,...t}){return(0,n.jsxs)("div",{"data-slot":"field-separator","data-content":!!e,className:(0,c.cn)("relative -my-2 h-5 text-sm group-data-[variant=outline]/field-group:-mb-2",r),...t,children:[(0,n.jsx)(_,{className:"absolute inset-0 top-1/2"}),e&&(0,n.jsx)("span",{className:"bg-background text-muted-foreground relative mx-auto block w-fit px-2","data-slot":"field-separator-content",children:e})]})}function O({className:e,children:r,errors:t,...s}){let i=(0,a.useMemo)(()=>{if(r)return r;if(!t?.length)return null;let e=[...new Map(t.map(e=>[e?.message,e])).values()];return e?.length==1?e[0]?.message:(0,n.jsx)("ul",{className:"ml-4 flex list-disc flex-col gap-1",children:e.map((e,r)=>e?.message&&(0,n.jsx)("li",{children:e.message},r))})},[r,t]);return i?(0,n.jsx)("div",{role:"alert","data-slot":"field-error",className:(0,c.cn)("text-destructive text-sm font-normal",e),...s,children:i}):null}var z=t(5318);function D({className:e,...r}){return(0,n.jsx)(z.bL,{"data-slot":"avatar",className:(0,c.cn)("tern:relative tern:flex tern:size-8 tern:shrink-0 tern:overflow-hidden tern:rounded-full",e),...r})}function W({className:e,...r}){return(0,n.jsx)(z._V,{"data-slot":"avatar-image",className:(0,c.cn)("tern:aspect-square tern:size-full",e),...r})}function H({className:e,...r}){return(0,n.jsx)(z.H4,{"data-slot":"avatar-fallback",className:(0,c.cn)("tern:bg-muted tern:flex tern:size-full tern:items-center tern:justify-center tern:rounded-full",e),...r})}let Z=(0,o.F)("tern:relative tern:w-full tern:rounded-lg tern:border tern:px-4 tern:py-3 tern:text-sm tern:grid tern:has-[>svg]:grid-cols-[calc(var(--spacing)*4)_1fr] tern:grid-cols-[0_1fr] tern:has-[>svg]:gap-x-3 tern:gap-y-0.5 tern:items-start tern:[&>svg]:size-4 tern:[&>svg]:translate-y-0.5 tern:[&>svg]:text-current",{variants:{variant:{default:"tern:bg-card tern:text-card-foreground",destructive:"tern:text-destructive tern:bg-card tern:[&>svg]:text-current tern:*:data-[slot=alert-description]:text-destructive/90"}},defaultVariants:{variant:"default"}});function K({className:e,variant:r,...t}){return(0,n.jsx)("div",{"data-slot":"alert",role:"alert",className:(0,c.cn)(Z({variant:r}),e),...t})}function Q({className:e,...r}){return(0,n.jsx)("div",{"data-slot":"alert-title",className:(0,c.cn)("tern:col-start-2 tern:line-clamp-1 tern:min-h-4 tern:font-medium tern:tracking-tight",e),...r})}function X({className:e,...r}){return(0,n.jsx)("div",{"data-slot":"alert-description",className:(0,c.cn)("tern:text-muted-foreground tern:col-start-2 tern:grid tern:justify-items-start tern:gap-1 tern:text-sm tern:[&_p]:leading-relaxed",e),...r})}function J({className:e,type:r,...t}){return(0,n.jsx)("input",{type:r,"data-slot":"input",className:(0,c.cn)("tern:file:text-foreground tern:placeholder:text-muted-foreground tern:selection:bg-primary tern:selection:text-primary-foreground tern:dark:bg-input/30 tern:border-input tern:h-9 tern:w-full tern:min-w-0 tern:rounded-md tern:border tern:bg-transparent tern:px-3 tern:py-1 tern:text-base tern:shadow-xs tern:transition-[color,box-shadow] tern:outline-none tern:file:inline-flex tern:file:h-7 tern:file:border-0 tern:file:bg-transparent tern:file:text-sm tern:file:font-medium tern:disabled:pointer-events-none tern:disabled:cursor-not-allowed tern:disabled:opacity-50 tern:md:text-sm","tern:focus-visible:border-ring tern:focus-visible:ring-ring/50 tern:focus-visible:ring-[3px]","tern:aria-invalid:ring-destructive/20 tern:dark:aria-invalid:ring-destructive/40 tern:aria-invalid:border-destructive",e),...t})}let G=({children:e})=>(0,n.jsx)("div",{className:"flex flex-col items-center justify-center py-8",children:e}),Y=U(()=>(0,n.jsx)("div",{className:"relative flex justify-center p-6 md:p-10",children:(0,n.jsx)("div",{className:"w-full max-w-sm",children:(0,n.jsxs)(w,{className:"w-full max-w-md",children:[(0,n.jsx)(b,{className:"space-y-1 text-center",children:(0,n.jsx)(y,{children:"Loading"})}),(0,n.jsx)(S,{children:(0,n.jsx)(G,{children:(0,n.jsx)(s.wm,{className:"text-muted-foreground h-8 w-8 animate-spin"})})})]})})})),ee=U(({cardTitle:e="Unable to sign in",cardSubtitle:r="An error occurred during the sign in process",message:t,onBackLinkClick:a})=>{let i=k(),l=t||i.error?.message||"An unexpected error occurred";return(0,n.jsx)("div",{className:"relative flex justify-center p-6 md:p-10",children:(0,n.jsx)("div",{className:"w-full max-w-sm",children:(0,n.jsxs)(w,{className:"w-full max-w-md",children:[(0,n.jsxs)(b,{className:"space-y-1 text-center",children:[(0,n.jsx)(y,{className:"font-bold text-destructive",children:e}),(0,n.jsx)(N,{children:r})]}),(0,n.jsx)(S,{className:"grid gap-4",children:(0,n.jsxs)(K,{variant:"destructive",children:[(0,n.jsx)(s.RI,{className:"h-4 w-4"}),(0,n.jsx)(Q,{children:"Error"}),(0,n.jsx)(X,{children:l})]})}),a&&(0,n.jsx)(E,{children:(0,n.jsx)(u,{variant:"outline",className:"w-full",onClick:a,children:"Go back"})})]})})})});var er=t(9953);let et=({onProviderClick:e,disabled:r,providers:t})=>(0,n.jsx)("div",{className:"tern:grid tern:gap-4 tern:sm:grid-cols-2",children:t.map((a,s)=>(0,n.jsxs)(u,{variant:"outline",className:(0,c.cn)("tern:w-full tern:gap-2",t.length%2!=0&&s===t.length-1&&"tern:sm:col-span-2"),onClick:()=>e(a),disabled:r,children:[(0,n.jsx)(er.T,{id:a.name,className:"h-4 w-4"}),a.name.charAt(0).toUpperCase()+a.name.slice(1)]},a.name))}),en=({onClick:e,children:r,startDisabled:t,throttleTimeInSec:s=30,showCounter:i=!0,...l})=>{let[o,c]=a.useState(0),d=a.useRef(void 0);(0,P.UQ)(()=>{t&&h()},[]),(0,a.useEffect)(()=>()=>clearInterval(d.current),[]);let h=()=>{c(s),d.current=window.setInterval(()=>{c(e=>(1===e&&clearInterval(d.current),e-1))},1e3)};return(0,n.jsxs)(u,{...l,variant:l.variant||"link",disabled:o>0||l.disabled,onClick:r=>{o||(e?.(r),h())},children:[r,o>0&&i?` (${o})`:""]})};var ea=t(1643);let es=e=>new Promise(r=>setTimeout(r,e)),ei=e=>{let r=k(),{id:t="code",onCodeEntryFinished:n,onResendCodeClicked:s,onResolve:i}=e,l=el({length:6}),o=(0,ea.mN)(),c=async e=>{await es(750),await i?.(e)},d=async e=>{let t=e?.message||(e instanceof Error?e.message:"Invalid code");r.setError({status:"error",message:t,error:e}),l.setError(t),o.setIdle(),await es(750),l.reset()};l.onCodeEntryFinished(e=>{o.setLoading(),l.otpInputProps.clearFeedback(),n(e,c,d)});let u=(0,a.useCallback)(e=>{l.reset(),s?.(e)},[l,s]);return{isLoading:o.isLoading,otpControl:l,onResendCode:s?u:void 0,onFakeContinue:()=>{l.otpInputProps.clearFeedback(),n("",c,d)}}},el=e=>{let r=a.useRef(null),t=a.useRef(void 0),{length:n=6}=e||{},[s,i]=a.useState(Array(n).fill("")),[l,o]=a.useState(null),[c,d]=a.useState(null),u=()=>{o(null),d(null)};return a.useEffect(()=>{if(s.filter(e=>e).length===n){let e=s.map(e=>e||" ").join("");t.current?.(e)}},[s,n]),{otpInputProps:{length:n,values:s,setValues:i,feedback:l,feedbackType:c,clearFeedback:u,ref:r},onCodeEntryFinished:e=>{t.current=e},reset:()=>{i(Array(n).fill("")),u(),r.current&&"function"==typeof r.current.focus&&r.current.focus()},setError:e=>{o(e),d("error")}}},[eo,ec]=(0,P.e3)("OTPInputContext");var ed=t(8521),eu=t(3563);function eh({className:e,containerClassName:r,...t}){return(0,n.jsx)(ed.wE,{"data-slot":"input-otp",containerClassName:(0,c.cn)("flex items-center gap-2 has-disabled:opacity-50",r),className:(0,c.cn)("tern:disabled:cursor-not-allowed",e),...t})}function em({className:e,...r}){return(0,n.jsx)("div",{"data-slot":"input-otp-group",className:(0,c.cn)("tern:flex tern:items-center",e),...r})}function ef({index:e,className:r,...t}){let s=a.useContext(ed.dK),{char:i,hasFakeCaret:l,isActive:o}=s?.slots[e]??{};return(0,n.jsxs)("div",{"data-slot":"input-otp-slot","data-active":o,className:(0,c.cn)("tern:data-[active=true]:border-ring tern:data-[active=true]:ring-ring/50 tern:data-[active=true]:aria-invalid:ring-destructive/20 tern:dark:data-[active=true]:aria-invalid:ring-destructive/40 tern:aria-invalid:border-destructive tern:data-[active=true]:aria-invalid:border-destructive tern:dark:bg-input/30 tern:border-input tern:relative tern:flex tern:h-9 tern:w-9 tern:items-center tern:justify-center tern:border-y tern:border-r tern:text-sm tern:shadow-xs tern:transition-all tern:outline-none tern:first:rounded-l-md tern:first:border-l tern:last:rounded-r-md tern:data-[active=true]:z-10 tern:data-[active=true]:ring-[3px]",r),...t,children:[i,l&&(0,n.jsx)("div",{className:"tern:pointer-events-none tern:absolute tern:inset-0 tern:flex tern:items-center tern:justify-center",children:(0,n.jsx)("div",{className:"tern:animate-caret-blink tern:bg-foreground tern:h-4 tern:w-px tern:duration-1000"})})]})}function ep({...e}){return(0,n.jsx)("div",{"data-slot":"input-otp-separator",role:"separator",...e,children:(0,n.jsx)(eu.A,{})})}},1643:function(e,r,t){t.d(r,{Cb:()=>i,U3:()=>a,mN:()=>l});var n=t(4105);let a=(e,r)=>{n.useEffect(()=>{let t=[e].flat().filter(e=>!!e);if(t.length)return t.forEach(e=>window.addEventListener(e,r)),()=>{t.forEach(e=>window.removeEventListener(e,r))}},[e,r])};var s=t(384);let i=()=>{let e=(0,s.rd)();return{navigateToFlowStart:async()=>{let r=e.indexPath;return r!==e.currentPath?e.navigate(r):e.urlStateParam?.path?e.navigate("/"+e.basePath+e.urlStateParam?.startPath):void 0}}},l=e=>{let[r,t]=function(e){let[r,t]=n.useState(e),a=n.useRef(!0);return n.useEffect(()=>()=>{a.current=!1},[]),[r,n.useCallback(e=>{a.current&&t(e)},[])]}({status:"idle",metadata:void 0,...e});return{status:r.status,setIdle:e=>t({status:"idle",metadata:e}),setError:e=>t({status:"error",metadata:e}),setLoading:e=>t({status:"loading",metadata:e}),loadingMetadata:"loading"===r.status?r.metadata:void 0,isLoading:"loading"===r.status,isIdle:"idle"===r.status}}},3873:function(e,r,t){t.d(r,{kU:()=>g,X_:()=>j,RI:()=>p,Jl:()=>b,wm:()=>m});var n,a,s,i,l,o,c,d,u=t(4105);function h(){return(h=Object.assign?Object.assign.bind():function(e){for(var r=1;r<arguments.length;r++){var t=arguments[r];for(var n in t)({}).hasOwnProperty.call(t,n)&&(e[n]=t[n])}return e}).apply(null,arguments)}let m=e=>u.createElement("svg",h({xmlns:"http://www.w3.org/2000/svg",fill:"none",stroke:"currentColor",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,className:"lucide lucide-loader-circle-icon lucide-loader-circle",viewBox:"0 0 24 24"},e),n||(n=u.createElement("path",{d:"M21 12a9 9 0 1 1-6.219-8.56"})));function f(){return(f=Object.assign?Object.assign.bind():function(e){for(var r=1;r<arguments.length;r++){var t=arguments[r];for(var n in t)({}).hasOwnProperty.call(t,n)&&(e[n]=t[n])}return e}).apply(null,arguments)}let p=e=>u.createElement("svg",f({xmlns:"http://www.w3.org/2000/svg",fill:"none",stroke:"currentColor",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,className:"lucide lucide-alert-circle",viewBox:"0 0 24 24"},e),a||(a=u.createElement("circle",{cx:12,cy:12,r:10})),s||(s=u.createElement("path",{d:"M12 8v4M12 16h.01"})));function x(){return(x=Object.assign?Object.assign.bind():function(e){for(var r=1;r<arguments.length;r++){var t=arguments[r];for(var n in t)({}).hasOwnProperty.call(t,n)&&(e[n]=t[n])}return e}).apply(null,arguments)}let g=e=>u.createElement("svg",x({xmlns:"http://www.w3.org/2000/svg",fill:"none",stroke:"currentColor",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,className:"lucide lucide-eye",viewBox:"0 0 24 24"},e),i||(i=u.createElement("path",{d:"M2 12s3-7 10-7 10 7 10 7-3 7-10 7-10-7-10-7"})),l||(l=u.createElement("circle",{cx:12,cy:12,r:3})));function v(){return(v=Object.assign?Object.assign.bind():function(e){for(var r=1;r<arguments.length;r++){var t=arguments[r];for(var n in t)({}).hasOwnProperty.call(t,n)&&(e[n]=t[n])}return e}).apply(null,arguments)}let j=e=>u.createElement("svg",v({xmlns:"http://www.w3.org/2000/svg",fill:"none",stroke:"currentColor",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,className:"lucide lucide-eye-off",viewBox:"0 0 24 24"},e),o||(o=u.createElement("path",{d:"M9.88 9.88a3 3 0 1 0 4.24 4.24M10.73 5.08A10 10 0 0 1 12 5c7 0 10 7 10 7a13.2 13.2 0 0 1-1.67 2.68"})),c||(c=u.createElement("path",{d:"M6.61 6.61A13.5 13.5 0 0 0 2 12s3 7 10 7a9.74 9.74 0 0 0 5.39-1.61M2 2l20 20"})));function w(){return(w=Object.assign?Object.assign.bind():function(e){for(var r=1;r<arguments.length;r++){var t=arguments[r];for(var n in t)({}).hasOwnProperty.call(t,n)&&(e[n]=t[n])}return e}).apply(null,arguments)}let b=e=>u.createElement("svg",w({xmlns:"http://www.w3.org/2000/svg",fill:"none",stroke:"currentColor",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,className:"lucide lucide-check",viewBox:"0 0 24 24"},e),d||(d=u.createElement("path",{d:"M20 6 9 17l-5-5"})))},8869:function(e,r,t){t.d(r,{createRoot:()=>n.createRoot}),t(5977);var n=t(9292)},5530:function(e,r,t){t.d(r,{Portal:()=>d});var n=t(4557),a=t(4105),s=t(3923),i=t(5407),l=t(5197),o=t(5977),c=t(384);function d({props:e,component:r,componentName:t,node:d}){let u={...e,...(0,l.C)({routing:e?.routing,path:e?.path})},h=(0,n.jsx)(o.g7,{componentName:t,props:u,children:(0,n.jsx)(a.Suspense,{fallback:"",children:a.createElement(r,u)})});if(u?.routing==="path"){if(!u?.path)throw Error("PathRouter requires a path to be specified in routing options.");return s.createPortal((0,n.jsx)(c.$,{preservedParams:i.Ej,basePath:u.path,children:h}),d)}return s.createPortal((0,n.jsx)(c.I9,{preservedParams:i.Ej,children:h}),d)}},384:function(e,r,t){t.d(r,{$:()=>j,qh:()=>p,dO:()=>w,I9:()=>v,rd:()=>s});var n=t(4105);let a=n.createContext(null);a.displayName="RouteContext";let s=()=>{let e=n.useContext(a);if(!e)throw Error("useRouter called while Router is null");return e};var i=t(4557),l=t(802),o=t(2117),c=t(1643);let d=(e,r,t,n)=>{let a=e;t&&(a=r,n||(a+="/"+t)),a.startsWith("//")&&(a=a.substr(1));let s=r+(t?"/"+t:"");return s.startsWith("//")&&(s=s.substr(1)),[a,s]};function u(e,r){let t=[];return function(e,r,t={}){let{decode:n=e=>e}=t;return function(t){let a=e.exec(t);if(!a)return!1;let{0:s,index:i}=a,l=Object.create(null);for(let e=1;e<a.length;e++){if(void 0===a[e])continue;let t=r[e-1];"*"===t.modifier||"+"===t.modifier?l[t.name]=a[e].split(t.prefix+t.suffix).map(e=>n(e,t)):l[t.name]=n(a[e],t)}return{path:s,index:i,params:l}}}(function e(r,t,n){if(r instanceof RegExp){if(!t)return r;let e=r.source.match(/\((?!\?)/g);if(e)for(let r=0;r<e.length;r++)t.push({name:r,prefix:"",suffix:"",modifier:"",pattern:""});return r}if(Array.isArray(r)){let a;return a=r.map(r=>e(r,t,n).source),RegExp(`(?:${a.join("|")})`,m(n))}return function(e,r,t={}){let{strict:n=!1,start:a=!0,end:s=!0,encode:i=e=>e}=t,l=`[${h(t.endsWith||"")}]|$`,o=`[${h(t.delimiter||"/#?")}]`,c=a?"^":"";for(let t of e)if("string"==typeof t)c+=h(i(t));else{let e=h(i(t.prefix)),n=h(i(t.suffix));if(t.pattern)if(r&&r.push(t),e||n)if("+"===t.modifier||"*"===t.modifier){let r="*"===t.modifier?"?":"";c+=`(?:${e}((?:${t.pattern})(?:${n}${e}(?:${t.pattern}))*)${n})${r}`}else c+=`(?:${e}(${t.pattern})${n})${t.modifier}`;else c+=`(${t.pattern})${t.modifier}`;else c+=`(?:${e}${n})${t.modifier}`}if(s)n||(c+=`${o}?`),c+=t.endsWith?`(?=${l})`:"$";else{let r=e[e.length-1],t="string"==typeof r?o.indexOf(r[r.length-1])>-1:void 0===r;n||(c+=`(?:${o}(?=${l}))?`),t||(c+=`(?=${o}|${l})`)}return new RegExp(c,m(t))}(function(e,r={}){let t=function(e){let r=[],t=0;for(;t<e.length;){let n=e[t];if("*"===n||"+"===n||"?"===n){r.push({type:"MODIFIER",index:t,value:e[t++]});continue}if("\\"===n){r.push({type:"ESCAPED_CHAR",index:t++,value:e[t++]});continue}if("{"===n){r.push({type:"OPEN",index:t,value:e[t++]});continue}if("}"===n){r.push({type:"CLOSE",index:t,value:e[t++]});continue}if(":"===n){let n="",a=t+1;for(;a<e.length;){let r=e.charCodeAt(a);if(r>=48&&r<=57||r>=65&&r<=90||r>=97&&r<=122||95===r){n+=e[a++];continue}break}if(!n)throw TypeError(`Missing parameter name at ${t}`);r.push({type:"NAME",index:t,value:n}),t=a;continue}if("("===n){let n=1,a="",s=t+1;if("?"===e[s])throw TypeError(`Pattern cannot start with "?" at ${s}`);for(;s<e.length;){if("\\"===e[s]){a+=e[s++]+e[s++];continue}if(")"===e[s]){if(0==--n){s++;break}}else if("("===e[s]&&(n++,"?"!==e[s+1]))throw TypeError(`Capturing groups are not allowed at ${s}`);a+=e[s++]}if(n)throw TypeError(`Unbalanced pattern at ${t}`);if(!a)throw TypeError(`Missing pattern at ${t}`);r.push({type:"PATTERN",index:t,value:a}),t=s;continue}r.push({type:"CHAR",index:t,value:e[t++]})}return r.push({type:"END",index:t,value:""}),r}(e),{prefixes:n="./"}=r,a=`[^${h(r.delimiter||"/#?")}]+?`,s=[],i=0,l=0,o="",c=e=>{if(l<t.length&&t[l].type===e)return t[l++].value},d=e=>{let r=c(e);if(void 0!==r)return r;let{type:n,index:a}=t[l];throw TypeError(`Unexpected ${n} at ${a}, expected ${e}`)},u=()=>{let e,r="";for(;e=c("CHAR")||c("ESCAPED_CHAR");)r+=e;return r};for(;l<t.length;){let e=c("CHAR"),r=c("NAME"),t=c("PATTERN");if(r||t){let l=e||"";-1===n.indexOf(l)&&(o+=l,l=""),o&&(s.push(o),o=""),s.push({name:r||i++,prefix:l,suffix:"",pattern:t||a,modifier:c("MODIFIER")||""});continue}let l=e||c("ESCAPED_CHAR");if(l){o+=l;continue}if(o&&(s.push(o),o=""),c("OPEN")){let e=u(),r=c("NAME")||"",t=c("PATTERN")||"",n=u();d("CLOSE"),s.push({name:r||(t?i++:""),pattern:r&&!t?a:t,prefix:e,suffix:n,modifier:c("MODIFIER")||""});continue}d("END")}return s}(r,n),t,n)}(e,t,r),t,r)}function h(e){return e.replace(/([.+*?=^!:${}()[\]|/\\])/g,"\\$1")}function m(e){return e&&e.sensitive?"":"i"}let f=({canActivate:e,children:r})=>{let{navigateToFlowStart:t}=(0,c.Cb)(),a=(0,l.qn)();return(n.useEffect(()=>{e(a)||t()}),e(a))?(0,i.jsx)(i.Fragment,{children:r}):null};function p(e){let r=s();if(!e.children)return null;if(!e.index&&!e.path)return(0,i.jsx)(i.Fragment,{children:e.children});if(!r.matches(e.path,e.index))return null;let[t,n]=d(r.indexPath,r.fullPath,e.path,e.index),l=(e,{searchParams:r}={})=>{let t=new URL(e,window.location.origin+n+"/");return r&&(t.search=r.toString()),t.pathname=(0,o.Kj)(t.pathname),t},c=(e,a)=>{let[s,i]=d(t,n,e,a),l=(0,o.Kj)(r.currentPath),c=e&&u(i+"/:foo*")(l)||a&&u(s)(l)||a&&u(i)(l)||!1;return!1!==c&&c.params},h=r.getMatchData(e.path,e.index)||{},m={};for(let[e,r]of Object.entries(h))m[e]=r;let p=(e.flowStart?(0,o.yY)(r.fullPath).replace("/"+r.basePath,""):r.flowStartPath)||r.startPath;return(0,i.jsx)(a.Provider,{value:{basePath:r.basePath,startPath:r.startPath,flowStartPath:p,fullPath:n,indexPath:t,currentPath:r.currentPath,baseNavigate:r.baseNavigate,getMatchData:c,matches:(e,r)=>!!c(e,r),navigate:(e,{searchParams:t}={})=>{let n=l(e,{searchParams:t});return r.baseNavigate(n)},resolve:l,refresh:r.refresh,params:m,queryString:r.queryString,queryParams:r.queryParams,urlStateParam:r.urlStateParam},children:e.canActivate?(0,i.jsx)(f,{canActivate:e.canActivate,children:e.children}):e.children})}let x=({basePath:e,startPath:r,getPath:t,getQueryString:s,internalNavigate:h,refreshEvents:m,preservedParams:f,urlStateParam:x,children:g})=>{let{navigate:v}=(0,l.qn)(),[j,w]=n.useState({path:t(),queryString:s()}),b=j.path,y=j.queryString,N=(0,o.vA)(j.queryString),S=(e,r)=>{let[t,n]=d("","",e,r),a=(0,o.Kj)(b),s=e&&u(n+"/:foo*")(a)||r&&u(t)(a)||r&&u(n)(a)||!1;return!1!==s&&s.params},E=n.useCallback(()=>{let e=t(),r=s();(e!==b||r!==y)&&w({path:e,queryString:r})},[b,y,t,s]);(0,c.U3)(m,E);let P=async r=>{if(!r)return;let t=r.origin!==window.location.origin;if(!r.pathname.startsWith("/"+e)||t){let e=await v(r.href);return E(),e}if(f){let e=(0,o.vA)(r.search);f.forEach(r=>{!e[r]&&N[r]&&(e[r]=N[r])}),r.search=(0,o.Ws)(e)}let n=await h(r,{metadata:{navigationType:"internal"}});return w({path:r.pathname,queryString:r.search}),n};return(0,i.jsx)(a.Provider,{value:{basePath:e,startPath:r,flowStartPath:r,fullPath:"",indexPath:"",currentPath:b,queryString:y,queryParams:N,getMatchData:S.bind(void 0),matches:((e,r)=>!!S(e,r)).bind(void 0),baseNavigate:P.bind(void 0),navigate:async()=>{},resolve:(e=>new URL(e,window.location.origin)).bind(void 0),refresh:E.bind(void 0),params:{},urlStateParam:x},children:(0,i.jsx)(p,{path:e,children:g})})},g="TERNSECURE-ROUTER/HASH",v=({preservedParams:e,children:r})=>{let t=async e=>{if(e)return window.location.hash=(0,o.FV)(e).substring(1+g.length),Promise.resolve()},n=()=>new URL((0,o.tL)(window.location.hash)?window.location.origin+window.location.hash.substring(1):window.location.origin);return(0,i.jsx)(x,{getPath:()=>"/"===n().pathname?"/"+g:"/"+g+n().pathname,basePath:g,startPath:"",getQueryString:()=>n().search,internalNavigate:t,refreshEvents:["popstate","hashchange"],preservedParams:e,children:r})},j=({basePath:e,preservedParams:r,children:t})=>{let{navigate:a}=(0,l.qn)(),[s,c]=n.useState(!1);if(!a)throw Error("Missing navigate option.");let d=(e,r)=>{if(e)return a((0,o.FV)(e),r)};return(n.useEffect(()=>{(async()=>{if((0,o.tL)(window.location.hash)){let e=(0,o.yR)(new URL(window.location.href));await d(e.href,{replace:!0}),c(!0)}})()},[c,a,window.location.hash]),(0,o.tL)(window.location.hash)&&!s)?null:(0,i.jsx)(x,{basePath:e.substring(1),startPath:"",getPath:()=>window.location.pathname,getQueryString:()=>window.location.search,internalNavigate:d,refreshEvents:["popstate"],preservedParams:r,children:t})};function w({children:e}){let r=s(),t=null;return n.Children.forEach(e,e=>{if(t||!(e&&n.isValidElement(e)&&"object"==typeof e&&e.type===p))return;let{index:a,path:s}=e.props;(!a&&!s||r.matches(s,a))&&(t=e)}),(0,i.jsx)(i.Fragment,{children:t})}},3777:function(e,r,t){t.d(r,{pr:()=>l});var n=t(4557),a=t(4853),s=t(8992),i=t(3873);function l({canSubmit:e,isSubmitting:r,submitText:t,submittingText:l,className:o}){return(0,n.jsx)(s.$n,{type:"submit",disabled:!e||r,className:(0,a.cn)("tern:w-full",o),children:r?(0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)(i.wm,{className:"tern:mr-2 tern:h-4 tern:w-4 tern:animate-spin"}),l]}):t})}}}]);
@@ -1 +1 @@
1
- "use strict";(globalThis.webpackChunk_tern_secure_auth=globalThis.webpackChunk_tern_secure_auth||[]).push([["99"],{5407:function(e,r,_){_.d(r,{Ej:()=>n,UU:()=>i,e8:()=>u});let n=["redirect_url","after_sign_in_url","after_sign_up_url","sign_in_force_redirect_url","sign_in_fallback_redirect_url","sign_up_force_redirect_url","sign_up_fallback_redirect_url"],u=["email_address","phone_number","username"],i=["email_address","password"]},4853:function(e,r,_){_.d(r,{cn:()=>i});var n=_(9238);let u=(0,_(8383).zu)({prefix:"tern:"});function i(...e){return u((0,n.$)(e))}},4518:function(e,r,_){e.exports={}}}]);
1
+ "use strict";(globalThis.webpackChunk_tern_secure_auth=globalThis.webpackChunk_tern_secure_auth||[]).push([["99"],{5407:function(e,r,_){_.d(r,{Ej:()=>n,UU:()=>i,e8:()=>u});let n=["redirect_url","after_sign_in_url","after_sign_up_url","sign_in_force_redirect_url","sign_in_fallback_redirect_url","sign_up_force_redirect_url","sign_up_fallback_redirect_url"],u=["email_address","phone_number","username"],i=["email_address","password"]},4853:function(e,r,_){_.d(r,{cn:()=>i});var n=_(9238);let u=(0,_(8383).zu)({prefix:"tern:"});function i(...e){return u((0,n.$)(e))}},5826:function(e,r,_){e.exports={}}}]);
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@tern-secure/auth",
3
- "version": "1.1.0-canary.v20251206165958",
3
+ "version": "1.1.0-canary.v20251207162402",
4
4
  "description": "Firebase authentication client ready to use functions",
5
5
  "repository": {
6
6
  "type": "git",
@@ -32,8 +32,8 @@
32
32
  "tailwindcss-animate": "^1.0.7",
33
33
  "tslib": "2.8.1",
34
34
  "tw-animate-css": "^1.3.3",
35
- "@tern-secure/shared": "1.3.0-canary.v20251206165958",
36
- "@tern-secure/types": "1.1.0-canary.v20251206165958"
35
+ "@tern-secure/shared": "1.3.0-canary.v20251207162402",
36
+ "@tern-secure/types": "1.1.0-canary.v20251207162402"
37
37
  },
38
38
  "devDependencies": {
39
39
  "@radix-ui/react-avatar": "^1.1.11",