1import{j as e}from"./index-CBU06HTg.js";import{r as o}from"./index-7ExPSliO.js";import{e as I,d as P,u as $,k as C,m as g,L as d,B as m,by as A,bt as M,cu as B,ce as F,cf as G,cg as R,cv as z}from"./AppEntry-BsKMboTZ.js";import{I as y}from"./input-tAFFd3F3.js";import{a as T}from"./animations-CovUZXvn.js";import{S as H,s as q}from"./SEOHead-BDIbpLXa.js";import{A as U}from"./arrow-left-CcRNtxk0.js";import{M as O}from"./mail-3Kvro8jq.js";import{L as W}from"./lock-4lYYS_sR.js";import{E as Q}from"./eye-off-D60KXAg4.js";import{E as Y}from"./eye-BplkquP5.js";import"./seoConfig-BU7ZAotP.js";import"./topicHubs-5a--cYIH.js";import"./knowledgeBase-DOWDhxHX.js";import"./companionDirectory-BfbtRUqY.js";import"./index-B2f9c0Bq.js";function he(){const[,k]=I(),[c,E]=o.useState(!1),[h,p]=o.useState(!1),[N,f]=o.useState(!1),{isDark:r}=P(),{signIn:j,signInWithGoogle:D,user:V,isAuthenticating:J,tierDataRefreshTrigger:K,pendingRoute:S}=$(),{toast:n}=C(),_=new URLSearchParams(window.location.search).get("message")==="account_created",[x,u]=o.useState(null),[a,b]=o.useState(()=>
1({email:new URLSearchParams(window.location.search).get("email")||"",password:""}));o.useEffect(()=>{const s=sessionStorage.getItem("sam_orphan_cleanup_message");if(s){const i=sessionStorage.getItem("sam_orphan_canonical_hint");sessionStorage.removeItem("sam_orphan_cleanup_message"),sessionStorage.removeItem("sam_orphan_canonical_hint"),sessionStorage.removeItem("sam_post_signin_link_done"),n({title:"Existing account found",description:i?`${s} (${i})`:s,duration:12e3})}},[n]),o.useEffect(()=>{},[V,S,k]);const L=async s=>{if(s.preventDefault(),!a.email||!a.password){n({title:"Missing information",description:"Please enter both email and password",variant:"destructive"});return}p(!0);try{console.log("Attempting login"),localStorage.removeItem("lastPath"),localStorage.removeItem("sam_last_path");const{path:i,reason:l}=z();console.log("Pre-calculated redirect to:",i,"Reason:",l);const{error:t}=await j(a.email,a.password);t?(console.error("Login error:",t),t.code==="invalid_credentials"?u("That email or password doesn't look right. Please check and try again."):n({title:"Login failed",description:{email_not_confirmed:"Please verify your email address before signing in. Check your inbox for a confirmation link.",too_many_requests:"Too many login attempts. Please wait a moment before trying again."}[t.code]||t.message||"Something went wrong. Please try again.",variant:"destructive"})):(console.log("Login successful, AuthContext will handle routing via pendingRoute"),n({title:"Welcome back!",description:"You've been successfully logged in."}))}catch(i){console.error("Login failed:",i),n({title:"Error",description:"An unexpected error occurred. Please try again.",variant:"destructive"})}finally{p(!1)}};return e.jsxDEV(e.Fragment,{children:[e.jsxDEV(H,{...q.login},void 0,!1,{fileName:"/home/runner/workspace/client/src/pages/login.tsx",lineNumber:138,columnNumber:7},this),e.jsxDEV(g.div,{initial:"initial",animate:"in",exit:"out",variants:T,className:`min-h-screen transition-colors duration-300 ${r?"bg-gradient-to-br from-gray-900 via-gray-800 to-gray-900":"bg-gradient-to-br from-blue-50 via-white to-purple-50"}`,children:[e.jsxDEV("div",{className:"absolute top-8 left-8 z-10",children:e.jsxDEV(d,{href:"/",children:e.jsxDEV(m,{variant:"ghost",size:"sm",className:`flex items-center space-x-2 ${r?"text-gray-300 hover:text-white":"text-gray-600 hover:text-gray-900"}`,children:[e.jsxDEV(U,{className:"w-4 h-4"},void 0,!1,{fileName:"/home/runner/workspace/client/src/pages/login.tsx",lineNumber:160,columnNumber:13},this),e.jsxDEV("span",{children:"Back to Home"},void 0,!1,{fileName:"/home/runner/workspace/client/src/pages/login.tsx",lineNumber:161,columnNumber:13},this)]},void 0,!0,{fileName:"/home/runner/workspace/client/src/pages/login.tsx",lineNumber:153,columnNumber:11},this)},void 0,!1,{fileName:"/home/runner/workspace/client/src/pages/login.tsx",lineNumber:152,columnNumber:9},this)},void 0,!1,{fileName:"/home/runner/workspace/client/src/pages/login.tsx",lineNumber:151,columnNumber:7},this),e.jsxDEV("div",{className:"flex items-center justify-center min-h-screen px-4 py-16 sm:py-[7.5rem]",children:e.jsxDEV(g.div,{initial:{opacity:0,y:20},animate:{opacity:1,y:0},transition:{duration:.6},className:`w-full max-w-md p-6 sm:p-8 rounded-2xl backdrop-blur-xl border shadow-2xl ${r?"bg-gray-900/80 border-gray-700":"bg-white/80 border-gray-200"}`,children:[e.jsxDEV("div",{className:"flex justify-center mb-8",children:e.jsxDEV(A,{size:"lg"},void 0,!1,{fileName:"/home/runner/workspace/client/src/pages/login.tsx",lineNumber:179,columnNumber:13},this)},void 0,!1,{fileName:"/home/runner/workspace/client/src/pages/login.tsx",lineNumber:178,columnNumber:11},this),_&&e.jsxDEV("div",{className:"mb-6 p-4 rounded-lg bg-green-500/10 border border-green-500/30 text-green-400 text-sm text-center",children:"Your account has been created! Please sign in below with your new password."},void 0,!1,{fileName:"/home/runner/workspace/client/src/pages/login.tsx",lineNumber:184,columnNumber:13},this),x&&e.jsxDEV("div",{className:"mb-6 p-4 rounded-lg bg-red-500/10 border border-red-500/30 text-red-400 text-sm text-center",children:x},void 0,!1,{fileName:"/home/runner/workspace/client/src/pages/login.tsx",lineNumber:190,columnNumber:13},this),e.jsxDEV("div",{className:"text-center mb-8",children:[e.jsxDEV("h1",{className:`text-2xl font-bold mb-2 ${r?"text-white":"text-gray-900"}`,children:"Welcome Back"},void 0,!1,{fileName:"/home/runner/workspace/client/src/pages/login.tsx",lineNumber:197,columnNumber:13},this),e.jsxDEV("p",{className:`${r?"text-gray-400":"text-gray-600"}`,children:"Sign in to continue your journey with SAM"},void 0,!1,{fileName:"/home/runner/workspace/client/src/pages/login.tsx",lineNumber:202,columnNumber:13},this)]},void 0,!0,{fileName:"/home/runner/workspace/client/src/pages/login.tsx",lineNumber:196,columnNumber:11},this),e.jsxDEV(g.div,{className:"mb-6",whileHover:{scale:1.02,y:-1},whileTap:{scale:.98},children:e.jsxDEV(m,{type:"button",variant:"outline",disabled:N,onClick:async()=>{f(!0);const s=M(),i=B(s==null?void 0:s.redirectPath),l=i?F():null,t=crypto.randomUUID(),w=(l==null?void 0:l.companionId)===i&&G(t,l),{error:v}=await D(w?t:void 0);v&&(R(),f(!1),n({title:"Google sign-in failed",description:v.message||"Failed to connect with Google",variant:"destructive"}))},className:`w-full py-3 font-medium transition-all duration-300 border backdrop-blur-sm ${r?"bg-white/10 border-white/20 text-white hover:bg-white/15 hover:border-white/30":"bg-white border-gray-200 text-gray-700 hover:bg-gray-50 hover:border-gray-300"}`,children:[e.jsxDEV("svg",{className:"w-5 h-5 mr-3",viewBox:"0 0 24 24",children:[e.jsxDEV("path",{fill:"#4285F4",d:"M22.56 12.25c0-.78-.07-1.53-.2-2.25H12v4.26h5.92c-.26 1.37-1.04 2.53-2.21 3.31v2.77h3.57c2.08-1.92 3.28-4.74 3.28-8.09z"},void 0,!1,{fileName:"/home/runner/workspace/client/src/pages/login.tsx",lineNumber:248,columnNumber:17},this),e.jsxDEV("path",{fill:"#34A853",d:"M12 23c2.97 0 5.46-.98 7.28-2.66l-3.57-2.77c-.98.66-2.23 1.06-3.71 1.06-2.86 0-5.29-1.93-6.16-4.53H2.18v2.84C3.99 20.53 7.7 23 12 23z"},void 0,!1,{fileName:"/home/runner/workspace/client/src/pages/login.tsx",lineNumber:249,columnNumber:17},this),e.jsxDEV("path",{fill:"#FBBC05",d:"M5.84 14.09c-.22-.66-.35-1.36-.35-2.09s.13-1.43.35-2.09V7.07H2.18C1.43 8.55 1 10.22 1 12s.43 3.45 1.18 4.93l2.85-2.22.81-.62z"},void 0,!1,{fileName:"/home/runner/workspace/client/src/pages/login.tsx",lineNumber:250,columnNumber:17},this),e.jsxDEV("path",{fill:"#EA4335",d:"M12 5.38c1.62 0 3.06.56 4.21 1.64l3.15-3.15C17.45 2.09 14.97 1 12 1 7.7 1 3.99 3.47 2.18 7.07l3.66 2.84c.87-2.6 3.3-4.53 6.16-4.53z"},void 0,!1,{fileName:"/home/runner/workspace/client/src/pages/login.tsx",lineNumber:251,columnNumber:17},this)]},void 0,!0,{fileName:"/home/runner/workspace/client/src/pages/login.tsx",lineNumber:247,columnNumber:15},this),N?"Redirecting to Googleâ¦":"Continue with Google"]},void 0,!0,{fileName:"/home/runner/workspace/client/src/pages/login.tsx",lineNumber:215,columnNumber:13},this)},void 0,!1,{fileName:"/home/runner/workspace/client/src/pages/login.tsx",lineNumber:210,columnNumber:11},this),e.jsxDEV("div",{className:"relative mb-6",children:[e.jsxDEV("div",{className:`absolute inset-0 flex items-center ${r?"text-gray-500":"text-gray-400"}`,children:e.jsxDEV("span",{className:"w-full border-t border-current opacity-30"},void 0,!1,{fileName:"/home/runner/workspace/client/src/pages/login.tsx",lineNumber:262,columnNumber:15},this)},void 0,!1,{fileName:"/home/runner/workspace/client/src/pages/login.tsx",lineNumber:259,columnNumber:13},this),e.jsxDEV("div",{className:"relative flex justify-center text-xs uppercase",children:e.jsxDEV("span",{className:`px-2 ${r?"bg-gray-900/80 text-gray-400":"bg-white/80 text-gray-500"}`,children:"Or sign in with email"},void 0,!1,{fileName:"/home/runner/workspace/client/src/pages/login.tsx",lineNumber:265,columnNumber:15},this)},void 0,!1,{fileName:"/home/runner/workspace/client/src/pages/login.tsx",lineNumber:264,columnNumber:13},this)]},void 0,!0,{fileName:"/home/runner/workspace/client/src/pages/login.tsx",lineNumber:258,columnNumber:11},this),e.jsxDEV("form",{onSubmit:L,name:"login",className:"space-y-6",children:[e.jsxDEV("div",{className:"space-y-2",children:[e.jsxDEV("label",{htmlFor:"login-email",className:`block text-sm font-medium ${r?"text-gray-300":"text-gray-700"}`,children:"Email Address"},void 0,!1,{fileName:"/home/runner/workspace/client/src/pages/login.tsx",lineNumber:277,columnNumber:15},this),e.jsxDEV("div",{className:"relative",children:[e.jsxDEV(O,{className:`absolute left-3 top-1/2 transform -translate-y-1/2 w-5 h-5 ${r?"text-gray-400":"text-gray-500"}`},void 0,!1,{fileName:"/home/runner/workspace/client/src/pages/login.tsx",lineNumber:283,columnNumber:17},this),e.jsxDEV(y,{type:"email",id:"login-email",name:"username",autoComplete:"username",value:a.email,onChange:s=>{b(i=>({...i,email:s.target.value})),u(null)},className:"pl-10 text-white placeholder:text-white [&:-webkit-autofill]:[-webkit-text-fill-color:white] [&:-webkit-autofill]:caret-white",placeholder:"Enter your email",required:!0},void 0,!1,{fileName:"/home/runner/workspace/client/src/pages/login.tsx",lineNumber:286,columnNumber:17},this)]},void 0,!0,{fileName:"/home/runner/workspace/client/src/pages/login.tsx",lineNumber:282,columnNumber:15},this)]},void 0,!0,{fileName:"/home/runner/workspace/client/src/pages/login.tsx",lineNumber:276,columnNumber:13},this),e.jsxDEV("div",{className:"space-y-2",children:[e.jsxDEV("label",{htmlFor:"login-password",className:`block text-sm font-medium ${r?"text-gray-300":"text-gray-700"}`,children:"Password"},void 0,!1,{fileName:"/home/runner/workspace/client/src/pages/login.tsx",lineNumber:302,columnNumber:15},this),e.jsxDEV("div",{className:"relative",children:[e.jsxDEV(W,{className:`absolute left-3 top-1/2 transform -translate-y-1/2 w-5 h-5 ${r?"text-gray-400":"text-gray-500"}`},void 0,!1,{fileName:"/home/runner/workspace/client/src/pages/login.tsx",lineNumber:308,columnNumber:17},this),e.jsxDEV(y,{type:c?"text":"password",id:"login-password",name:"password",autoComplete:"current-password",value:a.password,onChange:s=>{b(i=>({...i,password:s.target.value})),u(null)},className:"pl-10 pr-10 text-white placeholder:text-white [&:-webkit-autofill]:[-webkit-text-fill-color:white] [&:-webkit-autofill]:caret-white",placeholder:"Enter your password",required:!0},void 0,!1,{fileName:"/home/runner/workspace/client/src/pages/login.tsx",lineNumber:311,columnNumber:17},this),e.jsxDEV(m,{type:"button",variant:"ghost",size:"sm",onClick:()=>E(!c),className:"absolute right-2 top-1/2 transform -translate-y-1/2 p-1",children:c?e.jsxDEV(Q,{className:"w-4 h-4"},void 0,!1,{fileName:"/home/runner/workspace/client/src/pages/login.tsx",lineNumber:330,columnNumber:21},this):e.jsxDEV(Y,{className:"w-4 h-4"},void 0,!1,{fileName:"/home/runner/workspace/client/src/pages/login.tsx",lineNumber:332,columnNumber:21},this)},void 0,!1,{fileName:"/home/runner/workspace/client/src/pages/login.tsx",lineNumber:322,columnNumber:17},this)]},void 0,!0,{fileName:"/home/runner/workspace/client/src/pages/login.tsx",lineNumber:307,columnNumber:15},this)]},void 0,!0,{fileName:"/home/runner/workspace/client/src/pages/login.tsx",lineNumber:301,columnNumber:13},this),e.jsxDEV(m,{type:"submit",disabled:h,className:"sam-primary-cta w-full py-3 font-medium transition-all duration-300",children:h?"Signing In...":"Sign In"},void 0,!1,{fileName:"/home/runner/workspace/client/src/pages/login.tsx",lineNumber:339,columnNumber:13},this)]},void 0,!0,{fileName:"/home/runner/workspace/client/src/pages/login.tsx",lineNumber:274,columnNumber:11},this),e.jsxDEV("div",{className:"mt-4 text-right",children:e.jsxDEV(d,{href:"/forgot-password",children:e.jsxDEV("span",{className:`text-sm font-medium hover:underline cursor-pointer ${r?"text-[#9fc4e8] hover:text-[#d7e7f5]":"text-[#6e9fcf] hover:text-[#477aa8]"}`,children:"Forgot password?"},void 0,!1,{fileName:"/home/runner/workspace/client/src/pages/login.tsx",lineNumber:351,columnNumber:15},this)},void 0,!1,{fileName:"/home/runner/workspace/client/src/pages/login.tsx",lineNumber:350,columnNumber:13},this)},void 0,!1,{fileName:"/home/runner/workspace/client/src/pages/login.tsx",lineNumber:349,columnNumber:11},this),e.jsxDEV("div",{className:"mt-6 text-center space-y-3",children:e.jsxDEV("p",{className:`text-sm ${r?"text-gray-400":"text-gray-600"}`,children:["Don't have an account?"," ",e.jsxDEV(d,{href:"/signup",children:e.jsxDEV("span",{className:`font-medium hover:underline ${r?"text-[#9fc4e8] hover:text-[#d7e7f5]":"text-[#6e9fcf] hover:text-[#477aa8]"}`,children:"Sign up here"},void 0,!1,{fileName:"/home/runner/workspace/client/src/pages/login.tsx",lineNumber:366,columnNumber:17},this)},void 0,!1,{fileName:"/home/runner/workspace/client/src/pages/login.tsx",lineNumber:365,columnNumber:15},this)]},void 0,!0,{fileName:"/home/runner/workspace/client/src/pages/login.tsx",lineNumber:361,columnNumber:13},this)},void 0,!1,{fileName:"/home/runner/workspace/client/src/pages/login.tsx",lineNumber:360,columnNumber:11},this)]},void 0,!0,{fileName:"/home/runner/workspace/client/src/pages/login.tsx",lineNumber:167,columnNumber:9},this)},void 0,!1,{fileName:"/home/runner/workspace/client/src/pages/login.tsx",lineNumber:166,columnNumber:7},this)]},void 0,!0,{fileName:"/home/runner/workspace/client/src/pages/login.tsx",lineNumber:139,columnNumber:7},this)]},void 0,!0,{fileName:"/home/runner/workspace/client/src/pages/login.tsx",lineNumber:137,columnNumber:5},this)}export{he as default};
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.