From e15f3ea2c88536b42c856b89325cf43f16291379 Mon Sep 17 00:00:00 2001 From: Julian Gruber Date: Sun, 16 Jun 2024 12:11:40 +0200 Subject: [PATCH 1/4] add update historic rewards every hour --- renderer/src/hooks/StationRewards.tsx | 17 ++++++++++++----- 1 file changed, 12 insertions(+), 5 deletions(-) diff --git a/renderer/src/hooks/StationRewards.tsx b/renderer/src/hooks/StationRewards.tsx index fdbd616a0..7bbbf7293 100644 --- a/renderer/src/hooks/StationRewards.tsx +++ b/renderer/src/hooks/StationRewards.tsx @@ -51,11 +51,18 @@ const useStationRewards = () => { useEffect(() => { async function loadStoredInfo () { - if (wallet.stationAddress0x) { - setHistoricalRewards( - await getHistoricalRewardsData(wallet.stationAddress0x) - ) - } + if (!wallet.stationAddress0x) return + setHistoricalRewards( + await getHistoricalRewardsData(wallet.stationAddress0x) + ) + } + loadStoredInfo() + const id = setInterval(loadStoredInfo, 60 * 60 * 1000) + return () => clearInterval(id) + }, [wallet.stationAddress0x]) + + useEffect(() => { + async function loadStoredInfo () { setScheduledRewards(await getScheduledRewards()) } loadStoredInfo() From a43e32415ed8087a622046c9b8c74651589d3211 Mon Sep 17 00:00:00 2001 From: Julian Gruber Date: Sun, 16 Jun 2024 12:13:14 +0200 Subject: [PATCH 2/4] skip update when window hidden --- renderer/src/hooks/StationRewards.tsx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/renderer/src/hooks/StationRewards.tsx b/renderer/src/hooks/StationRewards.tsx index 7bbbf7293..7a88fe7be 100644 --- a/renderer/src/hooks/StationRewards.tsx +++ b/renderer/src/hooks/StationRewards.tsx @@ -51,7 +51,7 @@ const useStationRewards = () => { useEffect(() => { async function loadStoredInfo () { - if (!wallet.stationAddress0x) return + if (!wallet.stationAddress0x || document.hidden) return setHistoricalRewards( await getHistoricalRewardsData(wallet.stationAddress0x) ) From 2c165ef94af03fe86b8b5bff23f2685cb76a7c21 Mon Sep 17 00:00:00 2001 From: Julian Gruber Date: Sun, 16 Jun 2024 12:14:26 +0200 Subject: [PATCH 3/4] update when window becomes visible --- renderer/src/hooks/StationRewards.tsx | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/renderer/src/hooks/StationRewards.tsx b/renderer/src/hooks/StationRewards.tsx index 7a88fe7be..fce053fa6 100644 --- a/renderer/src/hooks/StationRewards.tsx +++ b/renderer/src/hooks/StationRewards.tsx @@ -58,7 +58,11 @@ const useStationRewards = () => { } loadStoredInfo() const id = setInterval(loadStoredInfo, 60 * 60 * 1000) - return () => clearInterval(id) + document.addEventListener('visibilitychange', loadStoredInfo) + return () => { + clearInterval(id) + document.removeEventListener('visibilitychange', loadStoredInfo) + } }, [wallet.stationAddress0x]) useEffect(() => { From 0f1a0afef71b089fbb46a73c089e5732fde73498 Mon Sep 17 00:00:00 2001 From: Julian Gruber Date: Sun, 16 Jun 2024 12:16:51 +0200 Subject: [PATCH 4/4] update every 20 minutes (round length) --- renderer/src/hooks/StationRewards.tsx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/renderer/src/hooks/StationRewards.tsx b/renderer/src/hooks/StationRewards.tsx index fce053fa6..8cce39b52 100644 --- a/renderer/src/hooks/StationRewards.tsx +++ b/renderer/src/hooks/StationRewards.tsx @@ -57,7 +57,7 @@ const useStationRewards = () => { ) } loadStoredInfo() - const id = setInterval(loadStoredInfo, 60 * 60 * 1000) + const id = setInterval(loadStoredInfo, 20 * 60 * 1000) document.addEventListener('visibilitychange', loadStoredInfo) return () => { clearInterval(id)