list-to-tree-lite

convert list to tree-list

Downloads in past

Stats

StarsIssuesVersionUpdatedCreatedSize
list-to-tree-lite
5500.1.08 years ago8 years agoMinified + gzip package size for list-to-tree-lite in KB

Readme

Build Status
list-to-tree-lite
A simple function converts a flat-list of objects with id, parent and children to a tree-list of objects.
without any dependencies.
[{
    id: 6,
    any: 'opps'
}, {
    id: 2,
    parent: 5,
    any: 'foo',
}, {
    id: 1,
    parent: 2,
    any: 'bar'
}, {
    id: 5,
    any: 'hello'
}, {
    id: 3,
    parent: 2,
    any: 'other'
}]
to
[{
    id: 6,
    any: 'opps',
    children: []
}, {
    id: 5,
    any: 'hello',
    children: [{
        id: 2,
        parent: 5,
        any: 'foo',
        children: [{
            id: 1,
            parent: 2,
            any: 'bar',
            children: []
        }, {
            id: 3,
            parent: 2,
            any: 'other',
            children: []
        }]
    }]
}]
Usage
listToTree(list[, options])
options.idKey
the id key of the item object, default id
options.parentKey
the parent key of the item object, default parent
options.childrenKey
the children key of the item object, default children
Install
npm install list-to-tree-lite --save
Test
npm run test
License
MIT:http://william17.mit-license.org