Merge branch 'main' into feat/automated-fields-signature

This commit is contained in:
Catalin Pit
2024-08-19 13:18:50 +03:00
committed by GitHub
35 changed files with 934 additions and 28 deletions

View File

@ -26,6 +26,7 @@ import { truncateTitle } from '~/helpers/truncate-title';
import { SigningAuthPageView } from '../signing-auth-page';
import { ClaimAccount } from './claim-account';
import { DocumentPreviewButton } from './document-preview-button';
import { PollUntilDocumentCompleted } from './poll-until-document-completed';
export type CompletedSigningPageProps = {
params: {
@ -205,6 +206,8 @@ export default async function CompletedSigningPage({
</Link>
)}
</div>
<PollUntilDocumentCompleted document={document} />
</div>
);
}

View File

@ -0,0 +1,32 @@
'use client';
import { useEffect } from 'react';
import { useRouter } from 'next/navigation';
import type { Document } from '@documenso/prisma/client';
import { DocumentStatus } from '@documenso/prisma/client';
export type PollUntilDocumentCompletedProps = {
document: Pick<Document, 'id' | 'status' | 'deletedAt'>;
};
export const PollUntilDocumentCompleted = ({ document }: PollUntilDocumentCompletedProps) => {
const router = useRouter();
useEffect(() => {
if (document.status === DocumentStatus.COMPLETED) {
return;
}
const interval = setInterval(() => {
if (window.document.hasFocus()) {
router.refresh();
}
}, 5000);
return () => clearInterval(interval);
}, [router, document.status]);
return <></>;
};