import { z } from "zod"; export const numberModel = z .union([ z.coerce .number() .refine((val) => !isNaN(val), { message: "Must be a valid number" }), z.undefined(), ]) .transform((value) => { return value !== undefined && isNaN(value) ? undefined : value; });