21 lines
573 B
TypeScript
21 lines
573 B
TypeScript
import { z } from "zod";
|
|
|
|
export const trainingReportSchema = z.object({
|
|
id: z.number().int().positive().optional(),
|
|
course_id: z.number().int(),
|
|
event_date: z
|
|
.string()
|
|
.refine(
|
|
(val) => !isNaN(Date.parse(val)),
|
|
"event_date must be a valid ISO date string"
|
|
),
|
|
remarks: z.string().nullable().optional(),
|
|
})
|
|
|
|
export const courseEventAttendeeSchema = z.object({
|
|
attendee_id: z.number().int().positive(),
|
|
passed: z.boolean(),
|
|
remarks: z.string(),
|
|
attendee_role_id: z.number().int().positive()
|
|
})
|