import { Alert, Box, Button, CircularProgress, Stack, Typography } from "@mui/material"; import InboxRoundedIcon from "@mui/icons-material/InboxRounded"; import type { ReactNode } from "react"; export function Loading({ height = 240 }: { height?: number }) { return ( ); } export function ErrorView({ message, onRetry, }: { message: string; onRetry?: () => void; }) { return ( Retry ) : undefined } > {message} ); } export function EmptyView({ title, subtitle, icon, }: { title: string; subtitle?: string; icon?: ReactNode; }) { return ( {icon ?? } {title} {subtitle && ( {subtitle} )} ); }