reflex-agent 0.4.1 → 0.6.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (255) hide show
  1. package/.next/BUILD_ID +1 -1
  2. package/.next/app-build-manifest.json +76 -76
  3. package/.next/app-path-routes-manifest.json +4 -4
  4. package/.next/build-manifest.json +5 -5
  5. package/.next/prerender-manifest.json +7 -7
  6. package/.next/react-loadable-manifest.json +1 -1
  7. package/.next/server/app/_not-found/page.js +1 -1
  8. package/.next/server/app/_not-found/page.js.nft.json +1 -1
  9. package/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
  10. package/.next/server/app/agents/[agentId]/page.js +3 -3
  11. package/.next/server/app/agents/[agentId]/page.js.nft.json +1 -1
  12. package/.next/server/app/agents/[agentId]/page_client-reference-manifest.js +1 -1
  13. package/.next/server/app/api/agents/[agentId]/respond/route.js +2 -2
  14. package/.next/server/app/api/agents/[agentId]/respond/route.js.nft.json +1 -1
  15. package/.next/server/app/api/agents/[agentId]/respond/route_client-reference-manifest.js +1 -1
  16. package/.next/server/app/api/images/[rootId]/[file]/route_client-reference-manifest.js +1 -1
  17. package/.next/server/app/api/oauth/callback/route_client-reference-manifest.js +1 -1
  18. package/.next/server/app/api/oauth/start/route_client-reference-manifest.js +1 -1
  19. package/.next/server/app/api/roots/[id]/attachments/route_client-reference-manifest.js +1 -1
  20. package/.next/server/app/api/roots/[id]/chat/[topicId]/send/route.js +2 -2
  21. package/.next/server/app/api/roots/[id]/chat/[topicId]/send/route.js.nft.json +1 -1
  22. package/.next/server/app/api/roots/[id]/chat/[topicId]/send/route_client-reference-manifest.js +1 -1
  23. package/.next/server/app/api/roots/[id]/chat/[topicId]/stop/route.js +2 -2
  24. package/.next/server/app/api/roots/[id]/chat/[topicId]/stop/route.js.nft.json +1 -1
  25. package/.next/server/app/api/roots/[id]/chat/[topicId]/stop/route_client-reference-manifest.js +1 -1
  26. package/.next/server/app/api/roots/[id]/chat/[topicId]/stream/route.js +3 -3
  27. package/.next/server/app/api/roots/[id]/chat/[topicId]/stream/route.js.nft.json +1 -1
  28. package/.next/server/app/api/roots/[id]/chat/[topicId]/stream/route_client-reference-manifest.js +1 -1
  29. package/.next/server/app/api/roots/[id]/dashboard/route.js +1 -1
  30. package/.next/server/app/api/roots/[id]/dashboard/route.js.nft.json +1 -1
  31. package/.next/server/app/api/roots/[id]/dashboard/route_client-reference-manifest.js +1 -1
  32. package/.next/server/app/api/roots/[id]/suggestions/route.js +1 -1
  33. package/.next/server/app/api/roots/[id]/suggestions/route.js.nft.json +1 -1
  34. package/.next/server/app/api/roots/[id]/suggestions/route_client-reference-manifest.js +1 -1
  35. package/.next/server/app/api/utilities/[scope]/[id]/bundle.js/route_client-reference-manifest.js +1 -1
  36. package/.next/server/app/api/utilities/[scope]/[id]/host/route.js +2 -2
  37. package/.next/server/app/api/utilities/[scope]/[id]/host/route.js.nft.json +1 -1
  38. package/.next/server/app/api/utilities/[scope]/[id]/host/route_client-reference-manifest.js +1 -1
  39. package/.next/server/app/api/utilities/[scope]/[id]/host-api.mjs/route_client-reference-manifest.js +1 -1
  40. package/.next/server/app/api/utilities/[scope]/[id]/host-ui.mjs/route_client-reference-manifest.js +1 -1
  41. package/.next/server/app/api/utilities/[scope]/[id]/iframe/route_client-reference-manifest.js +1 -1
  42. package/.next/server/app/api/utilities/[scope]/[id]/style.css/route_client-reference-manifest.js +1 -1
  43. package/.next/server/app/audit/page.js +1 -1
  44. package/.next/server/app/audit/page.js.nft.json +1 -1
  45. package/.next/server/app/audit/page_client-reference-manifest.js +1 -1
  46. package/.next/server/app/onboarding/page.js +3 -3
  47. package/.next/server/app/onboarding/page.js.nft.json +1 -1
  48. package/.next/server/app/onboarding/page_client-reference-manifest.js +1 -1
  49. package/.next/server/app/page.js +2 -2
  50. package/.next/server/app/page.js.nft.json +1 -1
  51. package/.next/server/app/page_client-reference-manifest.js +1 -1
  52. package/.next/server/app/roots/[id]/chat/[topicId]/page.js +2 -2
  53. package/.next/server/app/roots/[id]/chat/[topicId]/page.js.nft.json +1 -1
  54. package/.next/server/app/roots/[id]/chat/[topicId]/page_client-reference-manifest.js +1 -1
  55. package/.next/server/app/roots/[id]/kb/[...slug]/page.js +2 -2
  56. package/.next/server/app/roots/[id]/kb/[...slug]/page.js.nft.json +1 -1
  57. package/.next/server/app/roots/[id]/kb/[...slug]/page_client-reference-manifest.js +1 -1
  58. package/.next/server/app/roots/[id]/page.js +3 -3
  59. package/.next/server/app/roots/[id]/page.js.nft.json +1 -1
  60. package/.next/server/app/roots/[id]/page_client-reference-manifest.js +1 -1
  61. package/.next/server/app/roots/[id]/workflows/[wfId]/page.js +2 -2
  62. package/.next/server/app/roots/[id]/workflows/[wfId]/page.js.nft.json +1 -1
  63. package/.next/server/app/roots/[id]/workflows/[wfId]/page_client-reference-manifest.js +1 -1
  64. package/.next/server/app/roots/[id]/workflows/page.js +1 -1
  65. package/.next/server/app/roots/[id]/workflows/page.js.nft.json +1 -1
  66. package/.next/server/app/roots/[id]/workflows/page_client-reference-manifest.js +1 -1
  67. package/.next/server/app/roots/new/page.js +3 -3
  68. package/.next/server/app/roots/new/page.js.nft.json +1 -1
  69. package/.next/server/app/roots/new/page_client-reference-manifest.js +1 -1
  70. package/.next/server/app/settings/page.js +5 -5
  71. package/.next/server/app/settings/page.js.nft.json +1 -1
  72. package/.next/server/app/settings/page_client-reference-manifest.js +1 -1
  73. package/.next/server/app/share/[id]/file/page.js +2 -2
  74. package/.next/server/app/share/[id]/file/page.js.nft.json +1 -1
  75. package/.next/server/app/share/[id]/file/page_client-reference-manifest.js +1 -1
  76. package/.next/server/app/share/[id]/page.js +2 -2
  77. package/.next/server/app/share/[id]/page.js.nft.json +1 -1
  78. package/.next/server/app/share/[id]/page_client-reference-manifest.js +1 -1
  79. package/.next/server/app/utilities/[scope]/[id]/page.js +2 -2
  80. package/.next/server/app/utilities/[scope]/[id]/page.js.nft.json +1 -1
  81. package/.next/server/app/utilities/[scope]/[id]/page_client-reference-manifest.js +1 -1
  82. package/.next/server/app/utilities/page.js +2 -2
  83. package/.next/server/app/utilities/page.js.nft.json +1 -1
  84. package/.next/server/app/utilities/page_client-reference-manifest.js +1 -1
  85. package/.next/server/app-paths-manifest.json +4 -4
  86. package/.next/server/chunks/1004.js +1 -0
  87. package/.next/server/chunks/106.js +148 -0
  88. package/.next/server/chunks/1100.js +34 -0
  89. package/.next/server/chunks/1220.js +115 -0
  90. package/.next/server/chunks/1271.js +79 -0
  91. package/.next/server/chunks/1378.js +23 -0
  92. package/.next/server/chunks/{8312.js → 1469.js} +2 -2
  93. package/.next/server/chunks/1640.js +29 -0
  94. package/.next/server/chunks/1811.js +1 -0
  95. package/.next/server/chunks/1869.js +93 -0
  96. package/.next/server/chunks/1973.js +166 -0
  97. package/.next/server/chunks/2249.js +1 -0
  98. package/.next/server/chunks/2264.js +287 -0
  99. package/.next/server/chunks/2278.js +1 -0
  100. package/.next/server/chunks/2318.js +1 -0
  101. package/.next/server/chunks/2485.js +2 -2
  102. package/.next/server/chunks/2521.js +1 -0
  103. package/.next/server/chunks/2552.js +1 -0
  104. package/.next/server/chunks/2626.js +1 -0
  105. package/.next/server/chunks/2669.js +104 -0
  106. package/.next/server/chunks/2673.js +153 -0
  107. package/.next/server/chunks/2749.js +1 -0
  108. package/.next/server/chunks/2761.js +90 -0
  109. package/.next/server/chunks/285.js +72 -17
  110. package/.next/server/chunks/2886.js +64 -0
  111. package/.next/server/chunks/{2995.js → 3152.js} +1 -1
  112. package/.next/server/chunks/3332.js +1 -1
  113. package/.next/server/chunks/3378.js +1 -0
  114. package/.next/server/chunks/3475.js +1 -0
  115. package/.next/server/chunks/352.js +79 -0
  116. package/.next/server/chunks/360.js +1 -0
  117. package/.next/server/chunks/3746.js +93 -0
  118. package/.next/server/chunks/3811.js +5 -0
  119. package/.next/server/chunks/383.js +80 -0
  120. package/.next/server/chunks/3870.js +215 -0
  121. package/.next/server/chunks/3935.js +34 -0
  122. package/.next/server/chunks/4031.js +2 -2
  123. package/.next/server/chunks/4046.js +141 -0
  124. package/.next/server/chunks/416.js +77 -0
  125. package/.next/server/chunks/4263.js +1 -0
  126. package/.next/server/chunks/4282.js +1 -0
  127. package/.next/server/chunks/431.js +1 -0
  128. package/.next/server/chunks/4339.js +23 -0
  129. package/.next/server/chunks/4343.js +148 -0
  130. package/.next/server/chunks/4450.js +80 -0
  131. package/.next/server/chunks/4457.js +1 -0
  132. package/.next/server/chunks/4537.js +43 -0
  133. package/.next/server/chunks/4580.js +1 -0
  134. package/.next/server/chunks/4653.js +1 -0
  135. package/.next/server/chunks/4695.js +77 -0
  136. package/.next/server/chunks/4733.js +1 -0
  137. package/.next/server/chunks/4812.js +1 -1
  138. package/.next/server/chunks/4828.js +80 -0
  139. package/.next/server/chunks/4851.js +1 -0
  140. package/.next/server/chunks/4863.js +29 -0
  141. package/.next/server/chunks/4925.js +1 -1
  142. package/.next/server/chunks/4959.js +1 -0
  143. package/.next/server/chunks/5080.js +43 -0
  144. package/.next/server/chunks/5142.js +1 -0
  145. package/.next/server/chunks/5236.js +3 -0
  146. package/.next/server/chunks/539.js +1 -0
  147. package/.next/server/chunks/5395.js +1 -0
  148. package/.next/server/chunks/5407.js +9 -0
  149. package/.next/server/chunks/5558.js +1 -0
  150. package/.next/server/chunks/5690.js +1 -0
  151. package/.next/server/chunks/5723.js +1 -0
  152. package/.next/server/chunks/5753.js +1 -0
  153. package/.next/server/chunks/5783.js +226 -0
  154. package/.next/server/chunks/5811.js +1 -0
  155. package/.next/server/chunks/5822.js +24 -0
  156. package/.next/server/chunks/6038.js +252 -0
  157. package/.next/server/chunks/617.js +24 -0
  158. package/.next/server/chunks/6294.js +1 -0
  159. package/.next/server/chunks/6332.js +1 -0
  160. package/.next/server/chunks/6355.js +1 -0
  161. package/.next/server/chunks/6460.js +5 -0
  162. package/.next/server/chunks/6483.js +252 -0
  163. package/.next/server/chunks/6888.js +1 -0
  164. package/.next/server/chunks/6909.js +71 -16
  165. package/.next/server/chunks/6923.js +1 -0
  166. package/.next/server/chunks/6946.js +1 -0
  167. package/.next/server/chunks/7068.js +1 -0
  168. package/.next/server/chunks/7118.js +24 -0
  169. package/.next/server/chunks/7242.js +166 -0
  170. package/.next/server/chunks/7315.js +1 -0
  171. package/.next/server/chunks/7356.js +141 -0
  172. package/.next/server/chunks/7520.js +226 -0
  173. package/.next/server/chunks/7759.js +1 -0
  174. package/.next/server/chunks/7800.js +1 -0
  175. package/.next/server/chunks/7934.js +1 -0
  176. package/.next/server/chunks/7948.js +1 -0
  177. package/.next/server/chunks/795.js +115 -0
  178. package/.next/server/chunks/8015.js +287 -0
  179. package/.next/server/chunks/8019.js +80 -0
  180. package/.next/server/chunks/8150.js +1 -0
  181. package/.next/server/chunks/824.js +1 -0
  182. package/.next/server/chunks/8326.js +1 -0
  183. package/.next/server/chunks/8384.js +153 -0
  184. package/.next/server/chunks/8451.js +1 -0
  185. package/.next/server/chunks/8674.js +104 -0
  186. package/.next/server/chunks/8897.js +64 -0
  187. package/.next/server/chunks/8945.js +1 -0
  188. package/.next/server/chunks/8948.js +36 -0
  189. package/.next/server/chunks/8977.js +1 -0
  190. package/.next/server/chunks/9024.js +1 -0
  191. package/.next/server/chunks/9098.js +1 -1
  192. package/.next/server/chunks/9269.js +1 -0
  193. package/.next/server/chunks/9417.js +215 -0
  194. package/.next/server/chunks/9419.js +36 -0
  195. package/.next/server/chunks/9490.js +9 -0
  196. package/.next/server/chunks/9496.js +90 -0
  197. package/.next/server/chunks/9513.js +24 -0
  198. package/.next/server/chunks/9537.js +1 -0
  199. package/.next/server/chunks/9745.js +1 -0
  200. package/.next/server/chunks/9965.js +1 -0
  201. package/.next/server/functions-config-manifest.json +3 -3
  202. package/.next/server/middleware-build-manifest.js +1 -1
  203. package/.next/server/middleware-manifest.json +5 -5
  204. package/.next/server/middleware-react-loadable-manifest.js +1 -1
  205. package/.next/server/pages/500.html +1 -1
  206. package/.next/server/server-reference-manifest.js +1 -1
  207. package/.next/server/server-reference-manifest.json +1 -1
  208. package/.next/static/chunks/2495-b11b2422a7f01945.js +1 -0
  209. package/.next/static/chunks/4108.74888011d3aa4cf8.js +1 -0
  210. package/.next/static/chunks/4546-6b7685845956a69f.js +1 -0
  211. package/.next/static/chunks/5407-2feacc6f9f69ba5d.js +1 -0
  212. package/.next/static/chunks/5434-407bb17ca2d631c9.js +1 -0
  213. package/.next/static/chunks/9348-912a9c1ec1da16dd.js +1 -0
  214. package/.next/static/chunks/app/layout-9a1dc11fccf70758.js +1 -0
  215. package/.next/static/chunks/app/onboarding/page-75acce6d5865dd64.js +1 -0
  216. package/.next/static/chunks/app/page-4f957a9ee1f7e2aa.js +1 -0
  217. package/.next/static/chunks/app/roots/[id]/chat/[topicId]/page-971b4c18ab2192d8.js +1 -0
  218. package/.next/static/chunks/app/roots/[id]/kb/[...slug]/page-4c8addbba297f0f8.js +1 -0
  219. package/.next/static/chunks/app/roots/[id]/page-0ea2bcca25dec0d0.js +1 -0
  220. package/.next/static/chunks/app/roots/[id]/workflows/[wfId]/page-6aa86d582b1f2bb0.js +1 -0
  221. package/.next/static/chunks/app/roots/new/page-b5f8ba6c3cd48d1b.js +1 -0
  222. package/.next/static/chunks/app/settings/page-5dde78a2421d0f4f.js +1 -0
  223. package/.next/static/chunks/app/share/[id]/page-162b9b2ab72f796f.js +1 -0
  224. package/.next/static/chunks/app/utilities/[scope]/[id]/page-891588bc6ce662f1.js +1 -0
  225. package/.next/static/chunks/app/utilities/page-8b0b3a9b569dcbe2.js +1 -0
  226. package/.next/static/chunks/{webpack-6c7ed0da8ba98645.js → webpack-5087eda6b4198971.js} +1 -1
  227. package/.next/trace +89 -47
  228. package/dist/lib/reflex/agents/prompts.js +66 -0
  229. package/dist/lib/reflex/agents/prompts.js.map +1 -1
  230. package/package.json +1 -1
  231. package/.next/server/chunks/1373.js +0 -1
  232. package/.next/server/chunks/1669.js +0 -1
  233. package/.next/server/chunks/3004.js +0 -1
  234. package/.next/server/chunks/3795.js +0 -3
  235. package/.next/server/chunks/9883.js +0 -1
  236. package/.next/static/chunks/1477-a74db494f91aeafc.js +0 -1
  237. package/.next/static/chunks/3496-59013c5bb64c51a9.js +0 -1
  238. package/.next/static/chunks/4108.71716ca4d2bdad01.js +0 -1
  239. package/.next/static/chunks/6132-51c867b4544ebefc.js +0 -1
  240. package/.next/static/chunks/7887-6a5dd2999717777f.js +0 -1
  241. package/.next/static/chunks/8151-41c02ad988318d11.js +0 -1
  242. package/.next/static/chunks/app/layout-8e0de66d47e2d411.js +0 -1
  243. package/.next/static/chunks/app/onboarding/page-1ec2ec3dadef91b8.js +0 -1
  244. package/.next/static/chunks/app/page-e9b67e9e2ee870ac.js +0 -1
  245. package/.next/static/chunks/app/roots/[id]/chat/[topicId]/page-438c36466499e15f.js +0 -1
  246. package/.next/static/chunks/app/roots/[id]/kb/[...slug]/page-21d327eaa0619f9e.js +0 -1
  247. package/.next/static/chunks/app/roots/[id]/page-cb8185fedf0f5f4d.js +0 -1
  248. package/.next/static/chunks/app/roots/[id]/workflows/[wfId]/page-40899d4270be9549.js +0 -1
  249. package/.next/static/chunks/app/roots/new/page-2379e2c4c2a63ce2.js +0 -1
  250. package/.next/static/chunks/app/settings/page-e3a46803ee1a5992.js +0 -1
  251. package/.next/static/chunks/app/share/[id]/page-c3b61aff7aa5d75e.js +0 -1
  252. package/.next/static/chunks/app/utilities/[scope]/[id]/page-e378fbede449f071.js +0 -1
  253. package/.next/static/chunks/app/utilities/page-60d7c81fe67376d2.js +0 -1
  254. /package/.next/static/{q-lgiDq7RjplLNgYcdvi2 → -HzWlqabyti20irA-SaOJ}/_buildManifest.js +0 -0
  255. /package/.next/static/{q-lgiDq7RjplLNgYcdvi2 → -HzWlqabyti20irA-SaOJ}/_ssgManifest.js +0 -0
@@ -0,0 +1,93 @@
1
+ "use strict";exports.id=3746,exports.ids=[3746],exports.modules={43746:(a,b,c)=>{c.d(b,{diagram:()=>F});var d=c(1389),e=c(48492),f=c(88446),g=c(80713);c(53724),c(40716),c(63660),c(38371);var h=c(10340),i=c(57440),j=c(48768),k=c(24794),l=c(94824),m=function(){var a=(0,i.K2)(function(a,b,c,d){for(c=c||{},d=a.length;d--;c[a[d]]=b);return c},"o"),b=[1,4],c=[1,13],d=[1,12],e=[1,15],f=[1,16],g=[1,20],h=[1,19],j=[6,7,8],k=[1,26],l=[1,24],m=[1,25],n=[6,7,11],o=[1,31],p=[6,7,11,24],q=[1,6,13,16,17,20,23],r=[1,35],s=[1,36],t=[1,6,7,11,13,16,17,20,23],u=[1,38],v={trace:(0,i.K2)(function(){},"trace"),yy:{},symbols_:{error:2,start:3,mindMap:4,spaceLines:5,SPACELINE:6,NL:7,KANBAN:8,document:9,stop:10,EOF:11,statement:12,SPACELIST:13,node:14,shapeData:15,ICON:16,CLASS:17,nodeWithId:18,nodeWithoutId:19,NODE_DSTART:20,NODE_DESCR:21,NODE_DEND:22,NODE_ID:23,SHAPE_DATA:24,$accept:0,$end:1},terminals_:{2:"error",6:"SPACELINE",7:"NL",8:"KANBAN",11:"EOF",13:"SPACELIST",16:"ICON",17:"CLASS",20:"NODE_DSTART",21:"NODE_DESCR",22:"NODE_DEND",23:"NODE_ID",24:"SHAPE_DATA"},productions_:[0,[3,1],[3,2],[5,1],[5,2],[5,2],[4,2],[4,3],[10,1],[10,1],[10,1],[10,2],[10,2],[9,3],[9,2],[12,3],[12,2],[12,2],[12,2],[12,1],[12,2],[12,1],[12,1],[12,1],[12,1],[14,1],[14,1],[19,3],[18,1],[18,4],[15,2],[15,1]],performAction:(0,i.K2)(function(a,b,c,d,e,f,g){var h=f.length-1;switch(e){case 6:case 7:return d;case 8:d.getLogger().trace("Stop NL ");break;case 9:d.getLogger().trace("Stop EOF ");break;case 11:d.getLogger().trace("Stop NL2 ");break;case 12:d.getLogger().trace("Stop EOF2 ");break;case 15:d.getLogger().info("Node: ",f[h-1].id),d.addNode(f[h-2].length,f[h-1].id,f[h-1].descr,f[h-1].type,f[h]);break;case 16:d.getLogger().info("Node: ",f[h].id),d.addNode(f[h-1].length,f[h].id,f[h].descr,f[h].type);break;case 17:d.getLogger().trace("Icon: ",f[h]),d.decorateNode({icon:f[h]});break;case 18:case 23:d.decorateNode({class:f[h]});break;case 19:d.getLogger().trace("SPACELIST");break;case 20:d.getLogger().trace("Node: ",f[h-1].id),d.addNode(0,f[h-1].id,f[h-1].descr,f[h-1].type,f[h]);break;case 21:d.getLogger().trace("Node: ",f[h].id),d.addNode(0,f[h].id,f[h].descr,f[h].type);break;case 22:d.decorateNode({icon:f[h]});break;case 27:d.getLogger().trace("node found ..",f[h-2]),this.$={id:f[h-1],descr:f[h-1],type:d.getType(f[h-2],f[h])};break;case 28:this.$={id:f[h],descr:f[h],type:0};break;case 29:d.getLogger().trace("node found ..",f[h-3]),this.$={id:f[h-3],descr:f[h-1],type:d.getType(f[h-2],f[h])};break;case 30:this.$=f[h-1]+f[h];break;case 31:this.$=f[h]}},"anonymous"),table:[{3:1,4:2,5:3,6:[1,5],8:b},{1:[3]},{1:[2,1]},{4:6,6:[1,7],7:[1,8],8:b},{6:c,7:[1,10],9:9,12:11,13:d,14:14,16:e,17:f,18:17,19:18,20:g,23:h},a(j,[2,3]),{1:[2,2]},a(j,[2,4]),a(j,[2,5]),{1:[2,6],6:c,12:21,13:d,14:14,16:e,17:f,18:17,19:18,20:g,23:h},{6:c,9:22,12:11,13:d,14:14,16:e,17:f,18:17,19:18,20:g,23:h},{6:k,7:l,10:23,11:m},a(n,[2,24],{18:17,19:18,14:27,16:[1,28],17:[1,29],20:g,23:h}),a(n,[2,19]),a(n,[2,21],{15:30,24:o}),a(n,[2,22]),a(n,[2,23]),a(p,[2,25]),a(p,[2,26]),a(p,[2,28],{20:[1,32]}),{21:[1,33]},{6:k,7:l,10:34,11:m},{1:[2,7],6:c,12:21,13:d,14:14,16:e,17:f,18:17,19:18,20:g,23:h},a(q,[2,14],{7:r,11:s}),a(t,[2,8]),a(t,[2,9]),a(t,[2,10]),a(n,[2,16],{15:37,24:o}),a(n,[2,17]),a(n,[2,18]),a(n,[2,20],{24:u}),a(p,[2,31]),{21:[1,39]},{22:[1,40]},a(q,[2,13],{7:r,11:s}),a(t,[2,11]),a(t,[2,12]),a(n,[2,15],{24:u}),a(p,[2,30]),{22:[1,41]},a(p,[2,27]),a(p,[2,29])],defaultActions:{2:[2,1],6:[2,2]},parseError:(0,i.K2)(function(a,b){if(b.recoverable)this.trace(a);else{var c=Error(a);throw c.hash=b,c}},"parseError"),parse:(0,i.K2)(function(a){var b=this,c=[0],d=[],e=[null],f=[],g=this.table,h="",j=0,k=0,l=0,m=f.slice.call(arguments,1),n=Object.create(this.lexer),o={};for(var p in this.yy)Object.prototype.hasOwnProperty.call(this.yy,p)&&(o[p]=this.yy[p]);n.setInput(a,o),o.lexer=n,o.parser=this,void 0===n.yylloc&&(n.yylloc={});var q=n.yylloc;f.push(q);var r=n.options&&n.options.ranges;function s(){var a;return"number"!=typeof(a=d.pop()||n.lex()||1)&&(a instanceof Array&&(a=(d=a).pop()),a=b.symbols_[a]||a),a}"function"==typeof o.parseError?this.parseError=o.parseError:this.parseError=Object.getPrototypeOf(this).parseError,(0,i.K2)(function(a){c.length=c.length-2*a,e.length=e.length-a,f.length=f.length-a},"popStack"),(0,i.K2)(s,"lex");for(var t,u,v,w,x,y,z,A,B,C={};;){if(v=c[c.length-1],this.defaultActions[v]?w=this.defaultActions[v]:(null==t&&(t=s()),w=g[v]&&g[v][t]),void 0===w||!w.length||!w[0]){var D="";for(y in B=[],g[v])this.terminals_[y]&&y>2&&B.push("'"+this.terminals_[y]+"'");D=n.showPosition?"Parse error on line "+(j+1)+":\n"+n.showPosition()+"\nExpecting "+B.join(", ")+", got '"+(this.terminals_[t]||t)+"'":"Parse error on line "+(j+1)+": Unexpected "+(1==t?"end of input":"'"+(this.terminals_[t]||t)+"'"),this.parseError(D,{text:n.match,token:this.terminals_[t]||t,line:n.yylineno,loc:q,expected:B})}if(w[0]instanceof Array&&w.length>1)throw Error("Parse Error: multiple actions possible at state: "+v+", token: "+t);switch(w[0]){case 1:c.push(t),e.push(n.yytext),f.push(n.yylloc),c.push(w[1]),t=null,u?(t=u,u=null):(k=n.yyleng,h=n.yytext,j=n.yylineno,q=n.yylloc,l>0&&l--);break;case 2:if(z=this.productions_[w[1]][1],C.$=e[e.length-z],C._$={first_line:f[f.length-(z||1)].first_line,last_line:f[f.length-1].last_line,first_column:f[f.length-(z||1)].first_column,last_column:f[f.length-1].last_column},r&&(C._$.range=[f[f.length-(z||1)].range[0],f[f.length-1].range[1]]),void 0!==(x=this.performAction.apply(C,[h,k,j,o,w[1],e,f].concat(m))))return x;z&&(c=c.slice(0,-1*z*2),e=e.slice(0,-1*z),f=f.slice(0,-1*z)),c.push(this.productions_[w[1]][0]),e.push(C.$),f.push(C._$),A=g[c[c.length-2]][c[c.length-1]],c.push(A);break;case 3:return!0}}return!0},"parse")};function w(){this.yy={}}return v.lexer={EOF:1,parseError:(0,i.K2)(function(a,b){if(this.yy.parser)this.yy.parser.parseError(a,b);else throw Error(a)},"parseError"),setInput:(0,i.K2)(function(a,b){return this.yy=b||this.yy||{},this._input=a,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},"setInput"),input:(0,i.K2)(function(){var a=this._input[0];return this.yytext+=a,this.yyleng++,this.offset++,this.match+=a,this.matched+=a,a.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),a},"input"),unput:(0,i.K2)(function(a){var b=a.length,c=a.split(/(?:\r\n?|\n)/g);this._input=a+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-b),this.offset-=b;var d=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),c.length-1&&(this.yylineno-=c.length-1);var e=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:c?(c.length===d.length?this.yylloc.first_column:0)+d[d.length-c.length].length-c[0].length:this.yylloc.first_column-b},this.options.ranges&&(this.yylloc.range=[e[0],e[0]+this.yyleng-b]),this.yyleng=this.yytext.length,this},"unput"),more:(0,i.K2)(function(){return this._more=!0,this},"more"),reject:(0,i.K2)(function(){return this.options.backtrack_lexer?(this._backtrack=!0,this):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(),{text:"",token:null,line:this.yylineno})},"reject"),less:(0,i.K2)(function(a){this.unput(this.match.slice(a))},"less"),pastInput:(0,i.K2)(function(){var a=this.matched.substr(0,this.matched.length-this.match.length);return(a.length>20?"...":"")+a.substr(-20).replace(/\n/g,"")},"pastInput"),upcomingInput:(0,i.K2)(function(){var a=this.match;return a.length<20&&(a+=this._input.substr(0,20-a.length)),(a.substr(0,20)+(a.length>20?"...":"")).replace(/\n/g,"")},"upcomingInput"),showPosition:(0,i.K2)(function(){var a=this.pastInput(),b=Array(a.length+1).join("-");return a+this.upcomingInput()+"\n"+b+"^"},"showPosition"),test_match:(0,i.K2)(function(a,b){var c,d,e;if(this.options.backtrack_lexer&&(e={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges&&(e.yylloc.range=this.yylloc.range.slice(0))),(d=a[0].match(/(?:\r\n?|\n).*/g))&&(this.yylineno+=d.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:d?d[d.length-1].length-d[d.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+a[0].length},this.yytext+=a[0],this.match+=a[0],this.matches=a,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(a[0].length),this.matched+=a[0],c=this.performAction.call(this,this.yy,this,b,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),c)return c;if(this._backtrack)for(var f in e)this[f]=e[f];return!1},"test_match"),next:(0,i.K2)(function(){if(this.done)return this.EOF;this._input||(this.done=!0),this._more||(this.yytext="",this.match="");for(var a,b,c,d,e=this._currentRules(),f=0;f<e.length;f++)if((c=this._input.match(this.rules[e[f]]))&&(!b||c[0].length>b[0].length)){if(b=c,d=f,this.options.backtrack_lexer){if(!1!==(a=this.test_match(c,e[f])))return a;if(!this._backtrack)return!1;b=!1;continue}if(!this.options.flex)break}return b?!1!==(a=this.test_match(b,e[d]))&&a:""===this._input?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+". Unrecognized text.\n"+this.showPosition(),{text:"",token:null,line:this.yylineno})},"next"),lex:(0,i.K2)(function(){var a=this.next();return a||this.lex()},"lex"),begin:(0,i.K2)(function(a){this.conditionStack.push(a)},"begin"),popState:(0,i.K2)(function(){return this.conditionStack.length-1>0?this.conditionStack.pop():this.conditionStack[0]},"popState"),_currentRules:(0,i.K2)(function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules},"_currentRules"),topState:(0,i.K2)(function(a){return(a=this.conditionStack.length-1-Math.abs(a||0))>=0?this.conditionStack[a]:"INITIAL"},"topState"),pushState:(0,i.K2)(function(a){this.begin(a)},"pushState"),stateStackSize:(0,i.K2)(function(){return this.conditionStack.length},"stateStackSize"),options:{"case-insensitive":!0},performAction:(0,i.K2)(function(a,b,c,d){switch(c){case 0:return this.pushState("shapeData"),b.yytext="",24;case 1:return this.pushState("shapeDataStr"),24;case 2:return this.popState(),24;case 3:return b.yytext=b.yytext.replace(/\n\s*/g,"<br/>"),24;case 4:return 24;case 5:case 10:case 29:case 32:this.popState();break;case 6:return a.getLogger().trace("Found comment",b.yytext),6;case 7:return 8;case 8:this.begin("CLASS");break;case 9:return this.popState(),17;case 11:a.getLogger().trace("Begin icon"),this.begin("ICON");break;case 12:return a.getLogger().trace("SPACELINE"),6;case 13:return 7;case 14:return 16;case 15:a.getLogger().trace("end icon"),this.popState();break;case 16:return a.getLogger().trace("Exploding node"),this.begin("NODE"),20;case 17:return a.getLogger().trace("Cloud"),this.begin("NODE"),20;case 18:return a.getLogger().trace("Explosion Bang"),this.begin("NODE"),20;case 19:return a.getLogger().trace("Cloud Bang"),this.begin("NODE"),20;case 20:case 21:case 22:case 23:return this.begin("NODE"),20;case 24:return 13;case 25:return 23;case 26:return 11;case 27:this.begin("NSTR2");break;case 28:return"NODE_DESCR";case 30:a.getLogger().trace("Starting NSTR"),this.begin("NSTR");break;case 31:return a.getLogger().trace("description:",b.yytext),"NODE_DESCR";case 33:return this.popState(),a.getLogger().trace("node end ))"),"NODE_DEND";case 34:return this.popState(),a.getLogger().trace("node end )"),"NODE_DEND";case 35:return this.popState(),a.getLogger().trace("node end ...",b.yytext),"NODE_DEND";case 36:case 39:case 40:return this.popState(),a.getLogger().trace("node end (("),"NODE_DEND";case 37:case 38:return this.popState(),a.getLogger().trace("node end (-"),"NODE_DEND";case 41:case 42:return a.getLogger().trace("Long description:",b.yytext),21}},"anonymous"),rules:[/^(?:@\{)/i,/^(?:["])/i,/^(?:["])/i,/^(?:[^\"]+)/i,/^(?:[^}^"]+)/i,/^(?:\})/i,/^(?:\s*%%.*)/i,/^(?:kanban\b)/i,/^(?::::)/i,/^(?:.+)/i,/^(?:\n)/i,/^(?:::icon\()/i,/^(?:[\s]+[\n])/i,/^(?:[\n]+)/i,/^(?:[^\)]+)/i,/^(?:\))/i,/^(?:-\))/i,/^(?:\(-)/i,/^(?:\)\))/i,/^(?:\))/i,/^(?:\(\()/i,/^(?:\{\{)/i,/^(?:\()/i,/^(?:\[)/i,/^(?:[\s]+)/i,/^(?:[^\(\[\n\)\{\}@]+)/i,/^(?:$)/i,/^(?:["][`])/i,/^(?:[^`"]+)/i,/^(?:[`]["])/i,/^(?:["])/i,/^(?:[^"]+)/i,/^(?:["])/i,/^(?:[\)]\))/i,/^(?:[\)])/i,/^(?:[\]])/i,/^(?:\}\})/i,/^(?:\(-)/i,/^(?:-\))/i,/^(?:\(\()/i,/^(?:\()/i,/^(?:[^\)\]\(\}]+)/i,/^(?:.+(?!\(\())/i],conditions:{shapeDataEndBracket:{rules:[],inclusive:!1},shapeDataStr:{rules:[2,3],inclusive:!1},shapeData:{rules:[1,4,5],inclusive:!1},CLASS:{rules:[9,10],inclusive:!1},ICON:{rules:[14,15],inclusive:!1},NSTR2:{rules:[28,29],inclusive:!1},NSTR:{rules:[31,32],inclusive:!1},NODE:{rules:[27,30,33,34,35,36,37,38,39,40,41,42],inclusive:!1},INITIAL:{rules:[0,6,7,8,11,12,13,16,17,18,19,20,21,22,23,24,25,26],inclusive:!0}}},(0,i.K2)(w,"Parser"),w.prototype=v,v.Parser=w,new w}();m.parser=m;var n=[],o=[],p=0,q={},r=(0,i.K2)(()=>{n=[],o=[],p=0,q={}},"clear"),s=(0,i.K2)(a=>{if(0===n.length)return null;let b=n[0].level,c=null;for(let a=n.length-1;a>=0;a--)if(n[a].level!==b||c||(c=n[a]),n[a].level<b)throw Error('Items without section detected, found section ("'+n[a].label+'")');return a===c?.level?null:c},"getSection"),t=(0,i.K2)(function(){return o},"getSections"),u=(0,i.K2)(function(){let a=[],b=t(),c=(0,h.D7)();for(let d of b){let b={id:d.id,label:(0,h.jZ)(d.label??"",c),labelType:"markdown",isGroup:!0,ticket:d.ticket,shape:"kanbanSection",level:d.level,look:c.look};for(let e of(a.push(b),n.filter(a=>a.parentId===d.id))){let b={id:e.id,parentId:d.id,label:(0,h.jZ)(e.label??"",c),labelType:"markdown",isGroup:!1,ticket:e?.ticket,priority:e?.priority,assigned:e?.assigned,icon:e?.icon,shape:"kanbanItem",level:e.level,rx:5,ry:5,cssStyles:["text-align: left"]};a.push(b)}}return{nodes:a,edges:[],other:{},config:(0,h.D7)()}},"getData"),v=(0,i.K2)((a,b,c,d,e)=>{let g=(0,h.D7)(),i=g.mindmap?.padding??h.UI.mindmap.padding;switch(d){case w.ROUNDED_RECT:case w.RECT:case w.HEXAGON:i*=2}let j={id:(0,h.jZ)(b,g)||"kbn"+p++,level:a,label:(0,h.jZ)(c,g),width:g.mindmap?.maxNodeWidth??h.UI.mindmap.maxNodeWidth,padding:i,isGroup:!1};if(void 0!==e){let a;a=e.includes("\n")?e+"\n":"{\n"+e+"\n}";let b=(0,f.H)(a,{schema:f.r});if(b.shape&&(b.shape!==b.shape.toLowerCase()||b.shape.includes("_")))throw Error(`No such shape: ${b.shape}. Shape names should be lowercase.`);b?.shape&&"kanbanItem"===b.shape&&(j.shape=b?.shape),b?.label&&(j.label=b?.label),b?.icon&&(j.icon=b?.icon.toString()),b?.assigned&&(j.assigned=b?.assigned.toString()),b?.ticket&&(j.ticket=b?.ticket.toString()),b?.priority&&(j.priority=b?.priority)}let k=s(a);k?j.parentId=k.id||"kbn"+p++:o.push(j),n.push(j)},"addNode"),w={DEFAULT:0,NO_BORDER:0,ROUNDED_RECT:1,RECT:2,CIRCLE:3,CLOUD:4,BANG:5,HEXAGON:6},x=(0,i.K2)((a,b)=>{switch(i.Rm.debug("In get type",a,b),a){case"[":return w.RECT;case"(":return")"===b?w.ROUNDED_RECT:w.CLOUD;case"((":return w.CIRCLE;case")":return w.CLOUD;case"))":return w.BANG;case"{{":return w.HEXAGON;default:return w.DEFAULT}},"getType"),y=(0,i.K2)((a,b)=>{q[a]=b},"setElementForId"),z=(0,i.K2)(a=>{if(!a)return;let b=(0,h.D7)(),c=n[n.length-1];a.icon&&(c.icon=(0,h.jZ)(a.icon,b)),a.class&&(c.cssClasses=(0,h.jZ)(a.class,b))},"decorateNode"),A=(0,i.K2)(a=>{switch(a){case w.DEFAULT:return"no-border";case w.RECT:return"rect";case w.ROUNDED_RECT:return"rounded-rect";case w.CIRCLE:return"circle";case w.CLOUD:return"cloud";case w.BANG:return"bang";case w.HEXAGON:return"hexgon";default:return"no-border"}},"type2Str"),B=(0,i.K2)(()=>i.Rm,"getLogger"),C=(0,i.K2)(a=>q[a],"getElementById"),D=(0,i.K2)(async(a,b,c,e)=>{i.Rm.debug("Rendering kanban diagram\n"+a);let f=e.db.getData(),j=(0,h.D7)();j.htmlLabels=!1;let k=(0,d.D)(b);for(let a of f.nodes)a.domId=`${b}-${a.id}`;let l=k.append("g");l.attr("class","sections");let m=k.append("g");m.attr("class","items");let n=f.nodes.filter(a=>a.isGroup),o=0,p=[],q=25;for(let a of n){let b=j?.kanban?.sectionWidth||200;a.x=b*(o+=1)+(o-1)*10/2,a.width=b,a.y=0,a.height=3*b,a.rx=5,a.ry=5,a.cssClasses=a.cssClasses+" section-"+o;let c=await (0,g.U)(l,a);q=Math.max(q,c?.labelBBox?.height),p.push(c)}let r=0;for(let a of n){let b=p[r];r+=1;let c=j?.kanban?.sectionWidth||200,d=-(3*c)/2+q,e=d;for(let b of f.nodes.filter(b=>b.parentId===a.id)){if(b.isGroup)throw Error("Groups within groups are not allowed in Kanban diagrams");b.x=a.x,b.width=c-15;let d=(await (0,g.on)(m,b,{config:j})).node().getBBox();b.y=e+d.height/2,await (0,g.U_)(b),e=b.y+d.height/2+5}let h=b.cluster.select("rect"),i=Math.max(e-d+30,50)+(q-25);h.attr("height",i)}(0,h.ot)(void 0,k,j.mindmap?.padding??h.UI.kanban.padding,j.mindmap?.useMaxWidth??h.UI.kanban.useMaxWidth)},"draw"),E=(0,i.K2)(a=>{let b="";for(let b=0;b<a.THEME_COLOR_LIMIT;b++)a["lineColor"+b]=a["lineColor"+b]||a["cScaleInv"+b],(0,j.A)(a["lineColor"+b])?a["lineColor"+b]=(0,k.A)(a["lineColor"+b],20):a["lineColor"+b]=(0,l.A)(a["lineColor"+b],20);let c=(0,i.K2)((b,c)=>a.darkMode?(0,l.A)(b,c):(0,k.A)(b,c),"adjuster");for(let d=0;d<a.THEME_COLOR_LIMIT;d++){let e=""+(17-3*d);b+=`
2
+ .section-${d-1} rect, .section-${d-1} path, .section-${d-1} circle, .section-${d-1} polygon, .section-${d-1} path {
3
+ fill: ${c(a["cScale"+d],10)};
4
+ stroke: ${c(a["cScale"+d],10)};
5
+
6
+ }
7
+ .section-${d-1} text {
8
+ fill: ${a["cScaleLabel"+d]};
9
+ }
10
+ .node-icon-${d-1} {
11
+ font-size: 40px;
12
+ color: ${a["cScaleLabel"+d]};
13
+ }
14
+ .section-edge-${d-1}{
15
+ stroke: ${a["cScale"+d]};
16
+ }
17
+ .edge-depth-${d-1}{
18
+ stroke-width: ${e};
19
+ }
20
+ .section-${d-1} line {
21
+ stroke: ${a["cScaleInv"+d]} ;
22
+ stroke-width: 3;
23
+ }
24
+
25
+ .disabled, .disabled circle, .disabled text {
26
+ fill: lightgray;
27
+ }
28
+ .disabled text {
29
+ fill: #efefef;
30
+ }
31
+
32
+ .node rect,
33
+ .node circle,
34
+ .node ellipse,
35
+ .node polygon,
36
+ .node path {
37
+ fill: ${a.background};
38
+ stroke: ${a.nodeBorder};
39
+ stroke-width: 1px;
40
+ }
41
+
42
+ .kanban-ticket-link {
43
+ fill: ${a.background};
44
+ stroke: ${a.nodeBorder};
45
+ text-decoration: underline;
46
+ }
47
+ `}return b},"genSections"),F={db:{clear:r,addNode:v,getSections:t,getData:u,nodeType:w,getType:x,setElementForId:y,decorateNode:z,type2Str:A,getLogger:B,getElementById:C},renderer:{draw:D},parser:m,styles:(0,i.K2)(a=>`
48
+ .edge {
49
+ stroke-width: 3;
50
+ }
51
+ ${E(a)}
52
+ .section-root rect, .section-root path, .section-root circle, .section-root polygon {
53
+ fill: ${a.git0};
54
+ }
55
+ .section-root text {
56
+ fill: ${a.gitBranchLabel0};
57
+ }
58
+ .icon-container {
59
+ height:100%;
60
+ display: flex;
61
+ justify-content: center;
62
+ align-items: center;
63
+ }
64
+ .edge {
65
+ fill: none;
66
+ }
67
+ .cluster-label, .label {
68
+ color: ${a.textColor};
69
+ fill: ${a.textColor};
70
+ }
71
+ .kanban-label {
72
+ dy: 1em;
73
+ alignment-baseline: middle;
74
+ text-anchor: middle;
75
+ dominant-baseline: middle;
76
+ text-align: center;
77
+ }
78
+ ${(0,e.o)()}
79
+ `,"getStyles")}},48492:(a,b,c)=>{c.d(b,{o:()=>d});var d=(0,c(57440).K2)(()=>`
80
+ /* Font Awesome icon styling - consolidated */
81
+ .label-icon {
82
+ display: inline-block;
83
+ height: 1em;
84
+ overflow: visible;
85
+ vertical-align: -0.125em;
86
+ }
87
+
88
+ .node .label-icon path {
89
+ fill: currentColor;
90
+ stroke: revert;
91
+ stroke-width: revert;
92
+ }
93
+ `,"getIconStyles")}};
@@ -0,0 +1,5 @@
1
+ "use strict";exports.id=3811,exports.ids=[3811],exports.modules={41429:(a,b,d)=>{d.d(b,{CP:()=>m,Ck:()=>p,HT:()=>o,PB:()=>n,aC:()=>l,lC:()=>j,m:()=>k,tk:()=>i});var e=d(41553),f=d(77703),g=d(59366),h=d(7285),i=(0,f.K2)((a,b)=>{let d=a.append("rect");if(d.attr("x",b.x),d.attr("y",b.y),d.attr("fill",b.fill),d.attr("stroke",b.stroke),d.attr("width",b.width),d.attr("height",b.height),b.name&&d.attr("name",b.name),b.rx&&d.attr("rx",b.rx),b.ry&&d.attr("ry",b.ry),void 0!==b.attrs)for(let a in b.attrs)d.attr(a,b.attrs[a]);return b.class&&d.attr("class",b.class),d},"drawRect"),j=(0,f.K2)((a,b)=>{i(a,{x:b.startx,y:b.starty,width:b.stopx-b.startx,height:b.stopy-b.starty,fill:b.fill,stroke:b.stroke,class:"rect"}).lower()},"drawBackgroundRect"),k=(0,f.K2)((a,b)=>{let d=b.text.replace(e.H1," "),f=a.append("text");f.attr("x",b.x),f.attr("y",b.y),f.attr("class","legend"),f.style("text-anchor",b.anchor),b.class&&f.attr("class",b.class);let g=f.append("tspan");return g.attr("x",b.x+2*b.textMargin),g.text(d),f},"drawText"),l=(0,f.K2)((a,b,d,e)=>{let f=a.append("image");f.attr("x",b),f.attr("y",d);let h=(0,g.J)(e);f.attr("xlink:href",h)},"drawImage"),m=(0,f.K2)((a,b,d,e)=>{let f=a.append("use");f.attr("x",b),f.attr("y",d);let h=(0,g.J)(e);f.attr("xlink:href",`#${h}`)},"drawEmbeddedImage"),n=(0,f.K2)(()=>({x:0,y:0,width:100,height:100,fill:"#EDF2AE",stroke:"#666",anchor:"start",rx:0,ry:0}),"getNoteRect"),o=(0,f.K2)(()=>({x:0,y:0,width:100,height:100,"text-anchor":"start",style:"#666",textMargin:0,rx:0,ry:0,tspan:!0}),"getTextObj"),p=(0,f.K2)(()=>{let a=(0,h.Ltv)(".mermaidTooltip");return a.empty()&&(a=(0,h.Ltv)("body").append("div").attr("class","mermaidTooltip").style("opacity",0).style("position","absolute").style("text-align","center").style("max-width","200px").style("padding","2px").style("font-size","12px").style("background","#ffffde").style("border","1px solid #333").style("border-radius","2px").style("pointer-events","none").style("z-index","100")),a},"createTooltip")},93811:(a,b,d)=>{d.d(b,{diagram:()=>aE});var e,f=d(41429),g=d(86947),h=d(41553),i=d(77703),j=d(7285),k=d(59366),l=function(){var a=(0,i.K2)(function(a,b,d,e){for(d=d||{},e=a.length;e--;d[a[e]]=b);return d},"o"),b=[1,24],d=[1,25],e=[1,26],f=[1,27],g=[1,28],h=[1,63],j=[1,64],k=[1,65],l=[1,66],m=[1,67],n=[1,68],o=[1,69],p=[1,29],q=[1,30],r=[1,31],s=[1,32],t=[1,33],u=[1,34],v=[1,35],w=[1,36],x=[1,37],y=[1,38],z=[1,39],A=[1,40],B=[1,41],C=[1,42],D=[1,43],E=[1,44],F=[1,45],G=[1,46],H=[1,47],I=[1,48],J=[1,50],K=[1,51],L=[1,52],M=[1,53],N=[1,54],O=[1,55],P=[1,56],Q=[1,57],R=[1,58],S=[1,59],T=[1,60],U=[14,42],V=[14,34,36,37,38,39,40,41,42,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74],W=[12,14,34,36,37,38,39,40,41,42,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74],X=[1,82],Y=[1,83],Z=[1,84],$=[1,85],_=[12,14,42],aa=[12,14,33,42],ab=[12,14,33,42,76,77,79,80],ac=[12,33],ad=[34,36,37,38,39,40,41,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74],ae={trace:(0,i.K2)(function(){},"trace"),yy:{},symbols_:{error:2,start:3,mermaidDoc:4,direction:5,direction_tb:6,direction_bt:7,direction_rl:8,direction_lr:9,graphConfig:10,C4_CONTEXT:11,NEWLINE:12,statements:13,EOF:14,C4_CONTAINER:15,C4_COMPONENT:16,C4_DYNAMIC:17,C4_DEPLOYMENT:18,otherStatements:19,diagramStatements:20,otherStatement:21,title:22,accDescription:23,acc_title:24,acc_title_value:25,acc_descr:26,acc_descr_value:27,acc_descr_multiline_value:28,boundaryStatement:29,boundaryStartStatement:30,boundaryStopStatement:31,boundaryStart:32,LBRACE:33,ENTERPRISE_BOUNDARY:34,attributes:35,SYSTEM_BOUNDARY:36,BOUNDARY:37,CONTAINER_BOUNDARY:38,NODE:39,NODE_L:40,NODE_R:41,RBRACE:42,diagramStatement:43,PERSON:44,PERSON_EXT:45,SYSTEM:46,SYSTEM_DB:47,SYSTEM_QUEUE:48,SYSTEM_EXT:49,SYSTEM_EXT_DB:50,SYSTEM_EXT_QUEUE:51,CONTAINER:52,CONTAINER_DB:53,CONTAINER_QUEUE:54,CONTAINER_EXT:55,CONTAINER_EXT_DB:56,CONTAINER_EXT_QUEUE:57,COMPONENT:58,COMPONENT_DB:59,COMPONENT_QUEUE:60,COMPONENT_EXT:61,COMPONENT_EXT_DB:62,COMPONENT_EXT_QUEUE:63,REL:64,BIREL:65,REL_U:66,REL_D:67,REL_L:68,REL_R:69,REL_B:70,REL_INDEX:71,UPDATE_EL_STYLE:72,UPDATE_REL_STYLE:73,UPDATE_LAYOUT_CONFIG:74,attribute:75,STR:76,STR_KEY:77,STR_VALUE:78,ATTRIBUTE:79,ATTRIBUTE_EMPTY:80,$accept:0,$end:1},terminals_:{2:"error",6:"direction_tb",7:"direction_bt",8:"direction_rl",9:"direction_lr",11:"C4_CONTEXT",12:"NEWLINE",14:"EOF",15:"C4_CONTAINER",16:"C4_COMPONENT",17:"C4_DYNAMIC",18:"C4_DEPLOYMENT",22:"title",23:"accDescription",24:"acc_title",25:"acc_title_value",26:"acc_descr",27:"acc_descr_value",28:"acc_descr_multiline_value",33:"LBRACE",34:"ENTERPRISE_BOUNDARY",36:"SYSTEM_BOUNDARY",37:"BOUNDARY",38:"CONTAINER_BOUNDARY",39:"NODE",40:"NODE_L",41:"NODE_R",42:"RBRACE",44:"PERSON",45:"PERSON_EXT",46:"SYSTEM",47:"SYSTEM_DB",48:"SYSTEM_QUEUE",49:"SYSTEM_EXT",50:"SYSTEM_EXT_DB",51:"SYSTEM_EXT_QUEUE",52:"CONTAINER",53:"CONTAINER_DB",54:"CONTAINER_QUEUE",55:"CONTAINER_EXT",56:"CONTAINER_EXT_DB",57:"CONTAINER_EXT_QUEUE",58:"COMPONENT",59:"COMPONENT_DB",60:"COMPONENT_QUEUE",61:"COMPONENT_EXT",62:"COMPONENT_EXT_DB",63:"COMPONENT_EXT_QUEUE",64:"REL",65:"BIREL",66:"REL_U",67:"REL_D",68:"REL_L",69:"REL_R",70:"REL_B",71:"REL_INDEX",72:"UPDATE_EL_STYLE",73:"UPDATE_REL_STYLE",74:"UPDATE_LAYOUT_CONFIG",76:"STR",77:"STR_KEY",78:"STR_VALUE",79:"ATTRIBUTE",80:"ATTRIBUTE_EMPTY"},productions_:[0,[3,1],[3,1],[5,1],[5,1],[5,1],[5,1],[4,1],[10,4],[10,4],[10,4],[10,4],[10,4],[13,1],[13,1],[13,2],[19,1],[19,2],[19,3],[21,1],[21,1],[21,2],[21,2],[21,1],[29,3],[30,3],[30,3],[30,4],[32,2],[32,2],[32,2],[32,2],[32,2],[32,2],[32,2],[31,1],[20,1],[20,2],[20,3],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,1],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[35,1],[35,2],[75,1],[75,2],[75,1],[75,1]],performAction:(0,i.K2)(function(a,b,d,e,f,g,h){var i=g.length-1;switch(f){case 3:e.setDirection("TB");break;case 4:e.setDirection("BT");break;case 5:e.setDirection("RL");break;case 6:e.setDirection("LR");break;case 8:case 9:case 10:case 11:case 12:e.setC4Type(g[i-3]);break;case 19:e.setTitle(g[i].substring(6)),this.$=g[i].substring(6);break;case 20:e.setAccDescription(g[i].substring(15)),this.$=g[i].substring(15);break;case 21:this.$=g[i].trim(),e.setTitle(this.$);break;case 22:case 23:this.$=g[i].trim(),e.setAccDescription(this.$);break;case 28:g[i].splice(2,0,"ENTERPRISE"),e.addPersonOrSystemBoundary(...g[i]),this.$=g[i];break;case 29:g[i].splice(2,0,"SYSTEM"),e.addPersonOrSystemBoundary(...g[i]),this.$=g[i];break;case 30:e.addPersonOrSystemBoundary(...g[i]),this.$=g[i];break;case 31:g[i].splice(2,0,"CONTAINER"),e.addContainerBoundary(...g[i]),this.$=g[i];break;case 32:e.addDeploymentNode("node",...g[i]),this.$=g[i];break;case 33:e.addDeploymentNode("nodeL",...g[i]),this.$=g[i];break;case 34:e.addDeploymentNode("nodeR",...g[i]),this.$=g[i];break;case 35:e.popBoundaryParseStack();break;case 39:e.addPersonOrSystem("person",...g[i]),this.$=g[i];break;case 40:e.addPersonOrSystem("external_person",...g[i]),this.$=g[i];break;case 41:e.addPersonOrSystem("system",...g[i]),this.$=g[i];break;case 42:e.addPersonOrSystem("system_db",...g[i]),this.$=g[i];break;case 43:e.addPersonOrSystem("system_queue",...g[i]),this.$=g[i];break;case 44:e.addPersonOrSystem("external_system",...g[i]),this.$=g[i];break;case 45:e.addPersonOrSystem("external_system_db",...g[i]),this.$=g[i];break;case 46:e.addPersonOrSystem("external_system_queue",...g[i]),this.$=g[i];break;case 47:e.addContainer("container",...g[i]),this.$=g[i];break;case 48:e.addContainer("container_db",...g[i]),this.$=g[i];break;case 49:e.addContainer("container_queue",...g[i]),this.$=g[i];break;case 50:e.addContainer("external_container",...g[i]),this.$=g[i];break;case 51:e.addContainer("external_container_db",...g[i]),this.$=g[i];break;case 52:e.addContainer("external_container_queue",...g[i]),this.$=g[i];break;case 53:e.addComponent("component",...g[i]),this.$=g[i];break;case 54:e.addComponent("component_db",...g[i]),this.$=g[i];break;case 55:e.addComponent("component_queue",...g[i]),this.$=g[i];break;case 56:e.addComponent("external_component",...g[i]),this.$=g[i];break;case 57:e.addComponent("external_component_db",...g[i]),this.$=g[i];break;case 58:e.addComponent("external_component_queue",...g[i]),this.$=g[i];break;case 60:e.addRel("rel",...g[i]),this.$=g[i];break;case 61:e.addRel("birel",...g[i]),this.$=g[i];break;case 62:e.addRel("rel_u",...g[i]),this.$=g[i];break;case 63:e.addRel("rel_d",...g[i]),this.$=g[i];break;case 64:e.addRel("rel_l",...g[i]),this.$=g[i];break;case 65:e.addRel("rel_r",...g[i]),this.$=g[i];break;case 66:e.addRel("rel_b",...g[i]),this.$=g[i];break;case 67:g[i].splice(0,1),e.addRel("rel",...g[i]),this.$=g[i];break;case 68:e.updateElStyle("update_el_style",...g[i]),this.$=g[i];break;case 69:e.updateRelStyle("update_rel_style",...g[i]),this.$=g[i];break;case 70:e.updateLayoutConfig("update_layout_config",...g[i]),this.$=g[i];break;case 71:this.$=[g[i]];break;case 72:g[i].unshift(g[i-1]),this.$=g[i];break;case 73:case 75:this.$=g[i].trim();break;case 74:let j={};j[g[i-1].trim()]=g[i].trim(),this.$=j;break;case 76:this.$=""}},"anonymous"),table:[{3:1,4:2,5:3,6:[1,5],7:[1,6],8:[1,7],9:[1,8],10:4,11:[1,9],15:[1,10],16:[1,11],17:[1,12],18:[1,13]},{1:[3]},{1:[2,1]},{1:[2,2]},{1:[2,7]},{1:[2,3]},{1:[2,4]},{1:[2,5]},{1:[2,6]},{12:[1,14]},{12:[1,15]},{12:[1,16]},{12:[1,17]},{12:[1,18]},{13:19,19:20,20:21,21:22,22:b,23:d,24:e,26:f,28:g,29:49,30:61,32:62,34:h,36:j,37:k,38:l,39:m,40:n,41:o,43:23,44:p,45:q,46:r,47:s,48:t,49:u,50:v,51:w,52:x,53:y,54:z,55:A,56:B,57:C,58:D,59:E,60:F,61:G,62:H,63:I,64:J,65:K,66:L,67:M,68:N,69:O,70:P,71:Q,72:R,73:S,74:T},{13:70,19:20,20:21,21:22,22:b,23:d,24:e,26:f,28:g,29:49,30:61,32:62,34:h,36:j,37:k,38:l,39:m,40:n,41:o,43:23,44:p,45:q,46:r,47:s,48:t,49:u,50:v,51:w,52:x,53:y,54:z,55:A,56:B,57:C,58:D,59:E,60:F,61:G,62:H,63:I,64:J,65:K,66:L,67:M,68:N,69:O,70:P,71:Q,72:R,73:S,74:T},{13:71,19:20,20:21,21:22,22:b,23:d,24:e,26:f,28:g,29:49,30:61,32:62,34:h,36:j,37:k,38:l,39:m,40:n,41:o,43:23,44:p,45:q,46:r,47:s,48:t,49:u,50:v,51:w,52:x,53:y,54:z,55:A,56:B,57:C,58:D,59:E,60:F,61:G,62:H,63:I,64:J,65:K,66:L,67:M,68:N,69:O,70:P,71:Q,72:R,73:S,74:T},{13:72,19:20,20:21,21:22,22:b,23:d,24:e,26:f,28:g,29:49,30:61,32:62,34:h,36:j,37:k,38:l,39:m,40:n,41:o,43:23,44:p,45:q,46:r,47:s,48:t,49:u,50:v,51:w,52:x,53:y,54:z,55:A,56:B,57:C,58:D,59:E,60:F,61:G,62:H,63:I,64:J,65:K,66:L,67:M,68:N,69:O,70:P,71:Q,72:R,73:S,74:T},{13:73,19:20,20:21,21:22,22:b,23:d,24:e,26:f,28:g,29:49,30:61,32:62,34:h,36:j,37:k,38:l,39:m,40:n,41:o,43:23,44:p,45:q,46:r,47:s,48:t,49:u,50:v,51:w,52:x,53:y,54:z,55:A,56:B,57:C,58:D,59:E,60:F,61:G,62:H,63:I,64:J,65:K,66:L,67:M,68:N,69:O,70:P,71:Q,72:R,73:S,74:T},{14:[1,74]},a(U,[2,13],{43:23,29:49,30:61,32:62,20:75,34:h,36:j,37:k,38:l,39:m,40:n,41:o,44:p,45:q,46:r,47:s,48:t,49:u,50:v,51:w,52:x,53:y,54:z,55:A,56:B,57:C,58:D,59:E,60:F,61:G,62:H,63:I,64:J,65:K,66:L,67:M,68:N,69:O,70:P,71:Q,72:R,73:S,74:T}),a(U,[2,14]),a(V,[2,16],{12:[1,76]}),a(U,[2,36],{12:[1,77]}),a(W,[2,19]),a(W,[2,20]),{25:[1,78]},{27:[1,79]},a(W,[2,23]),{35:80,75:81,76:X,77:Y,79:Z,80:$},{35:86,75:81,76:X,77:Y,79:Z,80:$},{35:87,75:81,76:X,77:Y,79:Z,80:$},{35:88,75:81,76:X,77:Y,79:Z,80:$},{35:89,75:81,76:X,77:Y,79:Z,80:$},{35:90,75:81,76:X,77:Y,79:Z,80:$},{35:91,75:81,76:X,77:Y,79:Z,80:$},{35:92,75:81,76:X,77:Y,79:Z,80:$},{35:93,75:81,76:X,77:Y,79:Z,80:$},{35:94,75:81,76:X,77:Y,79:Z,80:$},{35:95,75:81,76:X,77:Y,79:Z,80:$},{35:96,75:81,76:X,77:Y,79:Z,80:$},{35:97,75:81,76:X,77:Y,79:Z,80:$},{35:98,75:81,76:X,77:Y,79:Z,80:$},{35:99,75:81,76:X,77:Y,79:Z,80:$},{35:100,75:81,76:X,77:Y,79:Z,80:$},{35:101,75:81,76:X,77:Y,79:Z,80:$},{35:102,75:81,76:X,77:Y,79:Z,80:$},{35:103,75:81,76:X,77:Y,79:Z,80:$},{35:104,75:81,76:X,77:Y,79:Z,80:$},a(_,[2,59]),{35:105,75:81,76:X,77:Y,79:Z,80:$},{35:106,75:81,76:X,77:Y,79:Z,80:$},{35:107,75:81,76:X,77:Y,79:Z,80:$},{35:108,75:81,76:X,77:Y,79:Z,80:$},{35:109,75:81,76:X,77:Y,79:Z,80:$},{35:110,75:81,76:X,77:Y,79:Z,80:$},{35:111,75:81,76:X,77:Y,79:Z,80:$},{35:112,75:81,76:X,77:Y,79:Z,80:$},{35:113,75:81,76:X,77:Y,79:Z,80:$},{35:114,75:81,76:X,77:Y,79:Z,80:$},{35:115,75:81,76:X,77:Y,79:Z,80:$},{20:116,29:49,30:61,32:62,34:h,36:j,37:k,38:l,39:m,40:n,41:o,43:23,44:p,45:q,46:r,47:s,48:t,49:u,50:v,51:w,52:x,53:y,54:z,55:A,56:B,57:C,58:D,59:E,60:F,61:G,62:H,63:I,64:J,65:K,66:L,67:M,68:N,69:O,70:P,71:Q,72:R,73:S,74:T},{12:[1,118],33:[1,117]},{35:119,75:81,76:X,77:Y,79:Z,80:$},{35:120,75:81,76:X,77:Y,79:Z,80:$},{35:121,75:81,76:X,77:Y,79:Z,80:$},{35:122,75:81,76:X,77:Y,79:Z,80:$},{35:123,75:81,76:X,77:Y,79:Z,80:$},{35:124,75:81,76:X,77:Y,79:Z,80:$},{35:125,75:81,76:X,77:Y,79:Z,80:$},{14:[1,126]},{14:[1,127]},{14:[1,128]},{14:[1,129]},{1:[2,8]},a(U,[2,15]),a(V,[2,17],{21:22,19:130,22:b,23:d,24:e,26:f,28:g}),a(U,[2,37],{19:20,20:21,21:22,43:23,29:49,30:61,32:62,13:131,22:b,23:d,24:e,26:f,28:g,34:h,36:j,37:k,38:l,39:m,40:n,41:o,44:p,45:q,46:r,47:s,48:t,49:u,50:v,51:w,52:x,53:y,54:z,55:A,56:B,57:C,58:D,59:E,60:F,61:G,62:H,63:I,64:J,65:K,66:L,67:M,68:N,69:O,70:P,71:Q,72:R,73:S,74:T}),a(W,[2,21]),a(W,[2,22]),a(_,[2,39]),a(aa,[2,71],{75:81,35:132,76:X,77:Y,79:Z,80:$}),a(ab,[2,73]),{78:[1,133]},a(ab,[2,75]),a(ab,[2,76]),a(_,[2,40]),a(_,[2,41]),a(_,[2,42]),a(_,[2,43]),a(_,[2,44]),a(_,[2,45]),a(_,[2,46]),a(_,[2,47]),a(_,[2,48]),a(_,[2,49]),a(_,[2,50]),a(_,[2,51]),a(_,[2,52]),a(_,[2,53]),a(_,[2,54]),a(_,[2,55]),a(_,[2,56]),a(_,[2,57]),a(_,[2,58]),a(_,[2,60]),a(_,[2,61]),a(_,[2,62]),a(_,[2,63]),a(_,[2,64]),a(_,[2,65]),a(_,[2,66]),a(_,[2,67]),a(_,[2,68]),a(_,[2,69]),a(_,[2,70]),{31:134,42:[1,135]},{12:[1,136]},{33:[1,137]},a(ac,[2,28]),a(ac,[2,29]),a(ac,[2,30]),a(ac,[2,31]),a(ac,[2,32]),a(ac,[2,33]),a(ac,[2,34]),{1:[2,9]},{1:[2,10]},{1:[2,11]},{1:[2,12]},a(V,[2,18]),a(U,[2,38]),a(aa,[2,72]),a(ab,[2,74]),a(_,[2,24]),a(_,[2,35]),a(ad,[2,25]),a(ad,[2,26],{12:[1,138]}),a(ad,[2,27])],defaultActions:{2:[2,1],3:[2,2],4:[2,7],5:[2,3],6:[2,4],7:[2,5],8:[2,6],74:[2,8],126:[2,9],127:[2,10],128:[2,11],129:[2,12]},parseError:(0,i.K2)(function(a,b){if(b.recoverable)this.trace(a);else{var d=Error(a);throw d.hash=b,d}},"parseError"),parse:(0,i.K2)(function(a){var b=this,d=[0],e=[],f=[null],g=[],h=this.table,j="",k=0,l=0,m=0,n=g.slice.call(arguments,1),o=Object.create(this.lexer),p={};for(var q in this.yy)Object.prototype.hasOwnProperty.call(this.yy,q)&&(p[q]=this.yy[q]);o.setInput(a,p),p.lexer=o,p.parser=this,void 0===o.yylloc&&(o.yylloc={});var r=o.yylloc;g.push(r);var s=o.options&&o.options.ranges;function t(){var a;return"number"!=typeof(a=e.pop()||o.lex()||1)&&(a instanceof Array&&(a=(e=a).pop()),a=b.symbols_[a]||a),a}"function"==typeof p.parseError?this.parseError=p.parseError:this.parseError=Object.getPrototypeOf(this).parseError,(0,i.K2)(function(a){d.length=d.length-2*a,f.length=f.length-a,g.length=g.length-a},"popStack"),(0,i.K2)(t,"lex");for(var u,v,w,x,y,z,A,B,C,D={};;){if(w=d[d.length-1],this.defaultActions[w]?x=this.defaultActions[w]:(null==u&&(u=t()),x=h[w]&&h[w][u]),void 0===x||!x.length||!x[0]){var E="";for(z in C=[],h[w])this.terminals_[z]&&z>2&&C.push("'"+this.terminals_[z]+"'");E=o.showPosition?"Parse error on line "+(k+1)+":\n"+o.showPosition()+"\nExpecting "+C.join(", ")+", got '"+(this.terminals_[u]||u)+"'":"Parse error on line "+(k+1)+": Unexpected "+(1==u?"end of input":"'"+(this.terminals_[u]||u)+"'"),this.parseError(E,{text:o.match,token:this.terminals_[u]||u,line:o.yylineno,loc:r,expected:C})}if(x[0]instanceof Array&&x.length>1)throw Error("Parse Error: multiple actions possible at state: "+w+", token: "+u);switch(x[0]){case 1:d.push(u),f.push(o.yytext),g.push(o.yylloc),d.push(x[1]),u=null,v?(u=v,v=null):(l=o.yyleng,j=o.yytext,k=o.yylineno,r=o.yylloc,m>0&&m--);break;case 2:if(A=this.productions_[x[1]][1],D.$=f[f.length-A],D._$={first_line:g[g.length-(A||1)].first_line,last_line:g[g.length-1].last_line,first_column:g[g.length-(A||1)].first_column,last_column:g[g.length-1].last_column},s&&(D._$.range=[g[g.length-(A||1)].range[0],g[g.length-1].range[1]]),void 0!==(y=this.performAction.apply(D,[j,l,k,p,x[1],f,g].concat(n))))return y;A&&(d=d.slice(0,-1*A*2),f=f.slice(0,-1*A),g=g.slice(0,-1*A)),d.push(this.productions_[x[1]][0]),f.push(D.$),g.push(D._$),B=h[d[d.length-2]][d[d.length-1]],d.push(B);break;case 3:return!0}}return!0},"parse")};function af(){this.yy={}}return ae.lexer={EOF:1,parseError:(0,i.K2)(function(a,b){if(this.yy.parser)this.yy.parser.parseError(a,b);else throw Error(a)},"parseError"),setInput:(0,i.K2)(function(a,b){return this.yy=b||this.yy||{},this._input=a,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},"setInput"),input:(0,i.K2)(function(){var a=this._input[0];return this.yytext+=a,this.yyleng++,this.offset++,this.match+=a,this.matched+=a,a.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),a},"input"),unput:(0,i.K2)(function(a){var b=a.length,d=a.split(/(?:\r\n?|\n)/g);this._input=a+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-b),this.offset-=b;var e=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),d.length-1&&(this.yylineno-=d.length-1);var f=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:d?(d.length===e.length?this.yylloc.first_column:0)+e[e.length-d.length].length-d[0].length:this.yylloc.first_column-b},this.options.ranges&&(this.yylloc.range=[f[0],f[0]+this.yyleng-b]),this.yyleng=this.yytext.length,this},"unput"),more:(0,i.K2)(function(){return this._more=!0,this},"more"),reject:(0,i.K2)(function(){return this.options.backtrack_lexer?(this._backtrack=!0,this):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(),{text:"",token:null,line:this.yylineno})},"reject"),less:(0,i.K2)(function(a){this.unput(this.match.slice(a))},"less"),pastInput:(0,i.K2)(function(){var a=this.matched.substr(0,this.matched.length-this.match.length);return(a.length>20?"...":"")+a.substr(-20).replace(/\n/g,"")},"pastInput"),upcomingInput:(0,i.K2)(function(){var a=this.match;return a.length<20&&(a+=this._input.substr(0,20-a.length)),(a.substr(0,20)+(a.length>20?"...":"")).replace(/\n/g,"")},"upcomingInput"),showPosition:(0,i.K2)(function(){var a=this.pastInput(),b=Array(a.length+1).join("-");return a+this.upcomingInput()+"\n"+b+"^"},"showPosition"),test_match:(0,i.K2)(function(a,b){var d,e,f;if(this.options.backtrack_lexer&&(f={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges&&(f.yylloc.range=this.yylloc.range.slice(0))),(e=a[0].match(/(?:\r\n?|\n).*/g))&&(this.yylineno+=e.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:e?e[e.length-1].length-e[e.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+a[0].length},this.yytext+=a[0],this.match+=a[0],this.matches=a,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(a[0].length),this.matched+=a[0],d=this.performAction.call(this,this.yy,this,b,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),d)return d;if(this._backtrack)for(var g in f)this[g]=f[g];return!1},"test_match"),next:(0,i.K2)(function(){if(this.done)return this.EOF;this._input||(this.done=!0),this._more||(this.yytext="",this.match="");for(var a,b,d,e,f=this._currentRules(),g=0;g<f.length;g++)if((d=this._input.match(this.rules[f[g]]))&&(!b||d[0].length>b[0].length)){if(b=d,e=g,this.options.backtrack_lexer){if(!1!==(a=this.test_match(d,f[g])))return a;if(!this._backtrack)return!1;b=!1;continue}if(!this.options.flex)break}return b?!1!==(a=this.test_match(b,f[e]))&&a:""===this._input?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+". Unrecognized text.\n"+this.showPosition(),{text:"",token:null,line:this.yylineno})},"next"),lex:(0,i.K2)(function(){var a=this.next();return a||this.lex()},"lex"),begin:(0,i.K2)(function(a){this.conditionStack.push(a)},"begin"),popState:(0,i.K2)(function(){return this.conditionStack.length-1>0?this.conditionStack.pop():this.conditionStack[0]},"popState"),_currentRules:(0,i.K2)(function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules},"_currentRules"),topState:(0,i.K2)(function(a){return(a=this.conditionStack.length-1-Math.abs(a||0))>=0?this.conditionStack[a]:"INITIAL"},"topState"),pushState:(0,i.K2)(function(a){this.begin(a)},"pushState"),stateStackSize:(0,i.K2)(function(){return this.conditionStack.length},"stateStackSize"),options:{},performAction:(0,i.K2)(function(a,b,d,e){switch(d){case 0:return 6;case 1:return 7;case 2:return 8;case 3:return 9;case 4:return 22;case 5:return 23;case 6:return this.begin("acc_title"),24;case 7:return this.popState(),"acc_title_value";case 8:return this.begin("acc_descr"),26;case 9:return this.popState(),"acc_descr_value";case 10:this.begin("acc_descr_multiline");break;case 11:case 73:this.popState();break;case 12:return"acc_descr_multiline_value";case 13:case 16:case 70:break;case 14:c;break;case 15:return 12;case 17:return 11;case 18:return 15;case 19:return 16;case 20:return 17;case 21:return 18;case 22:return this.begin("person_ext"),45;case 23:return this.begin("person"),44;case 24:return this.begin("system_ext_queue"),51;case 25:return this.begin("system_ext_db"),50;case 26:return this.begin("system_ext"),49;case 27:return this.begin("system_queue"),48;case 28:return this.begin("system_db"),47;case 29:return this.begin("system"),46;case 30:return this.begin("boundary"),37;case 31:return this.begin("enterprise_boundary"),34;case 32:return this.begin("system_boundary"),36;case 33:return this.begin("container_ext_queue"),57;case 34:return this.begin("container_ext_db"),56;case 35:return this.begin("container_ext"),55;case 36:return this.begin("container_queue"),54;case 37:return this.begin("container_db"),53;case 38:return this.begin("container"),52;case 39:return this.begin("container_boundary"),38;case 40:return this.begin("component_ext_queue"),63;case 41:return this.begin("component_ext_db"),62;case 42:return this.begin("component_ext"),61;case 43:return this.begin("component_queue"),60;case 44:return this.begin("component_db"),59;case 45:return this.begin("component"),58;case 46:case 47:return this.begin("node"),39;case 48:return this.begin("node_l"),40;case 49:return this.begin("node_r"),41;case 50:return this.begin("rel"),64;case 51:return this.begin("birel"),65;case 52:case 53:return this.begin("rel_u"),66;case 54:case 55:return this.begin("rel_d"),67;case 56:case 57:return this.begin("rel_l"),68;case 58:case 59:return this.begin("rel_r"),69;case 60:return this.begin("rel_b"),70;case 61:return this.begin("rel_index"),71;case 62:return this.begin("update_el_style"),72;case 63:return this.begin("update_rel_style"),73;case 64:return this.begin("update_layout_config"),74;case 65:return"EOF_IN_STRUCT";case 66:return this.begin("attribute"),"ATTRIBUTE_EMPTY";case 67:this.begin("attribute");break;case 68:case 79:this.popState(),this.popState();break;case 69:case 71:return 80;case 72:this.begin("string");break;case 74:case 80:return"STR";case 75:this.begin("string_kv");break;case 76:return this.begin("string_kv_key"),"STR_KEY";case 77:this.popState(),this.begin("string_kv_value");break;case 78:return"STR_VALUE";case 81:return"LBRACE";case 82:return"RBRACE";case 83:return"SPACE";case 84:return"EOL";case 85:return 14}},"anonymous"),rules:[/^(?:.*direction\s+TB[^\n]*)/,/^(?:.*direction\s+BT[^\n]*)/,/^(?:.*direction\s+RL[^\n]*)/,/^(?:.*direction\s+LR[^\n]*)/,/^(?:title\s[^#\n;]+)/,/^(?:accDescription\s[^#\n;]+)/,/^(?:accTitle\s*:\s*)/,/^(?:(?!\n||)*[^\n]*)/,/^(?:accDescr\s*:\s*)/,/^(?:(?!\n||)*[^\n]*)/,/^(?:accDescr\s*\{\s*)/,/^(?:[\}])/,/^(?:[^\}]*)/,/^(?:%%(?!\{)*[^\n]*(\r?\n?)+)/,/^(?:%%[^\n]*(\r?\n)*)/,/^(?:\s*(\r?\n)+)/,/^(?:\s+)/,/^(?:C4Context\b)/,/^(?:C4Container\b)/,/^(?:C4Component\b)/,/^(?:C4Dynamic\b)/,/^(?:C4Deployment\b)/,/^(?:Person_Ext\b)/,/^(?:Person\b)/,/^(?:SystemQueue_Ext\b)/,/^(?:SystemDb_Ext\b)/,/^(?:System_Ext\b)/,/^(?:SystemQueue\b)/,/^(?:SystemDb\b)/,/^(?:System\b)/,/^(?:Boundary\b)/,/^(?:Enterprise_Boundary\b)/,/^(?:System_Boundary\b)/,/^(?:ContainerQueue_Ext\b)/,/^(?:ContainerDb_Ext\b)/,/^(?:Container_Ext\b)/,/^(?:ContainerQueue\b)/,/^(?:ContainerDb\b)/,/^(?:Container\b)/,/^(?:Container_Boundary\b)/,/^(?:ComponentQueue_Ext\b)/,/^(?:ComponentDb_Ext\b)/,/^(?:Component_Ext\b)/,/^(?:ComponentQueue\b)/,/^(?:ComponentDb\b)/,/^(?:Component\b)/,/^(?:Deployment_Node\b)/,/^(?:Node\b)/,/^(?:Node_L\b)/,/^(?:Node_R\b)/,/^(?:Rel\b)/,/^(?:BiRel\b)/,/^(?:Rel_Up\b)/,/^(?:Rel_U\b)/,/^(?:Rel_Down\b)/,/^(?:Rel_D\b)/,/^(?:Rel_Left\b)/,/^(?:Rel_L\b)/,/^(?:Rel_Right\b)/,/^(?:Rel_R\b)/,/^(?:Rel_Back\b)/,/^(?:RelIndex\b)/,/^(?:UpdateElementStyle\b)/,/^(?:UpdateRelStyle\b)/,/^(?:UpdateLayoutConfig\b)/,/^(?:$)/,/^(?:[(][ ]*[,])/,/^(?:[(])/,/^(?:[)])/,/^(?:,,)/,/^(?:,)/,/^(?:[ ]*["]["])/,/^(?:[ ]*["])/,/^(?:["])/,/^(?:[^"]*)/,/^(?:[ ]*[\$])/,/^(?:[^=]*)/,/^(?:[=][ ]*["])/,/^(?:[^"]+)/,/^(?:["])/,/^(?:[^,]+)/,/^(?:\{)/,/^(?:\})/,/^(?:[\s]+)/,/^(?:[\n\r]+)/,/^(?:$)/],conditions:{acc_descr_multiline:{rules:[11,12],inclusive:!1},acc_descr:{rules:[9],inclusive:!1},acc_title:{rules:[7],inclusive:!1},string_kv_value:{rules:[78,79],inclusive:!1},string_kv_key:{rules:[77],inclusive:!1},string_kv:{rules:[76],inclusive:!1},string:{rules:[73,74],inclusive:!1},attribute:{rules:[68,69,70,71,72,75,80],inclusive:!1},update_layout_config:{rules:[65,66,67,68],inclusive:!1},update_rel_style:{rules:[65,66,67,68],inclusive:!1},update_el_style:{rules:[65,66,67,68],inclusive:!1},rel_b:{rules:[65,66,67,68],inclusive:!1},rel_r:{rules:[65,66,67,68],inclusive:!1},rel_l:{rules:[65,66,67,68],inclusive:!1},rel_d:{rules:[65,66,67,68],inclusive:!1},rel_u:{rules:[65,66,67,68],inclusive:!1},rel_bi:{rules:[],inclusive:!1},rel:{rules:[65,66,67,68],inclusive:!1},node_r:{rules:[65,66,67,68],inclusive:!1},node_l:{rules:[65,66,67,68],inclusive:!1},node:{rules:[65,66,67,68],inclusive:!1},index:{rules:[],inclusive:!1},rel_index:{rules:[65,66,67,68],inclusive:!1},component_ext_queue:{rules:[65,66,67,68],inclusive:!1},component_ext_db:{rules:[65,66,67,68],inclusive:!1},component_ext:{rules:[65,66,67,68],inclusive:!1},component_queue:{rules:[65,66,67,68],inclusive:!1},component_db:{rules:[65,66,67,68],inclusive:!1},component:{rules:[65,66,67,68],inclusive:!1},container_boundary:{rules:[65,66,67,68],inclusive:!1},container_ext_queue:{rules:[65,66,67,68],inclusive:!1},container_ext_db:{rules:[65,66,67,68],inclusive:!1},container_ext:{rules:[65,66,67,68],inclusive:!1},container_queue:{rules:[65,66,67,68],inclusive:!1},container_db:{rules:[65,66,67,68],inclusive:!1},container:{rules:[65,66,67,68],inclusive:!1},birel:{rules:[65,66,67,68],inclusive:!1},system_boundary:{rules:[65,66,67,68],inclusive:!1},enterprise_boundary:{rules:[65,66,67,68],inclusive:!1},boundary:{rules:[65,66,67,68],inclusive:!1},system_ext_queue:{rules:[65,66,67,68],inclusive:!1},system_ext_db:{rules:[65,66,67,68],inclusive:!1},system_ext:{rules:[65,66,67,68],inclusive:!1},system_queue:{rules:[65,66,67,68],inclusive:!1},system_db:{rules:[65,66,67,68],inclusive:!1},system:{rules:[65,66,67,68],inclusive:!1},person_ext:{rules:[65,66,67,68],inclusive:!1},person:{rules:[65,66,67,68],inclusive:!1},INITIAL:{rules:[0,1,2,3,4,5,6,8,10,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,81,82,83,84,85],inclusive:!0}}},(0,i.K2)(af,"Parser"),af.prototype=ae,ae.Parser=af,new af}();l.parser=l;var m=[],n=[""],o="global",p="",q=[{alias:"global",label:{text:"global"},type:{text:"global"},tags:null,link:null,parentBoundary:""}],r=[],s="",t=!1,u=4,v=2,w=(0,i.K2)(function(){return e},"getC4Type"),x=(0,i.K2)(function(a){e=(0,h.jZ)(a,(0,h.D7)())},"setC4Type"),y=(0,i.K2)(function(a,b,d,e,f,g,h,i,j){if(null==a||null==b||null==d||null==e)return;let k={},l=r.find(a=>a.from===b&&a.to===d);if(l?k=l:r.push(k),k.type=a,k.from=b,k.to=d,k.label={text:e},null==f)k.techn={text:""};else if("object"==typeof f){let[a,b]=Object.entries(f)[0];k[a]={text:b}}else k.techn={text:f};if(null==g)k.descr={text:""};else if("object"==typeof g){let[a,b]=Object.entries(g)[0];k[a]={text:b}}else k.descr={text:g};if("object"==typeof h){let[a,b]=Object.entries(h)[0];k[a]=b}else k.sprite=h;if("object"==typeof i){let[a,b]=Object.entries(i)[0];k[a]=b}else k.tags=i;if("object"==typeof j){let[a,b]=Object.entries(j)[0];k[a]=b}else k.link=j;k.wrap=U()},"addRel"),z=(0,i.K2)(function(a,b,d,e,f,g,h){if(null===b||null===d)return;let i={},j=m.find(a=>a.alias===b);if(j&&b===j.alias?i=j:(i.alias=b,m.push(i)),null==d?i.label={text:""}:i.label={text:d},null==e)i.descr={text:""};else if("object"==typeof e){let[a,b]=Object.entries(e)[0];i[a]={text:b}}else i.descr={text:e};if("object"==typeof f){let[a,b]=Object.entries(f)[0];i[a]=b}else i.sprite=f;if("object"==typeof g){let[a,b]=Object.entries(g)[0];i[a]=b}else i.tags=g;if("object"==typeof h){let[a,b]=Object.entries(h)[0];i[a]=b}else i.link=h;i.typeC4Shape={text:a},i.parentBoundary=o,i.wrap=U()},"addPersonOrSystem"),A=(0,i.K2)(function(a,b,d,e,f,g,h,i){if(null===b||null===d)return;let j={},k=m.find(a=>a.alias===b);if(k&&b===k.alias?j=k:(j.alias=b,m.push(j)),null==d?j.label={text:""}:j.label={text:d},null==e)j.techn={text:""};else if("object"==typeof e){let[a,b]=Object.entries(e)[0];j[a]={text:b}}else j.techn={text:e};if(null==f)j.descr={text:""};else if("object"==typeof f){let[a,b]=Object.entries(f)[0];j[a]={text:b}}else j.descr={text:f};if("object"==typeof g){let[a,b]=Object.entries(g)[0];j[a]=b}else j.sprite=g;if("object"==typeof h){let[a,b]=Object.entries(h)[0];j[a]=b}else j.tags=h;if("object"==typeof i){let[a,b]=Object.entries(i)[0];j[a]=b}else j.link=i;j.wrap=U(),j.typeC4Shape={text:a},j.parentBoundary=o},"addContainer"),B=(0,i.K2)(function(a,b,d,e,f,g,h,i){if(null===b||null===d)return;let j={},k=m.find(a=>a.alias===b);if(k&&b===k.alias?j=k:(j.alias=b,m.push(j)),null==d?j.label={text:""}:j.label={text:d},null==e)j.techn={text:""};else if("object"==typeof e){let[a,b]=Object.entries(e)[0];j[a]={text:b}}else j.techn={text:e};if(null==f)j.descr={text:""};else if("object"==typeof f){let[a,b]=Object.entries(f)[0];j[a]={text:b}}else j.descr={text:f};if("object"==typeof g){let[a,b]=Object.entries(g)[0];j[a]=b}else j.sprite=g;if("object"==typeof h){let[a,b]=Object.entries(h)[0];j[a]=b}else j.tags=h;if("object"==typeof i){let[a,b]=Object.entries(i)[0];j[a]=b}else j.link=i;j.wrap=U(),j.typeC4Shape={text:a},j.parentBoundary=o},"addComponent"),C=(0,i.K2)(function(a,b,d,e,f){if(null===a||null===b)return;let g={},h=q.find(b=>b.alias===a);if(h&&a===h.alias?g=h:(g.alias=a,q.push(g)),null==b?g.label={text:""}:g.label={text:b},null==d)g.type={text:"system"};else if("object"==typeof d){let[a,b]=Object.entries(d)[0];g[a]={text:b}}else g.type={text:d};if("object"==typeof e){let[a,b]=Object.entries(e)[0];g[a]=b}else g.tags=e;if("object"==typeof f){let[a,b]=Object.entries(f)[0];g[a]=b}else g.link=f;g.parentBoundary=o,g.wrap=U(),p=o,o=a,n.push(p)},"addPersonOrSystemBoundary"),D=(0,i.K2)(function(a,b,d,e,f){if(null===a||null===b)return;let g={},h=q.find(b=>b.alias===a);if(h&&a===h.alias?g=h:(g.alias=a,q.push(g)),null==b?g.label={text:""}:g.label={text:b},null==d)g.type={text:"container"};else if("object"==typeof d){let[a,b]=Object.entries(d)[0];g[a]={text:b}}else g.type={text:d};if("object"==typeof e){let[a,b]=Object.entries(e)[0];g[a]=b}else g.tags=e;if("object"==typeof f){let[a,b]=Object.entries(f)[0];g[a]=b}else g.link=f;g.parentBoundary=o,g.wrap=U(),p=o,o=a,n.push(p)},"addContainerBoundary"),E=(0,i.K2)(function(a,b,d,e,f,g,h,i){if(null===b||null===d)return;let j={},k=q.find(a=>a.alias===b);if(k&&b===k.alias?j=k:(j.alias=b,q.push(j)),null==d?j.label={text:""}:j.label={text:d},null==e)j.type={text:"node"};else if("object"==typeof e){let[a,b]=Object.entries(e)[0];j[a]={text:b}}else j.type={text:e};if(null==f)j.descr={text:""};else if("object"==typeof f){let[a,b]=Object.entries(f)[0];j[a]={text:b}}else j.descr={text:f};if("object"==typeof h){let[a,b]=Object.entries(h)[0];j[a]=b}else j.tags=h;if("object"==typeof i){let[a,b]=Object.entries(i)[0];j[a]=b}else j.link=i;j.nodeType=a,j.parentBoundary=o,j.wrap=U(),p=o,o=b,n.push(p)},"addDeploymentNode"),F=(0,i.K2)(function(){o=p,n.pop(),p=n.pop(),n.push(p)},"popBoundaryParseStack"),G=(0,i.K2)(function(a,b,d,e,f,g,h,i,j,k,l){let n=m.find(a=>a.alias===b);if(void 0!==n||void 0!==(n=q.find(a=>a.alias===b))){if(null!=d)if("object"==typeof d){let[a,b]=Object.entries(d)[0];n[a]=b}else n.bgColor=d;if(null!=e)if("object"==typeof e){let[a,b]=Object.entries(e)[0];n[a]=b}else n.fontColor=e;if(null!=f)if("object"==typeof f){let[a,b]=Object.entries(f)[0];n[a]=b}else n.borderColor=f;if(null!=g)if("object"==typeof g){let[a,b]=Object.entries(g)[0];n[a]=b}else n.shadowing=g;if(null!=h)if("object"==typeof h){let[a,b]=Object.entries(h)[0];n[a]=b}else n.shape=h;if(null!=i)if("object"==typeof i){let[a,b]=Object.entries(i)[0];n[a]=b}else n.sprite=i;if(null!=j)if("object"==typeof j){let[a,b]=Object.entries(j)[0];n[a]=b}else n.techn=j;if(null!=k)if("object"==typeof k){let[a,b]=Object.entries(k)[0];n[a]=b}else n.legendText=k;if(null!=l)if("object"==typeof l){let[a,b]=Object.entries(l)[0];n[a]=b}else n.legendSprite=l}},"updateElStyle"),H=(0,i.K2)(function(a,b,d,e,f,g,h){let i=r.find(a=>a.from===b&&a.to===d);if(void 0!==i){if(null!=e)if("object"==typeof e){let[a,b]=Object.entries(e)[0];i[a]=b}else i.textColor=e;if(null!=f)if("object"==typeof f){let[a,b]=Object.entries(f)[0];i[a]=b}else i.lineColor=f;if(null!=g)if("object"==typeof g){let[a,b]=Object.entries(g)[0];i[a]=parseInt(b)}else i.offsetX=parseInt(g);if(null!=h)if("object"==typeof h){let[a,b]=Object.entries(h)[0];i[a]=parseInt(b)}else i.offsetY=parseInt(h)}},"updateRelStyle"),I=(0,i.K2)(function(a,b,d){let e=u,f=v;e="object"==typeof b?parseInt(Object.values(b)[0]):parseInt(b),f="object"==typeof d?parseInt(Object.values(d)[0]):parseInt(d),e>=1&&(u=e),f>=1&&(v=f)},"updateLayoutConfig"),J=(0,i.K2)(function(){return u},"getC4ShapeInRow"),K=(0,i.K2)(function(){return v},"getC4BoundaryInRow"),L=(0,i.K2)(function(){return o},"getCurrentBoundaryParse"),M=(0,i.K2)(function(){return p},"getParentBoundaryParse"),N=(0,i.K2)(function(a){return null==a?m:m.filter(b=>b.parentBoundary===a)},"getC4ShapeArray"),O=(0,i.K2)(function(a){return m.find(b=>b.alias===a)},"getC4Shape"),P=(0,i.K2)(function(a){return Object.keys(N(a))},"getC4ShapeKeys"),Q=(0,i.K2)(function(a){return null==a?q:q.filter(b=>b.parentBoundary===a)},"getBoundaries"),R=(0,i.K2)(function(){return r},"getRels"),S=(0,i.K2)(function(){return s},"getTitle"),T=(0,i.K2)(function(a){t=a},"setWrap"),U=(0,i.K2)(function(){return t},"autoWrap"),V=(0,i.K2)(function(){m=[],q=[{alias:"global",label:{text:"global"},type:{text:"global"},tags:null,link:null,parentBoundary:""}],p="",o="global",n=[""],r=[],n=[""],s="",t=!1,u=4,v=2},"clear"),W=(0,i.K2)(function(a){s=(0,h.jZ)(a,(0,h.D7)())},"setTitle"),X={addPersonOrSystem:z,addPersonOrSystemBoundary:C,addContainer:A,addContainerBoundary:D,addComponent:B,addDeploymentNode:E,popBoundaryParseStack:F,addRel:y,updateElStyle:G,updateRelStyle:H,updateLayoutConfig:I,autoWrap:U,setWrap:T,getC4ShapeArray:N,getC4Shape:O,getC4ShapeKeys:P,getBoundaries:Q,getBoundarys:Q,getCurrentBoundaryParse:L,getParentBoundaryParse:M,getRels:R,getTitle:S,getC4Type:w,getC4ShapeInRow:J,getC4BoundaryInRow:K,setAccTitle:h.SV,getAccTitle:h.iN,getAccDescription:h.m7,setAccDescription:h.EI,getConfig:(0,i.K2)(()=>(0,h.D7)().c4,"getConfig"),clear:V,LINETYPE:{SOLID:0,DOTTED:1,NOTE:2,SOLID_CROSS:3,DOTTED_CROSS:4,SOLID_OPEN:5,DOTTED_OPEN:6,LOOP_START:10,LOOP_END:11,ALT_START:12,ALT_ELSE:13,ALT_END:14,OPT_START:15,OPT_END:16,ACTIVE_START:17,ACTIVE_END:18,PAR_START:19,PAR_AND:20,PAR_END:21,RECT_START:22,RECT_END:23,SOLID_POINT:24,DOTTED_POINT:25},ARROWTYPE:{FILLED:0,OPEN:1},PLACEMENT:{LEFTOF:0,RIGHTOF:1,OVER:2},setTitle:W,setC4Type:x},Y=(0,i.K2)(function(a,b){return(0,f.tk)(a,b)},"drawRect"),Z=(0,i.K2)(function(a,b,d,e,f,g){let h=a.append("image");h.attr("width",b),h.attr("height",d),h.attr("x",e),h.attr("y",f);let i=g.startsWith("data:image/png;base64")?g:(0,k.J)(g);h.attr("xlink:href",i)},"drawImage"),$=(0,i.K2)((a,b,d,e)=>{let f=a.append("g"),g=0;for(let a of b){let b=a.textColor?a.textColor:"#444444",h=a.lineColor?a.lineColor:"#444444",i=a.offsetX?parseInt(a.offsetX):0,j=a.offsetY?parseInt(a.offsetY):0;if(0===g){let b=f.append("line");b.attr("x1",a.startPoint.x),b.attr("y1",a.startPoint.y),b.attr("x2",a.endPoint.x),b.attr("y2",a.endPoint.y),b.attr("stroke-width","1"),b.attr("stroke",h),b.style("fill","none"),"rel_b"!==a.type&&b.attr("marker-end","url(#"+e+"-arrowhead)"),("birel"===a.type||"rel_b"===a.type)&&b.attr("marker-start","url(#"+e+"-arrowend)"),g=-1}else{let b=f.append("path");b.attr("fill","none").attr("stroke-width","1").attr("stroke",h).attr("d","Mstartx,starty Qcontrolx,controly stopx,stopy ".replaceAll("startx",a.startPoint.x).replaceAll("starty",a.startPoint.y).replaceAll("controlx",a.startPoint.x+(a.endPoint.x-a.startPoint.x)/2-(a.endPoint.x-a.startPoint.x)/4).replaceAll("controly",a.startPoint.y+(a.endPoint.y-a.startPoint.y)/2).replaceAll("stopx",a.endPoint.x).replaceAll("stopy",a.endPoint.y)),"rel_b"!==a.type&&b.attr("marker-end","url(#"+e+"-arrowhead)"),("birel"===a.type||"rel_b"===a.type)&&b.attr("marker-start","url(#"+e+"-arrowend)")}let k=d.messageFont();aj(d)(a.label.text,f,Math.min(a.startPoint.x,a.endPoint.x)+Math.abs(a.endPoint.x-a.startPoint.x)/2+i,Math.min(a.startPoint.y,a.endPoint.y)+Math.abs(a.endPoint.y-a.startPoint.y)/2+j,a.label.width,a.label.height,{fill:b},k),a.techn&&""!==a.techn.text&&(k=d.messageFont(),aj(d)("["+a.techn.text+"]",f,Math.min(a.startPoint.x,a.endPoint.x)+Math.abs(a.endPoint.x-a.startPoint.x)/2+i,Math.min(a.startPoint.y,a.endPoint.y)+Math.abs(a.endPoint.y-a.startPoint.y)/2+d.messageFontSize+5+j,Math.max(a.label.width,a.techn.width),a.techn.height,{fill:b,"font-style":"italic"},k))}},"drawRels"),_=(0,i.K2)(function(a,b,d){let e=a.append("g"),f=b.bgColor?b.bgColor:"none",g=b.borderColor?b.borderColor:"#444444",h=b.fontColor?b.fontColor:"black",i={"stroke-width":1,"stroke-dasharray":"7.0,7.0"};b.nodeType&&(i={"stroke-width":1}),Y(e,{x:b.x,y:b.y,fill:f,stroke:g,width:b.width,height:b.height,rx:2.5,ry:2.5,attrs:i});let j=d.boundaryFont();j.fontWeight="bold",j.fontSize=j.fontSize+2,j.fontColor=h,aj(d)(b.label.text,e,b.x,b.y+b.label.Y,b.width,b.height,{fill:"#444444"},j),b.type&&""!==b.type.text&&((j=d.boundaryFont()).fontColor=h,aj(d)(b.type.text,e,b.x,b.y+b.type.Y,b.width,b.height,{fill:"#444444"},j)),b.descr&&""!==b.descr.text&&((j=d.boundaryFont()).fontSize=j.fontSize-2,j.fontColor=h,aj(d)(b.descr.text,e,b.x,b.y+b.descr.Y,b.width,b.height,{fill:"#444444"},j))},"drawBoundary"),aa=(0,i.K2)(function(a,b,d){let e=b.bgColor?b.bgColor:d[b.typeC4Shape.text+"_bg_color"],g=b.borderColor?b.borderColor:d[b.typeC4Shape.text+"_border_color"],h=b.fontColor?b.fontColor:"#FFFFFF",i="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAIAAADYYG7QAAACD0lEQVR4Xu2YoU4EMRCGT+4j8Ai8AhaH4QHgAUjQuFMECUgMIUgwJAgMhgQsAYUiJCiQIBBY+EITsjfTdme6V24v4c8vyGbb+ZjOtN0bNcvjQXmkH83WvYBWto6PLm6v7p7uH1/w2fXD+PBycX1Pv2l3IdDm/vn7x+dXQiAubRzoURa7gRZWd0iGRIiJbOnhnfYBQZNJjNbuyY2eJG8fkDE3bbG4ep6MHUAsgYxmE3nVs6VsBWJSGccsOlFPmLIViMzLOB7pCVO2AtHJMohH7Fh6zqitQK7m0rJvAVYgGcEpe//PLdDz65sM4pF9N7ICcXDKIB5Nv6j7tD0NoSdM2QrU9Gg0ewE1LqBhHR3BBdvj2vapnidjHxD/q6vd7Pvhr31AwcY8eXMTXAKECZZJFXuEq27aLgQK5uLMohCenGGuGewOxSjBvYBqeG6B+Nqiblggdjnc+ZXDy+FNFpFzw76O3UBAROuXh6FoiAcf5g9eTvUgzy0nWg6I8cXHRUpg5bOVBCo+KDpFajOf23GgPme7RSQ+lacIENUgJ6gg1k6HjgOlqnLqip4tEuhv0hNEMXUD0clyXE3p6pZA0S2nnvTlXwLJEZWlb7cTQH1+USgTN4VhAenm/wea1OCAOmqo6fE1WCb9WSKBah+rbUWPWAmE2Rvk0ApiB45eOyNAzU8xcTvj8KvkKEoOaIYeHNA3ZuygAvFMUO0AAAAASUVORK5CYII=";switch(b.typeC4Shape.text){case"person":i="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAIAAADYYG7QAAACD0lEQVR4Xu2YoU4EMRCGT+4j8Ai8AhaH4QHgAUjQuFMECUgMIUgwJAgMhgQsAYUiJCiQIBBY+EITsjfTdme6V24v4c8vyGbb+ZjOtN0bNcvjQXmkH83WvYBWto6PLm6v7p7uH1/w2fXD+PBycX1Pv2l3IdDm/vn7x+dXQiAubRzoURa7gRZWd0iGRIiJbOnhnfYBQZNJjNbuyY2eJG8fkDE3bbG4ep6MHUAsgYxmE3nVs6VsBWJSGccsOlFPmLIViMzLOB7pCVO2AtHJMohH7Fh6zqitQK7m0rJvAVYgGcEpe//PLdDz65sM4pF9N7ICcXDKIB5Nv6j7tD0NoSdM2QrU9Gg0ewE1LqBhHR3BBdvj2vapnidjHxD/q6vd7Pvhr31AwcY8eXMTXAKECZZJFXuEq27aLgQK5uLMohCenGGuGewOxSjBvYBqeG6B+Nqiblggdjnc+ZXDy+FNFpFzw76O3UBAROuXh6FoiAcf5g9eTvUgzy0nWg6I8cXHRUpg5bOVBCo+KDpFajOf23GgPme7RSQ+lacIENUgJ6gg1k6HjgOlqnLqip4tEuhv0hNEMXUD0clyXE3p6pZA0S2nnvTlXwLJEZWlb7cTQH1+USgTN4VhAenm/wea1OCAOmqo6fE1WCb9WSKBah+rbUWPWAmE2Rvk0ApiB45eOyNAzU8xcTvj8KvkKEoOaIYeHNA3ZuygAvFMUO0AAAAASUVORK5CYII=";break;case"external_person":i="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAIAAADYYG7QAAAB6ElEQVR4Xu2YLY+EMBCG9+dWr0aj0Wg0Go1Go0+j8Xdv2uTCvv1gpt0ebHKPuhDaeW4605Z9mJvx4AdXUyTUdd08z+u6flmWZRnHsWkafk9DptAwDPu+f0eAYtu2PEaGWuj5fCIZrBAC2eLBAnRCsEkkxmeaJp7iDJ2QMDdHsLg8SxKFEJaAo8lAXnmuOFIhTMpxxKATebo4UiFknuNo4OniSIXQyRxEA3YsnjGCVEjVXD7yLUAqxBGUyPv/Y4W2beMgGuS7kVQIBycH0fD+oi5pezQETxdHKmQKGk1eQEYldK+jw5GxPfZ9z7Mk0Qnhf1W1m3w//EUn5BDmSZsbR44QQLBEqrBHqOrmSKaQAxdnLArCrxZcM7A7ZKs4ioRq8LFC+NpC3WCBJsvpVw5edm9iEXFuyNfxXAgSwfrFQ1c0iNda8AdejvUgnktOtJQQxmcfFzGglc5WVCj7oDgFqU18boeFSs52CUh8LE8BIVQDT1ABrB0HtgSEYlX5doJnCwv9TXocKCaKbnwhdDKPq4lf3SwU3HLq4V/+WYhHVMa/3b4IlfyikAduCkcBc7mQ3/z/Qq/cTuikhkzB12Ae/mcJC9U+Vo8Ej1gWAtgbeGgFsAMHr50BIWOLCbezvhpBFUdY6EJuJ/QDW0XoMX60zZ0AAAAASUVORK5CYII="}let j=a.append("g");j.attr("class","person-man");let k=(0,f.PB)();switch(b.typeC4Shape.text){case"person":case"external_person":case"system":case"external_system":case"container":case"external_container":case"component":case"external_component":k.x=b.x,k.y=b.y,k.fill=e,k.width=b.width,k.height=b.height,k.stroke=g,k.rx=2.5,k.ry=2.5,k.attrs={"stroke-width":.5},Y(j,k);break;case"system_db":case"external_system_db":case"container_db":case"external_container_db":case"component_db":case"external_component_db":j.append("path").attr("fill",e).attr("stroke-width","0.5").attr("stroke",g).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",b.x).replaceAll("starty",b.y).replaceAll("half",b.width/2).replaceAll("height",b.height)),j.append("path").attr("fill","none").attr("stroke-width","0.5").attr("stroke",g).attr("d","Mstartx,startyc0,10 half,10 half,10c0,0 half,0 half,-10".replaceAll("startx",b.x).replaceAll("starty",b.y).replaceAll("half",b.width/2));break;case"system_queue":case"external_system_queue":case"container_queue":case"external_container_queue":case"component_queue":case"external_component_queue":j.append("path").attr("fill",e).attr("stroke-width","0.5").attr("stroke",g).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",b.x).replaceAll("starty",b.y).replaceAll("width",b.width).replaceAll("half",b.height/2)),j.append("path").attr("fill","none").attr("stroke-width","0.5").attr("stroke",g).attr("d","Mstartx,startyc-5,0 -5,half -5,halfc0,half 5,half 5,half".replaceAll("startx",b.x+b.width).replaceAll("starty",b.y).replaceAll("half",b.height/2))}let l=ai(d,b.typeC4Shape.text);switch(j.append("text").attr("fill",h).attr("font-family",l.fontFamily).attr("font-size",l.fontSize-2).attr("font-style","italic").attr("lengthAdjust","spacing").attr("textLength",b.typeC4Shape.width).attr("x",b.x+b.width/2-b.typeC4Shape.width/2).attr("y",b.y+b.typeC4Shape.Y).text("<<"+b.typeC4Shape.text+">>"),b.typeC4Shape.text){case"person":case"external_person":Z(j,48,48,b.x+b.width/2-24,b.y+b.image.Y,i)}let m=d[b.typeC4Shape.text+"Font"]();return m.fontWeight="bold",m.fontSize=m.fontSize+2,m.fontColor=h,aj(d)(b.label.text,j,b.x,b.y+b.label.Y,b.width,b.height,{fill:h},m),(m=d[b.typeC4Shape.text+"Font"]()).fontColor=h,b.techn&&b.techn?.text!==""?aj(d)(b.techn.text,j,b.x,b.y+b.techn.Y,b.width,b.height,{fill:h,"font-style":"italic"},m):b.type&&""!==b.type.text&&aj(d)(b.type.text,j,b.x,b.y+b.type.Y,b.width,b.height,{fill:h,"font-style":"italic"},m),b.descr&&""!==b.descr.text&&((m=d.personFont()).fontColor=h,aj(d)(b.descr.text,j,b.x,b.y+b.descr.Y,b.width,b.height,{fill:h},m)),b.height},"drawC4Shape"),ab=(0,i.K2)(function(a,b){a.append("defs").append("symbol").attr("id",b+"-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")},"insertDatabaseIcon"),ac=(0,i.K2)(function(a,b){a.append("defs").append("symbol").attr("id",b+"-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")},"insertComputerIcon"),ad=(0,i.K2)(function(a,b){a.append("defs").append("symbol").attr("id",b+"-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")},"insertClockIcon"),ae=(0,i.K2)(function(a,b){a.append("defs").append("marker").attr("id",b+"-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")},"insertArrowHead"),af=(0,i.K2)(function(a,b){a.append("defs").append("marker").attr("id",b+"-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")},"insertArrowEnd"),ag=(0,i.K2)(function(a,b){a.append("defs").append("marker").attr("id",b+"-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")},"insertArrowFilledHead"),ah=(0,i.K2)(function(a,b){let d=a.append("defs").append("marker").attr("id",b+"-crosshead").attr("markerWidth",15).attr("markerHeight",8).attr("orient","auto").attr("refX",16).attr("refY",4);d.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"),d.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")},"insertArrowCrossHead"),ai=(0,i.K2)((a,b)=>({fontFamily:a[b+"FontFamily"],fontSize:a[b+"FontSize"],fontWeight:a[b+"FontWeight"]}),"getC4ShapeFont"),aj=function(){function a(a,b,d,f,g,h,i){e(b.append("text").attr("x",d+g/2).attr("y",f+h/2+5).style("text-anchor","middle").text(a),i)}function b(a,b,d,f,g,i,j,k){let{fontSize:l,fontFamily:m,fontWeight:n}=k,o=a.split(h.Y2.lineBreakRegex);for(let a=0;a<o.length;a++){let h=a*l-l*(o.length-1)/2,i=b.append("text").attr("x",d+g/2).attr("y",f).style("text-anchor","middle").attr("dominant-baseline","middle").style("font-size",l).style("font-weight",n).style("font-family",m);i.append("tspan").attr("dy",h).text(o[a]).attr("alignment-baseline","mathematical"),e(i,j)}}function d(a,d,f,g,h,i,j,k){let l=d.append("switch"),m=l.append("foreignObject").attr("x",f).attr("y",g).attr("width",h).attr("height",i).append("xhtml:div").style("display","table").style("height","100%").style("width","100%");m.append("div").style("display","table-cell").style("text-align","center").style("vertical-align","middle").text(a),b(a,l,f,g,h,i,j,k),e(m,j)}function e(a,b){for(let d in b)b.hasOwnProperty(d)&&a.attr(d,b[d])}return(0,i.K2)(a,"byText"),(0,i.K2)(b,"byTspan"),(0,i.K2)(d,"byFo"),(0,i.K2)(e,"_setTextAttrs"),function(e){return"fo"===e.textPlacement?d:"old"===e.textPlacement?a:b}}(),ak={drawBoundary:_,drawC4Shape:aa,drawRels:$,insertArrowHead:ae,insertArrowEnd:af,insertArrowFilledHead:ag,insertArrowCrossHead:ah,insertDatabaseIcon:ab,insertComputerIcon:ac,insertClockIcon:ad},al=0,am=0,an=4,ao=2;l.yy=X;var ap={},aq=class{static{(0,i.K2)(this,"Bounds")}constructor(a){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,ar(a.db.getConfig())}setData(a,b,d,e){this.nextData.startx=this.data.startx=a,this.nextData.stopx=this.data.stopx=b,this.nextData.starty=this.data.starty=d,this.nextData.stopy=this.data.stopy=e}updateVal(a,b,d,e){void 0===a[b]?a[b]=d:a[b]=e(d,a[b])}insert(a){this.nextData.cnt=this.nextData.cnt+1;let b=this.nextData.startx===this.nextData.stopx?this.nextData.stopx+a.margin:this.nextData.stopx+2*a.margin,d=b+a.width,e=this.nextData.starty+2*a.margin,f=e+a.height;(b>=this.data.widthLimit||d>=this.data.widthLimit||this.nextData.cnt>an)&&(b=this.nextData.startx+a.margin+ap.nextLinePaddingX,e=this.nextData.stopy+2*a.margin,this.nextData.stopx=d=b+a.width,this.nextData.starty=this.nextData.stopy,this.nextData.stopy=f=e+a.height,this.nextData.cnt=1),a.x=b,a.y=e,this.updateVal(this.data,"startx",b,Math.min),this.updateVal(this.data,"starty",e,Math.min),this.updateVal(this.data,"stopx",d,Math.max),this.updateVal(this.data,"stopy",f,Math.max),this.updateVal(this.nextData,"startx",b,Math.min),this.updateVal(this.nextData,"starty",e,Math.min),this.updateVal(this.nextData,"stopx",d,Math.max),this.updateVal(this.nextData,"stopy",f,Math.max)}init(a){this.name="",this.data={startx:void 0,stopx:void 0,starty:void 0,stopy:void 0,widthLimit:void 0},this.nextData={startx:void 0,stopx:void 0,starty:void 0,stopy:void 0,cnt:0},ar(a.db.getConfig())}bumpLastMargin(a){this.data.stopx+=a,this.data.stopy+=a}},ar=(0,i.K2)(function(a){(0,h.hH)(ap,a),a.fontFamily&&(ap.personFontFamily=ap.systemFontFamily=ap.messageFontFamily=a.fontFamily),a.fontSize&&(ap.personFontSize=ap.systemFontSize=ap.messageFontSize=a.fontSize),a.fontWeight&&(ap.personFontWeight=ap.systemFontWeight=ap.messageFontWeight=a.fontWeight)},"setConf"),as=(0,i.K2)((a,b)=>({fontFamily:a[b+"FontFamily"],fontSize:a[b+"FontSize"],fontWeight:a[b+"FontWeight"]}),"c4ShapeFont"),at=(0,i.K2)(a=>({fontFamily:a.boundaryFontFamily,fontSize:a.boundaryFontSize,fontWeight:a.boundaryFontWeight}),"boundaryFont"),au=(0,i.K2)(a=>({fontFamily:a.messageFontFamily,fontSize:a.messageFontSize,fontWeight:a.messageFontWeight}),"messageFont");function av(a,b,d,e,f){if(!b[a].width)if(d)b[a].text=(0,g.bH)(b[a].text,f,e),b[a].textLines=b[a].text.split(h.Y2.lineBreakRegex).length,b[a].width=f,b[a].height=(0,g.ru)(b[a].text,e);else{let d=b[a].text.split(h.Y2.lineBreakRegex);b[a].textLines=d.length;let f=0;for(let h of(b[a].height=0,b[a].width=0,d))b[a].width=Math.max((0,g.Un)(h,e),b[a].width),f=(0,g.ru)(h,e),b[a].height=b[a].height+f}}(0,i.K2)(av,"calcC4ShapeTextWH");var aw=(0,i.K2)(function(a,b,d){b.x=d.data.startx,b.y=d.data.starty,b.width=d.data.stopx-d.data.startx,b.height=d.data.stopy-d.data.starty,b.label.y=ap.c4ShapeMargin-35;let e=b.wrap&&ap.wrap,f=at(ap);f.fontSize=f.fontSize+2,f.fontWeight="bold";let h=(0,g.Un)(b.label.text,f);av("label",b,e,f,h),ak.drawBoundary(a,b,ap)},"drawBoundary"),ax=(0,i.K2)(function(a,b,d,e){let f=0;for(let h of e){f=0;let e=d[h],i=as(ap,e.typeC4Shape.text);switch(i.fontSize=i.fontSize-2,e.typeC4Shape.width=(0,g.Un)("\xab"+e.typeC4Shape.text+"\xbb",i),e.typeC4Shape.height=i.fontSize+2,e.typeC4Shape.Y=ap.c4ShapePadding,f=e.typeC4Shape.Y+e.typeC4Shape.height-4,e.image={width:0,height:0,Y:0},e.typeC4Shape.text){case"person":case"external_person":e.image.width=48,e.image.height=48,e.image.Y=f,f=e.image.Y+e.image.height}e.sprite&&(e.image.width=48,e.image.height=48,e.image.Y=f,f=e.image.Y+e.image.height);let j=e.wrap&&ap.wrap,k=ap.width-2*ap.c4ShapePadding,l=as(ap,e.typeC4Shape.text);if(l.fontSize=l.fontSize+2,l.fontWeight="bold",av("label",e,j,l,k),e.label.Y=f+8,f=e.label.Y+e.label.height,e.type&&""!==e.type.text){e.type.text="["+e.type.text+"]";let a=as(ap,e.typeC4Shape.text);av("type",e,j,a,k),e.type.Y=f+5,f=e.type.Y+e.type.height}else if(e.techn&&""!==e.techn.text){e.techn.text="["+e.techn.text+"]";let a=as(ap,e.techn.text);av("techn",e,j,a,k),e.techn.Y=f+5,f=e.techn.Y+e.techn.height}let m=f,n=e.label.width;if(e.descr&&""!==e.descr.text){let a=as(ap,e.typeC4Shape.text);av("descr",e,j,a,k),e.descr.Y=f+20,f=e.descr.Y+e.descr.height,n=Math.max(e.label.width,e.descr.width),m=f-5*e.descr.textLines}n+=ap.c4ShapePadding,e.width=Math.max(e.width||ap.width,n,ap.width),e.height=Math.max(e.height||ap.height,m,ap.height),e.margin=e.margin||ap.c4ShapeMargin,a.insert(e),ak.drawC4Shape(b,e,ap)}a.bumpLastMargin(ap.c4ShapeMargin)},"drawC4ShapeArray"),ay=class{static{(0,i.K2)(this,"Point")}constructor(a,b){this.x=a,this.y=b}},az=(0,i.K2)(function(a,b){let d=a.x,e=a.y,f=b.x,g=b.y,h=d+a.width/2,i=e+a.height/2,j=Math.abs(d-f),k=Math.abs(e-g),l=k/j,m=a.height/a.width,n=null;return e==g&&d<f?n=new ay(d+a.width,i):e==g&&d>f?n=new ay(d,i):d==f&&e<g?n=new ay(h,e+a.height):d==f&&e>g&&(n=new ay(h,e)),d>f&&e<g?n=m>=l?new ay(d,i+l*a.width/2):new ay(h-j/k*a.height/2,e+a.height):d<f&&e<g?n=m>=l?new ay(d+a.width,i+l*a.width/2):new ay(h+j/k*a.height/2,e+a.height):d<f&&e>g?n=m>=l?new ay(d+a.width,i-l*a.width/2):new ay(h+a.height/2*j/k,e):d>f&&e>g&&(n=m>=l?new ay(d,i-a.width/2*l):new ay(h-a.height/2*j/k,e)),n},"getIntersectPoint"),aA=(0,i.K2)(function(a,b){let d={x:0,y:0};d.x=b.x+b.width/2,d.y=b.y+b.height/2;let e=az(a,d);return d.x=a.x+a.width/2,d.y=a.y+a.height/2,{startPoint:e,endPoint:az(b,d)}},"getIntersectPoints"),aB=(0,i.K2)(function(a,b,d,e,f){let h=0;for(let a of b){h+=1;let b=a.wrap&&ap.wrap,f=au(ap);"C4Dynamic"===e.db.getC4Type()&&(a.label.text=h+": "+a.label.text);let i=(0,g.Un)(a.label.text,f);av("label",a,b,f,i),a.techn&&""!==a.techn.text&&(i=(0,g.Un)(a.techn.text,f),av("techn",a,b,f,i)),a.descr&&""!==a.descr.text&&(i=(0,g.Un)(a.descr.text,f),av("descr",a,b,f,i));let j=aA(d(a.from),d(a.to));a.startPoint=j.startPoint,a.endPoint=j.endPoint}ak.drawRels(a,b,ap,f)},"drawRels");function aC(a,b,d,e,f){let g=new aq(f);for(let[h,i]of(g.data.widthLimit=d.data.widthLimit/Math.min(ao,e.length),e.entries())){let e=0;i.image={width:0,height:0,Y:0},i.sprite&&(i.image.width=48,i.image.height=48,i.image.Y=e,e=i.image.Y+i.image.height);let j=i.wrap&&ap.wrap,k=at(ap);if(k.fontSize=k.fontSize+2,k.fontWeight="bold",av("label",i,j,k,g.data.widthLimit),i.label.Y=e+8,e=i.label.Y+i.label.height,i.type&&""!==i.type.text&&(i.type.text="["+i.type.text+"]",av("type",i,j,at(ap),g.data.widthLimit),i.type.Y=e+5,e=i.type.Y+i.type.height),i.descr&&""!==i.descr.text){let a=at(ap);a.fontSize=a.fontSize-2,av("descr",i,j,a,g.data.widthLimit),i.descr.Y=e+20,e=i.descr.Y+i.descr.height}if(0==h||h%ao==0){let a=d.data.startx+ap.diagramMarginX,b=d.data.stopy+ap.diagramMarginY+e;g.setData(a,a,b,b)}else{let a=g.data.stopx!==g.data.startx?g.data.stopx+ap.diagramMarginX:g.data.startx,b=g.data.starty;g.setData(a,a,b,b)}g.name=i.alias;let l=f.db.getC4ShapeArray(i.alias),m=f.db.getC4ShapeKeys(i.alias);m.length>0&&ax(g,a,l,m),b=i.alias;let n=f.db.getBoundaries(b);n.length>0&&aC(a,b,g,n,f),"global"!==i.alias&&aw(a,i,g),d.data.stopy=Math.max(g.data.stopy+ap.c4ShapeMargin,d.data.stopy),d.data.stopx=Math.max(g.data.stopx+ap.c4ShapeMargin,d.data.stopx),al=Math.max(al,d.data.stopx),am=Math.max(am,d.data.stopy)}}(0,i.K2)(aC,"drawInsideBoundary");var aD={drawPersonOrSystemArray:ax,drawBoundary:aw,setConf:ar,draw:(0,i.K2)(function(a,b,d,e){let f;ap=(0,h.D7)().c4;let g=(0,h.D7)().securityLevel;"sandbox"===g&&(f=(0,j.Ltv)("#i"+b));let k="sandbox"===g?(0,j.Ltv)(f.nodes()[0].contentDocument.body):(0,j.Ltv)("body"),l=e.db;e.db.setWrap(ap.wrap),an=l.getC4ShapeInRow(),ao=l.getC4BoundaryInRow(),i.Rm.debug(`C:${JSON.stringify(ap,null,2)}`);let m="sandbox"===g?k.select(`[id="${b}"]`):(0,j.Ltv)(`[id="${b}"]`);ak.insertComputerIcon(m,b),ak.insertDatabaseIcon(m,b),ak.insertClockIcon(m,b);let n=new aq(e);n.setData(ap.diagramMarginX,ap.diagramMarginX,ap.diagramMarginY,ap.diagramMarginY),n.data.widthLimit=screen.availWidth,al=ap.diagramMarginX,am=ap.diagramMarginY;let o=e.db.getTitle();aC(m,"",n,e.db.getBoundaries(""),e),ak.insertArrowHead(m,b),ak.insertArrowEnd(m,b),ak.insertArrowCrossHead(m,b),ak.insertArrowFilledHead(m,b),aB(m,e.db.getRels(),e.db.getC4Shape,e,b),n.data.stopx=al,n.data.stopy=am;let p=n.data,q=p.stopy-p.starty+2*ap.diagramMarginY,r=p.stopx-p.startx+2*ap.diagramMarginX;o&&m.append("text").text(o).attr("x",(p.stopx-p.startx)/2-4*ap.diagramMarginX).attr("y",p.starty+ap.diagramMarginY),(0,h.a$)(m,q,r,ap.useMaxWidth);let s=60*!!o;m.attr("viewBox",p.startx-ap.diagramMarginX+" -"+(ap.diagramMarginY+s)+" "+r+" "+(q+s)),i.Rm.debug("models:",p)},"draw")},aE={parser:l,db:X,renderer:aD,styles:(0,i.K2)(a=>`.person {
2
+ stroke: ${a.personBorder};
3
+ fill: ${a.personBkg};
4
+ }
5
+ `,"getStyles"),init:(0,i.K2)(({c4:a,wrap:b})=>{aD.setConf(a),X.setWrap(b)},"init")}}};