@php $items = collect($items ?? []); $title = $title ?? __('Recent Items'); $icon = $icon ?? 'fa-list'; $color = $color ?? 'primary'; $primaryField = $primaryField ?? 'id'; $secondaryField = $secondaryField ?? null; $routeParam = $routeParam ?? 'id'; $fallbackCurrency = currency_code($currency ?? default_currency()); @endphp
{{ $title }}
@if(isset($routeList) && Route::has($routeList)) @endif
@forelse($items as $item) @php $primaryValue = data_get($item, $primaryField, __('Unknown')); $secondaryValue = $secondaryField ? data_get($item, $secondaryField) : null; if ( filled($secondaryValue) && strcasecmp( trim((string) $primaryValue), trim((string) $secondaryValue) ) === 0 ) { $secondaryValue = null; } $metaValue = isset($metaField) ? data_get($item, $metaField) : null; $badgeValue = isset($badgeField) ? trim((string) data_get($item, $badgeField, '')) : ''; $badgeClass = match (strtolower($badgeValue)) { 'paid', 'completed', 'active', 'approved', 'delivered' => 'bg-success', 'pending', 'awaiting payment' => 'bg-warning text-dark', 'processing', 'in progress' => 'bg-info text-dark', 'shipped', 'in transit' => 'bg-primary', 'cancelled', 'rejected', 'failed', 'banned' => 'bg-danger', default => 'bg-light text-dark border', }; $routeValue = data_get($item, $routeParam); $detailUrl = isset($route) && Route::has($route) && filled($routeValue) ? route($route, $routeValue) : '#'; $avatar = isset($avatarField) ? data_get($item, $avatarField) : null; $itemCurrency = currency_code( isset($currencyField) ? data_get($item, $currencyField) : ( data_get($item, 'price_currency') ?? data_get($item, 'currency_code') ?? data_get($item, 'currency') ?? $fallbackCurrency ) ); @endphp
@if(filled($avatar)) {{ $primaryValue }} @else
@endif
{{ $primaryPrefix ?? '' }}{{ $primaryValue }}
@if(filled($secondaryValue) || filled($metaValue))
@if(filled($secondaryValue)) {{ $secondaryValue }} @endif @if(filled($secondaryValue) && filled($metaValue)) @endif @if(filled($metaValue)) {{ $metaValue }} @endif
@endif @if(filled($badgeValue) && ! isset($valueField)) {{ $badgeValue }} @endif
@if(isset($valueField) || filled($badgeValue))
@if(isset($valueField))
{{ money(data_get($item, $valueField, 0), $itemCurrency) }}
@endif @if(filled($badgeValue) && isset($valueField)) {{ $badgeValue }} @endif
@endif
@empty

{{ $emptyMessage ?? __('No recent items available.') }}

@endforelse
@once @push('styles') @endpush @endonce