import Joi from 'joi'; import { validateWithSchema } from '../../ValidateSchema'; import { RequestUpdateUserAreaDTO, RequestUserAreaDTO } from '../../../types/admin/user_area/UserAreaDTO'; const storeUserAreaSchema = Joi.object({ user_id: Joi.string().trim().required().messages({ 'string.empty': 'User ID is required', }), province_id: Joi.array().items( Joi.string().trim().required() ).min(1).required().messages({ 'array.base': 'Province ID must be an array', 'array.min': 'At least one Province ID is required', }), }); const updateUserAreaSchema = Joi.object>({ user_id: Joi.string().trim().optional().messages({ 'string.empty': 'User ID is required', }), province_id: Joi.string().trim().optional().messages({ 'string.empty': 'Province ID is required', }), }); export const validateStoreUserAreaRequest = (body: unknown): RequestUserAreaDTO => { return validateWithSchema(storeUserAreaSchema, body); }; export const validateUpdateUserAreaRequest = (body: unknown): Partial => { return validateWithSchema>(updateUserAreaSchema, body); };