Fab

Botón flotante para la acción recurrente de una superficie de móvil o de chat.

Usar

import { Fab } from "@unozero-ai/ui/react";

<Fab></Fab>

Configurador

El Fab es position: fixed: flota a 32 px de la esquina de la ventana, sobre todo lo demás (z-index: 40). En esta página se ancla al recuadro de cada ejemplo para que no tape la documentación. El icono es su hijo (children): ya no hay prop icon.

pulse
<Fab label="Nueva conversación"><MessageSquarePlus /></Fab>

En una pantalla

Uno por pantalla, para la acción que se repite en una superficie de móvil o de chat: abrir una conversación, registrar un huésped. En un panel de escritorio denso esa acción va en un Button de la cabecera. Su sombra cian es uno de los pocos sitios donde el glow está permitido (la Regla del Glow Reservado).

En la demo, className="absolute" y la tarjeta relative lo anclan al marco (en CSS, uz-fab { position: absolute }). En tu pantalla quítalos y ponlo al final del árbol, fuera de cualquier contenedor con overflow. El tooltip aparece al pasar el ratón y también con el foco del teclado, y sirve de nombre accesible; sin él, pasa label, que sustituye al aria-label del kit React.

  • Laura Gómez

    ¿El desayuno está incluido en la tarifa?

    09:42
  • Martín Herrera

    Llegamos hacia las 11 de la noche

    09:15
  • Camila Ríos

    Perfecto, quedo atenta al enlace de pago

    Ayer
  • Andrés Pardo

    ¿Tienen parqueadero cubierto?

    Ayer

Posición

bottom-right es la esquina del pulgar en móvil. Usa bottom-left solo cuando la derecha ya está ocupada, por ejemplo por el widget de chat de la web del hotel o por los avisos.

bottom-right, por defecto

bottom-left, si la derecha está ocupada

Con y sin pulso

pulse viene activo y late sin parar; con movimiento reducido ya no anima. Déjalo para presentar una acción nueva y apágalo con pulse={false} en las pantallas que se usan a diario: un latido permanente deja de llamar la atención y cansa.

Con pulso: una acción nueva que el usuario aún no ha usado

Sin pulso: la acción de todos los días

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).

Fab · <uz-fab>

PropTipoDefectoDescripción
labelstring""Nombre accesible. Sin él se usa tooltip: un botón de solo icono necesita uno de los dos.
tooltipstring""Texto al lado del botón con el ratón o el foco; sin label, también es el nombre accesible.
position"bottom-right" | "bottom-left""bottom-right"Esquina de la ventana donde flota.
pulsebooleantrueLatido para presentar una acción nueva; pulse="false" lo apaga desde HTML.
SlotDescripción
(por defecto)El icono (un <svg>).
Parte CSSDescripción
uz-fab::part(base)El <button> interno.