arnaucube
arnaucube/thoughtsPublic Self-hosted repository
thoughts/node_modules/mongoose/lib/queryhelpers.js
node_modules/mongoose/lib/queryhelpers.jsRaw
 1
 2/*!
 3 * Module dependencies
 4 */
 5
 6var utils = require('./utils')
 7
 8/*!
 9 * Prepare a set of path options for query population.
10 *
11 * @param {Query} query
12 * @param {Object} options
13 * @return {Array}
14 */
15
16exports.preparePopulationOptions = function preparePopulationOptions (query, options) {
17  var pop = utils.object.vals(query.options.populate);
18
19  // lean options should trickle through all queries
20  if (options.lean) pop.forEach(makeLean);
21
22  return pop;
23}
24
25/*!
26 * Set each path query option to lean
27 *
28 * @param {Object} option
29 */
30
31function makeLean (option) {
32  option.options || (option.options = {});
33  option.options.lean = true;
34}
35