@tequila99/githuman 0.4.2 → 0.6.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (390) hide show
  1. package/README.md +18 -2
  2. package/dist/cli/index.js +27 -2
  3. package/dist/cli/server-runtime.js +1 -0
  4. package/dist/server/app.js +22 -1
  5. package/dist/server/errors/git.js +2 -0
  6. package/dist/server/errors/terminal.js +4 -0
  7. package/dist/server/hooks/terminal/local-origin.js +25 -0
  8. package/dist/server/routes/agent.js +8 -2
  9. package/dist/server/routes/app-info.js +5 -2
  10. package/dist/server/routes/git.js +5 -2
  11. package/dist/server/routes/terminal.js +63 -0
  12. package/dist/server/services/agent/agent-session.js +2 -1
  13. package/dist/server/services/agent/context-builder.js +49 -2
  14. package/dist/server/services/agent/file-index.js +7 -4
  15. package/dist/server/services/git.service.js +44 -4
  16. package/dist/server/services/terminal/backend.js +216 -0
  17. package/dist/server/services/terminal/channel.js +200 -0
  18. package/dist/server/services/terminal/escape-tail.js +93 -0
  19. package/dist/server/services/terminal/processes.js +115 -0
  20. package/dist/server/services/terminal/prompt-tracker.js +15 -0
  21. package/dist/server/services/terminal/registry.js +167 -0
  22. package/dist/server/services/terminal/session.js +238 -0
  23. package/dist/server/services/terminal/socket.js +74 -0
  24. package/dist/server/services/terminal/tokens.js +32 -0
  25. package/dist/server/utils/sse.js +76 -5
  26. package/dist/shared/agents/file-search.js +19 -7
  27. package/dist/shared/agents/mention-paths.js +40 -0
  28. package/dist/shared/agents/schemas.js +13 -4
  29. package/dist/shared/app/schemas.js +5 -1
  30. package/dist/shared/git/schemas.js +4 -1
  31. package/dist/shared/terminal/constants.js +27 -0
  32. package/dist/shared/terminal/schemas.js +114 -0
  33. package/dist/shared/terminal/types.js +1 -0
  34. package/dist/shared/utils/guards.js +3 -0
  35. package/dist/web/assets/{AppPage-BYrCfRnC.js → AppPage-CiRB13sb.js} +2 -2
  36. package/dist/web/assets/CreateReviewFabButton-DTvX9Psc.js +1 -0
  37. package/dist/web/assets/ErrorNotFound-CYOZg8yN.js +1 -0
  38. package/dist/web/assets/IndexPage-CYFIGWy9.css +1 -0
  39. package/dist/web/assets/IndexPage-hI7bcJ6L.js +1 -0
  40. package/dist/web/assets/MainLayout-DCexR9_Y.css +1 -0
  41. package/dist/web/assets/MainLayout-baVxjyeL.js +11 -0
  42. package/dist/web/assets/PdfPreview-Cb0xawi0.css +1 -0
  43. package/dist/web/assets/PdfPreview-D3HwZ7pH.js +54 -0
  44. package/dist/web/assets/QBtn-CzrOO1zA.js +1 -0
  45. package/dist/web/assets/QScrollArea-Cu8zdp0y.js +1 -0
  46. package/dist/web/assets/QSelect-DQ_RRYIL.js +1 -0
  47. package/dist/web/assets/QSpace-CEuZSBS2.js +13 -0
  48. package/dist/web/assets/ReviewDetailPage-CayB2dtb.js +1 -0
  49. package/dist/web/assets/ReviewDetailPage-CkCilMNW.css +1 -0
  50. package/dist/web/assets/ReviewsPage-DWfEVjWO.js +1 -0
  51. package/dist/web/assets/StatusSwitcher--zNcE2-Y.js +1 -0
  52. package/dist/web/assets/StatusSwitcher-DTD5inU1.css +1 -0
  53. package/dist/web/assets/TerminalView-B11UHZv3.css +1 -0
  54. package/dist/web/assets/TerminalView-DvVbWk3f.js +19 -0
  55. package/dist/web/assets/_plugin-vue_export-helper-BDNMzG2s.js +1 -0
  56. package/dist/web/assets/{abnfDiagram-O67JEVCF-dyvffE6R.js → abnfDiagram-O67JEVCF-C5SYdl8k.js} +1 -1
  57. package/dist/web/assets/agent-store-DX4gIEHa.js +1 -0
  58. package/dist/web/assets/app-info-store-Vy_Pq2yR.js +1 -0
  59. package/dist/web/assets/architecture-7GRP2DOG-Dpxe25D8.js +1 -0
  60. package/dist/web/assets/{architectureDiagram-NJMV4G6O-Dk-QthCI.js → architectureDiagram-NJMV4G6O-Bx8KGjS_.js} +1 -1
  61. package/dist/web/assets/{blockDiagram-BEXU5L5S-sF48dzNS.js → blockDiagram-BEXU5L5S-B4ybhPir.js} +1 -1
  62. package/dist/web/assets/{c4Diagram-YGBWAQC7-BWrux-0F.js → c4Diagram-YGBWAQC7-D2Fzm9Zx.js} +1 -1
  63. package/dist/web/assets/channel--0tdF_Sb.js +1 -0
  64. package/dist/web/assets/chunk-3FUC2YCW-DLRX-HPs.js +2 -0
  65. package/dist/web/assets/{chunk-5DYCD2WN-CpgXf7LJ.js → chunk-5DYCD2WN-6HcgVbfR.js} +1 -1
  66. package/dist/web/assets/{chunk-742MDFTN-BGzG-dZE.js → chunk-742MDFTN-CfTGkhlJ.js} +1 -1
  67. package/dist/web/assets/{chunk-7INBJB4K-DJGc-gqS.js → chunk-7INBJB4K-COfv2qWf.js} +1 -1
  68. package/dist/web/assets/{chunk-7M6MHVWA-CYIOaZel.js → chunk-7M6MHVWA-D0FxecF4.js} +5 -5
  69. package/dist/web/assets/{chunk-7PRAP22T-CJZNYL51.js → chunk-7PRAP22T-DFjSoEy0.js} +1 -1
  70. package/dist/web/assets/{chunk-GTNCS2PH-DOYGHmMk.js → chunk-GTNCS2PH-CGWGXDNO.js} +1 -1
  71. package/dist/web/assets/{chunk-GWA4HPMP-RIikrSw1.js → chunk-GWA4HPMP-J0EaOPjD.js} +1 -1
  72. package/dist/web/assets/{chunk-MBY4JIJT-ZSssyEJi.js → chunk-MBY4JIJT-PzEUkWiy.js} +1 -1
  73. package/dist/web/assets/{chunk-NETBCI7D-3tnHEq90.js → chunk-NETBCI7D-DHHOcLF0.js} +1 -1
  74. package/dist/web/assets/{chunk-O7XYJQB3-CDFTy-aQ.js → chunk-O7XYJQB3-BHUId2wW.js} +1 -1
  75. package/dist/web/assets/{chunk-UA2S7LBM-B8rY8Yj-.js → chunk-UA2S7LBM-DXQ1DAj6.js} +1 -1
  76. package/dist/web/assets/{chunk-WEXAMYUT-BdPY0e7q.js → chunk-WEXAMYUT-BMiibMha.js} +1 -1
  77. package/dist/web/assets/{chunk-Z7XXMR3K-Br_E149D.js → chunk-Z7XXMR3K-BcgKYeJS.js} +1 -1
  78. package/dist/web/assets/{chunk-ZIGJFQKS-DDjPFexL.js → chunk-ZIGJFQKS-D6psU74o.js} +1 -1
  79. package/dist/web/assets/{classDiagram-v2-NBCMYWYE-D9kneDxy.js → classDiagram-v2-NBCMYWYE-6IwOSgSE.js} +4 -4
  80. package/dist/web/assets/create-BSmXD9Zr.js +1 -0
  81. package/dist/web/assets/{cynefin-OW5HDTMX-Dot1PBqs.js → cynefin-OW5HDTMX-C77WtKve.js} +1 -1
  82. package/dist/web/assets/{cynefinDiagram-VND7K2PF-6uYi0u-j.js → cynefinDiagram-VND7K2PF-BvIp3Y9w.js} +1 -1
  83. package/dist/web/assets/{dagre-6A5THRUB-BDM5YkfJ.js → dagre-6A5THRUB-DN7jrLfY.js} +1 -1
  84. package/dist/web/assets/debounce-rZaFFwsz.js +1 -0
  85. package/dist/web/assets/{diagram-22UHCM2B-DxE0D8WB.js → diagram-22UHCM2B-DQUkKx9q.js} +8 -8
  86. package/dist/web/assets/{diagram-3UASUU5V-CuD1fcFQ.js → diagram-3UASUU5V-CTzVKsCf.js} +1 -1
  87. package/dist/web/assets/{diagram-ATOU4E4O-DX6enGgq.js → diagram-ATOU4E4O--Z3AVUjn.js} +1 -1
  88. package/dist/web/assets/{diagram-CDSNMT55-eLqOiVoC.js → diagram-CDSNMT55-BA-cRZ39.js} +1 -1
  89. package/dist/web/assets/{diagram-MLGK6HIB-DtIMj5y1.js → diagram-MLGK6HIB-Bx_zLrYg.js} +1 -1
  90. package/dist/web/assets/{diagram-MPIPVDR6-lYcwsjHR.js → diagram-MPIPVDR6-CWKuh-e-.js} +1 -1
  91. package/dist/web/assets/{ebnfDiagram-ZINNZB2B-CGmBWaKx.js → ebnfDiagram-ZINNZB2B-MyQLfQVI.js} +1 -1
  92. package/dist/web/assets/{elk-276RUBZZ-B1ntUD9z.js → elk-276RUBZZ-DBbqEAnd.js} +1 -1
  93. package/dist/web/assets/{erDiagram-OPXOYQCR-Dqzoldin.js → erDiagram-OPXOYQCR-CbRo_Rnk.js} +1 -1
  94. package/dist/web/assets/eventmodeling-NTZA5JFV-DMla2cPF.js +1 -0
  95. package/dist/web/assets/flowDiagram-KWPJA3E3-Bas61_mX.js +1 -0
  96. package/dist/web/assets/{ganttDiagram-FUAMR5RP-CF6kJAoY.js → ganttDiagram-FUAMR5RP-D1gJBc1W.js} +1 -1
  97. package/dist/web/assets/{gitGraph-4MIJSDKK-CUzcGxMa.js → gitGraph-4MIJSDKK-CIzz8UCs.js} +1 -1
  98. package/dist/web/assets/{gitGraphDiagram-X574FWY7-D-XNa6f2.js → gitGraphDiagram-X574FWY7-B5-RB5JZ.js} +1 -1
  99. package/dist/web/assets/i18n-B1_G449i.js +1 -0
  100. package/dist/web/assets/index-DEwYKvIG.js +2 -0
  101. package/dist/web/assets/index-Dma-RXBR.css +1 -0
  102. package/dist/web/assets/{info-A6RAGUB7-CH4SNmU8.js → info-A6RAGUB7-DF-JCGlS.js} +1 -1
  103. package/dist/web/assets/{infoDiagram-VRGFBTTK-35AKnD7M.js → infoDiagram-VRGFBTTK-z0Xepdo0.js} +1 -1
  104. package/dist/web/assets/init-app-DAsY3Joz.js +1 -0
  105. package/dist/web/assets/{is-BB7rJzdU.js → is-DssfAlMe.js} +1 -1
  106. package/dist/web/assets/{ishikawaDiagram-OU5B5YK6-D41YBWSb.js → ishikawaDiagram-OU5B5YK6-UqXiqAoe.js} +1 -1
  107. package/dist/web/assets/{journeyDiagram-ZHPQQLJL-CZF6Wwk8.js → journeyDiagram-ZHPQQLJL-CPGeWRg-.js} +1 -1
  108. package/dist/web/assets/{kanban-definition-PNTS6WVX-CVGaUle0.js → kanban-definition-PNTS6WVX-CMq9WuD5.js} +1 -1
  109. package/dist/web/assets/{line-CeH4KBRO.js → line-cZB9xcQk.js} +1 -1
  110. package/dist/web/assets/{mermaid-parser.core-YrU9LTTJ.js → mermaid-parser.core-D8h1T47v.js} +3 -3
  111. package/dist/web/assets/{mermaid.core-BkLEn5Vh.js → mermaid.core-CdpJws-B.js} +7 -7
  112. package/dist/web/assets/{mindmap-definition-NLK3R4M7-D22lxuXn.js → mindmap-definition-NLK3R4M7-B01KHb5Z.js} +1 -1
  113. package/dist/web/assets/{packet-AYTQ26CC-DMK0BdeB.js → packet-AYTQ26CC-CagxQ791.js} +1 -1
  114. package/dist/web/assets/pdf.worker-C2cQdohj.js +48 -0
  115. package/dist/web/assets/{pegDiagram-GJSIUBJH-B-e5e5cW.js → pegDiagram-GJSIUBJH-amhZRgGf.js} +1 -1
  116. package/dist/web/assets/{pie-WAS4IAKB-BYP5ND4b.js → pie-WAS4IAKB-zv3udP2i.js} +1 -1
  117. package/dist/web/assets/{pieDiagram-5QR66LMP-DrEY0oA_.js → pieDiagram-5QR66LMP-CjPzT-fa.js} +1 -1
  118. package/dist/web/assets/pinia-DCsnCHsH.js +1 -0
  119. package/dist/web/assets/pinia-DWj71cM9.js +1 -0
  120. package/dist/web/assets/{quadrantDiagram-O4NWA36T-D12UM_7Y.js → quadrantDiagram-O4NWA36T-7YpPBn0t.js} +1 -1
  121. package/dist/web/assets/{radar-RG4KPBEZ-50JpTuMu.js → radar-RG4KPBEZ-DZ-nSYpA.js} +1 -1
  122. package/dist/web/assets/{railroad-74A4TZTK-C-7jDcYE.js → railroad-74A4TZTK-CoylUO-u.js} +1 -1
  123. package/dist/web/assets/railroad-abnf-HS5TGJTU-C20Z1OCq.js +1 -0
  124. package/dist/web/assets/railroad-ebnf-LZEXJU2U-BltGHYDI.js +1 -0
  125. package/dist/web/assets/railroad-peg-WCYAUIDC-BT3QI-zw.js +1 -0
  126. package/dist/web/assets/{railroadDiagram-XR7U4H2S-q0-o99ts.js → railroadDiagram-XR7U4H2S-DlHZky0v.js} +1 -1
  127. package/dist/web/assets/{requirementDiagram-PLB6GJNP-DsO-Ejin.js → requirementDiagram-PLB6GJNP-Dn9whLhB.js} +1 -1
  128. package/dist/web/assets/runtime-core.esm-bundler-BKFI1w28.js +1 -0
  129. package/dist/web/assets/{safe-storage-DRouskD4.js → safe-storage-B3bJArYP.js} +1 -1
  130. package/dist/web/assets/{sankeyDiagram-IPEJSGJF-Ct9goD-6.js → sankeyDiagram-IPEJSGJF-jIf4UAnN.js} +1 -1
  131. package/dist/web/assets/{sequenceDiagram-PO4LG4MO-BMO_A2FU.js → sequenceDiagram-PO4LG4MO-CJahxeyg.js} +1 -1
  132. package/dist/web/assets/{stateDiagram-v2-GCMORJYK-BSzg0zQp.js → stateDiagram-v2-GCMORJYK-DArbI5q3.js} +2 -2
  133. package/dist/web/assets/{swimlanes-2SLR337P-CcmfFMci.js → swimlanes-2SLR337P-wyJPqm8c.js} +1 -1
  134. package/dist/web/assets/swimlanesDiagram-TC7HE7FX-DgRybibH.js +8 -0
  135. package/dist/web/assets/theme-CFC7Mb_O.js +1 -0
  136. package/dist/web/assets/{timeline-definition-EJHVYXUP-0dcHdY2G.js → timeline-definition-EJHVYXUP-Bdh9ma4o.js} +1 -1
  137. package/dist/web/assets/{treeView-Q6P3EWNA-KynQIJ_Z.js → treeView-Q6P3EWNA-CEiXTwqS.js} +1 -1
  138. package/dist/web/assets/{treemap-WGGIJYW6-DPpYRzcH.js → treemap-WGGIJYW6-am0aIfU-.js} +1 -1
  139. package/dist/web/assets/use-app-theme-FYzHIigd.js +1 -0
  140. package/dist/web/assets/use-panel-width-e-yXva8i.js +1 -0
  141. package/dist/web/assets/use-server-events-znzHKZZx.js +1 -0
  142. package/dist/web/assets/use-virtual-scroll-CIwaJCUj.js +1 -0
  143. package/dist/web/assets/{usecaseDiagram-POWQR4AR-DJBtB_eN.js → usecaseDiagram-POWQR4AR-r3Qf5Bj-.js} +1 -1
  144. package/dist/web/assets/{vennDiagram-UO4OBE2U-BgllcrO_.js → vennDiagram-UO4OBE2U-eOWNPvLI.js} +1 -1
  145. package/dist/web/assets/{vue-i18n.runtime-D0pkhc7g.js → vue-i18n.runtime-BpRrzZrT.js} +2 -2
  146. package/dist/web/assets/{wardley-WFR3VGLG-D2Je-cZt.js → wardley-WFR3VGLG-BdipY77V.js} +1 -1
  147. package/dist/web/assets/{wardleyDiagram-VNRHLVJA-B7ktegci.js → wardleyDiagram-VNRHLVJA-sFpl0u9C.js} +1 -1
  148. package/dist/web/assets/{xychartDiagram-PMCCYNJV-DL7WkDZI.js → xychartDiagram-PMCCYNJV-CtLqW--F.js} +1 -1
  149. package/dist/web/index.html +7 -7
  150. package/dist/web/pdfjs/cmaps/78-EUC-H.bcmap +0 -0
  151. package/dist/web/pdfjs/cmaps/78-EUC-V.bcmap +0 -0
  152. package/dist/web/pdfjs/cmaps/78-H.bcmap +0 -0
  153. package/dist/web/pdfjs/cmaps/78-RKSJ-H.bcmap +0 -0
  154. package/dist/web/pdfjs/cmaps/78-RKSJ-V.bcmap +0 -0
  155. package/dist/web/pdfjs/cmaps/78-V.bcmap +0 -0
  156. package/dist/web/pdfjs/cmaps/78ms-RKSJ-H.bcmap +0 -0
  157. package/dist/web/pdfjs/cmaps/78ms-RKSJ-V.bcmap +0 -0
  158. package/dist/web/pdfjs/cmaps/83pv-RKSJ-H.bcmap +0 -0
  159. package/dist/web/pdfjs/cmaps/90ms-RKSJ-H.bcmap +0 -0
  160. package/dist/web/pdfjs/cmaps/90ms-RKSJ-V.bcmap +0 -0
  161. package/dist/web/pdfjs/cmaps/90msp-RKSJ-H.bcmap +0 -0
  162. package/dist/web/pdfjs/cmaps/90msp-RKSJ-V.bcmap +0 -0
  163. package/dist/web/pdfjs/cmaps/90pv-RKSJ-H.bcmap +0 -0
  164. package/dist/web/pdfjs/cmaps/90pv-RKSJ-V.bcmap +0 -0
  165. package/dist/web/pdfjs/cmaps/Add-H.bcmap +0 -0
  166. package/dist/web/pdfjs/cmaps/Add-RKSJ-H.bcmap +0 -0
  167. package/dist/web/pdfjs/cmaps/Add-RKSJ-V.bcmap +0 -0
  168. package/dist/web/pdfjs/cmaps/Add-V.bcmap +0 -0
  169. package/dist/web/pdfjs/cmaps/Adobe-CNS1-0.bcmap +0 -0
  170. package/dist/web/pdfjs/cmaps/Adobe-CNS1-1.bcmap +0 -0
  171. package/dist/web/pdfjs/cmaps/Adobe-CNS1-2.bcmap +0 -0
  172. package/dist/web/pdfjs/cmaps/Adobe-CNS1-3.bcmap +0 -0
  173. package/dist/web/pdfjs/cmaps/Adobe-CNS1-4.bcmap +0 -0
  174. package/dist/web/pdfjs/cmaps/Adobe-CNS1-5.bcmap +0 -0
  175. package/dist/web/pdfjs/cmaps/Adobe-CNS1-6.bcmap +0 -0
  176. package/dist/web/pdfjs/cmaps/Adobe-CNS1-UCS2.bcmap +0 -0
  177. package/dist/web/pdfjs/cmaps/Adobe-GB1-0.bcmap +0 -0
  178. package/dist/web/pdfjs/cmaps/Adobe-GB1-1.bcmap +0 -0
  179. package/dist/web/pdfjs/cmaps/Adobe-GB1-2.bcmap +0 -0
  180. package/dist/web/pdfjs/cmaps/Adobe-GB1-3.bcmap +0 -0
  181. package/dist/web/pdfjs/cmaps/Adobe-GB1-4.bcmap +0 -0
  182. package/dist/web/pdfjs/cmaps/Adobe-GB1-5.bcmap +0 -0
  183. package/dist/web/pdfjs/cmaps/Adobe-GB1-UCS2.bcmap +0 -0
  184. package/dist/web/pdfjs/cmaps/Adobe-Japan1-0.bcmap +0 -0
  185. package/dist/web/pdfjs/cmaps/Adobe-Japan1-1.bcmap +0 -0
  186. package/dist/web/pdfjs/cmaps/Adobe-Japan1-2.bcmap +0 -0
  187. package/dist/web/pdfjs/cmaps/Adobe-Japan1-3.bcmap +0 -0
  188. package/dist/web/pdfjs/cmaps/Adobe-Japan1-4.bcmap +0 -0
  189. package/dist/web/pdfjs/cmaps/Adobe-Japan1-5.bcmap +0 -0
  190. package/dist/web/pdfjs/cmaps/Adobe-Japan1-6.bcmap +0 -0
  191. package/dist/web/pdfjs/cmaps/Adobe-Japan1-UCS2.bcmap +0 -0
  192. package/dist/web/pdfjs/cmaps/Adobe-Korea1-0.bcmap +0 -0
  193. package/dist/web/pdfjs/cmaps/Adobe-Korea1-1.bcmap +0 -0
  194. package/dist/web/pdfjs/cmaps/Adobe-Korea1-2.bcmap +0 -0
  195. package/dist/web/pdfjs/cmaps/Adobe-Korea1-UCS2.bcmap +0 -0
  196. package/dist/web/pdfjs/cmaps/B5-H.bcmap +0 -0
  197. package/dist/web/pdfjs/cmaps/B5-V.bcmap +0 -0
  198. package/dist/web/pdfjs/cmaps/B5pc-H.bcmap +0 -0
  199. package/dist/web/pdfjs/cmaps/B5pc-V.bcmap +0 -0
  200. package/dist/web/pdfjs/cmaps/CNS-EUC-H.bcmap +0 -0
  201. package/dist/web/pdfjs/cmaps/CNS-EUC-V.bcmap +0 -0
  202. package/dist/web/pdfjs/cmaps/CNS1-H.bcmap +0 -0
  203. package/dist/web/pdfjs/cmaps/CNS1-V.bcmap +0 -0
  204. package/dist/web/pdfjs/cmaps/CNS2-H.bcmap +0 -0
  205. package/dist/web/pdfjs/cmaps/CNS2-V.bcmap +3 -0
  206. package/dist/web/pdfjs/cmaps/ETHK-B5-H.bcmap +0 -0
  207. package/dist/web/pdfjs/cmaps/ETHK-B5-V.bcmap +0 -0
  208. package/dist/web/pdfjs/cmaps/ETen-B5-H.bcmap +0 -0
  209. package/dist/web/pdfjs/cmaps/ETen-B5-V.bcmap +0 -0
  210. package/dist/web/pdfjs/cmaps/ETenms-B5-H.bcmap +3 -0
  211. package/dist/web/pdfjs/cmaps/ETenms-B5-V.bcmap +0 -0
  212. package/dist/web/pdfjs/cmaps/EUC-H.bcmap +0 -0
  213. package/dist/web/pdfjs/cmaps/EUC-V.bcmap +0 -0
  214. package/dist/web/pdfjs/cmaps/Ext-H.bcmap +0 -0
  215. package/dist/web/pdfjs/cmaps/Ext-RKSJ-H.bcmap +0 -0
  216. package/dist/web/pdfjs/cmaps/Ext-RKSJ-V.bcmap +0 -0
  217. package/dist/web/pdfjs/cmaps/Ext-V.bcmap +0 -0
  218. package/dist/web/pdfjs/cmaps/GB-EUC-H.bcmap +0 -0
  219. package/dist/web/pdfjs/cmaps/GB-EUC-V.bcmap +0 -0
  220. package/dist/web/pdfjs/cmaps/GB-H.bcmap +4 -0
  221. package/dist/web/pdfjs/cmaps/GB-V.bcmap +0 -0
  222. package/dist/web/pdfjs/cmaps/GBK-EUC-H.bcmap +0 -0
  223. package/dist/web/pdfjs/cmaps/GBK-EUC-V.bcmap +0 -0
  224. package/dist/web/pdfjs/cmaps/GBK2K-H.bcmap +0 -0
  225. package/dist/web/pdfjs/cmaps/GBK2K-V.bcmap +0 -0
  226. package/dist/web/pdfjs/cmaps/GBKp-EUC-H.bcmap +0 -0
  227. package/dist/web/pdfjs/cmaps/GBKp-EUC-V.bcmap +0 -0
  228. package/dist/web/pdfjs/cmaps/GBT-EUC-H.bcmap +0 -0
  229. package/dist/web/pdfjs/cmaps/GBT-EUC-V.bcmap +0 -0
  230. package/dist/web/pdfjs/cmaps/GBT-H.bcmap +0 -0
  231. package/dist/web/pdfjs/cmaps/GBT-V.bcmap +0 -0
  232. package/dist/web/pdfjs/cmaps/GBTpc-EUC-H.bcmap +0 -0
  233. package/dist/web/pdfjs/cmaps/GBTpc-EUC-V.bcmap +0 -0
  234. package/dist/web/pdfjs/cmaps/GBpc-EUC-H.bcmap +0 -0
  235. package/dist/web/pdfjs/cmaps/GBpc-EUC-V.bcmap +0 -0
  236. package/dist/web/pdfjs/cmaps/H.bcmap +0 -0
  237. package/dist/web/pdfjs/cmaps/HKdla-B5-H.bcmap +0 -0
  238. package/dist/web/pdfjs/cmaps/HKdla-B5-V.bcmap +0 -0
  239. package/dist/web/pdfjs/cmaps/HKdlb-B5-H.bcmap +0 -0
  240. package/dist/web/pdfjs/cmaps/HKdlb-B5-V.bcmap +0 -0
  241. package/dist/web/pdfjs/cmaps/HKgccs-B5-H.bcmap +0 -0
  242. package/dist/web/pdfjs/cmaps/HKgccs-B5-V.bcmap +0 -0
  243. package/dist/web/pdfjs/cmaps/HKm314-B5-H.bcmap +0 -0
  244. package/dist/web/pdfjs/cmaps/HKm314-B5-V.bcmap +0 -0
  245. package/dist/web/pdfjs/cmaps/HKm471-B5-H.bcmap +0 -0
  246. package/dist/web/pdfjs/cmaps/HKm471-B5-V.bcmap +0 -0
  247. package/dist/web/pdfjs/cmaps/HKscs-B5-H.bcmap +0 -0
  248. package/dist/web/pdfjs/cmaps/HKscs-B5-V.bcmap +0 -0
  249. package/dist/web/pdfjs/cmaps/Hankaku.bcmap +0 -0
  250. package/dist/web/pdfjs/cmaps/Hiragana.bcmap +0 -0
  251. package/dist/web/pdfjs/cmaps/KSC-EUC-H.bcmap +0 -0
  252. package/dist/web/pdfjs/cmaps/KSC-EUC-V.bcmap +0 -0
  253. package/dist/web/pdfjs/cmaps/KSC-H.bcmap +0 -0
  254. package/dist/web/pdfjs/cmaps/KSC-Johab-H.bcmap +0 -0
  255. package/dist/web/pdfjs/cmaps/KSC-Johab-V.bcmap +0 -0
  256. package/dist/web/pdfjs/cmaps/KSC-V.bcmap +0 -0
  257. package/dist/web/pdfjs/cmaps/KSCms-UHC-H.bcmap +0 -0
  258. package/dist/web/pdfjs/cmaps/KSCms-UHC-HW-H.bcmap +0 -0
  259. package/dist/web/pdfjs/cmaps/KSCms-UHC-HW-V.bcmap +0 -0
  260. package/dist/web/pdfjs/cmaps/KSCms-UHC-V.bcmap +0 -0
  261. package/dist/web/pdfjs/cmaps/KSCpc-EUC-H.bcmap +0 -0
  262. package/dist/web/pdfjs/cmaps/KSCpc-EUC-V.bcmap +0 -0
  263. package/dist/web/pdfjs/cmaps/Katakana.bcmap +0 -0
  264. package/dist/web/pdfjs/cmaps/LICENSE +36 -0
  265. package/dist/web/pdfjs/cmaps/NWP-H.bcmap +0 -0
  266. package/dist/web/pdfjs/cmaps/NWP-V.bcmap +0 -0
  267. package/dist/web/pdfjs/cmaps/RKSJ-H.bcmap +0 -0
  268. package/dist/web/pdfjs/cmaps/RKSJ-V.bcmap +0 -0
  269. package/dist/web/pdfjs/cmaps/Roman.bcmap +0 -0
  270. package/dist/web/pdfjs/cmaps/UniCNS-UCS2-H.bcmap +0 -0
  271. package/dist/web/pdfjs/cmaps/UniCNS-UCS2-V.bcmap +0 -0
  272. package/dist/web/pdfjs/cmaps/UniCNS-UTF16-H.bcmap +0 -0
  273. package/dist/web/pdfjs/cmaps/UniCNS-UTF16-V.bcmap +0 -0
  274. package/dist/web/pdfjs/cmaps/UniCNS-UTF32-H.bcmap +0 -0
  275. package/dist/web/pdfjs/cmaps/UniCNS-UTF32-V.bcmap +0 -0
  276. package/dist/web/pdfjs/cmaps/UniCNS-UTF8-H.bcmap +0 -0
  277. package/dist/web/pdfjs/cmaps/UniCNS-UTF8-V.bcmap +0 -0
  278. package/dist/web/pdfjs/cmaps/UniGB-UCS2-H.bcmap +0 -0
  279. package/dist/web/pdfjs/cmaps/UniGB-UCS2-V.bcmap +0 -0
  280. package/dist/web/pdfjs/cmaps/UniGB-UTF16-H.bcmap +0 -0
  281. package/dist/web/pdfjs/cmaps/UniGB-UTF16-V.bcmap +0 -0
  282. package/dist/web/pdfjs/cmaps/UniGB-UTF32-H.bcmap +0 -0
  283. package/dist/web/pdfjs/cmaps/UniGB-UTF32-V.bcmap +0 -0
  284. package/dist/web/pdfjs/cmaps/UniGB-UTF8-H.bcmap +0 -0
  285. package/dist/web/pdfjs/cmaps/UniGB-UTF8-V.bcmap +0 -0
  286. package/dist/web/pdfjs/cmaps/UniJIS-UCS2-H.bcmap +0 -0
  287. package/dist/web/pdfjs/cmaps/UniJIS-UCS2-HW-H.bcmap +0 -0
  288. package/dist/web/pdfjs/cmaps/UniJIS-UCS2-HW-V.bcmap +0 -0
  289. package/dist/web/pdfjs/cmaps/UniJIS-UCS2-V.bcmap +0 -0
  290. package/dist/web/pdfjs/cmaps/UniJIS-UTF16-H.bcmap +0 -0
  291. package/dist/web/pdfjs/cmaps/UniJIS-UTF16-V.bcmap +0 -0
  292. package/dist/web/pdfjs/cmaps/UniJIS-UTF32-H.bcmap +0 -0
  293. package/dist/web/pdfjs/cmaps/UniJIS-UTF32-V.bcmap +0 -0
  294. package/dist/web/pdfjs/cmaps/UniJIS-UTF8-H.bcmap +0 -0
  295. package/dist/web/pdfjs/cmaps/UniJIS-UTF8-V.bcmap +0 -0
  296. package/dist/web/pdfjs/cmaps/UniJIS2004-UTF16-H.bcmap +0 -0
  297. package/dist/web/pdfjs/cmaps/UniJIS2004-UTF16-V.bcmap +0 -0
  298. package/dist/web/pdfjs/cmaps/UniJIS2004-UTF32-H.bcmap +0 -0
  299. package/dist/web/pdfjs/cmaps/UniJIS2004-UTF32-V.bcmap +0 -0
  300. package/dist/web/pdfjs/cmaps/UniJIS2004-UTF8-H.bcmap +0 -0
  301. package/dist/web/pdfjs/cmaps/UniJIS2004-UTF8-V.bcmap +0 -0
  302. package/dist/web/pdfjs/cmaps/UniJISPro-UCS2-HW-V.bcmap +0 -0
  303. package/dist/web/pdfjs/cmaps/UniJISPro-UCS2-V.bcmap +0 -0
  304. package/dist/web/pdfjs/cmaps/UniJISPro-UTF8-V.bcmap +0 -0
  305. package/dist/web/pdfjs/cmaps/UniJISX0213-UTF32-H.bcmap +0 -0
  306. package/dist/web/pdfjs/cmaps/UniJISX0213-UTF32-V.bcmap +0 -0
  307. package/dist/web/pdfjs/cmaps/UniJISX02132004-UTF32-H.bcmap +0 -0
  308. package/dist/web/pdfjs/cmaps/UniJISX02132004-UTF32-V.bcmap +0 -0
  309. package/dist/web/pdfjs/cmaps/UniKS-UCS2-H.bcmap +0 -0
  310. package/dist/web/pdfjs/cmaps/UniKS-UCS2-V.bcmap +0 -0
  311. package/dist/web/pdfjs/cmaps/UniKS-UTF16-H.bcmap +0 -0
  312. package/dist/web/pdfjs/cmaps/UniKS-UTF16-V.bcmap +0 -0
  313. package/dist/web/pdfjs/cmaps/UniKS-UTF32-H.bcmap +0 -0
  314. package/dist/web/pdfjs/cmaps/UniKS-UTF32-V.bcmap +0 -0
  315. package/dist/web/pdfjs/cmaps/UniKS-UTF8-H.bcmap +0 -0
  316. package/dist/web/pdfjs/cmaps/UniKS-UTF8-V.bcmap +0 -0
  317. package/dist/web/pdfjs/cmaps/V.bcmap +0 -0
  318. package/dist/web/pdfjs/cmaps/WP-Symbol.bcmap +0 -0
  319. package/dist/web/pdfjs/standard_fonts/FoxitDingbats.pfb +0 -0
  320. package/dist/web/pdfjs/standard_fonts/FoxitFixed.pfb +0 -0
  321. package/dist/web/pdfjs/standard_fonts/FoxitFixedBold.pfb +0 -0
  322. package/dist/web/pdfjs/standard_fonts/FoxitFixedBoldItalic.pfb +0 -0
  323. package/dist/web/pdfjs/standard_fonts/FoxitFixedItalic.pfb +0 -0
  324. package/dist/web/pdfjs/standard_fonts/FoxitSerif.pfb +0 -0
  325. package/dist/web/pdfjs/standard_fonts/FoxitSerifBold.pfb +0 -0
  326. package/dist/web/pdfjs/standard_fonts/FoxitSerifBoldItalic.pfb +0 -0
  327. package/dist/web/pdfjs/standard_fonts/FoxitSerifItalic.pfb +0 -0
  328. package/dist/web/pdfjs/standard_fonts/FoxitSymbol.pfb +0 -0
  329. package/dist/web/pdfjs/standard_fonts/LICENSE_FOXIT +27 -0
  330. package/dist/web/pdfjs/standard_fonts/LICENSE_LIBERATION +363 -0
  331. package/dist/web/pdfjs/standard_fonts/LiberationSans-Bold.ttf +0 -0
  332. package/dist/web/pdfjs/standard_fonts/LiberationSans-BoldItalic.ttf +0 -0
  333. package/dist/web/pdfjs/standard_fonts/LiberationSans-Italic.ttf +0 -0
  334. package/dist/web/pdfjs/standard_fonts/LiberationSans-Regular.ttf +0 -0
  335. package/dist/web/pdfjs/wasm/LICENSE_JBIG2 +196 -0
  336. package/dist/web/pdfjs/wasm/LICENSE_OPENJPEG +39 -0
  337. package/dist/web/pdfjs/wasm/LICENSE_PDFJS_JBIG2 +13 -0
  338. package/dist/web/pdfjs/wasm/LICENSE_PDFJS_OPENJPEG +22 -0
  339. package/dist/web/pdfjs/wasm/LICENSE_PDFJS_QCMS +19 -0
  340. package/dist/web/pdfjs/wasm/LICENSE_QCMS +21 -0
  341. package/dist/web/pdfjs/wasm/jbig2.wasm +0 -0
  342. package/dist/web/pdfjs/wasm/jbig2_nowasm_fallback.js +15 -0
  343. package/dist/web/pdfjs/wasm/openjpeg.wasm +0 -0
  344. package/dist/web/pdfjs/wasm/openjpeg_nowasm_fallback.js +17 -0
  345. package/dist/web/pdfjs/wasm/qcms_bg.wasm +0 -0
  346. package/dist/web/pdfjs/wasm/quickjs-eval.js +16 -0
  347. package/dist/web/pdfjs/wasm/quickjs-eval.wasm +0 -0
  348. package/package.json +13 -3
  349. package/dist/web/assets/CreateReviewFabButton-UdzUa_ra.js +0 -1
  350. package/dist/web/assets/ErrorNotFound-BAP3n0aC.js +0 -1
  351. package/dist/web/assets/IndexPage-BtoeYBg2.js +0 -1
  352. package/dist/web/assets/IndexPage-D894ONbY.css +0 -1
  353. package/dist/web/assets/MainLayout-ChxXEt_Q.css +0 -1
  354. package/dist/web/assets/MainLayout-DjoItVv0.js +0 -7
  355. package/dist/web/assets/QBtn-BDbJU6_B.js +0 -1
  356. package/dist/web/assets/QMenu-Bh-SjGqz.js +0 -1
  357. package/dist/web/assets/QSelect-CZqAOLiG.js +0 -1
  358. package/dist/web/assets/ReviewDetailPage-CP6YqXPT.css +0 -1
  359. package/dist/web/assets/ReviewDetailPage-DvDoJ37c.js +0 -1
  360. package/dist/web/assets/ReviewsPage-CHUXLKKw.js +0 -1
  361. package/dist/web/assets/StatusSwitcher-Br_8-_CT.js +0 -2
  362. package/dist/web/assets/StatusSwitcher-DLU1h0rK.css +0 -1
  363. package/dist/web/assets/agent-icon-BUd-vCRS.css +0 -1
  364. package/dist/web/assets/agent-icon-Bc3evt8o.js +0 -17
  365. package/dist/web/assets/agent-store-FOng_RxK.js +0 -1
  366. package/dist/web/assets/app-info-store-xZiQfdgO.js +0 -1
  367. package/dist/web/assets/architecture-7GRP2DOG-JRGyT2Fi.js +0 -1
  368. package/dist/web/assets/channel-C9BIu6HY.js +0 -1
  369. package/dist/web/assets/chunk-3FUC2YCW-DM9oDQ0E.js +0 -2
  370. package/dist/web/assets/create-BkZH2Q0U.js +0 -1
  371. package/dist/web/assets/debounce-CDIE7CV6.js +0 -1
  372. package/dist/web/assets/eventmodeling-NTZA5JFV-DblBuyVi.js +0 -1
  373. package/dist/web/assets/export-file-Di_2jvjP.js +0 -1
  374. package/dist/web/assets/flowDiagram-KWPJA3E3-D5iLm5ip.js +0 -1
  375. package/dist/web/assets/i18n-DvBemXXT.js +0 -1
  376. package/dist/web/assets/index-Bn7ByP7x.js +0 -2
  377. package/dist/web/assets/index-CgeU6Wuu.css +0 -1
  378. package/dist/web/assets/init-app-C4PeiqQX.js +0 -1
  379. package/dist/web/assets/pinia-DB8WAJFa.js +0 -1
  380. package/dist/web/assets/pinia-DmTi2T44.js +0 -1
  381. package/dist/web/assets/railroad-abnf-HS5TGJTU-Bf3pkLrz.js +0 -1
  382. package/dist/web/assets/railroad-ebnf-LZEXJU2U-f10AkgiO.js +0 -1
  383. package/dist/web/assets/railroad-peg-WCYAUIDC-C4FjCCVf.js +0 -1
  384. package/dist/web/assets/runtime-core.esm-bundler-CUpq88z7.js +0 -1
  385. package/dist/web/assets/single-flight-r8B7stt1.js +0 -1
  386. package/dist/web/assets/swimlanesDiagram-TC7HE7FX-DLq4WqTk.js +0 -8
  387. package/dist/web/assets/theme-DQpF6lSZ.js +0 -1
  388. package/dist/web/assets/use-app-theme-B1Vh5WKT.js +0 -1
  389. package/dist/web/assets/use-panel-width-Cs_K2M_v.js +0 -1
  390. package/dist/web/assets/use-virtual-scroll-BVHTKnoC.js +0 -1
@@ -1,9 +1,9 @@
1
- import{n as e}from"./chunk-Y2CYZVJY-DsF7k-Jl.js";import{m as t,p as n}from"./src-oBChb5qS.js";import{H as r,U as i,a,q as o,s,v as c,w as l,x as u,y as d}from"./chunk-O7XYJQB3-CDFTy-aQ.js";import{d as f}from"./agent-icon-Bc3evt8o.js";import{g as p,s as m}from"./chunk-ZIGJFQKS-DDjPFexL.js";import"./chunk-742MDFTN-BGzG-dZE.js";import"./chunk-MBY4JIJT-ZSssyEJi.js";import"./chunk-7PRAP22T-CJZNYL51.js";import{a as h,i as g,o as _,r as v}from"./chunk-J5ZVWO5B-oDCd-gWO.js";import"./chunk-7INBJB4K-DJGc-gqS.js";import"./chunk-5DYCD2WN-CpgXf7LJ.js";import"./chunk-Z7XXMR3K-Br_E149D.js";import{t as y}from"./chunk-GWA4HPMP-RIikrSw1.js";import{t as b}from"./chunk-XXDRQBXY-BvKO0v-W.js";import{t as x}from"./chunk-WEXAMYUT-BdPY0e7q.js";import"./chunk-UA2S7LBM-B8rY8Yj-.js";import{i as S,r as C}from"./mermaid.core-BkLEn5Vh.js";var w=(function(){var t=e(function(e,t,n,r){for(n||={},r=e.length;r--;n[e[r]]=t);return n},`o`),n=[1,2],r=[1,3],i=[1,4],a=[2,4],o=[1,9],s=[1,11],c=[1,16],l=[1,17],u=[1,18],d=[1,19],f=[1,33],p=[1,20],m=[1,21],h=[1,22],g=[1,23],_=[1,24],v=[1,26],y=[1,27],b=[1,28],x=[1,29],S=[1,30],C=[1,31],w=[1,32],T=[1,35],E=[1,36],D=[1,37],O=[1,38],k=[1,34],A=[1,4,5,16,17,19,21,22,24,25,26,27,28,29,33,35,37,38,41,45,48,51,52,53,54,57],j=[1,4,5,14,15,16,17,19,21,22,24,25,26,27,28,29,33,35,37,38,39,40,41,45,48,51,52,53,54,57],M=[4,5,16,17,19,21,22,24,25,26,27,28,29,33,35,37,38,41,45,48,51,52,53,54,57],N={trace:e(function(){},`trace`),yy:{},symbols_:{error:2,start:3,SPACE:4,NL:5,SD:6,document:7,line:8,statement:9,classDefStatement:10,styleStatement:11,cssClassStatement:12,idStatement:13,DESCR:14,"-->":15,HIDE_EMPTY:16,scale:17,WIDTH:18,COMPOSIT_STATE:19,STRUCT_START:20,STRUCT_STOP:21,STATE_DESCR:22,AS:23,ID:24,FORK:25,JOIN:26,CHOICE:27,CONCURRENT:28,note:29,notePosition:30,NOTE_TEXT:31,direction:32,acc_title:33,acc_title_value:34,acc_descr:35,acc_descr_value:36,acc_descr_multiline_value:37,CLICK:38,STRING:39,HREF:40,classDef:41,CLASSDEF_ID:42,CLASSDEF_STYLEOPTS:43,DEFAULT:44,style:45,STYLE_IDS:46,STYLEDEF_STYLEOPTS:47,class:48,CLASSENTITY_IDS:49,STYLECLASS:50,direction_tb:51,direction_bt:52,direction_rl:53,direction_lr:54,eol:55,";":56,EDGE_STATE:57,STYLE_SEPARATOR:58,left_of:59,right_of:60,$accept:0,$end:1},terminals_:{2:`error`,4:`SPACE`,5:`NL`,6:`SD`,14:`DESCR`,15:`-->`,16:`HIDE_EMPTY`,17:`scale`,18:`WIDTH`,19:`COMPOSIT_STATE`,20:`STRUCT_START`,21:`STRUCT_STOP`,22:`STATE_DESCR`,23:`AS`,24:`ID`,25:`FORK`,26:`JOIN`,27:`CHOICE`,28:`CONCURRENT`,29:`note`,31:`NOTE_TEXT`,33:`acc_title`,34:`acc_title_value`,35:`acc_descr`,36:`acc_descr_value`,37:`acc_descr_multiline_value`,38:`CLICK`,39:`STRING`,40:`HREF`,41:`classDef`,42:`CLASSDEF_ID`,43:`CLASSDEF_STYLEOPTS`,44:`DEFAULT`,45:`style`,46:`STYLE_IDS`,47:`STYLEDEF_STYLEOPTS`,48:`class`,49:`CLASSENTITY_IDS`,50:`STYLECLASS`,51:`direction_tb`,52:`direction_bt`,53:`direction_rl`,54:`direction_lr`,56:`;`,57:`EDGE_STATE`,58:`STYLE_SEPARATOR`,59:`left_of`,60:`right_of`},productions_:[0,[3,2],[3,2],[3,2],[7,0],[7,2],[8,2],[8,1],[8,1],[9,1],[9,1],[9,1],[9,1],[9,2],[9,3],[9,4],[9,1],[9,2],[9,1],[9,4],[9,3],[9,6],[9,1],[9,1],[9,1],[9,1],[9,4],[9,4],[9,1],[9,2],[9,2],[9,1],[9,5],[9,5],[10,3],[10,3],[11,3],[12,3],[32,1],[32,1],[32,1],[32,1],[55,1],[55,1],[13,1],[13,1],[13,3],[13,3],[30,1],[30,1]],performAction:e(function(e,t,n,r,i,a,o){var s=a.length-1;switch(i){case 3:return r.setRootDoc(a[s]),a[s];case 4:this.$=[];break;case 5:a[s]!=`nl`&&(a[s-1].push(a[s]),this.$=a[s-1]);break;case 6:case 7:this.$=a[s];break;case 8:this.$=`nl`;break;case 12:this.$=a[s];break;case 13:let e=a[s-1];e.description=r.trimColon(a[s]),this.$=e;break;case 14:this.$={stmt:`relation`,state1:a[s-2],state2:a[s]};break;case 15:let t=r.trimColon(a[s]);this.$={stmt:`relation`,state1:a[s-3],state2:a[s-1],description:t};break;case 19:this.$={stmt:`state`,id:a[s-3],type:`default`,description:``,doc:a[s-1]};break;case 20:var c=a[s],l=a[s-2].trim();if(a[s].match(`:`)){var u=a[s].split(`:`);c=u[0],l=[l,u[1]]}this.$={stmt:`state`,id:c,type:`default`,description:l};break;case 21:this.$={stmt:`state`,id:a[s-3],type:`default`,description:a[s-5],doc:a[s-1]};break;case 22:this.$={stmt:`state`,id:a[s],type:`fork`};break;case 23:this.$={stmt:`state`,id:a[s],type:`join`};break;case 24:this.$={stmt:`state`,id:a[s],type:`choice`};break;case 25:this.$={stmt:`state`,id:r.getDividerId(),type:`divider`};break;case 26:this.$={stmt:`state`,id:a[s-1].trim(),note:{position:a[s-2].trim(),text:a[s].trim()}};break;case 29:this.$=a[s].trim(),r.setAccTitle(this.$);break;case 30:case 31:this.$=a[s].trim(),r.setAccDescription(this.$);break;case 32:this.$={stmt:`click`,id:a[s-3],url:a[s-2],tooltip:a[s-1]};break;case 33:this.$={stmt:`click`,id:a[s-3],url:a[s-1],tooltip:``};break;case 34:case 35:this.$={stmt:`classDef`,id:a[s-1].trim(),classes:a[s].trim()};break;case 36:this.$={stmt:`style`,id:a[s-1].trim(),styleClass:a[s].trim()};break;case 37:this.$={stmt:`applyClass`,id:a[s-1].trim(),styleClass:a[s].trim()};break;case 38:r.setDirection(`TB`),this.$={stmt:`dir`,value:`TB`};break;case 39:r.setDirection(`BT`),this.$={stmt:`dir`,value:`BT`};break;case 40:r.setDirection(`RL`),this.$={stmt:`dir`,value:`RL`};break;case 41:r.setDirection(`LR`),this.$={stmt:`dir`,value:`LR`};break;case 44:case 45:this.$={stmt:`state`,id:a[s].trim(),type:`default`,description:``};break;case 46:this.$={stmt:`state`,id:a[s-2].trim(),classes:[a[s].trim()],type:`default`,description:``};break;case 47:this.$={stmt:`state`,id:a[s-2].trim(),classes:[a[s].trim()],type:`default`,description:``}}},`anonymous`),table:[{3:1,4:n,5:r,6:i},{1:[3]},{3:5,4:n,5:r,6:i},{3:6,4:n,5:r,6:i},t([1,4,5,16,17,19,22,24,25,26,27,28,29,33,35,37,38,41,45,48,51,52,53,54,57],a,{7:7}),{1:[2,1]},{1:[2,2]},{1:[2,3],4:o,5:s,8:8,9:10,10:12,11:13,12:14,13:15,16:c,17:l,19:u,22:d,24:f,25:p,26:m,27:h,28:g,29:_,32:25,33:v,35:y,37:b,38:x,41:S,45:C,48:w,51:T,52:E,53:D,54:O,57:k},t(A,[2,5]),{9:39,10:12,11:13,12:14,13:15,16:c,17:l,19:u,22:d,24:f,25:p,26:m,27:h,28:g,29:_,32:25,33:v,35:y,37:b,38:x,41:S,45:C,48:w,51:T,52:E,53:D,54:O,57:k},t(A,[2,7]),t(A,[2,8]),t(A,[2,9]),t(A,[2,10]),t(A,[2,11]),t(A,[2,12],{14:[1,40],15:[1,41]}),t(A,[2,16]),{18:[1,42]},t(A,[2,18],{20:[1,43]}),{23:[1,44]},t(A,[2,22]),t(A,[2,23]),t(A,[2,24]),t(A,[2,25]),{30:45,31:[1,46],59:[1,47],60:[1,48]},t(A,[2,28]),{34:[1,49]},{36:[1,50]},t(A,[2,31]),{13:51,24:f,57:k},{42:[1,52],44:[1,53]},{46:[1,54]},{49:[1,55]},t(j,[2,44],{58:[1,56]}),t(j,[2,45],{58:[1,57]}),t(A,[2,38]),t(A,[2,39]),t(A,[2,40]),t(A,[2,41]),t(A,[2,6]),t(A,[2,13]),{13:58,24:f,57:k},t(A,[2,17]),t(M,a,{7:59}),{24:[1,60]},{24:[1,61]},{23:[1,62]},{24:[2,48]},{24:[2,49]},t(A,[2,29]),t(A,[2,30]),{39:[1,63],40:[1,64]},{43:[1,65]},{43:[1,66]},{47:[1,67]},{50:[1,68]},{24:[1,69]},{24:[1,70]},t(A,[2,14],{14:[1,71]}),{4:o,5:s,8:8,9:10,10:12,11:13,12:14,13:15,16:c,17:l,19:u,21:[1,72],22:d,24:f,25:p,26:m,27:h,28:g,29:_,32:25,33:v,35:y,37:b,38:x,41:S,45:C,48:w,51:T,52:E,53:D,54:O,57:k},t(A,[2,20],{20:[1,73]}),{31:[1,74]},{24:[1,75]},{39:[1,76]},{39:[1,77]},t(A,[2,34]),t(A,[2,35]),t(A,[2,36]),t(A,[2,37]),t(j,[2,46]),t(j,[2,47]),t(A,[2,15]),t(A,[2,19]),t(M,a,{7:78}),t(A,[2,26]),t(A,[2,27]),{5:[1,79]},{5:[1,80]},{4:o,5:s,8:8,9:10,10:12,11:13,12:14,13:15,16:c,17:l,19:u,21:[1,81],22:d,24:f,25:p,26:m,27:h,28:g,29:_,32:25,33:v,35:y,37:b,38:x,41:S,45:C,48:w,51:T,52:E,53:D,54:O,57:k},t(A,[2,32]),t(A,[2,33]),t(A,[2,21])],defaultActions:{5:[2,1],6:[2,2],47:[2,48],48:[2,49]},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;this.parseError=typeof g.yy.parseError==`function`?g.yy.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,A,j;;){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 M=``;for(O in j=[],s[w])this.terminals_[O]&&O>f&&j.push(`'`+this.terminals_[O]+`'`);M=h.showPosition?`Parse error on line `+(l+1)+`:
1
+ import{n as e}from"./chunk-Y2CYZVJY-DsF7k-Jl.js";import{m as t,p as n}from"./src-oBChb5qS.js";import{H as r,U as i,a,q as o,s,v as c,w as l,x as u,y as d}from"./chunk-O7XYJQB3-BHUId2wW.js";import{g as f,s as p}from"./chunk-ZIGJFQKS-D6psU74o.js";import"./chunk-742MDFTN-CfTGkhlJ.js";import"./chunk-MBY4JIJT-PzEUkWiy.js";import"./chunk-7PRAP22T-DFjSoEy0.js";import{a as m,i as h,o as g,r as _}from"./chunk-J5ZVWO5B-oDCd-gWO.js";import"./chunk-7INBJB4K-COfv2qWf.js";import"./chunk-5DYCD2WN-6HcgVbfR.js";import"./chunk-Z7XXMR3K-BcgKYeJS.js";import{t as v}from"./chunk-GWA4HPMP-J0EaOPjD.js";import{t as y}from"./chunk-XXDRQBXY-BvKO0v-W.js";import{t as b}from"./chunk-WEXAMYUT-BMiibMha.js";import"./chunk-UA2S7LBM-DXQ1DAj6.js";import{i as x,r as S}from"./mermaid.core-CdpJws-B.js";import{r as C}from"./MainLayout-baVxjyeL.js";var w=(function(){var t=e(function(e,t,n,r){for(n||={},r=e.length;r--;n[e[r]]=t);return n},`o`),n=[1,2],r=[1,3],i=[1,4],a=[2,4],o=[1,9],s=[1,11],c=[1,16],l=[1,17],u=[1,18],d=[1,19],f=[1,33],p=[1,20],m=[1,21],h=[1,22],g=[1,23],_=[1,24],v=[1,26],y=[1,27],b=[1,28],x=[1,29],S=[1,30],C=[1,31],w=[1,32],T=[1,35],E=[1,36],D=[1,37],O=[1,38],k=[1,34],A=[1,4,5,16,17,19,21,22,24,25,26,27,28,29,33,35,37,38,41,45,48,51,52,53,54,57],j=[1,4,5,14,15,16,17,19,21,22,24,25,26,27,28,29,33,35,37,38,39,40,41,45,48,51,52,53,54,57],M=[4,5,16,17,19,21,22,24,25,26,27,28,29,33,35,37,38,41,45,48,51,52,53,54,57],N={trace:e(function(){},`trace`),yy:{},symbols_:{error:2,start:3,SPACE:4,NL:5,SD:6,document:7,line:8,statement:9,classDefStatement:10,styleStatement:11,cssClassStatement:12,idStatement:13,DESCR:14,"-->":15,HIDE_EMPTY:16,scale:17,WIDTH:18,COMPOSIT_STATE:19,STRUCT_START:20,STRUCT_STOP:21,STATE_DESCR:22,AS:23,ID:24,FORK:25,JOIN:26,CHOICE:27,CONCURRENT:28,note:29,notePosition:30,NOTE_TEXT:31,direction:32,acc_title:33,acc_title_value:34,acc_descr:35,acc_descr_value:36,acc_descr_multiline_value:37,CLICK:38,STRING:39,HREF:40,classDef:41,CLASSDEF_ID:42,CLASSDEF_STYLEOPTS:43,DEFAULT:44,style:45,STYLE_IDS:46,STYLEDEF_STYLEOPTS:47,class:48,CLASSENTITY_IDS:49,STYLECLASS:50,direction_tb:51,direction_bt:52,direction_rl:53,direction_lr:54,eol:55,";":56,EDGE_STATE:57,STYLE_SEPARATOR:58,left_of:59,right_of:60,$accept:0,$end:1},terminals_:{2:`error`,4:`SPACE`,5:`NL`,6:`SD`,14:`DESCR`,15:`-->`,16:`HIDE_EMPTY`,17:`scale`,18:`WIDTH`,19:`COMPOSIT_STATE`,20:`STRUCT_START`,21:`STRUCT_STOP`,22:`STATE_DESCR`,23:`AS`,24:`ID`,25:`FORK`,26:`JOIN`,27:`CHOICE`,28:`CONCURRENT`,29:`note`,31:`NOTE_TEXT`,33:`acc_title`,34:`acc_title_value`,35:`acc_descr`,36:`acc_descr_value`,37:`acc_descr_multiline_value`,38:`CLICK`,39:`STRING`,40:`HREF`,41:`classDef`,42:`CLASSDEF_ID`,43:`CLASSDEF_STYLEOPTS`,44:`DEFAULT`,45:`style`,46:`STYLE_IDS`,47:`STYLEDEF_STYLEOPTS`,48:`class`,49:`CLASSENTITY_IDS`,50:`STYLECLASS`,51:`direction_tb`,52:`direction_bt`,53:`direction_rl`,54:`direction_lr`,56:`;`,57:`EDGE_STATE`,58:`STYLE_SEPARATOR`,59:`left_of`,60:`right_of`},productions_:[0,[3,2],[3,2],[3,2],[7,0],[7,2],[8,2],[8,1],[8,1],[9,1],[9,1],[9,1],[9,1],[9,2],[9,3],[9,4],[9,1],[9,2],[9,1],[9,4],[9,3],[9,6],[9,1],[9,1],[9,1],[9,1],[9,4],[9,4],[9,1],[9,2],[9,2],[9,1],[9,5],[9,5],[10,3],[10,3],[11,3],[12,3],[32,1],[32,1],[32,1],[32,1],[55,1],[55,1],[13,1],[13,1],[13,3],[13,3],[30,1],[30,1]],performAction:e(function(e,t,n,r,i,a,o){var s=a.length-1;switch(i){case 3:return r.setRootDoc(a[s]),a[s];case 4:this.$=[];break;case 5:a[s]!=`nl`&&(a[s-1].push(a[s]),this.$=a[s-1]);break;case 6:case 7:this.$=a[s];break;case 8:this.$=`nl`;break;case 12:this.$=a[s];break;case 13:let e=a[s-1];e.description=r.trimColon(a[s]),this.$=e;break;case 14:this.$={stmt:`relation`,state1:a[s-2],state2:a[s]};break;case 15:let t=r.trimColon(a[s]);this.$={stmt:`relation`,state1:a[s-3],state2:a[s-1],description:t};break;case 19:this.$={stmt:`state`,id:a[s-3],type:`default`,description:``,doc:a[s-1]};break;case 20:var c=a[s],l=a[s-2].trim();if(a[s].match(`:`)){var u=a[s].split(`:`);c=u[0],l=[l,u[1]]}this.$={stmt:`state`,id:c,type:`default`,description:l};break;case 21:this.$={stmt:`state`,id:a[s-3],type:`default`,description:a[s-5],doc:a[s-1]};break;case 22:this.$={stmt:`state`,id:a[s],type:`fork`};break;case 23:this.$={stmt:`state`,id:a[s],type:`join`};break;case 24:this.$={stmt:`state`,id:a[s],type:`choice`};break;case 25:this.$={stmt:`state`,id:r.getDividerId(),type:`divider`};break;case 26:this.$={stmt:`state`,id:a[s-1].trim(),note:{position:a[s-2].trim(),text:a[s].trim()}};break;case 29:this.$=a[s].trim(),r.setAccTitle(this.$);break;case 30:case 31:this.$=a[s].trim(),r.setAccDescription(this.$);break;case 32:this.$={stmt:`click`,id:a[s-3],url:a[s-2],tooltip:a[s-1]};break;case 33:this.$={stmt:`click`,id:a[s-3],url:a[s-1],tooltip:``};break;case 34:case 35:this.$={stmt:`classDef`,id:a[s-1].trim(),classes:a[s].trim()};break;case 36:this.$={stmt:`style`,id:a[s-1].trim(),styleClass:a[s].trim()};break;case 37:this.$={stmt:`applyClass`,id:a[s-1].trim(),styleClass:a[s].trim()};break;case 38:r.setDirection(`TB`),this.$={stmt:`dir`,value:`TB`};break;case 39:r.setDirection(`BT`),this.$={stmt:`dir`,value:`BT`};break;case 40:r.setDirection(`RL`),this.$={stmt:`dir`,value:`RL`};break;case 41:r.setDirection(`LR`),this.$={stmt:`dir`,value:`LR`};break;case 44:case 45:this.$={stmt:`state`,id:a[s].trim(),type:`default`,description:``};break;case 46:this.$={stmt:`state`,id:a[s-2].trim(),classes:[a[s].trim()],type:`default`,description:``};break;case 47:this.$={stmt:`state`,id:a[s-2].trim(),classes:[a[s].trim()],type:`default`,description:``}}},`anonymous`),table:[{3:1,4:n,5:r,6:i},{1:[3]},{3:5,4:n,5:r,6:i},{3:6,4:n,5:r,6:i},t([1,4,5,16,17,19,22,24,25,26,27,28,29,33,35,37,38,41,45,48,51,52,53,54,57],a,{7:7}),{1:[2,1]},{1:[2,2]},{1:[2,3],4:o,5:s,8:8,9:10,10:12,11:13,12:14,13:15,16:c,17:l,19:u,22:d,24:f,25:p,26:m,27:h,28:g,29:_,32:25,33:v,35:y,37:b,38:x,41:S,45:C,48:w,51:T,52:E,53:D,54:O,57:k},t(A,[2,5]),{9:39,10:12,11:13,12:14,13:15,16:c,17:l,19:u,22:d,24:f,25:p,26:m,27:h,28:g,29:_,32:25,33:v,35:y,37:b,38:x,41:S,45:C,48:w,51:T,52:E,53:D,54:O,57:k},t(A,[2,7]),t(A,[2,8]),t(A,[2,9]),t(A,[2,10]),t(A,[2,11]),t(A,[2,12],{14:[1,40],15:[1,41]}),t(A,[2,16]),{18:[1,42]},t(A,[2,18],{20:[1,43]}),{23:[1,44]},t(A,[2,22]),t(A,[2,23]),t(A,[2,24]),t(A,[2,25]),{30:45,31:[1,46],59:[1,47],60:[1,48]},t(A,[2,28]),{34:[1,49]},{36:[1,50]},t(A,[2,31]),{13:51,24:f,57:k},{42:[1,52],44:[1,53]},{46:[1,54]},{49:[1,55]},t(j,[2,44],{58:[1,56]}),t(j,[2,45],{58:[1,57]}),t(A,[2,38]),t(A,[2,39]),t(A,[2,40]),t(A,[2,41]),t(A,[2,6]),t(A,[2,13]),{13:58,24:f,57:k},t(A,[2,17]),t(M,a,{7:59}),{24:[1,60]},{24:[1,61]},{23:[1,62]},{24:[2,48]},{24:[2,49]},t(A,[2,29]),t(A,[2,30]),{39:[1,63],40:[1,64]},{43:[1,65]},{43:[1,66]},{47:[1,67]},{50:[1,68]},{24:[1,69]},{24:[1,70]},t(A,[2,14],{14:[1,71]}),{4:o,5:s,8:8,9:10,10:12,11:13,12:14,13:15,16:c,17:l,19:u,21:[1,72],22:d,24:f,25:p,26:m,27:h,28:g,29:_,32:25,33:v,35:y,37:b,38:x,41:S,45:C,48:w,51:T,52:E,53:D,54:O,57:k},t(A,[2,20],{20:[1,73]}),{31:[1,74]},{24:[1,75]},{39:[1,76]},{39:[1,77]},t(A,[2,34]),t(A,[2,35]),t(A,[2,36]),t(A,[2,37]),t(j,[2,46]),t(j,[2,47]),t(A,[2,15]),t(A,[2,19]),t(M,a,{7:78}),t(A,[2,26]),t(A,[2,27]),{5:[1,79]},{5:[1,80]},{4:o,5:s,8:8,9:10,10:12,11:13,12:14,13:15,16:c,17:l,19:u,21:[1,81],22:d,24:f,25:p,26:m,27:h,28:g,29:_,32:25,33:v,35:y,37:b,38:x,41:S,45:C,48:w,51:T,52:E,53:D,54:O,57:k},t(A,[2,32]),t(A,[2,33]),t(A,[2,21])],defaultActions:{5:[2,1],6:[2,2],47:[2,48],48:[2,49]},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;this.parseError=typeof g.yy.parseError==`function`?g.yy.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,A,j;;){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 M=``;for(O in j=[],s[w])this.terminals_[O]&&O>f&&j.push(`'`+this.terminals_[O]+`'`);M=h.showPosition?`Parse error on line `+(l+1)+`:
2
2
  `+h.showPosition()+`
3
3
  Expecting `+j.join(`, `)+`, got '`+(this.terminals_[S]||S)+`'`:`Parse error on line `+(l+1)+`: Unexpected `+(S==p?`end of input`:`'`+(this.terminals_[S]||S)+`'`),this.parseError(M,{text:h.match,token:this.terminals_[S]||S,line:h.yylineno,loc:v,expected:j})}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._$),A=s[r[r.length-2]][r[r.length-1]],r.push(A);break;case 3:return!0}}return!0},`parse`)};N.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()+`
5
5
  `+t+`^`},`showPosition`),test_match:e(function(e,t){var n,r,i;if(this.options.backtrack_lexer&&(i={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges&&(i.yylloc.range=this.yylloc.range.slice(0))),r=e[0].match(/(?:\r\n?|\n).*/g),r&&(this.yylineno+=r.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:r?r[r.length-1].length-r[r.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+e[0].length},this.yytext+=e[0],this.match+=e[0],this.matches=e,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._backtrack=!1,this._input=this._input.slice(e[0].length),this.matched+=e[0],n=this.performAction.call(this,this.yy,this,t,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),n)return n;if(this._backtrack){for(var a in i)this[a]=i[a];return!1}return!1},`test_match`),next:e(function(){if(this.done)return this.EOF;this._input||(this.done=!0);var e,t,n,r;this._more||(this.yytext=``,this.match=``);for(var i=this._currentRules(),a=0;a<i.length;a++)if(n=this._input.match(this.rules[i[a]]),n&&(!t||n[0].length>t[0].length)){if(t=n,r=a,this.options.backtrack_lexer){if(e=this.test_match(n,i[a]),e!==!1)return e;if(this._backtrack){t=!1;continue}return!1}if(!this.options.flex)break}return t?(e=this.test_match(t,i[r]),e!==!1&&e):this._input===``?this.EOF:this.parseError(`Lexical error on line `+(this.yylineno+1)+`. Unrecognized text.
6
- `+this.showPosition(),{text:``,token:null,line:this.yylineno})},`next`),lex:e(function(){return this.next()||this.lex()},`lex`),begin:e(function(e){this.conditionStack.push(e)},`begin`),popState:e(function(){return this.conditionStack.length-1>0?this.conditionStack.pop():this.conditionStack[0]},`popState`),_currentRules:e(function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules},`_currentRules`),topState:e(function(e){return e=this.conditionStack.length-1-Math.abs(e||0),e>=0?this.conditionStack[e]:`INITIAL`},`topState`),pushState:e(function(e){this.begin(e)},`pushState`),stateStackSize:e(function(){return this.conditionStack.length},`stateStackSize`),options:{"case-insensitive":!0},performAction:e(function(t,n,r,i){function a(){let e=n.yytext.indexOf(`%%`);if(e===0)return!1;if(e>0){let r=n.yytext.slice(0,e),i=n.yytext.slice(e);i&&t.lexer.unput(i),n.yytext=r}return!0}switch(e(a,`processId`),r){case 0:return 38;case 1:return 40;case 2:return 39;case 3:return 44;case 4:return 51;case 5:return 52;case 6:return 53;case 7:return 54;case 8:return 5;case 9:break;case 10:break;case 11:break;case 12:break;case 13:return this.pushState(`SCALE`),17;case 14:return 18;case 15:this.popState();break;case 16:return this.begin(`acc_title`),33;case 17:return this.popState(),`acc_title_value`;case 18:return this.begin(`acc_descr`),35;case 19:return this.popState(),`acc_descr_value`;case 20:this.begin(`acc_descr_multiline`);break;case 21:this.popState();break;case 22:return`acc_descr_multiline_value`;case 23:return this.pushState(`CLASSDEF`),41;case 24:return this.popState(),this.pushState(`CLASSDEFID`),`DEFAULT_CLASSDEF_ID`;case 25:return this.popState(),this.pushState(`CLASSDEFID`),42;case 26:return this.popState(),43;case 27:return this.pushState(`CLASS`),48;case 28:return this.popState(),this.pushState(`CLASS_STYLE`),49;case 29:return this.popState(),50;case 30:return this.pushState(`STYLE`),45;case 31:return this.popState(),this.pushState(`STYLEDEF_STYLES`),46;case 32:return this.popState(),47;case 33:return this.pushState(`SCALE`),17;case 34:return 18;case 35:this.popState();break;case 36:this.pushState(`STATE`);break;case 37:return this.popState(),n.yytext=n.yytext.slice(0,-8).trim(),25;case 38:return this.popState(),n.yytext=n.yytext.slice(0,-8).trim(),26;case 39:return this.popState(),n.yytext=n.yytext.slice(0,-10).trim(),27;case 40:return this.popState(),n.yytext=n.yytext.slice(0,-8).trim(),25;case 41:return this.popState(),n.yytext=n.yytext.slice(0,-8).trim(),26;case 42:return this.popState(),n.yytext=n.yytext.slice(0,-10).trim(),27;case 43:return 51;case 44:return 52;case 45:return 53;case 46:return 54;case 47:this.pushState(`STATE_STRING`);break;case 48:return this.pushState(`STATE_ID`),`AS`;case 49:return a()?(this.popState(),`ID`):void 0;case 50:this.popState();break;case 51:return`STATE_DESCR`;case 52:throw Error(`Error: State name must be a single word. Found: "`+n.yytext.trim()+`"`);case 53:return 19;case 54:this.popState();break;case 55:return this.popState(),this.pushState(`struct`),20;case 56:return this.popState(),21;case 57:break;case 58:return this.begin(`NOTE`),29;case 59:return this.popState(),this.pushState(`NOTE_ID`),59;case 60:return this.popState(),this.pushState(`NOTE_ID`),60;case 61:this.popState(),this.pushState(`FLOATING_NOTE`);break;case 62:return this.popState(),this.pushState(`FLOATING_NOTE_ID`),`AS`;case 63:break;case 64:return`NOTE_TEXT`;case 65:return a()?(this.popState(),`ID`):void 0;case 66:return a()?(this.popState(),this.pushState(`NOTE_TEXT`),24):void 0;case 67:return this.popState(),n.yytext=n.yytext.substr(2).trim(),31;case 68:return this.popState(),n.yytext=n.yytext.slice(0,-8).trim(),31;case 69:return 6;case 70:return 6;case 71:return 16;case 72:return 57;case 73:return a()?24:void 0;case 74:return n.yytext=n.yytext.trim(),14;case 75:return 15;case 76:return 28;case 77:return 58;case 78:return 5;case 79:return`INVALID`}},`anonymous`),rules:[/^(?:click\b)/i,/^(?:href\b)/i,/^(?:"[^"]*")/i,/^(?:default\b)/i,/^(?:.*direction\s+TB[^\n]*)/i,/^(?:.*direction\s+BT[^\n]*)/i,/^(?:.*direction\s+RL[^\n]*)/i,/^(?:.*direction\s+LR[^\n]*)/i,/^(?:[\n]+)/i,/^(?:[\s]+)/i,/^(?:((?!\n)\s)+)/i,/^(?:#[^\n]*)/i,/^(?:%%(?!\{)[^\n]*)/i,/^(?:scale\s+)/i,/^(?:\d+)/i,/^(?:\s+width\b)/i,/^(?:accTitle\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*\{\s*)/i,/^(?:[\}])/i,/^(?:[^\}]*)/i,/^(?:classDef\s+)/i,/^(?:DEFAULT\s+)/i,/^(?:\w+\s+)/i,/^(?:[^\n]*)/i,/^(?:class\s+)/i,/^(?:(\w+)+((,\s*\w+)*))/i,/^(?:[^\n]*)/i,/^(?:style\s+)/i,/^(?:[\w,]+\s+)/i,/^(?:[^\n]*)/i,/^(?:scale\s+)/i,/^(?:\d+)/i,/^(?:\s+width\b)/i,/^(?:state\s+)/i,/^(?:.*<<fork>>)/i,/^(?:.*<<join>>)/i,/^(?:.*<<choice>>)/i,/^(?:.*\[\[fork\]\])/i,/^(?:.*\[\[join\]\])/i,/^(?:.*\[\[choice\]\])/i,/^(?:.*direction\s+TB[^\n]*)/i,/^(?:.*direction\s+BT[^\n]*)/i,/^(?:.*direction\s+RL[^\n]*)/i,/^(?:.*direction\s+LR[^\n]*)/i,/^(?:["])/i,/^(?:\s*as\s+)/i,/^(?:[^\n\{]*)/i,/^(?:["])/i,/^(?:[^"]*)/i,/^(?:\w+\s+\w+.*?\{)/i,/^(?:[^\n\s\{]+)/i,/^(?:\n)/i,/^(?:\{)/i,/^(?:\})/i,/^(?:[\n])/i,/^(?:note\s+)/i,/^(?:left of\b)/i,/^(?:right of\b)/i,/^(?:")/i,/^(?:\s*as\s*)/i,/^(?:["])/i,/^(?:[^"]*)/i,/^(?:[^\n]*)/i,/^(?:\s*[^:\n\s\-]+)/i,/^(?:\s*:[^:\n;]+)/i,/^(?:[\s\S]*?\n\s*end note\b)/i,/^(?:stateDiagram\s+)/i,/^(?:stateDiagram-v2\s+)/i,/^(?:hide empty description\b)/i,/^(?:\[\*\])/i,/^(?:[^:\n\s\-\{]+)/i,/^(?:\s*:(?:[^:\n;]|:[^:\n;])+)/i,/^(?:-->)/i,/^(?:--)/i,/^(?::::)/i,/^(?:$)/i,/^(?:.)/i],conditions:{LINE:{rules:[10,11,12],inclusive:!1},struct:{rules:[10,11,12,23,27,30,36,43,44,45,46,56,57,58,72,73,74,75,76,77],inclusive:!1},FLOATING_NOTE_ID:{rules:[65],inclusive:!1},FLOATING_NOTE:{rules:[62,63,64],inclusive:!1},NOTE_TEXT:{rules:[67,68],inclusive:!1},NOTE_ID:{rules:[66],inclusive:!1},NOTE:{rules:[59,60,61],inclusive:!1},STYLEDEF_STYLEOPTS:{rules:[],inclusive:!1},STYLEDEF_STYLES:{rules:[32],inclusive:!1},STYLE_IDS:{rules:[],inclusive:!1},STYLE:{rules:[31],inclusive:!1},CLASS_STYLE:{rules:[29],inclusive:!1},CLASS:{rules:[28],inclusive:!1},CLASSDEFID:{rules:[26],inclusive:!1},CLASSDEF:{rules:[24,25],inclusive:!1},acc_descr_multiline:{rules:[21,22],inclusive:!1},acc_descr:{rules:[19],inclusive:!1},acc_title:{rules:[17],inclusive:!1},SCALE:{rules:[14,15,34,35],inclusive:!1},ALIAS:{rules:[],inclusive:!1},STATE_ID:{rules:[49],inclusive:!1},STATE_STRING:{rules:[50,51],inclusive:!1},FORK_STATE:{rules:[],inclusive:!1},STATE:{rules:[10,11,12,37,38,39,40,41,42,47,48,52,53,54,55],inclusive:!1},ID:{rules:[10,11,12],inclusive:!1},INITIAL:{rules:[0,1,2,3,4,5,6,7,8,9,11,12,13,16,18,20,23,27,30,33,36,55,58,69,70,71,72,73,74,75,77,78,79],inclusive:!0}}}})();function P(){this.yy={}}return e(P,`Parser`),P.prototype=N,N.Parser=P,new P})();w.parser=w;var T=w,E=`TB`,D=`TB`,O=`dir`,k=`state`,A=`root`,j=`relation`,M=`classDef`,N=`style`,P=`applyClass`,F=`default`,ee=`divider`,te=`fill:none`,ne=`fill: #333`,re=`c`,ie=`markdown`,ae=`normal`,I=`rect`,L=`rectWithTitle`,oe=`stateStart`,se=`stateEnd`,R=`divider`,ce=`roundedWithTitle`,le=`note`,ue=`noteGroup`,z=`statediagram`,de=`${z}-state`,B=`transition`,fe=`note`,pe=`${B} note-edge`,me=`${z}-${fe}`,he=`${z}-cluster`,ge=`${z}-cluster-alt`,V=`parent`,H=`note`,_e=`state`,U=`----`,ve=`${U}${H}`,ye=`${U}${V}`,W=new Map,G=0,be=0,K=new Map,xe=e((e,t,n,r)=>{if(e===R&&n?.id!==void 0&&K.has(n.id)){let e=K.get(n.id);return K.set(t,e),e}let i=be++,a=r?void 0:i;return K.set(t,a),a},`colorSlotFor`);function q(e=``,t=0,n=``,r=U){return`${_e}-${e}${n!==null&&n.length>0?`${r}${n}`:``}-${t}`}e(q,`stateDomId`);var Se=e((e,n,r,i,a,o,c,l)=>{t.trace(`items`,n),n.forEach(t=>{switch(t.stmt){case k:X(e,t,r,i,a,o,c,l);break;case F:X(e,t,r,i,a,o,c,l);break;case j:{X(e,t.state1,r,i,a,o,c,l),X(e,t.state2,r,i,a,o,c,l);let n=c===`neo`,d={id:`edge`+G,start:t.state1.id,end:t.state2.id,arrowhead:`normal`,arrowTypeEnd:n?`arrow_barb_neo`:`arrow_barb`,style:te,labelStyle:``,label:s.sanitizeText(t.description??``,u()),arrowheadStyle:ne,labelpos:re,labelType:ie,thickness:ae,classes:B,look:c};a.push(d),G++}}})},`setupDoc`),Ce=e((e,t=D)=>{let n=t;if(e.doc)for(let t of e.doc)t.stmt===`dir`&&(n=t.value);return n},`getDir`);function J(e,t,n){if(!t.id||t.id===`</join></fork>`||t.id===`</choice>`)return;t.cssClasses&&(Array.isArray(t.cssCompiledStyles)||(t.cssCompiledStyles=[]),t.cssClasses.split(` `).forEach(e=>{let r=n.get(e);r&&(t.cssCompiledStyles=[...t.cssCompiledStyles??[],...r.styles])}));let r=e.find(e=>e.id===t.id);r?Object.assign(r,t):e.push(t)}e(J,`insertOrUpdateNode`);function we(e){return e?.classes?.join(` `)??``}e(we,`getClassesFromDbInfo`);function Y(e){return e?.styles??[]}e(Y,`getStylesFromDbInfo`);var X=e((e,n,r,i,a,o,c,l)=>{let d=n.id,f=r.get(d),p=we(f),m=Y(f),h=u(),g=p.trim()!==``||m.length>0;if(t.info(`dataFetcher parsedItem`,n,f,m),d!==`root`){let r=I;n.start===!0?r=oe:n.start===!1&&(r=se),n.type!==F&&(r=n.type),W.get(d)||W.set(d,{id:d,shape:r,description:s.sanitizeText(d,h),cssClasses:`${p} ${de}`,cssStyles:m});let u=W.get(d);n.description&&(Array.isArray(u.description)?(u.shape=L,u.description.push(n.description)):u.description?.length&&u.description.length>0?(u.shape=L,u.description=u.description===d?[n.description]:[u.description,n.description]):(u.shape=I,u.description=n.description),u.description=s.sanitizeTextOrArray(u.description,h)),u.description?.length===1&&u.shape===L&&(u.shape=u.type===`group`?ce:I),!u.type&&n.doc&&(t.info(`Setting cluster for XCX`,d,Ce(n)),u.type=`group`,u.isGroup=!0,u.dir=Ce(n),u.shape=n.type===ee?R:ce,u.colorIndex=xe(u.shape,d,e,g),u.cssClasses=`${u.cssClasses} ${he} ${o?ge:``}`);let f={labelStyle:``,shape:u.shape,label:u.description,cssClasses:u.cssClasses,cssCompiledStyles:[],cssStyles:u.cssStyles,id:d,dir:u.dir,domId:q(d,G),type:u.type,isGroup:u.type===`group`,colorIndex:u.colorIndex,padding:8,rx:10,ry:10,look:c,labelType:`markdown`};if(f.shape===R&&(f.label=``),e&&e.id!==`root`&&(t.trace(`Setting node `,d,` to be child of its parent `,e.id),f.parentId=e.id),f.centerLabel=!0,n.note){let e={labelStyle:``,shape:le,label:n.note.text,labelType:`markdown`,cssClasses:me,cssStyles:[],cssCompiledStyles:[],id:d+ve+`-`+G,domId:q(d,G,H),type:`node`,isGroup:!1,padding:h.flowchart?.padding,look:c,position:n.note.position},t=d+ye,r={labelStyle:``,shape:ue,label:n.note.text,cssClasses:u.cssClasses,cssStyles:[],id:d+ye,domId:q(d,G,V),type:`group`,isGroup:!0,padding:16,look:c,position:n.note.position};G++,r.id=t,e.parentId=t,J(i,r,l),J(i,e,l),J(i,f,l);let o=d,s=e.id;n.note.position===`left of`&&(o=e.id,s=d),a.push({id:o+`-`+s,start:o,end:s,arrowhead:`none`,arrowTypeEnd:``,style:te,labelStyle:``,classes:pe,pattern:`dashed`,arrowheadStyle:ne,labelpos:re,labelType:ie,thickness:ae,look:c})}else J(i,f,l)}n.doc&&(t.trace(`Adding nodes children `),Se(n,n.doc,r,i,a,!o,c,l))},`dataFetcher`),Te=e(()=>{W.clear(),G=0,be=0,K.clear()},`reset`),Ee=e((e,t=D)=>{if(!e.doc)return t;let n=t;for(let t of e.doc)t.stmt===`dir`&&(n=t.value);return n},`getDir`),De={getClasses:e(function(e,t){return t.db.getClasses()},`getClasses`),draw:e(async function(e,n,r,i){t.info(`REF0:`),t.info(`Drawing state diagram (v2)`,n);let{securityLevel:a,state:o,layout:s}=u();i.db.extract(i.db.getRootDocV2());let c=i.db.getData(),l=b(n,a);c.type=i.type,c.layoutAlgorithm=C(s),c.nodeSpacing=o?.nodeSpacing||50,c.rankSpacing=o?.rankSpacing||50,c.markers=u().look===`neo`?[`barbNeo`]:[`barb`],c.diagramId=n,await S(c,l);try{(typeof i.db.getLinks==`function`?i.db.getLinks():new Map).forEach((e,n)=>{let r=typeof n==`string`?n:typeof n?.id==`string`?n.id:``,i=c.nodes.find(e=>e.id===r);if(!r){t.warn(`⚠️ Invalid or missing stateId from key:`,JSON.stringify(n));return}let a=l.node()?.querySelectorAll(`g.node, g.rough-node`),o;if(a?.forEach(e=>{let t=e.textContent?.trim();(e.id===i?.domId||t===r)&&(o=e)}),!o){t.warn(`⚠️ Could not find node matching text:`,r);return}let s=o.parentNode;if(!s){t.warn(`⚠️ Node has no parent, cannot wrap:`,r);return}let u=document.createElementNS(`http://www.w3.org/2000/svg`,`a`),d=e.url.replace(/^"+|"+$/g,``);if(u.setAttributeNS(`http://www.w3.org/1999/xlink`,`xlink:href`,d),u.setAttribute(`target`,`_blank`),e.tooltip){let t=e.tooltip.replace(/^"+|"+$/g,``);u.setAttribute(`title`,t),o.setAttribute(`title`,t)}s.replaceChild(u,o),u.appendChild(o),t.info(`🔗 Wrapped node in <a> tag for:`,r,e.url)})}catch(e){t.error(`❌ Error injecting clickable links:`,e)}p.insertTitle(l,`statediagramTitleText`,o?.titleTopMargin??25,i.db.getDiagramTitle()),x(l,8,z,o?.useMaxWidth??!0)},`draw`),getDir:Ee},Z={START_NODE:`[*]`,START_TYPE:`start`,END_NODE:`[*]`,END_TYPE:`end`,COLOR_KEYWORD:`color`,FILL_KEYWORD:`fill`,BG_FILL:`bgFill`,STYLECLASS_SEP:`,`},Oe=e(()=>new Map,`newClassesList`),Q=e(()=>({relations:[],states:new Map,documents:{}}),`newDoc`),$=e(e=>JSON.parse(JSON.stringify(e)),`clone`),ke=class{constructor(e){this.version=e,this.nodes=[],this.edges=[],this.rootDoc=[],this.classes=Oe(),this.documents={root:Q()},this.currentDocument=this.documents.root,this.startEndCount=0,this.dividerCnt=0,this.links=new Map,this.funs=[],this.getAccTitle=d,this.setAccTitle=i,this.getAccDescription=c,this.setAccDescription=r,this.setDiagramTitle=o,this.getDiagramTitle=l,this.clear(),this.setRootDoc=this.setRootDoc.bind(this),this.getDividerId=this.getDividerId.bind(this),this.setDirection=this.setDirection.bind(this),this.trimColon=this.trimColon.bind(this),this.bindFunctions=this.bindFunctions.bind(this)}static{e(this,`StateDB`)}static{this.relationType={AGGREGATION:0,EXTENSION:1,COMPOSITION:2,DEPENDENCY:3}}extract(e){this.clear(!0);for(let t of Array.isArray(e)?e:e.doc)switch(t.stmt){case k:this.addState(t.id.trim(),t.type,t.doc,t.description,t.note);break;case j:this.addRelation(t.state1,t.state2,t.description);break;case M:this.addStyleClass(t.id.trim(),t.classes);break;case N:this.handleStyleDef(t);break;case P:this.setCssClass(t.id.trim(),t.styleClass);break;case`click`:this.addLink(t.id,t.url,t.tooltip)}let t=this.getStates(),n=u();Te(),X(void 0,this.getRootDocV2(),t,this.nodes,this.edges,!0,n.look,this.classes);for(let e of this.nodes)if(Array.isArray(e.label)){if(e.description=e.label.slice(1),e.isGroup&&e.description.length>0)throw Error(`Group nodes can only have label. Remove the additional description for node [${e.id}]`);e.label=e.label[0]}}handleStyleDef(e){let t=e.id.trim().split(`,`),n=e.styleClass.split(`,`);for(let e of t){let t=this.getState(e);if(!t){let n=e.trim();this.addState(n),t=this.getState(n)}t&&(t.styles=n.map(e=>e.replace(/;/g,``)?.trim()))}}setRootDoc(e){t.info(`Setting root doc`,e),this.rootDoc=e,this.version===1?this.extract(e):this.extract(this.getRootDocV2())}docTranslator(e,t,n){if(t.stmt===j){this.docTranslator(e,t.state1,!0),this.docTranslator(e,t.state2,!1);return}if(t.stmt===k&&(t.id===Z.START_NODE?(t.id=e.id+(n?`_start`:`_end`),t.start=n):t.id=t.id.trim()),t.stmt!==A&&t.stmt!==k||!t.doc)return;let r=[],i=[];for(let e of t.doc)if(e.type===ee){let t=$(e);t.doc=$(i),r.push(t),i=[]}else i.push(e);if(r.length>0&&i.length>0){let e={stmt:k,id:m(),type:`divider`,doc:$(i)};r.push($(e)),t.doc=r}t.doc.forEach(e=>this.docTranslator(t,e,!0))}getRootDocV2(){return this.docTranslator({id:A,stmt:A},{id:A,stmt:A,doc:this.rootDoc},!0),{id:A,doc:this.rootDoc}}addState(e,n=F,r=void 0,i=void 0,a=void 0,o=void 0,c=void 0,l=void 0){let d=e?.trim();if(!this.currentDocument.states.has(d))t.info(`Adding state `,d,i),this.currentDocument.states.set(d,{stmt:k,id:d,descriptions:[],type:n,doc:r,note:a,classes:[],styles:[],textStyles:[]});else{let e=this.currentDocument.states.get(d);if(!e)throw Error(`State not found: ${d}`);e.doc||=r,e.type||=n}if(i&&(t.info(`Setting state description`,d,i),(Array.isArray(i)?i:[i]).forEach(e=>this.addDescription(d,e.trim()))),a){let e=this.currentDocument.states.get(d);if(!e)throw Error(`State not found: ${d}`);e.note=a,e.note.text=s.sanitizeText(e.note.text,u())}o&&(t.info(`Setting state classes`,d,o),(Array.isArray(o)?o:[o]).forEach(e=>this.setCssClass(d,e.trim()))),c&&(t.info(`Setting state styles`,d,c),(Array.isArray(c)?c:[c]).forEach(e=>this.setStyle(d,e.trim()))),l&&(t.info(`Setting state styles`,d,c),(Array.isArray(l)?l:[l]).forEach(e=>this.setTextStyle(d,e.trim())))}clear(e){this.nodes=[],this.edges=[],this.funs=[this.setupToolTips.bind(this)],this.documents={root:Q()},this.currentDocument=this.documents.root,this.startEndCount=0,this.classes=Oe(),e||(this.links=new Map,a())}getState(e){return this.currentDocument.states.get(e)}getStates(){return this.currentDocument.states}logDocuments(){t.info(`Documents = `,this.documents)}getRelations(){return this.currentDocument.relations}addLink(e,n,r){this.links.set(e,{url:n,tooltip:r}),t.warn(`Adding link`,e,n,r)}getLinks(){return this.links}startIdIfNeeded(e=``){return e===Z.START_NODE?(this.startEndCount++,`${Z.START_TYPE}${this.startEndCount}`):e}startTypeIfNeeded(e=``,t=F){return e===Z.START_NODE?Z.START_TYPE:t}endIdIfNeeded(e=``){return e===Z.END_NODE?(this.startEndCount++,`${Z.END_TYPE}${this.startEndCount}`):e}endTypeIfNeeded(e=``,t=F){return e===Z.END_NODE?Z.END_TYPE:t}addRelationObjs(e,t,n=``){let r=this.startIdIfNeeded(e.id.trim()),i=this.startTypeIfNeeded(e.id.trim(),e.type),a=this.startIdIfNeeded(t.id.trim()),o=this.startTypeIfNeeded(t.id.trim(),t.type);this.addState(r,i,e.doc,e.description,e.note,e.classes,e.styles,e.textStyles),this.addState(a,o,t.doc,t.description,t.note,t.classes,t.styles,t.textStyles),this.currentDocument.relations.push({id1:r,id2:a,relationTitle:s.sanitizeText(n,u())})}addRelation(e,t,n){if(typeof e==`object`&&typeof t==`object`)this.addRelationObjs(e,t,n);else if(typeof e==`string`&&typeof t==`string`){let r=this.startIdIfNeeded(e.trim()),i=this.startTypeIfNeeded(e),a=this.endIdIfNeeded(t.trim()),o=this.endTypeIfNeeded(t);this.addState(r,i),this.addState(a,o),this.currentDocument.relations.push({id1:r,id2:a,relationTitle:n?s.sanitizeText(n,u()):void 0})}}addDescription(e,t){let n=this.currentDocument.states.get(e),r=t.startsWith(`:`)?t.replace(`:`,``).trim():t;n?.descriptions?.push(s.sanitizeText(r,u()))}cleanupLabel(e){return e.startsWith(`:`)?e.slice(2).trim():e.trim()}getDividerId(){return this.dividerCnt++,`divider-id-${this.dividerCnt}`}addStyleClass(e,t=``){this.classes.has(e)||this.classes.set(e,{id:e,styles:[],textStyles:[]});let n=this.classes.get(e);t&&n&&t.split(Z.STYLECLASS_SEP).forEach(e=>{let t=e.replace(/([^;]*);/,`$1`).trim();if(RegExp(Z.COLOR_KEYWORD).exec(e)){let e=t.replace(Z.FILL_KEYWORD,Z.BG_FILL).replace(Z.COLOR_KEYWORD,Z.FILL_KEYWORD);n.textStyles.push(e)}n.styles.push(t)})}getClasses(){return this.classes}setupToolTips(e){let t=y();n(e).select(`svg`).selectAll(`g.node, g.rough-node`).on(`mouseover`,e=>{let r=n(e.currentTarget),i=r.attr(`title`);if(i===null)return;let a=e.currentTarget?.getBoundingClientRect();t.transition().duration(200).style(`opacity`,`.9`),t.style(`left`,window.scrollX+a.left+(a.right-a.left)/2+`px`).style(`top`,window.scrollY+a.bottom+`px`),t.html(f.sanitize(i)),r.classed(`hover`,!0)}).on(`mouseout`,e=>{t.transition().duration(500).style(`opacity`,0),n(e.currentTarget).classed(`hover`,!1)})}setCssClass(e,t){e.split(`,`).forEach(e=>{let n=this.getState(e);if(!n){let t=e.trim();this.addState(t),n=this.getState(t)}n?.classes?.push(t)})}setStyle(e,t){this.getState(e)?.styles?.push(t)}setTextStyle(e,t){this.getState(e)?.textStyles?.push(t)}bindFunctions(e){this.funs.forEach(t=>{t(e)})}getDirectionStatement(){return this.rootDoc.find(e=>e.stmt===O)}getDirection(){return this.getDirectionStatement()?.value??E}setDirection(e){let t=this.getDirectionStatement();t?t.value=e:this.rootDoc.unshift({stmt:O,value:e})}trimColon(e){return e.startsWith(`:`)?e.slice(1).trim():e.trim()}getData(){let e=u();for(let t of this.nodes)t.wrappingWidth??=e.state?.wrappingWidth,t.isGroup||(t.minWidth??=e.state?.minNodeWidth);return{nodes:this.nodes,edges:this.edges,other:{},config:e,direction:Ee(this.getRootDocV2())}}getConfig(){return u().state}},Ae=e(e=>{let{theme:t,bkgColorArray:n,borderColorArray:r}=e;if(!g(t,r))return``;let i=_(e.look),a=v(n),o=``;for(let e=0;e<h(r);e++){let t=r[e],s=a?`fill: ${n[e%n.length]};`:``,c=`[data-look="${i}"][data-color-id="color-${e}"]`;o+=`
6
+ `+this.showPosition(),{text:``,token:null,line:this.yylineno})},`next`),lex:e(function(){return this.next()||this.lex()},`lex`),begin:e(function(e){this.conditionStack.push(e)},`begin`),popState:e(function(){return this.conditionStack.length-1>0?this.conditionStack.pop():this.conditionStack[0]},`popState`),_currentRules:e(function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules},`_currentRules`),topState:e(function(e){return e=this.conditionStack.length-1-Math.abs(e||0),e>=0?this.conditionStack[e]:`INITIAL`},`topState`),pushState:e(function(e){this.begin(e)},`pushState`),stateStackSize:e(function(){return this.conditionStack.length},`stateStackSize`),options:{"case-insensitive":!0},performAction:e(function(t,n,r,i){function a(){let e=n.yytext.indexOf(`%%`);if(e===0)return!1;if(e>0){let r=n.yytext.slice(0,e),i=n.yytext.slice(e);i&&t.lexer.unput(i),n.yytext=r}return!0}switch(e(a,`processId`),r){case 0:return 38;case 1:return 40;case 2:return 39;case 3:return 44;case 4:return 51;case 5:return 52;case 6:return 53;case 7:return 54;case 8:return 5;case 9:break;case 10:break;case 11:break;case 12:break;case 13:return this.pushState(`SCALE`),17;case 14:return 18;case 15:this.popState();break;case 16:return this.begin(`acc_title`),33;case 17:return this.popState(),`acc_title_value`;case 18:return this.begin(`acc_descr`),35;case 19:return this.popState(),`acc_descr_value`;case 20:this.begin(`acc_descr_multiline`);break;case 21:this.popState();break;case 22:return`acc_descr_multiline_value`;case 23:return this.pushState(`CLASSDEF`),41;case 24:return this.popState(),this.pushState(`CLASSDEFID`),`DEFAULT_CLASSDEF_ID`;case 25:return this.popState(),this.pushState(`CLASSDEFID`),42;case 26:return this.popState(),43;case 27:return this.pushState(`CLASS`),48;case 28:return this.popState(),this.pushState(`CLASS_STYLE`),49;case 29:return this.popState(),50;case 30:return this.pushState(`STYLE`),45;case 31:return this.popState(),this.pushState(`STYLEDEF_STYLES`),46;case 32:return this.popState(),47;case 33:return this.pushState(`SCALE`),17;case 34:return 18;case 35:this.popState();break;case 36:this.pushState(`STATE`);break;case 37:return this.popState(),n.yytext=n.yytext.slice(0,-8).trim(),25;case 38:return this.popState(),n.yytext=n.yytext.slice(0,-8).trim(),26;case 39:return this.popState(),n.yytext=n.yytext.slice(0,-10).trim(),27;case 40:return this.popState(),n.yytext=n.yytext.slice(0,-8).trim(),25;case 41:return this.popState(),n.yytext=n.yytext.slice(0,-8).trim(),26;case 42:return this.popState(),n.yytext=n.yytext.slice(0,-10).trim(),27;case 43:return 51;case 44:return 52;case 45:return 53;case 46:return 54;case 47:this.pushState(`STATE_STRING`);break;case 48:return this.pushState(`STATE_ID`),`AS`;case 49:return a()?(this.popState(),`ID`):void 0;case 50:this.popState();break;case 51:return`STATE_DESCR`;case 52:throw Error(`Error: State name must be a single word. Found: "`+n.yytext.trim()+`"`);case 53:return 19;case 54:this.popState();break;case 55:return this.popState(),this.pushState(`struct`),20;case 56:return this.popState(),21;case 57:break;case 58:return this.begin(`NOTE`),29;case 59:return this.popState(),this.pushState(`NOTE_ID`),59;case 60:return this.popState(),this.pushState(`NOTE_ID`),60;case 61:this.popState(),this.pushState(`FLOATING_NOTE`);break;case 62:return this.popState(),this.pushState(`FLOATING_NOTE_ID`),`AS`;case 63:break;case 64:return`NOTE_TEXT`;case 65:return a()?(this.popState(),`ID`):void 0;case 66:return a()?(this.popState(),this.pushState(`NOTE_TEXT`),24):void 0;case 67:return this.popState(),n.yytext=n.yytext.substr(2).trim(),31;case 68:return this.popState(),n.yytext=n.yytext.slice(0,-8).trim(),31;case 69:return 6;case 70:return 6;case 71:return 16;case 72:return 57;case 73:return a()?24:void 0;case 74:return n.yytext=n.yytext.trim(),14;case 75:return 15;case 76:return 28;case 77:return 58;case 78:return 5;case 79:return`INVALID`}},`anonymous`),rules:[/^(?:click\b)/i,/^(?:href\b)/i,/^(?:"[^"]*")/i,/^(?:default\b)/i,/^(?:.*direction\s+TB[^\n]*)/i,/^(?:.*direction\s+BT[^\n]*)/i,/^(?:.*direction\s+RL[^\n]*)/i,/^(?:.*direction\s+LR[^\n]*)/i,/^(?:[\n]+)/i,/^(?:[\s]+)/i,/^(?:((?!\n)\s)+)/i,/^(?:#[^\n]*)/i,/^(?:%%(?!\{)[^\n]*)/i,/^(?:scale\s+)/i,/^(?:\d+)/i,/^(?:\s+width\b)/i,/^(?:accTitle\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*\{\s*)/i,/^(?:[\}])/i,/^(?:[^\}]*)/i,/^(?:classDef\s+)/i,/^(?:DEFAULT\s+)/i,/^(?:\w+\s+)/i,/^(?:[^\n]*)/i,/^(?:class\s+)/i,/^(?:(\w+)+((,\s*\w+)*))/i,/^(?:[^\n]*)/i,/^(?:style\s+)/i,/^(?:[\w,]+\s+)/i,/^(?:[^\n]*)/i,/^(?:scale\s+)/i,/^(?:\d+)/i,/^(?:\s+width\b)/i,/^(?:state\s+)/i,/^(?:.*<<fork>>)/i,/^(?:.*<<join>>)/i,/^(?:.*<<choice>>)/i,/^(?:.*\[\[fork\]\])/i,/^(?:.*\[\[join\]\])/i,/^(?:.*\[\[choice\]\])/i,/^(?:.*direction\s+TB[^\n]*)/i,/^(?:.*direction\s+BT[^\n]*)/i,/^(?:.*direction\s+RL[^\n]*)/i,/^(?:.*direction\s+LR[^\n]*)/i,/^(?:["])/i,/^(?:\s*as\s+)/i,/^(?:[^\n\{]*)/i,/^(?:["])/i,/^(?:[^"]*)/i,/^(?:\w+\s+\w+.*?\{)/i,/^(?:[^\n\s\{]+)/i,/^(?:\n)/i,/^(?:\{)/i,/^(?:\})/i,/^(?:[\n])/i,/^(?:note\s+)/i,/^(?:left of\b)/i,/^(?:right of\b)/i,/^(?:")/i,/^(?:\s*as\s*)/i,/^(?:["])/i,/^(?:[^"]*)/i,/^(?:[^\n]*)/i,/^(?:\s*[^:\n\s\-]+)/i,/^(?:\s*:[^:\n;]+)/i,/^(?:[\s\S]*?\n\s*end note\b)/i,/^(?:stateDiagram\s+)/i,/^(?:stateDiagram-v2\s+)/i,/^(?:hide empty description\b)/i,/^(?:\[\*\])/i,/^(?:[^:\n\s\-\{]+)/i,/^(?:\s*:(?:[^:\n;]|:[^:\n;])+)/i,/^(?:-->)/i,/^(?:--)/i,/^(?::::)/i,/^(?:$)/i,/^(?:.)/i],conditions:{LINE:{rules:[10,11,12],inclusive:!1},struct:{rules:[10,11,12,23,27,30,36,43,44,45,46,56,57,58,72,73,74,75,76,77],inclusive:!1},FLOATING_NOTE_ID:{rules:[65],inclusive:!1},FLOATING_NOTE:{rules:[62,63,64],inclusive:!1},NOTE_TEXT:{rules:[67,68],inclusive:!1},NOTE_ID:{rules:[66],inclusive:!1},NOTE:{rules:[59,60,61],inclusive:!1},STYLEDEF_STYLEOPTS:{rules:[],inclusive:!1},STYLEDEF_STYLES:{rules:[32],inclusive:!1},STYLE_IDS:{rules:[],inclusive:!1},STYLE:{rules:[31],inclusive:!1},CLASS_STYLE:{rules:[29],inclusive:!1},CLASS:{rules:[28],inclusive:!1},CLASSDEFID:{rules:[26],inclusive:!1},CLASSDEF:{rules:[24,25],inclusive:!1},acc_descr_multiline:{rules:[21,22],inclusive:!1},acc_descr:{rules:[19],inclusive:!1},acc_title:{rules:[17],inclusive:!1},SCALE:{rules:[14,15,34,35],inclusive:!1},ALIAS:{rules:[],inclusive:!1},STATE_ID:{rules:[49],inclusive:!1},STATE_STRING:{rules:[50,51],inclusive:!1},FORK_STATE:{rules:[],inclusive:!1},STATE:{rules:[10,11,12,37,38,39,40,41,42,47,48,52,53,54,55],inclusive:!1},ID:{rules:[10,11,12],inclusive:!1},INITIAL:{rules:[0,1,2,3,4,5,6,7,8,9,11,12,13,16,18,20,23,27,30,33,36,55,58,69,70,71,72,73,74,75,77,78,79],inclusive:!0}}}})();function P(){this.yy={}}return e(P,`Parser`),P.prototype=N,N.Parser=P,new P})();w.parser=w;var T=w,E=`TB`,D=`TB`,O=`dir`,k=`state`,A=`root`,j=`relation`,M=`classDef`,N=`style`,P=`applyClass`,F=`default`,ee=`divider`,te=`fill:none`,ne=`fill: #333`,re=`c`,ie=`markdown`,ae=`normal`,I=`rect`,L=`rectWithTitle`,oe=`stateStart`,se=`stateEnd`,R=`divider`,ce=`roundedWithTitle`,le=`note`,ue=`noteGroup`,z=`statediagram`,de=`${z}-state`,B=`transition`,fe=`note`,pe=`${B} note-edge`,me=`${z}-${fe}`,he=`${z}-cluster`,ge=`${z}-cluster-alt`,V=`parent`,H=`note`,_e=`state`,U=`----`,ve=`${U}${H}`,ye=`${U}${V}`,W=new Map,G=0,be=0,K=new Map,xe=e((e,t,n,r)=>{if(e===R&&n?.id!==void 0&&K.has(n.id)){let e=K.get(n.id);return K.set(t,e),e}let i=be++,a=r?void 0:i;return K.set(t,a),a},`colorSlotFor`);function q(e=``,t=0,n=``,r=U){return`${_e}-${e}${n!==null&&n.length>0?`${r}${n}`:``}-${t}`}e(q,`stateDomId`);var Se=e((e,n,r,i,a,o,c,l)=>{t.trace(`items`,n),n.forEach(t=>{switch(t.stmt){case k:X(e,t,r,i,a,o,c,l);break;case F:X(e,t,r,i,a,o,c,l);break;case j:{X(e,t.state1,r,i,a,o,c,l),X(e,t.state2,r,i,a,o,c,l);let n=c===`neo`,d={id:`edge`+G,start:t.state1.id,end:t.state2.id,arrowhead:`normal`,arrowTypeEnd:n?`arrow_barb_neo`:`arrow_barb`,style:te,labelStyle:``,label:s.sanitizeText(t.description??``,u()),arrowheadStyle:ne,labelpos:re,labelType:ie,thickness:ae,classes:B,look:c};a.push(d),G++}}})},`setupDoc`),Ce=e((e,t=D)=>{let n=t;if(e.doc)for(let t of e.doc)t.stmt===`dir`&&(n=t.value);return n},`getDir`);function J(e,t,n){if(!t.id||t.id===`</join></fork>`||t.id===`</choice>`)return;t.cssClasses&&(Array.isArray(t.cssCompiledStyles)||(t.cssCompiledStyles=[]),t.cssClasses.split(` `).forEach(e=>{let r=n.get(e);r&&(t.cssCompiledStyles=[...t.cssCompiledStyles??[],...r.styles])}));let r=e.find(e=>e.id===t.id);r?Object.assign(r,t):e.push(t)}e(J,`insertOrUpdateNode`);function we(e){return e?.classes?.join(` `)??``}e(we,`getClassesFromDbInfo`);function Y(e){return e?.styles??[]}e(Y,`getStylesFromDbInfo`);var X=e((e,n,r,i,a,o,c,l)=>{let d=n.id,f=r.get(d),p=we(f),m=Y(f),h=u(),g=p.trim()!==``||m.length>0;if(t.info(`dataFetcher parsedItem`,n,f,m),d!==`root`){let r=I;n.start===!0?r=oe:n.start===!1&&(r=se),n.type!==F&&(r=n.type),W.get(d)||W.set(d,{id:d,shape:r,description:s.sanitizeText(d,h),cssClasses:`${p} ${de}`,cssStyles:m});let u=W.get(d);n.description&&(Array.isArray(u.description)?(u.shape=L,u.description.push(n.description)):u.description?.length&&u.description.length>0?(u.shape=L,u.description=u.description===d?[n.description]:[u.description,n.description]):(u.shape=I,u.description=n.description),u.description=s.sanitizeTextOrArray(u.description,h)),u.description?.length===1&&u.shape===L&&(u.shape=u.type===`group`?ce:I),!u.type&&n.doc&&(t.info(`Setting cluster for XCX`,d,Ce(n)),u.type=`group`,u.isGroup=!0,u.dir=Ce(n),u.shape=n.type===ee?R:ce,u.colorIndex=xe(u.shape,d,e,g),u.cssClasses=`${u.cssClasses} ${he} ${o?ge:``}`);let f={labelStyle:``,shape:u.shape,label:u.description,cssClasses:u.cssClasses,cssCompiledStyles:[],cssStyles:u.cssStyles,id:d,dir:u.dir,domId:q(d,G),type:u.type,isGroup:u.type===`group`,colorIndex:u.colorIndex,padding:8,rx:10,ry:10,look:c,labelType:`markdown`};if(f.shape===R&&(f.label=``),e&&e.id!==`root`&&(t.trace(`Setting node `,d,` to be child of its parent `,e.id),f.parentId=e.id),f.centerLabel=!0,n.note){let e={labelStyle:``,shape:le,label:n.note.text,labelType:`markdown`,cssClasses:me,cssStyles:[],cssCompiledStyles:[],id:d+ve+`-`+G,domId:q(d,G,H),type:`node`,isGroup:!1,padding:h.flowchart?.padding,look:c,position:n.note.position},t=d+ye,r={labelStyle:``,shape:ue,label:n.note.text,cssClasses:u.cssClasses,cssStyles:[],id:d+ye,domId:q(d,G,V),type:`group`,isGroup:!0,padding:16,look:c,position:n.note.position};G++,r.id=t,e.parentId=t,J(i,r,l),J(i,e,l),J(i,f,l);let o=d,s=e.id;n.note.position===`left of`&&(o=e.id,s=d),a.push({id:o+`-`+s,start:o,end:s,arrowhead:`none`,arrowTypeEnd:``,style:te,labelStyle:``,classes:pe,pattern:`dashed`,arrowheadStyle:ne,labelpos:re,labelType:ie,thickness:ae,look:c})}else J(i,f,l)}n.doc&&(t.trace(`Adding nodes children `),Se(n,n.doc,r,i,a,!o,c,l))},`dataFetcher`),Te=e(()=>{W.clear(),G=0,be=0,K.clear()},`reset`),Ee=e((e,t=D)=>{if(!e.doc)return t;let n=t;for(let t of e.doc)t.stmt===`dir`&&(n=t.value);return n},`getDir`),De={getClasses:e(function(e,t){return t.db.getClasses()},`getClasses`),draw:e(async function(e,n,r,i){t.info(`REF0:`),t.info(`Drawing state diagram (v2)`,n);let{securityLevel:a,state:o,layout:s}=u();i.db.extract(i.db.getRootDocV2());let c=i.db.getData(),l=y(n,a);c.type=i.type,c.layoutAlgorithm=S(s),c.nodeSpacing=o?.nodeSpacing||50,c.rankSpacing=o?.rankSpacing||50,c.markers=u().look===`neo`?[`barbNeo`]:[`barb`],c.diagramId=n,await x(c,l);try{(typeof i.db.getLinks==`function`?i.db.getLinks():new Map).forEach((e,n)=>{let r=typeof n==`string`?n:typeof n?.id==`string`?n.id:``,i=c.nodes.find(e=>e.id===r);if(!r){t.warn(`⚠️ Invalid or missing stateId from key:`,JSON.stringify(n));return}let a=l.node()?.querySelectorAll(`g.node, g.rough-node`),o;if(a?.forEach(e=>{let t=e.textContent?.trim();(e.id===i?.domId||t===r)&&(o=e)}),!o){t.warn(`⚠️ Could not find node matching text:`,r);return}let s=o.parentNode;if(!s){t.warn(`⚠️ Node has no parent, cannot wrap:`,r);return}let u=document.createElementNS(`http://www.w3.org/2000/svg`,`a`),d=e.url.replace(/^"+|"+$/g,``);if(u.setAttributeNS(`http://www.w3.org/1999/xlink`,`xlink:href`,d),u.setAttribute(`target`,`_blank`),e.tooltip){let t=e.tooltip.replace(/^"+|"+$/g,``);u.setAttribute(`title`,t),o.setAttribute(`title`,t)}s.replaceChild(u,o),u.appendChild(o),t.info(`🔗 Wrapped node in <a> tag for:`,r,e.url)})}catch(e){t.error(`❌ Error injecting clickable links:`,e)}f.insertTitle(l,`statediagramTitleText`,o?.titleTopMargin??25,i.db.getDiagramTitle()),b(l,8,z,o?.useMaxWidth??!0)},`draw`),getDir:Ee},Z={START_NODE:`[*]`,START_TYPE:`start`,END_NODE:`[*]`,END_TYPE:`end`,COLOR_KEYWORD:`color`,FILL_KEYWORD:`fill`,BG_FILL:`bgFill`,STYLECLASS_SEP:`,`},Oe=e(()=>new Map,`newClassesList`),Q=e(()=>({relations:[],states:new Map,documents:{}}),`newDoc`),$=e(e=>JSON.parse(JSON.stringify(e)),`clone`),ke=class{constructor(e){this.version=e,this.nodes=[],this.edges=[],this.rootDoc=[],this.classes=Oe(),this.documents={root:Q()},this.currentDocument=this.documents.root,this.startEndCount=0,this.dividerCnt=0,this.links=new Map,this.funs=[],this.getAccTitle=d,this.setAccTitle=i,this.getAccDescription=c,this.setAccDescription=r,this.setDiagramTitle=o,this.getDiagramTitle=l,this.clear(),this.setRootDoc=this.setRootDoc.bind(this),this.getDividerId=this.getDividerId.bind(this),this.setDirection=this.setDirection.bind(this),this.trimColon=this.trimColon.bind(this),this.bindFunctions=this.bindFunctions.bind(this)}static{e(this,`StateDB`)}static{this.relationType={AGGREGATION:0,EXTENSION:1,COMPOSITION:2,DEPENDENCY:3}}extract(e){this.clear(!0);for(let t of Array.isArray(e)?e:e.doc)switch(t.stmt){case k:this.addState(t.id.trim(),t.type,t.doc,t.description,t.note);break;case j:this.addRelation(t.state1,t.state2,t.description);break;case M:this.addStyleClass(t.id.trim(),t.classes);break;case N:this.handleStyleDef(t);break;case P:this.setCssClass(t.id.trim(),t.styleClass);break;case`click`:this.addLink(t.id,t.url,t.tooltip)}let t=this.getStates(),n=u();Te(),X(void 0,this.getRootDocV2(),t,this.nodes,this.edges,!0,n.look,this.classes);for(let e of this.nodes)if(Array.isArray(e.label)){if(e.description=e.label.slice(1),e.isGroup&&e.description.length>0)throw Error(`Group nodes can only have label. Remove the additional description for node [${e.id}]`);e.label=e.label[0]}}handleStyleDef(e){let t=e.id.trim().split(`,`),n=e.styleClass.split(`,`);for(let e of t){let t=this.getState(e);if(!t){let n=e.trim();this.addState(n),t=this.getState(n)}t&&(t.styles=n.map(e=>e.replace(/;/g,``)?.trim()))}}setRootDoc(e){t.info(`Setting root doc`,e),this.rootDoc=e,this.version===1?this.extract(e):this.extract(this.getRootDocV2())}docTranslator(e,t,n){if(t.stmt===j){this.docTranslator(e,t.state1,!0),this.docTranslator(e,t.state2,!1);return}if(t.stmt===k&&(t.id===Z.START_NODE?(t.id=e.id+(n?`_start`:`_end`),t.start=n):t.id=t.id.trim()),t.stmt!==A&&t.stmt!==k||!t.doc)return;let r=[],i=[];for(let e of t.doc)if(e.type===ee){let t=$(e);t.doc=$(i),r.push(t),i=[]}else i.push(e);if(r.length>0&&i.length>0){let e={stmt:k,id:p(),type:`divider`,doc:$(i)};r.push($(e)),t.doc=r}t.doc.forEach(e=>this.docTranslator(t,e,!0))}getRootDocV2(){return this.docTranslator({id:A,stmt:A},{id:A,stmt:A,doc:this.rootDoc},!0),{id:A,doc:this.rootDoc}}addState(e,n=F,r=void 0,i=void 0,a=void 0,o=void 0,c=void 0,l=void 0){let d=e?.trim();if(!this.currentDocument.states.has(d))t.info(`Adding state `,d,i),this.currentDocument.states.set(d,{stmt:k,id:d,descriptions:[],type:n,doc:r,note:a,classes:[],styles:[],textStyles:[]});else{let e=this.currentDocument.states.get(d);if(!e)throw Error(`State not found: ${d}`);e.doc||=r,e.type||=n}if(i&&(t.info(`Setting state description`,d,i),(Array.isArray(i)?i:[i]).forEach(e=>this.addDescription(d,e.trim()))),a){let e=this.currentDocument.states.get(d);if(!e)throw Error(`State not found: ${d}`);e.note=a,e.note.text=s.sanitizeText(e.note.text,u())}o&&(t.info(`Setting state classes`,d,o),(Array.isArray(o)?o:[o]).forEach(e=>this.setCssClass(d,e.trim()))),c&&(t.info(`Setting state styles`,d,c),(Array.isArray(c)?c:[c]).forEach(e=>this.setStyle(d,e.trim()))),l&&(t.info(`Setting state styles`,d,c),(Array.isArray(l)?l:[l]).forEach(e=>this.setTextStyle(d,e.trim())))}clear(e){this.nodes=[],this.edges=[],this.funs=[this.setupToolTips.bind(this)],this.documents={root:Q()},this.currentDocument=this.documents.root,this.startEndCount=0,this.classes=Oe(),e||(this.links=new Map,a())}getState(e){return this.currentDocument.states.get(e)}getStates(){return this.currentDocument.states}logDocuments(){t.info(`Documents = `,this.documents)}getRelations(){return this.currentDocument.relations}addLink(e,n,r){this.links.set(e,{url:n,tooltip:r}),t.warn(`Adding link`,e,n,r)}getLinks(){return this.links}startIdIfNeeded(e=``){return e===Z.START_NODE?(this.startEndCount++,`${Z.START_TYPE}${this.startEndCount}`):e}startTypeIfNeeded(e=``,t=F){return e===Z.START_NODE?Z.START_TYPE:t}endIdIfNeeded(e=``){return e===Z.END_NODE?(this.startEndCount++,`${Z.END_TYPE}${this.startEndCount}`):e}endTypeIfNeeded(e=``,t=F){return e===Z.END_NODE?Z.END_TYPE:t}addRelationObjs(e,t,n=``){let r=this.startIdIfNeeded(e.id.trim()),i=this.startTypeIfNeeded(e.id.trim(),e.type),a=this.startIdIfNeeded(t.id.trim()),o=this.startTypeIfNeeded(t.id.trim(),t.type);this.addState(r,i,e.doc,e.description,e.note,e.classes,e.styles,e.textStyles),this.addState(a,o,t.doc,t.description,t.note,t.classes,t.styles,t.textStyles),this.currentDocument.relations.push({id1:r,id2:a,relationTitle:s.sanitizeText(n,u())})}addRelation(e,t,n){if(typeof e==`object`&&typeof t==`object`)this.addRelationObjs(e,t,n);else if(typeof e==`string`&&typeof t==`string`){let r=this.startIdIfNeeded(e.trim()),i=this.startTypeIfNeeded(e),a=this.endIdIfNeeded(t.trim()),o=this.endTypeIfNeeded(t);this.addState(r,i),this.addState(a,o),this.currentDocument.relations.push({id1:r,id2:a,relationTitle:n?s.sanitizeText(n,u()):void 0})}}addDescription(e,t){let n=this.currentDocument.states.get(e),r=t.startsWith(`:`)?t.replace(`:`,``).trim():t;n?.descriptions?.push(s.sanitizeText(r,u()))}cleanupLabel(e){return e.startsWith(`:`)?e.slice(2).trim():e.trim()}getDividerId(){return this.dividerCnt++,`divider-id-${this.dividerCnt}`}addStyleClass(e,t=``){this.classes.has(e)||this.classes.set(e,{id:e,styles:[],textStyles:[]});let n=this.classes.get(e);t&&n&&t.split(Z.STYLECLASS_SEP).forEach(e=>{let t=e.replace(/([^;]*);/,`$1`).trim();if(RegExp(Z.COLOR_KEYWORD).exec(e)){let e=t.replace(Z.FILL_KEYWORD,Z.BG_FILL).replace(Z.COLOR_KEYWORD,Z.FILL_KEYWORD);n.textStyles.push(e)}n.styles.push(t)})}getClasses(){return this.classes}setupToolTips(e){let t=v();n(e).select(`svg`).selectAll(`g.node, g.rough-node`).on(`mouseover`,e=>{let r=n(e.currentTarget),i=r.attr(`title`);if(i===null)return;let a=e.currentTarget?.getBoundingClientRect();t.transition().duration(200).style(`opacity`,`.9`),t.style(`left`,window.scrollX+a.left+(a.right-a.left)/2+`px`).style(`top`,window.scrollY+a.bottom+`px`),t.html(C.sanitize(i)),r.classed(`hover`,!0)}).on(`mouseout`,e=>{t.transition().duration(500).style(`opacity`,0),n(e.currentTarget).classed(`hover`,!1)})}setCssClass(e,t){e.split(`,`).forEach(e=>{let n=this.getState(e);if(!n){let t=e.trim();this.addState(t),n=this.getState(t)}n?.classes?.push(t)})}setStyle(e,t){this.getState(e)?.styles?.push(t)}setTextStyle(e,t){this.getState(e)?.textStyles?.push(t)}bindFunctions(e){this.funs.forEach(t=>{t(e)})}getDirectionStatement(){return this.rootDoc.find(e=>e.stmt===O)}getDirection(){return this.getDirectionStatement()?.value??E}setDirection(e){let t=this.getDirectionStatement();t?t.value=e:this.rootDoc.unshift({stmt:O,value:e})}trimColon(e){return e.startsWith(`:`)?e.slice(1).trim():e.trim()}getData(){let e=u();for(let t of this.nodes)t.wrappingWidth??=e.state?.wrappingWidth,t.isGroup||(t.minWidth??=e.state?.minNodeWidth);return{nodes:this.nodes,edges:this.edges,other:{},config:e,direction:Ee(this.getRootDocV2())}}getConfig(){return u().state}},Ae=e(e=>{let{theme:t,bkgColorArray:n,borderColorArray:r}=e;if(!h(t,r))return``;let i=g(e.look),a=_(n),o=``;for(let e=0;e<m(r);e++){let t=r[e],s=a?`fill: ${n[e%n.length]};`:``,c=`[data-look="${i}"][data-color-id="color-${e}"]`;o+=`
7
7
 
8
8
  /* The title strip: \`rect.outer\` spans the whole composite and \`rect.inner\` covers
9
9
  the body, so what stays visible of \`outer\` is the band behind the label. */