commit ce47869552729a996b34a0370ac44df2791b954e
parent 65148a9e9137329c5e59620ecff412967fa89fc1
Author: Sebastian <sebasjm@gmail.com>
Date: Wed, 13 Mar 2024 09:44:11 -0300
allow text in copy button
Diffstat:
1 file changed, 4 insertions(+), 2 deletions(-)
diff --git a/packages/web-util/src/components/CopyButton.tsx b/packages/web-util/src/components/CopyButton.tsx
@@ -1,4 +1,4 @@
-import { h, VNode } from "preact";
+import { ComponentChildren, h, VNode } from "preact";
import { useEffect, useState } from "preact/hooks";
export function CopyIcon(): VNode {
@@ -17,7 +17,7 @@ export function CopiedIcon(): VNode {
)
};
-export function CopyButton({ class: clazz, getContent }: { class: string, getContent: () => string }): VNode {
+export function CopyButton({ class: clazz, children, getContent }: { children?: ComponentChildren, class: string, getContent: () => string }): VNode {
const [copied, setCopied] = useState(false);
function copyText(): void {
if (!navigator.clipboard && !window.isSecureContext) {
@@ -43,12 +43,14 @@ export function CopyButton({ class: clazz, getContent }: { class: string, getCon
copyText()
}} >
<CopyIcon />
+ {children}
</button>
);
}
return (
<button class={clazz} disabled>
<CopiedIcon />
+ {children}
</button>
);
}