New Case Study:See how Anthropic automated 95% of dependency reviews with Socket.Learn More
Socket
Sign inDemoInstall
Socket

form

Package Overview
Dependencies
Maintainers
1
Versions
9
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

form - npm Package Compare versions

Comparing version 0.1.2 to 0.2.0

146

lib/form.js

@@ -1,25 +0,23 @@

var
async = require('async'),
validator = require('validator'),
path = require('path'),
util = require('util');
(function () {
'use strict';
var
check = validator.check,
sanitize = validator.sanitize;
var
async = require('async'),
validator = require('validator'),
check = validator.check,
sanitize = validator.sanitize,
Form = function (fields) {
this.fields = fields;
};
module.exports.Validator = new validator.Validator();
module.exports.Filter = new validator.Filter();
module.exports.Validator = new validator.Validator();
module.exports.Filter = new validator.Filter();
var Form = function(fields) {
this.fields = fields;
};
Form.prototype.addTask = function(tasks, data, field, handlers) {
tasks.push(
function(callback) {
Form.prototype.addTask = function (tasks, data, field, handlers) {
tasks[field] = function (callback) {
async.concatSeries(
handlers,
function(task, callback) {
task(data, field, function(result) {
function (task, callback) {
task(data, field, function (result) {
if (result !== undefined) {

@@ -32,64 +30,76 @@ callback(result, undefined);

},
function(error, results) {
function (error, results) {
if (error !== undefined) {
callback(undefined, [ error ]);
callback(undefined, error);
} else {
callback(undefined, results);
callback(undefined, undefined);
}
}
);
};
};
Form.prototype.process = function (request, callback) {
var
data = {},
tasks = {},
field;
for (field in this.fields) {
data[field] = request[field];
this.addTask(tasks, data, field, this.fields[field]);
}
);
};
async.parallel(tasks, function (error, results) {
var
hasErrors = false,
field;
Form.prototype.process = function(request, callback) {
var data = {};
var tasks = [];
for (var field in this.fields) {
data[field] = request[field];
this.addTask(tasks, data, field, this.fields[field]);
}
async.parallel(tasks, function(error, results) {
var errors = [];
results.forEach(function(result) {
errors = errors.concat(result);
for (field in results) {
if (results[field] === null) {
delete (results[field]);
} else {
hasErrors = true;
}
}
if (hasErrors) {
callback(results, undefined);
} else {
callback(undefined, data);
}
});
if (errors.length > 0) {
callback(errors, undefined);
} else {
callback(undefined, data);
}
});
};
module.exports.filter = function(filter) {
var args = Array.prototype.slice.call(arguments, 1);
return function(fields, field, callback) {
var container = sanitize((fields[field] !== undefined) ? fields[field] : '');
container.fields = fields;
container.field = field;
fields[field] = filter.apply(container, args);
callback();
};
};
module.exports.validator = function(validator, message) {
var args = Array.prototype.slice.call(arguments, 2);
return function(fields, field, callback) {
var container = check((fields[field] !== undefined) ? fields[field] : '', message);
container.fields = fields;
container.field = field;
try {
validator.apply(container, args);
module.exports.filter = function (filter) {
var args = Array.prototype.slice.call(arguments, 1);
return function (fields, field, callback) {
var container = sanitize((fields[field] !== undefined) ? fields[field] : '');
container.fields = fields;
container.field = field;
fields[field] = filter.apply(container, args);
callback();
} catch(e) {
var error = {};
error[field] = e.message;
callback(error);
}
};
};
};
module.exports.create = function(fields) {
return new Form(fields);
};
module.exports.validator = function (validator) {
var
args = Array.prototype.slice.call(arguments, 1, arguments.length - 1),
message = arguments[arguments.length - 1];
return function (fields, field, callback) {
var container = check((fields[field] !== undefined) ? fields[field] : '', message);
container.fields = fields;
container.field = field;
try {
validator.apply(container, args);
callback();
} catch (e) {
callback(e.message);
}
};
};
module.exports.create = function (fields) {
return new Form(fields);
};
}());
{
"name" : "form",
"version" : "0.1.2",
"version" : "0.2.0",
"description" : "Form processor for filter and validation form data",

@@ -10,6 +10,6 @@ "keywords": ["form"],

"dependencies": {
"validator": ">= 0.2.8",
"async": ">= 0.1.15"
"validator": ">= 0.4.9",
"async": ">= 0.1.22"
},
"engines" : { "node": ">= 0.2.0" }
"engines" : { "node": ">= 0.2.2" }
}
SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc