{"version":3,"file":"EmailCopyButton.DcMY4tkr.mjs","names":["useState"],"sources":["https:/framerusercontent.com/modules/g3qwJeAAavv3aQYtrTuX/IV0Nxdrg3zk3EotdzCUG/EmailCopyButton.js"],"sourcesContent":["import{jsx as _jsx,jsxs as _jsxs}from\"react/jsx-runtime\";import{addPropertyControls,ControlType}from\"framer\";import{useState}from\"react\";const FONT=\"ABC Gaisyr Semi Mono Unlicensed Trial Regular, ABC Gaisyr Semi Mono, monospace\";const COLOR=\"var(--token-b9e592f6-87da-4af4-8bbb-eb92c1828012)\";const BG_COLOR=\"var(--token-78260b07-4ccb-46ea-a67c-6aac8e542ee6)\";function rand(min,max){return Math.random()*(max-min)+min;}export default function EmailCopyButton(props){const{email=\"matthewguodesign@gmail.com\",label=\"Email\"}=props;const[hovered,setHovered]=useState(false);const[copied,setCopied]=useState(false);const[badgeVisible,setBadgeVisible]=useState(false);const[sticker,setSticker]=useState({x:0,y:-20,rotate:0});const handleClick=async()=>{setSticker({x:rand(-10,10),y:rand(-28,-14),rotate:rand(-12,12)});try{await navigator.clipboard.writeText(email);}catch{const el=document.createElement(\"textarea\");el.value=email;document.body.appendChild(el);el.select();document.execCommand(\"copy\");document.body.removeChild(el);}setCopied(true);setBadgeVisible(true);setTimeout(()=>setBadgeVisible(false),1600);setTimeout(()=>setCopied(false),2200);};return /*#__PURE__*/_jsxs(\"div\",{style:{position:\"relative\",display:\"inline-flex\",alignItems:\"center\",overflow:\"visible\"},onMouseEnter:()=>setHovered(true),onMouseLeave:()=>setHovered(false),onClick:handleClick,children:[/*#__PURE__*/_jsx(\"span\",{style:{fontFamily:FONT,fontSize:\"1rem\",lineHeight:\"1.25rem\",color:COLOR,cursor:\"pointer\",userSelect:\"none\",whiteSpace:\"nowrap\"},children:hovered?email:`${label} ↗`}),copied&&/*#__PURE__*/_jsx(\"span\",{style:{position:\"absolute\",top:0,left:0,transform:`translate(${sticker.x}px, ${sticker.y}px) rotate(${sticker.rotate}deg)`,transformOrigin:\"center center\",background:COLOR,color:BG_COLOR,fontSize:\"1rem\",fontFamily:FONT,lineHeight:\"1.25rem\",padding:\"6px 18px\",borderRadius:\"999px\",whiteSpace:\"nowrap\",pointerEvents:\"none\",zIndex:9999,opacity:badgeVisible?1:0,transition:\"opacity 0.5s ease\"},children:\"Copied\"})]});}addPropertyControls(EmailCopyButton,{email:{type:ControlType.String,title:\"Email\",defaultValue:\"matthewguodesign@gmail.com\"},label:{type:ControlType.String,title:\"Label\",defaultValue:\"Email\"}});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"EmailCopyButton\",\"slots\":[],\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./EmailCopyButton.map"],"mappings":"+LAAwW,SAAS,EAAK,EAAI,EAAI,CAAC,OAAO,KAAK,QAAQ,EAAE,EAAI,GAAK,EAAK,SAAwB,EAAgB,EAAM,CAAC,GAAK,CAAC,QAAM,6BAA6B,QAAM,SAAS,EAAW,CAAC,EAAQ,GAAYA,EAAS,GAAM,CAAM,CAAC,EAAO,GAAWA,EAAS,GAAM,CAAM,CAAC,EAAa,GAAiBA,EAAS,GAAM,CAAM,CAAC,EAAQ,GAAYA,EAAS,CAAC,EAAE,EAAE,EAAE,IAAI,OAAO,EAAE,CAAC,CAA+a,OAAoB,EAAM,MAAM,CAAC,MAAM,CAAC,SAAS,WAAW,QAAQ,cAAc,WAAW,SAAS,SAAS,UAAU,CAAC,iBAAiB,EAAW,GAAK,CAAC,iBAAiB,EAAW,GAAM,CAAC,QAA3lB,SAAS,CAAC,EAAW,CAAC,EAAE,EAAK,IAAI,GAAG,CAAC,EAAE,EAAK,IAAI,IAAI,CAAC,OAAO,EAAK,IAAI,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,MAAM,EAAU,UAAU,UAAU,EAAM,MAAO,CAAC,IAAM,EAAG,SAAS,cAAc,WAAW,CAAC,EAAG,MAAM,EAAM,SAAS,KAAK,YAAY,EAAG,CAAC,EAAG,QAAQ,CAAC,SAAS,YAAY,OAAO,CAAC,SAAS,KAAK,YAAY,EAAG,CAAE,EAAU,GAAK,CAAC,EAAgB,GAAK,CAAC,eAAe,EAAgB,GAAM,CAAC,KAAK,CAAC,eAAe,EAAU,GAAM,CAAC,KAAK,EAAsN,SAAS,CAAc,EAAK,OAAO,CAAC,MAAM,CAAC,WAAW,EAAK,SAAS,OAAO,WAAW,UAAU,MAAM,EAAM,OAAO,UAAU,WAAW,OAAO,WAAW,SAAS,CAAC,SAAS,EAAQ,EAAM,GAAG,EAAM,IAAI,CAAC,CAAC,GAAqB,EAAK,OAAO,CAAC,MAAM,CAAC,SAAS,WAAW,IAAI,EAAE,KAAK,EAAE,UAAU,aAAa,EAAQ,EAAE,MAAM,EAAQ,EAAE,aAAa,EAAQ,OAAO,MAAM,gBAAgB,gBAAgB,WAAW,EAAM,MAAM,EAAS,SAAS,OAAO,WAAW,EAAK,WAAW,UAAU,QAAQ,WAAW,aAAa,QAAQ,WAAW,SAAS,cAAc,OAAO,OAAO,KAAK,QAAQ,EAAa,EAAE,EAAE,WAAW,oBAAoB,CAAC,SAAS,SAAS,CAAC,CAAC,CAAC,CAAC,4BAA/5D,IAAoD,IAA4B,CAAM,EAAK,iFAAuF,EAAM,oDAA0D,EAAS,oDAAsqD,EAAoB,EAAgB,CAAC,MAAM,CAAC,KAAK,EAAY,OAAO,MAAM,QAAQ,aAAa,6BAA6B,CAAC,MAAM,CAAC,KAAK,EAAY,OAAO,MAAM,QAAQ,aAAa,QAAQ,CAAC,CAAC"}