From d1720e243c4415d75763a229250fa20e3664290e Mon Sep 17 00:00:00 2001 From: Vojtech Simetka Date: Thu, 26 Aug 2021 09:40:13 +0200 Subject: [PATCH] feat: removed dark theme and theme switching (#190) --- src/App.tsx | 75 +++++++++++++------------------------- src/components/NavBar.tsx | 55 ---------------------------- src/components/SideBar.tsx | 3 +- src/layout/Dashboard.tsx | 27 +------------- src/theme.tsx | 29 ++------------- 5 files changed, 32 insertions(+), 157 deletions(-) delete mode 100644 src/components/NavBar.tsx diff --git a/src/App.tsx b/src/App.tsx index 078c8b4..28b8c06 100644 --- a/src/App.tsx +++ b/src/App.tsx @@ -1,4 +1,4 @@ -import { ReactElement, useEffect, useState } from 'react' +import { ReactElement } from 'react' import { BrowserRouter as Router } from 'react-router-dom' import './App.css' @@ -8,58 +8,35 @@ import { SnackbarProvider } from 'notistack' import BaseRouter from './routes/routes' import Dashboard from './layout/Dashboard' -import { lightTheme, darkTheme } from './theme' +import { theme } from './theme' import { Provider as StampsProvider } from './providers/Stamps' import { Provider as PlatformProvider } from './providers/Platform' import { Provider as BeeProvider } from './providers/Bee' import { Provider as SettingsProvider } from './providers/Settings' -const App = (): ReactElement => { - const [themeMode, toggleThemeMode] = useState('light') - - useEffect(() => { - const theme = localStorage.getItem('theme') - - if (theme) { - toggleThemeMode(String(localStorage.getItem('theme'))) - } else if (window?.matchMedia('(prefers-color-scheme: dark)')?.matches) { - toggleThemeMode('dark') - } - - window?.matchMedia('(prefers-color-scheme: dark)')?.addEventListener('change', e => { - toggleThemeMode(e?.matches ? 'dark' : 'light') - }) - - return () => - window?.matchMedia('(prefers-color-scheme: dark)')?.removeEventListener('change', e => { - toggleThemeMode(e?.matches ? 'dark' : 'light') - }) - }, []) - - return ( -
- - - - - - - - <> - - - - - - - - - - - - -
- ) -} +const App = (): ReactElement => ( +
+ + + + + + + + <> + + + + + + + + + + + + +
+) export default App diff --git a/src/components/NavBar.tsx b/src/components/NavBar.tsx deleted file mode 100644 index 378557e..0000000 --- a/src/components/NavBar.tsx +++ /dev/null @@ -1,55 +0,0 @@ -import { useState, ReactElement } from 'react' - -import { createStyles, makeStyles } from '@material-ui/core/styles' -import { Toolbar, IconButton } from '@material-ui/core/' - -import { Sun, Moon } from 'react-feather' - -const drawerWidth = 240 - -const useStyles = makeStyles(() => - createStyles({ - appBar: { - width: `calc(100% - ${drawerWidth}px)`, - marginLeft: drawerWidth, - }, - }), -) -interface Props { - themeMode: string -} - -export default function SideBar(props: Props): ReactElement { - const [darkMode, toggleDarkMode] = useState(false) - - const switchTheme = () => { - const theme = localStorage.getItem('theme') - - if (theme) { - localStorage.setItem('theme', theme === 'light' ? 'dark' : 'light') - } else { - localStorage.setItem('theme', darkMode ? 'dark' : 'light') - } - - toggleDarkMode(!darkMode) - window.location.reload() - } - - const classes = useStyles() - - return ( -
-
- -
-
- switchTheme()}> - {props.themeMode === 'dark' ? : } - -
-
-
-
-
- ) -} diff --git a/src/components/SideBar.tsx b/src/components/SideBar.tsx index 0397f4f..36accd2 100644 --- a/src/components/SideBar.tsx +++ b/src/components/SideBar.tsx @@ -81,7 +81,6 @@ const useStyles = makeStyles((theme: Theme) => ) interface Props { - themeMode: string isOk: boolean } @@ -104,7 +103,7 @@ export default function SideBar(props: Props): ReactElement { swarm diff --git a/src/layout/Dashboard.tsx b/src/layout/Dashboard.tsx index acd63dc..9fbc06e 100644 --- a/src/layout/Dashboard.tsx +++ b/src/layout/Dashboard.tsx @@ -1,4 +1,4 @@ -import { useState, useEffect, useContext, ReactElement } from 'react' +import { useContext, ReactElement } from 'react' import ErrorBoundary from '../components/ErrorBoundary' import AlertVersion from '../components/AlertVersion' import { Container, CircularProgress } from '@material-ui/core' @@ -6,7 +6,6 @@ import { Container, CircularProgress } from '@material-ui/core' import { createStyles, Theme, makeStyles } from '@material-ui/core/styles' import SideBar from '../components/SideBar' -import NavBar from '../components/NavBar' import { Context } from '../providers/Bee' @@ -29,33 +28,11 @@ interface Props { const Dashboard = (props: Props): ReactElement => { const classes = useStyles() - const [themeMode, toggleThemeMode] = useState('light') - const { isLoading, status } = useContext(Context) - useEffect(() => { - const theme = localStorage.getItem('theme') - - if (theme) { - toggleThemeMode(String(localStorage.getItem('theme'))) - } else if (window?.matchMedia('(prefers-color-scheme: dark)')?.matches) { - toggleThemeMode('dark') - } - - window?.matchMedia('(prefers-color-scheme: dark)')?.addEventListener('change', e => { - toggleThemeMode(e?.matches ? 'dark' : 'light') - }) - - return () => - window?.matchMedia('(prefers-color-scheme: dark)')?.removeEventListener('change', e => { - toggleThemeMode(e?.matches ? 'dark' : 'light') - }) - }, []) - return (
- - +
diff --git a/src/theme.tsx b/src/theme.tsx index 5d11889..67bcc36 100644 --- a/src/theme.tsx +++ b/src/theme.tsx @@ -55,7 +55,7 @@ const propsOverrides = { }, } -export const lightTheme = createMuiTheme({ +export const theme = createMuiTheme({ palette: { type: 'light', background: { @@ -75,28 +75,5 @@ export const lightTheme = createMuiTheme({ }, }) -export const darkTheme = createMuiTheme({ - palette: { - type: 'dark', - background: { - default: '#0d1117', - paper: '#161b22', - }, - primary: { - light: orange.A200, - main: '#dd7700', - dark: orange[800], - }, - secondary: { - main: '#1f2937', - }, - }, - typography: { - fontFamily: ['Work Sans', 'Montserrat', 'Nunito', 'Roboto', '"Helvetica Neue"', 'Arial', 'sans-serif'].join(','), - }, -}) - -darkTheme.overrides = componentsOverrides(darkTheme) -darkTheme.props = propsOverrides -lightTheme.overrides = componentsOverrides(lightTheme) -lightTheme.props = propsOverrides +theme.overrides = componentsOverrides(theme) +theme.props = propsOverrides