From e21e1ec5237bcc6cb4ae0023a0ee53ece31457fa Mon Sep 17 00:00:00 2001 From: Jean-Luc Makiola Date: Mon, 13 Apr 2026 18:43:10 +0200 Subject: [PATCH] fix: allow visibility-only setup updates without name updateSetupSchema required name as mandatory, causing ZodError when ShareModal sent visibility-only updates. Made name optional in update schema and guarded against setting undefined name in service layer. Co-Authored-By: Claude Opus 4.6 (1M context) --- src/server/services/setup.service.ts | 4 +++- src/shared/schemas.ts | 2 +- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/src/server/services/setup.service.ts b/src/server/services/setup.service.ts index 86337ac..3a432c2 100644 --- a/src/server/services/setup.service.ts +++ b/src/server/services/setup.service.ts @@ -183,9 +183,11 @@ export async function updateSetup( if (!existing) return null; const updateData: Record = { - name: data.name, updatedAt: new Date(), }; + if (data.name !== undefined) { + updateData.name = data.name; + } if (data.visibility !== undefined) { updateData.visibility = data.visibility; } diff --git a/src/shared/schemas.ts b/src/shared/schemas.ts index 4c9b33b..f75be8c 100644 --- a/src/shared/schemas.ts +++ b/src/shared/schemas.ts @@ -96,7 +96,7 @@ export const createSetupSchema = z.object({ }); export const updateSetupSchema = z.object({ - name: z.string().min(1, "Setup name is required"), + name: z.string().min(1, "Setup name is required").optional(), visibility: z.enum(["private", "link", "public"]).optional(), });