research-index / src /components /about-card.tsx
ameerazam08's picture
bug fixs
6873acf
import {
Card,
CardBody,
Typography,
Button,
} from "@material-tailwind/react";
import Image from 'next/image'
interface AboutCardProp {
title: string;
subTitle: string;
description: string;
imageName: string;
paper_links: string;
}
export function AboutCard({ title, description, subTitle,imageName,paper_links }: AboutCardProp) {
return (
<Card
shadow={false}
placeholder={""}
onPointerEnterCapture={() => {}}
onPointerLeaveCapture={() => {}}
>
<CardBody
className="h-[900px] p-5 flex flex-col justify-center items-center rounded-2xl bg-gray-900 "
placeholder={""}
onPointerEnterCapture={() => {}}
onPointerLeaveCapture={() => {}}
>
{/* <img src={imageName} alt="next/image" className="w-512 h-512 mb-2"/> */}
<Typography
variant="h4"
className="text-center"
color="white"
placeholder=""
onPointerEnterCapture={() => {}}
onPointerLeaveCapture={() => {}}
>
{title}
</Typography>
{isVideo(imageName) ? (
<video width="500" height="500" controls>
<source src={`/paper_image/${imageName}`} type="video/mp4" />
Your browser does not support the video tag.
</video>
) : (
<Image
src={`/paper_image/${imageName}`}
width={500}
height={500}
alt="next/image"
/>
)}
{/* <Image
src={`/paper_image/${imageName}`}
width={500}
height={500}
alt="next/image"
/> */}
<Typography variant="h6" className="mb-4 text-center" color="white" placeholder=""
onPointerEnterCapture={undefined}
onPointerLeaveCapture={undefined}
>
{subTitle}
</Typography>
<Typography
onPointerEnterCapture={undefined}
onPointerLeaveCapture={undefined}
variant="lead"
placeholder={""}
color="white"
className="mt-2 mb-10 text-base w-full lg:w-10/12 text font-normal"
>
{description}
</Typography>
<a href={paper_links} target="_blank">
<Button
color="white"
placeholder={""}
onPointerEnterCapture={() => {}}
onPointerLeaveCapture={() => {}}
>
<Typography
placeholder={""}
color="blue-gray"
className="m-0 mb-0 text-base w-full lg:w-6/6 text-center font-normal"
onPointerEnterCapture={() => {}}
onPointerLeaveCapture={() => {}}
>
More Details
</Typography>
</Button>
</a>
</CardBody>
</Card>
);
}
function isVideo(filename: string) {
return ['.mp4', '.webm', '.ogg'].some(extension => filename.endsWith(extension));
}
export default AboutCard;