File size: 1,217 Bytes
fcd4478
 
66e93d1
fcd4478
 
 
 
abb7588
fcd4478
 
f80b091
fcd4478
 
 
f80b091
 
 
 
 
 
 
fcd4478
f80b091
fcd4478
f80b091
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
fcd4478
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
'use client';

import { ProjectBaseInfo } from '@/lib/fetch';
import { format } from 'date-fns';
import Link from 'next/link';
import { useParams } from 'next/navigation';
import { cn } from '@/lib/utils';
import Chip from '../ui/Chip';

export interface ProjectCardProps {
  projectInfo: ProjectBaseInfo;
}

const ProjectCard: React.FC<ProjectCardProps> = ({ projectInfo }) => {
  const {
    id,
    name,
    created_at,
    label_type,
    organization: { name: orgName },
  } = projectInfo;

  const { projectId: projectIdFromParam } = useParams();

  const formattedDate = format(created_at, 'yyyy-MM-dd');
  return (
    <Link
      className={cn(
        'p-4 m-2 bg-white l:h-[250px] rounded-xl shadow-md flex items-center border border-transparent hover:border-gray-500 transition-all cursor-pointer',
        Number(projectIdFromParam) === id && 'border-gray-500',
      )}
      href={`/project/${id}`}
    >
      <div className="overflow-hidden">
        <p className="text-xs text-gray-500">{orgName}</p>
        <p className="text-sm font-medium text-black mb-1">{name}</p>
        <p className="text-xs text-gray-500">{formattedDate}</p>
      </div>
    </Link>
  );
};

export default ProjectCard;