import { Button } from "@repo/shadcn-ui/components"; import * as React from "react"; import { FallbackProps } from "react-error-boundary"; /** * 1) Fallback simple */ export function SimpleFallback({ error, resetErrorBoundary }: FallbackProps) { return (

⚠️ Algo salió mal

{error?.message}
); } /** * 2) Fallback de sección (tarjeta compacta) */ export function SectionCardFallback({ error, resetErrorBoundary }: FallbackProps) { return (
❗

No se pudo cargar esta sección

{error?.message}

); } /** * 3) Fallback pantalla completa */ export function FullPageFallback({ error }: FallbackProps) { return (
😵

Ocurrió un error inesperado

{error?.message}

Volver al inicio
); } /** * 4) Fallback para listas */ export function ListFallback({ error, resetErrorBoundary }: FallbackProps) { return (
🗂️

No pudimos cargar la lista.

{error?.message}

); } /** * 5) Fallback para formularios */ export function FormFallback({ error, resetErrorBoundary }: FallbackProps) { return (

No se pudo mostrar el formulario

{error?.message}

); } /** * 6) Fallback para problemas de red */ export function NetworkFallback({ error, resetErrorBoundary }: FallbackProps) { const note = navigator.onLine ? "La conexión parece estar activa." : "Estás sin conexión. Revisa tu red y reintenta."; return (
No pudimos obtener los datos

{error?.message}

{note}

); } /** * 7) Fallback modo desarrollador (detalle de stack) */ export function DevDetailsFallback({ error, resetErrorBoundary }: FallbackProps) { const [open, setOpen] = React.useState(false); return (

Algo falló

{open && (
          {error?.stack || error?.message}
        
)}
); } /** * 8) Fallback con soporte (link a ayuda) */ export function SupportFallback({ error, resetErrorBoundary }: FallbackProps) { return (

No pudimos completar la acción

{error?.message}

Ir a Ayuda Contactar soporte
); }