redux-form-validations
Advanced tools
'use strict'; | ||
Object.defineProperty(exports, "__esModule", { | ||
value: true | ||
value: !0 | ||
}); | ||
var _keys = require('babel-runtime/core-js/object/keys'); | ||
var _keys = require('babel-runtime/core-js/object/keys'), | ||
_keys2 = _interopRequireDefault(_keys), | ||
_isArray = require('lodash/isArray'), | ||
_isArray2 = _interopRequireDefault(_isArray), | ||
_pickBy = require('lodash/pickBy'), | ||
_pickBy2 = _interopRequireDefault(_pickBy), | ||
_get = require('lodash/get'), | ||
_get2 = _interopRequireDefault(_get), | ||
_startCase = require('lodash/startCase'), | ||
_startCase2 = _interopRequireDefault(_startCase), | ||
_forEach = require('lodash/forEach'), | ||
_forEach2 = _interopRequireDefault(_forEach), | ||
_isPresent = require('./validators/isPresent'), | ||
_isPresent2 = _interopRequireDefault(_isPresent); | ||
var _keys2 = _interopRequireDefault(_keys); | ||
function _interopRequireDefault(a) { return a && a.__esModule ? a : { default: a }; } | ||
var _lodash = require('lodash'); | ||
var labelFor = function labelFor(a, b) { | ||
return a[b].label || (0, _startCase2.default)(b); | ||
}, | ||
errorMessageFor = function errorMessageFor(_ref) { | ||
var a = _ref.schema, | ||
b = _ref.fieldName, | ||
c = _ref.errors, | ||
d = _ref.rule, | ||
e = _ref.values; | ||
var _isPresent = require('./validators/isPresent'); | ||
var _isPresent2 = _interopRequireDefault(_isPresent); | ||
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } | ||
var labelFor = function labelFor(schema, fieldName) { | ||
return schema[fieldName].label || (0, _lodash.startCase)(fieldName); | ||
}; | ||
var errorMessageFor = function errorMessageFor(_ref) { | ||
var schema = _ref.schema, | ||
fieldName = _ref.fieldName, | ||
errors = _ref.errors, | ||
rule = _ref.rule, | ||
values = _ref.values; | ||
if ((0, _lodash.get)(rule, 'errorMessage') && !errors[fieldName]) { | ||
if (typeof rule.errorMessage === 'function') { | ||
return rule.errorMessage(values, values[fieldName]); | ||
if ((0, _get2.default)(d, 'errorMessage') && !c[b]) { | ||
if (typeof d.errorMessage === 'function') { | ||
return d.errorMessage(e, e[b]); | ||
} | ||
return rule.errorMessage; | ||
return d.errorMessage; | ||
} | ||
return labelFor(schema, fieldName) + ' is not valid'; | ||
}; | ||
return labelFor(a, b) + ' is not valid'; | ||
}, | ||
isRequiredAndNotPresent = function isRequiredAndNotPresent(_ref2) { | ||
var a = _ref2.values, | ||
b = _ref2.field, | ||
c = _ref2.rule; | ||
return c.required && !_isPresent2.default.validator(a, a[b]); | ||
}, | ||
isValid = function isValid(_ref3) { | ||
var a = _ref3.values, | ||
b = _ref3.field, | ||
c = _ref3.rule, | ||
d = c.validateIf; | ||
var isRequiredAndNotPresent = function isRequiredAndNotPresent(_ref2) { | ||
var values = _ref2.values, | ||
field = _ref2.field, | ||
rule = _ref2.rule; | ||
return rule.required && !_isPresent2.default.validator(values, values[field]); | ||
}; | ||
var isValid = function isValid(_ref3) { | ||
var values = _ref3.values, | ||
field = _ref3.field, | ||
rule = _ref3.rule; | ||
if (!d || d(a, a[b])) { | ||
return c.validator(a, a[b]); | ||
} | ||
return !0; | ||
}, | ||
buildValidators = function buildValidators(a, b) { | ||
return function (c) { | ||
var d = {}, | ||
e = (0, _keys2.default)((0, _pickBy2.default)(a, function (f) { | ||
return (0, _get2.default)(f, b); | ||
})); | ||
var validateCondition = rule.validateIf; | ||
if (!validateCondition || validateCondition(values, values[field])) { | ||
return rule.validator(values, values[field]); | ||
} | ||
return true; | ||
}; | ||
(0, _forEach2.default)(e, function (f) { | ||
if (!(0, _isArray2.default)(a[f][b])) { | ||
var g = a[f][b], | ||
h = isRequiredAndNotPresent({ values: c, field: f, rule: g }), | ||
i = isValid({ values: c, field: f, rule: g }); | ||
var buildValidators = function buildValidators(schema, type) { | ||
return function (values) { | ||
var errors = {}; | ||
var validatedFields = (0, _keys2.default)((0, _lodash.pickBy)(schema, function (obj) { | ||
return (0, _lodash.get)(obj, type); | ||
})); | ||
(0, _lodash.forEach)(validatedFields, function (field) { | ||
if (!(0, _lodash.isArray)(schema[field][type])) { | ||
var rule = schema[field][type]; | ||
var requiredAndNotPresent = isRequiredAndNotPresent({ values: values, field: field, rule: rule }); | ||
var valid = isValid({ values: values, field: field, rule: rule }); | ||
if (requiredAndNotPresent) { | ||
errors[field] = 'Required'; | ||
} else if (!valid) { | ||
errors[field] = errorMessageFor({ schema: schema, fieldName: field, errors: errors, rule: rule, values: values }); | ||
if (h) { | ||
d[f] = 'Required'; | ||
} else if (!i) { | ||
d[f] = errorMessageFor({ schema: a, fieldName: f, errors: d, rule: g, values: c }); | ||
} | ||
} else { | ||
var rules = schema[field][type]; | ||
var j = a[f][b]; | ||
(0, _lodash.forEach)(rules, function (rule) { | ||
var requiredAndNotPresent = isRequiredAndNotPresent({ values: values, field: field, rule: rule }); | ||
var valid = isValid({ values: values, field: field, rule: rule }); | ||
(0, _forEach2.default)(j, function (k) { | ||
var l = isRequiredAndNotPresent({ values: c, field: f, rule: k }), | ||
m = isValid({ values: c, field: f, rule: k }); | ||
if (requiredAndNotPresent) { | ||
errors[field] = 'Required'; | ||
} else if (!valid) { | ||
errors[field] = errorMessageFor({ schema: schema, fieldName: field, errors: errors, rule: rule, values: values }); | ||
if (l) { | ||
d[f] = 'Required'; | ||
} else if (!m) { | ||
d[f] = errorMessageFor({ schema: a, fieldName: f, errors: d, rule: k, values: c }); | ||
} | ||
@@ -93,10 +97,10 @@ }); | ||
if (schema._fieldArrays) { | ||
(0, _lodash.forEach)(schema._fieldArrays, function (validations, field) { | ||
if (a._fieldArrays) { | ||
(0, _forEach2.default)(a._fieldArrays, function (f, g) { | ||
/* eslint-disable no-use-before-define */ | ||
var nestedErrors = validateNested({ validations: validations, type: type, nestedItems: values[field] }); | ||
var h = validateNested({ validations: f, type: b, nestedItems: c[g] }); | ||
/* eslint-disable */ | ||
if (nestedErrors.length) { | ||
errors[field] = nestedErrors; | ||
if (h.length) { | ||
d[g] = h; | ||
} | ||
@@ -106,29 +110,28 @@ }); | ||
return errors; | ||
return d; | ||
}; | ||
}; | ||
}, | ||
buildValidations = function buildValidations(a) { | ||
var b = buildValidators(a, 'validate'), | ||
c = buildValidators(a, 'warn'); | ||
var buildValidations = function buildValidations(schema) { | ||
var validate = buildValidators(schema, 'validate'); | ||
var warn = buildValidators(schema, 'warn'); | ||
return { validate: validate, warn: warn }; | ||
}; | ||
return { validate: b, warn: c }; | ||
}, | ||
validateNested = function validateNested(_ref4) { | ||
var a = _ref4.validations, | ||
b = _ref4.nestedItems, | ||
c = _ref4.type, | ||
d = [], | ||
e = buildValidations(a); | ||
var validateNested = function validateNested(_ref4) { | ||
var validations = _ref4.validations, | ||
nestedItems = _ref4.nestedItems, | ||
type = _ref4.type; | ||
var nestedErrors = []; | ||
var schema = buildValidations(validations); | ||
(0, _lodash.forEach)(nestedItems, function (item, index) { | ||
var itemErrors = schema[type](item); | ||
nestedErrors[index] = itemErrors; | ||
(0, _forEach2.default)(b, function (f, g) { | ||
var h = e[c](f); | ||
d[g] = h; | ||
}); | ||
return nestedErrors; | ||
return d; | ||
}; | ||
exports.default = buildValidations; |
'use strict'; | ||
Object.defineProperty(exports, "__esModule", { | ||
value: true | ||
value: !0 | ||
}); | ||
exports.isEmpty = undefined; | ||
exports.isEmpty = void 0; | ||
var _lodash = require('lodash'); | ||
var _isNil = require('lodash/isNil'), | ||
_isNil2 = _interopRequireDefault(_isNil); | ||
var isEmpty = exports.isEmpty = function isEmpty(value) { | ||
return (0, _lodash.isNil)(value) || value === ''; | ||
function _interopRequireDefault(b) { return b && b.__esModule ? b : { default: b }; } | ||
var isEmpty = exports.isEmpty = function isEmpty(a) { | ||
return (0, _isNil2.default)(a) || a === ''; | ||
}; |
'use strict'; | ||
Object.defineProperty(exports, "__esModule", { | ||
value: true | ||
value: !0 | ||
}); | ||
exports.isZipCode = exports.isPresent = exports.isEmail = exports.isDateAfter = exports.isDateInPast = exports.isBetween = exports.buildValidations = undefined; | ||
exports.isZipCode = exports.isPresent = exports.isEmail = exports.isDateAfter = exports.isDateInPast = exports.isBetween = exports.buildValidations = void 0; | ||
var _buildValidations2 = require('./buildValidations'); | ||
var _buildValidations2 = require('./buildValidations'), | ||
_buildValidations3 = _interopRequireDefault(_buildValidations2), | ||
_isBetween2 = require('./validators/isBetween'), | ||
_isBetween3 = _interopRequireDefault(_isBetween2), | ||
_isDateInPast2 = require('./validators/isDateInPast'), | ||
_isDateInPast3 = _interopRequireDefault(_isDateInPast2), | ||
_isDateAfter2 = require('./validators/isDateAfter'), | ||
_isDateAfter3 = _interopRequireDefault(_isDateAfter2), | ||
_isEmail2 = require('./validators/isEmail'), | ||
_isEmail3 = _interopRequireDefault(_isEmail2), | ||
_isPresent2 = require('./validators/isPresent'), | ||
_isPresent3 = _interopRequireDefault(_isPresent2), | ||
_isZipCode2 = require('./validators/isZipCode'), | ||
_isZipCode3 = _interopRequireDefault(_isZipCode2); | ||
var _buildValidations3 = _interopRequireDefault(_buildValidations2); | ||
function _interopRequireDefault(a) { return a && a.__esModule ? a : { default: a }; } | ||
var _isBetween2 = require('./validators/isBetween'); | ||
var _isBetween3 = _interopRequireDefault(_isBetween2); | ||
var _isDateInPast2 = require('./validators/isDateInPast'); | ||
var _isDateInPast3 = _interopRequireDefault(_isDateInPast2); | ||
var _isDateAfter2 = require('./validators/isDateAfter'); | ||
var _isDateAfter3 = _interopRequireDefault(_isDateAfter2); | ||
var _isEmail2 = require('./validators/isEmail'); | ||
var _isEmail3 = _interopRequireDefault(_isEmail2); | ||
var _isPresent2 = require('./validators/isPresent'); | ||
var _isPresent3 = _interopRequireDefault(_isPresent2); | ||
var _isZipCode2 = require('./validators/isZipCode'); | ||
var _isZipCode3 = _interopRequireDefault(_isZipCode2); | ||
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } | ||
exports.buildValidations = _buildValidations3.default; | ||
@@ -39,0 +26,0 @@ exports.isBetween = _isBetween3.default; |
'use strict'; | ||
Object.defineProperty(exports, "__esModule", { | ||
value: true | ||
value: !0 | ||
}); | ||
var _lodash = require('lodash'); | ||
var _isFinite = require('lodash/isFinite'), | ||
_isFinite2 = _interopRequireDefault(_isFinite), | ||
_isNil = require('lodash/isNil'), | ||
_isNil2 = _interopRequireDefault(_isNil), | ||
_invariant = require('invariant'), | ||
_invariant2 = _interopRequireDefault(_invariant); | ||
var _invariant = require('invariant'); | ||
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; } | ||
var _invariant2 = _interopRequireDefault(_invariant); | ||
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } | ||
exports.default = function (min, max) { | ||
(0, _invariant2.default)((0, _lodash.isFinite)(min) && (0, _lodash.isFinite)(max), 'The min and max values must be finite numbers'); | ||
exports.default = function (a, b) { | ||
(0, _invariant2.default)((0, _isFinite2.default)(a) && (0, _isFinite2.default)(b), 'The min and max values must be finite numbers'); | ||
return { | ||
errorMessage: 'Must be between ' + min + ' and ' + max, | ||
validator: function validator(_allValues, value) { | ||
(0, _invariant2.default)((0, _lodash.isFinite)(value) || (0, _lodash.isNil)(value), 'Field value must be a finite number or nil'); | ||
errorMessage: 'Must be between ' + a + ' and ' + b, | ||
validator: function validator(c, d) { | ||
(0, _invariant2.default)((0, _isFinite2.default)(d) || (0, _isNil2.default)(d), 'Field value must be a finite number or nil'); | ||
return !value || value >= min && value <= max; | ||
return !d || d >= a && d <= b; | ||
} | ||
}; | ||
}; |
'use strict'; | ||
Object.defineProperty(exports, "__esModule", { | ||
value: true | ||
value: !0 | ||
}); | ||
var _lodash = require('lodash'); | ||
var _isNil = require('lodash/isNil'), | ||
_isNil2 = _interopRequireDefault(_isNil), | ||
_format = require('date-fns/format'), | ||
_format2 = _interopRequireDefault(_format), | ||
_is_after = require('date-fns/is_after'), | ||
_is_after2 = _interopRequireDefault(_is_after); | ||
var _moment = require('moment'); | ||
function _interopRequireDefault(d) { return d && d.__esModule ? d : { default: d }; } | ||
var _moment2 = _interopRequireDefault(_moment); | ||
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } | ||
exports.default = function (date) { | ||
exports.default = function (a) { | ||
return { | ||
errorMessage: 'Must be after ' + (0, _moment2.default)(date).format('MMMM Do YYYY'), | ||
validator: function validator(allValues, value) { | ||
var validAfterDate = (0, _moment2.default)(date).format('YYYY-MM-DD'); | ||
return (0, _lodash.isNil)(value) || (0, _moment2.default)(value).isAfter(validAfterDate); | ||
errorMessage: 'Must be after ' + (0, _format2.default)(a, 'MMMM Do YYYY'), | ||
validator: function validator(b, c) { | ||
return (0, _isNil2.default)(c) || (0, _is_after2.default)(c, a); | ||
} | ||
}; | ||
}; |
'use strict'; | ||
Object.defineProperty(exports, "__esModule", { | ||
value: true | ||
value: !0 | ||
}); | ||
var _lodash = require('lodash'); | ||
var _isNil = require('lodash/isNil'), | ||
_isNil2 = _interopRequireDefault(_isNil), | ||
_is_past = require('date-fns/is_past'), | ||
_is_past2 = _interopRequireDefault(_is_past); | ||
var _moment = require('moment'); | ||
function _interopRequireDefault(a) { return a && a.__esModule ? a : { default: a }; } | ||
var _moment2 = _interopRequireDefault(_moment); | ||
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } | ||
exports.default = { | ||
errorMessage: 'Must be a date in the past', | ||
validator: function validator(allValues, value) { | ||
var today = (0, _moment2.default)().format('YYYY-MM-DD'); | ||
return (0, _lodash.isNil)(value) || (0, _moment2.default)(value).isBefore(today); | ||
validator: function validator(a, b) { | ||
return (0, _isNil2.default)(b) || (0, _is_past2.default)(b); | ||
} | ||
}; |
'use strict'; | ||
Object.defineProperty(exports, "__esModule", { | ||
value: true | ||
value: !0 | ||
}); | ||
var _typeof2 = require('babel-runtime/helpers/typeof'); | ||
var _typeof2 = require('babel-runtime/helpers/typeof'), | ||
_typeof3 = _interopRequireDefault(_typeof2), | ||
_invariant = require('invariant'), | ||
_invariant2 = _interopRequireDefault(_invariant), | ||
_isNil = require('lodash/isNil'), | ||
_isNil2 = _interopRequireDefault(_isNil), | ||
_helpers = require('../helpers'); | ||
var _typeof3 = _interopRequireDefault(_typeof2); | ||
function _interopRequireDefault(a) { return a && a.__esModule ? a : { default: a }; } | ||
var _invariant = require('invariant'); | ||
var _invariant2 = _interopRequireDefault(_invariant); | ||
var _lodash = require('lodash'); | ||
var _helpers = require('../helpers'); | ||
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } | ||
/* eslint-disable max-len */ | ||
@@ -28,6 +24,6 @@ /* eslint-disable no-useless-escape */ | ||
errorMessage: 'Must be a valid email', | ||
validator: function validator(_allValues, value) { | ||
(0, _invariant2.default)(typeof value === 'string' || (0, _lodash.isNil)(value), 'Argument must be a string or nil value, received ' + value + ', a ' + (typeof value === 'undefined' ? 'undefined' : (0, _typeof3.default)(value))); | ||
return (0, _helpers.isEmpty)(value) ? true : EMAIL_REGEX.test(value.trim()); | ||
validator: function validator(a, b) { | ||
(0, _invariant2.default)(typeof b === 'string' || (0, _isNil2.default)(b), 'Argument must be a string or nil value, received ' + b + ', a ' + (typeof b === 'undefined' ? 'undefined' : (0, _typeof3.default)(b))); | ||
return (0, _helpers.isEmpty)(b) ? !0 : EMAIL_REGEX.test(b.trim()); | ||
} | ||
}; |
'use strict'; | ||
Object.defineProperty(exports, "__esModule", { | ||
value: true | ||
value: !0 | ||
}); | ||
@@ -11,5 +11,5 @@ | ||
errorMessage: 'Required', | ||
validator: function validator(allValues, value) { | ||
return !(0, _helpers.isEmpty)(value); | ||
validator: function validator(a, b) { | ||
return !(0, _helpers.isEmpty)(b); | ||
} | ||
}; |
'use strict'; | ||
Object.defineProperty(exports, "__esModule", { | ||
value: true | ||
value: !0 | ||
}); | ||
var _typeof2 = require('babel-runtime/helpers/typeof'); | ||
var _typeof2 = require('babel-runtime/helpers/typeof'), | ||
_typeof3 = _interopRequireDefault(_typeof2), | ||
_isString = require('lodash/isString'), | ||
_isString2 = _interopRequireDefault(_isString), | ||
_isNil = require('lodash/isNil'), | ||
_isNil2 = _interopRequireDefault(_isNil), | ||
_invariant = require('invariant'), | ||
_invariant2 = _interopRequireDefault(_invariant); | ||
var _typeof3 = _interopRequireDefault(_typeof2); | ||
function _interopRequireDefault(a) { return a && a.__esModule ? a : { default: a }; } | ||
var _lodash = require('lodash'); | ||
var _invariant = require('invariant'); | ||
var _invariant2 = _interopRequireDefault(_invariant); | ||
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } | ||
exports.default = { | ||
validator: function validator(_allValues, value) { | ||
(0, _invariant2.default)((0, _lodash.isString)(value) || (0, _lodash.isNil)(value), 'Zip code must be a string, was passed ' + value + ', a ' + (typeof value === 'undefined' ? 'undefined' : (0, _typeof3.default)(value))); | ||
return !value || /^\d{5}$/.test(value.trim()); | ||
validator: function validator(a, b) { | ||
(0, _invariant2.default)((0, _isString2.default)(b) || (0, _isNil2.default)(b), 'Zip code must be a string, was passed ' + b + ', a ' + (typeof b === 'undefined' ? 'undefined' : (0, _typeof3.default)(b))); | ||
return !b || /^\d{5}$/.test(b.trim()); | ||
}, | ||
errorMessage: 'Must be a valid zip code' | ||
}; |
{ | ||
"name": "redux-form-validations", | ||
"version": "0.0.8", | ||
"version": "0.0.9", | ||
"description": "Validation utilities for redux-form v6", | ||
@@ -13,5 +13,5 @@ "author": "PolicyGenius", | ||
"dependencies": { | ||
"date-fns": "^1.28.5", | ||
"invariant": "^2.2.2", | ||
"lodash": "^4.17.4", | ||
"moment": "^2.18.1" | ||
"lodash": "^4.17.4" | ||
}, | ||
@@ -25,2 +25,3 @@ "devDependencies": { | ||
"babel-preset-es2015": "^6.24.1", | ||
"babel-preset-minify-es2015": "^0.0.3", | ||
"babel-preset-stage-0": "^6.24.1", | ||
@@ -27,0 +28,0 @@ "enzyme": "^2.8.2", |
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Major refactor
Supply chain riskPackage has recently undergone a major refactor. It may be unstable or indicate significant internal changes. Use caution when updating to versions that include significant changes.
Found 1 instance in 1 package
180813
1.05%260
8.33%24
4.35%1
Infinity%