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:
2026-02-23 17:23:01 -05:00
parent 9aff64be93
commit f394483daa
48 changed files with 442 additions and 268 deletions

View File

@@ -258,7 +258,7 @@
</thead>
<tbody class="divide-y divide-neutral/20 text-base text-base/80">
@foreach($interfaces as $name => $type)
<tr>
<tr wire:key="iface-{{ $name }}">
<td class="px-4 py-3 font-semibold">{{ strtoupper($name) }}</td>
<td class="px-4 py-3">
<select wire:model.live="interfaceSelections.{{ $name }}"
@@ -307,7 +307,7 @@
<button wire:click="removeInterface('{{ $name }}')"
wire:loading.attr="disabled"
class="text-error hover:text-error/80 disabled:text-base/30 mx-1"
:disabled="!$this->canRemoveInterfaces"
:disabled="!$wire.canRemoveInterfaces"
title="Remove">
<x-ri-delete-bin-fill class="inline size-4" />
</button>