From 6e051e258b8e1e889fefa04ae25dc9a5e9aadcf0 Mon Sep 17 00:00:00 2001 From: Phil Bastian Date: Thu, 30 Oct 2025 15:37:45 +0800 Subject: [PATCH 1/3] fix auditlist incrementing registered count on each autorefresh change and fix autorefresh interval change --- src/Frontend/src/components/audit/AuditList.vue | 4 ++-- src/Frontend/src/composables/autoRefresh.ts | 8 ++++++-- 2 files changed, 8 insertions(+), 4 deletions(-) diff --git a/src/Frontend/src/components/audit/AuditList.vue b/src/Frontend/src/components/audit/AuditList.vue index 1004e7113..423644e71 100644 --- a/src/Frontend/src/components/audit/AuditList.vue +++ b/src/Frontend/src/components/audit/AuditList.vue @@ -15,7 +15,7 @@ const { messages, totalCount, sortBy, messageFilterString, selectedEndpointName, const route = useRoute(); const router = useRouter(); const autoRefreshValue = ref(null); -const { refreshNow, isRefreshing, updateInterval, start, stop } = useFetchWithAutoRefresh("audit-list", store.refresh, 3000); +const { refreshNow, isRefreshing, updateInterval, isActive, start, stop } = useFetchWithAutoRefresh("audit-list", store.refresh, 0); const firstLoad = ref(true); onBeforeMount(() => { @@ -82,7 +82,7 @@ watch(autoRefreshValue, (newValue) => { updateInterval(newValue || 0); if (newValue === null || newValue === 0) { stop(); - } else { + } else if (!isActive.value) { start(); } }); diff --git a/src/Frontend/src/composables/autoRefresh.ts b/src/Frontend/src/composables/autoRefresh.ts index eb01dc397..5ebaf166c 100644 --- a/src/Frontend/src/composables/autoRefresh.ts +++ b/src/Frontend/src/composables/autoRefresh.ts @@ -14,7 +14,7 @@ export default function useFetchWithAutoRefresh(name: string, fetch: () => Promi await fetch(); isRefreshing.value = false; }; - const { pause, resume } = useTimeoutPoll( + const { isActive, pause, resume } = useTimeoutPoll( fetchWrapper, interval, { immediate: false, immediateCallback: true } // we control first fetch manually @@ -60,7 +60,11 @@ export default function useFetchWithAutoRefresh(name: string, fetch: () => Promi const updateInterval = (newIntervalMs: number) => { interval.value = newIntervalMs; + pause(); + if (newIntervalMs > 0) { + resume(); + } }; - return { refreshNow: fetchWrapper, isRefreshing: shallowReadonly(isRefreshing), updateInterval, start, stop }; + return { refreshNow: fetchWrapper, isRefreshing: shallowReadonly(isRefreshing), updateInterval, isActive, start, stop }; } From 16a1936da3ad07759b38407c6b0a18973e2ba85a Mon Sep 17 00:00:00 2001 From: Phil Bastian Date: Fri, 31 Oct 2025 10:24:08 +0800 Subject: [PATCH 2/3] refactor deletedmessagegroups view data handling into a store --- .../failedmessages/DeletedMessageGroups.vue | 248 +++--------------- .../failedmessages/messageGroupClient.ts | 6 +- src/Frontend/src/composables/autoRefresh.ts | 3 + .../src/composables/useAutoRefresh.ts | 22 +- .../useConnectionsAndStatsAutoRefresh.ts | 2 +- .../useCustomChecksStoreAutoRefresh.ts | 2 +- .../useEnvironmentAndVersionsAutoRefresh.ts | 2 +- .../useHeartbeatInstancesStoreAutoRefresh.ts | 2 +- .../useHeartbeatsStoreAutoRefresh.ts | 2 +- .../useThroughputStoreAutoRefresh.ts | 2 +- .../src/stores/DeletedMessageGroupsStore.ts | 146 +++++++++++ 11 files changed, 201 insertions(+), 236 deletions(-) create mode 100644 src/Frontend/src/stores/DeletedMessageGroupsStore.ts diff --git a/src/Frontend/src/components/failedmessages/DeletedMessageGroups.vue b/src/Frontend/src/components/failedmessages/DeletedMessageGroups.vue index b3f0a1242..94877b4ef 100644 --- a/src/Frontend/src/components/failedmessages/DeletedMessageGroups.vue +++ b/src/Frontend/src/components/failedmessages/DeletedMessageGroups.vue @@ -1,169 +1,36 @@