let Joi = require('joi');

export {};
/*
We can add multiple message like this
const ValidationSchemas = Joi.object({    
    name: Joi.string()  
      .min(6)
      .required()
      .messages({
        'string.empty': 'Display name cannot be empty',
        'string.min': 'Min 6 characteers',
      })
      .optional(),
    email: Joi.string().min(6).required().email().message('Must be a valid email address'),
    password: Joi.string().required().min(6).message('Password is required!'),
  });
  */
const loginJoiSchema = Joi.object().keys({
    email: Joi.string().email().required(),
    password: Joi.string().required(),
    device_token: Joi.array().allow(null, ''),
    otp_on_phone:Joi.boolean().allow(null, ''),
    otp_on_email:Joi.boolean().allow(null, '')
})
const ForgotPasswordJoiSchema = Joi.object().keys({
    email: Joi.string().email().required(),
})

const emailVerifyJoiSchema = Joi.object().keys({
  userId: Joi.string().required(),
})

const userInfoJoiSchema = Joi.object().keys({
  id: Joi.string().required(),
})

const patientSignupJoiSchema = Joi.object().keys({
    first_name: Joi.string().max(100).required().label('First Name') ,
    middle_name: Joi.string().max(100).label('Middle Name').allow(''),
    last_name: Joi.string().max(100).required().label('Surname'),
    email: Joi.string().email({ minDomainSegments: 2 }).required(),
    password: Joi.string().required(),
    phone_number: Joi.object().required(),
    user_role:Joi.string().valid('Doctor', 'Patent').label('Role').allow(''),
    dob: Joi.date().raw().label('Date of birth').allow('',null),
    gender:Joi.string().required(),
    profile_pic:Joi.string().allow('',null),
    social_security_number:Joi.string().allow('',null),
    phone:Joi.string().max(13).required(),
})

const ChangePasswordJoiSchema = Joi.object().keys({
  id : Joi.string().required().label('Enter the id'),
  oldPassword : Joi.string().required().label('Enter the OldPassword'),
  Password: Joi.string().required().label('Enter the Password')
})

const ChangeSecretQuestionJoiSchema =  Joi.object().keys({
  id : Joi.string().required().label('Enter the id'),
  secretQuestion: Joi.string().required(),
  secretAnswer: Joi.string().required()
})


module.exports = {loginJoiSchema, patientSignupJoiSchema, emailVerifyJoiSchema, ForgotPasswordJoiSchema,userInfoJoiSchema, ChangePasswordJoiSchema,ChangeSecretQuestionJoiSchema}