"use client"; import { Button } from "@/components/ui/button"; import { Check, Copy } from "lucide-react"; import { useState } from "react"; import { useToast } from "@/hooks/use-toast"; interface CopyButtonProps { value: string; label: string; className?: string; } export function CopyButton({ value, label, className }: CopyButtonProps) { const [copied, setCopied] = useState(false); const { toast } = useToast(); const copyToClipboard = async () => { try { await navigator.clipboard.writeText(value); setCopied(true); toast({ title: "Copied!", description: `${label} copied to clipboard`, }); setTimeout(() => setCopied(false), 2000); } catch (err) { toast({ title: "Failed to copy", description: "Please try again", variant: "destructive", }); } }; return ( ); }