*/ protected function getViewData(): array { $tenant = Filament::getTenant(); if (! $tenant instanceof Tenant) { return [ 'shouldShow' => false, ]; } $stats = BaselineCompareStats::forTenant($tenant); $summaryAssessment = $stats->summaryAssessment(); $runUrl = null; if ($stats->operationRunId !== null) { $runUrl = OperationRunLinks::view($stats->operationRunId, $tenant); } $landingUrl = BaselineCompareLanding::getUrl(panel: 'tenant', tenant: $tenant); $nextActionUrl = match ($summaryAssessment->nextActionTarget()) { 'run' => $runUrl, 'findings' => \App\Filament\Resources\FindingResource::getUrl('index', panel: 'tenant', tenant: $tenant), 'landing' => $landingUrl, default => null, }; $shouldShow = in_array($summaryAssessment->stateFamily, ['caution', 'stale', 'unavailable', 'in_progress'], true) || $summaryAssessment->stateFamily === 'action_required'; return [ 'shouldShow' => $shouldShow, 'landingUrl' => $landingUrl, 'runUrl' => $runUrl, 'nextActionUrl' => $nextActionUrl, 'summaryAssessment' => $summaryAssessment->toArray(), 'state' => $stats->state, ]; } }