{{-- Stat Card Component - AdminLTE Theme Based on AdminLTE v4 Small Box / Info Box styling patterns Usage: --}} @props([ 'value', 'label', 'suffix' => null, 'prefix' => null, 'icon' => null, 'iconClass' => '', 'variant' => null, // primary, success, warning, danger, info 'status' => null, 'statusText' => null, 'href' => null, 'progress' => null, 'progressColor' => 'primary', 'clickable' => false, 'compact' => false, 'change' => null, 'changeLabel' => null, ]) @php $tag = $href ? 'a' : 'div'; $variantConfig = [ 'primary' => ['bg' => 'bg-primary', 'class' => 'lte-bg-primary'], 'success' => ['bg' => 'bg-success', 'class' => 'lte-bg-success'], 'warning' => ['bg' => 'bg-warning', 'class' => 'lte-bg-warning'], 'danger' => ['bg' => 'bg-danger', 'class' => 'lte-bg-danger'], 'info' => ['bg' => 'bg-info', 'class' => 'lte-bg-info'], ]; $progressColors = [ 'primary' => 'lte-bg-primary', 'success' => 'lte-bg-success', 'warning' => 'lte-bg-warning', 'danger' => 'lte-bg-danger', 'info' => 'lte-bg-info', ]; $statusClasses = [ 'success' => 'lte-text-success', 'warning' => 'lte-text-warning', 'danger' => 'lte-text-danger', 'info' => 'lte-text-info', 'muted' => 'lte-text-muted', ]; $statusClass = $statusClasses[$status] ?? ''; $progressBarColor = $progressColors[$progressColor] ?? $progressColors['primary']; @endphp @if($variant) {{-- Small Box Style (colored background) --}} <{{ $tag }} @if($href) href="{{ $href }}" @endif {{ $attributes->class([ 'lte-small-box lte-fade-in transition-all duration-300 hover:shadow-lg hover:-translate-y-0.5 hover:scale-[1.01]', $variantConfig[$variant]['class'] ?? 'lte-bg-primary', ]) }} >

{{ $prefix }}{{ $value }}@if($suffix){{ $suffix }}@endif

{{ $label }}

@if($icon)
@endif @if($statusText) @endif @else {{-- Info Box Style (white background with icon accent) --}} <{{ $tag }} @if($href) href="{{ $href }}" @endif {{ $attributes->class([ 'lte-info-box lte-fade-in group transition-all duration-300 hover:shadow-md hover:-translate-y-0.5', 'cursor-pointer' => $href || $clickable, ]) }} > @if($icon) @endif
{{ $label }} @if($prefix){{ $prefix }}@endif{{ $value }}@if($suffix){{ $suffix }}@endif @if($change !== null || $changeLabel)
@if($change !== null) {{ $change >= 0 ? '+' : '' }}{{ $change }}% @endif {{ $changeLabel ?? 'from last period' }}
@endif @if($progress !== null)
@endif @if($statusText) {{ $statusText }} @endif
@endif