import { lazy } from 'react'; import { Plural, Trans } from '@lingui/react/macro'; import { motion } from 'framer-motion'; import { ArrowLeftIcon, BanIcon, DownloadCloudIcon } from 'lucide-react'; import { Link } from 'react-router'; import { useCurrentEnvelopeRender } from '@documenso/lib/client-only/providers/envelope-render-provider'; import { FieldToolTip } from '@documenso/ui/components/field/field-tooltip'; import PDFViewerKonvaLazy from '@documenso/ui/components/pdf-viewer/pdf-viewer-konva-lazy'; import { Button } from '@documenso/ui/primitives/button'; import { Separator } from '@documenso/ui/primitives/separator'; import { SignFieldDropdownDialog } from '~/components/dialogs/sign-field-dropdown-dialog'; import { SignFieldEmailDialog } from '~/components/dialogs/sign-field-email-dialog'; import { SignFieldInitialsDialog } from '~/components/dialogs/sign-field-initials-dialog'; import { SignFieldNameDialog } from '~/components/dialogs/sign-field-name-dialog'; import { SignFieldNumberDialog } from '~/components/dialogs/sign-field-number-dialog'; import { SignFieldSignatureDialog } from '~/components/dialogs/sign-field-signature-dialog'; import { SignFieldTextDialog } from '~/components/dialogs/sign-field-text-dialog'; import { EnvelopeItemSelector } from '../envelope-editor/envelope-file-selector'; import EnvelopeSignerForm from '../envelope-signing/envelope-signer-form'; import { EnvelopeSignerHeader } from '../envelope-signing/envelope-signer-header'; import { useRequiredEnvelopeSigningContext } from './envelope-signing-provider'; const EnvelopeSignerPageRenderer = lazy( async () => import('../envelope-signing/envelope-signer-page-renderer'), ); export const DocumentSigningPageViewV2 = () => { const { envelopeItems, currentEnvelopeItem, setCurrentEnvelopeItem } = useCurrentEnvelopeRender(); const { envelope, recipientFields, recipientFieldsRemaining, showPendingFieldTooltip } = useRequiredEnvelopeSigningContext(); return (