UNPKG

sails-permissions-sequelize

Version:

Sequelize version of : Comprehensive user permissions and entitlements system for sails.js and Waterline. Supports user authentication with passport.js, role-based permissioning, object ownership, and row-level security.

27 lines (23 loc) 736 B
var baseCallback = require('./baseCallback'), baseForOwn = require('./baseForOwn'); /** * Creates a function for `_.mapKeys` or `_.mapValues`. * * @private * @param {boolean} [isMapKeys] Specify mapping keys instead of values. * @returns {Function} Returns the new map function. */ function createObjectMapper(isMapKeys) { return function(object, iteratee, thisArg) { var result = {}; iteratee = baseCallback(iteratee, thisArg, 3); baseForOwn(object, function(value, key, object) { var mapped = iteratee(value, key, object); key = isMapKeys ? mapped : key; value = isMapKeys ? value : mapped; result[key] = value; }); return result; }; } module.exports = createObjectMapper;