@cardenelabs/cdl 0.15.0 → 0.17.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +75 -1
- package/dist/index.cjs +737 -185
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +227 -9
- package/dist/index.d.ts +227 -9
- package/dist/index.js +729 -186
- package/dist/index.js.map +1 -1
- package/dist/react.cjs +458 -60
- package/dist/react.cjs.map +1 -1
- package/dist/react.d.cts +1 -1
- package/dist/react.d.ts +1 -1
- package/dist/react.js +458 -60
- package/dist/react.js.map +1 -1
- package/dist/{render-BS1E6Mlo.d.cts → render-Dc5Pdf7e.d.cts} +175 -4
- package/dist/{render-BS1E6Mlo.d.ts → render-Dc5Pdf7e.d.ts} +175 -4
- package/package.json +1 -1
- package/src/builder.ts +19 -0
- package/src/index.ts +21 -1
- package/src/kinds/card.tsx +15 -1
- package/src/kinds/sequence-board-metrics.ts +118 -0
- package/src/kinds/sequence-board.tsx +289 -0
- package/src/kinds/storage.tsx +137 -11
- package/src/layout/nodes.ts +32 -6
- package/src/layout/spec.ts +14 -1
- package/src/layout/tokens.ts +3 -0
- package/src/presets.ts +575 -161
- package/src/render/edge-head.ts +72 -8
- package/src/render/edges.tsx +30 -9
- package/src/render/nodes.tsx +4 -0
- package/src/render/stage.tsx +40 -29
- package/src/render/template-fields.ts +6 -2
- package/src/types.ts +156 -3
- package/src/visual-validate.ts +29 -2
package/CHANGELOG.md
CHANGED
|
@@ -5,6 +5,78 @@ CDL (Chainome Diagram Language) の主要変更履歴。
|
|
|
5
5
|
|
|
6
6
|
## [Unreleased]
|
|
7
7
|
|
|
8
|
+
## [0.17.0] - 2026-08-28
|
|
9
|
+
|
|
10
|
+
### Added
|
|
11
|
+
|
|
12
|
+
- **4 図を設計どおりの見た目で描けるようにした** (#578)
|
|
13
|
+
|
|
14
|
+
設計案「箱と行と関係」 は 4 図の見た目を、意味を持つ 2 軸で組み直すもの。
|
|
15
|
+
描き手にはその 2 軸を表す仕組みが 1 つも無く、4 図のどれも設計の形で描けなかった。
|
|
16
|
+
|
|
17
|
+
| 軸 | 何で表すか |
|
|
18
|
+
|---|---|
|
|
19
|
+
| 行頭の印 | 形 (四角 / 山) × 塗り (塗る / 中空) + 下線 |
|
|
20
|
+
| 関係 | 線 (実線 / 破線) × 端の形 × 塗り × 付く側 |
|
|
21
|
+
|
|
22
|
+
箱が `rowMarks` を持ち、行ごとに印を置く。 矢印は端を両側 (`head` / `tailHead`) と
|
|
23
|
+
塗り (`headFill` / `tailHeadFill`) で持ち、`aggregates` のように **出どころ側に印が立つ**
|
|
24
|
+
関係を描けるようになった。
|
|
25
|
+
|
|
26
|
+
意匠の表 (`CLASS_RELATION_LOOK` / `ER_CARDINALITY_HEAD` / `FSM_ACTION_MARK` /
|
|
27
|
+
`SEQUENCE_MESSAGE_LOOK`) を公開する。 見本と検査が同じ表を引くので、片方だけ古くならない。
|
|
28
|
+
|
|
29
|
+
- **順序図を 1 枚の板で描くようにした** (#578)
|
|
30
|
+
|
|
31
|
+
面ごとに名札 / 余白 / 足の 3 箱と縦線を組む形をやめ、図を丸ごと 1 つの箱
|
|
32
|
+
(`sequence-board`) が描く。 言づては矢印ではなく板の中の行になり、段は「どこまで描くか」 を
|
|
33
|
+
状態 (`sequenceStepId()`) に書く。
|
|
34
|
+
|
|
35
|
+
**2 つの骨格を並立させる案は採らなかった**。 描き手が 2 つに割れると、同じ記法が版によって
|
|
36
|
+
別の絵になり、どちらを直せばよいか読み手に判らない。
|
|
37
|
+
|
|
38
|
+
`bands` で「面が動いている間」 を段の範囲で書ける。 書かなければ面ごとに
|
|
39
|
+
「最初に関わった段から最後まで」 の 1 本になる。
|
|
40
|
+
|
|
41
|
+
### Changed
|
|
42
|
+
|
|
43
|
+
- **見た目検査の 3 軸を新しい意匠に合わせた** (#578)
|
|
44
|
+
|
|
45
|
+
| 軸 | 変えたこと |
|
|
46
|
+
|---|---|
|
|
47
|
+
| `row-format` | 行頭の印を持つ箱では `key: value` を求めない (群の区切りは空の行、ふるまいの行は名前だけ) |
|
|
48
|
+
| `row-alignment` | 中心だけでなく上端が揃っていれば揃っているとみなす |
|
|
49
|
+
| `column-gap-uniform` | 端の間隔だけでなく上端どうしの間隔が揃っていればよい |
|
|
50
|
+
|
|
51
|
+
高さの違う箱を段の基準線で並べる図では、中心と端の間隔は必ずばらつく
|
|
52
|
+
(実測 = 行数の違う表で 28、クラス図の 2 列目で 132 と 300)。
|
|
53
|
+
engine が制御しているのは段の基準線であって端の間隔ではない。
|
|
54
|
+
|
|
55
|
+
## [0.16.0] - 2026-08-28
|
|
56
|
+
|
|
57
|
+
### Added
|
|
58
|
+
|
|
59
|
+
- **クラス図の関係の種類から端の形を決めるようにした** (#574)
|
|
60
|
+
|
|
61
|
+
`classDiagram` の `relation` は `extends` / `implements` / `uses` / `aggregates` /
|
|
62
|
+
`composes` の 5 種を受けるのに、**端の形は 1 つも使っていなかった**。
|
|
63
|
+
#560 で足した端の形は「関係の種類を示す」 ためのもので、この preset が第一の使い手になる。
|
|
64
|
+
|
|
65
|
+
| 種類 | 形 | 意味 |
|
|
66
|
+
|---|---|---|
|
|
67
|
+
| `extends` / `implements` | 三角 | 継ぐ |
|
|
68
|
+
| `aggregates` / `composes` | 菱 | 持つ |
|
|
69
|
+
| `uses` | 開いた矢 | 使う |
|
|
70
|
+
|
|
71
|
+
**2 種ずつ同じ形になるのは意図**。 UML は線の種類 (実線 / 破線) と塗りの有無で分ける決まりで、
|
|
72
|
+
端の形はそれぞれ 1 種しかない。
|
|
73
|
+
|
|
74
|
+
`relation` に `head` を書けるようにし、**書いた形が勝つ**。 書かなければ種類から決まるので、
|
|
75
|
+
既存の呼出もそのまま種類に応じた形になる。
|
|
76
|
+
|
|
77
|
+
表は `Record<ClassRelationType, EdgeHead>` なので、種類を足すと形も要る。
|
|
78
|
+
|
|
79
|
+
|
|
8
80
|
## [0.15.0] - 2026-08-28
|
|
9
81
|
|
|
10
82
|
### Fixed
|
|
@@ -798,7 +870,9 @@ Initial OSS release.
|
|
|
798
870
|
使わない = annotated tag を push しても GitHub Release は作られず、 Release を作っていない版で
|
|
799
871
|
行き止まりになる。
|
|
800
872
|
|
|
801
|
-
[Unreleased]: https://github.com/cardene777/cdl/compare/v0.
|
|
873
|
+
[Unreleased]: https://github.com/cardene777/cdl/compare/v0.17.0...HEAD
|
|
874
|
+
[0.17.0]: https://github.com/cardene777/cdl/compare/v0.16.0...v0.17.0
|
|
875
|
+
[0.16.0]: https://github.com/cardene777/cdl/compare/v0.15.0...v0.16.0
|
|
802
876
|
[0.15.0]: https://github.com/cardene777/cdl/compare/v0.14.0...v0.15.0
|
|
803
877
|
[0.14.0]: https://github.com/cardene777/cdl/compare/v0.13.1...v0.14.0
|
|
804
878
|
[0.13.1]: https://github.com/cardene777/cdl/compare/v0.13.0...v0.13.1
|