diff options
author | eug-vs <eug-vs@keemail.me> | 2020-08-10 11:19:53 +0300 |
---|---|---|
committer | eug-vs <eug-vs@keemail.me> | 2020-08-10 11:19:53 +0300 |
commit | f97989967ee0b88a8c64f226a4b28a79eeef5fd2 (patch) | |
tree | 9311246c260705c3c89fded54fb0bb688c98beec /src/containers/ProfilePage/ProfilePage.tsx | |
parent | cab8de5c6b246e1aa1376fa2b8666f09b44b6469 (diff) | |
download | which-ui-f97989967ee0b88a8c64f226a4b28a79eeef5fd2.tar.gz |
refactor: remove "Page" from container names
Diffstat (limited to 'src/containers/ProfilePage/ProfilePage.tsx')
-rw-r--r-- | src/containers/ProfilePage/ProfilePage.tsx | 56 |
1 files changed, 0 insertions, 56 deletions
diff --git a/src/containers/ProfilePage/ProfilePage.tsx b/src/containers/ProfilePage/ProfilePage.tsx deleted file mode 100644 index 7a1d729..0000000 --- a/src/containers/ProfilePage/ProfilePage.tsx +++ /dev/null @@ -1,56 +0,0 @@ -import React, { useEffect, useCallback } from 'react'; -import { useHistory, useParams } from 'react-router-dom'; -import { Poll } from 'which-types'; -import { Container } from '@material-ui/core'; - -import ProfileInfo from './ProfileInfo'; -import PollsList from '../../components/PollsList/PollsList'; -import Loading from '../../components/Loading/Loading'; -import { useAuth } from '../../hooks/useAuth'; -import { useUser, useProfile } from '../../hooks/APIClient'; - - -const ProfilePage: React.FC = () => { - const history = useHistory(); - const { username } = useParams(); - const { user } = useAuth(); - - const { data: userInfo, mutate: setUserInfo } = useUser(username); - const { data: polls, mutate: mutatePolls, isValidating } = useProfile(userInfo?._id); - - useEffect(() => { - if (!username) { - if (user) history.push(`/profile/${user.username}`); - else history.push('/login'); - } - }, [username, history, user]); - - - const totalVotes = useCallback( - polls.reduce( - (total: number, current: Poll) => { - const { left, right } = current.contents; - return total + left.votes + right.votes; - }, 0 - ), - [polls] - ); - - return ( - <Container maxWidth="sm" disableGutters> - <ProfileInfo - userInfo={userInfo} - setUserInfo={setUserInfo} - savedPolls={polls.length} - totalVotes={totalVotes} - /> - { - isValidating && !polls - ? <Loading /> - : <PollsList polls={polls} mutate={mutatePolls} /> - } - </Container> - ); -}; - -export default ProfilePage; |