1"use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[696],{49696:function(e,r,t){t.r(r);var n=t(57437),l=t(58214),u=t(2265),c=t(97776),o=t(61877),a=t(8938),s=t(39938);r.default=e=>{let{name:r}=e,t=(0,u.useRef)(null),i=(0,u.useRef)(),d=(0,u.useRef)(),m=(0,u.useRef)(),f=(0,u.useRef)(),p=(0,u.useRef)(null),g=(0,u.useRef)(new c.SUY),[w,h]=(0,u.useState)(!1),b=(0,u.useRef)(null),E=(0,u.useMemo)(()=>"glass"===r?"./assets/models/looking_glass_hologram_technology_meet_art.glb":"flower"===r?"./assets/models/newglow.glb":"",[r]),v=(0,u.useCallback)(()=>{if(!t.current||i.current&&i.current.domElement&&i.current.domElement.parentNode===t.current)return;let e=new c.xsS,r=new c.cPb(55,t.current.clientWidth/t.current.clientHeight,.1,1e3);r.position.set(-.06,.87,.24),r.rotation.set(-2.5,-.84,-2.68);let n=new c.CP7({antialias:!0,alpha:!0});n.setSize(t.current.clientWidth,t.current.clientHeight),n.setClearColor(0,0),n.toneMapping=c.LY2,t.current.appendChild(n.domElement);let l=new a.z(r,n.domElement);l.autoRotate=!0,l.autoRotateSpeed=.3,l.enableDamping=!0,l.enableZoom=!1,l.dampingFactor=.05,l.addEventListener("change",()=>{}),d.current=e,m.current=r,i.current=n,f.current=l;let u=new c.Mig(4210752,2);e.add(u);let s=new c.Ox3(16777215,1);s.position.set(5,10,7.5),e.add(s);let p=new c.cek(16777215,1,100);p.position.set(0,10,10),e.add(p);let g=new o.C,w=new c.anP(n);e.environment=w.fromScene(g).texture},[]),C=(0,u.useCallback)(()=>{d.current&&m.current&&E&&new s.E().load(E,e=>{if(d.current){if(d.current.children.filter(e=>"Group"===e.type||"Object3D"===e.type).forEach(e=>d.current.remove(e)),d.current.add(e.scene),"glass"===r&&m.current&&(m.current.position.set(-.06,.87,.24),m.current.rotation.set(-2.5,-.84,-2.68)),"flower"===r&&m.current&&(m.current.position.set(-8.278507531392355,7.243469108054473,5.088048243948983),m.current.rotation.set(-.95843966504997,-.7519386249627753,-.7714137047165864)),e.animations&&e.animations.length>0){let r=new c.Xcj(e.scene);r.clipAction(e.animations[0]).play(),p.current=r}h(!0)}},e=>{let r=e.loaded/e.total*100;console.log("".concat(r.toFixed(2),"% loaded"))},e=>console.error("Error loading the model:",e))},[E,r]),x=(0,u.useCallback)(()=>{if(t.current&&m.current&&i.current){let{clientWidth:e,clientHeight:r}=t.current;m.current.aspect=e/r,m.current.updateProjectionMatrix(),i.current.setSize(e,r)}},[]),k=(0,u.useCallback)(()=>{if(f.current&&i.current&&d.current&&m.current){if(b.current=requestAnimationFrame(k),f.current.update(),p.current){let e=g.current.getDelta();p.current.update(e)}i.current.render(d.current,m.current)}},[]);return(0,u.useEffect)(()=>(t.current&&t.current&&(v(),C(),k()),window.addEventListener("resize",x),()=>{if(window.removeEventListener("resize",x),b.current&&cancelAnimationFrame(b.current),i.current&&(i.current.dispose(),t.current&&i.current.domElement)){let e=i.current.domElement;e.parentNode===t.current&&t.current.removeChild(e)}d.current&&d.current.clear(),p.current&&(p.current=null)}),[v,C,k,x]),(0,u.useEffect)(()=>(console.log("Canvas mounted, name:",r),console.log("Model path:",E),()=>{console.log("Canvas unmounted")}),[r,E]),(0,n.jsx)("div",{className:(0,l.cn)("grid place-items-center",{"w-full lg:w-2/3 h-80 lg:h-[63vh] my-5 lg:my-0":"glass"===r,"w-full xl:h-full lg:h-2/3 h-60 xl:max-w-2xl lg:max-w-xl rounded-full overflow-hidden":"flower"===r}),ref:t,children:!w&&(0,n.jsx)("div",{className:"w-16 h-16 border-t-4 border-blue-500 border-solid rounded-full animate-spin"})})}}}]);
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.