Merge pull request #702 from gavin-ts/shape-specific-inner-boxes

render: shape specific inner boxes
This commit is contained in:
gavin-ts 2023-02-03 15:49:34 -08:00 committed by GitHub
commit 40dd617b64
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
503 changed files with 21598 additions and 21332 deletions

View file

@ -2,6 +2,7 @@
- `double-border` keyword implemented. [#565](https://github.com/terrastruct/d2/pull/565) - `double-border` keyword implemented. [#565](https://github.com/terrastruct/d2/pull/565)
- The [Dockerfile](./docs/INSTALL.md#docker) now supports rendering PNGs [#594](https://github.com/terrastruct/d2/issues/594) - The [Dockerfile](./docs/INSTALL.md#docker) now supports rendering PNGs [#594](https://github.com/terrastruct/d2/issues/594)
- There was a minor breaking change as part of this where the default working directory of the Dockerfile is now `/home/debian/src` instead of `/root/src` to allow UID remapping with [`fixuid`](https://github.com/boxboat/fixuid). - There was a minor breaking change as part of this where the default working directory of the Dockerfile is now `/home/debian/src` instead of `/root/src` to allow UID remapping with [`fixuid`](https://github.com/boxboat/fixuid).
- `d2 fmt` accepts multiple files to be formatted [#718](https://github.com/terrastruct/d2/issues/718) - `d2 fmt` accepts multiple files to be formatted [#718](https://github.com/terrastruct/d2/issues/718)
@ -18,7 +19,15 @@
#### Improvements 🧹 #### Improvements 🧹
- Code snippets use bold and italic font styles as determined by highlighter [#710](https://github.com/terrastruct/d2/issues/710), [#741](https://github.com/terrastruct/d2/issues/741) - Code snippets use bold and italic font styles as determined by highlighter [#710](https://github.com/terrastruct/d2/issues/710), [#741](https://github.com/terrastruct/d2/issues/741)
- Reduces default padding of shapes. [#702](https://github.com/terrastruct/d2/pull/702)
- Ensures labels fit inside shapes with shape-specific inner bounding boxes. [#702](https://github.com/terrastruct/d2/pull/702)
- Improves package shape dimensions with short height. [#702](https://github.com/terrastruct/d2/pull/702)
- Keeps person shape from becoming too distorted. [#702](https://github.com/terrastruct/d2/pull/702)
- Ensures shapes with icons have enough padding for their labels. [#702](https://github.com/terrastruct/d2/pull/702)
#### Bugfixes ⛑️ #### Bugfixes ⛑️
- Fixes groups overlapping in sequence diagrams when they end in a self loop. [#728](https://github.com/terrastruct/d2/pull/728) - Fixes groups overlapping in sequence diagrams when they end in a self loop. [#728](https://github.com/terrastruct/d2/pull/728)
- Fixed dimensions of unlabeled squares or circles with only a set width or height. [#702](https://github.com/terrastruct/d2/pull/702)
- Fixed scaling of actor shapes in sequence diagrams. [#702](https://github.com/terrastruct/d2/pull/702)
- Images can now be set to sizes smaller than 128x128. [#702](https://github.com/terrastruct/d2/pull/702)

View file

@ -143,6 +143,7 @@ func toShape(obj *d2graph.Object, theme *d2themes.Theme) d2target.Shape {
} }
shape.Label = text.Text shape.Label = text.Text
shape.LabelWidth = text.Dimensions.Width shape.LabelWidth = text.Dimensions.Width
shape.LabelHeight = text.Dimensions.Height shape.LabelHeight = text.Dimensions.Height
if obj.LabelPosition != nil { if obj.LabelPosition != nil {
shape.LabelPosition = *obj.LabelPosition shape.LabelPosition = *obj.LabelPosition

View file

@ -19,11 +19,13 @@ import (
"oss.terrastruct.com/d2/d2target" "oss.terrastruct.com/d2/d2target"
"oss.terrastruct.com/d2/d2themes" "oss.terrastruct.com/d2/d2themes"
"oss.terrastruct.com/d2/lib/geo" "oss.terrastruct.com/d2/lib/geo"
"oss.terrastruct.com/d2/lib/shape"
"oss.terrastruct.com/d2/lib/textmeasure" "oss.terrastruct.com/d2/lib/textmeasure"
) )
const INNER_LABEL_PADDING int = 5 const INNER_LABEL_PADDING int = 5
const DEFAULT_SHAPE_PADDING = 100. const DEFAULT_SHAPE_SIZE = 100.
const MIN_SHAPE_SIZE = 5
type Graph struct { type Graph struct {
Name string `json:"name"` Name string `json:"name"`
@ -775,9 +777,14 @@ func (obj *Object) GetLabelSize(mtexts []*d2target.MText, ruler *textmeasure.Rul
return dims, nil return dims, nil
} }
func (obj *Object) GetDefaultSize(mtexts []*d2target.MText, ruler *textmeasure.Ruler, fontFamily *d2fonts.FontFamily, labelDims d2target.TextDimensions) (*d2target.TextDimensions, error) { func (obj *Object) GetDefaultSize(mtexts []*d2target.MText, ruler *textmeasure.Ruler, fontFamily *d2fonts.FontFamily, labelDims d2target.TextDimensions, withLabelPadding bool) (*d2target.TextDimensions, error) {
dims := d2target.TextDimensions{} dims := d2target.TextDimensions{}
if withLabelPadding {
labelDims.Width += INNER_LABEL_PADDING
labelDims.Height += INNER_LABEL_PADDING
}
switch strings.ToLower(obj.Attributes.Shape.Value) { switch strings.ToLower(obj.Attributes.Shape.Value) {
default: default:
return d2target.NewTextDimensions(labelDims.Width, labelDims.Height), nil return d2target.NewTextDimensions(labelDims.Width, labelDims.Height), nil
@ -793,22 +800,22 @@ func (obj *Object) GetDefaultSize(mtexts []*d2target.MText, ruler *textmeasure.R
if fdims == nil { if fdims == nil {
return nil, fmt.Errorf("dimensions for class field %#v not found", f.Text()) return nil, fmt.Errorf("dimensions for class field %#v not found", f.Text())
} }
lineWidth := fdims.Width maxWidth = go2.Max(maxWidth, fdims.Width)
if maxWidth < lineWidth {
maxWidth = lineWidth
}
} }
for _, m := range obj.Class.Methods { for _, m := range obj.Class.Methods {
mdims := GetTextDimensions(mtexts, ruler, m.Text(), go2.Pointer(d2fonts.SourceCodePro)) mdims := GetTextDimensions(mtexts, ruler, m.Text(), go2.Pointer(d2fonts.SourceCodePro))
if mdims == nil { if mdims == nil {
return nil, fmt.Errorf("dimensions for class method %#v not found", m.Text()) return nil, fmt.Errorf("dimensions for class method %#v not found", m.Text())
} }
lineWidth := mdims.Width maxWidth = go2.Max(maxWidth, mdims.Width)
if maxWidth < lineWidth {
maxWidth = lineWidth
} }
} // ┌─PrefixWidth ┌─CenterPadding
dims.Width = maxWidth // ┌─┬─┬───────┬──────┬───┬──┐
// │ + getJobs() Job[] │
// └─┴─┴───────┴──────┴───┴──┘
// └─PrefixPadding └──TypePadding
// ├───────┤ + ├───┤ = maxWidth
dims.Width = d2target.PrefixPadding + d2target.PrefixWidth + maxWidth + d2target.CenterPadding + d2target.TypePadding
// All rows should be the same height // All rows should be the same height
var anyRowText *d2target.MText var anyRowText *d2target.MText
@ -818,8 +825,7 @@ func (obj *Object) GetDefaultSize(mtexts []*d2target.MText, ruler *textmeasure.R
anyRowText = obj.Class.Methods[0].Text() anyRowText = obj.Class.Methods[0].Text()
} }
if anyRowText != nil { if anyRowText != nil {
// 10px of padding top and bottom so text doesn't look squished rowHeight := GetTextDimensions(mtexts, ruler, anyRowText, go2.Pointer(d2fonts.SourceCodePro)).Height + d2target.VerticalPadding
rowHeight := GetTextDimensions(mtexts, ruler, anyRowText, go2.Pointer(d2fonts.SourceCodePro)).Height + 20
dims.Height = rowHeight * (len(obj.Class.Fields) + len(obj.Class.Methods) + 2) dims.Height = rowHeight * (len(obj.Class.Fields) + len(obj.Class.Methods) + 2)
} else { } else {
dims.Height = go2.Max(12, labelDims.Height) dims.Height = go2.Max(12, labelDims.Height)
@ -841,9 +847,7 @@ func (obj *Object) GetDefaultSize(mtexts []*d2target.MText, ruler *textmeasure.R
} }
c.Name.LabelWidth = nameDims.Width c.Name.LabelWidth = nameDims.Width
c.Name.LabelHeight = nameDims.Height c.Name.LabelHeight = nameDims.Height
if maxNameWidth < nameDims.Width { maxNameWidth = go2.Max(maxNameWidth, nameDims.Width)
maxNameWidth = nameDims.Width
}
typeDims := GetTextDimensions(mtexts, ruler, ctexts[1], fontFamily) typeDims := GetTextDimensions(mtexts, ruler, ctexts[1], fontFamily)
if typeDims == nil { if typeDims == nil {
@ -854,6 +858,7 @@ func (obj *Object) GetDefaultSize(mtexts []*d2target.MText, ruler *textmeasure.R
if maxTypeWidth < typeDims.Width { if maxTypeWidth < typeDims.Width {
maxTypeWidth = typeDims.Width maxTypeWidth = typeDims.Width
} }
maxTypeWidth = go2.Max(maxTypeWidth, typeDims.Width)
if c.Constraint != "" { if c.Constraint != "" {
// covers UNQ constraint with padding // covers UNQ constraint with padding
@ -871,21 +876,6 @@ func (obj *Object) GetDefaultSize(mtexts []*d2target.MText, ruler *textmeasure.R
return &dims, nil return &dims, nil
} }
func (obj *Object) GetPadding() (x, y float64) {
switch strings.ToLower(obj.Attributes.Shape.Value) {
case d2target.ShapeImage,
d2target.ShapeSQLTable,
d2target.ShapeText,
d2target.ShapeCode:
return 0., 0.
case d2target.ShapeClass:
// TODO fix class row width measurements (see SQL table)
return 100., 0.
default:
return DEFAULT_SHAPE_PADDING, DEFAULT_SHAPE_PADDING
}
}
type Edge struct { type Edge struct {
Index int `json:"index"` Index int `json:"index"`
@ -1181,29 +1171,41 @@ func (g *Graph) SetDimensions(mtexts []*d2target.MText, ruler *textmeasure.Ruler
desiredHeight, _ = strconv.Atoi(obj.Attributes.Height.Value) desiredHeight, _ = strconv.Atoi(obj.Attributes.Height.Value)
} }
dslShape := strings.ToLower(obj.Attributes.Shape.Value)
if obj.Attributes.Label.Value == "" && if obj.Attributes.Label.Value == "" &&
obj.Attributes.Shape.Value != d2target.ShapeImage && dslShape != d2target.ShapeImage &&
obj.Attributes.Shape.Value != d2target.ShapeSQLTable && dslShape != d2target.ShapeSQLTable &&
obj.Attributes.Shape.Value != d2target.ShapeClass { dslShape != d2target.ShapeClass {
obj.Width = DEFAULT_SHAPE_PADDING
obj.Height = DEFAULT_SHAPE_PADDING if dslShape == d2target.ShapeCircle || dslShape == d2target.ShapeSquare {
sideLength := DEFAULT_SHAPE_SIZE
if desiredWidth != 0 || desiredHeight != 0 {
sideLength = float64(go2.Max(desiredWidth, desiredHeight))
}
obj.Width = sideLength
obj.Height = sideLength
} else {
obj.Width = DEFAULT_SHAPE_SIZE
obj.Height = DEFAULT_SHAPE_SIZE
if desiredWidth != 0 { if desiredWidth != 0 {
obj.Width = float64(desiredWidth) obj.Width = float64(desiredWidth)
} }
if desiredHeight != 0 { if desiredHeight != 0 {
obj.Height = float64(desiredHeight) obj.Height = float64(desiredHeight)
} }
continue
} }
shapeType := strings.ToLower(obj.Attributes.Shape.Value) continue
}
labelDims, err := obj.GetLabelSize(mtexts, ruler, fontFamily) labelDims, err := obj.GetLabelSize(mtexts, ruler, fontFamily)
if err != nil { if err != nil {
return err return err
} }
obj.LabelDimensions = *labelDims
switch shapeType { switch dslShape {
case d2target.ShapeText, d2target.ShapeClass, d2target.ShapeSQLTable, d2target.ShapeCode: case d2target.ShapeText, d2target.ShapeClass, d2target.ShapeSQLTable, d2target.ShapeCode:
// no labels // no labels
default: default:
@ -1213,39 +1215,65 @@ func (g *Graph) SetDimensions(mtexts []*d2target.MText, ruler *textmeasure.Ruler
} }
} }
if shapeType != d2target.ShapeText && obj.Attributes.Label.Value != "" { // if there is a desired width or height, fit to content box without inner label padding for smallest minimum size
labelDims.Width += INNER_LABEL_PADDING withInnerLabelPadding := desiredWidth == 0 && desiredHeight == 0 &&
labelDims.Height += INNER_LABEL_PADDING dslShape != d2target.ShapeText && obj.Attributes.Label.Value != ""
} defaultDims, err := obj.GetDefaultSize(mtexts, ruler, fontFamily, *labelDims, withInnerLabelPadding)
obj.LabelDimensions = *labelDims
defaultDims, err := obj.GetDefaultSize(mtexts, ruler, fontFamily, *labelDims)
if err != nil { if err != nil {
return err return err
} }
obj.Width = float64(go2.Max(defaultDims.Width, desiredWidth)) if dslShape == d2target.ShapeImage {
obj.Height = float64(go2.Max(defaultDims.Height, desiredHeight)) if desiredWidth == 0 {
desiredWidth = defaultDims.Width
}
if desiredHeight == 0 {
desiredHeight = defaultDims.Height
}
obj.Width = float64(go2.Max(MIN_SHAPE_SIZE, desiredWidth))
obj.Height = float64(go2.Max(MIN_SHAPE_SIZE, desiredHeight))
// images don't need further processing
continue
}
paddingX, paddingY := obj.GetPadding() contentBox := geo.NewBox(geo.NewPoint(0, 0), float64(defaultDims.Width), float64(defaultDims.Height))
shapeType := d2target.DSL_SHAPE_TO_SHAPE_TYPE[dslShape]
s := shape.NewShape(shapeType, contentBox)
switch shapeType { paddingX, paddingY := s.GetDefaultPadding()
case d2target.ShapeSquare, d2target.ShapeCircle:
if desiredWidth != 0 || desiredHeight != 0 { if desiredWidth != 0 || desiredHeight != 0 {
paddingX = 0. paddingX = 0.
paddingY = 0. paddingY = 0.
} else {
// give shapes with icons extra padding to fit their label
if obj.Attributes.Icon != nil {
labelHeight := float64(labelDims.Height + INNER_LABEL_PADDING)
// Evenly pad enough to fit label above icon
paddingX += labelHeight
paddingY += labelHeight
}
switch shapeType {
case shape.TABLE_TYPE, shape.CLASS_TYPE, shape.CODE_TYPE, shape.IMAGE_TYPE:
default:
if obj.Attributes.Link != "" {
paddingX += 32
}
if obj.Attributes.Tooltip != "" {
paddingX += 32
}
}
} }
sideLength := math.Max(obj.Width+paddingX, obj.Height+paddingY) fitWidth, fitHeight := s.GetDimensionsToFit(contentBox.Width, contentBox.Height, paddingX, paddingY)
obj.Width = math.Max(float64(desiredWidth), fitWidth)
obj.Height = math.Max(float64(desiredHeight), fitHeight)
if s.AspectRatio1() {
sideLength := math.Max(obj.Width, obj.Height)
obj.Width = sideLength obj.Width = sideLength
obj.Height = sideLength obj.Height = sideLength
} else if desiredHeight == 0 || desiredWidth == 0 {
default: if s.GetType() == shape.PERSON_TYPE {
if desiredWidth == 0 { obj.Width, obj.Height = shape.LimitAR(obj.Width, obj.Height, shape.PERSON_AR_LIMIT)
obj.Width += float64(paddingX)
}
if desiredHeight == 0 {
obj.Height += float64(paddingY)
} }
} }
} }

View file

@ -105,6 +105,12 @@ func newSequenceDiagram(objects []*d2graph.Object, messages []*d2graph.Edge) *se
sd.objectRank[actor] = rank sd.objectRank[actor] = rank
if actor.Width < MIN_ACTOR_WIDTH { if actor.Width < MIN_ACTOR_WIDTH {
dslShape := strings.ToLower(actor.Attributes.Shape.Value)
switch dslShape {
case d2target.ShapePerson, d2target.ShapeSquare, d2target.ShapeCircle:
// scale shape up to min width uniformly
actor.Height *= MIN_ACTOR_WIDTH / actor.Width
}
actor.Width = MIN_ACTOR_WIDTH actor.Width = MIN_ACTOR_WIDTH
} }
sd.maxActorHeight = math.Max(sd.maxActorHeight, actor.Height) sd.maxActorHeight = math.Max(sd.maxActorHeight, actor.Height)

File diff suppressed because one or more lines are too long

Before

Width:  |  Height:  |  Size: 271 KiB

After

Width:  |  Height:  |  Size: 267 KiB

File diff suppressed because one or more lines are too long

Before

Width:  |  Height:  |  Size: 253 KiB

After

Width:  |  Height:  |  Size: 253 KiB

File diff suppressed because one or more lines are too long

Before

Width:  |  Height:  |  Size: 304 KiB

After

Width:  |  Height:  |  Size: 303 KiB

File diff suppressed because one or more lines are too long

Before

Width:  |  Height:  |  Size: 196 KiB

After

Width:  |  Height:  |  Size: 196 KiB

File diff suppressed because one or more lines are too long

Before

Width:  |  Height:  |  Size: 248 KiB

After

Width:  |  Height:  |  Size: 248 KiB

File diff suppressed because one or more lines are too long

Before

Width:  |  Height:  |  Size: 196 KiB

After

Width:  |  Height:  |  Size: 196 KiB

File diff suppressed because one or more lines are too long

Before

Width:  |  Height:  |  Size: 246 KiB

After

Width:  |  Height:  |  Size: 246 KiB

File diff suppressed because one or more lines are too long

Before

Width:  |  Height:  |  Size: 310 KiB

After

Width:  |  Height:  |  Size: 309 KiB

File diff suppressed because one or more lines are too long

Before

Width:  |  Height:  |  Size: 84 KiB

After

Width:  |  Height:  |  Size: 84 KiB

File diff suppressed because one or more lines are too long

Before

Width:  |  Height:  |  Size: 388 KiB

After

Width:  |  Height:  |  Size: 387 KiB

File diff suppressed because one or more lines are too long

Before

Width:  |  Height:  |  Size: 803 KiB

After

Width:  |  Height:  |  Size: 803 KiB

File diff suppressed because one or more lines are too long

Before

Width:  |  Height:  |  Size: 651 KiB

After

Width:  |  Height:  |  Size: 651 KiB

File diff suppressed because one or more lines are too long

Before

Width:  |  Height:  |  Size: 650 KiB

After

Width:  |  Height:  |  Size: 650 KiB

View file

@ -42,7 +42,7 @@ const (
appendixIconRadius = 16 appendixIconRadius = 16
) )
var multipleOffset = geo.NewVector(10, -10) var multipleOffset = geo.NewVector(d2target.MULTIPLE_OFFSET, -d2target.MULTIPLE_OFFSET)
//go:embed tooltip.svg //go:embed tooltip.svg
var TooltipIcon string var TooltipIcon string
@ -734,7 +734,7 @@ func drawShape(writer io.Writer, targetShape d2target.Shape, sketchRunner *d2ske
var multipleTL *geo.Point var multipleTL *geo.Point
if targetShape.Multiple { if targetShape.Multiple {
multipleTL = tl.AddVector(geo.NewVector(d2target.MULTIPLE_OFFSET, -d2target.MULTIPLE_OFFSET)) multipleTL = tl.AddVector(multipleOffset)
} }
switch targetShape.Type { switch targetShape.Type {
@ -744,13 +744,13 @@ func drawShape(writer io.Writer, targetShape d2target.Shape, sketchRunner *d2ske
if err != nil { if err != nil {
return "", err return "", err
} }
fmt.Fprintf(writer, out) fmt.Fprint(writer, out)
} else { } else {
drawClass(writer, targetShape) drawClass(writer, targetShape)
} }
addAppendixItems(writer, targetShape) addAppendixItems(writer, targetShape)
fmt.Fprintf(writer, `</g>`) fmt.Fprint(writer, `</g>`)
fmt.Fprintf(writer, closingTag) fmt.Fprint(writer, closingTag)
return labelMask, nil return labelMask, nil
case d2target.ShapeSQLTable: case d2target.ShapeSQLTable:
if sketchRunner != nil { if sketchRunner != nil {
@ -758,13 +758,13 @@ func drawShape(writer io.Writer, targetShape d2target.Shape, sketchRunner *d2ske
if err != nil { if err != nil {
return "", err return "", err
} }
fmt.Fprintf(writer, out) fmt.Fprint(writer, out)
} else { } else {
drawTable(writer, targetShape) drawTable(writer, targetShape)
} }
addAppendixItems(writer, targetShape) addAppendixItems(writer, targetShape)
fmt.Fprintf(writer, `</g>`) fmt.Fprint(writer, `</g>`)
fmt.Fprintf(writer, closingTag) fmt.Fprint(writer, closingTag)
return labelMask, nil return labelMask, nil
case d2target.ShapeOval: case d2target.ShapeOval:
if targetShape.DoubleBorder { if targetShape.DoubleBorder {
@ -776,7 +776,7 @@ func drawShape(writer io.Writer, targetShape d2target.Shape, sketchRunner *d2ske
if err != nil { if err != nil {
return "", err return "", err
} }
fmt.Fprintf(writer, out) fmt.Fprint(writer, out)
} else { } else {
fmt.Fprint(writer, renderDoubleOval(tl, width, height, style)) fmt.Fprint(writer, renderDoubleOval(tl, width, height, style))
} }
@ -789,7 +789,7 @@ func drawShape(writer io.Writer, targetShape d2target.Shape, sketchRunner *d2ske
if err != nil { if err != nil {
return "", err return "", err
} }
fmt.Fprintf(writer, out) fmt.Fprint(writer, out)
} else { } else {
fmt.Fprint(writer, renderOval(tl, width, height, style)) fmt.Fprint(writer, renderOval(tl, width, height, style))
} }
@ -815,7 +815,7 @@ func drawShape(writer io.Writer, targetShape d2target.Shape, sketchRunner *d2ske
if err != nil { if err != nil {
return "", err return "", err
} }
fmt.Fprintf(writer, out) fmt.Fprint(writer, out)
} else { } else {
fmt.Fprintf(writer, `<rect x="%d" y="%d" width="%d" height="%d" style="%s" />`, fmt.Fprintf(writer, `<rect x="%d" y="%d" width="%d" height="%d" style="%s" />`,
targetShape.Pos.X, targetShape.Pos.Y, targetShape.Width, targetShape.Height, style) targetShape.Pos.X, targetShape.Pos.Y, targetShape.Width, targetShape.Height, style)
@ -832,7 +832,7 @@ func drawShape(writer io.Writer, targetShape d2target.Shape, sketchRunner *d2ske
if err != nil { if err != nil {
return "", err return "", err
} }
fmt.Fprintf(writer, out) fmt.Fprint(writer, out)
} else { } else {
fmt.Fprintf(writer, `<rect x="%d" y="%d" width="%d" height="%d" style="%s" />`, fmt.Fprintf(writer, `<rect x="%d" y="%d" width="%d" height="%d" style="%s" />`,
targetShape.Pos.X, targetShape.Pos.Y, targetShape.Width, targetShape.Height, style) targetShape.Pos.X, targetShape.Pos.Y, targetShape.Width, targetShape.Height, style)
@ -855,7 +855,7 @@ func drawShape(writer io.Writer, targetShape d2target.Shape, sketchRunner *d2ske
if err != nil { if err != nil {
return "", err return "", err
} }
fmt.Fprintf(writer, out) fmt.Fprint(writer, out)
} else { } else {
for _, pathData := range s.GetSVGPathData() { for _, pathData := range s.GetSVGPathData() {
fmt.Fprintf(writer, `<path d="%s" style="%s"/>`, pathData, style) fmt.Fprintf(writer, `<path d="%s" style="%s"/>`, pathData, style)
@ -864,7 +864,7 @@ func drawShape(writer io.Writer, targetShape d2target.Shape, sketchRunner *d2ske
} }
// Closes the class=shape // Closes the class=shape
fmt.Fprintf(writer, `</g>`) fmt.Fprint(writer, `</g>`)
if targetShape.Icon != nil && targetShape.Type != d2target.ShapeImage { if targetShape.Icon != nil && targetShape.Type != d2target.ShapeImage {
iconPosition := label.Position(targetShape.IconPosition) iconPosition := label.Position(targetShape.IconPosition)
@ -895,7 +895,10 @@ func drawShape(writer io.Writer, targetShape d2target.Shape, sketchRunner *d2ske
} else { } else {
box = s.GetInnerBox() box = s.GetInnerBox()
} }
labelTL := labelPosition.GetPointOnBox(box, label.PADDING, float64(targetShape.LabelWidth), float64(targetShape.LabelHeight)) labelTL := labelPosition.GetPointOnBox(box, label.PADDING,
float64(targetShape.LabelWidth),
float64(targetShape.LabelHeight),
)
fontClass := "text" fontClass := "text"
if targetShape.Bold { if targetShape.Bold {
@ -932,7 +935,7 @@ func drawShape(writer io.Writer, targetShape d2target.Shape, sketchRunner *d2ske
fmt.Fprintf(writer, `<rect class="shape" width="%d" height="%d" style="%s" />`, fmt.Fprintf(writer, `<rect class="shape" width="%d" height="%d" style="%s" />`,
targetShape.Width, targetShape.Height, containerStyle) targetShape.Width, targetShape.Height, containerStyle)
// Padding // Padding
fmt.Fprintf(writer, `<g transform="translate(6 6)">`) fmt.Fprint(writer, `<g transform="translate(6 6)">`)
for index, tokens := range chroma.SplitTokensIntoLines(iterator.Tokens()) { for index, tokens := range chroma.SplitTokensIntoLines(iterator.Tokens()) {
// TODO mono font looks better with 1.2 em (use px equivalent), but textmeasure needs to account for it. Not obvious how that should be done // TODO mono font looks better with 1.2 em (use px equivalent), but textmeasure needs to account for it. Not obvious how that should be done
@ -947,7 +950,7 @@ func drawShape(writer io.Writer, targetShape d2target.Shape, sketchRunner *d2ske
} }
fmt.Fprint(writer, "</text>") fmt.Fprint(writer, "</text>")
} }
fmt.Fprintf(writer, "</g></g>") fmt.Fprint(writer, "</g></g>")
} else if targetShape.Type == d2target.ShapeText && targetShape.Language == "latex" { } else if targetShape.Type == d2target.ShapeText && targetShape.Language == "latex" {
render, err := d2latex.Render(targetShape.Label) render, err := d2latex.Render(targetShape.Label)
if err != nil { if err != nil {
@ -955,7 +958,7 @@ func drawShape(writer io.Writer, targetShape d2target.Shape, sketchRunner *d2ske
} }
fmt.Fprintf(writer, `<g transform="translate(%f %f)">`, box.TopLeft.X, box.TopLeft.Y) fmt.Fprintf(writer, `<g transform="translate(%f %f)">`, box.TopLeft.X, box.TopLeft.Y)
fmt.Fprint(writer, render) fmt.Fprint(writer, render)
fmt.Fprintf(writer, "</g>") fmt.Fprint(writer, "</g>")
} else if targetShape.Type == d2target.ShapeText && targetShape.Language != "" { } else if targetShape.Type == d2target.ShapeText && targetShape.Language != "" {
render, err := textmeasure.RenderMarkdown(targetShape.Label) render, err := textmeasure.RenderMarkdown(targetShape.Label)
if err != nil { if err != nil {
@ -1000,7 +1003,7 @@ func drawShape(writer io.Writer, targetShape d2target.Shape, sketchRunner *d2ske
addAppendixItems(writer, targetShape) addAppendixItems(writer, targetShape)
fmt.Fprintf(writer, closingTag) fmt.Fprint(writer, closingTag)
return labelMask, nil return labelMask, nil
} }
@ -1268,7 +1271,7 @@ func Render(diagram *d2target.Diagram, opts *RenderOpts) ([]byte, error) {
fmt.Fprintf(buf, `<style type="text/css">%s</style>`, mdCSS) fmt.Fprintf(buf, `<style type="text/css">%s</style>`, mdCSS)
} }
if sketchRunner != nil { if sketchRunner != nil {
fmt.Fprintf(buf, d2sketch.DefineFillPattern()) fmt.Fprint(buf, d2sketch.DefineFillPattern())
} }
// only define shadow filter if a shape uses it // only define shadow filter if a shape uses it

View file

@ -9,6 +9,9 @@ import (
const ( const (
PrefixPadding = 10 PrefixPadding = 10
PrefixWidth = 20 PrefixWidth = 20
CenterPadding = 50
// 10px of padding top and bottom so text doesn't look squished
VerticalPadding = 20
) )
type Class struct { type Class struct {

View file

@ -551,19 +551,19 @@ func (s *Shape) GetIconSize(box *geo.Box) int {
if iconPosition == label.InsideMiddleCenter { if iconPosition == label.InsideMiddleCenter {
size = halfMinDimension size = halfMinDimension
} else { } else {
size = go2.IntMin( size = go2.Min(
minDimension, minDimension,
go2.IntMax(DEFAULT_ICON_SIZE, halfMinDimension), go2.Max(DEFAULT_ICON_SIZE, halfMinDimension),
) )
} }
size = go2.IntMin(size, MAX_ICON_SIZE) size = go2.Min(size, MAX_ICON_SIZE)
if !iconPosition.IsOutside() { if !iconPosition.IsOutside() {
size = go2.IntMin(size, size = go2.Min(size,
go2.IntMin( go2.Min(
go2.IntMax(int(box.Width)-2*label.PADDING, 0), go2.Max(int(box.Width)-2*label.PADDING, 0),
go2.IntMax(int(box.Height)-2*label.PADDING, 0), go2.Max(int(box.Height)-2*label.PADDING, 0),
), ),
) )
} }

View file

@ -444,27 +444,6 @@ group 11: {
} }
b -> c b -> c
`,
},
{
name: "sequence_diagram_ambiguous_edge_group",
script: `
Office chatter: {
shape: sequence_diagram
alice: Alice
bob: Bobby
awkward small talk: {
awkward small talk.ok
alice -> bob: uhm, hi
bob -> alice: oh, hello
icebreaker attempt: {
alice -> bob: what did you have for lunch?
}
unfortunate outcome: {
bob -> alice: that's personal
}
}
}
`, `,
}, },
} }

View file

@ -1875,6 +1875,41 @@ b: B
a.sp1 -> b: foo a.sp1 -> b: foo
a.sp1 -> a.sp2: redirect a.sp1 -> a.sp2: redirect
a.sp2 -> b: bar a.sp2 -> b: bar
`,
},
{
name: "people",
script: `
a.shape: person
b.shape: person
c.shape: person
d.shape: person
e.shape: person
f.shape: person
g.shape: person
a: -
b: --
c: ----
d: --------
e: ----------------
f: --------------------------------
g: ----------------------------------------------------------------
1.shape: person
2.shape: person
3.shape: person
4.shape: person
5.shape: person
1.width: 16
2.width: 64
3.width: 128
4.width: 512
# entering both width and height overrides aspect ratio limit
5.height: 256
5.width: 32
`, `,
}, },
{ {

View file

@ -37,8 +37,8 @@
"italic": false, "italic": false,
"bold": true, "bold": true,
"underline": false, "underline": false,
"labelWidth": 239, "labelWidth": 234,
"labelHeight": 150, "labelHeight": 145,
"zIndex": 0, "zIndex": 0,
"level": 1 "level": 1
}, },
@ -77,8 +77,8 @@
"italic": false, "italic": false,
"bold": true, "bold": true,
"underline": false, "underline": false,
"labelWidth": 160, "labelWidth": 155,
"labelHeight": 118, "labelHeight": 113,
"zIndex": 0, "zIndex": 0,
"level": 1 "level": 1
}, },
@ -117,8 +117,8 @@
"italic": false, "italic": false,
"bold": true, "bold": true,
"underline": false, "underline": false,
"labelWidth": 160, "labelWidth": 155,
"labelHeight": 118, "labelHeight": 113,
"zIndex": 0, "zIndex": 0,
"level": 1 "level": 1
} }

View file

@ -56,7 +56,7 @@ width="883" height="354" viewBox="-102 -102 883 354"><style type="text/css">
</text><text class="text-mono" x="0" y="3.000000em" xml:space="preserve"> </text><text class="text-mono" x="0" y="3.000000em" xml:space="preserve">
</text><text class="text-mono" x="0" y="4.000000em" xml:space="preserve">&#160;&#160;<tspan fill="#0086b3">print</tspan>&#160;<tspan fill="#dd1144"></tspan><tspan fill="#dd1144">&quot;</tspan><tspan fill="#dd1144">world</tspan><tspan fill="#dd1144">&quot;</tspan> </text><text class="text-mono" x="0" y="4.000000em" xml:space="preserve">&#160;&#160;<tspan fill="#0086b3">print</tspan>&#160;<tspan fill="#dd1144"></tspan><tspan fill="#dd1144">&quot;</tspan><tspan fill="#dd1144">world</tspan><tspan fill="#dd1144">&quot;</tspan>
</text><text class="text-mono" x="0" y="5.000000em" xml:space="preserve"> </text><text class="text-mono" x="0" y="5.000000em" xml:space="preserve">
</text></g></g></g><mask id="2229987818" maskUnits="userSpaceOnUse" x="-100" y="-100" width="883" height="354"> </text></g></g></g><mask id="2314789821" maskUnits="userSpaceOnUse" x="-100" y="-100" width="883" height="354">
<rect x="-100" y="-100" width="883" height="354" fill="white"></rect> <rect x="-100" y="-100" width="883" height="354" fill="white"></rect>
</mask><style type="text/css"><![CDATA[ </mask><style type="text/css"><![CDATA[

Before

Width:  |  Height:  |  Size: 350 KiB

After

Width:  |  Height:  |  Size: 350 KiB

View file

@ -37,8 +37,8 @@
"italic": false, "italic": false,
"bold": true, "bold": true,
"underline": false, "underline": false,
"labelWidth": 239, "labelWidth": 234,
"labelHeight": 150, "labelHeight": 145,
"zIndex": 0, "zIndex": 0,
"level": 1 "level": 1
}, },
@ -77,8 +77,8 @@
"italic": false, "italic": false,
"bold": true, "bold": true,
"underline": false, "underline": false,
"labelWidth": 160, "labelWidth": 155,
"labelHeight": 118, "labelHeight": 113,
"zIndex": 0, "zIndex": 0,
"level": 1 "level": 1
}, },
@ -117,8 +117,8 @@
"italic": false, "italic": false,
"bold": true, "bold": true,
"underline": false, "underline": false,
"labelWidth": 160, "labelWidth": 155,
"labelHeight": 118, "labelHeight": 113,
"zIndex": 0, "zIndex": 0,
"level": 1 "level": 1
} }

View file

@ -56,7 +56,7 @@ width="803" height="354" viewBox="-90 -90 803 354"><style type="text/css">
</text><text class="text-mono" x="0" y="3.000000em" xml:space="preserve"> </text><text class="text-mono" x="0" y="3.000000em" xml:space="preserve">
</text><text class="text-mono" x="0" y="4.000000em" xml:space="preserve">&#160;&#160;<tspan fill="#0086b3">print</tspan>&#160;<tspan fill="#dd1144"></tspan><tspan fill="#dd1144">&quot;</tspan><tspan fill="#dd1144">world</tspan><tspan fill="#dd1144">&quot;</tspan> </text><text class="text-mono" x="0" y="4.000000em" xml:space="preserve">&#160;&#160;<tspan fill="#0086b3">print</tspan>&#160;<tspan fill="#dd1144"></tspan><tspan fill="#dd1144">&quot;</tspan><tspan fill="#dd1144">world</tspan><tspan fill="#dd1144">&quot;</tspan>
</text><text class="text-mono" x="0" y="5.000000em" xml:space="preserve"> </text><text class="text-mono" x="0" y="5.000000em" xml:space="preserve">
</text></g></g></g><mask id="3995090615" maskUnits="userSpaceOnUse" x="-100" y="-100" width="803" height="354"> </text></g></g></g><mask id="2399438644" maskUnits="userSpaceOnUse" x="-100" y="-100" width="803" height="354">
<rect x="-100" y="-100" width="803" height="354" fill="white"></rect> <rect x="-100" y="-100" width="803" height="354" fill="white"></rect>
</mask><style type="text/css"><![CDATA[ </mask><style type="text/css"><![CDATA[

Before

Width:  |  Height:  |  Size: 350 KiB

After

Width:  |  Height:  |  Size: 350 KiB

View file

@ -9,8 +9,8 @@
"x": 0, "x": 0,
"y": 0 "y": 0
}, },
"width": 571, "width": 425,
"height": 648, "height": 528,
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
"strokeWidth": 2, "strokeWidth": 2,
@ -37,8 +37,8 @@
"italic": false, "italic": false,
"bold": false, "bold": false,
"underline": false, "underline": false,
"labelWidth": 17, "labelWidth": 12,
"labelHeight": 41, "labelHeight": 36,
"labelPosition": "INSIDE_TOP_CENTER", "labelPosition": "INSIDE_TOP_CENTER",
"zIndex": 0, "zIndex": 0,
"level": 1 "level": 1
@ -47,11 +47,11 @@
"id": "a.b", "id": "a.b",
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 64, "x": 94,
"y": 55 "y": 55
}, },
"width": 113, "width": 53,
"height": 126, "height": 66,
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
"strokeWidth": 2, "strokeWidth": 2,
@ -78,8 +78,8 @@
"italic": false, "italic": false,
"bold": true, "bold": true,
"underline": false, "underline": false,
"labelWidth": 13, "labelWidth": 8,
"labelHeight": 26, "labelHeight": 21,
"labelPosition": "INSIDE_MIDDLE_CENTER", "labelPosition": "INSIDE_MIDDLE_CENTER",
"zIndex": 0, "zIndex": 0,
"level": 2 "level": 2
@ -89,10 +89,10 @@
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 40, "x": 40,
"y": 359 "y": 299
}, },
"width": 478, "width": 345,
"height": 235, "height": 175,
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
"strokeWidth": 2, "strokeWidth": 2,
@ -119,8 +119,8 @@
"italic": false, "italic": false,
"bold": false, "bold": false,
"underline": false, "underline": false,
"labelWidth": 15, "labelWidth": 10,
"labelHeight": 36, "labelHeight": 31,
"labelPosition": "INSIDE_TOP_CENTER", "labelPosition": "INSIDE_TOP_CENTER",
"zIndex": 0, "zIndex": 0,
"level": 2 "level": 2
@ -129,11 +129,11 @@
"id": "a.1", "id": "a.1",
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 237, "x": 207,
"y": 55 "y": 55
}, },
"width": 112, "width": 52,
"height": 126, "height": 66,
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
"strokeWidth": 2, "strokeWidth": 2,
@ -160,8 +160,8 @@
"italic": false, "italic": false,
"bold": true, "bold": true,
"underline": false, "underline": false,
"labelWidth": 12, "labelWidth": 7,
"labelHeight": 26, "labelHeight": 21,
"labelPosition": "INSIDE_MIDDLE_CENTER", "labelPosition": "INSIDE_MIDDLE_CENTER",
"zIndex": 0, "zIndex": 0,
"level": 2 "level": 2
@ -170,11 +170,11 @@
"id": "a.2", "id": "a.2",
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 409, "x": 319,
"y": 55 "y": 55
}, },
"width": 113, "width": 53,
"height": 126, "height": 66,
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
"strokeWidth": 2, "strokeWidth": 2,
@ -201,8 +201,8 @@
"italic": false, "italic": false,
"bold": true, "bold": true,
"underline": false, "underline": false,
"labelWidth": 13, "labelWidth": 8,
"labelHeight": 26, "labelHeight": 21,
"labelPosition": "INSIDE_MIDDLE_CENTER", "labelPosition": "INSIDE_MIDDLE_CENTER",
"zIndex": 0, "zIndex": 0,
"level": 2 "level": 2
@ -211,11 +211,11 @@
"id": "a.c.d", "id": "a.c.d",
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 236, "x": 206,
"y": 413 "y": 353
}, },
"width": 114, "width": 54,
"height": 126, "height": 66,
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
"strokeWidth": 2, "strokeWidth": 2,
@ -242,8 +242,8 @@
"italic": false, "italic": false,
"bold": true, "bold": true,
"underline": false, "underline": false,
"labelWidth": 14, "labelWidth": 9,
"labelHeight": 26, "labelHeight": 21,
"labelPosition": "INSIDE_MIDDLE_CENTER", "labelPosition": "INSIDE_MIDDLE_CENTER",
"zIndex": 0, "zIndex": 0,
"level": 3 "level": 3
@ -277,19 +277,19 @@
"route": [ "route": [
{ {
"x": 120, "x": 120,
"y": 181.5 "y": 121.5
}, },
{ {
"x": 120, "x": 120,
"y": 251.9 "y": 191.9
}, },
{ {
"x": 120, "x": 120,
"y": 287.5 "y": 227.5
}, },
{ {
"x": 120, "x": 120,
"y": 359.5 "y": 299.5
} }
], ],
"isCurve": true, "isCurve": true,
@ -324,20 +324,20 @@
"labelPercentage": 0, "labelPercentage": 0,
"route": [ "route": [
{ {
"x": 292.5, "x": 232.5,
"y": 181.5 "y": 121.5
}, },
{ {
"x": 292.5, "x": 232.5,
"y": 251.9 "y": 191.9
}, },
{ {
"x": 292.5, "x": 232.5,
"y": 287.5 "y": 227.5
}, },
{ {
"x": 292.5, "x": 232.5,
"y": 359.5 "y": 299.5
} }
], ],
"isCurve": true, "isCurve": true,
@ -372,20 +372,20 @@
"labelPercentage": 0, "labelPercentage": 0,
"route": [ "route": [
{ {
"x": 465, "x": 345,
"y": 181.5 "y": 121.5
}, },
{ {
"x": 465, "x": 345,
"y": 251.9 "y": 191.9
}, },
{ {
"x": 465, "x": 345,
"y": 287.5 "y": 227.5
}, },
{ {
"x": 465, "x": 345,
"y": 359.5 "y": 299.5
} }
], ],
"isCurve": true, "isCurve": true,

View file

@ -3,7 +3,7 @@
id="d2-svg" id="d2-svg"
style="background: white;" style="background: white;"
xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"
width="775" height="852" viewBox="-102 -102 775 852"><style type="text/css"> width="629" height="732" viewBox="-102 -102 629 732"><style type="text/css">
<![CDATA[ <![CDATA[
.shape { .shape {
shape-rendering: geometricPrecision; shape-rendering: geometricPrecision;
@ -39,9 +39,9 @@ width="775" height="852" viewBox="-102 -102 775 852"><style type="text/css">
svgEl.setAttribute("height", height * ratio - 16); svgEl.setAttribute("height", height * ratio - 16);
} }
}); });
]]></script><g id="a"><g class="shape" ><rect x="0" y="0" width="571" height="648" style="fill:#E3E9FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text" x="285.500000" y="33.000000" style="text-anchor:middle;font-size:28px;fill:#0A0F25">a</text></g><g id="a.b"><g class="shape" ><rect x="64" y="55" width="113" height="126" style="fill:#EDF0FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="120.500000" y="121.000000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">b</text></g><g id="a.c"><g class="shape" ><rect x="40" y="359" width="478" height="235" style="fill:#EDF0FD;stroke:white;stroke-width:2;" /></g><text class="text" x="279.000000" y="388.000000" style="text-anchor:middle;font-size:24px;fill:#0A0F25">c</text></g><g id="a.1"><g class="shape" ><rect x="237" y="55" width="112" height="126" style="fill:#EDF0FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="293.000000" y="121.000000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">1</text></g><g id="a.2"><g class="shape" ><rect x="409" y="55" width="113" height="126" style="fill:#EDF0FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="465.500000" y="121.000000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">2</text></g><g id="a.c.d"><g class="shape" ><rect x="236" y="413" width="114" height="126" style="fill:#F7F8FE;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="293.000000" y="479.000000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">d</text></g><g id="a.(b -&gt; c)[0]"><marker id="mk-1065319532" markerWidth="24.200000" markerHeight="18.000000" refX="20.800000" refY="9.000000" viewBox="0.000000 0.000000 24.200000 18.000000" orient="auto" markerUnits="userSpaceOnUse"> <polygon class="connection" fill="white" stroke="red" stroke-width="2" points="0.000000,9.000000 11.000000,2.250000 22.000000,9.000000 11.000000,16.200000" /> </marker><path d="M 120.000000 183.500000 C 120.000000 251.900000 120.000000 287.500000 120.000000 355.500000" class="connection" style="fill:none;stroke:red;stroke-width:2;" marker-end="url(#mk-1065319532)" mask="url(#3375972788)"/><text class="text-italic" x="120.000000" y="252.000000" style="text-anchor:middle;font-size:16px;fill:red"><tspan x="120.000000" dy="0.000000">line 1</tspan><tspan x="120.000000" dy="17.250000">line 2</tspan><tspan x="120.000000" dy="17.250000">line 3</tspan><tspan x="120.000000" dy="17.250000">line 4</tspan></text></g><g id="a.(1 -&gt; c)[0]"><marker id="mk-3990223579" markerWidth="10.000000" markerHeight="12.000000" refX="7.000000" refY="6.000000" viewBox="0.000000 0.000000 10.000000 12.000000" orient="auto" markerUnits="userSpaceOnUse"> <polygon class="connection" fill="#0D32B2" stroke-width="2" points="0.000000,0.000000 10.000000,6.000000 0.000000,12.000000" /> </marker><path d="M 292.500000 183.500000 C 292.500000 251.900000 292.500000 287.500000 292.500000 355.500000" class="connection" style="fill:none;stroke:#0D32B2;stroke-width:2;" marker-end="url(#mk-3990223579)" mask="url(#3375972788)"/></g><g id="a.(2 &lt;-&gt; c)[0]"><marker id="mk-2510427236" markerWidth="10.000000" markerHeight="12.000000" refX="3.000000" refY="6.000000" viewBox="0.000000 0.000000 10.000000 12.000000" orient="auto" markerUnits="userSpaceOnUse"> <polygon class="connection" fill="#0D32B2" stroke-width="2" points="10.000000,0.000000 0.000000,6.000000 10.000000,12.000000" /> </marker><path d="M 465.000000 185.500000 C 465.000000 251.900000 465.000000 287.500000 465.000000 355.500000" class="connection" style="fill:none;stroke:#0D32B2;stroke-width:2;" marker-start="url(#mk-2510427236)" marker-end="url(#mk-3990223579)" mask="url(#3375972788)"/></g><mask id="3375972788" maskUnits="userSpaceOnUse" x="-100" y="-100" width="775" height="852"> ]]></script><g id="a"><g class="shape" ><rect x="0" y="0" width="425" height="528" style="fill:#E3E9FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text" x="212.500000" y="33.000000" style="text-anchor:middle;font-size:28px;fill:#0A0F25">a</text></g><g id="a.b"><g class="shape" ><rect x="94" y="55" width="53" height="66" style="fill:#EDF0FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="120.500000" y="93.500000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">b</text></g><g id="a.c"><g class="shape" ><rect x="40" y="299" width="345" height="175" style="fill:#EDF0FD;stroke:white;stroke-width:2;" /></g><text class="text" x="212.500000" y="328.000000" style="text-anchor:middle;font-size:24px;fill:#0A0F25">c</text></g><g id="a.1"><g class="shape" ><rect x="207" y="55" width="52" height="66" style="fill:#EDF0FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="233.000000" y="93.500000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">1</text></g><g id="a.2"><g class="shape" ><rect x="319" y="55" width="53" height="66" style="fill:#EDF0FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="345.500000" y="93.500000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">2</text></g><g id="a.c.d"><g class="shape" ><rect x="206" y="353" width="54" height="66" style="fill:#F7F8FE;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="233.000000" y="391.500000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">d</text></g><g id="a.(b -&gt; c)[0]"><marker id="mk-1065319532" markerWidth="24.200000" markerHeight="18.000000" refX="20.800000" refY="9.000000" viewBox="0.000000 0.000000 24.200000 18.000000" orient="auto" markerUnits="userSpaceOnUse"> <polygon class="connection" fill="white" stroke="red" stroke-width="2" points="0.000000,9.000000 11.000000,2.250000 22.000000,9.000000 11.000000,16.200000" /> </marker><path d="M 120.000000 123.500000 C 120.000000 191.900000 120.000000 227.500000 120.000000 295.500000" class="connection" style="fill:none;stroke:red;stroke-width:2;" marker-end="url(#mk-1065319532)" mask="url(#89896559)"/><text class="text-italic" x="120.000000" y="192.000000" style="text-anchor:middle;font-size:16px;fill:red"><tspan x="120.000000" dy="0.000000">line 1</tspan><tspan x="120.000000" dy="17.250000">line 2</tspan><tspan x="120.000000" dy="17.250000">line 3</tspan><tspan x="120.000000" dy="17.250000">line 4</tspan></text></g><g id="a.(1 -&gt; c)[0]"><marker id="mk-3990223579" markerWidth="10.000000" markerHeight="12.000000" refX="7.000000" refY="6.000000" viewBox="0.000000 0.000000 10.000000 12.000000" orient="auto" markerUnits="userSpaceOnUse"> <polygon class="connection" fill="#0D32B2" stroke-width="2" points="0.000000,0.000000 10.000000,6.000000 0.000000,12.000000" /> </marker><path d="M 232.500000 123.500000 C 232.500000 191.900000 232.500000 227.500000 232.500000 295.500000" class="connection" style="fill:none;stroke:#0D32B2;stroke-width:2;" marker-end="url(#mk-3990223579)" mask="url(#89896559)"/></g><g id="a.(2 &lt;-&gt; c)[0]"><marker id="mk-2510427236" markerWidth="10.000000" markerHeight="12.000000" refX="3.000000" refY="6.000000" viewBox="0.000000 0.000000 10.000000 12.000000" orient="auto" markerUnits="userSpaceOnUse"> <polygon class="connection" fill="#0D32B2" stroke-width="2" points="10.000000,0.000000 0.000000,6.000000 10.000000,12.000000" /> </marker><path d="M 345.000000 125.500000 C 345.000000 191.900000 345.000000 227.500000 345.000000 295.500000" class="connection" style="fill:none;stroke:#0D32B2;stroke-width:2;" marker-start="url(#mk-2510427236)" marker-end="url(#mk-3990223579)" mask="url(#89896559)"/></g><mask id="89896559" maskUnits="userSpaceOnUse" x="-100" y="-100" width="629" height="732">
<rect x="-100" y="-100" width="775" height="852" fill="white"></rect> <rect x="-100" y="-100" width="629" height="732" fill="white"></rect>
<rect x="102.000000" y="236.000000" width="36" height="69" fill="black"></rect> <rect x="102.000000" y="176.000000" width="36" height="69" fill="black"></rect>
</mask><style type="text/css"><![CDATA[ </mask><style type="text/css"><![CDATA[
.text { .text {
font-family: "font-regular"; font-family: "font-regular";

Before

Width:  |  Height:  |  Size: 794 KiB

After

Width:  |  Height:  |  Size: 794 KiB

View file

@ -9,8 +9,8 @@
"x": 12, "x": 12,
"y": 12 "y": 12
}, },
"width": 490, "width": 354,
"height": 878, "height": 701,
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
"strokeWidth": 2, "strokeWidth": 2,
@ -37,8 +37,8 @@
"italic": false, "italic": false,
"bold": false, "bold": false,
"underline": false, "underline": false,
"labelWidth": 17, "labelWidth": 12,
"labelHeight": 41, "labelHeight": 36,
"labelPosition": "INSIDE_TOP_CENTER", "labelPosition": "INSIDE_TOP_CENTER",
"zIndex": 0, "zIndex": 0,
"level": 1 "level": 1
@ -47,11 +47,11 @@
"id": "a.b", "id": "a.b",
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 87, "x": 97,
"y": 87 "y": 87
}, },
"width": 113, "width": 53,
"height": 126, "height": 66,
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
"strokeWidth": 2, "strokeWidth": 2,
@ -78,8 +78,8 @@
"italic": false, "italic": false,
"bold": true, "bold": true,
"underline": false, "underline": false,
"labelWidth": 13, "labelWidth": 8,
"labelHeight": 26, "labelHeight": 21,
"labelPosition": "INSIDE_MIDDLE_CENTER", "labelPosition": "INSIDE_MIDDLE_CENTER",
"zIndex": 0, "zIndex": 0,
"level": 2 "level": 2
@ -88,11 +88,11 @@
"id": "a.c", "id": "a.c",
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 106, "x": 87,
"y": 539 "y": 422
}, },
"width": 264, "width": 204,
"height": 276, "height": 216,
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
"strokeWidth": 2, "strokeWidth": 2,
@ -119,8 +119,8 @@
"italic": false, "italic": false,
"bold": false, "bold": false,
"underline": false, "underline": false,
"labelWidth": 15, "labelWidth": 10,
"labelHeight": 36, "labelHeight": 31,
"labelPosition": "INSIDE_TOP_CENTER", "labelPosition": "INSIDE_TOP_CENTER",
"zIndex": 0, "zIndex": 0,
"level": 2 "level": 2
@ -129,11 +129,11 @@
"id": "a.1", "id": "a.1",
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 182, "x": 163,
"y": 313 "y": 256
}, },
"width": 112, "width": 52,
"height": 126, "height": 66,
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
"strokeWidth": 2, "strokeWidth": 2,
@ -160,8 +160,8 @@
"italic": false, "italic": false,
"bold": true, "bold": true,
"underline": false, "underline": false,
"labelWidth": 12, "labelWidth": 7,
"labelHeight": 26, "labelHeight": 21,
"labelPosition": "INSIDE_MIDDLE_CENTER", "labelPosition": "INSIDE_MIDDLE_CENTER",
"zIndex": 0, "zIndex": 0,
"level": 2 "level": 2
@ -170,11 +170,11 @@
"id": "a.2", "id": "a.2",
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 314, "x": 235,
"y": 313 "y": 256
}, },
"width": 113, "width": 53,
"height": 126, "height": 66,
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
"strokeWidth": 2, "strokeWidth": 2,
@ -201,8 +201,8 @@
"italic": false, "italic": false,
"bold": true, "bold": true,
"underline": false, "underline": false,
"labelWidth": 13, "labelWidth": 8,
"labelHeight": 26, "labelHeight": 21,
"labelPosition": "INSIDE_MIDDLE_CENTER", "labelPosition": "INSIDE_MIDDLE_CENTER",
"zIndex": 0, "zIndex": 0,
"level": 2 "level": 2
@ -211,11 +211,11 @@
"id": "a.c.d", "id": "a.c.d",
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 181, "x": 162,
"y": 614 "y": 497
}, },
"width": 114, "width": 54,
"height": 126, "height": 66,
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
"strokeWidth": 2, "strokeWidth": 2,
@ -242,8 +242,8 @@
"italic": false, "italic": false,
"bold": true, "bold": true,
"underline": false, "underline": false,
"labelWidth": 14, "labelWidth": 9,
"labelHeight": 26, "labelHeight": 21,
"labelPosition": "INSIDE_MIDDLE_CENTER", "labelPosition": "INSIDE_MIDDLE_CENTER",
"zIndex": 0, "zIndex": 0,
"level": 3 "level": 3
@ -276,20 +276,20 @@
"labelPercentage": 0, "labelPercentage": 0,
"route": [ "route": [
{ {
"x": 143.5, "x": 124,
"y": 213 "y": 153
}, },
{ {
"x": 143.5, "x": 124,
"y": 489 "y": 372
}, },
{ {
"x": 172.5, "x": 138,
"y": 489 "y": 372
}, },
{ {
"x": 172.5, "x": 138,
"y": 539 "y": 422
} }
], ],
"animated": false, "animated": false,
@ -323,12 +323,12 @@
"labelPercentage": 0, "labelPercentage": 0,
"route": [ "route": [
{ {
"x": 238.5, "x": 189,
"y": 439 "y": 322
}, },
{ {
"x": 238.5, "x": 189,
"y": 539 "y": 422
} }
], ],
"animated": false, "animated": false,
@ -362,20 +362,20 @@
"labelPercentage": 0, "labelPercentage": 0,
"route": [ "route": [
{ {
"x": 371, "x": 261.5,
"y": 439 "y": 322
}, },
{ {
"x": 371, "x": 261.5,
"y": 489 "y": 372
}, },
{ {
"x": 304.5, "x": 240,
"y": 489 "y": 372
}, },
{ {
"x": 304.5, "x": 240,
"y": 539 "y": 422
} }
], ],
"animated": false, "animated": false,

View file

@ -3,7 +3,7 @@
id="d2-svg" id="d2-svg"
style="background: white;" style="background: white;"
xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"
width="694" height="1082" viewBox="-90 -90 694 1082"><style type="text/css"> width="558" height="905" viewBox="-90 -90 558 905"><style type="text/css">
<![CDATA[ <![CDATA[
.shape { .shape {
shape-rendering: geometricPrecision; shape-rendering: geometricPrecision;
@ -39,9 +39,9 @@ width="694" height="1082" viewBox="-90 -90 694 1082"><style type="text/css">
svgEl.setAttribute("height", height * ratio - 16); svgEl.setAttribute("height", height * ratio - 16);
} }
}); });
]]></script><g id="a"><g class="shape" ><rect x="12" y="12" width="490" height="878" style="fill:#E3E9FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text" x="257.000000" y="45.000000" style="text-anchor:middle;font-size:28px;fill:#0A0F25">a</text></g><g id="a.b"><g class="shape" ><rect x="87" y="87" width="113" height="126" style="fill:#EDF0FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="143.500000" y="153.000000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">b</text></g><g id="a.c"><g class="shape" ><rect x="106" y="539" width="264" height="276" style="fill:#EDF0FD;stroke:white;stroke-width:2;" /></g><text class="text" x="238.000000" y="568.000000" style="text-anchor:middle;font-size:24px;fill:#0A0F25">c</text></g><g id="a.1"><g class="shape" ><rect x="182" y="313" width="112" height="126" style="fill:#EDF0FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="238.000000" y="379.000000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">1</text></g><g id="a.2"><g class="shape" ><rect x="314" y="313" width="113" height="126" style="fill:#EDF0FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="370.500000" y="379.000000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">2</text></g><g id="a.c.d"><g class="shape" ><rect x="181" y="614" width="114" height="126" style="fill:#F7F8FE;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="238.000000" y="680.000000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">d</text></g><g id="a.(b -&gt; c)[0]"><marker id="mk-1065319532" markerWidth="24.200000" markerHeight="18.000000" refX="20.800000" refY="9.000000" viewBox="0.000000 0.000000 24.200000 18.000000" orient="auto" markerUnits="userSpaceOnUse"> <polygon class="connection" fill="white" stroke="red" stroke-width="2" points="0.000000,9.000000 11.000000,2.250000 22.000000,9.000000 11.000000,16.200000" /> </marker><path d="M 143.500000 215.000000 L 143.500000 479.000000 S 143.500000 489.000000 153.500000 489.000000 L 162.500000 489.000000 S 172.500000 489.000000 172.500000 499.000000 L 172.500000 535.000000" class="connection" style="fill:none;stroke:red;stroke-width:2;" marker-end="url(#mk-1065319532)" mask="url(#417073356)"/><text class="text-italic" x="144.000000" y="372.000000" style="text-anchor:middle;font-size:16px;fill:red"><tspan x="144.000000" dy="0.000000">line 1</tspan><tspan x="144.000000" dy="17.250000">line 2</tspan><tspan x="144.000000" dy="17.250000">line 3</tspan><tspan x="144.000000" dy="17.250000">line 4</tspan></text></g><g id="a.(1 -&gt; c)[0]"><marker id="mk-3990223579" markerWidth="10.000000" markerHeight="12.000000" refX="7.000000" refY="6.000000" viewBox="0.000000 0.000000 10.000000 12.000000" orient="auto" markerUnits="userSpaceOnUse"> <polygon class="connection" fill="#0D32B2" stroke-width="2" points="0.000000,0.000000 10.000000,6.000000 0.000000,12.000000" /> </marker><path d="M 238.500000 441.000000 L 238.500000 535.000000" class="connection" style="fill:none;stroke:#0D32B2;stroke-width:2;" marker-end="url(#mk-3990223579)" mask="url(#417073356)"/></g><g id="a.(2 &lt;-&gt; c)[0]"><marker id="mk-2510427236" markerWidth="10.000000" markerHeight="12.000000" refX="3.000000" refY="6.000000" viewBox="0.000000 0.000000 10.000000 12.000000" orient="auto" markerUnits="userSpaceOnUse"> <polygon class="connection" fill="#0D32B2" stroke-width="2" points="10.000000,0.000000 0.000000,6.000000 10.000000,12.000000" /> </marker><path d="M 371.000000 443.000000 L 371.000000 479.000000 S 371.000000 489.000000 361.000000 489.000000 L 314.500000 489.000000 S 304.500000 489.000000 304.500000 499.000000 L 304.500000 535.000000" class="connection" style="fill:none;stroke:#0D32B2;stroke-width:2;" marker-start="url(#mk-2510427236)" marker-end="url(#mk-3990223579)" mask="url(#417073356)"/></g><mask id="417073356" maskUnits="userSpaceOnUse" x="-100" y="-100" width="694" height="1082"> ]]></script><g id="a"><g class="shape" ><rect x="12" y="12" width="354" height="701" style="fill:#E3E9FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text" x="189.000000" y="45.000000" style="text-anchor:middle;font-size:28px;fill:#0A0F25">a</text></g><g id="a.b"><g class="shape" ><rect x="97" y="87" width="53" height="66" style="fill:#EDF0FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="123.500000" y="125.500000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">b</text></g><g id="a.c"><g class="shape" ><rect x="87" y="422" width="204" height="216" style="fill:#EDF0FD;stroke:white;stroke-width:2;" /></g><text class="text" x="189.000000" y="451.000000" style="text-anchor:middle;font-size:24px;fill:#0A0F25">c</text></g><g id="a.1"><g class="shape" ><rect x="163" y="256" width="52" height="66" style="fill:#EDF0FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="189.000000" y="294.500000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">1</text></g><g id="a.2"><g class="shape" ><rect x="235" y="256" width="53" height="66" style="fill:#EDF0FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="261.500000" y="294.500000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">2</text></g><g id="a.c.d"><g class="shape" ><rect x="162" y="497" width="54" height="66" style="fill:#F7F8FE;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="189.000000" y="535.500000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">d</text></g><g id="a.(b -&gt; c)[0]"><marker id="mk-1065319532" markerWidth="24.200000" markerHeight="18.000000" refX="20.800000" refY="9.000000" viewBox="0.000000 0.000000 24.200000 18.000000" orient="auto" markerUnits="userSpaceOnUse"> <polygon class="connection" fill="white" stroke="red" stroke-width="2" points="0.000000,9.000000 11.000000,2.250000 22.000000,9.000000 11.000000,16.200000" /> </marker><path d="M 124.000000 155.000000 L 124.000000 365.000000 C 124.000000 379.000000 138.000000 365.000000 138.000000 379.000000 L 138.000000 418.000000" class="connection" style="fill:none;stroke:red;stroke-width:2;" marker-end="url(#mk-1065319532)" mask="url(#731079584)"/><text class="text-italic" x="124.000000" y="276.000000" style="text-anchor:middle;font-size:16px;fill:red"><tspan x="124.000000" dy="0.000000">line 1</tspan><tspan x="124.000000" dy="17.250000">line 2</tspan><tspan x="124.000000" dy="17.250000">line 3</tspan><tspan x="124.000000" dy="17.250000">line 4</tspan></text></g><g id="a.(1 -&gt; c)[0]"><marker id="mk-3990223579" markerWidth="10.000000" markerHeight="12.000000" refX="7.000000" refY="6.000000" viewBox="0.000000 0.000000 10.000000 12.000000" orient="auto" markerUnits="userSpaceOnUse"> <polygon class="connection" fill="#0D32B2" stroke-width="2" points="0.000000,0.000000 10.000000,6.000000 0.000000,12.000000" /> </marker><path d="M 189.000000 324.000000 L 189.000000 418.000000" class="connection" style="fill:none;stroke:#0D32B2;stroke-width:2;" marker-end="url(#mk-3990223579)" mask="url(#731079584)"/></g><g id="a.(2 &lt;-&gt; c)[0]"><marker id="mk-2510427236" markerWidth="10.000000" markerHeight="12.000000" refX="3.000000" refY="6.000000" viewBox="0.000000 0.000000 10.000000 12.000000" orient="auto" markerUnits="userSpaceOnUse"> <polygon class="connection" fill="#0D32B2" stroke-width="2" points="10.000000,0.000000 0.000000,6.000000 10.000000,12.000000" /> </marker><path d="M 261.500000 326.000000 L 261.500000 362.000000 S 261.500000 372.000000 251.500000 372.000000 L 250.000000 372.000000 S 240.000000 372.000000 240.000000 382.000000 L 240.000000 418.000000" class="connection" style="fill:none;stroke:#0D32B2;stroke-width:2;" marker-start="url(#mk-2510427236)" marker-end="url(#mk-3990223579)" mask="url(#731079584)"/></g><mask id="731079584" maskUnits="userSpaceOnUse" x="-100" y="-100" width="558" height="905">
<rect x="-100" y="-100" width="694" height="1082" fill="white"></rect> <rect x="-100" y="-100" width="558" height="905" fill="white"></rect>
<rect x="126.000000" y="356.000000" width="36" height="69" fill="black"></rect> <rect x="106.000000" y="260.000000" width="36" height="69" fill="black"></rect>
</mask><style type="text/css"><![CDATA[ </mask><style type="text/css"><![CDATA[
.text { .text {
font-family: "font-regular"; font-family: "font-regular";

Before

Width:  |  Height:  |  Size: 794 KiB

After

Width:  |  Height:  |  Size: 794 KiB

View file

@ -9,8 +9,8 @@
"x": 0, "x": 0,
"y": 0 "y": 0
}, },
"width": 2628, "width": 2328,
"height": 237, "height": 177,
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
"strokeWidth": 2, "strokeWidth": 2,
@ -37,8 +37,8 @@
"italic": false, "italic": false,
"bold": false, "bold": false,
"underline": false, "underline": false,
"labelWidth": 226, "labelWidth": 221,
"labelHeight": 41, "labelHeight": 36,
"labelPosition": "INSIDE_TOP_CENTER", "labelPosition": "INSIDE_TOP_CENTER",
"zIndex": 0, "zIndex": 0,
"level": 1 "level": 1
@ -50,8 +50,8 @@
"x": 105, "x": 105,
"y": 50 "y": 50
}, },
"width": 330, "width": 270,
"height": 137, "height": 77,
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
"strokeWidth": 2, "strokeWidth": 2,
@ -78,8 +78,8 @@
"italic": false, "italic": false,
"bold": true, "bold": true,
"underline": false, "underline": false,
"labelWidth": 230, "labelWidth": 225,
"labelHeight": 37, "labelHeight": 32,
"labelPosition": "INSIDE_MIDDLE_CENTER", "labelPosition": "INSIDE_MIDDLE_CENTER",
"zIndex": 0, "zIndex": 0,
"level": 2 "level": 2
@ -88,11 +88,11 @@
"id": "build_workflow.GHA", "id": "build_workflow.GHA",
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 698, "x": 638,
"y": 50 "y": 50
}, },
"width": 269, "width": 209,
"height": 137, "height": 77,
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
"strokeWidth": 2, "strokeWidth": 2,
@ -119,8 +119,8 @@
"italic": false, "italic": false,
"bold": true, "bold": true,
"underline": false, "underline": false,
"labelWidth": 169, "labelWidth": 164,
"labelHeight": 37, "labelHeight": 32,
"labelPosition": "INSIDE_MIDDLE_CENTER", "labelPosition": "INSIDE_MIDDLE_CENTER",
"zIndex": 0, "zIndex": 0,
"level": 2 "level": 2
@ -129,11 +129,11 @@
"id": "build_workflow.S3", "id": "build_workflow.S3",
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 1314, "x": 1194,
"y": 50 "y": 50
}, },
"width": 131, "width": 71,
"height": 137, "height": 77,
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
"strokeWidth": 2, "strokeWidth": 2,
@ -160,8 +160,8 @@
"italic": false, "italic": false,
"bold": true, "bold": true,
"underline": false, "underline": false,
"labelWidth": 31, "labelWidth": 26,
"labelHeight": 37, "labelHeight": 32,
"labelPosition": "INSIDE_MIDDLE_CENTER", "labelPosition": "INSIDE_MIDDLE_CENTER",
"zIndex": 0, "zIndex": 0,
"level": 2 "level": 2
@ -170,11 +170,11 @@
"id": "build_workflow.Terraform", "id": "build_workflow.Terraform",
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 1773, "x": 1593,
"y": 50 "y": 50
}, },
"width": 218, "width": 158,
"height": 137, "height": 77,
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
"strokeWidth": 2, "strokeWidth": 2,
@ -201,8 +201,8 @@
"italic": false, "italic": false,
"bold": true, "bold": true,
"underline": false, "underline": false,
"labelWidth": 118, "labelWidth": 113,
"labelHeight": 37, "labelHeight": 32,
"labelPosition": "INSIDE_MIDDLE_CENTER", "labelPosition": "INSIDE_MIDDLE_CENTER",
"zIndex": 0, "zIndex": 0,
"level": 2 "level": 2
@ -211,11 +211,11 @@
"id": "build_workflow.AWS", "id": "build_workflow.AWS",
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 2369, "x": 2129,
"y": 50 "y": 50
}, },
"width": 155, "width": 95,
"height": 137, "height": 77,
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
"strokeWidth": 2, "strokeWidth": 2,
@ -242,8 +242,8 @@
"italic": false, "italic": false,
"bold": true, "bold": true,
"underline": false, "underline": false,
"labelWidth": 55, "labelWidth": 50,
"labelHeight": 37, "labelHeight": 32,
"labelPosition": "INSIDE_MIDDLE_CENTER", "labelPosition": "INSIDE_MIDDLE_CENTER",
"zIndex": 0, "zIndex": 0,
"level": 2 "level": 2
@ -276,20 +276,20 @@
"labelPercentage": 0, "labelPercentage": 0,
"route": [ "route": [
{ {
"x": 435.5, "x": 375.5,
"y": 118.5 "y": 88.5
}, },
{ {
"x": 539.9, "x": 479.9,
"y": 118.5 "y": 88.5
}, },
{ {
"x": 592.3, "x": 532.3,
"y": 118.5 "y": 88.5
}, },
{ {
"x": 697.5, "x": 637.5,
"y": 118.5 "y": 88.5
} }
], ],
"isCurve": true, "isCurve": true,
@ -324,20 +324,20 @@
"labelPercentage": 0, "labelPercentage": 0,
"route": [ "route": [
{ {
"x": 966.5, "x": 846.5,
"y": 118.5 "y": 88.5
}, },
{ {
"x": 1105.3, "x": 985.3,
"y": 118.5 "y": 88.5
}, },
{ {
"x": 1174.7, "x": 1054.7,
"y": 118.5 "y": 88.5
}, },
{ {
"x": 1313.5, "x": 1193.5,
"y": 118.5 "y": 88.5
} }
], ],
"isCurve": true, "isCurve": true,
@ -372,20 +372,20 @@
"labelPercentage": 0, "labelPercentage": 0,
"route": [ "route": [
{ {
"x": 1445.5, "x": 1265.5,
"y": 118.5 "y": 88.5
}, },
{ {
"x": 1575.9, "x": 1395.9,
"y": 118.5 "y": 88.5
}, },
{ {
"x": 1641.3, "x": 1461.3,
"y": 118.5 "y": 88.5
}, },
{ {
"x": 1772.5, "x": 1592.5,
"y": 118.5 "y": 88.5
} }
], ],
"isCurve": true, "isCurve": true,
@ -420,20 +420,20 @@
"labelPercentage": 0, "labelPercentage": 0,
"route": [ "route": [
{ {
"x": 1991.5, "x": 1751.5,
"y": 118.5 "y": 88.5
}, },
{ {
"x": 2141.9, "x": 1901.9,
"y": 118.5 "y": 88.5
}, },
{ {
"x": 2217.3, "x": 1977.3,
"y": 118.5 "y": 88.5
}, },
{ {
"x": 2368.5, "x": 2128.5,
"y": 118.5 "y": 88.5
} }
], ],
"isCurve": true, "isCurve": true,

View file

@ -3,7 +3,7 @@
id="d2-svg" id="d2-svg"
style="background: white;" style="background: white;"
xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"
width="2832" height="441" viewBox="-102 -102 2832 441"><style type="text/css"> width="2532" height="381" viewBox="-102 -102 2532 381"><style type="text/css">
<![CDATA[ <![CDATA[
.shape { .shape {
shape-rendering: geometricPrecision; shape-rendering: geometricPrecision;
@ -39,12 +39,12 @@ width="2832" height="441" viewBox="-102 -102 2832 441"><style type="text/css">
svgEl.setAttribute("height", height * ratio - 16); svgEl.setAttribute("height", height * ratio - 16);
} }
}); });
]]></script><g id="build_workflow"><g class="shape" ><rect x="0" y="0" width="2628" height="237" style="fill:#E3E9FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text" x="1314.000000" y="33.000000" style="text-anchor:middle;font-size:28px;fill:#0A0F25">lambda-build.yaml</text></g><g id="build_workflow.push"><g class="shape" ><rect x="105" y="50" width="330" height="137" style="fill:#EDF0FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="270.000000" y="125.000000" style="text-anchor:middle;font-size:25px;fill:#0A0F25">Push to main branch</text></g><g id="build_workflow.GHA"><g class="shape" ><rect x="698" y="50" width="269" height="137" style="fill:#EDF0FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="832.500000" y="125.000000" style="text-anchor:middle;font-size:25px;fill:#0A0F25">GitHub Actions</text></g><g id="build_workflow.S3"><g class="shape" ><rect x="1314" y="50" width="131" height="137" style="fill:#EDF0FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="1379.500000" y="125.000000" style="text-anchor:middle;font-size:25px;fill:#0A0F25">S3</text></g><g id="build_workflow.Terraform"><g class="shape" ><rect x="1773" y="50" width="218" height="137" style="fill:#EDF0FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="1882.000000" y="125.000000" style="text-anchor:middle;font-size:25px;fill:#0A0F25">Terraform</text></g><g id="build_workflow.AWS"><g class="shape" ><rect x="2369" y="50" width="155" height="137" style="fill:#EDF0FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="2446.500000" y="125.000000" style="text-anchor:middle;font-size:25px;fill:#0A0F25">AWS</text></g><g id="build_workflow.(push -&gt; GHA)[0]"><marker id="mk-3990223579" markerWidth="10.000000" markerHeight="12.000000" refX="7.000000" refY="6.000000" viewBox="0.000000 0.000000 10.000000 12.000000" orient="auto" markerUnits="userSpaceOnUse"> <polygon class="connection" fill="#0D32B2" stroke-width="2" points="0.000000,0.000000 10.000000,6.000000 0.000000,12.000000" /> </marker><path d="M 437.500000 118.500000 C 539.900000 118.500000 592.300000 118.500000 693.500000 118.500000" class="connection" style="fill:none;stroke:#0D32B2;stroke-width:2;" marker-end="url(#mk-3990223579)" mask="url(#3697729349)"/><text class="text-italic" x="567.000000" y="124.000000" style="text-anchor:middle;font-size:16px;fill:#676C7E">Triggers</text></g><g id="build_workflow.(GHA -&gt; S3)[0]"><path d="M 968.500000 118.500000 C 1105.300000 118.500000 1174.700000 118.500000 1309.500000 118.500000" class="connection" style="fill:none;stroke:#0D32B2;stroke-width:2;" marker-end="url(#mk-3990223579)" mask="url(#3697729349)"/><text class="text-italic" x="1140.000000" y="124.000000" style="text-anchor:middle;font-size:16px;fill:#676C7E">Builds zip &amp; pushes it</text></g><g id="build_workflow.(S3 &lt;-&gt; Terraform)[0]"><marker id="mk-2510427236" markerWidth="10.000000" markerHeight="12.000000" refX="3.000000" refY="6.000000" viewBox="0.000000 0.000000 10.000000 12.000000" orient="auto" markerUnits="userSpaceOnUse"> <polygon class="connection" fill="#0D32B2" stroke-width="2" points="10.000000,0.000000 0.000000,6.000000 10.000000,12.000000" /> </marker><path d="M 1449.500000 118.500000 C 1575.900000 118.500000 1641.300000 118.500000 1768.500000 118.500000" class="connection" style="fill:none;stroke:#0D32B2;stroke-width:2;" marker-start="url(#mk-2510427236)" marker-end="url(#mk-3990223579)" mask="url(#3697729349)"/><text class="text-italic" x="1609.500000" y="124.000000" style="text-anchor:middle;font-size:16px;fill:#676C7E">Pulls zip to deploy</text></g><g id="build_workflow.(Terraform -&gt; AWS)[0]"><path d="M 1993.500000 118.500000 C 2141.900000 118.500000 2217.300000 118.500000 2364.500000 118.500000" class="connection" style="fill:none;stroke:#0D32B2;stroke-width:2;" marker-end="url(#mk-3990223579)" mask="url(#3697729349)"/><text class="text-italic" x="2180.500000" y="124.000000" style="text-anchor:middle;font-size:16px;fill:#676C7E">Changes the live lambdas</text></g><mask id="3697729349" maskUnits="userSpaceOnUse" x="-100" y="-100" width="2832" height="441"> ]]></script><g id="build_workflow"><g class="shape" ><rect x="0" y="0" width="2328" height="177" style="fill:#E3E9FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text" x="1164.000000" y="33.000000" style="text-anchor:middle;font-size:28px;fill:#0A0F25">lambda-build.yaml</text></g><g id="build_workflow.push"><g class="shape" ><rect x="105" y="50" width="270" height="77" style="fill:#EDF0FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="240.000000" y="97.500000" style="text-anchor:middle;font-size:25px;fill:#0A0F25">Push to main branch</text></g><g id="build_workflow.GHA"><g class="shape" ><rect x="638" y="50" width="209" height="77" style="fill:#EDF0FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="742.500000" y="97.500000" style="text-anchor:middle;font-size:25px;fill:#0A0F25">GitHub Actions</text></g><g id="build_workflow.S3"><g class="shape" ><rect x="1194" y="50" width="71" height="77" style="fill:#EDF0FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="1229.500000" y="97.500000" style="text-anchor:middle;font-size:25px;fill:#0A0F25">S3</text></g><g id="build_workflow.Terraform"><g class="shape" ><rect x="1593" y="50" width="158" height="77" style="fill:#EDF0FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="1672.000000" y="97.500000" style="text-anchor:middle;font-size:25px;fill:#0A0F25">Terraform</text></g><g id="build_workflow.AWS"><g class="shape" ><rect x="2129" y="50" width="95" height="77" style="fill:#EDF0FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="2176.500000" y="97.500000" style="text-anchor:middle;font-size:25px;fill:#0A0F25">AWS</text></g><g id="build_workflow.(push -&gt; GHA)[0]"><marker id="mk-3990223579" markerWidth="10.000000" markerHeight="12.000000" refX="7.000000" refY="6.000000" viewBox="0.000000 0.000000 10.000000 12.000000" orient="auto" markerUnits="userSpaceOnUse"> <polygon class="connection" fill="#0D32B2" stroke-width="2" points="0.000000,0.000000 10.000000,6.000000 0.000000,12.000000" /> </marker><path d="M 377.500000 88.500000 C 479.900000 88.500000 532.300000 88.500000 633.500000 88.500000" class="connection" style="fill:none;stroke:#0D32B2;stroke-width:2;" marker-end="url(#mk-3990223579)" mask="url(#2796260647)"/><text class="text-italic" x="507.000000" y="94.000000" style="text-anchor:middle;font-size:16px;fill:#676C7E">Triggers</text></g><g id="build_workflow.(GHA -&gt; S3)[0]"><path d="M 848.500000 88.500000 C 985.300000 88.500000 1054.700000 88.500000 1189.500000 88.500000" class="connection" style="fill:none;stroke:#0D32B2;stroke-width:2;" marker-end="url(#mk-3990223579)" mask="url(#2796260647)"/><text class="text-italic" x="1020.000000" y="94.000000" style="text-anchor:middle;font-size:16px;fill:#676C7E">Builds zip &amp; pushes it</text></g><g id="build_workflow.(S3 &lt;-&gt; Terraform)[0]"><marker id="mk-2510427236" markerWidth="10.000000" markerHeight="12.000000" refX="3.000000" refY="6.000000" viewBox="0.000000 0.000000 10.000000 12.000000" orient="auto" markerUnits="userSpaceOnUse"> <polygon class="connection" fill="#0D32B2" stroke-width="2" points="10.000000,0.000000 0.000000,6.000000 10.000000,12.000000" /> </marker><path d="M 1269.500000 88.500000 C 1395.900000 88.500000 1461.300000 88.500000 1588.500000 88.500000" class="connection" style="fill:none;stroke:#0D32B2;stroke-width:2;" marker-start="url(#mk-2510427236)" marker-end="url(#mk-3990223579)" mask="url(#2796260647)"/><text class="text-italic" x="1429.500000" y="94.000000" style="text-anchor:middle;font-size:16px;fill:#676C7E">Pulls zip to deploy</text></g><g id="build_workflow.(Terraform -&gt; AWS)[0]"><path d="M 1753.500000 88.500000 C 1901.900000 88.500000 1977.300000 88.500000 2124.500000 88.500000" class="connection" style="fill:none;stroke:#0D32B2;stroke-width:2;" marker-end="url(#mk-3990223579)" mask="url(#2796260647)"/><text class="text-italic" x="1940.500000" y="94.000000" style="text-anchor:middle;font-size:16px;fill:#676C7E">Changes the live lambdas</text></g><mask id="2796260647" maskUnits="userSpaceOnUse" x="-100" y="-100" width="2532" height="381">
<rect x="-100" y="-100" width="2832" height="441" fill="white"></rect> <rect x="-100" y="-100" width="2532" height="381" fill="white"></rect>
<rect x="540.000000" y="108.000000" width="54" height="21" fill="black"></rect> <rect x="480.000000" y="78.000000" width="54" height="21" fill="black"></rect>
<rect x="1071.000000" y="108.000000" width="138" height="21" fill="black"></rect> <rect x="951.000000" y="78.000000" width="138" height="21" fill="black"></rect>
<rect x="1550.000000" y="108.000000" width="119" height="21" fill="black"></rect> <rect x="1370.000000" y="78.000000" width="119" height="21" fill="black"></rect>
<rect x="2096.000000" y="108.000000" width="169" height="21" fill="black"></rect> <rect x="1856.000000" y="78.000000" width="169" height="21" fill="black"></rect>
</mask><style type="text/css"><![CDATA[ </mask><style type="text/css"><![CDATA[
.text { .text {
font-family: "font-regular"; font-family: "font-regular";

Before

Width:  |  Height:  |  Size: 795 KiB

After

Width:  |  Height:  |  Size: 795 KiB

View file

@ -9,8 +9,8 @@
"x": 12, "x": 12,
"y": 12 "y": 12
}, },
"width": 2533, "width": 2233,
"height": 287, "height": 227,
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
"strokeWidth": 2, "strokeWidth": 2,
@ -37,8 +37,8 @@
"italic": false, "italic": false,
"bold": false, "bold": false,
"underline": false, "underline": false,
"labelWidth": 226, "labelWidth": 221,
"labelHeight": 41, "labelHeight": 36,
"labelPosition": "INSIDE_TOP_CENTER", "labelPosition": "INSIDE_TOP_CENTER",
"zIndex": 0, "zIndex": 0,
"level": 1 "level": 1
@ -50,8 +50,8 @@
"x": 87, "x": 87,
"y": 87 "y": 87
}, },
"width": 330, "width": 270,
"height": 137, "height": 77,
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
"strokeWidth": 2, "strokeWidth": 2,
@ -78,8 +78,8 @@
"italic": false, "italic": false,
"bold": true, "bold": true,
"underline": false, "underline": false,
"labelWidth": 230, "labelWidth": 225,
"labelHeight": 37, "labelHeight": 32,
"labelPosition": "INSIDE_MIDDLE_CENTER", "labelPosition": "INSIDE_MIDDLE_CENTER",
"zIndex": 0, "zIndex": 0,
"level": 2 "level": 2
@ -88,11 +88,11 @@
"id": "build_workflow.GHA", "id": "build_workflow.GHA",
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 671, "x": 611,
"y": 87 "y": 87
}, },
"width": 269, "width": 209,
"height": 137, "height": 77,
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
"strokeWidth": 2, "strokeWidth": 2,
@ -119,8 +119,8 @@
"italic": false, "italic": false,
"bold": true, "bold": true,
"underline": false, "underline": false,
"labelWidth": 169, "labelWidth": 164,
"labelHeight": 37, "labelHeight": 32,
"labelPosition": "INSIDE_MIDDLE_CENTER", "labelPosition": "INSIDE_MIDDLE_CENTER",
"zIndex": 0, "zIndex": 0,
"level": 2 "level": 2
@ -129,11 +129,11 @@
"id": "build_workflow.S3", "id": "build_workflow.S3",
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 1278, "x": 1158,
"y": 87 "y": 87
}, },
"width": 131, "width": 71,
"height": 137, "height": 77,
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
"strokeWidth": 2, "strokeWidth": 2,
@ -160,8 +160,8 @@
"italic": false, "italic": false,
"bold": true, "bold": true,
"underline": false, "underline": false,
"labelWidth": 31, "labelWidth": 26,
"labelHeight": 37, "labelHeight": 32,
"labelPosition": "INSIDE_MIDDLE_CENTER", "labelPosition": "INSIDE_MIDDLE_CENTER",
"zIndex": 0, "zIndex": 0,
"level": 2 "level": 2
@ -170,11 +170,11 @@
"id": "build_workflow.Terraform", "id": "build_workflow.Terraform",
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 1728, "x": 1548,
"y": 87 "y": 87
}, },
"width": 218, "width": 158,
"height": 137, "height": 77,
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
"strokeWidth": 2, "strokeWidth": 2,
@ -201,8 +201,8 @@
"italic": false, "italic": false,
"bold": true, "bold": true,
"underline": false, "underline": false,
"labelWidth": 118, "labelWidth": 113,
"labelHeight": 37, "labelHeight": 32,
"labelPosition": "INSIDE_MIDDLE_CENTER", "labelPosition": "INSIDE_MIDDLE_CENTER",
"zIndex": 0, "zIndex": 0,
"level": 2 "level": 2
@ -211,11 +211,11 @@
"id": "build_workflow.AWS", "id": "build_workflow.AWS",
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 2315, "x": 2075,
"y": 87 "y": 87
}, },
"width": 155, "width": 95,
"height": 137, "height": 77,
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
"strokeWidth": 2, "strokeWidth": 2,
@ -242,8 +242,8 @@
"italic": false, "italic": false,
"bold": true, "bold": true,
"underline": false, "underline": false,
"labelWidth": 55, "labelWidth": 50,
"labelHeight": 37, "labelHeight": 32,
"labelPosition": "INSIDE_MIDDLE_CENTER", "labelPosition": "INSIDE_MIDDLE_CENTER",
"zIndex": 0, "zIndex": 0,
"level": 2 "level": 2
@ -276,12 +276,12 @@
"labelPercentage": 0, "labelPercentage": 0,
"route": [ "route": [
{ {
"x": 417, "x": 357,
"y": 155.5 "y": 125.5
}, },
{ {
"x": 671, "x": 611,
"y": 155.5 "y": 125.5
} }
], ],
"animated": false, "animated": false,
@ -315,12 +315,12 @@
"labelPercentage": 0, "labelPercentage": 0,
"route": [ "route": [
{ {
"x": 940, "x": 820,
"y": 155.5 "y": 125.5
}, },
{ {
"x": 1278, "x": 1158,
"y": 155.5 "y": 125.5
} }
], ],
"animated": false, "animated": false,
@ -354,12 +354,12 @@
"labelPercentage": 0, "labelPercentage": 0,
"route": [ "route": [
{ {
"x": 1409, "x": 1229,
"y": 155.5 "y": 125.5
}, },
{ {
"x": 1728, "x": 1548,
"y": 155.5 "y": 125.5
} }
], ],
"animated": false, "animated": false,
@ -393,12 +393,12 @@
"labelPercentage": 0, "labelPercentage": 0,
"route": [ "route": [
{ {
"x": 1946, "x": 1706,
"y": 155.5 "y": 125.5
}, },
{ {
"x": 2315, "x": 2075,
"y": 155.5 "y": 125.5
} }
], ],
"animated": false, "animated": false,

View file

@ -3,7 +3,7 @@
id="d2-svg" id="d2-svg"
style="background: white;" style="background: white;"
xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"
width="2737" height="491" viewBox="-90 -90 2737 491"><style type="text/css"> width="2437" height="431" viewBox="-90 -90 2437 431"><style type="text/css">
<![CDATA[ <![CDATA[
.shape { .shape {
shape-rendering: geometricPrecision; shape-rendering: geometricPrecision;
@ -39,12 +39,12 @@ width="2737" height="491" viewBox="-90 -90 2737 491"><style type="text/css">
svgEl.setAttribute("height", height * ratio - 16); svgEl.setAttribute("height", height * ratio - 16);
} }
}); });
]]></script><g id="build_workflow"><g class="shape" ><rect x="12" y="12" width="2533" height="287" style="fill:#E3E9FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text" x="1278.500000" y="45.000000" style="text-anchor:middle;font-size:28px;fill:#0A0F25">lambda-build.yaml</text></g><g id="build_workflow.push"><g class="shape" ><rect x="87" y="87" width="330" height="137" style="fill:#EDF0FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="252.000000" y="162.000000" style="text-anchor:middle;font-size:25px;fill:#0A0F25">Push to main branch</text></g><g id="build_workflow.GHA"><g class="shape" ><rect x="671" y="87" width="269" height="137" style="fill:#EDF0FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="805.500000" y="162.000000" style="text-anchor:middle;font-size:25px;fill:#0A0F25">GitHub Actions</text></g><g id="build_workflow.S3"><g class="shape" ><rect x="1278" y="87" width="131" height="137" style="fill:#EDF0FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="1343.500000" y="162.000000" style="text-anchor:middle;font-size:25px;fill:#0A0F25">S3</text></g><g id="build_workflow.Terraform"><g class="shape" ><rect x="1728" y="87" width="218" height="137" style="fill:#EDF0FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="1837.000000" y="162.000000" style="text-anchor:middle;font-size:25px;fill:#0A0F25">Terraform</text></g><g id="build_workflow.AWS"><g class="shape" ><rect x="2315" y="87" width="155" height="137" style="fill:#EDF0FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="2392.500000" y="162.000000" style="text-anchor:middle;font-size:25px;fill:#0A0F25">AWS</text></g><g id="build_workflow.(push -&gt; GHA)[0]"><marker id="mk-3990223579" markerWidth="10.000000" markerHeight="12.000000" refX="7.000000" refY="6.000000" viewBox="0.000000 0.000000 10.000000 12.000000" orient="auto" markerUnits="userSpaceOnUse"> <polygon class="connection" fill="#0D32B2" stroke-width="2" points="0.000000,0.000000 10.000000,6.000000 0.000000,12.000000" /> </marker><path d="M 419.000000 155.500000 L 667.000000 155.500000" class="connection" style="fill:none;stroke:#0D32B2;stroke-width:2;" marker-end="url(#mk-3990223579)" mask="url(#2089705521)"/><text class="text-italic" x="544.000000" y="161.000000" style="text-anchor:middle;font-size:16px;fill:#676C7E">Triggers</text></g><g id="build_workflow.(GHA -&gt; S3)[0]"><path d="M 942.000000 155.500000 L 1274.000000 155.500000" class="connection" style="fill:none;stroke:#0D32B2;stroke-width:2;" marker-end="url(#mk-3990223579)" mask="url(#2089705521)"/><text class="text-italic" x="1109.000000" y="161.000000" style="text-anchor:middle;font-size:16px;fill:#676C7E">Builds zip &amp; pushes it</text></g><g id="build_workflow.(S3 &lt;-&gt; Terraform)[0]"><marker id="mk-2510427236" markerWidth="10.000000" markerHeight="12.000000" refX="3.000000" refY="6.000000" viewBox="0.000000 0.000000 10.000000 12.000000" orient="auto" markerUnits="userSpaceOnUse"> <polygon class="connection" fill="#0D32B2" stroke-width="2" points="10.000000,0.000000 0.000000,6.000000 10.000000,12.000000" /> </marker><path d="M 1413.000000 155.500000 L 1724.000000 155.500000" class="connection" style="fill:none;stroke:#0D32B2;stroke-width:2;" marker-start="url(#mk-2510427236)" marker-end="url(#mk-3990223579)" mask="url(#2089705521)"/><text class="text-italic" x="1568.500000" y="161.000000" style="text-anchor:middle;font-size:16px;fill:#676C7E">Pulls zip to deploy</text></g><g id="build_workflow.(Terraform -&gt; AWS)[0]"><path d="M 1948.000000 155.500000 L 2311.000000 155.500000" class="connection" style="fill:none;stroke:#0D32B2;stroke-width:2;" marker-end="url(#mk-3990223579)" mask="url(#2089705521)"/><text class="text-italic" x="2130.500000" y="161.000000" style="text-anchor:middle;font-size:16px;fill:#676C7E">Changes the live lambdas</text></g><mask id="2089705521" maskUnits="userSpaceOnUse" x="-100" y="-100" width="2737" height="491"> ]]></script><g id="build_workflow"><g class="shape" ><rect x="12" y="12" width="2233" height="227" style="fill:#E3E9FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text" x="1128.500000" y="45.000000" style="text-anchor:middle;font-size:28px;fill:#0A0F25">lambda-build.yaml</text></g><g id="build_workflow.push"><g class="shape" ><rect x="87" y="87" width="270" height="77" style="fill:#EDF0FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="222.000000" y="134.500000" style="text-anchor:middle;font-size:25px;fill:#0A0F25">Push to main branch</text></g><g id="build_workflow.GHA"><g class="shape" ><rect x="611" y="87" width="209" height="77" style="fill:#EDF0FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="715.500000" y="134.500000" style="text-anchor:middle;font-size:25px;fill:#0A0F25">GitHub Actions</text></g><g id="build_workflow.S3"><g class="shape" ><rect x="1158" y="87" width="71" height="77" style="fill:#EDF0FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="1193.500000" y="134.500000" style="text-anchor:middle;font-size:25px;fill:#0A0F25">S3</text></g><g id="build_workflow.Terraform"><g class="shape" ><rect x="1548" y="87" width="158" height="77" style="fill:#EDF0FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="1627.000000" y="134.500000" style="text-anchor:middle;font-size:25px;fill:#0A0F25">Terraform</text></g><g id="build_workflow.AWS"><g class="shape" ><rect x="2075" y="87" width="95" height="77" style="fill:#EDF0FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="2122.500000" y="134.500000" style="text-anchor:middle;font-size:25px;fill:#0A0F25">AWS</text></g><g id="build_workflow.(push -&gt; GHA)[0]"><marker id="mk-3990223579" markerWidth="10.000000" markerHeight="12.000000" refX="7.000000" refY="6.000000" viewBox="0.000000 0.000000 10.000000 12.000000" orient="auto" markerUnits="userSpaceOnUse"> <polygon class="connection" fill="#0D32B2" stroke-width="2" points="0.000000,0.000000 10.000000,6.000000 0.000000,12.000000" /> </marker><path d="M 359.000000 125.500000 L 607.000000 125.500000" class="connection" style="fill:none;stroke:#0D32B2;stroke-width:2;" marker-end="url(#mk-3990223579)" mask="url(#483332612)"/><text class="text-italic" x="484.000000" y="131.000000" style="text-anchor:middle;font-size:16px;fill:#676C7E">Triggers</text></g><g id="build_workflow.(GHA -&gt; S3)[0]"><path d="M 822.000000 125.500000 L 1154.000000 125.500000" class="connection" style="fill:none;stroke:#0D32B2;stroke-width:2;" marker-end="url(#mk-3990223579)" mask="url(#483332612)"/><text class="text-italic" x="989.000000" y="131.000000" style="text-anchor:middle;font-size:16px;fill:#676C7E">Builds zip &amp; pushes it</text></g><g id="build_workflow.(S3 &lt;-&gt; Terraform)[0]"><marker id="mk-2510427236" markerWidth="10.000000" markerHeight="12.000000" refX="3.000000" refY="6.000000" viewBox="0.000000 0.000000 10.000000 12.000000" orient="auto" markerUnits="userSpaceOnUse"> <polygon class="connection" fill="#0D32B2" stroke-width="2" points="10.000000,0.000000 0.000000,6.000000 10.000000,12.000000" /> </marker><path d="M 1233.000000 125.500000 L 1544.000000 125.500000" class="connection" style="fill:none;stroke:#0D32B2;stroke-width:2;" marker-start="url(#mk-2510427236)" marker-end="url(#mk-3990223579)" mask="url(#483332612)"/><text class="text-italic" x="1388.500000" y="131.000000" style="text-anchor:middle;font-size:16px;fill:#676C7E">Pulls zip to deploy</text></g><g id="build_workflow.(Terraform -&gt; AWS)[0]"><path d="M 1708.000000 125.500000 L 2071.000000 125.500000" class="connection" style="fill:none;stroke:#0D32B2;stroke-width:2;" marker-end="url(#mk-3990223579)" mask="url(#483332612)"/><text class="text-italic" x="1890.500000" y="131.000000" style="text-anchor:middle;font-size:16px;fill:#676C7E">Changes the live lambdas</text></g><mask id="483332612" maskUnits="userSpaceOnUse" x="-100" y="-100" width="2437" height="431">
<rect x="-100" y="-100" width="2737" height="491" fill="white"></rect> <rect x="-100" y="-100" width="2437" height="431" fill="white"></rect>
<rect x="517.000000" y="145.000000" width="54" height="21" fill="black"></rect> <rect x="457.000000" y="115.000000" width="54" height="21" fill="black"></rect>
<rect x="1040.000000" y="145.000000" width="138" height="21" fill="black"></rect> <rect x="920.000000" y="115.000000" width="138" height="21" fill="black"></rect>
<rect x="1509.000000" y="145.000000" width="119" height="21" fill="black"></rect> <rect x="1329.000000" y="115.000000" width="119" height="21" fill="black"></rect>
<rect x="2046.000000" y="145.000000" width="169" height="21" fill="black"></rect> <rect x="1806.000000" y="115.000000" width="169" height="21" fill="black"></rect>
</mask><style type="text/css"><![CDATA[ </mask><style type="text/css"><![CDATA[
.text { .text {
font-family: "font-regular"; font-family: "font-regular";

Before

Width:  |  Height:  |  Size: 795 KiB

After

Width:  |  Height:  |  Size: 795 KiB

View file

@ -9,8 +9,8 @@
"x": 0, "x": 0,
"y": 0 "y": 0
}, },
"width": 151, "width": 91,
"height": 142, "height": 82,
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
"strokeWidth": 2, "strokeWidth": 2,
@ -37,8 +37,8 @@
"italic": false, "italic": false,
"bold": true, "bold": true,
"underline": false, "underline": false,
"labelWidth": 51, "labelWidth": 46,
"labelHeight": 42, "labelHeight": 37,
"labelPosition": "INSIDE_MIDDLE_CENTER", "labelPosition": "INSIDE_MIDDLE_CENTER",
"zIndex": 0, "zIndex": 0,
"level": 1 "level": 1
@ -47,11 +47,11 @@
"id": "eighty\reight", "id": "eighty\reight",
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 211, "x": 151,
"y": 8 "y": 8
}, },
"width": 151, "width": 91,
"height": 126, "height": 66,
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
"strokeWidth": 2, "strokeWidth": 2,
@ -78,8 +78,8 @@
"italic": false, "italic": false,
"bold": true, "bold": true,
"underline": false, "underline": false,
"labelWidth": 51, "labelWidth": 46,
"labelHeight": 26, "labelHeight": 21,
"labelPosition": "INSIDE_MIDDLE_CENTER", "labelPosition": "INSIDE_MIDDLE_CENTER",
"zIndex": 0, "zIndex": 0,
"level": 1 "level": 1
@ -88,11 +88,11 @@
"id": "\"seventy\r\\nseven\"", "id": "\"seventy\r\\nseven\"",
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 422, "x": 302,
"y": 0 "y": 0
}, },
"width": 162, "width": 102,
"height": 142, "height": 82,
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
"strokeWidth": 2, "strokeWidth": 2,
@ -119,8 +119,8 @@
"italic": false, "italic": false,
"bold": true, "bold": true,
"underline": false, "underline": false,
"labelWidth": 62, "labelWidth": 57,
"labelHeight": 42, "labelHeight": 37,
"labelPosition": "INSIDE_MIDDLE_CENTER", "labelPosition": "INSIDE_MIDDLE_CENTER",
"zIndex": 0, "zIndex": 0,
"level": 1 "level": 1
@ -129,11 +129,11 @@
"id": "\"a\\\\yode\"", "id": "\"a\\\\yode\"",
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 644, "x": 464,
"y": 8 "y": 8
}, },
"width": 154, "width": 94,
"height": 126, "height": 66,
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
"strokeWidth": 2, "strokeWidth": 2,
@ -160,8 +160,8 @@
"italic": false, "italic": false,
"bold": true, "bold": true,
"underline": false, "underline": false,
"labelWidth": 54, "labelWidth": 49,
"labelHeight": 26, "labelHeight": 21,
"labelPosition": "INSIDE_MIDDLE_CENTER", "labelPosition": "INSIDE_MIDDLE_CENTER",
"zIndex": 0, "zIndex": 0,
"level": 1 "level": 1
@ -170,11 +170,11 @@
"id": "there", "id": "there",
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 864, "x": 624,
"y": 242 "y": 182
}, },
"width": 143, "width": 83,
"height": 126, "height": 66,
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
"strokeWidth": 2, "strokeWidth": 2,
@ -201,8 +201,8 @@
"italic": false, "italic": false,
"bold": true, "bold": true,
"underline": false, "underline": false,
"labelWidth": 43, "labelWidth": 38,
"labelHeight": 26, "labelHeight": 21,
"labelPosition": "INSIDE_MIDDLE_CENTER", "labelPosition": "INSIDE_MIDDLE_CENTER",
"zIndex": 0, "zIndex": 0,
"level": 1 "level": 1
@ -211,11 +211,11 @@
"id": "'a\\\"ode'", "id": "'a\\\"ode'",
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 858, "x": 618,
"y": 8 "y": 8
}, },
"width": 154, "width": 94,
"height": 126, "height": 66,
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
"strokeWidth": 2, "strokeWidth": 2,
@ -242,8 +242,8 @@
"italic": false, "italic": false,
"bold": true, "bold": true,
"underline": false, "underline": false,
"labelWidth": 54, "labelWidth": 49,
"labelHeight": 26, "labelHeight": 21,
"labelPosition": "INSIDE_MIDDLE_CENTER", "labelPosition": "INSIDE_MIDDLE_CENTER",
"zIndex": 0, "zIndex": 0,
"level": 1 "level": 1
@ -252,11 +252,11 @@
"id": "\"a\\\\node\"", "id": "\"a\\\\node\"",
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 1072, "x": 772,
"y": 8 "y": 8
}, },
"width": 155, "width": 95,
"height": 126, "height": 66,
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
"strokeWidth": 2, "strokeWidth": 2,
@ -283,8 +283,8 @@
"italic": false, "italic": false,
"bold": true, "bold": true,
"underline": false, "underline": false,
"labelWidth": 55, "labelWidth": 50,
"labelHeight": 26, "labelHeight": 21,
"labelPosition": "INSIDE_MIDDLE_CENTER", "labelPosition": "INSIDE_MIDDLE_CENTER",
"zIndex": 0, "zIndex": 0,
"level": 1 "level": 1
@ -317,20 +317,20 @@
"labelPercentage": 0, "labelPercentage": 0,
"route": [ "route": [
{ {
"x": 721, "x": 511,
"y": 134 "y": 74
}, },
{ {
"x": 721, "x": 511,
"y": 180.4 "y": 120.4
}, },
{ {
"x": 749.5, "x": 533.5,
"y": 207.04906542056074 "y": 144.12662337662337
}, },
{ {
"x": 863.5, "x": 623.5,
"y": 267.24532710280374 "y": 192.63311688311688
} }
], ],
"isCurve": true, "isCurve": true,
@ -365,20 +365,20 @@
"labelPercentage": 0, "labelPercentage": 0,
"route": [ "route": [
{ {
"x": 935, "x": 665,
"y": 134 "y": 74
}, },
{ {
"x": 935, "x": 665,
"y": 180.4 "y": 120.4
}, },
{ {
"x": 935, "x": 665,
"y": 202 "y": 142
}, },
{ {
"x": 935, "x": 665,
"y": 242 "y": 182
} }
], ],
"isCurve": true, "isCurve": true,
@ -413,20 +413,20 @@
"labelPercentage": 0, "labelPercentage": 0,
"route": [ "route": [
{ {
"x": 1149.5, "x": 819.5,
"y": 134 "y": 74
}, },
{ {
"x": 1149.5, "x": 819.5,
"y": 180.4 "y": 120.4
}, },
{ {
"x": 1120.9, "x": 796.9,
"y": 207 "y": 144
}, },
{ {
"x": 1006.5, "x": 706.5,
"y": 267 "y": 192
} }
], ],
"isCurve": true, "isCurve": true,

View file

@ -3,7 +3,7 @@
id="d2-svg" id="d2-svg"
style="background: white;" style="background: white;"
xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"
width="1431" height="572" viewBox="-102 -102 1431 572"><style type="text/css"> width="1071" height="452" viewBox="-102 -102 1071 452"><style type="text/css">
<![CDATA[ <![CDATA[
.shape { .shape {
shape-rendering: geometricPrecision; shape-rendering: geometricPrecision;
@ -39,8 +39,8 @@ width="1431" height="572" viewBox="-102 -102 1431 572"><style type="text/css">
svgEl.setAttribute("height", height * ratio - 16); svgEl.setAttribute("height", height * ratio - 16);
} }
}); });
]]></script><g id="&#34;ninety\nnine&#34;"><g class="shape" ><rect x="0" y="0" width="151" height="142" style="fill:#F7F8FE;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="75.500000" y="66.000000" style="text-anchor:middle;font-size:16px;fill:#0A0F25"><tspan x="75.500000" dy="0.000000">ninety</tspan><tspan x="75.500000" dy="21.000000">nine</tspan></text></g><g id="eighty&#xD;eight"><g class="shape" ><rect x="211" y="8" width="151" height="126" style="fill:#F7F8FE;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="286.500000" y="74.000000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">eighty&#xD;eight</text></g><g id="&#34;seventy&#xD;\nseven&#34;"><g class="shape" ><rect x="422" y="0" width="162" height="142" style="fill:#F7F8FE;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="503.000000" y="66.000000" style="text-anchor:middle;font-size:16px;fill:#0A0F25"><tspan x="503.000000" dy="0.000000">seventy&#xD;</tspan><tspan x="503.000000" dy="21.000000">seven</tspan></text></g><g id="&#34;a\\yode&#34;"><g class="shape" ><rect x="644" y="8" width="154" height="126" style="fill:#F7F8FE;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="721.000000" y="74.000000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">a\yode</text></g><g id="there"><g class="shape" ><rect x="864" y="242" width="143" height="126" style="fill:#F7F8FE;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="935.500000" y="308.000000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">there</text></g><g id="&#39;a\&#34;ode&#39;"><g class="shape" ><rect x="858" y="8" width="154" height="126" style="fill:#F7F8FE;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="935.000000" y="74.000000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">a\&#34;ode</text></g><g id="&#34;a\\node&#34;"><g class="shape" ><rect x="1072" y="8" width="155" height="126" style="fill:#F7F8FE;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="1149.500000" y="74.000000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">a\node</text></g><g id="(&#34;a\\yode&#34; -&gt; there)[0]"><marker id="mk-3990223579" markerWidth="10.000000" markerHeight="12.000000" refX="7.000000" refY="6.000000" viewBox="0.000000 0.000000 10.000000 12.000000" orient="auto" markerUnits="userSpaceOnUse"> <polygon class="connection" fill="#0D32B2" stroke-width="2" points="0.000000,0.000000 10.000000,6.000000 0.000000,12.000000" /> </marker><path d="M 721.000000 136.000000 C 721.000000 180.400000 749.500000 207.049065 859.962840 265.377574" class="connection" style="fill:none;stroke:#0D32B2;stroke-width:2;" marker-end="url(#mk-3990223579)" mask="url(#2074513119)"/></g><g id="(&#39;a\&#34;ode&#39; -&gt; there)[0]"><path d="M 935.000000 136.000000 C 935.000000 180.400000 935.000000 202.000000 935.000000 238.000000" class="connection" style="fill:none;stroke:#0D32B2;stroke-width:2;" marker-end="url(#mk-3990223579)" mask="url(#2074513119)"/></g><g id="(&#34;a\\node&#34; -&gt; there)[0]"><path d="M 1149.500000 136.000000 C 1149.500000 180.400000 1120.900000 207.000000 1010.042356 265.142121" class="connection" style="fill:none;stroke:#0D32B2;stroke-width:2;" marker-end="url(#mk-3990223579)" mask="url(#2074513119)"/></g><mask id="2074513119" maskUnits="userSpaceOnUse" x="-100" y="-100" width="1431" height="572"> ]]></script><g id="&#34;ninety\nnine&#34;"><g class="shape" ><rect x="0" y="0" width="91" height="82" style="fill:#F7F8FE;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="45.500000" y="38.500000" style="text-anchor:middle;font-size:16px;fill:#0A0F25"><tspan x="45.500000" dy="0.000000">ninety</tspan><tspan x="45.500000" dy="18.500000">nine</tspan></text></g><g id="eighty&#xD;eight"><g class="shape" ><rect x="151" y="8" width="91" height="66" style="fill:#F7F8FE;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="196.500000" y="46.500000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">eighty&#xD;eight</text></g><g id="&#34;seventy&#xD;\nseven&#34;"><g class="shape" ><rect x="302" y="0" width="102" height="82" style="fill:#F7F8FE;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="353.000000" y="38.500000" style="text-anchor:middle;font-size:16px;fill:#0A0F25"><tspan x="353.000000" dy="0.000000">seventy&#xD;</tspan><tspan x="353.000000" dy="18.500000">seven</tspan></text></g><g id="&#34;a\\yode&#34;"><g class="shape" ><rect x="464" y="8" width="94" height="66" style="fill:#F7F8FE;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="511.000000" y="46.500000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">a\yode</text></g><g id="there"><g class="shape" ><rect x="624" y="182" width="83" height="66" style="fill:#F7F8FE;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="665.500000" y="220.500000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">there</text></g><g id="&#39;a\&#34;ode&#39;"><g class="shape" ><rect x="618" y="8" width="94" height="66" style="fill:#F7F8FE;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="665.000000" y="46.500000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">a\&#34;ode</text></g><g id="&#34;a\\node&#34;"><g class="shape" ><rect x="772" y="8" width="95" height="66" style="fill:#F7F8FE;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="819.500000" y="46.500000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">a\node</text></g><g id="(&#34;a\\yode&#34; -&gt; there)[0]"><marker id="mk-3990223579" markerWidth="10.000000" markerHeight="12.000000" refX="7.000000" refY="6.000000" viewBox="0.000000 0.000000 10.000000 12.000000" orient="auto" markerUnits="userSpaceOnUse"> <polygon class="connection" fill="#0D32B2" stroke-width="2" points="0.000000,0.000000 10.000000,6.000000 0.000000,12.000000" /> </marker><path d="M 511.000000 76.000000 C 511.000000 120.400000 533.500000 144.126623 619.978850 190.735354" class="connection" style="fill:none;stroke:#0D32B2;stroke-width:2;" marker-end="url(#mk-3990223579)" mask="url(#1631294189)"/></g><g id="(&#39;a\&#34;ode&#39; -&gt; there)[0]"><path d="M 665.000000 76.000000 C 665.000000 120.400000 665.000000 142.000000 665.000000 178.000000" class="connection" style="fill:none;stroke:#0D32B2;stroke-width:2;" marker-end="url(#mk-3990223579)" mask="url(#1631294189)"/></g><g id="(&#34;a\\node&#34; -&gt; there)[0]"><path d="M 819.500000 76.000000 C 819.500000 120.400000 796.900000 144.000000 710.032868 190.124141" class="connection" style="fill:none;stroke:#0D32B2;stroke-width:2;" marker-end="url(#mk-3990223579)" mask="url(#1631294189)"/></g><mask id="1631294189" maskUnits="userSpaceOnUse" x="-100" y="-100" width="1071" height="452">
<rect x="-100" y="-100" width="1431" height="572" fill="white"></rect> <rect x="-100" y="-100" width="1071" height="452" fill="white"></rect>
</mask><style type="text/css"><![CDATA[ </mask><style type="text/css"><![CDATA[
.text-bold { .text-bold {

Before

Width:  |  Height:  |  Size: 327 KiB

After

Width:  |  Height:  |  Size: 327 KiB

View file

@ -9,8 +9,8 @@
"x": 12, "x": 12,
"y": 12 "y": 12
}, },
"width": 151, "width": 91,
"height": 142, "height": 82,
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
"strokeWidth": 2, "strokeWidth": 2,
@ -37,8 +37,8 @@
"italic": false, "italic": false,
"bold": true, "bold": true,
"underline": false, "underline": false,
"labelWidth": 51, "labelWidth": 46,
"labelHeight": 42, "labelHeight": 37,
"labelPosition": "INSIDE_MIDDLE_CENTER", "labelPosition": "INSIDE_MIDDLE_CENTER",
"zIndex": 0, "zIndex": 0,
"level": 1 "level": 1
@ -47,11 +47,11 @@
"id": "eighty\reight", "id": "eighty\reight",
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 183, "x": 123,
"y": 20 "y": 20
}, },
"width": 151, "width": 91,
"height": 126, "height": 66,
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
"strokeWidth": 2, "strokeWidth": 2,
@ -78,8 +78,8 @@
"italic": false, "italic": false,
"bold": true, "bold": true,
"underline": false, "underline": false,
"labelWidth": 51, "labelWidth": 46,
"labelHeight": 26, "labelHeight": 21,
"labelPosition": "INSIDE_MIDDLE_CENTER", "labelPosition": "INSIDE_MIDDLE_CENTER",
"zIndex": 0, "zIndex": 0,
"level": 1 "level": 1
@ -88,11 +88,11 @@
"id": "\"seventy\r\\nseven\"", "id": "\"seventy\r\\nseven\"",
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 354, "x": 234,
"y": 12 "y": 12
}, },
"width": 162, "width": 102,
"height": 142, "height": 82,
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
"strokeWidth": 2, "strokeWidth": 2,
@ -119,8 +119,8 @@
"italic": false, "italic": false,
"bold": true, "bold": true,
"underline": false, "underline": false,
"labelWidth": 62, "labelWidth": 57,
"labelHeight": 42, "labelHeight": 37,
"labelPosition": "INSIDE_MIDDLE_CENTER", "labelPosition": "INSIDE_MIDDLE_CENTER",
"zIndex": 0, "zIndex": 0,
"level": 1 "level": 1
@ -129,11 +129,11 @@
"id": "\"a\\\\yode\"", "id": "\"a\\\\yode\"",
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 536, "x": 356,
"y": 28 "y": 28
}, },
"width": 154, "width": 94,
"height": 126, "height": 66,
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
"strokeWidth": 2, "strokeWidth": 2,
@ -160,8 +160,8 @@
"italic": false, "italic": false,
"bold": true, "bold": true,
"underline": false, "underline": false,
"labelWidth": 54, "labelWidth": 49,
"labelHeight": 26, "labelHeight": 21,
"labelPosition": "INSIDE_MIDDLE_CENTER", "labelPosition": "INSIDE_MIDDLE_CENTER",
"zIndex": 0, "zIndex": 0,
"level": 1 "level": 1
@ -170,11 +170,11 @@
"id": "there", "id": "there",
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 715, "x": 475,
"y": 254 "y": 194
}, },
"width": 143, "width": 83,
"height": 126, "height": 66,
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
"strokeWidth": 2, "strokeWidth": 2,
@ -201,8 +201,8 @@
"italic": false, "italic": false,
"bold": true, "bold": true,
"underline": false, "underline": false,
"labelWidth": 43, "labelWidth": 38,
"labelHeight": 26, "labelHeight": 21,
"labelPosition": "INSIDE_MIDDLE_CENTER", "labelPosition": "INSIDE_MIDDLE_CENTER",
"zIndex": 0, "zIndex": 0,
"level": 1 "level": 1
@ -211,11 +211,11 @@
"id": "'a\\\"ode'", "id": "'a\\\"ode'",
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 710, "x": 470,
"y": 28 "y": 28
}, },
"width": 154, "width": 94,
"height": 126, "height": 66,
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
"strokeWidth": 2, "strokeWidth": 2,
@ -242,8 +242,8 @@
"italic": false, "italic": false,
"bold": true, "bold": true,
"underline": false, "underline": false,
"labelWidth": 54, "labelWidth": 49,
"labelHeight": 26, "labelHeight": 21,
"labelPosition": "INSIDE_MIDDLE_CENTER", "labelPosition": "INSIDE_MIDDLE_CENTER",
"zIndex": 0, "zIndex": 0,
"level": 1 "level": 1
@ -252,11 +252,11 @@
"id": "\"a\\\\node\"", "id": "\"a\\\\node\"",
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 884, "x": 584,
"y": 28 "y": 28
}, },
"width": 155, "width": 95,
"height": 126, "height": 66,
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
"strokeWidth": 2, "strokeWidth": 2,
@ -283,8 +283,8 @@
"italic": false, "italic": false,
"bold": true, "bold": true,
"underline": false, "underline": false,
"labelWidth": 55, "labelWidth": 50,
"labelHeight": 26, "labelHeight": 21,
"labelPosition": "INSIDE_MIDDLE_CENTER", "labelPosition": "INSIDE_MIDDLE_CENTER",
"zIndex": 0, "zIndex": 0,
"level": 1 "level": 1
@ -317,20 +317,20 @@
"labelPercentage": 0, "labelPercentage": 0,
"route": [ "route": [
{ {
"x": 613, "x": 403,
"y": 154 "y": 94
}, },
{ {
"x": 613, "x": 403,
"y": 204 "y": 144
}, },
{ {
"x": 751.25, "x": 496.25,
"y": 204 "y": 144
}, },
{ {
"x": 751.25, "x": 496.25,
"y": 254 "y": 194
} }
], ],
"animated": false, "animated": false,
@ -364,12 +364,12 @@
"labelPercentage": 0, "labelPercentage": 0,
"route": [ "route": [
{ {
"x": 787, "x": 517,
"y": 154 "y": 94
}, },
{ {
"x": 787, "x": 517,
"y": 254 "y": 194
} }
], ],
"animated": false, "animated": false,
@ -403,20 +403,20 @@
"labelPercentage": 0, "labelPercentage": 0,
"route": [ "route": [
{ {
"x": 961.5, "x": 631.5,
"y": 154 "y": 94
}, },
{ {
"x": 961.5, "x": 631.5,
"y": 204 "y": 144
}, },
{ {
"x": 822.75, "x": 537.75,
"y": 204 "y": 144
}, },
{ {
"x": 822.75, "x": 537.75,
"y": 254 "y": 194
} }
], ],
"animated": false, "animated": false,

View file

@ -3,7 +3,7 @@
id="d2-svg" id="d2-svg"
style="background: white;" style="background: white;"
xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"
width="1231" height="572" viewBox="-90 -90 1231 572"><style type="text/css"> width="871" height="452" viewBox="-90 -90 871 452"><style type="text/css">
<![CDATA[ <![CDATA[
.shape { .shape {
shape-rendering: geometricPrecision; shape-rendering: geometricPrecision;
@ -39,8 +39,8 @@ width="1231" height="572" viewBox="-90 -90 1231 572"><style type="text/css">
svgEl.setAttribute("height", height * ratio - 16); svgEl.setAttribute("height", height * ratio - 16);
} }
}); });
]]></script><g id="&#34;ninety\nnine&#34;"><g class="shape" ><rect x="12" y="12" width="151" height="142" style="fill:#F7F8FE;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="87.500000" y="78.000000" style="text-anchor:middle;font-size:16px;fill:#0A0F25"><tspan x="87.500000" dy="0.000000">ninety</tspan><tspan x="87.500000" dy="21.000000">nine</tspan></text></g><g id="eighty&#xD;eight"><g class="shape" ><rect x="183" y="20" width="151" height="126" style="fill:#F7F8FE;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="258.500000" y="86.000000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">eighty&#xD;eight</text></g><g id="&#34;seventy&#xD;\nseven&#34;"><g class="shape" ><rect x="354" y="12" width="162" height="142" style="fill:#F7F8FE;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="435.000000" y="78.000000" style="text-anchor:middle;font-size:16px;fill:#0A0F25"><tspan x="435.000000" dy="0.000000">seventy&#xD;</tspan><tspan x="435.000000" dy="21.000000">seven</tspan></text></g><g id="&#34;a\\yode&#34;"><g class="shape" ><rect x="536" y="28" width="154" height="126" style="fill:#F7F8FE;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="613.000000" y="94.000000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">a\yode</text></g><g id="there"><g class="shape" ><rect x="715" y="254" width="143" height="126" style="fill:#F7F8FE;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="786.500000" y="320.000000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">there</text></g><g id="&#39;a\&#34;ode&#39;"><g class="shape" ><rect x="710" y="28" width="154" height="126" style="fill:#F7F8FE;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="787.000000" y="94.000000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">a\&#34;ode</text></g><g id="&#34;a\\node&#34;"><g class="shape" ><rect x="884" y="28" width="155" height="126" style="fill:#F7F8FE;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="961.500000" y="94.000000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">a\node</text></g><g id="(&#34;a\\yode&#34; -&gt; there)[0]"><marker id="mk-3990223579" markerWidth="10.000000" markerHeight="12.000000" refX="7.000000" refY="6.000000" viewBox="0.000000 0.000000 10.000000 12.000000" orient="auto" markerUnits="userSpaceOnUse"> <polygon class="connection" fill="#0D32B2" stroke-width="2" points="0.000000,0.000000 10.000000,6.000000 0.000000,12.000000" /> </marker><path d="M 613.000000 156.000000 L 613.000000 194.000000 S 613.000000 204.000000 623.000000 204.000000 L 741.250000 204.000000 S 751.250000 204.000000 751.250000 214.000000 L 751.250000 250.000000" class="connection" style="fill:none;stroke:#0D32B2;stroke-width:2;" marker-end="url(#mk-3990223579)" mask="url(#498943364)"/></g><g id="(&#39;a\&#34;ode&#39; -&gt; there)[0]"><path d="M 787.000000 156.000000 L 787.000000 250.000000" class="connection" style="fill:none;stroke:#0D32B2;stroke-width:2;" marker-end="url(#mk-3990223579)" mask="url(#498943364)"/></g><g id="(&#34;a\\node&#34; -&gt; there)[0]"><path d="M 961.500000 156.000000 L 961.500000 194.000000 S 961.500000 204.000000 951.500000 204.000000 L 832.750000 204.000000 S 822.750000 204.000000 822.750000 214.000000 L 822.750000 250.000000" class="connection" style="fill:none;stroke:#0D32B2;stroke-width:2;" marker-end="url(#mk-3990223579)" mask="url(#498943364)"/></g><mask id="498943364" maskUnits="userSpaceOnUse" x="-100" y="-100" width="1231" height="572"> ]]></script><g id="&#34;ninety\nnine&#34;"><g class="shape" ><rect x="12" y="12" width="91" height="82" style="fill:#F7F8FE;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="57.500000" y="50.500000" style="text-anchor:middle;font-size:16px;fill:#0A0F25"><tspan x="57.500000" dy="0.000000">ninety</tspan><tspan x="57.500000" dy="18.500000">nine</tspan></text></g><g id="eighty&#xD;eight"><g class="shape" ><rect x="123" y="20" width="91" height="66" style="fill:#F7F8FE;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="168.500000" y="58.500000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">eighty&#xD;eight</text></g><g id="&#34;seventy&#xD;\nseven&#34;"><g class="shape" ><rect x="234" y="12" width="102" height="82" style="fill:#F7F8FE;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="285.000000" y="50.500000" style="text-anchor:middle;font-size:16px;fill:#0A0F25"><tspan x="285.000000" dy="0.000000">seventy&#xD;</tspan><tspan x="285.000000" dy="18.500000">seven</tspan></text></g><g id="&#34;a\\yode&#34;"><g class="shape" ><rect x="356" y="28" width="94" height="66" style="fill:#F7F8FE;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="403.000000" y="66.500000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">a\yode</text></g><g id="there"><g class="shape" ><rect x="475" y="194" width="83" height="66" style="fill:#F7F8FE;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="516.500000" y="232.500000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">there</text></g><g id="&#39;a\&#34;ode&#39;"><g class="shape" ><rect x="470" y="28" width="94" height="66" style="fill:#F7F8FE;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="517.000000" y="66.500000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">a\&#34;ode</text></g><g id="&#34;a\\node&#34;"><g class="shape" ><rect x="584" y="28" width="95" height="66" style="fill:#F7F8FE;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="631.500000" y="66.500000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">a\node</text></g><g id="(&#34;a\\yode&#34; -&gt; there)[0]"><marker id="mk-3990223579" markerWidth="10.000000" markerHeight="12.000000" refX="7.000000" refY="6.000000" viewBox="0.000000 0.000000 10.000000 12.000000" orient="auto" markerUnits="userSpaceOnUse"> <polygon class="connection" fill="#0D32B2" stroke-width="2" points="0.000000,0.000000 10.000000,6.000000 0.000000,12.000000" /> </marker><path d="M 403.000000 96.000000 L 403.000000 134.000000 S 403.000000 144.000000 413.000000 144.000000 L 486.250000 144.000000 S 496.250000 144.000000 496.250000 154.000000 L 496.250000 190.000000" class="connection" style="fill:none;stroke:#0D32B2;stroke-width:2;" marker-end="url(#mk-3990223579)" mask="url(#1355253866)"/></g><g id="(&#39;a\&#34;ode&#39; -&gt; there)[0]"><path d="M 517.000000 96.000000 L 517.000000 190.000000" class="connection" style="fill:none;stroke:#0D32B2;stroke-width:2;" marker-end="url(#mk-3990223579)" mask="url(#1355253866)"/></g><g id="(&#34;a\\node&#34; -&gt; there)[0]"><path d="M 631.500000 96.000000 L 631.500000 134.000000 S 631.500000 144.000000 621.500000 144.000000 L 547.750000 144.000000 S 537.750000 144.000000 537.750000 154.000000 L 537.750000 190.000000" class="connection" style="fill:none;stroke:#0D32B2;stroke-width:2;" marker-end="url(#mk-3990223579)" mask="url(#1355253866)"/></g><mask id="1355253866" maskUnits="userSpaceOnUse" x="-100" y="-100" width="871" height="452">
<rect x="-100" y="-100" width="1231" height="572" fill="white"></rect> <rect x="-100" y="-100" width="871" height="452" fill="white"></rect>
</mask><style type="text/css"><![CDATA[ </mask><style type="text/css"><![CDATA[
.text-bold { .text-bold {

Before

Width:  |  Height:  |  Size: 328 KiB

After

Width:  |  Height:  |  Size: 327 KiB

View file

@ -9,8 +9,8 @@
"x": 0, "x": 0,
"y": 0 "y": 0
}, },
"width": 430, "width": 370,
"height": 1672, "height": 1372,
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
"strokeWidth": 2, "strokeWidth": 2,
@ -37,8 +37,8 @@
"italic": false, "italic": false,
"bold": false, "bold": false,
"underline": false, "underline": false,
"labelWidth": 226, "labelWidth": 221,
"labelHeight": 41, "labelHeight": 36,
"labelPosition": "INSIDE_TOP_CENTER", "labelPosition": "INSIDE_TOP_CENTER",
"zIndex": 0, "zIndex": 0,
"level": 1 "level": 1
@ -50,8 +50,8 @@
"x": 50, "x": 50,
"y": 73 "y": 73
}, },
"width": 330, "width": 270,
"height": 137, "height": 77,
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
"strokeWidth": 2, "strokeWidth": 2,
@ -78,8 +78,8 @@
"italic": false, "italic": false,
"bold": true, "bold": true,
"underline": false, "underline": false,
"labelWidth": 230, "labelWidth": 225,
"labelHeight": 37, "labelHeight": 32,
"labelPosition": "INSIDE_MIDDLE_CENTER", "labelPosition": "INSIDE_MIDDLE_CENTER",
"zIndex": 0, "zIndex": 0,
"level": 2 "level": 2
@ -89,10 +89,10 @@
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 81, "x": 81,
"y": 382 "y": 322
}, },
"width": 269, "width": 209,
"height": 137, "height": 77,
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
"strokeWidth": 2, "strokeWidth": 2,
@ -119,8 +119,8 @@
"italic": false, "italic": false,
"bold": true, "bold": true,
"underline": false, "underline": false,
"labelWidth": 169, "labelWidth": 164,
"labelHeight": 37, "labelHeight": 32,
"labelPosition": "INSIDE_MIDDLE_CENTER", "labelPosition": "INSIDE_MIDDLE_CENTER",
"zIndex": 0, "zIndex": 0,
"level": 2 "level": 2
@ -130,10 +130,10 @@
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 150, "x": 150,
"y": 771 "y": 651
}, },
"width": 131, "width": 71,
"height": 137, "height": 77,
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
"strokeWidth": 2, "strokeWidth": 2,
@ -160,8 +160,8 @@
"italic": false, "italic": false,
"bold": true, "bold": true,
"underline": false, "underline": false,
"labelWidth": 31, "labelWidth": 26,
"labelHeight": 37, "labelHeight": 32,
"labelPosition": "INSIDE_MIDDLE_CENTER", "labelPosition": "INSIDE_MIDDLE_CENTER",
"zIndex": 0, "zIndex": 0,
"level": 2 "level": 2
@ -171,10 +171,10 @@
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 106, "x": 106,
"y": 1153 "y": 973
}, },
"width": 218, "width": 158,
"height": 137, "height": 77,
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
"strokeWidth": 2, "strokeWidth": 2,
@ -201,8 +201,8 @@
"italic": false, "italic": false,
"bold": true, "bold": true,
"underline": false, "underline": false,
"labelWidth": 118, "labelWidth": 113,
"labelHeight": 37, "labelHeight": 32,
"labelPosition": "INSIDE_MIDDLE_CENTER", "labelPosition": "INSIDE_MIDDLE_CENTER",
"zIndex": 0, "zIndex": 0,
"level": 2 "level": 2
@ -212,10 +212,10 @@
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 138, "x": 138,
"y": 1462 "y": 1222
}, },
"width": 155, "width": 95,
"height": 137, "height": 77,
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
"strokeWidth": 2, "strokeWidth": 2,
@ -242,8 +242,8 @@
"italic": false, "italic": false,
"bold": true, "bold": true,
"underline": false, "underline": false,
"labelWidth": 55, "labelWidth": 50,
"labelHeight": 37, "labelHeight": 32,
"labelPosition": "INSIDE_MIDDLE_CENTER", "labelPosition": "INSIDE_MIDDLE_CENTER",
"zIndex": 0, "zIndex": 0,
"level": 2 "level": 2
@ -252,11 +252,11 @@
"id": "deploy_workflow", "id": "deploy_workflow",
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 470, "x": 410,
"y": 0 "y": 0
}, },
"width": 371, "width": 311,
"height": 981, "height": 801,
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
"strokeWidth": 2, "strokeWidth": 2,
@ -283,8 +283,8 @@
"italic": false, "italic": false,
"bold": false, "bold": false,
"underline": false, "underline": false,
"labelWidth": 247, "labelWidth": 242,
"labelHeight": 41, "labelHeight": 36,
"labelPosition": "INSIDE_TOP_CENTER", "labelPosition": "INSIDE_TOP_CENTER",
"zIndex": 0, "zIndex": 0,
"level": 1 "level": 1
@ -293,11 +293,11 @@
"id": "deploy_workflow.manual", "id": "deploy_workflow.manual",
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 520, "x": 460,
"y": 73 "y": 73
}, },
"width": 271, "width": 211,
"height": 137, "height": 77,
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
"strokeWidth": 2, "strokeWidth": 2,
@ -324,8 +324,8 @@
"italic": false, "italic": false,
"bold": true, "bold": true,
"underline": false, "underline": false,
"labelWidth": 171, "labelWidth": 166,
"labelHeight": 37, "labelHeight": 32,
"labelPosition": "INSIDE_MIDDLE_CENTER", "labelPosition": "INSIDE_MIDDLE_CENTER",
"zIndex": 0, "zIndex": 0,
"level": 2 "level": 2
@ -334,11 +334,11 @@
"id": "deploy_workflow.GHA", "id": "deploy_workflow.GHA",
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 521, "x": 461,
"y": 382 "y": 322
}, },
"width": 269, "width": 209,
"height": 137, "height": 77,
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
"strokeWidth": 2, "strokeWidth": 2,
@ -365,8 +365,8 @@
"italic": false, "italic": false,
"bold": true, "bold": true,
"underline": false, "underline": false,
"labelWidth": 169, "labelWidth": 164,
"labelHeight": 37, "labelHeight": 32,
"labelPosition": "INSIDE_MIDDLE_CENTER", "labelPosition": "INSIDE_MIDDLE_CENTER",
"zIndex": 0, "zIndex": 0,
"level": 2 "level": 2
@ -375,11 +375,11 @@
"id": "deploy_workflow.AWS", "id": "deploy_workflow.AWS",
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 578, "x": 518,
"y": 771 "y": 651
}, },
"width": 155, "width": 95,
"height": 137, "height": 77,
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
"strokeWidth": 2, "strokeWidth": 2,
@ -406,8 +406,8 @@
"italic": false, "italic": false,
"bold": true, "bold": true,
"underline": false, "underline": false,
"labelWidth": 55, "labelWidth": 50,
"labelHeight": 37, "labelHeight": 32,
"labelPosition": "INSIDE_MIDDLE_CENTER", "labelPosition": "INSIDE_MIDDLE_CENTER",
"zIndex": 0, "zIndex": 0,
"level": 2 "level": 2
@ -416,11 +416,11 @@
"id": "apollo_workflow", "id": "apollo_workflow",
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 881, "x": 761,
"y": 0 "y": 0
}, },
"width": 613, "width": 613,
"height": 981, "height": 801,
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
"strokeWidth": 2, "strokeWidth": 2,
@ -447,8 +447,8 @@
"italic": false, "italic": false,
"bold": false, "bold": false,
"underline": false, "underline": false,
"labelWidth": 232, "labelWidth": 227,
"labelHeight": 41, "labelHeight": 36,
"labelPosition": "INSIDE_TOP_CENTER", "labelPosition": "INSIDE_TOP_CENTER",
"zIndex": 0, "zIndex": 0,
"level": 1 "level": 1
@ -457,11 +457,11 @@
"id": "apollo_workflow.apollo", "id": "apollo_workflow.apollo",
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 1069, "x": 979,
"y": 73 "y": 73
}, },
"width": 238, "width": 178,
"height": 137, "height": 77,
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
"strokeWidth": 2, "strokeWidth": 2,
@ -488,8 +488,8 @@
"italic": false, "italic": false,
"bold": true, "bold": true,
"underline": false, "underline": false,
"labelWidth": 138, "labelWidth": 133,
"labelHeight": 37, "labelHeight": 32,
"labelPosition": "INSIDE_MIDDLE_CENTER", "labelPosition": "INSIDE_MIDDLE_CENTER",
"zIndex": 0, "zIndex": 0,
"level": 2 "level": 2
@ -498,11 +498,11 @@
"id": "apollo_workflow.GHA", "id": "apollo_workflow.GHA",
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 1053, "x": 963,
"y": 382 "y": 322
}, },
"width": 269, "width": 209,
"height": 137, "height": 77,
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
"strokeWidth": 2, "strokeWidth": 2,
@ -529,8 +529,8 @@
"italic": false, "italic": false,
"bold": true, "bold": true,
"underline": false, "underline": false,
"labelWidth": 169, "labelWidth": 164,
"labelHeight": 37, "labelHeight": 32,
"labelPosition": "INSIDE_MIDDLE_CENTER", "labelPosition": "INSIDE_MIDDLE_CENTER",
"zIndex": 0, "zIndex": 0,
"level": 2 "level": 2
@ -539,11 +539,11 @@
"id": "apollo_workflow.AWS", "id": "apollo_workflow.AWS",
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 1110, "x": 1020,
"y": 771 "y": 651
}, },
"width": 155, "width": 95,
"height": 137, "height": 77,
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
"strokeWidth": 2, "strokeWidth": 2,
@ -570,8 +570,8 @@
"italic": false, "italic": false,
"bold": true, "bold": true,
"underline": false, "underline": false,
"labelWidth": 55, "labelWidth": 50,
"labelHeight": 37, "labelHeight": 32,
"labelPosition": "INSIDE_MIDDLE_CENTER", "labelPosition": "INSIDE_MIDDLE_CENTER",
"zIndex": 0, "zIndex": 0,
"level": 2 "level": 2
@ -604,20 +604,20 @@
"labelPercentage": 0, "labelPercentage": 0,
"route": [ "route": [
{ {
"x": 215, "x": 185,
"y": 210 "y": 150
}, },
{ {
"x": 215, "x": 185,
"y": 278.8 "y": 218.8
}, },
{ {
"x": 215, "x": 185,
"y": 313.2 "y": 253.2
}, },
{ {
"x": 215, "x": 185,
"y": 382 "y": 322
} }
], ],
"isCurve": true, "isCurve": true,
@ -652,20 +652,20 @@
"labelPercentage": 0, "labelPercentage": 0,
"route": [ "route": [
{ {
"x": 215, "x": 185,
"y": 519 "y": 399
}, },
{ {
"x": 215, "x": 185,
"y": 619.8 "y": 499.8
}, },
{ {
"x": 215, "x": 185,
"y": 670.2 "y": 550.2
}, },
{ {
"x": 215, "x": 185,
"y": 771 "y": 651
} }
], ],
"isCurve": true, "isCurve": true,
@ -700,20 +700,20 @@
"labelPercentage": 0, "labelPercentage": 0,
"route": [ "route": [
{ {
"x": 215, "x": 185,
"y": 908 "y": 728
}, },
{ {
"x": 215, "x": 185,
"y": 966.4 "y": 786.4
}, },
{ {
"x": 215, "x": 185,
"y": 1084.2 "y": 904.2
}, },
{ {
"x": 215, "x": 185,
"y": 1153 "y": 973
} }
], ],
"isCurve": true, "isCurve": true,
@ -748,20 +748,20 @@
"labelPercentage": 0, "labelPercentage": 0,
"route": [ "route": [
{ {
"x": 215, "x": 185,
"y": 1290 "y": 1050
}, },
{ {
"x": 215, "x": 185,
"y": 1358.8 "y": 1118.8
}, },
{ {
"x": 215, "x": 185,
"y": 1393.2 "y": 1153.2
}, },
{ {
"x": 215, "x": 185,
"y": 1462 "y": 1222
} }
], ],
"isCurve": true, "isCurve": true,
@ -796,20 +796,20 @@
"labelPercentage": 0, "labelPercentage": 0,
"route": [ "route": [
{ {
"x": 655.5, "x": 565.5,
"y": 210 "y": 150
}, },
{ {
"x": 655.5, "x": 565.5,
"y": 278.8 "y": 218.8
}, },
{ {
"x": 655.5, "x": 565.5,
"y": 313.2 "y": 253.2
}, },
{ {
"x": 655.5, "x": 565.5,
"y": 382 "y": 322
} }
], ],
"isCurve": true, "isCurve": true,
@ -844,20 +844,20 @@
"labelPercentage": 0, "labelPercentage": 0,
"route": [ "route": [
{ {
"x": 655.5, "x": 565.5,
"y": 519 "y": 399
}, },
{ {
"x": 655.5, "x": 565.5,
"y": 619.8 "y": 499.8
}, },
{ {
"x": 655.5, "x": 565.5,
"y": 670.2 "y": 550.2
}, },
{ {
"x": 655.5, "x": 565.5,
"y": 771 "y": 651
} }
], ],
"isCurve": true, "isCurve": true,
@ -892,20 +892,20 @@
"labelPercentage": 0, "labelPercentage": 0,
"route": [ "route": [
{ {
"x": 1187.5, "x": 1067.5,
"y": 210 "y": 150
}, },
{ {
"x": 1187.5, "x": 1067.5,
"y": 278.8 "y": 218.8
}, },
{ {
"x": 1187.5, "x": 1067.5,
"y": 313.2 "y": 253.2
}, },
{ {
"x": 1187.5, "x": 1067.5,
"y": 382 "y": 322
} }
], ],
"isCurve": true, "isCurve": true,
@ -940,20 +940,20 @@
"labelPercentage": 0, "labelPercentage": 0,
"route": [ "route": [
{ {
"x": 1187.5, "x": 1067.5,
"y": 519 "y": 399
}, },
{ {
"x": 1187.5, "x": 1067.5,
"y": 619.8 "y": 499.8
}, },
{ {
"x": 1187.5, "x": 1067.5,
"y": 670.2 "y": 550.2
}, },
{ {
"x": 1187.5, "x": 1067.5,
"y": 771 "y": 651
} }
], ],
"isCurve": true, "isCurve": true,

File diff suppressed because one or more lines are too long

Before

Width:  |  Height:  |  Size: 799 KiB

After

Width:  |  Height:  |  Size: 799 KiB

View file

@ -9,8 +9,8 @@
"x": 12, "x": 12,
"y": 12 "y": 12
}, },
"width": 480, "width": 420,
"height": 1739, "height": 1439,
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
"strokeWidth": 2, "strokeWidth": 2,
@ -37,8 +37,8 @@
"italic": false, "italic": false,
"bold": false, "bold": false,
"underline": false, "underline": false,
"labelWidth": 226, "labelWidth": 221,
"labelHeight": 41, "labelHeight": 36,
"labelPosition": "INSIDE_TOP_CENTER", "labelPosition": "INSIDE_TOP_CENTER",
"zIndex": 0, "zIndex": 0,
"level": 1 "level": 1
@ -50,8 +50,8 @@
"x": 87, "x": 87,
"y": 87 "y": 87
}, },
"width": 330, "width": 270,
"height": 137, "height": 77,
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
"strokeWidth": 2, "strokeWidth": 2,
@ -78,8 +78,8 @@
"italic": false, "italic": false,
"bold": true, "bold": true,
"underline": false, "underline": false,
"labelWidth": 230, "labelWidth": 225,
"labelHeight": 37, "labelHeight": 32,
"labelPosition": "INSIDE_MIDDLE_CENTER", "labelPosition": "INSIDE_MIDDLE_CENTER",
"zIndex": 0, "zIndex": 0,
"level": 2 "level": 2
@ -89,10 +89,10 @@
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 117, "x": 117,
"y": 450 "y": 390
}, },
"width": 269, "width": 209,
"height": 137, "height": 77,
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
"strokeWidth": 2, "strokeWidth": 2,
@ -119,8 +119,8 @@
"italic": false, "italic": false,
"bold": true, "bold": true,
"underline": false, "underline": false,
"labelWidth": 169, "labelWidth": 164,
"labelHeight": 37, "labelHeight": 32,
"labelPosition": "INSIDE_MIDDLE_CENTER", "labelPosition": "INSIDE_MIDDLE_CENTER",
"zIndex": 0, "zIndex": 0,
"level": 2 "level": 2
@ -130,10 +130,10 @@
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 186, "x": 186,
"y": 813 "y": 693
}, },
"width": 131, "width": 71,
"height": 137, "height": 77,
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
"strokeWidth": 2, "strokeWidth": 2,
@ -160,8 +160,8 @@
"italic": false, "italic": false,
"bold": true, "bold": true,
"underline": false, "underline": false,
"labelWidth": 31, "labelWidth": 26,
"labelHeight": 37, "labelHeight": 32,
"labelPosition": "INSIDE_MIDDLE_CENTER", "labelPosition": "INSIDE_MIDDLE_CENTER",
"zIndex": 0, "zIndex": 0,
"level": 2 "level": 2
@ -171,10 +171,10 @@
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 143, "x": 143,
"y": 1176 "y": 996
}, },
"width": 218, "width": 158,
"height": 137, "height": 77,
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
"strokeWidth": 2, "strokeWidth": 2,
@ -201,8 +201,8 @@
"italic": false, "italic": false,
"bold": true, "bold": true,
"underline": false, "underline": false,
"labelWidth": 118, "labelWidth": 113,
"labelHeight": 37, "labelHeight": 32,
"labelPosition": "INSIDE_MIDDLE_CENTER", "labelPosition": "INSIDE_MIDDLE_CENTER",
"zIndex": 0, "zIndex": 0,
"level": 2 "level": 2
@ -212,10 +212,10 @@
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 174, "x": 174,
"y": 1539 "y": 1299
}, },
"width": 155, "width": 95,
"height": 137, "height": 77,
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
"strokeWidth": 2, "strokeWidth": 2,
@ -242,8 +242,8 @@
"italic": false, "italic": false,
"bold": true, "bold": true,
"underline": false, "underline": false,
"labelWidth": 55, "labelWidth": 50,
"labelHeight": 37, "labelHeight": 32,
"labelPosition": "INSIDE_MIDDLE_CENTER", "labelPosition": "INSIDE_MIDDLE_CENTER",
"zIndex": 0, "zIndex": 0,
"level": 2 "level": 2
@ -252,11 +252,11 @@
"id": "deploy_workflow", "id": "deploy_workflow",
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 512, "x": 452,
"y": 335 "y": 275
}, },
"width": 421, "width": 361,
"height": 1093, "height": 913,
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
"strokeWidth": 2, "strokeWidth": 2,
@ -283,8 +283,8 @@
"italic": false, "italic": false,
"bold": false, "bold": false,
"underline": false, "underline": false,
"labelWidth": 247, "labelWidth": 242,
"labelHeight": 41, "labelHeight": 36,
"labelPosition": "INSIDE_TOP_CENTER", "labelPosition": "INSIDE_TOP_CENTER",
"zIndex": 0, "zIndex": 0,
"level": 1 "level": 1
@ -293,11 +293,11 @@
"id": "deploy_workflow.manual", "id": "deploy_workflow.manual",
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 587, "x": 527,
"y": 410 "y": 350
}, },
"width": 271, "width": 211,
"height": 137, "height": 77,
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
"strokeWidth": 2, "strokeWidth": 2,
@ -324,8 +324,8 @@
"italic": false, "italic": false,
"bold": true, "bold": true,
"underline": false, "underline": false,
"labelWidth": 171, "labelWidth": 166,
"labelHeight": 37, "labelHeight": 32,
"labelPosition": "INSIDE_MIDDLE_CENTER", "labelPosition": "INSIDE_MIDDLE_CENTER",
"zIndex": 0, "zIndex": 0,
"level": 2 "level": 2
@ -334,11 +334,11 @@
"id": "deploy_workflow.GHA", "id": "deploy_workflow.GHA",
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 588, "x": 528,
"y": 773 "y": 653
}, },
"width": 269, "width": 209,
"height": 137, "height": 77,
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
"strokeWidth": 2, "strokeWidth": 2,
@ -365,8 +365,8 @@
"italic": false, "italic": false,
"bold": true, "bold": true,
"underline": false, "underline": false,
"labelWidth": 169, "labelWidth": 164,
"labelHeight": 37, "labelHeight": 32,
"labelPosition": "INSIDE_MIDDLE_CENTER", "labelPosition": "INSIDE_MIDDLE_CENTER",
"zIndex": 0, "zIndex": 0,
"level": 2 "level": 2
@ -375,11 +375,11 @@
"id": "deploy_workflow.AWS", "id": "deploy_workflow.AWS",
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 645, "x": 585,
"y": 1216 "y": 1036
}, },
"width": 155, "width": 95,
"height": 137, "height": 77,
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
"strokeWidth": 2, "strokeWidth": 2,
@ -406,8 +406,8 @@
"italic": false, "italic": false,
"bold": true, "bold": true,
"underline": false, "underline": false,
"labelWidth": 55, "labelWidth": 50,
"labelHeight": 37, "labelHeight": 32,
"labelPosition": "INSIDE_MIDDLE_CENTER", "labelPosition": "INSIDE_MIDDLE_CENTER",
"zIndex": 0, "zIndex": 0,
"level": 2 "level": 2
@ -416,11 +416,11 @@
"id": "apollo_workflow", "id": "apollo_workflow",
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 953, "x": 833,
"y": 375 "y": 315
}, },
"width": 684, "width": 684,
"height": 1013, "height": 833,
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
"strokeWidth": 2, "strokeWidth": 2,
@ -447,8 +447,8 @@
"italic": false, "italic": false,
"bold": false, "bold": false,
"underline": false, "underline": false,
"labelWidth": 232, "labelWidth": 227,
"labelHeight": 41, "labelHeight": 36,
"labelPosition": "INSIDE_TOP_CENTER", "labelPosition": "INSIDE_TOP_CENTER",
"zIndex": 0, "zIndex": 0,
"level": 1 "level": 1
@ -457,11 +457,11 @@
"id": "apollo_workflow.apollo", "id": "apollo_workflow.apollo",
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 1175, "x": 1085,
"y": 450 "y": 390
}, },
"width": 238, "width": 178,
"height": 137, "height": 77,
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
"strokeWidth": 2, "strokeWidth": 2,
@ -488,8 +488,8 @@
"italic": false, "italic": false,
"bold": true, "bold": true,
"underline": false, "underline": false,
"labelWidth": 138, "labelWidth": 133,
"labelHeight": 37, "labelHeight": 32,
"labelPosition": "INSIDE_MIDDLE_CENTER", "labelPosition": "INSIDE_MIDDLE_CENTER",
"zIndex": 0, "zIndex": 0,
"level": 2 "level": 2
@ -498,11 +498,11 @@
"id": "apollo_workflow.GHA", "id": "apollo_workflow.GHA",
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 1160, "x": 1070,
"y": 813 "y": 693
}, },
"width": 269, "width": 209,
"height": 137, "height": 77,
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
"strokeWidth": 2, "strokeWidth": 2,
@ -529,8 +529,8 @@
"italic": false, "italic": false,
"bold": true, "bold": true,
"underline": false, "underline": false,
"labelWidth": 169, "labelWidth": 164,
"labelHeight": 37, "labelHeight": 32,
"labelPosition": "INSIDE_MIDDLE_CENTER", "labelPosition": "INSIDE_MIDDLE_CENTER",
"zIndex": 0, "zIndex": 0,
"level": 2 "level": 2
@ -539,11 +539,11 @@
"id": "apollo_workflow.AWS", "id": "apollo_workflow.AWS",
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 1217, "x": 1127,
"y": 1176 "y": 996
}, },
"width": 155, "width": 95,
"height": 137, "height": 77,
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
"strokeWidth": 2, "strokeWidth": 2,
@ -570,8 +570,8 @@
"italic": false, "italic": false,
"bold": true, "bold": true,
"underline": false, "underline": false,
"labelWidth": 55, "labelWidth": 50,
"labelHeight": 37, "labelHeight": 32,
"labelPosition": "INSIDE_MIDDLE_CENTER", "labelPosition": "INSIDE_MIDDLE_CENTER",
"zIndex": 0, "zIndex": 0,
"level": 2 "level": 2
@ -604,12 +604,12 @@
"labelPercentage": 0, "labelPercentage": 0,
"route": [ "route": [
{ {
"x": 252, "x": 222,
"y": 224 "y": 164
}, },
{ {
"x": 252, "x": 222,
"y": 450 "y": 390
} }
], ],
"animated": false, "animated": false,
@ -643,12 +643,12 @@
"labelPercentage": 0, "labelPercentage": 0,
"route": [ "route": [
{ {
"x": 252, "x": 222,
"y": 587 "y": 467
}, },
{ {
"x": 252, "x": 222,
"y": 813 "y": 693
} }
], ],
"animated": false, "animated": false,
@ -682,12 +682,12 @@
"labelPercentage": 0, "labelPercentage": 0,
"route": [ "route": [
{ {
"x": 252, "x": 222,
"y": 950 "y": 770
}, },
{ {
"x": 252, "x": 222,
"y": 1176 "y": 996
} }
], ],
"animated": false, "animated": false,
@ -721,12 +721,12 @@
"labelPercentage": 0, "labelPercentage": 0,
"route": [ "route": [
{ {
"x": 252, "x": 222,
"y": 1313 "y": 1073
}, },
{ {
"x": 252, "x": 222,
"y": 1539 "y": 1299
} }
], ],
"animated": false, "animated": false,
@ -760,12 +760,12 @@
"labelPercentage": 0, "labelPercentage": 0,
"route": [ "route": [
{ {
"x": 722.5, "x": 632.5,
"y": 547 "y": 427
}, },
{ {
"x": 722.5, "x": 632.5,
"y": 773 "y": 653
} }
], ],
"animated": false, "animated": false,
@ -799,12 +799,12 @@
"labelPercentage": 0, "labelPercentage": 0,
"route": [ "route": [
{ {
"x": 722.5, "x": 632.5,
"y": 910 "y": 730
}, },
{ {
"x": 722.5, "x": 632.5,
"y": 1216 "y": 1036
} }
], ],
"animated": false, "animated": false,
@ -838,12 +838,12 @@
"labelPercentage": 0, "labelPercentage": 0,
"route": [ "route": [
{ {
"x": 1294.5, "x": 1174.5,
"y": 587 "y": 467
}, },
{ {
"x": 1294.5, "x": 1174.5,
"y": 813 "y": 693
} }
], ],
"animated": false, "animated": false,
@ -877,12 +877,12 @@
"labelPercentage": 0, "labelPercentage": 0,
"route": [ "route": [
{ {
"x": 1294.5, "x": 1174.5,
"y": 950 "y": 770
}, },
{ {
"x": 1294.5, "x": 1174.5,
"y": 1176 "y": 996
} }
], ],
"animated": false, "animated": false,

File diff suppressed because one or more lines are too long

Before

Width:  |  Height:  |  Size: 799 KiB

After

Width:  |  Height:  |  Size: 799 KiB

View file

@ -9,8 +9,8 @@
"x": 0, "x": 0,
"y": 0 "y": 0
}, },
"width": 426, "width": 306,
"height": 226, "height": 166,
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
"strokeWidth": 2, "strokeWidth": 2,
@ -37,8 +37,8 @@
"italic": false, "italic": false,
"bold": false, "bold": false,
"underline": false, "underline": false,
"labelWidth": 18, "labelWidth": 13,
"labelHeight": 41, "labelHeight": 36,
"labelPosition": "INSIDE_TOP_CENTER", "labelPosition": "INSIDE_TOP_CENTER",
"zIndex": 0, "zIndex": 0,
"level": 1 "level": 1
@ -50,8 +50,8 @@
"x": 50, "x": 50,
"y": 50 "y": 50
}, },
"width": 113, "width": 53,
"height": 126, "height": 66,
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
"strokeWidth": 2, "strokeWidth": 2,
@ -78,8 +78,8 @@
"italic": false, "italic": false,
"bold": true, "bold": true,
"underline": false, "underline": false,
"labelWidth": 13, "labelWidth": 8,
"labelHeight": 26, "labelHeight": 21,
"labelPosition": "INSIDE_MIDDLE_CENTER", "labelPosition": "INSIDE_MIDDLE_CENTER",
"zIndex": 0, "zIndex": 0,
"level": 2 "level": 2
@ -88,11 +88,11 @@
"id": "x.b", "id": "x.b",
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 263, "x": 203,
"y": 50 "y": 50
}, },
"width": 113, "width": 53,
"height": 126, "height": 66,
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
"strokeWidth": 2, "strokeWidth": 2,
@ -119,8 +119,8 @@
"italic": false, "italic": false,
"bold": true, "bold": true,
"underline": false, "underline": false,
"labelWidth": 13, "labelWidth": 8,
"labelHeight": 26, "labelHeight": 21,
"labelPosition": "INSIDE_MIDDLE_CENTER", "labelPosition": "INSIDE_MIDDLE_CENTER",
"zIndex": 0, "zIndex": 0,
"level": 2 "level": 2
@ -153,56 +153,56 @@
"labelPercentage": 0, "labelPercentage": 0,
"route": [ "route": [
{ {
"x": 163, "x": 103,
"y": 73.37662337662337 "y": 68.38440111420613
}, },
{ {
"x": 189.66666666666669, "x": 129.66666666666669,
"y": 54.675324675324674 "y": 53.67688022284123
}, },
{ {
"x": 198, "x": 138,
"y": 50 "y": 50
}, },
{ {
"x": 200.5, "x": 140.5,
"y": 50 "y": 50
}, },
{ {
"x": 203, "x": 143,
"y": 50 "y": 50
}, },
{ {
"x": 206.33333333333331, "x": 146.33333333333331,
"y": 62.6 "y": 56.6
}, },
{ {
"x": 208.83333333333331, "x": 148.83333333333331,
"y": 81.5 "y": 66.5
}, },
{ {
"x": 211.33333333333334, "x": 151.33333333333334,
"y": 100.4 "y": 76.4
}, },
{ {
"x": 211.33333333333334, "x": 151.33333333333334,
"y": 125.6 "y": 89.6
}, },
{ {
"x": 208.83333333333331, "x": 148.83333333333331,
"y": 144.5 "y": 99.5
}, },
{ {
"x": 206.33333333333331, "x": 146.33333333333331,
"y": 163.4 "y": 109.4
}, },
{ {
"x": 189.66666666666669, "x": 129.66666666666669,
"y": 171.32467532467533 "y": 112.32311977715878
}, },
{ {
"x": 163, "x": 103,
"y": 152.62337662337663 "y": 97.61559888579387
} }
], ],
"isCurve": true, "isCurve": true,

View file

@ -3,7 +3,7 @@
id="d2-svg" id="d2-svg"
style="background: white;" style="background: white;"
xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"
width="630" height="430" viewBox="-102 -102 630 430"><style type="text/css"> width="510" height="370" viewBox="-102 -102 510 370"><style type="text/css">
<![CDATA[ <![CDATA[
.shape { .shape {
shape-rendering: geometricPrecision; shape-rendering: geometricPrecision;
@ -39,8 +39,8 @@ width="630" height="430" viewBox="-102 -102 630 430"><style type="text/css">
svgEl.setAttribute("height", height * ratio - 16); svgEl.setAttribute("height", height * ratio - 16);
} }
}); });
]]></script><g id="x"><g class="shape" ><rect x="0" y="0" width="426" height="226" style="fill:#E3E9FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text" x="213.000000" y="33.000000" style="text-anchor:middle;font-size:28px;fill:#0A0F25">x</text></g><g id="x.a"><g class="shape" ><rect x="50" y="50" width="113" height="126" style="fill:#EDF0FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="106.500000" y="116.000000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">a</text></g><g id="x.b"><g class="shape" ><rect x="263" y="50" width="113" height="126" style="fill:#EDF0FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="319.500000" y="116.000000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">b</text></g><g id="x.(a -&gt; a)[0]"><marker id="mk-3990223579" markerWidth="10.000000" markerHeight="12.000000" refX="7.000000" refY="6.000000" viewBox="0.000000 0.000000 10.000000 12.000000" orient="auto" markerUnits="userSpaceOnUse"> <polygon class="connection" fill="#0D32B2" stroke-width="2" points="0.000000,0.000000 10.000000,6.000000 0.000000,12.000000" /> </marker><path d="M 164.637464 72.228272 C 189.666667 54.675325 198.000000 50.000000 200.500000 50.000000 C 203.000000 50.000000 206.333333 62.600000 208.833333 81.500000 C 211.333333 100.400000 211.333333 125.600000 208.833333 144.500000 C 206.333333 163.400000 189.666667 171.324675 166.274928 154.920080" class="connection" style="fill:none;stroke:#0D32B2;stroke-width:2;" marker-end="url(#mk-3990223579)" mask="url(#1725002276)"/></g><mask id="1725002276" maskUnits="userSpaceOnUse" x="-100" y="-100" width="630" height="430"> ]]></script><g id="x"><g class="shape" ><rect x="0" y="0" width="306" height="166" style="fill:#E3E9FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text" x="153.000000" y="33.000000" style="text-anchor:middle;font-size:28px;fill:#0A0F25">x</text></g><g id="x.a"><g class="shape" ><rect x="50" y="50" width="53" height="66" style="fill:#EDF0FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="76.500000" y="88.500000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">a</text></g><g id="x.b"><g class="shape" ><rect x="203" y="50" width="53" height="66" style="fill:#EDF0FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="229.500000" y="88.500000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">b</text></g><g id="x.(a -&gt; a)[0]"><marker id="mk-3990223579" markerWidth="10.000000" markerHeight="12.000000" refX="7.000000" refY="6.000000" viewBox="0.000000 0.000000 10.000000 12.000000" orient="auto" markerUnits="userSpaceOnUse"> <polygon class="connection" fill="#0D32B2" stroke-width="2" points="0.000000,0.000000 10.000000,6.000000 0.000000,12.000000" /> </marker><path d="M 104.751298 67.418504 C 129.666667 53.676880 138.000000 50.000000 140.500000 50.000000 C 143.000000 50.000000 146.333333 56.600000 148.833333 66.500000 C 151.333333 76.400000 151.333333 89.600000 148.833333 99.500000 C 146.333333 109.400000 129.666667 112.323120 106.502595 99.547392" class="connection" style="fill:none;stroke:#0D32B2;stroke-width:2;" marker-end="url(#mk-3990223579)" mask="url(#2444376964)"/></g><mask id="2444376964" maskUnits="userSpaceOnUse" x="-100" y="-100" width="510" height="370">
<rect x="-100" y="-100" width="630" height="430" fill="white"></rect> <rect x="-100" y="-100" width="510" height="370" fill="white"></rect>
</mask><style type="text/css"><![CDATA[ </mask><style type="text/css"><![CDATA[
.text { .text {

Before

Width:  |  Height:  |  Size: 649 KiB

After

Width:  |  Height:  |  Size: 649 KiB

View file

@ -9,8 +9,8 @@
"x": 12, "x": 12,
"y": 12 "y": 12
}, },
"width": 446, "width": 326,
"height": 276, "height": 216,
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
"strokeWidth": 2, "strokeWidth": 2,
@ -37,8 +37,8 @@
"italic": false, "italic": false,
"bold": false, "bold": false,
"underline": false, "underline": false,
"labelWidth": 18, "labelWidth": 13,
"labelHeight": 41, "labelHeight": 36,
"labelPosition": "INSIDE_TOP_CENTER", "labelPosition": "INSIDE_TOP_CENTER",
"zIndex": 0, "zIndex": 0,
"level": 1 "level": 1
@ -50,8 +50,8 @@
"x": 137, "x": 137,
"y": 87 "y": 87
}, },
"width": 113, "width": 53,
"height": 126, "height": 66,
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
"strokeWidth": 2, "strokeWidth": 2,
@ -78,8 +78,8 @@
"italic": false, "italic": false,
"bold": true, "bold": true,
"underline": false, "underline": false,
"labelWidth": 13, "labelWidth": 8,
"labelHeight": 26, "labelHeight": 21,
"labelPosition": "INSIDE_MIDDLE_CENTER", "labelPosition": "INSIDE_MIDDLE_CENTER",
"zIndex": 0, "zIndex": 0,
"level": 2 "level": 2
@ -88,11 +88,11 @@
"id": "x.b", "id": "x.b",
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 270, "x": 210,
"y": 87 "y": 87
}, },
"width": 113, "width": 53,
"height": 126, "height": 66,
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
"strokeWidth": 2, "strokeWidth": 2,
@ -119,8 +119,8 @@
"italic": false, "italic": false,
"bold": true, "bold": true,
"underline": false, "underline": false,
"labelWidth": 13, "labelWidth": 8,
"labelHeight": 26, "labelHeight": 21,
"labelPosition": "INSIDE_MIDDLE_CENTER", "labelPosition": "INSIDE_MIDDLE_CENTER",
"zIndex": 0, "zIndex": 0,
"level": 2 "level": 2
@ -154,19 +154,19 @@
"route": [ "route": [
{ {
"x": 137, "x": 137,
"y": 129 "y": 109
}, },
{ {
"x": 87, "x": 87,
"y": 129 "y": 109
}, },
{ {
"x": 87, "x": 87,
"y": 171 "y": 131
}, },
{ {
"x": 137, "x": 137,
"y": 171 "y": 131
} }
], ],
"animated": false, "animated": false,

View file

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

Before

Width:  |  Height:  |  Size: 649 KiB

After

Width:  |  Height:  |  Size: 649 KiB

View file

@ -9,8 +9,8 @@
"x": 0, "x": 0,
"y": 148 "y": 148
}, },
"width": 1336, "width": 966,
"height": 226, "height": 166,
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
"strokeWidth": 2, "strokeWidth": 2,
@ -49,8 +49,8 @@
"x": 50, "x": 50,
"y": 198 "y": 198
}, },
"width": 125, "width": 65,
"height": 126, "height": 66,
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
"strokeWidth": 2, "strokeWidth": 2,
@ -77,8 +77,8 @@
"italic": false, "italic": false,
"bold": true, "bold": true,
"underline": false, "underline": false,
"labelWidth": 25, "labelWidth": 20,
"labelHeight": 26, "labelHeight": 21,
"labelPosition": "INSIDE_MIDDLE_CENTER", "labelPosition": "INSIDE_MIDDLE_CENTER",
"zIndex": 0, "zIndex": 0,
"level": 2 "level": 2
@ -87,11 +87,11 @@
"id": "queue.M1", "id": "queue.M1",
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 235, "x": 175,
"y": 198 "y": 198
}, },
"width": 125, "width": 65,
"height": 126, "height": 66,
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
"strokeWidth": 2, "strokeWidth": 2,
@ -118,8 +118,8 @@
"italic": false, "italic": false,
"bold": true, "bold": true,
"underline": false, "underline": false,
"labelWidth": 25, "labelWidth": 20,
"labelHeight": 26, "labelHeight": 21,
"labelPosition": "INSIDE_MIDDLE_CENTER", "labelPosition": "INSIDE_MIDDLE_CENTER",
"zIndex": 0, "zIndex": 0,
"level": 2 "level": 2
@ -128,11 +128,11 @@
"id": "queue.M2", "id": "queue.M2",
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 420, "x": 300,
"y": 198 "y": 198
}, },
"width": 125, "width": 65,
"height": 126, "height": 66,
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
"strokeWidth": 2, "strokeWidth": 2,
@ -159,8 +159,8 @@
"italic": false, "italic": false,
"bold": true, "bold": true,
"underline": false, "underline": false,
"labelWidth": 25, "labelWidth": 20,
"labelHeight": 26, "labelHeight": 21,
"labelPosition": "INSIDE_MIDDLE_CENTER", "labelPosition": "INSIDE_MIDDLE_CENTER",
"zIndex": 0, "zIndex": 0,
"level": 2 "level": 2
@ -169,11 +169,11 @@
"id": "queue.M3", "id": "queue.M3",
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 605, "x": 425,
"y": 198 "y": 198
}, },
"width": 125, "width": 65,
"height": 126, "height": 66,
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
"strokeWidth": 2, "strokeWidth": 2,
@ -200,8 +200,8 @@
"italic": false, "italic": false,
"bold": true, "bold": true,
"underline": false, "underline": false,
"labelWidth": 25, "labelWidth": 20,
"labelHeight": 26, "labelHeight": 21,
"labelPosition": "INSIDE_MIDDLE_CENTER", "labelPosition": "INSIDE_MIDDLE_CENTER",
"zIndex": 0, "zIndex": 0,
"level": 2 "level": 2
@ -210,11 +210,11 @@
"id": "queue.M4", "id": "queue.M4",
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 790, "x": 550,
"y": 198 "y": 198
}, },
"width": 126, "width": 66,
"height": 126, "height": 66,
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
"strokeWidth": 2, "strokeWidth": 2,
@ -241,8 +241,8 @@
"italic": false, "italic": false,
"bold": true, "bold": true,
"underline": false, "underline": false,
"labelWidth": 26, "labelWidth": 21,
"labelHeight": 26, "labelHeight": 21,
"labelPosition": "INSIDE_MIDDLE_CENTER", "labelPosition": "INSIDE_MIDDLE_CENTER",
"zIndex": 0, "zIndex": 0,
"level": 2 "level": 2
@ -251,11 +251,11 @@
"id": "queue.M5", "id": "queue.M5",
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 976, "x": 676,
"y": 198 "y": 198
}, },
"width": 125, "width": 65,
"height": 126, "height": 66,
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
"strokeWidth": 2, "strokeWidth": 2,
@ -282,8 +282,8 @@
"italic": false, "italic": false,
"bold": true, "bold": true,
"underline": false, "underline": false,
"labelWidth": 25, "labelWidth": 20,
"labelHeight": 26, "labelHeight": 21,
"labelPosition": "INSIDE_MIDDLE_CENTER", "labelPosition": "INSIDE_MIDDLE_CENTER",
"zIndex": 0, "zIndex": 0,
"level": 2 "level": 2
@ -292,11 +292,11 @@
"id": "queue.M6", "id": "queue.M6",
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 1161, "x": 851,
"y": 198 "y": 198
}, },
"width": 125, "width": 65,
"height": 126, "height": 66,
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
"strokeWidth": 2, "strokeWidth": 2,
@ -323,8 +323,8 @@
"italic": false, "italic": false,
"bold": true, "bold": true,
"underline": false, "underline": false,
"labelWidth": 25, "labelWidth": 20,
"labelHeight": 26, "labelHeight": 21,
"labelPosition": "INSIDE_MIDDLE_CENTER", "labelPosition": "INSIDE_MIDDLE_CENTER",
"zIndex": 0, "zIndex": 0,
"level": 2 "level": 2
@ -333,7 +333,7 @@
"id": "m0_desc", "id": "m0_desc",
"type": "text", "type": "text",
"pos": { "pos": {
"x": 60, "x": 30,
"y": 12 "y": 12
}, },
"width": 106, "width": 106,
@ -373,7 +373,7 @@
"id": "m2_desc", "id": "m2_desc",
"type": "text", "type": "text",
"pos": { "pos": {
"x": 462, "x": 312,
"y": 12 "y": 12
}, },
"width": 41, "width": 41,
@ -413,7 +413,7 @@
"id": "m5_desc", "id": "m5_desc",
"type": "text", "type": "text",
"pos": { "pos": {
"x": 994, "x": 664,
"y": 12 "y": 12
}, },
"width": 90, "width": 90,
@ -453,7 +453,7 @@
"id": "m6_desc", "id": "m6_desc",
"type": "text", "type": "text",
"pos": { "pos": {
"x": 1154, "x": 814,
"y": 0 "y": 0
}, },
"width": 140, "width": 140,
@ -517,19 +517,19 @@
"labelPercentage": 0, "labelPercentage": 0,
"route": [ "route": [
{ {
"x": 112.5, "x": 82.5,
"y": 36 "y": 36
}, },
{ {
"x": 112.5, "x": 82.5,
"y": 85.6 "y": 85.6
}, },
{ {
"x": 112.5, "x": 82.5,
"y": 158 "y": 158
}, },
{ {
"x": 112.5, "x": 82.5,
"y": 198 "y": 198
} }
], ],
@ -565,19 +565,19 @@
"labelPercentage": 0, "labelPercentage": 0,
"route": [ "route": [
{ {
"x": 482.5, "x": 332.5,
"y": 36 "y": 36
}, },
{ {
"x": 482.5, "x": 332.5,
"y": 85.6 "y": 85.6
}, },
{ {
"x": 482.5, "x": 332.5,
"y": 158 "y": 158
}, },
{ {
"x": 482.5, "x": 332.5,
"y": 198 "y": 198
} }
], ],
@ -613,19 +613,19 @@
"labelPercentage": 0, "labelPercentage": 0,
"route": [ "route": [
{ {
"x": 1038.5, "x": 708.5,
"y": 36 "y": 36
}, },
{ {
"x": 1038.5, "x": 708.5,
"y": 85.6 "y": 85.6
}, },
{ {
"x": 1038.5, "x": 708.5,
"y": 158 "y": 158
}, },
{ {
"x": 1038.5, "x": 708.5,
"y": 198 "y": 198
} }
], ],
@ -661,19 +661,19 @@
"labelPercentage": 0, "labelPercentage": 0,
"route": [ "route": [
{ {
"x": 1223.5, "x": 883.5,
"y": 48 "y": 48
}, },
{ {
"x": 1223.5, "x": 883.5,
"y": 88 "y": 88
}, },
{ {
"x": 1223.5, "x": 883.5,
"y": 158 "y": 158
}, },
{ {
"x": 1223.5, "x": 883.5,
"y": 198 "y": 198
} }
], ],

View file

@ -3,7 +3,7 @@
id="d2-svg" id="d2-svg"
style="background: white;" style="background: white;"
xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"
width="1540" height="578" viewBox="-102 -102 1540 578"><style type="text/css"> width="1170" height="518" viewBox="-102 -102 1170 518"><style type="text/css">
<![CDATA[ <![CDATA[
.shape { .shape {
shape-rendering: geometricPrecision; shape-rendering: geometricPrecision;
@ -796,13 +796,13 @@ width="1540" height="578" viewBox="-102 -102 1540 578"><style type="text/css">
.md .contains-task-list:dir(rtl) .task-list-item-checkbox { .md .contains-task-list:dir(rtl) .task-list-item-checkbox {
margin: 0 -1.6em 0.25em 0.2em; margin: 0 -1.6em 0.25em 0.2em;
} }
</style><g id="queue"><g class="shape" ><path d="M 24 148 H 1312 C 1336 148 1336 249.7 1336 261 C 1336 272.3 1336 374 1312 374 H 24 C 0 374 0 272.3 0 261 C 0 249.7 0 148 24 148 Z" style="fill:#DEE1EB;stroke:#0D32B2;stroke-width:2;"/><path d="M 1312 148 C 1288 148 1288 249.7 1288 261 C 1288 272.3 1288 374 1312 374" style="fill:#DEE1EB;stroke:#0D32B2;stroke-width:2;"/></g></g><g id="m0_desc"><g class="shape" ></g><g><foreignObject requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" x="60.000000" y="12.000000" width="106" height="24"><div xmlns="http://www.w3.org/1999/xhtml" class="md" style="background-color:transparent;color:#0A0F25;"><p>Oldest message</p> </style><g id="queue"><g class="shape" ><path d="M 24 148 H 942 C 966 148 966 223 966 231 C 966 239 966 314 942 314 H 24 C 0 314 0 239 0 231 C 0 223 0 148 24 148 Z" style="fill:#DEE1EB;stroke:#0D32B2;stroke-width:2;"/><path d="M 942 148 C 918 148 918 223 918 231 C 918 239 918 314 942 314" style="fill:#DEE1EB;stroke:#0D32B2;stroke-width:2;"/></g></g><g id="m0_desc"><g class="shape" ></g><g><foreignObject requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" x="30.000000" y="12.000000" width="106" height="24"><div xmlns="http://www.w3.org/1999/xhtml" class="md" style="background-color:transparent;color:#0A0F25;"><p>Oldest message</p>
</div></foreignObject></g></g><g id="m2_desc"><g class="shape" ></g><g><foreignObject requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" x="462.000000" y="12.000000" width="41" height="24"><div xmlns="http://www.w3.org/1999/xhtml" class="md" style="background-color:transparent;color:#0A0F25;"><p>Offset</p> </div></foreignObject></g></g><g id="m2_desc"><g class="shape" ></g><g><foreignObject requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" x="312.000000" y="12.000000" width="41" height="24"><div xmlns="http://www.w3.org/1999/xhtml" class="md" style="background-color:transparent;color:#0A0F25;"><p>Offset</p>
</div></foreignObject></g></g><g id="m5_desc"><g class="shape" ></g><g><foreignObject requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" x="994.000000" y="12.000000" width="90" height="24"><div xmlns="http://www.w3.org/1999/xhtml" class="md" style="background-color:transparent;color:#0A0F25;"><p>Last message</p> </div></foreignObject></g></g><g id="m5_desc"><g class="shape" ></g><g><foreignObject requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" x="664.000000" y="12.000000" width="90" height="24"><div xmlns="http://www.w3.org/1999/xhtml" class="md" style="background-color:transparent;color:#0A0F25;"><p>Last message</p>
</div></foreignObject></g></g><g id="m6_desc"><g class="shape" ></g><g><foreignObject requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" x="1154.000000" y="0.000000" width="140" height="48"><div xmlns="http://www.w3.org/1999/xhtml" class="md" style="background-color:transparent;color:#0A0F25;"><p>Next message will be<br /> </div></foreignObject></g></g><g id="m6_desc"><g class="shape" ></g><g><foreignObject requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" x="814.000000" y="0.000000" width="140" height="48"><div xmlns="http://www.w3.org/1999/xhtml" class="md" style="background-color:transparent;color:#0A0F25;"><p>Next message will be<br />
inserted here</p> inserted here</p>
</div></foreignObject></g></g><g id="queue.M0"><g class="shape" ><rect x="50" y="198" width="125" height="126" style="fill:#EDF0FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="112.500000" y="264.000000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">M0</text></g><g id="queue.M1"><g class="shape" ><rect x="235" y="198" width="125" height="126" style="fill:#EDF0FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="297.500000" y="264.000000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">M1</text></g><g id="queue.M2"><g class="shape" ><rect x="420" y="198" width="125" height="126" style="fill:#EDF0FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="482.500000" y="264.000000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">M2</text></g><g id="queue.M3"><g class="shape" ><rect x="605" y="198" width="125" height="126" style="fill:#EDF0FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="667.500000" y="264.000000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">M3</text></g><g id="queue.M4"><g class="shape" ><rect x="790" y="198" width="126" height="126" style="fill:#EDF0FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="853.000000" y="264.000000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">M4</text></g><g id="queue.M5"><g class="shape" ><rect x="976" y="198" width="125" height="126" style="fill:#EDF0FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="1038.500000" y="264.000000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">M5</text></g><g id="queue.M6"><g class="shape" ><rect x="1161" y="198" width="125" height="126" style="fill:#EDF0FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="1223.500000" y="264.000000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">M6</text></g><g id="(m0_desc -&gt; queue.M0)[0]"><marker id="mk-3990223579" markerWidth="10.000000" markerHeight="12.000000" refX="7.000000" refY="6.000000" viewBox="0.000000 0.000000 10.000000 12.000000" orient="auto" markerUnits="userSpaceOnUse"> <polygon class="connection" fill="#0D32B2" stroke-width="2" points="0.000000,0.000000 10.000000,6.000000 0.000000,12.000000" /> </marker><path d="M 112.500000 38.000000 C 112.500000 85.600000 112.500000 158.000000 112.500000 194.000000" class="connection" style="fill:none;stroke:#0D32B2;stroke-width:2;" marker-end="url(#mk-3990223579)" mask="url(#2449571301)"/></g><g id="(m2_desc -&gt; queue.M2)[0]"><path d="M 482.500000 38.000000 C 482.500000 85.600000 482.500000 158.000000 482.500000 194.000000" class="connection" style="fill:none;stroke:#0D32B2;stroke-width:2;" marker-end="url(#mk-3990223579)" mask="url(#2449571301)"/></g><g id="(m5_desc -&gt; queue.M5)[0]"><path d="M 1038.500000 38.000000 C 1038.500000 85.600000 1038.500000 158.000000 1038.500000 194.000000" class="connection" style="fill:none;stroke:#0D32B2;stroke-width:2;" marker-end="url(#mk-3990223579)" mask="url(#2449571301)"/></g><g id="(m6_desc -&gt; queue.M6)[0]"><path d="M 1223.500000 50.000000 C 1223.500000 88.000000 1223.500000 158.000000 1223.500000 194.000000" class="connection" style="fill:none;stroke:#0D32B2;stroke-width:2;" marker-end="url(#mk-3990223579)" mask="url(#2449571301)"/></g><mask id="2449571301" maskUnits="userSpaceOnUse" x="-100" y="-100" width="1540" height="578"> </div></foreignObject></g></g><g id="queue.M0"><g class="shape" ><rect x="50" y="198" width="65" height="66" style="fill:#EDF0FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="82.500000" y="236.500000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">M0</text></g><g id="queue.M1"><g class="shape" ><rect x="175" y="198" width="65" height="66" style="fill:#EDF0FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="207.500000" y="236.500000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">M1</text></g><g id="queue.M2"><g class="shape" ><rect x="300" y="198" width="65" height="66" style="fill:#EDF0FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="332.500000" y="236.500000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">M2</text></g><g id="queue.M3"><g class="shape" ><rect x="425" y="198" width="65" height="66" style="fill:#EDF0FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="457.500000" y="236.500000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">M3</text></g><g id="queue.M4"><g class="shape" ><rect x="550" y="198" width="66" height="66" style="fill:#EDF0FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="583.000000" y="236.500000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">M4</text></g><g id="queue.M5"><g class="shape" ><rect x="676" y="198" width="65" height="66" style="fill:#EDF0FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="708.500000" y="236.500000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">M5</text></g><g id="queue.M6"><g class="shape" ><rect x="851" y="198" width="65" height="66" style="fill:#EDF0FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="883.500000" y="236.500000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">M6</text></g><g id="(m0_desc -&gt; queue.M0)[0]"><marker id="mk-3990223579" markerWidth="10.000000" markerHeight="12.000000" refX="7.000000" refY="6.000000" viewBox="0.000000 0.000000 10.000000 12.000000" orient="auto" markerUnits="userSpaceOnUse"> <polygon class="connection" fill="#0D32B2" stroke-width="2" points="0.000000,0.000000 10.000000,6.000000 0.000000,12.000000" /> </marker><path d="M 82.500000 38.000000 C 82.500000 85.600000 82.500000 158.000000 82.500000 194.000000" class="connection" style="fill:none;stroke:#0D32B2;stroke-width:2;" marker-end="url(#mk-3990223579)" mask="url(#1051552217)"/></g><g id="(m2_desc -&gt; queue.M2)[0]"><path d="M 332.500000 38.000000 C 332.500000 85.600000 332.500000 158.000000 332.500000 194.000000" class="connection" style="fill:none;stroke:#0D32B2;stroke-width:2;" marker-end="url(#mk-3990223579)" mask="url(#1051552217)"/></g><g id="(m5_desc -&gt; queue.M5)[0]"><path d="M 708.500000 38.000000 C 708.500000 85.600000 708.500000 158.000000 708.500000 194.000000" class="connection" style="fill:none;stroke:#0D32B2;stroke-width:2;" marker-end="url(#mk-3990223579)" mask="url(#1051552217)"/></g><g id="(m6_desc -&gt; queue.M6)[0]"><path d="M 883.500000 50.000000 C 883.500000 88.000000 883.500000 158.000000 883.500000 194.000000" class="connection" style="fill:none;stroke:#0D32B2;stroke-width:2;" marker-end="url(#mk-3990223579)" mask="url(#1051552217)"/></g><mask id="1051552217" maskUnits="userSpaceOnUse" x="-100" y="-100" width="1170" height="518">
<rect x="-100" y="-100" width="1540" height="578" fill="white"></rect> <rect x="-100" y="-100" width="1170" height="518" fill="white"></rect>
</mask><style type="text/css"><![CDATA[ </mask><style type="text/css"><![CDATA[
.text { .text {

Before

Width:  |  Height:  |  Size: 664 KiB

After

Width:  |  Height:  |  Size: 664 KiB

View file

@ -9,8 +9,8 @@
"x": 12, "x": 12,
"y": 165 "y": 165
}, },
"width": 1146, "width": 726,
"height": 276, "height": 216,
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
"strokeWidth": 2, "strokeWidth": 2,
@ -49,8 +49,8 @@
"x": 87, "x": 87,
"y": 240 "y": 240
}, },
"width": 125, "width": 65,
"height": 126, "height": 66,
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
"strokeWidth": 2, "strokeWidth": 2,
@ -77,8 +77,8 @@
"italic": false, "italic": false,
"bold": true, "bold": true,
"underline": false, "underline": false,
"labelWidth": 25, "labelWidth": 20,
"labelHeight": 26, "labelHeight": 21,
"labelPosition": "INSIDE_MIDDLE_CENTER", "labelPosition": "INSIDE_MIDDLE_CENTER",
"zIndex": 0, "zIndex": 0,
"level": 2 "level": 2
@ -87,11 +87,11 @@
"id": "queue.M1", "id": "queue.M1",
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 232, "x": 172,
"y": 240 "y": 240
}, },
"width": 125, "width": 65,
"height": 126, "height": 66,
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
"strokeWidth": 2, "strokeWidth": 2,
@ -118,8 +118,8 @@
"italic": false, "italic": false,
"bold": true, "bold": true,
"underline": false, "underline": false,
"labelWidth": 25, "labelWidth": 20,
"labelHeight": 26, "labelHeight": 21,
"labelPosition": "INSIDE_MIDDLE_CENTER", "labelPosition": "INSIDE_MIDDLE_CENTER",
"zIndex": 0, "zIndex": 0,
"level": 2 "level": 2
@ -128,11 +128,11 @@
"id": "queue.M2", "id": "queue.M2",
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 377, "x": 257,
"y": 240 "y": 240
}, },
"width": 125, "width": 65,
"height": 126, "height": 66,
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
"strokeWidth": 2, "strokeWidth": 2,
@ -159,8 +159,8 @@
"italic": false, "italic": false,
"bold": true, "bold": true,
"underline": false, "underline": false,
"labelWidth": 25, "labelWidth": 20,
"labelHeight": 26, "labelHeight": 21,
"labelPosition": "INSIDE_MIDDLE_CENTER", "labelPosition": "INSIDE_MIDDLE_CENTER",
"zIndex": 0, "zIndex": 0,
"level": 2 "level": 2
@ -169,11 +169,11 @@
"id": "queue.M3", "id": "queue.M3",
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 522, "x": 342,
"y": 240 "y": 240
}, },
"width": 125, "width": 65,
"height": 126, "height": 66,
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
"strokeWidth": 2, "strokeWidth": 2,
@ -200,8 +200,8 @@
"italic": false, "italic": false,
"bold": true, "bold": true,
"underline": false, "underline": false,
"labelWidth": 25, "labelWidth": 20,
"labelHeight": 26, "labelHeight": 21,
"labelPosition": "INSIDE_MIDDLE_CENTER", "labelPosition": "INSIDE_MIDDLE_CENTER",
"zIndex": 0, "zIndex": 0,
"level": 2 "level": 2
@ -210,11 +210,11 @@
"id": "queue.M4", "id": "queue.M4",
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 667, "x": 427,
"y": 240 "y": 240
}, },
"width": 126, "width": 66,
"height": 126, "height": 66,
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
"strokeWidth": 2, "strokeWidth": 2,
@ -241,8 +241,8 @@
"italic": false, "italic": false,
"bold": true, "bold": true,
"underline": false, "underline": false,
"labelWidth": 26, "labelWidth": 21,
"labelHeight": 26, "labelHeight": 21,
"labelPosition": "INSIDE_MIDDLE_CENTER", "labelPosition": "INSIDE_MIDDLE_CENTER",
"zIndex": 0, "zIndex": 0,
"level": 2 "level": 2
@ -251,11 +251,11 @@
"id": "queue.M5", "id": "queue.M5",
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 813, "x": 513,
"y": 240 "y": 240
}, },
"width": 125, "width": 65,
"height": 126, "height": 66,
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
"strokeWidth": 2, "strokeWidth": 2,
@ -282,8 +282,8 @@
"italic": false, "italic": false,
"bold": true, "bold": true,
"underline": false, "underline": false,
"labelWidth": 25, "labelWidth": 20,
"labelHeight": 26, "labelHeight": 21,
"labelPosition": "INSIDE_MIDDLE_CENTER", "labelPosition": "INSIDE_MIDDLE_CENTER",
"zIndex": 0, "zIndex": 0,
"level": 2 "level": 2
@ -292,11 +292,11 @@
"id": "queue.M6", "id": "queue.M6",
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 958, "x": 598,
"y": 240 "y": 240
}, },
"width": 125, "width": 65,
"height": 126, "height": 66,
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
"strokeWidth": 2, "strokeWidth": 2,
@ -323,8 +323,8 @@
"italic": false, "italic": false,
"bold": true, "bold": true,
"underline": false, "underline": false,
"labelWidth": 25, "labelWidth": 20,
"labelHeight": 26, "labelHeight": 21,
"labelPosition": "INSIDE_MIDDLE_CENTER", "labelPosition": "INSIDE_MIDDLE_CENTER",
"zIndex": 0, "zIndex": 0,
"level": 2 "level": 2
@ -333,7 +333,7 @@
"id": "m0_desc", "id": "m0_desc",
"type": "text", "type": "text",
"pos": { "pos": {
"x": 96, "x": 66,
"y": 36 "y": 36
}, },
"width": 106, "width": 106,
@ -373,7 +373,7 @@
"id": "m2_desc", "id": "m2_desc",
"type": "text", "type": "text",
"pos": { "pos": {
"x": 419, "x": 269,
"y": 36 "y": 36
}, },
"width": 41, "width": 41,
@ -413,7 +413,7 @@
"id": "m5_desc", "id": "m5_desc",
"type": "text", "type": "text",
"pos": { "pos": {
"x": 830, "x": 450,
"y": 36 "y": 36
}, },
"width": 90, "width": 90,
@ -453,7 +453,7 @@
"id": "m6_desc", "id": "m6_desc",
"type": "text", "type": "text",
"pos": { "pos": {
"x": 950, "x": 560,
"y": 12 "y": 12
}, },
"width": 140, "width": 140,
@ -517,11 +517,11 @@
"labelPercentage": 0, "labelPercentage": 0,
"route": [ "route": [
{ {
"x": 149.5, "x": 119.5,
"y": 60 "y": 60
}, },
{ {
"x": 149.5, "x": 119.5,
"y": 240 "y": 240
} }
], ],
@ -556,11 +556,11 @@
"labelPercentage": 0, "labelPercentage": 0,
"route": [ "route": [
{ {
"x": 439.5, "x": 289.5,
"y": 60 "y": 60
}, },
{ {
"x": 439.5, "x": 289.5,
"y": 240 "y": 240
} }
], ],
@ -595,11 +595,19 @@
"labelPercentage": 0, "labelPercentage": 0,
"route": [ "route": [
{ {
"x": 875.5, "x": 495.5,
"y": 60 "y": 60
}, },
{ {
"x": 875.5, "x": 495.5,
"y": 110
},
{
"x": 545.5,
"y": 110
},
{
"x": 545.5,
"y": 240 "y": 240
} }
], ],
@ -634,11 +642,11 @@
"labelPercentage": 0, "labelPercentage": 0,
"route": [ "route": [
{ {
"x": 1020.5, "x": 630.5,
"y": 60 "y": 60
}, },
{ {
"x": 1020.5, "x": 630.5,
"y": 240 "y": 240
} }
], ],

View file

@ -3,7 +3,7 @@
id="d2-svg" id="d2-svg"
style="background: white;" style="background: white;"
xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"
width="1350" height="633" viewBox="-90 -90 1350 633"><style type="text/css"> width="930" height="573" viewBox="-90 -90 930 573"><style type="text/css">
<![CDATA[ <![CDATA[
.shape { .shape {
shape-rendering: geometricPrecision; shape-rendering: geometricPrecision;
@ -796,13 +796,13 @@ width="1350" height="633" viewBox="-90 -90 1350 633"><style type="text/css">
.md .contains-task-list:dir(rtl) .task-list-item-checkbox { .md .contains-task-list:dir(rtl) .task-list-item-checkbox {
margin: 0 -1.6em 0.25em 0.2em; margin: 0 -1.6em 0.25em 0.2em;
} }
</style><g id="queue"><g class="shape" ><path d="M 36 165 H 1134 C 1158 165 1158 289.2 1158 303 C 1158 316.8 1158 441 1134 441 H 36 C 12 441 12 316.8 12 303 C 12 289.2 12 165 36 165 Z" style="fill:#DEE1EB;stroke:#0D32B2;stroke-width:2;"/><path d="M 1134 165 C 1110 165 1110 289.2 1110 303 C 1110 316.8 1110 441 1134 441" style="fill:#DEE1EB;stroke:#0D32B2;stroke-width:2;"/></g></g><g id="m0_desc"><g class="shape" ></g><g><foreignObject requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" x="96.000000" y="36.000000" width="106" height="24"><div xmlns="http://www.w3.org/1999/xhtml" class="md" style="background-color:transparent;color:#0A0F25;"><p>Oldest message</p> </style><g id="queue"><g class="shape" ><path d="M 36 165 H 714 C 738 165 738 262 738 273 C 738 284 738 381 714 381 H 36 C 12 381 12 284 12 273 C 12 262 12 165 36 165 Z" style="fill:#DEE1EB;stroke:#0D32B2;stroke-width:2;"/><path d="M 714 165 C 690 165 690 262 690 273 C 690 284 690 381 714 381" style="fill:#DEE1EB;stroke:#0D32B2;stroke-width:2;"/></g></g><g id="m0_desc"><g class="shape" ></g><g><foreignObject requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" x="66.000000" y="36.000000" width="106" height="24"><div xmlns="http://www.w3.org/1999/xhtml" class="md" style="background-color:transparent;color:#0A0F25;"><p>Oldest message</p>
</div></foreignObject></g></g><g id="m2_desc"><g class="shape" ></g><g><foreignObject requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" x="419.000000" y="36.000000" width="41" height="24"><div xmlns="http://www.w3.org/1999/xhtml" class="md" style="background-color:transparent;color:#0A0F25;"><p>Offset</p> </div></foreignObject></g></g><g id="m2_desc"><g class="shape" ></g><g><foreignObject requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" x="269.000000" y="36.000000" width="41" height="24"><div xmlns="http://www.w3.org/1999/xhtml" class="md" style="background-color:transparent;color:#0A0F25;"><p>Offset</p>
</div></foreignObject></g></g><g id="m5_desc"><g class="shape" ></g><g><foreignObject requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" x="830.000000" y="36.000000" width="90" height="24"><div xmlns="http://www.w3.org/1999/xhtml" class="md" style="background-color:transparent;color:#0A0F25;"><p>Last message</p> </div></foreignObject></g></g><g id="m5_desc"><g class="shape" ></g><g><foreignObject requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" x="450.000000" y="36.000000" width="90" height="24"><div xmlns="http://www.w3.org/1999/xhtml" class="md" style="background-color:transparent;color:#0A0F25;"><p>Last message</p>
</div></foreignObject></g></g><g id="m6_desc"><g class="shape" ></g><g><foreignObject requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" x="950.000000" y="12.000000" width="140" height="48"><div xmlns="http://www.w3.org/1999/xhtml" class="md" style="background-color:transparent;color:#0A0F25;"><p>Next message will be<br /> </div></foreignObject></g></g><g id="m6_desc"><g class="shape" ></g><g><foreignObject requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" x="560.000000" y="12.000000" width="140" height="48"><div xmlns="http://www.w3.org/1999/xhtml" class="md" style="background-color:transparent;color:#0A0F25;"><p>Next message will be<br />
inserted here</p> inserted here</p>
</div></foreignObject></g></g><g id="queue.M0"><g class="shape" ><rect x="87" y="240" width="125" height="126" style="fill:#EDF0FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="149.500000" y="306.000000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">M0</text></g><g id="queue.M1"><g class="shape" ><rect x="232" y="240" width="125" height="126" style="fill:#EDF0FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="294.500000" y="306.000000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">M1</text></g><g id="queue.M2"><g class="shape" ><rect x="377" y="240" width="125" height="126" style="fill:#EDF0FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="439.500000" y="306.000000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">M2</text></g><g id="queue.M3"><g class="shape" ><rect x="522" y="240" width="125" height="126" style="fill:#EDF0FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="584.500000" y="306.000000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">M3</text></g><g id="queue.M4"><g class="shape" ><rect x="667" y="240" width="126" height="126" style="fill:#EDF0FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="730.000000" y="306.000000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">M4</text></g><g id="queue.M5"><g class="shape" ><rect x="813" y="240" width="125" height="126" style="fill:#EDF0FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="875.500000" y="306.000000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">M5</text></g><g id="queue.M6"><g class="shape" ><rect x="958" y="240" width="125" height="126" style="fill:#EDF0FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="1020.500000" y="306.000000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">M6</text></g><g id="(m0_desc -&gt; queue.M0)[0]"><marker id="mk-3990223579" markerWidth="10.000000" markerHeight="12.000000" refX="7.000000" refY="6.000000" viewBox="0.000000 0.000000 10.000000 12.000000" orient="auto" markerUnits="userSpaceOnUse"> <polygon class="connection" fill="#0D32B2" stroke-width="2" points="0.000000,0.000000 10.000000,6.000000 0.000000,12.000000" /> </marker><path d="M 149.500000 62.000000 L 149.500000 236.000000" class="connection" style="fill:none;stroke:#0D32B2;stroke-width:2;" marker-end="url(#mk-3990223579)" mask="url(#3171385237)"/></g><g id="(m2_desc -&gt; queue.M2)[0]"><path d="M 439.500000 62.000000 L 439.500000 236.000000" class="connection" style="fill:none;stroke:#0D32B2;stroke-width:2;" marker-end="url(#mk-3990223579)" mask="url(#3171385237)"/></g><g id="(m5_desc -&gt; queue.M5)[0]"><path d="M 875.500000 62.000000 L 875.500000 236.000000" class="connection" style="fill:none;stroke:#0D32B2;stroke-width:2;" marker-end="url(#mk-3990223579)" mask="url(#3171385237)"/></g><g id="(m6_desc -&gt; queue.M6)[0]"><path d="M 1020.500000 62.000000 L 1020.500000 236.000000" class="connection" style="fill:none;stroke:#0D32B2;stroke-width:2;" marker-end="url(#mk-3990223579)" mask="url(#3171385237)"/></g><mask id="3171385237" maskUnits="userSpaceOnUse" x="-100" y="-100" width="1350" height="633"> </div></foreignObject></g></g><g id="queue.M0"><g class="shape" ><rect x="87" y="240" width="65" height="66" style="fill:#EDF0FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="119.500000" y="278.500000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">M0</text></g><g id="queue.M1"><g class="shape" ><rect x="172" y="240" width="65" height="66" style="fill:#EDF0FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="204.500000" y="278.500000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">M1</text></g><g id="queue.M2"><g class="shape" ><rect x="257" y="240" width="65" height="66" style="fill:#EDF0FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="289.500000" y="278.500000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">M2</text></g><g id="queue.M3"><g class="shape" ><rect x="342" y="240" width="65" height="66" style="fill:#EDF0FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="374.500000" y="278.500000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">M3</text></g><g id="queue.M4"><g class="shape" ><rect x="427" y="240" width="66" height="66" style="fill:#EDF0FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="460.000000" y="278.500000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">M4</text></g><g id="queue.M5"><g class="shape" ><rect x="513" y="240" width="65" height="66" style="fill:#EDF0FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="545.500000" y="278.500000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">M5</text></g><g id="queue.M6"><g class="shape" ><rect x="598" y="240" width="65" height="66" style="fill:#EDF0FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="630.500000" y="278.500000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">M6</text></g><g id="(m0_desc -&gt; queue.M0)[0]"><marker id="mk-3990223579" markerWidth="10.000000" markerHeight="12.000000" refX="7.000000" refY="6.000000" viewBox="0.000000 0.000000 10.000000 12.000000" orient="auto" markerUnits="userSpaceOnUse"> <polygon class="connection" fill="#0D32B2" stroke-width="2" points="0.000000,0.000000 10.000000,6.000000 0.000000,12.000000" /> </marker><path d="M 119.500000 62.000000 L 119.500000 236.000000" class="connection" style="fill:none;stroke:#0D32B2;stroke-width:2;" marker-end="url(#mk-3990223579)" mask="url(#2142408228)"/></g><g id="(m2_desc -&gt; queue.M2)[0]"><path d="M 289.500000 62.000000 L 289.500000 236.000000" class="connection" style="fill:none;stroke:#0D32B2;stroke-width:2;" marker-end="url(#mk-3990223579)" mask="url(#2142408228)"/></g><g id="(m5_desc -&gt; queue.M5)[0]"><path d="M 495.500000 62.000000 L 495.500000 100.000000 S 495.500000 110.000000 505.500000 110.000000 L 535.500000 110.000000 S 545.500000 110.000000 545.500000 120.000000 L 545.500000 236.000000" class="connection" style="fill:none;stroke:#0D32B2;stroke-width:2;" marker-end="url(#mk-3990223579)" mask="url(#2142408228)"/></g><g id="(m6_desc -&gt; queue.M6)[0]"><path d="M 630.500000 62.000000 L 630.500000 236.000000" class="connection" style="fill:none;stroke:#0D32B2;stroke-width:2;" marker-end="url(#mk-3990223579)" mask="url(#2142408228)"/></g><mask id="2142408228" maskUnits="userSpaceOnUse" x="-100" y="-100" width="930" height="573">
<rect x="-100" y="-100" width="1350" height="633" fill="white"></rect> <rect x="-100" y="-100" width="930" height="573" fill="white"></rect>
</mask><style type="text/css"><![CDATA[ </mask><style type="text/css"><![CDATA[
.text { .text {

Before

Width:  |  Height:  |  Size: 664 KiB

After

Width:  |  Height:  |  Size: 664 KiB

View file

@ -9,8 +9,8 @@
"x": 13, "x": 13,
"y": 0 "y": 0
}, },
"width": 140, "width": 80,
"height": 126, "height": 66,
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
"strokeWidth": 0, "strokeWidth": 0,
@ -37,8 +37,8 @@
"italic": false, "italic": false,
"bold": true, "bold": true,
"underline": false, "underline": false,
"labelWidth": 40, "labelWidth": 35,
"labelHeight": 26, "labelHeight": 21,
"labelPosition": "INSIDE_MIDDLE_CENTER", "labelPosition": "INSIDE_MIDDLE_CENTER",
"zIndex": 0, "zIndex": 0,
"level": 1 "level": 1
@ -48,10 +48,10 @@
"type": "sequence_diagram", "type": "sequence_diagram",
"pos": { "pos": {
"x": 0, "x": 0,
"y": 226 "y": 166
}, },
"width": 166, "width": 106,
"height": 126, "height": 66,
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
"strokeWidth": 0, "strokeWidth": 0,
@ -78,8 +78,8 @@
"italic": false, "italic": false,
"bold": true, "bold": true,
"underline": false, "underline": false,
"labelWidth": 66, "labelWidth": 61,
"labelHeight": 26, "labelHeight": 21,
"labelPosition": "INSIDE_MIDDLE_CENTER", "labelPosition": "INSIDE_MIDDLE_CENTER",
"zIndex": 0, "zIndex": 0,
"level": 1 "level": 1
@ -112,20 +112,20 @@
"labelPercentage": 0, "labelPercentage": 0,
"route": [ "route": [
{ {
"x": 83, "x": 53,
"y": 66
},
{
"x": 53,
"y": 106
},
{
"x": 53,
"y": 126 "y": 126
}, },
{ {
"x": 83, "x": 53,
"y": 166 "y": 166
},
{
"x": 83,
"y": 186
},
{
"x": 83,
"y": 226
} }
], ],
"isCurve": true, "isCurve": true,

View file

@ -3,7 +3,7 @@
id="d2-svg" id="d2-svg"
style="background: white;" style="background: white;"
xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"
width="366" height="552" viewBox="-100 -100 366 552"><style type="text/css"> width="306" height="432" viewBox="-100 -100 306 432"><style type="text/css">
<![CDATA[ <![CDATA[
.shape { .shape {
shape-rendering: geometricPrecision; shape-rendering: geometricPrecision;
@ -39,8 +39,8 @@ width="366" height="552" viewBox="-100 -100 366 552"><style type="text/css">
svgEl.setAttribute("height", height * ratio - 16); svgEl.setAttribute("height", height * ratio - 16);
} }
}); });
]]></script><g id="A"><g class="shape" ><rect x="13" y="0" width="140" height="126" style="fill:#FFFFFF;stroke:#0D32B2;stroke-width:0;" /></g><text class="text-bold" x="83.000000" y="66.000000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">hello</text></g><g id="B"><g class="shape" ><rect x="0" y="226" width="166" height="126" style="fill:#FFFFFF;stroke:#0D32B2;stroke-width:0;" /></g><text class="text-bold" x="83.000000" y="292.000000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">goodbye</text></g><g id="(A -&gt; B)[0]"><marker id="mk-3990223579" markerWidth="10.000000" markerHeight="12.000000" refX="7.000000" refY="6.000000" viewBox="0.000000 0.000000 10.000000 12.000000" orient="auto" markerUnits="userSpaceOnUse"> <polygon class="connection" fill="#0D32B2" stroke-width="2" points="0.000000,0.000000 10.000000,6.000000 0.000000,12.000000" /> </marker><path d="M 83.000000 127.000000 C 83.000000 166.000000 83.000000 186.000000 83.000000 223.000000" class="connection" style="fill:none;stroke:#0D32B2;stroke-width:2;" marker-end="url(#mk-3990223579)" mask="url(#3673457740)"/></g><mask id="3673457740" maskUnits="userSpaceOnUse" x="-100" y="-100" width="366" height="552"> ]]></script><g id="A"><g class="shape" ><rect x="13" y="0" width="80" height="66" style="fill:#FFFFFF;stroke:#0D32B2;stroke-width:0;" /></g><text class="text-bold" x="53.000000" y="38.500000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">hello</text></g><g id="B"><g class="shape" ><rect x="0" y="166" width="106" height="66" style="fill:#FFFFFF;stroke:#0D32B2;stroke-width:0;" /></g><text class="text-bold" x="53.000000" y="204.500000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">goodbye</text></g><g id="(A -&gt; B)[0]"><marker id="mk-3990223579" markerWidth="10.000000" markerHeight="12.000000" refX="7.000000" refY="6.000000" viewBox="0.000000 0.000000 10.000000 12.000000" orient="auto" markerUnits="userSpaceOnUse"> <polygon class="connection" fill="#0D32B2" stroke-width="2" points="0.000000,0.000000 10.000000,6.000000 0.000000,12.000000" /> </marker><path d="M 53.000000 67.000000 C 53.000000 106.000000 53.000000 126.000000 53.000000 163.000000" class="connection" style="fill:none;stroke:#0D32B2;stroke-width:2;" marker-end="url(#mk-3990223579)" mask="url(#584752433)"/></g><mask id="584752433" maskUnits="userSpaceOnUse" x="-100" y="-100" width="306" height="432">
<rect x="-100" y="-100" width="366" height="552" fill="white"></rect> <rect x="-100" y="-100" width="306" height="432" fill="white"></rect>
</mask><style type="text/css"><![CDATA[ </mask><style type="text/css"><![CDATA[
.text-bold { .text-bold {

Before

Width:  |  Height:  |  Size: 325 KiB

After

Width:  |  Height:  |  Size: 325 KiB

View file

@ -9,8 +9,8 @@
"x": 25, "x": 25,
"y": 12 "y": 12
}, },
"width": 140, "width": 80,
"height": 126, "height": 66,
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
"strokeWidth": 0, "strokeWidth": 0,
@ -37,8 +37,8 @@
"italic": false, "italic": false,
"bold": true, "bold": true,
"underline": false, "underline": false,
"labelWidth": 40, "labelWidth": 35,
"labelHeight": 26, "labelHeight": 21,
"labelPosition": "INSIDE_MIDDLE_CENTER", "labelPosition": "INSIDE_MIDDLE_CENTER",
"zIndex": 0, "zIndex": 0,
"level": 1 "level": 1
@ -48,10 +48,10 @@
"type": "sequence_diagram", "type": "sequence_diagram",
"pos": { "pos": {
"x": 12, "x": 12,
"y": 238 "y": 178
}, },
"width": 166, "width": 106,
"height": 126, "height": 66,
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
"strokeWidth": 0, "strokeWidth": 0,
@ -78,8 +78,8 @@
"italic": false, "italic": false,
"bold": true, "bold": true,
"underline": false, "underline": false,
"labelWidth": 66, "labelWidth": 61,
"labelHeight": 26, "labelHeight": 21,
"labelPosition": "INSIDE_MIDDLE_CENTER", "labelPosition": "INSIDE_MIDDLE_CENTER",
"zIndex": 0, "zIndex": 0,
"level": 1 "level": 1
@ -112,12 +112,12 @@
"labelPercentage": 0, "labelPercentage": 0,
"route": [ "route": [
{ {
"x": 95, "x": 65,
"y": 138 "y": 78
}, },
{ {
"x": 95, "x": 65,
"y": 238 "y": 178
} }
], ],
"animated": false, "animated": false,

View file

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

Before

Width:  |  Height:  |  Size: 325 KiB

After

Width:  |  Height:  |  Size: 325 KiB

View file

@ -6,8 +6,8 @@
"id": "md", "id": "md",
"type": "text", "type": "text",
"pos": { "pos": {
"x": 9, "x": 0,
"y": 226 "y": 166
}, },
"width": 95, "width": 95,
"height": 115, "height": 115,
@ -46,11 +46,11 @@
"id": "a", "id": "a",
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 0, "x": 21,
"y": 0 "y": 0
}, },
"width": 113, "width": 53,
"height": 126, "height": 66,
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
"strokeWidth": 2, "strokeWidth": 2,
@ -77,8 +77,8 @@
"italic": false, "italic": false,
"bold": true, "bold": true,
"underline": false, "underline": false,
"labelWidth": 13, "labelWidth": 8,
"labelHeight": 26, "labelHeight": 21,
"labelPosition": "INSIDE_MIDDLE_CENTER", "labelPosition": "INSIDE_MIDDLE_CENTER",
"zIndex": 0, "zIndex": 0,
"level": 1 "level": 1
@ -87,11 +87,11 @@
"id": "b", "id": "b",
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 0, "x": 21,
"y": 441 "y": 381
}, },
"width": 113, "width": 53,
"height": 126, "height": 66,
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
"strokeWidth": 2, "strokeWidth": 2,
@ -118,8 +118,8 @@
"italic": false, "italic": false,
"bold": true, "bold": true,
"underline": false, "underline": false,
"labelWidth": 13, "labelWidth": 8,
"labelHeight": 26, "labelHeight": 21,
"labelPosition": "INSIDE_MIDDLE_CENTER", "labelPosition": "INSIDE_MIDDLE_CENTER",
"zIndex": 0, "zIndex": 0,
"level": 1 "level": 1
@ -152,20 +152,20 @@
"labelPercentage": 0, "labelPercentage": 0,
"route": [ "route": [
{ {
"x": 56.5, "x": 47.5,
"y": 66
},
{
"x": 47.5,
"y": 106
},
{
"x": 47.5,
"y": 126 "y": 126
}, },
{ {
"x": 56.5, "x": 47.5,
"y": 166 "y": 166
},
{
"x": 56.5,
"y": 186
},
{
"x": 56.5,
"y": 226
} }
], ],
"isCurve": true, "isCurve": true,
@ -200,20 +200,20 @@
"labelPercentage": 0, "labelPercentage": 0,
"route": [ "route": [
{ {
"x": 56.5, "x": 47.5,
"y": 281
},
{
"x": 47.5,
"y": 321
},
{
"x": 47.5,
"y": 341 "y": 341
}, },
{ {
"x": 56.5, "x": 47.5,
"y": 381 "y": 381
},
{
"x": 56.5,
"y": 401
},
{
"x": 56.5,
"y": 441
} }
], ],
"isCurve": true, "isCurve": true,

View file

@ -3,7 +3,7 @@
id="d2-svg" id="d2-svg"
style="background: white;" style="background: white;"
xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"
width="317" height="771" viewBox="-102 -102 317 771"><style type="text/css"> width="299" height="651" viewBox="-102 -102 299 651"><style type="text/css">
<![CDATA[ <![CDATA[
.shape { .shape {
shape-rendering: geometricPrecision; shape-rendering: geometricPrecision;
@ -796,7 +796,7 @@ width="317" height="771" viewBox="-102 -102 317 771"><style type="text/css">
.md .contains-task-list:dir(rtl) .task-list-item-checkbox { .md .contains-task-list:dir(rtl) .task-list-item-checkbox {
margin: 0 -1.6em 0.25em 0.2em; margin: 0 -1.6em 0.25em 0.2em;
} }
</style><g id="md"><g class="shape" ></g><g><foreignObject requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" x="9.000000" y="226.000000" width="95" height="115"><div xmlns="http://www.w3.org/1999/xhtml" class="md" style="background-color:transparent;color:#0A0F25;"><h1>hey</h1> </style><g id="md"><g class="shape" ></g><g><foreignObject requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" x="0.000000" y="166.000000" width="95" height="115"><div xmlns="http://www.w3.org/1999/xhtml" class="md" style="background-color:transparent;color:#0A0F25;"><h1>hey</h1>
<ul> <ul>
<li>they <li>they
<ol> <ol>
@ -804,8 +804,8 @@ width="317" height="771" viewBox="-102 -102 317 771"><style type="text/css">
</ol> </ol>
</li> </li>
</ul> </ul>
</div></foreignObject></g></g><g id="a"><g class="shape" ><rect x="0" y="0" width="113" height="126" style="fill:#F7F8FE;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="56.500000" y="66.000000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">a</text></g><g id="b"><g class="shape" ><rect x="0" y="441" width="113" height="126" style="fill:#F7F8FE;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="56.500000" y="507.000000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">b</text></g><g id="(a -&gt; md)[0]"><marker id="mk-3990223579" markerWidth="10.000000" markerHeight="12.000000" refX="7.000000" refY="6.000000" viewBox="0.000000 0.000000 10.000000 12.000000" orient="auto" markerUnits="userSpaceOnUse"> <polygon class="connection" fill="#0D32B2" stroke-width="2" points="0.000000,0.000000 10.000000,6.000000 0.000000,12.000000" /> </marker><path d="M 56.500000 128.000000 C 56.500000 166.000000 56.500000 186.000000 56.500000 222.000000" class="connection" style="fill:none;stroke:#0D32B2;stroke-width:2;" marker-end="url(#mk-3990223579)" mask="url(#3337638975)"/></g><g id="(md -&gt; b)[0]"><path d="M 56.500000 343.000000 C 56.500000 381.000000 56.500000 401.000000 56.500000 437.000000" class="connection" style="fill:none;stroke:#0D32B2;stroke-width:2;" marker-end="url(#mk-3990223579)" mask="url(#3337638975)"/></g><mask id="3337638975" maskUnits="userSpaceOnUse" x="-100" y="-100" width="317" height="771"> </div></foreignObject></g></g><g id="a"><g class="shape" ><rect x="21" y="0" width="53" height="66" style="fill:#F7F8FE;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="47.500000" y="38.500000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">a</text></g><g id="b"><g class="shape" ><rect x="21" y="381" width="53" height="66" style="fill:#F7F8FE;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="47.500000" y="419.500000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">b</text></g><g id="(a -&gt; md)[0]"><marker id="mk-3990223579" markerWidth="10.000000" markerHeight="12.000000" refX="7.000000" refY="6.000000" viewBox="0.000000 0.000000 10.000000 12.000000" orient="auto" markerUnits="userSpaceOnUse"> <polygon class="connection" fill="#0D32B2" stroke-width="2" points="0.000000,0.000000 10.000000,6.000000 0.000000,12.000000" /> </marker><path d="M 47.500000 68.000000 C 47.500000 106.000000 47.500000 126.000000 47.500000 162.000000" class="connection" style="fill:none;stroke:#0D32B2;stroke-width:2;" marker-end="url(#mk-3990223579)" mask="url(#817120199)"/></g><g id="(md -&gt; b)[0]"><path d="M 47.500000 283.000000 C 47.500000 321.000000 47.500000 341.000000 47.500000 377.000000" class="connection" style="fill:none;stroke:#0D32B2;stroke-width:2;" marker-end="url(#mk-3990223579)" mask="url(#817120199)"/></g><mask id="817120199" maskUnits="userSpaceOnUse" x="-100" y="-100" width="299" height="651">
<rect x="-100" y="-100" width="317" height="771" fill="white"></rect> <rect x="-100" y="-100" width="299" height="651" fill="white"></rect>
</mask><style type="text/css"><![CDATA[ </mask><style type="text/css"><![CDATA[
.text { .text {

Before

Width:  |  Height:  |  Size: 661 KiB

After

Width:  |  Height:  |  Size: 661 KiB

View file

@ -6,8 +6,8 @@
"id": "md", "id": "md",
"type": "text", "type": "text",
"pos": { "pos": {
"x": 21, "x": 12,
"y": 238 "y": 178
}, },
"width": 95, "width": 95,
"height": 115, "height": 115,
@ -46,11 +46,11 @@
"id": "a", "id": "a",
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 12, "x": 33,
"y": 12 "y": 12
}, },
"width": 113, "width": 53,
"height": 126, "height": 66,
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
"strokeWidth": 2, "strokeWidth": 2,
@ -77,8 +77,8 @@
"italic": false, "italic": false,
"bold": true, "bold": true,
"underline": false, "underline": false,
"labelWidth": 13, "labelWidth": 8,
"labelHeight": 26, "labelHeight": 21,
"labelPosition": "INSIDE_MIDDLE_CENTER", "labelPosition": "INSIDE_MIDDLE_CENTER",
"zIndex": 0, "zIndex": 0,
"level": 1 "level": 1
@ -87,11 +87,11 @@
"id": "b", "id": "b",
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 12, "x": 33,
"y": 453 "y": 393
}, },
"width": 113, "width": 53,
"height": 126, "height": 66,
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
"strokeWidth": 2, "strokeWidth": 2,
@ -118,8 +118,8 @@
"italic": false, "italic": false,
"bold": true, "bold": true,
"underline": false, "underline": false,
"labelWidth": 13, "labelWidth": 8,
"labelHeight": 26, "labelHeight": 21,
"labelPosition": "INSIDE_MIDDLE_CENTER", "labelPosition": "INSIDE_MIDDLE_CENTER",
"zIndex": 0, "zIndex": 0,
"level": 1 "level": 1
@ -152,12 +152,12 @@
"labelPercentage": 0, "labelPercentage": 0,
"route": [ "route": [
{ {
"x": 68.5, "x": 59.5,
"y": 138 "y": 78
}, },
{ {
"x": 68.5, "x": 59.5,
"y": 238 "y": 178
} }
], ],
"animated": false, "animated": false,
@ -191,12 +191,12 @@
"labelPercentage": 0, "labelPercentage": 0,
"route": [ "route": [
{ {
"x": 68.5, "x": 59.5,
"y": 353 "y": 293
}, },
{ {
"x": 68.5, "x": 59.5,
"y": 453 "y": 393
} }
], ],
"animated": false, "animated": false,

View file

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

Before

Width:  |  Height:  |  Size: 660 KiB

After

Width:  |  Height:  |  Size: 660 KiB

View file

@ -37,8 +37,8 @@
"italic": false, "italic": false,
"bold": true, "bold": true,
"underline": false, "underline": false,
"labelWidth": 73, "labelWidth": 68,
"labelHeight": 38, "labelHeight": 33,
"zIndex": 0, "zIndex": 0,
"level": 1 "level": 1
} }

View file

@ -39,7 +39,7 @@ width="277" height="242" viewBox="-102 -102 277 242"><style type="text/css">
svgEl.setAttribute("height", height * ratio - 16); svgEl.setAttribute("height", height * ratio - 16);
} }
}); });
]]></script><g id="x"><g class="shape" ></g><g transform="translate(0.000000 0.000000)"><rect class="shape" width="73" height="38" style="stroke: #0A0F25;fill:#ffffff" /><g transform="translate(6 6)"><text class="text-mono" x="0" y="1.000000em" xml:space="preserve">x&#160;-&gt;&#160;y</text></g></g></g><mask id="274225802" maskUnits="userSpaceOnUse" x="-100" y="-100" width="277" height="242"> ]]></script><g id="x"><g class="shape" ></g><g transform="translate(0.000000 0.000000)"><rect class="shape" width="73" height="38" style="stroke: #0A0F25;fill:#ffffff" /><g transform="translate(6 6)"><text class="text-mono" x="0" y="1.000000em" xml:space="preserve">x&#160;-&gt;&#160;y</text></g></g></g><mask id="1997683633" maskUnits="userSpaceOnUse" x="-100" y="-100" width="277" height="242">
<rect x="-100" y="-100" width="277" height="242" fill="white"></rect> <rect x="-100" y="-100" width="277" height="242" fill="white"></rect>
</mask><style type="text/css"><![CDATA[ </mask><style type="text/css"><![CDATA[

Before

Width:  |  Height:  |  Size: 182 KiB

After

Width:  |  Height:  |  Size: 182 KiB

View file

@ -37,8 +37,8 @@
"italic": false, "italic": false,
"bold": true, "bold": true,
"underline": false, "underline": false,
"labelWidth": 73, "labelWidth": 68,
"labelHeight": 38, "labelHeight": 33,
"zIndex": 0, "zIndex": 0,
"level": 1 "level": 1
} }

View file

@ -39,7 +39,7 @@ width="277" height="242" viewBox="-90 -90 277 242"><style type="text/css">
svgEl.setAttribute("height", height * ratio - 16); svgEl.setAttribute("height", height * ratio - 16);
} }
}); });
]]></script><g id="x"><g class="shape" ></g><g transform="translate(12.000000 12.000000)"><rect class="shape" width="73" height="38" style="stroke: #0A0F25;fill:#ffffff" /><g transform="translate(6 6)"><text class="text-mono" x="0" y="1.000000em" xml:space="preserve">x&#160;-&gt;&#160;y</text></g></g></g><mask id="2319456642" maskUnits="userSpaceOnUse" x="-100" y="-100" width="277" height="242"> ]]></script><g id="x"><g class="shape" ></g><g transform="translate(12.000000 12.000000)"><rect class="shape" width="73" height="38" style="stroke: #0A0F25;fill:#ffffff" /><g transform="translate(6 6)"><text class="text-mono" x="0" y="1.000000em" xml:space="preserve">x&#160;-&gt;&#160;y</text></g></g></g><mask id="2720532649" maskUnits="userSpaceOnUse" x="-100" y="-100" width="277" height="242">
<rect x="-100" y="-100" width="277" height="242" fill="white"></rect> <rect x="-100" y="-100" width="277" height="242" fill="white"></rect>
</mask><style type="text/css"><![CDATA[ </mask><style type="text/css"><![CDATA[

Before

Width:  |  Height:  |  Size: 182 KiB

After

Width:  |  Height:  |  Size: 182 KiB

View file

@ -37,8 +37,8 @@
"italic": false, "italic": false,
"bold": false, "bold": false,
"underline": false, "underline": false,
"labelWidth": 982, "labelWidth": 977,
"labelHeight": 36, "labelHeight": 31,
"zIndex": 0, "zIndex": 0,
"level": 1, "level": 1,
"primaryAccentColor": "#0D32B2", "primaryAccentColor": "#0D32B2",
@ -80,8 +80,8 @@
"italic": false, "italic": false,
"bold": true, "bold": true,
"underline": false, "underline": false,
"labelWidth": 361, "labelWidth": 356,
"labelHeight": 36, "labelHeight": 31,
"zIndex": 0, "zIndex": 0,
"level": 1, "level": 1,
"primaryAccentColor": "#0D32B2", "primaryAccentColor": "#0D32B2",
@ -152,8 +152,8 @@
"italic": false, "italic": false,
"bold": true, "bold": true,
"underline": false, "underline": false,
"labelWidth": 361, "labelWidth": 356,
"labelHeight": 36, "labelHeight": 31,
"zIndex": 0, "zIndex": 0,
"level": 1, "level": 1,
"primaryAccentColor": "#0D32B2", "primaryAccentColor": "#0D32B2",

View file

@ -39,9 +39,9 @@ width="1286" height="548" viewBox="-102 -102 1286 548"><style type="text/css">
svgEl.setAttribute("height", height * ratio - 16); svgEl.setAttribute("height", height * ratio - 16);
} }
}); });
]]></script><g id="class"><g class="shape" ><rect class="shape" x="0" y="0" width="1082" height="36" style="fill:#FFFFFF;stroke:#0A0F25;stroke-width:2;"/><rect class="class_header" x="0.000000" y="0.000000" width="1082.000000" height="36.000000" fill="#0A0F25" /><text class="text-mono" x="541.000000" y="27.000000" style="text-anchor:middle;font-size:24px;fill:#FFFFFF">RefreshAuthorizationPolicyProtocolServerSideTranslatorProtocolBuffer</text><line x1="0.000000" y1="36.000000" x2="1082.000000" y2="36.000000" style="stroke-width:1;stroke:#0A0F25" /></g></g><g id="table"><g class="shape" ><rect class="shape" x="341" y="136" width="401" height="36" style="fill:#FFFFFF;stroke:#0A0F25;stroke-width:2;"/><rect class="class_header" x="341.000000" y="136.000000" width="401.000000" height="36.000000" fill="#0A0F25" /><text class="text" x="361.000000" y="163.000000" style="text-anchor:start;font-size:24px;fill:#FFFFFF">RefreshAuthorizationPolicyCache</text></g></g><g id="table with short col"><g class="shape" ><rect class="shape" x="341" y="272" width="401" height="72" style="fill:#FFFFFF;stroke:#0A0F25;stroke-width:2;"/><rect class="class_header" x="341.000000" y="272.000000" width="401.000000" height="36.000000" fill="#0A0F25" /><text class="text" x="361.000000" y="299.000000" style="text-anchor:start;font-size:24px;fill:#FFFFFF">RefreshAuthorizationPolicyCache</text><text class="text" x="351.000000" y="331.000000" style="text-anchor:start;font-size:20px;fill:#0D32B2">ok</text> ]]></script><g id="class"><g class="shape" ><rect class="shape" x="0" y="0" width="1082" height="36" style="fill:#FFFFFF;stroke:#0A0F25;stroke-width:2;"/><rect class="class_header" x="0.000000" y="0.000000" width="1082.000000" height="36.000000" fill="#0A0F25" /><text class="text-mono" x="541.000000" y="25.750000" style="text-anchor:middle;font-size:24px;fill:#FFFFFF">RefreshAuthorizationPolicyProtocolServerSideTranslatorProtocolBuffer</text><line x1="0.000000" y1="36.000000" x2="1082.000000" y2="36.000000" style="stroke-width:1;stroke:#0A0F25" /></g></g><g id="table"><g class="shape" ><rect class="shape" x="341" y="136" width="401" height="36" style="fill:#FFFFFF;stroke:#0A0F25;stroke-width:2;"/><rect class="class_header" x="341.000000" y="136.000000" width="401.000000" height="36.000000" fill="#0A0F25" /><text class="text" x="361.000000" y="161.750000" style="text-anchor:start;font-size:24px;fill:#FFFFFF">RefreshAuthorizationPolicyCache</text></g></g><g id="table with short col"><g class="shape" ><rect class="shape" x="341" y="272" width="401" height="72" style="fill:#FFFFFF;stroke:#0A0F25;stroke-width:2;"/><rect class="class_header" x="341.000000" y="272.000000" width="401.000000" height="36.000000" fill="#0A0F25" /><text class="text" x="361.000000" y="297.750000" style="text-anchor:start;font-size:24px;fill:#FFFFFF">RefreshAuthorizationPolicyCache</text><text class="text" x="351.000000" y="331.000000" style="text-anchor:start;font-size:20px;fill:#0D32B2">ok</text>
<text class="text" x="392.000000" y="331.000000" style="text-anchor:start;font-size:20px;fill:#676C7E"></text> <text class="text" x="392.000000" y="331.000000" style="text-anchor:start;font-size:20px;fill:#676C7E"></text>
<text class="text" x="722.000000" y="331.000000" style="text-anchor:end;font-size:20px;fill:#4A6FF3;letter-spacing:2px;"></text><line x1="341.000000" y1="344.000000" x2="742.000000" y2="344.000000" style="stroke-width:2;stroke:#0A0F25" /></g></g><g id="(class -&gt; table)[0]"><marker id="mk-3990223579" markerWidth="10.000000" markerHeight="12.000000" refX="7.000000" refY="6.000000" viewBox="0.000000 0.000000 10.000000 12.000000" orient="auto" markerUnits="userSpaceOnUse"> <polygon class="connection" fill="#0D32B2" stroke-width="2" points="0.000000,0.000000 10.000000,6.000000 0.000000,12.000000" /> </marker><path d="M 541.000000 38.000000 C 541.000000 76.000000 541.000000 96.000000 541.000000 132.000000" class="connection" style="fill:none;stroke:#0D32B2;stroke-width:2;" marker-end="url(#mk-3990223579)" mask="url(#1571432776)"/></g><g id="(table -&gt; table with short col)[0]"><path d="M 541.000000 174.000000 C 541.000000 212.000000 541.000000 232.000000 541.000000 268.000000" class="connection" style="fill:none;stroke:#0D32B2;stroke-width:2;" marker-end="url(#mk-3990223579)" mask="url(#1571432776)"/></g><mask id="1571432776" maskUnits="userSpaceOnUse" x="-100" y="-100" width="1286" height="548"> <text class="text" x="722.000000" y="331.000000" style="text-anchor:end;font-size:20px;fill:#4A6FF3;letter-spacing:2px;"></text><line x1="341.000000" y1="344.000000" x2="742.000000" y2="344.000000" style="stroke-width:2;stroke:#0A0F25" /></g></g><g id="(class -&gt; table)[0]"><marker id="mk-3990223579" markerWidth="10.000000" markerHeight="12.000000" refX="7.000000" refY="6.000000" viewBox="0.000000 0.000000 10.000000 12.000000" orient="auto" markerUnits="userSpaceOnUse"> <polygon class="connection" fill="#0D32B2" stroke-width="2" points="0.000000,0.000000 10.000000,6.000000 0.000000,12.000000" /> </marker><path d="M 541.000000 38.000000 C 541.000000 76.000000 541.000000 96.000000 541.000000 132.000000" class="connection" style="fill:none;stroke:#0D32B2;stroke-width:2;" marker-end="url(#mk-3990223579)" mask="url(#2063588009)"/></g><g id="(table -&gt; table with short col)[0]"><path d="M 541.000000 174.000000 C 541.000000 212.000000 541.000000 232.000000 541.000000 268.000000" class="connection" style="fill:none;stroke:#0D32B2;stroke-width:2;" marker-end="url(#mk-3990223579)" mask="url(#2063588009)"/></g><mask id="2063588009" maskUnits="userSpaceOnUse" x="-100" y="-100" width="1286" height="548">
<rect x="-100" y="-100" width="1286" height="548" fill="white"></rect> <rect x="-100" y="-100" width="1286" height="548" fill="white"></rect>
</mask><style type="text/css"><![CDATA[ </mask><style type="text/css"><![CDATA[

Before

Width:  |  Height:  |  Size: 508 KiB

After

Width:  |  Height:  |  Size: 508 KiB

View file

@ -37,8 +37,8 @@
"italic": false, "italic": false,
"bold": false, "bold": false,
"underline": false, "underline": false,
"labelWidth": 982, "labelWidth": 977,
"labelHeight": 36, "labelHeight": 31,
"zIndex": 0, "zIndex": 0,
"level": 1, "level": 1,
"primaryAccentColor": "#0D32B2", "primaryAccentColor": "#0D32B2",
@ -80,8 +80,8 @@
"italic": false, "italic": false,
"bold": true, "bold": true,
"underline": false, "underline": false,
"labelWidth": 361, "labelWidth": 356,
"labelHeight": 36, "labelHeight": 31,
"zIndex": 0, "zIndex": 0,
"level": 1, "level": 1,
"primaryAccentColor": "#0D32B2", "primaryAccentColor": "#0D32B2",
@ -152,8 +152,8 @@
"italic": false, "italic": false,
"bold": true, "bold": true,
"underline": false, "underline": false,
"labelWidth": 361, "labelWidth": 356,
"labelHeight": 36, "labelHeight": 31,
"zIndex": 0, "zIndex": 0,
"level": 1, "level": 1,
"primaryAccentColor": "#0D32B2", "primaryAccentColor": "#0D32B2",

View file

@ -39,9 +39,9 @@ width="1286" height="548" viewBox="-90 -90 1286 548"><style type="text/css">
svgEl.setAttribute("height", height * ratio - 16); svgEl.setAttribute("height", height * ratio - 16);
} }
}); });
]]></script><g id="class"><g class="shape" ><rect class="shape" x="12" y="12" width="1082" height="36" style="fill:#FFFFFF;stroke:#0A0F25;stroke-width:2;"/><rect class="class_header" x="12.000000" y="12.000000" width="1082.000000" height="36.000000" fill="#0A0F25" /><text class="text-mono" x="553.000000" y="39.000000" style="text-anchor:middle;font-size:24px;fill:#FFFFFF">RefreshAuthorizationPolicyProtocolServerSideTranslatorProtocolBuffer</text><line x1="12.000000" y1="48.000000" x2="1094.000000" y2="48.000000" style="stroke-width:1;stroke:#0A0F25" /></g></g><g id="table"><g class="shape" ><rect class="shape" x="352" y="148" width="401" height="36" style="fill:#FFFFFF;stroke:#0A0F25;stroke-width:2;"/><rect class="class_header" x="352.000000" y="148.000000" width="401.000000" height="36.000000" fill="#0A0F25" /><text class="text" x="372.000000" y="175.000000" style="text-anchor:start;font-size:24px;fill:#FFFFFF">RefreshAuthorizationPolicyCache</text></g></g><g id="table with short col"><g class="shape" ><rect class="shape" x="352" y="284" width="401" height="72" style="fill:#FFFFFF;stroke:#0A0F25;stroke-width:2;"/><rect class="class_header" x="352.000000" y="284.000000" width="401.000000" height="36.000000" fill="#0A0F25" /><text class="text" x="372.000000" y="311.000000" style="text-anchor:start;font-size:24px;fill:#FFFFFF">RefreshAuthorizationPolicyCache</text><text class="text" x="362.000000" y="343.000000" style="text-anchor:start;font-size:20px;fill:#0D32B2">ok</text> ]]></script><g id="class"><g class="shape" ><rect class="shape" x="12" y="12" width="1082" height="36" style="fill:#FFFFFF;stroke:#0A0F25;stroke-width:2;"/><rect class="class_header" x="12.000000" y="12.000000" width="1082.000000" height="36.000000" fill="#0A0F25" /><text class="text-mono" x="553.000000" y="37.750000" style="text-anchor:middle;font-size:24px;fill:#FFFFFF">RefreshAuthorizationPolicyProtocolServerSideTranslatorProtocolBuffer</text><line x1="12.000000" y1="48.000000" x2="1094.000000" y2="48.000000" style="stroke-width:1;stroke:#0A0F25" /></g></g><g id="table"><g class="shape" ><rect class="shape" x="352" y="148" width="401" height="36" style="fill:#FFFFFF;stroke:#0A0F25;stroke-width:2;"/><rect class="class_header" x="352.000000" y="148.000000" width="401.000000" height="36.000000" fill="#0A0F25" /><text class="text" x="372.000000" y="173.750000" style="text-anchor:start;font-size:24px;fill:#FFFFFF">RefreshAuthorizationPolicyCache</text></g></g><g id="table with short col"><g class="shape" ><rect class="shape" x="352" y="284" width="401" height="72" style="fill:#FFFFFF;stroke:#0A0F25;stroke-width:2;"/><rect class="class_header" x="352.000000" y="284.000000" width="401.000000" height="36.000000" fill="#0A0F25" /><text class="text" x="372.000000" y="309.750000" style="text-anchor:start;font-size:24px;fill:#FFFFFF">RefreshAuthorizationPolicyCache</text><text class="text" x="362.000000" y="343.000000" style="text-anchor:start;font-size:20px;fill:#0D32B2">ok</text>
<text class="text" x="403.000000" y="343.000000" style="text-anchor:start;font-size:20px;fill:#676C7E"></text> <text class="text" x="403.000000" y="343.000000" style="text-anchor:start;font-size:20px;fill:#676C7E"></text>
<text class="text" x="733.000000" y="343.000000" style="text-anchor:end;font-size:20px;fill:#4A6FF3;letter-spacing:2px;"></text><line x1="352.000000" y1="356.000000" x2="753.000000" y2="356.000000" style="stroke-width:2;stroke:#0A0F25" /></g></g><g id="(class -&gt; table)[0]"><marker id="mk-3990223579" markerWidth="10.000000" markerHeight="12.000000" refX="7.000000" refY="6.000000" viewBox="0.000000 0.000000 10.000000 12.000000" orient="auto" markerUnits="userSpaceOnUse"> <polygon class="connection" fill="#0D32B2" stroke-width="2" points="0.000000,0.000000 10.000000,6.000000 0.000000,12.000000" /> </marker><path d="M 553.000000 50.000000 L 553.000000 144.000000" class="connection" style="fill:none;stroke:#0D32B2;stroke-width:2;" marker-end="url(#mk-3990223579)" mask="url(#466173678)"/></g><g id="(table -&gt; table with short col)[0]"><path d="M 553.000000 186.000000 L 553.000000 280.000000" class="connection" style="fill:none;stroke:#0D32B2;stroke-width:2;" marker-end="url(#mk-3990223579)" mask="url(#466173678)"/></g><mask id="466173678" maskUnits="userSpaceOnUse" x="-100" y="-100" width="1286" height="548"> <text class="text" x="733.000000" y="343.000000" style="text-anchor:end;font-size:20px;fill:#4A6FF3;letter-spacing:2px;"></text><line x1="352.000000" y1="356.000000" x2="753.000000" y2="356.000000" style="stroke-width:2;stroke:#0A0F25" /></g></g><g id="(class -&gt; table)[0]"><marker id="mk-3990223579" markerWidth="10.000000" markerHeight="12.000000" refX="7.000000" refY="6.000000" viewBox="0.000000 0.000000 10.000000 12.000000" orient="auto" markerUnits="userSpaceOnUse"> <polygon class="connection" fill="#0D32B2" stroke-width="2" points="0.000000,0.000000 10.000000,6.000000 0.000000,12.000000" /> </marker><path d="M 553.000000 50.000000 L 553.000000 144.000000" class="connection" style="fill:none;stroke:#0D32B2;stroke-width:2;" marker-end="url(#mk-3990223579)" mask="url(#4173877699)"/></g><g id="(table -&gt; table with short col)[0]"><path d="M 553.000000 186.000000 L 553.000000 280.000000" class="connection" style="fill:none;stroke:#0D32B2;stroke-width:2;" marker-end="url(#mk-3990223579)" mask="url(#4173877699)"/></g><mask id="4173877699" maskUnits="userSpaceOnUse" x="-100" y="-100" width="1286" height="548">
<rect x="-100" y="-100" width="1286" height="548" fill="white"></rect> <rect x="-100" y="-100" width="1286" height="548" fill="white"></rect>
</mask><style type="text/css"><![CDATA[ </mask><style type="text/css"><![CDATA[

Before

Width:  |  Height:  |  Size: 508 KiB

After

Width:  |  Height:  |  Size: 508 KiB

View file

@ -6,11 +6,11 @@
"id": "x", "id": "x",
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 105, "x": 135,
"y": 0 "y": 0
}, },
"width": 113, "width": 53,
"height": 126, "height": 66,
"opacity": 0.4, "opacity": 0.4,
"strokeDash": 0, "strokeDash": 0,
"strokeWidth": 2, "strokeWidth": 2,
@ -37,8 +37,8 @@
"italic": false, "italic": false,
"bold": true, "bold": true,
"underline": false, "underline": false,
"labelWidth": 13, "labelWidth": 8,
"labelHeight": 26, "labelHeight": 21,
"labelPosition": "INSIDE_MIDDLE_CENTER", "labelPosition": "INSIDE_MIDDLE_CENTER",
"zIndex": 0, "zIndex": 0,
"level": 1 "level": 1
@ -47,8 +47,8 @@
"id": "y", "id": "y",
"type": "text", "type": "text",
"pos": { "pos": {
"x": 278, "x": 248,
"y": 51 "y": 21
}, },
"width": 304, "width": 304,
"height": 24, "height": 24,
@ -87,11 +87,11 @@
"id": "a", "id": "a",
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 105, "x": 135,
"y": 263 "y": 203
}, },
"width": 113, "width": 53,
"height": 126, "height": 66,
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
"strokeWidth": 2, "strokeWidth": 2,
@ -118,8 +118,8 @@
"italic": false, "italic": false,
"bold": true, "bold": true,
"underline": false, "underline": false,
"labelWidth": 13, "labelWidth": 8,
"labelHeight": 26, "labelHeight": 21,
"labelPosition": "INSIDE_MIDDLE_CENTER", "labelPosition": "INSIDE_MIDDLE_CENTER",
"zIndex": 0, "zIndex": 0,
"level": 1 "level": 1
@ -153,19 +153,19 @@
"route": [ "route": [
{ {
"x": 161, "x": 161,
"y": 126 "y": 66
}, },
{ {
"x": 161, "x": 161,
"y": 180.8 "y": 120.80000000000001
}, },
{ {
"x": 161, "x": 161,
"y": 208.3 "y": 148.3
}, },
{ {
"x": 161, "x": 161,
"y": 263.5 "y": 203.5
} }
], ],
"isCurve": true, "isCurve": true,

View file

@ -3,7 +3,7 @@
id="d2-svg" id="d2-svg"
style="background: white;" style="background: white;"
xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"
width="784" height="593" viewBox="-100 -102 784 593"><style type="text/css"> width="754" height="473" viewBox="-100 -102 754 473"><style type="text/css">
<![CDATA[ <![CDATA[
.shape { .shape {
shape-rendering: geometricPrecision; shape-rendering: geometricPrecision;
@ -796,10 +796,10 @@ width="784" height="593" viewBox="-100 -102 784 593"><style type="text/css">
.md .contains-task-list:dir(rtl) .task-list-item-checkbox { .md .contains-task-list:dir(rtl) .task-list-item-checkbox {
margin: 0 -1.6em 0.25em 0.2em; margin: 0 -1.6em 0.25em 0.2em;
} }
</style><g id="x" style='opacity:0.400000'><g class="shape" ><rect x="105" y="0" width="113" height="126" style="fill:#F7F8FE;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="161.500000" y="66.000000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">x</text></g><g id="y" style='opacity:0.400000'><g class="shape" ></g><g><foreignObject requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" x="278.000000" y="51.000000" width="304" height="24"><div xmlns="http://www.w3.org/1999/xhtml" class="md" style="background-color:transparent;color:#0A0F25;"><p>linux: because a PC is a terrible thing to waste</p> </style><g id="x" style='opacity:0.400000'><g class="shape" ><rect x="135" y="0" width="53" height="66" style="fill:#F7F8FE;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="161.500000" y="38.500000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">x</text></g><g id="y" style='opacity:0.400000'><g class="shape" ></g><g><foreignObject requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" x="248.000000" y="21.000000" width="304" height="24"><div xmlns="http://www.w3.org/1999/xhtml" class="md" style="background-color:transparent;color:#0A0F25;"><p>linux: because a PC is a terrible thing to waste</p>
</div></foreignObject></g></g><g id="a"><g class="shape" ><rect x="105" y="263" width="113" height="126" style="fill:#F7F8FE;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="161.500000" y="329.000000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">a</text></g><g id="(x -&gt; a)[0]" style='opacity:0.400000'><marker id="mk-3990223579" markerWidth="10.000000" markerHeight="12.000000" refX="7.000000" refY="6.000000" viewBox="0.000000 0.000000 10.000000 12.000000" orient="auto" markerUnits="userSpaceOnUse"> <polygon class="connection" fill="#0D32B2" stroke-width="2" points="0.000000,0.000000 10.000000,6.000000 0.000000,12.000000" /> </marker><path d="M 161.000000 128.000000 C 161.000000 180.800000 161.000000 208.300000 161.000000 259.500000" class="connection" style="fill:none;stroke:#0D32B2;stroke-width:2;" marker-end="url(#mk-3990223579)" mask="url(#3838456096)"/><text class="text-italic" x="161.000000" y="192.000000" style="text-anchor:middle;font-size:16px;fill:#676C7E"><tspan x="161.000000" dy="0.000000">You don&#39;t have to know how the computer works,</tspan><tspan x="161.000000" dy="18.500000">just how to work the computer.</tspan></text></g><mask id="3838456096" maskUnits="userSpaceOnUse" x="-100" y="-100" width="784" height="593"> </div></foreignObject></g></g><g id="a"><g class="shape" ><rect x="135" y="203" width="53" height="66" style="fill:#F7F8FE;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="161.500000" y="241.500000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">a</text></g><g id="(x -&gt; a)[0]" style='opacity:0.400000'><marker id="mk-3990223579" markerWidth="10.000000" markerHeight="12.000000" refX="7.000000" refY="6.000000" viewBox="0.000000 0.000000 10.000000 12.000000" orient="auto" markerUnits="userSpaceOnUse"> <polygon class="connection" fill="#0D32B2" stroke-width="2" points="0.000000,0.000000 10.000000,6.000000 0.000000,12.000000" /> </marker><path d="M 161.000000 68.000000 C 161.000000 120.800000 161.000000 148.300000 161.000000 199.500000" class="connection" style="fill:none;stroke:#0D32B2;stroke-width:2;" marker-end="url(#mk-3990223579)" mask="url(#2558060737)"/><text class="text-italic" x="161.000000" y="132.000000" style="text-anchor:middle;font-size:16px;fill:#676C7E"><tspan x="161.000000" dy="0.000000">You don&#39;t have to know how the computer works,</tspan><tspan x="161.000000" dy="18.500000">just how to work the computer.</tspan></text></g><mask id="2558060737" maskUnits="userSpaceOnUse" x="-100" y="-100" width="754" height="473">
<rect x="-100" y="-100" width="784" height="593" fill="white"></rect> <rect x="-100" y="-100" width="754" height="473" fill="white"></rect>
<rect x="0.000000" y="176.000000" width="322" height="37" fill="black"></rect> <rect x="0.000000" y="116.000000" width="322" height="37" fill="black"></rect>
</mask><style type="text/css"><![CDATA[ </mask><style type="text/css"><![CDATA[
.text { .text {
font-family: "font-regular"; font-family: "font-regular";

Before

Width:  |  Height:  |  Size: 804 KiB

After

Width:  |  Height:  |  Size: 804 KiB

View file

@ -6,11 +6,11 @@
"id": "x", "id": "x",
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 116, "x": 146,
"y": 12 "y": 12
}, },
"width": 113, "width": 53,
"height": 126, "height": 66,
"opacity": 0.4, "opacity": 0.4,
"strokeDash": 0, "strokeDash": 0,
"strokeWidth": 2, "strokeWidth": 2,
@ -37,8 +37,8 @@
"italic": false, "italic": false,
"bold": true, "bold": true,
"underline": false, "underline": false,
"labelWidth": 13, "labelWidth": 8,
"labelHeight": 26, "labelHeight": 21,
"labelPosition": "INSIDE_MIDDLE_CENTER", "labelPosition": "INSIDE_MIDDLE_CENTER",
"zIndex": 0, "zIndex": 0,
"level": 1 "level": 1
@ -47,8 +47,8 @@
"id": "y", "id": "y",
"type": "text", "type": "text",
"pos": { "pos": {
"x": 249, "x": 219,
"y": 63 "y": 33
}, },
"width": 304, "width": 304,
"height": 24, "height": 24,
@ -87,11 +87,11 @@
"id": "a", "id": "a",
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 116, "x": 146,
"y": 375 "y": 315
}, },
"width": 113, "width": 53,
"height": 126, "height": 66,
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
"strokeWidth": 2, "strokeWidth": 2,
@ -118,8 +118,8 @@
"italic": false, "italic": false,
"bold": true, "bold": true,
"underline": false, "underline": false,
"labelWidth": 13, "labelWidth": 8,
"labelHeight": 26, "labelHeight": 21,
"labelPosition": "INSIDE_MIDDLE_CENTER", "labelPosition": "INSIDE_MIDDLE_CENTER",
"zIndex": 0, "zIndex": 0,
"level": 1 "level": 1
@ -153,11 +153,11 @@
"route": [ "route": [
{ {
"x": 173, "x": 173,
"y": 138 "y": 78
}, },
{ {
"x": 173, "x": 173,
"y": 375 "y": 315
} }
], ],
"animated": false, "animated": false,

View file

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

Before

Width:  |  Height:  |  Size: 804 KiB

After

Width:  |  Height:  |  Size: 804 KiB

View file

@ -9,8 +9,8 @@
"x": 0, "x": 0,
"y": 0 "y": 0
}, },
"width": 1621, "width": 1276,
"height": 226, "height": 166,
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
"strokeWidth": 2, "strokeWidth": 2,
@ -37,8 +37,8 @@
"italic": false, "italic": false,
"bold": false, "bold": false,
"underline": false, "underline": false,
"labelWidth": 138, "labelWidth": 133,
"labelHeight": 41, "labelHeight": 36,
"labelPosition": "INSIDE_TOP_CENTER", "labelPosition": "INSIDE_TOP_CENTER",
"zIndex": 0, "zIndex": 0,
"level": 1 "level": 1
@ -47,11 +47,11 @@
"id": "k8s.m1", "id": "k8s.m1",
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 116, "x": 131,
"y": 50 "y": 50
}, },
"width": 192, "width": 132,
"height": 126, "height": 66,
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
"strokeWidth": 2, "strokeWidth": 2,
@ -78,8 +78,8 @@
"italic": false, "italic": false,
"bold": true, "bold": true,
"underline": false, "underline": false,
"labelWidth": 92, "labelWidth": 87,
"labelHeight": 26, "labelHeight": 21,
"labelPosition": "INSIDE_MIDDLE_CENTER", "labelPosition": "INSIDE_MIDDLE_CENTER",
"zIndex": 0, "zIndex": 0,
"level": 2 "level": 2
@ -88,11 +88,11 @@
"id": "k8s.m2", "id": "k8s.m2",
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 368, "x": 323,
"y": 50 "y": 50
}, },
"width": 192, "width": 132,
"height": 126, "height": 66,
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
"strokeWidth": 2, "strokeWidth": 2,
@ -119,8 +119,8 @@
"italic": false, "italic": false,
"bold": true, "bold": true,
"underline": false, "underline": false,
"labelWidth": 92, "labelWidth": 87,
"labelHeight": 26, "labelHeight": 21,
"labelPosition": "INSIDE_MIDDLE_CENTER", "labelPosition": "INSIDE_MIDDLE_CENTER",
"zIndex": 0, "zIndex": 0,
"level": 2 "level": 2
@ -129,11 +129,11 @@
"id": "k8s.m3", "id": "k8s.m3",
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 620, "x": 515,
"y": 50 "y": 50
}, },
"width": 192, "width": 132,
"height": 126, "height": 66,
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
"strokeWidth": 2, "strokeWidth": 2,
@ -160,8 +160,8 @@
"italic": false, "italic": false,
"bold": true, "bold": true,
"underline": false, "underline": false,
"labelWidth": 92, "labelWidth": 87,
"labelHeight": 26, "labelHeight": 21,
"labelPosition": "INSIDE_MIDDLE_CENTER", "labelPosition": "INSIDE_MIDDLE_CENTER",
"zIndex": 0, "zIndex": 0,
"level": 2 "level": 2
@ -170,11 +170,11 @@
"id": "k8s.w1", "id": "k8s.w1",
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 872, "x": 707,
"y": 50 "y": 50
}, },
"width": 193, "width": 133,
"height": 126, "height": 66,
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
"strokeWidth": 2, "strokeWidth": 2,
@ -201,8 +201,8 @@
"italic": false, "italic": false,
"bold": true, "bold": true,
"underline": false, "underline": false,
"labelWidth": 93, "labelWidth": 88,
"labelHeight": 26, "labelHeight": 21,
"labelPosition": "INSIDE_MIDDLE_CENTER", "labelPosition": "INSIDE_MIDDLE_CENTER",
"zIndex": 0, "zIndex": 0,
"level": 2 "level": 2
@ -211,11 +211,11 @@
"id": "k8s.w2", "id": "k8s.w2",
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 1125, "x": 900,
"y": 50 "y": 50
}, },
"width": 193, "width": 133,
"height": 126, "height": 66,
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
"strokeWidth": 2, "strokeWidth": 2,
@ -242,8 +242,8 @@
"italic": false, "italic": false,
"bold": true, "bold": true,
"underline": false, "underline": false,
"labelWidth": 93, "labelWidth": 88,
"labelHeight": 26, "labelHeight": 21,
"labelPosition": "INSIDE_MIDDLE_CENTER", "labelPosition": "INSIDE_MIDDLE_CENTER",
"zIndex": 0, "zIndex": 0,
"level": 2 "level": 2
@ -252,11 +252,11 @@
"id": "k8s.w3", "id": "k8s.w3",
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 1378, "x": 1093,
"y": 50 "y": 50
}, },
"width": 193, "width": 133,
"height": 126, "height": 66,
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
"strokeWidth": 2, "strokeWidth": 2,
@ -283,8 +283,8 @@
"italic": false, "italic": false,
"bold": true, "bold": true,
"underline": false, "underline": false,
"labelWidth": 93, "labelWidth": 88,
"labelHeight": 26, "labelHeight": 21,
"labelPosition": "INSIDE_MIDDLE_CENTER", "labelPosition": "INSIDE_MIDDLE_CENTER",
"zIndex": 0, "zIndex": 0,
"level": 2 "level": 2
@ -294,10 +294,10 @@
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 0, "x": 0,
"y": 347 "y": 287
}, },
"width": 555, "width": 495,
"height": 226, "height": 166,
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
"strokeWidth": 2, "strokeWidth": 2,
@ -324,8 +324,8 @@
"italic": false, "italic": false,
"bold": false, "bold": false,
"underline": false, "underline": false,
"labelWidth": 102, "labelWidth": 97,
"labelHeight": 41, "labelHeight": 36,
"labelPosition": "INSIDE_TOP_CENTER", "labelPosition": "INSIDE_TOP_CENTER",
"zIndex": 0, "zIndex": 0,
"level": 1 "level": 1
@ -334,11 +334,11 @@
"id": "osvc.vm1", "id": "osvc.vm1",
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 171, "x": 186,
"y": 397 "y": 337
}, },
"width": 136, "width": 76,
"height": 126, "height": 66,
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
"strokeWidth": 2, "strokeWidth": 2,
@ -365,8 +365,8 @@
"italic": false, "italic": false,
"bold": true, "bold": true,
"underline": false, "underline": false,
"labelWidth": 36, "labelWidth": 31,
"labelHeight": 26, "labelHeight": 21,
"labelPosition": "INSIDE_MIDDLE_CENTER", "labelPosition": "INSIDE_MIDDLE_CENTER",
"zIndex": 0, "zIndex": 0,
"level": 2 "level": 2
@ -376,10 +376,10 @@
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 369, "x": 369,
"y": 397 "y": 337
}, },
"width": 136, "width": 76,
"height": 126, "height": 66,
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
"strokeWidth": 2, "strokeWidth": 2,
@ -406,8 +406,8 @@
"italic": false, "italic": false,
"bold": true, "bold": true,
"underline": false, "underline": false,
"labelWidth": 36, "labelWidth": 31,
"labelHeight": 26, "labelHeight": 21,
"labelPosition": "INSIDE_MIDDLE_CENTER", "labelPosition": "INSIDE_MIDDLE_CENTER",
"zIndex": 0, "zIndex": 0,
"level": 2 "level": 2
@ -440,20 +440,20 @@
"labelPercentage": 0, "labelPercentage": 0,
"route": [ "route": [
{ {
"x": 99, "x": 84,
"y": 226 "y": 166
}, },
{ {
"x": 99, "x": 84,
"y": 274.4 "y": 214.4
}, },
{ {
"x": 99, "x": 84,
"y": 298.7 "y": 238.7
}, },
{ {
"x": 99, "x": 84,
"y": 347.5 "y": 287.5
} }
], ],
"isCurve": true, "isCurve": true,
@ -488,20 +488,20 @@
"labelPercentage": 0, "labelPercentage": 0,
"route": [ "route": [
{ {
"x": 201, "x": 186,
"y": 226 "y": 166
}, },
{ {
"x": 201, "x": 186,
"y": 274.4 "y": 214.4
}, },
{ {
"x": 201, "x": 186,
"y": 298.7 "y": 238.7
}, },
{ {
"x": 201, "x": 186,
"y": 347.5 "y": 287.5
} }
], ],
"isCurve": true, "isCurve": true,
@ -536,20 +536,20 @@
"labelPercentage": 0, "labelPercentage": 0,
"route": [ "route": [
{ {
"x": 297, "x": 282,
"y": 226 "y": 166
}, },
{ {
"x": 297, "x": 282,
"y": 274.4 "y": 214.4
}, },
{ {
"x": 297, "x": 282,
"y": 298.7 "y": 238.7
}, },
{ {
"x": 297, "x": 282,
"y": 347.5 "y": 287.5
} }
], ],
"isCurve": true, "isCurve": true,
@ -584,20 +584,20 @@
"labelPercentage": 0, "labelPercentage": 0,
"route": [ "route": [
{ {
"x": 378, "x": 363,
"y": 226 "y": 166
}, },
{ {
"x": 378, "x": 363,
"y": 274.4 "y": 214.4
}, },
{ {
"x": 378, "x": 363,
"y": 298.7 "y": 238.7
}, },
{ {
"x": 378, "x": 363,
"y": 347.5 "y": 287.5
} }
], ],
"isCurve": true, "isCurve": true,

View file

@ -3,7 +3,7 @@
id="d2-svg" id="d2-svg"
style="background: white;" style="background: white;"
xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"
width="1825" height="777" viewBox="-102 -102 1825 777"><style type="text/css"> width="1480" height="657" viewBox="-102 -102 1480 657"><style type="text/css">
<![CDATA[ <![CDATA[
.shape { .shape {
shape-rendering: geometricPrecision; shape-rendering: geometricPrecision;
@ -39,12 +39,12 @@ width="1825" height="777" viewBox="-102 -102 1825 777"><style type="text/css">
svgEl.setAttribute("height", height * ratio - 16); svgEl.setAttribute("height", height * ratio - 16);
} }
}); });
]]></script><g id="k8s"><g class="shape" ><rect x="0" y="0" width="1621" height="226" style="fill:#E3E9FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text" x="810.500000" y="33.000000" style="text-anchor:middle;font-size:28px;fill:#0A0F25">Kubernetes</text></g><g id="osvc"><g class="shape" ><rect x="0" y="347" width="555" height="226" style="fill:#E3E9FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text" x="277.500000" y="380.000000" style="text-anchor:middle;font-size:28px;fill:#0A0F25">opensvc</text></g><g id="k8s.m1"><g class="shape" ><rect x="116" y="50" width="192" height="126" style="fill:#EDF0FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="212.000000" y="116.000000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">k8s-master1</text></g><g id="k8s.m2"><g class="shape" ><rect x="368" y="50" width="192" height="126" style="fill:#EDF0FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="464.000000" y="116.000000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">k8s-master2</text></g><g id="k8s.m3"><g class="shape" ><rect x="620" y="50" width="192" height="126" style="fill:#EDF0FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="716.000000" y="116.000000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">k8s-master3</text></g><g id="k8s.w1"><g class="shape" ><rect x="872" y="50" width="193" height="126" style="fill:#EDF0FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="968.500000" y="116.000000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">k8s-worker1</text></g><g id="k8s.w2"><g class="shape" ><rect x="1125" y="50" width="193" height="126" style="fill:#EDF0FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="1221.500000" y="116.000000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">k8s-worker2</text></g><g id="k8s.w3"><g class="shape" ><rect x="1378" y="50" width="193" height="126" style="fill:#EDF0FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="1474.500000" y="116.000000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">k8s-worker3</text></g><g id="osvc.vm1"><g class="shape" ><rect x="171" y="397" width="136" height="126" style="fill:#EDF0FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="239.000000" y="463.000000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">VM1</text></g><g id="osvc.vm2"><g class="shape" ><rect x="369" y="397" width="136" height="126" style="fill:#EDF0FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="437.000000" y="463.000000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">VM2</text></g><g id="(k8s -&gt; osvc)[0]"><marker id="mk-3990223579" markerWidth="10.000000" markerHeight="12.000000" refX="7.000000" refY="6.000000" viewBox="0.000000 0.000000 10.000000 12.000000" orient="auto" markerUnits="userSpaceOnUse"> <polygon class="connection" fill="#0D32B2" stroke-width="2" points="0.000000,0.000000 10.000000,6.000000 0.000000,12.000000" /> </marker><path d="M 99.000000 228.000000 C 99.000000 274.400000 99.000000 298.700000 99.000000 343.500000" class="connection" style="fill:none;stroke:#0D32B2;stroke-width:2;" marker-end="url(#mk-3990223579)" mask="url(#4136994385)"/><text class="text-italic" x="99.500000" y="292.000000" style="text-anchor:middle;font-size:16px;fill:#676C7E">keycloak</text></g><g id="(k8s -&gt; osvc)[1]"><path d="M 201.000000 228.000000 C 201.000000 274.400000 201.000000 298.700000 201.000000 343.500000" class="connection" style="fill:none;stroke:#0D32B2;stroke-width:2;" marker-end="url(#mk-3990223579)" mask="url(#4136994385)"/><text class="text-italic" x="201.500000" y="292.000000" style="text-anchor:middle;font-size:16px;fill:#676C7E">heptapod</text></g><g id="(k8s -&gt; osvc)[2]"><path d="M 297.000000 228.000000 C 297.000000 274.400000 297.000000 298.700000 297.000000 343.500000" class="connection" style="fill:none;stroke:#0D32B2;stroke-width:2;" marker-end="url(#mk-3990223579)" mask="url(#4136994385)"/><text class="text-italic" x="297.500000" y="292.000000" style="text-anchor:middle;font-size:16px;fill:#676C7E">harbor</text></g><g id="(k8s -&gt; osvc)[3]"><path d="M 378.000000 228.000000 C 378.000000 274.400000 378.000000 298.700000 378.000000 343.500000" class="connection" style="fill:none;stroke:#0D32B2;stroke-width:2;" marker-end="url(#mk-3990223579)" mask="url(#4136994385)"/><text class="text-italic" x="378.500000" y="292.000000" style="text-anchor:middle;font-size:16px;fill:#676C7E">vault</text></g><mask id="4136994385" maskUnits="userSpaceOnUse" x="-100" y="-100" width="1825" height="777"> ]]></script><g id="k8s"><g class="shape" ><rect x="0" y="0" width="1276" height="166" style="fill:#E3E9FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text" x="638.000000" y="33.000000" style="text-anchor:middle;font-size:28px;fill:#0A0F25">Kubernetes</text></g><g id="osvc"><g class="shape" ><rect x="0" y="287" width="495" height="166" style="fill:#E3E9FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text" x="247.500000" y="320.000000" style="text-anchor:middle;font-size:28px;fill:#0A0F25">opensvc</text></g><g id="k8s.m1"><g class="shape" ><rect x="131" y="50" width="132" height="66" style="fill:#EDF0FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="197.000000" y="88.500000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">k8s-master1</text></g><g id="k8s.m2"><g class="shape" ><rect x="323" y="50" width="132" height="66" style="fill:#EDF0FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="389.000000" y="88.500000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">k8s-master2</text></g><g id="k8s.m3"><g class="shape" ><rect x="515" y="50" width="132" height="66" style="fill:#EDF0FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="581.000000" y="88.500000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">k8s-master3</text></g><g id="k8s.w1"><g class="shape" ><rect x="707" y="50" width="133" height="66" style="fill:#EDF0FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="773.500000" y="88.500000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">k8s-worker1</text></g><g id="k8s.w2"><g class="shape" ><rect x="900" y="50" width="133" height="66" style="fill:#EDF0FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="966.500000" y="88.500000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">k8s-worker2</text></g><g id="k8s.w3"><g class="shape" ><rect x="1093" y="50" width="133" height="66" style="fill:#EDF0FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="1159.500000" y="88.500000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">k8s-worker3</text></g><g id="osvc.vm1"><g class="shape" ><rect x="186" y="337" width="76" height="66" style="fill:#EDF0FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="224.000000" y="375.500000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">VM1</text></g><g id="osvc.vm2"><g class="shape" ><rect x="369" y="337" width="76" height="66" style="fill:#EDF0FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="407.000000" y="375.500000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">VM2</text></g><g id="(k8s -&gt; osvc)[0]"><marker id="mk-3990223579" markerWidth="10.000000" markerHeight="12.000000" refX="7.000000" refY="6.000000" viewBox="0.000000 0.000000 10.000000 12.000000" orient="auto" markerUnits="userSpaceOnUse"> <polygon class="connection" fill="#0D32B2" stroke-width="2" points="0.000000,0.000000 10.000000,6.000000 0.000000,12.000000" /> </marker><path d="M 84.000000 168.000000 C 84.000000 214.400000 84.000000 238.700000 84.000000 283.500000" class="connection" style="fill:none;stroke:#0D32B2;stroke-width:2;" marker-end="url(#mk-3990223579)" mask="url(#1066329477)"/><text class="text-italic" x="84.500000" y="232.000000" style="text-anchor:middle;font-size:16px;fill:#676C7E">keycloak</text></g><g id="(k8s -&gt; osvc)[1]"><path d="M 186.000000 168.000000 C 186.000000 214.400000 186.000000 238.700000 186.000000 283.500000" class="connection" style="fill:none;stroke:#0D32B2;stroke-width:2;" marker-end="url(#mk-3990223579)" mask="url(#1066329477)"/><text class="text-italic" x="186.500000" y="232.000000" style="text-anchor:middle;font-size:16px;fill:#676C7E">heptapod</text></g><g id="(k8s -&gt; osvc)[2]"><path d="M 282.000000 168.000000 C 282.000000 214.400000 282.000000 238.700000 282.000000 283.500000" class="connection" style="fill:none;stroke:#0D32B2;stroke-width:2;" marker-end="url(#mk-3990223579)" mask="url(#1066329477)"/><text class="text-italic" x="282.500000" y="232.000000" style="text-anchor:middle;font-size:16px;fill:#676C7E">harbor</text></g><g id="(k8s -&gt; osvc)[3]"><path d="M 363.000000 168.000000 C 363.000000 214.400000 363.000000 238.700000 363.000000 283.500000" class="connection" style="fill:none;stroke:#0D32B2;stroke-width:2;" marker-end="url(#mk-3990223579)" mask="url(#1066329477)"/><text class="text-italic" x="363.500000" y="232.000000" style="text-anchor:middle;font-size:16px;fill:#676C7E">vault</text></g><mask id="1066329477" maskUnits="userSpaceOnUse" x="-100" y="-100" width="1480" height="657">
<rect x="-100" y="-100" width="1825" height="777" fill="white"></rect> <rect x="-100" y="-100" width="1480" height="657" fill="white"></rect>
<rect x="70.000000" y="276.000000" width="59" height="21" fill="black"></rect> <rect x="55.000000" y="216.000000" width="59" height="21" fill="black"></rect>
<rect x="169.000000" y="276.000000" width="65" height="21" fill="black"></rect> <rect x="154.000000" y="216.000000" width="65" height="21" fill="black"></rect>
<rect x="274.000000" y="276.000000" width="47" height="21" fill="black"></rect> <rect x="259.000000" y="216.000000" width="47" height="21" fill="black"></rect>
<rect x="361.000000" y="276.000000" width="35" height="21" fill="black"></rect> <rect x="346.000000" y="216.000000" width="35" height="21" fill="black"></rect>
</mask><style type="text/css"><![CDATA[ </mask><style type="text/css"><![CDATA[
.text { .text {
font-family: "font-regular"; font-family: "font-regular";

Before

Width:  |  Height:  |  Size: 795 KiB

After

Width:  |  Height:  |  Size: 795 KiB

View file

@ -9,8 +9,8 @@
"x": 12, "x": 12,
"y": 12 "y": 12
}, },
"width": 1405, "width": 1045,
"height": 276, "height": 216,
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
"strokeWidth": 2, "strokeWidth": 2,
@ -37,8 +37,8 @@
"italic": false, "italic": false,
"bold": false, "bold": false,
"underline": false, "underline": false,
"labelWidth": 138, "labelWidth": 133,
"labelHeight": 41, "labelHeight": 36,
"labelPosition": "INSIDE_TOP_CENTER", "labelPosition": "INSIDE_TOP_CENTER",
"zIndex": 0, "zIndex": 0,
"level": 1 "level": 1
@ -50,8 +50,8 @@
"x": 87, "x": 87,
"y": 87 "y": 87
}, },
"width": 192, "width": 132,
"height": 126, "height": 66,
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
"strokeWidth": 2, "strokeWidth": 2,
@ -78,8 +78,8 @@
"italic": false, "italic": false,
"bold": true, "bold": true,
"underline": false, "underline": false,
"labelWidth": 92, "labelWidth": 87,
"labelHeight": 26, "labelHeight": 21,
"labelPosition": "INSIDE_MIDDLE_CENTER", "labelPosition": "INSIDE_MIDDLE_CENTER",
"zIndex": 0, "zIndex": 0,
"level": 2 "level": 2
@ -88,11 +88,11 @@
"id": "k8s.m2", "id": "k8s.m2",
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 299, "x": 239,
"y": 87 "y": 87
}, },
"width": 192, "width": 132,
"height": 126, "height": 66,
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
"strokeWidth": 2, "strokeWidth": 2,
@ -119,8 +119,8 @@
"italic": false, "italic": false,
"bold": true, "bold": true,
"underline": false, "underline": false,
"labelWidth": 92, "labelWidth": 87,
"labelHeight": 26, "labelHeight": 21,
"labelPosition": "INSIDE_MIDDLE_CENTER", "labelPosition": "INSIDE_MIDDLE_CENTER",
"zIndex": 0, "zIndex": 0,
"level": 2 "level": 2
@ -129,11 +129,11 @@
"id": "k8s.m3", "id": "k8s.m3",
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 511, "x": 391,
"y": 87 "y": 87
}, },
"width": 192, "width": 132,
"height": 126, "height": 66,
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
"strokeWidth": 2, "strokeWidth": 2,
@ -160,8 +160,8 @@
"italic": false, "italic": false,
"bold": true, "bold": true,
"underline": false, "underline": false,
"labelWidth": 92, "labelWidth": 87,
"labelHeight": 26, "labelHeight": 21,
"labelPosition": "INSIDE_MIDDLE_CENTER", "labelPosition": "INSIDE_MIDDLE_CENTER",
"zIndex": 0, "zIndex": 0,
"level": 2 "level": 2
@ -170,11 +170,11 @@
"id": "k8s.w1", "id": "k8s.w1",
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 723, "x": 543,
"y": 87 "y": 87
}, },
"width": 193, "width": 133,
"height": 126, "height": 66,
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
"strokeWidth": 2, "strokeWidth": 2,
@ -201,8 +201,8 @@
"italic": false, "italic": false,
"bold": true, "bold": true,
"underline": false, "underline": false,
"labelWidth": 93, "labelWidth": 88,
"labelHeight": 26, "labelHeight": 21,
"labelPosition": "INSIDE_MIDDLE_CENTER", "labelPosition": "INSIDE_MIDDLE_CENTER",
"zIndex": 0, "zIndex": 0,
"level": 2 "level": 2
@ -211,11 +211,11 @@
"id": "k8s.w2", "id": "k8s.w2",
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 936, "x": 696,
"y": 87 "y": 87
}, },
"width": 193, "width": 133,
"height": 126, "height": 66,
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
"strokeWidth": 2, "strokeWidth": 2,
@ -242,8 +242,8 @@
"italic": false, "italic": false,
"bold": true, "bold": true,
"underline": false, "underline": false,
"labelWidth": 93, "labelWidth": 88,
"labelHeight": 26, "labelHeight": 21,
"labelPosition": "INSIDE_MIDDLE_CENTER", "labelPosition": "INSIDE_MIDDLE_CENTER",
"zIndex": 0, "zIndex": 0,
"level": 2 "level": 2
@ -252,11 +252,11 @@
"id": "k8s.w3", "id": "k8s.w3",
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 1149, "x": 849,
"y": 87 "y": 87
}, },
"width": 193, "width": 133,
"height": 126, "height": 66,
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
"strokeWidth": 2, "strokeWidth": 2,
@ -283,8 +283,8 @@
"italic": false, "italic": false,
"bold": true, "bold": true,
"underline": false, "underline": false,
"labelWidth": 93, "labelWidth": 88,
"labelHeight": 26, "labelHeight": 21,
"labelPosition": "INSIDE_MIDDLE_CENTER", "labelPosition": "INSIDE_MIDDLE_CENTER",
"zIndex": 0, "zIndex": 0,
"level": 2 "level": 2
@ -293,11 +293,11 @@
"id": "osvc", "id": "osvc",
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 397, "x": 301,
"y": 559 "y": 499
}, },
"width": 442, "width": 322,
"height": 276, "height": 216,
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
"strokeWidth": 2, "strokeWidth": 2,
@ -324,8 +324,8 @@
"italic": false, "italic": false,
"bold": false, "bold": false,
"underline": false, "underline": false,
"labelWidth": 102, "labelWidth": 97,
"labelHeight": 41, "labelHeight": 36,
"labelPosition": "INSIDE_TOP_CENTER", "labelPosition": "INSIDE_TOP_CENTER",
"zIndex": 0, "zIndex": 0,
"level": 1 "level": 1
@ -334,11 +334,11 @@
"id": "osvc.vm1", "id": "osvc.vm1",
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 472, "x": 376,
"y": 634 "y": 574
}, },
"width": 136, "width": 76,
"height": 126, "height": 66,
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
"strokeWidth": 2, "strokeWidth": 2,
@ -365,8 +365,8 @@
"italic": false, "italic": false,
"bold": true, "bold": true,
"underline": false, "underline": false,
"labelWidth": 36, "labelWidth": 31,
"labelHeight": 26, "labelHeight": 21,
"labelPosition": "INSIDE_MIDDLE_CENTER", "labelPosition": "INSIDE_MIDDLE_CENTER",
"zIndex": 0, "zIndex": 0,
"level": 2 "level": 2
@ -375,11 +375,11 @@
"id": "osvc.vm2", "id": "osvc.vm2",
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 628, "x": 472,
"y": 634 "y": 574
}, },
"width": 136, "width": 76,
"height": 126, "height": 66,
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
"strokeWidth": 2, "strokeWidth": 2,
@ -406,8 +406,8 @@
"italic": false, "italic": false,
"bold": true, "bold": true,
"underline": false, "underline": false,
"labelWidth": 36, "labelWidth": 31,
"labelHeight": 26, "labelHeight": 21,
"labelPosition": "INSIDE_MIDDLE_CENTER", "labelPosition": "INSIDE_MIDDLE_CENTER",
"zIndex": 0, "zIndex": 0,
"level": 2 "level": 2
@ -440,20 +440,20 @@
"labelPercentage": 0, "labelPercentage": 0,
"route": [ "route": [
{ {
"x": 293, "x": 221,
"y": 288 "y": 228
}, },
{ {
"x": 293, "x": 221,
"y": 459 "y": 399
}, },
{ {
"x": 485.6, "x": 365.6,
"y": 459 "y": 399
}, },
{ {
"x": 485.6, "x": 365.6,
"y": 559 "y": 499
} }
], ],
"animated": false, "animated": false,
@ -487,12 +487,12 @@
"labelPercentage": 0, "labelPercentage": 0,
"route": [ "route": [
{ {
"x": 574, "x": 430,
"y": 288 "y": 228
}, },
{ {
"x": 574, "x": 430,
"y": 559 "y": 499
} }
], ],
"animated": false, "animated": false,
@ -526,20 +526,20 @@
"labelPercentage": 0, "labelPercentage": 0,
"route": [ "route": [
{ {
"x": 855, "x": 639,
"y": 288 "y": 228
}, },
{ {
"x": 855, "x": 639,
"y": 459 "y": 399
}, },
{ {
"x": 662.4000000000001, "x": 494.4,
"y": 459 "y": 399
}, },
{ {
"x": 662.4000000000001, "x": 494.4,
"y": 559 "y": 499
} }
], ],
"animated": false, "animated": false,
@ -573,20 +573,20 @@
"labelPercentage": 0, "labelPercentage": 0,
"route": [ "route": [
{ {
"x": 1136, "x": 848,
"y": 288 "y": 228
}, },
{ {
"x": 1136, "x": 848,
"y": 509 "y": 449
}, },
{ {
"x": 750.8, "x": 558.8,
"y": 509 "y": 449
}, },
{ {
"x": 750.8, "x": 558.8,
"y": 559 "y": 499
} }
], ],
"animated": false, "animated": false,

View file

@ -3,7 +3,7 @@
id="d2-svg" id="d2-svg"
style="background: white;" style="background: white;"
xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"
width="1609" height="1027" viewBox="-90 -90 1609 1027"><style type="text/css"> width="1249" height="907" viewBox="-90 -90 1249 907"><style type="text/css">
<![CDATA[ <![CDATA[
.shape { .shape {
shape-rendering: geometricPrecision; shape-rendering: geometricPrecision;
@ -39,12 +39,12 @@ width="1609" height="1027" viewBox="-90 -90 1609 1027"><style type="text/css">
svgEl.setAttribute("height", height * ratio - 16); svgEl.setAttribute("height", height * ratio - 16);
} }
}); });
]]></script><g id="k8s"><g class="shape" ><rect x="12" y="12" width="1405" height="276" style="fill:#E3E9FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text" x="714.500000" y="45.000000" style="text-anchor:middle;font-size:28px;fill:#0A0F25">Kubernetes</text></g><g id="osvc"><g class="shape" ><rect x="397" y="559" width="442" height="276" style="fill:#E3E9FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text" x="618.000000" y="592.000000" style="text-anchor:middle;font-size:28px;fill:#0A0F25">opensvc</text></g><g id="k8s.m1"><g class="shape" ><rect x="87" y="87" width="192" height="126" style="fill:#EDF0FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="183.000000" y="153.000000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">k8s-master1</text></g><g id="k8s.m2"><g class="shape" ><rect x="299" y="87" width="192" height="126" style="fill:#EDF0FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="395.000000" y="153.000000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">k8s-master2</text></g><g id="k8s.m3"><g class="shape" ><rect x="511" y="87" width="192" height="126" style="fill:#EDF0FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="607.000000" y="153.000000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">k8s-master3</text></g><g id="k8s.w1"><g class="shape" ><rect x="723" y="87" width="193" height="126" style="fill:#EDF0FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="819.500000" y="153.000000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">k8s-worker1</text></g><g id="k8s.w2"><g class="shape" ><rect x="936" y="87" width="193" height="126" style="fill:#EDF0FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="1032.500000" y="153.000000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">k8s-worker2</text></g><g id="k8s.w3"><g class="shape" ><rect x="1149" y="87" width="193" height="126" style="fill:#EDF0FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="1245.500000" y="153.000000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">k8s-worker3</text></g><g id="osvc.vm1"><g class="shape" ><rect x="472" y="634" width="136" height="126" style="fill:#EDF0FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="540.000000" y="700.000000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">VM1</text></g><g id="osvc.vm2"><g class="shape" ><rect x="628" y="634" width="136" height="126" style="fill:#EDF0FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="696.000000" y="700.000000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">VM2</text></g><g id="(k8s -&gt; osvc)[0]"><marker id="mk-3990223579" markerWidth="10.000000" markerHeight="12.000000" refX="7.000000" refY="6.000000" viewBox="0.000000 0.000000 10.000000 12.000000" orient="auto" markerUnits="userSpaceOnUse"> <polygon class="connection" fill="#0D32B2" stroke-width="2" points="0.000000,0.000000 10.000000,6.000000 0.000000,12.000000" /> </marker><path d="M 293.000000 290.000000 L 293.000000 449.000000 S 293.000000 459.000000 303.000000 459.000000 L 475.600000 459.000000 S 485.600000 459.000000 485.600000 469.000000 L 485.600000 555.000000" class="connection" style="fill:none;stroke:#0D32B2;stroke-width:2;" marker-end="url(#mk-3990223579)" mask="url(#1050316171)"/><text class="text-italic" x="353.500000" y="465.000000" style="text-anchor:middle;font-size:16px;fill:#676C7E">keycloak</text></g><g id="(k8s -&gt; osvc)[1]"><path d="M 574.000000 290.000000 L 574.000000 555.000000" class="connection" style="fill:none;stroke:#0D32B2;stroke-width:2;" marker-end="url(#mk-3990223579)" mask="url(#1050316171)"/><text class="text-italic" x="574.500000" y="429.000000" style="text-anchor:middle;font-size:16px;fill:#676C7E">heptapod</text></g><g id="(k8s -&gt; osvc)[2]"><path d="M 855.000000 290.000000 L 855.000000 449.000000 S 855.000000 459.000000 845.000000 459.000000 L 672.400000 459.000000 S 662.400000 459.000000 662.400000 469.000000 L 662.400000 555.000000" class="connection" style="fill:none;stroke:#0D32B2;stroke-width:2;" marker-end="url(#mk-3990223579)" mask="url(#1050316171)"/><text class="text-italic" x="794.500000" y="465.000000" style="text-anchor:middle;font-size:16px;fill:#676C7E">harbor</text></g><g id="(k8s -&gt; osvc)[3]"><path d="M 1136.000000 290.000000 L 1136.000000 499.000000 S 1136.000000 509.000000 1126.000000 509.000000 L 760.800000 509.000000 S 750.800000 509.000000 750.800000 519.000000 L 750.800000 555.000000" class="connection" style="fill:none;stroke:#0D32B2;stroke-width:2;" marker-end="url(#mk-3990223579)" mask="url(#1050316171)"/><text class="text-italic" x="1028.500000" y="515.000000" style="text-anchor:middle;font-size:16px;fill:#676C7E">vault</text></g><mask id="1050316171" maskUnits="userSpaceOnUse" x="-100" y="-100" width="1609" height="1027"> ]]></script><g id="k8s"><g class="shape" ><rect x="12" y="12" width="1045" height="216" style="fill:#E3E9FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text" x="534.500000" y="45.000000" style="text-anchor:middle;font-size:28px;fill:#0A0F25">Kubernetes</text></g><g id="osvc"><g class="shape" ><rect x="301" y="499" width="322" height="216" style="fill:#E3E9FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text" x="462.000000" y="532.000000" style="text-anchor:middle;font-size:28px;fill:#0A0F25">opensvc</text></g><g id="k8s.m1"><g class="shape" ><rect x="87" y="87" width="132" height="66" style="fill:#EDF0FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="153.000000" y="125.500000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">k8s-master1</text></g><g id="k8s.m2"><g class="shape" ><rect x="239" y="87" width="132" height="66" style="fill:#EDF0FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="305.000000" y="125.500000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">k8s-master2</text></g><g id="k8s.m3"><g class="shape" ><rect x="391" y="87" width="132" height="66" style="fill:#EDF0FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="457.000000" y="125.500000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">k8s-master3</text></g><g id="k8s.w1"><g class="shape" ><rect x="543" y="87" width="133" height="66" style="fill:#EDF0FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="609.500000" y="125.500000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">k8s-worker1</text></g><g id="k8s.w2"><g class="shape" ><rect x="696" y="87" width="133" height="66" style="fill:#EDF0FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="762.500000" y="125.500000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">k8s-worker2</text></g><g id="k8s.w3"><g class="shape" ><rect x="849" y="87" width="133" height="66" style="fill:#EDF0FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="915.500000" y="125.500000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">k8s-worker3</text></g><g id="osvc.vm1"><g class="shape" ><rect x="376" y="574" width="76" height="66" style="fill:#EDF0FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="414.000000" y="612.500000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">VM1</text></g><g id="osvc.vm2"><g class="shape" ><rect x="472" y="574" width="76" height="66" style="fill:#EDF0FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text-bold" x="510.000000" y="612.500000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">VM2</text></g><g id="(k8s -&gt; osvc)[0]"><marker id="mk-3990223579" markerWidth="10.000000" markerHeight="12.000000" refX="7.000000" refY="6.000000" viewBox="0.000000 0.000000 10.000000 12.000000" orient="auto" markerUnits="userSpaceOnUse"> <polygon class="connection" fill="#0D32B2" stroke-width="2" points="0.000000,0.000000 10.000000,6.000000 0.000000,12.000000" /> </marker><path d="M 221.000000 230.000000 L 221.000000 389.000000 S 221.000000 399.000000 231.000000 399.000000 L 355.600000 399.000000 S 365.600000 399.000000 365.600000 409.000000 L 365.600000 495.000000" class="connection" style="fill:none;stroke:#0D32B2;stroke-width:2;" marker-end="url(#mk-3990223579)" mask="url(#2381465109)"/><text class="text-italic" x="257.500000" y="405.000000" style="text-anchor:middle;font-size:16px;fill:#676C7E">keycloak</text></g><g id="(k8s -&gt; osvc)[1]"><path d="M 430.000000 230.000000 L 430.000000 495.000000" class="connection" style="fill:none;stroke:#0D32B2;stroke-width:2;" marker-end="url(#mk-3990223579)" mask="url(#2381465109)"/><text class="text-italic" x="430.500000" y="369.000000" style="text-anchor:middle;font-size:16px;fill:#676C7E">heptapod</text></g><g id="(k8s -&gt; osvc)[2]"><path d="M 639.000000 230.000000 L 639.000000 389.000000 S 639.000000 399.000000 629.000000 399.000000 L 504.400000 399.000000 S 494.400000 399.000000 494.400000 409.000000 L 494.400000 495.000000" class="connection" style="fill:none;stroke:#0D32B2;stroke-width:2;" marker-end="url(#mk-3990223579)" mask="url(#2381465109)"/><text class="text-italic" x="602.500000" y="405.000000" style="text-anchor:middle;font-size:16px;fill:#676C7E">harbor</text></g><g id="(k8s -&gt; osvc)[3]"><path d="M 848.000000 230.000000 L 848.000000 439.000000 S 848.000000 449.000000 838.000000 449.000000 L 568.800000 449.000000 S 558.800000 449.000000 558.800000 459.000000 L 558.800000 495.000000" class="connection" style="fill:none;stroke:#0D32B2;stroke-width:2;" marker-end="url(#mk-3990223579)" mask="url(#2381465109)"/><text class="text-italic" x="788.500000" y="455.000000" style="text-anchor:middle;font-size:16px;fill:#676C7E">vault</text></g><mask id="2381465109" maskUnits="userSpaceOnUse" x="-100" y="-100" width="1249" height="907">
<rect x="-100" y="-100" width="1609" height="1027" fill="white"></rect> <rect x="-100" y="-100" width="1249" height="907" fill="white"></rect>
<rect x="324.000000" y="449.000000" width="59" height="21" fill="black"></rect> <rect x="228.000000" y="389.000000" width="59" height="21" fill="black"></rect>
<rect x="542.000000" y="413.000000" width="65" height="21" fill="black"></rect> <rect x="398.000000" y="353.000000" width="65" height="21" fill="black"></rect>
<rect x="771.000000" y="449.000000" width="47" height="21" fill="black"></rect> <rect x="579.000000" y="389.000000" width="47" height="21" fill="black"></rect>
<rect x="1011.000000" y="499.000000" width="35" height="21" fill="black"></rect> <rect x="771.000000" y="439.000000" width="35" height="21" fill="black"></rect>
</mask><style type="text/css"><![CDATA[ </mask><style type="text/css"><![CDATA[
.text { .text {
font-family: "font-regular"; font-family: "font-regular";

Before

Width:  |  Height:  |  Size: 796 KiB

After

Width:  |  Height:  |  Size: 796 KiB

View file

@ -9,8 +9,8 @@
"x": 0, "x": 0,
"y": 0 "y": 0
}, },
"width": 190, "width": 156,
"height": 152, "height": 118,
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
"strokeWidth": 2, "strokeWidth": 2,
@ -48,8 +48,8 @@
"italic": false, "italic": false,
"bold": true, "bold": true,
"underline": false, "underline": false,
"labelWidth": 90, "labelWidth": 85,
"labelHeight": 26, "labelHeight": 21,
"labelPosition": "INSIDE_TOP_CENTER", "labelPosition": "INSIDE_TOP_CENTER",
"zIndex": 0, "zIndex": 0,
"level": 1 "level": 1

View file

@ -3,7 +3,7 @@
id="d2-svg" id="d2-svg"
style="background: white;" style="background: white;"
xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"
width="394" height="356" viewBox="-102 -102 394 356"><style type="text/css"> width="360" height="322" viewBox="-102 -102 360 322"><style type="text/css">
<![CDATA[ <![CDATA[
.shape { .shape {
shape-rendering: geometricPrecision; shape-rendering: geometricPrecision;
@ -39,8 +39,8 @@ width="394" height="356" viewBox="-102 -102 394 356"><style type="text/css">
svgEl.setAttribute("height", height * ratio - 16); svgEl.setAttribute("height", height * ratio - 16);
} }
}); });
]]></script><g id="my network"><g class="shape" ><rect x="0" y="0" width="190" height="152" style="fill:#F7F8FE;stroke:#0D32B2;stroke-width:2;" /></g><image href="https://icons.terrastruct.com/infra/019-network.svg?fuga=1&amp;hoge" x="63.000000" y="44.000000" width="64" height="64" /><text class="text-bold" x="95.000000" y="21.000000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">my network</text></g><mask id="726057734" maskUnits="userSpaceOnUse" x="-100" y="-100" width="394" height="356"> ]]></script><g id="my network"><g class="shape" ><rect x="0" y="0" width="156" height="118" style="fill:#F7F8FE;stroke:#0D32B2;stroke-width:2;" /></g><image href="https://icons.terrastruct.com/infra/019-network.svg?fuga=1&amp;hoge" x="48.500000" y="29.500000" width="59" height="59" /><text class="text-bold" x="78.000000" y="21.000000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">my network</text></g><mask id="3739978883" maskUnits="userSpaceOnUse" x="-100" y="-100" width="360" height="322">
<rect x="-100" y="-100" width="394" height="356" fill="white"></rect> <rect x="-100" y="-100" width="360" height="322" fill="white"></rect>
</mask><style type="text/css"><![CDATA[ </mask><style type="text/css"><![CDATA[
.text-bold { .text-bold {

Before

Width:  |  Height:  |  Size: 324 KiB

After

Width:  |  Height:  |  Size: 324 KiB

View file

@ -9,8 +9,8 @@
"x": 12, "x": 12,
"y": 12 "y": 12
}, },
"width": 190, "width": 156,
"height": 152, "height": 118,
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
"strokeWidth": 2, "strokeWidth": 2,
@ -48,8 +48,8 @@
"italic": false, "italic": false,
"bold": true, "bold": true,
"underline": false, "underline": false,
"labelWidth": 90, "labelWidth": 85,
"labelHeight": 26, "labelHeight": 21,
"labelPosition": "INSIDE_TOP_CENTER", "labelPosition": "INSIDE_TOP_CENTER",
"zIndex": 0, "zIndex": 0,
"level": 1 "level": 1

View file

@ -3,7 +3,7 @@
id="d2-svg" id="d2-svg"
style="background: white;" style="background: white;"
xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"
width="394" height="356" viewBox="-90 -90 394 356"><style type="text/css"> width="360" height="322" viewBox="-90 -90 360 322"><style type="text/css">
<![CDATA[ <![CDATA[
.shape { .shape {
shape-rendering: geometricPrecision; shape-rendering: geometricPrecision;
@ -39,8 +39,8 @@ width="394" height="356" viewBox="-90 -90 394 356"><style type="text/css">
svgEl.setAttribute("height", height * ratio - 16); svgEl.setAttribute("height", height * ratio - 16);
} }
}); });
]]></script><g id="my network"><g class="shape" ><rect x="12" y="12" width="190" height="152" style="fill:#F7F8FE;stroke:#0D32B2;stroke-width:2;" /></g><image href="https://icons.terrastruct.com/infra/019-network.svg?fuga=1&amp;hoge" x="75.000000" y="56.000000" width="64" height="64" /><text class="text-bold" x="107.000000" y="33.000000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">my network</text></g><mask id="1665874494" maskUnits="userSpaceOnUse" x="-100" y="-100" width="394" height="356"> ]]></script><g id="my network"><g class="shape" ><rect x="12" y="12" width="156" height="118" style="fill:#F7F8FE;stroke:#0D32B2;stroke-width:2;" /></g><image href="https://icons.terrastruct.com/infra/019-network.svg?fuga=1&amp;hoge" x="60.500000" y="41.500000" width="59" height="59" /><text class="text-bold" x="90.000000" y="33.000000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">my network</text></g><mask id="581971707" maskUnits="userSpaceOnUse" x="-100" y="-100" width="360" height="322">
<rect x="-100" y="-100" width="394" height="356" fill="white"></rect> <rect x="-100" y="-100" width="360" height="322" fill="white"></rect>
</mask><style type="text/css"><![CDATA[ </mask><style type="text/css"><![CDATA[
.text-bold { .text-bold {

Before

Width:  |  Height:  |  Size: 324 KiB

After

Width:  |  Height:  |  Size: 324 KiB

View file

@ -1,606 +0,0 @@
{
"name": "",
"fontFamily": "SourceSansPro",
"shapes": [
{
"id": "Office chatter",
"type": "sequence_diagram",
"pos": {
"x": 0,
"y": 0
},
"width": 741,
"height": 1166,
"opacity": 1,
"strokeDash": 0,
"strokeWidth": 0,
"borderRadius": 0,
"fill": "#FFFFFF",
"stroke": "#0D32B2",
"shadow": false,
"3d": false,
"multiple": false,
"double-border": false,
"tooltip": "",
"link": "",
"icon": null,
"iconPosition": "",
"blend": false,
"fields": null,
"methods": null,
"columns": null,
"label": "Office chatter",
"fontSize": 28,
"fontFamily": "DEFAULT",
"language": "",
"color": "#0A0F25",
"italic": false,
"bold": false,
"underline": false,
"labelWidth": 164,
"labelHeight": 41,
"labelPosition": "INSIDE_TOP_CENTER",
"zIndex": 0,
"level": 1
},
{
"id": "Office chatter.alice",
"type": "rectangle",
"pos": {
"x": 24,
"y": 110
},
"width": 150,
"height": 126,
"opacity": 1,
"strokeDash": 0,
"strokeWidth": 2,
"borderRadius": 0,
"fill": "#EDF0FD",
"stroke": "#0D32B2",
"shadow": false,
"3d": false,
"multiple": false,
"double-border": false,
"tooltip": "",
"link": "",
"icon": null,
"iconPosition": "",
"blend": false,
"fields": null,
"methods": null,
"columns": null,
"label": "Alice",
"fontSize": 16,
"fontFamily": "DEFAULT",
"language": "",
"color": "#0A0F25",
"italic": false,
"bold": false,
"underline": false,
"labelWidth": 38,
"labelHeight": 26,
"labelPosition": "INSIDE_MIDDLE_CENTER",
"zIndex": 0,
"level": 2
},
{
"id": "Office chatter.bob",
"type": "rectangle",
"pos": {
"x": 274,
"y": 110
},
"width": 150,
"height": 126,
"opacity": 1,
"strokeDash": 0,
"strokeWidth": 2,
"borderRadius": 0,
"fill": "#EDF0FD",
"stroke": "#0D32B2",
"shadow": false,
"3d": false,
"multiple": false,
"double-border": false,
"tooltip": "",
"link": "",
"icon": null,
"iconPosition": "",
"blend": false,
"fields": null,
"methods": null,
"columns": null,
"label": "Bobby",
"fontSize": 16,
"fontFamily": "DEFAULT",
"language": "",
"color": "#0A0F25",
"italic": false,
"bold": false,
"underline": false,
"labelWidth": 48,
"labelHeight": 26,
"labelPosition": "INSIDE_MIDDLE_CENTER",
"zIndex": 0,
"level": 2
},
{
"id": "Office chatter.awkward small talk",
"type": "rectangle",
"pos": {
"x": 482,
"y": 110
},
"width": 235,
"height": 126,
"opacity": 1,
"strokeDash": 0,
"strokeWidth": 2,
"borderRadius": 0,
"fill": "#EDF0FD",
"stroke": "#0D32B2",
"shadow": false,
"3d": false,
"multiple": false,
"double-border": false,
"tooltip": "",
"link": "",
"icon": null,
"iconPosition": "",
"blend": false,
"fields": null,
"methods": null,
"columns": null,
"label": "awkward small talk",
"fontSize": 16,
"fontFamily": "DEFAULT",
"language": "",
"color": "#0A0F25",
"italic": false,
"bold": false,
"underline": false,
"labelWidth": 135,
"labelHeight": 26,
"labelPosition": "INSIDE_MIDDLE_CENTER",
"zIndex": 0,
"level": 2
},
{
"id": "Office chatter.awkward small talk.awkward small talk",
"type": "rectangle",
"pos": {
"x": 593,
"y": 350
},
"width": 12,
"height": 158,
"opacity": 1,
"strokeDash": 0,
"strokeWidth": 2,
"borderRadius": 0,
"fill": "#E3E9FD",
"stroke": "#0D32B2",
"shadow": false,
"3d": false,
"multiple": false,
"double-border": false,
"tooltip": "",
"link": "",
"icon": null,
"iconPosition": "",
"blend": false,
"fields": null,
"methods": null,
"columns": null,
"label": "",
"fontSize": 16,
"fontFamily": "DEFAULT",
"language": "",
"color": "#0A0F25",
"italic": false,
"bold": false,
"underline": false,
"labelWidth": 135,
"labelHeight": 26,
"zIndex": 2,
"level": 3
},
{
"id": "Office chatter.awkward small talk.awkward small talk.ok",
"type": "page",
"pos": {
"x": 538,
"y": 366
},
"width": 122,
"height": 126,
"opacity": 1,
"strokeDash": 0,
"strokeWidth": 2,
"borderRadius": 0,
"fill": "#FFFFFF",
"stroke": "#0D32B2",
"shadow": false,
"3d": false,
"multiple": false,
"double-border": false,
"tooltip": "",
"link": "",
"icon": null,
"iconPosition": "",
"blend": false,
"fields": null,
"methods": null,
"columns": null,
"label": "ok",
"fontSize": 16,
"fontFamily": "DEFAULT",
"language": "",
"color": "#0A0F25",
"italic": false,
"bold": false,
"underline": false,
"labelWidth": 22,
"labelHeight": 26,
"labelPosition": "INSIDE_MIDDLE_CENTER",
"zIndex": 5,
"level": 4
},
{
"id": "Office chatter.awkward small talk.icebreaker attempt",
"type": "rectangle",
"pos": {
"x": 593,
"y": -9223372036854775808
},
"width": 12,
"height": 80,
"opacity": 1,
"strokeDash": 0,
"strokeWidth": 0,
"borderRadius": 0,
"fill": "#DEE1EB",
"stroke": "#0D32B2",
"shadow": false,
"3d": false,
"multiple": false,
"double-border": false,
"tooltip": "",
"link": "",
"icon": null,
"iconPosition": "",
"blend": true,
"fields": null,
"methods": null,
"columns": null,
"label": "",
"fontSize": 16,
"fontFamily": "DEFAULT",
"language": "",
"color": "#0A0F25",
"italic": false,
"bold": false,
"underline": false,
"labelWidth": 134,
"labelHeight": 26,
"zIndex": 2,
"level": 3
},
{
"id": "Office chatter.awkward small talk.unfortunate outcome",
"type": "rectangle",
"pos": {
"x": 593,
"y": -9223372036854775808
},
"width": 12,
"height": 80,
"opacity": 1,
"strokeDash": 0,
"strokeWidth": 0,
"borderRadius": 0,
"fill": "#DEE1EB",
"stroke": "#0D32B2",
"shadow": false,
"3d": false,
"multiple": false,
"double-border": false,
"tooltip": "",
"link": "",
"icon": null,
"iconPosition": "",
"blend": true,
"fields": null,
"methods": null,
"columns": null,
"label": "",
"fontSize": 16,
"fontFamily": "DEFAULT",
"language": "",
"color": "#0A0F25",
"italic": false,
"bold": false,
"underline": false,
"labelWidth": 148,
"labelHeight": 26,
"zIndex": 2,
"level": 3
}
],
"connections": [
{
"id": "Office chatter.(alice -> bob)[1]",
"src": "Office chatter.alice",
"srcArrow": "none",
"srcLabel": "",
"dst": "Office chatter.bob",
"dstArrow": "triangle",
"dstLabel": "",
"opacity": 1,
"strokeDash": 0,
"strokeWidth": 2,
"stroke": "#0D32B2",
"label": "uhm, hi",
"fontSize": 16,
"fontFamily": "DEFAULT",
"language": "",
"color": "#676C7E",
"italic": true,
"bold": false,
"underline": false,
"labelWidth": 50,
"labelHeight": 21,
"labelPosition": "INSIDE_MIDDLE_CENTER",
"labelPercentage": 0,
"route": [
{
"x": 99,
"y": 622
},
{
"x": 349,
"y": 622
}
],
"animated": false,
"tooltip": "",
"icon": null,
"zIndex": 4
},
{
"id": "Office chatter.(bob -> alice)[1]",
"src": "Office chatter.bob",
"srcArrow": "none",
"srcLabel": "",
"dst": "Office chatter.alice",
"dstArrow": "triangle",
"dstLabel": "",
"opacity": 1,
"strokeDash": 0,
"strokeWidth": 2,
"stroke": "#0D32B2",
"label": "oh, hello",
"fontSize": 16,
"fontFamily": "DEFAULT",
"language": "",
"color": "#676C7E",
"italic": true,
"bold": false,
"underline": false,
"labelWidth": 56,
"labelHeight": 21,
"labelPosition": "INSIDE_MIDDLE_CENTER",
"labelPercentage": 0,
"route": [
{
"x": 349,
"y": 752
},
{
"x": 99,
"y": 752
}
],
"animated": false,
"tooltip": "",
"icon": null,
"zIndex": 4
},
{
"id": "Office chatter.(alice -> bob)[0]",
"src": "Office chatter.alice",
"srcArrow": "none",
"srcLabel": "",
"dst": "Office chatter.bob",
"dstArrow": "triangle",
"dstLabel": "",
"opacity": 1,
"strokeDash": 0,
"strokeWidth": 2,
"stroke": "#0D32B2",
"label": "what did you have for lunch?",
"fontSize": 16,
"fontFamily": "DEFAULT",
"language": "",
"color": "#676C7E",
"italic": true,
"bold": false,
"underline": false,
"labelWidth": 187,
"labelHeight": 21,
"labelPosition": "INSIDE_MIDDLE_CENTER",
"labelPercentage": 0,
"route": [
{
"x": 99,
"y": 882
},
{
"x": 349,
"y": 882
}
],
"animated": false,
"tooltip": "",
"icon": null,
"zIndex": 4
},
{
"id": "Office chatter.(bob -> alice)[0]",
"src": "Office chatter.bob",
"srcArrow": "none",
"srcLabel": "",
"dst": "Office chatter.alice",
"dstArrow": "triangle",
"dstLabel": "",
"opacity": 1,
"strokeDash": 0,
"strokeWidth": 2,
"stroke": "#0D32B2",
"label": "that's personal",
"fontSize": 16,
"fontFamily": "DEFAULT",
"language": "",
"color": "#676C7E",
"italic": true,
"bold": false,
"underline": false,
"labelWidth": 99,
"labelHeight": 21,
"labelPosition": "INSIDE_MIDDLE_CENTER",
"labelPercentage": 0,
"route": [
{
"x": 349,
"y": 1012
},
{
"x": 99,
"y": 1012
}
],
"animated": false,
"tooltip": "",
"icon": null,
"zIndex": 4
},
{
"id": "(Office chatter.alice -- )[0]",
"src": "Office chatter.alice",
"srcArrow": "none",
"srcLabel": "",
"dst": "alice-lifeline-end-3851299086",
"dstArrow": "none",
"dstLabel": "",
"opacity": 1,
"strokeDash": 6,
"strokeWidth": 2,
"stroke": "#0D32B2",
"label": "",
"fontSize": 16,
"fontFamily": "DEFAULT",
"language": "",
"color": "#676C7E",
"italic": true,
"bold": false,
"underline": false,
"labelWidth": 0,
"labelHeight": 0,
"labelPosition": "",
"labelPercentage": 0,
"route": [
{
"x": 99,
"y": 236
},
{
"x": 99,
"y": 1142
}
],
"animated": false,
"tooltip": "",
"icon": null,
"zIndex": 1
},
{
"id": "(Office chatter.bob -- )[0]",
"src": "Office chatter.bob",
"srcArrow": "none",
"srcLabel": "",
"dst": "bob-lifeline-end-3036726343",
"dstArrow": "none",
"dstLabel": "",
"opacity": 1,
"strokeDash": 6,
"strokeWidth": 2,
"stroke": "#0D32B2",
"label": "",
"fontSize": 16,
"fontFamily": "DEFAULT",
"language": "",
"color": "#676C7E",
"italic": true,
"bold": false,
"underline": false,
"labelWidth": 0,
"labelHeight": 0,
"labelPosition": "",
"labelPercentage": 0,
"route": [
{
"x": 349,
"y": 236
},
{
"x": 349,
"y": 1142
}
],
"animated": false,
"tooltip": "",
"icon": null,
"zIndex": 1
},
{
"id": "(Office chatter.awkward small talk -- )[0]",
"src": "Office chatter.awkward small talk",
"srcArrow": "none",
"srcLabel": "",
"dst": "awkward small talk-lifeline-end-861194358",
"dstArrow": "none",
"dstLabel": "",
"opacity": 1,
"strokeDash": 6,
"strokeWidth": 2,
"stroke": "#0D32B2",
"label": "",
"fontSize": 16,
"fontFamily": "DEFAULT",
"language": "",
"color": "#676C7E",
"italic": true,
"bold": false,
"underline": false,
"labelWidth": 0,
"labelHeight": 0,
"labelPosition": "",
"labelPercentage": 0,
"route": [
{
"x": 599.5,
"y": 236
},
{
"x": 599.5,
"y": 1142
}
],
"animated": false,
"tooltip": "",
"icon": null,
"zIndex": 1
}
]
}

File diff suppressed because one or more lines are too long

Before

Width:  |  Height:  |  Size: 473 KiB

View file

@ -1,606 +0,0 @@
{
"name": "",
"fontFamily": "SourceSansPro",
"shapes": [
{
"id": "Office chatter",
"type": "sequence_diagram",
"pos": {
"x": 12,
"y": 12
},
"width": 741,
"height": 1166,
"opacity": 1,
"strokeDash": 0,
"strokeWidth": 0,
"borderRadius": 0,
"fill": "#FFFFFF",
"stroke": "#0D32B2",
"shadow": false,
"3d": false,
"multiple": false,
"double-border": false,
"tooltip": "",
"link": "",
"icon": null,
"iconPosition": "",
"blend": false,
"fields": null,
"methods": null,
"columns": null,
"label": "Office chatter",
"fontSize": 28,
"fontFamily": "DEFAULT",
"language": "",
"color": "#0A0F25",
"italic": false,
"bold": false,
"underline": false,
"labelWidth": 164,
"labelHeight": 41,
"labelPosition": "INSIDE_TOP_CENTER",
"zIndex": 0,
"level": 1
},
{
"id": "Office chatter.alice",
"type": "rectangle",
"pos": {
"x": 36,
"y": 122
},
"width": 150,
"height": 126,
"opacity": 1,
"strokeDash": 0,
"strokeWidth": 2,
"borderRadius": 0,
"fill": "#EDF0FD",
"stroke": "#0D32B2",
"shadow": false,
"3d": false,
"multiple": false,
"double-border": false,
"tooltip": "",
"link": "",
"icon": null,
"iconPosition": "",
"blend": false,
"fields": null,
"methods": null,
"columns": null,
"label": "Alice",
"fontSize": 16,
"fontFamily": "DEFAULT",
"language": "",
"color": "#0A0F25",
"italic": false,
"bold": false,
"underline": false,
"labelWidth": 38,
"labelHeight": 26,
"labelPosition": "INSIDE_MIDDLE_CENTER",
"zIndex": 0,
"level": 2
},
{
"id": "Office chatter.bob",
"type": "rectangle",
"pos": {
"x": 286,
"y": 122
},
"width": 150,
"height": 126,
"opacity": 1,
"strokeDash": 0,
"strokeWidth": 2,
"borderRadius": 0,
"fill": "#EDF0FD",
"stroke": "#0D32B2",
"shadow": false,
"3d": false,
"multiple": false,
"double-border": false,
"tooltip": "",
"link": "",
"icon": null,
"iconPosition": "",
"blend": false,
"fields": null,
"methods": null,
"columns": null,
"label": "Bobby",
"fontSize": 16,
"fontFamily": "DEFAULT",
"language": "",
"color": "#0A0F25",
"italic": false,
"bold": false,
"underline": false,
"labelWidth": 48,
"labelHeight": 26,
"labelPosition": "INSIDE_MIDDLE_CENTER",
"zIndex": 0,
"level": 2
},
{
"id": "Office chatter.awkward small talk",
"type": "rectangle",
"pos": {
"x": 494,
"y": 122
},
"width": 235,
"height": 126,
"opacity": 1,
"strokeDash": 0,
"strokeWidth": 2,
"borderRadius": 0,
"fill": "#EDF0FD",
"stroke": "#0D32B2",
"shadow": false,
"3d": false,
"multiple": false,
"double-border": false,
"tooltip": "",
"link": "",
"icon": null,
"iconPosition": "",
"blend": false,
"fields": null,
"methods": null,
"columns": null,
"label": "awkward small talk",
"fontSize": 16,
"fontFamily": "DEFAULT",
"language": "",
"color": "#0A0F25",
"italic": false,
"bold": false,
"underline": false,
"labelWidth": 135,
"labelHeight": 26,
"labelPosition": "INSIDE_MIDDLE_CENTER",
"zIndex": 0,
"level": 2
},
{
"id": "Office chatter.awkward small talk.awkward small talk",
"type": "rectangle",
"pos": {
"x": 605,
"y": 362
},
"width": 12,
"height": 158,
"opacity": 1,
"strokeDash": 0,
"strokeWidth": 2,
"borderRadius": 0,
"fill": "#E3E9FD",
"stroke": "#0D32B2",
"shadow": false,
"3d": false,
"multiple": false,
"double-border": false,
"tooltip": "",
"link": "",
"icon": null,
"iconPosition": "",
"blend": false,
"fields": null,
"methods": null,
"columns": null,
"label": "",
"fontSize": 16,
"fontFamily": "DEFAULT",
"language": "",
"color": "#0A0F25",
"italic": false,
"bold": false,
"underline": false,
"labelWidth": 135,
"labelHeight": 26,
"zIndex": 2,
"level": 3
},
{
"id": "Office chatter.awkward small talk.awkward small talk.ok",
"type": "page",
"pos": {
"x": 550,
"y": 378
},
"width": 122,
"height": 126,
"opacity": 1,
"strokeDash": 0,
"strokeWidth": 2,
"borderRadius": 0,
"fill": "#FFFFFF",
"stroke": "#0D32B2",
"shadow": false,
"3d": false,
"multiple": false,
"double-border": false,
"tooltip": "",
"link": "",
"icon": null,
"iconPosition": "",
"blend": false,
"fields": null,
"methods": null,
"columns": null,
"label": "ok",
"fontSize": 16,
"fontFamily": "DEFAULT",
"language": "",
"color": "#0A0F25",
"italic": false,
"bold": false,
"underline": false,
"labelWidth": 22,
"labelHeight": 26,
"labelPosition": "INSIDE_MIDDLE_CENTER",
"zIndex": 5,
"level": 4
},
{
"id": "Office chatter.awkward small talk.icebreaker attempt",
"type": "rectangle",
"pos": {
"x": 605,
"y": -9223372036854775808
},
"width": 12,
"height": 80,
"opacity": 1,
"strokeDash": 0,
"strokeWidth": 0,
"borderRadius": 0,
"fill": "#DEE1EB",
"stroke": "#0D32B2",
"shadow": false,
"3d": false,
"multiple": false,
"double-border": false,
"tooltip": "",
"link": "",
"icon": null,
"iconPosition": "",
"blend": true,
"fields": null,
"methods": null,
"columns": null,
"label": "",
"fontSize": 16,
"fontFamily": "DEFAULT",
"language": "",
"color": "#0A0F25",
"italic": false,
"bold": false,
"underline": false,
"labelWidth": 134,
"labelHeight": 26,
"zIndex": 2,
"level": 3
},
{
"id": "Office chatter.awkward small talk.unfortunate outcome",
"type": "rectangle",
"pos": {
"x": 605,
"y": -9223372036854775808
},
"width": 12,
"height": 80,
"opacity": 1,
"strokeDash": 0,
"strokeWidth": 0,
"borderRadius": 0,
"fill": "#DEE1EB",
"stroke": "#0D32B2",
"shadow": false,
"3d": false,
"multiple": false,
"double-border": false,
"tooltip": "",
"link": "",
"icon": null,
"iconPosition": "",
"blend": true,
"fields": null,
"methods": null,
"columns": null,
"label": "",
"fontSize": 16,
"fontFamily": "DEFAULT",
"language": "",
"color": "#0A0F25",
"italic": false,
"bold": false,
"underline": false,
"labelWidth": 148,
"labelHeight": 26,
"zIndex": 2,
"level": 3
}
],
"connections": [
{
"id": "Office chatter.(alice -> bob)[1]",
"src": "Office chatter.alice",
"srcArrow": "none",
"srcLabel": "",
"dst": "Office chatter.bob",
"dstArrow": "triangle",
"dstLabel": "",
"opacity": 1,
"strokeDash": 0,
"strokeWidth": 2,
"stroke": "#0D32B2",
"label": "uhm, hi",
"fontSize": 16,
"fontFamily": "DEFAULT",
"language": "",
"color": "#676C7E",
"italic": true,
"bold": false,
"underline": false,
"labelWidth": 50,
"labelHeight": 21,
"labelPosition": "INSIDE_MIDDLE_CENTER",
"labelPercentage": 0,
"route": [
{
"x": 111,
"y": 634
},
{
"x": 361,
"y": 634
}
],
"animated": false,
"tooltip": "",
"icon": null,
"zIndex": 4
},
{
"id": "Office chatter.(bob -> alice)[1]",
"src": "Office chatter.bob",
"srcArrow": "none",
"srcLabel": "",
"dst": "Office chatter.alice",
"dstArrow": "triangle",
"dstLabel": "",
"opacity": 1,
"strokeDash": 0,
"strokeWidth": 2,
"stroke": "#0D32B2",
"label": "oh, hello",
"fontSize": 16,
"fontFamily": "DEFAULT",
"language": "",
"color": "#676C7E",
"italic": true,
"bold": false,
"underline": false,
"labelWidth": 56,
"labelHeight": 21,
"labelPosition": "INSIDE_MIDDLE_CENTER",
"labelPercentage": 0,
"route": [
{
"x": 361,
"y": 764
},
{
"x": 111,
"y": 764
}
],
"animated": false,
"tooltip": "",
"icon": null,
"zIndex": 4
},
{
"id": "Office chatter.(alice -> bob)[0]",
"src": "Office chatter.alice",
"srcArrow": "none",
"srcLabel": "",
"dst": "Office chatter.bob",
"dstArrow": "triangle",
"dstLabel": "",
"opacity": 1,
"strokeDash": 0,
"strokeWidth": 2,
"stroke": "#0D32B2",
"label": "what did you have for lunch?",
"fontSize": 16,
"fontFamily": "DEFAULT",
"language": "",
"color": "#676C7E",
"italic": true,
"bold": false,
"underline": false,
"labelWidth": 187,
"labelHeight": 21,
"labelPosition": "INSIDE_MIDDLE_CENTER",
"labelPercentage": 0,
"route": [
{
"x": 111,
"y": 894
},
{
"x": 361,
"y": 894
}
],
"animated": false,
"tooltip": "",
"icon": null,
"zIndex": 4
},
{
"id": "Office chatter.(bob -> alice)[0]",
"src": "Office chatter.bob",
"srcArrow": "none",
"srcLabel": "",
"dst": "Office chatter.alice",
"dstArrow": "triangle",
"dstLabel": "",
"opacity": 1,
"strokeDash": 0,
"strokeWidth": 2,
"stroke": "#0D32B2",
"label": "that's personal",
"fontSize": 16,
"fontFamily": "DEFAULT",
"language": "",
"color": "#676C7E",
"italic": true,
"bold": false,
"underline": false,
"labelWidth": 99,
"labelHeight": 21,
"labelPosition": "INSIDE_MIDDLE_CENTER",
"labelPercentage": 0,
"route": [
{
"x": 361,
"y": 1024
},
{
"x": 111,
"y": 1024
}
],
"animated": false,
"tooltip": "",
"icon": null,
"zIndex": 4
},
{
"id": "(Office chatter.alice -- )[0]",
"src": "Office chatter.alice",
"srcArrow": "none",
"srcLabel": "",
"dst": "alice-lifeline-end-3851299086",
"dstArrow": "none",
"dstLabel": "",
"opacity": 1,
"strokeDash": 6,
"strokeWidth": 2,
"stroke": "#0D32B2",
"label": "",
"fontSize": 16,
"fontFamily": "DEFAULT",
"language": "",
"color": "#676C7E",
"italic": true,
"bold": false,
"underline": false,
"labelWidth": 0,
"labelHeight": 0,
"labelPosition": "",
"labelPercentage": 0,
"route": [
{
"x": 111,
"y": 248
},
{
"x": 111,
"y": 1154
}
],
"animated": false,
"tooltip": "",
"icon": null,
"zIndex": 1
},
{
"id": "(Office chatter.bob -- )[0]",
"src": "Office chatter.bob",
"srcArrow": "none",
"srcLabel": "",
"dst": "bob-lifeline-end-3036726343",
"dstArrow": "none",
"dstLabel": "",
"opacity": 1,
"strokeDash": 6,
"strokeWidth": 2,
"stroke": "#0D32B2",
"label": "",
"fontSize": 16,
"fontFamily": "DEFAULT",
"language": "",
"color": "#676C7E",
"italic": true,
"bold": false,
"underline": false,
"labelWidth": 0,
"labelHeight": 0,
"labelPosition": "",
"labelPercentage": 0,
"route": [
{
"x": 361,
"y": 248
},
{
"x": 361,
"y": 1154
}
],
"animated": false,
"tooltip": "",
"icon": null,
"zIndex": 1
},
{
"id": "(Office chatter.awkward small talk -- )[0]",
"src": "Office chatter.awkward small talk",
"srcArrow": "none",
"srcLabel": "",
"dst": "awkward small talk-lifeline-end-861194358",
"dstArrow": "none",
"dstLabel": "",
"opacity": 1,
"strokeDash": 6,
"strokeWidth": 2,
"stroke": "#0D32B2",
"label": "",
"fontSize": 16,
"fontFamily": "DEFAULT",
"language": "",
"color": "#676C7E",
"italic": true,
"bold": false,
"underline": false,
"labelWidth": 0,
"labelHeight": 0,
"labelPosition": "",
"labelPercentage": 0,
"route": [
{
"x": 611.5,
"y": 248
},
{
"x": 611.5,
"y": 1154
}
],
"animated": false,
"tooltip": "",
"icon": null,
"zIndex": 1
}
]
}

File diff suppressed because one or more lines are too long

Before

Width:  |  Height:  |  Size: 473 KiB

View file

@ -10,7 +10,7 @@
"y": 0 "y": 0
}, },
"width": 448, "width": 448,
"height": 520, "height": 460,
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
"strokeWidth": 0, "strokeWidth": 0,
@ -37,8 +37,8 @@
"italic": false, "italic": false,
"bold": false, "bold": false,
"underline": false, "underline": false,
"labelWidth": 43, "labelWidth": 38,
"labelHeight": 41, "labelHeight": 36,
"labelPosition": "INSIDE_TOP_CENTER", "labelPosition": "INSIDE_TOP_CENTER",
"zIndex": 0, "zIndex": 0,
"level": 1 "level": 1
@ -51,7 +51,7 @@
"y": 110 "y": 110
}, },
"width": 150, "width": 150,
"height": 126, "height": 66,
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
"strokeWidth": 2, "strokeWidth": 2,
@ -78,8 +78,8 @@
"italic": false, "italic": false,
"bold": false, "bold": false,
"underline": false, "underline": false,
"labelWidth": 12, "labelWidth": 7,
"labelHeight": 26, "labelHeight": 21,
"labelPosition": "INSIDE_MIDDLE_CENTER", "labelPosition": "INSIDE_MIDDLE_CENTER",
"zIndex": 0, "zIndex": 0,
"level": 2 "level": 2
@ -92,7 +92,7 @@
"y": 110 "y": 110
}, },
"width": 150, "width": 150,
"height": 126, "height": 66,
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
"strokeWidth": 2, "strokeWidth": 2,
@ -119,8 +119,8 @@
"italic": false, "italic": false,
"bold": false, "bold": false,
"underline": false, "underline": false,
"labelWidth": 13, "labelWidth": 8,
"labelHeight": 26, "labelHeight": 21,
"labelPosition": "INSIDE_MIDDLE_CENTER", "labelPosition": "INSIDE_MIDDLE_CENTER",
"zIndex": 0, "zIndex": 0,
"level": 2 "level": 2
@ -130,10 +130,10 @@
"type": "sequence_diagram", "type": "sequence_diagram",
"pos": { "pos": {
"x": 0, "x": 0,
"y": 620 "y": 560
}, },
"width": 448, "width": 448,
"height": 520, "height": 460,
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
"strokeWidth": 0, "strokeWidth": 0,
@ -160,8 +160,8 @@
"italic": false, "italic": false,
"bold": false, "bold": false,
"underline": false, "underline": false,
"labelWidth": 84, "labelWidth": 79,
"labelHeight": 41, "labelHeight": 36,
"labelPosition": "INSIDE_TOP_CENTER", "labelPosition": "INSIDE_TOP_CENTER",
"zIndex": 0, "zIndex": 0,
"level": 1 "level": 1
@ -171,10 +171,10 @@
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 24, "x": 24,
"y": 730 "y": 670
}, },
"width": 150, "width": 150,
"height": 126, "height": 66,
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
"strokeWidth": 2, "strokeWidth": 2,
@ -201,8 +201,8 @@
"italic": false, "italic": false,
"bold": false, "bold": false,
"underline": false, "underline": false,
"labelWidth": 12, "labelWidth": 7,
"labelHeight": 26, "labelHeight": 21,
"labelPosition": "INSIDE_MIDDLE_CENTER", "labelPosition": "INSIDE_MIDDLE_CENTER",
"zIndex": 0, "zIndex": 0,
"level": 2 "level": 2
@ -212,10 +212,10 @@
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 274, "x": 274,
"y": 730 "y": 670
}, },
"width": 150, "width": 150,
"height": 126, "height": 66,
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
"strokeWidth": 2, "strokeWidth": 2,
@ -242,8 +242,8 @@
"italic": false, "italic": false,
"bold": false, "bold": false,
"underline": false, "underline": false,
"labelWidth": 13, "labelWidth": 8,
"labelHeight": 26, "labelHeight": 21,
"labelPosition": "INSIDE_MIDDLE_CENTER", "labelPosition": "INSIDE_MIDDLE_CENTER",
"zIndex": 0, "zIndex": 0,
"level": 2 "level": 2
@ -277,11 +277,11 @@
"route": [ "route": [
{ {
"x": 99, "x": 99,
"y": 366 "y": 306
}, },
{ {
"x": 349, "x": 349,
"y": 366 "y": 306
} }
], ],
"animated": false, "animated": false,
@ -316,11 +316,11 @@
"route": [ "route": [
{ {
"x": 99, "x": 99,
"y": 986 "y": 866
}, },
{ {
"x": 349, "x": 349,
"y": 986 "y": 866
} }
], ],
"animated": false, "animated": false,
@ -353,6 +353,14 @@
"labelPosition": "", "labelPosition": "",
"labelPercentage": 0, "labelPercentage": 0,
"route": [ "route": [
{
"x": 224,
"y": 460
},
{
"x": 224,
"y": 500
},
{ {
"x": 224, "x": 224,
"y": 520 "y": 520
@ -360,14 +368,6 @@
{ {
"x": 224, "x": 224,
"y": 560 "y": 560
},
{
"x": 224,
"y": 580
},
{
"x": 224,
"y": 620
} }
], ],
"isCurve": true, "isCurve": true,
@ -403,11 +403,11 @@
"route": [ "route": [
{ {
"x": 99, "x": 99,
"y": 236 "y": 176
}, },
{ {
"x": 99, "x": 99,
"y": 496 "y": 436
} }
], ],
"animated": false, "animated": false,
@ -442,11 +442,11 @@
"route": [ "route": [
{ {
"x": 349, "x": 349,
"y": 236 "y": 176
}, },
{ {
"x": 349, "x": 349,
"y": 496 "y": 436
} }
], ],
"animated": false, "animated": false,
@ -481,11 +481,11 @@
"route": [ "route": [
{ {
"x": 99, "x": 99,
"y": 856 "y": 736
}, },
{ {
"x": 99, "x": 99,
"y": 1116 "y": 996
} }
], ],
"animated": false, "animated": false,
@ -520,11 +520,11 @@
"route": [ "route": [
{ {
"x": 349, "x": 349,
"y": 856 "y": 736
}, },
{ {
"x": 349, "x": 349,
"y": 1116 "y": 996
} }
], ],
"animated": false, "animated": false,

View file

@ -3,7 +3,7 @@
id="d2-svg" id="d2-svg"
style="background: white;" style="background: white;"
xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"
width="648" height="1340" viewBox="-100 -100 648 1340"><style type="text/css"> width="648" height="1220" viewBox="-100 -100 648 1220"><style type="text/css">
<![CDATA[ <![CDATA[
.shape { .shape {
shape-rendering: geometricPrecision; shape-rendering: geometricPrecision;
@ -39,8 +39,8 @@ width="648" height="1340" viewBox="-100 -100 648 1340"><style type="text/css">
svgEl.setAttribute("height", height * ratio - 16); svgEl.setAttribute("height", height * ratio - 16);
} }
}); });
]]></script><g id="foo"><g class="shape" ><rect x="0" y="0" width="448" height="520" style="fill:#FFFFFF;stroke:#0D32B2;stroke-width:0;" /></g><text class="text" x="224.000000" y="33.000000" style="text-anchor:middle;font-size:28px;fill:#0A0F25">foo</text></g><g id="foobar"><g class="shape" ><rect x="0" y="620" width="448" height="520" style="fill:#FFFFFF;stroke:#0D32B2;stroke-width:0;" /></g><text class="text" x="224.000000" y="653.000000" style="text-anchor:middle;font-size:28px;fill:#0A0F25">foobar</text></g><g id="foo.a"><g class="shape" ><rect x="24" y="110" width="150" height="126" style="fill:#EDF0FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text" x="99.000000" y="176.000000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">a</text></g><g id="foo.b"><g class="shape" ><rect x="274" y="110" width="150" height="126" style="fill:#EDF0FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text" x="349.000000" y="176.000000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">b</text></g><g id="foobar.c"><g class="shape" ><rect x="24" y="730" width="150" height="126" style="fill:#EDF0FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text" x="99.000000" y="796.000000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">c</text></g><g id="foobar.d"><g class="shape" ><rect x="274" y="730" width="150" height="126" style="fill:#EDF0FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text" x="349.000000" y="796.000000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">d</text></g><g id="(foo -&gt; foobar)[0]"><marker id="mk-3990223579" markerWidth="10.000000" markerHeight="12.000000" refX="7.000000" refY="6.000000" viewBox="0.000000 0.000000 10.000000 12.000000" orient="auto" markerUnits="userSpaceOnUse"> <polygon class="connection" fill="#0D32B2" stroke-width="2" points="0.000000,0.000000 10.000000,6.000000 0.000000,12.000000" /> </marker><path d="M 224.000000 521.000000 C 224.000000 560.000000 224.000000 580.000000 224.000000 617.000000" class="connection" style="fill:none;stroke:#0D32B2;stroke-width:2;" marker-end="url(#mk-3990223579)" mask="url(#2494592993)"/></g><g id="(foo.a -- )[0]"><path d="M 99.000000 238.000000 L 99.000000 495.000000" class="connection" style="fill:none;stroke:#0D32B2;stroke-width:2;stroke-dasharray:12.000000,11.838767;" mask="url(#2494592993)"/></g><g id="(foo.b -- )[0]"><path d="M 349.000000 238.000000 L 349.000000 495.000000" class="connection" style="fill:none;stroke:#0D32B2;stroke-width:2;stroke-dasharray:12.000000,11.838767;" mask="url(#2494592993)"/></g><g id="(foobar.c -- )[0]"><path d="M 99.000000 858.000000 L 99.000000 1115.000000" class="connection" style="fill:none;stroke:#0D32B2;stroke-width:2;stroke-dasharray:12.000000,11.838767;" mask="url(#2494592993)"/></g><g id="(foobar.d -- )[0]"><path d="M 349.000000 858.000000 L 349.000000 1115.000000" class="connection" style="fill:none;stroke:#0D32B2;stroke-width:2;stroke-dasharray:12.000000,11.838767;" mask="url(#2494592993)"/></g><g id="foo.(a -&gt; b)[0]"><path d="M 101.000000 366.000000 L 345.000000 366.000000" class="connection" style="fill:none;stroke:#0D32B2;stroke-width:2;" marker-end="url(#mk-3990223579)" mask="url(#2494592993)"/></g><g id="foobar.(c -&gt; d)[0]"><path d="M 101.000000 986.000000 L 345.000000 986.000000" class="connection" style="fill:none;stroke:#0D32B2;stroke-width:2;" marker-end="url(#mk-3990223579)" mask="url(#2494592993)"/></g><mask id="2494592993" maskUnits="userSpaceOnUse" x="-100" y="-100" width="648" height="1340"> ]]></script><g id="foo"><g class="shape" ><rect x="0" y="0" width="448" height="460" style="fill:#FFFFFF;stroke:#0D32B2;stroke-width:0;" /></g><text class="text" x="224.000000" y="33.000000" style="text-anchor:middle;font-size:28px;fill:#0A0F25">foo</text></g><g id="foobar"><g class="shape" ><rect x="0" y="560" width="448" height="460" style="fill:#FFFFFF;stroke:#0D32B2;stroke-width:0;" /></g><text class="text" x="224.000000" y="593.000000" style="text-anchor:middle;font-size:28px;fill:#0A0F25">foobar</text></g><g id="foo.a"><g class="shape" ><rect x="24" y="110" width="150" height="66" style="fill:#EDF0FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text" x="99.000000" y="148.500000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">a</text></g><g id="foo.b"><g class="shape" ><rect x="274" y="110" width="150" height="66" style="fill:#EDF0FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text" x="349.000000" y="148.500000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">b</text></g><g id="foobar.c"><g class="shape" ><rect x="24" y="670" width="150" height="66" style="fill:#EDF0FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text" x="99.000000" y="708.500000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">c</text></g><g id="foobar.d"><g class="shape" ><rect x="274" y="670" width="150" height="66" style="fill:#EDF0FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text" x="349.000000" y="708.500000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">d</text></g><g id="(foo -&gt; foobar)[0]"><marker id="mk-3990223579" markerWidth="10.000000" markerHeight="12.000000" refX="7.000000" refY="6.000000" viewBox="0.000000 0.000000 10.000000 12.000000" orient="auto" markerUnits="userSpaceOnUse"> <polygon class="connection" fill="#0D32B2" stroke-width="2" points="0.000000,0.000000 10.000000,6.000000 0.000000,12.000000" /> </marker><path d="M 224.000000 461.000000 C 224.000000 500.000000 224.000000 520.000000 224.000000 557.000000" class="connection" style="fill:none;stroke:#0D32B2;stroke-width:2;" marker-end="url(#mk-3990223579)" mask="url(#1440529920)"/></g><g id="(foo.a -- )[0]"><path d="M 99.000000 178.000000 L 99.000000 435.000000" class="connection" style="fill:none;stroke:#0D32B2;stroke-width:2;stroke-dasharray:12.000000,11.838767;" mask="url(#1440529920)"/></g><g id="(foo.b -- )[0]"><path d="M 349.000000 178.000000 L 349.000000 435.000000" class="connection" style="fill:none;stroke:#0D32B2;stroke-width:2;stroke-dasharray:12.000000,11.838767;" mask="url(#1440529920)"/></g><g id="(foobar.c -- )[0]"><path d="M 99.000000 738.000000 L 99.000000 995.000000" class="connection" style="fill:none;stroke:#0D32B2;stroke-width:2;stroke-dasharray:12.000000,11.838767;" mask="url(#1440529920)"/></g><g id="(foobar.d -- )[0]"><path d="M 349.000000 738.000000 L 349.000000 995.000000" class="connection" style="fill:none;stroke:#0D32B2;stroke-width:2;stroke-dasharray:12.000000,11.838767;" mask="url(#1440529920)"/></g><g id="foo.(a -&gt; b)[0]"><path d="M 101.000000 306.000000 L 345.000000 306.000000" class="connection" style="fill:none;stroke:#0D32B2;stroke-width:2;" marker-end="url(#mk-3990223579)" mask="url(#1440529920)"/></g><g id="foobar.(c -&gt; d)[0]"><path d="M 101.000000 866.000000 L 345.000000 866.000000" class="connection" style="fill:none;stroke:#0D32B2;stroke-width:2;" marker-end="url(#mk-3990223579)" mask="url(#1440529920)"/></g><mask id="1440529920" maskUnits="userSpaceOnUse" x="-100" y="-100" width="648" height="1220">
<rect x="-100" y="-100" width="648" height="1340" fill="white"></rect> <rect x="-100" y="-100" width="648" height="1220" fill="white"></rect>
</mask><style type="text/css"><![CDATA[ </mask><style type="text/css"><![CDATA[
.text { .text {

Before

Width:  |  Height:  |  Size: 328 KiB

After

Width:  |  Height:  |  Size: 328 KiB

View file

@ -10,7 +10,7 @@
"y": 12 "y": 12
}, },
"width": 448, "width": 448,
"height": 520, "height": 460,
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
"strokeWidth": 0, "strokeWidth": 0,
@ -37,8 +37,8 @@
"italic": false, "italic": false,
"bold": false, "bold": false,
"underline": false, "underline": false,
"labelWidth": 43, "labelWidth": 38,
"labelHeight": 41, "labelHeight": 36,
"labelPosition": "INSIDE_TOP_CENTER", "labelPosition": "INSIDE_TOP_CENTER",
"zIndex": 0, "zIndex": 0,
"level": 1 "level": 1
@ -51,7 +51,7 @@
"y": 122 "y": 122
}, },
"width": 150, "width": 150,
"height": 126, "height": 66,
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
"strokeWidth": 2, "strokeWidth": 2,
@ -78,8 +78,8 @@
"italic": false, "italic": false,
"bold": false, "bold": false,
"underline": false, "underline": false,
"labelWidth": 12, "labelWidth": 7,
"labelHeight": 26, "labelHeight": 21,
"labelPosition": "INSIDE_MIDDLE_CENTER", "labelPosition": "INSIDE_MIDDLE_CENTER",
"zIndex": 0, "zIndex": 0,
"level": 2 "level": 2
@ -92,7 +92,7 @@
"y": 122 "y": 122
}, },
"width": 150, "width": 150,
"height": 126, "height": 66,
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
"strokeWidth": 2, "strokeWidth": 2,
@ -119,8 +119,8 @@
"italic": false, "italic": false,
"bold": false, "bold": false,
"underline": false, "underline": false,
"labelWidth": 13, "labelWidth": 8,
"labelHeight": 26, "labelHeight": 21,
"labelPosition": "INSIDE_MIDDLE_CENTER", "labelPosition": "INSIDE_MIDDLE_CENTER",
"zIndex": 0, "zIndex": 0,
"level": 2 "level": 2
@ -130,10 +130,10 @@
"type": "sequence_diagram", "type": "sequence_diagram",
"pos": { "pos": {
"x": 12, "x": 12,
"y": 632 "y": 572
}, },
"width": 448, "width": 448,
"height": 520, "height": 460,
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
"strokeWidth": 0, "strokeWidth": 0,
@ -160,8 +160,8 @@
"italic": false, "italic": false,
"bold": false, "bold": false,
"underline": false, "underline": false,
"labelWidth": 84, "labelWidth": 79,
"labelHeight": 41, "labelHeight": 36,
"labelPosition": "INSIDE_TOP_CENTER", "labelPosition": "INSIDE_TOP_CENTER",
"zIndex": 0, "zIndex": 0,
"level": 1 "level": 1
@ -171,10 +171,10 @@
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 36, "x": 36,
"y": 742 "y": 682
}, },
"width": 150, "width": 150,
"height": 126, "height": 66,
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
"strokeWidth": 2, "strokeWidth": 2,
@ -201,8 +201,8 @@
"italic": false, "italic": false,
"bold": false, "bold": false,
"underline": false, "underline": false,
"labelWidth": 12, "labelWidth": 7,
"labelHeight": 26, "labelHeight": 21,
"labelPosition": "INSIDE_MIDDLE_CENTER", "labelPosition": "INSIDE_MIDDLE_CENTER",
"zIndex": 0, "zIndex": 0,
"level": 2 "level": 2
@ -212,10 +212,10 @@
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 286, "x": 286,
"y": 742 "y": 682
}, },
"width": 150, "width": 150,
"height": 126, "height": 66,
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
"strokeWidth": 2, "strokeWidth": 2,
@ -242,8 +242,8 @@
"italic": false, "italic": false,
"bold": false, "bold": false,
"underline": false, "underline": false,
"labelWidth": 13, "labelWidth": 8,
"labelHeight": 26, "labelHeight": 21,
"labelPosition": "INSIDE_MIDDLE_CENTER", "labelPosition": "INSIDE_MIDDLE_CENTER",
"zIndex": 0, "zIndex": 0,
"level": 2 "level": 2
@ -277,11 +277,11 @@
"route": [ "route": [
{ {
"x": 111, "x": 111,
"y": 378 "y": 318
}, },
{ {
"x": 361, "x": 361,
"y": 378 "y": 318
} }
], ],
"animated": false, "animated": false,
@ -316,11 +316,11 @@
"route": [ "route": [
{ {
"x": 111, "x": 111,
"y": 998 "y": 878
}, },
{ {
"x": 361, "x": 361,
"y": 998 "y": 878
} }
], ],
"animated": false, "animated": false,
@ -355,11 +355,11 @@
"route": [ "route": [
{ {
"x": 236, "x": 236,
"y": 532 "y": 472
}, },
{ {
"x": 236, "x": 236,
"y": 632 "y": 572
} }
], ],
"animated": false, "animated": false,
@ -394,11 +394,11 @@
"route": [ "route": [
{ {
"x": 111, "x": 111,
"y": 248 "y": 188
}, },
{ {
"x": 111, "x": 111,
"y": 508 "y": 448
} }
], ],
"animated": false, "animated": false,
@ -433,11 +433,11 @@
"route": [ "route": [
{ {
"x": 361, "x": 361,
"y": 248 "y": 188
}, },
{ {
"x": 361, "x": 361,
"y": 508 "y": 448
} }
], ],
"animated": false, "animated": false,
@ -472,11 +472,11 @@
"route": [ "route": [
{ {
"x": 111, "x": 111,
"y": 868 "y": 748
}, },
{ {
"x": 111, "x": 111,
"y": 1128 "y": 1008
} }
], ],
"animated": false, "animated": false,
@ -511,11 +511,11 @@
"route": [ "route": [
{ {
"x": 361, "x": 361,
"y": 868 "y": 748
}, },
{ {
"x": 361, "x": 361,
"y": 1128 "y": 1008
} }
], ],
"animated": false, "animated": false,

View file

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

Before

Width:  |  Height:  |  Size: 328 KiB

After

Width:  |  Height:  |  Size: 328 KiB

View file

@ -10,7 +10,7 @@
"y": 74 "y": 74
}, },
"width": 150, "width": 150,
"height": 126, "height": 66,
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
"strokeWidth": 2, "strokeWidth": 2,
@ -37,8 +37,8 @@
"italic": false, "italic": false,
"bold": false, "bold": false,
"underline": false, "underline": false,
"labelWidth": 14, "labelWidth": 9,
"labelHeight": 26, "labelHeight": 21,
"labelPosition": "INSIDE_MIDDLE_CENTER", "labelPosition": "INSIDE_MIDDLE_CENTER",
"zIndex": 0, "zIndex": 0,
"level": 1 "level": 1
@ -51,7 +51,7 @@
"y": 74 "y": 74
}, },
"width": 150, "width": 150,
"height": 126, "height": 66,
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
"strokeWidth": 2, "strokeWidth": 2,
@ -78,8 +78,8 @@
"italic": false, "italic": false,
"bold": false, "bold": false,
"underline": false, "underline": false,
"labelWidth": 13, "labelWidth": 8,
"labelHeight": 26, "labelHeight": 21,
"labelPosition": "INSIDE_MIDDLE_CENTER", "labelPosition": "INSIDE_MIDDLE_CENTER",
"zIndex": 0, "zIndex": 0,
"level": 1 "level": 1
@ -113,11 +113,11 @@
"route": [ "route": [
{ {
"x": 99, "x": 99,
"y": 200 "y": 140
}, },
{ {
"x": 99, "x": 99,
"y": 330 "y": 270
} }
], ],
"animated": false, "animated": false,
@ -152,11 +152,11 @@
"route": [ "route": [
{ {
"x": 349, "x": 349,
"y": 200 "y": 140
}, },
{ {
"x": 349, "x": 349,
"y": 330 "y": 270
} }
], ],
"animated": false, "animated": false,

View file

@ -3,7 +3,7 @@
id="d2-svg" id="d2-svg"
style="background: white;" style="background: white;"
xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"
width="604" height="458" viewBox="-78 -28 604 458"><style type="text/css"> width="604" height="398" viewBox="-78 -28 604 398"><style type="text/css">
<![CDATA[ <![CDATA[
.shape { .shape {
shape-rendering: geometricPrecision; shape-rendering: geometricPrecision;
@ -39,8 +39,8 @@ width="604" height="458" viewBox="-78 -28 604 458"><style type="text/css">
svgEl.setAttribute("height", height * ratio - 16); svgEl.setAttribute("height", height * ratio - 16);
} }
}); });
]]></script><g id="a"><g class="shape" ><rect x="24" y="74" width="150" height="126" style="fill:#FFFFFF;stroke:#0D32B2;stroke-width:2;" /></g><text class="text" x="99.000000" y="140.000000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">A</text></g><g id="b"><g class="shape" ><rect x="274" y="74" width="150" height="126" style="fill:#FFFFFF;stroke:#0D32B2;stroke-width:2;" /></g><text class="text" x="349.000000" y="140.000000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">B</text></g><g id="(a -- )[0]"><path d="M 99.000000 202.000000 L 99.000000 329.000000" class="connection" style="fill:none;stroke:#0D32B2;stroke-width:2;stroke-dasharray:12.000000,11.838767;" mask="url(#3468106845)"/></g><g id="(b -- )[0]"><path d="M 349.000000 202.000000 L 349.000000 329.000000" class="connection" style="fill:none;stroke:#0D32B2;stroke-width:2;stroke-dasharray:12.000000,11.838767;" mask="url(#3468106845)"/></g><mask id="3468106845" maskUnits="userSpaceOnUse" x="-100" y="-100" width="604" height="458"> ]]></script><g id="a"><g class="shape" ><rect x="24" y="74" width="150" height="66" style="fill:#FFFFFF;stroke:#0D32B2;stroke-width:2;" /></g><text class="text" x="99.000000" y="112.500000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">A</text></g><g id="b"><g class="shape" ><rect x="274" y="74" width="150" height="66" style="fill:#FFFFFF;stroke:#0D32B2;stroke-width:2;" /></g><text class="text" x="349.000000" y="112.500000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">B</text></g><g id="(a -- )[0]"><path d="M 99.000000 142.000000 L 99.000000 269.000000" class="connection" style="fill:none;stroke:#0D32B2;stroke-width:2;stroke-dasharray:12.000000,11.838767;" mask="url(#1826812363)"/></g><g id="(b -- )[0]"><path d="M 349.000000 142.000000 L 349.000000 269.000000" class="connection" style="fill:none;stroke:#0D32B2;stroke-width:2;stroke-dasharray:12.000000,11.838767;" mask="url(#1826812363)"/></g><mask id="1826812363" maskUnits="userSpaceOnUse" x="-100" y="-100" width="604" height="398">
<rect x="-100" y="-100" width="604" height="458" fill="white"></rect> <rect x="-100" y="-100" width="604" height="398" fill="white"></rect>
</mask><style type="text/css"><![CDATA[ </mask><style type="text/css"><![CDATA[
.text { .text {

Before

Width:  |  Height:  |  Size: 326 KiB

After

Width:  |  Height:  |  Size: 326 KiB

View file

@ -10,7 +10,7 @@
"y": 74 "y": 74
}, },
"width": 150, "width": 150,
"height": 126, "height": 66,
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
"strokeWidth": 2, "strokeWidth": 2,
@ -37,8 +37,8 @@
"italic": false, "italic": false,
"bold": false, "bold": false,
"underline": false, "underline": false,
"labelWidth": 14, "labelWidth": 9,
"labelHeight": 26, "labelHeight": 21,
"labelPosition": "INSIDE_MIDDLE_CENTER", "labelPosition": "INSIDE_MIDDLE_CENTER",
"zIndex": 0, "zIndex": 0,
"level": 1 "level": 1
@ -51,7 +51,7 @@
"y": 74 "y": 74
}, },
"width": 150, "width": 150,
"height": 126, "height": 66,
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
"strokeWidth": 2, "strokeWidth": 2,
@ -78,8 +78,8 @@
"italic": false, "italic": false,
"bold": false, "bold": false,
"underline": false, "underline": false,
"labelWidth": 13, "labelWidth": 8,
"labelHeight": 26, "labelHeight": 21,
"labelPosition": "INSIDE_MIDDLE_CENTER", "labelPosition": "INSIDE_MIDDLE_CENTER",
"zIndex": 0, "zIndex": 0,
"level": 1 "level": 1
@ -113,11 +113,11 @@
"route": [ "route": [
{ {
"x": 99, "x": 99,
"y": 200 "y": 140
}, },
{ {
"x": 99, "x": 99,
"y": 330 "y": 270
} }
], ],
"animated": false, "animated": false,
@ -152,11 +152,11 @@
"route": [ "route": [
{ {
"x": 349, "x": 349,
"y": 200 "y": 140
}, },
{ {
"x": 349, "x": 349,
"y": 330 "y": 270
} }
], ],
"animated": false, "animated": false,

View file

@ -3,7 +3,7 @@
id="d2-svg" id="d2-svg"
style="background: white;" style="background: white;"
xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"
width="604" height="458" viewBox="-78 -28 604 458"><style type="text/css"> width="604" height="398" viewBox="-78 -28 604 398"><style type="text/css">
<![CDATA[ <![CDATA[
.shape { .shape {
shape-rendering: geometricPrecision; shape-rendering: geometricPrecision;
@ -39,8 +39,8 @@ width="604" height="458" viewBox="-78 -28 604 458"><style type="text/css">
svgEl.setAttribute("height", height * ratio - 16); svgEl.setAttribute("height", height * ratio - 16);
} }
}); });
]]></script><g id="a"><g class="shape" ><rect x="24" y="74" width="150" height="126" style="fill:#FFFFFF;stroke:#0D32B2;stroke-width:2;" /></g><text class="text" x="99.000000" y="140.000000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">A</text></g><g id="b"><g class="shape" ><rect x="274" y="74" width="150" height="126" style="fill:#FFFFFF;stroke:#0D32B2;stroke-width:2;" /></g><text class="text" x="349.000000" y="140.000000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">B</text></g><g id="(a -- )[0]"><path d="M 99.000000 202.000000 L 99.000000 329.000000" class="connection" style="fill:none;stroke:#0D32B2;stroke-width:2;stroke-dasharray:12.000000,11.838767;" mask="url(#3468106845)"/></g><g id="(b -- )[0]"><path d="M 349.000000 202.000000 L 349.000000 329.000000" class="connection" style="fill:none;stroke:#0D32B2;stroke-width:2;stroke-dasharray:12.000000,11.838767;" mask="url(#3468106845)"/></g><mask id="3468106845" maskUnits="userSpaceOnUse" x="-100" y="-100" width="604" height="458"> ]]></script><g id="a"><g class="shape" ><rect x="24" y="74" width="150" height="66" style="fill:#FFFFFF;stroke:#0D32B2;stroke-width:2;" /></g><text class="text" x="99.000000" y="112.500000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">A</text></g><g id="b"><g class="shape" ><rect x="274" y="74" width="150" height="66" style="fill:#FFFFFF;stroke:#0D32B2;stroke-width:2;" /></g><text class="text" x="349.000000" y="112.500000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">B</text></g><g id="(a -- )[0]"><path d="M 99.000000 142.000000 L 99.000000 269.000000" class="connection" style="fill:none;stroke:#0D32B2;stroke-width:2;stroke-dasharray:12.000000,11.838767;" mask="url(#1826812363)"/></g><g id="(b -- )[0]"><path d="M 349.000000 142.000000 L 349.000000 269.000000" class="connection" style="fill:none;stroke:#0D32B2;stroke-width:2;stroke-dasharray:12.000000,11.838767;" mask="url(#1826812363)"/></g><mask id="1826812363" maskUnits="userSpaceOnUse" x="-100" y="-100" width="604" height="398">
<rect x="-100" y="-100" width="604" height="458" fill="white"></rect> <rect x="-100" y="-100" width="604" height="398" fill="white"></rect>
</mask><style type="text/css"><![CDATA[ </mask><style type="text/css"><![CDATA[
.text { .text {

Before

Width:  |  Height:  |  Size: 326 KiB

After

Width:  |  Height:  |  Size: 326 KiB

View file

@ -10,7 +10,7 @@
"y": 74 "y": 74
}, },
"width": 150, "width": 150,
"height": 126, "height": 66,
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
"strokeWidth": 2, "strokeWidth": 2,
@ -37,8 +37,8 @@
"italic": false, "italic": false,
"bold": false, "bold": false,
"underline": false, "underline": false,
"labelWidth": 14, "labelWidth": 9,
"labelHeight": 26, "labelHeight": 21,
"labelPosition": "INSIDE_MIDDLE_CENTER", "labelPosition": "INSIDE_MIDDLE_CENTER",
"zIndex": 0, "zIndex": 0,
"level": 1 "level": 1
@ -51,7 +51,7 @@
"y": 74 "y": 74
}, },
"width": 150, "width": 150,
"height": 126, "height": 66,
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
"strokeWidth": 2, "strokeWidth": 2,
@ -78,8 +78,8 @@
"italic": false, "italic": false,
"bold": false, "bold": false,
"underline": false, "underline": false,
"labelWidth": 13, "labelWidth": 8,
"labelHeight": 26, "labelHeight": 21,
"labelPosition": "INSIDE_MIDDLE_CENTER", "labelPosition": "INSIDE_MIDDLE_CENTER",
"zIndex": 0, "zIndex": 0,
"level": 1 "level": 1
@ -92,7 +92,7 @@
"y": 74 "y": 74
}, },
"width": 150, "width": 150,
"height": 126, "height": 66,
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
"strokeWidth": 2, "strokeWidth": 2,
@ -119,8 +119,8 @@
"italic": false, "italic": false,
"bold": false, "bold": false,
"underline": false, "underline": false,
"labelWidth": 14, "labelWidth": 9,
"labelHeight": 26, "labelHeight": 21,
"labelPosition": "INSIDE_MIDDLE_CENTER", "labelPosition": "INSIDE_MIDDLE_CENTER",
"zIndex": 0, "zIndex": 0,
"level": 1 "level": 1
@ -130,7 +130,7 @@
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 49, "x": 49,
"y": 290 "y": 230
}, },
"width": 200, "width": 200,
"height": 160, "height": 160,
@ -160,8 +160,8 @@
"italic": false, "italic": false,
"bold": false, "bold": false,
"underline": false, "underline": false,
"labelWidth": 57, "labelWidth": 52,
"labelHeight": 26, "labelHeight": 21,
"labelPosition": "INSIDE_TOP_LEFT", "labelPosition": "INSIDE_TOP_LEFT",
"zIndex": 3, "zIndex": 3,
"level": 1 "level": 1
@ -171,7 +171,7 @@
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 49, "x": 49,
"y": 500 "y": 440
}, },
"width": 350, "width": 350,
"height": 80, "height": 80,
@ -201,8 +201,8 @@
"italic": false, "italic": false,
"bold": false, "bold": false,
"underline": false, "underline": false,
"labelWidth": 57, "labelWidth": 52,
"labelHeight": 26, "labelHeight": 21,
"labelPosition": "INSIDE_TOP_LEFT", "labelPosition": "INSIDE_TOP_LEFT",
"zIndex": 3, "zIndex": 3,
"level": 1 "level": 1
@ -212,7 +212,7 @@
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 49, "x": 49,
"y": 630 "y": 570
}, },
"width": 200, "width": 200,
"height": 160, "height": 160,
@ -242,8 +242,8 @@
"italic": false, "italic": false,
"bold": false, "bold": false,
"underline": false, "underline": false,
"labelWidth": 57, "labelWidth": 52,
"labelHeight": 26, "labelHeight": 21,
"labelPosition": "INSIDE_TOP_LEFT", "labelPosition": "INSIDE_TOP_LEFT",
"zIndex": 3, "zIndex": 3,
"level": 1 "level": 1
@ -253,7 +253,7 @@
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 93, "x": 93,
"y": 734 "y": 674
}, },
"width": 12, "width": 12,
"height": 162, "height": 162,
@ -283,8 +283,8 @@
"italic": false, "italic": false,
"bold": false, "bold": false,
"underline": false, "underline": false,
"labelWidth": 12, "labelWidth": 7,
"labelHeight": 26, "labelHeight": 21,
"zIndex": 2, "zIndex": 2,
"level": 2 "level": 2
}, },
@ -293,7 +293,7 @@
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 55, "x": 55,
"y": 840 "y": 780
}, },
"width": 344, "width": 344,
"height": 80, "height": 80,
@ -323,8 +323,8 @@
"italic": false, "italic": false,
"bold": false, "bold": false,
"underline": false, "underline": false,
"labelWidth": 57, "labelWidth": 52,
"labelHeight": 26, "labelHeight": 21,
"labelPosition": "INSIDE_TOP_LEFT", "labelPosition": "INSIDE_TOP_LEFT",
"zIndex": 3, "zIndex": 3,
"level": 1 "level": 1
@ -334,7 +334,7 @@
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 299, "x": 299,
"y": 970 "y": 910
}, },
"width": 200, "width": 200,
"height": 290, "height": 290,
@ -364,8 +364,8 @@
"italic": false, "italic": false,
"bold": false, "bold": false,
"underline": false, "underline": false,
"labelWidth": 57, "labelWidth": 52,
"labelHeight": 26, "labelHeight": 21,
"labelPosition": "INSIDE_TOP_LEFT", "labelPosition": "INSIDE_TOP_LEFT",
"zIndex": 3, "zIndex": 3,
"level": 1 "level": 1
@ -375,7 +375,7 @@
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 49, "x": 49,
"y": 1310 "y": 1250
}, },
"width": 350, "width": 350,
"height": 80, "height": 80,
@ -405,8 +405,8 @@
"italic": false, "italic": false,
"bold": false, "bold": false,
"underline": false, "underline": false,
"labelWidth": 57, "labelWidth": 52,
"labelHeight": 26, "labelHeight": 21,
"labelPosition": "INSIDE_TOP_LEFT", "labelPosition": "INSIDE_TOP_LEFT",
"zIndex": 3, "zIndex": 3,
"level": 1 "level": 1
@ -416,7 +416,7 @@
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 49, "x": 49,
"y": 1440 "y": 1380
}, },
"width": 200, "width": 200,
"height": 160, "height": 160,
@ -446,8 +446,8 @@
"italic": false, "italic": false,
"bold": false, "bold": false,
"underline": false, "underline": false,
"labelWidth": 57, "labelWidth": 52,
"labelHeight": 26, "labelHeight": 21,
"labelPosition": "INSIDE_TOP_LEFT", "labelPosition": "INSIDE_TOP_LEFT",
"zIndex": 3, "zIndex": 3,
"level": 1 "level": 1
@ -457,7 +457,7 @@
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 49, "x": 49,
"y": 1650 "y": 1590
}, },
"width": 200, "width": 200,
"height": 160, "height": 160,
@ -487,8 +487,8 @@
"italic": false, "italic": false,
"bold": false, "bold": false,
"underline": false, "underline": false,
"labelWidth": 57, "labelWidth": 52,
"labelHeight": 26, "labelHeight": 21,
"labelPosition": "INSIDE_TOP_LEFT", "labelPosition": "INSIDE_TOP_LEFT",
"zIndex": 3, "zIndex": 3,
"level": 1 "level": 1
@ -498,7 +498,7 @@
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 49, "x": 49,
"y": 2070 "y": 2010
}, },
"width": 200, "width": 200,
"height": 160, "height": 160,
@ -528,8 +528,8 @@
"italic": false, "italic": false,
"bold": false, "bold": false,
"underline": false, "underline": false,
"labelWidth": 57, "labelWidth": 52,
"labelHeight": 26, "labelHeight": 21,
"labelPosition": "INSIDE_TOP_LEFT", "labelPosition": "INSIDE_TOP_LEFT",
"zIndex": 3, "zIndex": 3,
"level": 1 "level": 1
@ -539,7 +539,7 @@
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 549, "x": 549,
"y": 2540 "y": 2480
}, },
"width": 200, "width": 200,
"height": 160, "height": 160,
@ -569,8 +569,8 @@
"italic": false, "italic": false,
"bold": false, "bold": false,
"underline": false, "underline": false,
"labelWidth": 65, "labelWidth": 60,
"labelHeight": 26, "labelHeight": 21,
"labelPosition": "INSIDE_TOP_LEFT", "labelPosition": "INSIDE_TOP_LEFT",
"zIndex": 3, "zIndex": 3,
"level": 1 "level": 1
@ -580,7 +580,7 @@
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 549, "x": 549,
"y": 2880 "y": 2820
}, },
"width": 200, "width": 200,
"height": 160, "height": 160,
@ -610,8 +610,8 @@
"italic": false, "italic": false,
"bold": false, "bold": false,
"underline": false, "underline": false,
"labelWidth": 65, "labelWidth": 60,
"labelHeight": 26, "labelHeight": 21,
"labelPosition": "INSIDE_TOP_LEFT", "labelPosition": "INSIDE_TOP_LEFT",
"zIndex": 3, "zIndex": 3,
"level": 1 "level": 1
@ -645,19 +645,19 @@
"route": [ "route": [
{ {
"x": 99, "x": 99,
"y": 330 "y": 270
}, },
{ {
"x": 199, "x": 199,
"y": 330 "y": 270
}, },
{ {
"x": 199, "x": 199,
"y": 410 "y": 350
}, },
{ {
"x": 99, "x": 99,
"y": 410 "y": 350
} }
], ],
"animated": false, "animated": false,
@ -692,11 +692,11 @@
"route": [ "route": [
{ {
"x": 99, "x": 99,
"y": 540 "y": 480
}, },
{ {
"x": 349, "x": 349,
"y": 540 "y": 480
} }
], ],
"animated": false, "animated": false,
@ -731,19 +731,19 @@
"route": [ "route": [
{ {
"x": 99, "x": 99,
"y": 670 "y": 610
}, },
{ {
"x": 199, "x": 199,
"y": 670 "y": 610
}, },
{ {
"x": 199, "x": 199,
"y": 750 "y": 690
}, },
{ {
"x": 105, "x": 105,
"y": 750 "y": 690
} }
], ],
"animated": false, "animated": false,
@ -778,11 +778,11 @@
"route": [ "route": [
{ {
"x": 105, "x": 105,
"y": 880 "y": 820
}, },
{ {
"x": 349, "x": 349,
"y": 880 "y": 820
} }
], ],
"animated": false, "animated": false,
@ -817,19 +817,19 @@
"route": [ "route": [
{ {
"x": 349, "x": 349,
"y": 1010 "y": 950
}, },
{ {
"x": 449, "x": 449,
"y": 1010 "y": 950
}, },
{ {
"x": 449, "x": 449,
"y": 1090 "y": 1030
}, },
{ {
"x": 349, "x": 349,
"y": 1090 "y": 1030
} }
], ],
"animated": false, "animated": false,
@ -864,19 +864,19 @@
"route": [ "route": [
{ {
"x": 349, "x": 349,
"y": 1140 "y": 1080
}, },
{ {
"x": 449, "x": 449,
"y": 1140 "y": 1080
}, },
{ {
"x": 449, "x": 449,
"y": 1220 "y": 1160
}, },
{ {
"x": 349, "x": 349,
"y": 1220 "y": 1160
} }
], ],
"animated": false, "animated": false,
@ -911,11 +911,11 @@
"route": [ "route": [
{ {
"x": 349, "x": 349,
"y": 1350 "y": 1290
}, },
{ {
"x": 99, "x": 99,
"y": 1350 "y": 1290
} }
], ],
"animated": false, "animated": false,
@ -950,19 +950,19 @@
"route": [ "route": [
{ {
"x": 99, "x": 99,
"y": 1480 "y": 1420
}, },
{ {
"x": 199, "x": 199,
"y": 1480 "y": 1420
}, },
{ {
"x": 199, "x": 199,
"y": 1560 "y": 1500
}, },
{ {
"x": 99, "x": 99,
"y": 1560 "y": 1500
} }
], ],
"animated": false, "animated": false,
@ -997,19 +997,19 @@
"route": [ "route": [
{ {
"x": 99, "x": 99,
"y": 1690 "y": 1630
}, },
{ {
"x": 199, "x": 199,
"y": 1690 "y": 1630
}, },
{ {
"x": 199, "x": 199,
"y": 1770 "y": 1710
}, },
{ {
"x": 99, "x": 99,
"y": 1770 "y": 1710
} }
], ],
"animated": false, "animated": false,
@ -1044,19 +1044,19 @@
"route": [ "route": [
{ {
"x": 99, "x": 99,
"y": 1900 "y": 1840
}, },
{ {
"x": 199, "x": 199,
"y": 1900 "y": 1840
}, },
{ {
"x": 199, "x": 199,
"y": 1980 "y": 1920
}, },
{ {
"x": 99, "x": 99,
"y": 1980 "y": 1920
} }
], ],
"animated": false, "animated": false,
@ -1091,19 +1091,19 @@
"route": [ "route": [
{ {
"x": 99, "x": 99,
"y": 2110 "y": 2050
}, },
{ {
"x": 199, "x": 199,
"y": 2110 "y": 2050
}, },
{ {
"x": 199, "x": 199,
"y": 2190 "y": 2130
}, },
{ {
"x": 99, "x": 99,
"y": 2190 "y": 2130
} }
], ],
"animated": false, "animated": false,
@ -1138,19 +1138,19 @@
"route": [ "route": [
{ {
"x": 99, "x": 99,
"y": 2320 "y": 2260
}, },
{ {
"x": 199, "x": 199,
"y": 2320 "y": 2260
}, },
{ {
"x": 199, "x": 199,
"y": 2400 "y": 2340
}, },
{ {
"x": 99, "x": 99,
"y": 2400 "y": 2340
} }
], ],
"animated": false, "animated": false,
@ -1185,11 +1185,11 @@
"route": [ "route": [
{ {
"x": 349, "x": 349,
"y": 2450 "y": 2390
}, },
{ {
"x": 599, "x": 599,
"y": 2450 "y": 2390
} }
], ],
"animated": false, "animated": false,
@ -1224,19 +1224,19 @@
"route": [ "route": [
{ {
"x": 599, "x": 599,
"y": 2580 "y": 2520
}, },
{ {
"x": 699, "x": 699,
"y": 2580 "y": 2520
}, },
{ {
"x": 699, "x": 699,
"y": 2660 "y": 2600
}, },
{ {
"x": 599, "x": 599,
"y": 2660 "y": 2600
} }
], ],
"animated": false, "animated": false,
@ -1271,11 +1271,11 @@
"route": [ "route": [
{ {
"x": 349, "x": 349,
"y": 2790 "y": 2730
}, },
{ {
"x": 599, "x": 599,
"y": 2790 "y": 2730
} }
], ],
"animated": false, "animated": false,
@ -1310,19 +1310,19 @@
"route": [ "route": [
{ {
"x": 599, "x": 599,
"y": 2920 "y": 2860
}, },
{ {
"x": 699, "x": 699,
"y": 2920 "y": 2860
}, },
{ {
"x": 699, "x": 699,
"y": 3000 "y": 2940
}, },
{ {
"x": 599, "x": 599,
"y": 3000 "y": 2940
} }
], ],
"animated": false, "animated": false,
@ -1357,11 +1357,11 @@
"route": [ "route": [
{ {
"x": 349, "x": 349,
"y": 3130 "y": 3070
}, },
{ {
"x": 599, "x": 599,
"y": 3130 "y": 3070
} }
], ],
"animated": false, "animated": false,
@ -1396,11 +1396,11 @@
"route": [ "route": [
{ {
"x": 99, "x": 99,
"y": 200 "y": 140
}, },
{ {
"x": 99, "x": 99,
"y": 3260 "y": 3200
} }
], ],
"animated": false, "animated": false,
@ -1435,11 +1435,11 @@
"route": [ "route": [
{ {
"x": 349, "x": 349,
"y": 200 "y": 140
}, },
{ {
"x": 349, "x": 349,
"y": 3260 "y": 3200
} }
], ],
"animated": false, "animated": false,
@ -1474,11 +1474,11 @@
"route": [ "route": [
{ {
"x": 599, "x": 599,
"y": 200 "y": 140
}, },
{ {
"x": 599, "x": 599,
"y": 3260 "y": 3200
} }
], ],
"animated": false, "animated": false,

File diff suppressed because one or more lines are too long

Before

Width:  |  Height:  |  Size: 336 KiB

After

Width:  |  Height:  |  Size: 336 KiB

View file

@ -10,7 +10,7 @@
"y": 74 "y": 74
}, },
"width": 150, "width": 150,
"height": 126, "height": 66,
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
"strokeWidth": 2, "strokeWidth": 2,
@ -37,8 +37,8 @@
"italic": false, "italic": false,
"bold": false, "bold": false,
"underline": false, "underline": false,
"labelWidth": 14, "labelWidth": 9,
"labelHeight": 26, "labelHeight": 21,
"labelPosition": "INSIDE_MIDDLE_CENTER", "labelPosition": "INSIDE_MIDDLE_CENTER",
"zIndex": 0, "zIndex": 0,
"level": 1 "level": 1
@ -51,7 +51,7 @@
"y": 74 "y": 74
}, },
"width": 150, "width": 150,
"height": 126, "height": 66,
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
"strokeWidth": 2, "strokeWidth": 2,
@ -78,8 +78,8 @@
"italic": false, "italic": false,
"bold": false, "bold": false,
"underline": false, "underline": false,
"labelWidth": 13, "labelWidth": 8,
"labelHeight": 26, "labelHeight": 21,
"labelPosition": "INSIDE_MIDDLE_CENTER", "labelPosition": "INSIDE_MIDDLE_CENTER",
"zIndex": 0, "zIndex": 0,
"level": 1 "level": 1
@ -92,7 +92,7 @@
"y": 74 "y": 74
}, },
"width": 150, "width": 150,
"height": 126, "height": 66,
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
"strokeWidth": 2, "strokeWidth": 2,
@ -119,8 +119,8 @@
"italic": false, "italic": false,
"bold": false, "bold": false,
"underline": false, "underline": false,
"labelWidth": 14, "labelWidth": 9,
"labelHeight": 26, "labelHeight": 21,
"labelPosition": "INSIDE_MIDDLE_CENTER", "labelPosition": "INSIDE_MIDDLE_CENTER",
"zIndex": 0, "zIndex": 0,
"level": 1 "level": 1
@ -130,7 +130,7 @@
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 49, "x": 49,
"y": 290 "y": 230
}, },
"width": 200, "width": 200,
"height": 160, "height": 160,
@ -160,8 +160,8 @@
"italic": false, "italic": false,
"bold": false, "bold": false,
"underline": false, "underline": false,
"labelWidth": 57, "labelWidth": 52,
"labelHeight": 26, "labelHeight": 21,
"labelPosition": "INSIDE_TOP_LEFT", "labelPosition": "INSIDE_TOP_LEFT",
"zIndex": 3, "zIndex": 3,
"level": 1 "level": 1
@ -171,7 +171,7 @@
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 49, "x": 49,
"y": 500 "y": 440
}, },
"width": 350, "width": 350,
"height": 80, "height": 80,
@ -201,8 +201,8 @@
"italic": false, "italic": false,
"bold": false, "bold": false,
"underline": false, "underline": false,
"labelWidth": 57, "labelWidth": 52,
"labelHeight": 26, "labelHeight": 21,
"labelPosition": "INSIDE_TOP_LEFT", "labelPosition": "INSIDE_TOP_LEFT",
"zIndex": 3, "zIndex": 3,
"level": 1 "level": 1
@ -212,7 +212,7 @@
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 49, "x": 49,
"y": 630 "y": 570
}, },
"width": 200, "width": 200,
"height": 160, "height": 160,
@ -242,8 +242,8 @@
"italic": false, "italic": false,
"bold": false, "bold": false,
"underline": false, "underline": false,
"labelWidth": 57, "labelWidth": 52,
"labelHeight": 26, "labelHeight": 21,
"labelPosition": "INSIDE_TOP_LEFT", "labelPosition": "INSIDE_TOP_LEFT",
"zIndex": 3, "zIndex": 3,
"level": 1 "level": 1
@ -253,7 +253,7 @@
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 93, "x": 93,
"y": 734 "y": 674
}, },
"width": 12, "width": 12,
"height": 162, "height": 162,
@ -283,8 +283,8 @@
"italic": false, "italic": false,
"bold": false, "bold": false,
"underline": false, "underline": false,
"labelWidth": 12, "labelWidth": 7,
"labelHeight": 26, "labelHeight": 21,
"zIndex": 2, "zIndex": 2,
"level": 2 "level": 2
}, },
@ -293,7 +293,7 @@
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 55, "x": 55,
"y": 840 "y": 780
}, },
"width": 344, "width": 344,
"height": 80, "height": 80,
@ -323,8 +323,8 @@
"italic": false, "italic": false,
"bold": false, "bold": false,
"underline": false, "underline": false,
"labelWidth": 57, "labelWidth": 52,
"labelHeight": 26, "labelHeight": 21,
"labelPosition": "INSIDE_TOP_LEFT", "labelPosition": "INSIDE_TOP_LEFT",
"zIndex": 3, "zIndex": 3,
"level": 1 "level": 1
@ -334,7 +334,7 @@
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 299, "x": 299,
"y": 970 "y": 910
}, },
"width": 200, "width": 200,
"height": 290, "height": 290,
@ -364,8 +364,8 @@
"italic": false, "italic": false,
"bold": false, "bold": false,
"underline": false, "underline": false,
"labelWidth": 57, "labelWidth": 52,
"labelHeight": 26, "labelHeight": 21,
"labelPosition": "INSIDE_TOP_LEFT", "labelPosition": "INSIDE_TOP_LEFT",
"zIndex": 3, "zIndex": 3,
"level": 1 "level": 1
@ -375,7 +375,7 @@
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 49, "x": 49,
"y": 1310 "y": 1250
}, },
"width": 350, "width": 350,
"height": 80, "height": 80,
@ -405,8 +405,8 @@
"italic": false, "italic": false,
"bold": false, "bold": false,
"underline": false, "underline": false,
"labelWidth": 57, "labelWidth": 52,
"labelHeight": 26, "labelHeight": 21,
"labelPosition": "INSIDE_TOP_LEFT", "labelPosition": "INSIDE_TOP_LEFT",
"zIndex": 3, "zIndex": 3,
"level": 1 "level": 1
@ -416,7 +416,7 @@
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 49, "x": 49,
"y": 1440 "y": 1380
}, },
"width": 200, "width": 200,
"height": 160, "height": 160,
@ -446,8 +446,8 @@
"italic": false, "italic": false,
"bold": false, "bold": false,
"underline": false, "underline": false,
"labelWidth": 57, "labelWidth": 52,
"labelHeight": 26, "labelHeight": 21,
"labelPosition": "INSIDE_TOP_LEFT", "labelPosition": "INSIDE_TOP_LEFT",
"zIndex": 3, "zIndex": 3,
"level": 1 "level": 1
@ -457,7 +457,7 @@
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 49, "x": 49,
"y": 1650 "y": 1590
}, },
"width": 200, "width": 200,
"height": 160, "height": 160,
@ -487,8 +487,8 @@
"italic": false, "italic": false,
"bold": false, "bold": false,
"underline": false, "underline": false,
"labelWidth": 57, "labelWidth": 52,
"labelHeight": 26, "labelHeight": 21,
"labelPosition": "INSIDE_TOP_LEFT", "labelPosition": "INSIDE_TOP_LEFT",
"zIndex": 3, "zIndex": 3,
"level": 1 "level": 1
@ -498,7 +498,7 @@
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 49, "x": 49,
"y": 2070 "y": 2010
}, },
"width": 200, "width": 200,
"height": 160, "height": 160,
@ -528,8 +528,8 @@
"italic": false, "italic": false,
"bold": false, "bold": false,
"underline": false, "underline": false,
"labelWidth": 57, "labelWidth": 52,
"labelHeight": 26, "labelHeight": 21,
"labelPosition": "INSIDE_TOP_LEFT", "labelPosition": "INSIDE_TOP_LEFT",
"zIndex": 3, "zIndex": 3,
"level": 1 "level": 1
@ -539,7 +539,7 @@
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 549, "x": 549,
"y": 2540 "y": 2480
}, },
"width": 200, "width": 200,
"height": 160, "height": 160,
@ -569,8 +569,8 @@
"italic": false, "italic": false,
"bold": false, "bold": false,
"underline": false, "underline": false,
"labelWidth": 65, "labelWidth": 60,
"labelHeight": 26, "labelHeight": 21,
"labelPosition": "INSIDE_TOP_LEFT", "labelPosition": "INSIDE_TOP_LEFT",
"zIndex": 3, "zIndex": 3,
"level": 1 "level": 1
@ -580,7 +580,7 @@
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 549, "x": 549,
"y": 2880 "y": 2820
}, },
"width": 200, "width": 200,
"height": 160, "height": 160,
@ -610,8 +610,8 @@
"italic": false, "italic": false,
"bold": false, "bold": false,
"underline": false, "underline": false,
"labelWidth": 65, "labelWidth": 60,
"labelHeight": 26, "labelHeight": 21,
"labelPosition": "INSIDE_TOP_LEFT", "labelPosition": "INSIDE_TOP_LEFT",
"zIndex": 3, "zIndex": 3,
"level": 1 "level": 1
@ -645,19 +645,19 @@
"route": [ "route": [
{ {
"x": 99, "x": 99,
"y": 330 "y": 270
}, },
{ {
"x": 199, "x": 199,
"y": 330 "y": 270
}, },
{ {
"x": 199, "x": 199,
"y": 410 "y": 350
}, },
{ {
"x": 99, "x": 99,
"y": 410 "y": 350
} }
], ],
"animated": false, "animated": false,
@ -692,11 +692,11 @@
"route": [ "route": [
{ {
"x": 99, "x": 99,
"y": 540 "y": 480
}, },
{ {
"x": 349, "x": 349,
"y": 540 "y": 480
} }
], ],
"animated": false, "animated": false,
@ -731,19 +731,19 @@
"route": [ "route": [
{ {
"x": 99, "x": 99,
"y": 670 "y": 610
}, },
{ {
"x": 199, "x": 199,
"y": 670 "y": 610
}, },
{ {
"x": 199, "x": 199,
"y": 750 "y": 690
}, },
{ {
"x": 105, "x": 105,
"y": 750 "y": 690
} }
], ],
"animated": false, "animated": false,
@ -778,11 +778,11 @@
"route": [ "route": [
{ {
"x": 105, "x": 105,
"y": 880 "y": 820
}, },
{ {
"x": 349, "x": 349,
"y": 880 "y": 820
} }
], ],
"animated": false, "animated": false,
@ -817,19 +817,19 @@
"route": [ "route": [
{ {
"x": 349, "x": 349,
"y": 1010 "y": 950
}, },
{ {
"x": 449, "x": 449,
"y": 1010 "y": 950
}, },
{ {
"x": 449, "x": 449,
"y": 1090 "y": 1030
}, },
{ {
"x": 349, "x": 349,
"y": 1090 "y": 1030
} }
], ],
"animated": false, "animated": false,
@ -864,19 +864,19 @@
"route": [ "route": [
{ {
"x": 349, "x": 349,
"y": 1140 "y": 1080
}, },
{ {
"x": 449, "x": 449,
"y": 1140 "y": 1080
}, },
{ {
"x": 449, "x": 449,
"y": 1220 "y": 1160
}, },
{ {
"x": 349, "x": 349,
"y": 1220 "y": 1160
} }
], ],
"animated": false, "animated": false,
@ -911,11 +911,11 @@
"route": [ "route": [
{ {
"x": 349, "x": 349,
"y": 1350 "y": 1290
}, },
{ {
"x": 99, "x": 99,
"y": 1350 "y": 1290
} }
], ],
"animated": false, "animated": false,
@ -950,19 +950,19 @@
"route": [ "route": [
{ {
"x": 99, "x": 99,
"y": 1480 "y": 1420
}, },
{ {
"x": 199, "x": 199,
"y": 1480 "y": 1420
}, },
{ {
"x": 199, "x": 199,
"y": 1560 "y": 1500
}, },
{ {
"x": 99, "x": 99,
"y": 1560 "y": 1500
} }
], ],
"animated": false, "animated": false,
@ -997,19 +997,19 @@
"route": [ "route": [
{ {
"x": 99, "x": 99,
"y": 1690 "y": 1630
}, },
{ {
"x": 199, "x": 199,
"y": 1690 "y": 1630
}, },
{ {
"x": 199, "x": 199,
"y": 1770 "y": 1710
}, },
{ {
"x": 99, "x": 99,
"y": 1770 "y": 1710
} }
], ],
"animated": false, "animated": false,
@ -1044,19 +1044,19 @@
"route": [ "route": [
{ {
"x": 99, "x": 99,
"y": 1900 "y": 1840
}, },
{ {
"x": 199, "x": 199,
"y": 1900 "y": 1840
}, },
{ {
"x": 199, "x": 199,
"y": 1980 "y": 1920
}, },
{ {
"x": 99, "x": 99,
"y": 1980 "y": 1920
} }
], ],
"animated": false, "animated": false,
@ -1091,19 +1091,19 @@
"route": [ "route": [
{ {
"x": 99, "x": 99,
"y": 2110 "y": 2050
}, },
{ {
"x": 199, "x": 199,
"y": 2110 "y": 2050
}, },
{ {
"x": 199, "x": 199,
"y": 2190 "y": 2130
}, },
{ {
"x": 99, "x": 99,
"y": 2190 "y": 2130
} }
], ],
"animated": false, "animated": false,
@ -1138,19 +1138,19 @@
"route": [ "route": [
{ {
"x": 99, "x": 99,
"y": 2320 "y": 2260
}, },
{ {
"x": 199, "x": 199,
"y": 2320 "y": 2260
}, },
{ {
"x": 199, "x": 199,
"y": 2400 "y": 2340
}, },
{ {
"x": 99, "x": 99,
"y": 2400 "y": 2340
} }
], ],
"animated": false, "animated": false,
@ -1185,11 +1185,11 @@
"route": [ "route": [
{ {
"x": 349, "x": 349,
"y": 2450 "y": 2390
}, },
{ {
"x": 599, "x": 599,
"y": 2450 "y": 2390
} }
], ],
"animated": false, "animated": false,
@ -1224,19 +1224,19 @@
"route": [ "route": [
{ {
"x": 599, "x": 599,
"y": 2580 "y": 2520
}, },
{ {
"x": 699, "x": 699,
"y": 2580 "y": 2520
}, },
{ {
"x": 699, "x": 699,
"y": 2660 "y": 2600
}, },
{ {
"x": 599, "x": 599,
"y": 2660 "y": 2600
} }
], ],
"animated": false, "animated": false,
@ -1271,11 +1271,11 @@
"route": [ "route": [
{ {
"x": 349, "x": 349,
"y": 2790 "y": 2730
}, },
{ {
"x": 599, "x": 599,
"y": 2790 "y": 2730
} }
], ],
"animated": false, "animated": false,
@ -1310,19 +1310,19 @@
"route": [ "route": [
{ {
"x": 599, "x": 599,
"y": 2920 "y": 2860
}, },
{ {
"x": 699, "x": 699,
"y": 2920 "y": 2860
}, },
{ {
"x": 699, "x": 699,
"y": 3000 "y": 2940
}, },
{ {
"x": 599, "x": 599,
"y": 3000 "y": 2940
} }
], ],
"animated": false, "animated": false,
@ -1357,11 +1357,11 @@
"route": [ "route": [
{ {
"x": 349, "x": 349,
"y": 3130 "y": 3070
}, },
{ {
"x": 599, "x": 599,
"y": 3130 "y": 3070
} }
], ],
"animated": false, "animated": false,
@ -1396,11 +1396,11 @@
"route": [ "route": [
{ {
"x": 99, "x": 99,
"y": 200 "y": 140
}, },
{ {
"x": 99, "x": 99,
"y": 3260 "y": 3200
} }
], ],
"animated": false, "animated": false,
@ -1435,11 +1435,11 @@
"route": [ "route": [
{ {
"x": 349, "x": 349,
"y": 200 "y": 140
}, },
{ {
"x": 349, "x": 349,
"y": 3260 "y": 3200
} }
], ],
"animated": false, "animated": false,
@ -1474,11 +1474,11 @@
"route": [ "route": [
{ {
"x": 599, "x": 599,
"y": 200 "y": 140
}, },
{ {
"x": 599, "x": 599,
"y": 3260 "y": 3200
} }
], ],
"animated": false, "animated": false,

File diff suppressed because one or more lines are too long

Before

Width:  |  Height:  |  Size: 336 KiB

After

Width:  |  Height:  |  Size: 336 KiB

View file

@ -10,7 +10,7 @@
"y": 74 "y": 74
}, },
"width": 150, "width": 150,
"height": 126, "height": 66,
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
"strokeWidth": 2, "strokeWidth": 2,
@ -37,8 +37,8 @@
"italic": false, "italic": false,
"bold": false, "bold": false,
"underline": false, "underline": false,
"labelWidth": 13, "labelWidth": 8,
"labelHeight": 26, "labelHeight": 21,
"labelPosition": "INSIDE_MIDDLE_CENTER", "labelPosition": "INSIDE_MIDDLE_CENTER",
"zIndex": 0, "zIndex": 0,
"level": 1 "level": 1
@ -48,7 +48,7 @@
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 93, "x": 93,
"y": 314 "y": 254
}, },
"width": 12, "width": 12,
"height": 242, "height": 242,
@ -78,8 +78,8 @@
"italic": false, "italic": false,
"bold": false, "bold": false,
"underline": false, "underline": false,
"labelWidth": 12, "labelWidth": 7,
"labelHeight": 26, "labelHeight": 21,
"zIndex": 2, "zIndex": 2,
"level": 2 "level": 2
} }
@ -112,19 +112,19 @@
"route": [ "route": [
{ {
"x": 105, "x": 105,
"y": 330 "y": 270
}, },
{ {
"x": 199, "x": 199,
"y": 330 "y": 270
}, },
{ {
"x": 199, "x": 199,
"y": 410 "y": 350
}, },
{ {
"x": 105, "x": 105,
"y": 410 "y": 350
} }
], ],
"animated": false, "animated": false,
@ -159,19 +159,19 @@
"route": [ "route": [
{ {
"x": 105, "x": 105,
"y": 460 "y": 400
}, },
{ {
"x": 199, "x": 199,
"y": 460 "y": 400
}, },
{ {
"x": 199, "x": 199,
"y": 540 "y": 480
}, },
{ {
"x": 105, "x": 105,
"y": 540 "y": 480
} }
], ],
"animated": false, "animated": false,
@ -206,11 +206,11 @@
"route": [ "route": [
{ {
"x": 99, "x": 99,
"y": 200 "y": 140
}, },
{ {
"x": 99, "x": 99,
"y": 670 "y": 610
} }
], ],
"animated": false, "animated": false,

View file

@ -3,7 +3,7 @@
id="d2-svg" id="d2-svg"
style="background: white;" style="background: white;"
xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"
width="377" height="798" viewBox="-78 -28 377 798"><style type="text/css"> width="377" height="738" viewBox="-78 -28 377 738"><style type="text/css">
<![CDATA[ <![CDATA[
.shape { .shape {
shape-rendering: geometricPrecision; shape-rendering: geometricPrecision;
@ -39,8 +39,8 @@ width="377" height="798" viewBox="-78 -28 377 798"><style type="text/css">
svgEl.setAttribute("height", height * ratio - 16); svgEl.setAttribute("height", height * ratio - 16);
} }
}); });
]]></script><g id="b"><g class="shape" ><rect x="24" y="74" width="150" height="126" style="fill:#EDF0FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text" x="99.000000" y="140.000000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">b</text></g><g id="(b -- )[0]"><path d="M 99.000000 202.000000 L 99.000000 669.000000" class="connection" style="fill:none;stroke:#0D32B2;stroke-width:2;stroke-dasharray:12.000000,11.838767;" mask="url(#1231585596)"/></g><g id="b.1"><g class="shape" ><rect x="93" y="314" width="12" height="242" style="fill:#E3E9FD;stroke:#0D32B2;stroke-width:2;" /></g></g><g id="b.(1 -&gt; 1)[0]"><marker id="mk-3990223579" markerWidth="10.000000" markerHeight="12.000000" refX="7.000000" refY="6.000000" viewBox="0.000000 0.000000 10.000000 12.000000" orient="auto" markerUnits="userSpaceOnUse"> <polygon class="connection" fill="#0D32B2" stroke-width="2" points="0.000000,0.000000 10.000000,6.000000 0.000000,12.000000" /> </marker><path d="M 107.000000 330.000000 L 189.000000 330.000000 S 199.000000 330.000000 199.000000 340.000000 L 199.000000 400.000000 S 199.000000 410.000000 189.000000 410.000000 L 109.000000 410.000000" class="connection" style="fill:none;stroke:#0D32B2;stroke-width:2;" marker-end="url(#mk-3990223579)" mask="url(#1231585596)"/></g><g id="b.(1 -&gt; 1)[1]"><path d="M 107.000000 460.000000 L 189.000000 460.000000 S 199.000000 460.000000 199.000000 470.000000 L 199.000000 530.000000 S 199.000000 540.000000 189.000000 540.000000 L 109.000000 540.000000" class="connection" style="fill:none;stroke:#0D32B2;stroke-width:2;" marker-end="url(#mk-3990223579)" mask="url(#1231585596)"/></g><mask id="1231585596" maskUnits="userSpaceOnUse" x="-100" y="-100" width="377" height="798"> ]]></script><g id="b"><g class="shape" ><rect x="24" y="74" width="150" height="66" style="fill:#EDF0FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text" x="99.000000" y="112.500000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">b</text></g><g id="(b -- )[0]"><path d="M 99.000000 142.000000 L 99.000000 609.000000" class="connection" style="fill:none;stroke:#0D32B2;stroke-width:2;stroke-dasharray:12.000000,11.838767;" mask="url(#3904261735)"/></g><g id="b.1"><g class="shape" ><rect x="93" y="254" width="12" height="242" style="fill:#E3E9FD;stroke:#0D32B2;stroke-width:2;" /></g></g><g id="b.(1 -&gt; 1)[0]"><marker id="mk-3990223579" markerWidth="10.000000" markerHeight="12.000000" refX="7.000000" refY="6.000000" viewBox="0.000000 0.000000 10.000000 12.000000" orient="auto" markerUnits="userSpaceOnUse"> <polygon class="connection" fill="#0D32B2" stroke-width="2" points="0.000000,0.000000 10.000000,6.000000 0.000000,12.000000" /> </marker><path d="M 107.000000 270.000000 L 189.000000 270.000000 S 199.000000 270.000000 199.000000 280.000000 L 199.000000 340.000000 S 199.000000 350.000000 189.000000 350.000000 L 109.000000 350.000000" class="connection" style="fill:none;stroke:#0D32B2;stroke-width:2;" marker-end="url(#mk-3990223579)" mask="url(#3904261735)"/></g><g id="b.(1 -&gt; 1)[1]"><path d="M 107.000000 400.000000 L 189.000000 400.000000 S 199.000000 400.000000 199.000000 410.000000 L 199.000000 470.000000 S 199.000000 480.000000 189.000000 480.000000 L 109.000000 480.000000" class="connection" style="fill:none;stroke:#0D32B2;stroke-width:2;" marker-end="url(#mk-3990223579)" mask="url(#3904261735)"/></g><mask id="3904261735" maskUnits="userSpaceOnUse" x="-100" y="-100" width="377" height="738">
<rect x="-100" y="-100" width="377" height="798" fill="white"></rect> <rect x="-100" y="-100" width="377" height="738" fill="white"></rect>
</mask><style type="text/css"><![CDATA[ </mask><style type="text/css"><![CDATA[
.text { .text {

Before

Width:  |  Height:  |  Size: 327 KiB

After

Width:  |  Height:  |  Size: 327 KiB

View file

@ -10,7 +10,7 @@
"y": 74 "y": 74
}, },
"width": 150, "width": 150,
"height": 126, "height": 66,
"opacity": 1, "opacity": 1,
"strokeDash": 0, "strokeDash": 0,
"strokeWidth": 2, "strokeWidth": 2,
@ -37,8 +37,8 @@
"italic": false, "italic": false,
"bold": false, "bold": false,
"underline": false, "underline": false,
"labelWidth": 13, "labelWidth": 8,
"labelHeight": 26, "labelHeight": 21,
"labelPosition": "INSIDE_MIDDLE_CENTER", "labelPosition": "INSIDE_MIDDLE_CENTER",
"zIndex": 0, "zIndex": 0,
"level": 1 "level": 1
@ -48,7 +48,7 @@
"type": "rectangle", "type": "rectangle",
"pos": { "pos": {
"x": 93, "x": 93,
"y": 314 "y": 254
}, },
"width": 12, "width": 12,
"height": 242, "height": 242,
@ -78,8 +78,8 @@
"italic": false, "italic": false,
"bold": false, "bold": false,
"underline": false, "underline": false,
"labelWidth": 12, "labelWidth": 7,
"labelHeight": 26, "labelHeight": 21,
"zIndex": 2, "zIndex": 2,
"level": 2 "level": 2
} }
@ -112,19 +112,19 @@
"route": [ "route": [
{ {
"x": 105, "x": 105,
"y": 330 "y": 270
}, },
{ {
"x": 199, "x": 199,
"y": 330 "y": 270
}, },
{ {
"x": 199, "x": 199,
"y": 410 "y": 350
}, },
{ {
"x": 105, "x": 105,
"y": 410 "y": 350
} }
], ],
"animated": false, "animated": false,
@ -159,19 +159,19 @@
"route": [ "route": [
{ {
"x": 105, "x": 105,
"y": 460 "y": 400
}, },
{ {
"x": 199, "x": 199,
"y": 460 "y": 400
}, },
{ {
"x": 199, "x": 199,
"y": 540 "y": 480
}, },
{ {
"x": 105, "x": 105,
"y": 540 "y": 480
} }
], ],
"animated": false, "animated": false,
@ -206,11 +206,11 @@
"route": [ "route": [
{ {
"x": 99, "x": 99,
"y": 200 "y": 140
}, },
{ {
"x": 99, "x": 99,
"y": 670 "y": 610
} }
], ],
"animated": false, "animated": false,

View file

@ -3,7 +3,7 @@
id="d2-svg" id="d2-svg"
style="background: white;" style="background: white;"
xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"
width="377" height="798" viewBox="-78 -28 377 798"><style type="text/css"> width="377" height="738" viewBox="-78 -28 377 738"><style type="text/css">
<![CDATA[ <![CDATA[
.shape { .shape {
shape-rendering: geometricPrecision; shape-rendering: geometricPrecision;
@ -39,8 +39,8 @@ width="377" height="798" viewBox="-78 -28 377 798"><style type="text/css">
svgEl.setAttribute("height", height * ratio - 16); svgEl.setAttribute("height", height * ratio - 16);
} }
}); });
]]></script><g id="b"><g class="shape" ><rect x="24" y="74" width="150" height="126" style="fill:#EDF0FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text" x="99.000000" y="140.000000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">b</text></g><g id="(b -- )[0]"><path d="M 99.000000 202.000000 L 99.000000 669.000000" class="connection" style="fill:none;stroke:#0D32B2;stroke-width:2;stroke-dasharray:12.000000,11.838767;" mask="url(#1231585596)"/></g><g id="b.1"><g class="shape" ><rect x="93" y="314" width="12" height="242" style="fill:#E3E9FD;stroke:#0D32B2;stroke-width:2;" /></g></g><g id="b.(1 -&gt; 1)[0]"><marker id="mk-3990223579" markerWidth="10.000000" markerHeight="12.000000" refX="7.000000" refY="6.000000" viewBox="0.000000 0.000000 10.000000 12.000000" orient="auto" markerUnits="userSpaceOnUse"> <polygon class="connection" fill="#0D32B2" stroke-width="2" points="0.000000,0.000000 10.000000,6.000000 0.000000,12.000000" /> </marker><path d="M 107.000000 330.000000 L 189.000000 330.000000 S 199.000000 330.000000 199.000000 340.000000 L 199.000000 400.000000 S 199.000000 410.000000 189.000000 410.000000 L 109.000000 410.000000" class="connection" style="fill:none;stroke:#0D32B2;stroke-width:2;" marker-end="url(#mk-3990223579)" mask="url(#1231585596)"/></g><g id="b.(1 -&gt; 1)[1]"><path d="M 107.000000 460.000000 L 189.000000 460.000000 S 199.000000 460.000000 199.000000 470.000000 L 199.000000 530.000000 S 199.000000 540.000000 189.000000 540.000000 L 109.000000 540.000000" class="connection" style="fill:none;stroke:#0D32B2;stroke-width:2;" marker-end="url(#mk-3990223579)" mask="url(#1231585596)"/></g><mask id="1231585596" maskUnits="userSpaceOnUse" x="-100" y="-100" width="377" height="798"> ]]></script><g id="b"><g class="shape" ><rect x="24" y="74" width="150" height="66" style="fill:#EDF0FD;stroke:#0D32B2;stroke-width:2;" /></g><text class="text" x="99.000000" y="112.500000" style="text-anchor:middle;font-size:16px;fill:#0A0F25">b</text></g><g id="(b -- )[0]"><path d="M 99.000000 142.000000 L 99.000000 609.000000" class="connection" style="fill:none;stroke:#0D32B2;stroke-width:2;stroke-dasharray:12.000000,11.838767;" mask="url(#3904261735)"/></g><g id="b.1"><g class="shape" ><rect x="93" y="254" width="12" height="242" style="fill:#E3E9FD;stroke:#0D32B2;stroke-width:2;" /></g></g><g id="b.(1 -&gt; 1)[0]"><marker id="mk-3990223579" markerWidth="10.000000" markerHeight="12.000000" refX="7.000000" refY="6.000000" viewBox="0.000000 0.000000 10.000000 12.000000" orient="auto" markerUnits="userSpaceOnUse"> <polygon class="connection" fill="#0D32B2" stroke-width="2" points="0.000000,0.000000 10.000000,6.000000 0.000000,12.000000" /> </marker><path d="M 107.000000 270.000000 L 189.000000 270.000000 S 199.000000 270.000000 199.000000 280.000000 L 199.000000 340.000000 S 199.000000 350.000000 189.000000 350.000000 L 109.000000 350.000000" class="connection" style="fill:none;stroke:#0D32B2;stroke-width:2;" marker-end="url(#mk-3990223579)" mask="url(#3904261735)"/></g><g id="b.(1 -&gt; 1)[1]"><path d="M 107.000000 400.000000 L 189.000000 400.000000 S 199.000000 400.000000 199.000000 410.000000 L 199.000000 470.000000 S 199.000000 480.000000 189.000000 480.000000 L 109.000000 480.000000" class="connection" style="fill:none;stroke:#0D32B2;stroke-width:2;" marker-end="url(#mk-3990223579)" mask="url(#3904261735)"/></g><mask id="3904261735" maskUnits="userSpaceOnUse" x="-100" y="-100" width="377" height="738">
<rect x="-100" y="-100" width="377" height="798" fill="white"></rect> <rect x="-100" y="-100" width="377" height="738" fill="white"></rect>
</mask><style type="text/css"><![CDATA[ </mask><style type="text/css"><![CDATA[
.text { .text {

Before

Width:  |  Height:  |  Size: 327 KiB

After

Width:  |  Height:  |  Size: 327 KiB

View file

@ -94,8 +94,8 @@
"italic": false, "italic": false,
"bold": true, "bold": true,
"underline": false, "underline": false,
"labelWidth": 211, "labelWidth": 206,
"labelHeight": 36, "labelHeight": 31,
"zIndex": 0, "zIndex": 0,
"level": 1, "level": 1,
"primaryAccentColor": "#0D32B2", "primaryAccentColor": "#0D32B2",
@ -194,8 +194,8 @@
"italic": false, "italic": false,
"bold": true, "bold": true,
"underline": false, "underline": false,
"labelWidth": 350, "labelWidth": 345,
"labelHeight": 36, "labelHeight": 31,
"zIndex": 0, "zIndex": 0,
"level": 1, "level": 1,
"primaryAccentColor": "#0D32B2", "primaryAccentColor": "#0D32B2",

View file

@ -39,15 +39,15 @@ width="1392" height="312" viewBox="-102 -102 1392 312"><style type="text/css">
svgEl.setAttribute("height", height * ratio - 16); svgEl.setAttribute("height", height * ratio - 16);
} }
}); });
]]></script><g id="table"><g class="shape" ><rect class="shape" x="0" y="0" width="534" height="108" style="fill:#FFFFFF;stroke:#0A0F25;stroke-width:2;"/><rect class="class_header" x="0.000000" y="0.000000" width="534.000000" height="36.000000" fill="#0A0F25" /><text class="text" x="20.000000" y="27.000000" style="text-anchor:start;font-size:24px;fill:#FFFFFF">sql_table_overflow</text><text class="text" x="10.000000" y="59.000000" style="text-anchor:start;font-size:20px;fill:#0D32B2">short</text> ]]></script><g id="table"><g class="shape" ><rect class="shape" x="0" y="0" width="534" height="108" style="fill:#FFFFFF;stroke:#0A0F25;stroke-width:2;"/><rect class="class_header" x="0.000000" y="0.000000" width="534.000000" height="36.000000" fill="#0A0F25" /><text class="text" x="20.000000" y="25.750000" style="text-anchor:start;font-size:24px;fill:#FFFFFF">sql_table_overflow</text><text class="text" x="10.000000" y="59.000000" style="text-anchor:start;font-size:20px;fill:#0D32B2">short</text>
<text class="text" x="272.000000" y="59.000000" style="text-anchor:start;font-size:20px;fill:#676C7E">loooooooooooooooooooong</text> <text class="text" x="272.000000" y="59.000000" style="text-anchor:start;font-size:20px;fill:#676C7E">loooooooooooooooooooong</text>
<text class="text" x="514.000000" y="59.000000" style="text-anchor:end;font-size:20px;fill:#4A6FF3;letter-spacing:2px;"></text><line x1="0.000000" y1="72.000000" x2="534.000000" y2="72.000000" style="stroke-width:2;stroke:#0A0F25" /><text class="text" x="10.000000" y="95.000000" style="text-anchor:start;font-size:20px;fill:#0D32B2">loooooooooooooooooooong</text> <text class="text" x="514.000000" y="59.000000" style="text-anchor:end;font-size:20px;fill:#4A6FF3;letter-spacing:2px;"></text><line x1="0.000000" y1="72.000000" x2="534.000000" y2="72.000000" style="stroke-width:2;stroke:#0A0F25" /><text class="text" x="10.000000" y="95.000000" style="text-anchor:start;font-size:20px;fill:#0D32B2">loooooooooooooooooooong</text>
<text class="text" x="272.000000" y="95.000000" style="text-anchor:start;font-size:20px;fill:#676C7E">short</text> <text class="text" x="272.000000" y="95.000000" style="text-anchor:start;font-size:20px;fill:#676C7E">short</text>
<text class="text" x="514.000000" y="95.000000" style="text-anchor:end;font-size:20px;fill:#4A6FF3;letter-spacing:2px;"></text><line x1="0.000000" y1="108.000000" x2="534.000000" y2="108.000000" style="stroke-width:2;stroke:#0A0F25" /></g></g><g id="table_constrained"><g class="shape" ><rect class="shape" x="594" y="0" width="594" height="108" style="fill:#FFFFFF;stroke:#0A0F25;stroke-width:2;"/><rect class="class_header" x="594.000000" y="0.000000" width="594.000000" height="36.000000" fill="#0A0F25" /><text class="text" x="614.000000" y="27.000000" style="text-anchor:start;font-size:24px;fill:#FFFFFF">sql_table_constrained_overflow</text><text class="text" x="604.000000" y="59.000000" style="text-anchor:start;font-size:20px;fill:#0D32B2">short</text> <text class="text" x="514.000000" y="95.000000" style="text-anchor:end;font-size:20px;fill:#4A6FF3;letter-spacing:2px;"></text><line x1="0.000000" y1="108.000000" x2="534.000000" y2="108.000000" style="stroke-width:2;stroke:#0A0F25" /></g></g><g id="table_constrained"><g class="shape" ><rect class="shape" x="594" y="0" width="594" height="108" style="fill:#FFFFFF;stroke:#0A0F25;stroke-width:2;"/><rect class="class_header" x="594.000000" y="0.000000" width="594.000000" height="36.000000" fill="#0A0F25" /><text class="text" x="614.000000" y="25.750000" style="text-anchor:start;font-size:24px;fill:#FFFFFF">sql_table_constrained_overflow</text><text class="text" x="604.000000" y="59.000000" style="text-anchor:start;font-size:20px;fill:#0D32B2">short</text>
<text class="text" x="866.000000" y="59.000000" style="text-anchor:start;font-size:20px;fill:#676C7E">loooooooooooooooooooong</text> <text class="text" x="866.000000" y="59.000000" style="text-anchor:start;font-size:20px;fill:#676C7E">loooooooooooooooooooong</text>
<text class="text" x="1168.000000" y="59.000000" style="text-anchor:end;font-size:20px;fill:#4A6FF3;letter-spacing:2px;">UNQ</text><line x1="594.000000" y1="72.000000" x2="1188.000000" y2="72.000000" style="stroke-width:2;stroke:#0A0F25" /><text class="text" x="604.000000" y="95.000000" style="text-anchor:start;font-size:20px;fill:#0D32B2">loooooooooooooooooooong</text> <text class="text" x="1168.000000" y="59.000000" style="text-anchor:end;font-size:20px;fill:#4A6FF3;letter-spacing:2px;">UNQ</text><line x1="594.000000" y1="72.000000" x2="1188.000000" y2="72.000000" style="stroke-width:2;stroke:#0A0F25" /><text class="text" x="604.000000" y="95.000000" style="text-anchor:start;font-size:20px;fill:#0D32B2">loooooooooooooooooooong</text>
<text class="text" x="866.000000" y="95.000000" style="text-anchor:start;font-size:20px;fill:#676C7E">short</text> <text class="text" x="866.000000" y="95.000000" style="text-anchor:start;font-size:20px;fill:#676C7E">short</text>
<text class="text" x="1168.000000" y="95.000000" style="text-anchor:end;font-size:20px;fill:#4A6FF3;letter-spacing:2px;">FK</text><line x1="594.000000" y1="108.000000" x2="1188.000000" y2="108.000000" style="stroke-width:2;stroke:#0A0F25" /></g></g><mask id="202448434" maskUnits="userSpaceOnUse" x="-100" y="-100" width="1392" height="312"> <text class="text" x="1168.000000" y="95.000000" style="text-anchor:end;font-size:20px;fill:#4A6FF3;letter-spacing:2px;">FK</text><line x1="594.000000" y1="108.000000" x2="1188.000000" y2="108.000000" style="stroke-width:2;stroke:#0A0F25" /></g></g><mask id="3897867896" maskUnits="userSpaceOnUse" x="-100" y="-100" width="1392" height="312">
<rect x="-100" y="-100" width="1392" height="312" fill="white"></rect> <rect x="-100" y="-100" width="1392" height="312" fill="white"></rect>
</mask><style type="text/css"><![CDATA[ </mask><style type="text/css"><![CDATA[

Before

Width:  |  Height:  |  Size: 328 KiB

After

Width:  |  Height:  |  Size: 328 KiB

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