import { msg } from '@lingui/core/macro'; import { useLingui } from '@lingui/react'; import { Trans } from '@lingui/react/macro'; import { DocumentStatus, RecipientRole, SigningStatus } from '@prisma/client'; import { AlertTriangle, CheckIcon, Clock, MailIcon, MailOpenIcon, PenIcon, PlusIcon, UserIcon, } from 'lucide-react'; import { Link } from 'react-router'; import { match } from 'ts-pattern'; import { RECIPIENT_ROLES_DESCRIPTION } from '@documenso/lib/constants/recipient-roles'; import type { TEnvelope } from '@documenso/lib/types/envelope'; import { isDocumentCompleted } from '@documenso/lib/utils/document'; import { formatSigningLink } from '@documenso/lib/utils/recipients'; import { CopyTextButton } from '@documenso/ui/components/common/copy-text-button'; import { SignatureIcon } from '@documenso/ui/icons/signature'; import { AvatarWithText } from '@documenso/ui/primitives/avatar'; import { Badge } from '@documenso/ui/primitives/badge'; import { PopoverHover } from '@documenso/ui/primitives/popover'; import { useToast } from '@documenso/ui/primitives/use-toast'; export type DocumentPageViewRecipientsProps = { envelope: TEnvelope; documentRootPath: string; }; export const DocumentPageViewRecipients = ({ envelope, documentRootPath, }: DocumentPageViewRecipientsProps) => { const { _ } = useLingui(); const { toast } = useToast(); const recipients = envelope.recipients; return (

Recipients

{!isDocumentCompleted(envelope.status) && ( {recipients.length === 0 ? ( ) : ( )} )}
); };