Converts back and forth flat arrays to and from tree structured arrays. It uses the urls to establish the tree structure and hierarchy.
npm install urlploader
var urlPloader = require('urlploader');
var up = new urlPloader(options);
var flatArray = up.toFlat(myTree);
var treeArray = up.toTree(flatArray);
var options = {
subItemsKey: 'items',
urlKey : 'uri',
ignoreProtocol: true
}
subItemsKey
default pages
type string
The key name which identifies sub itemsurlKey
default url
type string
The key name which identifies the urlignoreProtocol
default false
type boolean
If true, http, https, //, of urls will be ignored
[
{
"url": "mydomain.com/blog",
"title": "Blog"
},
{
"url": "mydomain.com/contact",
"title": "Contact"
},
{
"url": "mydomain.com/info/sub",
"data": {
"key": "value1"
}
},
{
"url": "mydomain.com/info",
"title": "Info"
},
{
"url": "mydomain.com",
"title": "my start page"
}
]
[{
"pages": [
{
"url": "mydomain.com",
"title": "my start page",
"pages": [
{
"url": "mydomain.com/blog",
"title": "Blog"
},
{
"url": "mydomain.com/contact",
"title": "Contact"
},
{
"url": "mydomain.com/info",
"title": "Info",
"pages": [
{
"url": "mydomain.com/info/sub",
"data": {
"key": "value1"
}
}
]
}
]
}
]
}]