@cardenelabs/dragon 0.19.0 → 0.20.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/README.md CHANGED
@@ -72,7 +72,7 @@ flow:
72
72
  | `bands` | 動いている間の帯 (順序図。 `- DB: 1..2` の形で段の番号の区間を書く) |
73
73
  | `reveal` | 矢印をいつ出すか (`phase` = 段が名指しする矢印はその段まで描かない (既定) / `all` = 最初から全部描く) |
74
74
  | `direction` | 図の並ぶ向き (`縦` / `横`、英語なら `vertical` / `horizontal`)。 効くのは `flow` と `swimlane` だけ |
75
- | `palette` | 図の配色 (`kinari` = 生成りに茶 / `celadon` = 青磁に墨、日本語なら `生成り` / `青磁`) ER 図は書かなくても `kinari` になる |
75
+ | `palette` | 図の配色 (`kinari` = 生成りに茶 / `celadon` = 青磁に墨、日本語なら `生成り` / `青磁`) で、ER 図とクラス図は書かなくても `kinari` になり、書いた `palette:` が優先される |
76
76
 
77
77
  <!-- notation:top-level:end -->
78
78
 
package/dist/index.cjs CHANGED
@@ -1961,7 +1961,10 @@ var TOP_LEVEL_KEYS = [
1961
1961
  * cdl は色を持たないので、名前だけを図に載せる。 消費側 (`cdl-theme.css`) が名前を見て
1962
1962
  * 7 つの口 (台 / 行の面 / 縞 / 枠 / 字 / 型名 / 線) に色を当てる。
1963
1963
  *
1964
- * ER 図は書かなくても `kinari` になる = 別の色みにしたい時だけ書く。
1964
+ * ER 図とクラス図は書かなくても `kinari` (生成りに茶) になる。 どちらも箱の作りが同じ
1965
+ * (行頭の印 + 左に名前 + 右に型) で、名前と型が離れて並ぶため、行を横に追う目印
1966
+ * (行の縞) が要る。 縞の色は配色からしか来ないので、既定が無いと縞が箱の面と同じ色に
1967
+ * 落ちて 1 本も出ない。 書き手が `palette:` を書いた時はそちらが勝つ。
1965
1968
  */
1966
1969
  "palette"
1967
1970
  ];
@@ -5271,8 +5274,9 @@ function \u9759\u6B62\u3057\u305F\u56F3\u306E\u7126\u70B9\u3092\u5916\u3059(diag
5271
5274
  phase.activate = phase.activate.filter((id) => !\u7BB1.has(id));
5272
5275
  }
5273
5276
  }
5277
+ var \u65E2\u5B9A\u306E\u914D\u8272\u3092\u6301\u3064\u56F3\u7A2E = /* @__PURE__ */ new Set(["er", "class"]);
5274
5278
  function \u914D\u8272\u3068\u7E1E\u3092\u5F53\u3066\u308B(diagram2, doc) {
5275
- const \u914D\u8272 = doc.palette ?? (doc.type === "er" ? "kinari" : void 0);
5279
+ const \u914D\u8272 = doc.palette ?? (\u65E2\u5B9A\u306E\u914D\u8272\u3092\u6301\u3064\u56F3\u7A2E.has(doc.type) ? "kinari" : void 0);
5276
5280
  if (\u914D\u8272 !== void 0) diagram2.palette = \u914D\u8272;
5277
5281
  if (doc.type !== "er") return;
5278
5282
  for (const node of diagram2.nodes) {
@@ -8579,7 +8583,18 @@ var \u7E26\u5217\u3092\u9078\u3079\u308B\u56F3\u7A2E = /* @__PURE__ */ new Set([
8579
8583
  "topology",
8580
8584
  "swimlane",
8581
8585
  "class",
8582
- "state"
8586
+ "state",
8587
+ /*
8588
+ * ER 図 (#1571)。
8589
+ *
8590
+ * `er` の組み立て器は実体 1 つにつき帯を 1 本作り、必ず段 0 に置く = 表が横 1 列にしか
8591
+ * 並ばない。 関係を 4 本持つ実体があると、どう並べ替えても 2 本は隣を飛び越す
8592
+ * (意匠帳 `docs/design/er/note.md` § 記法の制約 が 4 通りを実測しており、1 列は縦横比 7.0 /
8593
+ * 最長の線 4068、格子は 3.5 / 836)。
8594
+ *
8595
+ * **全ての箱が縦列を書いた時だけ** 効くので、書かない図はいままでどおり組み立て器が並べる。
8596
+ */
8597
+ "er"
8583
8598
  ]);
8584
8599
  function \u66F8\u3044\u305F\u7E26\u5217\u306B\u7F6E\u304F(kind, doc) {
8585
8600
  if (!\u7E26\u5217\u3092\u9078\u3079\u308B\u56F3\u7A2E.has(kind)) return false;
@@ -13073,7 +13088,7 @@ var diagram_default = {
13073
13088
  "kinari",
13074
13089
  "celadon"
13075
13090
  ],
13076
- description: "\u56F3\u306E\u914D\u8272\u3002 kinari = \u751F\u6210\u308A\u306B\u8336 (ER \u56F3\u306E\u65E2\u5B9A)\u3002 celadon = \u9752\u78C1\u306B\u58A8\u3002 \u540D\u524D\u3060\u3051\u304C\u56F3\u306B\u8F09\u308A\u3001\u8272\u306E\u5024\u306F\u6D88\u8CBB\u5074\u304C\u6C7A\u3081\u308B\u3002"
13091
+ description: "\u56F3\u306E\u914D\u8272 (`kinari` = \u751F\u6210\u308A\u306B\u8336\u3001`celadon` = \u9752\u78C1\u306B\u58A8) \u3067\u3001ER \u56F3\u3068\u30AF\u30E9\u30B9\u56F3\u306F\u66F8\u304B\u306A\u304F\u3066\u3082 `kinari` \u306B\u306A\u308A\u3001\u66F8\u3044\u305F `palette` \u304C\u512A\u5148\u3055\u308C\u3001\u540D\u524D\u3060\u3051\u304C\u56F3\u306B\u8F09\u3063\u3066\u8272\u306E\u5024\u306F\u6D88\u8CBB\u5074\u304C\u6C7A\u3081\u308B\u3002"
13077
13092
  },
13078
13093
  reveal: {
13079
13094
  type: "string",