@php $pct = min(100, max(0, $getState() / $getTarget() * 100)); $label = number_format($pct, 1) . '%'; $color = match(true) { $pct >= 100 => ['bar' => '#22a94f', 'end' => '#4cd97b', 'bg' => '#dcfce7', 'text' => '#15803d'], $pct >= 60 => ['bar' => '#22a94f', 'end' => '#4cd97b', 'bg' => '#dcfce7', 'text' => '#15803d'], $pct >= 30 => ['bar' => '#f59e0b', 'end' => '#fbbf24', 'bg' => '#fef3c7', 'text' => '#b45309'], default => ['bar' => '#ef4444', 'end' => '#f87171', 'bg' => '#fee2e2', 'text' => '#b91c1c'], }; @endphp
{{-- Percentage label --}}
{{ $label }} / dari {{ number_format($getTarget(), 0, ',', '.') }} @if($isShowValues()) {{ number_format($getState(), 0, ',', '.') }} / {{ number_format($getTarget(), 0, ',', '.') }} @endif
{{-- Track --}}
{{-- Bar --}}