mirror of
https://github.com/documenso/documenso.git
synced 2025-11-19 03:01:59 +10:00
chore: refactor sendMail to make it reusable
This commit is contained in:
@ -8,9 +8,13 @@ import { ZSendMailMutationSchema } from './schema';
|
||||
export const mailRouter = router({
|
||||
send: authenticatedProcedure.input(ZSendMailMutationSchema).mutation(async ({ input }) => {
|
||||
try {
|
||||
const { email } = input;
|
||||
|
||||
return await sendMail({ email });
|
||||
return await sendMail({
|
||||
template: input,
|
||||
mail: {
|
||||
from: '<hi@documenso>',
|
||||
subject: 'Documeso Invite',
|
||||
},
|
||||
});
|
||||
} catch (err) {
|
||||
console.error(err);
|
||||
|
||||
|
||||
@ -2,6 +2,14 @@ import { z } from 'zod';
|
||||
|
||||
export const ZSendMailMutationSchema = z.object({
|
||||
email: z.string().min(1).email(),
|
||||
name: z.string().min(1).optional(),
|
||||
firstName: z.string().min(1).optional(),
|
||||
documentSigningLink: z.string().min(1).optional(),
|
||||
documentName: z.string().min(1).optional(),
|
||||
downloadLink: z.string().min(1).optional(),
|
||||
reviewLink: z.string().min(1).optional(),
|
||||
numberOfSigners: z.number().int().min(1).optional(),
|
||||
type: z.enum(['invite', 'signed', 'completed']),
|
||||
});
|
||||
|
||||
export type TSendMailMutationSchema = z.infer<typeof ZSendMailMutationSchema>;
|
||||
|
||||
Reference in New Issue
Block a user