UNPKG

motion

Version:

motion - moving development forward

28 lines (22 loc) 627 B
Object.defineProperty(exports, '__esModule', { value: true }); var PATH_DELIMITER = '.'; function lens(data, path) { var p = path.split(PATH_DELIMITER); var segment = p.shift(); if (!segment) { return data; } var t = getType(data); if (t === 'Array' && data[integer(segment)]) { return lens(data[integer(segment)], p.join(PATH_DELIMITER)); } else if (t === 'Object' && data[segment]) { return lens(data[segment], p.join(PATH_DELIMITER)); } } exports.default = lens; function integer(string) { return parseInt(string, 10); } module.exports = exports.default;