diff --git a/src/components/elements/InfoList.js b/src/components/elements/InfoList.js index ee8c08e..4ccb045 100644 --- a/src/components/elements/InfoList.js +++ b/src/components/elements/InfoList.js @@ -10,6 +10,7 @@ import {RENDER_DEADLINE_TIME} from "../../utils/globals"; import coinsIco from "../../assets/coins_ico.svg"; import Media from "react-media"; import theme from "../../utils/theme"; +import PropsTypes from "prop-types"; const InfoList = (props) => { const itemsRender = (gap, iconsSize) => { @@ -54,4 +55,22 @@ const InfoList = (props) => { ); } +InfoList.propTypes = { + iconsSize: PropsTypes.string, + metric: PropsTypes.string, + bestScore: PropsTypes.string, + baseline: PropsTypes.string, + deadline: PropsTypes.string, + prize: PropsTypes.string, +}; + +InfoList.defaultProps = { + iconsSize: '', + metric: '', + bestScore: '', + baseline: '', + deadline: '', + prize: '', +}; + export default InfoList; \ No newline at end of file diff --git a/src/components/elements/Loading.js b/src/components/elements/Loading.js index 76c2c21..f939314 100644 --- a/src/components/elements/Loading.js +++ b/src/components/elements/Loading.js @@ -1,6 +1,7 @@ import React from "react"; import styled, {keyframes} from "styled-components"; import {Container} from "../../utils/containers"; +import PropsTypes from "prop-types"; const rotate = keyframes` from { @@ -45,6 +46,14 @@ const Loading = (props) => { : ''} ); +}; + +Loading.propTypes = { + visible: PropsTypes.bool, +}; + +Loading.defaultProps = { + visible: true, } export default Loading; \ No newline at end of file diff --git a/src/components/elements/Logo.js b/src/components/elements/Logo.js index 732e671..b69efb1 100644 --- a/src/components/elements/Logo.js +++ b/src/components/elements/Logo.js @@ -19,6 +19,6 @@ const Logo = () => { Gonito.net ); -} +}; export default Logo; \ No newline at end of file diff --git a/src/components/elements/MobileChallengeMenu.js b/src/components/elements/MobileChallengeMenu.js index 656db0d..dca501a 100644 --- a/src/components/elements/MobileChallengeMenu.js +++ b/src/components/elements/MobileChallengeMenu.js @@ -2,6 +2,7 @@ import React from "react"; import {FlexRow} from "../../utils/containers"; import styled from "styled-components"; import {Medium} from "../../utils/fonts"; +import PropsTypes from "prop-types"; const MenuOption = styled(Medium)` cursor: pointer; @@ -37,6 +38,14 @@ const MobileChallengeMenu = (props) => { ); -} +}; + +MobileChallengeMenu.propTypes = { + section: PropsTypes.number, +}; + +MobileChallengeMenu.defaultProps = { + section: 0, +}; export default MobileChallengeMenu; \ No newline at end of file diff --git a/src/components/elements/MobileNavMenu.js b/src/components/elements/MobileNavMenu.js index 06773c3..d55a8f5 100644 --- a/src/components/elements/MobileNavMenu.js +++ b/src/components/elements/MobileNavMenu.js @@ -7,6 +7,7 @@ import cupIco from '../../assets/cup_ico.svg'; import styled from "styled-components"; import {Link} from "react-router-dom"; import {CHALLENGES_PAGE} from "../../utils/globals"; +import PropsTypes from "prop-types"; const MobileNavMenuStyle = styled(FlexColumn)` gap: 32px; @@ -73,4 +74,14 @@ const MobileNavMenu = (props) => { ); } +MobileNavMenu.propTypes = { + translateY: PropsTypes.string, + toggleNavMenu: PropsTypes.func, +}; + +MobileNavMenu.defaultProps = { + translateY: 'calc(-100vh - 42px)', + toggleNavMenu: null, +}; + export default MobileNavMenu; \ No newline at end of file diff --git a/src/components/elements/Pager.js b/src/components/elements/Pager.js index c1d1565..3cbec8a 100644 --- a/src/components/elements/Pager.js +++ b/src/components/elements/Pager.js @@ -4,6 +4,7 @@ import CircleNumber from "./CircleNumber"; import polygon from '../../assets/polygon.svg'; import styled from "styled-components"; import theme from "../../utils/theme"; +import PropsTypes from "prop-types"; const PagerStyle = styled(FlexRow)` gap: 14px; @@ -64,4 +65,20 @@ const Pager = (props) => { return ''; } +Pager.propTypes = { + visible: PropsTypes.bool, + previousPage: PropsTypes.func, + pageNr: PropsTypes.number, + nextPage: PropsTypes.func, + pages: PropsTypes.number, +}; + +Pager.defaultProps = { + visible: false, + previousPage: null, + pageNr: 1, + nextPage: null, + pages: 1 +}; + export default Pager; \ No newline at end of file diff --git a/src/components/elements/Placeholder.js b/src/components/elements/Placeholder.js index 20405ae..6cf3590 100644 --- a/src/components/elements/Placeholder.js +++ b/src/components/elements/Placeholder.js @@ -1,6 +1,7 @@ import React from "react"; import {FlexColumn} from "../../utils/containers"; import theme from "../../utils/theme"; +import PropsTypes from "prop-types"; const Placeholder = (props) => { return ( @@ -9,6 +10,14 @@ const Placeholder = (props) => { {props.children} ); -} +}; + +Placeholder.propTypes = { + children: PropsTypes.node, +}; + +Placeholder.defaultProps = { + children: '', +}; export default Placeholder; \ No newline at end of file diff --git a/src/components/elements/Search.js b/src/components/elements/Search.js index 42603cd..9335e41 100644 --- a/src/components/elements/Search.js +++ b/src/components/elements/Search.js @@ -4,6 +4,7 @@ import loopIco from '../../assets/loop_ico.svg'; import filtersIco from '../../assets/filters_ico.svg'; import styled from "styled-components"; import {Body} from "../../utils/fonts"; +import PropsTypes from "prop-types"; const SearchStyle = styled(FlexRow)` width: 100%; @@ -48,6 +49,16 @@ const Search = (props) => { ); -} +}; + +Search.propTypes = { + searchQueryHandler: PropsTypes.func, + toggleFiltersMenu: PropsTypes.func, +}; + +Search.defaultProps = { + searchQueryHandler: null, + toggleFiltersMenu: null, +}; export default Search; \ No newline at end of file diff --git a/src/components/sections/Readme.js b/src/components/sections/Readme.js index 56e82b2..a6b7b3d 100644 --- a/src/components/sections/Readme.js +++ b/src/components/sections/Readme.js @@ -79,7 +79,7 @@ const Readme = (props) => {

Info

- +

@@ -118,7 +118,7 @@ const Readme = (props) => {

Info

- +