25 lines
550 B
TypeScript
25 lines
550 B
TypeScript
import vine from '@vinejs/vine'
|
|
|
|
const password = vine.string().minLength(8)
|
|
|
|
export const registerValidator = vine.compile(
|
|
vine.object({
|
|
email: vine
|
|
.string()
|
|
.email()
|
|
.normalizeEmail()
|
|
.unique(async (db, value) => {
|
|
const match = await db.from('users').select('id').where('email', value).first()
|
|
return !match
|
|
}),
|
|
password,
|
|
fullName: vine.string()
|
|
})
|
|
)
|
|
export const loginValidator = vine.compile(
|
|
vine.object({
|
|
email: vine.string().email().normalizeEmail(),
|
|
password,
|
|
})
|
|
)
|