Socket
Socket
Sign inDemoInstall

@feathersjs/commons

Package Overview
Dependencies
Maintainers
4
Versions
105
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@feathersjs/commons - npm Package Compare versions

Comparing version 2.0.0 to 3.0.0-pre.1

8

CHANGELOG.md
# Change Log
## [v2.0.0](https://github.com/feathersjs/commons/tree/v2.0.0) (2018-08-03)
[Full Changelog](https://github.com/feathersjs/commons/compare/v1.4.4...v2.0.0)
**Merged pull requests:**
- Merge major with latest changes [\#80](https://github.com/feathersjs/commons/pull/80) ([daffl](https://github.com/daffl))
- Ability to specify custom filters in filterQuery [\#73](https://github.com/feathersjs/commons/pull/73) ([vonagam](https://github.com/vonagam))
## [v1.4.4](https://github.com/feathersjs/commons/tree/v1.4.4) (2018-08-01)

@@ -4,0 +12,0 @@ [Full Changelog](https://github.com/feathersjs/commons/compare/v1.4.3...v1.4.4)

3

lib/commons.js
const utils = require('./utils');
const hooks = require('./hooks');
const args = require('./arguments');
const filterQuery = require('./filter-query');
module.exports = Object.assign({}, utils, args, { hooks, filterQuery });
module.exports = Object.assign({}, utils, { hooks, filterQuery });

@@ -28,18 +28,12 @@ const { _ } = require('./utils');

const result = {};
Object.keys(sort).forEach(key => {
return Object.keys(sort).reduce((result, key) => {
result[key] = typeof sort[key] === 'object'
? sort[key] : parseInt(sort[key], 10);
});
return result;
return result;
}, {});
}
function cleanQuery (query, operators) {
if (Array.isArray(query)) {
return query.map((query) => cleanQuery(query, operators));
}
if (query && query.constructor === Object) {
if (_.isObject(query)) {
const result = {};

@@ -66,2 +60,4 @@ _.each(query, (query, key) => {

}
return object;
}

@@ -82,13 +78,16 @@

module.exports = function filterQuery (query, options = {}) {
let { filters: additionalFilters = {}, operators: additionalOperators = [] } = options;
let result = {};
const {
filters: additionalFilters = {},
operators: additionalOperators = []
} = options;
const result = {};
result.filters = {};
assignFilters(result.filters, query, FILTERS, options);
assignFilters(result.filters, query, additionalFilters, options);
result.filters = assignFilters({}, query, FILTERS, options);
result.filters = assignFilters(result.filters, query, additionalFilters, options);
let operators = OPERATORS.concat(additionalOperators);
result.query = cleanQuery(query, operators);
result.query = cleanQuery(query, OPERATORS.concat(additionalOperators));
return result;
};
Object.assign(module.exports, { OPERATORS, FILTERS });

@@ -1,8 +0,9 @@

const { each, pick } = require('./utils')._;
const { _: { each, pick }, createSymbol } = require('./utils');
// To skip further hooks
const SKIP = exports.SKIP = typeof Symbol !== 'undefined'
? Symbol('__feathersSkipHooks')
: '__feathersSkipHooks';
const SKIP = createSymbol('__feathersSkipHooks');
exports.SKIP = SKIP;
exports.ACTIVATE_HOOKS = createSymbol('__feathersActivateHooks');
exports.createHookObject = function createHookObject (method, data = {}) {

@@ -9,0 +10,0 @@ const hook = {};

@@ -48,2 +48,6 @@ // Removes all leading and trailing slashes from a path

isObjectOrArray (value) {
return typeof value === 'object' && value !== null;
},
extend (...args) {

@@ -134,2 +138,6 @@ return Object.assign(...args);

exports.createSymbol = name => {
return typeof Symbol !== 'undefined' ? Symbol(name) : name;
};
// Sorting algorithm taken from NeDB (https://github.com/louischatriot/nedb)

@@ -136,0 +144,0 @@ // See https://github.com/louischatriot/nedb/blob/e3f0078499aa1005a59d0c2372e425ab789145c1/lib/model.js#L189

{
"name": "@feathersjs/commons",
"version": "2.0.0",
"version": "3.0.0-pre.1",
"description": "Shared Feathers utility functions",

@@ -5,0 +5,0 @@ "homepage": "https://github.com/feathersjs/commons",

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