import { Table, TableBody, TableCell, TableHead, TableHeader, TableRow, } from "@/components/ui/table" import { projectTemplates } from "@/lib/data" import { ChevronRight } from "lucide-react" import Image from "next/image" import Link from "next/link" import Avatar from "../ui/avatar" import Button from "../ui/customButton" export default function DashboardSharedWithMe({ shared, }: { shared: { id: string name: string type: string author: string authorAvatarUrl: string sharedOn: Date }[] }) { return ( <div className="grow p-4 flex flex-col"> <div className="text-xl font-medium mb-8">Shared With Me</div> {shared.length > 0 ? ( <div className="grow w-full"> <Table> <TableHeader> <TableRow className="hover:bg-background"> <TableHead>Sandbox Name</TableHead> <TableHead>Shared By</TableHead> <TableHead>Sent On</TableHead> <TableHead className="text-right"></TableHead> </TableRow> </TableHeader> <TableBody> {shared.map((sandbox) => ( <TableRow> <TableCell> <div className="font-medium flex items-center"> <Image alt="" src={ projectTemplates.find((p) => p.id === sandbox.type) ?.icon ?? "/project-icons/node.svg" } width={20} height={20} className="mr-2" /> {sandbox.name} </div> </TableCell> <TableCell> <div className="flex items-center"> <Avatar name={sandbox.author} avatarUrl={sandbox.authorAvatarUrl} className="mr-2" /> {sandbox.author} </div> </TableCell> <TableCell> {new Date(sandbox.sharedOn).toLocaleDateString()} </TableCell> <TableCell className="text-right"> <Link href={`/code/${sandbox.id}`}> <Button> Open <ChevronRight className="w-4 h-4 ml-2" /> </Button> </Link> </TableCell> </TableRow> ))} </TableBody> </Table> </div> ) : ( <div className="text-muted-foreground text-sm"> No sandboxes here. Get a friend to share one with you, and try out live collaboration! </div> )} </div> ) }