Compare commits
2 Commits
38c5d4648f
...
4830525440
Author | SHA1 | Date |
---|---|---|
Антон | 4830525440 | |
Антон | 7263d9680d |
|
@ -0,0 +1,10 @@
|
||||||
|
class Context {
|
||||||
|
constructor(level = 0, isLast = false) {
|
||||||
|
this.level = level;
|
||||||
|
this.isLast = isLast;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
module.exports = {
|
||||||
|
Context,
|
||||||
|
}
|
|
@ -1,4 +1,24 @@
|
||||||
const treeLogger = (tree, context) => {};
|
const {Context} = require("./Context");
|
||||||
|
const treeLogger = (tree, context) => {
|
||||||
|
if (context.level === 0) {
|
||||||
|
console.log(tree.name);
|
||||||
|
|
||||||
|
if (tree.items) {
|
||||||
|
for (let i = 0; i < tree.items.length; ++i) {
|
||||||
|
const subtree = tree.items[i];
|
||||||
|
const lastIndex = tree.items.length - 1;
|
||||||
|
const ctx = new Context(context.level + 1, (i === lastIndex));
|
||||||
|
|
||||||
|
treeLogger(subtree, ctx);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
} else if (context.level === 1) {
|
||||||
|
const rootChar = context.isLast ? '└ ' : '├ ';
|
||||||
|
console.log(rootChar + tree.name);
|
||||||
|
} else {
|
||||||
|
|
||||||
|
}
|
||||||
|
};
|
||||||
|
|
||||||
module.exports = {
|
module.exports = {
|
||||||
treeLogger
|
treeLogger
|
||||||
|
|
Loading…
Reference in New Issue