1import{r as l,j as a}from"./react-vendor-DUhHROXo.js";import{s as d}from"./client-DTel1CZI.js";import{b as h}from"./router-vendor-Dz9PdDzH.js";import{a5 as _}from"./index-BLtzf0SR.js";const w=["superadmin","admin","president","cfo","uat_director","sponsor_ops_manager","host_owner","consultant","analyst","creator","partner","moderator"],x={superadmin:"/superadmin",admin:"/admin",president:"/president",cfo:"/cfo",uat_director:"/uat",sponsor_ops_manager:"/sponsor-ops",host_owner:"/host",consultant:"/consultant",analyst:"/analyst",creator:"/creator",partner:"/partner",ad_rep:"/ad-rep",moderator:"/admin",user:"/account",staff_writer:"/editorial"};function v(){const e=h(),[m,o]=l.useState("Finishing sign-inâ¦");return l.useEffect(()=>{let s=!1;async function p(){var i;try{const f=new URLSearchParams(window.location.hash.replace(/^#/,"")).get("type");await new Promise(r=>setTimeout(r,50));const{data:{session:t}}=await d.auth.getSession();if(s)return;if(f==="recovery"){e("/set-password",{replace:!0});return}if(!(t!=null&&t.user)){o("Sign-in link is no longer valid â please try again."),setTimeout(()=>e("/login",{replace:!0}),1500);return}if((i=t.user.user_metadata)!=null&&i.must_set_password){e("/set-password",{replace:!0});return}const{data:n}=await d.from("user_roles").select("role").eq("user_id",t.user.id),g=(n==null?void 0:n.map(r=>r.role))||[],u=w.find(r=>g.includes(r));e(u?x[u]:"/account",{replace:!0})}catch(c){console.error("[auth/callback] failed:",c),s||(o("Something went wrong â redirecting to login."),setTimeout(()=>e("/login",{replace:!0}),1500))}}return p(),()=>{s=!0}},[e]),a.jsx("div",{className:"min-h-screen flex items-center justify-center bg-background",children:a.jsxs("div",{className:"flex items-center gap-3 text-muted-foreground",children:[a.jsx(_,{className:"h-5 w-5 animate-spin"}),a.jsx("span",{className:"text-sm",children:m})]})})}export{v 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.