import { Link } from 'react-router'; import { match } from 'ts-pattern'; import { useSession } from '@documenso/lib/client-only/providers/session'; import type { TDocumentMany as TDocumentRow } from '@documenso/lib/types/document'; import { formatDocumentsPath } from '@documenso/lib/utils/teams'; export type DataTableTitleProps = { row: TDocumentRow; teamUrl: string; }; export const DataTableTitle = ({ row, teamUrl }: DataTableTitleProps) => { const { user } = useSession(); const recipient = row.recipients.find((recipient) => recipient.email === user.email); const isOwner = row.user.id === user.id; const isRecipient = !!recipient; const isCurrentTeamDocument = teamUrl && row.team?.url === teamUrl; const documentsPath = formatDocumentsPath(teamUrl); return match({ isOwner, isRecipient, isCurrentTeamDocument, }) .with({ isOwner: true }, { isCurrentTeamDocument: true }, () => ( {row.title} )) .with({ isRecipient: true }, () => ( {row.title} )) .otherwise(() => ( {row.title} )); };