feat: add support for attachments in template management

- Enhanced TemplateEditForm to include attachments in the template data.
- Updated createDocumentFromTemplate to handle attachment creation.
- Modified updateTemplate to manage attachment updates and deletions.
- Integrated attachments into ZTemplateSchema and ZAddTemplateSettingsFormSchema for validation.
- Improved getTemplateById to fetch attachments alongside other template data.
This commit is contained in:
Catalin Documenso
2025-05-06 15:48:52 +03:00
parent d10ec437cf
commit cec25ac719
9 changed files with 94 additions and 10 deletions

View File

@ -14,6 +14,7 @@ import {
ZTemplateManySchema,
ZTemplateSchema,
} from '@documenso/lib/types/template';
import AttachmentSchema from '@documenso/prisma/generated/zod/modelSchema/AttachmentSchema';
import { TemplateDirectLinkSchema } from '@documenso/prisma/generated/zod/modelSchema/TemplateDirectLinkSchema';
import {
@ -154,6 +155,16 @@ export const ZUpdateTemplateRequestSchema = z.object({
.optional(),
type: z.nativeEnum(TemplateType).optional(),
useLegacyFieldInsertion: z.boolean().optional(),
attachments: AttachmentSchema.pick({
id: true,
label: true,
url: true,
})
.extend({
formId: z.string().min(1),
})
.array()
.optional(),
})
.optional(),
meta: z