mirror of
https://github.com/strapi/strapi.git
synced 2025-08-08 08:46:42 +00:00
42 lines
778 B
JavaScript
42 lines
778 B
JavaScript
'use strict';
|
|
|
|
const { yup } = require('strapi-utils');
|
|
|
|
yup['strapiID'] = yup.lazy(value =>
|
|
typeof value === 'number'
|
|
? yup
|
|
.number()
|
|
.integer()
|
|
.positive()
|
|
: yup.string()
|
|
);
|
|
|
|
const email = yup
|
|
.string()
|
|
.email()
|
|
.min(1);
|
|
|
|
const firstname = yup.string().min(1);
|
|
|
|
const lastname = yup.string().min(1);
|
|
|
|
const username = yup.string().min(1);
|
|
|
|
const password = yup
|
|
.string()
|
|
.min(8)
|
|
.matches(/[a-z]/, '${path} must contain at least one lowercase character')
|
|
.matches(/[A-Z]/, '${path} must contain at least one uppercase character')
|
|
.matches(/\d/, '${path} must contain at least one number');
|
|
|
|
const roles = yup.array(yup.strapiID).min(1);
|
|
|
|
module.exports = {
|
|
email,
|
|
firstname,
|
|
lastname,
|
|
username,
|
|
password,
|
|
roles,
|
|
};
|