From 521c17523070d83e4b5878f56ad61bf37828a27e Mon Sep 17 00:00:00 2001 From: Terry Truong Date: Wed, 6 Jul 2022 17:49:42 +1000 Subject: Smoothen initial loading where URL has target node --- src/layout.ts | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) (limited to 'src/layout.ts') diff --git a/src/layout.ts b/src/layout.ts index 665c617..ec5b70c 100644 --- a/src/layout.ts +++ b/src/layout.ts @@ -221,7 +221,7 @@ function removeFromLayoutMap(node: LayoutNode, map: LayoutMap): void { node.children.forEach(n => removeFromLayoutMap(n, map)); } -// Creates a LayoutNode representing a TolNode tree, up to a given depth (0 means just the root) +// Creates a LayoutNode representing a TolNode tree, up to a given depth (0 means just the root, -1 means no limit) export function initLayoutTree(tolMap: TolMap, rootName: string, depth: number): LayoutNode { function initHelper(tolMap: TolMap, nodeName: string, depthLeft: number, atDepth: number = 0): LayoutNode { if (depthLeft == 0){ @@ -233,7 +233,8 @@ export function initLayoutTree(tolMap: TolMap, rootName: string, depth: number): if (childNames.length == 0 || !tolMap.has(childNames[0])){ return new LayoutNode(nodeName, []); } else { - let children = childNames.map((name: string) => initHelper(tolMap, name, depthLeft-1, atDepth+1)); + let children = childNames.map((name: string) => + initHelper(tolMap, name, depthLeft != -1 ? depthLeft-1 : -1, atDepth+1)); let node = new LayoutNode(nodeName, children); children.forEach(n => n.parent = node); return node; -- cgit v1.2.3