From d2ec7cd19c90668cebcc2424dc5cd4493aa611b7 Mon Sep 17 00:00:00 2001 From: Alexander Wang Date: Wed, 5 Jun 2024 22:22:47 -0600 Subject: [PATCH] fix --- ci/release/changelogs/next.md | 1 + d2ir/compile.go | 1 + .../TestCompile/spread-import-link.exp.json | 32 ++++--------------- 3 files changed, 9 insertions(+), 25 deletions(-) diff --git a/ci/release/changelogs/next.md b/ci/release/changelogs/next.md index 9df546a71..56fb4e6b1 100644 --- a/ci/release/changelogs/next.md +++ b/ci/release/changelogs/next.md @@ -12,3 +12,4 @@ - Using `shape: circle` for arrowheads no longer removes all arrowheads along path in sketch mode [#1942](https://github.com/terrastruct/d2/pull/1942) - Globs to null connections work [#1965](https://github.com/terrastruct/d2/pull/1965) - Edge globs setting styles inherit correctly in child boards [#1967](https://github.com/terrastruct/d2/pull/1967) +- Board links imported with spread imports work [#1972](https://github.com/terrastruct/d2/pull/1972) diff --git a/d2ir/compile.go b/d2ir/compile.go index 1d7028c2c..b05cda85c 100644 --- a/d2ir/compile.go +++ b/d2ir/compile.go @@ -512,6 +512,7 @@ func (c *compiler) compileMap(dst *Map, ast, scopeAST *d2ast.Map) { } OverlayMap(dst, impn.Map()) + c.updateLinks(dst) if impnf, ok := impn.(*Field); ok { if impnf.Primary_ != nil { diff --git a/testdata/d2compiler/TestCompile/spread-import-link.exp.json b/testdata/d2compiler/TestCompile/spread-import-link.exp.json index e78eb6e03..a3fbe8c23 100644 --- a/testdata/d2compiler/TestCompile/spread-import-link.exp.json +++ b/testdata/d2compiler/TestCompile/spread-import-link.exp.json @@ -3,7 +3,7 @@ "name": "", "isFolderOnly": false, "ast": { - "range": "d2/testdata/d2compiler/TestCompile/spread-import-link.d2,0:0:0-4:1:22", + "range": "d2/testdata/d2compiler/TestCompile/spread-import-link.d2,0:0:0-4:1:27", "nodes": [ { "map_key": { @@ -30,7 +30,7 @@ }, { "map_key": { - "range": "d2/testdata/d2compiler/TestCompile/spread-import-link.d2,2:0:3-4:1:22", + "range": "d2/testdata/d2compiler/TestCompile/spread-import-link.d2,2:0:3-4:1:27", "key": { "range": "d2/testdata/d2compiler/TestCompile/spread-import-link.d2,2:0:3-2:6:9", "path": [ @@ -50,11 +50,11 @@ "primary": {}, "value": { "map": { - "range": "d2/testdata/d2compiler/TestCompile/spread-import-link.d2,2:8:11-4:1:22", + "range": "d2/testdata/d2compiler/TestCompile/spread-import-link.d2,2:8:11-4:1:27", "nodes": [ { "map_key": { - "range": "d2/testdata/d2compiler/TestCompile/spread-import-link.d2,3:2:15-3:7:20", + "range": "d2/testdata/d2compiler/TestCompile/spread-import-link.d2,3:2:15-3:12:25", "key": { "range": "d2/testdata/d2compiler/TestCompile/spread-import-link.d2,3:2:15-3:3:16", "path": [ @@ -74,17 +74,17 @@ "primary": {}, "value": { "map": { - "range": ",1:0:0-1:0:0", + "range": "d2/testdata/d2compiler/TestCompile/spread-import-link.d2,3:5:18-3:12:25", "nodes": [ { "import": { - "range": ",1:0:0-1:0:0", + "range": "d2/testdata/d2compiler/TestCompile/spread-import-link.d2,3:6:19-3:11:24", "spread": true, "pre": "", "path": [ { "unquoted_string": { - "range": "d2/testdata/d2compiler/TestCompile/spread-import-link.d2,3:6:19-3:7:20", + "range": "d2/testdata/d2compiler/TestCompile/spread-import-link.d2,3:10:23-3:11:24", "value": [ { "string": "x", @@ -97,24 +97,6 @@ } } ] - }, - "import": { - "range": "d2/testdata/d2compiler/TestCompile/spread-import-link.d2,3:5:18-3:7:20", - "spread": false, - "pre": "", - "path": [ - { - "unquoted_string": { - "range": "d2/testdata/d2compiler/TestCompile/spread-import-link.d2,3:6:19-3:7:20", - "value": [ - { - "string": "x", - "raw_string": "x" - } - ] - } - } - ] } } }