UNPKG

feathers-solr

Version:

A Feathers service adapter for Solr

29 lines 1.38 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.convertOperators = void 0; const operatorResolver_1 = require("./operatorResolver"); const lib_1 = require("@feathersjs/commons/lib"); const convertOperators = (query, escapeFn, root = '') => { if (Array.isArray(query)) { return query.map(q => (0, exports.convertOperators)(q, escapeFn, root)); } return Object.keys(query).map((prop) => { if (prop === '$or') { return operatorResolver_1.operatorResolver.$or((0, exports.convertOperators)(query[prop], escapeFn)); } if (prop === '$and') { return operatorResolver_1.operatorResolver.$and((0, exports.convertOperators)(query[prop], escapeFn, prop)); } if (prop in operatorResolver_1.operatorResolver) { const values = Object.values(escapeFn(root, query[prop])); return operatorResolver_1.operatorResolver[prop](...values); } if (lib_1._.isObject(query[prop])) { return operatorResolver_1.operatorResolver.$and((0, exports.convertOperators)(query[prop], escapeFn, prop)); } const values = Object.values(escapeFn(prop, query[prop])); return operatorResolver_1.operatorResolver.$eq(...values); }); }; exports.convertOperators = convertOperators; //# sourceMappingURL=convertOperators.js.map