d2sequence

package
v0.0.0-...-e815181 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Aug 6, 2023 License: MPL-2.0 Imports: 12 Imported by: 0

Documentation

Index

Constants

View Source
const (
	LIFELINE_Z_INDEX = 1
	SPAN_Z_INDEX     = 2
	GROUP_Z_INDEX    = 3
	MESSAGE_Z_INDEX  = 4
	NOTE_Z_INDEX     = 5
)
View Source
const EDGE_GROUP_LABEL_PADDING = 20.
View Source
const GROUP_CONTAINER_PADDING = 12.
View Source
const HORIZONTAL_PAD = 40.

units of space on the left/right when computing the space required between actors

View Source
const LIFELINE_LABEL_PAD = 5.

pad when the actor has the label placed OutsideMiddleBottom so that the lifeline is not so close to the text

View Source
const LIFELINE_STROKE_DASH int = 6
View Source
const LIFELINE_STROKE_WIDTH int = 2
View Source
const MIN_ACTOR_DISTANCE = 150.
View Source
const MIN_ACTOR_WIDTH = 100.
View Source
const MIN_MESSAGE_DISTANCE = 30.

min vertical distance between messages

View Source
const MIN_SPAN_HEIGHT = 30.

when a span has a single messages

View Source
const SELF_MESSAGE_HORIZONTAL_TRAVEL = 80.
View Source
const SPAN_BASE_WIDTH = 12.

default size

View Source
const SPAN_DEPTH_GROWTH_FACTOR = 8.

as the spans start getting nested, their size grows

View Source
const SPAN_MESSAGE_PAD = 10.
View Source
const VERTICAL_PAD = 40.

units of space on the top/bottom when computing the space required between messages TODO lower

Variables

This section is empty.

Functions

func Layout

func Layout(ctx context.Context, g *d2graph.Graph, layout d2graph.LayoutGraph) error

Layout runs the sequence diagram layout engine on objects of shape sequence_diagram

1. Traverse graph from root, skip objects with shape not `sequence_diagram` 2. Construct a sequence diagram from all descendant objects and edges 3. Remove those objects and edges from the main graph 4. Run layout on sequence diagrams 5. Set the resulting dimensions to the main graph shape 6. Run core layouts (still without sequence diagram innards) 7. Put back sequence diagram innards in correct location

func WithoutSequenceDiagrams

func WithoutSequenceDiagrams(ctx context.Context, g *d2graph.Graph) (map[string]*sequenceDiagram, map[string]int, map[string]int, error)

Types

This section is empty.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL