Newer
Older
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
import * as Helpers from "./helpers";
import * as Config from "../config";
import { FilterOverlay } from "./overlays/filteroverlay";
import { NodeInfoOverlay } from "./overlays/nodeinfo";
import Graph from "./graph";
function loadComponents() {
filterOverlay.create();
infoOverlay.create();
filterOverlay.filterChangedCallback = (cls) =>
infoOverlay.bottomMenu.toggleTabVisibility(cls);
createFullScreenButton();
}
function createFullScreenButton() {
const sceneNode = Helpers.getCanvasDivNode();
const overlayNode = document.createElement("div");
overlayNode.className = "fullscreen-button";
overlayNode.innerHTML = "<p>⤢</p>";
overlayNode.addEventListener("click", function () {
if (!document.fullscreenElement) {
Helpers.getCanvasDivNode().requestFullscreen();
} else {
document.exitFullscreen();
}
G.resize();
});
sceneNode.appendChild(overlayNode);
}
let G = null;
let filterOverlay = null;
let infoOverlay = null;
// Only execute, if corresponding dom is present
if (document.getElementById("3d-graph") !== null) {
G = new Graph(Config.SPACE, loadComponents);
filterOverlay = new FilterOverlay(G, "node");
infoOverlay = new NodeInfoOverlay(G);
G.infoOverlay = infoOverlay;
}