feat: Update Proxmox extension with various improvements and bug fixes
- Change listStates method to accept nullable integer for limit parameter. - Modify TechnitiumDns class to return structured error messages on failure. - Enhance VNC and xterm popup routes with user authorization checks. - Update backups view to improve loading states and add unique keys for dynamic elements. - Refactor cloud-init view to ensure proper data binding and improve user experience. - Add wire:key attributes to various elements in views for better Livewire performance. - Improve error handling and user feedback in the firewall view. - Update server overview and statistics views to handle potential null values gracefully. - Add new migration files to extend database schema with user-set icons and notes for Proxmox nodes.
This commit is contained in:
@@ -291,7 +291,7 @@
|
||||
@else
|
||||
<div class="divide-y divide-neutral">
|
||||
@foreach($drives as $driveKey => $drive)
|
||||
<div class="p-4 hover:bg-background/50 transition-colors">
|
||||
<div wire:key="drive-{{ $driveKey }}" class="p-4 hover:bg-background/50 transition-colors">
|
||||
<div class="flex flex-col lg:flex-row lg:items-center justify-between gap-4">
|
||||
<div class="flex items-start gap-4">
|
||||
<div class="flex items-center justify-center w-10 h-10 rounded-lg bg-primary/10 flex-shrink-0">
|
||||
@@ -432,7 +432,7 @@
|
||||
|
||||
<div class="divide-y divide-neutral">
|
||||
@foreach($unusedDrives as $unusedKey => $unusedDrive)
|
||||
<div class="p-4 hover:bg-background/50 transition-colors">
|
||||
<div wire:key="unused-{{ $unusedKey }}" class="p-4 hover:bg-background/50 transition-colors">
|
||||
<div class="flex flex-col lg:flex-row lg:items-center justify-between gap-4">
|
||||
<div class="flex items-start gap-4">
|
||||
<div class="flex items-center justify-center w-10 h-10 rounded-lg bg-warning/10 flex-shrink-0">
|
||||
@@ -856,10 +856,10 @@
|
||||
</button>
|
||||
<button wire:click="detachDrive"
|
||||
wire:loading.attr="disabled"
|
||||
style="padding: 0.5rem 1rem; font-size: 0.875rem; font-weight: 500; border-radius: 0.5rem; background-color: rgb(234 179 8); color: white; transition: background-color 0.15s ease;"
|
||||
style="padding: 0.5rem 1rem; font-size: 0.875rem; font-weight: 500; border-radius: 0.5rem; background-color: rgb(234 179 8); color: white; transition: background-color 0.15s ease;{{ ($status && $status->status !== 'stopped') ? ' opacity: 0.5; cursor: not-allowed;' : '' }}"
|
||||
onmouseover="this.style.backgroundColor='rgb(202 138 4)'"
|
||||
onmouseout="this.style.backgroundColor='rgb(234 179 8)'"
|
||||
@if($status && $status->status !== 'stopped') disabled style="opacity: 0.5;" @endif>
|
||||
@if($status && $status->status !== 'stopped') disabled @endif>
|
||||
<x-loading target="detachDrive" />
|
||||
<span wire:loading.remove wire:target="detachDrive">Detach Drive</span>
|
||||
<span wire:loading wire:target="detachDrive">Detaching...</span>
|
||||
@@ -918,10 +918,10 @@
|
||||
</button>
|
||||
<button wire:click="deleteDrive"
|
||||
wire:loading.attr="disabled"
|
||||
style="padding: 0.5rem 1rem; font-size: 0.875rem; font-weight: 500; border-radius: 0.5rem; background-color: rgb(239 68 68); color: white; transition: background-color 0.15s ease;"
|
||||
style="padding: 0.5rem 1rem; font-size: 0.875rem; font-weight: 500; border-radius: 0.5rem; background-color: rgb(239 68 68); color: white; transition: background-color 0.15s ease;{{ ($status && $status->status !== 'stopped') ? ' opacity: 0.5; cursor: not-allowed;' : '' }}"
|
||||
onmouseover="this.style.backgroundColor='rgb(220 38 38)'"
|
||||
onmouseout="this.style.backgroundColor='rgb(239 68 68)'"
|
||||
@if($status && $status->status !== 'stopped') disabled style="opacity: 0.5;" @endif>
|
||||
@if($status && $status->status !== 'stopped') disabled @endif>
|
||||
<x-loading target="deleteDrive" />
|
||||
<span wire:loading.remove wire:target="deleteDrive">Delete Drive</span>
|
||||
<span wire:loading wire:target="deleteDrive">Deleting...</span>
|
||||
@@ -935,7 +935,7 @@
|
||||
<!-- Reattach Drive Modal -->
|
||||
@if($showReattachModal)
|
||||
<div class="fixed inset-0 z-50 overflow-y-auto">
|
||||
<div class="fixed inset-0 bg-black/50 transition-opacity"></div>
|
||||
<div class="fixed inset-0 bg-black/50 backdrop-blur-sm transition-opacity" wire:click="closeReattachModal"></div>
|
||||
<div class="flex min-h-full items-center justify-center p-4">
|
||||
<div class="relative w-full max-w-lg transform overflow-hidden rounded-xl bg-background border border-neutral shadow-xl transition-all">
|
||||
<div class="flex items-center justify-between p-5 border-b border-neutral">
|
||||
|
||||
Reference in New Issue
Block a user