UNPKG

reheat

Version:

A red hot Node.js ORM for RethinkDB.

69 lines (63 loc) 2.14 kB
module.exports = function (mout) { return { contains: mout.array.contains, every: mout.array.every, filter: mout.array.filter, find: mout.array.find, findLast: mout.array.findLast, findIndex: mout.array.findIndex, findLastIndex: mout.array.findLastIndex, forEach: mout.array.forEach, invoke: mout.array.invoke, map: mout.array.map, pluck: mout.array.pluck, reduce: mout.array.reduce, reject: mout.array.reject, remove: mout.array.remove, shuffle: mout.array.shuffle, slice: mout.array.slice, some: mout.array.some, sort: mout.array.sort, sortBy: mout.array.sortBy, split: mout.array.split, toLookup: mout.array.toLookup, unique: mout.array.unique, isString: mout.lang.isString, isBoolean: mout.lang.isBoolean, isNumber: mout.lang.isNumber, isObject: mout.lang.isObject, isDate: mout.lang.isDate, isFunction: mout.lang.isFunction, isArray: mout.lang.isArray, isEmpty: mout.lang.isEmpty, clone: mout.lang.clone, functions: mout.object.functions, get: mout.object.get, set: mout.object.set, unset: mout.object.unset, has: mout.object.has, hasOwn: mout.object.hasOwn, deepMixIn: mout.object.deepMixIn, pick: mout.object.pick, forOwn: mout.object.forOwn, merge: mout.object.merge, escapeHtml: mout.string.escapeHtml, upperCase: mout.string.upperCase, lowerCase: mout.string.lowerCase, camelCase: mout.string.camelCase, deepFreeze: function deepFreeze(o) { var prop, propKey; Object.freeze(o); // First freeze the object. for (propKey in o) { prop = o[propKey]; if (!o.hasOwnProperty(propKey) || typeof prop !== 'object' || Object.isFrozen(prop)) { // If the object is on the prototype, not an object, or is already frozen, // skip it. Note that this might leave an unfrozen reference somewhere in the // object if there is an already frozen object containing an unfrozen object. continue; } deepFreeze(prop); // Recursively call deepFreeze. } } }; };