Handle Dokploy project composes in widget
Some checks failed
linter / quality (push) Has been cancelled
tests / ci (push) Has been cancelled
tests / ui (push) Has been cancelled

This commit is contained in:
Codex Agent
2026-01-29 10:45:21 +01:00
parent 78af7838bf
commit dba0cd5882
3 changed files with 136 additions and 2 deletions

View File

@@ -83,6 +83,9 @@
<x-filament::badge color="gray" :icon="Heroicon::RectangleStack">
Apps: {{ $project['applications_count'] ?? 0 }}
</x-filament::badge>
<x-filament::badge color="gray" :icon="Heroicon::ServerStack">
Composes: {{ $project['composes_count'] ?? 0 }}
</x-filament::badge>
<x-filament::badge color="gray" :icon="Heroicon::ServerStack">
Services: {{ $project['services_count'] ?? 0 }}
</x-filament::badge>
@@ -158,6 +161,55 @@
@endforelse
</div>
<div {{ $stacked }}>
<x-filament::badge color="gray" :icon="Heroicon::ServerStack">
Composes
</x-filament::badge>
@forelse($project['composes'] as $compose)
<div {{ $stacked }}>
<x-filament::badge
:color="$statusColors[$compose['status']] ?? 'gray'"
:icon="$statusIcons[$compose['status']] ?? Heroicon::QuestionMarkCircle"
>
{{ $compose['name'] ?? 'Compose' }}
@if(!empty($compose['status']))
({{ strtoupper($compose['status']) }})
@endif
</x-filament::badge>
<div {{ $detailsGrid }}>
@if(!empty($compose['id']))
<x-filament::badge color="gray" :icon="Heroicon::Identification">
{{ $compose['id'] }}
</x-filament::badge>
@endif
<x-filament::badge color="gray" :icon="Heroicon::Clock">
Last deploy:
{{ $compose['last_deploy'] ? \Illuminate\Support\Carbon::parse($compose['last_deploy'])->diffForHumans() : '—' }}
</x-filament::badge>
</div>
@if(!empty($compose['services']))
<div {{ $serviceGrid }}>
@foreach($compose['services'] as $service)
<x-filament::badge
:color="$serviceColors[$service['status']] ?? 'gray'"
:icon="array_key_exists($service['status'] ?? '', $serviceColors) ? Heroicon::Server : Heroicon::QuestionMarkCircle"
>
{{ $service['name'] }}: {{ strtoupper($service['status'] ?? 'N/A') }}
</x-filament::badge>
@endforeach
</div>
@endif
</div>
@empty
<x-filament::badge color="gray" :icon="Heroicon::QuestionMarkCircle">
No composes reported.
</x-filament::badge>
@endforelse
</div>
<div {{ $stacked }}>
<x-filament::badge color="gray" :icon="Heroicon::ServerStack">
Services