import * as Joi from "joi"

export const UserSchema = Joi.object({
    username: Joi.string().alphanum().min(6).max(35).error(new Error('用户名格式错误')),
    password: Joi.string().pattern(new RegExp("^[a-zA-Z0-9]{3,30}$")).required(),
    email: Joi.string().email({
        minDomainSegments: 2,
        tlds: { allow: ["com", "net"] },
    }),
}).or("username", "email")

export const RegisterUserSchema = Joi.object({
    username: Joi.string().alphanum().min(6).max(35).required(),
    password: Joi.string().pattern(new RegExp("^[a-zA-Z0-9]{3,30}$")).required(),
    confrim_pwd: Joi.ref("password"),
    email: Joi.string()
        .email({
            minDomainSegments: 2,
            tlds: { allow: ["com", "net"] },
        }),
    nickname: Joi.string().alphanum().min(4).max(35),
})

export const LoginUserSchema = Joi.object({
    referrer: Joi.string().allow("").optional(),
    username: Joi.string().min(5).max(35), //Joi.string().alphanum().min(6).max(35)
    password: Joi.string().pattern(new RegExp("^[a-zA-Z0-9]{3,30}$")).required(),
    // email: Joi.string().email({
    //     minDomainSegments: 2,
    //     tlds: { allow: ["com", "net"] },
    // }),
})//.or("username", "email")