/* eslint-disable eslint-comments/disable-enable-pair */ /* eslint-disable @typescript-eslint/no-unnecessary-condition */ /* eslint-disable jsx-a11y/img-redundant-alt */ import { truncateAddress } from 'utils/wallet' export interface ClickableCollection { contractAddress: string name: string media: string onClick: () => void } export function CollectionsTable({ collections }: { collections: ClickableCollection[] }) { return ( <table className="w-full divide-y divide-zinc-800 table-fixed"> <thead> <tr> <th className="py-3.5 pr-3 pl-4 text-sm text-left sm:pl-0 text-infinity-blue" scope="col"> Name </th> <th className="py-3.5 px-3 text-sm text-left text-infinity-blue" scope="col"> Address </th> </tr> </thead> <tbody className=" bg-black"> {collections ? collections?.map((collection) => ( <tr key={collection.contractAddress} className="hover:bg-zinc-900 cursor-pointer" onClick={collection.onClick} > <td className="py-2 pr-3 pl-4 whitespace-nowrap sm:pl-0"> <div className="flex items-center"> <div className="shrink-0 w-11 h-11"> <img alt="Collection Image" src={collection.media} /> </div> <div className="ml-4 font-medium text-white truncate">{collection.name}</div> </div> </td> <td className="py-5 px-3 text-zinc-400 whitespace-nowrap"> <div className="text-left text-white"> {collection.contractAddress?.startsWith('stars') ? truncateAddress(collection.contractAddress) : collection.contractAddress} </div> </td> </tr> )) : null} </tbody> </table> ) }