import { z } from 'zod'; import { USER_ROLES } from '@/db/schema.js'; export const createUserByAdminBodySchema = z.object({ name: z.string().min(2).max(100).trim(), email: z.string().email().toLowerCase().trim(), password: z.string().min(8).max(100), role: z.enum(USER_ROLES), }); export type CreateUserByAdminBody = z.infer; export const updateUserBodySchema = z.object({ name: z.string().min(2).max(100).trim().optional(), email: z.string().email().toLowerCase().trim().optional(), password: z.string().min(8).max(100).optional().or(z.literal('')), role: z.enum(USER_ROLES).optional(), isActive: z.boolean().optional(), }); export type UpdateUserBody = z.infer; export const userIdParamsSchema = z.object({ id: z.coerce.number().positive(), });