1const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/react-spline-CW2xf6IL.js","assets/index-D9M274Oh.js","assets/index-DfiNB0M1.css"])))=>i.map(i=>d[i]); 2import{r as s,j as n,c as g,_ as x}from"./index-D9M274Oh.js";const E=s.lazy(()=>x(()=>import("./react-spline-CW2xf6IL.js"),__vite__mapDeps([0,1,2]))),f=new Set,_=new Map,p=({id:t,url:r,className:h,priority:a="high"})=>{const[o,c]=s.useState(a==="high"),[v,u]=s.useState(!0),i=s.useRef(null),d=()=>t==="hero"?n.jsx("div",{className:"hero-image"}):t==="tube"||t==="tube_2"?n.jsx("div",{className:"cps-clear-tube-image-desktop"}):t==="tube-mobile"?n.jsx("div",{className:"cps-clear-tube-image-mobile"}):null;s.useEffect(()=>{f.has(r)&&(c(!0),u(!1))},[r]),s.useEffect(()=>{if(a==="high")return;const e=i.current;if(!e)return;const l=new IntersectionObserver(([m])=>{m.isIntersecting&&(c(!0),l.disconnect())},{rootMargin:"400px"});return l.observe(e),()=>l.disconnect()},[a]),s.useEffect(()=>{if(a==="high"||o)return;const e=()=>{c(!0),window.removeEventListener("scroll",e)};return window.addEventListener("scroll",e,{once:!0}),()=>window.removeEventListener("scroll",e)},[a,o]);const b=e=>{_.set(r,e),f.add(r),u(!1)};return o?n.jsx("div",{ref:i,children:n.jsx(s.Suspense,{fallback:d(),children:n.jsx(E,{scene:r,onLoad:b,className:g("pointer-events-auto",h,{"hero-canvas":t==="hero","tube-canvas":t==="tube_2",loading:v})})})}):n.jsx("div",{ref:i,children:d()})};export{p as MainBackground};
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.