import React, { useState, useEffect } from 'react'; import { Button, makeStyles, } from '@material-ui/core'; import Registration from './Registration'; import { Window, ContentSection, SmartList, } from 'react-benzin'; import { User, Solution, RenderPropTypes } from '../../types'; import SolutionCard from '../../components/SolutionCard/SolutionCard'; import { get } from '../../requests'; const useStyles = makeStyles(theme => ({ primary: { padding: theme.spacing(4), }, cell: { padding: theme.spacing(5), }, })); interface PropTypes { user: User; setUser: (user: User) => void; } const Profile: React.FC = ({ user, setUser }) => { const classes = useStyles(); const [profileSolutions, setProfileSolutions] = useState([]); const handleLogout = () => { setUser({ username: 'anonymous', id: null }); localStorage.clear(); }; useEffect(() => { get(`solutions/?author=${user.id}`).then(response => { setProfileSolutions(response.data.reverse()); }); }, [user]); const removeSolution = (id: number): void => { setProfileSolutions(profileSolutions.filter((solution => solution.id !== id))); }; const renderItem: React.FC = ({ index, style }) => { return (
); }; return ( <>
{ user.id? (

Total amount of solutions: {profileSolutions.length}

You can always log out from your account!

): ( ) }
) }; export default Profile;