@cardenelabs/cdl 0.111.0 → 0.112.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 +27 -1
- package/dist/index.cjs +2 -2
- package/dist/index.cjs.map +1 -1
- package/dist/index.js +2 -2
- package/dist/index.js.map +1 -1
- package/dist/react.cjs +2 -2
- package/dist/react.cjs.map +1 -1
- package/dist/react.js +2 -2
- package/dist/react.js.map +1 -1
- package/package.json +1 -1
- package/src/kinds/mind-map.tsx +18 -3
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@cardenelabs/cdl",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.112.0",
|
|
4
4
|
"description": "CDL (Chainome Diagram Language). Mermaid-like declarative DSL that compiles to animated SVG diagrams. Built for blockchain / Solidity flows, generic enough for sequence / flow / state / ER / topology diagrams.",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"author": "cardene777",
|
package/src/kinds/mind-map.tsx
CHANGED
|
@@ -43,8 +43,23 @@ export const 枝の太さ = (段: number): number => Math.max(1.2, 3.2 - 段 * 0
|
|
|
43
43
|
const BRANCH_BOX_H_MAX = 48;
|
|
44
44
|
const SUB_BOX_H_MAX = 40;
|
|
45
45
|
|
|
46
|
-
/**
|
|
47
|
-
|
|
46
|
+
/**
|
|
47
|
+
* 隣り合う枝の縦の間隔の上限 (cdl#913 / cdl#962)。
|
|
48
|
+
*
|
|
49
|
+
* 置かないと、枝の少ない図で枝が細長く伸びる。 枝が左右 2 本ずつの図では割り算の側が
|
|
50
|
+
* 432 になるため、上限を置かなければ枝が 432 離れ、中心から出る曲線がほぼ縦になる。
|
|
51
|
+
*
|
|
52
|
+
* **上限は px の定数ではなく、枝が横に伸びる量から出す** (cdl#962)。
|
|
53
|
+
* 定数 96 にしていた間、横に 230 伸びる図でも縦は 96 までしか開かず、枝の傾きが
|
|
54
|
+
* 12 度にしかならなかった。 札の縦は 4 分の 1 しか埋まらない
|
|
55
|
+
* (見本帳の実測で 3 図とも 23% から 43%)。
|
|
56
|
+
*
|
|
57
|
+
* 横の伸びを超えない範囲で開けば、隣り合う枝の傾きは 45 度を超えない。
|
|
58
|
+
* 「細長く伸びる」 を px ではなく角度で抑える形になる。
|
|
59
|
+
*
|
|
60
|
+
* 枝が多い図では割り算の側が先に効くため、この上限を上げても位置は変わらない。
|
|
61
|
+
*/
|
|
62
|
+
const 縦の間隔の上限 = (枝の横の伸び: number): number => 枝の横の伸び;
|
|
48
63
|
|
|
49
64
|
/**
|
|
50
65
|
* mind-map kind ... 1 node に mindData (rootId / rootTitle / branches) を保持し、
|
|
@@ -444,7 +459,7 @@ export function computeMindMapLayout(
|
|
|
444
459
|
const laneBandH = Math.max(0, canvasH - BRANCH_BOX_H_MAX);
|
|
445
460
|
const rowGap =
|
|
446
461
|
sideLaneCount > 1
|
|
447
|
-
? Math.min(laneBandH / (sideLaneCount - 1),
|
|
462
|
+
? Math.min(laneBandH / (sideLaneCount - 1), 縦の間隔の上限(layer1XOffset))
|
|
448
463
|
: subBranchH + 14;
|
|
449
464
|
// box 高は必ず rowGap の一定割合に収める。 加算的な floor を置くと、 leaf が多く rowGap が
|
|
450
465
|
// 小さいとき floor が rowGap を超えて縦重なりする。 rowGap の 70% にすれば規模によらず gap が残る。
|