diff --git a/d2ir/d2ir.go b/d2ir/d2ir.go index 33dbda9976..823d77e8a4 100644 --- a/d2ir/d2ir.go +++ b/d2ir/d2ir.go @@ -1838,7 +1838,7 @@ func (m *Map) FindBoardRoot(path []string) *Map { if len(path) == 1 { return f.Map() } - return layersf.Map().FindBoardRoot(path[1:]) + return f.Map().FindBoardRoot(path[1:]) } } } @@ -1849,7 +1849,7 @@ func (m *Map) FindBoardRoot(path []string) *Map { if len(path) == 1 { return f.Map() } - return scenariosf.Map().FindBoardRoot(path[1:]) + return f.Map().FindBoardRoot(path[1:]) } } } @@ -1860,7 +1860,7 @@ func (m *Map) FindBoardRoot(path []string) *Map { if len(path) == 1 { return f.Map() } - return stepsf.Map().FindBoardRoot(path[1:]) + return f.Map().FindBoardRoot(path[1:]) } } } diff --git a/d2lsp/d2lsp_test.go b/d2lsp/d2lsp_test.go index 63c6b86546..c2444a3e43 100644 --- a/d2lsp/d2lsp_test.go +++ b/d2lsp/d2lsp_test.go @@ -117,6 +117,12 @@ hi layers: { x: { hello + + layers: { + y: { + qwer + } + } } } `, @@ -130,6 +136,10 @@ layers: { assert.Success(t, err) assert.Equal(t, 0, len(ranges)) + ranges, _, err = d2lsp.GetRefRanges("index.d2", fs, []string{"x", "y"}, "qwer") + assert.Success(t, err) + assert.Equal(t, 1, len(ranges)) + _, _, err = d2lsp.GetRefRanges("index.d2", fs, []string{"y"}, "hello") assert.Equal(t, `board "[y]" not found`, err.Error()) }