UNPKG

bloom-layout

Version:
24 lines (20 loc) 515 B
module.exports = function flatten(list, depth) { depth = (typeof depth == 'number') ? depth : Infinity; if (!depth) { if (Array.isArray(list)) { return list.map(function(i) { return i; }); } return list; } return _flatten(list, 1); function _flatten(list, d) { return list.reduce(function (acc, item) { if (Array.isArray(item) && d < depth) { return acc.concat(_flatten(item, d + 1)); } else { return acc.concat(item); } }, []); } };