@props([
    'user',
    'size' => 'md',
])
@php
    $sizeClasses = [
        'xs' => 'h-6 w-6 text-xs',
        'sm' => 'h-8 w-8 text-xs',
        'md' => 'h-10 w-10 text-sm',
        'lg' => 'h-12 w-12 text-base',
        'xl' => 'h-14 w-14 text-lg',
    ];
    $baseClass = 'inline-flex shrink-0 items-center justify-center overflow-hidden rounded-full font-medium ';
    $imgClass = $baseClass . 'bg-slate-200 ' . ($sizeClasses[$size] ?? $sizeClasses['md']);
    $avatarUrl = $user?->getAvatarUrl();
    $initialsClass = $baseClass . ($user?->getAvatarColorClass() ?? 'bg-slate-200 text-slate-800') . ' ' . ($sizeClasses[$size] ?? $sizeClasses['md']);
@endphp
@if($avatarUrl)
    <img
        src="{{ $avatarUrl }}"
        alt="{{ $user->name ?? 'User' }}"
        {{ $attributes->merge(['class' => $imgClass]) }}
    />
@else
    <span {{ $attributes->merge(['class' => $initialsClass]) }}>
        {{ $user?->getInitials() ?? '??' }}
    </span>
@endif
