CopyButton
Copia un valor al portapapeles y confirma en el sitio, sin un toast aparte.
Usar
import { CopyButton } from "@unozero-ai/ui/react";
<CopyButton></CopyButton>Configurador
Cambia las propiedades y pulsa el botón: el icono se funde en el check, que dura dos segundos y vuelve solo. Fuera de HTTPS (una intranet, el móvil contra el servidor de desarrollo) copia con el método clásico.
<CopyButton value="RES-48213" label="Copiar" copiedLabel="Copiado" />Solo icono
La variante por defecto, junto al valor que copia. label es su nombre accesible: dale uno concreto («Copiar localizador») para que, con varios en la misma vista, el lector de pantalla los distinga.
Con etiqueta
variant="button" cuando copiar es la tarea de esa fila: un enlace de pago que el recepcionista va a pegar en WhatsApp. copiedLabel dice qué se copió, no solo que se copió.
https://reservas.hotelcasamar.co/pago/RES-48213
En un campo de solo lectura
Para identificadores y claves que el usuario lleva a otra herramienta. Va en el slot end de un Input con readonly: el valor se puede seleccionar a mano y también copiar de un clic. La letra mono llega al campo interno por su parte CSS, ::part(input).
Caso real: detalle de la reserva
Un botón por dato que se pega en otro sitio: el PMS, un correo, el chat. No lo pongas en datos que nadie copia. Y si el resultado tiene que verse fuera del botón, usa un toast: la confirmación de CopyButton es local y se va en dos segundos.
- Localizador
- RES-48213
- Huésped
- Laura Gómez Restrepo
- Correo
- laura.gomez@correo.com
- Teléfono
- +57 310 482 9175
- Código de check-in
- 7Q4-K2M
API
Generada del custom-elements.json que publica @unozero-ai/ui. Las partes se estilan desde tu CSS con el nombre del elemento: uz-button::part(base).