diff --git a/src/hooks/apiHooks.tsx b/src/hooks/apiHooks.tsx index 34696c4..5936f6d 100644 --- a/src/hooks/apiHooks.tsx +++ b/src/hooks/apiHooks.tsx @@ -14,6 +14,7 @@ export interface IsBeeDesktopHook { isBeeDesktop: boolean isLoading: boolean beeDesktopVersion: string + desktopAutoUpdateEnabled: boolean } export interface NewDesktopVersionHook { @@ -31,6 +32,7 @@ interface Config { */ export const useIsBeeDesktop = (conf: Config = config): IsBeeDesktopHook => { const [isBeeDesktop, setIsBeeDesktop] = useState(false) + const [desktopAutoUpdateEnabled, setDesktopAutoUpdateEnabled] = useState(true) const [beeDesktopVersion, setBeeDesktopVersion] = useState('') const [isLoading, setLoading] = useState(true) @@ -41,6 +43,7 @@ export const useIsBeeDesktop = (conf: Config = config): IsBeeDesktopHook => { if (res.data?.name === 'bee-desktop') { setIsBeeDesktop(true) setBeeDesktopVersion(res.data?.version) + setDesktopAutoUpdateEnabled(res.data?.autoUpdateEnabled) } else setIsBeeDesktop(false) }) .catch(() => { @@ -51,7 +54,7 @@ export const useIsBeeDesktop = (conf: Config = config): IsBeeDesktopHook => { }) }, [conf]) - return { isBeeDesktop, isLoading, beeDesktopVersion } + return { isBeeDesktop, isLoading, beeDesktopVersion, desktopAutoUpdateEnabled } } async function checkNewVersion(conf: Config): Promise { diff --git a/src/layout/Dashboard.tsx b/src/layout/Dashboard.tsx index 7947f48..b21378e 100644 --- a/src/layout/Dashboard.tsx +++ b/src/layout/Dashboard.tsx @@ -29,12 +29,12 @@ const Dashboard = (props: Props): ReactElement => { const classes = useStyles() const { isLoading } = useContext(Context) - const { isBeeDesktop } = useIsBeeDesktop() + const { isBeeDesktop, desktopAutoUpdateEnabled } = useIsBeeDesktop() const { newBeeDesktopVersion } = useNewBeeDesktopVersion(isBeeDesktop) const { enqueueSnackbar, closeSnackbar } = useSnackbar() useEffect(() => { - if (newBeeDesktopVersion !== '') { + if (!desktopAutoUpdateEnabled && newBeeDesktopVersion !== '') { enqueueSnackbar(`There is new Swarm Dashboard version ${newBeeDesktopVersion}!`, { variant: 'warning', preventDuplicate: true, @@ -61,7 +61,7 @@ const Dashboard = (props: Props): ReactElement => { ), }) } - }, [enqueueSnackbar, closeSnackbar, newBeeDesktopVersion]) + }, [enqueueSnackbar, closeSnackbar, newBeeDesktopVersion, desktopAutoUpdateEnabled]) const content = ( <>