From 0c3044dfd9ca038e96718911e29fe3ccac50b018 Mon Sep 17 00:00:00 2001 From: Ramin Date: Sun, 22 May 2022 23:24:19 +0430 Subject: [PATCH 001/348] #748 implement verification before start --- .../views/verification/BeforeStart.tsx | 38 +++++++++++++++++++ 1 file changed, 38 insertions(+) create mode 100644 src/components/views/verification/BeforeStart.tsx diff --git a/src/components/views/verification/BeforeStart.tsx b/src/components/views/verification/BeforeStart.tsx new file mode 100644 index 0000000000..4fbf8f0399 --- /dev/null +++ b/src/components/views/verification/BeforeStart.tsx @@ -0,0 +1,38 @@ +import { brandColors, H6, Lead } from '@giveth/ui-design-system'; +import ExternalLink from '@/components/ExternalLink'; +import links from '@/lib/constants/links'; + +const BeforeStart = () => { + return ( + <> +
Before you start
+ +
+ Giveth would like to offer you the opportunity to reward your + contributors with GIVbacks! By applying for a verified project + status, you will be able to make your project stand out and + encourage donations. +
+
+ Once your project is verified, the givers who donate to your + project will be rewarded with GIV tokens which they can use to + participate in the GIVeconomy. +
+
+ The simple{' '} + {' '} + requires some additional information about your project and the + intended impact of your organization. If you would like to apply + to receive the 'Verified' badge, empower more Givers + and also give back to those who have helped you reach your + goals, please fill out this form. +
+ + ); +}; + +export default BeforeStart; From b0fb88d91a9d7cb3b45fe818f39118d588a789ef Mon Sep 17 00:00:00 2001 From: Ramin Date: Sun, 22 May 2022 23:28:49 +0430 Subject: [PATCH 002/348] #750 implement verification personal info --- .../views/verification/PersonalInfo.tsx | 43 +++++++++++++++++++ 1 file changed, 43 insertions(+) create mode 100644 src/components/views/verification/PersonalInfo.tsx diff --git a/src/components/views/verification/PersonalInfo.tsx b/src/components/views/verification/PersonalInfo.tsx new file mode 100644 index 0000000000..885f68e738 --- /dev/null +++ b/src/components/views/verification/PersonalInfo.tsx @@ -0,0 +1,43 @@ +import { H6 } from '@giveth/ui-design-system'; +import styled from 'styled-components'; +import InputBox from '@/components/InputBox'; +import { Flex } from '@/components/styled-components/Flex'; +import { ButtonStyled } from './common.styled'; + +const PersonalInfo = () => { + return ( + <> +
Personal info
+
+ +
+ +
+ + + + + + ); +}; + +const EmailSection = styled(Flex)` + gap: 24px; + align-items: flex-end; + > :first-child { + width: 100%; + } +`; + +export default PersonalInfo; From 08dc2ba4bdc2467d3e048dca58cb403ca8ed492e Mon Sep 17 00:00:00 2001 From: Ramin Date: Sun, 22 May 2022 23:30:03 +0430 Subject: [PATCH 003/348] #751 implement verification personal social profile --- .../views/verification/SocialProfile.tsx | 44 +++++++++++++++++++ 1 file changed, 44 insertions(+) create mode 100644 src/components/views/verification/SocialProfile.tsx diff --git a/src/components/views/verification/SocialProfile.tsx b/src/components/views/verification/SocialProfile.tsx new file mode 100644 index 0000000000..ef4b7959ed --- /dev/null +++ b/src/components/views/verification/SocialProfile.tsx @@ -0,0 +1,44 @@ +import { H6, IconTwitter, neutralColors, P } from '@giveth/ui-design-system'; +import styled from 'styled-components'; +import { FlexCenter } from '@/components/styled-components/Flex'; +import { ButtonStyled } from './common.styled'; + +const SocialProfile = () => { + return ( + <> +
Personal Social Media
+
+ + i + Please connect to your personal social media profiles. At least + one is required. + + + } + color='#00ACEE' + label='@LAURENLUZ' + /> + + + ); +}; + +const ButtonsSection = styled.div``; + +const Attention = styled(FlexCenter)` + width: 16px; + font-size: 14px; + height: 16px; + border-radius: 50%; + border: 1px solid ${neutralColors.gray[600]}; +`; + +const Description = styled(P)` + display: flex; + align-items: center; + gap: 10px; + color: ${neutralColors.gray[700]}; +`; + +export default SocialProfile; From d49042781bfd231a3cff071953be50a332a7e3dc Mon Sep 17 00:00:00 2001 From: Ramin Date: Sun, 22 May 2022 23:32:13 +0430 Subject: [PATCH 004/348] #745 implement verification main framework --- pages/verification/[slug].tsx | 23 +++ .../images/backgrounds/Verification_GIV.svg | 100 ++++++++++ src/components/Header/Header.tsx | 13 +- src/components/modals/EditUserModal.tsx | 36 ++-- .../modals/ProjectGuidelineModal.tsx | 4 +- src/components/styled-components/Position.ts | 9 + src/components/styled-components/Shadow.ts | 3 + .../views/verification/ContentSelector.tsx | 23 +++ .../views/verification/VerificationIndex.tsx | 181 ++++++++++++++++++ src/lib/constants/Routes.ts | 1 + src/lib/constants/links.ts | 1 + 11 files changed, 368 insertions(+), 26 deletions(-) create mode 100644 pages/verification/[slug].tsx create mode 100644 public/images/backgrounds/Verification_GIV.svg create mode 100644 src/components/styled-components/Position.ts create mode 100644 src/components/views/verification/ContentSelector.tsx create mode 100644 src/components/views/verification/VerificationIndex.tsx diff --git a/pages/verification/[slug].tsx b/pages/verification/[slug].tsx new file mode 100644 index 0000000000..26256f86e1 --- /dev/null +++ b/pages/verification/[slug].tsx @@ -0,0 +1,23 @@ +import Head from 'next/head'; +import { useEffect } from 'react'; +import VerificationIndex from '@/components/views/verification/VerificationIndex'; +import { useGeneral } from '@/context/general.context'; + +const VerificationRoute = () => { + const { setShowFooter } = useGeneral(); + + useEffect(() => { + setShowFooter(false); + }, []); + + return ( + <> + + Verify a Project | Giveth + + + + ); +}; + +export default VerificationRoute; diff --git a/public/images/backgrounds/Verification_GIV.svg b/public/images/backgrounds/Verification_GIV.svg new file mode 100644 index 0000000000..3a5a73ff89 --- /dev/null +++ b/public/images/backgrounds/Verification_GIV.svg @@ -0,0 +1,100 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/components/Header/Header.tsx b/src/components/Header/Header.tsx index ad8254368b..12f08d9369 100644 --- a/src/components/Header/Header.tsx +++ b/src/components/Header/Header.tsx @@ -61,7 +61,7 @@ const Header: FC = () => { const [showUserMenu, setShowUserMenu] = useState(false); const [showHeader, setShowHeader] = useState(true); const [isGIVeconomyRoute, setIsGIVeconomyRoute] = useState(false); - const [isCreateRoute, setIsCreateRoute] = useState(false); + const [showBackBtn, setShowBackBtn] = useState(false); const { chainId, active, account, library } = useWeb3React(); const { balances } = useAppSelector( @@ -75,11 +75,12 @@ const Header: FC = () => { const { theme } = useGeneral(); const router = useRouter(); - const showLinks = !isCreateRoute; - useEffect(() => { setIsGIVeconomyRoute(router.route.startsWith('/giv')); - setIsCreateRoute(router.route.startsWith(Routes.CreateProject)); + setShowBackBtn( + router.route.startsWith(Routes.CreateProject) || + router.route.startsWith(Routes.Verification), + ); }, [router.route]); useEffect(() => { @@ -150,7 +151,7 @@ const Header: FC = () => { show={showHeader} > - {isCreateRoute ? ( + {showBackBtn ? ( = () => { )} - {showLinks && ( + {!showBackBtn && ( {menuRoutes.map((link, index) => ( diff --git a/src/components/modals/EditUserModal.tsx b/src/components/modals/EditUserModal.tsx index f26bfb1e59..6747463955 100644 --- a/src/components/modals/EditUserModal.tsx +++ b/src/components/modals/EditUserModal.tsx @@ -141,25 +141,23 @@ const EditUserModal = ({ setShowModal, user }: IEditUserModal) => { > {editStatus === EditStatusType.PHOTO ? ( - <> - - -