import vine from '@vinejs/vine' const meals = vine.array( vine.object({ date: vine.string(), // YYYY-MM-DD meal_type: vine.string().in(['dinner', 'lunch']), }) ) export const createMealValidator = vine.compile( vine.union([ vine.union.if( (data) => vine.helpers.isObject(data) && 'meals' in data, vine.object({ meals, }) ), vine.union.else( vine.object({ date: vine.date(), type: vine.string().in(['Déjeuner', 'Dîner']), courses: vine .array( vine.object({ name: vine.string().minLength(1).maxLength(255), description: vine.string().minLength(1), }) ) .minLength(1), }) ), ]) ) export const updateMealsRegistrationsValidator = vine.compile( vine.object({ userId: vine.number().min(1), meals, }) )