- {/* GitHub Trends Logo */}
-
-

- {mode === 'trends' && (
-
GitHub Trends
- )}
-
- {/* Star on GitHub */}
-
+ >
);
};
Header.propTypes = {
mode: PropTypes.string.isRequired,
+ stage: PropTypes.number.isRequired,
+ setStage: PropTypes.func.isRequired,
};
export default Header;
diff --git a/frontend/frontend/src/pages/Home/Home.js b/frontend/frontend/src/pages/Home/Home.js
index 2964b0ab..43de08b8 100644
--- a/frontend/frontend/src/pages/Home/Home.js
+++ b/frontend/frontend/src/pages/Home/Home.js
@@ -1,5 +1,6 @@
import React, { useEffect, useState } from 'react';
import { useDispatch } from 'react-redux';
+import PropTypes from 'prop-types';
import BounceLoader from 'react-spinners/BounceLoader';
import { v4 as uuidv4 } from 'uuid';
@@ -24,7 +25,7 @@ import {
usePrivateAccess,
} from '../../redux/selectors/userSelectors';
-const HomeScreen = () => {
+const HomeScreen = ({ stage, setStage }) => {
const [isLoading, setIsLoading] = useState(false);
const userId = useUserId();
@@ -35,14 +36,6 @@ const HomeScreen = () => {
const login = (newUserId, userKey) => dispatch(_login(newUserId, userKey));
- // for all stages
- const [stage, setStage] = useState(isAuthenticated ? 1 : 0);
- useEffect(() => {
- if (isAuthenticated && stage === 0) {
- setStage(1);
- }
- }, [isAuthenticated]);
-
// for stage one
const [selectedCard, setSelectedCard] = useState('stats');
const [imageSrc, setImageSrc] = useState(`?username=${userId}`);
@@ -347,4 +340,9 @@ const HomeScreen = () => {
);
};
+HomeScreen.propTypes = {
+ stage: PropTypes.number.isRequired,
+ setStage: PropTypes.func.isRequired,
+};
+
export default HomeScreen;