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

valour

Package Overview
Dependencies
Maintainers
1
Versions
26
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

valour - npm Package Compare versions

Comparing version 0.0.3 to 0.0.4

25

examples/react/package.json

@@ -16,10 +16,2 @@ {

"bootstrap": "^3.3.5",
"bootstrap-webpack": "0.0.5",
"css-loader": "^0.19.0",
"exports-loader": "^0.6.2",
"extract-text-webpack-plugin": "^0.8.2",
"file-loader": "^0.8.4",
"imports-loader": "^0.6.4",
"less": "^2.5.3",
"less-loader": "^2.2.1",
"express": "^4.13.3",

@@ -29,6 +21,3 @@ "jquery": "^2.1.4",

"react-dom": "^0.14.0",
"style-loader": "^0.12.4",
"url-loader": "^0.5.6",
"webpack": "^1.12.2",
"valour": "0.0.1"
"valour": "0.0.3"
},

@@ -40,4 +29,14 @@ "devDependencies": {

"expose-loader": "^0.7.0",
"webpack": "^1.12.2"
"style-loader": "^0.12.4",
"url-loader": "^0.5.6",
"webpack": "^1.12.2",
"bootstrap-webpack": "0.0.5",
"css-loader": "^0.19.0",
"exports-loader": "^0.6.2",
"extract-text-webpack-plugin": "^0.8.2",
"file-loader": "^0.8.4",
"imports-loader": "^0.6.4",
"less": "^2.5.3",
"less-loader": "^2.2.1"
}
}
import React from 'react';
import valour from 'valour';
export default class ValidatedForm extends React.Component{
constructor() {
super();
this.state = {
valid: null
};
}
render() {

@@ -8,5 +16,17 @@ return (

{this.props.children}
<fieldset disabled={!this.state.valid}>
<input type='button' value='Submit' className='btn btn-primary' />
</fieldset>
</form>
);
}
componentDidMount() {
let {name} = this.props;
valour.onUpdated(name, () => {
this.setState({
valid: valour.isValid(name)
});
});
}
}

@@ -29,2 +29,10 @@ 'use strict';

var _lodashLangIsUndefined = require('lodash/lang/isUndefined');
var _lodashLangIsUndefined2 = _interopRequireDefault(_lodashLangIsUndefined);
var _lodashLangIsNull = require('lodash/lang/isNull');
var _lodashLangIsNull2 = _interopRequireDefault(_lodashLangIsNull);
function getDates(beforeIn, afterIn) {

@@ -58,2 +66,10 @@ var before = new Date(beforeIn.toString());

var requiredFunc = function requiredFunc(val) {
return !!val;
};
var isCheckable = function isCheckable(val) {
return !(0, _lodashLangIsUndefined2['default'])(val) && !(0, _lodashLangIsNull2['default'])(val) && val.toString().length;
};
var ValidationUnit = (function () {

@@ -83,7 +99,16 @@ function ValidationUnit() {

_createClass(ValidationUnit, [{
key: 'hasIsRequired',
value: function hasIsRequired() {
return this.rules.some(function (x) {
return (0, _utilFunctionsEqual2['default'])(x.func, requiredFunc);
});
}
}, {
key: 'createCustomPromiseGenerator',
value: function createCustomPromiseGenerator(func) {
var _this = this;
return function (val, allValues, messageList, name) {
return new Promise(function (resolve, reject) {
return func(val, allValues, messageList, name, resolve, reject);
return !_this.hasIsRequired() && !isCheckable(val) || func(val, allValues, messageList, name, resolve, reject);
});

@@ -106,3 +131,3 @@ };

value: function runValidation(value, allValues, name) {
var _this = this;
var _this2 = this;

@@ -115,7 +140,7 @@ this.valid = undefined;

return Promise.all(generators.map(function (gen) {
return gen(value, allValues, _this.messages, name);
return gen(value, allValues, _this2.messages, name);
})).then(function () {
return _this.valid = true;
return _this2.valid = true;
}, function () {
return _this.valid = false;
return _this2.valid = false;
});

@@ -194,5 +219,3 @@ }

return this.setRequirement(function (val) {
return !!val;
}, '{name} is required.', message);
return this.setRequirement(requiredFunc, '{name} is required.', message);
}

@@ -485,9 +508,2 @@ }, {

}, {
key: 'isNull',
value: function isNull() {
var message = arguments.length <= 0 || arguments[0] === undefined ? '{name} must be null.' : arguments[0];
return this.setValidatorRequirement('isNull', message);
}
}, {
key: 'isNumeric',

@@ -494,0 +510,0 @@ value: function isNumeric() {

@@ -122,3 +122,3 @@ 'use strict';

return !Object.keys(result).some(function (key) {
return result[key].valid === false;
return !result[key].valid;
});

@@ -125,0 +125,0 @@ }

{
"name": "valour",
"version": "0.0.3",
"version": "0.0.4",
"description": "Simple javascript validation for any application",

@@ -5,0 +5,0 @@ "main": "lib/valour.js",

import validator from 'validator';
import functionsEqual from './util/functions-equal';
import formatValidationMessage from './util/format-validation-message';
import isUndefined from 'lodash/lang/isUndefined';
import isNull from 'lodash/lang/isNull';

@@ -33,2 +35,6 @@ function getDates(beforeIn, afterIn) {

let requiredFunc = val => !!val;
let isCheckable = val => !isUndefined(val) && !isNull(val) && val.toString().length;
export default class ValidationUnit {

@@ -48,4 +54,8 @@ constructor(...existing) {

hasIsRequired() {
return this.rules.some(x => functionsEqual(x.func, requiredFunc));
}
createCustomPromiseGenerator(func) {
return (val, allValues, messageList, name) => new Promise((resolve, reject) => func(val, allValues, messageList, name, resolve, reject));
return (val, allValues, messageList, name) => new Promise((resolve, reject) => (!this.hasIsRequired() && !isCheckable(val)) || func(val, allValues, messageList, name, resolve, reject));
}

@@ -116,3 +126,3 @@

isRequired(message = '{name} is required.') {
return this.setRequirement(val => !!val, '{name} is required.', message);
return this.setRequirement(requiredFunc, '{name} is required.', message);
}

@@ -293,6 +303,2 @@

isNull(message = '{name} must be null.') {
return this.setValidatorRequirement('isNull', message);
}
isNumeric(message = '{name} must be numeric.') {

@@ -299,0 +305,0 @@ return this.setValidatorRequirement('isNumeric', message);

@@ -83,3 +83,3 @@ import ValidationUnit from './ValidationUnit';

let result = this.getResult(name);
return !Object.keys(result).some((key) => result[key].valid === false);
return !Object.keys(result).some((key) => !result[key].valid);
}

@@ -86,0 +86,0 @@ }

@@ -1105,24 +1105,2 @@ import {expect} from "./support/eventual-chai";

describe('isNull', () => {
beforeEach(() => {
unit = unit.isNull();
});
it('passes when the given value is null', (done) => {
unit.runValidation(null).then(() => {
expect(unit.getState().valid).to.be.true;
done();
});
});
it('fails when the given value is not null', (done) => {
unit.runValidation('nope', {}, 'Null field').then(() => {
let result = unit.getState();
expect(result.valid).to.be.false;
expect(result.messages).to.deep.equal([ 'Null field must be null.' ]);
done();
});
});
});
describe('isNumeric', () => {

@@ -1236,2 +1214,13 @@ beforeEach(() => {

});
describe('hasIsRequired', () => {
it('returns true when the unit is required', () => {
unit = unit.isRequired();
expect(unit.hasIsRequired()).to.be.true;
});
it('returns false when the unit is not required', () => {
expect(unit.hasIsRequired()).to.be.false;
});
});
});
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