Compare commits

...

3 Commits

View File

@ -1,6 +1,7 @@
import type { z } from 'zod'; import type { z } from 'zod';
import { prisma } from '@documenso/prisma'; import { prisma } from '@documenso/prisma';
import { FolderType } from '@documenso/prisma/generated/types';
import { TemplateSchema } from '@documenso/prisma/generated/zod/modelSchema//TemplateSchema'; import { TemplateSchema } from '@documenso/prisma/generated/zod/modelSchema//TemplateSchema';
import type { TCreateTemplateMutationSchema } from '@documenso/trpc/server/template-router/schema'; import type { TCreateTemplateMutationSchema } from '@documenso/trpc/server/template-router/schema';
@ -44,9 +45,13 @@ export const createTemplate = async ({
} }
} }
const folder = await prisma.folder.findFirstOrThrow({ let folder = null;
if (folderId) {
folder = await prisma.folder.findFirst({
where: { where: {
id: folderId, id: folderId,
type: FolderType.TEMPLATE,
...(teamId ...(teamId
? { ? {
team: { team: {
@ -65,9 +70,10 @@ export const createTemplate = async ({
}, },
}); });
if (!team) { if (!folder) {
throw new AppError(AppErrorCode.NOT_FOUND); throw new AppError(AppErrorCode.NOT_FOUND);
} }
}
return await prisma.template.create({ return await prisma.template.create({
data: { data: {
@ -75,7 +81,7 @@ export const createTemplate = async ({
userId, userId,
templateDocumentDataId, templateDocumentDataId,
teamId, teamId,
folderId: folder.id, folderId: folder?.id,
templateMeta: { templateMeta: {
create: { create: {
language: team?.teamGlobalSettings?.documentLanguage, language: team?.teamGlobalSettings?.documentLanguage,