fix(widgets): add typed refetchInterval presets to WidgetDefinition
The v1.69.0 caching refactor replaced Redis pub/sub with a global 30s client polling interval. Live monitoring widgets (health-monitoring, Dashdot, dns-hole) that previously refreshed every 5s were stuck at 30s. Adds a typed WidgetRefetchInterval preset (fiveSeconds | never) to WidgetDefinition. Widgets that need faster polling set fiveSeconds; widgets that don't need polling set never (fetch on mount only, manual refresh via context menu). Absence = global 30s default. nine widgets get fiveSeconds (live monitoring) sixteen widgets get never (slow data, mount-only) remaining widgets use the 30s default Also removes inline refetchInterval from docker widget component. Fixes #6268
This commit is contained in:
1 parent
a0034b2cfc
commit
a253dcb7d8
29 files changed
+80
-3
No files matched your search
@@ -1,3 +1,4 @@
|
||||
import { widgetRefetchInterval } from "../../definition";
|
||||
import { IconServerOff, IconTopologyFull } from "@tabler/icons-react";
|
||||
|
||||
import { getIntegrationKindsByCategory } from "@homarr/definitions";
|
||||
@@ -7,6 +8,8 @@ import { optionsBuilder } from "../../options";
|
||||
|
||||
export const { definition, componentLoader } = createWidgetDefinition("networkControllerStatus", {
|
||||
icon: IconTopologyFull,
|
||||
queryKey: [["widget", "networkController"]],
|
||||
refetchInterval: widgetRefetchInterval.never,
|
||||
createOptions() {
|
||||
return optionsBuilder.from((factory) => ({
|
||||
content: factory.select({
|
||||
|
||||
Reference in new issue
Block a user