New Research: Supply Chain Attack on Axios Pulls Malicious Dependency from npm.Details
Socket
Book a DemoSign in
Socket

input-data-validator

Package Overview
Dependencies
Maintainers
1
Versions
16
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

input-data-validator - npm Package Compare versions

Comparing version
1.0.9
to
1.1.0
+26
-13
lib/class/Validator.js

@@ -50,16 +50,29 @@ /** @ignore */ const handlebars = require('handlebars')

function _parseValue (field, value) {
if (field.type.key === 'STRING') { return Sequelize.Validator.toString(value) }
if (field.type.key === 'INTEGER') { return Sequelize.Validator.toInt(value) }
if (field.type.key === 'FLOAT') { return Sequelize.Validator.toFloat(value) }
if (field.type.key === 'BOOLEAN') { return Sequelize.Validator.toBoolean(value) }
if (field.type.key === 'DATE') { return Sequelize.Validator.toDate(value) }
if (field.type.key === 'STRING') { return Sequelize.Validator.toString(value + '') }
if (field.type.key === 'TEXT') { return Sequelize.Validator.toString(value + '') }
if (field.type.key === 'INTEGER') { return Sequelize.Validator.toInt(value + '') }
if (field.type.key === 'FLOAT') { return Sequelize.Validator.toFloat(value + '') }
if (field.type.key === 'BOOLEAN') { return Sequelize.Validator.toBoolean(value + '') }
if (field.type.key === 'DATE') { return Sequelize.Validator.toDate(value + '') }
if (field.type.key === 'DATEONLY') { return Sequelize.Validator.toString(value + '') }
if (field.type.key === 'TIME') { return Sequelize.Validator.toString(value + '') }
if (field.type.key === 'JSON') { return JSON.parse(value) }
if (field.type.key === 'JSONB') { return JSON.parse(value) }
if (field.type.key === 'UUID') { return Sequelize.Validator.toString(value + '') }
if (field.type.key === 'ARRAY') {
const values = []
if (field.type.type.key === 'STRING') for (let i in value) { values.push(Sequelize.Validator.toString(value[i])) }
if (field.type.type.key === 'INTEGER') for (let i in value) { values.push(Sequelize.Validator.toInt(value[i])) }
if (field.type.type.key === 'FLOAT') for (let i in value) { values.push(Sequelize.Validator.toFloat(value[i])) }
if (field.type.type.key === 'BOOLEAN') for (let i in value) { values.push(Sequelize.Validator.toBoolean(value[i])) }
if (field.type.type.key === 'DATE') for (let i in value) { values.push(Sequelize.Validator.toDate(value[i])) }
if (field.type.type.key === 'STRING') for (let i in value) { values.push(Sequelize.Validator.toString(value[i] + '')) }
if (field.type.type.key === 'TEXT') for (let i in value) { values.push(Sequelize.Validator.toString(value[i] + '')) }
if (field.type.type.key === 'INTEGER') for (let i in value) { values.push(Sequelize.Validator.toInt(value[i]) + '') }
if (field.type.type.key === 'FLOAT') for (let i in value) { values.push(Sequelize.Validator.toFloat(value[i] + '')) }
if (field.type.type.key === 'BOOLEAN') for (let i in value) { values.push(Sequelize.Validator.toBoolean(value[i] + '')) }
if (field.type.type.key === 'DATE') for (let i in value) { values.push(Sequelize.Validator.toDate(value[i] + '')) }
if (field.type.type.key === 'DATEONLY') for (let i in value) { values.push(Sequelize.Validator.toString(value[i] + '')) }
if (field.type.type.key === 'TIME') for (let i in value) { values.push(Sequelize.Validator.toString(value[i] + '')) }
if (field.type.type.key === 'JSON') for (let i in value) { values.push(JSON.parse(value[i])) }
if (field.type.type.key === 'JSONB') for (let i in value) { values.push(JSON.parse(value[i])) }
if (field.type.type.key === 'UUID') for (let i in value) { values.push(Sequelize.Validator.toString(value[i] + '')) }
return values
}
return value
}

@@ -82,5 +95,5 @@

try {
const dataToValidate = {}
if (typeof value !== 'undefined') { dataToValidate[fieldName] = value }
await field.validator.build(dataToValidate).validate()
const MODEL = field.validator.build()
MODEL.dataValues[fieldName] = value
await MODEL.validate({ fields: [fieldName] })
value = (typeof value !== 'undefined') ? _parseValue(field, value) : undefined

@@ -87,0 +100,0 @@ } catch (err) {

{
"name": "input-data-validator",
"version": "1.0.9",
"version": "1.1.0",
"description": "Valida los datos de entrada de una ruta de un servicio web creado con express.",

@@ -5,0 +5,0 @@ "main": "index.js",