UNPKG

get-express-starter

Version:

Get production ready express boilerplate with a single command

57 lines (50 loc) 1.15 kB
import { rolesAllowed } from '@/config'; import Joi from 'joi'; import { objectId, password } from './custom.validation'; const createUser = { body: Joi.object().keys({ email: Joi.string().required().email(), password: Joi.string().required().custom(password), name: Joi.string().required(), role: Joi.string().valid(...rolesAllowed), }), }; const getUsers = { query: Joi.object().keys({ name: Joi.string(), address: Joi.string(), role: Joi.string(), sortBy: Joi.string(), limit: Joi.number().integer(), page: Joi.number().integer(), }), }; const getUser = { params: Joi.object().keys({ userId: Joi.string().custom(objectId), }), }; const updateUser = { params: Joi.object().keys({ userId: Joi.required().custom(objectId), }), body: Joi.object() .keys({ email: Joi.string().email(), password: Joi.string().custom(password), name: Joi.string(), }) .min(1), }; const deleteUser = { params: Joi.object().keys({ userId: Joi.string().custom(objectId), }), }; export default { createUser, getUsers, getUser, updateUser, deleteUser, };