@cardenelabs/dragon 0.32.0 → 0.34.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 +1 -1
- package/dist/index.cjs +116 -61
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +25 -23
- package/dist/index.d.ts +25 -23
- package/dist/index.js +116 -61
- package/dist/index.js.map +1 -1
- package/package.json +2 -2
- package/src/compile/actor-ids.ts +1 -1
- package/src/compile/actor-option-notice.ts +1 -1
- package/src/compile/edge-option-notice.ts +1 -1
- package/src/compile/kinds.ts +7 -16
- package/src/compile/lanes.ts +1 -1
- package/src/compile/notice.ts +1 -1
- package/src/compile/order.ts +8 -13
- package/src/compile.ts +2 -6
- package/src/focus.ts +1 -1
- package/src/json-parser.ts +26 -9
- package/src/keywords.ts +11 -8
- package/src/schemas/diagram.json +2 -3
- package/src/types.ts +4 -4
- package/src/v05/parser.ts +47 -43
- package/src/v05/removed-syntax.ts +115 -0
package/dist/index.d.cts
CHANGED
|
@@ -26,9 +26,8 @@ declare const DIRECTION_ALIAS: Record<string, DslDirection>;
|
|
|
26
26
|
*
|
|
27
27
|
* 書かなければ **書いた順** のまま。 `種類` と書くと箱の種類で並べ替えてから置く。
|
|
28
28
|
*
|
|
29
|
-
* これは図の型として持っていた差を語に出したもの。
|
|
30
|
-
*
|
|
31
|
-
* 書いていた。 **型が 1 つ増えるたびに条件を 2 つ並べる形**になるので、差が並べ替えだけなら
|
|
29
|
+
* これは図の型として持っていた差を語に出したもの。 並べ替えの鍵しか持たない型が在り、
|
|
30
|
+
* `compile.ts` は「順序図 または その型」 という条件を 6 か所で書いていた。 **型が 1 つ増えるたびに条件を 2 つ並べる形**になるので、差が並べ替えだけなら
|
|
32
31
|
* 型ではなく語で表す。
|
|
33
32
|
*/
|
|
34
33
|
declare const ORDERS: readonly ["種類"];
|
|
@@ -102,8 +101,12 @@ declare function resolveLegendMark(s: string): LegendMark | null;
|
|
|
102
101
|
* 公開済みの関数なので窓口を残し、どの意匠でも組み立てと同じ値を返す。
|
|
103
102
|
*/
|
|
104
103
|
declare function 意匠の字の測り方(_theme: DslTheme): "widest";
|
|
105
|
-
/**
|
|
106
|
-
|
|
104
|
+
/**
|
|
105
|
+
* 意匠と節から円の区画間の弧の長さを引く (#2871 / #2926)。
|
|
106
|
+
*
|
|
107
|
+
* 区画の形を意匠で変えないため値は返さない。公開済みの関数なので互換の窓口だけを残す。
|
|
108
|
+
*/
|
|
109
|
+
declare function 意匠の円の区画の間(_theme: DslTheme, _node: Pick<CdlNode, "kind">): undefined;
|
|
107
110
|
/** `barCornerRadii` が効く棒を描く節か。 */
|
|
108
111
|
declare function 棒を描く節か(node: Pick<CdlNode, "kind" | "funnelForm">): boolean;
|
|
109
112
|
/**
|
|
@@ -183,16 +186,15 @@ declare const PRESET_TYPES: ReadonlySet<PresetType>;
|
|
|
183
186
|
* 図種の別名 (#2655 / #2657)。
|
|
184
187
|
*
|
|
185
188
|
* **差が語 1 つしかない図種を、畳んだ先の型とその語に読み替える**。
|
|
189
|
+
* 数を描く 9 つは `chart` + `shape: <綴り>` に読み替える = 同じ組み立て関数に渡す文字列 2 つ
|
|
190
|
+
* しか違わない。
|
|
186
191
|
*
|
|
187
|
-
*
|
|
188
|
-
* |---|---|---|
|
|
189
|
-
* | `solidity` | `sequence` + `order: 種類` | 箱を種類で並べ替えるだけで、独自の組み立てを持たない |
|
|
190
|
-
* | 数を描く 9 つ | `chart` + `shape: <綴り>` | 同じ組み立て関数に渡す文字列 2 つしか違わない |
|
|
191
|
-
*
|
|
192
|
-
* 型として持つと、同じ扱いをする条件と表が型の数だけ増える。 `solidity` は
|
|
193
|
-
* 「順序図 または その型」 という条件を 12 か所に増やし、数を描く 9 つは 4 つの表に
|
|
192
|
+
* 型として持つと、同じ扱いをする条件と表が型の数だけ増える。 数を描く 9 つは 4 つの表に
|
|
194
193
|
* 同じ値の行を 9 行ずつ並べていた (足す人が 1 か所書き忘れると黙って外れる)。
|
|
195
194
|
*
|
|
195
|
+
* `solidity` も `sequence` + `order: 種類` への別名だったが、特定の技術に向けた図種なので
|
|
196
|
+
* 外した (#2947)。 書いた人には `removed-syntax.ts` の表が置き換え先を返す。
|
|
197
|
+
*
|
|
196
198
|
* **読み替えは読み取りの入口 1 か所に閉じる**。 ここを通った後は古い綴りが
|
|
197
199
|
* どこにも残らないので、組み立て側は畳んだ先の型として 1 通りに扱える。
|
|
198
200
|
*
|
|
@@ -200,21 +202,20 @@ declare const PRESET_TYPES: ReadonlySet<PresetType>;
|
|
|
200
202
|
*/
|
|
201
203
|
type 読み替え先 = {
|
|
202
204
|
type: PresetType;
|
|
203
|
-
order?: DslOrder;
|
|
204
205
|
shape?: DslShape;
|
|
205
206
|
};
|
|
206
207
|
declare const TYPE_ALIASES: ReadonlyMap<string, 読み替え先>;
|
|
207
208
|
/**
|
|
208
209
|
* 記法だけが持つ種類。 描画側には無いが、 図種ごとの組み立てで意味を持つ。
|
|
209
210
|
*
|
|
210
|
-
* `
|
|
211
|
-
*
|
|
211
|
+
* `entity` / `state` は ER 図と状態遷移図に使う。 Solidity の図の役割分け
|
|
212
|
+
* (`contract` / `eoa` など) は外した (#2947、置き換え先は `removed-syntax.ts`)。
|
|
212
213
|
*
|
|
213
214
|
* **描画側へ渡す前に必ず読み替える** (`compile.ts` の `描ける種別`)。 読み替えを通さずに渡すと
|
|
214
215
|
* 図の組み立てが落ちる = 描画側は知らない種類の大きさを引けない (#1420 で実測、
|
|
215
216
|
* `Cannot read properties of undefined (reading 'h')`)。
|
|
216
217
|
*/
|
|
217
|
-
declare const DSL_ONLY_KINDS: readonly ["entity", "state", "
|
|
218
|
+
declare const DSL_ONLY_KINDS: readonly ["entity", "state", "loop"];
|
|
218
219
|
/** 記法だけが持つ種類。 描画側の `NodeKind` には含まれない */
|
|
219
220
|
type DslOnlyKind = (typeof DSL_ONLY_KINDS)[number];
|
|
220
221
|
/**
|
|
@@ -385,8 +386,8 @@ declare function orderByDependency(items: ReadonlyArray<{
|
|
|
385
386
|
/**
|
|
386
387
|
* 記法が書ける箱の種類 (#1420)。
|
|
387
388
|
*
|
|
388
|
-
* 描画できる種類 (`NodeKind`) に、**記法だけが持つ種類** (`
|
|
389
|
-
* 後者は図種ごとの役割分け (
|
|
389
|
+
* 描画できる種類 (`NodeKind`) に、**記法だけが持つ種類** (`entity` / `state` など) を足す。
|
|
390
|
+
* 後者は図種ごとの役割分け (ER 図の実体など) に使い、描画側へ渡す手前で
|
|
390
391
|
* `compile.ts` の `描ける種別` が読み替える。
|
|
391
392
|
*
|
|
392
393
|
* `NodeKind` だけに縛っていた間、記法が受ける値を型が表せていなかった。
|
|
@@ -737,8 +738,8 @@ type DslDocument = {
|
|
|
737
738
|
* 効くのは順序図だけで、他の図種は並び方そのものが読み方を担うため書いても効かない
|
|
738
739
|
* (知らせを出す)。
|
|
739
740
|
*
|
|
740
|
-
*
|
|
741
|
-
*
|
|
741
|
+
* 並べ替えの鍵しか持たない図種を畳んだ先。 その図種 (`solidity`) は特定の技術に向けた
|
|
742
|
+
* 名前なので外した (#2947)。
|
|
742
743
|
*/
|
|
743
744
|
order?: DslOrder;
|
|
744
745
|
/** `order:` を書いた行。 効かない時の知らせで、書いた場所を指すために持つ */
|
|
@@ -2083,7 +2084,7 @@ declare function 書いた場所の鍵(...道: readonly (string | number)[]): st
|
|
|
2083
2084
|
*/
|
|
2084
2085
|
|
|
2085
2086
|
/** 古い綴りで書いた図種 (#2655 / #2657)。 受ける値は `TYPE_ALIASES` が SSOT */
|
|
2086
|
-
type 図種の別名 =
|
|
2087
|
+
type 図種の別名 = DslShape;
|
|
2087
2088
|
/**
|
|
2088
2089
|
* LLM 向け JSON DSL の入力 shape。 YAML DSL と 1:1 対応、 top-level は flat な object。
|
|
2089
2090
|
*/
|
|
@@ -2093,8 +2094,9 @@ interface DragonJson {
|
|
|
2093
2094
|
/**
|
|
2094
2095
|
* preset type (必須)。 受け付ける値は `PRESET_TYPES` と `TYPE_ALIASES` が SSOT。
|
|
2095
2096
|
*
|
|
2096
|
-
* 別名 (#2655 / #2657) は読み取りで図種と語の 2 つに開く = `
|
|
2097
|
-
*
|
|
2097
|
+
* 別名 (#2655 / #2657) は読み取りで図種と語の 2 つに開く = `pie` と書いた JSON は
|
|
2098
|
+
* 数を描く図 + 円の形 として読まれる。 外した図種 (`solidity`) は置き換え先を誤りとして返す
|
|
2099
|
+
* (#2947、`v05/removed-syntax.ts`)。
|
|
2098
2100
|
*/
|
|
2099
2101
|
type: PresetType | 図種の別名;
|
|
2100
2102
|
/** 円グラフの見せ方。 */
|
package/dist/index.d.ts
CHANGED
|
@@ -26,9 +26,8 @@ declare const DIRECTION_ALIAS: Record<string, DslDirection>;
|
|
|
26
26
|
*
|
|
27
27
|
* 書かなければ **書いた順** のまま。 `種類` と書くと箱の種類で並べ替えてから置く。
|
|
28
28
|
*
|
|
29
|
-
* これは図の型として持っていた差を語に出したもの。
|
|
30
|
-
*
|
|
31
|
-
* 書いていた。 **型が 1 つ増えるたびに条件を 2 つ並べる形**になるので、差が並べ替えだけなら
|
|
29
|
+
* これは図の型として持っていた差を語に出したもの。 並べ替えの鍵しか持たない型が在り、
|
|
30
|
+
* `compile.ts` は「順序図 または その型」 という条件を 6 か所で書いていた。 **型が 1 つ増えるたびに条件を 2 つ並べる形**になるので、差が並べ替えだけなら
|
|
32
31
|
* 型ではなく語で表す。
|
|
33
32
|
*/
|
|
34
33
|
declare const ORDERS: readonly ["種類"];
|
|
@@ -102,8 +101,12 @@ declare function resolveLegendMark(s: string): LegendMark | null;
|
|
|
102
101
|
* 公開済みの関数なので窓口を残し、どの意匠でも組み立てと同じ値を返す。
|
|
103
102
|
*/
|
|
104
103
|
declare function 意匠の字の測り方(_theme: DslTheme): "widest";
|
|
105
|
-
/**
|
|
106
|
-
|
|
104
|
+
/**
|
|
105
|
+
* 意匠と節から円の区画間の弧の長さを引く (#2871 / #2926)。
|
|
106
|
+
*
|
|
107
|
+
* 区画の形を意匠で変えないため値は返さない。公開済みの関数なので互換の窓口だけを残す。
|
|
108
|
+
*/
|
|
109
|
+
declare function 意匠の円の区画の間(_theme: DslTheme, _node: Pick<CdlNode, "kind">): undefined;
|
|
107
110
|
/** `barCornerRadii` が効く棒を描く節か。 */
|
|
108
111
|
declare function 棒を描く節か(node: Pick<CdlNode, "kind" | "funnelForm">): boolean;
|
|
109
112
|
/**
|
|
@@ -183,16 +186,15 @@ declare const PRESET_TYPES: ReadonlySet<PresetType>;
|
|
|
183
186
|
* 図種の別名 (#2655 / #2657)。
|
|
184
187
|
*
|
|
185
188
|
* **差が語 1 つしかない図種を、畳んだ先の型とその語に読み替える**。
|
|
189
|
+
* 数を描く 9 つは `chart` + `shape: <綴り>` に読み替える = 同じ組み立て関数に渡す文字列 2 つ
|
|
190
|
+
* しか違わない。
|
|
186
191
|
*
|
|
187
|
-
*
|
|
188
|
-
* |---|---|---|
|
|
189
|
-
* | `solidity` | `sequence` + `order: 種類` | 箱を種類で並べ替えるだけで、独自の組み立てを持たない |
|
|
190
|
-
* | 数を描く 9 つ | `chart` + `shape: <綴り>` | 同じ組み立て関数に渡す文字列 2 つしか違わない |
|
|
191
|
-
*
|
|
192
|
-
* 型として持つと、同じ扱いをする条件と表が型の数だけ増える。 `solidity` は
|
|
193
|
-
* 「順序図 または その型」 という条件を 12 か所に増やし、数を描く 9 つは 4 つの表に
|
|
192
|
+
* 型として持つと、同じ扱いをする条件と表が型の数だけ増える。 数を描く 9 つは 4 つの表に
|
|
194
193
|
* 同じ値の行を 9 行ずつ並べていた (足す人が 1 か所書き忘れると黙って外れる)。
|
|
195
194
|
*
|
|
195
|
+
* `solidity` も `sequence` + `order: 種類` への別名だったが、特定の技術に向けた図種なので
|
|
196
|
+
* 外した (#2947)。 書いた人には `removed-syntax.ts` の表が置き換え先を返す。
|
|
197
|
+
*
|
|
196
198
|
* **読み替えは読み取りの入口 1 か所に閉じる**。 ここを通った後は古い綴りが
|
|
197
199
|
* どこにも残らないので、組み立て側は畳んだ先の型として 1 通りに扱える。
|
|
198
200
|
*
|
|
@@ -200,21 +202,20 @@ declare const PRESET_TYPES: ReadonlySet<PresetType>;
|
|
|
200
202
|
*/
|
|
201
203
|
type 読み替え先 = {
|
|
202
204
|
type: PresetType;
|
|
203
|
-
order?: DslOrder;
|
|
204
205
|
shape?: DslShape;
|
|
205
206
|
};
|
|
206
207
|
declare const TYPE_ALIASES: ReadonlyMap<string, 読み替え先>;
|
|
207
208
|
/**
|
|
208
209
|
* 記法だけが持つ種類。 描画側には無いが、 図種ごとの組み立てで意味を持つ。
|
|
209
210
|
*
|
|
210
|
-
* `
|
|
211
|
-
*
|
|
211
|
+
* `entity` / `state` は ER 図と状態遷移図に使う。 Solidity の図の役割分け
|
|
212
|
+
* (`contract` / `eoa` など) は外した (#2947、置き換え先は `removed-syntax.ts`)。
|
|
212
213
|
*
|
|
213
214
|
* **描画側へ渡す前に必ず読み替える** (`compile.ts` の `描ける種別`)。 読み替えを通さずに渡すと
|
|
214
215
|
* 図の組み立てが落ちる = 描画側は知らない種類の大きさを引けない (#1420 で実測、
|
|
215
216
|
* `Cannot read properties of undefined (reading 'h')`)。
|
|
216
217
|
*/
|
|
217
|
-
declare const DSL_ONLY_KINDS: readonly ["entity", "state", "
|
|
218
|
+
declare const DSL_ONLY_KINDS: readonly ["entity", "state", "loop"];
|
|
218
219
|
/** 記法だけが持つ種類。 描画側の `NodeKind` には含まれない */
|
|
219
220
|
type DslOnlyKind = (typeof DSL_ONLY_KINDS)[number];
|
|
220
221
|
/**
|
|
@@ -385,8 +386,8 @@ declare function orderByDependency(items: ReadonlyArray<{
|
|
|
385
386
|
/**
|
|
386
387
|
* 記法が書ける箱の種類 (#1420)。
|
|
387
388
|
*
|
|
388
|
-
* 描画できる種類 (`NodeKind`) に、**記法だけが持つ種類** (`
|
|
389
|
-
* 後者は図種ごとの役割分け (
|
|
389
|
+
* 描画できる種類 (`NodeKind`) に、**記法だけが持つ種類** (`entity` / `state` など) を足す。
|
|
390
|
+
* 後者は図種ごとの役割分け (ER 図の実体など) に使い、描画側へ渡す手前で
|
|
390
391
|
* `compile.ts` の `描ける種別` が読み替える。
|
|
391
392
|
*
|
|
392
393
|
* `NodeKind` だけに縛っていた間、記法が受ける値を型が表せていなかった。
|
|
@@ -737,8 +738,8 @@ type DslDocument = {
|
|
|
737
738
|
* 効くのは順序図だけで、他の図種は並び方そのものが読み方を担うため書いても効かない
|
|
738
739
|
* (知らせを出す)。
|
|
739
740
|
*
|
|
740
|
-
*
|
|
741
|
-
*
|
|
741
|
+
* 並べ替えの鍵しか持たない図種を畳んだ先。 その図種 (`solidity`) は特定の技術に向けた
|
|
742
|
+
* 名前なので外した (#2947)。
|
|
742
743
|
*/
|
|
743
744
|
order?: DslOrder;
|
|
744
745
|
/** `order:` を書いた行。 効かない時の知らせで、書いた場所を指すために持つ */
|
|
@@ -2083,7 +2084,7 @@ declare function 書いた場所の鍵(...道: readonly (string | number)[]): st
|
|
|
2083
2084
|
*/
|
|
2084
2085
|
|
|
2085
2086
|
/** 古い綴りで書いた図種 (#2655 / #2657)。 受ける値は `TYPE_ALIASES` が SSOT */
|
|
2086
|
-
type 図種の別名 =
|
|
2087
|
+
type 図種の別名 = DslShape;
|
|
2087
2088
|
/**
|
|
2088
2089
|
* LLM 向け JSON DSL の入力 shape。 YAML DSL と 1:1 対応、 top-level は flat な object。
|
|
2089
2090
|
*/
|
|
@@ -2093,8 +2094,9 @@ interface DragonJson {
|
|
|
2093
2094
|
/**
|
|
2094
2095
|
* preset type (必須)。 受け付ける値は `PRESET_TYPES` と `TYPE_ALIASES` が SSOT。
|
|
2095
2096
|
*
|
|
2096
|
-
* 別名 (#2655 / #2657) は読み取りで図種と語の 2 つに開く = `
|
|
2097
|
-
*
|
|
2097
|
+
* 別名 (#2655 / #2657) は読み取りで図種と語の 2 つに開く = `pie` と書いた JSON は
|
|
2098
|
+
* 数を描く図 + 円の形 として読まれる。 外した図種 (`solidity`) は置き換え先を誤りとして返す
|
|
2099
|
+
* (#2947、`v05/removed-syntax.ts`)。
|
|
2098
2100
|
*/
|
|
2099
2101
|
type: PresetType | 図種の別名;
|
|
2100
2102
|
/** 円グラフの見せ方。 */
|
package/dist/index.js
CHANGED
|
@@ -111,8 +111,8 @@ function resolveLegendMark(s) {
|
|
|
111
111
|
function \u610F\u5320\u306E\u5B57\u306E\u6E2C\u308A\u65B9(_theme) {
|
|
112
112
|
return "widest";
|
|
113
113
|
}
|
|
114
|
-
function \u610F\u5320\u306E\u5186\u306E\u533A\u753B\u306E\u9593(
|
|
115
|
-
return
|
|
114
|
+
function \u610F\u5320\u306E\u5186\u306E\u533A\u753B\u306E\u9593(_theme, _node) {
|
|
115
|
+
return void 0;
|
|
116
116
|
}
|
|
117
117
|
function \u68D2\u3092\u63CF\u304F\u7BC0\u304B(node) {
|
|
118
118
|
return node.kind === "chart-bar" || node.kind === "gantt-timeline" || node.kind === "chart-stacked-bar" || node.kind === "funnel-stages" && node.funnelForm === "proportional-bars";
|
|
@@ -550,17 +550,10 @@ function \u5F8C\u308D\u3078\u623B\u308B\u77E2\u5370\u304B(kind, fromId, toId, \u
|
|
|
550
550
|
|
|
551
551
|
// src/compile/order.ts
|
|
552
552
|
var \u7A2E\u985E\u306E\u6BB5 = {
|
|
553
|
-
eoa: 0,
|
|
554
553
|
actor: 0,
|
|
555
|
-
multisig: 0,
|
|
556
554
|
signer: 0,
|
|
557
|
-
|
|
558
|
-
|
|
559
|
-
proxy: 1,
|
|
560
|
-
library: 1,
|
|
561
|
-
interface: 1,
|
|
562
|
-
storage: 2,
|
|
563
|
-
event: 3
|
|
555
|
+
storage: 1,
|
|
556
|
+
event: 2
|
|
564
557
|
};
|
|
565
558
|
var \u8868\u306B\u7121\u3044\u7A2E\u985E\u306E\u6BB5 = 5;
|
|
566
559
|
var \u4E26\u3073\u9806\u3092\u9078\u3079\u308B\u56F3\u7A2E = /* @__PURE__ */ new Set(["sequence"]);
|
|
@@ -620,12 +613,6 @@ function \u59CB\u307E\u308A\u3068\u7D42\u308F\u308A\u306E\u6C7A\u3081\u65B9(doc,
|
|
|
620
613
|
var \u8A18\u6CD5\u3060\u3051\u306E\u7A2E\u985E\u306E\u8AAD\u307F\u66FF\u3048 = {
|
|
621
614
|
entity: "storage",
|
|
622
615
|
state: "card",
|
|
623
|
-
contract: "card",
|
|
624
|
-
proxy: "card",
|
|
625
|
-
library: "card",
|
|
626
|
-
interface: "card",
|
|
627
|
-
eoa: "person",
|
|
628
|
-
multisig: "signer",
|
|
629
616
|
loop: "card"
|
|
630
617
|
};
|
|
631
618
|
function \u63CF\u3051\u308B\u7A2E\u5225(kind) {
|
|
@@ -3357,6 +3344,79 @@ function \u7DE8\u96C6\u8DDD\u96E2(a, b, \u4E0A\u9650) {
|
|
|
3357
3344
|
return \u524D[b.length];
|
|
3358
3345
|
}
|
|
3359
3346
|
|
|
3347
|
+
// src/v05/removed-syntax.ts
|
|
3348
|
+
var \u5916\u3057\u305F\u56F3\u7A2E = /* @__PURE__ */ new Map([
|
|
3349
|
+
["solidity", "`type: sequence` \u3068 `order: \u7A2E\u985E`"]
|
|
3350
|
+
]);
|
|
3351
|
+
var \u5916\u3057\u305F\u633F\u7D75\u306E\u7A2E\u985E = [
|
|
3352
|
+
"shape-kanban-card",
|
|
3353
|
+
"shape-message-bubble",
|
|
3354
|
+
"shape-gear",
|
|
3355
|
+
"shape-network-node",
|
|
3356
|
+
"shape-iot-sensor",
|
|
3357
|
+
"shape-robot-arm",
|
|
3358
|
+
"shape-satellite",
|
|
3359
|
+
"shape-website",
|
|
3360
|
+
"shape-cdn-edge",
|
|
3361
|
+
"shape-api-gateway",
|
|
3362
|
+
"shape-storefront",
|
|
3363
|
+
"shape-warehouse",
|
|
3364
|
+
"shape-online-shop",
|
|
3365
|
+
"shape-customer-service",
|
|
3366
|
+
"shape-lawyer",
|
|
3367
|
+
"shape-auditor",
|
|
3368
|
+
"shape-regulator",
|
|
3369
|
+
"shape-notary",
|
|
3370
|
+
"shape-trader",
|
|
3371
|
+
"shape-smart-contract",
|
|
3372
|
+
"shape-blockchain-block",
|
|
3373
|
+
"shape-blockchain",
|
|
3374
|
+
"shape-bitcoin-chain",
|
|
3375
|
+
"shape-ethereum-chain",
|
|
3376
|
+
"shape-blockchain-node",
|
|
3377
|
+
"shape-rpc-node",
|
|
3378
|
+
"shape-wallet",
|
|
3379
|
+
"shape-nft",
|
|
3380
|
+
"shape-token",
|
|
3381
|
+
"shape-bank",
|
|
3382
|
+
"shape-trust-bank",
|
|
3383
|
+
"shape-payment-provider",
|
|
3384
|
+
"shape-credit-card",
|
|
3385
|
+
"shape-brokerage",
|
|
3386
|
+
"shape-exchange",
|
|
3387
|
+
"shape-atm"
|
|
3388
|
+
];
|
|
3389
|
+
var \u633F\u7D75\u306E\u4EE3\u308F\u308A = "\u57FA\u672C\u306E\u5F62 (`shape-file` / `shape-cylinder` \u306A\u3069) \u3092\u4F7F\u3046\u304B\u3001\u7BB1\u306B `kindForm: icon` \u3068 `icon` \u3092\u66F8\u304F";
|
|
3390
|
+
var \u5916\u3057\u305F\u7A2E\u985E = new Map([
|
|
3391
|
+
["contract", "`card`"],
|
|
3392
|
+
["proxy", "`card`"],
|
|
3393
|
+
["library", "`card`"],
|
|
3394
|
+
["interface", "`card`"],
|
|
3395
|
+
["eoa", "`person`"],
|
|
3396
|
+
["multisig", "`signer`"],
|
|
3397
|
+
["alb", "`api`"],
|
|
3398
|
+
["ecs", "`microservice`"],
|
|
3399
|
+
["iam", "`admin`"],
|
|
3400
|
+
["kms", "`admin`"],
|
|
3401
|
+
["lambda", "`function`"],
|
|
3402
|
+
["rds", "`database`"],
|
|
3403
|
+
["s3", "`storage`"],
|
|
3404
|
+
...\u5916\u3057\u305F\u633F\u7D75\u306E\u7A2E\u985E.map((k) => [k, \u633F\u7D75\u306E\u4EE3\u308F\u308A])
|
|
3405
|
+
]);
|
|
3406
|
+
function \u5916\u3057\u305F\u7A2E\u985E\u306E\u77E5\u3089\u305B(kind) {
|
|
3407
|
+
const \u4EE3\u308F\u308A = \u5916\u3057\u305F\u7A2E\u985E.get(kind);
|
|
3408
|
+
if (\u4EE3\u308F\u308A === void 0) return void 0;
|
|
3409
|
+
return {
|
|
3410
|
+
message: `\u7BB1\u306E\u7A2E\u985E "${kind}" \u306F\u5916\u3057\u307E\u3057\u305F`,
|
|
3411
|
+
hint: \u5916\u3057\u305F\u633F\u7D75\u306E\u7A2E\u985E.includes(kind) ? \u4EE3\u308F\u308A : `\u4EE3\u308F\u308A\u306B ${\u4EE3\u308F\u308A} \u3092\u66F8\u304F`
|
|
3412
|
+
};
|
|
3413
|
+
}
|
|
3414
|
+
function \u5916\u3057\u305F\u56F3\u7A2E\u306E\u77E5\u3089\u305B(type) {
|
|
3415
|
+
const \u4EE3\u308F\u308A = \u5916\u3057\u305F\u56F3\u7A2E.get(type);
|
|
3416
|
+
if (\u4EE3\u308F\u308A === void 0) return void 0;
|
|
3417
|
+
return { message: `\u56F3\u7A2E "${type}" \u306F\u5916\u3057\u307E\u3057\u305F`, hint: `\u4EE3\u308F\u308A\u306B ${\u4EE3\u308F\u308A} \u3092\u66F8\u304F` };
|
|
3418
|
+
}
|
|
3419
|
+
|
|
3360
3420
|
// src/relative-pos.ts
|
|
3361
3421
|
var RELATIVE_DIRECTIONS = ["right", "left", "above", "below"];
|
|
3362
3422
|
var RELATIVE_GAP_DEFAULT = 160;
|
|
@@ -5237,7 +5297,6 @@ var PRESET_TYPES = /* @__PURE__ */ new Set([
|
|
|
5237
5297
|
"mind"
|
|
5238
5298
|
]);
|
|
5239
5299
|
var TYPE_ALIASES = new Map([
|
|
5240
|
-
["solidity", { type: "sequence", order: "\u7A2E\u985E" }],
|
|
5241
5300
|
...SHAPES.map((s) => [s, { type: "chart", shape: s }])
|
|
5242
5301
|
]);
|
|
5243
5302
|
function shape\u306E\u6848\u5185(type) {
|
|
@@ -5249,34 +5308,14 @@ var NODE_KIND_DEFAULT = "actor";
|
|
|
5249
5308
|
var DSL_ONLY_KINDS = [
|
|
5250
5309
|
"entity",
|
|
5251
5310
|
"state",
|
|
5252
|
-
"contract",
|
|
5253
|
-
"eoa",
|
|
5254
|
-
"multisig",
|
|
5255
|
-
"proxy",
|
|
5256
|
-
"library",
|
|
5257
|
-
"interface",
|
|
5258
5311
|
// 繰り返しの箱 (#2523)。 描画側は分かれ道の図の形としてだけ持ち、種類としては持たないため
|
|
5259
5312
|
// ここに置く。 分かれ道の図では形に読み替わり (`compile/flowchart.ts`)、それ以外の図種では
|
|
5260
5313
|
// `記法だけの種類の読み替え` が札に落とす
|
|
5261
5314
|
"loop"
|
|
5262
5315
|
];
|
|
5263
5316
|
var INFRA_KIND_ALIAS = {
|
|
5264
|
-
alb: "shape-api-gateway",
|
|
5265
|
-
// 入口で振り分ける
|
|
5266
5317
|
browser: "frontend",
|
|
5267
5318
|
// 画面側
|
|
5268
|
-
ecs: "microservice",
|
|
5269
|
-
// コンテナ群
|
|
5270
|
-
iam: "admin",
|
|
5271
|
-
// 権限を守る
|
|
5272
|
-
kms: "admin",
|
|
5273
|
-
// 鍵を守る
|
|
5274
|
-
lambda: "function",
|
|
5275
|
-
// 呼ぶと動く
|
|
5276
|
-
rds: "database",
|
|
5277
|
-
// 表を持つ
|
|
5278
|
-
s3: "storage",
|
|
5279
|
-
// 置き場
|
|
5280
5319
|
secret: "storage",
|
|
5281
5320
|
// 機密の置き場
|
|
5282
5321
|
user: "person",
|
|
@@ -5943,12 +5982,12 @@ function parseTextDslV05(src) {
|
|
|
5943
5982
|
if (head.key === "type") {
|
|
5944
5983
|
const v = (head.value ?? "").trim().toLowerCase();
|
|
5945
5984
|
const \u5225\u540D = TYPE_ALIASES.get(v);
|
|
5946
|
-
|
|
5985
|
+
const \u5916\u3057\u305F = \u5916\u3057\u305F\u56F3\u7A2E\u306E\u77E5\u3089\u305B(v);
|
|
5986
|
+
if (\u5916\u3057\u305F !== void 0) {
|
|
5987
|
+
errors.push({ line: line.no, ...\u5916\u3057\u305F });
|
|
5988
|
+
type = "sequence";
|
|
5989
|
+
} else if (\u5225\u540D !== void 0) {
|
|
5947
5990
|
type = \u5225\u540D.type;
|
|
5948
|
-
if (order === null && \u5225\u540D.order !== void 0) {
|
|
5949
|
-
order = \u5225\u540D.order;
|
|
5950
|
-
orderLine = line.no;
|
|
5951
|
-
}
|
|
5952
5991
|
if (\u5225\u540D.shape !== void 0) {
|
|
5953
5992
|
aliasShape = \u5225\u540D.shape;
|
|
5954
5993
|
aliasShapeLine = line.no;
|
|
@@ -7707,6 +7746,12 @@ function reportV04Kind(kindRaw, line, errors) {
|
|
|
7707
7746
|
hint: `v0.5 \u3067\u306F\u82F1\u8A9E\u3067\u66F8\u304F (\`${\u82F1\u8A9E}\`)`
|
|
7708
7747
|
});
|
|
7709
7748
|
}
|
|
7749
|
+
function reportRemovedKind(kindRaw, line, errors) {
|
|
7750
|
+
const \u77E5\u3089\u305B = \u5916\u3057\u305F\u7A2E\u985E\u306E\u77E5\u3089\u305B(kindRaw);
|
|
7751
|
+
if (\u77E5\u3089\u305B === void 0) return false;
|
|
7752
|
+
errors.push({ line, ...\u77E5\u3089\u305B });
|
|
7753
|
+
return true;
|
|
7754
|
+
}
|
|
7710
7755
|
var COLOR_KEYS = /* @__PURE__ */ new Set(["\u8272", "color", "tone"]);
|
|
7711
7756
|
var SCALE_KEYS = /* @__PURE__ */ new Set(["scale", "\u500D\u7387"]);
|
|
7712
7757
|
var SCALE_ORDER = ["scale", "\u500D\u7387"];
|
|
@@ -7756,9 +7801,10 @@ function applyContinuationLines(actor, rest, errors) {
|
|
|
7756
7801
|
case "\u7A2E\u985E": {
|
|
7757
7802
|
const k = stripQuotes(raw).toLowerCase();
|
|
7758
7803
|
reportV04Kind(k, ln.no, errors);
|
|
7759
|
-
const
|
|
7760
|
-
|
|
7761
|
-
out.
|
|
7804
|
+
const \u5916\u3057\u305F = reportRemovedKind(k, ln.no, errors);
|
|
7805
|
+
const isPart = k !== "" && !\u5916\u3057\u305F && !NODE_KIND_VALID.has(k);
|
|
7806
|
+
out.kind = isPart || \u5916\u3057\u305F ? NODE_KIND_DEFAULT : resolveNodeKind(k);
|
|
7807
|
+
out.kindWritten = k !== "" && !isPart && !\u5916\u3057\u305F;
|
|
7762
7808
|
out.partId = isPart ? k : void 0;
|
|
7763
7809
|
break;
|
|
7764
7810
|
}
|
|
@@ -8576,7 +8622,8 @@ function parseActor2(line, errors) {
|
|
|
8576
8622
|
if (!namePart2) return null;
|
|
8577
8623
|
const opts = \u4E2D\u62EC\u5F27\u306E\u5225\u540D\u3092\u5BC4\u305B\u308B(parseInlineMapping(mapMatch.inner));
|
|
8578
8624
|
const kindRaw = (opts.kind ?? "").toLowerCase();
|
|
8579
|
-
const
|
|
8625
|
+
const \u5916\u3057\u305F = reportRemovedKind(kindRaw, line.no, errors);
|
|
8626
|
+
const isPart = kindRaw !== "" && !\u5916\u3057\u305F && !NODE_KIND_VALID.has(kindRaw);
|
|
8580
8627
|
const inlineScale = resolveScale(writtenScaleFields(mapMatch.inner), line.no, errors);
|
|
8581
8628
|
reportScaleOnNonPart(isPart, inlineScale.keys[0], line.no, errors);
|
|
8582
8629
|
reportUnknownInlineKeys(isPart, mapMatch.inner, line.no, errors);
|
|
@@ -8622,7 +8669,7 @@ function parseActor2(line, errors) {
|
|
|
8622
8669
|
kind,
|
|
8623
8670
|
// parts 候補は `kind` を既定に倒して `partId` へ退避するため、 名札に載せる種類としては
|
|
8624
8671
|
// 「書かなかった」 と同じ扱いにする (#1058)
|
|
8625
|
-
kindWritten: kindRaw !== "" && !isPart,
|
|
8672
|
+
kindWritten: kindRaw !== "" && !isPart && !\u5916\u3057\u305F,
|
|
8626
8673
|
subtitle: opts.subtitle,
|
|
8627
8674
|
kindForm: \u9589\u3058\u305F\u7BB1\u306E\u5024("kindForm", KIND_FORM_VALUES),
|
|
8628
8675
|
icon: \u9589\u3058\u305F\u7BB1\u306E\u5024("icon", CDL_ICON_VALUES),
|
|
@@ -8693,7 +8740,8 @@ function parseActor2(line, errors) {
|
|
|
8693
8740
|
const rest = raw.slice(idx + 1).trim();
|
|
8694
8741
|
if (!namePart2) return null;
|
|
8695
8742
|
const v = classifyValues(splitValues(rest), line.no, errors);
|
|
8696
|
-
const
|
|
8743
|
+
const \u5916\u3057\u305F = reportRemovedKind(v.kind, line.no, errors);
|
|
8744
|
+
const isPart = v.kind !== "" && !\u5916\u3057\u305F && !NODE_KIND_VALID.has(v.kind);
|
|
8697
8745
|
reportV04Kind(v.kind, line.no, errors);
|
|
8698
8746
|
reportScaleOnNonPart(isPart, v.scaleKeys?.[0], line.no, errors);
|
|
8699
8747
|
const kind = isPart ? NODE_KIND_DEFAULT : resolveNodeKind(NODE_KIND_VALID.has(v.kind) ? v.kind : "");
|
|
@@ -8702,7 +8750,7 @@ function parseActor2(line, errors) {
|
|
|
8702
8750
|
kind,
|
|
8703
8751
|
// parts 候補は `kind` を既定に倒して `partId` へ退避するため、 名札に載せる種類としては
|
|
8704
8752
|
// 「書かなかった」 と同じ扱いにする (#1058)
|
|
8705
|
-
kindWritten: v.kind !== "" && !isPart,
|
|
8753
|
+
kindWritten: v.kind !== "" && !isPart && !\u5916\u3057\u305F,
|
|
8706
8754
|
// parts では `tone` を状態の上書きとして扱うため、 色として渡さない
|
|
8707
8755
|
tone: isPart ? void 0 : v.tone,
|
|
8708
8756
|
subtitle: v.subtitle,
|
|
@@ -12723,8 +12771,6 @@ function \u914D\u8272\u3068\u7E1E\u3092\u5F53\u3066\u308B(diagram12, doc) {
|
|
|
12723
12771
|
if (\u914D\u8272 === void 0) return;
|
|
12724
12772
|
diagram12.palette = \u914D\u8272;
|
|
12725
12773
|
for (const node of diagram12.nodes) {
|
|
12726
|
-
const \u5186\u306E\u533A\u753B\u306E\u9593 = \u610F\u5320\u306E\u5186\u306E\u533A\u753B\u306E\u9593(\u914D\u8272, node);
|
|
12727
|
-
if (\u5186\u306E\u533A\u753B\u306E\u9593 !== void 0) node.chartPieSliceGap = \u5186\u306E\u533A\u753B\u306E\u9593;
|
|
12728
12774
|
if (\u68D2\u3092\u63CF\u304F\u7BC0\u304B(node)) {
|
|
12729
12775
|
const \u68D2\u306E\u89D2 = \u610F\u5320\u306E\u68D2\u306E\u89D2(\u914D\u8272, node);
|
|
12730
12776
|
if (\u68D2\u306E\u89D2 !== void 0) node.barCornerRadii = \u68D2\u306E\u89D2;
|
|
@@ -15281,7 +15327,12 @@ function \u5024\u3092\u691C\u67FB(v, \u578B, path, \u540D\u524D, errors) {
|
|
|
15281
15327
|
});
|
|
15282
15328
|
}
|
|
15283
15329
|
return;
|
|
15284
|
-
case "\u5FC5\u9808\u306E\u56F3\u7A2E":
|
|
15330
|
+
case "\u5FC5\u9808\u306E\u56F3\u7A2E": {
|
|
15331
|
+
const \u5916\u3057\u305F = typeof v === "string" ? \u5916\u3057\u305F\u56F3\u7A2E\u306E\u77E5\u3089\u305B(v) : void 0;
|
|
15332
|
+
if (\u5916\u3057\u305F !== void 0) {
|
|
15333
|
+
errors.push({ path, message: `${\u540D\u524D} "${String(v)}" was removed`, hint: \u5916\u3057\u305F.hint });
|
|
15334
|
+
return;
|
|
15335
|
+
}
|
|
15285
15336
|
if (typeof v !== "string" || !(VALID_PRESETS.includes(v) || VALID_ALIASES.includes(v))) {
|
|
15286
15337
|
errors.push({
|
|
15287
15338
|
path,
|
|
@@ -15290,6 +15341,7 @@ function \u5024\u3092\u691C\u67FB(v, \u578B, path, \u540D\u524D, errors) {
|
|
|
15290
15341
|
});
|
|
15291
15342
|
}
|
|
15292
15343
|
return;
|
|
15344
|
+
}
|
|
15293
15345
|
case "object":
|
|
15294
15346
|
case "\u4E26\u3073":
|
|
15295
15347
|
case "\u5FC5\u9808\u306E\u4E26\u3073":
|
|
@@ -15367,7 +15419,7 @@ function validateRelativeAnchors(actors, errors) {
|
|
|
15367
15419
|
}
|
|
15368
15420
|
function \u898B\u672C\u306E\u540D\u524D\u304B(kind) {
|
|
15369
15421
|
if (typeof kind !== "string" || kind.length === 0) return false;
|
|
15370
|
-
return kind !== "actor" && !VALID_KIND_SET.has(kind);
|
|
15422
|
+
return kind !== "actor" && !\u5916\u3057\u305F\u7A2E\u985E.has(kind) && !VALID_KIND_SET.has(kind);
|
|
15371
15423
|
}
|
|
15372
15424
|
function validateViewport(v, errors) {
|
|
15373
15425
|
if (v === void 0) return;
|
|
@@ -16552,6 +16604,10 @@ function validateJson(json) {
|
|
|
16552
16604
|
}
|
|
16553
16605
|
const ao = a;
|
|
16554
16606
|
checkUnknownKeys(ao, "actor", `$.actors[${i}]`, errors);
|
|
16607
|
+
const \u5916\u3057\u305F = typeof ao.kind === "string" ? \u5916\u3057\u305F\u7A2E\u985E\u306E\u77E5\u3089\u305B(ao.kind) : void 0;
|
|
16608
|
+
if (\u5916\u3057\u305F !== void 0) {
|
|
16609
|
+
errors.push({ path: `$.actors[${i}].kind`, message: `kind "${String(ao.kind)}" was removed`, hint: \u5916\u3057\u305F.hint });
|
|
16610
|
+
}
|
|
16555
16611
|
\u8868\u3067\u691C\u67FB(ao, "actor", `$.actors[${i}]`, "actor", errors);
|
|
16556
16612
|
const actorEnum = (key, allowed) => {
|
|
16557
16613
|
const value = ao[key];
|
|
@@ -16905,15 +16961,16 @@ function jsonToDoc(json, \u884C\u306E\u8868) {
|
|
|
16905
16961
|
return { name: a, kind: "actor", kindWritten: false, pos: \u4F4D\u7F6E("actors", i) };
|
|
16906
16962
|
}
|
|
16907
16963
|
const kindStr = a.kind ?? "actor";
|
|
16908
|
-
const isPart =
|
|
16964
|
+
const isPart = \u898B\u672C\u306E\u540D\u524D\u304B(kindStr);
|
|
16965
|
+
const \u5916\u3057\u305F = \u5916\u3057\u305F\u7A2E\u985E.has(kindStr);
|
|
16909
16966
|
const \u8272 = a.color !== void 0 ? splitColorValue(a.color) : {};
|
|
16910
16967
|
const \u66F8\u3044\u305F\u5EA7\u6A19 = a.at ?? a.\u70B9\u306E\u4F4D\u7F6E;
|
|
16911
16968
|
return {
|
|
16912
16969
|
name: a.name,
|
|
16913
|
-
kind: isPart ? "actor" : resolveNodeKind(kindStr),
|
|
16970
|
+
kind: isPart || \u5916\u3057\u305F ? "actor" : resolveNodeKind(kindStr),
|
|
16914
16971
|
// parts 候補は `kind` を `actor` に倒して `partId` へ退避するため、 名札に載せる種類としては
|
|
16915
16972
|
// 「書かなかった」 と同じ扱いにする (#1058)
|
|
16916
|
-
kindWritten: a.kind !== void 0 && !isPart,
|
|
16973
|
+
kindWritten: a.kind !== void 0 && !isPart && !\u5916\u3057\u305F,
|
|
16917
16974
|
subtitle: a.subtitle,
|
|
16918
16975
|
kindForm: isPart ? void 0 : a.kindForm,
|
|
16919
16976
|
icon: isPart ? void 0 : a.icon,
|
|
@@ -17176,7 +17233,6 @@ function jsonToDoc(json, \u884C\u306E\u8868) {
|
|
|
17176
17233
|
...json.ganttSize !== void 0 ? { ganttSize: json.ganttSize } : {},
|
|
17177
17234
|
...json.quadrantLabelPosition !== void 0 ? { quadrantLabelPosition: json.quadrantLabelPosition } : {},
|
|
17178
17235
|
...json.quadrantSize !== void 0 ? { quadrantSize: json.quadrantSize } : {},
|
|
17179
|
-
...\u5225\u540D?.order !== void 0 ? { order: \u5225\u540D.order, orderPos: \u4F4D\u7F6E("type") } : {},
|
|
17180
17236
|
...\u5225\u540D?.shape !== void 0 ? { shape: \u5225\u540D.shape, shapePos: \u4F4D\u7F6E("type") } : {},
|
|
17181
17237
|
// 前後の空白を落としてから見る。 記法側 (`v05/parser.ts`) が `trim()` してから
|
|
17182
17238
|
// 空かどうかを判定するため、 揃えないと **空白だけの値で入口ごとに図が変わる**
|
|
@@ -17294,7 +17350,6 @@ var diagram_default = {
|
|
|
17294
17350
|
"swimlane",
|
|
17295
17351
|
"record",
|
|
17296
17352
|
"topology",
|
|
17297
|
-
"solidity",
|
|
17298
17353
|
"gantt",
|
|
17299
17354
|
"chart",
|
|
17300
17355
|
"pie",
|
|
@@ -17313,7 +17368,7 @@ var diagram_default = {
|
|
|
17313
17368
|
"c4",
|
|
17314
17369
|
"mind"
|
|
17315
17370
|
],
|
|
17316
|
-
description: '\u56F3\u306E\u7A2E\u985E\u3002 \u578B\u3054\u3068\u306B actors \u306E\u66F8\u304D\u65B9\u304C\u9055\u3046\u3002 [\u95A2\u4FC2\u3092\u63CF\u304F] sequence (\u6642\u7CFB\u5217\u306E\u547C\u3073\u51FA\u3057) / flow (\u51E6\u7406\u306E\u6D41\u308C) / flowchart (\u5206\u304B\u308C\u9053\u3068\u5224\u65AD\u3092\u542B\u3080\u624B\u9806) / swimlane (\u8CAC\u52D9\u3054\u3068\u306E\u6D41\u308C) / record (\u7BB1\u304C\u884C\u3092\u6301\u3061\u95A2\u4FC2\u3092\u6301\u3064\u56F3\u3002 \u8868\u306E\u3064\u306A\u304C\u308A\u3001\u79FB\u308A\u5909\u308F\u308A\u3001UML \u30AF\u30E9\u30B9\u95A2\u4FC2\u306B\u3082\u4F7F\u3046) / topology (network) / c4 (architecture) / mind (\u767A\u60F3\u306E\u679D\u5206\u304B\u308C) \u306F actors \u306B\u540D\u524D\u3092\u4E26\u3079 flow \u306B\u77E2\u5370\u3092\u66F8\u304F\u3002 [\u5024\u3092\u63CF\u304F] chart (\u6570\u306E\u4E26\u3073) \u306F actors \u306B `- \u540D\u524D: "45"` \u306E\u5F62\u3067\u6570\u3092\u66F8\u304D\u3001 shape \u3067\u5F62\u3092\u9078\u3076 (pie = \u5272\u5408 / bar = \u68D2\u306E\u9AD8\u3055 / line = \u7DDA\u306E\u9AD8\u3055\u3067\u66F8\u3044\u305F\u9806\u306B\u4E26\u3076 / gauge = \u5408\u8A08\u3092\u534A\u5186\u3067\u793A\u3059 / radial = \u5F27\u306E\u9577\u3055\u3067\u6BD4\u3079\u308B / stat = \u5024 1 \u3064\u3092\u5927\u304D\u304F\u793A\u3059 / waffle = \u5272\u5408\u3092 100 \u500B\u306E\u5370\u3067\u793A\u3059 / stacked = \u5185\u8A33\u3092\u5E2F\u3067\u793A\u3059 / slope = 2 \u6642\u70B9\u3092\u76F4\u7DDA\u3067\u3064\u306A\u304E\u5897\u6E1B\u3068\u9806\u4F4D\u306E\u5165\u308C\u66FF\u308F\u308A\u3092\u793A\u3059)\u3002 shape \u304C stat \u3068 stacked \u3068 slope \u306E\u6642\u306F `- \u540D\u524D: { value: "320", previous: "280" }` \u306E\u5F62\u3067\u524D\u306E\u6642\u70B9\u306E\u5024\u3082\u66F8\u3051\u308B\u3002 funnel (\u6BB5\u3054\u3068\u306B\u6E1B\u308B\u6570) \u3082\u540C\u3058\u5F62\u3002 [\u8A9E\u3092\u63CF\u304F] journey (\u4F53\u9A13\u306E\u8D77\u4F0F) \u306F `- \u767B\u9332: "\u4E0D\u6E80"` \u306E\u5F62\u3067 \u6700\u9AD8 / \u6E80\u8DB3 / \u666E\u901A / \u4E0D\u6E80 / \u6012\u308A \u306E\u3069\u308C\u304B\u3092\u66F8\u304F\u3002 quadrant (2 \u8EF8\u306E\u4ED5\u5206\u3051) \u306F `- \u91CD\u8907\u524A\u9664: "\u5DE6\u4E0A"` \u306E\u5F62\u3067 \u5DE6\u4E0A / \u53F3\u4E0A / \u5DE6\u4E0B / \u53F3\u4E0B \u306E\u3069\u308C\u304B\u3092\u66F8\u304F\u3002 [\u6642\u671F\u3092\u63CF\u304F] gantt (\u5DE5\u7A0B\u306E\u4E26\u3073) \u306F `- \u8A2D\u8A08: "1\u6708"` \u306E\u5F62\u3067\u59CB\u307E\u308A\u306E\u6642\u671F\u3092\u66F8\u304D\u3001 flow \u306E\u77E2\u5370\u3067\u524D\u5F8C\u95A2\u4FC2\u3092\u66F8\u304F\u3002 [\u89AA\u5B50\u3092\u63CF\u304F] tree (\u89AA\u5B50\u306E\u5165\u308C\u5B50) \u306F actors \u306B\u540D\u524D\u3092\u4E26\u3079 flow \u306E\u77E2\u5370\u3067\u89AA\u5B50\u3092\u66F8\u304F (\u77E2\u5370\u306E\u5148\u304C\u5B50)\u3002 [\u53E4\u3044\u7DB4\u308A]
|
|
17371
|
+
description: '\u56F3\u306E\u7A2E\u985E\u3002 \u578B\u3054\u3068\u306B actors \u306E\u66F8\u304D\u65B9\u304C\u9055\u3046\u3002 [\u95A2\u4FC2\u3092\u63CF\u304F] sequence (\u6642\u7CFB\u5217\u306E\u547C\u3073\u51FA\u3057) / flow (\u51E6\u7406\u306E\u6D41\u308C) / flowchart (\u5206\u304B\u308C\u9053\u3068\u5224\u65AD\u3092\u542B\u3080\u624B\u9806) / swimlane (\u8CAC\u52D9\u3054\u3068\u306E\u6D41\u308C) / record (\u7BB1\u304C\u884C\u3092\u6301\u3061\u95A2\u4FC2\u3092\u6301\u3064\u56F3\u3002 \u8868\u306E\u3064\u306A\u304C\u308A\u3001\u79FB\u308A\u5909\u308F\u308A\u3001UML \u30AF\u30E9\u30B9\u95A2\u4FC2\u306B\u3082\u4F7F\u3046) / topology (network) / c4 (architecture) / mind (\u767A\u60F3\u306E\u679D\u5206\u304B\u308C) \u306F actors \u306B\u540D\u524D\u3092\u4E26\u3079 flow \u306B\u77E2\u5370\u3092\u66F8\u304F\u3002 [\u5024\u3092\u63CF\u304F] chart (\u6570\u306E\u4E26\u3073) \u306F actors \u306B `- \u540D\u524D: "45"` \u306E\u5F62\u3067\u6570\u3092\u66F8\u304D\u3001 shape \u3067\u5F62\u3092\u9078\u3076 (pie = \u5272\u5408 / bar = \u68D2\u306E\u9AD8\u3055 / line = \u7DDA\u306E\u9AD8\u3055\u3067\u66F8\u3044\u305F\u9806\u306B\u4E26\u3076 / gauge = \u5408\u8A08\u3092\u534A\u5186\u3067\u793A\u3059 / radial = \u5F27\u306E\u9577\u3055\u3067\u6BD4\u3079\u308B / stat = \u5024 1 \u3064\u3092\u5927\u304D\u304F\u793A\u3059 / waffle = \u5272\u5408\u3092 100 \u500B\u306E\u5370\u3067\u793A\u3059 / stacked = \u5185\u8A33\u3092\u5E2F\u3067\u793A\u3059 / slope = 2 \u6642\u70B9\u3092\u76F4\u7DDA\u3067\u3064\u306A\u304E\u5897\u6E1B\u3068\u9806\u4F4D\u306E\u5165\u308C\u66FF\u308F\u308A\u3092\u793A\u3059)\u3002 shape \u304C stat \u3068 stacked \u3068 slope \u306E\u6642\u306F `- \u540D\u524D: { value: "320", previous: "280" }` \u306E\u5F62\u3067\u524D\u306E\u6642\u70B9\u306E\u5024\u3082\u66F8\u3051\u308B\u3002 funnel (\u6BB5\u3054\u3068\u306B\u6E1B\u308B\u6570) \u3082\u540C\u3058\u5F62\u3002 [\u8A9E\u3092\u63CF\u304F] journey (\u4F53\u9A13\u306E\u8D77\u4F0F) \u306F `- \u767B\u9332: "\u4E0D\u6E80"` \u306E\u5F62\u3067 \u6700\u9AD8 / \u6E80\u8DB3 / \u666E\u901A / \u4E0D\u6E80 / \u6012\u308A \u306E\u3069\u308C\u304B\u3092\u66F8\u304F\u3002 quadrant (2 \u8EF8\u306E\u4ED5\u5206\u3051) \u306F `- \u91CD\u8907\u524A\u9664: "\u5DE6\u4E0A"` \u306E\u5F62\u3067 \u5DE6\u4E0A / \u53F3\u4E0A / \u5DE6\u4E0B / \u53F3\u4E0B \u306E\u3069\u308C\u304B\u3092\u66F8\u304F\u3002 [\u6642\u671F\u3092\u63CF\u304F] gantt (\u5DE5\u7A0B\u306E\u4E26\u3073) \u306F `- \u8A2D\u8A08: "1\u6708"` \u306E\u5F62\u3067\u59CB\u307E\u308A\u306E\u6642\u671F\u3092\u66F8\u304D\u3001 flow \u306E\u77E2\u5370\u3067\u524D\u5F8C\u95A2\u4FC2\u3092\u66F8\u304F\u3002 [\u89AA\u5B50\u3092\u63CF\u304F] tree (\u89AA\u5B50\u306E\u5165\u308C\u5B50) \u306F actors \u306B\u540D\u524D\u3092\u4E26\u3079 flow \u306E\u77E2\u5370\u3067\u89AA\u5B50\u3092\u66F8\u304F (\u77E2\u5370\u306E\u5148\u304C\u5B50)\u3002 [\u53E4\u3044\u7DB4\u308A] pie / bar / line / gauge / radial / stat / waffle / stacked / slope \u306F chart \u3068\u540C\u3058\u7DB4\u308A\u306E shape \u306E\u7D44\u3068\u540C\u3058\u6271\u3044\u306B\u306A\u308B'
|
|
17317
17372
|
},
|
|
17318
17373
|
form: {
|
|
17319
17374
|
type: "string",
|
|
@@ -17675,7 +17730,7 @@ var diagram_default = {
|
|
|
17675
17730
|
},
|
|
17676
17731
|
kind: {
|
|
17677
17732
|
type: "string",
|
|
17678
|
-
description: "node kind\u3002 shape-* \u3092\u6307\u5B9A\
|
|
17733
|
+
description: "node kind\u3002 shape-* \u3092\u6307\u5B9A\u3059\u308B\u3068\u57FA\u672C\u306E\u5F62 (\u7BB1\u306E\u5F62\u305D\u306E\u3082\u306E\u3092\u63CF\u304F) \u3068\u6C4E\u7528\u306E\u633F\u7D75 (\u7A93 / \u7AEF\u672B / \u30B3\u30FC\u30C9\u306E\u672D / \u643A\u5E2F / \u30B5\u30FC\u30D0\u30FC\u306E\u68DA) \u304B\u3089\u9078\u3079\u308B\u3002 \u4F8B: 'shape-cloud' / 'shape-file' / 'shape-window' / 'actor' (default) / 'function' / 'storage' / 'event' \u7B49\u3002 \u7A2E\u5225\u306B\u7121\u3044\u540D\u524D\u306F\u90E8\u54C1\u306E\u540D\u524D\u3068\u3057\u3066\u90E8\u54C1\u306E\u4E00\u89A7 (partsCatalog) \u304B\u3089\u5F15\u304D\u3001\u4E00\u89A7\u306B\u3082\u7121\u3051\u308C\u3070\u7A2E\u5225\u3092\u66F8\u304B\u306A\u304B\u3063\u305F\u7BB1\u306B\u306A\u308B\u3002 \u90E8\u54C1\u3092\u6301\u3064\u4E00\u89A7\u3092\u6E21\u3057\u305F\u6642\u306F\u77E5\u3089\u305B\u3092\u51FA\u3057\u3001\u7DB4\u308A\u306E\u8FD1\u3044\u540D\u524D\u3092\u6848\u5185\u3059\u308B\u3002"
|
|
17679
17734
|
},
|
|
17680
17735
|
subtitle: {
|
|
17681
17736
|
type: "string",
|