2024-12-01 11:11:27 +01:00
|
|
|
"use client";
|
|
|
|
|
|
|
|
|
|
import Link from "next/link";
|
|
|
|
|
import Image from "next/image"
|
2024-12-13 14:08:24 +01:00
|
|
|
import {Database} from "@prisma/client";
|
|
|
|
|
import {Card, CardContent, CardHeader} from "@/components/ui/card";
|
2024-12-16 16:30:00 +01:00
|
|
|
import {ConnectionCircle} from "@/components/wrappers/common/connection-circle";
|
2024-12-01 11:11:27 +01:00
|
|
|
import {formatDateLastContact} from "@/utils/date-formatting";
|
|
|
|
|
|
|
|
|
|
export type projectDatabaseCardProps = {
|
2024-12-13 14:08:24 +01:00
|
|
|
data: Database,
|
2024-12-01 11:11:27 +01:00
|
|
|
extendedProps: any
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
export const ProjectDatabaseCard = (props: projectDatabaseCardProps) => {
|
2024-12-13 14:08:24 +01:00
|
|
|
|
2024-12-01 11:11:27 +01:00
|
|
|
const {data: database, extendedProps: extendedProps} = props;
|
2024-12-13 14:08:24 +01:00
|
|
|
|
2024-12-01 11:11:27 +01:00
|
|
|
return (
|
|
|
|
|
<Link href={`/dashboard/projects/${extendedProps.id}/database/${database.id}`}>
|
2024-12-13 14:08:24 +01:00
|
|
|
<DatabaseCard data={database}/>
|
2024-12-01 11:11:27 +01:00
|
|
|
</Link>
|
|
|
|
|
)
|
2024-12-13 14:08:24 +01:00
|
|
|
}
|
|
|
|
|
|
|
|
|
|
export type databaseCardProps = {
|
|
|
|
|
data: Database,
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
export const DatabaseCard = (props: databaseCardProps) => {
|
|
|
|
|
|
|
|
|
|
const {data: database} = props;
|
|
|
|
|
|
|
|
|
|
return (
|
|
|
|
|
<Card className="flex flex-row justify-between">
|
|
|
|
|
<div className="flex flex-row items-center gap-2">
|
|
|
|
|
<Image
|
|
|
|
|
src="/PostgreSQL.png"
|
|
|
|
|
alt="Database type Icon"
|
|
|
|
|
width={60}
|
|
|
|
|
height={60}
|
|
|
|
|
className="object-cover ml-4"
|
|
|
|
|
/>
|
|
|
|
|
<div>
|
|
|
|
|
<CardHeader>Name : {database.name}</CardHeader>
|
|
|
|
|
<CardContent>
|
|
|
|
|
Last contact: {formatDateLastContact(database.lastContact)}
|
|
|
|
|
</CardContent>
|
|
|
|
|
</div>
|
|
|
|
|
</div>
|
|
|
|
|
<div className="mt-3 mr-3">
|
|
|
|
|
<ConnectionCircle date={database.lastContact}/>
|
|
|
|
|
</div>
|
|
|
|
|
</Card>
|
|
|
|
|
)
|
2024-12-01 11:11:27 +01:00
|
|
|
}
|