@wandox/sdk 0.1.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 +59 -0
- package/dist/arc-BJMRTG9S.cjs +1 -0
- package/dist/arc-Vdco0qfw.js +83 -0
- package/dist/architectureDiagram-3BPJPVTR-BjEqcvey.js +4695 -0
- package/dist/architectureDiagram-3BPJPVTR-BvjJfAkh.cjs +36 -0
- package/dist/blockDiagram-GPEHLZMM-B1xf7RE9.js +2427 -0
- package/dist/blockDiagram-GPEHLZMM-B5VqovGY.cjs +132 -0
- package/dist/c4Diagram-AAUBKEIU-C4kjMRea.js +1578 -0
- package/dist/c4Diagram-AAUBKEIU-Ck5uEnJI.cjs +10 -0
- package/dist/channel-DlRtLuYv.js +5 -0
- package/dist/channel-Dm_yrRYJ.cjs +1 -0
- package/dist/chunk-2J33WTMH-CG2n_n4y.cjs +1 -0
- package/dist/chunk-2J33WTMH-CWvmGb4H.js +20 -0
- package/dist/chunk-4BX2VUAB-Bq3GzsD8.js +9 -0
- package/dist/chunk-4BX2VUAB-CdMctZeT.cjs +1 -0
- package/dist/chunk-55IACEB6-BdJhzL0d.js +8 -0
- package/dist/chunk-55IACEB6-sHyHtvg8.cjs +1 -0
- package/dist/chunk-727SXJPM-D-Vmam30.cjs +206 -0
- package/dist/chunk-727SXJPM-DmruCqjM.js +1529 -0
- package/dist/chunk-AQP2D5EJ-CWhKjcV3.cjs +231 -0
- package/dist/chunk-AQP2D5EJ-Ca0ak6w7.js +1399 -0
- package/dist/chunk-FMBD7UC4-CqV0NWQQ.js +19 -0
- package/dist/chunk-FMBD7UC4-DOxtd0OO.cjs +15 -0
- package/dist/chunk-ND2GUHAM-6EMX5Mu8.js +68 -0
- package/dist/chunk-ND2GUHAM-BXeDBtSC.cjs +1 -0
- package/dist/chunk-QZHKN3VN-B7FSI55w.js +15 -0
- package/dist/chunk-QZHKN3VN-CbbdNKnD.cjs +1 -0
- package/dist/classDiagram-4FO5ZUOK-0Kaf7WfA.js +16 -0
- package/dist/classDiagram-4FO5ZUOK-C4it2xBI.cjs +1 -0
- package/dist/classDiagram-v2-Q7XG4LA2-Byom5adL.js +16 -0
- package/dist/classDiagram-v2-Q7XG4LA2-C4it2xBI.cjs +1 -0
- package/dist/cose-bilkent-S5V4N54A-CuUv9oIm.js +2606 -0
- package/dist/cose-bilkent-S5V4N54A-Dh6nTopA.cjs +1 -0
- package/dist/cytoscape.esm-Cp8cXbK2.js +18729 -0
- package/dist/cytoscape.esm-fcqEUasK.cjs +331 -0
- package/dist/dagre-BM42HDAG-CwxJjZ2n.cjs +4 -0
- package/dist/dagre-BM42HDAG-DMBidMxP.js +448 -0
- package/dist/defaultLocale-BDVPUiG2.js +171 -0
- package/dist/defaultLocale-k2G_58r6.cjs +1 -0
- package/dist/diagram-2AECGRRQ-B2a4nXgJ.js +221 -0
- package/dist/diagram-2AECGRRQ-r7De7taS.cjs +43 -0
- package/dist/diagram-5GNKFQAL-CDiO79WC.cjs +10 -0
- package/dist/diagram-5GNKFQAL-DrHBNZzF.js +123 -0
- package/dist/diagram-KO2AKTUF-BcjWCXZr.js +466 -0
- package/dist/diagram-KO2AKTUF-CDlJCxVO.cjs +3 -0
- package/dist/diagram-LMA3HP47-BXFSAyNV.cjs +24 -0
- package/dist/diagram-LMA3HP47-DJxmyqn0.js +143 -0
- package/dist/diagram-OG6HWLK6-ATK__ca8.js +531 -0
- package/dist/diagram-OG6HWLK6-CgIyEO8_.cjs +24 -0
- package/dist/erDiagram-TEJ5UH35-D4baWNzQ.js +900 -0
- package/dist/erDiagram-TEJ5UH35-Dyuc5EB6.cjs +85 -0
- package/dist/flowDiagram-I6XJVG4X-BMZOncyU.js +1635 -0
- package/dist/flowDiagram-I6XJVG4X-C45fICr4.cjs +162 -0
- package/dist/ganttDiagram-6RSMTGT7-CiYZmmke.js +2526 -0
- package/dist/ganttDiagram-6RSMTGT7-Cxoj6IK8.cjs +292 -0
- package/dist/gitGraphDiagram-PVQCEYII-CQ9bNuwN.js +828 -0
- package/dist/gitGraphDiagram-PVQCEYII-rlaY9dfj.cjs +106 -0
- package/dist/graph-CBizzZ7K.js +1545 -0
- package/dist/graph-V5BNIbHU.cjs +1 -0
- package/dist/index-jBRold1l.js +173159 -0
- package/dist/index-sFrjovbM.cjs +804 -0
- package/dist/index.d.ts +54 -0
- package/dist/infoDiagram-5YYISTIA-CAzYIvUX.js +24 -0
- package/dist/infoDiagram-5YYISTIA-zX5rQglQ.cjs +2 -0
- package/dist/init-CHZsXQcr.cjs +1 -0
- package/dist/init-DjUOC4st.js +16 -0
- package/dist/ishikawaDiagram-YF4QCWOH-09prKBsn.cjs +70 -0
- package/dist/ishikawaDiagram-YF4QCWOH-Co8BnN24.js +622 -0
- package/dist/journeyDiagram-JHISSGLW-DkdWRF_-.cjs +139 -0
- package/dist/journeyDiagram-JHISSGLW-riCLiMCC.js +836 -0
- package/dist/kanban-definition-UN3LZRKU-DWipOCsx.cjs +89 -0
- package/dist/kanban-definition-UN3LZRKU-SRyCSn2H.js +725 -0
- package/dist/katex-Cf_UVKIT.cjs +257 -0
- package/dist/katex-RNjvZ8pg.js +11681 -0
- package/dist/layout-CbksXFOD.js +1728 -0
- package/dist/layout-Dh52gsIJ.cjs +1 -0
- package/dist/linear-C3xSMJV8.cjs +1 -0
- package/dist/linear-CmUCzX9U.js +259 -0
- package/dist/mermaid.core-BzNKr-OJ.cjs +308 -0
- package/dist/mermaid.core-CdBIz6FY.js +15475 -0
- package/dist/mindmap-definition-RKZ34NQL-Cs63oyIX.cjs +96 -0
- package/dist/mindmap-definition-RKZ34NQL-Gcma5iTd.js +830 -0
- package/dist/ordinal-CagbB1m8.cjs +1 -0
- package/dist/ordinal-DfAQgscy.js +61 -0
- package/dist/pieDiagram-4H26LBE5-CBGkD8dp.cjs +30 -0
- package/dist/pieDiagram-4H26LBE5-DSL8cVK1.js +164 -0
- package/dist/quadrantDiagram-W4KKPZXB-D3nCWRjF.cjs +7 -0
- package/dist/quadrantDiagram-W4KKPZXB-uod6bhUy.js +1026 -0
- package/dist/requirementDiagram-4Y6WPE33-Bc_6y7SM.js +884 -0
- package/dist/requirementDiagram-4Y6WPE33-D2mHlh5i.cjs +84 -0
- package/dist/sankeyDiagram-5OEKKPKP-DL_kXejW.cjs +40 -0
- package/dist/sankeyDiagram-5OEKKPKP-DMsjY4G4.js +847 -0
- package/dist/sequenceDiagram-3UESZ5HK-CBGalGOV.cjs +162 -0
- package/dist/sequenceDiagram-3UESZ5HK-CH2Z-Pis.js +2901 -0
- package/dist/stateDiagram-AJRCARHV-gEqlAI6t.js +263 -0
- package/dist/stateDiagram-AJRCARHV-rNMrAI-A.cjs +1 -0
- package/dist/stateDiagram-v2-BHNVJYJU-CDj7L1wi.js +16 -0
- package/dist/stateDiagram-v2-BHNVJYJU-LLlFJ1GM.cjs +1 -0
- package/dist/timeline-definition-PNZ67QCA-Bbuv3uu-.cjs +120 -0
- package/dist/timeline-definition-PNZ67QCA-DrGFbQdC.js +1068 -0
- package/dist/types.d.ts +295 -0
- package/dist/vennDiagram-CIIHVFJN-CGcAwVxU.js +1564 -0
- package/dist/vennDiagram-CIIHVFJN-DsSjXluJ.cjs +34 -0
- package/dist/wandox.cjs +1 -0
- package/dist/wandox.css +1 -0
- package/dist/wandox.js +6 -0
- package/dist/wandox.umd.js +4172 -0
- package/dist/wardley-L42UT6IY-DUnkyH_z.js +22539 -0
- package/dist/wardley-L42UT6IY-tDp0NbFW.cjs +165 -0
- package/dist/wardleyDiagram-YWT4CUSO-CB_Qa4lR.js +684 -0
- package/dist/wardleyDiagram-YWT4CUSO-D0BUmvVW.cjs +78 -0
- package/dist/xychartDiagram-2RQKCTM6-Bcq-ACuw.js +1342 -0
- package/dist/xychartDiagram-2RQKCTM6-BjeAPKLo.cjs +7 -0
- package/package.json +42 -0
|
@@ -0,0 +1,466 @@
|
|
|
1
|
+
import { p as oe } from "./chunk-4BX2VUAB-Bq3GzsD8.js";
|
|
2
|
+
import { a3 as se, b2 as de, a$ as le, $ as ce, a0 as me, b0 as ue, b as o, aB as g, a2 as T, aZ as xe, b6 as fe, t as ge, s as he, a1 as $, Q as pe, aX as P, bl as S, p as be } from "./mermaid.core-CdBIz6FY.js";
|
|
3
|
+
import { p as ve, i as we } from "./wardley-L42UT6IY-DUnkyH_z.js";
|
|
4
|
+
var D = "position frame", N = "frame positioned", M = "position relation", C = "relation positioned", ye = /* @__PURE__ */ o(function(e) {
|
|
5
|
+
g.debug("options str", e);
|
|
6
|
+
}, "setOptions"), Pe = /* @__PURE__ */ o(function() {
|
|
7
|
+
return {};
|
|
8
|
+
}, "getOptions"), Se = /* @__PURE__ */ o(function() {
|
|
9
|
+
O(), ge();
|
|
10
|
+
}, "clear");
|
|
11
|
+
function O() {
|
|
12
|
+
E = {};
|
|
13
|
+
}
|
|
14
|
+
o(O, "reset");
|
|
15
|
+
var ke = pe.eventmodeling, Me = /* @__PURE__ */ o(() => he({
|
|
16
|
+
...ke,
|
|
17
|
+
...$().eventmodeling
|
|
18
|
+
}), "getConfig"), E = {};
|
|
19
|
+
function W() {
|
|
20
|
+
let e = Be;
|
|
21
|
+
const { ast: n } = E, t = R();
|
|
22
|
+
if (!n)
|
|
23
|
+
throw new Error("No data for EventModel");
|
|
24
|
+
return n.frames.forEach((a, i) => {
|
|
25
|
+
const r = L(a, n.dataEntities, t);
|
|
26
|
+
e = w(e, {
|
|
27
|
+
$kind: D,
|
|
28
|
+
index: i,
|
|
29
|
+
frame: a,
|
|
30
|
+
textProps: r
|
|
31
|
+
});
|
|
32
|
+
let d;
|
|
33
|
+
Q(a) ? (g.debug("source frame", a.sourceFrames), d = n.frames.filter((l) => a.sourceFrames.some((c) => c.$refText === l.name)), d.forEach((l) => {
|
|
34
|
+
e = w(e, {
|
|
35
|
+
$kind: M,
|
|
36
|
+
index: i,
|
|
37
|
+
frame: a,
|
|
38
|
+
sourceFrame: l
|
|
39
|
+
});
|
|
40
|
+
})) : e = w(e, {
|
|
41
|
+
$kind: M,
|
|
42
|
+
index: i,
|
|
43
|
+
frame: a
|
|
44
|
+
});
|
|
45
|
+
}), e = {
|
|
46
|
+
...e,
|
|
47
|
+
sortedSwimlanesArray: A(e.swimlanes)
|
|
48
|
+
}, e;
|
|
49
|
+
}
|
|
50
|
+
o(W, "getState");
|
|
51
|
+
function I(e) {
|
|
52
|
+
E.ast = e;
|
|
53
|
+
}
|
|
54
|
+
o(I, "setAst");
|
|
55
|
+
var s = {
|
|
56
|
+
swimlaneMinHeight: 70,
|
|
57
|
+
swimlanePadding: 15,
|
|
58
|
+
swimlaneGap: 10,
|
|
59
|
+
boxPadding: 10,
|
|
60
|
+
boxOverlap: 90,
|
|
61
|
+
boxDefaultY: 0,
|
|
62
|
+
boxMinWidth: 80,
|
|
63
|
+
boxMaxWidth: 450,
|
|
64
|
+
boxMinHeight: 80,
|
|
65
|
+
boxMaxHeight: 750,
|
|
66
|
+
contentStartX: 250,
|
|
67
|
+
textMaxWidth: 450 - 2 * 10,
|
|
68
|
+
boxTextFontWeight: "bold",
|
|
69
|
+
boxTextPadding: 10,
|
|
70
|
+
swimlaneTextFontWeight: "bold",
|
|
71
|
+
labelUiAutomation: "UI/Automation",
|
|
72
|
+
labelUiAutomationPrefix: "UI/A: ",
|
|
73
|
+
labelCommandReadModel: "Command/Read Model",
|
|
74
|
+
labelCommandReadModelPrefix: "C/RM: ",
|
|
75
|
+
labelEvents: "Events",
|
|
76
|
+
labelEventsPrefix: "Stream: "
|
|
77
|
+
};
|
|
78
|
+
function R() {
|
|
79
|
+
return s;
|
|
80
|
+
}
|
|
81
|
+
o(R, "getDiagramProps");
|
|
82
|
+
var Be = {
|
|
83
|
+
boxes: [],
|
|
84
|
+
swimlanes: {},
|
|
85
|
+
relations: [],
|
|
86
|
+
maxR: 0,
|
|
87
|
+
sortedSwimlanesArray: []
|
|
88
|
+
};
|
|
89
|
+
function H(e) {
|
|
90
|
+
const n = e.split(".");
|
|
91
|
+
if (n.length === 2)
|
|
92
|
+
return n[0];
|
|
93
|
+
}
|
|
94
|
+
o(H, "extractNamespace");
|
|
95
|
+
function U(e) {
|
|
96
|
+
const n = e.split(".");
|
|
97
|
+
return n.length === 2 ? n[1] : e;
|
|
98
|
+
}
|
|
99
|
+
o(U, "extractName");
|
|
100
|
+
function V(e, n) {
|
|
101
|
+
if (!(!n || n.length === 0))
|
|
102
|
+
return Object.values(e).find((t) => t.namespace === n);
|
|
103
|
+
}
|
|
104
|
+
o(V, "findSwimlaneByNamespace");
|
|
105
|
+
function v(e, n, t) {
|
|
106
|
+
return Math.max(
|
|
107
|
+
n,
|
|
108
|
+
...Object.keys(e).filter((a) => {
|
|
109
|
+
const i = Number.parseInt(a);
|
|
110
|
+
return i > n && i < t;
|
|
111
|
+
}).map((a) => Number.parseInt(a))
|
|
112
|
+
) + 1;
|
|
113
|
+
}
|
|
114
|
+
o(v, "findNextAvailableIndex");
|
|
115
|
+
function X(e, n) {
|
|
116
|
+
const t = H(e.entityIdentifier), a = V(n, t);
|
|
117
|
+
switch (e.modelEntityType) {
|
|
118
|
+
case "ui":
|
|
119
|
+
case "pcr":
|
|
120
|
+
case "processor":
|
|
121
|
+
return a ? {
|
|
122
|
+
index: a.index,
|
|
123
|
+
label: a.namespace || s.labelUiAutomation
|
|
124
|
+
} : t ? {
|
|
125
|
+
index: v(n, 0, 100),
|
|
126
|
+
label: s.labelUiAutomationPrefix + t
|
|
127
|
+
} : { index: 0, label: s.labelUiAutomation };
|
|
128
|
+
case "rmo":
|
|
129
|
+
case "readmodel":
|
|
130
|
+
case "cmd":
|
|
131
|
+
case "command":
|
|
132
|
+
return a ? {
|
|
133
|
+
index: a.index,
|
|
134
|
+
label: a.namespace || s.labelCommandReadModel
|
|
135
|
+
} : t ? {
|
|
136
|
+
index: v(n, 100, 200),
|
|
137
|
+
label: s.labelCommandReadModelPrefix + t
|
|
138
|
+
} : { index: 100, label: s.labelCommandReadModel };
|
|
139
|
+
case "evt":
|
|
140
|
+
case "event":
|
|
141
|
+
default:
|
|
142
|
+
return a ? {
|
|
143
|
+
index: a.index,
|
|
144
|
+
label: a.namespace || s.labelEvents
|
|
145
|
+
} : t ? {
|
|
146
|
+
index: v(n, 200, 300),
|
|
147
|
+
label: s.labelEventsPrefix + t
|
|
148
|
+
} : { index: 200, label: s.labelEvents };
|
|
149
|
+
}
|
|
150
|
+
}
|
|
151
|
+
o(X, "calculateSwimlaneProps");
|
|
152
|
+
function _(e) {
|
|
153
|
+
const { themeVariables: n } = $();
|
|
154
|
+
switch (e.modelEntityType) {
|
|
155
|
+
case "ui":
|
|
156
|
+
return {
|
|
157
|
+
fill: n.emUiFill ?? "white",
|
|
158
|
+
stroke: n.emUiStroke ?? "#dbdada"
|
|
159
|
+
};
|
|
160
|
+
case "pcr":
|
|
161
|
+
case "processor":
|
|
162
|
+
return {
|
|
163
|
+
fill: n.emProcessorFill ?? "#edb3f6",
|
|
164
|
+
stroke: n.emProcessorStroke ?? "#b88cbf"
|
|
165
|
+
};
|
|
166
|
+
case "rmo":
|
|
167
|
+
case "readmodel":
|
|
168
|
+
return {
|
|
169
|
+
fill: n.emReadModelFill ?? "#d3f1a2",
|
|
170
|
+
stroke: n.emReadModelStroke ?? "#a3b732"
|
|
171
|
+
};
|
|
172
|
+
case "cmd":
|
|
173
|
+
case "command":
|
|
174
|
+
return {
|
|
175
|
+
fill: n.emCommandFill ?? "#bcd6fe",
|
|
176
|
+
stroke: n.emCommandStroke ?? "#679ac3"
|
|
177
|
+
};
|
|
178
|
+
case "evt":
|
|
179
|
+
case "event":
|
|
180
|
+
return {
|
|
181
|
+
fill: n.emEventFill ?? "#ffb778",
|
|
182
|
+
stroke: n.emEventStroke ?? "#c19a0f"
|
|
183
|
+
};
|
|
184
|
+
default:
|
|
185
|
+
return {
|
|
186
|
+
fill: "red",
|
|
187
|
+
stroke: "black"
|
|
188
|
+
};
|
|
189
|
+
}
|
|
190
|
+
}
|
|
191
|
+
o(_, "calculateEntityVisualProps");
|
|
192
|
+
function L(e, n, t) {
|
|
193
|
+
const a = $(), i = P(U(e.entityIdentifier) ?? "", a);
|
|
194
|
+
let r;
|
|
195
|
+
const d = {
|
|
196
|
+
fontSize: 16,
|
|
197
|
+
fontWeight: 700,
|
|
198
|
+
fontFamily: '"trebuchet ms", verdana, arial, sans-serif',
|
|
199
|
+
joinWith: "<br/>"
|
|
200
|
+
};
|
|
201
|
+
let c = `<b>${S(i, t.textMaxWidth, d)}</b>`;
|
|
202
|
+
if (e.dataInlineValue && (r = e.dataInlineValue, r = r.substring(r.indexOf("{") + 1), r = r.substring(0, r.lastIndexOf("}") - 1), r = P(r, a), r = S(r, t.textMaxWidth, d), r = r.replaceAll(" ", " ")), e.dataReference) {
|
|
203
|
+
const p = n.find(
|
|
204
|
+
(y) => {
|
|
205
|
+
var b;
|
|
206
|
+
return y.name === ((b = e.dataReference) == null ? void 0 : b.$refText);
|
|
207
|
+
}
|
|
208
|
+
);
|
|
209
|
+
p && (r = p.dataBlockValue, r = r.substring(r.indexOf(`{
|
|
210
|
+
`) + 2), r = r.substring(0, r.lastIndexOf("}") - 1), r = P(r, a), r = S(r, t.textMaxWidth, d), r = r.replaceAll(" ", " "), r += "<br/>");
|
|
211
|
+
}
|
|
212
|
+
const m = r !== void 0;
|
|
213
|
+
m && (c += `<br/><br/><code style="text-align: left; display: block;max-width:${t.textMaxWidth}px">${r}</code>`);
|
|
214
|
+
const x = {
|
|
215
|
+
fontSize: d.fontSize,
|
|
216
|
+
fontWeight: d.fontWeight,
|
|
217
|
+
fontFamily: d.fontFamily
|
|
218
|
+
}, u = be(c, x), h = m ? u.width / 3 : u.width, f = {
|
|
219
|
+
content: c,
|
|
220
|
+
width: h,
|
|
221
|
+
height: u.height
|
|
222
|
+
};
|
|
223
|
+
return g.debug(`[${e.name}] ${e.entityIdentifier} text`, f), f;
|
|
224
|
+
}
|
|
225
|
+
o(L, "calculateTextProps");
|
|
226
|
+
function G(e, n) {
|
|
227
|
+
const t = n, a = _(t.frame), i = {
|
|
228
|
+
width: t.textProps.width + 2 * s.boxTextPadding,
|
|
229
|
+
height: t.textProps.height + 2 * s.boxTextPadding
|
|
230
|
+
};
|
|
231
|
+
return [{
|
|
232
|
+
$kind: N,
|
|
233
|
+
frame: t.frame,
|
|
234
|
+
index: t.index,
|
|
235
|
+
visual: a,
|
|
236
|
+
dimension: i,
|
|
237
|
+
textProps: t.textProps
|
|
238
|
+
}];
|
|
239
|
+
}
|
|
240
|
+
o(G, "decidePositionFrame");
|
|
241
|
+
function j(e, n, t) {
|
|
242
|
+
return n === void 0 ? s.contentStartX : n.index === e.index && e.r ? e.r + s.boxPadding : t === void 0 ? s.contentStartX : t.r - s.boxOverlap + s.boxPadding;
|
|
243
|
+
}
|
|
244
|
+
o(j, "calculateX");
|
|
245
|
+
function Y(e, n) {
|
|
246
|
+
const t = [...e.map((a) => a.r), n];
|
|
247
|
+
return Math.max(...t);
|
|
248
|
+
}
|
|
249
|
+
o(Y, "calculateMaxRight");
|
|
250
|
+
function A(e) {
|
|
251
|
+
return Object.values(e).sort((n, t) => n.index - t.index);
|
|
252
|
+
}
|
|
253
|
+
o(A, "sortedSwimlanesArray");
|
|
254
|
+
function z(e, n) {
|
|
255
|
+
const t = n, a = X(t.frame, e.swimlanes);
|
|
256
|
+
let i;
|
|
257
|
+
a.index in e.swimlanes ? i = e.swimlanes[a.index] : i = {
|
|
258
|
+
index: a.index,
|
|
259
|
+
label: a.label,
|
|
260
|
+
r: 0,
|
|
261
|
+
y: a.index * s.swimlaneMinHeight + s.swimlaneGap,
|
|
262
|
+
height: s.swimlaneMinHeight,
|
|
263
|
+
maxHeight: s.swimlaneMinHeight
|
|
264
|
+
};
|
|
265
|
+
const r = e.boxes.length > 0 ? e.boxes[e.boxes.length - 1] : void 0, d = e.previousSwimlaneNumber !== void 0 ? e.swimlanes[e.previousSwimlaneNumber] : void 0, l = {
|
|
266
|
+
width: Math.max(
|
|
267
|
+
s.boxMinWidth,
|
|
268
|
+
Math.min(s.boxMaxWidth, t.dimension.width)
|
|
269
|
+
) + 2 * s.boxPadding,
|
|
270
|
+
height: Math.max(
|
|
271
|
+
s.boxMinHeight,
|
|
272
|
+
Math.min(s.boxMaxHeight, t.dimension.height)
|
|
273
|
+
) + 2 * s.boxPadding
|
|
274
|
+
}, c = j(i, d, r), m = c + l.width + s.boxPadding, x = Y(Object.values(e.swimlanes), m);
|
|
275
|
+
i.r = c + l.width, i.maxHeight = Math.max(i.maxHeight, l.height), i.height = Math.max(s.swimlaneMinHeight, i.maxHeight) + 2 * s.swimlanePadding;
|
|
276
|
+
const u = {
|
|
277
|
+
x: c,
|
|
278
|
+
y: s.swimlanePadding + i.y,
|
|
279
|
+
// y: diagramProps.swimlanePadding + (swimlane.y || diagramProps.boxDefaultY),
|
|
280
|
+
r: m,
|
|
281
|
+
dimension: l,
|
|
282
|
+
leftSibling: !1,
|
|
283
|
+
swimlane: i,
|
|
284
|
+
visual: t.visual,
|
|
285
|
+
text: t.textProps.content,
|
|
286
|
+
frame: t.frame,
|
|
287
|
+
index: t.index
|
|
288
|
+
}, h = {
|
|
289
|
+
...e,
|
|
290
|
+
boxes: [...e.boxes, u],
|
|
291
|
+
swimlanes: {
|
|
292
|
+
...e.swimlanes,
|
|
293
|
+
[`${i.index}`]: i
|
|
294
|
+
},
|
|
295
|
+
previousSwimlaneNumber: a.index,
|
|
296
|
+
previousFrame: t.frame,
|
|
297
|
+
maxR: x
|
|
298
|
+
}, f = A(h.swimlanes);
|
|
299
|
+
f.length > 0 && (f[0].y = 0);
|
|
300
|
+
for (let p = 1; p < f.length; p++) {
|
|
301
|
+
const y = f[p], b = f[p - 1];
|
|
302
|
+
y.y = b.y + b.height + s.swimlaneGap;
|
|
303
|
+
}
|
|
304
|
+
return h;
|
|
305
|
+
}
|
|
306
|
+
o(z, "evolveFramePositioned");
|
|
307
|
+
function K(e, n) {
|
|
308
|
+
return e === 0 && n.sourceFrames.length === 0;
|
|
309
|
+
}
|
|
310
|
+
o(K, "isFirstFrame");
|
|
311
|
+
function Q(e) {
|
|
312
|
+
return e.sourceFrames !== void 0 && e.sourceFrames !== null && e.sourceFrames.length > 0;
|
|
313
|
+
}
|
|
314
|
+
o(Q, "hasSourceFrame");
|
|
315
|
+
function B(e, n) {
|
|
316
|
+
if (n != null)
|
|
317
|
+
return e.find((t) => t.frame.name === n.name);
|
|
318
|
+
}
|
|
319
|
+
o(B, "findBoxByFrame");
|
|
320
|
+
function Z(e, n, t) {
|
|
321
|
+
if (!(t < 0))
|
|
322
|
+
for (let a = t; a >= 0; a--) {
|
|
323
|
+
const i = e[a];
|
|
324
|
+
if (i.swimlane.index !== n)
|
|
325
|
+
return i;
|
|
326
|
+
}
|
|
327
|
+
}
|
|
328
|
+
o(Z, "findBoxByLineIndex");
|
|
329
|
+
function q(e, n) {
|
|
330
|
+
const t = n;
|
|
331
|
+
if (we(t.frame) || K(t.index, t.frame))
|
|
332
|
+
return [];
|
|
333
|
+
const a = B(e.boxes, t.frame);
|
|
334
|
+
if (a === void 0)
|
|
335
|
+
throw new Error(`Target box not found for frame ${t.frame.name}`);
|
|
336
|
+
let i;
|
|
337
|
+
return t.sourceFrame ? i = B(e.boxes, t.sourceFrame) : i = Z(e.boxes, a.swimlane.index, t.index - 1), i === void 0 ? [] : [{
|
|
338
|
+
$kind: C,
|
|
339
|
+
frame: t.frame,
|
|
340
|
+
index: t.index,
|
|
341
|
+
sourceBox: i,
|
|
342
|
+
targetBox: a
|
|
343
|
+
}];
|
|
344
|
+
}
|
|
345
|
+
o(q, "decidePositionRelation");
|
|
346
|
+
function J(e, n) {
|
|
347
|
+
const t = n, a = {
|
|
348
|
+
visual: {
|
|
349
|
+
fill: "none",
|
|
350
|
+
stroke: "#000"
|
|
351
|
+
},
|
|
352
|
+
source: {
|
|
353
|
+
x: t.sourceBox.x,
|
|
354
|
+
y: t.sourceBox.y
|
|
355
|
+
},
|
|
356
|
+
target: {
|
|
357
|
+
x: t.targetBox.x,
|
|
358
|
+
y: t.targetBox.y
|
|
359
|
+
},
|
|
360
|
+
sourceBox: t.sourceBox,
|
|
361
|
+
targetBox: t.targetBox
|
|
362
|
+
};
|
|
363
|
+
return {
|
|
364
|
+
...e,
|
|
365
|
+
relations: [...e.relations, a]
|
|
366
|
+
};
|
|
367
|
+
}
|
|
368
|
+
o(J, "evolveRelationPositioned");
|
|
369
|
+
var Fe = {
|
|
370
|
+
[D]: G,
|
|
371
|
+
[M]: q
|
|
372
|
+
}, $e = {
|
|
373
|
+
[N]: z,
|
|
374
|
+
[C]: J
|
|
375
|
+
};
|
|
376
|
+
function ee(e, n) {
|
|
377
|
+
const t = Fe[n.$kind];
|
|
378
|
+
if (t == null)
|
|
379
|
+
return [];
|
|
380
|
+
const a = t(e, n);
|
|
381
|
+
return g.debug("decided events", a), a;
|
|
382
|
+
}
|
|
383
|
+
o(ee, "decide");
|
|
384
|
+
function te(e, n) {
|
|
385
|
+
const t = n.reduce((a, i) => {
|
|
386
|
+
const r = $e[i.$kind];
|
|
387
|
+
return r == null ? a : r(a, i);
|
|
388
|
+
}, e);
|
|
389
|
+
return g.debug("evolve events", { state: e, newState: t, events: n }), t;
|
|
390
|
+
}
|
|
391
|
+
o(te, "evolve");
|
|
392
|
+
function w(e, n) {
|
|
393
|
+
const t = ee(e, n);
|
|
394
|
+
return te(e, t);
|
|
395
|
+
}
|
|
396
|
+
o(w, "dispatch");
|
|
397
|
+
var F = {
|
|
398
|
+
getConfig: Me,
|
|
399
|
+
setOptions: ye,
|
|
400
|
+
getOptions: Pe,
|
|
401
|
+
clear: Se,
|
|
402
|
+
setAccTitle: ue,
|
|
403
|
+
getAccTitle: me,
|
|
404
|
+
getAccDescription: ce,
|
|
405
|
+
setAccDescription: le,
|
|
406
|
+
setDiagramTitle: de,
|
|
407
|
+
getDiagramTitle: se,
|
|
408
|
+
setAst: I,
|
|
409
|
+
getDiagramProps: R,
|
|
410
|
+
getState: W
|
|
411
|
+
}, Ee = {
|
|
412
|
+
parse: /* @__PURE__ */ o(async (e) => {
|
|
413
|
+
const n = await ve("eventmodeling", e);
|
|
414
|
+
g.debug(n), F.setAst(n), oe(n, F);
|
|
415
|
+
}, "parse")
|
|
416
|
+
}, k = T(), Re = k == null ? void 0 : k.eventmodeling;
|
|
417
|
+
function ne(e, n) {
|
|
418
|
+
return (t) => {
|
|
419
|
+
const a = t.swimlane.y + n.swimlanePadding, i = e.append("g").attr("class", "em-box");
|
|
420
|
+
i.append("rect").attr("x", t.x).attr("y", a).attr("rx", "3").attr("width", t.dimension.width).attr("height", t.dimension.height).attr("stroke", t.visual.stroke).attr("fill", t.visual.fill), i.append("foreignObject").attr("x", t.x + n.boxPadding).attr("y", a + 10).attr("width", t.dimension.width - 2 * n.boxPadding).attr("height", t.dimension.height - 2 * n.boxPadding).append("xhtml:div").style("display", "table").style("height", "100%").style("width", "100%").append("span").style("display", "table-cell").style("text-align", "center").style("vertical-align", "middle").html(t.text);
|
|
421
|
+
};
|
|
422
|
+
}
|
|
423
|
+
o(ne, "renderD3Box");
|
|
424
|
+
function ae(e, n) {
|
|
425
|
+
return e > n;
|
|
426
|
+
}
|
|
427
|
+
o(ae, "dirUpwards");
|
|
428
|
+
function ie(e, n, t, a) {
|
|
429
|
+
return (i) => {
|
|
430
|
+
const r = i.sourceBox.swimlane.y + n.swimlanePadding, d = i.targetBox.swimlane.y + n.swimlanePadding, l = ae(r, d), c = i.sourceBox.x + i.sourceBox.dimension.width * 2 / 3, m = i.targetBox.x + i.targetBox.dimension.width / 3;
|
|
431
|
+
let x, u;
|
|
432
|
+
g.debug(`rendering relation up=${l} for `, {
|
|
433
|
+
sourceBox: i.sourceBox,
|
|
434
|
+
targetBox: i.targetBox
|
|
435
|
+
}), l ? (x = r, u = d + i.targetBox.dimension.height) : (x = r + i.sourceBox.dimension.height, u = d);
|
|
436
|
+
const h = a.emRelationStroke ?? i.visual.stroke;
|
|
437
|
+
e.append("path").attr("class", "em-relation").attr("fill", i.visual.fill).attr("stroke", h).attr("stroke-width", "1").attr("marker-end", `url(#${t})`).attr("d", `M${c} ${x} L${m} ${u}`);
|
|
438
|
+
};
|
|
439
|
+
}
|
|
440
|
+
o(ie, "renderD3Relation");
|
|
441
|
+
function re(e, n, t, a) {
|
|
442
|
+
return (i) => {
|
|
443
|
+
const r = e.append("g").attr("class", "em-swimlane"), d = a.emSwimlaneBackgroundOdd ?? "rgb(250,250,250)", l = a.emSwimlaneBackgroundStroke ?? "rgb(240,240,240)";
|
|
444
|
+
r.append("rect").attr("x", 0).attr("y", i.y).attr("rx", "3").attr("width", n + t.swimlanePadding).attr("height", i.height).attr("fill", d).attr("stroke", l), r.append("text").attr("font-weight", t.swimlaneTextFontWeight).attr("x", 30).attr("y", i.y + 30).text(i.label);
|
|
445
|
+
};
|
|
446
|
+
}
|
|
447
|
+
o(re, "renderD3Swimlane");
|
|
448
|
+
var Ae = /* @__PURE__ */ o(function(e, n, t, a) {
|
|
449
|
+
if (g.debug("in eventmodeling renderer", e + `
|
|
450
|
+
`, "id:", n, t), !Re)
|
|
451
|
+
throw new Error("EventModeling config not found");
|
|
452
|
+
const i = a.db, { themeVariables: r, eventmodeling: d } = T(), l = xe(`[id="${n}"]`), c = i.getDiagramProps(), m = i.getState(), x = `em-arrowhead-${n}`, u = r.emArrowhead ?? "#000000";
|
|
453
|
+
m.sortedSwimlanesArray.forEach(
|
|
454
|
+
re(l, m.maxR, c, r)
|
|
455
|
+
), m.boxes.forEach(ne(l, c)), m.relations.forEach(ie(l, c, x, r)), l.append("defs").append("marker").attr("id", x).attr("markerWidth", "10").attr("markerHeight", "7").attr("refX", "10").attr("refY", "3.5").attr("orient", "auto").append("polygon").attr("points", "0 0, 10 3.5, 0 7").attr("fill", u), fe(void 0, l, (d == null ? void 0 : d.padding) ?? 30, d == null ? void 0 : d.useMaxWidth);
|
|
456
|
+
}, "draw"), Te = {
|
|
457
|
+
draw: Ae
|
|
458
|
+
}, De = /* @__PURE__ */ o((e) => "", "getStyles"), Ne = De, Ie = {
|
|
459
|
+
parser: Ee,
|
|
460
|
+
db: F,
|
|
461
|
+
renderer: Te,
|
|
462
|
+
styles: Ne
|
|
463
|
+
};
|
|
464
|
+
export {
|
|
465
|
+
Ie as diagram
|
|
466
|
+
};
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const ne=require("./chunk-4BX2VUAB-CdMctZeT.cjs"),a=require("./mermaid.core-BzNKr-OJ.cjs"),F=require("./wardley-L42UT6IY-tDp0NbFW.cjs");var E="position frame",$="frame positioned",y="position relation",A="relation positioned",ae=a.__name(function(e){a.log.debug("options str",e)},"setOptions"),ie=a.__name(function(){return{}},"getOptions"),re=a.__name(function(){T(),a.clear()},"clear");function T(){k={}}a.__name(T,"reset");var oe=a.defaultConfig_default.eventmodeling,se=a.__name(()=>a.cleanAndMerge({...oe,...a.getConfig().eventmodeling}),"getConfig"),k={};function R(){let e=le;const{ast:n}=k,t=M();if(!n)throw new Error("No data for EventModel");return n.frames.forEach((i,r)=>{const o=H(i,n.dataEntities,t);e=v(e,{$kind:E,index:r,frame:i,textProps:o});let l;G(i)?(a.log.debug("source frame",i.sourceFrames),l=n.frames.filter(d=>i.sourceFrames.some(c=>c.$refText===d.name)),l.forEach(d=>{e=v(e,{$kind:y,index:r,frame:i,sourceFrame:d})})):e=v(e,{$kind:y,index:r,frame:i})}),e={...e,sortedSwimlanesArray:B(e.swimlanes)},e}a.__name(R,"getState");function D(e){k.ast=e}a.__name(D,"setAst");var s={swimlaneMinHeight:70,swimlanePadding:15,swimlaneGap:10,boxPadding:10,boxOverlap:90,boxDefaultY:0,boxMinWidth:80,boxMaxWidth:450,boxMinHeight:80,boxMaxHeight:750,contentStartX:250,textMaxWidth:450-2*10,boxTextFontWeight:"bold",boxTextPadding:10,swimlaneTextFontWeight:"bold",labelUiAutomation:"UI/Automation",labelUiAutomationPrefix:"UI/A: ",labelCommandReadModel:"Command/Read Model",labelCommandReadModelPrefix:"C/RM: ",labelEvents:"Events",labelEventsPrefix:"Stream: "};function M(){return s}a.__name(M,"getDiagramProps");var le={boxes:[],swimlanes:{},relations:[],maxR:0,sortedSwimlanesArray:[]};function C(e){const n=e.split(".");if(n.length===2)return n[0]}a.__name(C,"extractNamespace");function N(e){const n=e.split(".");return n.length===2?n[1]:e}a.__name(N,"extractName");function O(e,n){if(!(!n||n.length===0))return Object.values(e).find(t=>t.namespace===n)}a.__name(O,"findSwimlaneByNamespace");function p(e,n,t){return Math.max(n,...Object.keys(e).filter(i=>{const r=Number.parseInt(i);return r>n&&r<t}).map(i=>Number.parseInt(i)))+1}a.__name(p,"findNextAvailableIndex");function W(e,n){const t=C(e.entityIdentifier),i=O(n,t);switch(e.modelEntityType){case"ui":case"pcr":case"processor":return i?{index:i.index,label:i.namespace||s.labelUiAutomation}:t?{index:p(n,0,100),label:s.labelUiAutomationPrefix+t}:{index:0,label:s.labelUiAutomation};case"rmo":case"readmodel":case"cmd":case"command":return i?{index:i.index,label:i.namespace||s.labelCommandReadModel}:t?{index:p(n,100,200),label:s.labelCommandReadModelPrefix+t}:{index:100,label:s.labelCommandReadModel};case"evt":case"event":default:return i?{index:i.index,label:i.namespace||s.labelEvents}:t?{index:p(n,200,300),label:s.labelEventsPrefix+t}:{index:200,label:s.labelEvents}}}a.__name(W,"calculateSwimlaneProps");function I(e){const{themeVariables:n}=a.getConfig();switch(e.modelEntityType){case"ui":return{fill:n.emUiFill??"white",stroke:n.emUiStroke??"#dbdada"};case"pcr":case"processor":return{fill:n.emProcessorFill??"#edb3f6",stroke:n.emProcessorStroke??"#b88cbf"};case"rmo":case"readmodel":return{fill:n.emReadModelFill??"#d3f1a2",stroke:n.emReadModelStroke??"#a3b732"};case"cmd":case"command":return{fill:n.emCommandFill??"#bcd6fe",stroke:n.emCommandStroke??"#679ac3"};case"evt":case"event":return{fill:n.emEventFill??"#ffb778",stroke:n.emEventStroke??"#c19a0f"};default:return{fill:"red",stroke:"black"}}}a.__name(I,"calculateEntityVisualProps");function H(e,n,t){const i=a.getConfig(),r=a.sanitizeText(N(e.entityIdentifier)??"",i);let o;const l={fontSize:16,fontWeight:700,fontFamily:'"trebuchet ms", verdana, arial, sans-serif',joinWith:"<br/>"};let c=`<b>${a.wrapLabel(r,t.textMaxWidth,l)}</b>`;if(e.dataInlineValue&&(o=e.dataInlineValue,o=o.substring(o.indexOf("{")+1),o=o.substring(0,o.lastIndexOf("}")-1),o=a.sanitizeText(o,i),o=a.wrapLabel(o,t.textMaxWidth,l),o=o.replaceAll(" "," ")),e.dataReference){const h=n.find(w=>{var b;return w.name===((b=e.dataReference)==null?void 0:b.$refText)});h&&(o=h.dataBlockValue,o=o.substring(o.indexOf(`{
|
|
2
|
+
`)+2),o=o.substring(0,o.lastIndexOf("}")-1),o=a.sanitizeText(o,i),o=a.wrapLabel(o,t.textMaxWidth,l),o=o.replaceAll(" "," "),o+="<br/>")}const m=o!==void 0;m&&(c+=`<br/><br/><code style="text-align: left; display: block;max-width:${t.textMaxWidth}px">${o}</code>`);const x={fontSize:l.fontSize,fontWeight:l.fontWeight,fontFamily:l.fontFamily},u=a.calculateTextDimensions(c,x),f=m?u.width/3:u.width,g={content:c,width:f,height:u.height};return a.log.debug(`[${e.name}] ${e.entityIdentifier} text`,g),g}a.__name(H,"calculateTextProps");function U(e,n){const t=n,i=I(t.frame),r={width:t.textProps.width+2*s.boxTextPadding,height:t.textProps.height+2*s.boxTextPadding};return[{$kind:$,frame:t.frame,index:t.index,visual:i,dimension:r,textProps:t.textProps}]}a.__name(U,"decidePositionFrame");function L(e,n,t){return n===void 0?s.contentStartX:n.index===e.index&&e.r?e.r+s.boxPadding:t===void 0?s.contentStartX:t.r-s.boxOverlap+s.boxPadding}a.__name(L,"calculateX");function V(e,n){const t=[...e.map(i=>i.r),n];return Math.max(...t)}a.__name(V,"calculateMaxRight");function B(e){return Object.values(e).sort((n,t)=>n.index-t.index)}a.__name(B,"sortedSwimlanesArray");function X(e,n){const t=n,i=W(t.frame,e.swimlanes);let r;i.index in e.swimlanes?r=e.swimlanes[i.index]:r={index:i.index,label:i.label,r:0,y:i.index*s.swimlaneMinHeight+s.swimlaneGap,height:s.swimlaneMinHeight,maxHeight:s.swimlaneMinHeight};const o=e.boxes.length>0?e.boxes[e.boxes.length-1]:void 0,l=e.previousSwimlaneNumber!==void 0?e.swimlanes[e.previousSwimlaneNumber]:void 0,d={width:Math.max(s.boxMinWidth,Math.min(s.boxMaxWidth,t.dimension.width))+2*s.boxPadding,height:Math.max(s.boxMinHeight,Math.min(s.boxMaxHeight,t.dimension.height))+2*s.boxPadding},c=L(r,l,o),m=c+d.width+s.boxPadding,x=V(Object.values(e.swimlanes),m);r.r=c+d.width,r.maxHeight=Math.max(r.maxHeight,d.height),r.height=Math.max(s.swimlaneMinHeight,r.maxHeight)+2*s.swimlanePadding;const u={x:c,y:s.swimlanePadding+r.y,r:m,dimension:d,leftSibling:!1,swimlane:r,visual:t.visual,text:t.textProps.content,frame:t.frame,index:t.index},f={...e,boxes:[...e.boxes,u],swimlanes:{...e.swimlanes,[`${r.index}`]:r},previousSwimlaneNumber:i.index,previousFrame:t.frame,maxR:x},g=B(f.swimlanes);g.length>0&&(g[0].y=0);for(let h=1;h<g.length;h++){const w=g[h],b=g[h-1];w.y=b.y+b.height+s.swimlaneGap}return f}a.__name(X,"evolveFramePositioned");function j(e,n){return e===0&&n.sourceFrames.length===0}a.__name(j,"isFirstFrame");function G(e){return e.sourceFrames!==void 0&&e.sourceFrames!==null&&e.sourceFrames.length>0}a.__name(G,"hasSourceFrame");function P(e,n){if(n!=null)return e.find(t=>t.frame.name===n.name)}a.__name(P,"findBoxByFrame");function Y(e,n,t){if(!(t<0))for(let i=t;i>=0;i--){const r=e[i];if(r.swimlane.index!==n)return r}}a.__name(Y,"findBoxByLineIndex");function z(e,n){const t=n;if(F.isEmResetFrame(t.frame)||j(t.index,t.frame))return[];const i=P(e.boxes,t.frame);if(i===void 0)throw new Error(`Target box not found for frame ${t.frame.name}`);let r;return t.sourceFrame?r=P(e.boxes,t.sourceFrame):r=Y(e.boxes,i.swimlane.index,t.index-1),r===void 0?[]:[{$kind:A,frame:t.frame,index:t.index,sourceBox:r,targetBox:i}]}a.__name(z,"decidePositionRelation");function K(e,n){const t=n,i={visual:{fill:"none",stroke:"#000"},source:{x:t.sourceBox.x,y:t.sourceBox.y},target:{x:t.targetBox.x,y:t.targetBox.y},sourceBox:t.sourceBox,targetBox:t.targetBox};return{...e,relations:[...e.relations,i]}}a.__name(K,"evolveRelationPositioned");var de={[E]:U,[y]:z},ce={[$]:X,[A]:K};function q(e,n){const t=de[n.$kind];if(t==null)return[];const i=t(e,n);return a.log.debug("decided events",i),i}a.__name(q,"decide");function J(e,n){const t=n.reduce((i,r)=>{const o=ce[r.$kind];return o==null?i:o(i,r)},e);return a.log.debug("evolve events",{state:e,newState:t,events:n}),t}a.__name(J,"evolve");function v(e,n){const t=q(e,n);return J(e,t)}a.__name(v,"dispatch");var S={getConfig:se,setOptions:ae,getOptions:ie,clear:re,setAccTitle:a.setAccTitle,getAccTitle:a.getAccTitle,getAccDescription:a.getAccDescription,setAccDescription:a.setAccDescription,setDiagramTitle:a.setDiagramTitle,getDiagramTitle:a.getDiagramTitle,setAst:D,getDiagramProps:M,getState:R},me={parse:a.__name(async e=>{const n=await F.parse("eventmodeling",e);a.log.debug(n),S.setAst(n),ne.populateCommonDb(n,S)},"parse")},_=a.getConfig2(),ue=_==null?void 0:_.eventmodeling;function Q(e,n){return t=>{const i=t.swimlane.y+n.swimlanePadding,r=e.append("g").attr("class","em-box");r.append("rect").attr("x",t.x).attr("y",i).attr("rx","3").attr("width",t.dimension.width).attr("height",t.dimension.height).attr("stroke",t.visual.stroke).attr("fill",t.visual.fill),r.append("foreignObject").attr("x",t.x+n.boxPadding).attr("y",i+10).attr("width",t.dimension.width-2*n.boxPadding).attr("height",t.dimension.height-2*n.boxPadding).append("xhtml:div").style("display","table").style("height","100%").style("width","100%").append("span").style("display","table-cell").style("text-align","center").style("vertical-align","middle").html(t.text)}}a.__name(Q,"renderD3Box");function Z(e,n){return e>n}a.__name(Z,"dirUpwards");function ee(e,n,t,i){return r=>{const o=r.sourceBox.swimlane.y+n.swimlanePadding,l=r.targetBox.swimlane.y+n.swimlanePadding,d=Z(o,l),c=r.sourceBox.x+r.sourceBox.dimension.width*2/3,m=r.targetBox.x+r.targetBox.dimension.width/3;let x,u;a.log.debug(`rendering relation up=${d} for `,{sourceBox:r.sourceBox,targetBox:r.targetBox}),d?(x=o,u=l+r.targetBox.dimension.height):(x=o+r.sourceBox.dimension.height,u=l);const f=i.emRelationStroke??r.visual.stroke;e.append("path").attr("class","em-relation").attr("fill",r.visual.fill).attr("stroke",f).attr("stroke-width","1").attr("marker-end",`url(#${t})`).attr("d",`M${c} ${x} L${m} ${u}`)}}a.__name(ee,"renderD3Relation");function te(e,n,t,i){return r=>{const o=e.append("g").attr("class","em-swimlane"),l=i.emSwimlaneBackgroundOdd??"rgb(250,250,250)",d=i.emSwimlaneBackgroundStroke??"rgb(240,240,240)";o.append("rect").attr("x",0).attr("y",r.y).attr("rx","3").attr("width",n+t.swimlanePadding).attr("height",r.height).attr("fill",l).attr("stroke",d),o.append("text").attr("font-weight",t.swimlaneTextFontWeight).attr("x",30).attr("y",r.y+30).text(r.label)}}a.__name(te,"renderD3Swimlane");var xe=a.__name(function(e,n,t,i){if(a.log.debug("in eventmodeling renderer",e+`
|
|
3
|
+
`,"id:",n,t),!ue)throw new Error("EventModeling config not found");const r=i.db,{themeVariables:o,eventmodeling:l}=a.getConfig2(),d=a.select(`[id="${n}"]`),c=r.getDiagramProps(),m=r.getState(),x=`em-arrowhead-${n}`,u=o.emArrowhead??"#000000";m.sortedSwimlanesArray.forEach(te(d,m.maxR,c,o)),m.boxes.forEach(Q(d,c)),m.relations.forEach(ee(d,c,x,o)),d.append("defs").append("marker").attr("id",x).attr("markerWidth","10").attr("markerHeight","7").attr("refX","10").attr("refY","3.5").attr("orient","auto").append("polygon").attr("points","0 0, 10 3.5, 0 7").attr("fill",u),a.setupGraphViewbox2(void 0,d,(l==null?void 0:l.padding)??30,l==null?void 0:l.useMaxWidth)},"draw"),ge={draw:xe},fe=a.__name(e=>"","getStyles"),he=fe,be={parser:me,db:S,renderer:ge,styles:he};exports.diagram=be;
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const a=require("./mermaid.core-BzNKr-OJ.cjs"),$=require("./chunk-4BX2VUAB-CdMctZeT.cjs"),x=require("./wardley-L42UT6IY-tDp0NbFW.cjs");var B=a.defaultConfig_default.packet,b,m=(b=class{constructor(){this.packet=[],this.setAccTitle=a.setAccTitle,this.getAccTitle=a.getAccTitle,this.setDiagramTitle=a.setDiagramTitle,this.getDiagramTitle=a.getDiagramTitle,this.getAccDescription=a.getAccDescription,this.setAccDescription=a.setAccDescription}getConfig(){const t=a.cleanAndMerge({...B,...a.getConfig().packet});return t.showBits&&(t.paddingY+=10),t}getPacket(){return this.packet}pushWord(t){t.length>0&&this.packet.push(t)}clear(){a.clear(),this.packet=[]}},a.__name(b,"PacketDB"),b),C=1e4,_=a.__name((e,t)=>{$.populateCommonDb(e,t);let i=-1,o=[],l=1;const{bitsPerRow:c}=t.getConfig();for(let{start:r,end:n,bits:p,label:d}of e.blocks){if(r!==void 0&&n!==void 0&&n<r)throw new Error(`Packet block ${r} - ${n} is invalid. End must be greater than start.`);if(r??(r=i+1),r!==i+1)throw new Error(`Packet block ${r} - ${n??r} is not contiguous. It should start from ${i+1}.`);if(p===0)throw new Error(`Packet block ${r} is invalid. Cannot have a zero bit field.`);for(n??(n=r+(p??1)-1),p??(p=n-r+1),i=n,a.log.debug(`Packet block ${r} - ${i} with label ${d}`);o.length<=c+1&&t.getPacket().length<C;){const[g,s]=S({start:r,end:n,bits:p,label:d},l,c);if(o.push(g),g.end+1===l*c&&(t.pushWord(o),o=[],l++),!s)break;({start:r,end:n,bits:p,label:d}=s)}}t.pushWord(o)},"populate"),S=a.__name((e,t,i)=>{if(e.start===void 0)throw new Error("start should have been set during first phase");if(e.end===void 0)throw new Error("end should have been set during first phase");if(e.start>e.end)throw new Error(`Block start ${e.start} is greater than block end ${e.end}.`);if(e.end+1<=t*i)return[e,void 0];const o=t*i-1,l=t*i;return[{start:e.start,end:o,label:e.label,bits:o-e.start},{start:l,end:e.end,label:e.label,bits:e.end-l}]},"getNextFittingBlock"),w={parser:{yy:void 0},parse:a.__name(async e=>{var o;const t=await x.parse("packet",e),i=(o=w.parser)==null?void 0:o.yy;if(!(i instanceof m))throw new Error("parser.parser?.yy was not a PacketDB. This is due to a bug within Mermaid, please report this issue at https://github.com/mermaid-js/mermaid/issues.");a.log.debug(t),_(t,i)},"parse")},T=a.__name((e,t,i,o)=>{const l=o.db,c=l.getConfig(),{rowHeight:r,paddingY:n,bitWidth:p,bitsPerRow:d}=c,g=l.getPacket(),s=l.getDiagramTitle(),k=r+n,h=k*(g.length+1)-(s?0:r),f=p*d+2,u=a.selectSvgElement(t);u.attr("viewBox",`0 0 ${f} ${h}`),a.configureSvgSize(u,h,f,c.useMaxWidth);for(const[v,y]of g.entries())D(u,y,v,c);u.append("text").text(s).attr("x",f/2).attr("y",h-k/2).attr("dominant-baseline","middle").attr("text-anchor","middle").attr("class","packetTitle")},"draw"),D=a.__name((e,t,i,{rowHeight:o,paddingX:l,paddingY:c,bitWidth:r,bitsPerRow:n,showBits:p})=>{const d=e.append("g"),g=i*(o+c)+c;for(const s of t){const k=s.start%n*r+1,h=(s.end-s.start+1)*r-l;if(d.append("rect").attr("x",k).attr("y",g).attr("width",h).attr("height",o).attr("class","packetBlock"),d.append("text").attr("x",k+h/2).attr("y",g+o/2).attr("class","packetLabel").attr("dominant-baseline","middle").attr("text-anchor","middle").text(s.label),!p)continue;const f=s.end===s.start,u=g-2;d.append("text").attr("x",k+(f?h/2:0)).attr("y",u).attr("class","packetByte start").attr("dominant-baseline","auto").attr("text-anchor",f?"middle":"start").text(s.start),f||d.append("text").attr("x",k+h).attr("y",u).attr("class","packetByte end").attr("dominant-baseline","auto").attr("text-anchor","end").text(s.end)}},"drawWord"),P={draw:T},A={byteFontSize:"10px",startByteColor:"black",endByteColor:"black",labelColor:"black",labelFontSize:"12px",titleColor:"black",titleFontSize:"14px",blockStrokeColor:"black",blockStrokeWidth:"1",blockFillColor:"#efefef"},z=a.__name(({packet:e}={})=>{const t=a.cleanAndMerge(A,e);return`
|
|
2
|
+
.packetByte {
|
|
3
|
+
font-size: ${t.byteFontSize};
|
|
4
|
+
}
|
|
5
|
+
.packetByte.start {
|
|
6
|
+
fill: ${t.startByteColor};
|
|
7
|
+
}
|
|
8
|
+
.packetByte.end {
|
|
9
|
+
fill: ${t.endByteColor};
|
|
10
|
+
}
|
|
11
|
+
.packetLabel {
|
|
12
|
+
fill: ${t.labelColor};
|
|
13
|
+
font-size: ${t.labelFontSize};
|
|
14
|
+
}
|
|
15
|
+
.packetTitle {
|
|
16
|
+
fill: ${t.titleColor};
|
|
17
|
+
font-size: ${t.titleFontSize};
|
|
18
|
+
}
|
|
19
|
+
.packetBlock {
|
|
20
|
+
stroke: ${t.blockStrokeColor};
|
|
21
|
+
stroke-width: ${t.blockStrokeWidth};
|
|
22
|
+
fill: ${t.blockFillColor};
|
|
23
|
+
}
|
|
24
|
+
`},"styles"),E={parser:w,get db(){return new m},renderer:P,styles:z};exports.diagram=E;
|
|
@@ -0,0 +1,143 @@
|
|
|
1
|
+
import { b, s as m, a_ as B, E as C, aB as w, b0 as S, a0 as D, b2 as T, a3 as E, $ as P, a$ as z, a1 as F, Q as A, t as W } from "./mermaid.core-CdBIz6FY.js";
|
|
2
|
+
import { p as _ } from "./chunk-4BX2VUAB-Bq3GzsD8.js";
|
|
3
|
+
import { p as N } from "./wardley-L42UT6IY-DUnkyH_z.js";
|
|
4
|
+
var L = A.packet, u, $ = (u = class {
|
|
5
|
+
constructor() {
|
|
6
|
+
this.packet = [], this.setAccTitle = S, this.getAccTitle = D, this.setDiagramTitle = T, this.getDiagramTitle = E, this.getAccDescription = P, this.setAccDescription = z;
|
|
7
|
+
}
|
|
8
|
+
getConfig() {
|
|
9
|
+
const t = m({
|
|
10
|
+
...L,
|
|
11
|
+
...F().packet
|
|
12
|
+
});
|
|
13
|
+
return t.showBits && (t.paddingY += 10), t;
|
|
14
|
+
}
|
|
15
|
+
getPacket() {
|
|
16
|
+
return this.packet;
|
|
17
|
+
}
|
|
18
|
+
pushWord(t) {
|
|
19
|
+
t.length > 0 && this.packet.push(t);
|
|
20
|
+
}
|
|
21
|
+
clear() {
|
|
22
|
+
W(), this.packet = [];
|
|
23
|
+
}
|
|
24
|
+
}, b(u, "PacketDB"), u), M = 1e4, Y = /* @__PURE__ */ b((e, t) => {
|
|
25
|
+
_(e, t);
|
|
26
|
+
let s = -1, r = [], n = 1;
|
|
27
|
+
const { bitsPerRow: l } = t.getConfig();
|
|
28
|
+
for (let { start: a, end: i, bits: d, label: c } of e.blocks) {
|
|
29
|
+
if (a !== void 0 && i !== void 0 && i < a)
|
|
30
|
+
throw new Error(`Packet block ${a} - ${i} is invalid. End must be greater than start.`);
|
|
31
|
+
if (a ?? (a = s + 1), a !== s + 1)
|
|
32
|
+
throw new Error(
|
|
33
|
+
`Packet block ${a} - ${i ?? a} is not contiguous. It should start from ${s + 1}.`
|
|
34
|
+
);
|
|
35
|
+
if (d === 0)
|
|
36
|
+
throw new Error(`Packet block ${a} is invalid. Cannot have a zero bit field.`);
|
|
37
|
+
for (i ?? (i = a + (d ?? 1) - 1), d ?? (d = i - a + 1), s = i, w.debug(`Packet block ${a} - ${s} with label ${c}`); r.length <= l + 1 && t.getPacket().length < M; ) {
|
|
38
|
+
const [p, o] = I({ start: a, end: i, bits: d, label: c }, n, l);
|
|
39
|
+
if (r.push(p), p.end + 1 === n * l && (t.pushWord(r), r = [], n++), !o)
|
|
40
|
+
break;
|
|
41
|
+
({ start: a, end: i, bits: d, label: c } = o);
|
|
42
|
+
}
|
|
43
|
+
}
|
|
44
|
+
t.pushWord(r);
|
|
45
|
+
}, "populate"), I = /* @__PURE__ */ b((e, t, s) => {
|
|
46
|
+
if (e.start === void 0)
|
|
47
|
+
throw new Error("start should have been set during first phase");
|
|
48
|
+
if (e.end === void 0)
|
|
49
|
+
throw new Error("end should have been set during first phase");
|
|
50
|
+
if (e.start > e.end)
|
|
51
|
+
throw new Error(`Block start ${e.start} is greater than block end ${e.end}.`);
|
|
52
|
+
if (e.end + 1 <= t * s)
|
|
53
|
+
return [e, void 0];
|
|
54
|
+
const r = t * s - 1, n = t * s;
|
|
55
|
+
return [
|
|
56
|
+
{
|
|
57
|
+
start: e.start,
|
|
58
|
+
end: r,
|
|
59
|
+
label: e.label,
|
|
60
|
+
bits: r - e.start
|
|
61
|
+
},
|
|
62
|
+
{
|
|
63
|
+
start: n,
|
|
64
|
+
end: e.end,
|
|
65
|
+
label: e.label,
|
|
66
|
+
bits: e.end - n
|
|
67
|
+
}
|
|
68
|
+
];
|
|
69
|
+
}, "getNextFittingBlock"), v = {
|
|
70
|
+
// @ts-expect-error - PacketDB is not assignable to DiagramDB
|
|
71
|
+
parser: { yy: void 0 },
|
|
72
|
+
parse: /* @__PURE__ */ b(async (e) => {
|
|
73
|
+
var r;
|
|
74
|
+
const t = await N("packet", e), s = (r = v.parser) == null ? void 0 : r.yy;
|
|
75
|
+
if (!(s instanceof $))
|
|
76
|
+
throw new Error(
|
|
77
|
+
"parser.parser?.yy was not a PacketDB. This is due to a bug within Mermaid, please report this issue at https://github.com/mermaid-js/mermaid/issues."
|
|
78
|
+
);
|
|
79
|
+
w.debug(t), Y(t, s);
|
|
80
|
+
}, "parse")
|
|
81
|
+
}, O = /* @__PURE__ */ b((e, t, s, r) => {
|
|
82
|
+
const n = r.db, l = n.getConfig(), { rowHeight: a, paddingY: i, bitWidth: d, bitsPerRow: c } = l, p = n.getPacket(), o = n.getDiagramTitle(), h = a + i, g = h * (p.length + 1) - (o ? 0 : a), k = d * c + 2, f = B(t);
|
|
83
|
+
f.attr("viewBox", `0 0 ${k} ${g}`), C(f, g, k, l.useMaxWidth);
|
|
84
|
+
for (const [x, y] of p.entries())
|
|
85
|
+
j(f, y, x, l);
|
|
86
|
+
f.append("text").text(o).attr("x", k / 2).attr("y", g - h / 2).attr("dominant-baseline", "middle").attr("text-anchor", "middle").attr("class", "packetTitle");
|
|
87
|
+
}, "draw"), j = /* @__PURE__ */ b((e, t, s, { rowHeight: r, paddingX: n, paddingY: l, bitWidth: a, bitsPerRow: i, showBits: d }) => {
|
|
88
|
+
const c = e.append("g"), p = s * (r + l) + l;
|
|
89
|
+
for (const o of t) {
|
|
90
|
+
const h = o.start % i * a + 1, g = (o.end - o.start + 1) * a - n;
|
|
91
|
+
if (c.append("rect").attr("x", h).attr("y", p).attr("width", g).attr("height", r).attr("class", "packetBlock"), c.append("text").attr("x", h + g / 2).attr("y", p + r / 2).attr("class", "packetLabel").attr("dominant-baseline", "middle").attr("text-anchor", "middle").text(o.label), !d)
|
|
92
|
+
continue;
|
|
93
|
+
const k = o.end === o.start, f = p - 2;
|
|
94
|
+
c.append("text").attr("x", h + (k ? g / 2 : 0)).attr("y", f).attr("class", "packetByte start").attr("dominant-baseline", "auto").attr("text-anchor", k ? "middle" : "start").text(o.start), k || c.append("text").attr("x", h + g).attr("y", f).attr("class", "packetByte end").attr("dominant-baseline", "auto").attr("text-anchor", "end").text(o.end);
|
|
95
|
+
}
|
|
96
|
+
}, "drawWord"), G = { draw: O }, H = {
|
|
97
|
+
byteFontSize: "10px",
|
|
98
|
+
startByteColor: "black",
|
|
99
|
+
endByteColor: "black",
|
|
100
|
+
labelColor: "black",
|
|
101
|
+
labelFontSize: "12px",
|
|
102
|
+
titleColor: "black",
|
|
103
|
+
titleFontSize: "14px",
|
|
104
|
+
blockStrokeColor: "black",
|
|
105
|
+
blockStrokeWidth: "1",
|
|
106
|
+
blockFillColor: "#efefef"
|
|
107
|
+
}, K = /* @__PURE__ */ b(({ packet: e } = {}) => {
|
|
108
|
+
const t = m(H, e);
|
|
109
|
+
return `
|
|
110
|
+
.packetByte {
|
|
111
|
+
font-size: ${t.byteFontSize};
|
|
112
|
+
}
|
|
113
|
+
.packetByte.start {
|
|
114
|
+
fill: ${t.startByteColor};
|
|
115
|
+
}
|
|
116
|
+
.packetByte.end {
|
|
117
|
+
fill: ${t.endByteColor};
|
|
118
|
+
}
|
|
119
|
+
.packetLabel {
|
|
120
|
+
fill: ${t.labelColor};
|
|
121
|
+
font-size: ${t.labelFontSize};
|
|
122
|
+
}
|
|
123
|
+
.packetTitle {
|
|
124
|
+
fill: ${t.titleColor};
|
|
125
|
+
font-size: ${t.titleFontSize};
|
|
126
|
+
}
|
|
127
|
+
.packetBlock {
|
|
128
|
+
stroke: ${t.blockStrokeColor};
|
|
129
|
+
stroke-width: ${t.blockStrokeWidth};
|
|
130
|
+
fill: ${t.blockFillColor};
|
|
131
|
+
}
|
|
132
|
+
`;
|
|
133
|
+
}, "styles"), X = {
|
|
134
|
+
parser: v,
|
|
135
|
+
get db() {
|
|
136
|
+
return new $();
|
|
137
|
+
},
|
|
138
|
+
renderer: G,
|
|
139
|
+
styles: K
|
|
140
|
+
};
|
|
141
|
+
export {
|
|
142
|
+
X as diagram
|
|
143
|
+
};
|