diff --git a/ci/release/changelogs/next.md b/ci/release/changelogs/next.md
index fdef15d98..4c987851e 100644
--- a/ci/release/changelogs/next.md
+++ b/ci/release/changelogs/next.md
@@ -4,6 +4,8 @@
#### Improvements 🧹
+- Labels on parallel `dagre` connections include a gap between them [#1134](https://github.com/terrastruct/d2/pull/1134)
+
#### Bugfixes ⛑️
- Fix a bug in 32bit builds [#1115](https://github.com/terrastruct/d2/issues/1115)
diff --git a/d2layouts/d2dagrelayout/layout.go b/d2layouts/d2dagrelayout/layout.go
index dec8c164e..afa676dc0 100644
--- a/d2layouts/d2dagrelayout/layout.go
+++ b/d2layouts/d2dagrelayout/layout.go
@@ -33,6 +33,7 @@ var dagreJS string
const (
MIN_SEGMENT_LEN = 10
MIN_RANK_SEP = 60
+ EDGE_LABEL_GAP = 20
)
type ConfigurableOpts struct {
@@ -173,37 +174,30 @@ func Layout(ctx context.Context, g *d2graph.Graph, opts *ConfigurableOpts) (err
}
}
for _, edge := range g.Edges {
- // dagre doesn't work with edges to containers so we connect container edges to their first child instead (going all the way down)
- // we will chop the edge where it intersects the container border so it only shows the edge from the container
- src := edge.Src
- for len(src.Children) > 0 && src.Class == nil && src.SQLTable == nil {
- // We want to get the bottom node of sources, setting its rank higher than all children
- src = getLongestEdgeChainTail(g, src)
- }
- dst := edge.Dst
- for len(dst.Children) > 0 && dst.Class == nil && dst.SQLTable == nil {
- dst = dst.ChildrenArray[0]
+ src, dst := getEdgeEndpoints(g, edge)
- // We want to get the top node of destinations
- for _, child := range dst.ChildrenArray {
- isHead := true
- for _, e := range g.Edges {
- if inContainer(e.Src, child) != nil && inContainer(e.Dst, dst) != nil {
- isHead = false
- break
- }
- }
- if isHead {
- dst = child
- break
- }
+ width := edge.LabelDimensions.Width
+ height := edge.LabelDimensions.Height
+
+ numEdges := 0
+ for _, e := range g.Edges {
+ otherSrc, otherDst := getEdgeEndpoints(g, e)
+ if (otherSrc == src && otherDst == dst) || (otherSrc == dst && otherDst == src) {
+ numEdges++
}
}
- if edge.SrcArrow && !edge.DstArrow {
- // for `b <- a`, edge.Edge is `a -> b` and we expect this routing result
- src, dst = dst, src
+
+ // We want to leave some gap between multiple edges
+ if numEdges > 1 {
+ switch g.Root.Attributes.Direction.Value {
+ case "down", "up", "":
+ width += EDGE_LABEL_GAP
+ case "left", "right":
+ height += EDGE_LABEL_GAP
+ }
}
- loadScript += generateAddEdgeLine(src.AbsID(), dst.AbsID(), edge.AbsID(), edge.LabelDimensions.Width, edge.LabelDimensions.Height)
+
+ loadScript += generateAddEdgeLine(src.AbsID(), dst.AbsID(), edge.AbsID(), width, height)
}
if debugJS {
@@ -528,6 +522,40 @@ func Layout(ctx context.Context, g *d2graph.Graph, opts *ConfigurableOpts) (err
return nil
}
+func getEdgeEndpoints(g *d2graph.Graph, edge *d2graph.Edge) (*d2graph.Object, *d2graph.Object) {
+ // dagre doesn't work with edges to containers so we connect container edges to their first child instead (going all the way down)
+ // we will chop the edge where it intersects the container border so it only shows the edge from the container
+ src := edge.Src
+ for len(src.Children) > 0 && src.Class == nil && src.SQLTable == nil {
+ // We want to get the bottom node of sources, setting its rank higher than all children
+ src = getLongestEdgeChainTail(g, src)
+ }
+ dst := edge.Dst
+ for len(dst.Children) > 0 && dst.Class == nil && dst.SQLTable == nil {
+ dst = dst.ChildrenArray[0]
+
+ // We want to get the top node of destinations
+ for _, child := range dst.ChildrenArray {
+ isHead := true
+ for _, e := range g.Edges {
+ if inContainer(e.Src, child) != nil && inContainer(e.Dst, dst) != nil {
+ isHead = false
+ break
+ }
+ }
+ if isHead {
+ dst = child
+ break
+ }
+ }
+ }
+ if edge.SrcArrow && !edge.DstArrow {
+ // for `b <- a`, edge.Edge is `a -> b` and we expect this routing result
+ src, dst = dst, src
+ }
+ return src, dst
+}
+
func setGraphAttrs(attrs dagreOpts) string {
return fmt.Sprintf(`g.setGraph({
ranksep: %d,
diff --git a/d2renderers/d2sketch/testdata/dots-real/sketch.exp.svg b/d2renderers/d2sketch/testdata/dots-real/sketch.exp.svg
index c75d9d004..2433dad67 100644
--- a/d2renderers/d2sketch/testdata/dots-real/sketch.exp.svg
+++ b/d2renderers/d2sketch/testdata/dots-real/sketch.exp.svg
@@ -1,16 +1,16 @@
-
\ No newline at end of file
diff --git a/d2renderers/d2sketch/testdata/paper-real/sketch.exp.svg b/d2renderers/d2sketch/testdata/paper-real/sketch.exp.svg
index c61df223a..b213a3400 100644
--- a/d2renderers/d2sketch/testdata/paper-real/sketch.exp.svg
+++ b/d2renderers/d2sketch/testdata/paper-real/sketch.exp.svg
@@ -1,16 +1,16 @@
-
+ .d2-3084549463 .fill-N1{fill:#0A0F25;}
+ .d2-3084549463 .fill-N2{fill:#676C7E;}
+ .d2-3084549463 .fill-N3{fill:#9499AB;}
+ .d2-3084549463 .fill-N4{fill:#CFD2DD;}
+ .d2-3084549463 .fill-N5{fill:#DEE1EB;}
+ .d2-3084549463 .fill-N6{fill:#EEF1F8;}
+ .d2-3084549463 .fill-N7{fill:#FFFFFF;}
+ .d2-3084549463 .fill-B1{fill:#0D32B2;}
+ .d2-3084549463 .fill-B2{fill:#0D32B2;}
+ .d2-3084549463 .fill-B3{fill:#E3E9FD;}
+ .d2-3084549463 .fill-B4{fill:#E3E9FD;}
+ .d2-3084549463 .fill-B5{fill:#EDF0FD;}
+ .d2-3084549463 .fill-B6{fill:#F7F8FE;}
+ .d2-3084549463 .fill-AA2{fill:#4A6FF3;}
+ .d2-3084549463 .fill-AA4{fill:#EDF0FD;}
+ .d2-3084549463 .fill-AA5{fill:#F7F8FE;}
+ .d2-3084549463 .fill-AB4{fill:#EDF0FD;}
+ .d2-3084549463 .fill-AB5{fill:#F7F8FE;}
+ .d2-3084549463 .stroke-N1{stroke:#0A0F25;}
+ .d2-3084549463 .stroke-N2{stroke:#676C7E;}
+ .d2-3084549463 .stroke-N3{stroke:#9499AB;}
+ .d2-3084549463 .stroke-N4{stroke:#CFD2DD;}
+ .d2-3084549463 .stroke-N5{stroke:#DEE1EB;}
+ .d2-3084549463 .stroke-N6{stroke:#EEF1F8;}
+ .d2-3084549463 .stroke-N7{stroke:#FFFFFF;}
+ .d2-3084549463 .stroke-B1{stroke:#0D32B2;}
+ .d2-3084549463 .stroke-B2{stroke:#0D32B2;}
+ .d2-3084549463 .stroke-B3{stroke:#E3E9FD;}
+ .d2-3084549463 .stroke-B4{stroke:#E3E9FD;}
+ .d2-3084549463 .stroke-B5{stroke:#EDF0FD;}
+ .d2-3084549463 .stroke-B6{stroke:#F7F8FE;}
+ .d2-3084549463 .stroke-AA2{stroke:#4A6FF3;}
+ .d2-3084549463 .stroke-AA4{stroke:#EDF0FD;}
+ .d2-3084549463 .stroke-AA5{stroke:#F7F8FE;}
+ .d2-3084549463 .stroke-AB4{stroke:#EDF0FD;}
+ .d2-3084549463 .stroke-AB5{stroke:#F7F8FE;}
+ .d2-3084549463 .background-color-N1{background-color:#0A0F25;}
+ .d2-3084549463 .background-color-N2{background-color:#676C7E;}
+ .d2-3084549463 .background-color-N3{background-color:#9499AB;}
+ .d2-3084549463 .background-color-N4{background-color:#CFD2DD;}
+ .d2-3084549463 .background-color-N5{background-color:#DEE1EB;}
+ .d2-3084549463 .background-color-N6{background-color:#EEF1F8;}
+ .d2-3084549463 .background-color-N7{background-color:#FFFFFF;}
+ .d2-3084549463 .background-color-B1{background-color:#0D32B2;}
+ .d2-3084549463 .background-color-B2{background-color:#0D32B2;}
+ .d2-3084549463 .background-color-B3{background-color:#E3E9FD;}
+ .d2-3084549463 .background-color-B4{background-color:#E3E9FD;}
+ .d2-3084549463 .background-color-B5{background-color:#EDF0FD;}
+ .d2-3084549463 .background-color-B6{background-color:#F7F8FE;}
+ .d2-3084549463 .background-color-AA2{background-color:#4A6FF3;}
+ .d2-3084549463 .background-color-AA4{background-color:#EDF0FD;}
+ .d2-3084549463 .background-color-AA5{background-color:#F7F8FE;}
+ .d2-3084549463 .background-color-AB4{background-color:#EDF0FD;}
+ .d2-3084549463 .background-color-AB5{background-color:#F7F8FE;}
+ .d2-3084549463 .color-N1{color:#0A0F25;}
+ .d2-3084549463 .color-N2{color:#676C7E;}
+ .d2-3084549463 .color-N3{color:#9499AB;}
+ .d2-3084549463 .color-N4{color:#CFD2DD;}
+ .d2-3084549463 .color-N5{color:#DEE1EB;}
+ .d2-3084549463 .color-N6{color:#EEF1F8;}
+ .d2-3084549463 .color-N7{color:#FFFFFF;}
+ .d2-3084549463 .color-B1{color:#0D32B2;}
+ .d2-3084549463 .color-B2{color:#0D32B2;}
+ .d2-3084549463 .color-B3{color:#E3E9FD;}
+ .d2-3084549463 .color-B4{color:#E3E9FD;}
+ .d2-3084549463 .color-B5{color:#EDF0FD;}
+ .d2-3084549463 .color-B6{color:#F7F8FE;}
+ .d2-3084549463 .color-AA2{color:#4A6FF3;}
+ .d2-3084549463 .color-AA4{color:#EDF0FD;}
+ .d2-3084549463 .color-AA5{color:#F7F8FE;}
+ .d2-3084549463 .color-AB4{color:#EDF0FD;}
+ .d2-3084549463 .color-AB5{color:#F7F8FE;}.appendix text.text{fill:#0A0F25}.md{--color-fg-default:#0A0F25;--color-fg-muted:#676C7E;--color-fg-subtle:#9499AB;--color-canvas-default:#FFFFFF;--color-canvas-subtle:#EEF1F8;--color-border-default:#0D32B2;--color-border-muted:#0D32B2;--color-neutral-muted:#EEF1F8;--color-accent-fg:#0D32B2;--color-accent-emphasis:#0D32B2;--color-attention-subtle:#676C7E;--color-danger-fg:red;}.sketch-overlay-B1{fill:url(#streaks-darker);mix-blend-mode:lighten}.sketch-overlay-B2{fill:url(#streaks-darker);mix-blend-mode:lighten}.sketch-overlay-B3{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-B4{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-B5{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-B6{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-AA2{fill:url(#streaks-dark);mix-blend-mode:overlay}.sketch-overlay-AA4{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-AA5{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-AB4{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-AB5{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-N1{fill:url(#streaks-darker);mix-blend-mode:lighten}.sketch-overlay-N2{fill:url(#streaks-dark);mix-blend-mode:overlay}.sketch-overlay-N3{fill:url(#streaks-normal);mix-blend-mode:color-burn}.sketch-overlay-N4{fill:url(#streaks-normal);mix-blend-mode:color-burn}.sketch-overlay-N5{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-N6{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-N7{fill:url(#streaks-bright);mix-blend-mode:darken}.light-code{display: block}.dark-code{display: none}]]>
@@ -1205,9 +1205,9 @@
-NETWORKCELL TOWERSATELLITESTRANSMITTER SEND SEND SEND
-
-
-
-
+NETWORKCELL TOWERSATELLITESTRANSMITTER SEND SEND SEND
+
+
+
+
\ No newline at end of file
diff --git a/d2renderers/d2sketch/testdata/terminal/sketch.exp.svg b/d2renderers/d2sketch/testdata/terminal/sketch.exp.svg
index 167aac474..4459c8a37 100644
--- a/d2renderers/d2sketch/testdata/terminal/sketch.exp.svg
+++ b/d2renderers/d2sketch/testdata/terminal/sketch.exp.svg
@@ -1,16 +1,16 @@
-
+ .d2-457017616 .fill-N1{fill:#000410;}
+ .d2-457017616 .fill-N2{fill:#0000B8;}
+ .d2-457017616 .fill-N3{fill:#9499AB;}
+ .d2-457017616 .fill-N4{fill:#CFD2DD;}
+ .d2-457017616 .fill-N5{fill:#C3DEF3;}
+ .d2-457017616 .fill-N6{fill:#EEF1F8;}
+ .d2-457017616 .fill-N7{fill:#FFFFFF;}
+ .d2-457017616 .fill-B1{fill:#000410;}
+ .d2-457017616 .fill-B2{fill:#0000E4;}
+ .d2-457017616 .fill-B3{fill:#5AA4DC;}
+ .d2-457017616 .fill-B4{fill:#E7E9EE;}
+ .d2-457017616 .fill-B5{fill:#F5F6F9;}
+ .d2-457017616 .fill-B6{fill:#FFFFFF;}
+ .d2-457017616 .fill-AA2{fill:#008566;}
+ .d2-457017616 .fill-AA4{fill:#45BBA5;}
+ .d2-457017616 .fill-AA5{fill:#7ACCBD;}
+ .d2-457017616 .fill-AB4{fill:#F1C759;}
+ .d2-457017616 .fill-AB5{fill:#F9E088;}
+ .d2-457017616 .stroke-N1{stroke:#000410;}
+ .d2-457017616 .stroke-N2{stroke:#0000B8;}
+ .d2-457017616 .stroke-N3{stroke:#9499AB;}
+ .d2-457017616 .stroke-N4{stroke:#CFD2DD;}
+ .d2-457017616 .stroke-N5{stroke:#C3DEF3;}
+ .d2-457017616 .stroke-N6{stroke:#EEF1F8;}
+ .d2-457017616 .stroke-N7{stroke:#FFFFFF;}
+ .d2-457017616 .stroke-B1{stroke:#000410;}
+ .d2-457017616 .stroke-B2{stroke:#0000E4;}
+ .d2-457017616 .stroke-B3{stroke:#5AA4DC;}
+ .d2-457017616 .stroke-B4{stroke:#E7E9EE;}
+ .d2-457017616 .stroke-B5{stroke:#F5F6F9;}
+ .d2-457017616 .stroke-B6{stroke:#FFFFFF;}
+ .d2-457017616 .stroke-AA2{stroke:#008566;}
+ .d2-457017616 .stroke-AA4{stroke:#45BBA5;}
+ .d2-457017616 .stroke-AA5{stroke:#7ACCBD;}
+ .d2-457017616 .stroke-AB4{stroke:#F1C759;}
+ .d2-457017616 .stroke-AB5{stroke:#F9E088;}
+ .d2-457017616 .background-color-N1{background-color:#000410;}
+ .d2-457017616 .background-color-N2{background-color:#0000B8;}
+ .d2-457017616 .background-color-N3{background-color:#9499AB;}
+ .d2-457017616 .background-color-N4{background-color:#CFD2DD;}
+ .d2-457017616 .background-color-N5{background-color:#C3DEF3;}
+ .d2-457017616 .background-color-N6{background-color:#EEF1F8;}
+ .d2-457017616 .background-color-N7{background-color:#FFFFFF;}
+ .d2-457017616 .background-color-B1{background-color:#000410;}
+ .d2-457017616 .background-color-B2{background-color:#0000E4;}
+ .d2-457017616 .background-color-B3{background-color:#5AA4DC;}
+ .d2-457017616 .background-color-B4{background-color:#E7E9EE;}
+ .d2-457017616 .background-color-B5{background-color:#F5F6F9;}
+ .d2-457017616 .background-color-B6{background-color:#FFFFFF;}
+ .d2-457017616 .background-color-AA2{background-color:#008566;}
+ .d2-457017616 .background-color-AA4{background-color:#45BBA5;}
+ .d2-457017616 .background-color-AA5{background-color:#7ACCBD;}
+ .d2-457017616 .background-color-AB4{background-color:#F1C759;}
+ .d2-457017616 .background-color-AB5{background-color:#F9E088;}
+ .d2-457017616 .color-N1{color:#000410;}
+ .d2-457017616 .color-N2{color:#0000B8;}
+ .d2-457017616 .color-N3{color:#9499AB;}
+ .d2-457017616 .color-N4{color:#CFD2DD;}
+ .d2-457017616 .color-N5{color:#C3DEF3;}
+ .d2-457017616 .color-N6{color:#EEF1F8;}
+ .d2-457017616 .color-N7{color:#FFFFFF;}
+ .d2-457017616 .color-B1{color:#000410;}
+ .d2-457017616 .color-B2{color:#0000E4;}
+ .d2-457017616 .color-B3{color:#5AA4DC;}
+ .d2-457017616 .color-B4{color:#E7E9EE;}
+ .d2-457017616 .color-B5{color:#F5F6F9;}
+ .d2-457017616 .color-B6{color:#FFFFFF;}
+ .d2-457017616 .color-AA2{color:#008566;}
+ .d2-457017616 .color-AA4{color:#45BBA5;}
+ .d2-457017616 .color-AA5{color:#7ACCBD;}
+ .d2-457017616 .color-AB4{color:#F1C759;}
+ .d2-457017616 .color-AB5{color:#F9E088;}.appendix text.text{fill:#000410}.md{--color-fg-default:#000410;--color-fg-muted:#0000B8;--color-fg-subtle:#9499AB;--color-canvas-default:#FFFFFF;--color-canvas-subtle:#EEF1F8;--color-border-default:#000410;--color-border-muted:#0000E4;--color-neutral-muted:#EEF1F8;--color-accent-fg:#0000E4;--color-accent-emphasis:#0000E4;--color-attention-subtle:#0000B8;--color-danger-fg:red;}.sketch-overlay-B1{fill:url(#streaks-darker);mix-blend-mode:lighten}.sketch-overlay-B2{fill:url(#streaks-darker);mix-blend-mode:lighten}.sketch-overlay-B3{fill:url(#streaks-normal);mix-blend-mode:color-burn}.sketch-overlay-B4{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-B5{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-B6{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-AA2{fill:url(#streaks-dark);mix-blend-mode:overlay}.sketch-overlay-AA4{fill:url(#streaks-normal);mix-blend-mode:color-burn}.sketch-overlay-AA5{fill:url(#streaks-normal);mix-blend-mode:color-burn}.sketch-overlay-AB4{fill:url(#streaks-normal);mix-blend-mode:color-burn}.sketch-overlay-AB5{fill:url(#streaks-normal);mix-blend-mode:color-burn}.sketch-overlay-N1{fill:url(#streaks-darker);mix-blend-mode:lighten}.sketch-overlay-N2{fill:url(#streaks-darker);mix-blend-mode:lighten}.sketch-overlay-N3{fill:url(#streaks-normal);mix-blend-mode:color-burn}.sketch-overlay-N4{fill:url(#streaks-normal);mix-blend-mode:color-burn}.sketch-overlay-N5{fill:url(#streaks-normal);mix-blend-mode:color-burn}.sketch-overlay-N6{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-N7{fill:url(#streaks-bright);mix-blend-mode:darken}.light-code{display: block}.dark-code{display: none}]]>
@@ -137,14 +137,14 @@
-NETWORKUSERAPI SERVERLOGSCELL TOWERONLINE PORTALDATA PROCESSORSATELLITESTRANSMITTERUISTORAGE SEND SEND SEND PHONE LOGS MAKE CALL ACCESS DISPLAY PERSIST
-
-
-
-
-
-
+NETWORKUSERAPI SERVERLOGSCELL TOWERONLINE PORTALDATA PROCESSORSATELLITESTRANSMITTERUISTORAGE SEND SEND SEND PHONE LOGS MAKE CALL ACCESS DISPLAY PERSIST
+
+
+
+
+
+
-
-
+
+
\ No newline at end of file
diff --git a/e2etests-cli/testdata/TestCLI_E2E/internal_linked_pdf.exp.pdf b/e2etests-cli/testdata/TestCLI_E2E/internal_linked_pdf.exp.pdf
index 463c4cc7a..23628020d 100644
Binary files a/e2etests-cli/testdata/TestCLI_E2E/internal_linked_pdf.exp.pdf and b/e2etests-cli/testdata/TestCLI_E2E/internal_linked_pdf.exp.pdf differ
diff --git a/e2etests/stable_test.go b/e2etests/stable_test.go
index 521d4c5e4..14d123267 100644
--- a/e2etests/stable_test.go
+++ b/e2etests/stable_test.go
@@ -143,6 +143,12 @@ logs: { shape: page; style.multiple: true }
network.data processor -> api server
`,
},
+ {
+ name: "edge-label-overflow",
+ script: `student -> committee chair: Apply for appeal
+student <- committee chair: Deny. Need more information
+committee chair -> committee: Accept appeal`,
+ },
{
name: "mono-edge",
script: `direction: right
diff --git a/e2etests/testdata/patterns/real-lines/dagre/board.exp.json b/e2etests/testdata/patterns/real-lines/dagre/board.exp.json
index 82f61f9b5..40986c0a6 100644
--- a/e2etests/testdata/patterns/real-lines/dagre/board.exp.json
+++ b/e2etests/testdata/patterns/real-lines/dagre/board.exp.json
@@ -10,7 +10,7 @@
"x": 0,
"y": 41
},
- "width": 334,
+ "width": 360,
"height": 640,
"opacity": 1,
"strokeDash": 0,
@@ -52,7 +52,7 @@
"x": 20,
"y": 106
},
- "width": 294,
+ "width": 320,
"height": 545,
"opacity": 1,
"strokeDash": 0,
@@ -91,7 +91,7 @@
"id": "NETWORK.CELL TOWER.satellites",
"type": "stored_data",
"pos": {
- "x": 87,
+ "x": 100,
"y": 195
},
"width": 161,
@@ -132,7 +132,7 @@
"id": "NETWORK.CELL TOWER.transmitter",
"type": "rectangle",
"pos": {
- "x": 92,
+ "x": 105,
"y": 496
},
"width": 151,
@@ -173,7 +173,7 @@
"id": "costumes",
"type": "sql_table",
"pos": {
- "x": 374,
+ "x": 401,
"y": 100
},
"width": 311,
@@ -330,7 +330,7 @@
"id": "monsters",
"type": "sql_table",
"pos": {
- "x": 374,
+ "x": 401,
"y": 401
},
"width": 311,
@@ -512,19 +512,19 @@
"labelPercentage": 0,
"route": [
{
- "x": 151,
+ "x": 163,
"y": 262
},
{
- "x": 108,
+ "x": 114.4,
"y": 355.6
},
{
- "x": 108.05,
+ "x": 114.45,
"y": 402.6
},
{
- "x": 151.25,
+ "x": 163.25,
"y": 497
}
],
@@ -561,19 +561,19 @@
"labelPercentage": 0,
"route": [
{
- "x": 167,
+ "x": 180,
"y": 262
},
{
- "x": 167,
+ "x": 180.2,
"y": 355.6
},
{
- "x": 167,
+ "x": 180.25,
"y": 402.6
},
{
- "x": 167,
+ "x": 180.25,
"y": 497
}
],
@@ -610,19 +610,19 @@
"labelPercentage": 0,
"route": [
{
- "x": 183,
+ "x": 198,
"y": 262
},
{
- "x": 226,
+ "x": 246.2,
"y": 355.6
},
{
- "x": 225.95,
+ "x": 246.05,
"y": 402.6
},
{
- "x": 182.75,
+ "x": 197.25,
"y": 497
}
],
@@ -659,19 +659,19 @@
"labelPercentage": 0,
"route": [
{
- "x": 529.5,
+ "x": 556,
"y": 280
},
{
- "x": 529.5,
+ "x": 556,
"y": 328.4
},
{
- "x": 529.5,
+ "x": 556,
"y": 352.7
},
{
- "x": 529.5,
+ "x": 556,
"y": 401.5
}
],
diff --git a/e2etests/testdata/patterns/real-lines/dagre/sketch.exp.svg b/e2etests/testdata/patterns/real-lines/dagre/sketch.exp.svg
index 6508e7c12..2ca214a94 100644
--- a/e2etests/testdata/patterns/real-lines/dagre/sketch.exp.svg
+++ b/e2etests/testdata/patterns/real-lines/dagre/sketch.exp.svg
@@ -1,23 +1,23 @@
-Kubernetesopensvck8s-master1k8s-master2k8s-master3k8s-worker1k8s-worker2k8s-worker3VM1VM2 keycloakheptapodharborvault
-
-
-
-
-
+ .d2-3464567729 .fill-N1{fill:#0A0F25;}
+ .d2-3464567729 .fill-N2{fill:#676C7E;}
+ .d2-3464567729 .fill-N3{fill:#9499AB;}
+ .d2-3464567729 .fill-N4{fill:#CFD2DD;}
+ .d2-3464567729 .fill-N5{fill:#DEE1EB;}
+ .d2-3464567729 .fill-N6{fill:#EEF1F8;}
+ .d2-3464567729 .fill-N7{fill:#FFFFFF;}
+ .d2-3464567729 .fill-B1{fill:#0D32B2;}
+ .d2-3464567729 .fill-B2{fill:#0D32B2;}
+ .d2-3464567729 .fill-B3{fill:#E3E9FD;}
+ .d2-3464567729 .fill-B4{fill:#E3E9FD;}
+ .d2-3464567729 .fill-B5{fill:#EDF0FD;}
+ .d2-3464567729 .fill-B6{fill:#F7F8FE;}
+ .d2-3464567729 .fill-AA2{fill:#4A6FF3;}
+ .d2-3464567729 .fill-AA4{fill:#EDF0FD;}
+ .d2-3464567729 .fill-AA5{fill:#F7F8FE;}
+ .d2-3464567729 .fill-AB4{fill:#EDF0FD;}
+ .d2-3464567729 .fill-AB5{fill:#F7F8FE;}
+ .d2-3464567729 .stroke-N1{stroke:#0A0F25;}
+ .d2-3464567729 .stroke-N2{stroke:#676C7E;}
+ .d2-3464567729 .stroke-N3{stroke:#9499AB;}
+ .d2-3464567729 .stroke-N4{stroke:#CFD2DD;}
+ .d2-3464567729 .stroke-N5{stroke:#DEE1EB;}
+ .d2-3464567729 .stroke-N6{stroke:#EEF1F8;}
+ .d2-3464567729 .stroke-N7{stroke:#FFFFFF;}
+ .d2-3464567729 .stroke-B1{stroke:#0D32B2;}
+ .d2-3464567729 .stroke-B2{stroke:#0D32B2;}
+ .d2-3464567729 .stroke-B3{stroke:#E3E9FD;}
+ .d2-3464567729 .stroke-B4{stroke:#E3E9FD;}
+ .d2-3464567729 .stroke-B5{stroke:#EDF0FD;}
+ .d2-3464567729 .stroke-B6{stroke:#F7F8FE;}
+ .d2-3464567729 .stroke-AA2{stroke:#4A6FF3;}
+ .d2-3464567729 .stroke-AA4{stroke:#EDF0FD;}
+ .d2-3464567729 .stroke-AA5{stroke:#F7F8FE;}
+ .d2-3464567729 .stroke-AB4{stroke:#EDF0FD;}
+ .d2-3464567729 .stroke-AB5{stroke:#F7F8FE;}
+ .d2-3464567729 .background-color-N1{background-color:#0A0F25;}
+ .d2-3464567729 .background-color-N2{background-color:#676C7E;}
+ .d2-3464567729 .background-color-N3{background-color:#9499AB;}
+ .d2-3464567729 .background-color-N4{background-color:#CFD2DD;}
+ .d2-3464567729 .background-color-N5{background-color:#DEE1EB;}
+ .d2-3464567729 .background-color-N6{background-color:#EEF1F8;}
+ .d2-3464567729 .background-color-N7{background-color:#FFFFFF;}
+ .d2-3464567729 .background-color-B1{background-color:#0D32B2;}
+ .d2-3464567729 .background-color-B2{background-color:#0D32B2;}
+ .d2-3464567729 .background-color-B3{background-color:#E3E9FD;}
+ .d2-3464567729 .background-color-B4{background-color:#E3E9FD;}
+ .d2-3464567729 .background-color-B5{background-color:#EDF0FD;}
+ .d2-3464567729 .background-color-B6{background-color:#F7F8FE;}
+ .d2-3464567729 .background-color-AA2{background-color:#4A6FF3;}
+ .d2-3464567729 .background-color-AA4{background-color:#EDF0FD;}
+ .d2-3464567729 .background-color-AA5{background-color:#F7F8FE;}
+ .d2-3464567729 .background-color-AB4{background-color:#EDF0FD;}
+ .d2-3464567729 .background-color-AB5{background-color:#F7F8FE;}
+ .d2-3464567729 .color-N1{color:#0A0F25;}
+ .d2-3464567729 .color-N2{color:#676C7E;}
+ .d2-3464567729 .color-N3{color:#9499AB;}
+ .d2-3464567729 .color-N4{color:#CFD2DD;}
+ .d2-3464567729 .color-N5{color:#DEE1EB;}
+ .d2-3464567729 .color-N6{color:#EEF1F8;}
+ .d2-3464567729 .color-N7{color:#FFFFFF;}
+ .d2-3464567729 .color-B1{color:#0D32B2;}
+ .d2-3464567729 .color-B2{color:#0D32B2;}
+ .d2-3464567729 .color-B3{color:#E3E9FD;}
+ .d2-3464567729 .color-B4{color:#E3E9FD;}
+ .d2-3464567729 .color-B5{color:#EDF0FD;}
+ .d2-3464567729 .color-B6{color:#F7F8FE;}
+ .d2-3464567729 .color-AA2{color:#4A6FF3;}
+ .d2-3464567729 .color-AA4{color:#EDF0FD;}
+ .d2-3464567729 .color-AA5{color:#F7F8FE;}
+ .d2-3464567729 .color-AB4{color:#EDF0FD;}
+ .d2-3464567729 .color-AB5{color:#F7F8FE;}.appendix text.text{fill:#0A0F25}.md{--color-fg-default:#0A0F25;--color-fg-muted:#676C7E;--color-fg-subtle:#9499AB;--color-canvas-default:#FFFFFF;--color-canvas-subtle:#EEF1F8;--color-border-default:#0D32B2;--color-border-muted:#0D32B2;--color-neutral-muted:#EEF1F8;--color-accent-fg:#0D32B2;--color-accent-emphasis:#0D32B2;--color-attention-subtle:#676C7E;--color-danger-fg:red;}.sketch-overlay-B1{fill:url(#streaks-darker);mix-blend-mode:lighten}.sketch-overlay-B2{fill:url(#streaks-darker);mix-blend-mode:lighten}.sketch-overlay-B3{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-B4{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-B5{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-B6{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-AA2{fill:url(#streaks-dark);mix-blend-mode:overlay}.sketch-overlay-AA4{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-AA5{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-AB4{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-AB5{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-N1{fill:url(#streaks-darker);mix-blend-mode:lighten}.sketch-overlay-N2{fill:url(#streaks-dark);mix-blend-mode:overlay}.sketch-overlay-N3{fill:url(#streaks-normal);mix-blend-mode:color-burn}.sketch-overlay-N4{fill:url(#streaks-normal);mix-blend-mode:color-burn}.sketch-overlay-N5{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-N6{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-N7{fill:url(#streaks-bright);mix-blend-mode:darken}.light-code{display: block}.dark-code{display: none}]]>Kubernetesopensvck8s-master1k8s-master2k8s-master3k8s-worker1k8s-worker2k8s-worker3VM1VM2 keycloakheptapodharborvault
+
+
+
+
+
\ No newline at end of file
diff --git a/e2etests/testdata/stable/chaos2/dagre/board.exp.json b/e2etests/testdata/stable/chaos2/dagre/board.exp.json
index 1fb61555f..216ed84ab 100644
--- a/e2etests/testdata/stable/chaos2/dagre/board.exp.json
+++ b/e2etests/testdata/stable/chaos2/dagre/board.exp.json
@@ -10,7 +10,7 @@
"x": 0,
"y": 41
},
- "width": 806,
+ "width": 834,
"height": 1314,
"opacity": 1,
"strokeDash": 0,
@@ -51,7 +51,7 @@
"x": 20,
"y": 106
},
- "width": 567,
+ "width": 595,
"height": 1219,
"opacity": 1,
"strokeDash": 0,
@@ -92,7 +92,7 @@
"x": 40,
"y": 721
},
- "width": 393,
+ "width": 421,
"height": 572,
"opacity": 1,
"strokeDash": 0,
@@ -252,7 +252,7 @@
"id": "aa.bb.cc.gg",
"type": "text",
"pos": {
- "x": 190,
+ "x": 187,
"y": 1043
},
"width": 17,
@@ -292,7 +292,7 @@
"id": "aa.bb.cc.hh",
"type": "rectangle",
"pos": {
- "x": 324,
+ "x": 334,
"y": 1189
},
"width": 63,
@@ -336,7 +336,7 @@
"x": 52,
"y": 169
},
- "width": 469,
+ "width": 496,
"height": 161,
"opacity": 1,
"strokeDash": 0,
@@ -374,7 +374,7 @@
"id": "aa.bb.ii.jj",
"type": "diamond",
"pos": {
- "x": 431,
+ "x": 458,
"y": 204
},
"width": 50,
@@ -415,7 +415,7 @@
"id": "aa.bb.kk",
"type": "oval",
"pos": {
- "x": 474,
+ "x": 501,
"y": 1169
},
"width": 74,
@@ -456,7 +456,7 @@
"id": "aa.ll",
"type": "rectangle",
"pos": {
- "x": 670,
+ "x": 698,
"y": 772
},
"width": 54,
@@ -497,7 +497,7 @@
"id": "aa.mm",
"type": "cylinder",
"pos": {
- "x": 662,
+ "x": 689,
"y": 433
},
"width": 71,
@@ -538,7 +538,7 @@
"id": "aa.nn",
"type": "text",
"pos": {
- "x": 628,
+ "x": 655,
"y": 1178
},
"width": 16,
@@ -578,7 +578,7 @@
"id": "aa.oo",
"type": "rectangle",
"pos": {
- "x": 704,
+ "x": 731,
"y": 1155
},
"width": 63,
@@ -652,12 +652,12 @@
"y": 910.3
},
{
- "x": 132.35,
- "y": 995.1959501557633
+ "x": 131.8,
+ "y": 995.1
},
{
- "x": 189.75,
- "y": 1045.9797507788162
+ "x": 187,
+ "y": 1045.5
}
],
"isCurve": true,
@@ -693,20 +693,20 @@
"labelPercentage": 0,
"route": [
{
- "x": 198.25,
+ "x": 195.5,
"y": 1064
},
{
- "x": 198.25,
+ "x": 195.5,
"y": 1112.4
},
{
- "x": 223.45,
- "y": 1140.1
+ "x": 223.3,
+ "y": 1140.3
},
{
- "x": 324.25,
- "y": 1202.5
+ "x": 334.5,
+ "y": 1203.5
}
],
"isCurve": true,
@@ -815,12 +815,12 @@
"labelPercentage": 0,
"route": [
{
- "x": 670.25,
- "y": 811.7993675333802
+ "x": 697.5,
+ "y": 811.4285714285714
},
{
- "x": 587.25,
- "y": 866.7993675333802
+ "x": 614.5,
+ "y": 865.4285714285714
}
],
"animated": false,
@@ -855,12 +855,12 @@
"labelPercentage": 0,
"route": [
{
- "x": 662,
- "y": 501
+ "x": 689,
+ "y": 500
},
{
- "x": 284.79999999999995,
- "y": 589.8
+ "x": 290.2,
+ "y": 589.6
},
{
"x": 190.5,
@@ -904,31 +904,31 @@
"labelPercentage": 0,
"route": [
{
- "x": 697,
+ "x": 725,
"y": 552
},
{
- "x": 697.2,
+ "x": 724.6,
"y": 600
},
{
- "x": 697.25,
+ "x": 724.5,
"y": 624.1
},
{
- "x": 697.25,
+ "x": 724.5,
"y": 642.25
},
{
- "x": 697.25,
+ "x": 724.5,
"y": 660.4
},
{
- "x": 697.25,
+ "x": 724.5,
"y": 732.5
},
{
- "x": 697.25,
+ "x": 724.5,
"y": 772.5
}
],
@@ -965,12 +965,12 @@
"labelPercentage": 0,
"route": [
{
- "x": 662,
+ "x": 689,
"y": 505
},
{
- "x": 587.75,
- "y": 568.4633307868602
+ "x": 615,
+ "y": 566.9955817378498
}
],
"animated": false,
@@ -1005,19 +1005,19 @@
"labelPercentage": 0,
"route": [
{
- "x": 670.25,
- "y": 811.1842105263158
+ "x": 697.5,
+ "y": 810.8167259786477
},
{
- "x": 376.45,
- "y": 873.0368421052632
+ "x": 381.9,
+ "y": 872.9633451957295
},
{
- "x": 283.8,
+ "x": 283.2,
"y": 968.7
},
{
- "x": 207,
+ "x": 204,
"y": 1047.5
}
],
@@ -1054,19 +1054,19 @@
"labelPercentage": 0,
"route": [
{
- "x": 662,
+ "x": 689,
"y": 473
},
{
- "x": 517.8,
+ "x": 545,
"y": 393
},
{
- "x": 481.8,
+ "x": 509,
"y": 364.6
},
{
- "x": 482,
+ "x": 509,
"y": 331
}
],
@@ -1103,12 +1103,12 @@
"labelPercentage": 0,
"route": [
{
- "x": 434,
+ "x": 461,
"y": 896.5
},
{
- "x": 670,
- "y": 813.5
+ "x": 697.5,
+ "y": 812.9328358208955
}
],
"animated": false,
@@ -1143,56 +1143,56 @@
"labelPercentage": 0,
"route": [
{
- "x": 454,
+ "x": 481,
"y": 331
},
{
- "x": 453.8,
+ "x": 481,
"y": 364.6
},
{
- "x": 453.75,
+ "x": 481,
"y": 396.9
},
{
- "x": 453.75,
+ "x": 481,
"y": 432.75
},
{
- "x": 453.75,
+ "x": 481,
"y": 468.6
},
{
- "x": 453.75,
+ "x": 481,
"y": 516.4
},
{
- "x": 453.75,
+ "x": 481,
"y": 552.25
},
{
- "x": 453.75,
+ "x": 481,
"y": 588.1
},
{
- "x": 453.75,
+ "x": 481,
"y": 624.1
},
{
- "x": 453.75,
+ "x": 481,
"y": 642.25
},
{
- "x": 453.75,
+ "x": 481,
"y": 660.4
},
{
- "x": 496.95,
- "y": 737.3
+ "x": 524.3,
+ "y": 737.2593429158111
},
{
- "x": 669.75,
- "y": 796.5
+ "x": 697.5,
+ "y": 796.2967145790554
}
],
"isCurve": true,
diff --git a/e2etests/testdata/stable/chaos2/dagre/sketch.exp.svg b/e2etests/testdata/stable/chaos2/dagre/sketch.exp.svg
index 2580cdbb6..b7776e4c0 100644
--- a/e2etests/testdata/stable/chaos2/dagre/sketch.exp.svg
+++ b/e2etests/testdata/stable/chaos2/dagre/sketch.exp.svg
@@ -1,23 +1,23 @@
-aabbllmmnnoocciikkddgghhjjeeff1122 334455667788
-
-
-
-
-
-
-
-
-
+aabbllmmnnoocciikkddgghhjjeeff1122 334455667788
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/e2etests/testdata/stable/edge-label-overflow/dagre/board.exp.json b/e2etests/testdata/stable/edge-label-overflow/dagre/board.exp.json
new file mode 100644
index 000000000..447a27946
--- /dev/null
+++ b/e2etests/testdata/stable/edge-label-overflow/dagre/board.exp.json
@@ -0,0 +1,319 @@
+{
+ "name": "",
+ "isFolderOnly": false,
+ "fontFamily": "SourceSansPro",
+ "shapes": [
+ {
+ "id": "student",
+ "type": "rectangle",
+ "pos": {
+ "x": 110,
+ "y": 0
+ },
+ "width": 100,
+ "height": 66,
+ "opacity": 1,
+ "strokeDash": 0,
+ "strokeWidth": 2,
+ "borderRadius": 0,
+ "fill": "B6",
+ "stroke": "B1",
+ "shadow": false,
+ "3d": false,
+ "multiple": false,
+ "double-border": false,
+ "tooltip": "",
+ "link": "",
+ "icon": null,
+ "iconPosition": "",
+ "blend": false,
+ "fields": null,
+ "methods": null,
+ "columns": null,
+ "label": "student",
+ "fontSize": 16,
+ "fontFamily": "DEFAULT",
+ "language": "",
+ "color": "N1",
+ "italic": false,
+ "bold": true,
+ "underline": false,
+ "labelWidth": 55,
+ "labelHeight": 21,
+ "labelPosition": "INSIDE_MIDDLE_CENTER",
+ "zIndex": 0,
+ "level": 1
+ },
+ {
+ "id": "committee chair",
+ "type": "rectangle",
+ "pos": {
+ "x": 79,
+ "y": 187
+ },
+ "width": 162,
+ "height": 66,
+ "opacity": 1,
+ "strokeDash": 0,
+ "strokeWidth": 2,
+ "borderRadius": 0,
+ "fill": "B6",
+ "stroke": "B1",
+ "shadow": false,
+ "3d": false,
+ "multiple": false,
+ "double-border": false,
+ "tooltip": "",
+ "link": "",
+ "icon": null,
+ "iconPosition": "",
+ "blend": false,
+ "fields": null,
+ "methods": null,
+ "columns": null,
+ "label": "committee chair",
+ "fontSize": 16,
+ "fontFamily": "DEFAULT",
+ "language": "",
+ "color": "N1",
+ "italic": false,
+ "bold": true,
+ "underline": false,
+ "labelWidth": 117,
+ "labelHeight": 21,
+ "labelPosition": "INSIDE_MIDDLE_CENTER",
+ "zIndex": 0,
+ "level": 1
+ },
+ {
+ "id": "committee",
+ "type": "rectangle",
+ "pos": {
+ "x": 99,
+ "y": 374
+ },
+ "width": 122,
+ "height": 66,
+ "opacity": 1,
+ "strokeDash": 0,
+ "strokeWidth": 2,
+ "borderRadius": 0,
+ "fill": "B6",
+ "stroke": "B1",
+ "shadow": false,
+ "3d": false,
+ "multiple": false,
+ "double-border": false,
+ "tooltip": "",
+ "link": "",
+ "icon": null,
+ "iconPosition": "",
+ "blend": false,
+ "fields": null,
+ "methods": null,
+ "columns": null,
+ "label": "committee",
+ "fontSize": 16,
+ "fontFamily": "DEFAULT",
+ "language": "",
+ "color": "N1",
+ "italic": false,
+ "bold": true,
+ "underline": false,
+ "labelWidth": 77,
+ "labelHeight": 21,
+ "labelPosition": "INSIDE_MIDDLE_CENTER",
+ "zIndex": 0,
+ "level": 1
+ }
+ ],
+ "connections": [
+ {
+ "id": "(student -> committee chair)[0]",
+ "src": "student",
+ "srcArrow": "none",
+ "srcLabel": "",
+ "dst": "committee chair",
+ "dstArrow": "triangle",
+ "dstLabel": "",
+ "opacity": 1,
+ "strokeDash": 0,
+ "strokeWidth": 2,
+ "stroke": "B1",
+ "borderRadius": 10,
+ "label": "Apply for appeal",
+ "fontSize": 16,
+ "fontFamily": "DEFAULT",
+ "language": "",
+ "color": "N2",
+ "italic": true,
+ "bold": false,
+ "underline": false,
+ "labelWidth": 109,
+ "labelHeight": 21,
+ "labelPosition": "INSIDE_MIDDLE_CENTER",
+ "labelPercentage": 0,
+ "route": [
+ {
+ "x": 126.13235294117646,
+ "y": 66
+ },
+ {
+ "x": 76.82647058823528,
+ "y": 114.4
+ },
+ {
+ "x": 76.9,
+ "y": 138.7
+ },
+ {
+ "x": 126.5,
+ "y": 187.5
+ }
+ ],
+ "isCurve": true,
+ "animated": false,
+ "tooltip": "",
+ "icon": null,
+ "zIndex": 0
+ },
+ {
+ "id": "(student <- committee chair)[0]",
+ "src": "student",
+ "srcArrow": "triangle",
+ "srcLabel": "",
+ "dst": "committee chair",
+ "dstArrow": "none",
+ "dstLabel": "",
+ "opacity": 1,
+ "strokeDash": 0,
+ "strokeWidth": 2,
+ "stroke": "B1",
+ "borderRadius": 10,
+ "label": "Deny. Need more information",
+ "fontSize": 16,
+ "fontFamily": "DEFAULT",
+ "language": "",
+ "color": "N2",
+ "italic": true,
+ "bold": false,
+ "underline": false,
+ "labelWidth": 192,
+ "labelHeight": 21,
+ "labelPosition": "INSIDE_MIDDLE_CENTER",
+ "labelPercentage": 0,
+ "route": [
+ {
+ "x": 193.36764705882354,
+ "y": 66
+ },
+ {
+ "x": 242.67352941176472,
+ "y": 114.4
+ },
+ {
+ "x": 242.6,
+ "y": 138.7
+ },
+ {
+ "x": 193,
+ "y": 187.5
+ }
+ ],
+ "isCurve": true,
+ "animated": false,
+ "tooltip": "",
+ "icon": null,
+ "zIndex": 0
+ },
+ {
+ "id": "(committee chair -> committee)[0]",
+ "src": "committee chair",
+ "srcArrow": "none",
+ "srcLabel": "",
+ "dst": "committee",
+ "dstArrow": "triangle",
+ "dstLabel": "",
+ "opacity": 1,
+ "strokeDash": 0,
+ "strokeWidth": 2,
+ "stroke": "B1",
+ "borderRadius": 10,
+ "label": "Accept appeal",
+ "fontSize": 16,
+ "fontFamily": "DEFAULT",
+ "language": "",
+ "color": "N2",
+ "italic": true,
+ "bold": false,
+ "underline": false,
+ "labelWidth": 94,
+ "labelHeight": 21,
+ "labelPosition": "INSIDE_MIDDLE_CENTER",
+ "labelPercentage": 0,
+ "route": [
+ {
+ "x": 159.75,
+ "y": 253
+ },
+ {
+ "x": 159.75,
+ "y": 301.4
+ },
+ {
+ "x": 159.75,
+ "y": 325.7
+ },
+ {
+ "x": 159.75,
+ "y": 374.5
+ }
+ ],
+ "isCurve": true,
+ "animated": false,
+ "tooltip": "",
+ "icon": null,
+ "zIndex": 0
+ }
+ ],
+ "root": {
+ "id": "",
+ "type": "",
+ "pos": {
+ "x": 0,
+ "y": 0
+ },
+ "width": 0,
+ "height": 0,
+ "opacity": 0,
+ "strokeDash": 0,
+ "strokeWidth": 0,
+ "borderRadius": 0,
+ "fill": "N7",
+ "stroke": "",
+ "shadow": false,
+ "3d": false,
+ "multiple": false,
+ "double-border": false,
+ "tooltip": "",
+ "link": "",
+ "icon": null,
+ "iconPosition": "",
+ "blend": false,
+ "fields": null,
+ "methods": null,
+ "columns": null,
+ "label": "",
+ "fontSize": 0,
+ "fontFamily": "",
+ "language": "",
+ "color": "",
+ "italic": false,
+ "bold": false,
+ "underline": false,
+ "labelWidth": 0,
+ "labelHeight": 0,
+ "zIndex": 0,
+ "level": 0
+ }
+}
diff --git a/e2etests/testdata/stable/edge-label-overflow/dagre/sketch.exp.svg b/e2etests/testdata/stable/edge-label-overflow/dagre/sketch.exp.svg
new file mode 100644
index 000000000..efcdc3cce
--- /dev/null
+++ b/e2etests/testdata/stable/edge-label-overflow/dagre/sketch.exp.svg
@@ -0,0 +1,104 @@
+studentcommittee chaircommittee Apply for appeal Deny. Need more informationAccept appeal
+
+
+
+
+
\ No newline at end of file
diff --git a/e2etests/testdata/stable/edge-label-overflow/elk/board.exp.json b/e2etests/testdata/stable/edge-label-overflow/elk/board.exp.json
new file mode 100644
index 000000000..f17ddcb63
--- /dev/null
+++ b/e2etests/testdata/stable/edge-label-overflow/elk/board.exp.json
@@ -0,0 +1,324 @@
+{
+ "name": "",
+ "isFolderOnly": false,
+ "fontFamily": "SourceSansPro",
+ "shapes": [
+ {
+ "id": "student",
+ "type": "rectangle",
+ "pos": {
+ "x": 97,
+ "y": 12
+ },
+ "width": 100,
+ "height": 66,
+ "opacity": 1,
+ "strokeDash": 0,
+ "strokeWidth": 2,
+ "borderRadius": 0,
+ "fill": "B6",
+ "stroke": "B1",
+ "shadow": false,
+ "3d": false,
+ "multiple": false,
+ "double-border": false,
+ "tooltip": "",
+ "link": "",
+ "icon": null,
+ "iconPosition": "",
+ "blend": false,
+ "fields": null,
+ "methods": null,
+ "columns": null,
+ "label": "student",
+ "fontSize": 16,
+ "fontFamily": "DEFAULT",
+ "language": "",
+ "color": "N1",
+ "italic": false,
+ "bold": true,
+ "underline": false,
+ "labelWidth": 55,
+ "labelHeight": 21,
+ "labelPosition": "INSIDE_MIDDLE_CENTER",
+ "zIndex": 0,
+ "level": 1
+ },
+ {
+ "id": "committee chair",
+ "type": "rectangle",
+ "pos": {
+ "x": 66,
+ "y": 259
+ },
+ "width": 162,
+ "height": 66,
+ "opacity": 1,
+ "strokeDash": 0,
+ "strokeWidth": 2,
+ "borderRadius": 0,
+ "fill": "B6",
+ "stroke": "B1",
+ "shadow": false,
+ "3d": false,
+ "multiple": false,
+ "double-border": false,
+ "tooltip": "",
+ "link": "",
+ "icon": null,
+ "iconPosition": "",
+ "blend": false,
+ "fields": null,
+ "methods": null,
+ "columns": null,
+ "label": "committee chair",
+ "fontSize": 16,
+ "fontFamily": "DEFAULT",
+ "language": "",
+ "color": "N1",
+ "italic": false,
+ "bold": true,
+ "underline": false,
+ "labelWidth": 117,
+ "labelHeight": 21,
+ "labelPosition": "INSIDE_MIDDLE_CENTER",
+ "zIndex": 0,
+ "level": 1
+ },
+ {
+ "id": "committee",
+ "type": "rectangle",
+ "pos": {
+ "x": 86,
+ "y": 486
+ },
+ "width": 122,
+ "height": 66,
+ "opacity": 1,
+ "strokeDash": 0,
+ "strokeWidth": 2,
+ "borderRadius": 0,
+ "fill": "B6",
+ "stroke": "B1",
+ "shadow": false,
+ "3d": false,
+ "multiple": false,
+ "double-border": false,
+ "tooltip": "",
+ "link": "",
+ "icon": null,
+ "iconPosition": "",
+ "blend": false,
+ "fields": null,
+ "methods": null,
+ "columns": null,
+ "label": "committee",
+ "fontSize": 16,
+ "fontFamily": "DEFAULT",
+ "language": "",
+ "color": "N1",
+ "italic": false,
+ "bold": true,
+ "underline": false,
+ "labelWidth": 77,
+ "labelHeight": 21,
+ "labelPosition": "INSIDE_MIDDLE_CENTER",
+ "zIndex": 0,
+ "level": 1
+ }
+ ],
+ "connections": [
+ {
+ "id": "(student -> committee chair)[0]",
+ "src": "student",
+ "srcArrow": "none",
+ "srcLabel": "",
+ "dst": "committee chair",
+ "dstArrow": "triangle",
+ "dstLabel": "",
+ "opacity": 1,
+ "strokeDash": 0,
+ "strokeWidth": 2,
+ "stroke": "B1",
+ "borderRadius": 10,
+ "label": "Apply for appeal",
+ "fontSize": 16,
+ "fontFamily": "DEFAULT",
+ "language": "",
+ "color": "N2",
+ "italic": true,
+ "bold": false,
+ "underline": false,
+ "labelWidth": 109,
+ "labelHeight": 21,
+ "labelPosition": "INSIDE_MIDDLE_CENTER",
+ "labelPercentage": 0,
+ "route": [
+ {
+ "x": 130.58333333333331,
+ "y": 78
+ },
+ {
+ "x": 130.58333333333331,
+ "y": 118
+ },
+ {
+ "x": 66.5,
+ "y": 118
+ },
+ {
+ "x": 66.5,
+ "y": 219
+ },
+ {
+ "x": 120.25,
+ "y": 219
+ },
+ {
+ "x": 120.25,
+ "y": 259
+ }
+ ],
+ "animated": false,
+ "tooltip": "",
+ "icon": null,
+ "zIndex": 0
+ },
+ {
+ "id": "(student <- committee chair)[0]",
+ "src": "student",
+ "srcArrow": "triangle",
+ "srcLabel": "",
+ "dst": "committee chair",
+ "dstArrow": "none",
+ "dstLabel": "",
+ "opacity": 1,
+ "strokeDash": 0,
+ "strokeWidth": 2,
+ "stroke": "B1",
+ "borderRadius": 10,
+ "label": "Deny. Need more information",
+ "fontSize": 16,
+ "fontFamily": "DEFAULT",
+ "language": "",
+ "color": "N2",
+ "italic": true,
+ "bold": false,
+ "underline": false,
+ "labelWidth": 192,
+ "labelHeight": 21,
+ "labelPosition": "INSIDE_MIDDLE_CENTER",
+ "labelPercentage": 0,
+ "route": [
+ {
+ "x": 163.91666666666666,
+ "y": 78
+ },
+ {
+ "x": 163.91666666666666,
+ "y": 118
+ },
+ {
+ "x": 228,
+ "y": 118
+ },
+ {
+ "x": 228,
+ "y": 219
+ },
+ {
+ "x": 174.25,
+ "y": 219
+ },
+ {
+ "x": 174.25,
+ "y": 259
+ }
+ ],
+ "animated": false,
+ "tooltip": "",
+ "icon": null,
+ "zIndex": 0
+ },
+ {
+ "id": "(committee chair -> committee)[0]",
+ "src": "committee chair",
+ "srcArrow": "none",
+ "srcLabel": "",
+ "dst": "committee",
+ "dstArrow": "triangle",
+ "dstLabel": "",
+ "opacity": 1,
+ "strokeDash": 0,
+ "strokeWidth": 2,
+ "stroke": "B1",
+ "borderRadius": 10,
+ "label": "Accept appeal",
+ "fontSize": 16,
+ "fontFamily": "DEFAULT",
+ "language": "",
+ "color": "N2",
+ "italic": true,
+ "bold": false,
+ "underline": false,
+ "labelWidth": 94,
+ "labelHeight": 21,
+ "labelPosition": "INSIDE_MIDDLE_CENTER",
+ "labelPercentage": 0,
+ "route": [
+ {
+ "x": 147.25,
+ "y": 325
+ },
+ {
+ "x": 147.25,
+ "y": 486
+ }
+ ],
+ "animated": false,
+ "tooltip": "",
+ "icon": null,
+ "zIndex": 0
+ }
+ ],
+ "root": {
+ "id": "",
+ "type": "",
+ "pos": {
+ "x": 0,
+ "y": 0
+ },
+ "width": 0,
+ "height": 0,
+ "opacity": 0,
+ "strokeDash": 0,
+ "strokeWidth": 0,
+ "borderRadius": 0,
+ "fill": "N7",
+ "stroke": "",
+ "shadow": false,
+ "3d": false,
+ "multiple": false,
+ "double-border": false,
+ "tooltip": "",
+ "link": "",
+ "icon": null,
+ "iconPosition": "",
+ "blend": false,
+ "fields": null,
+ "methods": null,
+ "columns": null,
+ "label": "",
+ "fontSize": 0,
+ "fontFamily": "",
+ "language": "",
+ "color": "",
+ "italic": false,
+ "bold": false,
+ "underline": false,
+ "labelWidth": 0,
+ "labelHeight": 0,
+ "zIndex": 0,
+ "level": 0
+ }
+}
diff --git a/e2etests/testdata/stable/edge-label-overflow/elk/sketch.exp.svg b/e2etests/testdata/stable/edge-label-overflow/elk/sketch.exp.svg
new file mode 100644
index 000000000..fd70eb8b0
--- /dev/null
+++ b/e2etests/testdata/stable/edge-label-overflow/elk/sketch.exp.svg
@@ -0,0 +1,104 @@
+studentcommittee chaircommittee Apply for appeal Deny. Need more informationAccept appeal
+
+
+
+
+
\ No newline at end of file
diff --git a/e2etests/testdata/stable/elk_shim/dagre/board.exp.json b/e2etests/testdata/stable/elk_shim/dagre/board.exp.json
index f839bf8a2..825a9fef0 100644
--- a/e2etests/testdata/stable/elk_shim/dagre/board.exp.json
+++ b/e2etests/testdata/stable/elk_shim/dagre/board.exp.json
@@ -10,7 +10,7 @@
"x": 0,
"y": 275
},
- "width": 387,
+ "width": 417,
"height": 1215,
"opacity": 1,
"strokeDash": 0,
@@ -51,7 +51,7 @@
"x": 95,
"y": 340
},
- "width": 273,
+ "width": 302,
"height": 307,
"opacity": 1,
"strokeDash": 0,
@@ -89,7 +89,7 @@
"id": "network.cell tower.satellites",
"type": "stored_data",
"pos": {
- "x": 161,
+ "x": 176,
"y": 372
},
"width": 140,
@@ -130,7 +130,7 @@
"id": "network.cell tower.transmitter",
"type": "rectangle",
"pos": {
- "x": 161,
+ "x": 176,
"y": 554
},
"width": 140,
@@ -253,7 +253,7 @@
"id": "network.data processor",
"type": "rectangle",
"pos": {
- "x": 142,
+ "x": 157,
"y": 804
},
"width": 179,
@@ -294,7 +294,7 @@
"id": "network.data processor.storage",
"type": "cylinder",
"pos": {
- "x": 182,
+ "x": 197,
"y": 836
},
"width": 99,
@@ -335,7 +335,7 @@
"id": "user",
"type": "person",
"pos": {
- "x": 75,
+ "x": 80,
"y": 0
},
"width": 130,
@@ -376,7 +376,7 @@
"id": "api server",
"type": "rectangle",
"pos": {
- "x": 428,
+ "x": 457,
"y": 1066
},
"width": 116,
@@ -417,7 +417,7 @@
"id": "logs",
"type": "page",
"pos": {
- "x": 449,
+ "x": 479,
"y": 1303
},
"width": 73,
@@ -483,19 +483,19 @@
"labelPercentage": 0,
"route": [
{
- "x": 210,
+ "x": 221,
"y": 434
},
{
- "x": 176.4,
+ "x": 182.6,
"y": 482
},
{
- "x": 176.4,
+ "x": 182.8,
"y": 506.2
},
{
- "x": 210,
+ "x": 222,
"y": 555
}
],
@@ -532,19 +532,19 @@
"labelPercentage": 0,
"route": [
{
- "x": 231,
+ "x": 246,
"y": 434
},
{
- "x": 231.2,
+ "x": 246,
"y": 482
},
{
- "x": 231.25,
+ "x": 246,
"y": 506.2
},
{
- "x": 231.25,
+ "x": 246,
"y": 555
}
],
@@ -581,19 +581,19 @@
"labelPercentage": 0,
"route": [
{
- "x": 253,
+ "x": 271,
"y": 434
},
{
- "x": 286.2,
+ "x": 309.4,
"y": 482
},
{
- "x": 286.1,
+ "x": 309.2,
"y": 506.2
},
{
- "x": 252.5,
+ "x": 270,
"y": 555
}
],
@@ -630,31 +630,31 @@
"labelPercentage": 0,
"route": [
{
- "x": 231.25,
+ "x": 246,
"y": 615.5
},
{
- "x": 231.25,
+ "x": 246,
"y": 641.1
},
{
- "x": 231.25,
+ "x": 246,
"y": 659.6
},
{
- "x": 231.25,
+ "x": 246,
"y": 677.75
},
{
- "x": 231.25,
+ "x": 246,
"y": 695.9
},
{
- "x": 231.2,
+ "x": 246,
"y": 782.2
},
{
- "x": 231,
+ "x": 246,
"y": 837
}
],
@@ -691,19 +691,19 @@
"labelPercentage": 0,
"route": [
{
- "x": 164,
+ "x": 171,
"y": 87
},
{
- "x": 217.8,
+ "x": 231,
"y": 156.2
},
{
- "x": 231.25,
+ "x": 246,
"y": 248.2
},
{
- "x": 231.25,
+ "x": 246,
"y": 305
}
],
@@ -740,11 +740,11 @@
"labelPercentage": 0,
"route": [
{
- "x": 123,
+ "x": 126,
"y": 87
},
{
- "x": 84.4,
+ "x": 85,
"y": 156.2
},
{
@@ -945,12 +945,12 @@
"labelPercentage": 0,
"route": [
{
- "x": 427.75,
- "y": 1113.8881262868908
+ "x": 457.25,
+ "y": 1112.7726984126984
},
{
- "x": 182.75,
- "y": 1176.777625257378
+ "x": 188.64999999999998,
+ "y": 1176.5545396825396
},
{
"x": 118.2,
@@ -994,19 +994,19 @@
"labelPercentage": 0,
"route": [
{
- "x": 485.75,
+ "x": 515.25,
"y": 1132
},
{
- "x": 485.75,
+ "x": 515.25,
"y": 1180.4
},
{
- "x": 485.8,
+ "x": 515.2,
"y": 1263
},
{
- "x": 486,
+ "x": 515,
"y": 1303
}
],
@@ -1043,20 +1043,20 @@
"labelPercentage": 0,
"route": [
{
- "x": 231.25,
+ "x": 246,
"y": 986.5
},
{
- "x": 231.25,
+ "x": 246,
"y": 1010.1
},
{
- "x": 270.55,
- "y": 1028.8168958742633
+ "x": 288.2,
+ "y": 1029
},
{
- "x": 427.75,
- "y": 1080.0844793713163
+ "x": 457,
+ "y": 1081
}
],
"isCurve": true,
diff --git a/e2etests/testdata/stable/elk_shim/dagre/sketch.exp.svg b/e2etests/testdata/stable/elk_shim/dagre/sketch.exp.svg
index 6f5a2477e..b7f521821 100644
--- a/e2etests/testdata/stable/elk_shim/dagre/sketch.exp.svg
+++ b/e2etests/testdata/stable/elk_shim/dagre/sketch.exp.svg
@@ -1,23 +1,23 @@
-networkuserapi serverlogscell towerONLINE PORTALLLLdata processorsatellitestransmitteruistorage sendsendsendphone logsmake call accessdisplaypersist
-
-
-
-
-
-
-
-
-
+ .d2-49621034 .fill-N1{fill:#0A0F25;}
+ .d2-49621034 .fill-N2{fill:#676C7E;}
+ .d2-49621034 .fill-N3{fill:#9499AB;}
+ .d2-49621034 .fill-N4{fill:#CFD2DD;}
+ .d2-49621034 .fill-N5{fill:#DEE1EB;}
+ .d2-49621034 .fill-N6{fill:#EEF1F8;}
+ .d2-49621034 .fill-N7{fill:#FFFFFF;}
+ .d2-49621034 .fill-B1{fill:#0D32B2;}
+ .d2-49621034 .fill-B2{fill:#0D32B2;}
+ .d2-49621034 .fill-B3{fill:#E3E9FD;}
+ .d2-49621034 .fill-B4{fill:#E3E9FD;}
+ .d2-49621034 .fill-B5{fill:#EDF0FD;}
+ .d2-49621034 .fill-B6{fill:#F7F8FE;}
+ .d2-49621034 .fill-AA2{fill:#4A6FF3;}
+ .d2-49621034 .fill-AA4{fill:#EDF0FD;}
+ .d2-49621034 .fill-AA5{fill:#F7F8FE;}
+ .d2-49621034 .fill-AB4{fill:#EDF0FD;}
+ .d2-49621034 .fill-AB5{fill:#F7F8FE;}
+ .d2-49621034 .stroke-N1{stroke:#0A0F25;}
+ .d2-49621034 .stroke-N2{stroke:#676C7E;}
+ .d2-49621034 .stroke-N3{stroke:#9499AB;}
+ .d2-49621034 .stroke-N4{stroke:#CFD2DD;}
+ .d2-49621034 .stroke-N5{stroke:#DEE1EB;}
+ .d2-49621034 .stroke-N6{stroke:#EEF1F8;}
+ .d2-49621034 .stroke-N7{stroke:#FFFFFF;}
+ .d2-49621034 .stroke-B1{stroke:#0D32B2;}
+ .d2-49621034 .stroke-B2{stroke:#0D32B2;}
+ .d2-49621034 .stroke-B3{stroke:#E3E9FD;}
+ .d2-49621034 .stroke-B4{stroke:#E3E9FD;}
+ .d2-49621034 .stroke-B5{stroke:#EDF0FD;}
+ .d2-49621034 .stroke-B6{stroke:#F7F8FE;}
+ .d2-49621034 .stroke-AA2{stroke:#4A6FF3;}
+ .d2-49621034 .stroke-AA4{stroke:#EDF0FD;}
+ .d2-49621034 .stroke-AA5{stroke:#F7F8FE;}
+ .d2-49621034 .stroke-AB4{stroke:#EDF0FD;}
+ .d2-49621034 .stroke-AB5{stroke:#F7F8FE;}
+ .d2-49621034 .background-color-N1{background-color:#0A0F25;}
+ .d2-49621034 .background-color-N2{background-color:#676C7E;}
+ .d2-49621034 .background-color-N3{background-color:#9499AB;}
+ .d2-49621034 .background-color-N4{background-color:#CFD2DD;}
+ .d2-49621034 .background-color-N5{background-color:#DEE1EB;}
+ .d2-49621034 .background-color-N6{background-color:#EEF1F8;}
+ .d2-49621034 .background-color-N7{background-color:#FFFFFF;}
+ .d2-49621034 .background-color-B1{background-color:#0D32B2;}
+ .d2-49621034 .background-color-B2{background-color:#0D32B2;}
+ .d2-49621034 .background-color-B3{background-color:#E3E9FD;}
+ .d2-49621034 .background-color-B4{background-color:#E3E9FD;}
+ .d2-49621034 .background-color-B5{background-color:#EDF0FD;}
+ .d2-49621034 .background-color-B6{background-color:#F7F8FE;}
+ .d2-49621034 .background-color-AA2{background-color:#4A6FF3;}
+ .d2-49621034 .background-color-AA4{background-color:#EDF0FD;}
+ .d2-49621034 .background-color-AA5{background-color:#F7F8FE;}
+ .d2-49621034 .background-color-AB4{background-color:#EDF0FD;}
+ .d2-49621034 .background-color-AB5{background-color:#F7F8FE;}
+ .d2-49621034 .color-N1{color:#0A0F25;}
+ .d2-49621034 .color-N2{color:#676C7E;}
+ .d2-49621034 .color-N3{color:#9499AB;}
+ .d2-49621034 .color-N4{color:#CFD2DD;}
+ .d2-49621034 .color-N5{color:#DEE1EB;}
+ .d2-49621034 .color-N6{color:#EEF1F8;}
+ .d2-49621034 .color-N7{color:#FFFFFF;}
+ .d2-49621034 .color-B1{color:#0D32B2;}
+ .d2-49621034 .color-B2{color:#0D32B2;}
+ .d2-49621034 .color-B3{color:#E3E9FD;}
+ .d2-49621034 .color-B4{color:#E3E9FD;}
+ .d2-49621034 .color-B5{color:#EDF0FD;}
+ .d2-49621034 .color-B6{color:#F7F8FE;}
+ .d2-49621034 .color-AA2{color:#4A6FF3;}
+ .d2-49621034 .color-AA4{color:#EDF0FD;}
+ .d2-49621034 .color-AA5{color:#F7F8FE;}
+ .d2-49621034 .color-AB4{color:#EDF0FD;}
+ .d2-49621034 .color-AB5{color:#F7F8FE;}.appendix text.text{fill:#0A0F25}.md{--color-fg-default:#0A0F25;--color-fg-muted:#676C7E;--color-fg-subtle:#9499AB;--color-canvas-default:#FFFFFF;--color-canvas-subtle:#EEF1F8;--color-border-default:#0D32B2;--color-border-muted:#0D32B2;--color-neutral-muted:#EEF1F8;--color-accent-fg:#0D32B2;--color-accent-emphasis:#0D32B2;--color-attention-subtle:#676C7E;--color-danger-fg:red;}.sketch-overlay-B1{fill:url(#streaks-darker);mix-blend-mode:lighten}.sketch-overlay-B2{fill:url(#streaks-darker);mix-blend-mode:lighten}.sketch-overlay-B3{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-B4{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-B5{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-B6{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-AA2{fill:url(#streaks-dark);mix-blend-mode:overlay}.sketch-overlay-AA4{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-AA5{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-AB4{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-AB5{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-N1{fill:url(#streaks-darker);mix-blend-mode:lighten}.sketch-overlay-N2{fill:url(#streaks-dark);mix-blend-mode:overlay}.sketch-overlay-N3{fill:url(#streaks-normal);mix-blend-mode:color-burn}.sketch-overlay-N4{fill:url(#streaks-normal);mix-blend-mode:color-burn}.sketch-overlay-N5{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-N6{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-N7{fill:url(#streaks-bright);mix-blend-mode:darken}.light-code{display: block}.dark-code{display: none}]]>networkuserapi serverlogscell towerONLINE PORTALLLLdata processorsatellitestransmitteruistorage sendsendsendphone logsmake call accessdisplaypersist
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/e2etests/testdata/stable/mono-font/dagre/board.exp.json b/e2etests/testdata/stable/mono-font/dagre/board.exp.json
index 81f339d09..26858d406 100644
--- a/e2etests/testdata/stable/mono-font/dagre/board.exp.json
+++ b/e2etests/testdata/stable/mono-font/dagre/board.exp.json
@@ -7,7 +7,7 @@
"id": "satellites",
"type": "stored_data",
"pos": {
- "x": 0,
+ "x": 27,
"y": 0
},
"width": 161,
@@ -48,7 +48,7 @@
"id": "transmitter",
"type": "rectangle",
"pos": {
- "x": 5,
+ "x": 32,
"y": 187
},
"width": 151,
@@ -114,19 +114,19 @@
"labelPercentage": 0,
"route": [
{
- "x": 60,
+ "x": 79,
"y": 66
},
{
- "x": 30,
+ "x": 39,
"y": 114.4
},
{
- "x": 30.1,
+ "x": 39,
"y": 138.7
},
{
- "x": 60.5,
+ "x": 79,
"y": 187.5
}
],
@@ -163,19 +163,19 @@
"labelPercentage": 0,
"route": [
{
- "x": 80,
+ "x": 107,
"y": 66
},
{
- "x": 80.4,
+ "x": 107,
"y": 114.4
},
{
- "x": 80.5,
+ "x": 107,
"y": 138.7
},
{
- "x": 80.5,
+ "x": 107,
"y": 187.5
}
],
@@ -212,19 +212,19 @@
"labelPercentage": 0,
"route": [
{
- "x": 101,
+ "x": 135,
"y": 66
},
{
- "x": 131,
+ "x": 175,
"y": 114.4
},
{
- "x": 130.9,
+ "x": 175,
"y": 138.7
},
{
- "x": 100.5,
+ "x": 135,
"y": 187.5
}
],
diff --git a/e2etests/testdata/stable/mono-font/dagre/sketch.exp.svg b/e2etests/testdata/stable/mono-font/dagre/sketch.exp.svg
index ce9247380..3a7b425a7 100644
--- a/e2etests/testdata/stable/mono-font/dagre/sketch.exp.svg
+++ b/e2etests/testdata/stable/mono-font/dagre/sketch.exp.svg
@@ -1,16 +1,16 @@
-SATELLITESTRANSMITTER SENDSENDSEND
-
-
-
-
+ .d2-1620692864 .fill-N1{fill:#0A0F25;}
+ .d2-1620692864 .fill-N2{fill:#676C7E;}
+ .d2-1620692864 .fill-N3{fill:#9499AB;}
+ .d2-1620692864 .fill-N4{fill:#CFD2DD;}
+ .d2-1620692864 .fill-N5{fill:#DEE1EB;}
+ .d2-1620692864 .fill-N6{fill:#EEF1F8;}
+ .d2-1620692864 .fill-N7{fill:#FFFFFF;}
+ .d2-1620692864 .fill-B1{fill:#0D32B2;}
+ .d2-1620692864 .fill-B2{fill:#0D32B2;}
+ .d2-1620692864 .fill-B3{fill:#E3E9FD;}
+ .d2-1620692864 .fill-B4{fill:#E3E9FD;}
+ .d2-1620692864 .fill-B5{fill:#EDF0FD;}
+ .d2-1620692864 .fill-B6{fill:#F7F8FE;}
+ .d2-1620692864 .fill-AA2{fill:#4A6FF3;}
+ .d2-1620692864 .fill-AA4{fill:#EDF0FD;}
+ .d2-1620692864 .fill-AA5{fill:#F7F8FE;}
+ .d2-1620692864 .fill-AB4{fill:#EDF0FD;}
+ .d2-1620692864 .fill-AB5{fill:#F7F8FE;}
+ .d2-1620692864 .stroke-N1{stroke:#0A0F25;}
+ .d2-1620692864 .stroke-N2{stroke:#676C7E;}
+ .d2-1620692864 .stroke-N3{stroke:#9499AB;}
+ .d2-1620692864 .stroke-N4{stroke:#CFD2DD;}
+ .d2-1620692864 .stroke-N5{stroke:#DEE1EB;}
+ .d2-1620692864 .stroke-N6{stroke:#EEF1F8;}
+ .d2-1620692864 .stroke-N7{stroke:#FFFFFF;}
+ .d2-1620692864 .stroke-B1{stroke:#0D32B2;}
+ .d2-1620692864 .stroke-B2{stroke:#0D32B2;}
+ .d2-1620692864 .stroke-B3{stroke:#E3E9FD;}
+ .d2-1620692864 .stroke-B4{stroke:#E3E9FD;}
+ .d2-1620692864 .stroke-B5{stroke:#EDF0FD;}
+ .d2-1620692864 .stroke-B6{stroke:#F7F8FE;}
+ .d2-1620692864 .stroke-AA2{stroke:#4A6FF3;}
+ .d2-1620692864 .stroke-AA4{stroke:#EDF0FD;}
+ .d2-1620692864 .stroke-AA5{stroke:#F7F8FE;}
+ .d2-1620692864 .stroke-AB4{stroke:#EDF0FD;}
+ .d2-1620692864 .stroke-AB5{stroke:#F7F8FE;}
+ .d2-1620692864 .background-color-N1{background-color:#0A0F25;}
+ .d2-1620692864 .background-color-N2{background-color:#676C7E;}
+ .d2-1620692864 .background-color-N3{background-color:#9499AB;}
+ .d2-1620692864 .background-color-N4{background-color:#CFD2DD;}
+ .d2-1620692864 .background-color-N5{background-color:#DEE1EB;}
+ .d2-1620692864 .background-color-N6{background-color:#EEF1F8;}
+ .d2-1620692864 .background-color-N7{background-color:#FFFFFF;}
+ .d2-1620692864 .background-color-B1{background-color:#0D32B2;}
+ .d2-1620692864 .background-color-B2{background-color:#0D32B2;}
+ .d2-1620692864 .background-color-B3{background-color:#E3E9FD;}
+ .d2-1620692864 .background-color-B4{background-color:#E3E9FD;}
+ .d2-1620692864 .background-color-B5{background-color:#EDF0FD;}
+ .d2-1620692864 .background-color-B6{background-color:#F7F8FE;}
+ .d2-1620692864 .background-color-AA2{background-color:#4A6FF3;}
+ .d2-1620692864 .background-color-AA4{background-color:#EDF0FD;}
+ .d2-1620692864 .background-color-AA5{background-color:#F7F8FE;}
+ .d2-1620692864 .background-color-AB4{background-color:#EDF0FD;}
+ .d2-1620692864 .background-color-AB5{background-color:#F7F8FE;}
+ .d2-1620692864 .color-N1{color:#0A0F25;}
+ .d2-1620692864 .color-N2{color:#676C7E;}
+ .d2-1620692864 .color-N3{color:#9499AB;}
+ .d2-1620692864 .color-N4{color:#CFD2DD;}
+ .d2-1620692864 .color-N5{color:#DEE1EB;}
+ .d2-1620692864 .color-N6{color:#EEF1F8;}
+ .d2-1620692864 .color-N7{color:#FFFFFF;}
+ .d2-1620692864 .color-B1{color:#0D32B2;}
+ .d2-1620692864 .color-B2{color:#0D32B2;}
+ .d2-1620692864 .color-B3{color:#E3E9FD;}
+ .d2-1620692864 .color-B4{color:#E3E9FD;}
+ .d2-1620692864 .color-B5{color:#EDF0FD;}
+ .d2-1620692864 .color-B6{color:#F7F8FE;}
+ .d2-1620692864 .color-AA2{color:#4A6FF3;}
+ .d2-1620692864 .color-AA4{color:#EDF0FD;}
+ .d2-1620692864 .color-AA5{color:#F7F8FE;}
+ .d2-1620692864 .color-AB4{color:#EDF0FD;}
+ .d2-1620692864 .color-AB5{color:#F7F8FE;}.appendix text.text{fill:#0A0F25}.md{--color-fg-default:#0A0F25;--color-fg-muted:#676C7E;--color-fg-subtle:#9499AB;--color-canvas-default:#FFFFFF;--color-canvas-subtle:#EEF1F8;--color-border-default:#0D32B2;--color-border-muted:#0D32B2;--color-neutral-muted:#EEF1F8;--color-accent-fg:#0D32B2;--color-accent-emphasis:#0D32B2;--color-attention-subtle:#676C7E;--color-danger-fg:red;}.sketch-overlay-B1{fill:url(#streaks-darker);mix-blend-mode:lighten}.sketch-overlay-B2{fill:url(#streaks-darker);mix-blend-mode:lighten}.sketch-overlay-B3{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-B4{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-B5{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-B6{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-AA2{fill:url(#streaks-dark);mix-blend-mode:overlay}.sketch-overlay-AA4{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-AA5{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-AB4{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-AB5{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-N1{fill:url(#streaks-darker);mix-blend-mode:lighten}.sketch-overlay-N2{fill:url(#streaks-dark);mix-blend-mode:overlay}.sketch-overlay-N3{fill:url(#streaks-normal);mix-blend-mode:color-burn}.sketch-overlay-N4{fill:url(#streaks-normal);mix-blend-mode:color-burn}.sketch-overlay-N5{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-N6{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-N7{fill:url(#streaks-bright);mix-blend-mode:darken}.light-code{display: block}.dark-code{display: none}]]>SATELLITESTRANSMITTER SENDSENDSEND
+
+
+
+
\ No newline at end of file
diff --git a/e2etests/testdata/stable/self-referencing/dagre/board.exp.json b/e2etests/testdata/stable/self-referencing/dagre/board.exp.json
index 400eed576..f0bffef02 100644
--- a/e2etests/testdata/stable/self-referencing/dagre/board.exp.json
+++ b/e2etests/testdata/stable/self-referencing/dagre/board.exp.json
@@ -48,7 +48,7 @@
"id": "y",
"type": "rectangle",
"pos": {
- "x": 76,
+ "x": 96,
"y": 166
},
"width": 54,
@@ -89,7 +89,7 @@
"id": "z",
"type": "rectangle",
"pos": {
- "x": 153,
+ "x": 193,
"y": 0
},
"width": 52,
@@ -156,55 +156,55 @@
"route": [
{
"x": 53,
- "y": 16.551724137931032
+ "y": 18.38440111420613
},
{
- "x": 74.33333333333333,
- "y": 3.3103448275862064
+ "x": 79.66666666666667,
+ "y": 3.676880222841225
},
{
- "x": 81,
+ "x": 88,
"y": 0
},
{
- "x": 83,
+ "x": 90.5,
"y": 0
},
{
- "x": 85,
+ "x": 93,
"y": 0
},
{
- "x": 87.66666666666667,
+ "x": 96.33333333333333,
"y": 6.6000000000000005
},
{
- "x": 89.66666666666667,
+ "x": 98.83333333333333,
"y": 16.5
},
{
- "x": 91.66666666666667,
+ "x": 101.33333333333333,
"y": 26.400000000000002
},
{
- "x": 91.66666666666667,
+ "x": 101.33333333333333,
"y": 39.6
},
{
- "x": 89.66666666666667,
+ "x": 98.83333333333333,
"y": 49.5
},
{
- "x": 87.66666666666667,
+ "x": 96.33333333333333,
"y": 59.400000000000006
},
{
- "x": 74.33333333333333,
- "y": 62.689655172413794
+ "x": 79.66666666666667,
+ "y": 62.32311977715877
},
{
"x": 53,
- "y": 49.44827586206897
+ "y": 47.61559888579387
}
],
"isCurve": true,
@@ -241,55 +241,55 @@
"route": [
{
"x": 53,
- "y": 19.849624060150376
- },
- {
- "x": 85,
- "y": 3.969924812030074
- },
- {
- "x": 95,
- "y": 0
- },
- {
- "x": 98,
- "y": 0
+ "y": 22.890173410404625
},
{
"x": 101,
+ "y": 4.578034682080926
+ },
+ {
+ "x": 116,
"y": 0
},
{
- "x": 105,
+ "x": 120.5,
+ "y": 0
+ },
+ {
+ "x": 125,
+ "y": 0
+ },
+ {
+ "x": 131,
"y": 6.6000000000000005
},
{
- "x": 108,
+ "x": 135.5,
"y": 16.5
},
{
- "x": 111,
+ "x": 140,
"y": 26.400000000000002
},
{
- "x": 111,
+ "x": 140,
"y": 39.6
},
{
- "x": 108,
+ "x": 135.5,
"y": 49.5
},
{
- "x": 105,
+ "x": 131,
"y": 59.400000000000006
},
{
- "x": 85,
- "y": 62.03007518796993
+ "x": 101,
+ "y": 61.421965317919074
},
{
"x": 53,
- "y": 46.150375939849624
+ "y": 43.10982658959537
}
],
"isCurve": true,
@@ -333,12 +333,12 @@
"y": 106
},
{
- "x": 36.35,
- "y": 126.72196721311475
+ "x": 40.35,
+ "y": 127.94337662337662
},
{
- "x": 75.75,
- "y": 169.60983606557377
+ "x": 95.75,
+ "y": 175.7168831168831
}
],
"isCurve": true,
@@ -374,20 +374,20 @@
"labelPercentage": 0,
"route": [
{
- "x": 179,
+ "x": 219,
"y": 66
},
{
- "x": 179,
+ "x": 219,
"y": 106
},
{
- "x": 169.2,
- "y": 126.6
+ "x": 205.2,
+ "y": 128
},
{
- "x": 130,
- "y": 169
+ "x": 150,
+ "y": 176
}
],
"isCurve": true,
@@ -423,56 +423,56 @@
"labelPercentage": 0,
"route": [
{
- "x": 205,
- "y": 19.523560209424083
+ "x": 245,
+ "y": 19.52356020942409
},
{
- "x": 235.13333333333333,
- "y": 3.9047120418848156
+ "x": 275.1333333333333,
+ "y": 3.9047120418848174
},
{
- "x": 244.54999999999998,
+ "x": 284.55,
"y": 0
},
{
- "x": 247.375,
+ "x": 287.375,
"y": 0
},
{
- "x": 250.20000000000002,
+ "x": 290.2,
"y": 0
},
{
- "x": 253.96666666666667,
+ "x": 293.96666666666664,
"y": 6.6000000000000005
},
{
- "x": 256.7916666666667,
+ "x": 296.79166666666663,
"y": 16.5
},
{
- "x": 259.6166666666667,
+ "x": 299.6166666666667,
"y": 26.400000000000002
},
{
- "x": 259.6166666666667,
+ "x": 299.6166666666667,
"y": 39.6
},
{
- "x": 256.7916666666667,
+ "x": 296.79166666666663,
"y": 49.5
},
{
- "x": 253.96666666666667,
+ "x": 293.96666666666664,
"y": 59.400000000000006
},
{
- "x": 235.13333333333333,
- "y": 62.095287958115186
+ "x": 275.1333333333333,
+ "y": 62.09528795811518
},
{
- "x": 205,
- "y": 46.47643979057592
+ "x": 245,
+ "y": 46.47643979057591
}
],
"isCurve": true,
diff --git a/e2etests/testdata/stable/self-referencing/dagre/sketch.exp.svg b/e2etests/testdata/stable/self-referencing/dagre/sketch.exp.svg
index f20e33297..57476f28f 100644
--- a/e2etests/testdata/stable/self-referencing/dagre/sketch.exp.svg
+++ b/e2etests/testdata/stable/self-referencing/dagre/sketch.exp.svg
@@ -1,16 +1,16 @@
-xyz hello
-
-
+ .d2-4144856773 .fill-N1{fill:#0A0F25;}
+ .d2-4144856773 .fill-N2{fill:#676C7E;}
+ .d2-4144856773 .fill-N3{fill:#9499AB;}
+ .d2-4144856773 .fill-N4{fill:#CFD2DD;}
+ .d2-4144856773 .fill-N5{fill:#DEE1EB;}
+ .d2-4144856773 .fill-N6{fill:#EEF1F8;}
+ .d2-4144856773 .fill-N7{fill:#FFFFFF;}
+ .d2-4144856773 .fill-B1{fill:#0D32B2;}
+ .d2-4144856773 .fill-B2{fill:#0D32B2;}
+ .d2-4144856773 .fill-B3{fill:#E3E9FD;}
+ .d2-4144856773 .fill-B4{fill:#E3E9FD;}
+ .d2-4144856773 .fill-B5{fill:#EDF0FD;}
+ .d2-4144856773 .fill-B6{fill:#F7F8FE;}
+ .d2-4144856773 .fill-AA2{fill:#4A6FF3;}
+ .d2-4144856773 .fill-AA4{fill:#EDF0FD;}
+ .d2-4144856773 .fill-AA5{fill:#F7F8FE;}
+ .d2-4144856773 .fill-AB4{fill:#EDF0FD;}
+ .d2-4144856773 .fill-AB5{fill:#F7F8FE;}
+ .d2-4144856773 .stroke-N1{stroke:#0A0F25;}
+ .d2-4144856773 .stroke-N2{stroke:#676C7E;}
+ .d2-4144856773 .stroke-N3{stroke:#9499AB;}
+ .d2-4144856773 .stroke-N4{stroke:#CFD2DD;}
+ .d2-4144856773 .stroke-N5{stroke:#DEE1EB;}
+ .d2-4144856773 .stroke-N6{stroke:#EEF1F8;}
+ .d2-4144856773 .stroke-N7{stroke:#FFFFFF;}
+ .d2-4144856773 .stroke-B1{stroke:#0D32B2;}
+ .d2-4144856773 .stroke-B2{stroke:#0D32B2;}
+ .d2-4144856773 .stroke-B3{stroke:#E3E9FD;}
+ .d2-4144856773 .stroke-B4{stroke:#E3E9FD;}
+ .d2-4144856773 .stroke-B5{stroke:#EDF0FD;}
+ .d2-4144856773 .stroke-B6{stroke:#F7F8FE;}
+ .d2-4144856773 .stroke-AA2{stroke:#4A6FF3;}
+ .d2-4144856773 .stroke-AA4{stroke:#EDF0FD;}
+ .d2-4144856773 .stroke-AA5{stroke:#F7F8FE;}
+ .d2-4144856773 .stroke-AB4{stroke:#EDF0FD;}
+ .d2-4144856773 .stroke-AB5{stroke:#F7F8FE;}
+ .d2-4144856773 .background-color-N1{background-color:#0A0F25;}
+ .d2-4144856773 .background-color-N2{background-color:#676C7E;}
+ .d2-4144856773 .background-color-N3{background-color:#9499AB;}
+ .d2-4144856773 .background-color-N4{background-color:#CFD2DD;}
+ .d2-4144856773 .background-color-N5{background-color:#DEE1EB;}
+ .d2-4144856773 .background-color-N6{background-color:#EEF1F8;}
+ .d2-4144856773 .background-color-N7{background-color:#FFFFFF;}
+ .d2-4144856773 .background-color-B1{background-color:#0D32B2;}
+ .d2-4144856773 .background-color-B2{background-color:#0D32B2;}
+ .d2-4144856773 .background-color-B3{background-color:#E3E9FD;}
+ .d2-4144856773 .background-color-B4{background-color:#E3E9FD;}
+ .d2-4144856773 .background-color-B5{background-color:#EDF0FD;}
+ .d2-4144856773 .background-color-B6{background-color:#F7F8FE;}
+ .d2-4144856773 .background-color-AA2{background-color:#4A6FF3;}
+ .d2-4144856773 .background-color-AA4{background-color:#EDF0FD;}
+ .d2-4144856773 .background-color-AA5{background-color:#F7F8FE;}
+ .d2-4144856773 .background-color-AB4{background-color:#EDF0FD;}
+ .d2-4144856773 .background-color-AB5{background-color:#F7F8FE;}
+ .d2-4144856773 .color-N1{color:#0A0F25;}
+ .d2-4144856773 .color-N2{color:#676C7E;}
+ .d2-4144856773 .color-N3{color:#9499AB;}
+ .d2-4144856773 .color-N4{color:#CFD2DD;}
+ .d2-4144856773 .color-N5{color:#DEE1EB;}
+ .d2-4144856773 .color-N6{color:#EEF1F8;}
+ .d2-4144856773 .color-N7{color:#FFFFFF;}
+ .d2-4144856773 .color-B1{color:#0D32B2;}
+ .d2-4144856773 .color-B2{color:#0D32B2;}
+ .d2-4144856773 .color-B3{color:#E3E9FD;}
+ .d2-4144856773 .color-B4{color:#E3E9FD;}
+ .d2-4144856773 .color-B5{color:#EDF0FD;}
+ .d2-4144856773 .color-B6{color:#F7F8FE;}
+ .d2-4144856773 .color-AA2{color:#4A6FF3;}
+ .d2-4144856773 .color-AA4{color:#EDF0FD;}
+ .d2-4144856773 .color-AA5{color:#F7F8FE;}
+ .d2-4144856773 .color-AB4{color:#EDF0FD;}
+ .d2-4144856773 .color-AB5{color:#F7F8FE;}.appendix text.text{fill:#0A0F25}.md{--color-fg-default:#0A0F25;--color-fg-muted:#676C7E;--color-fg-subtle:#9499AB;--color-canvas-default:#FFFFFF;--color-canvas-subtle:#EEF1F8;--color-border-default:#0D32B2;--color-border-muted:#0D32B2;--color-neutral-muted:#EEF1F8;--color-accent-fg:#0D32B2;--color-accent-emphasis:#0D32B2;--color-attention-subtle:#676C7E;--color-danger-fg:red;}.sketch-overlay-B1{fill:url(#streaks-darker);mix-blend-mode:lighten}.sketch-overlay-B2{fill:url(#streaks-darker);mix-blend-mode:lighten}.sketch-overlay-B3{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-B4{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-B5{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-B6{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-AA2{fill:url(#streaks-dark);mix-blend-mode:overlay}.sketch-overlay-AA4{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-AA5{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-AB4{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-AB5{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-N1{fill:url(#streaks-darker);mix-blend-mode:lighten}.sketch-overlay-N2{fill:url(#streaks-dark);mix-blend-mode:overlay}.sketch-overlay-N3{fill:url(#streaks-normal);mix-blend-mode:color-burn}.sketch-overlay-N4{fill:url(#streaks-normal);mix-blend-mode:color-burn}.sketch-overlay-N5{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-N6{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-N7{fill:url(#streaks-bright);mix-blend-mode:darken}.light-code{display: block}.dark-code{display: none}]]>xyz hello
+
+
\ No newline at end of file
diff --git a/e2etests/testdata/themes/origami/dagre/board.exp.json b/e2etests/testdata/themes/origami/dagre/board.exp.json
index d317916d9..a0f45ac09 100644
--- a/e2etests/testdata/themes/origami/dagre/board.exp.json
+++ b/e2etests/testdata/themes/origami/dagre/board.exp.json
@@ -10,7 +10,7 @@
"x": 0,
"y": 275
},
- "width": 351,
+ "width": 399,
"height": 1225,
"opacity": 1,
"strokeDash": 0,
@@ -52,7 +52,7 @@
"x": 95,
"y": 340
},
- "width": 237,
+ "width": 284,
"height": 317,
"opacity": 1,
"strokeDash": 0,
@@ -91,7 +91,7 @@
"id": "network.cell tower.satellites",
"type": "stored_data",
"pos": {
- "x": 161,
+ "x": 185,
"y": 372
},
"width": 104,
@@ -133,7 +133,7 @@
"id": "network.cell tower.transmitter",
"type": "rectangle",
"pos": {
- "x": 161,
+ "x": 185,
"y": 559
},
"width": 104,
@@ -259,7 +259,7 @@
"id": "network.data processor",
"type": "rectangle",
"pos": {
- "x": 121,
+ "x": 145,
"y": 814
},
"width": 184,
@@ -301,7 +301,7 @@
"id": "network.data processor.storage",
"type": "cylinder",
"pos": {
- "x": 161,
+ "x": 185,
"y": 846
},
"width": 104,
@@ -343,7 +343,7 @@
"id": "user",
"type": "person",
"pos": {
- "x": 66,
+ "x": 80,
"y": 0
},
"width": 130,
@@ -385,7 +385,7 @@
"id": "api server",
"type": "rectangle",
"pos": {
- "x": 392,
+ "x": 439,
"y": 1076
},
"width": 153,
@@ -427,7 +427,7 @@
"id": "logs",
"type": "page",
"pos": {
- "x": 426,
+ "x": 474,
"y": 1313
},
"width": 84,
@@ -493,19 +493,19 @@
"labelPercentage": 0,
"route": [
{
- "x": 194,
+ "x": 211,
"y": 439
},
{
- "x": 166,
+ "x": 173.4,
"y": 487
},
{
- "x": 166,
+ "x": 173.4,
"y": 511.2
},
{
- "x": 194,
+ "x": 211,
"y": 560
}
],
@@ -541,19 +541,19 @@
"labelPercentage": 0,
"route": [
{
- "x": 213,
+ "x": 237,
"y": 439
},
{
- "x": 213.2,
+ "x": 237,
"y": 487
},
{
- "x": 213.25,
+ "x": 237,
"y": 511.2
},
{
- "x": 213.25,
+ "x": 237,
"y": 560
}
],
@@ -589,19 +589,19 @@
"labelPercentage": 0,
"route": [
{
- "x": 233,
+ "x": 263,
"y": 439
},
{
- "x": 260.6,
+ "x": 300.6,
"y": 487
},
{
- "x": 260.5,
+ "x": 300.6,
"y": 511.2
},
{
- "x": 232.5,
+ "x": 263,
"y": 560
}
],
@@ -637,31 +637,31 @@
"labelPercentage": 0,
"route": [
{
- "x": 213.25,
+ "x": 237,
"y": 625.5
},
{
- "x": 213.25,
+ "x": 237,
"y": 651.1
},
{
- "x": 213.25,
+ "x": 237,
"y": 669.6
},
{
- "x": 213.25,
+ "x": 237,
"y": 687.75
},
{
- "x": 213.25,
+ "x": 237,
"y": 705.9
},
{
- "x": 213.2,
+ "x": 237,
"y": 792.2
},
{
- "x": 213,
+ "x": 237,
"y": 847
}
],
@@ -697,19 +697,19 @@
"labelPercentage": 0,
"route": [
{
- "x": 152,
+ "x": 169,
"y": 87
},
{
- "x": 201,
+ "x": 223.4,
"y": 156.2
},
{
- "x": 213.25,
+ "x": 237,
"y": 248.2
},
{
- "x": 213.25,
+ "x": 237,
"y": 305
}
],
@@ -745,11 +745,11 @@
"labelPercentage": 0,
"route": [
{
- "x": 116,
+ "x": 126,
"y": 87
},
{
- "x": 83,
+ "x": 85,
"y": 156.2
},
{
@@ -949,12 +949,12 @@
"labelPercentage": 0,
"route": [
{
- "x": 391.75,
- "y": 1129.4949856733524
+ "x": 439.25,
+ "y": 1127.0397225725094
},
{
- "x": 173.75,
- "y": 1187.8989971346705
+ "x": 183.25,
+ "y": 1187.4079445145019
},
{
"x": 116,
@@ -997,19 +997,19 @@
"labelPercentage": 0,
"route": [
{
- "x": 468.25,
+ "x": 515.75,
"y": 1142
},
{
- "x": 468.25,
+ "x": 515.75,
"y": 1190.4
},
{
- "x": 468.2,
+ "x": 515.8,
"y": 1273
},
{
- "x": 468,
+ "x": 516,
"y": 1313
}
],
@@ -1045,20 +1045,20 @@
"labelPercentage": 0,
"route": [
{
- "x": 213.25,
+ "x": 237,
"y": 996.5
},
{
- "x": 213.25,
+ "x": 237,
"y": 1020.1
},
{
- "x": 248.95,
- "y": 1037.62
+ "x": 277.4,
+ "y": 1038
},
{
- "x": 391.75,
- "y": 1084.1
+ "x": 439,
+ "y": 1086
}
],
"isCurve": true,
diff --git a/e2etests/testdata/themes/origami/dagre/sketch.exp.svg b/e2etests/testdata/themes/origami/dagre/sketch.exp.svg
index 56d38cf2e..a580bee19 100644
--- a/e2etests/testdata/themes/origami/dagre/sketch.exp.svg
+++ b/e2etests/testdata/themes/origami/dagre/sketch.exp.svg
@@ -1,23 +1,23 @@
-