import prisma from "@documenso/prisma"; import Head from "next/head"; import { useEffect } from "react"; import { NextPageWithLayout } from "../../_app"; import { ReadStatus } from "@prisma/client"; import SignaturePad from "signature_pad"; import { InformationCircleIcon, PencilIcon } from "@heroicons/react/24/outline"; import Logo from "../../../components/logo"; import PDFSigner from "../../../components/editor/pdf-signer"; import fields from "../../api/documents/[id]/fields"; //http://localhost:3000/documents/40/sign?token=wu82JFMxLvdYVJ9sKy9jvd const SignPage: NextPageWithLayout = (props: any) => { return ( <> Sign | Documenso {/* todo read/ sign version of editor => flag or own component */} ); }; export async function getServerSideProps(context: any) { const recipientToken: string = context.query["token"]; await prisma.recipient.updateMany({ where: { token: recipientToken, }, data: { readStatus: ReadStatus.OPENED, }, }); const recipient = await prisma.recipient.findFirstOrThrow({ where: { token: recipientToken, }, include: { Document: true, }, }); const fields = await prisma.field.findMany({ where: { documentId: recipient.Document.id, }, include: { Recipient: true, }, }); // todo sign ui return { props: { document: recipient.Document, fields: fields, }, }; } export default SignPage;