Toast

Un componente de notificaciones toast moderno con animaciones fluidas, múltiples posiciones y variantes de estilo.

Cargando...
import { ToastProvider, useToast } from "stofli-ui";
Cargando...

Un toast simple con título y descripción.

Cargando...
Cargando...

Toasts con diferentes variantes de estilo.

Cargando...
Cargando...

Toasts que aparecen en diferentes posiciones de la pantalla.

Cargando...
Cargando...

Toasts que incluyen iconos para mejorar la comunicación visual.

Cargando...
Cargando...

Toast con duración personalizada antes de desaparecer automáticamente.

Cargando...
Cargando...

El componente ahora admite mostrar múltiples toasts simultáneamente, organizados según su posición.

Cargando...
Cargando...

Puedes personalizar cualquier parte del componente usando las propiedades de clases personalizadas con Tailwind CSS. Cuando proporcionas clases personalizadas, estas tienen prioridad sobre los estilos predeterminados.

Cargando...
Cargando...

Puedes usar el hook useToast dentro del ToastProvider para mostrar toasts desde cualquier parte de tu aplicación.

import { ToastProvider, useToast } from "stofli-ui";
import { Button } from "stofli-ui";
 
export default function ToastWithButtons() {
  return (
    <ToastProvider>
      <ToastButton />
    </ToastProvider>
  );
}
 
function ToastButton() {
  const { open } = useToast();
 
  return (
    <div className="flex flex-wrap gap-2">
      <Button
        variant="success"
        onClick={() =>
          open({
            title: "Notificación",
            description: "Operación completada correctamente",
            variant: "success",
          })
        }
      >
        Mostrar notificación
      </Button>
 
      <Button
        variant="danger"
        onClick={() =>
          open({
            title: "Error",
            description: "Ha ocurrido un error inesperado",
            variant: "danger",
          })
        }
      >
        Mostrar error
      </Button>
    </div>
  );
}
Cargando...
PropTipoDefaultDescripción
idstring-ID único para el toast
openboolean-Estado controlado del toast
defaultOpenbooleanfalseEstado inicial del toast si no es controlado
onOpenChange(open: boolean) => void-Función llamada cuando cambia el estado
titlestring-Título del toast
descriptionstring-Descripción o mensaje del toast
variant"default" | "primary" | "secondary" | "success" | "warning" | "danger""default"Variante de estilo
position"top-left" | "top-right" | "bottom-left" | "bottom-right" | "top-center" | "bottom-center""bottom-right"Posición en la pantalla
durationnumber5000Duración en ms antes de cerrarse automáticamente (use Infinity para que no desaparezca)
showCloseButtonbooleantrueMuestra un botón para cerrar el toast
classNamestring-Clases adicionales para el contenedor
childrenReact.ReactNode-Contenido personalizado del toast
iconReact.ReactNode-Icono para mostrar junto al contenido
containerClassNamestring-Clases para el contenedor principal del toast
toastClassNamestring-Clases para el fondo y borde del toast
titleClassNamestring-Clases para el título del toast
descriptionClassNamestring-Clases para la descripción del toast
iconContainerClassNamestring-Clases para el contenedor del icono
contentClassNamestring-Clases para el contenedor del contenido principal
closeButtonClassNamestring-Clases para el botón de cerrar
role"status" | "alert""status"Rol ARIA para accesibilidad
importantbooleanfalseSi es true, usa aria-live="assertive" para anuncios importantes