@aasaanjobs/query-builder
Advanced tools
Comparing version 1.0.0 to 1.0.1
@@ -22,3 +22,3 @@ export declare class ElasticQueryBuilder { | ||
[index: string]: any; | ||
}[]; | ||
}; | ||
} |
@@ -61,7 +61,6 @@ "use strict"; | ||
ElasticQueryBuilder.prototype.gen = function (data, root) { | ||
var _a; | ||
if (!data) { | ||
return []; | ||
} | ||
var queries = []; | ||
var queries = { bool: {} }; | ||
if (data.constructor !== Object) { | ||
@@ -73,18 +72,14 @@ throw new exceptions_1.InvalidFilterFormat("Expected object received " + typeof data); | ||
} | ||
for (var _i = 0, _b = Object.keys(data); _i < _b.length; _i++) { | ||
var rootCondition = _b[_i]; | ||
for (var _i = 0, _a = Object.keys(data); _i < _a.length; _i++) { | ||
var rootCondition = _a[_i]; | ||
var subQueries = []; | ||
var filters = data[rootCondition]; | ||
for (var _c = 0, _d = Object.keys(filters); _c < _d.length; _c++) { | ||
var field = _d[_c]; | ||
for (var _e = 0, _f = Object.keys(filters[field]); _e < _f.length; _e++) { | ||
var constraint = _f[_e]; | ||
for (var _b = 0, _c = Object.keys(filters); _b < _c.length; _b++) { | ||
var field = _c[_b]; | ||
for (var _d = 0, _e = Object.keys(filters[field]); _d < _e.length; _d++) { | ||
var constraint = _e[_d]; | ||
subQueries.push(this.handlers[constraint](field, filters[field][constraint])); | ||
} | ||
} | ||
queries.push({ | ||
bool: (_a = {}, | ||
_a[this.operators[rootCondition]] = subQueries, | ||
_a) | ||
}); | ||
queries.bool[this.operators[rootCondition]] = subQueries; | ||
} | ||
@@ -91,0 +86,0 @@ return queries; |
@@ -12,4 +12,8 @@ "use strict"; | ||
"modified": { between: ["2018-01-01", "2019-01-01"] } | ||
}, | ||
or: { | ||
"candidate.id": { eq: "22222" }, | ||
"status": { eq: "RJ" } | ||
} | ||
}; | ||
console.log(JSON.stringify(index_1.default.queryBuilder.gen(filters))); |
{ | ||
"name": "@aasaanjobs/query-builder", | ||
"version": "1.0.0", | ||
"version": "1.0.1", | ||
"description": "Common Library to build queries for filtering, sorting, etc. (For Aasaanjobs internal usage only)", | ||
@@ -5,0 +5,0 @@ "main": "lib/index.js", |
7962
170