@php use Filament\Support\Enums\GridDirection; use Filament\Support\Icons\Heroicon; use Illuminate\View\ComponentAttributeBag; $statusColors = [ 'healthy' => 'success', 'pending' => 'warning', 'degraded' => 'danger', 'unconfigured' => 'danger', 'unknown' => 'gray', ]; $statusIcons = [ 'healthy' => Heroicon::CheckCircle, 'pending' => Heroicon::Clock, 'degraded' => Heroicon::ExclamationTriangle, 'unconfigured' => Heroicon::XCircle, 'unknown' => Heroicon::QuestionMarkCircle, ]; $cardsGrid = (new ComponentAttributeBag())->grid(['default' => 1, 'lg' => 2]); $metricsGrid = (new ComponentAttributeBag())->grid(['default' => 1], GridDirection::Column); @endphp
@forelse($providers as $provider) {{ $provider['is_configured'] ? __('admin.integrations_health.configured') : __('admin.integrations_health.unconfigured') }} {{ $provider['status_label'] }}
{{ __('admin.integrations_health.last_received') }}: {{ optional(data_get($provider, 'last_event.received_at'))->diffForHumans() ?? '—' }} {{ __('admin.integrations_health.last_processed') }}: {{ optional(data_get($provider, 'last_processed.processed_at'))->diffForHumans() ?? '—' }} {{ __('admin.integrations_health.processing_lag') }}: {{ $provider['processing_lag']['label'] ?? '—' }} {{ __('admin.integrations_health.pending_events') }}: {{ number_format($provider['pending_count']) }} {{ __('admin.integrations_health.recent_failures') }}: {{ number_format($provider['recent_failures']) }} {{ __('admin.integrations_health.queue_backlog') }}: {{ number_format($provider['queue_backlog']) }} {{ __('admin.integrations_health.failed_jobs') }}: {{ number_format($provider['failed_jobs']) }} @if(! empty(data_get($provider, 'last_failed.error_message'))) {{ __('admin.integrations_health.last_error') }}: {{ data_get($provider, 'last_failed.error_message') }} @endif
@empty @endforelse