|
| 1 | +import Joi from 'joi'; |
| 2 | + |
| 3 | +const registerSchema = Joi.object({ |
| 4 | + username: Joi.string().min(3).max(30).required().messages({ |
| 5 | + 'string.empty': 'Username is required', |
| 6 | + 'string.min': 'Username must be at least 3 characters', |
| 7 | + 'string.max': 'Username must be at most 30 characters', |
| 8 | + }), |
| 9 | + fullname: Joi.string().min(3).max(50).required().messages({ |
| 10 | + 'string.empty': 'Full name is required', |
| 11 | + 'string.min': 'Full name must be at least 3 characters', |
| 12 | + 'string.max': 'Full name must be at most 50 characters', |
| 13 | + }), |
| 14 | + email: Joi.string().email().required().messages({ |
| 15 | + 'string.empty': 'Email is required', |
| 16 | + 'string.email': 'Email must be a valid email address', |
| 17 | + }), |
| 18 | + password: Joi.string().min(6).required().messages({ |
| 19 | + 'string.empty': 'Password is required', |
| 20 | + 'string.min': 'Password must be at least 6 characters', |
| 21 | + }), |
| 22 | +}); |
| 23 | + |
| 24 | +const loginSchema = Joi.object({ |
| 25 | + email: Joi.string().email().required().messages({ |
| 26 | + 'string.empty': 'Email is required', |
| 27 | + 'string.email': 'Email must be a valid email address', |
| 28 | + }), |
| 29 | + password: Joi.string().min(6).required().messages({ |
| 30 | + 'string.empty': 'Password is required', |
| 31 | + 'string.min': 'Password must be at least 6 characters', |
| 32 | + }), |
| 33 | +}); |
| 34 | + |
| 35 | +export { registerSchema, loginSchema }; |
0 commit comments