feat: add inbox

This commit is contained in:
David Nguyen
2023-08-07 23:10:27 +10:00
committed by Mythie
parent 6959307f5e
commit a99efdc916
22 changed files with 966 additions and 177 deletions

View File

@ -1,17 +1,45 @@
import { TRPCError } from '@trpc/server';
import { findDocumentsWithRecipientAndSender } from '@documenso/lib/server-only/document/find-documents';
import { sendDocument } from '@documenso/lib/server-only/document/send-document';
import { setFieldsForDocument } from '@documenso/lib/server-only/field/set-fields-for-document';
import { setRecipientsForDocument } from '@documenso/lib/server-only/recipient/set-recipients-for-document';
import { authenticatedProcedure, router } from '../trpc';
import {
ZSearchInboxDocumentsParamsSchema,
ZSendDocumentMutationSchema,
ZSetFieldsForDocumentMutationSchema,
ZSetRecipientsForDocumentMutationSchema,
} from './schema';
export const documentRouter = router({
searchInboxDocuments: authenticatedProcedure
.input(ZSearchInboxDocumentsParamsSchema)
.query(async ({ input, ctx }) => {
try {
const { filter, query, cursor: page } = input;
return await findDocumentsWithRecipientAndSender({
email: ctx.session.email,
query,
signingStatus: filter,
orderBy: {
column: 'created',
direction: 'desc',
},
page,
});
} catch (err) {
console.error(err);
throw new TRPCError({
code: 'BAD_REQUEST',
message: 'Something went wrong. Please try again later.',
});
}
}),
setRecipientsForDocument: authenticatedProcedure
.input(ZSetRecipientsForDocumentMutationSchema)
.mutation(async ({ input, ctx }) => {