LittleDemon WebShell


Linux premium331.web-hosting.com 4.18.0-553.80.1.lve.el8.x86_64 #1 SMP Wed Oct 22 19:29:36 UTC 2025 x86_64
Path : /home/livedhms/lmgt/node_modules/mongoose/lib/helpers/update/
File Upload :
Command :
Current File : /home/livedhms/lmgt/node_modules/mongoose/lib/helpers/update/decorateUpdateWithVersionKey.js

'use strict';

/**
 * Decorate the update with a version key, if necessary
 * @api private
 */

module.exports = function decorateUpdateWithVersionKey(update, options, versionKey) {
  if (!versionKey || !options?.upsert) {
    return;
  }

  if (options.overwrite) {
    if (!hasKey(update, versionKey)) {
      update[versionKey] = 0;
    }
  } else if (
    !hasKey(update, versionKey) &&
    !hasKey(update?.$set, versionKey) &&
    !hasKey(update?.$inc, versionKey) &&
    !hasKey(update?.$setOnInsert, versionKey)
  ) {
    if (!update.$setOnInsert) {
      update.$setOnInsert = {};
    }
    update.$setOnInsert[versionKey] = 0;
  }
};

function hasKey(obj, key) {
  if (obj == null || typeof obj !== 'object') {
    return false;
  }
  return Object.hasOwn(obj, key);
}

LittleDemon - FACEBOOK
[ KELUAR ]