list-to-tree-lite

0.1.0 • Public • Published

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

Dependents (2)

Package Sidebar

Install

npm i list-to-tree-lite

Weekly Downloads

8,856

Version

0.1.0

License

MIT

Last publish

Collaborators

  • william17