feat: add NSFW tag in mod details page

This commit is contained in:
daniyal 2024-08-08 21:47:38 +05:00
parent 0e14336e8b
commit 7b9c95c863
3 changed files with 35 additions and 13 deletions

View File

@ -111,6 +111,7 @@ export const InnerModPage = () => {
body={modData.body} body={modData.body}
screenshotsUrls={modData.screenshotsUrls} screenshotsUrls={modData.screenshotsUrls}
tags={modData.tags} tags={modData.tags}
nsfw={modData.nsfw}
/> />
<Interactions /> <Interactions />
<PublishDetails <PublishDetails
@ -318,6 +319,7 @@ type BodyProps = {
body: string body: string
screenshotsUrls: string[] screenshotsUrls: string[]
tags: string[] tags: string[]
nsfw: boolean
} }
const Body = ({ const Body = ({
@ -325,7 +327,8 @@ const Body = ({
title, title,
body, body,
screenshotsUrls, screenshotsUrls,
tags tags,
nsfw
}: BodyProps) => { }: BodyProps) => {
const postBodyRef = useRef<HTMLDivElement>(null) const postBodyRef = useRef<HTMLDivElement>(null)
const viewFullPostBtnRef = useRef<HTMLDivElement>(null) const viewFullPostBtnRef = useRef<HTMLDivElement>(null)
@ -376,6 +379,12 @@ const Body = ({
))} ))}
</div> </div>
<div className='IBMSMSMBSSTags'> <div className='IBMSMSMBSSTags'>
{nsfw && (
<div className='IBMSMSMBSSTagsTag IBMSMSMBSSTagsTagNSFW'>
<p>NSFW</p>
</div>
)}
{tags.map((tag, index) => ( {tags.map((tag, index) => (
<a className='IBMSMSMBSSTagsTag' href='#' key={`tag-${index}`}> <a className='IBMSMSMBSSTagsTag' href='#' key={`tag-${index}`}>
{tag} {tag}

View File

@ -5,9 +5,9 @@
grid-gap: 25px; grid-gap: 25px;
padding: 50px 15px; padding: 50px 15px;
border-radius: 15px; border-radius: 15px;
background: rgba(255,255,255,0.05); background: rgba(255, 255, 255, 0.05);
box-shadow: 0 0 8px 0 rgb(0,0,0,0.1); box-shadow: 0 0 8px 0 rgb(0, 0, 0, 0.1);
color: rgba(255,255,255,0.75); color: rgba(255, 255, 255, 0.75);
align-items: center; align-items: center;
justify-content: start; justify-content: start;
position: relative; position: relative;
@ -75,7 +75,7 @@
display: flex; display: flex;
flex-direction: row; flex-direction: row;
grid-gap: 10px; grid-gap: 10px;
border-top: solid 1px rgba(255,255,255,0.1); border-top: solid 1px rgba(255, 255, 255, 0.1);
padding: 10px 0 0 0; padding: 10px 0 0 0;
} }
@ -95,7 +95,7 @@
transition: ease 0.4s; transition: ease 0.4s;
opacity: 1; opacity: 1;
transform: scale(1.02); transform: scale(1.02);
background: rgba(255,255,255,0.1); background: rgba(255, 255, 255, 0.1);
} }
.learnLinksLinkImg { .learnLinksLinkImg {
@ -103,3 +103,7 @@
max-width: 28px; max-width: 28px;
} }
.IBMSMSMBSSTagsTag.IBMSMSMBSSTagsTagNSFW:hover {
border: unset;
transform: scale(1);
}

View File

@ -12,21 +12,21 @@
transition: ease 0.4s; transition: ease 0.4s;
padding: 5px 15px; padding: 5px 15px;
border-radius: 10px; border-radius: 10px;
background: rgba(255,255,255,0); background: rgba(255, 255, 255, 0);
color: rgba(255,255,255,0.25); color: rgba(255, 255, 255, 0.25);
text-decoration: unset; text-decoration: unset;
text-align: center; text-align: center;
cursor: pointer; cursor: pointer;
box-shadow: 0 0 8px 0 rgba(0,0,0,0); box-shadow: 0 0 8px 0 rgba(0, 0, 0, 0);
border: solid 1px rgba(255,255,255,0.05); border: solid 1px rgba(255, 255, 255, 0.05);
} }
.IBMSMSMBSSTagsTag:hover { .IBMSMSMBSSTagsTag:hover {
transition: ease 0.4s; transition: ease 0.4s;
transform: scale(1.02); transform: scale(1.02);
color: rgba(255,255,255,0.5); color: rgba(255, 255, 255, 0.5);
box-shadow: 0 0 8px 0 rgb(0,0,0,0.1); box-shadow: 0 0 8px 0 rgb(0, 0, 0, 0.1);
background: rgba(255,255,255,0.05); background: rgba(255, 255, 255, 0.05);
} }
.IBMSMSMBSSTagsTag:active { .IBMSMSMBSSTagsTag:active {
@ -34,3 +34,12 @@
transform: scale(0.98); transform: scale(0.98);
} }
.IBMSMSMBSSTagsTag.IBMSMSMBSSTagsTagNSFW {
background: rgba(255, 255, 255, 0.1);
color: rgb(225, 68, 68);
font-weight: bold;
border: unset;
font-size: 14px;
cursor: default;
box-shadow: unset;
}