{"version":3,"file":"F9DvDM83Y.CtiI7Z_q.mjs","names":["useId","useState","useRef","u","useCallback","p","useMemo","_Fragment","MiniClock","AnalogClock","i","IslandShell","useId","useMemo","useRef","u","useCallback","useState","_Fragment","FeatherIcon","CustomIcon","p","useRef","p","i","_Fragment","pe","_Fragment","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","i"],"sources":["https:/framerusercontent.com/modules/IANMzXuuT4B0bFJ1x8VN/AH9XvFxn71qWEwv5ngvo/DynamicIslandClock.js","https:/framerusercontent.com/modules/KY0Zy4ZJVf3qOhPAkoa8/Qov2QS3sTJfgIDMFBLJq/GlassButton.js","https:/framerusercontent.com/modules/cMdSptgYgsgsRQU7yFC8/p8WmnACYT1rPa0kD9oG5/Gradient_Scroll_Transition.js","https:/framerusercontent.com/modules/EO1mQglSv8vgBO2f0NWE/2ftw9iSDTTahtJmz3VQ4/HD_Image_1.js","https:/framerusercontent.com/modules/Gtd65WjnbZA0BlJxJ3J6/dW8PEnMARWuKW77Qc524/HideScrollbar.js","https:/framerusercontent.com/modules/LZPIy4MumsU2D4d16pOl/6mwvRhhi49PQDWe4LMrP/Receipt_3d.js","https:/framerusercontent.com/modules/zftvE0eWxrk3oNatdsn0/zJI0T0MeO95QUJ4GkIew/Text_Left_Right.js","https:/framerusercontent.com/modules/MNcLIkhef7LdDOd921nd/65sEi9cBv26fVmBuOTTG/F9DvDM83Y.js"],"sourcesContent":["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;const getTimePartsInTZ=(date,tz)=>{try{const parts=new Intl.DateTimeFormat(\"en-US\",{hour:\"numeric\",minute:\"2-digit\",second:\"2-digit\",hour12:false,timeZone:tz}).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{const h24=date.getHours();return{h24,h12:h24%12,m:date.getMinutes(),s:date.getSeconds()};}};const toClockAngles=(h12,m,s)=>({secDeg:s*6,minDeg:m*6+s*.1,hourDeg:h12*30+m*.5});const fmtTimeInTZ=(date,tz)=>{try{return new Intl.DateTimeFormat(\"en-US\",{hour:\"numeric\",minute:\"2-digit\",hour12:true,timeZone:tz}).format(date);}catch{return date.toLocaleTimeString(\"en-US\",{hour:\"numeric\",minute:\"2-digit\",hour12:true});}};const fmtDateInTZ=(date,tz)=>{try{return new Intl.DateTimeFormat(\"en-US\",{month:\"short\",day:\"numeric\",timeZone:tz}).format(date);}catch{return date.toLocaleDateString(\"en-US\",{month:\"short\",day:\"numeric\"});}};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 ──────────────────────────────────────────────────────────────────\nconst BUTTON_H=42;const CARD_W=320;// ── Feather icons — inlined SVG paths (no external dependency) ─────────────────\n// Source: https://feathericons.com (MIT License)\n// Each value is the inner SVG path/shape string; wrapper adds size, color, viewBox\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-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 (uploaded PNG / SVG file) ───────────────────────────────\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};}// ── Main component ─────────────────────────────────────────────────────────────\nexport default function GlassButton(props){const{buttonContent={},buttonStyle={},icons={},linkPreview={},haptics={},style}=props;// Content\nconst{label=\"Get Started\",href=\"\",openInNewTab=true}=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\nconst{mode:previewMode=\"Auto Fetch\",image:previewImage,offsetX=0,offsetY=-36,scale:previewScale=.6,bg:cardBg=\"#1B2128\"}=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[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;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{return href?new URL(href.startsWith(\"http\")?href:`https://${href}`).hostname.replace(\"www.\",\"\"):\"\";}catch{return\"\";}},[href]);const showCard=hovered&&!!href&&(previewMode===\"Auto Fetch\"?!!cardTitle||fetchLoading||!!cardImage:!!previewImage);const estCardH=previewMode===\"Custom Image\"?180:cardImage?240:80;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]);// ── 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};const handleClick=useCallback(()=>{playClickSound();if(href){if(openInNewTab)window.open(href,\"_blank\",\"noopener,noreferrer\");else window.location.href=href;}},[playClickSound,href,openInNewTab]);// ── Hover card ─────────────────────────────────────────────────────────────\nconst cardJSX=/*#__PURE__*/_jsx(AnimatePresence,{children:showCard&&/*#__PURE__*/_jsx(motion.div,{initial:{opacity:0,y:8},animate:{opacity:1,y:0},exit:{opacity:0,y:8,transition:{duration:.12}},transition:{duration:.22,ease:[.16,1,.3,1]},style:{position:\"fixed\",left:cardX,top:cardY,width:CARD_W,zIndex:99999,pointerEvents:\"none\",scale:previewScale,transformOrigin:\"top left\",borderRadius:16,overflow:\"hidden\",background:cardBg,boxShadow:\"0 24px 64px rgba(0,0,0,0.45), 0 0 0 1px rgba(255,255,255,0.07)\"},children:previewMode===\"Custom Image\"?/*#__PURE__*/_jsx(\"div\",{style:{width:\"100%\",aspectRatio:\"16/9\",overflow:\"hidden\"},children:/*#__PURE__*/_jsx(\"img\",{src:previewImage,alt:\"\",style:{width:\"100%\",height:\"100%\",objectFit:\"cover\",display:\"block\"}})}):/*#__PURE__*/_jsxs(\"div\",{style:{display:\"flex\",flexDirection:\"column\"},children:[cardImage?/*#__PURE__*/_jsx(\"div\",{style:{width:\"100%\",height:160,overflow:\"hidden\"},children:/*#__PURE__*/_jsx(\"img\",{src:cardImage,alt:\"\",style:{width:\"100%\",height:\"100%\",objectFit:\"cover\",display:\"block\"}})}):fetchLoading?/*#__PURE__*/_jsx(\"div\",{style:{width:\"100%\",height:160,background:\"rgba(255,255,255,0.06)\"}}):null,/*#__PURE__*/_jsxs(\"div\",{style:{padding:\"14px 16px 16px\",display:\"flex\",flexDirection:\"column\",gap:6},children:[cardTitle&&/*#__PURE__*/_jsx(\"div\",{style:{color:\"#fff\",fontSize:13,fontWeight:600,fontFamily:\"Inter, sans-serif\",lineHeight:1.3,overflow:\"hidden\",display:\"-webkit-box\",WebkitLineClamp:2,WebkitBoxOrient:\"vertical\"},children:cardTitle}),cardDesc&&/*#__PURE__*/_jsx(\"div\",{style:{color:\"rgba(255,255,255,0.5)\",fontSize:11,lineHeight:1.4,fontFamily:\"Inter, sans-serif\",overflow:\"hidden\",display:\"-webkit-box\",WebkitLineClamp:2,WebkitBoxOrient:\"vertical\"},children:cardDesc}),/*#__PURE__*/_jsxs(\"div\",{style:{display:\"flex\",alignItems:\"center\",gap:6,marginTop:2},children:[cardFavicon&&/*#__PURE__*/_jsx(\"img\",{src:cardFavicon,alt:\"\",style:{width:14,height:14,borderRadius:3,objectFit:\"cover\"}}),/*#__PURE__*/_jsx(\"div\",{style:{color:\"rgba(255,255,255,0.3)\",fontSize:10,fontFamily:\"Inter, sans-serif\",letterSpacing:.3,textTransform:\"uppercase\"},children:cardDomain})]})]})]})},\"gb-preview-card\")});// ── Button element ─────────────────────────────────────────────────────────\nconst buttonEl=/*#__PURE__*/_jsxs(motion.button,{onClick:handleClick,onMouseEnter:()=>setHovered(true),onMouseLeave:()=>setHovered(false),onMouseMove:handleMouseMove,className:bgPropsClass||undefined,whileHover:{scale:1.04},whileTap:{scale:.96},transition:{type:\"spring\",stiffness:400,damping:28},style:{...bgPropsStyle,height:BUTTON_H,width:useCustomWidth?customWidth:\"auto\",borderRadius:borderRadius,border:\"none\",outline:\"none\",cursor:\"pointer\",display:\"inline-flex\",alignItems:\"center\",justifyContent:\"center\",gap:iconGap,padding:`0 ${paddingH}px`,boxSizing:\"border-box\",position:\"relative\"},children:[showLeft&&/*#__PURE__*/_jsx(RenderIcon,{iconType:leftIconType,featherIcon:leftFeatherIcon,customSrc:leftCustomIcon,size:iconSize,color:textColor,strokeWidth:iconStrokeWidth}),/*#__PURE__*/_jsx(\"span\",{style:labelStyle,children:label}),showRight&&/*#__PURE__*/_jsx(RenderIcon,{iconType:rightIconType,featherIcon:rightFeatherIcon,customSrc:rightCustomIcon,size:iconSize,color:textColor,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://…\"},openInNewTab:{type:ControlType.Boolean,title:\"Open In\",defaultValue:true,enabledTitle:\"New Tab\",disabledTitle:\"Same Tab\"}}},// ── 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\"},// ── Left ────────────────────────────────────────────────────────────\nleftIconType:{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\"},// ── Right ───────────────────────────────────────────────────────────\nrightIconType:{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\"},// ── Shared ──────────────────────────────────────────────────────────\niconSize:{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 ───────────────────────────────────────────────────────────\nlinkPreview:{type:ControlType.Object,title:\"Link Preview\",controls:{mode:{type:ControlType.Enum,title:\"Preview Type\",options:[\"Auto Fetch\",\"Custom Image\"],defaultValue:\"Auto Fetch\",displaySegmentedControl:true,segmentedControlDirection:\"vertical\"},image:{type:ControlType.Image,title:\"Image\",hidden:p=>p?.mode!==\"Custom Image\"},scale:{type:ControlType.Number,title:\"Scale\",defaultValue:.6,min:.1,max:5,step:.05},bg:{type:ControlType.Color,title:\"Card BG\",defaultValue:\"#1B2128\"},offsetX:{type:ControlType.Number,title:\"Offset X\",defaultValue:0,min:-300,max:300,step:4},offsetY:{type:ControlType.Number,title:\"Offset Y\",defaultValue:-36,min:-300,max:300,step:4}}},// ── 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\"}},\"__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","import{jsx as _jsx,jsxs as _jsxs,Fragment as _Fragment}from\"react/jsx-runtime\";import{addPropertyControls,ControlType}from\"framer\";import{motion,useMotionValue,useSpring}from\"framer-motion\";// ─── Noise Texture ──────────────────────────────────────────────────────────\nlet _noiseCache=null;function getNoiseDataURL(){if(_noiseCache)return _noiseCache;if(typeof document===\"undefined\")return\"\";const size=256;const canvas=document.createElement(\"canvas\");canvas.width=canvas.height=size;const ctx=canvas.getContext(\"2d\");if(!ctx)return\"\";const img=ctx.createImageData(size,size);const d=img.data;for(let i=0;i<d.length;i+=4){const v=Math.random()*255|0;d[i]=d[i+1]=d[i+2]=v;d[i+3]=255;}ctx.putImageData(img,0,0);_noiseCache=canvas.toDataURL(\"image/png\");return _noiseCache;}// ─── Perfect Backdrop Progressive Blur (Zero PNG Color Bleed) ──────────────\nfunction BackdropProgressiveBlur({startPercent,endPercent,maxBlur,angle=\"to bottom\",keyPrefix=\"blur\",fadeDirection=\"in\"}){// 8 steps creates a flawless optical ramp\nconst steps=8;const layers=[];// Ensure we do math in a predictable direction even if user swaps start/end\nconst minP=Math.min(startPercent,endPercent);const maxP=Math.max(startPercent,endPercent);const stepSize=(maxP-minP)/steps;for(let i=1;i<=steps;i++){const currentBlur=maxBlur*(i/steps);let maskString=\"\";if(fadeDirection===\"in\"){// Standard bottom fade: Blur gets stronger towards maxP\nconst stop1=minP+stepSize*(i-1);const stop2=minP+stepSize*i;maskString=`linear-gradient(${angle}, rgba(0,0,0,0) ${stop1}%, rgba(0,0,0,1) ${stop2}%)`;}else{// Left/Right fade: Max blur at minP edge, fading out to 0 blur by maxP\nconst stop1=maxP-stepSize*i;const stop2=maxP-stepSize*(i-1);maskString=`linear-gradient(${angle}, rgba(0,0,0,1) ${stop1}%, rgba(0,0,0,0) ${stop2}%)`;}layers.push(/*#__PURE__*/_jsx(\"div\",{style:{position:\"absolute\",inset:0,// Backdrop filter perfectly ignores dirty PNG alpha color data\nbackdropFilter:`blur(${currentBlur}px)`,WebkitBackdropFilter:`blur(${currentBlur}px)`,maskImage:maskString,WebkitMaskImage:maskString,maskRepeat:\"no-repeat\",WebkitMaskRepeat:\"no-repeat\",zIndex:i,pointerEvents:\"none\"}},`${keyPrefix}-${i}`));}return /*#__PURE__*/_jsx(_Fragment,{children:layers});}// ─── Main Component ─────────────────────────────────────────────────────────\nexport default function HighResImage(props){const{imageUrl,image,scale=1,cropX=50,cropY=50,photoEditing,enableParallax=false,parallaxIntensity=5,progBlur,edgeFeather,...framerProps}=props;const defaultImage=\"https://framerusercontent.com/images/4kJ2X4WNEO0114t5wA4qFvI.png\";const imageSource=imageUrl!==\"\"?imageUrl:image||defaultImage;// ─── Photo Filters ───────────────────────────────────────────────────────\nconst pe=photoEditing||{};const brightness=pe.brightness??100;const contrast=pe.contrast??100;const saturation=pe.saturation??100;const hue=pe.hue??0;const temp=pe.temperature||0;const noise=pe.noise||0;const film=pe.filmSimulation||\"None\";const filters=[];if(brightness!==100)filters.push(`brightness(${brightness}%)`);if(contrast!==100)filters.push(`contrast(${contrast}%)`);if(saturation!==100)filters.push(`saturate(${saturation}%)`);if(hue!==0)filters.push(`hue-rotate(${hue}deg)`);if(film===\"Fuji Provia\")filters.push(\"contrast(105%) saturate(110%)\");if(film===\"Fuji Velvia\")filters.push(\"contrast(120%) saturate(130%)\");if(film===\"Fuji Astia\")filters.push(\"contrast(90%) saturate(105%) brightness(105%)\");if(film===\"Kodak Portra\")filters.push(\"contrast(95%) saturate(105%) sepia(10%) hue-rotate(-5deg)\");if(film===\"Kodak Gold\")filters.push(\"contrast(105%) saturate(120%) sepia(20%) hue-rotate(5deg)\");if(pe.pastelTone)filters.push(\"brightness(115%) contrast(80%) saturate(85%)\");const filterString=filters.length>0?filters.join(\" \"):\"none\";// ─── Properties ──────────────────────────────────────────────────────────\nconst pb=progBlur||{};const ef=edgeFeather||{};const isFramerLink=\"href\"in framerProps;const Wrapper=isFramerLink?\"a\":\"div\";// ─── Parallax ────────────────────────────────────────────────────────────\nconst x=useMotionValue(0);const y=useMotionValue(0);const springConfig={damping:40,stiffness:50,mass:1.5};const smoothX=useSpring(x,springConfig);const smoothY=useSpring(y,springConfig);const handlePointerMove=e=>{if(!enableParallax)return;const rect=e.currentTarget.getBoundingClientRect();const cx=rect.left+rect.width/2;const cy=rect.top+rect.height/2;const maxDist=parallaxIntensity*4;x.set((e.clientX-cx)/(rect.width/2)*maxDist);y.set((e.clientY-cy)/(rect.height/2)*maxDist);};const handlePointerLeave=()=>{if(!enableParallax)return;x.set(0);y.set(0);};// Base styling for the image itself\nconst baseImageStyle={display:\"block\",width:\"100%\",height:\"100%\",objectFit:\"cover\",objectPosition:`${cropX}% ${cropY}%`,transformOrigin:\"center center\",willChange:enableParallax?\"transform\":\"auto\",transform:`scale(${scale}) translateZ(0)`};// Mask styling to force overlays to respect PNG transparency & scale\nconst overlayMaskStyle={maskImage:`url(\"${imageSource}\")`,WebkitMaskImage:`url(\"${imageSource}\")`,maskSize:\"cover\",WebkitMaskSize:\"cover\",maskPosition:`${cropX}% ${cropY}%`,WebkitMaskPosition:`${cropX}% ${cropY}%`,maskRepeat:\"no-repeat\",WebkitMaskRepeat:\"no-repeat\",transformOrigin:\"center center\",transform:`scale(${scale}) translateZ(0)`};// ─── Content Assembly ────────────────────────────────────────────────────\nlet content=/*#__PURE__*/_jsxs(_Fragment,{children:[/*#__PURE__*/_jsx(\"img\",{src:imageSource,alt:\"\",style:{...baseImageStyle,filter:filterString}}),pb.enabled&&/*#__PURE__*/_jsx(BackdropProgressiveBlur,{keyPrefix:\"bottom\",startPercent:pb.startPercent??53,endPercent:pb.endPercent??100,maxBlur:pb.maxBlur??20,angle:\"to bottom\",fadeDirection:\"in\"}),pb.enabled&&pb.leftFade&&/*#__PURE__*/_jsx(BackdropProgressiveBlur,{keyPrefix:\"left\",startPercent:pb.leftStart??0,endPercent:pb.leftEnd??40,maxBlur:pb.maxBlur??20,angle:`${pb.leftAngle??30}deg`,fadeDirection:\"out\"}),pb.enabled&&pb.rightFade&&/*#__PURE__*/_jsx(BackdropProgressiveBlur,{keyPrefix:\"right\",startPercent:pb.rightStart??0,endPercent:pb.rightEnd??40,maxBlur:pb.maxBlur??20,angle:`${pb.rightAngle??330}deg`,fadeDirection:\"out\"}),temp!==0&&/*#__PURE__*/_jsx(\"div\",{style:{position:\"absolute\",inset:0,backgroundColor:temp>0?\"#FF8800\":\"#0088FF\",opacity:Math.abs(temp)/200,mixBlendMode:\"overlay\",pointerEvents:\"none\",zIndex:20,...overlayMaskStyle}}),noise>0&&/*#__PURE__*/_jsx(\"div\",{style:{position:\"absolute\",inset:0,pointerEvents:\"none\",backgroundImage:`url(${getNoiseDataURL()})`,backgroundRepeat:\"repeat\",backgroundSize:\"128px 128px\",opacity:noise/100,mixBlendMode:\"screen\",zIndex:21,...overlayMaskStyle}})]});// ─── Nested Masking Engine (100% immune to mask-composite GPU crashes) ───\n// 1. Edge Feather X (Left/Right)\nif(ef.enabled&&(ef.left||ef.right)){const left=ef.left?`rgba(0,0,0,0) 0px, rgba(0,0,0,1) ${ef.size}px`:`rgba(0,0,0,1) 0px`;const right=ef.right?`rgba(0,0,0,1) calc(100% - ${ef.size}px), rgba(0,0,0,0) 100%`:`rgba(0,0,0,1) 100%`;const grad=`linear-gradient(to right, ${left}, ${right})`;content=/*#__PURE__*/_jsx(\"div\",{style:{position:\"absolute\",inset:0,maskImage:grad,WebkitMaskImage:grad,maskRepeat:\"no-repeat\",WebkitMaskRepeat:\"no-repeat\"},children:content});}// 2. Edge Feather Y (Top/Bottom)\nif(ef.enabled&&(ef.top||ef.bottom)){const top=ef.top?`rgba(0,0,0,0) 0px, rgba(0,0,0,1) ${ef.size}px`:`rgba(0,0,0,1) 0px`;const bottom=ef.bottom?`rgba(0,0,0,1) calc(100% - ${ef.size}px), rgba(0,0,0,0) 100%`:`rgba(0,0,0,1) 100%`;const grad=`linear-gradient(to bottom, ${top}, ${bottom})`;content=/*#__PURE__*/_jsx(\"div\",{style:{position:\"absolute\",inset:0,maskImage:grad,WebkitMaskImage:grad,maskRepeat:\"no-repeat\",WebkitMaskRepeat:\"no-repeat\"},children:content});}return /*#__PURE__*/_jsx(Wrapper,{...framerProps,onPointerMove:handlePointerMove,onPointerLeave:handlePointerLeave,style:{...framerProps.style,display:\"block\",width:\"100%\",height:\"100%\",overflow:\"hidden\",isolation:\"isolate\",position:\"relative\",textDecoration:\"none\"},children:/*#__PURE__*/_jsx(motion.div,{style:{width:\"100%\",height:\"100%\",willChange:enableParallax?\"transform\":\"auto\",x:enableParallax?smoothX:0,y:enableParallax?smoothY:0},children:content})});}// ─── Property Controls ───────────────────────────────────────────────────────\naddPropertyControls(HighResImage,{imageUrl:{type:ControlType.String,title:\"Supabase URL\",defaultValue:\"\"},image:{type:ControlType.Image,title:\"Local Fallback\"},enableParallax:{type:ControlType.Boolean,title:\"Parallax\",defaultValue:false},parallaxIntensity:{type:ControlType.Number,title:\"↳ Intensity\",defaultValue:5,min:0,max:10,step:.5,displayStepper:true,hidden:props=>!props.enableParallax},edgeFeather:{type:ControlType.Object,title:\"Edge Feather\",controls:{enabled:{type:ControlType.Boolean,title:\"Enable\",defaultValue:false},size:{type:ControlType.Number,title:\"Feather Size\",defaultValue:60,min:0,max:400,step:1,displayStepper:true},top:{type:ControlType.Boolean,title:\"Top Edge\",defaultValue:true},bottom:{type:ControlType.Boolean,title:\"Bottom Edge\",defaultValue:true},left:{type:ControlType.Boolean,title:\"Left Edge\",defaultValue:true},right:{type:ControlType.Boolean,title:\"Right Edge\",defaultValue:true}}},progBlur:{type:ControlType.Object,title:\"Prog Blur\",controls:{enabled:{type:ControlType.Boolean,title:\"Enable\",defaultValue:true},maxBlur:{type:ControlType.Number,title:\"Max Radius\",defaultValue:20,min:1,max:50,step:1},startPercent:{type:ControlType.Number,title:\"Start Fade %\",defaultValue:53,min:0,max:100,step:1,displayStepper:true},endPercent:{type:ControlType.Number,title:\"End Fade %\",defaultValue:100,min:0,max:100,step:1,displayStepper:true},leftFade:{type:ControlType.Boolean,title:\"Left Fade\",defaultValue:false},leftAngle:{type:ControlType.Number,title:\"↳ L Angle\",defaultValue:30,min:0,max:360,step:1},leftStart:{type:ControlType.Number,title:\"↳ L Start %\",defaultValue:0,min:0,max:100,step:1},leftEnd:{type:ControlType.Number,title:\"↳ L End %\",defaultValue:40,min:0,max:100,step:1},rightFade:{type:ControlType.Boolean,title:\"Right Fade\",defaultValue:false},rightAngle:{type:ControlType.Number,title:\"↳ R Angle\",defaultValue:330,min:0,max:360,step:1},rightStart:{type:ControlType.Number,title:\"↳ R Start %\",defaultValue:0,min:0,max:100,step:1},rightEnd:{type:ControlType.Number,title:\"↳ R End %\",defaultValue:40,min:0,max:100,step:1}}},scale:{type:ControlType.Number,title:\"Scale\",defaultValue:1.15,min:.1,max:5,step:.05},cropX:{type:ControlType.Number,title:\"Crop X\",defaultValue:50,min:0,max:100,step:1,displayStepper:true},cropY:{type:ControlType.Number,title:\"Crop Y\",defaultValue:0,min:0,max:100,step:1,displayStepper:true},photoEditing:{type:ControlType.Object,title:\"Photo Editing\",controls:{brightness:{type:ControlType.Number,title:\"Brightness\",min:0,max:200,defaultValue:100},contrast:{type:ControlType.Number,title:\"Contrast\",min:0,max:200,defaultValue:100},saturation:{type:ControlType.Number,title:\"Saturation\",min:0,max:200,defaultValue:100},hue:{type:ControlType.Number,title:\"Hue\",min:-180,max:180,defaultValue:0},temperature:{type:ControlType.Number,title:\"Temperature\",min:-100,max:100,defaultValue:0},pastelTone:{type:ControlType.Boolean,title:\"Pastel Tone\",defaultValue:false},filmSimulation:{type:ControlType.Enum,title:\"Film Simulation\",options:[\"None\",\"Fuji Provia\",\"Fuji Velvia\",\"Fuji Astia\",\"Kodak Portra\",\"Kodak Gold\"],defaultValue:\"None\"},noise:{type:ControlType.Number,title:\"Noise Grain\",min:0,max:100,defaultValue:0}}}});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"HighResImage\",\"slots\":[],\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./HD_Image_1.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","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","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","// 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\"}}}"],"mappings":"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"}