api/app/validators/colle.ts
2025-07-30 12:56:52 +02:00

30 lines
700 B
TypeScript

import vine from '@vinejs/vine'
const colle = vine.object({
student: vine.string(),
examiner: vine.string(),
subject: vine.string(),
room: vine.string(),
grade: vine.number().min(-1).max(20).optional(),
content: vine.string().optional(),
comment: vine.string().optional(),
date: vine.date({ formats: ['iso8601'] }),
bjsecret: vine.string().optional(),
bjid: vine.string().optional(),
// TODO: Add attachments validation
})
const className = vine.string()
export const createColleValidator = vine.compile(vine.object({
colle,
className,
}))
export const createUpcomingCollesValidator = vine.compile(
vine.object({
colles: vine.array(colle),
className,
}),
)