diff --git a/resources/js/Components/CodeBlock.jsx b/resources/js/Components/CodeBlock.jsx index c53aab3e..101c9caa 100644 --- a/resources/js/Components/CodeBlock.jsx +++ b/resources/js/Components/CodeBlock.jsx @@ -7,17 +7,87 @@ import 'prismjs/components/prism-json' import 'prismjs/components/prism-jsx' import 'prismjs/components/prism-markup-templating' import 'prismjs/components/prism-php' +import { useState } from 'react' -const CodeBlock = ({ className = 'my-8 p-6 leading-normal rounded', language, height, children }) => ( -
- (
+
+
)
+const CheckIcon = () => (
+
+)
+
+const CodeBlock = ({ className = 'p-6 my-8 leading-normal rounded', language, height, children }) => {
+ const [copied, setCopied] = useState(false)
+
+ const handleCopy = async () => {
+ try {
+ await navigator.clipboard.writeText(children)
+ setCopied(true)
+ setTimeout(() => setCopied(false), 2000)
+ } catch (err) {
+ console.error('Failed to copy text:', err)
+ }
+ }
+
+ return (
+
+
+
+
+