diff --git a/DesignSpace/Workspace/Workspace.js b/DesignSpace/Workspace/Workspace.js index a408c2184..ecb4293a4 100644 --- a/DesignSpace/Workspace/Workspace.js +++ b/DesignSpace/Workspace/Workspace.js @@ -722,6 +722,15 @@ function newWorkspace() { if (definition !== undefined) { if (definition.docURL !== undefined) { canvas.docSpace.navigateTo(definition.docURL) + } else { + let headName = getHiriarchyHead(payload.node).type + headName = headName.toLowerCase() + headName = headName.split(" ").join("-") + let nodeName = payload.node.type + nodeName = nodeName.toLowerCase() + nodeName = nodeName.split(" ").join("-") + url = DOCUMENTATION_URL_PREFIX + "suite-hierarchy-" + headName + ".html#" + nodeName + canvas.docSpace.navigateTo(url) } } } diff --git a/Globals.js b/Globals.js index 88ede4643..dde37e5cb 100644 --- a/Globals.js +++ b/Globals.js @@ -28,6 +28,8 @@ const UI_FONT = { SECONDARY: "Source Code Pro" }; +const DOCUMENTATION_URL_PREFIX = 'https://julian-molina.github.io/Documentation/' + const MAC_AMOUNT_FACTOR = 5 const IS_MAC = navigator.platform.toUpperCase().indexOf('MAC') >= 0 diff --git a/Utilities/HiriarchyMap.js b/Utilities/Hiriarchy.js similarity index 82% rename from Utilities/HiriarchyMap.js rename to Utilities/Hiriarchy.js index 6b37803b6..1c4665a77 100644 --- a/Utilities/HiriarchyMap.js +++ b/Utilities/Hiriarchy.js @@ -45,3 +45,19 @@ function getHiriarchyMap(rootNode) { } } } + +function getHiriarchyHead(initialNode) { + let headNode + stepBackwards(initialNode) + return headNode + + function stepBackwards(node) { + if (node === undefined) {return} + if (node.payload === undefined) {return} + if (node.payload.parentNode === undefined) { + headNode = node + } else { + stepBackwards(node.payload.parentNode) + } + } +}