UNPKG

ramda

Version:

A practical functional library for JavaScript programmers.

29 lines 1.12 kB
var _curry2 = /*#__PURE__*/require("./internal/_curry2.js"); var _has = /*#__PURE__*/require("./internal/_has.js"); var _mapKeys = /*#__PURE__*/require("./internal/_mapKeys.js"); /** * Converts an object to a new one by changing all keys that are also found as keys in a mapping * object to their corresponding values from that object. * * @func * @memberOf R * @since v0.31.0 * @category Object * @sig Object -> Object -> Object * @param {Function} mapping An object pairing existing keys with new ones * @param {Object} obj A target object to convert * @return {Object} The result of replacing existing keys with their mapping counterparts when such exist * @see R.mapKeys, R.rebuild * @example * * var mapping = { name: 'firstName', address: 'street' }; * var obj = { name: 'John', city: 'Paris' }; * * R.renameKeys(mapping, obj) //=> { firstName: 'John', city: 'Paris' } */ var renameKeys = /*#__PURE__*/_curry2(function renameKeys(mapping, obj) { return _mapKeys(function (key) { return _has(key, mapping) ? mapping[key] : key; }, obj); }); module.exports = renameKeys;