diff --git a/src/App.js b/src/App.js index 5cb936f..2edb2b6 100644 --- a/src/App.js +++ b/src/App.js @@ -9,6 +9,7 @@ import { URLs } from './utils/constants'; import ProgressTracker from './components/common/ProgressTracker'; import CustomHeader from './components/common/Header'; import CustomFooter from './components/common/Footer'; +import ActivatePage from './pages/Activate'; const Wrapper = ({ children }) => { return ( @@ -64,6 +65,14 @@ export function App() { } /> + + + + } + /> diff --git a/src/components/common/Buttons.jsx b/src/components/common/Buttons.jsx new file mode 100644 index 0000000..3637301 --- /dev/null +++ b/src/components/common/Buttons.jsx @@ -0,0 +1,32 @@ +import React from 'react'; + +export const OutlineButton = ({ onClick, children, classes, disabled }) => { + return ( + + ); +}; + +export const PrimaryButton = ({ onClick, children, classes, disabled }) => { + return ( + + ); +}; diff --git a/src/components/common/DangerZone.jsx b/src/components/common/DangerZone.jsx index 6b7a8b0..d159d3d 100644 --- a/src/components/common/DangerZone.jsx +++ b/src/components/common/DangerZone.jsx @@ -1,8 +1,7 @@ import React, { useState, Fragment, useEffect } from 'react'; import { Dialog, Transition } from '@headlessui/react'; import { ExclamationIcon } from '../../images/ExclamationIcon'; -import { PrimaryButton } from './PrimaryButton'; -import { OutlineButton } from './OutlineButton'; +import { PrimaryButton, OutlineButton } from '../common/Buttons'; import { useDispatch, useSelector } from 'react-redux'; import { handleErrorMessage, diff --git a/src/components/common/Header.jsx b/src/components/common/Header.jsx index bfbf7c6..0cdec29 100644 --- a/src/components/common/Header.jsx +++ b/src/components/common/Header.jsx @@ -64,11 +64,13 @@ const CustomHeader = () => { onClick={() => { dispatch(setActivePageIndex(null)); navigate('/'); + setMobileMenuOpen(false); }} className={ !isActive(URLs.SCOREBOARD) && !isActive(URLs.SBTs) && - !isNumber(activePageIndex) + !isNumber(activePageIndex) && + !isActive(URLs.ACTIVATE) ? 'text-gradient' : '' } @@ -76,17 +78,29 @@ const CustomHeader = () => { Home
navigate('/community-sbts')} + onClick={() => { + navigate(URLs.SBTs); + setMobileMenuOpen(false); + }} className={isActive(URLs.SBTs)} > Community SBTs
+
{ + navigate(URLs.ACTIVATE); + setMobileMenuOpen(false); + }} + className={isActive(URLs.ACTIVATE)} + > + Activate +
); }; return ( -
+
-
+

JOIN THE HUMANS OF NEAR

@@ -80,6 +80,17 @@ const ProgressTracker = () => { Unlock Elections, Governance, & Community Treasury with{' '} {ReadableNumber} Humans on NEAR

+
diff --git a/src/images/CommunityFund.png b/src/images/CommunityFund.png new file mode 100644 index 0000000..9a17a54 Binary files /dev/null and b/src/images/CommunityFund.png differ diff --git a/src/images/I_voted_SBT.png b/src/images/I_voted_SBT.png new file mode 100644 index 0000000..e87b67d Binary files /dev/null and b/src/images/I_voted_SBT.png differ diff --git a/src/images/NDCEvents.png b/src/images/NDCEvents.png new file mode 100644 index 0000000..47d7186 Binary files /dev/null and b/src/images/NDCEvents.png differ diff --git a/src/images/NDCKudos.png b/src/images/NDCKudos.png new file mode 100644 index 0000000..9dbd1f4 Binary files /dev/null and b/src/images/NDCKudos.png differ diff --git a/src/images/NDCLogo.png b/src/images/NDCLogo.png new file mode 100644 index 0000000..9b823a4 Binary files /dev/null and b/src/images/NDCLogo.png differ diff --git a/src/images/NDCPolls.png b/src/images/NDCPolls.png new file mode 100644 index 0000000..0c6af38 Binary files /dev/null and b/src/images/NDCPolls.png differ diff --git a/src/pages/Activate.jsx b/src/pages/Activate.jsx new file mode 100644 index 0000000..67d6dc3 --- /dev/null +++ b/src/pages/Activate.jsx @@ -0,0 +1,118 @@ +import React, { useEffect } from 'react'; +import ImageTextBlock from '../components/common/ImageTextBlock'; +import { useDispatch } from 'react-redux'; +import { updateTrackerStatus } from '../redux/reducer/tracker'; +import HandLogo from '../images/HandLogo.png'; +import NDCLogo from '../images/NDCLogo.png'; +import NDCKudos from '../images/NDCKudos.png'; +import NDCPolls from '../images/NDCPolls.png'; +import NDCEvents from '../images/NDCEvents.png'; +import CommunityFund from '../images/CommunityFund.png'; + +const ActivatePage = () => { + const dispatch = useDispatch(); + + useEffect(() => { + dispatch(updateTrackerStatus(true)); + }, []); + + return ( +
+
+
+

+ Activate as an I-AM-HUMAN Verified Human +

+

+ As a verified human, not only could you build your on-chain + reputation through a number of Community Soul Bound Tokens, you have + access to on-chain voting on governance, participation in DAOs and + grassroots funding, and much more. +
+ Engage in governance, build a strong on-chain reputation, and drive + grassroots funding.
+ Shape the future of NEAR with meaningful and impactful actions. +

+
+
+ + window.open( + 'https://near.org/nomination.ndctools.near/widget/NDC.Nomination.Page', + '_blank' + ) + } + buttonText="Participate Now" + /> + + window.open( + 'https://near.org/easypoll-v0.ndc-widgets.near/widget/EasyPoll?page=official_polls', + '_blank' + ) + } + /> + + window.open( + 'https://near.org/neardigitalcollective.near/widget/Gigs', + '_blank' + ) + } + /> + + + + window.open('https://t.me/+NjNy-5yl_KllNmYx', '_blank') + } + buttonText="See you IRL" + /> + {}} + /> +
+
+
+ ); +}; + +export default ActivatePage; diff --git a/src/pages/CommunitySBT.jsx b/src/pages/CommunitySBT.jsx index 5ec49ed..c946808 100644 --- a/src/pages/CommunitySBT.jsx +++ b/src/pages/CommunitySBT.jsx @@ -13,54 +13,21 @@ import ProofOfVibeOGSBT from '../images/PROOF_OF_VIBE.png'; import ProofOfKudos from '../images/PROOF_OF_KUDOS.png'; import ProofOfRegen from '../images/PROOF_OF_REGEN.png'; import HandLogo from '../images/HandLogo.png'; -import { PrimaryButton } from '../components/common/PrimaryButton'; -import { OutlineButton } from '../components/common/OutlineButton'; import { useEffect } from 'react'; import { useDispatch } from 'react-redux'; import { updateTrackerStatus } from '../redux/reducer/tracker'; +import ImageTextBlock from '../components/common/ImageTextBlock'; const CommunitySBTPage = () => { const dispatch = useDispatch(); - const Item = ({ - imageSrc, - title, - description, - isAvailable = false, - onClick, - }) => { - return ( -
- -
-

{title}

-

{description}

-
- {isAvailable ? ( - -

Apply Now

-
- ) : ( - -

Coming Soon

-
- )} -
-
-
- ); - }; - useEffect(() => { dispatch(updateTrackerStatus(true)); }, []); return (
-
+
{ zIndex: 10, }} > -
-

+
+

Meet the Community Soul Bound Tokens

@@ -86,7 +53,7 @@ const CommunitySBTPage = () => {

- { ) } /> - window.open('https://NEAReFi.org/telegram', '_blank') @@ -107,7 +74,7 @@ const CommunitySBTPage = () => { title="Regen" description="This SBT symbolizes regenerative potential and the power to heal the world, one act at a time. It's a declaration, proclaiming the bearer as an active participant in creating a compassionate, sustainable world." /> - window.open('https://www.proofofvibes.com/telegram', '_blank') @@ -116,58 +83,58 @@ const CommunitySBTPage = () => { title="Proof of Vibe" description="This SBT is a unique badge earned by attending special events and passing vibe checks. It grants exclusive access to high-caliber gatherings, turning them into celebrations of our collective spirit." /> - - - - - - - - - - - { >
{isAdmin ? ( diff --git a/src/pages/unAuth/index.js b/src/pages/unAuth/index.js index 316c5a0..caad9e3 100644 --- a/src/pages/unAuth/index.js +++ b/src/pages/unAuth/index.js @@ -1,6 +1,7 @@ import React from 'react'; import FVSBTImage from '../../images/FvSBT.png'; import KYCSBTImage from '../../images/KYCSBT.png'; +import IVotedSBT from '../../images/I_voted_SBT.png'; import OGSBT from '../../images/OGSBT.png'; const Landing = () => { @@ -78,6 +79,40 @@ const Landing = () => {
+
+
+

+ Get Your “I Voted” Soul Bound Token +

+

+ Gear up for the inaugural NDC General Election on September 8! Cast + your votes for the three governance houses and claim the important + "I VOTED" Soul Bound Token. This is a reputation Soul Bound Token. + Unlock the ability to participate in government referendums and + showcase your participation in the NEAR Ecosystem NDC Election. Mark + September 8 on your calendar and be part of this history of + governance on NEAR. +

+ + +
+
+ +
+

Get Your KYC Soul Bound Token

@@ -101,7 +136,7 @@ const Landing = () => { Learn More
-
+