From 83aab3be62d73b5a539aab8f9c2bbfad56c86bbf Mon Sep 17 00:00:00 2001 From: Vojtech Simetka Date: Fri, 24 Jun 2022 14:10:21 +0200 Subject: [PATCH] feat: ultra-light mode block not supported features that are not available in this mode (#438) --- src/components/SideBar.tsx | 5 ++++- src/pages/account/wallet/AccountWallet.tsx | 5 +++-- src/pages/files/Download.tsx | 10 ++++++---- 3 files changed, 13 insertions(+), 7 deletions(-) diff --git a/src/components/SideBar.tsx b/src/components/SideBar.tsx index 181a012..254847c 100644 --- a/src/components/SideBar.tsx +++ b/src/components/SideBar.tsx @@ -8,6 +8,7 @@ import ExternalLinkIcon from 'remixicon-react/ExternalLinkLineIcon' import HomeIcon from 'remixicon-react/Home3LineIcon' import SettingsIcon from 'remixicon-react/Settings2LineIcon' import AccountIcon from 'remixicon-react/Wallet3LineIcon' +import { Context as BeeContext } from '../providers/Bee' import { Context as TopUpContext } from '../providers/TopUp' import DashboardLogo from '../assets/dashboard-logo.svg' import DesktopLogo from '../assets/desktop-logo.svg' @@ -17,6 +18,7 @@ import { ROUTES } from '../routes' import Feedback from './Feedback' import SideBarItem from './SideBarItem' import SideBarStatus from './SideBarStatus' +import { BeeModes } from '@ethersphere/bee-js' const drawerWidth = 300 @@ -68,6 +70,7 @@ export default function SideBar(): ReactElement { const classes = useStyles() const { isBeeDesktop } = useIsBeeDesktop() const { providerUrl } = useContext(TopUpContext) + const { nodeInfo } = useContext(BeeContext) const navBarItems = [ { @@ -77,7 +80,7 @@ export default function SideBar(): ReactElement { }, { label: 'Files', - path: ROUTES.UPLOAD, + path: nodeInfo?.beeMode === BeeModes.ULTRA_LIGHT ? ROUTES.DOWNLOAD : ROUTES.UPLOAD, icon: FilesIcon, pathMatcherSubstring: '/files/', }, diff --git a/src/pages/account/wallet/AccountWallet.tsx b/src/pages/account/wallet/AccountWallet.tsx index a9cecba..44b13ae 100644 --- a/src/pages/account/wallet/AccountWallet.tsx +++ b/src/pages/account/wallet/AccountWallet.tsx @@ -1,3 +1,4 @@ +import { BeeModes } from '@ethersphere/bee-js' import { Box, Grid, Typography } from '@material-ui/core' import { ReactElement, useContext } from 'react' import { useNavigate } from 'react-router' @@ -15,7 +16,7 @@ import { AccountNavigation } from '../AccountNavigation' import { Header } from '../Header' export function AccountWallet(): ReactElement { - const { balance, nodeAddresses } = useContext(Context) + const { balance, nodeAddresses, nodeInfo } = useContext(Context) const navigate = useNavigate() @@ -34,7 +35,7 @@ export function AccountWallet(): ReactElement { return ( <>
- + {nodeInfo?.beeMode !== BeeModes.ULTRA_LIGHT && } Wallet balance diff --git a/src/pages/files/Download.tsx b/src/pages/files/Download.tsx index 2f4cd63..0688e51 100644 --- a/src/pages/files/Download.tsx +++ b/src/pages/files/Download.tsx @@ -1,4 +1,4 @@ -import { Utils } from '@ethersphere/bee-js' +import { BeeModes, Utils } from '@ethersphere/bee-js' import { ManifestJs } from '@ethersphere/manifest-js' import { useSnackbar } from 'notistack' import { ReactElement, useContext, useState } from 'react' @@ -6,8 +6,9 @@ import { useNavigate } from 'react-router-dom' import Search from 'remixicon-react/SearchLineIcon' import ExpandableListItemInput from '../../components/ExpandableListItemInput' import { History } from '../../components/History' -import { Context, defaultUploadOrigin } from '../../providers/File' +import { Context as FileContext, defaultUploadOrigin } from '../../providers/File' import { Context as SettingsContext } from '../../providers/Settings' +import { Context as BeeContext } from '../../providers/Bee' import { ROUTES } from '../../routes' import { recognizeEnsOrSwarmHash, regexpEns } from '../../utils' import { determineHistoryName, HISTORY_KEYS, putHistory } from '../../utils/local-storage' @@ -17,8 +18,9 @@ export function Download(): ReactElement { const [loading, setLoading] = useState(false) const { beeApi } = useContext(SettingsContext) const [referenceError, setReferenceError] = useState(undefined) + const { nodeInfo } = useContext(BeeContext) - const { setUploadOrigin } = useContext(Context) + const { setUploadOrigin } = useContext(FileContext) const { enqueueSnackbar } = useSnackbar() const navigate = useNavigate() @@ -81,7 +83,7 @@ export function Download(): ReactElement { return ( <> - + {nodeInfo?.beeMode !== BeeModes.ULTRA_LIGHT && } onSwarmIdentifier(value)}