Cosmos-Server/client/src/App.jsx
2023-03-13 21:06:19 +00:00

40 lines
1.2 KiB
JavaScript

// project import
import Routes from './routes';
import * as React from 'react';
import ThemeCustomization from './themes';
import ScrollTop from './components/ScrollTop';
import Snackbar from '@mui/material/Snackbar';
import {Alert} from '@mui/material';
import { setSnackit } from './api/wrap';
// ==============================|| APP - THEME, ROUTER, LOCAL ||============================== //
const App = () => {
const [open, setOpen] = React.useState(false);
const [message, setMessage] = React.useState('');
setSnackit((message) => {
setMessage(message);
setOpen(true);
})
return (
<ThemeCustomization>
<Snackbar
open={open}
autoHideDuration={5000}
onClose={() => {setOpen(false)}}
anchorOrigin={{ vertical: 'top', horizontal: 'center' }}
>
<Alert className={open ? 'shake' : ''} severity="error" sx={{ width: '100%' }}>
{message}
</Alert>
</Snackbar>
<ScrollTop>
<Routes />
</ScrollTop>
</ThemeCustomization>
)
}
export default App;