You're Invited:Meet the Socket Team at BlackHat and DEF CON in Las Vegas, Aug 7-8.RSVP
Socket
Socket
Sign inDemoInstall

object-hash-strict

Package Overview
Dependencies
Maintainers
1
Versions
51
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

Comparing version 1.2.2 to 1.2.3

18

lib/index.js
const assert = require('assert');
const get = require('lodash.get');
const objectHash = require('object-hash');

@@ -11,3 +9,5 @@

const scanner = (obj, allowedUndefined) => objectScan(['**'], {
const scanner = (obj, {
allowedUndefined
}) => objectScan(['**'], {
filterFn: (key, value) => {

@@ -20,9 +20,13 @@ if (INVALID.includes(value) && !allowedUndefined.includes(key)) {

const validateObject = (obj, allowedUndefined) => {
const validateObject = (obj, {
allowedUndefined = []
} = {}) => {
assert(Array.isArray(allowedUndefined), 'Invalid Option Provided');
scanner(obj, allowedUndefined);
scanner(obj, {
allowedUndefined
});
return obj;
};
const wrap = fn => (object, ...args) => fn(validateObject(object, get(args[0], 'allowedUndefined', [])), ...args);
const wrap = fn => (object, ...args) => fn(validateObject(object, args[0]), ...args);

@@ -32,2 +36,2 @@ module.exports = Object.entries(objectHash).reduce((p, [k, v]) => Object.assign(p, {

}), wrap(objectHash));
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9pbmRleC5qcyJdLCJuYW1lcyI6WyJhc3NlcnQiLCJyZXF1aXJlIiwiZ2V0Iiwib2JqZWN0SGFzaCIsIm9iamVjdFNjYW4iLCJJTlZBTElEIiwidW5kZWZpbmVkIiwic2Nhbm5lciIsIm9iaiIsImFsbG93ZWRVbmRlZmluZWQiLCJmaWx0ZXJGbiIsImtleSIsInZhbHVlIiwiaW5jbHVkZXMiLCJFcnJvciIsInZhbGlkYXRlT2JqZWN0IiwiQXJyYXkiLCJpc0FycmF5Iiwid3JhcCIsImZuIiwib2JqZWN0IiwiYXJncyIsIm1vZHVsZSIsImV4cG9ydHMiLCJPYmplY3QiLCJlbnRyaWVzIiwicmVkdWNlIiwicCIsImsiLCJ2IiwiYXNzaWduIl0sIm1hcHBpbmdzIjoiQUFBQSxNQUFNQSxNQUFNLEdBQUdDLE9BQU8sQ0FBQyxRQUFELENBQXRCOztBQUNBLE1BQU1DLEdBQUcsR0FBR0QsT0FBTyxDQUFDLFlBQUQsQ0FBbkI7O0FBQ0EsTUFBTUUsVUFBVSxHQUFHRixPQUFPLENBQUMsYUFBRCxDQUExQjs7QUFDQSxNQUFNRyxVQUFVLEdBQUdILE9BQU8sQ0FBQyxhQUFELENBQTFCOztBQUVBLE1BQU1JLE9BQU8sR0FBRyxDQUFDQyxTQUFELENBQWhCOztBQUNBLE1BQU1DLE9BQU8sR0FBRyxDQUFDQyxHQUFELEVBQU1DLGdCQUFOLEtBQTJCTCxVQUFVLENBQUMsQ0FBQyxJQUFELENBQUQsRUFBUztBQUM1RE0sRUFBQUEsUUFBUSxFQUFFLENBQUNDLEdBQUQsRUFBTUMsS0FBTixLQUFnQjtBQUN4QixRQUFJUCxPQUFPLENBQUNRLFFBQVIsQ0FBaUJELEtBQWpCLEtBQTJCLENBQUNILGdCQUFnQixDQUFDSSxRQUFqQixDQUEwQkYsR0FBMUIsQ0FBaEMsRUFBZ0U7QUFDOUQsWUFBTSxJQUFJRyxLQUFKLENBQVcsY0FBYUYsS0FBTSxjQUFhRCxHQUFJLFlBQS9DLENBQU47QUFDRDtBQUNGO0FBTDJELENBQVQsQ0FBVixDQU14Q0gsR0FOd0MsQ0FBM0M7O0FBUUEsTUFBTU8sY0FBYyxHQUFHLENBQUNQLEdBQUQsRUFBTUMsZ0JBQU4sS0FBMkI7QUFDaERULEVBQUFBLE1BQU0sQ0FBQ2dCLEtBQUssQ0FBQ0MsT0FBTixDQUFjUixnQkFBZCxDQUFELEVBQWtDLHlCQUFsQyxDQUFOO0FBQ0FGLEVBQUFBLE9BQU8sQ0FBQ0MsR0FBRCxFQUFNQyxnQkFBTixDQUFQO0FBQ0EsU0FBT0QsR0FBUDtBQUNELENBSkQ7O0FBTUEsTUFBTVUsSUFBSSxHQUFJQyxFQUFELElBQVEsQ0FBQ0MsTUFBRCxFQUFTLEdBQUdDLElBQVosS0FBcUJGLEVBQUUsQ0FBQ0osY0FBYyxDQUFDSyxNQUFELEVBQVNsQixHQUFHLENBQUNtQixJQUFJLENBQUMsQ0FBRCxDQUFMLEVBQVUsa0JBQVYsRUFBOEIsRUFBOUIsQ0FBWixDQUFmLEVBQStELEdBQUdBLElBQWxFLENBQTVDOztBQUVBQyxNQUFNLENBQUNDLE9BQVAsR0FBaUJDLE1BQU0sQ0FDcEJDLE9BRGMsQ0FDTnRCLFVBRE0sRUFFZHVCLE1BRmMsQ0FHYixDQUFDQyxDQUFELEVBQUksQ0FBQ0MsQ0FBRCxFQUFJQyxDQUFKLENBQUosS0FBZUwsTUFBTSxDQUFDTSxNQUFQLENBQWNILENBQWQsRUFBaUI7QUFBRSxHQUFDQyxDQUFELEdBQUtWLElBQUksQ0FBQ1csQ0FBRDtBQUFYLENBQWpCLENBSEYsRUFJYlgsSUFBSSxDQUFDZixVQUFELENBSlMsQ0FBakIiLCJzb3VyY2VzQ29udGVudCI6WyJjb25zdCBhc3NlcnQgPSByZXF1aXJlKCdhc3NlcnQnKTtcbmNvbnN0IGdldCA9IHJlcXVpcmUoJ2xvZGFzaC5nZXQnKTtcbmNvbnN0IG9iamVjdEhhc2ggPSByZXF1aXJlKCdvYmplY3QtaGFzaCcpO1xuY29uc3Qgb2JqZWN0U2NhbiA9IHJlcXVpcmUoJ29iamVjdC1zY2FuJyk7XG5cbmNvbnN0IElOVkFMSUQgPSBbdW5kZWZpbmVkXTtcbmNvbnN0IHNjYW5uZXIgPSAob2JqLCBhbGxvd2VkVW5kZWZpbmVkKSA9PiBvYmplY3RTY2FuKFsnKionXSwge1xuICBmaWx0ZXJGbjogKGtleSwgdmFsdWUpID0+IHtcbiAgICBpZiAoSU5WQUxJRC5pbmNsdWRlcyh2YWx1ZSkgJiYgIWFsbG93ZWRVbmRlZmluZWQuaW5jbHVkZXMoa2V5KSkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKGBCYWQgdmFsdWUgXCIke3ZhbHVlfVwiIGZvciBrZXkgXCIke2tleX1cIiBkZXRlY3RlZGApO1xuICAgIH1cbiAgfVxufSkob2JqKTtcblxuY29uc3QgdmFsaWRhdGVPYmplY3QgPSAob2JqLCBhbGxvd2VkVW5kZWZpbmVkKSA9PiB7XG4gIGFzc2VydChBcnJheS5pc0FycmF5KGFsbG93ZWRVbmRlZmluZWQpLCAnSW52YWxpZCBPcHRpb24gUHJvdmlkZWQnKTtcbiAgc2Nhbm5lcihvYmosIGFsbG93ZWRVbmRlZmluZWQpO1xuICByZXR1cm4gb2JqO1xufTtcblxuY29uc3Qgd3JhcCA9IChmbikgPT4gKG9iamVjdCwgLi4uYXJncykgPT4gZm4odmFsaWRhdGVPYmplY3Qob2JqZWN0LCBnZXQoYXJnc1swXSwgJ2FsbG93ZWRVbmRlZmluZWQnLCBbXSkpLCAuLi5hcmdzKTtcblxubW9kdWxlLmV4cG9ydHMgPSBPYmplY3RcbiAgLmVudHJpZXMob2JqZWN0SGFzaClcbiAgLnJlZHVjZShcbiAgICAocCwgW2ssIHZdKSA9PiBPYmplY3QuYXNzaWduKHAsIHsgW2tdOiB3cmFwKHYpIH0pLFxuICAgIHdyYXAob2JqZWN0SGFzaClcbiAgKTtcbiJdfQ==
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9pbmRleC5qcyJdLCJuYW1lcyI6WyJhc3NlcnQiLCJyZXF1aXJlIiwib2JqZWN0SGFzaCIsIm9iamVjdFNjYW4iLCJJTlZBTElEIiwidW5kZWZpbmVkIiwic2Nhbm5lciIsIm9iaiIsImFsbG93ZWRVbmRlZmluZWQiLCJmaWx0ZXJGbiIsImtleSIsInZhbHVlIiwiaW5jbHVkZXMiLCJFcnJvciIsInZhbGlkYXRlT2JqZWN0IiwiQXJyYXkiLCJpc0FycmF5Iiwid3JhcCIsImZuIiwib2JqZWN0IiwiYXJncyIsIm1vZHVsZSIsImV4cG9ydHMiLCJPYmplY3QiLCJlbnRyaWVzIiwicmVkdWNlIiwicCIsImsiLCJ2IiwiYXNzaWduIl0sIm1hcHBpbmdzIjoiQUFBQSxNQUFNQSxNQUFNLEdBQUdDLE9BQU8sQ0FBQyxRQUFELENBQXRCOztBQUNBLE1BQU1DLFVBQVUsR0FBR0QsT0FBTyxDQUFDLGFBQUQsQ0FBMUI7O0FBQ0EsTUFBTUUsVUFBVSxHQUFHRixPQUFPLENBQUMsYUFBRCxDQUExQjs7QUFFQSxNQUFNRyxPQUFPLEdBQUcsQ0FBQ0MsU0FBRCxDQUFoQjs7QUFDQSxNQUFNQyxPQUFPLEdBQUcsQ0FBQ0MsR0FBRCxFQUFNO0FBQUVDLEVBQUFBO0FBQUYsQ0FBTixLQUErQkwsVUFBVSxDQUFDLENBQUMsSUFBRCxDQUFELEVBQVM7QUFDaEVNLEVBQUFBLFFBQVEsRUFBRSxDQUFDQyxHQUFELEVBQU1DLEtBQU4sS0FBZ0I7QUFDeEIsUUFBSVAsT0FBTyxDQUFDUSxRQUFSLENBQWlCRCxLQUFqQixLQUEyQixDQUFDSCxnQkFBZ0IsQ0FBQ0ksUUFBakIsQ0FBMEJGLEdBQTFCLENBQWhDLEVBQWdFO0FBQzlELFlBQU0sSUFBSUcsS0FBSixDQUFXLGNBQWFGLEtBQU0sY0FBYUQsR0FBSSxZQUEvQyxDQUFOO0FBQ0Q7QUFDRjtBQUwrRCxDQUFULENBQVYsQ0FNNUNILEdBTjRDLENBQS9DOztBQVFBLE1BQU1PLGNBQWMsR0FBRyxDQUFDUCxHQUFELEVBQU07QUFBRUMsRUFBQUEsZ0JBQWdCLEdBQUc7QUFBckIsSUFBNEIsRUFBbEMsS0FBeUM7QUFDOURSLEVBQUFBLE1BQU0sQ0FBQ2UsS0FBSyxDQUFDQyxPQUFOLENBQWNSLGdCQUFkLENBQUQsRUFBa0MseUJBQWxDLENBQU47QUFDQUYsRUFBQUEsT0FBTyxDQUFDQyxHQUFELEVBQU07QUFBRUMsSUFBQUE7QUFBRixHQUFOLENBQVA7QUFDQSxTQUFPRCxHQUFQO0FBQ0QsQ0FKRDs7QUFNQSxNQUFNVSxJQUFJLEdBQUlDLEVBQUQsSUFBUSxDQUFDQyxNQUFELEVBQVMsR0FBR0MsSUFBWixLQUFxQkYsRUFBRSxDQUFDSixjQUFjLENBQUNLLE1BQUQsRUFBU0MsSUFBSSxDQUFDLENBQUQsQ0FBYixDQUFmLEVBQWtDLEdBQUdBLElBQXJDLENBQTVDOztBQUVBQyxNQUFNLENBQUNDLE9BQVAsR0FBaUJDLE1BQU0sQ0FDcEJDLE9BRGMsQ0FDTnRCLFVBRE0sRUFFZHVCLE1BRmMsQ0FHYixDQUFDQyxDQUFELEVBQUksQ0FBQ0MsQ0FBRCxFQUFJQyxDQUFKLENBQUosS0FBZUwsTUFBTSxDQUFDTSxNQUFQLENBQWNILENBQWQsRUFBaUI7QUFBRSxHQUFDQyxDQUFELEdBQUtWLElBQUksQ0FBQ1csQ0FBRDtBQUFYLENBQWpCLENBSEYsRUFJYlgsSUFBSSxDQUFDZixVQUFELENBSlMsQ0FBakIiLCJzb3VyY2VzQ29udGVudCI6WyJjb25zdCBhc3NlcnQgPSByZXF1aXJlKCdhc3NlcnQnKTtcbmNvbnN0IG9iamVjdEhhc2ggPSByZXF1aXJlKCdvYmplY3QtaGFzaCcpO1xuY29uc3Qgb2JqZWN0U2NhbiA9IHJlcXVpcmUoJ29iamVjdC1zY2FuJyk7XG5cbmNvbnN0IElOVkFMSUQgPSBbdW5kZWZpbmVkXTtcbmNvbnN0IHNjYW5uZXIgPSAob2JqLCB7IGFsbG93ZWRVbmRlZmluZWQgfSkgPT4gb2JqZWN0U2NhbihbJyoqJ10sIHtcbiAgZmlsdGVyRm46IChrZXksIHZhbHVlKSA9PiB7XG4gICAgaWYgKElOVkFMSUQuaW5jbHVkZXModmFsdWUpICYmICFhbGxvd2VkVW5kZWZpbmVkLmluY2x1ZGVzKGtleSkpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcihgQmFkIHZhbHVlIFwiJHt2YWx1ZX1cIiBmb3Iga2V5IFwiJHtrZXl9XCIgZGV0ZWN0ZWRgKTtcbiAgICB9XG4gIH1cbn0pKG9iaik7XG5cbmNvbnN0IHZhbGlkYXRlT2JqZWN0ID0gKG9iaiwgeyBhbGxvd2VkVW5kZWZpbmVkID0gW10gfSA9IHt9KSA9PiB7XG4gIGFzc2VydChBcnJheS5pc0FycmF5KGFsbG93ZWRVbmRlZmluZWQpLCAnSW52YWxpZCBPcHRpb24gUHJvdmlkZWQnKTtcbiAgc2Nhbm5lcihvYmosIHsgYWxsb3dlZFVuZGVmaW5lZCB9KTtcbiAgcmV0dXJuIG9iajtcbn07XG5cbmNvbnN0IHdyYXAgPSAoZm4pID0+IChvYmplY3QsIC4uLmFyZ3MpID0+IGZuKHZhbGlkYXRlT2JqZWN0KG9iamVjdCwgYXJnc1swXSksIC4uLmFyZ3MpO1xuXG5tb2R1bGUuZXhwb3J0cyA9IE9iamVjdFxuICAuZW50cmllcyhvYmplY3RIYXNoKVxuICAucmVkdWNlKFxuICAgIChwLCBbaywgdl0pID0+IE9iamVjdC5hc3NpZ24ocCwgeyBba106IHdyYXAodikgfSksXG4gICAgd3JhcChvYmplY3RIYXNoKVxuICApO1xuIl19
{
"name": "object-hash-strict",
"version": "1.2.2",
"version": "1.2.3",
"description": "Wrapper around object-hash that restricts allowed values",

@@ -44,4 +44,4 @@ "main": "lib/index.js",

"@babel/register": "7.6.0",
"@blackflux/eslint-plugin-rules": "1.3.9",
"@blackflux/robo-config-plugin": "2.6.5",
"@blackflux/eslint-plugin-rules": "1.3.12",
"@blackflux/robo-config-plugin": "2.6.9",
"babel-eslint": "10.0.3",

@@ -56,4 +56,4 @@ "chai": "4.2.0",

"eslint-plugin-mocha": "6.1.1",
"js-gardener": "2.0.88",
"node-tdd": "2.5.4",
"js-gardener": "2.0.99",
"node-tdd": "2.5.9",
"nyc": "14.1.1",

@@ -105,3 +105,2 @@ "semantic-release": "15.13.24"

"dependencies": {
"lodash.get": "4.4.2",
"object-hash": "1.3.1",

@@ -108,0 +107,0 @@ "object-scan": "10.0.13"

SocketSocket SOC 2 Logo

Product

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

Packages

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc