fix: add 2m interval to sigits update
All checks were successful
Open PR on Staging / audit_and_check (pull_request) Successful in 33s
All checks were successful
Open PR on Staging / audit_and_check (pull_request) Successful in 33s
hotfix until #194
This commit is contained in:
parent
4c45a227f0
commit
522bdf54de
@ -27,6 +27,8 @@ import {
|
|||||||
import { useAppSelector } from '../hooks'
|
import { useAppSelector } from '../hooks'
|
||||||
import styles from './style.module.scss'
|
import styles from './style.module.scss'
|
||||||
|
|
||||||
|
const UPDATE_INTERVAL_MS = 120000
|
||||||
|
|
||||||
export const MainLayout = () => {
|
export const MainLayout = () => {
|
||||||
const dispatch: Dispatch = useDispatch()
|
const dispatch: Dispatch = useDispatch()
|
||||||
const [isLoading, setIsLoading] = useState(true)
|
const [isLoading, setIsLoading] = useState(true)
|
||||||
@ -35,7 +37,7 @@ export const MainLayout = () => {
|
|||||||
const usersAppData = useAppSelector((state) => state.userAppData)
|
const usersAppData = useAppSelector((state) => state.userAppData)
|
||||||
|
|
||||||
// Ref to track if `subscribeForSigits` has been called
|
// Ref to track if `subscribeForSigits` has been called
|
||||||
const hasSubscribed = useRef(false)
|
const hasSubscribed = useRef<number | null>(null)
|
||||||
|
|
||||||
useEffect(() => {
|
useEffect(() => {
|
||||||
const metadataController = new MetadataController()
|
const metadataController = new MetadataController()
|
||||||
@ -109,10 +111,27 @@ export const MainLayout = () => {
|
|||||||
|
|
||||||
if (pubkey && !hasSubscribed.current) {
|
if (pubkey && !hasSubscribed.current) {
|
||||||
// Call `subscribeForSigits` only if it hasn't been called before
|
// Call `subscribeForSigits` only if it hasn't been called before
|
||||||
|
// #193 disabled websocket subscribtion, keep updating the sigits on UPDATE_INTERVAL_MS until #194 is done
|
||||||
|
// Set up the update sigit loop, use setTimeout to make sure times between updates are consistent
|
||||||
|
// (not affected by execution duration of subscribeForSigits call)
|
||||||
|
const loop = () => {
|
||||||
|
hasSubscribed.current = window.setTimeout(async () => {
|
||||||
|
await subscribeForSigits(pubkey)
|
||||||
|
loop()
|
||||||
|
}, UPDATE_INTERVAL_MS)
|
||||||
|
}
|
||||||
subscribeForSigits(pubkey)
|
subscribeForSigits(pubkey)
|
||||||
|
loop()
|
||||||
|
|
||||||
// Mark `subscribeForSigits` as called
|
// Mark `subscribeForSigits` as called
|
||||||
hasSubscribed.current = true
|
//hasSubscribed.current = true
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
return () => {
|
||||||
|
if (hasSubscribed.current) {
|
||||||
|
window.clearTimeout(hasSubscribed.current)
|
||||||
|
hasSubscribed.current = null
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}, [authState, usersAppData])
|
}, [authState, usersAppData])
|
||||||
|
Loading…
Reference in New Issue
Block a user