You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 

35 lines
641 B

/*!
* Module dependencies
*/
var utils = require('./utils')
/*!
* Prepare a set of path options for query population.
*
* @param {Query} query
* @param {Object} options
* @return {Array}
*/
exports.preparePopulationOptions = function preparePopulationOptions (query, options) {
var pop = utils.object.vals(query.options.populate);
// lean options should trickle through all queries
if (options.lean) pop.forEach(makeLean);
return pop;
}
/*!
* Set each path query option to lean
*
* @param {Object} option
*/
function makeLean (option) {
option.options || (option.options = {});
option.options.lean = true;
}