diff --git a/templates/graph.html b/templates/graph.html
index 4382b29..96304a1 100644
--- a/templates/graph.html
+++ b/templates/graph.html
@@ -36,29 +36,60 @@
.replace(/'/g, ''');
}
- function renderNodeDetails(node) {
+ function renderEntityDetails(node) {
const data = node.data();
- sidebarTitle.textContent = data.label;
+ const aliasEdges = node.connectedEdges('edge[edge_type="alias"]');
+ const aliasNodes = aliasEdges.connectedNodes('node[type="alias"]');
+ const aliasCount = aliasNodes.length;
+ sidebarTitle.textContent =
+ data.label
+ + ` (${aliasCount} alias${aliasCount !== 1 ? 'es' : ''})`;
+
+ if (aliasCount === 0) {
+ details.innerHTML = 'No aliases available.
';
+ } else {
+ const aliasList = aliasNodes.map(aliasNode => {
+ const aliasLabel = aliasNode.data('label');
+ return `${escapeHtml(aliasLabel)}`;
+ }).join('');
+ details.innerHTML = ``;
+ }
+ }
+
+ function renderAliasDetails(node) {
+ const data = node.data();
const occurrences = Array.isArray(data.occurrences) ? data.occurrences : [];
- if (!occurrences.length) {
+
+ sidebarTitle.textContent =
+ data.label
+ + ` (${occurrences.length} occurrence${occurrences.length !== 1 ? 's' : ''})`;
+
+ if (occurrences.length === 0) {
details.innerHTML = 'No occurrences available.
';
- return;
}
else {
- sidebarTitle.textContent += ` (${occurrences.length} occurrence${occurrences.length > 1 ? 's' : ''})`;
+ details.innerHTML = occurrences.map(item => {
+ const link = escapeHtml(item.link);
+ const context = item.context;
+ return `
+
+ `;
+ }).join('');
}
+ }
- details.innerHTML = occurrences.map(item => {
- const link = escapeHtml(item.link);
- const context = item.context;
- return `
-
- `;
- }).join('');
+ function renderNodeDetails(node) {
+ const data = node.data();
+ if (data.type === 'entity') {
+ renderEntityDetails(node);
+ }
+ else if (data.type === 'alias') {
+ renderAliasDetails(node);
+ }
}
function calculateEntityNodeSize(node) {