{{-- Props: - stage: string (unsent | contacted | interested | followup | closed) - size: "sm" | "md" | "lg" (default md) - pulse: bool — añade pulso animado en seguimiento/interesado (default auto) - icon: bool — mostrar icono (default true) Lee `MissileDraft::salesStageColumns()` para resolver label/icon/class. --}} @props([ 'stage' => 'unsent', 'size' => 'md', 'pulse' => null, 'icon' => true, ]) @php $columns = \App\Models\MissileDraft::salesStageColumns(); $def = $columns[$stage] ?? ['label' => ucfirst($stage), 'icon' => 'fa-circle', 'class' => 'secondary', 'hint' => '']; $sizeClasses = [ 'sm' => 'badge-sm fs-9 px-2 py-1', 'md' => 'fs-8 px-3 py-2', 'lg' => 'fs-7 px-4 py-2', ][$size] ?? 'fs-8 px-3 py-2'; $shouldPulse = $pulse ?? in_array($stage, ['interested', 'followup'], true); @endphp @if($icon) @endif {{ $def['label'] }} @once @push('styles') @endpush @endonce