diff options
Diffstat (limited to 'src/pages/Scoreboard/Scoreboard.tsx')
-rw-r--r-- | src/pages/Scoreboard/Scoreboard.tsx | 70 |
1 files changed, 0 insertions, 70 deletions
diff --git a/src/pages/Scoreboard/Scoreboard.tsx b/src/pages/Scoreboard/Scoreboard.tsx deleted file mode 100644 index e4185bd..0000000 --- a/src/pages/Scoreboard/Scoreboard.tsx +++ /dev/null @@ -1,70 +0,0 @@ -import React, { useEffect, useState } from 'react'; - -import { makeStyles } from '@material-ui/core/styles'; - -import { Window, SmartList } from 'react-benzin'; -import { Solution, RenderPropTypes } from '../../types'; - -import SolutionCard from '../../components/SolutionCard/SolutionCard'; -import Loading from '../../components/Loading/Loading'; - -import { get } from '../../requests'; - - -const useStyles = makeStyles(theme => ({ - cell: { - display: 'flex', - justifyContent: 'center', - padding: theme.spacing(4), - - '& .MuiCard-root': { - width: '30%', - } - } -})); - - -const Scoreboard: React.FC = () => { - const classes = useStyles(); - const [solutions, setSolutions] = useState<Solution[]>([]); - - const updateSolutions = (): void => { - get('scoreboard/').then(response => { - setSolutions(response.data); - }); - }; - - const removeSolution = (id: number): void => { - updateSolutions(); - }; - - useEffect(() => { - setTimeout(updateSolutions, 300); - }, []); - - const renderItem: React.FC<RenderPropTypes> = ({ index, style }) => { - return ( - <div style={style} className={classes.cell}> - <SolutionCard data={solutions[index]} removeThisCard={removeSolution}/> - </div> - ) - }; - - return ( - <Window type="mono"> - { solutions.length === 0 && - <div className={classes.cell}> - <Loading/> - </div> - } - <SmartList - itemSize={300} - itemCount={solutions.length} - renderItem={renderItem} - /> - </Window> - ) -}; - - -export default Scoreboard; |