From af5b671805f4778e2d3cee40693ef1aedf8ed058 Mon Sep 17 00:00:00 2001 From: melsonic Date: Sun, 4 May 2025 23:50:55 +0530 Subject: [PATCH 1/6] feat: add ability to fade multiple --- d2ast/keywords.go | 8 +- d2compiler/compile.go | 10 ++ d2exporter/export.go | 3 + d2graph/d2graph.go | 50 +++++---- .../testdata/dots-multiple/sketch.exp.svg | 2 +- .../testdata/dots-real/sketch.exp.svg | 2 +- .../testdata/paper-real/sketch.exp.svg | 2 +- .../d2sketch/testdata/terminal/sketch.exp.svg | 2 +- .../d2sketch/testdata/twitter/sketch.exp.svg | 2 +- .../testdata/twitter_dark/sketch.exp.svg | 2 +- d2renderers/d2svg/d2svg.go | 17 +-- .../testdata/twitter/dark_theme.exp.svg | 2 +- d2target/d2target.go | 11 +- .../patterns/multiple/dagre/sketch.exp.svg | 2 +- .../patterns/real-lines/dagre/sketch.exp.svg | 2 +- .../patterns/real/dagre/sketch.exp.svg | 2 +- .../all_shapes_multiple/dagre/sketch.exp.svg | 2 +- .../all_shapes_multiple/elk/sketch.exp.svg | 2 +- .../dagre/sketch.exp.svg | 2 +- .../elk/sketch.exp.svg | 2 +- .../stable/border-radius/dagre/sketch.exp.svg | 2 +- .../stable/border-radius/elk/sketch.exp.svg | 2 +- .../stable/elk_shim/dagre/sketch.exp.svg | 2 +- .../stable/elk_shim/elk/sketch.exp.svg | 2 +- .../grid_outside_labels/dagre/sketch.exp.svg | 2 +- .../grid_outside_labels/elk/sketch.exp.svg | 2 +- .../stable/mono-font/dagre/sketch.exp.svg | 2 +- .../stable/mono-font/elk/sketch.exp.svg | 2 +- .../dagre/sketch.exp.svg | 2 +- .../multiple_box_selection/elk/sketch.exp.svg | 2 +- .../multiple_offset/dagre/sketch.exp.svg | 16 +-- .../stable/multiple_offset/elk/sketch.exp.svg | 16 +-- .../multiple_offset_left/dagre/sketch.exp.svg | 16 +-- .../multiple_offset_left/elk/sketch.exp.svg | 16 +-- .../dagre/sketch.exp.svg | 2 +- .../multiple_person_label/elk/sketch.exp.svg | 2 +- .../stable/nesting_power/dagre/sketch.exp.svg | 2 +- .../stable/nesting_power/elk/sketch.exp.svg | 2 +- .../dagre/sketch.exp.svg | 4 +- .../elk/sketch.exp.svg | 4 +- .../themes/origami/dagre/sketch.exp.svg | 2 +- .../themes/origami/elk/sketch.exp.svg | 2 +- .../themes/terminal/dagre/sketch.exp.svg | 4 +- .../themes/terminal/elk/sketch.exp.svg | 4 +- .../terminal_grayscale/dagre/sketch.exp.svg | 2 +- .../terminal_grayscale/elk/sketch.exp.svg | 2 +- .../multiple_opacity/dagre/board.exp.json | 100 ++++++++++++++++++ .../multiple_opacity/dagre/sketch.exp.svg | 95 +++++++++++++++++ .../txtar/multiple_opacity/elk/board.exp.json | 100 ++++++++++++++++++ .../txtar/multiple_opacity/elk/sketch.exp.svg | 95 +++++++++++++++++ .../txtar/shape-animate/dagre/sketch.exp.svg | 2 +- .../txtar/shape-animate/elk/sketch.exp.svg | 2 +- .../theme-overrides/dagre/sketch.exp.svg | 2 +- .../txtar/theme-overrides/elk/sketch.exp.svg | 2 +- e2etests/txtar.txt | 8 ++ 55 files changed, 539 insertions(+), 110 deletions(-) create mode 100644 e2etests/testdata/txtar/multiple_opacity/dagre/board.exp.json create mode 100644 e2etests/testdata/txtar/multiple_opacity/dagre/sketch.exp.svg create mode 100644 e2etests/testdata/txtar/multiple_opacity/elk/board.exp.json create mode 100644 e2etests/testdata/txtar/multiple_opacity/elk/sketch.exp.svg diff --git a/d2ast/keywords.go b/d2ast/keywords.go index 65f67b775..a7ece2ef5 100644 --- a/d2ast/keywords.go +++ b/d2ast/keywords.go @@ -41,6 +41,7 @@ var CompositeReservedKeywords = map[string]struct{}{ "constraint": {}, "label": {}, "icon": {}, + "multiple": {}, } // StyleKeywords are reserved keywords which cannot exist outside of the "style" keyword @@ -63,9 +64,10 @@ var StyleKeywords = map[string]struct{}{ "text-transform": {}, // Only for shapes - "shadow": {}, - "multiple": {}, - "double-border": {}, + "shadow": {}, + "multiple": {}, + "multiple.opacity": {}, + "double-border": {}, // Only for squares "3d": {}, diff --git a/d2compiler/compile.go b/d2compiler/compile.go index 651238afe..51aae2a2a 100644 --- a/d2compiler/compile.go +++ b/d2compiler/compile.go @@ -763,6 +763,14 @@ func (c *compiler) compileStyleField(styles *d2graph.Style, f *d2ir.Field) { c.errorf(f.LastRef().AST(), `invalid style keyword: "%s"`, f.Name.ScalarString()) return } + if f.Map() != nil { + fields := f.Map().Fields + for i := 0; i < len(fields); i++ { + field := fields[i] + field.Name.SetString(f.Name.ScalarString() + "." + field.Name.ScalarString()) + c.compileStyleField(styles, field) + } + } if f.Primary() == nil { return } @@ -797,6 +805,8 @@ func compileStyleFieldInit(styles *d2graph.Style, f *d2ir.Field) { styles.ThreeDee = &d2graph.Scalar{MapKey: f.LastPrimaryKey()} case "multiple": styles.Multiple = &d2graph.Scalar{MapKey: f.LastPrimaryKey()} + case "multiple.opacity": + styles.MultipleOpacity = &d2graph.Scalar{MapKey: f.LastPrimaryKey()} case "font": styles.Font = &d2graph.Scalar{MapKey: f.LastPrimaryKey()} case "font-size": diff --git a/d2exporter/export.go b/d2exporter/export.go index 56f4b9146..36114fc91 100644 --- a/d2exporter/export.go +++ b/d2exporter/export.go @@ -172,6 +172,9 @@ func applyStyles(shape *d2target.Shape, obj *d2graph.Object) { if obj.Style.Multiple != nil { shape.Multiple, _ = strconv.ParseBool(obj.Style.Multiple.Value) } + if obj.Style.MultipleOpacity != nil { + shape.MultipleOpacity, _ = strconv.ParseFloat(obj.Style.MultipleOpacity.Value, 64) + } if obj.Style.BorderRadius != nil { shape.BorderRadius, _ = strconv.Atoi(obj.Style.BorderRadius.Value) } diff --git a/d2graph/d2graph.go b/d2graph/d2graph.go index ba9a02657..f97769f4e 100644 --- a/d2graph/d2graph.go +++ b/d2graph/d2graph.go @@ -281,26 +281,27 @@ func (r Reference) InEdge() bool { } type Style struct { - Opacity *Scalar `json:"opacity,omitempty"` - Stroke *Scalar `json:"stroke,omitempty"` - Fill *Scalar `json:"fill,omitempty"` - FillPattern *Scalar `json:"fillPattern,omitempty"` - StrokeWidth *Scalar `json:"strokeWidth,omitempty"` - StrokeDash *Scalar `json:"strokeDash,omitempty"` - BorderRadius *Scalar `json:"borderRadius,omitempty"` - Shadow *Scalar `json:"shadow,omitempty"` - ThreeDee *Scalar `json:"3d,omitempty"` - Multiple *Scalar `json:"multiple,omitempty"` - Font *Scalar `json:"font,omitempty"` - FontSize *Scalar `json:"fontSize,omitempty"` - FontColor *Scalar `json:"fontColor,omitempty"` - Animated *Scalar `json:"animated,omitempty"` - Bold *Scalar `json:"bold,omitempty"` - Italic *Scalar `json:"italic,omitempty"` - Underline *Scalar `json:"underline,omitempty"` - Filled *Scalar `json:"filled,omitempty"` - DoubleBorder *Scalar `json:"doubleBorder,omitempty"` - TextTransform *Scalar `json:"textTransform,omitempty"` + Opacity *Scalar `json:"opacity,omitempty"` + Stroke *Scalar `json:"stroke,omitempty"` + Fill *Scalar `json:"fill,omitempty"` + FillPattern *Scalar `json:"fillPattern,omitempty"` + StrokeWidth *Scalar `json:"strokeWidth,omitempty"` + StrokeDash *Scalar `json:"strokeDash,omitempty"` + BorderRadius *Scalar `json:"borderRadius,omitempty"` + Shadow *Scalar `json:"shadow,omitempty"` + ThreeDee *Scalar `json:"3d,omitempty"` + Multiple *Scalar `json:"multiple,omitempty"` + MultipleOpacity *Scalar `json:"multipleOpacity,omitempty"` + Font *Scalar `json:"font,omitempty"` + FontSize *Scalar `json:"fontSize,omitempty"` + FontColor *Scalar `json:"fontColor,omitempty"` + Animated *Scalar `json:"animated,omitempty"` + Bold *Scalar `json:"bold,omitempty"` + Italic *Scalar `json:"italic,omitempty"` + Underline *Scalar `json:"underline,omitempty"` + Filled *Scalar `json:"filled,omitempty"` + DoubleBorder *Scalar `json:"doubleBorder,omitempty"` + TextTransform *Scalar `json:"textTransform,omitempty"` } // NoneTextTransform will return a boolean if the text should not have any @@ -399,6 +400,15 @@ func (s *Style) Apply(key, value string) error { return errors.New(`expected "multiple" to be true or false`) } s.Multiple.Value = value + case "multiple.opacity": + if s.MultipleOpacity == nil { + break + } + f, err := strconv.ParseFloat(value, 64) + if err != nil || (f < 0 || f > 1) { + return errors.New(`expected "opacity" to be a number between 0.0 and 1.0`) + } + s.MultipleOpacity.Value = value case "font": if s.Font == nil { break diff --git a/d2renderers/d2sketch/testdata/dots-multiple/sketch.exp.svg b/d2renderers/d2sketch/testdata/dots-multiple/sketch.exp.svg index c0550e464..598628dc9 100644 --- a/d2renderers/d2sketch/testdata/dots-multiple/sketch.exp.svg +++ b/d2renderers/d2sketch/testdata/dots-multiple/sketch.exp.svg @@ -134,7 +134,7 @@ -rectanglesquarepageparallelogramdocumentcylinderqueuepackagestepcalloutstored_datapersondiamondovalcirclehexagoncloud +rectanglesquarepageparallelogramdocumentcylinderqueuepackagestepcalloutstored_datapersondiamondovalcirclehexagoncloud diff --git a/d2renderers/d2sketch/testdata/dots-real/sketch.exp.svg b/d2renderers/d2sketch/testdata/dots-real/sketch.exp.svg index dd26833b1..418a878db 100644 --- a/d2renderers/d2sketch/testdata/dots-real/sketch.exp.svg +++ b/d2renderers/d2sketch/testdata/dots-real/sketch.exp.svg @@ -170,7 +170,7 @@ -NETWORKD2 Parser+readerio.RuneReader+readerPosd2ast.Position-lookahead[]rune#peekn(n int)(s string, eof bool)+peek()(r rune, eof bool)+rewind()void+commit()voidCELL TOWERSATELLITESTRANSMITTER SEND SEND SEND +NETWORKD2 Parser+readerio.RuneReader+readerPosd2ast.Position-lookahead[]rune#peekn(n int)(s string, eof bool)+peek()(r rune, eof bool)+rewind()void+commit()voidCELL TOWERSATELLITESTRANSMITTER SEND SEND SEND diff --git a/d2renderers/d2sketch/testdata/paper-real/sketch.exp.svg b/d2renderers/d2sketch/testdata/paper-real/sketch.exp.svg index bc6b4a4ed..819b7b384 100644 --- a/d2renderers/d2sketch/testdata/paper-real/sketch.exp.svg +++ b/d2renderers/d2sketch/testdata/paper-real/sketch.exp.svg @@ -1216,7 +1216,7 @@ -NETWORKCELL TOWERSATELLITESTRANSMITTER SEND SEND SEND +NETWORKCELL TOWERSATELLITESTRANSMITTER SEND SEND SEND diff --git a/d2renderers/d2sketch/testdata/terminal/sketch.exp.svg b/d2renderers/d2sketch/testdata/terminal/sketch.exp.svg index 0bfab0535..f26423b23 100644 --- a/d2renderers/d2sketch/testdata/terminal/sketch.exp.svg +++ b/d2renderers/d2sketch/testdata/terminal/sketch.exp.svg @@ -148,7 +148,7 @@ -NETWORKUSERAPI SERVERLOGSCELL TOWERONLINE PORTALDATA PROCESSORSATELLITESTRANSMITTERUISTORAGE SEND SEND SEND PHONE LOGS MAKE CALL ACCESS DISPLAY PERSIST +NETWORKUSERAPI SERVERLOGSCELL TOWERONLINE PORTALDATA PROCESSORSATELLITESTRANSMITTERUISTORAGE SEND SEND SEND PHONE LOGS MAKE CALL ACCESS DISPLAY PERSIST diff --git a/d2renderers/d2sketch/testdata/twitter/sketch.exp.svg b/d2renderers/d2sketch/testdata/twitter/sketch.exp.svg index ae2b56050..cc6aecf47 100644 --- a/d2renderers/d2sketch/testdata/twitter/sketch.exp.svg +++ b/d2renderers/d2sketch/testdata/twitter/sketch.exp.svg @@ -862,7 +862,7 @@ -People discovery serviceAd mixerOnboarding serviceTwitter Frontend WebIphoneAndroidTimelineScorerHome RankerTimeline ServiceHome mixerManhattanGizmoduckSocial graphTweety PiePrediction ServiceHome ScorerManhattanMemcacheFetchFeatureScoringPrediction Service...etc

Timeline mixer

+People discovery serviceAd mixerOnboarding serviceTwitter Frontend WebIphoneAndroidTimelineScorerHome RankerTimeline ServiceHome mixerManhattanGizmoduckSocial graphTweety PiePrediction ServiceHome ScorerManhattanMemcacheFetchFeatureScoringPrediction Service...etc

Timeline mixer

  • Inject ads, who-to-follow, onboarding
  • Conversation module
  • diff --git a/d2renderers/d2sketch/testdata/twitter_dark/sketch.exp.svg b/d2renderers/d2sketch/testdata/twitter_dark/sketch.exp.svg index 0366f1db8..f8cf7f4ba 100644 --- a/d2renderers/d2sketch/testdata/twitter_dark/sketch.exp.svg +++ b/d2renderers/d2sketch/testdata/twitter_dark/sketch.exp.svg @@ -862,7 +862,7 @@ -People discovery serviceAd mixerOnboarding serviceTwitter Frontend WebIphoneAndroidTimelineScorerHome RankerTimeline ServiceHome mixerManhattanGizmoduckSocial graphTweety PiePrediction ServiceHome ScorerManhattanMemcacheFetchFeatureScoringPrediction Service...etc

    Timeline mixer

    +People discovery serviceAd mixerOnboarding serviceTwitter Frontend WebIphoneAndroidTimelineScorerHome RankerTimeline ServiceHome mixerManhattanGizmoduckSocial graphTweety PiePrediction ServiceHome ScorerManhattanMemcacheFetchFeatureScoringPrediction Service...etc

    Timeline mixer

    • Inject ads, who-to-follow, onboarding
    • Conversation module
    • diff --git a/d2renderers/d2svg/d2svg.go b/d2renderers/d2svg/d2svg.go index adf6c5d1a..9f07da82b 100644 --- a/d2renderers/d2svg/d2svg.go +++ b/d2renderers/d2svg/d2svg.go @@ -1326,6 +1326,11 @@ func drawShape(writer, appendixWriter io.Writer, diagramHash string, targetShape opacityStyle = fmt.Sprintf(" style='opacity:%f'", targetShape.Opacity) } + multipleOpacityStyle := "" + if targetShape.MultipleOpacity != 1.0 { + multipleOpacityStyle = fmt.Sprintf(" opacity:%f", targetShape.MultipleOpacity) + } + // this clipPath must be defined outside `g` element if targetShape.BorderRadius != 0 && (targetShape.Type == d2target.ShapeClass || targetShape.Type == d2target.ShapeSQLTable) { fmt.Fprint(writer, clipPathForBorderRadius(diagramHash, targetShape)) @@ -1413,7 +1418,7 @@ func drawShape(writer, appendixWriter io.Writer, diagramHash string, targetShape case d2target.ShapeOval: if targetShape.DoubleBorder { if targetShape.Multiple { - fmt.Fprint(writer, renderDoubleOval(multipleTL, width, height, fill, "", stroke, style, inlineTheme)) + fmt.Fprint(writer, renderDoubleOval(multipleTL, width, height, fill, "", stroke, style+multipleOpacityStyle, inlineTheme)) } if jsRunner != nil { out, err := d2sketch.DoubleOval(jsRunner, targetShape) @@ -1426,7 +1431,7 @@ func drawShape(writer, appendixWriter io.Writer, diagramHash string, targetShape } } else { if targetShape.Multiple { - fmt.Fprint(writer, renderOval(multipleTL, width, height, fill, "", stroke, style, inlineTheme)) + fmt.Fprint(writer, renderOval(multipleTL, width, height, fill, "", stroke, style+multipleOpacityStyle, inlineTheme)) } if jsRunner != nil { out, err := d2sketch.Oval(jsRunner, targetShape) @@ -1472,7 +1477,7 @@ func drawShape(writer, appendixWriter io.Writer, diagramHash string, targetShape el.Height = float64(targetShape.Height) el.Fill = fill el.Stroke = stroke - el.Style = style + el.Style = style + multipleOpacityStyle el.Rx = borderRadius fmt.Fprint(writer, el.Render()) } @@ -1505,7 +1510,7 @@ func drawShape(writer, appendixWriter io.Writer, diagramHash string, targetShape el.Fill = fill el.FillPattern = targetShape.FillPattern el.Stroke = stroke - el.Style = style + el.Style = style + multipleOpacityStyle el.Rx = borderRadius fmt.Fprint(writer, el.Render()) @@ -1561,7 +1566,7 @@ func drawShape(writer, appendixWriter io.Writer, diagramHash string, targetShape el := d2themes.NewThemableElement("path", inlineTheme) el.Fill = fill el.Stroke = stroke - el.Style = style + el.Style = style + multipleOpacityStyle for _, pathData := range multiplePathData { el.D = pathData fmt.Fprint(writer, el.Render()) @@ -1593,7 +1598,7 @@ func drawShape(writer, appendixWriter io.Writer, diagramHash string, targetShape el := d2themes.NewThemableElement("path", inlineTheme) el.Fill = fill el.Stroke = stroke - el.Style = style + el.Style = style + multipleOpacityStyle for _, pathData := range multiplePathData { el.D = pathData fmt.Fprint(writer, el.Render()) diff --git a/d2renderers/d2svg/dark_theme/testdata/twitter/dark_theme.exp.svg b/d2renderers/d2svg/dark_theme/testdata/twitter/dark_theme.exp.svg index 6a0a73407..01117aa74 100644 --- a/d2renderers/d2svg/dark_theme/testdata/twitter/dark_theme.exp.svg +++ b/d2renderers/d2svg/dark_theme/testdata/twitter/dark_theme.exp.svg @@ -842,7 +842,7 @@ .d2-1329315803 .md .contains-task-list:dir(rtl) .task-list-item-checkbox { margin: 0 -1.6em 0.25em 0.2em; } -People discovery serviceAd mixerOnboarding serviceTwitter Frontend WebIphoneAndroidTimelineScorerHome RankerTimeline ServiceHome mixerManhattanGizmoduckSocial graphTweety PiePrediction ServiceHome ScorerManhattanMemcacheFetchFeatureScoringPrediction Service...etc

      Timeline mixer

      +People discovery serviceAd mixerOnboarding serviceTwitter Frontend WebIphoneAndroidTimelineScorerHome RankerTimeline ServiceHome mixerManhattanGizmoduckSocial graphTweety PiePrediction ServiceHome ScorerManhattanMemcacheFetchFeatureScoringPrediction Service...etc

      Timeline mixer

      • Inject ads, who-to-follow, onboarding
      • Conversation module
      • diff --git a/d2target/d2target.go b/d2target/d2target.go index 4880c2859..115e00a42 100644 --- a/d2target/d2target.go +++ b/d2target/d2target.go @@ -497,11 +497,12 @@ type Shape struct { FillPattern string `json:"fillPattern,omitempty"` Stroke string `json:"stroke"` - Animated bool `json:"animated"` - Shadow bool `json:"shadow"` - ThreeDee bool `json:"3d"` - Multiple bool `json:"multiple"` - DoubleBorder bool `json:"double-border"` + Animated bool `json:"animated"` + Shadow bool `json:"shadow"` + ThreeDee bool `json:"3d"` + Multiple bool `json:"multiple"` + MultipleOpacity float64 `json:"multipleOpacity,omitempty"` + DoubleBorder bool `json:"double-border"` Tooltip string `json:"tooltip"` Link string `json:"link"` diff --git a/e2etests/testdata/patterns/multiple/dagre/sketch.exp.svg b/e2etests/testdata/patterns/multiple/dagre/sketch.exp.svg index 9cd6dfc88..1f6803972 100644 --- a/e2etests/testdata/patterns/multiple/dagre/sketch.exp.svg +++ b/e2etests/testdata/patterns/multiple/dagre/sketch.exp.svg @@ -122,7 +122,7 @@ -rectanglesquarepageparallelogramdocumentcylinderqueuepackagestepcalloutstored_datapersondiamondovalcirclehexagoncloud +rectanglesquarepageparallelogramdocumentcylinderqueuepackagestepcalloutstored_datapersondiamondovalcirclehexagoncloud diff --git a/e2etests/testdata/patterns/real-lines/dagre/sketch.exp.svg b/e2etests/testdata/patterns/real-lines/dagre/sketch.exp.svg index 95c78ab87..b33ffde13 100644 --- a/e2etests/testdata/patterns/real-lines/dagre/sketch.exp.svg +++ b/e2etests/testdata/patterns/real-lines/dagre/sketch.exp.svg @@ -145,7 +145,7 @@ -NETWORKcostumesidintPKsillinessintmonsterintlast_updatedtimestampmonstersidintPKmoviestringweightintlast_updatedtimestampCELL TOWERSATELLITESTRANSMITTER SENDSENDSEND +NETWORKcostumesidintPKsillinessintmonsterintlast_updatedtimestampmonstersidintPKmoviestringweightintlast_updatedtimestampCELL TOWERSATELLITESTRANSMITTER SENDSENDSEND diff --git a/e2etests/testdata/patterns/real/dagre/sketch.exp.svg b/e2etests/testdata/patterns/real/dagre/sketch.exp.svg index 81a0e0484..f9d5ea982 100644 --- a/e2etests/testdata/patterns/real/dagre/sketch.exp.svg +++ b/e2etests/testdata/patterns/real/dagre/sketch.exp.svg @@ -136,7 +136,7 @@ -NETWORKCELL TOWERSATELLITESTRANSMITTER SENDSENDSEND +NETWORKCELL TOWERSATELLITESTRANSMITTER SENDSENDSEND diff --git a/e2etests/testdata/stable/all_shapes_multiple/dagre/sketch.exp.svg b/e2etests/testdata/stable/all_shapes_multiple/dagre/sketch.exp.svg index bf4ee9bc3..241b501d3 100644 --- a/e2etests/testdata/stable/all_shapes_multiple/dagre/sketch.exp.svg +++ b/e2etests/testdata/stable/all_shapes_multiple/dagre/sketch.exp.svg @@ -89,7 +89,7 @@ .d2-2407724796 .color-AA4{color:#EDF0FD;} .d2-2407724796 .color-AA5{color:#F7F8FE;} .d2-2407724796 .color-AB4{color:#EDF0FD;} - .d2-2407724796 .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-d2-2407724796);mix-blend-mode:lighten}.sketch-overlay-B2{fill:url(#streaks-darker-d2-2407724796);mix-blend-mode:lighten}.sketch-overlay-B3{fill:url(#streaks-bright-d2-2407724796);mix-blend-mode:darken}.sketch-overlay-B4{fill:url(#streaks-bright-d2-2407724796);mix-blend-mode:darken}.sketch-overlay-B5{fill:url(#streaks-bright-d2-2407724796);mix-blend-mode:darken}.sketch-overlay-B6{fill:url(#streaks-bright-d2-2407724796);mix-blend-mode:darken}.sketch-overlay-AA2{fill:url(#streaks-dark-d2-2407724796);mix-blend-mode:overlay}.sketch-overlay-AA4{fill:url(#streaks-bright-d2-2407724796);mix-blend-mode:darken}.sketch-overlay-AA5{fill:url(#streaks-bright-d2-2407724796);mix-blend-mode:darken}.sketch-overlay-AB4{fill:url(#streaks-bright-d2-2407724796);mix-blend-mode:darken}.sketch-overlay-AB5{fill:url(#streaks-bright-d2-2407724796);mix-blend-mode:darken}.sketch-overlay-N1{fill:url(#streaks-darker-d2-2407724796);mix-blend-mode:lighten}.sketch-overlay-N2{fill:url(#streaks-dark-d2-2407724796);mix-blend-mode:overlay}.sketch-overlay-N3{fill:url(#streaks-normal-d2-2407724796);mix-blend-mode:color-burn}.sketch-overlay-N4{fill:url(#streaks-normal-d2-2407724796);mix-blend-mode:color-burn}.sketch-overlay-N5{fill:url(#streaks-bright-d2-2407724796);mix-blend-mode:darken}.sketch-overlay-N6{fill:url(#streaks-bright-d2-2407724796);mix-blend-mode:darken}.sketch-overlay-N7{fill:url(#streaks-bright-d2-2407724796);mix-blend-mode:darken}.light-code{display: block}.dark-code{display: none}]]>rectanglesquarepageparallelogramdocumentcylinderqueuepackagestepcalloutstored_datapersondiamondovalcirclehexagoncloud + .d2-2407724796 .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-d2-2407724796);mix-blend-mode:lighten}.sketch-overlay-B2{fill:url(#streaks-darker-d2-2407724796);mix-blend-mode:lighten}.sketch-overlay-B3{fill:url(#streaks-bright-d2-2407724796);mix-blend-mode:darken}.sketch-overlay-B4{fill:url(#streaks-bright-d2-2407724796);mix-blend-mode:darken}.sketch-overlay-B5{fill:url(#streaks-bright-d2-2407724796);mix-blend-mode:darken}.sketch-overlay-B6{fill:url(#streaks-bright-d2-2407724796);mix-blend-mode:darken}.sketch-overlay-AA2{fill:url(#streaks-dark-d2-2407724796);mix-blend-mode:overlay}.sketch-overlay-AA4{fill:url(#streaks-bright-d2-2407724796);mix-blend-mode:darken}.sketch-overlay-AA5{fill:url(#streaks-bright-d2-2407724796);mix-blend-mode:darken}.sketch-overlay-AB4{fill:url(#streaks-bright-d2-2407724796);mix-blend-mode:darken}.sketch-overlay-AB5{fill:url(#streaks-bright-d2-2407724796);mix-blend-mode:darken}.sketch-overlay-N1{fill:url(#streaks-darker-d2-2407724796);mix-blend-mode:lighten}.sketch-overlay-N2{fill:url(#streaks-dark-d2-2407724796);mix-blend-mode:overlay}.sketch-overlay-N3{fill:url(#streaks-normal-d2-2407724796);mix-blend-mode:color-burn}.sketch-overlay-N4{fill:url(#streaks-normal-d2-2407724796);mix-blend-mode:color-burn}.sketch-overlay-N5{fill:url(#streaks-bright-d2-2407724796);mix-blend-mode:darken}.sketch-overlay-N6{fill:url(#streaks-bright-d2-2407724796);mix-blend-mode:darken}.sketch-overlay-N7{fill:url(#streaks-bright-d2-2407724796);mix-blend-mode:darken}.light-code{display: block}.dark-code{display: none}]]>rectanglesquarepageparallelogramdocumentcylinderqueuepackagestepcalloutstored_datapersondiamondovalcirclehexagoncloud diff --git a/e2etests/testdata/stable/all_shapes_multiple/elk/sketch.exp.svg b/e2etests/testdata/stable/all_shapes_multiple/elk/sketch.exp.svg index ce8fd43ff..e18fd727d 100644 --- a/e2etests/testdata/stable/all_shapes_multiple/elk/sketch.exp.svg +++ b/e2etests/testdata/stable/all_shapes_multiple/elk/sketch.exp.svg @@ -89,7 +89,7 @@ .d2-637431275 .color-AA4{color:#EDF0FD;} .d2-637431275 .color-AA5{color:#F7F8FE;} .d2-637431275 .color-AB4{color:#EDF0FD;} - .d2-637431275 .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-d2-637431275);mix-blend-mode:lighten}.sketch-overlay-B2{fill:url(#streaks-darker-d2-637431275);mix-blend-mode:lighten}.sketch-overlay-B3{fill:url(#streaks-bright-d2-637431275);mix-blend-mode:darken}.sketch-overlay-B4{fill:url(#streaks-bright-d2-637431275);mix-blend-mode:darken}.sketch-overlay-B5{fill:url(#streaks-bright-d2-637431275);mix-blend-mode:darken}.sketch-overlay-B6{fill:url(#streaks-bright-d2-637431275);mix-blend-mode:darken}.sketch-overlay-AA2{fill:url(#streaks-dark-d2-637431275);mix-blend-mode:overlay}.sketch-overlay-AA4{fill:url(#streaks-bright-d2-637431275);mix-blend-mode:darken}.sketch-overlay-AA5{fill:url(#streaks-bright-d2-637431275);mix-blend-mode:darken}.sketch-overlay-AB4{fill:url(#streaks-bright-d2-637431275);mix-blend-mode:darken}.sketch-overlay-AB5{fill:url(#streaks-bright-d2-637431275);mix-blend-mode:darken}.sketch-overlay-N1{fill:url(#streaks-darker-d2-637431275);mix-blend-mode:lighten}.sketch-overlay-N2{fill:url(#streaks-dark-d2-637431275);mix-blend-mode:overlay}.sketch-overlay-N3{fill:url(#streaks-normal-d2-637431275);mix-blend-mode:color-burn}.sketch-overlay-N4{fill:url(#streaks-normal-d2-637431275);mix-blend-mode:color-burn}.sketch-overlay-N5{fill:url(#streaks-bright-d2-637431275);mix-blend-mode:darken}.sketch-overlay-N6{fill:url(#streaks-bright-d2-637431275);mix-blend-mode:darken}.sketch-overlay-N7{fill:url(#streaks-bright-d2-637431275);mix-blend-mode:darken}.light-code{display: block}.dark-code{display: none}]]>rectanglesquarepageparallelogramdocumentcylinderqueuepackagestepcalloutstored_datapersondiamondovalcirclehexagoncloud + .d2-637431275 .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-d2-637431275);mix-blend-mode:lighten}.sketch-overlay-B2{fill:url(#streaks-darker-d2-637431275);mix-blend-mode:lighten}.sketch-overlay-B3{fill:url(#streaks-bright-d2-637431275);mix-blend-mode:darken}.sketch-overlay-B4{fill:url(#streaks-bright-d2-637431275);mix-blend-mode:darken}.sketch-overlay-B5{fill:url(#streaks-bright-d2-637431275);mix-blend-mode:darken}.sketch-overlay-B6{fill:url(#streaks-bright-d2-637431275);mix-blend-mode:darken}.sketch-overlay-AA2{fill:url(#streaks-dark-d2-637431275);mix-blend-mode:overlay}.sketch-overlay-AA4{fill:url(#streaks-bright-d2-637431275);mix-blend-mode:darken}.sketch-overlay-AA5{fill:url(#streaks-bright-d2-637431275);mix-blend-mode:darken}.sketch-overlay-AB4{fill:url(#streaks-bright-d2-637431275);mix-blend-mode:darken}.sketch-overlay-AB5{fill:url(#streaks-bright-d2-637431275);mix-blend-mode:darken}.sketch-overlay-N1{fill:url(#streaks-darker-d2-637431275);mix-blend-mode:lighten}.sketch-overlay-N2{fill:url(#streaks-dark-d2-637431275);mix-blend-mode:overlay}.sketch-overlay-N3{fill:url(#streaks-normal-d2-637431275);mix-blend-mode:color-burn}.sketch-overlay-N4{fill:url(#streaks-normal-d2-637431275);mix-blend-mode:color-burn}.sketch-overlay-N5{fill:url(#streaks-bright-d2-637431275);mix-blend-mode:darken}.sketch-overlay-N6{fill:url(#streaks-bright-d2-637431275);mix-blend-mode:darken}.sketch-overlay-N7{fill:url(#streaks-bright-d2-637431275);mix-blend-mode:darken}.light-code{display: block}.dark-code{display: none}]]>rectanglesquarepageparallelogramdocumentcylinderqueuepackagestepcalloutstored_datapersondiamondovalcirclehexagoncloud 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 a9ecea93f..7e9115b24 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 @@ -89,7 +89,7 @@ .d2-448308156 .color-AA4{color:#EDF0FD;} .d2-448308156 .color-AA5{color:#F7F8FE;} .d2-448308156 .color-AB4{color:#EDF0FD;} - .d2-448308156 .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-d2-448308156);mix-blend-mode:lighten}.sketch-overlay-B2{fill:url(#streaks-darker-d2-448308156);mix-blend-mode:lighten}.sketch-overlay-B3{fill:url(#streaks-bright-d2-448308156);mix-blend-mode:darken}.sketch-overlay-B4{fill:url(#streaks-bright-d2-448308156);mix-blend-mode:darken}.sketch-overlay-B5{fill:url(#streaks-bright-d2-448308156);mix-blend-mode:darken}.sketch-overlay-B6{fill:url(#streaks-bright-d2-448308156);mix-blend-mode:darken}.sketch-overlay-AA2{fill:url(#streaks-dark-d2-448308156);mix-blend-mode:overlay}.sketch-overlay-AA4{fill:url(#streaks-bright-d2-448308156);mix-blend-mode:darken}.sketch-overlay-AA5{fill:url(#streaks-bright-d2-448308156);mix-blend-mode:darken}.sketch-overlay-AB4{fill:url(#streaks-bright-d2-448308156);mix-blend-mode:darken}.sketch-overlay-AB5{fill:url(#streaks-bright-d2-448308156);mix-blend-mode:darken}.sketch-overlay-N1{fill:url(#streaks-darker-d2-448308156);mix-blend-mode:lighten}.sketch-overlay-N2{fill:url(#streaks-dark-d2-448308156);mix-blend-mode:overlay}.sketch-overlay-N3{fill:url(#streaks-normal-d2-448308156);mix-blend-mode:color-burn}.sketch-overlay-N4{fill:url(#streaks-normal-d2-448308156);mix-blend-mode:color-burn}.sketch-overlay-N5{fill:url(#streaks-bright-d2-448308156);mix-blend-mode:darken}.sketch-overlay-N6{fill:url(#streaks-bright-d2-448308156);mix-blend-mode:darken}.sketch-overlay-N7{fill:url(#streaks-bright-d2-448308156);mix-blend-mode:darken}.light-code{display: block}.dark-code{display: none}]]>xymultiple2double + .d2-448308156 .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-d2-448308156);mix-blend-mode:lighten}.sketch-overlay-B2{fill:url(#streaks-darker-d2-448308156);mix-blend-mode:lighten}.sketch-overlay-B3{fill:url(#streaks-bright-d2-448308156);mix-blend-mode:darken}.sketch-overlay-B4{fill:url(#streaks-bright-d2-448308156);mix-blend-mode:darken}.sketch-overlay-B5{fill:url(#streaks-bright-d2-448308156);mix-blend-mode:darken}.sketch-overlay-B6{fill:url(#streaks-bright-d2-448308156);mix-blend-mode:darken}.sketch-overlay-AA2{fill:url(#streaks-dark-d2-448308156);mix-blend-mode:overlay}.sketch-overlay-AA4{fill:url(#streaks-bright-d2-448308156);mix-blend-mode:darken}.sketch-overlay-AA5{fill:url(#streaks-bright-d2-448308156);mix-blend-mode:darken}.sketch-overlay-AB4{fill:url(#streaks-bright-d2-448308156);mix-blend-mode:darken}.sketch-overlay-AB5{fill:url(#streaks-bright-d2-448308156);mix-blend-mode:darken}.sketch-overlay-N1{fill:url(#streaks-darker-d2-448308156);mix-blend-mode:lighten}.sketch-overlay-N2{fill:url(#streaks-dark-d2-448308156);mix-blend-mode:overlay}.sketch-overlay-N3{fill:url(#streaks-normal-d2-448308156);mix-blend-mode:color-burn}.sketch-overlay-N4{fill:url(#streaks-normal-d2-448308156);mix-blend-mode:color-burn}.sketch-overlay-N5{fill:url(#streaks-bright-d2-448308156);mix-blend-mode:darken}.sketch-overlay-N6{fill:url(#streaks-bright-d2-448308156);mix-blend-mode:darken}.sketch-overlay-N7{fill:url(#streaks-bright-d2-448308156);mix-blend-mode:darken}.light-code{display: block}.dark-code{display: none}]]>xymultiple2double three-dee diff --git a/e2etests/testdata/stable/border-radius-pill-shape/elk/sketch.exp.svg b/e2etests/testdata/stable/border-radius-pill-shape/elk/sketch.exp.svg index b287706c1..9f402c5c8 100644 --- a/e2etests/testdata/stable/border-radius-pill-shape/elk/sketch.exp.svg +++ b/e2etests/testdata/stable/border-radius-pill-shape/elk/sketch.exp.svg @@ -89,7 +89,7 @@ .d2-2886130221 .color-AA4{color:#EDF0FD;} .d2-2886130221 .color-AA5{color:#F7F8FE;} .d2-2886130221 .color-AB4{color:#EDF0FD;} - .d2-2886130221 .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-d2-2886130221);mix-blend-mode:lighten}.sketch-overlay-B2{fill:url(#streaks-darker-d2-2886130221);mix-blend-mode:lighten}.sketch-overlay-B3{fill:url(#streaks-bright-d2-2886130221);mix-blend-mode:darken}.sketch-overlay-B4{fill:url(#streaks-bright-d2-2886130221);mix-blend-mode:darken}.sketch-overlay-B5{fill:url(#streaks-bright-d2-2886130221);mix-blend-mode:darken}.sketch-overlay-B6{fill:url(#streaks-bright-d2-2886130221);mix-blend-mode:darken}.sketch-overlay-AA2{fill:url(#streaks-dark-d2-2886130221);mix-blend-mode:overlay}.sketch-overlay-AA4{fill:url(#streaks-bright-d2-2886130221);mix-blend-mode:darken}.sketch-overlay-AA5{fill:url(#streaks-bright-d2-2886130221);mix-blend-mode:darken}.sketch-overlay-AB4{fill:url(#streaks-bright-d2-2886130221);mix-blend-mode:darken}.sketch-overlay-AB5{fill:url(#streaks-bright-d2-2886130221);mix-blend-mode:darken}.sketch-overlay-N1{fill:url(#streaks-darker-d2-2886130221);mix-blend-mode:lighten}.sketch-overlay-N2{fill:url(#streaks-dark-d2-2886130221);mix-blend-mode:overlay}.sketch-overlay-N3{fill:url(#streaks-normal-d2-2886130221);mix-blend-mode:color-burn}.sketch-overlay-N4{fill:url(#streaks-normal-d2-2886130221);mix-blend-mode:color-burn}.sketch-overlay-N5{fill:url(#streaks-bright-d2-2886130221);mix-blend-mode:darken}.sketch-overlay-N6{fill:url(#streaks-bright-d2-2886130221);mix-blend-mode:darken}.sketch-overlay-N7{fill:url(#streaks-bright-d2-2886130221);mix-blend-mode:darken}.light-code{display: block}.dark-code{display: none}]]>xymultiple2double + .d2-2886130221 .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-d2-2886130221);mix-blend-mode:lighten}.sketch-overlay-B2{fill:url(#streaks-darker-d2-2886130221);mix-blend-mode:lighten}.sketch-overlay-B3{fill:url(#streaks-bright-d2-2886130221);mix-blend-mode:darken}.sketch-overlay-B4{fill:url(#streaks-bright-d2-2886130221);mix-blend-mode:darken}.sketch-overlay-B5{fill:url(#streaks-bright-d2-2886130221);mix-blend-mode:darken}.sketch-overlay-B6{fill:url(#streaks-bright-d2-2886130221);mix-blend-mode:darken}.sketch-overlay-AA2{fill:url(#streaks-dark-d2-2886130221);mix-blend-mode:overlay}.sketch-overlay-AA4{fill:url(#streaks-bright-d2-2886130221);mix-blend-mode:darken}.sketch-overlay-AA5{fill:url(#streaks-bright-d2-2886130221);mix-blend-mode:darken}.sketch-overlay-AB4{fill:url(#streaks-bright-d2-2886130221);mix-blend-mode:darken}.sketch-overlay-AB5{fill:url(#streaks-bright-d2-2886130221);mix-blend-mode:darken}.sketch-overlay-N1{fill:url(#streaks-darker-d2-2886130221);mix-blend-mode:lighten}.sketch-overlay-N2{fill:url(#streaks-dark-d2-2886130221);mix-blend-mode:overlay}.sketch-overlay-N3{fill:url(#streaks-normal-d2-2886130221);mix-blend-mode:color-burn}.sketch-overlay-N4{fill:url(#streaks-normal-d2-2886130221);mix-blend-mode:color-burn}.sketch-overlay-N5{fill:url(#streaks-bright-d2-2886130221);mix-blend-mode:darken}.sketch-overlay-N6{fill:url(#streaks-bright-d2-2886130221);mix-blend-mode:darken}.sketch-overlay-N7{fill:url(#streaks-bright-d2-2886130221);mix-blend-mode:darken}.light-code{display: block}.dark-code{display: none}]]>xymultiple2double three-dee diff --git a/e2etests/testdata/stable/border-radius/dagre/sketch.exp.svg b/e2etests/testdata/stable/border-radius/dagre/sketch.exp.svg index a1570a2c4..689c5c109 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-1236460180 .color-AA4{color:#EDF0FD;} .d2-1236460180 .color-AA5{color:#F7F8FE;} .d2-1236460180 .color-AB4{color:#EDF0FD;} - .d2-1236460180 .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-d2-1236460180);mix-blend-mode:lighten}.sketch-overlay-B2{fill:url(#streaks-darker-d2-1236460180);mix-blend-mode:lighten}.sketch-overlay-B3{fill:url(#streaks-bright-d2-1236460180);mix-blend-mode:darken}.sketch-overlay-B4{fill:url(#streaks-bright-d2-1236460180);mix-blend-mode:darken}.sketch-overlay-B5{fill:url(#streaks-bright-d2-1236460180);mix-blend-mode:darken}.sketch-overlay-B6{fill:url(#streaks-bright-d2-1236460180);mix-blend-mode:darken}.sketch-overlay-AA2{fill:url(#streaks-dark-d2-1236460180);mix-blend-mode:overlay}.sketch-overlay-AA4{fill:url(#streaks-bright-d2-1236460180);mix-blend-mode:darken}.sketch-overlay-AA5{fill:url(#streaks-bright-d2-1236460180);mix-blend-mode:darken}.sketch-overlay-AB4{fill:url(#streaks-bright-d2-1236460180);mix-blend-mode:darken}.sketch-overlay-AB5{fill:url(#streaks-bright-d2-1236460180);mix-blend-mode:darken}.sketch-overlay-N1{fill:url(#streaks-darker-d2-1236460180);mix-blend-mode:lighten}.sketch-overlay-N2{fill:url(#streaks-dark-d2-1236460180);mix-blend-mode:overlay}.sketch-overlay-N3{fill:url(#streaks-normal-d2-1236460180);mix-blend-mode:color-burn}.sketch-overlay-N4{fill:url(#streaks-normal-d2-1236460180);mix-blend-mode:color-burn}.sketch-overlay-N5{fill:url(#streaks-bright-d2-1236460180);mix-blend-mode:darken}.sketch-overlay-N6{fill:url(#streaks-bright-d2-1236460180);mix-blend-mode:darken}.sketch-overlay-N7{fill:url(#streaks-bright-d2-1236460180);mix-blend-mode:darken}.light-code{display: block}.dark-code{display: none}]]>xymultiple2double + .d2-1236460180 .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-d2-1236460180);mix-blend-mode:lighten}.sketch-overlay-B2{fill:url(#streaks-darker-d2-1236460180);mix-blend-mode:lighten}.sketch-overlay-B3{fill:url(#streaks-bright-d2-1236460180);mix-blend-mode:darken}.sketch-overlay-B4{fill:url(#streaks-bright-d2-1236460180);mix-blend-mode:darken}.sketch-overlay-B5{fill:url(#streaks-bright-d2-1236460180);mix-blend-mode:darken}.sketch-overlay-B6{fill:url(#streaks-bright-d2-1236460180);mix-blend-mode:darken}.sketch-overlay-AA2{fill:url(#streaks-dark-d2-1236460180);mix-blend-mode:overlay}.sketch-overlay-AA4{fill:url(#streaks-bright-d2-1236460180);mix-blend-mode:darken}.sketch-overlay-AA5{fill:url(#streaks-bright-d2-1236460180);mix-blend-mode:darken}.sketch-overlay-AB4{fill:url(#streaks-bright-d2-1236460180);mix-blend-mode:darken}.sketch-overlay-AB5{fill:url(#streaks-bright-d2-1236460180);mix-blend-mode:darken}.sketch-overlay-N1{fill:url(#streaks-darker-d2-1236460180);mix-blend-mode:lighten}.sketch-overlay-N2{fill:url(#streaks-dark-d2-1236460180);mix-blend-mode:overlay}.sketch-overlay-N3{fill:url(#streaks-normal-d2-1236460180);mix-blend-mode:color-burn}.sketch-overlay-N4{fill:url(#streaks-normal-d2-1236460180);mix-blend-mode:color-burn}.sketch-overlay-N5{fill:url(#streaks-bright-d2-1236460180);mix-blend-mode:darken}.sketch-overlay-N6{fill:url(#streaks-bright-d2-1236460180);mix-blend-mode:darken}.sketch-overlay-N7{fill:url(#streaks-bright-d2-1236460180);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 134bb6270..50d8343a2 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-773068003 .color-AA4{color:#EDF0FD;} .d2-773068003 .color-AA5{color:#F7F8FE;} .d2-773068003 .color-AB4{color:#EDF0FD;} - .d2-773068003 .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-d2-773068003);mix-blend-mode:lighten}.sketch-overlay-B2{fill:url(#streaks-darker-d2-773068003);mix-blend-mode:lighten}.sketch-overlay-B3{fill:url(#streaks-bright-d2-773068003);mix-blend-mode:darken}.sketch-overlay-B4{fill:url(#streaks-bright-d2-773068003);mix-blend-mode:darken}.sketch-overlay-B5{fill:url(#streaks-bright-d2-773068003);mix-blend-mode:darken}.sketch-overlay-B6{fill:url(#streaks-bright-d2-773068003);mix-blend-mode:darken}.sketch-overlay-AA2{fill:url(#streaks-dark-d2-773068003);mix-blend-mode:overlay}.sketch-overlay-AA4{fill:url(#streaks-bright-d2-773068003);mix-blend-mode:darken}.sketch-overlay-AA5{fill:url(#streaks-bright-d2-773068003);mix-blend-mode:darken}.sketch-overlay-AB4{fill:url(#streaks-bright-d2-773068003);mix-blend-mode:darken}.sketch-overlay-AB5{fill:url(#streaks-bright-d2-773068003);mix-blend-mode:darken}.sketch-overlay-N1{fill:url(#streaks-darker-d2-773068003);mix-blend-mode:lighten}.sketch-overlay-N2{fill:url(#streaks-dark-d2-773068003);mix-blend-mode:overlay}.sketch-overlay-N3{fill:url(#streaks-normal-d2-773068003);mix-blend-mode:color-burn}.sketch-overlay-N4{fill:url(#streaks-normal-d2-773068003);mix-blend-mode:color-burn}.sketch-overlay-N5{fill:url(#streaks-bright-d2-773068003);mix-blend-mode:darken}.sketch-overlay-N6{fill:url(#streaks-bright-d2-773068003);mix-blend-mode:darken}.sketch-overlay-N7{fill:url(#streaks-bright-d2-773068003);mix-blend-mode:darken}.light-code{display: block}.dark-code{display: none}]]>xymultiple2double + .d2-773068003 .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-d2-773068003);mix-blend-mode:lighten}.sketch-overlay-B2{fill:url(#streaks-darker-d2-773068003);mix-blend-mode:lighten}.sketch-overlay-B3{fill:url(#streaks-bright-d2-773068003);mix-blend-mode:darken}.sketch-overlay-B4{fill:url(#streaks-bright-d2-773068003);mix-blend-mode:darken}.sketch-overlay-B5{fill:url(#streaks-bright-d2-773068003);mix-blend-mode:darken}.sketch-overlay-B6{fill:url(#streaks-bright-d2-773068003);mix-blend-mode:darken}.sketch-overlay-AA2{fill:url(#streaks-dark-d2-773068003);mix-blend-mode:overlay}.sketch-overlay-AA4{fill:url(#streaks-bright-d2-773068003);mix-blend-mode:darken}.sketch-overlay-AA5{fill:url(#streaks-bright-d2-773068003);mix-blend-mode:darken}.sketch-overlay-AB4{fill:url(#streaks-bright-d2-773068003);mix-blend-mode:darken}.sketch-overlay-AB5{fill:url(#streaks-bright-d2-773068003);mix-blend-mode:darken}.sketch-overlay-N1{fill:url(#streaks-darker-d2-773068003);mix-blend-mode:lighten}.sketch-overlay-N2{fill:url(#streaks-dark-d2-773068003);mix-blend-mode:overlay}.sketch-overlay-N3{fill:url(#streaks-normal-d2-773068003);mix-blend-mode:color-burn}.sketch-overlay-N4{fill:url(#streaks-normal-d2-773068003);mix-blend-mode:color-burn}.sketch-overlay-N5{fill:url(#streaks-bright-d2-773068003);mix-blend-mode:darken}.sketch-overlay-N6{fill:url(#streaks-bright-d2-773068003);mix-blend-mode:darken}.sketch-overlay-N7{fill:url(#streaks-bright-d2-773068003);mix-blend-mode:darken}.light-code{display: block}.dark-code{display: none}]]>xymultiple2double three-dee diff --git a/e2etests/testdata/stable/elk_shim/dagre/sketch.exp.svg b/e2etests/testdata/stable/elk_shim/dagre/sketch.exp.svg index 9ec11c0f2..9bec44ded 100644 --- a/e2etests/testdata/stable/elk_shim/dagre/sketch.exp.svg +++ b/e2etests/testdata/stable/elk_shim/dagre/sketch.exp.svg @@ -103,7 +103,7 @@ .d2-183595053 .color-AA4{color:#EDF0FD;} .d2-183595053 .color-AA5{color:#F7F8FE;} .d2-183595053 .color-AB4{color:#EDF0FD;} - .d2-183595053 .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-d2-183595053);mix-blend-mode:lighten}.sketch-overlay-B2{fill:url(#streaks-darker-d2-183595053);mix-blend-mode:lighten}.sketch-overlay-B3{fill:url(#streaks-bright-d2-183595053);mix-blend-mode:darken}.sketch-overlay-B4{fill:url(#streaks-bright-d2-183595053);mix-blend-mode:darken}.sketch-overlay-B5{fill:url(#streaks-bright-d2-183595053);mix-blend-mode:darken}.sketch-overlay-B6{fill:url(#streaks-bright-d2-183595053);mix-blend-mode:darken}.sketch-overlay-AA2{fill:url(#streaks-dark-d2-183595053);mix-blend-mode:overlay}.sketch-overlay-AA4{fill:url(#streaks-bright-d2-183595053);mix-blend-mode:darken}.sketch-overlay-AA5{fill:url(#streaks-bright-d2-183595053);mix-blend-mode:darken}.sketch-overlay-AB4{fill:url(#streaks-bright-d2-183595053);mix-blend-mode:darken}.sketch-overlay-AB5{fill:url(#streaks-bright-d2-183595053);mix-blend-mode:darken}.sketch-overlay-N1{fill:url(#streaks-darker-d2-183595053);mix-blend-mode:lighten}.sketch-overlay-N2{fill:url(#streaks-dark-d2-183595053);mix-blend-mode:overlay}.sketch-overlay-N3{fill:url(#streaks-normal-d2-183595053);mix-blend-mode:color-burn}.sketch-overlay-N4{fill:url(#streaks-normal-d2-183595053);mix-blend-mode:color-burn}.sketch-overlay-N5{fill:url(#streaks-bright-d2-183595053);mix-blend-mode:darken}.sketch-overlay-N6{fill:url(#streaks-bright-d2-183595053);mix-blend-mode:darken}.sketch-overlay-N7{fill:url(#streaks-bright-d2-183595053);mix-blend-mode:darken}.light-code{display: block}.dark-code{display: none}]]>networkuserapi serverlogscell towerONLINE PORTALLLLdata processorsatellitestransmitteruistorage sendsendsendphone logsmake call accessdisplaypersist + .d2-183595053 .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-d2-183595053);mix-blend-mode:lighten}.sketch-overlay-B2{fill:url(#streaks-darker-d2-183595053);mix-blend-mode:lighten}.sketch-overlay-B3{fill:url(#streaks-bright-d2-183595053);mix-blend-mode:darken}.sketch-overlay-B4{fill:url(#streaks-bright-d2-183595053);mix-blend-mode:darken}.sketch-overlay-B5{fill:url(#streaks-bright-d2-183595053);mix-blend-mode:darken}.sketch-overlay-B6{fill:url(#streaks-bright-d2-183595053);mix-blend-mode:darken}.sketch-overlay-AA2{fill:url(#streaks-dark-d2-183595053);mix-blend-mode:overlay}.sketch-overlay-AA4{fill:url(#streaks-bright-d2-183595053);mix-blend-mode:darken}.sketch-overlay-AA5{fill:url(#streaks-bright-d2-183595053);mix-blend-mode:darken}.sketch-overlay-AB4{fill:url(#streaks-bright-d2-183595053);mix-blend-mode:darken}.sketch-overlay-AB5{fill:url(#streaks-bright-d2-183595053);mix-blend-mode:darken}.sketch-overlay-N1{fill:url(#streaks-darker-d2-183595053);mix-blend-mode:lighten}.sketch-overlay-N2{fill:url(#streaks-dark-d2-183595053);mix-blend-mode:overlay}.sketch-overlay-N3{fill:url(#streaks-normal-d2-183595053);mix-blend-mode:color-burn}.sketch-overlay-N4{fill:url(#streaks-normal-d2-183595053);mix-blend-mode:color-burn}.sketch-overlay-N5{fill:url(#streaks-bright-d2-183595053);mix-blend-mode:darken}.sketch-overlay-N6{fill:url(#streaks-bright-d2-183595053);mix-blend-mode:darken}.sketch-overlay-N7{fill:url(#streaks-bright-d2-183595053);mix-blend-mode:darken}.light-code{display: block}.dark-code{display: none}]]>networkuserapi serverlogscell towerONLINE PORTALLLLdata processorsatellitestransmitteruistorage sendsendsendphone logsmake call accessdisplaypersist diff --git a/e2etests/testdata/stable/elk_shim/elk/sketch.exp.svg b/e2etests/testdata/stable/elk_shim/elk/sketch.exp.svg index 1a8bdd668..710f8c390 100644 --- a/e2etests/testdata/stable/elk_shim/elk/sketch.exp.svg +++ b/e2etests/testdata/stable/elk_shim/elk/sketch.exp.svg @@ -103,7 +103,7 @@ .d2-2410870253 .color-AA4{color:#EDF0FD;} .d2-2410870253 .color-AA5{color:#F7F8FE;} .d2-2410870253 .color-AB4{color:#EDF0FD;} - .d2-2410870253 .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-d2-2410870253);mix-blend-mode:lighten}.sketch-overlay-B2{fill:url(#streaks-darker-d2-2410870253);mix-blend-mode:lighten}.sketch-overlay-B3{fill:url(#streaks-bright-d2-2410870253);mix-blend-mode:darken}.sketch-overlay-B4{fill:url(#streaks-bright-d2-2410870253);mix-blend-mode:darken}.sketch-overlay-B5{fill:url(#streaks-bright-d2-2410870253);mix-blend-mode:darken}.sketch-overlay-B6{fill:url(#streaks-bright-d2-2410870253);mix-blend-mode:darken}.sketch-overlay-AA2{fill:url(#streaks-dark-d2-2410870253);mix-blend-mode:overlay}.sketch-overlay-AA4{fill:url(#streaks-bright-d2-2410870253);mix-blend-mode:darken}.sketch-overlay-AA5{fill:url(#streaks-bright-d2-2410870253);mix-blend-mode:darken}.sketch-overlay-AB4{fill:url(#streaks-bright-d2-2410870253);mix-blend-mode:darken}.sketch-overlay-AB5{fill:url(#streaks-bright-d2-2410870253);mix-blend-mode:darken}.sketch-overlay-N1{fill:url(#streaks-darker-d2-2410870253);mix-blend-mode:lighten}.sketch-overlay-N2{fill:url(#streaks-dark-d2-2410870253);mix-blend-mode:overlay}.sketch-overlay-N3{fill:url(#streaks-normal-d2-2410870253);mix-blend-mode:color-burn}.sketch-overlay-N4{fill:url(#streaks-normal-d2-2410870253);mix-blend-mode:color-burn}.sketch-overlay-N5{fill:url(#streaks-bright-d2-2410870253);mix-blend-mode:darken}.sketch-overlay-N6{fill:url(#streaks-bright-d2-2410870253);mix-blend-mode:darken}.sketch-overlay-N7{fill:url(#streaks-bright-d2-2410870253);mix-blend-mode:darken}.light-code{display: block}.dark-code{display: none}]]>networkuserapi serverlogscell towerONLINE PORTALLLLdata processorsatellitestransmitteruistorage sendsendsendphone logsmake call accessdisplaypersist + .d2-2410870253 .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-d2-2410870253);mix-blend-mode:lighten}.sketch-overlay-B2{fill:url(#streaks-darker-d2-2410870253);mix-blend-mode:lighten}.sketch-overlay-B3{fill:url(#streaks-bright-d2-2410870253);mix-blend-mode:darken}.sketch-overlay-B4{fill:url(#streaks-bright-d2-2410870253);mix-blend-mode:darken}.sketch-overlay-B5{fill:url(#streaks-bright-d2-2410870253);mix-blend-mode:darken}.sketch-overlay-B6{fill:url(#streaks-bright-d2-2410870253);mix-blend-mode:darken}.sketch-overlay-AA2{fill:url(#streaks-dark-d2-2410870253);mix-blend-mode:overlay}.sketch-overlay-AA4{fill:url(#streaks-bright-d2-2410870253);mix-blend-mode:darken}.sketch-overlay-AA5{fill:url(#streaks-bright-d2-2410870253);mix-blend-mode:darken}.sketch-overlay-AB4{fill:url(#streaks-bright-d2-2410870253);mix-blend-mode:darken}.sketch-overlay-AB5{fill:url(#streaks-bright-d2-2410870253);mix-blend-mode:darken}.sketch-overlay-N1{fill:url(#streaks-darker-d2-2410870253);mix-blend-mode:lighten}.sketch-overlay-N2{fill:url(#streaks-dark-d2-2410870253);mix-blend-mode:overlay}.sketch-overlay-N3{fill:url(#streaks-normal-d2-2410870253);mix-blend-mode:color-burn}.sketch-overlay-N4{fill:url(#streaks-normal-d2-2410870253);mix-blend-mode:color-burn}.sketch-overlay-N5{fill:url(#streaks-bright-d2-2410870253);mix-blend-mode:darken}.sketch-overlay-N6{fill:url(#streaks-bright-d2-2410870253);mix-blend-mode:darken}.sketch-overlay-N7{fill:url(#streaks-bright-d2-2410870253);mix-blend-mode:darken}.light-code{display: block}.dark-code{display: none}]]>networkuserapi serverlogscell towerONLINE PORTALLLLdata processorsatellitestransmitteruistorage sendsendsendphone logsmake call accessdisplaypersist diff --git a/e2etests/testdata/stable/grid_outside_labels/dagre/sketch.exp.svg b/e2etests/testdata/stable/grid_outside_labels/dagre/sketch.exp.svg index 536fd41bb..d09475bc5 100644 --- a/e2etests/testdata/stable/grid_outside_labels/dagre/sketch.exp.svg +++ b/e2etests/testdata/stable/grid_outside_labels/dagre/sketch.exp.svg @@ -91,7 +91,7 @@ .d2-269116138 .color-AB4{color:#EDF0FD;} .d2-269116138 .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-d2-269116138);mix-blend-mode:lighten}.sketch-overlay-B2{fill:url(#streaks-darker-d2-269116138);mix-blend-mode:lighten}.sketch-overlay-B3{fill:url(#streaks-bright-d2-269116138);mix-blend-mode:darken}.sketch-overlay-B4{fill:url(#streaks-bright-d2-269116138);mix-blend-mode:darken}.sketch-overlay-B5{fill:url(#streaks-bright-d2-269116138);mix-blend-mode:darken}.sketch-overlay-B6{fill:url(#streaks-bright-d2-269116138);mix-blend-mode:darken}.sketch-overlay-AA2{fill:url(#streaks-dark-d2-269116138);mix-blend-mode:overlay}.sketch-overlay-AA4{fill:url(#streaks-bright-d2-269116138);mix-blend-mode:darken}.sketch-overlay-AA5{fill:url(#streaks-bright-d2-269116138);mix-blend-mode:darken}.sketch-overlay-AB4{fill:url(#streaks-bright-d2-269116138);mix-blend-mode:darken}.sketch-overlay-AB5{fill:url(#streaks-bright-d2-269116138);mix-blend-mode:darken}.sketch-overlay-N1{fill:url(#streaks-darker-d2-269116138);mix-blend-mode:lighten}.sketch-overlay-N2{fill:url(#streaks-dark-d2-269116138);mix-blend-mode:overlay}.sketch-overlay-N3{fill:url(#streaks-normal-d2-269116138);mix-blend-mode:color-burn}.sketch-overlay-N4{fill:url(#streaks-normal-d2-269116138);mix-blend-mode:color-burn}.sketch-overlay-N5{fill:url(#streaks-bright-d2-269116138);mix-blend-mode:darken}.sketch-overlay-N6{fill:url(#streaks-bright-d2-269116138);mix-blend-mode:darken}.sketch-overlay-N7{fill:url(#streaks-bright-d2-269116138);mix-blend-mode:darken}.light-code{display: block}.dark-code{display: none}]]>___________________________________container____________________________________amscd plugin -braket plugincancel plugincolor plugingensymb pluginmhchem pluginphysics pluginmultilinesasmยต +braket plugincancel plugincolor plugingensymb pluginmhchem pluginphysics pluginmultilinesasmยต diff --git a/e2etests/testdata/stable/grid_outside_labels/elk/sketch.exp.svg b/e2etests/testdata/stable/grid_outside_labels/elk/sketch.exp.svg index 3af1b4ff7..dcef15f44 100644 --- a/e2etests/testdata/stable/grid_outside_labels/elk/sketch.exp.svg +++ b/e2etests/testdata/stable/grid_outside_labels/elk/sketch.exp.svg @@ -91,7 +91,7 @@ .d2-1333473382 .color-AB4{color:#EDF0FD;} .d2-1333473382 .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-d2-1333473382);mix-blend-mode:lighten}.sketch-overlay-B2{fill:url(#streaks-darker-d2-1333473382);mix-blend-mode:lighten}.sketch-overlay-B3{fill:url(#streaks-bright-d2-1333473382);mix-blend-mode:darken}.sketch-overlay-B4{fill:url(#streaks-bright-d2-1333473382);mix-blend-mode:darken}.sketch-overlay-B5{fill:url(#streaks-bright-d2-1333473382);mix-blend-mode:darken}.sketch-overlay-B6{fill:url(#streaks-bright-d2-1333473382);mix-blend-mode:darken}.sketch-overlay-AA2{fill:url(#streaks-dark-d2-1333473382);mix-blend-mode:overlay}.sketch-overlay-AA4{fill:url(#streaks-bright-d2-1333473382);mix-blend-mode:darken}.sketch-overlay-AA5{fill:url(#streaks-bright-d2-1333473382);mix-blend-mode:darken}.sketch-overlay-AB4{fill:url(#streaks-bright-d2-1333473382);mix-blend-mode:darken}.sketch-overlay-AB5{fill:url(#streaks-bright-d2-1333473382);mix-blend-mode:darken}.sketch-overlay-N1{fill:url(#streaks-darker-d2-1333473382);mix-blend-mode:lighten}.sketch-overlay-N2{fill:url(#streaks-dark-d2-1333473382);mix-blend-mode:overlay}.sketch-overlay-N3{fill:url(#streaks-normal-d2-1333473382);mix-blend-mode:color-burn}.sketch-overlay-N4{fill:url(#streaks-normal-d2-1333473382);mix-blend-mode:color-burn}.sketch-overlay-N5{fill:url(#streaks-bright-d2-1333473382);mix-blend-mode:darken}.sketch-overlay-N6{fill:url(#streaks-bright-d2-1333473382);mix-blend-mode:darken}.sketch-overlay-N7{fill:url(#streaks-bright-d2-1333473382);mix-blend-mode:darken}.light-code{display: block}.dark-code{display: none}]]>___________________________________container____________________________________amscd plugin -braket plugincancel plugincolor plugingensymb pluginmhchem pluginphysics pluginmultilinesasmยต +braket plugincancel plugincolor plugingensymb pluginmhchem pluginphysics pluginmultilinesasmยต diff --git a/e2etests/testdata/stable/mono-font/dagre/sketch.exp.svg b/e2etests/testdata/stable/mono-font/dagre/sketch.exp.svg index 9dd1ba116..ed57ebcfc 100644 --- a/e2etests/testdata/stable/mono-font/dagre/sketch.exp.svg +++ b/e2etests/testdata/stable/mono-font/dagre/sketch.exp.svg @@ -103,7 +103,7 @@ .d2-3097297157 .color-AA4{color:#EDF0FD;} .d2-3097297157 .color-AA5{color:#F7F8FE;} .d2-3097297157 .color-AB4{color:#EDF0FD;} - .d2-3097297157 .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-d2-3097297157);mix-blend-mode:lighten}.sketch-overlay-B2{fill:url(#streaks-darker-d2-3097297157);mix-blend-mode:lighten}.sketch-overlay-B3{fill:url(#streaks-bright-d2-3097297157);mix-blend-mode:darken}.sketch-overlay-B4{fill:url(#streaks-bright-d2-3097297157);mix-blend-mode:darken}.sketch-overlay-B5{fill:url(#streaks-bright-d2-3097297157);mix-blend-mode:darken}.sketch-overlay-B6{fill:url(#streaks-bright-d2-3097297157);mix-blend-mode:darken}.sketch-overlay-AA2{fill:url(#streaks-dark-d2-3097297157);mix-blend-mode:overlay}.sketch-overlay-AA4{fill:url(#streaks-bright-d2-3097297157);mix-blend-mode:darken}.sketch-overlay-AA5{fill:url(#streaks-bright-d2-3097297157);mix-blend-mode:darken}.sketch-overlay-AB4{fill:url(#streaks-bright-d2-3097297157);mix-blend-mode:darken}.sketch-overlay-AB5{fill:url(#streaks-bright-d2-3097297157);mix-blend-mode:darken}.sketch-overlay-N1{fill:url(#streaks-darker-d2-3097297157);mix-blend-mode:lighten}.sketch-overlay-N2{fill:url(#streaks-dark-d2-3097297157);mix-blend-mode:overlay}.sketch-overlay-N3{fill:url(#streaks-normal-d2-3097297157);mix-blend-mode:color-burn}.sketch-overlay-N4{fill:url(#streaks-normal-d2-3097297157);mix-blend-mode:color-burn}.sketch-overlay-N5{fill:url(#streaks-bright-d2-3097297157);mix-blend-mode:darken}.sketch-overlay-N6{fill:url(#streaks-bright-d2-3097297157);mix-blend-mode:darken}.sketch-overlay-N7{fill:url(#streaks-bright-d2-3097297157);mix-blend-mode:darken}.light-code{display: block}.dark-code{display: none}]]>SATELLITESTRANSMITTER SENDSENDSEND + .d2-3097297157 .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-d2-3097297157);mix-blend-mode:lighten}.sketch-overlay-B2{fill:url(#streaks-darker-d2-3097297157);mix-blend-mode:lighten}.sketch-overlay-B3{fill:url(#streaks-bright-d2-3097297157);mix-blend-mode:darken}.sketch-overlay-B4{fill:url(#streaks-bright-d2-3097297157);mix-blend-mode:darken}.sketch-overlay-B5{fill:url(#streaks-bright-d2-3097297157);mix-blend-mode:darken}.sketch-overlay-B6{fill:url(#streaks-bright-d2-3097297157);mix-blend-mode:darken}.sketch-overlay-AA2{fill:url(#streaks-dark-d2-3097297157);mix-blend-mode:overlay}.sketch-overlay-AA4{fill:url(#streaks-bright-d2-3097297157);mix-blend-mode:darken}.sketch-overlay-AA5{fill:url(#streaks-bright-d2-3097297157);mix-blend-mode:darken}.sketch-overlay-AB4{fill:url(#streaks-bright-d2-3097297157);mix-blend-mode:darken}.sketch-overlay-AB5{fill:url(#streaks-bright-d2-3097297157);mix-blend-mode:darken}.sketch-overlay-N1{fill:url(#streaks-darker-d2-3097297157);mix-blend-mode:lighten}.sketch-overlay-N2{fill:url(#streaks-dark-d2-3097297157);mix-blend-mode:overlay}.sketch-overlay-N3{fill:url(#streaks-normal-d2-3097297157);mix-blend-mode:color-burn}.sketch-overlay-N4{fill:url(#streaks-normal-d2-3097297157);mix-blend-mode:color-burn}.sketch-overlay-N5{fill:url(#streaks-bright-d2-3097297157);mix-blend-mode:darken}.sketch-overlay-N6{fill:url(#streaks-bright-d2-3097297157);mix-blend-mode:darken}.sketch-overlay-N7{fill:url(#streaks-bright-d2-3097297157);mix-blend-mode:darken}.light-code{display: block}.dark-code{display: none}]]>SATELLITESTRANSMITTER SENDSENDSEND diff --git a/e2etests/testdata/stable/mono-font/elk/sketch.exp.svg b/e2etests/testdata/stable/mono-font/elk/sketch.exp.svg index f1d5c800e..9d6f0f1c4 100644 --- a/e2etests/testdata/stable/mono-font/elk/sketch.exp.svg +++ b/e2etests/testdata/stable/mono-font/elk/sketch.exp.svg @@ -103,7 +103,7 @@ .d2-3660418575 .color-AA4{color:#EDF0FD;} .d2-3660418575 .color-AA5{color:#F7F8FE;} .d2-3660418575 .color-AB4{color:#EDF0FD;} - .d2-3660418575 .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-d2-3660418575);mix-blend-mode:lighten}.sketch-overlay-B2{fill:url(#streaks-darker-d2-3660418575);mix-blend-mode:lighten}.sketch-overlay-B3{fill:url(#streaks-bright-d2-3660418575);mix-blend-mode:darken}.sketch-overlay-B4{fill:url(#streaks-bright-d2-3660418575);mix-blend-mode:darken}.sketch-overlay-B5{fill:url(#streaks-bright-d2-3660418575);mix-blend-mode:darken}.sketch-overlay-B6{fill:url(#streaks-bright-d2-3660418575);mix-blend-mode:darken}.sketch-overlay-AA2{fill:url(#streaks-dark-d2-3660418575);mix-blend-mode:overlay}.sketch-overlay-AA4{fill:url(#streaks-bright-d2-3660418575);mix-blend-mode:darken}.sketch-overlay-AA5{fill:url(#streaks-bright-d2-3660418575);mix-blend-mode:darken}.sketch-overlay-AB4{fill:url(#streaks-bright-d2-3660418575);mix-blend-mode:darken}.sketch-overlay-AB5{fill:url(#streaks-bright-d2-3660418575);mix-blend-mode:darken}.sketch-overlay-N1{fill:url(#streaks-darker-d2-3660418575);mix-blend-mode:lighten}.sketch-overlay-N2{fill:url(#streaks-dark-d2-3660418575);mix-blend-mode:overlay}.sketch-overlay-N3{fill:url(#streaks-normal-d2-3660418575);mix-blend-mode:color-burn}.sketch-overlay-N4{fill:url(#streaks-normal-d2-3660418575);mix-blend-mode:color-burn}.sketch-overlay-N5{fill:url(#streaks-bright-d2-3660418575);mix-blend-mode:darken}.sketch-overlay-N6{fill:url(#streaks-bright-d2-3660418575);mix-blend-mode:darken}.sketch-overlay-N7{fill:url(#streaks-bright-d2-3660418575);mix-blend-mode:darken}.light-code{display: block}.dark-code{display: none}]]>SATELLITESTRANSMITTER SENDSENDSEND + .d2-3660418575 .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-d2-3660418575);mix-blend-mode:lighten}.sketch-overlay-B2{fill:url(#streaks-darker-d2-3660418575);mix-blend-mode:lighten}.sketch-overlay-B3{fill:url(#streaks-bright-d2-3660418575);mix-blend-mode:darken}.sketch-overlay-B4{fill:url(#streaks-bright-d2-3660418575);mix-blend-mode:darken}.sketch-overlay-B5{fill:url(#streaks-bright-d2-3660418575);mix-blend-mode:darken}.sketch-overlay-B6{fill:url(#streaks-bright-d2-3660418575);mix-blend-mode:darken}.sketch-overlay-AA2{fill:url(#streaks-dark-d2-3660418575);mix-blend-mode:overlay}.sketch-overlay-AA4{fill:url(#streaks-bright-d2-3660418575);mix-blend-mode:darken}.sketch-overlay-AA5{fill:url(#streaks-bright-d2-3660418575);mix-blend-mode:darken}.sketch-overlay-AB4{fill:url(#streaks-bright-d2-3660418575);mix-blend-mode:darken}.sketch-overlay-AB5{fill:url(#streaks-bright-d2-3660418575);mix-blend-mode:darken}.sketch-overlay-N1{fill:url(#streaks-darker-d2-3660418575);mix-blend-mode:lighten}.sketch-overlay-N2{fill:url(#streaks-dark-d2-3660418575);mix-blend-mode:overlay}.sketch-overlay-N3{fill:url(#streaks-normal-d2-3660418575);mix-blend-mode:color-burn}.sketch-overlay-N4{fill:url(#streaks-normal-d2-3660418575);mix-blend-mode:color-burn}.sketch-overlay-N5{fill:url(#streaks-bright-d2-3660418575);mix-blend-mode:darken}.sketch-overlay-N6{fill:url(#streaks-bright-d2-3660418575);mix-blend-mode:darken}.sketch-overlay-N7{fill:url(#streaks-bright-d2-3660418575);mix-blend-mode:darken}.light-code{display: block}.dark-code{display: none}]]>SATELLITESTRANSMITTER SENDSENDSEND diff --git a/e2etests/testdata/stable/multiple_box_selection/dagre/sketch.exp.svg b/e2etests/testdata/stable/multiple_box_selection/dagre/sketch.exp.svg index 248178ed5..99bdc1bad 100644 --- a/e2etests/testdata/stable/multiple_box_selection/dagre/sketch.exp.svg +++ b/e2etests/testdata/stable/multiple_box_selection/dagre/sketch.exp.svg @@ -96,7 +96,7 @@ .d2-3028019976 .color-AA4{color:#EDF0FD;} .d2-3028019976 .color-AA5{color:#F7F8FE;} .d2-3028019976 .color-AB4{color:#EDF0FD;} - .d2-3028019976 .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-d2-3028019976);mix-blend-mode:lighten}.sketch-overlay-B2{fill:url(#streaks-darker-d2-3028019976);mix-blend-mode:lighten}.sketch-overlay-B3{fill:url(#streaks-bright-d2-3028019976);mix-blend-mode:darken}.sketch-overlay-B4{fill:url(#streaks-bright-d2-3028019976);mix-blend-mode:darken}.sketch-overlay-B5{fill:url(#streaks-bright-d2-3028019976);mix-blend-mode:darken}.sketch-overlay-B6{fill:url(#streaks-bright-d2-3028019976);mix-blend-mode:darken}.sketch-overlay-AA2{fill:url(#streaks-dark-d2-3028019976);mix-blend-mode:overlay}.sketch-overlay-AA4{fill:url(#streaks-bright-d2-3028019976);mix-blend-mode:darken}.sketch-overlay-AA5{fill:url(#streaks-bright-d2-3028019976);mix-blend-mode:darken}.sketch-overlay-AB4{fill:url(#streaks-bright-d2-3028019976);mix-blend-mode:darken}.sketch-overlay-AB5{fill:url(#streaks-bright-d2-3028019976);mix-blend-mode:darken}.sketch-overlay-N1{fill:url(#streaks-darker-d2-3028019976);mix-blend-mode:lighten}.sketch-overlay-N2{fill:url(#streaks-dark-d2-3028019976);mix-blend-mode:overlay}.sketch-overlay-N3{fill:url(#streaks-normal-d2-3028019976);mix-blend-mode:color-burn}.sketch-overlay-N4{fill:url(#streaks-normal-d2-3028019976);mix-blend-mode:color-burn}.sketch-overlay-N5{fill:url(#streaks-bright-d2-3028019976);mix-blend-mode:darken}.sketch-overlay-N6{fill:url(#streaks-bright-d2-3028019976);mix-blend-mode:darken}.sketch-overlay-N7{fill:url(#streaks-bright-d2-3028019976);mix-blend-mode:darken}.light-code{display: block}.dark-code{display: none}]]>outerstartendvolume groupvolume definitionvolume + .d2-3028019976 .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-d2-3028019976);mix-blend-mode:lighten}.sketch-overlay-B2{fill:url(#streaks-darker-d2-3028019976);mix-blend-mode:lighten}.sketch-overlay-B3{fill:url(#streaks-bright-d2-3028019976);mix-blend-mode:darken}.sketch-overlay-B4{fill:url(#streaks-bright-d2-3028019976);mix-blend-mode:darken}.sketch-overlay-B5{fill:url(#streaks-bright-d2-3028019976);mix-blend-mode:darken}.sketch-overlay-B6{fill:url(#streaks-bright-d2-3028019976);mix-blend-mode:darken}.sketch-overlay-AA2{fill:url(#streaks-dark-d2-3028019976);mix-blend-mode:overlay}.sketch-overlay-AA4{fill:url(#streaks-bright-d2-3028019976);mix-blend-mode:darken}.sketch-overlay-AA5{fill:url(#streaks-bright-d2-3028019976);mix-blend-mode:darken}.sketch-overlay-AB4{fill:url(#streaks-bright-d2-3028019976);mix-blend-mode:darken}.sketch-overlay-AB5{fill:url(#streaks-bright-d2-3028019976);mix-blend-mode:darken}.sketch-overlay-N1{fill:url(#streaks-darker-d2-3028019976);mix-blend-mode:lighten}.sketch-overlay-N2{fill:url(#streaks-dark-d2-3028019976);mix-blend-mode:overlay}.sketch-overlay-N3{fill:url(#streaks-normal-d2-3028019976);mix-blend-mode:color-burn}.sketch-overlay-N4{fill:url(#streaks-normal-d2-3028019976);mix-blend-mode:color-burn}.sketch-overlay-N5{fill:url(#streaks-bright-d2-3028019976);mix-blend-mode:darken}.sketch-overlay-N6{fill:url(#streaks-bright-d2-3028019976);mix-blend-mode:darken}.sketch-overlay-N7{fill:url(#streaks-bright-d2-3028019976);mix-blend-mode:darken}.light-code{display: block}.dark-code{display: none}]]>outerstartendvolume groupvolume definitionvolume diff --git a/e2etests/testdata/stable/multiple_box_selection/elk/sketch.exp.svg b/e2etests/testdata/stable/multiple_box_selection/elk/sketch.exp.svg index 0bf87bffa..9ff80086d 100644 --- a/e2etests/testdata/stable/multiple_box_selection/elk/sketch.exp.svg +++ b/e2etests/testdata/stable/multiple_box_selection/elk/sketch.exp.svg @@ -96,7 +96,7 @@ .d2-2029988810 .color-AA4{color:#EDF0FD;} .d2-2029988810 .color-AA5{color:#F7F8FE;} .d2-2029988810 .color-AB4{color:#EDF0FD;} - .d2-2029988810 .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-d2-2029988810);mix-blend-mode:lighten}.sketch-overlay-B2{fill:url(#streaks-darker-d2-2029988810);mix-blend-mode:lighten}.sketch-overlay-B3{fill:url(#streaks-bright-d2-2029988810);mix-blend-mode:darken}.sketch-overlay-B4{fill:url(#streaks-bright-d2-2029988810);mix-blend-mode:darken}.sketch-overlay-B5{fill:url(#streaks-bright-d2-2029988810);mix-blend-mode:darken}.sketch-overlay-B6{fill:url(#streaks-bright-d2-2029988810);mix-blend-mode:darken}.sketch-overlay-AA2{fill:url(#streaks-dark-d2-2029988810);mix-blend-mode:overlay}.sketch-overlay-AA4{fill:url(#streaks-bright-d2-2029988810);mix-blend-mode:darken}.sketch-overlay-AA5{fill:url(#streaks-bright-d2-2029988810);mix-blend-mode:darken}.sketch-overlay-AB4{fill:url(#streaks-bright-d2-2029988810);mix-blend-mode:darken}.sketch-overlay-AB5{fill:url(#streaks-bright-d2-2029988810);mix-blend-mode:darken}.sketch-overlay-N1{fill:url(#streaks-darker-d2-2029988810);mix-blend-mode:lighten}.sketch-overlay-N2{fill:url(#streaks-dark-d2-2029988810);mix-blend-mode:overlay}.sketch-overlay-N3{fill:url(#streaks-normal-d2-2029988810);mix-blend-mode:color-burn}.sketch-overlay-N4{fill:url(#streaks-normal-d2-2029988810);mix-blend-mode:color-burn}.sketch-overlay-N5{fill:url(#streaks-bright-d2-2029988810);mix-blend-mode:darken}.sketch-overlay-N6{fill:url(#streaks-bright-d2-2029988810);mix-blend-mode:darken}.sketch-overlay-N7{fill:url(#streaks-bright-d2-2029988810);mix-blend-mode:darken}.light-code{display: block}.dark-code{display: none}]]>outerstartendvolume groupvolume definitionvolume + .d2-2029988810 .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-d2-2029988810);mix-blend-mode:lighten}.sketch-overlay-B2{fill:url(#streaks-darker-d2-2029988810);mix-blend-mode:lighten}.sketch-overlay-B3{fill:url(#streaks-bright-d2-2029988810);mix-blend-mode:darken}.sketch-overlay-B4{fill:url(#streaks-bright-d2-2029988810);mix-blend-mode:darken}.sketch-overlay-B5{fill:url(#streaks-bright-d2-2029988810);mix-blend-mode:darken}.sketch-overlay-B6{fill:url(#streaks-bright-d2-2029988810);mix-blend-mode:darken}.sketch-overlay-AA2{fill:url(#streaks-dark-d2-2029988810);mix-blend-mode:overlay}.sketch-overlay-AA4{fill:url(#streaks-bright-d2-2029988810);mix-blend-mode:darken}.sketch-overlay-AA5{fill:url(#streaks-bright-d2-2029988810);mix-blend-mode:darken}.sketch-overlay-AB4{fill:url(#streaks-bright-d2-2029988810);mix-blend-mode:darken}.sketch-overlay-AB5{fill:url(#streaks-bright-d2-2029988810);mix-blend-mode:darken}.sketch-overlay-N1{fill:url(#streaks-darker-d2-2029988810);mix-blend-mode:lighten}.sketch-overlay-N2{fill:url(#streaks-dark-d2-2029988810);mix-blend-mode:overlay}.sketch-overlay-N3{fill:url(#streaks-normal-d2-2029988810);mix-blend-mode:color-burn}.sketch-overlay-N4{fill:url(#streaks-normal-d2-2029988810);mix-blend-mode:color-burn}.sketch-overlay-N5{fill:url(#streaks-bright-d2-2029988810);mix-blend-mode:darken}.sketch-overlay-N6{fill:url(#streaks-bright-d2-2029988810);mix-blend-mode:darken}.sketch-overlay-N7{fill:url(#streaks-bright-d2-2029988810);mix-blend-mode:darken}.light-code{display: block}.dark-code{display: none}]]>outerstartendvolume groupvolume definitionvolume diff --git a/e2etests/testdata/stable/multiple_offset/dagre/sketch.exp.svg b/e2etests/testdata/stable/multiple_offset/dagre/sketch.exp.svg index 1002cf345..cf6a63388 100644 --- a/e2etests/testdata/stable/multiple_offset/dagre/sketch.exp.svg +++ b/e2etests/testdata/stable/multiple_offset/dagre/sketch.exp.svg @@ -96,21 +96,21 @@ .d2-3863633706 .color-AA4{color:#EDF0FD;} .d2-3863633706 .color-AA5{color:#F7F8FE;} .d2-3863633706 .color-AB4{color:#EDF0FD;} - .d2-3863633706 .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-d2-3863633706);mix-blend-mode:lighten}.sketch-overlay-B2{fill:url(#streaks-darker-d2-3863633706);mix-blend-mode:lighten}.sketch-overlay-B3{fill:url(#streaks-bright-d2-3863633706);mix-blend-mode:darken}.sketch-overlay-B4{fill:url(#streaks-bright-d2-3863633706);mix-blend-mode:darken}.sketch-overlay-B5{fill:url(#streaks-bright-d2-3863633706);mix-blend-mode:darken}.sketch-overlay-B6{fill:url(#streaks-bright-d2-3863633706);mix-blend-mode:darken}.sketch-overlay-AA2{fill:url(#streaks-dark-d2-3863633706);mix-blend-mode:overlay}.sketch-overlay-AA4{fill:url(#streaks-bright-d2-3863633706);mix-blend-mode:darken}.sketch-overlay-AA5{fill:url(#streaks-bright-d2-3863633706);mix-blend-mode:darken}.sketch-overlay-AB4{fill:url(#streaks-bright-d2-3863633706);mix-blend-mode:darken}.sketch-overlay-AB5{fill:url(#streaks-bright-d2-3863633706);mix-blend-mode:darken}.sketch-overlay-N1{fill:url(#streaks-darker-d2-3863633706);mix-blend-mode:lighten}.sketch-overlay-N2{fill:url(#streaks-dark-d2-3863633706);mix-blend-mode:overlay}.sketch-overlay-N3{fill:url(#streaks-normal-d2-3863633706);mix-blend-mode:color-burn}.sketch-overlay-N4{fill:url(#streaks-normal-d2-3863633706);mix-blend-mode:color-burn}.sketch-overlay-N5{fill:url(#streaks-bright-d2-3863633706);mix-blend-mode:darken}.sketch-overlay-N6{fill:url(#streaks-bright-d2-3863633706);mix-blend-mode:darken}.sketch-overlay-N7{fill:url(#streaks-bright-d2-3863633706);mix-blend-mode:darken}.light-code{display: block}.dark-code{display: none}]]>n1n2n3 + .d2-3863633706 .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-d2-3863633706);mix-blend-mode:lighten}.sketch-overlay-B2{fill:url(#streaks-darker-d2-3863633706);mix-blend-mode:lighten}.sketch-overlay-B3{fill:url(#streaks-bright-d2-3863633706);mix-blend-mode:darken}.sketch-overlay-B4{fill:url(#streaks-bright-d2-3863633706);mix-blend-mode:darken}.sketch-overlay-B5{fill:url(#streaks-bright-d2-3863633706);mix-blend-mode:darken}.sketch-overlay-B6{fill:url(#streaks-bright-d2-3863633706);mix-blend-mode:darken}.sketch-overlay-AA2{fill:url(#streaks-dark-d2-3863633706);mix-blend-mode:overlay}.sketch-overlay-AA4{fill:url(#streaks-bright-d2-3863633706);mix-blend-mode:darken}.sketch-overlay-AA5{fill:url(#streaks-bright-d2-3863633706);mix-blend-mode:darken}.sketch-overlay-AB4{fill:url(#streaks-bright-d2-3863633706);mix-blend-mode:darken}.sketch-overlay-AB5{fill:url(#streaks-bright-d2-3863633706);mix-blend-mode:darken}.sketch-overlay-N1{fill:url(#streaks-darker-d2-3863633706);mix-blend-mode:lighten}.sketch-overlay-N2{fill:url(#streaks-dark-d2-3863633706);mix-blend-mode:overlay}.sketch-overlay-N3{fill:url(#streaks-normal-d2-3863633706);mix-blend-mode:color-burn}.sketch-overlay-N4{fill:url(#streaks-normal-d2-3863633706);mix-blend-mode:color-burn}.sketch-overlay-N5{fill:url(#streaks-bright-d2-3863633706);mix-blend-mode:darken}.sketch-overlay-N6{fill:url(#streaks-bright-d2-3863633706);mix-blend-mode:darken}.sketch-overlay-N7{fill:url(#streaks-bright-d2-3863633706);mix-blend-mode:darken}.light-code{display: block}.dark-code{display: none}]]>n1n2n3 -n4n5 +n4n5 -n6n7 +n6n7 -n8n9 +n8n9 -n10aba +n10aba -baba +baba -bababab +bababab -abab +abab a diff --git a/e2etests/testdata/stable/multiple_offset/elk/sketch.exp.svg b/e2etests/testdata/stable/multiple_offset/elk/sketch.exp.svg index d21b4d564..73b97f7bd 100644 --- a/e2etests/testdata/stable/multiple_offset/elk/sketch.exp.svg +++ b/e2etests/testdata/stable/multiple_offset/elk/sketch.exp.svg @@ -96,21 +96,21 @@ .d2-2956067749 .color-AA4{color:#EDF0FD;} .d2-2956067749 .color-AA5{color:#F7F8FE;} .d2-2956067749 .color-AB4{color:#EDF0FD;} - .d2-2956067749 .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-d2-2956067749);mix-blend-mode:lighten}.sketch-overlay-B2{fill:url(#streaks-darker-d2-2956067749);mix-blend-mode:lighten}.sketch-overlay-B3{fill:url(#streaks-bright-d2-2956067749);mix-blend-mode:darken}.sketch-overlay-B4{fill:url(#streaks-bright-d2-2956067749);mix-blend-mode:darken}.sketch-overlay-B5{fill:url(#streaks-bright-d2-2956067749);mix-blend-mode:darken}.sketch-overlay-B6{fill:url(#streaks-bright-d2-2956067749);mix-blend-mode:darken}.sketch-overlay-AA2{fill:url(#streaks-dark-d2-2956067749);mix-blend-mode:overlay}.sketch-overlay-AA4{fill:url(#streaks-bright-d2-2956067749);mix-blend-mode:darken}.sketch-overlay-AA5{fill:url(#streaks-bright-d2-2956067749);mix-blend-mode:darken}.sketch-overlay-AB4{fill:url(#streaks-bright-d2-2956067749);mix-blend-mode:darken}.sketch-overlay-AB5{fill:url(#streaks-bright-d2-2956067749);mix-blend-mode:darken}.sketch-overlay-N1{fill:url(#streaks-darker-d2-2956067749);mix-blend-mode:lighten}.sketch-overlay-N2{fill:url(#streaks-dark-d2-2956067749);mix-blend-mode:overlay}.sketch-overlay-N3{fill:url(#streaks-normal-d2-2956067749);mix-blend-mode:color-burn}.sketch-overlay-N4{fill:url(#streaks-normal-d2-2956067749);mix-blend-mode:color-burn}.sketch-overlay-N5{fill:url(#streaks-bright-d2-2956067749);mix-blend-mode:darken}.sketch-overlay-N6{fill:url(#streaks-bright-d2-2956067749);mix-blend-mode:darken}.sketch-overlay-N7{fill:url(#streaks-bright-d2-2956067749);mix-blend-mode:darken}.light-code{display: block}.dark-code{display: none}]]>n1n2n3 + .d2-2956067749 .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-d2-2956067749);mix-blend-mode:lighten}.sketch-overlay-B2{fill:url(#streaks-darker-d2-2956067749);mix-blend-mode:lighten}.sketch-overlay-B3{fill:url(#streaks-bright-d2-2956067749);mix-blend-mode:darken}.sketch-overlay-B4{fill:url(#streaks-bright-d2-2956067749);mix-blend-mode:darken}.sketch-overlay-B5{fill:url(#streaks-bright-d2-2956067749);mix-blend-mode:darken}.sketch-overlay-B6{fill:url(#streaks-bright-d2-2956067749);mix-blend-mode:darken}.sketch-overlay-AA2{fill:url(#streaks-dark-d2-2956067749);mix-blend-mode:overlay}.sketch-overlay-AA4{fill:url(#streaks-bright-d2-2956067749);mix-blend-mode:darken}.sketch-overlay-AA5{fill:url(#streaks-bright-d2-2956067749);mix-blend-mode:darken}.sketch-overlay-AB4{fill:url(#streaks-bright-d2-2956067749);mix-blend-mode:darken}.sketch-overlay-AB5{fill:url(#streaks-bright-d2-2956067749);mix-blend-mode:darken}.sketch-overlay-N1{fill:url(#streaks-darker-d2-2956067749);mix-blend-mode:lighten}.sketch-overlay-N2{fill:url(#streaks-dark-d2-2956067749);mix-blend-mode:overlay}.sketch-overlay-N3{fill:url(#streaks-normal-d2-2956067749);mix-blend-mode:color-burn}.sketch-overlay-N4{fill:url(#streaks-normal-d2-2956067749);mix-blend-mode:color-burn}.sketch-overlay-N5{fill:url(#streaks-bright-d2-2956067749);mix-blend-mode:darken}.sketch-overlay-N6{fill:url(#streaks-bright-d2-2956067749);mix-blend-mode:darken}.sketch-overlay-N7{fill:url(#streaks-bright-d2-2956067749);mix-blend-mode:darken}.light-code{display: block}.dark-code{display: none}]]>n1n2n3 -n4n5 +n4n5 -n6n7 +n6n7 -n8n9 +n8n9 -n10aba +n10aba -baba +baba -bababab +bababab -abab +abab a diff --git a/e2etests/testdata/stable/multiple_offset_left/dagre/sketch.exp.svg b/e2etests/testdata/stable/multiple_offset_left/dagre/sketch.exp.svg index f1e00d8a1..2ec047986 100644 --- a/e2etests/testdata/stable/multiple_offset_left/dagre/sketch.exp.svg +++ b/e2etests/testdata/stable/multiple_offset_left/dagre/sketch.exp.svg @@ -96,21 +96,21 @@ .d2-1825809757 .color-AA4{color:#EDF0FD;} .d2-1825809757 .color-AA5{color:#F7F8FE;} .d2-1825809757 .color-AB4{color:#EDF0FD;} - .d2-1825809757 .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-d2-1825809757);mix-blend-mode:lighten}.sketch-overlay-B2{fill:url(#streaks-darker-d2-1825809757);mix-blend-mode:lighten}.sketch-overlay-B3{fill:url(#streaks-bright-d2-1825809757);mix-blend-mode:darken}.sketch-overlay-B4{fill:url(#streaks-bright-d2-1825809757);mix-blend-mode:darken}.sketch-overlay-B5{fill:url(#streaks-bright-d2-1825809757);mix-blend-mode:darken}.sketch-overlay-B6{fill:url(#streaks-bright-d2-1825809757);mix-blend-mode:darken}.sketch-overlay-AA2{fill:url(#streaks-dark-d2-1825809757);mix-blend-mode:overlay}.sketch-overlay-AA4{fill:url(#streaks-bright-d2-1825809757);mix-blend-mode:darken}.sketch-overlay-AA5{fill:url(#streaks-bright-d2-1825809757);mix-blend-mode:darken}.sketch-overlay-AB4{fill:url(#streaks-bright-d2-1825809757);mix-blend-mode:darken}.sketch-overlay-AB5{fill:url(#streaks-bright-d2-1825809757);mix-blend-mode:darken}.sketch-overlay-N1{fill:url(#streaks-darker-d2-1825809757);mix-blend-mode:lighten}.sketch-overlay-N2{fill:url(#streaks-dark-d2-1825809757);mix-blend-mode:overlay}.sketch-overlay-N3{fill:url(#streaks-normal-d2-1825809757);mix-blend-mode:color-burn}.sketch-overlay-N4{fill:url(#streaks-normal-d2-1825809757);mix-blend-mode:color-burn}.sketch-overlay-N5{fill:url(#streaks-bright-d2-1825809757);mix-blend-mode:darken}.sketch-overlay-N6{fill:url(#streaks-bright-d2-1825809757);mix-blend-mode:darken}.sketch-overlay-N7{fill:url(#streaks-bright-d2-1825809757);mix-blend-mode:darken}.light-code{display: block}.dark-code{display: none}]]>n1n2n3 + .d2-1825809757 .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-d2-1825809757);mix-blend-mode:lighten}.sketch-overlay-B2{fill:url(#streaks-darker-d2-1825809757);mix-blend-mode:lighten}.sketch-overlay-B3{fill:url(#streaks-bright-d2-1825809757);mix-blend-mode:darken}.sketch-overlay-B4{fill:url(#streaks-bright-d2-1825809757);mix-blend-mode:darken}.sketch-overlay-B5{fill:url(#streaks-bright-d2-1825809757);mix-blend-mode:darken}.sketch-overlay-B6{fill:url(#streaks-bright-d2-1825809757);mix-blend-mode:darken}.sketch-overlay-AA2{fill:url(#streaks-dark-d2-1825809757);mix-blend-mode:overlay}.sketch-overlay-AA4{fill:url(#streaks-bright-d2-1825809757);mix-blend-mode:darken}.sketch-overlay-AA5{fill:url(#streaks-bright-d2-1825809757);mix-blend-mode:darken}.sketch-overlay-AB4{fill:url(#streaks-bright-d2-1825809757);mix-blend-mode:darken}.sketch-overlay-AB5{fill:url(#streaks-bright-d2-1825809757);mix-blend-mode:darken}.sketch-overlay-N1{fill:url(#streaks-darker-d2-1825809757);mix-blend-mode:lighten}.sketch-overlay-N2{fill:url(#streaks-dark-d2-1825809757);mix-blend-mode:overlay}.sketch-overlay-N3{fill:url(#streaks-normal-d2-1825809757);mix-blend-mode:color-burn}.sketch-overlay-N4{fill:url(#streaks-normal-d2-1825809757);mix-blend-mode:color-burn}.sketch-overlay-N5{fill:url(#streaks-bright-d2-1825809757);mix-blend-mode:darken}.sketch-overlay-N6{fill:url(#streaks-bright-d2-1825809757);mix-blend-mode:darken}.sketch-overlay-N7{fill:url(#streaks-bright-d2-1825809757);mix-blend-mode:darken}.light-code{display: block}.dark-code{display: none}]]>n1n2n3 -n4n5 +n4n5 -n6n7 +n6n7 -n8n9 +n8n9 -n10aba +n10aba -baba +baba -bababab +bababab -abab +abab a diff --git a/e2etests/testdata/stable/multiple_offset_left/elk/sketch.exp.svg b/e2etests/testdata/stable/multiple_offset_left/elk/sketch.exp.svg index 66ca987b4..107f54889 100644 --- a/e2etests/testdata/stable/multiple_offset_left/elk/sketch.exp.svg +++ b/e2etests/testdata/stable/multiple_offset_left/elk/sketch.exp.svg @@ -96,21 +96,21 @@ .d2-1207717161 .color-AA4{color:#EDF0FD;} .d2-1207717161 .color-AA5{color:#F7F8FE;} .d2-1207717161 .color-AB4{color:#EDF0FD;} - .d2-1207717161 .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-d2-1207717161);mix-blend-mode:lighten}.sketch-overlay-B2{fill:url(#streaks-darker-d2-1207717161);mix-blend-mode:lighten}.sketch-overlay-B3{fill:url(#streaks-bright-d2-1207717161);mix-blend-mode:darken}.sketch-overlay-B4{fill:url(#streaks-bright-d2-1207717161);mix-blend-mode:darken}.sketch-overlay-B5{fill:url(#streaks-bright-d2-1207717161);mix-blend-mode:darken}.sketch-overlay-B6{fill:url(#streaks-bright-d2-1207717161);mix-blend-mode:darken}.sketch-overlay-AA2{fill:url(#streaks-dark-d2-1207717161);mix-blend-mode:overlay}.sketch-overlay-AA4{fill:url(#streaks-bright-d2-1207717161);mix-blend-mode:darken}.sketch-overlay-AA5{fill:url(#streaks-bright-d2-1207717161);mix-blend-mode:darken}.sketch-overlay-AB4{fill:url(#streaks-bright-d2-1207717161);mix-blend-mode:darken}.sketch-overlay-AB5{fill:url(#streaks-bright-d2-1207717161);mix-blend-mode:darken}.sketch-overlay-N1{fill:url(#streaks-darker-d2-1207717161);mix-blend-mode:lighten}.sketch-overlay-N2{fill:url(#streaks-dark-d2-1207717161);mix-blend-mode:overlay}.sketch-overlay-N3{fill:url(#streaks-normal-d2-1207717161);mix-blend-mode:color-burn}.sketch-overlay-N4{fill:url(#streaks-normal-d2-1207717161);mix-blend-mode:color-burn}.sketch-overlay-N5{fill:url(#streaks-bright-d2-1207717161);mix-blend-mode:darken}.sketch-overlay-N6{fill:url(#streaks-bright-d2-1207717161);mix-blend-mode:darken}.sketch-overlay-N7{fill:url(#streaks-bright-d2-1207717161);mix-blend-mode:darken}.light-code{display: block}.dark-code{display: none}]]>n1n2n3 + .d2-1207717161 .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-d2-1207717161);mix-blend-mode:lighten}.sketch-overlay-B2{fill:url(#streaks-darker-d2-1207717161);mix-blend-mode:lighten}.sketch-overlay-B3{fill:url(#streaks-bright-d2-1207717161);mix-blend-mode:darken}.sketch-overlay-B4{fill:url(#streaks-bright-d2-1207717161);mix-blend-mode:darken}.sketch-overlay-B5{fill:url(#streaks-bright-d2-1207717161);mix-blend-mode:darken}.sketch-overlay-B6{fill:url(#streaks-bright-d2-1207717161);mix-blend-mode:darken}.sketch-overlay-AA2{fill:url(#streaks-dark-d2-1207717161);mix-blend-mode:overlay}.sketch-overlay-AA4{fill:url(#streaks-bright-d2-1207717161);mix-blend-mode:darken}.sketch-overlay-AA5{fill:url(#streaks-bright-d2-1207717161);mix-blend-mode:darken}.sketch-overlay-AB4{fill:url(#streaks-bright-d2-1207717161);mix-blend-mode:darken}.sketch-overlay-AB5{fill:url(#streaks-bright-d2-1207717161);mix-blend-mode:darken}.sketch-overlay-N1{fill:url(#streaks-darker-d2-1207717161);mix-blend-mode:lighten}.sketch-overlay-N2{fill:url(#streaks-dark-d2-1207717161);mix-blend-mode:overlay}.sketch-overlay-N3{fill:url(#streaks-normal-d2-1207717161);mix-blend-mode:color-burn}.sketch-overlay-N4{fill:url(#streaks-normal-d2-1207717161);mix-blend-mode:color-burn}.sketch-overlay-N5{fill:url(#streaks-bright-d2-1207717161);mix-blend-mode:darken}.sketch-overlay-N6{fill:url(#streaks-bright-d2-1207717161);mix-blend-mode:darken}.sketch-overlay-N7{fill:url(#streaks-bright-d2-1207717161);mix-blend-mode:darken}.light-code{display: block}.dark-code{display: none}]]>n1n2n3 -n4n5 +n4n5 -n6n7 +n6n7 -n8n9 +n8n9 -n10aba +n10aba -baba +baba -bababab +bababab -abab +abab a diff --git a/e2etests/testdata/stable/multiple_person_label/dagre/sketch.exp.svg b/e2etests/testdata/stable/multiple_person_label/dagre/sketch.exp.svg index f903c4741..b4a9a202f 100644 --- a/e2etests/testdata/stable/multiple_person_label/dagre/sketch.exp.svg +++ b/e2etests/testdata/stable/multiple_person_label/dagre/sketch.exp.svg @@ -89,7 +89,7 @@ .d2-1389951319 .color-AA4{color:#EDF0FD;} .d2-1389951319 .color-AA5{color:#F7F8FE;} .d2-1389951319 .color-AB4{color:#EDF0FD;} - .d2-1389951319 .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-d2-1389951319);mix-blend-mode:lighten}.sketch-overlay-B2{fill:url(#streaks-darker-d2-1389951319);mix-blend-mode:lighten}.sketch-overlay-B3{fill:url(#streaks-bright-d2-1389951319);mix-blend-mode:darken}.sketch-overlay-B4{fill:url(#streaks-bright-d2-1389951319);mix-blend-mode:darken}.sketch-overlay-B5{fill:url(#streaks-bright-d2-1389951319);mix-blend-mode:darken}.sketch-overlay-B6{fill:url(#streaks-bright-d2-1389951319);mix-blend-mode:darken}.sketch-overlay-AA2{fill:url(#streaks-dark-d2-1389951319);mix-blend-mode:overlay}.sketch-overlay-AA4{fill:url(#streaks-bright-d2-1389951319);mix-blend-mode:darken}.sketch-overlay-AA5{fill:url(#streaks-bright-d2-1389951319);mix-blend-mode:darken}.sketch-overlay-AB4{fill:url(#streaks-bright-d2-1389951319);mix-blend-mode:darken}.sketch-overlay-AB5{fill:url(#streaks-bright-d2-1389951319);mix-blend-mode:darken}.sketch-overlay-N1{fill:url(#streaks-darker-d2-1389951319);mix-blend-mode:lighten}.sketch-overlay-N2{fill:url(#streaks-dark-d2-1389951319);mix-blend-mode:overlay}.sketch-overlay-N3{fill:url(#streaks-normal-d2-1389951319);mix-blend-mode:color-burn}.sketch-overlay-N4{fill:url(#streaks-normal-d2-1389951319);mix-blend-mode:color-burn}.sketch-overlay-N5{fill:url(#streaks-bright-d2-1389951319);mix-blend-mode:darken}.sketch-overlay-N6{fill:url(#streaks-bright-d2-1389951319);mix-blend-mode:darken}.sketch-overlay-N7{fill:url(#streaks-bright-d2-1389951319);mix-blend-mode:darken}.light-code{display: block}.dark-code{display: none}]]>ใ‚ + .d2-1389951319 .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-d2-1389951319);mix-blend-mode:lighten}.sketch-overlay-B2{fill:url(#streaks-darker-d2-1389951319);mix-blend-mode:lighten}.sketch-overlay-B3{fill:url(#streaks-bright-d2-1389951319);mix-blend-mode:darken}.sketch-overlay-B4{fill:url(#streaks-bright-d2-1389951319);mix-blend-mode:darken}.sketch-overlay-B5{fill:url(#streaks-bright-d2-1389951319);mix-blend-mode:darken}.sketch-overlay-B6{fill:url(#streaks-bright-d2-1389951319);mix-blend-mode:darken}.sketch-overlay-AA2{fill:url(#streaks-dark-d2-1389951319);mix-blend-mode:overlay}.sketch-overlay-AA4{fill:url(#streaks-bright-d2-1389951319);mix-blend-mode:darken}.sketch-overlay-AA5{fill:url(#streaks-bright-d2-1389951319);mix-blend-mode:darken}.sketch-overlay-AB4{fill:url(#streaks-bright-d2-1389951319);mix-blend-mode:darken}.sketch-overlay-AB5{fill:url(#streaks-bright-d2-1389951319);mix-blend-mode:darken}.sketch-overlay-N1{fill:url(#streaks-darker-d2-1389951319);mix-blend-mode:lighten}.sketch-overlay-N2{fill:url(#streaks-dark-d2-1389951319);mix-blend-mode:overlay}.sketch-overlay-N3{fill:url(#streaks-normal-d2-1389951319);mix-blend-mode:color-burn}.sketch-overlay-N4{fill:url(#streaks-normal-d2-1389951319);mix-blend-mode:color-burn}.sketch-overlay-N5{fill:url(#streaks-bright-d2-1389951319);mix-blend-mode:darken}.sketch-overlay-N6{fill:url(#streaks-bright-d2-1389951319);mix-blend-mode:darken}.sketch-overlay-N7{fill:url(#streaks-bright-d2-1389951319);mix-blend-mode:darken}.light-code{display: block}.dark-code{display: none}]]>ใ‚ \ No newline at end of file diff --git a/e2etests/testdata/stable/multiple_person_label/elk/sketch.exp.svg b/e2etests/testdata/stable/multiple_person_label/elk/sketch.exp.svg index e2f6d8d15..a8f4021d4 100644 --- a/e2etests/testdata/stable/multiple_person_label/elk/sketch.exp.svg +++ b/e2etests/testdata/stable/multiple_person_label/elk/sketch.exp.svg @@ -89,7 +89,7 @@ .d2-3688633770 .color-AA4{color:#EDF0FD;} .d2-3688633770 .color-AA5{color:#F7F8FE;} .d2-3688633770 .color-AB4{color:#EDF0FD;} - .d2-3688633770 .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-d2-3688633770);mix-blend-mode:lighten}.sketch-overlay-B2{fill:url(#streaks-darker-d2-3688633770);mix-blend-mode:lighten}.sketch-overlay-B3{fill:url(#streaks-bright-d2-3688633770);mix-blend-mode:darken}.sketch-overlay-B4{fill:url(#streaks-bright-d2-3688633770);mix-blend-mode:darken}.sketch-overlay-B5{fill:url(#streaks-bright-d2-3688633770);mix-blend-mode:darken}.sketch-overlay-B6{fill:url(#streaks-bright-d2-3688633770);mix-blend-mode:darken}.sketch-overlay-AA2{fill:url(#streaks-dark-d2-3688633770);mix-blend-mode:overlay}.sketch-overlay-AA4{fill:url(#streaks-bright-d2-3688633770);mix-blend-mode:darken}.sketch-overlay-AA5{fill:url(#streaks-bright-d2-3688633770);mix-blend-mode:darken}.sketch-overlay-AB4{fill:url(#streaks-bright-d2-3688633770);mix-blend-mode:darken}.sketch-overlay-AB5{fill:url(#streaks-bright-d2-3688633770);mix-blend-mode:darken}.sketch-overlay-N1{fill:url(#streaks-darker-d2-3688633770);mix-blend-mode:lighten}.sketch-overlay-N2{fill:url(#streaks-dark-d2-3688633770);mix-blend-mode:overlay}.sketch-overlay-N3{fill:url(#streaks-normal-d2-3688633770);mix-blend-mode:color-burn}.sketch-overlay-N4{fill:url(#streaks-normal-d2-3688633770);mix-blend-mode:color-burn}.sketch-overlay-N5{fill:url(#streaks-bright-d2-3688633770);mix-blend-mode:darken}.sketch-overlay-N6{fill:url(#streaks-bright-d2-3688633770);mix-blend-mode:darken}.sketch-overlay-N7{fill:url(#streaks-bright-d2-3688633770);mix-blend-mode:darken}.light-code{display: block}.dark-code{display: none}]]>ใ‚ + .d2-3688633770 .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-d2-3688633770);mix-blend-mode:lighten}.sketch-overlay-B2{fill:url(#streaks-darker-d2-3688633770);mix-blend-mode:lighten}.sketch-overlay-B3{fill:url(#streaks-bright-d2-3688633770);mix-blend-mode:darken}.sketch-overlay-B4{fill:url(#streaks-bright-d2-3688633770);mix-blend-mode:darken}.sketch-overlay-B5{fill:url(#streaks-bright-d2-3688633770);mix-blend-mode:darken}.sketch-overlay-B6{fill:url(#streaks-bright-d2-3688633770);mix-blend-mode:darken}.sketch-overlay-AA2{fill:url(#streaks-dark-d2-3688633770);mix-blend-mode:overlay}.sketch-overlay-AA4{fill:url(#streaks-bright-d2-3688633770);mix-blend-mode:darken}.sketch-overlay-AA5{fill:url(#streaks-bright-d2-3688633770);mix-blend-mode:darken}.sketch-overlay-AB4{fill:url(#streaks-bright-d2-3688633770);mix-blend-mode:darken}.sketch-overlay-AB5{fill:url(#streaks-bright-d2-3688633770);mix-blend-mode:darken}.sketch-overlay-N1{fill:url(#streaks-darker-d2-3688633770);mix-blend-mode:lighten}.sketch-overlay-N2{fill:url(#streaks-dark-d2-3688633770);mix-blend-mode:overlay}.sketch-overlay-N3{fill:url(#streaks-normal-d2-3688633770);mix-blend-mode:color-burn}.sketch-overlay-N4{fill:url(#streaks-normal-d2-3688633770);mix-blend-mode:color-burn}.sketch-overlay-N5{fill:url(#streaks-bright-d2-3688633770);mix-blend-mode:darken}.sketch-overlay-N6{fill:url(#streaks-bright-d2-3688633770);mix-blend-mode:darken}.sketch-overlay-N7{fill:url(#streaks-bright-d2-3688633770);mix-blend-mode:darken}.light-code{display: block}.dark-code{display: none}]]>ใ‚ \ No newline at end of file diff --git a/e2etests/testdata/stable/nesting_power/dagre/sketch.exp.svg b/e2etests/testdata/stable/nesting_power/dagre/sketch.exp.svg index 20cb56194..3d3e5eb37 100644 --- a/e2etests/testdata/stable/nesting_power/dagre/sketch.exp.svg +++ b/e2etests/testdata/stable/nesting_power/dagre/sketch.exp.svg @@ -111,7 +111,7 @@ -Left Constant NearcenterdirectionsRight Constant NearseqmoreBottom Left Constant Neardefaultlayouthererectanglesquarepageparallelogramdocumentcylinderqueuepackagestepcalloutstored_datapersondiamondovalcirclehexagoncloudrightleftisconstantandalsogridscoreritemResponseitemessayRubricconceptitemOutcomestylishcontaineradagreelktalathisisgrid12341234updownnearax +Left Constant NearcenterdirectionsRight Constant NearseqmoreBottom Left Constant Neardefaultlayouthererectanglesquarepageparallelogramdocumentcylinderqueuepackagestepcalloutstored_datapersondiamondovalcirclehexagoncloudrightleftisconstantandalsogridscoreritemResponseitemessayRubricconceptitemOutcomestylishcontaineradagreelktalathisisgrid12341234updownnearax ya_sequencea_shapesequencefinallybrow 1row 2row 3row 4row 5withasequence diagramyou canchild of is12341234scoreritemResponseitemessayRubricconceptsequencefrom one constant nearhaveanothergridhere andgrandchildscorerconceptessayRubricitemitemOutcomeitemResponse123continuenesting ororruns thisruns thisruns thisA straight edge across straight edge across nested typesdefault layoutdefault layoutdefault layout in styleto inside sequence diagramto inside sequence diagramto inside sequence diagramto constant nearfrom within constant nearto another getItem() itemgetRubric()rubricapplyTo(essayResp)match(essayResponse)score diff --git a/e2etests/testdata/stable/nesting_power/elk/sketch.exp.svg b/e2etests/testdata/stable/nesting_power/elk/sketch.exp.svg index 188c11569..e28c01e57 100644 --- a/e2etests/testdata/stable/nesting_power/elk/sketch.exp.svg +++ b/e2etests/testdata/stable/nesting_power/elk/sketch.exp.svg @@ -111,7 +111,7 @@ -Left Constant NearcenterdirectionsRight Constant NearseqmoreBottom Left Constant Neardefaultlayouthererectanglesquarepageparallelogramdocumentcylinderqueuepackagestepcalloutstored_datapersondiamondovalcirclehexagoncloudrightleftisconstantandalsogridscoreritemResponseitemessayRubricconceptitemOutcomestylishcontaineradagreelktalathisisgrid12341234updownnearax +Left Constant NearcenterdirectionsRight Constant NearseqmoreBottom Left Constant Neardefaultlayouthererectanglesquarepageparallelogramdocumentcylinderqueuepackagestepcalloutstored_datapersondiamondovalcirclehexagoncloudrightleftisconstantandalsogridscoreritemResponseitemessayRubricconceptitemOutcomestylishcontaineradagreelktalathisisgrid12341234updownnearax ya_sequencea_shapesequencefinallybrow 1row 2row 3row 4row 5withasequence diagramyou canchild of is12341234scoreritemResponseitemessayRubricconceptsequencefrom one constant nearhaveanothergridhere andgrandchildscorerconceptessayRubricitemitemOutcomeitemResponse123continuenesting ororruns thisruns thisruns thisA straight edge across straight edge across nested typesdefault layoutdefault layoutdefault layout in styleto inside sequence diagramto inside sequence diagramto inside sequence diagramto constant nearfrom within constant nearto another getItem() itemgetRubric()rubricapplyTo(essayResp)match(essayResponse)score diff --git a/e2etests/testdata/themes/dark_terrastruct_flagship/dagre/sketch.exp.svg b/e2etests/testdata/themes/dark_terrastruct_flagship/dagre/sketch.exp.svg index ac8a7c4b7..2d4f79632 100644 --- a/e2etests/testdata/themes/dark_terrastruct_flagship/dagre/sketch.exp.svg +++ b/e2etests/testdata/themes/dark_terrastruct_flagship/dagre/sketch.exp.svg @@ -856,7 +856,7 @@ .d2-85991054 .md .contains-task-list:dir(rtl) .task-list-item-checkbox { margin: 0 -1.6em 0.25em 0.2em; } -networkuserapi serverlogsusersidintnamestringemailstringpasswordstringlast_logindatetimeproducts+idint+pricedecimal+skustring+namestring

        A tale

        +networkuserapi serverlogsusersidintnamestringemailstringpasswordstringlast_logindatetimeproducts+idint+pricedecimal+skustring+namestring

        A tale

        • of
        • two cities
        • @@ -907,7 +907,7 @@     city2 := City{Name: "CityB", Population: 1200000}     tellTale(city1, city2) -}Cell Toweronline portaldata processorsatellitesTRANSMITTERuistorage sendsendsendphone logsmake call accessdisplaypersist +}Cell Toweronline portaldata processorsatellitesTRANSMITTERuistorage sendsendsendphone logsmake call accessdisplaypersist diff --git a/e2etests/testdata/themes/dark_terrastruct_flagship/elk/sketch.exp.svg b/e2etests/testdata/themes/dark_terrastruct_flagship/elk/sketch.exp.svg index e50e5243a..a0262422e 100644 --- a/e2etests/testdata/themes/dark_terrastruct_flagship/elk/sketch.exp.svg +++ b/e2etests/testdata/themes/dark_terrastruct_flagship/elk/sketch.exp.svg @@ -856,7 +856,7 @@ .d2-3004075822 .md .contains-task-list:dir(rtl) .task-list-item-checkbox { margin: 0 -1.6em 0.25em 0.2em; } -networkuserapi serverlogsusersidintnamestringemailstringpasswordstringlast_logindatetimeproducts+idint+pricedecimal+skustring+namestring

          A tale

          +networkuserapi serverlogsusersidintnamestringemailstringpasswordstringlast_logindatetimeproducts+idint+pricedecimal+skustring+namestring

          A tale

          • of
          • two cities
          • @@ -907,7 +907,7 @@     city2 := City{Name: "CityB", Population: 1200000}     tellTale(city1, city2) -}Cell Toweronline portaldata processorsatellitesTRANSMITTERuistorage sendsendsendphone logsmake call accessdisplaypersist +}Cell Toweronline portaldata processorsatellitesTRANSMITTERuistorage sendsendsendphone logsmake call accessdisplaypersist diff --git a/e2etests/testdata/themes/origami/dagre/sketch.exp.svg b/e2etests/testdata/themes/origami/dagre/sketch.exp.svg index e3cf97803..d86218a3a 100644 --- a/e2etests/testdata/themes/origami/dagre/sketch.exp.svg +++ b/e2etests/testdata/themes/origami/dagre/sketch.exp.svg @@ -1167,7 +1167,7 @@ -้€šไฟก็ถฒใƒฆใƒผใ‚ถใƒผOTHER-USERapi ใ‚ตใƒผใƒใƒผใƒญใ‚ฐCell Towerใ‚ชใƒณใƒฉใ‚คใƒณใƒใƒผใ‚ฟใƒซใƒ‡ใƒผใ‚ฟใƒ—ใƒญใ‚ปใƒƒใ‚ต่ก›ๆ˜Ÿ้€ไฟกๆฉŸuiไฟ็ฎกๆ‰€ sendSENDsend้›ป่ฉฑใƒญใ‚ฐ้›ป่ฉฑใ‚’ใ‹ใ‘ใ‚‹ ใ‚ขใ‚ฏใ‚ปใ‚น็”ป้ขๆŒ็ถšใ™ใ‚‹ +้€šไฟก็ถฒใƒฆใƒผใ‚ถใƒผOTHER-USERapi ใ‚ตใƒผใƒใƒผใƒญใ‚ฐCell Towerใ‚ชใƒณใƒฉใ‚คใƒณใƒใƒผใ‚ฟใƒซใƒ‡ใƒผใ‚ฟใƒ—ใƒญใ‚ปใƒƒใ‚ต่ก›ๆ˜Ÿ้€ไฟกๆฉŸuiไฟ็ฎกๆ‰€ sendSENDsend้›ป่ฉฑใƒญใ‚ฐ้›ป่ฉฑใ‚’ใ‹ใ‘ใ‚‹ ใ‚ขใ‚ฏใ‚ปใ‚น็”ป้ขๆŒ็ถšใ™ใ‚‹ diff --git a/e2etests/testdata/themes/origami/elk/sketch.exp.svg b/e2etests/testdata/themes/origami/elk/sketch.exp.svg index e91f3025c..9fce8b251 100644 --- a/e2etests/testdata/themes/origami/elk/sketch.exp.svg +++ b/e2etests/testdata/themes/origami/elk/sketch.exp.svg @@ -1167,7 +1167,7 @@ -้€šไฟก็ถฒใƒฆใƒผใ‚ถใƒผOTHER-USERapi ใ‚ตใƒผใƒใƒผใƒญใ‚ฐCell Towerใ‚ชใƒณใƒฉใ‚คใƒณใƒใƒผใ‚ฟใƒซใƒ‡ใƒผใ‚ฟใƒ—ใƒญใ‚ปใƒƒใ‚ต่ก›ๆ˜Ÿ้€ไฟกๆฉŸuiไฟ็ฎกๆ‰€ sendSENDsend้›ป่ฉฑใƒญใ‚ฐ้›ป่ฉฑใ‚’ใ‹ใ‘ใ‚‹ ใ‚ขใ‚ฏใ‚ปใ‚น็”ป้ขๆŒ็ถšใ™ใ‚‹ +้€šไฟก็ถฒใƒฆใƒผใ‚ถใƒผOTHER-USERapi ใ‚ตใƒผใƒใƒผใƒญใ‚ฐCell Towerใ‚ชใƒณใƒฉใ‚คใƒณใƒใƒผใ‚ฟใƒซใƒ‡ใƒผใ‚ฟใƒ—ใƒญใ‚ปใƒƒใ‚ต่ก›ๆ˜Ÿ้€ไฟกๆฉŸuiไฟ็ฎกๆ‰€ sendSENDsend้›ป่ฉฑใƒญใ‚ฐ้›ป่ฉฑใ‚’ใ‹ใ‘ใ‚‹ ใ‚ขใ‚ฏใ‚ปใ‚น็”ป้ขๆŒ็ถšใ™ใ‚‹ diff --git a/e2etests/testdata/themes/terminal/dagre/sketch.exp.svg b/e2etests/testdata/themes/terminal/dagre/sketch.exp.svg index 88ab4d969..52133b595 100644 --- a/e2etests/testdata/themes/terminal/dagre/sketch.exp.svg +++ b/e2etests/testdata/themes/terminal/dagre/sketch.exp.svg @@ -882,7 +882,7 @@ -NETWORKUSERAPI SERVERLOGSUSERSidintnamestringemailstringpasswordstringlast_logindatetimePRODUCTS+idint+pricedecimal+skustring+namestring

            A TALE

            +NETWORKUSERAPI SERVERLOGSUSERSidintnamestringemailstringpasswordstringlast_logindatetimePRODUCTS+idint+pricedecimal+skustring+namestring

            A TALE

            • OF
            • TWO CITIES
            • @@ -933,7 +933,7 @@     city2 := City{Name: "CityB", Population: 1200000}     tellTale(city1, city2) -}Cell TowerONLINE PORTALDATA PROCESSORSATELLITESTRANSMITTERUISTORAGE sendSENDSENDPHONE LOGSMAKE CALL ACCESSDISPLAYPERSIST +}Cell TowerONLINE PORTALDATA PROCESSORSATELLITESTRANSMITTERUISTORAGE sendSENDSENDPHONE LOGSMAKE CALL ACCESSDISPLAYPERSIST diff --git a/e2etests/testdata/themes/terminal/elk/sketch.exp.svg b/e2etests/testdata/themes/terminal/elk/sketch.exp.svg index f9a6f116e..b8e01941f 100644 --- a/e2etests/testdata/themes/terminal/elk/sketch.exp.svg +++ b/e2etests/testdata/themes/terminal/elk/sketch.exp.svg @@ -882,7 +882,7 @@ -NETWORKUSERAPI SERVERLOGSUSERSidintnamestringemailstringpasswordstringlast_logindatetimePRODUCTS+idint+pricedecimal+skustring+namestring

              A TALE

              +NETWORKUSERAPI SERVERLOGSUSERSidintnamestringemailstringpasswordstringlast_logindatetimePRODUCTS+idint+pricedecimal+skustring+namestring

              A TALE

              • OF
              • TWO CITIES
              • @@ -933,7 +933,7 @@     city2 := City{Name: "CityB", Population: 1200000}     tellTale(city1, city2) -}Cell TowerONLINE PORTALDATA PROCESSORSATELLITESTRANSMITTERUISTORAGE sendSENDSENDPHONE LOGSMAKE CALL ACCESSDISPLAYPERSIST +}Cell TowerONLINE PORTALDATA PROCESSORSATELLITESTRANSMITTERUISTORAGE sendSENDSENDPHONE LOGSMAKE CALL ACCESSDISPLAYPERSIST diff --git a/e2etests/testdata/themes/terminal_grayscale/dagre/sketch.exp.svg b/e2etests/testdata/themes/terminal_grayscale/dagre/sketch.exp.svg index e1d3ca115..7a04cd2eb 100644 --- a/e2etests/testdata/themes/terminal_grayscale/dagre/sketch.exp.svg +++ b/e2etests/testdata/themes/terminal_grayscale/dagre/sketch.exp.svg @@ -136,7 +136,7 @@ -NETWORKUSERAPI SERVERLOGSCell TowerONLINE PORTALDATA PROCESSORSATELLITESTRANSMITTERUISTORAGE sendSENDSENDphone logsMAKE CALL ACCESSDISPLAYPERSIST +NETWORKUSERAPI SERVERLOGSCell TowerONLINE PORTALDATA PROCESSORSATELLITESTRANSMITTERUISTORAGE sendSENDSENDphone logsMAKE CALL ACCESSDISPLAYPERSIST diff --git a/e2etests/testdata/themes/terminal_grayscale/elk/sketch.exp.svg b/e2etests/testdata/themes/terminal_grayscale/elk/sketch.exp.svg index a4b9a4f20..9dcd2f7c6 100644 --- a/e2etests/testdata/themes/terminal_grayscale/elk/sketch.exp.svg +++ b/e2etests/testdata/themes/terminal_grayscale/elk/sketch.exp.svg @@ -136,7 +136,7 @@ -NETWORKUSERAPI SERVERLOGSCell TowerONLINE PORTALDATA PROCESSORSATELLITESTRANSMITTERUISTORAGE sendSENDSENDphone logsMAKE CALL ACCESSDISPLAYPERSIST +NETWORKUSERAPI SERVERLOGSCell TowerONLINE PORTALDATA PROCESSORSATELLITESTRANSMITTERUISTORAGE sendSENDSENDphone logsMAKE CALL ACCESSDISPLAYPERSIST diff --git a/e2etests/testdata/txtar/multiple_opacity/dagre/board.exp.json b/e2etests/testdata/txtar/multiple_opacity/dagre/board.exp.json new file mode 100644 index 000000000..70f9fabc9 --- /dev/null +++ b/e2etests/testdata/txtar/multiple_opacity/dagre/board.exp.json @@ -0,0 +1,100 @@ +{ + "name": "", + "config": { + "sketch": false, + "themeID": 0, + "darkThemeID": null, + "pad": null, + "center": null, + "layoutEngine": null + }, + "isFolderOnly": false, + "fontFamily": "SourceSansPro", + "shapes": [ + { + "id": "a", + "type": "rectangle", + "pos": { + "x": 0, + "y": 0 + }, + "width": 53, + "height": 66, + "opacity": 1, + "strokeDash": 0, + "strokeWidth": 2, + "borderRadius": 0, + "fill": "B6", + "stroke": "B1", + "animated": false, + "shadow": false, + "3d": false, + "multiple": true, + "multipleOpacity": 0.5, + "double-border": false, + "tooltip": "", + "link": "", + "icon": null, + "iconPosition": "", + "blend": false, + "fields": null, + "methods": null, + "columns": null, + "label": "a", + "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 + } + ], + "connections": [], + "root": { + "id": "", + "type": "", + "pos": { + "x": 0, + "y": 0 + }, + "width": 0, + "height": 0, + "opacity": 0, + "strokeDash": 0, + "strokeWidth": 0, + "borderRadius": 0, + "fill": "N7", + "stroke": "", + "animated": false, + "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/txtar/multiple_opacity/dagre/sketch.exp.svg b/e2etests/testdata/txtar/multiple_opacity/dagre/sketch.exp.svg new file mode 100644 index 000000000..ecbb9af31 --- /dev/null +++ b/e2etests/testdata/txtar/multiple_opacity/dagre/sketch.exp.svg @@ -0,0 +1,95 @@ +a + + + \ No newline at end of file diff --git a/e2etests/testdata/txtar/multiple_opacity/elk/board.exp.json b/e2etests/testdata/txtar/multiple_opacity/elk/board.exp.json new file mode 100644 index 000000000..a2dd469a4 --- /dev/null +++ b/e2etests/testdata/txtar/multiple_opacity/elk/board.exp.json @@ -0,0 +1,100 @@ +{ + "name": "", + "config": { + "sketch": false, + "themeID": 0, + "darkThemeID": null, + "pad": null, + "center": null, + "layoutEngine": null + }, + "isFolderOnly": false, + "fontFamily": "SourceSansPro", + "shapes": [ + { + "id": "a", + "type": "rectangle", + "pos": { + "x": 12, + "y": 22 + }, + "width": 53, + "height": 66, + "opacity": 1, + "strokeDash": 0, + "strokeWidth": 2, + "borderRadius": 0, + "fill": "B6", + "stroke": "B1", + "animated": false, + "shadow": false, + "3d": false, + "multiple": true, + "multipleOpacity": 0.5, + "double-border": false, + "tooltip": "", + "link": "", + "icon": null, + "iconPosition": "", + "blend": false, + "fields": null, + "methods": null, + "columns": null, + "label": "a", + "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 + } + ], + "connections": [], + "root": { + "id": "", + "type": "", + "pos": { + "x": 0, + "y": 0 + }, + "width": 0, + "height": 0, + "opacity": 0, + "strokeDash": 0, + "strokeWidth": 0, + "borderRadius": 0, + "fill": "N7", + "stroke": "", + "animated": false, + "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/txtar/multiple_opacity/elk/sketch.exp.svg b/e2etests/testdata/txtar/multiple_opacity/elk/sketch.exp.svg new file mode 100644 index 000000000..8769828ec --- /dev/null +++ b/e2etests/testdata/txtar/multiple_opacity/elk/sketch.exp.svg @@ -0,0 +1,95 @@ +a + + + \ No newline at end of file diff --git a/e2etests/testdata/txtar/shape-animate/dagre/sketch.exp.svg b/e2etests/testdata/txtar/shape-animate/dagre/sketch.exp.svg index 42ab87e19..01aced3c9 100644 --- a/e2etests/testdata/txtar/shape-animate/dagre/sketch.exp.svg +++ b/e2etests/testdata/txtar/shape-animate/dagre/sketch.exp.svg @@ -144,7 +144,7 @@ -NETWORKUSERAPI SERVERLOGSCELL TOWERONLINE PORTALDATA PROCESSORSATELLITESTRANSMITTERUISTORAGE SENDSENDSENDPHONE LOGSMAKE CALL ACCESSDISPLAYPERSIST +NETWORKUSERAPI SERVERLOGSCELL TOWERONLINE PORTALDATA PROCESSORSATELLITESTRANSMITTERUISTORAGE SENDSENDSENDPHONE LOGSMAKE CALL ACCESSDISPLAYPERSIST diff --git a/e2etests/testdata/txtar/shape-animate/elk/sketch.exp.svg b/e2etests/testdata/txtar/shape-animate/elk/sketch.exp.svg index 7705f2aae..9fd032ec2 100644 --- a/e2etests/testdata/txtar/shape-animate/elk/sketch.exp.svg +++ b/e2etests/testdata/txtar/shape-animate/elk/sketch.exp.svg @@ -144,7 +144,7 @@ -NETWORKUSERAPI SERVERLOGSCELL TOWERONLINE PORTALDATA PROCESSORSATELLITESTRANSMITTERUISTORAGE SENDSENDSENDPHONE LOGSMAKE CALL ACCESSDISPLAYPERSIST +NETWORKUSERAPI SERVERLOGSCELL TOWERONLINE PORTALDATA PROCESSORSATELLITESTRANSMITTERUISTORAGE SENDSENDSENDPHONE LOGSMAKE CALL ACCESSDISPLAYPERSIST diff --git a/e2etests/testdata/txtar/theme-overrides/dagre/sketch.exp.svg b/e2etests/testdata/txtar/theme-overrides/dagre/sketch.exp.svg index e76a7cfb3..938545edc 100644 --- a/e2etests/testdata/txtar/theme-overrides/dagre/sketch.exp.svg +++ b/e2etests/testdata/txtar/theme-overrides/dagre/sketch.exp.svg @@ -103,7 +103,7 @@ .d2-586632521 .color-AA4{color:#42A5F5;} .d2-586632521 .color-AA5{color:#90CAF9;} .d2-586632521 .color-AB4{color:#F44336;} - .d2-586632521 .color-AB5{color:#FFCDD2;}.appendix text.text{fill:#2E2E2E}.md{--color-fg-default:#2E2E2E;--color-fg-muted:#2E2E2E;--color-fg-subtle:#595959;--color-canvas-default:#DCDCDC;--color-canvas-subtle:#DCDCDC;--color-border-default:#2E7D32;--color-border-muted:#66BB6A;--color-neutral-muted:#DCDCDC;--color-accent-fg:#66BB6A;--color-accent-emphasis:#66BB6A;--color-attention-subtle:#2E2E2E;--color-danger-fg:red;}.sketch-overlay-B1{fill:url(#streaks-dark-d2-586632521);mix-blend-mode:overlay}.sketch-overlay-B2{fill:url(#streaks-normal-d2-586632521);mix-blend-mode:color-burn}.sketch-overlay-B3{fill:url(#streaks-normal-d2-586632521);mix-blend-mode:color-burn}.sketch-overlay-B4{fill:url(#streaks-normal-d2-586632521);mix-blend-mode:color-burn}.sketch-overlay-B5{fill:url(#streaks-bright-d2-586632521);mix-blend-mode:darken}.sketch-overlay-B6{fill:url(#streaks-bright-d2-586632521);mix-blend-mode:darken}.sketch-overlay-AA2{fill:url(#streaks-darker-d2-586632521);mix-blend-mode:lighten}.sketch-overlay-AA4{fill:url(#streaks-normal-d2-586632521);mix-blend-mode:color-burn}.sketch-overlay-AA5{fill:url(#streaks-normal-d2-586632521);mix-blend-mode:color-burn}.sketch-overlay-AB4{fill:url(#streaks-dark-d2-586632521);mix-blend-mode:overlay}.sketch-overlay-AB5{fill:url(#streaks-normal-d2-586632521);mix-blend-mode:color-burn}.sketch-overlay-N1{fill:url(#streaks-darker-d2-586632521);mix-blend-mode:lighten}.sketch-overlay-N2{fill:url(#streaks-darker-d2-586632521);mix-blend-mode:lighten}.sketch-overlay-N3{fill:url(#streaks-dark-d2-586632521);mix-blend-mode:overlay}.sketch-overlay-N4{fill:url(#streaks-dark-d2-586632521);mix-blend-mode:overlay}.sketch-overlay-N5{fill:url(#streaks-normal-d2-586632521);mix-blend-mode:color-burn}.sketch-overlay-N6{fill:url(#streaks-normal-d2-586632521);mix-blend-mode:color-burn}.sketch-overlay-N7{fill:url(#streaks-normal-d2-586632521);mix-blend-mode:color-burn}.light-code{display: block}.dark-code{display: none}]]>logsUserNetworkAPI ServercostumesidintPKsillinessintmonsterintlast_updatedtimestampmonstersidintPKmoviestringweightintlast_updatedtimestampCell TowerData ProcessorOnline PortalsatellitestransmitterStorageUI phone logsMake callpersistdisplay access + .d2-586632521 .color-AB5{color:#FFCDD2;}.appendix text.text{fill:#2E2E2E}.md{--color-fg-default:#2E2E2E;--color-fg-muted:#2E2E2E;--color-fg-subtle:#595959;--color-canvas-default:#DCDCDC;--color-canvas-subtle:#DCDCDC;--color-border-default:#2E7D32;--color-border-muted:#66BB6A;--color-neutral-muted:#DCDCDC;--color-accent-fg:#66BB6A;--color-accent-emphasis:#66BB6A;--color-attention-subtle:#2E2E2E;--color-danger-fg:red;}.sketch-overlay-B1{fill:url(#streaks-dark-d2-586632521);mix-blend-mode:overlay}.sketch-overlay-B2{fill:url(#streaks-normal-d2-586632521);mix-blend-mode:color-burn}.sketch-overlay-B3{fill:url(#streaks-normal-d2-586632521);mix-blend-mode:color-burn}.sketch-overlay-B4{fill:url(#streaks-normal-d2-586632521);mix-blend-mode:color-burn}.sketch-overlay-B5{fill:url(#streaks-bright-d2-586632521);mix-blend-mode:darken}.sketch-overlay-B6{fill:url(#streaks-bright-d2-586632521);mix-blend-mode:darken}.sketch-overlay-AA2{fill:url(#streaks-darker-d2-586632521);mix-blend-mode:lighten}.sketch-overlay-AA4{fill:url(#streaks-normal-d2-586632521);mix-blend-mode:color-burn}.sketch-overlay-AA5{fill:url(#streaks-normal-d2-586632521);mix-blend-mode:color-burn}.sketch-overlay-AB4{fill:url(#streaks-dark-d2-586632521);mix-blend-mode:overlay}.sketch-overlay-AB5{fill:url(#streaks-normal-d2-586632521);mix-blend-mode:color-burn}.sketch-overlay-N1{fill:url(#streaks-darker-d2-586632521);mix-blend-mode:lighten}.sketch-overlay-N2{fill:url(#streaks-darker-d2-586632521);mix-blend-mode:lighten}.sketch-overlay-N3{fill:url(#streaks-dark-d2-586632521);mix-blend-mode:overlay}.sketch-overlay-N4{fill:url(#streaks-dark-d2-586632521);mix-blend-mode:overlay}.sketch-overlay-N5{fill:url(#streaks-normal-d2-586632521);mix-blend-mode:color-burn}.sketch-overlay-N6{fill:url(#streaks-normal-d2-586632521);mix-blend-mode:color-burn}.sketch-overlay-N7{fill:url(#streaks-normal-d2-586632521);mix-blend-mode:color-burn}.light-code{display: block}.dark-code{display: none}]]>logsUserNetworkAPI ServercostumesidintPKsillinessintmonsterintlast_updatedtimestampmonstersidintPKmoviestringweightintlast_updatedtimestampCell TowerData ProcessorOnline PortalsatellitestransmitterStorageUI phone logsMake callpersistdisplay access diff --git a/e2etests/testdata/txtar/theme-overrides/elk/sketch.exp.svg b/e2etests/testdata/txtar/theme-overrides/elk/sketch.exp.svg index dc1b82e74..522f953e7 100644 --- a/e2etests/testdata/txtar/theme-overrides/elk/sketch.exp.svg +++ b/e2etests/testdata/txtar/theme-overrides/elk/sketch.exp.svg @@ -103,7 +103,7 @@ .d2-2010673424 .color-AA4{color:#42A5F5;} .d2-2010673424 .color-AA5{color:#90CAF9;} .d2-2010673424 .color-AB4{color:#F44336;} - .d2-2010673424 .color-AB5{color:#FFCDD2;}.appendix text.text{fill:#2E2E2E}.md{--color-fg-default:#2E2E2E;--color-fg-muted:#2E2E2E;--color-fg-subtle:#595959;--color-canvas-default:#DCDCDC;--color-canvas-subtle:#DCDCDC;--color-border-default:#2E7D32;--color-border-muted:#66BB6A;--color-neutral-muted:#DCDCDC;--color-accent-fg:#66BB6A;--color-accent-emphasis:#66BB6A;--color-attention-subtle:#2E2E2E;--color-danger-fg:red;}.sketch-overlay-B1{fill:url(#streaks-dark-d2-2010673424);mix-blend-mode:overlay}.sketch-overlay-B2{fill:url(#streaks-normal-d2-2010673424);mix-blend-mode:color-burn}.sketch-overlay-B3{fill:url(#streaks-normal-d2-2010673424);mix-blend-mode:color-burn}.sketch-overlay-B4{fill:url(#streaks-normal-d2-2010673424);mix-blend-mode:color-burn}.sketch-overlay-B5{fill:url(#streaks-bright-d2-2010673424);mix-blend-mode:darken}.sketch-overlay-B6{fill:url(#streaks-bright-d2-2010673424);mix-blend-mode:darken}.sketch-overlay-AA2{fill:url(#streaks-darker-d2-2010673424);mix-blend-mode:lighten}.sketch-overlay-AA4{fill:url(#streaks-normal-d2-2010673424);mix-blend-mode:color-burn}.sketch-overlay-AA5{fill:url(#streaks-normal-d2-2010673424);mix-blend-mode:color-burn}.sketch-overlay-AB4{fill:url(#streaks-dark-d2-2010673424);mix-blend-mode:overlay}.sketch-overlay-AB5{fill:url(#streaks-normal-d2-2010673424);mix-blend-mode:color-burn}.sketch-overlay-N1{fill:url(#streaks-darker-d2-2010673424);mix-blend-mode:lighten}.sketch-overlay-N2{fill:url(#streaks-darker-d2-2010673424);mix-blend-mode:lighten}.sketch-overlay-N3{fill:url(#streaks-dark-d2-2010673424);mix-blend-mode:overlay}.sketch-overlay-N4{fill:url(#streaks-dark-d2-2010673424);mix-blend-mode:overlay}.sketch-overlay-N5{fill:url(#streaks-normal-d2-2010673424);mix-blend-mode:color-burn}.sketch-overlay-N6{fill:url(#streaks-normal-d2-2010673424);mix-blend-mode:color-burn}.sketch-overlay-N7{fill:url(#streaks-normal-d2-2010673424);mix-blend-mode:color-burn}.light-code{display: block}.dark-code{display: none}]]>logsUserNetworkAPI ServercostumesidintPKsillinessintmonsterintlast_updatedtimestampmonstersidintPKmoviestringweightintlast_updatedtimestampCell TowerData ProcessorOnline PortalsatellitestransmitterStorageUI phone logsMake callpersistdisplay access + .d2-2010673424 .color-AB5{color:#FFCDD2;}.appendix text.text{fill:#2E2E2E}.md{--color-fg-default:#2E2E2E;--color-fg-muted:#2E2E2E;--color-fg-subtle:#595959;--color-canvas-default:#DCDCDC;--color-canvas-subtle:#DCDCDC;--color-border-default:#2E7D32;--color-border-muted:#66BB6A;--color-neutral-muted:#DCDCDC;--color-accent-fg:#66BB6A;--color-accent-emphasis:#66BB6A;--color-attention-subtle:#2E2E2E;--color-danger-fg:red;}.sketch-overlay-B1{fill:url(#streaks-dark-d2-2010673424);mix-blend-mode:overlay}.sketch-overlay-B2{fill:url(#streaks-normal-d2-2010673424);mix-blend-mode:color-burn}.sketch-overlay-B3{fill:url(#streaks-normal-d2-2010673424);mix-blend-mode:color-burn}.sketch-overlay-B4{fill:url(#streaks-normal-d2-2010673424);mix-blend-mode:color-burn}.sketch-overlay-B5{fill:url(#streaks-bright-d2-2010673424);mix-blend-mode:darken}.sketch-overlay-B6{fill:url(#streaks-bright-d2-2010673424);mix-blend-mode:darken}.sketch-overlay-AA2{fill:url(#streaks-darker-d2-2010673424);mix-blend-mode:lighten}.sketch-overlay-AA4{fill:url(#streaks-normal-d2-2010673424);mix-blend-mode:color-burn}.sketch-overlay-AA5{fill:url(#streaks-normal-d2-2010673424);mix-blend-mode:color-burn}.sketch-overlay-AB4{fill:url(#streaks-dark-d2-2010673424);mix-blend-mode:overlay}.sketch-overlay-AB5{fill:url(#streaks-normal-d2-2010673424);mix-blend-mode:color-burn}.sketch-overlay-N1{fill:url(#streaks-darker-d2-2010673424);mix-blend-mode:lighten}.sketch-overlay-N2{fill:url(#streaks-darker-d2-2010673424);mix-blend-mode:lighten}.sketch-overlay-N3{fill:url(#streaks-dark-d2-2010673424);mix-blend-mode:overlay}.sketch-overlay-N4{fill:url(#streaks-dark-d2-2010673424);mix-blend-mode:overlay}.sketch-overlay-N5{fill:url(#streaks-normal-d2-2010673424);mix-blend-mode:color-burn}.sketch-overlay-N6{fill:url(#streaks-normal-d2-2010673424);mix-blend-mode:color-burn}.sketch-overlay-N7{fill:url(#streaks-normal-d2-2010673424);mix-blend-mode:color-burn}.light-code{display: block}.dark-code{display: none}]]>logsUserNetworkAPI ServercostumesidintPKsillinessintmonsterintlast_updatedtimestampmonstersidintPKmoviestringweightintlast_updatedtimestampCell TowerData ProcessorOnline PortalsatellitestransmitterStorageUI phone logsMake callpersistdisplay access diff --git a/e2etests/txtar.txt b/e2etests/txtar.txt index 90fb07c1b..20980d6f3 100644 --- a/e2etests/txtar.txt +++ b/e2etests/txtar.txt @@ -1190,3 +1190,11 @@ customer4: |md | { shape: c4-person } + +-- multiple opacity -- +a: { + style: { + multiple: true + multiple.opacity: 0.5 + } +} From 9ea469a76d2d2a24416b5cee88e676b75c71ba92 Mon Sep 17 00:00:00 2001 From: melsonic Date: Sun, 4 May 2025 23:59:06 +0530 Subject: [PATCH 2/6] update next.md --- ci/release/changelogs/next.md | 1 + 1 file changed, 1 insertion(+) diff --git a/ci/release/changelogs/next.md b/ci/release/changelogs/next.md index 4a04e7e04..a8d6aaefb 100644 --- a/ci/release/changelogs/next.md +++ b/ci/release/changelogs/next.md @@ -10,6 +10,7 @@ - `shape: c4-person` to render a person shape like what the C4 model prescribes [#2397](https://github.com/terrastruct/d2/pull/2397) - Icons: border-radius should work on icon [#2409](https://github.com/terrastruct/d2/issues/2409) - Diagram legends are implemented [#2416](https://github.com/terrastruct/d2/pull/2416) +- Ability to fade background shape on multiple style [#2509](https://github.com/terrastruct/d2/pull/2509) #### Improvements ๐Ÿงน From da130c76985c460d0bf04201da90a9592d6c81fa Mon Sep 17 00:00:00 2001 From: melsonic Date: Mon, 5 May 2025 00:05:20 +0530 Subject: [PATCH 3/6] update next.md --- ci/release/changelogs/next.md | 1 + 1 file changed, 1 insertion(+) diff --git a/ci/release/changelogs/next.md b/ci/release/changelogs/next.md index 65780a72c..9460f6575 100644 --- a/ci/release/changelogs/next.md +++ b/ci/release/changelogs/next.md @@ -1,4 +1,5 @@ #### Features ๐Ÿš€ +- Ability to fade background shape on multiple style [#2509](https://github.com/terrastruct/d2/pull/2509) #### Improvements ๐Ÿงน From 7e3fbd78356cb725b687d33d3c3cfdb96fa62de4 Mon Sep 17 00:00:00 2001 From: melsonic Date: Mon, 5 May 2025 00:09:55 +0530 Subject: [PATCH 4/6] add txtar expected files --- e2etests/testdata/txtar/multiple_opacity/dagre/sketch.exp.svg | 2 +- e2etests/testdata/txtar/multiple_opacity/elk/sketch.exp.svg | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/e2etests/testdata/txtar/multiple_opacity/dagre/sketch.exp.svg b/e2etests/testdata/txtar/multiple_opacity/dagre/sketch.exp.svg index ecbb9af31..e93b7433f 100644 --- a/e2etests/testdata/txtar/multiple_opacity/dagre/sketch.exp.svg +++ b/e2etests/testdata/txtar/multiple_opacity/dagre/sketch.exp.svg @@ -1,4 +1,4 @@ -logsUserNetworkAPI ServercostumesidintPKsillinessintmonsterintlast_updatedtimestampmonstersidintPKmoviestringweightintlast_updatedtimestampCell TowerData ProcessorOnline PortalsatellitestransmitterStorageUI phone logsMake callpersistdisplay access + .d2-586632521 .color-AB5{color:#FFCDD2;}.appendix text.text{fill:#2E2E2E}.md{--color-fg-default:#2E2E2E;--color-fg-muted:#2E2E2E;--color-fg-subtle:#595959;--color-canvas-default:#DCDCDC;--color-canvas-subtle:#DCDCDC;--color-border-default:#2E7D32;--color-border-muted:#66BB6A;--color-neutral-muted:#DCDCDC;--color-accent-fg:#66BB6A;--color-accent-emphasis:#66BB6A;--color-attention-subtle:#2E2E2E;--color-danger-fg:red;}.sketch-overlay-B1{fill:url(#streaks-dark-d2-586632521);mix-blend-mode:overlay}.sketch-overlay-B2{fill:url(#streaks-normal-d2-586632521);mix-blend-mode:color-burn}.sketch-overlay-B3{fill:url(#streaks-normal-d2-586632521);mix-blend-mode:color-burn}.sketch-overlay-B4{fill:url(#streaks-normal-d2-586632521);mix-blend-mode:color-burn}.sketch-overlay-B5{fill:url(#streaks-bright-d2-586632521);mix-blend-mode:darken}.sketch-overlay-B6{fill:url(#streaks-bright-d2-586632521);mix-blend-mode:darken}.sketch-overlay-AA2{fill:url(#streaks-darker-d2-586632521);mix-blend-mode:lighten}.sketch-overlay-AA4{fill:url(#streaks-normal-d2-586632521);mix-blend-mode:color-burn}.sketch-overlay-AA5{fill:url(#streaks-normal-d2-586632521);mix-blend-mode:color-burn}.sketch-overlay-AB4{fill:url(#streaks-dark-d2-586632521);mix-blend-mode:overlay}.sketch-overlay-AB5{fill:url(#streaks-normal-d2-586632521);mix-blend-mode:color-burn}.sketch-overlay-N1{fill:url(#streaks-darker-d2-586632521);mix-blend-mode:lighten}.sketch-overlay-N2{fill:url(#streaks-darker-d2-586632521);mix-blend-mode:lighten}.sketch-overlay-N3{fill:url(#streaks-dark-d2-586632521);mix-blend-mode:overlay}.sketch-overlay-N4{fill:url(#streaks-dark-d2-586632521);mix-blend-mode:overlay}.sketch-overlay-N5{fill:url(#streaks-normal-d2-586632521);mix-blend-mode:color-burn}.sketch-overlay-N6{fill:url(#streaks-normal-d2-586632521);mix-blend-mode:color-burn}.sketch-overlay-N7{fill:url(#streaks-normal-d2-586632521);mix-blend-mode:color-burn}.light-code{display: block}.dark-code{display: none}]]>logsUserNetworkAPI ServercostumesidintPKsillinessintmonsterintlast_updatedtimestampmonstersidintPKmoviestringweightintlast_updatedtimestampCell TowerData ProcessorOnline PortalsatellitestransmitterStorageUI phone logsMake callpersistdisplay access From 871978ca592b3e408baaeaf37592617237d6afb5 Mon Sep 17 00:00:00 2001 From: melsonic Date: Sat, 17 May 2025 11:40:59 +0530 Subject: [PATCH 6/6] updated compile multiple style method --- d2ast/keywords.go | 11 +++++++---- d2compiler/compile.go | 39 +++++++++++++++++++++++++++++++++++---- d2graph/d2graph.go | 28 +++++++++++++++++++--------- 3 files changed, 61 insertions(+), 17 deletions(-) diff --git a/d2ast/keywords.go b/d2ast/keywords.go index a7ece2ef5..65b35e0ae 100644 --- a/d2ast/keywords.go +++ b/d2ast/keywords.go @@ -64,10 +64,9 @@ var StyleKeywords = map[string]struct{}{ "text-transform": {}, // Only for shapes - "shadow": {}, - "multiple": {}, - "multiple.opacity": {}, - "double-border": {}, + "shadow": {}, + "multiple": {}, + "double-border": {}, // Only for squares "3d": {}, @@ -77,6 +76,10 @@ var StyleKeywords = map[string]struct{}{ "filled": {}, } +var CompositeStyleKeywords = map[string]string{ + "multiple": "opacity", +} + // TODO maybe autofmt should allow other values, and transform them to conform // e.g. left-center becomes center-left var NearConstantsArray = []string{ diff --git a/d2compiler/compile.go b/d2compiler/compile.go index 8c3599409..9de79d914 100644 --- a/d2compiler/compile.go +++ b/d2compiler/compile.go @@ -760,8 +760,7 @@ func (c *compiler) compileStyleField(styles *d2graph.Style, f *d2ir.Field) { fields := f.Map().Fields for i := 0; i < len(fields); i++ { field := fields[i] - field.Name.SetString(f.Name.ScalarString() + "." + field.Name.ScalarString()) - c.compileStyleField(styles, field) + c.compileCompositeStyle(styles, field, f.Name.ScalarString()) } } if f.Primary() == nil { @@ -776,6 +775,31 @@ func (c *compiler) compileStyleField(styles *d2graph.Style, f *d2ir.Field) { } } +func (c *compiler) compileCompositeStyle(styles *d2graph.Style, f *d2ir.Field, parent string) { + if _, ok := d2ast.CompositeStyleKeywords[strings.ToLower(parent)]; !(ok && f.Name.IsUnquoted()) { + c.errorf(f.LastRef().AST(), `invalid composite style keyword: "%s"`, f.Name.ScalarString()) + return + } + + allowedStyle := d2ast.CompositeStyleKeywords[strings.ToLower(parent)] + + if allowedStyle != strings.ToLower(f.Name.ScalarString()) { + c.errorf(f.LastRef().AST(), `invalid style "%s" for composite style keyword: "%s"`, f.Name.ScalarString(), parent) + } + + if f.Primary() == nil { + return + } + + compileCompositeStyleFieldInit(styles, f, parent) + scalar := f.Primary().Value + err := styles.ApplyComposite(f.Name.ScalarString(), scalar.ScalarString(), parent) + if err != nil { + c.errorf(scalar, err.Error()) + return + } +} + func compileStyleFieldInit(styles *d2graph.Style, f *d2ir.Field) { switch f.Name.ScalarString() { case "opacity": @@ -798,8 +822,6 @@ func compileStyleFieldInit(styles *d2graph.Style, f *d2ir.Field) { styles.ThreeDee = &d2graph.Scalar{MapKey: f.LastPrimaryKey()} case "multiple": styles.Multiple = &d2graph.Scalar{MapKey: f.LastPrimaryKey()} - case "multiple.opacity": - styles.MultipleOpacity = &d2graph.Scalar{MapKey: f.LastPrimaryKey()} case "font": styles.Font = &d2graph.Scalar{MapKey: f.LastPrimaryKey()} case "font-size": @@ -823,6 +845,15 @@ func compileStyleFieldInit(styles *d2graph.Style, f *d2ir.Field) { } } +func compileCompositeStyleFieldInit(styles *d2graph.Style, f *d2ir.Field, parent string) { + switch f.Name.ScalarString() { + case "opacity": + if parent == "multiple" { + styles.MultipleOpacity = &d2graph.Scalar{MapKey: f.LastPrimaryKey()} + } + } +} + func (c *compiler) compileEdge(obj *d2graph.Object, e *d2ir.Edge) { edge, err := obj.Connect(e.ID.SrcPath, e.ID.DstPath, e.ID.SrcArrow, e.ID.DstArrow, "") if err != nil { diff --git a/d2graph/d2graph.go b/d2graph/d2graph.go index f97769f4e..5d4d401c2 100644 --- a/d2graph/d2graph.go +++ b/d2graph/d2graph.go @@ -400,15 +400,6 @@ func (s *Style) Apply(key, value string) error { return errors.New(`expected "multiple" to be true or false`) } s.Multiple.Value = value - case "multiple.opacity": - if s.MultipleOpacity == nil { - break - } - f, err := strconv.ParseFloat(value, 64) - if err != nil || (f < 0 || f > 1) { - return errors.New(`expected "opacity" to be a number between 0.0 and 1.0`) - } - s.MultipleOpacity.Value = value case "font": if s.Font == nil { break @@ -503,6 +494,25 @@ func (s *Style) Apply(key, value string) error { return nil } +func (s *Style) ApplyComposite(key, value, parent string) error { + switch key { + case "opacity": + f, err := strconv.ParseFloat(value, 64) + if err != nil || (f < 0 || f > 1) { + return errors.New(`expected "opacity" to be a number between 0.0 and 1.0`) + } + if parent == "multiple" { + if s.MultipleOpacity == nil { + break + } + s.MultipleOpacity.Value = value + } + default: + return fmt.Errorf("unknown style key: %s", key) + } + return nil +} + type ContainerLevel int func (l ContainerLevel) LabelSize() int {