mirror of
https://github.com/documenso/documenso.git
synced 2025-11-22 04:31:39 +10:00
34 lines
942 B
TypeScript
34 lines
942 B
TypeScript
import { z } from 'zod';
|
|
|
|
import { deleteTemplate } from '@documenso/lib/server-only/template/delete-template';
|
|
import { TemplateSchema } from '@documenso/prisma/generated/zod';
|
|
|
|
import { authenticatedProcedure } from '../trpc';
|
|
import { ZDeleteTemplateMutationSchema } from './schema';
|
|
|
|
export const ZDeleteTemplateRequestSchema = z.object({
|
|
templateId: z.number().min(1),
|
|
teamId: z.number().optional(),
|
|
});
|
|
|
|
export const ZDeleteTemplateResponseSchema = TemplateSchema;
|
|
|
|
export const deleteTemplateRoute = authenticatedProcedure
|
|
.meta({
|
|
openapi: {
|
|
method: 'POST',
|
|
path: '/template/{templateId}/delete',
|
|
summary: 'Delete template',
|
|
tags: ['Template'],
|
|
},
|
|
})
|
|
.input(ZDeleteTemplateMutationSchema)
|
|
.output(z.void())
|
|
.mutation(async ({ input, ctx }) => {
|
|
const { templateId, teamId } = input;
|
|
|
|
const userId = ctx.user.id;
|
|
|
|
await deleteTemplate({ userId, id: templateId, teamId });
|
|
});
|