diff --git a/e2etests/testdata/regression/arrowhead_sizes_with_labels/dagre/board.exp.json b/e2etests/testdata/regression/arrowhead_sizes_with_labels/dagre/board.exp.json
index fd10e212c6..947959cfaa 100644
--- a/e2etests/testdata/regression/arrowhead_sizes_with_labels/dagre/board.exp.json
+++ b/e2etests/testdata/regression/arrowhead_sizes_with_labels/dagre/board.exp.json
@@ -2264,10 +2264,32 @@
"id": "triangle.(a <-> b)[0]",
"src": "triangle.a",
"srcArrow": "triangle",
- "srcLabel": "1",
+ "srcLabel": {
+ "label": "1",
+ "fontSize": 0,
+ "fontFamily": "",
+ "language": "",
+ "color": "",
+ "italic": false,
+ "bold": false,
+ "underline": false,
+ "labelWidth": 7,
+ "labelHeight": 21
+ },
"dst": "triangle.b",
"dstArrow": "triangle",
- "dstLabel": "1",
+ "dstLabel": {
+ "label": "1",
+ "fontSize": 0,
+ "fontFamily": "",
+ "language": "",
+ "color": "",
+ "italic": false,
+ "bold": false,
+ "underline": false,
+ "labelWidth": 7,
+ "labelHeight": 21
+ },
"opacity": 1,
"strokeDash": 0,
"strokeWidth": 2,
@@ -2313,10 +2335,32 @@
"id": "triangle.(c <-> d)[0]",
"src": "triangle.c",
"srcArrow": "triangle",
- "srcLabel": "1",
+ "srcLabel": {
+ "label": "1",
+ "fontSize": 0,
+ "fontFamily": "",
+ "language": "",
+ "color": "",
+ "italic": false,
+ "bold": false,
+ "underline": false,
+ "labelWidth": 7,
+ "labelHeight": 21
+ },
"dst": "triangle.d",
"dstArrow": "triangle",
- "dstLabel": "1",
+ "dstLabel": {
+ "label": "1",
+ "fontSize": 0,
+ "fontFamily": "",
+ "language": "",
+ "color": "",
+ "italic": false,
+ "bold": false,
+ "underline": false,
+ "labelWidth": 7,
+ "labelHeight": 21
+ },
"opacity": 1,
"strokeDash": 0,
"strokeWidth": 8,
@@ -2362,10 +2406,32 @@
"id": "none.(a -- b)[0]",
"src": "none.a",
"srcArrow": "none",
- "srcLabel": "1",
+ "srcLabel": {
+ "label": "1",
+ "fontSize": 0,
+ "fontFamily": "",
+ "language": "",
+ "color": "",
+ "italic": false,
+ "bold": false,
+ "underline": false,
+ "labelWidth": 7,
+ "labelHeight": 21
+ },
"dst": "none.b",
"dstArrow": "none",
- "dstLabel": "1",
+ "dstLabel": {
+ "label": "1",
+ "fontSize": 0,
+ "fontFamily": "",
+ "language": "",
+ "color": "",
+ "italic": false,
+ "bold": false,
+ "underline": false,
+ "labelWidth": 7,
+ "labelHeight": 21
+ },
"opacity": 1,
"strokeDash": 0,
"strokeWidth": 2,
@@ -2411,10 +2477,32 @@
"id": "none.(c -- d)[0]",
"src": "none.c",
"srcArrow": "none",
- "srcLabel": "1",
+ "srcLabel": {
+ "label": "1",
+ "fontSize": 0,
+ "fontFamily": "",
+ "language": "",
+ "color": "",
+ "italic": false,
+ "bold": false,
+ "underline": false,
+ "labelWidth": 7,
+ "labelHeight": 21
+ },
"dst": "none.d",
"dstArrow": "none",
- "dstLabel": "1",
+ "dstLabel": {
+ "label": "1",
+ "fontSize": 0,
+ "fontFamily": "",
+ "language": "",
+ "color": "",
+ "italic": false,
+ "bold": false,
+ "underline": false,
+ "labelWidth": 7,
+ "labelHeight": 21
+ },
"opacity": 1,
"strokeDash": 0,
"strokeWidth": 8,
@@ -2460,10 +2548,32 @@
"id": "arrow.(a <-> b)[0]",
"src": "arrow.a",
"srcArrow": "arrow",
- "srcLabel": "1",
+ "srcLabel": {
+ "label": "1",
+ "fontSize": 0,
+ "fontFamily": "",
+ "language": "",
+ "color": "",
+ "italic": false,
+ "bold": false,
+ "underline": false,
+ "labelWidth": 7,
+ "labelHeight": 21
+ },
"dst": "arrow.b",
"dstArrow": "arrow",
- "dstLabel": "1",
+ "dstLabel": {
+ "label": "1",
+ "fontSize": 0,
+ "fontFamily": "",
+ "language": "",
+ "color": "",
+ "italic": false,
+ "bold": false,
+ "underline": false,
+ "labelWidth": 7,
+ "labelHeight": 21
+ },
"opacity": 1,
"strokeDash": 0,
"strokeWidth": 2,
@@ -2509,10 +2619,32 @@
"id": "arrow.(c <-> d)[0]",
"src": "arrow.c",
"srcArrow": "arrow",
- "srcLabel": "1",
+ "srcLabel": {
+ "label": "1",
+ "fontSize": 0,
+ "fontFamily": "",
+ "language": "",
+ "color": "",
+ "italic": false,
+ "bold": false,
+ "underline": false,
+ "labelWidth": 7,
+ "labelHeight": 21
+ },
"dst": "arrow.d",
"dstArrow": "arrow",
- "dstLabel": "1",
+ "dstLabel": {
+ "label": "1",
+ "fontSize": 0,
+ "fontFamily": "",
+ "language": "",
+ "color": "",
+ "italic": false,
+ "bold": false,
+ "underline": false,
+ "labelWidth": 7,
+ "labelHeight": 21
+ },
"opacity": 1,
"strokeDash": 0,
"strokeWidth": 8,
@@ -2558,10 +2690,32 @@
"id": "diamond.(a <-> b)[0]",
"src": "diamond.a",
"srcArrow": "diamond",
- "srcLabel": "1",
+ "srcLabel": {
+ "label": "1",
+ "fontSize": 0,
+ "fontFamily": "",
+ "language": "",
+ "color": "",
+ "italic": false,
+ "bold": false,
+ "underline": false,
+ "labelWidth": 7,
+ "labelHeight": 21
+ },
"dst": "diamond.b",
"dstArrow": "diamond",
- "dstLabel": "1",
+ "dstLabel": {
+ "label": "1",
+ "fontSize": 0,
+ "fontFamily": "",
+ "language": "",
+ "color": "",
+ "italic": false,
+ "bold": false,
+ "underline": false,
+ "labelWidth": 7,
+ "labelHeight": 21
+ },
"opacity": 1,
"strokeDash": 0,
"strokeWidth": 2,
@@ -2607,10 +2761,32 @@
"id": "diamond.(c <-> d)[0]",
"src": "diamond.c",
"srcArrow": "diamond",
- "srcLabel": "1",
+ "srcLabel": {
+ "label": "1",
+ "fontSize": 0,
+ "fontFamily": "",
+ "language": "",
+ "color": "",
+ "italic": false,
+ "bold": false,
+ "underline": false,
+ "labelWidth": 7,
+ "labelHeight": 21
+ },
"dst": "diamond.d",
"dstArrow": "diamond",
- "dstLabel": "1",
+ "dstLabel": {
+ "label": "1",
+ "fontSize": 0,
+ "fontFamily": "",
+ "language": "",
+ "color": "",
+ "italic": false,
+ "bold": false,
+ "underline": false,
+ "labelWidth": 7,
+ "labelHeight": 21
+ },
"opacity": 1,
"strokeDash": 0,
"strokeWidth": 8,
@@ -2656,10 +2832,32 @@
"id": "filled diamond.(a <-> b)[0]",
"src": "filled diamond.a",
"srcArrow": "filled-diamond",
- "srcLabel": "1",
+ "srcLabel": {
+ "label": "1",
+ "fontSize": 0,
+ "fontFamily": "",
+ "language": "",
+ "color": "",
+ "italic": false,
+ "bold": false,
+ "underline": false,
+ "labelWidth": 7,
+ "labelHeight": 21
+ },
"dst": "filled diamond.b",
"dstArrow": "filled-diamond",
- "dstLabel": "1",
+ "dstLabel": {
+ "label": "1",
+ "fontSize": 0,
+ "fontFamily": "",
+ "language": "",
+ "color": "",
+ "italic": false,
+ "bold": false,
+ "underline": false,
+ "labelWidth": 7,
+ "labelHeight": 21
+ },
"opacity": 1,
"strokeDash": 0,
"strokeWidth": 2,
@@ -2705,10 +2903,32 @@
"id": "filled diamond.(c <-> d)[0]",
"src": "filled diamond.c",
"srcArrow": "filled-diamond",
- "srcLabel": "1",
+ "srcLabel": {
+ "label": "1",
+ "fontSize": 0,
+ "fontFamily": "",
+ "language": "",
+ "color": "",
+ "italic": false,
+ "bold": false,
+ "underline": false,
+ "labelWidth": 7,
+ "labelHeight": 21
+ },
"dst": "filled diamond.d",
"dstArrow": "filled-diamond",
- "dstLabel": "1",
+ "dstLabel": {
+ "label": "1",
+ "fontSize": 0,
+ "fontFamily": "",
+ "language": "",
+ "color": "",
+ "italic": false,
+ "bold": false,
+ "underline": false,
+ "labelWidth": 7,
+ "labelHeight": 21
+ },
"opacity": 1,
"strokeDash": 0,
"strokeWidth": 8,
@@ -2754,10 +2974,32 @@
"id": "circle.(a <-> b)[0]",
"src": "circle.a",
"srcArrow": "circle",
- "srcLabel": "1",
+ "srcLabel": {
+ "label": "1",
+ "fontSize": 0,
+ "fontFamily": "",
+ "language": "",
+ "color": "",
+ "italic": false,
+ "bold": false,
+ "underline": false,
+ "labelWidth": 7,
+ "labelHeight": 21
+ },
"dst": "circle.b",
"dstArrow": "circle",
- "dstLabel": "1",
+ "dstLabel": {
+ "label": "1",
+ "fontSize": 0,
+ "fontFamily": "",
+ "language": "",
+ "color": "",
+ "italic": false,
+ "bold": false,
+ "underline": false,
+ "labelWidth": 7,
+ "labelHeight": 21
+ },
"opacity": 1,
"strokeDash": 0,
"strokeWidth": 2,
@@ -2803,10 +3045,32 @@
"id": "circle.(c <-> d)[0]",
"src": "circle.c",
"srcArrow": "circle",
- "srcLabel": "1",
+ "srcLabel": {
+ "label": "1",
+ "fontSize": 0,
+ "fontFamily": "",
+ "language": "",
+ "color": "",
+ "italic": false,
+ "bold": false,
+ "underline": false,
+ "labelWidth": 7,
+ "labelHeight": 21
+ },
"dst": "circle.d",
"dstArrow": "circle",
- "dstLabel": "1",
+ "dstLabel": {
+ "label": "1",
+ "fontSize": 0,
+ "fontFamily": "",
+ "language": "",
+ "color": "",
+ "italic": false,
+ "bold": false,
+ "underline": false,
+ "labelWidth": 7,
+ "labelHeight": 21
+ },
"opacity": 1,
"strokeDash": 0,
"strokeWidth": 8,
@@ -2852,10 +3116,32 @@
"id": "filled circle.(a <-> b)[0]",
"src": "filled circle.a",
"srcArrow": "filled-circle",
- "srcLabel": "1",
+ "srcLabel": {
+ "label": "1",
+ "fontSize": 0,
+ "fontFamily": "",
+ "language": "",
+ "color": "",
+ "italic": false,
+ "bold": false,
+ "underline": false,
+ "labelWidth": 7,
+ "labelHeight": 21
+ },
"dst": "filled circle.b",
"dstArrow": "filled-circle",
- "dstLabel": "1",
+ "dstLabel": {
+ "label": "1",
+ "fontSize": 0,
+ "fontFamily": "",
+ "language": "",
+ "color": "",
+ "italic": false,
+ "bold": false,
+ "underline": false,
+ "labelWidth": 7,
+ "labelHeight": 21
+ },
"opacity": 1,
"strokeDash": 0,
"strokeWidth": 2,
@@ -2901,10 +3187,32 @@
"id": "filled circle.(c <-> d)[0]",
"src": "filled circle.c",
"srcArrow": "filled-circle",
- "srcLabel": "1",
+ "srcLabel": {
+ "label": "1",
+ "fontSize": 0,
+ "fontFamily": "",
+ "language": "",
+ "color": "",
+ "italic": false,
+ "bold": false,
+ "underline": false,
+ "labelWidth": 7,
+ "labelHeight": 21
+ },
"dst": "filled circle.d",
"dstArrow": "filled-circle",
- "dstLabel": "1",
+ "dstLabel": {
+ "label": "1",
+ "fontSize": 0,
+ "fontFamily": "",
+ "language": "",
+ "color": "",
+ "italic": false,
+ "bold": false,
+ "underline": false,
+ "labelWidth": 7,
+ "labelHeight": 21
+ },
"opacity": 1,
"strokeDash": 0,
"strokeWidth": 8,
@@ -2950,10 +3258,32 @@
"id": "cf one.(a <-> b)[0]",
"src": "cf one.a",
"srcArrow": "cf-one",
- "srcLabel": "1",
+ "srcLabel": {
+ "label": "1",
+ "fontSize": 0,
+ "fontFamily": "",
+ "language": "",
+ "color": "",
+ "italic": false,
+ "bold": false,
+ "underline": false,
+ "labelWidth": 7,
+ "labelHeight": 21
+ },
"dst": "cf one.b",
"dstArrow": "cf-one",
- "dstLabel": "1",
+ "dstLabel": {
+ "label": "1",
+ "fontSize": 0,
+ "fontFamily": "",
+ "language": "",
+ "color": "",
+ "italic": false,
+ "bold": false,
+ "underline": false,
+ "labelWidth": 7,
+ "labelHeight": 21
+ },
"opacity": 1,
"strokeDash": 0,
"strokeWidth": 2,
@@ -2999,10 +3329,32 @@
"id": "cf one.(c <-> d)[0]",
"src": "cf one.c",
"srcArrow": "cf-one",
- "srcLabel": "1",
+ "srcLabel": {
+ "label": "1",
+ "fontSize": 0,
+ "fontFamily": "",
+ "language": "",
+ "color": "",
+ "italic": false,
+ "bold": false,
+ "underline": false,
+ "labelWidth": 7,
+ "labelHeight": 21
+ },
"dst": "cf one.d",
"dstArrow": "cf-one",
- "dstLabel": "1",
+ "dstLabel": {
+ "label": "1",
+ "fontSize": 0,
+ "fontFamily": "",
+ "language": "",
+ "color": "",
+ "italic": false,
+ "bold": false,
+ "underline": false,
+ "labelWidth": 7,
+ "labelHeight": 21
+ },
"opacity": 1,
"strokeDash": 0,
"strokeWidth": 8,
@@ -3048,10 +3400,32 @@
"id": "cf one required.(a <-> b)[0]",
"src": "cf one required.a",
"srcArrow": "cf-one-required",
- "srcLabel": "1",
+ "srcLabel": {
+ "label": "1",
+ "fontSize": 0,
+ "fontFamily": "",
+ "language": "",
+ "color": "",
+ "italic": false,
+ "bold": false,
+ "underline": false,
+ "labelWidth": 7,
+ "labelHeight": 21
+ },
"dst": "cf one required.b",
"dstArrow": "cf-one-required",
- "dstLabel": "1",
+ "dstLabel": {
+ "label": "1",
+ "fontSize": 0,
+ "fontFamily": "",
+ "language": "",
+ "color": "",
+ "italic": false,
+ "bold": false,
+ "underline": false,
+ "labelWidth": 7,
+ "labelHeight": 21
+ },
"opacity": 1,
"strokeDash": 0,
"strokeWidth": 2,
@@ -3097,10 +3471,32 @@
"id": "cf one required.(c <-> d)[0]",
"src": "cf one required.c",
"srcArrow": "cf-one-required",
- "srcLabel": "1",
+ "srcLabel": {
+ "label": "1",
+ "fontSize": 0,
+ "fontFamily": "",
+ "language": "",
+ "color": "",
+ "italic": false,
+ "bold": false,
+ "underline": false,
+ "labelWidth": 7,
+ "labelHeight": 21
+ },
"dst": "cf one required.d",
"dstArrow": "cf-one-required",
- "dstLabel": "1",
+ "dstLabel": {
+ "label": "1",
+ "fontSize": 0,
+ "fontFamily": "",
+ "language": "",
+ "color": "",
+ "italic": false,
+ "bold": false,
+ "underline": false,
+ "labelWidth": 7,
+ "labelHeight": 21
+ },
"opacity": 1,
"strokeDash": 0,
"strokeWidth": 8,
@@ -3146,10 +3542,32 @@
"id": "cf many.(a <-> b)[0]",
"src": "cf many.a",
"srcArrow": "cf-many",
- "srcLabel": "1",
+ "srcLabel": {
+ "label": "1",
+ "fontSize": 0,
+ "fontFamily": "",
+ "language": "",
+ "color": "",
+ "italic": false,
+ "bold": false,
+ "underline": false,
+ "labelWidth": 7,
+ "labelHeight": 21
+ },
"dst": "cf many.b",
"dstArrow": "cf-many",
- "dstLabel": "1",
+ "dstLabel": {
+ "label": "1",
+ "fontSize": 0,
+ "fontFamily": "",
+ "language": "",
+ "color": "",
+ "italic": false,
+ "bold": false,
+ "underline": false,
+ "labelWidth": 7,
+ "labelHeight": 21
+ },
"opacity": 1,
"strokeDash": 0,
"strokeWidth": 2,
@@ -3195,10 +3613,32 @@
"id": "cf many.(c <-> d)[0]",
"src": "cf many.c",
"srcArrow": "cf-many",
- "srcLabel": "1",
+ "srcLabel": {
+ "label": "1",
+ "fontSize": 0,
+ "fontFamily": "",
+ "language": "",
+ "color": "",
+ "italic": false,
+ "bold": false,
+ "underline": false,
+ "labelWidth": 7,
+ "labelHeight": 21
+ },
"dst": "cf many.d",
"dstArrow": "cf-many",
- "dstLabel": "1",
+ "dstLabel": {
+ "label": "1",
+ "fontSize": 0,
+ "fontFamily": "",
+ "language": "",
+ "color": "",
+ "italic": false,
+ "bold": false,
+ "underline": false,
+ "labelWidth": 7,
+ "labelHeight": 21
+ },
"opacity": 1,
"strokeDash": 0,
"strokeWidth": 8,
@@ -3244,10 +3684,32 @@
"id": "cf many required.(a <-> b)[0]",
"src": "cf many required.a",
"srcArrow": "cf-many-required",
- "srcLabel": "1",
+ "srcLabel": {
+ "label": "1",
+ "fontSize": 0,
+ "fontFamily": "",
+ "language": "",
+ "color": "",
+ "italic": false,
+ "bold": false,
+ "underline": false,
+ "labelWidth": 7,
+ "labelHeight": 21
+ },
"dst": "cf many required.b",
"dstArrow": "cf-many-required",
- "dstLabel": "1",
+ "dstLabel": {
+ "label": "1",
+ "fontSize": 0,
+ "fontFamily": "",
+ "language": "",
+ "color": "",
+ "italic": false,
+ "bold": false,
+ "underline": false,
+ "labelWidth": 7,
+ "labelHeight": 21
+ },
"opacity": 1,
"strokeDash": 0,
"strokeWidth": 2,
@@ -3293,10 +3755,32 @@
"id": "cf many required.(c <-> d)[0]",
"src": "cf many required.c",
"srcArrow": "cf-many-required",
- "srcLabel": "1",
+ "srcLabel": {
+ "label": "1",
+ "fontSize": 0,
+ "fontFamily": "",
+ "language": "",
+ "color": "",
+ "italic": false,
+ "bold": false,
+ "underline": false,
+ "labelWidth": 7,
+ "labelHeight": 21
+ },
"dst": "cf many required.d",
"dstArrow": "cf-many-required",
- "dstLabel": "1",
+ "dstLabel": {
+ "label": "1",
+ "fontSize": 0,
+ "fontFamily": "",
+ "language": "",
+ "color": "",
+ "italic": false,
+ "bold": false,
+ "underline": false,
+ "labelWidth": 7,
+ "labelHeight": 21
+ },
"opacity": 1,
"strokeDash": 0,
"strokeWidth": 8,
diff --git a/e2etests/testdata/regression/arrowhead_sizes_with_labels/dagre/sketch.exp.svg b/e2etests/testdata/regression/arrowhead_sizes_with_labels/dagre/sketch.exp.svg
index 0f23374583..f2b98c63e6 100644
--- a/e2etests/testdata/regression/arrowhead_sizes_with_labels/dagre/sketch.exp.svg
+++ b/e2etests/testdata/regression/arrowhead_sizes_with_labels/dagre/sketch.exp.svg
@@ -1,23 +1,23 @@
-
\ No newline at end of file
diff --git a/e2etests/testdata/regression/arrowhead_sizes_with_labels/elk/board.exp.json b/e2etests/testdata/regression/arrowhead_sizes_with_labels/elk/board.exp.json
index 89071bf04d..dc82ea5289 100644
--- a/e2etests/testdata/regression/arrowhead_sizes_with_labels/elk/board.exp.json
+++ b/e2etests/testdata/regression/arrowhead_sizes_with_labels/elk/board.exp.json
@@ -2264,10 +2264,32 @@
"id": "triangle.(a <-> b)[0]",
"src": "triangle.a",
"srcArrow": "triangle",
- "srcLabel": "1",
+ "srcLabel": {
+ "label": "1",
+ "fontSize": 0,
+ "fontFamily": "",
+ "language": "",
+ "color": "",
+ "italic": false,
+ "bold": false,
+ "underline": false,
+ "labelWidth": 7,
+ "labelHeight": 21
+ },
"dst": "triangle.b",
"dstArrow": "triangle",
- "dstLabel": "1",
+ "dstLabel": {
+ "label": "1",
+ "fontSize": 0,
+ "fontFamily": "",
+ "language": "",
+ "color": "",
+ "italic": false,
+ "bold": false,
+ "underline": false,
+ "labelWidth": 7,
+ "labelHeight": 21
+ },
"opacity": 1,
"strokeDash": 0,
"strokeWidth": 2,
@@ -2304,10 +2326,32 @@
"id": "triangle.(c <-> d)[0]",
"src": "triangle.c",
"srcArrow": "triangle",
- "srcLabel": "1",
+ "srcLabel": {
+ "label": "1",
+ "fontSize": 0,
+ "fontFamily": "",
+ "language": "",
+ "color": "",
+ "italic": false,
+ "bold": false,
+ "underline": false,
+ "labelWidth": 7,
+ "labelHeight": 21
+ },
"dst": "triangle.d",
"dstArrow": "triangle",
- "dstLabel": "1",
+ "dstLabel": {
+ "label": "1",
+ "fontSize": 0,
+ "fontFamily": "",
+ "language": "",
+ "color": "",
+ "italic": false,
+ "bold": false,
+ "underline": false,
+ "labelWidth": 7,
+ "labelHeight": 21
+ },
"opacity": 1,
"strokeDash": 0,
"strokeWidth": 8,
@@ -2344,10 +2388,32 @@
"id": "none.(a -- b)[0]",
"src": "none.a",
"srcArrow": "none",
- "srcLabel": "1",
+ "srcLabel": {
+ "label": "1",
+ "fontSize": 0,
+ "fontFamily": "",
+ "language": "",
+ "color": "",
+ "italic": false,
+ "bold": false,
+ "underline": false,
+ "labelWidth": 7,
+ "labelHeight": 21
+ },
"dst": "none.b",
"dstArrow": "none",
- "dstLabel": "1",
+ "dstLabel": {
+ "label": "1",
+ "fontSize": 0,
+ "fontFamily": "",
+ "language": "",
+ "color": "",
+ "italic": false,
+ "bold": false,
+ "underline": false,
+ "labelWidth": 7,
+ "labelHeight": 21
+ },
"opacity": 1,
"strokeDash": 0,
"strokeWidth": 2,
@@ -2384,10 +2450,32 @@
"id": "none.(c -- d)[0]",
"src": "none.c",
"srcArrow": "none",
- "srcLabel": "1",
+ "srcLabel": {
+ "label": "1",
+ "fontSize": 0,
+ "fontFamily": "",
+ "language": "",
+ "color": "",
+ "italic": false,
+ "bold": false,
+ "underline": false,
+ "labelWidth": 7,
+ "labelHeight": 21
+ },
"dst": "none.d",
"dstArrow": "none",
- "dstLabel": "1",
+ "dstLabel": {
+ "label": "1",
+ "fontSize": 0,
+ "fontFamily": "",
+ "language": "",
+ "color": "",
+ "italic": false,
+ "bold": false,
+ "underline": false,
+ "labelWidth": 7,
+ "labelHeight": 21
+ },
"opacity": 1,
"strokeDash": 0,
"strokeWidth": 8,
@@ -2424,10 +2512,32 @@
"id": "arrow.(a <-> b)[0]",
"src": "arrow.a",
"srcArrow": "arrow",
- "srcLabel": "1",
+ "srcLabel": {
+ "label": "1",
+ "fontSize": 0,
+ "fontFamily": "",
+ "language": "",
+ "color": "",
+ "italic": false,
+ "bold": false,
+ "underline": false,
+ "labelWidth": 7,
+ "labelHeight": 21
+ },
"dst": "arrow.b",
"dstArrow": "arrow",
- "dstLabel": "1",
+ "dstLabel": {
+ "label": "1",
+ "fontSize": 0,
+ "fontFamily": "",
+ "language": "",
+ "color": "",
+ "italic": false,
+ "bold": false,
+ "underline": false,
+ "labelWidth": 7,
+ "labelHeight": 21
+ },
"opacity": 1,
"strokeDash": 0,
"strokeWidth": 2,
@@ -2464,10 +2574,32 @@
"id": "arrow.(c <-> d)[0]",
"src": "arrow.c",
"srcArrow": "arrow",
- "srcLabel": "1",
+ "srcLabel": {
+ "label": "1",
+ "fontSize": 0,
+ "fontFamily": "",
+ "language": "",
+ "color": "",
+ "italic": false,
+ "bold": false,
+ "underline": false,
+ "labelWidth": 7,
+ "labelHeight": 21
+ },
"dst": "arrow.d",
"dstArrow": "arrow",
- "dstLabel": "1",
+ "dstLabel": {
+ "label": "1",
+ "fontSize": 0,
+ "fontFamily": "",
+ "language": "",
+ "color": "",
+ "italic": false,
+ "bold": false,
+ "underline": false,
+ "labelWidth": 7,
+ "labelHeight": 21
+ },
"opacity": 1,
"strokeDash": 0,
"strokeWidth": 8,
@@ -2504,10 +2636,32 @@
"id": "diamond.(a <-> b)[0]",
"src": "diamond.a",
"srcArrow": "diamond",
- "srcLabel": "1",
+ "srcLabel": {
+ "label": "1",
+ "fontSize": 0,
+ "fontFamily": "",
+ "language": "",
+ "color": "",
+ "italic": false,
+ "bold": false,
+ "underline": false,
+ "labelWidth": 7,
+ "labelHeight": 21
+ },
"dst": "diamond.b",
"dstArrow": "diamond",
- "dstLabel": "1",
+ "dstLabel": {
+ "label": "1",
+ "fontSize": 0,
+ "fontFamily": "",
+ "language": "",
+ "color": "",
+ "italic": false,
+ "bold": false,
+ "underline": false,
+ "labelWidth": 7,
+ "labelHeight": 21
+ },
"opacity": 1,
"strokeDash": 0,
"strokeWidth": 2,
@@ -2544,10 +2698,32 @@
"id": "diamond.(c <-> d)[0]",
"src": "diamond.c",
"srcArrow": "diamond",
- "srcLabel": "1",
+ "srcLabel": {
+ "label": "1",
+ "fontSize": 0,
+ "fontFamily": "",
+ "language": "",
+ "color": "",
+ "italic": false,
+ "bold": false,
+ "underline": false,
+ "labelWidth": 7,
+ "labelHeight": 21
+ },
"dst": "diamond.d",
"dstArrow": "diamond",
- "dstLabel": "1",
+ "dstLabel": {
+ "label": "1",
+ "fontSize": 0,
+ "fontFamily": "",
+ "language": "",
+ "color": "",
+ "italic": false,
+ "bold": false,
+ "underline": false,
+ "labelWidth": 7,
+ "labelHeight": 21
+ },
"opacity": 1,
"strokeDash": 0,
"strokeWidth": 8,
@@ -2584,10 +2760,32 @@
"id": "filled diamond.(a <-> b)[0]",
"src": "filled diamond.a",
"srcArrow": "filled-diamond",
- "srcLabel": "1",
+ "srcLabel": {
+ "label": "1",
+ "fontSize": 0,
+ "fontFamily": "",
+ "language": "",
+ "color": "",
+ "italic": false,
+ "bold": false,
+ "underline": false,
+ "labelWidth": 7,
+ "labelHeight": 21
+ },
"dst": "filled diamond.b",
"dstArrow": "filled-diamond",
- "dstLabel": "1",
+ "dstLabel": {
+ "label": "1",
+ "fontSize": 0,
+ "fontFamily": "",
+ "language": "",
+ "color": "",
+ "italic": false,
+ "bold": false,
+ "underline": false,
+ "labelWidth": 7,
+ "labelHeight": 21
+ },
"opacity": 1,
"strokeDash": 0,
"strokeWidth": 2,
@@ -2624,10 +2822,32 @@
"id": "filled diamond.(c <-> d)[0]",
"src": "filled diamond.c",
"srcArrow": "filled-diamond",
- "srcLabel": "1",
+ "srcLabel": {
+ "label": "1",
+ "fontSize": 0,
+ "fontFamily": "",
+ "language": "",
+ "color": "",
+ "italic": false,
+ "bold": false,
+ "underline": false,
+ "labelWidth": 7,
+ "labelHeight": 21
+ },
"dst": "filled diamond.d",
"dstArrow": "filled-diamond",
- "dstLabel": "1",
+ "dstLabel": {
+ "label": "1",
+ "fontSize": 0,
+ "fontFamily": "",
+ "language": "",
+ "color": "",
+ "italic": false,
+ "bold": false,
+ "underline": false,
+ "labelWidth": 7,
+ "labelHeight": 21
+ },
"opacity": 1,
"strokeDash": 0,
"strokeWidth": 8,
@@ -2664,10 +2884,32 @@
"id": "circle.(a <-> b)[0]",
"src": "circle.a",
"srcArrow": "circle",
- "srcLabel": "1",
+ "srcLabel": {
+ "label": "1",
+ "fontSize": 0,
+ "fontFamily": "",
+ "language": "",
+ "color": "",
+ "italic": false,
+ "bold": false,
+ "underline": false,
+ "labelWidth": 7,
+ "labelHeight": 21
+ },
"dst": "circle.b",
"dstArrow": "circle",
- "dstLabel": "1",
+ "dstLabel": {
+ "label": "1",
+ "fontSize": 0,
+ "fontFamily": "",
+ "language": "",
+ "color": "",
+ "italic": false,
+ "bold": false,
+ "underline": false,
+ "labelWidth": 7,
+ "labelHeight": 21
+ },
"opacity": 1,
"strokeDash": 0,
"strokeWidth": 2,
@@ -2704,10 +2946,32 @@
"id": "circle.(c <-> d)[0]",
"src": "circle.c",
"srcArrow": "circle",
- "srcLabel": "1",
+ "srcLabel": {
+ "label": "1",
+ "fontSize": 0,
+ "fontFamily": "",
+ "language": "",
+ "color": "",
+ "italic": false,
+ "bold": false,
+ "underline": false,
+ "labelWidth": 7,
+ "labelHeight": 21
+ },
"dst": "circle.d",
"dstArrow": "circle",
- "dstLabel": "1",
+ "dstLabel": {
+ "label": "1",
+ "fontSize": 0,
+ "fontFamily": "",
+ "language": "",
+ "color": "",
+ "italic": false,
+ "bold": false,
+ "underline": false,
+ "labelWidth": 7,
+ "labelHeight": 21
+ },
"opacity": 1,
"strokeDash": 0,
"strokeWidth": 8,
@@ -2744,10 +3008,32 @@
"id": "filled circle.(a <-> b)[0]",
"src": "filled circle.a",
"srcArrow": "filled-circle",
- "srcLabel": "1",
+ "srcLabel": {
+ "label": "1",
+ "fontSize": 0,
+ "fontFamily": "",
+ "language": "",
+ "color": "",
+ "italic": false,
+ "bold": false,
+ "underline": false,
+ "labelWidth": 7,
+ "labelHeight": 21
+ },
"dst": "filled circle.b",
"dstArrow": "filled-circle",
- "dstLabel": "1",
+ "dstLabel": {
+ "label": "1",
+ "fontSize": 0,
+ "fontFamily": "",
+ "language": "",
+ "color": "",
+ "italic": false,
+ "bold": false,
+ "underline": false,
+ "labelWidth": 7,
+ "labelHeight": 21
+ },
"opacity": 1,
"strokeDash": 0,
"strokeWidth": 2,
@@ -2784,10 +3070,32 @@
"id": "filled circle.(c <-> d)[0]",
"src": "filled circle.c",
"srcArrow": "filled-circle",
- "srcLabel": "1",
+ "srcLabel": {
+ "label": "1",
+ "fontSize": 0,
+ "fontFamily": "",
+ "language": "",
+ "color": "",
+ "italic": false,
+ "bold": false,
+ "underline": false,
+ "labelWidth": 7,
+ "labelHeight": 21
+ },
"dst": "filled circle.d",
"dstArrow": "filled-circle",
- "dstLabel": "1",
+ "dstLabel": {
+ "label": "1",
+ "fontSize": 0,
+ "fontFamily": "",
+ "language": "",
+ "color": "",
+ "italic": false,
+ "bold": false,
+ "underline": false,
+ "labelWidth": 7,
+ "labelHeight": 21
+ },
"opacity": 1,
"strokeDash": 0,
"strokeWidth": 8,
@@ -2824,10 +3132,32 @@
"id": "cf one.(a <-> b)[0]",
"src": "cf one.a",
"srcArrow": "cf-one",
- "srcLabel": "1",
+ "srcLabel": {
+ "label": "1",
+ "fontSize": 0,
+ "fontFamily": "",
+ "language": "",
+ "color": "",
+ "italic": false,
+ "bold": false,
+ "underline": false,
+ "labelWidth": 7,
+ "labelHeight": 21
+ },
"dst": "cf one.b",
"dstArrow": "cf-one",
- "dstLabel": "1",
+ "dstLabel": {
+ "label": "1",
+ "fontSize": 0,
+ "fontFamily": "",
+ "language": "",
+ "color": "",
+ "italic": false,
+ "bold": false,
+ "underline": false,
+ "labelWidth": 7,
+ "labelHeight": 21
+ },
"opacity": 1,
"strokeDash": 0,
"strokeWidth": 2,
@@ -2864,10 +3194,32 @@
"id": "cf one.(c <-> d)[0]",
"src": "cf one.c",
"srcArrow": "cf-one",
- "srcLabel": "1",
+ "srcLabel": {
+ "label": "1",
+ "fontSize": 0,
+ "fontFamily": "",
+ "language": "",
+ "color": "",
+ "italic": false,
+ "bold": false,
+ "underline": false,
+ "labelWidth": 7,
+ "labelHeight": 21
+ },
"dst": "cf one.d",
"dstArrow": "cf-one",
- "dstLabel": "1",
+ "dstLabel": {
+ "label": "1",
+ "fontSize": 0,
+ "fontFamily": "",
+ "language": "",
+ "color": "",
+ "italic": false,
+ "bold": false,
+ "underline": false,
+ "labelWidth": 7,
+ "labelHeight": 21
+ },
"opacity": 1,
"strokeDash": 0,
"strokeWidth": 8,
@@ -2904,10 +3256,32 @@
"id": "cf one required.(a <-> b)[0]",
"src": "cf one required.a",
"srcArrow": "cf-one-required",
- "srcLabel": "1",
+ "srcLabel": {
+ "label": "1",
+ "fontSize": 0,
+ "fontFamily": "",
+ "language": "",
+ "color": "",
+ "italic": false,
+ "bold": false,
+ "underline": false,
+ "labelWidth": 7,
+ "labelHeight": 21
+ },
"dst": "cf one required.b",
"dstArrow": "cf-one-required",
- "dstLabel": "1",
+ "dstLabel": {
+ "label": "1",
+ "fontSize": 0,
+ "fontFamily": "",
+ "language": "",
+ "color": "",
+ "italic": false,
+ "bold": false,
+ "underline": false,
+ "labelWidth": 7,
+ "labelHeight": 21
+ },
"opacity": 1,
"strokeDash": 0,
"strokeWidth": 2,
@@ -2944,10 +3318,32 @@
"id": "cf one required.(c <-> d)[0]",
"src": "cf one required.c",
"srcArrow": "cf-one-required",
- "srcLabel": "1",
+ "srcLabel": {
+ "label": "1",
+ "fontSize": 0,
+ "fontFamily": "",
+ "language": "",
+ "color": "",
+ "italic": false,
+ "bold": false,
+ "underline": false,
+ "labelWidth": 7,
+ "labelHeight": 21
+ },
"dst": "cf one required.d",
"dstArrow": "cf-one-required",
- "dstLabel": "1",
+ "dstLabel": {
+ "label": "1",
+ "fontSize": 0,
+ "fontFamily": "",
+ "language": "",
+ "color": "",
+ "italic": false,
+ "bold": false,
+ "underline": false,
+ "labelWidth": 7,
+ "labelHeight": 21
+ },
"opacity": 1,
"strokeDash": 0,
"strokeWidth": 8,
@@ -2984,10 +3380,32 @@
"id": "cf many.(a <-> b)[0]",
"src": "cf many.a",
"srcArrow": "cf-many",
- "srcLabel": "1",
+ "srcLabel": {
+ "label": "1",
+ "fontSize": 0,
+ "fontFamily": "",
+ "language": "",
+ "color": "",
+ "italic": false,
+ "bold": false,
+ "underline": false,
+ "labelWidth": 7,
+ "labelHeight": 21
+ },
"dst": "cf many.b",
"dstArrow": "cf-many",
- "dstLabel": "1",
+ "dstLabel": {
+ "label": "1",
+ "fontSize": 0,
+ "fontFamily": "",
+ "language": "",
+ "color": "",
+ "italic": false,
+ "bold": false,
+ "underline": false,
+ "labelWidth": 7,
+ "labelHeight": 21
+ },
"opacity": 1,
"strokeDash": 0,
"strokeWidth": 2,
@@ -3024,10 +3442,32 @@
"id": "cf many.(c <-> d)[0]",
"src": "cf many.c",
"srcArrow": "cf-many",
- "srcLabel": "1",
+ "srcLabel": {
+ "label": "1",
+ "fontSize": 0,
+ "fontFamily": "",
+ "language": "",
+ "color": "",
+ "italic": false,
+ "bold": false,
+ "underline": false,
+ "labelWidth": 7,
+ "labelHeight": 21
+ },
"dst": "cf many.d",
"dstArrow": "cf-many",
- "dstLabel": "1",
+ "dstLabel": {
+ "label": "1",
+ "fontSize": 0,
+ "fontFamily": "",
+ "language": "",
+ "color": "",
+ "italic": false,
+ "bold": false,
+ "underline": false,
+ "labelWidth": 7,
+ "labelHeight": 21
+ },
"opacity": 1,
"strokeDash": 0,
"strokeWidth": 8,
@@ -3064,10 +3504,32 @@
"id": "cf many required.(a <-> b)[0]",
"src": "cf many required.a",
"srcArrow": "cf-many-required",
- "srcLabel": "1",
+ "srcLabel": {
+ "label": "1",
+ "fontSize": 0,
+ "fontFamily": "",
+ "language": "",
+ "color": "",
+ "italic": false,
+ "bold": false,
+ "underline": false,
+ "labelWidth": 7,
+ "labelHeight": 21
+ },
"dst": "cf many required.b",
"dstArrow": "cf-many-required",
- "dstLabel": "1",
+ "dstLabel": {
+ "label": "1",
+ "fontSize": 0,
+ "fontFamily": "",
+ "language": "",
+ "color": "",
+ "italic": false,
+ "bold": false,
+ "underline": false,
+ "labelWidth": 7,
+ "labelHeight": 21
+ },
"opacity": 1,
"strokeDash": 0,
"strokeWidth": 2,
@@ -3104,10 +3566,32 @@
"id": "cf many required.(c <-> d)[0]",
"src": "cf many required.c",
"srcArrow": "cf-many-required",
- "srcLabel": "1",
+ "srcLabel": {
+ "label": "1",
+ "fontSize": 0,
+ "fontFamily": "",
+ "language": "",
+ "color": "",
+ "italic": false,
+ "bold": false,
+ "underline": false,
+ "labelWidth": 7,
+ "labelHeight": 21
+ },
"dst": "cf many required.d",
"dstArrow": "cf-many-required",
- "dstLabel": "1",
+ "dstLabel": {
+ "label": "1",
+ "fontSize": 0,
+ "fontFamily": "",
+ "language": "",
+ "color": "",
+ "italic": false,
+ "bold": false,
+ "underline": false,
+ "labelWidth": 7,
+ "labelHeight": 21
+ },
"opacity": 1,
"strokeDash": 0,
"strokeWidth": 8,
diff --git a/e2etests/testdata/regression/arrowhead_sizes_with_labels/elk/sketch.exp.svg b/e2etests/testdata/regression/arrowhead_sizes_with_labels/elk/sketch.exp.svg
index c1fc18cb28..9ecfc90b27 100644
--- a/e2etests/testdata/regression/arrowhead_sizes_with_labels/elk/sketch.exp.svg
+++ b/e2etests/testdata/regression/arrowhead_sizes_with_labels/elk/sketch.exp.svg
@@ -1,23 +1,23 @@
-trianglenonearrowdiamondfilled diamondcirclefilled circlecf onecf one requiredcf manycf many requiredabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcd 11 111111 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11
+ .d2-3887540427 .fill-N1{fill:#0A0F25;}
+ .d2-3887540427 .fill-N2{fill:#676C7E;}
+ .d2-3887540427 .fill-N3{fill:#9499AB;}
+ .d2-3887540427 .fill-N4{fill:#CFD2DD;}
+ .d2-3887540427 .fill-N5{fill:#DEE1EB;}
+ .d2-3887540427 .fill-N6{fill:#EEF1F8;}
+ .d2-3887540427 .fill-N7{fill:#FFFFFF;}
+ .d2-3887540427 .fill-B1{fill:#0D32B2;}
+ .d2-3887540427 .fill-B2{fill:#0D32B2;}
+ .d2-3887540427 .fill-B3{fill:#E3E9FD;}
+ .d2-3887540427 .fill-B4{fill:#E3E9FD;}
+ .d2-3887540427 .fill-B5{fill:#EDF0FD;}
+ .d2-3887540427 .fill-B6{fill:#F7F8FE;}
+ .d2-3887540427 .fill-AA2{fill:#4A6FF3;}
+ .d2-3887540427 .fill-AA4{fill:#EDF0FD;}
+ .d2-3887540427 .fill-AA5{fill:#F7F8FE;}
+ .d2-3887540427 .fill-AB4{fill:#EDF0FD;}
+ .d2-3887540427 .fill-AB5{fill:#F7F8FE;}
+ .d2-3887540427 .stroke-N1{stroke:#0A0F25;}
+ .d2-3887540427 .stroke-N2{stroke:#676C7E;}
+ .d2-3887540427 .stroke-N3{stroke:#9499AB;}
+ .d2-3887540427 .stroke-N4{stroke:#CFD2DD;}
+ .d2-3887540427 .stroke-N5{stroke:#DEE1EB;}
+ .d2-3887540427 .stroke-N6{stroke:#EEF1F8;}
+ .d2-3887540427 .stroke-N7{stroke:#FFFFFF;}
+ .d2-3887540427 .stroke-B1{stroke:#0D32B2;}
+ .d2-3887540427 .stroke-B2{stroke:#0D32B2;}
+ .d2-3887540427 .stroke-B3{stroke:#E3E9FD;}
+ .d2-3887540427 .stroke-B4{stroke:#E3E9FD;}
+ .d2-3887540427 .stroke-B5{stroke:#EDF0FD;}
+ .d2-3887540427 .stroke-B6{stroke:#F7F8FE;}
+ .d2-3887540427 .stroke-AA2{stroke:#4A6FF3;}
+ .d2-3887540427 .stroke-AA4{stroke:#EDF0FD;}
+ .d2-3887540427 .stroke-AA5{stroke:#F7F8FE;}
+ .d2-3887540427 .stroke-AB4{stroke:#EDF0FD;}
+ .d2-3887540427 .stroke-AB5{stroke:#F7F8FE;}
+ .d2-3887540427 .background-color-N1{background-color:#0A0F25;}
+ .d2-3887540427 .background-color-N2{background-color:#676C7E;}
+ .d2-3887540427 .background-color-N3{background-color:#9499AB;}
+ .d2-3887540427 .background-color-N4{background-color:#CFD2DD;}
+ .d2-3887540427 .background-color-N5{background-color:#DEE1EB;}
+ .d2-3887540427 .background-color-N6{background-color:#EEF1F8;}
+ .d2-3887540427 .background-color-N7{background-color:#FFFFFF;}
+ .d2-3887540427 .background-color-B1{background-color:#0D32B2;}
+ .d2-3887540427 .background-color-B2{background-color:#0D32B2;}
+ .d2-3887540427 .background-color-B3{background-color:#E3E9FD;}
+ .d2-3887540427 .background-color-B4{background-color:#E3E9FD;}
+ .d2-3887540427 .background-color-B5{background-color:#EDF0FD;}
+ .d2-3887540427 .background-color-B6{background-color:#F7F8FE;}
+ .d2-3887540427 .background-color-AA2{background-color:#4A6FF3;}
+ .d2-3887540427 .background-color-AA4{background-color:#EDF0FD;}
+ .d2-3887540427 .background-color-AA5{background-color:#F7F8FE;}
+ .d2-3887540427 .background-color-AB4{background-color:#EDF0FD;}
+ .d2-3887540427 .background-color-AB5{background-color:#F7F8FE;}
+ .d2-3887540427 .color-N1{color:#0A0F25;}
+ .d2-3887540427 .color-N2{color:#676C7E;}
+ .d2-3887540427 .color-N3{color:#9499AB;}
+ .d2-3887540427 .color-N4{color:#CFD2DD;}
+ .d2-3887540427 .color-N5{color:#DEE1EB;}
+ .d2-3887540427 .color-N6{color:#EEF1F8;}
+ .d2-3887540427 .color-N7{color:#FFFFFF;}
+ .d2-3887540427 .color-B1{color:#0D32B2;}
+ .d2-3887540427 .color-B2{color:#0D32B2;}
+ .d2-3887540427 .color-B3{color:#E3E9FD;}
+ .d2-3887540427 .color-B4{color:#E3E9FD;}
+ .d2-3887540427 .color-B5{color:#EDF0FD;}
+ .d2-3887540427 .color-B6{color:#F7F8FE;}
+ .d2-3887540427 .color-AA2{color:#4A6FF3;}
+ .d2-3887540427 .color-AA4{color:#EDF0FD;}
+ .d2-3887540427 .color-AA5{color:#F7F8FE;}
+ .d2-3887540427 .color-AB4{color:#EDF0FD;}
+ .d2-3887540427 .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}]]>trianglenonearrowdiamondfilled diamondcirclefilled circlecf onecf one requiredcf manycf many requiredabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcd 11 111111 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11
\ No newline at end of file
diff --git a/e2etests/testdata/regression/long_arrowhead_label/dagre/board.exp.json b/e2etests/testdata/regression/long_arrowhead_label/dagre/board.exp.json
index 3a51938ae9..cdbacb0fc9 100644
--- a/e2etests/testdata/regression/long_arrowhead_label/dagre/board.exp.json
+++ b/e2etests/testdata/regression/long_arrowhead_label/dagre/board.exp.json
@@ -91,10 +91,20 @@
"id": "(a -> b)[0]",
"src": "a",
"srcArrow": "none",
- "srcLabel": "",
"dst": "b",
"dstArrow": "triangle",
- "dstLabel": "a to b with unexpectedly long target arrowhead label",
+ "dstLabel": {
+ "label": "a to b with unexpectedly long target arrowhead label",
+ "fontSize": 0,
+ "fontFamily": "",
+ "language": "",
+ "color": "",
+ "italic": false,
+ "bold": false,
+ "underline": false,
+ "labelWidth": 348,
+ "labelHeight": 21
+ },
"opacity": 1,
"strokeDash": 0,
"strokeWidth": 2,
diff --git a/e2etests/testdata/regression/long_arrowhead_label/dagre/sketch.exp.svg b/e2etests/testdata/regression/long_arrowhead_label/dagre/sketch.exp.svg
index 2c6b4fcf0b..a37fbd81d6 100644
--- a/e2etests/testdata/regression/long_arrowhead_label/dagre/sketch.exp.svg
+++ b/e2etests/testdata/regression/long_arrowhead_label/dagre/sketch.exp.svg
@@ -1,16 +1,16 @@
-ab a to b with unexpectedly long target arrowhead label
-
+ .d2-4133568117 .fill-N1{fill:#0A0F25;}
+ .d2-4133568117 .fill-N2{fill:#676C7E;}
+ .d2-4133568117 .fill-N3{fill:#9499AB;}
+ .d2-4133568117 .fill-N4{fill:#CFD2DD;}
+ .d2-4133568117 .fill-N5{fill:#DEE1EB;}
+ .d2-4133568117 .fill-N6{fill:#EEF1F8;}
+ .d2-4133568117 .fill-N7{fill:#FFFFFF;}
+ .d2-4133568117 .fill-B1{fill:#0D32B2;}
+ .d2-4133568117 .fill-B2{fill:#0D32B2;}
+ .d2-4133568117 .fill-B3{fill:#E3E9FD;}
+ .d2-4133568117 .fill-B4{fill:#E3E9FD;}
+ .d2-4133568117 .fill-B5{fill:#EDF0FD;}
+ .d2-4133568117 .fill-B6{fill:#F7F8FE;}
+ .d2-4133568117 .fill-AA2{fill:#4A6FF3;}
+ .d2-4133568117 .fill-AA4{fill:#EDF0FD;}
+ .d2-4133568117 .fill-AA5{fill:#F7F8FE;}
+ .d2-4133568117 .fill-AB4{fill:#EDF0FD;}
+ .d2-4133568117 .fill-AB5{fill:#F7F8FE;}
+ .d2-4133568117 .stroke-N1{stroke:#0A0F25;}
+ .d2-4133568117 .stroke-N2{stroke:#676C7E;}
+ .d2-4133568117 .stroke-N3{stroke:#9499AB;}
+ .d2-4133568117 .stroke-N4{stroke:#CFD2DD;}
+ .d2-4133568117 .stroke-N5{stroke:#DEE1EB;}
+ .d2-4133568117 .stroke-N6{stroke:#EEF1F8;}
+ .d2-4133568117 .stroke-N7{stroke:#FFFFFF;}
+ .d2-4133568117 .stroke-B1{stroke:#0D32B2;}
+ .d2-4133568117 .stroke-B2{stroke:#0D32B2;}
+ .d2-4133568117 .stroke-B3{stroke:#E3E9FD;}
+ .d2-4133568117 .stroke-B4{stroke:#E3E9FD;}
+ .d2-4133568117 .stroke-B5{stroke:#EDF0FD;}
+ .d2-4133568117 .stroke-B6{stroke:#F7F8FE;}
+ .d2-4133568117 .stroke-AA2{stroke:#4A6FF3;}
+ .d2-4133568117 .stroke-AA4{stroke:#EDF0FD;}
+ .d2-4133568117 .stroke-AA5{stroke:#F7F8FE;}
+ .d2-4133568117 .stroke-AB4{stroke:#EDF0FD;}
+ .d2-4133568117 .stroke-AB5{stroke:#F7F8FE;}
+ .d2-4133568117 .background-color-N1{background-color:#0A0F25;}
+ .d2-4133568117 .background-color-N2{background-color:#676C7E;}
+ .d2-4133568117 .background-color-N3{background-color:#9499AB;}
+ .d2-4133568117 .background-color-N4{background-color:#CFD2DD;}
+ .d2-4133568117 .background-color-N5{background-color:#DEE1EB;}
+ .d2-4133568117 .background-color-N6{background-color:#EEF1F8;}
+ .d2-4133568117 .background-color-N7{background-color:#FFFFFF;}
+ .d2-4133568117 .background-color-B1{background-color:#0D32B2;}
+ .d2-4133568117 .background-color-B2{background-color:#0D32B2;}
+ .d2-4133568117 .background-color-B3{background-color:#E3E9FD;}
+ .d2-4133568117 .background-color-B4{background-color:#E3E9FD;}
+ .d2-4133568117 .background-color-B5{background-color:#EDF0FD;}
+ .d2-4133568117 .background-color-B6{background-color:#F7F8FE;}
+ .d2-4133568117 .background-color-AA2{background-color:#4A6FF3;}
+ .d2-4133568117 .background-color-AA4{background-color:#EDF0FD;}
+ .d2-4133568117 .background-color-AA5{background-color:#F7F8FE;}
+ .d2-4133568117 .background-color-AB4{background-color:#EDF0FD;}
+ .d2-4133568117 .background-color-AB5{background-color:#F7F8FE;}
+ .d2-4133568117 .color-N1{color:#0A0F25;}
+ .d2-4133568117 .color-N2{color:#676C7E;}
+ .d2-4133568117 .color-N3{color:#9499AB;}
+ .d2-4133568117 .color-N4{color:#CFD2DD;}
+ .d2-4133568117 .color-N5{color:#DEE1EB;}
+ .d2-4133568117 .color-N6{color:#EEF1F8;}
+ .d2-4133568117 .color-N7{color:#FFFFFF;}
+ .d2-4133568117 .color-B1{color:#0D32B2;}
+ .d2-4133568117 .color-B2{color:#0D32B2;}
+ .d2-4133568117 .color-B3{color:#E3E9FD;}
+ .d2-4133568117 .color-B4{color:#E3E9FD;}
+ .d2-4133568117 .color-B5{color:#EDF0FD;}
+ .d2-4133568117 .color-B6{color:#F7F8FE;}
+ .d2-4133568117 .color-AA2{color:#4A6FF3;}
+ .d2-4133568117 .color-AA4{color:#EDF0FD;}
+ .d2-4133568117 .color-AA5{color:#F7F8FE;}
+ .d2-4133568117 .color-AB4{color:#EDF0FD;}
+ .d2-4133568117 .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}]]>ab a to b with unexpectedly long target arrowhead label
+
\ No newline at end of file
diff --git a/e2etests/testdata/regression/long_arrowhead_label/elk/board.exp.json b/e2etests/testdata/regression/long_arrowhead_label/elk/board.exp.json
index 4fa6bbba3f..f2c06801c6 100644
--- a/e2etests/testdata/regression/long_arrowhead_label/elk/board.exp.json
+++ b/e2etests/testdata/regression/long_arrowhead_label/elk/board.exp.json
@@ -91,10 +91,20 @@
"id": "(a -> b)[0]",
"src": "a",
"srcArrow": "none",
- "srcLabel": "",
"dst": "b",
"dstArrow": "triangle",
- "dstLabel": "a to b with unexpectedly long target arrowhead label",
+ "dstLabel": {
+ "label": "a to b with unexpectedly long target arrowhead label",
+ "fontSize": 0,
+ "fontFamily": "",
+ "language": "",
+ "color": "",
+ "italic": false,
+ "bold": false,
+ "underline": false,
+ "labelWidth": 348,
+ "labelHeight": 21
+ },
"opacity": 1,
"strokeDash": 0,
"strokeWidth": 2,
diff --git a/e2etests/testdata/regression/long_arrowhead_label/elk/sketch.exp.svg b/e2etests/testdata/regression/long_arrowhead_label/elk/sketch.exp.svg
index 45eaa1e37c..e360a2c159 100644
--- a/e2etests/testdata/regression/long_arrowhead_label/elk/sketch.exp.svg
+++ b/e2etests/testdata/regression/long_arrowhead_label/elk/sketch.exp.svg
@@ -1,16 +1,16 @@
-ab a to b with unexpectedly long target arrowhead label
-
+ .d2-4249151724 .fill-N1{fill:#0A0F25;}
+ .d2-4249151724 .fill-N2{fill:#676C7E;}
+ .d2-4249151724 .fill-N3{fill:#9499AB;}
+ .d2-4249151724 .fill-N4{fill:#CFD2DD;}
+ .d2-4249151724 .fill-N5{fill:#DEE1EB;}
+ .d2-4249151724 .fill-N6{fill:#EEF1F8;}
+ .d2-4249151724 .fill-N7{fill:#FFFFFF;}
+ .d2-4249151724 .fill-B1{fill:#0D32B2;}
+ .d2-4249151724 .fill-B2{fill:#0D32B2;}
+ .d2-4249151724 .fill-B3{fill:#E3E9FD;}
+ .d2-4249151724 .fill-B4{fill:#E3E9FD;}
+ .d2-4249151724 .fill-B5{fill:#EDF0FD;}
+ .d2-4249151724 .fill-B6{fill:#F7F8FE;}
+ .d2-4249151724 .fill-AA2{fill:#4A6FF3;}
+ .d2-4249151724 .fill-AA4{fill:#EDF0FD;}
+ .d2-4249151724 .fill-AA5{fill:#F7F8FE;}
+ .d2-4249151724 .fill-AB4{fill:#EDF0FD;}
+ .d2-4249151724 .fill-AB5{fill:#F7F8FE;}
+ .d2-4249151724 .stroke-N1{stroke:#0A0F25;}
+ .d2-4249151724 .stroke-N2{stroke:#676C7E;}
+ .d2-4249151724 .stroke-N3{stroke:#9499AB;}
+ .d2-4249151724 .stroke-N4{stroke:#CFD2DD;}
+ .d2-4249151724 .stroke-N5{stroke:#DEE1EB;}
+ .d2-4249151724 .stroke-N6{stroke:#EEF1F8;}
+ .d2-4249151724 .stroke-N7{stroke:#FFFFFF;}
+ .d2-4249151724 .stroke-B1{stroke:#0D32B2;}
+ .d2-4249151724 .stroke-B2{stroke:#0D32B2;}
+ .d2-4249151724 .stroke-B3{stroke:#E3E9FD;}
+ .d2-4249151724 .stroke-B4{stroke:#E3E9FD;}
+ .d2-4249151724 .stroke-B5{stroke:#EDF0FD;}
+ .d2-4249151724 .stroke-B6{stroke:#F7F8FE;}
+ .d2-4249151724 .stroke-AA2{stroke:#4A6FF3;}
+ .d2-4249151724 .stroke-AA4{stroke:#EDF0FD;}
+ .d2-4249151724 .stroke-AA5{stroke:#F7F8FE;}
+ .d2-4249151724 .stroke-AB4{stroke:#EDF0FD;}
+ .d2-4249151724 .stroke-AB5{stroke:#F7F8FE;}
+ .d2-4249151724 .background-color-N1{background-color:#0A0F25;}
+ .d2-4249151724 .background-color-N2{background-color:#676C7E;}
+ .d2-4249151724 .background-color-N3{background-color:#9499AB;}
+ .d2-4249151724 .background-color-N4{background-color:#CFD2DD;}
+ .d2-4249151724 .background-color-N5{background-color:#DEE1EB;}
+ .d2-4249151724 .background-color-N6{background-color:#EEF1F8;}
+ .d2-4249151724 .background-color-N7{background-color:#FFFFFF;}
+ .d2-4249151724 .background-color-B1{background-color:#0D32B2;}
+ .d2-4249151724 .background-color-B2{background-color:#0D32B2;}
+ .d2-4249151724 .background-color-B3{background-color:#E3E9FD;}
+ .d2-4249151724 .background-color-B4{background-color:#E3E9FD;}
+ .d2-4249151724 .background-color-B5{background-color:#EDF0FD;}
+ .d2-4249151724 .background-color-B6{background-color:#F7F8FE;}
+ .d2-4249151724 .background-color-AA2{background-color:#4A6FF3;}
+ .d2-4249151724 .background-color-AA4{background-color:#EDF0FD;}
+ .d2-4249151724 .background-color-AA5{background-color:#F7F8FE;}
+ .d2-4249151724 .background-color-AB4{background-color:#EDF0FD;}
+ .d2-4249151724 .background-color-AB5{background-color:#F7F8FE;}
+ .d2-4249151724 .color-N1{color:#0A0F25;}
+ .d2-4249151724 .color-N2{color:#676C7E;}
+ .d2-4249151724 .color-N3{color:#9499AB;}
+ .d2-4249151724 .color-N4{color:#CFD2DD;}
+ .d2-4249151724 .color-N5{color:#DEE1EB;}
+ .d2-4249151724 .color-N6{color:#EEF1F8;}
+ .d2-4249151724 .color-N7{color:#FFFFFF;}
+ .d2-4249151724 .color-B1{color:#0D32B2;}
+ .d2-4249151724 .color-B2{color:#0D32B2;}
+ .d2-4249151724 .color-B3{color:#E3E9FD;}
+ .d2-4249151724 .color-B4{color:#E3E9FD;}
+ .d2-4249151724 .color-B5{color:#EDF0FD;}
+ .d2-4249151724 .color-B6{color:#F7F8FE;}
+ .d2-4249151724 .color-AA2{color:#4A6FF3;}
+ .d2-4249151724 .color-AA4{color:#EDF0FD;}
+ .d2-4249151724 .color-AA5{color:#F7F8FE;}
+ .d2-4249151724 .color-AB4{color:#EDF0FD;}
+ .d2-4249151724 .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}]]>ab a to b with unexpectedly long target arrowhead label
+
\ No newline at end of file