Skip to content

Commit 706951b

Browse files
committedFeb 9, 2024
fix d2oracle.set on imported edge
1 parent 3129df1 commit 706951b

File tree

3 files changed

+15
-37
lines changed

3 files changed

+15
-37
lines changed
 

‎d2oracle/edit.go

+2-2
Original file line numberDiff line numberDiff line change
@@ -476,14 +476,14 @@ func _set(g *d2graph.Graph, baseAST *d2ast.Map, key string, tag, value *string)
476476
appendMapKey(scope, mk)
477477
return nil
478478
}
479-
// TODO what if the edge is imported, how does this work?
480479
var ok bool
481480
edge, ok = obj.HasEdge(mk)
482481
if !ok {
483482
return errors.New("edge not found")
484483
}
484+
imported = IsImportedEdge(baseAST, edge)
485485
refs := edge.References
486-
if baseAST != g.AST {
486+
if baseAST != g.AST || imported {
487487
refs = getWriteableEdgeRefs(edge, baseAST)
488488
}
489489
onlyInChain := true

‎d2oracle/edit_test.go

+2-2
Original file line numberDiff line numberDiff line change
@@ -2181,10 +2181,10 @@ layers: {
21812181
fsTexts: map[string]string{
21822182
"yo.d2": `a -> b`,
21832183
},
2184-
key: `(a -> b).style.stroke`,
2184+
key: `(a -> b)[0].style.stroke`,
21852185
value: go2.Pointer(`red`),
21862186
exp: `...@yo
2187-
(a -> b).style.stroke: red
2187+
(a -> b)[0].style.stroke: red
21882188
`,
21892189
},
21902190
}

‎testdata/d2oracle/TestSet/import/9.exp.json

+11-33
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

0 commit comments

Comments
 (0)
Failed to load comments.