94 lines
4.4 KiB
PHP
94 lines
4.4 KiB
PHP
<x-filament::page>
|
|
<x-filament::section>
|
|
<div class="flex flex-col gap-4">
|
|
<div class="text-sm text-gray-600 dark:text-gray-300">
|
|
Compare the current tenant state against the assigned baseline profile to detect drift.
|
|
</div>
|
|
|
|
@if (filled($profileName))
|
|
<div class="flex items-center gap-2 text-sm">
|
|
<span class="font-medium text-gray-950 dark:text-white">Baseline Profile:</span>
|
|
<span class="text-gray-700 dark:text-gray-200">{{ $profileName }}</span>
|
|
@if ($snapshotId)
|
|
<x-filament::badge color="success" size="sm">
|
|
Snapshot #{{ $snapshotId }}
|
|
</x-filament::badge>
|
|
@endif
|
|
</div>
|
|
@endif
|
|
|
|
@if ($state === 'no_tenant')
|
|
<x-filament::badge color="gray">No tenant selected</x-filament::badge>
|
|
<div class="text-sm text-gray-500 dark:text-gray-400">{{ $message }}</div>
|
|
@elseif ($state === 'no_assignment')
|
|
<x-filament::badge color="gray">No baseline assigned</x-filament::badge>
|
|
<div class="text-sm text-gray-500 dark:text-gray-400">{{ $message }}</div>
|
|
@elseif ($state === 'no_snapshot')
|
|
<x-filament::badge color="warning">No snapshot available</x-filament::badge>
|
|
<div class="text-sm text-gray-500 dark:text-gray-400">{{ $message }}</div>
|
|
@elseif ($state === 'comparing')
|
|
<div class="flex items-center gap-2">
|
|
<x-filament::badge color="info">Comparing…</x-filament::badge>
|
|
<x-filament::loading-indicator class="h-4 w-4" />
|
|
</div>
|
|
<div class="text-sm text-gray-500 dark:text-gray-400">{{ $message }}</div>
|
|
|
|
@if ($this->getRunUrl())
|
|
<x-filament::link :href="$this->getRunUrl()" size="sm">
|
|
View operation run
|
|
</x-filament::link>
|
|
@endif
|
|
@elseif ($state === 'idle')
|
|
<x-filament::badge color="gray">Ready to compare</x-filament::badge>
|
|
<div class="text-sm text-gray-500 dark:text-gray-400">{{ $message }}</div>
|
|
@elseif ($state === 'ready')
|
|
@if ($findingsCount !== null && $findingsCount > 0)
|
|
<div class="flex flex-wrap items-center gap-2">
|
|
<x-filament::badge color="danger" size="sm">
|
|
{{ $findingsCount }} {{ Str::plural('finding', $findingsCount) }}
|
|
</x-filament::badge>
|
|
|
|
@if (($severityCounts['high'] ?? 0) > 0)
|
|
<x-filament::badge color="danger" size="sm">
|
|
{{ $severityCounts['high'] }} high
|
|
</x-filament::badge>
|
|
@endif
|
|
|
|
@if (($severityCounts['medium'] ?? 0) > 0)
|
|
<x-filament::badge color="warning" size="sm">
|
|
{{ $severityCounts['medium'] }} medium
|
|
</x-filament::badge>
|
|
@endif
|
|
|
|
@if (($severityCounts['low'] ?? 0) > 0)
|
|
<x-filament::badge color="gray" size="sm">
|
|
{{ $severityCounts['low'] }} low
|
|
</x-filament::badge>
|
|
@endif
|
|
</div>
|
|
|
|
@if ($this->getFindingsUrl())
|
|
<x-filament::link :href="$this->getFindingsUrl()" size="sm">
|
|
View findings
|
|
</x-filament::link>
|
|
@endif
|
|
@else
|
|
<x-filament::badge color="success" size="sm">
|
|
No drift detected
|
|
</x-filament::badge>
|
|
|
|
@if (filled($message))
|
|
<div class="text-sm text-gray-500 dark:text-gray-400">{{ $message }}</div>
|
|
@endif
|
|
@endif
|
|
|
|
@if ($this->getRunUrl())
|
|
<x-filament::link :href="$this->getRunUrl()" size="sm">
|
|
View last run
|
|
</x-filament::link>
|
|
@endif
|
|
@endif
|
|
</div>
|
|
</x-filament::section>
|
|
</x-filament::page>
|