Server IP : 162.213.251.212 / Your IP : 18.223.3.50 [ Web Server : LiteSpeed System : 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 User : allssztx ( 535) PHP Version : 8.1.31 Disable Function : NONE Domains : 1 Domains MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : ON | Sudo : OFF | Pkexec : OFF Directory : /home/allssztx/needapair.com/node_modules/mongoose/lib/helpers/query/ |
Upload File : |
'use strict'; const StrictModeError = require('../../error/strict'); /** * Handle immutable option for a given path when casting updates based on options * * @param {SchemaType} schematype the resolved schematype for this path * @param {Boolean | 'throw' | null} strict whether strict mode is set for this query * @param {Object} obj the object containing the value being checked so we can delete * @param {String} key the key in `obj` which we are checking for immutability * @param {String} fullPath the full path being checked * @param {Object} options the query options * @param {Query} ctx the query. Passed as `this` and first param to the `immutable` option, if `immutable` is a function * @returns true if field was removed, false otherwise */ module.exports = function handleImmutable(schematype, strict, obj, key, fullPath, options, ctx) { if (schematype == null || !schematype.options || !schematype.options.immutable) { return false; } let immutable = schematype.options.immutable; if (typeof immutable === 'function') { immutable = immutable.call(ctx, ctx); } if (!immutable) { return false; } if (options && options.overwriteImmutable) { return false; } if (strict === false) { return false; } if (strict === 'throw') { throw new StrictModeError(null, `Field ${fullPath} is immutable and strict = 'throw'`); } delete obj[key]; return true; };