'use client'; const getImageUrl = (imageKey) => { if (!imageKey) return null; return `/zen/api/storage/${imageKey}`; }; const getUserInitials = (name) => { if (!name) return 'U'; return name.split(' ').map(n => n[0]).join('').toUpperCase().slice(0, 2); }; const sizeMap = { sm: { wrapper: 'w-[26px] h-[26px]', text: 'text-[10px]' }, md: { wrapper: 'w-8 h-8', text: 'text-[11px]' }, lg: { wrapper: 'w-16 h-16', text: 'text-xl' }, xl: { wrapper: 'w-24 h-24', text: 'text-2xl' }, }; const UserAvatar = ({ user, size = 'md' }) => { const imageUrl = getImageUrl(user?.image); const initials = getUserInitials(user?.name); const { wrapper, text } = sizeMap[size] ?? sizeMap.md; if (imageUrl) { return ( {user?.name ); } return (
{initials}
); }; export default UserAvatar;