simple-body-validator
Version:
This package is inspired by Laravel validation, and aims to make body validation easier for Javascript developers
25 lines (24 loc) • 1.01 kB
JavaScript
import { builValidationdMethodName } from '../utils/build';
import validateAttributes from '../validators/validateAttributes';
import replaceAttributes from '../validators/replaceAttributes';
import { addImplicitRule } from '../utils/general';
export function register(rule, validate, replaceMessage) {
const method = builValidationdMethodName(rule);
let validateAttribute = new validateAttributes();
if (validateAttribute[`validate${method}`]) {
return false;
}
validateAttributes.prototype[`validate${method}`] = validate;
if (typeof replaceMessage === 'function') {
replaceAttributes[`replace${method}`] =
({ message, parameters, data, getDisplayableAttribute }) => replaceMessage(message, parameters, data, getDisplayableAttribute);
}
return true;
}
;
export function registerImplicit(rule, validate, replaceMessage) {
if (register(rule, validate, replaceMessage) === true) {
addImplicitRule(rule);
}
}
;