Socket
Socket
Sign inDemoInstall

ag-grid-mongo-query-builder

Package Overview
Dependencies
Maintainers
1
Versions
37
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

ag-grid-mongo-query-builder - npm Package Compare versions

Comparing version 0.1.2 to 0.1.3

3

package.json
{
"name": "ag-grid-mongo-query-builder",
"version": "0.1.2",
"version": "0.1.3",
"description": "Utility to generate Mongo DB aggregation pipeline queries starting from AgGrid server side params",

@@ -24,4 +24,3 @@ "main": "index.js",

"dependencies": {
"mongoose": "^6.8.1"
}
}

@@ -1,3 +0,1 @@

const mongoose = require('mongoose');
module.exports.buildQuery = function (reqBody) {

@@ -24,3 +22,3 @@ let {

const filterQuery = isFiltering ? buildFilterQuery(filterModel) : [];
const groupQuery = isGrouping ? buildGroupingQuery(groupKeys, rowGroupCols) : [];
const groupQuery = isGrouping ? buildGroupingQuery(groupKeys, rowGroupCols) : null;
const sortQuery = isSorting ? buildSortQuery(sortModel) : null;

@@ -34,3 +32,3 @@ const skipQuery = {'$skip': startRow};

...filterQuery,
...groupQuery,
groupQuery,
sortQuery,

@@ -180,31 +178,7 @@ skipQuery,

function buildGroupingQuery(groupKeys , rowGroupCols){
const query = groupKeys
.map((key, index) =>({ [rowGroupCols[index].id ] : key}));
return {"$match": {"$and" : query}};
let query=[];
if(groupKeys.length ===0 && rowGroupCols.length >0 )
{
return [{ $match:{ } }]
}
if( groupKeys.length === rowGroupCols.length){
// same length : no need to add group by clause in this case
for (let i=0;i<rowGroupCols.length;i++){
query.push({ [ rowGroupCols[i].id ] : groupKeys[i] });
}
let z=[{"$match": {"$and" : query}}];
console.log('Grouping query:', JSON.stringify(z));
return z;
}
if(groupKeys.length < rowGroupCols.length){
let i=0;
for(;i<groupKeys.length;i++){
query.push({ [rowGroupCols[i].id ] : groupKeys[i]});
}
let z=[{"$match": {"$and" : query}}];
console.log('Groupung Query:', z);
return z;
}
console.log('returning blank group query: missing required params.');
return {};
}

@@ -211,0 +185,0 @@

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