1import{u as c,j as a}from"./vendor-query-CDWquNOr.js";import{u as f,r as l}from"./vendor-react-kb4SOhqU.js";import{s as d,j as h}from"./index-Dal2VKqF.js";import{C as y}from"./companyRouting-BiYkQEc4.js";import"./vendor-supabase-D0XKNO17.js";import"./vendor-radix-CqRzJ76P.js";import"./vendor-charts-CSz2-Rta.js";import"./vendor-stripe-BKT3e942.js";import"./vendor-icons-DPyBaExq.js";import"./vendor-media-BBVX24IF.js";import"./vendor-markdown-DwPMj3Qf.js";import"./vendor-motion-DW9K_eHB.js";function g(e){return c({queryKey:["company-membership",e],enabled:!!e,staleTime:5*60*1e3,queryFn:async()=>{const{data:t,error:i}=await d.from("company_users").select("company_id").eq("user_id",e).limit(1).maybeSingle();if(i)throw i;return!!t}})}const w=({children:e})=>{const{user:t,userId:i,loading:u,isCompany:r,isTalent:n}=h(),s=f(),{data:o,isLoading:p}=g(r?i:void 0),m=u||r&&p;return l.useEffect(()=>{if(!m){if(!t){s("/auth");return}if(n){s("/talent");return}r&&o===!1&&s(y)}},[m,t,n,r,o,s]),m?a.jsx("div",{className:"min-h-screen flex items-center justify-center bg-navy-950",children:a.jsx("div",{className:"text-white text-lg",children:"Loading..."})}):!t||n||r&&o===!1?null:a.jsx(a.Fragment,{children:e})};export{w as ProtectedCompanyRoute,w 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.