Skip to content

useClipboard Hook - Documentazione ​

[DEV-166] Documentazione migrata. L'hook useClipboard e la funzione copyToClipboard sono ora forniti da @elerama/ui. Questa documentazione Γ¨ mantenuta solo come riferimento storico.

Per la documentazione aggiornata vedere lo Storybook di @elerama/ui β†’ sezione Hooks/useClipboard.

Migrazione (DEV-166) ​

L'API Γ¨ cambiata rispetto alla versione precedente interna a elerama-frontend:

Vecchia APINuova API
copy(text, context?)copy(text) β€” parametro context rimosso
Logging via console.log/warn/errorNessun logging interno β€” usare error: string | null dal return value
tsx
// Prima (deprecato)
import { useClipboard } from '@/hooks/utils/useClipboard';
const { copy } = useClipboard();
await copy('testo', 'MyComponent');

// Dopo
import { useClipboard } from '@elerama/ui';
const { copy, copied, error } = useClipboard();
await copy('testo');
if (error) console.error(error);

πŸ“š Contenuti (storico) ​

CLIPBOARD_UTILITY.md ​

Guida originale β€” API obsoleta

Contiene:

  • οΏ½ Descrizione dell'hook
  • 🎯 Caratteristiche e vantaggi
  • οΏ½ Esempi di utilizzo
  • οΏ½ Signature e parametri
  • οΏ½ Pattern pratici
  • οΏ½ Debug e troubleshooting

🎯 Quick Start ​

typescript
import { useClipboard } from "@/hooks/utils/useClipboard";

export function MyComponent() {
  const { copy, copied, error } = useClipboard();

  const handleCopy = async () => {
    await copy("Testo da copiare", "mio-componente");
  };

  return (
    <button onClick={handleCopy}>
      {copied ? "βœ… Copiato!" : "πŸ“‹ Copia"}
      {error && <span> - Errore: {error}</span>}
    </button>
  );
}

✨ Caratteristiche ​

βœ… Hook React nativo - Integrazione perfetta con React βœ… Gestione dello stato - copied, error automatico βœ… Feedback visivo - Auto-reset dopo timeout βœ… Clipboard API moderna - HTTPS ready βœ… Fallback legacy - Supporto HTTP e browser vecchi βœ… Error handling - Gestione completa degli errori βœ… TypeScript - Full type safety


πŸ“– Leggi di piΓΉ ​

Consulta CLIPBOARD_UTILITY.md per una guida completa con tutti gli esempi e i dettagli tecnici.

Documentazione Elerama Frontend