@layers-app/editor 0.3.11 → 0.4.1-progress-bar.2
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 +215 -1
- package/dist/index.cjs +2 -2
- package/dist/index.d.ts +3 -2
- package/dist/index.js +6 -6
- package/dist/layers.-81wcqwR.js +41 -0
- package/dist/layers.0GG-c34P.js +36 -0
- package/dist/layers.0dm3eLYv.js +1265 -0
- package/dist/layers.0nFmx-Nl.js +1 -0
- package/dist/layers.1Z2fyz6H.js +7 -0
- package/dist/layers.2b70kvMG.js +9 -0
- package/dist/layers.3Vvyhk66.js +904 -0
- package/dist/layers.475BZq-C.js +4 -0
- package/dist/layers.52famHy6.js +1 -0
- package/dist/layers.6F0lZyGr.js +1 -0
- package/dist/layers.6iBZ8vbZ.js +7 -0
- package/dist/layers.7JqFgE4-.js +15 -0
- package/dist/layers.7Q7ZqlHQ.js +1 -0
- package/dist/layers.9QK1wiQj.js +1 -0
- package/dist/layers.9pNaFvaX.js +1 -0
- package/dist/layers.AhhllI1F.js +1088 -0
- package/dist/layers.B0UW1RmX.js +10 -0
- package/dist/layers.B19hGmey.js +1 -0
- package/dist/layers.B1jSvo4Q.js +282 -0
- package/dist/layers.B2QmFAKW.js +1 -0
- package/dist/layers.B3D4g2HH.js +1 -0
- package/dist/layers.B4KbvY3e.js +2235 -0
- package/dist/layers.B4b5hMwb.js +40 -0
- package/dist/layers.B4kpLyJz.js +39 -0
- package/dist/layers.B6ZNsH3T.js +21763 -0
- package/dist/layers.B6_dw_8p.js +7 -0
- package/dist/layers.B7X5RC-0.js +41 -0
- package/dist/layers.B9u9oq3T.js +5 -0
- package/dist/layers.BALYUkwP.js +139 -0
- package/dist/layers.BAtv1CM7.js +1 -0
- package/dist/layers.BBJp9IW9.js +39 -0
- package/dist/layers.BChOvfAr.js +33 -0
- package/dist/layers.BE8bNWW6.js +423 -0
- package/dist/layers.BEfOaBAZ.js +8 -0
- package/dist/layers.BHRWU6d9.js +32 -0
- package/dist/layers.BIeVwYKL.js +1 -0
- package/dist/layers.BJHPodZD.js +5 -0
- package/dist/layers.BJml6l4c.js +1619 -0
- package/dist/layers.BP5yLKDB.js +40 -0
- package/dist/layers.BSTBZrFn.js +1 -0
- package/dist/layers.BXFaNlXe.js +10 -0
- package/dist/layers.BY2fzSoa.js +320 -0
- package/dist/layers.BZ9Uzt2l.js +52 -0
- package/dist/layers.BbCfEXyj.js +55 -0
- package/dist/layers.BcAVvZP0.js +8 -0
- package/dist/layers.BddeOe_0.js +41 -0
- package/dist/layers.Bde9z6ba.js +9 -0
- package/dist/layers.Bdvy9kzf.js +37 -0
- package/dist/layers.Bf9MFDYo.js +37 -0
- package/dist/layers.BgOa2ZQq.js +7 -0
- package/dist/layers.BglhCs7Q.js +42 -0
- package/dist/layers.BhHN_OCL.js +41 -0
- package/dist/layers.BhOVSyoa.js +116 -0
- package/dist/layers.BiJ8hfRt.js +1510 -0
- package/dist/layers.Bk6BXLzz.js +425 -0
- package/dist/layers.Bm9nXP7b.js +4 -0
- package/dist/layers.BncZBAFy.js +4 -0
- package/dist/layers.BpilXLfW.js +6 -0
- package/dist/{layers.YZkXZvVS.js → layers.Bq-5GZP6.js} +20995 -19802
- package/dist/layers.BtlLD-Rz.js +11 -0
- package/dist/layers.BtpIOF4Z.js +9 -0
- package/dist/layers.Bu56Qesy.js +10 -0
- package/dist/layers.BxIw0gJL.js +11 -0
- package/dist/layers.ByYR4L98.js +8 -0
- package/dist/layers.C-pbN-0O.js +34 -0
- package/dist/layers.C0DJ9ilm.js +1 -0
- package/dist/layers.C0Lgw_Sx.js +11688 -0
- package/dist/layers.C2gAR4en.js +6 -0
- package/dist/layers.C4ceUEtT.js +6 -0
- package/dist/layers.C5RRQdrQ.js +39 -0
- package/dist/layers.C5U5RNdV.js +38 -0
- package/dist/layers.C5hVV8XE.js +10 -0
- package/dist/layers.C6jxjtyC.js +8 -0
- package/dist/layers.C7lIplJU.js +247 -0
- package/dist/layers.C83RWXIj.js +2966 -0
- package/dist/layers.C8_lu5UH.js +23 -0
- package/dist/layers.C9yHqpLC.js +1 -0
- package/dist/layers.CATiNc07.js +37 -0
- package/dist/layers.CCoKbqGZ.js +32 -0
- package/dist/layers.CCwQVeNG.js +96 -0
- package/dist/layers.CG1igXgx.js +65 -0
- package/dist/layers.CGE7HTrP.js +790 -0
- package/dist/layers.CGmH2sSj.js +160 -0
- package/dist/layers.CHZsXQcr.js +1 -0
- package/dist/layers.CJWyW1s7.js +33 -0
- package/dist/layers.CK2uPIaB.js +9 -0
- package/dist/layers.CKVT6drc.js +6 -0
- package/dist/layers.COAF7f8g.js +1 -0
- package/dist/layers.COS6XeQZ.js +8 -0
- package/dist/layers.CP5YFYP0.js +185 -0
- package/dist/layers.CQefO3zC.js +960 -0
- package/dist/layers.CRMWsjPz.js +6 -0
- package/dist/layers.CXXPElSu.js +40 -0
- package/dist/layers.CZ9XE70C.js +10 -0
- package/dist/layers.CZtDXioS.js +44 -0
- package/dist/layers.C_BxYlPZ.js +1580 -0
- package/dist/layers.C_UcfwnG.js +6 -0
- package/dist/layers.CaLgCU_I.js +32 -0
- package/dist/layers.CavVjyC7.js +32 -0
- package/dist/layers.Cd4UYQEy.js +5 -0
- package/dist/layers.CeERe4hA.js +803 -0
- package/dist/layers.CgTtEOpk.js +2479 -0
- package/dist/layers.CgYKHJl1.js +437 -0
- package/dist/layers.Cgmo79x3.js +11 -0
- package/dist/layers.CjMeAmJX.js +1034 -0
- package/dist/layers.Ck0n4XD7.js +1 -0
- package/dist/layers.CkJ9q_L1.js +1 -0
- package/dist/layers.Cl-Lwb04.js +8 -0
- package/dist/layers.CnZce7UZ.js +59 -0
- package/dist/layers.Co5PaFBV.js +257 -0
- package/dist/layers.CoC4j3uL.js +230 -0
- package/dist/layers.CopJUlxy.js +42 -0
- package/dist/layers.Cp-0WnDT.js +122 -0
- package/dist/layers.Cpwze_cl.js +40 -0
- package/dist/layers.CqVTtuYm.js +6 -0
- package/dist/layers.CrqG-Duk.js +5 -0
- package/dist/layers.Crw1IGs-.js +42 -0
- package/dist/layers.CsPue_MQ.js +51 -0
- package/dist/layers.Cs_T7j-N.js +1283 -0
- package/dist/layers.CtLZ9mwp.js +2 -0
- package/dist/layers.CukiNGgZ.js +186 -0
- package/dist/layers.CvbXz5-5.js +39 -0
- package/dist/layers.CxjTeNJ7.js +40 -0
- package/dist/layers.Cxopck3h.js +13 -0
- package/dist/layers.CyE3jBBZ.js +1126 -0
- package/dist/layers.Cy_IG1Gv.js +7 -0
- package/dist/layers.Cz1nKHwt.js +7 -0
- package/dist/layers.CzRcgWY1.js +21938 -0
- package/dist/layers.D0CU4TN8.js +8 -0
- package/dist/layers.D0_MMsE9.js +42 -0
- package/dist/layers.D0zn4_Mx.js +1 -0
- package/dist/layers.D2U67Gni.js +9 -0
- package/dist/layers.D34e2jIm.js +2 -0
- package/dist/layers.D3QNp_mQ.js +40 -0
- package/dist/layers.D4ZUbUXz.js +10 -0
- package/dist/layers.D4fGb2cV.js +1272 -0
- package/dist/layers.D7Lv0jOC.js +39 -0
- package/dist/layers.D7jGxypv.js +8 -0
- package/dist/layers.DA80zVTT.js +32 -0
- package/dist/layers.DAhZhj49.js +220 -0
- package/dist/layers.DC76pGI6.js +36 -0
- package/dist/layers.DCm28WHr.js +1 -0
- package/dist/layers.DEBlIxtT.js +1 -0
- package/dist/layers.DEHlDscq.js +8 -0
- package/dist/layers.DEiI3uTS.js +1 -0
- package/dist/layers.DFO1fD9L.js +6 -0
- package/dist/layers.DFVmKOXm.js +118 -0
- package/dist/layers.DGgRL8Nc.js +39 -0
- package/dist/layers.DHpypOQI.js +84 -0
- package/dist/layers.DJLV698B.js +793 -0
- package/dist/layers.DKZkGAQ_.js +202 -0
- package/dist/layers.DKeh-lZI.js +1 -0
- package/dist/layers.DLB4eAfo.js +1089 -0
- package/dist/layers.DLRyMrlf.js +10 -0
- package/dist/layers.DLwuMfdd.js +84 -0
- package/dist/layers.DMkBISW1.js +1 -0
- package/dist/layers.DN9HoVxI.js +18 -0
- package/dist/layers.DND9ZxpV.js +40 -0
- package/dist/layers.DOYs_uMx.js +802 -0
- package/dist/layers.DOrgOHBr.js +1 -0
- package/dist/layers.DRGpaHAX.js +41 -0
- package/dist/layers.D_AP_tA5.js +9 -0
- package/dist/layers.D_MmQzRm.js +207 -0
- package/dist/layers.D_sfrDwe.js +70 -0
- package/dist/layers.DaUhvLRp.js +10 -0
- package/dist/layers.DaoO_UDV.js +9 -0
- package/dist/layers.DbaKVP5e.js +1 -0
- package/dist/layers.Dbdn8XSd.js +1 -0
- package/dist/layers.DfR442P5.js +40 -0
- package/dist/layers.DfoJ9Kxs.js +1 -0
- package/dist/layers.DgpXAlfL.js +373 -0
- package/dist/layers.Dh54vG6t.js +268 -0
- package/dist/layers.DhcjxJPA.js +501 -0
- package/dist/layers.DhzzXhmQ.js +1359 -0
- package/dist/layers.Dixyg94K.js +36 -0
- package/dist/layers.Dj3HYSyh.js +7 -0
- package/dist/layers.DjUOC4st.js +16 -0
- package/dist/layers.DkLyYgOg.js +38 -0
- package/dist/layers.DkT2sxcJ.js +931 -0
- package/dist/layers.DkleVc4L.js +5 -0
- package/dist/layers.DoAq7C3B.js +139 -0
- package/dist/layers.Dr3N180D.js +35 -0
- package/dist/layers.Drb2mcdd.js +2 -0
- package/dist/layers.DtDMtcjv.js +84 -0
- package/dist/layers.DtOlJEpj.js +39 -0
- package/dist/layers.Dut27cU5.js +42 -0
- package/dist/layers.Dx5j_aMV.js +7 -0
- package/dist/layers.DxA6ocdw.js +70 -0
- package/dist/layers.Dy-AuShh.js +9 -0
- package/dist/layers.Dy1naDTQ.js +14 -0
- package/dist/layers.DyJZaSCk.js +40 -0
- package/dist/layers.DyU8JNlG.js +41 -0
- package/dist/layers.DytwjiIF.js +8 -0
- package/dist/layers.DyyemvLl.js +36 -0
- package/dist/layers.DzphOPQJ.js +19 -0
- package/dist/layers.J1ihPiBi.js +7 -0
- package/dist/layers.JWCLFILJ.js +1 -0
- package/dist/layers.JcQwzHu2.js +9 -0
- package/dist/layers.JnLVZ-1W.js +61 -0
- package/dist/layers.MfBuwYip.js +39 -0
- package/dist/layers.OMZyjZaa.js +1 -0
- package/dist/layers.OZhDjtkp.js +1 -0
- package/dist/layers.SNwJ50Yh.js +769 -0
- package/dist/layers.X930Wyd9.js +9 -0
- package/dist/layers.YBnRzjtX.js +1 -0
- package/dist/{layers.BnjxHNDK.js → layers.YE5h1RJ0.js} +84 -84
- package/dist/layers.YhDm2Yt0.js +37 -0
- package/dist/layers.ZE7W-HjF.js +10 -0
- package/dist/layers._ZR3qWqZ.js +41 -0
- package/dist/layers.b0h5ZBmD.js +61 -0
- package/dist/layers.b4ac2O9O.js +35 -0
- package/dist/layers.bzxdqd7a.js +11 -0
- package/dist/{layers.C125HTat.js → layers.fjeoVipI.js} +1 -1
- package/dist/layers.hEiS_6X7.js +1 -0
- package/dist/layers.hweLqW3I.js +261 -0
- package/dist/layers.iK5LSRjJ.js +11 -0
- package/dist/layers.ipZc_UQ4.js +8 -0
- package/dist/layers.itQhFK_P.js +48146 -0
- package/dist/layers.ix2kR4vq.js +9165 -0
- package/dist/layers.jLGyr7oL.js +3 -0
- package/dist/layers.k60iEoD4.js +41 -0
- package/dist/layers.l06k9Lu3.js +1 -0
- package/dist/layers.lCMwJpWR.js +4 -0
- package/dist/layers.lCpg7dOn.js +21 -0
- package/dist/layers.lPp5HcdT.js +40 -0
- package/dist/layers.lUeeFrHR.js +10 -0
- package/dist/layers.os9El-5G.js +39 -0
- package/dist/layers.pSPpASHH.js +35 -0
- package/dist/layers.s006AAsW.js +1 -0
- package/dist/layers.sFiVxDwP.js +1 -0
- package/dist/layers.sWO0agP4.js +295 -0
- package/dist/layers.tSiLqPQw.js +1 -0
- package/dist/layers.uZTzmOsK.js +38 -0
- package/dist/layers.uzGJX2RJ.js +14 -0
- package/dist/layers.vZPmwsoq.js +32 -0
- package/dist/layers.wBjmBWfX.js +1 -0
- package/package.json +33 -17
- package/dist/layers.Cjs5EBWM.js +0 -343
- package/dist/layers.DPccTctI.js +0 -285
- package/dist/layers.DZ8DrrVn.js +0 -53491
- package/dist/layers.QVaGPbs3.js +0 -161
- package/dist/layers.VK3NB7Nd.js +0 -1
|
@@ -0,0 +1,202 @@
|
|
|
1
|
+
import { s as M, d as _, p as R } from "./layers.DLB4eAfo.js";
|
|
2
|
+
import { l as d, g as c, d as w, u as B, Y as G, j as D, _ as E, $ as C, a0 as $ } from "./layers.ix2kR4vq.js";
|
|
3
|
+
import { G as z } from "./layers.C7lIplJU.js";
|
|
4
|
+
import { r as P } from "./layers.DgpXAlfL.js";
|
|
5
|
+
import "./layers.B6ZNsH3T.js";
|
|
6
|
+
import "lodash-es";
|
|
7
|
+
import "./layers.D4fGb2cV.js";
|
|
8
|
+
const S = (s) => D.sanitizeText(s, c());
|
|
9
|
+
let k = {
|
|
10
|
+
dividerMargin: 10,
|
|
11
|
+
padding: 5,
|
|
12
|
+
textHeight: 10,
|
|
13
|
+
curve: void 0
|
|
14
|
+
};
|
|
15
|
+
const q = function(s, t, y, a) {
|
|
16
|
+
const e = Object.keys(s);
|
|
17
|
+
d.info("keys:", e), d.info(s), e.forEach(function(i) {
|
|
18
|
+
var o, r;
|
|
19
|
+
const l = s[i], p = {
|
|
20
|
+
shape: "rect",
|
|
21
|
+
id: l.id,
|
|
22
|
+
domId: l.domId,
|
|
23
|
+
labelText: S(l.id),
|
|
24
|
+
labelStyle: "",
|
|
25
|
+
style: "fill: none; stroke: black",
|
|
26
|
+
// TODO V10: Flowchart ? Keeping flowchart for backwards compatibility. Remove in next major release
|
|
27
|
+
padding: ((o = c().flowchart) == null ? void 0 : o.padding) ?? ((r = c().class) == null ? void 0 : r.padding)
|
|
28
|
+
};
|
|
29
|
+
t.setNode(l.id, p), A(l.classes, t, y, a, l.id), d.info("setNode", p);
|
|
30
|
+
});
|
|
31
|
+
}, A = function(s, t, y, a, e) {
|
|
32
|
+
const i = Object.keys(s);
|
|
33
|
+
d.info("keys:", i), d.info(s), i.filter((o) => s[o].parent == e).forEach(function(o) {
|
|
34
|
+
var r, l;
|
|
35
|
+
const n = s[o], p = n.cssClasses.join(" "), f = E(n.styles), h = n.label ?? n.id, u = 0, b = {
|
|
36
|
+
labelStyle: f.labelStyle,
|
|
37
|
+
shape: "class_box",
|
|
38
|
+
labelText: S(h),
|
|
39
|
+
classData: n,
|
|
40
|
+
rx: u,
|
|
41
|
+
ry: u,
|
|
42
|
+
class: p,
|
|
43
|
+
style: f.style,
|
|
44
|
+
id: n.id,
|
|
45
|
+
domId: n.domId,
|
|
46
|
+
tooltip: a.db.getTooltip(n.id, e) || "",
|
|
47
|
+
haveCallback: n.haveCallback,
|
|
48
|
+
link: n.link,
|
|
49
|
+
width: n.type === "group" ? 500 : void 0,
|
|
50
|
+
type: n.type,
|
|
51
|
+
// TODO V10: Flowchart ? Keeping flowchart for backwards compatibility. Remove in next major release
|
|
52
|
+
padding: ((r = c().flowchart) == null ? void 0 : r.padding) ?? ((l = c().class) == null ? void 0 : l.padding)
|
|
53
|
+
};
|
|
54
|
+
t.setNode(n.id, b), e && t.setParent(n.id, e), d.info("setNode", b);
|
|
55
|
+
});
|
|
56
|
+
}, F = function(s, t, y, a) {
|
|
57
|
+
d.info(s), s.forEach(function(e, i) {
|
|
58
|
+
var o, r;
|
|
59
|
+
const l = e, n = "", p = { labelStyle: "", style: "" }, f = l.text, h = 0, v = {
|
|
60
|
+
labelStyle: p.labelStyle,
|
|
61
|
+
shape: "note",
|
|
62
|
+
labelText: S(f),
|
|
63
|
+
noteData: l,
|
|
64
|
+
rx: h,
|
|
65
|
+
ry: h,
|
|
66
|
+
class: n,
|
|
67
|
+
style: p.style,
|
|
68
|
+
id: l.id,
|
|
69
|
+
domId: l.id,
|
|
70
|
+
tooltip: "",
|
|
71
|
+
type: "note",
|
|
72
|
+
// TODO V10: Flowchart ? Keeping flowchart for backwards compatibility. Remove in next major release
|
|
73
|
+
padding: ((o = c().flowchart) == null ? void 0 : o.padding) ?? ((r = c().class) == null ? void 0 : r.padding)
|
|
74
|
+
};
|
|
75
|
+
if (t.setNode(l.id, v), d.info("setNode", v), !l.class || !(l.class in a))
|
|
76
|
+
return;
|
|
77
|
+
const b = y + i, x = {
|
|
78
|
+
id: `edgeNote${b}`,
|
|
79
|
+
//Set relationship style and line type
|
|
80
|
+
classes: "relation",
|
|
81
|
+
pattern: "dotted",
|
|
82
|
+
// Set link type for rendering
|
|
83
|
+
arrowhead: "none",
|
|
84
|
+
//Set edge extra labels
|
|
85
|
+
startLabelRight: "",
|
|
86
|
+
endLabelLeft: "",
|
|
87
|
+
//Set relation arrow types
|
|
88
|
+
arrowTypeStart: "none",
|
|
89
|
+
arrowTypeEnd: "none",
|
|
90
|
+
style: "fill:none",
|
|
91
|
+
labelStyle: "",
|
|
92
|
+
curve: C(k.curve, $)
|
|
93
|
+
};
|
|
94
|
+
t.setEdge(l.id, l.class, x, b);
|
|
95
|
+
});
|
|
96
|
+
}, H = function(s, t) {
|
|
97
|
+
const y = c().flowchart;
|
|
98
|
+
let a = 0;
|
|
99
|
+
s.forEach(function(e) {
|
|
100
|
+
var i;
|
|
101
|
+
a++;
|
|
102
|
+
const o = {
|
|
103
|
+
//Set relationship style and line type
|
|
104
|
+
classes: "relation",
|
|
105
|
+
pattern: e.relation.lineType == 1 ? "dashed" : "solid",
|
|
106
|
+
id: `id_${e.id1}_${e.id2}_${a}`,
|
|
107
|
+
// Set link type for rendering
|
|
108
|
+
arrowhead: e.type === "arrow_open" ? "none" : "normal",
|
|
109
|
+
//Set edge extra labels
|
|
110
|
+
startLabelRight: e.relationTitle1 === "none" ? "" : e.relationTitle1,
|
|
111
|
+
endLabelLeft: e.relationTitle2 === "none" ? "" : e.relationTitle2,
|
|
112
|
+
//Set relation arrow types
|
|
113
|
+
arrowTypeStart: N(e.relation.type1),
|
|
114
|
+
arrowTypeEnd: N(e.relation.type2),
|
|
115
|
+
style: "fill:none",
|
|
116
|
+
labelStyle: "",
|
|
117
|
+
curve: C(y == null ? void 0 : y.curve, $)
|
|
118
|
+
};
|
|
119
|
+
if (d.info(o, e), e.style !== void 0) {
|
|
120
|
+
const r = E(e.style);
|
|
121
|
+
o.style = r.style, o.labelStyle = r.labelStyle;
|
|
122
|
+
}
|
|
123
|
+
e.text = e.title, e.text === void 0 ? e.style !== void 0 && (o.arrowheadStyle = "fill: #333") : (o.arrowheadStyle = "fill: #333", o.labelpos = "c", ((i = c().flowchart) == null ? void 0 : i.htmlLabels) ?? c().htmlLabels ? (o.labelType = "html", o.label = '<span class="edgeLabel">' + e.text + "</span>") : (o.labelType = "text", o.label = e.text.replace(D.lineBreakRegex, `
|
|
124
|
+
`), e.style === void 0 && (o.style = o.style || "stroke: #333; stroke-width: 1.5px;fill:none"), o.labelStyle = o.labelStyle.replace("color:", "fill:"))), t.setEdge(e.id1, e.id2, o, a);
|
|
125
|
+
});
|
|
126
|
+
}, V = function(s) {
|
|
127
|
+
k = {
|
|
128
|
+
...k,
|
|
129
|
+
...s
|
|
130
|
+
};
|
|
131
|
+
}, W = async function(s, t, y, a) {
|
|
132
|
+
d.info("Drawing class - ", t);
|
|
133
|
+
const e = c().flowchart ?? c().class, i = c().securityLevel;
|
|
134
|
+
d.info("config:", e);
|
|
135
|
+
const o = (e == null ? void 0 : e.nodeSpacing) ?? 50, r = (e == null ? void 0 : e.rankSpacing) ?? 50, l = new z({
|
|
136
|
+
multigraph: !0,
|
|
137
|
+
compound: !0
|
|
138
|
+
}).setGraph({
|
|
139
|
+
rankdir: a.db.getDirection(),
|
|
140
|
+
nodesep: o,
|
|
141
|
+
ranksep: r,
|
|
142
|
+
marginx: 8,
|
|
143
|
+
marginy: 8
|
|
144
|
+
}).setDefaultEdgeLabel(function() {
|
|
145
|
+
return {};
|
|
146
|
+
}), n = a.db.getNamespaces(), p = a.db.getClasses(), f = a.db.getRelations(), h = a.db.getNotes();
|
|
147
|
+
d.info(f), q(n, l, t, a), A(p, l, t, a), H(f, l), F(h, l, f.length + 1, p);
|
|
148
|
+
let u;
|
|
149
|
+
i === "sandbox" && (u = w("#i" + t));
|
|
150
|
+
const v = i === "sandbox" ? w(u.nodes()[0].contentDocument.body) : w("body"), b = v.select(`[id="${t}"]`), x = v.select("#" + t + " g");
|
|
151
|
+
if (await P(
|
|
152
|
+
x,
|
|
153
|
+
l,
|
|
154
|
+
["aggregation", "extension", "composition", "dependency", "lollipop"],
|
|
155
|
+
"classDiagram",
|
|
156
|
+
t
|
|
157
|
+
), B.insertTitle(b, "classTitleText", (e == null ? void 0 : e.titleTopMargin) ?? 5, a.db.getDiagramTitle()), G(l, b, e == null ? void 0 : e.diagramPadding, e == null ? void 0 : e.useMaxWidth), !(e != null && e.htmlLabels)) {
|
|
158
|
+
const T = i === "sandbox" ? u.nodes()[0].contentDocument : document, I = T.querySelectorAll('[id="' + t + '"] .edgeLabel .label');
|
|
159
|
+
for (const g of I) {
|
|
160
|
+
const L = g.getBBox(), m = T.createElementNS("http://www.w3.org/2000/svg", "rect");
|
|
161
|
+
m.setAttribute("rx", 0), m.setAttribute("ry", 0), m.setAttribute("width", L.width), m.setAttribute("height", L.height), g.insertBefore(m, g.firstChild);
|
|
162
|
+
}
|
|
163
|
+
}
|
|
164
|
+
};
|
|
165
|
+
function N(s) {
|
|
166
|
+
let t;
|
|
167
|
+
switch (s) {
|
|
168
|
+
case 0:
|
|
169
|
+
t = "aggregation";
|
|
170
|
+
break;
|
|
171
|
+
case 1:
|
|
172
|
+
t = "extension";
|
|
173
|
+
break;
|
|
174
|
+
case 2:
|
|
175
|
+
t = "composition";
|
|
176
|
+
break;
|
|
177
|
+
case 3:
|
|
178
|
+
t = "dependency";
|
|
179
|
+
break;
|
|
180
|
+
case 4:
|
|
181
|
+
t = "lollipop";
|
|
182
|
+
break;
|
|
183
|
+
default:
|
|
184
|
+
t = "none";
|
|
185
|
+
}
|
|
186
|
+
return t;
|
|
187
|
+
}
|
|
188
|
+
const Y = {
|
|
189
|
+
setConf: V,
|
|
190
|
+
draw: W
|
|
191
|
+
}, O = {
|
|
192
|
+
parser: R,
|
|
193
|
+
db: _,
|
|
194
|
+
renderer: Y,
|
|
195
|
+
styles: M,
|
|
196
|
+
init: (s) => {
|
|
197
|
+
s.class || (s.class = {}), s.class.arrowMarkerAbsolute = s.arrowMarkerAbsolute, _.clear();
|
|
198
|
+
}
|
|
199
|
+
};
|
|
200
|
+
export {
|
|
201
|
+
O as diagram
|
|
202
|
+
};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";const P=require("lodash-es"),J=require("./layers.COAF7f8g.js"),k=require("./layers.9QK1wiQj.js"),u=require("./layers.475BZq-C.js"),i=require("./layers.CCwQVeNG.js"),j=require("./layers.B6_dw_8p.js");function G(e){const t=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(e){for(const n in e)if(n!=="default"){const r=Object.getOwnPropertyDescriptor(e,n);Object.defineProperty(t,n,r.get?r:{enumerable:!0,get:()=>e[n]})}}return t.default=e,Object.freeze(t)}const m=G(P);function x(e){var t={options:{directed:e.isDirected(),multigraph:e.isMultigraph(),compound:e.isCompound()},nodes:M(e),edges:F(e)};return m.isUndefined(e.graph())||(t.value=m.clone(e.graph())),t}function M(e){return m.map(e.nodes(),function(t){var n=e.node(t),r=e.parent(t),s={v:t};return m.isUndefined(n)||(s.value=n),m.isUndefined(r)||(s.parent=r),s})}function F(e){return m.map(e.edges(),function(t){var n=e.edge(t),r={v:t.v,w:t.w};return m.isUndefined(t.name)||(r.name=t.name),m.isUndefined(n)||(r.value=n),r})}let a={},w={},p={};const q=()=>{w={},p={},a={}},X=(e,t)=>(i.log$1.trace("In isDescendant",t," ",e," = ",w[t].includes(e)),!!w[t].includes(e)),_=(e,t)=>(i.log$1.info("Descendants of ",t," is ",w[t]),i.log$1.info("Edge is ",e),e.v===t||e.w===t?!1:w[t]?w[t].includes(e.v)||X(e.v,t)||X(e.w,t)||w[t].includes(e.w):(i.log$1.debug("Tilt, ",t,",not in descendants"),!1)),D=(e,t,n,r)=>{i.log$1.warn("Copying children of ",e,"root",r,"data",t.node(e),r);const s=t.children(e)||[];e!==r&&s.push(e),i.log$1.warn("Copying (nodes) clusterId",e,"nodes",s),s.forEach(o=>{if(t.children(o).length>0)D(o,t,n,r);else{const f=t.node(o);i.log$1.info("cp ",o," to ",r," with parent ",e),n.setNode(o,f),r!==t.parent(o)&&(i.log$1.warn("Setting parent",o,t.parent(o)),n.setParent(o,t.parent(o))),e!==r&&o!==e?(i.log$1.debug("Setting parent",o,e),n.setParent(o,e)):(i.log$1.info("In copy ",e,"root",r,"data",t.node(e),r),i.log$1.debug("Not Setting parent for node=",o,"cluster!==rootId",e!==r,"node!==clusterId",o!==e));const g=t.edges(o);i.log$1.debug("Copying Edges",g),g.forEach(d=>{i.log$1.info("Edge",d);const h=t.edge(d.v,d.w,d.name);i.log$1.info("Edge data",h,r);try{_(d,r)?(i.log$1.info("Copying as ",d.v,d.w,h,d.name),n.setEdge(d.v,d.w,h,d.name),i.log$1.info("newGraph edges ",n.edges(),n.edge(n.edges()[0]))):i.log$1.info("Skipping copy of edge ",d.v,"-->",d.w," rootId: ",r," clusterId:",e)}catch($){i.log$1.error($)}})}i.log$1.debug("Removing node",o),t.removeNode(o)})},B=(e,t)=>{const n=t.children(e);let r=[...n];for(const s of n)p[s]=e,r=[...r,...B(s,t)];return r},C=(e,t)=>{i.log$1.trace("Searching",e);const n=t.children(e);if(i.log$1.trace("Searching children of id ",e,n),n.length<1)return i.log$1.trace("This is a valid node",e),e;for(const r of n){const s=C(r,t);if(s)return i.log$1.trace("Found replacement for",e," => ",s),s}},S=e=>!a[e]||!a[e].externalConnections?e:a[e]?a[e].id:e,U=(e,t)=>{if(!e||t>10){i.log$1.debug("Opting out, no graph ");return}else i.log$1.debug("Opting in, graph ");e.nodes().forEach(function(n){e.children(n).length>0&&(i.log$1.warn("Cluster identified",n," Replacement id in edges: ",C(n,e)),w[n]=B(n,e),a[n]={id:C(n,e),clusterData:e.node(n)})}),e.nodes().forEach(function(n){const r=e.children(n),s=e.edges();r.length>0?(i.log$1.debug("Cluster identified",n,w),s.forEach(o=>{if(o.v!==n&&o.w!==n){const f=X(o.v,n),g=X(o.w,n);f^g&&(i.log$1.warn("Edge: ",o," leaves cluster ",n),i.log$1.warn("Descendants of XXX ",n,": ",w[n]),a[n].externalConnections=!0)}})):i.log$1.debug("Not a cluster ",n,w)});for(let n of Object.keys(a)){const r=a[n].id,s=e.parent(r);s!==n&&a[s]&&!a[s].externalConnections&&(a[n].id=s)}e.edges().forEach(function(n){const r=e.edge(n);i.log$1.warn("Edge "+n.v+" -> "+n.w+": "+JSON.stringify(n)),i.log$1.warn("Edge "+n.v+" -> "+n.w+": "+JSON.stringify(e.edge(n)));let s=n.v,o=n.w;if(i.log$1.warn("Fix XXX",a,"ids:",n.v,n.w,"Translating: ",a[n.v]," --- ",a[n.w]),a[n.v]&&a[n.w]&&a[n.v]===a[n.w]){i.log$1.warn("Fixing and trixing link to self - removing XXX",n.v,n.w,n.name),i.log$1.warn("Fixing and trixing - removing XXX",n.v,n.w,n.name),s=S(n.v),o=S(n.w),e.removeEdge(n.v,n.w,n.name);const f=n.w+"---"+n.v;e.setNode(f,{domId:f,id:f,labelStyle:"",labelText:r.label,padding:0,shape:"labelRect",style:""});const g=structuredClone(r),d=structuredClone(r);g.label="",g.arrowTypeEnd="none",d.label="",g.fromCluster=n.v,d.toCluster=n.v,e.setEdge(s,f,g,n.name+"-cyclic-special"),e.setEdge(f,o,d,n.name+"-cyclic-special")}else if(a[n.v]||a[n.w]){if(i.log$1.warn("Fixing and trixing - removing XXX",n.v,n.w,n.name),s=S(n.v),o=S(n.w),e.removeEdge(n.v,n.w,n.name),s!==n.v){const f=e.parent(s);a[f].externalConnections=!0,r.fromCluster=n.v}if(o!==n.w){const f=e.parent(o);a[f].externalConnections=!0,r.toCluster=n.w}i.log$1.warn("Fix Replacing with XXX",s,o,n.name),e.setEdge(s,o,r,n.name)}}),i.log$1.warn("Adjusted Graph",x(e)),T(e,0),i.log$1.trace(a)},T=(e,t)=>{if(i.log$1.warn("extractor - ",t,x(e),e.children("D")),t>10){i.log$1.error("Bailing out");return}let n=e.nodes(),r=!1;for(const s of n){const o=e.children(s);r=r||o.length>0}if(!r){i.log$1.debug("Done, no node has children",e.nodes());return}i.log$1.debug("Nodes = ",n,t);for(const s of n)if(i.log$1.debug("Extracting node",s,a,a[s]&&!a[s].externalConnections,!e.parent(s),e.node(s),e.children("D")," Depth ",t),!a[s])i.log$1.debug("Not a cluster",s,t);else if(!a[s].externalConnections&&e.children(s)&&e.children(s).length>0){i.log$1.warn("Cluster without external connections, without a parent and with children",s,t);let f=e.graph().rankdir==="TB"?"LR":"TB";a[s]&&a[s].clusterData&&a[s].clusterData.dir&&(f=a[s].clusterData.dir,i.log$1.warn("Fixing dir",a[s].clusterData.dir,f));const g=new k.Graph({multigraph:!0,compound:!0}).setGraph({rankdir:f,nodesep:50,ranksep:50,marginx:8,marginy:8}).setDefaultEdgeLabel(function(){return{}});i.log$1.warn("Old graph before copy",x(e)),D(s,e,g,s),e.setNode(s,{clusterNode:!0,id:s,clusterData:a[s].clusterData,labelText:a[s].labelText,graph:g}),i.log$1.warn("New graph after copy node: (",s,")",x(g)),i.log$1.debug("Old graph after copy",x(e))}else i.log$1.warn("Cluster ** ",s," **not meeting the criteria !externalConnections:",!a[s].externalConnections," no parent: ",!e.parent(s)," children ",e.children(s)&&e.children(s).length>0,e.children("D"),t),i.log$1.debug(a);n=e.nodes(),i.log$1.warn("New list of nodes",n);for(const s of n){const o=e.node(s);i.log$1.warn(" Now next level",s,o),o.clusterNode&&T(o.graph,t+1)}},O=(e,t)=>{if(t.length===0)return[];let n=Object.assign(t);return t.forEach(r=>{const s=e.children(r),o=O(e,s);n=[...n,...o]}),n},A=e=>O(e,e.children()),H=(e,t)=>{i.log$1.info("Creating subgraph rect for ",t.id,t);const n=i.getConfig(),r=e.insert("g").attr("class","cluster"+(t.class?" "+t.class:"")).attr("id",t.id),s=r.insert("rect",":first-child"),o=i.evaluate(n.flowchart.htmlLabels),f=r.insert("g").attr("class","cluster-label"),g=t.labelType==="markdown"?j.createText(f,t.labelText,{style:t.labelStyle,useHtmlLabels:o}):f.node().appendChild(u.createLabel$1(t.labelText,t.labelStyle,void 0,!0));let d=g.getBBox();if(i.evaluate(n.flowchart.htmlLabels)){const l=g.children[0],c=i.select(g);d=l.getBoundingClientRect(),c.attr("width",d.width),c.attr("height",d.height)}const h=0*t.padding,$=h/2,y=t.width<=d.width+h?d.width+h:t.width;t.width<=d.width+h?t.diff=(d.width-t.width)/2-t.padding/2:t.diff=-t.padding/2,i.log$1.trace("Data ",t,JSON.stringify(t)),s.attr("style",t.style).attr("rx",t.rx).attr("ry",t.ry).attr("x",t.x-y/2).attr("y",t.y-t.height/2-$).attr("width",y).attr("height",t.height+h);const{subGraphTitleTopMargin:N}=u.getSubGraphTitleMargins(n);o?f.attr("transform",`translate(${t.x-d.width/2}, ${t.y-t.height/2+N})`):f.attr("transform",`translate(${t.x}, ${t.y-t.height/2+N})`);const b=s.node().getBBox();return t.width=b.width,t.height=b.height,t.intersect=function(l){return u.intersectRect$1(t,l)},r},V=(e,t)=>{const n=e.insert("g").attr("class","note-cluster").attr("id",t.id),r=n.insert("rect",":first-child"),s=0*t.padding,o=s/2;r.attr("rx",t.rx).attr("ry",t.ry).attr("x",t.x-t.width/2-o).attr("y",t.y-t.height/2-o).attr("width",t.width+s).attr("height",t.height+s).attr("fill","none");const f=r.node().getBBox();return t.width=f.width,t.height=f.height,t.intersect=function(g){return u.intersectRect$1(t,g)},n},z=(e,t)=>{const n=i.getConfig(),r=e.insert("g").attr("class",t.classes).attr("id",t.id),s=r.insert("rect",":first-child"),o=r.insert("g").attr("class","cluster-label"),f=r.append("rect"),g=o.node().appendChild(u.createLabel$1(t.labelText,t.labelStyle,void 0,!0));let d=g.getBBox();if(i.evaluate(n.flowchart.htmlLabels)){const l=g.children[0],c=i.select(g);d=l.getBoundingClientRect(),c.attr("width",d.width),c.attr("height",d.height)}d=g.getBBox();const h=0*t.padding,$=h/2,y=t.width<=d.width+t.padding?d.width+t.padding:t.width;t.width<=d.width+t.padding?t.diff=(d.width+t.padding*0-t.width)/2:t.diff=-t.padding/2,s.attr("class","outer").attr("x",t.x-y/2-$).attr("y",t.y-t.height/2-$).attr("width",y+h).attr("height",t.height+h),f.attr("class","inner").attr("x",t.x-y/2-$).attr("y",t.y-t.height/2-$+d.height-1).attr("width",y+h).attr("height",t.height+h-d.height-3);const{subGraphTitleTopMargin:N}=u.getSubGraphTitleMargins(n);o.attr("transform",`translate(${t.x-d.width/2}, ${t.y-t.height/2-t.padding/3+(i.evaluate(n.flowchart.htmlLabels)?5:3)+N})`);const b=s.node().getBBox();return t.height=b.height,t.intersect=function(l){return u.intersectRect$1(t,l)},r},W=(e,t)=>{const n=e.insert("g").attr("class",t.classes).attr("id",t.id),r=n.insert("rect",":first-child"),s=0*t.padding,o=s/2;r.attr("class","divider").attr("x",t.x-t.width/2-o).attr("y",t.y-t.height/2).attr("width",t.width+s).attr("height",t.height+s);const f=r.node().getBBox();return t.width=f.width,t.height=f.height,t.diff=-t.padding/2,t.intersect=function(g){return u.intersectRect$1(t,g)},n},K={rect:H,roundedWithTitle:z,noteGroup:V,divider:W};let R={};const Q=(e,t)=>{i.log$1.trace("Inserting cluster");const n=t.shape||"rect";R[t.id]=K[n](e,t)},Y=()=>{R={}},L=async(e,t,n,r,s,o)=>{i.log$1.info("Graph in recursive render: XXX",x(t),s);const f=t.graph().rankdir;i.log$1.trace("Dir in recursive render - dir:",f);const g=e.insert("g").attr("class","root");t.nodes()?i.log$1.info("Recursive render XXX",t.nodes()):i.log$1.info("No nodes found for",t),t.edges().length>0&&i.log$1.trace("Recursive edges",t.edge(t.edges()[0]));const d=g.insert("g").attr("class","clusters"),h=g.insert("g").attr("class","edgePaths"),$=g.insert("g").attr("class","edgeLabels"),y=g.insert("g").attr("class","nodes");await Promise.all(t.nodes().map(async function(l){const c=t.node(l);if(s!==void 0){const v=JSON.parse(JSON.stringify(s.clusterData));i.log$1.info("Setting data for cluster XXX (",l,") ",v,s),t.setNode(s.id,v),t.parent(l)||(i.log$1.trace("Setting parent",l,s.id),t.setParent(l,s.id,v))}if(i.log$1.info("(Insert) Node XXX"+l+": "+JSON.stringify(t.node(l))),c&&c.clusterNode){i.log$1.info("Cluster identified",l,c.width,t.node(l));const v=await L(y,c.graph,n,r,t.node(l),o),E=v.elem;u.updateNodeBounds(c,E),c.diff=v.diff||0,i.log$1.info("Node bounds (abc123)",l,c,c.width,c.x,c.y),u.setNodeElem(E,c),i.log$1.warn("Recursive render complete ",E,c)}else t.children(l).length>0?(i.log$1.info("Cluster - the non recursive path XXX",l,c.id,c,t),i.log$1.info(C(c.id,t)),a[c.id]={id:C(c.id,t),node:c}):(i.log$1.info("Node - the non recursive path",l,c.id,c),await u.insertNode(y,t.node(l),f))})),t.edges().forEach(function(l){const c=t.edge(l.v,l.w,l.name);i.log$1.info("Edge "+l.v+" -> "+l.w+": "+JSON.stringify(l)),i.log$1.info("Edge "+l.v+" -> "+l.w+": ",l," ",JSON.stringify(t.edge(l))),i.log$1.info("Fix",a,"ids:",l.v,l.w,"Translating: ",a[l.v],a[l.w]),u.insertEdgeLabel($,c)}),t.edges().forEach(function(l){i.log$1.info("Edge "+l.v+" -> "+l.w+": "+JSON.stringify(l))}),i.log$1.info("#############################################"),i.log$1.info("### Layout ###"),i.log$1.info("#############################################"),i.log$1.info(t),J.layout(t),i.log$1.info("Graph after layout:",x(t));let N=0;const{subGraphTitleTotalMargin:b}=u.getSubGraphTitleMargins(o);return A(t).forEach(function(l){const c=t.node(l);i.log$1.info("Position "+l+": "+JSON.stringify(t.node(l))),i.log$1.info("Position "+l+": ("+c.x,","+c.y,") width: ",c.width," height: ",c.height),c&&c.clusterNode?(c.y+=b,u.positionNode(c)):t.children(l).length>0?(c.height+=b,Q(d,c),a[c.id].node=c):(c.y+=b/2,u.positionNode(c))}),t.edges().forEach(function(l){const c=t.edge(l);i.log$1.info("Edge "+l.v+" -> "+l.w+": "+JSON.stringify(c),c),c.points.forEach(E=>E.y+=b/2);const v=u.insertEdge(h,l,c,a,n,t,r);u.positionEdgeLabel(c,v)}),t.nodes().forEach(function(l){const c=t.node(l);i.log$1.info(l,c.type,c.diff),c.type==="group"&&(N=c.diff)}),{elem:g,diff:N}},Z=async(e,t,n,r,s)=>{u.insertMarkers$1(e,n,r,s),u.clear$1(),u.clear(),Y(),q(),i.log$1.warn("Graph at first:",JSON.stringify(x(t))),U(t),i.log$1.warn("Graph after:",JSON.stringify(x(t)));const o=i.getConfig();await L(e,t,r,s,void 0,o)};exports.render=Z;
|