Commit graph

475 commits

Author SHA1 Message Date
Anmol Sethi
6ca36e6b0c
d2ir: Glob review fixes 2023-07-30 12:41:15 -07:00
Anmol Sethi
6fdf4b07a5
d2ir: Make double globs work sanely across boards
See test.
2023-07-30 03:15:33 -07:00
Anmol Sethi
9c37d6dcfb
d2ir: Make globs more ergonomic in two specific edge cases
Were identified from @alixander writing documentation.
2023-07-30 01:27:49 -07:00
Anmol Sethi
bd2c94f7a8
d2ir: Make suffix globs case insensitive too 2023-07-29 21:33:41 -07:00
Anmol Sethi
63efa12160
d2ir: Fix globs to not match reserved 2023-07-29 16:57:25 -07:00
Anmol Sethi
ff47a00abf
d2ir: Make globs case insensitive to match the rest of the language
note: I personally wish to change the language and make it case sensitive.
2023-07-29 16:57:25 -07:00
Anmol Sethi
95667750e0
d2ir: Fix and add test for glob-edge-glob-index 2023-07-29 16:57:25 -07:00
Anmol Sethi
b119174a09
d2ir: Fix implementation of Map.createEdge 2023-07-29 16:57:25 -07:00
Anmol Sethi
0d2b0aa99c
d2ir: Implement edge index globs 2023-07-29 16:57:25 -07:00
Anmol Sethi
d9b4b952ee
d2ir: Implement double globs 2023-07-29 16:57:25 -07:00
Anmol Sethi
1217ff35a7
d2ir: Add single glob matching to edges and make it work fully recursively 2023-07-29 16:57:25 -07:00
Anmol Sethi
359976e5d4
d2ir: Add single level field glob patterns 2023-07-29 16:57:25 -07:00
Alexander Wang
fb542087f7
folder check 2023-07-29 10:12:13 -07:00
Alexander Wang
45b396c894
config vars 2023-07-20 16:08:08 -07:00
Anmol Sethi
a79e963f3e
d2ir: Fix variables to passthrough primary type
If the variable is a number it should be parsed as a number and not coerced into a string.
See test change.
2023-07-18 14:58:22 -07:00
Alexander Wang
d275a45033
allow edges in vars 2023-07-13 14:47:32 -07:00
Alexander Wang
29af92310b
fix no-primary-composite 2023-07-13 14:11:14 -07:00
Alexander Wang
4847714c3c
fix compiler creating vars 2023-07-13 12:24:48 -07:00
Alexander Wang
fb0c0d20ed
nested null 2023-07-13 10:22:37 -07:00
Alexander Wang
a54907e28a
remove overlayVars 2023-07-13 10:16:41 -07:00
Alexander Wang
eba41af47d
use scalarstring 2023-07-13 10:13:26 -07:00
Alexander Wang
780345beeb
fix double quote primary 2023-07-13 10:11:08 -07:00
Alexander Wang
ffdb5121f4
err msg 2023-07-13 08:37:22 -07:00
Alexander Wang
ef11d47fc8
null 2023-07-13 08:35:16 -07:00
Alexander Wang
301bc8ddfb
add precedent test 2023-07-12 23:01:11 -07:00
Alexander Wang
98f79e2ba5
arrays 2023-07-12 22:20:55 -07:00
Alexander Wang
4b7b636657
spread 2023-07-12 14:53:28 -07:00
Alexander Wang
85bfad19a6
compile composites 2023-07-12 11:55:58 -07:00
Alexander Wang
63dbaf0935
pr changes 2023-07-11 23:26:06 -07:00
Alexander Wang
67a06b6557
var-in-var 2023-07-11 18:05:03 -07:00
Alexander Wang
5d4d9c5c17
import tests 2023-07-11 17:37:39 -07:00
Alexander Wang
af69e6f626
edge cases 2023-07-11 17:33:01 -07:00
Alexander Wang
92d87b553f
new implementation 2023-07-11 17:19:34 -07:00
Alexander Wang
85cf491d74
quotes 2023-07-11 14:56:09 -07:00
Alexander Wang
78e9e4565e
only coalesce if subbed 2023-07-11 13:52:29 -07:00
Alexander Wang
22bd50a7ef
tests 2023-07-11 13:45:58 -07:00
Alexander Wang
b193b9be8a
cleanup 2023-07-11 13:44:00 -07:00
Alexander Wang
741a9aa306
cleanup 2023-07-11 13:40:44 -07:00
Alexander Wang
090d10e9ca
handle interpolation 2023-07-11 13:32:07 -07:00
Alexander Wang
e7e2566564
save 2023-07-11 11:19:50 -07:00
Alexander Wang
08cc907f07
more test 2023-07-10 22:22:04 -07:00
Alexander Wang
0347dff7a4
more tests 2023-07-10 22:02:58 -07:00
Alexander Wang
acdbfddf23
add replace tests 2023-07-10 21:56:10 -07:00
Alexander Wang
7269ee1706
add overlay tests 2023-07-10 21:54:34 -07:00
Alexander Wang
fd70b5ef46
layers work 2023-07-10 21:32:30 -07:00
Alexander Wang
05802edb07
edge label working 2023-07-10 21:18:18 -07:00
Alexander Wang
c9793b9a87
label works 2023-07-10 19:24:21 -07:00
Alexander Wang
db051a95b6
pr fixes 2023-07-03 15:58:22 -07:00
Alexander Wang
2cce7a89c8
Revert "portal keyword"
This reverts commit 92cfc5c40a.
2023-07-01 20:31:45 -07:00
Alexander Wang
92cfc5c40a
portal keyword 2023-07-01 16:36:33 -07:00
Alexander Wang
6e972c3472
prepend instead 2023-06-28 14:04:44 -07:00
Alexander Wang
44b76c371f
nulls in delete 2023-06-27 15:28:38 -07:00
Alexander Wang
7973e4927d
change test expected behavior 2023-06-27 13:36:33 -07:00
Alexander Wang
0749d4fb41
attribute 2023-06-26 12:15:24 -07:00
Alexander Wang
1acc3d685a
new implementation 2023-06-26 11:57:18 -07:00
Alexander Wang
905a9317a2
fix 2023-06-26 10:51:07 -07:00
Alexander Wang
02fa36d598
save 2023-06-26 10:36:12 -07:00
Alexander Wang
09d1ec6314
reimplement 2023-06-25 23:10:56 -07:00
Alexander Wang
757f292a20
edge works 2023-06-25 20:36:10 -07:00
Alexander Wang
6749115ce2
reappear works 2023-06-25 18:59:53 -07:00
Alexander Wang
48bb6df3fe
save 2023-06-25 18:43:30 -07:00
Alexander Wang
3d69eefc68
reconnect 2023-06-25 15:43:07 -07:00
Alexander Wang
1cd3116747
rename 2023-06-25 12:11:13 -07:00
Alexander Wang
80ddea94fa
set on edge. fix arrowhead setting case 2023-06-25 11:51:21 -07:00
Alexander Wang
6f9e478f59
label and icon position attributes 2023-06-22 16:13:08 -07:00
Alexander Wang
9fce113619
tests 2023-06-20 18:58:04 -07:00
Alexander Wang
a1df49c21e
cleanup 2023-06-20 18:56:04 -07:00
Alexander Wang
1a9d1ffefb
basic move 2023-06-20 18:56:03 -07:00
Alexander Wang
975b27f2eb
basic delete 2023-06-20 18:56:03 -07:00
Alexander Wang
05f1f6005e
fix primary setting 2023-06-20 18:56:03 -07:00
Alexander Wang
21d2c44413
set wip 2023-06-20 18:56:03 -07:00
Alexander Wang
b2cb2d15ac
more tests 2023-06-20 18:56:02 -07:00
Alexander Wang
a25f418c12
new implementation 2023-06-20 18:56:02 -07:00
Alexander Wang
3aed9f59c9
use baseAST, add basic tests 2023-06-20 18:56:02 -07:00
Alexander Wang
c790ddd172
fix 2023-06-18 11:19:37 -07:00
Alexander Wang
77911aa313
Merge pull request #1414 from alixander/board-ast
use right AST for nested board
2023-06-17 22:22:57 -07:00
Alexander Wang
b30f9702bd
fix shape composite 2023-06-16 16:50:16 -07:00
Alexander Wang
64daf4643f
use right AST 2023-06-16 16:23:57 -07:00
Alexander Wang
8b8afb2638
fix idval edge case 2023-06-12 11:26:51 -07:00
Gavin Nishizawa
324a38d285
update test 2023-06-09 14:11:56 -07:00
Alexander Wang
a283e619bb
prevent bad constraint usage 2023-06-08 11:07:46 -07:00
Alexander Wang
538812f928
Merge branch 'master' into imports 2023-06-07 15:38:52 -07:00
Alexander Wang
424f671d54
add test exercising steps/scenarios 2023-06-06 22:52:17 -07:00
Anmol Sethi
986f069c18
d2ir: Fix link paths to be unquoted strings
Allows for simpler manipulation.
2023-06-06 22:37:56 -07:00
Alexander Wang
0d4392eac2
add class array footgun 2023-06-06 20:24:47 -07:00
Anmol Sethi
7f0450121a
d2ir: Handle imported scenarios/steps/links 2023-06-06 16:49:12 -07:00
Anmol Sethi
a5d3cc1429
d2parser: Parse and format @../file imports correctly 2023-06-06 16:15:01 -07:00
Anmol Sethi
35bf5d2c41
d2parser: Fix non file map range not including last brace 2023-06-06 15:48:14 -07:00
Anmol Sethi
de0a863e9f
d2: Fix nested import spread ghost container bug 2023-06-06 15:09:27 -07:00
Anmol Sethi
bc8f180055
d2parser: Error on unquoted strings starting with ...@ 2023-06-06 14:47:40 -07:00
Anmol Sethi
b4d5bc0be1
d2parser: Error on leading @ in non import key strings 2023-06-06 14:06:59 -07:00
Anmol Sethi
10c6d2af71
d2parser: Fix bad import key panic 2023-06-06 14:01:32 -07:00
Anmol Sethi
42706f8b64
d2ir: More import tests 2023-06-06 13:07:30 -07:00
Anmol Sethi
2fcc9ed140
d2ir: Compile imports
Works as so:

index.d2:
```d2
x: @x
```

x.d2:
```d2
label: meow
shape: circle
```

TODO:

- [ ] Correctly import into fields by handling the scenarios/steps overlay.
      - And links.
- [ ] Test every kind of import.
2023-06-04 23:31:18 -07:00
Anmol Sethi
f61409cb79
d2parser: Allow passing in ParseError for nicer error messages in imports 2023-06-04 23:31:18 -07:00
satoqz
665844db39
TA=1 2023-06-03 14:05:18 +02:00
Bernard Xie
69b816c1b4
Merge pull request #1364 from berniexie/no-empty-block-strings
compile: no empty block strings
2023-06-02 11:30:08 -07:00
Bernard Xie
cd09aba54f
trim space 2023-06-02 10:42:44 -07:00
Alexander Wang
e6750a99b6
fix renameiddelta 2023-06-01 19:42:40 -07:00
Bernard Xie
1a6b1a4084
add test 2023-06-01 18:48:37 -07:00
Alexander Wang
6d2b77170b
fix arrowhead overriding 2023-06-01 17:11:11 -07:00
Alexander Wang
e998a95b96
d2ir: prevent illegal non-tail keywords 2023-05-31 23:04:09 -07:00
Anmol Sethi
c325e94cad
d2parser: Allow .d2 extension on quoted import strings 2023-05-30 15:56:01 -07:00
Anmol Sethi
89e1e324d7
d2parser: Add imports support
Includes rewriting @file.d2 to @file
2023-05-30 15:44:35 -07:00
Alexander Wang
bbc37d74fd
return newkey in rename 2023-05-27 17:21:57 -07:00
Alexander Wang
877ff5d9f2
fix underscore again 2023-05-24 16:14:55 -07:00
Alexander Wang
3afbf724f0
fix 2023-05-16 10:45:35 -07:00
Alexander Wang
503a31e034
fix 2023-05-12 16:18:50 -07:00
gavin-ts
9664fd6b7d
Merge pull request #1309 from gavin-ts/nested-layout
layout with nested grids
2023-05-10 17:29:43 -07:00
Alexander Wang
677a8daa13
fix underscore 2023-05-10 16:27:08 -07:00
Gavin Nishizawa
590a18c8bd
update compile test 2023-05-10 12:57:40 -07:00
Alexander Wang
38d344c626
fix underscore regression 2023-05-10 12:27:08 -07:00
Alexander Wang
5520c0bca6
fix map carry 2023-05-09 17:17:18 -07:00
Alexander Wang
acf239d59a
fix underscores 2023-05-09 14:24:42 -07:00
Alexander Wang
c40fce1483
preserve attr 2023-05-09 12:39:00 -07:00
Alexander Wang
aa7cd3f973
fix sibling conflict 2023-05-08 22:26:13 -07:00
Alexander Wang
0124b68780
fix again 2023-05-08 18:45:36 -07:00
Alexander Wang
49828667f7
min/max 2023-05-08 17:49:04 -07:00
Alexander Wang
bb465277c5
fix move container 2023-05-08 14:32:11 -07:00
Alexander Wang
7301cb3699
tests 2023-05-07 16:10:21 -07:00
Alexander Wang
43b206cde8
move container 2023-05-07 16:09:57 -07:00
Alexander Wang
eb30d8af90
rebase and TA=1 2023-05-05 09:21:28 -07:00
Alexander Wang
e03e19b28b
ta=1 2023-05-05 09:18:25 -07:00
Anmol Sethi
e6b52a357f
d2parser: Pass whitespace_range test
Closes #1279
2023-05-05 09:18:25 -07:00
Alexander Wang
db21d350c5
ignore when no params 2023-05-04 20:29:53 -07:00
Alexander Wang
657cdd83cb
more robust 2023-05-04 19:53:53 -07:00
Alexander Wang
60e5a33c8a
implement ReconnectEdge 2023-05-04 19:09:04 -07:00
Alexander Wang
ddd997e3f0
add md block info 2023-04-29 20:45:03 -07:00
Alexander Wang
b08431b73a
Merge pull request #1256 from alixander/class-array
implement arrays for classes
2023-04-27 15:21:06 -07:00
Alexander Wang
7c401a4806
implement arrays for classes
update

changelog
2023-04-27 15:12:39 -07:00
Alexander Wang
595fafc4c8
fix class
style validation

changelog
2023-04-27 11:48:07 -07:00
Alexander Wang
16478fd894
fix classes panic 2023-04-26 12:40:42 -07:00
Alexander Wang
e512d43ec5
fix generate unique number id 2023-04-20 12:27:34 -07:00
Antoine Poivey
760dbfe5ae
merge with master 2023-04-20 16:48:52 +02:00
Alexander Wang
e0b4c09df1
d2oracle: don't modify classes 2023-04-18 20:25:07 -07:00
Gavin Nishizawa
bf50cb9ab3
update tests 2023-04-17 15:03:58 -07:00
Gavin Nishizawa
913c170985
update tests 2023-04-17 13:16:34 -07:00
Gavin Nishizawa
69208ccf19
update tests json .label_dimensions -> .attributes.labelDimensions 2023-04-13 20:13:58 -07:00
Antoine Poivey
b2d0a44e2f
remove border-radius percent tests, add border-radius pill (with a big value) test 2023-04-13 18:18:28 +02:00
Gavin Nishizawa
c0e164e44b
rename to horizontal-gap and vertical-gap 2023-04-12 13:51:04 -07:00
Gavin Nishizawa
e871cee0bb
add compile test 2023-04-10 18:21:39 -07:00
Alexander Wang
70b3dd7b87
add text-transform as keyword 2023-04-08 12:24:29 -07:00
Alexander Wang
305c72d239
implement classes 2023-04-07 09:57:51 -07:00
Alexander Wang
ad880fa9be
Merge pull request #1090 from alixander/scenarios-bug
fix scenarios/steps inheritence
2023-04-06 22:27:03 -07:00
donglixiaoche
b2f905efb8
Merge branch 'master' into near-keys-for-container
Conflicts:
	d2layouts/d2near/layout.go
2023-04-07 10:40:40 +08:00
Gavin Nishizawa
a75d4dd0b9
update keywords rows -> grid-rows 2023-04-06 15:48:01 -07:00
Gavin Nishizawa
37fc3ea8e0
cleanup 2023-04-06 15:37:35 -07:00
Antoine Poivey
e59a50fd08
merge with master 2023-04-06 19:04:53 +02:00
Alexander Wang
a2cffc9341
fix inheritence bug 2023-04-05 19:29:08 -07:00
donglixiaoche
e61629e692
fix: cr 2023-04-06 05:00:12 +08:00
Gavin Nishizawa
06a942cf99
rename to grid diagram 2023-04-05 11:15:52 -07:00
Gavin Nishizawa
04775c8491
validate descendants 2023-04-04 21:00:40 -07:00
Gavin Nishizawa
bce774fd4a
validate edges 2023-04-04 18:45:08 -07:00
Gavin Nishizawa
06fb313d3e
values must be positive 2023-04-03 13:49:10 -07:00
Gavin Nishizawa
d139eeadad
layout with grids 2023-04-03 13:48:38 -07:00
donglixiaoche
9089253872
Merge branch 'master' into near-keys-for-container 2023-03-31 21:18:46 +08:00
Antoine Poivey
e96eb4c6f0
add compile test 2023-03-30 18:43:16 +02:00
donglixiaoche
ad515e6110
chore: regenerate testcases 2023-03-30 18:15:35 +08:00
Anmol Sethi
84cc463ff6
d2parser: Fix #322 2023-03-30 01:29:59 -07:00
Gavin Nishizawa
ad2e3af900
add compiler error for neara set to title with constant near 2023-03-28 11:37:40 -07:00
alankan886
bb54d03033
compiler: Compiler error when Link is set and Tooltip is an URL 2023-03-28 00:12:05 -04:00
alankan886
1250ad3ea7
# This is a combination of 2 commits.
# This is the 1st commit message:

compiler: Compiler error when Link is set and Tooltip is an URL

# The commit message #2 will be skipped:

# Update changelog
2023-03-28 00:02:27 -04:00
donglixiaoche
0df9abc056
fix: delete redundant file 2023-03-27 21:38:11 +08:00
donglixiaoche
22cce86892
fix: cr, add validation for near connectioins 2023-03-27 21:38:09 +08:00
donglixiaoche
72253e892f
fix: compile_test testcase 2023-03-27 21:38:09 +08:00
donglixiaoche
1af6896883
fix: revert near_bad_connected compile_test 2023-03-27 21:38:09 +08:00
donglixiaoche
597385e19c
fix: delete redundant testcases 2023-03-27 21:38:09 +08:00
Alexander Wang
4e67114797
fix delete 2023-03-21 14:31:52 -07:00
Alexander Wang
81c3eef895
fix move with child and container same id 2023-03-21 13:25:00 -07:00
Alexander Wang
436531dbc2
paper pattern 2023-03-20 19:08:56 -07:00
Alexander Wang
04246ef0fb
tmp fix 2023-03-20 11:57:53 -07:00
Alexander Wang
240d555989
fix test 2023-03-19 20:57:15 -07:00
Bernard Xie
1658c05f18
fix 2023-03-17 19:13:14 -07:00
Alexander Wang
c30887b363
new fill-patterns, grayscale 2023-03-15 23:02:17 -07:00
Alexander Wang
36e546c8b4
Merge branch 'master' into pattern 2023-03-14 10:00:56 -07:00
Alexander Wang
c45aa06103
regen 2023-03-14 09:46:45 -07:00
Alexander Wang
bee43fd290
fix d2oracle move with duplicates 2023-03-14 00:29:37 -07:00
Alexander Wang
366a36df67
compiler 2023-03-13 20:07:13 -07:00
Anmol Sethi
1e3cb397a9
testdata: Add a few parse tests and cleanup testdata
Updates #955
Updates #322
2023-03-13 15:28:53 -07:00
Alexander Wang
298a0c10bd
bump to go 1.20 2023-03-13 13:35:26 -07:00
Alexander Wang
a9433a5204
fix arrowhead label detection 2023-03-11 21:33:03 -08:00
Alexander Wang
1730326747
d2oracle: delete class and table deletes all refs 2023-03-09 17:04:38 -08:00
Alexander Wang
a556160306
validate markdown 2023-03-07 09:38:19 -08:00
Alexander Wang
9199554800
give err msg for invalid edge style 2023-03-06 22:44:45 -08:00
Alexander Wang
60c912c605
compile reserved keys to lowercase in IR 2023-03-06 16:38:13 -08:00
Alexander Wang
ea60464d6c
remove primary 2023-03-04 00:57:44 -08:00
Alexander Wang
e1b9a227c4
fix delete not saving map 2023-03-04 00:40:12 -08:00
Alexander Wang
d6e501419d
fix delete suffix with value 2023-03-04 00:32:52 -08:00
Alexander Wang
78c3f3f797
Merge branch 'master' into link-layers 2023-03-02 18:42:06 -08:00
Alexander Wang
78e6f3fc06
pr feedback 2023-03-02 17:56:32 -08:00
Alexander Wang
37ff3fb40b
ignore the parent for delete 2023-03-02 17:04:03 -08:00
Alexander Wang
be5009ea7a
fix d2oracle.Delete 2023-03-02 15:48:47 -08:00
Alexander Wang
85985bbaf5
ok 2023-03-01 15:38:02 -08:00
Alexander Wang
3a9745974c
save 2023-03-01 14:53:58 -08:00
Alexander Wang
5c96ffe6a1
save 2023-03-01 11:27:18 -08:00
Alexander Wang
756068bef5
save 2023-03-01 10:28:01 -08:00
donglixiaoche
04cc7bd207
chore: regenerate testcases 2023-03-01 09:44:15 +08:00
Alexander Wang
d007471d89
tests 2023-02-28 14:31:18 -08:00
Alexander Wang
e83cf8d157
Merge branch 'master' into link-layers 2023-02-28 14:28:33 -08:00
Anmol Sethi
f64b5c010d
IsContainerOnly -> IsFolderOnly 2023-02-27 14:39:09 -08:00