Uname: Linux business55.web-hosting.com 4.18.0-553.lve.el8.x86_64 #1 SMP Mon May 27 15:27:34 UTC 2024 x86_64
Software: LiteSpeed
PHP version: 8.1.32 [ PHP INFO ] PHP os: Linux
Server Ip: 162.213.251.212
Your Ip: 18.224.33.135
User: allssztx (535) | Group: allssztx (533)
Safe Mode: OFF
Disable Function:
NONE

name : setPopulatedVirtualValue.js
'use strict';

/**
 * Set a populated virtual value on a document's `$$populatedVirtuals` value
 *
 * @param {*} populatedVirtuals A document's `$$populatedVirtuals`
 * @param {*} name The virtual name
 * @param {*} v The result of the populate query
 * @param {*} options The populate options. This function handles `justOne` and `count` options.
 * @returns {Array<Document>|Document|Object|Array<Object>} the populated virtual value that was set
 */

module.exports = function setPopulatedVirtualValue(populatedVirtuals, name, v, options) {
  if (options.justOne || options.count) {
    populatedVirtuals[name] = Array.isArray(v) ?
      v[0] :
      v;

    if (typeof populatedVirtuals[name] !== 'object') {
      populatedVirtuals[name] = options.count ? v : null;
    }
  } else {
    populatedVirtuals[name] = Array.isArray(v) ?
      v :
      v == null ? [] : [v];

    populatedVirtuals[name] = populatedVirtuals[name].filter(function(doc) {
      return doc && typeof doc === 'object';
    });
  }

  return populatedVirtuals[name];
};
© 2025 GrazzMean-Shell