refactor: modify log loading behavior in Proxmox Firewall component to prevent event dispatch on initial load, enhancing performance and user experience

This commit is contained in:
2025-12-02 15:48:17 -05:00
parent 2eb67b311b
commit 39f06a6293
2 changed files with 21 additions and 5 deletions

View File

@@ -323,12 +323,23 @@
@if(count($firewallLogs) > 0)
<div
wire:ignore.self
x-data="{
logs: @js($firewallLogs),
logs: [],
searchTerm: '',
sortField: 'timestamp_iso',
sortDirection: 'desc',
init() {
// Use window storage to persist logs across Livewire updates
if (!window.firewallLogsCache) {
window.firewallLogsCache = @js($firewallLogs);
}
this.logs = window.firewallLogsCache;
},
refreshLogs() {
// Update cache when refresh button is clicked
window.firewallLogsCache = @js($firewallLogs);
this.logs = window.firewallLogsCache;
},
sort(field) {
if (this.sortField === field) {
this.sortDirection = this.sortDirection === 'asc' ? 'desc' : 'asc';
@@ -373,7 +384,7 @@
});
},
}"
@logs-updated.window="logs = $event.detail.logs || $event.detail[0]?.logs || $event.detail[0] || []"
@logs-refreshed.window="refreshLogs()"
class="space-y-4"
>
<div class="flex flex-col md:flex-row md:items-center md:justify-between gap-3">