/** * @summary set * @version 3.0.0 * @since 1.0.0 * @author Arian Khosravi<arian.khosravi@aofl.com> */ import {recurseObjectByPath} from './core'; /** * Sets the value of a nested member of an object. * * @memberof module:@aofl/object-utils * @param {Object} obj * @param {String} path * @param {*} val */ const set = (obj, path, val) => { return recurseObjectByPath(obj, path, (key, pathParts, source, recurse) => { if (pathParts.length === 0) { source[key] = val; return; } if (typeof source[key] === 'undefined') { source[key] = {}; } return recurse(pathParts, source[key]); }); }; export { set };