@blueking/ai-blueking 2.0.0-dev.1 → 2.0.0-dev.3

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 (183) hide show
  1. package/dist/vue2/_baseFor-DAbrc8SN.js +309 -0
  2. package/dist/vue2/arc-BqlAOiZb.js +78 -0
  3. package/dist/vue2/architecture-U656AL7Q-Dtuq8BzO.js +7 -0
  4. package/dist/vue2/architectureDiagram-VXUJARFQ-BQS5Ixrn.js +4052 -0
  5. package/dist/vue2/array-TB8zN_HT.js +5 -0
  6. package/dist/vue2/blockDiagram-VD42YOAC-Bp6L6c6e.js +3013 -0
  7. package/dist/vue2/c4Diagram-YG6GDRKO-B15ZDn3Z.js +2956 -0
  8. package/dist/vue2/channel-edTl5mpN.js +3 -0
  9. package/dist/vue2/chunk-4BX2VUAB-eAYYj1bL.js +6 -0
  10. package/dist/vue2/chunk-55IACEB6-CTzuTcHv.js +6 -0
  11. package/dist/vue2/chunk-76Q3JFCE-BrJX66ha.js +19 -0
  12. package/dist/vue2/chunk-ABZYJK2D-gsx40GnJ.js +1971 -0
  13. package/dist/vue2/chunk-ATLVNIR6-CTTwtx-5.js +65 -0
  14. package/dist/vue2/chunk-B4BG7PRW-D8o7VxRH.js +3108 -0
  15. package/dist/vue2/chunk-CVBHYZKI-Cs8lCw3u.js +10 -0
  16. package/dist/vue2/chunk-DI55MBZ5-Dl59YBtR.js +1994 -0
  17. package/dist/vue2/chunk-DNh5sLlG.js +18 -0
  18. package/dist/vue2/chunk-EXTU4WIE-BPc8ye_N.js +7 -0
  19. package/dist/vue2/chunk-FMBD7UC4-PFlLPz_s.js +3 -0
  20. package/dist/vue2/chunk-FPAJGGOC-DPvjUKQ8.js +13428 -0
  21. package/dist/vue2/chunk-FWNWRKHM-BlUTFsPK.js +56 -0
  22. package/dist/vue2/chunk-HN2XXSSU-DueSY85P.js +74 -0
  23. package/dist/vue2/chunk-JA3XYJ7Z-CRet4f6a.js +1845 -0
  24. package/dist/vue2/chunk-JZLCHNYA-Df0-MseJ.js +4861 -0
  25. package/dist/vue2/chunk-LBM3YZW2-B0-w2HZs.js +19 -0
  26. package/dist/vue2/chunk-LHMN2FUI-BOH3yE2u.js +19 -0
  27. package/dist/vue2/chunk-MI3HLSF2-6-T1J0MS.js +1140 -0
  28. package/dist/vue2/chunk-N4CR4FBY-jNnt5D3v.js +39 -0
  29. package/dist/vue2/chunk-O7ZBX7Z2-BEP34BEE.js +26 -0
  30. package/dist/vue2/chunk-QN33PNHL-DsC-XeM9.js +23 -0
  31. package/dist/vue2/chunk-QXUST7PY-DxFRymyS.js +486 -0
  32. package/dist/vue2/chunk-QZHKN3VN-D9B5jQvg.js +11 -0
  33. package/dist/vue2/chunk-S3R3BYOJ-Bs_r55Kk.js +1222 -0
  34. package/dist/vue2/chunk-S6J4BHB3-XXfWHJvh.js +19 -0
  35. package/dist/vue2/chunk-T53DSG4Q-CNvqP6Iy.js +24 -0
  36. package/dist/vue2/chunk-TZMSLE5B-C5ccYWGN.js +55 -0
  37. package/dist/vue2/chunk-XAJISQIX-XsDvU4jW.js +135 -0
  38. package/dist/vue2/classDiagram-2ON5EDUG-Cgf9yVXj.js +33 -0
  39. package/dist/vue2/classDiagram-v2-WZHVMYZB-BtF1_0UK.js +33 -0
  40. package/dist/vue2/clone-Bbr3WSpg.js +7 -0
  41. package/dist/vue2/cose-bilkent-S5V4N54A-Cmf6WLkk.js +2250 -0
  42. package/dist/vue2/cytoscape.esm-nrcriBSO.js +18100 -0
  43. package/dist/vue2/dagre-6UL2VRFP-CTl_U96l.js +298 -0
  44. package/dist/vue2/dagre-DUjlMe_B.js +1496 -0
  45. package/dist/vue2/defaultLocale-BLATqOV5.js +177 -0
  46. package/dist/vue2/diagram-PSM6KHXK-Bl7brR-1.js +497 -0
  47. package/dist/vue2/diagram-QEK2KX5R-CAeywSxy.js +226 -0
  48. package/dist/vue2/diagram-S2PKOQOG-6I6J4WRC.js +144 -0
  49. package/dist/vue2/dist-xWJvauxf.js +49 -0
  50. package/dist/vue2/erDiagram-Q2GNP2WA-C8EbfuTj.js +1603 -0
  51. package/dist/vue2/flatten-CfPhNHUL.js +34 -0
  52. package/dist/vue2/flowDiagram-NV44I4VS-lFr4G2WN.js +4132 -0
  53. package/dist/vue2/ganttDiagram-JELNMOA3-Bvtip7yn.js +3010 -0
  54. package/dist/vue2/gitGraph-F6HP7TQM-OQvD95bN.js +7 -0
  55. package/dist/vue2/gitGraphDiagram-NY62KEGX-Cjvy4fHM.js +634 -0
  56. package/dist/vue2/graphlib-KDKEjVHX.js +344 -0
  57. package/dist/vue2/index.es.min.js +26703 -786
  58. package/dist/vue2/index.umd.min.js +2796 -9
  59. package/dist/vue2/info-NVLQJR56-DBsOnIKy.js +7 -0
  60. package/dist/vue2/infoDiagram-WHAUD3N6-D_isj7oC.js +31 -0
  61. package/dist/vue2/init-hAkIK9Bd.js +13 -0
  62. package/dist/vue2/isEmpty-z27q3o-D.js +32 -0
  63. package/dist/vue2/journeyDiagram-XKPGCS4Q-DlXHMS3v.js +885 -0
  64. package/dist/vue2/kanban-definition-3W4ZIXB7-CV6572lv.js +971 -0
  65. package/dist/vue2/katex-CEAw-xiA.js +22097 -0
  66. package/dist/vue2/katex-D8o5-F7C.js +2 -0
  67. package/dist/vue2/line-wvheYP7S.js +30 -0
  68. package/dist/vue2/linear-STTevhnH.js +250 -0
  69. package/dist/vue2/math-DF_v6dOl.js +8 -0
  70. package/dist/vue2/mermaid-parser.core-VAa8Vi1g.js +48 -0
  71. package/dist/vue2/mermaid.core-vqI6KB9k.js +895 -0
  72. package/dist/vue2/mindmap-definition-VGOIOE7T-gtjvHqQ-.js +960 -0
  73. package/dist/vue2/ordinal-DOM6Fa9P.js +61 -0
  74. package/dist/vue2/packet-BFZMPI3H-CG049KmZ.js +7 -0
  75. package/dist/vue2/path-CW_-_Ti7.js +79 -0
  76. package/dist/vue2/pie-7BOR55EZ-BHq0KcLP.js +7 -0
  77. package/dist/vue2/pieDiagram-ADFJNKIX-CTUoM-kp.js +172 -0
  78. package/dist/vue2/purify.es-Cm_tUMzZ.js +547 -0
  79. package/dist/vue2/quadrantDiagram-AYHSOK5B-Njl7BMW7.js +1971 -0
  80. package/dist/vue2/radar-NHE76QYJ-CUoVtrAx.js +7 -0
  81. package/dist/vue2/reduce-BFKSG9Rs.js +451 -0
  82. package/dist/vue2/requirementDiagram-UZGBJVZJ-DKjE3cDK.js +2194 -0
  83. package/dist/vue2/sankeyDiagram-TZEHDZUN-DW2ap3zY.js +885 -0
  84. package/dist/vue2/sequenceDiagram-WL72ISMW-BjMq4OjH.js +3561 -0
  85. package/dist/vue2/src-VlKYSsxJ.js +1975 -0
  86. package/dist/vue2/stateDiagram-FKZM4ZOC-CnvtGM9U.js +224 -0
  87. package/dist/vue2/stateDiagram-v2-4FDKWEC3-C15xi-04.js +32 -0
  88. package/dist/vue2/style.css +1 -1
  89. package/dist/vue2/timeline-definition-IT6M3QCI-C7q6jdLA.js +831 -0
  90. package/dist/vue2/treemap-KMMF4GRG--FdijCcy.js +7 -0
  91. package/dist/vue2/xychartDiagram-PRI3JC2R-UcfQmj72.js +2022 -0
  92. package/dist/vue3/_baseFor-DAbrc8SN.js +309 -0
  93. package/dist/vue3/arc-BqlAOiZb.js +78 -0
  94. package/dist/vue3/architecture-U656AL7Q-Dtuq8BzO.js +7 -0
  95. package/dist/vue3/architectureDiagram-VXUJARFQ-BQS5Ixrn.js +4052 -0
  96. package/dist/vue3/array-TB8zN_HT.js +5 -0
  97. package/dist/vue3/blockDiagram-VD42YOAC-Bp6L6c6e.js +3013 -0
  98. package/dist/vue3/c4Diagram-YG6GDRKO-B15ZDn3Z.js +2956 -0
  99. package/dist/vue3/channel-edTl5mpN.js +3 -0
  100. package/dist/vue3/chunk-4BX2VUAB-eAYYj1bL.js +6 -0
  101. package/dist/vue3/chunk-55IACEB6-CTzuTcHv.js +6 -0
  102. package/dist/vue3/chunk-76Q3JFCE-BrJX66ha.js +19 -0
  103. package/dist/vue3/chunk-ABZYJK2D-gsx40GnJ.js +1971 -0
  104. package/dist/vue3/chunk-ATLVNIR6-CTTwtx-5.js +65 -0
  105. package/dist/vue3/chunk-B4BG7PRW-D8o7VxRH.js +3108 -0
  106. package/dist/vue3/chunk-CVBHYZKI-Cs8lCw3u.js +10 -0
  107. package/dist/vue3/chunk-DI55MBZ5-Dl59YBtR.js +1994 -0
  108. package/dist/vue3/chunk-DNh5sLlG.js +18 -0
  109. package/dist/vue3/chunk-EXTU4WIE-BPc8ye_N.js +7 -0
  110. package/dist/vue3/chunk-FMBD7UC4-PFlLPz_s.js +3 -0
  111. package/dist/vue3/chunk-FPAJGGOC-DPvjUKQ8.js +13428 -0
  112. package/dist/vue3/chunk-FWNWRKHM-BlUTFsPK.js +56 -0
  113. package/dist/vue3/chunk-HN2XXSSU-DueSY85P.js +74 -0
  114. package/dist/vue3/chunk-JA3XYJ7Z-CRet4f6a.js +1845 -0
  115. package/dist/vue3/chunk-JZLCHNYA-Df0-MseJ.js +4861 -0
  116. package/dist/vue3/chunk-LBM3YZW2-B0-w2HZs.js +19 -0
  117. package/dist/vue3/chunk-LHMN2FUI-BOH3yE2u.js +19 -0
  118. package/dist/vue3/chunk-MI3HLSF2-6-T1J0MS.js +1140 -0
  119. package/dist/vue3/chunk-N4CR4FBY-jNnt5D3v.js +39 -0
  120. package/dist/vue3/chunk-O7ZBX7Z2-BEP34BEE.js +26 -0
  121. package/dist/vue3/chunk-QN33PNHL-DsC-XeM9.js +23 -0
  122. package/dist/vue3/chunk-QXUST7PY-DxFRymyS.js +486 -0
  123. package/dist/vue3/chunk-QZHKN3VN-D9B5jQvg.js +11 -0
  124. package/dist/vue3/chunk-S3R3BYOJ-Bs_r55Kk.js +1222 -0
  125. package/dist/vue3/chunk-S6J4BHB3-XXfWHJvh.js +19 -0
  126. package/dist/vue3/chunk-T53DSG4Q-CNvqP6Iy.js +24 -0
  127. package/dist/vue3/chunk-TZMSLE5B-C5ccYWGN.js +55 -0
  128. package/dist/vue3/chunk-XAJISQIX-XsDvU4jW.js +135 -0
  129. package/dist/vue3/classDiagram-2ON5EDUG-Cgf9yVXj.js +33 -0
  130. package/dist/vue3/classDiagram-v2-WZHVMYZB-BtF1_0UK.js +33 -0
  131. package/dist/vue3/clone-Bbr3WSpg.js +7 -0
  132. package/dist/vue3/cose-bilkent-S5V4N54A-Cmf6WLkk.js +2250 -0
  133. package/dist/vue3/cytoscape.esm-nrcriBSO.js +18100 -0
  134. package/dist/vue3/dagre-6UL2VRFP-CTl_U96l.js +298 -0
  135. package/dist/vue3/dagre-DUjlMe_B.js +1496 -0
  136. package/dist/vue3/defaultLocale-BLATqOV5.js +177 -0
  137. package/dist/vue3/diagram-PSM6KHXK-Bl7brR-1.js +497 -0
  138. package/dist/vue3/diagram-QEK2KX5R-CAeywSxy.js +226 -0
  139. package/dist/vue3/diagram-S2PKOQOG-6I6J4WRC.js +144 -0
  140. package/dist/vue3/dist-xWJvauxf.js +49 -0
  141. package/dist/vue3/erDiagram-Q2GNP2WA-C8EbfuTj.js +1603 -0
  142. package/dist/vue3/flatten-CfPhNHUL.js +34 -0
  143. package/dist/vue3/flowDiagram-NV44I4VS-lFr4G2WN.js +4132 -0
  144. package/dist/vue3/ganttDiagram-JELNMOA3-Bvtip7yn.js +3010 -0
  145. package/dist/vue3/gitGraph-F6HP7TQM-OQvD95bN.js +7 -0
  146. package/dist/vue3/gitGraphDiagram-NY62KEGX-Cjvy4fHM.js +634 -0
  147. package/dist/vue3/graphlib-KDKEjVHX.js +344 -0
  148. package/dist/vue3/index.es.min.js +26730 -813
  149. package/dist/vue3/index.umd.min.js +2796 -9
  150. package/dist/vue3/info-NVLQJR56-DBsOnIKy.js +7 -0
  151. package/dist/vue3/infoDiagram-WHAUD3N6-D_isj7oC.js +31 -0
  152. package/dist/vue3/init-hAkIK9Bd.js +13 -0
  153. package/dist/vue3/isEmpty-z27q3o-D.js +32 -0
  154. package/dist/vue3/journeyDiagram-XKPGCS4Q-DlXHMS3v.js +885 -0
  155. package/dist/vue3/kanban-definition-3W4ZIXB7-CV6572lv.js +971 -0
  156. package/dist/vue3/katex-CEAw-xiA.js +22097 -0
  157. package/dist/vue3/katex-D8o5-F7C.js +2 -0
  158. package/dist/vue3/line-wvheYP7S.js +30 -0
  159. package/dist/vue3/linear-STTevhnH.js +250 -0
  160. package/dist/vue3/math-DF_v6dOl.js +8 -0
  161. package/dist/vue3/mermaid-parser.core-VAa8Vi1g.js +48 -0
  162. package/dist/vue3/mermaid.core-vqI6KB9k.js +895 -0
  163. package/dist/vue3/mindmap-definition-VGOIOE7T-gtjvHqQ-.js +960 -0
  164. package/dist/vue3/ordinal-DOM6Fa9P.js +61 -0
  165. package/dist/vue3/packet-BFZMPI3H-CG049KmZ.js +7 -0
  166. package/dist/vue3/path-CW_-_Ti7.js +79 -0
  167. package/dist/vue3/pie-7BOR55EZ-BHq0KcLP.js +7 -0
  168. package/dist/vue3/pieDiagram-ADFJNKIX-CTUoM-kp.js +172 -0
  169. package/dist/vue3/purify.es-Cm_tUMzZ.js +547 -0
  170. package/dist/vue3/quadrantDiagram-AYHSOK5B-Njl7BMW7.js +1971 -0
  171. package/dist/vue3/radar-NHE76QYJ-CUoVtrAx.js +7 -0
  172. package/dist/vue3/reduce-BFKSG9Rs.js +451 -0
  173. package/dist/vue3/requirementDiagram-UZGBJVZJ-DKjE3cDK.js +2194 -0
  174. package/dist/vue3/sankeyDiagram-TZEHDZUN-DW2ap3zY.js +885 -0
  175. package/dist/vue3/sequenceDiagram-WL72ISMW-BjMq4OjH.js +3561 -0
  176. package/dist/vue3/src-VlKYSsxJ.js +1975 -0
  177. package/dist/vue3/stateDiagram-FKZM4ZOC-CnvtGM9U.js +224 -0
  178. package/dist/vue3/stateDiagram-v2-4FDKWEC3-C15xi-04.js +32 -0
  179. package/dist/vue3/style.css +1 -1
  180. package/dist/vue3/timeline-definition-IT6M3QCI-C7q6jdLA.js +831 -0
  181. package/dist/vue3/treemap-KMMF4GRG--FdijCcy.js +7 -0
  182. package/dist/vue3/xychartDiagram-PRI3JC2R-UcfQmj72.js +2022 -0
  183. package/package.json +3 -3
@@ -0,0 +1,2956 @@
1
+ import "./purify.es-Cm_tUMzZ.js";
2
+ import "./_baseFor-DAbrc8SN.js";
3
+ import { g as log, h as __name, p as select_default } from "./src-VlKYSsxJ.js";
4
+ import { B as setAccTitle, I as sanitizeText, _ as getAccDescription, b as getConfig2, c as configureSvgSize, r as assignWithDepth_default, s as common_default, v as getAccTitle, z as setAccDescription } from "./chunk-ABZYJK2D-gsx40GnJ.js";
5
+ import "./math-DF_v6dOl.js";
6
+ import { _ as wrapLabel, n as calculateTextHeight, r as calculateTextWidth } from "./chunk-S3R3BYOJ-Bs_r55Kk.js";
7
+ import { t as require_dist } from "./dist-xWJvauxf.js";
8
+ import { i as drawRect, o as getNoteRect } from "./chunk-TZMSLE5B-C5ccYWGN.js";
9
+ var import_dist = require_dist(), parser = (function() {
10
+ var e = /* @__PURE__ */ __name(function(e, t, n, r) {
11
+ for (n ||= {}, r = e.length; r--; n[e[r]] = t);
12
+ return n;
13
+ }, "o"), n = [1, 24], r = [1, 25], i = [1, 26], a = [1, 27], o = [1, 28], s = [1, 63], l = [1, 64], u = [1, 65], d = [1, 66], f = [1, 67], p = [1, 68], m = [1, 69], h = [1, 29], g = [1, 30], _ = [1, 31], v = [1, 32], y = [1, 33], b = [1, 34], x = [1, 35], S = [1, 36], C = [1, 37], w = [1, 38], T = [1, 39], E = [1, 40], D = [1, 41], O = [1, 42], k = [1, 43], A = [1, 44], j = [1, 45], M = [1, 46], N = [1, 47], P = [1, 48], F = [1, 50], I = [1, 51], L = [1, 52], R = [1, 53], z = [1, 54], B = [1, 55], V = [1, 56], H = [1, 57], U = [1, 58], W = [1, 59], G = [1, 60], K = [14, 42], Ie = [
14
+ 14,
15
+ 34,
16
+ 36,
17
+ 37,
18
+ 38,
19
+ 39,
20
+ 40,
21
+ 41,
22
+ 42,
23
+ 44,
24
+ 45,
25
+ 46,
26
+ 47,
27
+ 48,
28
+ 49,
29
+ 50,
30
+ 51,
31
+ 52,
32
+ 53,
33
+ 54,
34
+ 55,
35
+ 56,
36
+ 57,
37
+ 58,
38
+ 59,
39
+ 60,
40
+ 61,
41
+ 62,
42
+ 63,
43
+ 64,
44
+ 65,
45
+ 66,
46
+ 67,
47
+ 68,
48
+ 69,
49
+ 70,
50
+ 71,
51
+ 72,
52
+ 73,
53
+ 74
54
+ ], q = [
55
+ 12,
56
+ 14,
57
+ 34,
58
+ 36,
59
+ 37,
60
+ 38,
61
+ 39,
62
+ 40,
63
+ 41,
64
+ 42,
65
+ 44,
66
+ 45,
67
+ 46,
68
+ 47,
69
+ 48,
70
+ 49,
71
+ 50,
72
+ 51,
73
+ 52,
74
+ 53,
75
+ 54,
76
+ 55,
77
+ 56,
78
+ 57,
79
+ 58,
80
+ 59,
81
+ 60,
82
+ 61,
83
+ 62,
84
+ 63,
85
+ 64,
86
+ 65,
87
+ 66,
88
+ 67,
89
+ 68,
90
+ 69,
91
+ 70,
92
+ 71,
93
+ 72,
94
+ 73,
95
+ 74
96
+ ], J = [1, 82], Y = [1, 83], X = [1, 84], Z = [1, 85], Q = [
97
+ 12,
98
+ 14,
99
+ 42
100
+ ], Le = [
101
+ 12,
102
+ 14,
103
+ 33,
104
+ 42
105
+ ], Re = [
106
+ 12,
107
+ 14,
108
+ 33,
109
+ 42,
110
+ 76,
111
+ 77,
112
+ 79,
113
+ 80
114
+ ], $ = [12, 33], ze = [
115
+ 34,
116
+ 36,
117
+ 37,
118
+ 38,
119
+ 39,
120
+ 40,
121
+ 41,
122
+ 44,
123
+ 45,
124
+ 46,
125
+ 47,
126
+ 48,
127
+ 49,
128
+ 50,
129
+ 51,
130
+ 52,
131
+ 53,
132
+ 54,
133
+ 55,
134
+ 56,
135
+ 57,
136
+ 58,
137
+ 59,
138
+ 60,
139
+ 61,
140
+ 62,
141
+ 63,
142
+ 64,
143
+ 65,
144
+ 66,
145
+ 67,
146
+ 68,
147
+ 69,
148
+ 70,
149
+ 71,
150
+ 72,
151
+ 73,
152
+ 74
153
+ ], Be = {
154
+ trace: /* @__PURE__ */ __name(function() {}, "trace"),
155
+ yy: {},
156
+ symbols_: {
157
+ error: 2,
158
+ start: 3,
159
+ mermaidDoc: 4,
160
+ direction: 5,
161
+ direction_tb: 6,
162
+ direction_bt: 7,
163
+ direction_rl: 8,
164
+ direction_lr: 9,
165
+ graphConfig: 10,
166
+ C4_CONTEXT: 11,
167
+ NEWLINE: 12,
168
+ statements: 13,
169
+ EOF: 14,
170
+ C4_CONTAINER: 15,
171
+ C4_COMPONENT: 16,
172
+ C4_DYNAMIC: 17,
173
+ C4_DEPLOYMENT: 18,
174
+ otherStatements: 19,
175
+ diagramStatements: 20,
176
+ otherStatement: 21,
177
+ title: 22,
178
+ accDescription: 23,
179
+ acc_title: 24,
180
+ acc_title_value: 25,
181
+ acc_descr: 26,
182
+ acc_descr_value: 27,
183
+ acc_descr_multiline_value: 28,
184
+ boundaryStatement: 29,
185
+ boundaryStartStatement: 30,
186
+ boundaryStopStatement: 31,
187
+ boundaryStart: 32,
188
+ LBRACE: 33,
189
+ ENTERPRISE_BOUNDARY: 34,
190
+ attributes: 35,
191
+ SYSTEM_BOUNDARY: 36,
192
+ BOUNDARY: 37,
193
+ CONTAINER_BOUNDARY: 38,
194
+ NODE: 39,
195
+ NODE_L: 40,
196
+ NODE_R: 41,
197
+ RBRACE: 42,
198
+ diagramStatement: 43,
199
+ PERSON: 44,
200
+ PERSON_EXT: 45,
201
+ SYSTEM: 46,
202
+ SYSTEM_DB: 47,
203
+ SYSTEM_QUEUE: 48,
204
+ SYSTEM_EXT: 49,
205
+ SYSTEM_EXT_DB: 50,
206
+ SYSTEM_EXT_QUEUE: 51,
207
+ CONTAINER: 52,
208
+ CONTAINER_DB: 53,
209
+ CONTAINER_QUEUE: 54,
210
+ CONTAINER_EXT: 55,
211
+ CONTAINER_EXT_DB: 56,
212
+ CONTAINER_EXT_QUEUE: 57,
213
+ COMPONENT: 58,
214
+ COMPONENT_DB: 59,
215
+ COMPONENT_QUEUE: 60,
216
+ COMPONENT_EXT: 61,
217
+ COMPONENT_EXT_DB: 62,
218
+ COMPONENT_EXT_QUEUE: 63,
219
+ REL: 64,
220
+ BIREL: 65,
221
+ REL_U: 66,
222
+ REL_D: 67,
223
+ REL_L: 68,
224
+ REL_R: 69,
225
+ REL_B: 70,
226
+ REL_INDEX: 71,
227
+ UPDATE_EL_STYLE: 72,
228
+ UPDATE_REL_STYLE: 73,
229
+ UPDATE_LAYOUT_CONFIG: 74,
230
+ attribute: 75,
231
+ STR: 76,
232
+ STR_KEY: 77,
233
+ STR_VALUE: 78,
234
+ ATTRIBUTE: 79,
235
+ ATTRIBUTE_EMPTY: 80,
236
+ $accept: 0,
237
+ $end: 1
238
+ },
239
+ terminals_: {
240
+ 2: "error",
241
+ 6: "direction_tb",
242
+ 7: "direction_bt",
243
+ 8: "direction_rl",
244
+ 9: "direction_lr",
245
+ 11: "C4_CONTEXT",
246
+ 12: "NEWLINE",
247
+ 14: "EOF",
248
+ 15: "C4_CONTAINER",
249
+ 16: "C4_COMPONENT",
250
+ 17: "C4_DYNAMIC",
251
+ 18: "C4_DEPLOYMENT",
252
+ 22: "title",
253
+ 23: "accDescription",
254
+ 24: "acc_title",
255
+ 25: "acc_title_value",
256
+ 26: "acc_descr",
257
+ 27: "acc_descr_value",
258
+ 28: "acc_descr_multiline_value",
259
+ 33: "LBRACE",
260
+ 34: "ENTERPRISE_BOUNDARY",
261
+ 36: "SYSTEM_BOUNDARY",
262
+ 37: "BOUNDARY",
263
+ 38: "CONTAINER_BOUNDARY",
264
+ 39: "NODE",
265
+ 40: "NODE_L",
266
+ 41: "NODE_R",
267
+ 42: "RBRACE",
268
+ 44: "PERSON",
269
+ 45: "PERSON_EXT",
270
+ 46: "SYSTEM",
271
+ 47: "SYSTEM_DB",
272
+ 48: "SYSTEM_QUEUE",
273
+ 49: "SYSTEM_EXT",
274
+ 50: "SYSTEM_EXT_DB",
275
+ 51: "SYSTEM_EXT_QUEUE",
276
+ 52: "CONTAINER",
277
+ 53: "CONTAINER_DB",
278
+ 54: "CONTAINER_QUEUE",
279
+ 55: "CONTAINER_EXT",
280
+ 56: "CONTAINER_EXT_DB",
281
+ 57: "CONTAINER_EXT_QUEUE",
282
+ 58: "COMPONENT",
283
+ 59: "COMPONENT_DB",
284
+ 60: "COMPONENT_QUEUE",
285
+ 61: "COMPONENT_EXT",
286
+ 62: "COMPONENT_EXT_DB",
287
+ 63: "COMPONENT_EXT_QUEUE",
288
+ 64: "REL",
289
+ 65: "BIREL",
290
+ 66: "REL_U",
291
+ 67: "REL_D",
292
+ 68: "REL_L",
293
+ 69: "REL_R",
294
+ 70: "REL_B",
295
+ 71: "REL_INDEX",
296
+ 72: "UPDATE_EL_STYLE",
297
+ 73: "UPDATE_REL_STYLE",
298
+ 74: "UPDATE_LAYOUT_CONFIG",
299
+ 76: "STR",
300
+ 77: "STR_KEY",
301
+ 78: "STR_VALUE",
302
+ 79: "ATTRIBUTE",
303
+ 80: "ATTRIBUTE_EMPTY"
304
+ },
305
+ productions_: [
306
+ 0,
307
+ [3, 1],
308
+ [3, 1],
309
+ [5, 1],
310
+ [5, 1],
311
+ [5, 1],
312
+ [5, 1],
313
+ [4, 1],
314
+ [10, 4],
315
+ [10, 4],
316
+ [10, 4],
317
+ [10, 4],
318
+ [10, 4],
319
+ [13, 1],
320
+ [13, 1],
321
+ [13, 2],
322
+ [19, 1],
323
+ [19, 2],
324
+ [19, 3],
325
+ [21, 1],
326
+ [21, 1],
327
+ [21, 2],
328
+ [21, 2],
329
+ [21, 1],
330
+ [29, 3],
331
+ [30, 3],
332
+ [30, 3],
333
+ [30, 4],
334
+ [32, 2],
335
+ [32, 2],
336
+ [32, 2],
337
+ [32, 2],
338
+ [32, 2],
339
+ [32, 2],
340
+ [32, 2],
341
+ [31, 1],
342
+ [20, 1],
343
+ [20, 2],
344
+ [20, 3],
345
+ [43, 2],
346
+ [43, 2],
347
+ [43, 2],
348
+ [43, 2],
349
+ [43, 2],
350
+ [43, 2],
351
+ [43, 2],
352
+ [43, 2],
353
+ [43, 2],
354
+ [43, 2],
355
+ [43, 2],
356
+ [43, 2],
357
+ [43, 2],
358
+ [43, 2],
359
+ [43, 2],
360
+ [43, 2],
361
+ [43, 2],
362
+ [43, 2],
363
+ [43, 2],
364
+ [43, 2],
365
+ [43, 1],
366
+ [43, 2],
367
+ [43, 2],
368
+ [43, 2],
369
+ [43, 2],
370
+ [43, 2],
371
+ [43, 2],
372
+ [43, 2],
373
+ [43, 2],
374
+ [43, 2],
375
+ [43, 2],
376
+ [43, 2],
377
+ [35, 1],
378
+ [35, 2],
379
+ [75, 1],
380
+ [75, 2],
381
+ [75, 1],
382
+ [75, 1]
383
+ ],
384
+ performAction: /* @__PURE__ */ __name(function(e, t, n, r, i, a, o) {
385
+ var s = a.length - 1;
386
+ switch (i) {
387
+ case 3:
388
+ r.setDirection("TB");
389
+ break;
390
+ case 4:
391
+ r.setDirection("BT");
392
+ break;
393
+ case 5:
394
+ r.setDirection("RL");
395
+ break;
396
+ case 6:
397
+ r.setDirection("LR");
398
+ break;
399
+ case 8:
400
+ case 9:
401
+ case 10:
402
+ case 11:
403
+ case 12:
404
+ r.setC4Type(a[s - 3]);
405
+ break;
406
+ case 19:
407
+ r.setTitle(a[s].substring(6)), this.$ = a[s].substring(6);
408
+ break;
409
+ case 20:
410
+ r.setAccDescription(a[s].substring(15)), this.$ = a[s].substring(15);
411
+ break;
412
+ case 21:
413
+ this.$ = a[s].trim(), r.setTitle(this.$);
414
+ break;
415
+ case 22:
416
+ case 23:
417
+ this.$ = a[s].trim(), r.setAccDescription(this.$);
418
+ break;
419
+ case 28:
420
+ a[s].splice(2, 0, "ENTERPRISE"), r.addPersonOrSystemBoundary(...a[s]), this.$ = a[s];
421
+ break;
422
+ case 29:
423
+ a[s].splice(2, 0, "SYSTEM"), r.addPersonOrSystemBoundary(...a[s]), this.$ = a[s];
424
+ break;
425
+ case 30:
426
+ r.addPersonOrSystemBoundary(...a[s]), this.$ = a[s];
427
+ break;
428
+ case 31:
429
+ a[s].splice(2, 0, "CONTAINER"), r.addContainerBoundary(...a[s]), this.$ = a[s];
430
+ break;
431
+ case 32:
432
+ r.addDeploymentNode("node", ...a[s]), this.$ = a[s];
433
+ break;
434
+ case 33:
435
+ r.addDeploymentNode("nodeL", ...a[s]), this.$ = a[s];
436
+ break;
437
+ case 34:
438
+ r.addDeploymentNode("nodeR", ...a[s]), this.$ = a[s];
439
+ break;
440
+ case 35:
441
+ r.popBoundaryParseStack();
442
+ break;
443
+ case 39:
444
+ r.addPersonOrSystem("person", ...a[s]), this.$ = a[s];
445
+ break;
446
+ case 40:
447
+ r.addPersonOrSystem("external_person", ...a[s]), this.$ = a[s];
448
+ break;
449
+ case 41:
450
+ r.addPersonOrSystem("system", ...a[s]), this.$ = a[s];
451
+ break;
452
+ case 42:
453
+ r.addPersonOrSystem("system_db", ...a[s]), this.$ = a[s];
454
+ break;
455
+ case 43:
456
+ r.addPersonOrSystem("system_queue", ...a[s]), this.$ = a[s];
457
+ break;
458
+ case 44:
459
+ r.addPersonOrSystem("external_system", ...a[s]), this.$ = a[s];
460
+ break;
461
+ case 45:
462
+ r.addPersonOrSystem("external_system_db", ...a[s]), this.$ = a[s];
463
+ break;
464
+ case 46:
465
+ r.addPersonOrSystem("external_system_queue", ...a[s]), this.$ = a[s];
466
+ break;
467
+ case 47:
468
+ r.addContainer("container", ...a[s]), this.$ = a[s];
469
+ break;
470
+ case 48:
471
+ r.addContainer("container_db", ...a[s]), this.$ = a[s];
472
+ break;
473
+ case 49:
474
+ r.addContainer("container_queue", ...a[s]), this.$ = a[s];
475
+ break;
476
+ case 50:
477
+ r.addContainer("external_container", ...a[s]), this.$ = a[s];
478
+ break;
479
+ case 51:
480
+ r.addContainer("external_container_db", ...a[s]), this.$ = a[s];
481
+ break;
482
+ case 52:
483
+ r.addContainer("external_container_queue", ...a[s]), this.$ = a[s];
484
+ break;
485
+ case 53:
486
+ r.addComponent("component", ...a[s]), this.$ = a[s];
487
+ break;
488
+ case 54:
489
+ r.addComponent("component_db", ...a[s]), this.$ = a[s];
490
+ break;
491
+ case 55:
492
+ r.addComponent("component_queue", ...a[s]), this.$ = a[s];
493
+ break;
494
+ case 56:
495
+ r.addComponent("external_component", ...a[s]), this.$ = a[s];
496
+ break;
497
+ case 57:
498
+ r.addComponent("external_component_db", ...a[s]), this.$ = a[s];
499
+ break;
500
+ case 58:
501
+ r.addComponent("external_component_queue", ...a[s]), this.$ = a[s];
502
+ break;
503
+ case 60:
504
+ r.addRel("rel", ...a[s]), this.$ = a[s];
505
+ break;
506
+ case 61:
507
+ r.addRel("birel", ...a[s]), this.$ = a[s];
508
+ break;
509
+ case 62:
510
+ r.addRel("rel_u", ...a[s]), this.$ = a[s];
511
+ break;
512
+ case 63:
513
+ r.addRel("rel_d", ...a[s]), this.$ = a[s];
514
+ break;
515
+ case 64:
516
+ r.addRel("rel_l", ...a[s]), this.$ = a[s];
517
+ break;
518
+ case 65:
519
+ r.addRel("rel_r", ...a[s]), this.$ = a[s];
520
+ break;
521
+ case 66:
522
+ r.addRel("rel_b", ...a[s]), this.$ = a[s];
523
+ break;
524
+ case 67:
525
+ a[s].splice(0, 1), r.addRel("rel", ...a[s]), this.$ = a[s];
526
+ break;
527
+ case 68:
528
+ r.updateElStyle("update_el_style", ...a[s]), this.$ = a[s];
529
+ break;
530
+ case 69:
531
+ r.updateRelStyle("update_rel_style", ...a[s]), this.$ = a[s];
532
+ break;
533
+ case 70:
534
+ r.updateLayoutConfig("update_layout_config", ...a[s]), this.$ = a[s];
535
+ break;
536
+ case 71:
537
+ this.$ = [a[s]];
538
+ break;
539
+ case 72:
540
+ a[s].unshift(a[s - 1]), this.$ = a[s];
541
+ break;
542
+ case 73:
543
+ case 75:
544
+ this.$ = a[s].trim();
545
+ break;
546
+ case 74:
547
+ let e = {};
548
+ e[a[s - 1].trim()] = a[s].trim(), this.$ = e;
549
+ break;
550
+ case 76:
551
+ this.$ = "";
552
+ break;
553
+ }
554
+ }, "anonymous"),
555
+ table: [
556
+ {
557
+ 3: 1,
558
+ 4: 2,
559
+ 5: 3,
560
+ 6: [1, 5],
561
+ 7: [1, 6],
562
+ 8: [1, 7],
563
+ 9: [1, 8],
564
+ 10: 4,
565
+ 11: [1, 9],
566
+ 15: [1, 10],
567
+ 16: [1, 11],
568
+ 17: [1, 12],
569
+ 18: [1, 13]
570
+ },
571
+ { 1: [3] },
572
+ { 1: [2, 1] },
573
+ { 1: [2, 2] },
574
+ { 1: [2, 7] },
575
+ { 1: [2, 3] },
576
+ { 1: [2, 4] },
577
+ { 1: [2, 5] },
578
+ { 1: [2, 6] },
579
+ { 12: [1, 14] },
580
+ { 12: [1, 15] },
581
+ { 12: [1, 16] },
582
+ { 12: [1, 17] },
583
+ { 12: [1, 18] },
584
+ {
585
+ 13: 19,
586
+ 19: 20,
587
+ 20: 21,
588
+ 21: 22,
589
+ 22: n,
590
+ 23: r,
591
+ 24: i,
592
+ 26: a,
593
+ 28: o,
594
+ 29: 49,
595
+ 30: 61,
596
+ 32: 62,
597
+ 34: s,
598
+ 36: l,
599
+ 37: u,
600
+ 38: d,
601
+ 39: f,
602
+ 40: p,
603
+ 41: m,
604
+ 43: 23,
605
+ 44: h,
606
+ 45: g,
607
+ 46: _,
608
+ 47: v,
609
+ 48: y,
610
+ 49: b,
611
+ 50: x,
612
+ 51: S,
613
+ 52: C,
614
+ 53: w,
615
+ 54: T,
616
+ 55: E,
617
+ 56: D,
618
+ 57: O,
619
+ 58: k,
620
+ 59: A,
621
+ 60: j,
622
+ 61: M,
623
+ 62: N,
624
+ 63: P,
625
+ 64: F,
626
+ 65: I,
627
+ 66: L,
628
+ 67: R,
629
+ 68: z,
630
+ 69: B,
631
+ 70: V,
632
+ 71: H,
633
+ 72: U,
634
+ 73: W,
635
+ 74: G
636
+ },
637
+ {
638
+ 13: 70,
639
+ 19: 20,
640
+ 20: 21,
641
+ 21: 22,
642
+ 22: n,
643
+ 23: r,
644
+ 24: i,
645
+ 26: a,
646
+ 28: o,
647
+ 29: 49,
648
+ 30: 61,
649
+ 32: 62,
650
+ 34: s,
651
+ 36: l,
652
+ 37: u,
653
+ 38: d,
654
+ 39: f,
655
+ 40: p,
656
+ 41: m,
657
+ 43: 23,
658
+ 44: h,
659
+ 45: g,
660
+ 46: _,
661
+ 47: v,
662
+ 48: y,
663
+ 49: b,
664
+ 50: x,
665
+ 51: S,
666
+ 52: C,
667
+ 53: w,
668
+ 54: T,
669
+ 55: E,
670
+ 56: D,
671
+ 57: O,
672
+ 58: k,
673
+ 59: A,
674
+ 60: j,
675
+ 61: M,
676
+ 62: N,
677
+ 63: P,
678
+ 64: F,
679
+ 65: I,
680
+ 66: L,
681
+ 67: R,
682
+ 68: z,
683
+ 69: B,
684
+ 70: V,
685
+ 71: H,
686
+ 72: U,
687
+ 73: W,
688
+ 74: G
689
+ },
690
+ {
691
+ 13: 71,
692
+ 19: 20,
693
+ 20: 21,
694
+ 21: 22,
695
+ 22: n,
696
+ 23: r,
697
+ 24: i,
698
+ 26: a,
699
+ 28: o,
700
+ 29: 49,
701
+ 30: 61,
702
+ 32: 62,
703
+ 34: s,
704
+ 36: l,
705
+ 37: u,
706
+ 38: d,
707
+ 39: f,
708
+ 40: p,
709
+ 41: m,
710
+ 43: 23,
711
+ 44: h,
712
+ 45: g,
713
+ 46: _,
714
+ 47: v,
715
+ 48: y,
716
+ 49: b,
717
+ 50: x,
718
+ 51: S,
719
+ 52: C,
720
+ 53: w,
721
+ 54: T,
722
+ 55: E,
723
+ 56: D,
724
+ 57: O,
725
+ 58: k,
726
+ 59: A,
727
+ 60: j,
728
+ 61: M,
729
+ 62: N,
730
+ 63: P,
731
+ 64: F,
732
+ 65: I,
733
+ 66: L,
734
+ 67: R,
735
+ 68: z,
736
+ 69: B,
737
+ 70: V,
738
+ 71: H,
739
+ 72: U,
740
+ 73: W,
741
+ 74: G
742
+ },
743
+ {
744
+ 13: 72,
745
+ 19: 20,
746
+ 20: 21,
747
+ 21: 22,
748
+ 22: n,
749
+ 23: r,
750
+ 24: i,
751
+ 26: a,
752
+ 28: o,
753
+ 29: 49,
754
+ 30: 61,
755
+ 32: 62,
756
+ 34: s,
757
+ 36: l,
758
+ 37: u,
759
+ 38: d,
760
+ 39: f,
761
+ 40: p,
762
+ 41: m,
763
+ 43: 23,
764
+ 44: h,
765
+ 45: g,
766
+ 46: _,
767
+ 47: v,
768
+ 48: y,
769
+ 49: b,
770
+ 50: x,
771
+ 51: S,
772
+ 52: C,
773
+ 53: w,
774
+ 54: T,
775
+ 55: E,
776
+ 56: D,
777
+ 57: O,
778
+ 58: k,
779
+ 59: A,
780
+ 60: j,
781
+ 61: M,
782
+ 62: N,
783
+ 63: P,
784
+ 64: F,
785
+ 65: I,
786
+ 66: L,
787
+ 67: R,
788
+ 68: z,
789
+ 69: B,
790
+ 70: V,
791
+ 71: H,
792
+ 72: U,
793
+ 73: W,
794
+ 74: G
795
+ },
796
+ {
797
+ 13: 73,
798
+ 19: 20,
799
+ 20: 21,
800
+ 21: 22,
801
+ 22: n,
802
+ 23: r,
803
+ 24: i,
804
+ 26: a,
805
+ 28: o,
806
+ 29: 49,
807
+ 30: 61,
808
+ 32: 62,
809
+ 34: s,
810
+ 36: l,
811
+ 37: u,
812
+ 38: d,
813
+ 39: f,
814
+ 40: p,
815
+ 41: m,
816
+ 43: 23,
817
+ 44: h,
818
+ 45: g,
819
+ 46: _,
820
+ 47: v,
821
+ 48: y,
822
+ 49: b,
823
+ 50: x,
824
+ 51: S,
825
+ 52: C,
826
+ 53: w,
827
+ 54: T,
828
+ 55: E,
829
+ 56: D,
830
+ 57: O,
831
+ 58: k,
832
+ 59: A,
833
+ 60: j,
834
+ 61: M,
835
+ 62: N,
836
+ 63: P,
837
+ 64: F,
838
+ 65: I,
839
+ 66: L,
840
+ 67: R,
841
+ 68: z,
842
+ 69: B,
843
+ 70: V,
844
+ 71: H,
845
+ 72: U,
846
+ 73: W,
847
+ 74: G
848
+ },
849
+ { 14: [1, 74] },
850
+ e(K, [2, 13], {
851
+ 43: 23,
852
+ 29: 49,
853
+ 30: 61,
854
+ 32: 62,
855
+ 20: 75,
856
+ 34: s,
857
+ 36: l,
858
+ 37: u,
859
+ 38: d,
860
+ 39: f,
861
+ 40: p,
862
+ 41: m,
863
+ 44: h,
864
+ 45: g,
865
+ 46: _,
866
+ 47: v,
867
+ 48: y,
868
+ 49: b,
869
+ 50: x,
870
+ 51: S,
871
+ 52: C,
872
+ 53: w,
873
+ 54: T,
874
+ 55: E,
875
+ 56: D,
876
+ 57: O,
877
+ 58: k,
878
+ 59: A,
879
+ 60: j,
880
+ 61: M,
881
+ 62: N,
882
+ 63: P,
883
+ 64: F,
884
+ 65: I,
885
+ 66: L,
886
+ 67: R,
887
+ 68: z,
888
+ 69: B,
889
+ 70: V,
890
+ 71: H,
891
+ 72: U,
892
+ 73: W,
893
+ 74: G
894
+ }),
895
+ e(K, [2, 14]),
896
+ e(Ie, [2, 16], { 12: [1, 76] }),
897
+ e(K, [2, 36], { 12: [1, 77] }),
898
+ e(q, [2, 19]),
899
+ e(q, [2, 20]),
900
+ { 25: [1, 78] },
901
+ { 27: [1, 79] },
902
+ e(q, [2, 23]),
903
+ {
904
+ 35: 80,
905
+ 75: 81,
906
+ 76: J,
907
+ 77: Y,
908
+ 79: X,
909
+ 80: Z
910
+ },
911
+ {
912
+ 35: 86,
913
+ 75: 81,
914
+ 76: J,
915
+ 77: Y,
916
+ 79: X,
917
+ 80: Z
918
+ },
919
+ {
920
+ 35: 87,
921
+ 75: 81,
922
+ 76: J,
923
+ 77: Y,
924
+ 79: X,
925
+ 80: Z
926
+ },
927
+ {
928
+ 35: 88,
929
+ 75: 81,
930
+ 76: J,
931
+ 77: Y,
932
+ 79: X,
933
+ 80: Z
934
+ },
935
+ {
936
+ 35: 89,
937
+ 75: 81,
938
+ 76: J,
939
+ 77: Y,
940
+ 79: X,
941
+ 80: Z
942
+ },
943
+ {
944
+ 35: 90,
945
+ 75: 81,
946
+ 76: J,
947
+ 77: Y,
948
+ 79: X,
949
+ 80: Z
950
+ },
951
+ {
952
+ 35: 91,
953
+ 75: 81,
954
+ 76: J,
955
+ 77: Y,
956
+ 79: X,
957
+ 80: Z
958
+ },
959
+ {
960
+ 35: 92,
961
+ 75: 81,
962
+ 76: J,
963
+ 77: Y,
964
+ 79: X,
965
+ 80: Z
966
+ },
967
+ {
968
+ 35: 93,
969
+ 75: 81,
970
+ 76: J,
971
+ 77: Y,
972
+ 79: X,
973
+ 80: Z
974
+ },
975
+ {
976
+ 35: 94,
977
+ 75: 81,
978
+ 76: J,
979
+ 77: Y,
980
+ 79: X,
981
+ 80: Z
982
+ },
983
+ {
984
+ 35: 95,
985
+ 75: 81,
986
+ 76: J,
987
+ 77: Y,
988
+ 79: X,
989
+ 80: Z
990
+ },
991
+ {
992
+ 35: 96,
993
+ 75: 81,
994
+ 76: J,
995
+ 77: Y,
996
+ 79: X,
997
+ 80: Z
998
+ },
999
+ {
1000
+ 35: 97,
1001
+ 75: 81,
1002
+ 76: J,
1003
+ 77: Y,
1004
+ 79: X,
1005
+ 80: Z
1006
+ },
1007
+ {
1008
+ 35: 98,
1009
+ 75: 81,
1010
+ 76: J,
1011
+ 77: Y,
1012
+ 79: X,
1013
+ 80: Z
1014
+ },
1015
+ {
1016
+ 35: 99,
1017
+ 75: 81,
1018
+ 76: J,
1019
+ 77: Y,
1020
+ 79: X,
1021
+ 80: Z
1022
+ },
1023
+ {
1024
+ 35: 100,
1025
+ 75: 81,
1026
+ 76: J,
1027
+ 77: Y,
1028
+ 79: X,
1029
+ 80: Z
1030
+ },
1031
+ {
1032
+ 35: 101,
1033
+ 75: 81,
1034
+ 76: J,
1035
+ 77: Y,
1036
+ 79: X,
1037
+ 80: Z
1038
+ },
1039
+ {
1040
+ 35: 102,
1041
+ 75: 81,
1042
+ 76: J,
1043
+ 77: Y,
1044
+ 79: X,
1045
+ 80: Z
1046
+ },
1047
+ {
1048
+ 35: 103,
1049
+ 75: 81,
1050
+ 76: J,
1051
+ 77: Y,
1052
+ 79: X,
1053
+ 80: Z
1054
+ },
1055
+ {
1056
+ 35: 104,
1057
+ 75: 81,
1058
+ 76: J,
1059
+ 77: Y,
1060
+ 79: X,
1061
+ 80: Z
1062
+ },
1063
+ e(Q, [2, 59]),
1064
+ {
1065
+ 35: 105,
1066
+ 75: 81,
1067
+ 76: J,
1068
+ 77: Y,
1069
+ 79: X,
1070
+ 80: Z
1071
+ },
1072
+ {
1073
+ 35: 106,
1074
+ 75: 81,
1075
+ 76: J,
1076
+ 77: Y,
1077
+ 79: X,
1078
+ 80: Z
1079
+ },
1080
+ {
1081
+ 35: 107,
1082
+ 75: 81,
1083
+ 76: J,
1084
+ 77: Y,
1085
+ 79: X,
1086
+ 80: Z
1087
+ },
1088
+ {
1089
+ 35: 108,
1090
+ 75: 81,
1091
+ 76: J,
1092
+ 77: Y,
1093
+ 79: X,
1094
+ 80: Z
1095
+ },
1096
+ {
1097
+ 35: 109,
1098
+ 75: 81,
1099
+ 76: J,
1100
+ 77: Y,
1101
+ 79: X,
1102
+ 80: Z
1103
+ },
1104
+ {
1105
+ 35: 110,
1106
+ 75: 81,
1107
+ 76: J,
1108
+ 77: Y,
1109
+ 79: X,
1110
+ 80: Z
1111
+ },
1112
+ {
1113
+ 35: 111,
1114
+ 75: 81,
1115
+ 76: J,
1116
+ 77: Y,
1117
+ 79: X,
1118
+ 80: Z
1119
+ },
1120
+ {
1121
+ 35: 112,
1122
+ 75: 81,
1123
+ 76: J,
1124
+ 77: Y,
1125
+ 79: X,
1126
+ 80: Z
1127
+ },
1128
+ {
1129
+ 35: 113,
1130
+ 75: 81,
1131
+ 76: J,
1132
+ 77: Y,
1133
+ 79: X,
1134
+ 80: Z
1135
+ },
1136
+ {
1137
+ 35: 114,
1138
+ 75: 81,
1139
+ 76: J,
1140
+ 77: Y,
1141
+ 79: X,
1142
+ 80: Z
1143
+ },
1144
+ {
1145
+ 35: 115,
1146
+ 75: 81,
1147
+ 76: J,
1148
+ 77: Y,
1149
+ 79: X,
1150
+ 80: Z
1151
+ },
1152
+ {
1153
+ 20: 116,
1154
+ 29: 49,
1155
+ 30: 61,
1156
+ 32: 62,
1157
+ 34: s,
1158
+ 36: l,
1159
+ 37: u,
1160
+ 38: d,
1161
+ 39: f,
1162
+ 40: p,
1163
+ 41: m,
1164
+ 43: 23,
1165
+ 44: h,
1166
+ 45: g,
1167
+ 46: _,
1168
+ 47: v,
1169
+ 48: y,
1170
+ 49: b,
1171
+ 50: x,
1172
+ 51: S,
1173
+ 52: C,
1174
+ 53: w,
1175
+ 54: T,
1176
+ 55: E,
1177
+ 56: D,
1178
+ 57: O,
1179
+ 58: k,
1180
+ 59: A,
1181
+ 60: j,
1182
+ 61: M,
1183
+ 62: N,
1184
+ 63: P,
1185
+ 64: F,
1186
+ 65: I,
1187
+ 66: L,
1188
+ 67: R,
1189
+ 68: z,
1190
+ 69: B,
1191
+ 70: V,
1192
+ 71: H,
1193
+ 72: U,
1194
+ 73: W,
1195
+ 74: G
1196
+ },
1197
+ {
1198
+ 12: [1, 118],
1199
+ 33: [1, 117]
1200
+ },
1201
+ {
1202
+ 35: 119,
1203
+ 75: 81,
1204
+ 76: J,
1205
+ 77: Y,
1206
+ 79: X,
1207
+ 80: Z
1208
+ },
1209
+ {
1210
+ 35: 120,
1211
+ 75: 81,
1212
+ 76: J,
1213
+ 77: Y,
1214
+ 79: X,
1215
+ 80: Z
1216
+ },
1217
+ {
1218
+ 35: 121,
1219
+ 75: 81,
1220
+ 76: J,
1221
+ 77: Y,
1222
+ 79: X,
1223
+ 80: Z
1224
+ },
1225
+ {
1226
+ 35: 122,
1227
+ 75: 81,
1228
+ 76: J,
1229
+ 77: Y,
1230
+ 79: X,
1231
+ 80: Z
1232
+ },
1233
+ {
1234
+ 35: 123,
1235
+ 75: 81,
1236
+ 76: J,
1237
+ 77: Y,
1238
+ 79: X,
1239
+ 80: Z
1240
+ },
1241
+ {
1242
+ 35: 124,
1243
+ 75: 81,
1244
+ 76: J,
1245
+ 77: Y,
1246
+ 79: X,
1247
+ 80: Z
1248
+ },
1249
+ {
1250
+ 35: 125,
1251
+ 75: 81,
1252
+ 76: J,
1253
+ 77: Y,
1254
+ 79: X,
1255
+ 80: Z
1256
+ },
1257
+ { 14: [1, 126] },
1258
+ { 14: [1, 127] },
1259
+ { 14: [1, 128] },
1260
+ { 14: [1, 129] },
1261
+ { 1: [2, 8] },
1262
+ e(K, [2, 15]),
1263
+ e(Ie, [2, 17], {
1264
+ 21: 22,
1265
+ 19: 130,
1266
+ 22: n,
1267
+ 23: r,
1268
+ 24: i,
1269
+ 26: a,
1270
+ 28: o
1271
+ }),
1272
+ e(K, [2, 37], {
1273
+ 19: 20,
1274
+ 20: 21,
1275
+ 21: 22,
1276
+ 43: 23,
1277
+ 29: 49,
1278
+ 30: 61,
1279
+ 32: 62,
1280
+ 13: 131,
1281
+ 22: n,
1282
+ 23: r,
1283
+ 24: i,
1284
+ 26: a,
1285
+ 28: o,
1286
+ 34: s,
1287
+ 36: l,
1288
+ 37: u,
1289
+ 38: d,
1290
+ 39: f,
1291
+ 40: p,
1292
+ 41: m,
1293
+ 44: h,
1294
+ 45: g,
1295
+ 46: _,
1296
+ 47: v,
1297
+ 48: y,
1298
+ 49: b,
1299
+ 50: x,
1300
+ 51: S,
1301
+ 52: C,
1302
+ 53: w,
1303
+ 54: T,
1304
+ 55: E,
1305
+ 56: D,
1306
+ 57: O,
1307
+ 58: k,
1308
+ 59: A,
1309
+ 60: j,
1310
+ 61: M,
1311
+ 62: N,
1312
+ 63: P,
1313
+ 64: F,
1314
+ 65: I,
1315
+ 66: L,
1316
+ 67: R,
1317
+ 68: z,
1318
+ 69: B,
1319
+ 70: V,
1320
+ 71: H,
1321
+ 72: U,
1322
+ 73: W,
1323
+ 74: G
1324
+ }),
1325
+ e(q, [2, 21]),
1326
+ e(q, [2, 22]),
1327
+ e(Q, [2, 39]),
1328
+ e(Le, [2, 71], {
1329
+ 75: 81,
1330
+ 35: 132,
1331
+ 76: J,
1332
+ 77: Y,
1333
+ 79: X,
1334
+ 80: Z
1335
+ }),
1336
+ e(Re, [2, 73]),
1337
+ { 78: [1, 133] },
1338
+ e(Re, [2, 75]),
1339
+ e(Re, [2, 76]),
1340
+ e(Q, [2, 40]),
1341
+ e(Q, [2, 41]),
1342
+ e(Q, [2, 42]),
1343
+ e(Q, [2, 43]),
1344
+ e(Q, [2, 44]),
1345
+ e(Q, [2, 45]),
1346
+ e(Q, [2, 46]),
1347
+ e(Q, [2, 47]),
1348
+ e(Q, [2, 48]),
1349
+ e(Q, [2, 49]),
1350
+ e(Q, [2, 50]),
1351
+ e(Q, [2, 51]),
1352
+ e(Q, [2, 52]),
1353
+ e(Q, [2, 53]),
1354
+ e(Q, [2, 54]),
1355
+ e(Q, [2, 55]),
1356
+ e(Q, [2, 56]),
1357
+ e(Q, [2, 57]),
1358
+ e(Q, [2, 58]),
1359
+ e(Q, [2, 60]),
1360
+ e(Q, [2, 61]),
1361
+ e(Q, [2, 62]),
1362
+ e(Q, [2, 63]),
1363
+ e(Q, [2, 64]),
1364
+ e(Q, [2, 65]),
1365
+ e(Q, [2, 66]),
1366
+ e(Q, [2, 67]),
1367
+ e(Q, [2, 68]),
1368
+ e(Q, [2, 69]),
1369
+ e(Q, [2, 70]),
1370
+ {
1371
+ 31: 134,
1372
+ 42: [1, 135]
1373
+ },
1374
+ { 12: [1, 136] },
1375
+ { 33: [1, 137] },
1376
+ e($, [2, 28]),
1377
+ e($, [2, 29]),
1378
+ e($, [2, 30]),
1379
+ e($, [2, 31]),
1380
+ e($, [2, 32]),
1381
+ e($, [2, 33]),
1382
+ e($, [2, 34]),
1383
+ { 1: [2, 9] },
1384
+ { 1: [2, 10] },
1385
+ { 1: [2, 11] },
1386
+ { 1: [2, 12] },
1387
+ e(Ie, [2, 18]),
1388
+ e(K, [2, 38]),
1389
+ e(Le, [2, 72]),
1390
+ e(Re, [2, 74]),
1391
+ e(Q, [2, 24]),
1392
+ e(Q, [2, 35]),
1393
+ e(ze, [2, 25]),
1394
+ e(ze, [2, 26], { 12: [1, 138] }),
1395
+ e(ze, [2, 27])
1396
+ ],
1397
+ defaultActions: {
1398
+ 2: [2, 1],
1399
+ 3: [2, 2],
1400
+ 4: [2, 7],
1401
+ 5: [2, 3],
1402
+ 6: [2, 4],
1403
+ 7: [2, 5],
1404
+ 8: [2, 6],
1405
+ 74: [2, 8],
1406
+ 126: [2, 9],
1407
+ 127: [2, 10],
1408
+ 128: [2, 11],
1409
+ 129: [2, 12]
1410
+ },
1411
+ parseError: /* @__PURE__ */ __name(function(e, t) {
1412
+ if (t.recoverable) this.trace(e);
1413
+ else {
1414
+ var n = Error(e);
1415
+ throw n.hash = t, n;
1416
+ }
1417
+ }, "parseError"),
1418
+ parse: /* @__PURE__ */ __name(function(e) {
1419
+ var n = this, r = [0], i = [], a = [null], o = [], s = this.table, l = "", u = 0, d = 0, f = 0, p = 2, m = 1, h = o.slice.call(arguments, 1), g = Object.create(this.lexer), _ = { yy: {} };
1420
+ for (var v in this.yy) Object.prototype.hasOwnProperty.call(this.yy, v) && (_.yy[v] = this.yy[v]);
1421
+ g.setInput(e, _.yy), _.yy.lexer = g, _.yy.parser = this, g.yylloc === void 0 && (g.yylloc = {});
1422
+ var y = g.yylloc;
1423
+ o.push(y);
1424
+ var b = g.options && g.options.ranges;
1425
+ typeof _.yy.parseError == "function" ? this.parseError = _.yy.parseError : this.parseError = Object.getPrototypeOf(this).parseError;
1426
+ function x(e) {
1427
+ r.length -= 2 * e, a.length -= e, o.length -= e;
1428
+ }
1429
+ __name(x, "popStack");
1430
+ function S() {
1431
+ var e = i.pop() || g.lex() || m;
1432
+ return typeof e != "number" && (e instanceof Array && (i = e, e = i.pop()), e = n.symbols_[e] || e), e;
1433
+ }
1434
+ __name(S, "lex");
1435
+ for (var C, w, T, E, D, O = {}, k, A, j, M;;) {
1436
+ if (T = r[r.length - 1], this.defaultActions[T] ? E = this.defaultActions[T] : (C ??= S(), E = s[T] && s[T][C]), E === void 0 || !E.length || !E[0]) {
1437
+ var N = "";
1438
+ for (k in M = [], s[T]) this.terminals_[k] && k > p && M.push("'" + this.terminals_[k] + "'");
1439
+ N = g.showPosition ? "Parse error on line " + (u + 1) + ":\n" + g.showPosition() + "\nExpecting " + M.join(", ") + ", got '" + (this.terminals_[C] || C) + "'" : "Parse error on line " + (u + 1) + ": Unexpected " + (C == m ? "end of input" : "'" + (this.terminals_[C] || C) + "'"), this.parseError(N, {
1440
+ text: g.match,
1441
+ token: this.terminals_[C] || C,
1442
+ line: g.yylineno,
1443
+ loc: y,
1444
+ expected: M
1445
+ });
1446
+ }
1447
+ if (E[0] instanceof Array && E.length > 1) throw Error("Parse Error: multiple actions possible at state: " + T + ", token: " + C);
1448
+ switch (E[0]) {
1449
+ case 1:
1450
+ r.push(C), a.push(g.yytext), o.push(g.yylloc), r.push(E[1]), C = null, w ? (C = w, w = null) : (d = g.yyleng, l = g.yytext, u = g.yylineno, y = g.yylloc, f > 0 && f--);
1451
+ break;
1452
+ case 2:
1453
+ if (A = this.productions_[E[1]][1], O.$ = a[a.length - A], O._$ = {
1454
+ first_line: o[o.length - (A || 1)].first_line,
1455
+ last_line: o[o.length - 1].last_line,
1456
+ first_column: o[o.length - (A || 1)].first_column,
1457
+ last_column: o[o.length - 1].last_column
1458
+ }, b && (O._$.range = [o[o.length - (A || 1)].range[0], o[o.length - 1].range[1]]), D = this.performAction.apply(O, [
1459
+ l,
1460
+ d,
1461
+ u,
1462
+ _.yy,
1463
+ E[1],
1464
+ a,
1465
+ o
1466
+ ].concat(h)), D !== void 0) return D;
1467
+ A && (r = r.slice(0, -1 * A * 2), a = a.slice(0, -1 * A), o = o.slice(0, -1 * A)), r.push(this.productions_[E[1]][0]), a.push(O.$), o.push(O._$), j = s[r[r.length - 2]][r[r.length - 1]], r.push(j);
1468
+ break;
1469
+ case 3: return !0;
1470
+ }
1471
+ }
1472
+ return !0;
1473
+ }, "parse")
1474
+ };
1475
+ Be.lexer = /* @__PURE__ */ (function() {
1476
+ return {
1477
+ EOF: 1,
1478
+ parseError: /* @__PURE__ */ __name(function(e, t) {
1479
+ if (this.yy.parser) this.yy.parser.parseError(e, t);
1480
+ else throw Error(e);
1481
+ }, "parseError"),
1482
+ setInput: /* @__PURE__ */ __name(function(e, t) {
1483
+ return this.yy = t || 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 = {
1484
+ first_line: 1,
1485
+ first_column: 0,
1486
+ last_line: 1,
1487
+ last_column: 0
1488
+ }, this.options.ranges && (this.yylloc.range = [0, 0]), this.offset = 0, this;
1489
+ }, "setInput"),
1490
+ input: /* @__PURE__ */ __name(function() {
1491
+ var e = this._input[0];
1492
+ return this.yytext += e, this.yyleng++, this.offset++, this.match += e, this.matched += e, e.match(/(?:\r\n?|\n).*/g) ? (this.yylineno++, this.yylloc.last_line++) : this.yylloc.last_column++, this.options.ranges && this.yylloc.range[1]++, this._input = this._input.slice(1), e;
1493
+ }, "input"),
1494
+ unput: /* @__PURE__ */ __name(function(e) {
1495
+ var t = e.length, n = e.split(/(?:\r\n?|\n)/g);
1496
+ this._input = e + this._input, this.yytext = this.yytext.substr(0, this.yytext.length - t), this.offset -= t;
1497
+ var r = this.match.split(/(?:\r\n?|\n)/g);
1498
+ this.match = this.match.substr(0, this.match.length - 1), this.matched = this.matched.substr(0, this.matched.length - 1), n.length - 1 && (this.yylineno -= n.length - 1);
1499
+ var i = this.yylloc.range;
1500
+ return this.yylloc = {
1501
+ first_line: this.yylloc.first_line,
1502
+ last_line: this.yylineno + 1,
1503
+ first_column: this.yylloc.first_column,
1504
+ last_column: n ? (n.length === r.length ? this.yylloc.first_column : 0) + r[r.length - n.length].length - n[0].length : this.yylloc.first_column - t
1505
+ }, this.options.ranges && (this.yylloc.range = [i[0], i[0] + this.yyleng - t]), this.yyleng = this.yytext.length, this;
1506
+ }, "unput"),
1507
+ more: /* @__PURE__ */ __name(function() {
1508
+ return this._more = !0, this;
1509
+ }, "more"),
1510
+ reject: /* @__PURE__ */ __name(function() {
1511
+ if (this.options.backtrack_lexer) this._backtrack = !0;
1512
+ else 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).\n" + this.showPosition(), {
1513
+ text: "",
1514
+ token: null,
1515
+ line: this.yylineno
1516
+ });
1517
+ return this;
1518
+ }, "reject"),
1519
+ less: /* @__PURE__ */ __name(function(e) {
1520
+ this.unput(this.match.slice(e));
1521
+ }, "less"),
1522
+ pastInput: /* @__PURE__ */ __name(function() {
1523
+ var e = this.matched.substr(0, this.matched.length - this.match.length);
1524
+ return (e.length > 20 ? "..." : "") + e.substr(-20).replace(/\n/g, "");
1525
+ }, "pastInput"),
1526
+ upcomingInput: /* @__PURE__ */ __name(function() {
1527
+ var e = this.match;
1528
+ return e.length < 20 && (e += this._input.substr(0, 20 - e.length)), (e.substr(0, 20) + (e.length > 20 ? "..." : "")).replace(/\n/g, "");
1529
+ }, "upcomingInput"),
1530
+ showPosition: /* @__PURE__ */ __name(function() {
1531
+ var e = this.pastInput(), t = Array(e.length + 1).join("-");
1532
+ return e + this.upcomingInput() + "\n" + t + "^";
1533
+ }, "showPosition"),
1534
+ test_match: /* @__PURE__ */ __name(function(e, t) {
1535
+ var n, r, i;
1536
+ if (this.options.backtrack_lexer && (i = {
1537
+ yylineno: this.yylineno,
1538
+ yylloc: {
1539
+ first_line: this.yylloc.first_line,
1540
+ last_line: this.last_line,
1541
+ first_column: this.yylloc.first_column,
1542
+ last_column: this.yylloc.last_column
1543
+ },
1544
+ yytext: this.yytext,
1545
+ match: this.match,
1546
+ matches: this.matches,
1547
+ matched: this.matched,
1548
+ yyleng: this.yyleng,
1549
+ offset: this.offset,
1550
+ _more: this._more,
1551
+ _input: this._input,
1552
+ yy: this.yy,
1553
+ conditionStack: this.conditionStack.slice(0),
1554
+ done: this.done
1555
+ }, this.options.ranges && (i.yylloc.range = this.yylloc.range.slice(0))), r = e[0].match(/(?:\r\n?|\n).*/g), r && (this.yylineno += r.length), this.yylloc = {
1556
+ first_line: this.yylloc.last_line,
1557
+ last_line: this.yylineno + 1,
1558
+ first_column: this.yylloc.last_column,
1559
+ last_column: r ? r[r.length - 1].length - r[r.length - 1].match(/\r?\n?/)[0].length : this.yylloc.last_column + e[0].length
1560
+ }, 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], n = this.performAction.call(this, this.yy, this, t, this.conditionStack[this.conditionStack.length - 1]), this.done && this._input && (this.done = !1), n) return n;
1561
+ if (this._backtrack) {
1562
+ for (var a in i) this[a] = i[a];
1563
+ return !1;
1564
+ }
1565
+ return !1;
1566
+ }, "test_match"),
1567
+ next: /* @__PURE__ */ __name(function() {
1568
+ if (this.done) return this.EOF;
1569
+ this._input || (this.done = !0);
1570
+ var e, t, n, r;
1571
+ this._more || (this.yytext = "", this.match = "");
1572
+ for (var i = this._currentRules(), a = 0; a < i.length; a++) if (n = this._input.match(this.rules[i[a]]), n && (!t || n[0].length > t[0].length)) {
1573
+ if (t = n, r = a, this.options.backtrack_lexer) {
1574
+ if (e = this.test_match(n, i[a]), e !== !1) return e;
1575
+ if (this._backtrack) {
1576
+ t = !1;
1577
+ continue;
1578
+ } else return !1;
1579
+ } else if (!this.options.flex) break;
1580
+ }
1581
+ return t ? (e = this.test_match(t, i[r]), e === !1 ? !1 : e) : this._input === "" ? this.EOF : this.parseError("Lexical error on line " + (this.yylineno + 1) + ". Unrecognized text.\n" + this.showPosition(), {
1582
+ text: "",
1583
+ token: null,
1584
+ line: this.yylineno
1585
+ });
1586
+ }, "next"),
1587
+ lex: /* @__PURE__ */ __name(function() {
1588
+ return this.next() || this.lex();
1589
+ }, "lex"),
1590
+ begin: /* @__PURE__ */ __name(function(e) {
1591
+ this.conditionStack.push(e);
1592
+ }, "begin"),
1593
+ popState: /* @__PURE__ */ __name(function() {
1594
+ return this.conditionStack.length - 1 > 0 ? this.conditionStack.pop() : this.conditionStack[0];
1595
+ }, "popState"),
1596
+ _currentRules: /* @__PURE__ */ __name(function() {
1597
+ return this.conditionStack.length && this.conditionStack[this.conditionStack.length - 1] ? this.conditions[this.conditionStack[this.conditionStack.length - 1]].rules : this.conditions.INITIAL.rules;
1598
+ }, "_currentRules"),
1599
+ topState: /* @__PURE__ */ __name(function(e) {
1600
+ return e = this.conditionStack.length - 1 - Math.abs(e || 0), e >= 0 ? this.conditionStack[e] : "INITIAL";
1601
+ }, "topState"),
1602
+ pushState: /* @__PURE__ */ __name(function(e) {
1603
+ this.begin(e);
1604
+ }, "pushState"),
1605
+ stateStackSize: /* @__PURE__ */ __name(function() {
1606
+ return this.conditionStack.length;
1607
+ }, "stateStackSize"),
1608
+ options: {},
1609
+ performAction: /* @__PURE__ */ __name(function(e, t, n, r) {
1610
+ switch (n) {
1611
+ case 0: return 6;
1612
+ case 1: return 7;
1613
+ case 2: return 8;
1614
+ case 3: return 9;
1615
+ case 4: return 22;
1616
+ case 5: return 23;
1617
+ case 6: return this.begin("acc_title"), 24;
1618
+ case 7: return this.popState(), "acc_title_value";
1619
+ case 8: return this.begin("acc_descr"), 26;
1620
+ case 9: return this.popState(), "acc_descr_value";
1621
+ case 10:
1622
+ this.begin("acc_descr_multiline");
1623
+ break;
1624
+ case 11:
1625
+ this.popState();
1626
+ break;
1627
+ case 12: return "acc_descr_multiline_value";
1628
+ case 13: break;
1629
+ case 14:
1630
+ c;
1631
+ break;
1632
+ case 15: return 12;
1633
+ case 16: break;
1634
+ case 17: return 11;
1635
+ case 18: return 15;
1636
+ case 19: return 16;
1637
+ case 20: return 17;
1638
+ case 21: return 18;
1639
+ case 22: return this.begin("person_ext"), 45;
1640
+ case 23: return this.begin("person"), 44;
1641
+ case 24: return this.begin("system_ext_queue"), 51;
1642
+ case 25: return this.begin("system_ext_db"), 50;
1643
+ case 26: return this.begin("system_ext"), 49;
1644
+ case 27: return this.begin("system_queue"), 48;
1645
+ case 28: return this.begin("system_db"), 47;
1646
+ case 29: return this.begin("system"), 46;
1647
+ case 30: return this.begin("boundary"), 37;
1648
+ case 31: return this.begin("enterprise_boundary"), 34;
1649
+ case 32: return this.begin("system_boundary"), 36;
1650
+ case 33: return this.begin("container_ext_queue"), 57;
1651
+ case 34: return this.begin("container_ext_db"), 56;
1652
+ case 35: return this.begin("container_ext"), 55;
1653
+ case 36: return this.begin("container_queue"), 54;
1654
+ case 37: return this.begin("container_db"), 53;
1655
+ case 38: return this.begin("container"), 52;
1656
+ case 39: return this.begin("container_boundary"), 38;
1657
+ case 40: return this.begin("component_ext_queue"), 63;
1658
+ case 41: return this.begin("component_ext_db"), 62;
1659
+ case 42: return this.begin("component_ext"), 61;
1660
+ case 43: return this.begin("component_queue"), 60;
1661
+ case 44: return this.begin("component_db"), 59;
1662
+ case 45: return this.begin("component"), 58;
1663
+ case 46: return this.begin("node"), 39;
1664
+ case 47: return this.begin("node"), 39;
1665
+ case 48: return this.begin("node_l"), 40;
1666
+ case 49: return this.begin("node_r"), 41;
1667
+ case 50: return this.begin("rel"), 64;
1668
+ case 51: return this.begin("birel"), 65;
1669
+ case 52: return this.begin("rel_u"), 66;
1670
+ case 53: return this.begin("rel_u"), 66;
1671
+ case 54: return this.begin("rel_d"), 67;
1672
+ case 55: return this.begin("rel_d"), 67;
1673
+ case 56: return this.begin("rel_l"), 68;
1674
+ case 57: return this.begin("rel_l"), 68;
1675
+ case 58: return this.begin("rel_r"), 69;
1676
+ case 59: return this.begin("rel_r"), 69;
1677
+ case 60: return this.begin("rel_b"), 70;
1678
+ case 61: return this.begin("rel_index"), 71;
1679
+ case 62: return this.begin("update_el_style"), 72;
1680
+ case 63: return this.begin("update_rel_style"), 73;
1681
+ case 64: return this.begin("update_layout_config"), 74;
1682
+ case 65: return "EOF_IN_STRUCT";
1683
+ case 66: return this.begin("attribute"), "ATTRIBUTE_EMPTY";
1684
+ case 67:
1685
+ this.begin("attribute");
1686
+ break;
1687
+ case 68:
1688
+ this.popState(), this.popState();
1689
+ break;
1690
+ case 69: return 80;
1691
+ case 70: break;
1692
+ case 71: return 80;
1693
+ case 72:
1694
+ this.begin("string");
1695
+ break;
1696
+ case 73:
1697
+ this.popState();
1698
+ break;
1699
+ case 74: return "STR";
1700
+ case 75:
1701
+ this.begin("string_kv");
1702
+ break;
1703
+ case 76: return this.begin("string_kv_key"), "STR_KEY";
1704
+ case 77:
1705
+ this.popState(), this.begin("string_kv_value");
1706
+ break;
1707
+ case 78: return "STR_VALUE";
1708
+ case 79:
1709
+ this.popState(), this.popState();
1710
+ break;
1711
+ case 80: return "STR";
1712
+ case 81: return "LBRACE";
1713
+ case 82: return "RBRACE";
1714
+ case 83: return "SPACE";
1715
+ case 84: return "EOL";
1716
+ case 85: return 14;
1717
+ }
1718
+ }, "anonymous"),
1719
+ rules: [
1720
+ /^(?:.*direction\s+TB[^\n]*)/,
1721
+ /^(?:.*direction\s+BT[^\n]*)/,
1722
+ /^(?:.*direction\s+RL[^\n]*)/,
1723
+ /^(?:.*direction\s+LR[^\n]*)/,
1724
+ /^(?:title\s[^#\n;]+)/,
1725
+ /^(?:accDescription\s[^#\n;]+)/,
1726
+ /^(?:accTitle\s*:\s*)/,
1727
+ /^(?:(?!\n||)*[^\n]*)/,
1728
+ /^(?:accDescr\s*:\s*)/,
1729
+ /^(?:(?!\n||)*[^\n]*)/,
1730
+ /^(?:accDescr\s*\{\s*)/,
1731
+ /^(?:[\}])/,
1732
+ /^(?:[^\}]*)/,
1733
+ /^(?:%%(?!\{)*[^\n]*(\r?\n?)+)/,
1734
+ /^(?:%%[^\n]*(\r?\n)*)/,
1735
+ /^(?:\s*(\r?\n)+)/,
1736
+ /^(?:\s+)/,
1737
+ /^(?:C4Context\b)/,
1738
+ /^(?:C4Container\b)/,
1739
+ /^(?:C4Component\b)/,
1740
+ /^(?:C4Dynamic\b)/,
1741
+ /^(?:C4Deployment\b)/,
1742
+ /^(?:Person_Ext\b)/,
1743
+ /^(?:Person\b)/,
1744
+ /^(?:SystemQueue_Ext\b)/,
1745
+ /^(?:SystemDb_Ext\b)/,
1746
+ /^(?:System_Ext\b)/,
1747
+ /^(?:SystemQueue\b)/,
1748
+ /^(?:SystemDb\b)/,
1749
+ /^(?:System\b)/,
1750
+ /^(?:Boundary\b)/,
1751
+ /^(?:Enterprise_Boundary\b)/,
1752
+ /^(?:System_Boundary\b)/,
1753
+ /^(?:ContainerQueue_Ext\b)/,
1754
+ /^(?:ContainerDb_Ext\b)/,
1755
+ /^(?:Container_Ext\b)/,
1756
+ /^(?:ContainerQueue\b)/,
1757
+ /^(?:ContainerDb\b)/,
1758
+ /^(?:Container\b)/,
1759
+ /^(?:Container_Boundary\b)/,
1760
+ /^(?:ComponentQueue_Ext\b)/,
1761
+ /^(?:ComponentDb_Ext\b)/,
1762
+ /^(?:Component_Ext\b)/,
1763
+ /^(?:ComponentQueue\b)/,
1764
+ /^(?:ComponentDb\b)/,
1765
+ /^(?:Component\b)/,
1766
+ /^(?:Deployment_Node\b)/,
1767
+ /^(?:Node\b)/,
1768
+ /^(?:Node_L\b)/,
1769
+ /^(?:Node_R\b)/,
1770
+ /^(?:Rel\b)/,
1771
+ /^(?:BiRel\b)/,
1772
+ /^(?:Rel_Up\b)/,
1773
+ /^(?:Rel_U\b)/,
1774
+ /^(?:Rel_Down\b)/,
1775
+ /^(?:Rel_D\b)/,
1776
+ /^(?:Rel_Left\b)/,
1777
+ /^(?:Rel_L\b)/,
1778
+ /^(?:Rel_Right\b)/,
1779
+ /^(?:Rel_R\b)/,
1780
+ /^(?:Rel_Back\b)/,
1781
+ /^(?:RelIndex\b)/,
1782
+ /^(?:UpdateElementStyle\b)/,
1783
+ /^(?:UpdateRelStyle\b)/,
1784
+ /^(?:UpdateLayoutConfig\b)/,
1785
+ /^(?:$)/,
1786
+ /^(?:[(][ ]*[,])/,
1787
+ /^(?:[(])/,
1788
+ /^(?:[)])/,
1789
+ /^(?:,,)/,
1790
+ /^(?:,)/,
1791
+ /^(?:[ ]*["]["])/,
1792
+ /^(?:[ ]*["])/,
1793
+ /^(?:["])/,
1794
+ /^(?:[^"]*)/,
1795
+ /^(?:[ ]*[\$])/,
1796
+ /^(?:[^=]*)/,
1797
+ /^(?:[=][ ]*["])/,
1798
+ /^(?:[^"]+)/,
1799
+ /^(?:["])/,
1800
+ /^(?:[^,]+)/,
1801
+ /^(?:\{)/,
1802
+ /^(?:\})/,
1803
+ /^(?:[\s]+)/,
1804
+ /^(?:[\n\r]+)/,
1805
+ /^(?:$)/
1806
+ ],
1807
+ conditions: {
1808
+ acc_descr_multiline: {
1809
+ rules: [11, 12],
1810
+ inclusive: !1
1811
+ },
1812
+ acc_descr: {
1813
+ rules: [9],
1814
+ inclusive: !1
1815
+ },
1816
+ acc_title: {
1817
+ rules: [7],
1818
+ inclusive: !1
1819
+ },
1820
+ string_kv_value: {
1821
+ rules: [78, 79],
1822
+ inclusive: !1
1823
+ },
1824
+ string_kv_key: {
1825
+ rules: [77],
1826
+ inclusive: !1
1827
+ },
1828
+ string_kv: {
1829
+ rules: [76],
1830
+ inclusive: !1
1831
+ },
1832
+ string: {
1833
+ rules: [73, 74],
1834
+ inclusive: !1
1835
+ },
1836
+ attribute: {
1837
+ rules: [
1838
+ 68,
1839
+ 69,
1840
+ 70,
1841
+ 71,
1842
+ 72,
1843
+ 75,
1844
+ 80
1845
+ ],
1846
+ inclusive: !1
1847
+ },
1848
+ update_layout_config: {
1849
+ rules: [
1850
+ 65,
1851
+ 66,
1852
+ 67,
1853
+ 68
1854
+ ],
1855
+ inclusive: !1
1856
+ },
1857
+ update_rel_style: {
1858
+ rules: [
1859
+ 65,
1860
+ 66,
1861
+ 67,
1862
+ 68
1863
+ ],
1864
+ inclusive: !1
1865
+ },
1866
+ update_el_style: {
1867
+ rules: [
1868
+ 65,
1869
+ 66,
1870
+ 67,
1871
+ 68
1872
+ ],
1873
+ inclusive: !1
1874
+ },
1875
+ rel_b: {
1876
+ rules: [
1877
+ 65,
1878
+ 66,
1879
+ 67,
1880
+ 68
1881
+ ],
1882
+ inclusive: !1
1883
+ },
1884
+ rel_r: {
1885
+ rules: [
1886
+ 65,
1887
+ 66,
1888
+ 67,
1889
+ 68
1890
+ ],
1891
+ inclusive: !1
1892
+ },
1893
+ rel_l: {
1894
+ rules: [
1895
+ 65,
1896
+ 66,
1897
+ 67,
1898
+ 68
1899
+ ],
1900
+ inclusive: !1
1901
+ },
1902
+ rel_d: {
1903
+ rules: [
1904
+ 65,
1905
+ 66,
1906
+ 67,
1907
+ 68
1908
+ ],
1909
+ inclusive: !1
1910
+ },
1911
+ rel_u: {
1912
+ rules: [
1913
+ 65,
1914
+ 66,
1915
+ 67,
1916
+ 68
1917
+ ],
1918
+ inclusive: !1
1919
+ },
1920
+ rel_bi: {
1921
+ rules: [],
1922
+ inclusive: !1
1923
+ },
1924
+ rel: {
1925
+ rules: [
1926
+ 65,
1927
+ 66,
1928
+ 67,
1929
+ 68
1930
+ ],
1931
+ inclusive: !1
1932
+ },
1933
+ node_r: {
1934
+ rules: [
1935
+ 65,
1936
+ 66,
1937
+ 67,
1938
+ 68
1939
+ ],
1940
+ inclusive: !1
1941
+ },
1942
+ node_l: {
1943
+ rules: [
1944
+ 65,
1945
+ 66,
1946
+ 67,
1947
+ 68
1948
+ ],
1949
+ inclusive: !1
1950
+ },
1951
+ node: {
1952
+ rules: [
1953
+ 65,
1954
+ 66,
1955
+ 67,
1956
+ 68
1957
+ ],
1958
+ inclusive: !1
1959
+ },
1960
+ index: {
1961
+ rules: [],
1962
+ inclusive: !1
1963
+ },
1964
+ rel_index: {
1965
+ rules: [
1966
+ 65,
1967
+ 66,
1968
+ 67,
1969
+ 68
1970
+ ],
1971
+ inclusive: !1
1972
+ },
1973
+ component_ext_queue: {
1974
+ rules: [],
1975
+ inclusive: !1
1976
+ },
1977
+ component_ext_db: {
1978
+ rules: [
1979
+ 65,
1980
+ 66,
1981
+ 67,
1982
+ 68
1983
+ ],
1984
+ inclusive: !1
1985
+ },
1986
+ component_ext: {
1987
+ rules: [
1988
+ 65,
1989
+ 66,
1990
+ 67,
1991
+ 68
1992
+ ],
1993
+ inclusive: !1
1994
+ },
1995
+ component_queue: {
1996
+ rules: [
1997
+ 65,
1998
+ 66,
1999
+ 67,
2000
+ 68
2001
+ ],
2002
+ inclusive: !1
2003
+ },
2004
+ component_db: {
2005
+ rules: [
2006
+ 65,
2007
+ 66,
2008
+ 67,
2009
+ 68
2010
+ ],
2011
+ inclusive: !1
2012
+ },
2013
+ component: {
2014
+ rules: [
2015
+ 65,
2016
+ 66,
2017
+ 67,
2018
+ 68
2019
+ ],
2020
+ inclusive: !1
2021
+ },
2022
+ container_boundary: {
2023
+ rules: [
2024
+ 65,
2025
+ 66,
2026
+ 67,
2027
+ 68
2028
+ ],
2029
+ inclusive: !1
2030
+ },
2031
+ container_ext_queue: {
2032
+ rules: [
2033
+ 65,
2034
+ 66,
2035
+ 67,
2036
+ 68
2037
+ ],
2038
+ inclusive: !1
2039
+ },
2040
+ container_ext_db: {
2041
+ rules: [
2042
+ 65,
2043
+ 66,
2044
+ 67,
2045
+ 68
2046
+ ],
2047
+ inclusive: !1
2048
+ },
2049
+ container_ext: {
2050
+ rules: [
2051
+ 65,
2052
+ 66,
2053
+ 67,
2054
+ 68
2055
+ ],
2056
+ inclusive: !1
2057
+ },
2058
+ container_queue: {
2059
+ rules: [
2060
+ 65,
2061
+ 66,
2062
+ 67,
2063
+ 68
2064
+ ],
2065
+ inclusive: !1
2066
+ },
2067
+ container_db: {
2068
+ rules: [
2069
+ 65,
2070
+ 66,
2071
+ 67,
2072
+ 68
2073
+ ],
2074
+ inclusive: !1
2075
+ },
2076
+ container: {
2077
+ rules: [
2078
+ 65,
2079
+ 66,
2080
+ 67,
2081
+ 68
2082
+ ],
2083
+ inclusive: !1
2084
+ },
2085
+ birel: {
2086
+ rules: [
2087
+ 65,
2088
+ 66,
2089
+ 67,
2090
+ 68
2091
+ ],
2092
+ inclusive: !1
2093
+ },
2094
+ system_boundary: {
2095
+ rules: [
2096
+ 65,
2097
+ 66,
2098
+ 67,
2099
+ 68
2100
+ ],
2101
+ inclusive: !1
2102
+ },
2103
+ enterprise_boundary: {
2104
+ rules: [
2105
+ 65,
2106
+ 66,
2107
+ 67,
2108
+ 68
2109
+ ],
2110
+ inclusive: !1
2111
+ },
2112
+ boundary: {
2113
+ rules: [
2114
+ 65,
2115
+ 66,
2116
+ 67,
2117
+ 68
2118
+ ],
2119
+ inclusive: !1
2120
+ },
2121
+ system_ext_queue: {
2122
+ rules: [
2123
+ 65,
2124
+ 66,
2125
+ 67,
2126
+ 68
2127
+ ],
2128
+ inclusive: !1
2129
+ },
2130
+ system_ext_db: {
2131
+ rules: [
2132
+ 65,
2133
+ 66,
2134
+ 67,
2135
+ 68
2136
+ ],
2137
+ inclusive: !1
2138
+ },
2139
+ system_ext: {
2140
+ rules: [
2141
+ 65,
2142
+ 66,
2143
+ 67,
2144
+ 68
2145
+ ],
2146
+ inclusive: !1
2147
+ },
2148
+ system_queue: {
2149
+ rules: [
2150
+ 65,
2151
+ 66,
2152
+ 67,
2153
+ 68
2154
+ ],
2155
+ inclusive: !1
2156
+ },
2157
+ system_db: {
2158
+ rules: [
2159
+ 65,
2160
+ 66,
2161
+ 67,
2162
+ 68
2163
+ ],
2164
+ inclusive: !1
2165
+ },
2166
+ system: {
2167
+ rules: [
2168
+ 65,
2169
+ 66,
2170
+ 67,
2171
+ 68
2172
+ ],
2173
+ inclusive: !1
2174
+ },
2175
+ person_ext: {
2176
+ rules: [
2177
+ 65,
2178
+ 66,
2179
+ 67,
2180
+ 68
2181
+ ],
2182
+ inclusive: !1
2183
+ },
2184
+ person: {
2185
+ rules: [
2186
+ 65,
2187
+ 66,
2188
+ 67,
2189
+ 68
2190
+ ],
2191
+ inclusive: !1
2192
+ },
2193
+ INITIAL: {
2194
+ rules: [
2195
+ 0,
2196
+ 1,
2197
+ 2,
2198
+ 3,
2199
+ 4,
2200
+ 5,
2201
+ 6,
2202
+ 8,
2203
+ 10,
2204
+ 13,
2205
+ 14,
2206
+ 15,
2207
+ 16,
2208
+ 17,
2209
+ 18,
2210
+ 19,
2211
+ 20,
2212
+ 21,
2213
+ 22,
2214
+ 23,
2215
+ 24,
2216
+ 25,
2217
+ 26,
2218
+ 27,
2219
+ 28,
2220
+ 29,
2221
+ 30,
2222
+ 31,
2223
+ 32,
2224
+ 33,
2225
+ 34,
2226
+ 35,
2227
+ 36,
2228
+ 37,
2229
+ 38,
2230
+ 39,
2231
+ 40,
2232
+ 41,
2233
+ 42,
2234
+ 43,
2235
+ 44,
2236
+ 45,
2237
+ 46,
2238
+ 47,
2239
+ 48,
2240
+ 49,
2241
+ 50,
2242
+ 51,
2243
+ 52,
2244
+ 53,
2245
+ 54,
2246
+ 55,
2247
+ 56,
2248
+ 57,
2249
+ 58,
2250
+ 59,
2251
+ 60,
2252
+ 61,
2253
+ 62,
2254
+ 63,
2255
+ 64,
2256
+ 81,
2257
+ 82,
2258
+ 83,
2259
+ 84,
2260
+ 85
2261
+ ],
2262
+ inclusive: !0
2263
+ }
2264
+ }
2265
+ };
2266
+ })();
2267
+ function Ve() {
2268
+ this.yy = {};
2269
+ }
2270
+ return __name(Ve, "Parser"), Ve.prototype = Be, Be.Parser = Ve, new Ve();
2271
+ })();
2272
+ parser.parser = parser;
2273
+ var c4Diagram_default = parser, c4ShapeArray = [], boundaryParseStack = [""], currentBoundaryParse = "global", parentBoundaryParse = "", boundaries = [{
2274
+ alias: "global",
2275
+ label: { text: "global" },
2276
+ type: { text: "global" },
2277
+ tags: null,
2278
+ link: null,
2279
+ parentBoundary: ""
2280
+ }], rels = [], title = "", wrapEnabled = !1, c4ShapeInRow = 4, c4BoundaryInRow = 2, c4Type, getC4Type = /* @__PURE__ */ __name(function() {
2281
+ return c4Type;
2282
+ }, "getC4Type"), setC4Type = /* @__PURE__ */ __name(function(e) {
2283
+ c4Type = sanitizeText(e, getConfig2());
2284
+ }, "setC4Type"), addRel = /* @__PURE__ */ __name(function(e, t, n, r, i, a, o, s, l) {
2285
+ if (e == null || t == null || n == null || r == null) return;
2286
+ let u = {}, d = rels.find((e) => e.from === t && e.to === n);
2287
+ if (d ? u = d : rels.push(u), u.type = e, u.from = t, u.to = n, u.label = { text: r }, i == null) u.techn = { text: "" };
2288
+ else if (typeof i == "object") {
2289
+ let [e, t] = Object.entries(i)[0];
2290
+ u[e] = { text: t };
2291
+ } else u.techn = { text: i };
2292
+ if (a == null) u.descr = { text: "" };
2293
+ else if (typeof a == "object") {
2294
+ let [e, t] = Object.entries(a)[0];
2295
+ u[e] = { text: t };
2296
+ } else u.descr = { text: a };
2297
+ if (typeof o == "object") {
2298
+ let [e, t] = Object.entries(o)[0];
2299
+ u[e] = t;
2300
+ } else u.sprite = o;
2301
+ if (typeof s == "object") {
2302
+ let [e, t] = Object.entries(s)[0];
2303
+ u[e] = t;
2304
+ } else u.tags = s;
2305
+ if (typeof l == "object") {
2306
+ let [e, t] = Object.entries(l)[0];
2307
+ u[e] = t;
2308
+ } else u.link = l;
2309
+ u.wrap = autoWrap();
2310
+ }, "addRel"), addPersonOrSystem = /* @__PURE__ */ __name(function(e, t, n, r, i, a, o) {
2311
+ if (t === null || n === null) return;
2312
+ let s = {}, l = c4ShapeArray.find((e) => e.alias === t);
2313
+ if (l && t === l.alias ? s = l : (s.alias = t, c4ShapeArray.push(s)), n == null ? s.label = { text: "" } : s.label = { text: n }, r == null) s.descr = { text: "" };
2314
+ else if (typeof r == "object") {
2315
+ let [e, t] = Object.entries(r)[0];
2316
+ s[e] = { text: t };
2317
+ } else s.descr = { text: r };
2318
+ if (typeof i == "object") {
2319
+ let [e, t] = Object.entries(i)[0];
2320
+ s[e] = t;
2321
+ } else s.sprite = i;
2322
+ if (typeof a == "object") {
2323
+ let [e, t] = Object.entries(a)[0];
2324
+ s[e] = t;
2325
+ } else s.tags = a;
2326
+ if (typeof o == "object") {
2327
+ let [e, t] = Object.entries(o)[0];
2328
+ s[e] = t;
2329
+ } else s.link = o;
2330
+ s.typeC4Shape = { text: e }, s.parentBoundary = currentBoundaryParse, s.wrap = autoWrap();
2331
+ }, "addPersonOrSystem"), addContainer = /* @__PURE__ */ __name(function(e, t, n, r, i, a, o, s) {
2332
+ if (t === null || n === null) return;
2333
+ let l = {}, u = c4ShapeArray.find((e) => e.alias === t);
2334
+ if (u && t === u.alias ? l = u : (l.alias = t, c4ShapeArray.push(l)), n == null ? l.label = { text: "" } : l.label = { text: n }, r == null) l.techn = { text: "" };
2335
+ else if (typeof r == "object") {
2336
+ let [e, t] = Object.entries(r)[0];
2337
+ l[e] = { text: t };
2338
+ } else l.techn = { text: r };
2339
+ if (i == null) l.descr = { text: "" };
2340
+ else if (typeof i == "object") {
2341
+ let [e, t] = Object.entries(i)[0];
2342
+ l[e] = { text: t };
2343
+ } else l.descr = { text: i };
2344
+ if (typeof a == "object") {
2345
+ let [e, t] = Object.entries(a)[0];
2346
+ l[e] = t;
2347
+ } else l.sprite = a;
2348
+ if (typeof o == "object") {
2349
+ let [e, t] = Object.entries(o)[0];
2350
+ l[e] = t;
2351
+ } else l.tags = o;
2352
+ if (typeof s == "object") {
2353
+ let [e, t] = Object.entries(s)[0];
2354
+ l[e] = t;
2355
+ } else l.link = s;
2356
+ l.wrap = autoWrap(), l.typeC4Shape = { text: e }, l.parentBoundary = currentBoundaryParse;
2357
+ }, "addContainer"), addComponent = /* @__PURE__ */ __name(function(e, t, n, r, i, a, o, s) {
2358
+ if (t === null || n === null) return;
2359
+ let l = {}, u = c4ShapeArray.find((e) => e.alias === t);
2360
+ if (u && t === u.alias ? l = u : (l.alias = t, c4ShapeArray.push(l)), n == null ? l.label = { text: "" } : l.label = { text: n }, r == null) l.techn = { text: "" };
2361
+ else if (typeof r == "object") {
2362
+ let [e, t] = Object.entries(r)[0];
2363
+ l[e] = { text: t };
2364
+ } else l.techn = { text: r };
2365
+ if (i == null) l.descr = { text: "" };
2366
+ else if (typeof i == "object") {
2367
+ let [e, t] = Object.entries(i)[0];
2368
+ l[e] = { text: t };
2369
+ } else l.descr = { text: i };
2370
+ if (typeof a == "object") {
2371
+ let [e, t] = Object.entries(a)[0];
2372
+ l[e] = t;
2373
+ } else l.sprite = a;
2374
+ if (typeof o == "object") {
2375
+ let [e, t] = Object.entries(o)[0];
2376
+ l[e] = t;
2377
+ } else l.tags = o;
2378
+ if (typeof s == "object") {
2379
+ let [e, t] = Object.entries(s)[0];
2380
+ l[e] = t;
2381
+ } else l.link = s;
2382
+ l.wrap = autoWrap(), l.typeC4Shape = { text: e }, l.parentBoundary = currentBoundaryParse;
2383
+ }, "addComponent"), addPersonOrSystemBoundary = /* @__PURE__ */ __name(function(e, t, n, r, i) {
2384
+ if (e === null || t === null) return;
2385
+ let a = {}, o = boundaries.find((t) => t.alias === e);
2386
+ if (o && e === o.alias ? a = o : (a.alias = e, boundaries.push(a)), t == null ? a.label = { text: "" } : a.label = { text: t }, n == null) a.type = { text: "system" };
2387
+ else if (typeof n == "object") {
2388
+ let [e, t] = Object.entries(n)[0];
2389
+ a[e] = { text: t };
2390
+ } else a.type = { text: n };
2391
+ if (typeof r == "object") {
2392
+ let [e, t] = Object.entries(r)[0];
2393
+ a[e] = t;
2394
+ } else a.tags = r;
2395
+ if (typeof i == "object") {
2396
+ let [e, t] = Object.entries(i)[0];
2397
+ a[e] = t;
2398
+ } else a.link = i;
2399
+ a.parentBoundary = currentBoundaryParse, a.wrap = autoWrap(), parentBoundaryParse = currentBoundaryParse, currentBoundaryParse = e, boundaryParseStack.push(parentBoundaryParse);
2400
+ }, "addPersonOrSystemBoundary"), addContainerBoundary = /* @__PURE__ */ __name(function(e, t, n, r, i) {
2401
+ if (e === null || t === null) return;
2402
+ let a = {}, o = boundaries.find((t) => t.alias === e);
2403
+ if (o && e === o.alias ? a = o : (a.alias = e, boundaries.push(a)), t == null ? a.label = { text: "" } : a.label = { text: t }, n == null) a.type = { text: "container" };
2404
+ else if (typeof n == "object") {
2405
+ let [e, t] = Object.entries(n)[0];
2406
+ a[e] = { text: t };
2407
+ } else a.type = { text: n };
2408
+ if (typeof r == "object") {
2409
+ let [e, t] = Object.entries(r)[0];
2410
+ a[e] = t;
2411
+ } else a.tags = r;
2412
+ if (typeof i == "object") {
2413
+ let [e, t] = Object.entries(i)[0];
2414
+ a[e] = t;
2415
+ } else a.link = i;
2416
+ a.parentBoundary = currentBoundaryParse, a.wrap = autoWrap(), parentBoundaryParse = currentBoundaryParse, currentBoundaryParse = e, boundaryParseStack.push(parentBoundaryParse);
2417
+ }, "addContainerBoundary"), addDeploymentNode = /* @__PURE__ */ __name(function(e, t, n, r, i, a, o, s) {
2418
+ if (t === null || n === null) return;
2419
+ let l = {}, u = boundaries.find((e) => e.alias === t);
2420
+ if (u && t === u.alias ? l = u : (l.alias = t, boundaries.push(l)), n == null ? l.label = { text: "" } : l.label = { text: n }, r == null) l.type = { text: "node" };
2421
+ else if (typeof r == "object") {
2422
+ let [e, t] = Object.entries(r)[0];
2423
+ l[e] = { text: t };
2424
+ } else l.type = { text: r };
2425
+ if (i == null) l.descr = { text: "" };
2426
+ else if (typeof i == "object") {
2427
+ let [e, t] = Object.entries(i)[0];
2428
+ l[e] = { text: t };
2429
+ } else l.descr = { text: i };
2430
+ if (typeof o == "object") {
2431
+ let [e, t] = Object.entries(o)[0];
2432
+ l[e] = t;
2433
+ } else l.tags = o;
2434
+ if (typeof s == "object") {
2435
+ let [e, t] = Object.entries(s)[0];
2436
+ l[e] = t;
2437
+ } else l.link = s;
2438
+ l.nodeType = e, l.parentBoundary = currentBoundaryParse, l.wrap = autoWrap(), parentBoundaryParse = currentBoundaryParse, currentBoundaryParse = t, boundaryParseStack.push(parentBoundaryParse);
2439
+ }, "addDeploymentNode"), popBoundaryParseStack = /* @__PURE__ */ __name(function() {
2440
+ currentBoundaryParse = parentBoundaryParse, boundaryParseStack.pop(), parentBoundaryParse = boundaryParseStack.pop(), boundaryParseStack.push(parentBoundaryParse);
2441
+ }, "popBoundaryParseStack"), updateElStyle = /* @__PURE__ */ __name(function(e, t, n, r, i, a, o, s, l, u, d) {
2442
+ let f = c4ShapeArray.find((e) => e.alias === t);
2443
+ if (!(f === void 0 && (f = boundaries.find((e) => e.alias === t), f === void 0))) {
2444
+ if (n != null) if (typeof n == "object") {
2445
+ let [e, t] = Object.entries(n)[0];
2446
+ f[e] = t;
2447
+ } else f.bgColor = n;
2448
+ if (r != null) if (typeof r == "object") {
2449
+ let [e, t] = Object.entries(r)[0];
2450
+ f[e] = t;
2451
+ } else f.fontColor = r;
2452
+ if (i != null) if (typeof i == "object") {
2453
+ let [e, t] = Object.entries(i)[0];
2454
+ f[e] = t;
2455
+ } else f.borderColor = i;
2456
+ if (a != null) if (typeof a == "object") {
2457
+ let [e, t] = Object.entries(a)[0];
2458
+ f[e] = t;
2459
+ } else f.shadowing = a;
2460
+ if (o != null) if (typeof o == "object") {
2461
+ let [e, t] = Object.entries(o)[0];
2462
+ f[e] = t;
2463
+ } else f.shape = o;
2464
+ if (s != null) if (typeof s == "object") {
2465
+ let [e, t] = Object.entries(s)[0];
2466
+ f[e] = t;
2467
+ } else f.sprite = s;
2468
+ if (l != null) if (typeof l == "object") {
2469
+ let [e, t] = Object.entries(l)[0];
2470
+ f[e] = t;
2471
+ } else f.techn = l;
2472
+ if (u != null) if (typeof u == "object") {
2473
+ let [e, t] = Object.entries(u)[0];
2474
+ f[e] = t;
2475
+ } else f.legendText = u;
2476
+ if (d != null) if (typeof d == "object") {
2477
+ let [e, t] = Object.entries(d)[0];
2478
+ f[e] = t;
2479
+ } else f.legendSprite = d;
2480
+ }
2481
+ }, "updateElStyle"), updateRelStyle = /* @__PURE__ */ __name(function(e, t, n, r, i, a, o) {
2482
+ let s = rels.find((e) => e.from === t && e.to === n);
2483
+ if (s !== void 0) {
2484
+ if (r != null) if (typeof r == "object") {
2485
+ let [e, t] = Object.entries(r)[0];
2486
+ s[e] = t;
2487
+ } else s.textColor = r;
2488
+ if (i != null) if (typeof i == "object") {
2489
+ let [e, t] = Object.entries(i)[0];
2490
+ s[e] = t;
2491
+ } else s.lineColor = i;
2492
+ if (a != null) if (typeof a == "object") {
2493
+ let [e, t] = Object.entries(a)[0];
2494
+ s[e] = parseInt(t);
2495
+ } else s.offsetX = parseInt(a);
2496
+ if (o != null) if (typeof o == "object") {
2497
+ let [e, t] = Object.entries(o)[0];
2498
+ s[e] = parseInt(t);
2499
+ } else s.offsetY = parseInt(o);
2500
+ }
2501
+ }, "updateRelStyle"), updateLayoutConfig = /* @__PURE__ */ __name(function(e, t, n) {
2502
+ let r = c4ShapeInRow, i = c4BoundaryInRow;
2503
+ if (typeof t == "object") {
2504
+ let e = Object.values(t)[0];
2505
+ r = parseInt(e);
2506
+ } else r = parseInt(t);
2507
+ if (typeof n == "object") {
2508
+ let e = Object.values(n)[0];
2509
+ i = parseInt(e);
2510
+ } else i = parseInt(n);
2511
+ r >= 1 && (c4ShapeInRow = r), i >= 1 && (c4BoundaryInRow = i);
2512
+ }, "updateLayoutConfig"), getC4ShapeInRow = /* @__PURE__ */ __name(function() {
2513
+ return c4ShapeInRow;
2514
+ }, "getC4ShapeInRow"), getC4BoundaryInRow = /* @__PURE__ */ __name(function() {
2515
+ return c4BoundaryInRow;
2516
+ }, "getC4BoundaryInRow"), getCurrentBoundaryParse = /* @__PURE__ */ __name(function() {
2517
+ return currentBoundaryParse;
2518
+ }, "getCurrentBoundaryParse"), getParentBoundaryParse = /* @__PURE__ */ __name(function() {
2519
+ return parentBoundaryParse;
2520
+ }, "getParentBoundaryParse"), getC4ShapeArray = /* @__PURE__ */ __name(function(e) {
2521
+ return e == null ? c4ShapeArray : c4ShapeArray.filter((t) => t.parentBoundary === e);
2522
+ }, "getC4ShapeArray"), getC4Shape = /* @__PURE__ */ __name(function(e) {
2523
+ return c4ShapeArray.find((t) => t.alias === e);
2524
+ }, "getC4Shape"), getC4ShapeKeys = /* @__PURE__ */ __name(function(e) {
2525
+ return Object.keys(getC4ShapeArray(e));
2526
+ }, "getC4ShapeKeys"), getBoundaries = /* @__PURE__ */ __name(function(e) {
2527
+ return e == null ? boundaries : boundaries.filter((t) => t.parentBoundary === e);
2528
+ }, "getBoundaries"), getBoundarys = getBoundaries, getRels = /* @__PURE__ */ __name(function() {
2529
+ return rels;
2530
+ }, "getRels"), getTitle = /* @__PURE__ */ __name(function() {
2531
+ return title;
2532
+ }, "getTitle"), setWrap = /* @__PURE__ */ __name(function(e) {
2533
+ wrapEnabled = e;
2534
+ }, "setWrap"), autoWrap = /* @__PURE__ */ __name(function() {
2535
+ return wrapEnabled;
2536
+ }, "autoWrap"), c4Db_default = {
2537
+ addPersonOrSystem,
2538
+ addPersonOrSystemBoundary,
2539
+ addContainer,
2540
+ addContainerBoundary,
2541
+ addComponent,
2542
+ addDeploymentNode,
2543
+ popBoundaryParseStack,
2544
+ addRel,
2545
+ updateElStyle,
2546
+ updateRelStyle,
2547
+ updateLayoutConfig,
2548
+ autoWrap,
2549
+ setWrap,
2550
+ getC4ShapeArray,
2551
+ getC4Shape,
2552
+ getC4ShapeKeys,
2553
+ getBoundaries,
2554
+ getBoundarys,
2555
+ getCurrentBoundaryParse,
2556
+ getParentBoundaryParse,
2557
+ getRels,
2558
+ getTitle,
2559
+ getC4Type,
2560
+ getC4ShapeInRow,
2561
+ getC4BoundaryInRow,
2562
+ setAccTitle,
2563
+ getAccTitle,
2564
+ getAccDescription,
2565
+ setAccDescription,
2566
+ getConfig: /* @__PURE__ */ __name(() => getConfig2().c4, "getConfig"),
2567
+ clear: /* @__PURE__ */ __name(function() {
2568
+ c4ShapeArray = [], boundaries = [{
2569
+ alias: "global",
2570
+ label: { text: "global" },
2571
+ type: { text: "global" },
2572
+ tags: null,
2573
+ link: null,
2574
+ parentBoundary: ""
2575
+ }], parentBoundaryParse = "", currentBoundaryParse = "global", boundaryParseStack = [""], rels = [], boundaryParseStack = [""], title = "", wrapEnabled = !1, c4ShapeInRow = 4, c4BoundaryInRow = 2;
2576
+ }, "clear"),
2577
+ LINETYPE: {
2578
+ SOLID: 0,
2579
+ DOTTED: 1,
2580
+ NOTE: 2,
2581
+ SOLID_CROSS: 3,
2582
+ DOTTED_CROSS: 4,
2583
+ SOLID_OPEN: 5,
2584
+ DOTTED_OPEN: 6,
2585
+ LOOP_START: 10,
2586
+ LOOP_END: 11,
2587
+ ALT_START: 12,
2588
+ ALT_ELSE: 13,
2589
+ ALT_END: 14,
2590
+ OPT_START: 15,
2591
+ OPT_END: 16,
2592
+ ACTIVE_START: 17,
2593
+ ACTIVE_END: 18,
2594
+ PAR_START: 19,
2595
+ PAR_AND: 20,
2596
+ PAR_END: 21,
2597
+ RECT_START: 22,
2598
+ RECT_END: 23,
2599
+ SOLID_POINT: 24,
2600
+ DOTTED_POINT: 25
2601
+ },
2602
+ ARROWTYPE: {
2603
+ FILLED: 0,
2604
+ OPEN: 1
2605
+ },
2606
+ PLACEMENT: {
2607
+ LEFTOF: 0,
2608
+ RIGHTOF: 1,
2609
+ OVER: 2
2610
+ },
2611
+ setTitle: /* @__PURE__ */ __name(function(e) {
2612
+ title = sanitizeText(e, getConfig2());
2613
+ }, "setTitle"),
2614
+ setC4Type
2615
+ }, drawRect2 = /* @__PURE__ */ __name(function(e, t) {
2616
+ return drawRect(e, t);
2617
+ }, "drawRect"), drawImage = /* @__PURE__ */ __name(function(e, t, n, r, i, a) {
2618
+ let o = e.append("image");
2619
+ o.attr("width", t), o.attr("height", n), o.attr("x", r), o.attr("y", i);
2620
+ let s = a.startsWith("data:image/png;base64") ? a : (0, import_dist.sanitizeUrl)(a);
2621
+ o.attr("xlink:href", s);
2622
+ }, "drawImage"), drawRels = /* @__PURE__ */ __name((e, t, n) => {
2623
+ let r = e.append("g"), i = 0;
2624
+ for (let e of t) {
2625
+ let t = e.textColor ? e.textColor : "#444444", a = e.lineColor ? e.lineColor : "#444444", o = e.offsetX ? parseInt(e.offsetX) : 0, s = e.offsetY ? parseInt(e.offsetY) : 0;
2626
+ if (i === 0) {
2627
+ let t = r.append("line");
2628
+ t.attr("x1", e.startPoint.x), t.attr("y1", e.startPoint.y), t.attr("x2", e.endPoint.x), t.attr("y2", e.endPoint.y), t.attr("stroke-width", "1"), t.attr("stroke", a), t.style("fill", "none"), e.type !== "rel_b" && t.attr("marker-end", "url(#arrowhead)"), (e.type === "birel" || e.type === "rel_b") && t.attr("marker-start", "url(#arrowend)"), i = -1;
2629
+ } else {
2630
+ let t = r.append("path");
2631
+ t.attr("fill", "none").attr("stroke-width", "1").attr("stroke", a).attr("d", "Mstartx,starty Qcontrolx,controly stopx,stopy ".replaceAll("startx", e.startPoint.x).replaceAll("starty", e.startPoint.y).replaceAll("controlx", e.startPoint.x + (e.endPoint.x - e.startPoint.x) / 2 - (e.endPoint.x - e.startPoint.x) / 4).replaceAll("controly", e.startPoint.y + (e.endPoint.y - e.startPoint.y) / 2).replaceAll("stopx", e.endPoint.x).replaceAll("stopy", e.endPoint.y)), e.type !== "rel_b" && t.attr("marker-end", "url(#arrowhead)"), (e.type === "birel" || e.type === "rel_b") && t.attr("marker-start", "url(#arrowend)");
2632
+ }
2633
+ let l = n.messageFont();
2634
+ _drawTextCandidateFunc(n)(e.label.text, r, Math.min(e.startPoint.x, e.endPoint.x) + Math.abs(e.endPoint.x - e.startPoint.x) / 2 + o, Math.min(e.startPoint.y, e.endPoint.y) + Math.abs(e.endPoint.y - e.startPoint.y) / 2 + s, e.label.width, e.label.height, { fill: t }, l), e.techn && e.techn.text !== "" && (l = n.messageFont(), _drawTextCandidateFunc(n)("[" + e.techn.text + "]", r, Math.min(e.startPoint.x, e.endPoint.x) + Math.abs(e.endPoint.x - e.startPoint.x) / 2 + o, Math.min(e.startPoint.y, e.endPoint.y) + Math.abs(e.endPoint.y - e.startPoint.y) / 2 + n.messageFontSize + 5 + s, Math.max(e.label.width, e.techn.width), e.techn.height, {
2635
+ fill: t,
2636
+ "font-style": "italic"
2637
+ }, l));
2638
+ }
2639
+ }, "drawRels"), drawBoundary = /* @__PURE__ */ __name(function(e, t, n) {
2640
+ let r = e.append("g"), i = t.bgColor ? t.bgColor : "none", a = t.borderColor ? t.borderColor : "#444444", o = t.fontColor ? t.fontColor : "black", s = {
2641
+ "stroke-width": 1,
2642
+ "stroke-dasharray": "7.0,7.0"
2643
+ };
2644
+ t.nodeType && (s = { "stroke-width": 1 }), drawRect2(r, {
2645
+ x: t.x,
2646
+ y: t.y,
2647
+ fill: i,
2648
+ stroke: a,
2649
+ width: t.width,
2650
+ height: t.height,
2651
+ rx: 2.5,
2652
+ ry: 2.5,
2653
+ attrs: s
2654
+ });
2655
+ let l = n.boundaryFont();
2656
+ l.fontWeight = "bold", l.fontSize += 2, l.fontColor = o, _drawTextCandidateFunc(n)(t.label.text, r, t.x, t.y + t.label.Y, t.width, t.height, { fill: "#444444" }, l), t.type && t.type.text !== "" && (l = n.boundaryFont(), l.fontColor = o, _drawTextCandidateFunc(n)(t.type.text, r, t.x, t.y + t.type.Y, t.width, t.height, { fill: "#444444" }, l)), t.descr && t.descr.text !== "" && (l = n.boundaryFont(), l.fontSize -= 2, l.fontColor = o, _drawTextCandidateFunc(n)(t.descr.text, r, t.x, t.y + t.descr.Y, t.width, t.height, { fill: "#444444" }, l));
2657
+ }, "drawBoundary"), drawC4Shape = /* @__PURE__ */ __name(function(e, t, n) {
2658
+ let r = t.bgColor ? t.bgColor : n[t.typeC4Shape.text + "_bg_color"], i = t.borderColor ? t.borderColor : n[t.typeC4Shape.text + "_border_color"], a = t.fontColor ? t.fontColor : "#FFFFFF", o = "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAIAAADYYG7QAAACD0lEQVR4Xu2YoU4EMRCGT+4j8Ai8AhaH4QHgAUjQuFMECUgMIUgwJAgMhgQsAYUiJCiQIBBY+EITsjfTdme6V24v4c8vyGbb+ZjOtN0bNcvjQXmkH83WvYBWto6PLm6v7p7uH1/w2fXD+PBycX1Pv2l3IdDm/vn7x+dXQiAubRzoURa7gRZWd0iGRIiJbOnhnfYBQZNJjNbuyY2eJG8fkDE3bbG4ep6MHUAsgYxmE3nVs6VsBWJSGccsOlFPmLIViMzLOB7pCVO2AtHJMohH7Fh6zqitQK7m0rJvAVYgGcEpe//PLdDz65sM4pF9N7ICcXDKIB5Nv6j7tD0NoSdM2QrU9Gg0ewE1LqBhHR3BBdvj2vapnidjHxD/q6vd7Pvhr31AwcY8eXMTXAKECZZJFXuEq27aLgQK5uLMohCenGGuGewOxSjBvYBqeG6B+Nqiblggdjnc+ZXDy+FNFpFzw76O3UBAROuXh6FoiAcf5g9eTvUgzy0nWg6I8cXHRUpg5bOVBCo+KDpFajOf23GgPme7RSQ+lacIENUgJ6gg1k6HjgOlqnLqip4tEuhv0hNEMXUD0clyXE3p6pZA0S2nnvTlXwLJEZWlb7cTQH1+USgTN4VhAenm/wea1OCAOmqo6fE1WCb9WSKBah+rbUWPWAmE2Rvk0ApiB45eOyNAzU8xcTvj8KvkKEoOaIYeHNA3ZuygAvFMUO0AAAAASUVORK5CYII=";
2659
+ switch (t.typeC4Shape.text) {
2660
+ case "person":
2661
+ o = "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAIAAADYYG7QAAACD0lEQVR4Xu2YoU4EMRCGT+4j8Ai8AhaH4QHgAUjQuFMECUgMIUgwJAgMhgQsAYUiJCiQIBBY+EITsjfTdme6V24v4c8vyGbb+ZjOtN0bNcvjQXmkH83WvYBWto6PLm6v7p7uH1/w2fXD+PBycX1Pv2l3IdDm/vn7x+dXQiAubRzoURa7gRZWd0iGRIiJbOnhnfYBQZNJjNbuyY2eJG8fkDE3bbG4ep6MHUAsgYxmE3nVs6VsBWJSGccsOlFPmLIViMzLOB7pCVO2AtHJMohH7Fh6zqitQK7m0rJvAVYgGcEpe//PLdDz65sM4pF9N7ICcXDKIB5Nv6j7tD0NoSdM2QrU9Gg0ewE1LqBhHR3BBdvj2vapnidjHxD/q6vd7Pvhr31AwcY8eXMTXAKECZZJFXuEq27aLgQK5uLMohCenGGuGewOxSjBvYBqeG6B+Nqiblggdjnc+ZXDy+FNFpFzw76O3UBAROuXh6FoiAcf5g9eTvUgzy0nWg6I8cXHRUpg5bOVBCo+KDpFajOf23GgPme7RSQ+lacIENUgJ6gg1k6HjgOlqnLqip4tEuhv0hNEMXUD0clyXE3p6pZA0S2nnvTlXwLJEZWlb7cTQH1+USgTN4VhAenm/wea1OCAOmqo6fE1WCb9WSKBah+rbUWPWAmE2Rvk0ApiB45eOyNAzU8xcTvj8KvkKEoOaIYeHNA3ZuygAvFMUO0AAAAASUVORK5CYII=";
2662
+ break;
2663
+ case "external_person":
2664
+ o = "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAIAAADYYG7QAAAB6ElEQVR4Xu2YLY+EMBCG9+dWr0aj0Wg0Go1Go0+j8Xdv2uTCvv1gpt0ebHKPuhDaeW4605Z9mJvx4AdXUyTUdd08z+u6flmWZRnHsWkafk9DptAwDPu+f0eAYtu2PEaGWuj5fCIZrBAC2eLBAnRCsEkkxmeaJp7iDJ2QMDdHsLg8SxKFEJaAo8lAXnmuOFIhTMpxxKATebo4UiFknuNo4OniSIXQyRxEA3YsnjGCVEjVXD7yLUAqxBGUyPv/Y4W2beMgGuS7kVQIBycH0fD+oi5pezQETxdHKmQKGk1eQEYldK+jw5GxPfZ9z7Mk0Qnhf1W1m3w//EUn5BDmSZsbR44QQLBEqrBHqOrmSKaQAxdnLArCrxZcM7A7ZKs4ioRq8LFC+NpC3WCBJsvpVw5edm9iEXFuyNfxXAgSwfrFQ1c0iNda8AdejvUgnktOtJQQxmcfFzGglc5WVCj7oDgFqU18boeFSs52CUh8LE8BIVQDT1ABrB0HtgSEYlX5doJnCwv9TXocKCaKbnwhdDKPq4lf3SwU3HLq4V/+WYhHVMa/3b4IlfyikAduCkcBc7mQ3/z/Qq/cTuikhkzB12Ae/mcJC9U+Vo8Ej1gWAtgbeGgFsAMHr50BIWOLCbezvhpBFUdY6EJuJ/QDW0XoMX60zZ0AAAAASUVORK5CYII=";
2665
+ break;
2666
+ }
2667
+ let s = e.append("g");
2668
+ s.attr("class", "person-man");
2669
+ let l = getNoteRect();
2670
+ switch (t.typeC4Shape.text) {
2671
+ case "person":
2672
+ case "external_person":
2673
+ case "system":
2674
+ case "external_system":
2675
+ case "container":
2676
+ case "external_container":
2677
+ case "component":
2678
+ case "external_component":
2679
+ l.x = t.x, l.y = t.y, l.fill = r, l.width = t.width, l.height = t.height, l.stroke = i, l.rx = 2.5, l.ry = 2.5, l.attrs = { "stroke-width": .5 }, drawRect2(s, l);
2680
+ break;
2681
+ case "system_db":
2682
+ case "external_system_db":
2683
+ case "container_db":
2684
+ case "external_container_db":
2685
+ case "component_db":
2686
+ case "external_component_db":
2687
+ s.append("path").attr("fill", r).attr("stroke-width", "0.5").attr("stroke", i).attr("d", "Mstartx,startyc0,-10 half,-10 half,-10c0,0 half,0 half,10l0,heightc0,10 -half,10 -half,10c0,0 -half,0 -half,-10l0,-height".replaceAll("startx", t.x).replaceAll("starty", t.y).replaceAll("half", t.width / 2).replaceAll("height", t.height)), s.append("path").attr("fill", "none").attr("stroke-width", "0.5").attr("stroke", i).attr("d", "Mstartx,startyc0,10 half,10 half,10c0,0 half,0 half,-10".replaceAll("startx", t.x).replaceAll("starty", t.y).replaceAll("half", t.width / 2));
2688
+ break;
2689
+ case "system_queue":
2690
+ case "external_system_queue":
2691
+ case "container_queue":
2692
+ case "external_container_queue":
2693
+ case "component_queue":
2694
+ case "external_component_queue":
2695
+ s.append("path").attr("fill", r).attr("stroke-width", "0.5").attr("stroke", i).attr("d", "Mstartx,startylwidth,0c5,0 5,half 5,halfc0,0 0,half -5,halfl-width,0c-5,0 -5,-half -5,-halfc0,0 0,-half 5,-half".replaceAll("startx", t.x).replaceAll("starty", t.y).replaceAll("width", t.width).replaceAll("half", t.height / 2)), s.append("path").attr("fill", "none").attr("stroke-width", "0.5").attr("stroke", i).attr("d", "Mstartx,startyc-5,0 -5,half -5,halfc0,half 5,half 5,half".replaceAll("startx", t.x + t.width).replaceAll("starty", t.y).replaceAll("half", t.height / 2));
2696
+ break;
2697
+ }
2698
+ let u = getC4ShapeFont(n, t.typeC4Shape.text);
2699
+ switch (s.append("text").attr("fill", a).attr("font-family", u.fontFamily).attr("font-size", u.fontSize - 2).attr("font-style", "italic").attr("lengthAdjust", "spacing").attr("textLength", t.typeC4Shape.width).attr("x", t.x + t.width / 2 - t.typeC4Shape.width / 2).attr("y", t.y + t.typeC4Shape.Y).text("<<" + t.typeC4Shape.text + ">>"), t.typeC4Shape.text) {
2700
+ case "person":
2701
+ case "external_person":
2702
+ drawImage(s, 48, 48, t.x + t.width / 2 - 24, t.y + t.image.Y, o);
2703
+ break;
2704
+ }
2705
+ let d = n[t.typeC4Shape.text + "Font"]();
2706
+ return d.fontWeight = "bold", d.fontSize += 2, d.fontColor = a, _drawTextCandidateFunc(n)(t.label.text, s, t.x, t.y + t.label.Y, t.width, t.height, { fill: a }, d), d = n[t.typeC4Shape.text + "Font"](), d.fontColor = a, t.techn && t.techn?.text !== "" ? _drawTextCandidateFunc(n)(t.techn.text, s, t.x, t.y + t.techn.Y, t.width, t.height, {
2707
+ fill: a,
2708
+ "font-style": "italic"
2709
+ }, d) : t.type && t.type.text !== "" && _drawTextCandidateFunc(n)(t.type.text, s, t.x, t.y + t.type.Y, t.width, t.height, {
2710
+ fill: a,
2711
+ "font-style": "italic"
2712
+ }, d), t.descr && t.descr.text !== "" && (d = n.personFont(), d.fontColor = a, _drawTextCandidateFunc(n)(t.descr.text, s, t.x, t.y + t.descr.Y, t.width, t.height, { fill: a }, d)), t.height;
2713
+ }, "drawC4Shape"), insertDatabaseIcon = /* @__PURE__ */ __name(function(e) {
2714
+ e.append("defs").append("symbol").attr("id", "database").attr("fill-rule", "evenodd").attr("clip-rule", "evenodd").append("path").attr("transform", "scale(.5)").attr("d", "M12.258.001l.256.004.255.005.253.008.251.01.249.012.247.015.246.016.242.019.241.02.239.023.236.024.233.027.231.028.229.031.225.032.223.034.22.036.217.038.214.04.211.041.208.043.205.045.201.046.198.048.194.05.191.051.187.053.183.054.18.056.175.057.172.059.168.06.163.061.16.063.155.064.15.066.074.033.073.033.071.034.07.034.069.035.068.035.067.035.066.035.064.036.064.036.062.036.06.036.06.037.058.037.058.037.055.038.055.038.053.038.052.038.051.039.05.039.048.039.047.039.045.04.044.04.043.04.041.04.04.041.039.041.037.041.036.041.034.041.033.042.032.042.03.042.029.042.027.042.026.043.024.043.023.043.021.043.02.043.018.044.017.043.015.044.013.044.012.044.011.045.009.044.007.045.006.045.004.045.002.045.001.045v17l-.001.045-.002.045-.004.045-.006.045-.007.045-.009.044-.011.045-.012.044-.013.044-.015.044-.017.043-.018.044-.02.043-.021.043-.023.043-.024.043-.026.043-.027.042-.029.042-.03.042-.032.042-.033.042-.034.041-.036.041-.037.041-.039.041-.04.041-.041.04-.043.04-.044.04-.045.04-.047.039-.048.039-.05.039-.051.039-.052.038-.053.038-.055.038-.055.038-.058.037-.058.037-.06.037-.06.036-.062.036-.064.036-.064.036-.066.035-.067.035-.068.035-.069.035-.07.034-.071.034-.073.033-.074.033-.15.066-.155.064-.16.063-.163.061-.168.06-.172.059-.175.057-.18.056-.183.054-.187.053-.191.051-.194.05-.198.048-.201.046-.205.045-.208.043-.211.041-.214.04-.217.038-.22.036-.223.034-.225.032-.229.031-.231.028-.233.027-.236.024-.239.023-.241.02-.242.019-.246.016-.247.015-.249.012-.251.01-.253.008-.255.005-.256.004-.258.001-.258-.001-.256-.004-.255-.005-.253-.008-.251-.01-.249-.012-.247-.015-.245-.016-.243-.019-.241-.02-.238-.023-.236-.024-.234-.027-.231-.028-.228-.031-.226-.032-.223-.034-.22-.036-.217-.038-.214-.04-.211-.041-.208-.043-.204-.045-.201-.046-.198-.048-.195-.05-.19-.051-.187-.053-.184-.054-.179-.056-.176-.057-.172-.059-.167-.06-.164-.061-.159-.063-.155-.064-.151-.066-.074-.033-.072-.033-.072-.034-.07-.034-.069-.035-.068-.035-.067-.035-.066-.035-.064-.036-.063-.036-.062-.036-.061-.036-.06-.037-.058-.037-.057-.037-.056-.038-.055-.038-.053-.038-.052-.038-.051-.039-.049-.039-.049-.039-.046-.039-.046-.04-.044-.04-.043-.04-.041-.04-.04-.041-.039-.041-.037-.041-.036-.041-.034-.041-.033-.042-.032-.042-.03-.042-.029-.042-.027-.042-.026-.043-.024-.043-.023-.043-.021-.043-.02-.043-.018-.044-.017-.043-.015-.044-.013-.044-.012-.044-.011-.045-.009-.044-.007-.045-.006-.045-.004-.045-.002-.045-.001-.045v-17l.001-.045.002-.045.004-.045.006-.045.007-.045.009-.044.011-.045.012-.044.013-.044.015-.044.017-.043.018-.044.02-.043.021-.043.023-.043.024-.043.026-.043.027-.042.029-.042.03-.042.032-.042.033-.042.034-.041.036-.041.037-.041.039-.041.04-.041.041-.04.043-.04.044-.04.046-.04.046-.039.049-.039.049-.039.051-.039.052-.038.053-.038.055-.038.056-.038.057-.037.058-.037.06-.037.061-.036.062-.036.063-.036.064-.036.066-.035.067-.035.068-.035.069-.035.07-.034.072-.034.072-.033.074-.033.151-.066.155-.064.159-.063.164-.061.167-.06.172-.059.176-.057.179-.056.184-.054.187-.053.19-.051.195-.05.198-.048.201-.046.204-.045.208-.043.211-.041.214-.04.217-.038.22-.036.223-.034.226-.032.228-.031.231-.028.234-.027.236-.024.238-.023.241-.02.243-.019.245-.016.247-.015.249-.012.251-.01.253-.008.255-.005.256-.004.258-.001.258.001zm-9.258 20.499v.01l.001.021.003.021.004.022.005.021.006.022.007.022.009.023.01.022.011.023.012.023.013.023.015.023.016.024.017.023.018.024.019.024.021.024.022.025.023.024.024.025.052.049.056.05.061.051.066.051.07.051.075.051.079.052.084.052.088.052.092.052.097.052.102.051.105.052.11.052.114.051.119.051.123.051.127.05.131.05.135.05.139.048.144.049.147.047.152.047.155.047.16.045.163.045.167.043.171.043.176.041.178.041.183.039.187.039.19.037.194.035.197.035.202.033.204.031.209.03.212.029.216.027.219.025.222.024.226.021.23.02.233.018.236.016.24.015.243.012.246.01.249.008.253.005.256.004.259.001.26-.001.257-.004.254-.005.25-.008.247-.011.244-.012.241-.014.237-.016.233-.018.231-.021.226-.021.224-.024.22-.026.216-.027.212-.028.21-.031.205-.031.202-.034.198-.034.194-.036.191-.037.187-.039.183-.04.179-.04.175-.042.172-.043.168-.044.163-.045.16-.046.155-.046.152-.047.148-.048.143-.049.139-.049.136-.05.131-.05.126-.05.123-.051.118-.052.114-.051.11-.052.106-.052.101-.052.096-.052.092-.052.088-.053.083-.051.079-.052.074-.052.07-.051.065-.051.06-.051.056-.05.051-.05.023-.024.023-.025.021-.024.02-.024.019-.024.018-.024.017-.024.015-.023.014-.024.013-.023.012-.023.01-.023.01-.022.008-.022.006-.022.006-.022.004-.022.004-.021.001-.021.001-.021v-4.127l-.077.055-.08.053-.083.054-.085.053-.087.052-.09.052-.093.051-.095.05-.097.05-.1.049-.102.049-.105.048-.106.047-.109.047-.111.046-.114.045-.115.045-.118.044-.12.043-.122.042-.124.042-.126.041-.128.04-.13.04-.132.038-.134.038-.135.037-.138.037-.139.035-.142.035-.143.034-.144.033-.147.032-.148.031-.15.03-.151.03-.153.029-.154.027-.156.027-.158.026-.159.025-.161.024-.162.023-.163.022-.165.021-.166.02-.167.019-.169.018-.169.017-.171.016-.173.015-.173.014-.175.013-.175.012-.177.011-.178.01-.179.008-.179.008-.181.006-.182.005-.182.004-.184.003-.184.002h-.37l-.184-.002-.184-.003-.182-.004-.182-.005-.181-.006-.179-.008-.179-.008-.178-.01-.176-.011-.176-.012-.175-.013-.173-.014-.172-.015-.171-.016-.17-.017-.169-.018-.167-.019-.166-.02-.165-.021-.163-.022-.162-.023-.161-.024-.159-.025-.157-.026-.156-.027-.155-.027-.153-.029-.151-.03-.15-.03-.148-.031-.146-.032-.145-.033-.143-.034-.141-.035-.14-.035-.137-.037-.136-.037-.134-.038-.132-.038-.13-.04-.128-.04-.126-.041-.124-.042-.122-.042-.12-.044-.117-.043-.116-.045-.113-.045-.112-.046-.109-.047-.106-.047-.105-.048-.102-.049-.1-.049-.097-.05-.095-.05-.093-.052-.09-.051-.087-.052-.085-.053-.083-.054-.08-.054-.077-.054v4.127zm0-5.654v.011l.001.021.003.021.004.021.005.022.006.022.007.022.009.022.01.022.011.023.012.023.013.023.015.024.016.023.017.024.018.024.019.024.021.024.022.024.023.025.024.024.052.05.056.05.061.05.066.051.07.051.075.052.079.051.084.052.088.052.092.052.097.052.102.052.105.052.11.051.114.051.119.052.123.05.127.051.131.05.135.049.139.049.144.048.147.048.152.047.155.046.16.045.163.045.167.044.171.042.176.042.178.04.183.04.187.038.19.037.194.036.197.034.202.033.204.032.209.03.212.028.216.027.219.025.222.024.226.022.23.02.233.018.236.016.24.014.243.012.246.01.249.008.253.006.256.003.259.001.26-.001.257-.003.254-.006.25-.008.247-.01.244-.012.241-.015.237-.016.233-.018.231-.02.226-.022.224-.024.22-.025.216-.027.212-.029.21-.03.205-.032.202-.033.198-.035.194-.036.191-.037.187-.039.183-.039.179-.041.175-.042.172-.043.168-.044.163-.045.16-.045.155-.047.152-.047.148-.048.143-.048.139-.05.136-.049.131-.05.126-.051.123-.051.118-.051.114-.052.11-.052.106-.052.101-.052.096-.052.092-.052.088-.052.083-.052.079-.052.074-.051.07-.052.065-.051.06-.05.056-.051.051-.049.023-.025.023-.024.021-.025.02-.024.019-.024.018-.024.017-.024.015-.023.014-.023.013-.024.012-.022.01-.023.01-.023.008-.022.006-.022.006-.022.004-.021.004-.022.001-.021.001-.021v-4.139l-.077.054-.08.054-.083.054-.085.052-.087.053-.09.051-.093.051-.095.051-.097.05-.1.049-.102.049-.105.048-.106.047-.109.047-.111.046-.114.045-.115.044-.118.044-.12.044-.122.042-.124.042-.126.041-.128.04-.13.039-.132.039-.134.038-.135.037-.138.036-.139.036-.142.035-.143.033-.144.033-.147.033-.148.031-.15.03-.151.03-.153.028-.154.028-.156.027-.158.026-.159.025-.161.024-.162.023-.163.022-.165.021-.166.02-.167.019-.169.018-.169.017-.171.016-.173.015-.173.014-.175.013-.175.012-.177.011-.178.009-.179.009-.179.007-.181.007-.182.005-.182.004-.184.003-.184.002h-.37l-.184-.002-.184-.003-.182-.004-.182-.005-.181-.007-.179-.007-.179-.009-.178-.009-.176-.011-.176-.012-.175-.013-.173-.014-.172-.015-.171-.016-.17-.017-.169-.018-.167-.019-.166-.02-.165-.021-.163-.022-.162-.023-.161-.024-.159-.025-.157-.026-.156-.027-.155-.028-.153-.028-.151-.03-.15-.03-.148-.031-.146-.033-.145-.033-.143-.033-.141-.035-.14-.036-.137-.036-.136-.037-.134-.038-.132-.039-.13-.039-.128-.04-.126-.041-.124-.042-.122-.043-.12-.043-.117-.044-.116-.044-.113-.046-.112-.046-.109-.046-.106-.047-.105-.048-.102-.049-.1-.049-.097-.05-.095-.051-.093-.051-.09-.051-.087-.053-.085-.052-.083-.054-.08-.054-.077-.054v4.139zm0-5.666v.011l.001.02.003.022.004.021.005.022.006.021.007.022.009.023.01.022.011.023.012.023.013.023.015.023.016.024.017.024.018.023.019.024.021.025.022.024.023.024.024.025.052.05.056.05.061.05.066.051.07.051.075.052.079.051.084.052.088.052.092.052.097.052.102.052.105.051.11.052.114.051.119.051.123.051.127.05.131.05.135.05.139.049.144.048.147.048.152.047.155.046.16.045.163.045.167.043.171.043.176.042.178.04.183.04.187.038.19.037.194.036.197.034.202.033.204.032.209.03.212.028.216.027.219.025.222.024.226.021.23.02.233.018.236.017.24.014.243.012.246.01.249.008.253.006.256.003.259.001.26-.001.257-.003.254-.006.25-.008.247-.01.244-.013.241-.014.237-.016.233-.018.231-.02.226-.022.224-.024.22-.025.216-.027.212-.029.21-.03.205-.032.202-.033.198-.035.194-.036.191-.037.187-.039.183-.039.179-.041.175-.042.172-.043.168-.044.163-.045.16-.045.155-.047.152-.047.148-.048.143-.049.139-.049.136-.049.131-.051.126-.05.123-.051.118-.052.114-.051.11-.052.106-.052.101-.052.096-.052.092-.052.088-.052.083-.052.079-.052.074-.052.07-.051.065-.051.06-.051.056-.05.051-.049.023-.025.023-.025.021-.024.02-.024.019-.024.018-.024.017-.024.015-.023.014-.024.013-.023.012-.023.01-.022.01-.023.008-.022.006-.022.006-.022.004-.022.004-.021.001-.021.001-.021v-4.153l-.077.054-.08.054-.083.053-.085.053-.087.053-.09.051-.093.051-.095.051-.097.05-.1.049-.102.048-.105.048-.106.048-.109.046-.111.046-.114.046-.115.044-.118.044-.12.043-.122.043-.124.042-.126.041-.128.04-.13.039-.132.039-.134.038-.135.037-.138.036-.139.036-.142.034-.143.034-.144.033-.147.032-.148.032-.15.03-.151.03-.153.028-.154.028-.156.027-.158.026-.159.024-.161.024-.162.023-.163.023-.165.021-.166.02-.167.019-.169.018-.169.017-.171.016-.173.015-.173.014-.175.013-.175.012-.177.01-.178.01-.179.009-.179.007-.181.006-.182.006-.182.004-.184.003-.184.001-.185.001-.185-.001-.184-.001-.184-.003-.182-.004-.182-.006-.181-.006-.179-.007-.179-.009-.178-.01-.176-.01-.176-.012-.175-.013-.173-.014-.172-.015-.171-.016-.17-.017-.169-.018-.167-.019-.166-.02-.165-.021-.163-.023-.162-.023-.161-.024-.159-.024-.157-.026-.156-.027-.155-.028-.153-.028-.151-.03-.15-.03-.148-.032-.146-.032-.145-.033-.143-.034-.141-.034-.14-.036-.137-.036-.136-.037-.134-.038-.132-.039-.13-.039-.128-.041-.126-.041-.124-.041-.122-.043-.12-.043-.117-.044-.116-.044-.113-.046-.112-.046-.109-.046-.106-.048-.105-.048-.102-.048-.1-.05-.097-.049-.095-.051-.093-.051-.09-.052-.087-.052-.085-.053-.083-.053-.08-.054-.077-.054v4.153zm8.74-8.179l-.257.004-.254.005-.25.008-.247.011-.244.012-.241.014-.237.016-.233.018-.231.021-.226.022-.224.023-.22.026-.216.027-.212.028-.21.031-.205.032-.202.033-.198.034-.194.036-.191.038-.187.038-.183.04-.179.041-.175.042-.172.043-.168.043-.163.045-.16.046-.155.046-.152.048-.148.048-.143.048-.139.049-.136.05-.131.05-.126.051-.123.051-.118.051-.114.052-.11.052-.106.052-.101.052-.096.052-.092.052-.088.052-.083.052-.079.052-.074.051-.07.052-.065.051-.06.05-.056.05-.051.05-.023.025-.023.024-.021.024-.02.025-.019.024-.018.024-.017.023-.015.024-.014.023-.013.023-.012.023-.01.023-.01.022-.008.022-.006.023-.006.021-.004.022-.004.021-.001.021-.001.021.001.021.001.021.004.021.004.022.006.021.006.023.008.022.01.022.01.023.012.023.013.023.014.023.015.024.017.023.018.024.019.024.02.025.021.024.023.024.023.025.051.05.056.05.06.05.065.051.07.052.074.051.079.052.083.052.088.052.092.052.096.052.101.052.106.052.11.052.114.052.118.051.123.051.126.051.131.05.136.05.139.049.143.048.148.048.152.048.155.046.16.046.163.045.168.043.172.043.175.042.179.041.183.04.187.038.191.038.194.036.198.034.202.033.205.032.21.031.212.028.216.027.22.026.224.023.226.022.231.021.233.018.237.016.241.014.244.012.247.011.25.008.254.005.257.004.26.001.26-.001.257-.004.254-.005.25-.008.247-.011.244-.012.241-.014.237-.016.233-.018.231-.021.226-.022.224-.023.22-.026.216-.027.212-.028.21-.031.205-.032.202-.033.198-.034.194-.036.191-.038.187-.038.183-.04.179-.041.175-.042.172-.043.168-.043.163-.045.16-.046.155-.046.152-.048.148-.048.143-.048.139-.049.136-.05.131-.05.126-.051.123-.051.118-.051.114-.052.11-.052.106-.052.101-.052.096-.052.092-.052.088-.052.083-.052.079-.052.074-.051.07-.052.065-.051.06-.05.056-.05.051-.05.023-.025.023-.024.021-.024.02-.025.019-.024.018-.024.017-.023.015-.024.014-.023.013-.023.012-.023.01-.023.01-.022.008-.022.006-.023.006-.021.004-.022.004-.021.001-.021.001-.021-.001-.021-.001-.021-.004-.021-.004-.022-.006-.021-.006-.023-.008-.022-.01-.022-.01-.023-.012-.023-.013-.023-.014-.023-.015-.024-.017-.023-.018-.024-.019-.024-.02-.025-.021-.024-.023-.024-.023-.025-.051-.05-.056-.05-.06-.05-.065-.051-.07-.052-.074-.051-.079-.052-.083-.052-.088-.052-.092-.052-.096-.052-.101-.052-.106-.052-.11-.052-.114-.052-.118-.051-.123-.051-.126-.051-.131-.05-.136-.05-.139-.049-.143-.048-.148-.048-.152-.048-.155-.046-.16-.046-.163-.045-.168-.043-.172-.043-.175-.042-.179-.041-.183-.04-.187-.038-.191-.038-.194-.036-.198-.034-.202-.033-.205-.032-.21-.031-.212-.028-.216-.027-.22-.026-.224-.023-.226-.022-.231-.021-.233-.018-.237-.016-.241-.014-.244-.012-.247-.011-.25-.008-.254-.005-.257-.004-.26-.001-.26.001z");
2715
+ }, "insertDatabaseIcon"), insertComputerIcon = /* @__PURE__ */ __name(function(e) {
2716
+ e.append("defs").append("symbol").attr("id", "computer").attr("width", "24").attr("height", "24").append("path").attr("transform", "scale(.5)").attr("d", "M2 2v13h20v-13h-20zm18 11h-16v-9h16v9zm-10.228 6l.466-1h3.524l.467 1h-4.457zm14.228 3h-24l2-6h2.104l-1.33 4h18.45l-1.297-4h2.073l2 6zm-5-10h-14v-7h14v7z");
2717
+ }, "insertComputerIcon"), insertClockIcon = /* @__PURE__ */ __name(function(e) {
2718
+ e.append("defs").append("symbol").attr("id", "clock").attr("width", "24").attr("height", "24").append("path").attr("transform", "scale(.5)").attr("d", "M12 2c5.514 0 10 4.486 10 10s-4.486 10-10 10-10-4.486-10-10 4.486-10 10-10zm0-2c-6.627 0-12 5.373-12 12s5.373 12 12 12 12-5.373 12-12-5.373-12-12-12zm5.848 12.459c.202.038.202.333.001.372-1.907.361-6.045 1.111-6.547 1.111-.719 0-1.301-.582-1.301-1.301 0-.512.77-5.447 1.125-7.445.034-.192.312-.181.343.014l.985 6.238 5.394 1.011z");
2719
+ }, "insertClockIcon"), insertArrowHead = /* @__PURE__ */ __name(function(e) {
2720
+ e.append("defs").append("marker").attr("id", "arrowhead").attr("refX", 9).attr("refY", 5).attr("markerUnits", "userSpaceOnUse").attr("markerWidth", 12).attr("markerHeight", 12).attr("orient", "auto").append("path").attr("d", "M 0 0 L 10 5 L 0 10 z");
2721
+ }, "insertArrowHead"), insertArrowEnd = /* @__PURE__ */ __name(function(e) {
2722
+ e.append("defs").append("marker").attr("id", "arrowend").attr("refX", 1).attr("refY", 5).attr("markerUnits", "userSpaceOnUse").attr("markerWidth", 12).attr("markerHeight", 12).attr("orient", "auto").append("path").attr("d", "M 10 0 L 0 5 L 10 10 z");
2723
+ }, "insertArrowEnd"), insertArrowFilledHead = /* @__PURE__ */ __name(function(e) {
2724
+ e.append("defs").append("marker").attr("id", "filled-head").attr("refX", 18).attr("refY", 7).attr("markerWidth", 20).attr("markerHeight", 28).attr("orient", "auto").append("path").attr("d", "M 18,7 L9,13 L14,7 L9,1 Z");
2725
+ }, "insertArrowFilledHead"), insertDynamicNumber = /* @__PURE__ */ __name(function(e) {
2726
+ e.append("defs").append("marker").attr("id", "sequencenumber").attr("refX", 15).attr("refY", 15).attr("markerWidth", 60).attr("markerHeight", 40).attr("orient", "auto").append("circle").attr("cx", 15).attr("cy", 15).attr("r", 6);
2727
+ }, "insertDynamicNumber"), insertArrowCrossHead = /* @__PURE__ */ __name(function(e) {
2728
+ let t = e.append("defs").append("marker").attr("id", "crosshead").attr("markerWidth", 15).attr("markerHeight", 8).attr("orient", "auto").attr("refX", 16).attr("refY", 4);
2729
+ t.append("path").attr("fill", "black").attr("stroke", "#000000").style("stroke-dasharray", "0, 0").attr("stroke-width", "1px").attr("d", "M 9,2 V 6 L16,4 Z"), t.append("path").attr("fill", "none").attr("stroke", "#000000").style("stroke-dasharray", "0, 0").attr("stroke-width", "1px").attr("d", "M 0,1 L 6,7 M 6,1 L 0,7");
2730
+ }, "insertArrowCrossHead"), getC4ShapeFont = /* @__PURE__ */ __name((e, t) => ({
2731
+ fontFamily: e[t + "FontFamily"],
2732
+ fontSize: e[t + "FontSize"],
2733
+ fontWeight: e[t + "FontWeight"]
2734
+ }), "getC4ShapeFont"), _drawTextCandidateFunc = /* @__PURE__ */ (function() {
2735
+ function e(e, t, n, r, a, o, s) {
2736
+ i(t.append("text").attr("x", n + a / 2).attr("y", r + o / 2 + 5).style("text-anchor", "middle").text(e), s);
2737
+ }
2738
+ __name(e, "byText");
2739
+ function n(e, t, n, r, a, o, s, l) {
2740
+ let { fontSize: d, fontFamily: f, fontWeight: p } = l, m = e.split(common_default.lineBreakRegex);
2741
+ for (let e = 0; e < m.length; e++) {
2742
+ let o = e * d - d * (m.length - 1) / 2, l = t.append("text").attr("x", n + a / 2).attr("y", r).style("text-anchor", "middle").attr("dominant-baseline", "middle").style("font-size", d).style("font-weight", p).style("font-family", f);
2743
+ l.append("tspan").attr("dy", o).text(m[e]).attr("alignment-baseline", "mathematical"), i(l, s);
2744
+ }
2745
+ }
2746
+ __name(n, "byTspan");
2747
+ function r(e, t, r, a, o, s, l, u) {
2748
+ let d = t.append("switch"), f = d.append("foreignObject").attr("x", r).attr("y", a).attr("width", o).attr("height", s).append("xhtml:div").style("display", "table").style("height", "100%").style("width", "100%");
2749
+ f.append("div").style("display", "table-cell").style("text-align", "center").style("vertical-align", "middle").text(e), n(e, d, r, a, o, s, l, u), i(f, l);
2750
+ }
2751
+ __name(r, "byFo");
2752
+ function i(e, t) {
2753
+ for (let n in t) t.hasOwnProperty(n) && e.attr(n, t[n]);
2754
+ }
2755
+ return __name(i, "_setTextAttrs"), function(t) {
2756
+ return t.textPlacement === "fo" ? r : t.textPlacement === "old" ? e : n;
2757
+ };
2758
+ })(), svgDraw_default = {
2759
+ drawRect: drawRect2,
2760
+ drawBoundary,
2761
+ drawC4Shape,
2762
+ drawRels,
2763
+ drawImage,
2764
+ insertArrowHead,
2765
+ insertArrowEnd,
2766
+ insertArrowFilledHead,
2767
+ insertDynamicNumber,
2768
+ insertArrowCrossHead,
2769
+ insertDatabaseIcon,
2770
+ insertComputerIcon,
2771
+ insertClockIcon
2772
+ }, globalBoundaryMaxX = 0, globalBoundaryMaxY = 0, c4ShapeInRow2 = 4, c4BoundaryInRow2 = 2;
2773
+ parser.yy = c4Db_default;
2774
+ var conf = {}, Bounds = class {
2775
+ static #e = __name(this, "Bounds");
2776
+ constructor(e) {
2777
+ this.name = "", this.data = {}, this.data.startx = void 0, this.data.stopx = void 0, this.data.starty = void 0, this.data.stopy = void 0, this.data.widthLimit = void 0, this.nextData = {}, this.nextData.startx = void 0, this.nextData.stopx = void 0, this.nextData.starty = void 0, this.nextData.stopy = void 0, this.nextData.cnt = 0, setConf(e.db.getConfig());
2778
+ }
2779
+ setData(e, t, n, r) {
2780
+ this.nextData.startx = this.data.startx = e, this.nextData.stopx = this.data.stopx = t, this.nextData.starty = this.data.starty = n, this.nextData.stopy = this.data.stopy = r;
2781
+ }
2782
+ updateVal(e, t, n, r) {
2783
+ e[t] === void 0 ? e[t] = n : e[t] = r(n, e[t]);
2784
+ }
2785
+ insert(e) {
2786
+ this.nextData.cnt = this.nextData.cnt + 1;
2787
+ let t = this.nextData.startx === this.nextData.stopx ? this.nextData.stopx + e.margin : this.nextData.stopx + e.margin * 2, n = t + e.width, r = this.nextData.starty + e.margin * 2, i = r + e.height;
2788
+ (t >= this.data.widthLimit || n >= this.data.widthLimit || this.nextData.cnt > c4ShapeInRow2) && (t = this.nextData.startx + e.margin + conf.nextLinePaddingX, r = this.nextData.stopy + e.margin * 2, this.nextData.stopx = n = t + e.width, this.nextData.starty = this.nextData.stopy, this.nextData.stopy = i = r + e.height, this.nextData.cnt = 1), e.x = t, e.y = r, this.updateVal(this.data, "startx", t, Math.min), this.updateVal(this.data, "starty", r, Math.min), this.updateVal(this.data, "stopx", n, Math.max), this.updateVal(this.data, "stopy", i, Math.max), this.updateVal(this.nextData, "startx", t, Math.min), this.updateVal(this.nextData, "starty", r, Math.min), this.updateVal(this.nextData, "stopx", n, Math.max), this.updateVal(this.nextData, "stopy", i, Math.max);
2789
+ }
2790
+ init(e) {
2791
+ this.name = "", this.data = {
2792
+ startx: void 0,
2793
+ stopx: void 0,
2794
+ starty: void 0,
2795
+ stopy: void 0,
2796
+ widthLimit: void 0
2797
+ }, this.nextData = {
2798
+ startx: void 0,
2799
+ stopx: void 0,
2800
+ starty: void 0,
2801
+ stopy: void 0,
2802
+ cnt: 0
2803
+ }, setConf(e.db.getConfig());
2804
+ }
2805
+ bumpLastMargin(e) {
2806
+ this.data.stopx += e, this.data.stopy += e;
2807
+ }
2808
+ }, setConf = /* @__PURE__ */ __name(function(e) {
2809
+ assignWithDepth_default(conf, e), e.fontFamily && (conf.personFontFamily = conf.systemFontFamily = conf.messageFontFamily = e.fontFamily), e.fontSize && (conf.personFontSize = conf.systemFontSize = conf.messageFontSize = e.fontSize), e.fontWeight && (conf.personFontWeight = conf.systemFontWeight = conf.messageFontWeight = e.fontWeight);
2810
+ }, "setConf"), c4ShapeFont = /* @__PURE__ */ __name((e, t) => ({
2811
+ fontFamily: e[t + "FontFamily"],
2812
+ fontSize: e[t + "FontSize"],
2813
+ fontWeight: e[t + "FontWeight"]
2814
+ }), "c4ShapeFont"), boundaryFont = /* @__PURE__ */ __name((e) => ({
2815
+ fontFamily: e.boundaryFontFamily,
2816
+ fontSize: e.boundaryFontSize,
2817
+ fontWeight: e.boundaryFontWeight
2818
+ }), "boundaryFont"), messageFont = /* @__PURE__ */ __name((e) => ({
2819
+ fontFamily: e.messageFontFamily,
2820
+ fontSize: e.messageFontSize,
2821
+ fontWeight: e.messageFontWeight
2822
+ }), "messageFont");
2823
+ function calcC4ShapeTextWH(e, t, n, r, i) {
2824
+ if (!t[e].width) if (n) t[e].text = wrapLabel(t[e].text, i, r), t[e].textLines = t[e].text.split(common_default.lineBreakRegex).length, t[e].width = i, t[e].height = calculateTextHeight(t[e].text, r);
2825
+ else {
2826
+ let n = t[e].text.split(common_default.lineBreakRegex);
2827
+ t[e].textLines = n.length;
2828
+ let i = 0;
2829
+ t[e].height = 0, t[e].width = 0;
2830
+ for (let a of n) t[e].width = Math.max(calculateTextWidth(a, r), t[e].width), i = calculateTextHeight(a, r), t[e].height = t[e].height + i;
2831
+ }
2832
+ }
2833
+ __name(calcC4ShapeTextWH, "calcC4ShapeTextWH");
2834
+ var drawBoundary2 = /* @__PURE__ */ __name(function(e, t, n) {
2835
+ t.x = n.data.startx, t.y = n.data.starty, t.width = n.data.stopx - n.data.startx, t.height = n.data.stopy - n.data.starty, t.label.y = conf.c4ShapeMargin - 35;
2836
+ let r = t.wrap && conf.wrap, i = boundaryFont(conf);
2837
+ i.fontSize += 2, i.fontWeight = "bold", calcC4ShapeTextWH("label", t, r, i, calculateTextWidth(t.label.text, i)), svgDraw_default.drawBoundary(e, t, conf);
2838
+ }, "drawBoundary"), drawC4ShapeArray = /* @__PURE__ */ __name(function(e, t, n, r) {
2839
+ let i = 0;
2840
+ for (let a of r) {
2841
+ i = 0;
2842
+ let r = n[a], o = c4ShapeFont(conf, r.typeC4Shape.text);
2843
+ switch (o.fontSize -= 2, r.typeC4Shape.width = calculateTextWidth("«" + r.typeC4Shape.text + "»", o), r.typeC4Shape.height = o.fontSize + 2, r.typeC4Shape.Y = conf.c4ShapePadding, i = r.typeC4Shape.Y + r.typeC4Shape.height - 4, r.image = {
2844
+ width: 0,
2845
+ height: 0,
2846
+ Y: 0
2847
+ }, r.typeC4Shape.text) {
2848
+ case "person":
2849
+ case "external_person":
2850
+ r.image.width = 48, r.image.height = 48, r.image.Y = i, i = r.image.Y + r.image.height;
2851
+ break;
2852
+ }
2853
+ r.sprite && (r.image.width = 48, r.image.height = 48, r.image.Y = i, i = r.image.Y + r.image.height);
2854
+ let s = r.wrap && conf.wrap, l = conf.width - conf.c4ShapePadding * 2, u = c4ShapeFont(conf, r.typeC4Shape.text);
2855
+ u.fontSize += 2, u.fontWeight = "bold", calcC4ShapeTextWH("label", r, s, u, l), r.label.Y = i + 8, i = r.label.Y + r.label.height, r.type && r.type.text !== "" ? (r.type.text = "[" + r.type.text + "]", calcC4ShapeTextWH("type", r, s, c4ShapeFont(conf, r.typeC4Shape.text), l), r.type.Y = i + 5, i = r.type.Y + r.type.height) : r.techn && r.techn.text !== "" && (r.techn.text = "[" + r.techn.text + "]", calcC4ShapeTextWH("techn", r, s, c4ShapeFont(conf, r.techn.text), l), r.techn.Y = i + 5, i = r.techn.Y + r.techn.height);
2856
+ let d = i, f = r.label.width;
2857
+ r.descr && r.descr.text !== "" && (calcC4ShapeTextWH("descr", r, s, c4ShapeFont(conf, r.typeC4Shape.text), l), r.descr.Y = i + 20, i = r.descr.Y + r.descr.height, f = Math.max(r.label.width, r.descr.width), d = i - r.descr.textLines * 5), f += conf.c4ShapePadding, r.width = Math.max(r.width || conf.width, f, conf.width), r.height = Math.max(r.height || conf.height, d, conf.height), r.margin = r.margin || conf.c4ShapeMargin, e.insert(r), svgDraw_default.drawC4Shape(t, r, conf);
2858
+ }
2859
+ e.bumpLastMargin(conf.c4ShapeMargin);
2860
+ }, "drawC4ShapeArray"), Point = class {
2861
+ static #e = __name(this, "Point");
2862
+ constructor(e, t) {
2863
+ this.x = e, this.y = t;
2864
+ }
2865
+ }, getIntersectPoint = /* @__PURE__ */ __name(function(e, t) {
2866
+ let n = e.x, r = e.y, i = t.x, a = t.y, o = n + e.width / 2, s = r + e.height / 2, l = Math.abs(n - i), u = Math.abs(r - a), d = u / l, f = e.height / e.width, p = null;
2867
+ return r == a && n < i ? p = new Point(n + e.width, s) : r == a && n > i ? p = new Point(n, s) : n == i && r < a ? p = new Point(o, r + e.height) : n == i && r > a && (p = new Point(o, r)), n > i && r < a ? p = f >= d ? new Point(n, s + d * e.width / 2) : new Point(o - l / u * e.height / 2, r + e.height) : n < i && r < a ? p = f >= d ? new Point(n + e.width, s + d * e.width / 2) : new Point(o + l / u * e.height / 2, r + e.height) : n < i && r > a ? p = f >= d ? new Point(n + e.width, s - d * e.width / 2) : new Point(o + e.height / 2 * l / u, r) : n > i && r > a && (p = f >= d ? new Point(n, s - e.width / 2 * d) : new Point(o - e.height / 2 * l / u, r)), p;
2868
+ }, "getIntersectPoint"), getIntersectPoints = /* @__PURE__ */ __name(function(e, t) {
2869
+ let n = {
2870
+ x: 0,
2871
+ y: 0
2872
+ };
2873
+ n.x = t.x + t.width / 2, n.y = t.y + t.height / 2;
2874
+ let r = getIntersectPoint(e, n);
2875
+ return n.x = e.x + e.width / 2, n.y = e.y + e.height / 2, {
2876
+ startPoint: r,
2877
+ endPoint: getIntersectPoint(t, n)
2878
+ };
2879
+ }, "getIntersectPoints"), drawRels2 = /* @__PURE__ */ __name(function(e, t, n, r) {
2880
+ let i = 0;
2881
+ for (let e of t) {
2882
+ i += 1;
2883
+ let t = e.wrap && conf.wrap, a = messageFont(conf);
2884
+ r.db.getC4Type() === "C4Dynamic" && (e.label.text = i + ": " + e.label.text);
2885
+ let o = calculateTextWidth(e.label.text, a);
2886
+ calcC4ShapeTextWH("label", e, t, a, o), e.techn && e.techn.text !== "" && (o = calculateTextWidth(e.techn.text, a), calcC4ShapeTextWH("techn", e, t, a, o)), e.descr && e.descr.text !== "" && (o = calculateTextWidth(e.descr.text, a), calcC4ShapeTextWH("descr", e, t, a, o));
2887
+ let s = getIntersectPoints(n(e.from), n(e.to));
2888
+ e.startPoint = s.startPoint, e.endPoint = s.endPoint;
2889
+ }
2890
+ svgDraw_default.drawRels(e, t, conf);
2891
+ }, "drawRels");
2892
+ function drawInsideBoundary(e, t, n, r, i) {
2893
+ let a = new Bounds(i);
2894
+ a.data.widthLimit = n.data.widthLimit / Math.min(c4BoundaryInRow2, r.length);
2895
+ for (let [o, s] of r.entries()) {
2896
+ let r = 0;
2897
+ s.image = {
2898
+ width: 0,
2899
+ height: 0,
2900
+ Y: 0
2901
+ }, s.sprite && (s.image.width = 48, s.image.height = 48, s.image.Y = r, r = s.image.Y + s.image.height);
2902
+ let l = s.wrap && conf.wrap, u = boundaryFont(conf);
2903
+ if (u.fontSize += 2, u.fontWeight = "bold", calcC4ShapeTextWH("label", s, l, u, a.data.widthLimit), s.label.Y = r + 8, r = s.label.Y + s.label.height, s.type && s.type.text !== "" && (s.type.text = "[" + s.type.text + "]", calcC4ShapeTextWH("type", s, l, boundaryFont(conf), a.data.widthLimit), s.type.Y = r + 5, r = s.type.Y + s.type.height), s.descr && s.descr.text !== "") {
2904
+ let e = boundaryFont(conf);
2905
+ e.fontSize -= 2, calcC4ShapeTextWH("descr", s, l, e, a.data.widthLimit), s.descr.Y = r + 20, r = s.descr.Y + s.descr.height;
2906
+ }
2907
+ if (o == 0 || o % c4BoundaryInRow2 === 0) {
2908
+ let e = n.data.startx + conf.diagramMarginX, t = n.data.stopy + conf.diagramMarginY + r;
2909
+ a.setData(e, e, t, t);
2910
+ } else {
2911
+ let e = a.data.stopx === a.data.startx ? a.data.startx : a.data.stopx + conf.diagramMarginX, t = a.data.starty;
2912
+ a.setData(e, e, t, t);
2913
+ }
2914
+ a.name = s.alias;
2915
+ let d = i.db.getC4ShapeArray(s.alias), f = i.db.getC4ShapeKeys(s.alias);
2916
+ f.length > 0 && drawC4ShapeArray(a, e, d, f), t = s.alias;
2917
+ let p = i.db.getBoundaries(t);
2918
+ p.length > 0 && drawInsideBoundary(e, t, a, p, i), s.alias !== "global" && drawBoundary2(e, s, a), n.data.stopy = Math.max(a.data.stopy + conf.c4ShapeMargin, n.data.stopy), n.data.stopx = Math.max(a.data.stopx + conf.c4ShapeMargin, n.data.stopx), globalBoundaryMaxX = Math.max(globalBoundaryMaxX, n.data.stopx), globalBoundaryMaxY = Math.max(globalBoundaryMaxY, n.data.stopy);
2919
+ }
2920
+ }
2921
+ __name(drawInsideBoundary, "drawInsideBoundary");
2922
+ var c4Renderer_default = {
2923
+ drawPersonOrSystemArray: drawC4ShapeArray,
2924
+ drawBoundary: drawBoundary2,
2925
+ setConf,
2926
+ draw: /* @__PURE__ */ __name(function(t, r, i, a) {
2927
+ conf = getConfig2().c4;
2928
+ let l = getConfig2().securityLevel, u;
2929
+ l === "sandbox" && (u = select_default("#i" + r));
2930
+ let d = select_default(l === "sandbox" ? u.nodes()[0].contentDocument.body : "body"), f = a.db;
2931
+ a.db.setWrap(conf.wrap), c4ShapeInRow2 = f.getC4ShapeInRow(), c4BoundaryInRow2 = f.getC4BoundaryInRow(), log.debug(`C:${JSON.stringify(conf, null, 2)}`);
2932
+ let p = l === "sandbox" ? d.select(`[id="${r}"]`) : select_default(`[id="${r}"]`);
2933
+ svgDraw_default.insertComputerIcon(p), svgDraw_default.insertDatabaseIcon(p), svgDraw_default.insertClockIcon(p);
2934
+ let m = new Bounds(a);
2935
+ m.setData(conf.diagramMarginX, conf.diagramMarginX, conf.diagramMarginY, conf.diagramMarginY), m.data.widthLimit = screen.availWidth, globalBoundaryMaxX = conf.diagramMarginX, globalBoundaryMaxY = conf.diagramMarginY;
2936
+ let h = a.db.getTitle();
2937
+ drawInsideBoundary(p, "", m, a.db.getBoundaries(""), a), svgDraw_default.insertArrowHead(p), svgDraw_default.insertArrowEnd(p), svgDraw_default.insertArrowCrossHead(p), svgDraw_default.insertArrowFilledHead(p), drawRels2(p, a.db.getRels(), a.db.getC4Shape, a), m.data.stopx = globalBoundaryMaxX, m.data.stopy = globalBoundaryMaxY;
2938
+ let g = m.data, _ = g.stopy - g.starty + 2 * conf.diagramMarginY, v = g.stopx - g.startx + 2 * conf.diagramMarginX;
2939
+ h && p.append("text").text(h).attr("x", (g.stopx - g.startx) / 2 - 4 * conf.diagramMarginX).attr("y", g.starty + conf.diagramMarginY), configureSvgSize(p, _, v, conf.useMaxWidth);
2940
+ let y = h ? 60 : 0;
2941
+ p.attr("viewBox", g.startx - conf.diagramMarginX + " -" + (conf.diagramMarginY + y) + " " + v + " " + (_ + y)), log.debug("models:", g);
2942
+ }, "draw")
2943
+ }, diagram = {
2944
+ parser: c4Diagram_default,
2945
+ db: c4Db_default,
2946
+ renderer: c4Renderer_default,
2947
+ styles: /* @__PURE__ */ __name((e) => `.person {
2948
+ stroke: ${e.personBorder};
2949
+ fill: ${e.personBkg};
2950
+ }
2951
+ `, "getStyles"),
2952
+ init: /* @__PURE__ */ __name(({ c4: e, wrap: t }) => {
2953
+ c4Renderer_default.setConf(e), c4Db_default.setWrap(t);
2954
+ }, "init")
2955
+ };
2956
+ export { diagram };