feat(proxmox): add smart firewall workflow and UI refresh

Introduce starter firewall rule templates, one-click rule creation from log entries, and quick log filter presets to speed up incident response. Add a shared quick actions hub plus refreshed help and overview surfaces to improve discoverability and make key VPS tasks faster.

Made-with: Cursor
This commit is contained in:
2026-03-28 16:24:12 -04:00
parent 3246a86f91
commit b8677f5b7d
5 changed files with 320 additions and 11 deletions

View File

@@ -38,6 +38,49 @@
<x-ri-arrow-right-s-line class="size-3" />
<span class="text-base/70">Help</span>
</div>
<div class="mb-6">
<h2 class="text-sm font-semibold uppercase tracking-wide text-base/60 mb-3">Top tasks</h2>
<div class="grid grid-cols-1 sm:grid-cols-2 xl:grid-cols-4 gap-3">
<a href="{{ route('proxmox.server.firewall', ['server' => $server->id]) }}"
wire:navigate
class="group rounded-xl border border-neutral/30 bg-background-secondary/50 p-4 hover:border-primary/40 hover:bg-primary/5 transition-colors">
<div class="flex items-center gap-2 mb-2">
<x-ri-shield-line class="size-4 text-primary" />
<span class="text-sm font-semibold">Secure Firewall</span>
</div>
<p class="text-xs text-base/60">Open firewall rules and apply baseline templates quickly.</p>
</a>
@if($server->node?->vnc_enabled)
<a href="{{ route('proxmox.server.xterm', ['server' => $server->id]) }}"
wire:navigate
class="group rounded-xl border border-neutral/30 bg-background-secondary/50 p-4 hover:border-primary/40 hover:bg-primary/5 transition-colors">
<div class="flex items-center gap-2 mb-2">
<x-ri-terminal-box-line class="size-4 text-primary" />
<span class="text-sm font-semibold">Open Console</span>
</div>
<p class="text-xs text-base/60">Launch terminal access for immediate troubleshooting.</p>
</a>
@endif
<a href="{{ route('proxmox.server.cloud-init', ['server' => $server->id]) }}"
wire:navigate
class="group rounded-xl border border-neutral/30 bg-background-secondary/50 p-4 hover:border-primary/40 hover:bg-primary/5 transition-colors">
<div class="flex items-center gap-2 mb-2">
<x-ri-cloud-line class="size-4 text-primary" />
<span class="text-sm font-semibold">Configure Cloud-init</span>
</div>
<p class="text-xs text-base/60">Update hostname, credentials, and bootstrap settings.</p>
</a>
<a href="{{ route('proxmox.server.network', ['server' => $server->id]) }}"
wire:navigate
class="group rounded-xl border border-neutral/30 bg-background-secondary/50 p-4 hover:border-primary/40 hover:bg-primary/5 transition-colors">
<div class="flex items-center gap-2 mb-2">
<x-ri-router-line class="size-4 text-primary" />
<span class="text-sm font-semibold">Fix Networking</span>
</div>
<p class="text-xs text-base/60">Review adapters, IP assignments, and connectivity settings.</p>
</a>
</div>
</div>
<div class="space-y-6" x-data="{
activeSection: 'overview',
expandedCategories: {