diff --git a/packages/core/utils/lib/convert-query-params.js b/packages/core/utils/lib/convert-query-params.js index b717ca5732..b4026eb1c5 100644 --- a/packages/core/utils/lib/convert-query-params.js +++ b/packages/core/utils/lib/convert-query-params.js @@ -6,6 +6,7 @@ */ const _ = require('lodash'); +const parseType = require('./parse-type'); const QUERY_OPERATORS = ['_where', '_or', '_and']; @@ -29,6 +30,10 @@ const validateOrder = order => { } }; +const convertCountQueryParams = countQuery => { + return parseType({ type: 'boolean', value: countQuery }); +}; + /** * Sort query parser * @param {string} sortQuery - ex: id:asc,price:desc @@ -161,7 +166,7 @@ const convertNestedPopulate = subPopulate => { } // TODO: We will need to consider a way to add limitation / pagination - const { sort, filters, fields, populate } = subPopulate; + const { sort, filters, fields, populate, count } = subPopulate; const query = {}; @@ -181,6 +186,10 @@ const convertNestedPopulate = subPopulate => { query.populate = convertPopulateQueryParams(populate); } + if (count) { + query.count = convertCountQueryParams(count); + } + return query; };