cli-jaw 2.0.6 → 2.0.13

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 (294) hide show
  1. package/README.ja.md +24 -11
  2. package/README.ko.md +24 -11
  3. package/README.md +95 -11
  4. package/README.zh-CN.md +24 -11
  5. package/dist/bin/cli-jaw.js +4 -1
  6. package/dist/bin/cli-jaw.js.map +1 -1
  7. package/dist/bin/commands/browser-web-ai.js +2 -2
  8. package/dist/bin/commands/browser-web-ai.js.map +1 -1
  9. package/dist/bin/commands/doctor.js +12 -2
  10. package/dist/bin/commands/doctor.js.map +1 -1
  11. package/dist/bin/commands/init.js +4 -2
  12. package/dist/bin/commands/init.js.map +1 -1
  13. package/dist/bin/commands/project.js +167 -0
  14. package/dist/bin/commands/project.js.map +1 -0
  15. package/dist/bin/commands/tui/types.js +20 -4
  16. package/dist/bin/commands/tui/types.js.map +1 -1
  17. package/dist/bin/postinstall.js +226 -24
  18. package/dist/bin/postinstall.js.map +1 -1
  19. package/dist/lib/mime-detect.js +5 -0
  20. package/dist/lib/mime-detect.js.map +1 -1
  21. package/dist/scripts/fresh-install-smoke.js +78 -6
  22. package/dist/scripts/fresh-install-smoke.js.map +1 -1
  23. package/dist/src/agent/agy-runtime.js +15 -0
  24. package/dist/src/agent/agy-runtime.js.map +1 -0
  25. package/dist/src/agent/args.js +44 -5
  26. package/dist/src/agent/args.js.map +1 -1
  27. package/dist/src/agent/cli-helpers.js +1 -1
  28. package/dist/src/agent/cli-helpers.js.map +1 -1
  29. package/dist/src/agent/lifecycle-handler.js +6 -3
  30. package/dist/src/agent/lifecycle-handler.js.map +1 -1
  31. package/dist/src/agent/session-persistence.js +1 -1
  32. package/dist/src/agent/session-persistence.js.map +1 -1
  33. package/dist/src/agent/smoke-detector.js +3 -0
  34. package/dist/src/agent/smoke-detector.js.map +1 -1
  35. package/dist/src/agent/spawn/resume.js +2 -0
  36. package/dist/src/agent/spawn/resume.js.map +1 -1
  37. package/dist/src/agent/spawn-env.js +6 -0
  38. package/dist/src/agent/spawn-env.js.map +1 -1
  39. package/dist/src/agent/spawn.js +120 -15
  40. package/dist/src/agent/spawn.js.map +1 -1
  41. package/dist/src/browser/web-ai/capability-observation-presets.js +1 -1
  42. package/dist/src/browser/web-ai/capability-observation-presets.js.map +1 -1
  43. package/dist/src/browser/web-ai/capability-registry.js +6 -5
  44. package/dist/src/browser/web-ai/capability-registry.js.map +1 -1
  45. package/dist/src/browser/web-ai/chatgpt-attachments.js +7 -0
  46. package/dist/src/browser/web-ai/chatgpt-attachments.js.map +1 -1
  47. package/dist/src/browser/web-ai/context-pack/builder.js +19 -4
  48. package/dist/src/browser/web-ai/context-pack/builder.js.map +1 -1
  49. package/dist/src/browser/web-ai/context-pack/zip-writer.js +116 -0
  50. package/dist/src/browser/web-ai/context-pack/zip-writer.js.map +1 -0
  51. package/dist/src/browser/web-ai/gemini-live.js +21 -3
  52. package/dist/src/browser/web-ai/gemini-live.js.map +1 -1
  53. package/dist/src/browser/web-ai/gemini-model.js +26 -8
  54. package/dist/src/browser/web-ai/gemini-model.js.map +1 -1
  55. package/dist/src/cli/commands.js +2 -0
  56. package/dist/src/cli/commands.js.map +1 -1
  57. package/dist/src/cli/handlers-project.js +55 -0
  58. package/dist/src/cli/handlers-project.js.map +1 -0
  59. package/dist/src/cli/readiness.js +6 -1
  60. package/dist/src/cli/readiness.js.map +1 -1
  61. package/dist/src/cli/registry.js +11 -0
  62. package/dist/src/cli/registry.js.map +1 -1
  63. package/dist/src/core/claude-install.js +10 -1
  64. package/dist/src/core/claude-install.js.map +1 -1
  65. package/dist/src/core/config.js +63 -7
  66. package/dist/src/core/config.js.map +1 -1
  67. package/dist/src/core/db.js +11 -4
  68. package/dist/src/core/db.js.map +1 -1
  69. package/dist/src/core/runtime-settings.js +4 -1
  70. package/dist/src/core/runtime-settings.js.map +1 -1
  71. package/dist/src/manager/metadata.js +7 -2
  72. package/dist/src/manager/metadata.js.map +1 -1
  73. package/dist/src/manager/notes/routes.js +7 -0
  74. package/dist/src/manager/notes/routes.js.map +1 -1
  75. package/dist/src/manager/notes/store.js +72 -0
  76. package/dist/src/manager/notes/store.js.map +1 -1
  77. package/dist/src/manager/registry.js +1 -1
  78. package/dist/src/manager/registry.js.map +1 -1
  79. package/dist/src/manager/scan.js +2 -0
  80. package/dist/src/manager/scan.js.map +1 -1
  81. package/dist/src/messaging/send.js +1 -1
  82. package/dist/src/messaging/send.js.map +1 -1
  83. package/dist/src/orchestrator/distribute.js +25 -4
  84. package/dist/src/orchestrator/distribute.js.map +1 -1
  85. package/dist/src/orchestrator/pipeline.js +21 -5
  86. package/dist/src/orchestrator/pipeline.js.map +1 -1
  87. package/dist/src/orchestrator/state-machine.js +7 -1
  88. package/dist/src/orchestrator/state-machine.js.map +1 -1
  89. package/dist/src/orchestrator/workspace-context.js +49 -14
  90. package/dist/src/orchestrator/workspace-context.js.map +1 -1
  91. package/dist/src/routes/messaging.js +1 -1
  92. package/dist/src/routes/messaging.js.map +1 -1
  93. package/dist/src/routes/orchestrate.js +11 -4
  94. package/dist/src/routes/orchestrate.js.map +1 -1
  95. package/dist/src/routes/settings.js +73 -8
  96. package/dist/src/routes/settings.js.map +1 -1
  97. package/dist/src/security/path-guards.js +35 -14
  98. package/dist/src/security/path-guards.js.map +1 -1
  99. package/dist/src/types/cli-engine.js +1 -0
  100. package/dist/src/types/cli-engine.js.map +1 -1
  101. package/package.json +19 -4
  102. package/public/css/chat.css +6 -2
  103. package/public/dist/assets/{AdvancedExport-CBvz4_IZ.js → AdvancedExport-CZEVPqHb.js} +1 -1
  104. package/public/dist/assets/{Agent-DlUqCMXJ.js → Agent-BBrJGd5m.js} +1 -1
  105. package/public/dist/assets/{Browser-66BpLQck.js → Browser-dBaU9G9D.js} +1 -1
  106. package/public/dist/assets/{ChannelsDiscord-BifT2Dum.js → ChannelsDiscord-CbmWms9-.js} +1 -1
  107. package/public/dist/assets/{ChannelsTelegram-CK6tYQ8k.js → ChannelsTelegram-BD4Eyztg.js} +1 -1
  108. package/public/dist/assets/{DashboardMeta-Cc03HT5R.js → DashboardMeta-LVAL7TtE.js} +1 -1
  109. package/public/dist/assets/{Display-arOjcMQZ.js → Display-CFm1UmEo.js} +1 -1
  110. package/public/dist/assets/{Employees-YbW-mI67.js → Employees-DcMChleU.js} +1 -1
  111. package/public/dist/assets/{Heartbeat-CW4eIhtJ.js → Heartbeat-BoobN35p.js} +1 -1
  112. package/public/dist/assets/{Mcp-ZQ6ARQb6.js → Mcp-9NU4YkKO.js} +1 -1
  113. package/public/dist/assets/{Memory-BAUWJMqc.js → Memory-uZT30fww.js} +1 -1
  114. package/public/dist/assets/{MilkdownWysiwygEditor-IAqFtXvM.js → MilkdownWysiwygEditor-Otw40DDF.js} +1 -1
  115. package/public/dist/assets/{ModelProvider-DUtmFh0J.js → ModelProvider-CsIOyoZP.js} +1 -1
  116. package/public/dist/assets/{Network-B_4E82zQ.js → Network-D7hGwnyG.js} +1 -1
  117. package/public/dist/assets/NotesGraphView-CJuk9lKn.js +1 -0
  118. package/public/dist/assets/Permissions-CcIBptg3.js +1 -0
  119. package/public/dist/assets/{Permissions-BkADXjQ4.js → Permissions-DwdU3wi8.js} +1 -1
  120. package/public/dist/assets/{Profile-BcnTCSYM.js → Profile-BNTKD_Ex.js} +1 -1
  121. package/public/dist/assets/{Prompts-CUs_RoRE.js → Prompts-D_mCfYiu.js} +1 -1
  122. package/public/dist/assets/{SpeechKeys-qxc-ROWN.js → SpeechKeys-BTXCM-Fs.js} +1 -1
  123. package/public/dist/assets/agent-meta-BC7mLqo6.js +1 -0
  124. package/public/dist/assets/{app-CGqTcIeF.js → app-C7MAcAMu.js} +5 -5
  125. package/public/dist/assets/app-CkFBKUf8.css +1 -0
  126. package/public/dist/assets/{architectureDiagram-3BPJPVTR-kYIVzmWe.js → architectureDiagram-3BPJPVTR-CJCPEsxo.js} +1 -1
  127. package/public/dist/assets/{blockDiagram-GPEHLZMM-B204CPhe.js → blockDiagram-GPEHLZMM-CO1bkn0E.js} +2 -2
  128. package/public/dist/assets/{c4Diagram-AAUBKEIU-DAv6TAjg.js → c4Diagram-AAUBKEIU-D2R36Xu6.js} +1 -1
  129. package/public/dist/assets/{chunk-3OPIFGDE-DOAvk9x8.js → chunk-3OPIFGDE-DixnEkZw.js} +1 -1
  130. package/public/dist/assets/chunk-55IACEB6-DhWWzzdj.js +1 -0
  131. package/public/dist/assets/{chunk-5ZQYHXKU-Bd-RFO5i.js → chunk-5ZQYHXKU-Bli4k6GI.js} +2 -2
  132. package/public/dist/assets/{chunk-727SXJPM-BrsRzj8z.js → chunk-727SXJPM-sp4W8bhf.js} +1 -1
  133. package/public/dist/assets/{chunk-AQP2D5EJ-Di6Gstk-.js → chunk-AQP2D5EJ-Co6ucdGq.js} +1 -1
  134. package/public/dist/assets/{chunk-KSCS5N6A-D9a4ZkOy.js → chunk-KSCS5N6A-Beq1s5eO.js} +2 -2
  135. package/public/dist/assets/{chunk-L5ZTLDWV-D208QbfC.js → chunk-L5ZTLDWV-DfUlBdXN.js} +1 -1
  136. package/public/dist/assets/{chunk-LZXEDZCA-CE2KFduj.js → chunk-LZXEDZCA-B_yP4UKw.js} +1 -1
  137. package/public/dist/assets/{chunk-ND2GUHAM-zZ7h1CPf.js → chunk-ND2GUHAM-3qbNb7I9.js} +1 -1
  138. package/public/dist/assets/{chunk-O5CBEL6O-BTuvXKFi.js → chunk-O5CBEL6O-D-jDqsN2.js} +1 -1
  139. package/public/dist/assets/{chunk-WU5MYG2G-C3fKlSvP.js → chunk-WU5MYG2G-DlBJtD7-.js} +1 -1
  140. package/public/dist/assets/classDiagram-4FO5ZUOK-DmPJvqRM.js +1 -0
  141. package/public/dist/assets/classDiagram-v2-Q7XG4LA2-ECmTUt7U.js +1 -0
  142. package/public/dist/assets/constants-BXWl7LTi.js +1 -0
  143. package/public/dist/assets/{cose-bilkent-S5V4N54A-D1zmarou.js → cose-bilkent-S5V4N54A-Bt9AAJCx.js} +1 -1
  144. package/public/dist/assets/{dagre-BM42HDAG-BVkBttzA.js → dagre-BM42HDAG-CXEA1wvZ.js} +1 -1
  145. package/public/dist/assets/{dagre-DnoxfNXr.js → dagre-Ve-IAfyz.js} +1 -1
  146. package/public/dist/assets/{diagram-2AECGRRQ-Bs32KPnT.js → diagram-2AECGRRQ-CCB0OKc2.js} +1 -1
  147. package/public/dist/assets/{diagram-5GNKFQAL-YDYgPOQj.js → diagram-5GNKFQAL-Cki9HABy.js} +1 -1
  148. package/public/dist/assets/{diagram-KO2AKTUF-1tIdFl26.js → diagram-KO2AKTUF-DNBDjE2o.js} +1 -1
  149. package/public/dist/assets/{diagram-LMA3HP47-B1y15kav.js → diagram-LMA3HP47-Cy23RDPa.js} +1 -1
  150. package/public/dist/assets/{diagram-OG6HWLK6-C25j1jGg.js → diagram-OG6HWLK6-CT_YF8cA.js} +1 -1
  151. package/public/dist/assets/dist-3R3GxjCf.js +13 -0
  152. package/public/dist/assets/{dist-D0PYXGt2.js → dist-BLd7xdyq.js} +1 -1
  153. package/public/dist/assets/{dist-fJAyK82z.js → dist-BaRrwDy3.js} +1 -1
  154. package/public/dist/assets/{dist-Rs_Khtjb.js → dist-Bbsp4OF7.js} +1 -1
  155. package/public/dist/assets/{dist-Cv8S3FhF.js → dist-BkBGlG70.js} +1 -1
  156. package/public/dist/assets/{dist-0v1UKkQ3.js → dist-BkJ_1mj9.js} +1 -1
  157. package/public/dist/assets/{dist-BQNQk-1M.js → dist-BxCRVW5D.js} +1 -1
  158. package/public/dist/assets/{dist-DDDFJ8jG.js → dist-C-v7Rm67.js} +1 -1
  159. package/public/dist/assets/dist-CNgDEAy8.js +1 -0
  160. package/public/dist/assets/dist-CO_W5rr2.js +1 -0
  161. package/public/dist/assets/{dist-vQskrHxt.js → dist-ChAUfTbO.js} +1 -1
  162. package/public/dist/assets/{dist-CjPin7Mr.js → dist-D-k-lzQT.js} +1 -1
  163. package/public/dist/assets/dist-D1hPukqY.js +1 -0
  164. package/public/dist/assets/{dist-C1VqWrYZ.js → dist-D5Qx-jQQ.js} +1 -1
  165. package/public/dist/assets/{dist-DTQW91xt.js → dist-D7VNzYBv.js} +1 -1
  166. package/public/dist/assets/{dist-DHQI31dn.js → dist-DAxnodoa.js} +1 -1
  167. package/public/dist/assets/{dist-CnIrGAPx.js → dist-DHSyODkR.js} +1 -1
  168. package/public/dist/assets/{dist-CE4s7vg82.js → dist-DaYTPjbb2.js} +1 -1
  169. package/public/dist/assets/{dist-jcptfm_T.js → dist-DlWi9tVO.js} +1 -1
  170. package/public/dist/assets/{dist-D66X8iAn.js → dist-DuuoJfRB.js} +1 -1
  171. package/public/dist/assets/{dist-DzT7frM2.js → dist-Dv36UUXz.js} +1 -1
  172. package/public/dist/assets/{dist-BVpa_e6W.js → dist-F4CVhitP.js} +1 -1
  173. package/public/dist/assets/{dist-Qs7HHNCC.js → dist-LHbJYy3N.js} +1 -1
  174. package/public/dist/assets/{dist-Ck6PnIlo.js → dist-VIlx7JdU.js} +1 -1
  175. package/public/dist/assets/{dist-D5GUqT-6.js → dist-cgDt2PmY.js} +1 -1
  176. package/public/dist/assets/dist-eW2LjRIK.js +1 -0
  177. package/public/dist/assets/{dist-Dm7RAaUo.js → dist-vGn3_sWA.js} +1 -1
  178. package/public/dist/assets/{employees-DRmX2RDd.js → employees-BmxY8Mw3.js} +1 -1
  179. package/public/dist/assets/{erDiagram-TEJ5UH35-CRvCbztR.js → erDiagram-TEJ5UH35-Cq7oHdXg.js} +1 -1
  180. package/public/dist/assets/{flowDiagram-I6XJVG4X-CzvVnib_.js → flowDiagram-I6XJVG4X-D8CdEnfM.js} +1 -1
  181. package/public/dist/assets/ganttDiagram-6RSMTGT7-B1rzKXi_.js +292 -0
  182. package/public/dist/assets/{gitGraphDiagram-PVQCEYII-CbKdM7nW.js → gitGraphDiagram-PVQCEYII-CqLh-joi.js} +1 -1
  183. package/public/dist/assets/{graphlib-BLOO0H5r.js → graphlib-W5bESv3F.js} +1 -1
  184. package/public/dist/assets/{infoDiagram-5YYISTIA-BrZmg1At.js → infoDiagram-5YYISTIA-C1zVxumj.js} +1 -1
  185. package/public/dist/assets/{ishikawaDiagram-YF4QCWOH-BDWXqJi5.js → ishikawaDiagram-YF4QCWOH-x-9J6xPM.js} +1 -1
  186. package/public/dist/assets/{journeyDiagram-JHISSGLW-CPFRd_M3.js → journeyDiagram-JHISSGLW-BDYzHrtn.js} +1 -1
  187. package/public/dist/assets/{kanban-definition-UN3LZRKU-BcQbBplS.js → kanban-definition-UN3LZRKU-BJ-06i6Z.js} +1 -1
  188. package/public/dist/assets/manager-B2NWzG7j.css +1 -0
  189. package/public/dist/assets/manager-C5e1IxEN.js +25 -0
  190. package/public/dist/assets/memory-BqqibBIE.js +1 -0
  191. package/public/dist/assets/{memory-BA-ki3gn.js → memory-CRL72HB-.js} +1 -1
  192. package/public/dist/assets/mermaid-loader-Dqb4ZUz6.js +1 -0
  193. package/public/dist/assets/{mermaid.core-ArqR5iFa.js → mermaid.core-D8VnfThU.js} +2 -2
  194. package/public/dist/assets/mermaid.core-DYHvk6Pd.js +1 -0
  195. package/public/dist/assets/{mindmap-definition-RKZ34NQL-C35cGkNU.js → mindmap-definition-RKZ34NQL-D8NDuIhn.js} +1 -1
  196. package/public/dist/assets/{pieDiagram-4H26LBE5-B8C_hoqJ.js → pieDiagram-4H26LBE5-CpBePil_.js} +3 -3
  197. package/public/dist/assets/{quadrantDiagram-W4KKPZXB-BEPrine5.js → quadrantDiagram-W4KKPZXB-C1WWpn88.js} +1 -1
  198. package/public/dist/assets/{render-C7_e0J_X.js → render-o_YEiCEO.js} +2 -2
  199. package/public/dist/assets/{requirementDiagram-4Y6WPE33-ClDDon9c.js → requirementDiagram-4Y6WPE33-C_D5VbNk.js} +1 -1
  200. package/public/dist/assets/{sankeyDiagram-5OEKKPKP-Bjs3OE-1.js → sankeyDiagram-5OEKKPKP--RH3Es8R.js} +3 -3
  201. package/public/dist/assets/{sequenceDiagram-3UESZ5HK-BM8IAaEe.js → sequenceDiagram-3UESZ5HK-CVI4AjhN.js} +1 -1
  202. package/public/dist/assets/settings-B0RlyAkI.js +1 -0
  203. package/public/dist/assets/settings-CCXRL5Ar.js +46 -0
  204. package/public/dist/assets/sidebar-DRJffqO1.js +14 -0
  205. package/public/dist/assets/skills-CFdzXbtK.js +1 -0
  206. package/public/dist/assets/{skills-Dq7fD8I3.js → skills-DbRVI-zf.js} +1 -1
  207. package/public/dist/assets/slash-commands-BUM6u-Ex.js +1 -0
  208. package/public/dist/assets/{slash-commands-DRsKtuGT.js → slash-commands-C2YBMaQV.js} +1 -1
  209. package/public/dist/assets/{stateDiagram-AJRCARHV-BvNABuXE.js → stateDiagram-AJRCARHV-4bx1rPZ3.js} +1 -1
  210. package/public/dist/assets/stateDiagram-v2-BHNVJYJU-CrfGPzHb.js +1 -0
  211. package/public/dist/assets/{timeline-definition-PNZ67QCA-CIvTvac3.js → timeline-definition-PNZ67QCA-DeQoGRE2.js} +1 -1
  212. package/public/dist/assets/{trace-drawer-DDFdU07_.js → trace-drawer-CIVBXyRH.js} +1 -1
  213. package/public/dist/assets/ui-C3ArwMhv.js +140 -0
  214. package/public/dist/assets/ui-CboUuc_E.js +1 -0
  215. package/public/dist/assets/vendor-utils-rVejrfMR.js +1 -0
  216. package/public/dist/assets/{vennDiagram-CIIHVFJN-C5cbS2KC.js → vennDiagram-CIIHVFJN-CejyJK0L.js} +1 -1
  217. package/public/dist/assets/{wardleyDiagram-YWT4CUSO-BsRBBGFP.js → wardleyDiagram-YWT4CUSO-DqXV0sa1.js} +1 -1
  218. package/public/dist/assets/wiki-link-suggestions-e5BzJAZH.js +23 -0
  219. package/public/dist/assets/{xychartDiagram-2RQKCTM6-B6rqui6F.js → xychartDiagram-2RQKCTM6-CWLoVl2b.js} +2 -2
  220. package/public/dist/index.html +20 -2
  221. package/public/dist/manager/index.html +2 -2
  222. package/public/index.html +18 -0
  223. package/public/js/constants.ts +12 -1
  224. package/public/js/features/settings-cli-status.ts +27 -4
  225. package/public/js/features/settings-core.ts +28 -15
  226. package/public/js/features/settings-types.ts +1 -0
  227. package/public/js/features/ui-status.ts +3 -0
  228. package/public/js/ws.ts +5 -1
  229. package/public/manager/src/SidebarRailRouter.tsx +5 -2
  230. package/public/manager/src/api.ts +13 -0
  231. package/public/manager/src/components/WorkbenchHeader.tsx +10 -0
  232. package/public/manager/src/manager-notes.css +228 -0
  233. package/public/manager/src/notes/NotesBacklinksPanel.tsx +91 -0
  234. package/public/manager/src/notes/NotesCommandPalette.tsx +212 -0
  235. package/public/manager/src/notes/NotesGraphView.tsx +145 -0
  236. package/public/manager/src/notes/NotesSidebar.tsx +183 -5
  237. package/public/manager/src/notes/NotesToolbar.tsx +9 -3
  238. package/public/manager/src/notes/NotesWorkspace.tsx +140 -4
  239. package/public/manager/src/notes/notes-api.ts +2 -0
  240. package/public/manager/src/notes/notes-command-registry.tsx +79 -0
  241. package/public/manager/src/notes/notes-quick-switcher.css +151 -0
  242. package/public/manager/src/notes/notes-shortcuts.ts +23 -0
  243. package/public/manager/src/notes/notes-types.ts +1 -1
  244. package/public/manager/src/notes/template-engine.ts +27 -0
  245. package/public/manager/src/settings/pages/components/agent/agent-meta.ts +7 -1
  246. package/public/manager/src/types.ts +2 -1
  247. package/scripts/audit-fresh-install-evidence.mjs +278 -0
  248. package/scripts/collect-fresh-install-evidence.sh +459 -0
  249. package/scripts/fresh-install-smoke.ts +85 -6
  250. package/scripts/install-officecli.ps1 +14 -1
  251. package/scripts/install-risk-gate.mjs +161 -0
  252. package/scripts/install-wsl.sh +78 -16
  253. package/scripts/install.sh +272 -72
  254. package/scripts/postinstall-guard.cjs +2 -2
  255. package/scripts/release-preview.sh +25 -3
  256. package/scripts/release.sh +37 -8
  257. package/scripts/require-release-evidence.mjs +236 -0
  258. package/scripts/verify-fresh-install.sh +120 -0
  259. package/scripts/verify-release-evidence.mjs +158 -0
  260. package/public/dist/assets/Permissions-DvUCB8wA.js +0 -1
  261. package/public/dist/assets/agent-meta-Du8y6mSM.js +0 -1
  262. package/public/dist/assets/app-Dpk6cE6C.css +0 -1
  263. package/public/dist/assets/chunk-55IACEB6-Dx2JkQLw.js +0 -1
  264. package/public/dist/assets/classDiagram-4FO5ZUOK-Cb-qL5u3.js +0 -1
  265. package/public/dist/assets/classDiagram-v2-Q7XG4LA2-BPhGdj15.js +0 -1
  266. package/public/dist/assets/constants-BxG09J6S.js +0 -1
  267. package/public/dist/assets/dist-BMi_buEb.js +0 -1
  268. package/public/dist/assets/dist-BkrbW_LS.js +0 -1
  269. package/public/dist/assets/dist-C3vh7d65.js +0 -13
  270. package/public/dist/assets/dist-D815C1Fv.js +0 -1
  271. package/public/dist/assets/dist-sOV2kBhQ.js +0 -1
  272. package/public/dist/assets/ganttDiagram-6RSMTGT7-BbUYP6iv.js +0 -292
  273. package/public/dist/assets/manager-B5OmizBL.css +0 -1
  274. package/public/dist/assets/manager-Cs3eMBcx.js +0 -25
  275. package/public/dist/assets/memory-DLQbyBA3.js +0 -1
  276. package/public/dist/assets/mermaid-loader-BVPsKrpr.js +0 -1
  277. package/public/dist/assets/mermaid.core-BAwu4U2Y.js +0 -1
  278. package/public/dist/assets/settings-DjyKdqev.js +0 -1
  279. package/public/dist/assets/settings-pUJzyeX2.js +0 -42
  280. package/public/dist/assets/sidebar-CO9Qjj6v.js +0 -14
  281. package/public/dist/assets/skills-CX3qJ77s.js +0 -1
  282. package/public/dist/assets/slash-commands-UbS8w9ij.js +0 -1
  283. package/public/dist/assets/stateDiagram-v2-BHNVJYJU-CCIo81qy.js +0 -1
  284. package/public/dist/assets/ui-CeBmBBZM.js +0 -140
  285. package/public/dist/assets/ui-TMXjvH0r.js +0 -1
  286. package/public/dist/assets/vendor-utils-BnxL60_-.js +0 -1
  287. package/public/dist/assets/wiki-link-suggestions-BHwNQXT_.js +0 -23
  288. /package/public/dist/assets/{HealthBadge-DEPFkcA0.js → HealthBadge-CfLTPTPW.js} +0 -0
  289. /package/public/dist/assets/{InlineWarn-DoJS7AgM.js → InlineWarn-C7ISyzDI.js} +0 -0
  290. /package/public/dist/assets/{fields-DUawAHWZ.js → fields-BwD_NGxe.js} +0 -0
  291. /package/public/dist/assets/{locale-BHMJIzyw.js → locale-DT1WRaeJ.js} +0 -0
  292. /package/public/dist/assets/{page-shell-CVAobxbP.js → page-shell-uNOxwdbr.js} +0 -0
  293. /package/public/dist/assets/{path-utils-r2bJIu28.js → path-utils-h2GAj3hH.js} +0 -0
  294. /package/public/dist/assets/{provider-icons-dxT69zGg.js → provider-icons-ClVd2suJ.js} +0 -0
@@ -1,4 +1,4 @@
1
- import{n as e,r as t}from"./chunk-AGHRB4JF-CYdXVA2-.js";import{O as n,T as r,a as i,b as a,c as o,rt as s,s as c,x as l,z as u}from"./chunk-CSCIHK7Q-CAE1p4Em.js";import{t as d}from"./channel-CCQujL1n.js";import{Nt as f,rt as p,st as m}from"./vendor-utils-BnxL60_-.js";import{A as h,B as g,C as _,D as v,E as y,F as b,H as x,I as S,L as C,M as w,N as T,O as E,P as D,R as O,S as k,T as ee,U as A,V as j,W as te,a as ne,g as M,j as re,k as ie,l as ae,v as oe,w as se,x as ce,z as le}from"./chunk-5ZQYHXKU-Bd-RFO5i.js";import{n as ue}from"./chunk-O5CBEL6O-BTuvXKFi.js";import{t as de}from"./chunk-FMBD7UC4-CwqBlx0l.js";import{n as fe,t as N}from"./chunk-BSJP7CBP-B47GpxcW.js";import{n as pe,t as me}from"./chunk-L5ZTLDWV-D208QbfC.js";import{t as he}from"./graphlib-BLOO0H5r.js";function ge(e){return Array.isArray(e)}function _e(e){if(te(e))return e;let t=A(e);if(!ve(e))return{};if(ge(e)){let t=Array.from(e);return e.length>0&&typeof e[0]==`string`&&Object.hasOwn(e,`index`)&&(t.index=e.index,t.input=e.input),t}if(oe(e)){let t=e,n=t.constructor;return new n(t.buffer,t.byteOffset,t.length)}if(t===`[object ArrayBuffer]`)return new ArrayBuffer(e.byteLength);if(t===`[object DataView]`){let t=e,n=t.buffer,r=t.byteOffset,i=t.byteLength,a=new ArrayBuffer(i),o=new Uint8Array(n,r,i);return new Uint8Array(a).set(o),new DataView(a)}if(t===`[object Boolean]`||t===`[object Number]`||t===`[object String]`){let n=e.constructor,r=new n(e.valueOf());return t===`[object String]`?xe(r,e):ye(r,e),r}if(t===`[object Date]`)return new Date(Number(e));if(t===`[object RegExp]`){let t=e,n=new RegExp(t.source,t.flags);return n.lastIndex=t.lastIndex,n}if(t===`[object Symbol]`)return Object(Symbol.prototype.valueOf.call(e));if(t===`[object Map]`){let t=e,n=new Map;return t.forEach((e,t)=>{n.set(t,e)}),n}if(t===`[object Set]`){let t=e,n=new Set;return t.forEach(e=>{n.add(e)}),n}if(t===`[object Arguments]`){let t=e,n={};return ye(n,t),n.length=t.length,n[Symbol.iterator]=t[Symbol.iterator],n}let n={};return Se(n,e),ye(n,e),be(n,e),n}function ve(e){switch(A(e)){case ce:case _:case k:case ee:case se:case y:case v:case E:case re:case ie:case h:case w:case T:case D:case b:case S:case C:case O:case j:case x:case le:case g:return!0;default:return!1}}function ye(e,t){for(let n in t)Object.hasOwn(t,n)&&(e[n]=t[n])}function be(e,t){let n=Object.getOwnPropertySymbols(t);for(let r=0;r<n.length;r++){let i=n[r];Object.prototype.propertyIsEnumerable.call(t,i)&&(e[i]=t[i])}}function xe(e,t){let n=t.valueOf().length;for(let r in t)Object.hasOwn(t,r)&&(Number.isNaN(Number(r))||Number(r)>=n)&&(e[r]=t[r])}function Se(e,t){let n=Object.getPrototypeOf(t);n!==null&&typeof t.constructor==`function`&&Object.setPrototypeOf(e,n)}var Ce=(function(){var t=e(function(e,t,n,r){for(n||={},r=e.length;r--;n[e[r]]=t);return n},`o`),n=[1,15],r=[1,7],i=[1,13],a=[1,14],o=[1,19],s=[1,16],c=[1,17],l=[1,18],u=[8,30],d=[8,10,21,28,29,30,31,39,43,46],f=[1,23],p=[1,24],m=[8,10,15,16,21,28,29,30,31,39,43,46],h=[8,10,15,16,21,27,28,29,30,31,39,43,46],g=[1,49],_={trace:e(function(){},`trace`),yy:{},symbols_:{error:2,spaceLines:3,SPACELINE:4,NL:5,separator:6,SPACE:7,EOF:8,start:9,BLOCK_DIAGRAM_KEY:10,document:11,stop:12,statement:13,link:14,LINK:15,START_LINK:16,LINK_LABEL:17,STR:18,nodeStatement:19,columnsStatement:20,SPACE_BLOCK:21,blockStatement:22,classDefStatement:23,cssClassStatement:24,styleStatement:25,node:26,SIZE:27,COLUMNS:28,"id-block":29,end:30,NODE_ID:31,nodeShapeNLabel:32,dirList:33,DIR:34,NODE_DSTART:35,NODE_DEND:36,BLOCK_ARROW_START:37,BLOCK_ARROW_END:38,classDef:39,CLASSDEF_ID:40,CLASSDEF_STYLEOPTS:41,DEFAULT:42,class:43,CLASSENTITY_IDS:44,STYLECLASS:45,style:46,STYLE_ENTITY_IDS:47,STYLE_DEFINITION_DATA:48,$accept:0,$end:1},terminals_:{2:`error`,4:`SPACELINE`,5:`NL`,7:`SPACE`,8:`EOF`,10:`BLOCK_DIAGRAM_KEY`,15:`LINK`,16:`START_LINK`,17:`LINK_LABEL`,18:`STR`,21:`SPACE_BLOCK`,27:`SIZE`,28:`COLUMNS`,29:`id-block`,30:`end`,31:`NODE_ID`,34:`DIR`,35:`NODE_DSTART`,36:`NODE_DEND`,37:`BLOCK_ARROW_START`,38:`BLOCK_ARROW_END`,39:`classDef`,40:`CLASSDEF_ID`,41:`CLASSDEF_STYLEOPTS`,42:`DEFAULT`,43:`class`,44:`CLASSENTITY_IDS`,45:`STYLECLASS`,46:`style`,47:`STYLE_ENTITY_IDS`,48:`STYLE_DEFINITION_DATA`},productions_:[0,[3,1],[3,2],[3,2],[6,1],[6,1],[6,1],[9,3],[12,1],[12,1],[12,2],[12,2],[11,1],[11,2],[14,1],[14,4],[13,1],[13,1],[13,1],[13,1],[13,1],[13,1],[13,1],[19,3],[19,2],[19,1],[20,1],[22,4],[22,3],[26,1],[26,2],[33,1],[33,2],[32,3],[32,4],[23,3],[23,3],[24,3],[25,3]],performAction:e(function(e,t,n,r,i,a,o){var s=a.length-1;switch(i){case 4:r.getLogger().debug(`Rule: separator (NL) `);break;case 5:r.getLogger().debug(`Rule: separator (Space) `);break;case 6:r.getLogger().debug(`Rule: separator (EOF) `);break;case 7:r.getLogger().debug(`Rule: hierarchy: `,a[s-1]),r.setHierarchy(a[s-1]);break;case 8:r.getLogger().debug(`Stop NL `);break;case 9:r.getLogger().debug(`Stop EOF `);break;case 10:r.getLogger().debug(`Stop NL2 `);break;case 11:r.getLogger().debug(`Stop EOF2 `);break;case 12:r.getLogger().debug(`Rule: statement: `,a[s]),typeof a[s].length==`number`?this.$=a[s]:this.$=[a[s]];break;case 13:r.getLogger().debug(`Rule: statement #2: `,a[s-1]),this.$=[a[s-1]].concat(a[s]);break;case 14:r.getLogger().debug(`Rule: link: `,a[s],e),this.$={edgeTypeStr:a[s],label:``};break;case 15:r.getLogger().debug(`Rule: LABEL link: `,a[s-3],a[s-1],a[s]),this.$={edgeTypeStr:a[s],label:a[s-1]};break;case 18:let t=parseInt(a[s]);this.$={id:r.generateId(),type:`space`,label:``,width:t,children:[]};break;case 23:r.getLogger().debug(`Rule: (nodeStatement link node) `,a[s-2],a[s-1],a[s],` typestr: `,a[s-1].edgeTypeStr);let n=r.edgeStrToEdgeData(a[s-1].edgeTypeStr),i=r.edgeStrToEdgeStartData(a[s-1].edgeTypeStr),o=r.edgeStrToThickness(a[s-1].edgeTypeStr),c=r.edgeStrToPattern(a[s-1].edgeTypeStr);this.$=[{id:a[s-2].id,label:a[s-2].label,type:a[s-2].type,directions:a[s-2].directions},{id:a[s-2].id+`-`+a[s].id,start:a[s-2].id,end:a[s].id,label:a[s-1].label,type:`edge`,thickness:o,pattern:c,directions:a[s].directions,arrowTypeEnd:n,arrowTypeStart:i},{id:a[s].id,label:a[s].label,type:r.typeStr2Type(a[s].typeStr),directions:a[s].directions}];break;case 24:r.getLogger().debug(`Rule: nodeStatement (abc88 node size) `,a[s-1],a[s]),this.$={id:a[s-1].id,label:a[s-1].label,type:r.typeStr2Type(a[s-1].typeStr),directions:a[s-1].directions,widthInColumns:parseInt(a[s],10)};break;case 25:r.getLogger().debug(`Rule: nodeStatement (node) `,a[s]),this.$={id:a[s].id,label:a[s].label,type:r.typeStr2Type(a[s].typeStr),directions:a[s].directions,widthInColumns:1};break;case 26:r.getLogger().debug(`APA123`,this?this:`na`),r.getLogger().debug(`COLUMNS: `,a[s]),this.$={type:`column-setting`,columns:a[s]===`auto`?-1:parseInt(a[s])};break;case 27:r.getLogger().debug(`Rule: id-block statement : `,a[s-2],a[s-1]),r.generateId(),this.$={...a[s-2],type:`composite`,children:a[s-1]};break;case 28:r.getLogger().debug(`Rule: blockStatement : `,a[s-2],a[s-1],a[s]),this.$={id:r.generateId(),type:`composite`,label:``,children:a[s-1]};break;case 29:r.getLogger().debug(`Rule: node (NODE_ID separator): `,a[s]),this.$={id:a[s]};break;case 30:r.getLogger().debug(`Rule: node (NODE_ID nodeShapeNLabel separator): `,a[s-1],a[s]),this.$={id:a[s-1],label:a[s].label,typeStr:a[s].typeStr,directions:a[s].directions};break;case 31:r.getLogger().debug(`Rule: dirList: `,a[s]),this.$=[a[s]];break;case 32:r.getLogger().debug(`Rule: dirList: `,a[s-1],a[s]),this.$=[a[s-1]].concat(a[s]);break;case 33:r.getLogger().debug(`Rule: nodeShapeNLabel: `,a[s-2],a[s-1],a[s]),this.$={typeStr:a[s-2]+a[s],label:a[s-1]};break;case 34:r.getLogger().debug(`Rule: BLOCK_ARROW nodeShapeNLabel: `,a[s-3],a[s-2],` #3:`,a[s-1],a[s]),this.$={typeStr:a[s-3]+a[s],label:a[s-2],directions:a[s-1]};break;case 35:case 36:this.$={type:`classDef`,id:a[s-1].trim(),css:a[s].trim()};break;case 37:this.$={type:`applyClass`,id:a[s-1].trim(),styleClass:a[s].trim()};break;case 38:this.$={type:`applyStyles`,id:a[s-1].trim(),stylesStr:a[s].trim()};break}},`anonymous`),table:[{9:1,10:[1,2]},{1:[3]},{10:n,11:3,13:4,19:5,20:6,21:r,22:8,23:9,24:10,25:11,26:12,28:i,29:a,31:o,39:s,43:c,46:l},{8:[1,20]},t(u,[2,12],{13:4,19:5,20:6,22:8,23:9,24:10,25:11,26:12,11:21,10:n,21:r,28:i,29:a,31:o,39:s,43:c,46:l}),t(d,[2,16],{14:22,15:f,16:p}),t(d,[2,17]),t(d,[2,18]),t(d,[2,19]),t(d,[2,20]),t(d,[2,21]),t(d,[2,22]),t(m,[2,25],{27:[1,25]}),t(d,[2,26]),{19:26,26:12,31:o},{10:n,11:27,13:4,19:5,20:6,21:r,22:8,23:9,24:10,25:11,26:12,28:i,29:a,31:o,39:s,43:c,46:l},{40:[1,28],42:[1,29]},{44:[1,30]},{47:[1,31]},t(h,[2,29],{32:32,35:[1,33],37:[1,34]}),{1:[2,7]},t(u,[2,13]),{26:35,31:o},{31:[2,14]},{17:[1,36]},t(m,[2,24]),{10:n,11:37,13:4,14:22,15:f,16:p,19:5,20:6,21:r,22:8,23:9,24:10,25:11,26:12,28:i,29:a,31:o,39:s,43:c,46:l},{30:[1,38]},{41:[1,39]},{41:[1,40]},{45:[1,41]},{48:[1,42]},t(h,[2,30]),{18:[1,43]},{18:[1,44]},t(m,[2,23]),{18:[1,45]},{30:[1,46]},t(d,[2,28]),t(d,[2,35]),t(d,[2,36]),t(d,[2,37]),t(d,[2,38]),{36:[1,47]},{33:48,34:g},{15:[1,50]},t(d,[2,27]),t(h,[2,33]),{38:[1,51]},{33:52,34:g,38:[2,31]},{31:[2,15]},t(h,[2,34]),{38:[2,32]}],defaultActions:{20:[2,7],23:[2,14],50:[2,15],52:[2,32]},parseError:e(function(e,t){if(t.recoverable)this.trace(e);else{var n=Error(e);throw n.hash=t,n}},`parseError`),parse:e(function(t){var n=this,r=[0],i=[],a=[null],o=[],s=this.table,c=``,l=0,u=0,d=0,f=2,p=1,m=o.slice.call(arguments,1),h=Object.create(this.lexer),g={yy:{}};for(var _ in this.yy)Object.prototype.hasOwnProperty.call(this.yy,_)&&(g.yy[_]=this.yy[_]);h.setInput(t,g.yy),g.yy.lexer=h,g.yy.parser=this,h.yylloc===void 0&&(h.yylloc={});var v=h.yylloc;o.push(v);var y=h.options&&h.options.ranges;typeof g.yy.parseError==`function`?this.parseError=g.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function b(e){r.length-=2*e,a.length-=e,o.length-=e}e(b,`popStack`);function x(){var e=i.pop()||h.lex()||p;return typeof e!=`number`&&(e instanceof Array&&(i=e,e=i.pop()),e=n.symbols_[e]||e),e}e(x,`lex`);for(var S,C,w,T,E,D={},O,k,ee,A;;){if(w=r[r.length-1],this.defaultActions[w]?T=this.defaultActions[w]:(S??=x(),T=s[w]&&s[w][S]),T===void 0||!T.length||!T[0]){var j=``;for(O in A=[],s[w])this.terminals_[O]&&O>f&&A.push(`'`+this.terminals_[O]+`'`);j=h.showPosition?`Parse error on line `+(l+1)+`:
1
+ import{n as e,r as t}from"./chunk-AGHRB4JF-CYdXVA2-.js";import{O as n,T as r,a as i,b as a,c as o,rt as s,s as c,x as l,z as u}from"./chunk-CSCIHK7Q-CAE1p4Em.js";import{t as d}from"./channel-CCQujL1n.js";import{Vt as f,ct as p,it as m}from"./vendor-utils-rVejrfMR.js";import{A as h,B as g,C as _,D as v,E as y,F as b,H as x,I as S,L as C,M as w,N as T,O as E,P as D,R as O,S as k,T as ee,U as A,V as j,W as te,a as ne,g as M,j as re,k as ie,l as ae,v as oe,w as se,x as ce,z as le}from"./chunk-5ZQYHXKU-Bli4k6GI.js";import{n as ue}from"./chunk-O5CBEL6O-D-jDqsN2.js";import{t as de}from"./chunk-FMBD7UC4-CwqBlx0l.js";import{n as fe,t as N}from"./chunk-BSJP7CBP-B47GpxcW.js";import{n as pe,t as me}from"./chunk-L5ZTLDWV-DfUlBdXN.js";import{t as he}from"./graphlib-W5bESv3F.js";function ge(e){return Array.isArray(e)}function _e(e){if(te(e))return e;let t=A(e);if(!ve(e))return{};if(ge(e)){let t=Array.from(e);return e.length>0&&typeof e[0]==`string`&&Object.hasOwn(e,`index`)&&(t.index=e.index,t.input=e.input),t}if(oe(e)){let t=e,n=t.constructor;return new n(t.buffer,t.byteOffset,t.length)}if(t===`[object ArrayBuffer]`)return new ArrayBuffer(e.byteLength);if(t===`[object DataView]`){let t=e,n=t.buffer,r=t.byteOffset,i=t.byteLength,a=new ArrayBuffer(i),o=new Uint8Array(n,r,i);return new Uint8Array(a).set(o),new DataView(a)}if(t===`[object Boolean]`||t===`[object Number]`||t===`[object String]`){let n=e.constructor,r=new n(e.valueOf());return t===`[object String]`?xe(r,e):ye(r,e),r}if(t===`[object Date]`)return new Date(Number(e));if(t===`[object RegExp]`){let t=e,n=new RegExp(t.source,t.flags);return n.lastIndex=t.lastIndex,n}if(t===`[object Symbol]`)return Object(Symbol.prototype.valueOf.call(e));if(t===`[object Map]`){let t=e,n=new Map;return t.forEach((e,t)=>{n.set(t,e)}),n}if(t===`[object Set]`){let t=e,n=new Set;return t.forEach(e=>{n.add(e)}),n}if(t===`[object Arguments]`){let t=e,n={};return ye(n,t),n.length=t.length,n[Symbol.iterator]=t[Symbol.iterator],n}let n={};return Se(n,e),ye(n,e),be(n,e),n}function ve(e){switch(A(e)){case ce:case _:case k:case ee:case se:case y:case v:case E:case re:case ie:case h:case w:case T:case D:case b:case S:case C:case O:case j:case x:case le:case g:return!0;default:return!1}}function ye(e,t){for(let n in t)Object.hasOwn(t,n)&&(e[n]=t[n])}function be(e,t){let n=Object.getOwnPropertySymbols(t);for(let r=0;r<n.length;r++){let i=n[r];Object.prototype.propertyIsEnumerable.call(t,i)&&(e[i]=t[i])}}function xe(e,t){let n=t.valueOf().length;for(let r in t)Object.hasOwn(t,r)&&(Number.isNaN(Number(r))||Number(r)>=n)&&(e[r]=t[r])}function Se(e,t){let n=Object.getPrototypeOf(t);n!==null&&typeof t.constructor==`function`&&Object.setPrototypeOf(e,n)}var Ce=(function(){var t=e(function(e,t,n,r){for(n||={},r=e.length;r--;n[e[r]]=t);return n},`o`),n=[1,15],r=[1,7],i=[1,13],a=[1,14],o=[1,19],s=[1,16],c=[1,17],l=[1,18],u=[8,30],d=[8,10,21,28,29,30,31,39,43,46],f=[1,23],p=[1,24],m=[8,10,15,16,21,28,29,30,31,39,43,46],h=[8,10,15,16,21,27,28,29,30,31,39,43,46],g=[1,49],_={trace:e(function(){},`trace`),yy:{},symbols_:{error:2,spaceLines:3,SPACELINE:4,NL:5,separator:6,SPACE:7,EOF:8,start:9,BLOCK_DIAGRAM_KEY:10,document:11,stop:12,statement:13,link:14,LINK:15,START_LINK:16,LINK_LABEL:17,STR:18,nodeStatement:19,columnsStatement:20,SPACE_BLOCK:21,blockStatement:22,classDefStatement:23,cssClassStatement:24,styleStatement:25,node:26,SIZE:27,COLUMNS:28,"id-block":29,end:30,NODE_ID:31,nodeShapeNLabel:32,dirList:33,DIR:34,NODE_DSTART:35,NODE_DEND:36,BLOCK_ARROW_START:37,BLOCK_ARROW_END:38,classDef:39,CLASSDEF_ID:40,CLASSDEF_STYLEOPTS:41,DEFAULT:42,class:43,CLASSENTITY_IDS:44,STYLECLASS:45,style:46,STYLE_ENTITY_IDS:47,STYLE_DEFINITION_DATA:48,$accept:0,$end:1},terminals_:{2:`error`,4:`SPACELINE`,5:`NL`,7:`SPACE`,8:`EOF`,10:`BLOCK_DIAGRAM_KEY`,15:`LINK`,16:`START_LINK`,17:`LINK_LABEL`,18:`STR`,21:`SPACE_BLOCK`,27:`SIZE`,28:`COLUMNS`,29:`id-block`,30:`end`,31:`NODE_ID`,34:`DIR`,35:`NODE_DSTART`,36:`NODE_DEND`,37:`BLOCK_ARROW_START`,38:`BLOCK_ARROW_END`,39:`classDef`,40:`CLASSDEF_ID`,41:`CLASSDEF_STYLEOPTS`,42:`DEFAULT`,43:`class`,44:`CLASSENTITY_IDS`,45:`STYLECLASS`,46:`style`,47:`STYLE_ENTITY_IDS`,48:`STYLE_DEFINITION_DATA`},productions_:[0,[3,1],[3,2],[3,2],[6,1],[6,1],[6,1],[9,3],[12,1],[12,1],[12,2],[12,2],[11,1],[11,2],[14,1],[14,4],[13,1],[13,1],[13,1],[13,1],[13,1],[13,1],[13,1],[19,3],[19,2],[19,1],[20,1],[22,4],[22,3],[26,1],[26,2],[33,1],[33,2],[32,3],[32,4],[23,3],[23,3],[24,3],[25,3]],performAction:e(function(e,t,n,r,i,a,o){var s=a.length-1;switch(i){case 4:r.getLogger().debug(`Rule: separator (NL) `);break;case 5:r.getLogger().debug(`Rule: separator (Space) `);break;case 6:r.getLogger().debug(`Rule: separator (EOF) `);break;case 7:r.getLogger().debug(`Rule: hierarchy: `,a[s-1]),r.setHierarchy(a[s-1]);break;case 8:r.getLogger().debug(`Stop NL `);break;case 9:r.getLogger().debug(`Stop EOF `);break;case 10:r.getLogger().debug(`Stop NL2 `);break;case 11:r.getLogger().debug(`Stop EOF2 `);break;case 12:r.getLogger().debug(`Rule: statement: `,a[s]),typeof a[s].length==`number`?this.$=a[s]:this.$=[a[s]];break;case 13:r.getLogger().debug(`Rule: statement #2: `,a[s-1]),this.$=[a[s-1]].concat(a[s]);break;case 14:r.getLogger().debug(`Rule: link: `,a[s],e),this.$={edgeTypeStr:a[s],label:``};break;case 15:r.getLogger().debug(`Rule: LABEL link: `,a[s-3],a[s-1],a[s]),this.$={edgeTypeStr:a[s],label:a[s-1]};break;case 18:let t=parseInt(a[s]);this.$={id:r.generateId(),type:`space`,label:``,width:t,children:[]};break;case 23:r.getLogger().debug(`Rule: (nodeStatement link node) `,a[s-2],a[s-1],a[s],` typestr: `,a[s-1].edgeTypeStr);let n=r.edgeStrToEdgeData(a[s-1].edgeTypeStr),i=r.edgeStrToEdgeStartData(a[s-1].edgeTypeStr),o=r.edgeStrToThickness(a[s-1].edgeTypeStr),c=r.edgeStrToPattern(a[s-1].edgeTypeStr);this.$=[{id:a[s-2].id,label:a[s-2].label,type:a[s-2].type,directions:a[s-2].directions},{id:a[s-2].id+`-`+a[s].id,start:a[s-2].id,end:a[s].id,label:a[s-1].label,type:`edge`,thickness:o,pattern:c,directions:a[s].directions,arrowTypeEnd:n,arrowTypeStart:i},{id:a[s].id,label:a[s].label,type:r.typeStr2Type(a[s].typeStr),directions:a[s].directions}];break;case 24:r.getLogger().debug(`Rule: nodeStatement (abc88 node size) `,a[s-1],a[s]),this.$={id:a[s-1].id,label:a[s-1].label,type:r.typeStr2Type(a[s-1].typeStr),directions:a[s-1].directions,widthInColumns:parseInt(a[s],10)};break;case 25:r.getLogger().debug(`Rule: nodeStatement (node) `,a[s]),this.$={id:a[s].id,label:a[s].label,type:r.typeStr2Type(a[s].typeStr),directions:a[s].directions,widthInColumns:1};break;case 26:r.getLogger().debug(`APA123`,this?this:`na`),r.getLogger().debug(`COLUMNS: `,a[s]),this.$={type:`column-setting`,columns:a[s]===`auto`?-1:parseInt(a[s])};break;case 27:r.getLogger().debug(`Rule: id-block statement : `,a[s-2],a[s-1]),r.generateId(),this.$={...a[s-2],type:`composite`,children:a[s-1]};break;case 28:r.getLogger().debug(`Rule: blockStatement : `,a[s-2],a[s-1],a[s]),this.$={id:r.generateId(),type:`composite`,label:``,children:a[s-1]};break;case 29:r.getLogger().debug(`Rule: node (NODE_ID separator): `,a[s]),this.$={id:a[s]};break;case 30:r.getLogger().debug(`Rule: node (NODE_ID nodeShapeNLabel separator): `,a[s-1],a[s]),this.$={id:a[s-1],label:a[s].label,typeStr:a[s].typeStr,directions:a[s].directions};break;case 31:r.getLogger().debug(`Rule: dirList: `,a[s]),this.$=[a[s]];break;case 32:r.getLogger().debug(`Rule: dirList: `,a[s-1],a[s]),this.$=[a[s-1]].concat(a[s]);break;case 33:r.getLogger().debug(`Rule: nodeShapeNLabel: `,a[s-2],a[s-1],a[s]),this.$={typeStr:a[s-2]+a[s],label:a[s-1]};break;case 34:r.getLogger().debug(`Rule: BLOCK_ARROW nodeShapeNLabel: `,a[s-3],a[s-2],` #3:`,a[s-1],a[s]),this.$={typeStr:a[s-3]+a[s],label:a[s-2],directions:a[s-1]};break;case 35:case 36:this.$={type:`classDef`,id:a[s-1].trim(),css:a[s].trim()};break;case 37:this.$={type:`applyClass`,id:a[s-1].trim(),styleClass:a[s].trim()};break;case 38:this.$={type:`applyStyles`,id:a[s-1].trim(),stylesStr:a[s].trim()};break}},`anonymous`),table:[{9:1,10:[1,2]},{1:[3]},{10:n,11:3,13:4,19:5,20:6,21:r,22:8,23:9,24:10,25:11,26:12,28:i,29:a,31:o,39:s,43:c,46:l},{8:[1,20]},t(u,[2,12],{13:4,19:5,20:6,22:8,23:9,24:10,25:11,26:12,11:21,10:n,21:r,28:i,29:a,31:o,39:s,43:c,46:l}),t(d,[2,16],{14:22,15:f,16:p}),t(d,[2,17]),t(d,[2,18]),t(d,[2,19]),t(d,[2,20]),t(d,[2,21]),t(d,[2,22]),t(m,[2,25],{27:[1,25]}),t(d,[2,26]),{19:26,26:12,31:o},{10:n,11:27,13:4,19:5,20:6,21:r,22:8,23:9,24:10,25:11,26:12,28:i,29:a,31:o,39:s,43:c,46:l},{40:[1,28],42:[1,29]},{44:[1,30]},{47:[1,31]},t(h,[2,29],{32:32,35:[1,33],37:[1,34]}),{1:[2,7]},t(u,[2,13]),{26:35,31:o},{31:[2,14]},{17:[1,36]},t(m,[2,24]),{10:n,11:37,13:4,14:22,15:f,16:p,19:5,20:6,21:r,22:8,23:9,24:10,25:11,26:12,28:i,29:a,31:o,39:s,43:c,46:l},{30:[1,38]},{41:[1,39]},{41:[1,40]},{45:[1,41]},{48:[1,42]},t(h,[2,30]),{18:[1,43]},{18:[1,44]},t(m,[2,23]),{18:[1,45]},{30:[1,46]},t(d,[2,28]),t(d,[2,35]),t(d,[2,36]),t(d,[2,37]),t(d,[2,38]),{36:[1,47]},{33:48,34:g},{15:[1,50]},t(d,[2,27]),t(h,[2,33]),{38:[1,51]},{33:52,34:g,38:[2,31]},{31:[2,15]},t(h,[2,34]),{38:[2,32]}],defaultActions:{20:[2,7],23:[2,14],50:[2,15],52:[2,32]},parseError:e(function(e,t){if(t.recoverable)this.trace(e);else{var n=Error(e);throw n.hash=t,n}},`parseError`),parse:e(function(t){var n=this,r=[0],i=[],a=[null],o=[],s=this.table,c=``,l=0,u=0,d=0,f=2,p=1,m=o.slice.call(arguments,1),h=Object.create(this.lexer),g={yy:{}};for(var _ in this.yy)Object.prototype.hasOwnProperty.call(this.yy,_)&&(g.yy[_]=this.yy[_]);h.setInput(t,g.yy),g.yy.lexer=h,g.yy.parser=this,h.yylloc===void 0&&(h.yylloc={});var v=h.yylloc;o.push(v);var y=h.options&&h.options.ranges;typeof g.yy.parseError==`function`?this.parseError=g.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function b(e){r.length-=2*e,a.length-=e,o.length-=e}e(b,`popStack`);function x(){var e=i.pop()||h.lex()||p;return typeof e!=`number`&&(e instanceof Array&&(i=e,e=i.pop()),e=n.symbols_[e]||e),e}e(x,`lex`);for(var S,C,w,T,E,D={},O,k,ee,A;;){if(w=r[r.length-1],this.defaultActions[w]?T=this.defaultActions[w]:(S??=x(),T=s[w]&&s[w][S]),T===void 0||!T.length||!T[0]){var j=``;for(O in A=[],s[w])this.terminals_[O]&&O>f&&A.push(`'`+this.terminals_[O]+`'`);j=h.showPosition?`Parse error on line `+(l+1)+`:
2
2
  `+h.showPosition()+`
3
3
  Expecting `+A.join(`, `)+`, got '`+(this.terminals_[S]||S)+`'`:`Parse error on line `+(l+1)+`: Unexpected `+(S==p?`end of input`:`'`+(this.terminals_[S]||S)+`'`),this.parseError(j,{text:h.match,token:this.terminals_[S]||S,line:h.yylineno,loc:v,expected:A})}if(T[0]instanceof Array&&T.length>1)throw Error(`Parse Error: multiple actions possible at state: `+w+`, token: `+S);switch(T[0]){case 1:r.push(S),a.push(h.yytext),o.push(h.yylloc),r.push(T[1]),S=null,C?(S=C,C=null):(u=h.yyleng,c=h.yytext,l=h.yylineno,v=h.yylloc,d>0&&d--);break;case 2:if(k=this.productions_[T[1]][1],D.$=a[a.length-k],D._$={first_line:o[o.length-(k||1)].first_line,last_line:o[o.length-1].last_line,first_column:o[o.length-(k||1)].first_column,last_column:o[o.length-1].last_column},y&&(D._$.range=[o[o.length-(k||1)].range[0],o[o.length-1].range[1]]),E=this.performAction.apply(D,[c,u,l,g.yy,T[1],a,o].concat(m)),E!==void 0)return E;k&&(r=r.slice(0,-1*k*2),a=a.slice(0,-1*k),o=o.slice(0,-1*k)),r.push(this.productions_[T[1]][0]),a.push(D.$),o.push(D._$),ee=s[r[r.length-2]][r[r.length-1]],r.push(ee);break;case 3:return!0}}return!0},`parse`)};_.lexer=(function(){return{EOF:1,parseError:e(function(e,t){if(this.yy.parser)this.yy.parser.parseError(e,t);else throw Error(e)},`parseError`),setInput:e(function(e,t){return this.yy=t||this.yy||{},this._input=e,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match=``,this.conditionStack=[`INITIAL`],this.yylloc={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:e(function(){var e=this._input[0];return this.yytext+=e,this.yyleng++,this.offset++,this.match+=e,this.matched+=e,e.match(/(?:\r\n?|\n).*/g)?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),e},`input`),unput:e(function(e){var t=e.length,n=e.split(/(?:\r\n?|\n)/g);this._input=e+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-t),this.offset-=t;var r=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),n.length-1&&(this.yylineno-=n.length-1);var i=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:n?(n.length===r.length?this.yylloc.first_column:0)+r[r.length-n.length].length-n[0].length:this.yylloc.first_column-t},this.options.ranges&&(this.yylloc.range=[i[0],i[0]+this.yyleng-t]),this.yyleng=this.yytext.length,this},`unput`),more:e(function(){return this._more=!0,this},`more`),reject:e(function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError(`Lexical error on line `+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true).
4
4
  `+this.showPosition(),{text:``,token:null,line:this.yylineno});return this},`reject`),less:e(function(e){this.unput(this.match.slice(e))},`less`),pastInput:e(function(){var e=this.matched.substr(0,this.matched.length-this.match.length);return(e.length>20?`...`:``)+e.substr(-20).replace(/\n/g,``)},`pastInput`),upcomingInput:e(function(){var e=this.match;return e.length<20&&(e+=this._input.substr(0,20-e.length)),(e.substr(0,20)+(e.length>20?`...`:``)).replace(/\n/g,``)},`upcomingInput`),showPosition:e(function(){var e=this.pastInput(),t=Array(e.length+1).join(`-`);return e+this.upcomingInput()+`
@@ -129,4 +129,4 @@ Expecting `+A.join(`, `)+`, got '`+(this.terminals_[S]||S)+`'`:`Parse error on l
129
129
  `,`getStyles`),qe=e((e,t,n,r)=>{t.forEach(t=>{Je[t](e,n,r)})},`insertMarkers`),Je={extension:e((e,n,r)=>{t.trace(`Making markers for `,r),e.append(`defs`).append(`marker`).attr(`id`,r+`_`+n+`-extensionStart`).attr(`class`,`marker extension `+n).attr(`refX`,18).attr(`refY`,7).attr(`markerWidth`,190).attr(`markerHeight`,240).attr(`orient`,`auto`).append(`path`).attr(`d`,`M 1,7 L18,13 V 1 Z`),e.append(`defs`).append(`marker`).attr(`id`,r+`_`+n+`-extensionEnd`).attr(`class`,`marker extension `+n).attr(`refX`,1).attr(`refY`,7).attr(`markerWidth`,20).attr(`markerHeight`,28).attr(`orient`,`auto`).append(`path`).attr(`d`,`M 1,1 V 13 L18,7 Z`)},`extension`),composition:e((e,t,n)=>{e.append(`defs`).append(`marker`).attr(`id`,n+`_`+t+`-compositionStart`).attr(`class`,`marker composition `+t).attr(`refX`,18).attr(`refY`,7).attr(`markerWidth`,190).attr(`markerHeight`,240).attr(`orient`,`auto`).append(`path`).attr(`d`,`M 18,7 L9,13 L1,7 L9,1 Z`),e.append(`defs`).append(`marker`).attr(`id`,n+`_`+t+`-compositionEnd`).attr(`class`,`marker composition `+t).attr(`refX`,1).attr(`refY`,7).attr(`markerWidth`,20).attr(`markerHeight`,28).attr(`orient`,`auto`).append(`path`).attr(`d`,`M 18,7 L9,13 L1,7 L9,1 Z`)},`composition`),aggregation:e((e,t,n)=>{e.append(`defs`).append(`marker`).attr(`id`,n+`_`+t+`-aggregationStart`).attr(`class`,`marker aggregation `+t).attr(`refX`,18).attr(`refY`,7).attr(`markerWidth`,190).attr(`markerHeight`,240).attr(`orient`,`auto`).append(`path`).attr(`d`,`M 18,7 L9,13 L1,7 L9,1 Z`),e.append(`defs`).append(`marker`).attr(`id`,n+`_`+t+`-aggregationEnd`).attr(`class`,`marker aggregation `+t).attr(`refX`,1).attr(`refY`,7).attr(`markerWidth`,20).attr(`markerHeight`,28).attr(`orient`,`auto`).append(`path`).attr(`d`,`M 18,7 L9,13 L1,7 L9,1 Z`)},`aggregation`),dependency:e((e,t,n)=>{e.append(`defs`).append(`marker`).attr(`id`,n+`_`+t+`-dependencyStart`).attr(`class`,`marker dependency `+t).attr(`refX`,6).attr(`refY`,7).attr(`markerWidth`,190).attr(`markerHeight`,240).attr(`orient`,`auto`).append(`path`).attr(`d`,`M 5,7 L9,13 L1,7 L9,1 Z`),e.append(`defs`).append(`marker`).attr(`id`,n+`_`+t+`-dependencyEnd`).attr(`class`,`marker dependency `+t).attr(`refX`,13).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`)},`dependency`),lollipop:e((e,t,n)=>{e.append(`defs`).append(`marker`).attr(`id`,n+`_`+t+`-lollipopStart`).attr(`class`,`marker lollipop `+t).attr(`refX`,13).attr(`refY`,7).attr(`markerWidth`,190).attr(`markerHeight`,240).attr(`orient`,`auto`).append(`circle`).attr(`stroke`,`black`).attr(`fill`,`transparent`).attr(`cx`,7).attr(`cy`,7).attr(`r`,6),e.append(`defs`).append(`marker`).attr(`id`,n+`_`+t+`-lollipopEnd`).attr(`class`,`marker lollipop `+t).attr(`refX`,1).attr(`refY`,7).attr(`markerWidth`,190).attr(`markerHeight`,240).attr(`orient`,`auto`).append(`circle`).attr(`stroke`,`black`).attr(`fill`,`transparent`).attr(`cx`,7).attr(`cy`,7).attr(`r`,6)},`lollipop`),point:e((e,t,n)=>{e.append(`marker`).attr(`id`,n+`_`+t+`-pointEnd`).attr(`class`,`marker `+t).attr(`viewBox`,`0 0 10 10`).attr(`refX`,6).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`).attr(`class`,`arrowMarkerPath`).style(`stroke-width`,1).style(`stroke-dasharray`,`1,0`),e.append(`marker`).attr(`id`,n+`_`+t+`-pointStart`).attr(`class`,`marker `+t).attr(`viewBox`,`0 0 10 10`).attr(`refX`,4.5).attr(`refY`,5).attr(`markerUnits`,`userSpaceOnUse`).attr(`markerWidth`,12).attr(`markerHeight`,12).attr(`orient`,`auto`).append(`path`).attr(`d`,`M 0 5 L 10 10 L 10 0 z`).attr(`class`,`arrowMarkerPath`).style(`stroke-width`,1).style(`stroke-dasharray`,`1,0`)},`point`),circle:e((e,t,n)=>{e.append(`marker`).attr(`id`,n+`_`+t+`-circleEnd`).attr(`class`,`marker `+t).attr(`viewBox`,`0 0 10 10`).attr(`refX`,11).attr(`refY`,5).attr(`markerUnits`,`userSpaceOnUse`).attr(`markerWidth`,11).attr(`markerHeight`,11).attr(`orient`,`auto`).append(`circle`).attr(`cx`,`5`).attr(`cy`,`5`).attr(`r`,`5`).attr(`class`,`arrowMarkerPath`).style(`stroke-width`,1).style(`stroke-dasharray`,`1,0`),e.append(`marker`).attr(`id`,n+`_`+t+`-circleStart`).attr(`class`,`marker `+t).attr(`viewBox`,`0 0 10 10`).attr(`refX`,-1).attr(`refY`,5).attr(`markerUnits`,`userSpaceOnUse`).attr(`markerWidth`,11).attr(`markerHeight`,11).attr(`orient`,`auto`).append(`circle`).attr(`cx`,`5`).attr(`cy`,`5`).attr(`r`,`5`).attr(`class`,`arrowMarkerPath`).style(`stroke-width`,1).style(`stroke-dasharray`,`1,0`)},`circle`),cross:e((e,t,n)=>{e.append(`marker`).attr(`id`,n+`_`+t+`-crossEnd`).attr(`class`,`marker cross `+t).attr(`viewBox`,`0 0 11 11`).attr(`refX`,12).attr(`refY`,5.2).attr(`markerUnits`,`userSpaceOnUse`).attr(`markerWidth`,11).attr(`markerHeight`,11).attr(`orient`,`auto`).append(`path`).attr(`d`,`M 1,1 l 9,9 M 10,1 l -9,9`).attr(`class`,`arrowMarkerPath`).style(`stroke-width`,2).style(`stroke-dasharray`,`1,0`),e.append(`marker`).attr(`id`,n+`_`+t+`-crossStart`).attr(`class`,`marker cross `+t).attr(`viewBox`,`0 0 11 11`).attr(`refX`,-1).attr(`refY`,5.2).attr(`markerUnits`,`userSpaceOnUse`).attr(`markerWidth`,11).attr(`markerHeight`,11).attr(`orient`,`auto`).append(`path`).attr(`d`,`M 1,1 l 9,9 M 10,1 l -9,9`).attr(`class`,`arrowMarkerPath`).style(`stroke-width`,2).style(`stroke-dasharray`,`1,0`)},`cross`),barb:e((e,t,n)=>{e.append(`defs`).append(`marker`).attr(`id`,n+`_`+t+`-barbEnd`).attr(`refX`,19).attr(`refY`,7).attr(`markerWidth`,20).attr(`markerHeight`,14).attr(`markerUnits`,`strokeWidth`).attr(`orient`,`auto`).append(`path`).attr(`d`,`M 19,7 L9,13 L14,7 L9,1 Z`)},`barb`)},Ye=qe,B=l()?.block?.padding??8;function V(e,t){if(e===0||!Number.isInteger(e))throw Error(`Columns must be an integer !== 0.`);if(t<0||!Number.isInteger(t))throw Error(`Position must be a non-negative integer.`+t);return e<0?{px:t,py:0}:e===1?{px:0,py:t}:{px:t%e,py:Math.floor(t/e)}}e(V,`calculateBlockPosition`);var Xe=e(e=>{let n=0,r=0;for(let i of e.children){let{width:e,height:a,x:o,y:s}=i.size??{width:0,height:0,x:0,y:0};if(t.debug(`getMaxChildSize abc95 child:`,i.id,`width:`,e,`height:`,a,`x:`,o,`y:`,s,i.type),i.type===`space`)continue;let c=e/(i.widthInColumns??1);c>n&&(n=c),a>r&&(r=a)}return{width:n,height:r}},`getMaxChildSize`);function H(e,n,r=0,i=0){t.debug(`setBlockSizes abc95 (start)`,e.id,e?.size?.x,`block width =`,e?.size,`siblingWidth`,r),e?.size?.width||(e.size={width:r,height:i,x:0,y:0});let a=0,o=0;if(e.children?.length>0){for(let t of e.children)H(t,n);let s=Xe(e);a=s.width,o=s.height,t.debug(`setBlockSizes abc95 maxWidth of`,e.id,`:s children is `,a,o);for(let n of e.children)n.size&&(t.debug(`abc95 Setting size of children of ${e.id} id=${n.id} ${a} ${o} ${JSON.stringify(n.size)}`),n.size.width=a*(n.widthInColumns??1)+B*((n.widthInColumns??1)-1),n.size.height=o,n.size.x=0,n.size.y=0,t.debug(`abc95 updating size of ${e.id} children child:${n.id} maxWidth:${a} maxHeight:${o}`));for(let t of e.children)H(t,n,a,o);let c=e.columns??-1,l=0;for(let t of e.children)l+=t.widthInColumns??1;let u=e.children.length;c>0&&c<l&&(u=c);let d=Math.ceil(l/u),f=u*(a+B)+B,p=d*(o+B)+B;if(f<r){t.debug(`Detected to small sibling: abc95 ${e.id} siblingWidth ${r} siblingHeight ${i} width ${f}`),f=r,p=i;let n=(r-u*B-B)/u,s=(i-d*B-B)/d;t.debug(`Size indata abc88`,e.id,`childWidth`,n,`maxWidth`,a),t.debug(`Size indata abc88`,e.id,`childHeight`,s,`maxHeight`,o),t.debug(`Size indata abc88 xSize`,u,`padding`,B);for(let t of e.children)t.size&&(t.size.width=n,t.size.height=s,t.size.x=0,t.size.y=0)}if(t.debug(`abc95 (finale calc) ${e.id} xSize ${u} ySize ${d} columns ${c}${e.children.length} width=${Math.max(f,e.size?.width||0)}`),f<(e?.size?.width||0)){f=e?.size?.width||0;let n=c>0?Math.min(e.children.length,c):e.children.length;if(n>0){let r=(f-n*B-B)/n;t.debug(`abc95 (growing to fit) width`,e.id,f,e.size?.width,r);for(let t of e.children)t.size&&(t.size.width=r)}}e.size={width:f,height:p,x:0,y:0}}t.debug(`setBlockSizes abc94 (done)`,e.id,e?.size?.x,e?.size?.width,e?.size?.y,e?.size?.height)}e(H,`setBlockSizes`);function Ze(e,n){t.debug(`abc85 layout blocks (=>layoutBlocks) ${e.id} x: ${e?.size?.x} y: ${e?.size?.y} width: ${e?.size?.width}`);let r=e.columns??-1;if(t.debug(`layoutBlocks columns abc95`,e.id,`=>`,r,e),e.children&&e.children.length>0){let i=e?.children[0]?.size?.width??0,a=e.children.length*i+(e.children.length-1)*B;t.debug(`widthOfChildren 88`,a,`posX`);let o=new Map;{let t=0;for(let n of e.children){if(!n.size)continue;let{py:e}=V(r,t),i=o.get(e)??0;n.size.height>i&&o.set(e,n.size.height);let a=n?.widthInColumns??1;r>0&&(a=Math.min(a,r-t%r)),t+=a}}let s=new Map;{let e=0,t=[...o.keys()].sort((e,t)=>e-t);for(let n of t)s.set(n,e),e+=(o.get(n)??0)+B}let c=0;t.debug(`abc91 block?.size?.x`,e.id,e?.size?.x);let l=e?.size?.x?e?.size?.x+(-e?.size?.width/2||0):-B,u=0;for(let i of e.children){let a=e;if(!i.size)continue;let{width:d,height:f}=i.size,{px:p,py:m}=V(r,c);if(m!=u&&(u=m,l=e?.size?.x?e?.size?.x+(-e?.size?.width/2||0):-B,t.debug(`New row in layout for block`,e.id,` and child `,i.id,u)),t.debug(`abc89 layout blocks (child) id: ${i.id} Pos: ${c} (px, py) ${p},${m} (${a?.size?.x},${a?.size?.y}) parent: ${a.id} width: ${d}${B}`),a.size){let e=d/2;i.size.x=l+B+e,t.debug(`abc91 layout blocks (calc) px, pyid:${i.id} startingPos=X${l} new startingPosX${i.size.x} ${e} padding=${B} width=${d} halfWidth=${e} => x:${i.size.x} y:${i.size.y} ${i.widthInColumns} (width * (child?.w || 1)) / 2 ${d*(i?.widthInColumns??1)/2}`),l=i.size.x+e;let n=s.get(m)??0,r=o.get(m)??f;i.size.y=a.size.y-a.size.height/2+n+r/2+B,t.debug(`abc88 layout blocks (calc) px, pyid:${i.id}startingPosX${l}${B}${e}=>x:${i.size.x}y:${i.size.y}${i.widthInColumns}(width * (child?.w || 1)) / 2${d*(i?.widthInColumns??1)/2}`)}i.children&&Ze(i,n);let h=i?.widthInColumns??1;r>0&&(h=Math.min(h,r-c%r)),c+=h,t.debug(`abc88 columnsPos`,i,c)}}t.debug(`layout blocks (<==layoutBlocks) ${e.id} x: ${e?.size?.x} y: ${e?.size?.y} width: ${e?.size?.width}`)}e(Ze,`layoutBlocks`);function Qe(e,{minX:t,minY:n,maxX:r,maxY:i}={minX:0,minY:0,maxX:0,maxY:0}){if(e.size&&e.id!==`root`){let{x:a,y:o,width:s,height:c}=e.size;a-s/2<t&&(t=a-s/2),o-c/2<n&&(n=o-c/2),a+s/2>r&&(r=a+s/2),o+c/2>i&&(i=o+c/2)}if(e.children)for(let a of e.children)({minX:t,minY:n,maxX:r,maxY:i}=Qe(a,{minX:t,minY:n,maxX:r,maxY:i}));return{minX:t,minY:n,maxX:r,maxY:i}}e(Qe,`findBounds`);function $e(e){let n=e.getBlock(`root`);if(!n)return;H(n,e,0,0),Ze(n,e),t.debug(`getBlocks`,JSON.stringify(n,null,2));let{minX:r,minY:i,maxX:a,maxY:o}=Qe(n),s=o-i;return{x:r,y:i,width:a-r,height:s}}e($e,`layout`);var U=e(async(e,t,n,i=!1,a=!1)=>{let o=t||``;typeof o==`object`&&(o=o[0]);let s=l(),c=r(s);return await ue(e,o,{style:n,isTitle:i,useHtmlLabels:c,markdown:!1,isNode:a,width:1/0},s)},`createLabel`),et=e((e,t,n,r,i)=>{t.arrowTypeStart&&nt(e,`start`,t.arrowTypeStart,n,r,i),t.arrowTypeEnd&&nt(e,`end`,t.arrowTypeEnd,n,r,i)},`addEdgeMarkers`),tt={arrow_cross:`cross`,arrow_point:`point`,arrow_barb:`barb`,arrow_circle:`circle`,aggregation:`aggregation`,extension:`extension`,composition:`composition`,dependency:`dependency`,lollipop:`lollipop`},nt=e((e,n,r,i,a,o)=>{let s=tt[r];if(!s){t.warn(`Unknown arrow type: ${r}`);return}let c=n===`start`?`Start`:`End`;e.attr(`marker-${n}`,`url(${i}#${a}_${o}-${s}${c})`)},`addEdgeMarker`),rt={},W={},it=e(async(e,t)=>{let n=l(),i=r(n),a=e.insert(`g`).attr(`class`,`edgeLabel`),o=a.insert(`g`).attr(`class`,`label`),s=t.labelType===`markdown`,c=await ue(e,t.label,{style:t.labelStyle,useHtmlLabels:i,addSvgBackground:s,isNode:!1,markdown:s,width:s?void 0:1/0},n);o.node().appendChild(c);let u=c.getBBox(),d=u;if(i){let e=c.children[0],t=f(c);u=e.getBoundingClientRect(),d=u,t.attr(`width`,u.width),t.attr(`height`,u.height)}else{let e=f(c).select(`text`).node();e&&typeof e.getBBox==`function`&&(d=e.getBBox())}o.attr(`transform`,N(d,i)),rt[t.id]=a,t.width=u.width,t.height=u.height;let p;if(t.startLabelLeft){let n=e.insert(`g`).attr(`class`,`edgeTerminals`),r=n.insert(`g`).attr(`class`,`inner`),a=await U(r,t.startLabelLeft,t.labelStyle);p=a;let o=a.getBBox();if(i){let e=a.children[0],t=f(a);o=e.getBoundingClientRect(),t.attr(`width`,o.width),t.attr(`height`,o.height)}r.attr(`transform`,N(o,i)),W[t.id]||(W[t.id]={}),W[t.id].startLeft=n,G(p,t.startLabelLeft)}if(t.startLabelRight){let n=e.insert(`g`).attr(`class`,`edgeTerminals`),r=n.insert(`g`).attr(`class`,`inner`),a=await U(r,t.startLabelRight,t.labelStyle);p=a;let o=a.getBBox();if(i){let e=a.children[0],t=f(a);o=e.getBoundingClientRect(),t.attr(`width`,o.width),t.attr(`height`,o.height)}r.attr(`transform`,N(o,i)),W[t.id]||(W[t.id]={}),W[t.id].startRight=n,G(p,t.startLabelRight)}if(t.endLabelLeft){let n=e.insert(`g`).attr(`class`,`edgeTerminals`),r=n.insert(`g`).attr(`class`,`inner`),a=await U(n,t.endLabelLeft,t.labelStyle);p=a;let o=a.getBBox();if(i){let e=a.children[0],t=f(a);o=e.getBoundingClientRect(),t.attr(`width`,o.width),t.attr(`height`,o.height)}r.attr(`transform`,N(o,i)),W[t.id]||(W[t.id]={}),W[t.id].endLeft=n,G(p,t.endLabelLeft)}if(t.endLabelRight){let n=e.insert(`g`).attr(`class`,`edgeTerminals`),r=n.insert(`g`).attr(`class`,`inner`),a=await U(n,t.endLabelRight,t.labelStyle);p=a;let o=a.getBBox();if(i){let e=a.children[0],t=f(a);o=e.getBoundingClientRect(),t.attr(`width`,o.width),t.attr(`height`,o.height)}r.attr(`transform`,N(o,i)),W[t.id]||(W[t.id]={}),W[t.id].endRight=n,G(p,t.endLabelRight)}return c},`insertEdgeLabel`);function G(e,t){r(l())&&e&&(e.style.width=t.length*9+`px`,e.style.height=`12px`)}e(G,`setTerminalWidth`);var at=e((e,n)=>{t.debug(`Moving label abc88 `,e.id,e.label,rt[e.id],n);let r=n.updatedPath?n.updatedPath:n.originalPath,{subGraphTitleTotalMargin:i}=pe(l());if(e.label){let a=rt[e.id],o=e.x,s=e.y;if(r){let i=M.calcLabelPosition(r);t.debug(`Moving label `+e.label+` from (`,o,`,`,s,`) to (`,i.x,`,`,i.y,`) abc88`),n.updatedPath&&(o=i.x,s=i.y)}a.attr(`transform`,`translate(${o}, ${s+i/2})`)}if(e.startLabelLeft){let t=W[e.id].startLeft,n=e.x,i=e.y;if(r){let t=M.calcTerminalLabelPosition(e.arrowTypeStart?10:0,`start_left`,r);n=t.x,i=t.y}t.attr(`transform`,`translate(${n}, ${i})`)}if(e.startLabelRight){let t=W[e.id].startRight,n=e.x,i=e.y;if(r){let t=M.calcTerminalLabelPosition(e.arrowTypeStart?10:0,`start_right`,r);n=t.x,i=t.y}t.attr(`transform`,`translate(${n}, ${i})`)}if(e.endLabelLeft){let t=W[e.id].endLeft,n=e.x,i=e.y;if(r){let t=M.calcTerminalLabelPosition(e.arrowTypeEnd?10:0,`end_left`,r);n=t.x,i=t.y}t.attr(`transform`,`translate(${n}, ${i})`)}if(e.endLabelRight){let t=W[e.id].endRight,n=e.x,i=e.y;if(r){let t=M.calcTerminalLabelPosition(e.arrowTypeEnd?10:0,`end_right`,r);n=t.x,i=t.y}t.attr(`transform`,`translate(${n}, ${i})`)}},`positionEdgeLabel`),ot=e((e,t)=>{let n=e.x,r=e.y,i=Math.abs(t.x-n),a=Math.abs(t.y-r),o=e.width/2,s=e.height/2;return i>=o||a>=s},`outsideNode`),st=e((e,n,r)=>{t.debug(`intersection calc abc89:
130
130
  outsidePoint: ${JSON.stringify(n)}
131
131
  insidePoint : ${JSON.stringify(r)}
132
- node : x:${e.x} y:${e.y} w:${e.width} h:${e.height}`);let i=e.x,a=e.y,o=Math.abs(i-r.x),s=e.width/2,c=r.x<n.x?s-o:s+o,l=e.height/2,u=Math.abs(n.y-r.y),d=Math.abs(n.x-r.x);if(Math.abs(a-n.y)*s>Math.abs(i-n.x)*l){let e=r.y<n.y?n.y-l-a:a-l-n.y;c=d*e/u;let i={x:r.x<n.x?r.x+c:r.x-d+c,y:r.y<n.y?r.y+u-e:r.y-u+e};return c===0&&(i.x=n.x,i.y=n.y),d===0&&(i.x=n.x),u===0&&(i.y=n.y),t.debug(`abc89 topp/bott calc, Q ${u}, q ${e}, R ${d}, r ${c}`,i),i}else{c=r.x<n.x?n.x-s-i:i-s-n.x;let e=u*c/d,a=r.x<n.x?r.x+d-c:r.x-d+c,o=r.y<n.y?r.y+e:r.y-e;return t.debug(`sides calc abc89, Q ${u}, q ${e}, R ${d}, r ${c}`,{_x:a,_y:o}),c===0&&(a=n.x,o=n.y),d===0&&(a=n.x),u===0&&(o=n.y),{x:a,y:o}}},`intersection`),ct=e((e,n)=>{t.debug(`abc88 cutPathAtIntersect`,e,n);let r=[],i=e[0],a=!1;return e.forEach(e=>{if(!ot(n,e)&&!a){let t=st(n,i,e),o=!1;r.forEach(e=>{o||=e.x===t.x&&e.y===t.y}),r.some(e=>e.x===t.x&&e.y===t.y)||r.push(t),a=!0}else i=e,a||r.push(e)}),r},`cutPathAtIntersect`),lt=e(function(e,r,i,a,o,s,c){let u=i.points;t.debug(`abc88 InsertEdge: edge=`,i,`e=`,r);let d=!1,f=s.node(r.v);var h=s.node(r.w);h?.intersect&&f?.intersect&&(u=u.slice(1,i.points.length-1),u.unshift(f.intersect(u[0])),u.push(h.intersect(u[u.length-1]))),i.toCluster&&(t.debug(`to cluster abc88`,a[i.toCluster]),u=ct(i.points,a[i.toCluster].node),d=!0),i.fromCluster&&(t.debug(`from cluster abc88`,a[i.fromCluster]),u=ct(u.reverse(),a[i.fromCluster].node).reverse(),d=!0);let g=u.filter(e=>!Number.isNaN(e.y)),_=p;i.curve&&(o===`graph`||o===`flowchart`)&&(_=i.curve);let{x:v,y}=fe(i),b=m().x(v).y(y).curve(_),x;switch(i.thickness){case`normal`:x=`edge-thickness-normal`;break;case`thick`:x=`edge-thickness-thick`;break;case`invisible`:x=`edge-thickness-thick`;break;default:x=``}switch(i.pattern){case`solid`:x+=` edge-pattern-solid`;break;case`dotted`:x+=` edge-pattern-dotted`;break;case`dashed`:x+=` edge-pattern-dashed`;break}let S=e.append(`path`).attr(`d`,b(g)).attr(`id`,i.id).attr(`class`,` `+x+(i.classes?` `+i.classes:``)).attr(`style`,i.style),C=``;(l().flowchart.arrowMarkerAbsolute||l().state.arrowMarkerAbsolute)&&(C=n(!0)),et(S,i,C,c,o);let w={};return d&&(w.updatedPath=u),w.originalPath=i.points,w},`insertEdge`),ut=e(e=>{let t=new Set;for(let n of e)switch(n){case`x`:t.add(`right`),t.add(`left`);break;case`y`:t.add(`up`),t.add(`down`);break;default:t.add(n);break}return t},`expandAndDeduplicateDirections`),dt=e((e,t,n,r)=>{let i=ut(e),a=t.height+2*n.padding,o=a/2,s=r??t.width+2*o+n.padding,c=n.padding/2;return i.has(`right`)&&i.has(`left`)&&i.has(`up`)&&i.has(`down`)?[{x:0,y:0},{x:o,y:0},{x:s/2,y:2*c},{x:s-o,y:0},{x:s,y:0},{x:s,y:-a/3},{x:s+2*c,y:-a/2},{x:s,y:-2*a/3},{x:s,y:-a},{x:s-o,y:-a},{x:s/2,y:-a-2*c},{x:o,y:-a},{x:0,y:-a},{x:0,y:-2*a/3},{x:-2*c,y:-a/2},{x:0,y:-a/3}]:i.has(`right`)&&i.has(`left`)&&i.has(`up`)?[{x:o,y:0},{x:s-o,y:0},{x:s,y:-a/2},{x:s-o,y:-a},{x:o,y:-a},{x:0,y:-a/2}]:i.has(`right`)&&i.has(`left`)&&i.has(`down`)?[{x:0,y:0},{x:o,y:-a},{x:s-o,y:-a},{x:s,y:0}]:i.has(`right`)&&i.has(`up`)&&i.has(`down`)?[{x:0,y:0},{x:s,y:-o},{x:s,y:-a+o},{x:0,y:-a}]:i.has(`left`)&&i.has(`up`)&&i.has(`down`)?[{x:s,y:0},{x:0,y:-o},{x:0,y:-a+o},{x:s,y:-a}]:i.has(`right`)&&i.has(`left`)?[{x:o,y:0},{x:o,y:-c},{x:s-o,y:-c},{x:s-o,y:0},{x:s,y:-a/2},{x:s-o,y:-a},{x:s-o,y:-a+c},{x:o,y:-a+c},{x:o,y:-a},{x:0,y:-a/2}]:i.has(`up`)&&i.has(`down`)?[{x:s/2,y:0},{x:0,y:-c},{x:o,y:-c},{x:o,y:-a+c},{x:0,y:-a+c},{x:s/2,y:-a},{x:s,y:-a+c},{x:s-o,y:-a+c},{x:s-o,y:-c},{x:s,y:-c}]:i.has(`right`)&&i.has(`up`)?[{x:0,y:0},{x:s,y:-o},{x:0,y:-a}]:i.has(`right`)&&i.has(`down`)?[{x:0,y:0},{x:s,y:0},{x:0,y:-a}]:i.has(`left`)&&i.has(`up`)?[{x:s,y:0},{x:0,y:-o},{x:s,y:-a}]:i.has(`left`)&&i.has(`down`)?[{x:s,y:0},{x:0,y:0},{x:s,y:-a}]:i.has(`right`)?[{x:o,y:-c},{x:o,y:-c},{x:s-o,y:-c},{x:s-o,y:0},{x:s,y:-a/2},{x:s-o,y:-a},{x:s-o,y:-a+c},{x:o,y:-a+c},{x:o,y:-a+c}]:i.has(`left`)?[{x:o,y:0},{x:o,y:-c},{x:s-o,y:-c},{x:s-o,y:-a+c},{x:o,y:-a+c},{x:o,y:-a},{x:0,y:-a/2}]:i.has(`up`)?[{x:o,y:-c},{x:o,y:-a+c},{x:0,y:-a+c},{x:s/2,y:-a},{x:s,y:-a+c},{x:s-o,y:-a+c},{x:s-o,y:-c}]:i.has(`down`)?[{x:s/2,y:0},{x:0,y:-c},{x:o,y:-c},{x:o,y:-a+c},{x:s-o,y:-a+c},{x:s-o,y:-c},{x:s,y:-c}]:[{x:0,y:0}]},`getArrowPoints`);function ft(e,t){return e.intersect(t)}e(ft,`intersectNode`);var pt=ft;function mt(e,t,n,r){var i=e.x,a=e.y,o=i-r.x,s=a-r.y,c=Math.sqrt(t*t*s*s+n*n*o*o),l=Math.abs(t*n*o/c);r.x<i&&(l=-l);var u=Math.abs(t*n*s/c);return r.y<a&&(u=-u),{x:i+l,y:a+u}}e(mt,`intersectEllipse`);var ht=mt;function gt(e,t,n){return ht(e,t,t,n)}e(gt,`intersectCircle`);var _t=gt;function vt(e,t,n,r){var i=t.y-e.y,a,o=e.x-t.x,s,c=t.x*e.y-e.x*t.y,l,u,d,f=i*n.x+o*n.y+c,p=i*r.x+o*r.y+c,m,h,g,_,v;if(!(f!==0&&p!==0&&yt(f,p))&&(a=r.y-n.y,s=n.x-r.x,l=r.x*n.y-n.x*r.y,u=a*e.x+s*e.y+l,d=a*t.x+s*t.y+l,!(u!==0&&d!==0&&yt(u,d))&&(m=i*s-a*o,m!==0)))return h=Math.abs(m/2),g=o*l-s*c,_=g<0?(g-h)/m:(g+h)/m,g=a*c-i*l,v=g<0?(g-h)/m:(g+h)/m,{x:_,y:v}}e(vt,`intersectLine`);function yt(e,t){return e*t>0}e(yt,`sameSign`);var bt=vt,xt=St;function St(e,t,n){var r=e.x,i=e.y,a=[],o=1/0,s=1/0;typeof t.forEach==`function`?t.forEach(function(e){o=Math.min(o,e.x),s=Math.min(s,e.y)}):(o=Math.min(o,t.x),s=Math.min(s,t.y));for(var c=r-e.width/2-o,l=i-e.height/2-s,u=0;u<t.length;u++){var d=t[u],f=t[u<t.length-1?u+1:0],p=bt(e,n,{x:c+d.x,y:l+d.y},{x:c+f.x,y:l+f.y});p&&a.push(p)}return a.length?(a.length>1&&a.sort(function(e,t){var r=e.x-n.x,i=e.y-n.y,a=Math.sqrt(r*r+i*i),o=t.x-n.x,s=t.y-n.y,c=Math.sqrt(o*o+s*s);return a<c?-1:a===c?0:1}),a[0]):e}e(St,`intersectPolygon`);var K={node:pt,circle:_t,ellipse:ht,polygon:xt,rect:e((e,t)=>{var n=e.x,r=e.y,i=t.x-n,a=t.y-r,o=e.width/2,s=e.height/2,c,l;return Math.abs(a)*o>Math.abs(i)*s?(a<0&&(s=-s),c=a===0?0:s*i/a,l=s):(i<0&&(o=-o),c=o,l=i===0?0:o*a/i),{x:n+c,y:r+l}},`intersectRect`)},q=e(async(e,t,n,i)=>{let a=l(),o,s=t.useHtmlLabels||r(a);o=n||`node default`;let c=e.insert(`g`).attr(`class`,o).attr(`id`,t.domId||t.id),d=c.insert(`g`).attr(`class`,`label`).attr(`style`,t.labelStyle),p;p=t.labelText===void 0?``:typeof t.labelText==`string`?t.labelText:t.labelText[0];let m;m=t.labelType===`markdown`?ue(d,u(ne(p),a),{useHtmlLabels:s,width:t.width||a.flowchart.wrappingWidth,classes:`markdown-node-label`},a):await U(d,u(ne(p),a),t.labelStyle,!1,i);let h=m.getBBox(),g=t.padding/2;if(r(a)){let e=m.children[0],t=f(m);await me(e,p),h=e.getBoundingClientRect(),t.attr(`width`,h.width),t.attr(`height`,h.height)}return s?d.attr(`transform`,`translate(`+-h.width/2+`, `+-h.height/2+`)`):d.attr(`transform`,`translate(0, `+-h.height/2+`)`),t.centerLabel&&d.attr(`transform`,`translate(`+-h.width/2+`, `+-h.height/2+`)`),d.insert(`rect`,`:first-child`),{shapeSvg:c,bbox:h,halfPadding:g,label:d}},`labelHelper`),J=e((e,t)=>{let n=t.node().getBBox();e.width=n.width,e.height=n.height},`updateNodeBounds`);function Y(e,t,n,r){return e.insert(`polygon`,`:first-child`).attr(`points`,r.map(function(e){return e.x+`,`+e.y}).join(` `)).attr(`class`,`label-container`).attr(`transform`,`translate(`+-t/2+`,`+n/2+`)`)}e(Y,`insertPolygonShape`);var Ct=e(async(e,n)=>{n.useHtmlLabels||r(l())||(n.centerLabel=!0);let{shapeSvg:i,bbox:a,halfPadding:o}=await q(e,n,`node `+n.classes,!0);t.info(`Classes = `,n.classes);let s=i.insert(`rect`,`:first-child`);return s.attr(`rx`,n.rx).attr(`ry`,n.ry).attr(`x`,-a.width/2-o).attr(`y`,-a.height/2-o).attr(`width`,a.width+n.padding).attr(`height`,a.height+n.padding),J(n,s),n.intersect=function(e){return K.rect(n,e)},i},`note`),wt=e(e=>e?` `+e:``,`formatClass`),X=e((e,t)=>`${t||`node default`}${wt(e.classes)} ${wt(e.class)}`,`getClassesFromNode`),Tt=e(async(e,n)=>{let{shapeSvg:r,bbox:i}=await q(e,n,X(n,void 0),!0),a=i.width+n.padding+(i.height+n.padding),o=[{x:a/2,y:0},{x:a,y:-a/2},{x:a/2,y:-a},{x:0,y:-a/2}];t.info(`Question main (Circle)`);let s=Y(r,a,a,o);return s.attr(`style`,n.style),J(n,s),n.intersect=function(e){return t.warn(`Intersect called`),K.polygon(n,o,e)},r},`question`),Et=e((e,t)=>{let n=e.insert(`g`).attr(`class`,`node default`).attr(`id`,t.domId||t.id);return n.insert(`polygon`,`:first-child`).attr(`points`,[{x:0,y:28/2},{x:28/2,y:0},{x:0,y:-28/2},{x:-28/2,y:0}].map(function(e){return e.x+`,`+e.y}).join(` `)).attr(`class`,`state-start`).attr(`r`,7).attr(`width`,28).attr(`height`,28),t.width=28,t.height=28,t.intersect=function(e){return K.circle(t,14,e)},n},`choice`),Dt=e(async(e,t)=>{let{shapeSvg:n,bbox:r}=await q(e,t,X(t,void 0),!0),i=t.positioned?t.height:r.height+t.padding,a=i/4,o=t.positioned?t.width:r.width+2*a+t.padding,s=[{x:a,y:0},{x:o-a,y:0},{x:o,y:-i/2},{x:o-a,y:-i},{x:a,y:-i},{x:0,y:-i/2}],c=Y(n,o,i,s);return c.attr(`style`,t.style),J(t,c),t.intersect=function(e){return K.polygon(t,s,e)},n},`hexagon`),Ot=e(async(e,t)=>{let{shapeSvg:n,bbox:r}=await q(e,t,void 0,!0),i=r.height+2*t.padding,a=i/2,o=r.width+2*a+t.padding,s=t.positioned&&(t.widthInColumns??1)>1&&t.width>o?t.width:o,c=dt(t.directions,r,t,s),l=Y(n,s,i,c);return l.attr(`style`,t.style),J(t,l),t.intersect=function(e){return K.polygon(t,c,e)},n},`block_arrow`),kt=e(async(e,t)=>{let{shapeSvg:n,bbox:r}=await q(e,t,X(t,void 0),!0),i=r.width+t.padding,a=r.height+t.padding,o=[{x:-a/2,y:0},{x:i,y:0},{x:i,y:-a},{x:-a/2,y:-a},{x:0,y:-a/2}];return Y(n,i,a,o).attr(`style`,t.style),t.width=i+a,t.height=a,t.intersect=function(e){return K.polygon(t,o,e)},n},`rect_left_inv_arrow`),At=e(async(e,t)=>{let{shapeSvg:n,bbox:r}=await q(e,t,X(t),!0),i=r.width+t.padding,a=r.height+t.padding,o=[{x:-2*a/6,y:0},{x:i-a/6,y:0},{x:i+2*a/6,y:-a},{x:a/6,y:-a}],s=Y(n,i,a,o);return s.attr(`style`,t.style),J(t,s),t.intersect=function(e){return K.polygon(t,o,e)},n},`lean_right`),jt=e(async(e,t)=>{let{shapeSvg:n,bbox:r}=await q(e,t,X(t,void 0),!0),i=r.width+t.padding,a=r.height+t.padding,o=[{x:2*a/6,y:0},{x:i+a/6,y:0},{x:i-2*a/6,y:-a},{x:-a/6,y:-a}],s=Y(n,i,a,o);return s.attr(`style`,t.style),J(t,s),t.intersect=function(e){return K.polygon(t,o,e)},n},`lean_left`),Mt=e(async(e,t)=>{let{shapeSvg:n,bbox:r}=await q(e,t,X(t,void 0),!0),i=r.width+t.padding,a=r.height+t.padding,o=[{x:-2*a/6,y:0},{x:i+2*a/6,y:0},{x:i-a/6,y:-a},{x:a/6,y:-a}],s=Y(n,i,a,o);return s.attr(`style`,t.style),J(t,s),t.intersect=function(e){return K.polygon(t,o,e)},n},`trapezoid`),Nt=e(async(e,t)=>{let{shapeSvg:n,bbox:r}=await q(e,t,X(t,void 0),!0),i=r.width+t.padding,a=r.height+t.padding,o=[{x:a/6,y:0},{x:i-a/6,y:0},{x:i+2*a/6,y:-a},{x:-2*a/6,y:-a}],s=Y(n,i,a,o);return s.attr(`style`,t.style),J(t,s),t.intersect=function(e){return K.polygon(t,o,e)},n},`inv_trapezoid`),Pt=e(async(e,t)=>{let{shapeSvg:n,bbox:r}=await q(e,t,X(t,void 0),!0),i=r.width+t.padding,a=r.height+t.padding,o=[{x:0,y:0},{x:i+a/2,y:0},{x:i,y:-a/2},{x:i+a/2,y:-a},{x:0,y:-a}],s=Y(n,i,a,o);return s.attr(`style`,t.style),J(t,s),t.intersect=function(e){return K.polygon(t,o,e)},n},`rect_right_inv_arrow`),Ft=e(async(e,t)=>{let{shapeSvg:n,bbox:r}=await q(e,t,X(t,void 0),!0),i=r.width+t.padding,a=i/2,o=a/(2.5+i/50),s=r.height+o+t.padding,c=`M 0,`+o+` a `+a+`,`+o+` 0,0,0 `+i+` 0 a `+a+`,`+o+` 0,0,0 `+-i+` 0 l 0,`+s+` a `+a+`,`+o+` 0,0,0 `+i+` 0 l 0,`+-s;return J(t,n.attr(`label-offset-y`,o).insert(`path`,`:first-child`).attr(`style`,t.style).attr(`d`,c).attr(`transform`,`translate(`+-i/2+`,`+-(s/2+o)+`)`)),t.intersect=function(e){let n=K.rect(t,e),r=n.x-t.x;if(a!=0&&(Math.abs(r)<t.width/2||Math.abs(r)==t.width/2&&Math.abs(n.y-t.y)>t.height/2-o)){let i=o*o*(1-r*r/(a*a));i!=0&&(i=Math.sqrt(i)),i=o-i,e.y-t.y>0&&(i=-i),n.y+=i}return n},n},`cylinder`),It=e(async(e,n)=>{let{shapeSvg:r,bbox:i,halfPadding:a}=await q(e,n,`node `+n.classes+` `+n.class,!0),o=r.insert(`rect`,`:first-child`),s=n.positioned?n.width:i.width+n.padding,c=n.positioned?n.height:i.height+n.padding,l=n.positioned?-s/2:-i.width/2-a,u=n.positioned?-c/2:-i.height/2-a;if(o.attr(`class`,`basic label-container`).attr(`style`,n.style).attr(`rx`,n.rx).attr(`ry`,n.ry).attr(`x`,l).attr(`y`,u).attr(`width`,s).attr(`height`,c),n.props){let e=new Set(Object.keys(n.props));n.props.borders&&(Z(o,n.props.borders,s,c),e.delete(`borders`)),e.forEach(e=>{t.warn(`Unknown node property ${e}`)})}return J(n,o),n.intersect=function(e){return K.rect(n,e)},r},`rect`),Lt=e(async(e,n)=>{let{shapeSvg:r,bbox:i,halfPadding:a}=await q(e,n,`node `+n.classes,!0),o=r.insert(`rect`,`:first-child`),s=n.positioned?n.width:i.width+n.padding,c=n.positioned?n.height:i.height+n.padding,l=n.positioned?-s/2:-i.width/2-a,u=n.positioned?-c/2:-i.height/2-a;if(o.attr(`class`,`basic cluster composite label-container`).attr(`style`,n.style).attr(`rx`,n.rx).attr(`ry`,n.ry).attr(`x`,l).attr(`y`,u).attr(`width`,s).attr(`height`,c),n.props){let e=new Set(Object.keys(n.props));n.props.borders&&(Z(o,n.props.borders,s,c),e.delete(`borders`)),e.forEach(e=>{t.warn(`Unknown node property ${e}`)})}return J(n,o),n.intersect=function(e){return K.rect(n,e)},r},`composite`),Rt=e(async(e,n)=>{let{shapeSvg:r}=await q(e,n,`label`,!0);t.trace(`Classes = `,n.class);let i=r.insert(`rect`,`:first-child`);if(i.attr(`width`,0).attr(`height`,0),r.attr(`class`,`label edgeLabel`),n.props){let e=new Set(Object.keys(n.props));n.props.borders&&(Z(i,n.props.borders,0,0),e.delete(`borders`)),e.forEach(e=>{t.warn(`Unknown node property ${e}`)})}return J(n,i),n.intersect=function(e){return K.rect(n,e)},r},`labelRect`);function Z(n,r,i,a){let o=[],s=e(e=>{o.push(e,0)},`addBorder`),c=e(e=>{o.push(0,e)},`skipBorder`);r.includes(`t`)?(t.debug(`add top border`),s(i)):c(i),r.includes(`r`)?(t.debug(`add right border`),s(a)):c(a),r.includes(`b`)?(t.debug(`add bottom border`),s(i)):c(i),r.includes(`l`)?(t.debug(`add left border`),s(a)):c(a),n.attr(`stroke-dasharray`,o.join(` `))}e(Z,`applyNodePropertyBorders`);var zt=e(async(e,n)=>{let i;i=n.classes?`node `+n.classes:`node default`;let a=e.insert(`g`).attr(`class`,i).attr(`id`,n.domId||n.id),o=a.insert(`rect`,`:first-child`),s=a.insert(`line`),c=a.insert(`g`).attr(`class`,`label`),u=n.labelText.flat?n.labelText.flat():n.labelText,d=``;d=typeof u==`object`?u[0]:u,t.info(`Label text abc79`,d,u,typeof u==`object`);let p=await U(c,d,n.labelStyle,!0,!0),m={width:0,height:0};if(r(l())){let e=p.children[0],t=f(p);m=e.getBoundingClientRect(),t.attr(`width`,m.width),t.attr(`height`,m.height)}t.info(`Text 2`,u);let h=u.slice(1,u.length),g=p.getBBox(),_=await U(c,h.join?h.join(`<br/>`):h,n.labelStyle,!0,!0);if(r(l())){let e=_.children[0],t=f(_);m=e.getBoundingClientRect(),t.attr(`width`,m.width),t.attr(`height`,m.height)}let v=n.padding/2;return f(_).attr(`transform`,`translate( `+(m.width>g.width?0:(g.width-m.width)/2)+`, `+(g.height+v+5)+`)`),f(p).attr(`transform`,`translate( `+(m.width<g.width?0:-(g.width-m.width)/2)+`, 0)`),m=c.node().getBBox(),c.attr(`transform`,`translate(`+-m.width/2+`, `+(-m.height/2-v+3)+`)`),o.attr(`class`,`outer title-state`).attr(`x`,-m.width/2-v).attr(`y`,-m.height/2-v).attr(`width`,m.width+n.padding).attr(`height`,m.height+n.padding),s.attr(`class`,`divider`).attr(`x1`,-m.width/2-v).attr(`x2`,m.width/2+v).attr(`y1`,-m.height/2-v+g.height+v).attr(`y2`,-m.height/2-v+g.height+v),J(n,o),n.intersect=function(e){return K.rect(n,e)},a},`rectWithTitle`),Bt=e(async(e,t)=>{let{shapeSvg:n,bbox:r}=await q(e,t,X(t,void 0),!0),i=r.height+t.padding,a=r.width+i/4+t.padding;return J(t,n.insert(`rect`,`:first-child`).attr(`style`,t.style).attr(`rx`,i/2).attr(`ry`,i/2).attr(`x`,-a/2).attr(`y`,-i/2).attr(`width`,a).attr(`height`,i)),t.intersect=function(e){return K.rect(t,e)},n},`stadium`),Vt=e(async(e,n)=>{let{shapeSvg:r,bbox:i,halfPadding:a}=await q(e,n,X(n,void 0),!0),o=r.insert(`circle`,`:first-child`);return o.attr(`style`,n.style).attr(`rx`,n.rx).attr(`ry`,n.ry).attr(`r`,i.width/2+a).attr(`width`,i.width+n.padding).attr(`height`,i.height+n.padding),t.info(`Circle main`),J(n,o),n.intersect=function(e){return t.info(`Circle intersect`,n,i.width/2+a,e),K.circle(n,i.width/2+a,e)},r},`circle`),Ht=e(async(e,n)=>{let{shapeSvg:r,bbox:i,halfPadding:a}=await q(e,n,X(n,void 0),!0),o=r.insert(`g`,`:first-child`),s=o.insert(`circle`),c=o.insert(`circle`);return o.attr(`class`,n.class),s.attr(`style`,n.style).attr(`rx`,n.rx).attr(`ry`,n.ry).attr(`r`,i.width/2+a+5).attr(`width`,i.width+n.padding+10).attr(`height`,i.height+n.padding+10),c.attr(`style`,n.style).attr(`rx`,n.rx).attr(`ry`,n.ry).attr(`r`,i.width/2+a).attr(`width`,i.width+n.padding).attr(`height`,i.height+n.padding),t.info(`DoubleCircle main`),J(n,s),n.intersect=function(e){return t.info(`DoubleCircle intersect`,n,i.width/2+a+5,e),K.circle(n,i.width/2+a+5,e)},r},`doublecircle`),Ut=e(async(e,t)=>{let{shapeSvg:n,bbox:r}=await q(e,t,X(t,void 0),!0),i=r.width+t.padding,a=r.height+t.padding,o=[{x:0,y:0},{x:i,y:0},{x:i,y:-a},{x:0,y:-a},{x:0,y:0},{x:-8,y:0},{x:i+8,y:0},{x:i+8,y:-a},{x:-8,y:-a},{x:-8,y:0}],s=Y(n,i,a,o);return s.attr(`style`,t.style),J(t,s),t.intersect=function(e){return K.polygon(t,o,e)},n},`subroutine`),Wt=e((e,t)=>{let n=e.insert(`g`).attr(`class`,`node default`).attr(`id`,t.domId||t.id),r=n.insert(`circle`,`:first-child`);return r.attr(`class`,`state-start`).attr(`r`,7).attr(`width`,14).attr(`height`,14),J(t,r),t.intersect=function(e){return K.circle(t,7,e)},n},`start`),Gt=e((e,t,n)=>{let r=e.insert(`g`).attr(`class`,`node default`).attr(`id`,t.domId||t.id),i=70,a=10;return n===`LR`&&(i=10,a=70),J(t,r.append(`rect`).attr(`x`,-1*i/2).attr(`y`,-1*a/2).attr(`width`,i).attr(`height`,a).attr(`class`,`fork-join`)),t.height+=t.padding/2,t.width+=t.padding/2,t.intersect=function(e){return K.rect(t,e)},r},`forkJoin`),Kt={rhombus:Tt,composite:Lt,question:Tt,rect:It,labelRect:Rt,rectWithTitle:zt,choice:Et,circle:Vt,doublecircle:Ht,stadium:Bt,hexagon:Dt,block_arrow:Ot,rect_left_inv_arrow:kt,lean_right:At,lean_left:jt,trapezoid:Mt,inv_trapezoid:Nt,rect_right_inv_arrow:Pt,cylinder:Ft,start:Wt,end:e((e,t)=>{let n=e.insert(`g`).attr(`class`,`node default`).attr(`id`,t.domId||t.id),r=n.insert(`circle`,`:first-child`),i=n.insert(`circle`,`:first-child`);return i.attr(`class`,`state-start`).attr(`r`,7).attr(`width`,14).attr(`height`,14),r.attr(`class`,`state-end`).attr(`r`,5).attr(`width`,10).attr(`height`,10),J(t,i),t.intersect=function(e){return K.circle(t,7,e)},n},`end`),note:Ct,subroutine:Ut,fork:Gt,join:Gt,class_box:e(async(e,t)=>{let n=t.padding/2,i;i=t.classes?`node `+t.classes:`node default`;let a=e.insert(`g`).attr(`class`,i).attr(`id`,t.domId||t.id),o=a.insert(`rect`,`:first-child`),s=a.insert(`line`),c=a.insert(`line`),u=0,d=4,p=a.insert(`g`).attr(`class`,`label`),m=0,h=t.classData.annotations?.[0],g=await U(p,t.classData.annotations[0]?`«`+t.classData.annotations[0]+`»`:``,t.labelStyle,!0,!0),_=g.getBBox();if(r(l())){let e=g.children[0],t=f(g);_=e.getBoundingClientRect(),t.attr(`width`,_.width),t.attr(`height`,_.height)}t.classData.annotations[0]&&(d+=_.height+4,u+=_.width);let v=t.classData.label;t.classData.type!==void 0&&t.classData.type!==``&&(r(l())?v+=`&lt;`+t.classData.type+`&gt;`:v+=`<`+t.classData.type+`>`);let y=await U(p,v,t.labelStyle,!0,!0);f(y).attr(`class`,`classTitle`);let b=y.getBBox();if(r(l())){let e=y.children[0],t=f(y);b=e.getBoundingClientRect(),t.attr(`width`,b.width),t.attr(`height`,b.height)}d+=b.height+4,b.width>u&&(u=b.width);let x=[];t.classData.members.forEach(async e=>{let n=e.getDisplayDetails(),i=n.displayText;r(l())&&(i=i.replace(/</g,`&lt;`).replace(/>/g,`&gt;`));let a=await U(p,i,n.cssStyle?n.cssStyle:t.labelStyle,!0,!0),o=a.getBBox();if(r(l())){let e=a.children[0],t=f(a);o=e.getBoundingClientRect(),t.attr(`width`,o.width),t.attr(`height`,o.height)}o.width>u&&(u=o.width),d+=o.height+4,x.push(a)}),d+=8;let S=[];if(t.classData.methods.forEach(async e=>{let n=e.getDisplayDetails(),i=n.displayText;r(l())&&(i=i.replace(/</g,`&lt;`).replace(/>/g,`&gt;`));let a=await U(p,i,n.cssStyle?n.cssStyle:t.labelStyle,!0,!0),o=a.getBBox();if(r(l())){let e=a.children[0],t=f(a);o=e.getBoundingClientRect(),t.attr(`width`,o.width),t.attr(`height`,o.height)}o.width>u&&(u=o.width),d+=o.height+4,S.push(a)}),d+=8,h){let e=(u-_.width)/2;f(g).attr(`transform`,`translate( `+(-1*u/2+e)+`, `+-1*d/2+`)`),m=_.height+4}let C=(u-b.width)/2;return f(y).attr(`transform`,`translate( `+(-1*u/2+C)+`, `+(-1*d/2+m)+`)`),m+=b.height+4,s.attr(`class`,`divider`).attr(`x1`,-u/2-n).attr(`x2`,u/2+n).attr(`y1`,-d/2-n+8+m).attr(`y2`,-d/2-n+8+m),m+=8,x.forEach(e=>{f(e).attr(`transform`,`translate( `+-u/2+`, `+(-1*d/2+m+8/2)+`)`);let t=e?.getBBox();m+=(t?.height??0)+4}),m+=8,c.attr(`class`,`divider`).attr(`x1`,-u/2-n).attr(`x2`,u/2+n).attr(`y1`,-d/2-n+8+m).attr(`y2`,-d/2-n+8+m),m+=8,S.forEach(e=>{f(e).attr(`transform`,`translate( `+-u/2+`, `+(-1*d/2+m)+`)`);let t=e?.getBBox();m+=(t?.height??0)+4}),o.attr(`style`,t.style).attr(`class`,`outer title-state`).attr(`x`,-u/2-n).attr(`y`,-(d/2)-n).attr(`width`,u+t.padding).attr(`height`,d+t.padding),J(t,o),t.intersect=function(e){return K.rect(t,e)},a},`class_box`)},Q={},qt=e(async(e,t,n)=>{let r,i;if(t.link){let a;l().securityLevel===`sandbox`?a=`_top`:t.linkTarget&&(a=t.linkTarget||`_blank`),r=e.insert(`svg:a`).attr(`xlink:href`,t.link).attr(`target`,a),i=await Kt[t.shape](r,t,n)}else i=await Kt[t.shape](e,t,n),r=i;return t.tooltip&&i.attr(`title`,t.tooltip),t.class&&i.attr(`class`,`node default `+t.class),Q[t.id]=r,t.haveCallback&&Q[t.id].attr(`class`,Q[t.id].attr(`class`)+` clickable`),r},`insertNode`),Jt=e(e=>{let n=Q[e.id];t.trace(`Transforming node`,e.diff,e,`translate(`+(e.x-e.width/2-5)+`, `+e.width/2+`)`);let r=e.diff||0;return e.clusterNode?n.attr(`transform`,`translate(`+(e.x+r-e.width/2)+`, `+(e.y-e.height/2-8)+`)`):n.attr(`transform`,`translate(`+e.x+`, `+e.y+`)`),r},`positionNode`);function Yt(e,t,n=!1){let r=e,i=`default`;(r?.classes?.length||0)>0&&(i=(r?.classes??[]).join(` `)),i+=` flowchart-label`;let o=0,s=``,c;switch(r.type){case`round`:o=5,s=`rect`;break;case`composite`:o=0,s=`composite`,c=0;break;case`square`:s=`rect`;break;case`diamond`:s=`question`;break;case`hexagon`:s=`hexagon`;break;case`block_arrow`:s=`block_arrow`;break;case`odd`:s=`rect_left_inv_arrow`;break;case`lean_right`:s=`lean_right`;break;case`lean_left`:s=`lean_left`;break;case`trapezoid`:s=`trapezoid`;break;case`inv_trapezoid`:s=`inv_trapezoid`;break;case`rect_left_inv_arrow`:s=`rect_left_inv_arrow`;break;case`circle`:s=`circle`;break;case`ellipse`:s=`ellipse`;break;case`stadium`:s=`stadium`;break;case`subroutine`:s=`subroutine`;break;case`cylinder`:s=`cylinder`;break;case`group`:s=`rect`;break;case`doublecircle`:s=`doublecircle`;break;default:s=`rect`}let l=ae(r?.styles??[]),u=r.label,d=r.size??{width:0,height:0,x:0,y:0},f=t.getDiagramId();return{labelStyle:l.labelStyle,shape:s,labelText:u,rx:o,ry:o,class:i,style:l.style,id:r.id,domId:f?`${f}-${r.id}`:r.id,directions:r.directions,width:d.width,height:d.height,x:d.x,y:d.y,positioned:n,intersect:void 0,type:r.type,padding:c??a()?.block?.padding??0,widthInColumns:r.widthInColumns??1}}e(Yt,`getNodeFromBlock`);async function Xt(e,t,n){let r=Yt(t,n,!1);if(r.type===`group`)return;let i=await qt(e,r,{config:a()}),o=i.node().getBBox(),s=n.getBlock(r.id);s.size={width:o.width,height:o.height,x:0,y:0,node:i},n.setBlock(s),i.remove()}e(Xt,`calculateBlockSize`);async function Zt(e,t,n){let r=Yt(t,n,!0);n.getBlock(r.id).type!==`space`&&(await qt(e,r,{config:a()}),t.intersect=r?.intersect,Jt(r))}e(Zt,`insertBlockPositioned`);async function $(e,t,n,r){for(let i of t)await r(e,i,n),i.children&&await $(e,i.children,n,r)}e($,`performOperations`);async function Qt(e,t,n){await $(e,t,n,Xt)}e(Qt,`calculateBlockSizes`);async function $t(e,t,n){await $(e,t,n,Zt)}e($t,`insertBlocks`);async function en(e,t,n,r,i){let a=new he({multigraph:!0,compound:!0});a.setGraph({rankdir:`TB`,nodesep:10,ranksep:10,marginx:8,marginy:8});for(let e of n)e.size&&a.setNode(e.id,{width:e.size.width,height:e.size.height,intersect:e.intersect});for(let n of t)if(n.start&&n.end){let t=r.getBlock(n.start),o=r.getBlock(n.end);if(t?.size&&o?.size){let r=t.size,s=o.size,c=[{x:r.x,y:r.y},{x:r.x+(s.x-r.x)/2,y:r.y+(s.y-r.y)/2},{x:s.x,y:s.y}],l=i?`${i}-${n.id}`:n.id,u=`${n.thickness===`thick`?`edge-thickness-thick`:`edge-thickness-normal`} ${n.pattern===`dotted`?`edge-pattern-dotted`:`edge-pattern-solid`} flowchart-link LS-a1 LE-b1`;lt(e,{v:n.start,w:n.end,name:l},{...n,id:l,arrowTypeEnd:n.arrowTypeEnd,arrowTypeStart:n.arrowTypeStart,points:c,classes:u},void 0,`block`,a,i),n.label&&(await it(e,{...n,label:n.label,labelStyle:`stroke: #333; stroke-width: 1.5px;fill:none;`,arrowTypeEnd:n.arrowTypeEnd,arrowTypeStart:n.arrowTypeStart,points:c,classes:u}),at({...n,x:c[1].x,y:c[1].y},{originalPath:c}))}}}e(en,`insertEdges`);var tn={parser:we,db:Ge,renderer:{draw:e(async function(e,n,r,i){let{securityLevel:s,block:c}=a(),l=i.db;l.setDiagramId(n);let u;s===`sandbox`&&(u=f(`#i`+n));let d=f(s===`sandbox`?u.nodes()[0].contentDocument.body:`body`),p=s===`sandbox`?d.select(`[id="${n}"]`):f(`[id="${n}"]`);Ye(p,[`point`,`circle`,`cross`],i.type,n);let m=l.getBlocks(),h=l.getBlocksFlat(),g=l.getEdges(),_=p.insert(`g`).attr(`class`,`block`);await Qt(_,m,l);let v=$e(l);if(await $t(_,m,l),await en(_,g,h,l,n),v){let e=v,n=Math.max(1,Math.round(.125*(e.width/e.height))),r=e.height+n+10,i=e.width+10,{useMaxWidth:a}=c;o(p,r,i,!!a),t.debug(`Here Bounds`,v,e),p.attr(`viewBox`,`${e.x-5} ${e.y-5} ${e.width+10} ${e.height+10}`)}},`draw`),getClasses:e(function(e,t){return t.db.getClasses()},`getClasses`)},styles:Ke};export{tn as diagram};
132
+ node : x:${e.x} y:${e.y} w:${e.width} h:${e.height}`);let i=e.x,a=e.y,o=Math.abs(i-r.x),s=e.width/2,c=r.x<n.x?s-o:s+o,l=e.height/2,u=Math.abs(n.y-r.y),d=Math.abs(n.x-r.x);if(Math.abs(a-n.y)*s>Math.abs(i-n.x)*l){let e=r.y<n.y?n.y-l-a:a-l-n.y;c=d*e/u;let i={x:r.x<n.x?r.x+c:r.x-d+c,y:r.y<n.y?r.y+u-e:r.y-u+e};return c===0&&(i.x=n.x,i.y=n.y),d===0&&(i.x=n.x),u===0&&(i.y=n.y),t.debug(`abc89 topp/bott calc, Q ${u}, q ${e}, R ${d}, r ${c}`,i),i}else{c=r.x<n.x?n.x-s-i:i-s-n.x;let e=u*c/d,a=r.x<n.x?r.x+d-c:r.x-d+c,o=r.y<n.y?r.y+e:r.y-e;return t.debug(`sides calc abc89, Q ${u}, q ${e}, R ${d}, r ${c}`,{_x:a,_y:o}),c===0&&(a=n.x,o=n.y),d===0&&(a=n.x),u===0&&(o=n.y),{x:a,y:o}}},`intersection`),ct=e((e,n)=>{t.debug(`abc88 cutPathAtIntersect`,e,n);let r=[],i=e[0],a=!1;return e.forEach(e=>{if(!ot(n,e)&&!a){let t=st(n,i,e),o=!1;r.forEach(e=>{o||=e.x===t.x&&e.y===t.y}),r.some(e=>e.x===t.x&&e.y===t.y)||r.push(t),a=!0}else i=e,a||r.push(e)}),r},`cutPathAtIntersect`),lt=e(function(e,r,i,a,o,s,c){let u=i.points;t.debug(`abc88 InsertEdge: edge=`,i,`e=`,r);let d=!1,f=s.node(r.v);var h=s.node(r.w);h?.intersect&&f?.intersect&&(u=u.slice(1,i.points.length-1),u.unshift(f.intersect(u[0])),u.push(h.intersect(u[u.length-1]))),i.toCluster&&(t.debug(`to cluster abc88`,a[i.toCluster]),u=ct(i.points,a[i.toCluster].node),d=!0),i.fromCluster&&(t.debug(`from cluster abc88`,a[i.fromCluster]),u=ct(u.reverse(),a[i.fromCluster].node).reverse(),d=!0);let g=u.filter(e=>!Number.isNaN(e.y)),_=m;i.curve&&(o===`graph`||o===`flowchart`)&&(_=i.curve);let{x:v,y}=fe(i),b=p().x(v).y(y).curve(_),x;switch(i.thickness){case`normal`:x=`edge-thickness-normal`;break;case`thick`:x=`edge-thickness-thick`;break;case`invisible`:x=`edge-thickness-thick`;break;default:x=``}switch(i.pattern){case`solid`:x+=` edge-pattern-solid`;break;case`dotted`:x+=` edge-pattern-dotted`;break;case`dashed`:x+=` edge-pattern-dashed`;break}let S=e.append(`path`).attr(`d`,b(g)).attr(`id`,i.id).attr(`class`,` `+x+(i.classes?` `+i.classes:``)).attr(`style`,i.style),C=``;(l().flowchart.arrowMarkerAbsolute||l().state.arrowMarkerAbsolute)&&(C=n(!0)),et(S,i,C,c,o);let w={};return d&&(w.updatedPath=u),w.originalPath=i.points,w},`insertEdge`),ut=e(e=>{let t=new Set;for(let n of e)switch(n){case`x`:t.add(`right`),t.add(`left`);break;case`y`:t.add(`up`),t.add(`down`);break;default:t.add(n);break}return t},`expandAndDeduplicateDirections`),dt=e((e,t,n,r)=>{let i=ut(e),a=t.height+2*n.padding,o=a/2,s=r??t.width+2*o+n.padding,c=n.padding/2;return i.has(`right`)&&i.has(`left`)&&i.has(`up`)&&i.has(`down`)?[{x:0,y:0},{x:o,y:0},{x:s/2,y:2*c},{x:s-o,y:0},{x:s,y:0},{x:s,y:-a/3},{x:s+2*c,y:-a/2},{x:s,y:-2*a/3},{x:s,y:-a},{x:s-o,y:-a},{x:s/2,y:-a-2*c},{x:o,y:-a},{x:0,y:-a},{x:0,y:-2*a/3},{x:-2*c,y:-a/2},{x:0,y:-a/3}]:i.has(`right`)&&i.has(`left`)&&i.has(`up`)?[{x:o,y:0},{x:s-o,y:0},{x:s,y:-a/2},{x:s-o,y:-a},{x:o,y:-a},{x:0,y:-a/2}]:i.has(`right`)&&i.has(`left`)&&i.has(`down`)?[{x:0,y:0},{x:o,y:-a},{x:s-o,y:-a},{x:s,y:0}]:i.has(`right`)&&i.has(`up`)&&i.has(`down`)?[{x:0,y:0},{x:s,y:-o},{x:s,y:-a+o},{x:0,y:-a}]:i.has(`left`)&&i.has(`up`)&&i.has(`down`)?[{x:s,y:0},{x:0,y:-o},{x:0,y:-a+o},{x:s,y:-a}]:i.has(`right`)&&i.has(`left`)?[{x:o,y:0},{x:o,y:-c},{x:s-o,y:-c},{x:s-o,y:0},{x:s,y:-a/2},{x:s-o,y:-a},{x:s-o,y:-a+c},{x:o,y:-a+c},{x:o,y:-a},{x:0,y:-a/2}]:i.has(`up`)&&i.has(`down`)?[{x:s/2,y:0},{x:0,y:-c},{x:o,y:-c},{x:o,y:-a+c},{x:0,y:-a+c},{x:s/2,y:-a},{x:s,y:-a+c},{x:s-o,y:-a+c},{x:s-o,y:-c},{x:s,y:-c}]:i.has(`right`)&&i.has(`up`)?[{x:0,y:0},{x:s,y:-o},{x:0,y:-a}]:i.has(`right`)&&i.has(`down`)?[{x:0,y:0},{x:s,y:0},{x:0,y:-a}]:i.has(`left`)&&i.has(`up`)?[{x:s,y:0},{x:0,y:-o},{x:s,y:-a}]:i.has(`left`)&&i.has(`down`)?[{x:s,y:0},{x:0,y:0},{x:s,y:-a}]:i.has(`right`)?[{x:o,y:-c},{x:o,y:-c},{x:s-o,y:-c},{x:s-o,y:0},{x:s,y:-a/2},{x:s-o,y:-a},{x:s-o,y:-a+c},{x:o,y:-a+c},{x:o,y:-a+c}]:i.has(`left`)?[{x:o,y:0},{x:o,y:-c},{x:s-o,y:-c},{x:s-o,y:-a+c},{x:o,y:-a+c},{x:o,y:-a},{x:0,y:-a/2}]:i.has(`up`)?[{x:o,y:-c},{x:o,y:-a+c},{x:0,y:-a+c},{x:s/2,y:-a},{x:s,y:-a+c},{x:s-o,y:-a+c},{x:s-o,y:-c}]:i.has(`down`)?[{x:s/2,y:0},{x:0,y:-c},{x:o,y:-c},{x:o,y:-a+c},{x:s-o,y:-a+c},{x:s-o,y:-c},{x:s,y:-c}]:[{x:0,y:0}]},`getArrowPoints`);function ft(e,t){return e.intersect(t)}e(ft,`intersectNode`);var pt=ft;function mt(e,t,n,r){var i=e.x,a=e.y,o=i-r.x,s=a-r.y,c=Math.sqrt(t*t*s*s+n*n*o*o),l=Math.abs(t*n*o/c);r.x<i&&(l=-l);var u=Math.abs(t*n*s/c);return r.y<a&&(u=-u),{x:i+l,y:a+u}}e(mt,`intersectEllipse`);var ht=mt;function gt(e,t,n){return ht(e,t,t,n)}e(gt,`intersectCircle`);var _t=gt;function vt(e,t,n,r){var i=t.y-e.y,a,o=e.x-t.x,s,c=t.x*e.y-e.x*t.y,l,u,d,f=i*n.x+o*n.y+c,p=i*r.x+o*r.y+c,m,h,g,_,v;if(!(f!==0&&p!==0&&yt(f,p))&&(a=r.y-n.y,s=n.x-r.x,l=r.x*n.y-n.x*r.y,u=a*e.x+s*e.y+l,d=a*t.x+s*t.y+l,!(u!==0&&d!==0&&yt(u,d))&&(m=i*s-a*o,m!==0)))return h=Math.abs(m/2),g=o*l-s*c,_=g<0?(g-h)/m:(g+h)/m,g=a*c-i*l,v=g<0?(g-h)/m:(g+h)/m,{x:_,y:v}}e(vt,`intersectLine`);function yt(e,t){return e*t>0}e(yt,`sameSign`);var bt=vt,xt=St;function St(e,t,n){var r=e.x,i=e.y,a=[],o=1/0,s=1/0;typeof t.forEach==`function`?t.forEach(function(e){o=Math.min(o,e.x),s=Math.min(s,e.y)}):(o=Math.min(o,t.x),s=Math.min(s,t.y));for(var c=r-e.width/2-o,l=i-e.height/2-s,u=0;u<t.length;u++){var d=t[u],f=t[u<t.length-1?u+1:0],p=bt(e,n,{x:c+d.x,y:l+d.y},{x:c+f.x,y:l+f.y});p&&a.push(p)}return a.length?(a.length>1&&a.sort(function(e,t){var r=e.x-n.x,i=e.y-n.y,a=Math.sqrt(r*r+i*i),o=t.x-n.x,s=t.y-n.y,c=Math.sqrt(o*o+s*s);return a<c?-1:a===c?0:1}),a[0]):e}e(St,`intersectPolygon`);var K={node:pt,circle:_t,ellipse:ht,polygon:xt,rect:e((e,t)=>{var n=e.x,r=e.y,i=t.x-n,a=t.y-r,o=e.width/2,s=e.height/2,c,l;return Math.abs(a)*o>Math.abs(i)*s?(a<0&&(s=-s),c=a===0?0:s*i/a,l=s):(i<0&&(o=-o),c=o,l=i===0?0:o*a/i),{x:n+c,y:r+l}},`intersectRect`)},q=e(async(e,t,n,i)=>{let a=l(),o,s=t.useHtmlLabels||r(a);o=n||`node default`;let c=e.insert(`g`).attr(`class`,o).attr(`id`,t.domId||t.id),d=c.insert(`g`).attr(`class`,`label`).attr(`style`,t.labelStyle),p;p=t.labelText===void 0?``:typeof t.labelText==`string`?t.labelText:t.labelText[0];let m;m=t.labelType===`markdown`?ue(d,u(ne(p),a),{useHtmlLabels:s,width:t.width||a.flowchart.wrappingWidth,classes:`markdown-node-label`},a):await U(d,u(ne(p),a),t.labelStyle,!1,i);let h=m.getBBox(),g=t.padding/2;if(r(a)){let e=m.children[0],t=f(m);await me(e,p),h=e.getBoundingClientRect(),t.attr(`width`,h.width),t.attr(`height`,h.height)}return s?d.attr(`transform`,`translate(`+-h.width/2+`, `+-h.height/2+`)`):d.attr(`transform`,`translate(0, `+-h.height/2+`)`),t.centerLabel&&d.attr(`transform`,`translate(`+-h.width/2+`, `+-h.height/2+`)`),d.insert(`rect`,`:first-child`),{shapeSvg:c,bbox:h,halfPadding:g,label:d}},`labelHelper`),J=e((e,t)=>{let n=t.node().getBBox();e.width=n.width,e.height=n.height},`updateNodeBounds`);function Y(e,t,n,r){return e.insert(`polygon`,`:first-child`).attr(`points`,r.map(function(e){return e.x+`,`+e.y}).join(` `)).attr(`class`,`label-container`).attr(`transform`,`translate(`+-t/2+`,`+n/2+`)`)}e(Y,`insertPolygonShape`);var Ct=e(async(e,n)=>{n.useHtmlLabels||r(l())||(n.centerLabel=!0);let{shapeSvg:i,bbox:a,halfPadding:o}=await q(e,n,`node `+n.classes,!0);t.info(`Classes = `,n.classes);let s=i.insert(`rect`,`:first-child`);return s.attr(`rx`,n.rx).attr(`ry`,n.ry).attr(`x`,-a.width/2-o).attr(`y`,-a.height/2-o).attr(`width`,a.width+n.padding).attr(`height`,a.height+n.padding),J(n,s),n.intersect=function(e){return K.rect(n,e)},i},`note`),wt=e(e=>e?` `+e:``,`formatClass`),X=e((e,t)=>`${t||`node default`}${wt(e.classes)} ${wt(e.class)}`,`getClassesFromNode`),Tt=e(async(e,n)=>{let{shapeSvg:r,bbox:i}=await q(e,n,X(n,void 0),!0),a=i.width+n.padding+(i.height+n.padding),o=[{x:a/2,y:0},{x:a,y:-a/2},{x:a/2,y:-a},{x:0,y:-a/2}];t.info(`Question main (Circle)`);let s=Y(r,a,a,o);return s.attr(`style`,n.style),J(n,s),n.intersect=function(e){return t.warn(`Intersect called`),K.polygon(n,o,e)},r},`question`),Et=e((e,t)=>{let n=e.insert(`g`).attr(`class`,`node default`).attr(`id`,t.domId||t.id);return n.insert(`polygon`,`:first-child`).attr(`points`,[{x:0,y:28/2},{x:28/2,y:0},{x:0,y:-28/2},{x:-28/2,y:0}].map(function(e){return e.x+`,`+e.y}).join(` `)).attr(`class`,`state-start`).attr(`r`,7).attr(`width`,28).attr(`height`,28),t.width=28,t.height=28,t.intersect=function(e){return K.circle(t,14,e)},n},`choice`),Dt=e(async(e,t)=>{let{shapeSvg:n,bbox:r}=await q(e,t,X(t,void 0),!0),i=t.positioned?t.height:r.height+t.padding,a=i/4,o=t.positioned?t.width:r.width+2*a+t.padding,s=[{x:a,y:0},{x:o-a,y:0},{x:o,y:-i/2},{x:o-a,y:-i},{x:a,y:-i},{x:0,y:-i/2}],c=Y(n,o,i,s);return c.attr(`style`,t.style),J(t,c),t.intersect=function(e){return K.polygon(t,s,e)},n},`hexagon`),Ot=e(async(e,t)=>{let{shapeSvg:n,bbox:r}=await q(e,t,void 0,!0),i=r.height+2*t.padding,a=i/2,o=r.width+2*a+t.padding,s=t.positioned&&(t.widthInColumns??1)>1&&t.width>o?t.width:o,c=dt(t.directions,r,t,s),l=Y(n,s,i,c);return l.attr(`style`,t.style),J(t,l),t.intersect=function(e){return K.polygon(t,c,e)},n},`block_arrow`),kt=e(async(e,t)=>{let{shapeSvg:n,bbox:r}=await q(e,t,X(t,void 0),!0),i=r.width+t.padding,a=r.height+t.padding,o=[{x:-a/2,y:0},{x:i,y:0},{x:i,y:-a},{x:-a/2,y:-a},{x:0,y:-a/2}];return Y(n,i,a,o).attr(`style`,t.style),t.width=i+a,t.height=a,t.intersect=function(e){return K.polygon(t,o,e)},n},`rect_left_inv_arrow`),At=e(async(e,t)=>{let{shapeSvg:n,bbox:r}=await q(e,t,X(t),!0),i=r.width+t.padding,a=r.height+t.padding,o=[{x:-2*a/6,y:0},{x:i-a/6,y:0},{x:i+2*a/6,y:-a},{x:a/6,y:-a}],s=Y(n,i,a,o);return s.attr(`style`,t.style),J(t,s),t.intersect=function(e){return K.polygon(t,o,e)},n},`lean_right`),jt=e(async(e,t)=>{let{shapeSvg:n,bbox:r}=await q(e,t,X(t,void 0),!0),i=r.width+t.padding,a=r.height+t.padding,o=[{x:2*a/6,y:0},{x:i+a/6,y:0},{x:i-2*a/6,y:-a},{x:-a/6,y:-a}],s=Y(n,i,a,o);return s.attr(`style`,t.style),J(t,s),t.intersect=function(e){return K.polygon(t,o,e)},n},`lean_left`),Mt=e(async(e,t)=>{let{shapeSvg:n,bbox:r}=await q(e,t,X(t,void 0),!0),i=r.width+t.padding,a=r.height+t.padding,o=[{x:-2*a/6,y:0},{x:i+2*a/6,y:0},{x:i-a/6,y:-a},{x:a/6,y:-a}],s=Y(n,i,a,o);return s.attr(`style`,t.style),J(t,s),t.intersect=function(e){return K.polygon(t,o,e)},n},`trapezoid`),Nt=e(async(e,t)=>{let{shapeSvg:n,bbox:r}=await q(e,t,X(t,void 0),!0),i=r.width+t.padding,a=r.height+t.padding,o=[{x:a/6,y:0},{x:i-a/6,y:0},{x:i+2*a/6,y:-a},{x:-2*a/6,y:-a}],s=Y(n,i,a,o);return s.attr(`style`,t.style),J(t,s),t.intersect=function(e){return K.polygon(t,o,e)},n},`inv_trapezoid`),Pt=e(async(e,t)=>{let{shapeSvg:n,bbox:r}=await q(e,t,X(t,void 0),!0),i=r.width+t.padding,a=r.height+t.padding,o=[{x:0,y:0},{x:i+a/2,y:0},{x:i,y:-a/2},{x:i+a/2,y:-a},{x:0,y:-a}],s=Y(n,i,a,o);return s.attr(`style`,t.style),J(t,s),t.intersect=function(e){return K.polygon(t,o,e)},n},`rect_right_inv_arrow`),Ft=e(async(e,t)=>{let{shapeSvg:n,bbox:r}=await q(e,t,X(t,void 0),!0),i=r.width+t.padding,a=i/2,o=a/(2.5+i/50),s=r.height+o+t.padding,c=`M 0,`+o+` a `+a+`,`+o+` 0,0,0 `+i+` 0 a `+a+`,`+o+` 0,0,0 `+-i+` 0 l 0,`+s+` a `+a+`,`+o+` 0,0,0 `+i+` 0 l 0,`+-s;return J(t,n.attr(`label-offset-y`,o).insert(`path`,`:first-child`).attr(`style`,t.style).attr(`d`,c).attr(`transform`,`translate(`+-i/2+`,`+-(s/2+o)+`)`)),t.intersect=function(e){let n=K.rect(t,e),r=n.x-t.x;if(a!=0&&(Math.abs(r)<t.width/2||Math.abs(r)==t.width/2&&Math.abs(n.y-t.y)>t.height/2-o)){let i=o*o*(1-r*r/(a*a));i!=0&&(i=Math.sqrt(i)),i=o-i,e.y-t.y>0&&(i=-i),n.y+=i}return n},n},`cylinder`),It=e(async(e,n)=>{let{shapeSvg:r,bbox:i,halfPadding:a}=await q(e,n,`node `+n.classes+` `+n.class,!0),o=r.insert(`rect`,`:first-child`),s=n.positioned?n.width:i.width+n.padding,c=n.positioned?n.height:i.height+n.padding,l=n.positioned?-s/2:-i.width/2-a,u=n.positioned?-c/2:-i.height/2-a;if(o.attr(`class`,`basic label-container`).attr(`style`,n.style).attr(`rx`,n.rx).attr(`ry`,n.ry).attr(`x`,l).attr(`y`,u).attr(`width`,s).attr(`height`,c),n.props){let e=new Set(Object.keys(n.props));n.props.borders&&(Z(o,n.props.borders,s,c),e.delete(`borders`)),e.forEach(e=>{t.warn(`Unknown node property ${e}`)})}return J(n,o),n.intersect=function(e){return K.rect(n,e)},r},`rect`),Lt=e(async(e,n)=>{let{shapeSvg:r,bbox:i,halfPadding:a}=await q(e,n,`node `+n.classes,!0),o=r.insert(`rect`,`:first-child`),s=n.positioned?n.width:i.width+n.padding,c=n.positioned?n.height:i.height+n.padding,l=n.positioned?-s/2:-i.width/2-a,u=n.positioned?-c/2:-i.height/2-a;if(o.attr(`class`,`basic cluster composite label-container`).attr(`style`,n.style).attr(`rx`,n.rx).attr(`ry`,n.ry).attr(`x`,l).attr(`y`,u).attr(`width`,s).attr(`height`,c),n.props){let e=new Set(Object.keys(n.props));n.props.borders&&(Z(o,n.props.borders,s,c),e.delete(`borders`)),e.forEach(e=>{t.warn(`Unknown node property ${e}`)})}return J(n,o),n.intersect=function(e){return K.rect(n,e)},r},`composite`),Rt=e(async(e,n)=>{let{shapeSvg:r}=await q(e,n,`label`,!0);t.trace(`Classes = `,n.class);let i=r.insert(`rect`,`:first-child`);if(i.attr(`width`,0).attr(`height`,0),r.attr(`class`,`label edgeLabel`),n.props){let e=new Set(Object.keys(n.props));n.props.borders&&(Z(i,n.props.borders,0,0),e.delete(`borders`)),e.forEach(e=>{t.warn(`Unknown node property ${e}`)})}return J(n,i),n.intersect=function(e){return K.rect(n,e)},r},`labelRect`);function Z(n,r,i,a){let o=[],s=e(e=>{o.push(e,0)},`addBorder`),c=e(e=>{o.push(0,e)},`skipBorder`);r.includes(`t`)?(t.debug(`add top border`),s(i)):c(i),r.includes(`r`)?(t.debug(`add right border`),s(a)):c(a),r.includes(`b`)?(t.debug(`add bottom border`),s(i)):c(i),r.includes(`l`)?(t.debug(`add left border`),s(a)):c(a),n.attr(`stroke-dasharray`,o.join(` `))}e(Z,`applyNodePropertyBorders`);var zt=e(async(e,n)=>{let i;i=n.classes?`node `+n.classes:`node default`;let a=e.insert(`g`).attr(`class`,i).attr(`id`,n.domId||n.id),o=a.insert(`rect`,`:first-child`),s=a.insert(`line`),c=a.insert(`g`).attr(`class`,`label`),u=n.labelText.flat?n.labelText.flat():n.labelText,d=``;d=typeof u==`object`?u[0]:u,t.info(`Label text abc79`,d,u,typeof u==`object`);let p=await U(c,d,n.labelStyle,!0,!0),m={width:0,height:0};if(r(l())){let e=p.children[0],t=f(p);m=e.getBoundingClientRect(),t.attr(`width`,m.width),t.attr(`height`,m.height)}t.info(`Text 2`,u);let h=u.slice(1,u.length),g=p.getBBox(),_=await U(c,h.join?h.join(`<br/>`):h,n.labelStyle,!0,!0);if(r(l())){let e=_.children[0],t=f(_);m=e.getBoundingClientRect(),t.attr(`width`,m.width),t.attr(`height`,m.height)}let v=n.padding/2;return f(_).attr(`transform`,`translate( `+(m.width>g.width?0:(g.width-m.width)/2)+`, `+(g.height+v+5)+`)`),f(p).attr(`transform`,`translate( `+(m.width<g.width?0:-(g.width-m.width)/2)+`, 0)`),m=c.node().getBBox(),c.attr(`transform`,`translate(`+-m.width/2+`, `+(-m.height/2-v+3)+`)`),o.attr(`class`,`outer title-state`).attr(`x`,-m.width/2-v).attr(`y`,-m.height/2-v).attr(`width`,m.width+n.padding).attr(`height`,m.height+n.padding),s.attr(`class`,`divider`).attr(`x1`,-m.width/2-v).attr(`x2`,m.width/2+v).attr(`y1`,-m.height/2-v+g.height+v).attr(`y2`,-m.height/2-v+g.height+v),J(n,o),n.intersect=function(e){return K.rect(n,e)},a},`rectWithTitle`),Bt=e(async(e,t)=>{let{shapeSvg:n,bbox:r}=await q(e,t,X(t,void 0),!0),i=r.height+t.padding,a=r.width+i/4+t.padding;return J(t,n.insert(`rect`,`:first-child`).attr(`style`,t.style).attr(`rx`,i/2).attr(`ry`,i/2).attr(`x`,-a/2).attr(`y`,-i/2).attr(`width`,a).attr(`height`,i)),t.intersect=function(e){return K.rect(t,e)},n},`stadium`),Vt=e(async(e,n)=>{let{shapeSvg:r,bbox:i,halfPadding:a}=await q(e,n,X(n,void 0),!0),o=r.insert(`circle`,`:first-child`);return o.attr(`style`,n.style).attr(`rx`,n.rx).attr(`ry`,n.ry).attr(`r`,i.width/2+a).attr(`width`,i.width+n.padding).attr(`height`,i.height+n.padding),t.info(`Circle main`),J(n,o),n.intersect=function(e){return t.info(`Circle intersect`,n,i.width/2+a,e),K.circle(n,i.width/2+a,e)},r},`circle`),Ht=e(async(e,n)=>{let{shapeSvg:r,bbox:i,halfPadding:a}=await q(e,n,X(n,void 0),!0),o=r.insert(`g`,`:first-child`),s=o.insert(`circle`),c=o.insert(`circle`);return o.attr(`class`,n.class),s.attr(`style`,n.style).attr(`rx`,n.rx).attr(`ry`,n.ry).attr(`r`,i.width/2+a+5).attr(`width`,i.width+n.padding+10).attr(`height`,i.height+n.padding+10),c.attr(`style`,n.style).attr(`rx`,n.rx).attr(`ry`,n.ry).attr(`r`,i.width/2+a).attr(`width`,i.width+n.padding).attr(`height`,i.height+n.padding),t.info(`DoubleCircle main`),J(n,s),n.intersect=function(e){return t.info(`DoubleCircle intersect`,n,i.width/2+a+5,e),K.circle(n,i.width/2+a+5,e)},r},`doublecircle`),Ut=e(async(e,t)=>{let{shapeSvg:n,bbox:r}=await q(e,t,X(t,void 0),!0),i=r.width+t.padding,a=r.height+t.padding,o=[{x:0,y:0},{x:i,y:0},{x:i,y:-a},{x:0,y:-a},{x:0,y:0},{x:-8,y:0},{x:i+8,y:0},{x:i+8,y:-a},{x:-8,y:-a},{x:-8,y:0}],s=Y(n,i,a,o);return s.attr(`style`,t.style),J(t,s),t.intersect=function(e){return K.polygon(t,o,e)},n},`subroutine`),Wt=e((e,t)=>{let n=e.insert(`g`).attr(`class`,`node default`).attr(`id`,t.domId||t.id),r=n.insert(`circle`,`:first-child`);return r.attr(`class`,`state-start`).attr(`r`,7).attr(`width`,14).attr(`height`,14),J(t,r),t.intersect=function(e){return K.circle(t,7,e)},n},`start`),Gt=e((e,t,n)=>{let r=e.insert(`g`).attr(`class`,`node default`).attr(`id`,t.domId||t.id),i=70,a=10;return n===`LR`&&(i=10,a=70),J(t,r.append(`rect`).attr(`x`,-1*i/2).attr(`y`,-1*a/2).attr(`width`,i).attr(`height`,a).attr(`class`,`fork-join`)),t.height+=t.padding/2,t.width+=t.padding/2,t.intersect=function(e){return K.rect(t,e)},r},`forkJoin`),Kt={rhombus:Tt,composite:Lt,question:Tt,rect:It,labelRect:Rt,rectWithTitle:zt,choice:Et,circle:Vt,doublecircle:Ht,stadium:Bt,hexagon:Dt,block_arrow:Ot,rect_left_inv_arrow:kt,lean_right:At,lean_left:jt,trapezoid:Mt,inv_trapezoid:Nt,rect_right_inv_arrow:Pt,cylinder:Ft,start:Wt,end:e((e,t)=>{let n=e.insert(`g`).attr(`class`,`node default`).attr(`id`,t.domId||t.id),r=n.insert(`circle`,`:first-child`),i=n.insert(`circle`,`:first-child`);return i.attr(`class`,`state-start`).attr(`r`,7).attr(`width`,14).attr(`height`,14),r.attr(`class`,`state-end`).attr(`r`,5).attr(`width`,10).attr(`height`,10),J(t,i),t.intersect=function(e){return K.circle(t,7,e)},n},`end`),note:Ct,subroutine:Ut,fork:Gt,join:Gt,class_box:e(async(e,t)=>{let n=t.padding/2,i;i=t.classes?`node `+t.classes:`node default`;let a=e.insert(`g`).attr(`class`,i).attr(`id`,t.domId||t.id),o=a.insert(`rect`,`:first-child`),s=a.insert(`line`),c=a.insert(`line`),u=0,d=4,p=a.insert(`g`).attr(`class`,`label`),m=0,h=t.classData.annotations?.[0],g=await U(p,t.classData.annotations[0]?`«`+t.classData.annotations[0]+`»`:``,t.labelStyle,!0,!0),_=g.getBBox();if(r(l())){let e=g.children[0],t=f(g);_=e.getBoundingClientRect(),t.attr(`width`,_.width),t.attr(`height`,_.height)}t.classData.annotations[0]&&(d+=_.height+4,u+=_.width);let v=t.classData.label;t.classData.type!==void 0&&t.classData.type!==``&&(r(l())?v+=`&lt;`+t.classData.type+`&gt;`:v+=`<`+t.classData.type+`>`);let y=await U(p,v,t.labelStyle,!0,!0);f(y).attr(`class`,`classTitle`);let b=y.getBBox();if(r(l())){let e=y.children[0],t=f(y);b=e.getBoundingClientRect(),t.attr(`width`,b.width),t.attr(`height`,b.height)}d+=b.height+4,b.width>u&&(u=b.width);let x=[];t.classData.members.forEach(async e=>{let n=e.getDisplayDetails(),i=n.displayText;r(l())&&(i=i.replace(/</g,`&lt;`).replace(/>/g,`&gt;`));let a=await U(p,i,n.cssStyle?n.cssStyle:t.labelStyle,!0,!0),o=a.getBBox();if(r(l())){let e=a.children[0],t=f(a);o=e.getBoundingClientRect(),t.attr(`width`,o.width),t.attr(`height`,o.height)}o.width>u&&(u=o.width),d+=o.height+4,x.push(a)}),d+=8;let S=[];if(t.classData.methods.forEach(async e=>{let n=e.getDisplayDetails(),i=n.displayText;r(l())&&(i=i.replace(/</g,`&lt;`).replace(/>/g,`&gt;`));let a=await U(p,i,n.cssStyle?n.cssStyle:t.labelStyle,!0,!0),o=a.getBBox();if(r(l())){let e=a.children[0],t=f(a);o=e.getBoundingClientRect(),t.attr(`width`,o.width),t.attr(`height`,o.height)}o.width>u&&(u=o.width),d+=o.height+4,S.push(a)}),d+=8,h){let e=(u-_.width)/2;f(g).attr(`transform`,`translate( `+(-1*u/2+e)+`, `+-1*d/2+`)`),m=_.height+4}let C=(u-b.width)/2;return f(y).attr(`transform`,`translate( `+(-1*u/2+C)+`, `+(-1*d/2+m)+`)`),m+=b.height+4,s.attr(`class`,`divider`).attr(`x1`,-u/2-n).attr(`x2`,u/2+n).attr(`y1`,-d/2-n+8+m).attr(`y2`,-d/2-n+8+m),m+=8,x.forEach(e=>{f(e).attr(`transform`,`translate( `+-u/2+`, `+(-1*d/2+m+8/2)+`)`);let t=e?.getBBox();m+=(t?.height??0)+4}),m+=8,c.attr(`class`,`divider`).attr(`x1`,-u/2-n).attr(`x2`,u/2+n).attr(`y1`,-d/2-n+8+m).attr(`y2`,-d/2-n+8+m),m+=8,S.forEach(e=>{f(e).attr(`transform`,`translate( `+-u/2+`, `+(-1*d/2+m)+`)`);let t=e?.getBBox();m+=(t?.height??0)+4}),o.attr(`style`,t.style).attr(`class`,`outer title-state`).attr(`x`,-u/2-n).attr(`y`,-(d/2)-n).attr(`width`,u+t.padding).attr(`height`,d+t.padding),J(t,o),t.intersect=function(e){return K.rect(t,e)},a},`class_box`)},Q={},qt=e(async(e,t,n)=>{let r,i;if(t.link){let a;l().securityLevel===`sandbox`?a=`_top`:t.linkTarget&&(a=t.linkTarget||`_blank`),r=e.insert(`svg:a`).attr(`xlink:href`,t.link).attr(`target`,a),i=await Kt[t.shape](r,t,n)}else i=await Kt[t.shape](e,t,n),r=i;return t.tooltip&&i.attr(`title`,t.tooltip),t.class&&i.attr(`class`,`node default `+t.class),Q[t.id]=r,t.haveCallback&&Q[t.id].attr(`class`,Q[t.id].attr(`class`)+` clickable`),r},`insertNode`),Jt=e(e=>{let n=Q[e.id];t.trace(`Transforming node`,e.diff,e,`translate(`+(e.x-e.width/2-5)+`, `+e.width/2+`)`);let r=e.diff||0;return e.clusterNode?n.attr(`transform`,`translate(`+(e.x+r-e.width/2)+`, `+(e.y-e.height/2-8)+`)`):n.attr(`transform`,`translate(`+e.x+`, `+e.y+`)`),r},`positionNode`);function Yt(e,t,n=!1){let r=e,i=`default`;(r?.classes?.length||0)>0&&(i=(r?.classes??[]).join(` `)),i+=` flowchart-label`;let o=0,s=``,c;switch(r.type){case`round`:o=5,s=`rect`;break;case`composite`:o=0,s=`composite`,c=0;break;case`square`:s=`rect`;break;case`diamond`:s=`question`;break;case`hexagon`:s=`hexagon`;break;case`block_arrow`:s=`block_arrow`;break;case`odd`:s=`rect_left_inv_arrow`;break;case`lean_right`:s=`lean_right`;break;case`lean_left`:s=`lean_left`;break;case`trapezoid`:s=`trapezoid`;break;case`inv_trapezoid`:s=`inv_trapezoid`;break;case`rect_left_inv_arrow`:s=`rect_left_inv_arrow`;break;case`circle`:s=`circle`;break;case`ellipse`:s=`ellipse`;break;case`stadium`:s=`stadium`;break;case`subroutine`:s=`subroutine`;break;case`cylinder`:s=`cylinder`;break;case`group`:s=`rect`;break;case`doublecircle`:s=`doublecircle`;break;default:s=`rect`}let l=ae(r?.styles??[]),u=r.label,d=r.size??{width:0,height:0,x:0,y:0},f=t.getDiagramId();return{labelStyle:l.labelStyle,shape:s,labelText:u,rx:o,ry:o,class:i,style:l.style,id:r.id,domId:f?`${f}-${r.id}`:r.id,directions:r.directions,width:d.width,height:d.height,x:d.x,y:d.y,positioned:n,intersect:void 0,type:r.type,padding:c??a()?.block?.padding??0,widthInColumns:r.widthInColumns??1}}e(Yt,`getNodeFromBlock`);async function Xt(e,t,n){let r=Yt(t,n,!1);if(r.type===`group`)return;let i=await qt(e,r,{config:a()}),o=i.node().getBBox(),s=n.getBlock(r.id);s.size={width:o.width,height:o.height,x:0,y:0,node:i},n.setBlock(s),i.remove()}e(Xt,`calculateBlockSize`);async function Zt(e,t,n){let r=Yt(t,n,!0);n.getBlock(r.id).type!==`space`&&(await qt(e,r,{config:a()}),t.intersect=r?.intersect,Jt(r))}e(Zt,`insertBlockPositioned`);async function $(e,t,n,r){for(let i of t)await r(e,i,n),i.children&&await $(e,i.children,n,r)}e($,`performOperations`);async function Qt(e,t,n){await $(e,t,n,Xt)}e(Qt,`calculateBlockSizes`);async function $t(e,t,n){await $(e,t,n,Zt)}e($t,`insertBlocks`);async function en(e,t,n,r,i){let a=new he({multigraph:!0,compound:!0});a.setGraph({rankdir:`TB`,nodesep:10,ranksep:10,marginx:8,marginy:8});for(let e of n)e.size&&a.setNode(e.id,{width:e.size.width,height:e.size.height,intersect:e.intersect});for(let n of t)if(n.start&&n.end){let t=r.getBlock(n.start),o=r.getBlock(n.end);if(t?.size&&o?.size){let r=t.size,s=o.size,c=[{x:r.x,y:r.y},{x:r.x+(s.x-r.x)/2,y:r.y+(s.y-r.y)/2},{x:s.x,y:s.y}],l=i?`${i}-${n.id}`:n.id,u=`${n.thickness===`thick`?`edge-thickness-thick`:`edge-thickness-normal`} ${n.pattern===`dotted`?`edge-pattern-dotted`:`edge-pattern-solid`} flowchart-link LS-a1 LE-b1`;lt(e,{v:n.start,w:n.end,name:l},{...n,id:l,arrowTypeEnd:n.arrowTypeEnd,arrowTypeStart:n.arrowTypeStart,points:c,classes:u},void 0,`block`,a,i),n.label&&(await it(e,{...n,label:n.label,labelStyle:`stroke: #333; stroke-width: 1.5px;fill:none;`,arrowTypeEnd:n.arrowTypeEnd,arrowTypeStart:n.arrowTypeStart,points:c,classes:u}),at({...n,x:c[1].x,y:c[1].y},{originalPath:c}))}}}e(en,`insertEdges`);var tn={parser:we,db:Ge,renderer:{draw:e(async function(e,n,r,i){let{securityLevel:s,block:c}=a(),l=i.db;l.setDiagramId(n);let u;s===`sandbox`&&(u=f(`#i`+n));let d=f(s===`sandbox`?u.nodes()[0].contentDocument.body:`body`),p=s===`sandbox`?d.select(`[id="${n}"]`):f(`[id="${n}"]`);Ye(p,[`point`,`circle`,`cross`],i.type,n);let m=l.getBlocks(),h=l.getBlocksFlat(),g=l.getEdges(),_=p.insert(`g`).attr(`class`,`block`);await Qt(_,m,l);let v=$e(l);if(await $t(_,m,l),await en(_,g,h,l,n),v){let e=v,n=Math.max(1,Math.round(.125*(e.width/e.height))),r=e.height+n+10,i=e.width+10,{useMaxWidth:a}=c;o(p,r,i,!!a),t.debug(`Here Bounds`,v,e),p.attr(`viewBox`,`${e.x-5} ${e.y-5} ${e.width+10} ${e.height+10}`)}},`draw`),getClasses:e(function(e,t){return t.db.getClasses()},`getClasses`)},styles:Ke};export{tn as diagram};
@@ -1,4 +1,4 @@
1
- import{n as e,r as t}from"./chunk-AGHRB4JF-CYdXVA2-.js";import{H as n,U as r,c as i,r as a,s as o,v as s,x as l,y as u,z as d}from"./chunk-CSCIHK7Q-CAE1p4Em.js";import{Nt as f}from"./vendor-utils-BnxL60_-.js";import{t as p}from"./dist-DrIWh2fi.js";import{_ as m,n as h,r as g}from"./chunk-5ZQYHXKU-Bd-RFO5i.js";import{a as _,s as v}from"./chunk-ND2GUHAM-zZ7h1CPf.js";var y=p(),b=(function(){var t=e(function(e,t,n,r){for(n||={},r=e.length;r--;n[e[r]]=t);return n},`o`),n=[1,24],r=[1,25],i=[1,26],a=[1,27],o=[1,28],s=[1,63],l=[1,64],u=[1,65],d=[1,66],f=[1,67],p=[1,68],m=[1,69],h=[1,29],g=[1,30],_=[1,31],v=[1,32],y=[1,33],b=[1,34],x=[1,35],S=[1,36],C=[1,37],w=[1,38],T=[1,39],E=[1,40],D=[1,41],O=[1,42],k=[1,43],A=[1,44],j=[1,45],M=[1,46],N=[1,47],P=[1,48],F=[1,50],I=[1,51],L=[1,52],R=[1,53],z=[1,54],B=[1,55],V=[1,56],H=[1,57],ee=[1,58],te=[1,59],ne=[1,60],re=[14,42],ie=[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],ae=[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],U=[1,82],W=[1,83],G=[1,84],K=[1,85],q=[12,14,42],oe=[12,14,33,42],se=[12,14,33,42,76,77,79,80],ce=[12,33],le=[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],J={trace:e(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:e(function(e,t,n,r,i,a,o){var s=a.length-1;switch(i){case 3:r.setDirection(`TB`);break;case 4:r.setDirection(`BT`);break;case 5:r.setDirection(`RL`);break;case 6:r.setDirection(`LR`);break;case 8:case 9:case 10:case 11:case 12:r.setC4Type(a[s-3]);break;case 19:r.setTitle(a[s].substring(6)),this.$=a[s].substring(6);break;case 20:r.setAccDescription(a[s].substring(15)),this.$=a[s].substring(15);break;case 21:this.$=a[s].trim(),r.setTitle(this.$);break;case 22:case 23:this.$=a[s].trim(),r.setAccDescription(this.$);break;case 28:a[s].splice(2,0,`ENTERPRISE`),r.addPersonOrSystemBoundary(...a[s]),this.$=a[s];break;case 29:a[s].splice(2,0,`SYSTEM`),r.addPersonOrSystemBoundary(...a[s]),this.$=a[s];break;case 30:r.addPersonOrSystemBoundary(...a[s]),this.$=a[s];break;case 31:a[s].splice(2,0,`CONTAINER`),r.addContainerBoundary(...a[s]),this.$=a[s];break;case 32:r.addDeploymentNode(`node`,...a[s]),this.$=a[s];break;case 33:r.addDeploymentNode(`nodeL`,...a[s]),this.$=a[s];break;case 34:r.addDeploymentNode(`nodeR`,...a[s]),this.$=a[s];break;case 35:r.popBoundaryParseStack();break;case 39:r.addPersonOrSystem(`person`,...a[s]),this.$=a[s];break;case 40:r.addPersonOrSystem(`external_person`,...a[s]),this.$=a[s];break;case 41:r.addPersonOrSystem(`system`,...a[s]),this.$=a[s];break;case 42:r.addPersonOrSystem(`system_db`,...a[s]),this.$=a[s];break;case 43:r.addPersonOrSystem(`system_queue`,...a[s]),this.$=a[s];break;case 44:r.addPersonOrSystem(`external_system`,...a[s]),this.$=a[s];break;case 45:r.addPersonOrSystem(`external_system_db`,...a[s]),this.$=a[s];break;case 46:r.addPersonOrSystem(`external_system_queue`,...a[s]),this.$=a[s];break;case 47:r.addContainer(`container`,...a[s]),this.$=a[s];break;case 48:r.addContainer(`container_db`,...a[s]),this.$=a[s];break;case 49:r.addContainer(`container_queue`,...a[s]),this.$=a[s];break;case 50:r.addContainer(`external_container`,...a[s]),this.$=a[s];break;case 51:r.addContainer(`external_container_db`,...a[s]),this.$=a[s];break;case 52:r.addContainer(`external_container_queue`,...a[s]),this.$=a[s];break;case 53:r.addComponent(`component`,...a[s]),this.$=a[s];break;case 54:r.addComponent(`component_db`,...a[s]),this.$=a[s];break;case 55:r.addComponent(`component_queue`,...a[s]),this.$=a[s];break;case 56:r.addComponent(`external_component`,...a[s]),this.$=a[s];break;case 57:r.addComponent(`external_component_db`,...a[s]),this.$=a[s];break;case 58:r.addComponent(`external_component_queue`,...a[s]),this.$=a[s];break;case 60:r.addRel(`rel`,...a[s]),this.$=a[s];break;case 61:r.addRel(`birel`,...a[s]),this.$=a[s];break;case 62:r.addRel(`rel_u`,...a[s]),this.$=a[s];break;case 63:r.addRel(`rel_d`,...a[s]),this.$=a[s];break;case 64:r.addRel(`rel_l`,...a[s]),this.$=a[s];break;case 65:r.addRel(`rel_r`,...a[s]),this.$=a[s];break;case 66:r.addRel(`rel_b`,...a[s]),this.$=a[s];break;case 67:a[s].splice(0,1),r.addRel(`rel`,...a[s]),this.$=a[s];break;case 68:r.updateElStyle(`update_el_style`,...a[s]),this.$=a[s];break;case 69:r.updateRelStyle(`update_rel_style`,...a[s]),this.$=a[s];break;case 70:r.updateLayoutConfig(`update_layout_config`,...a[s]),this.$=a[s];break;case 71:this.$=[a[s]];break;case 72:a[s].unshift(a[s-1]),this.$=a[s];break;case 73:case 75:this.$=a[s].trim();break;case 74:let e={};e[a[s-1].trim()]=a[s].trim(),this.$=e;break;case 76:this.$=``;break}},`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:n,23:r,24:i,26:a,28:o,29:49,30:61,32:62,34:s,36:l,37:u,38:d,39:f,40:p,41:m,43:23,44:h,45:g,46:_,47:v,48:y,49:b,50:x,51:S,52:C,53:w,54:T,55:E,56:D,57:O,58:k,59:A,60:j,61:M,62:N,63:P,64:F,65:I,66:L,67:R,68:z,69:B,70:V,71:H,72:ee,73:te,74:ne},{13:70,19:20,20:21,21:22,22:n,23:r,24:i,26:a,28:o,29:49,30:61,32:62,34:s,36:l,37:u,38:d,39:f,40:p,41:m,43:23,44:h,45:g,46:_,47:v,48:y,49:b,50:x,51:S,52:C,53:w,54:T,55:E,56:D,57:O,58:k,59:A,60:j,61:M,62:N,63:P,64:F,65:I,66:L,67:R,68:z,69:B,70:V,71:H,72:ee,73:te,74:ne},{13:71,19:20,20:21,21:22,22:n,23:r,24:i,26:a,28:o,29:49,30:61,32:62,34:s,36:l,37:u,38:d,39:f,40:p,41:m,43:23,44:h,45:g,46:_,47:v,48:y,49:b,50:x,51:S,52:C,53:w,54:T,55:E,56:D,57:O,58:k,59:A,60:j,61:M,62:N,63:P,64:F,65:I,66:L,67:R,68:z,69:B,70:V,71:H,72:ee,73:te,74:ne},{13:72,19:20,20:21,21:22,22:n,23:r,24:i,26:a,28:o,29:49,30:61,32:62,34:s,36:l,37:u,38:d,39:f,40:p,41:m,43:23,44:h,45:g,46:_,47:v,48:y,49:b,50:x,51:S,52:C,53:w,54:T,55:E,56:D,57:O,58:k,59:A,60:j,61:M,62:N,63:P,64:F,65:I,66:L,67:R,68:z,69:B,70:V,71:H,72:ee,73:te,74:ne},{13:73,19:20,20:21,21:22,22:n,23:r,24:i,26:a,28:o,29:49,30:61,32:62,34:s,36:l,37:u,38:d,39:f,40:p,41:m,43:23,44:h,45:g,46:_,47:v,48:y,49:b,50:x,51:S,52:C,53:w,54:T,55:E,56:D,57:O,58:k,59:A,60:j,61:M,62:N,63:P,64:F,65:I,66:L,67:R,68:z,69:B,70:V,71:H,72:ee,73:te,74:ne},{14:[1,74]},t(re,[2,13],{43:23,29:49,30:61,32:62,20:75,34:s,36:l,37:u,38:d,39:f,40:p,41:m,44:h,45:g,46:_,47:v,48:y,49:b,50:x,51:S,52:C,53:w,54:T,55:E,56:D,57:O,58:k,59:A,60:j,61:M,62:N,63:P,64:F,65:I,66:L,67:R,68:z,69:B,70:V,71:H,72:ee,73:te,74:ne}),t(re,[2,14]),t(ie,[2,16],{12:[1,76]}),t(re,[2,36],{12:[1,77]}),t(ae,[2,19]),t(ae,[2,20]),{25:[1,78]},{27:[1,79]},t(ae,[2,23]),{35:80,75:81,76:U,77:W,79:G,80:K},{35:86,75:81,76:U,77:W,79:G,80:K},{35:87,75:81,76:U,77:W,79:G,80:K},{35:88,75:81,76:U,77:W,79:G,80:K},{35:89,75:81,76:U,77:W,79:G,80:K},{35:90,75:81,76:U,77:W,79:G,80:K},{35:91,75:81,76:U,77:W,79:G,80:K},{35:92,75:81,76:U,77:W,79:G,80:K},{35:93,75:81,76:U,77:W,79:G,80:K},{35:94,75:81,76:U,77:W,79:G,80:K},{35:95,75:81,76:U,77:W,79:G,80:K},{35:96,75:81,76:U,77:W,79:G,80:K},{35:97,75:81,76:U,77:W,79:G,80:K},{35:98,75:81,76:U,77:W,79:G,80:K},{35:99,75:81,76:U,77:W,79:G,80:K},{35:100,75:81,76:U,77:W,79:G,80:K},{35:101,75:81,76:U,77:W,79:G,80:K},{35:102,75:81,76:U,77:W,79:G,80:K},{35:103,75:81,76:U,77:W,79:G,80:K},{35:104,75:81,76:U,77:W,79:G,80:K},t(q,[2,59]),{35:105,75:81,76:U,77:W,79:G,80:K},{35:106,75:81,76:U,77:W,79:G,80:K},{35:107,75:81,76:U,77:W,79:G,80:K},{35:108,75:81,76:U,77:W,79:G,80:K},{35:109,75:81,76:U,77:W,79:G,80:K},{35:110,75:81,76:U,77:W,79:G,80:K},{35:111,75:81,76:U,77:W,79:G,80:K},{35:112,75:81,76:U,77:W,79:G,80:K},{35:113,75:81,76:U,77:W,79:G,80:K},{35:114,75:81,76:U,77:W,79:G,80:K},{35:115,75:81,76:U,77:W,79:G,80:K},{20:116,29:49,30:61,32:62,34:s,36:l,37:u,38:d,39:f,40:p,41:m,43:23,44:h,45:g,46:_,47:v,48:y,49:b,50:x,51:S,52:C,53:w,54:T,55:E,56:D,57:O,58:k,59:A,60:j,61:M,62:N,63:P,64:F,65:I,66:L,67:R,68:z,69:B,70:V,71:H,72:ee,73:te,74:ne},{12:[1,118],33:[1,117]},{35:119,75:81,76:U,77:W,79:G,80:K},{35:120,75:81,76:U,77:W,79:G,80:K},{35:121,75:81,76:U,77:W,79:G,80:K},{35:122,75:81,76:U,77:W,79:G,80:K},{35:123,75:81,76:U,77:W,79:G,80:K},{35:124,75:81,76:U,77:W,79:G,80:K},{35:125,75:81,76:U,77:W,79:G,80:K},{14:[1,126]},{14:[1,127]},{14:[1,128]},{14:[1,129]},{1:[2,8]},t(re,[2,15]),t(ie,[2,17],{21:22,19:130,22:n,23:r,24:i,26:a,28:o}),t(re,[2,37],{19:20,20:21,21:22,43:23,29:49,30:61,32:62,13:131,22:n,23:r,24:i,26:a,28:o,34:s,36:l,37:u,38:d,39:f,40:p,41:m,44:h,45:g,46:_,47:v,48:y,49:b,50:x,51:S,52:C,53:w,54:T,55:E,56:D,57:O,58:k,59:A,60:j,61:M,62:N,63:P,64:F,65:I,66:L,67:R,68:z,69:B,70:V,71:H,72:ee,73:te,74:ne}),t(ae,[2,21]),t(ae,[2,22]),t(q,[2,39]),t(oe,[2,71],{75:81,35:132,76:U,77:W,79:G,80:K}),t(se,[2,73]),{78:[1,133]},t(se,[2,75]),t(se,[2,76]),t(q,[2,40]),t(q,[2,41]),t(q,[2,42]),t(q,[2,43]),t(q,[2,44]),t(q,[2,45]),t(q,[2,46]),t(q,[2,47]),t(q,[2,48]),t(q,[2,49]),t(q,[2,50]),t(q,[2,51]),t(q,[2,52]),t(q,[2,53]),t(q,[2,54]),t(q,[2,55]),t(q,[2,56]),t(q,[2,57]),t(q,[2,58]),t(q,[2,60]),t(q,[2,61]),t(q,[2,62]),t(q,[2,63]),t(q,[2,64]),t(q,[2,65]),t(q,[2,66]),t(q,[2,67]),t(q,[2,68]),t(q,[2,69]),t(q,[2,70]),{31:134,42:[1,135]},{12:[1,136]},{33:[1,137]},t(ce,[2,28]),t(ce,[2,29]),t(ce,[2,30]),t(ce,[2,31]),t(ce,[2,32]),t(ce,[2,33]),t(ce,[2,34]),{1:[2,9]},{1:[2,10]},{1:[2,11]},{1:[2,12]},t(ie,[2,18]),t(re,[2,38]),t(oe,[2,72]),t(se,[2,74]),t(q,[2,24]),t(q,[2,35]),t(le,[2,25]),t(le,[2,26],{12:[1,138]}),t(le,[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:e(function(e,t){if(t.recoverable)this.trace(e);else{var n=Error(e);throw n.hash=t,n}},`parseError`),parse:e(function(t){var n=this,r=[0],i=[],a=[null],o=[],s=this.table,l=``,u=0,d=0,f=0,p=2,m=1,h=o.slice.call(arguments,1),g=Object.create(this.lexer),_={yy:{}};for(var v in this.yy)Object.prototype.hasOwnProperty.call(this.yy,v)&&(_.yy[v]=this.yy[v]);g.setInput(t,_.yy),_.yy.lexer=g,_.yy.parser=this,g.yylloc===void 0&&(g.yylloc={});var y=g.yylloc;o.push(y);var b=g.options&&g.options.ranges;typeof _.yy.parseError==`function`?this.parseError=_.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function x(e){r.length-=2*e,a.length-=e,o.length-=e}e(x,`popStack`);function S(){var e=i.pop()||g.lex()||m;return typeof e!=`number`&&(e instanceof Array&&(i=e,e=i.pop()),e=n.symbols_[e]||e),e}e(S,`lex`);for(var C,w,T,E,D,O={},k,A,j,M;;){if(T=r[r.length-1],this.defaultActions[T]?E=this.defaultActions[T]:(C??=S(),E=s[T]&&s[T][C]),E===void 0||!E.length||!E[0]){var N=``;for(k in M=[],s[T])this.terminals_[k]&&k>p&&M.push(`'`+this.terminals_[k]+`'`);N=g.showPosition?`Parse error on line `+(u+1)+`:
1
+ import{n as e,r as t}from"./chunk-AGHRB4JF-CYdXVA2-.js";import{H as n,U as r,c as i,r as a,s as o,v as s,x as l,y as u,z as d}from"./chunk-CSCIHK7Q-CAE1p4Em.js";import{Vt as f}from"./vendor-utils-rVejrfMR.js";import{t as p}from"./dist-DrIWh2fi.js";import{_ as m,n as h,r as g}from"./chunk-5ZQYHXKU-Bli4k6GI.js";import{a as _,s as v}from"./chunk-ND2GUHAM-3qbNb7I9.js";var y=p(),b=(function(){var t=e(function(e,t,n,r){for(n||={},r=e.length;r--;n[e[r]]=t);return n},`o`),n=[1,24],r=[1,25],i=[1,26],a=[1,27],o=[1,28],s=[1,63],l=[1,64],u=[1,65],d=[1,66],f=[1,67],p=[1,68],m=[1,69],h=[1,29],g=[1,30],_=[1,31],v=[1,32],y=[1,33],b=[1,34],x=[1,35],S=[1,36],C=[1,37],w=[1,38],T=[1,39],E=[1,40],D=[1,41],O=[1,42],k=[1,43],A=[1,44],j=[1,45],M=[1,46],N=[1,47],P=[1,48],F=[1,50],I=[1,51],L=[1,52],R=[1,53],z=[1,54],B=[1,55],V=[1,56],H=[1,57],ee=[1,58],te=[1,59],ne=[1,60],re=[14,42],ie=[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],ae=[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],U=[1,82],W=[1,83],G=[1,84],K=[1,85],q=[12,14,42],oe=[12,14,33,42],se=[12,14,33,42,76,77,79,80],ce=[12,33],le=[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],J={trace:e(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:e(function(e,t,n,r,i,a,o){var s=a.length-1;switch(i){case 3:r.setDirection(`TB`);break;case 4:r.setDirection(`BT`);break;case 5:r.setDirection(`RL`);break;case 6:r.setDirection(`LR`);break;case 8:case 9:case 10:case 11:case 12:r.setC4Type(a[s-3]);break;case 19:r.setTitle(a[s].substring(6)),this.$=a[s].substring(6);break;case 20:r.setAccDescription(a[s].substring(15)),this.$=a[s].substring(15);break;case 21:this.$=a[s].trim(),r.setTitle(this.$);break;case 22:case 23:this.$=a[s].trim(),r.setAccDescription(this.$);break;case 28:a[s].splice(2,0,`ENTERPRISE`),r.addPersonOrSystemBoundary(...a[s]),this.$=a[s];break;case 29:a[s].splice(2,0,`SYSTEM`),r.addPersonOrSystemBoundary(...a[s]),this.$=a[s];break;case 30:r.addPersonOrSystemBoundary(...a[s]),this.$=a[s];break;case 31:a[s].splice(2,0,`CONTAINER`),r.addContainerBoundary(...a[s]),this.$=a[s];break;case 32:r.addDeploymentNode(`node`,...a[s]),this.$=a[s];break;case 33:r.addDeploymentNode(`nodeL`,...a[s]),this.$=a[s];break;case 34:r.addDeploymentNode(`nodeR`,...a[s]),this.$=a[s];break;case 35:r.popBoundaryParseStack();break;case 39:r.addPersonOrSystem(`person`,...a[s]),this.$=a[s];break;case 40:r.addPersonOrSystem(`external_person`,...a[s]),this.$=a[s];break;case 41:r.addPersonOrSystem(`system`,...a[s]),this.$=a[s];break;case 42:r.addPersonOrSystem(`system_db`,...a[s]),this.$=a[s];break;case 43:r.addPersonOrSystem(`system_queue`,...a[s]),this.$=a[s];break;case 44:r.addPersonOrSystem(`external_system`,...a[s]),this.$=a[s];break;case 45:r.addPersonOrSystem(`external_system_db`,...a[s]),this.$=a[s];break;case 46:r.addPersonOrSystem(`external_system_queue`,...a[s]),this.$=a[s];break;case 47:r.addContainer(`container`,...a[s]),this.$=a[s];break;case 48:r.addContainer(`container_db`,...a[s]),this.$=a[s];break;case 49:r.addContainer(`container_queue`,...a[s]),this.$=a[s];break;case 50:r.addContainer(`external_container`,...a[s]),this.$=a[s];break;case 51:r.addContainer(`external_container_db`,...a[s]),this.$=a[s];break;case 52:r.addContainer(`external_container_queue`,...a[s]),this.$=a[s];break;case 53:r.addComponent(`component`,...a[s]),this.$=a[s];break;case 54:r.addComponent(`component_db`,...a[s]),this.$=a[s];break;case 55:r.addComponent(`component_queue`,...a[s]),this.$=a[s];break;case 56:r.addComponent(`external_component`,...a[s]),this.$=a[s];break;case 57:r.addComponent(`external_component_db`,...a[s]),this.$=a[s];break;case 58:r.addComponent(`external_component_queue`,...a[s]),this.$=a[s];break;case 60:r.addRel(`rel`,...a[s]),this.$=a[s];break;case 61:r.addRel(`birel`,...a[s]),this.$=a[s];break;case 62:r.addRel(`rel_u`,...a[s]),this.$=a[s];break;case 63:r.addRel(`rel_d`,...a[s]),this.$=a[s];break;case 64:r.addRel(`rel_l`,...a[s]),this.$=a[s];break;case 65:r.addRel(`rel_r`,...a[s]),this.$=a[s];break;case 66:r.addRel(`rel_b`,...a[s]),this.$=a[s];break;case 67:a[s].splice(0,1),r.addRel(`rel`,...a[s]),this.$=a[s];break;case 68:r.updateElStyle(`update_el_style`,...a[s]),this.$=a[s];break;case 69:r.updateRelStyle(`update_rel_style`,...a[s]),this.$=a[s];break;case 70:r.updateLayoutConfig(`update_layout_config`,...a[s]),this.$=a[s];break;case 71:this.$=[a[s]];break;case 72:a[s].unshift(a[s-1]),this.$=a[s];break;case 73:case 75:this.$=a[s].trim();break;case 74:let e={};e[a[s-1].trim()]=a[s].trim(),this.$=e;break;case 76:this.$=``;break}},`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:n,23:r,24:i,26:a,28:o,29:49,30:61,32:62,34:s,36:l,37:u,38:d,39:f,40:p,41:m,43:23,44:h,45:g,46:_,47:v,48:y,49:b,50:x,51:S,52:C,53:w,54:T,55:E,56:D,57:O,58:k,59:A,60:j,61:M,62:N,63:P,64:F,65:I,66:L,67:R,68:z,69:B,70:V,71:H,72:ee,73:te,74:ne},{13:70,19:20,20:21,21:22,22:n,23:r,24:i,26:a,28:o,29:49,30:61,32:62,34:s,36:l,37:u,38:d,39:f,40:p,41:m,43:23,44:h,45:g,46:_,47:v,48:y,49:b,50:x,51:S,52:C,53:w,54:T,55:E,56:D,57:O,58:k,59:A,60:j,61:M,62:N,63:P,64:F,65:I,66:L,67:R,68:z,69:B,70:V,71:H,72:ee,73:te,74:ne},{13:71,19:20,20:21,21:22,22:n,23:r,24:i,26:a,28:o,29:49,30:61,32:62,34:s,36:l,37:u,38:d,39:f,40:p,41:m,43:23,44:h,45:g,46:_,47:v,48:y,49:b,50:x,51:S,52:C,53:w,54:T,55:E,56:D,57:O,58:k,59:A,60:j,61:M,62:N,63:P,64:F,65:I,66:L,67:R,68:z,69:B,70:V,71:H,72:ee,73:te,74:ne},{13:72,19:20,20:21,21:22,22:n,23:r,24:i,26:a,28:o,29:49,30:61,32:62,34:s,36:l,37:u,38:d,39:f,40:p,41:m,43:23,44:h,45:g,46:_,47:v,48:y,49:b,50:x,51:S,52:C,53:w,54:T,55:E,56:D,57:O,58:k,59:A,60:j,61:M,62:N,63:P,64:F,65:I,66:L,67:R,68:z,69:B,70:V,71:H,72:ee,73:te,74:ne},{13:73,19:20,20:21,21:22,22:n,23:r,24:i,26:a,28:o,29:49,30:61,32:62,34:s,36:l,37:u,38:d,39:f,40:p,41:m,43:23,44:h,45:g,46:_,47:v,48:y,49:b,50:x,51:S,52:C,53:w,54:T,55:E,56:D,57:O,58:k,59:A,60:j,61:M,62:N,63:P,64:F,65:I,66:L,67:R,68:z,69:B,70:V,71:H,72:ee,73:te,74:ne},{14:[1,74]},t(re,[2,13],{43:23,29:49,30:61,32:62,20:75,34:s,36:l,37:u,38:d,39:f,40:p,41:m,44:h,45:g,46:_,47:v,48:y,49:b,50:x,51:S,52:C,53:w,54:T,55:E,56:D,57:O,58:k,59:A,60:j,61:M,62:N,63:P,64:F,65:I,66:L,67:R,68:z,69:B,70:V,71:H,72:ee,73:te,74:ne}),t(re,[2,14]),t(ie,[2,16],{12:[1,76]}),t(re,[2,36],{12:[1,77]}),t(ae,[2,19]),t(ae,[2,20]),{25:[1,78]},{27:[1,79]},t(ae,[2,23]),{35:80,75:81,76:U,77:W,79:G,80:K},{35:86,75:81,76:U,77:W,79:G,80:K},{35:87,75:81,76:U,77:W,79:G,80:K},{35:88,75:81,76:U,77:W,79:G,80:K},{35:89,75:81,76:U,77:W,79:G,80:K},{35:90,75:81,76:U,77:W,79:G,80:K},{35:91,75:81,76:U,77:W,79:G,80:K},{35:92,75:81,76:U,77:W,79:G,80:K},{35:93,75:81,76:U,77:W,79:G,80:K},{35:94,75:81,76:U,77:W,79:G,80:K},{35:95,75:81,76:U,77:W,79:G,80:K},{35:96,75:81,76:U,77:W,79:G,80:K},{35:97,75:81,76:U,77:W,79:G,80:K},{35:98,75:81,76:U,77:W,79:G,80:K},{35:99,75:81,76:U,77:W,79:G,80:K},{35:100,75:81,76:U,77:W,79:G,80:K},{35:101,75:81,76:U,77:W,79:G,80:K},{35:102,75:81,76:U,77:W,79:G,80:K},{35:103,75:81,76:U,77:W,79:G,80:K},{35:104,75:81,76:U,77:W,79:G,80:K},t(q,[2,59]),{35:105,75:81,76:U,77:W,79:G,80:K},{35:106,75:81,76:U,77:W,79:G,80:K},{35:107,75:81,76:U,77:W,79:G,80:K},{35:108,75:81,76:U,77:W,79:G,80:K},{35:109,75:81,76:U,77:W,79:G,80:K},{35:110,75:81,76:U,77:W,79:G,80:K},{35:111,75:81,76:U,77:W,79:G,80:K},{35:112,75:81,76:U,77:W,79:G,80:K},{35:113,75:81,76:U,77:W,79:G,80:K},{35:114,75:81,76:U,77:W,79:G,80:K},{35:115,75:81,76:U,77:W,79:G,80:K},{20:116,29:49,30:61,32:62,34:s,36:l,37:u,38:d,39:f,40:p,41:m,43:23,44:h,45:g,46:_,47:v,48:y,49:b,50:x,51:S,52:C,53:w,54:T,55:E,56:D,57:O,58:k,59:A,60:j,61:M,62:N,63:P,64:F,65:I,66:L,67:R,68:z,69:B,70:V,71:H,72:ee,73:te,74:ne},{12:[1,118],33:[1,117]},{35:119,75:81,76:U,77:W,79:G,80:K},{35:120,75:81,76:U,77:W,79:G,80:K},{35:121,75:81,76:U,77:W,79:G,80:K},{35:122,75:81,76:U,77:W,79:G,80:K},{35:123,75:81,76:U,77:W,79:G,80:K},{35:124,75:81,76:U,77:W,79:G,80:K},{35:125,75:81,76:U,77:W,79:G,80:K},{14:[1,126]},{14:[1,127]},{14:[1,128]},{14:[1,129]},{1:[2,8]},t(re,[2,15]),t(ie,[2,17],{21:22,19:130,22:n,23:r,24:i,26:a,28:o}),t(re,[2,37],{19:20,20:21,21:22,43:23,29:49,30:61,32:62,13:131,22:n,23:r,24:i,26:a,28:o,34:s,36:l,37:u,38:d,39:f,40:p,41:m,44:h,45:g,46:_,47:v,48:y,49:b,50:x,51:S,52:C,53:w,54:T,55:E,56:D,57:O,58:k,59:A,60:j,61:M,62:N,63:P,64:F,65:I,66:L,67:R,68:z,69:B,70:V,71:H,72:ee,73:te,74:ne}),t(ae,[2,21]),t(ae,[2,22]),t(q,[2,39]),t(oe,[2,71],{75:81,35:132,76:U,77:W,79:G,80:K}),t(se,[2,73]),{78:[1,133]},t(se,[2,75]),t(se,[2,76]),t(q,[2,40]),t(q,[2,41]),t(q,[2,42]),t(q,[2,43]),t(q,[2,44]),t(q,[2,45]),t(q,[2,46]),t(q,[2,47]),t(q,[2,48]),t(q,[2,49]),t(q,[2,50]),t(q,[2,51]),t(q,[2,52]),t(q,[2,53]),t(q,[2,54]),t(q,[2,55]),t(q,[2,56]),t(q,[2,57]),t(q,[2,58]),t(q,[2,60]),t(q,[2,61]),t(q,[2,62]),t(q,[2,63]),t(q,[2,64]),t(q,[2,65]),t(q,[2,66]),t(q,[2,67]),t(q,[2,68]),t(q,[2,69]),t(q,[2,70]),{31:134,42:[1,135]},{12:[1,136]},{33:[1,137]},t(ce,[2,28]),t(ce,[2,29]),t(ce,[2,30]),t(ce,[2,31]),t(ce,[2,32]),t(ce,[2,33]),t(ce,[2,34]),{1:[2,9]},{1:[2,10]},{1:[2,11]},{1:[2,12]},t(ie,[2,18]),t(re,[2,38]),t(oe,[2,72]),t(se,[2,74]),t(q,[2,24]),t(q,[2,35]),t(le,[2,25]),t(le,[2,26],{12:[1,138]}),t(le,[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:e(function(e,t){if(t.recoverable)this.trace(e);else{var n=Error(e);throw n.hash=t,n}},`parseError`),parse:e(function(t){var n=this,r=[0],i=[],a=[null],o=[],s=this.table,l=``,u=0,d=0,f=0,p=2,m=1,h=o.slice.call(arguments,1),g=Object.create(this.lexer),_={yy:{}};for(var v in this.yy)Object.prototype.hasOwnProperty.call(this.yy,v)&&(_.yy[v]=this.yy[v]);g.setInput(t,_.yy),_.yy.lexer=g,_.yy.parser=this,g.yylloc===void 0&&(g.yylloc={});var y=g.yylloc;o.push(y);var b=g.options&&g.options.ranges;typeof _.yy.parseError==`function`?this.parseError=_.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function x(e){r.length-=2*e,a.length-=e,o.length-=e}e(x,`popStack`);function S(){var e=i.pop()||g.lex()||m;return typeof e!=`number`&&(e instanceof Array&&(i=e,e=i.pop()),e=n.symbols_[e]||e),e}e(S,`lex`);for(var C,w,T,E,D,O={},k,A,j,M;;){if(T=r[r.length-1],this.defaultActions[T]?E=this.defaultActions[T]:(C??=S(),E=s[T]&&s[T][C]),E===void 0||!E.length||!E[0]){var N=``;for(k in M=[],s[T])this.terminals_[k]&&k>p&&M.push(`'`+this.terminals_[k]+`'`);N=g.showPosition?`Parse error on line `+(u+1)+`:
2
2
  `+g.showPosition()+`
3
3
  Expecting `+M.join(`, `)+`, got '`+(this.terminals_[C]||C)+`'`:`Parse error on line `+(u+1)+`: Unexpected `+(C==m?`end of input`:`'`+(this.terminals_[C]||C)+`'`),this.parseError(N,{text:g.match,token:this.terminals_[C]||C,line:g.yylineno,loc:y,expected:M})}if(E[0]instanceof Array&&E.length>1)throw Error(`Parse Error: multiple actions possible at state: `+T+`, token: `+C);switch(E[0]){case 1:r.push(C),a.push(g.yytext),o.push(g.yylloc),r.push(E[1]),C=null,w?(C=w,w=null):(d=g.yyleng,l=g.yytext,u=g.yylineno,y=g.yylloc,f>0&&f--);break;case 2:if(A=this.productions_[E[1]][1],O.$=a[a.length-A],O._$={first_line:o[o.length-(A||1)].first_line,last_line:o[o.length-1].last_line,first_column:o[o.length-(A||1)].first_column,last_column:o[o.length-1].last_column},b&&(O._$.range=[o[o.length-(A||1)].range[0],o[o.length-1].range[1]]),D=this.performAction.apply(O,[l,d,u,_.yy,E[1],a,o].concat(h)),D!==void 0)return D;A&&(r=r.slice(0,-1*A*2),a=a.slice(0,-1*A),o=o.slice(0,-1*A)),r.push(this.productions_[E[1]][0]),a.push(O.$),o.push(O._$),j=s[r[r.length-2]][r[r.length-1]],r.push(j);break;case 3:return!0}}return!0},`parse`)};J.lexer=(function(){return{EOF:1,parseError:e(function(e,t){if(this.yy.parser)this.yy.parser.parseError(e,t);else throw Error(e)},`parseError`),setInput:e(function(e,t){return this.yy=t||this.yy||{},this._input=e,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match=``,this.conditionStack=[`INITIAL`],this.yylloc={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:e(function(){var e=this._input[0];return this.yytext+=e,this.yyleng++,this.offset++,this.match+=e,this.matched+=e,e.match(/(?:\r\n?|\n).*/g)?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),e},`input`),unput:e(function(e){var t=e.length,n=e.split(/(?:\r\n?|\n)/g);this._input=e+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-t),this.offset-=t;var r=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),n.length-1&&(this.yylineno-=n.length-1);var i=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:n?(n.length===r.length?this.yylloc.first_column:0)+r[r.length-n.length].length-n[0].length:this.yylloc.first_column-t},this.options.ranges&&(this.yylloc.range=[i[0],i[0]+this.yyleng-t]),this.yyleng=this.yytext.length,this},`unput`),more:e(function(){return this._more=!0,this},`more`),reject:e(function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError(`Lexical error on line `+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true).
4
4
  `+this.showPosition(),{text:``,token:null,line:this.yylineno});return this},`reject`),less:e(function(e){this.unput(this.match.slice(e))},`less`),pastInput:e(function(){var e=this.matched.substr(0,this.matched.length-this.match.length);return(e.length>20?`...`:``)+e.substr(-20).replace(/\n/g,``)},`pastInput`),upcomingInput:e(function(){var e=this.match;return e.length<20&&(e+=this._input.substr(0,20-e.length)),(e.substr(0,20)+(e.length>20?`...`:``)).replace(/\n/g,``)},`upcomingInput`),showPosition:e(function(){var e=this.pastInput(),t=Array(e.length+1).join(`-`);return e+this.upcomingInput()+`
@@ -1,4 +1,4 @@
1
- import{n as e,r as t}from"./chunk-AGHRB4JF-CYdXVA2-.js";import{A as n,B as r,M as i,T as a,b as o,g as s,x as c,z as l}from"./chunk-CSCIHK7Q-CAE1p4Em.js";import{Nt as u}from"./vendor-utils-BnxL60_-.js";import{a as d,r as f,u as p}from"./chunk-5ZQYHXKU-Bd-RFO5i.js";import{n as m,r as h}from"./chunk-O5CBEL6O-BTuvXKFi.js";import{n as g,t as _}from"./chunk-L5ZTLDWV-D208QbfC.js";import{a as v,i as y,r as b,t as x}from"./chunk-NZK2D7GU-CTqFQ8K5.js";import{t as S}from"./rough.esm-C0Gkx4O1.js";var C=e(async(e,t,n)=>{let r,i=t.useHtmlLabels||s(c()?.htmlLabels);r=n||`node default`;let a=e.insert(`g`).attr(`class`,r).attr(`id`,t.domId||t.id),o=a.insert(`g`).attr(`class`,`label`).attr(`style`,p(t.labelStyle)),f;f=t.label===void 0?``:typeof t.label==`string`?t.label:t.label[0];let h=!!t.icon||!!t.img,g=t.labelType===`markdown`,v=await m(o,l(d(f),c()),{useHtmlLabels:i,width:t.width||c().flowchart?.wrappingWidth,classes:g?`markdown-node-label`:``,style:t.labelStyle,addSvgBackground:h,markdown:g},c()),y=v.getBBox(),b=(t?.padding??0)/2;if(i){let e=v.children[0],t=u(v);await _(e,f),y=e.getBoundingClientRect(),t.attr(`width`,y.width),t.attr(`height`,y.height)}return i?o.attr(`transform`,`translate(`+-y.width/2+`, `+-y.height/2+`)`):o.attr(`transform`,`translate(0, `+-y.height/2+`)`),t.centerLabel&&o.attr(`transform`,`translate(`+-y.width/2+`, `+-y.height/2+`)`),o.insert(`rect`,`:first-child`),{shapeSvg:a,bbox:y,halfPadding:b,label:o}},`labelHelper`),w=e(async(e,t,n)=>{let r=n.useHtmlLabels??a(c()),i=e.insert(`g`).attr(`class`,`label`).attr(`style`,n.labelStyle||``),o=await m(i,l(d(t),c()),{useHtmlLabels:r,width:n.width||c()?.flowchart?.wrappingWidth,style:n.labelStyle,addSvgBackground:!!n.icon||!!n.img}),s=o.getBBox(),f=n.padding/2;if(a(c())){let e=o.children[0],t=u(o);s=e.getBoundingClientRect(),t.attr(`width`,s.width),t.attr(`height`,s.height)}return r?i.attr(`transform`,`translate(`+-s.width/2+`, `+-s.height/2+`)`):i.attr(`transform`,`translate(0, `+-s.height/2+`)`),n.centerLabel&&i.attr(`transform`,`translate(`+-s.width/2+`, `+-s.height/2+`)`),i.insert(`rect`,`:first-child`),{shapeSvg:e,bbox:s,halfPadding:f,label:i}},`insertLabel`),T=e((e,t)=>{let n=t.node().getBBox();e.width=n.width,e.height=n.height},`updateNodeBounds`),E=e((e,t)=>(e.look===`handDrawn`?`rough-node`:`node`)+` `+e.cssClasses+` `+(t||``),`getNodeClasses`);function D(e){let t=e.map((e,t)=>`${t===0?`M`:`L`}${e.x},${e.y}`);return t.push(`Z`),t.join(` `)}e(D,`createPathFromPoints`);function O(e,t,n,r,i,a){let o=[],s=n-e,c=r-t,l=s/a,u=2*Math.PI/l,d=t+c/2;for(let t=0;t<=50;t++){let n=e+t/50*s,r=d+i*Math.sin(u*(n-e));o.push({x:n,y:r})}return o}e(O,`generateFullSineWavePoints`);function k(e,t,n,r,i,a){let o=[],s=i*Math.PI/180,c=(a*Math.PI/180-s)/(r-1);for(let i=0;i<r;i++){let r=s+i*c,a=e+n*Math.cos(r),l=t+n*Math.sin(r);o.push({x:-a,y:-l})}return o}e(k,`generateCirclePoints`);function A(t){let n=Array.from(t.childNodes).filter(e=>e.tagName===`path`),r=document.createElementNS(`http://www.w3.org/2000/svg`,`path`),i=n.map(e=>e.getAttribute(`d`)).filter(e=>e!==null).join(` `);r.setAttribute(`d`,i);let a=n.find(e=>e.getAttribute(`fill`)!==`none`),o=n.find(e=>e.getAttribute(`stroke`)!==`none`),s=e((e,t)=>e?.getAttribute(t)??void 0,`getAttr`);if(a){let e={fill:s(a,`fill`),"fill-opacity":s(a,`fill-opacity`)??`1`};Object.entries(e).forEach(([e,t])=>{t&&r.setAttribute(e,t)})}if(o){let e={stroke:s(o,`stroke`),"stroke-width":s(o,`stroke-width`)??`1`,"stroke-opacity":s(o,`stroke-opacity`)??`1`};Object.entries(e).forEach(([e,t])=>{t&&r.setAttribute(e,t)})}let c=document.createElementNS(`http://www.w3.org/2000/svg`,`g`);return c.appendChild(r),c}e(A,`mergePaths`);var j=e((e,t)=>{var n=e.x,r=e.y,i=t.x-n,a=t.y-r,o=e.width/2,s=e.height/2,c,l;return Math.abs(a)*o>Math.abs(i)*s?(a<0&&(s=-s),c=a===0?0:s*i/a,l=s):(i<0&&(o=-o),c=o,l=i===0?0:o*a/i),{x:n+c,y:r+l}},`intersectRect`),M=e(async(e,t,n,r=!1,i=!1)=>{let o=t||``;typeof o==`object`&&(o=o[0]);let s=c(),l=a(s);return await m(e,o,{style:n,isTitle:r,useHtmlLabels:l,markdown:!1,isNode:i,width:1/0},s)},`createLabel`),N=e((e,t,n,r,i)=>[`M`,e+i,t,`H`,e+n-i,`A`,i,i,0,0,1,e+n,t+i,`V`,t+r-i,`A`,i,i,0,0,1,e+n-i,t+r,`H`,e+i,`A`,i,i,0,0,1,e,t+r-i,`V`,t+i,`A`,i,i,0,0,1,e+i,t,`Z`].join(` `),`createRoundedRectPathD`),P=e(async(e,n)=>{t.info(`Creating subgraph rect for `,n.id,n);let r=c(),{themeVariables:i,handDrawnSeed:o}=r,{clusterBkg:s,clusterBorder:l}=i,{labelStyles:d,nodeStyles:f,borderStyles:p,backgroundStyles:h}=y(n),_=e.insert(`g`).attr(`class`,`cluster `+n.cssClasses).attr(`id`,n.domId).attr(`data-look`,n.look),b=a(r),x=_.insert(`g`).attr(`class`,`cluster-label `),C;C=n.labelType===`markdown`?await m(x,n.label,{style:n.labelStyle,useHtmlLabels:b,isNode:!0,width:n.width}):await M(x,n.label,n.labelStyle||``,!1,!0);let w=C.getBBox();if(a(r)){let e=C.children[0],t=u(C);w=e.getBoundingClientRect(),t.attr(`width`,w.width),t.attr(`height`,w.height)}let T=n.width<=w.width+n.padding?w.width+n.padding:n.width;n.width<=w.width+n.padding?n.diff=(T-n.width)/2-n.padding:n.diff=-n.padding;let E=n.height,D=n.x-T/2,O=n.y-E/2;t.trace(`Data `,n,JSON.stringify(n));let k;if(n.look===`handDrawn`){let e=S.svg(_),r=v(n,{roughness:.7,fill:s,stroke:l,fillWeight:3,seed:o}),i=e.path(N(D,O,T,E,0),r);k=_.insert(()=>(t.debug(`Rough node insert CXC`,i),i),`:first-child`),k.select(`path:nth-child(2)`).attr(`style`,p.join(`;`)),k.select(`path`).attr(`style`,h.join(`;`).replace(`fill`,`stroke`))}else k=_.insert(`rect`,`:first-child`),k.attr(`style`,f).attr(`rx`,n.rx).attr(`ry`,n.ry).attr(`x`,D).attr(`y`,O).attr(`width`,T).attr(`height`,E);let{subGraphTitleTopMargin:A}=g(r);if(x.attr(`transform`,`translate(${n.x-w.width/2}, ${n.y-n.height/2+A})`),d){let e=x.select(`span`);e&&e.attr(`style`,d)}let P=k.node().getBBox();return n.offsetX=0,n.width=P.width,n.height=P.height,n.offsetY=w.height-n.padding/2,n.intersect=function(e){return j(n,e)},{cluster:_,labelBBox:w}},`rect`),F={rect:P,squareRect:P,roundedWithTitle:e(async(e,t)=>{let n=c(),{themeVariables:r,handDrawnSeed:i}=n,{altBackground:o,compositeBackground:s,compositeTitleBackground:l,nodeBorder:d}=r,f=e.insert(`g`).attr(`class`,t.cssClasses).attr(`id`,t.domId).attr(`data-id`,t.id).attr(`data-look`,t.look),p=f.insert(`g`,`:first-child`),m=f.insert(`g`).attr(`class`,`cluster-label`),h=f.append(`rect`),g=await M(m,t.label,t.labelStyle,void 0,!0),_=g.getBBox();if(a(n)){let e=g.children[0],t=u(g);_=e.getBoundingClientRect(),t.attr(`width`,_.width),t.attr(`height`,_.height)}let v=0*t.padding,y=v/2,b=(t.width<=_.width+t.padding?_.width+t.padding:t.width)+v;t.width<=_.width+t.padding?t.diff=(b-t.width)/2-t.padding:t.diff=-t.padding;let x=t.height+v,C=t.height+v-_.height-6,w=t.x-b/2,T=t.y-x/2;t.width=b;let E=t.y-t.height/2-y+_.height+2,D;if(t.look===`handDrawn`){let e=t.cssClasses.includes(`statediagram-cluster-alt`),n=S.svg(f),r=t.rx||t.ry?n.path(N(w,T,b,x,10),{roughness:.7,fill:l,fillStyle:`solid`,stroke:d,seed:i}):n.rectangle(w,T,b,x,{seed:i});D=f.insert(()=>r,`:first-child`);let a=n.rectangle(w,E,b,C,{fill:e?o:s,fillStyle:e?`hachure`:`solid`,stroke:d,seed:i});D=f.insert(()=>r,`:first-child`),h=f.insert(()=>a)}else D=p.insert(`rect`,`:first-child`),D.attr(`class`,`outer`).attr(`x`,w).attr(`y`,T).attr(`width`,b).attr(`height`,x).attr(`data-look`,t.look),h.attr(`class`,`inner`).attr(`x`,w).attr(`y`,E).attr(`width`,b).attr(`height`,C);return m.attr(`transform`,`translate(${t.x-_.width/2}, ${T+1-(a(n)?0:3)})`),t.height=D.node().getBBox().height,t.offsetX=0,t.offsetY=_.height-t.padding/2,t.labelBBox=_,t.intersect=function(e){return j(t,e)},{cluster:f,labelBBox:_}},`roundedWithTitle`),noteGroup:e((e,t)=>{let n=e.insert(`g`).attr(`class`,`note-cluster`).attr(`id`,t.domId),r=n.insert(`rect`,`:first-child`),i=0*t.padding,a=i/2;r.attr(`rx`,t.rx).attr(`ry`,t.ry).attr(`x`,t.x-t.width/2-a).attr(`y`,t.y-t.height/2-a).attr(`width`,t.width+i).attr(`height`,t.height+i).attr(`fill`,`none`);let o=r.node().getBBox();return t.width=o.width,t.height=o.height,t.intersect=function(e){return j(t,e)},{cluster:n,labelBBox:{width:0,height:0}}},`noteGroup`),divider:e((e,t)=>{let{themeVariables:n,handDrawnSeed:r}=c(),{nodeBorder:i}=n,a=e.insert(`g`).attr(`class`,t.cssClasses).attr(`id`,t.domId).attr(`data-look`,t.look),o=a.insert(`g`,`:first-child`),s=0*t.padding,l=t.width+s;t.diff=-t.padding;let u=t.height+s,d=t.x-l/2,f=t.y-u/2;t.width=l;let p;if(t.look===`handDrawn`){let e=S.svg(a).rectangle(d,f,l,u,{fill:`lightgrey`,roughness:.5,strokeLineDash:[5],stroke:i,seed:r});p=a.insert(()=>e,`:first-child`)}else{p=o.insert(`rect`,`:first-child`);let e=`outer`;e=(t.look,`divider`),p.attr(`class`,e).attr(`x`,d).attr(`y`,f).attr(`width`,l).attr(`height`,u).attr(`data-look`,t.look)}return t.height=p.node().getBBox().height,t.offsetX=0,t.offsetY=0,t.intersect=function(e){return j(t,e)},{cluster:a,labelBBox:{}}},`divider`),kanbanSection:e(async(e,n)=>{t.info(`Creating subgraph rect for `,n.id,n);let r=c(),{themeVariables:i,handDrawnSeed:o}=r,{clusterBkg:s,clusterBorder:l}=i,{labelStyles:d,nodeStyles:f,borderStyles:p,backgroundStyles:h}=y(n),_=e.insert(`g`).attr(`class`,`cluster `+n.cssClasses).attr(`id`,n.domId).attr(`data-look`,n.look),b=a(r),x=_.insert(`g`).attr(`class`,`cluster-label `),C=await m(x,n.label,{style:n.labelStyle,useHtmlLabels:b,isNode:!0,width:n.width}),w=C.getBBox();if(a(r)){let e=C.children[0],t=u(C);w=e.getBoundingClientRect(),t.attr(`width`,w.width),t.attr(`height`,w.height)}let T=n.width<=w.width+n.padding?w.width+n.padding:n.width;n.width<=w.width+n.padding?n.diff=(T-n.width)/2-n.padding:n.diff=-n.padding;let E=n.height,D=n.x-T/2,O=n.y-E/2;t.trace(`Data `,n,JSON.stringify(n));let k;if(n.look===`handDrawn`){let e=S.svg(_),r=v(n,{roughness:.7,fill:s,stroke:l,fillWeight:4,seed:o}),i=e.path(N(D,O,T,E,n.rx),r);k=_.insert(()=>(t.debug(`Rough node insert CXC`,i),i),`:first-child`),k.select(`path:nth-child(2)`).attr(`style`,p.join(`;`)),k.select(`path`).attr(`style`,h.join(`;`).replace(`fill`,`stroke`))}else k=_.insert(`rect`,`:first-child`),k.attr(`style`,f).attr(`rx`,n.rx).attr(`ry`,n.ry).attr(`x`,D).attr(`y`,O).attr(`width`,T).attr(`height`,E);let{subGraphTitleTopMargin:A}=g(r);if(x.attr(`transform`,`translate(${n.x-w.width/2}, ${n.y-n.height/2+A})`),d){let e=x.select(`span`);e&&e.attr(`style`,d)}let M=k.node().getBBox();return n.offsetX=0,n.width=M.width,n.height=M.height,n.offsetY=w.height-n.padding/2,n.intersect=function(e){return j(n,e)},{cluster:_,labelBBox:w}},`kanbanSection`)},I=new Map,ee=e(async(e,t)=>{let n=await F[t.shape||`rect`](e,t);return I.set(t.id,n),n},`insertCluster`),te=e(()=>{I=new Map},`clear`);function L(e,t){return e.intersect(t)}e(L,`intersectNode`);var R=L;function ne(e,t,n,r){var i=e.x,a=e.y,o=i-r.x,s=a-r.y,c=Math.sqrt(t*t*s*s+n*n*o*o),l=Math.abs(t*n*o/c);r.x<i&&(l=-l);var u=Math.abs(t*n*s/c);return r.y<a&&(u=-u),{x:i+l,y:a+u}}e(ne,`intersectEllipse`);var z=ne;function B(e,t,n){return z(e,t,t,n)}e(B,`intersectCircle`);var V=B;function H(e,t,n,r){{let i=t.y-e.y,a=e.x-t.x,o=t.x*e.y-e.x*t.y,s=i*n.x+a*n.y+o,c=i*r.x+a*r.y+o,l=1e-6;if(s!==0&&c!==0&&re(s,c))return;let u=r.y-n.y,d=n.x-r.x,f=r.x*n.y-n.x*r.y,p=u*e.x+d*e.y+f,m=u*t.x+d*t.y+f;if(Math.abs(p)<l&&Math.abs(m)<l&&re(p,m))return;let h=i*d-u*a;if(h===0)return;let g=Math.abs(h/2),_=a*f-d*o,v=_<0?(_-g)/h:(_+g)/h;return _=u*o-i*f,{x:v,y:_<0?(_-g)/h:(_+g)/h}}}e(H,`intersectLine`);function re(e,t){return e*t>0}e(re,`sameSign`);var ie=H;function U(e,t,n){let r=e.x,i=e.y,a=[],o=1/0,s=1/0;typeof t.forEach==`function`?t.forEach(function(e){o=Math.min(o,e.x),s=Math.min(s,e.y)}):(o=Math.min(o,t.x),s=Math.min(s,t.y));let c=r-e.width/2-o,l=i-e.height/2-s;for(let r=0;r<t.length;r++){let i=t[r],o=t[r<t.length-1?r+1:0],s=ie(e,n,{x:c+i.x,y:l+i.y},{x:c+o.x,y:l+o.y});s&&a.push(s)}return a.length?(a.length>1&&a.sort(function(e,t){let r=e.x-n.x,i=e.y-n.y,a=Math.sqrt(r*r+i*i),o=t.x-n.x,s=t.y-n.y,c=Math.sqrt(o*o+s*s);return a<c?-1:a===c?0:1}),a[0]):e}e(U,`intersectPolygon`);var W={node:R,circle:V,ellipse:z,polygon:U,rect:j};function G(e,n){let{labelStyles:r}=y(n);n.labelStyle=r;let i=E(n),a=i;i||(a=`anchor`);let o=e.insert(`g`).attr(`class`,a).attr(`id`,n.domId||n.id),{cssStyles:s}=n,c=S.svg(o),l=v(n,{fill:`black`,stroke:`none`,fillStyle:`solid`});n.look!==`handDrawn`&&(l.roughness=0);let u=c.circle(0,0,2,l),d=o.insert(()=>u,`:first-child`);return d.attr(`class`,`anchor`).attr(`style`,p(s)),T(n,d),n.intersect=function(e){return t.info(`Circle intersect`,n,1,e),W.circle(n,1,e)},o}e(G,`anchor`);function K(e,t,n,r,i,a,o){let s=(e+n)/2,c=(t+r)/2,l=Math.atan2(r-t,n-e),u=(n-e)/2,d=(r-t)/2,f=u/i,p=d/a,m=Math.sqrt(f**2+p**2);if(m>1)throw Error(`The given radii are too small to create an arc between the points.`);let h=Math.sqrt(1-m**2),g=s+h*a*Math.sin(l)*(o?-1:1),_=c-h*i*Math.cos(l)*(o?-1:1),v=Math.atan2((t-_)/a,(e-g)/i),y=Math.atan2((r-_)/a,(n-g)/i)-v;o&&y<0&&(y+=2*Math.PI),!o&&y>0&&(y-=2*Math.PI);let b=[];for(let e=0;e<20;e++){let t=v+e/19*y,n=g+i*Math.cos(t),r=_+a*Math.sin(t);b.push({x:n,y:r})}return b}e(K,`generateArcPoints`);function ae(e,t,n){let[r,i]=[t,n].sort((e,t)=>t-e);return i*(1-Math.sqrt(1-(e/r/2)**2))}e(ae,`calculateArcSagitta`);async function oe(t,n){let{labelStyles:r,nodeStyles:i}=y(n);n.labelStyle=r;let a=n.padding??0,o=n.look===`neo`?16:a,s=n.look===`neo`?12:a,c=e(e=>e+s,`calcTotalHeight`),l=e(e=>{let t=e/2;return[t/(2.5+e/50),t]},`calcEllipseRadius`),{shapeSvg:u,bbox:d}=await C(t,n,E(n)),f=c(n?.height?n?.height:d.height),[p,m]=l(f),h=ae(f,p,m),g=(n?.width?n?.width:d.width)+o*2+h-h,_=f,{cssStyles:b}=n,x=[{x:g/2,y:-_/2},{x:-g/2,y:-_/2},...K(-g/2,-_/2,-g/2,_/2,p,m,!1),{x:g/2,y:_/2},...K(g/2,_/2,g/2,-_/2,p,m,!0)],w=S.svg(u),O=v(n,{});n.look!==`handDrawn`&&(O.roughness=0,O.fillStyle=`solid`);let k=D(x),A=w.path(k,O),j=u.insert(()=>A,`:first-child`);return j.attr(`class`,`basic label-container outer-path`),b&&n.look!==`handDrawn`&&j.selectAll(`path`).attr(`style`,b),i&&n.look!==`handDrawn`&&j.selectAll(`path`).attr(`style`,i),j.attr(`transform`,`translate(${p/2}, 0)`),T(n,j),n.intersect=function(e){return W.polygon(n,x,e)},u}e(oe,`bowTieRect`);function q(e,t,n,r){return e.insert(`polygon`,`:first-child`).attr(`points`,r.map(function(e){return e.x+`,`+e.y}).join(` `)).attr(`class`,`label-container`).attr(`transform`,`translate(`+-t/2+`,`+n/2+`)`)}e(q,`insertPolygonShape`);var se=12;async function ce(e,t){let{labelStyles:n,nodeStyles:r}=y(t);t.labelStyle=n;let i=t.padding??0,a=t.look===`neo`?28:i,o=t.look===`neo`?24:i,{shapeSvg:s,bbox:c}=await C(e,t,E(t)),l=(t?.width??c.width)+(t.look===`neo`?a*2:a+se),u=(t?.height??c.height)+(t.look===`neo`?o*2:o),d=l,f=-u,p=[{x:0+se,y:f},{x:d,y:f},{x:d,y:0},{x:0,y:0},{x:0,y:f+se},{x:0+se,y:f}],m,{cssStyles:h}=t;if(t.look===`handDrawn`){let e=S.svg(s),n=v(t,{}),r=D(p),i=e.path(r,n);m=s.insert(()=>i,`:first-child`).attr(`transform`,`translate(${-l/2}, ${u/2})`),h&&m.attr(`style`,h)}else m=q(s,l,u,p);return r&&m.attr(`style`,r),T(t,m),t.intersect=function(e){return W.polygon(t,p,e)},s}e(ce,`card`);function le(e,t){let{nodeStyles:n}=y(t);t.label=``;let r=e.insert(`g`).attr(`class`,E(t)).attr(`id`,t.domId??t.id),{cssStyles:i}=t,a=Math.max(28,t.width??0),o=[{x:0,y:a/2},{x:a/2,y:0},{x:0,y:-a/2},{x:-a/2,y:0}],s=S.svg(r),c=v(t,{});t.look!==`handDrawn`&&(c.roughness=0,c.fillStyle=`solid`);let l=D(o),u=s.path(l,c),d=r.insert(()=>u,`:first-child`);return i&&t.look!==`handDrawn`&&d.selectAll(`path`).attr(`style`,i),n&&t.look!==`handDrawn`&&d.selectAll(`path`).attr(`style`,n),t.width=28,t.height=28,t.intersect=function(e){return W.polygon(t,o,e)},r}e(le,`choice`);async function ue(e,n,r){let{labelStyles:i,nodeStyles:a}=y(n);n.labelStyle=i;let{shapeSvg:o,bbox:s,halfPadding:c}=await C(e,n,E(n)),l=r?.padding??c,u=n.look===`neo`?s.width/2+32:s.width/2+l,d,{cssStyles:f}=n;if(n.look===`handDrawn`){let e=S.svg(o),t=v(n,{}),r=e.circle(0,0,u*2,t);d=o.insert(()=>r,`:first-child`),d.attr(`class`,`basic label-container`).attr(`style`,p(f))}else d=o.insert(`circle`,`:first-child`).attr(`class`,`basic label-container`).attr(`style`,a).attr(`r`,u).attr(`cx`,0).attr(`cy`,0);return T(n,d),n.calcIntersect=function(e,t){let n=e.width/2;return W.circle(e,n,t)},n.intersect=function(e){return t.info(`Circle intersect`,n,u,e),W.circle(n,u,e)},o}e(ue,`circle`);function de(e){let t=Math.cos(Math.PI/4),n=Math.sin(Math.PI/4),r=e*2,i={x:r/2*t,y:r/2*n},a={x:-(r/2)*t,y:r/2*n},o={x:-(r/2)*t,y:-(r/2)*n},s={x:r/2*t,y:-(r/2)*n};return`M ${a.x},${a.y} L ${s.x},${s.y}
1
+ import{n as e,r as t}from"./chunk-AGHRB4JF-CYdXVA2-.js";import{A as n,B as r,M as i,T as a,b as o,g as s,x as c,z as l}from"./chunk-CSCIHK7Q-CAE1p4Em.js";import{Vt as u}from"./vendor-utils-rVejrfMR.js";import{a as d,r as f,u as p}from"./chunk-5ZQYHXKU-Bli4k6GI.js";import{n as m,r as h}from"./chunk-O5CBEL6O-D-jDqsN2.js";import{n as g,t as _}from"./chunk-L5ZTLDWV-DfUlBdXN.js";import{a as v,i as y,r as b,t as x}from"./chunk-NZK2D7GU-CTqFQ8K5.js";import{t as S}from"./rough.esm-C0Gkx4O1.js";var C=e(async(e,t,n)=>{let r,i=t.useHtmlLabels||s(c()?.htmlLabels);r=n||`node default`;let a=e.insert(`g`).attr(`class`,r).attr(`id`,t.domId||t.id),o=a.insert(`g`).attr(`class`,`label`).attr(`style`,p(t.labelStyle)),f;f=t.label===void 0?``:typeof t.label==`string`?t.label:t.label[0];let h=!!t.icon||!!t.img,g=t.labelType===`markdown`,v=await m(o,l(d(f),c()),{useHtmlLabels:i,width:t.width||c().flowchart?.wrappingWidth,classes:g?`markdown-node-label`:``,style:t.labelStyle,addSvgBackground:h,markdown:g},c()),y=v.getBBox(),b=(t?.padding??0)/2;if(i){let e=v.children[0],t=u(v);await _(e,f),y=e.getBoundingClientRect(),t.attr(`width`,y.width),t.attr(`height`,y.height)}return i?o.attr(`transform`,`translate(`+-y.width/2+`, `+-y.height/2+`)`):o.attr(`transform`,`translate(0, `+-y.height/2+`)`),t.centerLabel&&o.attr(`transform`,`translate(`+-y.width/2+`, `+-y.height/2+`)`),o.insert(`rect`,`:first-child`),{shapeSvg:a,bbox:y,halfPadding:b,label:o}},`labelHelper`),w=e(async(e,t,n)=>{let r=n.useHtmlLabels??a(c()),i=e.insert(`g`).attr(`class`,`label`).attr(`style`,n.labelStyle||``),o=await m(i,l(d(t),c()),{useHtmlLabels:r,width:n.width||c()?.flowchart?.wrappingWidth,style:n.labelStyle,addSvgBackground:!!n.icon||!!n.img}),s=o.getBBox(),f=n.padding/2;if(a(c())){let e=o.children[0],t=u(o);s=e.getBoundingClientRect(),t.attr(`width`,s.width),t.attr(`height`,s.height)}return r?i.attr(`transform`,`translate(`+-s.width/2+`, `+-s.height/2+`)`):i.attr(`transform`,`translate(0, `+-s.height/2+`)`),n.centerLabel&&i.attr(`transform`,`translate(`+-s.width/2+`, `+-s.height/2+`)`),i.insert(`rect`,`:first-child`),{shapeSvg:e,bbox:s,halfPadding:f,label:i}},`insertLabel`),T=e((e,t)=>{let n=t.node().getBBox();e.width=n.width,e.height=n.height},`updateNodeBounds`),E=e((e,t)=>(e.look===`handDrawn`?`rough-node`:`node`)+` `+e.cssClasses+` `+(t||``),`getNodeClasses`);function D(e){let t=e.map((e,t)=>`${t===0?`M`:`L`}${e.x},${e.y}`);return t.push(`Z`),t.join(` `)}e(D,`createPathFromPoints`);function O(e,t,n,r,i,a){let o=[],s=n-e,c=r-t,l=s/a,u=2*Math.PI/l,d=t+c/2;for(let t=0;t<=50;t++){let n=e+t/50*s,r=d+i*Math.sin(u*(n-e));o.push({x:n,y:r})}return o}e(O,`generateFullSineWavePoints`);function k(e,t,n,r,i,a){let o=[],s=i*Math.PI/180,c=(a*Math.PI/180-s)/(r-1);for(let i=0;i<r;i++){let r=s+i*c,a=e+n*Math.cos(r),l=t+n*Math.sin(r);o.push({x:-a,y:-l})}return o}e(k,`generateCirclePoints`);function A(t){let n=Array.from(t.childNodes).filter(e=>e.tagName===`path`),r=document.createElementNS(`http://www.w3.org/2000/svg`,`path`),i=n.map(e=>e.getAttribute(`d`)).filter(e=>e!==null).join(` `);r.setAttribute(`d`,i);let a=n.find(e=>e.getAttribute(`fill`)!==`none`),o=n.find(e=>e.getAttribute(`stroke`)!==`none`),s=e((e,t)=>e?.getAttribute(t)??void 0,`getAttr`);if(a){let e={fill:s(a,`fill`),"fill-opacity":s(a,`fill-opacity`)??`1`};Object.entries(e).forEach(([e,t])=>{t&&r.setAttribute(e,t)})}if(o){let e={stroke:s(o,`stroke`),"stroke-width":s(o,`stroke-width`)??`1`,"stroke-opacity":s(o,`stroke-opacity`)??`1`};Object.entries(e).forEach(([e,t])=>{t&&r.setAttribute(e,t)})}let c=document.createElementNS(`http://www.w3.org/2000/svg`,`g`);return c.appendChild(r),c}e(A,`mergePaths`);var j=e((e,t)=>{var n=e.x,r=e.y,i=t.x-n,a=t.y-r,o=e.width/2,s=e.height/2,c,l;return Math.abs(a)*o>Math.abs(i)*s?(a<0&&(s=-s),c=a===0?0:s*i/a,l=s):(i<0&&(o=-o),c=o,l=i===0?0:o*a/i),{x:n+c,y:r+l}},`intersectRect`),M=e(async(e,t,n,r=!1,i=!1)=>{let o=t||``;typeof o==`object`&&(o=o[0]);let s=c(),l=a(s);return await m(e,o,{style:n,isTitle:r,useHtmlLabels:l,markdown:!1,isNode:i,width:1/0},s)},`createLabel`),N=e((e,t,n,r,i)=>[`M`,e+i,t,`H`,e+n-i,`A`,i,i,0,0,1,e+n,t+i,`V`,t+r-i,`A`,i,i,0,0,1,e+n-i,t+r,`H`,e+i,`A`,i,i,0,0,1,e,t+r-i,`V`,t+i,`A`,i,i,0,0,1,e+i,t,`Z`].join(` `),`createRoundedRectPathD`),P=e(async(e,n)=>{t.info(`Creating subgraph rect for `,n.id,n);let r=c(),{themeVariables:i,handDrawnSeed:o}=r,{clusterBkg:s,clusterBorder:l}=i,{labelStyles:d,nodeStyles:f,borderStyles:p,backgroundStyles:h}=y(n),_=e.insert(`g`).attr(`class`,`cluster `+n.cssClasses).attr(`id`,n.domId).attr(`data-look`,n.look),b=a(r),x=_.insert(`g`).attr(`class`,`cluster-label `),C;C=n.labelType===`markdown`?await m(x,n.label,{style:n.labelStyle,useHtmlLabels:b,isNode:!0,width:n.width}):await M(x,n.label,n.labelStyle||``,!1,!0);let w=C.getBBox();if(a(r)){let e=C.children[0],t=u(C);w=e.getBoundingClientRect(),t.attr(`width`,w.width),t.attr(`height`,w.height)}let T=n.width<=w.width+n.padding?w.width+n.padding:n.width;n.width<=w.width+n.padding?n.diff=(T-n.width)/2-n.padding:n.diff=-n.padding;let E=n.height,D=n.x-T/2,O=n.y-E/2;t.trace(`Data `,n,JSON.stringify(n));let k;if(n.look===`handDrawn`){let e=S.svg(_),r=v(n,{roughness:.7,fill:s,stroke:l,fillWeight:3,seed:o}),i=e.path(N(D,O,T,E,0),r);k=_.insert(()=>(t.debug(`Rough node insert CXC`,i),i),`:first-child`),k.select(`path:nth-child(2)`).attr(`style`,p.join(`;`)),k.select(`path`).attr(`style`,h.join(`;`).replace(`fill`,`stroke`))}else k=_.insert(`rect`,`:first-child`),k.attr(`style`,f).attr(`rx`,n.rx).attr(`ry`,n.ry).attr(`x`,D).attr(`y`,O).attr(`width`,T).attr(`height`,E);let{subGraphTitleTopMargin:A}=g(r);if(x.attr(`transform`,`translate(${n.x-w.width/2}, ${n.y-n.height/2+A})`),d){let e=x.select(`span`);e&&e.attr(`style`,d)}let P=k.node().getBBox();return n.offsetX=0,n.width=P.width,n.height=P.height,n.offsetY=w.height-n.padding/2,n.intersect=function(e){return j(n,e)},{cluster:_,labelBBox:w}},`rect`),F={rect:P,squareRect:P,roundedWithTitle:e(async(e,t)=>{let n=c(),{themeVariables:r,handDrawnSeed:i}=n,{altBackground:o,compositeBackground:s,compositeTitleBackground:l,nodeBorder:d}=r,f=e.insert(`g`).attr(`class`,t.cssClasses).attr(`id`,t.domId).attr(`data-id`,t.id).attr(`data-look`,t.look),p=f.insert(`g`,`:first-child`),m=f.insert(`g`).attr(`class`,`cluster-label`),h=f.append(`rect`),g=await M(m,t.label,t.labelStyle,void 0,!0),_=g.getBBox();if(a(n)){let e=g.children[0],t=u(g);_=e.getBoundingClientRect(),t.attr(`width`,_.width),t.attr(`height`,_.height)}let v=0*t.padding,y=v/2,b=(t.width<=_.width+t.padding?_.width+t.padding:t.width)+v;t.width<=_.width+t.padding?t.diff=(b-t.width)/2-t.padding:t.diff=-t.padding;let x=t.height+v,C=t.height+v-_.height-6,w=t.x-b/2,T=t.y-x/2;t.width=b;let E=t.y-t.height/2-y+_.height+2,D;if(t.look===`handDrawn`){let e=t.cssClasses.includes(`statediagram-cluster-alt`),n=S.svg(f),r=t.rx||t.ry?n.path(N(w,T,b,x,10),{roughness:.7,fill:l,fillStyle:`solid`,stroke:d,seed:i}):n.rectangle(w,T,b,x,{seed:i});D=f.insert(()=>r,`:first-child`);let a=n.rectangle(w,E,b,C,{fill:e?o:s,fillStyle:e?`hachure`:`solid`,stroke:d,seed:i});D=f.insert(()=>r,`:first-child`),h=f.insert(()=>a)}else D=p.insert(`rect`,`:first-child`),D.attr(`class`,`outer`).attr(`x`,w).attr(`y`,T).attr(`width`,b).attr(`height`,x).attr(`data-look`,t.look),h.attr(`class`,`inner`).attr(`x`,w).attr(`y`,E).attr(`width`,b).attr(`height`,C);return m.attr(`transform`,`translate(${t.x-_.width/2}, ${T+1-(a(n)?0:3)})`),t.height=D.node().getBBox().height,t.offsetX=0,t.offsetY=_.height-t.padding/2,t.labelBBox=_,t.intersect=function(e){return j(t,e)},{cluster:f,labelBBox:_}},`roundedWithTitle`),noteGroup:e((e,t)=>{let n=e.insert(`g`).attr(`class`,`note-cluster`).attr(`id`,t.domId),r=n.insert(`rect`,`:first-child`),i=0*t.padding,a=i/2;r.attr(`rx`,t.rx).attr(`ry`,t.ry).attr(`x`,t.x-t.width/2-a).attr(`y`,t.y-t.height/2-a).attr(`width`,t.width+i).attr(`height`,t.height+i).attr(`fill`,`none`);let o=r.node().getBBox();return t.width=o.width,t.height=o.height,t.intersect=function(e){return j(t,e)},{cluster:n,labelBBox:{width:0,height:0}}},`noteGroup`),divider:e((e,t)=>{let{themeVariables:n,handDrawnSeed:r}=c(),{nodeBorder:i}=n,a=e.insert(`g`).attr(`class`,t.cssClasses).attr(`id`,t.domId).attr(`data-look`,t.look),o=a.insert(`g`,`:first-child`),s=0*t.padding,l=t.width+s;t.diff=-t.padding;let u=t.height+s,d=t.x-l/2,f=t.y-u/2;t.width=l;let p;if(t.look===`handDrawn`){let e=S.svg(a).rectangle(d,f,l,u,{fill:`lightgrey`,roughness:.5,strokeLineDash:[5],stroke:i,seed:r});p=a.insert(()=>e,`:first-child`)}else{p=o.insert(`rect`,`:first-child`);let e=`outer`;e=(t.look,`divider`),p.attr(`class`,e).attr(`x`,d).attr(`y`,f).attr(`width`,l).attr(`height`,u).attr(`data-look`,t.look)}return t.height=p.node().getBBox().height,t.offsetX=0,t.offsetY=0,t.intersect=function(e){return j(t,e)},{cluster:a,labelBBox:{}}},`divider`),kanbanSection:e(async(e,n)=>{t.info(`Creating subgraph rect for `,n.id,n);let r=c(),{themeVariables:i,handDrawnSeed:o}=r,{clusterBkg:s,clusterBorder:l}=i,{labelStyles:d,nodeStyles:f,borderStyles:p,backgroundStyles:h}=y(n),_=e.insert(`g`).attr(`class`,`cluster `+n.cssClasses).attr(`id`,n.domId).attr(`data-look`,n.look),b=a(r),x=_.insert(`g`).attr(`class`,`cluster-label `),C=await m(x,n.label,{style:n.labelStyle,useHtmlLabels:b,isNode:!0,width:n.width}),w=C.getBBox();if(a(r)){let e=C.children[0],t=u(C);w=e.getBoundingClientRect(),t.attr(`width`,w.width),t.attr(`height`,w.height)}let T=n.width<=w.width+n.padding?w.width+n.padding:n.width;n.width<=w.width+n.padding?n.diff=(T-n.width)/2-n.padding:n.diff=-n.padding;let E=n.height,D=n.x-T/2,O=n.y-E/2;t.trace(`Data `,n,JSON.stringify(n));let k;if(n.look===`handDrawn`){let e=S.svg(_),r=v(n,{roughness:.7,fill:s,stroke:l,fillWeight:4,seed:o}),i=e.path(N(D,O,T,E,n.rx),r);k=_.insert(()=>(t.debug(`Rough node insert CXC`,i),i),`:first-child`),k.select(`path:nth-child(2)`).attr(`style`,p.join(`;`)),k.select(`path`).attr(`style`,h.join(`;`).replace(`fill`,`stroke`))}else k=_.insert(`rect`,`:first-child`),k.attr(`style`,f).attr(`rx`,n.rx).attr(`ry`,n.ry).attr(`x`,D).attr(`y`,O).attr(`width`,T).attr(`height`,E);let{subGraphTitleTopMargin:A}=g(r);if(x.attr(`transform`,`translate(${n.x-w.width/2}, ${n.y-n.height/2+A})`),d){let e=x.select(`span`);e&&e.attr(`style`,d)}let M=k.node().getBBox();return n.offsetX=0,n.width=M.width,n.height=M.height,n.offsetY=w.height-n.padding/2,n.intersect=function(e){return j(n,e)},{cluster:_,labelBBox:w}},`kanbanSection`)},I=new Map,ee=e(async(e,t)=>{let n=await F[t.shape||`rect`](e,t);return I.set(t.id,n),n},`insertCluster`),te=e(()=>{I=new Map},`clear`);function L(e,t){return e.intersect(t)}e(L,`intersectNode`);var R=L;function ne(e,t,n,r){var i=e.x,a=e.y,o=i-r.x,s=a-r.y,c=Math.sqrt(t*t*s*s+n*n*o*o),l=Math.abs(t*n*o/c);r.x<i&&(l=-l);var u=Math.abs(t*n*s/c);return r.y<a&&(u=-u),{x:i+l,y:a+u}}e(ne,`intersectEllipse`);var z=ne;function B(e,t,n){return z(e,t,t,n)}e(B,`intersectCircle`);var V=B;function H(e,t,n,r){{let i=t.y-e.y,a=e.x-t.x,o=t.x*e.y-e.x*t.y,s=i*n.x+a*n.y+o,c=i*r.x+a*r.y+o,l=1e-6;if(s!==0&&c!==0&&re(s,c))return;let u=r.y-n.y,d=n.x-r.x,f=r.x*n.y-n.x*r.y,p=u*e.x+d*e.y+f,m=u*t.x+d*t.y+f;if(Math.abs(p)<l&&Math.abs(m)<l&&re(p,m))return;let h=i*d-u*a;if(h===0)return;let g=Math.abs(h/2),_=a*f-d*o,v=_<0?(_-g)/h:(_+g)/h;return _=u*o-i*f,{x:v,y:_<0?(_-g)/h:(_+g)/h}}}e(H,`intersectLine`);function re(e,t){return e*t>0}e(re,`sameSign`);var ie=H;function U(e,t,n){let r=e.x,i=e.y,a=[],o=1/0,s=1/0;typeof t.forEach==`function`?t.forEach(function(e){o=Math.min(o,e.x),s=Math.min(s,e.y)}):(o=Math.min(o,t.x),s=Math.min(s,t.y));let c=r-e.width/2-o,l=i-e.height/2-s;for(let r=0;r<t.length;r++){let i=t[r],o=t[r<t.length-1?r+1:0],s=ie(e,n,{x:c+i.x,y:l+i.y},{x:c+o.x,y:l+o.y});s&&a.push(s)}return a.length?(a.length>1&&a.sort(function(e,t){let r=e.x-n.x,i=e.y-n.y,a=Math.sqrt(r*r+i*i),o=t.x-n.x,s=t.y-n.y,c=Math.sqrt(o*o+s*s);return a<c?-1:a===c?0:1}),a[0]):e}e(U,`intersectPolygon`);var W={node:R,circle:V,ellipse:z,polygon:U,rect:j};function G(e,n){let{labelStyles:r}=y(n);n.labelStyle=r;let i=E(n),a=i;i||(a=`anchor`);let o=e.insert(`g`).attr(`class`,a).attr(`id`,n.domId||n.id),{cssStyles:s}=n,c=S.svg(o),l=v(n,{fill:`black`,stroke:`none`,fillStyle:`solid`});n.look!==`handDrawn`&&(l.roughness=0);let u=c.circle(0,0,2,l),d=o.insert(()=>u,`:first-child`);return d.attr(`class`,`anchor`).attr(`style`,p(s)),T(n,d),n.intersect=function(e){return t.info(`Circle intersect`,n,1,e),W.circle(n,1,e)},o}e(G,`anchor`);function K(e,t,n,r,i,a,o){let s=(e+n)/2,c=(t+r)/2,l=Math.atan2(r-t,n-e),u=(n-e)/2,d=(r-t)/2,f=u/i,p=d/a,m=Math.sqrt(f**2+p**2);if(m>1)throw Error(`The given radii are too small to create an arc between the points.`);let h=Math.sqrt(1-m**2),g=s+h*a*Math.sin(l)*(o?-1:1),_=c-h*i*Math.cos(l)*(o?-1:1),v=Math.atan2((t-_)/a,(e-g)/i),y=Math.atan2((r-_)/a,(n-g)/i)-v;o&&y<0&&(y+=2*Math.PI),!o&&y>0&&(y-=2*Math.PI);let b=[];for(let e=0;e<20;e++){let t=v+e/19*y,n=g+i*Math.cos(t),r=_+a*Math.sin(t);b.push({x:n,y:r})}return b}e(K,`generateArcPoints`);function ae(e,t,n){let[r,i]=[t,n].sort((e,t)=>t-e);return i*(1-Math.sqrt(1-(e/r/2)**2))}e(ae,`calculateArcSagitta`);async function oe(t,n){let{labelStyles:r,nodeStyles:i}=y(n);n.labelStyle=r;let a=n.padding??0,o=n.look===`neo`?16:a,s=n.look===`neo`?12:a,c=e(e=>e+s,`calcTotalHeight`),l=e(e=>{let t=e/2;return[t/(2.5+e/50),t]},`calcEllipseRadius`),{shapeSvg:u,bbox:d}=await C(t,n,E(n)),f=c(n?.height?n?.height:d.height),[p,m]=l(f),h=ae(f,p,m),g=(n?.width?n?.width:d.width)+o*2+h-h,_=f,{cssStyles:b}=n,x=[{x:g/2,y:-_/2},{x:-g/2,y:-_/2},...K(-g/2,-_/2,-g/2,_/2,p,m,!1),{x:g/2,y:_/2},...K(g/2,_/2,g/2,-_/2,p,m,!0)],w=S.svg(u),O=v(n,{});n.look!==`handDrawn`&&(O.roughness=0,O.fillStyle=`solid`);let k=D(x),A=w.path(k,O),j=u.insert(()=>A,`:first-child`);return j.attr(`class`,`basic label-container outer-path`),b&&n.look!==`handDrawn`&&j.selectAll(`path`).attr(`style`,b),i&&n.look!==`handDrawn`&&j.selectAll(`path`).attr(`style`,i),j.attr(`transform`,`translate(${p/2}, 0)`),T(n,j),n.intersect=function(e){return W.polygon(n,x,e)},u}e(oe,`bowTieRect`);function q(e,t,n,r){return e.insert(`polygon`,`:first-child`).attr(`points`,r.map(function(e){return e.x+`,`+e.y}).join(` `)).attr(`class`,`label-container`).attr(`transform`,`translate(`+-t/2+`,`+n/2+`)`)}e(q,`insertPolygonShape`);var se=12;async function ce(e,t){let{labelStyles:n,nodeStyles:r}=y(t);t.labelStyle=n;let i=t.padding??0,a=t.look===`neo`?28:i,o=t.look===`neo`?24:i,{shapeSvg:s,bbox:c}=await C(e,t,E(t)),l=(t?.width??c.width)+(t.look===`neo`?a*2:a+se),u=(t?.height??c.height)+(t.look===`neo`?o*2:o),d=l,f=-u,p=[{x:0+se,y:f},{x:d,y:f},{x:d,y:0},{x:0,y:0},{x:0,y:f+se},{x:0+se,y:f}],m,{cssStyles:h}=t;if(t.look===`handDrawn`){let e=S.svg(s),n=v(t,{}),r=D(p),i=e.path(r,n);m=s.insert(()=>i,`:first-child`).attr(`transform`,`translate(${-l/2}, ${u/2})`),h&&m.attr(`style`,h)}else m=q(s,l,u,p);return r&&m.attr(`style`,r),T(t,m),t.intersect=function(e){return W.polygon(t,p,e)},s}e(ce,`card`);function le(e,t){let{nodeStyles:n}=y(t);t.label=``;let r=e.insert(`g`).attr(`class`,E(t)).attr(`id`,t.domId??t.id),{cssStyles:i}=t,a=Math.max(28,t.width??0),o=[{x:0,y:a/2},{x:a/2,y:0},{x:0,y:-a/2},{x:-a/2,y:0}],s=S.svg(r),c=v(t,{});t.look!==`handDrawn`&&(c.roughness=0,c.fillStyle=`solid`);let l=D(o),u=s.path(l,c),d=r.insert(()=>u,`:first-child`);return i&&t.look!==`handDrawn`&&d.selectAll(`path`).attr(`style`,i),n&&t.look!==`handDrawn`&&d.selectAll(`path`).attr(`style`,n),t.width=28,t.height=28,t.intersect=function(e){return W.polygon(t,o,e)},r}e(le,`choice`);async function ue(e,n,r){let{labelStyles:i,nodeStyles:a}=y(n);n.labelStyle=i;let{shapeSvg:o,bbox:s,halfPadding:c}=await C(e,n,E(n)),l=r?.padding??c,u=n.look===`neo`?s.width/2+32:s.width/2+l,d,{cssStyles:f}=n;if(n.look===`handDrawn`){let e=S.svg(o),t=v(n,{}),r=e.circle(0,0,u*2,t);d=o.insert(()=>r,`:first-child`),d.attr(`class`,`basic label-container`).attr(`style`,p(f))}else d=o.insert(`circle`,`:first-child`).attr(`class`,`basic label-container`).attr(`style`,a).attr(`r`,u).attr(`cx`,0).attr(`cy`,0);return T(n,d),n.calcIntersect=function(e,t){let n=e.width/2;return W.circle(e,n,t)},n.intersect=function(e){return t.info(`Circle intersect`,n,u,e),W.circle(n,u,e)},o}e(ue,`circle`);function de(e){let t=Math.cos(Math.PI/4),n=Math.sin(Math.PI/4),r=e*2,i={x:r/2*t,y:r/2*n},a={x:-(r/2)*t,y:r/2*n},o={x:-(r/2)*t,y:-(r/2)*n},s={x:r/2*t,y:-(r/2)*n};return`M ${a.x},${a.y} L ${s.x},${s.y}
2
2
  M ${i.x},${i.y} L ${o.x},${o.y}`}e(de,`createLine`);function fe(e,n){let{labelStyles:r,nodeStyles:i}=y(n);n.labelStyle=r,n.label=``;let a=e.insert(`g`).attr(`class`,E(n)).attr(`id`,n.domId??n.id),o=Math.max(30,n?.width??0),{cssStyles:s}=n,c=S.svg(a),l=v(n,{});n.look!==`handDrawn`&&(l.roughness=0,l.fillStyle=`solid`);let u=c.circle(0,0,o*2,l),d=de(o),f=c.path(d,l),p=a.insert(()=>u,`:first-child`);return p.insert(()=>f),p.attr(`class`,`outer-path`),s&&n.look!==`handDrawn`&&p.selectAll(`path`).attr(`style`,s),i&&n.look!==`handDrawn`&&p.selectAll(`path`).attr(`style`,i),T(n,p),n.intersect=function(e){return t.info(`crossedCircle intersect`,n,{radius:o,point:e}),W.circle(n,o,e)},a}e(fe,`crossedCircle`);function J(e,t,n,r=100,i=0,a=180){let o=[],s=i*Math.PI/180,c=(a*Math.PI/180-s)/(r-1);for(let i=0;i<r;i++){let r=s+i*c,a=e+n*Math.cos(r),l=t+n*Math.sin(r);o.push({x:-a,y:-l})}return o}e(J,`generateCirclePoints`);async function pe(e,t){let{labelStyles:n,nodeStyles:r}=y(t);t.labelStyle=n;let{shapeSvg:i,bbox:a,label:o}=await C(e,t,E(t)),s=t.look===`neo`?18:t.padding??0,c=t.look===`neo`?12:t.padding??0,l=a.width+s,u=a.height+c,d=Math.max(5,u*.1),{cssStyles:f}=t,p=[...J(l/2,-u/2,d,30,-90,0),{x:-l/2-d,y:d},...J(l/2+d*2,-d,d,20,-180,-270),...J(l/2+d*2,d,d,20,-90,-180),{x:-l/2-d,y:-u/2},...J(l/2,u/2,d,20,0,90)],m=[{x:l/2,y:-u/2-d},{x:-l/2,y:-u/2-d},...J(l/2,-u/2,d,20,-90,0),{x:-l/2-d,y:-d},...J(l/2+l*.1,-d,d,20,-180,-270),...J(l/2+l*.1,d,d,20,-90,-180),{x:-l/2-d,y:u/2},...J(l/2,u/2,d,20,0,90),{x:-l/2,y:u/2+d},{x:l/2,y:u/2+d}],h=S.svg(i),g=v(t,{fill:`none`});t.look!==`handDrawn`&&(g.roughness=0,g.fillStyle=`solid`);let _=D(p).replace(`Z`,``),b=h.path(_,g),x=D(m),w=h.path(x,{...g}),O=i.insert(`g`,`:first-child`);return O.insert(()=>w,`:first-child`).attr(`stroke-opacity`,0),O.insert(()=>b,`:first-child`),O.attr(`class`,`text`),f&&t.look!==`handDrawn`&&O.selectAll(`path`).attr(`style`,f),r&&t.look!==`handDrawn`&&O.selectAll(`path`).attr(`style`,r),O.attr(`transform`,`translate(${d}, 0)`),o.attr(`transform`,`translate(${-l/2+d-(a.x-(a.left??0))},${-u/2+(t.padding??0)/2-(a.y-(a.top??0))})`),T(t,O),t.intersect=function(e){return W.polygon(t,m,e)},i}e(pe,`curlyBraceLeft`);function Y(e,t,n,r=100,i=0,a=180){let o=[],s=i*Math.PI/180,c=(a*Math.PI/180-s)/(r-1);for(let i=0;i<r;i++){let r=s+i*c,a=e+n*Math.cos(r),l=t+n*Math.sin(r);o.push({x:a,y:l})}return o}e(Y,`generateCirclePoints`);async function me(e,t){let{labelStyles:n,nodeStyles:r}=y(t);t.labelStyle=n;let{shapeSvg:i,bbox:a,label:o}=await C(e,t,E(t)),s=t.look===`neo`?18:t.padding??0,c=t.look===`neo`?12:t.padding??0,l=a.width+(t.look===`neo`?s*2:s),u=a.height+(t.look===`neo`?c*2:c),d=Math.max(5,u*.1),{cssStyles:f}=t,p=[...Y(l/2,-u/2,d,20,-90,0),{x:l/2+d,y:-d},...Y(l/2+d*2,-d,d,20,-180,-270),...Y(l/2+d*2,d,d,20,-90,-180),{x:l/2+d,y:u/2},...Y(l/2,u/2,d,20,0,90)],m=[{x:-l/2,y:-u/2-d},{x:l/2,y:-u/2-d},...Y(l/2,-u/2,d,20,-90,0),{x:l/2+d,y:-d},...Y(l/2+d*2,-d,d,20,-180,-270),...Y(l/2+d*2,d,d,20,-90,-180),{x:l/2+d,y:u/2},...Y(l/2,u/2,d,20,0,90),{x:l/2,y:u/2+d},{x:-l/2,y:u/2+d}],h=S.svg(i),g=v(t,{fill:`none`});t.look!==`handDrawn`&&(g.roughness=0,g.fillStyle=`solid`);let _=D(p).replace(`Z`,``),b=h.path(_,g),x=D(m),w=h.path(x,{...g}),O=i.insert(`g`,`:first-child`);return O.insert(()=>w,`:first-child`).attr(`stroke-opacity`,0),O.insert(()=>b,`:first-child`),O.attr(`class`,`text`),f&&t.look!==`handDrawn`&&O.selectAll(`path`).attr(`style`,f),r&&t.look!==`handDrawn`&&O.selectAll(`path`).attr(`style`,r),O.attr(`transform`,`translate(${-d}, 0)`),o.attr(`transform`,`translate(${-l/2+(t.padding??0)/2-(a.x-(a.left??0))},${-u/2+(t.padding??0)/2-(a.y-(a.top??0))})`),T(t,O),t.intersect=function(e){return W.polygon(t,m,e)},i}e(me,`curlyBraceRight`);function X(e,t,n,r=100,i=0,a=180){let o=[],s=i*Math.PI/180,c=(a*Math.PI/180-s)/(r-1);for(let i=0;i<r;i++){let r=s+i*c,a=e+n*Math.cos(r),l=t+n*Math.sin(r);o.push({x:-a,y:-l})}return o}e(X,`generateCirclePoints`);async function he(e,t){let{labelStyles:n,nodeStyles:r}=y(t);t.labelStyle=n;let{shapeSvg:i,bbox:a,label:o}=await C(e,t,E(t)),s=t.look===`neo`?18:t.padding??0,c=t.look===`neo`?12:t.padding??0,l=a.width+(t.look===`neo`?s*2:s),u=a.height+(t.look===`neo`?c*2:c),d=Math.max(5,u*.1),{cssStyles:f}=t,p=[...X(l/2,-u/2,d,30,-90,0),{x:-l/2-d,y:d},...X(l/2+d*2,-d,d,20,-180,-270),...X(l/2+d*2,d,d,20,-90,-180),{x:-l/2-d,y:-u/2},...X(l/2,u/2,d,20,0,90)],m=[...X(-l/2+d+d/2,-u/2,d,20,-90,-180),{x:l/2-d/2,y:d},...X(-l/2-d/2,-d,d,20,0,90),...X(-l/2-d/2,d,d,20,-90,0),{x:l/2-d/2,y:-d},...X(-l/2+d+d/2,u/2,d,30,-180,-270)],h=[{x:l/2,y:-u/2-d},{x:-l/2,y:-u/2-d},...X(l/2,-u/2,d,20,-90,0),{x:-l/2-d,y:-d},...X(l/2+d*2,-d,d,20,-180,-270),...X(l/2+d*2,d,d,20,-90,-180),{x:-l/2-d,y:u/2},...X(l/2,u/2,d,20,0,90),{x:-l/2,y:u/2+d},{x:l/2-d-d/2,y:u/2+d},...X(-l/2+d+d/2,-u/2,d,20,-90,-180),{x:l/2-d/2,y:d},...X(-l/2-d/2,-d,d,20,0,90),...X(-l/2-d/2,d,d,20,-90,0),{x:l/2-d/2,y:-d},...X(-l/2+d+d/2,u/2,d,30,-180,-270)],g=S.svg(i),_=v(t,{fill:`none`});t.look!==`handDrawn`&&(_.roughness=0,_.fillStyle=`solid`);let b=D(p).replace(`Z`,``),x=g.path(b,_),w=D(m).replace(`Z`,``),O=g.path(w,_),k=D(h),A=g.path(k,{..._}),j=i.insert(`g`,`:first-child`);return j.insert(()=>A,`:first-child`).attr(`stroke-opacity`,0),j.insert(()=>x,`:first-child`),j.insert(()=>O,`:first-child`),j.attr(`class`,`text`),f&&t.look!==`handDrawn`&&j.selectAll(`path`).attr(`style`,f),r&&t.look!==`handDrawn`&&j.selectAll(`path`).attr(`style`,r),j.attr(`transform`,`translate(${d-d/4}, 0)`),o.attr(`transform`,`translate(${-l/2+(t.padding??0)/2-(a.x-(a.left??0))},${-u/2+(t.padding??0)/2-(a.y-(a.top??0))})`),T(t,j),t.intersect=function(e){return W.polygon(t,h,e)},i}e(he,`curlyBraces`);async function ge(e,t){let{labelStyles:n,nodeStyles:r}=y(t);t.labelStyle=n;let i=t.padding??0,a=t.look===`neo`?16:i,o=t.look===`neo`?12:i,{shapeSvg:s,bbox:c}=await C(e,t,E(t)),l=Math.max(20,(c.width+a*2)*1.25,t?.width??0),u=Math.max(5,c.height+o*2,t?.height??0),d=u/2,{cssStyles:f}=t,p=S.svg(s),m=v(t,{});t.look!==`handDrawn`&&(m.roughness=0,m.fillStyle=`solid`);let h=l,g=u,_=h-d,b=g/4,x=[{x:_,y:0},{x:b,y:0},{x:0,y:g/2},{x:b,y:g},{x:_,y:g},...k(-_,-g/2,d,50,270,90)],w=D(x),O=p.path(w,m),A=s.insert(()=>O,`:first-child`);return A.attr(`class`,`basic label-container outer-path`),f&&t.look!==`handDrawn`&&A.selectChildren(`path`).attr(`style`,f),r&&t.look!==`handDrawn`&&A.selectChildren(`path`).attr(`style`,r),A.attr(`transform`,`translate(${-l/2}, ${-u/2})`),T(t,A),t.intersect=function(e){return W.polygon(t,x,e)},s}e(ge,`curvedTrapezoid`);var _e=e((e,t,n,r,i,a)=>[`M${e},${t+a}`,`a${i},${a} 0,0,0 ${n},0`,`a${i},${a} 0,0,0 ${-n},0`,`l0,${r}`,`a${i},${a} 0,0,0 ${n},0`,`l0,${-r}`].join(` `),`createCylinderPathD`),ve=e((e,t,n,r,i,a)=>[`M${e},${t+a}`,`M${e+n},${t+a}`,`a${i},${a} 0,0,0 ${-n},0`,`l0,${r}`,`a${i},${a} 0,0,0 ${n},0`,`l0,${-r}`].join(` `),`createOuterCylinderPathD`),ye=e((e,t,n,r,i,a)=>[`M${e-n/2},${-r/2}`,`a${i},${a} 0,0,0 ${n},0`].join(` `),`createInnerCylinderPathD`),be=8,xe=8;async function Se(e,t){let{labelStyles:n,nodeStyles:r}=y(t);t.labelStyle=n;let i=t.padding??0,a=t.look===`neo`?24:i,o=t.look===`neo`?24:i;if(t.width||t.height){let e=t.width??0;t.width=(t.width??0)-o,t.width<xe&&(t.width=xe);let n=e/2/(2.5+e/50);t.height=(t.height??0)-a-n*3,t.height<be&&(t.height=be)}let{shapeSvg:s,bbox:c,label:l}=await C(e,t,E(t)),u=(t.width?t.width:c.width)+o,d=u/2,f=d/(2.5+u/50),m=(t.height?t.height:c.height)+a+f,h,{cssStyles:g}=t;if(t.look===`handDrawn`){let e=S.svg(s),n=ve(0,0,u,m,d,f),r=ye(0,f,u,m,d,f),i=v(t,{}),a=e.path(n,i),o=e.path(r,v(t,{fill:`none`}));h=s.insert(()=>o,`:first-child`),h=s.insert(()=>a,`:first-child`),h.attr(`class`,`basic label-container`),g&&h.attr(`style`,g)}else{let e=_e(0,0,u,m,d,f);h=s.insert(`path`,`:first-child`).attr(`d`,e).attr(`class`,`basic label-container outer-path`).attr(`style`,p(g)).attr(`style`,r)}return h.attr(`label-offset-y`,f),h.attr(`transform`,`translate(${-u/2}, ${-(m/2+f)})`),T(t,h),l.attr(`transform`,`translate(${-(c.width/2)-(c.x-(c.left??0))}, ${-(c.height/2)+(t.padding??0)/1.5-(c.y-(c.top??0))})`),t.intersect=function(e){let n=W.rect(t,e),r=n.x-(t.x??0);if(d!=0&&(Math.abs(r)<(t.width??0)/2||Math.abs(r)==(t.width??0)/2&&Math.abs(n.y-(t.y??0))>(t.height??0)/2-f)){let i=f*f*(1-r*r/(d*d));i>0&&(i=Math.sqrt(i)),i=f-i,e.y-(t.y??0)>0&&(i=-i),n.y+=i}return n},s}e(Se,`cylinder`);async function Ce(e,t,n){let{labelStyles:r,nodeStyles:i}=y(t);t.labelStyle=r;let{shapeSvg:a,bbox:o}=await C(e,t,E(t)),s=Math.max(o.width+n.labelPaddingX*2,t?.width||0),c=Math.max(o.height+n.labelPaddingY*2,t?.height||0),l=-s/2,u=-c/2,d,{rx:f,ry:m}=t,{cssStyles:h}=t;if(n?.rx&&n.ry&&(f=n.rx,m=n.ry),t.look===`handDrawn`){let e=S.svg(a),n=v(t,{}),r=f||m?e.path(N(l,u,s,c,f||0),n):e.rectangle(l,u,s,c,n);d=a.insert(()=>r,`:first-child`),d.attr(`class`,`basic label-container`).attr(`style`,p(h))}else d=a.insert(`rect`,`:first-child`),d.attr(`class`,`basic label-container`).attr(`style`,i).attr(`rx`,p(f)).attr(`ry`,p(m)).attr(`x`,l).attr(`y`,u).attr(`width`,s).attr(`height`,c);return T(t,d),t.calcIntersect=function(e,t){return W.rect(e,t)},t.intersect=function(e){return W.rect(t,e)},a}e(Ce,`drawRect`);async function we(e,t){let{cssClasses:n,labelPaddingX:r,labelPaddingY:i,padding:a,width:o,height:s}=t,c=await Ce(e,t,{rx:0,ry:0,classes:n??``,labelPaddingX:r??(a??0)*2,labelPaddingY:i??a??0});if(t.look===`handDrawn`){let e=S.svg(c),n=v(t,{}),r=c.select(`.basic.label-container > path:nth-child(2)`),i=r.node();if(!i)return c;let a=null;if(i instanceof SVGGraphicsElement)a=i.getBBox();else return c;return c.insert(()=>e.line(a.x,a.y,a.x+a.width,a.y,n),`.basic.label-container g.label`),c.insert(()=>e.line(a.x,a.y+a.height,a.x+a.width,a.y+a.height,n),`.basic.label-container g.label`),r.remove(),c}let l=c.select(`.basic.label-container`),u=(Number(l.attr(`width`))||o)??0,d=(Number(l.attr(`height`))||s)??0;return u>0&&d>0&&l.attr(`stroke-dasharray`,`${u} ${d}`),c}e(we,`datastore`);async function Te(e,t){let{labelStyles:n,nodeStyles:r}=y(t);t.labelStyle=n;let i=t.look===`neo`?16:t.padding??0,a=t.look===`neo`?16:t.padding??0,{shapeSvg:o,bbox:s,label:c}=await C(e,t,E(t)),l=s.width+i,u=s.height+a,d=u*.2,f=-l/2,p=-u/2-d/2,{cssStyles:m}=t,h=S.svg(o),g=v(t,{});t.look!==`handDrawn`&&(g.roughness=0,g.fillStyle=`solid`);let _=[{x:f,y:p+d},{x:-f,y:p+d},{x:-f,y:-p},{x:f,y:-p},{x:f,y:p},{x:-f,y:p},{x:-f,y:p+d}],b=h.polygon(_.map(e=>[e.x,e.y]),g),x=o.insert(()=>b,`:first-child`);return x.attr(`class`,`basic label-container outer-path`),m&&t.look!==`handDrawn`&&x.selectAll(`path`).attr(`style`,m),r&&t.look!==`handDrawn`&&x.selectAll(`path`).attr(`style`,r),c.attr(`transform`,`translate(${f+(t.padding??0)/2-(s.x-(s.left??0))}, ${p+d+(t.padding??0)/2-(s.y-(s.top??0))})`),T(t,x),t.intersect=function(e){return W.rect(t,e)},o}e(Te,`dividedRectangle`);async function Ee(e,n){let{labelStyles:r,nodeStyles:i}=y(n),a=n.look===`neo`?12:5;n.labelStyle=r;let o=n.padding??0,s=n.look===`neo`?16:o,{shapeSvg:c,bbox:l}=await C(e,n,E(n)),u=(n?.width?n?.width/2:l.width/2)+(s??0),d=u-a,f,{cssStyles:m}=n;if(n.look===`handDrawn`){let e=S.svg(c),t=v(n,{roughness:.2,strokeWidth:2.5}),r=v(n,{roughness:.2,strokeWidth:1.5}),i=e.circle(0,0,u*2,t),a=e.circle(0,0,d*2,r);f=c.insert(`g`,`:first-child`),f.attr(`class`,p(n.cssClasses)).attr(`style`,p(m)),f.node()?.appendChild(i),f.node()?.appendChild(a)}else{f=c.insert(`g`,`:first-child`);let e=f.insert(`circle`,`:first-child`),t=f.insert(`circle`);f.attr(`class`,`basic label-container`).attr(`style`,i),e.attr(`class`,`outer-circle`).attr(`style`,i).attr(`r`,u).attr(`cx`,0).attr(`cy`,0),t.attr(`class`,`inner-circle`).attr(`style`,i).attr(`r`,d).attr(`cx`,0).attr(`cy`,0)}return T(n,f),n.intersect=function(e){return t.info(`DoubleCircle intersect`,n,u,e),W.circle(n,u,e)},c}e(Ee,`doublecircle`);function De(e,n,{config:{themeVariables:r}}){let{labelStyles:i,nodeStyles:a}=y(n);n.label=``,n.labelStyle=i;let o=e.insert(`g`).attr(`class`,E(n)).attr(`id`,n.domId??n.id),{cssStyles:s}=n,c=S.svg(o),{nodeBorder:l}=r,u=v(n,{fillStyle:`solid`});n.look!==`handDrawn`&&(u.roughness=0);let d=c.circle(0,0,14,u),f=o.insert(()=>d,`:first-child`);return f.selectAll(`path`).attr(`style`,`fill: ${l} !important;`),s&&s.length>0&&n.look!==`handDrawn`&&f.selectAll(`path`).attr(`style`,s),a&&n.look!==`handDrawn`&&f.selectAll(`path`).attr(`style`,a),T(n,f),n.intersect=function(e){return t.info(`filledCircle intersect`,n,{radius:7,point:e}),W.circle(n,7,e)},o}e(De,`filledCircle`);var Oe=10,ke=10;async function Ae(e,n){let{labelStyles:r,nodeStyles:i}=y(n);n.labelStyle=r;let a=n.padding??0,o=n.look===`neo`?a*2:a;(n.width||n.height)&&(n.height=n?.height??0,n.height<Oe&&(n.height=Oe),n.width=(n?.width??0)-o-o/2,n.width<ke&&(n.width=ke));let{shapeSvg:s,bbox:c,label:l}=await C(e,n,E(n)),u=(n?.width?n?.width:c.width)+(o??0),d=n?.height?n?.height:u+c.height,f=d,p=[{x:0,y:-d},{x:f,y:-d},{x:f/2,y:0}],{cssStyles:m}=n,h=S.svg(s),g=v(n,{});n.look!==`handDrawn`&&(g.roughness=0,g.fillStyle=`solid`);let _=D(p),b=h.path(_,g),x=s.insert(()=>b,`:first-child`).attr(`transform`,`translate(${-d/2}, ${d/2})`).attr(`class`,`outer-path`);return m&&n.look!==`handDrawn`&&x.selectChildren(`path`).attr(`style`,m),i&&n.look!==`handDrawn`&&x.selectChildren(`path`).attr(`style`,i),n.width=u,n.height=d,T(n,x),l.attr(`transform`,`translate(${-c.width/2-(c.x-(c.left??0))}, ${-d/2+(n.padding??0)/2+(c.y-(c.top??0))})`),n.intersect=function(e){return t.info(`Triangle intersect`,n,p,e),W.polygon(n,p,e)},s}e(Ae,`flippedTriangle`);function je(e,t,{dir:n,config:{state:r,themeVariables:i}}){let{nodeStyles:a}=y(t);t.label=``;let o=e.insert(`g`).attr(`class`,E(t)).attr(`id`,t.domId??t.id),{cssStyles:s}=t,c=Math.max(70,t?.width??0),l=Math.max(10,t?.height??0);n===`LR`&&(c=Math.max(10,t?.width??0),l=Math.max(70,t?.height??0));let u=-1*c/2,d=-1*l/2,f=S.svg(o),p=v(t,{stroke:i.lineColor,fill:i.lineColor});t.look!==`handDrawn`&&(p.roughness=0,p.fillStyle=`solid`);let m=f.rectangle(u,d,c,l,p),h=o.insert(()=>m,`:first-child`);s&&t.look!==`handDrawn`&&h.selectAll(`path`).attr(`style`,s),a&&t.look!==`handDrawn`&&h.selectAll(`path`).attr(`style`,a),T(t,h);let g=r?.padding??0;return t.width&&t.height&&(t.width+=g/2||0,t.height+=g/2||0),t.intersect=function(e){return W.rect(t,e)},o}e(je,`forkJoin`);async function Me(e,n){let{labelStyles:r,nodeStyles:i}=y(n);n.labelStyle=r;let a=n.look===`neo`?16:n.padding??0,o=n.look===`neo`?12:n.padding??0;(n.width||n.height)&&(n.height=(n?.height??0)-o*2,n.height<10&&(n.height=10),n.width=(n?.width??0)-a*2,n.width<15&&(n.width=15));let{shapeSvg:s,bbox:c}=await C(e,n,E(n)),l=(n?.width?n?.width:Math.max(15,c.width))+a*2,u=(n?.height?n?.height:Math.max(10,c.height))+o*2,d=u/2,{cssStyles:f}=n,p=S.svg(s),m=v(n,{});n.look!==`handDrawn`&&(m.roughness=0,m.fillStyle=`solid`);let h=[{x:-l/2,y:-u/2},{x:l/2-d,y:-u/2},...k(-l/2+d,0,d,50,90,270),{x:l/2-d,y:u/2},{x:-l/2,y:u/2}],g=D(h),_=p.path(g,m),b=s.insert(()=>_,`:first-child`);return b.attr(`class`,`basic label-container outer-path`),f&&n.look!==`handDrawn`&&b.selectChildren(`path`).attr(`style`,f),i&&n.look!==`handDrawn`&&b.selectChildren(`path`).attr(`style`,i),T(n,b),n.intersect=function(e){return t.info(`Pill intersect`,n,{radius:d,point:e}),W.polygon(n,h,e)},s}e(Me,`halfRoundedRectangle`);var Ne=e((e,t,n,r,i)=>[`M${e+i},${t}`,`L${e+n-i},${t}`,`L${e+n},${t-r/2}`,`L${e+n-i},${t-r}`,`L${e+i},${t-r}`,`L${e},${t-r/2}`,`Z`].join(` `),`createHexagonPathD`);async function Pe(e,t){let{labelStyles:n,nodeStyles:r}=y(t),i=t.look===`neo`?3.5:4;t.labelStyle=n;let a=t.padding??0,o=t.look===`neo`?70:a,s=t.look===`neo`?32:a;if(t.width||t.height){let e=(t.height??0)/i;t.width=(t?.width??0)-2*e-s,t.height=(t.height??0)-o}let{shapeSvg:c,bbox:l}=await C(e,t,E(t)),u=(t?.height?t?.height:l.height)+o,d=u/i,f=(t?.width?t?.width:l.width)+2*d+s,p=[{x:d,y:0},{x:f-d,y:0},{x:f,y:-u/2},{x:f-d,y:-u},{x:d,y:-u},{x:0,y:-u/2}],m,{cssStyles:h}=t;if(t.look===`handDrawn`){let e=S.svg(c),n=v(t,{}),r=Ne(0,0,f,u,d),i=e.path(r,n);m=c.insert(()=>i,`:first-child`).attr(`transform`,`translate(${-f/2}, ${u/2})`),h&&m.attr(`style`,h)}else m=q(c,f,u,p);return r&&m.attr(`style`,r),t.width=f,t.height=u,T(t,m),t.intersect=function(e){return W.polygon(t,p,e)},c}e(Pe,`hexagon`);async function Fe(e,n){let{labelStyles:r,nodeStyles:i}=y(n);n.label=``,n.labelStyle=r;let{shapeSvg:a}=await C(e,n,E(n)),o=Math.max(30,n?.width??0),s=Math.max(30,n?.height??0),{cssStyles:c}=n,l=S.svg(a),u=v(n,{});n.look!==`handDrawn`&&(u.roughness=0,u.fillStyle=`solid`);let d=[{x:0,y:0},{x:o,y:0},{x:0,y:s},{x:o,y:s}],f=D(d),p=l.path(f,u),m=a.insert(()=>p,`:first-child`);return m.attr(`class`,`basic label-container outer-path`),c&&n.look!==`handDrawn`&&m.selectChildren(`path`).attr(`style`,c),i&&n.look!==`handDrawn`&&m.selectChildren(`path`).attr(`style`,i),m.attr(`transform`,`translate(${-o/2}, ${-s/2})`),T(n,m),n.intersect=function(e){return t.info(`Pill intersect`,n,{points:d}),W.polygon(n,d,e)},a}e(Fe,`hourglass`);async function Ie(e,n,{config:{themeVariables:r,flowchart:i}}){let{labelStyles:a}=y(n);n.labelStyle=a;let o=n.assetHeight??48,s=n.assetWidth??48,c=Math.max(o,s),l=i?.wrappingWidth;n.width=Math.max(c,l??0);let{shapeSvg:u,bbox:d,label:f}=await C(e,n,`icon-shape default`),p=n.pos===`t`,m=c,g=c,{nodeBorder:_}=r,{stylesMap:b}=x(n),w=-g/2,E=-m/2,D=n.label?8:0,O=S.svg(u),k=v(n,{stroke:`none`,fill:`none`});n.look!==`handDrawn`&&(k.roughness=0,k.fillStyle=`solid`);let A=O.rectangle(w,E,g,m,k),j=Math.max(g,d.width),M=m+d.height+D,N=O.rectangle(-j/2,-M/2,j,M,{...k,fill:`transparent`,stroke:`none`}),P=u.insert(()=>A,`:first-child`),F=u.insert(()=>N);if(n.icon){let e=u.append(`g`);e.html(`<g>${await h(n.icon,{height:c,width:c,fallbackPrefix:``})}</g>`);let t=e.node().getBBox(),r=t.width,i=t.height,a=t.x,o=t.y;e.attr(`transform`,`translate(${-r/2-a},${p?d.height/2+D/2-i/2-o:-d.height/2-D/2-i/2-o})`),e.attr(`style`,`color: ${b.get(`stroke`)??_};`)}return f.attr(`transform`,`translate(${-d.width/2-(d.x-(d.left??0))},${p?-M/2:M/2-d.height})`),P.attr(`transform`,`translate(0,${p?d.height/2+D/2:-d.height/2-D/2})`),T(n,F),n.intersect=function(e){if(t.info(`iconSquare intersect`,n,e),!n.label)return W.rect(n,e);let r=n.x??0,i=n.y??0,a=n.height??0,o=[];return o=p?[{x:r-d.width/2,y:i-a/2},{x:r+d.width/2,y:i-a/2},{x:r+d.width/2,y:i-a/2+d.height+D},{x:r+g/2,y:i-a/2+d.height+D},{x:r+g/2,y:i+a/2},{x:r-g/2,y:i+a/2},{x:r-g/2,y:i-a/2+d.height+D},{x:r-d.width/2,y:i-a/2+d.height+D}]:[{x:r-g/2,y:i-a/2},{x:r+g/2,y:i-a/2},{x:r+g/2,y:i-a/2+m},{x:r+d.width/2,y:i-a/2+m},{x:r+d.width/2/2,y:i+a/2},{x:r-d.width/2,y:i+a/2},{x:r-d.width/2,y:i-a/2+m},{x:r-g/2,y:i-a/2+m}],W.polygon(n,o,e)},u}e(Ie,`icon`);async function Le(e,n,{config:{themeVariables:r,flowchart:i}}){let{labelStyles:a}=y(n);n.labelStyle=a;let o=n.assetHeight??48,s=n.assetWidth??48,c=Math.max(o,s),l=i?.wrappingWidth;n.width=Math.max(c,l??0);let{shapeSvg:u,bbox:d,label:f}=await C(e,n,`icon-shape default`),p=n.label?8:0,m=n.pos===`t`,{nodeBorder:g,mainBkg:_}=r,{stylesMap:b}=x(n),w=S.svg(u),E=v(n,{});n.look!==`handDrawn`&&(E.roughness=0,E.fillStyle=`solid`),E.stroke=b.get(`fill`)??_;let D=u.append(`g`);n.icon&&D.html(`<g>${await h(n.icon,{height:c,width:c,fallbackPrefix:``})}</g>`);let O=D.node().getBBox(),k=O.width,A=O.height,j=O.x,M=O.y,N=Math.max(k,A)*Math.SQRT2+40,P=w.circle(0,0,N,E),F=Math.max(N,d.width),I=N+d.height+p,ee=w.rectangle(-F/2,-I/2,F,I,{...E,fill:`transparent`,stroke:`none`}),te=u.insert(()=>P,`:first-child`),L=u.insert(()=>ee);return D.attr(`transform`,`translate(${-k/2-j},${m?d.height/2+p/2-A/2-M:-d.height/2-p/2-A/2-M})`),D.attr(`style`,`color: ${b.get(`stroke`)??g};`),f.attr(`transform`,`translate(${-d.width/2-(d.x-(d.left??0))},${m?-I/2:I/2-d.height})`),te.attr(`transform`,`translate(0,${m?d.height/2+p/2:-d.height/2-p/2})`),T(n,L),n.intersect=function(e){return t.info(`iconSquare intersect`,n,e),W.rect(n,e)},u}e(Le,`iconCircle`);async function Re(e,n,{config:{themeVariables:r,flowchart:i}}){let{labelStyles:a}=y(n);n.labelStyle=a;let o=n.assetHeight??48,s=n.assetWidth??48,c=Math.max(o,s),l=i?.wrappingWidth;n.width=Math.max(c,l??0);let{shapeSvg:u,bbox:d,halfPadding:f,label:p}=await C(e,n,`icon-shape default`),m=n.pos===`t`,g=c+f*2,_=c+f*2,{nodeBorder:b,mainBkg:w}=r,{stylesMap:E}=x(n),D=-_/2,O=-g/2,k=n.label?8:0,A=S.svg(u),j=v(n,{});n.look!==`handDrawn`&&(j.roughness=0,j.fillStyle=`solid`),j.stroke=E.get(`fill`)??w;let M=A.path(N(D,O,_,g,5),j),P=Math.max(_,d.width),F=g+d.height+k,I=A.rectangle(-P/2,-F/2,P,F,{...j,fill:`transparent`,stroke:`none`}),ee=u.insert(()=>M,`:first-child`).attr(`class`,`icon-shape2`),te=u.insert(()=>I);if(n.icon){let e=u.append(`g`);e.html(`<g>${await h(n.icon,{height:c,width:c,fallbackPrefix:``})}</g>`);let t=e.node().getBBox(),r=t.width,i=t.height,a=t.x,o=t.y;e.attr(`transform`,`translate(${-r/2-a},${m?d.height/2+k/2-i/2-o:-d.height/2-k/2-i/2-o})`),e.attr(`style`,`color: ${E.get(`stroke`)??b};`)}return p.attr(`transform`,`translate(${-d.width/2-(d.x-(d.left??0))},${m?-F/2:F/2-d.height})`),ee.attr(`transform`,`translate(0,${m?d.height/2+k/2:-d.height/2-k/2})`),T(n,te),n.intersect=function(e){if(t.info(`iconSquare intersect`,n,e),!n.label)return W.rect(n,e);let r=n.x??0,i=n.y??0,a=n.height??0,o=[];return o=m?[{x:r-d.width/2,y:i-a/2},{x:r+d.width/2,y:i-a/2},{x:r+d.width/2,y:i-a/2+d.height+k},{x:r+_/2,y:i-a/2+d.height+k},{x:r+_/2,y:i+a/2},{x:r-_/2,y:i+a/2},{x:r-_/2,y:i-a/2+d.height+k},{x:r-d.width/2,y:i-a/2+d.height+k}]:[{x:r-_/2,y:i-a/2},{x:r+_/2,y:i-a/2},{x:r+_/2,y:i-a/2+g},{x:r+d.width/2,y:i-a/2+g},{x:r+d.width/2/2,y:i+a/2},{x:r-d.width/2,y:i+a/2},{x:r-d.width/2,y:i-a/2+g},{x:r-_/2,y:i-a/2+g}],W.polygon(n,o,e)},u}e(Re,`iconRounded`);async function ze(e,n,{config:{themeVariables:r,flowchart:i}}){let{labelStyles:a}=y(n);n.labelStyle=a;let o=n.assetHeight??48,s=n.assetWidth??48,c=Math.max(o,s),l=i?.wrappingWidth;n.width=Math.max(c,l??0);let{shapeSvg:u,bbox:d,halfPadding:f,label:p}=await C(e,n,`icon-shape default`),m=n.pos===`t`,g=c+f*2,_=c+f*2,{nodeBorder:b,mainBkg:w}=r,{stylesMap:E}=x(n),D=-_/2,O=-g/2,k=n.label?8:0,A=S.svg(u),j=v(n,{});n.look!==`handDrawn`&&(j.roughness=0,j.fillStyle=`solid`),j.stroke=E.get(`fill`)??w;let M=A.path(N(D,O,_,g,.1),j),P=Math.max(_,d.width),F=g+d.height+k,I=A.rectangle(-P/2,-F/2,P,F,{...j,fill:`transparent`,stroke:`none`}),ee=u.insert(()=>M,`:first-child`),te=u.insert(()=>I);if(n.icon){let e=u.append(`g`);e.html(`<g>${await h(n.icon,{height:c,width:c,fallbackPrefix:``})}</g>`);let t=e.node().getBBox(),r=t.width,i=t.height,a=t.x,o=t.y;e.attr(`transform`,`translate(${-r/2-a},${m?d.height/2+k/2-i/2-o:-d.height/2-k/2-i/2-o})`),e.attr(`style`,`color: ${E.get(`stroke`)??b};`)}return p.attr(`transform`,`translate(${-d.width/2-(d.x-(d.left??0))},${m?-F/2:F/2-d.height})`),ee.attr(`transform`,`translate(0,${m?d.height/2+k/2:-d.height/2-k/2})`),T(n,te),n.intersect=function(e){if(t.info(`iconSquare intersect`,n,e),!n.label)return W.rect(n,e);let r=n.x??0,i=n.y??0,a=n.height??0,o=[];return o=m?[{x:r-d.width/2,y:i-a/2},{x:r+d.width/2,y:i-a/2},{x:r+d.width/2,y:i-a/2+d.height+k},{x:r+_/2,y:i-a/2+d.height+k},{x:r+_/2,y:i+a/2},{x:r-_/2,y:i+a/2},{x:r-_/2,y:i-a/2+d.height+k},{x:r-d.width/2,y:i-a/2+d.height+k}]:[{x:r-_/2,y:i-a/2},{x:r+_/2,y:i-a/2},{x:r+_/2,y:i-a/2+g},{x:r+d.width/2,y:i-a/2+g},{x:r+d.width/2/2,y:i+a/2},{x:r-d.width/2,y:i+a/2},{x:r-d.width/2,y:i-a/2+g},{x:r-_/2,y:i-a/2+g}],W.polygon(n,o,e)},u}e(ze,`iconSquare`);async function Be(e,n,{config:{flowchart:r}}){let i=new Image;i.src=n?.img??``,await i.decode();let a=Number(i.naturalWidth.toString().replace(`px`,``)),o=Number(i.naturalHeight.toString().replace(`px`,``));n.imageAspectRatio=a/o;let{labelStyles:s}=y(n);n.labelStyle=s;let c=r?.wrappingWidth;n.defaultWidth=r?.wrappingWidth;let l=Math.max(n.label?c??0:0,n?.assetWidth??a),u=n.constraint===`on`&&n?.assetHeight?n.assetHeight*n.imageAspectRatio:l,d=n.constraint===`on`?u/n.imageAspectRatio:n?.assetHeight??o;n.width=Math.max(u,c??0);let{shapeSvg:f,bbox:p,label:m}=await C(e,n,`image-shape default`),h=n.pos===`t`,g=-u/2,_=-d/2,b=n.label?8:0,x=S.svg(f),w=v(n,{});n.look!==`handDrawn`&&(w.roughness=0,w.fillStyle=`solid`);let E=x.rectangle(g,_,u,d,w),D=Math.max(u,p.width),O=d+p.height+b,k=x.rectangle(-D/2,-O/2,D,O,{...w,fill:`none`,stroke:`none`}),A=f.insert(()=>E,`:first-child`),j=f.insert(()=>k);if(n.img){let e=f.append(`image`);e.attr(`href`,n.img),e.attr(`width`,u),e.attr(`height`,d),e.attr(`preserveAspectRatio`,`none`),e.attr(`transform`,`translate(${-u/2},${h?O/2-d:-O/2})`)}return m.attr(`transform`,`translate(${-p.width/2-(p.x-(p.left??0))},${h?-d/2-p.height/2-b/2:d/2-p.height/2+b/2})`),A.attr(`transform`,`translate(0,${h?p.height/2+b/2:-p.height/2-b/2})`),T(n,j),n.intersect=function(e){if(t.info(`iconSquare intersect`,n,e),!n.label)return W.rect(n,e);let r=n.x??0,i=n.y??0,a=n.height??0,o=[];return o=h?[{x:r-p.width/2,y:i-a/2},{x:r+p.width/2,y:i-a/2},{x:r+p.width/2,y:i-a/2+p.height+b},{x:r+u/2,y:i-a/2+p.height+b},{x:r+u/2,y:i+a/2},{x:r-u/2,y:i+a/2},{x:r-u/2,y:i-a/2+p.height+b},{x:r-p.width/2,y:i-a/2+p.height+b}]:[{x:r-u/2,y:i-a/2},{x:r+u/2,y:i-a/2},{x:r+u/2,y:i-a/2+d},{x:r+p.width/2,y:i-a/2+d},{x:r+p.width/2/2,y:i+a/2},{x:r-p.width/2,y:i+a/2},{x:r-p.width/2,y:i-a/2+d},{x:r-u/2,y:i-a/2+d}],W.polygon(n,o,e)},f}e(Be,`imageSquare`);async function Ve(e,t){let{labelStyles:n,nodeStyles:r}=y(t);t.labelStyle=n;let i=t.padding??0,a=i,o=t.look===`neo`?i*2:i,{shapeSvg:s,bbox:c}=await C(e,t,E(t)),l=Math.max(c.width+(o??0)*2,t?.width??0),u=Math.max(c.height+(a??0)*2,t?.height??0),d=[{x:0,y:0},{x:l,y:0},{x:l+3*u/6,y:-u},{x:-3*u/6,y:-u}],f,{cssStyles:p}=t;if(t.look===`handDrawn`){let e=S.svg(s),n=v(t,{}),r=D(d),i=e.path(r,n);f=s.insert(()=>i,`:first-child`).attr(`transform`,`translate(${-l/2}, ${u/2})`),p&&f.attr(`style`,p)}else f=q(s,l,u,d);return r&&f.attr(`style`,r),t.width=l,t.height=u,T(t,f),t.intersect=function(e){return W.polygon(t,d,e)},s}e(Ve,`inv_trapezoid`);async function He(e,t){let{shapeSvg:n,bbox:r,label:i}=await C(e,t,`label`),a=n.insert(`rect`,`:first-child`);return a.attr(`width`,.1).attr(`height`,.1),n.attr(`class`,`label edgeLabel`),i.attr(`transform`,`translate(${-(r.width/2)-(r.x-(r.left??0))}, ${-(r.height/2)-(r.y-(r.top??0))})`),T(t,a),t.intersect=function(e){return W.rect(t,e)},n}e(He,`labelRect`);async function Ue(e,t){let{labelStyles:n,nodeStyles:r}=y(t);t.labelStyle=n;let i=t.padding??0,a=i,o=t.look===`neo`?i*2:i,{shapeSvg:s,bbox:c}=await C(e,t,E(t)),l=(t?.height??c.height)+a,u=(t?.width??c.width)+o,d=[{x:0,y:0},{x:u+3*l/6,y:0},{x:u,y:-l},{x:-(3*l)/6,y:-l}],f,{cssStyles:p}=t;if(t.look===`handDrawn`){let e=S.svg(s),n=v(t,{}),r=D(d),i=e.path(r,n);f=s.insert(()=>i,`:first-child`).attr(`transform`,`translate(${-u/2}, ${l/2})`),p&&f.attr(`style`,p)}else f=q(s,u,l,d);return r&&f.attr(`style`,r),t.width=u,t.height=l,T(t,f),t.intersect=function(e){return W.polygon(t,d,e)},s}e(Ue,`lean_left`);async function We(e,t){let{labelStyles:n,nodeStyles:r}=y(t);t.labelStyle=n;let i=t.padding??0,a=i,o=t.look===`neo`?i*2:i,{shapeSvg:s,bbox:c}=await C(e,t,E(t)),l=(t?.height??c.height)+a,u=(t?.width??c.width)+o,d=[{x:-3*l/6,y:0},{x:u,y:0},{x:u+3*l/6,y:-l},{x:0,y:-l}],f,{cssStyles:p}=t;if(t.look===`handDrawn`){let e=S.svg(s),n=v(t,{}),r=D(d),i=e.path(r,n);f=s.insert(()=>i,`:first-child`).attr(`transform`,`translate(${-u/2}, ${l/2})`),p&&f.attr(`style`,p)}else f=q(s,u,l,d);return r&&f.attr(`style`,r),t.width=u,t.height=l,T(t,f),t.intersect=function(e){return W.polygon(t,d,e)},s}e(We,`lean_right`);function Ge(e,n){let{labelStyles:r,nodeStyles:i}=y(n);n.label=``,n.labelStyle=r;let a=e.insert(`g`).attr(`class`,E(n)).attr(`id`,n.domId??n.id),{cssStyles:o}=n,s=Math.max(35,n?.width??0),c=Math.max(35,n?.height??0),l=[{x:s,y:0},{x:0,y:c+7/2},{x:s-14,y:c+7/2},{x:0,y:2*c},{x:s,y:c-7/2},{x:14,y:c-7/2}],u=S.svg(a),d=v(n,{});n.look!==`handDrawn`&&(d.roughness=0,d.fillStyle=`solid`);let f=D(l),p=u.path(f,d),m=a.insert(()=>p,`:first-child`);return m.attr(`class`,`outer-path`),o&&n.look!==`handDrawn`&&m.selectAll(`path`).attr(`style`,o),i&&n.look!==`handDrawn`&&m.selectAll(`path`).attr(`style`,i),m.attr(`transform`,`translate(-${s/2},${-c})`),T(n,m),n.intersect=function(e){return t.info(`lightningBolt intersect`,n,e),W.polygon(n,l,e)},a}e(Ge,`lightningBolt`);var Ke=e((e,t,n,r,i,a,o)=>[`M${e},${t+a}`,`a${i},${a} 0,0,0 ${n},0`,`a${i},${a} 0,0,0 ${-n},0`,`l0,${r}`,`a${i},${a} 0,0,0 ${n},0`,`l0,${-r}`,`M${e},${t+a+o}`,`a${i},${a} 0,0,0 ${n},0`].join(` `),`createCylinderPathD`),qe=e((e,t,n,r,i,a,o)=>[`M${e},${t+a}`,`M${e+n},${t+a}`,`a${i},${a} 0,0,0 ${-n},0`,`l0,${r}`,`a${i},${a} 0,0,0 ${n},0`,`l0,${-r}`,`M${e},${t+a+o}`,`a${i},${a} 0,0,0 ${n},0`].join(` `),`createOuterCylinderPathD`),Je=e((e,t,n,r,i,a)=>[`M${e-n/2},${-r/2}`,`a${i},${a} 0,0,0 ${n},0`].join(` `),`createInnerCylinderPathD`),Ye=10,Xe=10;async function Ze(e,t){let{labelStyles:n,nodeStyles:r}=y(t);t.labelStyle=n;let i=t.padding??0,a=t.look===`neo`?16:i,o=t.look===`neo`?24:i;if(t.width||t.height){let e=t.width??0;t.width=(t.width??0)-a,t.width<Xe&&(t.width=Xe);let n=e/2/(2.5+e/50);t.height=(t.height??0)-o-n*3,t.height<Ye&&(t.height=Ye)}let{shapeSvg:s,bbox:c,label:l}=await C(e,t,E(t)),u=(t?.width?t?.width:c.width)+a*2,d=u/2,f=d/(2.5+u/50),m=(t?.height?t?.height:c.height)+f+o*2,h=m*.1,g,{cssStyles:_}=t;if(t.look===`handDrawn`){let e=S.svg(s),n=qe(0,0,u,m,d,f,h),r=Je(0,f,u,m,d,f),i=v(t,{}),a=e.path(n,i),o=e.path(r,i);s.insert(()=>o,`:first-child`).attr(`class`,`line`),g=s.insert(()=>a,`:first-child`),g.attr(`class`,`basic label-container`),_&&g.attr(`style`,_)}else{let e=Ke(0,0,u,m,d,f,h);g=s.insert(`path`,`:first-child`).attr(`d`,e).attr(`class`,`basic label-container outer-path`).attr(`style`,p(_)).attr(`style`,r)}return g.attr(`label-offset-y`,f),g.attr(`transform`,`translate(${-u/2}, ${-(m/2+f)})`),T(t,g),l.attr(`transform`,`translate(${-(c.width/2)-(c.x-(c.left??0))}, ${-(c.height/2)+f-(c.y-(c.top??0))})`),t.intersect=function(e){let n=W.rect(t,e),r=n.x-(t.x??0);if(d!=0&&(Math.abs(r)<(t.width??0)/2||Math.abs(r)==(t.width??0)/2&&Math.abs(n.y-(t.y??0))>(t.height??0)/2-f)){let i=f*f*(1-r*r/(d*d));i>0&&(i=Math.sqrt(i)),i=f-i,e.y-(t.y??0)>0&&(i=-i),n.y+=i}return n},s}e(Ze,`linedCylinder`);async function Qe(e,t){let{labelStyles:n,nodeStyles:r}=y(t);t.labelStyle=n;let i=t.padding??0,a=t.look===`neo`?16:i,o=t.look===`neo`?12:i;(t.width||t.height)&&(t.width=(t.width??0)*10/11-a*2,t.width<10&&(t.width=10),t.height=(t?.height??0)-o*2,t.height<10&&(t.height=10));let{shapeSvg:s,bbox:c,label:l}=await C(e,t,E(t)),u=(t?.width?t?.width:c.width)+(a??0)*2,d=(t?.height?t?.height:c.height)+(o??0)*2,f=t.look===`neo`?d/4:d/8,p=d+f,{cssStyles:m}=t,h=S.svg(s),g=v(t,{});t.look!==`handDrawn`&&(g.roughness=0,g.fillStyle=`solid`);let _=[{x:-u/2-u/2*.1,y:-p/2},{x:-u/2-u/2*.1,y:p/2},...O(-u/2-u/2*.1,p/2,u/2+u/2*.1,p/2,f,.8),{x:u/2+u/2*.1,y:-p/2},{x:-u/2-u/2*.1,y:-p/2},{x:-u/2,y:-p/2},{x:-u/2,y:p/2*1.1},{x:-u/2,y:-p/2}],b=h.polygon(_.map(e=>[e.x,e.y]),g),x=s.insert(()=>b,`:first-child`);return x.attr(`class`,`basic label-container outer-path`),m&&t.look!==`handDrawn`&&x.selectAll(`path`).attr(`style`,m),r&&t.look!==`handDrawn`&&x.selectAll(`path`).attr(`style`,r),x.attr(`transform`,`translate(0,${-f/2})`),l.attr(`transform`,`translate(${-u/2+(t.padding??0)+u/2*.1/2-(c.x-(c.left??0))},${-d/2+(t.padding??0)-f/2-(c.y-(c.top??0))})`),T(t,x),t.intersect=function(e){return W.polygon(t,_,e)},s}e(Qe,`linedWaveEdgedRect`);async function $e(e,t){let{labelStyles:n,nodeStyles:r}=y(t);t.labelStyle=n;let i=t.padding??0,a=t.look===`neo`?16:i,o=t.look===`neo`?12:i,s=t.look===`neo`?10:5;(t.width||t.height)&&(t.width=Math.max((t?.width??0)-a*2-2*s,10),t.height=Math.max((t?.height??0)-o*2-2*s,10));let{shapeSvg:c,bbox:l,label:u}=await C(e,t,E(t)),d=(t?.width?t?.width:l.width)+a*2+2*s,f=(t?.height?t?.height:l.height)+o*2+2*s,p=d-2*s,m=f-2*s,h=-p/2,g=-m/2,{cssStyles:_}=t,b=S.svg(c),x=v(t,{}),w=[{x:h-s,y:g+s},{x:h-s,y:g+m+s},{x:h+p-s,y:g+m+s},{x:h+p-s,y:g+m},{x:h+p,y:g+m},{x:h+p,y:g+m-s},{x:h+p+s,y:g+m-s},{x:h+p+s,y:g-s},{x:h+s,y:g-s},{x:h+s,y:g},{x:h,y:g},{x:h,y:g+s}],O=[{x:h,y:g+s},{x:h+p-s,y:g+s},{x:h+p-s,y:g+m},{x:h+p,y:g+m},{x:h+p,y:g},{x:h,y:g}];t.look!==`handDrawn`&&(x.roughness=0,x.fillStyle=`solid`);let k=D(w),j=b.path(k,x),M=D(O),N=b.path(M,x);t.look!==`handDrawn`&&(j=A(j),N=A(N));let P=c.insert(`g`,`:first-child`);return P.insert(()=>j),P.insert(()=>N),P.attr(`class`,`basic label-container outer-path`),_&&t.look!==`handDrawn`&&P.selectAll(`path`).attr(`style`,_),r&&t.look!==`handDrawn`&&P.selectAll(`path`).attr(`style`,r),u.attr(`transform`,`translate(${-(l.width/2)-s-(l.x-(l.left??0))}, ${-(l.height/2)+s-(l.y-(l.top??0))})`),T(t,P),t.intersect=function(e){return W.polygon(t,w,e)},c}e($e,`multiRect`);async function et(e,t){let{labelStyles:n,nodeStyles:r}=y(t);t.labelStyle=n;let{shapeSvg:i,bbox:a,label:o}=await C(e,t,E(t)),s=t.padding??0,c=t.look===`neo`?16:s,l=t.look===`neo`?12:s,u=!0;(t.width||t.height)&&(u=!1,t.width=(t?.width??0)-c*2,t.height=(t?.height??0)-l*3);let d=Math.max(a.width,t?.width??0)+c*2,f=Math.max(a.height,t?.height??0)+l*3,p=t.look===`neo`?f/4:f/8,m=f+(u?p/2:-p/2),h=-d/2,g=-m/2,{cssStyles:_}=t,b=O(h-10,g+m+10,h+d-10,g+m+10,p,.8),x=b?.[b.length-1],w=[{x:h-10,y:g+10},{x:h-10,y:g+m+10},...b,{x:h+d-10,y:x.y-10},{x:h+d,y:x.y-10},{x:h+d,y:x.y-20},{x:h+d+10,y:x.y-20},{x:h+d+10,y:g-10},{x:h+10,y:g-10},{x:h+10,y:g},{x:h,y:g},{x:h,y:g+10}],k=[{x:h,y:g+10},{x:h+d-10,y:g+10},{x:h+d-10,y:x.y-10},{x:h+d,y:x.y-10},{x:h+d,y:g},{x:h,y:g}],A=S.svg(i),j=v(t,{});t.look!==`handDrawn`&&(j.roughness=0,j.fillStyle=`solid`);let M=D(w),N=A.path(M,j),P=D(k),F=A.path(P,j),I=i.insert(()=>N,`:first-child`);return I.insert(()=>F),I.attr(`class`,`basic label-container outer-path`),_&&t.look!==`handDrawn`&&I.selectAll(`path`).attr(`style`,_),r&&t.look!==`handDrawn`&&I.selectAll(`path`).attr(`style`,r),I.attr(`transform`,`translate(0,${-p/2})`),o.attr(`transform`,`translate(${-(a.width/2)-10-(a.x-(a.left??0))}, ${-(a.height/2)+10-p/2-(a.y-(a.top??0))})`),T(t,I),t.intersect=function(e){return W.polygon(t,w,e)},i}e(et,`multiWaveEdgedRectangle`);async function tt(e,t,{config:{themeVariables:n}}){let{labelStyles:r,nodeStyles:i}=y(t);t.labelStyle=r,t.useHtmlLabels||a(o())||(t.centerLabel=!0);let{shapeSvg:s,bbox:c,label:l}=await C(e,t,E(t)),u=Math.max(c.width+(t.padding??0)*2,t?.width??0),d=Math.max(c.height+(t.padding??0)*2,t?.height??0),f=-u/2,p=-d/2,{cssStyles:m}=t,h=S.svg(s),g=v(t,{fill:n.noteBkgColor,stroke:n.noteBorderColor});t.look!==`handDrawn`&&(g.roughness=0,g.fillStyle=`solid`);let _=h.rectangle(f,p,u,d,g),b=s.insert(()=>_,`:first-child`);return b.attr(`class`,`basic label-container outer-path`),l.attr(`class`,`label noteLabel`),m&&t.look!==`handDrawn`&&b.selectAll(`path`).attr(`style`,m),i&&t.look!==`handDrawn`&&b.selectAll(`path`).attr(`style`,i),l.attr(`transform`,`translate(${-c.width/2-(c.x-(c.left??0))}, ${-(c.height/2)-(c.y-(c.top??0))})`),T(t,b),t.intersect=function(e){return W.rect(t,e)},s}e(tt,`note`);var nt=e((e,t,n)=>[`M${e+n/2},${t}`,`L${e+n},${t-n/2}`,`L${e+n/2},${t-n}`,`L${e},${t-n/2}`,`Z`].join(` `),`createDecisionBoxPathD`);async function rt(e,t){let{labelStyles:n,nodeStyles:r}=y(t);t.labelStyle=n;let{shapeSvg:i,bbox:a}=await C(e,t,E(t)),o=a.width+(t.padding??0)+(a.height+(t.padding??0)),s=.5,c=[{x:o/2,y:0},{x:o,y:-o/2},{x:o/2,y:-o},{x:0,y:-o/2}],l,{cssStyles:u}=t;if(t.look===`handDrawn`){let e=S.svg(i),n=v(t,{}),r=nt(0,0,o),a=e.path(r,n);l=i.insert(()=>a,`:first-child`).attr(`transform`,`translate(${-o/2+s}, ${o/2})`),u&&l.attr(`style`,u)}else l=q(i,o,o,c),l.attr(`transform`,`translate(${-o/2+s}, ${o/2})`);return r&&l.attr(`style`,r),T(t,l),t.calcIntersect=function(e,t){let n=e.width,r=[{x:n/2,y:0},{x:n,y:-n/2},{x:n/2,y:-n},{x:0,y:-n/2}],i=W.polygon(e,r,t);return{x:i.x-.5,y:i.y-.5}},t.intersect=function(e){return this.calcIntersect(t,e)},i}e(rt,`question`);async function it(e,t){let{labelStyles:n,nodeStyles:r}=y(t);t.labelStyle=n;let i=t.padding??0,a=t.look===`neo`?21:i??0,o=t.look===`neo`?12:i??0,{shapeSvg:s,bbox:c,label:l}=await C(e,t,E(t)),u=(t?.width??c.width)+(t.look===`neo`?a*2:a),d=(t?.height??c.height)+(t.look===`neo`?o*2:o),f=-u/2,p=-d/2,m=p/2,h=[{x:f+m,y:p},{x:f,y:0},{x:f+m,y:-p},{x:-f,y:-p},{x:-f,y:p}],{cssStyles:g}=t,_=S.svg(s),b=v(t,{});t.look!==`handDrawn`&&(b.roughness=0,b.fillStyle=`solid`);let x=D(h),w=_.path(x,b),O=s.insert(()=>w,`:first-child`);return O.attr(`class`,`basic label-container outer-path`),g&&t.look!==`handDrawn`&&O.selectAll(`path`).attr(`style`,g),r&&t.look!==`handDrawn`&&O.selectAll(`path`).attr(`style`,r),O.attr(`transform`,`translate(${-m/2},0)`),l.attr(`transform`,`translate(${-m/2-c.width/2-(c.x-(c.left??0))}, ${-(c.height/2)-(c.y-(c.top??0))})`),T(t,O),t.intersect=function(e){return W.polygon(t,h,e)},s}e(it,`rect_left_inv_arrow`);async function at(e,n){let{labelStyles:r,nodeStyles:i}=y(n);n.labelStyle=r;let o;o=n.cssClasses?`node `+n.cssClasses:`node default`;let s=e.insert(`g`).attr(`class`,o).attr(`id`,n.domId||n.id),l=s.insert(`g`),d=s.insert(`g`).attr(`class`,`label`).attr(`style`,i),f=n.description,p=n.label,m=await M(d,p,n.labelStyle,!0,!0),h={width:0,height:0};if(a(c())){let e=m.children[0],t=u(m);h=e.getBoundingClientRect(),t.attr(`width`,h.width),t.attr(`height`,h.height)}t.info(`Text 2`,f);let g=f||[],_=m.getBBox(),b=await M(d,Array.isArray(g)?g.join(`<br/>`):g,n.labelStyle,!0,!0),x=b.children[0],C=u(b);h=x.getBoundingClientRect(),C.attr(`width`,h.width),C.attr(`height`,h.height);let w=(n.padding||0)/2;u(b).attr(`transform`,`translate( `+(h.width>_.width?0:(_.width-h.width)/2)+`, `+(_.height+w+5)+`)`),u(m).attr(`transform`,`translate( `+(h.width<_.width?0:-(_.width-h.width)/2)+`, 0)`),h=d.node().getBBox(),d.attr(`transform`,`translate(`+-h.width/2+`, `+(-h.height/2-w+3)+`)`);let E=h.width+(n.padding||0),D=h.height+(n.padding||0),O=-h.width/2-w,k=-h.height/2-w,A,j;if(n.look===`handDrawn`){let e=S.svg(s),r=v(n,{}),i=e.path(N(O,k,E,D,n.rx||0),r),a=e.line(-h.width/2-w,-h.height/2-w+_.height+w,h.width/2+w,-h.height/2-w+_.height+w,r);j=s.insert(()=>(t.debug(`Rough node insert CXC`,i),a),`:first-child`),A=s.insert(()=>(t.debug(`Rough node insert CXC`,i),i),`:first-child`)}else A=l.insert(`rect`,`:first-child`),j=l.insert(`line`),A.attr(`class`,`outer title-state`).attr(`style`,i).attr(`x`,-h.width/2-w).attr(`y`,-h.height/2-w).attr(`width`,h.width+(n.padding||0)).attr(`height`,h.height+(n.padding||0)),j.attr(`class`,`divider`).attr(`x1`,-h.width/2-w).attr(`x2`,h.width/2+w).attr(`y1`,-h.height/2-w+_.height+w).attr(`y2`,-h.height/2-w+_.height+w);return T(n,A),n.intersect=function(e){return W.rect(n,e)},s}e(at,`rectWithTitle`);async function ot(e,t,{config:{themeVariables:n}}){let r=n?.radius??5;return Ce(e,t,{rx:r,ry:r,classes:``,labelPaddingX:(t?.padding??0)*1,labelPaddingY:(t?.padding??0)*1})}e(ot,`roundedRect`);var Z=8;async function st(e,t){let{labelStyles:n,nodeStyles:r}=y(t);t.labelStyle=n;let i=t.look===`neo`?16:t.padding??0,a=t.look===`neo`?12:t.padding??0,{shapeSvg:o,bbox:s,label:c}=await C(e,t,E(t)),l=(t?.width??s.width)+i*2+(t.look===`neo`?Z:Z*2),u=(t?.height??s.height)+a*2,d=l-Z,f=u,m=Z-l/2,h=-u/2,{cssStyles:g}=t,_=S.svg(o),b=v(t,{});t.look!==`handDrawn`&&(b.roughness=0,b.fillStyle=`solid`);let x=[{x:m,y:h},{x:m+d,y:h},{x:m+d,y:h+f},{x:m-Z,y:h+f},{x:m-Z,y:h},{x:m,y:h},{x:m,y:h+f}],w=_.polygon(x.map(e=>[e.x,e.y]),b),D=o.insert(()=>w,`:first-child`);return D.attr(`class`,`basic label-container outer-path`).attr(`style`,p(g)),r&&t.look!==`handDrawn`&&D.selectAll(`path`).attr(`style`,r),g&&t.look!==`handDrawn`&&D.selectAll(`path`).attr(`style`,r),c.attr(`transform`,`translate(${Z/2-s.width/2-(s.x-(s.left??0))}, ${-(s.height/2)-(s.y-(s.top??0))})`),T(t,D),t.intersect=function(e){return W.rect(t,e)},o}e(st,`shadedProcess`);async function ct(e,t){let{labelStyles:n,nodeStyles:r}=y(t);t.labelStyle=n;let i=t.padding??0,a=t.look===`neo`?16:i,o=t.look===`neo`?12:i;(t.width||t.height)&&(t.width=Math.max((t?.width??0)-a*2,10),t.height=Math.max((t?.height??0)/1.5-o*2,10));let{shapeSvg:s,bbox:c,label:l}=await C(e,t,E(t)),u=(t?.width?t?.width:c.width)+a*2,d=((t?.height?t?.height:c.height)+o*2)*1.5,f=u,p=d/1.5,m=-f/2,h=-p/2,{cssStyles:g}=t,_=S.svg(s),b=v(t,{});t.look!==`handDrawn`&&(b.roughness=0,b.fillStyle=`solid`);let x=[{x:m,y:h},{x:m,y:h+p},{x:m+f,y:h+p},{x:m+f,y:h-p/2}],w=D(x),O=_.path(w,b),k=s.insert(()=>O,`:first-child`);return k.attr(`class`,`basic label-container outer-path`),g&&t.look!==`handDrawn`&&k.selectChildren(`path`).attr(`style`,g),r&&t.look!==`handDrawn`&&k.selectChildren(`path`).attr(`style`,r),k.attr(`transform`,`translate(0, ${p/4})`),l.attr(`transform`,`translate(${-f/2+(t.padding??0)-(c.x-(c.left??0))}, ${-p/4+(t.padding??0)-(c.y-(c.top??0))})`),T(t,k),t.intersect=function(e){return W.polygon(t,x,e)},s}e(ct,`slopedRect`);async function lt(e,t){let n=t.padding??0,r=t.look===`neo`?16:n*2,i=t.look===`neo`?12:n;return Ce(e,t,{rx:0,ry:0,classes:``,labelPaddingX:t.labelPaddingX??r,labelPaddingY:i})}e(lt,`squareRect`);async function ut(e,t){let{labelStyles:n,nodeStyles:r}=y(t);t.labelStyle=n;let i=t.padding??0,a=t.look===`neo`?20:i,o=t.look===`neo`?12:i,{shapeSvg:s,bbox:c}=await C(e,t,E(t)),l=c.height+(t.look===`neo`?o*2:o),u=c.width+l/4+(t.look===`neo`?a*2:a),d=l/2,{cssStyles:f}=t,p=S.svg(s),m=v(t,{});t.look!==`handDrawn`&&(m.roughness=0,m.fillStyle=`solid`);let h=[{x:-u/2+d,y:-l/2},{x:u/2-d,y:-l/2},...k(-u/2+d,0,d,50,90,270),{x:u/2-d,y:l/2},...k(u/2-d,0,d,50,270,450)],g=D(h),_=p.path(g,m),b=s.insert(()=>_,`:first-child`);return b.attr(`class`,`basic label-container outer-path`),f&&t.look!==`handDrawn`&&b.selectChildren(`path`).attr(`style`,f),r&&t.look!==`handDrawn`&&b.selectChildren(`path`).attr(`style`,r),T(t,b),t.intersect=function(e){return W.polygon(t,h,e)},s}e(ut,`stadium`);async function dt(e,t){return Ce(e,t,{rx:t.look===`neo`?3:5,ry:t.look===`neo`?3:5,classes:`flowchart-node`})}e(dt,`state`);function ft(e,t,{config:{themeVariables:n}}){let{labelStyles:r,nodeStyles:i}=y(t);t.labelStyle=r;let{cssStyles:a}=t,{lineColor:o,stateBorder:s,nodeBorder:c,nodeShadow:l}=n;(t.width||t.height)&&((t.width??0)<14&&(t.width=14),(t.height??0)<14&&(t.height=14)),t.width||=14,t.height||=14;let u=e.insert(`g`).attr(`class`,`node default`).attr(`id`,t.domId??t.id),d=S.svg(u),f=v(t,{});t.look!==`handDrawn`&&(f.roughness=0,f.fillStyle=`solid`);let p=d.circle(0,0,t.width,{...f,stroke:o,strokeWidth:2}),m=s??c,h=(t.width??0)*5/14,g=d.circle(0,0,h,{...f,fill:m,stroke:m,strokeWidth:2,fillStyle:`solid`}),_=u.insert(()=>p,`:first-child`);if(_.insert(()=>g),t.look!==`handDrawn`&&_.attr(`class`,`outer-path`),a&&_.selectAll(`path`).attr(`style`,a),i&&_.selectAll(`path`).attr(`style`,i),t.width<25&&l&&t.look!==`handDrawn`){let t=e.node()?.ownerSVGElement?.id??``,n=t?`${t}-drop-shadow-small`:`drop-shadow-small`;_.attr(`style`,`filter:url(#${n})`)}return T(t,_),t.intersect=function(e){return W.circle(t,(t.width??0)/2,e)},u}e(ft,`stateEnd`);function pt(e,t,{config:{themeVariables:n}}){let{lineColor:r,nodeShadow:i}=n;(t.width||t.height)&&((t.width??0)<14&&(t.width=14),(t.height??0)<14&&(t.height=14)),t.width||=14,t.height||=14;let a=e.insert(`g`).attr(`class`,`node default`).attr(`id`,t.domId||t.id),o;if(t.look===`handDrawn`){let e=S.svg(a).circle(0,0,t.width,b(r));o=a.insert(()=>e),o.attr(`class`,`state-start`).attr(`r`,(t.width??7)/2).attr(`width`,t.width??14).attr(`height`,t.height??14)}else o=a.insert(`circle`,`:first-child`),o.attr(`class`,`state-start`).attr(`r`,(t.width??7)/2).attr(`width`,t.width??14).attr(`height`,t.height??14);if(t.width<25&&i&&t.look!==`handDrawn`){let t=e.node()?.ownerSVGElement?.id??``,n=t?`${t}-drop-shadow-small`:`drop-shadow-small`;o.attr(`style`,`filter:url(#${n})`)}return T(t,o),t.intersect=function(e){return W.circle(t,(t.width??7)/2,e)},a}e(pt,`stateStart`);var mt=8;async function ht(e,t){let{labelStyles:n,nodeStyles:r}=y(t);t.labelStyle=n;let i=t?.padding??8,a=t.look===`neo`?28:i,o=t.look===`neo`?12:i,{shapeSvg:s,bbox:c}=await C(e,t,E(t)),l=(t?.width??c.width)+2*mt+a,u=(t?.height??c.height)+o,d=l-2*mt,f=u,m=-l/2,h=-u/2,g=[{x:0,y:0},{x:d,y:0},{x:d,y:-f},{x:0,y:-f},{x:0,y:0},{x:-8,y:0},{x:d+8,y:0},{x:d+8,y:-f},{x:-8,y:-f},{x:-8,y:0}];if(t.look===`handDrawn`){let e=S.svg(s),n=v(t,{}),r=e.rectangle(m,h,d+16,f,n),i=e.line(m+mt,h,m+mt,h+f,n),a=e.line(m+mt+d,h,m+mt+d,h+f,n);s.insert(()=>i,`:first-child`),s.insert(()=>a,`:first-child`);let o=s.insert(()=>r,`:first-child`),{cssStyles:c}=t;o.attr(`class`,`basic label-container`).attr(`style`,p(c)),T(t,o)}else{let e=q(s,d,f,g);r&&e.attr(`style`,r),T(t,e)}return t.intersect=function(e){return W.polygon(t,g,e)},s}e(ht,`subroutine`);var gt=.2;async function _t(e,t){let{labelStyles:n,nodeStyles:r}=y(t);t.labelStyle=n;let i=t.padding??0,a=t.look===`neo`?16:i,o=t.look===`neo`?12:i;(t.width||t.height)&&(t.height=Math.max((t?.height??0)-o*2,10),t.width=Math.max((t?.width??0)-a*2-gt*(t.height+o*2),10));let{shapeSvg:s,bbox:c}=await C(e,t,E(t)),l=(t?.height?t?.height:c.height)+o*2,u=gt*l,d=gt*l,f=(t?.width?t?.width:c.width)+a*2+u-u,p=l,m=-f/2,h=-p/2,{cssStyles:g}=t,_=S.svg(s),b=v(t,{}),x=[{x:m-u/2,y:h},{x:m+f+u/2,y:h},{x:m+f+u/2,y:h+p},{x:m-u/2,y:h+p}],w=[{x:m+f-u/2,y:h+p},{x:m+f+u/2,y:h+p},{x:m+f+u/2,y:h+p-d}];t.look!==`handDrawn`&&(b.roughness=0,b.fillStyle=`solid`);let O=D(x),k=_.path(O,b),A=D(w),j=_.path(A,{...b,fillStyle:`solid`}),M=s.insert(()=>j,`:first-child`);return M.insert(()=>k,`:first-child`),M.attr(`class`,`basic label-container outer-path`),g&&t.look!==`handDrawn`&&M.selectAll(`path`).attr(`style`,g),r&&t.look!==`handDrawn`&&M.selectAll(`path`).attr(`style`,r),T(t,M),t.intersect=function(e){return W.polygon(t,x,e)},s}e(_t,`taggedRect`);async function vt(e,t){let{labelStyles:n,nodeStyles:r}=y(t);t.labelStyle=n;let{shapeSvg:i,bbox:a,label:o}=await C(e,t,E(t)),s=Math.max(a.width+(t.padding??0)*2,t?.width??0),c=Math.max(a.height+(t.padding??0)*2,t?.height??0),l=c/8,u=.2*s,d=.2*c,f=c+l,{cssStyles:p}=t,m=S.svg(i),h=v(t,{});t.look!==`handDrawn`&&(h.roughness=0,h.fillStyle=`solid`);let g=[{x:-s/2-s/2*.1,y:f/2},...O(-s/2-s/2*.1,f/2,s/2+s/2*.1,f/2,l,.8),{x:s/2+s/2*.1,y:-f/2},{x:-s/2-s/2*.1,y:-f/2}],_=-s/2+s/2*.1,b=-f/2-d*.4,x=[{x:_+s-u,y:(b+c)*1.3},{x:_+s,y:b+c-d},{x:_+s,y:(b+c)*.9},...O(_+s,(b+c)*1.25,_+s-u,(b+c)*1.3,-c*.02,.5)],w=D(g),k=m.path(w,h),A=D(x),j=m.path(A,{...h,fillStyle:`solid`}),M=i.insert(()=>j,`:first-child`);return M.insert(()=>k,`:first-child`),M.attr(`class`,`basic label-container outer-path`),p&&t.look!==`handDrawn`&&M.selectAll(`path`).attr(`style`,p),r&&t.look!==`handDrawn`&&M.selectAll(`path`).attr(`style`,r),M.attr(`transform`,`translate(0,${-l/2})`),o.attr(`transform`,`translate(${-s/2+(t.padding??0)-(a.x-(a.left??0))},${-c/2+(t.padding??0)-l/2-(a.y-(a.top??0))})`),T(t,M),t.intersect=function(e){return W.polygon(t,g,e)},i}e(vt,`taggedWaveEdgedRectangle`);async function yt(e,t){let{labelStyles:n,nodeStyles:r}=y(t);t.labelStyle=n;let{shapeSvg:i,bbox:a}=await C(e,t,E(t)),o=Math.max(a.width+(t.padding??0),t?.width||0),s=Math.max(a.height+(t.padding??0),t?.height||0),c=-o/2,l=-s/2,u=i.insert(`rect`,`:first-child`);return u.attr(`class`,`text`).attr(`style`,r).attr(`rx`,0).attr(`ry`,0).attr(`x`,c).attr(`y`,l).attr(`width`,o).attr(`height`,s),T(t,u),t.intersect=function(e){return W.rect(t,e)},i}e(yt,`text`);var bt=e((e,t,n,r,i,a)=>`M${e},${t}
3
3
  a${i},${a} 0,0,1 0,${-r}
4
4
  l${n},0
@@ -0,0 +1 @@
1
+ import{n as e}from"./chunk-AGHRB4JF-CYdXVA2-.js";import{Vt as t}from"./vendor-utils-rVejrfMR.js";var n=e((e,n)=>{let r;return n===`sandbox`&&(r=t(`#i`+e)),t(n===`sandbox`?r.nodes()[0].contentDocument.body:`body`).select(`[id="${e}"]`)},`getDiagramElement`);export{n as t};
@@ -1,2 +1,2 @@
1
- import{n as e,r as t}from"./chunk-AGHRB4JF-CYdXVA2-.js";import{R as n,h as r,p as i,r as a,s as o}from"./chunk-CSCIHK7Q-CAE1p4Em.js";import{$ as s,G as c,H as l,J as u,K as d,Nt as ee,Q as te,U as ne,V as re,W as ie,X as ae,Y as oe,Z as se,at as ce,ct as le,et as ue,it as de,nt as fe,q as pe,rt as me,tt as he}from"./vendor-utils-BnxL60_-.js";import{t as ge}from"./dist-DrIWh2fi.js";function _e(e){return Number.isSafeInteger(e)&&e>=0}function ve(e){return e!=null&&typeof e!=`function`&&_e(e.length)}function ye(e){return e===`__proto__`}function f(e){return e==null||typeof e!=`object`&&typeof e!=`function`}function be(e){return Object.getOwnPropertySymbols(e).filter(t=>Object.prototype.propertyIsEnumerable.call(e,t))}function p(e){return e==null?e===void 0?`[object Undefined]`:`[object Null]`:Object.prototype.toString.call(e)}var xe=`[object RegExp]`,m=`[object String]`,h=`[object Number]`,g=`[object Boolean]`,_=`[object Arguments]`,Se=`[object Symbol]`,v=`[object Date]`,y=`[object Map]`,b=`[object Set]`,x=`[object Array]`,S=`[object ArrayBuffer]`,C=`[object Object]`,w=`[object DataView]`,T=`[object Uint8Array]`,E=`[object Uint8ClampedArray]`,D=`[object Uint16Array]`,O=`[object Uint32Array]`,k=`[object Int8Array]`,A=`[object Int16Array]`,j=`[object Int32Array]`,M=`[object Float32Array]`,Ce=`[object Float64Array]`,we=typeof globalThis==`object`&&globalThis||typeof window==`object`&&window||typeof self==`object`&&self||typeof global==`object`&&global||(function(){return this})()||Function(`return this`)();function N(e){return we.Buffer!==void 0&&we.Buffer.isBuffer(e)}function P(e){return ArrayBuffer.isView(e)&&!(e instanceof DataView)}function Te(e,t){return F(e,void 0,e,new Map,t)}function F(e,t,n,r=new Map,i=void 0){let a=i?.(e,t,n,r);if(a!==void 0)return a;if(f(e))return e;if(r.has(e))return r.get(e);if(Array.isArray(e)){let t=Array(e.length);r.set(e,t);for(let a=0;a<e.length;a++)t[a]=F(e[a],a,n,r,i);return Object.hasOwn(e,`index`)&&(t.index=e.index),Object.hasOwn(e,`input`)&&(t.input=e.input),t}if(e instanceof Date)return new Date(e.getTime());if(e instanceof RegExp){let t=new RegExp(e.source,e.flags);return t.lastIndex=e.lastIndex,t}if(e instanceof Map){let t=new Map;r.set(e,t);for(let[a,o]of e)t.set(a,F(o,a,n,r,i));return t}if(e instanceof Set){let t=new Set;r.set(e,t);for(let a of e)t.add(F(a,void 0,n,r,i));return t}if(N(e))return e.subarray();if(P(e)){let t=new(Object.getPrototypeOf(e)).constructor(e.length);r.set(e,t);for(let a=0;a<e.length;a++)t[a]=F(e[a],a,n,r,i);return t}if(e instanceof ArrayBuffer||typeof SharedArrayBuffer<`u`&&e instanceof SharedArrayBuffer)return e.slice(0);if(e instanceof DataView){let t=new DataView(e.buffer.slice(0),e.byteOffset,e.byteLength);return r.set(e,t),I(t,e,n,r,i),t}if(typeof File<`u`&&e instanceof File){let t=new File([e],e.name,{type:e.type});return r.set(e,t),I(t,e,n,r,i),t}if(typeof Blob<`u`&&e instanceof Blob){let t=new Blob([e],{type:e.type});return r.set(e,t),I(t,e,n,r,i),t}if(e instanceof Error){let t=structuredClone(e);return r.set(e,t),t.message=e.message,t.name=e.name,t.stack=e.stack,t.cause=e.cause,t.constructor=e.constructor,I(t,e,n,r,i),t}if(e instanceof Boolean){let t=new Boolean(e.valueOf());return r.set(e,t),I(t,e,n,r,i),t}if(e instanceof Number){let t=new Number(e.valueOf());return r.set(e,t),I(t,e,n,r,i),t}if(e instanceof String){let t=new String(e.valueOf());return r.set(e,t),I(t,e,n,r,i),t}if(typeof e==`object`&&Ee(e)){let t=Object.create(Object.getPrototypeOf(e));return r.set(e,t),I(t,e,n,r,i),t}return e}function I(e,t,n=e,r,i){let a=[...Object.keys(t),...be(t)];for(let o=0;o<a.length;o++){let s=a[o],c=Object.getOwnPropertyDescriptor(e,s);(c==null||c.writable)&&(e[s]=F(t[s],s,n,r,i))}}function Ee(e){switch(p(e)){case _:case x:case S:case w:case g:case v:case M:case Ce:case k:case A:case j:case y:case h:case C:case xe:case b:case m:case Se:case T:case E:case D:case O:return!0;default:return!1}}function De(e,t){return Te(e,(n,r,i,a)=>{let o=t?.(n,r,i,a);if(o!==void 0)return o;if(typeof e==`object`){if(p(e)===`[object Object]`&&typeof e.constructor!=`function`){let t={};return a.set(e,t),I(t,e,i,a),t}switch(Object.prototype.toString.call(e)){case h:case m:case g:{let t=new e.constructor(e?.valueOf());return I(t,e),t}case _:{let t={};return I(t,e),t.length=e.length,t[Symbol.iterator]=e[Symbol.iterator],t}default:return}}})}function Oe(e){return De(e)}function L(e){return typeof e==`object`&&!!e&&p(e)===`[object Arguments]`}function R(e){return typeof e==`object`&&!!e}function ke(e){return R(e)&&ve(e)}function z(e,t){if(typeof e!=`function`||t!=null&&typeof t!=`function`)throw TypeError(`Expected a function`);let n=function(...r){let i=t?t.apply(this,r):r[0],a=n.cache;if(a.has(i))return a.get(i);let o=e.apply(this,r);return n.cache=a.set(i,o)||a,o};return n.cache=new(z.Cache||Map),n}z.Cache=Map;function Ae(){}function B(e){return P(e)}function V(e){if(typeof e!=`object`||!e)return!1;if(Object.getPrototypeOf(e)===null)return!0;if(Object.prototype.toString.call(e)!==`[object Object]`){let t=e[Symbol.toStringTag];return t==null||!Object.getOwnPropertyDescriptor(e,Symbol.toStringTag)?.writable?!1:e.toString()===`[object ${t}]`}let t=e;for(;Object.getPrototypeOf(t)!==null;)t=Object.getPrototypeOf(t);return Object.getPrototypeOf(e)===t}function je(e){if(f(e))return e;if(Array.isArray(e)||P(e)||e instanceof ArrayBuffer||typeof SharedArrayBuffer<`u`&&e instanceof SharedArrayBuffer)return e.slice(0);let t=Object.getPrototypeOf(e);if(t==null)return Object.assign(Object.create(t),e);let n=t.constructor;if(e instanceof Date||e instanceof Map||e instanceof Set)return new n(e);if(e instanceof RegExp){let t=new n(e);return t.lastIndex=e.lastIndex,t}if(e instanceof DataView)return new n(e.buffer.slice(0));if(e instanceof Error){let t;return t=e instanceof AggregateError?new n(e.errors,e.message,{cause:e.cause}):new n(e.message,{cause:e.cause}),t.stack=e.stack,Object.assign(t,e),t}return typeof File<`u`&&e instanceof File?new n([e],e.name,{type:e.type,lastModified:e.lastModified}):typeof e==`object`?Object.assign(Object.create(t),e):e}function Me(e,...t){let n=t.slice(0,-1),r=t[t.length-1],i=e;for(let e=0;e<n.length;e++){let t=n[e];i=H(i,t,r,new Map)}return i}function H(e,t,n,r){if(f(e)&&(e=Object(e)),typeof t!=`object`||!t)return e;if(r.has(t))return je(r.get(t));if(r.set(t,e),Array.isArray(t)){t=t.slice();for(let e=0;e<t.length;e++)t[e]=t[e]??void 0}let i=[...Object.keys(t),...be(t)];for(let a=0;a<i.length;a++){let o=i[a];if(ye(o))continue;let s=t[o],c=e[o];if(L(s)&&(s={...s}),L(c)&&(c={...c}),N(s)&&(s=Oe(s)),Array.isArray(s))if(Array.isArray(c)){let e=[],t=Reflect.ownKeys(c);for(let n=0;n<t.length;n++){let r=t[n];e[r]=c[r]}c=e}else if(ke(c)){let e=[];for(let t=0;t<c.length;t++)e[t]=c[t];c=e}else c=[];let l=n(c,s,o,e,t,r);l===void 0?Array.isArray(s)||R(c)&&R(s)&&(V(c)||V(s)||B(c)||B(s))?e[o]=H(c,s,n,r):c==null&&V(s)?e[o]=H({},s,n,r):c==null&&B(s)?e[o]=Oe(s):(c===void 0||s!==void 0)&&(e[o]=s):e[o]=l}return e}function Ne(e,...t){return Me(e,...t,Ae)}var Pe=ge(),Fe={curveBasis:me,curveBasisClosed:fe,curveBasisOpen:he,curveBumpX:de,curveBumpY:ce,curveBundle:ue,curveCardinalClosed:te,curveCardinalOpen:se,curveCardinal:s,curveCatmullRomClosed:oe,curveCatmullRomOpen:u,curveCatmullRom:ae,curveLinear:le,curveLinearClosed:pe,curveMonotoneX:c,curveMonotoneY:d,curveNatural:ie,curveStep:ne,curveStepAfter:re,curveStepBefore:l},Ie=/\s*(?:(\w+)(?=:):|(\w+))\s*(?:(\w+)|((?:(?!}%{2}).|\r?\n)*))?\s*(?:}%{2})?/gi,Le=e(function(e,t){let r=Re(e,/(?:init\b)|(?:initialize\b)/),o={};if(Array.isArray(r)){let e=r.map(e=>e.args);n(e),o=a(o,[...e])}else o=r.args;if(!o)return;let s=i(e,t),c=`config`;return o[c]!==void 0&&(s===`flowchart-v2`&&(s=`flowchart`),o[s]=o[c],delete o[c]),o},`detectInit`),Re=e(function(e,n=null){try{let i=RegExp(`[%]{2}(?![{]${Ie.source})(?=[}][%]{2}).*
2
- `,`ig`);e=e.trim().replace(i,``).replace(/'/gm,`"`),t.debug(`Detecting diagram directive${n===null?``:` type:`+n} based on the text:${e}`);let a,o=[];for(;(a=r.exec(e))!==null;)if(a.index===r.lastIndex&&r.lastIndex++,a&&!n||n&&a[1]?.match(n)||n&&a[2]?.match(n)){let e=a[1]?a[1]:a[2],t=a[3]?a[3].trim():a[4]?JSON.parse(a[4].trim()):null;o.push({type:e,args:t})}return o.length===0?{type:e,args:null}:o.length===1?o[0]:o}catch(r){return t.error(`ERROR: ${r.message} - Unable to parse directive type: '${n}' based on the text: '${e}'`),{type:void 0,args:null}}},`detectDirective`),ze=e(function(e){return e.replace(r,``)},`removeDirectives`),Be=e(function(e,t){for(let[n,r]of t.entries())if(r.match(e))return n;return-1},`isSubstringInArray`);function U(e,t){return e?Fe[`curve${e.charAt(0).toUpperCase()+e.slice(1)}`]??t:t}e(U,`interpolateToCurve`);function Ve(e,t){let n=e.trim();if(n)return t.securityLevel===`loose`?n:(0,Pe.sanitizeUrl)(n)}e(Ve,`formatUrl`);var He=e((e,...n)=>{let r=e.split(`.`),i=r.length-1,a=r[i],o=window;for(let n=0;n<i;n++)if(o=o[r[n]],!o){t.error(`Function name: ${e} not found in window`);return}o[a](...n)},`runFunc`);function W(e,t){return!e||!t?0:Math.sqrt((t.x-e.x)**2+(t.y-e.y)**2)}e(W,`distance`);function Ue(e){let t,n=0;return e.forEach(e=>{n+=W(e,t),t=e}),G(e,n/2)}e(Ue,`traverseEdge`);function We(e){return e.length===1?e[0]:Ue(e)}e(We,`calcLabelPosition`);var Ge=e((e,t=2)=>{let n=10**t;return Math.round(e*n)/n},`roundNumber`),G=e((e,t)=>{let n,r=t;for(let t of e){if(n){let e=W(t,n);if(e===0)return n;if(e<r)r-=e;else{let i=r/e;if(i<=0)return n;if(i>=1)return{x:t.x,y:t.y};if(i>0&&i<1)return{x:Ge((1-i)*n.x+i*t.x,5),y:Ge((1-i)*n.y+i*t.y,5)}}}n=t}throw Error(`Could not find a suitable point for the given distance`)},`calculatePoint`),Ke=e((e,n,r)=>{t.info(`our points ${JSON.stringify(n)}`),n[0]!==r&&(n=n.reverse());let i=G(n,25),a=e?10:5,o=Math.atan2(n[0].y-i.y,n[0].x-i.x),s={x:0,y:0};return s.x=Math.sin(o)*a+(n[0].x+i.x)/2,s.y=-Math.cos(o)*a+(n[0].y+i.y)/2,s},`calcCardinalityPosition`);function qe(e,n,r){let i=structuredClone(r);t.info(`our points`,i),n!==`start_left`&&n!==`start_right`&&i.reverse();let a=G(i,25+e),o=10+e*.5,s=Math.atan2(i[0].y-a.y,i[0].x-a.x),c={x:0,y:0};return n===`start_left`?(c.x=Math.sin(s+Math.PI)*o+(i[0].x+a.x)/2,c.y=-Math.cos(s+Math.PI)*o+(i[0].y+a.y)/2):n===`end_right`?(c.x=Math.sin(s-Math.PI)*o+(i[0].x+a.x)/2-5,c.y=-Math.cos(s-Math.PI)*o+(i[0].y+a.y)/2-5):n===`end_left`?(c.x=Math.sin(s)*o+(i[0].x+a.x)/2-5,c.y=-Math.cos(s)*o+(i[0].y+a.y)/2-5):(c.x=Math.sin(s)*o+(i[0].x+a.x)/2,c.y=-Math.cos(s)*o+(i[0].y+a.y)/2),c}e(qe,`calcTerminalLabelPosition`);function K(e){let t=``,n=``;for(let r of e)r!==void 0&&(r.startsWith(`color:`)||r.startsWith(`text-align:`)?n=n+r+`;`:t=t+r+`;`);return{style:t,labelStyle:n}}e(K,`getStylesFromArray`);var Je=0,Ye=e(()=>(Je++,`id-`+Math.random().toString(36).substr(2,12)+`-`+Je),`generateId`);function Xe(e){let t=``;for(let n=0;n<e;n++)t+=`0123456789abcdef`.charAt(Math.floor(Math.random()*16));return t}e(Xe,`makeRandomHex`);var q=e(e=>Xe(e.length),`random`),Ze=e(function(){return{x:0,y:0,fill:void 0,anchor:`start`,style:`#666`,width:100,height:100,textMargin:0,rx:0,ry:0,valign:void 0,text:``}},`getTextObj`),Qe=e(function(e,t){let n=t.text.replace(o.lineBreakRegex,` `),[,r]=Q(t.fontSize),i=e.append(`text`);i.attr(`x`,t.x),i.attr(`y`,t.y),i.style(`text-anchor`,t.anchor),i.style(`font-family`,t.fontFamily),i.style(`font-size`,r),i.style(`font-weight`,t.fontWeight),i.attr(`fill`,t.fill),t.class!==void 0&&i.attr(`class`,t.class);let a=i.append(`tspan`);return a.attr(`x`,t.x+t.textMargin*2),a.attr(`fill`,t.fill),a.text(n),i},`drawSimpleText`),$e=z((e,t,n)=>{if(!e||(n=Object.assign({fontSize:12,fontWeight:400,fontFamily:`Arial`,joinWith:`<br/>`},n),o.lineBreakRegex.test(e)))return e;let r=e.split(` `).filter(Boolean),i=[],a=``;return r.forEach((e,o)=>{let s=Y(`${e} `,n),c=Y(a,n);if(s>t){let{hyphenatedStrings:r,remainingWord:o}=et(e,t,`-`,n);i.push(a,...r),a=o}else c+s>=t?(i.push(a),a=e):a=[a,e].filter(Boolean).join(` `);o+1===r.length&&i.push(a)}),i.filter(e=>e!==``).join(n.joinWith)},(e,t,n)=>`${e}${t}${n.fontSize}${n.fontWeight}${n.fontFamily}${n.joinWith}`),et=z((e,t,n=`-`,r)=>{r=Object.assign({fontSize:12,fontWeight:400,fontFamily:`Arial`,margin:0},r);let i=[...e],a=[],o=``;return i.forEach((e,s)=>{let c=`${o}${e}`;if(Y(c,r)>=t){let e=s+1,t=i.length===e,r=`${c}${n}`;a.push(t?c:r),o=``}else o=c}),{hyphenatedStrings:a,remainingWord:o}},(e,t,n=`-`,r)=>`${e}${t}${n}${r.fontSize}${r.fontWeight}${r.fontFamily}`);function J(e,t){return X(e,t).height}e(J,`calculateTextHeight`);function Y(e,t){return X(e,t).width}e(Y,`calculateTextWidth`);var X=z((e,t)=>{let{fontSize:n=12,fontFamily:r=`Arial`,fontWeight:i=400}=t;if(!e)return{width:0,height:0};let[,a]=Q(n),s=[`sans-serif`,r],c=e.split(o.lineBreakRegex),l=[],u=ee(`body`);if(!u.remove)return{width:0,height:0,lineHeight:0};let d=u.append(`svg`);for(let e of s){let t=0,n={width:0,height:0,lineHeight:0};for(let r of c){let o=Ze();o.text=r||`​`;let s=Qe(d,o).style(`font-size`,a).style(`font-weight`,i).style(`font-family`,e),c=(s._groups||s)[0][0].getBBox();if(c.width===0&&c.height===0)throw Error(`svg element not in render tree`);n.width=Math.round(Math.max(n.width,c.width)),t=Math.round(c.height),n.height+=t,n.lineHeight=Math.round(Math.max(n.lineHeight,t))}l.push(n)}return d.remove(),l[isNaN(l[1].height)||isNaN(l[1].width)||isNaN(l[1].lineHeight)||l[0].height>l[1].height&&l[0].width>l[1].width&&l[0].lineHeight>l[1].lineHeight?0:1]},(e,t)=>`${e}${t.fontSize}${t.fontWeight}${t.fontFamily}`),tt=class{constructor(e=!1,t){this.count=0,this.count=t?t.length:0,this.next=e?()=>this.count++:()=>Date.now()}static{e(this,`InitIDGenerator`)}},Z,nt=e(function(e){return Z||=document.createElement(`div`),e=escape(e).replace(/%26/g,`&`).replace(/%23/g,`#`).replace(/%3B/g,`;`),Z.innerHTML=e,unescape(Z.textContent)},`entityDecode`);function rt(e){return`str`in e}e(rt,`isDetailedError`);var it=e((e,t,n,r)=>{if(!r)return;let i=e.node()?.getBBox();i&&e.append(`text`).text(r).attr(`text-anchor`,`middle`).attr(`x`,i.x+i.width/2).attr(`y`,-n).attr(`class`,t)},`insertTitle`),Q=e(e=>{if(typeof e==`number`)return[e,e+`px`];let t=parseInt(e??``,10);return Number.isNaN(t)?[void 0,void 0]:e===String(t)?[t,e+`px`]:[t,e]},`parseFontSize`);function $(e,t){return Ne({},e,t)}e($,`cleanAndMerge`);var at={assignWithDepth:a,wrapLabel:$e,calculateTextHeight:J,calculateTextWidth:Y,calculateTextDimensions:X,cleanAndMerge:$,detectInit:Le,detectDirective:Re,isSubstringInArray:Be,interpolateToCurve:U,calcLabelPosition:We,calcCardinalityPosition:Ke,calcTerminalLabelPosition:qe,formatUrl:Ve,getStylesFromArray:K,generateId:Ye,random:q,runFunc:He,entityDecode:nt,insertTitle:it,isLabelCoordinateInPath:ut,parseFontSize:Q,InitIDGenerator:tt},ot=e(function(e){let t=e;return t=t.replace(/style.*:\S*#.*;/g,function(e){return e.substring(0,e.length-1)}),t=t.replace(/classDef.*:\S*#.*;/g,function(e){return e.substring(0,e.length-1)}),t=t.replace(/#\w+;/g,function(e){let t=e.substring(1,e.length-1);return/^\+?\d+$/.test(t)?`fl°°`+t+`¶ß`:`fl°`+t+`¶ß`}),t},`encodeEntities`),st=e(function(e){return e.replace(/fl°°/g,`&#`).replace(/fl°/g,`&`).replace(/¶ß/g,`;`)},`decodeEntities`),ct=e((e,t,{counter:n=0,prefix:r,suffix:i},a)=>a||`${r?`${r}_`:``}${e}_${t}_${n}${i?`_${i}`:``}`,`getEdgeId`);function lt(e){return e??null}e(lt,`handleUndefinedAttr`);function ut(e,t){let n=Math.round(e.x),r=Math.round(e.y),i=t.replace(/(\d+\.\d+)/g,e=>Math.round(parseFloat(e)).toString());return i.includes(n.toString())||i.includes(r.toString())}e(ut,`isLabelCoordinateInPath`);export{j as A,O as B,x as C,M as D,v as E,xe as F,ve as G,E as H,b as I,m as L,y as M,h as N,Ce as O,C as P,Se as R,S,w as T,p as U,T as V,f as W,$e as _,st as a,N as b,ct as c,U as d,rt as f,at as g,ze as h,$ as i,k as j,A as k,K as l,q as m,J as n,ot as o,Q as p,Y as r,Ye as s,X as t,lt as u,B as v,g as w,_ as x,L as y,D as z};
1
+ import{n as e,r as t}from"./chunk-AGHRB4JF-CYdXVA2-.js";import{R as n,h as r,p as i,r as a,s as o}from"./chunk-CSCIHK7Q-CAE1p4Em.js";import{$ as s,G as c,H as l,J as u,K as d,Q as ee,U as te,Vt as ne,W as re,X as ie,Y as ae,Z as oe,at as se,et as ce,it as le,lt as ue,nt as de,ot as fe,q as pe,rt as me,tt as he}from"./vendor-utils-rVejrfMR.js";import{t as ge}from"./dist-DrIWh2fi.js";function _e(e){return Number.isSafeInteger(e)&&e>=0}function ve(e){return e!=null&&typeof e!=`function`&&_e(e.length)}function ye(e){return e===`__proto__`}function f(e){return e==null||typeof e!=`object`&&typeof e!=`function`}function be(e){return Object.getOwnPropertySymbols(e).filter(t=>Object.prototype.propertyIsEnumerable.call(e,t))}function p(e){return e==null?e===void 0?`[object Undefined]`:`[object Null]`:Object.prototype.toString.call(e)}var xe=`[object RegExp]`,m=`[object String]`,h=`[object Number]`,g=`[object Boolean]`,_=`[object Arguments]`,Se=`[object Symbol]`,v=`[object Date]`,y=`[object Map]`,b=`[object Set]`,x=`[object Array]`,S=`[object ArrayBuffer]`,C=`[object Object]`,w=`[object DataView]`,T=`[object Uint8Array]`,E=`[object Uint8ClampedArray]`,D=`[object Uint16Array]`,O=`[object Uint32Array]`,k=`[object Int8Array]`,A=`[object Int16Array]`,j=`[object Int32Array]`,M=`[object Float32Array]`,Ce=`[object Float64Array]`,we=typeof globalThis==`object`&&globalThis||typeof window==`object`&&window||typeof self==`object`&&self||typeof global==`object`&&global||(function(){return this})()||Function(`return this`)();function N(e){return we.Buffer!==void 0&&we.Buffer.isBuffer(e)}function P(e){return ArrayBuffer.isView(e)&&!(e instanceof DataView)}function Te(e,t){return F(e,void 0,e,new Map,t)}function F(e,t,n,r=new Map,i=void 0){let a=i?.(e,t,n,r);if(a!==void 0)return a;if(f(e))return e;if(r.has(e))return r.get(e);if(Array.isArray(e)){let t=Array(e.length);r.set(e,t);for(let a=0;a<e.length;a++)t[a]=F(e[a],a,n,r,i);return Object.hasOwn(e,`index`)&&(t.index=e.index),Object.hasOwn(e,`input`)&&(t.input=e.input),t}if(e instanceof Date)return new Date(e.getTime());if(e instanceof RegExp){let t=new RegExp(e.source,e.flags);return t.lastIndex=e.lastIndex,t}if(e instanceof Map){let t=new Map;r.set(e,t);for(let[a,o]of e)t.set(a,F(o,a,n,r,i));return t}if(e instanceof Set){let t=new Set;r.set(e,t);for(let a of e)t.add(F(a,void 0,n,r,i));return t}if(N(e))return e.subarray();if(P(e)){let t=new(Object.getPrototypeOf(e)).constructor(e.length);r.set(e,t);for(let a=0;a<e.length;a++)t[a]=F(e[a],a,n,r,i);return t}if(e instanceof ArrayBuffer||typeof SharedArrayBuffer<`u`&&e instanceof SharedArrayBuffer)return e.slice(0);if(e instanceof DataView){let t=new DataView(e.buffer.slice(0),e.byteOffset,e.byteLength);return r.set(e,t),I(t,e,n,r,i),t}if(typeof File<`u`&&e instanceof File){let t=new File([e],e.name,{type:e.type});return r.set(e,t),I(t,e,n,r,i),t}if(typeof Blob<`u`&&e instanceof Blob){let t=new Blob([e],{type:e.type});return r.set(e,t),I(t,e,n,r,i),t}if(e instanceof Error){let t=structuredClone(e);return r.set(e,t),t.message=e.message,t.name=e.name,t.stack=e.stack,t.cause=e.cause,t.constructor=e.constructor,I(t,e,n,r,i),t}if(e instanceof Boolean){let t=new Boolean(e.valueOf());return r.set(e,t),I(t,e,n,r,i),t}if(e instanceof Number){let t=new Number(e.valueOf());return r.set(e,t),I(t,e,n,r,i),t}if(e instanceof String){let t=new String(e.valueOf());return r.set(e,t),I(t,e,n,r,i),t}if(typeof e==`object`&&Ee(e)){let t=Object.create(Object.getPrototypeOf(e));return r.set(e,t),I(t,e,n,r,i),t}return e}function I(e,t,n=e,r,i){let a=[...Object.keys(t),...be(t)];for(let o=0;o<a.length;o++){let s=a[o],c=Object.getOwnPropertyDescriptor(e,s);(c==null||c.writable)&&(e[s]=F(t[s],s,n,r,i))}}function Ee(e){switch(p(e)){case _:case x:case S:case w:case g:case v:case M:case Ce:case k:case A:case j:case y:case h:case C:case xe:case b:case m:case Se:case T:case E:case D:case O:return!0;default:return!1}}function De(e,t){return Te(e,(n,r,i,a)=>{let o=t?.(n,r,i,a);if(o!==void 0)return o;if(typeof e==`object`){if(p(e)===`[object Object]`&&typeof e.constructor!=`function`){let t={};return a.set(e,t),I(t,e,i,a),t}switch(Object.prototype.toString.call(e)){case h:case m:case g:{let t=new e.constructor(e?.valueOf());return I(t,e),t}case _:{let t={};return I(t,e),t.length=e.length,t[Symbol.iterator]=e[Symbol.iterator],t}default:return}}})}function Oe(e){return De(e)}function L(e){return typeof e==`object`&&!!e&&p(e)===`[object Arguments]`}function R(e){return typeof e==`object`&&!!e}function ke(e){return R(e)&&ve(e)}function z(e,t){if(typeof e!=`function`||t!=null&&typeof t!=`function`)throw TypeError(`Expected a function`);let n=function(...r){let i=t?t.apply(this,r):r[0],a=n.cache;if(a.has(i))return a.get(i);let o=e.apply(this,r);return n.cache=a.set(i,o)||a,o};return n.cache=new(z.Cache||Map),n}z.Cache=Map;function Ae(){}function B(e){return P(e)}function V(e){if(typeof e!=`object`||!e)return!1;if(Object.getPrototypeOf(e)===null)return!0;if(Object.prototype.toString.call(e)!==`[object Object]`){let t=e[Symbol.toStringTag];return t==null||!Object.getOwnPropertyDescriptor(e,Symbol.toStringTag)?.writable?!1:e.toString()===`[object ${t}]`}let t=e;for(;Object.getPrototypeOf(t)!==null;)t=Object.getPrototypeOf(t);return Object.getPrototypeOf(e)===t}function je(e){if(f(e))return e;if(Array.isArray(e)||P(e)||e instanceof ArrayBuffer||typeof SharedArrayBuffer<`u`&&e instanceof SharedArrayBuffer)return e.slice(0);let t=Object.getPrototypeOf(e);if(t==null)return Object.assign(Object.create(t),e);let n=t.constructor;if(e instanceof Date||e instanceof Map||e instanceof Set)return new n(e);if(e instanceof RegExp){let t=new n(e);return t.lastIndex=e.lastIndex,t}if(e instanceof DataView)return new n(e.buffer.slice(0));if(e instanceof Error){let t;return t=e instanceof AggregateError?new n(e.errors,e.message,{cause:e.cause}):new n(e.message,{cause:e.cause}),t.stack=e.stack,Object.assign(t,e),t}return typeof File<`u`&&e instanceof File?new n([e],e.name,{type:e.type,lastModified:e.lastModified}):typeof e==`object`?Object.assign(Object.create(t),e):e}function Me(e,...t){let n=t.slice(0,-1),r=t[t.length-1],i=e;for(let e=0;e<n.length;e++){let t=n[e];i=H(i,t,r,new Map)}return i}function H(e,t,n,r){if(f(e)&&(e=Object(e)),typeof t!=`object`||!t)return e;if(r.has(t))return je(r.get(t));if(r.set(t,e),Array.isArray(t)){t=t.slice();for(let e=0;e<t.length;e++)t[e]=t[e]??void 0}let i=[...Object.keys(t),...be(t)];for(let a=0;a<i.length;a++){let o=i[a];if(ye(o))continue;let s=t[o],c=e[o];if(L(s)&&(s={...s}),L(c)&&(c={...c}),N(s)&&(s=Oe(s)),Array.isArray(s))if(Array.isArray(c)){let e=[],t=Reflect.ownKeys(c);for(let n=0;n<t.length;n++){let r=t[n];e[r]=c[r]}c=e}else if(ke(c)){let e=[];for(let t=0;t<c.length;t++)e[t]=c[t];c=e}else c=[];let l=n(c,s,o,e,t,r);l===void 0?Array.isArray(s)||R(c)&&R(s)&&(V(c)||V(s)||B(c)||B(s))?e[o]=H(c,s,n,r):c==null&&V(s)?e[o]=H({},s,n,r):c==null&&B(s)?e[o]=Oe(s):(c===void 0||s!==void 0)&&(e[o]=s):e[o]=l}return e}function Ne(e,...t){return Me(e,...t,Ae)}var Pe=ge(),Fe={curveBasis:le,curveBasisClosed:me,curveBasisOpen:de,curveBumpX:se,curveBumpY:fe,curveBundle:he,curveCardinalClosed:s,curveCardinalOpen:ee,curveCardinal:ce,curveCatmullRomClosed:ie,curveCatmullRomOpen:ae,curveCatmullRom:oe,curveLinear:ue,curveLinearClosed:u,curveMonotoneX:d,curveMonotoneY:pe,curveNatural:c,curveStep:re,curveStepAfter:l,curveStepBefore:te},Ie=/\s*(?:(\w+)(?=:):|(\w+))\s*(?:(\w+)|((?:(?!}%{2}).|\r?\n)*))?\s*(?:}%{2})?/gi,Le=e(function(e,t){let r=Re(e,/(?:init\b)|(?:initialize\b)/),o={};if(Array.isArray(r)){let e=r.map(e=>e.args);n(e),o=a(o,[...e])}else o=r.args;if(!o)return;let s=i(e,t),c=`config`;return o[c]!==void 0&&(s===`flowchart-v2`&&(s=`flowchart`),o[s]=o[c],delete o[c]),o},`detectInit`),Re=e(function(e,n=null){try{let i=RegExp(`[%]{2}(?![{]${Ie.source})(?=[}][%]{2}).*
2
+ `,`ig`);e=e.trim().replace(i,``).replace(/'/gm,`"`),t.debug(`Detecting diagram directive${n===null?``:` type:`+n} based on the text:${e}`);let a,o=[];for(;(a=r.exec(e))!==null;)if(a.index===r.lastIndex&&r.lastIndex++,a&&!n||n&&a[1]?.match(n)||n&&a[2]?.match(n)){let e=a[1]?a[1]:a[2],t=a[3]?a[3].trim():a[4]?JSON.parse(a[4].trim()):null;o.push({type:e,args:t})}return o.length===0?{type:e,args:null}:o.length===1?o[0]:o}catch(r){return t.error(`ERROR: ${r.message} - Unable to parse directive type: '${n}' based on the text: '${e}'`),{type:void 0,args:null}}},`detectDirective`),ze=e(function(e){return e.replace(r,``)},`removeDirectives`),Be=e(function(e,t){for(let[n,r]of t.entries())if(r.match(e))return n;return-1},`isSubstringInArray`);function U(e,t){return e?Fe[`curve${e.charAt(0).toUpperCase()+e.slice(1)}`]??t:t}e(U,`interpolateToCurve`);function Ve(e,t){let n=e.trim();if(n)return t.securityLevel===`loose`?n:(0,Pe.sanitizeUrl)(n)}e(Ve,`formatUrl`);var He=e((e,...n)=>{let r=e.split(`.`),i=r.length-1,a=r[i],o=window;for(let n=0;n<i;n++)if(o=o[r[n]],!o){t.error(`Function name: ${e} not found in window`);return}o[a](...n)},`runFunc`);function W(e,t){return!e||!t?0:Math.sqrt((t.x-e.x)**2+(t.y-e.y)**2)}e(W,`distance`);function Ue(e){let t,n=0;return e.forEach(e=>{n+=W(e,t),t=e}),G(e,n/2)}e(Ue,`traverseEdge`);function We(e){return e.length===1?e[0]:Ue(e)}e(We,`calcLabelPosition`);var Ge=e((e,t=2)=>{let n=10**t;return Math.round(e*n)/n},`roundNumber`),G=e((e,t)=>{let n,r=t;for(let t of e){if(n){let e=W(t,n);if(e===0)return n;if(e<r)r-=e;else{let i=r/e;if(i<=0)return n;if(i>=1)return{x:t.x,y:t.y};if(i>0&&i<1)return{x:Ge((1-i)*n.x+i*t.x,5),y:Ge((1-i)*n.y+i*t.y,5)}}}n=t}throw Error(`Could not find a suitable point for the given distance`)},`calculatePoint`),Ke=e((e,n,r)=>{t.info(`our points ${JSON.stringify(n)}`),n[0]!==r&&(n=n.reverse());let i=G(n,25),a=e?10:5,o=Math.atan2(n[0].y-i.y,n[0].x-i.x),s={x:0,y:0};return s.x=Math.sin(o)*a+(n[0].x+i.x)/2,s.y=-Math.cos(o)*a+(n[0].y+i.y)/2,s},`calcCardinalityPosition`);function qe(e,n,r){let i=structuredClone(r);t.info(`our points`,i),n!==`start_left`&&n!==`start_right`&&i.reverse();let a=G(i,25+e),o=10+e*.5,s=Math.atan2(i[0].y-a.y,i[0].x-a.x),c={x:0,y:0};return n===`start_left`?(c.x=Math.sin(s+Math.PI)*o+(i[0].x+a.x)/2,c.y=-Math.cos(s+Math.PI)*o+(i[0].y+a.y)/2):n===`end_right`?(c.x=Math.sin(s-Math.PI)*o+(i[0].x+a.x)/2-5,c.y=-Math.cos(s-Math.PI)*o+(i[0].y+a.y)/2-5):n===`end_left`?(c.x=Math.sin(s)*o+(i[0].x+a.x)/2-5,c.y=-Math.cos(s)*o+(i[0].y+a.y)/2-5):(c.x=Math.sin(s)*o+(i[0].x+a.x)/2,c.y=-Math.cos(s)*o+(i[0].y+a.y)/2),c}e(qe,`calcTerminalLabelPosition`);function K(e){let t=``,n=``;for(let r of e)r!==void 0&&(r.startsWith(`color:`)||r.startsWith(`text-align:`)?n=n+r+`;`:t=t+r+`;`);return{style:t,labelStyle:n}}e(K,`getStylesFromArray`);var Je=0,Ye=e(()=>(Je++,`id-`+Math.random().toString(36).substr(2,12)+`-`+Je),`generateId`);function Xe(e){let t=``;for(let n=0;n<e;n++)t+=`0123456789abcdef`.charAt(Math.floor(Math.random()*16));return t}e(Xe,`makeRandomHex`);var q=e(e=>Xe(e.length),`random`),Ze=e(function(){return{x:0,y:0,fill:void 0,anchor:`start`,style:`#666`,width:100,height:100,textMargin:0,rx:0,ry:0,valign:void 0,text:``}},`getTextObj`),Qe=e(function(e,t){let n=t.text.replace(o.lineBreakRegex,` `),[,r]=Q(t.fontSize),i=e.append(`text`);i.attr(`x`,t.x),i.attr(`y`,t.y),i.style(`text-anchor`,t.anchor),i.style(`font-family`,t.fontFamily),i.style(`font-size`,r),i.style(`font-weight`,t.fontWeight),i.attr(`fill`,t.fill),t.class!==void 0&&i.attr(`class`,t.class);let a=i.append(`tspan`);return a.attr(`x`,t.x+t.textMargin*2),a.attr(`fill`,t.fill),a.text(n),i},`drawSimpleText`),$e=z((e,t,n)=>{if(!e||(n=Object.assign({fontSize:12,fontWeight:400,fontFamily:`Arial`,joinWith:`<br/>`},n),o.lineBreakRegex.test(e)))return e;let r=e.split(` `).filter(Boolean),i=[],a=``;return r.forEach((e,o)=>{let s=Y(`${e} `,n),c=Y(a,n);if(s>t){let{hyphenatedStrings:r,remainingWord:o}=et(e,t,`-`,n);i.push(a,...r),a=o}else c+s>=t?(i.push(a),a=e):a=[a,e].filter(Boolean).join(` `);o+1===r.length&&i.push(a)}),i.filter(e=>e!==``).join(n.joinWith)},(e,t,n)=>`${e}${t}${n.fontSize}${n.fontWeight}${n.fontFamily}${n.joinWith}`),et=z((e,t,n=`-`,r)=>{r=Object.assign({fontSize:12,fontWeight:400,fontFamily:`Arial`,margin:0},r);let i=[...e],a=[],o=``;return i.forEach((e,s)=>{let c=`${o}${e}`;if(Y(c,r)>=t){let e=s+1,t=i.length===e,r=`${c}${n}`;a.push(t?c:r),o=``}else o=c}),{hyphenatedStrings:a,remainingWord:o}},(e,t,n=`-`,r)=>`${e}${t}${n}${r.fontSize}${r.fontWeight}${r.fontFamily}`);function J(e,t){return X(e,t).height}e(J,`calculateTextHeight`);function Y(e,t){return X(e,t).width}e(Y,`calculateTextWidth`);var X=z((e,t)=>{let{fontSize:n=12,fontFamily:r=`Arial`,fontWeight:i=400}=t;if(!e)return{width:0,height:0};let[,a]=Q(n),s=[`sans-serif`,r],c=e.split(o.lineBreakRegex),l=[],u=ne(`body`);if(!u.remove)return{width:0,height:0,lineHeight:0};let d=u.append(`svg`);for(let e of s){let t=0,n={width:0,height:0,lineHeight:0};for(let r of c){let o=Ze();o.text=r||`​`;let s=Qe(d,o).style(`font-size`,a).style(`font-weight`,i).style(`font-family`,e),c=(s._groups||s)[0][0].getBBox();if(c.width===0&&c.height===0)throw Error(`svg element not in render tree`);n.width=Math.round(Math.max(n.width,c.width)),t=Math.round(c.height),n.height+=t,n.lineHeight=Math.round(Math.max(n.lineHeight,t))}l.push(n)}return d.remove(),l[isNaN(l[1].height)||isNaN(l[1].width)||isNaN(l[1].lineHeight)||l[0].height>l[1].height&&l[0].width>l[1].width&&l[0].lineHeight>l[1].lineHeight?0:1]},(e,t)=>`${e}${t.fontSize}${t.fontWeight}${t.fontFamily}`),tt=class{constructor(e=!1,t){this.count=0,this.count=t?t.length:0,this.next=e?()=>this.count++:()=>Date.now()}static{e(this,`InitIDGenerator`)}},Z,nt=e(function(e){return Z||=document.createElement(`div`),e=escape(e).replace(/%26/g,`&`).replace(/%23/g,`#`).replace(/%3B/g,`;`),Z.innerHTML=e,unescape(Z.textContent)},`entityDecode`);function rt(e){return`str`in e}e(rt,`isDetailedError`);var it=e((e,t,n,r)=>{if(!r)return;let i=e.node()?.getBBox();i&&e.append(`text`).text(r).attr(`text-anchor`,`middle`).attr(`x`,i.x+i.width/2).attr(`y`,-n).attr(`class`,t)},`insertTitle`),Q=e(e=>{if(typeof e==`number`)return[e,e+`px`];let t=parseInt(e??``,10);return Number.isNaN(t)?[void 0,void 0]:e===String(t)?[t,e+`px`]:[t,e]},`parseFontSize`);function $(e,t){return Ne({},e,t)}e($,`cleanAndMerge`);var at={assignWithDepth:a,wrapLabel:$e,calculateTextHeight:J,calculateTextWidth:Y,calculateTextDimensions:X,cleanAndMerge:$,detectInit:Le,detectDirective:Re,isSubstringInArray:Be,interpolateToCurve:U,calcLabelPosition:We,calcCardinalityPosition:Ke,calcTerminalLabelPosition:qe,formatUrl:Ve,getStylesFromArray:K,generateId:Ye,random:q,runFunc:He,entityDecode:nt,insertTitle:it,isLabelCoordinateInPath:ut,parseFontSize:Q,InitIDGenerator:tt},ot=e(function(e){let t=e;return t=t.replace(/style.*:\S*#.*;/g,function(e){return e.substring(0,e.length-1)}),t=t.replace(/classDef.*:\S*#.*;/g,function(e){return e.substring(0,e.length-1)}),t=t.replace(/#\w+;/g,function(e){let t=e.substring(1,e.length-1);return/^\+?\d+$/.test(t)?`fl°°`+t+`¶ß`:`fl°`+t+`¶ß`}),t},`encodeEntities`),st=e(function(e){return e.replace(/fl°°/g,`&#`).replace(/fl°/g,`&`).replace(/¶ß/g,`;`)},`decodeEntities`),ct=e((e,t,{counter:n=0,prefix:r,suffix:i},a)=>a||`${r?`${r}_`:``}${e}_${t}_${n}${i?`_${i}`:``}`,`getEdgeId`);function lt(e){return e??null}e(lt,`handleUndefinedAttr`);function ut(e,t){let n=Math.round(e.x),r=Math.round(e.y),i=t.replace(/(\d+\.\d+)/g,e=>Math.round(parseFloat(e)).toString());return i.includes(n.toString())||i.includes(r.toString())}e(ut,`isLabelCoordinateInPath`);export{j as A,O as B,x as C,M as D,v as E,xe as F,ve as G,E as H,b as I,m as L,y as M,h as N,Ce as O,C as P,Se as R,S,w as T,p as U,T as V,f as W,$e as _,st as a,N as b,ct as c,U as d,rt as f,at as g,ze as h,$ as i,k as j,A as k,K as l,q as m,J as n,ot as o,Q as p,Y as r,Ye as s,X as t,lt as u,B as v,g as w,_ as x,L as y,D as z};