From d9eb69ff5b5b515fe8653dc892f47150e5cd5ead Mon Sep 17 00:00:00 2001 From: MTG2000 Date: Tue, 27 Sep 2022 15:42:30 +0300 Subject: [PATCH] fix: QA improvements to project modal --- .../ProjectDetailsCard/ProjectDetailsCard.tsx | 34 +- src/mocks/data/projects.ts | 654 +++++++++++++++++- 2 files changed, 644 insertions(+), 44 deletions(-) diff --git a/src/features/Projects/pages/ProjectPage/ProjectDetailsCard/ProjectDetailsCard.tsx b/src/features/Projects/pages/ProjectPage/ProjectDetailsCard/ProjectDetailsCard.tsx index e06628a..879360b 100644 --- a/src/features/Projects/pages/ProjectPage/ProjectDetailsCard/ProjectDetailsCard.tsx +++ b/src/features/Projects/pages/ProjectPage/ProjectDetailsCard/ProjectDetailsCard.tsx @@ -8,20 +8,21 @@ import Button from 'src/Components/Button/Button'; import ProjectCardSkeleton from './ProjectDetailsCard.Skeleton' // import VoteButton from 'src/features/Projects/pages/ProjectPage/VoteButton/VoteButton'; import { NotificationsService, Wallet_Service } from 'src/services' -import { ProjectPermissionEnum, useProjectDetailsQuery } from 'src/graphql'; +import { ProjectLaunchStatusEnum, ProjectPermissionEnum, useProjectDetailsQuery } from 'src/graphql'; import Lightbox from 'src/Components/Lightbox/Lightbox' import linkifyHtml from 'linkify-html'; import ErrorMessage from 'src/Components/Errors/ErrorMessage/ErrorMessage'; import { setVoteAmount } from 'src/redux/features/vote.slice'; import { numberFormatter } from 'src/utils/helperFunctions'; import { MEDIA_QUERIES } from 'src/utils/theme'; -import { FaDiscord, FaTimes } from 'react-icons/fa'; -import { FiGithub, FiGlobe, FiTwitter } from 'react-icons/fi'; +import { FaDiscord, } from 'react-icons/fa'; +import { FiEdit2, FiGithub, FiGlobe, FiTwitter } from 'react-icons/fi'; import CopyToClipboard from 'react-copy-to-clipboard'; import Badge from 'src/Components/Badge/Badge'; import Avatar from 'src/features/Profiles/Components/Avatar/Avatar'; import { Link } from 'react-router-dom'; import { createRoute } from 'src/utils/routing'; +import { IoMdClose } from 'react-icons/io'; interface Props extends ModalCard { @@ -142,24 +143,27 @@ export default function ProjectDetailsCard({ direction, projectId, ...props }: P className={`modal-card max-w-[676px] ${(props.isPageModal && !isMdScreen) && '!rounded-0 w-full min-h-screen'}`} > {/* Cover Image */} -
+
- +
+ {project.launch_status === ProjectLaunchStatusEnum.Launched && `🚀 Launched`} + {project.launch_status === ProjectLaunchStatusEnum.Wip && `🔧 WIP`} +
+
+ {project.permissions.includes(ProjectPermissionEnum.UpdateInfo) && + props.onClose?.()} to={createRoute({ type: "edit-project", id: project.id })}>} + +
- {project.permissions.includes(ProjectPermissionEnum.UpdateInfo) && -
- -
} - {/* Title & Basic Info */} -
+
-

{project.title}

+

{project.title}

{project.tagline}

{project.category.icon} {project.category.title} @@ -184,7 +188,7 @@ export default function ProjectDetailsCard({ direction, projectId, ...props }: P {/* About */}
-

About

+

About

0 &&
-

CAPABILITIES

+

CAPABILITIES

{project.capabilities.map(cap => {cap.icon} {cap.title})}
@@ -251,7 +255,7 @@ export default function ProjectDetailsCard({ direction, projectId, ...props }: P
{project.members.length > 0 &&
-

MAKERS

+

MAKERS

{project.members.map(m =>