RAW SVG SOURCE
expand to inspect — 16154 bytes
<svg xmlns="http://www.w3.org/2000/svg" width="560" height="400" viewBox="0 0 560 400"><rect x="0" y="0" width="560" height="400" fill="#F4F4EF" stroke="#EDEDEA" stroke-width="1" rx="10"/><text x="24" y="35.0" fill="#3673B0" font-family="'JetBrains Mono', 'SF Mono', monospace" font-size="11.0" font-weight="700" text-anchor="start" dominant-baseline="hanging" letter-spacing="2.0">ENABLER · PHASE 2 · ID MAPPING</text><text x="24" y="47.0" fill="#26265E" font-family="'DM Sans', system-ui, sans-serif" font-size="22.0" font-weight="800" text-anchor="start" dominant-baseline="hanging" letter-spacing="-0.5">ID mapping broker for middleware</text><rect x="24" y="77.0" width="72.0" height="2" rx="1" fill="#3FC7A0"/><g transform="translate(24.0, 104.36819174540916) scale(0.7302549474059548)"><style>#my-svg{font-family:DM Sans,sans-serif;font-size:16px;fill:#26265E;}@keyframes edge-animation-frame{from{stroke-dashoffset:0;}}@keyframes dash{to{stroke-dashoffset:0;}}#my-svg .edge-animation-slow{stroke-dasharray:9,5!important;stroke-dashoffset:900;animation:dash 50s linear infinite;stroke-linecap:round;}#my-svg .edge-animation-fast{stroke-dasharray:9,5!important;stroke-dashoffset:900;animation:dash 20s linear infinite;stroke-linecap:round;}#my-svg .error-icon{fill:#552222;}#my-svg .error-text{fill:#552222;stroke:#552222;}#my-svg .edge-thickness-normal{stroke-width:1px;}#my-svg .edge-thickness-thick{stroke-width:3.5px;}#my-svg .edge-pattern-solid{stroke-dasharray:0;}#my-svg .edge-thickness-invisible{stroke-width:0;fill:none;}#my-svg .edge-pattern-dashed{stroke-dasharray:3;}#my-svg .edge-pattern-dotted{stroke-dasharray:2;}#my-svg .marker{fill:#788492;stroke:#788492;}#my-svg .marker.cross{stroke:#788492;}#my-svg svg{font-family:DM Sans,sans-serif;font-size:16px;}#my-svg p{margin:0;}#my-svg .label{font-family:DM Sans,sans-serif;color:#26265E;}#my-svg .cluster-label text{fill:#26265E;}#my-svg .cluster-label span{color:#26265E;}#my-svg .cluster-label span p{background-color:transparent;}#my-svg .label text,#my-svg span{fill:#26265E;color:#26265E;}#my-svg .node rect,#my-svg .node circle,#my-svg .node ellipse,#my-svg .node polygon,#my-svg .node path{fill:#ECECFF;stroke:#9370DB;stroke-width:1px;}#my-svg .rough-node .label text,#my-svg .node .label text,#my-svg .image-shape .label,#my-svg .icon-shape .label{text-anchor:middle;}#my-svg .node .katex path{fill:#000;stroke:#000;stroke-width:1px;}#my-svg .rough-node .label,#my-svg .node .label,#my-svg .image-shape .label,#my-svg .icon-shape .label{text-align:center;}#my-svg .node.clickable{cursor:pointer;}#my-svg .root .anchor path{fill:#788492!important;stroke-width:0;stroke:#788492;}#my-svg .arrowheadPath{fill:#333333;}#my-svg .edgePath .path{stroke:#788492;stroke-width:2.0px;}#my-svg .flowchart-link{stroke:#788492;fill:none;}#my-svg .edgeLabel{background-color:rgba(232,232,232, 0.8);text-align:center;}#my-svg .edgeLabel p{background-color:rgba(232,232,232, 0.8);}#my-svg .edgeLabel rect{opacity:0.5;background-color:rgba(232,232,232, 0.8);fill:rgba(232,232,232, 0.8);}#my-svg .labelBkg{background-color:rgba(232, 232, 232, 0.5);}#my-svg .cluster rect{fill:#ffffde;stroke:#aaaa33;stroke-width:1px;}#my-svg .cluster text{fill:#26265E;}#my-svg .cluster span{color:#26265E;}#my-svg div.mermaidTooltip{position:absolute;text-align:center;max-width:200px;padding:2px;font-family:DM Sans,sans-serif;font-size:12px;background:hsl(80, 100%, 96.2745098039%);border:1px solid #aaaa33;border-radius:2px;pointer-events:none;z-index:100;}#my-svg .flowchartTitleText{text-anchor:middle;font-size:18px;fill:#26265E;}#my-svg rect.text{fill:none;stroke-width:0;}#my-svg .icon-shape,#my-svg .image-shape{background-color:rgba(232,232,232, 0.8);text-align:center;}#my-svg .icon-shape p,#my-svg .image-shape p{background-color:rgba(232,232,232, 0.8);padding:2px;}#my-svg .icon-shape rect,#my-svg .image-shape rect{opacity:0.5;background-color:rgba(232,232,232, 0.8);fill:rgba(232,232,232, 0.8);}#my-svg .label-icon{display:inline-block;height:1em;overflow:visible;vertical-align:-0.125em;}#my-svg .node .label-icon path{fill:currentColor;stroke:revert;stroke-width:revert;}#my-svg :root{--mermaid-font-family:"trebuchet ms",verdana,arial,sans-serif;}</style><g><marker id="my-svg_flowchart-v2-pointEnd" class="marker flowchart-v2" viewBox="0 0 10 10" refX="5" refY="5" markerUnits="userSpaceOnUse" markerWidth="8" markerHeight="8" orient="auto"><path d="M 0 0 L 10 5 L 0 10 z" class="arrowMarkerPath" style="stroke-width: 1; stroke-dasharray: 1, 0;" fill="#788492" stroke="#788492"/></marker><marker id="my-svg_flowchart-v2-pointStart" class="marker flowchart-v2" viewBox="0 0 10 10" refX="4.5" refY="5" markerUnits="userSpaceOnUse" markerWidth="8" markerHeight="8" orient="auto"><path d="M 0 5 L 10 10 L 10 0 z" class="arrowMarkerPath" style="stroke-width: 1; stroke-dasharray: 1, 0;" fill="#788492" stroke="#788492"/></marker><marker id="my-svg_flowchart-v2-circleEnd" class="marker flowchart-v2" viewBox="0 0 10 10" refX="11" refY="5" markerUnits="userSpaceOnUse" markerWidth="11" markerHeight="11" orient="auto"><circle cx="5" cy="5" r="5" class="arrowMarkerPath" style="stroke-width: 1; stroke-dasharray: 1, 0;"/></marker><marker id="my-svg_flowchart-v2-circleStart" class="marker flowchart-v2" viewBox="0 0 10 10" refX="-1" refY="5" markerUnits="userSpaceOnUse" markerWidth="11" markerHeight="11" orient="auto"><circle cx="5" cy="5" r="5" class="arrowMarkerPath" style="stroke-width: 1; stroke-dasharray: 1, 0;"/></marker><marker id="my-svg_flowchart-v2-crossEnd" class="marker cross flowchart-v2" viewBox="0 0 11 11" refX="12" refY="5.2" markerUnits="userSpaceOnUse" markerWidth="11" markerHeight="11" orient="auto"><path d="M 1,1 l 9,9 M 10,1 l -9,9" class="arrowMarkerPath" style="stroke-width: 2; stroke-dasharray: 1, 0;" fill="#788492" stroke="#788492"/></marker><marker id="my-svg_flowchart-v2-crossStart" class="marker cross flowchart-v2" viewBox="0 0 11 11" refX="-1" refY="5.2" markerUnits="userSpaceOnUse" markerWidth="11" markerHeight="11" orient="auto"><path d="M 1,1 l 9,9 M 10,1 l -9,9" class="arrowMarkerPath" style="stroke-width: 2; stroke-dasharray: 1, 0;" fill="#788492" stroke="#788492"/></marker><g class="root"><g class="clusters"/><g class="edgePaths"><path d="M137.813,152.454L146.242,152.454C154.672,152.454,171.531,152.454,187.724,152.454C203.917,152.454,219.443,152.454,227.206,152.454L234.969,152.454" id="L_M_B_0" class="edge-thickness-normal edge-pattern-solid edge-thickness-normal edge-pattern-solid flowchart-link" style=";" data-edge="true" data-et="edge" data-id="L_M_B_0" data-points="W3sieCI6MTM3LjgxMjUsInkiOjE1Mi40NTQyNjE3Nzk3ODUxNn0seyJ4IjoxODguMzkwNjI1LCJ5IjoxNTIuNDU0MjYxNzc5Nzg1MTZ9LHsieCI6MjM4Ljk2ODc1LCJ5IjoxNTIuNDU0MjYxNzc5Nzg1MTZ9XQ==" marker-end="url(#my-svg_flowchart-v2-pointEnd)" stroke="#788492" fill="none"/><path d="M322.423,128.454L337.613,114.25C352.803,100.045,383.183,71.636,417.065,57.432C450.948,43.227,488.333,43.227,507.026,43.227L525.719,43.227" id="L_B_MAP_0" class="edge-thickness-normal edge-pattern-solid edge-thickness-normal edge-pattern-solid flowchart-link" style=";" data-edge="true" data-et="edge" data-id="L_B_MAP_0" data-points="W3sieCI6MzIyLjQyMjc5NTg4OTc1NzksInkiOjEyOC40NTQyNjE3Nzk3ODUxNn0seyJ4Ijo0MTMuNTYyNSwieSI6NDMuMjI3MTMwODg5ODkyNTh9LHsieCI6NTI5LjcxODc1LCJ5Ijo0My4yMjcxMzA4ODk4OTI1OH1d" marker-end="url(#my-svg_flowchart-v2-pointEnd)" stroke="#788492" fill="none"/><path d="M354.547,152.454L364.383,152.454C374.219,152.454,393.891,152.454,421.716,152.454C449.542,152.454,485.521,152.454,503.51,152.454L521.5,152.454" id="L_B_P_0" class="edge-thickness-normal edge-pattern-dotted edge-thickness-normal edge-pattern-solid flowchart-link" style=";" data-edge="true" data-et="edge" data-id="L_B_P_0" data-points="W3sieCI6MzU0LjU0Njg3NSwieSI6MTUyLjQ1NDI2MTc3OTc4NTE2fSx7IngiOjQxMy41NjI1LCJ5IjoxNTIuNDU0MjYxNzc5Nzg1MTZ9LHsieCI6NTI1LjUsInkiOjE1Mi40NTQyNjE3Nzk3ODUxNn1d" marker-end="url(#my-svg_flowchart-v2-pointEnd)" stroke="#788492" fill="none"/><path d="M325.363,176.454L340.063,188.788C354.763,201.121,384.163,225.788,408.032,238.121C431.901,250.454,450.24,250.454,459.409,250.454L468.578,250.454" id="L_B_C_0" class="edge-thickness-normal edge-pattern-solid edge-thickness-normal edge-pattern-solid flowchart-link" style=";" data-edge="true" data-et="edge" data-id="L_B_C_0" data-points="W3sieCI6MzI1LjM2MzA0MjA5MTgzNjc1LCJ5IjoxNzYuNDU0MjYxNzc5Nzg1MTZ9LHsieCI6NDEzLjU2MjUsInkiOjI1MC40NTQyNjE3Nzk3ODUxNn0seyJ4Ijo0NzIuNTc4MTI1LCJ5IjoyNTAuNDU0MjYxNzc5Nzg1MTZ9XQ==" marker-end="url(#my-svg_flowchart-v2-pointEnd)" stroke="#788492" fill="none"/></g><g class="edgeLabels"><g class="edgeLabel" transform="translate(188.390625, 152.45426177978516)"><g class="label" data-id="L_M_B_0" transform="translate(-25.578125, -10.58984375)"><g><rect class="background" style="" x="-2" y="0" width="51.15625" height="21.1796875" fill="none" stroke="none"/><text y="-10.1" style=""><tspan class="text-outer-tspan" x="0" y="-0.1em" dy="1.1em"><tspan font-style="normal" class="text-inner-tspan" font-weight="normal">lookup</tspan></tspan></text></g></g></g><g class="edgeLabel" transform="translate(413.5625, 43.22713088989258)"><g class="label" data-id="L_B_MAP_0" transform="translate(-27.796875, -10.5)"><g><rect class="background" style="" x="-2" y="0" width="55.59375" height="21" fill="none" stroke="none"/><text y="-10.1" style=""><tspan class="text-outer-tspan" x="0" y="-0.1em" dy="1.1em"><tspan font-style="normal" class="text-inner-tspan" font-weight="normal">cached</tspan></tspan></text></g></g></g><g class="edgeLabel" transform="translate(413.5625, 152.45426177978516)"><g class="label" data-id="L_B_P_0" transform="translate(-34.015625, -10.58984375)"><g><rect class="background" style="" x="-2" y="0" width="68.03125" height="21.1796875" fill="none" stroke="none"/><text y="-10.1" style=""><tspan class="text-outer-tspan" x="0" y="-0.1em" dy="1.1em"><tspan font-style="normal" class="text-inner-tspan" font-weight="normal">provision</tspan></tspan></text></g></g></g><g class="edgeLabel" transform="translate(413.5625, 250.45426177978516)"><g class="label" data-id="L_B_C_0" transform="translate(-18.4453125, -10.5)"><g><rect class="background" style="" x="-2" y="0" width="36.890625" height="21" fill="none" stroke="none"/><text y="-10.1" style=""><tspan class="text-outer-tspan" x="0" y="-0.1em" dy="1.1em"><tspan font-style="normal" class="text-inner-tspan" font-weight="normal">miss</tspan></tspan></text></g></g></g></g><g class="nodes"><g class="node default" id="flowchart-M-0" transform="translate(72.90625, 152.45426177978516)"><rect class="basic label-container" style="" x="-64.90625" y="-24" width="129.8125" height="48"/><g class="label" style="" transform="translate(-40.90625, -12)"><rect/><text x="40.90625" y="12.0" text-anchor="middle" dominant-baseline="middle" fill="#26265E" font-family="DM Sans, sans-serif" font-size="13" font-weight="600">Middleware</text></g></g><g class="node default" id="flowchart-B-1" transform="translate(296.7578125, 152.45426177978516)"><rect class="basic label-container" style="" x="-57.7890625" y="-24" width="115.578125" height="48"/><g class="label" style="" transform="translate(-33.7890625, -12)"><rect/><text x="33.7890625" y="12.0" text-anchor="middle" dominant-baseline="middle" fill="#26265E" font-family="DM Sans, sans-serif" font-size="13" font-weight="600">ID Broker</text></g></g><g class="node default" id="flowchart-MAP-3" transform="translate(582.8515625, 43.22713088989258)"><path d="M0,11.487399500033781 a53.1328125,11.487399500033781 0,0,0 106.265625,0 a53.1328125,11.487399500033781 0,0,0 -106.265625,0 l0,47.48739950003378 a53.1328125,11.487399500033781 0,0,0 106.265625,0 l0,-47.48739950003378" class="basic label-container" style="" transform="translate(-53.1328125, -35.231099250050676)"/><g class="label" style="" transform="translate(-47.1328125, -4)"><rect/><text x="47.1328125" y="12.0" text-anchor="middle" dominant-baseline="middle" fill="#26265E" font-family="DM Sans, sans-serif" font-size="13" font-weight="600">ID Map Store</text></g></g><g class="node default" id="flowchart-P-5" transform="translate(582.8515625, 152.45426177978516)"><rect class="basic label-container" style="" x="-57.3515625" y="-24" width="114.703125" height="48"/><g class="label" style="" transform="translate(-33.3515625, -12)"><rect/><text x="33.3515625" y="12.0" text-anchor="middle" dominant-baseline="middle" fill="#26265E" font-family="DM Sans, sans-serif" font-size="13" font-weight="600">Publisher</text></g></g><g class="node default" id="flowchart-C-7" transform="translate(582.8515625, 250.45426177978516)"><rect class="basic label-container" style="" x="-110.2734375" y="-24" width="220.546875" height="48"/><g class="label" style="" transform="translate(-86.2734375, -12)"><rect/><text x="86.2734375" y="12.0" text-anchor="middle" dominant-baseline="middle" fill="#26265E" font-family="DM Sans, sans-serif" font-size="13" font-weight="600">Caller: report unmapped</text></g></g></g></g></g></g><circle cx="516.0" cy="115.0" r="4.0" fill="none" stroke="#3673B0" stroke-width="2.6"/><line x1="516.0" y1="119.0" x2="516.0" y2="125.39999999999999" stroke="#3673B0" stroke-width="2.6" stroke-linecap="round"/><circle cx="516.0" cy="127.8" r="2.4" fill="#3673B0" stroke="#3673B0" stroke-width="2.6"/><line x1="512.5358983848622" y1="113.0" x2="506.99333580064183" y2="109.80000000000001" stroke="#3673B0" stroke-width="2.6" stroke-linecap="round"/><circle cx="504.9148748315592" cy="108.60000000000001" r="2.4" fill="#3673B0" stroke="#3673B0" stroke-width="2.6"/><line x1="519.4641016151378" y1="113.0" x2="525.006664199358" y2="109.8" stroke="#3673B0" stroke-width="2.6" stroke-linecap="round"/><circle cx="527.0851251684408" cy="108.6" r="2.4" fill="#3673B0" stroke="#3673B0" stroke-width="2.6"/><rect x="0" y="344" width="490" height="56" fill="#F4F4EF"/><line x1="0" y1="344" x2="490" y2="344" stroke="#EDEDEA" stroke-width="1"/><line x1="94.26666666666667" y1="372.0" x2="232.4" y2="372.0" stroke="#3FC7A0" stroke-width="1.5"/><path d="M 228.8 368.4 L 232.4 372.0 L 228.8 375.6" fill="none" stroke="#3FC7A0" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/><line x1="257.6" y1="372.0" x2="395.73333333333335" y2="372.0" stroke="#3FC7A0" stroke-width="1.5"/><path d="M 392.1333333333333 368.4 L 395.73333333333335 372.0 L 392.1333333333333 375.6" fill="none" stroke="#3FC7A0" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/><circle cx="81.66666666666667" cy="372.0" r="9.0" fill="#2BA87F" stroke="#2BA87F" stroke-width="1.5" opacity="1"/><path d="M 78.06666666666668 372.0 L 81.21666666666667 375.15 L 86.16666666666667 368.4" fill="none" stroke="#F4F4EF" stroke-width="1.6" stroke-linecap="round" stroke-linejoin="round"/><text x="95.16666666666667" y="372.0" fill="#26265E" font-family="'JetBrains Mono', 'SF Mono', monospace" font-size="9.0" font-weight="700" text-anchor="start" dominant-baseline="middle" letter-spacing="1.5">REVIEWED</text><circle cx="245.0" cy="372.0" r="9.0" fill="#2BA87F" stroke="#2BA87F" stroke-width="1.5" opacity="1"/><path d="M 241.4 372.0 L 244.55 375.15 L 249.5 368.4" fill="none" stroke="#F4F4EF" stroke-width="1.6" stroke-linecap="round" stroke-linejoin="round"/><text x="258.5" y="372.0" fill="#26265E" font-family="'JetBrains Mono', 'SF Mono', monospace" font-size="9.0" font-weight="700" text-anchor="start" dominant-baseline="middle" letter-spacing="1.5">ACCEPTED</text><circle cx="408.33333333333337" cy="372.0" r="9.0" fill="#FFFFFF" stroke="#3FC7A0" stroke-width="1.5" opacity="1"/><text x="421.83333333333337" y="372.0" fill="#26265E" font-family="'JetBrains Mono', 'SF Mono', monospace" font-size="9.0" font-weight="700" text-anchor="start" dominant-baseline="middle" letter-spacing="1.5">VERIFIED</text><rect x="480" y="358.0" width="56" height="28" fill="#26265E" rx="14.0"/><text x="508.0" y="372.0" fill="#F4F4EF" font-family="'DM Sans', system-ui, sans-serif" font-size="11.0" font-weight="800" text-anchor="middle" dominant-baseline="middle">4h</text></svg>