{"version":3,"file":"URL_Viewer.pMOMkbZl.mjs","names":["_define_property","i","THREE.BufferGeometry","THREE.BufferAttribute","useRef","useState","THREE.Scene","THREE.OrthographicCamera","THREE.WebGLRenderer","THREE.Vector3","p","THREE.CatmullRomCurve3","THREE.CanvasTexture","THREE.LinearFilter","THREE.ClampToEdgeWrapping","THREE.MeshBasicMaterial","THREE.DoubleSide","THREE.Mesh","useId","useState","useRef","u","useCallback","p","useMemo","_Fragment","h24","MiniClock","AnalogClock","i","IslandShell","useId","useMemo","useRef","u","useCallback","useState","_Fragment","FeatherIcon","CustomIcon","p","useRef","p","i","motion","useRef","THREE.Vector3","useState","THREE.Scene","THREE.AmbientLight","THREE.DirectionalLight","THREE.PerspectiveCamera","THREE.WebGLRenderer","THREE.CanvasTexture","THREE.LinearFilter","THREE.ClampToEdgeWrapping","THREE.PlaneGeometry","THREE.MeshStandardMaterial","THREE.DoubleSide","THREE.Mesh","THREE.MeshBasicMaterial","THREE.Raycaster","THREE.Vector2","THREE.Plane","p","gsap","useRef","useState","_Fragment","useRef","i","u","useRef","useCallback","useState"],"sources":["https:/framerusercontent.com/modules/c6L0pH8amlbbUIko7USm/xOzdNeViPk43qtlYmJl6/ContactPaper.js","https:/framerusercontent.com/modules/IANMzXuuT4B0bFJ1x8VN/CS2so3lZbUIfAj67gkf7/DynamicIslandClock.js","https:/framerusercontent.com/modules/KY0Zy4ZJVf3qOhPAkoa8/6646Tejb7wkabF2uG9xC/GlassButton.js","https:/framerusercontent.com/modules/cMdSptgYgsgsRQU7yFC8/p8WmnACYT1rPa0kD9oG5/Gradient_Scroll_Transition.js","https:/framerusercontent.com/modules/LZPIy4MumsU2D4d16pOl/4xDWxZ4q2AJWaG8DsDgF/Receipt_3d.js","https:/framerusercontent.com/modules/MNcLIkhef7LdDOd921nd/65sEi9cBv26fVmBuOTTG/F9DvDM83Y.js","https:/framerusercontent.com/modules/CmnxyxmSBakzeSNZ1meB/DT5cLaqpNbqGE6JOD0ic/Add_link.js","https:/framerusercontent.com/modules/nzKbarta2yfVEic0GCcH/YGrLsYGWpjOqCjBjpY7u/Directional_Text.js","https:/framerusercontent.com/modules/Gtd65WjnbZA0BlJxJ3J6/dW8PEnMARWuKW77Qc524/HideScrollbar.js","https:/framerusercontent.com/modules/zftvE0eWxrk3oNatdsn0/Wq7gnBXTElm9t2oKUeD3/Text_Left_Right.js","https:/framerusercontent.com/modules/3t66LfzBywbZTw9SSVT5/AkOGJrhvJqwZ4wOvwF3j/URL_Viewer.js"],"sourcesContent":["function _define_property(obj,key,value){if(key in obj){Object.defineProperty(obj,key,{value:value,enumerable:true,configurable:true,writable:true});}else{obj[key]=value;}return obj;}import{jsx as _jsx,jsxs as _jsxs}from\"react/jsx-runtime\";import{useEffect,useRef,useState}from\"react\";import*as THREE from\"three\";import{addPropertyControls,ControlType}from\"framer\";// ─── Icon Drawing ────────────────────────────────────────────────────────────\nfunction drawIcon(ctx,platform,size){const s=size*.38;ctx.fillStyle=\"#1a1a1a\";ctx.strokeStyle=\"#1a1a1a\";ctx.lineCap=\"round\";ctx.lineJoin=\"round\";switch(platform){case\"x\":{ctx.lineWidth=size*.12;ctx.beginPath();ctx.moveTo(-s*.6,-s*.6);ctx.lineTo(s*.6,s*.6);ctx.stroke();ctx.beginPath();ctx.moveTo(s*.6,-s*.6);ctx.lineTo(-s*.6,s*.6);ctx.stroke();break;}case\"twitter\":{ctx.lineWidth=size*.08;ctx.beginPath();ctx.moveTo(-s*.8,s*.1);ctx.quadraticCurveTo(-s*.2,-s*.9,s*.5,-s*.5);ctx.quadraticCurveTo(s*.8,-s*.2,s*.8,s*.3);ctx.quadraticCurveTo(s*.4,s*.1,0,s*.4);ctx.quadraticCurveTo(-s*.4,s*.6,-s*.8,s*.1);ctx.fill();break;}case\"threads\":{ctx.lineWidth=size*.1;ctx.beginPath();ctx.arc(0,0,s*.4,Math.PI*.05,Math.PI*1.5);ctx.arc(0,0,s*.75,Math.PI*1.5,Math.PI*.5,true);ctx.stroke();ctx.beginPath();ctx.moveTo(s*.4,-s*.4);ctx.lineTo(s*.4,s*.2);ctx.stroke();break;}case\"instagram\":{ctx.lineWidth=size*.08;const hs=s*.78;const r=hs*.32;ctx.beginPath();ctx.moveTo(-hs+r,-hs);ctx.arcTo(hs,-hs,hs,hs,r);ctx.arcTo(hs,hs,-hs,hs,r);ctx.arcTo(-hs,hs,-hs,-hs,r);ctx.arcTo(-hs,-hs,hs,-hs,r);ctx.closePath();ctx.stroke();ctx.beginPath();ctx.arc(0,0,s*.35,0,Math.PI*2);ctx.stroke();ctx.beginPath();ctx.arc(s*.48,-s*.48,s*.09,0,Math.PI*2);ctx.fill();break;}case\"github\":{ctx.beginPath();ctx.arc(0,0,s*.7,0,Math.PI*2);ctx.fill();ctx.fillStyle=\"#fff\";ctx.beginPath();ctx.arc(-s*.22,-s*.12,s*.14,0,Math.PI*2);ctx.fill();ctx.beginPath();ctx.arc(s*.22,-s*.12,s*.14,0,Math.PI*2);ctx.fill();break;}case\"linkedin\":{ctx.lineWidth=size*.08;const hs=s*.75;const r=hs*.15;ctx.beginPath();ctx.moveTo(-hs+r,-hs);ctx.arcTo(hs,-hs,hs,hs,r);ctx.arcTo(hs,hs,-hs,hs,r);ctx.arcTo(-hs,hs,-hs,-hs,r);ctx.arcTo(-hs,-hs,hs,-hs,r);ctx.closePath();ctx.stroke();ctx.font=`bold ${s*.95}px Arial, sans-serif`;ctx.textAlign=\"center\";ctx.textBaseline=\"middle\";ctx.fillText(\"in\",0,s*.06);break;}case\"dribbble\":{ctx.lineWidth=size*.08;ctx.beginPath();ctx.arc(0,0,s*.7,0,Math.PI*2);ctx.stroke();ctx.beginPath();ctx.moveTo(-s*.7,s*.12);ctx.quadraticCurveTo(0,-s*.45,s*.7,s*.12);ctx.stroke();break;}case\"codepen\":{ctx.lineWidth=size*.06;const h=s*.65;ctx.beginPath();ctx.moveTo(0,-h);ctx.lineTo(h,0);ctx.lineTo(0,h);ctx.lineTo(-h,0);ctx.closePath();ctx.stroke();ctx.beginPath();ctx.moveTo(0,-h);ctx.lineTo(0,h);ctx.moveTo(-h,0);ctx.lineTo(h,0);ctx.stroke();break;}case\"email\":{ctx.lineWidth=size*.07;const hs=s*.75;const vs=s*.5;ctx.strokeRect(-hs,-vs,hs*2,vs*2);ctx.beginPath();ctx.moveTo(-hs,-vs);ctx.lineTo(0,vs*.1);ctx.lineTo(hs,-vs);ctx.stroke();break;}case\"youtube\":{ctx.lineWidth=size*.07;const hs=s*.8;const vs=s*.55;const r=s*.18;ctx.beginPath();ctx.moveTo(-hs+r,-vs);ctx.arcTo(hs,-vs,hs,vs,r);ctx.arcTo(hs,vs,-hs,vs,r);ctx.arcTo(-hs,vs,-hs,-vs,r);ctx.arcTo(-hs,-vs,hs,-vs,r);ctx.closePath();ctx.stroke();ctx.beginPath();ctx.moveTo(-s*.2,-s*.32);ctx.lineTo(s*.35,0);ctx.lineTo(-s*.2,s*.32);ctx.closePath();ctx.fill();break;}case\"tiktok\":{ctx.lineWidth=size*.08;ctx.beginPath();ctx.moveTo(s*.15,-s*.75);ctx.lineTo(s*.15,s*.25);ctx.stroke();ctx.beginPath();ctx.arc(-s*.05,s*.42,s*.25,0,Math.PI*2);ctx.stroke();ctx.beginPath();ctx.moveTo(s*.15,-s*.75);ctx.quadraticCurveTo(s*.6,-s*.55,s*.55,-s*.3);ctx.stroke();break;}default:{ctx.font=`bold ${s*1.3}px Arial, sans-serif`;ctx.textAlign=\"center\";ctx.textBaseline=\"middle\";ctx.fillText(platform.charAt(0).toUpperCase(),0,0);}}}// ─── Strip Texture ───────────────────────────────────────────────────────────\nfunction drawStripTexture(c,link,w,h,index,paperSettings,linkFontSize,customImg){const fontSize=linkFontSize;const scale=fontSize>24?3:2;const cw=Math.round(w*scale);const ch=Math.round(h*scale);c.width=cw;c.height=ch;const ctx=c.getContext(\"2d\");ctx.scale(scale,scale);ctx.clearRect(0,0,w,h);// Flip the entire canvas horizontally to counter the 3D mirrored mapping\nctx.translate(w,0);ctx.scale(-1,1);// Apply shading gradient to ALL strips\nconst grad=ctx.createLinearGradient(0,0,w,0);grad.addColorStop(0,paperSettings.color);grad.addColorStop(.6,paperSettings.color);grad.addColorStop(1,paperSettings.shade);ctx.fillStyle=grad;ctx.fillRect(0,0,w,h);// Apply top drop-shadow gradient to ALL strips\nconst topGrad=ctx.createLinearGradient(0,0,0,h*.12);topGrad.addColorStop(0,\"rgba(0,0,0,0.15)\");topGrad.addColorStop(1,\"rgba(0,0,0,0)\");ctx.fillStyle=topGrad;ctx.fillRect(0,0,w,h*.12);// Dashed perforation line at top\nctx.strokeStyle=\"#808080\";ctx.setLineDash([4,3]);ctx.lineWidth=1;ctx.beginPath();ctx.moveTo(0,.5);ctx.lineTo(w,.5);ctx.stroke();ctx.setLineDash([]);// Right edge shadow (swapped to left side due to the canvas flip)\nconst edgeGrad=ctx.createLinearGradient(0,0,3,0);edgeGrad.addColorStop(0,\"rgba(0,0,0,0.15)\");edgeGrad.addColorStop(1,\"rgba(0,0,0,0)\");ctx.fillStyle=edgeGrad;ctx.fillRect(0,0,3,h);const centerX=w/2;// Distance from the top of the strip to the logo\nconst startY=64;const iconSize=w*.42;// 1. Draw Icon\nctx.save();ctx.translate(centerX,startY+iconSize/2);// Counter-flip the icon so it isn't backwards\nctx.scale(-1,1);ctx.rotate((link.rotate||0)*(Math.PI/180));if(link.useCustomLogo&&customImg){ctx.drawImage(customImg,-iconSize/2,-iconSize/2,iconSize,iconSize);}else if(!link.useCustomLogo){drawIcon(ctx,link.platform,iconSize);}ctx.restore();// 2. Draw Text (Placed below the icon, reading downwards)\nctx.save();ctx.translate(centerX,startY+iconSize+20);// Counter-flip and rotate to read correctly top-to-bottom\nctx.scale(-1,1);ctx.rotate(Math.PI/2);ctx.font=`${fontSize}px sans-serif`;ctx.fillStyle=paperSettings.linkColor;ctx.textAlign=\"left\";ctx.textBaseline=\"middle\";ctx.fillText(link.username,0,0);// Underline\nconst tw=ctx.measureText(link.username).width;ctx.setLineDash([3,2]);ctx.strokeStyle=paperSettings.linkColor;ctx.lineWidth=1;ctx.beginPath();ctx.moveTo(0,fontSize*.6);ctx.lineTo(tw,fontSize*.6);ctx.stroke();ctx.restore();if(paperSettings.noise>0){const strength=paperSettings.noise/100;ctx.setTransform(1,0,0,1,0,0);const imgData=ctx.getImageData(0,0,cw,ch);const d=imgData.data;for(let i=0;i<d.length;i+=4){const n=(Math.random()-.5)*40*strength;d[i]=Math.min(255,Math.max(0,d[i]+n));d[i+1]=Math.min(255,Math.max(0,d[i+1]+n));d[i+2]=Math.min(255,Math.max(0,d[i+2]+n));}ctx.putImageData(imgData,0,0);}}class RibbonChain{update(gravity,damping,dt=1){const maxV=15;for(let i=0;i<this.numPts;i++){const p=this.points[i];if(p.pinned)continue;let vx=(p.x-p.oldX)*damping;let vy=(p.y-p.oldY)*damping;const spd=Math.sqrt(vx*vx+vy*vy);if(spd>maxV){vx=vx/spd*maxV;vy=vy/spd*maxV;}p.oldX=p.x;p.oldY=p.y;p.x+=vx;p.y+=vy+gravity*dt*dt;}for(let iter=0;iter<12;iter++){for(let i=0;i<this.numPts-1;i++){const a=this.points[i],b=this.points[i+1];const dx=b.x-a.x,dy=b.y-a.y;const dist=Math.sqrt(dx*dx+dy*dy)||.001;const diff=(this.segLen-dist)/dist*.5;if(!a.pinned){a.x-=dx*diff;a.y-=dy*diff;}if(!b.pinned){b.x+=dx*diff;b.y+=dy*diff;}}for(let i=0;i<this.numPts-2;i++){const a=this.points[i],b=this.points[i+2];const dx=b.x-a.x,dy=b.y-a.y;const dist=Math.sqrt(dx*dx+dy*dy)||.001;const rest=this.segLen*2;const diff=(rest-dist)/dist*.4;if(!a.pinned){a.x-=dx*diff;a.y-=dy*diff;}if(!b.pinned){b.x+=dx*diff;b.y+=dy*diff;}}}}applyForce(mx,my,pmx,pmy,radius,strength){for(const p of this.points){if(p.pinned)continue;const dx=mx-p.x,dy=my-p.y;const dist=Math.sqrt(dx*dx+dy*dy);if(dist<radius){const f=(1-dist/radius)*strength;p.x+=(mx-pmx)*f;p.y+=(my-pmy)*f;}}}constructor(topX,topY,length,numPts,skewDeg=0){_define_property(this,\"points\",[]);_define_property(this,\"numPts\",void 0);_define_property(this,\"segLen\",void 0);this.numPts=Math.max(4,numPts);this.segLen=length/(this.numPts-1);const skewTan=Math.tan(skewDeg*Math.PI/180);for(let i=0;i<this.numPts;i++){const y=topY+i*this.segLen;const x=topX+i*this.segLen*skewTan;this.points.push({x,y,oldX:x,oldY:y,pinned:i<2});}}}// ─── Ribbon Geometry (Three.js) ──────────────────────────────────────────────\nconst CURVE_SAMPLES=48;const _pt=new THREE.Vector3;const _tn=new THREE.Vector3;function makeRibbonGeo(){const vc=(CURVE_SAMPLES+1)*2;const pos=new Float32Array(vc*3);const uv=new Float32Array(vc*2);const idx=[];for(let i=0;i<CURVE_SAMPLES;i++){const a=i*2,b=a+1,c=a+2,d=a+3;idx.push(a,c,b,b,c,d);}const g=new THREE.BufferGeometry;g.setAttribute(\"position\",new THREE.BufferAttribute(pos,3));g.setAttribute(\"uv\",new THREE.BufferAttribute(uv,2));g.setIndex(idx);return g;}function syncRibbon(chain,hw,geo,v3,curve){for(let i=0;i<chain.numPts;i++){v3[i].set(chain.points[i].x,-chain.points[i].y,0);}curve.updateArcLengths();const posAttr=geo.attributes.position;const uvAttr=geo.attributes.uv;for(let i=0;i<=CURVE_SAMPLES;i++){const t=i/CURVE_SAMPLES;curve.getPointAt(t,_pt);curve.getTangentAt(t,_tn);if(_tn.lengthSq()<1e-4)_tn.set(0,-1,0);const nx=-_tn.y,ny=_tn.x;const len=Math.sqrt(nx*nx+ny*ny)||1;const ux=nx/len*hw;const uy=ny/len*hw;const li=i*2,ri=li+1;posAttr.setXYZ(li,_pt.x-ux,_pt.y-uy,0);posAttr.setXYZ(ri,_pt.x+ux,_pt.y+uy,0);uvAttr.setXY(li,0,1-t);uvAttr.setXY(ri,1,1-t);}posAttr.needsUpdate=true;uvAttr.needsUpdate=true;}// ─── Component ───────────────────────────────────────────────────────────────\nexport default function ContactCard({componentScale=1,overallWidth=400,overallHeight=350,headingFont,subtitleFont,linkFontSize=20,heading=\"contact me\",subtitle=\"I look forward to hearing from you!\",paper={color:\"#eff8fe\",shade:\"#d3d3d3\",textColor:\"#333333\",linkColor:\"#3366aa\",noise:18,shadowOpacity:.12},chainPoints=10,damping=.985,gravity=.25,mouseRadius=60,mouseStrength=.35,stripRepulsion=.5,parallax=true,parallaxStrength=10,links=[{platform:\"x\",username:\"x.com/j1_jo\",url:\"https://x.com/j1_jo\",rotate:0,useCustomLogo:false},{platform:\"threads\",username:\"threads.net/@jijo.fyi\",url:\"https://threads.net/@jijo.fyi\",rotate:0,useCustomLogo:false},{platform:\"linkedin\",username:\"linkedin.com/in/ji-jo\",url:\"https://linkedin.com/in/ji-jo\",rotate:0,useCustomLogo:false},{platform:\"email\",username:\"livemaitra@gmail.com\",url:\"mailto:livemaitra@gmail.com\",rotate:0,useCustomLogo:false}]}){const containerRef=useRef(null);const cardRef=useRef(null);const mouseRef=useRef({x:0,y:0,px:0,py:0,down:false,sx:0,sy:0});const[tilt,setTilt]=useState({rx:0,ry:0});const handleParallaxMove=e=>{if(!parallax)return;const rect=e.currentTarget.getBoundingClientRect();const cx=(e.clientX-rect.left)/rect.width-.5;const cy=(e.clientY-rect.top)/rect.height-.5;setTilt({rx:cy*-parallaxStrength,ry:cx*parallaxStrength});};const handleParallaxLeave=()=>{setTilt({rx:0,ry:0});};useEffect(()=>{const el=containerRef.current;if(!el||!links?.length)return;let dead=false;const dpr=Math.min(window.devicePixelRatio||1,2);const cw=el.clientWidth||overallWidth;const ch=el.clientHeight||overallHeight-60;const bleed=400;const scene=new THREE.Scene;const cam=new THREE.OrthographicCamera(-bleed,cw+bleed,bleed,-(ch+bleed),-10,10);cam.position.z=5;const renderer=new THREE.WebGLRenderer({antialias:true,alpha:true});renderer.setPixelRatio(dpr);renderer.setSize(cw+bleed*2,ch+bleed*2);renderer.setClearColor(0,0);const cvs=renderer.domElement;cvs.style.position=\"absolute\";cvs.style.left=`${-bleed}px`;cvs.style.top=`${-bleed}px`;cvs.style.touchAction=\"none\";cvs.style.cursor=\"grab\";el.appendChild(cvs);const n=links.length;const gap=cw*.015;const sw=(cw-gap*(n-1))/n;const sh=ch+50;const hw=sw/2;const ty=-30;const skews=[0,-3,0,-4,2,0,0,0];const chains=[];const geos=[];const v3s=[];const curveObjs=[];const disposables=[];for(let i=0;i<n;i++){const link=links[i];const cx=i*(sw+gap)+hw;const chain=new RibbonChain(cx,ty,sh,chainPoints,skews[i]||0);chains.push(chain);const v3=chain.points.map(p=>new THREE.Vector3(p.x,-p.y,0));v3s.push(v3);const curve=new THREE.CatmullRomCurve3(v3,false,\"catmullrom\",.5);curveObjs.push(curve);const tc=document.createElement(\"canvas\");const tex=new THREE.CanvasTexture(tc);tex.minFilter=THREE.LinearFilter;tex.magFilter=THREE.LinearFilter;tex.wrapS=THREE.ClampToEdgeWrapping;tex.wrapT=THREE.ClampToEdgeWrapping;disposables.push(tex);const renderTex=customImg=>{if(dead)return;drawStripTexture(tc,link,sw,sh,i,paper,linkFontSize,customImg);tex.needsUpdate=true;};if(link.useCustomLogo&&link.customLogo){renderTex();const img=new Image;img.crossOrigin=\"anonymous\";img.src=link.customLogo;img.onload=()=>renderTex(img);}else{renderTex();}const geo=makeRibbonGeo();geos.push(geo);disposables.push(geo);const sMat=new THREE.MeshBasicMaterial({color:0,transparent:true,opacity:paper.shadowOpacity??.12,side:THREE.DoubleSide,depthWrite:false});const sMesh=new THREE.Mesh(geo,sMat);sMesh.position.set(3,-4,0);sMesh.renderOrder=(n-i)*2-1;scene.add(sMesh);disposables.push(sMat);const mat=new THREE.MeshBasicMaterial({map:tex,side:THREE.DoubleSide,transparent:true});const mesh=new THREE.Mesh(geo,mat);mesh.renderOrder=(n-i)*2;scene.add(mesh);disposables.push(mat);syncRibbon(chain,hw,geo,v3,curve);}const hitTest=(x,y)=>{let bestIdx=-1;let bestDist=Infinity;for(let i=0;i<n;i++){const chain=chains[i];const startPt=Math.floor(chainPoints*.15);const endPt=Math.floor(chainPoints*.8);for(let p=startPt;p<endPt;p++){const pt=chain.points[p];const dx=pt.x-x;const dy=pt.y-y;const dist=Math.sqrt(dx*dx+dy*dy);if(dist<hw&&dist<bestDist){bestDist=dist;bestIdx=i;}}}return bestIdx;};const pos=e=>{const r=el.getBoundingClientRect();return{x:e.clientX-r.left,y:e.clientY-r.top};};const onDown=(x,y)=>{mouseRef.current={x,y,px:x,py:y,down:true,sx:x,sy:y};cvs.style.cursor=\"grabbing\";};const onMove=(x,y)=>{const m=mouseRef.current;m.px=m.x;m.py=m.y;m.x=x;m.y=y;const str=m.down?mouseStrength:mouseStrength*.08;for(const c of chains)c.applyForce(x,y,m.px,m.py,mouseRadius,str);if(!m.down)cvs.style.cursor=hitTest(x,y)>=0?\"pointer\":\"default\";};const onUp=()=>{const m=mouseRef.current;if(m.down){const d=Math.sqrt((m.x-m.sx)**2+(m.y-m.sy)**2);if(d<6){const idx=hitTest(m.x,m.y);if(idx>=0&&links[idx]?.url)window.open(links[idx].url,\"_blank\",\"noopener\");}}m.down=false;cvs.style.cursor=\"default\";};const onMD=e=>{const p=pos(e);onDown(p.x,p.y);};const onMM=e=>{const p=pos(e);onMove(p.x,p.y);};const onMU=()=>onUp();const onML=()=>{mouseRef.current.down=false;cvs.style.cursor=\"default\";};const onTS=e=>{e.preventDefault();const p=pos(e.touches[0]);onDown(p.x,p.y);};const onTM=e=>{e.preventDefault();const p=pos(e.touches[0]);onMove(p.x,p.y);};const onTE=()=>onUp();cvs.addEventListener(\"mousedown\",onMD);cvs.addEventListener(\"mousemove\",onMM);cvs.addEventListener(\"mouseup\",onMU);cvs.addEventListener(\"mouseleave\",onML);cvs.addEventListener(\"touchstart\",onTS,{passive:false});cvs.addEventListener(\"touchmove\",onTM,{passive:false});cvs.addEventListener(\"touchend\",onTE);let raf=0;const subSteps=3;const loop=()=>{if(dead)return;if(mouseRef.current.down){const m=mouseRef.current;for(const c of chains)c.applyForce(m.x,m.y,m.px,m.py,mouseRadius,mouseStrength);}for(let s=0;s<subSteps;s++){for(let i=0;i<n;i++){chains[i].update(gravity,damping,1/subSteps);}for(let i=0;i<n-1;i++){for(let j=i+1;j<n;j++){for(let p=2;p<chainPoints;p++){const pA=chains[i].points[p];const pB=chains[j].points[p];const dx=pB.x-pA.x;const dy=pB.y-pA.y;const dist=Math.sqrt(dx*dx+dy*dy);const minSep=sw+gap*.5;if(dist<minSep&&dist>.001){const push=(minSep-dist)*stripRepulsion;const nx=dx/dist*push;const ny=dy/dist*push;pA.x-=nx;pA.y-=ny;pB.x+=nx;pB.y+=ny;}}}}}for(let i=0;i<n;i++){syncRibbon(chains[i],hw,geos[i],v3s[i],curveObjs[i]);}renderer.render(scene,cam);raf=requestAnimationFrame(loop);};raf=requestAnimationFrame(loop);const ro=new ResizeObserver(()=>{if(dead)return;const nw=el.clientWidth;const nh=el.clientHeight;renderer.setSize(nw+bleed*2,nh+bleed*2);cam.left=-bleed;cam.right=nw+bleed;cam.top=bleed;cam.bottom=-(nh+bleed);cam.updateProjectionMatrix();const newGap=nw*.015;const newSw=(nw-newGap*(n-1))/n;const newHw=newSw/2;chains.forEach((chain,i)=>{const cx=i*(newSw+newGap)+newHw;chain.points.forEach(pt=>{pt.restX=cx;});});});ro.observe(el);return()=>{dead=true;cancelAnimationFrame(raf);ro.disconnect();cvs.removeEventListener(\"mousedown\",onMD);cvs.removeEventListener(\"mousemove\",onMM);cvs.removeEventListener(\"mouseup\",onMU);cvs.removeEventListener(\"mouseleave\",onML);cvs.removeEventListener(\"touchstart\",onTS);cvs.removeEventListener(\"touchmove\",onTM);cvs.removeEventListener(\"touchend\",onTE);if(el.contains(cvs))el.removeChild(cvs);for(const d of disposables)d.dispose();renderer.dispose();};},[links,paper,chainPoints,linkFontSize,damping,gravity,mouseRadius,mouseStrength,stripRepulsion,overallWidth,overallHeight]);return /*#__PURE__*/_jsx(\"div\",{style:{width:\"100%\",height:\"100%\",display:\"flex\",justifyContent:\"center\",overflow:\"visible\"},children:/*#__PURE__*/_jsxs(\"div\",{ref:cardRef,onMouseMove:handleParallaxMove,onMouseLeave:handleParallaxLeave,style:{width:overallWidth,height:overallHeight,transform:parallax?`scale(${componentScale}) perspective(800px) rotateX(${tilt.rx}deg) rotateY(${tilt.ry}deg)`:`scale(${componentScale})`,transformOrigin:\"center center\",transition:\"transform 0.15s ease-out\",display:\"flex\",flexDirection:\"column\",overflow:\"visible\",willChange:parallax?\"transform\":\"auto\"},children:[/*#__PURE__*/_jsxs(\"div\",{style:{position:\"relative\",padding:\"15px 10px\",background:`linear-gradient(135deg, ${paper.color} 85%, ${paper.shade})`,boxShadow:\"0px 2px 8px rgba(0, 0, 0, 0.15)\",textAlign:\"center\",zIndex:10},children:[/*#__PURE__*/_jsx(\"div\",{style:{position:\"absolute\",left:5,top:5,width:10,height:10,borderRadius:\"50%\",background:\"#808080\"}}),/*#__PURE__*/_jsx(\"div\",{style:{position:\"absolute\",right:5,top:5,width:10,height:10,borderRadius:\"50%\",background:\"#808080\"}}),/*#__PURE__*/_jsx(\"h1\",{style:{fontFamily:headingFont?.fontFamily||\"'Courier New', monospace\",fontSize:headingFont?.fontSize||24,fontWeight:headingFont?.fontWeight||400,fontStyle:headingFont?.fontStyle||\"normal\",letterSpacing:headingFont?.letterSpacing||0,lineHeight:headingFont?.lineHeight||1.2,color:paper.textColor,margin:\"8px 0 4px\"},children:heading}),/*#__PURE__*/_jsx(\"p\",{style:{fontFamily:subtitleFont?.fontFamily||\"'Courier New', monospace\",fontSize:subtitleFont?.fontSize||14,fontWeight:subtitleFont?.fontWeight||400,fontStyle:subtitleFont?.fontStyle||\"normal\",letterSpacing:subtitleFont?.letterSpacing||0,lineHeight:subtitleFont?.lineHeight||1.4,color:paper.textColor,margin:\"0 0 8px\",opacity:.8},children:subtitle})]}),/*#__PURE__*/_jsx(\"div\",{ref:containerRef,style:{flex:1,minHeight:160,position:\"relative\",overflow:\"visible\",zIndex:1}})]})});}// ─── Framer Property Controls ────────────────────────────────────────────────\naddPropertyControls(ContactCard,{componentScale:{type:ControlType.Number,title:\"Scale\",defaultValue:1,min:.5,max:3,step:.1},overallWidth:{type:ControlType.Number,title:\"Overall Width\",defaultValue:400,min:340,max:800},overallHeight:{type:ControlType.Number,title:\"Overall Height\",defaultValue:350,min:340,max:800},headingFont:{type:ControlType.Font,title:\"Heading Font\",controls:\"extended\",defaultValue:{fontFamily:\"Inter\",fontSize:24,fontWeight:400,fontStyle:\"normal\",letterSpacing:0,lineHeight:1.2}},subtitleFont:{type:ControlType.Font,title:\"Subtitle Font\",controls:\"extended\",defaultValue:{fontFamily:\"Inter\",fontSize:14,fontWeight:400,fontStyle:\"normal\",letterSpacing:0,lineHeight:1.4}},linkFontSize:{type:ControlType.Number,title:\"Link Font Size\",defaultValue:20,min:12,max:40,step:1},heading:{type:ControlType.String,title:\"Heading\",defaultValue:\"contact me\"},subtitle:{type:ControlType.String,title:\"Subtitle\",defaultValue:\"I look forward to hearing from you!\"},paper:{type:ControlType.Object,title:\"Paper Settings\",controls:{color:{type:ControlType.Color,title:\"Paper Color\",defaultValue:\"#eff8fe\"},shade:{type:ControlType.Color,title:\"Paper Shade\",defaultValue:\"#d3d3d3\"},textColor:{type:ControlType.Color,title:\"Text Color\",defaultValue:\"#333333\"},linkColor:{type:ControlType.Color,title:\"Link Color\",defaultValue:\"#3366aa\"},noise:{type:ControlType.Number,title:\"Paper Noise\",defaultValue:18,min:0,max:60,step:1},shadowOpacity:{type:ControlType.Number,title:\"Shadow Opacity\",defaultValue:.12,min:0,max:.5,step:.01}},defaultValue:{color:\"#eff8fe\",shade:\"#d3d3d3\",textColor:\"#333333\",linkColor:\"#3366aa\",noise:18,shadowOpacity:.12}},chainPoints:{type:ControlType.Number,title:\"Physics Points\",defaultValue:10,min:4,max:20,step:1},damping:{type:ControlType.Number,title:\"Damping\",defaultValue:.985,min:.9,max:1,step:.005},gravity:{type:ControlType.Number,title:\"Gravity\",defaultValue:.25,min:0,max:1,step:.05},mouseRadius:{type:ControlType.Number,title:\"Touch Radius\",defaultValue:60,min:20,max:150,step:5},mouseStrength:{type:ControlType.Number,title:\"Touch Strength\",defaultValue:.35,min:.05,max:.8,step:.05},stripRepulsion:{type:ControlType.Number,title:\"Strip Repulsion\",defaultValue:.5,min:0,max:1,step:.05},parallax:{type:ControlType.Boolean,title:\"Parallax\",defaultValue:true},parallaxStrength:{type:ControlType.Number,title:\"Parallax Strength\",defaultValue:10,min:1,max:30,step:1,hidden:props=>!props.parallax},links:{type:ControlType.Array,title:\"Links\",maxCount:8,control:{type:ControlType.Object,controls:{platform:{type:ControlType.Enum,title:\"Platform\",options:[\"x\",\"instagram\",\"github\",\"linkedin\",\"dribbble\",\"codepen\",\"youtube\",\"tiktok\",\"email\",\"custom\"],optionTitles:[\"X\",\"Instagram\",\"GitHub\",\"LinkedIn\",\"Dribbble\",\"CodePen\",\"YouTube\",\"TikTok\",\"Email\",\"Custom\"],defaultValue:\"x\"},useCustomLogo:{type:ControlType.Boolean,title:\"Use Custom Logo\",defaultValue:false},customLogo:{type:ControlType.Image,title:\"Upload Logo\",hidden:props=>!props.useCustomLogo},rotate:{type:ControlType.Number,title:\"Rotate Logo\",defaultValue:0,min:-180,max:180,step:1},username:{type:ControlType.String,title:\"Username\",defaultValue:\"@username\"},url:{type:ControlType.String,title:\"URL\",defaultValue:\"https://\"}}},defaultValue:[{platform:\"x\",username:\"x.com/j1_jo\",url:\"https://x.com/j1_jo\",rotate:0,useCustomLogo:false},{platform:\"threads\",username:\"threads.net/@jijo.fyi\",url:\"https://threads.net/@jijo.fyi\",rotate:0,useCustomLogo:false},{platform:\"linkedin\",username:\"linkedin.com/in/ji-jo\",url:\"https://linkedin.com/in/ji-jo\",rotate:0,useCustomLogo:false},{platform:\"email\",username:\"livemaitra@gmail.com\",url:\"mailto:livemaitra@gmail.com\",rotate:0,useCustomLogo:false}]}});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"ContactCard\",\"slots\":[],\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./ContactPaper.map","import{jsx as _jsx,jsxs as _jsxs,Fragment as _Fragment}from\"react/jsx-runtime\";import{useState,useEffect,useRef,useCallback,useId,useMemo,memo}from\"react\";import{createPortal}from\"react-dom\";import{motion,AnimatePresence}from\"framer-motion\";import{addPropertyControls,ControlType,useIsStaticRenderer}from\"framer\";// ── Geometry constants ─────────────────────────────────────────────────────────\nconst PILL_H=36;const PILL_R=18;const EXP_W=280;const EXP_R=26;// PADDING — adjust here, comments in IslandShell reference these\nconst PILL_PAD_V=6// pill top & bottom (px)\n;const PILL_PAD_H=8// pill left & right  (px)\n;const EXP_PAD=16// expanded panel, all sides (px)\n;const MAP_SIZE=EXP_W-EXP_PAD*2// square map: 256 × 256\n;const MORPH_SPRING={type:\"spring\",stiffness:320,damping:32,mass:.85};const LAYOUT_SPRING={type:\"spring\",stiffness:280,damping:26,mass:.9};const SEP_CHARS={none:\"\",bullet:\"\\xb7\",emdash:\"—\",dot:\"•\",slash:\"/\",pipe:\"|\"};// ── Timezone options ───────────────────────────────────────────────────────────\nconst TIMEZONE_OPTIONS=[\"Pacific/Honolulu\",\"America/Anchorage\",\"America/Los_Angeles\",\"America/Denver\",\"America/Chicago\",\"America/New_York\",\"America/Sao_Paulo\",\"Atlantic/Azores\",\"Europe/London\",\"Europe/Paris\",\"Europe/Berlin\",\"Africa/Lagos\",\"Europe/Moscow\",\"Asia/Dubai\",\"Asia/Karachi\",\"Asia/Kolkata\",\"Asia/Dhaka\",\"Asia/Bangkok\",\"Asia/Singapore\",\"Asia/Shanghai\",\"Asia/Makassar\",\"Asia/Tokyo\",\"Australia/Sydney\",\"Pacific/Auckland\"];const TIMEZONE_TITLES=[\"Honolulu (UTC−10)\",\"Anchorage (UTC−9)\",\"Los Angeles (UTC−8/−7)\",\"Denver (UTC−7/−6)\",\"Chicago (UTC−6/−5)\",\"New York (UTC−5/−4)\",\"S\\xe3o Paulo (UTC−3)\",\"Azores (UTC−1)\",\"London (UTC+0/+1)\",\"Paris (UTC+1/+2)\",\"Berlin (UTC+1/+2)\",\"Lagos (UTC+1)\",\"Moscow (UTC+3)\",\"Dubai (UTC+4)\",\"Karachi (UTC+5)\",\"Mumbai (UTC+5:30)\",\"Dhaka (UTC+6)\",\"Bangkok (UTC+7)\",\"Singapore (UTC+8)\",\"Shanghai (UTC+8)\",\"Bali (UTC+8)\",\"Tokyo (UTC+9)\",\"Sydney (UTC+10/+11)\",\"Auckland (UTC+12/+13)\"];// ── Time helpers ───────────────────────────────────────────────────────────────\nconst toRad=d=>d*Math.PI/180;// Returns a Date whose UTC methods equal the wall-clock time in `tz`.\n// Uses the \"sv\" locale trick: toLocaleString(\"sv\") reliably returns \"YYYY-MM-DD HH:MM:SS\".\n// Appending \"Z\" and re-parsing lets us extract h/m/s via getUTCHours etc.\nconst toTZDate=(date,tz)=>{const str=date.toLocaleString(\"sv\",{timeZone:tz})// \"2025-05-13 14:30:45\"\n;return new Date(str.replace(\" \",\"T\")+\"Z\");};const getTimePartsInTZ=(date,tz)=>{const safeTZ=tz||\"UTC\";// Primary: sv-locale trick — widely supported, avoids formatToParts quirks\ntry{const d=toTZDate(date,safeTZ);if(!isNaN(d.getTime())){const h24=d.getUTCHours();return{h24,h12:h24%12,m:d.getUTCMinutes(),s:d.getUTCSeconds()};}}catch{}// Secondary: Intl.DateTimeFormat formatToParts\ntry{const parts=new Intl.DateTimeFormat(\"en-US\",{hour:\"2-digit\",minute:\"2-digit\",second:\"2-digit\",hour12:false,timeZone:safeTZ}).formatToParts(date);const g=t=>parseInt(parts.find(x=>x.type===t)?.value??\"0\",10);const h24=g(\"hour\")%24;return{h24,h12:h24%12,m:g(\"minute\"),s:g(\"second\")};}catch{}// Final fallback: UTC — never tracks the device's local clock\nconst h24=date.getUTCHours();return{h24,h12:h24%12,m:date.getUTCMinutes(),s:date.getUTCSeconds()};};const toClockAngles=(h12,m,s)=>({secDeg:s*6,minDeg:m*6+s*.1,hourDeg:h12*30+m*.5});const fmtTimeInTZ=(date,tz)=>{const safeTZ=tz||\"UTC\";// Primary: sv-locale trick — extract h/m from the adjusted date, then format\ntry{const d=toTZDate(date,safeTZ);if(!isNaN(d.getTime())){return new Intl.DateTimeFormat(\"en-US\",{hour:\"numeric\",minute:\"2-digit\",hour12:true,timeZone:\"UTC\"}).format(d);}}catch{}// Secondary: direct Intl with target timezone\ntry{return new Intl.DateTimeFormat(\"en-US\",{hour:\"numeric\",minute:\"2-digit\",hour12:true,timeZone:safeTZ}).format(date);}catch{}// Final fallback: UTC\nreturn new Intl.DateTimeFormat(\"en-US\",{hour:\"numeric\",minute:\"2-digit\",hour12:true,timeZone:\"UTC\"}).format(date);};const fmtDateInTZ=(date,tz)=>{const safeTZ=tz||\"UTC\";// Primary: sv-locale trick\ntry{const d=toTZDate(date,safeTZ);if(!isNaN(d.getTime())){return new Intl.DateTimeFormat(\"en-US\",{month:\"short\",day:\"numeric\",timeZone:\"UTC\"}).format(d);}}catch{}// Secondary: direct Intl with target timezone\ntry{return new Intl.DateTimeFormat(\"en-US\",{month:\"short\",day:\"numeric\",timeZone:safeTZ}).format(date);}catch{}// Final fallback: UTC\nreturn new Intl.DateTimeFormat(\"en-US\",{month:\"short\",day:\"numeric\",timeZone:\"UTC\"}).format(date);};const splitTimeParts=full=>{const m=full.match(/^([\\d:]+)\\s*(AM|PM)$/i);return m?{time:m[1],ampm:m[2].toUpperCase()}:{time:full,ampm:\"\"};};const extractCity=loc=>loc.replace(/^in\\s+/i,\"\").split(\",\")[0].trim();// ── Map: OpenStreetMap tiles via MapLibre, popup anchored RIGHT, 6px pad ───────\nconst makeMapSrcdoc=(lat,lng,zoom,popupText,markerColor,interactive,popupOffsetX,popupOffsetY)=>{const safeText=JSON.stringify(popupText);// popup: anchor:'left' = tip on left, body opens RIGHT\n// offset [popupOffsetX, popupOffsetY]: X shifts right from marker, Y shifts up (negative = up)\nreturn`<!DOCTYPE html><html><head><meta charset=\"utf-8\"><style>*{margin:0;padding:0}body,html,#map{width:100%;height:100%;overflow:hidden}.maplibregl-ctrl-attrib,.maplibregl-ctrl-logo,.maplibregl-ctrl-bottom-right{display:none!important}.maplibregl-popup-content{font-family:-apple-system,BlinkMacSystemFont,sans-serif;font-size:11px;padding:6px;border-radius:8px;box-shadow:0 2px 12px rgba(0,0,0,0.18);border:none;line-height:.1;white-space:nowrap}.maplibregl-popup-tip{display:none}</style><link rel=\"stylesheet\" href=\"https://unpkg.com/maplibre-gl@5.23.0/dist/maplibre-gl.css\"/><script src=\"https://unpkg.com/maplibre-gl@5.23.0/dist/maplibre-gl.js\"></script></head><body><div id=\"map\"></div><script>var map=new maplibregl.Map({container:'map',style:{version:8,sources:{osm:{type:'raster',tiles:['https://a.basemaps.cartocdn.com/rastertiles/voyager/{z}/{x}/{y}.png','https://b.basemaps.cartocdn.com/rastertiles/voyager/{z}/{x}/{y}.png','https://c.basemaps.cartocdn.com/rastertiles/voyager/{z}/{x}/{y}.png'],tileSize:256,attribution:''}},layers:[{id:'osm',type:'raster',source:'osm'}]},center:[${lng},${lat}],zoom:${zoom},interactive:${interactive},attributionControl:false});var popup=new maplibregl.Popup({anchor:'left',offset:[${popupOffsetX},${popupOffsetY}],closeButton:false,closeOnClick:false}).setText(${safeText});new maplibregl.Marker({color:'${markerColor}'}).setLngLat([${lng},${lat}]).setPopup(popup).addTo(map);map.on('load',function(){popup.setLngLat([${lng},${lat}]).addTo(map);});</script></body></html>`;};const MiniClock=/*#__PURE__*/memo(function MiniClock({hourDeg,minDeg,secDeg,handColor,secondHandColor}){const cx=13,cy=13;const pt=(deg,r)=>({x:cx+r*Math.sin(toRad(deg)),y:cy-r*Math.cos(toRad(deg))});// Original radii: hour=4.2, min=6, sec=7  →  +3 each → 7.2, 9, 10\nconst h=pt(hourDeg,7.2),m=pt(minDeg,9),s=pt(secDeg,10);const tail={x:cx-2.5*Math.sin(toRad(secDeg)),y:cy+2.5*Math.cos(toRad(secDeg))};return /*#__PURE__*/_jsxs(\"svg\",{width:\"26\",height:\"26\",viewBox:\"0 0 26 26\",style:{flexShrink:0},children:[/*#__PURE__*/_jsx(\"line\",{x1:cx,y1:cy,x2:h.x,y2:h.y,stroke:handColor,strokeWidth:\"2.2\",strokeLinecap:\"round\"}),/*#__PURE__*/_jsx(\"line\",{x1:cx,y1:cy,x2:m.x,y2:m.y,stroke:handColor,strokeWidth:\"1.5\",strokeLinecap:\"round\"}),/*#__PURE__*/_jsx(\"line\",{x1:tail.x,y1:tail.y,x2:s.x,y2:s.y,stroke:secondHandColor,strokeWidth:\"1\",strokeLinecap:\"round\"}),/*#__PURE__*/_jsx(\"circle\",{cx:cx,cy:cy,r:\"1.8\",fill:secondHandColor})]});});const AnalogClock=/*#__PURE__*/memo(function AnalogClock({hourDeg,minDeg,secDeg,handColor,secondHandColor,dialBgColor}){const size=200,cx=size/2,cy=size/2,r=size/2-10;const pt=(deg,radius)=>({x:cx+radius*Math.sin(toRad(deg)),y:cy-radius*Math.cos(toRad(deg))});const h=pt(hourDeg,r*.52),m=pt(minDeg,r*.72),s=pt(secDeg,r*.84);const tail={x:cx-r*.18*Math.sin(toRad(secDeg)),y:cy+r*.18*Math.cos(toRad(secDeg))};return /*#__PURE__*/_jsxs(\"svg\",{width:size,height:size,viewBox:`0 0 ${size} ${size}`,children:[/*#__PURE__*/_jsx(\"circle\",{cx:cx,cy:cy,r:r,fill:dialBgColor}),/*#__PURE__*/_jsx(\"circle\",{cx:cx,cy:cy,r:r,fill:\"none\",stroke:\"rgba(0,0,0,0.07)\",strokeWidth:\"1.5\"}),Array.from({length:60},(_,i)=>{const a=i*6,isHour=i%5===0,isQ=i%15===0;const outer=r-2,inner=r-(isQ?12:isHour?8:4);const o=pt(a,outer),inn=pt(a,inner);return /*#__PURE__*/_jsx(\"line\",{x1:o.x,y1:o.y,x2:inn.x,y2:inn.y,stroke:isQ?\"rgba(0,0,0,0.4)\":isHour?\"rgba(0,0,0,0.22)\":\"rgba(0,0,0,0.1)\",strokeWidth:isQ?2.5:isHour?1.5:.8,strokeLinecap:\"round\"},i);}),/*#__PURE__*/_jsx(\"line\",{x1:cx,y1:cy,x2:h.x,y2:h.y,stroke:handColor,strokeWidth:\"4.5\",strokeLinecap:\"round\"}),/*#__PURE__*/_jsx(\"line\",{x1:cx,y1:cy,x2:m.x,y2:m.y,stroke:handColor,strokeWidth:\"2.8\",strokeLinecap:\"round\"}),/*#__PURE__*/_jsx(\"line\",{x1:tail.x,y1:tail.y,x2:s.x,y2:s.y,stroke:secondHandColor,strokeWidth:\"1.5\",strokeLinecap:\"round\"}),/*#__PURE__*/_jsx(\"circle\",{cx:cx,cy:cy,r:\"5.5\",fill:secondHandColor}),/*#__PURE__*/_jsx(\"circle\",{cx:cx,cy:cy,r:\"2.5\",fill:\"white\"})]});});const IslandShell=/*#__PURE__*/memo(function IslandShell(p){const morphW=p.isExpanded?EXP_W:p.pillW;const morphH=p.isExpanded?p.expH:PILL_H;const morphR=p.isExpanded?EXP_R:PILL_R;const sepChar=SEP_CHARS[p.separatorStyle]??\"\\xb7\";const ampmSize=Math.round(p.timeFontSize*.5);const g1=p.showPillDate;const g2=p.showPillTime||p.showPillClock;const g3=p.showPillLocation&&p.hasLocation;return /*#__PURE__*/_jsxs(motion.div,{initial:{opacity:0,scale:.55,y:p.openUpward?16:-16},animate:{opacity:1,scale:1,y:0},transition:MORPH_SPRING,style:{position:\"relative\",...p.centerInner},children:[p.openUpward&&/*#__PURE__*/_jsx(motion.div,{animate:{width:morphW,height:morphH},transition:MORPH_SPRING,style:{visibility:\"hidden\",pointerEvents:\"none\"}}),/*#__PURE__*/_jsxs(motion.div,{onClick:p.isExpanded?p.onCollapse:p.onToggle,onMouseEnter:p.onMouseEnter,onMouseLeave:p.onMouseLeave,className:p.bgPropsClass||undefined,animate:{width:morphW,height:morphH,borderRadius:morphR},whileHover:!p.isExpanded?{scale:1.055}:undefined,whileTap:!p.isExpanded?{scale:.95}:undefined,transition:MORPH_SPRING,style:{...p.bgPropsStyle,cursor:\"pointer\",overflow:\"hidden\",position:p.openUpward?\"absolute\":\"relative\",bottom:p.openUpward?0:undefined},children:[/*#__PURE__*/_jsx(AnimatePresence,{children:!p.isExpanded&&/*#__PURE__*/_jsxs(motion.div,{initial:{opacity:0},animate:{opacity:1},exit:{opacity:0},transition:{duration:.15},style:{position:\"absolute\",inset:0,display:\"flex\",alignItems:\"center\",justifyContent:\"center\",padding:`${PILL_PAD_V}px ${PILL_PAD_H}px`,gap:6,overflow:\"hidden\"},children:[g1&&/*#__PURE__*/_jsx(\"span\",{style:{...p.pillFontStyle,whiteSpace:\"nowrap\"},children:p.dateStr}),g1&&(g2||g3)&&p.separatorStyle!==\"none\"&&/*#__PURE__*/_jsx(\"span\",{style:{fontSize:10,color:p.subtextColor,opacity:.4,flexShrink:0},children:sepChar}),p.showPillTime&&/*#__PURE__*/_jsx(\"span\",{style:{...p.pillFontStyle,whiteSpace:\"nowrap\"},children:p.fullTimeStr}),p.showPillClock&&/*#__PURE__*/_jsx(MiniClock,{hourDeg:p.hourDeg,minDeg:p.minDeg,secDeg:p.secDeg,handColor:p.handColor,secondHandColor:p.secondHandColor}),g2&&g3&&p.separatorStyle!==\"none\"&&/*#__PURE__*/_jsx(\"span\",{style:{fontSize:10,color:p.subtextColor,opacity:.4,flexShrink:0},children:sepChar}),!g2&&g1&&g3&&p.separatorStyle!==\"none\"&&/*#__PURE__*/_jsx(\"span\",{style:{fontSize:10,color:p.subtextColor,opacity:.4,flexShrink:0},children:sepChar}),g3&&/*#__PURE__*/_jsx(\"span\",{style:{...p.pillFontStyle,fontWeight:400,color:p.subtextColor,whiteSpace:\"nowrap\"},children:p.locationLabel})]},\"pill-content\")}),/*#__PURE__*/_jsx(AnimatePresence,{children:p.isExpanded&&/*#__PURE__*/_jsxs(motion.div,{initial:{opacity:0},animate:{opacity:1},exit:{opacity:0},transition:{duration:.15},style:{position:\"absolute\",inset:0,display:\"flex\",flexDirection:\"column\",alignItems:\"center\",padding:EXP_PAD,cursor:\"pointer\",overflow:\"hidden\",boxSizing:\"border-box\"},children:[/*#__PURE__*/_jsx(motion.div,{initial:{opacity:0,y:-6},animate:{opacity:1,y:0},transition:{duration:.2,delay:.05},style:{...p.dateFontStyle,letterSpacing:.4,marginBottom:8,alignSelf:\"stretch\",textAlign:\"center\"},children:p.dateStr}),p.showAnalogDial&&/*#__PURE__*/_jsx(motion.div,{initial:{opacity:0,scale:.72,y:-12},animate:{opacity:1,scale:1,y:0},transition:{duration:.38,delay:.04,ease:[.22,1,.36,1]},style:{marginBottom:8},children:/*#__PURE__*/_jsx(AnalogClock,{hourDeg:p.hourDeg,minDeg:p.minDeg,secDeg:p.secDeg,handColor:p.handColor,secondHandColor:p.secondHandColor,dialBgColor:p.dialBgColor})}),p.showDigitalTime&&/*#__PURE__*/_jsxs(motion.div,{initial:{opacity:0,y:8},animate:{opacity:1,y:0},transition:{duration:.24,delay:.06},style:{display:\"flex\",alignItems:\"flex-end\",gap:4,marginBottom:6},children:[/*#__PURE__*/_jsx(\"div\",{style:{...p.timeFontStyle,color:p.textColor,letterSpacing:-2,lineHeight:1},children:p.timeOnly}),p.ampm&&/*#__PURE__*/_jsx(\"div\",{style:{...p.timeFontStyle,fontSize:ampmSize,color:p.subtextColor,letterSpacing:.6,lineHeight:1,fontWeight:500,// Nudge up to sit on the baseline of the time digits\npaddingBottom:Math.round(ampmSize*.1)},children:p.ampm})]}),p.hasLocation&&/*#__PURE__*/_jsx(motion.div,{initial:{opacity:0,y:6},animate:{opacity:1,y:0},transition:{duration:.2,delay:.08},style:{...p.locationFontStyle,marginBottom:p.showMap?8:0},children:`In ${p.cityName}`}),p.showMap&&/*#__PURE__*/_jsx(motion.div,{initial:{opacity:0,y:-8},animate:{opacity:1,y:0},transition:{duration:.3,delay:.1,ease:[.22,1,.36,1]},style:{width:MAP_SIZE,height:MAP_SIZE,borderRadius:10,overflow:\"hidden\",flexShrink:0},children:/*#__PURE__*/_jsx(\"iframe\",{srcDoc:p.mapSrcdoc,style:{width:\"100%\",height:\"100%\",border:\"none\",display:\"block\"},title:\"Location map\",sandbox:\"allow-scripts\"})})]},\"exp-content\")})]})]});});// ── Main component ─────────────────────────────────────────────────────────────\nexport default function DynamicIslandClock(props){const{layout={},pillStyle={},pillDesign={},clockSettings={},colors={},typography={},haptics={},style}=props;const{islandPosition=\"top-center\",stickyOnTop=true,offsetX=0,offsetY=0}=layout;const{bgStyle=\"solid\",bgSolid=\"#FFFFFF\",bgGradient={},bgGlass={}}=pillStyle;const{showPillDate=true,showPillTime=true,showPillClock=true,showPillLocation=true,separatorStyle=\"bullet\"}=pillDesign;const{timezone=\"Asia/Makassar\",locationText=\"Bali, Indonesia\",showAnalogDial=true,showDigitalTime=true,showMap=true,mapZoom=6,mapPopupText=\"Hi, You found me!\",mapLat=-8.42,mapLng=115.1,mapInteractive=false,mapPopupOffsetX=8,mapPopupOffsetY=-18}=clockSettings;const{textColor=\"#1d1d1d\",subtextColor=\"rgba(0,0,0,0.38)\",handColor=\"#1d1d1d\",secondHandColor=\"#FF3B30\",dialBgColor=\"rgba(246,246,248,1)\"}=colors;const{clickFile1,clickFile2}=haptics;const rawId=useId();const compId=rawId.replace(/[^a-zA-Z0-9]/g,\"\");const isStatic=useIsStaticRenderer();const gradC1=bgGradient?.color1??\"#f8f8f8\";const gradC2=bgGradient?.color2??\"#e2e2e2\";const gradAngle=bgGradient?.angle??135;const blurVal=bgGlass?.blurValue??20;const colorGlass=bgGlass?.glassColor??\"rgba(255,255,255,0.15)\";const pillFont=typography?.pillFont??{};const dateFont=typography?.dateFont??{};const timeFont=typography?.timeFont??{};const locationFont=typography?.locationFont??{};const family=\"Inter, -apple-system, BlinkMacSystemFont, system-ui, sans-serif\";const pillFontStyle={fontSize:12,fontWeight:500,color:textColor,letterSpacing:.1,fontFamily:family,...pillFont};const dateFontStyle={fontSize:13,fontWeight:400,color:subtextColor,fontFamily:family,...dateFont};const timeFontStyle={fontSize:48,fontWeight:700,color:textColor,fontFamily:family,...timeFont};const locationFontStyle={fontSize:11,fontWeight:400,color:subtextColor,letterSpacing:.3,fontFamily:family,...locationFont};const timeFontSize=timeFont?.fontSize??48;const[isExpanded,setIsExpanded]=useState(false);const[now,setNow]=useState(()=>new Date);const rootRef=useRef(null);// Ref attached to the portal/inline wrapper so we can detect outside clicks\nconst shellContainerRef=useRef(null);const clickSoundsRef=useRef([]);const clickSoundIdx=useRef(0);const isHoveringRef=useRef(false);const autoCloseTimer=useRef(null);useEffect(()=>{const id=setInterval(()=>setNow(new Date),1e3);return()=>clearInterval(id);},[]);useEffect(()=>{if(typeof window===\"undefined\")return;const srcs=[clickFile1,clickFile2].filter(Boolean);if(srcs.length)clickSoundsRef.current=srcs.map(u=>new Audio(u));},[clickFile1,clickFile2]);const playClickSound=useCallback(()=>{const sounds=clickSoundsRef.current;if(!sounds.length)return;const audio=sounds[clickSoundIdx.current%sounds.length];if(audio){audio.currentTime=0;audio.volume=.45;audio.play().catch(()=>{});}clickSoundIdx.current++;if(typeof navigator!==\"undefined\"&&navigator.vibrate){try{navigator.vibrate([12,18,8]);}catch{}}},[]);const scheduleAutoClose=useCallback(()=>{if(autoCloseTimer.current)clearTimeout(autoCloseTimer.current);autoCloseTimer.current=setTimeout(()=>{if(!isHoveringRef.current)setIsExpanded(false);},1e4);},[]);useEffect(()=>{if(isExpanded)scheduleAutoClose();else if(autoCloseTimer.current)clearTimeout(autoCloseTimer.current);return()=>{if(autoCloseTimer.current)clearTimeout(autoCloseTimer.current);};},[isExpanded,scheduleAutoClose]);const handleMouseEnter=useCallback(()=>{isHoveringRef.current=true;if(autoCloseTimer.current)clearTimeout(autoCloseTimer.current);},[]);const handleMouseLeave=useCallback(()=>{isHoveringRef.current=false;if(isExpanded)scheduleAutoClose();},[isExpanded,scheduleAutoClose]);// Close when clicking OUTSIDE the island — ignore clicks inside the shell container\nuseEffect(()=>{if(!isExpanded)return;const handler=e=>{if(shellContainerRef.current?.contains(e.target))return;setIsExpanded(false);};document.addEventListener(\"mousedown\",handler);return()=>document.removeEventListener(\"mousedown\",handler);},[isExpanded]);const toggleExpand=useCallback(e=>{e.stopPropagation();setIsExpanded(p=>!p);playClickSound();},[playClickSound]);const collapseExpand=useCallback(e=>{e.stopPropagation();setIsExpanded(false);playClickSound();},[playClickSound]);// ── Glass CSS — 11-layer exact match to DiscPlayer ─────────────────────────\nconst GlassCSS=useMemo(()=>`\n    .di-glass-${compId} {\n        background: ${colorGlass};\n        backdrop-filter: blur(${blurVal}px);\n        -webkit-backdrop-filter: blur(${blurVal}px);\n        box-shadow:\n            1px -1px 2px hsl(0 0% 100% / 0.5) inset,\n            0px -1px 2px hsl(0 0% 100% / 0.5) inset,\n            -1px -1px 2px hsl(0 0% 100% / 0.5) inset,\n            1px 1px 2px hsl(0 0% 30% / 0.5) inset,\n            -8px 4px 10px -6px hsl(0 0% 30% / 0.25) inset,\n            -1px 1px 6px hsl(0 0% 30% / 0.25) inset,\n            -1px -1px 8px hsl(0 0% 60% / 0.15),\n            1px 1px 2px hsl(0 0% 30% / 0.15),\n            2px 2px 6px hsl(0 0% 30% / 0.15),\n            -2px -1px 2px hsl(0 0% 100% / 0.25) inset,\n            3px 6px 16px -6px hsl(0 0% 30% / 0.5);\n        position: relative;\n    }`,[compId,colorGlass,blurVal]);// ── Background props ───────────────────────────────────────────────────────\nconst{bgPropsStyle,bgPropsClass}=useMemo(()=>{const base={userSelect:\"none\"};if(bgStyle===\"glass\")return{bgPropsStyle:base,bgPropsClass:`di-glass-${compId}`};if(bgStyle===\"gradient\")return{bgPropsStyle:{...base,background:`linear-gradient(${gradAngle}deg, ${gradC1}, ${gradC2})`,boxShadow:\"0 0 0 1px rgba(0,0,0,0.04), 0 8px 32px rgba(0,0,0,0.08), 0 2px 8px rgba(0,0,0,0.05)\"},bgPropsClass:\"\"};return{bgPropsStyle:{...base,background:bgSolid,boxShadow:\"0 0 0 1px rgba(0,0,0,0.06), 0 8px 32px rgba(0,0,0,0.1), 0 2px 8px rgba(0,0,0,0.06)\"},bgPropsClass:\"\"};},[bgStyle,bgSolid,compId,gradC1,gradC2,gradAngle]);// ── Derived clock values ───────────────────────────────────────────────────\nconst{h12,m:min,s:sec}=getTimePartsInTZ(now,timezone);const{secDeg,minDeg,hourDeg}=toClockAngles(h12,min,sec);const dateStr=fmtDateInTZ(now,timezone);const fullTimeStr=fmtTimeInTZ(now,timezone);const{time:timeOnly,ampm}=splitTimeParts(fullTimeStr);const cityName=extractCity(locationText);const locationLabel=`in ${cityName}`;const hasLocation=!!locationText;// ── Map srcdoc — OSM tiles via MapLibre ────────────────────────────────────\nconst mapSrcdoc=useMemo(()=>makeMapSrcdoc(mapLat,mapLng,mapZoom,mapPopupText,secondHandColor,mapInteractive,mapPopupOffsetX,mapPopupOffsetY),[mapLat,mapLng,mapZoom,mapPopupText,secondHandColor,mapInteractive,mapPopupOffsetX,mapPopupOffsetY]);// ── Dynamic pill width ─────────────────────────────────────────────────────\nconst pillW=useMemo(()=>{const SEP=separatorStyle!==\"none\"?14:0;const segs=[];if(showPillDate)segs.push(44);if(showPillTime)segs.push(66);if(showPillClock)segs.push(28)// 26px SVG + 2px gap\n;if(showPillLocation&&hasLocation)segs.push(14+Math.min(cityName.length*7,70));if(!segs.length)return 110;const groups=[showPillDate,showPillTime||showPillClock,showPillLocation&&hasLocation].filter(Boolean).length;return Math.max(110,Math.min(340,segs.reduce((a,b)=>a+b,0)+Math.max(0,groups-1)*(SEP+8)+PILL_PAD_H*2));},[showPillDate,showPillTime,showPillClock,showPillLocation,hasLocation,cityName,separatorStyle]);// ── Expanded height — tight estimates to keep bottom padding equal to sides ──\nconst expH=useMemo(()=>EXP_PAD*2+// top + bottom\n    16+8+// date (lineHeight≈16) + margin\n    (showAnalogDial?200+8:0)+// dial + margin\n    (showDigitalTime?48+6:0)+// time row (lineHeight 1 @ 48px) + margin\n    (hasLocation?14+(showMap?8:0):0)+// location + margin only when map follows\n    (showMap?MAP_SIZE:0),[showAnalogDial,showDigitalTime,hasLocation,showMap]);// ── Positioning ────────────────────────────────────────────────────────────\nconst fixedStyle=useMemo(()=>{const top=12+offsetY,bot=12-offsetY;if(islandPosition===\"top-right\")return{position:\"fixed\",top,right:12-offsetX,zIndex:9999};if(islandPosition===\"top-center\")return{position:\"fixed\",top,left:0,right:0,display:\"flex\",justifyContent:\"center\",pointerEvents:\"none\",zIndex:9999};if(islandPosition===\"top-left\")return{position:\"fixed\",top,left:12+offsetX,zIndex:9999};if(islandPosition===\"bottom-right\")return{position:\"fixed\",bottom:bot,right:12-offsetX,zIndex:9999};if(islandPosition===\"bottom-center\")return{position:\"fixed\",bottom:bot,left:0,right:0,display:\"flex\",justifyContent:\"center\",pointerEvents:\"none\",zIndex:9999};if(islandPosition===\"bottom-left\")return{position:\"fixed\",bottom:bot,left:12+offsetX,zIndex:9999};return{position:\"fixed\",top,left:12+offsetX,zIndex:9999};},[islandPosition,offsetX,offsetY]);const absoluteStyle=useMemo(()=>{const top=12+offsetY,bot=12-offsetY;if(islandPosition===\"top-right\")return{position:\"absolute\",top,right:12-offsetX,zIndex:999};if(islandPosition===\"top-center\")return{position:\"absolute\",top,left:0,right:0,display:\"flex\",justifyContent:\"center\",pointerEvents:\"none\",zIndex:999};if(islandPosition===\"top-left\")return{position:\"absolute\",top,left:12+offsetX,zIndex:999};if(islandPosition===\"bottom-right\")return{position:\"absolute\",bottom:bot,right:12-offsetX,zIndex:999};if(islandPosition===\"bottom-center\")return{position:\"absolute\",bottom:bot,left:0,right:0,display:\"flex\",justifyContent:\"center\",pointerEvents:\"none\",zIndex:999};if(islandPosition===\"bottom-left\")return{position:\"absolute\",bottom:bot,left:12+offsetX,zIndex:999};return{position:\"absolute\",top,left:12+offsetX,zIndex:999};},[islandPosition,offsetX,offsetY]);const centerInner=useMemo(()=>islandPosition===\"top-center\"||islandPosition===\"bottom-center\"?{pointerEvents:\"auto\",marginLeft:offsetX}:{},[islandPosition,offsetX]);// ── Shell props (stable via useMemo) ──────────────────────────────────────\nconst openUpward=islandPosition.startsWith(\"bottom\");const shellProps=useMemo(()=>({isExpanded,compId,openUpward,pillW,expH,bgPropsStyle,bgPropsClass,centerInner,showPillDate,showPillTime,showPillClock,showPillLocation,dateStr,fullTimeStr,locationLabel,hasLocation,separatorStyle,hourDeg,minDeg,secDeg,handColor,secondHandColor,textColor,subtextColor,showAnalogDial,showDigitalTime,showMap,timeOnly,ampm,cityName,dialBgColor,pillFontStyle,dateFontStyle,timeFontStyle,timeFontSize,locationFontStyle,mapSrcdoc,onToggle:toggleExpand,onCollapse:collapseExpand,onMouseEnter:handleMouseEnter,onMouseLeave:handleMouseLeave}),[isExpanded,compId,openUpward,pillW,expH,bgPropsStyle,bgPropsClass,centerInner,showPillDate,showPillTime,showPillClock,showPillLocation,dateStr,fullTimeStr,locationLabel,hasLocation,separatorStyle,hourDeg,minDeg,secDeg,handColor,secondHandColor,textColor,subtextColor,showAnalogDial,showDigitalTime,showMap,timeOnly,ampm,cityName,dialBgColor,pillFontStyle,dateFontStyle,timeFontStyle,timeFontSize,locationFontStyle,mapSrcdoc,toggleExpand,collapseExpand,handleMouseEnter,handleMouseLeave]);// ── Static preview ─────────────────────────────────────────────────────────\nif(isStatic){return /*#__PURE__*/_jsxs(\"div\",{ref:rootRef,style:{width:\"100%\",height:\"100%\",display:\"flex\",alignItems:\"center\",justifyContent:\"center\",...style},children:[/*#__PURE__*/_jsx(\"style\",{dangerouslySetInnerHTML:{__html:GlassCSS}}),/*#__PURE__*/_jsxs(\"div\",{className:bgPropsClass||undefined,style:{...bgPropsStyle,width:pillW,height:PILL_H,borderRadius:PILL_R,overflow:\"hidden\",display:\"flex\",alignItems:\"center\",gap:6,padding:`${PILL_PAD_V}px ${PILL_PAD_H}px`,whiteSpace:\"nowrap\"},children:[showPillDate&&/*#__PURE__*/_jsx(\"span\",{style:pillFontStyle,children:dateStr}),showPillDate&&(showPillTime||showPillClock||showPillLocation&&hasLocation)&&separatorStyle!==\"none\"&&/*#__PURE__*/_jsx(\"span\",{style:{fontSize:10,color:subtextColor,opacity:.4},children:SEP_CHARS[separatorStyle]}),showPillTime&&/*#__PURE__*/_jsx(\"span\",{style:pillFontStyle,children:fullTimeStr}),showPillClock&&/*#__PURE__*/_jsx(MiniClock,{hourDeg:hourDeg,minDeg:minDeg,secDeg:secDeg,handColor:handColor,secondHandColor:secondHandColor}),(showPillTime||showPillClock)&&showPillLocation&&hasLocation&&separatorStyle!==\"none\"&&/*#__PURE__*/_jsx(\"span\",{style:{fontSize:10,color:subtextColor,opacity:.4},children:SEP_CHARS[separatorStyle]}),showPillLocation&&hasLocation&&/*#__PURE__*/_jsx(\"span\",{style:{...pillFontStyle,color:subtextColor,fontWeight:400},children:locationLabel})]})]});}const shell=/*#__PURE__*/_jsx(IslandShell,{...shellProps});return /*#__PURE__*/_jsxs(_Fragment,{children:[/*#__PURE__*/_jsx(\"style\",{dangerouslySetInnerHTML:{__html:GlassCSS}}),/*#__PURE__*/_jsx(\"div\",{ref:rootRef,style:{width:\"100%\",height:\"100%\",position:\"relative\"},children:stickyOnTop?typeof document!==\"undefined\"&&/*#__PURE__*/createPortal(/*#__PURE__*/_jsx(\"div\",{ref:shellContainerRef,style:fixedStyle,children:shell}),document.body):/*#__PURE__*/_jsx(\"div\",{ref:shellContainerRef,style:absoluteStyle,children:shell})})]});}// ── Property Controls ─────────────────────────────────────────────────────────\naddPropertyControls(DynamicIslandClock,{layout:{type:ControlType.Object,title:\"Layout\",controls:{islandPosition:{type:ControlType.Enum,title:\"Island Position\",defaultValue:\"top-center\",options:[\"top-left\",\"top-center\",\"top-right\",\"bottom-left\",\"bottom-center\",\"bottom-right\"],optionTitles:[\"Top Left\",\"Top Center\",\"Top Right\",\"Bottom Left\",\"Bottom Center\",\"Bottom Right\"],description:\"Top: expands down (SE / S / SW) \\xb7 Bottom: expands up (NE / N / NW)\"},stickyOnTop:{type:ControlType.Boolean,title:\"Sticky on Top\",defaultValue:true,enabledTitle:\"Fixed\",disabledTitle:\"Inline\"},offsetX:{type:ControlType.Number,title:\"Offset X\",defaultValue:0,min:-300,max:300,step:1,unit:\"px\"},offsetY:{type:ControlType.Number,title:\"Offset Y\",defaultValue:0,min:-300,max:300,step:1,unit:\"px\"}}},pillStyle:{type:ControlType.Object,title:\"Pill Style\",controls:{bgStyle:{type:ControlType.Enum,title:\"Background Type\",defaultValue:\"solid\",options:[\"solid\",\"glass\",\"gradient\"],optionTitles:[\"Solid Color\",\"Glass Effect\",\"Gradient\"]},bgSolid:{type:ControlType.Color,title:\"Solid Color\",defaultValue:\"#FFFFFF\",hidden:p=>p?.bgStyle!==\"solid\"},bgGlass:{type:ControlType.Object,title:\"Glass Settings\",hidden:p=>p?.bgStyle!==\"glass\",controls:{blurValue:{type:ControlType.Number,title:\"Blur\",defaultValue:20,min:0,max:60,step:1},refraction:{type:ControlType.Number,title:\"Refraction\",defaultValue:.15,min:0,max:1,step:.01},depth:{type:ControlType.Number,title:\"Depth\",defaultValue:10,min:0,max:40,step:1},glassColor:{type:ControlType.Color,title:\"Glass Color\",defaultValue:\"rgba(255, 255, 255, 0.15)\"}}},bgGradient:{type:ControlType.Object,title:\"Gradient Settings\",hidden:p=>p?.bgStyle!==\"gradient\",controls:{color1:{type:ControlType.Color,title:\"Color 1\",defaultValue:\"#f8f8f8\"},color2:{type:ControlType.Color,title:\"Color 2\",defaultValue:\"#e2e2e2\"},angle:{type:ControlType.Number,title:\"Angle\",defaultValue:135,min:0,max:360,step:1,unit:\"\\xb0\"}}}}},pillDesign:{type:ControlType.Object,title:\"Pill Design\",controls:{showPillDate:{type:ControlType.Boolean,title:\"Show Date\",defaultValue:true,enabledTitle:\"Show\",disabledTitle:\"Hide\"},showPillTime:{type:ControlType.Boolean,title:\"Show Time (HH:MM)\",defaultValue:true,enabledTitle:\"Show\",disabledTitle:\"Hide\"},showPillClock:{type:ControlType.Boolean,title:\"Show Clock Hands\",defaultValue:true,enabledTitle:\"Show\",disabledTitle:\"Hide\",description:\"Appears beside the time — no separator between them.\"},showPillLocation:{type:ControlType.Boolean,title:\"Show Location\",defaultValue:true,enabledTitle:\"Show\",disabledTitle:\"Hide\"},separatorStyle:{type:ControlType.Enum,title:\"Separator Style\",defaultValue:\"bullet\",options:[\"none\",\"bullet\",\"emdash\",\"dot\",\"slash\",\"pipe\"],optionTitles:[\"None\",\"Bullet  \\xb7\",\"Em Dash  —\",\"Dot  •\",\"Slash  /\",\"Pipe  |\"],description:\"Separates groups: [Date] \\xb7 [Time Clock] \\xb7 [Location].\"}}},clockSettings:{type:ControlType.Object,title:\"Clock\",controls:{locationText:{type:ControlType.String,title:\"Location\",defaultValue:\"Bali, Indonesia\",placeholder:\"City, Country\",description:\"Display name. Set Timezone below to match.\"},timezone:{type:ControlType.Enum,title:\"Timezone\",defaultValue:\"Asia/Makassar\",options:TIMEZONE_OPTIONS,optionTitles:TIMEZONE_TITLES},showAnalogDial:{type:ControlType.Boolean,title:\"Analog Dial\",defaultValue:true,enabledTitle:\"Show\",disabledTitle:\"Hide\"},showDigitalTime:{type:ControlType.Boolean,title:\"Digital Time\",defaultValue:true,enabledTitle:\"Show\",disabledTitle:\"Hide\"},showMap:{type:ControlType.Boolean,title:\"Mini Map\",defaultValue:true,enabledTitle:\"Show\",disabledTitle:\"Hide\"},mapPopupText:{type:ControlType.String,title:\"Map Popup\",defaultValue:\"Hi, You found me!\",placeholder:\"Popup message on marker\",hidden:p=>!p?.showMap,description:\"Text shown in the popup bubble next to the map marker.\"},mapZoom:{type:ControlType.Number,title:\"Map Zoom\",defaultValue:6,min:1,max:18,step:1,hidden:p=>!p?.showMap,description:\"1 = world, 6 = region, 10 = city, 15 = street.\"},mapLat:{type:ControlType.Number,title:\"Latitude\",defaultValue:-8.42,min:-90,max:90,step:.001,hidden:p=>!p?.showMap},mapLng:{type:ControlType.Number,title:\"Longitude\",defaultValue:115.1,min:-180,max:180,step:.001,hidden:p=>!p?.showMap},mapInteractive:{type:ControlType.Boolean,title:\"Map Draggable\",defaultValue:false,enabledTitle:\"Interactive\",disabledTitle:\"Static\",hidden:p=>!p?.showMap},mapPopupOffsetX:{type:ControlType.Number,title:\"Popup Offset X\",defaultValue:8,min:-100,max:100,step:1,unit:\"px\",description:\"Horizontal distance from marker (positive = right).\",hidden:p=>!p?.showMap},mapPopupOffsetY:{type:ControlType.Number,title:\"Popup Offset Y\",defaultValue:-18,min:-100,max:100,step:1,unit:\"px\",description:\"Vertical distance from marker (negative = up).\",hidden:p=>!p?.showMap}}},colors:{type:ControlType.Object,title:\"Colors\",controls:{textColor:{type:ControlType.Color,title:\"Text\",defaultValue:\"#1d1d1d\"},subtextColor:{type:ControlType.Color,title:\"Subtext\",defaultValue:\"rgba(0,0,0,0.38)\"},handColor:{type:ControlType.Color,title:\"Clock Hands\",defaultValue:\"#1d1d1d\"},secondHandColor:{type:ControlType.Color,title:\"Second Hand\",defaultValue:\"#FF3B30\"},dialBgColor:{type:ControlType.Color,title:\"Dial Face\",defaultValue:\"rgba(246,246,248,1)\"}}},typography:{type:ControlType.Object,title:\"Typography\",controls:{pillFont:{type:ControlType.Font,title:\"Pill Text\",defaultValue:{fontFamily:\"Inter\",fontSize:12,fontWeight:500},controls:\"extended\"},dateFont:{type:ControlType.Font,title:\"Expanded Date\",defaultValue:{fontFamily:\"Inter\",fontSize:13,fontWeight:400},controls:\"extended\"},timeFont:{type:ControlType.Font,title:\"Digital Time\",defaultValue:{fontFamily:\"Inter\",fontSize:48,fontWeight:700},controls:\"extended\"},locationFont:{type:ControlType.Font,title:\"Location Label\",defaultValue:{fontFamily:\"Inter\",fontSize:11,fontWeight:400},controls:\"extended\"}}},haptics:{type:ControlType.Object,title:\"Haptic Sounds\",controls:{clickFile1:{type:ControlType.File,title:\"Click Sound 1\",allowedFileTypes:[\"mp3\",\"wav\"]},clickFile2:{type:ControlType.File,title:\"Click Sound 2\",allowedFileTypes:[\"mp3\",\"wav\"]}}}});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"DynamicIslandClock\",\"slots\":[],\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./DynamicIslandClock.map","import{jsx as _jsx,jsxs as _jsxs,Fragment as _Fragment}from\"react/jsx-runtime\";import{useState,useEffect,useRef,useCallback,useId,useMemo,memo}from\"react\";import{createPortal}from\"react-dom\";import{motion,AnimatePresence}from\"framer-motion\";import{addPropertyControls,ControlType,useIsStaticRenderer}from\"framer\";// ── Constants & Helpers ────────────────────────────────────────────────────────\nconst BUTTON_H=42;const CARD_W=320;function clamp(value,min,max){return Math.min(max,Math.max(min,value));}function parseCssColor(value){const fallback={r:0,g:0,b:0,a:1};if(!value)return fallback;const trimmed=String(value).trim();const hexMatch=trimmed.match(/^#([0-9a-f]{3,8})$/i);if(hexMatch){const raw=hexMatch[1];const full=raw.length===3||raw.length===4?raw.split(\"\").map(char=>char+char).join(\"\"):raw;const hasAlpha=full.length===8;return{r:Number.parseInt(full.slice(0,2),16)||fallback.r,g:Number.parseInt(full.slice(2,4),16)||fallback.g,b:Number.parseInt(full.slice(4,6),16)||fallback.b,a:hasAlpha?(Number.parseInt(full.slice(6,8),16)||255)/255:1};}const rgbMatch=trimmed.match(/^rgba?\\(\\s*([\\d.]+)\\s*,\\s*([\\d.]+)\\s*,\\s*([\\d.]+)(?:\\s*,\\s*([\\d.]+))?\\s*\\)$/i);if(rgbMatch){return{r:clamp(Number(rgbMatch[1])||0,0,255),g:clamp(Number(rgbMatch[2])||0,0,255),b:clamp(Number(rgbMatch[3])||0,0,255),a:clamp(Number(rgbMatch[4]??1),0,1)};}return fallback;}// ── Feather icons — inlined SVG paths ──────────────────────────────────────────\nconst FEATHER_PATHS={\"Arrow Right\":'<line x1=\"5\" y1=\"12\" x2=\"19\" y2=\"12\"/><polyline points=\"12 5 19 12 12 19\"/>',\"Arrow Left\":'<line x1=\"19\" y1=\"12\" x2=\"5\" y2=\"12\"/><polyline points=\"12 19 5 12 12 5\"/>',\"Arrow Up\":'<line x1=\"12\" y1=\"19\" x2=\"12\" y2=\"5\"/><polyline points=\"5 12 12 5 19 12\"/>',\"Arrow Down\":'<line x1=\"12\" y1=\"5\" x2=\"12\" y2=\"19\"/><polyline points=\"19 12 12 19 5 12\"/>',\"Arrow Up Right\":'<line x1=\"7\" y1=\"17\" x2=\"17\" y2=\"7\"/><polyline points=\"7 7 17 7 17 17\"/>',\"Chevron Right\":'<polyline points=\"9 18 15 12 9 6\"/>',\"Chevron Left\":'<polyline points=\"15 18 9 12 15 6\"/>',\"Chevron Up\":'<polyline points=\"18 15 12 9 6 15\"/>',\"Chevron Down\":'<polyline points=\"6 9 12 15 18 9\"/>',Plus:'<line x1=\"12\" y1=\"5\" x2=\"12\" y2=\"19\"/><line x1=\"5\" y1=\"12\" x2=\"19\" y2=\"12\"/>',Minus:'<line x1=\"5\" y1=\"12\" x2=\"19\" y2=\"12\"/>',X:'<line x1=\"18\" y1=\"6\" x2=\"6\" y2=\"18\"/><line x1=\"6\" y1=\"6\" x2=\"18\" y2=\"18\"/>',Check:'<polyline points=\"20 6 9 17 4 12\"/>',Star:'<polygon points=\"12 2 15.09 8.26 22 9.27 17 14.14 18.18 21.02 12 17.77 5.82 21.02 7 14.14 2 9.27 8.91 8.26 12 2\"/>',Heart:'<path d=\"M20.84 4.61a5.5 5.5 0 0 0-7.78 0L12 5.67l-1.06-1.06a5.5 5.5 0 0 0-7.78 7.78l1.06 1.06L12 21.23l7.78-7.78 1.06-1.06a5.5 5.5 0 0 0 0-7.78z\"/>',Zap:'<polygon points=\"13 2 3 14 12 14 11 22 21 10 12 10 13 2\"/>',Globe:'<circle cx=\"12\" cy=\"12\" r=\"10\"/><line x1=\"2\" y1=\"12\" x2=\"22\" y2=\"12\"/><path d=\"M12 2a15.3 15.3 0 0 1 4 10 15.3 15.3 0 0 1-4 10 15.3 15.3 0 0 1-4-10 15.3 15.3 0 0 1 4-10z\"/>',Download:'<path d=\"M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4\"/><polyline points=\"7 10 12 15 17 10\"/><line x1=\"12\" y1=\"15\" x2=\"12\" y2=\"3\"/>',Upload:'<path d=\"M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4\"/><polyline points=\"17 8 12 3 7 8\"/><line x1=\"12\" y1=\"3\" x2=\"12\" y2=\"15\"/>',Send:'<line x1=\"22\" y1=\"2\" x2=\"11\" y2=\"13\"/><polygon points=\"22 2 15 22 11 13 2 9 22 2\"/>',Search:'<circle cx=\"11\" cy=\"11\" r=\"8\"/><line x1=\"21\" y1=\"21\" x2=\"16.65\" y2=\"16.65\"/>',Settings:'<circle cx=\"12\" cy=\"12\" r=\"3\"/><path d=\"M19.4 15a1.65 1.65 0 0 0 .33 1.82l.06.06a2 2 0 0 1-2.83 2.83l-.06-.06a1.65 1.65 0 0 0-1.82-.33 1.65 1.65 0 0 0-1 1.51V21a2 2 0 0 1-4 0v-.09A1.65 1.65 0 0 0 9 19.4a1.65 1.65 0 0 0-1.82.33l-.06.06a2 2 0 0 1-2.83-2.83l.06-.06A1.65 1.65 0 0 0 4.68 15a1.65 1.65 0 0 0-1.51-1H3a2 2 0 0 1 0-4h.09A1.65 1.65 0 0 0 4.6 9a1.65 1.65 0 0 0-.33-1.82l-.06-.06a2 2 0 0 1 2.83-2.83l.06.06A1.65 1.65 0 0 0 9 4.68a1.65 1.65 0 0 0 1-1.51V3a2 2 0 0 1 4 0v.09a1.65 1.65 0 0 0 1 1.51 1.65 1.65 0 0 0 1.82-.33l.06-.06a2 2 0 0 1 2.83 2.83l-.06.06A1.65 1.65 0 0 0 19.4 9a1.65 1.65 0 0 0 1.51 1H21a2 2 0 0 1 0 4h-.09a1.65 1.65 0 0 0-1.51 1z\"/>',User:'<path d=\"M20 21v-2a4 4 0 0 0-4-4H8a4 4 0 0 0-4 4v2\"/><circle cx=\"12\" cy=\"7\" r=\"4\"/>',\"External Link\":'<path d=\"M18 13v6a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V8a2 2 0 0 1 2-2h6\"/><polyline points=\"15 3 21 3 21 9\"/><line x1=\"10\" y1=\"14\" x2=\"21\" y2=\"3\"/>',Lock:'<rect x=\"3\" y=\"11\" width=\"18\" height=\"11\" rx=\"2\" ry=\"2\"/><path d=\"M7 11V7a5 5 0 0 1 10 0v4\"/>',Mail:'<path d=\"M4 4h16c1.1 0 2 .9 2 2v12c0 1.1-.9 2-2 2H4c-1.1 0-2-.9-2-2V6c0-1.1.9-2 2-2V6c0-1.1.9-2 2-2z\"/><polyline points=\"22,6 12,13 2,6\"/>',Phone:'<path d=\"M22 16.92v3a2 2 0 0 1-2.18 2 19.79 19.79 0 0 1-8.63-3.07A19.5 19.5 0 0 1 4.69 13a19.79 19.79 0 0 1-3.07-8.67A2 2 0 0 1 3.5 2.2h3a2 2 0 0 1 2 1.72c.127.96.361 1.903.7 2.81a2 2 0 0 1-.45 2.11L7.91 9.91a16 16 0 0 0 6.09 6.09l1.27-1.27a2 2 0 0 1 2.11-.45c.907.339 1.85.573 2.81.7A2 2 0 0 1 22 16.92z\"/>',Link:'<path d=\"M10 13a5 5 0 0 0 7.54.54l3-3a5 5 0 0 0-7.07-7.07l-1.72 1.71\"/><path d=\"M14 11a5 5 0 0 0-7.54-.54l-3 3a5 5 0 0 0 7.07 7.07l1.71-1.71\"/>',Bookmark:'<path d=\"M19 21l-7-5-7 5V5a2 2 0 0 1 2-2h10a2 2 0 0 1 2 2z\"/>',Bell:'<path d=\"M18 8A6 6 0 0 0 6 8c0 7-3 9-3 9h18s-3-2-3-9\"/><path d=\"M13.73 21a2 2 0 0 1-3.46 0\"/>',Calendar:'<rect x=\"3\" y=\"4\" width=\"18\" height=\"18\" rx=\"2\" ry=\"2\"/><line x1=\"16\" y1=\"2\" x2=\"16\" y2=\"6\"/><line x1=\"8\" y1=\"2\" x2=\"8\" y2=\"6\"/><line x1=\"3\" y1=\"10\" x2=\"21\" y2=\"10\"/>',Camera:'<path d=\"M23 19a2 2 0 0 1-2 2H3a2 2 0 0 1-2-2V8a2 2 0 0 1 2-2h4l2-3h6l2 3h4a2 2 0 0 1 2 2z\"/><circle cx=\"12\" cy=\"13\" r=\"4\"/>',Edit:'<path d=\"M11 4H4a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h14a2 2 0 0 0 2-2v-7\"/><path d=\"M18.5 2.5a2.121 2.121 0 0 1 3 3L12 15l-4 1 1-4 9.5-9.5z\"/>',Trash:'<polyline points=\"3 6 5 6 21 6\"/><path d=\"M19 6l-1 14a2 2 0 0 1-2 2H8a2 2 0 0 1-2-2L5 6\"/><path d=\"M10 11v6\"/><path d=\"M14 11v6\"/><path d=\"M9 6V4a1 1 0 0 1 1-1h4a1 1 0 0 1 1 1v2\"/>',Copy:'<rect x=\"9\" y=\"9\" width=\"13\" height=\"13\" rx=\"2\" ry=\"2\"/><path d=\"M5 15H4a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h9a2 2 0 0 1 2 2v1\"/>',Share:'<circle cx=\"18\" cy=\"5\" r=\"3\"/><circle cx=\"6\" cy=\"12\" r=\"3\"/><circle cx=\"18\" cy=\"19\" r=\"3\"/><line x1=\"8.59\" y1=\"13.51\" x2=\"15.42\" y2=\"17.49\"/><line x1=\"15.41\" y1=\"6.51\" x2=\"8.59\" y2=\"10.49\"/>',Play:'<polygon points=\"5 3 19 12 5 21 5 3\"/>',Pause:'<rect x=\"6\" y=\"4\" width=\"4\" height=\"16\"/><rect x=\"14\" y=\"4\" width=\"4\" height=\"16\"/>',Mic:'<path d=\"M12 1a3 3 0 0 0-3 3v8a3 3 0 0 0 6 0V4a3 3 0 0 0-3-3z\"/><path d=\"M19 10v2a7 7 0 0 1-14 0v-2\"/><line x1=\"12\" y1=\"19\" x2=\"12\" y2=\"23\"/><line x1=\"8\" y1=\"23\" x2=\"16\" y2=\"23\"/>',Wifi:'<path d=\"M5 12.55a11 11 0 0 1 14.08 0\"/><path d=\"M1.42 9a16 16 0 0 1 21.16 0\"/><path d=\"M8.53 16.11a6 6 0 0 1 6.95 0\"/><line x1=\"12\" y1=\"20\" x2=\"12.01\" y2=\"20\"/>',Home:'<path d=\"M3 9l9-7 9 7v11a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2z\"/><polyline points=\"9 22 9 12 15 12 15 22\"/>',Menu:'<line x1=\"3\" y1=\"12\" x2=\"21\" y2=\"12\"/><line x1=\"3\" y1=\"6\" x2=\"21\" y2=\"6\"/><line x1=\"3\" y1=\"18\" x2=\"21\" y2=\"18\"/>',Grid:'<rect x=\"3\" y=\"3\" width=\"7\" height=\"7\"/><rect x=\"14\" y=\"3\" width=\"7\" height=\"7\"/><rect x=\"14\" y=\"14\" width=\"7\" height=\"7\"/><rect x=\"3\" y=\"14\" width=\"7\" height=\"7\"/>',Layers:'<polygon points=\"12 2 2 7 12 12 22 7 12 2\"/><polyline points=\"2 17 12 22 22 17\"/><polyline points=\"2 12 12 17 22 12\"/>',Loader:'<line x1=\"12\" y1=\"2\" x2=\"12\" y2=\"6\"/><line x1=\"12\" y1=\"18\" x2=\"12\" y2=\"22\"/><line x1=\"4.93\" y1=\"4.93\" x2=\"7.76\" y2=\"7.76\"/><line x1=\"16.24\" y1=\"16.24\" x2=\"19.07\" y2=\"19.07\"/><line x1=\"2\" y1=\"12\" x2=\"6\" y2=\"12\"/><line x1=\"18\" y1=\"12\" x2=\"22\" y2=\"12\"/><line x1=\"4.93\" y1=\"19.07\" x2=\"7.76\" y2=\"16.24\"/><line x1=\"16.24\" y1=\"7.76\" x2=\"19.07\" y2=\"4.93\"/>'};const FEATHER_ICON_NAMES=Object.keys(FEATHER_PATHS);// ── Feather SVG wrapper ────────────────────────────────────────────────────────\nconst FeatherIcon=/*#__PURE__*/memo(function FeatherIcon({name,size,color,strokeWidth=1.8}){const paths=FEATHER_PATHS[name];if(!paths)return null;return /*#__PURE__*/_jsx(\"svg\",{xmlns:\"http://www.w3.org/2000/svg\",width:size,height:size,viewBox:\"0 0 24 24\",fill:\"none\",stroke:color,strokeWidth:strokeWidth,strokeLinecap:\"round\",strokeLinejoin:\"round\",style:{flexShrink:0,display:\"block\"},dangerouslySetInnerHTML:{__html:paths}});});// ── Custom image icon ─────────────────────────────────────────────────────────\nconst CustomIcon=/*#__PURE__*/memo(function CustomIcon({src,size}){if(!src)return null;return /*#__PURE__*/_jsx(\"img\",{src:src,alt:\"\",style:{width:size,height:size,objectFit:\"contain\",flexShrink:0,display:\"block\"}});});// ── Unified icon renderer ──────────────────────────────────────────────────────\nfunction RenderIcon({iconType,featherIcon,customSrc,size,color,strokeWidth}){if(iconType===\"Custom\"){return customSrc?/*#__PURE__*/_jsx(CustomIcon,{src:customSrc,size:size}):null;}return /*#__PURE__*/_jsx(FeatherIcon,{name:featherIcon,size:size,color:color,strokeWidth:strokeWidth});}// ── Hover card position ────────────────────────────────────────────────────────\nfunction computeCardPos(cx,cy,estH,sc,ox=0,oy=-36){const sw=CARD_W*sc;const sh=estH*sc;const vw=typeof window!==\"undefined\"?window.innerWidth:1440;let x=cx-sw/2+ox;let y=cy-sh+oy;if(x<8)x=8;if(x+sw>vw-8)x=vw-8-sw;if(y<8)y=cy+Math.abs(oy)+8;return{x,y};}/**\n * Your component description goes here.\n * @framerSupportedLayoutWidth any\n * @framerSupportedLayoutHeight any\n * @framerDisableUnlink\n */export default function GlassButton(props){const{buttonContent={},buttonStyle={},icons={},linkPreview={},haptics={},style}=props;// Content\nconst{label=\"Get Started\",href=\"\",openInNewTab=true,scrollOffsetY=400}=buttonContent;// Style\nconst{bgStyle=\"glass\",bgSolid=\"rgba(255,255,255,0.15)\",bgGradient={},bgGlass={},textColor=\"#ffffff\",buttonFont={},borderRadius=14,paddingH=20,useCustomWidth=false,customWidth=160}=buttonStyle;// Icons\nconst{iconPlacement=\"Right\",leftIconType=\"Feather\",leftFeatherIcon=\"Arrow Right\",leftCustomIcon,rightIconType=\"Feather\",rightFeatherIcon=\"Arrow Right\",rightCustomIcon,iconSize=16,iconStrokeWidth=1.8,iconGap=8}=icons;// Link Preview properties matched exactly to KineticLinkText\nconst{enabled:previewEnabled=true,mode:previewMode=\"Auto Fetch\",image:previewImage,imagePosition=\"Top\",imageOpacity=1,blurAmount=0,offsetX=0,offsetY=-36,scale:previewScale=.6,bg:cardBg=\"#1B2128\",titleColor=\"#FFFFFF\",descColor=\"#8B949E\",shadowColor=\"#000000\",shadowOpacity=.55,shadowBlur=64}=linkPreview;const{clickFile1,clickFile2}=haptics;const rawId=useId();const compId=rawId.replace(/[^a-zA-Z0-9]/g,\"\");const isStatic=useIsStaticRenderer();// ── Glass CSS ──────────────────────────────────────────────────────────────\nconst blurVal=bgGlass?.blurValue??20;const colorGlass=bgGlass?.glassColor??\"rgba(255,255,255,0.15)\";const GlassCSS=useMemo(()=>`\n    .gb-glass-${compId} {\n        background: ${colorGlass};\n        backdrop-filter: blur(${blurVal}px);\n        -webkit-backdrop-filter: blur(${blurVal}px);\n        box-shadow:\n            1px -1px 2px hsl(0 0% 100% / 0.5) inset,\n            0px -1px 2px hsl(0 0% 100% / 0.5) inset,\n            -1px -1px 2px hsl(0 0% 100% / 0.5) inset,\n            1px 1px 2px hsl(0 0% 30% / 0.5) inset,\n            -8px 4px 10px -6px hsl(0 0% 30% / 0.25) inset,\n            -1px 1px 6px hsl(0 0% 30% / 0.25) inset,\n            -1px -1px 8px hsl(0 0% 60% / 0.15),\n            1px 1px 2px hsl(0 0% 30% / 0.15),\n            2px 2px 6px hsl(0 0% 30% / 0.15),\n            -2px -1px 2px hsl(0 0% 100% / 0.25) inset,\n            3px 6px 16px -6px hsl(0 0% 30% / 0.5);\n    }`,[compId,colorGlass,blurVal]);// ── Background ─────────────────────────────────────────────────────────────\nconst gradC1=bgGradient?.color1??\"rgba(255,255,255,0.2)\";const gradC2=bgGradient?.color2??\"rgba(255,255,255,0.05)\";const gradAngle=bgGradient?.angle??135;const{bgPropsStyle,bgPropsClass}=useMemo(()=>{const base={userSelect:\"none\"};if(bgStyle===\"glass\")return{bgPropsStyle:base,bgPropsClass:`gb-glass-${compId}`};if(bgStyle===\"gradient\")return{bgPropsStyle:{...base,background:`linear-gradient(${gradAngle}deg, ${gradC1}, ${gradC2})`,boxShadow:\"0 0 0 1px rgba(255,255,255,0.12), 0 8px 32px rgba(0,0,0,0.2)\"},bgPropsClass:\"\"};return{bgPropsStyle:{...base,background:bgSolid,boxShadow:\"0 0 0 1px rgba(255,255,255,0.1), 0 4px 16px rgba(0,0,0,0.15)\"},bgPropsClass:\"\"};},[bgStyle,bgSolid,compId,gradC1,gradC2,gradAngle]);// ── Sound ──────────────────────────────────────────────────────────────────\nconst clickSoundsRef=useRef([]);const clickSoundIdx=useRef(0);useEffect(()=>{if(typeof window===\"undefined\")return;const srcs=[clickFile1,clickFile2].filter(Boolean);if(srcs.length)clickSoundsRef.current=srcs.map(u=>new Audio(u));},[clickFile1,clickFile2]);const playClickSound=useCallback(()=>{const sounds=clickSoundsRef.current;if(!sounds.length)return;const audio=sounds[clickSoundIdx.current%sounds.length];if(audio){audio.currentTime=0;audio.volume=.45;audio.play().catch(()=>{});}clickSoundIdx.current++;if(typeof navigator!==\"undefined\"&&navigator.vibrate){try{navigator.vibrate([12,18,8]);}catch{}}},[]);// ── Hover / link preview ───────────────────────────────────────────────────\nconst isTouchDevice=useRef(false);const touchTimerRef=useRef(null);useEffect(()=>{return()=>{if(touchTimerRef.current)clearTimeout(touchTimerRef.current);};},[]);const[hovered,setHovered]=useState(false);const[cardX,setCardX]=useState(0);const[cardY,setCardY]=useState(0);const[fetched,setFetched]=useState(null);const[fetchLoading,setFetchLoading]=useState(false);const lastUrl=useRef(\"\");useEffect(()=>{if(previewMode!==\"Auto Fetch\"||!href||href===lastUrl.current)return;if(href.startsWith(\"#\"))return;lastUrl.current=href;setFetchLoading(true);setFetched(null);fetch(`https://api.microlink.io/?url=${encodeURIComponent(href)}`).then(r=>r.json()).then(data=>{if(data.status===\"success\"){setFetched({title:data.data.title??undefined,desc:data.data.description??undefined,image:data.data.image?.url??undefined,favicon:data.data.logo?.url??undefined});}}).catch(()=>{}).finally(()=>setFetchLoading(false));},[previewMode,href]);const cardImage=fetched?.image;const cardTitle=fetched?.title;const cardDesc=fetched?.desc;const cardFavicon=fetched?.favicon;const cardDomain=useMemo(()=>{try{if(!href||href.startsWith(\"#\"))return\"\";return new URL(href.startsWith(\"http\")?href:`https://${href}`).hostname.replace(\"www.\",\"\");}catch{return\"\";}},[href]);const showCard=previewEnabled&&hovered&&!isTouchDevice.current&&!href?.startsWith(\"#\")&&(previewMode===\"Auto Fetch\"?!!href&&(!!cardTitle||fetchLoading||!!cardImage):!!previewImage);const estCardH=CARD_W*(10/16);const handleMouseMove=useCallback(e=>{const pos=computeCardPos(e.clientX,e.clientY,estCardH,previewScale,offsetX,offsetY);setCardX(pos.x);setCardY(pos.y);},[estCardH,previewScale,offsetX,offsetY]);// ── Touch handlers (mobile hover state + visual feedback) ─────────────────\nconst handleTouchStart=useCallback(()=>{isTouchDevice.current=true;if(touchTimerRef.current)clearTimeout(touchTimerRef.current);setHovered(true);},[]);const handleTouchEnd=useCallback(()=>{touchTimerRef.current=setTimeout(()=>setHovered(false),200);},[]);// ── Click handler ──────────────────────────────────────────────────────────\nconst handleClick=useCallback(()=>{playClickSound();if(!href)return;if(href.startsWith(\"#\")){const id=href.slice(1);const target=document.getElementById(id);if(target){const top=target.getBoundingClientRect().top+window.scrollY-scrollOffsetY;window.scrollTo({top,behavior:\"smooth\"});}return;}if(openInNewTab)window.open(href,\"_blank\",\"noopener,noreferrer\");else window.location.href=href;},[playClickSound,href,openInNewTab,scrollOffsetY]);// ── Flags ──────────────────────────────────────────────────────────────────\nconst showLeft=iconPlacement===\"Left\"||iconPlacement===\"Both\";const showRight=iconPlacement===\"Right\"||iconPlacement===\"Both\";// ── Label style ────────────────────────────────────────────────────────────\nconst labelStyle={fontSize:14,fontWeight:600,fontFamily:\"Inter, -apple-system, BlinkMacSystemFont, system-ui, sans-serif\",lineHeight:1,whiteSpace:\"nowrap\",letterSpacing:-.1,...buttonFont,color:textColor};// ── Hover card rendering ───────────────────────────────────────────────────\nconst shadowColorParsed=parseCssColor(shadowColor);const customShadow=`0 16px ${shadowBlur}px rgba(${shadowColorParsed.r}, ${shadowColorParsed.g}, ${shadowColorParsed.b}, ${shadowOpacity})`;// Auto Fetch: image block (shared between top/bottom positions)\nconst autoFetchImageBlock=cardImage?/*#__PURE__*/_jsx(\"div\",{style:{flex:1,width:\"100%\",minHeight:0,overflow:\"hidden\"},children:/*#__PURE__*/_jsx(\"img\",{src:cardImage,alt:\"\",style:{width:\"100%\",height:\"100%\",objectFit:\"cover\",display:\"block\"}})}):fetchLoading?/*#__PURE__*/_jsx(\"div\",{style:{flex:1,width:\"100%\",minHeight:0,background:`linear-gradient(90deg,${descColor}14 25%,${descColor}28 50%,${descColor}14 75%)`,backgroundSize:\"200% 100%\",animation:\"klw_sh 1.4s ease infinite\"}}):/*#__PURE__*/_jsx(\"div\",{style:{flex:1,minHeight:0}});// Auto Fetch: text block\nconst autoFetchTextBlock=/*#__PURE__*/_jsxs(\"div\",{style:{padding:\"16px 20px\",flexShrink:0},children:[fetchLoading&&!cardTitle?/*#__PURE__*/_jsx(\"div\",{style:{height:22,borderRadius:6,marginBottom:8,width:\"75%\",background:`${descColor}22`,animation:\"klw_sh 1.4s ease infinite\",backgroundSize:\"200% 100%\"}}):cardTitle?/*#__PURE__*/_jsx(\"p\",{style:{margin:\"0 0 6px\",fontFamily:\"'Inter',sans-serif\",fontSize:18,fontWeight:700,color:titleColor,lineHeight:1.25,letterSpacing:\"-0.02em\",display:\"-webkit-box\",WebkitLineClamp:2,WebkitBoxOrient:\"vertical\",overflow:\"hidden\"},children:cardTitle}):null,cardDesc&&/*#__PURE__*/_jsx(\"p\",{style:{margin:\"0 0 12px\",fontFamily:\"'Inter',sans-serif\",fontSize:13,color:descColor,lineHeight:1.45,display:\"-webkit-box\",WebkitLineClamp:2,WebkitBoxOrient:\"vertical\",overflow:\"hidden\"},children:cardDesc}),/*#__PURE__*/_jsxs(\"div\",{style:{display:\"flex\",alignItems:\"center\",justifyContent:\"space-between\",gap:8,marginTop:cardDesc?0:4},children:[/*#__PURE__*/_jsxs(\"div\",{style:{display:\"flex\",alignItems:\"center\",gap:7,minWidth:0},children:[/*#__PURE__*/_jsx(\"svg\",{width:\"14\",height:\"14\",viewBox:\"0 0 16 16\",fill:\"none\",style:{flexShrink:0,opacity:.4},children:/*#__PURE__*/_jsx(\"path\",{d:\"M6.5 9.5a3.5 3.5 0 0 0 5 0l2-2a3.5 3.5 0 0 0-5-5L7.5 3.5M9.5 6.5a3.5 3.5 0 0 0-5 0l-2 2a3.5 3.5 0 0 0 5 5L8.5 12.5\",stroke:descColor,strokeWidth:\"1.5\",strokeLinecap:\"round\",strokeLinejoin:\"round\"})}),/*#__PURE__*/_jsx(\"span\",{style:{fontFamily:\"'Inter',sans-serif\",fontSize:15,fontWeight:500,color:descColor,opacity:.85,overflow:\"hidden\",textOverflow:\"ellipsis\",whiteSpace:\"nowrap\"},children:cardDomain})]}),cardFavicon&&/*#__PURE__*/_jsx(\"img\",{src:cardFavicon,alt:\"\",style:{width:20,height:20,borderRadius:5,objectFit:\"contain\",flexShrink:0,opacity:.85}})]})]});const cardJSX=/*#__PURE__*/_jsx(AnimatePresence,{children:showCard&&/*#__PURE__*/_jsx(motion.div,{initial:{opacity:0,y:10},animate:{opacity:1,y:0},exit:{opacity:0,y:10,transition:{duration:.12}},transition:{duration:.22,ease:[.16,1,.3,1]},style:{position:\"fixed\",left:cardX,top:cardY,width:CARD_W,aspectRatio:\"4/3.5\",display:\"flex\",flexDirection:\"column\",zIndex:99999,pointerEvents:\"none\",scale:previewScale,transformOrigin:\"top left\",borderRadius:16,overflow:\"hidden\",background:previewMode===\"Auto Fetch\"?cardBg:\"transparent\",boxShadow:customShadow},children:previewMode===\"Custom Image\"?/*#__PURE__*/_jsxs(\"div\",{style:{flex:1,width:\"100%\",display:\"flex\",flexDirection:\"column\",overflow:\"hidden\"},children:[imagePosition===\"Bottom\"&&/*#__PURE__*/_jsx(\"div\",{style:{flex:1,background:cardBg}}),/*#__PURE__*/_jsx(\"div\",{style:{flex:imagePosition===\"Bottom\"?\"0 0 65%\":1,overflow:\"hidden\",filter:blurAmount>0?`blur(${blurAmount}px)`:\"none\"},children:/*#__PURE__*/_jsx(\"img\",{src:previewImage,alt:\"\",style:{width:\"100%\",height:\"100%\",objectFit:\"cover\",display:\"block\",opacity:imageOpacity}})})]}):/*#__PURE__*/_jsxs(\"div\",{style:{display:\"flex\",flexDirection:imagePosition===\"Bottom\"?\"column-reverse\":\"column\",height:\"100%\"},children:[/*#__PURE__*/_jsx(\"style\",{children:`@keyframes klw_sh{0%{background-position:200% 0}100%{background-position:-200% 0}}`}),autoFetchImageBlock,autoFetchTextBlock]})},\"gb-preview-card\")});// ── Button element ─────────────────────────────────────────────────────────\nconst buttonEl=/*#__PURE__*/_jsxs(motion.button,{onClick:handleClick,onMouseEnter:()=>setHovered(true),onMouseLeave:()=>setHovered(false),onMouseMove:handleMouseMove,onTouchStart:handleTouchStart,onTouchEnd:handleTouchEnd,onTouchCancel:handleTouchEnd,className:bgPropsClass||undefined,whileHover:{scale:1.04},whileTap:{scale:.96},transition:{type:\"spring\",stiffness:400,damping:28},style:{...bgPropsStyle,touchAction:\"manipulation\",WebkitTapHighlightColor:\"transparent\",appearance:\"none\",WebkitAppearance:\"none\",height:BUTTON_H,width:useCustomWidth?customWidth:\"auto\",borderRadius:borderRadius,border:\"none\",outline:\"none\",cursor:\"pointer\",display:\"inline-flex\",alignItems:\"center\",justifyContent:\"center\",padding:`0 ${paddingH}px`,boxSizing:\"border-box\",position:\"relative\",overflow:\"hidden\"},children:[/*#__PURE__*/_jsx(motion.div,{initial:{x:\"-110%\"},animate:{x:hovered?\"0%\":\"-110%\"},transition:hovered?{duration:.32,ease:[.22,1,.36,1]}:{duration:.24,ease:[.55,0,1,.45]},style:{position:\"absolute\",inset:0,borderRadius:\"inherit\",background:\"linear-gradient(60deg, #FFE030, #FF8D63, #4AB4FF)\",pointerEvents:\"none\",zIndex:0,mixBlendMode:\"screen\"}}),/*#__PURE__*/_jsxs(\"div\",{style:{position:\"relative\",zIndex:1,display:\"flex\",alignItems:\"center\",gap:iconGap,color:hovered?\"#1C1C1E\":textColor,transition:\"color 0.28s ease\"},children:[showLeft&&/*#__PURE__*/_jsx(RenderIcon,{iconType:leftIconType,featherIcon:leftFeatherIcon,customSrc:leftCustomIcon,size:iconSize,color:\"currentColor\",strokeWidth:iconStrokeWidth}),/*#__PURE__*/_jsx(\"span\",{style:{...labelStyle,color:\"inherit\"},children:label}),showRight&&/*#__PURE__*/_jsx(RenderIcon,{iconType:rightIconType,featherIcon:rightFeatherIcon,customSrc:rightCustomIcon,size:iconSize,color:\"currentColor\",strokeWidth:iconStrokeWidth})]})]});if(isStatic){return /*#__PURE__*/_jsxs(\"div\",{style:{display:\"flex\",alignItems:\"center\",justifyContent:\"center\",width:\"100%\",height:\"100%\",...style},children:[/*#__PURE__*/_jsx(\"style\",{dangerouslySetInnerHTML:{__html:GlassCSS}}),buttonEl]});}return /*#__PURE__*/_jsxs(_Fragment,{children:[/*#__PURE__*/_jsx(\"style\",{dangerouslySetInnerHTML:{__html:GlassCSS}}),/*#__PURE__*/_jsx(\"div\",{style:{display:\"flex\",alignItems:\"center\",justifyContent:\"center\",width:\"100%\",height:\"100%\",...style},children:buttonEl}),typeof document!==\"undefined\"&&/*#__PURE__*/createPortal(cardJSX,document.body)]});}// ── Property Controls ──────────────────────────────────────────────────────────\naddPropertyControls(GlassButton,{// ── Content ────────────────────────────────────────────────────────────────\nbuttonContent:{type:ControlType.Object,title:\"Content\",controls:{label:{type:ControlType.String,title:\"Label\",defaultValue:\"Get Started\",placeholder:\"Button text…\"},href:{type:ControlType.String,title:\"Link URL\",defaultValue:\"\",placeholder:\"https://… or #section-id\"},openInNewTab:{type:ControlType.Boolean,title:\"Open In\",defaultValue:true,enabledTitle:\"New Tab\",disabledTitle:\"Same Tab\",hidden:p=>p?.href?.startsWith(\"#\")},scrollOffsetY:{type:ControlType.Number,title:\"Scroll Offset\",defaultValue:400,min:0,max:1e3,step:4,unit:\"px\",description:\"Pixel offset applied when scrolling to an on-page anchor (#section-id). Useful to account for sticky headers.\",hidden:p=>!p?.href?.startsWith(\"#\")}}},// ── Style ──────────────────────────────────────────────────────────────────\nbuttonStyle:{type:ControlType.Object,title:\"Style\",controls:{bgStyle:{type:ControlType.Enum,title:\"Background\",defaultValue:\"glass\",options:[\"glass\",\"solid\",\"gradient\"],optionTitles:[\"Glass\",\"Solid\",\"Gradient\"]},bgSolid:{type:ControlType.Color,title:\"Solid Color\",defaultValue:\"rgba(255,255,255,0.15)\",hidden:p=>p?.bgStyle!==\"solid\"},bgGlass:{type:ControlType.Object,title:\"Glass Settings\",hidden:p=>p?.bgStyle!==\"glass\",controls:{blurValue:{type:ControlType.Number,title:\"Blur\",defaultValue:20,min:0,max:60,step:1},glassColor:{type:ControlType.Color,title:\"Tint\",defaultValue:\"rgba(255,255,255,0.15)\"}}},bgGradient:{type:ControlType.Object,title:\"Gradient Settings\",hidden:p=>p?.bgStyle!==\"gradient\",controls:{color1:{type:ControlType.Color,title:\"Color 1\",defaultValue:\"rgba(255,255,255,0.2)\"},color2:{type:ControlType.Color,title:\"Color 2\",defaultValue:\"rgba(255,255,255,0.05)\"},angle:{type:ControlType.Number,title:\"Angle\",defaultValue:135,min:0,max:360,step:1,unit:\"\\xb0\"}}},textColor:{type:ControlType.Color,title:\"Text Color\",defaultValue:\"#ffffff\"},buttonFont:{type:ControlType.Font,title:\"Font\",defaultValue:{fontFamily:\"Inter\",fontSize:14,fontWeight:600},controls:\"extended\"},borderRadius:{type:ControlType.Number,title:\"Radius\",defaultValue:14,min:0,max:100,step:1,unit:\"px\",description:\"Corner radius of the button.\"},paddingH:{type:ControlType.Number,title:\"Padding H\",defaultValue:20,min:8,max:80,step:2,unit:\"px\"},useCustomWidth:{type:ControlType.Boolean,title:\"Fixed Width\",defaultValue:false,enabledTitle:\"On\",disabledTitle:\"Off (fit content)\"},customWidth:{type:ControlType.Number,title:\"Width\",defaultValue:160,min:60,max:600,step:4,unit:\"px\",hidden:p=>!p?.useCustomWidth}}},// ── Icons ──────────────────────────────────────────────────────────────────\nicons:{type:ControlType.Object,title:\"Icons\",controls:{iconPlacement:{type:ControlType.Enum,title:\"Placement\",defaultValue:\"Right\",options:[\"None\",\"Left\",\"Right\",\"Both\"],optionTitles:[\"None\",\"Left\",\"Right\",\"Both\"],displaySegmentedControl:true,segmentedControlDirection:\"vertical\"},leftIconType:{type:ControlType.Enum,title:\"Left \\xb7 Source\",defaultValue:\"Feather\",options:[\"Feather\",\"Custom\"],optionTitles:[\"Feather Icons\",\"Custom (PNG / SVG)\"],displaySegmentedControl:true,segmentedControlDirection:\"vertical\",hidden:p=>p?.iconPlacement!==\"Left\"&&p?.iconPlacement!==\"Both\"},leftFeatherIcon:{type:ControlType.Enum,title:\"Left \\xb7 Icon\",defaultValue:\"Arrow Right\",options:FEATHER_ICON_NAMES,optionTitles:FEATHER_ICON_NAMES,hidden:p=>p?.iconPlacement!==\"Left\"&&p?.iconPlacement!==\"Both\"||p?.leftIconType===\"Custom\"},leftCustomIcon:{type:ControlType.Image,title:\"Left \\xb7 Upload\",hidden:p=>p?.iconPlacement!==\"Left\"&&p?.iconPlacement!==\"Both\"||p?.leftIconType!==\"Custom\"},rightIconType:{type:ControlType.Enum,title:\"Right \\xb7 Source\",defaultValue:\"Feather\",options:[\"Feather\",\"Custom\"],optionTitles:[\"Feather Icons\",\"Custom (PNG / SVG)\"],displaySegmentedControl:true,segmentedControlDirection:\"vertical\",hidden:p=>p?.iconPlacement!==\"Right\"&&p?.iconPlacement!==\"Both\"},rightFeatherIcon:{type:ControlType.Enum,title:\"Right \\xb7 Icon\",defaultValue:\"Arrow Right\",options:FEATHER_ICON_NAMES,optionTitles:FEATHER_ICON_NAMES,hidden:p=>p?.iconPlacement!==\"Right\"&&p?.iconPlacement!==\"Both\"||p?.rightIconType===\"Custom\"},rightCustomIcon:{type:ControlType.Image,title:\"Right \\xb7 Upload\",hidden:p=>p?.iconPlacement!==\"Right\"&&p?.iconPlacement!==\"Both\"||p?.rightIconType!==\"Custom\"},iconSize:{type:ControlType.Number,title:\"Size\",defaultValue:16,min:10,max:40,step:1,unit:\"px\",hidden:p=>p?.iconPlacement===\"None\"},iconStrokeWidth:{type:ControlType.Number,title:\"Stroke\",defaultValue:1.8,min:.5,max:4,step:.1,hidden:p=>p?.iconPlacement===\"None\",description:\"Applies to Feather icons only.\"},iconGap:{type:ControlType.Number,title:\"Gap\",defaultValue:8,min:0,max:24,step:1,unit:\"px\",hidden:p=>p?.iconPlacement===\"None\"}}},// ── Link Preview (Matched to KineticLinkText) ──────────────────────────────\nlinkPreview:{type:ControlType.Object,title:\"Link Preview\",controls:{enabled:{type:ControlType.Boolean,title:\"Show on Hover\",defaultValue:true,enabledTitle:\"On\",disabledTitle:\"Off\"},mode:{type:ControlType.Enum,title:\"Preview Type\",options:[\"Auto Fetch\",\"Custom Image\"],defaultValue:\"Auto Fetch\",displaySegmentedControl:true,segmentedControlDirection:\"vertical\",hidden:p=>!p?.enabled},imagePosition:{type:ControlType.Enum,title:\"Image Position\",options:[\"Top\",\"Bottom\"],defaultValue:\"Top\",displaySegmentedControl:true,hidden:p=>!p?.enabled},// ── Auto Fetch text colors ──────────────────────────────────────────\ntitleColor:{type:ControlType.Color,title:\"Title Color\",defaultValue:\"#FFFFFF\",hidden:p=>!p?.enabled||p?.mode!==\"Auto Fetch\"},descColor:{type:ControlType.Color,title:\"Desc Color\",defaultValue:\"#8B949E\",hidden:p=>!p?.enabled||p?.mode!==\"Auto Fetch\"},bg:{type:ControlType.Color,title:\"Card BG\",defaultValue:\"#1B2128\",hidden:p=>!p?.enabled||p?.mode!==\"Auto Fetch\"},// ── Custom Image settings ───────────────────────────────────────────\nimage:{type:ControlType.Image,title:\"Image\",hidden:p=>!p?.enabled||p?.mode!==\"Custom Image\"},imageOpacity:{type:ControlType.Number,title:\"Opacity\",defaultValue:1,min:0,max:1,step:.01,hidden:p=>!p?.enabled||p?.mode!==\"Custom Image\",description:\"Opacity of the custom image (0 = transparent, 1 = full).\"},blurAmount:{type:ControlType.Number,title:\"Blur\",defaultValue:0,min:0,max:40,step:1,unit:\"px\",hidden:p=>!p?.enabled||p?.mode!==\"Custom Image\",description:\"Blur applied to the custom image.\"},// ── Shared card settings ────────────────────────────────────────────\nscale:{type:ControlType.Number,title:\"Scale\",defaultValue:.6,min:.1,max:5,step:.05,hidden:p=>!p?.enabled},shadowColor:{type:ControlType.Color,title:\"Shadow Color\",defaultValue:\"#000000\",hidden:p=>!p?.enabled},shadowOpacity:{type:ControlType.Number,title:\"Shadow Opac\",defaultValue:.55,min:0,max:1,step:.05,hidden:p=>!p?.enabled},shadowBlur:{type:ControlType.Number,title:\"Shadow Blur\",defaultValue:64,min:0,max:200,step:1,hidden:p=>!p?.enabled},offsetX:{type:ControlType.Number,title:\"Offset X\",defaultValue:0,min:-300,max:300,step:4,hidden:p=>!p?.enabled},offsetY:{type:ControlType.Number,title:\"Offset Y\",defaultValue:-36,min:-300,max:300,step:4,hidden:p=>!p?.enabled},accentColor:{type:ControlType.Color,title:\"Accent\",defaultValue:\"#C8FF00\",hidden:p=>!p?.enabled}}},// ── Haptic Sounds ──────────────────────────────────────────────────────────\nhaptics:{type:ControlType.Object,title:\"Haptic Sounds\",controls:{clickFile1:{type:ControlType.File,title:\"Click Sound 1\",allowedFileTypes:[\"mp3\",\"wav\"]},clickFile2:{type:ControlType.File,title:\"Click Sound 2\",allowedFileTypes:[\"mp3\",\"wav\"]}}}});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"GlassButton\",\"slots\":[],\"annotations\":{\"framerContractVersion\":\"1\",\"framerSupportedLayoutWidth\":\"any\",\"framerDisableUnlink\":\"\",\"framerSupportedLayoutHeight\":\"any\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./GlassButton.map","import{jsx as _jsx,jsxs as _jsxs}from\"react/jsx-runtime\";import{addPropertyControls,ControlType,RenderTarget}from\"framer\";import{useRef}from\"react\";import{motion,useScroll,useTransform,useSpring}from\"framer-motion\";export default function SunriseGradient(props){const{baseColor,color1,color2,color3,color4,colorSpread,coneWidth,coneHeight,coneSharpness,glowIntensity,scrollHeight,transitionStrength,perspectiveAmount,rotationAmount,sticky}=props;const containerRef=useRef(null);const isCanvas=RenderTarget.current()===RenderTarget.canvas;const{scrollYProgress}=useScroll({target:containerRef,offset:[\"start start\",\"end end\"]});// Much softer spring — lower stiffness, higher damping = no snap/jerk on exit\nconst smoothProgress=useSpring(scrollYProgress,{stiffness:40,damping:25,restDelta:5e-4});const scaleY=useTransform(smoothProgress,p=>{const strength=Math.max(.1,Math.min(2,transitionStrength));return .005+.995*Math.pow(p,1/strength);});const rotateX=useTransform(smoothProgress,[0,1],[rotationAmount,0]);// Smoother cone opacity — no hard knee at 0.1, eases in across 0→0.25\nconst coneOpacity=useTransform(smoothProgress,[0,.25,1],[0,.85,1]);// Glow eases in gently across a wider range\nconst glowOpacity=useTransform(smoothProgress,[0,.25,1],[0,glowIntensity/30,glowIntensity/30]);// Base strip fades in slowly so it doesn't pop on scroll entry/exit\nconst baseStripOpacity=useTransform(smoothProgress,[0,.15],[0,1]);const activeScaleY=isCanvas?1:scaleY;const activeRotateX=isCanvas?0:rotateX;const activeConeOpacity=isCanvas?1:coneOpacity;const activeGlowOpacity=isCanvas?glowIntensity/30:glowOpacity;const activeBaseStripOpacity=isCanvas?1:baseStripOpacity;const gradientStr=`linear-gradient(to top,\n        ${baseColor} 0%,\n        ${color1} ${(colorSpread*.25).toFixed(1)}%,\n        ${color2} ${(colorSpread*.5).toFixed(1)}%,\n        ${color3} ${(colorSpread*.75).toFixed(1)}%,\n        ${color4} ${colorSpread.toFixed(1)}%,\n        transparent ${Math.min(colorSpread+15,100).toFixed(1)}%\n    )`;const coneMask=`\n        radial-gradient(ellipse ${coneWidth}% ${coneHeight}% at 50% 100%,\n            black 0%,\n            black ${coneSharpness}%,\n            transparent 100%\n        )\n    `;return /*#__PURE__*/_jsx(\"div\",{ref:containerRef,style:{position:\"relative\",width:\"100%\",height:isCanvas?\"100vh\":scrollHeight,backgroundColor:\"transparent\"},children:/*#__PURE__*/_jsxs(\"div\",{style:{position:sticky&&!isCanvas?\"sticky\":\"relative\",top:0,width:\"100%\",height:\"100vh\",pointerEvents:\"none\",overflow:\"hidden\"},children:[/*#__PURE__*/_jsx(motion.div,{style:{position:\"absolute\",bottom:-60,left:0,width:\"100%\",height:\"10%\",background:`linear-gradient(to top, ${baseColor} 60%, transparent 100%)`,zIndex:10,pointerEvents:\"none\",opacity:activeBaseStripOpacity}}),glowIntensity>0&&/*#__PURE__*/_jsx(motion.div,{style:{position:\"absolute\",bottom:0,left:\"50%\",translateX:\"-50%\",width:`120%`,height:\"70%\",background:`radial-gradient(ellipse 60% 70% at 50% 100%, ${color1} 0%, transparent 70%)`,filter:`blur(${glowIntensity*2.5}px)`,opacity:activeGlowOpacity,zIndex:2,pointerEvents:\"none\",originY:1,originX:.5,scaleY:activeScaleY}}),/*#__PURE__*/_jsx(\"div\",{style:{position:\"absolute\",inset:0,display:\"flex\",alignItems:\"flex-end\",justifyContent:\"center\",perspective:`${perspectiveAmount}px`,zIndex:3},children:/*#__PURE__*/_jsx(motion.div,{style:{width:\"220%\",height:\"100%\",background:gradientStr,scaleY:activeScaleY,rotateX:activeRotateX,opacity:activeConeOpacity,originY:1,originX:.5,WebkitMaskImage:coneMask,maskImage:coneMask}})})]})});}addPropertyControls(SunriseGradient,{// ── COLORS (top to bottom order) ──\ncolor4:{type:ControlType.Color,title:\"Color 1 (Top)\",description:\"Topmost visible color, fades to transparent above.\",defaultValue:\"#fff9e6\"},color3:{type:ControlType.Color,title:\"Color 2\",description:\"Upper mid color band.\",defaultValue:\"#ffd700\"},color2:{type:ControlType.Color,title:\"Color 3\",description:\"Middle color band.\",defaultValue:\"#ff6b35\"},color1:{type:ControlType.Color,title:\"Color 4\",description:\"Lower mid color band.\",defaultValue:\"#5B9BD5\"},baseColor:{type:ControlType.Color,title:\"Color 5 (Base)\",description:\"Bottom solid color. Match your next section's bg.\",defaultValue:\"#87CEEB\"},// ── GRADIENT SHAPE ──\ncolorSpread:{type:ControlType.Number,title:\"Gradient Height %\",description:\"How tall the gradient is before fading out.\",defaultValue:60,min:5,max:95,step:1,unit:\"%\"},coneWidth:{type:ControlType.Number,title:\"Cone Width %\",description:\"Horizontal spread of the cone. Lower = narrower.\",defaultValue:80,min:10,max:200,step:1,unit:\"%\"},coneHeight:{type:ControlType.Number,title:\"Cone Height %\",description:\"Vertical reach of the cone. Higher = taller.\",defaultValue:90,min:10,max:200,step:1,unit:\"%\"},coneSharpness:{type:ControlType.Number,title:\"Cone Sharpness %\",description:\"Solid area before edges fade. Higher = less fade.\",defaultValue:40,min:0,max:90,step:1,unit:\"%\"},// ── GLOW ──\nglowIntensity:{type:ControlType.Number,title:\"Glow Intensity\",description:\"Bloom blur at the base. 0 = off.\",defaultValue:8,min:0,max:30,step:.5},// ── ANIMATION ──\nscrollHeight:{type:ControlType.Number,title:\"Scroll Distance\",description:\"Total scroll px to complete the animation.\",defaultValue:2e3,min:500,max:8e3,step:100,unit:\"px\"},transitionStrength:{type:ControlType.Number,title:\"Growth Speed\",description:\"Low = gradual rise. High = explosive pop.\",defaultValue:.8,min:.1,max:2,step:.1},perspectiveAmount:{type:ControlType.Number,title:\"3D Depth\",description:\"Lower = dramatic tilt. Higher = flat.\",defaultValue:1e3,min:100,max:2e3,step:50},rotationAmount:{type:ControlType.Number,title:\"Start Tilt\",description:\"Tilt angle at scroll start. 0 = flat.\",defaultValue:45,min:0,max:90,unit:\"\\xb0\"},sticky:{type:ControlType.Boolean,title:\"Sticky\",description:\"Pin viewport during scroll animation.\",defaultValue:true}});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"SunriseGradient\",\"slots\":[],\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./Gradient_Scroll_Transition.map","function _define_property(obj,key,value){if(key in obj){Object.defineProperty(obj,key,{value:value,enumerable:true,configurable:true,writable:true});}else{obj[key]=value;}return obj;}import{jsx as _jsx}from\"react/jsx-runtime\";import{useEffect,useRef,useState}from\"react\";import*as THREE from\"three\";import{addPropertyControls,ControlType}from\"framer\";import{gsap}from\"gsap\";// ─── SVG Receipt Path (520×760 coordinate space) ────────────────────────────\nconst RECEIPT_PATH=\"M 103.605 760 L 112.979 750.636 L 126.793 760 L 142.087 750.636 L 155.408 760 L 171.689 750.636 L 186.983 760 L 202.77 750.636 L 216.584 760 L 231.879 750.636 L 246.186 760 L 260 750.636 L 273.814 760 L 287.135 750.636 L 299.469 760 L 310.816 750.636 L 322.657 760 L 335.977 750.636 L 346.338 760 L 360.152 750.636 L 373.966 760 L 387.287 750.636 L 400.607 760 L 412.941 750.636 L 422.315 760 L 434.649 750.636 L 446.983 760 L 458.824 750.636 L 471.157 760 L 482.505 750.636 L 496.319 760 L 506.186 750.636 L 520 760 L 520 12 C 520 5.373 514.627 0 508 0 L 12 0 C 5.373 0 0 5.373 0 12 L 0 760 L 12.827 750.636 L 29.108 760 L 39.962 750.636 L 52.789 760 L 65.123 750.636 L 77.951 760 L 90.285 750.636 Z\";// ─── Receipt Texture ─────────────────────────────────────────────────────────\nfunction drawReceiptTexture(c,w,h,paperSettings,userImg,blendMode,imageOpacity){const scale=2;const cw=Math.round(w*scale);const ch=Math.round(h*scale);c.width=cw;c.height=ch;const ctx=c.getContext(\"2d\");ctx.scale(scale,scale);ctx.clearRect(0,0,w,h);ctx.save();ctx.scale(w/520,h/760);const path=new Path2D(RECEIPT_PATH);ctx.clip(path);const grad=ctx.createLinearGradient(0,0,520,0);grad.addColorStop(0,paperSettings.color);grad.addColorStop(.6,paperSettings.color);grad.addColorStop(1,paperSettings.shade);ctx.fillStyle=grad;ctx.fillRect(0,0,520,760);if(userImg){ctx.globalCompositeOperation=blendMode===\"normal\"?\"source-over\":blendMode||\"source-over\";ctx.globalAlpha=imageOpacity??1;ctx.drawImage(userImg,0,0,520,760);ctx.globalAlpha=1;ctx.globalCompositeOperation=\"source-over\";}else{ctx.fillStyle=\"rgba(0,0,0,0.12)\";ctx.font=\"bold 20px sans-serif\";ctx.textAlign=\"center\";ctx.textBaseline=\"middle\";ctx.fillText(\"Add custom texture\",260,360);ctx.font=\"15px sans-serif\";ctx.fillText(\"520 \\xd7 760\",260,390);}const topGrad=ctx.createLinearGradient(0,0,0,50);topGrad.addColorStop(0,\"rgba(0,0,0,0.08)\");topGrad.addColorStop(1,\"rgba(0,0,0,0)\");ctx.fillStyle=topGrad;ctx.fillRect(0,0,520,50);const edgeGrad=ctx.createLinearGradient(516,0,520,0);edgeGrad.addColorStop(0,\"rgba(0,0,0,0)\");edgeGrad.addColorStop(1,\"rgba(0,0,0,0.1)\");ctx.fillStyle=edgeGrad;ctx.fillRect(516,0,4,760);ctx.restore();if(paperSettings.noise>0){const strength=paperSettings.noise/100;ctx.setTransform(1,0,0,1,0,0);const imgData=ctx.getImageData(0,0,cw,ch);const d=imgData.data;for(let i=0;i<d.length;i+=4){if(d[i+3]===0)continue;const n=(Math.random()-.5)*40*strength;d[i]=Math.min(255,Math.max(0,d[i]+n));d[i+1]=Math.min(255,Math.max(0,d[i+1]+n));d[i+2]=Math.min(255,Math.max(0,d[i+2]+n));}ctx.putImageData(imgData,0,0);}}// ─── True 3D Particle Physics Engine ─────────────────────────────────────────\nclass Particle3D{constructor(x,y,z,pinned){_define_property(this,\"position\",void 0);_define_property(this,\"previous\",void 0);_define_property(this,\"original\",void 0);_define_property(this,\"pinned\",void 0);this.position=new THREE.Vector3(x,y,z);this.previous=new THREE.Vector3(x,y,z);this.original=new THREE.Vector3(x,y,z);this.pinned=pinned;}}class ClothSystem3D{update(gravity,damping,timeStep){const gravityForce=new THREE.Vector3(0,-gravity*timeStep,0);const maxVelocity=40;for(const p of this.particles){if(p.pinned)continue;const velocity=p.position.clone().sub(p.previous).multiplyScalar(damping);if(velocity.length()>maxVelocity){velocity.setLength(maxVelocity);}p.previous.copy(p.position);p.position.add(velocity).add(gravityForce);}for(let i=0;i<10;i++){for(let y=0;y<this.rows;y++){for(let x=0;x<this.columns;x++){const idx=y*this.columns+x;const p=this.particles[idx];if(x<this.columns-1)this.enforceConstraint(p,this.particles[idx+1],this.restDistanceX);if(y<this.rows-1)this.enforceConstraint(p,this.particles[idx+this.columns],this.restDistanceY);if(x<this.columns-1&&y<this.rows-1){const diagRest=Math.sqrt(this.restDistanceX**2+this.restDistanceY**2);this.enforceConstraint(p,this.particles[idx+this.columns+1],diagRest);}if(x>0&&y<this.rows-1){const diagRest=Math.sqrt(this.restDistanceX**2+this.restDistanceY**2);this.enforceConstraint(p,this.particles[idx+this.columns-1],diagRest);}if(x<this.columns-2)this.enforceConstraint(p,this.particles[idx+2],this.restDistanceX*2);if(y<this.rows-2)this.enforceConstraint(p,this.particles[idx+this.columns*2],this.restDistanceY*2);}}}}enforceConstraint(p1,p2,restLength){this._diff.subVectors(p2.position,p1.position);const currentDist=this._diff.length();if(currentDist===0)return;const maxStretch=restLength*3;const effectiveDist=Math.min(currentDist,maxStretch);const correction=this._diff.multiplyScalar((1-restLength/effectiveDist)*.5*this.stiffness);if(!p1.pinned)p1.position.add(correction);if(!p2.pinned)p2.position.sub(correction);}getClosestParticle(position,radius){let closest=null;let minDist=radius;for(const p of this.particles){const dist=p.position.distanceTo(position);if(dist<minDist){minDist=dist;closest=p;}}return closest;}apply3DPull(origin,direction,radius,strength){for(const p of this.particles){if(p.pinned)continue;const distance=p.position.distanceTo(origin);if(distance<radius){const forceMag=Math.pow(1-distance/radius,1.5)*strength;const force=direction.clone().multiplyScalar(forceMag);force.z+=(Math.abs(force.x)+Math.abs(force.y))*.5;p.position.add(force);}}}applyHoverRepel(origin,radius,strength){for(const p of this.particles){if(p.pinned)continue;const distance=p.position.distanceTo(origin);if(distance<radius){const forceMag=Math.pow(1-distance/radius,2)*strength;p.position.z-=forceMag;}}}constructor(width,height,columns,rows,stiffness){_define_property(this,\"particles\",[]);_define_property(this,\"columns\",void 0);_define_property(this,\"rows\",void 0);_define_property(this,\"restDistanceX\",void 0);_define_property(this,\"restDistanceY\",void 0);_define_property(this,\"stiffness\",void 0);_define_property(this,\"_diff\",new THREE.Vector3);this.columns=columns;this.rows=rows;this.stiffness=stiffness;this.restDistanceX=width/(columns-1);this.restDistanceY=height/(rows-1);for(let y=0;y<rows;y++){for(let x=0;x<columns;x++){const px=x/(columns-1)*width-width/2;const py=height/2-y/(rows-1)*height;const isPinned=y===0;this.particles.push(new Particle3D(px,py,0,isPinned));}}}}// ─── Default values ───────────────────────────────────────────────────────────\nconst DEFAULT_LAYOUT={scale:1,width:300,height:440};const DEFAULT_PAPER={color:\"#eff8fe\",shade:\"#d3d3d3\",noise:18,shadowOpacity:.12,shadowBlur:12};const DEFAULT_VISUAL={paper:DEFAULT_PAPER,imageBlendMode:\"normal\",imageOpacity:1};const DEFAULT_PHYSICS={clothResolution:25,stiffness:.8,damping:.96,gravity:.8,restoreTime:1.5,maxDragDistance:250};const DEFAULT_INTERACTION={touchRadius:120,pullStrength:4,repelStrength:5,repelRadius:150};const DEFAULT_MOTION={parallax:true,parallaxStrength:10};const DEFAULT_NAV={openIn:\"_blank\"};// ─── Component ───────────────────────────────────────────────────────────────\nexport default function Receipt({layout=DEFAULT_LAYOUT,visual=DEFAULT_VISUAL,image,physics=DEFAULT_PHYSICS,interaction=DEFAULT_INTERACTION,motion=DEFAULT_MOTION,href,nav=DEFAULT_NAV}){const componentScale=layout?.scale??DEFAULT_LAYOUT.scale;const receiptWidth=layout?.width??DEFAULT_LAYOUT.width;const receiptHeight=layout?.height??DEFAULT_LAYOUT.height;const paper=visual?.paper??DEFAULT_PAPER;const imageBlendMode=visual?.imageBlendMode??DEFAULT_VISUAL.imageBlendMode;const imageOpacity=visual?.imageOpacity??DEFAULT_VISUAL.imageOpacity;const clothResolution=physics?.clothResolution??DEFAULT_PHYSICS.clothResolution;const stiffness=physics?.stiffness??DEFAULT_PHYSICS.stiffness;const damping=physics?.damping??DEFAULT_PHYSICS.damping;const gravity=physics?.gravity??DEFAULT_PHYSICS.gravity;const restoreTime=physics?.restoreTime??DEFAULT_PHYSICS.restoreTime;const maxDragDistance=physics?.maxDragDistance??DEFAULT_PHYSICS.maxDragDistance;const touchRadius=interaction?.touchRadius??DEFAULT_INTERACTION.touchRadius;const pullStrength=interaction?.pullStrength??DEFAULT_INTERACTION.pullStrength;const repelStrength=interaction?.repelStrength??DEFAULT_INTERACTION.repelStrength;const repelRadius=interaction?.repelRadius??DEFAULT_INTERACTION.repelRadius;const parallax=motion?.parallax??DEFAULT_MOTION.parallax;const parallaxStrength=motion?.parallaxStrength??DEFAULT_MOTION.parallaxStrength;const openIn=nav?.openIn??DEFAULT_NAV.openIn;const containerRef=useRef(null);const interactRef=useRef({isHovering:false,isDown:false,worldStart:new THREE.Vector3,worldCurrent:new THREE.Vector3,dragNode:null,dragNodeWasPinned:false});const restoreTween=useRef(null);const[tilt,setTilt]=useState({rx:0,ry:0});const handleParallaxMove=e=>{if(!parallax)return;const rect=e.currentTarget.getBoundingClientRect();const cx=(e.clientX-rect.left)/rect.width-.5;const cy=(e.clientY-rect.top)/rect.height-.5;setTilt({rx:cy*-parallaxStrength,ry:cx*parallaxStrength});};const handleParallaxLeave=()=>setTilt({rx:0,ry:0});useEffect(()=>{const el=containerRef.current;if(!el)return;let isRunning=true;const dpr=Math.min(window.devicePixelRatio||1,2);const cw=el.clientWidth||receiptWidth;const ch=el.clientHeight||receiptHeight;const bleed=400;// ─── ThreeJS Setup ───────────────────────────────────────────────────\nconst scene=new THREE.Scene;const ambientLight=new THREE.AmbientLight(16777215,.7);scene.add(ambientLight);const dirLight=new THREE.DirectionalLight(16777215,.6);dirLight.position.set(0,200,500);scene.add(dirLight);const fov=45;const camera=new THREE.PerspectiveCamera(fov,(cw+bleed*2)/(ch+bleed*2),1,3e3);const cameraZ=(ch+bleed*2)/2/Math.tan(THREE.MathUtils.degToRad(fov/2));camera.position.z=cameraZ;const renderer=new THREE.WebGLRenderer({antialias:true,alpha:true});renderer.setPixelRatio(dpr);renderer.setSize(cw+bleed*2,ch+bleed*2);renderer.setClearColor(0,0);const cvs=renderer.domElement;cvs.style.position=\"absolute\";cvs.style.left=`${-bleed}px`;cvs.style.top=`${-bleed}px`;cvs.style.touchAction=\"none\";cvs.style.cursor=href?\"pointer\":\"grab\";el.appendChild(cvs);// ─── Cloth Generation ────────────────────────────────────────────────\nconst columns=Math.max(10,clothResolution);const rows=Math.max(15,Math.floor(clothResolution*(ch/cw)));const cloth=new ClothSystem3D(cw,ch,columns,rows,stiffness);const textureCanvas=document.createElement(\"canvas\");const texture=new THREE.CanvasTexture(textureCanvas);texture.minFilter=THREE.LinearFilter;texture.magFilter=THREE.LinearFilter;texture.wrapS=THREE.ClampToEdgeWrapping;texture.wrapT=THREE.ClampToEdgeWrapping;const renderTex=userImg=>{if(!isRunning)return;drawReceiptTexture(textureCanvas,cw,ch,paper,userImg,imageBlendMode,imageOpacity);texture.needsUpdate=true;};if(image){renderTex();const img=new Image;img.crossOrigin=\"anonymous\";img.src=image;img.onload=()=>renderTex(img);}else{renderTex();}const geometry=new THREE.PlaneGeometry(cw,ch,columns-1,rows-1);const material=new THREE.MeshStandardMaterial({map:texture,side:THREE.DoubleSide,roughness:.9,metalness:.1,transparent:true});const mesh=new THREE.Mesh(geometry,material);scene.add(mesh);// ─── Shadow Generation ───────────────────────────────────────────────\nconst sBlur=paper.shadowBlur??12;const blurPad=sBlur*2.5;const stw=cw+blurPad*2;const sth=ch+blurPad*2;const shadowCanvas=document.createElement(\"canvas\");const shadowCtx=shadowCanvas.getContext(\"2d\");shadowCanvas.width=Math.round(stw*2);shadowCanvas.height=Math.round(sth*2);shadowCtx.scale(2,2);shadowCtx.fillStyle=\"black\";shadowCtx.fillRect(0,0,stw,sth);shadowCtx.filter=`blur(${sBlur}px)`;shadowCtx.translate(blurPad,blurPad);shadowCtx.scale(cw/520,ch/760);shadowCtx.fillStyle=\"white\";shadowCtx.fill(new Path2D(RECEIPT_PATH));const shadowTex=new THREE.CanvasTexture(shadowCanvas);const shadowMat=new THREE.MeshBasicMaterial({color:0,transparent:true,opacity:paper.shadowOpacity??.12,alphaMap:shadowTex,depthWrite:false});const shadowMesh=new THREE.Mesh(geometry,shadowMat);shadowMesh.position.z=-15;shadowMesh.scale.set(stw/cw,sth/ch,1);scene.add(shadowMesh);// ─── Interaction (Raycasting & Pinning) ──────────────────────────────\nconst raycaster=new THREE.Raycaster;const mouse=new THREE.Vector2;const planeZ=new THREE.Plane(new THREE.Vector3(0,0,1),0);const updateMousePosition=e=>{const rect=renderer.domElement.getBoundingClientRect();const clientX=\"touches\"in e?e.touches[0].clientX:e.clientX;const clientY=\"touches\"in e?e.touches[0].clientY:e.clientY;mouse.x=(clientX-rect.left)/rect.width*2-1;mouse.y=-((clientY-rect.top)/rect.height)*2+1;};const updateWorldPosition=targetVector=>{raycaster.setFromCamera(mouse,camera);raycaster.ray.intersectPlane(planeZ,targetVector);};const onDown=e=>{if(restoreTween.current)restoreTween.current.kill();updateMousePosition(e);updateWorldPosition(interactRef.current.worldCurrent);interactRef.current.worldStart.copy(interactRef.current.worldCurrent);interactRef.current.isDown=true;cvs.style.cursor=\"grabbing\";const grabbed=cloth.getClosestParticle(interactRef.current.worldCurrent,touchRadius);if(grabbed){interactRef.current.dragNode=grabbed;interactRef.current.dragNodeWasPinned=grabbed.pinned;grabbed.pinned=true;}};const onMove=e=>{updateMousePosition(e);interactRef.current.isHovering=true;if(!interactRef.current.isDown)return;const prevWorld=interactRef.current.worldCurrent.clone();let rawCurrent=new THREE.Vector3;updateWorldPosition(rawCurrent);const dragVector=rawCurrent.clone().sub(interactRef.current.worldStart);if(dragVector.length()>maxDragDistance){dragVector.setLength(maxDragDistance);}interactRef.current.worldCurrent.copy(interactRef.current.worldStart).add(dragVector);const forceDir=interactRef.current.worldCurrent.clone().sub(prevWorld);if(interactRef.current.dragNode){interactRef.current.dragNode.position.copy(interactRef.current.worldCurrent);const totalDrag=interactRef.current.worldCurrent.clone().sub(interactRef.current.worldStart);interactRef.current.dragNode.position.z+=(Math.abs(totalDrag.x)+Math.abs(totalDrag.y))*.3;interactRef.current.dragNode.previous.copy(interactRef.current.dragNode.position);cloth.apply3DPull(interactRef.current.worldCurrent,forceDir,touchRadius,pullStrength*.5);}else{cloth.apply3DPull(interactRef.current.worldCurrent,forceDir,touchRadius,pullStrength);}};const onUp=()=>{if(!interactRef.current.isDown)return;interactRef.current.isDown=false;cvs.style.cursor=href?\"pointer\":\"grab\";if(interactRef.current.dragNode){interactRef.current.dragNode.pinned=interactRef.current.dragNodeWasPinned;interactRef.current.dragNode=null;}const targetState=cloth.particles.map(p=>({x:p.original.x,y:p.original.y,z:p.original.z}));restoreTween.current=gsap.to(cloth.particles.map(p=>p.position),{x:i=>targetState[i].x,y:i=>targetState[i].y,z:i=>targetState[i].z,duration:restoreTime,ease:\"power3.out\",onUpdate:()=>{cloth.particles.forEach(p=>p.previous.copy(p.position));}});};const onLeave=()=>{interactRef.current.isHovering=false;onUp();};// ─── Click handler — browser only fires this on a true click, not after drag\nconst onClick=()=>{if(href)window.open(href,openIn);};cvs.addEventListener(\"mousedown\",onDown);cvs.addEventListener(\"mousemove\",onMove);cvs.addEventListener(\"mouseup\",onUp);cvs.addEventListener(\"mouseleave\",onLeave);cvs.addEventListener(\"click\",onClick);cvs.addEventListener(\"touchstart\",onDown,{passive:true});cvs.addEventListener(\"touchmove\",onMove,{passive:true});cvs.addEventListener(\"touchend\",onUp);// ─── Render Loop ─────────────────────────────────────────────────────\nconst syncGeometry=()=>{cloth.stiffness=stiffness;const positions=geometry.attributes.position.array;for(let i=0;i<cloth.particles.length;i++){const p=cloth.particles[i].position;positions[i*3]=p.x;positions[i*3+1]=p.y;positions[i*3+2]=p.z;}geometry.attributes.position.needsUpdate=true;geometry.computeVertexNormals();};const animate=()=>{if(!isRunning)return;requestAnimationFrame(animate);if(interactRef.current.isHovering&&!interactRef.current.isDown&&repelStrength>0){let rawCurrent=new THREE.Vector3;updateWorldPosition(rawCurrent);cloth.applyHoverRepel(rawCurrent,repelRadius,repelStrength);}if(!interactRef.current.isDown&&(!restoreTween.current||!restoreTween.current.isActive())){cloth.update(gravity,damping,1);}else if(interactRef.current.isDown){cloth.update(gravity,damping*.9,1);}syncGeometry();renderer.render(scene,camera);};animate();// ─── Cleanup ─────────────────────────────────────────────────────────\nconst ro=new ResizeObserver(()=>{if(!isRunning)return;const nw=el.clientWidth;const nh=el.clientHeight;renderer.setSize(nw+bleed*2,nh+bleed*2);camera.aspect=(nw+bleed*2)/(nh+bleed*2);camera.position.z=(nh+bleed*2)/2/Math.tan(THREE.MathUtils.degToRad(fov/2));camera.updateProjectionMatrix();});ro.observe(el);return()=>{isRunning=false;ro.disconnect();if(restoreTween.current)restoreTween.current.kill();cvs.removeEventListener(\"mousedown\",onDown);cvs.removeEventListener(\"mousemove\",onMove);cvs.removeEventListener(\"mouseup\",onUp);cvs.removeEventListener(\"mouseleave\",onLeave);cvs.removeEventListener(\"click\",onClick);cvs.removeEventListener(\"touchstart\",onDown);cvs.removeEventListener(\"touchmove\",onMove);cvs.removeEventListener(\"touchend\",onUp);if(el.contains(cvs))el.removeChild(cvs);geometry.dispose();material.dispose();texture.dispose();shadowMat.dispose();shadowTex.dispose();renderer.dispose();};},[paper,image,imageBlendMode,imageOpacity,clothResolution,stiffness,damping,gravity,touchRadius,pullStrength,repelStrength,repelRadius,restoreTime,maxDragDistance,receiptWidth,receiptHeight,href,openIn]);return /*#__PURE__*/_jsx(\"div\",{style:{width:\"100%\",height:\"100%\",display:\"flex\",flexDirection:\"column\",justifyContent:\"center\",alignItems:\"center\",overflow:\"visible\"},children:/*#__PURE__*/_jsx(\"div\",{onMouseMove:handleParallaxMove,onMouseLeave:handleParallaxLeave,style:{width:receiptWidth,height:receiptHeight,transform:parallax?`scale(${componentScale}) perspective(1200px) rotateX(${tilt.rx}deg) rotateY(${tilt.ry}deg)`:`scale(${componentScale})`,transformOrigin:\"center center\",transition:\"transform 0.15s ease-out\",overflow:\"visible\",willChange:parallax?\"transform\":\"auto\"},children:/*#__PURE__*/_jsx(\"div\",{ref:containerRef,style:{width:\"100%\",height:\"100%\",position:\"relative\",overflow:\"visible\"}})})});}// ─── Framer Property Controls ────────────────────────────────────────────────\naddPropertyControls(Receipt,{// ── Layout & Dimensions ──────────────────────────────────────────────────\nlayout:{type:ControlType.Object,title:\"Layout & Dimensions\",controls:{scale:{type:ControlType.Number,title:\"Scale\",description:\"Overall component zoom / resize ratio\",defaultValue:1,min:.5,max:3,step:.1},width:{type:ControlType.Number,title:\"Width\",description:\"Component width in px\",defaultValue:300,min:150,max:600},height:{type:ControlType.Number,title:\"Height\",description:\"Component height in px\",defaultValue:440,min:200,max:900}}},// ── Visual Appearance ────────────────────────────────────────────────────\nvisual:{type:ControlType.Object,title:\"Visual Appearance\",controls:{paper:{type:ControlType.Object,title:\"Paper Settings\",description:\"Paper color, shade, noise, and shadow values\",controls:{color:{type:ControlType.Color,title:\"Paper Color\",defaultValue:\"#eff8fe\"},shade:{type:ControlType.Color,title:\"Paper Shade\",defaultValue:\"#d3d3d3\"},noise:{type:ControlType.Number,title:\"Paper Noise\",defaultValue:18,min:0,max:60,step:1},shadowOpacity:{type:ControlType.Number,title:\"Shadow Opacity\",defaultValue:.12,min:0,max:.5,step:.01},shadowBlur:{type:ControlType.Number,title:\"Shadow Blur\",defaultValue:12,min:0,max:40,step:1}}},imageBlendMode:{type:ControlType.Enum,title:\"Image Blend Mode\",description:\"How the uploaded image blends with the base layer\",options:[\"normal\",\"multiply\",\"darken\",\"screen\",\"overlay\",\"color-burn\",\"color-dodge\",\"soft-light\",\"hard-light\",\"luminosity\"],optionTitles:[\"Normal\",\"Multiply\",\"Darken\",\"Screen\",\"Overlay\",\"Color Burn\",\"Color Dodge\",\"Soft Light\",\"Hard Light\",\"Luminosity\"],defaultValue:\"normal\"},imageOpacity:{type:ControlType.Number,title:\"Image Opacity\",description:\"Transparency strength of the image layer\",defaultValue:1,min:0,max:1,step:.05}}},// ── Receipt Image — top-level required (ControlType.Image breaks inside Object) ──\nimage:{type:ControlType.Image,title:\"Receipt Image\",description:\"Upload texture or custom receipt graphic (520 \\xd7 760 px)\"},// ── Physics Simulation ───────────────────────────────────────────────────\nphysics:{type:ControlType.Object,title:\"Physics Simulation\",controls:{clothResolution:{type:ControlType.Number,title:\"Cloth Quality\",description:\"Mesh detail level of the simulation\",defaultValue:25,min:8,max:50,step:1},stiffness:{type:ControlType.Number,title:\"Stiffness\",description:\"Resistance to bending and folding\",defaultValue:.8,min:.1,max:1,step:.05},damping:{type:ControlType.Number,title:\"Damping\",description:\"Motion energy loss / stabilizer\",defaultValue:.96,min:.8,max:.999,step:.01},gravity:{type:ControlType.Number,title:\"Gravity\",description:\"Downward pull force\",defaultValue:.8,min:0,max:5,step:.1},restoreTime:{type:ControlType.Number,title:\"Restore Time (s)\",description:\"Speed to return to original state\",defaultValue:1.5,min:.1,max:5,step:.1},maxDragDistance:{type:ControlType.Number,title:\"Max Drag (px)\",description:\"Maximum drag displacement allowed\",defaultValue:250,min:50,max:1e3,step:10}}},// ── Interaction Controls ─────────────────────────────────────────────────\ninteraction:{type:ControlType.Object,title:\"Interaction Controls\",controls:{touchRadius:{type:ControlType.Number,title:\"Touch Radius\",description:\"Cursor / touch influence zone\",defaultValue:120,min:20,max:300,step:5},pullStrength:{type:ControlType.Number,title:\"Pull Strength\",description:\"Drag force intensity\",defaultValue:4,min:.5,max:20,step:.5},repelStrength:{type:ControlType.Number,title:\"Hover Repel\",description:\"Push-away force on hover\",defaultValue:5,min:0,max:20,step:.5},repelRadius:{type:ControlType.Number,title:\"Repel Radius\",description:\"Hover repulsion distance\",defaultValue:150,min:20,max:400,step:5}}},// ── Depth & Motion Effects ───────────────────────────────────────────────\nmotion:{type:ControlType.Object,title:\"Depth & Motion Effects\",controls:{parallax:{type:ControlType.Boolean,title:\"Parallax\",description:\"Enable layered depth movement\",defaultValue:true},parallaxStrength:{type:ControlType.Number,title:\"Parallax Strength\",description:\"Intensity of parallax shift\",defaultValue:10,min:1,max:30,step:1}}},// ── Navigation / Actions — Link top-level required (ControlType.Link breaks inside Object) ──\nhref:{type:ControlType.Link,title:\"Link To\",description:\"Target URL or internal page connection\"},nav:{type:ControlType.Object,title:\"Navigation / Actions\",description:\"Please upload an image with a resolution of 520 \\xd7 760 px for the best fit.\",controls:{openIn:{type:ControlType.Enum,title:\"Open In\",options:[\"_blank\",\"_self\"],optionTitles:[\"New Tab\",\"Same Tab\"],defaultValue:\"_blank\",displaySegmentedControl:true}}}});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"Receipt\",\"slots\":[],\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./Receipt_3d.map","// Generated by Framer (4ec240c)\nimport{fontStore}from\"framer\";fontStore.loadFonts([\"FS;General Sans-regular\",\"FS;General Sans-bold\",\"FS;General Sans-bold italic\",\"FS;General Sans-italic\"]);export const fonts=[{explicitInter:true,fonts:[{cssFamilyName:\"General Sans\",source:\"fontshare\",style:\"normal\",uiFamilyName:\"General Sans\",url:\"https://framerusercontent.com/third-party-assets/fontshare/wf/MFQT7HFGCR2L5ULQTW6YXYZXXHMPKLJ3/YWQ244D6TACUX5JBKATPOW5I5MGJ3G73/7YY3ZAAE3TRV2LANYOLXNHTPHLXVWTKH.woff2\",weight:\"400\"},{cssFamilyName:\"General Sans\",source:\"fontshare\",style:\"normal\",uiFamilyName:\"General Sans\",url:\"https://framerusercontent.com/third-party-assets/fontshare/wf/KWXO5X3YW4X7OLUMPO4X24HQJGJU7E2Q/VOWUQZS3YLP66ZHPTXAFSH6YACY4WJHT/NIQ54PVBBIWVK3PFSOIOUJSXIJ5WTNDP.woff2\",weight:\"700\"},{cssFamilyName:\"General Sans\",source:\"fontshare\",style:\"italic\",uiFamilyName:\"General Sans\",url:\"https://framerusercontent.com/third-party-assets/fontshare/wf/IZAMKIKJNFHYAA4XTXOGUSQUJWNXQHPE/2S5HU7TKNAV6MHTRNU2NPZD7U4OT6VKE/HCZ5OQRTYQOAVSHRS6UOFWUZ5CGI6JRO.woff2\",weight:\"700\"},{cssFamilyName:\"General Sans\",source:\"fontshare\",style:\"italic\",uiFamilyName:\"General Sans\",url:\"https://framerusercontent.com/third-party-assets/fontshare/wf/GQOITZI54NH6HDBP26XAMQYTXB4JQ3NQ/VY7SXNCPHYFLQTOFY72GM4OZTBH62U2D/AHPLTG2YASI4OYLGJV4CF3P25VBHPK5X.woff2\",weight:\"400\"}]}];export const css=['.framer-Q9SmY .framer-styles-preset-1m6tvz7:not(.rich-text-wrapper), .framer-Q9SmY .framer-styles-preset-1m6tvz7.rich-text-wrapper p { --framer-font-family: \"General Sans\", \"General Sans Placeholder\", sans-serif; --framer-font-family-bold: \"General Sans\", \"General Sans Placeholder\", sans-serif; --framer-font-family-bold-italic: \"General Sans\", \"General Sans Placeholder\", sans-serif; --framer-font-family-italic: \"General Sans\", \"General Sans Placeholder\", sans-serif; --framer-font-open-type-features: \\'blwf\\' on, \\'cv09\\' on, \\'cv03\\' on, \\'cv04\\' on, \\'cv11\\' on; --framer-font-size: 14px; --framer-font-style: normal; --framer-font-style-bold: normal; --framer-font-style-bold-italic: italic; --framer-font-style-italic: italic; --framer-font-variation-axes: normal; --framer-font-weight: 400; --framer-font-weight-bold: 700; --framer-font-weight-bold-italic: 700; --framer-font-weight-italic: 400; --framer-letter-spacing: 0.25px; --framer-line-height: 1.4em; --framer-paragraph-spacing: 20px; --framer-text-alignment: start; --framer-text-color: var(--token-0ba7cc43-9dd6-43f5-bf85-fd56e07a2fea, #2a3132); --framer-text-decoration: none; --framer-text-stroke-color: initial; --framer-text-stroke-width: initial; --framer-text-transform: none; }'];export const className=\"framer-Q9SmY\";\nexport const __FramerMetadata__ = {\"exports\":{\"className\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"css\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"fonts\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}","import{jsx as _jsx}from\"react/jsx-runtime\";// A helper wrapper so we don't repeat the <a> tag styling 7 times\nconst LinkWrap=({url,children})=>/*#__PURE__*/_jsx(\"a\",{href:url,target:\"_blank\"// <-- Changed from \"_self\" to \"_blank\"\n    ,rel:\"noopener noreferrer\",style:{textDecoration:\"none\",display:\"contents\",cursor:\"pointer\"},children:children});// The (Component) represents the exact Framer layer you attach this to!\nexport function Illustrations(Component){return props=>/*#__PURE__*/_jsx(LinkWrap,{url:\"https://jijo.fyi/work/illustrations\",children:/*#__PURE__*/_jsx(Component,{...props})});}export function Photos(Component){return props=>/*#__PURE__*/_jsx(LinkWrap,{url:\"https://jijo.fyi/work/photos\",children:/*#__PURE__*/_jsx(Component,{...props})});}export function Digital(Component){return props=>/*#__PURE__*/_jsx(LinkWrap,{url:\"https://jijo.fyi/work/digital\",children:/*#__PURE__*/_jsx(Component,{...props})});}export function Furnitures(Component){return props=>/*#__PURE__*/_jsx(LinkWrap,{url:\"https://jijo.fyi/work/furnitures\",children:/*#__PURE__*/_jsx(Component,{...props})});}export function Now(Component){return props=>/*#__PURE__*/_jsx(LinkWrap,{url:\"https://jijo.fyi/now\",children:/*#__PURE__*/_jsx(Component,{...props})});}export function Playground(Component){return props=>/*#__PURE__*/_jsx(LinkWrap,{url:\"https://jijo.fyi/play\",children:/*#__PURE__*/_jsx(Component,{...props})});}export function Home(Component){return props=>/*#__PURE__*/_jsx(LinkWrap,{url:\"https://jijo.fyi\",children:/*#__PURE__*/_jsx(Component,{...props})});}\nexport const __FramerMetadata__ = {\"exports\":{\"Furnitures\":{\"type\":\"reactHoc\",\"name\":\"Furnitures\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"Digital\":{\"type\":\"reactHoc\",\"name\":\"Digital\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"Photos\":{\"type\":\"reactHoc\",\"name\":\"Photos\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"Now\":{\"type\":\"reactHoc\",\"name\":\"Now\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"Illustrations\":{\"type\":\"reactHoc\",\"name\":\"Illustrations\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"Playground\":{\"type\":\"reactHoc\",\"name\":\"Playground\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"Home\":{\"type\":\"reactHoc\",\"name\":\"Home\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./Add_link.map","// Framer Code Component — CurlyArrow\n// Paste into a Framer Code Component file (.tsx)\nimport{jsx as _jsx,jsxs as _jsxs}from\"react/jsx-runtime\";import{addPropertyControls,ControlType}from\"framer\";import{motion,useSpring}from\"framer-motion\";import{useEffect,useRef,useState}from\"react\";// ─── Tunable constants ────────────────────────────────────────────────────────\nconst TEXT_DELAY=.8// seconds after arrow starts before text begins drawing\n;const TEXT_SCALE_FACTOR=.6// base multiplier for action text size (1 = full, 0.5 = half)\n;// ─── SVG path data ────────────────────────────────────────────────────────────\nconst ARROW_PATHS={N:{d:\"M 7.401 171 C 17.34 155.116 40.837 100.034 12.468 94.262 C -1.717 91.376 -2.218 104.396 3.159 110.213 C 8.536 116.029 19.79 114.641 18.329 90.897 C 15.911 50.421 5.373 35.808 13.801 1.5 C 23.544 12.407 24.341 23.955 20.399 14.771 C 16.456 5.587 13.381 0.445 4.159 7.953 C -5.064 15.462 7.102 3.755 12.279 0\",w:26,h:171,vb:\"0 0 26 171\"},NE:{d:\"M 0 117 C 16.251 104.376 28.891 90.937 39.02 59.255 C 49.15 27.573 81.446 62.243 60.52 72.755 C 39.595 83.268 46.195 37.818 71.02 30.423 C 95.846 23.028 112.095 17.51 120.02 5.423 C 127.946 -6.665 121.697 7.422 126.02 15 C 128.182 18.789 122.583 19.069 123.02 13.5 C 123.02 3.977 126.934 0.817 123.02 0.978 C 116.566 6.188 111.766 3.977 103.52 0\",w:126.519,h:117,vb:\"0 0 126.519 117\"},E:{d:\"M 0 13.88 C 0 13.88 10.855 8.509 27.704 6.262 C 44.552 4.014 67.395 4.891 77.57 8.96 C 97.921 17.098 74.295 32.426 65.985 25.047 C 57.675 17.668 68.768 -0.154 93.185 9.84 C 117.602 19.833 116.957 26.762 138.015 16.996 C 159.072 7.23 167.229 12.971 167.229 12.971 C 167.229 12.971 157.052 15.252 153.629 21.916 C 150.206 28.58 156.398 12.971 168.237 12.971 C 180.075 12.971 160.353 7.753 158.666 0\",w:172,h:27,vb:\"0 0 172 27\"},SE:{d:\"M 0 0 C 0 0 20.375 60.5 49.5 60.5 C 59.06 60.5 63.707 49.066 55 46.5 C 39.963 42.068 22.852 63.718 62.5 70 C 102.148 76.282 128.5 114.5 128.5 114.5 C 128.5 114.5 122.923 104.474 124.5 93.5 C 126.077 82.526 119.682 102.971 126.5 111.5 C 133.318 120.029 110.346 104.496 105.5 114.5\",w:128.5,h:114.5,vb:\"0 0 128.5 114.5\"},S:{d:\"M 15.968 0 C 15.968 0 18.623 53.369 14 67.5 C 9.377 81.631 19.24 108.1 27 95.5 C 34.76 82.9 20.779 63.529 10.5 88 C 0.221 112.471 24.135 135.993 15 171 C 3.208 152.346 0 161 0 161 C 0 161 6.469 156.351 15 170.5 C 20.912 160.923 30 159 30 159\",w:30,h:171,vb:\"0 0 30 171\"},SW:{d:\"M 130.253 0 C 130.253 0 93.726 15.133 85 43 C 76.274 70.867 37.87 61.468 54 50.5 C 70.13 39.532 62.057 79.094 42 81.5 C 21.943 83.906 13.216 97.626 2.5 113.5 C 2.5 96.393 0 97.5 0 97.5 C 0 97.5 4.426 101.084 4.544 106 C 4.662 110.916 -0.487 116.666 3.544 114.5 C 11.606 110.169 14.581 112.485 18.544 113\",w:130.253,h:114.97,vb:\"0 0 130.253 114.97\"},W:{d:\"M 170.996 12.216 C 170.996 12.216 131.924 3.968 100.996 8.216 C 70.067 12.463 80.872 33.317 94.496 26.5 C 108.119 19.683 94.132 5.048 64.5 8 C 34.868 10.952 16.652 21.203 0 13 C 9.131 23.819 8 27.5 8 27.5 C 8 27.5 8.38 18.077 2 13 C 9.985 7.923 13 0 13 0\",w:170.996,h:27.858,vb:\"0 0 170.996 27.858\"},NW:{d:\"M 120.147 125.528 C 120.147 125.528 94.859 114.962 76.147 85.528 C 57.436 56.094 34.59 61.222 31.647 75.028 C 28.705 88.834 71.003 87.778 51.647 47.5 C 32.292 7.222 0 7 0 7 C 0 7 3 14.964 3 20 C 3 25.036 -2.39 8.688 1.5 5.5 C 5.39 2.312 11.045 3.3 16.5 0\",w:120.147,h:125.528,vb:\"0 0 120.147 125.528\"}};// ─── Action text path data ────────────────────────────────────────────────────\nconst ACTION_PATHS={Hover:{d:\"M1.5 193.77C28.5 174.77 127.5 121.57 167.5 34.7698C217.5 -73.7302 82 107.77 37 226.77C-9.55577 349.884 55 179.27 117.5 146.77C180 114.27 192.5 172.27 167.5 236.77C156 268.27 170.5 297.27 192.5 233.77C207.5 186.77 242.8 140.408 296 140.408C362.5 140.408 333.5 259.77 275.5 271.77C217.5 283.77 195.875 248.072 220 189.77C244 131.77 330.794 130.299 316.5 156.77C303 181.77 271 140.408 336.5 140.408C402 140.408 301.5 306.769 377.5 267.27C453.5 227.77 468 164.27 447.5 146.77C427 129.27 416.5 161.77 434.5 176.27C452.5 190.77 496.954 212.678 557.5 182.77C649 137.571 513.5 108.27 476 182.77C462.302 209.983 430 308.769 566 257.27C586 249.696 624.3 231.27 657.5 163.27C675 126.77 628 142.27 617.5 157.27C606.726 172.662 608.5 195.77 687 176.27C765.5 156.77 732.5 172.77 701 203.27C669.5 233.77 649 291.77 734 268.27C783 252.77 741 213.27 741 233.77\",w:760,h:276,vb:\"0 0 760 276\"},Click:{d:\"M156.357 145.502C178.357 151.502 191.359 170.502 170.356 189.502C181.19 180.335 192.859 158.13 156.357 145.502ZM156.357 145.502C118.682 135.226 84.5053 153.002 68.3587 197.502C43.5036 266.002 161.259 338.502 234.759 197.502C308.259 56.5017 323.359 -38.9979 295.359 18.5021C267.359 76.0021 170.36 393.502 283.36 229.502C296.107 211.002 306.76 187.602 324.36 152.002C346.36 107.502 266.36 210.502 304.86 267.502C343.36 324.502 367.36 61.0022 479.86 168.002C460.86 147.336 415.66 119.502 386.86 173.502C350.86 241.002 398.36 329.502 479.86 238.502C561.36 147.502 618.859 -97.4973 563.859 46.0022C508.859 189.502 500.36 265.002 500.36 273.002C500.36 281.002 502.891 236.329 527.859 186.002C559.859 121.502 623.962 132.502 588.359 178.502C531.859 251.502 521.424 211.002 521.859 206.502C523.359 191.002 555.359 186.002 604.859 253.502C657.938 325.882 692.359 185.002 658.859 200.502M156.357 145.502C85.8591 123.502 49.3593 217.502 27.8593 261.002C8.58352 300.002 -12.1435 252.502 13.3577 247.002\",w:674,h:280,vb:\"0 0 674 280\"},Drag:{d:\"M126.605 215.914C144.333 145.414 66.1678 121.887 27.4827 169.377C-38.7801 250.721 34.6853 316.2 103.105 239.915C124.749 215.782 137.158 167.914 153.61 123.914C226.148 -70.0857 159.11 -36.0859 116.105 244.414C107.059 303.414 158.112 286.913 223.843 162.913C241.343 126.413 194.343 141.913 183.843 156.913C173.069 172.305 174.843 195.413 253.343 175.913C331.843 156.413 298.843 172.413 267.343 202.913C249.095 220.582 234.539 247.478 242.045 262.414C247.495 273.262 267.343 284.027 287.605 262.414C302.605 246.414 312.196 227.418 326.958 195.154C352.798 138.68 421.075 120.442 421.075 188.442C421.075 257.471 363.547 279.32 346.875 274.345C316.284 265.215 312.532 228.834 320.032 214.334C306.746 240.021 331.605 298.851 382.985 264.539C393.098 276.065 413.254 283.707 443.032 223.172C469.623 169.115 481.456 148.322 526.555 143.134C582.929 136.648 579.134 238.803 521.001 270.708C500.793 281.798 468.839 268.632 462.83 244.524C451.814 200.326 486.417 126.308 546.614 146.728C564.062 152.647 569.142 177.507 565.897 200.174C562.653 222.842 542.874 274.109 493.942 381.117C445.011 488.126 365.116 323.626 512.684 286.421C660.253 249.216 617.574 234.75 577.788 232.168\",w:618,h:419,vb:\"0 0 618 419\"}};// ─── Direction → layout config ────────────────────────────────────────────────\nconst DIRECTION_CONFIG={N:{arrowRotate:0,flexDir:\"column-reverse\",textRotate:0},NE:{arrowRotate:0,flexDir:\"column-reverse\",textRotate:0},E:{arrowRotate:0,flexDir:\"row\",textRotate:0},SE:{arrowRotate:0,flexDir:\"column\",textRotate:0},S:{arrowRotate:0,flexDir:\"column\",textRotate:0},SW:{arrowRotate:0,flexDir:\"column\",textRotate:0},W:{arrowRotate:0,flexDir:\"row-reverse\",textRotate:0},NW:{arrowRotate:0,flexDir:\"column-reverse\",textRotate:0}};// ─── Helpers ──────────────────────────────────────────────────────────────────\nfunction getPathLength(pathEl){if(!pathEl)return 1e3;try{return pathEl.getTotalLength();}catch{return 1e3;}}export function CurlyArrow({directionSVG=\"E\",actionText=\"Hover\",padding=20,lineThickness=3,speed=1.4,loopMode=\"Yes\",repeatCount=3,hideWhenDone=false,textOffsetX=0,textOffsetY=0,componentScale=1,colors={},size={}}){const arrowColor=colors.arrowColor??\"#000000\";const textColor=colors.textColor??\"#000000\";const arrowSizeMul=size.arrowSize??1;const textSizeMul=size.textSize??1;const containerRef=useRef(null);const arrowPathRef=useRef(null);const textPathRef=useRef(null);// Real DOM size — stays accurate in both canvas and live preview\nconst[actualW,setActualW]=useState(500);const[actualH,setActualH]=useState(300);useEffect(()=>{const el=containerRef.current;if(!el)return;const ro=new ResizeObserver(([entry])=>{const{width,height}=entry.contentRect;if(width>0)setActualW(width);if(height>0)setActualH(height);});ro.observe(el);return()=>ro.disconnect();},[]);const[arrowLen,setArrowLen]=useState(1e3);const[textLen,setTextLen]=useState(2e3);const[arrowPhase,setArrowPhase]=useState(0);const[textPhase,setTextPhase]=useState(0);const[isDragging,setIsDragging]=useState(false);const[dragOffset,setDragOffset]=useState({x:0,y:0});const[isHovered,setIsHovered]=useState(false);const isHoveredRef=useRef(false)// Ref for animation loop sync\n;// animTrigger = 0 means \"not yet seen\" — animation waits for IntersectionObserver\nconst[animTrigger,setAnimTrigger]=useState(0);const[isDone,setIsDone]=useState(false);const arrow=ARROW_PATHS[directionSVG]??ARROW_PATHS[\"E\"];const action=ACTION_PATHS[actionText]??ACTION_PATHS[\"Hover\"];const cfg=DIRECTION_CONFIG[directionSVG]??DIRECTION_CONFIG[\"E\"];// Sync hover state\nuseEffect(()=>{isHoveredRef.current=isHovered;},[isHovered]);// Measure path lengths after direction/action change\nuseEffect(()=>{const t=setTimeout(()=>{if(arrowPathRef.current)setArrowLen(getPathLength(arrowPathRef.current));if(textPathRef.current)setTextLen(getPathLength(textPathRef.current));},50);return()=>clearTimeout(t);},[directionSVG,actionText]);// Fire animation when the component enters the viewport.\nuseEffect(()=>{const el=containerRef.current;if(!el)return;const observer=new IntersectionObserver(([entry])=>{if(entry.isIntersecting)setAnimTrigger(n=>n+1);},{threshold:.1});observer.observe(el);return()=>observer.disconnect();},[]);// Self-contained animation loop (Delta-time based for smooth playback reversal)\nuseEffect(()=>{if(animTrigger===0)return;let cancelled=false;let frameId;let timeoutId;let lastTime=null;let loopCount=0;const totalDuration=speed+TEXT_DELAY;let currentElapsed=0;let isWaiting=false;setIsDone(false);setArrowPhase(0);setTextPhase(0);const tick=now=>{if(cancelled)return;// Wait frame holding logic\nif(isWaiting){lastTime=now;frameId=requestAnimationFrame(tick);return;}if(!lastTime)lastTime=now;const dt=now-lastTime;lastTime=now;// Read the hover ref to determine time direction\nconst direction=isHoveredRef.current?-1:1;currentElapsed+=dt/1e3*direction;if(currentElapsed>=totalDuration){currentElapsed=totalDuration;setArrowPhase(1);setTextPhase(1);// Only evaluate loop limits when playing forward\nif(direction===1){loopCount++;const shouldLoop=loopMode===\"Yes\"||loopMode===\"Frequency\"&&loopCount<repeatCount;if(shouldLoop){isWaiting=true;timeoutId=setTimeout(()=>{if(cancelled)return;currentElapsed=0;setArrowPhase(0);setTextPhase(0);isWaiting=false;lastTime=null;},400);}else{setIsDone(true);}}}else if(currentElapsed<=0){currentElapsed=0;setArrowPhase(0);setTextPhase(0);setIsDone(false)// Not \"done\" if we reversed back to 0\n;}else{setArrowPhase(Math.min(currentElapsed/speed,1));setTextPhase(Math.max(0,Math.min((currentElapsed-TEXT_DELAY)/speed,1)));setIsDone(false);}frameId=requestAnimationFrame(tick);};frameId=requestAnimationFrame(tick);return()=>{cancelled=true;cancelAnimationFrame(frameId);clearTimeout(timeoutId);};},[directionSVG,actionText,speed,loopMode,repeatCount,hideWhenDone,animTrigger]);// Spring for drag return\nconst springX=useSpring(0,{stiffness:180,damping:22});const springY=useSpring(0,{stiffness:180,damping:22});useEffect(()=>{if(!isDragging){springX.set(0);springY.set(0);}},[isDragging]);// Drag handlers\nconst dragStart=useRef(null);const onPointerDown=e=>{if(actionText!==\"Drag\")return;e.currentTarget.setPointerCapture(e.pointerId);dragStart.current={x:e.clientX,y:e.clientY};setIsDragging(true);};const onPointerMove=e=>{if(!isDragging||!dragStart.current)return;const dx=e.clientX-dragStart.current.x;const dy=e.clientY-dragStart.current.y;springX.set(dx*.6);springY.set(dy*.6);setDragOffset({x:dx,y:dy});};const onPointerUp=()=>{if(!isDragging)return;dragStart.current=null;setIsDragging(false);setDragOffset({x:0,y:0});};// Stroke draw-on\nconst arrowOffset=arrowLen*(1-arrowPhase);const textOffset=textLen*(1-textPhase);// Hover: gentle arrow scale pulse\nconst hoverArrowScale=actionText===\"Hover\"&&isHovered?1.06:1;// Layout — derived from real measured DOM size\nconst isRow=cfg.flexDir.includes(\"row\");const maxArrowW=isRow?actualW*.4:actualW*.25;const maxArrowH=isRow?actualH*.6:actualH*.4;const scaleArrow=Math.min(maxArrowW/arrow.w,maxArrowH/arrow.h)*arrowSizeMul;const maxTextW=isRow?actualW*.55:actualW*.85;const scaleText=Math.min(maxTextW/action.w,72/action.h)*TEXT_SCALE_FACTOR*textSizeMul;// Compensate strokeWidth so visual pixel thickness stays consistent across scales\nconst arrowStroke=lineThickness/scaleArrow;const textStroke=lineThickness/scaleText;return /*#__PURE__*/_jsxs(motion.div,{ref:containerRef,onHoverStart:()=>setIsHovered(true),onHoverEnd:()=>setIsHovered(false),style:{display:\"flex\",flexDirection:cfg.flexDir,alignItems:\"center\",justifyContent:\"center\",gap:padding,width:\"100%\",height:\"100%\",transform:`scale(${componentScale})`,transformOrigin:\"center center\",cursor:actionText===\"Drag\"?isDragging?\"grabbing\":\"grab\":\"default\",userSelect:\"none\"},onPointerDown:onPointerDown,onPointerMove:onPointerMove,onPointerUp:onPointerUp,onPointerLeave:onPointerUp,animate:{x:isDragging?dragOffset.x*.15:0,y:isDragging?dragOffset.y*.15:0,opacity:hideWhenDone&&isDone&&!isHovered?0:1},transition:{type:\"spring\",stiffness:200,damping:20},children:[/*#__PURE__*/_jsx(motion.div,{style:{flexShrink:0},// initial prevents spring-from-zero on mount in live preview\ninitial:{scale:1,rotate:cfg.arrowRotate,x:0,y:0},animate:{scale:hoverArrowScale,rotate:cfg.arrowRotate,x:isDragging?dragOffset.x*.25:0,y:isDragging?dragOffset.y*.25:0},transition:{type:\"spring\",stiffness:200,damping:18},children:/*#__PURE__*/_jsx(\"svg\",{width:arrow.w*scaleArrow,height:arrow.h*scaleArrow,viewBox:arrow.vb,fill:\"none\",xmlns:\"http://www.w3.org/2000/svg\",style:{display:\"block\",overflow:\"visible\"},children:/*#__PURE__*/_jsx(\"path\",{ref:arrowPathRef,d:arrow.d,fill:\"none\",stroke:arrowColor,strokeWidth:arrowStroke,strokeLinecap:\"round\",strokeLinejoin:\"round\",strokeDasharray:arrowLen,strokeDashoffset:arrowOffset})})}),/*#__PURE__*/_jsx(motion.div,{style:{flexShrink:0},// initial must match the resting animate values so no spring fires on mount\ninitial:{rotate:cfg.textRotate,x:textOffsetX,y:textOffsetY},animate:{rotate:cfg.textRotate,x:(isDragging?dragOffset.x*.4:0)+textOffsetX,y:(isDragging?dragOffset.y*.4:0)+textOffsetY},transition:{type:\"spring\",stiffness:130,damping:16},children:/*#__PURE__*/_jsx(\"svg\",{width:action.w*scaleText,height:action.h*scaleText,viewBox:action.vb,fill:\"none\",xmlns:\"http://www.w3.org/2000/svg\",style:{display:\"block\",overflow:\"visible\"},children:/*#__PURE__*/_jsx(\"path\",{ref:textPathRef,d:action.d,stroke:textColor,strokeWidth:textStroke,strokeLinecap:\"round\",strokeLinejoin:\"round\",fill:\"none\",strokeDasharray:textLen,strokeDashoffset:textOffset})})})]});}// ─── Property Controls ────────────────────────────────────────────────────────\naddPropertyControls(CurlyArrow,{directionSVG:{type:ControlType.Enum,title:\"Direction\",options:[\"N\",\"NE\",\"E\",\"SE\",\"S\",\"SW\",\"W\",\"NW\"],defaultValue:\"E\"},actionText:{type:ControlType.Enum,title:\"Action\",options:[\"Hover\",\"Click\",\"Drag\"],defaultValue:\"Hover\",displaySegmentedControl:true,segmentedControlDirection:\"vertical\"},colors:{type:ControlType.Object,title:\"Colors\",controls:{arrowColor:{type:ControlType.Color,title:\"Arrow\",defaultValue:\"#000000\"},textColor:{type:ControlType.Color,title:\"Text\",defaultValue:\"#000000\"}}},size:{type:ControlType.Object,title:\"Size\",controls:{arrowSize:{type:ControlType.Number,title:\"Arrow size\",defaultValue:1,min:.2,max:5,step:.1},textSize:{type:ControlType.Number,title:\"Text size\",defaultValue:1,min:.2,max:5,step:.1}}},padding:{type:ControlType.Number,title:\"Gap\",defaultValue:20,min:0,max:80,step:1,group:\"Layout\"},lineThickness:{type:ControlType.Number,title:\"Line Thickness\",defaultValue:3,min:1,max:12,step:.5,group:\"Layout\"},textOffsetX:{type:ControlType.Number,title:\"Text X\",defaultValue:0,min:-50,max:50,step:1,group:\"Layout\"},textOffsetY:{type:ControlType.Number,title:\"Text Y\",defaultValue:0,min:-50,max:50,step:1,group:\"Layout\"},componentScale:{type:ControlType.Number,title:\"Scale\",defaultValue:1,min:.2,max:2,step:.05,group:\"Layout\"},speed:{type:ControlType.Number,title:\"Speed (s)\",defaultValue:1.4,min:.2,max:6,step:.1,displayStepper:true,group:\"Animation\"},loopMode:{type:ControlType.Enum,title:\"Loop\",options:[\"Yes\",\"Frequency\",\"No\"],defaultValue:\"Yes\",displaySegmentedControl:true,segmentedControlDirection:\"vertical\",group:\"Animation\"},repeatCount:{type:ControlType.Number,title:\"Repeat Count\",defaultValue:3,min:1,max:20,step:1,hidden:props=>props.loopMode!==\"Frequency\",group:\"Animation\"},hideWhenDone:{type:ControlType.Boolean,title:\"Hide when done\",defaultValue:false,hidden:props=>props.loopMode!==\"Frequency\"&&props.loopMode!==\"No\",group:\"Animation\"}});\nexport const __FramerMetadata__ = {\"exports\":{\"CurlyArrow\":{\"type\":\"reactComponent\",\"name\":\"CurlyArrow\",\"slots\":[],\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./Directional_Text.map","import{jsx as _jsx,jsxs as _jsxs,Fragment as _Fragment}from\"react/jsx-runtime\";export function withHiddenScrollbar(Component){return props=>{return /*#__PURE__*/_jsxs(_Fragment,{children:[/*#__PURE__*/_jsx(\"style\",{children:`\n                    /* Hide scrollbar for Chrome, Safari and Opera */\n                    ::-webkit-scrollbar {\n                        display: none;\n                    }\n                    /* Hide scrollbar for IE, Edge and Firefox */\n                    body, html {\n                        -ms-overflow-style: none;  /* IE and Edge */\n                        scrollbar-width: none;  /* Firefox */\n                    }\n                `}),/*#__PURE__*/_jsx(Component,{...props})]});};}\nexport const __FramerMetadata__ = {\"exports\":{\"withHiddenScrollbar\":{\"type\":\"reactHoc\",\"name\":\"withHiddenScrollbar\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./HideScrollbar.map","import{jsx as _jsx,jsxs as _jsxs}from\"react/jsx-runtime\";import{useRef,useEffect}from\"react\";import{motion,useMotionValue,useTransform}from\"framer-motion\";import{addPropertyControls,ControlType,RenderTarget}from\"framer\";export default function SplitText({leftText=\"The future\\nit's just not\",rightText=\"is already here,\\nevenly distributed.\",font,color=\"#000000\",startSpread=600,speed=5,holdTime=25,endOffset=0,smoothing=.08}){const isCanvas=RenderTarget.current()===RenderTarget.canvas;const wrapperRef=useRef(null);const smoothRef=useRef(0);const rafRef=useRef(0);const progress=useMotionValue(0);const scrollHeight=2+speed*2;const mergeEnd=1-holdTime/100;const leftX=useTransform(progress,[0,mergeEnd],[-startSpread,endOffset],{clamp:true});const rightX=useTransform(progress,[0,mergeEnd],[startSpread,-endOffset],{clamp:true});useEffect(()=>{if(isCanvas)return;const wrapper=wrapperRef.current;if(!wrapper)return;const update=()=>{const rect=wrapper.getBoundingClientRect();const wrapperH=wrapper.offsetHeight;const vpH=window.innerHeight;const scrolled=vpH-rect.top;const raw=Math.min(1,Math.max(0,scrolled/wrapperH));smoothRef.current+=(raw-smoothRef.current)*smoothing;const mergeT=Math.min(1,smoothRef.current/mergeEnd);const eased=1-Math.pow(1-mergeT,3);progress.set(eased*mergeEnd);rafRef.current=requestAnimationFrame(update);};rafRef.current=requestAnimationFrame(update);return()=>cancelAnimationFrame(rafRef.current);},[isCanvas,smoothing,mergeEnd,progress]);const leftLines=leftText.split(\"\\n\").filter(Boolean);const rightLines=rightText.split(\"\\n\").filter(Boolean);const maxLines=Math.max(leftLines.length,rightLines.length);const sharedStyle={...font,color,display:\"inline-block\",whiteSpace:\"nowrap\"};const content=/*#__PURE__*/_jsx(\"div\",{style:{textAlign:\"center\",pointerEvents:\"auto\"},children:Array.from({length:maxLines},(_,i)=>/*#__PURE__*/_jsxs(\"div\",{style:{display:\"flex\",flexDirection:\"row\",flexWrap:\"nowrap\",justifyContent:\"center\",alignItems:\"baseline\",gap:0,margin:\"2px 0\"},children:[leftLines[i]&&/*#__PURE__*/_jsx(motion.span,{style:{...sharedStyle,x:isCanvas?0:leftX},children:leftLines[i]}),rightLines[i]&&/*#__PURE__*/_jsx(motion.span,{style:{...sharedStyle,x:isCanvas?0:rightX},children:rightLines[i]})]},i))});if(isCanvas){return /*#__PURE__*/_jsx(\"div\",{style:{width:\"100%\",height:\"100%\",display:\"flex\",alignItems:\"center\",justifyContent:\"center\"},children:content});}return /*#__PURE__*/_jsx(\"div\",{ref:wrapperRef,style:{width:\"100%\",height:`${scrollHeight*100}vh`,position:\"relative\",pointerEvents:\"none\"},children:/*#__PURE__*/_jsx(\"div\",{style:{position:\"sticky\",top:0,width:\"100%\",height:\"100vh\",display:\"flex\",alignItems:\"center\",justifyContent:\"center\",overflow:\"hidden\",pointerEvents:\"none\"},children:content})});}addPropertyControls(SplitText,{leftText:{type:ControlType.String,title:\"Left Text\",defaultValue:\"The future\\nit's just not\",displayTextArea:true},rightText:{type:ControlType.String,title:\"Right Text\",defaultValue:\"is already here,\\nevenly distributed.\",displayTextArea:true},font:{// @ts-ignore\ntype:ControlType.Font,title:\"Font\",controls:\"extended\"},color:{type:ControlType.Color,title:\"Color\",defaultValue:\"#000000\"},startSpread:{type:ControlType.Number,title:\"Start Spread\",defaultValue:600,min:100,max:2e3,step:25,description:\"How far apart (px) texts start before merging\"},speed:{type:ControlType.Number,title:\"Speed\",defaultValue:5,min:1,max:10,step:1,description:\"1 = fast merge, 10 = very slow and dramatic\"},holdTime:{type:ControlType.Number,title:\"Hold Time\",defaultValue:25,min:0,max:50,step:5,description:\"% of scroll where joined text stays pinned before releasing\"},endOffset:{type:ControlType.Number,title:\"End Offset\",defaultValue:0,min:-50,max:50,step:1,description:\"Fine-tune final gap: negative = tighter, positive = apart\"},smoothing:{type:ControlType.Number,title:\"Smoothing\",defaultValue:.08,min:.02,max:.2,step:.01,description:\"Motion smoothness: lower = silkier, higher = snappier\"}});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"SplitText\",\"slots\":[],\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./Text_Left_Right.map","import{jsx as _jsx,jsxs as _jsxs}from\"react/jsx-runtime\";import{memo,useCallback,useEffect,useMemo,useRef,useState}from\"react\";import{motion,useDragControls,useMotionValue}from\"framer-motion\";import{addPropertyControls,ControlType,RenderTarget}from\"framer\";import{createPortal}from\"react-dom\";const TITLEBAR_H=36;const CHROME_H=44;const LIGHT_BG=\"#f0f0f0\";const TITLEBAR_GRADIENT=\"linear-gradient(180deg,#ebebeb 0%,#e0e0e0 100%)\";const WINDOW_RADIUS=12;let __browserMockupZ=2147483700;function nextTopZ(){__browserMockupZ+=1;return __browserMockupZ;}function normalizeUrl(input){const raw=(input||\"\").trim();if(!raw)return\"\";if(raw.startsWith(\"http://\")||raw.startsWith(\"https://\"))return raw;return`https://${raw}`;}function inferTitleFromUrl(input){const normalized=normalizeUrl(input);if(!normalized)return\"Browser\";try{const u=new URL(normalized);const lastSeg=u.pathname.split(\"/\").filter(Boolean).pop();if(lastSeg){const cleaned=decodeURIComponent(lastSeg).replace(/[-_]+/g,\" \").replace(/\\s+/g,\" \").trim();if(cleaned)return cleaned.replace(/\\b\\w/g,m=>m.toUpperCase());}return u.hostname.replace(/^www\\./i,\"\");}catch{return\"Browser\";}}function extractTitleFromHtml(html){const m=html.match(/<title[^>]*>([\\s\\S]*?)<\\/title>/i);return m?.[1]?.replace(/\\s+/g,\" \").trim()||\"\";}function getPreviewImageUrl(input){const url=normalizeUrl(input);if(!url)return\"\";return`https://image.thum.io/get/width/1600/noanimate/${encodeURIComponent(url)}`;}function MediaFrame({src,w,h,fit=\"cover\",radius=0}){return /*#__PURE__*/_jsx(\"div\",{style:{width:w,height:h,overflow:\"hidden\",borderRadius:radius,flexShrink:0,isolation:\"isolate\"},children:/*#__PURE__*/_jsx(\"img\",{src:src,alt:\"\",draggable:false,style:{display:\"block\",width:\"100%\",height:\"100%\",objectFit:fit,imageRendering:\"auto\",transform:\"translateZ(0)\",willChange:\"transform\"}})});}const MemoMediaFrame=/*#__PURE__*/memo(MediaFrame);function GlobeIcon({sizeW,sizeH}){return /*#__PURE__*/_jsxs(\"svg\",{width:sizeW,height:sizeH,viewBox:\"0 0 48 48\",fill:\"none\",xmlns:\"http://www.w3.org/2000/svg\",children:[/*#__PURE__*/_jsx(\"rect\",{width:\"48\",height:\"48\",rx:\"12\",fill:\"#2a2a2a\"}),/*#__PURE__*/_jsx(\"circle\",{cx:\"24\",cy:\"24\",r:\"10\",stroke:\"rgba(255,255,255,0.7)\",strokeWidth:\"1.5\"}),/*#__PURE__*/_jsx(\"path\",{d:\"M24 14C24 14 20 18.5 20 24s4 10 4 10M24 14c0 0 4 4.5 4 10s-4 10-4 10M14 24h20\",stroke:\"rgba(255,255,255,0.7)\",strokeWidth:\"1.5\"})]});}function SmallGlobe(){return /*#__PURE__*/_jsxs(\"svg\",{width:14,height:14,viewBox:\"0 0 16 16\",fill:\"none\",style:{flexShrink:0,opacity:.45},children:[/*#__PURE__*/_jsx(\"circle\",{cx:\"8\",cy:\"8\",r:\"6.5\",stroke:\"rgba(0,0,0,0.55)\",strokeWidth:\"1.2\"}),/*#__PURE__*/_jsx(\"path\",{d:\"M8 1.5C8 1.5 5.5 4.5 5.5 8s2.5 6.5 2.5 6.5M8 1.5C8 1.5 10.5 4.5 10.5 8S8 14.5 8 14.5M1.5 8h13\",stroke:\"rgba(0,0,0,0.55)\",strokeWidth:\"1.2\"})]});}// Globe icon sized for the pill button\nfunction BtnGlobe(){return /*#__PURE__*/_jsxs(\"svg\",{width:13,height:13,viewBox:\"0 0 16 16\",fill:\"none\",style:{flexShrink:0},children:[/*#__PURE__*/_jsx(\"circle\",{cx:\"8\",cy:\"8\",r:\"6.5\",stroke:\"currentColor\",strokeWidth:\"1.3\"}),/*#__PURE__*/_jsx(\"path\",{d:\"M8 1.5C8 1.5 5.5 4.5 5.5 8s2.5 6.5 2.5 6.5M8 1.5C8 1.5 10.5 4.5 10.5 8S8 14.5 8 14.5M1.5 8h13\",stroke:\"currentColor\",strokeWidth:\"1.3\"})]});}function TrafficLight({bg,sym,tooltip,onClick}){return /*#__PURE__*/_jsx(\"div\",{title:tooltip,onClick:e=>{e.stopPropagation();onClick();},onMouseDown:e=>e.stopPropagation(),style:{width:12,height:12,borderRadius:\"50%\",background:bg,border:\"0.5px solid rgba(0,0,0,0.18)\",display:\"flex\",alignItems:\"center\",justifyContent:\"center\",cursor:\"pointer\",flexShrink:0,transition:\"filter 100ms\"},onMouseEnter:e=>{const el=e.currentTarget;el.style.filter=\"brightness(0.85)\";const symEl=el.querySelector(\"span\");if(symEl)symEl.style.opacity=\"1\";},onMouseLeave:e=>{const el=e.currentTarget;el.style.filter=\"\";const symEl=el.querySelector(\"span\");if(symEl)symEl.style.opacity=\"0\";},children:/*#__PURE__*/_jsx(\"span\",{style:{fontSize:7.5,color:\"rgba(0,0,0,0.55)\",lineHeight:1,fontWeight:800,opacity:0,pointerEvents:\"none\"},children:sym})});}function BrowserWindowPortal({winState,setWinState,viewerWidth,viewerHeight,urlBarText,externalUrl,contentImage,contentImageUrl,faviconSrc,stiffness,damping,mass,draggable,enableWindowControls,windowTitle,minimizedWidth,zIndex,bringToFront,liveEmbed}){const isCanvas=RenderTarget.current()===RenderTarget.canvas;const isFullscreen=winState===\"fullscreen\";const isMinimized=winState===\"minimized\";const dragControls=useDragControls();const x=useMotionValue(0);const y=useMotionValue(0);const isDragging=useRef(false);const focusRef=useRef(null);useEffect(()=>{if(isCanvas)return;if(winState===\"open\"||winState===\"fullscreen\"){const raf=requestAnimationFrame(()=>focusRef.current?.focus());return()=>cancelAnimationFrame(raf);}},[isCanvas,winState]);useEffect(()=>{if(winState===\"open\"){x.set(0);y.set(0);}},[winState]);const spring=useMemo(()=>({type:\"spring\",stiffness,damping,mass}),[stiffness,damping,mass]);const startDrag=useCallback(e=>{if(!draggable)return;if(isFullscreen)return;if(isMinimized){setWinState(\"open\");return;}bringToFront();isDragging.current=true;if(e.detail===2)return;dragControls.start(e);},[bringToFront,dragControls,draggable,isFullscreen,isMinimized,setWinState]);const viewerW=isMinimized?minimizedWidth:viewerWidth;const viewerH=isMinimized?TITLEBAR_H:TITLEBAR_H+CHROME_H+viewerHeight;const windowStyle=isFullscreen?{position:\"fixed\",inset:0,width:\"100vw\",height:\"100vh\",borderRadius:0,zIndex,overflow:\"hidden\",display:\"flex\",flexDirection:\"column\",background:LIGHT_BG,boxShadow:\"none\",border:\"none\",userSelect:isDragging.current?\"none\":\"auto\",outline:\"none\"}:{position:\"fixed\",left:\"50%\",top:\"50%\",width:viewerW,height:viewerH,borderRadius:WINDOW_RADIUS,zIndex,overflow:\"hidden\",display:\"flex\",flexDirection:\"column\",background:LIGHT_BG,boxShadow:isMinimized?\"0 4px 24px rgba(0,0,0,0.18), 0 1px 6px rgba(0,0,0,0.10)\":\"0 2px 4px rgba(0,0,0,0.10), 0 16px 48px rgba(0,0,0,0.18), 0 40px 80px rgba(0,0,0,0.12)\",border:\"1px solid rgba(0,0,0,0.16)\",transition:\"border-radius 200ms ease, box-shadow 200ms ease, width 220ms ease, height 220ms ease\",userSelect:isDragging.current?\"none\":\"auto\",outline:\"none\"};const contentSrc=contentImageUrl&&contentImageUrl!==\"\"?contentImageUrl:contentImage||\"\";const iframeSrc=normalizeUrl(externalUrl);const previewSrc=getPreviewImageUrl(externalUrl);const[frameLoaded,setFrameLoaded]=useState(false);const[showFrameFallback,setShowFrameFallback]=useState(false);useEffect(()=>{setFrameLoaded(false);setShowFrameFallback(false);if(!iframeSrc)return;const t=window.setTimeout(()=>{setShowFrameFallback(true);},5e3);return()=>window.clearTimeout(t);},[iframeSrc]);if(typeof document===\"undefined\")return null;if(isCanvas)return null;return /*#__PURE__*/createPortal(/*#__PURE__*/_jsxs(motion.div,{ref:focusRef,tabIndex:0,onMouseDown:()=>bringToFront(),onPointerDown:()=>bringToFront(),onWheel:e=>e.stopPropagation(),onKeyDown:e=>{if(e.key===\"Escape\"){e.preventDefault();setWinState(\"closed\");}if(e.key===\"f\"&&(e.metaKey||e.ctrlKey)){e.preventDefault();setWinState(s=>s===\"fullscreen\"?\"open\":\"fullscreen\");}},initial:false,animate:false,drag:!isFullscreen&&draggable&&!isMinimized,dragControls:dragControls,dragListener:false,dragMomentum:false,style:isFullscreen?windowStyle:{...windowStyle,x,y,translateX:\"-50%\",translateY:\"-50%\",willChange:\"transform\"},children:[/*#__PURE__*/_jsxs(\"div\",{onPointerDown:startDrag,onDoubleClick:()=>setWinState(s=>s===\"fullscreen\"?\"open\":\"fullscreen\"),style:{height:TITLEBAR_H,flexShrink:0,background:TITLEBAR_GRADIENT,borderBottom:isMinimized?\"none\":\"1px solid rgba(0,0,0,0.14)\",display:\"flex\",alignItems:\"center\",padding:\"0 12px\",cursor:draggable&&!isFullscreen?isMinimized?\"pointer\":\"grab\":\"default\",position:\"relative\",userSelect:\"none\"},children:[enableWindowControls&&/*#__PURE__*/_jsxs(\"div\",{style:{display:\"flex\",gap:6,alignItems:\"center\",zIndex:1},children:[/*#__PURE__*/_jsx(TrafficLight,{bg:\"#ff5f57\",sym:\"\\xd7\",tooltip:\"Close\",onClick:()=>setWinState(\"closed\")}),/*#__PURE__*/_jsx(TrafficLight,{bg:\"#febc2e\",sym:\"−\",tooltip:\"Minimize\",onClick:()=>setWinState(s=>s===\"fullscreen\"?\"open\":s===\"minimized\"?\"open\":\"minimized\")}),/*#__PURE__*/_jsx(TrafficLight,{bg:\"#28c840\",sym:\"+\",tooltip:\"Fullscreen\",onClick:()=>setWinState(s=>s===\"fullscreen\"?\"open\":\"fullscreen\")})]}),/*#__PURE__*/_jsx(\"div\",{style:{position:enableWindowControls?\"absolute\":\"relative\",left:enableWindowControls?\"50%\":undefined,transform:enableWindowControls?\"translateX(-50%)\":undefined,flex:enableWindowControls?undefined:1,textAlign:\"center\",fontSize:12,fontWeight:500,color:\"#2a2a2a\",letterSpacing:-.1,whiteSpace:\"nowrap\",overflow:\"hidden\",textOverflow:\"ellipsis\",maxWidth:enableWindowControls?\"55%\":\"100%\",pointerEvents:\"none\"},children:windowTitle}),/*#__PURE__*/_jsxs(\"div\",{style:{position:\"absolute\",right:12,display:\"flex\",alignItems:\"center\",gap:8,pointerEvents:\"none\"},children:[isFullscreen&&/*#__PURE__*/_jsx(\"span\",{style:{fontSize:9,color:\"rgba(0,0,0,0.35)\",background:\"rgba(0,0,0,0.07)\",borderRadius:4,padding:\"1px 5px\",letterSpacing:.3},children:\"fullscreen\"}),!isFullscreen&&!isMinimized&&draggable&&/*#__PURE__*/_jsx(\"span\",{style:{fontSize:11,color:\"rgba(0,0,0,0.18)\"},children:\"⠿\"})]})]}),!isMinimized&&/*#__PURE__*/_jsxs(\"div\",{style:{flex:1,display:\"flex\",flexDirection:\"column\",minHeight:0},children:[/*#__PURE__*/_jsxs(\"div\",{style:{height:CHROME_H,flexShrink:0,background:\"linear-gradient(180deg,#f6f6f6 0%,#efeff1 100%)\",display:\"flex\",alignItems:\"center\",padding:\"0 10px 0 14px\",gap:8,borderBottom:\"1px solid rgba(0,0,0,0.08)\"},children:[/*#__PURE__*/_jsxs(\"div\",{style:{flex:1,height:28,background:\"rgba(0,0,0,0.04)\",borderRadius:8,display:\"flex\",alignItems:\"center\",padding:\"0 10px\",gap:8,overflow:\"hidden\",border:\"1px solid rgba(0,0,0,0.08)\"},children:[faviconSrc?/*#__PURE__*/_jsx(MemoMediaFrame,{src:faviconSrc,w:14,h:14,fit:\"contain\"}):/*#__PURE__*/_jsx(SmallGlobe,{}),/*#__PURE__*/_jsx(\"span\",{style:{fontSize:12,color:\"rgba(0,0,0,0.45)\",fontFamily:\"system-ui, -apple-system, sans-serif\",overflow:\"hidden\",textOverflow:\"ellipsis\",whiteSpace:\"nowrap\",flex:1,letterSpacing:\"0.01em\"},children:urlBarText||\"about:blank\"})]}),iframeSrc&&/*#__PURE__*/_jsxs(\"button\",{onMouseDown:e=>e.stopPropagation(),onClick:e=>{e.stopPropagation();window.open(iframeSrc,\"_blank\",\"noopener,noreferrer\");},title:\"Open in New Tab\",style:{display:\"flex\",alignItems:\"center\",gap:5,height:28,padding:\"0 10px\",background:\"rgba(0,0,0,0.055)\",border:\"1px solid rgba(0,0,0,0.10)\",borderRadius:8,cursor:\"pointer\",flexShrink:0,color:\"rgba(0,0,0,0.52)\",fontSize:11.5,fontFamily:\"system-ui, -apple-system, sans-serif\",fontWeight:500,letterSpacing:\"0.01em\",whiteSpace:\"nowrap\",transition:\"background 120ms, color 120ms\",WebkitFontSmoothing:\"antialiased\"},onMouseEnter:e=>{const el=e.currentTarget;el.style.background=\"rgba(0,0,0,0.09)\";el.style.color=\"rgba(0,0,0,0.75)\";},onMouseLeave:e=>{const el=e.currentTarget;el.style.background=\"rgba(0,0,0,0.055)\";el.style.color=\"rgba(0,0,0,0.52)\";},children:[/*#__PURE__*/_jsx(BtnGlobe,{}),\"Open in New Tab\"]})]}),/*#__PURE__*/_jsx(\"div\",{style:{flex:1,width:\"100%\",minHeight:0,position:\"relative\",background:\"#fff\"},children:externalUrl&&liveEmbed?/*#__PURE__*/_jsxs(\"div\",{style:{position:\"absolute\",inset:0},children:[/*#__PURE__*/_jsx(\"iframe\",{src:iframeSrc,style:{width:\"100%\",height:\"100%\",border:\"none\",display:\"block\",background:\"#fff\"},referrerPolicy:\"no-referrer-when-downgrade\",allow:\"fullscreen; clipboard-read; clipboard-write\",loading:\"lazy\",onLoad:()=>{setFrameLoaded(true);setShowFrameFallback(false);}}),showFrameFallback&&!frameLoaded&&/*#__PURE__*/_jsxs(\"div\",{style:{position:\"absolute\",inset:0,display:\"flex\",flexDirection:\"column\",alignItems:\"center\",justifyContent:\"center\",gap:10,background:\"#fff\",color:\"rgba(0,0,0,0.62)\",fontFamily:\"system-ui, -apple-system, sans-serif\",padding:20,textAlign:\"center\"},children:[previewSrc?/*#__PURE__*/_jsx(\"img\",{src:previewSrc,alt:\"\",style:{width:\"100%\",height:\"100%\",objectFit:\"cover\",display:\"block\"}}):null,/*#__PURE__*/_jsxs(\"div\",{style:{position:\"absolute\",left:12,right:12,bottom:12,background:\"rgba(255,255,255,0.94)\",border:\"1px solid rgba(0,0,0,0.12)\",borderRadius:10,padding:\"10px 12px\",display:\"flex\",alignItems:\"center\",justifyContent:\"space-between\",gap:10},children:[/*#__PURE__*/_jsx(\"div\",{style:{fontSize:12,color:\"rgba(0,0,0,0.68)\",textAlign:\"left\",overflow:\"hidden\",textOverflow:\"ellipsis\",whiteSpace:\"nowrap\",flex:1},children:\"Live embed blocked by website. Open full page.\"}),/*#__PURE__*/_jsx(\"button\",{onClick:()=>window.open(iframeSrc,\"_blank\",\"noopener,noreferrer\"),style:{border:\"1px solid rgba(0,0,0,0.15)\",background:\"#f5f5f5\",borderRadius:8,padding:\"7px 12px\",cursor:\"pointer\",fontSize:12,flexShrink:0},children:\"Open URL\"})]})]})]}):contentSrc?// ── Fallback image: full width, natural height, top-aligned, scrollable ──\n/*#__PURE__*/_jsx(\"div\",{style:{position:\"absolute\",inset:0,overflowY:\"auto\",overflowX:\"hidden\"},children:/*#__PURE__*/_jsx(\"img\",{src:contentSrc,alt:\"\",draggable:false,style:{display:\"block\",width:\"100%\",height:\"auto\"}})}):/*#__PURE__*/_jsx(\"div\",{style:{position:\"absolute\",inset:0,display:\"flex\",alignItems:\"center\",justifyContent:\"center\",background:\"#ffffff\",color:\"rgba(0,0,0,0.25)\",fontSize:12,fontFamily:\"system-ui, -apple-system, sans-serif\",letterSpacing:\"0.05em\"},children:\"No content\"})})]})]}),document.body);}export default function BrowserMockup({viewerWidth=800,viewerHeight=500,iconWidth=48,iconHeight=48,contentImage,contentImageUrl=\"\",iconImage,iconImageUrl=\"\",faviconImage,faviconUrl=\"\",externalUrl=\"\",urlBarText=\"\",windowTitle=\"\",stiffness=97,damping=30,mass=2.4,draggable=true,enableWindowControls=true,minimizedWidth=280,liveEmbed=false}){const isCanvas=RenderTarget.current()===RenderTarget.canvas;const triggerIconSrc=iconImageUrl!==\"\"?iconImageUrl:iconImage||\"\";const faviconSrc=faviconUrl!==\"\"?faviconUrl:faviconImage||\"\";const[winState,setWinState]=useState(\"closed\");const[zIndex,setZIndex]=useState(()=>nextTopZ());const bringToFront=useCallback(()=>setZIndex(nextTopZ()),[]);useEffect(()=>{if(isCanvas){setWinState(\"closed\");}},[isCanvas]);useEffect(()=>{if(winState!==\"closed\")bringToFront();},[winState,bringToFront]);const spring=useMemo(()=>({type:\"spring\",stiffness,damping,mass}),[stiffness,damping,mass]);const normalizedExternalUrl=normalizeUrl(externalUrl);const[fetchedTitle,setFetchedTitle]=useState(\"\");const actualUrlBarText=urlBarText||normalizedExternalUrl||\"about:blank\";const rawUserTitle=(windowTitle||\"\").trim();const shouldUseUserTitle=rawUserTitle!==\"\"&&rawUserTitle.toLowerCase()!==\"browser\";const actualWindowTitle=shouldUseUserTitle?rawUserTitle:fetchedTitle||inferTitleFromUrl(normalizedExternalUrl);useEffect(()=>{let mounted=true;const target=normalizeUrl(externalUrl);if(!target){setFetchedTitle(\"\");return;}if(winState===\"closed\")return;const ctrl=new AbortController;(async()=>{try{const res=await fetch(target,{signal:ctrl.signal});const html=await res.text();const title=extractTitleFromHtml(html);if(mounted)setFetchedTitle(title);}catch{if(mounted)setFetchedTitle(\"\");}})();return()=>{mounted=false;ctrl.abort();};},[externalUrl,winState]);const onIconClick=useCallback(()=>{if(isCanvas)return;bringToFront();setWinState(s=>{if(s===\"closed\")return\"open\";if(s===\"minimized\")return\"open\";return s;});},[bringToFront,isCanvas]);return /*#__PURE__*/_jsxs(\"div\",{style:{width:iconWidth,height:iconHeight,position:\"relative\",fontFamily:\"-apple-system,BlinkMacSystemFont,'SF Pro Text',sans-serif\"},children:[/*#__PURE__*/_jsx(motion.div,{initial:false,whileHover:isCanvas?{}:{scale:1.08},onClick:onIconClick,style:{cursor:isCanvas?\"default\":\"pointer\",display:\"inline-flex\",borderRadius:0,overflow:\"hidden\",transformOrigin:\"center\",userSelect:\"none\",willChange:\"transform\"},children:triggerIconSrc?/*#__PURE__*/_jsx(MemoMediaFrame,{src:triggerIconSrc,w:iconWidth,h:iconHeight,fit:\"contain\"}):/*#__PURE__*/_jsx(GlobeIcon,{sizeW:iconWidth,sizeH:iconHeight})}),!isCanvas&&winState!==\"closed\"&&/*#__PURE__*/_jsx(BrowserWindowPortal,{winState:winState,setWinState:setWinState,viewerWidth:viewerWidth,viewerHeight:viewerHeight,urlBarText:actualUrlBarText,externalUrl:normalizedExternalUrl,contentImage:contentImage,contentImageUrl:contentImageUrl,faviconSrc:faviconSrc,stiffness:stiffness,damping:damping,mass:mass,draggable:draggable,enableWindowControls:enableWindowControls,windowTitle:actualWindowTitle,minimizedWidth:minimizedWidth,zIndex:zIndex,bringToFront:bringToFront,liveEmbed:liveEmbed})]});}addPropertyControls(BrowserMockup,{windowTitle:{type:ControlType.String,title:\"Window Title\",defaultValue:\"\",placeholder:\"Auto from URL when empty\"},liveEmbed:{type:ControlType.Boolean,title:\"Live Embed\",defaultValue:false,enabledTitle:\"On\",disabledTitle:\"Off\"},externalUrl:{type:ControlType.String,title:\"URL\",defaultValue:\"\",placeholder:\"https://example.com\"},urlBarText:{type:ControlType.String,title:\"URL Bar Text\",defaultValue:\"\",placeholder:\"If empty, uses URL\"},viewerWidth:{type:ControlType.Number,title:\"Viewer W\",defaultValue:800,min:200,max:1600,step:10},viewerHeight:{type:ControlType.Number,title:\"Viewer H\",defaultValue:500,min:100,max:1200,step:10},iconWidth:{type:ControlType.Number,title:\"Icon W\",defaultValue:48,min:16,max:128,step:1},iconHeight:{type:ControlType.Number,title:\"Icon H\",defaultValue:48,min:16,max:128,step:1},draggable:{type:ControlType.Boolean,title:\"Draggable\",defaultValue:true,enabledTitle:\"Yes\",disabledTitle:\"No\"},enableWindowControls:{type:ControlType.Boolean,title:\"Window Controls\",defaultValue:true,enabledTitle:\"Visible\",disabledTitle:\"Hidden\"},minimizedWidth:{type:ControlType.Number,title:\"Minimized W\",defaultValue:280,min:200,max:600,step:4},stiffness:{type:ControlType.Number,title:\"Stiffness\",defaultValue:97,min:10,max:500,step:1},damping:{type:ControlType.Number,title:\"Damping\",defaultValue:30,min:1,max:100,step:1},mass:{type:ControlType.Number,title:\"Mass\",defaultValue:2.4,min:.1,max:10,step:.1},iconImage:{type:ControlType.Image,title:\"Icon Image\"},iconImageUrl:{type:ControlType.String,title:\"↳ Icon URL\",defaultValue:\"\",placeholder:\"https://... (overrides upload)\"},faviconImage:{type:ControlType.Image,title:\"Favicon\"},faviconUrl:{type:ControlType.String,title:\"↳ Favicon URL\",defaultValue:\"\",placeholder:\"https://... (overrides upload)\"},contentImage:{type:ControlType.Image,title:\"Screenshot (fallback)\"},contentImageUrl:{type:ControlType.String,title:\"↳ Screenshot URL\",defaultValue:\"\",placeholder:\"https://... (overrides upload)\"}});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"BrowserMockup\",\"slots\":[],\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./URL_Viewer.map"],"mappings":"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"}