amos-tool
Version:
amos ui tool
15 lines (13 loc) • 359 B
JavaScript
;
function array2tree(e, r, n) {
(n = n || {}).childrenKeyName = n.childrenKeyName || "children";
var t, i = e || [], a = [], l = 0;
do {
if (!(t = i.filter(function(e) {
return r(e, l);
})[0])) break;
a.push(t), i = t[n.childrenKeyName] || [], l += 1;
} while (i.length > 0);
return a;
}
module.exports = array2tree;