@life-exe/wiki-engine 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.
Files changed (89) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +180 -0
  3. package/dist/analytics/index.d.ts +10 -0
  4. package/dist/chunks/abnfDiagram-VCTEODGH-DyAP6Aua.js +87 -0
  5. package/dist/chunks/arc-OroUeRL_.js +83 -0
  6. package/dist/chunks/architectureDiagram-5GKGNRK7-FjmrDCl4.js +4784 -0
  7. package/dist/chunks/blockDiagram-I7D4REHJ-BF3oIDlI.js +1416 -0
  8. package/dist/chunks/c4Diagram-7LVT6UL2-Cmdq0LZr.js +1511 -0
  9. package/dist/chunks/channel-Bdy1QZHo.js +5 -0
  10. package/dist/chunks/chunk-2Q5K7J3B-BwxRSEKd.js +15 -0
  11. package/dist/chunks/chunk-5VM5RSS4-BtHwUU4T.js +19 -0
  12. package/dist/chunks/chunk-F27PBJKO-DF4TGftR.js +68 -0
  13. package/dist/chunks/chunk-IMKFNOWR-DkBQ-1aV.js +1421 -0
  14. package/dist/chunks/chunk-JWPE2WC7-BIokdAUW.js +9 -0
  15. package/dist/chunks/chunk-POPQ4Y6H-CcjOsf9X.js +20 -0
  16. package/dist/chunks/chunk-SHT3W25Y-lYp5BdEg.js +1695 -0
  17. package/dist/chunks/chunk-SVP7TREG-DN-ravNt.js +664 -0
  18. package/dist/chunks/chunk-TICWLB2K-CtTJ0xaY.js +1534 -0
  19. package/dist/chunks/chunk-XXDRQBXY-BovkWFC0.js +8 -0
  20. package/dist/chunks/classDiagram-ZZMXUADV-CMYS0pHw.js +16 -0
  21. package/dist/chunks/classDiagram-v2-VYDZK3BY-CMYS0pHw.js +16 -0
  22. package/dist/chunks/common-BJ4q25wy.js +12633 -0
  23. package/dist/chunks/cose-bilkent-JH36ORCC-CaMqpJY7.js +2608 -0
  24. package/dist/chunks/cynefin-OW5HDTMX-Bzjecpt-.js +23853 -0
  25. package/dist/chunks/cynefinDiagram-5FMLGOSQ-C0NuKLt0.js +299 -0
  26. package/dist/chunks/cytoscape.esm-DmPrb1GM.js +18787 -0
  27. package/dist/chunks/dagre-GXQ25YYZ-Ds09_NdN.js +461 -0
  28. package/dist/chunks/defaultLocale-BgPVtth8.js +171 -0
  29. package/dist/chunks/diagram-S7CK7UJ4-IvSazk1O.js +349 -0
  30. package/dist/chunks/diagram-UQ7AKVKN-58epdx5V.js +223 -0
  31. package/dist/chunks/diagram-VSXAHHWV-BrzRGMeV.js +466 -0
  32. package/dist/chunks/diagram-VX7I27RA-DPL0Nw6d.js +530 -0
  33. package/dist/chunks/diagram-Z3DM3KII-8VWVu0I5.js +143 -0
  34. package/dist/chunks/ebnfDiagram-PWID7BFC-DeByR_ze.js +109 -0
  35. package/dist/chunks/erDiagram-RLTQ6QDP-C9uo9iE1.js +1060 -0
  36. package/dist/chunks/flowDiagram-HODETNUW-BpoY3OMp.js +7 -0
  37. package/dist/chunks/ganttDiagram-EL5Y4UJY-psdwnC-T.js +2711 -0
  38. package/dist/chunks/gitGraphDiagram-WWUBYQGX-vsDfkn_Q.js +828 -0
  39. package/dist/chunks/index-f7Uzykhj.js +38262 -0
  40. package/dist/chunks/infoDiagram-27XIBGKW-8K-eQZiU.js +24 -0
  41. package/dist/chunks/init-DjUOC4st.js +16 -0
  42. package/dist/chunks/ishikawaDiagram-5VMMS53U-CuqR1k5i.js +622 -0
  43. package/dist/chunks/journeyDiagram-3NMN7TZE-BPW1nmwZ.js +834 -0
  44. package/dist/chunks/kanban-definition-UXKFOSKX-iY6-d6jO.js +726 -0
  45. package/dist/chunks/katex-jHfnQmlp.js +11682 -0
  46. package/dist/chunks/layout-CgV9vOdp.js +1704 -0
  47. package/dist/chunks/linear-BzcaSMTS.js +259 -0
  48. package/dist/chunks/mindmap-definition-YA3MSWOX-CaLfHyv0.js +831 -0
  49. package/dist/chunks/ordinal-DfAQgscy.js +61 -0
  50. package/dist/chunks/pegDiagram-XKGWAZYB-6Y28VvVh.js +95 -0
  51. package/dist/chunks/pieDiagram-E7YTZNPT-OrjeRxhs.js +209 -0
  52. package/dist/chunks/quadrantDiagram-AXDQQJYC-rgw2lV2J.js +1025 -0
  53. package/dist/chunks/railroadDiagram-O6MQD6OU-D6QNO5r1.js +77 -0
  54. package/dist/chunks/requirementDiagram-BXWQKSXE-a8tNRSuE.js +884 -0
  55. package/dist/chunks/sankeyDiagram-P5KCCOFB-CdaC8rLw.js +847 -0
  56. package/dist/chunks/sequenceDiagram-WJ2MYXX4-CGLi38Hj.js +2898 -0
  57. package/dist/chunks/sizeCapture-INFHLROL-g5RJXnik.js +47 -0
  58. package/dist/chunks/stateDiagram-D77RDMKH-Cou0eVl1.js +262 -0
  59. package/dist/chunks/stateDiagram-v2-MP3YSRHH-BHQspnUg.js +16 -0
  60. package/dist/chunks/swimlanes-42K2YHIH-BU7S1WgJ.js +5239 -0
  61. package/dist/chunks/swimlanesDiagram-VR7AAH4N-BsEplbno.js +13 -0
  62. package/dist/chunks/timeline-definition-24CTP7MA-BB-IyxWL.js +1066 -0
  63. package/dist/chunks/vennDiagram-4TSXK5OY-BToYolPI.js +1585 -0
  64. package/dist/chunks/wardleyDiagram-VM6X3IG4-BgoueOw_.js +684 -0
  65. package/dist/chunks/xychartDiagram-S5SC5T6Z-CF0fWv-W.js +1492 -0
  66. package/dist/components/CodeBlock.d.ts +5 -0
  67. package/dist/components/CommunityLinks.d.ts +21 -0
  68. package/dist/components/CookieConsent.d.ts +2 -0
  69. package/dist/components/DocLinkCard.d.ts +6 -0
  70. package/dist/components/LecturePageView.d.ts +3 -0
  71. package/dist/components/MermaidDiagram.d.ts +3 -0
  72. package/dist/components/SearchPopup.d.ts +6 -0
  73. package/dist/components/WikiApp.d.ts +9 -0
  74. package/dist/components/WikiLayout.d.ts +2 -0
  75. package/dist/components/WikiPageView.d.ts +6 -0
  76. package/dist/components/ZoomableImage.d.ts +2 -0
  77. package/dist/context/LangContext.d.ts +2 -0
  78. package/dist/context/WikiContext.d.ts +18 -0
  79. package/dist/data.d.ts +8 -0
  80. package/dist/hooks/useLanguage.d.ts +4 -0
  81. package/dist/hooks/useTheme.d.ts +5 -0
  82. package/dist/hooks/useWiki.d.ts +2 -0
  83. package/dist/index.d.ts +24 -0
  84. package/dist/index.js +45 -0
  85. package/dist/languages/ue-cpp.d.ts +7 -0
  86. package/dist/languages/ue-cpp.js +21 -0
  87. package/dist/types.d.ts +119 -0
  88. package/dist/wiki-engine.css +1 -0
  89. package/package.json +76 -0
@@ -0,0 +1,726 @@
1
+ import { _ as c, l as te, c as W, K as fe, ai as ye, aj as be, ak as me, a1 as ke, H as Y, i as G, v as _e, J as Ee, Y as Se, $ as le, a0 as ce } from "./index-f7Uzykhj.js";
2
+ import { g as Ne } from "./chunk-5VM5RSS4-BtHwUU4T.js";
3
+ var $ = (function() {
4
+ var t = /* @__PURE__ */ c(function(k, s, n, a) {
5
+ for (n = n || {}, a = k.length; a--; n[k[a]] = s) ;
6
+ return n;
7
+ }, "o"), g = [1, 4], d = [1, 13], r = [1, 12], p = [1, 15], _ = [1, 16], f = [1, 20], h = [1, 19], L = [6, 7, 8], C = [1, 26], w = [1, 24], N = [1, 25], i = [6, 7, 11], j = [1, 31], x = [6, 7, 11, 24], P = [1, 6, 13, 16, 17, 20, 23], H = [1, 35], M = [1, 36], A = [1, 6, 7, 11, 13, 16, 17, 20, 23], U = [1, 38], V = {
8
+ trace: /* @__PURE__ */ c(function() {
9
+ }, "trace"),
10
+ yy: {},
11
+ 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 },
12
+ 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" },
13
+ 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]],
14
+ performAction: /* @__PURE__ */ c(function(s, n, a, o, u, e, B) {
15
+ var l = e.length - 1;
16
+ switch (u) {
17
+ case 6:
18
+ case 7:
19
+ return o;
20
+ case 8:
21
+ o.getLogger().trace("Stop NL ");
22
+ break;
23
+ case 9:
24
+ o.getLogger().trace("Stop EOF ");
25
+ break;
26
+ case 11:
27
+ o.getLogger().trace("Stop NL2 ");
28
+ break;
29
+ case 12:
30
+ o.getLogger().trace("Stop EOF2 ");
31
+ break;
32
+ case 15:
33
+ o.getLogger().info("Node: ", e[l - 1].id), o.addNode(e[l - 2].length, e[l - 1].id, e[l - 1].descr, e[l - 1].type, e[l]);
34
+ break;
35
+ case 16:
36
+ o.getLogger().info("Node: ", e[l].id), o.addNode(e[l - 1].length, e[l].id, e[l].descr, e[l].type);
37
+ break;
38
+ case 17:
39
+ o.getLogger().trace("Icon: ", e[l]), o.decorateNode({ icon: e[l] });
40
+ break;
41
+ case 18:
42
+ case 23:
43
+ o.decorateNode({ class: e[l] });
44
+ break;
45
+ case 19:
46
+ o.getLogger().trace("SPACELIST");
47
+ break;
48
+ case 20:
49
+ o.getLogger().trace("Node: ", e[l - 1].id), o.addNode(0, e[l - 1].id, e[l - 1].descr, e[l - 1].type, e[l]);
50
+ break;
51
+ case 21:
52
+ o.getLogger().trace("Node: ", e[l].id), o.addNode(0, e[l].id, e[l].descr, e[l].type);
53
+ break;
54
+ case 22:
55
+ o.decorateNode({ icon: e[l] });
56
+ break;
57
+ case 27:
58
+ o.getLogger().trace("node found ..", e[l - 2]), this.$ = { id: e[l - 1], descr: e[l - 1], type: o.getType(e[l - 2], e[l]) };
59
+ break;
60
+ case 28:
61
+ this.$ = { id: e[l], descr: e[l], type: 0 };
62
+ break;
63
+ case 29:
64
+ o.getLogger().trace("node found ..", e[l - 3]), this.$ = { id: e[l - 3], descr: e[l - 1], type: o.getType(e[l - 2], e[l]) };
65
+ break;
66
+ case 30:
67
+ this.$ = e[l - 1] + e[l];
68
+ break;
69
+ case 31:
70
+ this.$ = e[l];
71
+ break;
72
+ }
73
+ }, "anonymous"),
74
+ table: [{ 3: 1, 4: 2, 5: 3, 6: [1, 5], 8: g }, { 1: [3] }, { 1: [2, 1] }, { 4: 6, 6: [1, 7], 7: [1, 8], 8: g }, { 6: d, 7: [1, 10], 9: 9, 12: 11, 13: r, 14: 14, 16: p, 17: _, 18: 17, 19: 18, 20: f, 23: h }, t(L, [2, 3]), { 1: [2, 2] }, t(L, [2, 4]), t(L, [2, 5]), { 1: [2, 6], 6: d, 12: 21, 13: r, 14: 14, 16: p, 17: _, 18: 17, 19: 18, 20: f, 23: h }, { 6: d, 9: 22, 12: 11, 13: r, 14: 14, 16: p, 17: _, 18: 17, 19: 18, 20: f, 23: h }, { 6: C, 7: w, 10: 23, 11: N }, t(i, [2, 24], { 18: 17, 19: 18, 14: 27, 16: [1, 28], 17: [1, 29], 20: f, 23: h }), t(i, [2, 19]), t(i, [2, 21], { 15: 30, 24: j }), t(i, [2, 22]), t(i, [2, 23]), t(x, [2, 25]), t(x, [2, 26]), t(x, [2, 28], { 20: [1, 32] }), { 21: [1, 33] }, { 6: C, 7: w, 10: 34, 11: N }, { 1: [2, 7], 6: d, 12: 21, 13: r, 14: 14, 16: p, 17: _, 18: 17, 19: 18, 20: f, 23: h }, t(P, [2, 14], { 7: H, 11: M }), t(A, [2, 8]), t(A, [2, 9]), t(A, [2, 10]), t(i, [2, 16], { 15: 37, 24: j }), t(i, [2, 17]), t(i, [2, 18]), t(i, [2, 20], { 24: U }), t(x, [2, 31]), { 21: [1, 39] }, { 22: [1, 40] }, t(P, [2, 13], { 7: H, 11: M }), t(A, [2, 11]), t(A, [2, 12]), t(i, [2, 15], { 24: U }), t(x, [2, 30]), { 22: [1, 41] }, t(x, [2, 27]), t(x, [2, 29])],
75
+ defaultActions: { 2: [2, 1], 6: [2, 2] },
76
+ parseError: /* @__PURE__ */ c(function(s, n) {
77
+ if (n.recoverable)
78
+ this.trace(s);
79
+ else {
80
+ var a = new Error(s);
81
+ throw a.hash = n, a;
82
+ }
83
+ }, "parseError"),
84
+ parse: /* @__PURE__ */ c(function(s) {
85
+ var n = this, a = [0], o = [], u = [null], e = [], B = this.table, l = "", z = 0, ie = 0, ue = 2, re = 1, ge = e.slice.call(arguments, 1), m = Object.create(this.lexer), T = { yy: {} };
86
+ for (var J in this.yy)
87
+ Object.prototype.hasOwnProperty.call(this.yy, J) && (T.yy[J] = this.yy[J]);
88
+ m.setInput(s, T.yy), T.yy.lexer = m, T.yy.parser = this, typeof m.yylloc > "u" && (m.yylloc = {});
89
+ var q = m.yylloc;
90
+ e.push(q);
91
+ var de = m.options && m.options.ranges;
92
+ typeof T.yy.parseError == "function" ? this.parseError = T.yy.parseError : this.parseError = Object.getPrototypeOf(this).parseError;
93
+ function pe(S) {
94
+ a.length = a.length - 2 * S, u.length = u.length - S, e.length = e.length - S;
95
+ }
96
+ c(pe, "popStack");
97
+ function ae() {
98
+ var S;
99
+ return S = o.pop() || m.lex() || re, typeof S != "number" && (S instanceof Array && (o = S, S = o.pop()), S = n.symbols_[S] || S), S;
100
+ }
101
+ c(ae, "lex");
102
+ for (var E, R, v, Q, F = {}, K, I, oe, X; ; ) {
103
+ if (R = a[a.length - 1], this.defaultActions[R] ? v = this.defaultActions[R] : ((E === null || typeof E > "u") && (E = ae()), v = B[R] && B[R][E]), typeof v > "u" || !v.length || !v[0]) {
104
+ var Z = "";
105
+ X = [];
106
+ for (K in B[R])
107
+ this.terminals_[K] && K > ue && X.push("'" + this.terminals_[K] + "'");
108
+ m.showPosition ? Z = "Parse error on line " + (z + 1) + `:
109
+ ` + m.showPosition() + `
110
+ Expecting ` + X.join(", ") + ", got '" + (this.terminals_[E] || E) + "'" : Z = "Parse error on line " + (z + 1) + ": Unexpected " + (E == re ? "end of input" : "'" + (this.terminals_[E] || E) + "'"), this.parseError(Z, {
111
+ text: m.match,
112
+ token: this.terminals_[E] || E,
113
+ line: m.yylineno,
114
+ loc: q,
115
+ expected: X
116
+ });
117
+ }
118
+ if (v[0] instanceof Array && v.length > 1)
119
+ throw new Error("Parse Error: multiple actions possible at state: " + R + ", token: " + E);
120
+ switch (v[0]) {
121
+ case 1:
122
+ a.push(E), u.push(m.yytext), e.push(m.yylloc), a.push(v[1]), E = null, ie = m.yyleng, l = m.yytext, z = m.yylineno, q = m.yylloc;
123
+ break;
124
+ case 2:
125
+ if (I = this.productions_[v[1]][1], F.$ = u[u.length - I], F._$ = {
126
+ first_line: e[e.length - (I || 1)].first_line,
127
+ last_line: e[e.length - 1].last_line,
128
+ first_column: e[e.length - (I || 1)].first_column,
129
+ last_column: e[e.length - 1].last_column
130
+ }, de && (F._$.range = [
131
+ e[e.length - (I || 1)].range[0],
132
+ e[e.length - 1].range[1]
133
+ ]), Q = this.performAction.apply(F, [
134
+ l,
135
+ ie,
136
+ z,
137
+ T.yy,
138
+ v[1],
139
+ u,
140
+ e
141
+ ].concat(ge)), typeof Q < "u")
142
+ return Q;
143
+ I && (a = a.slice(0, -1 * I * 2), u = u.slice(0, -1 * I), e = e.slice(0, -1 * I)), a.push(this.productions_[v[1]][0]), u.push(F.$), e.push(F._$), oe = B[a[a.length - 2]][a[a.length - 1]], a.push(oe);
144
+ break;
145
+ case 3:
146
+ return !0;
147
+ }
148
+ }
149
+ return !0;
150
+ }, "parse")
151
+ }, y = /* @__PURE__ */ (function() {
152
+ var k = {
153
+ EOF: 1,
154
+ parseError: /* @__PURE__ */ c(function(n, a) {
155
+ if (this.yy.parser)
156
+ this.yy.parser.parseError(n, a);
157
+ else
158
+ throw new Error(n);
159
+ }, "parseError"),
160
+ // resets the lexer, sets new input
161
+ setInput: /* @__PURE__ */ c(function(s, n) {
162
+ return this.yy = n || this.yy || {}, this._input = s, this._more = this._backtrack = this.done = !1, this.yylineno = this.yyleng = 0, this.yytext = this.matched = this.match = "", this.conditionStack = ["INITIAL"], this.yylloc = {
163
+ first_line: 1,
164
+ first_column: 0,
165
+ last_line: 1,
166
+ last_column: 0
167
+ }, this.options.ranges && (this.yylloc.range = [0, 0]), this.offset = 0, this;
168
+ }, "setInput"),
169
+ // consumes and returns one char from the input
170
+ input: /* @__PURE__ */ c(function() {
171
+ var s = this._input[0];
172
+ this.yytext += s, this.yyleng++, this.offset++, this.match += s, this.matched += s;
173
+ var n = s.match(/(?:\r\n?|\n).*/g);
174
+ 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), s;
175
+ }, "input"),
176
+ // unshifts one char (or a string) into the input
177
+ unput: /* @__PURE__ */ c(function(s) {
178
+ var n = s.length, a = s.split(/(?:\r\n?|\n)/g);
179
+ this._input = s + this._input, this.yytext = this.yytext.substr(0, this.yytext.length - n), this.offset -= n;
180
+ var o = this.match.split(/(?:\r\n?|\n)/g);
181
+ this.match = this.match.substr(0, this.match.length - 1), this.matched = this.matched.substr(0, this.matched.length - 1), a.length - 1 && (this.yylineno -= a.length - 1);
182
+ var u = this.yylloc.range;
183
+ return this.yylloc = {
184
+ first_line: this.yylloc.first_line,
185
+ last_line: this.yylineno + 1,
186
+ first_column: this.yylloc.first_column,
187
+ last_column: a ? (a.length === o.length ? this.yylloc.first_column : 0) + o[o.length - a.length].length - a[0].length : this.yylloc.first_column - n
188
+ }, this.options.ranges && (this.yylloc.range = [u[0], u[0] + this.yyleng - n]), this.yyleng = this.yytext.length, this;
189
+ }, "unput"),
190
+ // When called from action, caches matched text and appends it on next action
191
+ more: /* @__PURE__ */ c(function() {
192
+ return this._more = !0, this;
193
+ }, "more"),
194
+ // 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.
195
+ reject: /* @__PURE__ */ c(function() {
196
+ if (this.options.backtrack_lexer)
197
+ this._backtrack = !0;
198
+ else
199
+ 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).
200
+ ` + this.showPosition(), {
201
+ text: "",
202
+ token: null,
203
+ line: this.yylineno
204
+ });
205
+ return this;
206
+ }, "reject"),
207
+ // retain first n characters of the match
208
+ less: /* @__PURE__ */ c(function(s) {
209
+ this.unput(this.match.slice(s));
210
+ }, "less"),
211
+ // displays already matched input, i.e. for error messages
212
+ pastInput: /* @__PURE__ */ c(function() {
213
+ var s = this.matched.substr(0, this.matched.length - this.match.length);
214
+ return (s.length > 20 ? "..." : "") + s.substr(-20).replace(/\n/g, "");
215
+ }, "pastInput"),
216
+ // displays upcoming input, i.e. for error messages
217
+ upcomingInput: /* @__PURE__ */ c(function() {
218
+ var s = this.match;
219
+ return s.length < 20 && (s += this._input.substr(0, 20 - s.length)), (s.substr(0, 20) + (s.length > 20 ? "..." : "")).replace(/\n/g, "");
220
+ }, "upcomingInput"),
221
+ // displays the character position where the lexing error occurred, i.e. for error messages
222
+ showPosition: /* @__PURE__ */ c(function() {
223
+ var s = this.pastInput(), n = new Array(s.length + 1).join("-");
224
+ return s + this.upcomingInput() + `
225
+ ` + n + "^";
226
+ }, "showPosition"),
227
+ // test the lexed token: return FALSE when not a match, otherwise return token
228
+ test_match: /* @__PURE__ */ c(function(s, n) {
229
+ var a, o, u;
230
+ if (this.options.backtrack_lexer && (u = {
231
+ yylineno: this.yylineno,
232
+ yylloc: {
233
+ first_line: this.yylloc.first_line,
234
+ last_line: this.last_line,
235
+ first_column: this.yylloc.first_column,
236
+ last_column: this.yylloc.last_column
237
+ },
238
+ yytext: this.yytext,
239
+ match: this.match,
240
+ matches: this.matches,
241
+ matched: this.matched,
242
+ yyleng: this.yyleng,
243
+ offset: this.offset,
244
+ _more: this._more,
245
+ _input: this._input,
246
+ yy: this.yy,
247
+ conditionStack: this.conditionStack.slice(0),
248
+ done: this.done
249
+ }, this.options.ranges && (u.yylloc.range = this.yylloc.range.slice(0))), o = s[0].match(/(?:\r\n?|\n).*/g), o && (this.yylineno += o.length), this.yylloc = {
250
+ first_line: this.yylloc.last_line,
251
+ last_line: this.yylineno + 1,
252
+ first_column: this.yylloc.last_column,
253
+ last_column: o ? o[o.length - 1].length - o[o.length - 1].match(/\r?\n?/)[0].length : this.yylloc.last_column + s[0].length
254
+ }, this.yytext += s[0], this.match += s[0], this.matches = s, 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(s[0].length), this.matched += s[0], a = this.performAction.call(this, this.yy, this, n, this.conditionStack[this.conditionStack.length - 1]), this.done && this._input && (this.done = !1), a)
255
+ return a;
256
+ if (this._backtrack) {
257
+ for (var e in u)
258
+ this[e] = u[e];
259
+ return !1;
260
+ }
261
+ return !1;
262
+ }, "test_match"),
263
+ // return next match in input
264
+ next: /* @__PURE__ */ c(function() {
265
+ if (this.done)
266
+ return this.EOF;
267
+ this._input || (this.done = !0);
268
+ var s, n, a, o;
269
+ this._more || (this.yytext = "", this.match = "");
270
+ for (var u = this._currentRules(), e = 0; e < u.length; e++)
271
+ if (a = this._input.match(this.rules[u[e]]), a && (!n || a[0].length > n[0].length)) {
272
+ if (n = a, o = e, this.options.backtrack_lexer) {
273
+ if (s = this.test_match(a, u[e]), s !== !1)
274
+ return s;
275
+ if (this._backtrack) {
276
+ n = !1;
277
+ continue;
278
+ } else
279
+ return !1;
280
+ } else if (!this.options.flex)
281
+ break;
282
+ }
283
+ return n ? (s = this.test_match(n, u[o]), s !== !1 ? s : !1) : this._input === "" ? this.EOF : this.parseError("Lexical error on line " + (this.yylineno + 1) + `. Unrecognized text.
284
+ ` + this.showPosition(), {
285
+ text: "",
286
+ token: null,
287
+ line: this.yylineno
288
+ });
289
+ }, "next"),
290
+ // return next match that has a token
291
+ lex: /* @__PURE__ */ c(function() {
292
+ var n = this.next();
293
+ return n || this.lex();
294
+ }, "lex"),
295
+ // activates a new lexer condition state (pushes the new lexer condition state onto the condition stack)
296
+ begin: /* @__PURE__ */ c(function(n) {
297
+ this.conditionStack.push(n);
298
+ }, "begin"),
299
+ // pop the previously active lexer condition state off the condition stack
300
+ popState: /* @__PURE__ */ c(function() {
301
+ var n = this.conditionStack.length - 1;
302
+ return n > 0 ? this.conditionStack.pop() : this.conditionStack[0];
303
+ }, "popState"),
304
+ // produce the lexer rule set which is active for the currently active lexer condition state
305
+ _currentRules: /* @__PURE__ */ c(function() {
306
+ return this.conditionStack.length && this.conditionStack[this.conditionStack.length - 1] ? this.conditions[this.conditionStack[this.conditionStack.length - 1]].rules : this.conditions.INITIAL.rules;
307
+ }, "_currentRules"),
308
+ // return the currently active lexer condition state; when an index argument is provided it produces the N-th previous condition state, if available
309
+ topState: /* @__PURE__ */ c(function(n) {
310
+ return n = this.conditionStack.length - 1 - Math.abs(n || 0), n >= 0 ? this.conditionStack[n] : "INITIAL";
311
+ }, "topState"),
312
+ // alias for begin(condition)
313
+ pushState: /* @__PURE__ */ c(function(n) {
314
+ this.begin(n);
315
+ }, "pushState"),
316
+ // return the number of states currently on the stack
317
+ stateStackSize: /* @__PURE__ */ c(function() {
318
+ return this.conditionStack.length;
319
+ }, "stateStackSize"),
320
+ options: { "case-insensitive": !0 },
321
+ performAction: /* @__PURE__ */ c(function(n, a, o, u) {
322
+ switch (o) {
323
+ case 0:
324
+ return this.pushState("shapeData"), a.yytext = "", 24;
325
+ case 1:
326
+ return this.pushState("shapeDataStr"), 24;
327
+ case 2:
328
+ return this.popState(), 24;
329
+ case 3:
330
+ const e = /\n\s*/g;
331
+ return a.yytext = a.yytext.replace(e, "<br/>"), 24;
332
+ case 4:
333
+ return 24;
334
+ case 5:
335
+ this.popState();
336
+ break;
337
+ case 6:
338
+ return n.getLogger().trace("Found comment", a.yytext), 6;
339
+ case 7:
340
+ return 8;
341
+ case 8:
342
+ this.begin("CLASS");
343
+ break;
344
+ case 9:
345
+ return this.popState(), 17;
346
+ case 10:
347
+ this.popState();
348
+ break;
349
+ case 11:
350
+ n.getLogger().trace("Begin icon"), this.begin("ICON");
351
+ break;
352
+ case 12:
353
+ return n.getLogger().trace("SPACELINE"), 6;
354
+ case 13:
355
+ return 7;
356
+ case 14:
357
+ return 16;
358
+ case 15:
359
+ n.getLogger().trace("end icon"), this.popState();
360
+ break;
361
+ case 16:
362
+ return n.getLogger().trace("Exploding node"), this.begin("NODE"), 20;
363
+ case 17:
364
+ return n.getLogger().trace("Cloud"), this.begin("NODE"), 20;
365
+ case 18:
366
+ return n.getLogger().trace("Explosion Bang"), this.begin("NODE"), 20;
367
+ case 19:
368
+ return n.getLogger().trace("Cloud Bang"), this.begin("NODE"), 20;
369
+ case 20:
370
+ return this.begin("NODE"), 20;
371
+ case 21:
372
+ return this.begin("NODE"), 20;
373
+ case 22:
374
+ return this.begin("NODE"), 20;
375
+ case 23:
376
+ return this.begin("NODE"), 20;
377
+ case 24:
378
+ return 13;
379
+ case 25:
380
+ return 23;
381
+ case 26:
382
+ return 11;
383
+ case 27:
384
+ this.begin("NSTR2");
385
+ break;
386
+ case 28:
387
+ return "NODE_DESCR";
388
+ case 29:
389
+ this.popState();
390
+ break;
391
+ case 30:
392
+ n.getLogger().trace("Starting NSTR"), this.begin("NSTR");
393
+ break;
394
+ case 31:
395
+ return n.getLogger().trace("description:", a.yytext), "NODE_DESCR";
396
+ case 32:
397
+ this.popState();
398
+ break;
399
+ case 33:
400
+ return this.popState(), n.getLogger().trace("node end ))"), "NODE_DEND";
401
+ case 34:
402
+ return this.popState(), n.getLogger().trace("node end )"), "NODE_DEND";
403
+ case 35:
404
+ return this.popState(), n.getLogger().trace("node end ...", a.yytext), "NODE_DEND";
405
+ case 36:
406
+ return this.popState(), n.getLogger().trace("node end (("), "NODE_DEND";
407
+ case 37:
408
+ return this.popState(), n.getLogger().trace("node end (-"), "NODE_DEND";
409
+ case 38:
410
+ return this.popState(), n.getLogger().trace("node end (-"), "NODE_DEND";
411
+ case 39:
412
+ return this.popState(), n.getLogger().trace("node end (("), "NODE_DEND";
413
+ case 40:
414
+ return this.popState(), n.getLogger().trace("node end (("), "NODE_DEND";
415
+ case 41:
416
+ return n.getLogger().trace("Long description:", a.yytext), 21;
417
+ case 42:
418
+ return n.getLogger().trace("Long description:", a.yytext), 21;
419
+ }
420
+ }, "anonymous"),
421
+ 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],
422
+ 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 } }
423
+ };
424
+ return k;
425
+ })();
426
+ V.lexer = y;
427
+ function O() {
428
+ this.yy = {};
429
+ }
430
+ return c(O, "Parser"), O.prototype = V, V.Parser = O, new O();
431
+ })();
432
+ $.parser = $;
433
+ var xe = $, D = [], ne = [], ee = 0, se = {}, ve = /* @__PURE__ */ c(() => {
434
+ D = [], ne = [], ee = 0, se = {};
435
+ }, "clear"), De = /* @__PURE__ */ c((t) => {
436
+ if (D.length === 0)
437
+ return null;
438
+ const g = D[0].level;
439
+ let d = null;
440
+ for (let r = D.length - 1; r >= 0; r--)
441
+ if (D[r].level === g && !d && (d = D[r]), D[r].level < g)
442
+ throw new Error('Items without section detected, found section ("' + D[r].label + '")');
443
+ return t === (d == null ? void 0 : d.level) ? null : d;
444
+ }, "getSection"), he = /* @__PURE__ */ c(function() {
445
+ return ne;
446
+ }, "getSections"), Le = /* @__PURE__ */ c(function() {
447
+ const t = [], g = [], d = he(), r = W();
448
+ for (const p of d) {
449
+ const _ = {
450
+ id: p.id,
451
+ label: G(p.label ?? "", r),
452
+ labelType: "markdown",
453
+ isGroup: !0,
454
+ ticket: p.ticket,
455
+ shape: "kanbanSection",
456
+ level: p.level,
457
+ look: r.look
458
+ };
459
+ g.push(_);
460
+ const f = D.filter((h) => h.parentId === p.id);
461
+ for (const h of f) {
462
+ const L = {
463
+ id: h.id,
464
+ parentId: p.id,
465
+ label: G(h.label ?? "", r),
466
+ labelType: "markdown",
467
+ isGroup: !1,
468
+ ticket: h == null ? void 0 : h.ticket,
469
+ priority: h == null ? void 0 : h.priority,
470
+ assigned: h == null ? void 0 : h.assigned,
471
+ icon: h == null ? void 0 : h.icon,
472
+ shape: "kanbanItem",
473
+ level: h.level,
474
+ rx: 5,
475
+ ry: 5,
476
+ cssStyles: ["text-align: left"]
477
+ };
478
+ g.push(L);
479
+ }
480
+ }
481
+ return { nodes: g, edges: t, other: {}, config: W() };
482
+ }, "getData"), Oe = /* @__PURE__ */ c((t, g, d, r, p) => {
483
+ var C, w;
484
+ const _ = W();
485
+ let f = ((C = _.mindmap) == null ? void 0 : C.padding) ?? Y.mindmap.padding;
486
+ switch (r) {
487
+ case b.ROUNDED_RECT:
488
+ case b.RECT:
489
+ case b.HEXAGON:
490
+ f *= 2;
491
+ }
492
+ const h = {
493
+ id: G(g, _) || "kbn" + ee++,
494
+ level: t,
495
+ label: G(d, _),
496
+ width: ((w = _.mindmap) == null ? void 0 : w.maxNodeWidth) ?? Y.mindmap.maxNodeWidth,
497
+ padding: f,
498
+ isGroup: !1
499
+ };
500
+ if (p !== void 0) {
501
+ let N;
502
+ p.includes(`
503
+ `) ? N = p + `
504
+ ` : N = `{
505
+ ` + p + `
506
+ }`;
507
+ const i = _e(N, { schema: Ee });
508
+ if (i.shape && (i.shape !== i.shape.toLowerCase() || i.shape.includes("_")))
509
+ throw new Error(`No such shape: ${i.shape}. Shape names should be lowercase.`);
510
+ i != null && i.shape && i.shape === "kanbanItem" && (h.shape = i == null ? void 0 : i.shape), i != null && i.label && (h.label = i == null ? void 0 : i.label), i != null && i.icon && (h.icon = i == null ? void 0 : i.icon.toString()), i != null && i.assigned && (h.assigned = i == null ? void 0 : i.assigned.toString()), i != null && i.ticket && (h.ticket = i == null ? void 0 : i.ticket.toString()), i != null && i.priority && (h.priority = i == null ? void 0 : i.priority);
511
+ }
512
+ const L = De(t);
513
+ L ? h.parentId = L.id || "kbn" + ee++ : ne.push(h), D.push(h);
514
+ }, "addNode"), b = {
515
+ DEFAULT: 0,
516
+ NO_BORDER: 0,
517
+ ROUNDED_RECT: 1,
518
+ RECT: 2,
519
+ CIRCLE: 3,
520
+ CLOUD: 4,
521
+ BANG: 5,
522
+ HEXAGON: 6
523
+ }, Ie = /* @__PURE__ */ c((t, g) => {
524
+ switch (te.debug("In get type", t, g), t) {
525
+ case "[":
526
+ return b.RECT;
527
+ case "(":
528
+ return g === ")" ? b.ROUNDED_RECT : b.CLOUD;
529
+ case "((":
530
+ return b.CIRCLE;
531
+ case ")":
532
+ return b.CLOUD;
533
+ case "))":
534
+ return b.BANG;
535
+ case "{{":
536
+ return b.HEXAGON;
537
+ default:
538
+ return b.DEFAULT;
539
+ }
540
+ }, "getType"), Ce = /* @__PURE__ */ c((t, g) => {
541
+ se[t] = g;
542
+ }, "setElementForId"), we = /* @__PURE__ */ c((t) => {
543
+ if (!t)
544
+ return;
545
+ const g = W(), d = D[D.length - 1];
546
+ t.icon && (d.icon = G(t.icon, g)), t.class && (d.cssClasses = G(t.class, g));
547
+ }, "decorateNode"), Ae = /* @__PURE__ */ c((t) => {
548
+ switch (t) {
549
+ case b.DEFAULT:
550
+ return "no-border";
551
+ case b.RECT:
552
+ return "rect";
553
+ case b.ROUNDED_RECT:
554
+ return "rounded-rect";
555
+ case b.CIRCLE:
556
+ return "circle";
557
+ case b.CLOUD:
558
+ return "cloud";
559
+ case b.BANG:
560
+ return "bang";
561
+ case b.HEXAGON:
562
+ return "hexgon";
563
+ // cspell: disable-line
564
+ default:
565
+ return "no-border";
566
+ }
567
+ }, "type2Str"), Te = /* @__PURE__ */ c(() => te, "getLogger"), Re = /* @__PURE__ */ c((t) => se[t], "getElementById"), Pe = {
568
+ clear: ve,
569
+ addNode: Oe,
570
+ getSections: he,
571
+ getData: Le,
572
+ nodeType: b,
573
+ getType: Ie,
574
+ setElementForId: Ce,
575
+ decorateNode: we,
576
+ type2Str: Ae,
577
+ getLogger: Te,
578
+ getElementById: Re
579
+ }, Ve = Pe, Be = /* @__PURE__ */ c(async (t, g, d, r) => {
580
+ var H, M, A, U, V;
581
+ te.debug(`Rendering kanban diagram
582
+ ` + t);
583
+ const _ = r.db.getData(), f = W();
584
+ f.htmlLabels = !1;
585
+ const h = fe(g);
586
+ for (const y of _.nodes)
587
+ y.domId = `${g}-${y.id}`;
588
+ const L = h.append("g");
589
+ L.attr("class", "sections");
590
+ const C = h.append("g");
591
+ C.attr("class", "items");
592
+ const w = _.nodes.filter(
593
+ // TODO: TypeScript 5.5 will infer this predicate automatically
594
+ (y) => y.isGroup
595
+ );
596
+ let N = 0;
597
+ const i = 10, j = [];
598
+ let x = 25;
599
+ for (const y of w) {
600
+ const O = ((H = f == null ? void 0 : f.kanban) == null ? void 0 : H.sectionWidth) || 200;
601
+ N = N + 1, y.x = O * N + (N - 1) * i / 2, y.width = O, y.y = 0, y.height = O * 3, y.rx = 5, y.ry = 5, y.cssClasses = y.cssClasses + " section-" + N;
602
+ const k = await ye(L, y);
603
+ x = Math.max(x, (M = k == null ? void 0 : k.labelBBox) == null ? void 0 : M.height), j.push(k);
604
+ }
605
+ let P = 0;
606
+ for (const y of w) {
607
+ const O = j[P];
608
+ P = P + 1;
609
+ const k = ((A = f == null ? void 0 : f.kanban) == null ? void 0 : A.sectionWidth) || 200, s = -k * 3 / 2 + x;
610
+ let n = s;
611
+ const a = _.nodes.filter((e) => e.parentId === y.id);
612
+ for (const e of a) {
613
+ if (e.isGroup)
614
+ throw new Error("Groups within groups are not allowed in Kanban diagrams");
615
+ e.x = y.x, e.width = k - 1.5 * i;
616
+ const l = (await be(C, e, { config: f })).node().getBBox();
617
+ e.y = n + l.height / 2, await me(e), n = e.y + l.height / 2 + i / 2;
618
+ }
619
+ const o = O.cluster.select("rect"), u = Math.max(n - s + 3 * i, 50) + (x - 25);
620
+ o.attr("height", u);
621
+ }
622
+ ke(
623
+ void 0,
624
+ h,
625
+ ((U = f.mindmap) == null ? void 0 : U.padding) ?? Y.kanban.padding,
626
+ ((V = f.mindmap) == null ? void 0 : V.useMaxWidth) ?? Y.kanban.useMaxWidth
627
+ );
628
+ }, "draw"), Fe = {
629
+ draw: Be
630
+ }, Ge = /* @__PURE__ */ c((t) => {
631
+ let g = "";
632
+ for (let r = 0; r < t.THEME_COLOR_LIMIT; r++)
633
+ t["lineColor" + r] = t["lineColor" + r] || t["cScaleInv" + r], Se(t["lineColor" + r]) ? t["lineColor" + r] = le(t["lineColor" + r], 20) : t["lineColor" + r] = ce(t["lineColor" + r], 20);
634
+ const d = /* @__PURE__ */ c((r, p) => t.darkMode ? ce(r, p) : le(r, p), "adjuster");
635
+ for (let r = 0; r < t.THEME_COLOR_LIMIT; r++) {
636
+ const p = "" + (17 - 3 * r);
637
+ g += `
638
+ .section-${r - 1} rect, .section-${r - 1} path, .section-${r - 1} circle, .section-${r - 1} polygon, .section-${r - 1} path {
639
+ fill: ${d(t["cScale" + r], 10)};
640
+ stroke: ${d(t["cScale" + r], 10)};
641
+
642
+ }
643
+ .section-${r - 1} text {
644
+ fill: ${t["cScaleLabel" + r]};
645
+ }
646
+ .node-icon-${r - 1} {
647
+ font-size: 40px;
648
+ color: ${t["cScaleLabel" + r]};
649
+ }
650
+ .section-edge-${r - 1}{
651
+ stroke: ${t["cScale" + r]};
652
+ }
653
+ .edge-depth-${r - 1}{
654
+ stroke-width: ${p};
655
+ }
656
+ .section-${r - 1} line {
657
+ stroke: ${t["cScaleInv" + r]} ;
658
+ stroke-width: 3;
659
+ }
660
+
661
+ .disabled, .disabled circle, .disabled text {
662
+ fill: lightgray;
663
+ }
664
+ .disabled text {
665
+ fill: #efefef;
666
+ }
667
+
668
+ .node rect,
669
+ .node circle,
670
+ .node ellipse,
671
+ .node polygon,
672
+ .node path {
673
+ fill: ${t.background};
674
+ stroke: ${t.nodeBorder};
675
+ stroke-width: 1px;
676
+ }
677
+
678
+ .kanban-ticket-link {
679
+ fill: ${t.background};
680
+ stroke: ${t.nodeBorder};
681
+ text-decoration: underline;
682
+ }
683
+ `;
684
+ }
685
+ return g;
686
+ }, "genSections"), je = /* @__PURE__ */ c((t) => `
687
+ .edge {
688
+ stroke-width: 3;
689
+ }
690
+ ${Ge(t)}
691
+ .section-root rect, .section-root path, .section-root circle, .section-root polygon {
692
+ fill: ${t.git0};
693
+ }
694
+ .section-root text {
695
+ fill: ${t.gitBranchLabel0};
696
+ }
697
+ .icon-container {
698
+ height:100%;
699
+ display: flex;
700
+ justify-content: center;
701
+ align-items: center;
702
+ }
703
+ .edge {
704
+ fill: none;
705
+ }
706
+ .cluster-label, .label {
707
+ color: ${t.textColor};
708
+ fill: ${t.textColor};
709
+ }
710
+ .kanban-label {
711
+ dy: 1em;
712
+ alignment-baseline: middle;
713
+ text-anchor: middle;
714
+ dominant-baseline: middle;
715
+ text-align: center;
716
+ }
717
+ ${Ne()}
718
+ `, "getStyles"), He = je, We = {
719
+ db: Ve,
720
+ renderer: Fe,
721
+ parser: xe,
722
+ styles: He
723
+ };
724
+ export {
725
+ We as diagram
726
+ };