fit-input
Version:
输入框
113 lines (112 loc) • 3.62 kB
JSX
/**
* 为 validate 拓展功能
*/
"use strict";
const validator = require('validator');
const extendValidator = {
contains: validator.contains,
equals: validator.equals,
isAfter: validator.isAfter,
isAlpha: validator.isAlpha,
isAlphanumeric: validator.isAlphanumeric,
isAscii: validator.isAscii,
isBase64: validator.isBase64,
isBefore: validator.isBefore,
isBoolean: validator.isBoolean,
isByteLength: validator.isByteLength,
isCreditCard: validator.isCreditCard,
isCurrency: validator.isCurrency,
isDate: validator.isDate,
isDecimal: validator.isDecimal,
isDivisibleBy: validator.isDivisibleBy,
isEmail: validator.isEmail,
isFQDN: validator.isFQDN,
isFloat: validator.isFloat,
isFullWidth: validator.isFullWidth,
isHalfWidth: validator.isHalfWidth,
isHexColor: validator.isHexColor,
isHexadecimal: validator.isHexadecimal,
isIP: validator.isIP,
isISBN: validator.isISBN,
isISIN: validator.isISIN,
isISO8601: validator.isISO8601,
isIn: validator.isIn,
isInt: validator.isInt,
isJSON: validator.isJSON,
isLength: validator.isLength,
isLowercase: validator.isLowercase,
isMACAddress: validator.isMACAddress,
isMobilePhone: validator.isMobilePhone,
isMongoId: validator.isMongoId,
isMultibyte: validator.isMultibyte,
isNull: validator.isNull,
isNumeric: validator.isNumeric,
isSurrogatePair: validator.isSurrogatePair,
isURL: validator.isURL,
isUUID: validator.isUUID,
isUppercase: validator.isUppercase,
isVariableWidth: validator.isVariableWidth,
isWhitelisted: validator.isWhitelisted,
matches: validator.matches,
blacklist: validator.blacklist,
escape: validator.escape,
ltrim: validator.ltrim,
normalizeEmail: validator.normalizeEmail,
rtrim: validator.rtrim,
stripLow: validator.stripLow,
toBoolean: validator.toBoolean,
toDate: validator.toDate,
toFloat: validator.toFloat,
toInt: validator.toInt,
toString: validator.toString,
trim: validator.trim,
whitelist: validator.whitelist,
extend: validator.extend,
notEmpty: (str) => {
return !str.match(/^[\s\t\r\n]*$/);
},
len: (str, min, max) => {
return extendValidator.isLength(str, min, max);
},
isUrl: (str) => {
return validator.isURL(str);
},
isIPv6: (str) => {
return validator.isIP(str, 6);
},
isIPv4: (str) => {
return validator.isIP(str, 4);
},
notIn: (str, values) => {
return !validator.isIn(str, values);
},
regex: (str, pattern, modifiers) => {
str += '';
if (Object.prototype.toString.call(pattern).slice(8, -1) !== 'RegExp') {
pattern = new RegExp(pattern, modifiers);
}
return !!str.match(pattern);
},
notRegex: (str, pattern, modifiers) => {
return !extendValidator.regex(str, pattern, modifiers);
},
min: (str, val) => {
const number = parseFloat(str);
return isNaN(number) || number >= val;
},
max: (str, val) => {
const number = parseFloat(str);
return isNaN(number) || number <= val;
},
not: (str, pattern, modifiers) => {
return extendValidator.notRegex(str, pattern, modifiers);
},
notContains: (str, elem) => {
return !validator.contains(str, elem);
},
is: (str, pattern, modifiers) => {
return extendValidator.regex(str, pattern, modifiers);
}
};
Object.defineProperty(exports, "__esModule", { value: true });
exports.default = extendValidator;