import Image from "next/image"; import { twMerge } from "tailwind-merge"; import { getInitialsFromName, inferInitialsFromEmail } from "~/utils/helpers"; const sizeMap = { xs: 20, sm: 24, md: 36, lg: 48, } as const; const Avatar = ({ size = "md", name, email, icon, imageUrl, isLoading, }: { size?: "xs" | "sm" | "md" | "lg"; name: string; email: string; imageUrl?: string; icon?: React.ReactNode; isLoading?: boolean; }) => { const initials = name ? getInitialsFromName(name) : inferInitialsFromEmail(email); return ( <> {imageUrl ? ( ) : ( {icon ? ( {icon} ) : ( {initials} )} )} ); }; export default Avatar;