import React from 'react'; import { post } from '../../requests'; import { Window, ContentSection, SmartList, } from 'react-benzin'; import { User, Solution, RenderPropTypes } from '../../types'; import TimerButton from './TimerButton'; import SolutionCard from '../../components/SolutionCard/SolutionCard'; import { Button, makeStyles } from '@material-ui/core'; const useStyles = makeStyles(theme => ({ primary: { padding: theme.spacing(4), }, cell: { padding: theme.spacing(5), }, })); interface PropTypes { user: User; recentSolutions: Solution[]; setRecentSolutions: (newRecentSolutions: Solution[]) => void; setPage: (newPage: string) => void; } const Timer: React.FC = ({ user, recentSolutions, setRecentSolutions, setPage }) => { const classes = useStyles(); const registerResult = (result: string): void => { const solution = { 'author_id': user.id, result }; post('solutions/', solution).then(response => { setRecentSolutions([response.data].concat(recentSolutions)); }); }; const handleLearnMore = (): void => { setPage('contribute'); }; const handleLogin = (): void => { setPage('profile'); }; const removeSolution = (id: number): void => { setRecentSolutions(recentSolutions.filter((solution => solution.id !== id))); }; const renderItem: React.FC = ({ index, style }) => { const solution = recentSolutions[index]; return (
); }; return ( <>

ChronoCube is a professional speedcubing timer. Share your results publicly - let everyone see your progress and achievements! Every speedcuber will benefit from using it - both amateur and professional!

{user.id === null &&

Tell us your name so we can track your progress

}
); }; export default Timer;