From fd6e663a1bcc43cfc49bda99ccbfab380489324b Mon Sep 17 00:00:00 2001
From: eug-vs
Date: Mon, 10 Aug 2020 00:02:24 +0300
Subject: feat!: add useLocalStorage hook
---
src/pages/HomePage/HomePage.tsx | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
(limited to 'src/pages/HomePage')
diff --git a/src/pages/HomePage/HomePage.tsx b/src/pages/HomePage/HomePage.tsx
index 17e377a..b1dc506 100644
--- a/src/pages/HomePage/HomePage.tsx
+++ b/src/pages/HomePage/HomePage.tsx
@@ -92,7 +92,7 @@ const HomePage: React.FC = () => {
Here you can share your thougts about Which with us!
Note that you can ony leave feedback once per application version (there will be plenty of them later).
- {isAuthenticated() ? : (
+ {isAuthenticated ? : (
<>
You must be authorized to leave feedback.
{
{'let\'s go!'}
- {!isAuthenticated() && (
+ {!isAuthenticated && (
Date: Mon, 10 Aug 2020 00:28:39 +0300
Subject: refactor: move pages -> containers
---
src/pages/HomePage/HomePage.tsx | 203 --------------------------------------
src/pages/HomePage/ReviewForm.tsx | 74 --------------
2 files changed, 277 deletions(-)
delete mode 100644 src/pages/HomePage/HomePage.tsx
delete mode 100644 src/pages/HomePage/ReviewForm.tsx
(limited to 'src/pages/HomePage')
diff --git a/src/pages/HomePage/HomePage.tsx b/src/pages/HomePage/HomePage.tsx
deleted file mode 100644
index b1dc506..0000000
--- a/src/pages/HomePage/HomePage.tsx
+++ /dev/null
@@ -1,203 +0,0 @@
-import React, { useState, useEffect } from 'react';
-import { useHistory } from 'react-router-dom';
-import {
- Typography,
- Divider,
- Grid,
- Button,
- Link,
- useMediaQuery
-} from '@material-ui/core/';
-import { makeStyles, useTheme } from '@material-ui/core/styles';
-import TrendingUpIcon from '@material-ui/icons/TrendingUp';
-import { Rating } from '@material-ui/lab';
-import { Feedback } from 'which-types';
-
-import { useAuth } from '../../hooks/useAuth';
-import { get } from '../../requests';
-import ReviewCard from '../../components/ReviewCard/ReviewCard';
-import ReviewForm from './ReviewForm';
-
-const useStyles = makeStyles(theme => ({
- root: {
- overflow: 'hidden',
- padding: theme.spacing(0, 2)
- },
- logo: {
- width: theme.spacing(20),
- height: theme.spacing(20)
- },
- score: {
- fontWeight: 'bold'
- },
- signup: {
- marginLeft: theme.spacing(2)
- },
- reviews: {
- [theme.breakpoints.up('md')]: {
- padding: theme.spacing(0, 10)
- }
- }
-}));
-
-const HomePage: React.FC = () => {
- const [feedbacks, setFeedbacks] = useState([]);
- const classes = useStyles();
- const history = useHistory();
- const { isAuthenticated, user } = useAuth();
- const theme = useTheme();
- const isMobile = useMediaQuery(theme.breakpoints.down('sm'));
-
- const rating = feedbacks.length && feedbacks.reduce(
- (acc: number, feedback: Feedback) => acc + feedback.score,
- 0
- ) / feedbacks.length;
-
- useEffect(() => {
- get('/feedback').then(response => {
- setFeedbacks(response.data);
- });
- }, []);
-
- const handleLetsGo = () => {
- history.push('/feed');
- };
-
- const handleSignUp = () => {
- history.push('/registration');
- };
-
- const GithubLink = GitHub;
- const TypescriptLink = Typescript;
- const ReactLink = React;
- const FeathersLink = Feathers;
- const MUILink = Material-UI;
- const EmailLink = eug-vs@keemail.me;
-
- const Reviews = (
-
- {feedbacks.map(feedback => )}
-
- );
-
- const FeedbackSection = feedbacks.findIndex((feedback: Feedback) => feedback.author._id === user?._id) >= 0 ? (
-
- You have already left feedback for this version.
- If you have more to say, please open GitHub issue or contact us directly via email: {EmailLink}.
- Alternatively, you can just wait for another application patch to come out.
-
- ) : (
- <>
-
- Here you can share your thougts about Which with us!
- Note that you can ony leave feedback once per application version (there will be plenty of them later).
-
- {isAuthenticated ? : (
- <>
- You must be authorized to leave feedback.
-
- sign in
-
- >
- )}
- >
- );
-
- return (
-
-
-
-
-
-
-
-
- {rating !== 0 && }
-
-
- {rating !== 0 && (
-
- User score: {rating.toFixed(1)}
-
- )}
-
-
- {isMobile || Reviews}
-
-
-
-
- Which one to choose?
-
-
-
- Have you ever found yourself stuck between two options, not being able to choose any?
- This is exactly the problem we are going to solve!
-
- Share your minor everyday uncertainties with the whole world and see what others think!
-
- {'let\'s go!'}
-
- {!isAuthenticated && (
-
- sign up
-
- )}
-
-
-
- About the project
-
-
-
- The project is written in {TypescriptLink} and features {ReactLink}, {FeathersLink}, and {MUILink}.
- It is currently open-source and you can visit our {GithubLink} (make sure to star our repositories)!
-
-
- We encourage any developer to check it out. Feel free to open issues and create Pull Requests!
-
-
- All the development process is being tracked on the KanBan board (thanks GitHub).
- You can always check it to see what is the current state of the project.
-
- }
- href="https://github.com/orgs/which-ecosystem/projects/1"
- >
- track our progress
-
-
-
-
- Leave feedback
-
-
- {FeedbackSection}
-
-
- {isMobile && (
-
- {Reviews}
-
- )}
-
-
-
-
- );
-};
-
-export default HomePage;
-
diff --git a/src/pages/HomePage/ReviewForm.tsx b/src/pages/HomePage/ReviewForm.tsx
deleted file mode 100644
index b626ce2..0000000
--- a/src/pages/HomePage/ReviewForm.tsx
+++ /dev/null
@@ -1,74 +0,0 @@
-import React, { useState } from 'react';
-import { useHistory } from 'react-router-dom';
-import { makeStyles } from '@material-ui/core/styles';
-import { TextField, Button } from '@material-ui/core';
-import { Rating } from '@material-ui/lab';
-import { useSnackbar } from 'notistack';
-
-import { post } from '../../requests';
-
-const version = 'v1.0.0';
-
-const useStyles = makeStyles(theme => ({
- root: {
- display: 'flex',
- flexDirection: 'column'
- },
- textField: {
- margin: theme.spacing(2, 0)
- }
-}));
-
-const ReviewForm: React.FC = () => {
- const [contents, setContents] = useState('');
- const [score, setScore] = useState(0);
- const classes = useStyles();
- const history = useHistory();
- const { enqueueSnackbar } = useSnackbar();
-
- const handleSubmit = (): void => {
- if (score) {
- post('/feedback', { contents, score, version }).then(() => {
- enqueueSnackbar('Your feedback has been submitted!', {
- variant: 'success'
- });
- history.push('/feed');
- });
- }
- };
-
- const handleChange = (event: React.ChangeEvent): void => {
- setContents(event.target?.value || '');
- };
-
- const handleChangeRating = (event: React.ChangeEvent>, newScore: number | null): void => {
- setScore(newScore || 0);
- };
-
- return (
-
- );
-};
-
-export default ReviewForm;
--
cgit v1.2.3