MCPcopy Index your code
hub / github.com/StaticMania/keep-react / CodeHighlight

Function CodeHighlight

app/components/CodeHighlight.tsx:16–70  ·  view source on GitHub ↗
({ code })

Source from the content-addressed store, hash-verified

14}
15
16const CodeHighlight: FC<CodeHighlightProps> = ({ code }) => {
17 const [codeType, setCodeType] = useState(0)
18 const { copy, copyToClipboard } = useCopy()
19 return (
20 <div className="my-5 w-full overflow-hidden rounded-xl border border-metal-900 bg-[#0D1015] dark:bg-[#0D1015]/90">
21 <div className="flex justify-between">
22 <div className="flex text-white">
23 {Object.keys(code).map((key, index) => (
24 <button
25 key={key}
26 onClick={() => setCodeType(index)}
27 className={cn(
28 'border-b border-r border-metal-800 px-6 py-2.5 text-body-4 font-normal',
29 codeType === index ? 'bg-metal-900/10' : 'bg-metal-900',
30 )}>
31 <span>{key}</span>
32 </button>
33 ))}
34 </div>
35 <div>
36 <button
37 onClick={() => {
38 copyToClipboard(Object.values(code)[codeType])
39 toast.success('Code Copied!', {
40 classNames: {
41 toast:
42 'dark:!bg-metal-900/30 dark:!text-white dark:!border-metal-800 !bg-white !text-metal-900 !border-metal-50',
43 },
44 })
45 }}
46 className="mx-6 my-2.5">
47 {copy ? <Check size={20} weight="light" color="#fff" /> : <Copy size={20} weight="light" color="#fff" />}
48 </button>
49 </div>
50 </div>
51 <div>
52 <SyntaxHighlighter
53 language="javascript"
54 style={coldarkDark}
55 customStyle={{
56 maxHeight: '420px',
57 borderRadius: '0px',
58 padding: '32px',
59 marginTop: '0px',
60 marginBottom: '0px',
61 fontSize: '14px',
62 lineHeight: '22px',
63 letterSpacing: '-0.4px',
64 }}>
65 {Object.values(code)[codeType].trim()}
66 </SyntaxHighlighter>
67 </div>
68 </div>
69 )
70}
71
72export default CodeHighlight

Callers

nothing calls this directly

Calls 3

cnFunction · 0.90
useCopyFunction · 0.85
copyToClipboardFunction · 0.85

Tested by

no test coverage detected