@schmitech/chatbot-widget 0.5.3 → 0.6.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.
Files changed (64) hide show
  1. package/dist/_basePickBy-C3-QE0dl-5eQ6L29l.js +152 -0
  2. package/dist/_baseUniq-CstiM9Lp-AFR_Ns0a.js +615 -0
  3. package/dist/arc-W3NKKXLI-DHbDwLx0.js +84 -0
  4. package/dist/architecture-U656AL7Q-fn9wJZsH-BLoGjtkP.js +6 -0
  5. package/dist/architectureDiagram-VXUJARFQ-zzJsgPC6-C4OfUE0m.js +4667 -0
  6. package/dist/blockDiagram-VD42YOAC-D-In4h7h-BYXdRmeG.js +2266 -0
  7. package/dist/c4Diagram-YG6GDRKO-DBs8r9gh-BdLuHgPT.js +1582 -0
  8. package/dist/channel-RBWQyMSg-Cx0HUumY.js +6 -0
  9. package/dist/chatbot-widget.bundle.js +4473 -1556
  10. package/dist/chatbot-widget.css +1 -1
  11. package/dist/chatbot-widget.es.js +12 -63659
  12. package/dist/chatbot-widget.umd.js +4472 -1555
  13. package/dist/chunk-4BX2VUAB-BqD7w0AR-CbA2613c.js +10 -0
  14. package/dist/chunk-55IACEB6-D8pvDVEJ-DrL4SJSR.js +9 -0
  15. package/dist/chunk-B4BG7PRW-Dwma1pSy-BWjG5dc6.js +1375 -0
  16. package/dist/chunk-DI55MBZ5-BY2XXvZz-DbAvz3Pq.js +1383 -0
  17. package/dist/chunk-FMBD7UC4-BeiLbQ8U-BNaZTCv4.js +20 -0
  18. package/dist/chunk-QN33PNHL-BkO3hOeq-DkU1EzGA.js +21 -0
  19. package/dist/chunk-QZHKN3VN-Cwlo2qTG-DMmeZmp5.js +16 -0
  20. package/dist/chunk-TZMSLE5B-BnXK-OiF-RfzVsOBe.js +65 -0
  21. package/dist/classDiagram-2ON5EDUG-Crd6O69V-kCZrFOLN.js +17 -0
  22. package/dist/classDiagram-v2-WZHVMYZB-Crd6O69V-kCZrFOLN.js +17 -0
  23. package/dist/clone-CfLgyC8S-DsDOh4B4.js +9 -0
  24. package/dist/config/index.d.ts +4 -2
  25. package/dist/cose-bilkent-S5V4N54A-DKeVcPDK-de_7nZTY.js +2609 -0
  26. package/dist/cytoscape.esm-CjI2IsL8-Be2K4mI6.js +18723 -0
  27. package/dist/dagre-6UL2VRFP-BPf604Df-BhZs6zCq.js +448 -0
  28. package/dist/diagram-PSM6KHXK-DeLcpEV3-qb4rujeN.js +532 -0
  29. package/dist/diagram-QEK2KX5R-C_5RR1NJ-C5kZWmRl.js +222 -0
  30. package/dist/diagram-S2PKOQOG-DVx43aon-4nlw6iDz.js +144 -0
  31. package/dist/erDiagram-Q2GNP2WA-DgUeO5_h-DHc9Yphl.js +841 -0
  32. package/dist/flowDiagram-NV44I4VS-C5HQUzU9-DHjbmAtJ.js +1628 -0
  33. package/dist/ganttDiagram-JELNMOA3-DgSZ1ixF-C3hJs_k9.js +1936 -0
  34. package/dist/gitGraph-F6HP7TQM-UL7-Bx1s-Cog5rj3j.js +6 -0
  35. package/dist/gitGraphDiagram-NY62KEGX-DY5loT9K-CEcKQNrM.js +713 -0
  36. package/dist/graph-BfwqPHx6-DErF9dBN.js +248 -0
  37. package/dist/index-B5s_uaP2.js +124168 -0
  38. package/dist/index-BAOVR-xx-thst7Pu6.js +13251 -0
  39. package/dist/info-NVLQJR56-BsqQ0RXQ-BcYgZCCY.js +6 -0
  40. package/dist/infoDiagram-WHAUD3N6-DIqQ6vCk-BuiAAMSH.js +25 -0
  41. package/dist/journeyDiagram-XKPGCS4Q-DXjg3S3r-Byi_TGXs.js +835 -0
  42. package/dist/kanban-definition-3W4ZIXB7-Uxt7Am6n-jy96nA-g.js +721 -0
  43. package/dist/layout-CSfkE668-BjigbqJL.js +1333 -0
  44. package/dist/mermaid-parser.core-LjuO4CL3-BLqmPe8-.js +12891 -0
  45. package/dist/mindmap-definition-VGOIOE7T-DXwVuAPE-SK4e1Sse.js +787 -0
  46. package/dist/packet-BFZMPI3H-DJWkrKrV-BamBev9S.js +6 -0
  47. package/dist/pie-7BOR55EZ-DC8hTFwn-D1bcIQbR.js +6 -0
  48. package/dist/pieDiagram-ADFJNKIX-Cj0EHHtj-Dbr09c-S.js +161 -0
  49. package/dist/quadrantDiagram-AYHSOK5B-CnLDz007-Ci0DQl2T.js +1024 -0
  50. package/dist/radar-NHE76QYJ-Bijk-Fk9-9nAmDCMr.js +6 -0
  51. package/dist/requirementDiagram-UZGBJVZJ-rDaI-8Be-CSEc4S33.js +851 -0
  52. package/dist/sankeyDiagram-TZEHDZUN-A0YO8ixs-Zj8Z0j0n.js +810 -0
  53. package/dist/sequenceDiagram-WL72ISMW-BFF7TtP7-Dcofckjv.js +2519 -0
  54. package/dist/shared/styles.d.ts +1 -1
  55. package/dist/stateDiagram-FKZM4ZOC-ofFsB7HJ-BJBX12rE.js +264 -0
  56. package/dist/stateDiagram-v2-4FDKWEC3-CEZFbksU-BywmU88h.js +17 -0
  57. package/dist/timeline-definition-IT6M3QCI-5W361ZNm-MP_ufVe7.js +800 -0
  58. package/dist/treemap-KMMF4GRG-pGRoYcSn-BeZ7sXgP.js +6 -0
  59. package/dist/ui/Message.d.ts +1 -5
  60. package/dist/ui/MessagesList.d.ts +1 -5
  61. package/dist/utils/contentFiltering.d.ts +12 -0
  62. package/dist/xychartDiagram-PRI3JC2R-CSr0GxaP-DBgCtplP.js +1297 -0
  63. package/package.json +3 -3
  64. package/dist/ui/TypingEffect.d.ts +0 -18
@@ -0,0 +1,721 @@
1
+ import { x as a, a as ee, p as F, al as pe, $ as ye, e as fe, o as me, aS as be, T as V, y as j, C as _e, H as Ee, aT as Se, aU as ae, aV as le } from "./index-B5s_uaP2.js";
2
+ import { l as ke } from "./chunk-FMBD7UC4-BeiLbQ8U-BNaZTCv4.js";
3
+ typeof window < "u" && (window.global = window);
4
+ var J = function() {
5
+ var i = /* @__PURE__ */ a(function(k, e, n, r) {
6
+ for (n = n || {}, r = k.length; r--; n[k[r]] = e) ;
7
+ return n;
8
+ }, "o"), u = [1, 4], d = [1, 13], s = [1, 12], g = [1, 15], D = [1, 16], S = [1, 20], h = [1, 19], O = [6, 7, 8], b = [1, 26], _ = [1, 24], C = [1, 25], o = [6, 7, 11], M = [1, 31], w = [6, 7, 11, 24], $ = [1, 6, 13, 16, 17, 20, 23], T = [1, 35], H = [1, 36], A = [1, 6, 7, 11, 13, 16, 17, 20, 23], U = [1, 38], y = {
9
+ trace: /* @__PURE__ */ a(function() {
10
+ }, "trace"),
11
+ yy: {},
12
+ symbols_: { error: 2, start: 3, mindMap: 4, spaceLines: 5, SPACELINE: 6, NL: 7, KANBAN: 8, document: 9, stop: 10, EOF: 11, statement: 12, SPACELIST: 13, node: 14, shapeData: 15, ICON: 16, CLASS: 17, nodeWithId: 18, nodeWithoutId: 19, NODE_DSTART: 20, NODE_DESCR: 21, NODE_DEND: 22, NODE_ID: 23, SHAPE_DATA: 24, $accept: 0, $end: 1 },
13
+ terminals_: { 2: "error", 6: "SPACELINE", 7: "NL", 8: "KANBAN", 11: "EOF", 13: "SPACELIST", 16: "ICON", 17: "CLASS", 20: "NODE_DSTART", 21: "NODE_DESCR", 22: "NODE_DEND", 23: "NODE_ID", 24: "SHAPE_DATA" },
14
+ productions_: [0, [3, 1], [3, 2], [5, 1], [5, 2], [5, 2], [4, 2], [4, 3], [10, 1], [10, 1], [10, 1], [10, 2], [10, 2], [9, 3], [9, 2], [12, 3], [12, 2], [12, 2], [12, 2], [12, 1], [12, 2], [12, 1], [12, 1], [12, 1], [12, 1], [14, 1], [14, 1], [19, 3], [18, 1], [18, 4], [15, 2], [15, 1]],
15
+ performAction: /* @__PURE__ */ a(function(k, e, n, r, c, t, m) {
16
+ var l = t.length - 1;
17
+ switch (c) {
18
+ case 6:
19
+ case 7:
20
+ return r;
21
+ case 8:
22
+ r.getLogger().trace("Stop NL ");
23
+ break;
24
+ case 9:
25
+ r.getLogger().trace("Stop EOF ");
26
+ break;
27
+ case 11:
28
+ r.getLogger().trace("Stop NL2 ");
29
+ break;
30
+ case 12:
31
+ r.getLogger().trace("Stop EOF2 ");
32
+ break;
33
+ case 15:
34
+ r.getLogger().info("Node: ", t[l - 1].id), r.addNode(t[l - 2].length, t[l - 1].id, t[l - 1].descr, t[l - 1].type, t[l]);
35
+ break;
36
+ case 16:
37
+ r.getLogger().info("Node: ", t[l].id), r.addNode(t[l - 1].length, t[l].id, t[l].descr, t[l].type);
38
+ break;
39
+ case 17:
40
+ r.getLogger().trace("Icon: ", t[l]), r.decorateNode({ icon: t[l] });
41
+ break;
42
+ case 18:
43
+ case 23:
44
+ r.decorateNode({ class: t[l] });
45
+ break;
46
+ case 19:
47
+ r.getLogger().trace("SPACELIST");
48
+ break;
49
+ case 20:
50
+ r.getLogger().trace("Node: ", t[l - 1].id), r.addNode(0, t[l - 1].id, t[l - 1].descr, t[l - 1].type, t[l]);
51
+ break;
52
+ case 21:
53
+ r.getLogger().trace("Node: ", t[l].id), r.addNode(0, t[l].id, t[l].descr, t[l].type);
54
+ break;
55
+ case 22:
56
+ r.decorateNode({ icon: t[l] });
57
+ break;
58
+ case 27:
59
+ r.getLogger().trace("node found ..", t[l - 2]), this.$ = { id: t[l - 1], descr: t[l - 1], type: r.getType(t[l - 2], t[l]) };
60
+ break;
61
+ case 28:
62
+ this.$ = { id: t[l], descr: t[l], type: 0 };
63
+ break;
64
+ case 29:
65
+ r.getLogger().trace("node found ..", t[l - 3]), this.$ = { id: t[l - 3], descr: t[l - 1], type: r.getType(t[l - 2], t[l]) };
66
+ break;
67
+ case 30:
68
+ this.$ = t[l - 1] + t[l];
69
+ break;
70
+ case 31:
71
+ this.$ = t[l];
72
+ break;
73
+ }
74
+ }, "anonymous"),
75
+ table: [{ 3: 1, 4: 2, 5: 3, 6: [1, 5], 8: u }, { 1: [3] }, { 1: [2, 1] }, { 4: 6, 6: [1, 7], 7: [1, 8], 8: u }, { 6: d, 7: [1, 10], 9: 9, 12: 11, 13: s, 14: 14, 16: g, 17: D, 18: 17, 19: 18, 20: S, 23: h }, i(O, [2, 3]), { 1: [2, 2] }, i(O, [2, 4]), i(O, [2, 5]), { 1: [2, 6], 6: d, 12: 21, 13: s, 14: 14, 16: g, 17: D, 18: 17, 19: 18, 20: S, 23: h }, { 6: d, 9: 22, 12: 11, 13: s, 14: 14, 16: g, 17: D, 18: 17, 19: 18, 20: S, 23: h }, { 6: b, 7: _, 10: 23, 11: C }, i(o, [2, 24], { 18: 17, 19: 18, 14: 27, 16: [1, 28], 17: [1, 29], 20: S, 23: h }), i(o, [2, 19]), i(o, [2, 21], { 15: 30, 24: M }), i(o, [2, 22]), i(o, [2, 23]), i(w, [2, 25]), i(w, [2, 26]), i(w, [2, 28], { 20: [1, 32] }), { 21: [1, 33] }, { 6: b, 7: _, 10: 34, 11: C }, { 1: [2, 7], 6: d, 12: 21, 13: s, 14: 14, 16: g, 17: D, 18: 17, 19: 18, 20: S, 23: h }, i($, [2, 14], { 7: T, 11: H }), i(A, [2, 8]), i(A, [2, 9]), i(A, [2, 10]), i(o, [2, 16], { 15: 37, 24: M }), i(o, [2, 17]), i(o, [2, 18]), i(o, [2, 20], { 24: U }), i(w, [2, 31]), { 21: [1, 39] }, { 22: [1, 40] }, i($, [2, 13], { 7: T, 11: H }), i(A, [2, 11]), i(A, [2, 12]), i(o, [2, 15], { 24: U }), i(w, [2, 30]), { 22: [1, 41] }, i(w, [2, 27]), i(w, [2, 29])],
76
+ defaultActions: { 2: [2, 1], 6: [2, 2] },
77
+ parseError: /* @__PURE__ */ a(function(k, e) {
78
+ if (e.recoverable)
79
+ this.trace(k);
80
+ else {
81
+ var n = new Error(k);
82
+ throw n.hash = e, n;
83
+ }
84
+ }, "parseError"),
85
+ parse: /* @__PURE__ */ a(function(k) {
86
+ var e = this, n = [0], r = [], c = [null], t = [], m = this.table, l = "", W = 0, ne = 0, he = 2, se = 1, ue = t.slice.call(arguments, 1), f = Object.create(this.lexer), P = { yy: {} };
87
+ for (var q in this.yy)
88
+ Object.prototype.hasOwnProperty.call(this.yy, q) && (P.yy[q] = this.yy[q]);
89
+ f.setInput(k, P.yy), P.yy.lexer = f, P.yy.parser = this, typeof f.yylloc > "u" && (f.yylloc = {});
90
+ var X = f.yylloc;
91
+ t.push(X);
92
+ var ge = f.options && f.options.ranges;
93
+ typeof P.yy.parseError == "function" ? this.parseError = P.yy.parseError : this.parseError = Object.getPrototypeOf(this).parseError;
94
+ function de(N) {
95
+ n.length = n.length - 2 * N, c.length = c.length - N, t.length = t.length - N;
96
+ }
97
+ a(de, "popStack");
98
+ function re() {
99
+ var N;
100
+ return N = r.pop() || f.lex() || se, typeof N != "number" && (N instanceof Array && (r = N, N = r.pop()), N = e.symbols_[N] || N), N;
101
+ }
102
+ a(re, "lex");
103
+ for (var E, B, x, Q, G = {}, z, I, oe, K; ; ) {
104
+ if (B = n[n.length - 1], this.defaultActions[B] ? x = this.defaultActions[B] : ((E === null || typeof E > "u") && (E = re()), x = m[B] && m[B][E]), typeof x > "u" || !x.length || !x[0]) {
105
+ var Y = "";
106
+ K = [];
107
+ for (z in m[B])
108
+ this.terminals_[z] && z > he && K.push("'" + this.terminals_[z] + "'");
109
+ f.showPosition ? Y = "Parse error on line " + (W + 1) + `:
110
+ ` + f.showPosition() + `
111
+ Expecting ` + K.join(", ") + ", got '" + (this.terminals_[E] || E) + "'" : Y = "Parse error on line " + (W + 1) + ": Unexpected " + (E == se ? "end of input" : "'" + (this.terminals_[E] || E) + "'"), this.parseError(Y, {
112
+ text: f.match,
113
+ token: this.terminals_[E] || E,
114
+ line: f.yylineno,
115
+ loc: X,
116
+ expected: K
117
+ });
118
+ }
119
+ if (x[0] instanceof Array && x.length > 1)
120
+ throw new Error("Parse Error: multiple actions possible at state: " + B + ", token: " + E);
121
+ switch (x[0]) {
122
+ case 1:
123
+ n.push(E), c.push(f.yytext), t.push(f.yylloc), n.push(x[1]), E = null, ne = f.yyleng, l = f.yytext, W = f.yylineno, X = f.yylloc;
124
+ break;
125
+ case 2:
126
+ if (I = this.productions_[x[1]][1], G.$ = c[c.length - I], G._$ = {
127
+ first_line: t[t.length - (I || 1)].first_line,
128
+ last_line: t[t.length - 1].last_line,
129
+ first_column: t[t.length - (I || 1)].first_column,
130
+ last_column: t[t.length - 1].last_column
131
+ }, ge && (G._$.range = [
132
+ t[t.length - (I || 1)].range[0],
133
+ t[t.length - 1].range[1]
134
+ ]), Q = this.performAction.apply(G, [
135
+ l,
136
+ ne,
137
+ W,
138
+ P.yy,
139
+ x[1],
140
+ c,
141
+ t
142
+ ].concat(ue)), typeof Q < "u")
143
+ return Q;
144
+ I && (n = n.slice(0, -1 * I * 2), c = c.slice(0, -1 * I), t = t.slice(0, -1 * I)), n.push(this.productions_[x[1]][0]), c.push(G.$), t.push(G._$), oe = m[n[n.length - 2]][n[n.length - 1]], n.push(oe);
145
+ break;
146
+ case 3:
147
+ return !0;
148
+ }
149
+ }
150
+ return !0;
151
+ }, "parse")
152
+ }, R = /* @__PURE__ */ function() {
153
+ var k = {
154
+ EOF: 1,
155
+ parseError: /* @__PURE__ */ a(function(e, n) {
156
+ if (this.yy.parser)
157
+ this.yy.parser.parseError(e, n);
158
+ else
159
+ throw new Error(e);
160
+ }, "parseError"),
161
+ // resets the lexer, sets new input
162
+ setInput: /* @__PURE__ */ a(function(e, n) {
163
+ return this.yy = n || this.yy || {}, this._input = e, this._more = this._backtrack = this.done = !1, this.yylineno = this.yyleng = 0, this.yytext = this.matched = this.match = "", this.conditionStack = ["INITIAL"], this.yylloc = {
164
+ first_line: 1,
165
+ first_column: 0,
166
+ last_line: 1,
167
+ last_column: 0
168
+ }, this.options.ranges && (this.yylloc.range = [0, 0]), this.offset = 0, this;
169
+ }, "setInput"),
170
+ // consumes and returns one char from the input
171
+ input: /* @__PURE__ */ a(function() {
172
+ var e = this._input[0];
173
+ this.yytext += e, this.yyleng++, this.offset++, this.match += e, this.matched += e;
174
+ var n = e.match(/(?:\r\n?|\n).*/g);
175
+ return n ? (this.yylineno++, this.yylloc.last_line++) : this.yylloc.last_column++, this.options.ranges && this.yylloc.range[1]++, this._input = this._input.slice(1), e;
176
+ }, "input"),
177
+ // unshifts one char (or a string) into the input
178
+ unput: /* @__PURE__ */ a(function(e) {
179
+ var n = e.length, r = e.split(/(?:\r\n?|\n)/g);
180
+ this._input = e + this._input, this.yytext = this.yytext.substr(0, this.yytext.length - n), this.offset -= n;
181
+ var c = this.match.split(/(?:\r\n?|\n)/g);
182
+ this.match = this.match.substr(0, this.match.length - 1), this.matched = this.matched.substr(0, this.matched.length - 1), r.length - 1 && (this.yylineno -= r.length - 1);
183
+ var t = this.yylloc.range;
184
+ return this.yylloc = {
185
+ first_line: this.yylloc.first_line,
186
+ last_line: this.yylineno + 1,
187
+ first_column: this.yylloc.first_column,
188
+ last_column: r ? (r.length === c.length ? this.yylloc.first_column : 0) + c[c.length - r.length].length - r[0].length : this.yylloc.first_column - n
189
+ }, this.options.ranges && (this.yylloc.range = [t[0], t[0] + this.yyleng - n]), this.yyleng = this.yytext.length, this;
190
+ }, "unput"),
191
+ // When called from action, caches matched text and appends it on next action
192
+ more: /* @__PURE__ */ a(function() {
193
+ return this._more = !0, this;
194
+ }, "more"),
195
+ // When called from action, signals the lexer that this rule fails to match the input, so the next matching rule (regex) should be tested instead.
196
+ reject: /* @__PURE__ */ a(function() {
197
+ if (this.options.backtrack_lexer)
198
+ this._backtrack = !0;
199
+ else
200
+ return this.parseError("Lexical error on line " + (this.yylineno + 1) + `. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true).
201
+ ` + this.showPosition(), {
202
+ text: "",
203
+ token: null,
204
+ line: this.yylineno
205
+ });
206
+ return this;
207
+ }, "reject"),
208
+ // retain first n characters of the match
209
+ less: /* @__PURE__ */ a(function(e) {
210
+ this.unput(this.match.slice(e));
211
+ }, "less"),
212
+ // displays already matched input, i.e. for error messages
213
+ pastInput: /* @__PURE__ */ a(function() {
214
+ var e = this.matched.substr(0, this.matched.length - this.match.length);
215
+ return (e.length > 20 ? "..." : "") + e.substr(-20).replace(/\n/g, "");
216
+ }, "pastInput"),
217
+ // displays upcoming input, i.e. for error messages
218
+ upcomingInput: /* @__PURE__ */ a(function() {
219
+ var e = this.match;
220
+ return e.length < 20 && (e += this._input.substr(0, 20 - e.length)), (e.substr(0, 20) + (e.length > 20 ? "..." : "")).replace(/\n/g, "");
221
+ }, "upcomingInput"),
222
+ // displays the character position where the lexing error occurred, i.e. for error messages
223
+ showPosition: /* @__PURE__ */ a(function() {
224
+ var e = this.pastInput(), n = new Array(e.length + 1).join("-");
225
+ return e + this.upcomingInput() + `
226
+ ` + n + "^";
227
+ }, "showPosition"),
228
+ // test the lexed token: return FALSE when not a match, otherwise return token
229
+ test_match: /* @__PURE__ */ a(function(e, n) {
230
+ var r, c, t;
231
+ if (this.options.backtrack_lexer && (t = {
232
+ yylineno: this.yylineno,
233
+ yylloc: {
234
+ first_line: this.yylloc.first_line,
235
+ last_line: this.last_line,
236
+ first_column: this.yylloc.first_column,
237
+ last_column: this.yylloc.last_column
238
+ },
239
+ yytext: this.yytext,
240
+ match: this.match,
241
+ matches: this.matches,
242
+ matched: this.matched,
243
+ yyleng: this.yyleng,
244
+ offset: this.offset,
245
+ _more: this._more,
246
+ _input: this._input,
247
+ yy: this.yy,
248
+ conditionStack: this.conditionStack.slice(0),
249
+ done: this.done
250
+ }, this.options.ranges && (t.yylloc.range = this.yylloc.range.slice(0))), c = e[0].match(/(?:\r\n?|\n).*/g), c && (this.yylineno += c.length), this.yylloc = {
251
+ first_line: this.yylloc.last_line,
252
+ last_line: this.yylineno + 1,
253
+ first_column: this.yylloc.last_column,
254
+ last_column: c ? c[c.length - 1].length - c[c.length - 1].match(/\r?\n?/)[0].length : this.yylloc.last_column + e[0].length
255
+ }, this.yytext += e[0], this.match += e[0], this.matches = e, this.yyleng = this.yytext.length, this.options.ranges && (this.yylloc.range = [this.offset, this.offset += this.yyleng]), this._more = !1, this._backtrack = !1, this._input = this._input.slice(e[0].length), this.matched += e[0], r = this.performAction.call(this, this.yy, this, n, this.conditionStack[this.conditionStack.length - 1]), this.done && this._input && (this.done = !1), r)
256
+ return r;
257
+ if (this._backtrack) {
258
+ for (var m in t)
259
+ this[m] = t[m];
260
+ return !1;
261
+ }
262
+ return !1;
263
+ }, "test_match"),
264
+ // return next match in input
265
+ next: /* @__PURE__ */ a(function() {
266
+ if (this.done)
267
+ return this.EOF;
268
+ this._input || (this.done = !0);
269
+ var e, n, r, c;
270
+ this._more || (this.yytext = "", this.match = "");
271
+ for (var t = this._currentRules(), m = 0; m < t.length; m++)
272
+ if (r = this._input.match(this.rules[t[m]]), r && (!n || r[0].length > n[0].length)) {
273
+ if (n = r, c = m, this.options.backtrack_lexer) {
274
+ if (e = this.test_match(r, t[m]), e !== !1)
275
+ return e;
276
+ if (this._backtrack) {
277
+ n = !1;
278
+ continue;
279
+ } else
280
+ return !1;
281
+ } else if (!this.options.flex)
282
+ break;
283
+ }
284
+ return n ? (e = this.test_match(n, t[c]), e !== !1 ? e : !1) : this._input === "" ? this.EOF : this.parseError("Lexical error on line " + (this.yylineno + 1) + `. Unrecognized text.
285
+ ` + this.showPosition(), {
286
+ text: "",
287
+ token: null,
288
+ line: this.yylineno
289
+ });
290
+ }, "next"),
291
+ // return next match that has a token
292
+ lex: /* @__PURE__ */ a(function() {
293
+ var e = this.next();
294
+ return e || this.lex();
295
+ }, "lex"),
296
+ // activates a new lexer condition state (pushes the new lexer condition state onto the condition stack)
297
+ begin: /* @__PURE__ */ a(function(e) {
298
+ this.conditionStack.push(e);
299
+ }, "begin"),
300
+ // pop the previously active lexer condition state off the condition stack
301
+ popState: /* @__PURE__ */ a(function() {
302
+ var e = this.conditionStack.length - 1;
303
+ return e > 0 ? this.conditionStack.pop() : this.conditionStack[0];
304
+ }, "popState"),
305
+ // produce the lexer rule set which is active for the currently active lexer condition state
306
+ _currentRules: /* @__PURE__ */ a(function() {
307
+ return this.conditionStack.length && this.conditionStack[this.conditionStack.length - 1] ? this.conditions[this.conditionStack[this.conditionStack.length - 1]].rules : this.conditions.INITIAL.rules;
308
+ }, "_currentRules"),
309
+ // return the currently active lexer condition state; when an index argument is provided it produces the N-th previous condition state, if available
310
+ topState: /* @__PURE__ */ a(function(e) {
311
+ return e = this.conditionStack.length - 1 - Math.abs(e || 0), e >= 0 ? this.conditionStack[e] : "INITIAL";
312
+ }, "topState"),
313
+ // alias for begin(condition)
314
+ pushState: /* @__PURE__ */ a(function(e) {
315
+ this.begin(e);
316
+ }, "pushState"),
317
+ // return the number of states currently on the stack
318
+ stateStackSize: /* @__PURE__ */ a(function() {
319
+ return this.conditionStack.length;
320
+ }, "stateStackSize"),
321
+ options: { "case-insensitive": !0 },
322
+ performAction: /* @__PURE__ */ a(function(e, n, r, c) {
323
+ switch (r) {
324
+ case 0:
325
+ return this.pushState("shapeData"), n.yytext = "", 24;
326
+ case 1:
327
+ return this.pushState("shapeDataStr"), 24;
328
+ case 2:
329
+ return this.popState(), 24;
330
+ case 3:
331
+ const t = /\n\s*/g;
332
+ return n.yytext = n.yytext.replace(t, "<br/>"), 24;
333
+ case 4:
334
+ return 24;
335
+ case 5:
336
+ this.popState();
337
+ break;
338
+ case 6:
339
+ return e.getLogger().trace("Found comment", n.yytext), 6;
340
+ case 7:
341
+ return 8;
342
+ case 8:
343
+ this.begin("CLASS");
344
+ break;
345
+ case 9:
346
+ return this.popState(), 17;
347
+ case 10:
348
+ this.popState();
349
+ break;
350
+ case 11:
351
+ e.getLogger().trace("Begin icon"), this.begin("ICON");
352
+ break;
353
+ case 12:
354
+ return e.getLogger().trace("SPACELINE"), 6;
355
+ case 13:
356
+ return 7;
357
+ case 14:
358
+ return 16;
359
+ case 15:
360
+ e.getLogger().trace("end icon"), this.popState();
361
+ break;
362
+ case 16:
363
+ return e.getLogger().trace("Exploding node"), this.begin("NODE"), 20;
364
+ case 17:
365
+ return e.getLogger().trace("Cloud"), this.begin("NODE"), 20;
366
+ case 18:
367
+ return e.getLogger().trace("Explosion Bang"), this.begin("NODE"), 20;
368
+ case 19:
369
+ return e.getLogger().trace("Cloud Bang"), this.begin("NODE"), 20;
370
+ case 20:
371
+ return this.begin("NODE"), 20;
372
+ case 21:
373
+ return this.begin("NODE"), 20;
374
+ case 22:
375
+ return this.begin("NODE"), 20;
376
+ case 23:
377
+ return this.begin("NODE"), 20;
378
+ case 24:
379
+ return 13;
380
+ case 25:
381
+ return 23;
382
+ case 26:
383
+ return 11;
384
+ case 27:
385
+ this.begin("NSTR2");
386
+ break;
387
+ case 28:
388
+ return "NODE_DESCR";
389
+ case 29:
390
+ this.popState();
391
+ break;
392
+ case 30:
393
+ e.getLogger().trace("Starting NSTR"), this.begin("NSTR");
394
+ break;
395
+ case 31:
396
+ return e.getLogger().trace("description:", n.yytext), "NODE_DESCR";
397
+ case 32:
398
+ this.popState();
399
+ break;
400
+ case 33:
401
+ return this.popState(), e.getLogger().trace("node end ))"), "NODE_DEND";
402
+ case 34:
403
+ return this.popState(), e.getLogger().trace("node end )"), "NODE_DEND";
404
+ case 35:
405
+ return this.popState(), e.getLogger().trace("node end ...", n.yytext), "NODE_DEND";
406
+ case 36:
407
+ return this.popState(), e.getLogger().trace("node end (("), "NODE_DEND";
408
+ case 37:
409
+ return this.popState(), e.getLogger().trace("node end (-"), "NODE_DEND";
410
+ case 38:
411
+ return this.popState(), e.getLogger().trace("node end (-"), "NODE_DEND";
412
+ case 39:
413
+ return this.popState(), e.getLogger().trace("node end (("), "NODE_DEND";
414
+ case 40:
415
+ return this.popState(), e.getLogger().trace("node end (("), "NODE_DEND";
416
+ case 41:
417
+ return e.getLogger().trace("Long description:", n.yytext), 21;
418
+ case 42:
419
+ return e.getLogger().trace("Long description:", n.yytext), 21;
420
+ }
421
+ }, "anonymous"),
422
+ rules: [/^(?:@\{)/i, /^(?:["])/i, /^(?:["])/i, /^(?:[^\"]+)/i, /^(?:[^}^"]+)/i, /^(?:\})/i, /^(?:\s*%%.*)/i, /^(?:kanban\b)/i, /^(?::::)/i, /^(?:.+)/i, /^(?:\n)/i, /^(?:::icon\()/i, /^(?:[\s]+[\n])/i, /^(?:[\n]+)/i, /^(?:[^\)]+)/i, /^(?:\))/i, /^(?:-\))/i, /^(?:\(-)/i, /^(?:\)\))/i, /^(?:\))/i, /^(?:\(\()/i, /^(?:\{\{)/i, /^(?:\()/i, /^(?:\[)/i, /^(?:[\s]+)/i, /^(?:[^\(\[\n\)\{\}@]+)/i, /^(?:$)/i, /^(?:["][`])/i, /^(?:[^`"]+)/i, /^(?:[`]["])/i, /^(?:["])/i, /^(?:[^"]+)/i, /^(?:["])/i, /^(?:[\)]\))/i, /^(?:[\)])/i, /^(?:[\]])/i, /^(?:\}\})/i, /^(?:\(-)/i, /^(?:-\))/i, /^(?:\(\()/i, /^(?:\()/i, /^(?:[^\)\]\(\}]+)/i, /^(?:.+(?!\(\())/i],
423
+ conditions: { shapeDataEndBracket: { rules: [], inclusive: !1 }, shapeDataStr: { rules: [2, 3], inclusive: !1 }, shapeData: { rules: [1, 4, 5], inclusive: !1 }, CLASS: { rules: [9, 10], inclusive: !1 }, ICON: { rules: [14, 15], inclusive: !1 }, NSTR2: { rules: [28, 29], inclusive: !1 }, NSTR: { rules: [31, 32], inclusive: !1 }, NODE: { rules: [27, 30, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42], inclusive: !1 }, INITIAL: { rules: [0, 6, 7, 8, 11, 12, 13, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26], inclusive: !0 } }
424
+ };
425
+ return k;
426
+ }();
427
+ y.lexer = R;
428
+ function v() {
429
+ this.yy = {};
430
+ }
431
+ return a(v, "Parser"), v.prototype = y, y.Parser = v, new v();
432
+ }();
433
+ J.parser = J;
434
+ var Ne = J, L = [], te = [], Z = 0, ie = {}, De = /* @__PURE__ */ a(() => {
435
+ L = [], te = [], Z = 0, ie = {};
436
+ }, "clear"), xe = /* @__PURE__ */ a((i) => {
437
+ if (L.length === 0)
438
+ return null;
439
+ const u = L[0].level;
440
+ let d = null;
441
+ for (let s = L.length - 1; s >= 0; s--)
442
+ if (L[s].level === u && !d && (d = L[s]), L[s].level < u)
443
+ throw new Error('Items without section detected, found section ("' + L[s].label + '")');
444
+ return i === (d == null ? void 0 : d.level) ? null : d;
445
+ }, "getSection"), ce = /* @__PURE__ */ a(function() {
446
+ return te;
447
+ }, "getSections"), Le = /* @__PURE__ */ a(function() {
448
+ const i = [], u = [], d = ce(), s = F();
449
+ for (const g of d) {
450
+ const D = {
451
+ id: g.id,
452
+ label: j(g.label ?? "", s),
453
+ isGroup: !0,
454
+ ticket: g.ticket,
455
+ shape: "kanbanSection",
456
+ level: g.level,
457
+ look: s.look
458
+ };
459
+ u.push(D);
460
+ const S = L.filter((h) => h.parentId === g.id);
461
+ for (const h of S) {
462
+ const O = {
463
+ id: h.id,
464
+ parentId: g.id,
465
+ label: j(h.label ?? "", s),
466
+ isGroup: !1,
467
+ ticket: h == null ? void 0 : h.ticket,
468
+ priority: h == null ? void 0 : h.priority,
469
+ assigned: h == null ? void 0 : h.assigned,
470
+ icon: h == null ? void 0 : h.icon,
471
+ shape: "kanbanItem",
472
+ level: h.level,
473
+ rx: 5,
474
+ ry: 5,
475
+ cssStyles: ["text-align: left"]
476
+ };
477
+ u.push(O);
478
+ }
479
+ }
480
+ return { nodes: u, edges: i, other: {}, config: F() };
481
+ }, "getData"), Oe = /* @__PURE__ */ a((i, u, d, s, g) => {
482
+ var D, S;
483
+ const h = F();
484
+ let O = ((D = h.mindmap) == null ? void 0 : D.padding) ?? V.mindmap.padding;
485
+ switch (s) {
486
+ case p.ROUNDED_RECT:
487
+ case p.RECT:
488
+ case p.HEXAGON:
489
+ O *= 2;
490
+ }
491
+ const b = {
492
+ id: j(u, h) || "kbn" + Z++,
493
+ level: i,
494
+ label: j(d, h),
495
+ width: ((S = h.mindmap) == null ? void 0 : S.maxNodeWidth) ?? V.mindmap.maxNodeWidth,
496
+ padding: O,
497
+ isGroup: !1
498
+ };
499
+ if (g !== void 0) {
500
+ let C;
501
+ g.includes(`
502
+ `) ? C = g + `
503
+ ` : C = `{
504
+ ` + g + `
505
+ }`;
506
+ const o = _e(C, { schema: Ee });
507
+ if (o.shape && (o.shape !== o.shape.toLowerCase() || o.shape.includes("_")))
508
+ throw new Error(`No such shape: ${o.shape}. Shape names should be lowercase.`);
509
+ o != null && o.shape && o.shape === "kanbanItem" && (b.shape = o == null ? void 0 : o.shape), o != null && o.label && (b.label = o == null ? void 0 : o.label), o != null && o.icon && (b.icon = o == null ? void 0 : o.icon.toString()), o != null && o.assigned && (b.assigned = o == null ? void 0 : o.assigned.toString()), o != null && o.ticket && (b.ticket = o == null ? void 0 : o.ticket.toString()), o != null && o.priority && (b.priority = o == null ? void 0 : o.priority);
510
+ }
511
+ const _ = xe(i);
512
+ _ ? b.parentId = _.id || "kbn" + Z++ : te.push(b), L.push(b);
513
+ }, "addNode"), p = {
514
+ DEFAULT: 0,
515
+ NO_BORDER: 0,
516
+ ROUNDED_RECT: 1,
517
+ RECT: 2,
518
+ CIRCLE: 3,
519
+ CLOUD: 4,
520
+ BANG: 5,
521
+ HEXAGON: 6
522
+ }, ve = /* @__PURE__ */ a((i, u) => {
523
+ switch (ee.debug("In get type", i, u), i) {
524
+ case "[":
525
+ return p.RECT;
526
+ case "(":
527
+ return u === ")" ? p.ROUNDED_RECT : p.CLOUD;
528
+ case "((":
529
+ return p.CIRCLE;
530
+ case ")":
531
+ return p.CLOUD;
532
+ case "))":
533
+ return p.BANG;
534
+ case "{{":
535
+ return p.HEXAGON;
536
+ default:
537
+ return p.DEFAULT;
538
+ }
539
+ }, "getType"), Ce = /* @__PURE__ */ a((i, u) => {
540
+ ie[i] = u;
541
+ }, "setElementForId"), we = /* @__PURE__ */ a((i) => {
542
+ if (!i)
543
+ return;
544
+ const u = F(), d = L[L.length - 1];
545
+ i.icon && (d.icon = j(i.icon, u)), i.class && (d.cssClasses = j(i.class, u));
546
+ }, "decorateNode"), Ae = /* @__PURE__ */ a((i) => {
547
+ switch (i) {
548
+ case p.DEFAULT:
549
+ return "no-border";
550
+ case p.RECT:
551
+ return "rect";
552
+ case p.ROUNDED_RECT:
553
+ return "rounded-rect";
554
+ case p.CIRCLE:
555
+ return "circle";
556
+ case p.CLOUD:
557
+ return "cloud";
558
+ case p.BANG:
559
+ return "bang";
560
+ case p.HEXAGON:
561
+ return "hexgon";
562
+ default:
563
+ return "no-border";
564
+ }
565
+ }, "type2Str"), Ie = /* @__PURE__ */ a(() => ee, "getLogger"), $e = /* @__PURE__ */ a((i) => ie[i], "getElementById"), Te = {
566
+ clear: De,
567
+ addNode: Oe,
568
+ getSections: ce,
569
+ getData: Le,
570
+ nodeType: p,
571
+ getType: ve,
572
+ setElementForId: Ce,
573
+ decorateNode: we,
574
+ type2Str: Ae,
575
+ getLogger: Ie,
576
+ getElementById: $e
577
+ }, Re = Te, Pe = /* @__PURE__ */ a(async (i, u, d, s) => {
578
+ var g, D, S, h, O;
579
+ ee.debug(`Rendering kanban diagram
580
+ ` + i);
581
+ const b = s.db.getData(), _ = F();
582
+ _.htmlLabels = !1;
583
+ const C = pe(u), o = C.append("g");
584
+ o.attr("class", "sections");
585
+ const M = C.append("g");
586
+ M.attr("class", "items");
587
+ const w = b.nodes.filter(
588
+ // TODO: TypeScript 5.5 will infer this predicate automatically
589
+ (y) => y.isGroup
590
+ );
591
+ let $ = 0;
592
+ const T = 10, H = [];
593
+ let A = 25;
594
+ for (const y of w) {
595
+ const R = ((g = _ == null ? void 0 : _.kanban) == null ? void 0 : g.sectionWidth) || 200;
596
+ $ = $ + 1, y.x = R * $ + ($ - 1) * T / 2, y.width = R, y.y = 0, y.height = R * 3, y.rx = 5, y.ry = 5, y.cssClasses = y.cssClasses + " section-" + $;
597
+ const v = await ye(o, y);
598
+ A = Math.max(A, (D = v == null ? void 0 : v.labelBBox) == null ? void 0 : D.height), H.push(v);
599
+ }
600
+ let U = 0;
601
+ for (const y of w) {
602
+ const R = H[U];
603
+ U = U + 1;
604
+ const v = ((S = _ == null ? void 0 : _.kanban) == null ? void 0 : S.sectionWidth) || 200, k = -v * 3 / 2 + A;
605
+ let e = k;
606
+ const n = b.nodes.filter((t) => t.parentId === y.id);
607
+ for (const t of n) {
608
+ if (t.isGroup)
609
+ throw new Error("Groups within groups are not allowed in Kanban diagrams");
610
+ t.x = y.x, t.width = v - 1.5 * T;
611
+ const m = (await fe(M, t, { config: _ })).node().getBBox();
612
+ t.y = e + m.height / 2, await me(t), e = t.y + m.height / 2 + T / 2;
613
+ }
614
+ const r = R.cluster.select("rect"), c = Math.max(e - k + 3 * T, 50) + (A - 25);
615
+ r.attr("height", c);
616
+ }
617
+ be(
618
+ void 0,
619
+ C,
620
+ ((h = _.mindmap) == null ? void 0 : h.padding) ?? V.kanban.padding,
621
+ ((O = _.mindmap) == null ? void 0 : O.useMaxWidth) ?? V.kanban.useMaxWidth
622
+ );
623
+ }, "draw"), Be = {
624
+ draw: Pe
625
+ }, Ue = /* @__PURE__ */ a((i) => {
626
+ let u = "";
627
+ for (let s = 0; s < i.THEME_COLOR_LIMIT; s++)
628
+ i["lineColor" + s] = i["lineColor" + s] || i["cScaleInv" + s], Se(i["lineColor" + s]) ? i["lineColor" + s] = ae(i["lineColor" + s], 20) : i["lineColor" + s] = le(i["lineColor" + s], 20);
629
+ const d = /* @__PURE__ */ a((s, g) => i.darkMode ? le(s, g) : ae(s, g), "adjuster");
630
+ for (let s = 0; s < i.THEME_COLOR_LIMIT; s++) {
631
+ const g = "" + (17 - 3 * s);
632
+ u += `
633
+ .section-${s - 1} rect, .section-${s - 1} path, .section-${s - 1} circle, .section-${s - 1} polygon, .section-${s - 1} path {
634
+ fill: ${d(i["cScale" + s], 10)};
635
+ stroke: ${d(i["cScale" + s], 10)};
636
+
637
+ }
638
+ .section-${s - 1} text {
639
+ fill: ${i["cScaleLabel" + s]};
640
+ }
641
+ .node-icon-${s - 1} {
642
+ font-size: 40px;
643
+ color: ${i["cScaleLabel" + s]};
644
+ }
645
+ .section-edge-${s - 1}{
646
+ stroke: ${i["cScale" + s]};
647
+ }
648
+ .edge-depth-${s - 1}{
649
+ stroke-width: ${g};
650
+ }
651
+ .section-${s - 1} line {
652
+ stroke: ${i["cScaleInv" + s]} ;
653
+ stroke-width: 3;
654
+ }
655
+
656
+ .disabled, .disabled circle, .disabled text {
657
+ fill: lightgray;
658
+ }
659
+ .disabled text {
660
+ fill: #efefef;
661
+ }
662
+
663
+ .node rect,
664
+ .node circle,
665
+ .node ellipse,
666
+ .node polygon,
667
+ .node path {
668
+ fill: ${i.background};
669
+ stroke: ${i.nodeBorder};
670
+ stroke-width: 1px;
671
+ }
672
+
673
+ .kanban-ticket-link {
674
+ fill: ${i.background};
675
+ stroke: ${i.nodeBorder};
676
+ text-decoration: underline;
677
+ }
678
+ `;
679
+ }
680
+ return u;
681
+ }, "genSections"), Ge = /* @__PURE__ */ a((i) => `
682
+ .edge {
683
+ stroke-width: 3;
684
+ }
685
+ ${Ue(i)}
686
+ .section-root rect, .section-root path, .section-root circle, .section-root polygon {
687
+ fill: ${i.git0};
688
+ }
689
+ .section-root text {
690
+ fill: ${i.gitBranchLabel0};
691
+ }
692
+ .icon-container {
693
+ height:100%;
694
+ display: flex;
695
+ justify-content: center;
696
+ align-items: center;
697
+ }
698
+ .edge {
699
+ fill: none;
700
+ }
701
+ .cluster-label, .label {
702
+ color: ${i.textColor};
703
+ fill: ${i.textColor};
704
+ }
705
+ .kanban-label {
706
+ dy: 1em;
707
+ alignment-baseline: middle;
708
+ text-anchor: middle;
709
+ dominant-baseline: middle;
710
+ text-align: center;
711
+ }
712
+ ${ke()}
713
+ `, "getStyles"), je = Ge, Fe = {
714
+ db: Re,
715
+ renderer: Be,
716
+ parser: Ne,
717
+ styles: je
718
+ };
719
+ export {
720
+ Fe as diagram
721
+ };