aboutsummaryrefslogtreecommitdiff
path: root/src/Components/Feed/Feed.tsx
diff options
context:
space:
mode:
Diffstat (limited to 'src/Components/Feed/Feed.tsx')
-rw-r--r--src/Components/Feed/Feed.tsx41
1 files changed, 41 insertions, 0 deletions
diff --git a/src/Components/Feed/Feed.tsx b/src/Components/Feed/Feed.tsx
new file mode 100644
index 0000000..604c167
--- /dev/null
+++ b/src/Components/Feed/Feed.tsx
@@ -0,0 +1,41 @@
+import React, { useState, useEffect } from 'react';
+import { makeStyles } from '@material-ui/core/styles';
+import { Poll } from '../../types';
+import PollCard from '../PollCard/PollCard';
+import { get } from '../../requests';
+
+interface PropTypes {
+ page: string;
+}
+
+const useStyles = makeStyles(theme => ({
+ root: {
+ position: 'relative',
+ maxWidth: theme.spacing(75),
+ margin: '0 auto'
+ }
+}));
+
+const Feed: React.FC<PropTypes> = ({ page }) => {
+ const [polls, setPolls] = useState<Poll[]>([]);
+ const classes = useStyles();
+
+ let endpoint = '/polls';
+ // TODO: Make this work
+ if (page === 'feed') endpoint = '/polls';
+
+ useEffect(() => {
+ get(endpoint).then(response => {
+ setPolls(response.data);
+ });
+ }, [endpoint]);
+
+ return (
+ <div className={classes.root}>
+ {polls.map(poll => <PollCard poll={poll} key={poll._id} />)}
+ </div>
+ );
+};
+
+export default Feed;
+