'use client'; import { useId, useRef, useState } from 'react'; import { Check, Copy, LoaderCircle, X, Search } from 'lucide-react'; import styles from './primitives.module.css'; export function BrandButton({ variant = 'primary', size = 'medium', busy = false, children, className = '', onClick, ...props }: React.ButtonHTMLAttributes & { variant?: 'primary' | 'secondary' | 'quiet' | 'danger'; size?: 'small' | 'medium' | 'large'; busy?: boolean; }) { return ( ); } export function CopyButton({ value, label = 'Copy code' }: { value: string; label?: string }) { const [status, setStatus] = useState<'idle' | 'copied' | 'failed'>('idle'); const fallback = useRef(null); async function copy() { try { await navigator.clipboard.writeText(value); setStatus('copied'); } catch { setStatus('failed'); requestAnimationFrame(() => { fallback.current?.focus(); fallback.current?.select(); }); } } return ( void copy()} aria-label={label}> {status === 'copied' ? : } {status === 'copied' ? 'Copied' : 'Copy'} {status === 'copied' ? 'Copied to clipboard' : status === 'failed' ? 'Clipboard unavailable. Select and copy the value below.' : ''} {status === 'failed' && (