@smarter.sh/ui-chat 0.8.0 → 0.9.1

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.
Files changed (141) hide show
  1. package/README.md +328 -107
  2. package/dist/embed/katex/fonts/KaTeX_AMS-Regular.woff2 +0 -0
  3. package/dist/embed/katex/fonts/KaTeX_Caligraphic-Bold.woff2 +0 -0
  4. package/dist/embed/katex/fonts/KaTeX_Caligraphic-Regular.woff2 +0 -0
  5. package/dist/embed/katex/fonts/KaTeX_Fraktur-Bold.woff2 +0 -0
  6. package/dist/embed/katex/fonts/KaTeX_Fraktur-Regular.woff2 +0 -0
  7. package/dist/embed/katex/fonts/KaTeX_Main-Bold.woff2 +0 -0
  8. package/dist/embed/katex/fonts/KaTeX_Main-BoldItalic.woff2 +0 -0
  9. package/dist/embed/katex/fonts/KaTeX_Main-Italic.woff2 +0 -0
  10. package/dist/embed/katex/fonts/KaTeX_Main-Regular.woff2 +0 -0
  11. package/dist/embed/katex/fonts/KaTeX_Math-BoldItalic.woff2 +0 -0
  12. package/dist/embed/katex/fonts/KaTeX_Math-Italic.woff2 +0 -0
  13. package/dist/embed/katex/fonts/KaTeX_SansSerif-Bold.woff2 +0 -0
  14. package/dist/embed/katex/fonts/KaTeX_SansSerif-Italic.woff2 +0 -0
  15. package/dist/embed/katex/fonts/KaTeX_SansSerif-Regular.woff2 +0 -0
  16. package/dist/embed/katex/fonts/KaTeX_Script-Regular.woff2 +0 -0
  17. package/dist/embed/katex/fonts/KaTeX_Size1-Regular.woff2 +0 -0
  18. package/dist/embed/katex/fonts/KaTeX_Size2-Regular.woff2 +0 -0
  19. package/dist/embed/katex/fonts/KaTeX_Size3-Regular.woff2 +0 -0
  20. package/dist/embed/katex/fonts/KaTeX_Size4-Regular.woff2 +0 -0
  21. package/dist/embed/katex/fonts/KaTeX_Typewriter-Regular.woff2 +0 -0
  22. package/dist/embed/mermaid/abnfDiagram-VCTEODGH-CGtrctwA.js +89 -0
  23. package/dist/embed/mermaid/arc-DlzgcAgU.js +82 -0
  24. package/dist/embed/mermaid/architecture-7GRP2DOG-D66ObL4C.js +3 -0
  25. package/dist/embed/mermaid/architectureDiagram-5GKGNRK7-CgMNWdVn.js +4148 -0
  26. package/dist/embed/mermaid/array-CApNbSU9.js +6 -0
  27. package/dist/embed/mermaid/blockDiagram-I7D4REHJ-Q2YOF2Nl.js +1922 -0
  28. package/dist/embed/mermaid/c4Diagram-7LVT6UL2-DI7_cX7n.js +3010 -0
  29. package/dist/embed/mermaid/channel-CxRe6Ync.js +5 -0
  30. package/dist/embed/mermaid/chunk-2E4U76K2-DPc-jkQd.js +348 -0
  31. package/dist/embed/mermaid/chunk-2Q5K7J3B-C1pX24ft.js +15 -0
  32. package/dist/embed/mermaid/chunk-4HAMMTFA-DY_JmJA2.js +4188 -0
  33. package/dist/embed/mermaid/chunk-5VM5RSS4-BFskf6Qk.js +5 -0
  34. package/dist/embed/mermaid/chunk-75Z2AOVW-BugNeXEB.js +1330 -0
  35. package/dist/embed/mermaid/chunk-CLGD4ZFX-BOKCMNQY.js +14 -0
  36. package/dist/embed/mermaid/chunk-DU6HZSFF-C09wkxIu.js +3897 -0
  37. package/dist/embed/mermaid/chunk-F27PBJKO-C69L38at.js +61 -0
  38. package/dist/embed/mermaid/chunk-FOHPRMQF-CLLDWcGe.js +21458 -0
  39. package/dist/embed/mermaid/chunk-GMAD6QVW-NxqJJwNT.js +1863 -0
  40. package/dist/embed/mermaid/chunk-GVQU2GXP-D4WoQcNg.js +37 -0
  41. package/dist/embed/mermaid/chunk-IMKFNOWR-DE94S7XC.js +2042 -0
  42. package/dist/embed/mermaid/chunk-JWPE2WC7-BGVSGRTC.js +8 -0
  43. package/dist/embed/mermaid/chunk-L3NEJ4N5-CqdtyK-9.js +245 -0
  44. package/dist/embed/mermaid/chunk-LNGE3PJU-DqC_0r8u.js +1521 -0
  45. package/dist/embed/mermaid/chunk-OSK3NFVY-B1KjtHOy.js +672 -0
  46. package/dist/embed/mermaid/chunk-P2QGCYS3-CP_jp-eQ.js +67 -0
  47. package/dist/embed/mermaid/chunk-POPQ4Y6H-CSwFrYKY.js +26 -0
  48. package/dist/embed/mermaid/chunk-PWAF6VOD-qhXJD1mO.js +275 -0
  49. package/dist/embed/mermaid/chunk-SHT3W25Y-a5ik03bR.js +4183 -0
  50. package/dist/embed/mermaid/chunk-SVP7TREG-67QXjHHx.js +490 -0
  51. package/dist/embed/mermaid/chunk-TICWLB2K-DHg0COuy.js +3357 -0
  52. package/dist/embed/mermaid/chunk-TLUHSLCS-BwEhuf5d.js +59 -0
  53. package/dist/embed/mermaid/chunk-XXDRQBXY-BJjzBm4h.js +9 -0
  54. package/dist/embed/mermaid/chunk-Y2CYZVJY-BAad7w_K.js +12 -0
  55. package/dist/embed/mermaid/classDiagram-ZZMXUADV-BlIPVBOk.js +30 -0
  56. package/dist/embed/mermaid/classDiagram-v2-VYDZK3BY-BavoJkSK.js +30 -0
  57. package/dist/embed/mermaid/cose-bilkent-JH36ORCC-Cx3-7Rca.js +2248 -0
  58. package/dist/embed/mermaid/cynefin-OW5HDTMX-Cfa1-YuM.js +3 -0
  59. package/dist/embed/mermaid/cynefinDiagram-5FMLGOSQ-CsV1I6A_.js +355 -0
  60. package/dist/embed/mermaid/cytoscape.esm-CLcfvFJ6.js +18145 -0
  61. package/dist/embed/mermaid/dagre-COnXXJRS.js +1934 -0
  62. package/dist/embed/mermaid/dagre-GXQ25YYZ-BzZWpDkI.js +425 -0
  63. package/dist/embed/mermaid/defaultLocale-CQ4Nl88y.js +198 -0
  64. package/dist/embed/mermaid/diagram-S7CK7UJ4-CShsH_ul.js +301 -0
  65. package/dist/embed/mermaid/diagram-UQ7AKVKN-Bb0mFpt2.js +214 -0
  66. package/dist/embed/mermaid/diagram-VSXAHHWV-DUq5PKM1.js +432 -0
  67. package/dist/embed/mermaid/diagram-VX7I27RA-Co2uyrw2.js +527 -0
  68. package/dist/embed/mermaid/diagram-Z3DM3KII-CTdPPkZs.js +134 -0
  69. package/dist/embed/mermaid/dist-CjR2JtV-.js +59 -0
  70. package/dist/embed/mermaid/ebnfDiagram-PWID7BFC-CAQNT7Vt.js +100 -0
  71. package/dist/embed/mermaid/erDiagram-RLTQ6QDP-DluYOFtk.js +1966 -0
  72. package/dist/embed/mermaid/eventmodeling-NTZA5JFV-DFSPvGS4.js +3 -0
  73. package/dist/embed/mermaid/flowDiagram-HODETNUW-BKXSV8xL.js +17 -0
  74. package/dist/embed/mermaid/ganttDiagram-EL5Y4UJY-D2BBzcpY.js +3072 -0
  75. package/dist/embed/mermaid/gitGraph-4MIJSDKK-BTHPY7Tg.js +3 -0
  76. package/dist/embed/mermaid/gitGraphDiagram-WWUBYQGX-BzZ3sE3s.js +733 -0
  77. package/dist/embed/mermaid/graphlib-D8JS7ydf.js +1267 -0
  78. package/dist/embed/mermaid/info-A6RAGUB7-4Mm0OyB8.js +3 -0
  79. package/dist/embed/mermaid/infoDiagram-27XIBGKW-DcbKIVvy.js +20 -0
  80. package/dist/embed/mermaid/init-CFNf60QB.js +13 -0
  81. package/dist/embed/mermaid/ishikawaDiagram-5VMMS53U-B6q3rvke.js +719 -0
  82. package/dist/embed/mermaid/journeyDiagram-3NMN7TZE-CDDY2Xma.js +884 -0
  83. package/dist/embed/mermaid/kanban-definition-UXKFOSKX-w7v22sq3.js +976 -0
  84. package/dist/embed/mermaid/katex-BqirFtOb.js +21977 -0
  85. package/dist/embed/mermaid/line-DoUHpRzu.js +34 -0
  86. package/dist/embed/mermaid/linear-CLS335Sc.js +287 -0
  87. package/dist/embed/mermaid/mermaid-parser.core-BoI6HFCg.js +638 -0
  88. package/dist/embed/mermaid/mermaid.js +1092 -0
  89. package/dist/embed/mermaid/mindmap-definition-YA3MSWOX-1bs_tKMD.js +1006 -0
  90. package/dist/embed/mermaid/ordinal-Da0rnhxr.js +65 -0
  91. package/dist/embed/mermaid/packet-AYTQ26CC-BAodtDR3.js +3 -0
  92. package/dist/embed/mermaid/path-hN9ktzbr.js +84 -0
  93. package/dist/embed/mermaid/pegDiagram-XKGWAZYB-DsrQs7Qo.js +94 -0
  94. package/dist/embed/mermaid/pie-WAS4IAKB-Yw-9-2EN.js +3 -0
  95. package/dist/embed/mermaid/pieDiagram-E7YTZNPT-BvkRs6Xl.js +203 -0
  96. package/dist/embed/mermaid/quadrantDiagram-AXDQQJYC-DDSDkbcq.js +2001 -0
  97. package/dist/embed/mermaid/radar-RG4KPBEZ-BtjjaEPe.js +3 -0
  98. package/dist/embed/mermaid/railroad-74A4TZTK-Du7TjeaO.js +3 -0
  99. package/dist/embed/mermaid/railroad-abnf-HS5TGJTU-D3flpty6.js +3 -0
  100. package/dist/embed/mermaid/railroad-ebnf-LZEXJU2U-DWpeYHWC.js +3 -0
  101. package/dist/embed/mermaid/railroad-peg-WCYAUIDC-DKiyz9fh.js +3 -0
  102. package/dist/embed/mermaid/railroadDiagram-O6MQD6OU-T__Cw3ez.js +76 -0
  103. package/dist/embed/mermaid/requirementDiagram-BXWQKSXE-ADir8pgL.js +2224 -0
  104. package/dist/embed/mermaid/rough.esm-XhrPyaQA.js +1361 -0
  105. package/dist/embed/mermaid/sankeyDiagram-P5KCCOFB-YTgoqhmd.js +972 -0
  106. package/dist/embed/mermaid/sequenceDiagram-WJ2MYXX4-Dpn6ph0n.js +4156 -0
  107. package/dist/embed/mermaid/sizeCapture-INFHLROL-C2wlw8KF.js +46 -0
  108. package/dist/embed/mermaid/src-CH4XuqUv.js +2147 -0
  109. package/dist/embed/mermaid/stateDiagram-D77RDMKH-V_8TbftV.js +220 -0
  110. package/dist/embed/mermaid/stateDiagram-v2-MP3YSRHH-us7SNDcU.js +30 -0
  111. package/dist/embed/mermaid/swimlanes-42K2YHIH-wzihXC1V.js +4979 -0
  112. package/dist/embed/mermaid/swimlanesDiagram-VR7AAH4N-BML-4Vp0.js +31 -0
  113. package/dist/embed/mermaid/timeline-definition-24CTP7MA-C3BzP6RA.js +1069 -0
  114. package/dist/embed/mermaid/treeView-Q6P3EWNA-Ba1dLcIR.js +3 -0
  115. package/dist/embed/mermaid/treemap-WGGIJYW6-D9G3ZsOW.js +3 -0
  116. package/dist/embed/mermaid/vennDiagram-4TSXK5OY-Cq1JumSe.js +1880 -0
  117. package/dist/embed/mermaid/wardley-WFR3VGLG-gAtip5-G.js +3 -0
  118. package/dist/embed/mermaid/wardleyDiagram-VM6X3IG4-HtzestuU.js +645 -0
  119. package/dist/embed/mermaid/xychartDiagram-S5SC5T6Z-BE-W0B_D.js +2210 -0
  120. package/dist/embed.js +903 -0
  121. package/dist/embed.js.map +1 -0
  122. package/dist/smarter-chat-library.es.js +1592 -1583
  123. package/dist/smarter-chat-library.es.js.map +1 -1
  124. package/dist/smarter-chat-library.umd.js +43 -43
  125. package/dist/smarter-chat-library.umd.js.map +1 -1
  126. package/dist/types/src/components/SmarterChat/Component.d.ts +1 -1
  127. package/dist/types/src/contract.gen.d.ts +41 -26
  128. package/dist/types/src/embed/EmbedApp.d.ts +10 -0
  129. package/dist/types/src/embed/assets.d.ts +7 -0
  130. package/dist/types/src/embed/autoMount.d.ts +18 -0
  131. package/dist/types/src/embed/css.d.ts +15 -0
  132. package/dist/types/src/embed/element.d.ts +19 -0
  133. package/dist/types/src/embed/index.d.ts +17 -0
  134. package/dist/types/src/embed/mermaid.d.ts +2 -0
  135. package/dist/types/src/embed/mermaidImport.d.ts +1 -0
  136. package/dist/types/src/embed/options.d.ts +69 -0
  137. package/dist/types/src/lib/cookie.d.ts +4 -3
  138. package/dist/types/src/lib/mermaidImport.d.ts +8 -0
  139. package/dist/types/src/types.d.ts +7 -0
  140. package/dist/ui-chat.css +1 -1
  141. package/package.json +10 -4
@@ -0,0 +1,432 @@
1
+ import { m as e, p as t } from "./src-CH4XuqUv.js";
2
+ import { n } from "./chunk-Y2CYZVJY-BAad7w_K.js";
3
+ import { H as r, K as i, U as a, Y as o, a as s, b as c, f as l, v as u, w as d, x as f, y as p, z as m } from "./chunk-DU6HZSFF-C09wkxIu.js";
4
+ import { _ as h, i as g, t as ee } from "./chunk-75Z2AOVW-BugNeXEB.js";
5
+ import { T as te } from "./chunk-FOHPRMQF-CLLDWcGe.js";
6
+ import { n as ne } from "./mermaid-parser.core-BoI6HFCg.js";
7
+ import { t as re } from "./chunk-JWPE2WC7-BGVSGRTC.js";
8
+ //#region ../../node_modules/mermaid/dist/chunks/mermaid.core/diagram-VSXAHHWV.mjs
9
+ var _ = "position frame", v = "frame positioned", y = "position relation", b = "relation positioned", ie = /* @__PURE__ */ n(function(t) {
10
+ e.debug("options str", t);
11
+ }, "setOptions"), ae = /* @__PURE__ */ n(function() {
12
+ return {};
13
+ }, "getOptions"), oe = /* @__PURE__ */ n(function() {
14
+ x(), s();
15
+ }, "clear");
16
+ function x() {
17
+ S = {};
18
+ }
19
+ n(x, "reset");
20
+ var se = l.eventmodeling, ce = /* @__PURE__ */ n(() => g({
21
+ ...se,
22
+ ...c().eventmodeling
23
+ }), "getConfig"), S = {};
24
+ function C() {
25
+ let t = le, { ast: n } = S, r = E();
26
+ if (!n) throw Error("No data for EventModel");
27
+ return n.frames.forEach((i, a) => {
28
+ let o = N(i, n.dataEntities, r);
29
+ t = q(t, {
30
+ $kind: _,
31
+ index: a,
32
+ frame: i,
33
+ textProps: o
34
+ });
35
+ let s;
36
+ B(i) ? (e.debug("source frame", i.sourceFrames), s = n.frames.filter((e) => i.sourceFrames.some((t) => t.$refText === e.name)), s.forEach((e) => {
37
+ t = q(t, {
38
+ $kind: y,
39
+ index: a,
40
+ frame: i,
41
+ sourceFrame: e
42
+ });
43
+ })) : t = q(t, {
44
+ $kind: y,
45
+ index: a,
46
+ frame: i
47
+ });
48
+ }), t = {
49
+ ...t,
50
+ sortedSwimlanesArray: L(t.swimlanes)
51
+ }, t;
52
+ }
53
+ n(C, "getState");
54
+ function w(e) {
55
+ S.ast = e;
56
+ }
57
+ n(w, "setAst");
58
+ var T = {
59
+ swimlaneMinHeight: 70,
60
+ swimlanePadding: 15,
61
+ swimlaneGap: 10,
62
+ boxPadding: 10,
63
+ boxOverlap: 90,
64
+ boxDefaultY: 0,
65
+ boxMinWidth: 80,
66
+ boxMaxWidth: 450,
67
+ boxMinHeight: 80,
68
+ boxMaxHeight: 750,
69
+ contentStartX: 250,
70
+ textMaxWidth: 430,
71
+ boxTextFontWeight: "bold",
72
+ boxTextPadding: 10,
73
+ swimlaneTextFontWeight: "bold",
74
+ labelUiAutomation: "UI/Automation",
75
+ labelUiAutomationPrefix: "UI/A: ",
76
+ labelCommandReadModel: "Command/Read Model",
77
+ labelCommandReadModelPrefix: "C/RM: ",
78
+ labelEvents: "Events",
79
+ labelEventsPrefix: "Stream: "
80
+ };
81
+ function E() {
82
+ return T;
83
+ }
84
+ n(E, "getDiagramProps");
85
+ var le = {
86
+ boxes: [],
87
+ swimlanes: {},
88
+ relations: [],
89
+ maxR: 0,
90
+ sortedSwimlanesArray: []
91
+ };
92
+ function D(e) {
93
+ let t = e.split(".");
94
+ if (t.length === 2) return t[0];
95
+ }
96
+ n(D, "extractNamespace");
97
+ function O(e) {
98
+ let t = e.split(".");
99
+ return t.length === 2 ? t[1] : e;
100
+ }
101
+ n(O, "extractName");
102
+ function k(e, t) {
103
+ if (t && t.length !== 0) return Object.values(e).find((e) => e.namespace === t);
104
+ }
105
+ n(k, "findSwimlaneByNamespace");
106
+ function A(e, t, n) {
107
+ return Math.max(t, ...Object.keys(e).filter((e) => {
108
+ let r = Number.parseInt(e);
109
+ return r > t && r < n;
110
+ }).map((e) => Number.parseInt(e))) + 1;
111
+ }
112
+ n(A, "findNextAvailableIndex");
113
+ function j(e, t) {
114
+ let n = D(e.entityIdentifier), r = k(t, n);
115
+ switch (e.modelEntityType) {
116
+ case "ui":
117
+ case "pcr":
118
+ case "processor": return r ? {
119
+ index: r.index,
120
+ label: r.namespace || T.labelUiAutomation
121
+ } : n ? {
122
+ index: A(t, 0, 100),
123
+ label: T.labelUiAutomationPrefix + n
124
+ } : {
125
+ index: 0,
126
+ label: T.labelUiAutomation
127
+ };
128
+ case "rmo":
129
+ case "readmodel":
130
+ case "cmd":
131
+ case "command": return r ? {
132
+ index: r.index,
133
+ label: r.namespace || T.labelCommandReadModel
134
+ } : n ? {
135
+ index: A(t, 100, 200),
136
+ label: T.labelCommandReadModelPrefix + n
137
+ } : {
138
+ index: 100,
139
+ label: T.labelCommandReadModel
140
+ };
141
+ default: return r ? {
142
+ index: r.index,
143
+ label: r.namespace || T.labelEvents
144
+ } : n ? {
145
+ index: A(t, 200, 300),
146
+ label: T.labelEventsPrefix + n
147
+ } : {
148
+ index: 200,
149
+ label: T.labelEvents
150
+ };
151
+ }
152
+ }
153
+ n(j, "calculateSwimlaneProps");
154
+ function M(e) {
155
+ let { themeVariables: t } = c();
156
+ switch (e.modelEntityType) {
157
+ case "ui": return {
158
+ fill: t.emUiFill ?? "white",
159
+ stroke: t.emUiStroke ?? "#dbdada"
160
+ };
161
+ case "pcr":
162
+ case "processor": return {
163
+ fill: t.emProcessorFill ?? "#edb3f6",
164
+ stroke: t.emProcessorStroke ?? "#b88cbf"
165
+ };
166
+ case "rmo":
167
+ case "readmodel": return {
168
+ fill: t.emReadModelFill ?? "#d3f1a2",
169
+ stroke: t.emReadModelStroke ?? "#a3b732"
170
+ };
171
+ case "cmd":
172
+ case "command": return {
173
+ fill: t.emCommandFill ?? "#bcd6fe",
174
+ stroke: t.emCommandStroke ?? "#679ac3"
175
+ };
176
+ case "evt":
177
+ case "event": return {
178
+ fill: t.emEventFill ?? "#ffb778",
179
+ stroke: t.emEventStroke ?? "#c19a0f"
180
+ };
181
+ default: return {
182
+ fill: "red",
183
+ stroke: "black"
184
+ };
185
+ }
186
+ }
187
+ n(M, "calculateEntityVisualProps");
188
+ function N(t, n, r) {
189
+ let i = c(), a = m(O(t.entityIdentifier) ?? "", i), o, s = {
190
+ fontSize: 16,
191
+ fontWeight: 700,
192
+ fontFamily: "\"trebuchet ms\", verdana, arial, sans-serif",
193
+ joinWith: "<br/>"
194
+ }, l = `<b>${h(a, r.textMaxWidth, s)}</b>`;
195
+ if (t.dataInlineValue && (o = t.dataInlineValue, o = o.substring(o.indexOf("{") + 1), o = o.substring(0, o.lastIndexOf("}") - 1), o = m(o, i), o = h(o, r.textMaxWidth, s), o = o.replaceAll(" ", "&nbsp;")), t.dataReference) {
196
+ let e = n.find((e) => e.name === t.dataReference?.$refText);
197
+ e && (o = e.dataBlockValue, o = o.substring(o.indexOf("{\n") + 2), o = o.substring(0, o.lastIndexOf("}") - 1), o = m(o, i), o = h(o, r.textMaxWidth, s), o = o.replaceAll(" ", "&nbsp;"), o += "<br/>");
198
+ }
199
+ let u = o !== void 0;
200
+ u && (l += `<br/><br/><code style="text-align: left; display: block;max-width:${r.textMaxWidth}px">${o}</code>`);
201
+ let d = {
202
+ fontSize: s.fontSize,
203
+ fontWeight: s.fontWeight,
204
+ fontFamily: s.fontFamily
205
+ }, f = ee(l, d), p = u ? f.width / 3 : f.width, g = {
206
+ content: l,
207
+ width: p,
208
+ height: f.height
209
+ };
210
+ return e.debug(`[${t.name}] ${t.entityIdentifier} text`, g), g;
211
+ }
212
+ n(N, "calculateTextProps");
213
+ function P(e, t) {
214
+ let n = t, r = M(n.frame), i = {
215
+ width: n.textProps.width + 2 * T.boxTextPadding,
216
+ height: n.textProps.height + 2 * T.boxTextPadding
217
+ };
218
+ return [{
219
+ $kind: v,
220
+ frame: n.frame,
221
+ index: n.index,
222
+ visual: r,
223
+ dimension: i,
224
+ textProps: n.textProps
225
+ }];
226
+ }
227
+ n(P, "decidePositionFrame");
228
+ function F(e, t, n) {
229
+ return t === void 0 ? T.contentStartX : t.index === e.index && e.r ? e.r + T.boxPadding : n === void 0 ? T.contentStartX : n.r - T.boxOverlap + T.boxPadding;
230
+ }
231
+ n(F, "calculateX");
232
+ function I(e, t) {
233
+ let n = [...e.map((e) => e.r), t];
234
+ return Math.max(...n);
235
+ }
236
+ n(I, "calculateMaxRight");
237
+ function L(e) {
238
+ return Object.values(e).sort((e, t) => e.index - t.index);
239
+ }
240
+ n(L, "sortedSwimlanesArray");
241
+ function R(e, t) {
242
+ let n = t, r = j(n.frame, e.swimlanes), i;
243
+ i = r.index in e.swimlanes ? e.swimlanes[r.index] : {
244
+ index: r.index,
245
+ label: r.label,
246
+ r: 0,
247
+ y: r.index * T.swimlaneMinHeight + T.swimlaneGap,
248
+ height: T.swimlaneMinHeight,
249
+ maxHeight: T.swimlaneMinHeight
250
+ };
251
+ let a = e.boxes.length > 0 ? e.boxes[e.boxes.length - 1] : void 0, o = e.previousSwimlaneNumber === void 0 ? void 0 : e.swimlanes[e.previousSwimlaneNumber], s = {
252
+ width: Math.max(T.boxMinWidth, Math.min(T.boxMaxWidth, n.dimension.width)) + 2 * T.boxPadding,
253
+ height: Math.max(T.boxMinHeight, Math.min(T.boxMaxHeight, n.dimension.height)) + 2 * T.boxPadding
254
+ }, c = F(i, o, a), l = c + s.width + T.boxPadding, u = I(Object.values(e.swimlanes), l);
255
+ i.r = c + s.width, i.maxHeight = Math.max(i.maxHeight, s.height), i.height = Math.max(T.swimlaneMinHeight, i.maxHeight) + 2 * T.swimlanePadding;
256
+ let d = {
257
+ x: c,
258
+ y: T.swimlanePadding + i.y,
259
+ r: l,
260
+ dimension: s,
261
+ leftSibling: !1,
262
+ swimlane: i,
263
+ visual: n.visual,
264
+ text: n.textProps.content,
265
+ frame: n.frame,
266
+ index: n.index
267
+ }, f = {
268
+ ...e,
269
+ boxes: [...e.boxes, d],
270
+ swimlanes: {
271
+ ...e.swimlanes,
272
+ [`${i.index}`]: i
273
+ },
274
+ previousSwimlaneNumber: r.index,
275
+ previousFrame: n.frame,
276
+ maxR: u
277
+ }, p = L(f.swimlanes);
278
+ p.length > 0 && (p[0].y = 0);
279
+ for (let e = 1; e < p.length; e++) {
280
+ let t = p[e], n = p[e - 1];
281
+ t.y = n.y + n.height + T.swimlaneGap;
282
+ }
283
+ return f;
284
+ }
285
+ n(R, "evolveFramePositioned");
286
+ function z(e, t) {
287
+ return e === 0 && t.sourceFrames.length === 0;
288
+ }
289
+ n(z, "isFirstFrame");
290
+ function B(e) {
291
+ return e.sourceFrames !== void 0 && e.sourceFrames !== null && e.sourceFrames.length > 0;
292
+ }
293
+ n(B, "hasSourceFrame");
294
+ function V(e, t) {
295
+ if (t != null) return e.find((e) => e.frame.name === t.name);
296
+ }
297
+ n(V, "findBoxByFrame");
298
+ function H(e, t, n) {
299
+ if (!(n < 0)) for (let r = n; r >= 0; r--) {
300
+ let n = e[r];
301
+ if (n.swimlane.index !== t) return n;
302
+ }
303
+ }
304
+ n(H, "findBoxByLineIndex");
305
+ function U(e, t) {
306
+ let n = t;
307
+ if (te(n.frame) || z(n.index, n.frame)) return [];
308
+ let r = V(e.boxes, n.frame);
309
+ if (r === void 0) throw Error(`Target box not found for frame ${n.frame.name}`);
310
+ let i;
311
+ return i = n.sourceFrame ? V(e.boxes, n.sourceFrame) : H(e.boxes, r.swimlane.index, n.index - 1), i === void 0 ? [] : [{
312
+ $kind: b,
313
+ frame: n.frame,
314
+ index: n.index,
315
+ sourceBox: i,
316
+ targetBox: r
317
+ }];
318
+ }
319
+ n(U, "decidePositionRelation");
320
+ function W(e, t) {
321
+ let n = t, r = {
322
+ visual: {
323
+ fill: "none",
324
+ stroke: "#000"
325
+ },
326
+ source: {
327
+ x: n.sourceBox.x,
328
+ y: n.sourceBox.y
329
+ },
330
+ target: {
331
+ x: n.targetBox.x,
332
+ y: n.targetBox.y
333
+ },
334
+ sourceBox: n.sourceBox,
335
+ targetBox: n.targetBox
336
+ };
337
+ return {
338
+ ...e,
339
+ relations: [...e.relations, r]
340
+ };
341
+ }
342
+ n(W, "evolveRelationPositioned");
343
+ var ue = {
344
+ [_]: P,
345
+ [y]: U
346
+ }, de = {
347
+ [v]: R,
348
+ [b]: W
349
+ };
350
+ function G(t, n) {
351
+ let r = ue[n.$kind];
352
+ if (r == null) return [];
353
+ let i = r(t, n);
354
+ return e.debug("decided events", i), i;
355
+ }
356
+ n(G, "decide");
357
+ function K(t, n) {
358
+ let r = n.reduce((e, t) => {
359
+ let n = de[t.$kind];
360
+ return n == null ? e : n(e, t);
361
+ }, t);
362
+ return e.debug("evolve events", {
363
+ state: t,
364
+ newState: r,
365
+ events: n
366
+ }), r;
367
+ }
368
+ n(K, "evolve");
369
+ function q(e, t) {
370
+ return K(e, G(e, t));
371
+ }
372
+ n(q, "dispatch");
373
+ var J = {
374
+ getConfig: ce,
375
+ setOptions: ie,
376
+ getOptions: ae,
377
+ clear: oe,
378
+ setAccTitle: a,
379
+ getAccTitle: p,
380
+ getAccDescription: u,
381
+ setAccDescription: r,
382
+ setDiagramTitle: i,
383
+ getDiagramTitle: d,
384
+ setAst: w,
385
+ getDiagramProps: E,
386
+ getState: C
387
+ }, fe = { parse: /* @__PURE__ */ n(async (t) => {
388
+ let n = await ne("eventmodeling", t);
389
+ e.debug(n), J.setAst(n), re(n, J);
390
+ }, "parse") }, Y = f()?.eventmodeling;
391
+ function X(e, t) {
392
+ return (n) => {
393
+ let r = n.swimlane.y + t.swimlanePadding, i = e.append("g").attr("class", "em-box");
394
+ i.append("rect").attr("x", n.x).attr("y", r).attr("rx", "3").attr("width", n.dimension.width).attr("height", n.dimension.height).attr("stroke", n.visual.stroke).attr("fill", n.visual.fill), i.append("foreignObject").attr("x", n.x + t.boxPadding).attr("y", r + 10).attr("width", n.dimension.width - 2 * t.boxPadding).attr("height", n.dimension.height - 2 * t.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(n.text);
395
+ };
396
+ }
397
+ n(X, "renderD3Box");
398
+ function Z(e, t) {
399
+ return e > t;
400
+ }
401
+ n(Z, "dirUpwards");
402
+ function Q(t, n, r, i) {
403
+ return (a) => {
404
+ let o = a.sourceBox.swimlane.y + n.swimlanePadding, s = a.targetBox.swimlane.y + n.swimlanePadding, c = Z(o, s), l = a.sourceBox.x + a.sourceBox.dimension.width * 2 / 3, u = a.targetBox.x + a.targetBox.dimension.width / 3, d, f;
405
+ e.debug(`rendering relation up=${c} for `, {
406
+ sourceBox: a.sourceBox,
407
+ targetBox: a.targetBox
408
+ }), c ? (d = o, f = s + a.targetBox.dimension.height) : (d = o + a.sourceBox.dimension.height, f = s);
409
+ let p = i.emRelationStroke ?? a.visual.stroke;
410
+ t.append("path").attr("class", "em-relation").attr("fill", a.visual.fill).attr("stroke", p).attr("stroke-width", "1").attr("marker-end", `url(#${r})`).attr("d", `M${l} ${d} L${u} ${f}`);
411
+ };
412
+ }
413
+ n(Q, "renderD3Relation");
414
+ function $(e, t, n, r) {
415
+ return (i) => {
416
+ let a = e.append("g").attr("class", "em-swimlane"), o = r.emSwimlaneBackgroundOdd ?? "rgb(250,250,250)", s = r.emSwimlaneBackgroundStroke ?? "rgb(240,240,240)";
417
+ a.append("rect").attr("x", 0).attr("y", i.y).attr("rx", "3").attr("width", t + n.swimlanePadding).attr("height", i.height).attr("fill", o).attr("stroke", s), a.append("text").attr("font-weight", n.swimlaneTextFontWeight).attr("x", 30).attr("y", i.y + 30).text(i.label);
418
+ };
419
+ }
420
+ n($, "renderD3Swimlane");
421
+ var pe = {
422
+ parser: fe,
423
+ db: J,
424
+ renderer: { draw: /* @__PURE__ */ n(function(n, r, i, a) {
425
+ if (e.debug("in eventmodeling renderer", n + "\n", "id:", r, i), !Y) throw Error("EventModeling config not found");
426
+ let s = a.db, { themeVariables: c, eventmodeling: l } = f(), u = t(`[id="${r}"]`), d = s.getDiagramProps(), p = s.getState(), m = `em-arrowhead-${r}`, h = c.emArrowhead ?? "#000000";
427
+ p.sortedSwimlanesArray.forEach($(u, p.maxR, d, c)), p.boxes.forEach(X(u, d)), p.relations.forEach(Q(u, d, m, c)), u.append("defs").append("marker").attr("id", m).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", h), o(void 0, u, l?.padding ?? 30, l?.useMaxWidth);
428
+ }, "draw") },
429
+ styles: /* @__PURE__ */ n((e) => "", "getStyles")
430
+ };
431
+ //#endregion
432
+ export { pe as diagram };