From 6632740fb19282d0cd36cd1339cd5d22c959cb9e Mon Sep 17 00:00:00 2001 From: Antoine Poivey Date: Thu, 9 Mar 2023 17:10:12 +0100 Subject: [PATCH 1/8] feat: add possiblity to set shape border-radius with percentage value --- d2exporter/export.go | 2 +- d2graph/d2graph.go | 5 ++++- d2renderers/d2svg/d2svg.go | 4 ++-- d2target/d2target.go | 2 +- d2themes/element.go | 11 +++++++++-- 5 files changed, 17 insertions(+), 7 deletions(-) diff --git a/d2exporter/export.go b/d2exporter/export.go index bc84f4246..1c1dd2ecc 100644 --- a/d2exporter/export.go +++ b/d2exporter/export.go @@ -76,7 +76,7 @@ func applyStyles(shape *d2target.Shape, obj *d2graph.Object) { shape.Multiple, _ = strconv.ParseBool(obj.Attributes.Style.Multiple.Value) } if obj.Attributes.Style.BorderRadius != nil { - shape.BorderRadius, _ = strconv.Atoi(obj.Attributes.Style.BorderRadius.Value) + shape.BorderRadius, _ = strconv.ParseFloat(obj.Attributes.Style.BorderRadius.Value, 64) } if obj.Attributes.Style.FontColor != nil { diff --git a/d2graph/d2graph.go b/d2graph/d2graph.go index 83f6faa6d..c50ee617b 100644 --- a/d2graph/d2graph.go +++ b/d2graph/d2graph.go @@ -216,10 +216,13 @@ func (s *Style) Apply(key, value string) error { if s.BorderRadius == nil { break } - f, err := strconv.Atoi(value) + f, err := strconv.ParseFloat(value, 64) if err != nil || (f < 0 || f > 20) { return errors.New(`expected "border-radius" to be a number between 0 and 20`) } + if hasDecimalValue := math.Mod(f, 1) != 0; f > 1 && hasDecimalValue { + return errors.New(`expected "border-radius" to be an integer if superior to 1`) + } s.BorderRadius.Value = value case "shadow": if s.Shadow == nil { diff --git a/d2renderers/d2svg/d2svg.go b/d2renderers/d2svg/d2svg.go index 2846c7587..0f6c57905 100644 --- a/d2renderers/d2svg/d2svg.go +++ b/d2renderers/d2svg/d2svg.go @@ -987,7 +987,7 @@ func drawShape(writer io.Writer, targetShape d2target.Shape, sketchRunner *d2ske // DO rx := "" if targetShape.BorderRadius != 0 { - rx = fmt.Sprintf(` rx="%d"`, targetShape.BorderRadius) + rx = fmt.Sprintf(` rx="%s"`, d2themes.FormatRxRy(targetShape.BorderRadius)) } if targetShape.ThreeDee { fmt.Fprint(writer, render3dRect(targetShape)) @@ -1735,7 +1735,7 @@ func Render(diagram *d2target.Diagram, opts *RenderOpts) ([]byte, error) { backgroundEl.Height = float64(h) backgroundEl.Fill = diagram.Root.Fill backgroundEl.Stroke = diagram.Root.Stroke - backgroundEl.Rx = float64(diagram.Root.BorderRadius) + backgroundEl.Rx = diagram.Root.BorderRadius if diagram.Root.StrokeDash != 0 { dashSize, gapSize := svg.GetStrokeDashAttributes(float64(diagram.Root.StrokeWidth), diagram.Root.StrokeDash) backgroundEl.StrokeDashArray = fmt.Sprintf("%f, %f", dashSize, gapSize) diff --git a/d2target/d2target.go b/d2target/d2target.go index 9d79eaa4c..a94e831f9 100644 --- a/d2target/d2target.go +++ b/d2target/d2target.go @@ -174,7 +174,7 @@ type Shape struct { StrokeDash float64 `json:"strokeDash"` StrokeWidth int `json:"strokeWidth"` - BorderRadius int `json:"borderRadius"` + BorderRadius float64 `json:"borderRadius"` Fill string `json:"fill"` Stroke string `json:"stroke"` diff --git a/d2themes/element.go b/d2themes/element.go index e881c0d78..b222187b5 100644 --- a/d2themes/element.go +++ b/d2themes/element.go @@ -135,10 +135,10 @@ func (el *ThemableElement) Render() string { out += fmt.Sprintf(` r="%f"`, el.R) } if el.Rx != math.MaxFloat64 { - out += fmt.Sprintf(` rx="%f"`, el.Rx) + out += fmt.Sprintf(` rx="%s"`, FormatRxRy(el.Rx)) } if el.Ry != math.MaxFloat64 { - out += fmt.Sprintf(` ry="%f"`, el.Ry) + out += fmt.Sprintf(` ry="%s"`, FormatRxRy(el.Ry)) } if el.Cx != math.MaxFloat64 { out += fmt.Sprintf(` cx="%f"`, el.Cx) @@ -206,3 +206,10 @@ func (el *ThemableElement) Render() string { } return out + " />" } + +func FormatRxRy(value float64) string { + if 0 < value && value < 1 { + return fmt.Sprintf(`%v%%`, int(value*100)) + } + return fmt.Sprintf(`%f`, value) +} From cd1027314e8747988ccf9839493d7e15cee54781 Mon Sep 17 00:00:00 2001 From: Antoine Poivey Date: Fri, 17 Mar 2023 18:52:21 +0100 Subject: [PATCH 2/8] feat: check border-radius value value before checking its decimals. New rx and ry compute method. --- d2graph/d2graph.go | 8 ++++++-- d2renderers/d2svg/d2svg.go | 24 ++++++++++++------------ d2themes/element.go | 15 +++++++++------ 3 files changed, 27 insertions(+), 20 deletions(-) diff --git a/d2graph/d2graph.go b/d2graph/d2graph.go index c50ee617b..cff3ca2fe 100644 --- a/d2graph/d2graph.go +++ b/d2graph/d2graph.go @@ -167,6 +167,10 @@ type Style struct { DoubleBorder *Scalar `json:"doubleBorder,omitempty"` } +func hasDecimalValue(value float64) bool { + return math.Mod(value, 1) != 0 +} + func (s *Style) Apply(key, value string) error { switch key { case "opacity": @@ -220,8 +224,8 @@ func (s *Style) Apply(key, value string) error { if err != nil || (f < 0 || f > 20) { return errors.New(`expected "border-radius" to be a number between 0 and 20`) } - if hasDecimalValue := math.Mod(f, 1) != 0; f > 1 && hasDecimalValue { - return errors.New(`expected "border-radius" to be an integer if superior to 1`) + if f > 1 && hasDecimalValue(f) { + return errors.New(`expected "border-radius" to be an integer if greater than 1`) } s.BorderRadius.Value = value case "shadow": diff --git a/d2renderers/d2svg/d2svg.go b/d2renderers/d2svg/d2svg.go index 0f6c57905..b66a3aa43 100644 --- a/d2renderers/d2svg/d2svg.go +++ b/d2renderers/d2svg/d2svg.go @@ -983,12 +983,6 @@ func drawShape(writer io.Writer, targetShape d2target.Shape, sketchRunner *d2ske // TODO should standardize "" to rectangle case d2target.ShapeRectangle, d2target.ShapeSequenceDiagram, "": - // TODO use Rx property of NewThemableElement instead - // DO - rx := "" - if targetShape.BorderRadius != 0 { - rx = fmt.Sprintf(` rx="%s"`, d2themes.FormatRxRy(targetShape.BorderRadius)) - } if targetShape.ThreeDee { fmt.Fprint(writer, render3dRect(targetShape)) } else { @@ -1002,7 +996,8 @@ func drawShape(writer io.Writer, targetShape d2target.Shape, sketchRunner *d2ske el.Fill = fill el.Stroke = stroke el.Style = style - el.Attributes = rx + el.Rx = targetShape.BorderRadius + el.Ry = targetShape.BorderRadius fmt.Fprint(writer, el.Render()) } if sketchRunner != nil { @@ -1020,7 +1015,8 @@ func drawShape(writer io.Writer, targetShape d2target.Shape, sketchRunner *d2ske el.Fill = fill el.Stroke = stroke el.Style = style - el.Attributes = rx + el.Rx = targetShape.BorderRadius + el.Ry = targetShape.BorderRadius fmt.Fprint(writer, el.Render()) } } else { @@ -1033,7 +1029,8 @@ func drawShape(writer io.Writer, targetShape d2target.Shape, sketchRunner *d2ske el.Fill = fill el.Stroke = stroke el.Style = style - el.Attributes = rx + el.Rx = targetShape.BorderRadius + el.Ry = targetShape.BorderRadius fmt.Fprint(writer, el.Render()) el = d2themes.NewThemableElement("rect") @@ -1044,7 +1041,8 @@ func drawShape(writer io.Writer, targetShape d2target.Shape, sketchRunner *d2ske el.Fill = fill el.Stroke = stroke el.Style = style - el.Attributes = rx + el.Rx = targetShape.BorderRadius + el.Ry = targetShape.BorderRadius fmt.Fprint(writer, el.Render()) } if sketchRunner != nil { @@ -1062,7 +1060,8 @@ func drawShape(writer io.Writer, targetShape d2target.Shape, sketchRunner *d2ske el.Fill = fill el.Stroke = stroke el.Style = style - el.Attributes = rx + el.Rx = targetShape.BorderRadius + el.Ry = targetShape.BorderRadius fmt.Fprint(writer, el.Render()) el = d2themes.NewThemableElement("rect") @@ -1073,7 +1072,8 @@ func drawShape(writer io.Writer, targetShape d2target.Shape, sketchRunner *d2ske el.Fill = fill el.Stroke = stroke el.Style = style - el.Attributes = rx + el.Rx = targetShape.BorderRadius + el.Ry = targetShape.BorderRadius fmt.Fprint(writer, el.Render()) } } diff --git a/d2themes/element.go b/d2themes/element.go index b222187b5..8e8f5fb84 100644 --- a/d2themes/element.go +++ b/d2themes/element.go @@ -135,10 +135,10 @@ func (el *ThemableElement) Render() string { out += fmt.Sprintf(` r="%f"`, el.R) } if el.Rx != math.MaxFloat64 { - out += fmt.Sprintf(` rx="%s"`, FormatRxRy(el.Rx)) + out += fmt.Sprintf(` rx="%f"`, calculateAxisRadius(el.Rx, el.Width)) } if el.Ry != math.MaxFloat64 { - out += fmt.Sprintf(` ry="%s"`, FormatRxRy(el.Ry)) + out += fmt.Sprintf(` ry="%f"`, calculateAxisRadius(el.Ry, el.Height)) } if el.Cx != math.MaxFloat64 { out += fmt.Sprintf(` cx="%f"`, el.Cx) @@ -207,9 +207,12 @@ func (el *ThemableElement) Render() string { return out + " />" } -func FormatRxRy(value float64) string { - if 0 < value && value < 1 { - return fmt.Sprintf(`%v%%`, int(value*100)) +func calculateAxisRadius(borderRadius float64, sideLength float64) float64 { + if borderRadius >= 1 { + return borderRadius } - return fmt.Sprintf(`%f`, value) + if sideLength == math.MaxFloat64 { + return 0 + } + return borderRadius * sideLength } From e96eb4c6f037592677e7c171413c93e27b1a4cd0 Mon Sep 17 00:00:00 2001 From: Antoine Poivey Date: Thu, 30 Mar 2023 18:43:16 +0200 Subject: [PATCH 3/8] add compile test --- d2compiler/compile_test.go | 24 +++++++++++++++++++ ...rder-radius-more-than-100-percent.exp.json | 12 ++++++++++ .../border-radius-more-than-20.exp.json | 12 ++++++++++ .../border-radius-negative.exp.json | 12 ++++++++++ 4 files changed, 60 insertions(+) create mode 100644 testdata/d2compiler/TestCompile/border-radius-more-than-100-percent.exp.json create mode 100644 testdata/d2compiler/TestCompile/border-radius-more-than-20.exp.json create mode 100644 testdata/d2compiler/TestCompile/border-radius-negative.exp.json diff --git a/d2compiler/compile_test.go b/d2compiler/compile_test.go index 8e284f6b6..91699de5b 100644 --- a/d2compiler/compile_test.go +++ b/d2compiler/compile_test.go @@ -2221,6 +2221,30 @@ layers: { }`, expErr: `d2/testdata/d2compiler/TestCompile/link-board-underscore-not-found.d2:7:9: invalid underscore usage`, }, + { + name: "border-radius-negative", + text: `x +x: { + style.border-radius: -1 +}`, + expErr: `d2/testdata/d2compiler/TestCompile/border-radius-negative.d2:3:24: expected "border-radius" to be a number between 0 and 20`, + }, + { + name: "border-radius-more-than-20", + text: `x +x: { + style.border-radius: 21 +}`, + expErr: `d2/testdata/d2compiler/TestCompile/border-radius-more-than-20.d2:3:24: expected "border-radius" to be a number between 0 and 20`, + }, + { + name: "border-radius-more-than-100-percent", + text: `x +x: { + style.border-radius: 1.5 +}`, + expErr: `d2/testdata/d2compiler/TestCompile/border-radius-more-than-100-percent.d2:3:24: expected "border-radius" to be an integer if greater than 1`, + }, } for _, tc := range testCases { diff --git a/testdata/d2compiler/TestCompile/border-radius-more-than-100-percent.exp.json b/testdata/d2compiler/TestCompile/border-radius-more-than-100-percent.exp.json new file mode 100644 index 000000000..604c3015b --- /dev/null +++ b/testdata/d2compiler/TestCompile/border-radius-more-than-100-percent.exp.json @@ -0,0 +1,12 @@ +{ + "graph": null, + "err": { + "ioerr": null, + "errs": [ + { + "range": "d2/testdata/d2compiler/TestCompile/border-radius-more-than-100-percent.d2,2:23:30-2:26:33", + "errmsg": "d2/testdata/d2compiler/TestCompile/border-radius-more-than-100-percent.d2:3:24: expected \"border-radius\" to be an integer if greater than 1" + } + ] + } +} diff --git a/testdata/d2compiler/TestCompile/border-radius-more-than-20.exp.json b/testdata/d2compiler/TestCompile/border-radius-more-than-20.exp.json new file mode 100644 index 000000000..fd3b9618f --- /dev/null +++ b/testdata/d2compiler/TestCompile/border-radius-more-than-20.exp.json @@ -0,0 +1,12 @@ +{ + "graph": null, + "err": { + "ioerr": null, + "errs": [ + { + "range": "d2/testdata/d2compiler/TestCompile/border-radius-more-than-20.d2,2:23:30-2:25:32", + "errmsg": "d2/testdata/d2compiler/TestCompile/border-radius-more-than-20.d2:3:24: expected \"border-radius\" to be a number between 0 and 20" + } + ] + } +} diff --git a/testdata/d2compiler/TestCompile/border-radius-negative.exp.json b/testdata/d2compiler/TestCompile/border-radius-negative.exp.json new file mode 100644 index 000000000..25584f80a --- /dev/null +++ b/testdata/d2compiler/TestCompile/border-radius-negative.exp.json @@ -0,0 +1,12 @@ +{ + "graph": null, + "err": { + "ioerr": null, + "errs": [ + { + "range": "d2/testdata/d2compiler/TestCompile/border-radius-negative.d2,2:23:30-2:25:32", + "errmsg": "d2/testdata/d2compiler/TestCompile/border-radius-negative.d2:3:24: expected \"border-radius\" to be a number between 0 and 20" + } + ] + } +} From 72efc70ad0ee161b4028eb5b78c019cc1c8094ff Mon Sep 17 00:00:00 2001 From: Antoine Poivey Date: Thu, 6 Apr 2023 18:53:54 +0200 Subject: [PATCH 4/8] add tests --- d2renderers/d2svg/d2svg.go | 28 +- e2etests/stable_test.go | 23 ++ .../arrowhead_adjustment/dagre/sketch.exp.svg | 2 +- .../arrowhead_adjustment/elk/sketch.exp.svg | 2 +- .../dagre/board.exp.json | 253 ++++++++++++++++++ .../dagre/sketch.exp.svg | 97 +++++++ .../border-radius-percent/elk/board.exp.json | 253 ++++++++++++++++++ .../border-radius-percent/elk/sketch.exp.svg | 97 +++++++ .../stable/border-radius/dagre/sketch.exp.svg | 2 +- .../stable/border-radius/elk/sketch.exp.svg | 2 +- 10 files changed, 743 insertions(+), 16 deletions(-) create mode 100644 e2etests/testdata/stable/border-radius-percent/dagre/board.exp.json create mode 100644 e2etests/testdata/stable/border-radius-percent/dagre/sketch.exp.svg create mode 100644 e2etests/testdata/stable/border-radius-percent/elk/board.exp.json create mode 100644 e2etests/testdata/stable/border-radius-percent/elk/sketch.exp.svg diff --git a/d2renderers/d2svg/d2svg.go b/d2renderers/d2svg/d2svg.go index c69d2ffd8..36b69a4ce 100644 --- a/d2renderers/d2svg/d2svg.go +++ b/d2renderers/d2svg/d2svg.go @@ -1004,6 +1004,10 @@ func drawShape(writer io.Writer, diagramHash string, targetShape d2target.Shape, // TODO should standardize "" to rectangle case d2target.ShapeRectangle, d2target.ShapeSequenceDiagram, "": + borderRadius := math.MaxFloat64 + if targetShape.BorderRadius != 0 { + borderRadius = targetShape.BorderRadius + } if targetShape.ThreeDee { fmt.Fprint(writer, render3dRect(targetShape)) } else { @@ -1017,8 +1021,8 @@ func drawShape(writer io.Writer, diagramHash string, targetShape d2target.Shape, el.Fill = fill el.Stroke = stroke el.Style = style - el.Rx = targetShape.BorderRadius - el.Ry = targetShape.BorderRadius + el.Rx = borderRadius + el.Ry = borderRadius fmt.Fprint(writer, el.Render()) } if sketchRunner != nil { @@ -1037,8 +1041,8 @@ func drawShape(writer io.Writer, diagramHash string, targetShape d2target.Shape, el.FillPattern = targetShape.FillPattern el.Stroke = stroke el.Style = style - el.Rx = targetShape.BorderRadius - el.Ry = targetShape.BorderRadius + el.Rx = borderRadius + el.Ry = borderRadius fmt.Fprint(writer, el.Render()) } } else { @@ -1052,8 +1056,8 @@ func drawShape(writer io.Writer, diagramHash string, targetShape d2target.Shape, el.FillPattern = targetShape.FillPattern el.Stroke = stroke el.Style = style - el.Rx = targetShape.BorderRadius - el.Ry = targetShape.BorderRadius + el.Rx = borderRadius + el.Ry = borderRadius fmt.Fprint(writer, el.Render()) el = d2themes.NewThemableElement("rect") @@ -1064,8 +1068,8 @@ func drawShape(writer io.Writer, diagramHash string, targetShape d2target.Shape, el.Fill = fill el.Stroke = stroke el.Style = style - el.Rx = targetShape.BorderRadius - el.Ry = targetShape.BorderRadius + el.Rx = borderRadius + el.Ry = borderRadius fmt.Fprint(writer, el.Render()) } if sketchRunner != nil { @@ -1084,8 +1088,8 @@ func drawShape(writer io.Writer, diagramHash string, targetShape d2target.Shape, el.FillPattern = targetShape.FillPattern el.Stroke = stroke el.Style = style - el.Rx = targetShape.BorderRadius - el.Ry = targetShape.BorderRadius + el.Rx = borderRadius + el.Ry = borderRadius fmt.Fprint(writer, el.Render()) el = d2themes.NewThemableElement("rect") @@ -1096,8 +1100,8 @@ func drawShape(writer io.Writer, diagramHash string, targetShape d2target.Shape, el.Fill = "transparent" el.Stroke = stroke el.Style = style - el.Rx = targetShape.BorderRadius - el.Ry = targetShape.BorderRadius + el.Rx = borderRadius + el.Ry = borderRadius fmt.Fprint(writer, el.Render()) } } diff --git a/e2etests/stable_test.go b/e2etests/stable_test.go index adda8b862..98a47576b 100644 --- a/e2etests/stable_test.go +++ b/e2etests/stable_test.go @@ -2297,6 +2297,29 @@ three-dee: { style.border-radius: 6 style.3d: true } +`, + }, + { + name: "border-radius-percent", + script: ` +x: { + style.border-radius: 0.1 +} +y: { + style.border-radius: 0.2 +} +multiple2: { + style.border-radius: 0.25 + style.multiple: true +} +double: { + style.border-radius: 0.35 + style.double-border: true +} +three-dee: { + style.border-radius: 0.3 + style.3d: true +} `, }, { diff --git a/e2etests/testdata/stable/arrowhead_adjustment/dagre/sketch.exp.svg b/e2etests/testdata/stable/arrowhead_adjustment/dagre/sketch.exp.svg index 87696c696..d4fb1053d 100644 --- a/e2etests/testdata/stable/arrowhead_adjustment/dagre/sketch.exp.svg +++ b/e2etests/testdata/stable/arrowhead_adjustment/dagre/sketch.exp.svg @@ -96,7 +96,7 @@ .d2-1296221605 .color-AA4{color:#EDF0FD;} .d2-1296221605 .color-AA5{color:#F7F8FE;} .d2-1296221605 .color-AB4{color:#EDF0FD;} - .d2-1296221605 .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}]]>abc * + .d2-1296221605 .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}]]>abc * \ No newline at end of file diff --git a/e2etests/testdata/stable/arrowhead_adjustment/elk/sketch.exp.svg b/e2etests/testdata/stable/arrowhead_adjustment/elk/sketch.exp.svg index 398a5e07a..1345213f1 100644 --- a/e2etests/testdata/stable/arrowhead_adjustment/elk/sketch.exp.svg +++ b/e2etests/testdata/stable/arrowhead_adjustment/elk/sketch.exp.svg @@ -96,7 +96,7 @@ .d2-1482414948 .color-AA4{color:#EDF0FD;} .d2-1482414948 .color-AA5{color:#F7F8FE;} .d2-1482414948 .color-AB4{color:#EDF0FD;} - .d2-1482414948 .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}]]>abc * + .d2-1482414948 .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}]]>abc * \ No newline at end of file diff --git a/e2etests/testdata/stable/border-radius-percent/dagre/board.exp.json b/e2etests/testdata/stable/border-radius-percent/dagre/board.exp.json new file mode 100644 index 000000000..2193f8c97 --- /dev/null +++ b/e2etests/testdata/stable/border-radius-percent/dagre/board.exp.json @@ -0,0 +1,253 @@ +{ + "name": "", + "isFolderOnly": false, + "fontFamily": "SourceSansPro", + "shapes": [ + { + "id": "x", + "type": "rectangle", + "pos": { + "x": 0, + "y": 0 + }, + "width": 53, + "height": 66, + "opacity": 1, + "strokeDash": 0, + "strokeWidth": 2, + "borderRadius": 0.1, + "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": "x", + "fontSize": 16, + "fontFamily": "DEFAULT", + "language": "", + "color": "N1", + "italic": false, + "bold": true, + "underline": false, + "labelWidth": 8, + "labelHeight": 21, + "labelPosition": "INSIDE_MIDDLE_CENTER", + "zIndex": 0, + "level": 1 + }, + { + "id": "y", + "type": "rectangle", + "pos": { + "x": 113, + "y": 0 + }, + "width": 54, + "height": 66, + "opacity": 1, + "strokeDash": 0, + "strokeWidth": 2, + "borderRadius": 0.2, + "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": "y", + "fontSize": 16, + "fontFamily": "DEFAULT", + "language": "", + "color": "N1", + "italic": false, + "bold": true, + "underline": false, + "labelWidth": 9, + "labelHeight": 21, + "labelPosition": "INSIDE_MIDDLE_CENTER", + "zIndex": 0, + "level": 1 + }, + { + "id": "multiple2", + "type": "rectangle", + "pos": { + "x": 227, + "y": 0 + }, + "width": 112, + "height": 66, + "opacity": 1, + "strokeDash": 0, + "strokeWidth": 2, + "borderRadius": 0.25, + "fill": "B6", + "stroke": "B1", + "shadow": false, + "3d": false, + "multiple": true, + "double-border": false, + "tooltip": "", + "link": "", + "icon": null, + "iconPosition": "", + "blend": false, + "fields": null, + "methods": null, + "columns": null, + "label": "multiple2", + "fontSize": 16, + "fontFamily": "DEFAULT", + "language": "", + "color": "N1", + "italic": false, + "bold": true, + "underline": false, + "labelWidth": 67, + "labelHeight": 21, + "labelPosition": "INSIDE_MIDDLE_CENTER", + "zIndex": 0, + "level": 1 + }, + { + "id": "double", + "type": "rectangle", + "pos": { + "x": 399, + "y": 0 + }, + "width": 94, + "height": 66, + "opacity": 1, + "strokeDash": 0, + "strokeWidth": 2, + "borderRadius": 0.35, + "fill": "B6", + "stroke": "B1", + "shadow": false, + "3d": false, + "multiple": false, + "double-border": true, + "tooltip": "", + "link": "", + "icon": null, + "iconPosition": "", + "blend": false, + "fields": null, + "methods": null, + "columns": null, + "label": "double", + "fontSize": 16, + "fontFamily": "DEFAULT", + "language": "", + "color": "N1", + "italic": false, + "bold": true, + "underline": false, + "labelWidth": 49, + "labelHeight": 21, + "labelPosition": "INSIDE_MIDDLE_CENTER", + "zIndex": 0, + "level": 1 + }, + { + "id": "three-dee", + "type": "rectangle", + "pos": { + "x": 553, + "y": 0 + }, + "width": 114, + "height": 66, + "opacity": 1, + "strokeDash": 0, + "strokeWidth": 2, + "borderRadius": 0.3, + "fill": "B6", + "stroke": "B1", + "shadow": false, + "3d": true, + "multiple": false, + "double-border": false, + "tooltip": "", + "link": "", + "icon": null, + "iconPosition": "", + "blend": false, + "fields": null, + "methods": null, + "columns": null, + "label": "three-dee", + "fontSize": 16, + "fontFamily": "DEFAULT", + "language": "", + "color": "N1", + "italic": false, + "bold": true, + "underline": false, + "labelWidth": 69, + "labelHeight": 21, + "labelPosition": "INSIDE_MIDDLE_CENTER", + "zIndex": 0, + "level": 1 + } + ], + "connections": [], + "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/border-radius-percent/dagre/sketch.exp.svg b/e2etests/testdata/stable/border-radius-percent/dagre/sketch.exp.svg new file mode 100644 index 000000000..957ed96da --- /dev/null +++ b/e2etests/testdata/stable/border-radius-percent/dagre/sketch.exp.svg @@ -0,0 +1,97 @@ +xymultiple2double + +three-dee + + + \ No newline at end of file diff --git a/e2etests/testdata/stable/border-radius-percent/elk/board.exp.json b/e2etests/testdata/stable/border-radius-percent/elk/board.exp.json new file mode 100644 index 000000000..edaede7a9 --- /dev/null +++ b/e2etests/testdata/stable/border-radius-percent/elk/board.exp.json @@ -0,0 +1,253 @@ +{ + "name": "", + "isFolderOnly": false, + "fontFamily": "SourceSansPro", + "shapes": [ + { + "id": "x", + "type": "rectangle", + "pos": { + "x": 12, + "y": 12 + }, + "width": 53, + "height": 66, + "opacity": 1, + "strokeDash": 0, + "strokeWidth": 2, + "borderRadius": 0.1, + "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": "x", + "fontSize": 16, + "fontFamily": "DEFAULT", + "language": "", + "color": "N1", + "italic": false, + "bold": true, + "underline": false, + "labelWidth": 8, + "labelHeight": 21, + "labelPosition": "INSIDE_MIDDLE_CENTER", + "zIndex": 0, + "level": 1 + }, + { + "id": "y", + "type": "rectangle", + "pos": { + "x": 85, + "y": 12 + }, + "width": 54, + "height": 66, + "opacity": 1, + "strokeDash": 0, + "strokeWidth": 2, + "borderRadius": 0.2, + "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": "y", + "fontSize": 16, + "fontFamily": "DEFAULT", + "language": "", + "color": "N1", + "italic": false, + "bold": true, + "underline": false, + "labelWidth": 9, + "labelHeight": 21, + "labelPosition": "INSIDE_MIDDLE_CENTER", + "zIndex": 0, + "level": 1 + }, + { + "id": "multiple2", + "type": "rectangle", + "pos": { + "x": 159, + "y": 12 + }, + "width": 112, + "height": 66, + "opacity": 1, + "strokeDash": 0, + "strokeWidth": 2, + "borderRadius": 0.25, + "fill": "B6", + "stroke": "B1", + "shadow": false, + "3d": false, + "multiple": true, + "double-border": false, + "tooltip": "", + "link": "", + "icon": null, + "iconPosition": "", + "blend": false, + "fields": null, + "methods": null, + "columns": null, + "label": "multiple2", + "fontSize": 16, + "fontFamily": "DEFAULT", + "language": "", + "color": "N1", + "italic": false, + "bold": true, + "underline": false, + "labelWidth": 67, + "labelHeight": 21, + "labelPosition": "INSIDE_MIDDLE_CENTER", + "zIndex": 0, + "level": 1 + }, + { + "id": "double", + "type": "rectangle", + "pos": { + "x": 291, + "y": 12 + }, + "width": 94, + "height": 66, + "opacity": 1, + "strokeDash": 0, + "strokeWidth": 2, + "borderRadius": 0.35, + "fill": "B6", + "stroke": "B1", + "shadow": false, + "3d": false, + "multiple": false, + "double-border": true, + "tooltip": "", + "link": "", + "icon": null, + "iconPosition": "", + "blend": false, + "fields": null, + "methods": null, + "columns": null, + "label": "double", + "fontSize": 16, + "fontFamily": "DEFAULT", + "language": "", + "color": "N1", + "italic": false, + "bold": true, + "underline": false, + "labelWidth": 49, + "labelHeight": 21, + "labelPosition": "INSIDE_MIDDLE_CENTER", + "zIndex": 0, + "level": 1 + }, + { + "id": "three-dee", + "type": "rectangle", + "pos": { + "x": 405, + "y": 12 + }, + "width": 114, + "height": 66, + "opacity": 1, + "strokeDash": 0, + "strokeWidth": 2, + "borderRadius": 0.3, + "fill": "B6", + "stroke": "B1", + "shadow": false, + "3d": true, + "multiple": false, + "double-border": false, + "tooltip": "", + "link": "", + "icon": null, + "iconPosition": "", + "blend": false, + "fields": null, + "methods": null, + "columns": null, + "label": "three-dee", + "fontSize": 16, + "fontFamily": "DEFAULT", + "language": "", + "color": "N1", + "italic": false, + "bold": true, + "underline": false, + "labelWidth": 69, + "labelHeight": 21, + "labelPosition": "INSIDE_MIDDLE_CENTER", + "zIndex": 0, + "level": 1 + } + ], + "connections": [], + "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/border-radius-percent/elk/sketch.exp.svg b/e2etests/testdata/stable/border-radius-percent/elk/sketch.exp.svg new file mode 100644 index 000000000..39e900e26 --- /dev/null +++ b/e2etests/testdata/stable/border-radius-percent/elk/sketch.exp.svg @@ -0,0 +1,97 @@ +xymultiple2double + +three-dee + + + \ No newline at end of file diff --git a/e2etests/testdata/stable/border-radius/dagre/sketch.exp.svg b/e2etests/testdata/stable/border-radius/dagre/sketch.exp.svg index 6d656e2fc..7e7f2fd96 100644 --- a/e2etests/testdata/stable/border-radius/dagre/sketch.exp.svg +++ b/e2etests/testdata/stable/border-radius/dagre/sketch.exp.svg @@ -89,7 +89,7 @@ .d2-441686790 .color-AA4{color:#EDF0FD;} .d2-441686790 .color-AA5{color:#F7F8FE;} .d2-441686790 .color-AB4{color:#EDF0FD;} - .d2-441686790 .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}]]>xymultiple2double + .d2-441686790 .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}]]>xymultiple2double three-dee diff --git a/e2etests/testdata/stable/border-radius/elk/sketch.exp.svg b/e2etests/testdata/stable/border-radius/elk/sketch.exp.svg index ff4031558..3b5684986 100644 --- a/e2etests/testdata/stable/border-radius/elk/sketch.exp.svg +++ b/e2etests/testdata/stable/border-radius/elk/sketch.exp.svg @@ -89,7 +89,7 @@ .d2-2541858325 .color-AA4{color:#EDF0FD;} .d2-2541858325 .color-AA5{color:#F7F8FE;} .d2-2541858325 .color-AB4{color:#EDF0FD;} - .d2-2541858325 .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}]]>xymultiple2double + .d2-2541858325 .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}]]>xymultiple2double three-dee From ed79ccae74a4145783fca429f140b3e6ad009599 Mon Sep 17 00:00:00 2001 From: Antoine Poivey Date: Thu, 13 Apr 2023 16:20:31 +0200 Subject: [PATCH 5/8] feat: revert percentage border-radius. Accept higher border-radius value and limit it to half of the smaller shape side to be rendered as a pill --- d2exporter/export.go | 2 +- d2graph/d2graph.go | 13 +++---------- d2renderers/d2svg/d2svg.go | 10 ++-------- d2target/d2target.go | 2 +- d2themes/element.go | 16 ++++++---------- 5 files changed, 13 insertions(+), 30 deletions(-) diff --git a/d2exporter/export.go b/d2exporter/export.go index cb75b6809..8524e7542 100644 --- a/d2exporter/export.go +++ b/d2exporter/export.go @@ -102,7 +102,7 @@ func applyStyles(shape *d2target.Shape, obj *d2graph.Object) { shape.Multiple, _ = strconv.ParseBool(obj.Attributes.Style.Multiple.Value) } if obj.Attributes.Style.BorderRadius != nil { - shape.BorderRadius, _ = strconv.ParseFloat(obj.Attributes.Style.BorderRadius.Value, 64) + shape.BorderRadius, _ = strconv.Atoi(obj.Attributes.Style.BorderRadius.Value) } if obj.Attributes.Style.FontColor != nil { diff --git a/d2graph/d2graph.go b/d2graph/d2graph.go index ee3700f16..0f0c4daf0 100644 --- a/d2graph/d2graph.go +++ b/d2graph/d2graph.go @@ -172,10 +172,6 @@ type Style struct { DoubleBorder *Scalar `json:"doubleBorder,omitempty"` } -func hasDecimalValue(value float64) bool { - return math.Mod(value, 1) != 0 -} - func (s *Style) Apply(key, value string) error { switch key { case "opacity": @@ -233,12 +229,9 @@ func (s *Style) Apply(key, value string) error { if s.BorderRadius == nil { break } - f, err := strconv.ParseFloat(value, 64) - if err != nil || (f < 0 || f > 20) { - return errors.New(`expected "border-radius" to be a number between 0 and 20`) - } - if f > 1 && hasDecimalValue(f) { - return errors.New(`expected "border-radius" to be an integer if greater than 1`) + f, err := strconv.Atoi(value) + if err != nil || (f < 0) { + return errors.New(`expected "border-radius" to be a number greater or equal to 0`) } s.BorderRadius.Value = value case "shadow": diff --git a/d2renderers/d2svg/d2svg.go b/d2renderers/d2svg/d2svg.go index 8f39ff6b2..6186222bd 100644 --- a/d2renderers/d2svg/d2svg.go +++ b/d2renderers/d2svg/d2svg.go @@ -1027,7 +1027,7 @@ func drawShape(writer io.Writer, diagramHash string, targetShape d2target.Shape, case d2target.ShapeRectangle, d2target.ShapeSequenceDiagram, "": borderRadius := math.MaxFloat64 if targetShape.BorderRadius != 0 { - borderRadius = targetShape.BorderRadius + borderRadius = float64(targetShape.BorderRadius) } if targetShape.ThreeDee { fmt.Fprint(writer, render3dRect(targetShape)) @@ -1043,7 +1043,6 @@ func drawShape(writer io.Writer, diagramHash string, targetShape d2target.Shape, el.Stroke = stroke el.Style = style el.Rx = borderRadius - el.Ry = borderRadius fmt.Fprint(writer, el.Render()) } if sketchRunner != nil { @@ -1063,7 +1062,6 @@ func drawShape(writer io.Writer, diagramHash string, targetShape d2target.Shape, el.Stroke = stroke el.Style = style el.Rx = borderRadius - el.Ry = borderRadius fmt.Fprint(writer, el.Render()) } } else { @@ -1078,7 +1076,6 @@ func drawShape(writer io.Writer, diagramHash string, targetShape d2target.Shape, el.Stroke = stroke el.Style = style el.Rx = borderRadius - el.Ry = borderRadius fmt.Fprint(writer, el.Render()) el = d2themes.NewThemableElement("rect") @@ -1090,7 +1087,6 @@ func drawShape(writer io.Writer, diagramHash string, targetShape d2target.Shape, el.Stroke = stroke el.Style = style el.Rx = borderRadius - el.Ry = borderRadius fmt.Fprint(writer, el.Render()) } if sketchRunner != nil { @@ -1110,7 +1106,6 @@ func drawShape(writer io.Writer, diagramHash string, targetShape d2target.Shape, el.Stroke = stroke el.Style = style el.Rx = borderRadius - el.Ry = borderRadius fmt.Fprint(writer, el.Render()) el = d2themes.NewThemableElement("rect") @@ -1122,7 +1117,6 @@ func drawShape(writer io.Writer, diagramHash string, targetShape d2target.Shape, el.Stroke = stroke el.Style = style el.Rx = borderRadius - el.Ry = borderRadius fmt.Fprint(writer, el.Render()) } } @@ -1785,7 +1779,7 @@ func Render(diagram *d2target.Diagram, opts *RenderOpts) ([]byte, error) { backgroundEl.Fill = diagram.Root.Fill backgroundEl.Stroke = diagram.Root.Stroke backgroundEl.FillPattern = diagram.Root.FillPattern - backgroundEl.Rx = diagram.Root.BorderRadius + backgroundEl.Rx = float64(diagram.Root.BorderRadius) if diagram.Root.StrokeDash != 0 { dashSize, gapSize := svg.GetStrokeDashAttributes(float64(diagram.Root.StrokeWidth), diagram.Root.StrokeDash) backgroundEl.StrokeDashArray = fmt.Sprintf("%f, %f", dashSize, gapSize) diff --git a/d2target/d2target.go b/d2target/d2target.go index ec8c4a6e6..5729354e1 100644 --- a/d2target/d2target.go +++ b/d2target/d2target.go @@ -313,7 +313,7 @@ type Shape struct { StrokeDash float64 `json:"strokeDash"` StrokeWidth int `json:"strokeWidth"` - BorderRadius float64 `json:"borderRadius"` + BorderRadius int `json:"borderRadius"` Fill string `json:"fill"` FillPattern string `json:"fillPattern,omitempty"` diff --git a/d2themes/element.go b/d2themes/element.go index 515e694fe..344525d5c 100644 --- a/d2themes/element.go +++ b/d2themes/element.go @@ -140,10 +140,10 @@ func (el *ThemableElement) Render() string { out += fmt.Sprintf(` r="%f"`, el.R) } if el.Rx != math.MaxFloat64 { - out += fmt.Sprintf(` rx="%f"`, calculateAxisRadius(el.Rx, el.Width)) + out += fmt.Sprintf(` rx="%f"`, calculateAxisRadius(el.Rx, el.Width, el.Height)) } if el.Ry != math.MaxFloat64 { - out += fmt.Sprintf(` ry="%f"`, calculateAxisRadius(el.Ry, el.Height)) + out += fmt.Sprintf(` ry="%f"`, calculateAxisRadius(el.Ry, el.Width, el.Height)) } if el.Cx != math.MaxFloat64 { out += fmt.Sprintf(` cx="%f"`, el.Cx) @@ -228,12 +228,8 @@ func (el *ThemableElement) Render() string { return out } -func calculateAxisRadius(borderRadius float64, sideLength float64) float64 { - if borderRadius >= 1 { - return borderRadius - } - if sideLength == math.MaxFloat64 { - return 0 - } - return borderRadius * sideLength +func calculateAxisRadius(borderRadius float64, width float64, height float64) float64 { + var minimumSideSize = math.Min(width, height) + var maximumBorderRadiusValue = minimumSideSize / 2.0 + return math.Min(borderRadius, maximumBorderRadiusValue) } From b2d0a44e2f8a66730ed407c46abc378ce2d9c987 Mon Sep 17 00:00:00 2001 From: Antoine Poivey Date: Thu, 13 Apr 2023 18:18:28 +0200 Subject: [PATCH 6/8] remove border-radius percent tests, add border-radius pill (with a big value) test --- d2compiler/compile_test.go | 18 +- .../hello_world_png_sketch.exp.png | Bin 28841 -> 28419 bytes .../TestCLI_E2E/internal_linked_pdf.exp.pdf | Bin 79882 -> 79499 bytes e2etests/stable_test.go | 12 +- .../arrowhead_adjustment/dagre/sketch.exp.svg | 2 +- .../arrowhead_adjustment/elk/sketch.exp.svg | 2 +- .../dagre/sketch.exp.svg | 97 ----------- .../dagre/board.exp.json | 10 +- .../dagre/sketch.exp.svg | 97 +++++++++++ .../elk/board.exp.json | 10 +- .../elk/sketch.exp.svg | 154 +++++++++--------- .../stable/border-radius/dagre/sketch.exp.svg | 2 +- .../stable/border-radius/elk/sketch.exp.svg | 2 +- ...rder-radius-more-than-100-percent.exp.json | 12 -- .../border-radius-more-than-20.exp.json | 12 -- .../border-radius-negative.exp.json | 2 +- 16 files changed, 196 insertions(+), 236 deletions(-) delete mode 100644 e2etests/testdata/stable/border-radius-percent/dagre/sketch.exp.svg rename e2etests/testdata/stable/{border-radius-percent => border-radius-pill-shape}/dagre/board.exp.json (97%) create mode 100644 e2etests/testdata/stable/border-radius-pill-shape/dagre/sketch.exp.svg rename e2etests/testdata/stable/{border-radius-percent => border-radius-pill-shape}/elk/board.exp.json (97%) rename e2etests/testdata/stable/{border-radius-percent => border-radius-pill-shape}/elk/sketch.exp.svg (56%) delete mode 100644 testdata/d2compiler/TestCompile/border-radius-more-than-100-percent.exp.json delete mode 100644 testdata/d2compiler/TestCompile/border-radius-more-than-20.exp.json diff --git a/d2compiler/compile_test.go b/d2compiler/compile_test.go index 04a82103c..7fc88f41c 100644 --- a/d2compiler/compile_test.go +++ b/d2compiler/compile_test.go @@ -2261,23 +2261,7 @@ layers: { x: { style.border-radius: -1 }`, - expErr: `d2/testdata/d2compiler/TestCompile/border-radius-negative.d2:3:24: expected "border-radius" to be a number between 0 and 20`, - }, - { - name: "border-radius-more-than-20", - text: `x -x: { - style.border-radius: 21 -}`, - expErr: `d2/testdata/d2compiler/TestCompile/border-radius-more-than-20.d2:3:24: expected "border-radius" to be a number between 0 and 20`, - }, - { - name: "border-radius-more-than-100-percent", - text: `x -x: { - style.border-radius: 1.5 -}`, - expErr: `d2/testdata/d2compiler/TestCompile/border-radius-more-than-100-percent.d2:3:24: expected "border-radius" to be an integer if greater than 1`, + expErr: `d2/testdata/d2compiler/TestCompile/border-radius-negative.d2:3:24: expected "border-radius" to be a number greater or equal to 0`, }, { name: "near_near_const", diff --git a/e2etests-cli/testdata/TestCLI_E2E/hello_world_png_sketch.exp.png b/e2etests-cli/testdata/TestCLI_E2E/hello_world_png_sketch.exp.png index db70b585c509351d325f7f2ab16cacf226fc00aa..75d351d33c12c62e72214a28c5816fb45fce2f5b 100644 GIT binary patch literal 28419 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 J%33PW{{X^l51Ie~ delta 58989 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%0DBw8N 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 diff --git a/e2etests/stable_test.go b/e2etests/stable_test.go index d24f05afa..d4f59865e 100644 --- a/e2etests/stable_test.go +++ b/e2etests/stable_test.go @@ -2333,24 +2333,24 @@ three-dee: { `, }, { - name: "border-radius-percent", + name: "border-radius-pill-shape", script: ` x: { - style.border-radius: 0.1 + style.border-radius: 999 } y: { - style.border-radius: 0.2 + style.border-radius: 999 } multiple2: { - style.border-radius: 0.25 + style.border-radius: 999 style.multiple: true } double: { - style.border-radius: 0.35 + style.border-radius: 999 style.double-border: true } three-dee: { - style.border-radius: 0.3 + style.border-radius: 999 style.3d: true } `, diff --git a/e2etests/testdata/stable/arrowhead_adjustment/dagre/sketch.exp.svg b/e2etests/testdata/stable/arrowhead_adjustment/dagre/sketch.exp.svg index 5deab3ab2..54ce31c07 100644 --- a/e2etests/testdata/stable/arrowhead_adjustment/dagre/sketch.exp.svg +++ b/e2etests/testdata/stable/arrowhead_adjustment/dagre/sketch.exp.svg @@ -96,7 +96,7 @@ .d2-1296221605 .color-AA4{color:#EDF0FD;} .d2-1296221605 .color-AA5{color:#F7F8FE;} .d2-1296221605 .color-AB4{color:#EDF0FD;} - .d2-1296221605 .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}]]>abc * + .d2-1296221605 .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}]]>abc * \ No newline at end of file diff --git a/e2etests/testdata/stable/arrowhead_adjustment/elk/sketch.exp.svg b/e2etests/testdata/stable/arrowhead_adjustment/elk/sketch.exp.svg index 5dbc57b8c..687a8f073 100644 --- a/e2etests/testdata/stable/arrowhead_adjustment/elk/sketch.exp.svg +++ b/e2etests/testdata/stable/arrowhead_adjustment/elk/sketch.exp.svg @@ -96,7 +96,7 @@ .d2-1482414948 .color-AA4{color:#EDF0FD;} .d2-1482414948 .color-AA5{color:#F7F8FE;} .d2-1482414948 .color-AB4{color:#EDF0FD;} - .d2-1482414948 .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}]]>abc * + .d2-1482414948 .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}]]>abc * \ No newline at end of file diff --git a/e2etests/testdata/stable/border-radius-percent/dagre/sketch.exp.svg b/e2etests/testdata/stable/border-radius-percent/dagre/sketch.exp.svg deleted file mode 100644 index 684d85364..000000000 --- a/e2etests/testdata/stable/border-radius-percent/dagre/sketch.exp.svg +++ /dev/null @@ -1,97 +0,0 @@ -xymultiple2double - -three-dee - - - \ No newline at end of file diff --git a/e2etests/testdata/stable/border-radius-percent/dagre/board.exp.json b/e2etests/testdata/stable/border-radius-pill-shape/dagre/board.exp.json similarity index 97% rename from e2etests/testdata/stable/border-radius-percent/dagre/board.exp.json rename to e2etests/testdata/stable/border-radius-pill-shape/dagre/board.exp.json index 2193f8c97..bc1d49918 100644 --- a/e2etests/testdata/stable/border-radius-percent/dagre/board.exp.json +++ b/e2etests/testdata/stable/border-radius-pill-shape/dagre/board.exp.json @@ -15,7 +15,7 @@ "opacity": 1, "strokeDash": 0, "strokeWidth": 2, - "borderRadius": 0.1, + "borderRadius": 999, "fill": "B6", "stroke": "B1", "shadow": false, @@ -56,7 +56,7 @@ "opacity": 1, "strokeDash": 0, "strokeWidth": 2, - "borderRadius": 0.2, + "borderRadius": 999, "fill": "B6", "stroke": "B1", "shadow": false, @@ -97,7 +97,7 @@ "opacity": 1, "strokeDash": 0, "strokeWidth": 2, - "borderRadius": 0.25, + "borderRadius": 999, "fill": "B6", "stroke": "B1", "shadow": false, @@ -138,7 +138,7 @@ "opacity": 1, "strokeDash": 0, "strokeWidth": 2, - "borderRadius": 0.35, + "borderRadius": 999, "fill": "B6", "stroke": "B1", "shadow": false, @@ -179,7 +179,7 @@ "opacity": 1, "strokeDash": 0, "strokeWidth": 2, - "borderRadius": 0.3, + "borderRadius": 999, "fill": "B6", "stroke": "B1", "shadow": false, diff --git a/e2etests/testdata/stable/border-radius-pill-shape/dagre/sketch.exp.svg b/e2etests/testdata/stable/border-radius-pill-shape/dagre/sketch.exp.svg new file mode 100644 index 000000000..9f23c496a --- /dev/null +++ b/e2etests/testdata/stable/border-radius-pill-shape/dagre/sketch.exp.svg @@ -0,0 +1,97 @@ +xymultiple2double + +three-dee + + + \ No newline at end of file diff --git a/e2etests/testdata/stable/border-radius-percent/elk/board.exp.json b/e2etests/testdata/stable/border-radius-pill-shape/elk/board.exp.json similarity index 97% rename from e2etests/testdata/stable/border-radius-percent/elk/board.exp.json rename to e2etests/testdata/stable/border-radius-pill-shape/elk/board.exp.json index edaede7a9..2dbef6f05 100644 --- a/e2etests/testdata/stable/border-radius-percent/elk/board.exp.json +++ b/e2etests/testdata/stable/border-radius-pill-shape/elk/board.exp.json @@ -15,7 +15,7 @@ "opacity": 1, "strokeDash": 0, "strokeWidth": 2, - "borderRadius": 0.1, + "borderRadius": 999, "fill": "B6", "stroke": "B1", "shadow": false, @@ -56,7 +56,7 @@ "opacity": 1, "strokeDash": 0, "strokeWidth": 2, - "borderRadius": 0.2, + "borderRadius": 999, "fill": "B6", "stroke": "B1", "shadow": false, @@ -97,7 +97,7 @@ "opacity": 1, "strokeDash": 0, "strokeWidth": 2, - "borderRadius": 0.25, + "borderRadius": 999, "fill": "B6", "stroke": "B1", "shadow": false, @@ -138,7 +138,7 @@ "opacity": 1, "strokeDash": 0, "strokeWidth": 2, - "borderRadius": 0.35, + "borderRadius": 999, "fill": "B6", "stroke": "B1", "shadow": false, @@ -179,7 +179,7 @@ "opacity": 1, "strokeDash": 0, "strokeWidth": 2, - "borderRadius": 0.3, + "borderRadius": 999, "fill": "B6", "stroke": "B1", "shadow": false, diff --git a/e2etests/testdata/stable/border-radius-percent/elk/sketch.exp.svg b/e2etests/testdata/stable/border-radius-pill-shape/elk/sketch.exp.svg similarity index 56% rename from e2etests/testdata/stable/border-radius-percent/elk/sketch.exp.svg rename to e2etests/testdata/stable/border-radius-pill-shape/elk/sketch.exp.svg index 26c977807..b9ea856c3 100644 --- a/e2etests/testdata/stable/border-radius-percent/elk/sketch.exp.svg +++ b/e2etests/testdata/stable/border-radius-pill-shape/elk/sketch.exp.svg @@ -1,9 +1,9 @@ -xymultiple2double + .d2-2772170457 .fill-N1{fill:#0A0F25;} + .d2-2772170457 .fill-N2{fill:#676C7E;} + .d2-2772170457 .fill-N3{fill:#9499AB;} + .d2-2772170457 .fill-N4{fill:#CFD2DD;} + .d2-2772170457 .fill-N5{fill:#DEE1EB;} + .d2-2772170457 .fill-N6{fill:#EEF1F8;} + .d2-2772170457 .fill-N7{fill:#FFFFFF;} + .d2-2772170457 .fill-B1{fill:#0D32B2;} + .d2-2772170457 .fill-B2{fill:#0D32B2;} + .d2-2772170457 .fill-B3{fill:#E3E9FD;} + .d2-2772170457 .fill-B4{fill:#E3E9FD;} + .d2-2772170457 .fill-B5{fill:#EDF0FD;} + .d2-2772170457 .fill-B6{fill:#F7F8FE;} + .d2-2772170457 .fill-AA2{fill:#4A6FF3;} + .d2-2772170457 .fill-AA4{fill:#EDF0FD;} + .d2-2772170457 .fill-AA5{fill:#F7F8FE;} + .d2-2772170457 .fill-AB4{fill:#EDF0FD;} + .d2-2772170457 .fill-AB5{fill:#F7F8FE;} + .d2-2772170457 .stroke-N1{stroke:#0A0F25;} + .d2-2772170457 .stroke-N2{stroke:#676C7E;} + .d2-2772170457 .stroke-N3{stroke:#9499AB;} + .d2-2772170457 .stroke-N4{stroke:#CFD2DD;} + .d2-2772170457 .stroke-N5{stroke:#DEE1EB;} + .d2-2772170457 .stroke-N6{stroke:#EEF1F8;} + .d2-2772170457 .stroke-N7{stroke:#FFFFFF;} + .d2-2772170457 .stroke-B1{stroke:#0D32B2;} + .d2-2772170457 .stroke-B2{stroke:#0D32B2;} + .d2-2772170457 .stroke-B3{stroke:#E3E9FD;} + .d2-2772170457 .stroke-B4{stroke:#E3E9FD;} + .d2-2772170457 .stroke-B5{stroke:#EDF0FD;} + .d2-2772170457 .stroke-B6{stroke:#F7F8FE;} + .d2-2772170457 .stroke-AA2{stroke:#4A6FF3;} + .d2-2772170457 .stroke-AA4{stroke:#EDF0FD;} + .d2-2772170457 .stroke-AA5{stroke:#F7F8FE;} + .d2-2772170457 .stroke-AB4{stroke:#EDF0FD;} + .d2-2772170457 .stroke-AB5{stroke:#F7F8FE;} + .d2-2772170457 .background-color-N1{background-color:#0A0F25;} + .d2-2772170457 .background-color-N2{background-color:#676C7E;} + .d2-2772170457 .background-color-N3{background-color:#9499AB;} + .d2-2772170457 .background-color-N4{background-color:#CFD2DD;} + .d2-2772170457 .background-color-N5{background-color:#DEE1EB;} + .d2-2772170457 .background-color-N6{background-color:#EEF1F8;} + .d2-2772170457 .background-color-N7{background-color:#FFFFFF;} + .d2-2772170457 .background-color-B1{background-color:#0D32B2;} + .d2-2772170457 .background-color-B2{background-color:#0D32B2;} + .d2-2772170457 .background-color-B3{background-color:#E3E9FD;} + .d2-2772170457 .background-color-B4{background-color:#E3E9FD;} + .d2-2772170457 .background-color-B5{background-color:#EDF0FD;} + .d2-2772170457 .background-color-B6{background-color:#F7F8FE;} + .d2-2772170457 .background-color-AA2{background-color:#4A6FF3;} + .d2-2772170457 .background-color-AA4{background-color:#EDF0FD;} + .d2-2772170457 .background-color-AA5{background-color:#F7F8FE;} + .d2-2772170457 .background-color-AB4{background-color:#EDF0FD;} + .d2-2772170457 .background-color-AB5{background-color:#F7F8FE;} + .d2-2772170457 .color-N1{color:#0A0F25;} + .d2-2772170457 .color-N2{color:#676C7E;} + .d2-2772170457 .color-N3{color:#9499AB;} + .d2-2772170457 .color-N4{color:#CFD2DD;} + .d2-2772170457 .color-N5{color:#DEE1EB;} + .d2-2772170457 .color-N6{color:#EEF1F8;} + .d2-2772170457 .color-N7{color:#FFFFFF;} + .d2-2772170457 .color-B1{color:#0D32B2;} + .d2-2772170457 .color-B2{color:#0D32B2;} + .d2-2772170457 .color-B3{color:#E3E9FD;} + .d2-2772170457 .color-B4{color:#E3E9FD;} + .d2-2772170457 .color-B5{color:#EDF0FD;} + .d2-2772170457 .color-B6{color:#F7F8FE;} + .d2-2772170457 .color-AA2{color:#4A6FF3;} + .d2-2772170457 .color-AA4{color:#EDF0FD;} + .d2-2772170457 .color-AA5{color:#F7F8FE;} + .d2-2772170457 .color-AB4{color:#EDF0FD;} + .d2-2772170457 .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}]]>xymultiple2double -three-dee +three-dee \ No newline at end of file diff --git a/e2etests/testdata/stable/border-radius/dagre/sketch.exp.svg b/e2etests/testdata/stable/border-radius/dagre/sketch.exp.svg index 3eb369766..7f53a764d 100644 --- a/e2etests/testdata/stable/border-radius/dagre/sketch.exp.svg +++ b/e2etests/testdata/stable/border-radius/dagre/sketch.exp.svg @@ -89,7 +89,7 @@ .d2-441686790 .color-AA4{color:#EDF0FD;} .d2-441686790 .color-AA5{color:#F7F8FE;} .d2-441686790 .color-AB4{color:#EDF0FD;} - .d2-441686790 .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}]]>xymultiple2double + .d2-441686790 .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}]]>xymultiple2double three-dee diff --git a/e2etests/testdata/stable/border-radius/elk/sketch.exp.svg b/e2etests/testdata/stable/border-radius/elk/sketch.exp.svg index 2cf7fe92e..2f44a211a 100644 --- a/e2etests/testdata/stable/border-radius/elk/sketch.exp.svg +++ b/e2etests/testdata/stable/border-radius/elk/sketch.exp.svg @@ -89,7 +89,7 @@ .d2-2541858325 .color-AA4{color:#EDF0FD;} .d2-2541858325 .color-AA5{color:#F7F8FE;} .d2-2541858325 .color-AB4{color:#EDF0FD;} - .d2-2541858325 .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}]]>xymultiple2double + .d2-2541858325 .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}]]>xymultiple2double three-dee diff --git a/testdata/d2compiler/TestCompile/border-radius-more-than-100-percent.exp.json b/testdata/d2compiler/TestCompile/border-radius-more-than-100-percent.exp.json deleted file mode 100644 index 604c3015b..000000000 --- a/testdata/d2compiler/TestCompile/border-radius-more-than-100-percent.exp.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "graph": null, - "err": { - "ioerr": null, - "errs": [ - { - "range": "d2/testdata/d2compiler/TestCompile/border-radius-more-than-100-percent.d2,2:23:30-2:26:33", - "errmsg": "d2/testdata/d2compiler/TestCompile/border-radius-more-than-100-percent.d2:3:24: expected \"border-radius\" to be an integer if greater than 1" - } - ] - } -} diff --git a/testdata/d2compiler/TestCompile/border-radius-more-than-20.exp.json b/testdata/d2compiler/TestCompile/border-radius-more-than-20.exp.json deleted file mode 100644 index fd3b9618f..000000000 --- a/testdata/d2compiler/TestCompile/border-radius-more-than-20.exp.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "graph": null, - "err": { - "ioerr": null, - "errs": [ - { - "range": "d2/testdata/d2compiler/TestCompile/border-radius-more-than-20.d2,2:23:30-2:25:32", - "errmsg": "d2/testdata/d2compiler/TestCompile/border-radius-more-than-20.d2:3:24: expected \"border-radius\" to be a number between 0 and 20" - } - ] - } -} diff --git a/testdata/d2compiler/TestCompile/border-radius-negative.exp.json b/testdata/d2compiler/TestCompile/border-radius-negative.exp.json index 25584f80a..fe11d846b 100644 --- a/testdata/d2compiler/TestCompile/border-radius-negative.exp.json +++ b/testdata/d2compiler/TestCompile/border-radius-negative.exp.json @@ -5,7 +5,7 @@ "errs": [ { "range": "d2/testdata/d2compiler/TestCompile/border-radius-negative.d2,2:23:30-2:25:32", - "errmsg": "d2/testdata/d2compiler/TestCompile/border-radius-negative.d2:3:24: expected \"border-radius\" to be a number between 0 and 20" + "errmsg": "d2/testdata/d2compiler/TestCompile/border-radius-negative.d2:3:24: expected \"border-radius\" to be a number greater or equal to 0" } ] } From fc6022996a64b6bcdc43aa20156bfd795b97325c Mon Sep 17 00:00:00 2001 From: Antoine Poivey Date: Thu, 20 Apr 2023 16:30:52 +0200 Subject: [PATCH 7/8] fix: update code style --- d2themes/element.go | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/d2themes/element.go b/d2themes/element.go index 344525d5c..2bc52c57e 100644 --- a/d2themes/element.go +++ b/d2themes/element.go @@ -228,8 +228,8 @@ func (el *ThemableElement) Render() string { return out } -func calculateAxisRadius(borderRadius float64, width float64, height float64) float64 { - var minimumSideSize = math.Min(width, height) - var maximumBorderRadiusValue = minimumSideSize / 2.0 +func calculateAxisRadius(borderRadius, width, height float64) float64 { + minimumSideSize := math.Min(width, height) + maximumBorderRadiusValue := minimumSideSize / 2.0 return math.Min(borderRadius, maximumBorderRadiusValue) } From 9e400b254b8a6e9036a5a41e50faa9b261e66065 Mon Sep 17 00:00:00 2001 From: Antoine Poivey Date: Thu, 20 Apr 2023 16:53:02 +0200 Subject: [PATCH 8/8] uppdate test post merge --- .../hello_world_png_sketch.exp.png | Bin 28419 -> 28419 bytes .../TestCLI_E2E/internal_linked_pdf.exp.pdf | Bin 79499 -> 79608 bytes .../arrowhead_adjustment/dagre/sketch.exp.svg | 2 +- .../arrowhead_adjustment/elk/sketch.exp.svg | 2 +- .../dagre/sketch.exp.svg | 2 +- .../elk/sketch.exp.svg | 2 +- 6 files changed, 4 insertions(+), 4 deletions(-) diff --git a/e2etests-cli/testdata/TestCLI_E2E/hello_world_png_sketch.exp.png b/e2etests-cli/testdata/TestCLI_E2E/hello_world_png_sketch.exp.png index 75d351d33c12c62e72214a28c5816fb45fce2f5b..71fb5d174a7fea37ca79a1e2e65cd394ed8910f0 100644 GIT binary patch delta 26 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 F{{S*rss#W5 delta 4718 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 * + .d2-39654206 .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}]]>abc * \ No newline at end of file diff --git a/e2etests/testdata/stable/arrowhead_adjustment/elk/sketch.exp.svg b/e2etests/testdata/stable/arrowhead_adjustment/elk/sketch.exp.svg index f2011c11b..84a80c6db 100644 --- a/e2etests/testdata/stable/arrowhead_adjustment/elk/sketch.exp.svg +++ b/e2etests/testdata/stable/arrowhead_adjustment/elk/sketch.exp.svg @@ -96,7 +96,7 @@ .d2-2391175043 .color-AA4{color:#EDF0FD;} .d2-2391175043 .color-AA5{color:#F7F8FE;} .d2-2391175043 .color-AB4{color:#EDF0FD;} - .d2-2391175043 .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}]]>abc * + .d2-2391175043 .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}]]>abc * \ No newline at end of file diff --git a/e2etests/testdata/stable/border-radius-pill-shape/dagre/sketch.exp.svg b/e2etests/testdata/stable/border-radius-pill-shape/dagre/sketch.exp.svg index 9f23c496a..487e5b08b 100644 --- a/e2etests/testdata/stable/border-radius-pill-shape/dagre/sketch.exp.svg +++ b/e2etests/testdata/stable/border-radius-pill-shape/dagre/sketch.exp.svg @@ -1,4 +1,4 @@ -