|
|
---
.../envelope-recipient-field-tooltip.tsx | 137 +++++++++++-------
1 file changed, 81 insertions(+), 56 deletions(-)
diff --git a/packages/ui/components/document/envelope-recipient-field-tooltip.tsx b/packages/ui/components/document/envelope-recipient-field-tooltip.tsx
index b9a79586e..74c60ed13 100644
--- a/packages/ui/components/document/envelope-recipient-field-tooltip.tsx
+++ b/packages/ui/components/document/envelope-recipient-field-tooltip.tsx
@@ -2,16 +2,27 @@ import { getBoundingClientRect } from '@documenso/lib/client-only/get-bounding-c
import { PDF_VIEWER_PAGE_SELECTOR } from '@documenso/lib/constants/pdf-viewer';
import { Trans, useLingui } from '@lingui/react/macro';
import type { Field, Recipient } from '@prisma/client';
-import { SigningStatus } from '@prisma/client';
-import { ClockIcon, EyeOffIcon, LockIcon } from 'lucide-react';
-import { useCallback, useEffect, useState } from 'react';
+import { FieldType, SigningStatus } from '@prisma/client';
+import {
+ CalendarDaysIcon,
+ CheckSquareIcon,
+ ChevronDownIcon,
+ ContactIcon,
+ DiscIcon,
+ EyeOffIcon,
+ HashIcon,
+ LockIcon,
+ MailIcon,
+ TypeIcon,
+ UserIcon,
+} from 'lucide-react';
+import { type ElementType, useCallback, useEffect, useState } from 'react';
import { isTemplateRecipientEmailPlaceholder } from '../../../lib/constants/template';
import { extractInitials } from '../../../lib/utils/recipient-formatter';
import { SignatureIcon } from '../../icons/signature';
import { cn } from '../../lib/utils';
import { Avatar, AvatarFallback } from '../../primitives/avatar';
-import { Badge } from '../../primitives/badge';
import { FRIENDLY_FIELD_TYPE } from '../../primitives/document-flow/types';
import { PopoverHover } from '../../primitives/popover';
@@ -27,16 +38,18 @@ interface EnvelopeRecipientFieldTooltipProps {
showRecipientColors?: boolean;
}
-const getRecipientDisplayText = (recipient: { name: string; email: string }) => {
- if (recipient.name && !isTemplateRecipientEmailPlaceholder(recipient.email)) {
- return `${recipient.name} (${recipient.email})`;
- }
-
- if (recipient.name && isTemplateRecipientEmailPlaceholder(recipient.email)) {
- return recipient.name;
- }
-
- return recipient.email;
+const FIELD_TYPE_ICONS: Record
-
+
{getRecipientDisplayText(field.recipient)}
+ {showFieldStatus && ( +{field.recipient.name || field.recipient.email}
+ + {!isTemplateRecipientEmailPlaceholder(field.recipient.email) && field.recipient.name && ( +{field.recipient.email}
+ )} +