UNPKG

object-hierarchy-access

Version:

Get/Set value from/to JS object hierarchy properties

62 lines (61 loc) 2.1 kB
import { setup, setupIfUndef } from './setup'; function _parseHierarchies(hierarchies) { return Array.prototype.concat.apply([], hierarchies); } function setProp(optionalTarget) { var hierarchies = []; for (var _i = 1; _i < arguments.length; _i++) { hierarchies[_i - 1] = arguments[_i]; } var arrHierarchies = _parseHierarchies(hierarchies); var target = optionalTarget || {}; setup(target, arrHierarchies); return target; } function assignProp(target) { var hierarchies = []; for (var _i = 1; _i < arguments.length; _i++) { hierarchies[_i - 1] = arguments[_i]; } var arrHierarchies = _parseHierarchies(hierarchies); var current = setup(target, arrHierarchies).current; return current; } function putProp(target) { var hierarchies = []; for (var _i = 1; _i < arguments.length; _i++) { hierarchies[_i - 1] = arguments[_i]; } var arrHierarchies = _parseHierarchies(hierarchies); var last = setup(target, arrHierarchies).last; return last; } function setPropIfUndef(optionalTarget) { var hierarchies = []; for (var _i = 1; _i < arguments.length; _i++) { hierarchies[_i - 1] = arguments[_i]; } var arrHierarchies = _parseHierarchies(hierarchies); var target = optionalTarget || {}; setupIfUndef(target, arrHierarchies); return target; } function assignPropIfUndef(target) { var hierarchies = []; for (var _i = 1; _i < arguments.length; _i++) { hierarchies[_i - 1] = arguments[_i]; } var arrHierarchies = _parseHierarchies(hierarchies); var current = setupIfUndef(target, arrHierarchies.slice(0, -1)); setupIfUndef(current, arrHierarchies.slice(-1)); return current; } function putPropIfUndef(target) { var hierarchies = []; for (var _i = 1; _i < arguments.length; _i++) { hierarchies[_i - 1] = arguments[_i]; } var arrHierarchies = _parseHierarchies(hierarchies); return setupIfUndef(target, arrHierarchies); } export { setProp, assignProp, putProp, setPropIfUndef, assignPropIfUndef, putPropIfUndef };