TenantAtlas/apps/platform/resources/views/filament/modals/tenant-configuration/coverage-v2-resource-inspect.blade.php
Ahmed Darrazi d1f7fbd4c6
Some checks failed
PR Fast Feedback / fast-feedback (pull_request) Failing after 1m15s
feat: add coverage v2 operator surface
2026-06-26 14:48:49 +02:00

76 lines
3.3 KiB
PHP

@php
$badge = function (\App\Support\Badges\BadgeDomain $domain, ?string $state): ?\App\Support\Badges\BadgeSpec {
return filled($state) ? \App\Support\Badges\BadgeRenderer::spec($domain, $state) : null;
};
$badges = [
'Coverage' => $badge(\App\Support\Badges\BadgeDomain::CoverageV2CoverageLevel, $details['coverage_level'] ?? null),
'Evidence' => $badge(\App\Support\Badges\BadgeDomain::CoverageV2EvidenceState, $details['evidence_state'] ?? null),
'Identity' => $badge(\App\Support\Badges\BadgeDomain::CoverageV2IdentityState, $details['identity_state'] ?? null),
'Claim' => $badge(\App\Support\Badges\BadgeDomain::CoverageV2ClaimState, $details['claim_state'] ?? null),
'Source' => $badge(\App\Support\Badges\BadgeDomain::CoverageV2SourceClass, $details['source_class'] ?? null),
];
$safeFields = [
'Resource type' => $details['resource_type'] ?? null,
'Canonical type' => $details['canonical_type'] ?? null,
'Canonical key' => $details['canonical_resource_key'] ?? null,
'Provider connection' => $details['provider_connection'] ?? null,
'Evidence hash' => $details['evidence_hash'] ?? null,
'Last captured' => $details['last_captured'] ?? null,
'Source contract' => $details['source_contract_key'] ?? null,
'Source version' => $details['source_version'] ?? null,
'Source schema hash' => $details['source_schema_hash'] ?? null,
'Capture outcome' => $details['capture_outcome'] ?? null,
'Identity reason' => $details['identity_reason_code'] ?? null,
];
@endphp
<div class="space-y-5">
<div class="flex flex-wrap gap-2">
@foreach ($badges as $label => $spec)
@if ($spec)
<x-filament::badge :color="$spec->color" :icon="$spec->icon">
{{ $label }}: {{ $spec->label }}
</x-filament::badge>
@endif
@endforeach
</div>
@if (($details['blockers'] ?? []) !== [])
<div class="space-y-2">
<div class="text-sm font-medium text-gray-950 dark:text-white">
Activation blockers
</div>
<div class="flex flex-wrap gap-2">
@foreach ($details['blockers'] as $blocker)
<x-filament::badge color="warning" icon="heroicon-m-exclamation-triangle">
{{ $blocker }}
</x-filament::badge>
@endforeach
</div>
</div>
@endif
<dl class="grid gap-3 sm:grid-cols-2">
@foreach ($safeFields as $label => $value)
@if (filled($value))
<div class="min-w-0 border-l border-gray-200 pl-3 dark:border-white/10">
<dt class="text-xs font-medium text-gray-500 dark:text-gray-400">
{{ $label }}
</dt>
<dd class="mt-1 break-words text-sm text-gray-950 dark:text-white">
{{ $value }}
</dd>
</div>
@endif
@endforeach
</dl>
@if (filled($details['operation_run_url'] ?? null))
<x-filament::link :href="$details['operation_run_url']" icon="heroicon-o-arrow-top-right-on-square">
{{ $details['operation_run_label'] ?? 'Open operation' }}
</x-filament::link>
@endif
</div>