| 12345678910111213141516171819202122232425262728293031 |
- import Joi from 'joi'
-
- /**
- * answers schema object
- */
- const answersSchema = {
- type: 'object',
- properties: Joi.object().keys({
- name: Joi.string().required(),
- email: Joi.string().email({ minDomainSegments: 2, tlds: false }),
- // TODO: Refine password regex to have more secure requirements
- password: Joi.string().min(10).max(30).pattern(new RegExp('[a-zA-Z0-9]+')),
- // TODO: Change if going international (only works in usa)
- zipcode: Joi.string().min(5).max(5).pattern(new RegExp('^[0-9]{5}$')),
- seeking: Joi.string(),
- urgency: Joi.string(),
- presence: Joi.string(),
- duration: Joi.string(),
- pronouns: Joi.string(),
- language: Joi.string(),
- image: Joi.any(),
- distance: Joi.string(),
- blurb: Joi.string(),
- aspects: Joi.array().items(Joi.number().allow(null))
- }),
- validate(instance) {
- return this.properties.validate(instance)
- },
- }
-
- export { answersSchema }
|