From b0b7c7d647d50ac9fdcb6ea04ffdfb3341967307 Mon Sep 17 00:00:00 2001 From: Tom Moor Date: Sun, 4 Dec 2022 22:31:54 -0500 Subject: [PATCH] fix: Document import schema --- server/routes/api/documents/documents.ts | 6 ++++-- server/routes/api/documents/schema.ts | 4 ++-- 2 files changed, 6 insertions(+), 4 deletions(-) diff --git a/server/routes/api/documents/documents.ts b/server/routes/api/documents/documents.ts index 24668f10b..bb854f99f 100644 --- a/server/routes/api/documents/documents.ts +++ b/server/routes/api/documents/documents.ts @@ -1074,12 +1074,14 @@ router.post( auth(), validate(T.DocumentsImportSchema), async (ctx: APIContext) => { - const { publish, collectionId, parentDocumentId } = ctx.input; - if (!ctx.is("multipart/form-data")) { throw InvalidRequestError("Request type must be multipart/form-data"); } + // String as this is always multipart/form-data + const publish = ctx.input.publish === "true"; + const { collectionId, parentDocumentId } = ctx.input; + const file = ctx.request.files ? Object.values(ctx.request.files)[0] : undefined; diff --git a/server/routes/api/documents/schema.ts b/server/routes/api/documents/schema.ts index 98d775f59..d4fc58666 100644 --- a/server/routes/api/documents/schema.ts +++ b/server/routes/api/documents/schema.ts @@ -231,8 +231,8 @@ export const DocumentsUnpublishSchema = BaseIdSchema.extend({}); export type DocumentsUnpublishReq = z.infer; export const DocumentsImportSchema = z.object({ - /** Whether to publish the imported docs */ - publish: z.boolean().optional(), + /** Whether to publish the imported docs. String due to multi-part form upload */ + publish: z.string().optional(), /** Import docs to this collection */ collectionId: z.string().uuid(),