<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Security Vision Semantic Graph</title>
    <style>

        :root{
            --color1: #f94144;
            --color2: #f3722c;
            --color3: #f8961e;
            /* --color4: #f9844a; */
            --color5: #f9c74f;
            --color6: #90be6d;
            --color7: #43aa8b;
            --color8: #4d908e;
            --color9: #577590;
            --color10: #277da1;

            --hover-color: var(--color1);
            --selected-color: var(--color1);
            --selected-color: var(--color1);
        }

        body {
            margin: 0;
            overflow: hidden;
            background: #333;
            font-family: sans-serif;
        }

        svg {
            cursor: grab;
            font-family: sans-serif;
        }

        svg.dragging {
            cursor: grabbing;
        }

        svg .links line{
            stroke: lightgray;
            stroke-width: 1;
        }

        .links text{
            /* display:none; */
            font-size:5pt;
            text-anchor: middle;
            fill: whitesmoke;
        }

        .node text{
            text-anchor: middle;
        }

        .node circle{
            fill: white;
        }

        .node:hover{
            cursor: pointer;
        }

        .node:hover circle{
            stroke: var(--hover-color);
            stroke-width: 5px;
        }
        .node.selected circle{
            stroke: var(--selected-color);
            stroke-width: 5px;
        }

        .node.Person circle {
            fill: lightgreen
        }
        .node.Technology circle {
            fill: lightcoral;
        }
        .node.Deployment circle {
            fill: lightblue;
        }
        .node.Institution circle {
            fill: lightgoldenrodyellow
        }
        .node.Dataset circle {
            fill: plum
        }

        /*  .node.Person circle {
            fill: var(--color2)
        }
        .node.Technology circle {
            fill: var(--color3);
        }
        .node.Deployment circle {
            fill: var(--color5);
        }
        .node.Institution circle {
            fill: var(--color6)
        }
        .node.Dataset circle {
            fill: var(--color7)
        } */


        #nodeInfo{
            position: fixed;
            display:block;
            right:20px;
            bottom:20px;
            background:white;
            padding: 10px;
            border: solid 1px #ccc;
        }

        #nodeInfo.hidden{
            display:none;
        }

        #nodeInfo h2{
            margin: 0;
            padding: 0;
        }

        #nodeInfo iframe{
            width: 50vw;
            height: calc(100vh - 40px - 20px - 30px);
        }

        #closeInfo{
            cursor: pointer;
            position: absolute;
            right: 10px;
            top: 10px;
        }

        #closeInfo:hover{
            color: var(--hover-color);
        }

        a, a:link{
            text-decoration: none;
        }
        a:hover{
            text-decoration: underline;
        }
    </style>
</head>

<body>

    <svg id='graph'>
        <defs>
            <marker markerHeight="4" markerWidth="4" refY="0" refX="6" viewBox="0 -3 8 6" preserveAspectRatio="none" orient="auto" id="arrowHead" fill="lightgray"><path d="M0,-3L8,0L0,3"></path></marker>
            <marker markerHeight="4" markerWidth="4" refY="0" refX="6" viewBox="0 -3 8 6" preserveAspectRatio="none" orient="auto" id="arrowHeadSelected"><path d="M0,-3L8,0L0,3" fill="white"></path></marker>
        </defs>

    </svg>

    <div id="nodeInfo" class='hidden'>
        <h2 class='nodeTitle'><a class='nodeHref' target="_blank"></a></h2>
        <div id='closeInfo'>&times;</div>
        <iframe class='nodeContents'></iframe>
    </div>
</body>


    <!-- <script src="https://d3js.org/d3.v6.min.js"></script> -->
    <script src="d3.v6.js"></script>
    <script src="graph.js"></script>

</html>