fix: check desktop version only once (#441)

This commit is contained in:
Attila Gazso
2022-06-24 15:21:59 +02:00
committed by GitHub
parent 83aab3be62
commit 398632001a
+30 -28
View File
@@ -1,6 +1,6 @@
import { Button, CircularProgress, Container, IconButton } from '@material-ui/core' import { Button, CircularProgress, Container, IconButton } from '@material-ui/core'
import { createStyles, makeStyles, Theme } from '@material-ui/core/styles' import { createStyles, makeStyles, Theme } from '@material-ui/core/styles'
import React, { ReactElement, useContext } from 'react' import React, { ReactElement, useContext, useEffect } from 'react'
import { useSnackbar } from 'notistack' import { useSnackbar } from 'notistack'
import CloseIcon from 'remixicon-react/CloseCircleLineIcon' import CloseIcon from 'remixicon-react/CloseCircleLineIcon'
import ErrorBoundary from '../components/ErrorBoundary' import ErrorBoundary from '../components/ErrorBoundary'
@@ -33,33 +33,35 @@ const Dashboard = (props: Props): ReactElement => {
const { newBeeDesktopVersion } = useNewBeeDesktopVersion(isBeeDesktop) const { newBeeDesktopVersion } = useNewBeeDesktopVersion(isBeeDesktop)
const { enqueueSnackbar, closeSnackbar } = useSnackbar() const { enqueueSnackbar, closeSnackbar } = useSnackbar()
if (newBeeDesktopVersion !== '') { useEffect(() => {
enqueueSnackbar(`There is new Swarm Dashboard version ${newBeeDesktopVersion}!`, { if (newBeeDesktopVersion !== '') {
variant: 'warning', enqueueSnackbar(`There is new Swarm Dashboard version ${newBeeDesktopVersion}!`, {
preventDuplicate: true, variant: 'warning',
key: 'desktopNewVersion', preventDuplicate: true,
persist: true, key: 'desktopNewVersion',
action: key => ( persist: true,
<React.Fragment> action: key => (
<Button <React.Fragment>
onClick={() => { <Button
window.open(BEE_DESKTOP_LATEST_RELEASE_PAGE) onClick={() => {
closeSnackbar(key) window.open(BEE_DESKTOP_LATEST_RELEASE_PAGE)
}} closeSnackbar(key)
> }}
Download release >
</Button> Download release
<IconButton </Button>
onClick={() => { <IconButton
closeSnackbar(key) onClick={() => {
}} closeSnackbar(key)
> }}
<CloseIcon /> >
</IconButton> <CloseIcon />
</React.Fragment> </IconButton>
), </React.Fragment>
}) ),
} })
}
}, [enqueueSnackbar, closeSnackbar, newBeeDesktopVersion])
const content = ( const content = (
<> <>