implement classes
|
|
@ -1,6 +1,7 @@
|
|||
#### Features 🚀
|
||||
|
||||
- Container with constant key near attribute now can have descendant objects and connections [#1071](https://github.com/terrastruct/d2/pull/1071)
|
||||
- Classes are implemented. See [docs](https://d2lang.com/todo). [#772](https://github.com/terrastruct/d2/pull/772)
|
||||
- Multi-board SVG outputs with internal links go to their output paths [#1116](https://github.com/terrastruct/d2/pull/1116)
|
||||
- New grid layout to place nodes in rows and columns [#1122](https://github.com/terrastruct/d2/pull/1122)
|
||||
|
||||
|
|
@ -17,3 +18,7 @@
|
|||
- Namespace transitions so that multiple animated D2 diagrams can exist on the same page [#1123](https://github.com/terrastruct/d2/issues/1123)
|
||||
- Fix a bug in vertical alignment of appendix lines [#1104](https://github.com/terrastruct/d2/issues/1104)
|
||||
- Fix precision difference for sketch mode running on different architectures [#921](https://github.com/terrastruct/d2/issues/921)
|
||||
|
||||
#### Breaking changes
|
||||
|
||||
- `class` and `classes` are now reserved keywords.
|
||||
|
|
|
|||
|
|
@ -116,8 +116,7 @@ func (c *compiler) compileBoardsField(g *d2graph.Graph, ir *d2ir.Map, fieldName
|
|||
}
|
||||
|
||||
type compiler struct {
|
||||
inEdgeGroup bool
|
||||
err d2parser.ParseError
|
||||
err d2parser.ParseError
|
||||
}
|
||||
|
||||
func (c *compiler) errorf(n d2ast.Node, f string, v ...interface{}) {
|
||||
|
|
@ -125,6 +124,18 @@ func (c *compiler) errorf(n d2ast.Node, f string, v ...interface{}) {
|
|||
}
|
||||
|
||||
func (c *compiler) compileMap(obj *d2graph.Object, m *d2ir.Map) {
|
||||
class := m.GetField("class")
|
||||
if class != nil {
|
||||
className := class.Primary()
|
||||
if className == nil {
|
||||
c.errorf(class.LastRef().AST(), "class missing value")
|
||||
} else {
|
||||
classMap := m.GetClassMap(className.String())
|
||||
if classMap != nil {
|
||||
c.compileMap(obj, classMap)
|
||||
}
|
||||
}
|
||||
}
|
||||
shape := m.GetField("shape")
|
||||
if shape != nil {
|
||||
c.compileField(obj, shape)
|
||||
|
|
@ -159,7 +170,27 @@ func (c *compiler) compileField(obj *d2graph.Object, f *d2ir.Field) {
|
|||
return
|
||||
}
|
||||
_, isReserved := d2graph.SimpleReservedKeywords[keyword]
|
||||
if isReserved {
|
||||
if f.Name == "classes" {
|
||||
if f.Map() != nil {
|
||||
if len(f.Map().Edges) > 0 {
|
||||
c.errorf(f.Map().Edges[0].LastRef().AST(), "classes cannot contain an edge")
|
||||
}
|
||||
for _, classesField := range f.Map().Fields {
|
||||
if classesField.Map() == nil {
|
||||
continue
|
||||
}
|
||||
for _, cf := range classesField.Map().Fields {
|
||||
if _, ok := d2graph.ReservedKeywords[cf.Name]; !ok {
|
||||
c.errorf(cf.LastRef().AST(), "%s is an invalid class field, must be reserved keyword", cf.Name)
|
||||
}
|
||||
if cf.Name == "class" {
|
||||
c.errorf(cf.LastRef().AST(), `"class" cannot appear within "classes"`)
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
return
|
||||
} else if isReserved {
|
||||
c.compileReserved(obj.Attributes, f)
|
||||
return
|
||||
} else if f.Name == "style" {
|
||||
|
|
@ -389,6 +420,9 @@ func (c *compiler) compileReserved(attrs *d2graph.Attributes, f *d2ir.Field) {
|
|||
attrs.GridColumns = &d2graph.Scalar{}
|
||||
attrs.GridColumns.Value = scalar.ScalarString()
|
||||
attrs.GridColumns.MapKey = f.LastPrimaryKey()
|
||||
case "class":
|
||||
attrs.Classes = append(attrs.Classes, scalar.ScalarString())
|
||||
case "classes":
|
||||
}
|
||||
|
||||
if attrs.Link != nil && attrs.Tooltip != nil {
|
||||
|
|
@ -480,14 +514,7 @@ func (c *compiler) compileEdge(obj *d2graph.Object, e *d2ir.Edge) {
|
|||
c.compileLabel(edge.Attributes, e)
|
||||
}
|
||||
if e.Map() != nil {
|
||||
for _, f := range e.Map().Fields {
|
||||
_, ok := d2graph.ReservedKeywords[f.Name]
|
||||
if !ok {
|
||||
c.errorf(f.References[0].AST(), `edge map keys must be reserved keywords`)
|
||||
continue
|
||||
}
|
||||
c.compileEdgeField(edge, f)
|
||||
}
|
||||
c.compileEdgeMap(edge, e.Map())
|
||||
}
|
||||
|
||||
edge.Attributes.Label.MapKey = e.LastPrimaryKey()
|
||||
|
|
@ -504,6 +531,29 @@ func (c *compiler) compileEdge(obj *d2graph.Object, e *d2ir.Edge) {
|
|||
}
|
||||
}
|
||||
|
||||
func (c *compiler) compileEdgeMap(edge *d2graph.Edge, m *d2ir.Map) {
|
||||
class := m.GetField("class")
|
||||
if class != nil {
|
||||
className := class.Primary()
|
||||
if className == nil {
|
||||
c.errorf(class.LastRef().AST(), "class missing value")
|
||||
} else {
|
||||
classMap := m.GetClassMap(className.String())
|
||||
if classMap != nil {
|
||||
c.compileEdgeMap(edge, classMap)
|
||||
}
|
||||
}
|
||||
}
|
||||
for _, f := range m.Fields {
|
||||
_, ok := d2graph.ReservedKeywords[f.Name]
|
||||
if !ok {
|
||||
c.errorf(f.References[0].AST(), `edge map keys must be reserved keywords`)
|
||||
continue
|
||||
}
|
||||
c.compileEdgeField(edge, f)
|
||||
}
|
||||
}
|
||||
|
||||
func (c *compiler) compileEdgeField(edge *d2graph.Edge, f *d2ir.Field) {
|
||||
keyword := strings.ToLower(f.Name)
|
||||
_, isStyleReserved := d2graph.StyleKeywords[keyword]
|
||||
|
|
|
|||
|
|
@ -2320,6 +2320,100 @@ d2/testdata/d2compiler/TestCompile/grid_edge.d2:6:2: edges in grid diagrams are
|
|||
expErr: `d2/testdata/d2compiler/TestCompile/grid_nested.d2:2:2: "grid-rows" can only be used on containers with one level of nesting right now. ("hey.d" has nested "invalid descendant")
|
||||
d2/testdata/d2compiler/TestCompile/grid_nested.d2:3:2: "grid-columns" can only be used on containers with one level of nesting right now. ("hey.d" has nested "invalid descendant")`,
|
||||
},
|
||||
{
|
||||
name: "classes",
|
||||
text: `classes: {
|
||||
dragon_ball: {
|
||||
label: ""
|
||||
shape: circle
|
||||
style.fill: orange
|
||||
}
|
||||
path: {
|
||||
label: "then"
|
||||
style.stroke-width: 4
|
||||
}
|
||||
}
|
||||
nostar: { class: dragon_ball }
|
||||
1star: "*" { class: dragon_ball; style.fill: red }
|
||||
2star: { label: "**"; class: dragon_ball }
|
||||
|
||||
nostar -> 1star: { class: path }
|
||||
`,
|
||||
assertions: func(t *testing.T, g *d2graph.Graph) {
|
||||
tassert.Equal(t, 3, len(g.Objects))
|
||||
tassert.Equal(t, "dragon_ball", g.Objects[0].Attributes.Classes[0])
|
||||
tassert.Equal(t, "", g.Objects[0].Attributes.Label.Value)
|
||||
// Class field overrides primary
|
||||
tassert.Equal(t, "", g.Objects[1].Attributes.Label.Value)
|
||||
tassert.Equal(t, "**", g.Objects[2].Attributes.Label.Value)
|
||||
tassert.Equal(t, "orange", g.Objects[0].Attributes.Style.Fill.Value)
|
||||
tassert.Equal(t, "red", g.Objects[1].Attributes.Style.Fill.Value)
|
||||
|
||||
tassert.Equal(t, "4", g.Edges[0].Attributes.Style.StrokeWidth.Value)
|
||||
tassert.Equal(t, "then", g.Edges[0].Attributes.Label.Value)
|
||||
},
|
||||
},
|
||||
{
|
||||
name: "reordered-classes",
|
||||
text: `classes: {
|
||||
x: {
|
||||
shape: circle
|
||||
}
|
||||
}
|
||||
a.class: x
|
||||
classes.x.shape: diamond
|
||||
`,
|
||||
assertions: func(t *testing.T, g *d2graph.Graph) {
|
||||
tassert.Equal(t, 1, len(g.Objects))
|
||||
tassert.Equal(t, "diamond", g.Objects[0].Attributes.Shape.Value)
|
||||
},
|
||||
},
|
||||
{
|
||||
name: "no-class-primary",
|
||||
text: `x.class
|
||||
`,
|
||||
expErr: `d2/testdata/d2compiler/TestCompile/no-class-primary.d2:1:3: class missing value`,
|
||||
},
|
||||
{
|
||||
name: "no-class-inside-classes",
|
||||
text: `classes: {
|
||||
x: {
|
||||
class: y
|
||||
}
|
||||
}
|
||||
`,
|
||||
expErr: `d2/testdata/d2compiler/TestCompile/no-class-inside-classes.d2:3:5: "class" cannot appear within "classes"`,
|
||||
},
|
||||
{
|
||||
// This is okay
|
||||
name: "missing-class",
|
||||
text: `x.class: yo
|
||||
`,
|
||||
},
|
||||
{
|
||||
name: "classes-unreserved",
|
||||
text: `classes: {
|
||||
mango: {
|
||||
seed
|
||||
}
|
||||
}
|
||||
`,
|
||||
expErr: `d2/testdata/d2compiler/TestCompile/classes-unreserved.d2:3:5: seed is an invalid class field, must be reserved keyword`,
|
||||
},
|
||||
{
|
||||
name: "classes-internal-edge",
|
||||
text: `classes: {
|
||||
mango: {
|
||||
width: 100
|
||||
}
|
||||
jango: {
|
||||
height: 100
|
||||
}
|
||||
mango -> jango
|
||||
}
|
||||
`,
|
||||
expErr: `d2/testdata/d2compiler/TestCompile/classes-internal-edge.d2:8:3: classes cannot contain an edge`,
|
||||
},
|
||||
}
|
||||
|
||||
for _, tc := range testCases {
|
||||
|
|
|
|||
|
|
@ -129,6 +129,7 @@ func toShape(obj *d2graph.Object, theme *d2themes.Theme) d2target.Shape {
|
|||
shape := d2target.BaseShape()
|
||||
shape.SetType(obj.Attributes.Shape.Value)
|
||||
shape.ID = obj.AbsID()
|
||||
shape.Classes = obj.Attributes.Classes
|
||||
shape.ZIndex = obj.ZIndex
|
||||
shape.Level = int(obj.Level())
|
||||
shape.Pos = d2target.NewPoint(int(obj.TopLeft.X), int(obj.TopLeft.Y))
|
||||
|
|
@ -194,6 +195,7 @@ func toShape(obj *d2graph.Object, theme *d2themes.Theme) d2target.Shape {
|
|||
func toConnection(edge *d2graph.Edge, theme *d2themes.Theme) d2target.Connection {
|
||||
connection := d2target.BaseConnection()
|
||||
connection.ID = edge.AbsID()
|
||||
connection.Classes = edge.Attributes.Classes
|
||||
connection.ZIndex = edge.ZIndex
|
||||
text := edge.Text()
|
||||
|
||||
|
|
|
|||
|
|
@ -135,6 +135,10 @@ type Attributes struct {
|
|||
|
||||
GridRows *Scalar `json:"gridRows,omitempty"`
|
||||
GridColumns *Scalar `json:"gridColumns,omitempty"`
|
||||
|
||||
// These names are attached to the rendered elements in SVG
|
||||
// so that users can target them however they like outside of D2
|
||||
Classes []string `json:"classes,omitempty"`
|
||||
}
|
||||
|
||||
// TODO references at the root scope should have their Scope set to root graph AST
|
||||
|
|
@ -1556,6 +1560,8 @@ var SimpleReservedKeywords = map[string]struct{}{
|
|||
"left": {},
|
||||
"grid-rows": {},
|
||||
"grid-columns": {},
|
||||
"class": {},
|
||||
"classes": {},
|
||||
}
|
||||
|
||||
// ReservedKeywordHolders are reserved keywords that are meaningless on its own and exist solely to hold a set of reserved keywords
|
||||
|
|
|
|||
|
|
@ -22,12 +22,50 @@ func Compile(ast *d2ast.Map) (*Map, error) {
|
|||
m.initRoot()
|
||||
m.parent.(*Field).References[0].Context.Scope = ast
|
||||
c.compileMap(m, ast)
|
||||
c.compileClasses(m)
|
||||
if !c.err.Empty() {
|
||||
return nil, c.err
|
||||
}
|
||||
return m, nil
|
||||
}
|
||||
|
||||
func (c *compiler) compileClasses(m *Map) {
|
||||
classes := m.GetField("classes")
|
||||
if classes == nil || classes.Map() == nil {
|
||||
return
|
||||
}
|
||||
|
||||
layersField := m.GetField("layers")
|
||||
if layersField == nil {
|
||||
return
|
||||
}
|
||||
layers := layersField.Map()
|
||||
if layers == nil {
|
||||
return
|
||||
}
|
||||
|
||||
for _, lf := range layers.Fields {
|
||||
if lf.Map() == nil || lf.Primary() != nil {
|
||||
c.errorf(lf.References[0].Context.Key, "invalid layer")
|
||||
continue
|
||||
}
|
||||
l := lf.Map()
|
||||
lClasses := l.GetField("classes")
|
||||
|
||||
if lClasses == nil {
|
||||
lClasses = classes.Copy(l).(*Field)
|
||||
l.Fields = append(l.Fields, lClasses)
|
||||
} else {
|
||||
base := classes.Copy(l).(*Field)
|
||||
OverlayMap(base.Map(), lClasses.Map())
|
||||
l.DeleteField("classes")
|
||||
l.Fields = append(l.Fields, base)
|
||||
}
|
||||
|
||||
c.compileClasses(l)
|
||||
}
|
||||
}
|
||||
|
||||
func (c *compiler) overlay(base *Map, f *Field) {
|
||||
if f.Map() == nil || f.Primary() != nil {
|
||||
c.errorf(f.References[0].Context.Key, "invalid %s", NodeBoardKind(f))
|
||||
|
|
@ -103,6 +141,10 @@ func (c *compiler) compileField(dst *Map, kp *d2ast.KeyPath, refctx *RefContext)
|
|||
}
|
||||
}
|
||||
c.compileMap(f.Map(), refctx.Key.Value.Map)
|
||||
switch NodeBoardKind(f) {
|
||||
case BoardScenario, BoardStep:
|
||||
c.compileClasses(f.Map())
|
||||
}
|
||||
} else if refctx.Key.Value.ScalarBox().Unbox() != nil {
|
||||
// If the link is a board, we need to transform it into an absolute path.
|
||||
if f.Name == "link" {
|
||||
|
|
|
|||
|
|
@ -19,6 +19,7 @@ func TestCompile(t *testing.T) {
|
|||
t.Parallel()
|
||||
|
||||
t.Run("fields", testCompileFields)
|
||||
t.Run("classes", testCompileClasses)
|
||||
t.Run("edges", testCompileEdges)
|
||||
t.Run("layers", testCompileLayers)
|
||||
t.Run("scenarios", testCompileScenarios)
|
||||
|
|
@ -101,10 +102,12 @@ func makeScalar(v interface{}) *d2ir.Scalar {
|
|||
bv := &big.Rat{}
|
||||
bv.SetFloat64(v)
|
||||
s.Value = &d2ast.Number{
|
||||
Raw: fmt.Sprint(v),
|
||||
Value: bv,
|
||||
}
|
||||
case int:
|
||||
s.Value = &d2ast.Number{
|
||||
Raw: fmt.Sprint(v),
|
||||
Value: big.NewRat(int64(v), 1),
|
||||
}
|
||||
case string:
|
||||
|
|
@ -503,3 +506,154 @@ steps: {
|
|||
}
|
||||
runa(t, tca)
|
||||
}
|
||||
|
||||
func testCompileClasses(t *testing.T) {
|
||||
t.Parallel()
|
||||
tca := []testCase{
|
||||
{
|
||||
name: "basic",
|
||||
run: func(t testing.TB) {
|
||||
_, err := compile(t, `x
|
||||
classes: {
|
||||
mango: {
|
||||
style.fill: orange
|
||||
}
|
||||
}
|
||||
`)
|
||||
assert.Success(t, err)
|
||||
},
|
||||
},
|
||||
{
|
||||
name: "nonroot",
|
||||
run: func(t testing.TB) {
|
||||
_, err := compile(t, `x: {
|
||||
classes: {
|
||||
mango: {
|
||||
style.fill: orange
|
||||
}
|
||||
}
|
||||
}
|
||||
`)
|
||||
assert.ErrorString(t, err, `TestCompile/classes/nonroot.d2:2:3: classes is only allowed at a board root`)
|
||||
},
|
||||
},
|
||||
{
|
||||
name: "merge",
|
||||
run: func(t testing.TB) {
|
||||
m, err := compile(t, `classes: {
|
||||
mango: {
|
||||
style.fill: orange
|
||||
width: 10
|
||||
}
|
||||
}
|
||||
layers: {
|
||||
hawaii: {
|
||||
classes: {
|
||||
mango: {
|
||||
width: 9000
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
`)
|
||||
assert.Success(t, err)
|
||||
assertQuery(t, m, 3, 0, nil, "layers.hawaii.classes.mango")
|
||||
assertQuery(t, m, 0, 0, "orange", "layers.hawaii.classes.mango.style.fill")
|
||||
assertQuery(t, m, 0, 0, 9000, "layers.hawaii.classes.mango.width")
|
||||
},
|
||||
},
|
||||
{
|
||||
name: "nested",
|
||||
run: func(t testing.TB) {
|
||||
m, err := compile(t, `classes: {
|
||||
mango: {
|
||||
style.fill: orange
|
||||
}
|
||||
}
|
||||
layers: {
|
||||
hawaii: {
|
||||
layers: {
|
||||
maui: {
|
||||
x
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
`)
|
||||
assert.Success(t, err)
|
||||
assertQuery(t, m, 3, 0, nil, "layers.hawaii.classes")
|
||||
assertQuery(t, m, 3, 0, nil, "layers.hawaii.layers.maui.classes")
|
||||
},
|
||||
},
|
||||
{
|
||||
name: "inherited",
|
||||
run: func(t testing.TB) {
|
||||
m, err := compile(t, `classes: {
|
||||
mango: {
|
||||
style.fill: orange
|
||||
}
|
||||
}
|
||||
scenarios: {
|
||||
hawaii: {
|
||||
steps: {
|
||||
1: {
|
||||
classes: {
|
||||
cherry: {
|
||||
style.fill: red
|
||||
}
|
||||
}
|
||||
x
|
||||
}
|
||||
2: {
|
||||
y
|
||||
}
|
||||
3: {
|
||||
classes: {
|
||||
cherry: {
|
||||
style.fill: blue
|
||||
}
|
||||
}
|
||||
y
|
||||
}
|
||||
4: {
|
||||
layers: {
|
||||
deep: {
|
||||
x
|
||||
}
|
||||
}
|
||||
x
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
`)
|
||||
assert.Success(t, err)
|
||||
assertQuery(t, m, 3, 0, nil, "scenarios.hawaii.classes")
|
||||
assertQuery(t, m, 2, 0, nil, "scenarios.hawaii.steps.2.classes.mango")
|
||||
assertQuery(t, m, 2, 0, nil, "scenarios.hawaii.steps.2.classes.cherry")
|
||||
assertQuery(t, m, 0, 0, "blue", "scenarios.hawaii.steps.4.classes.cherry.style.fill")
|
||||
assertQuery(t, m, 0, 0, "blue", "scenarios.hawaii.steps.4.layers.deep.classes.cherry.style.fill")
|
||||
},
|
||||
},
|
||||
{
|
||||
name: "layer-modify",
|
||||
run: func(t testing.TB) {
|
||||
m, err := compile(t, `classes: {
|
||||
orb: {
|
||||
style.fill: yellow
|
||||
}
|
||||
}
|
||||
layers: {
|
||||
x: {
|
||||
classes.orb.style.stroke: red
|
||||
}
|
||||
}
|
||||
`)
|
||||
assert.Success(t, err)
|
||||
assertQuery(t, m, 0, 0, "yellow", "layers.x.classes.orb.style.fill")
|
||||
assertQuery(t, m, 0, 0, "red", "layers.x.classes.orb.style.stroke")
|
||||
},
|
||||
},
|
||||
}
|
||||
runa(t, tca)
|
||||
}
|
||||
|
|
|
|||
23
d2ir/d2ir.go
|
|
@ -601,6 +601,18 @@ func (m *Map) EdgeCountRecursive() int {
|
|||
return acc
|
||||
}
|
||||
|
||||
func (m *Map) GetClassMap(name string) *Map {
|
||||
root := RootMap(m)
|
||||
classes := root.Map().GetField("classes")
|
||||
if classes != nil && classes.Map() != nil {
|
||||
class := classes.Map().GetField(name)
|
||||
if class != nil && class.Map() != nil {
|
||||
return class.Map()
|
||||
}
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
func (m *Map) GetField(ida ...string) *Field {
|
||||
for len(ida) > 0 && ida[0] == "_" {
|
||||
m = ParentMap(m)
|
||||
|
|
@ -663,6 +675,10 @@ func (m *Map) ensureField(i int, kp *d2ast.KeyPath, refctx *RefContext) (*Field,
|
|||
return nil, d2parser.Errorf(kp.Path[i].Unbox(), `parent "_" can only be used in the beginning of paths, e.g. "_.x"`)
|
||||
}
|
||||
|
||||
if head == "classes" && NodeBoardKind(m) == "" {
|
||||
return nil, d2parser.Errorf(kp.Path[i].Unbox(), "%s is only allowed at a board root", head)
|
||||
}
|
||||
|
||||
if findBoardKeyword(head) != -1 && NodeBoardKind(m) == "" {
|
||||
return nil, d2parser.Errorf(kp.Path[i].Unbox(), "%s is only allowed at a board root", head)
|
||||
}
|
||||
|
|
@ -935,6 +951,13 @@ func (m *Map) appendFieldReferences(i int, kp *d2ast.KeyPath, refctx *RefContext
|
|||
}
|
||||
}
|
||||
|
||||
func RootMap(m *Map) *Map {
|
||||
if m.Root() {
|
||||
return m
|
||||
}
|
||||
return RootMap(ParentMap(m))
|
||||
}
|
||||
|
||||
func ParentMap(n Node) *Map {
|
||||
for {
|
||||
n = n.Parent()
|
||||
|
|
|
|||
|
|
@ -515,7 +515,12 @@ func drawConnection(writer io.Writer, labelMaskID string, connection d2target.Co
|
|||
if connection.Opacity != 1.0 {
|
||||
opacityStyle = fmt.Sprintf(" style='opacity:%f'", connection.Opacity)
|
||||
}
|
||||
fmt.Fprintf(writer, `<g id="%s"%s>`, svg.EscapeText(connection.ID), opacityStyle)
|
||||
|
||||
classStr := ""
|
||||
if len(connection.Classes) > 0 {
|
||||
classStr = fmt.Sprintf(` class="%s"`, strings.Join(connection.Classes, " "))
|
||||
}
|
||||
fmt.Fprintf(writer, `<g id="%s"%s%s>`, svg.EscapeText(connection.ID), opacityStyle, classStr)
|
||||
var markerStart string
|
||||
if connection.SrcArrow != d2target.NoArrowhead {
|
||||
id := arrowheadMarkerID(false, connection)
|
||||
|
|
@ -919,7 +924,11 @@ func drawShape(writer io.Writer, diagramHash string, targetShape d2target.Shape,
|
|||
if targetShape.BorderRadius != 0 && (targetShape.Type == d2target.ShapeClass || targetShape.Type == d2target.ShapeSQLTable) {
|
||||
fmt.Fprint(writer, clipPathForBorderRadius(diagramHash, targetShape))
|
||||
}
|
||||
fmt.Fprintf(writer, `<g id="%s"%s>`, svg.EscapeText(targetShape.ID), opacityStyle)
|
||||
classStr := ""
|
||||
if len(targetShape.Classes) > 0 {
|
||||
classStr = fmt.Sprintf(` class="%s"`, strings.Join(targetShape.Classes, " "))
|
||||
}
|
||||
fmt.Fprintf(writer, `<g id="%s"%s%s>`, svg.EscapeText(targetShape.ID), opacityStyle, classStr)
|
||||
tl := geo.NewPoint(float64(targetShape.Pos.X), float64(targetShape.Pos.Y))
|
||||
width := float64(targetShape.Width)
|
||||
height := float64(targetShape.Height)
|
||||
|
|
|
|||
|
|
@ -305,6 +305,8 @@ type Shape struct {
|
|||
ID string `json:"id"`
|
||||
Type string `json:"type"`
|
||||
|
||||
Classes []string `json:"classes,omitempty"`
|
||||
|
||||
Pos Point `json:"pos"`
|
||||
Width int `json:"width"`
|
||||
Height int `json:"height"`
|
||||
|
|
@ -425,6 +427,8 @@ func BaseShape() *Shape {
|
|||
type Connection struct {
|
||||
ID string `json:"id"`
|
||||
|
||||
Classes []string `json:"classes,omitempty"`
|
||||
|
||||
Src string `json:"src"`
|
||||
SrcArrow Arrowhead `json:"srcArrow"`
|
||||
SrcLabel string `json:"srcLabel"`
|
||||
|
|
|
|||
|
|
@ -271,9 +271,9 @@ m6_desc -> queue.M6
|
|||
name: "unnamed_class_table_code",
|
||||
script: `
|
||||
|
||||
class -> users -> code
|
||||
class2 -> users -> code
|
||||
|
||||
class: "" {
|
||||
class2: "" {
|
||||
shape: class
|
||||
-num: int
|
||||
-timeout: int
|
||||
|
|
@ -318,7 +318,7 @@ ico: {
|
|||
name: "only_header_class_table",
|
||||
script: `
|
||||
|
||||
class: RefreshAuthorizationPolicyProtocolServerSideTranslatorProtocolBuffer {
|
||||
class2: RefreshAuthorizationPolicyProtocolServerSideTranslatorProtocolBuffer {
|
||||
shape: class
|
||||
}
|
||||
|
||||
|
|
@ -331,7 +331,7 @@ table with short col: RefreshAuthorizationPolicyCache {
|
|||
ok
|
||||
}
|
||||
|
||||
class -> table -> table with short col
|
||||
class2 -> table -> table with short col
|
||||
`,
|
||||
},
|
||||
{
|
||||
|
|
|
|||
|
|
@ -2000,9 +2000,9 @@ x -> y
|
|||
name: "unnamed_only_width",
|
||||
script: `
|
||||
|
||||
class -> users -> code -> package -> no width
|
||||
class2 -> users -> code -> package -> no width
|
||||
|
||||
class: "" {
|
||||
class2: "" {
|
||||
shape: class
|
||||
-num: int
|
||||
-timeout: int
|
||||
|
|
@ -2032,7 +2032,7 @@ package: "" { shape: package }
|
|||
no width: ""
|
||||
|
||||
|
||||
class.width: 512
|
||||
class2.width: 512
|
||||
users.width: 512
|
||||
code.width: 512
|
||||
package.width: 512
|
||||
|
|
@ -2042,9 +2042,9 @@ package.width: 512
|
|||
name: "unnamed_only_height",
|
||||
script: `
|
||||
|
||||
class -> users -> code -> package -> no height
|
||||
class2 -> users -> code -> package -> no height
|
||||
|
||||
class: "" {
|
||||
class2: "" {
|
||||
shape: class
|
||||
-num: int
|
||||
-timeout: int
|
||||
|
|
@ -2074,7 +2074,7 @@ package: "" { shape: package }
|
|||
no height: ""
|
||||
|
||||
|
||||
class.height: 512
|
||||
class2.height: 512
|
||||
users.height: 512
|
||||
code.height: 512
|
||||
package.height: 512
|
||||
|
|
@ -2369,6 +2369,29 @@ y: {
|
|||
z: {
|
||||
near: center-left
|
||||
}
|
||||
`,
|
||||
},
|
||||
{
|
||||
name: "classes",
|
||||
script: `classes: {
|
||||
dragon_ball: {
|
||||
label: ""
|
||||
shape: circle
|
||||
style.fill: orange
|
||||
style.stroke-width: 0
|
||||
width: 50
|
||||
}
|
||||
path: {
|
||||
label: "then"
|
||||
style.stroke-width: 4
|
||||
}
|
||||
}
|
||||
nostar: { class: dragon_ball }
|
||||
1star: { label: "*"; class: dragon_ball }
|
||||
2star: { label: "**"; class: dragon_ball }
|
||||
|
||||
nostar -> 1star: { class: path }
|
||||
1star -> 2star: { class: path }
|
||||
`,
|
||||
},
|
||||
{
|
||||
|
|
|
|||
6
e2etests/testdata/regression/only_header_class_table/dagre/board.exp.json
generated
vendored
|
|
@ -4,7 +4,7 @@
|
|||
"fontFamily": "SourceSansPro",
|
||||
"shapes": [
|
||||
{
|
||||
"id": "class",
|
||||
"id": "class2",
|
||||
"type": "class",
|
||||
"pos": {
|
||||
"x": 0,
|
||||
|
|
@ -164,8 +164,8 @@
|
|||
],
|
||||
"connections": [
|
||||
{
|
||||
"id": "(class -> table)[0]",
|
||||
"src": "class",
|
||||
"id": "(class2 -> table)[0]",
|
||||
"src": "class2",
|
||||
"srcArrow": "none",
|
||||
"srcLabel": "",
|
||||
"dst": "table",
|
||||
|
|
|
|||
|
Before Width: | Height: | Size: 18 KiB After Width: | Height: | Size: 18 KiB |
6
e2etests/testdata/regression/only_header_class_table/elk/board.exp.json
generated
vendored
|
|
@ -4,7 +4,7 @@
|
|||
"fontFamily": "SourceSansPro",
|
||||
"shapes": [
|
||||
{
|
||||
"id": "class",
|
||||
"id": "class2",
|
||||
"type": "class",
|
||||
"pos": {
|
||||
"x": 12,
|
||||
|
|
@ -164,8 +164,8 @@
|
|||
],
|
||||
"connections": [
|
||||
{
|
||||
"id": "(class -> table)[0]",
|
||||
"src": "class",
|
||||
"id": "(class2 -> table)[0]",
|
||||
"src": "class2",
|
||||
"srcArrow": "none",
|
||||
"srcLabel": "",
|
||||
"dst": "table",
|
||||
|
|
|
|||
|
Before Width: | Height: | Size: 18 KiB After Width: | Height: | Size: 18 KiB |
6
e2etests/testdata/regression/unnamed_class_table_code/dagre/board.exp.json
generated
vendored
|
|
@ -4,7 +4,7 @@
|
|||
"fontFamily": "SourceSansPro",
|
||||
"shapes": [
|
||||
{
|
||||
"id": "class",
|
||||
"id": "class2",
|
||||
"type": "class",
|
||||
"pos": {
|
||||
"x": 0,
|
||||
|
|
@ -305,8 +305,8 @@
|
|||
],
|
||||
"connections": [
|
||||
{
|
||||
"id": "(class -> users)[0]",
|
||||
"src": "class",
|
||||
"id": "(class2 -> users)[0]",
|
||||
"src": "class2",
|
||||
"srcArrow": "none",
|
||||
"srcLabel": "",
|
||||
"dst": "users",
|
||||
|
|
|
|||
|
Before Width: | Height: | Size: 32 KiB After Width: | Height: | Size: 32 KiB |
6
e2etests/testdata/regression/unnamed_class_table_code/elk/board.exp.json
generated
vendored
|
|
@ -4,7 +4,7 @@
|
|||
"fontFamily": "SourceSansPro",
|
||||
"shapes": [
|
||||
{
|
||||
"id": "class",
|
||||
"id": "class2",
|
||||
"type": "class",
|
||||
"pos": {
|
||||
"x": 12,
|
||||
|
|
@ -305,8 +305,8 @@
|
|||
],
|
||||
"connections": [
|
||||
{
|
||||
"id": "(class -> users)[0]",
|
||||
"src": "class",
|
||||
"id": "(class2 -> users)[0]",
|
||||
"src": "class2",
|
||||
"srcArrow": "none",
|
||||
"srcLabel": "",
|
||||
"dst": "users",
|
||||
|
|
|
|||
|
Before Width: | Height: | Size: 32 KiB After Width: | Height: | Size: 32 KiB |
284
e2etests/testdata/stable/classes/dagre/board.exp.json
generated
vendored
Normal file
|
|
@ -0,0 +1,284 @@
|
|||
{
|
||||
"name": "",
|
||||
"isFolderOnly": false,
|
||||
"fontFamily": "SourceSansPro",
|
||||
"shapes": [
|
||||
{
|
||||
"id": "nostar",
|
||||
"type": "oval",
|
||||
"classes": [
|
||||
"dragon_ball"
|
||||
],
|
||||
"pos": {
|
||||
"x": 1,
|
||||
"y": 0
|
||||
},
|
||||
"width": 50,
|
||||
"height": 50,
|
||||
"opacity": 1,
|
||||
"strokeDash": 0,
|
||||
"strokeWidth": 0,
|
||||
"borderRadius": 0,
|
||||
"fill": "orange",
|
||||
"stroke": "B1",
|
||||
"shadow": false,
|
||||
"3d": false,
|
||||
"multiple": false,
|
||||
"double-border": false,
|
||||
"tooltip": "",
|
||||
"link": "",
|
||||
"icon": null,
|
||||
"iconPosition": "",
|
||||
"blend": false,
|
||||
"fields": null,
|
||||
"methods": null,
|
||||
"columns": null,
|
||||
"label": "",
|
||||
"fontSize": 16,
|
||||
"fontFamily": "DEFAULT",
|
||||
"language": "",
|
||||
"color": "N1",
|
||||
"italic": false,
|
||||
"bold": true,
|
||||
"underline": false,
|
||||
"labelWidth": 0,
|
||||
"labelHeight": 0,
|
||||
"zIndex": 0,
|
||||
"level": 1
|
||||
},
|
||||
{
|
||||
"id": "1star",
|
||||
"type": "oval",
|
||||
"classes": [
|
||||
"dragon_ball"
|
||||
],
|
||||
"pos": {
|
||||
"x": 1,
|
||||
"y": 171
|
||||
},
|
||||
"width": 50,
|
||||
"height": 50,
|
||||
"opacity": 1,
|
||||
"strokeDash": 0,
|
||||
"strokeWidth": 0,
|
||||
"borderRadius": 0,
|
||||
"fill": "orange",
|
||||
"stroke": "B1",
|
||||
"shadow": false,
|
||||
"3d": false,
|
||||
"multiple": false,
|
||||
"double-border": false,
|
||||
"tooltip": "",
|
||||
"link": "",
|
||||
"icon": null,
|
||||
"iconPosition": "",
|
||||
"blend": false,
|
||||
"fields": null,
|
||||
"methods": null,
|
||||
"columns": null,
|
||||
"label": "*",
|
||||
"fontSize": 16,
|
||||
"fontFamily": "DEFAULT",
|
||||
"language": "",
|
||||
"color": "N1",
|
||||
"italic": false,
|
||||
"bold": true,
|
||||
"underline": false,
|
||||
"labelWidth": 7,
|
||||
"labelHeight": 21,
|
||||
"labelPosition": "INSIDE_MIDDLE_CENTER",
|
||||
"zIndex": 0,
|
||||
"level": 1
|
||||
},
|
||||
{
|
||||
"id": "2star",
|
||||
"type": "oval",
|
||||
"classes": [
|
||||
"dragon_ball"
|
||||
],
|
||||
"pos": {
|
||||
"x": 0,
|
||||
"y": 342
|
||||
},
|
||||
"width": 52,
|
||||
"height": 52,
|
||||
"opacity": 1,
|
||||
"strokeDash": 0,
|
||||
"strokeWidth": 0,
|
||||
"borderRadius": 0,
|
||||
"fill": "orange",
|
||||
"stroke": "B1",
|
||||
"shadow": false,
|
||||
"3d": false,
|
||||
"multiple": false,
|
||||
"double-border": false,
|
||||
"tooltip": "",
|
||||
"link": "",
|
||||
"icon": null,
|
||||
"iconPosition": "",
|
||||
"blend": false,
|
||||
"fields": null,
|
||||
"methods": null,
|
||||
"columns": null,
|
||||
"label": "**",
|
||||
"fontSize": 16,
|
||||
"fontFamily": "DEFAULT",
|
||||
"language": "",
|
||||
"color": "N1",
|
||||
"italic": false,
|
||||
"bold": true,
|
||||
"underline": false,
|
||||
"labelWidth": 15,
|
||||
"labelHeight": 21,
|
||||
"labelPosition": "INSIDE_MIDDLE_CENTER",
|
||||
"zIndex": 0,
|
||||
"level": 1
|
||||
}
|
||||
],
|
||||
"connections": [
|
||||
{
|
||||
"id": "(nostar -> 1star)[0]",
|
||||
"classes": [
|
||||
"path"
|
||||
],
|
||||
"src": "nostar",
|
||||
"srcArrow": "none",
|
||||
"srcLabel": "",
|
||||
"dst": "1star",
|
||||
"dstArrow": "triangle",
|
||||
"dstLabel": "",
|
||||
"opacity": 1,
|
||||
"strokeDash": 0,
|
||||
"strokeWidth": 4,
|
||||
"stroke": "B1",
|
||||
"borderRadius": 10,
|
||||
"label": "then",
|
||||
"fontSize": 16,
|
||||
"fontFamily": "DEFAULT",
|
||||
"language": "",
|
||||
"color": "N2",
|
||||
"italic": true,
|
||||
"bold": false,
|
||||
"underline": false,
|
||||
"labelWidth": 30,
|
||||
"labelHeight": 21,
|
||||
"labelPosition": "INSIDE_MIDDLE_CENTER",
|
||||
"labelPercentage": 0,
|
||||
"route": [
|
||||
{
|
||||
"x": 26,
|
||||
"y": 50
|
||||
},
|
||||
{
|
||||
"x": 26,
|
||||
"y": 98.4
|
||||
},
|
||||
{
|
||||
"x": 26,
|
||||
"y": 122.6
|
||||
},
|
||||
{
|
||||
"x": 26,
|
||||
"y": 171
|
||||
}
|
||||
],
|
||||
"isCurve": true,
|
||||
"animated": false,
|
||||
"tooltip": "",
|
||||
"icon": null,
|
||||
"zIndex": 0
|
||||
},
|
||||
{
|
||||
"id": "(1star -> 2star)[0]",
|
||||
"classes": [
|
||||
"path"
|
||||
],
|
||||
"src": "1star",
|
||||
"srcArrow": "none",
|
||||
"srcLabel": "",
|
||||
"dst": "2star",
|
||||
"dstArrow": "triangle",
|
||||
"dstLabel": "",
|
||||
"opacity": 1,
|
||||
"strokeDash": 0,
|
||||
"strokeWidth": 4,
|
||||
"stroke": "B1",
|
||||
"borderRadius": 10,
|
||||
"label": "then",
|
||||
"fontSize": 16,
|
||||
"fontFamily": "DEFAULT",
|
||||
"language": "",
|
||||
"color": "N2",
|
||||
"italic": true,
|
||||
"bold": false,
|
||||
"underline": false,
|
||||
"labelWidth": 30,
|
||||
"labelHeight": 21,
|
||||
"labelPosition": "INSIDE_MIDDLE_CENTER",
|
||||
"labelPercentage": 0,
|
||||
"route": [
|
||||
{
|
||||
"x": 26,
|
||||
"y": 221
|
||||
},
|
||||
{
|
||||
"x": 26,
|
||||
"y": 269.4
|
||||
},
|
||||
{
|
||||
"x": 26,
|
||||
"y": 293.6
|
||||
},
|
||||
{
|
||||
"x": 26,
|
||||
"y": 342
|
||||
}
|
||||
],
|
||||
"isCurve": true,
|
||||
"animated": false,
|
||||
"tooltip": "",
|
||||
"icon": null,
|
||||
"zIndex": 0
|
||||
}
|
||||
],
|
||||
"root": {
|
||||
"id": "",
|
||||
"type": "",
|
||||
"pos": {
|
||||
"x": 0,
|
||||
"y": 0
|
||||
},
|
||||
"width": 0,
|
||||
"height": 0,
|
||||
"opacity": 0,
|
||||
"strokeDash": 0,
|
||||
"strokeWidth": 0,
|
||||
"borderRadius": 0,
|
||||
"fill": "N7",
|
||||
"stroke": "",
|
||||
"shadow": false,
|
||||
"3d": false,
|
||||
"multiple": false,
|
||||
"double-border": false,
|
||||
"tooltip": "",
|
||||
"link": "",
|
||||
"icon": null,
|
||||
"iconPosition": "",
|
||||
"blend": false,
|
||||
"fields": null,
|
||||
"methods": null,
|
||||
"columns": null,
|
||||
"label": "",
|
||||
"fontSize": 0,
|
||||
"fontFamily": "",
|
||||
"language": "",
|
||||
"color": "",
|
||||
"italic": false,
|
||||
"bold": false,
|
||||
"underline": false,
|
||||
"labelWidth": 0,
|
||||
"labelHeight": 0,
|
||||
"zIndex": 0,
|
||||
"level": 0
|
||||
}
|
||||
}
|
||||
103
e2etests/testdata/stable/classes/dagre/sketch.exp.svg
vendored
Normal file
|
|
@ -0,0 +1,103 @@
|
|||
<?xml version="1.0" encoding="utf-8"?><svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" d2Version="v0.3.0-HEAD" preserveAspectRatio="xMinYMin meet" viewBox="0 0 52 394"><svg id="d2-svg" class="d2-2376789252" width="52" height="394" viewBox="0 0 52 394"><rect x="0.000000" y="0.000000" width="52.000000" height="394.000000" rx="0.000000" class=" fill-N7" stroke-width="0" /><style type="text/css"><![CDATA[
|
||||
.d2-2376789252 .text-bold {
|
||||
font-family: "d2-2376789252-font-bold";
|
||||
}
|
||||
@font-face {
|
||||
font-family: d2-2376789252-font-bold;
|
||||
src: url("data:application/font-woff;base64,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");
|
||||
}
|
||||
.d2-2376789252 .text-italic {
|
||||
font-family: "d2-2376789252-font-italic";
|
||||
}
|
||||
@font-face {
|
||||
font-family: d2-2376789252-font-italic;
|
||||
src: url("data:application/font-woff;base64,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");
|
||||
}]]></style><style type="text/css"><![CDATA[.shape {
|
||||
shape-rendering: geometricPrecision;
|
||||
stroke-linejoin: round;
|
||||
}
|
||||
.connection {
|
||||
stroke-linecap: round;
|
||||
stroke-linejoin: round;
|
||||
}
|
||||
.blend {
|
||||
mix-blend-mode: multiply;
|
||||
opacity: 0.5;
|
||||
}
|
||||
|
||||
.d2-2376789252 .fill-N1{fill:#0A0F25;}
|
||||
.d2-2376789252 .fill-N2{fill:#676C7E;}
|
||||
.d2-2376789252 .fill-N3{fill:#9499AB;}
|
||||
.d2-2376789252 .fill-N4{fill:#CFD2DD;}
|
||||
.d2-2376789252 .fill-N5{fill:#DEE1EB;}
|
||||
.d2-2376789252 .fill-N6{fill:#EEF1F8;}
|
||||
.d2-2376789252 .fill-N7{fill:#FFFFFF;}
|
||||
.d2-2376789252 .fill-B1{fill:#0D32B2;}
|
||||
.d2-2376789252 .fill-B2{fill:#0D32B2;}
|
||||
.d2-2376789252 .fill-B3{fill:#E3E9FD;}
|
||||
.d2-2376789252 .fill-B4{fill:#E3E9FD;}
|
||||
.d2-2376789252 .fill-B5{fill:#EDF0FD;}
|
||||
.d2-2376789252 .fill-B6{fill:#F7F8FE;}
|
||||
.d2-2376789252 .fill-AA2{fill:#4A6FF3;}
|
||||
.d2-2376789252 .fill-AA4{fill:#EDF0FD;}
|
||||
.d2-2376789252 .fill-AA5{fill:#F7F8FE;}
|
||||
.d2-2376789252 .fill-AB4{fill:#EDF0FD;}
|
||||
.d2-2376789252 .fill-AB5{fill:#F7F8FE;}
|
||||
.d2-2376789252 .stroke-N1{stroke:#0A0F25;}
|
||||
.d2-2376789252 .stroke-N2{stroke:#676C7E;}
|
||||
.d2-2376789252 .stroke-N3{stroke:#9499AB;}
|
||||
.d2-2376789252 .stroke-N4{stroke:#CFD2DD;}
|
||||
.d2-2376789252 .stroke-N5{stroke:#DEE1EB;}
|
||||
.d2-2376789252 .stroke-N6{stroke:#EEF1F8;}
|
||||
.d2-2376789252 .stroke-N7{stroke:#FFFFFF;}
|
||||
.d2-2376789252 .stroke-B1{stroke:#0D32B2;}
|
||||
.d2-2376789252 .stroke-B2{stroke:#0D32B2;}
|
||||
.d2-2376789252 .stroke-B3{stroke:#E3E9FD;}
|
||||
.d2-2376789252 .stroke-B4{stroke:#E3E9FD;}
|
||||
.d2-2376789252 .stroke-B5{stroke:#EDF0FD;}
|
||||
.d2-2376789252 .stroke-B6{stroke:#F7F8FE;}
|
||||
.d2-2376789252 .stroke-AA2{stroke:#4A6FF3;}
|
||||
.d2-2376789252 .stroke-AA4{stroke:#EDF0FD;}
|
||||
.d2-2376789252 .stroke-AA5{stroke:#F7F8FE;}
|
||||
.d2-2376789252 .stroke-AB4{stroke:#EDF0FD;}
|
||||
.d2-2376789252 .stroke-AB5{stroke:#F7F8FE;}
|
||||
.d2-2376789252 .background-color-N1{background-color:#0A0F25;}
|
||||
.d2-2376789252 .background-color-N2{background-color:#676C7E;}
|
||||
.d2-2376789252 .background-color-N3{background-color:#9499AB;}
|
||||
.d2-2376789252 .background-color-N4{background-color:#CFD2DD;}
|
||||
.d2-2376789252 .background-color-N5{background-color:#DEE1EB;}
|
||||
.d2-2376789252 .background-color-N6{background-color:#EEF1F8;}
|
||||
.d2-2376789252 .background-color-N7{background-color:#FFFFFF;}
|
||||
.d2-2376789252 .background-color-B1{background-color:#0D32B2;}
|
||||
.d2-2376789252 .background-color-B2{background-color:#0D32B2;}
|
||||
.d2-2376789252 .background-color-B3{background-color:#E3E9FD;}
|
||||
.d2-2376789252 .background-color-B4{background-color:#E3E9FD;}
|
||||
.d2-2376789252 .background-color-B5{background-color:#EDF0FD;}
|
||||
.d2-2376789252 .background-color-B6{background-color:#F7F8FE;}
|
||||
.d2-2376789252 .background-color-AA2{background-color:#4A6FF3;}
|
||||
.d2-2376789252 .background-color-AA4{background-color:#EDF0FD;}
|
||||
.d2-2376789252 .background-color-AA5{background-color:#F7F8FE;}
|
||||
.d2-2376789252 .background-color-AB4{background-color:#EDF0FD;}
|
||||
.d2-2376789252 .background-color-AB5{background-color:#F7F8FE;}
|
||||
.d2-2376789252 .color-N1{color:#0A0F25;}
|
||||
.d2-2376789252 .color-N2{color:#676C7E;}
|
||||
.d2-2376789252 .color-N3{color:#9499AB;}
|
||||
.d2-2376789252 .color-N4{color:#CFD2DD;}
|
||||
.d2-2376789252 .color-N5{color:#DEE1EB;}
|
||||
.d2-2376789252 .color-N6{color:#EEF1F8;}
|
||||
.d2-2376789252 .color-N7{color:#FFFFFF;}
|
||||
.d2-2376789252 .color-B1{color:#0D32B2;}
|
||||
.d2-2376789252 .color-B2{color:#0D32B2;}
|
||||
.d2-2376789252 .color-B3{color:#E3E9FD;}
|
||||
.d2-2376789252 .color-B4{color:#E3E9FD;}
|
||||
.d2-2376789252 .color-B5{color:#EDF0FD;}
|
||||
.d2-2376789252 .color-B6{color:#F7F8FE;}
|
||||
.d2-2376789252 .color-AA2{color:#4A6FF3;}
|
||||
.d2-2376789252 .color-AA4{color:#EDF0FD;}
|
||||
.d2-2376789252 .color-AA5{color:#F7F8FE;}
|
||||
.d2-2376789252 .color-AB4{color:#EDF0FD;}
|
||||
.d2-2376789252 .color-AB5{color:#F7F8FE;}.appendix text.text{fill:#0A0F25}.md{--color-fg-default:#0A0F25;--color-fg-muted:#676C7E;--color-fg-subtle:#9499AB;--color-canvas-default:#FFFFFF;--color-canvas-subtle:#EEF1F8;--color-border-default:#0D32B2;--color-border-muted:#0D32B2;--color-neutral-muted:#EEF1F8;--color-accent-fg:#0D32B2;--color-accent-emphasis:#0D32B2;--color-attention-subtle:#676C7E;--color-danger-fg:red;}.sketch-overlay-B1{fill:url(#streaks-darker);mix-blend-mode:lighten}.sketch-overlay-B2{fill:url(#streaks-darker);mix-blend-mode:lighten}.sketch-overlay-B3{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-B4{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-B5{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-B6{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-AA2{fill:url(#streaks-dark);mix-blend-mode:overlay}.sketch-overlay-AA4{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-AA5{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-AB4{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-AB5{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-N1{fill:url(#streaks-darker);mix-blend-mode:lighten}.sketch-overlay-N2{fill:url(#streaks-dark);mix-blend-mode:overlay}.sketch-overlay-N3{fill:url(#streaks-normal);mix-blend-mode:color-burn}.sketch-overlay-N4{fill:url(#streaks-normal);mix-blend-mode:color-burn}.sketch-overlay-N5{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-N6{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-N7{fill:url(#streaks-bright);mix-blend-mode:darken}.light-code{display: block}.dark-code{display: none}]]></style><g id="nostar" class="dragon_ball"><g class="shape" ><ellipse rx="25.000000" ry="25.000000" cx="26.000000" cy="25.000000" fill="orange" class="shape stroke-B1" style="stroke-width:0;" /></g></g><g id="1star" class="dragon_ball"><g class="shape" ><ellipse rx="25.000000" ry="25.000000" cx="26.000000" cy="196.000000" fill="orange" class="shape stroke-B1" style="stroke-width:0;" /></g><text x="26.000000" y="201.500000" class="text-bold fill-N1" style="text-anchor:middle;font-size:16px">*</text></g><g id="2star" class="dragon_ball"><g class="shape" ><ellipse rx="26.000000" ry="26.000000" cx="26.000000" cy="368.000000" fill="orange" class="shape stroke-B1" style="stroke-width:0;" /></g><text x="26.000000" y="373.500000" class="text-bold fill-N1" style="text-anchor:middle;font-size:16px">**</text></g><g id="(nostar -> 1star)[0]" class="path"><marker id="mk-3519660172" markerWidth="16.000000" markerHeight="20.000000" refX="10.000000" refY="10.000000" viewBox="0.000000 0.000000 16.000000 20.000000" orient="auto" markerUnits="userSpaceOnUse"> <polygon points="0.000000,0.000000 16.000000,10.000000 0.000000,20.000000" class="connection fill-B1" stroke-width="4" /> </marker><path d="M 26.000000 52.000000 C 26.000000 98.400000 26.000000 122.600000 26.000000 165.000000" fill="none" class="connection stroke-B1" style="stroke-width:4;" marker-end="url(#mk-3519660172)" mask="url(#d2-2376789252)" /><text x="26.000000" y="116.000000" class="text-italic fill-N2" style="text-anchor:middle;font-size:16px">then</text></g><g id="(1star -> 2star)[0]" class="path"><path d="M 26.000000 223.000000 C 26.000000 269.400000 26.000000 293.600000 26.000000 336.000000" fill="none" class="connection stroke-B1" style="stroke-width:4;" marker-end="url(#mk-3519660172)" mask="url(#d2-2376789252)" /><text x="26.000000" y="287.000000" class="text-italic fill-N2" style="text-anchor:middle;font-size:16px">then</text></g><mask id="d2-2376789252" maskUnits="userSpaceOnUse" x="0" y="0" width="52" height="394">
|
||||
<rect x="0" y="0" width="52" height="394" fill="white"></rect>
|
||||
<rect x="11.000000" y="100.000000" width="30" height="21" fill="black"></rect>
|
||||
<rect x="11.000000" y="271.000000" width="30" height="21" fill="black"></rect>
|
||||
</mask></svg></svg>
|
||||
|
After Width: | Height: | Size: 13 KiB |
266
e2etests/testdata/stable/classes/elk/board.exp.json
generated
vendored
Normal file
|
|
@ -0,0 +1,266 @@
|
|||
{
|
||||
"name": "",
|
||||
"isFolderOnly": false,
|
||||
"fontFamily": "SourceSansPro",
|
||||
"shapes": [
|
||||
{
|
||||
"id": "nostar",
|
||||
"type": "oval",
|
||||
"classes": [
|
||||
"dragon_ball"
|
||||
],
|
||||
"pos": {
|
||||
"x": 13,
|
||||
"y": 12
|
||||
},
|
||||
"width": 50,
|
||||
"height": 50,
|
||||
"opacity": 1,
|
||||
"strokeDash": 0,
|
||||
"strokeWidth": 0,
|
||||
"borderRadius": 0,
|
||||
"fill": "orange",
|
||||
"stroke": "B1",
|
||||
"shadow": false,
|
||||
"3d": false,
|
||||
"multiple": false,
|
||||
"double-border": false,
|
||||
"tooltip": "",
|
||||
"link": "",
|
||||
"icon": null,
|
||||
"iconPosition": "",
|
||||
"blend": false,
|
||||
"fields": null,
|
||||
"methods": null,
|
||||
"columns": null,
|
||||
"label": "",
|
||||
"fontSize": 16,
|
||||
"fontFamily": "DEFAULT",
|
||||
"language": "",
|
||||
"color": "N1",
|
||||
"italic": false,
|
||||
"bold": true,
|
||||
"underline": false,
|
||||
"labelWidth": 0,
|
||||
"labelHeight": 0,
|
||||
"zIndex": 0,
|
||||
"level": 1
|
||||
},
|
||||
{
|
||||
"id": "1star",
|
||||
"type": "oval",
|
||||
"classes": [
|
||||
"dragon_ball"
|
||||
],
|
||||
"pos": {
|
||||
"x": 13,
|
||||
"y": 223
|
||||
},
|
||||
"width": 50,
|
||||
"height": 50,
|
||||
"opacity": 1,
|
||||
"strokeDash": 0,
|
||||
"strokeWidth": 0,
|
||||
"borderRadius": 0,
|
||||
"fill": "orange",
|
||||
"stroke": "B1",
|
||||
"shadow": false,
|
||||
"3d": false,
|
||||
"multiple": false,
|
||||
"double-border": false,
|
||||
"tooltip": "",
|
||||
"link": "",
|
||||
"icon": null,
|
||||
"iconPosition": "",
|
||||
"blend": false,
|
||||
"fields": null,
|
||||
"methods": null,
|
||||
"columns": null,
|
||||
"label": "*",
|
||||
"fontSize": 16,
|
||||
"fontFamily": "DEFAULT",
|
||||
"language": "",
|
||||
"color": "N1",
|
||||
"italic": false,
|
||||
"bold": true,
|
||||
"underline": false,
|
||||
"labelWidth": 7,
|
||||
"labelHeight": 21,
|
||||
"labelPosition": "INSIDE_MIDDLE_CENTER",
|
||||
"zIndex": 0,
|
||||
"level": 1
|
||||
},
|
||||
{
|
||||
"id": "2star",
|
||||
"type": "oval",
|
||||
"classes": [
|
||||
"dragon_ball"
|
||||
],
|
||||
"pos": {
|
||||
"x": 12,
|
||||
"y": 434
|
||||
},
|
||||
"width": 52,
|
||||
"height": 52,
|
||||
"opacity": 1,
|
||||
"strokeDash": 0,
|
||||
"strokeWidth": 0,
|
||||
"borderRadius": 0,
|
||||
"fill": "orange",
|
||||
"stroke": "B1",
|
||||
"shadow": false,
|
||||
"3d": false,
|
||||
"multiple": false,
|
||||
"double-border": false,
|
||||
"tooltip": "",
|
||||
"link": "",
|
||||
"icon": null,
|
||||
"iconPosition": "",
|
||||
"blend": false,
|
||||
"fields": null,
|
||||
"methods": null,
|
||||
"columns": null,
|
||||
"label": "**",
|
||||
"fontSize": 16,
|
||||
"fontFamily": "DEFAULT",
|
||||
"language": "",
|
||||
"color": "N1",
|
||||
"italic": false,
|
||||
"bold": true,
|
||||
"underline": false,
|
||||
"labelWidth": 15,
|
||||
"labelHeight": 21,
|
||||
"labelPosition": "INSIDE_MIDDLE_CENTER",
|
||||
"zIndex": 0,
|
||||
"level": 1
|
||||
}
|
||||
],
|
||||
"connections": [
|
||||
{
|
||||
"id": "(nostar -> 1star)[0]",
|
||||
"classes": [
|
||||
"path"
|
||||
],
|
||||
"src": "nostar",
|
||||
"srcArrow": "none",
|
||||
"srcLabel": "",
|
||||
"dst": "1star",
|
||||
"dstArrow": "triangle",
|
||||
"dstLabel": "",
|
||||
"opacity": 1,
|
||||
"strokeDash": 0,
|
||||
"strokeWidth": 4,
|
||||
"stroke": "B1",
|
||||
"borderRadius": 10,
|
||||
"label": "then",
|
||||
"fontSize": 16,
|
||||
"fontFamily": "DEFAULT",
|
||||
"language": "",
|
||||
"color": "N2",
|
||||
"italic": true,
|
||||
"bold": false,
|
||||
"underline": false,
|
||||
"labelWidth": 30,
|
||||
"labelHeight": 21,
|
||||
"labelPosition": "INSIDE_MIDDLE_CENTER",
|
||||
"labelPercentage": 0,
|
||||
"route": [
|
||||
{
|
||||
"x": 38,
|
||||
"y": 62
|
||||
},
|
||||
{
|
||||
"x": 38,
|
||||
"y": 223
|
||||
}
|
||||
],
|
||||
"animated": false,
|
||||
"tooltip": "",
|
||||
"icon": null,
|
||||
"zIndex": 0
|
||||
},
|
||||
{
|
||||
"id": "(1star -> 2star)[0]",
|
||||
"classes": [
|
||||
"path"
|
||||
],
|
||||
"src": "1star",
|
||||
"srcArrow": "none",
|
||||
"srcLabel": "",
|
||||
"dst": "2star",
|
||||
"dstArrow": "triangle",
|
||||
"dstLabel": "",
|
||||
"opacity": 1,
|
||||
"strokeDash": 0,
|
||||
"strokeWidth": 4,
|
||||
"stroke": "B1",
|
||||
"borderRadius": 10,
|
||||
"label": "then",
|
||||
"fontSize": 16,
|
||||
"fontFamily": "DEFAULT",
|
||||
"language": "",
|
||||
"color": "N2",
|
||||
"italic": true,
|
||||
"bold": false,
|
||||
"underline": false,
|
||||
"labelWidth": 30,
|
||||
"labelHeight": 21,
|
||||
"labelPosition": "INSIDE_MIDDLE_CENTER",
|
||||
"labelPercentage": 0,
|
||||
"route": [
|
||||
{
|
||||
"x": 38,
|
||||
"y": 273
|
||||
},
|
||||
{
|
||||
"x": 38,
|
||||
"y": 434
|
||||
}
|
||||
],
|
||||
"animated": false,
|
||||
"tooltip": "",
|
||||
"icon": null,
|
||||
"zIndex": 0
|
||||
}
|
||||
],
|
||||
"root": {
|
||||
"id": "",
|
||||
"type": "",
|
||||
"pos": {
|
||||
"x": 0,
|
||||
"y": 0
|
||||
},
|
||||
"width": 0,
|
||||
"height": 0,
|
||||
"opacity": 0,
|
||||
"strokeDash": 0,
|
||||
"strokeWidth": 0,
|
||||
"borderRadius": 0,
|
||||
"fill": "N7",
|
||||
"stroke": "",
|
||||
"shadow": false,
|
||||
"3d": false,
|
||||
"multiple": false,
|
||||
"double-border": false,
|
||||
"tooltip": "",
|
||||
"link": "",
|
||||
"icon": null,
|
||||
"iconPosition": "",
|
||||
"blend": false,
|
||||
"fields": null,
|
||||
"methods": null,
|
||||
"columns": null,
|
||||
"label": "",
|
||||
"fontSize": 0,
|
||||
"fontFamily": "",
|
||||
"language": "",
|
||||
"color": "",
|
||||
"italic": false,
|
||||
"bold": false,
|
||||
"underline": false,
|
||||
"labelWidth": 0,
|
||||
"labelHeight": 0,
|
||||
"zIndex": 0,
|
||||
"level": 0
|
||||
}
|
||||
}
|
||||
103
e2etests/testdata/stable/classes/elk/sketch.exp.svg
vendored
Normal file
|
|
@ -0,0 +1,103 @@
|
|||
<?xml version="1.0" encoding="utf-8"?><svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" d2Version="v0.3.0-HEAD" preserveAspectRatio="xMinYMin meet" viewBox="0 0 52 474"><svg id="d2-svg" class="d2-2782748831" width="52" height="474" viewBox="12 12 52 474"><rect x="12.000000" y="12.000000" width="52.000000" height="474.000000" rx="0.000000" class=" fill-N7" stroke-width="0" /><style type="text/css"><![CDATA[
|
||||
.d2-2782748831 .text-bold {
|
||||
font-family: "d2-2782748831-font-bold";
|
||||
}
|
||||
@font-face {
|
||||
font-family: d2-2782748831-font-bold;
|
||||
src: url("data:application/font-woff;base64,d09GRgABAAAAAAc4AAoAAAAADCQAAguFAAAAAAAAAAAAAAAAAAAAAAAAAABPUy8yAAAA9AAAAGAAAABgXxHXrmNtYXAAAAFUAAAAUAAAAFgA/gFxZ2x5ZgAAAaQAAAGlAAAB0AMzDOZoZWFkAAADTAAAADYAAAA2G38e1GhoZWEAAAOEAAAAJAAAACQKfwXFaG10eAAAA6gAAAAYAAAAGAx3AS1sb2NhAAADwAAAAA4AAAAOAewBeG1heHAAAAPQAAAAIAAAACAAHgD3bmFtZQAAA/AAAAMoAAAIKgjwVkFwb3N0AAAHGAAAAB0AAAAg/9EAMgADAioCvAAFAAACigJYAAAASwKKAlgAAAFeADIBKQAAAgsHAwMEAwICBGAAAvcAAAADAAAAAAAAAABBREJPACAAIP//Au7/BgAAA9gBESAAAZ8AAAAAAfAClAAAACAAA3icTMu7DYNAAMbg7x6RUmSSLJJJIlFRMQgNDWIzhvmRrgE3lgujaAo+ut/wW9V9/U1mS8KzcubIni3r+G5eiqrpXAAAAP//AQAA//+OMhBmeJxiYGUIYGBgSmKawsDMwMnAzyDEIMrAYCyoKKhqrK6uzG5ubG6uLM5srs4oyB7AJPRv6RJ1TRZNTRYthRnyVfHxjL5xTFP+5kT7JiV9i7e2/jdv565/vYzFuxgYmBhU/n9hfMj4h0GCQZ6BgVVJTc3UxMzM2EhMTFSEjV1RTMzYyFycjY3Z2ERNWYmNUd69yMk5x9o9Vp+F6d91LjdDUzNDtbhZm9V1lMx47EqCAkvs7bNdhFU5zYwVI6XkGK00TfUZGBgYGBkcQZYx7WUQAbnbWJQdbImooLIg2GB2QcfJ7DLeRoGek2UVZDQkmPauiZTUzo79d4ZR0UxDUvzfRrgZjH+gZogbY5hRwcWi4As3hPGDvZwuuhmC/78w5jGVMIiDfWtqqmxqbm4saiyqLCoiZmxkBvIsI0OMv4uPYFV5ubIsjySXuLA5T1bYyVy2lpbi41qqbCzZbDwQP6kxxjIuZjrBwMfAIKxurm4ubm4sbi7OLs6uPsXWOke8hNeXt1gix9o2gDFWJ8PQQ6KsXNLDMEMnkgEAAAD//wEAAP//hVhh3gAAAAABAAAAAguFZJGz118PPPUAAQPoAAAAANhdoIQAAAAA3WYvNv43/sQIbQPxAAEAAwACAAAAAAAAAAEAAAPY/u8AAAiY/jf+NwhtAAEAAAAAAAAAAAAAAAAAAAAGArIAUAIGACQCOwBBAjwAQQF/ABEByQAmAAAALABgAIIApADKAOgAAAABAAAABgCQAAwAYwAHAAEAAAAAAAAAAAAAAAAABAADeJyclM9uG1UUxn9ObNMKwQJFVbqJ7oJFkejYVEnVNiuH1IpFFAePC0JCSBPP+I8ynhl5Jg7hCVjzFrxFVzwEz4FYo/l87NgF0SaKknx37vnznXO+c4Ed/mabSvUh8Ec9MVxhr35ueIsH9RPD27TrW4arPKn9abhGWJsbrvN5rWf4I95WfzP8gP3qT4YfslttG/6YZ9Udw59sO/4y/Cn7vF3gCrzgV8MVdskMb7HDj4a3eYTFrFR5RNNwjc/YM1xnD+gzoSBmQsIIx5AJI66YEZHjEzFjwpCIEEeHFjGFviYEQo7Rf34N8CmYESjimAJHjE9MQM7YIv4ir5RzZRzqNLO7FgVjAi7kcUlAgiNlREpCxKXiFBRkvKJBg5yB+GYU5HjkTIjxSJkxokGXNqf0GTMhx9FWpJKZT8qQgmsC5XdmUXZmQERCbqyuSAjF04lfJO8Opzi6ZLJdj3y6EeFLHN/Ju+SWyvYrPP26NWabeZdsAubqZ6yuxLq51gTHui3ztvhWuOAV7l792WTy/h6F+l8o8gVXmn+oSSVikuDcLi18Kch3j3Ec6dzBV0e+p0OfE7q8oa9zix49WpzRp8Nr+Xbp4fiaLmccy6MjvLhrSzFn/IDjGzqyKWNH1p/FxCJ+JjN15+I4Ux1TMvW8ZO6p1kgV3n3C5Q6lG+rI5TPQHpWWTvNLtGcBI1NFJoZT9XKpjdz6F5oipqqlnO3tfbkNc9u95RbfkGqHS7UuOJWTWzB631S9dzRzrR+PgJCUC1kMSJnSoOBGvM8JuCLGcazunWhLClornzLPjVQSMRWDDonizMj0NzDd+MZ9sKF7Z29JKP+S6eWqqvtkcerV7YzeqHvLO9+6HK1NoGFTTdfUNBDXxLQfaafW+fvyzfW6pTzliJSY8F8vwDM8muxzwCFjZRjoZm6vQ1MvRJOXHKr6SyJZDaXnyCIc4PGcAw54yfN3+rhk4oyLW3FZz93imCO6HH5QFQv7Lke8Xn37/6y/i2lTtTierk4v7j3FJ3dQ6xfas9v3sqeJlZOYW7TbrTgjYFpycbvrNbnHeP8AAAD//wEAAP//9LdPUXicYmBmAIP/5xiMGLAAAAAAAP//AQAA//8vAQIDAAAA");
|
||||
}
|
||||
.d2-2782748831 .text-italic {
|
||||
font-family: "d2-2782748831-font-italic";
|
||||
}
|
||||
@font-face {
|
||||
font-family: d2-2782748831-font-italic;
|
||||
src: url("data:application/font-woff;base64,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");
|
||||
}]]></style><style type="text/css"><![CDATA[.shape {
|
||||
shape-rendering: geometricPrecision;
|
||||
stroke-linejoin: round;
|
||||
}
|
||||
.connection {
|
||||
stroke-linecap: round;
|
||||
stroke-linejoin: round;
|
||||
}
|
||||
.blend {
|
||||
mix-blend-mode: multiply;
|
||||
opacity: 0.5;
|
||||
}
|
||||
|
||||
.d2-2782748831 .fill-N1{fill:#0A0F25;}
|
||||
.d2-2782748831 .fill-N2{fill:#676C7E;}
|
||||
.d2-2782748831 .fill-N3{fill:#9499AB;}
|
||||
.d2-2782748831 .fill-N4{fill:#CFD2DD;}
|
||||
.d2-2782748831 .fill-N5{fill:#DEE1EB;}
|
||||
.d2-2782748831 .fill-N6{fill:#EEF1F8;}
|
||||
.d2-2782748831 .fill-N7{fill:#FFFFFF;}
|
||||
.d2-2782748831 .fill-B1{fill:#0D32B2;}
|
||||
.d2-2782748831 .fill-B2{fill:#0D32B2;}
|
||||
.d2-2782748831 .fill-B3{fill:#E3E9FD;}
|
||||
.d2-2782748831 .fill-B4{fill:#E3E9FD;}
|
||||
.d2-2782748831 .fill-B5{fill:#EDF0FD;}
|
||||
.d2-2782748831 .fill-B6{fill:#F7F8FE;}
|
||||
.d2-2782748831 .fill-AA2{fill:#4A6FF3;}
|
||||
.d2-2782748831 .fill-AA4{fill:#EDF0FD;}
|
||||
.d2-2782748831 .fill-AA5{fill:#F7F8FE;}
|
||||
.d2-2782748831 .fill-AB4{fill:#EDF0FD;}
|
||||
.d2-2782748831 .fill-AB5{fill:#F7F8FE;}
|
||||
.d2-2782748831 .stroke-N1{stroke:#0A0F25;}
|
||||
.d2-2782748831 .stroke-N2{stroke:#676C7E;}
|
||||
.d2-2782748831 .stroke-N3{stroke:#9499AB;}
|
||||
.d2-2782748831 .stroke-N4{stroke:#CFD2DD;}
|
||||
.d2-2782748831 .stroke-N5{stroke:#DEE1EB;}
|
||||
.d2-2782748831 .stroke-N6{stroke:#EEF1F8;}
|
||||
.d2-2782748831 .stroke-N7{stroke:#FFFFFF;}
|
||||
.d2-2782748831 .stroke-B1{stroke:#0D32B2;}
|
||||
.d2-2782748831 .stroke-B2{stroke:#0D32B2;}
|
||||
.d2-2782748831 .stroke-B3{stroke:#E3E9FD;}
|
||||
.d2-2782748831 .stroke-B4{stroke:#E3E9FD;}
|
||||
.d2-2782748831 .stroke-B5{stroke:#EDF0FD;}
|
||||
.d2-2782748831 .stroke-B6{stroke:#F7F8FE;}
|
||||
.d2-2782748831 .stroke-AA2{stroke:#4A6FF3;}
|
||||
.d2-2782748831 .stroke-AA4{stroke:#EDF0FD;}
|
||||
.d2-2782748831 .stroke-AA5{stroke:#F7F8FE;}
|
||||
.d2-2782748831 .stroke-AB4{stroke:#EDF0FD;}
|
||||
.d2-2782748831 .stroke-AB5{stroke:#F7F8FE;}
|
||||
.d2-2782748831 .background-color-N1{background-color:#0A0F25;}
|
||||
.d2-2782748831 .background-color-N2{background-color:#676C7E;}
|
||||
.d2-2782748831 .background-color-N3{background-color:#9499AB;}
|
||||
.d2-2782748831 .background-color-N4{background-color:#CFD2DD;}
|
||||
.d2-2782748831 .background-color-N5{background-color:#DEE1EB;}
|
||||
.d2-2782748831 .background-color-N6{background-color:#EEF1F8;}
|
||||
.d2-2782748831 .background-color-N7{background-color:#FFFFFF;}
|
||||
.d2-2782748831 .background-color-B1{background-color:#0D32B2;}
|
||||
.d2-2782748831 .background-color-B2{background-color:#0D32B2;}
|
||||
.d2-2782748831 .background-color-B3{background-color:#E3E9FD;}
|
||||
.d2-2782748831 .background-color-B4{background-color:#E3E9FD;}
|
||||
.d2-2782748831 .background-color-B5{background-color:#EDF0FD;}
|
||||
.d2-2782748831 .background-color-B6{background-color:#F7F8FE;}
|
||||
.d2-2782748831 .background-color-AA2{background-color:#4A6FF3;}
|
||||
.d2-2782748831 .background-color-AA4{background-color:#EDF0FD;}
|
||||
.d2-2782748831 .background-color-AA5{background-color:#F7F8FE;}
|
||||
.d2-2782748831 .background-color-AB4{background-color:#EDF0FD;}
|
||||
.d2-2782748831 .background-color-AB5{background-color:#F7F8FE;}
|
||||
.d2-2782748831 .color-N1{color:#0A0F25;}
|
||||
.d2-2782748831 .color-N2{color:#676C7E;}
|
||||
.d2-2782748831 .color-N3{color:#9499AB;}
|
||||
.d2-2782748831 .color-N4{color:#CFD2DD;}
|
||||
.d2-2782748831 .color-N5{color:#DEE1EB;}
|
||||
.d2-2782748831 .color-N6{color:#EEF1F8;}
|
||||
.d2-2782748831 .color-N7{color:#FFFFFF;}
|
||||
.d2-2782748831 .color-B1{color:#0D32B2;}
|
||||
.d2-2782748831 .color-B2{color:#0D32B2;}
|
||||
.d2-2782748831 .color-B3{color:#E3E9FD;}
|
||||
.d2-2782748831 .color-B4{color:#E3E9FD;}
|
||||
.d2-2782748831 .color-B5{color:#EDF0FD;}
|
||||
.d2-2782748831 .color-B6{color:#F7F8FE;}
|
||||
.d2-2782748831 .color-AA2{color:#4A6FF3;}
|
||||
.d2-2782748831 .color-AA4{color:#EDF0FD;}
|
||||
.d2-2782748831 .color-AA5{color:#F7F8FE;}
|
||||
.d2-2782748831 .color-AB4{color:#EDF0FD;}
|
||||
.d2-2782748831 .color-AB5{color:#F7F8FE;}.appendix text.text{fill:#0A0F25}.md{--color-fg-default:#0A0F25;--color-fg-muted:#676C7E;--color-fg-subtle:#9499AB;--color-canvas-default:#FFFFFF;--color-canvas-subtle:#EEF1F8;--color-border-default:#0D32B2;--color-border-muted:#0D32B2;--color-neutral-muted:#EEF1F8;--color-accent-fg:#0D32B2;--color-accent-emphasis:#0D32B2;--color-attention-subtle:#676C7E;--color-danger-fg:red;}.sketch-overlay-B1{fill:url(#streaks-darker);mix-blend-mode:lighten}.sketch-overlay-B2{fill:url(#streaks-darker);mix-blend-mode:lighten}.sketch-overlay-B3{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-B4{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-B5{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-B6{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-AA2{fill:url(#streaks-dark);mix-blend-mode:overlay}.sketch-overlay-AA4{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-AA5{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-AB4{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-AB5{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-N1{fill:url(#streaks-darker);mix-blend-mode:lighten}.sketch-overlay-N2{fill:url(#streaks-dark);mix-blend-mode:overlay}.sketch-overlay-N3{fill:url(#streaks-normal);mix-blend-mode:color-burn}.sketch-overlay-N4{fill:url(#streaks-normal);mix-blend-mode:color-burn}.sketch-overlay-N5{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-N6{fill:url(#streaks-bright);mix-blend-mode:darken}.sketch-overlay-N7{fill:url(#streaks-bright);mix-blend-mode:darken}.light-code{display: block}.dark-code{display: none}]]></style><g id="nostar" class="dragon_ball"><g class="shape" ><ellipse rx="25.000000" ry="25.000000" cx="38.000000" cy="37.000000" fill="orange" class="shape stroke-B1" style="stroke-width:0;" /></g></g><g id="1star" class="dragon_ball"><g class="shape" ><ellipse rx="25.000000" ry="25.000000" cx="38.000000" cy="248.000000" fill="orange" class="shape stroke-B1" style="stroke-width:0;" /></g><text x="38.000000" y="253.500000" class="text-bold fill-N1" style="text-anchor:middle;font-size:16px">*</text></g><g id="2star" class="dragon_ball"><g class="shape" ><ellipse rx="26.000000" ry="26.000000" cx="38.000000" cy="460.000000" fill="orange" class="shape stroke-B1" style="stroke-width:0;" /></g><text x="38.000000" y="465.500000" class="text-bold fill-N1" style="text-anchor:middle;font-size:16px">**</text></g><g id="(nostar -> 1star)[0]" class="path"><marker id="mk-3519660172" markerWidth="16.000000" markerHeight="20.000000" refX="10.000000" refY="10.000000" viewBox="0.000000 0.000000 16.000000 20.000000" orient="auto" markerUnits="userSpaceOnUse"> <polygon points="0.000000,0.000000 16.000000,10.000000 0.000000,20.000000" class="connection fill-B1" stroke-width="4" /> </marker><path d="M 38.000000 64.000000 L 38.000000 217.000000" fill="none" class="connection stroke-B1" style="stroke-width:4;" marker-end="url(#mk-3519660172)" mask="url(#d2-2782748831)" /><text x="38.000000" y="148.000000" class="text-italic fill-N2" style="text-anchor:middle;font-size:16px">then</text></g><g id="(1star -> 2star)[0]" class="path"><path d="M 38.000000 275.000000 L 38.000000 428.000000" fill="none" class="connection stroke-B1" style="stroke-width:4;" marker-end="url(#mk-3519660172)" mask="url(#d2-2782748831)" /><text x="38.000000" y="359.000000" class="text-italic fill-N2" style="text-anchor:middle;font-size:16px">then</text></g><mask id="d2-2782748831" maskUnits="userSpaceOnUse" x="12" y="12" width="52" height="474">
|
||||
<rect x="12" y="12" width="52" height="474" fill="white"></rect>
|
||||
<rect x="23.000000" y="132.000000" width="30" height="21" fill="black"></rect>
|
||||
<rect x="23.000000" y="343.000000" width="30" height="21" fill="black"></rect>
|
||||
</mask></svg></svg>
|
||||
|
After Width: | Height: | Size: 13 KiB |
6
e2etests/testdata/stable/unnamed_only_height/dagre/board.exp.json
generated
vendored
|
|
@ -4,7 +4,7 @@
|
|||
"fontFamily": "SourceSansPro",
|
||||
"shapes": [
|
||||
{
|
||||
"id": "class",
|
||||
"id": "class2",
|
||||
"type": "class",
|
||||
"pos": {
|
||||
"x": 0,
|
||||
|
|
@ -385,8 +385,8 @@
|
|||
],
|
||||
"connections": [
|
||||
{
|
||||
"id": "(class -> users)[0]",
|
||||
"src": "class",
|
||||
"id": "(class2 -> users)[0]",
|
||||
"src": "class2",
|
||||
"srcArrow": "none",
|
||||
"srcLabel": "",
|
||||
"dst": "users",
|
||||
|
|
|
|||
|
Before Width: | Height: | Size: 33 KiB After Width: | Height: | Size: 33 KiB |
6
e2etests/testdata/stable/unnamed_only_height/elk/board.exp.json
generated
vendored
|
|
@ -4,7 +4,7 @@
|
|||
"fontFamily": "SourceSansPro",
|
||||
"shapes": [
|
||||
{
|
||||
"id": "class",
|
||||
"id": "class2",
|
||||
"type": "class",
|
||||
"pos": {
|
||||
"x": 12,
|
||||
|
|
@ -385,8 +385,8 @@
|
|||
],
|
||||
"connections": [
|
||||
{
|
||||
"id": "(class -> users)[0]",
|
||||
"src": "class",
|
||||
"id": "(class2 -> users)[0]",
|
||||
"src": "class2",
|
||||
"srcArrow": "none",
|
||||
"srcLabel": "",
|
||||
"dst": "users",
|
||||
|
|
|
|||
|
Before Width: | Height: | Size: 33 KiB After Width: | Height: | Size: 33 KiB |
6
e2etests/testdata/stable/unnamed_only_width/dagre/board.exp.json
generated
vendored
|
|
@ -4,7 +4,7 @@
|
|||
"fontFamily": "SourceSansPro",
|
||||
"shapes": [
|
||||
{
|
||||
"id": "class",
|
||||
"id": "class2",
|
||||
"type": "class",
|
||||
"pos": {
|
||||
"x": 0,
|
||||
|
|
@ -385,8 +385,8 @@
|
|||
],
|
||||
"connections": [
|
||||
{
|
||||
"id": "(class -> users)[0]",
|
||||
"src": "class",
|
||||
"id": "(class2 -> users)[0]",
|
||||
"src": "class2",
|
||||
"srcArrow": "none",
|
||||
"srcLabel": "",
|
||||
"dst": "users",
|
||||
|
|
|
|||
|
Before Width: | Height: | Size: 33 KiB After Width: | Height: | Size: 33 KiB |
6
e2etests/testdata/stable/unnamed_only_width/elk/board.exp.json
generated
vendored
|
|
@ -4,7 +4,7 @@
|
|||
"fontFamily": "SourceSansPro",
|
||||
"shapes": [
|
||||
{
|
||||
"id": "class",
|
||||
"id": "class2",
|
||||
"type": "class",
|
||||
"pos": {
|
||||
"x": 12,
|
||||
|
|
@ -385,8 +385,8 @@
|
|||
],
|
||||
"connections": [
|
||||
{
|
||||
"id": "(class -> users)[0]",
|
||||
"src": "class",
|
||||
"id": "(class2 -> users)[0]",
|
||||
"src": "class2",
|
||||
"srcArrow": "none",
|
||||
"srcLabel": "",
|
||||
"dst": "users",
|
||||
|
|
|
|||
|
Before Width: | Height: | Size: 33 KiB After Width: | Height: | Size: 33 KiB |
14
e2etests/testdata/todo/shape_set_width_height/dagre/board.exp.json
generated
vendored
|
|
@ -455,7 +455,7 @@
|
|||
"level": 1
|
||||
},
|
||||
{
|
||||
"id": "class",
|
||||
"id": "class2",
|
||||
"type": "class",
|
||||
"pos": {
|
||||
"x": 828,
|
||||
|
|
@ -513,7 +513,7 @@
|
|||
}
|
||||
],
|
||||
"columns": null,
|
||||
"label": "class",
|
||||
"label": "class2",
|
||||
"fontSize": 20,
|
||||
"fontFamily": "DEFAULT",
|
||||
"language": "",
|
||||
|
|
@ -521,7 +521,7 @@
|
|||
"italic": false,
|
||||
"bold": false,
|
||||
"underline": false,
|
||||
"labelWidth": 70,
|
||||
"labelWidth": 85,
|
||||
"labelHeight": 31,
|
||||
"zIndex": 0,
|
||||
"level": 1,
|
||||
|
|
@ -877,11 +877,11 @@
|
|||
],
|
||||
"connections": [
|
||||
{
|
||||
"id": "(cloud -> class)[0]",
|
||||
"id": "(cloud -> class2)[0]",
|
||||
"src": "cloud",
|
||||
"srcArrow": "none",
|
||||
"srcLabel": "",
|
||||
"dst": "class",
|
||||
"dst": "class2",
|
||||
"dstArrow": "triangle",
|
||||
"dstLabel": "",
|
||||
"opacity": 1,
|
||||
|
|
@ -938,8 +938,8 @@
|
|||
"zIndex": 0
|
||||
},
|
||||
{
|
||||
"id": "(class -> tall cylinder)[0]",
|
||||
"src": "class",
|
||||
"id": "(class2 -> tall cylinder)[0]",
|
||||
"src": "class2",
|
||||
"srcArrow": "none",
|
||||
"srcLabel": "",
|
||||
"dst": "tall cylinder",
|
||||
|
|
|
|||
|
Before Width: | Height: | Size: 59 KiB After Width: | Height: | Size: 59 KiB |
14
e2etests/testdata/todo/shape_set_width_height/elk/board.exp.json
generated
vendored
|
|
@ -455,7 +455,7 @@
|
|||
"level": 1
|
||||
},
|
||||
{
|
||||
"id": "class",
|
||||
"id": "class2",
|
||||
"type": "class",
|
||||
"pos": {
|
||||
"x": 1276,
|
||||
|
|
@ -513,7 +513,7 @@
|
|||
}
|
||||
],
|
||||
"columns": null,
|
||||
"label": "class",
|
||||
"label": "class2",
|
||||
"fontSize": 20,
|
||||
"fontFamily": "DEFAULT",
|
||||
"language": "",
|
||||
|
|
@ -521,7 +521,7 @@
|
|||
"italic": false,
|
||||
"bold": false,
|
||||
"underline": false,
|
||||
"labelWidth": 70,
|
||||
"labelWidth": 85,
|
||||
"labelHeight": 31,
|
||||
"zIndex": 0,
|
||||
"level": 1,
|
||||
|
|
@ -877,11 +877,11 @@
|
|||
],
|
||||
"connections": [
|
||||
{
|
||||
"id": "(cloud -> class)[0]",
|
||||
"id": "(cloud -> class2)[0]",
|
||||
"src": "cloud",
|
||||
"srcArrow": "none",
|
||||
"srcLabel": "",
|
||||
"dst": "class",
|
||||
"dst": "class2",
|
||||
"dstArrow": "triangle",
|
||||
"dstLabel": "",
|
||||
"opacity": 1,
|
||||
|
|
@ -917,8 +917,8 @@
|
|||
"zIndex": 0
|
||||
},
|
||||
{
|
||||
"id": "(class -> tall cylinder)[0]",
|
||||
"src": "class",
|
||||
"id": "(class2 -> tall cylinder)[0]",
|
||||
"src": "class2",
|
||||
"srcArrow": "none",
|
||||
"srcLabel": "",
|
||||
"dst": "tall cylinder",
|
||||
|
|
|
|||
|
Before Width: | Height: | Size: 59 KiB After Width: | Height: | Size: 59 KiB |
|
|
@ -107,7 +107,7 @@ tall cylinder: {
|
|||
width: 256
|
||||
height: 512
|
||||
}
|
||||
cloud -> class -> tall cylinder -> users
|
||||
cloud -> class2 -> tall cylinder -> users
|
||||
|
||||
users: {
|
||||
shape: sql_table
|
||||
|
|
@ -121,7 +121,7 @@ users: {
|
|||
height: 400
|
||||
}
|
||||
|
||||
class: {
|
||||
class2: {
|
||||
shape: class
|
||||
-num: int
|
||||
-timeout: int
|
||||
|
|
|
|||
12
testdata/d2compiler/TestCompile/classes-internal-edge.exp.json
generated
vendored
Normal file
|
|
@ -0,0 +1,12 @@
|
|||
{
|
||||
"graph": null,
|
||||
"err": {
|
||||
"ioerr": null,
|
||||
"errs": [
|
||||
{
|
||||
"range": "d2/testdata/d2compiler/TestCompile/classes-internal-edge.d2,7:2:72-7:16:86",
|
||||
"errmsg": "d2/testdata/d2compiler/TestCompile/classes-internal-edge.d2:8:3: classes cannot contain an edge"
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
12
testdata/d2compiler/TestCompile/classes-unreserved.exp.json
generated
vendored
Normal file
|
|
@ -0,0 +1,12 @@
|
|||
{
|
||||
"graph": null,
|
||||
"err": {
|
||||
"ioerr": null,
|
||||
"errs": [
|
||||
{
|
||||
"range": "d2/testdata/d2compiler/TestCompile/classes-unreserved.d2,2:4:26-2:8:30",
|
||||
"errmsg": "d2/testdata/d2compiler/TestCompile/classes-unreserved.d2:3:5: seed is an invalid class field, must be reserved keyword"
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
907
testdata/d2compiler/TestCompile/classes.exp.json
generated
vendored
Normal file
|
|
@ -0,0 +1,907 @@
|
|||
{
|
||||
"graph": {
|
||||
"name": "",
|
||||
"isFolderOnly": false,
|
||||
"ast": {
|
||||
"range": "d2/testdata/d2compiler/TestCompile/classes.d2,0:0:0-16:0:306",
|
||||
"nodes": [
|
||||
{
|
||||
"map_key": {
|
||||
"range": "d2/testdata/d2compiler/TestCompile/classes.d2,0:0:0-10:1:146",
|
||||
"key": {
|
||||
"range": "d2/testdata/d2compiler/TestCompile/classes.d2,0:0:0-0:7:7",
|
||||
"path": [
|
||||
{
|
||||
"unquoted_string": {
|
||||
"range": "d2/testdata/d2compiler/TestCompile/classes.d2,0:0:0-0:7:7",
|
||||
"value": [
|
||||
{
|
||||
"string": "classes",
|
||||
"raw_string": "classes"
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
]
|
||||
},
|
||||
"primary": {},
|
||||
"value": {
|
||||
"map": {
|
||||
"range": "d2/testdata/d2compiler/TestCompile/classes.d2,0:9:9-10:0:145",
|
||||
"nodes": [
|
||||
{
|
||||
"map_key": {
|
||||
"range": "d2/testdata/d2compiler/TestCompile/classes.d2,1:2:13-5:3:86",
|
||||
"key": {
|
||||
"range": "d2/testdata/d2compiler/TestCompile/classes.d2,1:2:13-1:13:24",
|
||||
"path": [
|
||||
{
|
||||
"unquoted_string": {
|
||||
"range": "d2/testdata/d2compiler/TestCompile/classes.d2,1:2:13-1:13:24",
|
||||
"value": [
|
||||
{
|
||||
"string": "dragon_ball",
|
||||
"raw_string": "dragon_ball"
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
]
|
||||
},
|
||||
"primary": {},
|
||||
"value": {
|
||||
"map": {
|
||||
"range": "d2/testdata/d2compiler/TestCompile/classes.d2,1:15:26-5:2:85",
|
||||
"nodes": [
|
||||
{
|
||||
"map_key": {
|
||||
"range": "d2/testdata/d2compiler/TestCompile/classes.d2,2:4:32-2:13:41",
|
||||
"key": {
|
||||
"range": "d2/testdata/d2compiler/TestCompile/classes.d2,2:4:32-2:9:37",
|
||||
"path": [
|
||||
{
|
||||
"unquoted_string": {
|
||||
"range": "d2/testdata/d2compiler/TestCompile/classes.d2,2:4:32-2:9:37",
|
||||
"value": [
|
||||
{
|
||||
"string": "label",
|
||||
"raw_string": "label"
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
]
|
||||
},
|
||||
"primary": {},
|
||||
"value": {
|
||||
"double_quoted_string": {
|
||||
"range": "d2/testdata/d2compiler/TestCompile/classes.d2,2:11:39-2:13:41",
|
||||
"value": null
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"map_key": {
|
||||
"range": "d2/testdata/d2compiler/TestCompile/classes.d2,3:4:46-3:17:59",
|
||||
"key": {
|
||||
"range": "d2/testdata/d2compiler/TestCompile/classes.d2,3:4:46-3:9:51",
|
||||
"path": [
|
||||
{
|
||||
"unquoted_string": {
|
||||
"range": "d2/testdata/d2compiler/TestCompile/classes.d2,3:4:46-3:9:51",
|
||||
"value": [
|
||||
{
|
||||
"string": "shape",
|
||||
"raw_string": "shape"
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
]
|
||||
},
|
||||
"primary": {},
|
||||
"value": {
|
||||
"unquoted_string": {
|
||||
"range": "d2/testdata/d2compiler/TestCompile/classes.d2,3:11:53-3:17:59",
|
||||
"value": [
|
||||
{
|
||||
"string": "circle",
|
||||
"raw_string": "circle"
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"map_key": {
|
||||
"range": "d2/testdata/d2compiler/TestCompile/classes.d2,4:4:64-4:22:82",
|
||||
"key": {
|
||||
"range": "d2/testdata/d2compiler/TestCompile/classes.d2,4:4:64-4:14:74",
|
||||
"path": [
|
||||
{
|
||||
"unquoted_string": {
|
||||
"range": "d2/testdata/d2compiler/TestCompile/classes.d2,4:4:64-4:9:69",
|
||||
"value": [
|
||||
{
|
||||
"string": "style",
|
||||
"raw_string": "style"
|
||||
}
|
||||
]
|
||||
}
|
||||
},
|
||||
{
|
||||
"unquoted_string": {
|
||||
"range": "d2/testdata/d2compiler/TestCompile/classes.d2,4:10:70-4:14:74",
|
||||
"value": [
|
||||
{
|
||||
"string": "fill",
|
||||
"raw_string": "fill"
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
]
|
||||
},
|
||||
"primary": {},
|
||||
"value": {
|
||||
"unquoted_string": {
|
||||
"range": "d2/testdata/d2compiler/TestCompile/classes.d2,4:16:76-4:22:82",
|
||||
"value": [
|
||||
{
|
||||
"string": "orange",
|
||||
"raw_string": "orange"
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"map_key": {
|
||||
"range": "d2/testdata/d2compiler/TestCompile/classes.d2,6:2:89-9:3:144",
|
||||
"key": {
|
||||
"range": "d2/testdata/d2compiler/TestCompile/classes.d2,6:2:89-6:6:93",
|
||||
"path": [
|
||||
{
|
||||
"unquoted_string": {
|
||||
"range": "d2/testdata/d2compiler/TestCompile/classes.d2,6:2:89-6:6:93",
|
||||
"value": [
|
||||
{
|
||||
"string": "path",
|
||||
"raw_string": "path"
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
]
|
||||
},
|
||||
"primary": {},
|
||||
"value": {
|
||||
"map": {
|
||||
"range": "d2/testdata/d2compiler/TestCompile/classes.d2,6:8:95-9:2:143",
|
||||
"nodes": [
|
||||
{
|
||||
"map_key": {
|
||||
"range": "d2/testdata/d2compiler/TestCompile/classes.d2,7:4:101-7:17:114",
|
||||
"key": {
|
||||
"range": "d2/testdata/d2compiler/TestCompile/classes.d2,7:4:101-7:9:106",
|
||||
"path": [
|
||||
{
|
||||
"unquoted_string": {
|
||||
"range": "d2/testdata/d2compiler/TestCompile/classes.d2,7:4:101-7:9:106",
|
||||
"value": [
|
||||
{
|
||||
"string": "label",
|
||||
"raw_string": "label"
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
]
|
||||
},
|
||||
"primary": {},
|
||||
"value": {
|
||||
"double_quoted_string": {
|
||||
"range": "d2/testdata/d2compiler/TestCompile/classes.d2,7:11:108-7:17:114",
|
||||
"value": [
|
||||
{
|
||||
"string": "then",
|
||||
"raw_string": "then"
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"map_key": {
|
||||
"range": "d2/testdata/d2compiler/TestCompile/classes.d2,8:4:119-8:25:140",
|
||||
"key": {
|
||||
"range": "d2/testdata/d2compiler/TestCompile/classes.d2,8:4:119-8:22:137",
|
||||
"path": [
|
||||
{
|
||||
"unquoted_string": {
|
||||
"range": "d2/testdata/d2compiler/TestCompile/classes.d2,8:4:119-8:9:124",
|
||||
"value": [
|
||||
{
|
||||
"string": "style",
|
||||
"raw_string": "style"
|
||||
}
|
||||
]
|
||||
}
|
||||
},
|
||||
{
|
||||
"unquoted_string": {
|
||||
"range": "d2/testdata/d2compiler/TestCompile/classes.d2,8:10:125-8:22:137",
|
||||
"value": [
|
||||
{
|
||||
"string": "stroke-width",
|
||||
"raw_string": "stroke-width"
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
]
|
||||
},
|
||||
"primary": {},
|
||||
"value": {
|
||||
"number": {
|
||||
"range": "d2/testdata/d2compiler/TestCompile/classes.d2,8:24:139-8:25:140",
|
||||
"raw": "4",
|
||||
"value": "4"
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"map_key": {
|
||||
"range": "d2/testdata/d2compiler/TestCompile/classes.d2,11:0:147-11:30:177",
|
||||
"key": {
|
||||
"range": "d2/testdata/d2compiler/TestCompile/classes.d2,11:0:147-11:6:153",
|
||||
"path": [
|
||||
{
|
||||
"unquoted_string": {
|
||||
"range": "d2/testdata/d2compiler/TestCompile/classes.d2,11:0:147-11:6:153",
|
||||
"value": [
|
||||
{
|
||||
"string": "nostar",
|
||||
"raw_string": "nostar"
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
]
|
||||
},
|
||||
"primary": {},
|
||||
"value": {
|
||||
"map": {
|
||||
"range": "d2/testdata/d2compiler/TestCompile/classes.d2,11:8:155-11:29:176",
|
||||
"nodes": [
|
||||
{
|
||||
"map_key": {
|
||||
"range": "d2/testdata/d2compiler/TestCompile/classes.d2,11:10:157-11:29:176",
|
||||
"key": {
|
||||
"range": "d2/testdata/d2compiler/TestCompile/classes.d2,11:10:157-11:15:162",
|
||||
"path": [
|
||||
{
|
||||
"unquoted_string": {
|
||||
"range": "d2/testdata/d2compiler/TestCompile/classes.d2,11:10:157-11:15:162",
|
||||
"value": [
|
||||
{
|
||||
"string": "class",
|
||||
"raw_string": "class"
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
]
|
||||
},
|
||||
"primary": {},
|
||||
"value": {
|
||||
"unquoted_string": {
|
||||
"range": "d2/testdata/d2compiler/TestCompile/classes.d2,11:17:164-11:28:175",
|
||||
"value": [
|
||||
{
|
||||
"string": "dragon_ball",
|
||||
"raw_string": "dragon_ball"
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"map_key": {
|
||||
"range": "d2/testdata/d2compiler/TestCompile/classes.d2,12:0:178-12:50:228",
|
||||
"key": {
|
||||
"range": "d2/testdata/d2compiler/TestCompile/classes.d2,12:0:178-12:5:183",
|
||||
"path": [
|
||||
{
|
||||
"unquoted_string": {
|
||||
"range": "d2/testdata/d2compiler/TestCompile/classes.d2,12:0:178-12:5:183",
|
||||
"value": [
|
||||
{
|
||||
"string": "1star",
|
||||
"raw_string": "1star"
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
]
|
||||
},
|
||||
"primary": {
|
||||
"double_quoted_string": {
|
||||
"range": "d2/testdata/d2compiler/TestCompile/classes.d2,12:7:185-12:10:188",
|
||||
"value": [
|
||||
{
|
||||
"string": "*",
|
||||
"raw_string": "*"
|
||||
}
|
||||
]
|
||||
}
|
||||
},
|
||||
"value": {
|
||||
"map": {
|
||||
"range": "d2/testdata/d2compiler/TestCompile/classes.d2,12:11:189-12:49:227",
|
||||
"nodes": [
|
||||
{
|
||||
"map_key": {
|
||||
"range": "d2/testdata/d2compiler/TestCompile/classes.d2,12:13:191-12:31:209",
|
||||
"key": {
|
||||
"range": "d2/testdata/d2compiler/TestCompile/classes.d2,12:13:191-12:18:196",
|
||||
"path": [
|
||||
{
|
||||
"unquoted_string": {
|
||||
"range": "d2/testdata/d2compiler/TestCompile/classes.d2,12:13:191-12:18:196",
|
||||
"value": [
|
||||
{
|
||||
"string": "class",
|
||||
"raw_string": "class"
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
]
|
||||
},
|
||||
"primary": {},
|
||||
"value": {
|
||||
"unquoted_string": {
|
||||
"range": "d2/testdata/d2compiler/TestCompile/classes.d2,12:20:198-12:31:209",
|
||||
"value": [
|
||||
{
|
||||
"string": "dragon_ball",
|
||||
"raw_string": "dragon_ball"
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"map_key": {
|
||||
"range": "d2/testdata/d2compiler/TestCompile/classes.d2,12:33:211-12:49:227",
|
||||
"key": {
|
||||
"range": "d2/testdata/d2compiler/TestCompile/classes.d2,12:33:211-12:43:221",
|
||||
"path": [
|
||||
{
|
||||
"unquoted_string": {
|
||||
"range": "d2/testdata/d2compiler/TestCompile/classes.d2,12:33:211-12:38:216",
|
||||
"value": [
|
||||
{
|
||||
"string": "style",
|
||||
"raw_string": "style"
|
||||
}
|
||||
]
|
||||
}
|
||||
},
|
||||
{
|
||||
"unquoted_string": {
|
||||
"range": "d2/testdata/d2compiler/TestCompile/classes.d2,12:39:217-12:43:221",
|
||||
"value": [
|
||||
{
|
||||
"string": "fill",
|
||||
"raw_string": "fill"
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
]
|
||||
},
|
||||
"primary": {},
|
||||
"value": {
|
||||
"unquoted_string": {
|
||||
"range": "d2/testdata/d2compiler/TestCompile/classes.d2,12:45:223-12:48:226",
|
||||
"value": [
|
||||
{
|
||||
"string": "red",
|
||||
"raw_string": "red"
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"map_key": {
|
||||
"range": "d2/testdata/d2compiler/TestCompile/classes.d2,13:0:229-13:42:271",
|
||||
"key": {
|
||||
"range": "d2/testdata/d2compiler/TestCompile/classes.d2,13:0:229-13:5:234",
|
||||
"path": [
|
||||
{
|
||||
"unquoted_string": {
|
||||
"range": "d2/testdata/d2compiler/TestCompile/classes.d2,13:0:229-13:5:234",
|
||||
"value": [
|
||||
{
|
||||
"string": "2star",
|
||||
"raw_string": "2star"
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
]
|
||||
},
|
||||
"primary": {},
|
||||
"value": {
|
||||
"map": {
|
||||
"range": "d2/testdata/d2compiler/TestCompile/classes.d2,13:7:236-13:41:270",
|
||||
"nodes": [
|
||||
{
|
||||
"map_key": {
|
||||
"range": "d2/testdata/d2compiler/TestCompile/classes.d2,13:9:238-13:20:249",
|
||||
"key": {
|
||||
"range": "d2/testdata/d2compiler/TestCompile/classes.d2,13:9:238-13:14:243",
|
||||
"path": [
|
||||
{
|
||||
"unquoted_string": {
|
||||
"range": "d2/testdata/d2compiler/TestCompile/classes.d2,13:9:238-13:14:243",
|
||||
"value": [
|
||||
{
|
||||
"string": "label",
|
||||
"raw_string": "label"
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
]
|
||||
},
|
||||
"primary": {},
|
||||
"value": {
|
||||
"double_quoted_string": {
|
||||
"range": "d2/testdata/d2compiler/TestCompile/classes.d2,13:16:245-13:20:249",
|
||||
"value": [
|
||||
{
|
||||
"string": "**",
|
||||
"raw_string": "**"
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"map_key": {
|
||||
"range": "d2/testdata/d2compiler/TestCompile/classes.d2,13:22:251-13:41:270",
|
||||
"key": {
|
||||
"range": "d2/testdata/d2compiler/TestCompile/classes.d2,13:22:251-13:27:256",
|
||||
"path": [
|
||||
{
|
||||
"unquoted_string": {
|
||||
"range": "d2/testdata/d2compiler/TestCompile/classes.d2,13:22:251-13:27:256",
|
||||
"value": [
|
||||
{
|
||||
"string": "class",
|
||||
"raw_string": "class"
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
]
|
||||
},
|
||||
"primary": {},
|
||||
"value": {
|
||||
"unquoted_string": {
|
||||
"range": "d2/testdata/d2compiler/TestCompile/classes.d2,13:29:258-13:40:269",
|
||||
"value": [
|
||||
{
|
||||
"string": "dragon_ball",
|
||||
"raw_string": "dragon_ball"
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"map_key": {
|
||||
"range": "d2/testdata/d2compiler/TestCompile/classes.d2,15:0:273-15:32:305",
|
||||
"edges": [
|
||||
{
|
||||
"range": "d2/testdata/d2compiler/TestCompile/classes.d2,15:0:273-15:15:288",
|
||||
"src": {
|
||||
"range": "d2/testdata/d2compiler/TestCompile/classes.d2,15:0:273-15:7:280",
|
||||
"path": [
|
||||
{
|
||||
"unquoted_string": {
|
||||
"range": "d2/testdata/d2compiler/TestCompile/classes.d2,15:0:273-15:6:279",
|
||||
"value": [
|
||||
{
|
||||
"string": "nostar",
|
||||
"raw_string": "nostar"
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
]
|
||||
},
|
||||
"src_arrow": "",
|
||||
"dst": {
|
||||
"range": "d2/testdata/d2compiler/TestCompile/classes.d2,15:9:282-15:15:288",
|
||||
"path": [
|
||||
{
|
||||
"unquoted_string": {
|
||||
"range": "d2/testdata/d2compiler/TestCompile/classes.d2,15:10:283-15:15:288",
|
||||
"value": [
|
||||
{
|
||||
"string": "1star",
|
||||
"raw_string": "1star"
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
]
|
||||
},
|
||||
"dst_arrow": ">"
|
||||
}
|
||||
],
|
||||
"primary": {},
|
||||
"value": {
|
||||
"map": {
|
||||
"range": "d2/testdata/d2compiler/TestCompile/classes.d2,15:17:290-15:31:304",
|
||||
"nodes": [
|
||||
{
|
||||
"map_key": {
|
||||
"range": "d2/testdata/d2compiler/TestCompile/classes.d2,15:19:292-15:31:304",
|
||||
"key": {
|
||||
"range": "d2/testdata/d2compiler/TestCompile/classes.d2,15:19:292-15:24:297",
|
||||
"path": [
|
||||
{
|
||||
"unquoted_string": {
|
||||
"range": "d2/testdata/d2compiler/TestCompile/classes.d2,15:19:292-15:24:297",
|
||||
"value": [
|
||||
{
|
||||
"string": "class",
|
||||
"raw_string": "class"
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
]
|
||||
},
|
||||
"primary": {},
|
||||
"value": {
|
||||
"unquoted_string": {
|
||||
"range": "d2/testdata/d2compiler/TestCompile/classes.d2,15:26:299-15:30:303",
|
||||
"value": [
|
||||
{
|
||||
"string": "path",
|
||||
"raw_string": "path"
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
]
|
||||
},
|
||||
"root": {
|
||||
"id": "",
|
||||
"id_val": "",
|
||||
"label_dimensions": {
|
||||
"width": 0,
|
||||
"height": 0
|
||||
},
|
||||
"attributes": {
|
||||
"label": {
|
||||
"value": ""
|
||||
},
|
||||
"style": {},
|
||||
"near_key": null,
|
||||
"shape": {
|
||||
"value": ""
|
||||
},
|
||||
"direction": {
|
||||
"value": ""
|
||||
},
|
||||
"constraint": {
|
||||
"value": ""
|
||||
}
|
||||
},
|
||||
"zIndex": 0
|
||||
},
|
||||
"edges": [
|
||||
{
|
||||
"index": 0,
|
||||
"minWidth": 0,
|
||||
"minHeight": 0,
|
||||
"label_dimensions": {
|
||||
"width": 0,
|
||||
"height": 0
|
||||
},
|
||||
"isCurve": false,
|
||||
"src_arrow": false,
|
||||
"dst_arrow": true,
|
||||
"references": [
|
||||
{
|
||||
"map_key_edge_index": 0
|
||||
}
|
||||
],
|
||||
"attributes": {
|
||||
"label": {
|
||||
"value": "then"
|
||||
},
|
||||
"style": {
|
||||
"strokeWidth": {
|
||||
"value": "4"
|
||||
}
|
||||
},
|
||||
"near_key": null,
|
||||
"shape": {
|
||||
"value": ""
|
||||
},
|
||||
"direction": {
|
||||
"value": ""
|
||||
},
|
||||
"constraint": {
|
||||
"value": ""
|
||||
},
|
||||
"classes": [
|
||||
"path"
|
||||
]
|
||||
},
|
||||
"zIndex": 0
|
||||
}
|
||||
],
|
||||
"objects": [
|
||||
{
|
||||
"id": "nostar",
|
||||
"id_val": "nostar",
|
||||
"label_dimensions": {
|
||||
"width": 0,
|
||||
"height": 0
|
||||
},
|
||||
"references": [
|
||||
{
|
||||
"key": {
|
||||
"range": "d2/testdata/d2compiler/TestCompile/classes.d2,11:0:147-11:6:153",
|
||||
"path": [
|
||||
{
|
||||
"unquoted_string": {
|
||||
"range": "d2/testdata/d2compiler/TestCompile/classes.d2,11:0:147-11:6:153",
|
||||
"value": [
|
||||
{
|
||||
"string": "nostar",
|
||||
"raw_string": "nostar"
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
]
|
||||
},
|
||||
"key_path_index": 0,
|
||||
"map_key_edge_index": -1
|
||||
},
|
||||
{
|
||||
"key": {
|
||||
"range": "d2/testdata/d2compiler/TestCompile/classes.d2,15:0:273-15:7:280",
|
||||
"path": [
|
||||
{
|
||||
"unquoted_string": {
|
||||
"range": "d2/testdata/d2compiler/TestCompile/classes.d2,15:0:273-15:6:279",
|
||||
"value": [
|
||||
{
|
||||
"string": "nostar",
|
||||
"raw_string": "nostar"
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
]
|
||||
},
|
||||
"key_path_index": 0,
|
||||
"map_key_edge_index": 0
|
||||
}
|
||||
],
|
||||
"attributes": {
|
||||
"label": {
|
||||
"value": ""
|
||||
},
|
||||
"style": {
|
||||
"fill": {
|
||||
"value": "orange"
|
||||
}
|
||||
},
|
||||
"near_key": null,
|
||||
"shape": {
|
||||
"value": "circle"
|
||||
},
|
||||
"direction": {
|
||||
"value": ""
|
||||
},
|
||||
"constraint": {
|
||||
"value": ""
|
||||
},
|
||||
"classes": [
|
||||
"dragon_ball"
|
||||
]
|
||||
},
|
||||
"zIndex": 0
|
||||
},
|
||||
{
|
||||
"id": "1star",
|
||||
"id_val": "1star",
|
||||
"label_dimensions": {
|
||||
"width": 0,
|
||||
"height": 0
|
||||
},
|
||||
"references": [
|
||||
{
|
||||
"key": {
|
||||
"range": "d2/testdata/d2compiler/TestCompile/classes.d2,12:0:178-12:5:183",
|
||||
"path": [
|
||||
{
|
||||
"unquoted_string": {
|
||||
"range": "d2/testdata/d2compiler/TestCompile/classes.d2,12:0:178-12:5:183",
|
||||
"value": [
|
||||
{
|
||||
"string": "1star",
|
||||
"raw_string": "1star"
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
]
|
||||
},
|
||||
"key_path_index": 0,
|
||||
"map_key_edge_index": -1
|
||||
},
|
||||
{
|
||||
"key": {
|
||||
"range": "d2/testdata/d2compiler/TestCompile/classes.d2,15:9:282-15:15:288",
|
||||
"path": [
|
||||
{
|
||||
"unquoted_string": {
|
||||
"range": "d2/testdata/d2compiler/TestCompile/classes.d2,15:10:283-15:15:288",
|
||||
"value": [
|
||||
{
|
||||
"string": "1star",
|
||||
"raw_string": "1star"
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
]
|
||||
},
|
||||
"key_path_index": 0,
|
||||
"map_key_edge_index": 0
|
||||
}
|
||||
],
|
||||
"attributes": {
|
||||
"label": {
|
||||
"value": ""
|
||||
},
|
||||
"style": {
|
||||
"fill": {
|
||||
"value": "red"
|
||||
}
|
||||
},
|
||||
"near_key": null,
|
||||
"shape": {
|
||||
"value": "circle"
|
||||
},
|
||||
"direction": {
|
||||
"value": ""
|
||||
},
|
||||
"constraint": {
|
||||
"value": ""
|
||||
},
|
||||
"classes": [
|
||||
"dragon_ball"
|
||||
]
|
||||
},
|
||||
"zIndex": 0
|
||||
},
|
||||
{
|
||||
"id": "2star",
|
||||
"id_val": "2star",
|
||||
"label_dimensions": {
|
||||
"width": 0,
|
||||
"height": 0
|
||||
},
|
||||
"references": [
|
||||
{
|
||||
"key": {
|
||||
"range": "d2/testdata/d2compiler/TestCompile/classes.d2,13:0:229-13:5:234",
|
||||
"path": [
|
||||
{
|
||||
"unquoted_string": {
|
||||
"range": "d2/testdata/d2compiler/TestCompile/classes.d2,13:0:229-13:5:234",
|
||||
"value": [
|
||||
{
|
||||
"string": "2star",
|
||||
"raw_string": "2star"
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
]
|
||||
},
|
||||
"key_path_index": 0,
|
||||
"map_key_edge_index": -1
|
||||
}
|
||||
],
|
||||
"attributes": {
|
||||
"label": {
|
||||
"value": "**"
|
||||
},
|
||||
"style": {
|
||||
"fill": {
|
||||
"value": "orange"
|
||||
}
|
||||
},
|
||||
"near_key": null,
|
||||
"shape": {
|
||||
"value": "circle"
|
||||
},
|
||||
"direction": {
|
||||
"value": ""
|
||||
},
|
||||
"constraint": {
|
||||
"value": ""
|
||||
},
|
||||
"classes": [
|
||||
"dragon_ball"
|
||||
]
|
||||
},
|
||||
"zIndex": 0
|
||||
}
|
||||
]
|
||||
},
|
||||
"err": null
|
||||
}
|
||||
145
testdata/d2compiler/TestCompile/missing-class.exp.json
generated
vendored
Normal file
|
|
@ -0,0 +1,145 @@
|
|||
{
|
||||
"graph": {
|
||||
"name": "",
|
||||
"isFolderOnly": false,
|
||||
"ast": {
|
||||
"range": "d2/testdata/d2compiler/TestCompile/missing-class.d2,0:0:0-1:0:12",
|
||||
"nodes": [
|
||||
{
|
||||
"map_key": {
|
||||
"range": "d2/testdata/d2compiler/TestCompile/missing-class.d2,0:0:0-0:11:11",
|
||||
"key": {
|
||||
"range": "d2/testdata/d2compiler/TestCompile/missing-class.d2,0:0:0-0:7:7",
|
||||
"path": [
|
||||
{
|
||||
"unquoted_string": {
|
||||
"range": "d2/testdata/d2compiler/TestCompile/missing-class.d2,0:0:0-0:1:1",
|
||||
"value": [
|
||||
{
|
||||
"string": "x",
|
||||
"raw_string": "x"
|
||||
}
|
||||
]
|
||||
}
|
||||
},
|
||||
{
|
||||
"unquoted_string": {
|
||||
"range": "d2/testdata/d2compiler/TestCompile/missing-class.d2,0:2:2-0:7:7",
|
||||
"value": [
|
||||
{
|
||||
"string": "class",
|
||||
"raw_string": "class"
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
]
|
||||
},
|
||||
"primary": {},
|
||||
"value": {
|
||||
"unquoted_string": {
|
||||
"range": "d2/testdata/d2compiler/TestCompile/missing-class.d2,0:9:9-0:11:11",
|
||||
"value": [
|
||||
{
|
||||
"string": "yo",
|
||||
"raw_string": "yo"
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
]
|
||||
},
|
||||
"root": {
|
||||
"id": "",
|
||||
"id_val": "",
|
||||
"label_dimensions": {
|
||||
"width": 0,
|
||||
"height": 0
|
||||
},
|
||||
"attributes": {
|
||||
"label": {
|
||||
"value": ""
|
||||
},
|
||||
"style": {},
|
||||
"near_key": null,
|
||||
"shape": {
|
||||
"value": ""
|
||||
},
|
||||
"direction": {
|
||||
"value": ""
|
||||
},
|
||||
"constraint": {
|
||||
"value": ""
|
||||
}
|
||||
},
|
||||
"zIndex": 0
|
||||
},
|
||||
"edges": null,
|
||||
"objects": [
|
||||
{
|
||||
"id": "x",
|
||||
"id_val": "x",
|
||||
"label_dimensions": {
|
||||
"width": 0,
|
||||
"height": 0
|
||||
},
|
||||
"references": [
|
||||
{
|
||||
"key": {
|
||||
"range": "d2/testdata/d2compiler/TestCompile/missing-class.d2,0:0:0-0:7:7",
|
||||
"path": [
|
||||
{
|
||||
"unquoted_string": {
|
||||
"range": "d2/testdata/d2compiler/TestCompile/missing-class.d2,0:0:0-0:1:1",
|
||||
"value": [
|
||||
{
|
||||
"string": "x",
|
||||
"raw_string": "x"
|
||||
}
|
||||
]
|
||||
}
|
||||
},
|
||||
{
|
||||
"unquoted_string": {
|
||||
"range": "d2/testdata/d2compiler/TestCompile/missing-class.d2,0:2:2-0:7:7",
|
||||
"value": [
|
||||
{
|
||||
"string": "class",
|
||||
"raw_string": "class"
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
]
|
||||
},
|
||||
"key_path_index": 0,
|
||||
"map_key_edge_index": -1
|
||||
}
|
||||
],
|
||||
"attributes": {
|
||||
"label": {
|
||||
"value": "x"
|
||||
},
|
||||
"style": {},
|
||||
"near_key": null,
|
||||
"shape": {
|
||||
"value": "rectangle"
|
||||
},
|
||||
"direction": {
|
||||
"value": ""
|
||||
},
|
||||
"constraint": {
|
||||
"value": ""
|
||||
},
|
||||
"classes": [
|
||||
"yo"
|
||||
]
|
||||
},
|
||||
"zIndex": 0
|
||||
}
|
||||
]
|
||||
},
|
||||
"err": null
|
||||
}
|
||||
12
testdata/d2compiler/TestCompile/no-class-inside-classes.exp.json
generated
vendored
Normal file
|
|
@ -0,0 +1,12 @@
|
|||
{
|
||||
"graph": null,
|
||||
"err": {
|
||||
"ioerr": null,
|
||||
"errs": [
|
||||
{
|
||||
"range": "d2/testdata/d2compiler/TestCompile/no-class-inside-classes.d2,2:4:22-2:9:27",
|
||||
"errmsg": "d2/testdata/d2compiler/TestCompile/no-class-inside-classes.d2:3:5: \"class\" cannot appear within \"classes\""
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
12
testdata/d2compiler/TestCompile/no-class-primary.exp.json
generated
vendored
Normal file
|
|
@ -0,0 +1,12 @@
|
|||
{
|
||||
"graph": null,
|
||||
"err": {
|
||||
"ioerr": null,
|
||||
"errs": [
|
||||
{
|
||||
"range": "d2/testdata/d2compiler/TestCompile/no-class-primary.d2,0:2:2-0:7:7",
|
||||
"errmsg": "d2/testdata/d2compiler/TestCompile/no-class-primary.d2:1:3: class missing value"
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
291
testdata/d2compiler/TestCompile/reordered-classes.exp.json
generated
vendored
Normal file
|
|
@ -0,0 +1,291 @@
|
|||
{
|
||||
"graph": {
|
||||
"name": "",
|
||||
"isFolderOnly": false,
|
||||
"ast": {
|
||||
"range": "d2/testdata/d2compiler/TestCompile/reordered-classes.d2,0:0:0-7:0:78",
|
||||
"nodes": [
|
||||
{
|
||||
"map_key": {
|
||||
"range": "d2/testdata/d2compiler/TestCompile/reordered-classes.d2,0:0:0-4:1:41",
|
||||
"key": {
|
||||
"range": "d2/testdata/d2compiler/TestCompile/reordered-classes.d2,0:0:0-0:7:7",
|
||||
"path": [
|
||||
{
|
||||
"unquoted_string": {
|
||||
"range": "d2/testdata/d2compiler/TestCompile/reordered-classes.d2,0:0:0-0:7:7",
|
||||
"value": [
|
||||
{
|
||||
"string": "classes",
|
||||
"raw_string": "classes"
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
]
|
||||
},
|
||||
"primary": {},
|
||||
"value": {
|
||||
"map": {
|
||||
"range": "d2/testdata/d2compiler/TestCompile/reordered-classes.d2,0:9:9-4:0:40",
|
||||
"nodes": [
|
||||
{
|
||||
"map_key": {
|
||||
"range": "d2/testdata/d2compiler/TestCompile/reordered-classes.d2,1:2:13-3:3:39",
|
||||
"key": {
|
||||
"range": "d2/testdata/d2compiler/TestCompile/reordered-classes.d2,1:2:13-1:3:14",
|
||||
"path": [
|
||||
{
|
||||
"unquoted_string": {
|
||||
"range": "d2/testdata/d2compiler/TestCompile/reordered-classes.d2,1:2:13-1:3:14",
|
||||
"value": [
|
||||
{
|
||||
"string": "x",
|
||||
"raw_string": "x"
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
]
|
||||
},
|
||||
"primary": {},
|
||||
"value": {
|
||||
"map": {
|
||||
"range": "d2/testdata/d2compiler/TestCompile/reordered-classes.d2,1:5:16-3:2:38",
|
||||
"nodes": [
|
||||
{
|
||||
"map_key": {
|
||||
"range": "d2/testdata/d2compiler/TestCompile/reordered-classes.d2,2:4:22-2:17:35",
|
||||
"key": {
|
||||
"range": "d2/testdata/d2compiler/TestCompile/reordered-classes.d2,2:4:22-2:9:27",
|
||||
"path": [
|
||||
{
|
||||
"unquoted_string": {
|
||||
"range": "d2/testdata/d2compiler/TestCompile/reordered-classes.d2,2:4:22-2:9:27",
|
||||
"value": [
|
||||
{
|
||||
"string": "shape",
|
||||
"raw_string": "shape"
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
]
|
||||
},
|
||||
"primary": {},
|
||||
"value": {
|
||||
"unquoted_string": {
|
||||
"range": "d2/testdata/d2compiler/TestCompile/reordered-classes.d2,2:11:29-2:17:35",
|
||||
"value": [
|
||||
{
|
||||
"string": "circle",
|
||||
"raw_string": "circle"
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"map_key": {
|
||||
"range": "d2/testdata/d2compiler/TestCompile/reordered-classes.d2,5:0:42-5:10:52",
|
||||
"key": {
|
||||
"range": "d2/testdata/d2compiler/TestCompile/reordered-classes.d2,5:0:42-5:7:49",
|
||||
"path": [
|
||||
{
|
||||
"unquoted_string": {
|
||||
"range": "d2/testdata/d2compiler/TestCompile/reordered-classes.d2,5:0:42-5:1:43",
|
||||
"value": [
|
||||
{
|
||||
"string": "a",
|
||||
"raw_string": "a"
|
||||
}
|
||||
]
|
||||
}
|
||||
},
|
||||
{
|
||||
"unquoted_string": {
|
||||
"range": "d2/testdata/d2compiler/TestCompile/reordered-classes.d2,5:2:44-5:7:49",
|
||||
"value": [
|
||||
{
|
||||
"string": "class",
|
||||
"raw_string": "class"
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
]
|
||||
},
|
||||
"primary": {},
|
||||
"value": {
|
||||
"unquoted_string": {
|
||||
"range": "d2/testdata/d2compiler/TestCompile/reordered-classes.d2,5:9:51-5:10:52",
|
||||
"value": [
|
||||
{
|
||||
"string": "x",
|
||||
"raw_string": "x"
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"map_key": {
|
||||
"range": "d2/testdata/d2compiler/TestCompile/reordered-classes.d2,6:0:53-6:24:77",
|
||||
"key": {
|
||||
"range": "d2/testdata/d2compiler/TestCompile/reordered-classes.d2,6:0:53-6:15:68",
|
||||
"path": [
|
||||
{
|
||||
"unquoted_string": {
|
||||
"range": "d2/testdata/d2compiler/TestCompile/reordered-classes.d2,6:0:53-6:7:60",
|
||||
"value": [
|
||||
{
|
||||
"string": "classes",
|
||||
"raw_string": "classes"
|
||||
}
|
||||
]
|
||||
}
|
||||
},
|
||||
{
|
||||
"unquoted_string": {
|
||||
"range": "d2/testdata/d2compiler/TestCompile/reordered-classes.d2,6:8:61-6:9:62",
|
||||
"value": [
|
||||
{
|
||||
"string": "x",
|
||||
"raw_string": "x"
|
||||
}
|
||||
]
|
||||
}
|
||||
},
|
||||
{
|
||||
"unquoted_string": {
|
||||
"range": "d2/testdata/d2compiler/TestCompile/reordered-classes.d2,6:10:63-6:15:68",
|
||||
"value": [
|
||||
{
|
||||
"string": "shape",
|
||||
"raw_string": "shape"
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
]
|
||||
},
|
||||
"primary": {},
|
||||
"value": {
|
||||
"unquoted_string": {
|
||||
"range": "d2/testdata/d2compiler/TestCompile/reordered-classes.d2,6:17:70-6:24:77",
|
||||
"value": [
|
||||
{
|
||||
"string": "diamond",
|
||||
"raw_string": "diamond"
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
]
|
||||
},
|
||||
"root": {
|
||||
"id": "",
|
||||
"id_val": "",
|
||||
"label_dimensions": {
|
||||
"width": 0,
|
||||
"height": 0
|
||||
},
|
||||
"attributes": {
|
||||
"label": {
|
||||
"value": ""
|
||||
},
|
||||
"style": {},
|
||||
"near_key": null,
|
||||
"shape": {
|
||||
"value": ""
|
||||
},
|
||||
"direction": {
|
||||
"value": ""
|
||||
},
|
||||
"constraint": {
|
||||
"value": ""
|
||||
}
|
||||
},
|
||||
"zIndex": 0
|
||||
},
|
||||
"edges": null,
|
||||
"objects": [
|
||||
{
|
||||
"id": "a",
|
||||
"id_val": "a",
|
||||
"label_dimensions": {
|
||||
"width": 0,
|
||||
"height": 0
|
||||
},
|
||||
"references": [
|
||||
{
|
||||
"key": {
|
||||
"range": "d2/testdata/d2compiler/TestCompile/reordered-classes.d2,5:0:42-5:7:49",
|
||||
"path": [
|
||||
{
|
||||
"unquoted_string": {
|
||||
"range": "d2/testdata/d2compiler/TestCompile/reordered-classes.d2,5:0:42-5:1:43",
|
||||
"value": [
|
||||
{
|
||||
"string": "a",
|
||||
"raw_string": "a"
|
||||
}
|
||||
]
|
||||
}
|
||||
},
|
||||
{
|
||||
"unquoted_string": {
|
||||
"range": "d2/testdata/d2compiler/TestCompile/reordered-classes.d2,5:2:44-5:7:49",
|
||||
"value": [
|
||||
{
|
||||
"string": "class",
|
||||
"raw_string": "class"
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
]
|
||||
},
|
||||
"key_path_index": 0,
|
||||
"map_key_edge_index": -1
|
||||
}
|
||||
],
|
||||
"attributes": {
|
||||
"label": {
|
||||
"value": "a"
|
||||
},
|
||||
"style": {},
|
||||
"near_key": null,
|
||||
"shape": {
|
||||
"value": "diamond"
|
||||
},
|
||||
"direction": {
|
||||
"value": ""
|
||||
},
|
||||
"constraint": {
|
||||
"value": ""
|
||||
},
|
||||
"classes": [
|
||||
"x"
|
||||
]
|
||||
},
|
||||
"zIndex": 0
|
||||
}
|
||||
]
|
||||
},
|
||||
"err": null
|
||||
}
|
||||
504
testdata/d2ir/TestCompile/classes/basic.exp.json
generated
vendored
Normal file
|
|
@ -0,0 +1,504 @@
|
|||
{
|
||||
"fields": [
|
||||
{
|
||||
"name": "x",
|
||||
"references": [
|
||||
{
|
||||
"string": {
|
||||
"range": "TestCompile/classes/basic.d2,0:0:0-0:1:1",
|
||||
"value": [
|
||||
{
|
||||
"string": "x",
|
||||
"raw_string": "x"
|
||||
}
|
||||
]
|
||||
},
|
||||
"key_path": {
|
||||
"range": "TestCompile/classes/basic.d2,0:0:0-0:1:1",
|
||||
"path": [
|
||||
{
|
||||
"unquoted_string": {
|
||||
"range": "TestCompile/classes/basic.d2,0:0:0-0:1:1",
|
||||
"value": [
|
||||
{
|
||||
"string": "x",
|
||||
"raw_string": "x"
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
]
|
||||
},
|
||||
"context": {
|
||||
"edge": null,
|
||||
"key": {
|
||||
"range": "TestCompile/classes/basic.d2,0:0:0-0:1:1",
|
||||
"key": {
|
||||
"range": "TestCompile/classes/basic.d2,0:0:0-0:1:1",
|
||||
"path": [
|
||||
{
|
||||
"unquoted_string": {
|
||||
"range": "TestCompile/classes/basic.d2,0:0:0-0:1:1",
|
||||
"value": [
|
||||
{
|
||||
"string": "x",
|
||||
"raw_string": "x"
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
]
|
||||
},
|
||||
"primary": {},
|
||||
"value": {}
|
||||
}
|
||||
}
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "classes",
|
||||
"composite": {
|
||||
"fields": [
|
||||
{
|
||||
"name": "mango",
|
||||
"composite": {
|
||||
"fields": [
|
||||
{
|
||||
"name": "style",
|
||||
"composite": {
|
||||
"fields": [
|
||||
{
|
||||
"name": "fill",
|
||||
"primary": {
|
||||
"value": {
|
||||
"range": "TestCompile/classes/basic.d2,3:16:40-3:22:46",
|
||||
"value": [
|
||||
{
|
||||
"string": "orange",
|
||||
"raw_string": "orange"
|
||||
}
|
||||
]
|
||||
}
|
||||
},
|
||||
"references": [
|
||||
{
|
||||
"string": {
|
||||
"range": "TestCompile/classes/basic.d2,3:10:34-3:14:38",
|
||||
"value": [
|
||||
{
|
||||
"string": "fill",
|
||||
"raw_string": "fill"
|
||||
}
|
||||
]
|
||||
},
|
||||
"key_path": {
|
||||
"range": "TestCompile/classes/basic.d2,3:4:28-3:14:38",
|
||||
"path": [
|
||||
{
|
||||
"unquoted_string": {
|
||||
"range": "TestCompile/classes/basic.d2,3:4:28-3:9:33",
|
||||
"value": [
|
||||
{
|
||||
"string": "style",
|
||||
"raw_string": "style"
|
||||
}
|
||||
]
|
||||
}
|
||||
},
|
||||
{
|
||||
"unquoted_string": {
|
||||
"range": "TestCompile/classes/basic.d2,3:10:34-3:14:38",
|
||||
"value": [
|
||||
{
|
||||
"string": "fill",
|
||||
"raw_string": "fill"
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
]
|
||||
},
|
||||
"context": {
|
||||
"edge": null,
|
||||
"key": {
|
||||
"range": "TestCompile/classes/basic.d2,3:4:28-3:22:46",
|
||||
"key": {
|
||||
"range": "TestCompile/classes/basic.d2,3:4:28-3:14:38",
|
||||
"path": [
|
||||
{
|
||||
"unquoted_string": {
|
||||
"range": "TestCompile/classes/basic.d2,3:4:28-3:9:33",
|
||||
"value": [
|
||||
{
|
||||
"string": "style",
|
||||
"raw_string": "style"
|
||||
}
|
||||
]
|
||||
}
|
||||
},
|
||||
{
|
||||
"unquoted_string": {
|
||||
"range": "TestCompile/classes/basic.d2,3:10:34-3:14:38",
|
||||
"value": [
|
||||
{
|
||||
"string": "fill",
|
||||
"raw_string": "fill"
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
]
|
||||
},
|
||||
"primary": {},
|
||||
"value": {
|
||||
"unquoted_string": {
|
||||
"range": "TestCompile/classes/basic.d2,3:16:40-3:22:46",
|
||||
"value": [
|
||||
{
|
||||
"string": "orange",
|
||||
"raw_string": "orange"
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
],
|
||||
"edges": null
|
||||
},
|
||||
"references": [
|
||||
{
|
||||
"string": {
|
||||
"range": "TestCompile/classes/basic.d2,3:4:28-3:9:33",
|
||||
"value": [
|
||||
{
|
||||
"string": "style",
|
||||
"raw_string": "style"
|
||||
}
|
||||
]
|
||||
},
|
||||
"key_path": {
|
||||
"range": "TestCompile/classes/basic.d2,3:4:28-3:14:38",
|
||||
"path": [
|
||||
{
|
||||
"unquoted_string": {
|
||||
"range": "TestCompile/classes/basic.d2,3:4:28-3:9:33",
|
||||
"value": [
|
||||
{
|
||||
"string": "style",
|
||||
"raw_string": "style"
|
||||
}
|
||||
]
|
||||
}
|
||||
},
|
||||
{
|
||||
"unquoted_string": {
|
||||
"range": "TestCompile/classes/basic.d2,3:10:34-3:14:38",
|
||||
"value": [
|
||||
{
|
||||
"string": "fill",
|
||||
"raw_string": "fill"
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
]
|
||||
},
|
||||
"context": {
|
||||
"edge": null,
|
||||
"key": {
|
||||
"range": "TestCompile/classes/basic.d2,3:4:28-3:22:46",
|
||||
"key": {
|
||||
"range": "TestCompile/classes/basic.d2,3:4:28-3:14:38",
|
||||
"path": [
|
||||
{
|
||||
"unquoted_string": {
|
||||
"range": "TestCompile/classes/basic.d2,3:4:28-3:9:33",
|
||||
"value": [
|
||||
{
|
||||
"string": "style",
|
||||
"raw_string": "style"
|
||||
}
|
||||
]
|
||||
}
|
||||
},
|
||||
{
|
||||
"unquoted_string": {
|
||||
"range": "TestCompile/classes/basic.d2,3:10:34-3:14:38",
|
||||
"value": [
|
||||
{
|
||||
"string": "fill",
|
||||
"raw_string": "fill"
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
]
|
||||
},
|
||||
"primary": {},
|
||||
"value": {
|
||||
"unquoted_string": {
|
||||
"range": "TestCompile/classes/basic.d2,3:16:40-3:22:46",
|
||||
"value": [
|
||||
{
|
||||
"string": "orange",
|
||||
"raw_string": "orange"
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
],
|
||||
"edges": null
|
||||
},
|
||||
"references": [
|
||||
{
|
||||
"string": {
|
||||
"range": "TestCompile/classes/basic.d2,2:2:15-2:7:20",
|
||||
"value": [
|
||||
{
|
||||
"string": "mango",
|
||||
"raw_string": "mango"
|
||||
}
|
||||
]
|
||||
},
|
||||
"key_path": {
|
||||
"range": "TestCompile/classes/basic.d2,2:2:15-2:7:20",
|
||||
"path": [
|
||||
{
|
||||
"unquoted_string": {
|
||||
"range": "TestCompile/classes/basic.d2,2:2:15-2:7:20",
|
||||
"value": [
|
||||
{
|
||||
"string": "mango",
|
||||
"raw_string": "mango"
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
]
|
||||
},
|
||||
"context": {
|
||||
"edge": null,
|
||||
"key": {
|
||||
"range": "TestCompile/classes/basic.d2,2:2:15-4:3:50",
|
||||
"key": {
|
||||
"range": "TestCompile/classes/basic.d2,2:2:15-2:7:20",
|
||||
"path": [
|
||||
{
|
||||
"unquoted_string": {
|
||||
"range": "TestCompile/classes/basic.d2,2:2:15-2:7:20",
|
||||
"value": [
|
||||
{
|
||||
"string": "mango",
|
||||
"raw_string": "mango"
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
]
|
||||
},
|
||||
"primary": {},
|
||||
"value": {
|
||||
"map": {
|
||||
"range": "TestCompile/classes/basic.d2,2:9:22-4:2:49",
|
||||
"nodes": [
|
||||
{
|
||||
"map_key": {
|
||||
"range": "TestCompile/classes/basic.d2,3:4:28-3:22:46",
|
||||
"key": {
|
||||
"range": "TestCompile/classes/basic.d2,3:4:28-3:14:38",
|
||||
"path": [
|
||||
{
|
||||
"unquoted_string": {
|
||||
"range": "TestCompile/classes/basic.d2,3:4:28-3:9:33",
|
||||
"value": [
|
||||
{
|
||||
"string": "style",
|
||||
"raw_string": "style"
|
||||
}
|
||||
]
|
||||
}
|
||||
},
|
||||
{
|
||||
"unquoted_string": {
|
||||
"range": "TestCompile/classes/basic.d2,3:10:34-3:14:38",
|
||||
"value": [
|
||||
{
|
||||
"string": "fill",
|
||||
"raw_string": "fill"
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
]
|
||||
},
|
||||
"primary": {},
|
||||
"value": {
|
||||
"unquoted_string": {
|
||||
"range": "TestCompile/classes/basic.d2,3:16:40-3:22:46",
|
||||
"value": [
|
||||
{
|
||||
"string": "orange",
|
||||
"raw_string": "orange"
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
],
|
||||
"edges": null
|
||||
},
|
||||
"references": [
|
||||
{
|
||||
"string": {
|
||||
"range": "TestCompile/classes/basic.d2,1:0:2-1:7:9",
|
||||
"value": [
|
||||
{
|
||||
"string": "classes",
|
||||
"raw_string": "classes"
|
||||
}
|
||||
]
|
||||
},
|
||||
"key_path": {
|
||||
"range": "TestCompile/classes/basic.d2,1:0:2-1:7:9",
|
||||
"path": [
|
||||
{
|
||||
"unquoted_string": {
|
||||
"range": "TestCompile/classes/basic.d2,1:0:2-1:7:9",
|
||||
"value": [
|
||||
{
|
||||
"string": "classes",
|
||||
"raw_string": "classes"
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
]
|
||||
},
|
||||
"context": {
|
||||
"edge": null,
|
||||
"key": {
|
||||
"range": "TestCompile/classes/basic.d2,1:0:2-5:1:52",
|
||||
"key": {
|
||||
"range": "TestCompile/classes/basic.d2,1:0:2-1:7:9",
|
||||
"path": [
|
||||
{
|
||||
"unquoted_string": {
|
||||
"range": "TestCompile/classes/basic.d2,1:0:2-1:7:9",
|
||||
"value": [
|
||||
{
|
||||
"string": "classes",
|
||||
"raw_string": "classes"
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
]
|
||||
},
|
||||
"primary": {},
|
||||
"value": {
|
||||
"map": {
|
||||
"range": "TestCompile/classes/basic.d2,1:9:11-5:0:51",
|
||||
"nodes": [
|
||||
{
|
||||
"map_key": {
|
||||
"range": "TestCompile/classes/basic.d2,2:2:15-4:3:50",
|
||||
"key": {
|
||||
"range": "TestCompile/classes/basic.d2,2:2:15-2:7:20",
|
||||
"path": [
|
||||
{
|
||||
"unquoted_string": {
|
||||
"range": "TestCompile/classes/basic.d2,2:2:15-2:7:20",
|
||||
"value": [
|
||||
{
|
||||
"string": "mango",
|
||||
"raw_string": "mango"
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
]
|
||||
},
|
||||
"primary": {},
|
||||
"value": {
|
||||
"map": {
|
||||
"range": "TestCompile/classes/basic.d2,2:9:22-4:2:49",
|
||||
"nodes": [
|
||||
{
|
||||
"map_key": {
|
||||
"range": "TestCompile/classes/basic.d2,3:4:28-3:22:46",
|
||||
"key": {
|
||||
"range": "TestCompile/classes/basic.d2,3:4:28-3:14:38",
|
||||
"path": [
|
||||
{
|
||||
"unquoted_string": {
|
||||
"range": "TestCompile/classes/basic.d2,3:4:28-3:9:33",
|
||||
"value": [
|
||||
{
|
||||
"string": "style",
|
||||
"raw_string": "style"
|
||||
}
|
||||
]
|
||||
}
|
||||
},
|
||||
{
|
||||
"unquoted_string": {
|
||||
"range": "TestCompile/classes/basic.d2,3:10:34-3:14:38",
|
||||
"value": [
|
||||
{
|
||||
"string": "fill",
|
||||
"raw_string": "fill"
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
]
|
||||
},
|
||||
"primary": {},
|
||||
"value": {
|
||||
"unquoted_string": {
|
||||
"range": "TestCompile/classes/basic.d2,3:16:40-3:22:46",
|
||||
"value": [
|
||||
{
|
||||
"string": "orange",
|
||||
"raw_string": "orange"
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
],
|
||||
"edges": null
|
||||
}
|
||||
9684
testdata/d2ir/TestCompile/classes/inherited.exp.json
generated
vendored
Normal file
1583
testdata/d2ir/TestCompile/classes/layer-modify.exp.json
generated
vendored
Normal file
1202
testdata/d2ir/TestCompile/classes/merge-classes.exp.json
generated
vendored
Normal file
1625
testdata/d2ir/TestCompile/classes/merge.exp.json
generated
vendored
Normal file
1924
testdata/d2ir/TestCompile/classes/nested.exp.json
generated
vendored
Normal file
617
testdata/d2ir/TestCompile/classes/nonroot-class.exp.json
generated
vendored
Normal file
|
|
@ -0,0 +1,617 @@
|
|||
{
|
||||
"fields": [
|
||||
{
|
||||
"name": "x",
|
||||
"composite": {
|
||||
"fields": [
|
||||
{
|
||||
"name": "classes",
|
||||
"composite": {
|
||||
"fields": [
|
||||
{
|
||||
"name": "mango",
|
||||
"composite": {
|
||||
"fields": [
|
||||
{
|
||||
"name": "style",
|
||||
"composite": {
|
||||
"fields": [
|
||||
{
|
||||
"name": "fill",
|
||||
"primary": {
|
||||
"value": {
|
||||
"range": "TestCompile/classes/nonroot-class.d2,3:18:49-3:24:55",
|
||||
"value": [
|
||||
{
|
||||
"string": "orange",
|
||||
"raw_string": "orange"
|
||||
}
|
||||
]
|
||||
}
|
||||
},
|
||||
"references": [
|
||||
{
|
||||
"string": {
|
||||
"range": "TestCompile/classes/nonroot-class.d2,3:12:43-3:16:47",
|
||||
"value": [
|
||||
{
|
||||
"string": "fill",
|
||||
"raw_string": "fill"
|
||||
}
|
||||
]
|
||||
},
|
||||
"key_path": {
|
||||
"range": "TestCompile/classes/nonroot-class.d2,3:6:37-3:16:47",
|
||||
"path": [
|
||||
{
|
||||
"unquoted_string": {
|
||||
"range": "TestCompile/classes/nonroot-class.d2,3:6:37-3:11:42",
|
||||
"value": [
|
||||
{
|
||||
"string": "style",
|
||||
"raw_string": "style"
|
||||
}
|
||||
]
|
||||
}
|
||||
},
|
||||
{
|
||||
"unquoted_string": {
|
||||
"range": "TestCompile/classes/nonroot-class.d2,3:12:43-3:16:47",
|
||||
"value": [
|
||||
{
|
||||
"string": "fill",
|
||||
"raw_string": "fill"
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
]
|
||||
},
|
||||
"context": {
|
||||
"edge": null,
|
||||
"key": {
|
||||
"range": "TestCompile/classes/nonroot-class.d2,3:6:37-3:24:55",
|
||||
"key": {
|
||||
"range": "TestCompile/classes/nonroot-class.d2,3:6:37-3:16:47",
|
||||
"path": [
|
||||
{
|
||||
"unquoted_string": {
|
||||
"range": "TestCompile/classes/nonroot-class.d2,3:6:37-3:11:42",
|
||||
"value": [
|
||||
{
|
||||
"string": "style",
|
||||
"raw_string": "style"
|
||||
}
|
||||
]
|
||||
}
|
||||
},
|
||||
{
|
||||
"unquoted_string": {
|
||||
"range": "TestCompile/classes/nonroot-class.d2,3:12:43-3:16:47",
|
||||
"value": [
|
||||
{
|
||||
"string": "fill",
|
||||
"raw_string": "fill"
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
]
|
||||
},
|
||||
"primary": {},
|
||||
"value": {
|
||||
"unquoted_string": {
|
||||
"range": "TestCompile/classes/nonroot-class.d2,3:18:49-3:24:55",
|
||||
"value": [
|
||||
{
|
||||
"string": "orange",
|
||||
"raw_string": "orange"
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
],
|
||||
"edges": null
|
||||
},
|
||||
"references": [
|
||||
{
|
||||
"string": {
|
||||
"range": "TestCompile/classes/nonroot-class.d2,3:6:37-3:11:42",
|
||||
"value": [
|
||||
{
|
||||
"string": "style",
|
||||
"raw_string": "style"
|
||||
}
|
||||
]
|
||||
},
|
||||
"key_path": {
|
||||
"range": "TestCompile/classes/nonroot-class.d2,3:6:37-3:16:47",
|
||||
"path": [
|
||||
{
|
||||
"unquoted_string": {
|
||||
"range": "TestCompile/classes/nonroot-class.d2,3:6:37-3:11:42",
|
||||
"value": [
|
||||
{
|
||||
"string": "style",
|
||||
"raw_string": "style"
|
||||
}
|
||||
]
|
||||
}
|
||||
},
|
||||
{
|
||||
"unquoted_string": {
|
||||
"range": "TestCompile/classes/nonroot-class.d2,3:12:43-3:16:47",
|
||||
"value": [
|
||||
{
|
||||
"string": "fill",
|
||||
"raw_string": "fill"
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
]
|
||||
},
|
||||
"context": {
|
||||
"edge": null,
|
||||
"key": {
|
||||
"range": "TestCompile/classes/nonroot-class.d2,3:6:37-3:24:55",
|
||||
"key": {
|
||||
"range": "TestCompile/classes/nonroot-class.d2,3:6:37-3:16:47",
|
||||
"path": [
|
||||
{
|
||||
"unquoted_string": {
|
||||
"range": "TestCompile/classes/nonroot-class.d2,3:6:37-3:11:42",
|
||||
"value": [
|
||||
{
|
||||
"string": "style",
|
||||
"raw_string": "style"
|
||||
}
|
||||
]
|
||||
}
|
||||
},
|
||||
{
|
||||
"unquoted_string": {
|
||||
"range": "TestCompile/classes/nonroot-class.d2,3:12:43-3:16:47",
|
||||
"value": [
|
||||
{
|
||||
"string": "fill",
|
||||
"raw_string": "fill"
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
]
|
||||
},
|
||||
"primary": {},
|
||||
"value": {
|
||||
"unquoted_string": {
|
||||
"range": "TestCompile/classes/nonroot-class.d2,3:18:49-3:24:55",
|
||||
"value": [
|
||||
{
|
||||
"string": "orange",
|
||||
"raw_string": "orange"
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
],
|
||||
"edges": null
|
||||
},
|
||||
"references": [
|
||||
{
|
||||
"string": {
|
||||
"range": "TestCompile/classes/nonroot-class.d2,2:4:22-2:9:27",
|
||||
"value": [
|
||||
{
|
||||
"string": "mango",
|
||||
"raw_string": "mango"
|
||||
}
|
||||
]
|
||||
},
|
||||
"key_path": {
|
||||
"range": "TestCompile/classes/nonroot-class.d2,2:4:22-2:9:27",
|
||||
"path": [
|
||||
{
|
||||
"unquoted_string": {
|
||||
"range": "TestCompile/classes/nonroot-class.d2,2:4:22-2:9:27",
|
||||
"value": [
|
||||
{
|
||||
"string": "mango",
|
||||
"raw_string": "mango"
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
]
|
||||
},
|
||||
"context": {
|
||||
"edge": null,
|
||||
"key": {
|
||||
"range": "TestCompile/classes/nonroot-class.d2,2:4:22-4:5:61",
|
||||
"key": {
|
||||
"range": "TestCompile/classes/nonroot-class.d2,2:4:22-2:9:27",
|
||||
"path": [
|
||||
{
|
||||
"unquoted_string": {
|
||||
"range": "TestCompile/classes/nonroot-class.d2,2:4:22-2:9:27",
|
||||
"value": [
|
||||
{
|
||||
"string": "mango",
|
||||
"raw_string": "mango"
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
]
|
||||
},
|
||||
"primary": {},
|
||||
"value": {
|
||||
"map": {
|
||||
"range": "TestCompile/classes/nonroot-class.d2,2:11:29-4:4:60",
|
||||
"nodes": [
|
||||
{
|
||||
"map_key": {
|
||||
"range": "TestCompile/classes/nonroot-class.d2,3:6:37-3:24:55",
|
||||
"key": {
|
||||
"range": "TestCompile/classes/nonroot-class.d2,3:6:37-3:16:47",
|
||||
"path": [
|
||||
{
|
||||
"unquoted_string": {
|
||||
"range": "TestCompile/classes/nonroot-class.d2,3:6:37-3:11:42",
|
||||
"value": [
|
||||
{
|
||||
"string": "style",
|
||||
"raw_string": "style"
|
||||
}
|
||||
]
|
||||
}
|
||||
},
|
||||
{
|
||||
"unquoted_string": {
|
||||
"range": "TestCompile/classes/nonroot-class.d2,3:12:43-3:16:47",
|
||||
"value": [
|
||||
{
|
||||
"string": "fill",
|
||||
"raw_string": "fill"
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
]
|
||||
},
|
||||
"primary": {},
|
||||
"value": {
|
||||
"unquoted_string": {
|
||||
"range": "TestCompile/classes/nonroot-class.d2,3:18:49-3:24:55",
|
||||
"value": [
|
||||
{
|
||||
"string": "orange",
|
||||
"raw_string": "orange"
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
],
|
||||
"edges": null
|
||||
},
|
||||
"references": [
|
||||
{
|
||||
"string": {
|
||||
"range": "TestCompile/classes/nonroot-class.d2,1:2:7-1:9:14",
|
||||
"value": [
|
||||
{
|
||||
"string": "classes",
|
||||
"raw_string": "classes"
|
||||
}
|
||||
]
|
||||
},
|
||||
"key_path": {
|
||||
"range": "TestCompile/classes/nonroot-class.d2,1:2:7-1:9:14",
|
||||
"path": [
|
||||
{
|
||||
"unquoted_string": {
|
||||
"range": "TestCompile/classes/nonroot-class.d2,1:2:7-1:9:14",
|
||||
"value": [
|
||||
{
|
||||
"string": "classes",
|
||||
"raw_string": "classes"
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
]
|
||||
},
|
||||
"context": {
|
||||
"edge": null,
|
||||
"key": {
|
||||
"range": "TestCompile/classes/nonroot-class.d2,1:2:7-5:3:65",
|
||||
"key": {
|
||||
"range": "TestCompile/classes/nonroot-class.d2,1:2:7-1:9:14",
|
||||
"path": [
|
||||
{
|
||||
"unquoted_string": {
|
||||
"range": "TestCompile/classes/nonroot-class.d2,1:2:7-1:9:14",
|
||||
"value": [
|
||||
{
|
||||
"string": "classes",
|
||||
"raw_string": "classes"
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
]
|
||||
},
|
||||
"primary": {},
|
||||
"value": {
|
||||
"map": {
|
||||
"range": "TestCompile/classes/nonroot-class.d2,1:11:16-5:2:64",
|
||||
"nodes": [
|
||||
{
|
||||
"map_key": {
|
||||
"range": "TestCompile/classes/nonroot-class.d2,2:4:22-4:5:61",
|
||||
"key": {
|
||||
"range": "TestCompile/classes/nonroot-class.d2,2:4:22-2:9:27",
|
||||
"path": [
|
||||
{
|
||||
"unquoted_string": {
|
||||
"range": "TestCompile/classes/nonroot-class.d2,2:4:22-2:9:27",
|
||||
"value": [
|
||||
{
|
||||
"string": "mango",
|
||||
"raw_string": "mango"
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
]
|
||||
},
|
||||
"primary": {},
|
||||
"value": {
|
||||
"map": {
|
||||
"range": "TestCompile/classes/nonroot-class.d2,2:11:29-4:4:60",
|
||||
"nodes": [
|
||||
{
|
||||
"map_key": {
|
||||
"range": "TestCompile/classes/nonroot-class.d2,3:6:37-3:24:55",
|
||||
"key": {
|
||||
"range": "TestCompile/classes/nonroot-class.d2,3:6:37-3:16:47",
|
||||
"path": [
|
||||
{
|
||||
"unquoted_string": {
|
||||
"range": "TestCompile/classes/nonroot-class.d2,3:6:37-3:11:42",
|
||||
"value": [
|
||||
{
|
||||
"string": "style",
|
||||
"raw_string": "style"
|
||||
}
|
||||
]
|
||||
}
|
||||
},
|
||||
{
|
||||
"unquoted_string": {
|
||||
"range": "TestCompile/classes/nonroot-class.d2,3:12:43-3:16:47",
|
||||
"value": [
|
||||
{
|
||||
"string": "fill",
|
||||
"raw_string": "fill"
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
]
|
||||
},
|
||||
"primary": {},
|
||||
"value": {
|
||||
"unquoted_string": {
|
||||
"range": "TestCompile/classes/nonroot-class.d2,3:18:49-3:24:55",
|
||||
"value": [
|
||||
{
|
||||
"string": "orange",
|
||||
"raw_string": "orange"
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
],
|
||||
"edges": null
|
||||
},
|
||||
"references": [
|
||||
{
|
||||
"string": {
|
||||
"range": "TestCompile/classes/nonroot-class.d2,0:0:0-0:1:1",
|
||||
"value": [
|
||||
{
|
||||
"string": "x",
|
||||
"raw_string": "x"
|
||||
}
|
||||
]
|
||||
},
|
||||
"key_path": {
|
||||
"range": "TestCompile/classes/nonroot-class.d2,0:0:0-0:1:1",
|
||||
"path": [
|
||||
{
|
||||
"unquoted_string": {
|
||||
"range": "TestCompile/classes/nonroot-class.d2,0:0:0-0:1:1",
|
||||
"value": [
|
||||
{
|
||||
"string": "x",
|
||||
"raw_string": "x"
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
]
|
||||
},
|
||||
"context": {
|
||||
"edge": null,
|
||||
"key": {
|
||||
"range": "TestCompile/classes/nonroot-class.d2,0:0:0-6:1:67",
|
||||
"key": {
|
||||
"range": "TestCompile/classes/nonroot-class.d2,0:0:0-0:1:1",
|
||||
"path": [
|
||||
{
|
||||
"unquoted_string": {
|
||||
"range": "TestCompile/classes/nonroot-class.d2,0:0:0-0:1:1",
|
||||
"value": [
|
||||
{
|
||||
"string": "x",
|
||||
"raw_string": "x"
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
]
|
||||
},
|
||||
"primary": {},
|
||||
"value": {
|
||||
"map": {
|
||||
"range": "TestCompile/classes/nonroot-class.d2,0:3:3-6:0:66",
|
||||
"nodes": [
|
||||
{
|
||||
"map_key": {
|
||||
"range": "TestCompile/classes/nonroot-class.d2,1:2:7-5:3:65",
|
||||
"key": {
|
||||
"range": "TestCompile/classes/nonroot-class.d2,1:2:7-1:9:14",
|
||||
"path": [
|
||||
{
|
||||
"unquoted_string": {
|
||||
"range": "TestCompile/classes/nonroot-class.d2,1:2:7-1:9:14",
|
||||
"value": [
|
||||
{
|
||||
"string": "classes",
|
||||
"raw_string": "classes"
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
]
|
||||
},
|
||||
"primary": {},
|
||||
"value": {
|
||||
"map": {
|
||||
"range": "TestCompile/classes/nonroot-class.d2,1:11:16-5:2:64",
|
||||
"nodes": [
|
||||
{
|
||||
"map_key": {
|
||||
"range": "TestCompile/classes/nonroot-class.d2,2:4:22-4:5:61",
|
||||
"key": {
|
||||
"range": "TestCompile/classes/nonroot-class.d2,2:4:22-2:9:27",
|
||||
"path": [
|
||||
{
|
||||
"unquoted_string": {
|
||||
"range": "TestCompile/classes/nonroot-class.d2,2:4:22-2:9:27",
|
||||
"value": [
|
||||
{
|
||||
"string": "mango",
|
||||
"raw_string": "mango"
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
]
|
||||
},
|
||||
"primary": {},
|
||||
"value": {
|
||||
"map": {
|
||||
"range": "TestCompile/classes/nonroot-class.d2,2:11:29-4:4:60",
|
||||
"nodes": [
|
||||
{
|
||||
"map_key": {
|
||||
"range": "TestCompile/classes/nonroot-class.d2,3:6:37-3:24:55",
|
||||
"key": {
|
||||
"range": "TestCompile/classes/nonroot-class.d2,3:6:37-3:16:47",
|
||||
"path": [
|
||||
{
|
||||
"unquoted_string": {
|
||||
"range": "TestCompile/classes/nonroot-class.d2,3:6:37-3:11:42",
|
||||
"value": [
|
||||
{
|
||||
"string": "style",
|
||||
"raw_string": "style"
|
||||
}
|
||||
]
|
||||
}
|
||||
},
|
||||
{
|
||||
"unquoted_string": {
|
||||
"range": "TestCompile/classes/nonroot-class.d2,3:12:43-3:16:47",
|
||||
"value": [
|
||||
{
|
||||
"string": "fill",
|
||||
"raw_string": "fill"
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
]
|
||||
},
|
||||
"primary": {},
|
||||
"value": {
|
||||
"unquoted_string": {
|
||||
"range": "TestCompile/classes/nonroot-class.d2,3:18:49-3:24:55",
|
||||
"value": [
|
||||
{
|
||||
"string": "orange",
|
||||
"raw_string": "orange"
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
],
|
||||
"edges": null
|
||||
}
|
||||