@draftably/editor 0.0.0-stage → 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 (185) hide show
  1. package/README.md +26 -2
  2. package/dist/LICENSE +21 -0
  3. package/dist/assets/engine.worker-DmHew5f6.js +6813 -0
  4. package/dist/assets/import-d2.worker-CnXfFXoa.js +5395 -0
  5. package/dist/chunks/abnfDiagram-WEYOIA3C-llcpthp5.js +87 -0
  6. package/dist/chunks/arc-rJj0TtXf.js +83 -0
  7. package/dist/chunks/architectureDiagram-ZHVYKT53-CfiXg0Lk.js +4781 -0
  8. package/dist/chunks/blockDiagram-RJAE7QA3-CO-14jWz.js +1440 -0
  9. package/dist/chunks/browser-iNhbPsGc.js +40 -0
  10. package/dist/chunks/c4Diagram-XDPPPE54-DYKuxA4n.js +1524 -0
  11. package/dist/chunks/channel-qMvPU6eH.js +5 -0
  12. package/dist/chunks/chunk-2E7WHVMD-BEZwsFS3.js +670 -0
  13. package/dist/chunks/chunk-2Q5K7J3B-gqtzQ8ux.js +18 -0
  14. package/dist/chunks/chunk-4EMNKR2T-MC54CXVe.js +262 -0
  15. package/dist/chunks/chunk-55XCU76K-DkZUAaqC.js +68 -0
  16. package/dist/chunks/chunk-5VM5RSS4-CaKe4sjM.js +19 -0
  17. package/dist/chunks/chunk-JWPE2WC7-CnAFS2xF.js +8 -0
  18. package/dist/chunks/chunk-VQ5W62QI-CXRv7FiX.js +19 -0
  19. package/dist/chunks/chunk-XXDRQBXY-B-AMQgD2.js +8 -0
  20. package/dist/chunks/chunk-ZCHMQSOR-BALpdc3g.js +451 -0
  21. package/dist/chunks/classDiagram-v2-4MYWR3UA-wPjgJTg4.js +1570 -0
  22. package/dist/chunks/cose-bilkent-JH36ORCC-Bbh5ggBc.js +2608 -0
  23. package/dist/chunks/cynefin-EF2NZ3EQ-Bt6b88hY.js +22361 -0
  24. package/dist/chunks/cynefinDiagram-WF24UDRP-BHWZvxoF.js +299 -0
  25. package/dist/chunks/cytoscape.esm-CRsF_JA3.js +18791 -0
  26. package/dist/chunks/dagre-NK4GIZVX-Cz37yPrT.js +2157 -0
  27. package/dist/chunks/defaultLocale-BgPVtth8.js +171 -0
  28. package/dist/chunks/diagram-CBK3MWTC-Q2R6FJ0B.js +531 -0
  29. package/dist/chunks/diagram-I5XIIV2D-a2Kdu_wA.js +153 -0
  30. package/dist/chunks/diagram-ODIL2UCW-DTWXxcOn.js +346 -0
  31. package/dist/chunks/diagram-PFBEJUXE-DIAQQ5KX.js +480 -0
  32. package/dist/chunks/diagram-RJA3I4VV-BPD0GghS.js +219 -0
  33. package/dist/chunks/diagram-TYUNFSNR-BmdkONfG.js +2586 -0
  34. package/dist/chunks/dot-importer-B23jwEkx.js +1547 -0
  35. package/dist/chunks/ebnfDiagram-V4P3TTPT-C5IKvYlb.js +109 -0
  36. package/dist/chunks/elk-QONTBCTQ-CtdQFvh2.js +49229 -0
  37. package/dist/chunks/erDiagram-KYQIGQAA-5wguK9Dx.js +1064 -0
  38. package/dist/chunks/flowDiagram-IUGLLWBU-BijvFPku.js +1771 -0
  39. package/dist/chunks/ganttDiagram-R7GPNTJY-BaqGPz-O.js +2729 -0
  40. package/dist/chunks/gitGraphDiagram-PDYL7XHY-DZfMGyHE.js +815 -0
  41. package/dist/chunks/graph-CKJmgLki.js +1541 -0
  42. package/dist/chunks/import-core-C-I1wGfw.js +145 -0
  43. package/dist/chunks/infoDiagram-MVDRKAX5-C2vH_59e.js +24 -0
  44. package/dist/chunks/init-DjUOC4st.js +16 -0
  45. package/dist/chunks/ishikawaDiagram-HPEHV2GE-q149MFlV.js +624 -0
  46. package/dist/chunks/journeyDiagram-BOSHW7O7-D-2Z3VtR.js +834 -0
  47. package/dist/chunks/kanban-definition-FNSA4HC5-wvAjV5ub.js +724 -0
  48. package/dist/chunks/katex-BsrBVQKd.js +11314 -0
  49. package/dist/chunks/linear-4t7D_ros.js +259 -0
  50. package/dist/chunks/mermaid-facade-BoLWBerE.js +289 -0
  51. package/dist/chunks/mermaid-importer-Cgx1IhmR.js +478 -0
  52. package/dist/chunks/mermaid.core-DXv6D2Sm.js +19244 -0
  53. package/dist/chunks/mindmap-definition-6OY57UG3-r9wTKul_.js +837 -0
  54. package/dist/chunks/mount-C1Xk_GQz.js +22131 -0
  55. package/dist/chunks/ordinal-DfAQgscy.js +61 -0
  56. package/dist/chunks/pegDiagram-ECIUJNBX-CmKlFWiP.js +95 -0
  57. package/dist/chunks/pieDiagram-GNMPY74T-DNTw_qan.js +208 -0
  58. package/dist/chunks/quadrantDiagram-D57K4MC3-CT_tvVub.js +1029 -0
  59. package/dist/chunks/railroadDiagram-Y72NRBL7-C5TUvZBe.js +77 -0
  60. package/dist/chunks/requirementDiagram-EQYSW5RA-C_c65aCa.js +889 -0
  61. package/dist/chunks/sankeyDiagram-SY24JHO5-CKcbizM1.js +859 -0
  62. package/dist/chunks/sequenceDiagram-BLEHNHQU-GpVnHOjf.js +2972 -0
  63. package/dist/chunks/sizeCapture-INFHLROL-CToN3JSu.js +46 -0
  64. package/dist/chunks/stateDiagram-v2-A6IESKWZ-rJYd2FfM.js +1520 -0
  65. package/dist/chunks/swimlanes-B3ENRKFQ-C7w5pfxG.js +4991 -0
  66. package/dist/chunks/swimlanesDiagram-AYQRV4AK-BpGY_bvE.js +13 -0
  67. package/dist/chunks/timeline-definition-JXYKGLGB-ChKFPBKc.js +1058 -0
  68. package/dist/chunks/usecaseDiagram-WPOLBNNX-skXH8Dcu.js +7945 -0
  69. package/dist/chunks/vennDiagram-Q3Y3IDCW-C5KknmJf.js +1578 -0
  70. package/dist/chunks/wardleyDiagram-IVAIDKWA-DY4Lkfpu.js +678 -0
  71. package/dist/chunks/xychartDiagram-4URNHDU4-BHScsL7h.js +1536 -0
  72. package/dist/element.js +36 -0
  73. package/dist/index.js +4 -0
  74. package/dist/types/src/cli/links.d.ts +4 -0
  75. package/dist/types/src/cli/pdf.d.ts +29 -0
  76. package/dist/types/src/cli/png.d.ts +23 -0
  77. package/dist/types/src/cli/svg.d.ts +4 -0
  78. package/dist/types/src/components/Icon.d.ts +14 -0
  79. package/dist/types/src/components/LayoutPreviewBar.d.ts +2 -0
  80. package/dist/types/src/components/canvas/Canvas.d.ts +15 -0
  81. package/dist/types/src/components/canvas/Frame.d.ts +22 -0
  82. package/dist/types/src/components/canvas/InlineEditor.d.ts +2 -0
  83. package/dist/types/src/components/canvas/Notes.d.ts +5 -0
  84. package/dist/types/src/components/canvas/Overlay.d.ts +2 -0
  85. package/dist/types/src/components/canvas/StateBar.d.ts +5 -0
  86. package/dist/types/src/components/canvas/TextHits.d.ts +6 -0
  87. package/dist/types/src/components/canvas/ZoomControls.d.ts +1 -0
  88. package/dist/types/src/components/canvas/text-boxes.d.ts +24 -0
  89. package/dist/types/src/components/controls.d.ts +88 -0
  90. package/dist/types/src/components/scene/EdgeView.d.ts +22 -0
  91. package/dist/types/src/components/scene/GroupView.d.ts +22 -0
  92. package/dist/types/src/components/scene/Lifelines.d.ts +15 -0
  93. package/dist/types/src/components/scene/LinkMark.d.ts +11 -0
  94. package/dist/types/src/components/scene/NodeView.d.ts +18 -0
  95. package/dist/types/src/components/scene/parts.d.ts +50 -0
  96. package/dist/types/src/components/sculpt/BrushDock.d.ts +2 -0
  97. package/dist/types/src/components/sculpt/TimelineDeck.d.ts +2 -0
  98. package/dist/types/src/components/session-context.d.ts +486 -0
  99. package/dist/types/src/dsl/cells.d.ts +91 -0
  100. package/dist/types/src/dsl/channels.d.ts +53 -0
  101. package/dist/types/src/dsl/compile.d.ts +162 -0
  102. package/dist/types/src/dsl/frame.d.ts +38 -0
  103. package/dist/types/src/dsl/lanes.d.ts +23 -0
  104. package/dist/types/src/dsl/layout-edits.d.ts +58 -0
  105. package/dist/types/src/dsl/legend-notes.d.ts +3 -0
  106. package/dist/types/src/dsl/project.d.ts +39 -0
  107. package/dist/types/src/dsl/source-edits.d.ts +37 -0
  108. package/dist/types/src/dsl/syntax.d.ts +317 -0
  109. package/dist/types/src/dsl/translate.d.ts +69 -0
  110. package/dist/types/src/editor/Editor.d.ts +6 -0
  111. package/dist/types/src/editor/element.d.ts +15 -0
  112. package/dist/types/src/editor/mount.d.ts +23 -0
  113. package/dist/types/src/import/browser.d.ts +3 -0
  114. package/dist/types/src/import/detect.d.ts +31 -0
  115. package/dist/types/src/import/dot-importer.d.ts +3 -0
  116. package/dist/types/src/import/import-core.d.ts +105 -0
  117. package/dist/types/src/import/mermaid-facade.d.ts +120 -0
  118. package/dist/types/src/import/mermaid-importer.d.ts +4 -0
  119. package/dist/types/src/import/mermaid-sequence.d.ts +8 -0
  120. package/dist/types/src/import/scratch.d.ts +3 -0
  121. package/dist/types/src/lib/engine-tasks.d.ts +88 -0
  122. package/dist/types/src/lib/font-data.d.ts +9 -0
  123. package/dist/types/src/lib/saved-diagram.d.ts +4 -0
  124. package/dist/types/src/lib/scene-cache.d.ts +4 -0
  125. package/dist/types/src/lib/source-hash.d.ts +7 -0
  126. package/dist/types/src/lib/svg-export.d.ts +15 -0
  127. package/dist/types/src/model/appearance.d.ts +209 -0
  128. package/dist/types/src/model/bounds.d.ts +19 -0
  129. package/dist/types/src/model/camera.d.ts +21 -0
  130. package/dist/types/src/model/candidates.d.ts +53 -0
  131. package/dist/types/src/model/colors.d.ts +22 -0
  132. package/dist/types/src/model/document.d.ts +24 -0
  133. package/dist/types/src/model/edits.d.ts +133 -0
  134. package/dist/types/src/model/embed.d.ts +17 -0
  135. package/dist/types/src/model/examples.d.ts +15 -0
  136. package/dist/types/src/model/font-faces.d.ts +24 -0
  137. package/dist/types/src/model/fonts.d.ts +47 -0
  138. package/dist/types/src/model/footnote.d.ts +34 -0
  139. package/dist/types/src/model/frame.d.ts +71 -0
  140. package/dist/types/src/model/geometry.d.ts +29 -0
  141. package/dist/types/src/model/graph.d.ts +53 -0
  142. package/dist/types/src/model/heading.d.ts +38 -0
  143. package/dist/types/src/model/icons.d.ts +2 -0
  144. package/dist/types/src/model/label-hits.d.ts +27 -0
  145. package/dist/types/src/model/labels.d.ts +88 -0
  146. package/dist/types/src/model/legend.d.ts +25 -0
  147. package/dist/types/src/model/link.d.ts +63 -0
  148. package/dist/types/src/model/markers.d.ts +47 -0
  149. package/dist/types/src/model/note.d.ts +75 -0
  150. package/dist/types/src/model/panels.d.ts +11 -0
  151. package/dist/types/src/model/rich-text.d.ts +24 -0
  152. package/dist/types/src/model/routes.d.ts +170 -0
  153. package/dist/types/src/model/samples.d.ts +11 -0
  154. package/dist/types/src/model/stack.d.ts +8 -0
  155. package/dist/types/src/model/static-scene.d.ts +15 -0
  156. package/dist/types/src/model/status.d.ts +84 -0
  157. package/dist/types/src/model/styles.d.ts +13 -0
  158. package/dist/types/src/model/surface.d.ts +31 -0
  159. package/dist/types/src/model/types.d.ts +277 -0
  160. package/dist/types/src/runtime/svg-renderer.d.ts +38 -0
  161. package/dist/types/src/server/file-session.d.ts +19 -0
  162. package/dist/types/src/server/workspace.d.ts +21 -0
  163. package/dist/types/src/state/active-session.d.ts +479 -0
  164. package/dist/types/src/state/commands.d.ts +529 -0
  165. package/dist/types/src/state/comparison.d.ts +151 -0
  166. package/dist/types/src/state/files.d.ts +61 -0
  167. package/dist/types/src/state/keyboard.d.ts +6 -0
  168. package/dist/types/src/state/keys.d.ts +5 -0
  169. package/dist/types/src/state/launch.d.ts +61 -0
  170. package/dist/types/src/state/links.d.ts +11 -0
  171. package/dist/types/src/state/session/actions.d.ts +77 -0
  172. package/dist/types/src/state/session/canvas-text.d.ts +24 -0
  173. package/dist/types/src/state/session/document.d.ts +84 -0
  174. package/dist/types/src/state/session/editor.d.ts +81 -0
  175. package/dist/types/src/state/session/emphasis.d.ts +11 -0
  176. package/dist/types/src/state/session/file-session.d.ts +98 -0
  177. package/dist/types/src/state/session/index.d.ts +496 -0
  178. package/dist/types/src/state/session/layout.d.ts +79 -0
  179. package/dist/types/src/state/session/pointer.d.ts +19 -0
  180. package/dist/types/src/state/session/routing.d.ts +20 -0
  181. package/dist/types/src/state/session/scene.d.ts +144 -0
  182. package/dist/types/src/state/session/sculpt.d.ts +70 -0
  183. package/dist/types/src/state/toast.d.ts +14 -0
  184. package/dist/types/src/state/ui.d.ts +39 -0
  185. package/package.json +41 -3
@@ -0,0 +1,724 @@
1
+ import { _ as o, l as te, c as H, Q as fe, al as ye, am as be, an as me, a4 as _e, O as K, j as F, v as ke, J as Ee, a1 as Se, a2 as ce, a3 as le } from "./mermaid.core-DXv6D2Sm.js";
2
+ import { g as Ne } from "./chunk-5VM5RSS4-CaKe4sjM.js";
3
+ var $ = (function() {
4
+ var e = /* @__PURE__ */ o(function(O, s, n, r) {
5
+ for (n = n || {}, r = O.length; r--; n[O[r]] = s) ;
6
+ return n;
7
+ }, "o"), h = [1, 4], p = [1, 13], i = [1, 12], d = [1, 15], _ = [1, 16], m = [1, 20], l = [1, 19], D = [6, 7, 8], I = [1, 26], g = [1, 24], w = [1, 25], k = [6, 7, 11], G = [1, 31], N = [6, 7, 11, 24], V = [1, 6, 13, 16, 17, 20, 23], f = [1, 35], A = [1, 36], L = [1, 6, 7, 11, 13, 16, 17, 20, 23], M = [1, 38], T = {
8
+ trace: /* @__PURE__ */ o(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__ */ o(function(s, n, r, a, u, t, U) {
15
+ var c = t.length - 1;
16
+ switch (u) {
17
+ case 6:
18
+ case 7:
19
+ return a;
20
+ case 8:
21
+ a.getLogger().trace("Stop NL ");
22
+ break;
23
+ case 9:
24
+ a.getLogger().trace("Stop EOF ");
25
+ break;
26
+ case 11:
27
+ a.getLogger().trace("Stop NL2 ");
28
+ break;
29
+ case 12:
30
+ a.getLogger().trace("Stop EOF2 ");
31
+ break;
32
+ case 15:
33
+ a.getLogger().info("Node: ", t[c - 1].id), a.addNode(t[c - 2].length, t[c - 1].id, t[c - 1].descr, t[c - 1].type, t[c]);
34
+ break;
35
+ case 16:
36
+ a.getLogger().info("Node: ", t[c].id), a.addNode(t[c - 1].length, t[c].id, t[c].descr, t[c].type);
37
+ break;
38
+ case 17:
39
+ a.getLogger().trace("Icon: ", t[c]), a.decorateNode({ icon: t[c] });
40
+ break;
41
+ case 18:
42
+ case 23:
43
+ a.decorateNode({ class: t[c] });
44
+ break;
45
+ case 19:
46
+ a.getLogger().trace("SPACELIST");
47
+ break;
48
+ case 20:
49
+ a.getLogger().trace("Node: ", t[c - 1].id), a.addNode(0, t[c - 1].id, t[c - 1].descr, t[c - 1].type, t[c]);
50
+ break;
51
+ case 21:
52
+ a.getLogger().trace("Node: ", t[c].id), a.addNode(0, t[c].id, t[c].descr, t[c].type);
53
+ break;
54
+ case 22:
55
+ a.decorateNode({ icon: t[c] });
56
+ break;
57
+ case 27:
58
+ a.getLogger().trace("node found ..", t[c - 2]), this.$ = { id: t[c - 1], descr: t[c - 1], type: a.getType(t[c - 2], t[c]) };
59
+ break;
60
+ case 28:
61
+ this.$ = { id: t[c], descr: t[c], type: 0 };
62
+ break;
63
+ case 29:
64
+ a.getLogger().trace("node found ..", t[c - 3]), this.$ = { id: t[c - 3], descr: t[c - 1], type: a.getType(t[c - 2], t[c]) };
65
+ break;
66
+ case 30:
67
+ this.$ = t[c - 1] + t[c];
68
+ break;
69
+ case 31:
70
+ this.$ = t[c];
71
+ break;
72
+ }
73
+ }, "anonymous"),
74
+ table: [{ 3: 1, 4: 2, 5: 3, 6: [1, 5], 8: h }, { 1: [3] }, { 1: [2, 1] }, { 4: 6, 6: [1, 7], 7: [1, 8], 8: h }, { 6: p, 7: [1, 10], 9: 9, 12: 11, 13: i, 14: 14, 16: d, 17: _, 18: 17, 19: 18, 20: m, 23: l }, e(D, [2, 3]), { 1: [2, 2] }, e(D, [2, 4]), e(D, [2, 5]), { 1: [2, 6], 6: p, 12: 21, 13: i, 14: 14, 16: d, 17: _, 18: 17, 19: 18, 20: m, 23: l }, { 6: p, 9: 22, 12: 11, 13: i, 14: 14, 16: d, 17: _, 18: 17, 19: 18, 20: m, 23: l }, { 6: I, 7: g, 10: 23, 11: w }, e(k, [2, 24], { 18: 17, 19: 18, 14: 27, 16: [1, 28], 17: [1, 29], 20: m, 23: l }), e(k, [2, 19]), e(k, [2, 21], { 15: 30, 24: G }), e(k, [2, 22]), e(k, [2, 23]), e(N, [2, 25]), e(N, [2, 26]), e(N, [2, 28], { 20: [1, 32] }), { 21: [1, 33] }, { 6: I, 7: g, 10: 34, 11: w }, { 1: [2, 7], 6: p, 12: 21, 13: i, 14: 14, 16: d, 17: _, 18: 17, 19: 18, 20: m, 23: l }, e(V, [2, 14], { 7: f, 11: A }), e(L, [2, 8]), e(L, [2, 9]), e(L, [2, 10]), e(k, [2, 16], { 15: 37, 24: G }), e(k, [2, 17]), e(k, [2, 18]), e(k, [2, 20], { 24: M }), e(N, [2, 31]), { 21: [1, 39] }, { 22: [1, 40] }, e(V, [2, 13], { 7: f, 11: A }), e(L, [2, 11]), e(L, [2, 12]), e(k, [2, 15], { 24: M }), e(N, [2, 30]), { 22: [1, 41] }, e(N, [2, 27]), e(N, [2, 29])],
75
+ defaultActions: { 2: [2, 1], 6: [2, 2] },
76
+ parseError: /* @__PURE__ */ o(function(s, n) {
77
+ if (n.recoverable)
78
+ this.trace(s);
79
+ else {
80
+ var r = new Error(s);
81
+ throw r.hash = n, r;
82
+ }
83
+ }, "parseError"),
84
+ parse: /* @__PURE__ */ o(function(s) {
85
+ var n = this, r = [0], a = [], u = [null], t = [], U = this.table, c = "", W = 0, ie = 0, ue = 2, re = 1, ge = t.slice.call(arguments, 1), b = Object.create(this.lexer), R = { yy: {} };
86
+ for (var J in this.yy)
87
+ Object.prototype.hasOwnProperty.call(this.yy, J) && (R.yy[J] = this.yy[J]);
88
+ b.setInput(s, R.yy), R.yy.lexer = b, R.yy.parser = this, typeof b.yylloc > "u" && (b.yylloc = {});
89
+ var Q = b.yylloc;
90
+ t.push(Q);
91
+ var de = b.options && b.options.ranges;
92
+ typeof R.yy.parseError == "function" ? this.parseError = R.yy.parseError : this.parseError = Object.getPrototypeOf(this).parseError;
93
+ function pe(S) {
94
+ r.length = r.length - 2 * S, u.length = u.length - S, t.length = t.length - S;
95
+ }
96
+ o(pe, "popStack");
97
+ function ae() {
98
+ var S;
99
+ return S = a.pop() || b.lex() || re, typeof S != "number" && (S instanceof Array && (a = S, S = a.pop()), S = n.symbols_[S] || S), S;
100
+ }
101
+ o(ae, "lex");
102
+ for (var E, P, x, q, j = {}, z, C, oe, X; ; ) {
103
+ if (P = r[r.length - 1], this.defaultActions[P] ? x = this.defaultActions[P] : ((E === null || typeof E > "u") && (E = ae()), x = U[P] && U[P][E]), typeof x > "u" || !x.length || !x[0]) {
104
+ var Z = "";
105
+ X = [];
106
+ for (z in U[P])
107
+ this.terminals_[z] && z > ue && X.push("'" + this.terminals_[z] + "'");
108
+ b.showPosition ? Z = "Parse error on line " + (W + 1) + `:
109
+ ` + b.showPosition() + `
110
+ Expecting ` + X.join(", ") + ", got '" + (this.terminals_[E] || E) + "'" : Z = "Parse error on line " + (W + 1) + ": Unexpected " + (E == re ? "end of input" : "'" + (this.terminals_[E] || E) + "'"), this.parseError(Z, {
111
+ text: b.match,
112
+ token: this.terminals_[E] || E,
113
+ line: b.yylineno,
114
+ loc: Q,
115
+ expected: X
116
+ });
117
+ }
118
+ if (x[0] instanceof Array && x.length > 1)
119
+ throw new Error("Parse Error: multiple actions possible at state: " + P + ", token: " + E);
120
+ switch (x[0]) {
121
+ case 1:
122
+ r.push(E), u.push(b.yytext), t.push(b.yylloc), r.push(x[1]), E = null, ie = b.yyleng, c = b.yytext, W = b.yylineno, Q = b.yylloc;
123
+ break;
124
+ case 2:
125
+ if (C = this.productions_[x[1]][1], j.$ = u[u.length - C], j._$ = {
126
+ first_line: t[t.length - (C || 1)].first_line,
127
+ last_line: t[t.length - 1].last_line,
128
+ first_column: t[t.length - (C || 1)].first_column,
129
+ last_column: t[t.length - 1].last_column
130
+ }, de && (j._$.range = [
131
+ t[t.length - (C || 1)].range[0],
132
+ t[t.length - 1].range[1]
133
+ ]), q = this.performAction.apply(j, [
134
+ c,
135
+ ie,
136
+ W,
137
+ R.yy,
138
+ x[1],
139
+ u,
140
+ t
141
+ ].concat(ge)), typeof q < "u")
142
+ return q;
143
+ C && (r = r.slice(0, -1 * C * 2), u = u.slice(0, -1 * C), t = t.slice(0, -1 * C)), r.push(this.productions_[x[1]][0]), u.push(j.$), t.push(j._$), oe = U[r[r.length - 2]][r[r.length - 1]], r.push(oe);
144
+ break;
145
+ case 3:
146
+ return !0;
147
+ }
148
+ }
149
+ return !0;
150
+ }, "parse")
151
+ }, Y = /* @__PURE__ */ (function() {
152
+ var O = {
153
+ EOF: 1,
154
+ parseError: /* @__PURE__ */ o(function(n, r) {
155
+ if (this.yy.parser)
156
+ this.yy.parser.parseError(n, r);
157
+ else
158
+ throw new Error(n);
159
+ }, "parseError"),
160
+ // resets the lexer, sets new input
161
+ setInput: /* @__PURE__ */ o(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__ */ o(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__ */ o(function(s) {
178
+ var n = s.length, r = 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 a = 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), r.length - 1 && (this.yylineno -= r.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: r ? (r.length === a.length ? this.yylloc.first_column : 0) + a[a.length - r.length].length - r[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__ */ o(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__ */ o(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__ */ o(function(s) {
209
+ this.unput(this.match.slice(s));
210
+ }, "less"),
211
+ // displays already matched input, i.e. for error messages
212
+ pastInput: /* @__PURE__ */ o(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__ */ o(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__ */ o(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__ */ o(function(s, n) {
229
+ var r, a, 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))), a = s[0].match(/(?:\r\n?|\n).*/g), a && (this.yylineno += a.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: a ? a[a.length - 1].length - a[a.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], r = this.performAction.call(this, this.yy, this, n, this.conditionStack[this.conditionStack.length - 1]), this.done && this._input && (this.done = !1), r)
255
+ return r;
256
+ if (this._backtrack) {
257
+ for (var t in u)
258
+ this[t] = u[t];
259
+ return !1;
260
+ }
261
+ return !1;
262
+ }, "test_match"),
263
+ // return next match in input
264
+ next: /* @__PURE__ */ o(function() {
265
+ if (this.done)
266
+ return this.EOF;
267
+ this._input || (this.done = !0);
268
+ var s, n, r, a;
269
+ this._more || (this.yytext = "", this.match = "");
270
+ for (var u = this._currentRules(), t = 0; t < u.length; t++)
271
+ if (r = this._input.match(this.rules[u[t]]), r && (!n || r[0].length > n[0].length)) {
272
+ if (n = r, a = t, this.options.backtrack_lexer) {
273
+ if (s = this.test_match(r, u[t]), 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[a]), 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__ */ o(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__ */ o(function(n) {
297
+ this.conditionStack.push(n);
298
+ }, "begin"),
299
+ // pop the previously active lexer condition state off the condition stack
300
+ popState: /* @__PURE__ */ o(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__ */ o(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__ */ o(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__ */ o(function(n) {
314
+ this.begin(n);
315
+ }, "pushState"),
316
+ // return the number of states currently on the stack
317
+ stateStackSize: /* @__PURE__ */ o(function() {
318
+ return this.conditionStack.length;
319
+ }, "stateStackSize"),
320
+ options: { "case-insensitive": !0 },
321
+ performAction: /* @__PURE__ */ o(function(n, r, a, u) {
322
+ switch (a) {
323
+ case 0:
324
+ return this.pushState("shapeData"), r.yytext = "", 24;
325
+ case 1:
326
+ return this.pushState("shapeDataStr"), 24;
327
+ case 2:
328
+ return this.popState(), 24;
329
+ case 3:
330
+ const t = /\n\s*/g;
331
+ return r.yytext = r.yytext.replace(t, "<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", r.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:", r.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 ...", r.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:", r.yytext), 21;
417
+ case 42:
418
+ return n.getLogger().trace("Long description:", r.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 O;
425
+ })();
426
+ T.lexer = Y;
427
+ function B() {
428
+ this.yy = {};
429
+ }
430
+ return o(B, "Parser"), B.prototype = T, T.Parser = B, new B();
431
+ })();
432
+ $.parser = $;
433
+ var xe = $, v = [], ne = [], ee = 0, se = {}, ve = /* @__PURE__ */ o(() => {
434
+ v = [], ne = [], ee = 0, se = {};
435
+ }, "clear"), De = /* @__PURE__ */ o((e) => {
436
+ if (v.length === 0)
437
+ return null;
438
+ const h = v[0].level;
439
+ let p = null;
440
+ for (let i = v.length - 1; i >= 0; i--)
441
+ if (v[i].level === h && !p && (p = v[i]), v[i].level < h)
442
+ throw new Error('Items without section detected, found section ("' + v[i].label + '")');
443
+ return e === p?.level ? null : p;
444
+ }, "getSection"), he = /* @__PURE__ */ o(function() {
445
+ return ne;
446
+ }, "getSections"), Le = /* @__PURE__ */ o(function() {
447
+ const e = [], h = [], p = he(), i = H();
448
+ for (const d of p) {
449
+ const _ = {
450
+ id: d.id,
451
+ label: F(d.label ?? "", i),
452
+ labelType: "markdown",
453
+ isGroup: !0,
454
+ ticket: d.ticket,
455
+ shape: "kanbanSection",
456
+ level: d.level,
457
+ look: i.look
458
+ };
459
+ h.push(_);
460
+ const m = v.filter((l) => l.parentId === d.id);
461
+ for (const l of m) {
462
+ const D = {
463
+ id: l.id,
464
+ parentId: d.id,
465
+ label: F(l.label ?? "", i),
466
+ labelType: "markdown",
467
+ isGroup: !1,
468
+ ticket: l?.ticket,
469
+ priority: l?.priority,
470
+ assigned: l?.assigned,
471
+ icon: l?.icon,
472
+ shape: "kanbanItem",
473
+ level: l.level,
474
+ rx: 5,
475
+ ry: 5,
476
+ cssStyles: ["text-align: left"]
477
+ };
478
+ h.push(D);
479
+ }
480
+ }
481
+ return { nodes: h, edges: e, other: {}, config: H() };
482
+ }, "getData"), Oe = /* @__PURE__ */ o((e, h, p, i, d) => {
483
+ const _ = H();
484
+ let m = _.mindmap?.padding ?? K.mindmap.padding;
485
+ switch (i) {
486
+ case y.ROUNDED_RECT:
487
+ case y.RECT:
488
+ case y.HEXAGON:
489
+ m *= 2;
490
+ }
491
+ const l = {
492
+ id: F(h, _) || "kbn" + ee++,
493
+ level: e,
494
+ label: F(p, _),
495
+ width: _.mindmap?.maxNodeWidth ?? K.mindmap.maxNodeWidth,
496
+ padding: m,
497
+ isGroup: !1
498
+ };
499
+ if (d !== void 0) {
500
+ let I;
501
+ d.includes(`
502
+ `) ? I = d + `
503
+ ` : I = `{
504
+ ` + d + `
505
+ }`;
506
+ const g = ke(I, { schema: Ee });
507
+ if (g.shape && (g.shape !== g.shape.toLowerCase() || g.shape.includes("_")))
508
+ throw new Error(`No such shape: ${g.shape}. Shape names should be lowercase.`);
509
+ g?.shape && g.shape === "kanbanItem" && (l.shape = g?.shape), g?.label && (l.label = g?.label), g?.icon && (l.icon = g?.icon.toString()), g?.assigned && (l.assigned = g?.assigned.toString()), g?.ticket && (l.ticket = g?.ticket.toString()), g?.priority && (l.priority = g?.priority);
510
+ }
511
+ const D = De(e);
512
+ D ? l.parentId = D.id || "kbn" + ee++ : ne.push(l), v.push(l);
513
+ }, "addNode"), y = {
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
+ }, Ie = /* @__PURE__ */ o((e, h) => {
523
+ switch (te.debug("In get type", e, h), e) {
524
+ case "[":
525
+ return y.RECT;
526
+ case "(":
527
+ return h === ")" ? y.ROUNDED_RECT : y.CLOUD;
528
+ case "((":
529
+ return y.CIRCLE;
530
+ case ")":
531
+ return y.CLOUD;
532
+ case "))":
533
+ return y.BANG;
534
+ case "{{":
535
+ return y.HEXAGON;
536
+ default:
537
+ return y.DEFAULT;
538
+ }
539
+ }, "getType"), Ce = /* @__PURE__ */ o((e, h) => {
540
+ se[e] = h;
541
+ }, "setElementForId"), we = /* @__PURE__ */ o((e) => {
542
+ if (!e)
543
+ return;
544
+ const h = H(), p = v[v.length - 1];
545
+ e.icon && (p.icon = F(e.icon, h)), e.class && (p.cssClasses = F(e.class, h));
546
+ }, "decorateNode"), Ae = /* @__PURE__ */ o((e) => {
547
+ switch (e) {
548
+ case y.DEFAULT:
549
+ return "no-border";
550
+ case y.RECT:
551
+ return "rect";
552
+ case y.ROUNDED_RECT:
553
+ return "rounded-rect";
554
+ case y.CIRCLE:
555
+ return "circle";
556
+ case y.CLOUD:
557
+ return "cloud";
558
+ case y.BANG:
559
+ return "bang";
560
+ case y.HEXAGON:
561
+ return "hexgon";
562
+ // cspell: disable-line
563
+ default:
564
+ return "no-border";
565
+ }
566
+ }, "type2Str"), Te = /* @__PURE__ */ o(() => te, "getLogger"), Re = /* @__PURE__ */ o((e) => se[e], "getElementById"), Pe = {
567
+ clear: ve,
568
+ addNode: Oe,
569
+ getSections: he,
570
+ getData: Le,
571
+ nodeType: y,
572
+ getType: Ie,
573
+ setElementForId: Ce,
574
+ decorateNode: we,
575
+ type2Str: Ae,
576
+ getLogger: Te,
577
+ getElementById: Re
578
+ }, Ve = Pe, Be = /* @__PURE__ */ o(async (e, h, p, i) => {
579
+ te.debug(`Rendering kanban diagram
580
+ ` + e);
581
+ const _ = i.db.getData(), m = H();
582
+ m.htmlLabels = !1;
583
+ const l = fe(h);
584
+ for (const f of _.nodes)
585
+ f.domId = `${h}-${f.id}`;
586
+ const D = l.append("g");
587
+ D.attr("class", "sections");
588
+ const I = l.append("g");
589
+ I.attr("class", "items");
590
+ const g = _.nodes.filter(
591
+ // TODO: TypeScript 5.5 will infer this predicate automatically
592
+ (f) => f.isGroup
593
+ );
594
+ let w = 0;
595
+ const k = 10, G = [];
596
+ let N = 25;
597
+ for (const f of g) {
598
+ const A = m?.kanban?.sectionWidth || 200;
599
+ w = w + 1, f.x = A * w + (w - 1) * k / 2, f.width = A, f.y = 0, f.height = A * 3, f.rx = 5, f.ry = 5, f.cssClasses = f.cssClasses + " section-" + w;
600
+ const L = await ye(D, f);
601
+ N = Math.max(N, L?.labelBBox?.height), G.push(L);
602
+ }
603
+ let V = 0;
604
+ for (const f of g) {
605
+ const A = G[V];
606
+ V = V + 1;
607
+ const L = m?.kanban?.sectionWidth || 200, M = -L * 3 / 2 + N;
608
+ let T = M;
609
+ const Y = _.nodes.filter((s) => s.parentId === f.id);
610
+ for (const s of Y) {
611
+ if (s.isGroup)
612
+ throw new Error("Groups within groups are not allowed in Kanban diagrams");
613
+ s.x = f.x, s.width = L - 1.5 * k;
614
+ const r = (await be(I, s, { config: m })).node().getBBox();
615
+ s.y = T + r.height / 2, await me(s), T = s.y + r.height / 2 + k / 2;
616
+ }
617
+ const B = A.cluster.select("rect"), O = Math.max(T - M + 3 * k, 50) + (N - 25);
618
+ B.attr("height", O);
619
+ }
620
+ _e(
621
+ void 0,
622
+ l,
623
+ m.mindmap?.padding ?? K.kanban.padding,
624
+ m.mindmap?.useMaxWidth ?? K.kanban.useMaxWidth
625
+ );
626
+ }, "draw"), je = {
627
+ draw: Be
628
+ }, Fe = /* @__PURE__ */ o((e) => {
629
+ let h = "";
630
+ for (let i = 0; i < e.THEME_COLOR_LIMIT; i++)
631
+ e["lineColor" + i] = e["lineColor" + i] || e["cScaleInv" + i], Se(e["lineColor" + i]) ? e["lineColor" + i] = ce(e["lineColor" + i], 20) : e["lineColor" + i] = le(e["lineColor" + i], 20);
632
+ const p = /* @__PURE__ */ o((i, d) => e.darkMode ? le(i, d) : ce(i, d), "adjuster");
633
+ for (let i = 0; i < e.THEME_COLOR_LIMIT; i++) {
634
+ const d = "" + (17 - 3 * i);
635
+ h += `
636
+ .section-${i - 1} rect, .section-${i - 1} path, .section-${i - 1} circle, .section-${i - 1} polygon, .section-${i - 1} path {
637
+ fill: ${p(e["cScale" + i], 10)};
638
+ stroke: ${p(e["cScale" + i], 10)};
639
+
640
+ }
641
+ .section-${i - 1} text {
642
+ fill: ${e["cScaleLabel" + i]};
643
+ }
644
+ .node-icon-${i - 1} {
645
+ font-size: 40px;
646
+ color: ${e["cScaleLabel" + i]};
647
+ }
648
+ .section-edge-${i - 1}{
649
+ stroke: ${e["cScale" + i]};
650
+ }
651
+ .edge-depth-${i - 1}{
652
+ stroke-width: ${d};
653
+ }
654
+ .section-${i - 1} line {
655
+ stroke: ${e["cScaleInv" + i]} ;
656
+ stroke-width: 3;
657
+ }
658
+
659
+ .disabled, .disabled circle, .disabled text {
660
+ fill: lightgray;
661
+ }
662
+ .disabled text {
663
+ fill: #efefef;
664
+ }
665
+
666
+ .node rect,
667
+ .node circle,
668
+ .node ellipse,
669
+ .node polygon,
670
+ .node path {
671
+ fill: ${e.background};
672
+ stroke: ${e.nodeBorder};
673
+ stroke-width: 1px;
674
+ }
675
+
676
+ .kanban-ticket-link {
677
+ fill: ${e.background};
678
+ stroke: ${e.nodeBorder};
679
+ text-decoration: underline;
680
+ }
681
+ `;
682
+ }
683
+ return h;
684
+ }, "genSections"), Ge = /* @__PURE__ */ o((e) => `
685
+ .edge {
686
+ stroke-width: 3;
687
+ }
688
+ ${Fe(e)}
689
+ .section-root rect, .section-root path, .section-root circle, .section-root polygon {
690
+ fill: ${e.git0};
691
+ }
692
+ .section-root text {
693
+ fill: ${e.gitBranchLabel0};
694
+ }
695
+ .icon-container {
696
+ height:100%;
697
+ display: flex;
698
+ justify-content: center;
699
+ align-items: center;
700
+ }
701
+ .edge {
702
+ fill: none;
703
+ }
704
+ .cluster-label, .label {
705
+ color: ${e.textColor};
706
+ fill: ${e.textColor};
707
+ }
708
+ .kanban-label {
709
+ dy: 1em;
710
+ alignment-baseline: middle;
711
+ text-anchor: middle;
712
+ dominant-baseline: middle;
713
+ text-align: center;
714
+ }
715
+ ${Ne()}
716
+ `, "getStyles"), Me = Ge, We = {
717
+ db: Ve,
718
+ renderer: je,
719
+ parser: xe,
720
+ styles: Me
721
+ };
722
+ export {
723
+ We as diagram
724
+ };