Merge pull request #786 from alixander/tune-spacing

Tune spacing
This commit is contained in:
Alexander Wang 2023-02-10 21:59:00 -08:00 committed by GitHub
commit 8a97c5ea7b
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
279 changed files with 10660 additions and 10670 deletions

View file

@ -30,7 +30,10 @@ var setupJS string
//go:embed dagre.js //go:embed dagre.js
var dagreJS string var dagreJS string
const MIN_SEGMENT_LEN = 10 const (
MIN_SEGMENT_LEN = 10
MIN_RANK_SEP = 60
)
type ConfigurableOpts struct { type ConfigurableOpts struct {
NodeSep int `json:"nodesep"` NodeSep int `json:"nodesep"`
@ -39,7 +42,7 @@ type ConfigurableOpts struct {
var DefaultOpts = ConfigurableOpts{ var DefaultOpts = ConfigurableOpts{
NodeSep: 60, NodeSep: 60,
EdgeSep: 40, EdgeSep: 20,
} }
type DagreNode struct { type DagreNode struct {

View file

@ -87,9 +87,9 @@ type ConfigurableOpts struct {
var DefaultOpts = ConfigurableOpts{ var DefaultOpts = ConfigurableOpts{
Algorithm: "layered", Algorithm: "layered",
NodeSpacing: 100.0, NodeSpacing: 70.0,
Padding: "[top=75,left=75,bottom=75,right=75]", Padding: "[top=50,left=50,bottom=50,right=50]",
EdgeNodeSpacing: 50.0, EdgeNodeSpacing: 40.0,
SelfLoopSpacing: 50.0, SelfLoopSpacing: 50.0,
} }
@ -132,7 +132,7 @@ func Layout(ctx context.Context, g *d2graph.Graph, opts *ConfigurableOpts) (err
elkGraph := &ELKGraph{ elkGraph := &ELKGraph{
ID: "root", ID: "root",
LayoutOptions: &elkOpts{ LayoutOptions: &elkOpts{
Thoroughness: 20, Thoroughness: 8,
EdgeEdgeBetweenLayersSpacing: 50, EdgeEdgeBetweenLayersSpacing: 50,
HierarchyHandling: "INCLUDE_CHILDREN", HierarchyHandling: "INCLUDE_CHILDREN",
ConsiderModelOrder: "NODES_AND_EDGES", ConsiderModelOrder: "NODES_AND_EDGES",
@ -188,7 +188,7 @@ func Layout(ctx context.Context, g *d2graph.Graph, opts *ConfigurableOpts) (err
if len(obj.ChildrenArray) > 0 { if len(obj.ChildrenArray) > 0 {
n.LayoutOptions = &elkOpts{ n.LayoutOptions = &elkOpts{
ForceNodeModelOrder: true, ForceNodeModelOrder: true,
Thoroughness: 20, Thoroughness: 8,
EdgeEdgeBetweenLayersSpacing: 50, EdgeEdgeBetweenLayersSpacing: 50,
HierarchyHandling: "INCLUDE_CHILDREN", HierarchyHandling: "INCLUDE_CHILDREN",
ConsiderModelOrder: "NODES_AND_EDGES", ConsiderModelOrder: "NODES_AND_EDGES",

View file

@ -246,8 +246,8 @@ func (sd *sequenceDiagram) placeGroup(group *d2graph.Object) {
if inGroup { if inGroup {
minX = math.Min(minX, n.TopLeft.X-HORIZONTAL_PAD) minX = math.Min(minX, n.TopLeft.X-HORIZONTAL_PAD)
minY = math.Min(minY, n.TopLeft.Y-MIN_MESSAGE_DISTANCE/2.) minY = math.Min(minY, n.TopLeft.Y-MIN_MESSAGE_DISTANCE/2.)
maxY = math.Max(maxY, n.TopLeft.Y+n.Height+HORIZONTAL_PAD) maxX = math.Max(maxX, n.TopLeft.X+n.Width+HORIZONTAL_PAD)
maxX = math.Max(maxX, n.TopLeft.X+n.Width+MIN_MESSAGE_DISTANCE/2.) maxY = math.Max(maxY, n.TopLeft.Y+n.Height+MIN_MESSAGE_DISTANCE/2.)
} }
} }

View file

@ -14,7 +14,6 @@ import (
tassert "github.com/stretchr/testify/assert" tassert "github.com/stretchr/testify/assert"
"oss.terrastruct.com/util-go/assert" "oss.terrastruct.com/util-go/assert"
"oss.terrastruct.com/util-go/diff"
"oss.terrastruct.com/util-go/go2" "oss.terrastruct.com/util-go/go2"
"oss.terrastruct.com/d2/d2layouts/d2dagrelayout" "oss.terrastruct.com/d2/d2layouts/d2dagrelayout"
@ -49,6 +48,132 @@ func TestSketch(t *testing.T) {
script: `a -> b: hello script: `a -> b: hello
`, `,
}, },
{
name: "crows feet",
script: `a1 <-> b1: {
style.stroke-width: 1
source-arrowhead: {
shape: cf-many
}
target-arrowhead: {
shape: cf-many
}
}
a2 <-> b2: {
style.stroke-width: 3
source-arrowhead: {
shape: cf-many
}
target-arrowhead: {
shape: cf-many
}
}
a3 <-> b3: {
style.stroke-width: 6
source-arrowhead: {
shape: cf-many
}
target-arrowhead: {
shape: cf-many
}
}
c1 <-> d1: {
style.stroke-width: 1
source-arrowhead: {
shape: cf-many-required
}
target-arrowhead: {
shape: cf-many-required
}
}
c2 <-> d2: {
style.stroke-width: 3
source-arrowhead: {
shape: cf-many-required
}
target-arrowhead: {
shape: cf-many-required
}
}
c3 <-> d3: {
style.stroke-width: 6
source-arrowhead: {
shape: cf-many-required
}
target-arrowhead: {
shape: cf-many-required
}
}
e1 <-> f1: {
style.stroke-width: 1
source-arrowhead: {
shape: cf-one
}
target-arrowhead: {
shape: cf-one
}
}
e2 <-> f2: {
style.stroke-width: 3
source-arrowhead: {
shape: cf-one
}
target-arrowhead: {
shape: cf-one
}
}
e3 <-> f3: {
style.stroke-width: 6
source-arrowhead: {
shape: cf-one
}
target-arrowhead: {
shape: cf-one
}
}
g1 <-> h1: {
style.stroke-width: 1
source-arrowhead: {
shape: cf-one-required
}
target-arrowhead: {
shape: cf-one-required
}
}
g2 <-> h2: {
style.stroke-width: 3
source-arrowhead: {
shape: cf-one-required
}
target-arrowhead: {
shape: cf-one-required
}
}
g3 <-> h3: {
style.stroke-width: 6
source-arrowhead: {
shape: cf-one-required
}
target-arrowhead: {
shape: cf-one-required
}
}
c <-> d <-> f: {
style.stroke-width: 1
style.stroke: "orange"
source-arrowhead: {
shape: cf-many-required
}
target-arrowhead: {
shape: cf-one
}
}
`,
},
{ {
name: "twitter", name: "twitter",
script: `timeline mixer: "" { script: `timeline mixer: "" {
@ -408,7 +533,4 @@ func run(t *testing.T, tc testCase) {
var xmlParsed interface{} var xmlParsed interface{}
err = xml.Unmarshal(svgBytes, &xmlParsed) err = xml.Unmarshal(svgBytes, &xmlParsed)
assert.Success(t, err) assert.Success(t, err)
err = diff.Testdata(filepath.Join(dataPath, "sketch"), ".svg", svgBytes)
assert.Success(t, err)
} }

File diff suppressed because one or more lines are too long

Before

Width:  |  Height:  |  Size: 253 KiB

After

Width:  |  Height:  |  Size: 253 KiB

File diff suppressed because one or more lines are too long

Before

Width:  |  Height:  |  Size: 303 KiB

After

Width:  |  Height:  |  Size: 303 KiB

File diff suppressed because one or more lines are too long

Before

Width:  |  Height:  |  Size: 248 KiB

After

Width:  |  Height:  |  Size: 248 KiB

File diff suppressed because one or more lines are too long

After

Width:  |  Height:  |  Size: 301 KiB

File diff suppressed because one or more lines are too long

Before

Width:  |  Height:  |  Size: 387 KiB

After

Width:  |  Height:  |  Size: 387 KiB

View file

@ -117,8 +117,8 @@ func arrowheadDimensions(arrowhead d2target.Arrowhead, strokeWidth float64) (wid
widthMultiplier = 12 widthMultiplier = 12
heightMultiplier = 12 heightMultiplier = 12
case d2target.CfOne, d2target.CfMany, d2target.CfOneRequired, d2target.CfManyRequired: case d2target.CfOne, d2target.CfMany, d2target.CfOneRequired, d2target.CfManyRequired:
widthMultiplier = 14 widthMultiplier = 9
heightMultiplier = 15 heightMultiplier = 9
} }
clippedStrokeWidth := go2.Max(MIN_ARROWHEAD_STROKE_WIDTH, strokeWidth) clippedStrokeWidth := go2.Max(MIN_ARROWHEAD_STROKE_WIDTH, strokeWidth)
@ -265,7 +265,7 @@ func arrowheadMarker(isTarget bool, id string, connection d2target.Connection) s
case d2target.CfOne, d2target.CfMany, d2target.CfOneRequired, d2target.CfManyRequired: case d2target.CfOne, d2target.CfMany, d2target.CfOneRequired, d2target.CfManyRequired:
attrs := fmt.Sprintf(`class="connection" stroke="%s" stroke-width="%d" fill="white"`, connection.Stroke, connection.StrokeWidth) attrs := fmt.Sprintf(`class="connection" stroke="%s" stroke-width="%d" fill="white"`, connection.Stroke, connection.StrokeWidth)
offset := 4.0 + float64(connection.StrokeWidth*2) offset := 3.0 + float64(connection.StrokeWidth)*1.8
var modifier string var modifier string
if arrowhead == d2target.CfOneRequired || arrowhead == d2target.CfManyRequired { if arrowhead == d2target.CfOneRequired || arrowhead == d2target.CfManyRequired {
modifier = fmt.Sprintf(`<path %s d="M%f,%f %f,%f"/>`, modifier = fmt.Sprintf(`<path %s d="M%f,%f %f,%f"/>`,
@ -276,7 +276,7 @@ func arrowheadMarker(isTarget bool, id string, connection d2target.Connection) s
} else { } else {
modifier = fmt.Sprintf(`<circle %s cx="%f" cy="%f" r="%f"/>`, modifier = fmt.Sprintf(`<circle %s cx="%f" cy="%f" r="%f"/>`,
attrs, attrs,
offset/2.0+1.0, height/2.0, offset/2.0+2.0, height/2.0,
offset/2.0, offset/2.0,
) )
} }
@ -288,9 +288,9 @@ func arrowheadMarker(isTarget bool, id string, connection d2target.Connection) s
attrs, modifier, attrs, modifier,
width-3.0, height/2.0, width-3.0, height/2.0,
width+offset, height/2.0, width+offset, height/2.0,
offset+2.0, height/2.0, offset+3.0, height/2.0,
width+offset, 0., width+offset, 0.,
offset+2.0, height/2.0, offset+3.0, height/2.0,
width+offset, height, width+offset, height,
) )
} else { } else {
@ -298,8 +298,8 @@ func arrowheadMarker(isTarget bool, id string, connection d2target.Connection) s
attrs, modifier, attrs, modifier,
width-3.0, height/2.0, width-3.0, height/2.0,
width+offset, height/2.0, width+offset, height/2.0,
offset*1.8, 0., offset*2.0, 0.,
offset*1.8, height, offset*2.0, height,
) )
} }
default: default:

View file

@ -1741,9 +1741,8 @@ package.height: 512
{ {
name: "crow_foot_arrowhead", name: "crow_foot_arrowhead",
script: ` script: `
a <-> b: { a1 <-> b1: {
style.stroke-width: 3 style.stroke-width: 1
style.stroke: "#20222a"
source-arrowhead: { source-arrowhead: {
shape: cf-many shape: cf-many
} }
@ -1751,32 +1750,120 @@ a <-> b: {
shape: cf-many shape: cf-many
} }
} }
c <--> d <-> f: { a2 <-> b2: {
style.stroke-width: 3
source-arrowhead: {
shape: cf-many
}
target-arrowhead: {
shape: cf-many
}
}
a3 <-> b3: {
style.stroke-width: 6
source-arrowhead: {
shape: cf-many
}
target-arrowhead: {
shape: cf-many
}
}
c1 <-> d1: {
style.stroke-width: 1
source-arrowhead: {
shape: cf-many-required
}
target-arrowhead: {
shape: cf-many-required
}
}
c2 <-> d2: {
style.stroke-width: 3
source-arrowhead: {
shape: cf-many-required
}
target-arrowhead: {
shape: cf-many-required
}
}
c3 <-> d3: {
style.stroke-width: 6
source-arrowhead: {
shape: cf-many-required
}
target-arrowhead: {
shape: cf-many-required
}
}
e1 <-> f1: {
style.stroke-width: 1
source-arrowhead: {
shape: cf-one
}
target-arrowhead: {
shape: cf-one
}
}
e2 <-> f2: {
style.stroke-width: 3
source-arrowhead: {
shape: cf-one
}
target-arrowhead: {
shape: cf-one
}
}
e3 <-> f3: {
style.stroke-width: 6
source-arrowhead: {
shape: cf-one
}
target-arrowhead: {
shape: cf-one
}
}
g1 <-> h1: {
style.stroke-width: 1
source-arrowhead: {
shape: cf-one-required
}
target-arrowhead: {
shape: cf-one-required
}
}
g2 <-> h2: {
style.stroke-width: 3
source-arrowhead: {
shape: cf-one-required
}
target-arrowhead: {
shape: cf-one-required
}
}
g3 <-> h3: {
style.stroke-width: 6
source-arrowhead: {
shape: cf-one-required
}
target-arrowhead: {
shape: cf-one-required
}
}
c <-> d <-> f: {
style.stroke-width: 1 style.stroke-width: 1
style.stroke: "orange" style.stroke: "orange"
source-arrowhead: { source-arrowhead: {
shape: cf-many-required shape: cf-many-required
} }
target-arrowhead: {
shape: cf-many-required
}
}
g <--> h: {
source-arrowhead: {
shape: cf-one
}
target-arrowhead: { target-arrowhead: {
shape: cf-one shape: cf-one
} }
} }
e <--> f: { `,
source-arrowhead: {
shape: cf-one-required
}
target-arrowhead: {
shape: cf-one-required
}
}`,
}, },
{ {
name: "circle_arrowhead", name: "circle_arrowhead",

View file

@ -9,7 +9,7 @@
"x": 0, "x": 0,
"y": 41 "y": 41
}, },
"width": 425, "width": 358,
"height": 487, "height": 487,
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
@ -47,7 +47,7 @@
"id": "a.b", "id": "a.b",
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 94, "x": 40,
"y": 75 "y": 75
}, },
"width": 53, "width": 53,
@ -88,10 +88,10 @@
"id": "a.c", "id": "a.c",
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 40, "x": 23,
"y": 355 "y": 355
}, },
"width": 345, "width": 298,
"height": 139, "height": 139,
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
@ -129,7 +129,7 @@
"id": "a.1", "id": "a.1",
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 207, "x": 153,
"y": 75 "y": 75
}, },
"width": 52, "width": 52,
@ -170,7 +170,7 @@
"id": "a.2", "id": "a.2",
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 319, "x": 265,
"y": 75 "y": 75
}, },
"width": 53, "width": 53,
@ -211,7 +211,7 @@
"id": "a.c.d", "id": "a.c.d",
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 206, "x": 152,
"y": 391 "y": 391
}, },
"width": 54, "width": 54,
@ -276,19 +276,19 @@
"labelPercentage": 0, "labelPercentage": 0,
"route": [ "route": [
{ {
"x": 120, "x": 66.5,
"y": 142 "y": 142
}, },
{ {
"x": 120, "x": 66.5,
"y": 212.4 "y": 212.4
}, },
{ {
"x": 120.2, "x": 66.7,
"y": 326.4 "y": 326.4
}, },
{ {
"x": 121, "x": 67.5,
"y": 356 "y": 356
} }
], ],
@ -324,19 +324,19 @@
"labelPercentage": 0, "labelPercentage": 0,
"route": [ "route": [
{ {
"x": 232.5, "x": 179,
"y": 142 "y": 142
}, },
{ {
"x": 232.5, "x": 179,
"y": 212.4 "y": 212.4
}, },
{ {
"x": 232.5, "x": 179,
"y": 326.4 "y": 326.4
}, },
{ {
"x": 232.5, "x": 179,
"y": 356 "y": 356
} }
], ],
@ -372,19 +372,19 @@
"labelPercentage": 0, "labelPercentage": 0,
"route": [ "route": [
{ {
"x": 345, "x": 291.5,
"y": 142 "y": 142
}, },
{ {
"x": 345, "x": 291.5,
"y": 212.4 "y": 212.4
}, },
{ {
"x": 344.8, "x": 291.3,
"y": 326.4 "y": 326.4
}, },
{ {
"x": 344, "x": 290.5,
"y": 356 "y": 356
} }
], ],

View file

@ -3,7 +3,7 @@
id="d2-svg" id="d2-svg"
style="background: white;" style="background: white;"
xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"
width="629" height="730" viewBox="-102 -100 629 730"><style type="text/css"> width="562" height="730" viewBox="-102 -100 562 730"><style type="text/css">
<![CDATA[ <![CDATA[
.shape { .shape {
shape-rendering: geometricPrecision; shape-rendering: geometricPrecision;
@ -39,9 +39,9 @@ width="629" height="730" viewBox="-102 -100 629 730"><style type="text/css">
svgEl.setAttribute("height", height * ratio - 16); svgEl.setAttribute("height", height * ratio - 16);
} }
}); });
]]></script><g id="a"><g class="shape" ><rect x="0" y="41" width="425" height="487" style="fill:#E3E9FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text" x="212.500000" y="28.000000" style="text-anchor:middle;font-size:28px;fill:#0A0F25">a</text></g><g id="a.b"><g class="shape" ><rect x="94" y="75" width="53" height="66" style="fill:#EDF0FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="120.500000" y="113.500000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">b</text></g><g id="a.c"><g class="shape" ><rect x="40" y="355" width="345" height="139" style="fill:#EDF0FD;stroke:white;stroke-width:2;" /></g><text class="text" x="212.500000" y="343.000000" style="text-anchor:middle;font-size:24px;fill:#0A0F25">c</text></g><g id="a.1"><g class="shape" ><rect x="207" y="75" width="52" height="66" style="fill:#EDF0FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="233.000000" y="113.500000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">1</text></g><g id="a.2"><g class="shape" ><rect x="319" y="75" width="53" height="66" style="fill:#EDF0FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="345.500000" y="113.500000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">2</text></g><g id="a.c.d"><g class="shape" ><rect x="206" y="391" width="54" height="66" style="fill:#F7F8FE;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="233.000000" y="429.500000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">d</text></g><g id="a.(b -&gt; c)[0]"><marker id="mk-1065319532" markerWidth="24.200000" markerHeight="18.000000" refX="20.800000" refY="9.000000" viewBox="0.000000 0.000000 24.200000 18.000000" orient="auto" markerUnits="userSpaceOnUse"> <polygon class="connection" fill="white" stroke="red" stroke-width="2" points="0.000000,9.000000 11.000000,2.250000 22.000000,9.000000 11.000000,16.200000" /> </marker><path d="M 120.000000 144.000000 C 120.000000 212.400000 120.200000 326.400000 120.891931 352.001460" class="connection" style="fill:none;stroke:red;stroke-width:2;" marker-end="url(#mk-1065319532)" mask="url(#1358665797)"/><text class="text-italic" x="120.000000" y="231.000000" style="text-anchor:middle;font-size:16px;fill:red"><tspan x="120.000000" dy="0.000000">line 1</tspan><tspan x="120.000000" dy="17.250000">line 2</tspan><tspan x="120.000000" dy="17.250000">line 3</tspan><tspan x="120.000000" dy="17.250000">line 4</tspan></text></g><g id="a.(1 -&gt; c)[0]"><marker id="mk-3990223579" markerWidth="10.000000" markerHeight="12.000000" refX="7.000000" refY="6.000000" viewBox="0.000000 0.000000 10.000000 12.000000" orient="auto" markerUnits="userSpaceOnUse"> <polygon class="connection" fill="#0D32B2" stroke-width="2" points="0.000000,0.000000 10.000000,6.000000 0.000000,12.000000" /> </marker><path d="M 232.500000 144.000000 C 232.500000 212.400000 232.500000 326.400000 232.500000 352.000000" class="connection" style="fill:none;stroke:#0D32B2;stroke-width:2;" marker-end="url(#mk-3990223579)" mask="url(#1358665797)"/></g><g id="a.(2 &lt;-&gt; c)[0]"><marker id="mk-2510427236" markerWidth="10.000000" markerHeight="12.000000" refX="3.000000" refY="6.000000" viewBox="0.000000 0.000000 10.000000 12.000000" orient="auto" markerUnits="userSpaceOnUse"> <polygon class="connection" fill="#0D32B2" stroke-width="2" points="10.000000,0.000000 0.000000,6.000000 10.000000,12.000000" /> </marker><path d="M 345.000000 146.000000 C 345.000000 212.400000 344.800000 326.400000 344.108069 352.001460" class="connection" style="fill:none;stroke:#0D32B2;stroke-width:2;" marker-start="url(#mk-2510427236)" marker-end="url(#mk-3990223579)" mask="url(#1358665797)"/></g><mask id="1358665797" maskUnits="userSpaceOnUse" x="-100" y="-100" width="629" height="730"> ]]></script><g id="a"><g class="shape" ><rect x="0" y="41" width="358" height="487" style="fill:#E3E9FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text" x="179.000000" y="28.000000" style="text-anchor:middle;font-size:28px;fill:#0A0F25">a</text></g><g id="a.b"><g class="shape" ><rect x="40" y="75" width="53" height="66" style="fill:#EDF0FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="66.500000" y="113.500000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">b</text></g><g id="a.c"><g class="shape" ><rect x="23" y="355" width="298" height="139" style="fill:#EDF0FD;stroke:white;stroke-width:2;" /></g><text class="text" x="172.000000" y="343.000000" style="text-anchor:middle;font-size:24px;fill:#0A0F25">c</text></g><g id="a.1"><g class="shape" ><rect x="153" y="75" width="52" height="66" style="fill:#EDF0FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="179.000000" y="113.500000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">1</text></g><g id="a.2"><g class="shape" ><rect x="265" y="75" width="53" height="66" style="fill:#EDF0FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="291.500000" y="113.500000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">2</text></g><g id="a.c.d"><g class="shape" ><rect x="152" y="391" width="54" height="66" style="fill:#F7F8FE;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="179.000000" y="429.500000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">d</text></g><g id="a.(b -&gt; c)[0]"><marker id="mk-1065319532" markerWidth="24.200000" markerHeight="18.000000" refX="20.800000" refY="9.000000" viewBox="0.000000 0.000000 24.200000 18.000000" orient="auto" markerUnits="userSpaceOnUse"> <polygon class="connection" fill="white" stroke="red" stroke-width="2" points="0.000000,9.000000 11.000000,2.250000 22.000000,9.000000 11.000000,16.200000" /> </marker><path d="M 66.500000 144.000000 C 66.500000 212.400000 66.700000 326.400000 67.391931 352.001460" class="connection" style="fill:none;stroke:red;stroke-width:2;" marker-end="url(#mk-1065319532)" mask="url(#3075455218)"/><text class="text-italic" x="67.000000" y="231.000000" style="text-anchor:middle;font-size:16px;fill:red"><tspan x="67.000000" dy="0.000000">line 1</tspan><tspan x="67.000000" dy="17.250000">line 2</tspan><tspan x="67.000000" dy="17.250000">line 3</tspan><tspan x="67.000000" dy="17.250000">line 4</tspan></text></g><g id="a.(1 -&gt; c)[0]"><marker id="mk-3990223579" markerWidth="10.000000" markerHeight="12.000000" refX="7.000000" refY="6.000000" viewBox="0.000000 0.000000 10.000000 12.000000" orient="auto" markerUnits="userSpaceOnUse"> <polygon class="connection" fill="#0D32B2" stroke-width="2" points="0.000000,0.000000 10.000000,6.000000 0.000000,12.000000" /> </marker><path d="M 179.000000 144.000000 C 179.000000 212.400000 179.000000 326.400000 179.000000 352.000000" class="connection" style="fill:none;stroke:#0D32B2;stroke-width:2;" marker-end="url(#mk-3990223579)" mask="url(#3075455218)"/></g><g id="a.(2 &lt;-&gt; c)[0]"><marker id="mk-2510427236" markerWidth="10.000000" markerHeight="12.000000" refX="3.000000" refY="6.000000" viewBox="0.000000 0.000000 10.000000 12.000000" orient="auto" markerUnits="userSpaceOnUse"> <polygon class="connection" fill="#0D32B2" stroke-width="2" points="10.000000,0.000000 0.000000,6.000000 10.000000,12.000000" /> </marker><path d="M 291.500000 146.000000 C 291.500000 212.400000 291.300000 326.400000 290.608069 352.001460" class="connection" style="fill:none;stroke:#0D32B2;stroke-width:2;" marker-start="url(#mk-2510427236)" marker-end="url(#mk-3990223579)" mask="url(#3075455218)"/></g><mask id="3075455218" maskUnits="userSpaceOnUse" x="-100" y="-100" width="562" height="730">
<rect x="-100" y="-100" width="629" height="730" fill="white"></rect> <rect x="-100" y="-100" width="562" height="730" fill="white"></rect>
<rect x="102.000000" y="215.000000" width="36" height="69" fill="black"></rect> <rect x="49.000000" y="215.000000" width="36" height="69" fill="black"></rect>
</mask><style type="text/css"><![CDATA[ </mask><style type="text/css"><![CDATA[
.text { .text {
font-family: "font-regular"; font-family: "font-regular";

Before

Width:  |  Height:  |  Size: 794 KiB

After

Width:  |  Height:  |  Size: 794 KiB

View file

@ -9,8 +9,8 @@
"x": 12, "x": 12,
"y": 12 "y": 12
}, },
"width": 354, "width": 290,
"height": 701, "height": 551,
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
"strokeWidth": 2, "strokeWidth": 2,
@ -47,8 +47,8 @@
"id": "a.b", "id": "a.b",
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 97, "x": 62,
"y": 87 "y": 62
}, },
"width": 53, "width": 53,
"height": 66, "height": 66,
@ -88,11 +88,11 @@
"id": "a.c", "id": "a.c",
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 87, "x": 76,
"y": 422 "y": 347
}, },
"width": 204, "width": 154,
"height": 216, "height": 166,
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
"strokeWidth": 2, "strokeWidth": 2,
@ -129,8 +129,8 @@
"id": "a.1", "id": "a.1",
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 163, "x": 127,
"y": 256 "y": 201
}, },
"width": 52, "width": 52,
"height": 66, "height": 66,
@ -170,8 +170,8 @@
"id": "a.2", "id": "a.2",
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 235, "x": 199,
"y": 256 "y": 201
}, },
"width": 53, "width": 53,
"height": 66, "height": 66,
@ -211,8 +211,8 @@
"id": "a.c.d", "id": "a.c.d",
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 162, "x": 126,
"y": 497 "y": 397
}, },
"width": 54, "width": 54,
"height": 66, "height": 66,
@ -276,20 +276,20 @@
"labelPercentage": 0, "labelPercentage": 0,
"route": [ "route": [
{ {
"x": 124, "x": 88.5,
"y": 153 "y": 128
}, },
{ {
"x": 124, "x": 88.5,
"y": 372 "y": 307
}, },
{ {
"x": 138, "x": 115,
"y": 372 "y": 307
}, },
{ {
"x": 138, "x": 115,
"y": 422 "y": 347
} }
], ],
"animated": false, "animated": false,
@ -323,12 +323,12 @@
"labelPercentage": 0, "labelPercentage": 0,
"route": [ "route": [
{ {
"x": 189, "x": 153.5,
"y": 322 "y": 267
}, },
{ {
"x": 189, "x": 153.5,
"y": 422 "y": 347
} }
], ],
"animated": false, "animated": false,
@ -362,20 +362,20 @@
"labelPercentage": 0, "labelPercentage": 0,
"route": [ "route": [
{ {
"x": 261.5, "x": 226,
"y": 322 "y": 267
}, },
{ {
"x": 261.5, "x": 226,
"y": 372 "y": 307
}, },
{ {
"x": 240, "x": 192,
"y": 372 "y": 307
}, },
{ {
"x": 240, "x": 192,
"y": 422 "y": 347
} }
], ],
"animated": false, "animated": false,

View file

@ -3,7 +3,7 @@
id="d2-svg" id="d2-svg"
style="background: white;" style="background: white;"
xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"
width="558" height="905" viewBox="-90 -90 558 905"><style type="text/css"> width="494" height="755" viewBox="-90 -90 494 755"><style type="text/css">
<![CDATA[ <![CDATA[
.shape { .shape {
shape-rendering: geometricPrecision; shape-rendering: geometricPrecision;
@ -39,9 +39,9 @@ width="558" height="905" viewBox="-90 -90 558 905"><style type="text/css">
svgEl.setAttribute("height", height * ratio - 16); svgEl.setAttribute("height", height * ratio - 16);
} }
}); });
]]></script><g id="a"><g class="shape" ><rect x="12" y="12" width="354" height="701" style="fill:#E3E9FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text" x="189.000000" y="45.000000" style="text-anchor:middle;font-size:28px;fill:#0A0F25">a</text></g><g id="a.b"><g class="shape" ><rect x="97" y="87" width="53" height="66" style="fill:#EDF0FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="123.500000" y="125.500000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">b</text></g><g id="a.c"><g class="shape" ><rect x="87" y="422" width="204" height="216" style="fill:#EDF0FD;stroke:white;stroke-width:2;" /></g><text class="text" x="189.000000" y="451.000000" style="text-anchor:middle;font-size:24px;fill:#0A0F25">c</text></g><g id="a.1"><g class="shape" ><rect x="163" y="256" width="52" height="66" style="fill:#EDF0FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="189.000000" y="294.500000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">1</text></g><g id="a.2"><g class="shape" ><rect x="235" y="256" width="53" height="66" style="fill:#EDF0FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="261.500000" y="294.500000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">2</text></g><g id="a.c.d"><g class="shape" ><rect x="162" y="497" width="54" height="66" style="fill:#F7F8FE;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="189.000000" y="535.500000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">d</text></g><g id="a.(b -&gt; c)[0]"><marker id="mk-1065319532" markerWidth="24.200000" markerHeight="18.000000" refX="20.800000" refY="9.000000" viewBox="0.000000 0.000000 24.200000 18.000000" orient="auto" markerUnits="userSpaceOnUse"> <polygon class="connection" fill="white" stroke="red" stroke-width="2" points="0.000000,9.000000 11.000000,2.250000 22.000000,9.000000 11.000000,16.200000" /> </marker><path d="M 124.000000 155.000000 L 124.000000 365.000000 C 124.000000 379.000000 138.000000 365.000000 138.000000 379.000000 L 138.000000 418.000000" class="connection" style="fill:none;stroke:red;stroke-width:2;" marker-end="url(#mk-1065319532)" mask="url(#731079584)"/><text class="text-italic" x="124.000000" y="276.000000" style="text-anchor:middle;font-size:16px;fill:red"><tspan x="124.000000" dy="0.000000">line 1</tspan><tspan x="124.000000" dy="17.250000">line 2</tspan><tspan x="124.000000" dy="17.250000">line 3</tspan><tspan x="124.000000" dy="17.250000">line 4</tspan></text></g><g id="a.(1 -&gt; c)[0]"><marker id="mk-3990223579" markerWidth="10.000000" markerHeight="12.000000" refX="7.000000" refY="6.000000" viewBox="0.000000 0.000000 10.000000 12.000000" orient="auto" markerUnits="userSpaceOnUse"> <polygon class="connection" fill="#0D32B2" stroke-width="2" points="0.000000,0.000000 10.000000,6.000000 0.000000,12.000000" /> </marker><path d="M 189.000000 324.000000 L 189.000000 418.000000" class="connection" style="fill:none;stroke:#0D32B2;stroke-width:2;" marker-end="url(#mk-3990223579)" mask="url(#731079584)"/></g><g id="a.(2 &lt;-&gt; c)[0]"><marker id="mk-2510427236" markerWidth="10.000000" markerHeight="12.000000" refX="3.000000" refY="6.000000" viewBox="0.000000 0.000000 10.000000 12.000000" orient="auto" markerUnits="userSpaceOnUse"> <polygon class="connection" fill="#0D32B2" stroke-width="2" points="10.000000,0.000000 0.000000,6.000000 10.000000,12.000000" /> </marker><path d="M 261.500000 326.000000 L 261.500000 362.000000 S 261.500000 372.000000 251.500000 372.000000 L 250.000000 372.000000 S 240.000000 372.000000 240.000000 382.000000 L 240.000000 418.000000" class="connection" style="fill:none;stroke:#0D32B2;stroke-width:2;" marker-start="url(#mk-2510427236)" marker-end="url(#mk-3990223579)" mask="url(#731079584)"/></g><mask id="731079584" maskUnits="userSpaceOnUse" x="-100" y="-100" width="558" height="905"> ]]></script><g id="a"><g class="shape" ><rect x="12" y="12" width="290" height="551" style="fill:#E3E9FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text" x="157.000000" y="45.000000" style="text-anchor:middle;font-size:28px;fill:#0A0F25">a</text></g><g id="a.b"><g class="shape" ><rect x="62" y="62" width="53" height="66" style="fill:#EDF0FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="88.500000" y="100.500000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">b</text></g><g id="a.c"><g class="shape" ><rect x="76" y="347" width="154" height="166" style="fill:#EDF0FD;stroke:white;stroke-width:2;" /></g><text class="text" x="153.000000" y="376.000000" style="text-anchor:middle;font-size:24px;fill:#0A0F25">c</text></g><g id="a.1"><g class="shape" ><rect x="127" y="201" width="52" height="66" style="fill:#EDF0FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="153.000000" y="239.500000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">1</text></g><g id="a.2"><g class="shape" ><rect x="199" y="201" width="53" height="66" style="fill:#EDF0FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="225.500000" y="239.500000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">2</text></g><g id="a.c.d"><g class="shape" ><rect x="126" y="397" width="54" height="66" style="fill:#F7F8FE;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="153.000000" y="435.500000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">d</text></g><g id="a.(b -&gt; c)[0]"><marker id="mk-1065319532" markerWidth="24.200000" markerHeight="18.000000" refX="20.800000" refY="9.000000" viewBox="0.000000 0.000000 24.200000 18.000000" orient="auto" markerUnits="userSpaceOnUse"> <polygon class="connection" fill="white" stroke="red" stroke-width="2" points="0.000000,9.000000 11.000000,2.250000 22.000000,9.000000 11.000000,16.200000" /> </marker><path d="M 88.500000 130.000000 L 88.500000 297.000000 S 88.500000 307.000000 98.500000 307.000000 L 105.000000 307.000000 S 115.000000 307.000000 115.000000 317.000000 L 115.000000 343.000000" class="connection" style="fill:none;stroke:red;stroke-width:2;" marker-end="url(#mk-1065319532)" mask="url(#1504590825)"/><text class="text-italic" x="89.000000" y="232.000000" style="text-anchor:middle;font-size:16px;fill:red"><tspan x="89.000000" dy="0.000000">line 1</tspan><tspan x="89.000000" dy="17.250000">line 2</tspan><tspan x="89.000000" dy="17.250000">line 3</tspan><tspan x="89.000000" dy="17.250000">line 4</tspan></text></g><g id="a.(1 -&gt; c)[0]"><marker id="mk-3990223579" markerWidth="10.000000" markerHeight="12.000000" refX="7.000000" refY="6.000000" viewBox="0.000000 0.000000 10.000000 12.000000" orient="auto" markerUnits="userSpaceOnUse"> <polygon class="connection" fill="#0D32B2" stroke-width="2" points="0.000000,0.000000 10.000000,6.000000 0.000000,12.000000" /> </marker><path d="M 153.500000 269.000000 L 153.500000 343.000000" class="connection" style="fill:none;stroke:#0D32B2;stroke-width:2;" marker-end="url(#mk-3990223579)" mask="url(#1504590825)"/></g><g id="a.(2 &lt;-&gt; c)[0]"><marker id="mk-2510427236" markerWidth="10.000000" markerHeight="12.000000" refX="3.000000" refY="6.000000" viewBox="0.000000 0.000000 10.000000 12.000000" orient="auto" markerUnits="userSpaceOnUse"> <polygon class="connection" fill="#0D32B2" stroke-width="2" points="10.000000,0.000000 0.000000,6.000000 10.000000,12.000000" /> </marker><path d="M 226.000000 271.000000 L 226.000000 297.000000 S 226.000000 307.000000 216.000000 307.000000 L 202.000000 307.000000 S 192.000000 307.000000 192.000000 317.000000 L 192.000000 343.000000" class="connection" style="fill:none;stroke:#0D32B2;stroke-width:2;" marker-start="url(#mk-2510427236)" marker-end="url(#mk-3990223579)" mask="url(#1504590825)"/></g><mask id="1504590825" maskUnits="userSpaceOnUse" x="-100" y="-100" width="494" height="755">
<rect x="-100" y="-100" width="558" height="905" fill="white"></rect> <rect x="-100" y="-100" width="494" height="755" fill="white"></rect>
<rect x="106.000000" y="260.000000" width="36" height="69" fill="black"></rect> <rect x="71.000000" y="216.000000" width="36" height="69" fill="black"></rect>
</mask><style type="text/css"><![CDATA[ </mask><style type="text/css"><![CDATA[
.text { .text {
font-family: "font-regular"; font-family: "font-regular";

Before

Width:  |  Height:  |  Size: 794 KiB

After

Width:  |  Height:  |  Size: 794 KiB

View file

@ -10,7 +10,7 @@
"y": 41 "y": 41
}, },
"width": 2328, "width": 2328,
"height": 136, "height": 116,
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
"strokeWidth": 2, "strokeWidth": 2,
@ -48,7 +48,7 @@
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 105, "x": 105,
"y": 70 "y": 60
}, },
"width": 270, "width": 270,
"height": 77, "height": 77,
@ -89,7 +89,7 @@
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 638, "x": 638,
"y": 70 "y": 60
}, },
"width": 209, "width": 209,
"height": 77, "height": 77,
@ -130,7 +130,7 @@
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 1194, "x": 1194,
"y": 70 "y": 60
}, },
"width": 71, "width": 71,
"height": 77, "height": 77,
@ -171,7 +171,7 @@
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 1593, "x": 1593,
"y": 70 "y": 60
}, },
"width": 158, "width": 158,
"height": 77, "height": 77,
@ -212,7 +212,7 @@
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 2129, "x": 2129,
"y": 70 "y": 60
}, },
"width": 95, "width": 95,
"height": 77, "height": 77,
@ -277,19 +277,19 @@
"route": [ "route": [
{ {
"x": 375.5, "x": 375.5,
"y": 109 "y": 99
}, },
{ {
"x": 479.9, "x": 479.9,
"y": 109 "y": 99
}, },
{ {
"x": 532.3, "x": 532.3,
"y": 109 "y": 99
}, },
{ {
"x": 637.5, "x": 637.5,
"y": 109 "y": 99
} }
], ],
"isCurve": true, "isCurve": true,
@ -325,19 +325,19 @@
"route": [ "route": [
{ {
"x": 846.5, "x": 846.5,
"y": 109 "y": 99
}, },
{ {
"x": 985.3, "x": 985.3,
"y": 109 "y": 99
}, },
{ {
"x": 1054.7, "x": 1054.7,
"y": 109 "y": 99
}, },
{ {
"x": 1193.5, "x": 1193.5,
"y": 109 "y": 99
} }
], ],
"isCurve": true, "isCurve": true,
@ -373,19 +373,19 @@
"route": [ "route": [
{ {
"x": 1265.5, "x": 1265.5,
"y": 109 "y": 99
}, },
{ {
"x": 1395.9, "x": 1395.9,
"y": 109 "y": 99
}, },
{ {
"x": 1461.3, "x": 1461.3,
"y": 109 "y": 99
}, },
{ {
"x": 1592.5, "x": 1592.5,
"y": 109 "y": 99
} }
], ],
"isCurve": true, "isCurve": true,
@ -421,19 +421,19 @@
"route": [ "route": [
{ {
"x": 1751.5, "x": 1751.5,
"y": 109 "y": 99
}, },
{ {
"x": 1901.9, "x": 1901.9,
"y": 109 "y": 99
}, },
{ {
"x": 1977.3, "x": 1977.3,
"y": 109 "y": 99
}, },
{ {
"x": 2128.5, "x": 2128.5,
"y": 109 "y": 99
} }
], ],
"isCurve": true, "isCurve": true,

View file

@ -3,7 +3,7 @@
id="d2-svg" id="d2-svg"
style="background: white;" style="background: white;"
xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"
width="2532" height="379" viewBox="-102 -100 2532 379"><style type="text/css"> width="2532" height="359" viewBox="-102 -100 2532 359"><style type="text/css">
<![CDATA[ <![CDATA[
.shape { .shape {
shape-rendering: geometricPrecision; shape-rendering: geometricPrecision;
@ -39,12 +39,12 @@ width="2532" height="379" viewBox="-102 -100 2532 379"><style type="text/css">
svgEl.setAttribute("height", height * ratio - 16); svgEl.setAttribute("height", height * ratio - 16);
} }
}); });
]]></script><g id="build_workflow"><g class="shape" ><rect x="0" y="41" width="2328" height="136" style="fill:#E3E9FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text" x="1164.000000" y="28.000000" style="text-anchor:middle;font-size:28px;fill:#0A0F25">lambda-build.yaml</text></g><g id="build_workflow.push"><g class="shape" ><rect x="105" y="70" width="270" height="77" style="fill:#EDF0FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="240.000000" y="117.500000" style="text-anchor:middle;font-size:25px;fill:#0A0F25">Push to main branch</text></g><g id="build_workflow.GHA"><g class="shape" ><rect x="638" y="70" width="209" height="77" style="fill:#EDF0FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="742.500000" y="117.500000" style="text-anchor:middle;font-size:25px;fill:#0A0F25">GitHub Actions</text></g><g id="build_workflow.S3"><g class="shape" ><rect x="1194" y="70" width="71" height="77" style="fill:#EDF0FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="1229.500000" y="117.500000" style="text-anchor:middle;font-size:25px;fill:#0A0F25">S3</text></g><g id="build_workflow.Terraform"><g class="shape" ><rect x="1593" y="70" width="158" height="77" style="fill:#EDF0FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="1672.000000" y="117.500000" style="text-anchor:middle;font-size:25px;fill:#0A0F25">Terraform</text></g><g id="build_workflow.AWS"><g class="shape" ><rect x="2129" y="70" width="95" height="77" style="fill:#EDF0FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="2176.500000" y="117.500000" style="text-anchor:middle;font-size:25px;fill:#0A0F25">AWS</text></g><g id="build_workflow.(push -&gt; GHA)[0]"><marker id="mk-3990223579" markerWidth="10.000000" markerHeight="12.000000" refX="7.000000" refY="6.000000" viewBox="0.000000 0.000000 10.000000 12.000000" orient="auto" markerUnits="userSpaceOnUse"> <polygon class="connection" fill="#0D32B2" stroke-width="2" points="0.000000,0.000000 10.000000,6.000000 0.000000,12.000000" /> </marker><path d="M 377.500000 109.000000 C 479.900000 109.000000 532.300000 109.000000 633.500000 109.000000" class="connection" style="fill:none;stroke:#0D32B2;stroke-width:2;" marker-end="url(#mk-3990223579)" mask="url(#2865405460)"/><text class="text-italic" x="507.000000" y="115.000000" style="text-anchor:middle;font-size:16px;fill:#676C7E">Triggers</text></g><g id="build_workflow.(GHA -&gt; S3)[0]"><path d="M 848.500000 109.000000 C 985.300000 109.000000 1054.700000 109.000000 1189.500000 109.000000" class="connection" style="fill:none;stroke:#0D32B2;stroke-width:2;" marker-end="url(#mk-3990223579)" mask="url(#2865405460)"/><text class="text-italic" x="1020.000000" y="115.000000" style="text-anchor:middle;font-size:16px;fill:#676C7E">Builds zip &amp; pushes it</text></g><g id="build_workflow.(S3 &lt;-&gt; Terraform)[0]"><marker id="mk-2510427236" markerWidth="10.000000" markerHeight="12.000000" refX="3.000000" refY="6.000000" viewBox="0.000000 0.000000 10.000000 12.000000" orient="auto" markerUnits="userSpaceOnUse"> <polygon class="connection" fill="#0D32B2" stroke-width="2" points="10.000000,0.000000 0.000000,6.000000 10.000000,12.000000" /> </marker><path d="M 1269.500000 109.000000 C 1395.900000 109.000000 1461.300000 109.000000 1588.500000 109.000000" class="connection" style="fill:none;stroke:#0D32B2;stroke-width:2;" marker-start="url(#mk-2510427236)" marker-end="url(#mk-3990223579)" mask="url(#2865405460)"/><text class="text-italic" x="1429.500000" y="115.000000" style="text-anchor:middle;font-size:16px;fill:#676C7E">Pulls zip to deploy</text></g><g id="build_workflow.(Terraform -&gt; AWS)[0]"><path d="M 1753.500000 109.000000 C 1901.900000 109.000000 1977.300000 109.000000 2124.500000 109.000000" class="connection" style="fill:none;stroke:#0D32B2;stroke-width:2;" marker-end="url(#mk-3990223579)" mask="url(#2865405460)"/><text class="text-italic" x="1940.500000" y="115.000000" style="text-anchor:middle;font-size:16px;fill:#676C7E">Changes the live lambdas</text></g><mask id="2865405460" maskUnits="userSpaceOnUse" x="-100" y="-100" width="2532" height="379"> ]]></script><g id="build_workflow"><g class="shape" ><rect x="0" y="41" width="2328" height="116" style="fill:#E3E9FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text" x="1164.000000" y="28.000000" style="text-anchor:middle;font-size:28px;fill:#0A0F25">lambda-build.yaml</text></g><g id="build_workflow.push"><g class="shape" ><rect x="105" y="60" width="270" height="77" style="fill:#EDF0FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="240.000000" y="107.500000" style="text-anchor:middle;font-size:25px;fill:#0A0F25">Push to main branch</text></g><g id="build_workflow.GHA"><g class="shape" ><rect x="638" y="60" width="209" height="77" style="fill:#EDF0FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="742.500000" y="107.500000" style="text-anchor:middle;font-size:25px;fill:#0A0F25">GitHub Actions</text></g><g id="build_workflow.S3"><g class="shape" ><rect x="1194" y="60" width="71" height="77" style="fill:#EDF0FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="1229.500000" y="107.500000" style="text-anchor:middle;font-size:25px;fill:#0A0F25">S3</text></g><g id="build_workflow.Terraform"><g class="shape" ><rect x="1593" y="60" width="158" height="77" style="fill:#EDF0FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="1672.000000" y="107.500000" style="text-anchor:middle;font-size:25px;fill:#0A0F25">Terraform</text></g><g id="build_workflow.AWS"><g class="shape" ><rect x="2129" y="60" width="95" height="77" style="fill:#EDF0FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="2176.500000" y="107.500000" style="text-anchor:middle;font-size:25px;fill:#0A0F25">AWS</text></g><g id="build_workflow.(push -&gt; GHA)[0]"><marker id="mk-3990223579" markerWidth="10.000000" markerHeight="12.000000" refX="7.000000" refY="6.000000" viewBox="0.000000 0.000000 10.000000 12.000000" orient="auto" markerUnits="userSpaceOnUse"> <polygon class="connection" fill="#0D32B2" stroke-width="2" points="0.000000,0.000000 10.000000,6.000000 0.000000,12.000000" /> </marker><path d="M 377.500000 99.000000 C 479.900000 99.000000 532.300000 99.000000 633.500000 99.000000" class="connection" style="fill:none;stroke:#0D32B2;stroke-width:2;" marker-end="url(#mk-3990223579)" mask="url(#1694094011)"/><text class="text-italic" x="507.000000" y="105.000000" style="text-anchor:middle;font-size:16px;fill:#676C7E">Triggers</text></g><g id="build_workflow.(GHA -&gt; S3)[0]"><path d="M 848.500000 99.000000 C 985.300000 99.000000 1054.700000 99.000000 1189.500000 99.000000" class="connection" style="fill:none;stroke:#0D32B2;stroke-width:2;" marker-end="url(#mk-3990223579)" mask="url(#1694094011)"/><text class="text-italic" x="1020.000000" y="105.000000" style="text-anchor:middle;font-size:16px;fill:#676C7E">Builds zip &amp; pushes it</text></g><g id="build_workflow.(S3 &lt;-&gt; Terraform)[0]"><marker id="mk-2510427236" markerWidth="10.000000" markerHeight="12.000000" refX="3.000000" refY="6.000000" viewBox="0.000000 0.000000 10.000000 12.000000" orient="auto" markerUnits="userSpaceOnUse"> <polygon class="connection" fill="#0D32B2" stroke-width="2" points="10.000000,0.000000 0.000000,6.000000 10.000000,12.000000" /> </marker><path d="M 1269.500000 99.000000 C 1395.900000 99.000000 1461.300000 99.000000 1588.500000 99.000000" class="connection" style="fill:none;stroke:#0D32B2;stroke-width:2;" marker-start="url(#mk-2510427236)" marker-end="url(#mk-3990223579)" mask="url(#1694094011)"/><text class="text-italic" x="1429.500000" y="105.000000" style="text-anchor:middle;font-size:16px;fill:#676C7E">Pulls zip to deploy</text></g><g id="build_workflow.(Terraform -&gt; AWS)[0]"><path d="M 1753.500000 99.000000 C 1901.900000 99.000000 1977.300000 99.000000 2124.500000 99.000000" class="connection" style="fill:none;stroke:#0D32B2;stroke-width:2;" marker-end="url(#mk-3990223579)" mask="url(#1694094011)"/><text class="text-italic" x="1940.500000" y="105.000000" style="text-anchor:middle;font-size:16px;fill:#676C7E">Changes the live lambdas</text></g><mask id="1694094011" maskUnits="userSpaceOnUse" x="-100" y="-100" width="2532" height="359">
<rect x="-100" y="-100" width="2532" height="379" fill="white"></rect> <rect x="-100" y="-100" width="2532" height="359" fill="white"></rect>
<rect x="480.000000" y="99.000000" width="54" height="21" fill="black"></rect> <rect x="480.000000" y="89.000000" width="54" height="21" fill="black"></rect>
<rect x="951.000000" y="99.000000" width="138" height="21" fill="black"></rect> <rect x="951.000000" y="89.000000" width="138" height="21" fill="black"></rect>
<rect x="1370.000000" y="99.000000" width="119" height="21" fill="black"></rect> <rect x="1370.000000" y="89.000000" width="119" height="21" fill="black"></rect>
<rect x="1856.000000" y="99.000000" width="169" height="21" fill="black"></rect> <rect x="1856.000000" y="89.000000" width="169" height="21" fill="black"></rect>
</mask><style type="text/css"><![CDATA[ </mask><style type="text/css"><![CDATA[
.text { .text {
font-family: "font-regular"; font-family: "font-regular";

Before

Width:  |  Height:  |  Size: 795 KiB

After

Width:  |  Height:  |  Size: 795 KiB

View file

@ -9,8 +9,8 @@
"x": 12, "x": 12,
"y": 12 "y": 12
}, },
"width": 2233, "width": 1943,
"height": 227, "height": 177,
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
"strokeWidth": 2, "strokeWidth": 2,
@ -47,8 +47,8 @@
"id": "build_workflow.push", "id": "build_workflow.push",
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 87, "x": 62,
"y": 87 "y": 62
}, },
"width": 270, "width": 270,
"height": 77, "height": 77,
@ -88,8 +88,8 @@
"id": "build_workflow.GHA", "id": "build_workflow.GHA",
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 611, "x": 526,
"y": 87 "y": 62
}, },
"width": 209, "width": 209,
"height": 77, "height": 77,
@ -129,8 +129,8 @@
"id": "build_workflow.S3", "id": "build_workflow.S3",
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 1158, "x": 1013,
"y": 87 "y": 62
}, },
"width": 71, "width": 71,
"height": 77, "height": 77,
@ -170,8 +170,8 @@
"id": "build_workflow.Terraform", "id": "build_workflow.Terraform",
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 1548, "x": 1343,
"y": 87 "y": 62
}, },
"width": 158, "width": 158,
"height": 77, "height": 77,
@ -211,8 +211,8 @@
"id": "build_workflow.AWS", "id": "build_workflow.AWS",
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 2075, "x": 1810,
"y": 87 "y": 62
}, },
"width": 95, "width": 95,
"height": 77, "height": 77,
@ -276,12 +276,12 @@
"labelPercentage": 0, "labelPercentage": 0,
"route": [ "route": [
{ {
"x": 357, "x": 332,
"y": 125.5 "y": 100.5
}, },
{ {
"x": 611, "x": 526,
"y": 125.5 "y": 100.5
} }
], ],
"animated": false, "animated": false,
@ -315,12 +315,12 @@
"labelPercentage": 0, "labelPercentage": 0,
"route": [ "route": [
{ {
"x": 820, "x": 735,
"y": 125.5 "y": 100.5
}, },
{ {
"x": 1158, "x": 1013,
"y": 125.5 "y": 100.5
} }
], ],
"animated": false, "animated": false,
@ -354,12 +354,12 @@
"labelPercentage": 0, "labelPercentage": 0,
"route": [ "route": [
{ {
"x": 1229, "x": 1084,
"y": 125.5 "y": 100.5
}, },
{ {
"x": 1548, "x": 1343,
"y": 125.5 "y": 100.5
} }
], ],
"animated": false, "animated": false,
@ -393,12 +393,12 @@
"labelPercentage": 0, "labelPercentage": 0,
"route": [ "route": [
{ {
"x": 1706, "x": 1501,
"y": 125.5 "y": 100.5
}, },
{ {
"x": 2075, "x": 1810,
"y": 125.5 "y": 100.5
} }
], ],
"animated": false, "animated": false,

View file

@ -3,7 +3,7 @@
id="d2-svg" id="d2-svg"
style="background: white;" style="background: white;"
xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"
width="2437" height="431" viewBox="-90 -90 2437 431"><style type="text/css"> width="2147" height="381" viewBox="-90 -90 2147 381"><style type="text/css">
<![CDATA[ <![CDATA[
.shape { .shape {
shape-rendering: geometricPrecision; shape-rendering: geometricPrecision;
@ -39,12 +39,12 @@ width="2437" height="431" viewBox="-90 -90 2437 431"><style type="text/css">
svgEl.setAttribute("height", height * ratio - 16); svgEl.setAttribute("height", height * ratio - 16);
} }
}); });
]]></script><g id="build_workflow"><g class="shape" ><rect x="12" y="12" width="2233" height="227" style="fill:#E3E9FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text" x="1128.500000" y="45.000000" style="text-anchor:middle;font-size:28px;fill:#0A0F25">lambda-build.yaml</text></g><g id="build_workflow.push"><g class="shape" ><rect x="87" y="87" width="270" height="77" style="fill:#EDF0FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="222.000000" y="134.500000" style="text-anchor:middle;font-size:25px;fill:#0A0F25">Push to main branch</text></g><g id="build_workflow.GHA"><g class="shape" ><rect x="611" y="87" width="209" height="77" style="fill:#EDF0FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="715.500000" y="134.500000" style="text-anchor:middle;font-size:25px;fill:#0A0F25">GitHub Actions</text></g><g id="build_workflow.S3"><g class="shape" ><rect x="1158" y="87" width="71" height="77" style="fill:#EDF0FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="1193.500000" y="134.500000" style="text-anchor:middle;font-size:25px;fill:#0A0F25">S3</text></g><g id="build_workflow.Terraform"><g class="shape" ><rect x="1548" y="87" width="158" height="77" style="fill:#EDF0FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="1627.000000" y="134.500000" style="text-anchor:middle;font-size:25px;fill:#0A0F25">Terraform</text></g><g id="build_workflow.AWS"><g class="shape" ><rect x="2075" y="87" width="95" height="77" style="fill:#EDF0FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="2122.500000" y="134.500000" style="text-anchor:middle;font-size:25px;fill:#0A0F25">AWS</text></g><g id="build_workflow.(push -&gt; GHA)[0]"><marker id="mk-3990223579" markerWidth="10.000000" markerHeight="12.000000" refX="7.000000" refY="6.000000" viewBox="0.000000 0.000000 10.000000 12.000000" orient="auto" markerUnits="userSpaceOnUse"> <polygon class="connection" fill="#0D32B2" stroke-width="2" points="0.000000,0.000000 10.000000,6.000000 0.000000,12.000000" /> </marker><path d="M 359.000000 125.500000 L 607.000000 125.500000" class="connection" style="fill:none;stroke:#0D32B2;stroke-width:2;" marker-end="url(#mk-3990223579)" mask="url(#483332612)"/><text class="text-italic" x="484.000000" y="131.000000" style="text-anchor:middle;font-size:16px;fill:#676C7E">Triggers</text></g><g id="build_workflow.(GHA -&gt; S3)[0]"><path d="M 822.000000 125.500000 L 1154.000000 125.500000" class="connection" style="fill:none;stroke:#0D32B2;stroke-width:2;" marker-end="url(#mk-3990223579)" mask="url(#483332612)"/><text class="text-italic" x="989.000000" y="131.000000" style="text-anchor:middle;font-size:16px;fill:#676C7E">Builds zip &amp; pushes it</text></g><g id="build_workflow.(S3 &lt;-&gt; Terraform)[0]"><marker id="mk-2510427236" markerWidth="10.000000" markerHeight="12.000000" refX="3.000000" refY="6.000000" viewBox="0.000000 0.000000 10.000000 12.000000" orient="auto" markerUnits="userSpaceOnUse"> <polygon class="connection" fill="#0D32B2" stroke-width="2" points="10.000000,0.000000 0.000000,6.000000 10.000000,12.000000" /> </marker><path d="M 1233.000000 125.500000 L 1544.000000 125.500000" class="connection" style="fill:none;stroke:#0D32B2;stroke-width:2;" marker-start="url(#mk-2510427236)" marker-end="url(#mk-3990223579)" mask="url(#483332612)"/><text class="text-italic" x="1388.500000" y="131.000000" style="text-anchor:middle;font-size:16px;fill:#676C7E">Pulls zip to deploy</text></g><g id="build_workflow.(Terraform -&gt; AWS)[0]"><path d="M 1708.000000 125.500000 L 2071.000000 125.500000" class="connection" style="fill:none;stroke:#0D32B2;stroke-width:2;" marker-end="url(#mk-3990223579)" mask="url(#483332612)"/><text class="text-italic" x="1890.500000" y="131.000000" style="text-anchor:middle;font-size:16px;fill:#676C7E">Changes the live lambdas</text></g><mask id="483332612" maskUnits="userSpaceOnUse" x="-100" y="-100" width="2437" height="431"> ]]></script><g id="build_workflow"><g class="shape" ><rect x="12" y="12" width="1943" height="177" style="fill:#E3E9FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text" x="983.500000" y="45.000000" style="text-anchor:middle;font-size:28px;fill:#0A0F25">lambda-build.yaml</text></g><g id="build_workflow.push"><g class="shape" ><rect x="62" y="62" width="270" height="77" style="fill:#EDF0FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="197.000000" y="109.500000" style="text-anchor:middle;font-size:25px;fill:#0A0F25">Push to main branch</text></g><g id="build_workflow.GHA"><g class="shape" ><rect x="526" y="62" width="209" height="77" style="fill:#EDF0FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="630.500000" y="109.500000" style="text-anchor:middle;font-size:25px;fill:#0A0F25">GitHub Actions</text></g><g id="build_workflow.S3"><g class="shape" ><rect x="1013" y="62" width="71" height="77" style="fill:#EDF0FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="1048.500000" y="109.500000" style="text-anchor:middle;font-size:25px;fill:#0A0F25">S3</text></g><g id="build_workflow.Terraform"><g class="shape" ><rect x="1343" y="62" width="158" height="77" style="fill:#EDF0FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="1422.000000" y="109.500000" style="text-anchor:middle;font-size:25px;fill:#0A0F25">Terraform</text></g><g id="build_workflow.AWS"><g class="shape" ><rect x="1810" y="62" width="95" height="77" style="fill:#EDF0FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="1857.500000" y="109.500000" style="text-anchor:middle;font-size:25px;fill:#0A0F25">AWS</text></g><g id="build_workflow.(push -&gt; GHA)[0]"><marker id="mk-3990223579" markerWidth="10.000000" markerHeight="12.000000" refX="7.000000" refY="6.000000" viewBox="0.000000 0.000000 10.000000 12.000000" orient="auto" markerUnits="userSpaceOnUse"> <polygon class="connection" fill="#0D32B2" stroke-width="2" points="0.000000,0.000000 10.000000,6.000000 0.000000,12.000000" /> </marker><path d="M 334.000000 100.500000 L 522.000000 100.500000" class="connection" style="fill:none;stroke:#0D32B2;stroke-width:2;" marker-end="url(#mk-3990223579)" mask="url(#229275881)"/><text class="text-italic" x="429.000000" y="106.000000" style="text-anchor:middle;font-size:16px;fill:#676C7E">Triggers</text></g><g id="build_workflow.(GHA -&gt; S3)[0]"><path d="M 737.000000 100.500000 L 1009.000000 100.500000" class="connection" style="fill:none;stroke:#0D32B2;stroke-width:2;" marker-end="url(#mk-3990223579)" mask="url(#229275881)"/><text class="text-italic" x="874.000000" y="106.000000" style="text-anchor:middle;font-size:16px;fill:#676C7E">Builds zip &amp; pushes it</text></g><g id="build_workflow.(S3 &lt;-&gt; Terraform)[0]"><marker id="mk-2510427236" markerWidth="10.000000" markerHeight="12.000000" refX="3.000000" refY="6.000000" viewBox="0.000000 0.000000 10.000000 12.000000" orient="auto" markerUnits="userSpaceOnUse"> <polygon class="connection" fill="#0D32B2" stroke-width="2" points="10.000000,0.000000 0.000000,6.000000 10.000000,12.000000" /> </marker><path d="M 1088.000000 100.500000 L 1339.000000 100.500000" class="connection" style="fill:none;stroke:#0D32B2;stroke-width:2;" marker-start="url(#mk-2510427236)" marker-end="url(#mk-3990223579)" mask="url(#229275881)"/><text class="text-italic" x="1213.500000" y="106.000000" style="text-anchor:middle;font-size:16px;fill:#676C7E">Pulls zip to deploy</text></g><g id="build_workflow.(Terraform -&gt; AWS)[0]"><path d="M 1503.000000 100.500000 L 1806.000000 100.500000" class="connection" style="fill:none;stroke:#0D32B2;stroke-width:2;" marker-end="url(#mk-3990223579)" mask="url(#229275881)"/><text class="text-italic" x="1655.500000" y="106.000000" style="text-anchor:middle;font-size:16px;fill:#676C7E">Changes the live lambdas</text></g><mask id="229275881" maskUnits="userSpaceOnUse" x="-100" y="-100" width="2147" height="381">
<rect x="-100" y="-100" width="2437" height="431" fill="white"></rect> <rect x="-100" y="-100" width="2147" height="381" fill="white"></rect>
<rect x="457.000000" y="115.000000" width="54" height="21" fill="black"></rect> <rect x="402.000000" y="90.000000" width="54" height="21" fill="black"></rect>
<rect x="920.000000" y="115.000000" width="138" height="21" fill="black"></rect> <rect x="805.000000" y="90.000000" width="138" height="21" fill="black"></rect>
<rect x="1329.000000" y="115.000000" width="119" height="21" fill="black"></rect> <rect x="1154.000000" y="90.000000" width="119" height="21" fill="black"></rect>
<rect x="1806.000000" y="115.000000" width="169" height="21" fill="black"></rect> <rect x="1571.000000" y="90.000000" width="169" height="21" fill="black"></rect>
</mask><style type="text/css"><![CDATA[ </mask><style type="text/css"><![CDATA[
.text { .text {
font-family: "font-regular"; font-family: "font-regular";

Before

Width:  |  Height:  |  Size: 795 KiB

After

Width:  |  Height:  |  Size: 795 KiB

View file

@ -171,7 +171,7 @@
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 475, "x": 475,
"y": 194 "y": 174
}, },
"width": 83, "width": 83,
"height": 66, "height": 66,
@ -322,15 +322,15 @@
}, },
{ {
"x": 403, "x": 403,
"y": 144 "y": 134
}, },
{ {
"x": 496.25, "x": 496.25,
"y": 144 "y": 134
}, },
{ {
"x": 496.25, "x": 496.25,
"y": 194 "y": 174
} }
], ],
"animated": false, "animated": false,
@ -369,7 +369,7 @@
}, },
{ {
"x": 517, "x": 517,
"y": 194 "y": 174
} }
], ],
"animated": false, "animated": false,
@ -408,15 +408,15 @@
}, },
{ {
"x": 631.5, "x": 631.5,
"y": 144 "y": 134
}, },
{ {
"x": 537.75, "x": 537.75,
"y": 144 "y": 134
}, },
{ {
"x": 537.75, "x": 537.75,
"y": 194 "y": 174
} }
], ],
"animated": false, "animated": false,

View file

@ -3,7 +3,7 @@
id="d2-svg" id="d2-svg"
style="background: white;" style="background: white;"
xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"
width="871" height="452" viewBox="-90 -90 871 452"><style type="text/css"> width="871" height="432" viewBox="-90 -90 871 432"><style type="text/css">
<![CDATA[ <![CDATA[
.shape { .shape {
shape-rendering: geometricPrecision; shape-rendering: geometricPrecision;
@ -39,8 +39,8 @@ width="871" height="452" viewBox="-90 -90 871 452"><style type="text/css">
svgEl.setAttribute("height", height * ratio - 16); svgEl.setAttribute("height", height * ratio - 16);
} }
}); });
]]></script><g id="&#34;ninety\nnine&#34;"><g class="shape" ><rect x="12" y="12" width="91" height="82" style="fill:#F7F8FE;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="57.500000" y="50.500000" style="text-anchor:middle;font-size:16px;fill:#0A0F25"><tspan x="57.500000" dy="0.000000">ninety</tspan><tspan x="57.500000" dy="18.500000">nine</tspan></text></g><g id="eighty&#xD;eight"><g class="shape" ><rect x="123" y="20" width="91" height="66" style="fill:#F7F8FE;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="168.500000" y="58.500000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">eighty&#xD;eight</text></g><g id="&#34;seventy&#xD;\nseven&#34;"><g class="shape" ><rect x="234" y="12" width="102" height="82" style="fill:#F7F8FE;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="285.000000" y="50.500000" style="text-anchor:middle;font-size:16px;fill:#0A0F25"><tspan x="285.000000" dy="0.000000">seventy&#xD;</tspan><tspan x="285.000000" dy="18.500000">seven</tspan></text></g><g id="&#34;a\\yode&#34;"><g class="shape" ><rect x="356" y="28" width="94" height="66" style="fill:#F7F8FE;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="403.000000" y="66.500000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">a\yode</text></g><g id="there"><g class="shape" ><rect x="475" y="194" width="83" height="66" style="fill:#F7F8FE;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="516.500000" y="232.500000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">there</text></g><g id="&#39;a\&#34;ode&#39;"><g class="shape" ><rect x="470" y="28" width="94" height="66" style="fill:#F7F8FE;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="517.000000" y="66.500000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">a\&#34;ode</text></g><g id="&#34;a\\node&#34;"><g class="shape" ><rect x="584" y="28" width="95" height="66" style="fill:#F7F8FE;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="631.500000" y="66.500000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">a\node</text></g><g id="(&#34;a\\yode&#34; -&gt; there)[0]"><marker id="mk-3990223579" markerWidth="10.000000" markerHeight="12.000000" refX="7.000000" refY="6.000000" viewBox="0.000000 0.000000 10.000000 12.000000" orient="auto" markerUnits="userSpaceOnUse"> <polygon class="connection" fill="#0D32B2" stroke-width="2" points="0.000000,0.000000 10.000000,6.000000 0.000000,12.000000" /> </marker><path d="M 403.000000 96.000000 L 403.000000 134.000000 S 403.000000 144.000000 413.000000 144.000000 L 486.250000 144.000000 S 496.250000 144.000000 496.250000 154.000000 L 496.250000 190.000000" class="connection" style="fill:none;stroke:#0D32B2;stroke-width:2;" marker-end="url(#mk-3990223579)" mask="url(#1355253866)"/></g><g id="(&#39;a\&#34;ode&#39; -&gt; there)[0]"><path d="M 517.000000 96.000000 L 517.000000 190.000000" class="connection" style="fill:none;stroke:#0D32B2;stroke-width:2;" marker-end="url(#mk-3990223579)" mask="url(#1355253866)"/></g><g id="(&#34;a\\node&#34; -&gt; there)[0]"><path d="M 631.500000 96.000000 L 631.500000 134.000000 S 631.500000 144.000000 621.500000 144.000000 L 547.750000 144.000000 S 537.750000 144.000000 537.750000 154.000000 L 537.750000 190.000000" class="connection" style="fill:none;stroke:#0D32B2;stroke-width:2;" marker-end="url(#mk-3990223579)" mask="url(#1355253866)"/></g><mask id="1355253866" maskUnits="userSpaceOnUse" x="-100" y="-100" width="871" height="452"> ]]></script><g id="&#34;ninety\nnine&#34;"><g class="shape" ><rect x="12" y="12" width="91" height="82" style="fill:#F7F8FE;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="57.500000" y="50.500000" style="text-anchor:middle;font-size:16px;fill:#0A0F25"><tspan x="57.500000" dy="0.000000">ninety</tspan><tspan x="57.500000" dy="18.500000">nine</tspan></text></g><g id="eighty&#xD;eight"><g class="shape" ><rect x="123" y="20" width="91" height="66" style="fill:#F7F8FE;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="168.500000" y="58.500000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">eighty&#xD;eight</text></g><g id="&#34;seventy&#xD;\nseven&#34;"><g class="shape" ><rect x="234" y="12" width="102" height="82" style="fill:#F7F8FE;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="285.000000" y="50.500000" style="text-anchor:middle;font-size:16px;fill:#0A0F25"><tspan x="285.000000" dy="0.000000">seventy&#xD;</tspan><tspan x="285.000000" dy="18.500000">seven</tspan></text></g><g id="&#34;a\\yode&#34;"><g class="shape" ><rect x="356" y="28" width="94" height="66" style="fill:#F7F8FE;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="403.000000" y="66.500000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">a\yode</text></g><g id="there"><g class="shape" ><rect x="475" y="174" width="83" height="66" style="fill:#F7F8FE;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="516.500000" y="212.500000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">there</text></g><g id="&#39;a\&#34;ode&#39;"><g class="shape" ><rect x="470" y="28" width="94" height="66" style="fill:#F7F8FE;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="517.000000" y="66.500000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">a\&#34;ode</text></g><g id="&#34;a\\node&#34;"><g class="shape" ><rect x="584" y="28" width="95" height="66" style="fill:#F7F8FE;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="631.500000" y="66.500000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">a\node</text></g><g id="(&#34;a\\yode&#34; -&gt; there)[0]"><marker id="mk-3990223579" markerWidth="10.000000" markerHeight="12.000000" refX="7.000000" refY="6.000000" viewBox="0.000000 0.000000 10.000000 12.000000" orient="auto" markerUnits="userSpaceOnUse"> <polygon class="connection" fill="#0D32B2" stroke-width="2" points="0.000000,0.000000 10.000000,6.000000 0.000000,12.000000" /> </marker><path d="M 403.000000 96.000000 L 403.000000 124.000000 S 403.000000 134.000000 413.000000 134.000000 L 486.250000 134.000000 S 496.250000 134.000000 496.250000 144.000000 L 496.250000 170.000000" class="connection" style="fill:none;stroke:#0D32B2;stroke-width:2;" marker-end="url(#mk-3990223579)" mask="url(#1719411410)"/></g><g id="(&#39;a\&#34;ode&#39; -&gt; there)[0]"><path d="M 517.000000 96.000000 L 517.000000 170.000000" class="connection" style="fill:none;stroke:#0D32B2;stroke-width:2;" marker-end="url(#mk-3990223579)" mask="url(#1719411410)"/></g><g id="(&#34;a\\node&#34; -&gt; there)[0]"><path d="M 631.500000 96.000000 L 631.500000 124.000000 S 631.500000 134.000000 621.500000 134.000000 L 547.750000 134.000000 S 537.750000 134.000000 537.750000 144.000000 L 537.750000 170.000000" class="connection" style="fill:none;stroke:#0D32B2;stroke-width:2;" marker-end="url(#mk-3990223579)" mask="url(#1719411410)"/></g><mask id="1719411410" maskUnits="userSpaceOnUse" x="-100" y="-100" width="871" height="432">
<rect x="-100" y="-100" width="871" height="452" fill="white"></rect> <rect x="-100" y="-100" width="871" height="432" fill="white"></rect>
</mask><style type="text/css"><![CDATA[ </mask><style type="text/css"><![CDATA[
.text-bold { .text-bold {

Before

Width:  |  Height:  |  Size: 327 KiB

After

Width:  |  Height:  |  Size: 327 KiB

View file

@ -9,7 +9,7 @@
"x": 0, "x": 0,
"y": 41 "y": 41
}, },
"width": 370, "width": 350,
"height": 1331, "height": 1331,
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
@ -47,7 +47,7 @@
"id": "build_workflow.push", "id": "build_workflow.push",
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 50, "x": 40,
"y": 93 "y": 93
}, },
"width": 270, "width": 270,
@ -88,7 +88,7 @@
"id": "build_workflow.GHA", "id": "build_workflow.GHA",
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 81, "x": 71,
"y": 342 "y": 342
}, },
"width": 209, "width": 209,
@ -129,7 +129,7 @@
"id": "build_workflow.S3", "id": "build_workflow.S3",
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 150, "x": 140,
"y": 671 "y": 671
}, },
"width": 71, "width": 71,
@ -170,7 +170,7 @@
"id": "build_workflow.Terraform", "id": "build_workflow.Terraform",
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 106, "x": 96,
"y": 993 "y": 993
}, },
"width": 158, "width": 158,
@ -211,7 +211,7 @@
"id": "build_workflow.AWS", "id": "build_workflow.AWS",
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 138, "x": 128,
"y": 1242 "y": 1242
}, },
"width": 95, "width": 95,
@ -252,10 +252,10 @@
"id": "deploy_workflow", "id": "deploy_workflow",
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 410, "x": 370,
"y": 41 "y": 41
}, },
"width": 311, "width": 291,
"height": 760, "height": 760,
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
@ -293,7 +293,7 @@
"id": "deploy_workflow.manual", "id": "deploy_workflow.manual",
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 460, "x": 410,
"y": 93 "y": 93
}, },
"width": 211, "width": 211,
@ -334,7 +334,7 @@
"id": "deploy_workflow.GHA", "id": "deploy_workflow.GHA",
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 461, "x": 411,
"y": 342 "y": 342
}, },
"width": 209, "width": 209,
@ -375,7 +375,7 @@
"id": "deploy_workflow.AWS", "id": "deploy_workflow.AWS",
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 518, "x": 468,
"y": 671 "y": 671
}, },
"width": 95, "width": 95,
@ -416,10 +416,10 @@
"id": "apollo_workflow", "id": "apollo_workflow",
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 761, "x": 681,
"y": 41 "y": 41
}, },
"width": 613, "width": 573,
"height": 760, "height": 760,
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
@ -457,7 +457,7 @@
"id": "apollo_workflow.apollo", "id": "apollo_workflow.apollo",
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 979, "x": 879,
"y": 93 "y": 93
}, },
"width": 178, "width": 178,
@ -498,7 +498,7 @@
"id": "apollo_workflow.GHA", "id": "apollo_workflow.GHA",
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 963, "x": 863,
"y": 342 "y": 342
}, },
"width": 209, "width": 209,
@ -539,7 +539,7 @@
"id": "apollo_workflow.AWS", "id": "apollo_workflow.AWS",
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 1020, "x": 920,
"y": 671 "y": 671
}, },
"width": 95, "width": 95,
@ -604,19 +604,19 @@
"labelPercentage": 0, "labelPercentage": 0,
"route": [ "route": [
{ {
"x": 185, "x": 175,
"y": 170.5 "y": 170.5
}, },
{ {
"x": 185, "x": 175,
"y": 239.3 "y": 239.3
}, },
{ {
"x": 185, "x": 175,
"y": 273.7 "y": 273.7
}, },
{ {
"x": 185, "x": 175,
"y": 342.5 "y": 342.5
} }
], ],
@ -652,19 +652,19 @@
"labelPercentage": 0, "labelPercentage": 0,
"route": [ "route": [
{ {
"x": 185, "x": 175,
"y": 419.5 "y": 419.5
}, },
{ {
"x": 185, "x": 175,
"y": 520.3 "y": 520.3
}, },
{ {
"x": 185, "x": 175,
"y": 570.7 "y": 570.7
}, },
{ {
"x": 185, "x": 175,
"y": 671.5 "y": 671.5
} }
], ],
@ -700,19 +700,19 @@
"labelPercentage": 0, "labelPercentage": 0,
"route": [ "route": [
{ {
"x": 185, "x": 175,
"y": 748.5 "y": 748.5
}, },
{ {
"x": 185, "x": 175,
"y": 806.9 "y": 806.9
}, },
{ {
"x": 185, "x": 175,
"y": 924.7 "y": 924.7
}, },
{ {
"x": 185, "x": 175,
"y": 993.5 "y": 993.5
} }
], ],
@ -748,19 +748,19 @@
"labelPercentage": 0, "labelPercentage": 0,
"route": [ "route": [
{ {
"x": 185, "x": 175,
"y": 1070.5 "y": 1070.5
}, },
{ {
"x": 185, "x": 175,
"y": 1139.3 "y": 1139.3
}, },
{ {
"x": 185, "x": 175,
"y": 1173.7 "y": 1173.7
}, },
{ {
"x": 185, "x": 175,
"y": 1242.5 "y": 1242.5
} }
], ],
@ -796,19 +796,19 @@
"labelPercentage": 0, "labelPercentage": 0,
"route": [ "route": [
{ {
"x": 565.5, "x": 515.5,
"y": 170.5 "y": 170.5
}, },
{ {
"x": 565.5, "x": 515.5,
"y": 239.3 "y": 239.3
}, },
{ {
"x": 565.5, "x": 515.5,
"y": 273.7 "y": 273.7
}, },
{ {
"x": 565.5, "x": 515.5,
"y": 342.5 "y": 342.5
} }
], ],
@ -844,19 +844,19 @@
"labelPercentage": 0, "labelPercentage": 0,
"route": [ "route": [
{ {
"x": 565.5, "x": 515.5,
"y": 419.5 "y": 419.5
}, },
{ {
"x": 565.5, "x": 515.5,
"y": 520.3 "y": 520.3
}, },
{ {
"x": 565.5, "x": 515.5,
"y": 570.7 "y": 570.7
}, },
{ {
"x": 565.5, "x": 515.5,
"y": 671.5 "y": 671.5
} }
], ],
@ -892,19 +892,19 @@
"labelPercentage": 0, "labelPercentage": 0,
"route": [ "route": [
{ {
"x": 1067.5, "x": 967.5,
"y": 170.5 "y": 170.5
}, },
{ {
"x": 1067.5, "x": 967.5,
"y": 239.3 "y": 239.3
}, },
{ {
"x": 1067.5, "x": 967.5,
"y": 273.7 "y": 273.7
}, },
{ {
"x": 1067.5, "x": 967.5,
"y": 342.5 "y": 342.5
} }
], ],
@ -940,19 +940,19 @@
"labelPercentage": 0, "labelPercentage": 0,
"route": [ "route": [
{ {
"x": 1067.5, "x": 967.5,
"y": 419.5 "y": 419.5
}, },
{ {
"x": 1067.5, "x": 967.5,
"y": 520.3 "y": 520.3
}, },
{ {
"x": 1067.5, "x": 967.5,
"y": 570.7 "y": 570.7
}, },
{ {
"x": 1067.5, "x": 967.5,
"y": 671.5 "y": 671.5
} }
], ],

File diff suppressed because one or more lines are too long

Before

Width:  |  Height:  |  Size: 799 KiB

After

Width:  |  Height:  |  Size: 799 KiB

View file

@ -9,8 +9,8 @@
"x": 12, "x": 12,
"y": 12 "y": 12
}, },
"width": 420, "width": 370,
"height": 1439, "height": 1149,
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
"strokeWidth": 2, "strokeWidth": 2,
@ -47,8 +47,8 @@
"id": "build_workflow.push", "id": "build_workflow.push",
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 87, "x": 62,
"y": 87 "y": 62
}, },
"width": 270, "width": 270,
"height": 77, "height": 77,
@ -88,8 +88,8 @@
"id": "build_workflow.GHA", "id": "build_workflow.GHA",
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 117, "x": 92,
"y": 390 "y": 305
}, },
"width": 209, "width": 209,
"height": 77, "height": 77,
@ -129,8 +129,8 @@
"id": "build_workflow.S3", "id": "build_workflow.S3",
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 186, "x": 161,
"y": 693 "y": 548
}, },
"width": 71, "width": 71,
"height": 77, "height": 77,
@ -170,8 +170,8 @@
"id": "build_workflow.Terraform", "id": "build_workflow.Terraform",
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 143, "x": 118,
"y": 996 "y": 791
}, },
"width": 158, "width": 158,
"height": 77, "height": 77,
@ -211,8 +211,8 @@
"id": "build_workflow.AWS", "id": "build_workflow.AWS",
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 174, "x": 149,
"y": 1299 "y": 1034
}, },
"width": 95, "width": 95,
"height": 77, "height": 77,
@ -252,11 +252,11 @@
"id": "deploy_workflow", "id": "deploy_workflow",
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 452, "x": 402,
"y": 275 "y": 215
}, },
"width": 361, "width": 311,
"height": 913, "height": 743,
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
"strokeWidth": 2, "strokeWidth": 2,
@ -293,8 +293,8 @@
"id": "deploy_workflow.manual", "id": "deploy_workflow.manual",
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 527, "x": 452,
"y": 350 "y": 265
}, },
"width": 211, "width": 211,
"height": 77, "height": 77,
@ -334,8 +334,8 @@
"id": "deploy_workflow.GHA", "id": "deploy_workflow.GHA",
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 528, "x": 453,
"y": 653 "y": 508
}, },
"width": 209, "width": 209,
"height": 77, "height": 77,
@ -375,8 +375,8 @@
"id": "deploy_workflow.AWS", "id": "deploy_workflow.AWS",
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 585, "x": 510,
"y": 1036 "y": 831
}, },
"width": 95, "width": 95,
"height": 77, "height": 77,
@ -416,11 +416,11 @@
"id": "apollo_workflow", "id": "apollo_workflow",
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 833, "x": 733,
"y": 315 "y": 255
}, },
"width": 684, "width": 634,
"height": 833, "height": 663,
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
"strokeWidth": 2, "strokeWidth": 2,
@ -457,8 +457,8 @@
"id": "apollo_workflow.apollo", "id": "apollo_workflow.apollo",
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 1085, "x": 960,
"y": 390 "y": 305
}, },
"width": 178, "width": 178,
"height": 77, "height": 77,
@ -498,8 +498,8 @@
"id": "apollo_workflow.GHA", "id": "apollo_workflow.GHA",
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 1070, "x": 945,
"y": 693 "y": 548
}, },
"width": 209, "width": 209,
"height": 77, "height": 77,
@ -539,8 +539,8 @@
"id": "apollo_workflow.AWS", "id": "apollo_workflow.AWS",
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 1127, "x": 1002,
"y": 996 "y": 791
}, },
"width": 95, "width": 95,
"height": 77, "height": 77,
@ -604,12 +604,12 @@
"labelPercentage": 0, "labelPercentage": 0,
"route": [ "route": [
{ {
"x": 222, "x": 197,
"y": 164 "y": 139
}, },
{ {
"x": 222, "x": 197,
"y": 390 "y": 305
} }
], ],
"animated": false, "animated": false,
@ -643,12 +643,12 @@
"labelPercentage": 0, "labelPercentage": 0,
"route": [ "route": [
{ {
"x": 222, "x": 197,
"y": 467 "y": 382
}, },
{ {
"x": 222, "x": 197,
"y": 693 "y": 548
} }
], ],
"animated": false, "animated": false,
@ -682,12 +682,12 @@
"labelPercentage": 0, "labelPercentage": 0,
"route": [ "route": [
{ {
"x": 222, "x": 197,
"y": 770 "y": 625
}, },
{ {
"x": 222, "x": 197,
"y": 996 "y": 791
} }
], ],
"animated": false, "animated": false,
@ -721,12 +721,12 @@
"labelPercentage": 0, "labelPercentage": 0,
"route": [ "route": [
{ {
"x": 222, "x": 197,
"y": 1073 "y": 868
}, },
{ {
"x": 222, "x": 197,
"y": 1299 "y": 1034
} }
], ],
"animated": false, "animated": false,
@ -760,12 +760,12 @@
"labelPercentage": 0, "labelPercentage": 0,
"route": [ "route": [
{ {
"x": 632.5, "x": 557.5,
"y": 427 "y": 342
}, },
{ {
"x": 632.5, "x": 557.5,
"y": 653 "y": 508
} }
], ],
"animated": false, "animated": false,
@ -799,12 +799,12 @@
"labelPercentage": 0, "labelPercentage": 0,
"route": [ "route": [
{ {
"x": 632.5, "x": 557.5,
"y": 730 "y": 585
}, },
{ {
"x": 632.5, "x": 557.5,
"y": 1036 "y": 831
} }
], ],
"animated": false, "animated": false,
@ -838,12 +838,12 @@
"labelPercentage": 0, "labelPercentage": 0,
"route": [ "route": [
{ {
"x": 1174.5, "x": 1049.5,
"y": 467 "y": 382
}, },
{ {
"x": 1174.5, "x": 1049.5,
"y": 693 "y": 548
} }
], ],
"animated": false, "animated": false,
@ -877,12 +877,12 @@
"labelPercentage": 0, "labelPercentage": 0,
"route": [ "route": [
{ {
"x": 1174.5, "x": 1049.5,
"y": 770 "y": 625
}, },
{ {
"x": 1174.5, "x": 1049.5,
"y": 996 "y": 791
} }
], ],
"animated": false, "animated": false,

File diff suppressed because one or more lines are too long

Before

Width:  |  Height:  |  Size: 799 KiB

After

Width:  |  Height:  |  Size: 799 KiB

View file

@ -9,7 +9,7 @@
"x": 0, "x": 0,
"y": 41 "y": 41
}, },
"width": 306, "width": 266,
"height": 125, "height": 125,
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
@ -47,7 +47,7 @@
"id": "x.a", "id": "x.a",
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 50, "x": 40,
"y": 70 "y": 70
}, },
"width": 53, "width": 53,
@ -88,7 +88,7 @@
"id": "x.b", "id": "x.b",
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 203, "x": 173,
"y": 70 "y": 70
}, },
"width": 53, "width": 53,
@ -153,56 +153,56 @@
"labelPercentage": 0, "labelPercentage": 0,
"route": [ "route": [
{ {
"x": 103, "x": 93,
"y": 88.88440111420613 "y": 87.05172413793103
}, },
{ {
"x": 129.66666666666669, "x": 114.33333333333334,
"y": 74.17688022284122 "y": 73.8103448275862
}, },
{ {
"x": 138, "x": 121,
"y": 70.5 "y": 70.5
}, },
{ {
"x": 140.5, "x": 123,
"y": 70.5 "y": 70.5
}, },
{ {
"x": 143, "x": 125.00000000000001,
"y": 70.5 "y": 70.5
}, },
{ {
"x": 146.33333333333331, "x": 127.66666666666667,
"y": 77.1 "y": 77.1
}, },
{ {
"x": 148.83333333333331, "x": 129.66666666666669,
"y": 87 "y": 87
}, },
{ {
"x": 151.33333333333334, "x": 131.66666666666666,
"y": 96.9 "y": 96.9
}, },
{ {
"x": 151.33333333333334, "x": 131.66666666666666,
"y": 110.1 "y": 110.1
}, },
{ {
"x": 148.83333333333331, "x": 129.66666666666669,
"y": 120 "y": 120
}, },
{ {
"x": 146.33333333333331, "x": 127.66666666666667,
"y": 129.9 "y": 129.9
}, },
{ {
"x": 129.66666666666669, "x": 114.33333333333334,
"y": 132.82311977715878 "y": 133.18965517241378
}, },
{ {
"x": 103, "x": 93,
"y": 118.11559888579387 "y": 119.94827586206897
} }
], ],
"isCurve": true, "isCurve": true,

View file

@ -3,7 +3,7 @@
id="d2-svg" id="d2-svg"
style="background: white;" style="background: white;"
xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"
width="510" height="368" viewBox="-102 -100 510 368"><style type="text/css"> width="470" height="368" viewBox="-102 -100 470 368"><style type="text/css">
<![CDATA[ <![CDATA[
.shape { .shape {
shape-rendering: geometricPrecision; shape-rendering: geometricPrecision;
@ -39,8 +39,8 @@ width="510" height="368" viewBox="-102 -100 510 368"><style type="text/css">
svgEl.setAttribute("height", height * ratio - 16); svgEl.setAttribute("height", height * ratio - 16);
} }
}); });
]]></script><g id="x"><g class="shape" ><rect x="0" y="41" width="306" height="125" style="fill:#E3E9FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text" x="153.000000" y="28.000000" style="text-anchor:middle;font-size:28px;fill:#0A0F25">x</text></g><g id="x.a"><g class="shape" ><rect x="50" y="70" width="53" height="66" style="fill:#EDF0FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="76.500000" y="108.500000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">a</text></g><g id="x.b"><g class="shape" ><rect x="203" y="70" width="53" height="66" style="fill:#EDF0FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="229.500000" y="108.500000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">b</text></g><g id="x.(a -&gt; a)[0]"><marker id="mk-3990223579" markerWidth="10.000000" markerHeight="12.000000" refX="7.000000" refY="6.000000" viewBox="0.000000 0.000000 10.000000 12.000000" orient="auto" markerUnits="userSpaceOnUse"> <polygon class="connection" fill="#0D32B2" stroke-width="2" points="0.000000,0.000000 10.000000,6.000000 0.000000,12.000000" /> </marker><path d="M 104.751298 87.918504 C 129.666667 74.176880 138.000000 70.500000 140.500000 70.500000 C 143.000000 70.500000 146.333333 77.100000 148.833333 87.000000 C 151.333333 96.900000 151.333333 110.100000 148.833333 120.000000 C 146.333333 129.900000 129.666667 132.823120 106.502595 120.047392" class="connection" style="fill:none;stroke:#0D32B2;stroke-width:2;" marker-end="url(#mk-3990223579)" mask="url(#3783909634)"/></g><mask id="3783909634" maskUnits="userSpaceOnUse" x="-100" y="-100" width="510" height="368"> ]]></script><g id="x"><g class="shape" ><rect x="0" y="41" width="266" height="125" style="fill:#E3E9FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text" x="133.000000" y="28.000000" style="text-anchor:middle;font-size:28px;fill:#0A0F25">x</text></g><g id="x.a"><g class="shape" ><rect x="40" y="70" width="53" height="66" style="fill:#EDF0FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="66.500000" y="108.500000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">a</text></g><g id="x.b"><g class="shape" ><rect x="173" y="70" width="53" height="66" style="fill:#EDF0FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="199.500000" y="108.500000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">b</text></g><g id="x.(a -&gt; a)[0]"><marker id="mk-3990223579" markerWidth="10.000000" markerHeight="12.000000" refX="7.000000" refY="6.000000" viewBox="0.000000 0.000000 10.000000 12.000000" orient="auto" markerUnits="userSpaceOnUse"> <polygon class="connection" fill="#0D32B2" stroke-width="2" points="0.000000,0.000000 10.000000,6.000000 0.000000,12.000000" /> </marker><path d="M 94.699280 85.996998 C 114.333333 73.810345 121.000000 70.500000 123.000000 70.500000 C 125.000000 70.500000 127.666667 77.100000 129.666667 87.000000 C 131.666667 96.900000 131.666667 110.100000 129.666667 120.000000 C 127.666667 129.900000 114.333333 133.189655 96.398561 122.057727" class="connection" style="fill:none;stroke:#0D32B2;stroke-width:2;" marker-end="url(#mk-3990223579)" mask="url(#2732949407)"/></g><mask id="2732949407" maskUnits="userSpaceOnUse" x="-100" y="-100" width="470" height="368">
<rect x="-100" y="-100" width="510" height="368" fill="white"></rect> <rect x="-100" y="-100" width="470" height="368" fill="white"></rect>
</mask><style type="text/css"><![CDATA[ </mask><style type="text/css"><![CDATA[
.text { .text {

Before

Width:  |  Height:  |  Size: 649 KiB

After

Width:  |  Height:  |  Size: 649 KiB

View file

@ -9,8 +9,8 @@
"x": 12, "x": 12,
"y": 12 "y": 12
}, },
"width": 326, "width": 276,
"height": 216, "height": 166,
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
"strokeWidth": 2, "strokeWidth": 2,
@ -47,8 +47,8 @@
"id": "x.a", "id": "x.a",
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 137, "x": 112,
"y": 87 "y": 62
}, },
"width": 53, "width": 53,
"height": 66, "height": 66,
@ -88,8 +88,8 @@
"id": "x.b", "id": "x.b",
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 210, "x": 185,
"y": 87 "y": 62
}, },
"width": 53, "width": 53,
"height": 66, "height": 66,
@ -153,20 +153,20 @@
"labelPercentage": 0, "labelPercentage": 0,
"route": [ "route": [
{ {
"x": 137, "x": 112,
"y": 109 "y": 84
}, },
{ {
"x": 87, "x": 62,
"y": 109 "y": 84
}, },
{ {
"x": 87, "x": 62,
"y": 131 "y": 106
}, },
{ {
"x": 137, "x": 112,
"y": 131 "y": 106
} }
], ],
"animated": false, "animated": false,

View file

@ -3,7 +3,7 @@
id="d2-svg" id="d2-svg"
style="background: white;" style="background: white;"
xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"
width="530" height="420" viewBox="-90 -90 530 420"><style type="text/css"> width="480" height="370" viewBox="-90 -90 480 370"><style type="text/css">
<![CDATA[ <![CDATA[
.shape { .shape {
shape-rendering: geometricPrecision; shape-rendering: geometricPrecision;
@ -39,8 +39,8 @@ width="530" height="420" viewBox="-90 -90 530 420"><style type="text/css">
svgEl.setAttribute("height", height * ratio - 16); svgEl.setAttribute("height", height * ratio - 16);
} }
}); });
]]></script><g id="x"><g class="shape" ><rect x="12" y="12" width="326" height="216" style="fill:#E3E9FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text" x="175.000000" y="45.000000" style="text-anchor:middle;font-size:28px;fill:#0A0F25">x</text></g><g id="x.a"><g class="shape" ><rect x="137" y="87" width="53" height="66" style="fill:#EDF0FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="163.500000" y="125.500000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">a</text></g><g id="x.b"><g class="shape" ><rect x="210" y="87" width="53" height="66" style="fill:#EDF0FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="236.500000" y="125.500000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">b</text></g><g id="x.(a -&gt; a)[0]"><marker id="mk-3990223579" markerWidth="10.000000" markerHeight="12.000000" refX="7.000000" refY="6.000000" viewBox="0.000000 0.000000 10.000000 12.000000" orient="auto" markerUnits="userSpaceOnUse"> <polygon class="connection" fill="#0D32B2" stroke-width="2" points="0.000000,0.000000 10.000000,6.000000 0.000000,12.000000" /> </marker><path d="M 135.000000 109.000000 L 97.000000 109.000000 S 87.000000 109.000000 87.000000 119.000000 L 87.000000 121.000000 S 87.000000 131.000000 97.000000 131.000000 L 133.000000 131.000000" class="connection" style="fill:none;stroke:#0D32B2;stroke-width:2;" marker-end="url(#mk-3990223579)" mask="url(#672125111)"/></g><mask id="672125111" maskUnits="userSpaceOnUse" x="-100" y="-100" width="530" height="420"> ]]></script><g id="x"><g class="shape" ><rect x="12" y="12" width="276" height="166" style="fill:#E3E9FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text" x="150.000000" y="45.000000" style="text-anchor:middle;font-size:28px;fill:#0A0F25">x</text></g><g id="x.a"><g class="shape" ><rect x="112" y="62" width="53" height="66" style="fill:#EDF0FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="138.500000" y="100.500000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">a</text></g><g id="x.b"><g class="shape" ><rect x="185" y="62" width="53" height="66" style="fill:#EDF0FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="211.500000" y="100.500000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">b</text></g><g id="x.(a -&gt; a)[0]"><marker id="mk-3990223579" markerWidth="10.000000" markerHeight="12.000000" refX="7.000000" refY="6.000000" viewBox="0.000000 0.000000 10.000000 12.000000" orient="auto" markerUnits="userSpaceOnUse"> <polygon class="connection" fill="#0D32B2" stroke-width="2" points="0.000000,0.000000 10.000000,6.000000 0.000000,12.000000" /> </marker><path d="M 110.000000 84.000000 L 72.000000 84.000000 S 62.000000 84.000000 62.000000 94.000000 L 62.000000 96.000000 S 62.000000 106.000000 72.000000 106.000000 L 108.000000 106.000000" class="connection" style="fill:none;stroke:#0D32B2;stroke-width:2;" marker-end="url(#mk-3990223579)" mask="url(#1087142245)"/></g><mask id="1087142245" maskUnits="userSpaceOnUse" x="-100" y="-100" width="480" height="370">
<rect x="-100" y="-100" width="530" height="420" fill="white"></rect> <rect x="-100" y="-100" width="480" height="370" fill="white"></rect>
</mask><style type="text/css"><![CDATA[ </mask><style type="text/css"><![CDATA[
.text { .text {

Before

Width:  |  Height:  |  Size: 649 KiB

After

Width:  |  Height:  |  Size: 649 KiB

View file

@ -9,7 +9,7 @@
"x": 0, "x": 0,
"y": 148 "y": 148
}, },
"width": 966, "width": 946,
"height": 166, "height": 166,
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
@ -46,7 +46,7 @@
"id": "queue.M0", "id": "queue.M0",
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 50, "x": 40,
"y": 198 "y": 198
}, },
"width": 65, "width": 65,
@ -87,7 +87,7 @@
"id": "queue.M1", "id": "queue.M1",
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 175, "x": 165,
"y": 198 "y": 198
}, },
"width": 65, "width": 65,
@ -128,7 +128,7 @@
"id": "queue.M2", "id": "queue.M2",
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 300, "x": 290,
"y": 198 "y": 198
}, },
"width": 65, "width": 65,
@ -169,7 +169,7 @@
"id": "queue.M3", "id": "queue.M3",
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 425, "x": 415,
"y": 198 "y": 198
}, },
"width": 65, "width": 65,
@ -210,7 +210,7 @@
"id": "queue.M4", "id": "queue.M4",
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 550, "x": 540,
"y": 198 "y": 198
}, },
"width": 66, "width": 66,
@ -251,7 +251,7 @@
"id": "queue.M5", "id": "queue.M5",
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 676, "x": 666,
"y": 198 "y": 198
}, },
"width": 65, "width": 65,
@ -292,7 +292,7 @@
"id": "queue.M6", "id": "queue.M6",
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 851, "x": 841,
"y": 198 "y": 198
}, },
"width": 65, "width": 65,
@ -333,7 +333,7 @@
"id": "m0_desc", "id": "m0_desc",
"type": "text", "type": "text",
"pos": { "pos": {
"x": 30, "x": 20,
"y": 12 "y": 12
}, },
"width": 106, "width": 106,
@ -373,7 +373,7 @@
"id": "m2_desc", "id": "m2_desc",
"type": "text", "type": "text",
"pos": { "pos": {
"x": 312, "x": 302,
"y": 12 "y": 12
}, },
"width": 41, "width": 41,
@ -413,7 +413,7 @@
"id": "m5_desc", "id": "m5_desc",
"type": "text", "type": "text",
"pos": { "pos": {
"x": 664, "x": 654,
"y": 12 "y": 12
}, },
"width": 90, "width": 90,
@ -453,7 +453,7 @@
"id": "m6_desc", "id": "m6_desc",
"type": "text", "type": "text",
"pos": { "pos": {
"x": 814, "x": 804,
"y": 0 "y": 0
}, },
"width": 140, "width": 140,
@ -517,19 +517,19 @@
"labelPercentage": 0, "labelPercentage": 0,
"route": [ "route": [
{ {
"x": 82.5, "x": 72.5,
"y": 36 "y": 36
}, },
{ {
"x": 82.5, "x": 72.5,
"y": 85.6 "y": 85.6
}, },
{ {
"x": 82.5, "x": 72.5,
"y": 158 "y": 158
}, },
{ {
"x": 82.5, "x": 72.5,
"y": 198 "y": 198
} }
], ],
@ -565,19 +565,19 @@
"labelPercentage": 0, "labelPercentage": 0,
"route": [ "route": [
{ {
"x": 332.5, "x": 322.5,
"y": 36 "y": 36
}, },
{ {
"x": 332.5, "x": 322.5,
"y": 85.6 "y": 85.6
}, },
{ {
"x": 332.5, "x": 322.5,
"y": 158 "y": 158
}, },
{ {
"x": 332.5, "x": 322.5,
"y": 198 "y": 198
} }
], ],
@ -613,19 +613,19 @@
"labelPercentage": 0, "labelPercentage": 0,
"route": [ "route": [
{ {
"x": 708.5, "x": 698.5,
"y": 36 "y": 36
}, },
{ {
"x": 708.5, "x": 698.5,
"y": 85.6 "y": 85.6
}, },
{ {
"x": 708.5, "x": 698.5,
"y": 158 "y": 158
}, },
{ {
"x": 708.5, "x": 698.5,
"y": 198 "y": 198
} }
], ],
@ -661,19 +661,19 @@
"labelPercentage": 0, "labelPercentage": 0,
"route": [ "route": [
{ {
"x": 883.5, "x": 873.5,
"y": 48 "y": 48
}, },
{ {
"x": 883.5, "x": 873.5,
"y": 88 "y": 88
}, },
{ {
"x": 883.5, "x": 873.5,
"y": 158 "y": 158
}, },
{ {
"x": 883.5, "x": 873.5,
"y": 198 "y": 198
} }
], ],

View file

@ -3,7 +3,7 @@
id="d2-svg" id="d2-svg"
style="background: white;" style="background: white;"
xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"
width="1170" height="518" viewBox="-102 -102 1170 518"><style type="text/css"> width="1150" height="518" viewBox="-102 -102 1150 518"><style type="text/css">
<![CDATA[ <![CDATA[
.shape { .shape {
shape-rendering: geometricPrecision; shape-rendering: geometricPrecision;
@ -796,13 +796,13 @@ width="1170" height="518" viewBox="-102 -102 1170 518"><style type="text/css">
.md .contains-task-list:dir(rtl) .task-list-item-checkbox { .md .contains-task-list:dir(rtl) .task-list-item-checkbox {
margin: 0 -1.6em 0.25em 0.2em; margin: 0 -1.6em 0.25em 0.2em;
} }
</style><g id="queue"><g class="shape" ><path d="M 24 148 H 942 C 966 148 966 223 966 231 C 966 239 966 314 942 314 H 24 C 0 314 0 239 0 231 C 0 223 0 148 24 148 Z" style="fill:#DEE1EB;stroke:#0D32B2;stroke-width:2;"/><path d="M 942 148 C 918 148 918 223 918 231 C 918 239 918 314 942 314" style="fill:#DEE1EB;stroke:#0D32B2;stroke-width:2;"/></g></g><g id="m0_desc"><g class="shape" ></g><g><foreignObject requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" x="30.000000" y="12.000000" width="106" height="24"><div xmlns="http://www.w3.org/1999/xhtml" class="md" style="background-color:transparent;color:#0A0F25;"><p>Oldest message</p> </style><g id="queue"><g class="shape" ><path d="M 24 148 H 922 C 946 148 946 223 946 231 C 946 239 946 314 922 314 H 24 C 0 314 0 239 0 231 C 0 223 0 148 24 148 Z" style="fill:#DEE1EB;stroke:#0D32B2;stroke-width:2;"/><path d="M 922 148 C 898 148 898 223 898 231 C 898 239 898 314 922 314" style="fill:#DEE1EB;stroke:#0D32B2;stroke-width:2;"/></g></g><g id="m0_desc"><g class="shape" ></g><g><foreignObject requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" x="20.000000" y="12.000000" width="106" height="24"><div xmlns="http://www.w3.org/1999/xhtml" class="md" style="background-color:transparent;color:#0A0F25;"><p>Oldest message</p>
</div></foreignObject></g></g><g id="m2_desc"><g class="shape" ></g><g><foreignObject requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" x="312.000000" y="12.000000" width="41" height="24"><div xmlns="http://www.w3.org/1999/xhtml" class="md" style="background-color:transparent;color:#0A0F25;"><p>Offset</p> </div></foreignObject></g></g><g id="m2_desc"><g class="shape" ></g><g><foreignObject requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" x="302.000000" y="12.000000" width="41" height="24"><div xmlns="http://www.w3.org/1999/xhtml" class="md" style="background-color:transparent;color:#0A0F25;"><p>Offset</p>
</div></foreignObject></g></g><g id="m5_desc"><g class="shape" ></g><g><foreignObject requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" x="664.000000" y="12.000000" width="90" height="24"><div xmlns="http://www.w3.org/1999/xhtml" class="md" style="background-color:transparent;color:#0A0F25;"><p>Last message</p> </div></foreignObject></g></g><g id="m5_desc"><g class="shape" ></g><g><foreignObject requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" x="654.000000" y="12.000000" width="90" height="24"><div xmlns="http://www.w3.org/1999/xhtml" class="md" style="background-color:transparent;color:#0A0F25;"><p>Last message</p>
</div></foreignObject></g></g><g id="m6_desc"><g class="shape" ></g><g><foreignObject requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" x="814.000000" y="0.000000" width="140" height="48"><div xmlns="http://www.w3.org/1999/xhtml" class="md" style="background-color:transparent;color:#0A0F25;"><p>Next message will be<br /> </div></foreignObject></g></g><g id="m6_desc"><g class="shape" ></g><g><foreignObject requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" x="804.000000" y="0.000000" width="140" height="48"><div xmlns="http://www.w3.org/1999/xhtml" class="md" style="background-color:transparent;color:#0A0F25;"><p>Next message will be<br />
inserted here</p> inserted here</p>
</div></foreignObject></g></g><g id="queue.M0"><g class="shape" ><rect x="50" y="198" width="65" height="66" style="fill:#EDF0FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="82.500000" y="236.500000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">M0</text></g><g id="queue.M1"><g class="shape" ><rect x="175" y="198" width="65" height="66" style="fill:#EDF0FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="207.500000" y="236.500000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">M1</text></g><g id="queue.M2"><g class="shape" ><rect x="300" y="198" width="65" height="66" style="fill:#EDF0FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="332.500000" y="236.500000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">M2</text></g><g id="queue.M3"><g class="shape" ><rect x="425" y="198" width="65" height="66" style="fill:#EDF0FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="457.500000" y="236.500000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">M3</text></g><g id="queue.M4"><g class="shape" ><rect x="550" y="198" width="66" height="66" style="fill:#EDF0FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="583.000000" y="236.500000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">M4</text></g><g id="queue.M5"><g class="shape" ><rect x="676" y="198" width="65" height="66" style="fill:#EDF0FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="708.500000" y="236.500000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">M5</text></g><g id="queue.M6"><g class="shape" ><rect x="851" y="198" width="65" height="66" style="fill:#EDF0FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="883.500000" y="236.500000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">M6</text></g><g id="(m0_desc -&gt; queue.M0)[0]"><marker id="mk-3990223579" markerWidth="10.000000" markerHeight="12.000000" refX="7.000000" refY="6.000000" viewBox="0.000000 0.000000 10.000000 12.000000" orient="auto" markerUnits="userSpaceOnUse"> <polygon class="connection" fill="#0D32B2" stroke-width="2" points="0.000000,0.000000 10.000000,6.000000 0.000000,12.000000" /> </marker><path d="M 82.500000 38.000000 C 82.500000 85.600000 82.500000 158.000000 82.500000 194.000000" class="connection" style="fill:none;stroke:#0D32B2;stroke-width:2;" marker-end="url(#mk-3990223579)" mask="url(#1051552217)"/></g><g id="(m2_desc -&gt; queue.M2)[0]"><path d="M 332.500000 38.000000 C 332.500000 85.600000 332.500000 158.000000 332.500000 194.000000" class="connection" style="fill:none;stroke:#0D32B2;stroke-width:2;" marker-end="url(#mk-3990223579)" mask="url(#1051552217)"/></g><g id="(m5_desc -&gt; queue.M5)[0]"><path d="M 708.500000 38.000000 C 708.500000 85.600000 708.500000 158.000000 708.500000 194.000000" class="connection" style="fill:none;stroke:#0D32B2;stroke-width:2;" marker-end="url(#mk-3990223579)" mask="url(#1051552217)"/></g><g id="(m6_desc -&gt; queue.M6)[0]"><path d="M 883.500000 50.000000 C 883.500000 88.000000 883.500000 158.000000 883.500000 194.000000" class="connection" style="fill:none;stroke:#0D32B2;stroke-width:2;" marker-end="url(#mk-3990223579)" mask="url(#1051552217)"/></g><mask id="1051552217" maskUnits="userSpaceOnUse" x="-100" y="-100" width="1170" height="518"> </div></foreignObject></g></g><g id="queue.M0"><g class="shape" ><rect x="40" y="198" width="65" height="66" style="fill:#EDF0FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="72.500000" y="236.500000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">M0</text></g><g id="queue.M1"><g class="shape" ><rect x="165" y="198" width="65" height="66" style="fill:#EDF0FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="197.500000" y="236.500000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">M1</text></g><g id="queue.M2"><g class="shape" ><rect x="290" y="198" width="65" height="66" style="fill:#EDF0FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="322.500000" y="236.500000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">M2</text></g><g id="queue.M3"><g class="shape" ><rect x="415" y="198" width="65" height="66" style="fill:#EDF0FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="447.500000" y="236.500000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">M3</text></g><g id="queue.M4"><g class="shape" ><rect x="540" y="198" width="66" height="66" style="fill:#EDF0FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="573.000000" y="236.500000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">M4</text></g><g id="queue.M5"><g class="shape" ><rect x="666" y="198" width="65" height="66" style="fill:#EDF0FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="698.500000" y="236.500000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">M5</text></g><g id="queue.M6"><g class="shape" ><rect x="841" y="198" width="65" height="66" style="fill:#EDF0FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="873.500000" y="236.500000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">M6</text></g><g id="(m0_desc -&gt; queue.M0)[0]"><marker id="mk-3990223579" markerWidth="10.000000" markerHeight="12.000000" refX="7.000000" refY="6.000000" viewBox="0.000000 0.000000 10.000000 12.000000" orient="auto" markerUnits="userSpaceOnUse"> <polygon class="connection" fill="#0D32B2" stroke-width="2" points="0.000000,0.000000 10.000000,6.000000 0.000000,12.000000" /> </marker><path d="M 72.500000 38.000000 C 72.500000 85.600000 72.500000 158.000000 72.500000 194.000000" class="connection" style="fill:none;stroke:#0D32B2;stroke-width:2;" marker-end="url(#mk-3990223579)" mask="url(#1682804903)"/></g><g id="(m2_desc -&gt; queue.M2)[0]"><path d="M 322.500000 38.000000 C 322.500000 85.600000 322.500000 158.000000 322.500000 194.000000" class="connection" style="fill:none;stroke:#0D32B2;stroke-width:2;" marker-end="url(#mk-3990223579)" mask="url(#1682804903)"/></g><g id="(m5_desc -&gt; queue.M5)[0]"><path d="M 698.500000 38.000000 C 698.500000 85.600000 698.500000 158.000000 698.500000 194.000000" class="connection" style="fill:none;stroke:#0D32B2;stroke-width:2;" marker-end="url(#mk-3990223579)" mask="url(#1682804903)"/></g><g id="(m6_desc -&gt; queue.M6)[0]"><path d="M 873.500000 50.000000 C 873.500000 88.000000 873.500000 158.000000 873.500000 194.000000" class="connection" style="fill:none;stroke:#0D32B2;stroke-width:2;" marker-end="url(#mk-3990223579)" mask="url(#1682804903)"/></g><mask id="1682804903" maskUnits="userSpaceOnUse" x="-100" y="-100" width="1150" height="518">
<rect x="-100" y="-100" width="1170" height="518" fill="white"></rect> <rect x="-100" y="-100" width="1150" height="518" fill="white"></rect>
</mask><style type="text/css"><![CDATA[ </mask><style type="text/css"><![CDATA[
.text { .text {

Before

Width:  |  Height:  |  Size: 664 KiB

After

Width:  |  Height:  |  Size: 664 KiB

View file

@ -7,10 +7,10 @@
"type": "queue", "type": "queue",
"pos": { "pos": {
"x": 12, "x": 12,
"y": 165 "y": 145
}, },
"width": 726, "width": 676,
"height": 216, "height": 166,
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
"strokeWidth": 2, "strokeWidth": 2,
@ -46,8 +46,8 @@
"id": "queue.M0", "id": "queue.M0",
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 87, "x": 62,
"y": 240 "y": 195
}, },
"width": 65, "width": 65,
"height": 66, "height": 66,
@ -87,8 +87,8 @@
"id": "queue.M1", "id": "queue.M1",
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 172, "x": 147,
"y": 240 "y": 195
}, },
"width": 65, "width": 65,
"height": 66, "height": 66,
@ -128,8 +128,8 @@
"id": "queue.M2", "id": "queue.M2",
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 257, "x": 232,
"y": 240 "y": 195
}, },
"width": 65, "width": 65,
"height": 66, "height": 66,
@ -169,8 +169,8 @@
"id": "queue.M3", "id": "queue.M3",
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 342, "x": 317,
"y": 240 "y": 195
}, },
"width": 65, "width": 65,
"height": 66, "height": 66,
@ -210,8 +210,8 @@
"id": "queue.M4", "id": "queue.M4",
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 427, "x": 402,
"y": 240 "y": 195
}, },
"width": 66, "width": 66,
"height": 66, "height": 66,
@ -251,8 +251,8 @@
"id": "queue.M5", "id": "queue.M5",
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 513, "x": 488,
"y": 240 "y": 195
}, },
"width": 65, "width": 65,
"height": 66, "height": 66,
@ -292,8 +292,8 @@
"id": "queue.M6", "id": "queue.M6",
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 598, "x": 573,
"y": 240 "y": 195
}, },
"width": 65, "width": 65,
"height": 66, "height": 66,
@ -333,7 +333,7 @@
"id": "m0_desc", "id": "m0_desc",
"type": "text", "type": "text",
"pos": { "pos": {
"x": 66, "x": 41,
"y": 36 "y": 36
}, },
"width": 106, "width": 106,
@ -373,7 +373,7 @@
"id": "m2_desc", "id": "m2_desc",
"type": "text", "type": "text",
"pos": { "pos": {
"x": 269, "x": 244,
"y": 36 "y": 36
}, },
"width": 41, "width": 41,
@ -413,7 +413,7 @@
"id": "m5_desc", "id": "m5_desc",
"type": "text", "type": "text",
"pos": { "pos": {
"x": 450, "x": 425,
"y": 36 "y": 36
}, },
"width": 90, "width": 90,
@ -453,7 +453,7 @@
"id": "m6_desc", "id": "m6_desc",
"type": "text", "type": "text",
"pos": { "pos": {
"x": 560, "x": 535,
"y": 12 "y": 12
}, },
"width": 140, "width": 140,
@ -517,12 +517,12 @@
"labelPercentage": 0, "labelPercentage": 0,
"route": [ "route": [
{ {
"x": 119.5, "x": 94.5,
"y": 60 "y": 60
}, },
{ {
"x": 119.5, "x": 94.5,
"y": 240 "y": 195
} }
], ],
"animated": false, "animated": false,
@ -556,12 +556,12 @@
"labelPercentage": 0, "labelPercentage": 0,
"route": [ "route": [
{ {
"x": 289.5, "x": 264.5,
"y": 60 "y": 60
}, },
{ {
"x": 289.5, "x": 264.5,
"y": 240 "y": 195
} }
], ],
"animated": false, "animated": false,
@ -595,20 +595,20 @@
"labelPercentage": 0, "labelPercentage": 0,
"route": [ "route": [
{ {
"x": 495.5, "x": 470.5,
"y": 60 "y": 60
}, },
{ {
"x": 495.5, "x": 470.5,
"y": 110 "y": 100
}, },
{ {
"x": 545.5, "x": 520.5,
"y": 110 "y": 100
}, },
{ {
"x": 545.5, "x": 520.5,
"y": 240 "y": 195
} }
], ],
"animated": false, "animated": false,
@ -642,12 +642,12 @@
"labelPercentage": 0, "labelPercentage": 0,
"route": [ "route": [
{ {
"x": 630.5, "x": 605.5,
"y": 60 "y": 60
}, },
{ {
"x": 630.5, "x": 605.5,
"y": 240 "y": 195
} }
], ],
"animated": false, "animated": false,

View file

@ -3,7 +3,7 @@
id="d2-svg" id="d2-svg"
style="background: white;" style="background: white;"
xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"
width="930" height="573" viewBox="-90 -90 930 573"><style type="text/css"> width="880" height="503" viewBox="-90 -90 880 503"><style type="text/css">
<![CDATA[ <![CDATA[
.shape { .shape {
shape-rendering: geometricPrecision; shape-rendering: geometricPrecision;
@ -796,13 +796,13 @@ width="930" height="573" viewBox="-90 -90 930 573"><style type="text/css">
.md .contains-task-list:dir(rtl) .task-list-item-checkbox { .md .contains-task-list:dir(rtl) .task-list-item-checkbox {
margin: 0 -1.6em 0.25em 0.2em; margin: 0 -1.6em 0.25em 0.2em;
} }
</style><g id="queue"><g class="shape" ><path d="M 36 165 H 714 C 738 165 738 262 738 273 C 738 284 738 381 714 381 H 36 C 12 381 12 284 12 273 C 12 262 12 165 36 165 Z" style="fill:#DEE1EB;stroke:#0D32B2;stroke-width:2;"/><path d="M 714 165 C 690 165 690 262 690 273 C 690 284 690 381 714 381" style="fill:#DEE1EB;stroke:#0D32B2;stroke-width:2;"/></g></g><g id="m0_desc"><g class="shape" ></g><g><foreignObject requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" x="66.000000" y="36.000000" width="106" height="24"><div xmlns="http://www.w3.org/1999/xhtml" class="md" style="background-color:transparent;color:#0A0F25;"><p>Oldest message</p> </style><g id="queue"><g class="shape" ><path d="M 36 145 H 664 C 688 145 688 220 688 228 C 688 236 688 311 664 311 H 36 C 12 311 12 236 12 228 C 12 220 12 145 36 145 Z" style="fill:#DEE1EB;stroke:#0D32B2;stroke-width:2;"/><path d="M 664 145 C 640 145 640 220 640 228 C 640 236 640 311 664 311" style="fill:#DEE1EB;stroke:#0D32B2;stroke-width:2;"/></g></g><g id="m0_desc"><g class="shape" ></g><g><foreignObject requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" x="41.000000" y="36.000000" width="106" height="24"><div xmlns="http://www.w3.org/1999/xhtml" class="md" style="background-color:transparent;color:#0A0F25;"><p>Oldest message</p>
</div></foreignObject></g></g><g id="m2_desc"><g class="shape" ></g><g><foreignObject requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" x="269.000000" y="36.000000" width="41" height="24"><div xmlns="http://www.w3.org/1999/xhtml" class="md" style="background-color:transparent;color:#0A0F25;"><p>Offset</p> </div></foreignObject></g></g><g id="m2_desc"><g class="shape" ></g><g><foreignObject requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" x="244.000000" y="36.000000" width="41" height="24"><div xmlns="http://www.w3.org/1999/xhtml" class="md" style="background-color:transparent;color:#0A0F25;"><p>Offset</p>
</div></foreignObject></g></g><g id="m5_desc"><g class="shape" ></g><g><foreignObject requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" x="450.000000" y="36.000000" width="90" height="24"><div xmlns="http://www.w3.org/1999/xhtml" class="md" style="background-color:transparent;color:#0A0F25;"><p>Last message</p> </div></foreignObject></g></g><g id="m5_desc"><g class="shape" ></g><g><foreignObject requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" x="425.000000" y="36.000000" width="90" height="24"><div xmlns="http://www.w3.org/1999/xhtml" class="md" style="background-color:transparent;color:#0A0F25;"><p>Last message</p>
</div></foreignObject></g></g><g id="m6_desc"><g class="shape" ></g><g><foreignObject requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" x="560.000000" y="12.000000" width="140" height="48"><div xmlns="http://www.w3.org/1999/xhtml" class="md" style="background-color:transparent;color:#0A0F25;"><p>Next message will be<br /> </div></foreignObject></g></g><g id="m6_desc"><g class="shape" ></g><g><foreignObject requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" x="535.000000" y="12.000000" width="140" height="48"><div xmlns="http://www.w3.org/1999/xhtml" class="md" style="background-color:transparent;color:#0A0F25;"><p>Next message will be<br />
inserted here</p> inserted here</p>
</div></foreignObject></g></g><g id="queue.M0"><g class="shape" ><rect x="87" y="240" width="65" height="66" style="fill:#EDF0FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="119.500000" y="278.500000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">M0</text></g><g id="queue.M1"><g class="shape" ><rect x="172" y="240" width="65" height="66" style="fill:#EDF0FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="204.500000" y="278.500000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">M1</text></g><g id="queue.M2"><g class="shape" ><rect x="257" y="240" width="65" height="66" style="fill:#EDF0FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="289.500000" y="278.500000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">M2</text></g><g id="queue.M3"><g class="shape" ><rect x="342" y="240" width="65" height="66" style="fill:#EDF0FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="374.500000" y="278.500000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">M3</text></g><g id="queue.M4"><g class="shape" ><rect x="427" y="240" width="66" height="66" style="fill:#EDF0FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="460.000000" y="278.500000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">M4</text></g><g id="queue.M5"><g class="shape" ><rect x="513" y="240" width="65" height="66" style="fill:#EDF0FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="545.500000" y="278.500000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">M5</text></g><g id="queue.M6"><g class="shape" ><rect x="598" y="240" width="65" height="66" style="fill:#EDF0FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="630.500000" y="278.500000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">M6</text></g><g id="(m0_desc -&gt; queue.M0)[0]"><marker id="mk-3990223579" markerWidth="10.000000" markerHeight="12.000000" refX="7.000000" refY="6.000000" viewBox="0.000000 0.000000 10.000000 12.000000" orient="auto" markerUnits="userSpaceOnUse"> <polygon class="connection" fill="#0D32B2" stroke-width="2" points="0.000000,0.000000 10.000000,6.000000 0.000000,12.000000" /> </marker><path d="M 119.500000 62.000000 L 119.500000 236.000000" class="connection" style="fill:none;stroke:#0D32B2;stroke-width:2;" marker-end="url(#mk-3990223579)" mask="url(#2142408228)"/></g><g id="(m2_desc -&gt; queue.M2)[0]"><path d="M 289.500000 62.000000 L 289.500000 236.000000" class="connection" style="fill:none;stroke:#0D32B2;stroke-width:2;" marker-end="url(#mk-3990223579)" mask="url(#2142408228)"/></g><g id="(m5_desc -&gt; queue.M5)[0]"><path d="M 495.500000 62.000000 L 495.500000 100.000000 S 495.500000 110.000000 505.500000 110.000000 L 535.500000 110.000000 S 545.500000 110.000000 545.500000 120.000000 L 545.500000 236.000000" class="connection" style="fill:none;stroke:#0D32B2;stroke-width:2;" marker-end="url(#mk-3990223579)" mask="url(#2142408228)"/></g><g id="(m6_desc -&gt; queue.M6)[0]"><path d="M 630.500000 62.000000 L 630.500000 236.000000" class="connection" style="fill:none;stroke:#0D32B2;stroke-width:2;" marker-end="url(#mk-3990223579)" mask="url(#2142408228)"/></g><mask id="2142408228" maskUnits="userSpaceOnUse" x="-100" y="-100" width="930" height="573"> </div></foreignObject></g></g><g id="queue.M0"><g class="shape" ><rect x="62" y="195" width="65" height="66" style="fill:#EDF0FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="94.500000" y="233.500000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">M0</text></g><g id="queue.M1"><g class="shape" ><rect x="147" y="195" width="65" height="66" style="fill:#EDF0FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="179.500000" y="233.500000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">M1</text></g><g id="queue.M2"><g class="shape" ><rect x="232" y="195" width="65" height="66" style="fill:#EDF0FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="264.500000" y="233.500000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">M2</text></g><g id="queue.M3"><g class="shape" ><rect x="317" y="195" width="65" height="66" style="fill:#EDF0FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="349.500000" y="233.500000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">M3</text></g><g id="queue.M4"><g class="shape" ><rect x="402" y="195" width="66" height="66" style="fill:#EDF0FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="435.000000" y="233.500000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">M4</text></g><g id="queue.M5"><g class="shape" ><rect x="488" y="195" width="65" height="66" style="fill:#EDF0FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="520.500000" y="233.500000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">M5</text></g><g id="queue.M6"><g class="shape" ><rect x="573" y="195" width="65" height="66" style="fill:#EDF0FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="605.500000" y="233.500000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">M6</text></g><g id="(m0_desc -&gt; queue.M0)[0]"><marker id="mk-3990223579" markerWidth="10.000000" markerHeight="12.000000" refX="7.000000" refY="6.000000" viewBox="0.000000 0.000000 10.000000 12.000000" orient="auto" markerUnits="userSpaceOnUse"> <polygon class="connection" fill="#0D32B2" stroke-width="2" points="0.000000,0.000000 10.000000,6.000000 0.000000,12.000000" /> </marker><path d="M 94.500000 62.000000 L 94.500000 191.000000" class="connection" style="fill:none;stroke:#0D32B2;stroke-width:2;" marker-end="url(#mk-3990223579)" mask="url(#3488592566)"/></g><g id="(m2_desc -&gt; queue.M2)[0]"><path d="M 264.500000 62.000000 L 264.500000 191.000000" class="connection" style="fill:none;stroke:#0D32B2;stroke-width:2;" marker-end="url(#mk-3990223579)" mask="url(#3488592566)"/></g><g id="(m5_desc -&gt; queue.M5)[0]"><path d="M 470.500000 62.000000 L 470.500000 90.000000 S 470.500000 100.000000 480.500000 100.000000 L 510.500000 100.000000 S 520.500000 100.000000 520.500000 110.000000 L 520.500000 191.000000" class="connection" style="fill:none;stroke:#0D32B2;stroke-width:2;" marker-end="url(#mk-3990223579)" mask="url(#3488592566)"/></g><g id="(m6_desc -&gt; queue.M6)[0]"><path d="M 605.500000 62.000000 L 605.500000 191.000000" class="connection" style="fill:none;stroke:#0D32B2;stroke-width:2;" marker-end="url(#mk-3990223579)" mask="url(#3488592566)"/></g><mask id="3488592566" maskUnits="userSpaceOnUse" x="-100" y="-100" width="880" height="503">
<rect x="-100" y="-100" width="930" height="573" fill="white"></rect> <rect x="-100" y="-100" width="880" height="503" fill="white"></rect>
</mask><style type="text/css"><![CDATA[ </mask><style type="text/css"><![CDATA[
.text { .text {

Before

Width:  |  Height:  |  Size: 664 KiB

After

Width:  |  Height:  |  Size: 664 KiB

View file

@ -48,7 +48,7 @@
"type": "sequence_diagram", "type": "sequence_diagram",
"pos": { "pos": {
"x": 12, "x": 12,
"y": 178 "y": 148
}, },
"width": 106, "width": 106,
"height": 66, "height": 66,
@ -117,7 +117,7 @@
}, },
{ {
"x": 65, "x": 65,
"y": 178 "y": 148
} }
], ],
"animated": false, "animated": false,

View file

@ -3,7 +3,7 @@
id="d2-svg" id="d2-svg"
style="background: white;" style="background: white;"
xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"
width="306" height="432" viewBox="-88 -88 306 432"><style type="text/css"> width="306" height="402" viewBox="-88 -88 306 402"><style type="text/css">
<![CDATA[ <![CDATA[
.shape { .shape {
shape-rendering: geometricPrecision; shape-rendering: geometricPrecision;
@ -39,8 +39,8 @@ width="306" height="432" viewBox="-88 -88 306 432"><style type="text/css">
svgEl.setAttribute("height", height * ratio - 16); svgEl.setAttribute("height", height * ratio - 16);
} }
}); });
]]></script><g id="A"><g class="shape" ><rect x="25" y="12" width="80" height="66" style="fill:#FFFFFF;stroke:#0D32B2;stroke-width:0;" /></g><text class="text-bold" x="65.000000" y="50.500000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">hello</text></g><g id="B"><g class="shape" ><rect x="12" y="178" width="106" height="66" style="fill:#FFFFFF;stroke:#0D32B2;stroke-width:0;" /></g><text class="text-bold" x="65.000000" y="216.500000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">goodbye</text></g><g id="(A -&gt; B)[0]"><marker id="mk-3990223579" markerWidth="10.000000" markerHeight="12.000000" refX="7.000000" refY="6.000000" viewBox="0.000000 0.000000 10.000000 12.000000" orient="auto" markerUnits="userSpaceOnUse"> <polygon class="connection" fill="#0D32B2" stroke-width="2" points="0.000000,0.000000 10.000000,6.000000 0.000000,12.000000" /> </marker><path d="M 65.000000 79.000000 L 65.000000 175.000000" class="connection" style="fill:none;stroke:#0D32B2;stroke-width:2;" marker-end="url(#mk-3990223579)" mask="url(#2561647952)"/></g><mask id="2561647952" maskUnits="userSpaceOnUse" x="-100" y="-100" width="306" height="432"> ]]></script><g id="A"><g class="shape" ><rect x="25" y="12" width="80" height="66" style="fill:#FFFFFF;stroke:#0D32B2;stroke-width:0;" /></g><text class="text-bold" x="65.000000" y="50.500000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">hello</text></g><g id="B"><g class="shape" ><rect x="12" y="148" width="106" height="66" style="fill:#FFFFFF;stroke:#0D32B2;stroke-width:0;" /></g><text class="text-bold" x="65.000000" y="186.500000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">goodbye</text></g><g id="(A -&gt; B)[0]"><marker id="mk-3990223579" markerWidth="10.000000" markerHeight="12.000000" refX="7.000000" refY="6.000000" viewBox="0.000000 0.000000 10.000000 12.000000" orient="auto" markerUnits="userSpaceOnUse"> <polygon class="connection" fill="#0D32B2" stroke-width="2" points="0.000000,0.000000 10.000000,6.000000 0.000000,12.000000" /> </marker><path d="M 65.000000 79.000000 L 65.000000 145.000000" class="connection" style="fill:none;stroke:#0D32B2;stroke-width:2;" marker-end="url(#mk-3990223579)" mask="url(#2235083474)"/></g><mask id="2235083474" maskUnits="userSpaceOnUse" x="-100" y="-100" width="306" height="402">
<rect x="-100" y="-100" width="306" height="432" fill="white"></rect> <rect x="-100" y="-100" width="306" height="402" fill="white"></rect>
</mask><style type="text/css"><![CDATA[ </mask><style type="text/css"><![CDATA[
.text-bold { .text-bold {

Before

Width:  |  Height:  |  Size: 325 KiB

After

Width:  |  Height:  |  Size: 325 KiB

View file

@ -7,7 +7,7 @@
"type": "text", "type": "text",
"pos": { "pos": {
"x": 12, "x": 12,
"y": 178 "y": 148
}, },
"width": 95, "width": 95,
"height": 115, "height": 115,
@ -88,7 +88,7 @@
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 33, "x": 33,
"y": 393 "y": 333
}, },
"width": 53, "width": 53,
"height": 66, "height": 66,
@ -157,7 +157,7 @@
}, },
{ {
"x": 59.5, "x": 59.5,
"y": 178 "y": 148
} }
], ],
"animated": false, "animated": false,
@ -192,11 +192,11 @@
"route": [ "route": [
{ {
"x": 59.5, "x": 59.5,
"y": 293 "y": 263
}, },
{ {
"x": 59.5, "x": 59.5,
"y": 393 "y": 333
} }
], ],
"animated": false, "animated": false,

View file

@ -3,7 +3,7 @@
id="d2-svg" id="d2-svg"
style="background: white;" style="background: white;"
xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"
width="299" height="651" viewBox="-90 -90 299 651"><style type="text/css"> width="299" height="591" viewBox="-90 -90 299 591"><style type="text/css">
<![CDATA[ <![CDATA[
.shape { .shape {
shape-rendering: geometricPrecision; shape-rendering: geometricPrecision;
@ -796,7 +796,7 @@ width="299" height="651" viewBox="-90 -90 299 651"><style type="text/css">
.md .contains-task-list:dir(rtl) .task-list-item-checkbox { .md .contains-task-list:dir(rtl) .task-list-item-checkbox {
margin: 0 -1.6em 0.25em 0.2em; margin: 0 -1.6em 0.25em 0.2em;
} }
</style><g id="md"><g class="shape" ></g><g><foreignObject requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" x="12.000000" y="178.000000" width="95" height="115"><div xmlns="http://www.w3.org/1999/xhtml" class="md" style="background-color:transparent;color:#0A0F25;"><h1>hey</h1> </style><g id="md"><g class="shape" ></g><g><foreignObject requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" x="12.000000" y="148.000000" width="95" height="115"><div xmlns="http://www.w3.org/1999/xhtml" class="md" style="background-color:transparent;color:#0A0F25;"><h1>hey</h1>
<ul> <ul>
<li>they <li>they
<ol> <ol>
@ -804,8 +804,8 @@ width="299" height="651" viewBox="-90 -90 299 651"><style type="text/css">
</ol> </ol>
</li> </li>
</ul> </ul>
</div></foreignObject></g></g><g id="a"><g class="shape" ><rect x="33" y="12" width="53" height="66" style="fill:#F7F8FE;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="59.500000" y="50.500000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">a</text></g><g id="b"><g class="shape" ><rect x="33" y="393" width="53" height="66" style="fill:#F7F8FE;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="59.500000" y="431.500000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">b</text></g><g id="(a -&gt; md)[0]"><marker id="mk-3990223579" markerWidth="10.000000" markerHeight="12.000000" refX="7.000000" refY="6.000000" viewBox="0.000000 0.000000 10.000000 12.000000" orient="auto" markerUnits="userSpaceOnUse"> <polygon class="connection" fill="#0D32B2" stroke-width="2" points="0.000000,0.000000 10.000000,6.000000 0.000000,12.000000" /> </marker><path d="M 59.500000 80.000000 L 59.500000 174.000000" class="connection" style="fill:none;stroke:#0D32B2;stroke-width:2;" marker-end="url(#mk-3990223579)" mask="url(#500331167)"/></g><g id="(md -&gt; b)[0]"><path d="M 59.500000 295.000000 L 59.500000 389.000000" class="connection" style="fill:none;stroke:#0D32B2;stroke-width:2;" marker-end="url(#mk-3990223579)" mask="url(#500331167)"/></g><mask id="500331167" maskUnits="userSpaceOnUse" x="-100" y="-100" width="299" height="651"> </div></foreignObject></g></g><g id="a"><g class="shape" ><rect x="33" y="12" width="53" height="66" style="fill:#F7F8FE;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="59.500000" y="50.500000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">a</text></g><g id="b"><g class="shape" ><rect x="33" y="333" width="53" height="66" style="fill:#F7F8FE;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="59.500000" y="371.500000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">b</text></g><g id="(a -&gt; md)[0]"><marker id="mk-3990223579" markerWidth="10.000000" markerHeight="12.000000" refX="7.000000" refY="6.000000" viewBox="0.000000 0.000000 10.000000 12.000000" orient="auto" markerUnits="userSpaceOnUse"> <polygon class="connection" fill="#0D32B2" stroke-width="2" points="0.000000,0.000000 10.000000,6.000000 0.000000,12.000000" /> </marker><path d="M 59.500000 80.000000 L 59.500000 144.000000" class="connection" style="fill:none;stroke:#0D32B2;stroke-width:2;" marker-end="url(#mk-3990223579)" mask="url(#1583904512)"/></g><g id="(md -&gt; b)[0]"><path d="M 59.500000 265.000000 L 59.500000 329.000000" class="connection" style="fill:none;stroke:#0D32B2;stroke-width:2;" marker-end="url(#mk-3990223579)" mask="url(#1583904512)"/></g><mask id="1583904512" maskUnits="userSpaceOnUse" x="-100" y="-100" width="299" height="591">
<rect x="-100" y="-100" width="299" height="651" fill="white"></rect> <rect x="-100" y="-100" width="299" height="591" fill="white"></rect>
</mask><style type="text/css"><![CDATA[ </mask><style type="text/css"><![CDATA[
.text { .text {

Before

Width:  |  Height:  |  Size: 660 KiB

After

Width:  |  Height:  |  Size: 660 KiB

View file

@ -50,7 +50,7 @@
"type": "sql_table", "type": "sql_table",
"pos": { "pos": {
"x": 362, "x": 362,
"y": 204 "y": 174
}, },
"width": 381, "width": 381,
"height": 36, "height": 36,
@ -93,7 +93,7 @@
"type": "sql_table", "type": "sql_table",
"pos": { "pos": {
"x": 362, "x": 362,
"y": 340 "y": 280
}, },
"width": 381, "width": 381,
"height": 72, "height": 72,
@ -193,7 +193,7 @@
}, },
{ {
"x": 553, "x": 553,
"y": 204 "y": 174
} }
], ],
"animated": false, "animated": false,
@ -228,11 +228,11 @@
"route": [ "route": [
{ {
"x": 553, "x": 553,
"y": 240 "y": 210
}, },
{ {
"x": 553, "x": 553,
"y": 340 "y": 280
} }
], ],
"animated": false, "animated": false,

View file

@ -3,7 +3,7 @@
id="d2-svg" id="d2-svg"
style="background: white;" style="background: white;"
xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"
width="1286" height="604" viewBox="-90 -90 1286 604"><style type="text/css"> width="1286" height="544" viewBox="-90 -90 1286 544"><style type="text/css">
<![CDATA[ <![CDATA[
.shape { .shape {
shape-rendering: geometricPrecision; shape-rendering: geometricPrecision;
@ -39,10 +39,10 @@ width="1286" height="604" viewBox="-90 -90 1286 604"><style type="text/css">
svgEl.setAttribute("height", height * ratio - 16); svgEl.setAttribute("height", height * ratio - 16);
} }
}); });
]]></script><g id="class"><g class="shape" ><rect class="shape" x="12" y="12" width="1082" height="92" style="fill:#FFFFFF;stroke:#0A0F25;stroke-width:2;"/><rect class="class_header" x="12.000000" y="12.000000" width="1082.000000" height="92.000000" fill="#0A0F25" /><text class="text-mono" x="553.000000" y="65.750000" style="text-anchor:middle;font-size:24px;fill:#FFFFFF">RefreshAuthorizationPolicyProtocolServerSideTranslatorProtocolBuffer</text><line x1="12.000000" y1="104.000000" x2="1094.000000" y2="104.000000" style="stroke-width:1;stroke:#0A0F25" /></g></g><g id="table"><g class="shape" ><rect class="shape" x="362" y="204" width="381" height="36" style="fill:#FFFFFF;stroke:#0A0F25;stroke-width:2;"/><rect class="class_header" x="362.000000" y="204.000000" width="381.000000" height="36.000000" fill="#0A0F25" /><text class="text" x="372.000000" y="229.750000" style="text-anchor:start;font-size:24px;fill:#FFFFFF">RefreshAuthorizationPolicyCache</text></g></g><g id="table with short col"><g class="shape" ><rect class="shape" x="362" y="340" width="381" height="72" style="fill:#FFFFFF;stroke:#0A0F25;stroke-width:2;"/><rect class="class_header" x="362.000000" y="340.000000" width="381.000000" height="36.000000" fill="#0A0F25" /><text class="text" x="372.000000" y="365.750000" style="text-anchor:start;font-size:24px;fill:#FFFFFF">RefreshAuthorizationPolicyCache</text><text class="text" x="372.000000" y="399.000000" style="text-anchor:start;font-size:20px;fill:#0D32B2">ok</text> ]]></script><g id="class"><g class="shape" ><rect class="shape" x="12" y="12" width="1082" height="92" style="fill:#FFFFFF;stroke:#0A0F25;stroke-width:2;"/><rect class="class_header" x="12.000000" y="12.000000" width="1082.000000" height="92.000000" fill="#0A0F25" /><text class="text-mono" x="553.000000" y="65.750000" style="text-anchor:middle;font-size:24px;fill:#FFFFFF">RefreshAuthorizationPolicyProtocolServerSideTranslatorProtocolBuffer</text><line x1="12.000000" y1="104.000000" x2="1094.000000" y2="104.000000" style="stroke-width:1;stroke:#0A0F25" /></g></g><g id="table"><g class="shape" ><rect class="shape" x="362" y="174" width="381" height="36" style="fill:#FFFFFF;stroke:#0A0F25;stroke-width:2;"/><rect class="class_header" x="362.000000" y="174.000000" width="381.000000" height="36.000000" fill="#0A0F25" /><text class="text" x="372.000000" y="199.750000" style="text-anchor:start;font-size:24px;fill:#FFFFFF">RefreshAuthorizationPolicyCache</text></g></g><g id="table with short col"><g class="shape" ><rect class="shape" x="362" y="280" width="381" height="72" style="fill:#FFFFFF;stroke:#0A0F25;stroke-width:2;"/><rect class="class_header" x="362.000000" y="280.000000" width="381.000000" height="36.000000" fill="#0A0F25" /><text class="text" x="372.000000" y="305.750000" style="text-anchor:start;font-size:24px;fill:#FFFFFF">RefreshAuthorizationPolicyCache</text><text class="text" x="372.000000" y="339.000000" style="text-anchor:start;font-size:20px;fill:#0D32B2">ok</text>
<text class="text" x="413.000000" y="399.000000" style="text-anchor:start;font-size:20px;fill:#676C7E"></text> <text class="text" x="413.000000" y="339.000000" style="text-anchor:start;font-size:20px;fill:#676C7E"></text>
<text class="text" x="723.000000" y="399.000000" style="text-anchor:end;font-size:20px;fill:#4A6FF3;letter-spacing:2px;"></text><line x1="362.000000" y1="412.000000" x2="743.000000" y2="412.000000" style="stroke-width:2;stroke:#0A0F25" /></g></g><g id="(class -&gt; table)[0]"><marker id="mk-3990223579" markerWidth="10.000000" markerHeight="12.000000" refX="7.000000" refY="6.000000" viewBox="0.000000 0.000000 10.000000 12.000000" orient="auto" markerUnits="userSpaceOnUse"> <polygon class="connection" fill="#0D32B2" stroke-width="2" points="0.000000,0.000000 10.000000,6.000000 0.000000,12.000000" /> </marker><path d="M 553.000000 106.000000 L 553.000000 200.000000" class="connection" style="fill:none;stroke:#0D32B2;stroke-width:2;" marker-end="url(#mk-3990223579)" mask="url(#3644627139)"/></g><g id="(table -&gt; table with short col)[0]"><path d="M 553.000000 242.000000 L 553.000000 336.000000" class="connection" style="fill:none;stroke:#0D32B2;stroke-width:2;" marker-end="url(#mk-3990223579)" mask="url(#3644627139)"/></g><mask id="3644627139" maskUnits="userSpaceOnUse" x="-100" y="-100" width="1286" height="604"> <text class="text" x="723.000000" y="339.000000" style="text-anchor:end;font-size:20px;fill:#4A6FF3;letter-spacing:2px;"></text><line x1="362.000000" y1="352.000000" x2="743.000000" y2="352.000000" style="stroke-width:2;stroke:#0A0F25" /></g></g><g id="(class -&gt; table)[0]"><marker id="mk-3990223579" markerWidth="10.000000" markerHeight="12.000000" refX="7.000000" refY="6.000000" viewBox="0.000000 0.000000 10.000000 12.000000" orient="auto" markerUnits="userSpaceOnUse"> <polygon class="connection" fill="#0D32B2" stroke-width="2" points="0.000000,0.000000 10.000000,6.000000 0.000000,12.000000" /> </marker><path d="M 553.000000 106.000000 L 553.000000 170.000000" class="connection" style="fill:none;stroke:#0D32B2;stroke-width:2;" marker-end="url(#mk-3990223579)" mask="url(#2395198926)"/></g><g id="(table -&gt; table with short col)[0]"><path d="M 553.000000 212.000000 L 553.000000 276.000000" class="connection" style="fill:none;stroke:#0D32B2;stroke-width:2;" marker-end="url(#mk-3990223579)" mask="url(#2395198926)"/></g><mask id="2395198926" maskUnits="userSpaceOnUse" x="-100" y="-100" width="1286" height="544">
<rect x="-100" y="-100" width="1286" height="604" fill="white"></rect> <rect x="-100" y="-100" width="1286" height="544" fill="white"></rect>
</mask><style type="text/css"><![CDATA[ </mask><style type="text/css"><![CDATA[
.text { .text {

Before

Width:  |  Height:  |  Size: 508 KiB

After

Width:  |  Height:  |  Size: 508 KiB

View file

@ -88,7 +88,7 @@
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 146, "x": 146,
"y": 315 "y": 255
}, },
"width": 53, "width": 53,
"height": 66, "height": 66,
@ -157,7 +157,7 @@
}, },
{ {
"x": 173, "x": 173,
"y": 315 "y": 255
} }
], ],
"animated": false, "animated": false,

View file

@ -3,7 +3,7 @@
id="d2-svg" id="d2-svg"
style="background: white;" style="background: white;"
xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"
width="713" height="573" viewBox="-88 -90 713 573"><style type="text/css"> width="713" height="513" viewBox="-88 -90 713 513"><style type="text/css">
<![CDATA[ <![CDATA[
.shape { .shape {
shape-rendering: geometricPrecision; shape-rendering: geometricPrecision;
@ -797,9 +797,9 @@ width="713" height="573" viewBox="-88 -90 713 573"><style type="text/css">
margin: 0 -1.6em 0.25em 0.2em; margin: 0 -1.6em 0.25em 0.2em;
} }
</style><g id="x" style='opacity:0.400000'><g class="shape" ><rect x="146" y="12" width="53" height="66" style="fill:#F7F8FE;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="172.500000" y="50.500000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">x</text></g><g id="y" style='opacity:0.400000'><g class="shape" ></g><g><foreignObject requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" x="219.000000" y="33.000000" width="304" height="24"><div xmlns="http://www.w3.org/1999/xhtml" class="md" style="background-color:transparent;color:#0A0F25;"><p>linux: because a PC is a terrible thing to waste</p> </style><g id="x" style='opacity:0.400000'><g class="shape" ><rect x="146" y="12" width="53" height="66" style="fill:#F7F8FE;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="172.500000" y="50.500000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">x</text></g><g id="y" style='opacity:0.400000'><g class="shape" ></g><g><foreignObject requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" x="219.000000" y="33.000000" width="304" height="24"><div xmlns="http://www.w3.org/1999/xhtml" class="md" style="background-color:transparent;color:#0A0F25;"><p>linux: because a PC is a terrible thing to waste</p>
</div></foreignObject></g></g><g id="a"><g class="shape" ><rect x="146" y="315" width="53" height="66" style="fill:#F7F8FE;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="172.500000" y="353.500000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">a</text></g><g id="(x -&gt; a)[0]" style='opacity:0.400000'><marker id="mk-3990223579" markerWidth="10.000000" markerHeight="12.000000" refX="7.000000" refY="6.000000" viewBox="0.000000 0.000000 10.000000 12.000000" orient="auto" markerUnits="userSpaceOnUse"> <polygon class="connection" fill="#0D32B2" stroke-width="2" points="0.000000,0.000000 10.000000,6.000000 0.000000,12.000000" /> </marker><path d="M 173.000000 80.000000 L 173.000000 311.000000" class="connection" style="fill:none;stroke:#0D32B2;stroke-width:2;" marker-end="url(#mk-3990223579)" mask="url(#2435660832)"/><text class="text-italic" x="173.000000" y="194.000000" style="text-anchor:middle;font-size:16px;fill:#676C7E"><tspan x="173.000000" dy="0.000000">You don&#39;t have to know how the computer works,</tspan><tspan x="173.000000" dy="18.500000">just how to work the computer.</tspan></text></g><mask id="2435660832" maskUnits="userSpaceOnUse" x="-100" y="-100" width="713" height="573"> </div></foreignObject></g></g><g id="a"><g class="shape" ><rect x="146" y="255" width="53" height="66" style="fill:#F7F8FE;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="172.500000" y="293.500000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">a</text></g><g id="(x -&gt; a)[0]" style='opacity:0.400000'><marker id="mk-3990223579" markerWidth="10.000000" markerHeight="12.000000" refX="7.000000" refY="6.000000" viewBox="0.000000 0.000000 10.000000 12.000000" orient="auto" markerUnits="userSpaceOnUse"> <polygon class="connection" fill="#0D32B2" stroke-width="2" points="0.000000,0.000000 10.000000,6.000000 0.000000,12.000000" /> </marker><path d="M 173.000000 80.000000 L 173.000000 251.000000" class="connection" style="fill:none;stroke:#0D32B2;stroke-width:2;" marker-end="url(#mk-3990223579)" mask="url(#1975148760)"/><text class="text-italic" x="173.000000" y="164.000000" style="text-anchor:middle;font-size:16px;fill:#676C7E"><tspan x="173.000000" dy="0.000000">You don&#39;t have to know how the computer works,</tspan><tspan x="173.000000" dy="18.500000">just how to work the computer.</tspan></text></g><mask id="1975148760" maskUnits="userSpaceOnUse" x="-100" y="-100" width="713" height="513">
<rect x="-100" y="-100" width="713" height="573" fill="white"></rect> <rect x="-100" y="-100" width="713" height="513" fill="white"></rect>
<rect x="12.000000" y="178.000000" width="322" height="37" fill="black"></rect> <rect x="12.000000" y="148.000000" width="322" height="37" fill="black"></rect>
</mask><style type="text/css"><![CDATA[ </mask><style type="text/css"><![CDATA[
.text { .text {
font-family: "font-regular"; font-family: "font-regular";

Before

Width:  |  Height:  |  Size: 804 KiB

After

Width:  |  Height:  |  Size: 804 KiB

View file

@ -9,7 +9,7 @@
"x": 0, "x": 0,
"y": 41 "y": 41
}, },
"width": 1276, "width": 1221,
"height": 125, "height": 125,
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
@ -47,7 +47,7 @@
"id": "k8s.m1", "id": "k8s.m1",
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 131, "x": 86,
"y": 70 "y": 70
}, },
"width": 132, "width": 132,
@ -88,7 +88,7 @@
"id": "k8s.m2", "id": "k8s.m2",
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 323, "x": 278,
"y": 70 "y": 70
}, },
"width": 132, "width": 132,
@ -129,7 +129,7 @@
"id": "k8s.m3", "id": "k8s.m3",
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 515, "x": 470,
"y": 70 "y": 70
}, },
"width": 132, "width": 132,
@ -170,7 +170,7 @@
"id": "k8s.w1", "id": "k8s.w1",
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 707, "x": 662,
"y": 70 "y": 70
}, },
"width": 133, "width": 133,
@ -211,7 +211,7 @@
"id": "k8s.w2", "id": "k8s.w2",
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 900, "x": 855,
"y": 70 "y": 70
}, },
"width": 133, "width": 133,
@ -252,7 +252,7 @@
"id": "k8s.w3", "id": "k8s.w3",
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 1093, "x": 1048,
"y": 70 "y": 70
}, },
"width": 133, "width": 133,
@ -296,7 +296,7 @@
"x": 0, "x": 0,
"y": 328 "y": 328
}, },
"width": 495, "width": 395,
"height": 125, "height": 125,
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
@ -334,7 +334,7 @@
"id": "osvc.vm1", "id": "osvc.vm1",
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 186, "x": 131,
"y": 357 "y": 357
}, },
"width": 76, "width": 76,
@ -375,7 +375,7 @@
"id": "osvc.vm2", "id": "osvc.vm2",
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 369, "x": 279,
"y": 357 "y": 357
}, },
"width": 76, "width": 76,
@ -440,19 +440,19 @@
"labelPercentage": 0, "labelPercentage": 0,
"route": [ "route": [
{ {
"x": 84, "x": 59,
"y": 166 "y": 166
}, },
{ {
"x": 84, "x": 59,
"y": 214.4 "y": 214.4
}, },
{ {
"x": 84, "x": 59,
"y": 246.9 "y": 246.9
}, },
{ {
"x": 84, "x": 59,
"y": 328.5 "y": 328.5
} }
], ],
@ -488,19 +488,19 @@
"labelPercentage": 0, "labelPercentage": 0,
"route": [ "route": [
{ {
"x": 186, "x": 141,
"y": 166 "y": 166
}, },
{ {
"x": 186, "x": 141,
"y": 214.4 "y": 214.4
}, },
{ {
"x": 186, "x": 141,
"y": 246.9 "y": 246.9
}, },
{ {
"x": 186, "x": 141,
"y": 328.5 "y": 328.5
} }
], ],
@ -536,19 +536,19 @@
"labelPercentage": 0, "labelPercentage": 0,
"route": [ "route": [
{ {
"x": 282, "x": 217,
"y": 166 "y": 166
}, },
{ {
"x": 282, "x": 217,
"y": 214.4 "y": 214.4
}, },
{ {
"x": 282, "x": 217,
"y": 246.9 "y": 246.9
}, },
{ {
"x": 282, "x": 217,
"y": 328.5 "y": 328.5
} }
], ],
@ -584,19 +584,19 @@
"labelPercentage": 0, "labelPercentage": 0,
"route": [ "route": [
{ {
"x": 363, "x": 278,
"y": 166 "y": 166
}, },
{ {
"x": 363, "x": 278,
"y": 214.4 "y": 214.4
}, },
{ {
"x": 363, "x": 278,
"y": 246.9 "y": 246.9
}, },
{ {
"x": 363, "x": 278,
"y": 328.5 "y": 328.5
} }
], ],

View file

@ -3,7 +3,7 @@
id="d2-svg" id="d2-svg"
style="background: white;" style="background: white;"
xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"
width="1480" height="655" viewBox="-102 -100 1480 655"><style type="text/css"> width="1425" height="655" viewBox="-102 -100 1425 655"><style type="text/css">
<![CDATA[ <![CDATA[
.shape { .shape {
shape-rendering: geometricPrecision; shape-rendering: geometricPrecision;
@ -39,12 +39,12 @@ width="1480" height="655" viewBox="-102 -100 1480 655"><style type="text/css">
svgEl.setAttribute("height", height * ratio - 16); svgEl.setAttribute("height", height * ratio - 16);
} }
}); });
]]></script><g id="k8s"><g class="shape" ><rect x="0" y="41" width="1276" height="125" style="fill:#E3E9FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text" x="638.000000" y="28.000000" style="text-anchor:middle;font-size:28px;fill:#0A0F25">Kubernetes</text></g><g id="osvc"><g class="shape" ><rect x="0" y="328" width="495" height="125" style="fill:#E3E9FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text" x="247.500000" y="315.000000" style="text-anchor:middle;font-size:28px;fill:#0A0F25">opensvc</text></g><g id="k8s.m1"><g class="shape" ><rect x="131" y="70" width="132" height="66" style="fill:#EDF0FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="197.000000" y="108.500000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">k8s-master1</text></g><g id="k8s.m2"><g class="shape" ><rect x="323" y="70" width="132" height="66" style="fill:#EDF0FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="389.000000" y="108.500000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">k8s-master2</text></g><g id="k8s.m3"><g class="shape" ><rect x="515" y="70" width="132" height="66" style="fill:#EDF0FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="581.000000" y="108.500000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">k8s-master3</text></g><g id="k8s.w1"><g class="shape" ><rect x="707" y="70" width="133" height="66" style="fill:#EDF0FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="773.500000" y="108.500000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">k8s-worker1</text></g><g id="k8s.w2"><g class="shape" ><rect x="900" y="70" width="133" height="66" style="fill:#EDF0FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="966.500000" y="108.500000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">k8s-worker2</text></g><g id="k8s.w3"><g class="shape" ><rect x="1093" y="70" width="133" height="66" style="fill:#EDF0FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="1159.500000" y="108.500000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">k8s-worker3</text></g><g id="osvc.vm1"><g class="shape" ><rect x="186" y="357" width="76" height="66" style="fill:#EDF0FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="224.000000" y="395.500000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">VM1</text></g><g id="osvc.vm2"><g class="shape" ><rect x="369" y="357" width="76" height="66" style="fill:#EDF0FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="407.000000" y="395.500000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">VM2</text></g><g id="(k8s -&gt; osvc)[0]"><marker id="mk-3990223579" markerWidth="10.000000" markerHeight="12.000000" refX="7.000000" refY="6.000000" viewBox="0.000000 0.000000 10.000000 12.000000" orient="auto" markerUnits="userSpaceOnUse"> <polygon class="connection" fill="#0D32B2" stroke-width="2" points="0.000000,0.000000 10.000000,6.000000 0.000000,12.000000" /> </marker><path d="M 84.000000 168.000000 C 84.000000 214.400000 84.000000 246.900000 84.000000 324.500000" class="connection" style="fill:none;stroke:#0D32B2;stroke-width:2;" marker-end="url(#mk-3990223579)" mask="url(#2738680688)"/><text class="text-italic" x="84.500000" y="253.000000" style="text-anchor:middle;font-size:16px;fill:#676C7E">keycloak</text></g><g id="(k8s -&gt; osvc)[1]"><path d="M 186.000000 168.000000 C 186.000000 214.400000 186.000000 246.900000 186.000000 324.500000" class="connection" style="fill:none;stroke:#0D32B2;stroke-width:2;" marker-end="url(#mk-3990223579)" mask="url(#2738680688)"/><text class="text-italic" x="186.500000" y="253.000000" style="text-anchor:middle;font-size:16px;fill:#676C7E">heptapod</text></g><g id="(k8s -&gt; osvc)[2]"><path d="M 282.000000 168.000000 C 282.000000 214.400000 282.000000 246.900000 282.000000 324.500000" class="connection" style="fill:none;stroke:#0D32B2;stroke-width:2;" marker-end="url(#mk-3990223579)" mask="url(#2738680688)"/><text class="text-italic" x="282.500000" y="253.000000" style="text-anchor:middle;font-size:16px;fill:#676C7E">harbor</text></g><g id="(k8s -&gt; osvc)[3]"><path d="M 363.000000 168.000000 C 363.000000 214.400000 363.000000 246.900000 363.000000 324.500000" class="connection" style="fill:none;stroke:#0D32B2;stroke-width:2;" marker-end="url(#mk-3990223579)" mask="url(#2738680688)"/><text class="text-italic" x="363.500000" y="253.000000" style="text-anchor:middle;font-size:16px;fill:#676C7E">vault</text></g><mask id="2738680688" maskUnits="userSpaceOnUse" x="-100" y="-100" width="1480" height="655"> ]]></script><g id="k8s"><g class="shape" ><rect x="0" y="41" width="1221" height="125" style="fill:#E3E9FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text" x="610.500000" y="28.000000" style="text-anchor:middle;font-size:28px;fill:#0A0F25">Kubernetes</text></g><g id="osvc"><g class="shape" ><rect x="0" y="328" width="395" height="125" style="fill:#E3E9FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text" x="197.500000" y="315.000000" style="text-anchor:middle;font-size:28px;fill:#0A0F25">opensvc</text></g><g id="k8s.m1"><g class="shape" ><rect x="86" y="70" width="132" height="66" style="fill:#EDF0FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="152.000000" y="108.500000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">k8s-master1</text></g><g id="k8s.m2"><g class="shape" ><rect x="278" y="70" width="132" height="66" style="fill:#EDF0FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="344.000000" y="108.500000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">k8s-master2</text></g><g id="k8s.m3"><g class="shape" ><rect x="470" y="70" width="132" height="66" style="fill:#EDF0FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="536.000000" y="108.500000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">k8s-master3</text></g><g id="k8s.w1"><g class="shape" ><rect x="662" y="70" width="133" height="66" style="fill:#EDF0FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="728.500000" y="108.500000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">k8s-worker1</text></g><g id="k8s.w2"><g class="shape" ><rect x="855" y="70" width="133" height="66" style="fill:#EDF0FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="921.500000" y="108.500000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">k8s-worker2</text></g><g id="k8s.w3"><g class="shape" ><rect x="1048" y="70" width="133" height="66" style="fill:#EDF0FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="1114.500000" y="108.500000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">k8s-worker3</text></g><g id="osvc.vm1"><g class="shape" ><rect x="131" y="357" width="76" height="66" style="fill:#EDF0FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="169.000000" y="395.500000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">VM1</text></g><g id="osvc.vm2"><g class="shape" ><rect x="279" y="357" width="76" height="66" style="fill:#EDF0FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="317.000000" y="395.500000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">VM2</text></g><g id="(k8s -&gt; osvc)[0]"><marker id="mk-3990223579" markerWidth="10.000000" markerHeight="12.000000" refX="7.000000" refY="6.000000" viewBox="0.000000 0.000000 10.000000 12.000000" orient="auto" markerUnits="userSpaceOnUse"> <polygon class="connection" fill="#0D32B2" stroke-width="2" points="0.000000,0.000000 10.000000,6.000000 0.000000,12.000000" /> </marker><path d="M 59.000000 168.000000 C 59.000000 214.400000 59.000000 246.900000 59.000000 324.500000" class="connection" style="fill:none;stroke:#0D32B2;stroke-width:2;" marker-end="url(#mk-3990223579)" mask="url(#1964916300)"/><text class="text-italic" x="59.500000" y="253.000000" style="text-anchor:middle;font-size:16px;fill:#676C7E">keycloak</text></g><g id="(k8s -&gt; osvc)[1]"><path d="M 141.000000 168.000000 C 141.000000 214.400000 141.000000 246.900000 141.000000 324.500000" class="connection" style="fill:none;stroke:#0D32B2;stroke-width:2;" marker-end="url(#mk-3990223579)" mask="url(#1964916300)"/><text class="text-italic" x="141.500000" y="253.000000" style="text-anchor:middle;font-size:16px;fill:#676C7E">heptapod</text></g><g id="(k8s -&gt; osvc)[2]"><path d="M 217.000000 168.000000 C 217.000000 214.400000 217.000000 246.900000 217.000000 324.500000" class="connection" style="fill:none;stroke:#0D32B2;stroke-width:2;" marker-end="url(#mk-3990223579)" mask="url(#1964916300)"/><text class="text-italic" x="217.500000" y="253.000000" style="text-anchor:middle;font-size:16px;fill:#676C7E">harbor</text></g><g id="(k8s -&gt; osvc)[3]"><path d="M 278.000000 168.000000 C 278.000000 214.400000 278.000000 246.900000 278.000000 324.500000" class="connection" style="fill:none;stroke:#0D32B2;stroke-width:2;" marker-end="url(#mk-3990223579)" mask="url(#1964916300)"/><text class="text-italic" x="278.500000" y="253.000000" style="text-anchor:middle;font-size:16px;fill:#676C7E">vault</text></g><mask id="1964916300" maskUnits="userSpaceOnUse" x="-100" y="-100" width="1425" height="655">
<rect x="-100" y="-100" width="1480" height="655" fill="white"></rect> <rect x="-100" y="-100" width="1425" height="655" fill="white"></rect>
<rect x="55.000000" y="237.000000" width="59" height="21" fill="black"></rect> <rect x="30.000000" y="237.000000" width="59" height="21" fill="black"></rect>
<rect x="154.000000" y="237.000000" width="65" height="21" fill="black"></rect> <rect x="109.000000" y="237.000000" width="65" height="21" fill="black"></rect>
<rect x="259.000000" y="237.000000" width="47" height="21" fill="black"></rect> <rect x="194.000000" y="237.000000" width="47" height="21" fill="black"></rect>
<rect x="346.000000" y="237.000000" width="35" height="21" fill="black"></rect> <rect x="261.000000" y="237.000000" width="35" height="21" fill="black"></rect>
</mask><style type="text/css"><![CDATA[ </mask><style type="text/css"><![CDATA[
.text { .text {
font-family: "font-regular"; font-family: "font-regular";

Before

Width:  |  Height:  |  Size: 795 KiB

After

Width:  |  Height:  |  Size: 795 KiB

View file

@ -9,8 +9,8 @@
"x": 12, "x": 12,
"y": 12 "y": 12
}, },
"width": 1045, "width": 995,
"height": 216, "height": 166,
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
"strokeWidth": 2, "strokeWidth": 2,
@ -47,8 +47,8 @@
"id": "k8s.m1", "id": "k8s.m1",
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 87, "x": 62,
"y": 87 "y": 62
}, },
"width": 132, "width": 132,
"height": 66, "height": 66,
@ -88,8 +88,8 @@
"id": "k8s.m2", "id": "k8s.m2",
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 239, "x": 214,
"y": 87 "y": 62
}, },
"width": 132, "width": 132,
"height": 66, "height": 66,
@ -129,8 +129,8 @@
"id": "k8s.m3", "id": "k8s.m3",
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 391, "x": 366,
"y": 87 "y": 62
}, },
"width": 132, "width": 132,
"height": 66, "height": 66,
@ -170,8 +170,8 @@
"id": "k8s.w1", "id": "k8s.w1",
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 543, "x": 518,
"y": 87 "y": 62
}, },
"width": 133, "width": 133,
"height": 66, "height": 66,
@ -211,8 +211,8 @@
"id": "k8s.w2", "id": "k8s.w2",
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 696, "x": 671,
"y": 87 "y": 62
}, },
"width": 133, "width": 133,
"height": 66, "height": 66,
@ -252,8 +252,8 @@
"id": "k8s.w3", "id": "k8s.w3",
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 849, "x": 824,
"y": 87 "y": 62
}, },
"width": 133, "width": 133,
"height": 66, "height": 66,
@ -294,10 +294,10 @@
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 301, "x": 301,
"y": 499 "y": 399
}, },
"width": 322, "width": 272,
"height": 216, "height": 166,
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
"strokeWidth": 2, "strokeWidth": 2,
@ -334,8 +334,8 @@
"id": "osvc.vm1", "id": "osvc.vm1",
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 376, "x": 351,
"y": 574 "y": 449
}, },
"width": 76, "width": 76,
"height": 66, "height": 66,
@ -375,8 +375,8 @@
"id": "osvc.vm2", "id": "osvc.vm2",
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 472, "x": 447,
"y": 574 "y": 449
}, },
"width": 76, "width": 76,
"height": 66, "height": 66,
@ -440,20 +440,20 @@
"labelPercentage": 0, "labelPercentage": 0,
"route": [ "route": [
{ {
"x": 221, "x": 211,
"y": 228 "y": 178
}, },
{ {
"x": 221, "x": 211,
"y": 309
},
{
"x": 355.59999999999997,
"y": 309
},
{
"x": 355.59999999999997,
"y": 399 "y": 399
},
{
"x": 365.6,
"y": 399
},
{
"x": 365.6,
"y": 499
} }
], ],
"animated": false, "animated": false,
@ -487,12 +487,12 @@
"labelPercentage": 0, "labelPercentage": 0,
"route": [ "route": [
{ {
"x": 430, "x": 410,
"y": 228 "y": 178
}, },
{ {
"x": 430, "x": 410,
"y": 499 "y": 399
} }
], ],
"animated": false, "animated": false,
@ -526,20 +526,20 @@
"labelPercentage": 0, "labelPercentage": 0,
"route": [ "route": [
{ {
"x": 639, "x": 609,
"y": 228 "y": 178
}, },
{ {
"x": 639, "x": 609,
"y": 309
},
{
"x": 464.4,
"y": 309
},
{
"x": 464.4,
"y": 399 "y": 399
},
{
"x": 494.4,
"y": 399
},
{
"x": 494.4,
"y": 499
} }
], ],
"animated": false, "animated": false,
@ -573,20 +573,20 @@
"labelPercentage": 0, "labelPercentage": 0,
"route": [ "route": [
{ {
"x": 848, "x": 808,
"y": 228 "y": 178
}, },
{ {
"x": 848, "x": 808,
"y": 449 "y": 359
}, },
{ {
"x": 558.8, "x": 518.8,
"y": 449 "y": 359
}, },
{ {
"x": 558.8, "x": 518.8,
"y": 499 "y": 399
} }
], ],
"animated": false, "animated": false,

View file

@ -3,7 +3,7 @@
id="d2-svg" id="d2-svg"
style="background: white;" style="background: white;"
xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"
width="1249" height="907" viewBox="-90 -90 1249 907"><style type="text/css"> width="1199" height="757" viewBox="-90 -90 1199 757"><style type="text/css">
<![CDATA[ <![CDATA[
.shape { .shape {
shape-rendering: geometricPrecision; shape-rendering: geometricPrecision;
@ -39,12 +39,12 @@ width="1249" height="907" viewBox="-90 -90 1249 907"><style type="text/css">
svgEl.setAttribute("height", height * ratio - 16); svgEl.setAttribute("height", height * ratio - 16);
} }
}); });
]]></script><g id="k8s"><g class="shape" ><rect x="12" y="12" width="1045" height="216" style="fill:#E3E9FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text" x="534.500000" y="45.000000" style="text-anchor:middle;font-size:28px;fill:#0A0F25">Kubernetes</text></g><g id="osvc"><g class="shape" ><rect x="301" y="499" width="322" height="216" style="fill:#E3E9FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text" x="462.000000" y="532.000000" style="text-anchor:middle;font-size:28px;fill:#0A0F25">opensvc</text></g><g id="k8s.m1"><g class="shape" ><rect x="87" y="87" width="132" height="66" style="fill:#EDF0FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="153.000000" y="125.500000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">k8s-master1</text></g><g id="k8s.m2"><g class="shape" ><rect x="239" y="87" width="132" height="66" style="fill:#EDF0FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="305.000000" y="125.500000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">k8s-master2</text></g><g id="k8s.m3"><g class="shape" ><rect x="391" y="87" width="132" height="66" style="fill:#EDF0FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="457.000000" y="125.500000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">k8s-master3</text></g><g id="k8s.w1"><g class="shape" ><rect x="543" y="87" width="133" height="66" style="fill:#EDF0FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="609.500000" y="125.500000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">k8s-worker1</text></g><g id="k8s.w2"><g class="shape" ><rect x="696" y="87" width="133" height="66" style="fill:#EDF0FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="762.500000" y="125.500000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">k8s-worker2</text></g><g id="k8s.w3"><g class="shape" ><rect x="849" y="87" width="133" height="66" style="fill:#EDF0FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="915.500000" y="125.500000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">k8s-worker3</text></g><g id="osvc.vm1"><g class="shape" ><rect x="376" y="574" width="76" height="66" style="fill:#EDF0FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="414.000000" y="612.500000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">VM1</text></g><g id="osvc.vm2"><g class="shape" ><rect x="472" y="574" width="76" height="66" style="fill:#EDF0FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="510.000000" y="612.500000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">VM2</text></g><g id="(k8s -&gt; osvc)[0]"><marker id="mk-3990223579" markerWidth="10.000000" markerHeight="12.000000" refX="7.000000" refY="6.000000" viewBox="0.000000 0.000000 10.000000 12.000000" orient="auto" markerUnits="userSpaceOnUse"> <polygon class="connection" fill="#0D32B2" stroke-width="2" points="0.000000,0.000000 10.000000,6.000000 0.000000,12.000000" /> </marker><path d="M 221.000000 230.000000 L 221.000000 389.000000 S 221.000000 399.000000 231.000000 399.000000 L 355.600000 399.000000 S 365.600000 399.000000 365.600000 409.000000 L 365.600000 495.000000" class="connection" style="fill:none;stroke:#0D32B2;stroke-width:2;" marker-end="url(#mk-3990223579)" mask="url(#2381465109)"/><text class="text-italic" x="257.500000" y="405.000000" style="text-anchor:middle;font-size:16px;fill:#676C7E">keycloak</text></g><g id="(k8s -&gt; osvc)[1]"><path d="M 430.000000 230.000000 L 430.000000 495.000000" class="connection" style="fill:none;stroke:#0D32B2;stroke-width:2;" marker-end="url(#mk-3990223579)" mask="url(#2381465109)"/><text class="text-italic" x="430.500000" y="369.000000" style="text-anchor:middle;font-size:16px;fill:#676C7E">heptapod</text></g><g id="(k8s -&gt; osvc)[2]"><path d="M 639.000000 230.000000 L 639.000000 389.000000 S 639.000000 399.000000 629.000000 399.000000 L 504.400000 399.000000 S 494.400000 399.000000 494.400000 409.000000 L 494.400000 495.000000" class="connection" style="fill:none;stroke:#0D32B2;stroke-width:2;" marker-end="url(#mk-3990223579)" mask="url(#2381465109)"/><text class="text-italic" x="602.500000" y="405.000000" style="text-anchor:middle;font-size:16px;fill:#676C7E">harbor</text></g><g id="(k8s -&gt; osvc)[3]"><path d="M 848.000000 230.000000 L 848.000000 439.000000 S 848.000000 449.000000 838.000000 449.000000 L 568.800000 449.000000 S 558.800000 449.000000 558.800000 459.000000 L 558.800000 495.000000" class="connection" style="fill:none;stroke:#0D32B2;stroke-width:2;" marker-end="url(#mk-3990223579)" mask="url(#2381465109)"/><text class="text-italic" x="788.500000" y="455.000000" style="text-anchor:middle;font-size:16px;fill:#676C7E">vault</text></g><mask id="2381465109" maskUnits="userSpaceOnUse" x="-100" y="-100" width="1249" height="907"> ]]></script><g id="k8s"><g class="shape" ><rect x="12" y="12" width="995" height="166" style="fill:#E3E9FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text" x="509.500000" y="45.000000" style="text-anchor:middle;font-size:28px;fill:#0A0F25">Kubernetes</text></g><g id="osvc"><g class="shape" ><rect x="301" y="399" width="272" height="166" style="fill:#E3E9FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text" x="437.000000" y="432.000000" style="text-anchor:middle;font-size:28px;fill:#0A0F25">opensvc</text></g><g id="k8s.m1"><g class="shape" ><rect x="62" y="62" width="132" height="66" style="fill:#EDF0FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="128.000000" y="100.500000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">k8s-master1</text></g><g id="k8s.m2"><g class="shape" ><rect x="214" y="62" width="132" height="66" style="fill:#EDF0FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="280.000000" y="100.500000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">k8s-master2</text></g><g id="k8s.m3"><g class="shape" ><rect x="366" y="62" width="132" height="66" style="fill:#EDF0FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="432.000000" y="100.500000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">k8s-master3</text></g><g id="k8s.w1"><g class="shape" ><rect x="518" y="62" width="133" height="66" style="fill:#EDF0FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="584.500000" y="100.500000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">k8s-worker1</text></g><g id="k8s.w2"><g class="shape" ><rect x="671" y="62" width="133" height="66" style="fill:#EDF0FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="737.500000" y="100.500000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">k8s-worker2</text></g><g id="k8s.w3"><g class="shape" ><rect x="824" y="62" width="133" height="66" style="fill:#EDF0FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="890.500000" y="100.500000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">k8s-worker3</text></g><g id="osvc.vm1"><g class="shape" ><rect x="351" y="449" width="76" height="66" style="fill:#EDF0FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="389.000000" y="487.500000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">VM1</text></g><g id="osvc.vm2"><g class="shape" ><rect x="447" y="449" width="76" height="66" style="fill:#EDF0FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="485.000000" y="487.500000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">VM2</text></g><g id="(k8s -&gt; osvc)[0]"><marker id="mk-3990223579" markerWidth="10.000000" markerHeight="12.000000" refX="7.000000" refY="6.000000" viewBox="0.000000 0.000000 10.000000 12.000000" orient="auto" markerUnits="userSpaceOnUse"> <polygon class="connection" fill="#0D32B2" stroke-width="2" points="0.000000,0.000000 10.000000,6.000000 0.000000,12.000000" /> </marker><path d="M 211.000000 180.000000 L 211.000000 299.000000 S 211.000000 309.000000 221.000000 309.000000 L 345.600000 309.000000 S 355.600000 309.000000 355.600000 319.000000 L 355.600000 395.000000" class="connection" style="fill:none;stroke:#0D32B2;stroke-width:2;" marker-end="url(#mk-3990223579)" mask="url(#2150703550)"/><text class="text-italic" x="262.500000" y="315.000000" style="text-anchor:middle;font-size:16px;fill:#676C7E">keycloak</text></g><g id="(k8s -&gt; osvc)[1]"><path d="M 410.000000 180.000000 L 410.000000 395.000000" class="connection" style="fill:none;stroke:#0D32B2;stroke-width:2;" marker-end="url(#mk-3990223579)" mask="url(#2150703550)"/><text class="text-italic" x="410.500000" y="294.000000" style="text-anchor:middle;font-size:16px;fill:#676C7E">heptapod</text></g><g id="(k8s -&gt; osvc)[2]"><path d="M 609.000000 180.000000 L 609.000000 299.000000 S 609.000000 309.000000 599.000000 309.000000 L 474.400000 309.000000 S 464.400000 309.000000 464.400000 319.000000 L 464.400000 395.000000" class="connection" style="fill:none;stroke:#0D32B2;stroke-width:2;" marker-end="url(#mk-3990223579)" mask="url(#2150703550)"/><text class="text-italic" x="557.500000" y="315.000000" style="text-anchor:middle;font-size:16px;fill:#676C7E">harbor</text></g><g id="(k8s -&gt; osvc)[3]"><path d="M 808.000000 180.000000 L 808.000000 349.000000 S 808.000000 359.000000 798.000000 359.000000 L 528.800000 359.000000 S 518.800000 359.000000 518.800000 369.000000 L 518.800000 395.000000" class="connection" style="fill:none;stroke:#0D32B2;stroke-width:2;" marker-end="url(#mk-3990223579)" mask="url(#2150703550)"/><text class="text-italic" x="733.500000" y="365.000000" style="text-anchor:middle;font-size:16px;fill:#676C7E">vault</text></g><mask id="2150703550" maskUnits="userSpaceOnUse" x="-100" y="-100" width="1199" height="757">
<rect x="-100" y="-100" width="1249" height="907" fill="white"></rect> <rect x="-100" y="-100" width="1199" height="757" fill="white"></rect>
<rect x="228.000000" y="389.000000" width="59" height="21" fill="black"></rect> <rect x="233.000000" y="299.000000" width="59" height="21" fill="black"></rect>
<rect x="398.000000" y="353.000000" width="65" height="21" fill="black"></rect> <rect x="378.000000" y="278.000000" width="65" height="21" fill="black"></rect>
<rect x="579.000000" y="389.000000" width="47" height="21" fill="black"></rect> <rect x="534.000000" y="299.000000" width="47" height="21" fill="black"></rect>
<rect x="771.000000" y="439.000000" width="35" height="21" fill="black"></rect> <rect x="716.000000" y="349.000000" width="35" height="21" fill="black"></rect>
</mask><style type="text/css"><![CDATA[ </mask><style type="text/css"><![CDATA[
.text { .text {
font-family: "font-regular"; font-family: "font-regular";

Before

Width:  |  Height:  |  Size: 796 KiB

After

Width:  |  Height:  |  Size: 796 KiB

View file

@ -130,7 +130,7 @@
"type": "sequence_diagram", "type": "sequence_diagram",
"pos": { "pos": {
"x": 12, "x": 12,
"y": 572 "y": 542
}, },
"width": 448, "width": 448,
"height": 460, "height": 460,
@ -171,7 +171,7 @@
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 36, "x": 36,
"y": 682 "y": 652
}, },
"width": 150, "width": 150,
"height": 66, "height": 66,
@ -212,7 +212,7 @@
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 286, "x": 286,
"y": 682 "y": 652
}, },
"width": 150, "width": 150,
"height": 66, "height": 66,
@ -316,11 +316,11 @@
"route": [ "route": [
{ {
"x": 111, "x": 111,
"y": 878 "y": 848
}, },
{ {
"x": 361, "x": 361,
"y": 878 "y": 848
} }
], ],
"animated": false, "animated": false,
@ -359,7 +359,7 @@
}, },
{ {
"x": 236, "x": 236,
"y": 572 "y": 542
} }
], ],
"animated": false, "animated": false,
@ -472,11 +472,11 @@
"route": [ "route": [
{ {
"x": 111, "x": 111,
"y": 748 "y": 718
}, },
{ {
"x": 111, "x": 111,
"y": 1008 "y": 978
} }
], ],
"animated": false, "animated": false,
@ -511,11 +511,11 @@
"route": [ "route": [
{ {
"x": 361, "x": 361,
"y": 748 "y": 718
}, },
{ {
"x": 361, "x": 361,
"y": 1008 "y": 978
} }
], ],
"animated": false, "animated": false,

View file

@ -3,7 +3,7 @@
id="d2-svg" id="d2-svg"
style="background: white;" style="background: white;"
xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"
width="648" height="1220" viewBox="-88 -88 648 1220"><style type="text/css"> width="648" height="1190" viewBox="-88 -88 648 1190"><style type="text/css">
<![CDATA[ <![CDATA[
.shape { .shape {
shape-rendering: geometricPrecision; shape-rendering: geometricPrecision;
@ -39,8 +39,8 @@ width="648" height="1220" viewBox="-88 -88 648 1220"><style type="text/css">
svgEl.setAttribute("height", height * ratio - 16); svgEl.setAttribute("height", height * ratio - 16);
} }
}); });
]]></script><g id="foo"><g class="shape" ><rect x="12" y="12" width="448" height="460" style="fill:#FFFFFF;stroke:#0D32B2;stroke-width:0;" /></g><text class="text" x="236.000000" y="45.000000" style="text-anchor:middle;font-size:28px;fill:#0A0F25">foo</text></g><g id="foobar"><g class="shape" ><rect x="12" y="572" width="448" height="460" style="fill:#FFFFFF;stroke:#0D32B2;stroke-width:0;" /></g><text class="text" x="236.000000" y="605.000000" style="text-anchor:middle;font-size:28px;fill:#0A0F25">foobar</text></g><g id="foo.a"><g class="shape" ><rect x="36" y="122" width="150" height="66" style="fill:#EDF0FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text" x="111.000000" y="160.500000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">a</text></g><g id="foo.b"><g class="shape" ><rect x="286" y="122" width="150" height="66" style="fill:#EDF0FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text" x="361.000000" y="160.500000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">b</text></g><g id="foobar.c"><g class="shape" ><rect x="36" y="682" width="150" height="66" style="fill:#EDF0FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text" x="111.000000" y="720.500000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">c</text></g><g id="foobar.d"><g class="shape" ><rect x="286" y="682" width="150" height="66" style="fill:#EDF0FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text" x="361.000000" y="720.500000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">d</text></g><g id="(foo -&gt; foobar)[0]"><marker id="mk-3990223579" markerWidth="10.000000" markerHeight="12.000000" refX="7.000000" refY="6.000000" viewBox="0.000000 0.000000 10.000000 12.000000" orient="auto" markerUnits="userSpaceOnUse"> <polygon class="connection" fill="#0D32B2" stroke-width="2" points="0.000000,0.000000 10.000000,6.000000 0.000000,12.000000" /> </marker><path d="M 236.000000 473.000000 L 236.000000 569.000000" class="connection" style="fill:none;stroke:#0D32B2;stroke-width:2;" marker-end="url(#mk-3990223579)" mask="url(#3782604603)"/></g><g id="(foo.a -- )[0]"><path d="M 111.000000 190.000000 L 111.000000 447.000000" class="connection" style="fill:none;stroke:#0D32B2;stroke-width:2;stroke-dasharray:12.000000,11.838767;" mask="url(#3782604603)"/></g><g id="(foo.b -- )[0]"><path d="M 361.000000 190.000000 L 361.000000 447.000000" class="connection" style="fill:none;stroke:#0D32B2;stroke-width:2;stroke-dasharray:12.000000,11.838767;" mask="url(#3782604603)"/></g><g id="(foobar.c -- )[0]"><path d="M 111.000000 750.000000 L 111.000000 1007.000000" class="connection" style="fill:none;stroke:#0D32B2;stroke-width:2;stroke-dasharray:12.000000,11.838767;" mask="url(#3782604603)"/></g><g id="(foobar.d -- )[0]"><path d="M 361.000000 750.000000 L 361.000000 1007.000000" class="connection" style="fill:none;stroke:#0D32B2;stroke-width:2;stroke-dasharray:12.000000,11.838767;" mask="url(#3782604603)"/></g><g id="foo.(a -&gt; b)[0]"><path d="M 113.000000 318.000000 L 357.000000 318.000000" class="connection" style="fill:none;stroke:#0D32B2;stroke-width:2;" marker-end="url(#mk-3990223579)" mask="url(#3782604603)"/></g><g id="foobar.(c -&gt; d)[0]"><path d="M 113.000000 878.000000 L 357.000000 878.000000" class="connection" style="fill:none;stroke:#0D32B2;stroke-width:2;" marker-end="url(#mk-3990223579)" mask="url(#3782604603)"/></g><mask id="3782604603" maskUnits="userSpaceOnUse" x="-100" y="-100" width="648" height="1220"> ]]></script><g id="foo"><g class="shape" ><rect x="12" y="12" width="448" height="460" style="fill:#FFFFFF;stroke:#0D32B2;stroke-width:0;" /></g><text class="text" x="236.000000" y="45.000000" style="text-anchor:middle;font-size:28px;fill:#0A0F25">foo</text></g><g id="foobar"><g class="shape" ><rect x="12" y="542" width="448" height="460" style="fill:#FFFFFF;stroke:#0D32B2;stroke-width:0;" /></g><text class="text" x="236.000000" y="575.000000" style="text-anchor:middle;font-size:28px;fill:#0A0F25">foobar</text></g><g id="foo.a"><g class="shape" ><rect x="36" y="122" width="150" height="66" style="fill:#EDF0FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text" x="111.000000" y="160.500000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">a</text></g><g id="foo.b"><g class="shape" ><rect x="286" y="122" width="150" height="66" style="fill:#EDF0FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text" x="361.000000" y="160.500000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">b</text></g><g id="foobar.c"><g class="shape" ><rect x="36" y="652" width="150" height="66" style="fill:#EDF0FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text" x="111.000000" y="690.500000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">c</text></g><g id="foobar.d"><g class="shape" ><rect x="286" y="652" width="150" height="66" style="fill:#EDF0FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text" x="361.000000" y="690.500000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">d</text></g><g id="(foo -&gt; foobar)[0]"><marker id="mk-3990223579" markerWidth="10.000000" markerHeight="12.000000" refX="7.000000" refY="6.000000" viewBox="0.000000 0.000000 10.000000 12.000000" orient="auto" markerUnits="userSpaceOnUse"> <polygon class="connection" fill="#0D32B2" stroke-width="2" points="0.000000,0.000000 10.000000,6.000000 0.000000,12.000000" /> </marker><path d="M 236.000000 473.000000 L 236.000000 539.000000" class="connection" style="fill:none;stroke:#0D32B2;stroke-width:2;" marker-end="url(#mk-3990223579)" mask="url(#195235471)"/></g><g id="(foo.a -- )[0]"><path d="M 111.000000 190.000000 L 111.000000 447.000000" class="connection" style="fill:none;stroke:#0D32B2;stroke-width:2;stroke-dasharray:12.000000,11.838767;" mask="url(#195235471)"/></g><g id="(foo.b -- )[0]"><path d="M 361.000000 190.000000 L 361.000000 447.000000" class="connection" style="fill:none;stroke:#0D32B2;stroke-width:2;stroke-dasharray:12.000000,11.838767;" mask="url(#195235471)"/></g><g id="(foobar.c -- )[0]"><path d="M 111.000000 720.000000 L 111.000000 977.000000" class="connection" style="fill:none;stroke:#0D32B2;stroke-width:2;stroke-dasharray:12.000000,11.838767;" mask="url(#195235471)"/></g><g id="(foobar.d -- )[0]"><path d="M 361.000000 720.000000 L 361.000000 977.000000" class="connection" style="fill:none;stroke:#0D32B2;stroke-width:2;stroke-dasharray:12.000000,11.838767;" mask="url(#195235471)"/></g><g id="foo.(a -&gt; b)[0]"><path d="M 113.000000 318.000000 L 357.000000 318.000000" class="connection" style="fill:none;stroke:#0D32B2;stroke-width:2;" marker-end="url(#mk-3990223579)" mask="url(#195235471)"/></g><g id="foobar.(c -&gt; d)[0]"><path d="M 113.000000 848.000000 L 357.000000 848.000000" class="connection" style="fill:none;stroke:#0D32B2;stroke-width:2;" marker-end="url(#mk-3990223579)" mask="url(#195235471)"/></g><mask id="195235471" maskUnits="userSpaceOnUse" x="-100" y="-100" width="648" height="1190">
<rect x="-100" y="-100" width="648" height="1220" fill="white"></rect> <rect x="-100" y="-100" width="648" height="1190" fill="white"></rect>
</mask><style type="text/css"><![CDATA[ </mask><style type="text/css"><![CDATA[
.text { .text {

Before

Width:  |  Height:  |  Size: 328 KiB

After

Width:  |  Height:  |  Size: 328 KiB

View file

@ -82,7 +82,7 @@
"type": "sql_table", "type": "sql_table",
"pos": { "pos": {
"x": 119, "x": 119,
"y": 480 "y": 450
}, },
"width": 208, "width": 208,
"height": 186, "height": 186,
@ -266,7 +266,7 @@
"type": "code", "type": "code",
"pos": { "pos": {
"x": 125, "x": 125,
"y": 766 "y": 706
}, },
"width": 196, "width": 196,
"height": 70, "height": 70,
@ -334,7 +334,7 @@
}, },
{ {
"x": 223, "x": 223,
"y": 480 "y": 450
} }
], ],
"animated": false, "animated": false,
@ -369,11 +369,11 @@
"route": [ "route": [
{ {
"x": 223, "x": 223,
"y": 666 "y": 636
}, },
{ {
"x": 223, "x": 223,
"y": 766 "y": 706
} }
], ],
"animated": false, "animated": false,

View file

@ -3,7 +3,7 @@
id="d2-svg" id="d2-svg"
style="background: white;" style="background: white;"
xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"
width="626" height="1028" viewBox="-90 -90 626 1028"><style type="text/css"> width="626" height="968" viewBox="-90 -90 626 968"><style type="text/css">
<![CDATA[ <![CDATA[
.shape { .shape {
shape-rendering: geometricPrecision; shape-rendering: geometricPrecision;
@ -51,20 +51,20 @@ width="626" height="1028" viewBox="-90 -90 626 1028"><style type="text/css">
<text class="text-mono" x="42.000000" y="316.000000" style="text-anchor:start;font-size:20px;fill:#0A0F25">getJobs()</text> <text class="text-mono" x="42.000000" y="316.000000" style="text-anchor:start;font-size:20px;fill:#0A0F25">getJobs()</text>
<text class="text-mono" x="414.000000" y="316.000000" style="text-anchor:end;font-size:20px;fill:#4A6FF3">Job[]</text><text class="text-mono" x="22.000000" y="362.000000" style="text-anchor:start;font-size:20px;fill:#0D32B2">+</text> <text class="text-mono" x="414.000000" y="316.000000" style="text-anchor:end;font-size:20px;fill:#4A6FF3">Job[]</text><text class="text-mono" x="22.000000" y="362.000000" style="text-anchor:start;font-size:20px;fill:#0D32B2">+</text>
<text class="text-mono" x="42.000000" y="362.000000" style="text-anchor:start;font-size:20px;fill:#0A0F25">setTimeout(seconds int)</text> <text class="text-mono" x="42.000000" y="362.000000" style="text-anchor:start;font-size:20px;fill:#0A0F25">setTimeout(seconds int)</text>
<text class="text-mono" x="414.000000" y="362.000000" style="text-anchor:end;font-size:20px;fill:#4A6FF3">void</text></g></g><g id="users"><g class="shape" ><rect class="shape" x="119" y="480" width="208" height="186" style="fill:#FFFFFF;stroke:#0A0F25;stroke-width:2;"/><rect class="class_header" x="119.000000" y="480.000000" width="208.000000" height="31.000000" fill="#0A0F25" /><text class="text" x="129.000000" y="531.500000" style="text-anchor:start;font-size:20px;fill:#0D32B2">id</text> <text class="text-mono" x="414.000000" y="362.000000" style="text-anchor:end;font-size:20px;fill:#4A6FF3">void</text></g></g><g id="users"><g class="shape" ><rect class="shape" x="119" y="450" width="208" height="186" style="fill:#FFFFFF;stroke:#0A0F25;stroke-width:2;"/><rect class="class_header" x="119.000000" y="450.000000" width="208.000000" height="31.000000" fill="#0A0F25" /><text class="text" x="129.000000" y="501.500000" style="text-anchor:start;font-size:20px;fill:#0D32B2">id</text>
<text class="text" x="230.000000" y="531.500000" style="text-anchor:start;font-size:20px;fill:#676C7E">int</text> <text class="text" x="230.000000" y="501.500000" style="text-anchor:start;font-size:20px;fill:#676C7E">int</text>
<text class="text" x="307.000000" y="531.500000" style="text-anchor:end;font-size:20px;fill:#4A6FF3;letter-spacing:2px;"></text><line x1="119.000000" y1="542.000000" x2="327.000000" y2="542.000000" style="stroke-width:2;stroke:#0A0F25" /><text class="text" x="129.000000" y="562.500000" style="text-anchor:start;font-size:20px;fill:#0D32B2">name</text> <text class="text" x="307.000000" y="501.500000" style="text-anchor:end;font-size:20px;fill:#4A6FF3;letter-spacing:2px;"></text><line x1="119.000000" y1="512.000000" x2="327.000000" y2="512.000000" style="stroke-width:2;stroke:#0A0F25" /><text class="text" x="129.000000" y="532.500000" style="text-anchor:start;font-size:20px;fill:#0D32B2">name</text>
<text class="text" x="230.000000" y="562.500000" style="text-anchor:start;font-size:20px;fill:#676C7E">string</text> <text class="text" x="230.000000" y="532.500000" style="text-anchor:start;font-size:20px;fill:#676C7E">string</text>
<text class="text" x="307.000000" y="562.500000" style="text-anchor:end;font-size:20px;fill:#4A6FF3;letter-spacing:2px;"></text><line x1="119.000000" y1="573.000000" x2="327.000000" y2="573.000000" style="stroke-width:2;stroke:#0A0F25" /><text class="text" x="129.000000" y="593.500000" style="text-anchor:start;font-size:20px;fill:#0D32B2">email</text> <text class="text" x="307.000000" y="532.500000" style="text-anchor:end;font-size:20px;fill:#4A6FF3;letter-spacing:2px;"></text><line x1="119.000000" y1="543.000000" x2="327.000000" y2="543.000000" style="stroke-width:2;stroke:#0A0F25" /><text class="text" x="129.000000" y="563.500000" style="text-anchor:start;font-size:20px;fill:#0D32B2">email</text>
<text class="text" x="230.000000" y="593.500000" style="text-anchor:start;font-size:20px;fill:#676C7E">string</text> <text class="text" x="230.000000" y="563.500000" style="text-anchor:start;font-size:20px;fill:#676C7E">string</text>
<text class="text" x="307.000000" y="593.500000" style="text-anchor:end;font-size:20px;fill:#4A6FF3;letter-spacing:2px;"></text><line x1="119.000000" y1="604.000000" x2="327.000000" y2="604.000000" style="stroke-width:2;stroke:#0A0F25" /><text class="text" x="129.000000" y="624.500000" style="text-anchor:start;font-size:20px;fill:#0D32B2">password</text> <text class="text" x="307.000000" y="563.500000" style="text-anchor:end;font-size:20px;fill:#4A6FF3;letter-spacing:2px;"></text><line x1="119.000000" y1="574.000000" x2="327.000000" y2="574.000000" style="stroke-width:2;stroke:#0A0F25" /><text class="text" x="129.000000" y="594.500000" style="text-anchor:start;font-size:20px;fill:#0D32B2">password</text>
<text class="text" x="230.000000" y="624.500000" style="text-anchor:start;font-size:20px;fill:#676C7E">string</text> <text class="text" x="230.000000" y="594.500000" style="text-anchor:start;font-size:20px;fill:#676C7E">string</text>
<text class="text" x="307.000000" y="624.500000" style="text-anchor:end;font-size:20px;fill:#4A6FF3;letter-spacing:2px;"></text><line x1="119.000000" y1="635.000000" x2="327.000000" y2="635.000000" style="stroke-width:2;stroke:#0A0F25" /><text class="text" x="129.000000" y="655.500000" style="text-anchor:start;font-size:20px;fill:#0D32B2">last_login</text> <text class="text" x="307.000000" y="594.500000" style="text-anchor:end;font-size:20px;fill:#4A6FF3;letter-spacing:2px;"></text><line x1="119.000000" y1="605.000000" x2="327.000000" y2="605.000000" style="stroke-width:2;stroke:#0A0F25" /><text class="text" x="129.000000" y="625.500000" style="text-anchor:start;font-size:20px;fill:#0D32B2">last_login</text>
<text class="text" x="230.000000" y="655.500000" style="text-anchor:start;font-size:20px;fill:#676C7E">datetime</text> <text class="text" x="230.000000" y="625.500000" style="text-anchor:start;font-size:20px;fill:#676C7E">datetime</text>
<text class="text" x="307.000000" y="655.500000" style="text-anchor:end;font-size:20px;fill:#4A6FF3;letter-spacing:2px;"></text><line x1="119.000000" y1="666.000000" x2="327.000000" y2="666.000000" style="stroke-width:2;stroke:#0A0F25" /></g></g><g id="code"><g class="shape" ></g><g transform="translate(125.000000 766.000000)"><rect class="shape" width="196" height="70" style="stroke: #0A0F25;fill:#ffffff" /><g transform="translate(6 6)"><text class="text-mono" x="0" y="1.000000em" xml:space="preserve">a&#160;<tspan fill="#000000" class="text-mono-bold">:=</tspan>&#160;<tspan fill="#009999">5</tspan> <text class="text" x="307.000000" y="625.500000" style="text-anchor:end;font-size:20px;fill:#4A6FF3;letter-spacing:2px;"></text><line x1="119.000000" y1="636.000000" x2="327.000000" y2="636.000000" style="stroke-width:2;stroke:#0A0F25" /></g></g><g id="code"><g class="shape" ></g><g transform="translate(125.000000 706.000000)"><rect class="shape" width="196" height="70" style="stroke: #0A0F25;fill:#ffffff" /><g transform="translate(6 6)"><text class="text-mono" x="0" y="1.000000em" xml:space="preserve">a&#160;<tspan fill="#000000" class="text-mono-bold">:=</tspan>&#160;<tspan fill="#009999">5</tspan>
</text><text class="text-mono" x="0" y="2.000000em" xml:space="preserve">b&#160;<tspan fill="#000000" class="text-mono-bold">:=</tspan>&#160;a&#160;<tspan fill="#000000" class="text-mono-bold">+</tspan>&#160;<tspan fill="#009999">7</tspan> </text><text class="text-mono" x="0" y="2.000000em" xml:space="preserve">b&#160;<tspan fill="#000000" class="text-mono-bold">:=</tspan>&#160;a&#160;<tspan fill="#000000" class="text-mono-bold">+</tspan>&#160;<tspan fill="#009999">7</tspan>
</text><text class="text-mono" x="0" y="3.000000em" xml:space="preserve">fmt.<tspan fill="#990000" class="text-mono-bold">Printf</tspan>(<tspan fill="#dd1144">&quot;%d&quot;</tspan>,&#160;b)</text></g></g></g><g id="(class -&gt; users)[0]"><marker id="mk-3990223579" markerWidth="10.000000" markerHeight="12.000000" refX="7.000000" refY="6.000000" viewBox="0.000000 0.000000 10.000000 12.000000" orient="auto" markerUnits="userSpaceOnUse"> <polygon class="connection" fill="#0D32B2" stroke-width="2" points="0.000000,0.000000 10.000000,6.000000 0.000000,12.000000" /> </marker><path d="M 223.000000 382.000000 L 223.000000 476.000000" class="connection" style="fill:none;stroke:#0D32B2;stroke-width:2;" marker-end="url(#mk-3990223579)" mask="url(#3703733958)"/></g><g id="(users -&gt; code)[0]"><path d="M 223.000000 668.000000 L 223.000000 762.000000" class="connection" style="fill:none;stroke:#0D32B2;stroke-width:2;" marker-end="url(#mk-3990223579)" mask="url(#3703733958)"/></g><mask id="3703733958" maskUnits="userSpaceOnUse" x="-100" y="-100" width="626" height="1028"> </text><text class="text-mono" x="0" y="3.000000em" xml:space="preserve">fmt.<tspan fill="#990000" class="text-mono-bold">Printf</tspan>(<tspan fill="#dd1144">&quot;%d&quot;</tspan>,&#160;b)</text></g></g></g><g id="(class -&gt; users)[0]"><marker id="mk-3990223579" markerWidth="10.000000" markerHeight="12.000000" refX="7.000000" refY="6.000000" viewBox="0.000000 0.000000 10.000000 12.000000" orient="auto" markerUnits="userSpaceOnUse"> <polygon class="connection" fill="#0D32B2" stroke-width="2" points="0.000000,0.000000 10.000000,6.000000 0.000000,12.000000" /> </marker><path d="M 223.000000 382.000000 L 223.000000 446.000000" class="connection" style="fill:none;stroke:#0D32B2;stroke-width:2;" marker-end="url(#mk-3990223579)" mask="url(#3740991939)"/></g><g id="(users -&gt; code)[0]"><path d="M 223.000000 638.000000 L 223.000000 702.000000" class="connection" style="fill:none;stroke:#0D32B2;stroke-width:2;" marker-end="url(#mk-3990223579)" mask="url(#3740991939)"/></g><mask id="3740991939" maskUnits="userSpaceOnUse" x="-100" y="-100" width="626" height="968">
<rect x="-100" y="-100" width="626" height="1028" fill="white"></rect> <rect x="-100" y="-100" width="626" height="968" fill="white"></rect>
</mask><style type="text/css"><![CDATA[ </mask><style type="text/css"><![CDATA[
.text { .text {

Before

Width:  |  Height:  |  Size: 601 KiB

After

Width:  |  Height:  |  Size: 601 KiB

View file

@ -48,7 +48,7 @@
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 12, "x": 12,
"y": 178 "y": 158
}, },
"width": 53, "width": 53,
"height": 66, "height": 66,
@ -89,7 +89,7 @@
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 85, "x": 85,
"y": 178 "y": 158
}, },
"width": 53, "width": 53,
"height": 66, "height": 66,
@ -158,7 +158,7 @@
}, },
{ {
"x": 38.5, "x": 38.5,
"y": 178 "y": 158
} }
], ],
"animated": false, "animated": false,
@ -197,15 +197,15 @@
}, },
{ {
"x": 56.16666666666667, "x": 56.16666666666667,
"y": 128 "y": 118
}, },
{ {
"x": 111.5, "x": 111.5,
"y": 128 "y": 118
}, },
{ {
"x": 111.5, "x": 111.5,
"y": 178 "y": 158
} }
], ],
"animated": false, "animated": false,

View file

@ -3,7 +3,7 @@
id="d2-svg" id="d2-svg"
style="background: white;" style="background: white;"
xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"
width="330" height="436" viewBox="-90 -90 330 436"><style type="text/css"> width="330" height="416" viewBox="-90 -90 330 416"><style type="text/css">
<![CDATA[ <![CDATA[
.shape { .shape {
shape-rendering: geometricPrecision; shape-rendering: geometricPrecision;
@ -39,8 +39,8 @@ width="330" height="436" viewBox="-90 -90 330 436"><style type="text/css">
svgEl.setAttribute("height", height * ratio - 16); svgEl.setAttribute("height", height * ratio - 16);
} }
}); });
]]></script><g id="a"><g class="shape" ><rect x="20" y="12" width="53" height="66" style="fill:#F7F8FE;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="46.500000" y="50.500000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">a</text></g><g id="b"><g class="shape" ><rect x="12" y="178" width="53" height="66" style="fill:#F7F8FE;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="38.500000" y="216.500000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">b</text></g><g id="c"><g class="shape" ><rect x="85" y="178" width="53" height="66" style="fill:#F7F8FE;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="111.500000" y="216.500000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">c</text></g><g id="(a -&gt; b)[0]"><marker id="mk-3990223579" markerWidth="10.000000" markerHeight="12.000000" refX="7.000000" refY="6.000000" viewBox="0.000000 0.000000 10.000000 12.000000" orient="auto" markerUnits="userSpaceOnUse"> <polygon class="connection" fill="#0D32B2" stroke-width="2" points="0.000000,0.000000 10.000000,6.000000 0.000000,12.000000" /> </marker><path d="M 38.500000 80.000000 L 38.500000 174.000000" class="connection" style="fill:none;stroke:#0D32B2;stroke-width:2;" marker-end="url(#mk-3990223579)" mask="url(#4051694737)"/></g><g id="(a -&gt; c)[0]"><path d="M 56.166667 80.000000 L 56.166667 118.000000 S 56.166667 128.000000 66.166667 128.000000 L 101.500000 128.000000 S 111.500000 128.000000 111.500000 138.000000 L 111.500000 174.000000" class="connection" style="fill:none;stroke:#0D32B2;stroke-width:2;" marker-end="url(#mk-3990223579)" mask="url(#4051694737)"/></g><mask id="4051694737" maskUnits="userSpaceOnUse" x="-100" y="-100" width="330" height="436"> ]]></script><g id="a"><g class="shape" ><rect x="20" y="12" width="53" height="66" style="fill:#F7F8FE;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="46.500000" y="50.500000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">a</text></g><g id="b"><g class="shape" ><rect x="12" y="158" width="53" height="66" style="fill:#F7F8FE;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="38.500000" y="196.500000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">b</text></g><g id="c"><g class="shape" ><rect x="85" y="158" width="53" height="66" style="fill:#F7F8FE;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="111.500000" y="196.500000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">c</text></g><g id="(a -&gt; b)[0]"><marker id="mk-3990223579" markerWidth="10.000000" markerHeight="12.000000" refX="7.000000" refY="6.000000" viewBox="0.000000 0.000000 10.000000 12.000000" orient="auto" markerUnits="userSpaceOnUse"> <polygon class="connection" fill="#0D32B2" stroke-width="2" points="0.000000,0.000000 10.000000,6.000000 0.000000,12.000000" /> </marker><path d="M 38.500000 80.000000 L 38.500000 154.000000" class="connection" style="fill:none;stroke:#0D32B2;stroke-width:2;" marker-end="url(#mk-3990223579)" mask="url(#1605829925)"/></g><g id="(a -&gt; c)[0]"><path d="M 56.166667 80.000000 L 56.166667 108.000000 S 56.166667 118.000000 66.166667 118.000000 L 101.500000 118.000000 S 111.500000 118.000000 111.500000 128.000000 L 111.500000 154.000000" class="connection" style="fill:none;stroke:#0D32B2;stroke-width:2;" marker-end="url(#mk-3990223579)" mask="url(#1605829925)"/></g><mask id="1605829925" maskUnits="userSpaceOnUse" x="-100" y="-100" width="330" height="416">
<rect x="-100" y="-100" width="330" height="436" fill="white"></rect> <rect x="-100" y="-100" width="330" height="416" fill="white"></rect>
</mask><style type="text/css"><![CDATA[ </mask><style type="text/css"><![CDATA[
.text-bold { .text-bold {

Before

Width:  |  Height:  |  Size: 326 KiB

After

Width:  |  Height:  |  Size: 326 KiB

View file

@ -48,7 +48,7 @@
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 12, "x": 12,
"y": 178 "y": 148
}, },
"width": 53, "width": 53,
"height": 66, "height": 66,
@ -117,7 +117,7 @@
}, },
{ {
"x": 38.5, "x": 38.5,
"y": 178 "y": 148
} }
], ],
"animated": false, "animated": false,

View file

@ -3,7 +3,7 @@
id="d2-svg" id="d2-svg"
style="background: white;" style="background: white;"
xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"
width="257" height="436" viewBox="-90 -90 257 436"><style type="text/css"> width="257" height="406" viewBox="-90 -90 257 406"><style type="text/css">
<![CDATA[ <![CDATA[
.shape { .shape {
shape-rendering: geometricPrecision; shape-rendering: geometricPrecision;
@ -39,8 +39,8 @@ width="257" height="436" viewBox="-90 -90 257 436"><style type="text/css">
svgEl.setAttribute("height", height * ratio - 16); svgEl.setAttribute("height", height * ratio - 16);
} }
}); });
]]></script><g id="a"><g class="shape" ><rect x="12" y="12" width="53" height="66" style="fill:#F7F8FE;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="38.500000" y="50.500000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">a</text></g><g id="b"><g class="shape" ><rect x="12" y="178" width="53" height="66" style="fill:#F7F8FE;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="38.500000" y="216.500000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">b</text></g><g id="(a -&gt; b)[0]"><marker id="mk-3990223579" markerWidth="10.000000" markerHeight="12.000000" refX="7.000000" refY="6.000000" viewBox="0.000000 0.000000 10.000000 12.000000" orient="auto" markerUnits="userSpaceOnUse"> <polygon class="connection" fill="#0D32B2" stroke-width="2" points="0.000000,0.000000 10.000000,6.000000 0.000000,12.000000" /> </marker><path d="M 38.500000 80.000000 L 38.500000 174.000000" class="connection" style="fill:none;stroke:#0D32B2;stroke-width:2;" marker-end="url(#mk-3990223579)" mask="url(#3188901490)"/></g><mask id="3188901490" maskUnits="userSpaceOnUse" x="-100" y="-100" width="257" height="436"> ]]></script><g id="a"><g class="shape" ><rect x="12" y="12" width="53" height="66" style="fill:#F7F8FE;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="38.500000" y="50.500000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">a</text></g><g id="b"><g class="shape" ><rect x="12" y="148" width="53" height="66" style="fill:#F7F8FE;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="38.500000" y="186.500000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">b</text></g><g id="(a -&gt; b)[0]"><marker id="mk-3990223579" markerWidth="10.000000" markerHeight="12.000000" refX="7.000000" refY="6.000000" viewBox="0.000000 0.000000 10.000000 12.000000" orient="auto" markerUnits="userSpaceOnUse"> <polygon class="connection" fill="#0D32B2" stroke-width="2" points="0.000000,0.000000 10.000000,6.000000 0.000000,12.000000" /> </marker><path d="M 38.500000 80.000000 L 38.500000 144.000000" class="connection" style="fill:none;stroke:#0D32B2;stroke-width:2;" marker-end="url(#mk-3990223579)" mask="url(#3916722828)"/></g><mask id="3916722828" maskUnits="userSpaceOnUse" x="-100" y="-100" width="257" height="406">
<rect x="-100" y="-100" width="257" height="436" fill="white"></rect> <rect x="-100" y="-100" width="257" height="406" fill="white"></rect>
</mask><style type="text/css"><![CDATA[ </mask><style type="text/css"><![CDATA[
.text-bold { .text-bold {

Before

Width:  |  Height:  |  Size: 325 KiB

After

Width:  |  Height:  |  Size: 325 KiB

View file

@ -6,10 +6,10 @@
"id": "a", "id": "a",
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 0, "x": 1,
"y": 41 "y": 41
}, },
"width": 156, "width": 133,
"height": 125, "height": 125,
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
@ -47,7 +47,7 @@
"id": "a.b", "id": "a.b",
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 54, "x": 41,
"y": 70 "y": 70
}, },
"width": 53, "width": 53,
@ -91,7 +91,7 @@
"x": 0, "x": 0,
"y": 307 "y": 307
}, },
"width": 157, "width": 134,
"height": 125, "height": 125,
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
@ -129,7 +129,7 @@
"id": "c.d", "id": "c.d",
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 53, "x": 40,
"y": 336 "y": 336
}, },
"width": 54, "width": 54,
@ -194,31 +194,31 @@
"labelPercentage": 0, "labelPercentage": 0,
"route": [ "route": [
{ {
"x": 80, "x": 67,
"y": 136.5 "y": 136.5
}, },
{ {
"x": 80, "x": 67,
"y": 160.1 "y": 160.1
}, },
{ {
"x": 80, "x": 67,
"y": 176 "y": 176
}, },
{ {
"x": 80, "x": 67,
"y": 191 "y": 191
}, },
{ {
"x": 80, "x": 67,
"y": 206 "y": 206
}, },
{ {
"x": 80, "x": 67,
"y": 280.1 "y": 280.1
}, },
{ {
"x": 80, "x": 67,
"y": 336.5 "y": 336.5
} }
], ],

View file

@ -3,7 +3,7 @@
id="d2-svg" id="d2-svg"
style="background: white;" style="background: white;"
xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"
width="361" height="634" viewBox="-102 -100 361 634"><style type="text/css"> width="338" height="634" viewBox="-102 -100 338 634"><style type="text/css">
<![CDATA[ <![CDATA[
.shape { .shape {
shape-rendering: geometricPrecision; shape-rendering: geometricPrecision;
@ -39,8 +39,8 @@ width="361" height="634" viewBox="-102 -100 361 634"><style type="text/css">
svgEl.setAttribute("height", height * ratio - 16); svgEl.setAttribute("height", height * ratio - 16);
} }
}); });
]]></script><g id="a"><g class="shape" ><rect x="0" y="41" width="156" height="125" style="fill:#E3E9FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text" x="78.000000" y="28.000000" style="text-anchor:middle;font-size:28px;fill:#0A0F25">a</text></g><g id="c"><g class="shape" ><rect x="0" y="307" width="157" height="125" style="fill:#E3E9FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text" x="78.500000" y="294.000000" style="text-anchor:middle;font-size:28px;fill:#0A0F25">c</text></g><g id="a.b"><g class="shape" ><rect x="54" y="70" width="53" height="66" style="fill:#EDF0FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="80.500000" y="108.500000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">b</text></g><g id="c.d"><g class="shape" ><rect x="53" y="336" width="54" height="66" style="fill:#EDF0FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="80.000000" y="374.500000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">d</text></g><g id="(a.b -&gt; c.d)[0]"><marker id="mk-3990223579" markerWidth="10.000000" markerHeight="12.000000" refX="7.000000" refY="6.000000" viewBox="0.000000 0.000000 10.000000 12.000000" orient="auto" markerUnits="userSpaceOnUse"> <polygon class="connection" fill="#0D32B2" stroke-width="2" points="0.000000,0.000000 10.000000,6.000000 0.000000,12.000000" /> </marker><path d="M 80.000000 138.500000 C 80.000000 160.100000 80.000000 176.000000 80.000000 191.000000 C 80.000000 206.000000 80.000000 280.100000 80.000000 332.500000" class="connection" style="fill:none;stroke:#0D32B2;stroke-width:2;" marker-end="url(#mk-3990223579)" mask="url(#1368898776)"/></g><mask id="1368898776" maskUnits="userSpaceOnUse" x="-100" y="-100" width="361" height="634"> ]]></script><g id="a"><g class="shape" ><rect x="1" y="41" width="133" height="125" style="fill:#E3E9FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text" x="67.500000" y="28.000000" style="text-anchor:middle;font-size:28px;fill:#0A0F25">a</text></g><g id="c"><g class="shape" ><rect x="0" y="307" width="134" height="125" style="fill:#E3E9FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text" x="67.000000" y="294.000000" style="text-anchor:middle;font-size:28px;fill:#0A0F25">c</text></g><g id="a.b"><g class="shape" ><rect x="41" y="70" width="53" height="66" style="fill:#EDF0FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="67.500000" y="108.500000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">b</text></g><g id="c.d"><g class="shape" ><rect x="40" y="336" width="54" height="66" style="fill:#EDF0FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="67.000000" y="374.500000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">d</text></g><g id="(a.b -&gt; c.d)[0]"><marker id="mk-3990223579" markerWidth="10.000000" markerHeight="12.000000" refX="7.000000" refY="6.000000" viewBox="0.000000 0.000000 10.000000 12.000000" orient="auto" markerUnits="userSpaceOnUse"> <polygon class="connection" fill="#0D32B2" stroke-width="2" points="0.000000,0.000000 10.000000,6.000000 0.000000,12.000000" /> </marker><path d="M 67.000000 138.500000 C 67.000000 160.100000 67.000000 176.000000 67.000000 191.000000 C 67.000000 206.000000 67.000000 280.100000 67.000000 332.500000" class="connection" style="fill:none;stroke:#0D32B2;stroke-width:2;" marker-end="url(#mk-3990223579)" mask="url(#180528842)"/></g><mask id="180528842" maskUnits="userSpaceOnUse" x="-100" y="-100" width="338" height="634">
<rect x="-100" y="-100" width="361" height="634" fill="white"></rect> <rect x="-100" y="-100" width="338" height="634" fill="white"></rect>
</mask><style type="text/css"><![CDATA[ </mask><style type="text/css"><![CDATA[
.text { .text {

Before

Width:  |  Height:  |  Size: 649 KiB

After

Width:  |  Height:  |  Size: 649 KiB

View file

@ -9,8 +9,8 @@
"x": 12, "x": 12,
"y": 12 "y": 12
}, },
"width": 203, "width": 153,
"height": 216, "height": 166,
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
"strokeWidth": 2, "strokeWidth": 2,
@ -47,8 +47,8 @@
"id": "a.b", "id": "a.b",
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 87, "x": 62,
"y": 87 "y": 62
}, },
"width": 53, "width": 53,
"height": 66, "height": 66,
@ -89,10 +89,10 @@
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 12, "x": 12,
"y": 338 "y": 258
}, },
"width": 204, "width": 154,
"height": 216, "height": 166,
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
"strokeWidth": 2, "strokeWidth": 2,
@ -129,8 +129,8 @@
"id": "c.d", "id": "c.d",
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 87, "x": 62,
"y": 413 "y": 308
}, },
"width": 54, "width": 54,
"height": 66, "height": 66,
@ -194,12 +194,12 @@
"labelPercentage": 0, "labelPercentage": 0,
"route": [ "route": [
{ {
"x": 114, "x": 89,
"y": 153 "y": 128
}, },
{ {
"x": 114, "x": 89,
"y": 413 "y": 308
} }
], ],
"animated": false, "animated": false,

View file

@ -3,7 +3,7 @@
id="d2-svg" id="d2-svg"
style="background: white;" style="background: white;"
xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"
width="408" height="746" viewBox="-90 -90 408 746"><style type="text/css"> width="358" height="616" viewBox="-90 -90 358 616"><style type="text/css">
<![CDATA[ <![CDATA[
.shape { .shape {
shape-rendering: geometricPrecision; shape-rendering: geometricPrecision;
@ -39,8 +39,8 @@ width="408" height="746" viewBox="-90 -90 408 746"><style type="text/css">
svgEl.setAttribute("height", height * ratio - 16); svgEl.setAttribute("height", height * ratio - 16);
} }
}); });
]]></script><g id="a"><g class="shape" ><rect x="12" y="12" width="203" height="216" style="fill:#E3E9FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text" x="113.500000" y="45.000000" style="text-anchor:middle;font-size:28px;fill:#0A0F25">a</text></g><g id="c"><g class="shape" ><rect x="12" y="338" width="204" height="216" style="fill:#E3E9FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text" x="114.000000" y="371.000000" style="text-anchor:middle;font-size:28px;fill:#0A0F25">c</text></g><g id="a.b"><g class="shape" ><rect x="87" y="87" width="53" height="66" style="fill:#EDF0FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="113.500000" y="125.500000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">b</text></g><g id="c.d"><g class="shape" ><rect x="87" y="413" width="54" height="66" style="fill:#EDF0FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="114.000000" y="451.500000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">d</text></g><g id="(a.b -&gt; c.d)[0]"><marker id="mk-3990223579" markerWidth="10.000000" markerHeight="12.000000" refX="7.000000" refY="6.000000" viewBox="0.000000 0.000000 10.000000 12.000000" orient="auto" markerUnits="userSpaceOnUse"> <polygon class="connection" fill="#0D32B2" stroke-width="2" points="0.000000,0.000000 10.000000,6.000000 0.000000,12.000000" /> </marker><path d="M 114.000000 155.000000 L 114.000000 409.000000" class="connection" style="fill:none;stroke:#0D32B2;stroke-width:2;" marker-end="url(#mk-3990223579)" mask="url(#2805388826)"/></g><mask id="2805388826" maskUnits="userSpaceOnUse" x="-100" y="-100" width="408" height="746"> ]]></script><g id="a"><g class="shape" ><rect x="12" y="12" width="153" height="166" style="fill:#E3E9FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text" x="88.500000" y="45.000000" style="text-anchor:middle;font-size:28px;fill:#0A0F25">a</text></g><g id="c"><g class="shape" ><rect x="12" y="258" width="154" height="166" style="fill:#E3E9FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text" x="89.000000" y="291.000000" style="text-anchor:middle;font-size:28px;fill:#0A0F25">c</text></g><g id="a.b"><g class="shape" ><rect x="62" y="62" width="53" height="66" style="fill:#EDF0FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="88.500000" y="100.500000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">b</text></g><g id="c.d"><g class="shape" ><rect x="62" y="308" width="54" height="66" style="fill:#EDF0FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="89.000000" y="346.500000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">d</text></g><g id="(a.b -&gt; c.d)[0]"><marker id="mk-3990223579" markerWidth="10.000000" markerHeight="12.000000" refX="7.000000" refY="6.000000" viewBox="0.000000 0.000000 10.000000 12.000000" orient="auto" markerUnits="userSpaceOnUse"> <polygon class="connection" fill="#0D32B2" stroke-width="2" points="0.000000,0.000000 10.000000,6.000000 0.000000,12.000000" /> </marker><path d="M 89.000000 130.000000 L 89.000000 304.000000" class="connection" style="fill:none;stroke:#0D32B2;stroke-width:2;" marker-end="url(#mk-3990223579)" mask="url(#414993162)"/></g><mask id="414993162" maskUnits="userSpaceOnUse" x="-100" y="-100" width="358" height="616">
<rect x="-100" y="-100" width="408" height="746" fill="white"></rect> <rect x="-100" y="-100" width="358" height="616" fill="white"></rect>
</mask><style type="text/css"><![CDATA[ </mask><style type="text/css"><![CDATA[
.text { .text {

Before

Width:  |  Height:  |  Size: 649 KiB

After

Width:  |  Height:  |  Size: 649 KiB

View file

@ -48,7 +48,7 @@
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 12, "x": 12,
"y": 299 "y": 239
}, },
"width": 53, "width": 53,
"height": 66, "height": 66,
@ -117,7 +117,7 @@
}, },
{ {
"x": 38.5, "x": 38.5,
"y": 299 "y": 239
} }
], ],
"animated": false, "animated": false,

View file

@ -3,7 +3,7 @@
id="d2-svg" id="d2-svg"
style="background: white;" style="background: white;"
xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"
width="257" height="557" viewBox="-90 -90 257 557"><style type="text/css"> width="257" height="497" viewBox="-90 -90 257 497"><style type="text/css">
<![CDATA[ <![CDATA[
.shape { .shape {
shape-rendering: geometricPrecision; shape-rendering: geometricPrecision;
@ -39,9 +39,9 @@ width="257" height="557" viewBox="-90 -90 257 557"><style type="text/css">
svgEl.setAttribute("height", height * ratio - 16); svgEl.setAttribute("height", height * ratio - 16);
} }
}); });
]]></script><g id="a"><g class="shape" ><rect x="12" y="12" width="53" height="66" style="fill:#F7F8FE;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="38.500000" y="50.500000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">a</text></g><g id="b"><g class="shape" ><rect x="12" y="299" width="53" height="66" style="fill:#F7F8FE;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="38.500000" y="337.500000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">b</text></g><g id="(a -&gt; b)[0]"><marker id="mk-3990223579" markerWidth="10.000000" markerHeight="12.000000" refX="7.000000" refY="6.000000" viewBox="0.000000 0.000000 10.000000 12.000000" orient="auto" markerUnits="userSpaceOnUse"> <polygon class="connection" fill="#0D32B2" stroke-width="2" points="0.000000,0.000000 10.000000,6.000000 0.000000,12.000000" /> </marker><path d="M 38.500000 80.000000 L 38.500000 295.000000" class="connection" style="fill:none;stroke:#0D32B2;stroke-width:2;" marker-end="url(#mk-3990223579)" mask="url(#2116948623)"/><text class="text-italic" x="38.500000" y="194.000000" style="text-anchor:middle;font-size:16px;fill:#676C7E">hello</text></g><mask id="2116948623" maskUnits="userSpaceOnUse" x="-100" y="-100" width="257" height="557"> ]]></script><g id="a"><g class="shape" ><rect x="12" y="12" width="53" height="66" style="fill:#F7F8FE;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="38.500000" y="50.500000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">a</text></g><g id="b"><g class="shape" ><rect x="12" y="239" width="53" height="66" style="fill:#F7F8FE;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="38.500000" y="277.500000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">b</text></g><g id="(a -&gt; b)[0]"><marker id="mk-3990223579" markerWidth="10.000000" markerHeight="12.000000" refX="7.000000" refY="6.000000" viewBox="0.000000 0.000000 10.000000 12.000000" orient="auto" markerUnits="userSpaceOnUse"> <polygon class="connection" fill="#0D32B2" stroke-width="2" points="0.000000,0.000000 10.000000,6.000000 0.000000,12.000000" /> </marker><path d="M 38.500000 80.000000 L 38.500000 235.000000" class="connection" style="fill:none;stroke:#0D32B2;stroke-width:2;" marker-end="url(#mk-3990223579)" mask="url(#2573035679)"/><text class="text-italic" x="38.500000" y="164.000000" style="text-anchor:middle;font-size:16px;fill:#676C7E">hello</text></g><mask id="2573035679" maskUnits="userSpaceOnUse" x="-100" y="-100" width="257" height="497">
<rect x="-100" y="-100" width="257" height="557" fill="white"></rect> <rect x="-100" y="-100" width="257" height="497" fill="white"></rect>
<rect x="22.000000" y="178.000000" width="33" height="21" fill="black"></rect> <rect x="22.000000" y="148.000000" width="33" height="21" fill="black"></rect>
</mask><style type="text/css"><![CDATA[ </mask><style type="text/css"><![CDATA[
.text-bold { .text-bold {
font-family: "font-bold"; font-family: "font-bold";

Before

Width:  |  Height:  |  Size: 468 KiB

After

Width:  |  Height:  |  Size: 468 KiB

View file

@ -48,7 +48,7 @@
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 20, "x": 20,
"y": 204 "y": 174
}, },
"width": 94, "width": 94,
"height": 94, "height": 94,
@ -89,7 +89,7 @@
"type": "page", "type": "page",
"pos": { "pos": {
"x": 28, "x": 28,
"y": 398 "y": 338
}, },
"width": 79, "width": 79,
"height": 87, "height": 87,
@ -171,7 +171,7 @@
"type": "document", "type": "document",
"pos": { "pos": {
"x": 182, "x": 182,
"y": 213 "y": 183
}, },
"width": 117, "width": 117,
"height": 76, "height": 76,
@ -212,7 +212,7 @@
"type": "cylinder", "type": "cylinder",
"pos": { "pos": {
"x": 189, "x": 189,
"y": 398 "y": 338
}, },
"width": 104, "width": 104,
"height": 118, "height": 118,
@ -294,7 +294,7 @@
"type": "package", "type": "package",
"pos": { "pos": {
"x": 378, "x": 378,
"y": 214 "y": 184
}, },
"width": 103, "width": 103,
"height": 73, "height": 73,
@ -335,7 +335,7 @@
"type": "step", "type": "step",
"pos": { "pos": {
"x": 371, "x": 371,
"y": 398 "y": 338
}, },
"width": 116, "width": 116,
"height": 101, "height": 101,
@ -417,7 +417,7 @@
"type": "stored_data", "type": "stored_data",
"pos": { "pos": {
"x": 509, "x": 509,
"y": 218 "y": 188
}, },
"width": 151, "width": 151,
"height": 66, "height": 66,
@ -458,7 +458,7 @@
"type": "person", "type": "person",
"pos": { "pos": {
"x": 507, "x": 507,
"y": 398 "y": 338
}, },
"width": 155, "width": 155,
"height": 103, "height": 103,
@ -540,7 +540,7 @@
"type": "oval", "type": "oval",
"pos": { "pos": {
"x": 682, "x": 682,
"y": 216 "y": 186
}, },
"width": 97, "width": 97,
"height": 70, "height": 70,
@ -581,7 +581,7 @@
"type": "oval", "type": "oval",
"pos": { "pos": {
"x": 685, "x": 685,
"y": 398 "y": 338
}, },
"width": 91, "width": 91,
"height": 91, "height": 91,
@ -663,7 +663,7 @@
"type": "cloud", "type": "cloud",
"pos": { "pos": {
"x": 840, "x": 840,
"y": 204 "y": 174
}, },
"width": 104, "width": 104,
"height": 84, "height": 84,
@ -732,7 +732,7 @@
}, },
{ {
"x": 67.5, "x": 67.5,
"y": 204 "y": 174
} }
], ],
"animated": false, "animated": false,
@ -767,11 +767,11 @@
"route": [ "route": [
{ {
"x": 67.5, "x": 67.5,
"y": 298 "y": 268
}, },
{ {
"x": 68, "x": 68,
"y": 398 "y": 338
} }
], ],
"animated": false, "animated": false,
@ -810,7 +810,7 @@
}, },
{ {
"x": 241, "x": 241,
"y": 213 "y": 183
} }
], ],
"animated": false, "animated": false,
@ -845,11 +845,11 @@
"route": [ "route": [
{ {
"x": 241, "x": 241,
"y": 278 "y": 248
}, },
{ {
"x": 241, "x": 241,
"y": 398 "y": 338
} }
], ],
"animated": false, "animated": false,
@ -888,7 +888,7 @@
}, },
{ {
"x": 430, "x": 430,
"y": 215 "y": 185
} }
], ],
"animated": false, "animated": false,
@ -923,11 +923,11 @@
"route": [ "route": [
{ {
"x": 429, "x": 429,
"y": 288 "y": 258
}, },
{ {
"x": 430, "x": 429,
"y": 398 "y": 338
} }
], ],
"animated": false, "animated": false,
@ -966,7 +966,7 @@
}, },
{ {
"x": 585, "x": 585,
"y": 218 "y": 188
} }
], ],
"animated": false, "animated": false,
@ -1001,11 +1001,11 @@
"route": [ "route": [
{ {
"x": 585, "x": 585,
"y": 284 "y": 254
}, },
{ {
"x": 585, "x": 585,
"y": 398 "y": 338
} }
], ],
"animated": false, "animated": false,
@ -1044,7 +1044,7 @@
}, },
{ {
"x": 731, "x": 731,
"y": 216 "y": 186
} }
], ],
"animated": false, "animated": false,
@ -1079,11 +1079,11 @@
"route": [ "route": [
{ {
"x": 731, "x": 731,
"y": 286 "y": 256
}, },
{ {
"x": 731, "x": 731,
"y": 398 "y": 338
} }
], ],
"animated": false, "animated": false,
@ -1122,7 +1122,7 @@
}, },
{ {
"x": 892, "x": 892,
"y": 206 "y": 176
} }
], ],
"animated": false, "animated": false,

File diff suppressed because one or more lines are too long

Before

Width:  |  Height:  |  Size: 333 KiB

After

Width:  |  Height:  |  Size: 333 KiB

View file

@ -48,7 +48,7 @@
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 20, "x": 20,
"y": 204 "y": 174
}, },
"width": 94, "width": 94,
"height": 94, "height": 94,
@ -89,7 +89,7 @@
"type": "page", "type": "page",
"pos": { "pos": {
"x": 28, "x": 28,
"y": 398 "y": 338
}, },
"width": 79, "width": 79,
"height": 87, "height": 87,
@ -171,7 +171,7 @@
"type": "document", "type": "document",
"pos": { "pos": {
"x": 182, "x": 182,
"y": 213 "y": 183
}, },
"width": 117, "width": 117,
"height": 76, "height": 76,
@ -212,7 +212,7 @@
"type": "cylinder", "type": "cylinder",
"pos": { "pos": {
"x": 189, "x": 189,
"y": 398 "y": 338
}, },
"width": 104, "width": 104,
"height": 118, "height": 118,
@ -294,7 +294,7 @@
"type": "package", "type": "package",
"pos": { "pos": {
"x": 378, "x": 378,
"y": 214 "y": 184
}, },
"width": 103, "width": 103,
"height": 73, "height": 73,
@ -335,7 +335,7 @@
"type": "step", "type": "step",
"pos": { "pos": {
"x": 371, "x": 371,
"y": 398 "y": 338
}, },
"width": 116, "width": 116,
"height": 101, "height": 101,
@ -417,7 +417,7 @@
"type": "stored_data", "type": "stored_data",
"pos": { "pos": {
"x": 509, "x": 509,
"y": 218 "y": 188
}, },
"width": 151, "width": 151,
"height": 66, "height": 66,
@ -458,7 +458,7 @@
"type": "person", "type": "person",
"pos": { "pos": {
"x": 507, "x": 507,
"y": 398 "y": 338
}, },
"width": 155, "width": 155,
"height": 103, "height": 103,
@ -540,7 +540,7 @@
"type": "oval", "type": "oval",
"pos": { "pos": {
"x": 682, "x": 682,
"y": 216 "y": 186
}, },
"width": 97, "width": 97,
"height": 70, "height": 70,
@ -581,7 +581,7 @@
"type": "oval", "type": "oval",
"pos": { "pos": {
"x": 685, "x": 685,
"y": 398 "y": 338
}, },
"width": 91, "width": 91,
"height": 91, "height": 91,
@ -663,7 +663,7 @@
"type": "cloud", "type": "cloud",
"pos": { "pos": {
"x": 840, "x": 840,
"y": 204 "y": 174
}, },
"width": 104, "width": 104,
"height": 84, "height": 84,
@ -732,7 +732,7 @@
}, },
{ {
"x": 67.5, "x": 67.5,
"y": 204 "y": 174
} }
], ],
"animated": false, "animated": false,
@ -767,11 +767,11 @@
"route": [ "route": [
{ {
"x": 67.5, "x": 67.5,
"y": 298 "y": 268
}, },
{ {
"x": 68, "x": 68,
"y": 398 "y": 338
} }
], ],
"animated": false, "animated": false,
@ -810,7 +810,7 @@
}, },
{ {
"x": 241, "x": 241,
"y": 213 "y": 183
} }
], ],
"animated": false, "animated": false,
@ -845,11 +845,11 @@
"route": [ "route": [
{ {
"x": 241, "x": 241,
"y": 278 "y": 248
}, },
{ {
"x": 241, "x": 241,
"y": 398 "y": 338
} }
], ],
"animated": false, "animated": false,
@ -888,7 +888,7 @@
}, },
{ {
"x": 430, "x": 430,
"y": 215 "y": 185
} }
], ],
"animated": false, "animated": false,
@ -923,11 +923,11 @@
"route": [ "route": [
{ {
"x": 429, "x": 429,
"y": 288 "y": 258
}, },
{ {
"x": 430, "x": 429,
"y": 398 "y": 338
} }
], ],
"animated": false, "animated": false,
@ -966,7 +966,7 @@
}, },
{ {
"x": 585, "x": 585,
"y": 218 "y": 188
} }
], ],
"animated": false, "animated": false,
@ -1001,11 +1001,11 @@
"route": [ "route": [
{ {
"x": 585, "x": 585,
"y": 284 "y": 254
}, },
{ {
"x": 585, "x": 585,
"y": 398 "y": 338
} }
], ],
"animated": false, "animated": false,
@ -1044,7 +1044,7 @@
}, },
{ {
"x": 731, "x": 731,
"y": 216 "y": 186
} }
], ],
"animated": false, "animated": false,
@ -1079,11 +1079,11 @@
"route": [ "route": [
{ {
"x": 731, "x": 731,
"y": 286 "y": 256
}, },
{ {
"x": 731, "x": 731,
"y": 398 "y": 338
} }
], ],
"animated": false, "animated": false,
@ -1122,7 +1122,7 @@
}, },
{ {
"x": 892, "x": 892,
"y": 206 "y": 176
} }
], ],
"animated": false, "animated": false,

File diff suppressed because one or more lines are too long

Before

Width:  |  Height:  |  Size: 336 KiB

After

Width:  |  Height:  |  Size: 336 KiB

View file

@ -48,7 +48,7 @@
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 20, "x": 20,
"y": 204 "y": 174
}, },
"width": 94, "width": 94,
"height": 94, "height": 94,
@ -89,7 +89,7 @@
"type": "page", "type": "page",
"pos": { "pos": {
"x": 28, "x": 28,
"y": 398 "y": 338
}, },
"width": 79, "width": 79,
"height": 87, "height": 87,
@ -171,7 +171,7 @@
"type": "document", "type": "document",
"pos": { "pos": {
"x": 182, "x": 182,
"y": 213 "y": 183
}, },
"width": 117, "width": 117,
"height": 76, "height": 76,
@ -212,7 +212,7 @@
"type": "cylinder", "type": "cylinder",
"pos": { "pos": {
"x": 189, "x": 189,
"y": 398 "y": 338
}, },
"width": 104, "width": 104,
"height": 118, "height": 118,
@ -294,7 +294,7 @@
"type": "package", "type": "package",
"pos": { "pos": {
"x": 378, "x": 378,
"y": 214 "y": 184
}, },
"width": 103, "width": 103,
"height": 73, "height": 73,
@ -335,7 +335,7 @@
"type": "step", "type": "step",
"pos": { "pos": {
"x": 371, "x": 371,
"y": 398 "y": 338
}, },
"width": 116, "width": 116,
"height": 101, "height": 101,
@ -417,7 +417,7 @@
"type": "stored_data", "type": "stored_data",
"pos": { "pos": {
"x": 509, "x": 509,
"y": 218 "y": 188
}, },
"width": 151, "width": 151,
"height": 66, "height": 66,
@ -458,7 +458,7 @@
"type": "person", "type": "person",
"pos": { "pos": {
"x": 507, "x": 507,
"y": 398 "y": 338
}, },
"width": 155, "width": 155,
"height": 103, "height": 103,
@ -540,7 +540,7 @@
"type": "oval", "type": "oval",
"pos": { "pos": {
"x": 682, "x": 682,
"y": 216 "y": 186
}, },
"width": 97, "width": 97,
"height": 70, "height": 70,
@ -581,7 +581,7 @@
"type": "oval", "type": "oval",
"pos": { "pos": {
"x": 685, "x": 685,
"y": 398 "y": 338
}, },
"width": 91, "width": 91,
"height": 91, "height": 91,
@ -663,7 +663,7 @@
"type": "cloud", "type": "cloud",
"pos": { "pos": {
"x": 840, "x": 840,
"y": 204 "y": 174
}, },
"width": 104, "width": 104,
"height": 84, "height": 84,
@ -732,7 +732,7 @@
}, },
{ {
"x": 67.5, "x": 67.5,
"y": 204 "y": 174
} }
], ],
"animated": false, "animated": false,
@ -767,11 +767,11 @@
"route": [ "route": [
{ {
"x": 67.5, "x": 67.5,
"y": 298 "y": 268
}, },
{ {
"x": 68, "x": 68,
"y": 398 "y": 338
} }
], ],
"animated": false, "animated": false,
@ -810,7 +810,7 @@
}, },
{ {
"x": 241, "x": 241,
"y": 213 "y": 183
} }
], ],
"animated": false, "animated": false,
@ -845,11 +845,11 @@
"route": [ "route": [
{ {
"x": 241, "x": 241,
"y": 278 "y": 248
}, },
{ {
"x": 241, "x": 241,
"y": 398 "y": 338
} }
], ],
"animated": false, "animated": false,
@ -888,7 +888,7 @@
}, },
{ {
"x": 430, "x": 430,
"y": 215 "y": 185
} }
], ],
"animated": false, "animated": false,
@ -923,11 +923,11 @@
"route": [ "route": [
{ {
"x": 429, "x": 429,
"y": 288 "y": 258
}, },
{ {
"x": 430, "x": 429,
"y": 398 "y": 338
} }
], ],
"animated": false, "animated": false,
@ -966,7 +966,7 @@
}, },
{ {
"x": 585, "x": 585,
"y": 218 "y": 188
} }
], ],
"animated": false, "animated": false,
@ -1001,11 +1001,11 @@
"route": [ "route": [
{ {
"x": 585, "x": 585,
"y": 284 "y": 254
}, },
{ {
"x": 585, "x": 585,
"y": 398 "y": 338
} }
], ],
"animated": false, "animated": false,
@ -1044,7 +1044,7 @@
}, },
{ {
"x": 731, "x": 731,
"y": 216 "y": 186
} }
], ],
"animated": false, "animated": false,
@ -1079,11 +1079,11 @@
"route": [ "route": [
{ {
"x": 731, "x": 731,
"y": 286 "y": 256
}, },
{ {
"x": 731, "x": 731,
"y": 398 "y": 338
} }
], ],
"animated": false, "animated": false,
@ -1122,7 +1122,7 @@
}, },
{ {
"x": 892, "x": 892,
"y": 206 "y": 176
} }
], ],
"animated": false, "animated": false,

File diff suppressed because one or more lines are too long

Before

Width:  |  Height:  |  Size: 334 KiB

After

Width:  |  Height:  |  Size: 334 KiB

File diff suppressed because one or more lines are too long

Before

Width:  |  Height:  |  Size: 475 KiB

After

Width:  |  Height:  |  Size: 475 KiB

View file

@ -48,7 +48,7 @@
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 12, "x": 12,
"y": 178 "y": 158
}, },
"width": 89, "width": 89,
"height": 66, "height": 66,
@ -89,7 +89,7 @@
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 121, "x": 121,
"y": 178 "y": 158
}, },
"width": 130, "width": 130,
"height": 66, "height": 66,
@ -171,7 +171,7 @@
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 271, "x": 271,
"y": 178 "y": 158
}, },
"width": 131, "width": 131,
"height": 66, "height": 66,
@ -253,7 +253,7 @@
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 422, "x": 422,
"y": 178 "y": 158
}, },
"width": 101, "width": 101,
"height": 66, "height": 66,
@ -335,7 +335,7 @@
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 543, "x": 543,
"y": 178 "y": 158
}, },
"width": 85, "width": 85,
"height": 66, "height": 66,
@ -376,7 +376,7 @@
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 648, "x": 648,
"y": 178 "y": 158
}, },
"width": 84, "width": 84,
"height": 66, "height": 66,
@ -417,7 +417,7 @@
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 752, "x": 752,
"y": 178 "y": 158
}, },
"width": 91, "width": 91,
"height": 66, "height": 66,
@ -499,7 +499,7 @@
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 841, "x": 841,
"y": 344 "y": 294
}, },
"width": 76, "width": 76,
"height": 66, "height": 66,
@ -568,15 +568,15 @@
}, },
{ {
"x": 123.66666666666674, "x": 123.66666666666674,
"y": 128 "y": 118
}, },
{ {
"x": 56.5, "x": 56.5,
"y": 128 "y": 118
}, },
{ {
"x": 56.5, "x": 56.5,
"y": 178 "y": 158
} }
], ],
"animated": true, "animated": true,
@ -615,7 +615,7 @@
}, },
{ {
"x": 186, "x": 186,
"y": 178 "y": 158
} }
], ],
"animated": true, "animated": true,
@ -654,7 +654,7 @@
}, },
{ {
"x": 336.5, "x": 336.5,
"y": 178 "y": 158
} }
], ],
"animated": true, "animated": true,
@ -693,7 +693,7 @@
}, },
{ {
"x": 472.5, "x": 472.5,
"y": 178 "y": 158
} }
], ],
"animated": true, "animated": true,
@ -732,15 +732,15 @@
}, },
{ {
"x": 662.5, "x": 662.5,
"y": 128 "y": 118
}, },
{ {
"x": 585.5, "x": 585.5,
"y": 128 "y": 118
}, },
{ {
"x": 585.5, "x": 585.5,
"y": 178 "y": 158
} }
], ],
"animated": true, "animated": true,
@ -779,7 +779,7 @@
}, },
{ {
"x": 690, "x": 690,
"y": 178 "y": 158
} }
], ],
"animated": true, "animated": true,
@ -818,15 +818,15 @@
}, },
{ {
"x": 717.5, "x": 717.5,
"y": 128 "y": 118
}, },
{ {
"x": 797.5, "x": 797.5,
"y": 128 "y": 118
}, },
{ {
"x": 797.5, "x": 797.5,
"y": 178 "y": 158
} }
], ],
"animated": true, "animated": true,
@ -865,7 +865,7 @@
}, },
{ {
"x": 879, "x": 879,
"y": 344 "y": 294
} }
], ],
"animated": true, "animated": true,

File diff suppressed because one or more lines are too long

Before

Width:  |  Height:  |  Size: 475 KiB

After

Width:  |  Height:  |  Size: 475 KiB

View file

@ -88,7 +88,7 @@
"id": "c", "id": "c",
"type": "document", "type": "document",
"pos": { "pos": {
"x": 74, "x": 69,
"y": 366 "y": 366
}, },
"width": 53, "width": 53,
@ -194,55 +194,55 @@
"route": [ "route": [
{ {
"x": 23.5, "x": 23.5,
"y": 54.995000000000005 "y": 57.43888888888889
}, },
{ {
"x": -35.300000000000004, "x": -27.300000000000004,
"y": 103.799 "y": 104.28777777777779
}, },
{ {
"x": -50, "x": -40,
"y": 136 "y": 136
}, },
{ {
"x": -50, "x": -40,
"y": 166 "y": 166
}, },
{ {
"x": -50, "x": -40,
"y": 196 "y": 196
}, },
{ {
"x": -50, "x": -40,
"y": 236 "y": 236
}, },
{ {
"x": -50, "x": -40,
"y": 266 "y": 266
}, },
{ {
"x": -50, "x": -40,
"y": 296 "y": 296
}, },
{ {
"x": -50, "x": -40,
"y": 333.6 "y": 333.6
}, },
{ {
"x": -50, "x": -40,
"y": 360 "y": 360
}, },
{ {
"x": -50, "x": -40,
"y": 386.4 "y": 386.4
}, },
{ {
"x": -35.3, "x": -27.299999999999997,
"y": 504.201 "y": 503.71222222222224
}, },
{ {
"x": 23.5, "x": 23.5,
"y": 553.005 "y": 550.5611111111111
} }
], ],
"isCurve": true, "isCurve": true,
@ -277,19 +277,19 @@
"labelPercentage": 0, "labelPercentage": 0,
"route": [ "route": [
{ {
"x": 100, "x": 95,
"y": 433 "y": 433
}, },
{ {
"x": 100, "x": 95,
"y": 480.2 "y": 480.2
}, },
{ {
"x": 94, "x": 89.6,
"y": 502 "y": 502
}, },
{ {
"x": 70, "x": 68,
"y": 542 "y": 542
} }
], ],
@ -373,32 +373,32 @@
"labelPercentage": 0, "labelPercentage": 0,
"route": [ "route": [
{ {
"x": 122, "x": 114,
"y": 366 "y": 366
}, },
{ {
"x": 144.4, "x": 134.8,
"y": 326 "y": 326
}, },
{ {
"x": 150, "x": 140,
"y": 296 "y": 296
}, },
{ {
"x": 150, "x": 140,
"y": 266 "y": 266
}, },
{ {
"x": 150, "x": 140,
"y": 236 "y": 236
}, },
{ {
"x": 135.4, "x": 127.4,
"y": 103.8 "y": 104.4
}, },
{ {
"x": 77, "x": 77,
"y": 55 "y": 58
} }
], ],
"isCurve": true, "isCurve": true,
@ -441,11 +441,11 @@
"y": 306 "y": 306
}, },
{ {
"x": 55.6, "x": 55.2,
"y": 326 "y": 326
}, },
{ {
"x": 78, "x": 76,
"y": 366 "y": 366
} }
], ],

File diff suppressed because one or more lines are too long

Before

Width:  |  Height:  |  Size: 472 KiB

After

Width:  |  Height:  |  Size: 472 KiB

View file

@ -48,7 +48,7 @@
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 88, "x": 88,
"y": 604 "y": 544
}, },
"width": 53, "width": 53,
"height": 66, "height": 66,
@ -89,7 +89,7 @@
"type": "document", "type": "document",
"pos": { "pos": {
"x": 97, "x": 97,
"y": 428 "y": 388
}, },
"width": 53, "width": 53,
"height": 76, "height": 76,
@ -130,7 +130,7 @@
"type": "oval", "type": "oval",
"pos": { "pos": {
"x": 23, "x": 23,
"y": 228 "y": 208
}, },
"width": 100, "width": 100,
"height": 100, "height": 100,
@ -198,23 +198,23 @@
}, },
{ {
"x": 106.5, "x": 106.5,
"y": 128 "y": 118
}, },
{ {
"x": 12, "x": 12,
"y": 128 "y": 118
}, },
{ {
"x": 12, "x": 12,
"y": 554 "y": 504
}, },
{ {
"x": 106.5, "x": 106.5,
"y": 554 "y": 504
}, },
{ {
"x": 106.5, "x": 106.5,
"y": 604 "y": 544
} }
], ],
"animated": false, "animated": false,
@ -249,11 +249,11 @@
"route": [ "route": [
{ {
"x": 124, "x": 124,
"y": 493 "y": 453
}, },
{ {
"x": 124.16666666666666, "x": 124.16666666666666,
"y": 604 "y": 544
} }
], ],
"animated": false, "animated": false,
@ -292,15 +292,15 @@
}, },
{ {
"x": 119.75, "x": 119.75,
"y": 178 "y": 168
}, },
{ {
"x": 73, "x": 73,
"y": 178 "y": 168
}, },
{ {
"x": 73, "x": 73,
"y": 228 "y": 208
} }
], ],
"animated": false, "animated": false,
@ -335,7 +335,7 @@
"route": [ "route": [
{ {
"x": 133, "x": 133,
"y": 428 "y": 388
}, },
{ {
"x": 133, "x": 133,
@ -374,19 +374,19 @@
"route": [ "route": [
{ {
"x": 73, "x": 73,
"y": 328 "y": 308
}, },
{ {
"x": 73, "x": 73,
"y": 378 "y": 348
}, },
{ {
"x": 115.33333333333333, "x": 115.33333333333333,
"y": 378 "y": 348
}, },
{ {
"x": 115, "x": 115,
"y": 428 "y": 388
} }
], ],
"animated": false, "animated": false,

File diff suppressed because one or more lines are too long

Before

Width:  |  Height:  |  Size: 472 KiB

After

Width:  |  Height:  |  Size: 472 KiB

View file

@ -48,7 +48,7 @@
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 86, "x": 86,
"y": 299 "y": 239
}, },
"width": 53, "width": 53,
"height": 66, "height": 66,
@ -117,7 +117,7 @@
}, },
{ {
"x": 112.5, "x": 112.5,
"y": 299 "y": 239
} }
], ],
"animated": false, "animated": false,

View file

@ -3,7 +3,7 @@
id="d2-svg" id="d2-svg"
style="background: white;" style="background: white;"
xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"
width="401" height="557" viewBox="-88 -90 401 557"><style type="text/css"> width="401" height="497" viewBox="-88 -90 401 497"><style type="text/css">
<![CDATA[ <![CDATA[
.shape { .shape {
shape-rendering: geometricPrecision; shape-rendering: geometricPrecision;
@ -39,9 +39,9 @@ width="401" height="557" viewBox="-88 -90 401 557"><style type="text/css">
svgEl.setAttribute("height", height * ratio - 16); svgEl.setAttribute("height", height * ratio - 16);
} }
}); });
]]></script><g id="a"><g class="shape" ><rect x="86" y="12" width="53" height="66" style="fill:#F7F8FE;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="112.500000" y="50.500000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">a</text></g><g id="b"><g class="shape" ><rect x="86" y="299" width="53" height="66" style="fill:#F7F8FE;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="112.500000" y="337.500000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">b</text></g><g id="(a -&gt; b)[0]"><marker id="mk-1247258845" markerWidth="24.200000" markerHeight="18.000000" refX="20.800000" refY="9.000000" viewBox="0.000000 0.000000 24.200000 18.000000" orient="auto" markerUnits="userSpaceOnUse"> <polygon class="connection" fill="white" stroke="#0D32B2" stroke-width="2" points="0.000000,9.000000 11.000000,2.250000 22.000000,9.000000 11.000000,16.200000" /> </marker><path d="M 112.500000 80.000000 L 112.500000 295.000000" class="connection" style="fill:none;stroke:#0D32B2;stroke-width:2;" marker-end="url(#mk-1247258845)" mask="url(#451131810)"/><text class="text-italic" x="112.500000" y="194.000000" style="text-anchor:middle;font-size:16px;fill:#676C7E">To err is human, to moo bovine</text><text class="text-italic" x="127.000000" y="291.000000" style="text-anchor:middle;font-size:16px;fill:black">*</text></g><mask id="451131810" maskUnits="userSpaceOnUse" x="-100" y="-100" width="401" height="557"> ]]></script><g id="a"><g class="shape" ><rect x="86" y="12" width="53" height="66" style="fill:#F7F8FE;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="112.500000" y="50.500000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">a</text></g><g id="b"><g class="shape" ><rect x="86" y="239" width="53" height="66" style="fill:#F7F8FE;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="112.500000" y="277.500000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">b</text></g><g id="(a -&gt; b)[0]"><marker id="mk-1247258845" markerWidth="24.200000" markerHeight="18.000000" refX="20.800000" refY="9.000000" viewBox="0.000000 0.000000 24.200000 18.000000" orient="auto" markerUnits="userSpaceOnUse"> <polygon class="connection" fill="white" stroke="#0D32B2" stroke-width="2" points="0.000000,9.000000 11.000000,2.250000 22.000000,9.000000 11.000000,16.200000" /> </marker><path d="M 112.500000 80.000000 L 112.500000 235.000000" class="connection" style="fill:none;stroke:#0D32B2;stroke-width:2;" marker-end="url(#mk-1247258845)" mask="url(#3280476426)"/><text class="text-italic" x="112.500000" y="164.000000" style="text-anchor:middle;font-size:16px;fill:#676C7E">To err is human, to moo bovine</text><text class="text-italic" x="127.000000" y="231.000000" style="text-anchor:middle;font-size:16px;fill:black">*</text></g><mask id="3280476426" maskUnits="userSpaceOnUse" x="-100" y="-100" width="401" height="497">
<rect x="-100" y="-100" width="401" height="557" fill="white"></rect> <rect x="-100" y="-100" width="401" height="497" fill="white"></rect>
<rect x="12.000000" y="178.000000" width="201" height="21" fill="black"></rect> <rect x="12.000000" y="148.000000" width="201" height="21" fill="black"></rect>
</mask><style type="text/css"><![CDATA[ </mask><style type="text/css"><![CDATA[
.text-bold { .text-bold {
font-family: "font-bold"; font-family: "font-bold";

Before

Width:  |  Height:  |  Size: 468 KiB

After

Width:  |  Height:  |  Size: 468 KiB

View file

@ -48,7 +48,7 @@
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 29, "x": 29,
"y": 178 "y": 158
}, },
"width": 53, "width": 53,
"height": 66, "height": 66,
@ -89,7 +89,7 @@
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 312, "x": 312,
"y": 178 "y": 158
}, },
"width": 53, "width": 53,
"height": 66, "height": 66,
@ -130,7 +130,7 @@
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 20, "x": 20,
"y": 344 "y": 304
}, },
"width": 54, "width": 54,
"height": 66, "height": 66,
@ -171,7 +171,7 @@
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 161, "x": 161,
"y": 344 "y": 304
}, },
"width": 53, "width": 53,
"height": 66, "height": 66,
@ -212,7 +212,7 @@
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 304, "x": 304,
"y": 344 "y": 304
}, },
"width": 51, "width": 51,
"height": 66, "height": 66,
@ -253,7 +253,7 @@
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 451, "x": 451,
"y": 344 "y": 304
}, },
"width": 54, "width": 54,
"height": 66, "height": 66,
@ -294,7 +294,7 @@
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 12, "x": 12,
"y": 510 "y": 450
}, },
"width": 53, "width": 53,
"height": 66, "height": 66,
@ -335,7 +335,7 @@
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 85, "x": 85,
"y": 510 "y": 450
}, },
"width": 49, "width": 49,
"height": 66, "height": 66,
@ -376,7 +376,7 @@
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 154, "x": 154,
"y": 510 "y": 450
}, },
"width": 50, "width": 50,
"height": 66, "height": 66,
@ -417,7 +417,7 @@
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 224, "x": 224,
"y": 510 "y": 450
}, },
"width": 53, "width": 53,
"height": 66, "height": 66,
@ -458,7 +458,7 @@
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 297, "x": 297,
"y": 510 "y": 450
}, },
"width": 49, "width": 49,
"height": 66, "height": 66,
@ -499,7 +499,7 @@
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 366, "x": 366,
"y": 510 "y": 450
}, },
"width": 57, "width": 57,
"height": 66, "height": 66,
@ -540,7 +540,7 @@
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 443, "x": 443,
"y": 510 "y": 450
}, },
"width": 53, "width": 53,
"height": 66, "height": 66,
@ -581,7 +581,7 @@
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 516, "x": 516,
"y": 510 "y": 450
}, },
"width": 54, "width": 54,
"height": 66, "height": 66,
@ -650,7 +650,7 @@
}, },
{ {
"x": 56.33333333333333, "x": 56.33333333333333,
"y": 178 "y": 158
} }
], ],
"animated": false, "animated": false,
@ -689,15 +689,15 @@
}, },
{ {
"x": 74, "x": 74,
"y": 128 "y": 118
}, },
{ {
"x": 338.8333333333333, "x": 338.8333333333333,
"y": 128 "y": 118
}, },
{ {
"x": 338.8333333333333, "x": 338.8333333333333,
"y": 178 "y": 158
} }
], ],
"animated": false, "animated": false,
@ -732,11 +732,11 @@
"route": [ "route": [
{ {
"x": 47.5, "x": 47.5,
"y": 244 "y": 224
}, },
{ {
"x": 47.5, "x": 47.5,
"y": 344 "y": 304
} }
], ],
"animated": false, "animated": false,
@ -771,19 +771,19 @@
"route": [ "route": [
{ {
"x": 65.16666666666667, "x": 65.16666666666667,
"y": 244 "y": 224
}, },
{ {
"x": 65.16666666666667, "x": 65.16666666666667,
"y": 294 "y": 264
}, },
{ {
"x": 187.83333333333334, "x": 187.83333333333334,
"y": 294 "y": 264
}, },
{ {
"x": 187.83333333333334, "x": 187.83333333333334,
"y": 344 "y": 304
} }
], ],
"animated": false, "animated": false,
@ -818,11 +818,11 @@
"route": [ "route": [
{ {
"x": 330, "x": 330,
"y": 244 "y": 224
}, },
{ {
"x": 330, "x": 330,
"y": 344 "y": 304
} }
], ],
"animated": false, "animated": false,
@ -857,19 +857,19 @@
"route": [ "route": [
{ {
"x": 347.66666666666663, "x": 347.66666666666663,
"y": 244 "y": 224
}, },
{ {
"x": 347.66666666666663, "x": 347.66666666666663,
"y": 294 "y": 264
}, },
{ {
"x": 478.5, "x": 478.5,
"y": 294 "y": 264
}, },
{ {
"x": 478.5, "x": 478.5,
"y": 344 "y": 304
} }
], ],
"animated": false, "animated": false,
@ -904,11 +904,11 @@
"route": [ "route": [
{ {
"x": 38.5, "x": 38.5,
"y": 410 "y": 370
}, },
{ {
"x": 38.5, "x": 38.5,
"y": 510 "y": 450
} }
], ],
"animated": false, "animated": false,
@ -943,19 +943,19 @@
"route": [ "route": [
{ {
"x": 56.5, "x": 56.5,
"y": 410 "y": 370
}, },
{ {
"x": 56.5, "x": 56.5,
"y": 460 "y": 410
}, },
{ {
"x": 109.5, "x": 109.5,
"y": 460 "y": 410
}, },
{ {
"x": 109.5, "x": 109.5,
"y": 510 "y": 450
} }
], ],
"animated": false, "animated": false,
@ -990,11 +990,11 @@
"route": [ "route": [
{ {
"x": 179, "x": 179,
"y": 410 "y": 370
}, },
{ {
"x": 179, "x": 179,
"y": 510 "y": 450
} }
], ],
"animated": false, "animated": false,
@ -1029,19 +1029,19 @@
"route": [ "route": [
{ {
"x": 196.66666666666669, "x": 196.66666666666669,
"y": 410 "y": 370
}, },
{ {
"x": 196.66666666666669, "x": 196.66666666666669,
"y": 460 "y": 410
}, },
{ {
"x": 250.5, "x": 250.5,
"y": 460 "y": 410
}, },
{ {
"x": 250.5, "x": 250.5,
"y": 510 "y": 450
} }
], ],
"animated": false, "animated": false,
@ -1076,11 +1076,11 @@
"route": [ "route": [
{ {
"x": 321.5, "x": 321.5,
"y": 410 "y": 370
}, },
{ {
"x": 321.5, "x": 321.5,
"y": 510 "y": 450
} }
], ],
"animated": false, "animated": false,
@ -1115,19 +1115,19 @@
"route": [ "route": [
{ {
"x": 338.5, "x": 338.5,
"y": 410 "y": 370
}, },
{ {
"x": 338.5, "x": 338.5,
"y": 460 "y": 410
}, },
{ {
"x": 394.5, "x": 394.5,
"y": 460 "y": 410
}, },
{ {
"x": 394.5, "x": 394.5,
"y": 510 "y": 450
} }
], ],
"animated": false, "animated": false,
@ -1162,11 +1162,11 @@
"route": [ "route": [
{ {
"x": 469.5, "x": 469.5,
"y": 410 "y": 370
}, },
{ {
"x": 469.5, "x": 469.5,
"y": 510 "y": 450
} }
], ],
"animated": false, "animated": false,
@ -1201,19 +1201,19 @@
"route": [ "route": [
{ {
"x": 487.5, "x": 487.5,
"y": 410 "y": 370
}, },
{ {
"x": 487.5, "x": 487.5,
"y": 460 "y": 410
}, },
{ {
"x": 543, "x": 543,
"y": 460 "y": 410
}, },
{ {
"x": 543, "x": 543,
"y": 510 "y": 450
} }
], ],
"animated": false, "animated": false,

File diff suppressed because one or more lines are too long

Before

Width:  |  Height:  |  Size: 332 KiB

After

Width:  |  Height:  |  Size: 332 KiB

View file

@ -9,7 +9,7 @@
"x": 0, "x": 0,
"y": 41 "y": 41
}, },
"width": 218, "width": 173,
"height": 389, "height": 389,
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
@ -47,7 +47,7 @@
"id": "aaa.bbb", "id": "aaa.bbb",
"type": "callout", "type": "callout",
"pos": { "pos": {
"x": 50, "x": 40,
"y": 309 "y": 309
}, },
"width": 72, "width": 72,
@ -88,7 +88,7 @@
"id": "aaa.ccc", "id": "aaa.ccc",
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 84, "x": 64,
"y": 96 "y": 96
}, },
"width": 68, "width": 68,
@ -129,7 +129,7 @@
"id": "ddd", "id": "ddd",
"type": "cylinder", "type": "cylinder",
"pos": { "pos": {
"x": 268, "x": 213,
"y": 50 "y": 50
}, },
"width": 73, "width": 73,
@ -170,7 +170,7 @@
"id": "eee", "id": "eee",
"type": "document", "type": "document",
"pos": { "pos": {
"x": 268, "x": 213,
"y": 297 "y": 297
}, },
"width": 70, "width": 70,
@ -235,19 +235,19 @@
"labelPercentage": 0, "labelPercentage": 0,
"route": [ "route": [
{ {
"x": 109.16317991631799, "x": 91.92468619246861,
"y": 162.5 "y": 162.5
}, },
{ {
"x": 90.6326359832636, "x": 79.18493723849372,
"y": 231.7 "y": 231.7
}, },
{ {
"x": 86, "x": 76,
"y": 261.1 "y": 261.1
}, },
{ {
"x": 86, "x": 76,
"y": 309.5 "y": 309.5
} }
], ],
@ -283,19 +283,19 @@
"labelPercentage": 0, "labelPercentage": 0,
"route": [ "route": [
{ {
"x": 268, "x": 213,
"y": 310 "y": 305
}, },
{ {
"x": 173.6, "x": 138.6,
"y": 244.8 "y": 243.8
}, },
{ {
"x": 145.4, "x": 116.8,
"y": 215.2 "y": 215.2
}, },
{ {
"x": 127, "x": 104,
"y": 162 "y": 162
} }
], ],

View file

@ -3,7 +3,7 @@
id="d2-svg" id="d2-svg"
style="background: white;" style="background: white;"
xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"
width="545" height="632" viewBox="-102 -100 545 632"><style type="text/css"> width="490" height="632" viewBox="-102 -100 490 632"><style type="text/css">
<![CDATA[ <![CDATA[
.shape { .shape {
shape-rendering: geometricPrecision; shape-rendering: geometricPrecision;
@ -39,10 +39,10 @@ width="545" height="632" viewBox="-102 -100 545 632"><style type="text/css">
svgEl.setAttribute("height", height * ratio - 16); svgEl.setAttribute("height", height * ratio - 16);
} }
}); });
]]></script><g id="aaa"><g class="shape" ><rect x="0" y="41" width="218" height="389" style="fill:#E3E9FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text" x="109.000000" y="28.000000" style="text-anchor:middle;font-size:28px;fill:#0A0F25">aaa</text></g><g id="ddd"><g class="shape" ><path d="M 268 74 C 268 50 301 50 305 50 C 308 50 341 50 341 74 V 144 C 341 168 308 168 305 168 C 301 168 268 168 268 144 V 74 Z" style="fill:#EDF0FD;stroke:#0D32B2;stroke-width:2;"/><path d="M 268 74 C 268 98 301 98 305 98 C 308 98 341 98 341 74" style="fill:#EDF0FD;stroke:#0D32B2;stroke-width:2;"/></g><text class="text-bold" x="304.500000" y="126.500000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">ddd</text></g><g id="eee"><g class="shape" ><path d="M 268 362 L 268 297 L 338 297 L 338 362 C 326 348 315 348 303 362 C 291 377 280 377 268 362 Z" style="fill:#EDF0FD;stroke:#0D32B2;stroke-width:2;"/></g><text class="text-bold" x="303.000000" y="330.610964" style="text-anchor:middle;font-size:16px;fill:#0A0F25">eee</text></g><g id="aaa.bbb"><g class="shape" ><path d="M 50 309 V 355 H 86 V 400 L 116 355 H 122 V 309 H 50 Z" style="fill:#FFFFFF;stroke:#0D32B2;stroke-width:2;"/></g><text class="text-bold" x="86.000000" y="337.500000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">bbb</text></g><g id="aaa.ccc"><g class="shape" ><rect x="84" y="96" width="68" height="66" style="fill:#EDF0FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="118.000000" y="134.500000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">ccc</text></g><g id="(aaa.ccc -- aaa)[0]"><path d="M 108.645842 164.431932 C 90.632636 231.700000 86.000000 261.100000 86.000000 307.500000" class="connection" style="fill:none;stroke:#0D32B2;stroke-width:2;" mask="url(#3566302156)"/><text class="text-italic" x="90.500000" y="240.000000" style="text-anchor:middle;font-size:16px;fill:#676C7E">111</text></g><g id="(eee &lt;- aaa.ccc)[0]"><marker id="mk-2510427236" markerWidth="10.000000" markerHeight="12.000000" refX="3.000000" refY="6.000000" viewBox="0.000000 0.000000 10.000000 12.000000" orient="auto" markerUnits="userSpaceOnUse"> <polygon class="connection" fill="#0D32B2" stroke-width="2" points="10.000000,0.000000 0.000000,6.000000 10.000000,12.000000" /> </marker><path d="M 264.708723 307.726787 C 173.600000 244.800000 145.400000 215.200000 127.653733 163.890141" class="connection" style="fill:none;stroke:#0D32B2;stroke-width:2;" marker-start="url(#mk-2510427236)" mask="url(#3566302156)"/><text class="text-italic" x="180.500000" y="255.000000" style="text-anchor:middle;font-size:16px;fill:#676C7E">222</text></g><mask id="3566302156" maskUnits="userSpaceOnUse" x="-100" y="-100" width="545" height="632"> ]]></script><g id="aaa"><g class="shape" ><rect x="0" y="41" width="173" height="389" style="fill:#E3E9FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text" x="86.500000" y="28.000000" style="text-anchor:middle;font-size:28px;fill:#0A0F25">aaa</text></g><g id="ddd"><g class="shape" ><path d="M 213 74 C 213 50 246 50 250 50 C 253 50 286 50 286 74 V 144 C 286 168 253 168 250 168 C 246 168 213 168 213 144 V 74 Z" style="fill:#EDF0FD;stroke:#0D32B2;stroke-width:2;"/><path d="M 213 74 C 213 98 246 98 250 98 C 253 98 286 98 286 74" style="fill:#EDF0FD;stroke:#0D32B2;stroke-width:2;"/></g><text class="text-bold" x="249.500000" y="126.500000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">ddd</text></g><g id="eee"><g class="shape" ><path d="M 213 362 L 213 297 L 283 297 L 283 362 C 271 348 260 348 248 362 C 236 377 225 377 213 362 Z" style="fill:#EDF0FD;stroke:#0D32B2;stroke-width:2;"/></g><text class="text-bold" x="248.000000" y="330.610964" style="text-anchor:middle;font-size:16px;fill:#0A0F25">eee</text></g><g id="aaa.bbb"><g class="shape" ><path d="M 40 309 V 355 H 76 V 400 L 106 355 H 112 V 309 H 40 Z" style="fill:#FFFFFF;stroke:#0D32B2;stroke-width:2;"/></g><text class="text-bold" x="76.000000" y="337.500000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">bbb</text></g><g id="aaa.ccc"><g class="shape" ><rect x="64" y="96" width="68" height="66" style="fill:#EDF0FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="98.000000" y="134.500000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">ccc</text></g><g id="(aaa.ccc -- aaa)[0]"><path d="M 91.562571 164.466945 C 79.184937 231.700000 76.000000 261.100000 76.000000 307.500000" class="connection" style="fill:none;stroke:#0D32B2;stroke-width:2;" mask="url(#2400255935)"/><text class="text-italic" x="78.500000" y="241.000000" style="text-anchor:middle;font-size:16px;fill:#676C7E">111</text></g><g id="(eee &lt;- aaa.ccc)[0]"><marker id="mk-2510427236" markerWidth="10.000000" markerHeight="12.000000" refX="3.000000" refY="6.000000" viewBox="0.000000 0.000000 10.000000 12.000000" orient="auto" markerUnits="userSpaceOnUse"> <polygon class="connection" fill="#0D32B2" stroke-width="2" points="10.000000,0.000000 0.000000,6.000000 10.000000,12.000000" /> </marker><path d="M 209.910841 302.458918 C 138.600000 243.800000 116.800000 215.200000 104.467852 163.944509" class="connection" style="fill:none;stroke:#0D32B2;stroke-width:2;" marker-start="url(#mk-2510427236)" mask="url(#2400255935)"/><text class="text-italic" x="140.500000" y="251.000000" style="text-anchor:middle;font-size:16px;fill:#676C7E">222</text></g><mask id="2400255935" maskUnits="userSpaceOnUse" x="-100" y="-100" width="490" height="632">
<rect x="-100" y="-100" width="545" height="632" fill="white"></rect> <rect x="-100" y="-100" width="490" height="632" fill="white"></rect>
<rect x="79.000000" y="224.000000" width="23" height="21" fill="black"></rect> <rect x="67.000000" y="225.000000" width="23" height="21" fill="black"></rect>
<rect x="168.000000" y="239.000000" width="25" height="21" fill="black"></rect> <rect x="128.000000" y="235.000000" width="25" height="21" fill="black"></rect>
</mask><style type="text/css"><![CDATA[ </mask><style type="text/css"><![CDATA[
.text { .text {
font-family: "font-regular"; font-family: "font-regular";

Before

Width:  |  Height:  |  Size: 793 KiB

After

Width:  |  Height:  |  Size: 793 KiB

View file

@ -7,10 +7,10 @@
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 12, "x": 12,
"y": 356 "y": 296
}, },
"width": 310, "width": 260,
"height": 362, "height": 282,
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
"strokeWidth": 2, "strokeWidth": 2,
@ -47,8 +47,8 @@
"id": "aaa.bbb", "id": "aaa.bbb",
"type": "callout", "type": "callout",
"pos": { "pos": {
"x": 87, "x": 62,
"y": 431 "y": 346
}, },
"width": 72, "width": 72,
"height": 91, "height": 91,
@ -88,8 +88,8 @@
"id": "aaa.ccc", "id": "aaa.ccc",
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 179, "x": 154,
"y": 443 "y": 358
}, },
"width": 68, "width": 68,
"height": 66, "height": 66,
@ -129,7 +129,7 @@
"id": "ddd", "id": "ddd",
"type": "cylinder", "type": "cylinder",
"pos": { "pos": {
"x": 85, "x": 60,
"y": 12 "y": 12
}, },
"width": 73, "width": 73,
@ -170,7 +170,7 @@
"id": "eee", "id": "eee",
"type": "document", "type": "document",
"pos": { "pos": {
"x": 178, "x": 153,
"y": 54 "y": 54
}, },
"width": 70, "width": 70,
@ -235,12 +235,12 @@
"labelPercentage": 0, "labelPercentage": 0,
"route": [ "route": [
{ {
"x": 213, "x": 188,
"y": 509.5 "y": 424.5
}, },
{ {
"x": 213, "x": 188,
"y": 718 "y": 578
} }
], ],
"animated": false, "animated": false,
@ -274,12 +274,12 @@
"labelPercentage": 0, "labelPercentage": 0,
"route": [ "route": [
{ {
"x": 213, "x": 188,
"y": 119 "y": 119
}, },
{ {
"x": 213, "x": 188,
"y": 443.5 "y": 358.5
} }
], ],
"animated": false, "animated": false,

View file

@ -3,7 +3,7 @@
id="d2-svg" id="d2-svg"
style="background: white;" style="background: white;"
xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"
width="514" height="910" viewBox="-90 -90 514 910"><style type="text/css"> width="464" height="770" viewBox="-90 -90 464 770"><style type="text/css">
<![CDATA[ <![CDATA[
.shape { .shape {
shape-rendering: geometricPrecision; shape-rendering: geometricPrecision;
@ -39,10 +39,10 @@ width="514" height="910" viewBox="-90 -90 514 910"><style type="text/css">
svgEl.setAttribute("height", height * ratio - 16); svgEl.setAttribute("height", height * ratio - 16);
} }
}); });
]]></script><g id="aaa"><g class="shape" ><rect x="12" y="356" width="310" height="362" style="fill:#E3E9FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text" x="167.000000" y="389.000000" style="text-anchor:middle;font-size:28px;fill:#0A0F25">aaa</text></g><g id="ddd"><g class="shape" ><path d="M 85 36 C 85 12 118 12 122 12 C 125 12 158 12 158 36 V 106 C 158 130 125 130 122 130 C 118 130 85 130 85 106 V 36 Z" style="fill:#EDF0FD;stroke:#0D32B2;stroke-width:2;"/><path d="M 85 36 C 85 60 118 60 122 60 C 125 60 158 60 158 36" style="fill:#EDF0FD;stroke:#0D32B2;stroke-width:2;"/></g><text class="text-bold" x="121.500000" y="88.500000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">ddd</text></g><g id="eee"><g class="shape" ><path d="M 178 119 L 178 54 L 248 54 L 248 119 C 236 105 225 105 213 119 C 201 134 190 134 178 119 Z" style="fill:#EDF0FD;stroke:#0D32B2;stroke-width:2;"/></g><text class="text-bold" x="213.000000" y="87.610964" style="text-anchor:middle;font-size:16px;fill:#0A0F25">eee</text></g><g id="aaa.bbb"><g class="shape" ><path d="M 87 431 V 477 H 123 V 522 L 153 477 H 159 V 431 H 87 Z" style="fill:#FFFFFF;stroke:#0D32B2;stroke-width:2;"/></g><text class="text-bold" x="123.000000" y="459.500000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">bbb</text></g><g id="aaa.ccc"><g class="shape" ><rect x="179" y="443" width="68" height="66" style="fill:#EDF0FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="213.000000" y="481.500000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">ccc</text></g><g id="(aaa.ccc -- aaa)[0]"><path d="M 213.000000 511.500000 L 213.000000 716.000000" class="connection" style="fill:none;stroke:#0D32B2;stroke-width:2;" mask="url(#2486154735)"/><text class="text-italic" x="213.500000" y="619.000000" style="text-anchor:middle;font-size:16px;fill:#676C7E">111</text></g><g id="(eee &lt;- aaa.ccc)[0]"><marker id="mk-2510427236" markerWidth="10.000000" markerHeight="12.000000" refX="3.000000" refY="6.000000" viewBox="0.000000 0.000000 10.000000 12.000000" orient="auto" markerUnits="userSpaceOnUse"> <polygon class="connection" fill="#0D32B2" stroke-width="2" points="10.000000,0.000000 0.000000,6.000000 10.000000,12.000000" /> </marker><path d="M 213.000000 123.000000 L 213.000000 441.500000" class="connection" style="fill:none;stroke:#0D32B2;stroke-width:2;" marker-start="url(#mk-2510427236)" mask="url(#2486154735)"/><text class="text-italic" x="213.500000" y="287.000000" style="text-anchor:middle;font-size:16px;fill:#676C7E">222</text></g><mask id="2486154735" maskUnits="userSpaceOnUse" x="-100" y="-100" width="514" height="910"> ]]></script><g id="aaa"><g class="shape" ><rect x="12" y="296" width="260" height="282" style="fill:#E3E9FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text" x="142.000000" y="329.000000" style="text-anchor:middle;font-size:28px;fill:#0A0F25">aaa</text></g><g id="ddd"><g class="shape" ><path d="M 60 36 C 60 12 93 12 97 12 C 100 12 133 12 133 36 V 106 C 133 130 100 130 97 130 C 93 130 60 130 60 106 V 36 Z" style="fill:#EDF0FD;stroke:#0D32B2;stroke-width:2;"/><path d="M 60 36 C 60 60 93 60 97 60 C 100 60 133 60 133 36" style="fill:#EDF0FD;stroke:#0D32B2;stroke-width:2;"/></g><text class="text-bold" x="96.500000" y="88.500000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">ddd</text></g><g id="eee"><g class="shape" ><path d="M 153 119 L 153 54 L 223 54 L 223 119 C 211 105 200 105 188 119 C 176 134 165 134 153 119 Z" style="fill:#EDF0FD;stroke:#0D32B2;stroke-width:2;"/></g><text class="text-bold" x="188.000000" y="87.610964" style="text-anchor:middle;font-size:16px;fill:#0A0F25">eee</text></g><g id="aaa.bbb"><g class="shape" ><path d="M 62 346 V 392 H 98 V 437 L 128 392 H 134 V 346 H 62 Z" style="fill:#FFFFFF;stroke:#0D32B2;stroke-width:2;"/></g><text class="text-bold" x="98.000000" y="374.500000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">bbb</text></g><g id="aaa.ccc"><g class="shape" ><rect x="154" y="358" width="68" height="66" style="fill:#EDF0FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="188.000000" y="396.500000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">ccc</text></g><g id="(aaa.ccc -- aaa)[0]"><path d="M 188.000000 426.500000 L 188.000000 576.000000" class="connection" style="fill:none;stroke:#0D32B2;stroke-width:2;" mask="url(#3846046650)"/><text class="text-italic" x="188.500000" y="507.000000" style="text-anchor:middle;font-size:16px;fill:#676C7E">111</text></g><g id="(eee &lt;- aaa.ccc)[0]"><marker id="mk-2510427236" markerWidth="10.000000" markerHeight="12.000000" refX="3.000000" refY="6.000000" viewBox="0.000000 0.000000 10.000000 12.000000" orient="auto" markerUnits="userSpaceOnUse"> <polygon class="connection" fill="#0D32B2" stroke-width="2" points="10.000000,0.000000 0.000000,6.000000 10.000000,12.000000" /> </marker><path d="M 188.000000 123.000000 L 188.000000 356.500000" class="connection" style="fill:none;stroke:#0D32B2;stroke-width:2;" marker-start="url(#mk-2510427236)" mask="url(#3846046650)"/><text class="text-italic" x="188.500000" y="244.000000" style="text-anchor:middle;font-size:16px;fill:#676C7E">222</text></g><mask id="3846046650" maskUnits="userSpaceOnUse" x="-100" y="-100" width="464" height="770">
<rect x="-100" y="-100" width="514" height="910" fill="white"></rect> <rect x="-100" y="-100" width="464" height="770" fill="white"></rect>
<rect x="202.000000" y="603.000000" width="23" height="21" fill="black"></rect> <rect x="177.000000" y="491.000000" width="23" height="21" fill="black"></rect>
<rect x="201.000000" y="271.000000" width="25" height="21" fill="black"></rect> <rect x="176.000000" y="228.000000" width="25" height="21" fill="black"></rect>
</mask><style type="text/css"><![CDATA[ </mask><style type="text/css"><![CDATA[
.text { .text {
font-family: "font-regular"; font-family: "font-regular";

Before

Width:  |  Height:  |  Size: 793 KiB

After

Width:  |  Height:  |  Size: 793 KiB

View file

@ -9,7 +9,7 @@
"x": 0, "x": 0,
"y": 41 "y": 41
}, },
"width": 970, "width": 738,
"height": 1480, "height": 1480,
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
@ -47,10 +47,10 @@
"id": "aa.bb", "id": "aa.bb",
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 40, "x": 20,
"y": 106 "y": 106
}, },
"width": 691, "width": 499,
"height": 1385, "height": 1385,
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
@ -88,10 +88,10 @@
"id": "aa.bb.cc", "id": "aa.bb.cc",
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 80, "x": 40,
"y": 887 "y": 887
}, },
"width": 477, "width": 325,
"height": 572, "height": 572,
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
@ -129,10 +129,10 @@
"id": "aa.bb.cc.dd", "id": "aa.bb.cc.dd",
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 120, "x": 62,
"y": 948 "y": 948
}, },
"width": 336, "width": 237,
"height": 140, "height": 140,
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
@ -170,7 +170,7 @@
"id": "aa.bb.cc.dd.ee", "id": "aa.bb.cc.dd.ee",
"type": "text", "type": "text",
"pos": { "pos": {
"x": 253, "x": 126,
"y": 1008 "y": 1008
}, },
"width": 16, "width": 16,
@ -210,7 +210,7 @@
"id": "aa.bb.cc.dd.ff", "id": "aa.bb.cc.dd.ff",
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 350, "x": 202,
"y": 985 "y": 985
}, },
"width": 57, "width": 57,
@ -251,7 +251,7 @@
"id": "aa.bb.cc.gg", "id": "aa.bb.cc.gg",
"type": "text", "type": "text",
"pos": { "pos": {
"x": 396, "x": 244,
"y": 1209 "y": 1209
}, },
"width": 17, "width": 17,
@ -291,7 +291,7 @@
"id": "aa.bb.cc.hh", "id": "aa.bb.cc.hh",
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 373, "x": 221,
"y": 1355 "y": 1355
}, },
"width": 63, "width": 63,
@ -332,10 +332,10 @@
"id": "aa.bb.ii", "id": "aa.bb.ii",
"type": "package", "type": "package",
"pos": { "pos": {
"x": 120, "x": 50,
"y": 169 "y": 169
}, },
"width": 378, "width": 236,
"height": 161, "height": 161,
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
@ -373,7 +373,7 @@
"id": "aa.bb.ii.jj", "id": "aa.bb.ii.jj",
"type": "diamond", "type": "diamond",
"pos": { "pos": {
"x": 304, "x": 148,
"y": 204 "y": 204
}, },
"width": 50, "width": 50,
@ -414,7 +414,7 @@
"id": "aa.bb.kk", "id": "aa.bb.kk",
"type": "oval", "type": "oval",
"pos": { "pos": {
"x": 607, "x": 405,
"y": 1335 "y": 1335
}, },
"width": 74, "width": 74,
@ -455,7 +455,7 @@
"id": "aa.ll", "id": "aa.ll",
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 828, "x": 606,
"y": 651 "y": 651
}, },
"width": 54, "width": 54,
@ -496,7 +496,7 @@
"id": "aa.mm", "id": "aa.mm",
"type": "cylinder", "type": "cylinder",
"pos": { "pos": {
"x": 815, "x": 593,
"y": 433 "y": 433
}, },
"width": 71, "width": 71,
@ -537,7 +537,7 @@
"id": "aa.nn", "id": "aa.nn",
"type": "text", "type": "text",
"pos": { "pos": {
"x": 781, "x": 559,
"y": 1344 "y": 1344
}, },
"width": 16, "width": 16,
@ -577,7 +577,7 @@
"id": "aa.oo", "id": "aa.oo",
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 857, "x": 635,
"y": 1321 "y": 1321
}, },
"width": 63, "width": 63,
@ -642,20 +642,20 @@
"labelPercentage": 0, "labelPercentage": 0,
"route": [ "route": [
{ {
"x": 260.75, "x": 134.25,
"y": 1029.5 "y": 1029.5
}, },
{ {
"x": 260.75, "x": 134.25,
"y": 1076.3 "y": 1076.3
}, },
{ {
"x": 287.75, "x": 156.1,
"y": 1161.9 "y": 1161.6749469214437
}, },
{ {
"x": 395.75, "x": 243.5,
"y": 1215.5 "y": 1214.3747346072187
} }
], ],
"isCurve": true, "isCurve": true,
@ -690,19 +690,19 @@
"labelPercentage": 0, "labelPercentage": 0,
"route": [ "route": [
{ {
"x": 404.5, "x": 252,
"y": 1230 "y": 1230
}, },
{ {
"x": 404.5, "x": 252,
"y": 1278.4 "y": 1278.4
}, },
{ {
"x": 404.5, "x": 252,
"y": 1303.5 "y": 1303.5
}, },
{ {
"x": 404.5, "x": 252,
"y": 1355.5 "y": 1355.5
} }
], ],
@ -738,67 +738,67 @@
"labelPercentage": 0, "labelPercentage": 0,
"route": [ "route": [
{ {
"x": 200, "x": 102,
"y": 331 "y": 331
}, },
{ {
"x": 200, "x": 102.4,
"y": 379 "y": 379
}, },
{ {
"x": 200, "x": 102.5,
"y": 414.9 "y": 414.9
}, },
{ {
"x": 200, "x": 102.5,
"y": 450.75 "y": 450.75
}, },
{ {
"x": 200, "x": 102.5,
"y": 486.6 "y": 486.6
}, },
{ {
"x": 200, "x": 102.5,
"y": 532.3 "y": 532.3
}, },
{ {
"x": 200, "x": 102.5,
"y": 565 "y": 565
}, },
{ {
"x": 200, "x": 102.5,
"y": 597.7 "y": 597.7
}, },
{ {
"x": 200, "x": 102.5,
"y": 636.1 "y": 636.1
}, },
{ {
"x": 200, "x": 102.5,
"y": 661 "y": 661
}, },
{ {
"x": 200, "x": 102.5,
"y": 685.9 "y": 685.9
}, },
{ {
"x": 200, "x": 102.5,
"y": 721.2 "y": 721.2
}, },
{ {
"x": 200, "x": 102.5,
"y": 749.25 "y": 749.25
}, },
{ {
"x": 200, "x": 102.5,
"y": 777.3 "y": 777.3
}, },
{ {
"x": 200, "x": 102.5,
"y": 874.8 "y": 874.8
}, },
{ {
"x": 200, "x": 102.5,
"y": 948 "y": 948
} }
], ],
@ -834,12 +834,12 @@
"labelPercentage": 0, "labelPercentage": 0,
"route": [ "route": [
{ {
"x": 828, "x": 605.75,
"y": 688.6624072547403 "y": 689.5313901345291
}, },
{ {
"x": 731, "x": 518.75,
"y": 739.6624072547403 "y": 741.5313901345291
} }
], ],
"animated": false, "animated": false,
@ -873,31 +873,31 @@
"labelPercentage": 0, "labelPercentage": 0,
"route": [ "route": [
{ {
"x": 815, "x": 593,
"y": 500 "y": 501
}, },
{ {
"x": 400.59999999999997, "x": 246.2,
"y": 581.2 "y": 581.4
}, },
{ {
"x": 297, "x": 159.5,
"y": 618.1 "y": 618.1
}, },
{ {
"x": 297, "x": 159.5,
"y": 643 "y": 643
}, },
{ {
"x": 297, "x": 159.5,
"y": 667.9 "y": 667.9
}, },
{ {
"x": 297, "x": 159.5,
"y": 800 "y": 800
}, },
{ {
"x": 297, "x": 159.5,
"y": 888 "y": 888
} }
], ],
@ -933,19 +933,19 @@
"labelPercentage": 0, "labelPercentage": 0,
"route": [ "route": [
{ {
"x": 853, "x": 631,
"y": 552 "y": 552
}, },
{ {
"x": 854.6, "x": 632.4,
"y": 591.6 "y": 591.6
}, },
{ {
"x": 855, "x": 632.75,
"y": 611.5 "y": 611.5
}, },
{ {
"x": 855, "x": 632.75,
"y": 651.5 "y": 651.5
} }
], ],
@ -981,12 +981,12 @@
"labelPercentage": 0, "labelPercentage": 0,
"route": [ "route": [
{ {
"x": 815, "x": 593,
"y": 500 "y": 501
}, },
{ {
"x": 731.25, "x": 519,
"y": 554.2739829231542 "y": 556.4364896073903
} }
], ],
"animated": false, "animated": false,
@ -1020,68 +1020,68 @@
"labelPercentage": 0, "labelPercentage": 0,
"route": [ "route": [
{ {
"x": 828, "x": 605.75,
"y": 691.5418410041841 "y": 692.5526315789474
}, },
{ {
"x": 562.8, "x": 376.54999999999995,
"y": 760.7083682008368 "y": 760.9105263157895
}, },
{ {
"x": 496.5, "x": 319.25,
"y": 790.1 "y": 790.1
}, },
{ {
"x": 496.5, "x": 319.25,
"y": 808.25 "y": 808.25
}, },
{ {
"x": 496.5, "x": 319.25,
"y": 826.4 "y": 826.4
}, },
{ {
"x": 496.5, "x": 319.25,
"y": 848.5 "y": 848.5
}, },
{ {
"x": 496.5, "x": 319.25,
"y": 863.5 "y": 863.5
}, },
{ {
"x": 496.5, "x": 319.25,
"y": 878.5 "y": 878.5
}, },
{ {
"x": 496.5, "x": 319.25,
"y": 905.1 "y": 905.1
}, },
{ {
"x": 496.5, "x": 319.25,
"y": 930 "y": 930
}, },
{ {
"x": 496.5, "x": 319.25,
"y": 954.9 "y": 954.9
}, },
{ {
"x": 496.5, "x": 319.25,
"y": 988.1 "y": 988.1
}, },
{ {
"x": 496.5, "x": 319.25,
"y": 1013 "y": 1013
}, },
{ {
"x": 496.5, "x": 319.25,
"y": 1037.9 "y": 1037.9
}, },
{ {
"x": 479.7, "x": 307.65,
"y": 1134.5 "y": 1133.9
}, },
{ {
"x": 412.5, "x": 261.25,
"y": 1212.5 "y": 1209.5
} }
], ],
"isCurve": true, "isCurve": true,
@ -1116,19 +1116,19 @@
"labelPercentage": 0, "labelPercentage": 0,
"route": [ "route": [
{ {
"x": 815, "x": 593,
"y": 482 "y": 481
}, },
{ {
"x": 515.8, "x": 313.4,
"y": 394.8 "y": 394.6
}, },
{ {
"x": 441, "x": 243.4,
"y": 364.6 "y": 364.6
}, },
{ {
"x": 441, "x": 243,
"y": 331 "y": 331
} }
], ],
@ -1164,20 +1164,20 @@
"labelPercentage": 0, "labelPercentage": 0,
"route": [ "route": [
{ {
"x": 401, "x": 238.75,
"y": 887.5 "y": 887.5
}, },
{ {
"x": 401, "x": 238.75,
"y": 799.9 "y": 799.9
}, },
{ {
"x": 486.4, "x": 312.15,
"y": 760.4 "y": 760.5814720812183
}, },
{ {
"x": 828, "x": 605.75,
"y": 690 "y": 690.9073604060914
} }
], ],
"isCurve": true, "isCurve": true,
@ -1212,32 +1212,32 @@
"labelPercentage": 0, "labelPercentage": 0,
"route": [ "route": [
{ {
"x": 393, "x": 215,
"y": 331 "y": 331
}, },
{ {
"x": 393, "x": 215.4,
"y": 364.6 "y": 364.6
}, },
{ {
"x": 393, "x": 215.5,
"y": 396.9 "y": 396.9
}, },
{ {
"x": 393, "x": 215.5,
"y": 432.75 "y": 432.75
}, },
{ {
"x": 393, "x": 215.5,
"y": 468.6 "y": 468.6
}, },
{ {
"x": 480, "x": 293.55,
"y": 617.1 "y": 617.0258238466147
}, },
{ {
"x": 828, "x": 605.75,
"y": 679.5 "y": 679.1291192330737
} }
], ],
"isCurve": true, "isCurve": true,

File diff suppressed because one or more lines are too long

Before

Width:  |  Height:  |  Size: 811 KiB

After

Width:  |  Height:  |  Size: 811 KiB

View file

@ -9,8 +9,8 @@
"x": 12, "x": 12,
"y": 12 "y": 12
}, },
"width": 894, "width": 694,
"height": 2412, "height": 1962,
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
"strokeWidth": 2, "strokeWidth": 2,
@ -47,11 +47,11 @@
"id": "aa.bb", "id": "aa.bb",
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 87, "x": 62,
"y": 847 "y": 762
}, },
"width": 698, "width": 548,
"height": 1397, "height": 1067,
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
"strokeWidth": 2, "strokeWidth": 2,
@ -88,11 +88,11 @@
"id": "aa.bb.cc", "id": "aa.bb.cc",
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 306, "x": 256,
"y": 1269 "y": 1089
}, },
"width": 404, "width": 304,
"height": 900, "height": 690,
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
"strokeWidth": 2, "strokeWidth": 2,
@ -129,11 +129,11 @@
"id": "aa.bb.cc.dd", "id": "aa.bb.cc.dd",
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 381, "x": 306,
"y": 1344 "y": 1139
}, },
"width": 243, "width": 193,
"height": 216, "height": 166,
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
"strokeWidth": 2, "strokeWidth": 2,
@ -170,8 +170,8 @@
"id": "aa.bb.cc.dd.ee", "id": "aa.bb.cc.dd.ee",
"type": "text", "type": "text",
"pos": { "pos": {
"x": 456, "x": 356,
"y": 1464 "y": 1234
}, },
"width": 16, "width": 16,
"height": 21, "height": 21,
@ -210,8 +210,8 @@
"id": "aa.bb.cc.dd.ff", "id": "aa.bb.cc.dd.ff",
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 492, "x": 392,
"y": 1419 "y": 1189
}, },
"width": 57, "width": 57,
"height": 66, "height": 66,
@ -251,8 +251,8 @@
"id": "aa.bb.cc.gg", "id": "aa.bb.cc.gg",
"type": "text", "type": "text",
"pos": { "pos": {
"x": 458, "x": 358,
"y": 1786 "y": 1481
}, },
"width": 17, "width": 17,
"height": 21, "height": 21,
@ -291,8 +291,8 @@
"id": "aa.bb.cc.hh", "id": "aa.bb.cc.hh",
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 435, "x": 335,
"y": 2028 "y": 1663
}, },
"width": 63, "width": 63,
"height": 66, "height": 66,
@ -332,11 +332,11 @@
"id": "aa.bb.ii", "id": "aa.bb.ii",
"type": "package", "type": "package",
"pos": { "pos": {
"x": 162, "x": 112,
"y": 922 "y": 812
}, },
"width": 200, "width": 150,
"height": 242, "height": 192,
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
"strokeWidth": 2, "strokeWidth": 2,
@ -373,8 +373,8 @@
"id": "aa.bb.ii.jj", "id": "aa.bb.ii.jj",
"type": "diamond", "type": "diamond",
"pos": { "pos": {
"x": 237, "x": 162,
"y": 997 "y": 862
}, },
"width": 50, "width": 50,
"height": 92, "height": 92,
@ -414,8 +414,8 @@
"id": "aa.bb.kk", "id": "aa.bb.kk",
"type": "oval", "type": "oval",
"pos": { "pos": {
"x": 382, "x": 282,
"y": 1006 "y": 871
}, },
"width": 74, "width": 74,
"height": 74, "height": 74,
@ -455,8 +455,8 @@
"id": "aa.ll", "id": "aa.ll",
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 495, "x": 395,
"y": 405 "y": 360
}, },
"width": 54, "width": 54,
"height": 66, "height": 66,
@ -496,8 +496,8 @@
"id": "aa.mm", "id": "aa.mm",
"type": "cylinder", "type": "cylinder",
"pos": { "pos": {
"x": 397, "x": 297,
"y": 87 "y": 62
}, },
"width": 71, "width": 71,
"height": 118, "height": 118,
@ -537,8 +537,8 @@
"id": "aa.nn", "id": "aa.nn",
"type": "text", "type": "text",
"pos": { "pos": {
"x": 488, "x": 388,
"y": 135 "y": 110
}, },
"width": 16, "width": 16,
"height": 21, "height": 21,
@ -577,8 +577,8 @@
"id": "aa.oo", "id": "aa.oo",
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 524, "x": 424,
"y": 113 "y": 88
}, },
"width": 63, "width": 63,
"height": 66, "height": 66,
@ -642,12 +642,12 @@
"labelPercentage": 0, "labelPercentage": 0,
"route": [ "route": [
{ {
"x": 464, "x": 364,
"y": 1485 "y": 1255
}, },
{ {
"x": 464, "x": 364,
"y": 1786 "y": 1481
} }
], ],
"animated": false, "animated": false,
@ -681,12 +681,12 @@
"labelPercentage": 0, "labelPercentage": 0,
"route": [ "route": [
{ {
"x": 466.8333333333333, "x": 366.83333333333337,
"y": 1807 "y": 1502
}, },
{ {
"x": 466.8333333333333, "x": 366.8333333333333,
"y": 2028 "y": 1663
} }
], ],
"animated": false, "animated": false,
@ -720,20 +720,20 @@
"labelPercentage": 0, "labelPercentage": 0,
"route": [ "route": [
{ {
"x": 295, "x": 212,
"y": 1164 "y": 1004
}, },
{ {
"x": 295.3333333333333, "x": 212,
"y": 1214 "y": 1044
}, },
{ {
"x": 456, "x": 356,
"y": 1214 "y": 1044
}, },
{ {
"x": 455.99999999999994, "x": 356,
"y": 1344 "y": 1139
} }
], ],
"animated": false, "animated": false,
@ -767,20 +767,20 @@
"labelPercentage": 0, "labelPercentage": 0,
"route": [ "route": [
{ {
"x": 505.8, "x": 405.8,
"y": 471 "y": 426
}, },
{ {
"x": 505.8, "x": 405.8,
"y": 742 "y": 667
}, },
{ {
"x": 476, "x": 376,
"y": 742 "y": 667
}, },
{ {
"x": 476, "x": 376,
"y": 847 "y": 762
} }
], ],
"animated": false, "animated": false,
@ -814,20 +814,20 @@
"labelPercentage": 0, "labelPercentage": 0,
"route": [ "route": [
{ {
"x": 440, "x": 340,
"y": 205 "y": 180
}, },
{ {
"x": 440.4, "x": 340.4,
"y": 305 "y": 270
}, },
{ {
"x": 466, "x": 366,
"y": 305 "y": 270
}, },
{ {
"x": 466, "x": 366,
"y": 1269 "y": 1089
} }
], ],
"animated": false, "animated": false,
@ -861,20 +861,20 @@
"labelPercentage": 0, "labelPercentage": 0,
"route": [ "route": [
{ {
"x": 455, "x": 355,
"y": 201 "y": 176
}, },
{ {
"x": 454.6, "x": 354.6,
"y": 255 "y": 220
}, },
{ {
"x": 522, "x": 422,
"y": 255 "y": 220
}, },
{ {
"x": 522, "x": 422,
"y": 405 "y": 360
} }
], ],
"animated": false, "animated": false,
@ -908,28 +908,28 @@
"labelPercentage": 0, "labelPercentage": 0,
"route": [ "route": [
{ {
"x": 426, "x": 326,
"y": 205 "y": 180
}, },
{ {
"x": 426.2, "x": 326.2,
"y": 355 "y": 320
}, },
{ {
"x": 439, "x": 339,
"y": 355 "y": 320
}, },
{ {
"x": 439, "x": 339,
"y": 792 "y": 717
}, },
{ {
"x": 272, "x": 197,
"y": 792 "y": 717
}, },
{ {
"x": 272, "x": 197,
"y": 847 "y": 762
} }
], ],
"animated": false, "animated": false,
@ -963,36 +963,36 @@
"labelPercentage": 0, "labelPercentage": 0,
"route": [ "route": [
{ {
"x": 516.6, "x": 416.6,
"y": 471 "y": 426
}, },
{ {
"x": 516.6, "x": 416.6,
"y": 621 "y": 566
}, },
{ {
"x": 525.3, "x": 425.3,
"y": 621 "y": 566
}, },
{ {
"x": 525.3, "x": 425.3,
"y": 742 "y": 667
}, },
{ {
"x": 634, "x": 509,
"y": 742 "y": 667
}, },
{ {
"x": 634, "x": 509,
"y": 1736 "y": 1441
}, },
{ {
"x": 469.66666666666663, "x": 369.6666666666667,
"y": 1736 "y": 1441
}, },
{ {
"x": 469.66666666666663, "x": 369.6666666666667,
"y": 1786 "y": 1481
} }
], ],
"animated": false, "animated": false,
@ -1026,20 +1026,20 @@
"labelPercentage": 0, "labelPercentage": 0,
"route": [ "route": [
{ {
"x": 412, "x": 312,
"y": 201 "y": 176
}, },
{ {
"x": 412, "x": 312,
"y": 742 "y": 667
}, },
{ {
"x": 262, "x": 187,
"y": 742 "y": 667
}, },
{ {
"x": 262, "x": 187,
"y": 922 "y": 812
} }
], ],
"animated": false, "animated": false,
@ -1073,28 +1073,28 @@
"labelPercentage": 0, "labelPercentage": 0,
"route": [ "route": [
{ {
"x": 381, "x": 306,
"y": 2169 "y": 1779
}, },
{ {
"x": 381, "x": 306,
"y": 2299 "y": 1874
}, },
{ {
"x": 795, "x": 620,
"y": 2299 "y": 1874
}, },
{ {
"x": 795, "x": 620,
"y": 571 "y": 516
}, },
{ {
"x": 527.4, "x": 427.4,
"y": 571 "y": 516
}, },
{ {
"x": 527.4, "x": 427.4,
"y": 471 "y": 426
} }
], ],
"animated": false, "animated": false,
@ -1128,28 +1128,28 @@
"labelPercentage": 0, "labelPercentage": 0,
"route": [ "route": [
{ {
"x": 229, "x": 162,
"y": 1164 "y": 1004
}, },
{ {
"x": 228.66666666666666, "x": 162,
"y": 2349 "y": 1924
}, },
{ {
"x": 822, "x": 647,
"y": 2349 "y": 1924
}, },
{ {
"x": 822, "x": 647,
"y": 521 "y": 466
}, },
{ {
"x": 538.2, "x": 438.2,
"y": 521 "y": 466
}, },
{ {
"x": 538.2, "x": 438.2,
"y": 471 "y": 426
} }
], ],
"animated": false, "animated": false,

File diff suppressed because one or more lines are too long

Before

Width:  |  Height:  |  Size: 812 KiB

After

Width:  |  Height:  |  Size: 812 KiB

View file

@ -1,379 +0,0 @@
{
"name": "",
"fontFamily": "SourceSansPro",
"shapes": [
{
"id": "a",
"type": "rectangle",
"pos": {
"x": 0,
"y": 0
},
"width": 434,
"height": 366,
"opacity": 1,
"strokeDash": 0,
"strokeWidth": 2,
"borderRadius": 0,
"fill": "#E3E9FD",
"stroke": "#0D32B2",
"shadow": false,
"3d": false,
"multiple": false,
"double-border": false,
"tooltip": "",
"link": "",
"icon": null,
"iconPosition": "",
"blend": false,
"fields": null,
"methods": null,
"columns": null,
"label": "a",
"fontSize": 28,
"fontFamily": "DEFAULT",
"language": "",
"color": "#0A0F25",
"italic": false,
"bold": false,
"underline": false,
"labelWidth": 12,
"labelHeight": 36,
"labelPosition": "INSIDE_TOP_CENTER",
"zIndex": 0,
"level": 1
},
{
"id": "a.b",
"type": "rectangle",
"pos": {
"x": 40,
"y": 50
},
"width": 354,
"height": 266,
"opacity": 1,
"strokeDash": 0,
"strokeWidth": 2,
"borderRadius": 0,
"fill": "#EDF0FD",
"stroke": "#0D32B2",
"shadow": false,
"3d": false,
"multiple": false,
"double-border": false,
"tooltip": "",
"link": "",
"icon": null,
"iconPosition": "",
"blend": false,
"fields": null,
"methods": null,
"columns": null,
"label": "b",
"fontSize": 24,
"fontFamily": "DEFAULT",
"language": "",
"color": "#0A0F25",
"italic": false,
"bold": false,
"underline": false,
"labelWidth": 12,
"labelHeight": 31,
"labelPosition": "INSIDE_TOP_CENTER",
"zIndex": 0,
"level": 2
},
{
"id": "a.b.c",
"type": "rectangle",
"pos": {
"x": 80,
"y": 100
},
"width": 274,
"height": 166,
"opacity": 1,
"strokeDash": 0,
"strokeWidth": 2,
"borderRadius": 0,
"fill": "#F7F8FE",
"stroke": "#0D32B2",
"shadow": false,
"3d": false,
"multiple": false,
"double-border": false,
"tooltip": "",
"link": "",
"icon": null,
"iconPosition": "",
"blend": false,
"fields": null,
"methods": null,
"columns": null,
"label": "c",
"fontSize": 20,
"fontFamily": "DEFAULT",
"language": "",
"color": "#0A0F25",
"italic": false,
"bold": false,
"underline": false,
"labelWidth": 9,
"labelHeight": 26,
"labelPosition": "INSIDE_TOP_CENTER",
"zIndex": 0,
"level": 3
},
{
"id": "a.b.c.d",
"type": "rectangle",
"pos": {
"x": 130,
"y": 150
},
"width": 54,
"height": 66,
"opacity": 1,
"strokeDash": 0,
"strokeWidth": 2,
"borderRadius": 0,
"fill": "#FFFFFF",
"stroke": "#0D32B2",
"shadow": false,
"3d": false,
"multiple": false,
"double-border": false,
"tooltip": "",
"link": "",
"icon": null,
"iconPosition": "",
"blend": false,
"fields": null,
"methods": null,
"columns": null,
"label": "d",
"fontSize": 16,
"fontFamily": "DEFAULT",
"language": "",
"color": "#0A0F25",
"italic": false,
"bold": true,
"underline": false,
"labelWidth": 9,
"labelHeight": 21,
"labelPosition": "INSIDE_MIDDLE_CENTER",
"zIndex": 0,
"level": 4
}
],
"connections": [
{
"id": "(a.b -> a)[0]",
"src": "a.b",
"srcArrow": "none",
"srcLabel": "",
"dst": "a",
"dstArrow": "triangle",
"dstLabel": "",
"opacity": 1,
"strokeDash": 0,
"strokeWidth": 2,
"stroke": "#0D32B2",
"label": "",
"fontSize": 16,
"fontFamily": "DEFAULT",
"language": "",
"color": "#676C7E",
"italic": true,
"bold": false,
"underline": false,
"labelWidth": 0,
"labelHeight": 0,
"labelPosition": "",
"labelPercentage": 0,
"route": [
{
"x": 184,
"y": 168.23204419889504
},
{
"x": 210.66666666666669,
"y": 153.646408839779
},
{
"x": 219,
"y": 150
},
{
"x": 221.5,
"y": 150
},
{
"x": 224,
"y": 150
},
{
"x": 227.33333333333331,
"y": 156.6
},
{
"x": 229.83333333333331,
"y": 166.5
},
{
"x": 232.33333333333334,
"y": 176.4
},
{
"x": 232.33333333333334,
"y": 189.6
},
{
"x": 229.83333333333331,
"y": 199.5
},
{
"x": 227.33333333333331,
"y": 209.4
},
{
"x": 210.66666666666669,
"y": 212.353591160221
},
{
"x": 184,
"y": 197.76795580110496
}
],
"isCurve": true,
"animated": false,
"tooltip": "",
"icon": null,
"zIndex": 0
},
{
"id": "a.(b -> b.c)[0]",
"src": "a.b",
"srcArrow": "none",
"srcLabel": "",
"dst": "a.b.c",
"dstArrow": "triangle",
"dstLabel": "",
"opacity": 1,
"strokeDash": 0,
"strokeWidth": 2,
"stroke": "#0D32B2",
"label": "",
"fontSize": 16,
"fontFamily": "DEFAULT",
"language": "",
"color": "#676C7E",
"italic": true,
"bold": false,
"underline": false,
"labelWidth": 0,
"labelHeight": 0,
"labelPosition": "",
"labelPercentage": 0,
"route": [
{
"x": 184,
"y": 172.75862068965517
},
{
"x": 232,
"y": 154.55172413793105
},
{
"x": 247,
"y": 150
},
{
"x": 251.5,
"y": 150
},
{
"x": 256,
"y": 150
},
{
"x": 262,
"y": 156.6
},
{
"x": 266.5,
"y": 166.5
},
{
"x": 271,
"y": 176.4
},
{
"x": 271,
"y": 189.6
},
{
"x": 266.5,
"y": 199.5
},
{
"x": 262,
"y": 209.4
},
{
"x": 232,
"y": 211.44827586206895
},
{
"x": 184,
"y": 193.24137931034483
}
],
"isCurve": true,
"animated": false,
"tooltip": "",
"icon": null,
"zIndex": 0
},
{
"id": "a.(b.c.d -> b)[0]",
"src": "a.b.c.d",
"srcArrow": "none",
"srcLabel": "",
"dst": "a.b",
"dstArrow": "triangle",
"dstLabel": "",
"opacity": 1,
"strokeDash": 0,
"strokeWidth": 2,
"stroke": "#0D32B2",
"label": "",
"fontSize": 16,
"fontFamily": "DEFAULT",
"language": "",
"color": "#676C7E",
"italic": true,
"bold": false,
"underline": false,
"labelWidth": 0,
"labelHeight": 0,
"labelPosition": "",
"labelPercentage": 0,
"route": [
{
"x": 183.66666666666669,
"y": 191
},
{
"x": 184,
"y": 190.83870967741936
}
],
"animated": false,
"tooltip": "",
"icon": null,
"zIndex": 0
}
]
}

File diff suppressed because one or more lines are too long

Before

Width:  |  Height:  |  Size: 650 KiB

View file

@ -1,297 +0,0 @@
{
"name": "",
"fontFamily": "SourceSansPro",
"shapes": [
{
"id": "a",
"type": "rectangle",
"pos": {
"x": 12,
"y": 12
},
"width": 514,
"height": 621,
"opacity": 1,
"strokeDash": 0,
"strokeWidth": 2,
"borderRadius": 0,
"fill": "#E3E9FD",
"stroke": "#0D32B2",
"shadow": false,
"3d": false,
"multiple": false,
"double-border": false,
"tooltip": "",
"link": "",
"icon": null,
"iconPosition": "",
"blend": false,
"fields": null,
"methods": null,
"columns": null,
"label": "a",
"fontSize": 28,
"fontFamily": "DEFAULT",
"language": "",
"color": "#0A0F25",
"italic": false,
"bold": false,
"underline": false,
"labelWidth": 12,
"labelHeight": 36,
"labelPosition": "INSIDE_TOP_CENTER",
"zIndex": 0,
"level": 1
},
{
"id": "a.b",
"type": "rectangle",
"pos": {
"x": 87,
"y": 87
},
"width": 364,
"height": 471,
"opacity": 1,
"strokeDash": 0,
"strokeWidth": 2,
"borderRadius": 0,
"fill": "#EDF0FD",
"stroke": "#0D32B2",
"shadow": false,
"3d": false,
"multiple": false,
"double-border": false,
"tooltip": "",
"link": "",
"icon": null,
"iconPosition": "",
"blend": false,
"fields": null,
"methods": null,
"columns": null,
"label": "b",
"fontSize": 24,
"fontFamily": "DEFAULT",
"language": "",
"color": "#0A0F25",
"italic": false,
"bold": false,
"underline": false,
"labelWidth": 12,
"labelHeight": 31,
"labelPosition": "INSIDE_TOP_CENTER",
"zIndex": 0,
"level": 2
},
{
"id": "a.b.c",
"type": "rectangle",
"pos": {
"x": 172,
"y": 162
},
"width": 204,
"height": 216,
"opacity": 1,
"strokeDash": 0,
"strokeWidth": 2,
"borderRadius": 0,
"fill": "#F7F8FE",
"stroke": "#0D32B2",
"shadow": false,
"3d": false,
"multiple": false,
"double-border": false,
"tooltip": "",
"link": "",
"icon": null,
"iconPosition": "",
"blend": false,
"fields": null,
"methods": null,
"columns": null,
"label": "c",
"fontSize": 20,
"fontFamily": "DEFAULT",
"language": "",
"color": "#0A0F25",
"italic": false,
"bold": false,
"underline": false,
"labelWidth": 9,
"labelHeight": 26,
"labelPosition": "INSIDE_TOP_CENTER",
"zIndex": 0,
"level": 3
},
{
"id": "a.b.c.d",
"type": "rectangle",
"pos": {
"x": 247,
"y": 237
},
"width": 54,
"height": 66,
"opacity": 1,
"strokeDash": 0,
"strokeWidth": 2,
"borderRadius": 0,
"fill": "#FFFFFF",
"stroke": "#0D32B2",
"shadow": false,
"3d": false,
"multiple": false,
"double-border": false,
"tooltip": "",
"link": "",
"icon": null,
"iconPosition": "",
"blend": false,
"fields": null,
"methods": null,
"columns": null,
"label": "d",
"fontSize": 16,
"fontFamily": "DEFAULT",
"language": "",
"color": "#0A0F25",
"italic": false,
"bold": true,
"underline": false,
"labelWidth": 9,
"labelHeight": 21,
"labelPosition": "INSIDE_MIDDLE_CENTER",
"zIndex": 0,
"level": 4
}
],
"connections": [
{
"id": "(a.b -> a)[0]",
"src": "a.b",
"srcArrow": "none",
"srcLabel": "",
"dst": "a",
"dstArrow": "triangle",
"dstLabel": "",
"opacity": 1,
"strokeDash": 0,
"strokeWidth": 2,
"stroke": "#0D32B2",
"label": "",
"fontSize": 16,
"fontFamily": "DEFAULT",
"language": "",
"color": "#676C7E",
"italic": true,
"bold": false,
"underline": false,
"labelWidth": 0,
"labelHeight": 0,
"labelPosition": "",
"labelPercentage": 0,
"route": [
{
"x": 162,
"y": 558
},
{
"x": 162,
"y": 633
}
],
"animated": false,
"tooltip": "",
"icon": null,
"zIndex": 0
},
{
"id": "a.(b -> b.c)[0]",
"src": "a.b",
"srcArrow": "none",
"srcLabel": "",
"dst": "a.b.c",
"dstArrow": "triangle",
"dstLabel": "",
"opacity": 1,
"strokeDash": 0,
"strokeWidth": 2,
"stroke": "#0D32B2",
"label": "",
"fontSize": 16,
"fontFamily": "DEFAULT",
"language": "",
"color": "#676C7E",
"italic": true,
"bold": false,
"underline": false,
"labelWidth": 0,
"labelHeight": 0,
"labelPosition": "",
"labelPercentage": 0,
"route": [
{
"x": 247,
"y": 87
},
{
"x": 247,
"y": 162
}
],
"animated": false,
"tooltip": "",
"icon": null,
"zIndex": 0
},
{
"id": "a.(b.c.d -> b)[0]",
"src": "a.b.c.d",
"srcArrow": "none",
"srcLabel": "",
"dst": "a.b",
"dstArrow": "triangle",
"dstLabel": "",
"opacity": 1,
"strokeDash": 0,
"strokeWidth": 2,
"stroke": "#0D32B2",
"label": "",
"fontSize": 16,
"fontFamily": "DEFAULT",
"language": "",
"color": "#676C7E",
"italic": true,
"bold": false,
"underline": false,
"labelWidth": 0,
"labelHeight": 0,
"labelPosition": "",
"labelPercentage": 0,
"route": [
{
"x": 274,
"y": 303
},
{
"x": 274,
"y": 433
},
{
"x": 162,
"y": 433
},
{
"x": 162,
"y": 87
}
],
"animated": false,
"tooltip": "",
"icon": null,
"zIndex": 0
}
]
}

File diff suppressed because one or more lines are too long

Before

Width:  |  Height:  |  Size: 650 KiB

View file

@ -48,7 +48,7 @@
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 12, "x": 12,
"y": 299 "y": 239
}, },
"width": 53, "width": 53,
"height": 66, "height": 66,
@ -130,7 +130,7 @@
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 85, "x": 85,
"y": 299 "y": 239
}, },
"width": 54, "width": 54,
"height": 66, "height": 66,
@ -199,7 +199,7 @@
}, },
{ {
"x": 38.5, "x": 38.5,
"y": 299 "y": 239
} }
], ],
"animated": false, "animated": false,
@ -238,7 +238,7 @@
}, },
{ {
"x": 112, "x": 112,
"y": 299 "y": 239
} }
], ],
"animated": false, "animated": false,

View file

@ -3,7 +3,7 @@
id="d2-svg" id="d2-svg"
style="background: white;" style="background: white;"
xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"
width="339" height="557" viewBox="-90 -90 339 557"><style type="text/css"> width="339" height="497" viewBox="-90 -90 339 497"><style type="text/css">
<![CDATA[ <![CDATA[
.shape { .shape {
shape-rendering: geometricPrecision; shape-rendering: geometricPrecision;
@ -39,10 +39,10 @@ width="339" height="557" viewBox="-90 -90 339 557"><style type="text/css">
svgEl.setAttribute("height", height * ratio - 16); svgEl.setAttribute("height", height * ratio - 16);
} }
}); });
]]></script><g id="a"><g class="shape" ><rect x="12" y="12" width="53" height="66" style="fill:#F7F8FE;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="38.500000" y="50.500000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">a</text></g><g id="b"><g class="shape" ><rect x="12" y="299" width="53" height="66" style="fill:#F7F8FE;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="38.500000" y="337.500000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">b</text></g><g id="c"><g class="shape" ><rect x="85" y="12" width="53" height="66" style="fill:#F7F8FE;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="111.500000" y="50.500000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">c</text></g><g id="d"><g class="shape" ><rect x="85" y="299" width="54" height="66" style="fill:#F7F8FE;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="112.000000" y="337.500000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">d</text></g><g id="(a &lt;-&gt; b)[0]"><marker id="mk-2353508688" markerWidth="24.000000" markerHeight="24.000000" refX="3.000000" refY="12.000000" viewBox="0.000000 0.000000 24.000000 24.000000" orient="auto" markerUnits="userSpaceOnUse"> <circle class="connection" fill="white" stroke="#0D32B2" stroke-width="2" cx="11.000000" cy="12.000000" r="10.000000"/> </marker><marker id="mk-3979614975" markerWidth="24.000000" markerHeight="24.000000" refX="21.000000" refY="12.000000" viewBox="0.000000 0.000000 24.000000 24.000000" orient="auto" markerUnits="userSpaceOnUse"> <circle class="connection" fill="white" stroke="#0D32B2" stroke-width="2" cx="13.000000" cy="12.000000" r="10.000000"/> </marker><path d="M 38.500000 82.000000 L 38.500000 295.000000" class="connection" style="fill:none;stroke:#0D32B2;stroke-width:2;" marker-start="url(#mk-2353508688)" marker-end="url(#mk-3979614975)" mask="url(#3906270847)"/><text class="text-italic" x="39.000000" y="194.000000" style="text-anchor:middle;font-size:16px;fill:#676C7E">circle</text></g><g id="(c &lt;-&gt; d)[0]"><marker id="mk-174437403" markerWidth="24.000000" markerHeight="24.000000" refX="3.000000" refY="12.000000" viewBox="0.000000 0.000000 24.000000 24.000000" orient="auto" markerUnits="userSpaceOnUse"> <circle class="connection" fill="#0D32B2" stroke-width="2" cx="11.000000" cy="12.000000" r="11.000000"/> </marker><marker id="mk-211976278" markerWidth="24.000000" markerHeight="24.000000" refX="21.000000" refY="12.000000" viewBox="0.000000 0.000000 24.000000 24.000000" orient="auto" markerUnits="userSpaceOnUse"> <circle class="connection" fill="#0D32B2" stroke-width="2" cx="13.000000" cy="12.000000" r="11.000000"/> </marker><path d="M 112.000000 82.000000 L 112.000000 295.000000" class="connection" style="fill:none;stroke:#0D32B2;stroke-width:2;" marker-start="url(#mk-174437403)" marker-end="url(#mk-211976278)" mask="url(#3906270847)"/><text class="text-italic" x="112.500000" y="194.000000" style="text-anchor:middle;font-size:16px;fill:#676C7E">filled-circle</text></g><mask id="3906270847" maskUnits="userSpaceOnUse" x="-100" y="-100" width="339" height="557"> ]]></script><g id="a"><g class="shape" ><rect x="12" y="12" width="53" height="66" style="fill:#F7F8FE;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="38.500000" y="50.500000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">a</text></g><g id="b"><g class="shape" ><rect x="12" y="239" width="53" height="66" style="fill:#F7F8FE;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="38.500000" y="277.500000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">b</text></g><g id="c"><g class="shape" ><rect x="85" y="12" width="53" height="66" style="fill:#F7F8FE;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="111.500000" y="50.500000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">c</text></g><g id="d"><g class="shape" ><rect x="85" y="239" width="54" height="66" style="fill:#F7F8FE;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="112.000000" y="277.500000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">d</text></g><g id="(a &lt;-&gt; b)[0]"><marker id="mk-2353508688" markerWidth="24.000000" markerHeight="24.000000" refX="3.000000" refY="12.000000" viewBox="0.000000 0.000000 24.000000 24.000000" orient="auto" markerUnits="userSpaceOnUse"> <circle class="connection" fill="white" stroke="#0D32B2" stroke-width="2" cx="11.000000" cy="12.000000" r="10.000000"/> </marker><marker id="mk-3979614975" markerWidth="24.000000" markerHeight="24.000000" refX="21.000000" refY="12.000000" viewBox="0.000000 0.000000 24.000000 24.000000" orient="auto" markerUnits="userSpaceOnUse"> <circle class="connection" fill="white" stroke="#0D32B2" stroke-width="2" cx="13.000000" cy="12.000000" r="10.000000"/> </marker><path d="M 38.500000 82.000000 L 38.500000 235.000000" class="connection" style="fill:none;stroke:#0D32B2;stroke-width:2;" marker-start="url(#mk-2353508688)" marker-end="url(#mk-3979614975)" mask="url(#4256489027)"/><text class="text-italic" x="39.000000" y="164.000000" style="text-anchor:middle;font-size:16px;fill:#676C7E">circle</text></g><g id="(c &lt;-&gt; d)[0]"><marker id="mk-174437403" markerWidth="24.000000" markerHeight="24.000000" refX="3.000000" refY="12.000000" viewBox="0.000000 0.000000 24.000000 24.000000" orient="auto" markerUnits="userSpaceOnUse"> <circle class="connection" fill="#0D32B2" stroke-width="2" cx="11.000000" cy="12.000000" r="11.000000"/> </marker><marker id="mk-211976278" markerWidth="24.000000" markerHeight="24.000000" refX="21.000000" refY="12.000000" viewBox="0.000000 0.000000 24.000000 24.000000" orient="auto" markerUnits="userSpaceOnUse"> <circle class="connection" fill="#0D32B2" stroke-width="2" cx="13.000000" cy="12.000000" r="11.000000"/> </marker><path d="M 112.000000 82.000000 L 112.000000 235.000000" class="connection" style="fill:none;stroke:#0D32B2;stroke-width:2;" marker-start="url(#mk-174437403)" marker-end="url(#mk-211976278)" mask="url(#4256489027)"/><text class="text-italic" x="112.500000" y="164.000000" style="text-anchor:middle;font-size:16px;fill:#676C7E">filled-circle</text></g><mask id="4256489027" maskUnits="userSpaceOnUse" x="-100" y="-100" width="339" height="497">
<rect x="-100" y="-100" width="339" height="557" fill="white"></rect> <rect x="-100" y="-100" width="339" height="497" fill="white"></rect>
<rect x="21.000000" y="178.000000" width="36" height="21" fill="black"></rect> <rect x="21.000000" y="148.000000" width="36" height="21" fill="black"></rect>
<rect x="76.000000" y="178.000000" width="73" height="21" fill="black"></rect> <rect x="76.000000" y="148.000000" width="73" height="21" fill="black"></rect>
</mask><style type="text/css"><![CDATA[ </mask><style type="text/css"><![CDATA[
.text-bold { .text-bold {
font-family: "font-bold"; font-family: "font-bold";

Before

Width:  |  Height:  |  Size: 470 KiB

After

Width:  |  Height:  |  Size: 470 KiB

View file

@ -153,19 +153,19 @@
"labelPercentage": 0, "labelPercentage": 0,
"route": [ "route": [
{ {
"x": 18.548192771084338, "x": 22.52409638554217,
"y": 66 "y": 66
}, },
{ {
"x": 8.909638554216867, "x": 17.704819277108435,
"y": 106 "y": 106
}, },
{ {
"x": 8.9, "x": 17.7,
"y": 126 "y": 126
}, },
{ {
"x": 18.5, "x": 22.5,
"y": 166 "y": 166
} }
], ],
@ -201,19 +201,19 @@
"labelPercentage": 0, "labelPercentage": 0,
"route": [ "route": [
{ {
"x": 18.548192771084338, "x": 22.52409638554217,
"y": 232 "y": 232
}, },
{ {
"x": 8.909638554216867, "x": 17.704819277108435,
"y": 272 "y": 272
}, },
{ {
"x": 8.9, "x": 17.7,
"y": 292 "y": 292
}, },
{ {
"x": 18.5, "x": 22.5,
"y": 332 "y": 332
} }
], ],
@ -249,19 +249,19 @@
"labelPercentage": 0, "labelPercentage": 0,
"route": [ "route": [
{ {
"x": 34.45180722891566, "x": 30.47590361445783,
"y": 332 "y": 332
}, },
{ {
"x": 44.09036144578313, "x": 35.295180722891565,
"y": 292 "y": 292
}, },
{ {
"x": 44.1, "x": 35.3,
"y": 272 "y": 272
}, },
{ {
"x": 34.5, "x": 30.5,
"y": 232 "y": 232
} }
], ],
@ -297,19 +297,19 @@
"labelPercentage": 0, "labelPercentage": 0,
"route": [ "route": [
{ {
"x": 34.45180722891566, "x": 30.47590361445783,
"y": 166 "y": 166
}, },
{ {
"x": 44.09036144578313, "x": 35.295180722891565,
"y": 126 "y": 126
}, },
{ {
"x": 44.1, "x": 35.3,
"y": 106 "y": 106
}, },
{ {
"x": 34.5, "x": 30.5,
"y": 66 "y": 66
} }
], ],

View file

@ -39,7 +39,7 @@ width="257" height="602" viewBox="-102 -102 257 602"><style type="text/css">
svgEl.setAttribute("height", height * ratio - 16); svgEl.setAttribute("height", height * ratio - 16);
} }
}); });
]]></script><g id="a"><g class="shape" ><rect x="0" y="0" width="53" height="66" style="fill:#F7F8FE;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="26.500000" y="38.500000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">a</text></g><g id="b"><g class="shape" ><rect x="0" y="166" width="53" height="66" style="fill:#F7F8FE;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="26.500000" y="204.500000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">b</text></g><g id="c"><g class="shape" ><rect x="0" y="332" width="53" height="66" style="fill:#F7F8FE;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="26.500000" y="370.500000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">c</text></g><g id="(a -&gt; b)[0]"><marker id="mk-3990223579" markerWidth="10.000000" markerHeight="12.000000" refX="7.000000" refY="6.000000" viewBox="0.000000 0.000000 10.000000 12.000000" orient="auto" markerUnits="userSpaceOnUse"> <polygon class="connection" fill="#0D32B2" stroke-width="2" points="0.000000,0.000000 10.000000,6.000000 0.000000,12.000000" /> </marker><path d="M 18.079675 67.944349 C 8.909639 106.000000 8.900000 126.000000 17.566508 162.110451" class="connection" style="fill:none;stroke:#0D32B2;stroke-width:2;" marker-end="url(#mk-3990223579)" mask="url(#168361013)"/></g><g id="(b -&gt; c)[0]"><path d="M 18.079675 233.944349 C 8.909639 272.000000 8.900000 292.000000 17.566508 328.110451" class="connection" style="fill:none;stroke:#0D32B2;stroke-width:2;" marker-end="url(#mk-3990223579)" mask="url(#168361013)"/></g><g id="(c -&gt; b)[0]"><path d="M 34.920325 330.055651 C 44.090361 292.000000 44.100000 272.000000 35.433492 235.889549" class="connection" style="fill:none;stroke:#0D32B2;stroke-width:2;" marker-end="url(#mk-3990223579)" mask="url(#168361013)"/></g><g id="(b -&gt; a)[0]"><path d="M 34.920325 164.055651 C 44.090361 126.000000 44.100000 106.000000 35.433492 69.889549" class="connection" style="fill:none;stroke:#0D32B2;stroke-width:2;" marker-end="url(#mk-3990223579)" mask="url(#168361013)"/></g><mask id="168361013" maskUnits="userSpaceOnUse" x="-100" y="-100" width="257" height="602"> ]]></script><g id="a"><g class="shape" ><rect x="0" y="0" width="53" height="66" style="fill:#F7F8FE;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="26.500000" y="38.500000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">a</text></g><g id="b"><g class="shape" ><rect x="0" y="166" width="53" height="66" style="fill:#F7F8FE;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="26.500000" y="204.500000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">b</text></g><g id="c"><g class="shape" ><rect x="0" y="332" width="53" height="66" style="fill:#F7F8FE;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="26.500000" y="370.500000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">c</text></g><g id="(a -&gt; b)[0]"><marker id="mk-3990223579" markerWidth="10.000000" markerHeight="12.000000" refX="7.000000" refY="6.000000" viewBox="0.000000 0.000000 10.000000 12.000000" orient="auto" markerUnits="userSpaceOnUse"> <polygon class="connection" fill="#0D32B2" stroke-width="2" points="0.000000,0.000000 10.000000,6.000000 0.000000,12.000000" /> </marker><path d="M 22.284863 67.985640 C 17.704819 106.000000 17.700000 126.000000 22.023419 162.028493" class="connection" style="fill:none;stroke:#0D32B2;stroke-width:2;" marker-end="url(#mk-3990223579)" mask="url(#2290454509)"/></g><g id="(b -&gt; c)[0]"><path d="M 22.284863 233.985640 C 17.704819 272.000000 17.700000 292.000000 22.023419 328.028493" class="connection" style="fill:none;stroke:#0D32B2;stroke-width:2;" marker-end="url(#mk-3990223579)" mask="url(#2290454509)"/></g><g id="(c -&gt; b)[0]"><path d="M 30.715137 330.014360 C 35.295181 292.000000 35.300000 272.000000 30.976581 235.971507" class="connection" style="fill:none;stroke:#0D32B2;stroke-width:2;" marker-end="url(#mk-3990223579)" mask="url(#2290454509)"/></g><g id="(b -&gt; a)[0]"><path d="M 30.715137 164.014360 C 35.295181 126.000000 35.300000 106.000000 30.976581 69.971507" class="connection" style="fill:none;stroke:#0D32B2;stroke-width:2;" marker-end="url(#mk-3990223579)" mask="url(#2290454509)"/></g><mask id="2290454509" maskUnits="userSpaceOnUse" x="-100" y="-100" width="257" height="602">
<rect x="-100" y="-100" width="257" height="602" fill="white"></rect> <rect x="-100" y="-100" width="257" height="602" fill="white"></rect>
</mask><style type="text/css"><![CDATA[ </mask><style type="text/css"><![CDATA[

Before

Width:  |  Height:  |  Size: 326 KiB

After

Width:  |  Height:  |  Size: 326 KiB

View file

@ -48,7 +48,7 @@
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 12, "x": 12,
"y": 178 "y": 148
}, },
"width": 53, "width": 53,
"height": 66, "height": 66,
@ -89,7 +89,7 @@
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 12, "x": 12,
"y": 344 "y": 284
}, },
"width": 53, "width": 53,
"height": 66, "height": 66,
@ -158,7 +158,7 @@
}, },
{ {
"x": 29.666666666666668, "x": 29.666666666666668,
"y": 178 "y": 148
} }
], ],
"animated": false, "animated": false,
@ -193,11 +193,11 @@
"route": [ "route": [
{ {
"x": 29.666666666666668, "x": 29.666666666666668,
"y": 244 "y": 214
}, },
{ {
"x": 29.666666666666668, "x": 29.666666666666668,
"y": 344 "y": 284
} }
], ],
"animated": false, "animated": false,
@ -232,11 +232,11 @@
"route": [ "route": [
{ {
"x": 47.333333333333336, "x": 47.333333333333336,
"y": 344 "y": 284
}, },
{ {
"x": 47.333333333333336, "x": 47.333333333333336,
"y": 244 "y": 214
} }
], ],
"animated": false, "animated": false,
@ -271,7 +271,7 @@
"route": [ "route": [
{ {
"x": 47.333333333333336, "x": 47.333333333333336,
"y": 178 "y": 148
}, },
{ {
"x": 47.333333333333336, "x": 47.333333333333336,

View file

@ -3,7 +3,7 @@
id="d2-svg" id="d2-svg"
style="background: white;" style="background: white;"
xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"
width="257" height="602" viewBox="-90 -90 257 602"><style type="text/css"> width="257" height="542" viewBox="-90 -90 257 542"><style type="text/css">
<![CDATA[ <![CDATA[
.shape { .shape {
shape-rendering: geometricPrecision; shape-rendering: geometricPrecision;
@ -39,8 +39,8 @@ width="257" height="602" viewBox="-90 -90 257 602"><style type="text/css">
svgEl.setAttribute("height", height * ratio - 16); svgEl.setAttribute("height", height * ratio - 16);
} }
}); });
]]></script><g id="a"><g class="shape" ><rect x="12" y="12" width="53" height="66" style="fill:#F7F8FE;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="38.500000" y="50.500000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">a</text></g><g id="b"><g class="shape" ><rect x="12" y="178" width="53" height="66" style="fill:#F7F8FE;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="38.500000" y="216.500000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">b</text></g><g id="c"><g class="shape" ><rect x="12" y="344" width="53" height="66" style="fill:#F7F8FE;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="38.500000" y="382.500000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">c</text></g><g id="(a -&gt; b)[0]"><marker id="mk-3990223579" markerWidth="10.000000" markerHeight="12.000000" refX="7.000000" refY="6.000000" viewBox="0.000000 0.000000 10.000000 12.000000" orient="auto" markerUnits="userSpaceOnUse"> <polygon class="connection" fill="#0D32B2" stroke-width="2" points="0.000000,0.000000 10.000000,6.000000 0.000000,12.000000" /> </marker><path d="M 29.666667 80.000000 L 29.666667 174.000000" class="connection" style="fill:none;stroke:#0D32B2;stroke-width:2;" marker-end="url(#mk-3990223579)" mask="url(#2746429845)"/></g><g id="(b -&gt; c)[0]"><path d="M 29.666667 246.000000 L 29.666667 340.000000" class="connection" style="fill:none;stroke:#0D32B2;stroke-width:2;" marker-end="url(#mk-3990223579)" mask="url(#2746429845)"/></g><g id="(c -&gt; b)[0]"><path d="M 47.333333 342.000000 L 47.333333 248.000000" class="connection" style="fill:none;stroke:#0D32B2;stroke-width:2;" marker-end="url(#mk-3990223579)" mask="url(#2746429845)"/></g><g id="(b -&gt; a)[0]"><path d="M 47.333333 176.000000 L 47.333333 82.000000" class="connection" style="fill:none;stroke:#0D32B2;stroke-width:2;" marker-end="url(#mk-3990223579)" mask="url(#2746429845)"/></g><mask id="2746429845" maskUnits="userSpaceOnUse" x="-100" y="-100" width="257" height="602"> ]]></script><g id="a"><g class="shape" ><rect x="12" y="12" width="53" height="66" style="fill:#F7F8FE;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="38.500000" y="50.500000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">a</text></g><g id="b"><g class="shape" ><rect x="12" y="148" width="53" height="66" style="fill:#F7F8FE;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="38.500000" y="186.500000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">b</text></g><g id="c"><g class="shape" ><rect x="12" y="284" width="53" height="66" style="fill:#F7F8FE;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="38.500000" y="322.500000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">c</text></g><g id="(a -&gt; b)[0]"><marker id="mk-3990223579" markerWidth="10.000000" markerHeight="12.000000" refX="7.000000" refY="6.000000" viewBox="0.000000 0.000000 10.000000 12.000000" orient="auto" markerUnits="userSpaceOnUse"> <polygon class="connection" fill="#0D32B2" stroke-width="2" points="0.000000,0.000000 10.000000,6.000000 0.000000,12.000000" /> </marker><path d="M 29.666667 80.000000 L 29.666667 144.000000" class="connection" style="fill:none;stroke:#0D32B2;stroke-width:2;" marker-end="url(#mk-3990223579)" mask="url(#1909693975)"/></g><g id="(b -&gt; c)[0]"><path d="M 29.666667 216.000000 L 29.666667 280.000000" class="connection" style="fill:none;stroke:#0D32B2;stroke-width:2;" marker-end="url(#mk-3990223579)" mask="url(#1909693975)"/></g><g id="(c -&gt; b)[0]"><path d="M 47.333333 282.000000 L 47.333333 218.000000" class="connection" style="fill:none;stroke:#0D32B2;stroke-width:2;" marker-end="url(#mk-3990223579)" mask="url(#1909693975)"/></g><g id="(b -&gt; a)[0]"><path d="M 47.333333 146.000000 L 47.333333 82.000000" class="connection" style="fill:none;stroke:#0D32B2;stroke-width:2;" marker-end="url(#mk-3990223579)" mask="url(#1909693975)"/></g><mask id="1909693975" maskUnits="userSpaceOnUse" x="-100" y="-100" width="257" height="542">
<rect x="-100" y="-100" width="257" height="602" fill="white"></rect> <rect x="-100" y="-100" width="257" height="542" fill="white"></rect>
</mask><style type="text/css"><![CDATA[ </mask><style type="text/css"><![CDATA[
.text-bold { .text-bold {

Before

Width:  |  Height:  |  Size: 326 KiB

After

Width:  |  Height:  |  Size: 326 KiB

View file

@ -7,7 +7,7 @@
"type": "code", "type": "code",
"pos": { "pos": {
"x": 12, "x": 12,
"y": 178 "y": 148
}, },
"width": 755, "width": 755,
"height": 166, "height": 166,
@ -88,7 +88,7 @@
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 362, "x": 362,
"y": 444 "y": 384
}, },
"width": 54, "width": 54,
"height": 66, "height": 66,
@ -157,7 +157,7 @@
}, },
{ {
"x": 389.5, "x": 389.5,
"y": 178 "y": 148
} }
], ],
"animated": false, "animated": false,
@ -192,11 +192,11 @@
"route": [ "route": [
{ {
"x": 389.5, "x": 389.5,
"y": 344 "y": 314
}, },
{ {
"x": 389.5, "x": 389.5,
"y": 444 "y": 384
} }
], ],
"animated": false, "animated": false,

View file

@ -3,7 +3,7 @@
id="d2-svg" id="d2-svg"
style="background: white;" style="background: white;"
xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"
width="959" height="702" viewBox="-90 -90 959 702"><style type="text/css"> width="959" height="642" viewBox="-90 -90 959 642"><style type="text/css">
<![CDATA[ <![CDATA[
.shape { .shape {
shape-rendering: geometricPrecision; shape-rendering: geometricPrecision;
@ -39,7 +39,7 @@ width="959" height="702" viewBox="-90 -90 959 702"><style type="text/css">
svgEl.setAttribute("height", height * ratio - 16); svgEl.setAttribute("height", height * ratio - 16);
} }
}); });
]]></script><g id="hey"><g class="shape" ></g><g transform="translate(12.000000 178.000000)"><rect class="shape" width="755" height="166" style="stroke: #0A0F25;fill:#ffffff" /><g transform="translate(6 6)"><text class="text-mono" x="0" y="1.000000em" xml:space="preserve"><tspan fill="#999988" class="text-mono-italic">//&#160;RegisterHash&#160;registers&#160;a&#160;function&#160;that&#160;returns&#160;a&#160;new&#160;instance&#160;of&#160;the&#160;given ]]></script><g id="hey"><g class="shape" ></g><g transform="translate(12.000000 148.000000)"><rect class="shape" width="755" height="166" style="stroke: #0A0F25;fill:#ffffff" /><g transform="translate(6 6)"><text class="text-mono" x="0" y="1.000000em" xml:space="preserve"><tspan fill="#999988" class="text-mono-italic">//&#160;RegisterHash&#160;registers&#160;a&#160;function&#160;that&#160;returns&#160;a&#160;new&#160;instance&#160;of&#160;the&#160;given
</tspan></text><text class="text-mono" x="0" y="2.000000em" xml:space="preserve"><tspan fill="#999988" class="text-mono-italic"></tspan><tspan fill="#999988" class="text-mono-italic">//&#160;hash&#160;function.&#160;This&#160;is&#160;intended&#160;to&#160;be&#160;called&#160;from&#160;the&#160;init&#160;function&#160;in </tspan></text><text class="text-mono" x="0" y="2.000000em" xml:space="preserve"><tspan fill="#999988" class="text-mono-italic"></tspan><tspan fill="#999988" class="text-mono-italic">//&#160;hash&#160;function.&#160;This&#160;is&#160;intended&#160;to&#160;be&#160;called&#160;from&#160;the&#160;init&#160;function&#160;in
</tspan></text><text class="text-mono" x="0" y="3.000000em" xml:space="preserve"><tspan fill="#999988" class="text-mono-italic"></tspan><tspan fill="#999988" class="text-mono-italic">//&#160;packages&#160;that&#160;implement&#160;hash&#160;functions. </tspan></text><text class="text-mono" x="0" y="3.000000em" xml:space="preserve"><tspan fill="#999988" class="text-mono-italic"></tspan><tspan fill="#999988" class="text-mono-italic">//&#160;packages&#160;that&#160;implement&#160;hash&#160;functions.
</tspan></text><text class="text-mono" x="0" y="4.000000em" xml:space="preserve"><tspan fill="#999988" class="text-mono-italic"></tspan><tspan fill="#000000" class="text-mono-bold">func</tspan>&#160;<tspan fill="#990000" class="text-mono-bold">RegisterHash</tspan>(h&#160;Hash,&#160;f&#160;<tspan fill="#000000" class="text-mono-bold">func</tspan>()&#160;hash.Hash)&#160;{ </tspan></text><text class="text-mono" x="0" y="4.000000em" xml:space="preserve"><tspan fill="#999988" class="text-mono-italic"></tspan><tspan fill="#000000" class="text-mono-bold">func</tspan>&#160;<tspan fill="#990000" class="text-mono-bold">RegisterHash</tspan>(h&#160;Hash,&#160;f&#160;<tspan fill="#000000" class="text-mono-bold">func</tspan>()&#160;hash.Hash)&#160;{
@ -47,8 +47,8 @@ width="959" height="702" viewBox="-90 -90 959 702"><style type="text/css">
</text><text class="text-mono" x="0" y="6.000000em" xml:space="preserve">&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;<tspan fill="#0086b3">panic</tspan>(<tspan fill="#dd1144">&quot;crypto:&#160;RegisterHash&#160;of&#160;unknown&#160;hash&#160;function&quot;</tspan>) </text><text class="text-mono" x="0" y="6.000000em" xml:space="preserve">&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;<tspan fill="#0086b3">panic</tspan>(<tspan fill="#dd1144">&quot;crypto:&#160;RegisterHash&#160;of&#160;unknown&#160;hash&#160;function&quot;</tspan>)
</text><text class="text-mono" x="0" y="7.000000em" xml:space="preserve">&#160;&#160;&#160;&#160;} </text><text class="text-mono" x="0" y="7.000000em" xml:space="preserve">&#160;&#160;&#160;&#160;}
</text><text class="text-mono" x="0" y="8.000000em" xml:space="preserve">&#160;&#160;&#160;&#160;hashes[h]&#160;=&#160;f </text><text class="text-mono" x="0" y="8.000000em" xml:space="preserve">&#160;&#160;&#160;&#160;hashes[h]&#160;=&#160;f
</text><text class="text-mono" x="0" y="9.000000em" xml:space="preserve">}</text></g></g></g><g id="x"><g class="shape" ><rect x="363" y="12" width="53" height="66" style="fill:#F7F8FE;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="389.500000" y="50.500000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">x</text></g><g id="y"><g class="shape" ><rect x="362" y="444" width="54" height="66" style="fill:#F7F8FE;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="389.000000" y="482.500000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">y</text></g><g id="(x -&gt; hey)[0]"><marker id="mk-3990223579" markerWidth="10.000000" markerHeight="12.000000" refX="7.000000" refY="6.000000" viewBox="0.000000 0.000000 10.000000 12.000000" orient="auto" markerUnits="userSpaceOnUse"> <polygon class="connection" fill="#0D32B2" stroke-width="2" points="0.000000,0.000000 10.000000,6.000000 0.000000,12.000000" /> </marker><path d="M 389.500000 80.000000 L 389.500000 174.000000" class="connection" style="fill:none;stroke:#0D32B2;stroke-width:2;" marker-end="url(#mk-3990223579)" mask="url(#2421718341)"/></g><g id="(hey -&gt; y)[0]"><path d="M 389.500000 346.000000 L 389.500000 440.000000" class="connection" style="fill:none;stroke:#0D32B2;stroke-width:2;" marker-end="url(#mk-3990223579)" mask="url(#2421718341)"/></g><mask id="2421718341" maskUnits="userSpaceOnUse" x="-100" y="-100" width="959" height="702"> </text><text class="text-mono" x="0" y="9.000000em" xml:space="preserve">}</text></g></g></g><g id="x"><g class="shape" ><rect x="363" y="12" width="53" height="66" style="fill:#F7F8FE;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="389.500000" y="50.500000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">x</text></g><g id="y"><g class="shape" ><rect x="362" y="384" width="54" height="66" style="fill:#F7F8FE;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="389.000000" y="422.500000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">y</text></g><g id="(x -&gt; hey)[0]"><marker id="mk-3990223579" markerWidth="10.000000" markerHeight="12.000000" refX="7.000000" refY="6.000000" viewBox="0.000000 0.000000 10.000000 12.000000" orient="auto" markerUnits="userSpaceOnUse"> <polygon class="connection" fill="#0D32B2" stroke-width="2" points="0.000000,0.000000 10.000000,6.000000 0.000000,12.000000" /> </marker><path d="M 389.500000 80.000000 L 389.500000 144.000000" class="connection" style="fill:none;stroke:#0D32B2;stroke-width:2;" marker-end="url(#mk-3990223579)" mask="url(#3969803046)"/></g><g id="(hey -&gt; y)[0]"><path d="M 389.500000 316.000000 L 389.500000 380.000000" class="connection" style="fill:none;stroke:#0D32B2;stroke-width:2;" marker-end="url(#mk-3990223579)" mask="url(#3969803046)"/></g><mask id="3969803046" maskUnits="userSpaceOnUse" x="-100" y="-100" width="959" height="642">
<rect x="-100" y="-100" width="959" height="702" fill="white"></rect> <rect x="-100" y="-100" width="959" height="642" fill="white"></rect>
</mask><style type="text/css"><![CDATA[ </mask><style type="text/css"><![CDATA[
.text-bold { .text-bold {

Before

Width:  |  Height:  |  Size: 673 KiB

After

Width:  |  Height:  |  Size: 673 KiB

View file

@ -453,7 +453,7 @@
"x": 0, "x": 0,
"y": 41 "y": 41
}, },
"width": 381, "width": 361,
"height": 125, "height": 125,
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
@ -491,7 +491,7 @@
"id": "find contractors.craigslist", "id": "find contractors.craigslist",
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 50, "x": 40,
"y": 70 "y": 70
}, },
"width": 110, "width": 110,
@ -532,7 +532,7 @@
"id": "find contractors.facebook", "id": "find contractors.facebook",
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 220, "x": 210,
"y": 70 "y": 70
}, },
"width": 111, "width": 111,

View file

@ -453,8 +453,8 @@
"x": 12, "x": 12,
"y": 12 "y": 12
}, },
"width": 391, "width": 341,
"height": 216, "height": 166,
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
"strokeWidth": 2, "strokeWidth": 2,
@ -491,8 +491,8 @@
"id": "find contractors.craigslist", "id": "find contractors.craigslist",
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 87, "x": 62,
"y": 87 "y": 62
}, },
"width": 110, "width": 110,
"height": 66, "height": 66,
@ -532,8 +532,8 @@
"id": "find contractors.facebook", "id": "find contractors.facebook",
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 217, "x": 192,
"y": 87 "y": 62
}, },
"width": 111, "width": 111,
"height": 66, "height": 66,
@ -622,7 +622,7 @@
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 21, "x": 21,
"y": 178 "y": 148
}, },
"width": 140, "width": 140,
"height": 66, "height": 66,
@ -691,7 +691,7 @@
}, },
{ {
"x": 91.5, "x": 91.5,
"y": 178 "y": 148
} }
], ],
"animated": false, "animated": false,
@ -751,7 +751,7 @@
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 27, "x": 27,
"y": 178 "y": 148
}, },
"width": 112, "width": 112,
"height": 66, "height": 66,
@ -820,7 +820,7 @@
}, },
{ {
"x": 83.5, "x": 83.5,
"y": 178 "y": 148
} }
], ],
"animated": false, "animated": false,
@ -880,7 +880,7 @@
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 12, "x": 12,
"y": 178 "y": 148
}, },
"width": 167, "width": 167,
"height": 66, "height": 66,
@ -949,7 +949,7 @@
}, },
{ {
"x": 95.5, "x": 95.5,
"y": 178 "y": 148
} }
], ],
"animated": false, "animated": false,

View file

@ -6,10 +6,10 @@
"id": "a", "id": "a",
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 40, "x": 21,
"y": 41 "y": 41
}, },
"width": 156, "width": 133,
"height": 125, "height": 125,
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
@ -47,7 +47,7 @@
"id": "a.b", "id": "a.b",
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 94, "x": 61,
"y": 70 "y": 70
}, },
"width": 53, "width": 53,
@ -88,10 +88,10 @@
"id": "c", "id": "c",
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 40, "x": 20,
"y": 307 "y": 307
}, },
"width": 157, "width": 134,
"height": 125, "height": 125,
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
@ -129,7 +129,7 @@
"id": "c.d", "id": "c.d",
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 93, "x": 60,
"y": 336 "y": 336
}, },
"width": 54, "width": 54,
@ -173,7 +173,7 @@
"x": 0, "x": 0,
"y": 573 "y": 573
}, },
"width": 237, "width": 174,
"height": 225, "height": 225,
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
@ -211,10 +211,10 @@
"id": "f.h", "id": "f.h",
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 40, "x": 20,
"y": 638 "y": 638
}, },
"width": 157, "width": 134,
"height": 130, "height": 130,
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
@ -252,7 +252,7 @@
"id": "f.h.g", "id": "f.h.g",
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 93, "x": 60,
"y": 670 "y": 670
}, },
"width": 54, "width": 54,
@ -317,31 +317,31 @@
"labelPercentage": 0, "labelPercentage": 0,
"route": [ "route": [
{ {
"x": 120, "x": 87,
"y": 136.5 "y": 136.5
}, },
{ {
"x": 120, "x": 87,
"y": 160.1 "y": 160.1
}, },
{ {
"x": 120, "x": 87,
"y": 176 "y": 176
}, },
{ {
"x": 120, "x": 87,
"y": 191 "y": 191
}, },
{ {
"x": 120, "x": 87,
"y": 206 "y": 206
}, },
{ {
"x": 120, "x": 87,
"y": 280.1 "y": 280.1
}, },
{ {
"x": 120, "x": 87,
"y": 336.5 "y": 336.5
} }
], ],
@ -377,43 +377,43 @@
"labelPercentage": 0, "labelPercentage": 0,
"route": [ "route": [
{ {
"x": 120, "x": 87,
"y": 402.5 "y": 402.5
}, },
{ {
"x": 120, "x": 87,
"y": 426.1 "y": 426.1
}, },
{ {
"x": 120, "x": 87,
"y": 442 "y": 442
}, },
{ {
"x": 120, "x": 87,
"y": 457 "y": 457
}, },
{ {
"x": 120, "x": 87,
"y": 472 "y": 472
}, },
{ {
"x": 120, "x": 87,
"y": 492 "y": 492
}, },
{ {
"x": 120, "x": 87,
"y": 507 "y": 507
}, },
{ {
"x": 120, "x": 87,
"y": 522 "y": 522
}, },
{ {
"x": 120, "x": 87,
"y": 599.7 "y": 599.7
}, },
{ {
"x": 120, "x": 87,
"y": 670.5 "y": 670.5
} }
], ],

View file

@ -3,7 +3,7 @@
id="d2-svg" id="d2-svg"
style="background: white;" style="background: white;"
xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"
width="441" height="1000" viewBox="-102 -100 441 1000"><style type="text/css"> width="378" height="1000" viewBox="-102 -100 378 1000"><style type="text/css">
<![CDATA[ <![CDATA[
.shape { .shape {
shape-rendering: geometricPrecision; shape-rendering: geometricPrecision;
@ -39,8 +39,8 @@ width="441" height="1000" viewBox="-102 -100 441 1000"><style type="text/css">
svgEl.setAttribute("height", height * ratio - 16); svgEl.setAttribute("height", height * ratio - 16);
} }
}); });
]]></script><g id="a"><g class="shape" ><rect x="40" y="41" width="156" height="125" style="fill:#E3E9FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text" x="118.000000" y="28.000000" style="text-anchor:middle;font-size:28px;fill:#0A0F25">a</text></g><g id="c"><g class="shape" ><rect x="40" y="307" width="157" height="125" style="fill:#E3E9FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text" x="118.500000" y="294.000000" style="text-anchor:middle;font-size:28px;fill:#0A0F25">c</text></g><g id="f"><g class="shape" ><rect x="0" y="573" width="237" height="225" style="fill:#E3E9FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text" x="118.500000" y="560.000000" style="text-anchor:middle;font-size:28px;fill:#0A0F25">f</text></g><g id="a.b"><g class="shape" ><rect x="94" y="70" width="53" height="66" style="fill:#EDF0FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="120.500000" y="108.500000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">b</text></g><g id="c.d"><g class="shape" ><rect x="93" y="336" width="54" height="66" style="fill:#EDF0FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="120.000000" y="374.500000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">d</text></g><g id="f.h"><g class="shape" ><rect x="40" y="638" width="157" height="130" style="fill:#EDF0FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text" x="118.500000" y="626.000000" style="text-anchor:middle;font-size:24px;fill:#0A0F25">h</text></g><g id="f.h.g"><g class="shape" ><rect x="93" y="670" width="54" height="66" style="fill:#F7F8FE;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="120.000000" y="708.500000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">g</text></g><g id="(a.b -&gt; c.d)[0]"><marker id="mk-3990223579" markerWidth="10.000000" markerHeight="12.000000" refX="7.000000" refY="6.000000" viewBox="0.000000 0.000000 10.000000 12.000000" orient="auto" markerUnits="userSpaceOnUse"> <polygon class="connection" fill="#0D32B2" stroke-width="2" points="0.000000,0.000000 10.000000,6.000000 0.000000,12.000000" /> </marker><path d="M 120.000000 138.500000 C 120.000000 160.100000 120.000000 176.000000 120.000000 191.000000 C 120.000000 206.000000 120.000000 280.100000 120.000000 332.500000" class="connection" style="fill:none;stroke:#0D32B2;stroke-width:2;" marker-end="url(#mk-3990223579)" mask="url(#634655928)"/></g><g id="(c.d -&gt; f.h.g)[0]"><path d="M 120.000000 404.500000 C 120.000000 426.100000 120.000000 442.000000 120.000000 457.000000 C 120.000000 472.000000 120.000000 492.000000 120.000000 507.000000 C 120.000000 522.000000 120.000000 599.700000 120.000000 666.500000" class="connection" style="fill:none;stroke:#0D32B2;stroke-width:2;" marker-end="url(#mk-3990223579)" mask="url(#634655928)"/></g><mask id="634655928" maskUnits="userSpaceOnUse" x="-100" y="-100" width="441" height="1000"> ]]></script><g id="a"><g class="shape" ><rect x="21" y="41" width="133" height="125" style="fill:#E3E9FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text" x="87.500000" y="28.000000" style="text-anchor:middle;font-size:28px;fill:#0A0F25">a</text></g><g id="c"><g class="shape" ><rect x="20" y="307" width="134" height="125" style="fill:#E3E9FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text" x="87.000000" y="294.000000" style="text-anchor:middle;font-size:28px;fill:#0A0F25">c</text></g><g id="f"><g class="shape" ><rect x="0" y="573" width="174" height="225" style="fill:#E3E9FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text" x="87.000000" y="560.000000" style="text-anchor:middle;font-size:28px;fill:#0A0F25">f</text></g><g id="a.b"><g class="shape" ><rect x="61" y="70" width="53" height="66" style="fill:#EDF0FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="87.500000" y="108.500000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">b</text></g><g id="c.d"><g class="shape" ><rect x="60" y="336" width="54" height="66" style="fill:#EDF0FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="87.000000" y="374.500000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">d</text></g><g id="f.h"><g class="shape" ><rect x="20" y="638" width="134" height="130" style="fill:#EDF0FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text" x="87.000000" y="626.000000" style="text-anchor:middle;font-size:24px;fill:#0A0F25">h</text></g><g id="f.h.g"><g class="shape" ><rect x="60" y="670" width="54" height="66" style="fill:#F7F8FE;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="87.000000" y="708.500000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">g</text></g><g id="(a.b -&gt; c.d)[0]"><marker id="mk-3990223579" markerWidth="10.000000" markerHeight="12.000000" refX="7.000000" refY="6.000000" viewBox="0.000000 0.000000 10.000000 12.000000" orient="auto" markerUnits="userSpaceOnUse"> <polygon class="connection" fill="#0D32B2" stroke-width="2" points="0.000000,0.000000 10.000000,6.000000 0.000000,12.000000" /> </marker><path d="M 87.000000 138.500000 C 87.000000 160.100000 87.000000 176.000000 87.000000 191.000000 C 87.000000 206.000000 87.000000 280.100000 87.000000 332.500000" class="connection" style="fill:none;stroke:#0D32B2;stroke-width:2;" marker-end="url(#mk-3990223579)" mask="url(#1126144118)"/></g><g id="(c.d -&gt; f.h.g)[0]"><path d="M 87.000000 404.500000 C 87.000000 426.100000 87.000000 442.000000 87.000000 457.000000 C 87.000000 472.000000 87.000000 492.000000 87.000000 507.000000 C 87.000000 522.000000 87.000000 599.700000 87.000000 666.500000" class="connection" style="fill:none;stroke:#0D32B2;stroke-width:2;" marker-end="url(#mk-3990223579)" mask="url(#1126144118)"/></g><mask id="1126144118" maskUnits="userSpaceOnUse" x="-100" y="-100" width="378" height="1000">
<rect x="-100" y="-100" width="441" height="1000" fill="white"></rect> <rect x="-100" y="-100" width="378" height="1000" fill="white"></rect>
</mask><style type="text/css"><![CDATA[ </mask><style type="text/css"><![CDATA[
.text { .text {

Before

Width:  |  Height:  |  Size: 651 KiB

After

Width:  |  Height:  |  Size: 650 KiB

Some files were not shown because too many files have changed in this diff Show more