UNPKG

cheetah-framework

Version:

Cheetah Framework JS used in all our applications

30 lines (26 loc) 1.06 kB
export default function (component, value, isMultiple = false) { const errorParams = { value } const parsedValue = +value if (component.selectedField.type === 'integer') { if (!_.isInteger(parsedValue)) { component.addError('value', component.getValidationErrorMessage(isMultiple ? 'contains_invalid_integer' : 'invalid_integer', errorParams)) return false } } else { if (!_.isNumber(parsedValue) || _.isNaN(parsedValue)) { component.addError('value', component.getValidationErrorMessage(isMultiple ? 'contains_invalid_number' : 'invalid_number', errorParams)) return false } else if (component.selectedField.type === 'decimal') { const digits = +component.selectedField.typeModifier if ((parsedValue * Math.pow(10, digits)) % 1) { component.addError('value', component.getValidationErrorMessage( isMultiple ? 'contains_too_much_decimals' : 'too_much_decimals', { ...errorParams, digits }, digits )) return false } } } return true }