{"version":3,"file":"CodeBlockPro.DOT2pfKq.mjs","names":["useState","useRef","startTransition","_Fragment","useMemo"],"sources":["https:/framerusercontent.com/modules/d4jyELwWQuvZJHZI3HOe/R6jZiWnGp8mTUtyhJF6j/CodeBlockPro.js"],"sourcesContent":["// Create a Framer component that displays a code viewer with syntax highlighting and multiple language tabs\nimport{jsx as _jsx,jsxs as _jsxs,Fragment as _Fragment}from\"react/jsx-runtime\";import{addPropertyControls,ControlType}from\"framer\";import{useState,useMemo,useEffect,startTransition,useRef}from\"react\";const THEMES={oneDarkPro:{keyword:\"#c678dd\",string:\"#98c379\",comment:\"#5c6370\",number:\"#d19a66\",function:\"#61afef\",type:\"#e5c07b\",property:\"#e06c75\",text:\"#abb2bf\"},dracula:{keyword:\"#ff79c6\",string:\"#f1fa8c\",comment:\"#6272a4\",number:\"#bd93f9\",function:\"#50fa7b\",type:\"#8be9fd\",property:\"#ffb86c\",text:\"#f8f8f2\"},monokai:{keyword:\"#f92672\",string:\"#e6db74\",comment:\"#75715e\",number:\"#ae81ff\",function:\"#a6e22e\",type:\"#66d9ef\",property:\"#fd971f\",text:\"#f8f8f2\"},githubDark:{keyword:\"#ff7b72\",string:\"#a5d6ff\",comment:\"#8b949e\",number:\"#79c0ff\",function:\"#d2a8ff\",type:\"#ffa657\",property:\"#7ee787\",text:\"#e6edf3\"},nord:{keyword:\"#81a1c1\",string:\"#a3be8c\",comment:\"#616e88\",number:\"#b48ead\",function:\"#88c0d0\",type:\"#ebcb8b\",property:\"#d08770\",text:\"#eceff4\"},githubLight:{keyword:\"#cf222e\",string:\"#0a3069\",comment:\"#6e7781\",number:\"#0550ae\",function:\"#8250df\",type:\"#953800\",property:\"#116329\",text:\"#24292f\"}};const CodeHighlighter=({code,theme})=>{const lines=useMemo(()=>code.split(\"\\n\"),[code]);const themeColors=THEMES[theme];const renderTokens=line=>{const keywords=/\\b(const|let|var|await|require|import|from|return|function|class|new|if|else|for|while|async|def|end|module|extends|implements|static|void|public|private|throw|try|catch|finally|switch|case|break|continue|do|in|of|as|export|default)\\b/g;const strings=/(\"[^\"]*\"|'[^']*'|`[^`]*`)/g;const comments=/(\\/\\/[^\\n]*|#[^\\n]*)/g;const numbers=/\\b(\\d+\\.?\\d*|true|false|null|undefined|None|nil|True|False)\\b/g;const tokens=[];let lastIndex=0;const matches=[];let match;while((match=strings.exec(line))!==null){matches.push({index:match.index,length:match[0].length,type:\"string\",text:match[0]});}while((match=comments.exec(line))!==null){matches.push({index:match.index,length:match[0].length,type:\"comment\",text:match[0]});}while((match=keywords.exec(line))!==null){matches.push({index:match.index,length:match[0].length,type:\"keyword\",text:match[0]});}while((match=numbers.exec(line))!==null){matches.push({index:match.index,length:match[0].length,type:\"number\",text:match[0]});}matches.sort((a,b)=>{if(a.index!==b.index)return a.index-b.index;if(a.type===\"string\"||a.type===\"comment\")return-1;if(b.type===\"string\"||b.type===\"comment\")return 1;return 0;});const filteredMatches=[];let lastEnd=0;for(const m of matches){if(m.index>=lastEnd){filteredMatches.push(m);lastEnd=m.index+m.length;}}filteredMatches.forEach((m,i)=>{if(m.index>lastIndex){const text=line.substring(lastIndex,m.index);tokens.push(/*#__PURE__*/_jsx(\"span\",{style:{color:themeColors.text},children:text},`text-${i}`));}let color=themeColors.text;let fontWeight=\"normal\";let fontStyle=\"normal\";switch(m.type){case\"keyword\":color=themeColors.keyword;fontWeight=\"500\";break;case\"string\":color=themeColors.string;break;case\"comment\":color=themeColors.comment;fontStyle=\"italic\";break;case\"number\":color=themeColors.number;break;}tokens.push(/*#__PURE__*/_jsx(\"span\",{style:{color,fontWeight,fontStyle},children:m.text},`token-${i}`));lastIndex=m.index+m.length;});if(lastIndex<line.length){tokens.push(/*#__PURE__*/_jsx(\"span\",{style:{color:themeColors.text},children:line.substring(lastIndex)},\"text-end\"));}return tokens.length>0?tokens:/*#__PURE__*/_jsx(\"span\",{style:{color:themeColors.text},children:line||\"\\xa0\"});};return /*#__PURE__*/_jsx(\"div\",{style:{fontFamily:\"monospace\",fontSize:\"clamp(11px, 2vw, 13px)\",lineHeight:\"1.6\",color:themeColors.text},children:lines.map((line,idx)=>/*#__PURE__*/_jsxs(\"div\",{style:{display:\"flex\",minWidth:\"max-content\"},children:[/*#__PURE__*/_jsx(\"div\",{style:{width:\"clamp(30px, 5vw, 40px)\",flexShrink:0,textAlign:\"right\",paddingRight:\"clamp(8px, 2vw, 16px)\",color:themeColors.comment,userSelect:\"none\",borderRight:`1px solid ${themeColors.comment}33`,marginRight:\"clamp(8px, 2vw, 16px)\"},children:idx+1}),/*#__PURE__*/_jsx(\"div\",{style:{whiteSpace:\"pre\",paddingTop:\"2px\",paddingBottom:\"2px\"},children:renderTokens(line)})]},idx))});};/**\n * @framerDisableUnlink\n *\n * @framerSupportedLayoutWidth any-prefer-fixed\n * @framerSupportedLayoutHeight any-prefer-fixed\n */export default function CodeBlockPro(props){const{snippets,theme,colors,showMacControls,showCopyButton,minHeight,maxHeight,borderRadius,shadow}=props;const{backgroundColor,headerBackgroundColor,borderColor,copyButtonColor,copyButtonTextColor,tabTextColor,activeTabColor,codeBackgroundColor}=colors;const[activeTab,setActiveTab]=useState(0);const[copied,setCopied]=useState(false);const[isVisible,setIsVisible]=useState(false);const[containerWidth,setContainerWidth]=useState(0);const containerRef=useRef(null);useEffect(()=>{startTransition(()=>setIsVisible(true));if(typeof window!==\"undefined\"&&containerRef.current){const updateWidth=()=>{if(containerRef.current){startTransition(()=>setContainerWidth(containerRef.current.offsetWidth));}};updateWidth();window.addEventListener(\"resize\",updateWidth);return()=>window.removeEventListener(\"resize\",updateWidth);}},[]);const handleCopy=()=>{if(typeof window!==\"undefined\"){navigator.clipboard.writeText(snippets[activeTab].code);startTransition(()=>setCopied(true));setTimeout(()=>startTransition(()=>setCopied(false)),2e3);}};const isMobile=containerWidth>0&&containerWidth<480;const isTablet=containerWidth>=480&&containerWidth<768;const isSmall=isMobile||isTablet;return /*#__PURE__*/_jsx(\"div\",{ref:containerRef,style:{width:\"100%\",display:\"flex\",flexDirection:\"column\",transition:\"all 0.7s\",transform:isVisible?\"translateY(0)\":\"translateY(10px)\",opacity:isVisible?1:0,...props.style},children:/*#__PURE__*/_jsxs(\"div\",{style:{backgroundColor,borderRadius:`${borderRadius}px`,overflow:\"hidden\",border:`1px solid ${borderColor}`,boxShadow:shadow},children:[/*#__PURE__*/_jsxs(\"div\",{style:{display:\"flex\",alignItems:\"center\",justifyContent:\"space-between\",padding:isSmall?\"10px 12px\":\"14px 20px\",backgroundColor:headerBackgroundColor,borderBottom:`1px solid ${borderColor}`,flexWrap:isSmall?\"wrap\":\"nowrap\",gap:isSmall?\"8px\":\"0\"},children:[/*#__PURE__*/_jsx(\"div\",{style:{display:\"flex\",alignItems:\"center\"},children:showMacControls&&/*#__PURE__*/_jsxs(\"div\",{style:{display:\"flex\",gap:isSmall?\"6px\":\"8px\",marginRight:isSmall?\"12px\":\"24px\"},children:[/*#__PURE__*/_jsx(\"div\",{style:{width:isSmall?\"10px\":\"12px\",height:isSmall?\"10px\":\"12px\",borderRadius:\"50%\",backgroundColor:\"#ff5f56\",border:\"1px solid rgba(0,0,0,0.1)\"}}),/*#__PURE__*/_jsx(\"div\",{style:{width:isSmall?\"10px\":\"12px\",height:isSmall?\"10px\":\"12px\",borderRadius:\"50%\",backgroundColor:\"#ffbd2e\",border:\"1px solid rgba(0,0,0,0.1)\"}}),/*#__PURE__*/_jsx(\"div\",{style:{width:isSmall?\"10px\":\"12px\",height:isSmall?\"10px\":\"12px\",borderRadius:\"50%\",backgroundColor:\"#27c93f\",border:\"1px solid rgba(0,0,0,0.1)\"}})]})}),showCopyButton&&/*#__PURE__*/_jsx(\"button\",{onClick:handleCopy,style:{display:\"flex\",alignItems:\"center\",gap:isSmall?\"4px\":\"8px\",padding:isSmall?\"5px 10px\":\"6px 14px\",borderRadius:isSmall?\"6px\":\"8px\",fontSize:isSmall?\"11px\":\"12px\",fontWeight:\"600\",transition:\"all 0.3s\",backgroundColor:copied?\"rgba(34, 197, 94, 0.2)\":copyButtonColor,color:copied?\"#4ade80\":copyButtonTextColor,border:copied?\"1px solid rgba(34, 197, 94, 0.3)\":`1px solid ${borderColor}`,cursor:\"pointer\",whiteSpace:\"nowrap\"},children:copied?/*#__PURE__*/_jsxs(_Fragment,{children:[/*#__PURE__*/_jsx(\"svg\",{style:{width:isSmall?\"12px\":\"14px\",height:isSmall?\"12px\":\"14px\",flexShrink:0},fill:\"none\",viewBox:\"0 0 24 24\",stroke:\"currentColor\",children:/*#__PURE__*/_jsx(\"path\",{strokeLinecap:\"round\",strokeLinejoin:\"round\",strokeWidth:2.5,d:\"M5 13l4 4L19 7\"})}),!isMobile&&/*#__PURE__*/_jsx(\"span\",{children:\"Copied\"})]}):/*#__PURE__*/_jsxs(_Fragment,{children:[/*#__PURE__*/_jsx(\"svg\",{style:{width:isSmall?\"12px\":\"14px\",height:isSmall?\"12px\":\"14px\",flexShrink:0},fill:\"none\",viewBox:\"0 0 24 24\",stroke:\"currentColor\",children:/*#__PURE__*/_jsx(\"path\",{strokeLinecap:\"round\",strokeLinejoin:\"round\",strokeWidth:2,d:\"M8 5H6a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2v-1M8 5a2 2 0 002 2h2a2 2 0 002-2M8 5a2 2 0 012-2h2a2 2 0 012 2m0 0h2a2 2 0 012 2v3m2 4H10m0 0l3-3m-3 3l3 3\"})}),!isMobile&&/*#__PURE__*/_jsx(\"span\",{children:\"Copy Code\"})]})})]}),/*#__PURE__*/_jsx(\"div\",{style:{backgroundColor:codeBackgroundColor,padding:isSmall?\"0 4px\":\"0 8px\",display:\"flex\",alignItems:\"center\",borderBottom:`1px solid ${borderColor}`,overflowX:\"auto\",WebkitOverflowScrolling:\"touch\"},children:snippets.map((snippet,idx)=>/*#__PURE__*/_jsxs(\"button\",{onClick:()=>startTransition(()=>setActiveTab(idx)),style:{position:\"relative\",padding:isSmall?\"12px 12px\":\"16px 20px\",fontSize:isSmall?\"10px\":\"12px\",fontWeight:\"bold\",transition:\"all 0.3s\",textTransform:\"uppercase\",letterSpacing:\"0.1em\",color:activeTab===idx?activeTabColor:tabTextColor,backgroundColor:\"transparent\",border:\"none\",cursor:\"pointer\",whiteSpace:\"nowrap\",flexShrink:0},children:[snippet.label,activeTab===idx&&/*#__PURE__*/_jsx(\"div\",{style:{position:\"absolute\",bottom:0,left:0,width:\"100%\",height:isSmall?\"2px\":\"3px\",backgroundColor:activeTabColor,boxShadow:`0 -4px 12px ${activeTabColor}99`,borderTopLeftRadius:\"9999px\",borderTopRightRadius:\"9999px\"}})]},snippet.label))}),/*#__PURE__*/_jsxs(\"div\",{style:{position:\"relative\"},children:[/*#__PURE__*/_jsx(\"div\",{style:{padding:isSmall?\"16px 12px\":\"32px\",minHeight:isSmall?`${Math.max(minHeight*.6,200)}px`:`${minHeight}px`,maxHeight:isSmall?`${Math.max(maxHeight*.7,300)}px`:`${maxHeight}px`,overflowY:\"auto\",overflowX:\"auto\",WebkitOverflowScrolling:\"touch\"},children:/*#__PURE__*/_jsx(\"div\",{children:/*#__PURE__*/_jsx(CodeHighlighter,{code:snippets[activeTab].code,theme:theme})},activeTab)}),!isSmall&&/*#__PURE__*/_jsxs(_Fragment,{children:[/*#__PURE__*/_jsx(\"div\",{style:{position:\"absolute\",top:0,right:0,width:\"128px\",height:\"128px\",backgroundColor:\"rgba(37, 99, 235, 0.05)\",filter:\"blur(80px)\",pointerEvents:\"none\"}}),/*#__PURE__*/_jsx(\"div\",{style:{position:\"absolute\",bottom:0,left:0,width:\"128px\",height:\"128px\",backgroundColor:\"rgba(147, 51, 234, 0.05)\",filter:\"blur(80px)\",pointerEvents:\"none\"}})]})]})]})});}addPropertyControls(CodeBlockPro,{snippets:{type:ControlType.Array,title:\"Code Snippets\",description:\"Add multiple code snippets with different programming languages\",control:{type:ControlType.Object,controls:{language:{type:ControlType.String,title:\"Language\",description:\"Programming language identifier\",defaultValue:\"javascript\"},label:{type:ControlType.String,title:\"Label\",description:\"Display name for the tab\",defaultValue:\"Node.js\"},code:{type:ControlType.String,title:\"Code\",description:\"The code snippet to display\",displayTextArea:true,defaultValue:'const hitpay = require(\"hitpay\")'}}},defaultValue:[{language:\"javascript\",label:\"Node.js\",code:`const hitpay = require(\"hitpay\")\n(\"hp_test_BQokikJOvBiI2HlWgH4olfQ2\");\n\n// Create a payment intent to start a purchase flow\nlet paymentIntent = await\nhitpay.paymentIntents.create({\n  amount: 2000,\n  currency: \"usd\",\n  description: \"My first payment\",\n});\n\n// Complete the payment using a test card.\nawait hitpay.paymentIntents.confirm(paymentIntent.id, {\n  payment_method: \"pm_card_mastercard\",\n});`},{language:\"python\",label:\"Python\",code:`import hitpay\nhitpay.api_key = \"hp_test_BQokikJOvBiI2HlWgH4olfQ2\"\n\n# Create a payment intent to start a purchase flow\npayment_intent = hitpay.PaymentIntent.create(\n    amount=2000,\n    currency=\"usd\",\n    description=\"My first payment\",\n)\n\n# Complete the payment using a test card\nhitpay.PaymentIntent.confirm(\n    payment_intent.id,\n    payment_method=\"pm_card_mastercard\",\n)`}]},theme:{type:ControlType.Enum,title:\"Code Theme\",description:\"Syntax highlighting color scheme\",options:[\"oneDarkPro\",\"dracula\",\"monokai\",\"githubDark\",\"nord\",\"githubLight\"],optionTitles:[\"One Dark Pro\",\"Dracula\",\"Monokai\",\"GitHub Dark\",\"Nord\",\"GitHub Light\"],defaultValue:\"oneDarkPro\",displaySegmentedControl:false},colors:{type:ControlType.Object,title:\"Colors\",description:\"Customize all color aspects of the code block\",controls:{backgroundColor:{type:ControlType.Color,title:\"Background\",description:\"Main container background color\",defaultValue:\"#0d1117\"},headerBackgroundColor:{type:ControlType.Color,title:\"Header Background\",description:\"Header section background color\",defaultValue:\"#161b22\"},borderColor:{type:ControlType.Color,title:\"Border Color\",description:\"Border and divider color\",defaultValue:\"rgba(255,255,255,0.1)\"},copyButtonColor:{type:ControlType.Color,title:\"Copy Button\",description:\"Copy button background color\",defaultValue:\"rgba(255,255,255,0.05)\"},copyButtonTextColor:{type:ControlType.Color,title:\"Copy Button Text\",description:\"Copy button text color\",defaultValue:\"#94a3b8\"},tabTextColor:{type:ControlType.Color,title:\"Tab Text\",description:\"Inactive tab text color\",defaultValue:\"#64748b\"},activeTabColor:{type:ControlType.Color,title:\"Active Tab\",description:\"Active tab indicator color\",defaultValue:\"#3b82f6\"},codeBackgroundColor:{type:ControlType.Color,title:\"Code Background\",description:\"Code area background color\",defaultValue:\"#0d1117\"}}},showMacControls:{type:ControlType.Boolean,title:\"Mac Controls\",description:\"Display macOS-style window controls\",defaultValue:true,enabledTitle:\"Show\",disabledTitle:\"Hide\"},showCopyButton:{type:ControlType.Boolean,title:\"Copy Button\",description:\"Display copy to clipboard button\",defaultValue:true,enabledTitle:\"Show\",disabledTitle:\"Hide\"},minHeight:{type:ControlType.Number,title:\"Min Height\",description:\"Minimum height of the code area\",defaultValue:440,min:200,max:1e3,step:10,unit:\"px\"},maxHeight:{type:ControlType.Number,title:\"Max Height\",description:\"Maximum height before scrolling\",defaultValue:600,min:300,max:1200,step:10,unit:\"px\"},borderRadius:{type:ControlType.Number,title:\"Border Radius\",description:\"Corner roundness of the container\",defaultValue:16,min:0,max:32,step:1,unit:\"px\"},shadow:{type:ControlType.BoxShadow,title:\"Shadow\",description:\"Drop shadow effect for the code block\"}});CodeBlockPro.displayName=\"Code Block Pro\";\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"CodeBlockPro\",\"slots\":[],\"annotations\":{\"framerContractVersion\":\"1\",\"framerSupportedLayoutWidth\":\"any-prefer-fixed\",\"framerSupportedLayoutHeight\":\"any-prefer-fixed\",\"framerDisableUnlink\":\"*\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./CodeBlockPro.map"],"mappings":"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"}