@cardenelabs/cdl 0.73.0 → 0.75.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 CHANGED
@@ -5,6 +5,79 @@ CDL (Chainome Diagram Language) の主要変更履歴。
5
5
 
6
6
  ## [Unreleased]
7
7
 
8
+ ## [0.75.0] - 2026-09-26
9
+
10
+ ### Changed
11
+
12
+ - **縮んだ絵の字の打ち消しを残りの種別へ広げた** (#887 / #890)
13
+
14
+ #886 で置いた `打ち消しの倍率` に、絵の中に字を持つ残りの種別を乗せた。
15
+ 乗せたのは 3 種別で、残りは打ち消さない判断を印 (`data-cdl-counter-scaled="0"`) で残した。
16
+
17
+ | 種別 | 戻す字 | 帯 | 実測の倍率 |
18
+ |---|---|---|---|
19
+ | `shape-brokerage` | 相場の字 (指定 5.5) | 電光掲示板の内側 (幅 `w - 4` / 高さ 8) | 1.16 |
20
+ | `shape-exchange` | 清算の字 (指定 8) | 六角形の下の空き (幅 `外 * 2` / 高さ 14) | 1.27 |
21
+ | `shape-api-gateway` | 要求の道 (指定 12) | 行の箱から種類の箱と印の丸を除いた残り | 1.15 |
22
+
23
+ **同じ絵の中では最も狭い字が全体を縛る**。 打ち消しは絵ごとに 1 つの倍率なので、余白の
24
+ 無い字を混ぜると同じ絵の他の字も戻せない。 `shape-api-gateway` の `GET` (箱の幅 48 に
25
+ 合わせて指定を決めているので余白が 0) と `shape-atm` の鍵盤の数字 (18x10 の鍵の絵) は、
26
+ その字だけを据え置いた。
27
+
28
+ 読む内容を持つが帯に余白が無い 2 種別は種別ごと据え置いた。
29
+
30
+ - `shape-ethereum-chain` = 6 桁の番号が指定 9 で幅の見積り 46 になり、箱の中で字が使える
31
+ 幅 42 を縮む前から超えている (4 桁の `shape-bitcoin-chain` は収まるので乗っている)
32
+ - `shape-atm` = 画面が高さ 52 に 3 行を詰めており、行の間隔 12 が指定 10 の 8 割を割る
33
+
34
+ 記号と看板だけを持つ 5 種別 (`shape-bank` / `shape-trust-bank` / `shape-warehouse` /
35
+ `shape-notary` / `shape-customer-service`) は #886 の測定どおり据え置いた。
36
+
37
+ **印が空回りしている形を捕まえる検査を足した**。 縮む箱と縮まない箱で打ち消した字の指定の
38
+ 合計を比べ、増えていなければ落ちる。 `fontSize={指定 * 倍}` と書いてあっても上限が 1.0 に
39
+ 張り付けば 1 文字も戻らないため、印の有無だけでは足りない。 この検査が上の 2 種別を見つけた。
40
+
41
+ 絵の描き方は変えていない。 打ち消しに乗せた 3 種別で、縮んだ箱の中の字が指定どおりの
42
+ 大きさで出るようになる。
43
+
44
+ ## [0.74.0] - 2026-09-26
45
+
46
+ ### Changed
47
+
48
+ - **縮めた絵の字の打ち消しに共通の上限の仕組みを置いた** (#886 / #889)
49
+
50
+ 0.73.0 で連鎖の箱 (`shape-blockchain-block`) に入れた打ち消しを、絵が使い回せる形へ出した。
51
+
52
+ ```ts
53
+ 打ち消しの倍率(倍率, [{ text, size, letterSpacing, 帯: { 幅, 高さ } }])
54
+ ```
55
+
56
+ 絵が「その字が座る場所の広さ」 を渡し、上限を **幅と高さの両方から出して小さい方を採る**。
57
+ 0.73.0 は高さ 2 本 (行の間隔 22 と見出しの帯 32) からしか出しておらず、中央揃えの看板の
58
+ ように幅が字数に比例して伸びる字を横へ出す形だった。
59
+
60
+ | 軸 | 8 割で止めるか | 理由 |
61
+ |---|---|---|
62
+ | 高さ | 止める | 帯の高さは次の行までの距離で、そのまま使うと上下が触れる |
63
+ | 幅 | 止めない | 絵が余白を引いた内側の幅を渡すので、8 割にすると字を切る予算より狭い所で止まる |
64
+
65
+ 帯に収まっていない字がある絵では 1 を返す (打ち消すと確実に外へ出る)。
66
+ 実測 = 判子の中の `印` は半径 8 の丸に収まる四角の 1 辺 11.3 を指定 10 の 1 字でほぼ
67
+ 使い切っており、幅から出る上限が 1 を下回る。
68
+
69
+ 連鎖の箱をこの仕組みに乗せ替えた。 幅の上限が加わったぶん、強く縮めた箱での打ち消しが
70
+ 1.6 倍から 1.43 倍に下がる。 代わりに 240x220 と 400x400 の箱で 3 行目の値が切れなくなった
71
+ (小さい箱では切れたままで、そちらは #885 が持つ)。
72
+
73
+ **包みに印を付けた** (`data-cdl-art-fit`)。 `scale(` を持つ変換は絵の縮小だけではない =
74
+ `event` は目立たせるための脈動を `scale(0.78)` から `scale(1)` で描いており、
75
+ 変換を正規表現で探す形だとその脈動まで絵の縮小として数える (実測で 16 件目に出た)。
76
+
77
+ 打ち消した字にも印を付けた (`data-cdl-counter-scaled`)。
78
+ 実物を描いて打ち消しが行き渡っていない種別を数える検査がこの印を読む。
79
+ 残りの 14 種別を乗せるのは #887。
80
+
8
81
  ## [0.73.0] - 2026-09-26
9
82
 
10
83
  ### Fixed
@@ -3052,7 +3125,9 @@ Initial OSS release.
3052
3125
  使わない = annotated tag を push しても GitHub Release は作られず、 Release を作っていない版で
3053
3126
  行き止まりになる。
3054
3127
 
3055
- [Unreleased]: https://github.com/cardene777/cdl/compare/v0.73.0...HEAD
3128
+ [Unreleased]: https://github.com/cardene777/cdl/compare/v0.75.0...HEAD
3129
+ [0.75.0]: https://github.com/cardene777/cdl/compare/v0.74.0...v0.75.0
3130
+ [0.74.0]: https://github.com/cardene777/cdl/compare/v0.73.0...v0.74.0
3056
3131
  [0.73.0]: https://github.com/cardene777/cdl/compare/v0.72.0...v0.73.0
3057
3132
  [0.72.0]: https://github.com/cardene777/cdl/compare/v0.71.0...v0.72.0
3058
3133
  [0.71.0]: https://github.com/cardene777/cdl/compare/v0.70.0...v0.71.0