fix: remove unstable fetch events loop
All checks were successful
Open PR on Staging / audit_and_check (pull_request) Successful in 34s

This commit is contained in:
enes 2024-09-12 11:27:55 +02:00
parent 235e76be4e
commit 5f0234a358

View File

@ -27,8 +27,6 @@ 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)
@ -37,7 +35,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<number | null>(null) const hasSubscribed = useRef(false)
useEffect(() => { useEffect(() => {
const metadataController = new MetadataController() const metadataController = new MetadataController()
@ -111,27 +109,11 @@ 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 // #193 disabled websocket subscribtion, 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])