mirror of
https://github.com/strapi/strapi.git
synced 2025-09-26 17:00:55 +00:00
improve jsdocs
This commit is contained in:
parent
77a1684577
commit
652cac0243
@ -4,6 +4,12 @@ const _ = require('lodash');
|
|||||||
|
|
||||||
const { yup } = require('@strapi/utils');
|
const { yup } = require('@strapi/utils');
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @type {import('yup').StringSchema} StringSchema
|
||||||
|
* @type {import('yup').NumberSchema} NumberSchema
|
||||||
|
* @type {import('yup').AnySchema} AnySchema
|
||||||
|
*/
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Utility function to compose validators
|
* Utility function to compose validators
|
||||||
*/
|
*/
|
||||||
@ -23,93 +29,93 @@ const composeValidators = (...fns) => (...args) => {
|
|||||||
|
|
||||||
/**
|
/**
|
||||||
* Adds minLength validator
|
* Adds minLength validator
|
||||||
* @param {import('yup').StringSchema} validator yup validator
|
* @param {StringSchema} validator yup validator
|
||||||
* @param {Object} metas
|
* @param {Object} metas
|
||||||
* @param {{ minLength: Number }} metas.attr model attribute
|
* @param {{ minLength: Number }} metas.attr model attribute
|
||||||
* @param {Object} options
|
* @param {Object} options
|
||||||
* @param {boolean} options.isDraft
|
* @param {boolean} options.isDraft
|
||||||
*
|
*
|
||||||
* @returns {{import('yup').StringSchema}}
|
* @returns {StringSchema}
|
||||||
*/
|
*/
|
||||||
const addMinLengthValidator = (validator, { attr }, { isDraft }) =>
|
const addMinLengthValidator = (validator, { attr }, { isDraft }) =>
|
||||||
_.isInteger(attr.minLength) && !isDraft ? validator.min(attr.minLength) : validator;
|
_.isInteger(attr.minLength) && !isDraft ? validator.min(attr.minLength) : validator;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Adds maxLength validator
|
* Adds maxLength validator
|
||||||
* @param {import('yup').StringSchema} validator yup validator
|
* @param {StringSchema} validator yup validator
|
||||||
* @param {Object} metas
|
* @param {Object} metas
|
||||||
* @param {{ maxLength: Number }} metas.attr model attribute
|
* @param {{ maxLength: Number }} metas.attr model attribute
|
||||||
*
|
*
|
||||||
* @returns {{import('yup').StringSchema}}
|
* @returns {StringSchema}
|
||||||
*/
|
*/
|
||||||
const addMaxLengthValidator = (validator, { attr }) =>
|
const addMaxLengthValidator = (validator, { attr }) =>
|
||||||
_.isInteger(attr.maxLength) ? validator.max(attr.maxLength) : validator;
|
_.isInteger(attr.maxLength) ? validator.max(attr.maxLength) : validator;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Adds min integer validator
|
* Adds min integer validator
|
||||||
* @param {import('yup').NumberSchema} validator yup validator
|
* @param {NumberSchema} validator yup validator
|
||||||
* @param {Object} metas
|
* @param {Object} metas
|
||||||
* @param {{ min: Number }} metas.attr model attribute
|
* @param {{ min: Number }} metas.attr model attribute
|
||||||
*
|
*
|
||||||
* @returns {{import('yup').NumberSchema}}
|
* @returns {NumberSchema}
|
||||||
*/
|
*/
|
||||||
const addMinIntegerValidator = (validator, { attr }) =>
|
const addMinIntegerValidator = (validator, { attr }) =>
|
||||||
_.isNumber(attr.min) ? validator.min(_.toInteger(attr.min)) : validator;
|
_.isNumber(attr.min) ? validator.min(_.toInteger(attr.min)) : validator;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Adds max integer validator
|
* Adds max integer validator
|
||||||
* @param {import('yup').NumberSchema} validator yup validator
|
* @param {NumberSchema} validator yup validator
|
||||||
* @param {Object} metas
|
* @param {Object} metas
|
||||||
* @param {{ max: Number }} metas.attr model attribute
|
* @param {{ max: Number }} metas.attr model attribute
|
||||||
*
|
*
|
||||||
* @returns {{import('yup').NumberSchema}}
|
* @returns {NumberSchema}
|
||||||
*/
|
*/
|
||||||
const addMaxIntegerValidator = (validator, { attr }) =>
|
const addMaxIntegerValidator = (validator, { attr }) =>
|
||||||
_.isNumber(attr.max) ? validator.max(_.toInteger(attr.max)) : validator;
|
_.isNumber(attr.max) ? validator.max(_.toInteger(attr.max)) : validator;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Adds min float/decimal validator
|
* Adds min float/decimal validator
|
||||||
* @param {import('yup').NumberSchema} validator yup validator
|
* @param {NumberSchema} validator yup validator
|
||||||
* @param {Object} metas
|
* @param {Object} metas
|
||||||
* @param {{ min: Number }} metas.attr model attribute
|
* @param {{ min: Number }} metas.attr model attribute
|
||||||
*
|
*
|
||||||
* @returns {{import('yup').NumberSchema}}
|
* @returns {NumberSchema}
|
||||||
*/
|
*/
|
||||||
const addMinFloatValidator = (validator, { attr }) =>
|
const addMinFloatValidator = (validator, { attr }) =>
|
||||||
_.isNumber(attr.min) ? validator.min(attr.min) : validator;
|
_.isNumber(attr.min) ? validator.min(attr.min) : validator;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Adds max float/decimal validator
|
* Adds max float/decimal validator
|
||||||
* @param {import('yup').NumberSchema} validator yup validator
|
* @param {NumberSchema} validator yup validator
|
||||||
* @param {Object} metas model attribute
|
* @param {Object} metas model attribute
|
||||||
* @param {{ max: Number }} metas.attr
|
* @param {{ max: Number }} metas.attr
|
||||||
*
|
*
|
||||||
* @returns {{import('yup').NumberSchema}}
|
* @returns {NumberSchema}
|
||||||
*/
|
*/
|
||||||
const addMaxFloatValidator = (validator, { attr }) =>
|
const addMaxFloatValidator = (validator, { attr }) =>
|
||||||
_.isNumber(attr.max) ? validator.max(attr.max) : validator;
|
_.isNumber(attr.max) ? validator.max(attr.max) : validator;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Adds regex validator
|
* Adds regex validator
|
||||||
* @param {import('yup').StringSchema} validator yup validator
|
* @param {StringSchema} validator yup validator
|
||||||
* @param {Object} metas model attribute
|
* @param {Object} metas model attribute
|
||||||
* @param {{ regex: RegExp }} metas.attr
|
* @param {{ regex: RegExp }} metas.attr
|
||||||
*
|
*
|
||||||
* @returns {{import('yup').StringSchema}}
|
* @returns {StringSchema}
|
||||||
*/
|
*/
|
||||||
const addStringRegexValidator = (validator, { attr }) =>
|
const addStringRegexValidator = (validator, { attr }) =>
|
||||||
_.isUndefined(attr.regex) ? validator : validator.matches(new RegExp(attr.regex));
|
_.isUndefined(attr.regex) ? validator : validator.matches(new RegExp(attr.regex));
|
||||||
|
|
||||||
/**
|
/**
|
||||||
*
|
*
|
||||||
* @param {import('yup').AnySchema} validator
|
* @param {AnySchema} validator
|
||||||
* @param {Object} metas
|
* @param {Object} metas
|
||||||
* @param {{ unique: Boolean, type: String }} metas.attr
|
* @param {{ unique: Boolean, type: String }} metas.attr
|
||||||
* @param {{ uid: String }} metas.model
|
* @param {{ uid: String }} metas.model
|
||||||
* @param {{ name: String, value: any }} metas.updatedAttribute
|
* @param {{ name: String, value: any }} metas.updatedAttribute
|
||||||
* @param {Object} metas.entity
|
* @param {Object} metas.entity
|
||||||
*
|
*
|
||||||
* @returns {{import('yup').StringSchema}}
|
* @returns {AnySchema}
|
||||||
*/
|
*/
|
||||||
const addUniqueValidator = (validator, { attr, model, updatedAttribute, entity }) => {
|
const addUniqueValidator = (validator, { attr, model, updatedAttribute, entity }) => {
|
||||||
if (!attr.unique && attr.type !== 'uid') {
|
if (!attr.unique && attr.type !== 'uid') {
|
||||||
|
Loading…
x
Reference in New Issue
Block a user