{"version":3,"file":"CodeSnippet.DY_SDeuU.mjs","names":["useState"],"sources":["https:/framerusercontent.com/modules/tXimmh9pWYVAo3y3DJja/fhDpbpIF7em3e6MEoQ2y/CodeSnippet.js"],"sourcesContent":["import{jsx as _jsx,jsxs as _jsxs}from\"react/jsx-runtime\";import{useState}from\"react\";import{addPropertyControls,ControlType}from\"framer\";const MONO=\"ui-monospace, SFMono-Regular, Menlo, Consolas, monospace\";const BASE=\"#EEEEEC\";const STR=\"#7DD3A8\";const URLC=\"#8AB4F8\";const FLAG=\"#C4A7F5\";function tokenize(code){try{const out=[];const re=/(\"(?:[^\"\\\\]|\\\\.)*\"|'(?:[^'\\\\]|\\\\.)*'|https?:\\/\\/[^\\s\"']+|(?:^|\\s)-[A-Za-z]\\b)/g;let last=0;let m;while(m=re.exec(code)){if(m.index>last)out.push({t:code.slice(last,m.index),c:BASE});const s=m[0];const trimmed=s.replace(/^\\s+/,\"\");let c=BASE;const f=trimmed.charAt(0);if(f==='\"'||f===\"'\")c=STR;else if(trimmed.slice(0,4)===\"http\")c=URLC;else if(f===\"-\")c=FLAG;out.push({t:s,c:c});last=re.lastIndex;}if(last<code.length)out.push({t:code.slice(last),c:BASE});return out;}catch(e){return[{t:code,c:BASE}];}}/**\n * Wrapping code block with a copy button. Long lines wrap instead of\n * overflowing horizontally, and the button copies the full snippet.\n *\n * @framerSupportedLayoutWidth any\n * @framerSupportedLayoutHeight auto\n */export default function CodeSnippet(props){const{code=\"\",radius=14,style}=props;const text=code.replace(/\\\\n/g,\"\\n\");const[copied,setCopied]=useState(false);const onCopy=()=>{try{navigator.clipboard?.writeText(text);}catch(e){}setCopied(true);setTimeout(()=>setCopied(false),1500);};const tokens=tokenize(text);return /*#__PURE__*/_jsxs(\"div\",{style:{position:\"relative\",boxSizing:\"border-box\",width:\"100%\",maxWidth:\"100%\",minWidth:0,background:\"#111110\",borderRadius:radius,padding:\"20px 24px\",...style},children:[/*#__PURE__*/_jsx(\"button\",{onClick:onCopy,\"aria-label\":\"Copy code\",style:{position:\"absolute\",top:10,right:10,display:\"inline-flex\",alignItems:\"center\",height:28,padding:\"0 10px\",fontFamily:MONO,fontSize:12,color:copied?STR:\"#B5B3AD\",background:\"#2a2a28\",border:\"1px solid #494844\",borderRadius:8,cursor:\"pointer\",zIndex:1},children:copied?\"Copied\":\"Copy\"}),/*#__PURE__*/_jsx(\"div\",{style:{display:\"flex\",width:\"100%\",minWidth:0,maxWidth:\"100%\"},children:/*#__PURE__*/_jsx(\"pre\",{style:{margin:0,width:\"100%\",maxWidth:\"100%\",minWidth:0,flex:\"1 1 auto\",whiteSpace:\"pre-wrap\",overflowWrap:\"anywhere\",wordBreak:\"break-word\",fontFamily:MONO,fontSize:13,lineHeight:1.7,color:BASE,paddingRight:52},children:/*#__PURE__*/_jsx(\"code\",{children:tokens.map((tk,i)=>/*#__PURE__*/_jsx(\"span\",{style:{color:tk.c},children:tk.t},i))})})})]});}addPropertyControls(CodeSnippet,{code:{type:ControlType.String,title:\"Code\",displayTextArea:true,defaultValue:\"\"},radius:{type:ControlType.Number,title:\"Radius\",defaultValue:14}});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"CodeSnippet\",\"slots\":[],\"annotations\":{\"framerSupportedLayoutWidth\":\"any\",\"framerSupportedLayoutHeight\":\"auto\",\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./CodeSnippet.map"],"mappings":"gMAAkS,SAAS,EAAS,EAAK,CAAC,GAAG,CAAC,IAAM,EAAI,CAAC,EAAQ,EAAG,iFAAqF,EAAK,EAAM,EAAE,KAAM,EAAE,EAAG,KAAK,CAAI,GAAE,CAAI,EAAE,MAAM,GAAK,EAAI,KAAK,CAAC,EAAE,EAAK,MAAM,EAAK,EAAE,KAAK,EAAE,EAAE,CAAI,CAAC,EAAE,IAAM,EAAE,EAAE,GAAS,EAAQ,EAAE,QAAQ,OAAO,EAAE,EAAM,EAAE,EAAW,EAAE,EAAQ,OAAO,CAAC,EAAK,IAAI,KAAK,IAAI,IAAI,EAAE,EAAY,EAAQ,MAAM,EAAE,CAAC,IAAI,OAAO,EAAE,EAAa,IAAI,MAAI,EAAE,GAAK,EAAI,KAAK,CAAC,EAAE,EAAI,GAAC,CAAC,EAAE,EAAK,EAAG,SAAU,CAA2D,OAAvD,EAAK,EAAK,QAAO,EAAI,KAAK,CAAC,EAAE,EAAK,MAAM,CAAI,EAAE,EAAE,CAAI,CAAC,EAAS,CAAI,MAAS,CAAC,MAAM,CAAC,CAAC,EAAE,EAAK,EAAE,CAAI,CAAC,CAAE,CAAC,CAMx0B,SAAwB,EAAY,EAAM,CAAC,GAAK,CAAC,OAAK,GAAG,SAAO,GAAG,SAAO,EAAY,EAAK,EAAK,QAAQ,OAAO;CAAI,EAAO,CAAC,EAAO,GAAWA,EAAS,EAAK,EAAQ,MAAW,CAAC,GAAG,CAAC,EAAU,WAAW,UAAU,CAAI,CAAE,MAAS,CAAC,CAAC,EAAU,EAAI,EAAE,eAAe,EAAU,EAAK,EAAE,IAAI,CAAE,EAAQ,EAAO,EAAS,CAAI,EAAE,OAAoB,EAAM,MAAM,CAAC,MAAM,CAAC,SAAS,WAAW,UAAU,aAAa,MAAM,OAAO,SAAS,OAAO,SAAS,EAAE,WAAW,UAAU,aAAa,EAAO,QAAQ,YAAY,GAAG,CAAK,EAAE,SAAS,CAAc,EAAK,SAAS,CAAC,QAAQ,EAAO,aAAa,YAAY,MAAM,CAAC,SAAS,WAAW,IAAI,GAAG,MAAM,GAAG,QAAQ,cAAc,WAAW,SAAS,OAAO,GAAG,QAAQ,SAAS,WAAW,EAAK,SAAS,GAAG,MAAM,EAAO,EAAI,UAAU,WAAW,UAAU,OAAO,oBAAoB,aAAa,EAAE,OAAO,UAAU,OAAO,CAAC,EAAE,SAAS,EAAO,SAAS,MAAM,CAAC,EAAe,EAAK,MAAM,CAAC,MAAM,CAAC,QAAQ,OAAO,MAAM,OAAO,SAAS,EAAE,SAAS,MAAM,EAAE,SAAsB,EAAK,MAAM,CAAC,MAAM,CAAC,OAAO,EAAE,MAAM,OAAO,SAAS,OAAO,SAAS,EAAE,KAAK,WAAW,WAAW,WAAW,aAAa,WAAW,UAAU,aAAa,WAAW,EAAK,SAAS,GAAG,WAAW,IAAI,MAAM,EAAK,aAAa,EAAE,EAAE,SAAsB,EAAK,OAAO,CAAC,SAAS,EAAO,KAAK,EAAG,IAAiB,EAAK,OAAO,CAAC,MAAM,CAAC,MAAM,EAAG,CAAC,EAAE,SAAS,EAAG,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAE,+BAN3wC,IAA4B,IAAoD,EAAO,EAAK,2DAAiE,EAAK,UAAgB,EAAI,UAAgB,EAAK,UAAgB,EAAK,UAM4iC,EAAoB,EAAY,CAAC,KAAK,CAAC,KAAK,EAAY,OAAO,MAAM,OAAO,gBAAgB,GAAK,aAAa,EAAE,EAAE,OAAO,CAAC,KAAK,EAAY,OAAO,MAAM,SAAS,aAAa,EAAE,CAAC,CAAC"}