@cardenelabs/dragon 0.23.0 → 0.26.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/dist/index.cjs +21 -9
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +1 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.js +21 -9
- package/dist/index.js.map +1 -1
- package/package.json +2 -2
- package/src/compile.ts +17 -5
- package/src/schemas/diagram.json +7 -5
- package/src/types.ts +1 -0
- package/src/v05/parser.ts +2 -0
package/dist/index.d.cts
CHANGED
|
@@ -300,7 +300,7 @@ type DslEventBinding = {
|
|
|
300
300
|
handlerId: string;
|
|
301
301
|
pos: Position;
|
|
302
302
|
};
|
|
303
|
-
type PresetType = "sequence" | "flow" | "swimlane" | "er" | "state" | "topology" | "solidity" | "gantt" | "class" | "pie" | "bar" | "line" | "gauge" | "radial" | "stat" | "waffle" | "stacked" | "funnel" | "tree" | "journey" | "quadrant" | "c4" | "mind";
|
|
303
|
+
type PresetType = "sequence" | "flow" | "swimlane" | "er" | "state" | "topology" | "solidity" | "gantt" | "class" | "pie" | "bar" | "line" | "gauge" | "radial" | "stat" | "waffle" | "stacked" | "slope" | "funnel" | "tree" | "journey" | "quadrant" | "c4" | "mind";
|
|
304
304
|
type Position = {
|
|
305
305
|
line: number;
|
|
306
306
|
column?: number;
|
package/dist/index.d.ts
CHANGED
|
@@ -300,7 +300,7 @@ type DslEventBinding = {
|
|
|
300
300
|
handlerId: string;
|
|
301
301
|
pos: Position;
|
|
302
302
|
};
|
|
303
|
-
type PresetType = "sequence" | "flow" | "swimlane" | "er" | "state" | "topology" | "solidity" | "gantt" | "class" | "pie" | "bar" | "line" | "gauge" | "radial" | "stat" | "waffle" | "stacked" | "funnel" | "tree" | "journey" | "quadrant" | "c4" | "mind";
|
|
303
|
+
type PresetType = "sequence" | "flow" | "swimlane" | "er" | "state" | "topology" | "solidity" | "gantt" | "class" | "pie" | "bar" | "line" | "gauge" | "radial" | "stat" | "waffle" | "stacked" | "slope" | "funnel" | "tree" | "journey" | "quadrant" | "c4" | "mind";
|
|
304
304
|
type Position = {
|
|
305
305
|
line: number;
|
|
306
306
|
column?: number;
|
package/dist/index.js
CHANGED
|
@@ -2056,6 +2056,7 @@ var PRESET_TYPES = /* @__PURE__ */ new Set([
|
|
|
2056
2056
|
"stat",
|
|
2057
2057
|
"waffle",
|
|
2058
2058
|
"stacked",
|
|
2059
|
+
"slope",
|
|
2059
2060
|
"funnel",
|
|
2060
2061
|
"tree",
|
|
2061
2062
|
"journey",
|
|
@@ -4608,7 +4609,8 @@ var DRAW_TARGETS = /* @__PURE__ */ new Map([
|
|
|
4608
4609
|
["mind", "mind"],
|
|
4609
4610
|
["tree", "tree"],
|
|
4610
4611
|
["gantt", "gantt"],
|
|
4611
|
-
["funnel", "funnel"]
|
|
4612
|
+
["funnel", "funnel"],
|
|
4613
|
+
["slope", "slope"]
|
|
4612
4614
|
]);
|
|
4613
4615
|
var DRAW_WORDS = new Set(DRAW_TARGETS.keys());
|
|
4614
4616
|
var \u6BB5\u306E\u9805\u76EE\u306E\u65E5\u672C\u8A9E = {
|
|
@@ -5085,6 +5087,9 @@ function compileToCdl(doc, opts) {
|
|
|
5085
5087
|
case "stacked":
|
|
5086
5088
|
diagram2 = compileValueChart(doc, "stacked", "chart-stacked-bar", opts?.onNotice);
|
|
5087
5089
|
break;
|
|
5090
|
+
case "slope":
|
|
5091
|
+
diagram2 = compileValueChart(doc, "slope", "chart-slope", opts?.onNotice);
|
|
5092
|
+
break;
|
|
5088
5093
|
case "funnel":
|
|
5089
5094
|
diagram2 = compileFunnel(doc, opts?.onNotice);
|
|
5090
5095
|
break;
|
|
@@ -5369,6 +5374,7 @@ var \u56F3\u7A2E\u306E\u4F5C\u308A = {
|
|
|
5369
5374
|
stat: "\u56F3\u5168\u4F53\u3092 1 \u7BB1",
|
|
5370
5375
|
waffle: "\u56F3\u5168\u4F53\u3092 1 \u7BB1",
|
|
5371
5376
|
stacked: "\u56F3\u5168\u4F53\u3092 1 \u7BB1",
|
|
5377
|
+
slope: "\u56F3\u5168\u4F53\u3092 1 \u7BB1",
|
|
5372
5378
|
funnel: "\u56F3\u5168\u4F53\u3092 1 \u7BB1",
|
|
5373
5379
|
tree: "\u56F3\u5168\u4F53\u3092 1 \u7BB1",
|
|
5374
5380
|
journey: "\u56F3\u5168\u4F53\u3092 1 \u7BB1",
|
|
@@ -5564,6 +5570,7 @@ var \u7A7A\u306E\u5F62\u306E\u9003\u3052\u5148 = {
|
|
|
5564
5570
|
stat: [],
|
|
5565
5571
|
waffle: [],
|
|
5566
5572
|
stacked: [],
|
|
5573
|
+
slope: [],
|
|
5567
5574
|
funnel: [],
|
|
5568
5575
|
tree: [],
|
|
5569
5576
|
journey: [],
|
|
@@ -7106,7 +7113,9 @@ var SINGLE_BOX_KINDS = /* @__PURE__ */ new Set([
|
|
|
7106
7113
|
"funnel-stages",
|
|
7107
7114
|
"quadrant-matrix",
|
|
7108
7115
|
"tree-hierarchy",
|
|
7109
|
-
"journey-map"
|
|
7116
|
+
"journey-map",
|
|
7117
|
+
// 2 時点を直線でつなぐ図も 1 箱で全体を描く (#1647)
|
|
7118
|
+
"chart-slope"
|
|
7110
7119
|
]);
|
|
7111
7120
|
function applyGroupContainers(diagram2, doc) {
|
|
7112
7121
|
if (!doc.groups || Object.keys(doc.groups).length === 0) return;
|
|
@@ -7355,7 +7364,7 @@ function compileValueChart(doc, \u578B, kind, onNotice) {
|
|
|
7355
7364
|
let \u8AAD\u3081\u306A\u3044\u884C = 0;
|
|
7356
7365
|
for (const a of doc.actors) {
|
|
7357
7366
|
const value = parseChartValue(a.value ?? a.subtitle);
|
|
7358
|
-
if (value === null || typeof value === "number" && value < 0 && \u578B !== "line") {
|
|
7367
|
+
if (value === null || typeof value === "number" && value < 0 && \u578B !== "line" && \u578B !== "slope") {
|
|
7359
7368
|
if (\u8AAD\u3081\u306A\u3044.length === 0) \u8AAD\u3081\u306A\u3044\u884C = a.pos?.line ?? 0;
|
|
7360
7369
|
\u8AAD\u3081\u306A\u3044.push(a.name);
|
|
7361
7370
|
continue;
|
|
@@ -7386,7 +7395,8 @@ function compileValueChart(doc, \u578B, kind, onNotice) {
|
|
|
7386
7395
|
radial: { \u91CF: "\u5024", \u56F3: "\u5F27", \u4F8B: '"72"' },
|
|
7387
7396
|
stat: { \u91CF: "\u5024", \u56F3: "\u5927\u304D\u306A\u6570\u5B57", \u4F8B: '"1200"' },
|
|
7388
7397
|
waffle: { \u91CF: "\u5272\u5408", \u56F3: "100 \u500B\u306E\u5370", \u4F8B: '"45%"' },
|
|
7389
|
-
stacked: { \u91CF: "\u5185\u8A33\u306E\u5024", \u56F3: "\u5E2F", \u4F8B: '"320"' }
|
|
7398
|
+
stacked: { \u91CF: "\u5185\u8A33\u306E\u5024", \u56F3: "\u5E2F", \u4F8B: '"320"' },
|
|
7399
|
+
slope: { \u91CF: "\u5024", \u56F3: "\u50BE\u304D\u56F3", \u4F8B: '"320"' }
|
|
7390
7400
|
};
|
|
7391
7401
|
const \u8A9E = \u8A9E\u306E\u8868[\u578B];
|
|
7392
7402
|
const \u4F1D\u3048\u308B = (\u7A2E\u985E, \u540D\u524D, message, line = 0) => {
|
|
@@ -10908,6 +10918,7 @@ var diagram_default = {
|
|
|
10908
10918
|
"stat",
|
|
10909
10919
|
"waffle",
|
|
10910
10920
|
"stacked",
|
|
10921
|
+
"slope",
|
|
10911
10922
|
"funnel",
|
|
10912
10923
|
"tree",
|
|
10913
10924
|
"journey",
|
|
@@ -10915,11 +10926,11 @@ var diagram_default = {
|
|
|
10915
10926
|
"c4",
|
|
10916
10927
|
"mind"
|
|
10917
10928
|
],
|
|
10918
|
-
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) / swimlane (\u8CAC\u52D9\u3054\u3068\u306E\u6D41\u308C) / er (DB \u306E schema) / state (\u72B6\u614B\u306E\u9077\u79FB) / topology (network) / solidity (contract) / class (UML \u306E class) / 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] pie (\u5272\u5408) / bar (\u68D2\u306E\u9AD8\u3055) / line (\u7DDA\u306E\u9AD8\u3055\u3001 \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) \u306F actors \u306B `- \u540D\u524D: "45"` \u306E\u5F62\u3067\u6570\u3092\u66F8\u304F\u3002 stat \u3068 stacked \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)'
|
|
10929
|
+
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) / swimlane (\u8CAC\u52D9\u3054\u3068\u306E\u6D41\u308C) / er (DB \u306E schema) / state (\u72B6\u614B\u306E\u9077\u79FB) / topology (network) / solidity (contract) / class (UML \u306E class) / 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] pie (\u5272\u5408) / bar (\u68D2\u306E\u9AD8\u3055) / line (\u7DDA\u306E\u9AD8\u3055\u3001 \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) \u306F actors \u306B `- \u540D\u524D: "45"` \u306E\u5F62\u3067\u6570\u3092\u66F8\u304F\u3002 stat \u3068 stacked \u3068 slope \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)'
|
|
10919
10930
|
},
|
|
10920
10931
|
eyebrow: {
|
|
10921
10932
|
type: "string",
|
|
10922
|
-
description: "\u56F3\u8868\u306E\u7BB1\u306E\u4E0A\u306B\u51FA\u3059\u5C0F\u898B\u51FA\u3057 (\u7701\u7565\u53EF)\u3002 \u52B9\u304F\u306E\u306F\u56F3\u5168\u4F53\u3092 1 \u7BB1\u306B\u3059\u308B\u578B (pie / bar / line / gauge / radial / stat / waffle / stacked / funnel / tree / journey / quadrant / mind / gantt) \u3060\u3051\u3002 \u7BB1\u3054\u3068\u306B\u5206\u304B\u308C\u308B\u578B\u3067\u306F\u76F8\u624B\u304C\u6C7A\u307E\u3089\u306A\u3044\u305F\u3081\u3001 actors[].eyebrow \u306B\u66F8\u304F"
|
|
10933
|
+
description: "\u56F3\u8868\u306E\u7BB1\u306E\u4E0A\u306B\u51FA\u3059\u5C0F\u898B\u51FA\u3057 (\u7701\u7565\u53EF)\u3002 \u52B9\u304F\u306E\u306F\u56F3\u5168\u4F53\u3092 1 \u7BB1\u306B\u3059\u308B\u578B (pie / bar / line / gauge / radial / stat / waffle / stacked / slope / funnel / tree / journey / quadrant / mind / gantt) \u3060\u3051\u3002 \u7BB1\u3054\u3068\u306B\u5206\u304B\u308C\u308B\u578B\u3067\u306F\u76F8\u624B\u304C\u6C7A\u307E\u3089\u306A\u3044\u305F\u3081\u3001 actors[].eyebrow \u306B\u66F8\u304F"
|
|
10923
10934
|
},
|
|
10924
10935
|
axes: {
|
|
10925
10936
|
type: "object",
|
|
@@ -10992,7 +11003,7 @@ var diagram_default = {
|
|
|
10992
11003
|
},
|
|
10993
11004
|
previous: {
|
|
10994
11005
|
type: "string",
|
|
10995
|
-
description: "\u524D\u306E\u6642\u70B9\u306E\u5024\u3002 type: stacked \u304C 2 \u672C\u76EE\u306E\u5E2F\u3068\u3057\u3066\u63CF\u304D\u3001type: stat \u304C\u5DEE\u3068\u3057\u3066\u51FA\u3059\u3002 \u66F8\u304B\u306A\u3044\u56F3\u306F 1 \u672C\u306E\u307E\u307E"
|
|
11006
|
+
description: "\u524D\u306E\u6642\u70B9\u306E\u5024\u3002 type: stacked \u304C 2 \u672C\u76EE\u306E\u5E2F\u3068\u3057\u3066\u63CF\u304D\u3001type: slope \u304C\u5DE6\u306E\u70B9\u3068\u3057\u3066\u63CF\u304D\u3001type: stat \u304C\u5DEE\u3068\u3057\u3066\u51FA\u3059\u3002 \u66F8\u304B\u306A\u3044\u56F3\u306F 1 \u672C\u306E\u307E\u307E"
|
|
10996
11007
|
},
|
|
10997
11008
|
rows: {
|
|
10998
11009
|
type: "array",
|
|
@@ -11649,9 +11660,10 @@ var diagram_default = {
|
|
|
11649
11660
|
"mind",
|
|
11650
11661
|
"tree",
|
|
11651
11662
|
"gantt",
|
|
11652
|
-
"funnel"
|
|
11663
|
+
"funnel",
|
|
11664
|
+
"slope"
|
|
11653
11665
|
],
|
|
11654
|
-
description: "\u3053\u306E phase \u3067\u8D77\u70B9\u304B\u3089\u63CF\u304F\u3082\u306E\u3002 \u8A9E\u306F\u56F3\u7A2E\u3068\u63C3\u3048\u308B\u3002 line / journey = \u7DDA\u304C\u5DE6\u7AEF\u304B\u3089\u53F3\u3078\u4F38\u3073\u308B / bar = \u68D2\u304C\u6A2A\u8EF8\u304B\u3089\u4E0A\u3078\u4F38\u3073\u308B / pie = \u6247\u304C 12 \u6642\u304B\u3089\u6642\u8A08\u56DE\u308A\u306B\u958B\u304F / mind = \u679D\u304C\u4E2D\u5FC3\u304B\u3089\u5916\u3078\u4F38\u3073\u308B / tree = \u679D\u304C\u6839\u304B\u3089\u4E0B\u3078\u4F38\u3073\u308B / gantt = \u5E2F\u304C\u5404\u59CB\u7AEF\u304B\u3089\u53F3\u3078\u4F38\u3073\u308B / funnel = \u6BB5\u304C\u4E0A\u7AEF\u304B\u3089\u9806\u306B\u7A4D\u307E\u308C\u308B"
|
|
11666
|
+
description: "\u3053\u306E phase \u3067\u8D77\u70B9\u304B\u3089\u63CF\u304F\u3082\u306E\u3002 \u8A9E\u306F\u56F3\u7A2E\u3068\u63C3\u3048\u308B\u3002 line / journey = \u7DDA\u304C\u5DE6\u7AEF\u304B\u3089\u53F3\u3078\u4F38\u3073\u308B / bar = \u68D2\u304C\u6A2A\u8EF8\u304B\u3089\u4E0A\u3078\u4F38\u3073\u308B / pie = \u6247\u304C 12 \u6642\u304B\u3089\u6642\u8A08\u56DE\u308A\u306B\u958B\u304F / mind = \u679D\u304C\u4E2D\u5FC3\u304B\u3089\u5916\u3078\u4F38\u3073\u308B / tree = \u679D\u304C\u6839\u304B\u3089\u4E0B\u3078\u4F38\u3073\u308B / gantt = \u5E2F\u304C\u5404\u59CB\u7AEF\u304B\u3089\u53F3\u3078\u4F38\u3073\u308B / funnel = \u6BB5\u304C\u4E0A\u7AEF\u304B\u3089\u9806\u306B\u7A4D\u307E\u308C\u308B / slope = \u7DDA\u304C\u5DE6\u306E\u8EF8\u304B\u3089\u53F3\u306E\u8EF8\u3078\u4F38\u3073\u308B"
|
|
11655
11667
|
},
|
|
11656
11668
|
drawRatio: {
|
|
11657
11669
|
type: "number",
|