@props([ 'src' => null, 'name' => '', 'size' => 'md', // xs sm md lg xl 'shape' => 'circle', // circle | square 'status' => null, // online | offline | away ]) @php $sizeClass = 'avatar--' . $size; $shapeClass = 'avatar--' . $shape; $initials = collect(preg_split('/\s+/', trim((string) $name))) ->filter() ->take(2) ->map(fn ($p) => mb_strtoupper(mb_substr($p, 0, 1))) ->implode(''); $initials = $initials !== '' ? $initials : '?'; @endphp merge(['class' => 'avatar ' . $sizeClass . ' ' . $shapeClass]) }} title="{{ $name }}"> @if($src) {{ $name }} @else {{ $initials }} @endif @if($status) @endif