@props(['state', 'label' => null]) @php $raw = (string) $state; $text = $label ?? ($raw === '' ? '—' : \App\Monitor\HealthEvaluator::stateLabel($raw)); $tone = match ($raw) { 'online', 'ok', 'available', 'running' => 'bg-emerald-50 text-emerald-800 ring-emerald-200', 'waiting', 'idle', 'disabled' => 'bg-slate-100 text-slate-600 ring-slate-200', 'no_recording', 'unavailable', 'problem', 'stopped' => 'bg-amber-50 text-amber-900 ring-amber-200', 'offline', 'fail', 'failed' => 'bg-red-50 text-red-800 ring-red-200', default => 'bg-slate-100 text-slate-600 ring-slate-200', }; @endphp merge(['class' => "inline-flex items-center px-2 py-0.5 rounded-md text-xs font-medium ring-1 ring-inset $tone"]) }}> {{ $text }}