diff --git a/packages/features/bookings/lib/getBookingResponsesSchema.ts b/packages/features/bookings/lib/getBookingResponsesSchema.ts index 9e0a565b13..a2357ca243 100644 --- a/packages/features/bookings/lib/getBookingResponsesSchema.ts +++ b/packages/features/bookings/lib/getBookingResponsesSchema.ts @@ -217,7 +217,18 @@ function preprocess({ continue; } - if (bookingField.type === "checkbox" || bookingField.type === "multiselect") { + if (bookingField.type === "multiselect") { + if (isRequired && (!value || value.length === 0)) { + ctx.addIssue({ code: z.ZodIssueCode.custom, message: m(`error_required_field`) }); + continue; + } + if (!stringSchema.array().safeParse(value).success) { + ctx.addIssue({ code: z.ZodIssueCode.custom, message: m("Invalid array of strings") }); + } + continue; + } + + if (bookingField.type === "checkbox") { if (!stringSchema.array().safeParse(value).success) { ctx.addIssue({ code: z.ZodIssueCode.custom, message: m("Invalid array of strings") }); }