2023-06-21 13:53:32 +00:00
|
|
|
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 {
|
2023-06-21 14:09:42 +00:00
|
|
|
return await sendMail({
|
|
|
|
|
template: input,
|
|
|
|
|
mail: {
|
|
|
|
|
from: '<hi@documenso>',
|
|
|
|
|
subject: 'Documeso Invite',
|
|
|
|
|
},
|
|
|
|
|
});
|
2023-06-21 13:53:32 +00:00
|
|
|
} catch (err) {
|
|
|
|
|
console.error(err);
|
|
|
|
|
|
|
|
|
|
throw new TRPCError({
|
|
|
|
|
code: 'BAD_REQUEST',
|
|
|
|
|
message: 'We were unable to send an email.',
|
|
|
|
|
});
|
|
|
|
|
}
|
|
|
|
|
}),
|
|
|
|
|
});
|