{{-- Flash Message Component - Animated success/error/info/warning notifications Usage: Automatically displays session flash messages with animations --}} @props([ 'autoHide' => true, 'duration' => 5000 ]) @php $messages = []; if (session('success')) { $messages[] = ['type' => 'success', 'content' => session('success')]; } if (session('error')) { $messages[] = ['type' => 'error', 'content' => session('error')]; } if (session('warning')) { $messages[] = ['type' => 'warning', 'content' => session('warning')]; } if (session('info')) { $messages[] = ['type' => 'info', 'content' => session('info')]; } if (session('message')) { $messages[] = ['type' => 'info', 'content' => session('message')]; } $typeConfig = [ 'success' => [ 'bg' => 'bg-green-50', 'border' => 'border-green-400', 'icon' => 'check-circle', 'iconColor' => 'text-green-400', 'textColor' => 'text-green-800', 'progressColor' => 'bg-green-400' ], 'error' => [ 'bg' => 'bg-red-50', 'border' => 'border-red-400', 'icon' => 'times-circle', 'iconColor' => 'text-red-400', 'textColor' => 'text-red-800', 'progressColor' => 'bg-red-400' ], 'warning' => [ 'bg' => 'bg-yellow-50', 'border' => 'border-yellow-400', 'icon' => 'exclamation-triangle', 'iconColor' => 'text-yellow-400', 'textColor' => 'text-yellow-800', 'progressColor' => 'bg-yellow-400' ], 'info' => [ 'bg' => 'bg-blue-50', 'border' => 'border-blue-400', 'icon' => 'info-circle', 'iconColor' => 'text-blue-400', 'textColor' => 'text-blue-800', 'progressColor' => 'bg-blue-400' ], ]; @endphp @if(count($messages) > 0)
@foreach($messages as $index => $message) @php $config = $typeConfig[$message['type']] ?? $typeConfig['info']; @endphp @endforeach
@endif