mirror of
https://github.com/documenso/documenso.git
synced 2025-11-15 17:21:41 +10:00
chore: refactor mail router
This commit is contained in:
@ -5,7 +5,7 @@ import React from 'react';
|
||||
import { trpc } from '@documenso/trpc/react';
|
||||
|
||||
export default function Send() {
|
||||
const { mutateAsync: sendMail } = trpc.document.sendEmail.useMutation();
|
||||
const { mutateAsync: sendMail } = trpc.mail.send.useMutation();
|
||||
|
||||
return (
|
||||
<div className="p-20">
|
||||
|
||||
@ -1,26 +0,0 @@
|
||||
import { TRPCError } from '@trpc/server';
|
||||
|
||||
import { sendMail } from '@documenso/lib/server-only/document/send-document';
|
||||
|
||||
import { authenticatedProcedure, router } from '../trpc';
|
||||
import { ZSendMailMutationSchema } from './schema';
|
||||
|
||||
export const documentRouter = router({
|
||||
sendEmail: authenticatedProcedure
|
||||
.input(ZSendMailMutationSchema)
|
||||
.mutation(async ({ input, ctx }) => {
|
||||
try {
|
||||
const { email } = input;
|
||||
|
||||
console.log('Send Mail Context', ctx);
|
||||
return await sendMail({ email });
|
||||
} catch (err) {
|
||||
console.error(err);
|
||||
|
||||
throw new TRPCError({
|
||||
code: 'BAD_REQUEST',
|
||||
message: 'We were unable to send an email.',
|
||||
});
|
||||
}
|
||||
}),
|
||||
});
|
||||
23
packages/trpc/server/mail-router/router.ts
Normal file
23
packages/trpc/server/mail-router/router.ts
Normal file
@ -0,0 +1,23 @@
|
||||
import { TRPCError } from '@trpc/server';
|
||||
|
||||
import { sendMail } from '@documenso/lib/server-only/mail/send';
|
||||
|
||||
import { authenticatedProcedure, router } from '../trpc';
|
||||
import { ZSendMailMutationSchema } from './schema';
|
||||
|
||||
export const mailRouter = router({
|
||||
send: authenticatedProcedure.input(ZSendMailMutationSchema).mutation(async ({ input }) => {
|
||||
try {
|
||||
const { email } = input;
|
||||
|
||||
return await sendMail({ email });
|
||||
} catch (err) {
|
||||
console.error(err);
|
||||
|
||||
throw new TRPCError({
|
||||
code: 'BAD_REQUEST',
|
||||
message: 'We were unable to send an email.',
|
||||
});
|
||||
}
|
||||
}),
|
||||
});
|
||||
@ -1,5 +1,5 @@
|
||||
import { authRouter } from './auth-router/router';
|
||||
import { documentRouter } from './document-router/router';
|
||||
import { mailRouter } from './mail-router/router';
|
||||
import { profileRouter } from './profile-router/router';
|
||||
import { procedure, router } from './trpc';
|
||||
|
||||
@ -7,7 +7,7 @@ export const appRouter = router({
|
||||
hello: procedure.query(() => 'Hello, world!'),
|
||||
auth: authRouter,
|
||||
profile: profileRouter,
|
||||
document: documentRouter,
|
||||
mail: mailRouter,
|
||||
});
|
||||
|
||||
export type AppRouter = typeof appRouter;
|
||||
|
||||
Reference in New Issue
Block a user