{"version":3,"file":"Perspective_Space.B0cfKVw6.mjs","names":["useRef","useState","useMemo"],"sources":["https:/framerusercontent.com/modules/gzeR646IIxKXzF6gOYZ9/8tkjSohUzaYaBctCDcVb/Perspective_Space.js"],"sourcesContent":["import{jsx as _jsx,jsxs as _jsxs}from\"react/jsx-runtime\";import{addPropertyControls,ControlType}from\"framer\";import{useRef,useEffect,useLayoutEffect,useMemo,useState}from\"react\";// --- Static Noise Texture ---\nconst getStaticNoiseTexture=(()=>{let _cache=null;return()=>{if(_cache)return _cache;if(typeof document===\"undefined\")return\"\";const size=128;const canvas=document.createElement(\"canvas\");canvas.width=size;canvas.height=size;const ctx=canvas.getContext(\"2d\");if(!ctx)return\"\";const imgData=ctx.createImageData(size,size);const d=imgData.data;for(let i=0;i<d.length;i+=4){const v=Math.random()*255;d[i]=d[i+1]=d[i+2]=v;d[i+3]=v*.15;}ctx.putImageData(imgData,0,0);_cache=canvas.toDataURL(\"image/png\");return _cache;};})();export default function PanoramaWorld({image={},edit={},frame={},lens={},vignette={},noise={},interaction={},width=\"100%\",height=\"100%\",style}){// --- Image ---\nconst{imageUrl,imagePosition=\"center center\"}=image;// --- Edit ---\nconst{dehazeFade=0,sharpness=0,brightness=1,saturation=1,contrast=1,clarity=0,highlights=0,shadows=0,warmth=0}=edit;// --- Frame ---\nconst{borderThickness=12,frameColor=\"#050505\",symmetricBend=.3}=frame;// --- Lens ---\nconst{fov=60}=lens;// --- Vignette ---\nconst{vignetteEnabled=true,vignetteIntensity=.8,vignetteColor=\"#000000\"}=vignette;// --- Noise ---\nconst{scanlineIntensity=.08,noiseIntensity=.15,flickerIntensity=.03}=noise;// --- Interaction ---\nconst{sensitivity=.08,smoothing=.02}=interaction;const containerRef=useRef(null);const innerRef=useRef(null);const[dims,setDims]=useState({w:0,h:0,ready:false});const[isVisible,setIsVisible]=useState(false);const mouse=useRef({x:.5,y:.5});const current=useRef({x:.5,y:.5});const rafRef=useRef(0);const uid=useRef(`pano-${Math.random().toString(36).slice(2,8)}`).current;const sharpFilterId=`${uid}-sharp`;const imageScale=.5+fov/120*2;const noiseTexture=useMemo(()=>getStaticNoiseTexture(),[]);// 1. Lazy loading — only render the image once in viewport\nuseEffect(()=>{const el=containerRef.current;if(!el)return;if(!(\"IntersectionObserver\"in window)){setIsVisible(true);return;}const observer=new IntersectionObserver(([entry])=>{if(entry.isIntersecting){setIsVisible(true);observer.disconnect();}},{threshold:.01});observer.observe(el);return()=>observer.disconnect();},[]);// 2. Resize observer — pixel dims needed for SVG bezel path\nuseLayoutEffect(()=>{const el=containerRef.current;if(!el)return;const rect=el.getBoundingClientRect();setDims({w:rect.width,h:rect.height,ready:true});const ro=new ResizeObserver(entries=>{setDims({w:entries[0].contentRect.width,h:entries[0].contentRect.height,ready:true});});ro.observe(el);return()=>ro.disconnect();},[]);// 3. Mouse + touch tracking & RAF loop\nuseEffect(()=>{const onMouseMove=e=>{mouse.current={x:e.clientX/window.innerWidth,y:e.clientY/window.innerHeight};};const onTouchMove=e=>{const t=e.touches[0];mouse.current={x:t.clientX/window.innerWidth,y:t.clientY/window.innerHeight};};const onTouchStart=e=>{const t=e.touches[0];mouse.current={x:t.clientX/window.innerWidth,y:t.clientY/window.innerHeight};};window.addEventListener(\"mousemove\",onMouseMove);window.addEventListener(\"touchmove\",onTouchMove,{passive:true});window.addEventListener(\"touchstart\",onTouchStart,{passive:true});const tick=()=>{const s=Math.min(Math.max(smoothing,.01),.5);current.current.x+=(mouse.current.x-current.current.x)*s;current.current.y+=(mouse.current.y-current.current.y)*s;const offsetX=(current.current.x-.5)*sensitivity*100;const offsetY=(current.current.y-.5)*sensitivity*100;if(innerRef.current){innerRef.current.style.transform=`scale(${imageScale}) translate(${-offsetX}%, ${-offsetY}%)`;}rafRef.current=requestAnimationFrame(tick);};rafRef.current=requestAnimationFrame(tick);return()=>{cancelAnimationFrame(rafRef.current);window.removeEventListener(\"mousemove\",onMouseMove);window.removeEventListener(\"touchmove\",onTouchMove);window.removeEventListener(\"touchstart\",onTouchStart);};},[sensitivity,smoothing,imageScale]);// --- BEZEL PATH ---\nconst b=borderThickness;const bend=Math.max(0,symmetricBend*80);const c=b+bend;const{w,h}=dims;const bezelPath=`\n        M 0 0 L ${w} 0 L ${w} ${h} L 0 ${h} Z\n        M ${c} ${c}\n        Q ${w/2} ${b} ${w-c} ${c}\n        Q ${w-b} ${h/2} ${w-c} ${h-c}\n        Q ${w/2} ${h-b} ${c} ${h-c}\n        Q ${b} ${h/2} ${c} ${c}\n        Z\n    `;// --- IMAGE EDIT FILTER ---\n// Sharpening via SVG unsharp mask kernel: [0,-s,-0, -s, 1+4s, -s, 0, -s, 0]\nconst sk=sharpness*.6;const sharpenKernel=`0 -${sk} 0 -${sk} ${(1+4*sk).toFixed(4)} -${sk} 0 -${sk} 0`;const filterParts=[];filterParts.push(`brightness(${brightness})`);filterParts.push(`contrast(${contrast})`);filterParts.push(`saturate(${saturation})`);if(clarity>0)filterParts.push(`contrast(${1+clarity*.18})`);if(dehazeFade>0){filterParts.push(`contrast(${1+dehazeFade*.4})`);filterParts.push(`brightness(${1-dehazeFade*.08})`);}if(sharpness>0)filterParts.push(`url(#${sharpFilterId})`);const imageCssFilter=filterParts.join(\" \");// Noise animation\nconst crtKeyframes=`\n        @keyframes crtFlicker {\n            0% { opacity: 1; } 5% { opacity: 0.95; } 10% { opacity: 1; }\n            15% { opacity: 0.98; } 50% { opacity: 1; } 55% { opacity: 0.96; }\n            100% { opacity: 1; }\n        }\n    `;return /*#__PURE__*/_jsxs(\"div\",{ref:containerRef,style:{position:\"relative\",width,height,overflow:\"hidden\",background:\"transparent\",pointerEvents:\"none\",opacity:dims.ready?1:0,transition:\"opacity 0.1s ease-out\",...style},children:[/*#__PURE__*/_jsx(\"style\",{children:crtKeyframes}),sharpness>0&&/*#__PURE__*/_jsx(\"svg\",{style:{position:\"absolute\",width:0,height:0,pointerEvents:\"none\"},\"aria-hidden\":\"true\",children:/*#__PURE__*/_jsx(\"defs\",{children:/*#__PURE__*/_jsx(\"filter\",{id:sharpFilterId,colorInterpolationFilters:\"sRGB\",children:/*#__PURE__*/_jsx(\"feConvolveMatrix\",{order:\"3\",kernelMatrix:sharpenKernel,preserveAlpha:\"true\"})})})}),/*#__PURE__*/_jsxs(\"div\",{style:{position:\"absolute\",inset:borderThickness/2,perspective:\"900px\",overflow:\"hidden\"},children:[/*#__PURE__*/_jsx(\"div\",{ref:innerRef,style:{position:\"absolute\",inset:\"-25%\",transformOrigin:\"50% 50%\",willChange:\"transform\",filter:imageCssFilter||undefined,opacity:imageUrl?1:0,...isVisible&&imageUrl?{backgroundImage:`url(\"${imageUrl}\")`,backgroundSize:\"cover\",backgroundPosition:imagePosition}:{}}}),dehazeFade<0&&/*#__PURE__*/_jsx(\"div\",{style:{position:\"absolute\",inset:0,background:\"white\",opacity:Math.abs(dehazeFade)*.55,pointerEvents:\"none\"}}),warmth!==0&&/*#__PURE__*/_jsx(\"div\",{style:{position:\"absolute\",inset:0,background:warmth>0?\"#FF9500\":\"#1E90FF\",opacity:Math.abs(warmth)*.28,mixBlendMode:\"soft-light\",pointerEvents:\"none\"}}),highlights!==0&&/*#__PURE__*/_jsx(\"div\",{style:{position:\"absolute\",inset:0,background:highlights>0?\"white\":\"black\",opacity:Math.abs(highlights)*.2,mixBlendMode:highlights>0?\"screen\":\"multiply\",pointerEvents:\"none\"}}),shadows!==0&&/*#__PURE__*/_jsx(\"div\",{style:{position:\"absolute\",inset:0,background:shadows>0?\"#888888\":\"black\",opacity:Math.abs(shadows)*.28,mixBlendMode:shadows>0?\"screen\":\"multiply\",pointerEvents:\"none\"}}),/*#__PURE__*/_jsxs(\"div\",{style:{position:\"absolute\",inset:\"-10%\",pointerEvents:\"none\",animation:flickerIntensity>0?`crtFlicker ${1/flickerIntensity}s infinite step-end`:\"none\"},children:[/*#__PURE__*/_jsx(\"div\",{style:{position:\"absolute\",inset:0,opacity:noiseIntensity,backgroundImage:`url(${noiseTexture})`,backgroundSize:\"128px\",mixBlendMode:\"overlay\"}}),/*#__PURE__*/_jsx(\"div\",{style:{position:\"absolute\",inset:0,opacity:scanlineIntensity,background:\"repeating-linear-gradient(to bottom, transparent 0px, transparent 2px, rgba(0,0,0,0.8) 2px, rgba(0,0,0,0.8) 4px)\"}})]})]}),vignetteEnabled&&/*#__PURE__*/_jsx(\"div\",{style:{position:\"absolute\",inset:borderThickness/2,pointerEvents:\"none\",zIndex:10},children:/*#__PURE__*/_jsx(\"div\",{style:{position:\"absolute\",inset:0,opacity:vignetteIntensity,background:`radial-gradient(ellipse at 50% 50%, transparent 30%, ${vignetteColor} 100%)`}})}),/*#__PURE__*/_jsx(\"svg\",{style:{position:\"absolute\",inset:0,width:\"100%\",height:\"100%\",zIndex:20,pointerEvents:\"none\"},children:/*#__PURE__*/_jsx(\"path\",{d:bezelPath,fill:frameColor,fillRule:\"evenodd\"})})]});}addPropertyControls(PanoramaWorld,{image:{type:ControlType.Object,title:\"Image\",controls:{imageUrl:{type:ControlType.Image,title:\"Photo\"},imagePosition:{type:ControlType.Enum,title:\"Position\",options:[\"center center\",\"center top\",\"left top\",\"right top\",\"center bottom\",\"left bottom\",\"right bottom\"],optionTitles:[\"Center\",\"Top Center\",\"Top Left\",\"Top Right\",\"Bottom Center\",\"Bottom Left\",\"Bottom Right\"],defaultValue:\"center center\"}}},edit:{type:ControlType.Object,title:\"Image Editing\",controls:{dehazeFade:{type:ControlType.Number,title:\"Dehaze / Fade\",description:\"− fade  \\xb7  + dehaze\",min:-1,max:1,step:.01,defaultValue:0},sharpness:{type:ControlType.Number,title:\"Sharpening\",min:0,max:1,step:.01,defaultValue:0},brightness:{type:ControlType.Number,title:\"Brightness\",min:.5,max:1.5,step:.01,defaultValue:1},saturation:{type:ControlType.Number,title:\"Saturation\",min:0,max:2,step:.01,defaultValue:1},contrast:{type:ControlType.Number,title:\"Contrast\",min:.5,max:1.5,step:.01,defaultValue:1},clarity:{type:ControlType.Number,title:\"Clarity\",description:\"Midtone contrast\",min:0,max:1,step:.01,defaultValue:0},highlights:{type:ControlType.Number,title:\"Highlights\",min:-1,max:1,step:.01,defaultValue:0},shadows:{type:ControlType.Number,title:\"Shadows\",min:-1,max:1,step:.01,defaultValue:0},warmth:{type:ControlType.Number,title:\"Warmth\",description:\"− cool  \\xb7  + warm\",min:-1,max:1,step:.01,defaultValue:0}}},frame:{type:ControlType.Object,title:\"Frame\",controls:{borderThickness:{type:ControlType.Number,title:\"Width\",min:0,max:200,step:1,defaultValue:12},frameColor:{type:ControlType.Color,title:\"Color\",defaultValue:\"#050505\"},symmetricBend:{type:ControlType.Number,title:\"Symmetric Bend\",description:\"B\\xe9zier curve of the frame edges\",min:0,max:1.5,step:.1,defaultValue:.3}}},lens:{type:ControlType.Object,title:\"Lens\",controls:{fov:{type:ControlType.Number,title:\"Field of View\",min:0,max:120,step:1,defaultValue:60}}},vignette:{type:ControlType.Object,title:\"Vignette\",controls:{vignetteEnabled:{type:ControlType.Boolean,title:\"Enabled\",defaultValue:true,enabledTitle:\"On\",disabledTitle:\"Off\"},vignetteIntensity:{type:ControlType.Number,title:\"Intensity\",min:0,max:1,step:.01,defaultValue:.8,hidden(props){return!props.vignetteEnabled;}},vignetteColor:{type:ControlType.Color,title:\"Color\",defaultValue:\"#000000\",hidden(props){return!props.vignetteEnabled;}}}},noise:{type:ControlType.Object,title:\"Noise & CRT\",controls:{scanlineIntensity:{type:ControlType.Number,title:\"Scanlines\",min:0,max:.3,step:.01,defaultValue:.08},noiseIntensity:{type:ControlType.Number,title:\"Static Grain\",min:0,max:.5,step:.01,defaultValue:.15},flickerIntensity:{type:ControlType.Number,title:\"Flicker\",min:0,max:.2,step:.01,defaultValue:.03}}},interaction:{type:ControlType.Object,title:\"Interaction\",controls:{sensitivity:{type:ControlType.Number,title:\"Sensitivity\",min:0,max:1,step:.01,defaultValue:.08},smoothing:{type:ControlType.Number,title:\"Smoothing\",description:\"Lower = floatier\",min:.01,max:.3,step:.01,defaultValue:.02}}}});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"PanoramaWorld\",\"slots\":[],\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./Perspective_Space.map"],"mappings":"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"}