Created
July 24, 2023 03:18
-
-
Save awhiteside1/060e65f6e1554bc38f24349587ab2b89 to your computer and use it in GitHub Desktop.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
<!DOCTYPE html> | |
<html lang="en" dir="ltr"> | |
<head> | |
<meta charset="utf-8" /> | |
<title>dependency graph</title> | |
<style> | |
.node:active path, | |
.node:hover path, | |
.node.current path, | |
.node:active polygon, | |
.node:hover polygon, | |
.node.current polygon { | |
stroke: fuchsia; | |
stroke-width: 2; | |
} | |
.edge:active path, | |
.edge:hover path, | |
.edge.current path, | |
.edge:active ellipse, | |
.edge:hover ellipse, | |
.edge.current ellipse { | |
stroke: fuchsia; | |
stroke-width: 3; | |
stroke-opacity: 1; | |
} | |
.edge:active polygon, | |
.edge:hover polygon, | |
.edge.current polygon { | |
stroke: fuchsia; | |
stroke-width: 3; | |
fill: fuchsia; | |
stroke-opacity: 1; | |
fill-opacity: 1; | |
} | |
.edge:active text, | |
.edge:hover text { | |
fill: fuchsia; | |
} | |
.cluster path { | |
stroke-width: 3; | |
} | |
.cluster:active path, | |
.cluster:hover path { | |
fill: #ffff0011; | |
} | |
div.hint { | |
background-color: #000000aa; | |
color: white; | |
font-family: Arial, Helvetica, sans-serif; | |
border-radius: 1rem; | |
position: fixed; | |
top: calc(50% - 4em); | |
right: calc(50% - 10em); | |
border: none; | |
padding: 1em 3em 1em 1em; | |
} | |
.hint button { | |
position: absolute; | |
font-weight: bolder; | |
right: 0.6em; | |
top: 0.6em; | |
color: inherit; | |
background-color: inherit; | |
border: 1px solid currentColor; | |
border-radius: 1em; | |
margin-left: 0.6em; | |
} | |
.hint a { | |
color: inherit; | |
} | |
#button_help { | |
color: white; | |
background-color: #00000011; | |
border-radius: 1em; | |
position: fixed; | |
top: 1em; | |
right: 1em; | |
font-size: 24pt; | |
font-weight: bolder; | |
width: 2em; | |
height: 2em; | |
border: none; | |
} | |
#button_help:hover { | |
cursor: pointer; | |
background-color: #00000077; | |
} | |
@media print { | |
#button_help { | |
display: none; | |
} | |
div.hint { | |
display: none; | |
} | |
} | |
</style> | |
</head> | |
<body> | |
<button id="button_help">?</button> | |
<div id="hints" class="hint" style="display: none"> | |
<button id="close-hints">x</button> | |
<span id="hint-text"></span> | |
<ul> | |
<li><b>Hover</b> - highlight</li> | |
<li><b>Right-click</b> - pin highlight</li> | |
<li><b>ESC</b> - clear</li> | |
</ul> | |
</div> | |
<?xml version="1.0" encoding="UTF-8" standalone="no"?> | |
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" | |
"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"> | |
<!-- Generated by graphviz version 8.0.5 (20230430.1635) | |
--> | |
<!-- Title: dependency-cruiser output Pages: 1 --> | |
<svg width="1500pt" height="563pt" | |
viewBox="0.00 0.00 1500.00 563.35" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"> | |
<g id="graph0" class="graph" transform="scale(1 1) rotate(0) translate(4 559.35)"> | |
<title>dependency-cruiser output</title> | |
<polygon fill="white" stroke="none" points="-4,4 -4,-559.35 1496,-559.35 1496,4 -4,4"/> | |
<g id="clust1" class="cluster"> | |
<title>cluster_src</title> | |
<path fill="#ffffff" stroke="black" stroke-width="2" d="M20,-8C20,-8 1472,-8 1472,-8 1478,-8 1484,-14 1484,-20 1484,-20 1484,-535.35 1484,-535.35 1484,-541.35 1478,-547.35 1472,-547.35 1472,-547.35 20,-547.35 20,-547.35 14,-547.35 8,-541.35 8,-535.35 8,-535.35 8,-20 8,-20 8,-14 14,-8 20,-8"/> | |
<text text-anchor="middle" x="746" y="-534.8" font-family="Helvetica,sans-Serif" font-weight="bold" font-size="9.00">src</text> | |
</g> | |
<g id="clust2" class="cluster"> | |
<title>cluster_src/app</title> | |
<path fill="#ffffff" stroke="black" stroke-width="2" d="M355,-159C355,-159 603,-159 603,-159 609,-159 615,-165 615,-171 615,-171 615,-509.6 615,-509.6 615,-515.6 609,-521.6 603,-521.6 603,-521.6 355,-521.6 355,-521.6 349,-521.6 343,-515.6 343,-509.6 343,-509.6 343,-171 343,-171 343,-165 349,-159 355,-159"/> | |
<text text-anchor="middle" x="479" y="-509.05" font-family="Helvetica,sans-Serif" font-weight="bold" font-size="9.00">app</text> | |
</g> | |
<g id="clust3" class="cluster"> | |
<title>cluster_src/app/partner</title> | |
<path fill="#ffffff" stroke="black" stroke-width="2" d="M375,-270C375,-270 595,-270 595,-270 601,-270 607,-276 607,-282 607,-282 607,-483.85 607,-483.85 607,-489.85 601,-495.85 595,-495.85 595,-495.85 375,-495.85 375,-495.85 369,-495.85 363,-489.85 363,-483.85 363,-483.85 363,-282 363,-282 363,-276 369,-270 375,-270"/> | |
<text text-anchor="middle" x="485" y="-483.3" font-family="Helvetica,sans-Serif" font-weight="bold" font-size="9.00">partner</text> | |
</g> | |
<g id="clust4" class="cluster"> | |
<title>cluster_src/app/partner/[partnerKey]</title> | |
<path fill="#ffffff" stroke="black" stroke-width="2" d="M395,-278C395,-278 587,-278 587,-278 593,-278 599,-284 599,-290 599,-290 599,-458.1 599,-458.1 599,-464.1 593,-470.1 587,-470.1 587,-470.1 395,-470.1 395,-470.1 389,-470.1 383,-464.1 383,-458.1 383,-458.1 383,-290 383,-290 383,-284 389,-278 395,-278"/> | |
<text text-anchor="middle" x="491" y="-457.55" font-family="Helvetica,sans-Serif" font-weight="bold" font-size="9.00">[partnerKey]</text> | |
</g> | |
<g id="clust5" class="cluster"> | |
<title>cluster_src/app/partner/[partnerKey]/savings</title> | |
<path fill="#ffffff" stroke="black" stroke-width="2" d="M415,-286C415,-286 579,-286 579,-286 585,-286 591,-292 591,-298 591,-298 591,-432.35 591,-432.35 591,-438.35 585,-444.35 579,-444.35 579,-444.35 415,-444.35 415,-444.35 409,-444.35 403,-438.35 403,-432.35 403,-432.35 403,-298 403,-298 403,-292 409,-286 415,-286"/> | |
<text text-anchor="start" x="480.12" y="-431.8" font-family="Helvetica,sans-Serif" font-weight="bold" font-size="9.00">savings</text> | |
</g> | |
<g id="clust6" class="cluster"> | |
<title>cluster_src/app/partner/[partnerKey]/savings/@list</title> | |
<path fill="#ffffff" stroke="black" stroke-width="2" d="M449,-350.5C449,-350.5 495,-350.5 495,-350.5 501,-350.5 507,-356.5 507,-362.5 507,-362.5 507,-406.6 507,-406.6 507,-412.6 501,-418.6 495,-418.6 495,-418.6 449,-418.6 449,-418.6 443,-418.6 437,-412.6 437,-406.6 437,-406.6 437,-362.5 437,-362.5 437,-356.5 443,-350.5 449,-350.5"/> | |
<text text-anchor="start" x="461.12" y="-406.05" font-family="Helvetica,sans-Serif" font-weight="bold" font-size="9.00">@list</text> | |
</g> | |
<g id="clust7" class="cluster"> | |
<title>cluster_src/lib</title> | |
<path fill="#ffffff" stroke="black" stroke-width="2" d="M62,-24C62,-24 348,-24 348,-24 354,-24 360,-30 360,-36 360,-36 360,-131.93 360,-131.93 360,-137.93 354,-143.93 348,-143.93 348,-143.93 62,-143.93 62,-143.93 56,-143.93 50,-137.93 50,-131.93 50,-131.93 50,-36 50,-36 50,-30 56,-24 62,-24"/> | |
<text text-anchor="middle" x="205" y="-131.38" font-family="Helvetica,sans-Serif" font-weight="bold" font-size="9.00">lib</text> | |
</g> | |
<g id="clust9" class="cluster"> | |
<title>cluster_src/lib/middleware</title> | |
<path fill="#ffffff" stroke="black" stroke-width="2" d="M290,-32C290,-32 340,-32 340,-32 346,-32 352,-38 352,-44 352,-44 352,-106.17 352,-106.17 352,-112.17 346,-118.17 340,-118.17 340,-118.17 290,-118.17 290,-118.17 284,-118.17 278,-112.17 278,-106.17 278,-106.17 278,-44 278,-44 278,-38 284,-32 290,-32"/> | |
<text text-anchor="start" x="290.25" y="-105.62" font-family="Helvetica,sans-Serif" font-weight="bold" font-size="9.00">middleware</text> | |
</g> | |
<g id="clust8" class="cluster"> | |
<title>cluster_src/lib/client</title> | |
<path fill="#ffffff" stroke="black" stroke-width="2" d="M82,-32C82,-32 130,-32 130,-32 136,-32 142,-38 142,-44 142,-44 142,-106.17 142,-106.17 142,-112.17 136,-118.17 130,-118.17 130,-118.17 82,-118.17 82,-118.17 76,-118.17 70,-112.17 70,-106.17 70,-106.17 70,-44 70,-44 70,-38 76,-32 82,-32"/> | |
<text text-anchor="start" x="94.38" y="-105.62" font-family="Helvetica,sans-Serif" font-weight="bold" font-size="9.00">client</text> | |
</g> | |
<g id="clust10" class="cluster"> | |
<title>cluster_src/server</title> | |
<path fill="#ffffff" stroke="black" stroke-width="2" d="M380,-65.75C380,-65.75 603,-65.75 603,-65.75 609,-65.75 615,-71.75 615,-77.75 615,-77.75 615,-139 615,-139 615,-145 609,-151 603,-151 603,-151 380,-151 380,-151 374,-151 368,-145 368,-139 368,-139 368,-77.75 368,-77.75 368,-71.75 374,-65.75 380,-65.75"/> | |
<text text-anchor="start" x="477.25" y="-138.45" font-family="Helvetica,sans-Serif" font-weight="bold" font-size="9.00">server</text> | |
</g> | |
<g id="clust11" class="cluster"> | |
<title>cluster_src/server/config</title> | |
<path fill="#ffffff" stroke="black" stroke-width="2" d="M532,-73.75C532,-73.75 595,-73.75 595,-73.75 601,-73.75 607,-79.75 607,-85.75 607,-85.75 607,-113.25 607,-113.25 607,-119.25 601,-125.25 595,-125.25 595,-125.25 532,-125.25 532,-125.25 526,-125.25 520,-119.25 520,-113.25 520,-113.25 520,-85.75 520,-85.75 520,-79.75 526,-73.75 532,-73.75"/> | |
<text text-anchor="middle" x="563.5" y="-112.7" font-family="Helvetica,sans-Serif" font-weight="bold" font-size="9.00">config</text> | |
</g> | |
<g id="clust12" class="cluster"> | |
<title>cluster_src/shared</title> | |
<path fill="#ffffff" stroke="black" stroke-width="2" d="M635,-16C635,-16 1406,-16 1406,-16 1412,-16 1418,-22 1418,-28 1418,-28 1418,-250 1418,-250 1418,-256 1412,-262 1406,-262 1406,-262 635,-262 635,-262 629,-262 623,-256 623,-250 623,-250 623,-28 623,-28 623,-22 629,-16 635,-16"/> | |
<text text-anchor="middle" x="1020.5" y="-249.45" font-family="Helvetica,sans-Serif" font-weight="bold" font-size="9.00">shared</text> | |
</g> | |
<g id="clust17" class="cluster"> | |
<title>cluster_src/shared/session</title> | |
<path fill="#ffffff" stroke="black" stroke-width="2" d="M655,-159C655,-159 783,-159 783,-159 789,-159 795,-165 795,-171 795,-171 795,-198.5 795,-198.5 795,-204.5 789,-210.5 783,-210.5 783,-210.5 655,-210.5 655,-210.5 649,-210.5 643,-204.5 643,-198.5 643,-198.5 643,-171 643,-171 643,-165 649,-159 655,-159"/> | |
<text text-anchor="middle" x="719" y="-197.95" font-family="Helvetica,sans-Serif" font-weight="bold" font-size="9.00">session</text> | |
</g> | |
<g id="clust13" class="cluster"> | |
<title>cluster_src/shared/offers</title> | |
<path fill="#ffffff" stroke="black" stroke-width="2" d="M815,-24C815,-24 1017,-24 1017,-24 1023,-24 1029,-30 1029,-36 1029,-36 1029,-224.25 1029,-224.25 1029,-230.25 1023,-236.25 1017,-236.25 1017,-236.25 815,-236.25 815,-236.25 809,-236.25 803,-230.25 803,-224.25 803,-224.25 803,-36 803,-36 803,-30 809,-24 815,-24"/> | |
<text text-anchor="start" x="903.25" y="-223.7" font-family="Helvetica,sans-Serif" font-weight="bold" font-size="9.00">offers</text> | |
</g> | |
<g id="clust14" class="cluster"> | |
<title>cluster_src/shared/offers/core</title> | |
<path fill="#ffffff" stroke="black" stroke-width="2" d="M827,-32C827,-32 897,-32 897,-32 903,-32 909,-38 909,-44 909,-44 909,-113.25 909,-113.25 909,-119.25 903,-125.25 897,-125.25 897,-125.25 827,-125.25 827,-125.25 821,-125.25 815,-119.25 815,-113.25 815,-113.25 815,-44 815,-44 815,-38 821,-32 827,-32"/> | |
<text text-anchor="middle" x="862" y="-112.7" font-family="Helvetica,sans-Serif" font-weight="bold" font-size="9.00">core</text> | |
</g> | |
<g id="clust15" class="cluster"> | |
<title>cluster_src/shared/offers/marketplace</title> | |
<path fill="#ffffff" stroke="black" stroke-width="2" d="M835,-159C835,-159 897,-159 897,-159 903,-159 909,-165 909,-171 909,-171 909,-198.5 909,-198.5 909,-204.5 903,-210.5 897,-210.5 897,-210.5 835,-210.5 835,-210.5 829,-210.5 823,-204.5 823,-198.5 823,-198.5 823,-171 823,-171 823,-165 829,-159 835,-159"/> | |
<text text-anchor="middle" x="866" y="-197.95" font-family="Helvetica,sans-Serif" font-weight="bold" font-size="9.00">marketplace</text> | |
</g> | |
<g id="clust16" class="cluster"> | |
<title>cluster_src/shared/offers/ui</title> | |
<path fill="#ffffff" stroke="black" stroke-width="2" d="M929,-73.75C929,-73.75 1009,-73.75 1009,-73.75 1015,-73.75 1021,-79.75 1021,-85.75 1021,-85.75 1021,-191.43 1021,-191.43 1021,-197.43 1015,-203.43 1009,-203.43 1009,-203.43 929,-203.43 929,-203.43 923,-203.43 917,-197.43 917,-191.43 917,-191.43 917,-85.75 917,-85.75 917,-79.75 923,-73.75 929,-73.75"/> | |
<text text-anchor="start" x="965.25" y="-190.88" font-family="Helvetica,sans-Serif" font-weight="bold" font-size="9.00">ui</text> | |
</g> | |
<g id="clust18" class="cluster"> | |
<title>cluster_src/shared/ui</title> | |
<path fill="#ffffff" stroke="black" stroke-width="2" d="M1049,-159C1049,-159 1398,-159 1398,-159 1404,-159 1410,-165 1410,-171 1410,-171 1410,-198.5 1410,-198.5 1410,-204.5 1404,-210.5 1398,-210.5 1398,-210.5 1049,-210.5 1049,-210.5 1043,-210.5 1037,-204.5 1037,-198.5 1037,-198.5 1037,-171 1037,-171 1037,-165 1043,-159 1049,-159"/> | |
<text text-anchor="start" x="1219.75" y="-197.95" font-family="Helvetica,sans-Serif" font-weight="bold" font-size="9.00">ui</text> | |
</g> | |
<!-- src --> | |
<!-- src/app --> | |
<!-- src/app/_server --> | |
<g id="node3" class="node"> | |
<title>src/app/_server</title> | |
<g id="a_node3"><a xlink:href="https://github.com/evenfinancial/cnf-banking/tree/aw/app-router/src/app/_server" xlink:title="_server"> | |
<polygon fill="#ffffcc" stroke="black" points="588,-184.75 535.97,-184.75 534,-182.78 534,-167 586.03,-167 588,-168.97 588,-184.75"/> | |
<polyline fill="none" stroke="black" points="586.03,-182.78 534,-182.78"/> | |
<polyline fill="none" stroke="black" points="586.03,-182.78 586.03,-167"/> | |
<polyline fill="none" stroke="black" points="586.03,-182.78 588,-184.75"/> | |
<text text-anchor="start" x="545.62" y="-172.2" font-family="Helvetica,sans-Serif" font-size="9.00">_server</text> | |
</a> | |
</g> | |
</g> | |
<!-- src/server/config/primitives --> | |
<g id="node4" class="node"> | |
<title>src/server/config/primitives</title> | |
<g id="a_node4"><a xlink:href="https://github.com/evenfinancial/cnf-banking/tree/aw/app-router/src/server/config/primitives" xlink:title="primitives"> | |
<polygon fill="#ccccff" stroke="black" points="598.5,-99.5 545.47,-99.5 543.5,-97.53 543.5,-81.75 596.53,-81.75 598.5,-83.72 598.5,-99.5"/> | |
<polyline fill="none" stroke="black" points="596.53,-97.53 543.5,-97.53"/> | |
<polyline fill="none" stroke="black" points="596.53,-97.53 596.53,-81.75"/> | |
<polyline fill="none" stroke="black" points="596.53,-97.53 598.5,-99.5"/> | |
<text text-anchor="start" x="551.5" y="-86.95" font-family="Helvetica,sans-Serif" font-size="9.00">primitives</text> | |
</a> | |
</g> | |
</g> | |
<!-- src/app/_server->src/server/config/primitives --> | |
<g id="edge1" class="edge"> | |
<title>src/app/_server->src/server/config/primitives</title> | |
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M565.75,-166.75C565.75,-166.75 565.75,-108.94 565.75,-108.94"/> | |
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="567.85,-108.94 565.75,-102.94 563.65,-108.94 567.85,-108.94"/> | |
</g> | |
<!-- src/lib/middleware --> | |
<!-- src/server/config/primitives->src/lib/middleware --> | |
<g id="edge43" class="edge"> | |
<title>src/server/config/primitives->src/lib/middleware</title> | |
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M571,-81.33C571,-75.47 571,-69 571,-69 571,-69 343.71,-69 343.71,-69 343.71,-69 343.71,-80.21 343.71,-80.21"/> | |
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="341.61,-80.21 343.71,-86.21 345.81,-80.21 341.61,-80.21"/> | |
</g> | |
<!-- src/app/partner --> | |
<!-- src/app/partner/[partnerKey] --> | |
<!-- src/app/partner/[partnerKey]/savings --> | |
<!-- src/app/partner/[partnerKey]/savings/_client --> | |
<g id="node8" class="node"> | |
<title>src/app/partner/[partnerKey]/savings/_client</title> | |
<g id="a_node8"><a xlink:href="https://github.com/evenfinancial/cnf-banking/tree/aw/app-router/src/app/partner/[partnerKey]/savings/_client" xlink:title="_client"> | |
<polygon fill="#99faa7" stroke="black" points="493,-342.5 440.97,-342.5 439,-340.53 439,-324.75 491.03,-324.75 493,-326.72 493,-342.5"/> | |
<polyline fill="none" stroke="black" points="491.03,-340.53 439,-340.53"/> | |
<polyline fill="none" stroke="black" points="491.03,-340.53 491.03,-324.75"/> | |
<polyline fill="none" stroke="black" points="491.03,-340.53 493,-342.5"/> | |
<text text-anchor="start" x="452.5" y="-329.95" font-family="Helvetica,sans-Serif" font-size="9.00">_client</text> | |
</a> | |
</g> | |
</g> | |
<!-- src/app/partner/[partnerKey]/savings->src/app/partner/[partnerKey]/savings/_client --> | |
<g id="edge2" class="edge"> | |
<title>src/app/partner/[partnerKey]/savings->src/app/partner/[partnerKey]/savings/_client</title> | |
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M427,-365.45C427,-358.91 427,-338 427,-338 427,-338 429.91,-338 429.91,-338"/> | |
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="429.91,-340.1 435.91,-338 429.91,-335.9 429.91,-340.1"/> | |
</g> | |
<!-- src/lib/types --> | |
<g id="node9" class="node"> | |
<title>src/lib/types</title> | |
<g id="a_node9"><a xlink:href="https://github.com/evenfinancial/cnf-banking/tree/aw/app-router/src/lib/types" xlink:title="types"> | |
<polygon fill="#ffffcc" stroke="black" points="204,-99.5 151.97,-99.5 150,-97.53 150,-81.75 202.03,-81.75 204,-83.72 204,-99.5"/> | |
<polyline fill="none" stroke="black" points="202.03,-97.53 150,-97.53"/> | |
<polyline fill="none" stroke="black" points="202.03,-97.53 202.03,-81.75"/> | |
<polyline fill="none" stroke="black" points="202.03,-97.53 204,-99.5"/> | |
<text text-anchor="start" x="166.12" y="-86.95" font-family="Helvetica,sans-Serif" font-size="9.00">types</text> | |
</a> | |
</g> | |
</g> | |
<!-- src/app/partner/[partnerKey]/savings->src/lib/types --> | |
<g id="edge3" class="edge"> | |
<title>src/app/partner/[partnerKey]/savings->src/lib/types</title> | |
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M424.92,-367C401.42,-367 186.53,-367 186.53,-367 186.53,-367 186.53,-108.82 186.53,-108.82"/> | |
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="188.63,-108.82 186.53,-102.82 184.43,-108.82 188.63,-108.82"/> | |
</g> | |
<!-- src/app/partner/[partnerKey]/savings/_server --> | |
<g id="node10" class="node"> | |
<title>src/app/partner/[partnerKey]/savings/_server</title> | |
<g id="a_node10"><a xlink:href="https://github.com/evenfinancial/cnf-banking/tree/aw/app-router/src/app/partner/[partnerKey]/savings/_server" xlink:title="_server"> | |
<polygon fill="#99faa7" stroke="black" points="498,-311.75 445.97,-311.75 444,-309.78 444,-294 496.03,-294 498,-295.97 498,-311.75"/> | |
<polyline fill="none" stroke="black" points="496.03,-309.78 444,-309.78"/> | |
<polyline fill="none" stroke="black" points="496.03,-309.78 496.03,-294"/> | |
<polyline fill="none" stroke="black" points="496.03,-309.78 498,-311.75"/> | |
<text text-anchor="start" x="455.62" y="-299.2" font-family="Helvetica,sans-Serif" font-size="9.00">_server</text> | |
</a> | |
</g> | |
</g> | |
<!-- src/app/partner/[partnerKey]/savings->src/app/partner/[partnerKey]/savings/_server --> | |
<g id="edge4" class="edge"> | |
<title>src/app/partner/[partnerKey]/savings->src/app/partner/[partnerKey]/savings/_server</title> | |
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M429.18,-367C431.2,-367 433.9,-367 433.9,-367 433.9,-367 433.9,-305 433.9,-305 433.9,-305 434.87,-305 434.87,-305"/> | |
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="434.65,-307.1 440.65,-305 434.65,-302.9 434.65,-307.1"/> | |
</g> | |
<!-- src/shared/session/headers --> | |
<g id="node11" class="node"> | |
<title>src/shared/session/headers</title> | |
<g id="a_node11"><a xlink:href="https://github.com/evenfinancial/cnf-banking/tree/aw/app-router/src/shared/session/headers" xlink:title="headers"> | |
<polygon fill="#33aacc" stroke="black" points="787,-184.75 734.97,-184.75 733,-182.78 733,-167 785.03,-167 787,-168.97 787,-184.75"/> | |
<polyline fill="none" stroke="black" points="785.03,-182.78 733,-182.78"/> | |
<polyline fill="none" stroke="black" points="785.03,-182.78 785.03,-167"/> | |
<polyline fill="none" stroke="black" points="785.03,-182.78 787,-184.75"/> | |
<text text-anchor="start" x="743.12" y="-172.2" font-family="Helvetica,sans-Serif" font-size="9.00">headers</text> | |
</a> | |
</g> | |
</g> | |
<!-- src/app/partner/[partnerKey]/savings->src/shared/session/headers --> | |
<g id="edge5" class="edge"> | |
<title>src/app/partner/[partnerKey]/savings->src/shared/session/headers</title> | |
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M427,-369.35C427,-372.9 427,-380 427,-380 427,-380 769,-380 769,-380 769,-380 769,-194.18 769,-194.18"/> | |
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="771.1,-194.18 769,-188.18 766.9,-194.18 771.1,-194.18"/> | |
</g> | |
<!-- src/app/partner/[partnerKey]/savings/_client->src/lib/types --> | |
<g id="edge23" class="edge"> | |
<title>src/app/partner/[partnerKey]/savings/_client->src/lib/types</title> | |
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M438.62,-328C369.03,-328 190.9,-328 190.9,-328 190.9,-328 190.9,-108.93 190.9,-108.93"/> | |
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="193,-108.93 190.9,-102.93 188.8,-108.93 193,-108.93"/> | |
</g> | |
<!-- src/app/partner/[partnerKey]/savings/_client->src/app/partner/[partnerKey]/savings/_server --> | |
<g id="edge25" class="edge"> | |
<title>src/app/partner/[partnerKey]/savings/_client->src/app/partner/[partnerKey]/savings/_server</title> | |
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M452.17,-324.57C452.17,-324.57 452.17,-320.98 452.17,-320.98"/> | |
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="454.27,-320.98 452.17,-314.98 450.07,-320.98 454.27,-320.98"/> | |
</g> | |
<!-- src/lib/client/suspense --> | |
<g id="node18" class="node"> | |
<title>src/lib/client/suspense</title> | |
<g id="a_node18"><a xlink:href="https://github.com/evenfinancial/cnf-banking/tree/aw/app-router/src/lib/client/suspense" xlink:title="suspense"> | |
<polygon fill="#ffffcc" stroke="black" points="133.88,-57.75 80.1,-57.75 78.12,-55.78 78.12,-40 131.9,-40 133.88,-41.97 133.88,-57.75"/> | |
<polyline fill="none" stroke="black" points="131.9,-55.78 78.12,-55.78"/> | |
<polyline fill="none" stroke="black" points="131.9,-55.78 131.9,-40"/> | |
<polyline fill="none" stroke="black" points="131.9,-55.78 133.88,-57.75"/> | |
<text text-anchor="start" x="86.12" y="-45.2" font-family="Helvetica,sans-Serif" font-size="9.00">suspense</text> | |
</a> | |
</g> | |
</g> | |
<!-- src/app/partner/[partnerKey]/savings/_client->src/lib/client/suspense --> | |
<g id="edge26" class="edge"> | |
<title>src/app/partner/[partnerKey]/savings/_client->src/lib/client/suspense</title> | |
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M438.55,-331C358.45,-331 130.61,-331 130.61,-331 130.61,-331 130.61,-66.94 130.61,-66.94"/> | |
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="132.71,-66.94 130.61,-60.94 128.51,-66.94 132.71,-66.94"/> | |
</g> | |
<!-- src/lib/client --> | |
<!-- src/app/partner/[partnerKey]/savings/_client->src/lib/client --> | |
<g id="edge22" class="edge"> | |
<title>src/app/partner/[partnerKey]/savings/_client->src/lib/client</title> | |
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M438.77,-335C356.97,-335 119,-335 119,-335 119,-335 119,-101.74 119,-101.74"/> | |
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="121.1,-101.74 119,-95.74 116.9,-101.74 121.1,-101.74"/> | |
</g> | |
<!-- src/shared/offers/marketplace/savings --> | |
<g id="node22" class="node"> | |
<title>src/shared/offers/marketplace/savings</title> | |
<g id="a_node22"><a xlink:href="https://github.com/evenfinancial/cnf-banking/tree/aw/app-router/src/shared/offers/marketplace/savings" xlink:title="savings"> | |
<polygon fill="#8adbef" stroke="black" points="901,-184.75 848.97,-184.75 847,-182.78 847,-167 899.03,-167 901,-168.97 901,-184.75"/> | |
<polyline fill="none" stroke="black" points="899.03,-182.78 847,-182.78"/> | |
<polyline fill="none" stroke="black" points="899.03,-182.78 899.03,-167"/> | |
<polyline fill="none" stroke="black" points="899.03,-182.78 901,-184.75"/> | |
<text text-anchor="start" x="858.25" y="-172.2" font-family="Helvetica,sans-Serif" font-size="9.00">savings</text> | |
</a> | |
</g> | |
</g> | |
<!-- src/app/partner/[partnerKey]/savings/_client->src/shared/offers/marketplace/savings --> | |
<g id="edge24" class="edge"> | |
<title>src/app/partner/[partnerKey]/savings/_client->src/shared/offers/marketplace/savings</title> | |
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M460.33,-324.4C460.33,-320.14 460.33,-316 460.33,-316 460.33,-316 874,-316 874,-316 874,-316 874,-194.07 874,-194.07"/> | |
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="876.1,-194.07 874,-188.07 871.9,-194.07 876.1,-194.07"/> | |
</g> | |
<!-- src/shared/ui/AdvertiserDisclosure --> | |
<g id="node23" class="node"> | |
<title>src/shared/ui/AdvertiserDisclosure</title> | |
<g id="a_node23"><a xlink:href="https://github.com/evenfinancial/cnf-banking/tree/aw/app-router/src/shared/ui/AdvertiserDisclosure" xlink:title="AdvertiserDisclosure"> | |
<polygon fill="#ffffcc" stroke="black" points="1336.38,-184.75 1237.6,-184.75 1235.62,-182.78 1235.62,-167 1334.4,-167 1336.38,-168.97 1336.38,-184.75"/> | |
<polyline fill="none" stroke="black" points="1334.4,-182.78 1235.62,-182.78"/> | |
<polyline fill="none" stroke="black" points="1334.4,-182.78 1334.4,-167"/> | |
<polyline fill="none" stroke="black" points="1334.4,-182.78 1336.38,-184.75"/> | |
<text text-anchor="start" x="1243.62" y="-172.2" font-family="Helvetica,sans-Serif" font-size="9.00">AdvertiserDisclosure</text> | |
</a> | |
</g> | |
</g> | |
<!-- src/app/partner/[partnerKey]/savings/_client->src/shared/ui/AdvertiserDisclosure --> | |
<g id="edge27" class="edge"> | |
<title>src/app/partner/[partnerKey]/savings/_client->src/shared/ui/AdvertiserDisclosure</title> | |
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M484.83,-324.7C484.83,-323.14 484.83,-322 484.83,-322 484.83,-322 1286,-322 1286,-322 1286,-322 1286,-194.02 1286,-194.02"/> | |
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1288.1,-194.02 1286,-188.02 1283.9,-194.02 1288.1,-194.02"/> | |
</g> | |
<!-- src/shared/ui/forms --> | |
<g id="node24" class="node"> | |
<title>src/shared/ui/forms</title> | |
<g id="a_node24"><a xlink:href="https://github.com/evenfinancial/cnf-banking/tree/aw/app-router/src/shared/ui/forms" xlink:title="forms"> | |
<polygon fill="#ffffcc" stroke="black" points="1402,-184.75 1349.97,-184.75 1348,-182.78 1348,-167 1400.03,-167 1402,-168.97 1402,-184.75"/> | |
<polyline fill="none" stroke="black" points="1400.03,-182.78 1348,-182.78"/> | |
<polyline fill="none" stroke="black" points="1400.03,-182.78 1400.03,-167"/> | |
<polyline fill="none" stroke="black" points="1400.03,-182.78 1402,-184.75"/> | |
<text text-anchor="start" x="1363.75" y="-172.2" font-family="Helvetica,sans-Serif" font-size="9.00">forms</text> | |
</a> | |
</g> | |
</g> | |
<!-- src/app/partner/[partnerKey]/savings/_client->src/shared/ui/forms --> | |
<g id="edge28" class="edge"> | |
<title>src/app/partner/[partnerKey]/savings/_client->src/shared/ui/forms</title> | |
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M477,-342.96C477,-346.64 477,-350 477,-350 477,-350 1375,-350 1375,-350 1375,-350 1375,-194.24 1375,-194.24"/> | |
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1377.1,-194.24 1375,-188.24 1372.9,-194.24 1377.1,-194.24"/> | |
</g> | |
<!-- src/shared/ui/ResponsiveSidebar --> | |
<g id="node25" class="node"> | |
<title>src/shared/ui/ResponsiveSidebar</title> | |
<g id="a_node25"><a xlink:href="https://github.com/evenfinancial/cnf-banking/tree/aw/app-router/src/shared/ui/ResponsiveSidebar" xlink:title="ResponsiveSidebar"> | |
<polygon fill="#ffffcc" stroke="black" points="1157.5,-184.75 1062.47,-184.75 1060.5,-182.78 1060.5,-167 1155.53,-167 1157.5,-168.97 1157.5,-184.75"/> | |
<polyline fill="none" stroke="black" points="1155.53,-182.78 1060.5,-182.78"/> | |
<polyline fill="none" stroke="black" points="1155.53,-182.78 1155.53,-167"/> | |
<polyline fill="none" stroke="black" points="1155.53,-182.78 1157.5,-184.75"/> | |
<text text-anchor="start" x="1068.5" y="-172.2" font-family="Helvetica,sans-Serif" font-size="9.00">ResponsiveSidebar</text> | |
</a> | |
</g> | |
</g> | |
<!-- src/app/partner/[partnerKey]/savings/_client->src/shared/ui/ResponsiveSidebar --> | |
<g id="edge29" class="edge"> | |
<title>src/app/partner/[partnerKey]/savings/_client->src/shared/ui/ResponsiveSidebar</title> | |
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M468.5,-324.36C468.5,-320.99 468.5,-318 468.5,-318 468.5,-318 1109,-318 1109,-318 1109,-318 1109,-194.2 1109,-194.2"/> | |
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1111.1,-194.2 1109,-188.2 1106.9,-194.2 1111.1,-194.2"/> | |
</g> | |
<!-- src/shared/ui/theme --> | |
<g id="node26" class="node"> | |
<title>src/shared/ui/theme</title> | |
<g id="a_node26"><a xlink:href="https://github.com/evenfinancial/cnf-banking/tree/aw/app-router/src/shared/ui/theme" xlink:title="theme"> | |
<polygon fill="#ffffcc" stroke="black" points="1224,-184.75 1171.97,-184.75 1170,-182.78 1170,-167 1222.03,-167 1224,-168.97 1224,-184.75"/> | |
<polyline fill="none" stroke="black" points="1222.03,-182.78 1170,-182.78"/> | |
<polyline fill="none" stroke="black" points="1222.03,-182.78 1222.03,-167"/> | |
<polyline fill="none" stroke="black" points="1222.03,-182.78 1224,-184.75"/> | |
<text text-anchor="start" x="1184.25" y="-172.2" font-family="Helvetica,sans-Serif" font-size="9.00">theme</text> | |
</a> | |
</g> | |
</g> | |
<!-- src/app/partner/[partnerKey]/savings/_client->src/shared/ui/theme --> | |
<g id="edge30" class="edge"> | |
<title>src/app/partner/[partnerKey]/savings/_client->src/shared/ui/theme</title> | |
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M476.67,-324.31C476.67,-321.92 476.67,-320 476.67,-320 476.67,-320 1197,-320 1197,-320 1197,-320 1197,-193.89 1197,-193.89"/> | |
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1199.1,-193.89 1197,-187.89 1194.9,-193.89 1199.1,-193.89"/> | |
</g> | |
<!-- src/app/partner/[partnerKey]/savings/_server->src/app/_server --> | |
<g id="edge39" class="edge"> | |
<title>src/app/partner/[partnerKey]/savings/_server->src/app/_server</title> | |
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M484.67,-293.68C484.67,-264.36 484.67,-175 484.67,-175 484.67,-175 524.87,-175 524.87,-175"/> | |
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="524.87,-177.1 530.87,-175 524.87,-172.9 524.87,-177.1"/> | |
</g> | |
<!-- src/app/partner/[partnerKey]/savings/_server->src/server/config/primitives --> | |
<g id="edge40" class="edge"> | |
<title>src/app/partner/[partnerKey]/savings/_server->src/server/config/primitives</title> | |
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M498.44,-296C534.48,-296 593.25,-296 593.25,-296 593.25,-296 593.25,-108.98 593.25,-108.98"/> | |
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="595.35,-108.98 593.25,-102.98 591.15,-108.98 595.35,-108.98"/> | |
</g> | |
<!-- src/app/partner/[partnerKey]/savings/_server->src/lib/types --> | |
<g id="edge37" class="edge"> | |
<title>src/app/partner/[partnerKey]/savings/_server->src/lib/types</title> | |
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M443.55,-302C373.81,-302 195.27,-302 195.27,-302 195.27,-302 195.27,-108.98 195.27,-108.98"/> | |
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="197.37,-108.98 195.27,-102.98 193.17,-108.98 197.37,-108.98"/> | |
</g> | |
<!-- src/app/partner/[partnerKey]/savings/_server->src/shared/session/headers --> | |
<g id="edge35" class="edge"> | |
<title>src/app/partner/[partnerKey]/savings/_server->src/shared/session/headers</title> | |
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M498.36,-302C568.81,-302 751,-302 751,-302 751,-302 751,-193.95 751,-193.95"/> | |
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="753.1,-193.95 751,-187.95 748.9,-193.95 753.1,-193.95"/> | |
</g> | |
<!-- src/lib/middleware/accessors --> | |
<g id="node27" class="node"> | |
<title>src/lib/middleware/accessors</title> | |
<g id="a_node27"><a xlink:href="https://github.com/evenfinancial/cnf-banking/tree/aw/app-router/src/lib/middleware/accessors" xlink:title="accessors"> | |
<polygon fill="#ffffcc" stroke="black" points="343.62,-57.75 288.35,-57.75 286.38,-55.78 286.38,-40 341.65,-40 343.62,-41.97 343.62,-57.75"/> | |
<polyline fill="none" stroke="black" points="341.65,-55.78 286.38,-55.78"/> | |
<polyline fill="none" stroke="black" points="341.65,-55.78 341.65,-40"/> | |
<polyline fill="none" stroke="black" points="341.65,-55.78 343.62,-57.75"/> | |
<text text-anchor="start" x="294.38" y="-45.2" font-family="Helvetica,sans-Serif" font-size="9.00">accessors</text> | |
</a> | |
</g> | |
</g> | |
<!-- src/app/partner/[partnerKey]/savings/_server->src/lib/middleware/accessors --> | |
<g id="edge31" class="edge"> | |
<title>src/app/partner/[partnerKey]/savings/_server->src/lib/middleware/accessors</title> | |
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M452,-293.66C452,-247.55 452,-44 452,-44 452,-44 353.05,-44 353.05,-44"/> | |
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="353.05,-41.9 347.05,-44 353.05,-46.1 353.05,-41.9"/> | |
</g> | |
<!-- src/lib/server --> | |
<g id="node28" class="node"> | |
<title>src/lib/server</title> | |
<g id="a_node28"><a xlink:href="https://github.com/evenfinancial/cnf-banking/tree/aw/app-router/src/lib/server" xlink:title="server"> | |
<polygon fill="#ffffcc" stroke="black" points="270,-99.5 217.97,-99.5 216,-97.53 216,-81.75 268.03,-81.75 270,-83.72 270,-99.5"/> | |
<polyline fill="none" stroke="black" points="268.03,-97.53 216,-97.53"/> | |
<polyline fill="none" stroke="black" points="268.03,-97.53 268.03,-81.75"/> | |
<polyline fill="none" stroke="black" points="268.03,-97.53 270,-99.5"/> | |
<text text-anchor="start" x="230.25" y="-86.95" font-family="Helvetica,sans-Serif" font-size="9.00">server</text> | |
</a> | |
</g> | |
</g> | |
<!-- src/app/partner/[partnerKey]/savings/_server->src/lib/server --> | |
<g id="edge32" class="edge"> | |
<title>src/app/partner/[partnerKey]/savings/_server->src/lib/server</title> | |
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M443.95,-299C383.56,-299 243,-299 243,-299 243,-299 243,-108.85 243,-108.85"/> | |
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="245.1,-108.85 243,-102.85 240.9,-108.85 245.1,-108.85"/> | |
</g> | |
<!-- src/server/engine --> | |
<g id="node29" class="node"> | |
<title>src/server/engine</title> | |
<g id="a_node29"><a xlink:href="https://github.com/evenfinancial/cnf-banking/tree/aw/app-router/src/server/engine" xlink:title="engine"> | |
<polygon fill="#ccccff" stroke="black" points="512,-99.5 459.97,-99.5 458,-97.53 458,-81.75 510.03,-81.75 512,-83.72 512,-99.5"/> | |
<polyline fill="none" stroke="black" points="510.03,-97.53 458,-97.53"/> | |
<polyline fill="none" stroke="black" points="510.03,-97.53 510.03,-81.75"/> | |
<polyline fill="none" stroke="black" points="510.03,-97.53 512,-99.5"/> | |
<text text-anchor="start" x="470.75" y="-86.95" font-family="Helvetica,sans-Serif" font-size="9.00">engine</text> | |
</a> | |
</g> | |
</g> | |
<!-- src/app/partner/[partnerKey]/savings/_server->src/server/engine --> | |
<g id="edge33" class="edge"> | |
<title>src/app/partner/[partnerKey]/savings/_server->src/server/engine</title> | |
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M471.33,-293.75C471.33,-293.75 471.33,-108.95 471.33,-108.95"/> | |
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="473.43,-108.95 471.33,-102.95 469.23,-108.95 473.43,-108.95"/> | |
</g> | |
<!-- src/shared/offers --> | |
<!-- src/app/partner/[partnerKey]/savings/_server->src/shared/offers --> | |
<g id="edge34" class="edge"> | |
<title>src/app/partner/[partnerKey]/savings/_server->src/shared/offers</title> | |
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M498.41,-305C579.56,-305 813,-305 813,-305 813,-305 813,-187.12 813,-187.12"/> | |
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="815.1,-187.12 813,-181.12 810.9,-187.12 815.1,-187.12"/> | |
</g> | |
<!-- src/shared/session/state --> | |
<g id="node31" class="node"> | |
<title>src/shared/session/state</title> | |
<g id="a_node31"><a xlink:href="https://github.com/evenfinancial/cnf-banking/tree/aw/app-router/src/shared/session/state" xlink:title="state"> | |
<polygon fill="#33aacc" stroke="black" points="721,-184.75 668.97,-184.75 667,-182.78 667,-167 719.03,-167 721,-168.97 721,-184.75"/> | |
<polyline fill="none" stroke="black" points="719.03,-182.78 667,-182.78"/> | |
<polyline fill="none" stroke="black" points="719.03,-182.78 719.03,-167"/> | |
<polyline fill="none" stroke="black" points="719.03,-182.78 721,-184.75"/> | |
<text text-anchor="start" x="684.25" y="-172.2" font-family="Helvetica,sans-Serif" font-size="9.00">state</text> | |
</a> | |
</g> | |
</g> | |
<!-- src/app/partner/[partnerKey]/savings/_server->src/shared/session/state --> | |
<g id="edge36" class="edge"> | |
<title>src/app/partner/[partnerKey]/savings/_server->src/shared/session/state</title> | |
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M498.34,-299C557.89,-299 694,-299 694,-299 694,-299 694,-194.13 694,-194.13"/> | |
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="696.1,-194.13 694,-188.13 691.9,-194.13 696.1,-194.13"/> | |
</g> | |
<!-- src/app/partner/[partnerKey]/savings/_server->src/lib/middleware --> | |
<g id="edge38" class="edge"> | |
<title>src/app/partner/[partnerKey]/savings/_server->src/lib/middleware</title> | |
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M443.64,-296C405.78,-296 342,-296 342,-296 342,-296 342,-101.4 342,-101.4"/> | |
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="344.1,-101.4 342,-95.4 339.9,-101.4 344.1,-101.4"/> | |
</g> | |
<!-- src/app/partner/[partnerKey]/savings/@bridgeAddon --> | |
<g id="node12" class="node"> | |
<title>src/app/partner/[partnerKey]/savings/@bridgeAddon</title> | |
<g id="a_node12"><a xlink:href="https://github.com/evenfinancial/cnf-banking/tree/aw/app-router/src/app/partner/[partnerKey]/savings/@bridgeAddon" xlink:title="@bridgeAddon"> | |
<polygon fill="#99faa7" stroke="black" points="583.12,-342.5 506.85,-342.5 504.88,-340.53 504.88,-324.75 581.15,-324.75 583.12,-326.72 583.12,-342.5"/> | |
<polyline fill="none" stroke="black" points="581.15,-340.53 504.88,-340.53"/> | |
<polyline fill="none" stroke="black" points="581.15,-340.53 581.15,-324.75"/> | |
<polyline fill="none" stroke="black" points="581.15,-340.53 583.12,-342.5"/> | |
<text text-anchor="start" x="512.88" y="-329.95" font-family="Helvetica,sans-Serif" font-size="9.00">@bridgeAddon</text> | |
</a> | |
</g> | |
</g> | |
<!-- src/app/partner/[partnerKey]/savings/@bridgeAddon->src/lib/types --> | |
<g id="edge11" class="edge"> | |
<title>src/app/partner/[partnerKey]/savings/@bridgeAddon->src/lib/types</title> | |
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M510.57,-324.55C510.57,-300.87 510.57,-239 510.57,-239 510.57,-239 199.63,-239 199.63,-239 199.63,-239 199.63,-108.91 199.63,-108.91"/> | |
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="201.73,-108.91 199.63,-102.91 197.53,-108.91 201.73,-108.91"/> | |
</g> | |
<!-- src/app/partner/[partnerKey]/savings/@bridgeAddon->src/app/partner/[partnerKey]/savings/_server --> | |
<g id="edge10" class="edge"> | |
<title>src/app/partner/[partnerKey]/savings/@bridgeAddon->src/app/partner/[partnerKey]/savings/_server</title> | |
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M509.15,-324.37C509.15,-317.03 509.15,-308 509.15,-308 509.15,-308 507.32,-308 507.32,-308"/> | |
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="507.32,-305.9 501.32,-308 507.32,-310.1 507.32,-305.9"/> | |
</g> | |
<!-- src/server/cms --> | |
<g id="node13" class="node"> | |
<title>src/server/cms</title> | |
<g id="a_node13"><a xlink:href="https://github.com/evenfinancial/cnf-banking/tree/aw/app-router/src/server/cms" xlink:title="cms"> | |
<polygon fill="#ccccff" stroke="black" points="446,-99.5 393.97,-99.5 392,-97.53 392,-81.75 444.03,-81.75 446,-83.72 446,-99.5"/> | |
<polyline fill="none" stroke="black" points="444.03,-97.53 392,-97.53"/> | |
<polyline fill="none" stroke="black" points="444.03,-97.53 444.03,-81.75"/> | |
<polyline fill="none" stroke="black" points="444.03,-97.53 446,-99.5"/> | |
<text text-anchor="start" x="410.75" y="-86.95" font-family="Helvetica,sans-Serif" font-size="9.00">cms</text> | |
</a> | |
</g> | |
</g> | |
<!-- src/app/partner/[partnerKey]/savings/@bridgeAddon->src/server/cms --> | |
<g id="edge6" class="edge"> | |
<title>src/app/partner/[partnerKey]/savings/@bridgeAddon->src/server/cms</title> | |
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M507.73,-324.28C507.73,-318.82 507.73,-313 507.73,-313 507.73,-313 431.35,-313 431.35,-313 431.35,-313 431.35,-108.9 431.35,-108.9"/> | |
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="433.45,-108.9 431.35,-102.9 429.25,-108.9 433.45,-108.9"/> | |
</g> | |
<!-- src/shared/offers/core/model --> | |
<g id="node14" class="node"> | |
<title>src/shared/offers/core/model</title> | |
<g id="a_node14"><a xlink:href="https://github.com/evenfinancial/cnf-banking/tree/aw/app-router/src/shared/offers/core/model" xlink:title="model"> | |
<polygon fill="#8adbef" stroke="black" points="901,-57.75 848.97,-57.75 847,-55.78 847,-40 899.03,-40 901,-41.97 901,-57.75"/> | |
<polyline fill="none" stroke="black" points="899.03,-55.78 847,-55.78"/> | |
<polyline fill="none" stroke="black" points="899.03,-55.78 899.03,-40"/> | |
<polyline fill="none" stroke="black" points="899.03,-55.78 901,-57.75"/> | |
<text text-anchor="start" x="861.25" y="-45.2" font-family="Helvetica,sans-Serif" font-size="9.00">model</text> | |
</a> | |
</g> | |
</g> | |
<!-- src/app/partner/[partnerKey]/savings/@bridgeAddon->src/shared/offers/core/model --> | |
<g id="edge7" class="edge"> | |
<title>src/app/partner/[partnerKey]/savings/@bridgeAddon->src/shared/offers/core/model</title> | |
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M520.1,-324.45C520.1,-275.56 520.1,-48 520.1,-48 520.1,-48 837.52,-48 837.52,-48"/> | |
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="837.52,-50.1 843.52,-48 837.52,-45.9 837.52,-50.1"/> | |
</g> | |
<!-- src/shared/offers/ui --> | |
<!-- src/app/partner/[partnerKey]/savings/@bridgeAddon->src/shared/offers/ui --> | |
<g id="edge8" class="edge"> | |
<title>src/app/partner/[partnerKey]/savings/@bridgeAddon->src/shared/offers/ui</title> | |
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M583.55,-330C681.4,-330 927,-330 927,-330 927,-330 927,-187.05 927,-187.05"/> | |
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="929.1,-187.05 927,-181.05 924.9,-187.05 929.1,-187.05"/> | |
</g> | |
<!-- src/shared/offers/ui/SavingsOfferCard --> | |
<g id="node16" class="node"> | |
<title>src/shared/offers/ui/SavingsOfferCard</title> | |
<g id="a_node16"><a xlink:href="https://github.com/evenfinancial/cnf-banking/tree/aw/app-router/src/shared/offers/ui/SavingsOfferCard" xlink:title="SavingsOfferCard"> | |
<polygon fill="#8adbef" stroke="black" points="1013.38,-99.5 926.6,-99.5 924.62,-97.53 924.62,-81.75 1011.4,-81.75 1013.38,-83.72 1013.38,-99.5"/> | |
<polyline fill="none" stroke="black" points="1011.4,-97.53 924.62,-97.53"/> | |
<polyline fill="none" stroke="black" points="1011.4,-97.53 1011.4,-81.75"/> | |
<polyline fill="none" stroke="black" points="1011.4,-97.53 1013.38,-99.5"/> | |
<text text-anchor="start" x="932.62" y="-86.95" font-family="Helvetica,sans-Serif" font-size="9.00">SavingsOfferCard</text> | |
</a> | |
</g> | |
</g> | |
<!-- src/app/partner/[partnerKey]/savings/@bridgeAddon->src/shared/offers/ui/SavingsOfferCard --> | |
<g id="edge9" class="edge"> | |
<title>src/app/partner/[partnerKey]/savings/@bridgeAddon->src/shared/offers/ui/SavingsOfferCard</title> | |
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M583.6,-336C686.97,-336 956.99,-336 956.99,-336 956.99,-336 956.99,-108.94 956.99,-108.94"/> | |
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="959.09,-108.94 956.99,-102.94 954.89,-108.94 959.09,-108.94"/> | |
</g> | |
<!-- src/shared/offers/ui->src/shared/offers/ui/SavingsOfferCard --> | |
<g id="edge47" class="edge"> | |
<title>src/shared/offers/ui->src/shared/offers/ui/SavingsOfferCard</title> | |
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M927,-173.77C927,-173.77 927,-108.93 927,-108.93"/> | |
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="929.1,-108.93 927,-102.93 924.9,-108.93 929.1,-108.93"/> | |
</g> | |
<!-- src/app/partner/[partnerKey]/savings/@list --> | |
<!-- src/app/partner/[partnerKey]/savings/@list->src/lib/types --> | |
<g id="edge12" class="edge"> | |
<title>src/app/partner/[partnerKey]/savings/@list->src/lib/types</title> | |
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M447,-393.08C447,-397.97 447,-410 447,-410 447,-410 182.17,-410 182.17,-410 182.17,-410 182.17,-108.84 182.17,-108.84"/> | |
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="184.27,-108.84 182.17,-102.84 180.07,-108.84 184.27,-108.84"/> | |
</g> | |
<!-- src/app/partner/[partnerKey]/savings/@list->src/app/partner/[partnerKey]/savings/_server --> | |
<g id="edge15" class="edge"> | |
<title>src/app/partner/[partnerKey]/savings/@list->src/app/partner/[partnerKey]/savings/_server</title> | |
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M444.97,-391C441.9,-391 436.45,-391 436.45,-391 436.45,-391 436.45,-308 436.45,-308 436.45,-308 437.18,-308 437.18,-308"/> | |
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="434.78,-310.1 440.78,-308 434.78,-305.9 434.78,-310.1"/> | |
</g> | |
<!-- src/app/partner/[partnerKey]/savings/@list->src/shared/offers/ui/SavingsOfferCard --> | |
<g id="edge14" class="edge"> | |
<title>src/app/partner/[partnerKey]/savings/@list->src/shared/offers/ui/SavingsOfferCard</title> | |
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M448.95,-391C484.18,-391 985.18,-391 985.18,-391 985.18,-391 985.18,-108.94 985.18,-108.94"/> | |
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="987.28,-108.94 985.18,-102.94 983.08,-108.94 987.28,-108.94"/> | |
</g> | |
<!-- src/app/partner/[partnerKey]/savings/@list->src/lib/client/suspense --> | |
<g id="edge13" class="edge"> | |
<title>src/app/partner/[partnerKey]/savings/@list->src/lib/client/suspense</title> | |
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M448.76,-390C454.75,-390 473.9,-390 473.9,-390 473.9,-390 473.9,-384 473.9,-384 473.9,-384 124.07,-384 124.07,-384 124.07,-384 124.07,-67.19 124.07,-67.19"/> | |
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="126.17,-67.19 124.07,-61.19 121.97,-67.19 126.17,-67.19"/> | |
</g> | |
<!-- src/app/partner/[partnerKey]/savings/@list/_client --> | |
<g id="node19" class="node"> | |
<title>src/app/partner/[partnerKey]/savings/@list/_client</title> | |
<g id="a_node19"><a xlink:href="https://github.com/evenfinancial/cnf-banking/tree/aw/app-router/src/app/partner/[partnerKey]/savings/@list/_client" xlink:title="_client"> | |
<polygon fill="#99faa7" stroke="black" points="499,-376.25 446.97,-376.25 445,-374.28 445,-358.5 497.03,-358.5 499,-360.47 499,-376.25"/> | |
<polyline fill="none" stroke="black" points="497.03,-374.28 445,-374.28"/> | |
<polyline fill="none" stroke="black" points="497.03,-374.28 497.03,-358.5"/> | |
<polyline fill="none" stroke="black" points="497.03,-374.28 499,-376.25"/> | |
<text text-anchor="start" x="458.5" y="-363.7" font-family="Helvetica,sans-Serif" font-size="9.00">_client</text> | |
</a> | |
</g> | |
</g> | |
<!-- src/app/partner/[partnerKey]/savings/@list->src/app/partner/[partnerKey]/savings/@list/_client --> | |
<g id="edge16" class="edge"> | |
<title>src/app/partner/[partnerKey]/savings/@list->src/app/partner/[partnerKey]/savings/@list/_client</title> | |
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M447,-388.87C447,-388.87 447,-385.36 447,-385.36"/> | |
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="449.1,-385.36 447,-379.36 444.9,-385.36 449.1,-385.36"/> | |
</g> | |
<!-- src/app/partner/[partnerKey]/savings/@list/_client->src/app/partner/[partnerKey]/savings/_client --> | |
<g id="edge17" class="edge"> | |
<title>src/app/partner/[partnerKey]/savings/@list/_client->src/app/partner/[partnerKey]/savings/_client</title> | |
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M461,-358.15C461,-358.15 461,-351.6 461,-351.6"/> | |
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="463.1,-351.6 461,-345.6 458.9,-351.6 463.1,-351.6"/> | |
</g> | |
<!-- src/app/partner/[partnerKey]/savings/@list/_client->src/shared/offers/core/model --> | |
<g id="edge19" class="edge"> | |
<title>src/app/partner/[partnerKey]/savings/@list/_client->src/shared/offers/core/model</title> | |
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M499.47,-362C551.86,-362 660.9,-362 660.9,-362 660.9,-362 660.9,-53 660.9,-53 660.9,-53 837.58,-53 837.58,-53"/> | |
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="837.58,-55.1 843.58,-53 837.58,-50.9 837.58,-55.1"/> | |
</g> | |
<!-- src/app/partner/[partnerKey]/savings/@list/_client->src/shared/offers/ui --> | |
<g id="edge21" class="edge"> | |
<title>src/app/partner/[partnerKey]/savings/@list/_client->src/shared/offers/ui</title> | |
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M499.24,-371C595.35,-371 912.81,-371 912.81,-371 912.81,-371 912.81,-175 912.81,-175 912.81,-175 916.26,-175 916.26,-175"/> | |
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="916.26,-177.1 922.26,-175 916.26,-172.9 916.26,-177.1"/> | |
</g> | |
<!-- src/app/partner/[partnerKey]/savings/@list/_client->src/lib/client/suspense --> | |
<g id="edge18" class="edge"> | |
<title>src/app/partner/[partnerKey]/savings/@list/_client->src/lib/client/suspense</title> | |
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M444.67,-362C363.15,-362 127.34,-362 127.34,-362 127.34,-362 127.34,-67.25 127.34,-67.25"/> | |
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="129.44,-67.25 127.34,-61.25 125.24,-67.25 129.44,-67.25"/> | |
</g> | |
<!-- src/shared/offers/core/registration --> | |
<g id="node20" class="node"> | |
<title>src/shared/offers/core/registration</title> | |
<g id="a_node20"><a xlink:href="https://github.com/evenfinancial/cnf-banking/tree/aw/app-router/src/shared/offers/core/registration" xlink:title="registration"> | |
<polygon fill="#8adbef" stroke="black" points="900.88,-99.5 841.1,-99.5 839.12,-97.53 839.12,-81.75 898.9,-81.75 900.88,-83.72 900.88,-99.5"/> | |
<polyline fill="none" stroke="black" points="898.9,-97.53 839.12,-97.53"/> | |
<polyline fill="none" stroke="black" points="898.9,-97.53 898.9,-81.75"/> | |
<polyline fill="none" stroke="black" points="898.9,-97.53 900.88,-99.5"/> | |
<text text-anchor="start" x="847.12" y="-86.95" font-family="Helvetica,sans-Serif" font-size="9.00">registration</text> | |
</a> | |
</g> | |
</g> | |
<!-- src/app/partner/[partnerKey]/savings/@list/_client->src/shared/offers/core/registration --> | |
<g id="edge20" class="edge"> | |
<title>src/app/partner/[partnerKey]/savings/@list/_client->src/shared/offers/core/registration</title> | |
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M499.29,-367C584.98,-367 843.06,-367 843.06,-367 843.06,-367 843.06,-108.82 843.06,-108.82"/> | |
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="845.16,-108.82 843.06,-102.82 840.96,-108.82 845.16,-108.82"/> | |
</g> | |
<!-- src/shared/offers/core/registration->src/shared/offers/core/model --> | |
<g id="edge44" class="edge"> | |
<title>src/shared/offers/core/registration->src/shared/offers/core/model</title> | |
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M873.94,-81.36C873.94,-81.36 873.94,-67.11 873.94,-67.11"/> | |
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="876.04,-67.11 873.94,-61.11 871.84,-67.11 876.04,-67.11"/> | |
</g> | |
<!-- src/lib/client->src/lib/client/suspense --> | |
<g id="edge41" class="edge"> | |
<title>src/lib/client->src/lib/client/suspense</title> | |
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M119,-88.38C119,-88.38 119,-67 119,-67"/> | |
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="121.1,-67 119,-61 116.9,-67 121.1,-67"/> | |
</g> | |
<!-- src/shared/offers/marketplace/savings->src/shared/offers/core/registration --> | |
<g id="edge45" class="edge"> | |
<title>src/shared/offers/marketplace/savings->src/shared/offers/core/registration</title> | |
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M882.92,-166.75C882.92,-166.75 882.92,-108.94 882.92,-108.94"/> | |
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="885.02,-108.94 882.92,-102.94 880.82,-108.94 885.02,-108.94"/> | |
</g> | |
<!-- src/shared/offers/marketplace/savings->src/server/engine --> | |
<g id="edge46" class="edge"> | |
<title>src/shared/offers/marketplace/savings->src/server/engine</title> | |
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M864.96,-166.98C864.96,-151.68 864.96,-122 864.96,-122 864.96,-122 506.3,-122 506.3,-122 506.3,-122 506.3,-108.87 506.3,-108.87"/> | |
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="508.4,-108.87 506.3,-102.87 504.2,-108.87 508.4,-108.87"/> | |
</g> | |
<!-- src/shared/session/state->src/lib/middleware --> | |
<g id="edge48" class="edge"> | |
<title>src/shared/session/state->src/lib/middleware</title> | |
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M694,-166.83C694,-157.4 694,-144 694,-144 694,-144 373,-144 373,-144 373,-144 373,-90 373,-90 373,-90 353.03,-90 353.03,-90"/> | |
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="353.03,-87.9 347.03,-90 353.03,-92.1 353.03,-87.9"/> | |
</g> | |
<!-- src/lib/middleware->src/lib/middleware/accessors --> | |
<g id="edge42" class="edge"> | |
<title>src/lib/middleware->src/lib/middleware/accessors</title> | |
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M341.91,-88.38C341.91,-88.38 341.91,-67 341.91,-67"/> | |
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="344.01,-67 341.91,-61 339.81,-67 344.01,-67"/> | |
</g> | |
<!-- src/lib --> | |
<!-- src/server --> | |
<!-- src/server/config --> | |
<!-- src/shared --> | |
<!-- src/shared/offers/core --> | |
<!-- src/shared/offers/marketplace --> | |
<!-- src/shared/session --> | |
<!-- src/shared/ui --> | |
</g> | |
</svg> | |
<script>var gMode = new Mode(); | |
var title2ElementMap = (function makeElementMap() { | |
/** @type {NodeListOf<SVGGElement>} */ | |
var nodes = document.querySelectorAll(".node"); | |
/** @type {NodeListOf<SVGGElement>} */ | |
var edges = document.querySelectorAll(".edge"); | |
return new Title2ElementMap(edges, nodes); | |
})(); | |
function getHoverHandler(pTitle2ElementMap) { | |
/** @type {string} */ | |
var currentHighlightedTitle; | |
/** @param {MouseEvent} pMouseEvent */ | |
return function hoverHighlightHandler(pMouseEvent) { | |
var closestNodeOrEdge = pMouseEvent.target.closest(".edge, .node"); | |
var closestTitleText = getTitleText(closestNodeOrEdge); | |
if ( | |
!(currentHighlightedTitle === closestTitleText) && | |
gMode.get() === gMode.HOVER | |
) { | |
resetNodesAndEdges(); | |
addHighlight(closestNodeOrEdge); | |
pTitle2ElementMap.get(closestTitleText).forEach(addHighlight); | |
currentHighlightedTitle = closestTitleText; | |
} | |
}; | |
} | |
function getSelectHandler(pTitle2ElementMap) { | |
/** @type {string} */ | |
var currentHighlightedTitle; | |
/** @param {MouseEvent} pMouseEvent */ | |
return function selectHighlightHandler(pMouseEvent) { | |
pMouseEvent.preventDefault(); | |
var closestNodeOrEdge = pMouseEvent.target.closest(".edge, .node"); | |
var closestTitleText = getTitleText(closestNodeOrEdge); | |
if (!!closestNodeOrEdge) { | |
gMode.setToSelect(); | |
} else { | |
gMode.setToHover(); | |
} | |
if (!(currentHighlightedTitle === closestTitleText)) { | |
resetNodesAndEdges(); | |
addHighlight(closestNodeOrEdge); | |
pTitle2ElementMap.get(closestTitleText).forEach(addHighlight); | |
currentHighlightedTitle = closestTitleText; | |
} | |
}; | |
} | |
function Mode() { | |
var HOVER = 1; | |
var SELECT = 2; | |
function setToHover() { | |
this._mode = HOVER; | |
} | |
function setToSelect() { | |
this._mode = SELECT; | |
} | |
function get() { | |
return this._mode || HOVER; | |
} | |
return { | |
HOVER: HOVER, | |
SELECT: SELECT, | |
setToHover: setToHover, | |
setToSelect: setToSelect, | |
get: get, | |
}; | |
} | |
/** | |
* | |
* @param {SVGGelement[]} pEdges | |
* @param {SVGGElement[]} pNodes | |
* @return {{get: (pTitleText:string) => SVGGElement[]}} | |
*/ | |
function Title2ElementMap(pEdges, pNodes) { | |
/* {{[key: string]: SVGGElement[]}} */ | |
var elementMap = buildMap(pEdges, pNodes); | |
/** | |
* @param {NodeListOf<SVGGElement>} pEdges | |
* @param {NodeListOf<SVGGElement>} pNodes | |
* @return {{[key: string]: SVGGElement[]}} | |
*/ | |
function buildMap(pEdges, pNodes) { | |
var title2NodeMap = buildTitle2NodeMap(pNodes); | |
return nodeListToArray(pEdges).reduce(addEdgeToMap(title2NodeMap), {}); | |
} | |
/** | |
* @param {NodeListOf<SVGGElement>} pNodes | |
* @return {{[key: string]: SVGGElement}} | |
*/ | |
function buildTitle2NodeMap(pNodes) { | |
return nodeListToArray(pNodes).reduce(addNodeToMap, {}); | |
} | |
function addNodeToMap(pMap, pNode) { | |
var titleText = getTitleText(pNode); | |
if (titleText) { | |
pMap[titleText] = pNode; | |
} | |
return pMap; | |
} | |
function addEdgeToMap(pNodeMap) { | |
return function (pEdgeMap, pEdge) { | |
/** @type {string} */ | |
var titleText = getTitleText(pEdge); | |
if (titleText) { | |
var edge = pryEdgeFromTitle(titleText); | |
pEdgeMap[titleText] = [pNodeMap[edge.from], pNodeMap[edge.to]]; | |
(pEdgeMap[edge.from] || (pEdgeMap[edge.from] = [])).push(pEdge); | |
(pEdgeMap[edge.to] || (pEdgeMap[edge.to] = [])).push(pEdge); | |
} | |
return pEdgeMap; | |
}; | |
} | |
/** | |
* | |
* @param {string} pString | |
* @return {{from?: string; to?:string;}} | |
*/ | |
function pryEdgeFromTitle(pString) { | |
var nodeNames = pString.split(/\s*->\s*/); | |
return { | |
from: nodeNames.shift(), | |
to: nodeNames.shift(), | |
}; | |
} | |
/** | |
* | |
* @param {string} pTitleText | |
* @return {SVGGElement[]} | |
*/ | |
function get(pTitleText) { | |
return (pTitleText && elementMap[pTitleText]) || []; | |
} | |
return { | |
get: get, | |
}; | |
} | |
/** | |
* @param {SVGGElement} pGElement | |
* @return {string?} | |
*/ | |
function getTitleText(pGElement) { | |
/** @type {SVGTitleElement} */ | |
var title = pGElement && pGElement.querySelector("title"); | |
/** @type {string} */ | |
var titleText = title && title.textContent; | |
if (titleText) { | |
titleText = titleText.trim(); | |
} | |
return titleText; | |
} | |
/** | |
* @param {NodeListOf<Element>} pNodeList | |
* @return {Element[]} | |
*/ | |
function nodeListToArray(pNodeList) { | |
var lReturnValue = []; | |
pNodeList.forEach(function (pElement) { | |
lReturnValue.push(pElement); | |
}); | |
return lReturnValue; | |
} | |
function resetNodesAndEdges() { | |
nodeListToArray(document.querySelectorAll(".current")).forEach( | |
removeHighlight | |
); | |
} | |
/** | |
* @param {SVGGElement} pGElement | |
*/ | |
function removeHighlight(pGElement) { | |
if (pGElement && pGElement.classList) { | |
pGElement.classList.remove("current"); | |
} | |
} | |
/** | |
* @param {SVGGElement} pGroup | |
*/ | |
function addHighlight(pGroup) { | |
if (pGroup && pGroup.classList) { | |
pGroup.classList.add("current"); | |
} | |
} | |
var hints = { | |
HIDDEN: 1, | |
SHOWN: 2, | |
state: this.HIDDEN, | |
show: function () { | |
document.getElementById("hints").removeAttribute("style"); | |
hints.state = hints.SHOWN; | |
}, | |
hide: function () { | |
document.getElementById("hints").style = "display:none"; | |
hints.state = hints.HIDDEN; | |
}, | |
toggle: function () { | |
if ((hints.state || hints.HIDDEN) === hints.HIDDEN) { | |
hints.show(); | |
} else { | |
hints.hide(); | |
} | |
}, | |
}; | |
/** @param {KeyboardEvent} pKeyboardEvent */ | |
function keyboardEventHandler(pKeyboardEvent) { | |
if (pKeyboardEvent.key === "Escape") { | |
resetNodesAndEdges(); | |
gMode.setToHover(); | |
hints.hide(); | |
} | |
if (pKeyboardEvent.key === "F1") { | |
pKeyboardEvent.preventDefault(); | |
hints.toggle(); | |
} | |
} | |
document.addEventListener("contextmenu", getSelectHandler(title2ElementMap)); | |
document.addEventListener("mouseover", getHoverHandler(title2ElementMap)); | |
document.addEventListener("keydown", keyboardEventHandler); | |
document.getElementById("close-hints").addEventListener("click", hints.hide); | |
document.getElementById("button_help").addEventListener("click", hints.toggle); | |
</script> </body> | |
</html> |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment