@coopcli/specplan 2026.826.2 → 2026.831.1
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.
- package/dist/cli/index.js +87 -14
- package/dist/client/assets/{abnfDiagram-VRR7QNED-DG21UC5n.js → abnfDiagram-VCTEODGH-CfNYg36y.js} +1 -1
- package/dist/client/assets/architecture-7GRP2DOG-ClcyuJeM.js +1 -0
- package/dist/client/assets/architectureDiagram-5GKGNRK7-EUaFLg_N.js +36 -0
- package/dist/client/assets/blockDiagram-I7D4REHJ-D5aVJWK4.js +129 -0
- package/dist/client/assets/c4Diagram-7LVT6UL2-BZXD1Ljd.js +38 -0
- package/dist/client/assets/channel-BAs8lRyw.js +1 -0
- package/dist/client/assets/chunk-2E4U76K2-Cw3KAY14.js +2 -0
- package/dist/client/assets/chunk-4HAMMTFA-e90ut0hg.js +62 -0
- package/dist/client/assets/{chunk-ICXQ74PX-Cq2aKGhh.js → chunk-75Z2AOVW-BSJ7TCsD.js} +1 -1
- package/dist/client/assets/chunk-CLGD4ZFX-C0R2i_19.js +1 -0
- package/dist/client/assets/chunk-DU6HZSFF-B9PGrM0S.js +127 -0
- package/dist/client/assets/{chunk-32BRIVSS-DnOQr5Hs.js → chunk-F27PBJKO-DDITEZtq.js} +1 -1
- package/dist/client/assets/{chunk-KEIR6QF5-BfrZ3jm6.js → chunk-FOHPRMQF-CyTuVbu3.js} +2 -2
- package/dist/client/assets/chunk-GMAD6QVW-CYVpwKkW.js +72 -0
- package/dist/client/assets/chunk-GVQU2GXP-BJblveWS.js +1 -0
- package/dist/client/assets/{chunk-EX3LRPZG-Bi8XxiOh.js → chunk-IMKFNOWR-DAGJCpt6.js} +2 -2
- package/dist/client/assets/{chunk-K2UTITRG-BltRQECA.js → chunk-K2UTITRG-H9sh0oLh.js} +3 -3
- package/dist/client/assets/chunk-L3NEJ4N5-DxCFFP_W.js +1 -0
- package/dist/client/assets/chunk-LNGE3PJU-DNNNwF8Y.js +34 -0
- package/dist/client/assets/chunk-OSK3NFVY-BMSa3Vfd.js +10 -0
- package/dist/client/assets/chunk-P2QGCYS3-Bu8IRfP3.js +1 -0
- package/dist/client/assets/{chunk-VR4S4FIN-BFByvgIN.js → chunk-POPQ4Y6H-D5kqONCm.js} +1 -1
- package/dist/client/assets/{chunk-HOUHSVGY-Bl0rPEPe.js → chunk-PWAF6VOD-Dvb7qjWz.js} +1 -1
- package/dist/client/assets/chunk-SHT3W25Y-D2BW6_3D.js +168 -0
- package/dist/client/assets/{chunk-MOJQB5TN-JtGqXlt7.js → chunk-SVP7TREG-80pA_2GH.js} +1 -1
- package/dist/client/assets/{chunk-V7JOEXUC-DY3oUmK_.js → chunk-TICWLB2K-33YpH19H.js} +1 -1
- package/dist/client/assets/chunk-TLUHSLCS-DB6mQIZ1.js +2 -0
- package/dist/client/assets/chunk-XXDRQBXY-UjAooa0y.js +1 -0
- package/dist/client/assets/classDiagram-ZZMXUADV-Dr70HO4g.js +1 -0
- package/dist/client/assets/classDiagram-v2-VYDZK3BY-Dr70HO4g.js +1 -0
- package/dist/client/assets/{cose-bilkent-JH36ORCC-BZq8oTdP.js → cose-bilkent-JH36ORCC-Cxpw52Vn.js} +1 -1
- package/dist/client/assets/cynefin-OW5HDTMX-DGOAC9pl.js +1 -0
- package/dist/client/assets/{cynefinDiagram-TSTJHNR4-CSWGdCZG.js → cynefinDiagram-5FMLGOSQ-BBadT3J7.js} +1 -1
- package/dist/client/assets/dagre-BJJUWK_n.js +1 -0
- package/dist/client/assets/dagre-GXQ25YYZ-uK9Aj9gR.js +4 -0
- package/dist/client/assets/{diagram-OA4YK3LP-B57UNui7.js → diagram-S7CK7UJ4-Bx7un_r7.js} +4 -4
- package/dist/client/assets/diagram-UQ7AKVKN-D_FPs5n4.js +41 -0
- package/dist/client/assets/{diagram-FQU43EPY-lDfjbNDh.js → diagram-VSXAHHWV-DOlaViPU.js} +1 -1
- package/dist/client/assets/{diagram-G47NLZAW-Bqb_3tmg.js → diagram-VX7I27RA-W3tftqeG.js} +1 -1
- package/dist/client/assets/{diagram-NH7WQ7WH-BArVFXm1.js → diagram-Z3DM3KII-BlTEnFH3.js} +1 -1
- package/dist/client/assets/dist-DIRxRVHE.js +29 -0
- package/dist/client/assets/{ebnfDiagram-CCIWWBDH-83eSAR_O.js → ebnfDiagram-PWID7BFC-V5TBUB27.js} +1 -1
- package/dist/client/assets/erDiagram-RLTQ6QDP-DfsK-we8.js +99 -0
- package/dist/client/assets/eventmodeling-NTZA5JFV-Bm8UblGS.js +1 -0
- package/dist/client/assets/flowDiagram-HODETNUW-CDbLbKxh.js +1 -0
- package/dist/client/assets/{ganttDiagram-NO4QXBWP-Bgga29Au.js → ganttDiagram-EL5Y4UJY--q244SRn.js} +1 -1
- package/dist/client/assets/gitGraph-4MIJSDKK-DnrVWqiy.js +1 -0
- package/dist/client/assets/{gitGraphDiagram-IHSO6WYX-Br2TGk_K.js → gitGraphDiagram-WWUBYQGX-VNkA4Uf5.js} +1 -1
- package/dist/client/assets/image-GAAHSSAO-CD1o-YMR.js +1 -0
- package/dist/client/assets/{index-CJ_b6AjB.js → index-B11N7mVL.js} +2 -2
- package/dist/client/assets/info-A6RAGUB7-DHahP2t1.js +1 -0
- package/dist/client/assets/{infoDiagram-FWYZ7A6U-DHDrXFI4.js → infoDiagram-27XIBGKW-BqdWJsQl.js} +1 -1
- package/dist/client/assets/{ishikawaDiagram-FXEZZL3T-O9cNcghb.js → ishikawaDiagram-5VMMS53U-BQDvfXPM.js} +1 -1
- package/dist/client/assets/{journeyDiagram-5HDEW3XC-D-xRZp9P.js → journeyDiagram-3NMN7TZE-CUxgRucN.js} +2 -2
- package/dist/client/assets/{kanban-definition-HUTT4EX6-BJaeijjD.js → kanban-definition-UXKFOSKX-NRYyPh3u.js} +4 -4
- package/dist/client/assets/{line-BNyITG_F.js → line--mn93uFO.js} +1 -1
- package/dist/client/assets/{linear-C8fpJQ9Y.js → linear-nn1qWWVx.js} +1 -1
- package/dist/client/assets/{mermaid-parser.core-0GwuEqeW.js → mermaid-parser.core-cJplg8ws.js} +3 -3
- package/dist/client/assets/{mindmap-definition-LN4V7U3C-C_xpI67d.js → mindmap-definition-YA3MSWOX-5mxipwqK.js} +1 -1
- package/dist/client/assets/packet-AYTQ26CC-D_CzDsxi.js +1 -0
- package/dist/client/assets/{pegDiagram-2B236MQR-BgEyEYUz.js → pegDiagram-XKGWAZYB-CZgEH2ik.js} +1 -1
- package/dist/client/assets/pie-WAS4IAKB-Bbi2nBDh.js +1 -0
- package/dist/client/assets/{pieDiagram-ENE6RG2P-_eb7ATmh.js → pieDiagram-E7YTZNPT-BeIds11Q.js} +1 -1
- package/dist/client/assets/{prod-Ba4uM3Ch.js → prod-ebIQ9pCZ.js} +5 -5
- package/dist/client/assets/{quadrantDiagram-ABIIQ3AL-BfWuKeAQ.js → quadrantDiagram-AXDQQJYC-CU25DqZi.js} +1 -1
- package/dist/client/assets/radar-RG4KPBEZ-D9XlnJuS.js +1 -0
- package/dist/client/assets/railroad-74A4TZTK-C8zhynVQ.js +1 -0
- package/dist/client/assets/railroad-abnf-HS5TGJTU-BTpzeL6Q.js +1 -0
- package/dist/client/assets/railroad-ebnf-LZEXJU2U-CDp0cVj8.js +1 -0
- package/dist/client/assets/railroad-peg-WCYAUIDC-COHlAN_m.js +1 -0
- package/dist/client/assets/{railroadDiagram-RFXS5EU6-Dc-cMKD7.js → railroadDiagram-O6MQD6OU-B3-CeGkJ.js} +1 -1
- package/dist/client/assets/{requirementDiagram-TGXJPOKE-DV1943Gb.js → requirementDiagram-BXWQKSXE-BOtLvnrn.js} +2 -2
- package/dist/client/assets/{sankeyDiagram-HTMAVEWB-BLoYtcaW.js → sankeyDiagram-P5KCCOFB-d8cZjl2R.js} +1 -1
- package/dist/client/assets/{sequenceDiagram-DBY2YBRQ-B6DaItWI.js → sequenceDiagram-WJ2MYXX4-xPYJuZXx.js} +1 -1
- package/dist/client/assets/{src-BhL2Ylf6.js → src-vDqOmCca.js} +1 -1
- package/dist/client/assets/{stateDiagram-2N3HPSRC-DPj2INXk.js → stateDiagram-D77RDMKH-CoSi3U2M.js} +1 -1
- package/dist/client/assets/stateDiagram-v2-MP3YSRHH-rm3bOnma.js +1 -0
- package/dist/client/assets/swimlanes-42K2YHIH-Dfmn2Xue.js +1 -0
- package/dist/client/assets/swimlanesDiagram-VR7AAH4N-DNMa4iz7.js +8 -0
- package/dist/client/assets/{timeline-definition-FHXFAJF6-DGOKXG2b.js → timeline-definition-24CTP7MA-5lxZ3j2p.js} +1 -1
- package/dist/client/assets/treeView-Q6P3EWNA-WvBrpL2m.js +1 -0
- package/dist/client/assets/treemap-WGGIJYW6-BIRckr4X.js +1 -0
- package/dist/client/assets/{vennDiagram-L72KCM5P-C5_1kk6U.js → vennDiagram-4TSXK5OY-BNF-a0iW.js} +1 -1
- package/dist/client/assets/wardley-WFR3VGLG-BLEFW6m8.js +1 -0
- package/dist/client/assets/{wardleyDiagram-EHGQE667-BEkVslCX.js → wardleyDiagram-VM6X3IG4-X0WeO3Ol.js} +1 -1
- package/dist/client/assets/{xychartDiagram-FW5EYKEG-CPIaD3HD.js → xychartDiagram-S5SC5T6Z-zv0t5rP8.js} +3 -3
- package/dist/client/index.html +1 -1
- package/package.json +1 -1
- package/dist/client/assets/architecture-TIHT7OUA-DYAR8PGt.js +0 -1
- package/dist/client/assets/architectureDiagram-ZJ3FMSHR-C0V7EMlK.js +0 -36
- package/dist/client/assets/blockDiagram-677ZJIJ3-Q-VuK37S.js +0 -132
- package/dist/client/assets/c4Diagram-LMCZKHZV-Dhz1hxI-.js +0 -10
- package/dist/client/assets/channel-SlrdwMao.js +0 -1
- package/dist/client/assets/chunk-52WLFC77-BI8xz4Ng.js +0 -10
- package/dist/client/assets/chunk-7BUUIJ7U-Bb538aSH.js +0 -1
- package/dist/client/assets/chunk-C7G6YPKG-zsqJHbjz.js +0 -1
- package/dist/client/assets/chunk-FWX5IMBZ-BFofqCmB.js +0 -2
- package/dist/client/assets/chunk-OGEWGWER-CLzHww9d.js +0 -1
- package/dist/client/assets/chunk-PUDLZKDR-C2gIwlIm.js +0 -156
- package/dist/client/assets/chunk-Q4XR5HBZ-Dju-tUQs.js +0 -70
- package/dist/client/assets/chunk-RYQCIY6F-C1vISHVj.js +0 -1
- package/dist/client/assets/chunk-VAUOI2AC-BTR1oUbp.js +0 -1
- package/dist/client/assets/chunk-WYO6CB5R-2sVpzpwa.js +0 -127
- package/dist/client/assets/chunk-XXDRQBXY-CoR8hY2w.js +0 -1
- package/dist/client/assets/chunk-ZGVPDNZ5-CPSkfYQU.js +0 -62
- package/dist/client/assets/chunk-ZIRB5QZD-C6fEPe3t.js +0 -32
- package/dist/client/assets/classDiagram-OUVF2IWQ-C12ZdCSq.js +0 -1
- package/dist/client/assets/classDiagram-v2-EOCWNBFH-C12ZdCSq.js +0 -1
- package/dist/client/assets/cynefin-VYW2F7L2-Qefl_a7r.js +0 -1
- package/dist/client/assets/dagre-CXRCoUWR.js +0 -1
- package/dist/client/assets/dagre-VKFMJZFB-8Lzbq-nm.js +0 -4
- package/dist/client/assets/diagram-WEI45ONY-BFLTZHeD.js +0 -41
- package/dist/client/assets/dist-BXJAQ5z7.js +0 -29
- package/dist/client/assets/erDiagram-Q63AITRT-XJGCrYfA.js +0 -85
- package/dist/client/assets/eventmodeling-45OFAUF4-CySgleMT.js +0 -1
- package/dist/client/assets/flowDiagram-23GEKE2U-CpHOSlUH.js +0 -1
- package/dist/client/assets/gitGraph-TEB2WS4Q-wTeiF0vP.js +0 -1
- package/dist/client/assets/image-GAAHSSAO-DddoQEI3.js +0 -1
- package/dist/client/assets/info-DKCQHKI2-CLYkJTfv.js +0 -1
- package/dist/client/assets/map-DsCK-0Cs.js +0 -1
- package/dist/client/assets/packet-7NZHBO7P-oaZIsx8j.js +0 -1
- package/dist/client/assets/pie-RZYD4A2V-Dc3Fwoex.js +0 -1
- package/dist/client/assets/radar-I7S5WNFK-CB0kWg3t.js +0 -1
- package/dist/client/assets/railroad-3IZDKUUU-amr7bLB-.js +0 -1
- package/dist/client/assets/railroad-abnf-AHOZXSZD-BjM-VtEb.js +0 -1
- package/dist/client/assets/railroad-ebnf-EBAXGLYW-CywxI5pS.js +0 -1
- package/dist/client/assets/railroad-peg-LSFZ7HO6-C7lj-TYo.js +0 -1
- package/dist/client/assets/stateDiagram-v2-6OUMAXLB-_0YmrsU4.js +0 -1
- package/dist/client/assets/swimlanes-5IMT3BWC-BeEj60g4.js +0 -2
- package/dist/client/assets/swimlanesDiagram-G3AALYLV-B-KepWf4.js +0 -8
- package/dist/client/assets/treeView-QDETBFTQ-DTEVOLrT.js +0 -1
- package/dist/client/assets/treemap-6X3UGDF4-JYJwO9Vr.js +0 -1
- package/dist/client/assets/wardley-OPB4EBWU-B7P-bikf.js +0 -1
- /package/dist/client/assets/{sizeCapture-X5ZJPWSS-B0uUizjq.js → sizeCapture-INFHLROL-B0uUizjq.js} +0 -0
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/c4Diagram-7LVT6UL2-BZXD1Ljd.js","assets/index-B11N7mVL.js","assets/rolldown-runtime-aKtaBQYM.js","assets/index-xgCRGDe_.css","assets/chunk-Y2CYZVJY-DsF7k-Jl.js","assets/src-vDqOmCca.js","assets/chunk-DU6HZSFF-B9PGrM0S.js","assets/chunk-75Z2AOVW-BSJ7TCsD.js","assets/dist-qx0Iv9vM.js","assets/chunk-P2QGCYS3-Bu8IRfP3.js","assets/chunk-PWAF6VOD-Dvb7qjWz.js","assets/chunk-GMAD6QVW-CYVpwKkW.js","assets/chunk-4HAMMTFA-e90ut0hg.js","assets/rough.esm-CSKSodPl.js","assets/chunk-F27PBJKO-DDITEZtq.js","assets/flowDiagram-HODETNUW-CDbLbKxh.js","assets/chunk-GVQU2GXP-BJblveWS.js","assets/chunk-L3NEJ4N5-DxCFFP_W.js","assets/chunk-OSK3NFVY-BMSa3Vfd.js","assets/line--mn93uFO.js","assets/path-BWPyau1x.js","assets/array-BifhSqXX.js","assets/chunk-LNGE3PJU-DNNNwF8Y.js","assets/chunk-TLUHSLCS-DB6mQIZ1.js","assets/chunk-XXDRQBXY-UjAooa0y.js","assets/chunk-POPQ4Y6H-D5kqONCm.js","assets/chunk-SHT3W25Y-D2BW6_3D.js","assets/channel-BAs8lRyw.js","assets/chunk-5VM5RSS4-ZNzvKenW.js","assets/swimlanesDiagram-VR7AAH4N-DNMa4iz7.js","assets/erDiagram-RLTQ6QDP-DfsK-we8.js","assets/gitGraphDiagram-WWUBYQGX-VNkA4Uf5.js","assets/mermaid-parser.core-cJplg8ws.js","assets/chunk-FOHPRMQF-CyTuVbu3.js","assets/chunk-JWPE2WC7-DVXcaiue.js","assets/chunk-2Q5K7J3B-C1jixKkw.js","assets/ganttDiagram-EL5Y4UJY--q244SRn.js","assets/linear-nn1qWWVx.js","assets/defaultLocale-C8Fc0cco.js","assets/init-D6jRqBbL.js","assets/infoDiagram-27XIBGKW-BqdWJsQl.js","assets/chunk-CLGD4ZFX-C0R2i_19.js","assets/pieDiagram-E7YTZNPT-BeIds11Q.js","assets/ordinal-hYBb2elL.js","assets/arc-DqK6O3qL.js","assets/quadrantDiagram-AXDQQJYC-CU25DqZi.js","assets/xychartDiagram-S5SC5T6Z-zv0t5rP8.js","assets/requirementDiagram-BXWQKSXE-BOtLvnrn.js","assets/sequenceDiagram-WJ2MYXX4-xPYJuZXx.js","assets/classDiagram-ZZMXUADV-Dr70HO4g.js","assets/chunk-TICWLB2K-33YpH19H.js","assets/classDiagram-v2-VYDZK3BY-Dr70HO4g.js","assets/stateDiagram-D77RDMKH-CoSi3U2M.js","assets/graphlib-B8gBHxth.js","assets/dagre-BJJUWK_n.js","assets/chunk-IMKFNOWR-DAGJCpt6.js","assets/stateDiagram-v2-MP3YSRHH-rm3bOnma.js","assets/journeyDiagram-3NMN7TZE-CUxgRucN.js","assets/timeline-definition-24CTP7MA-5lxZ3j2p.js","assets/mindmap-definition-YA3MSWOX-5mxipwqK.js","assets/kanban-definition-UXKFOSKX-NRYyPh3u.js","assets/sankeyDiagram-P5KCCOFB-d8cZjl2R.js","assets/diagram-Z3DM3KII-BlTEnFH3.js","assets/diagram-UQ7AKVKN-D_FPs5n4.js","assets/blockDiagram-I7D4REHJ-D5aVJWK4.js","assets/diagram-S7CK7UJ4-Bx7un_r7.js","assets/architectureDiagram-5GKGNRK7-EUaFLg_N.js","assets/cytoscape.esm-B3I8pqwA.js","assets/diagram-VSXAHHWV-DOlaViPU.js","assets/ishikawaDiagram-5VMMS53U-BQDvfXPM.js","assets/vennDiagram-4TSXK5OY-BNF-a0iW.js","assets/diagram-VX7I27RA-W3tftqeG.js","assets/wardleyDiagram-VM6X3IG4-X0WeO3Ol.js","assets/cynefinDiagram-5FMLGOSQ-BBadT3J7.js","assets/railroadDiagram-O6MQD6OU-B3-CeGkJ.js","assets/chunk-SVP7TREG-80pA_2GH.js","assets/ebnfDiagram-PWID7BFC-V5TBUB27.js","assets/abnfDiagram-VCTEODGH-CfNYg36y.js","assets/pegDiagram-XKGWAZYB-CZgEH2ik.js"])))=>i.map(i=>d[i]);
|
|
2
|
+
import{t as e}from"./rolldown-runtime-aKtaBQYM.js";import{p as t,t as n}from"./index-B11N7mVL.js";import{n as r}from"./chunk-Y2CYZVJY-DsF7k-Jl.js";import{n as i,t as a}from"./src-vDqOmCca.js";import{$ as o,C as s,E as c,I as l,L as u,N as d,P as f,Q as p,S as m,T as h,V as g,W as _,X as v,Z as y,_ as b,b as x,c as S,g as C,l as w,m as T,n as ee,p as te,q as E,r as ne,t as re,u as ie}from"./chunk-DU6HZSFF-B9PGrM0S.js";import{S as ae,a as oe,f as se,g as ce,h as le,i as ue,o as de,v as fe,x as pe,y as me}from"./chunk-75Z2AOVW-BSJ7TCsD.js";import{t as he}from"./chunk-CLGD4ZFX-C0R2i_19.js";import"./chunk-P2QGCYS3-Bu8IRfP3.js";import{r as ge}from"./chunk-PWAF6VOD-Dvb7qjWz.js";import{i as _e}from"./chunk-GMAD6QVW-CYVpwKkW.js";import"./chunk-4HAMMTFA-e90ut0hg.js";import"./chunk-GVQU2GXP-BJblveWS.js";import"./chunk-L3NEJ4N5-DxCFFP_W.js";import"./chunk-OSK3NFVY-BMSa3Vfd.js";import"./chunk-2E4U76K2-Cw3KAY14.js";import{n as ve,t as ye}from"./chunk-LNGE3PJU-DNNNwF8Y.js";import{n as be}from"./chunk-TLUHSLCS-DB6mQIZ1.js";var xe={rect:`rectangle`,circle:`ellipse`},Se={startOnLoad:!1,flowchart:{curve:`linear`},themeVariables:{fontSize:`20px`},maxEdges:500,maxTextSize:5e4},Ce=class{constructor({converter:e}){this.convert=(e,t)=>this.converter(e,{...t,fontSize:t.fontSize||20}),this.converter=e}},D;(function(e){e.ROUND=`round`,e.STADIUM=`stadium`,e.DOUBLECIRCLE=`doublecircle`,e.CIRCLE=`circle`,e.DIAMOND=`diamond`,e.CYLINDER=`cylinder`})(D||={});var O;(function(e){e.COLOR=`color`})(O||={});var k;(function(e){e.FILL=`fill`,e.STROKE=`stroke`,e.STROKE_WIDTH=`stroke-width`,e.STROKE_DASHARRAY=`stroke-dasharray`})(k||={});var we=e((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.removeMarkdown=void 0,e.removeMarkdown=function(e,t){t===void 0&&(t={listUnicodeChar:``}),t||={},t.listUnicodeChar=t.hasOwnProperty(`listUnicodeChar`)?t.listUnicodeChar:!1,t.stripListLeaders=t.hasOwnProperty(`stripListLeaders`)?t.stripListLeaders:!0,t.gfm=t.hasOwnProperty(`gfm`)?t.gfm:!0,t.useImgAltText=t.hasOwnProperty(`useImgAltText`)?t.useImgAltText:!0,t.preserveLinks=t.hasOwnProperty(`preserveLinks`)?t.preserveLinks:!1;var n=e||``;n=n.replace(/^(-\s*?|\*\s*?|_\s*?){3,}\s*$/gm,``);try{t.stripListLeaders&&(n=t.listUnicodeChar?n.replace(/^([\s\t]*)([\*\-\+]|\d+\.)\s+/gm,t.listUnicodeChar+` $1`):n.replace(/^([\s\t]*)([\*\-\+]|\d+\.)\s+/gm,`$1`)),t.gfm&&(n=n.replace(/\n={2,}/g,`
|
|
3
|
+
`).replace(/~{3}.*\n/g,``).replace(/~~/g,``).replace(/`{3}.*\n/g,``)),t.preserveLinks&&(n=n.replace(/\[(.*?)\][\[\(](.*?)[\]\)]/g,`$1 ($2)`)),n=n.replace(/<[^>]*>/g,``).replace(/^[=\-]{2,}\s*$/g,``).replace(/\[\^.+?\](\: .*?$)?/g,``).replace(/\s{0,2}\[.*?\]: .*?$/g,``).replace(/\!\[(.*?)\][\[\(].*?[\]\)]/g,t.useImgAltText?`$1`:``).replace(/\[(.*?)\][\[\(].*?[\]\)]/g,`$1`).replace(/^\s{0,3}>\s?/g,``).replace(/(^|\n)\s{0,3}>\s?/g,`
|
|
4
|
+
|
|
5
|
+
`).replace(/^\s{1,2}\[(.*?)\]: (\S+)( ".*?")?\s*$/g,``).replace(/^(\n)?\s{0,}#{1,6}\s+| {0,}(\n)?\s{0,}#{0,} {0,}(\n)?\s{0,}$/gm,`$1$2$3`).replace(/([\*_]{1,3})(\S.*?\S{0,1})\1/g,`$2`).replace(/([\*_]{1,3})(\S.*?\S{0,1})\1/g,`$2`).replace(/(`{3,})(.*?)\1/gm,`$2`).replace(/`(.+?)`/g,`$1`).replace(/\n{2,}/g,`
|
|
6
|
+
|
|
7
|
+
`)}catch(t){return console.error(t),e}return n}}))(),Te={arrow_circle:{endArrowhead:`circle`},arrow_cross:{endArrowhead:`bar`},arrow_open:{endArrowhead:null,startArrowhead:null},double_arrow_circle:{endArrowhead:`circle`,startArrowhead:`circle`},double_arrow_cross:{endArrowhead:`bar`,startArrowhead:`bar`},double_arrow_point:{endArrowhead:`arrow`,startArrowhead:`arrow`}},Ee=e=>Te[e],De=e=>{let t=e.text;return e.labelType===`markdown`&&(t=(0,we.removeMarkdown)(e.text)),Oe(t)},Oe=e=>e.replace(/\s?(fa|fab):[a-zA-Z0-9-]+/g,``),ke=e=>{let t={};return Object.keys(e).forEach(n=>{switch(n){case k.FILL:t.backgroundColor=e[n],t.fillStyle=`solid`;break;case k.STROKE:t.strokeColor=e[n];break;case k.STROKE_WIDTH:t.strokeWidth=Number(e[n]?.split(`px`)[0]);break;case k.STROKE_DASHARRAY:t.strokeStyle=`dashed`;break}}),t},Ae=e=>{let t={};return Object.keys(e).forEach(n=>{switch(n){case O.COLOR:t.strokeColor=e[n];break}}),t},je=(e,t)=>[e,t],Me=32,Ne=.62,Pe=12,Fe=12,Ie=(e,t)=>Math.max(20,Math.ceil(e.length*t*Ne)),Le=(e,t,n,r)=>{let i=r||20;if(e!==D.CYLINDER||!t||t.includes(`
|
|
8
|
+
`))return i;let a=Math.max(20,n-Pe);return Ie(t,i)<=a?i:Math.max(Fe,Math.floor(a/(t.length*Ne)))},Re=e=>{let t={};e.subGraphs.map(n=>{n.nodeIds.forEach(r=>{t[n.id]={id:n.id,parent:null,isLeaf:!1},t[r]={id:r,parent:n.id,isLeaf:e.vertices[r]!==void 0}})});let n={};return[...Object.keys(e.vertices),...e.subGraphs.map(e=>e.id)].forEach(e=>{if(!t[e])return;let r=t[e],i=[];for(r.isLeaf||i.push(`subgraph_group_${r.id}`);r.parent;)i.push(`subgraph_group_${r.parent}`),r=t[r.parent];n[e]=i}),{getGroupIds:e=>n[e]||[],getParentId:e=>t[e]?t[e].parent:null}},ze=new Ce({converter:(e,t)=>{let n=[],r=t.fontSize,{getGroupIds:i,getParentId:a}=Re(e);return e.subGraphs.reverse().forEach(e=>{let t=i(e.id),a=De(e),o=Ie(a,r||16)+Me*2,s=Math.max(e.width,o),c=e.x-(s-e.width)/2,l=ke(e.containerStyle),u=Ae(e.labelStyle),d={id:e.id,type:`rectangle`,groupIds:t,x:c,y:e.y,width:s,height:e.height,label:{groupIds:t,text:a,fontSize:r,verticalAlign:`top`,...u},...l};n.push(d)}),Object.values(e.vertices).forEach(e=>{if(!e)return;let t=i(e.id),a=De(e),o=Le(e.type,a,e.width,r),s=ke(e.containerStyle),c=Ae(e.labelStyle),l={id:e.id,type:`rectangle`,groupIds:t,x:e.x,y:e.y,width:e.width,height:e.height,strokeWidth:2,label:{groupIds:t,text:a,fontSize:o,...c},link:e.link||null,...s};switch(e.type){case D.STADIUM:l={...l,roundness:{type:3}};break;case D.ROUND:l={...l,roundness:{type:3}};break;case D.DOUBLECIRCLE:{t.push(`doublecircle_${e.id}}`);let r={type:`ellipse`,groupIds:t,x:e.x+5,y:e.y+5,width:e.width-10,height:e.height-10,strokeWidth:2,roundness:{type:3},label:{groupIds:t,text:a,fontSize:o,...c}};l={...l,groupIds:t,type:`ellipse`},n.push(r);break}case D.CIRCLE:l.type=`ellipse`;break;case D.DIAMOND:l.type=`diamond`;break}n.push(l)}),e.edges.forEach(e=>{let t=[],o=a(e.start),s=a(e.end);o&&o===s&&(t=i(o));let{startX:c,startY:l,reflectionPoints:u}=e,d=u.map(e=>je(e.x-u[0].x,e.y-u[0].y)),f=Ee(e.type||`arrow_point`),p=n.find(t=>t.id===e.start),m=n.find(t=>t.id===e.end);if(!p||!m)return;let h={id:`${e.start}_${e.end}`,type:`arrow`,groupIds:t,x:c,y:l,strokeWidth:e.stroke===`thick`?4:2,strokeStyle:e.stroke===`dotted`?`dashed`:void 0,points:d,...e.text?{label:{text:De(e),fontSize:r,groupIds:t}}:{},roundness:{type:2},...f,start:{id:p.id||``},end:{id:m.id||``}};n.push(h)}),{elements:n}}}),A=(e=21)=>crypto.getRandomValues(new Uint8Array(e)).reduce((e,t)=>(t&=63,t<36?e+=t.toString(36):t<62?e+=(t-26).toString(36).toUpperCase():t>62?e+=`-`:e+=`_`,e),``),Be=new Ce({converter:e=>{let t=A(),{width:n,height:r}=e,i={type:`image`,x:0,y:0,width:n,height:r,status:`saved`,fileId:t};return{files:{[t]:{id:t,mimeType:e.mimeType,dataURL:e.dataURL}},elements:[i]}}}),Ve=(e,t)=>[e,t],He=e=>e.replace(/\\n/g,`
|
|
9
|
+
`),j=e=>{let t={type:`line`,x:e.startX,y:e.startY,points:[Ve(0,0),Ve(e.endX-e.startX,e.endY-e.startY)],width:e.endX-e.startX,height:e.endY-e.startY,strokeStyle:e.strokeStyle||`solid`,strokeColor:e.strokeColor||`#000`,strokeWidth:e.strokeWidth||1};return e.groupId&&Object.assign(t,{groupIds:[e.groupId]}),e.id&&Object.assign(t,{id:e.id}),t},M=e=>{let t={type:`text`,x:e.x,y:e.y,width:e.width,height:e.height,text:He(e.text)||``,fontSize:e.fontSize,verticalAlign:`top`,strokeColor:e.color};return e.groupId&&Object.assign(t,{groupIds:[e.groupId]}),e.id&&Object.assign(t,{id:e.id}),t},N=e=>{let t={text:He(e?.label?.text||``),fontSize:e?.label?.fontSize,textAlign:e.label?.textAlign,verticalAlign:e.label?.verticalAlign||`middle`,strokeColor:e.label?.color||`#000`,...e.groupId?{groupIds:[e.groupId]}:{}},n={};e.type===`rectangle`&&e.subtype===`activation`&&(n={backgroundColor:`#e9ecef`,fillStyle:`solid`});let r={id:e.id,type:e.type,x:e.x,y:e.y,width:e.width,height:e.height,label:t,strokeStyle:e?.strokeStyle,strokeWidth:e?.strokeWidth,strokeColor:e?.strokeColor,backgroundColor:e?.bgColor,fillStyle:`solid`,...n};return e.groupId&&Object.assign(r,{groupIds:[e.groupId]}),r},Ue=e=>{let t={type:`arrow`,x:e.startX,y:e.startY,points:e.points?.map(([e,t])=>Ve(e,t))||[Ve(0,0),Ve(e.endX-e.startX,e.endY-e.startY)],width:e.endX-e.startX,height:e.endY-e.startY,strokeStyle:e?.strokeStyle||`solid`,endArrowhead:e?.endArrowhead||null,startArrowhead:e?.startArrowhead||null,label:{text:He(e?.label?.text||``),fontSize:16,textAlign:e?.label?.textAlign,verticalAlign:e?.label?.verticalAlign},roundness:{type:2},start:e.start,end:e.end};return e.groupId&&Object.assign(t,{groupIds:[e.groupId]}),t},We=10,Ge=16,Ke=24,qe=4,Je=e=>{if(!e)return!0;let t=e.trim().toLowerCase();return t===`transparent`||t===`none`||t===`rgba(0,0,0,0)`||t===`rgba(0, 0, 0, 0)`},Ye=(e,t)=>Math.max(20,Math.round(e.length*t*.6)),Xe=(e,t,n=!0)=>{let r=e,i=r.groupIds??[];if(i.includes(t)||(r.groupIds=[...i,t]),!n||!r.label)return;let a=r.label.groupIds??[];a.includes(t)||(r.label.groupIds=[...a,t])},Ze=new Ce({converter:e=>{let t=[],n=[];if(Object.values(e.nodes).forEach(e=>{!e||!e.length||e.forEach(e=>{let r;switch(e.type){case`line`:r=j(e);break;case`rectangle`:case`ellipse`:r=N(e);break;case`text`:r=M(e);break;default:throw`unknown type ${e.type}`}e.type===`rectangle`&&e?.subtype===`activation`?n.push(r):t.push(r)})}),Object.values(e.lines).forEach(e=>{e&&t.push(j(e))}),Object.values(e.arrows).forEach(e=>{e&&(t.push(Ue(e)),e.sequenceNumber&&t.push(N(e.sequenceNumber)))}),t.push(...n),e.loops){let{lines:n,texts:r,nodes:i}=e.loops;n.forEach(e=>{t.push(j(e))}),r.forEach(e=>{t.push(M(e))}),i.forEach(e=>{t.push(N(e))})}return e.groups&&e.groups.forEach(e=>{let{actorKeys:n,name:r}=e,i=1/0,a=1/0,o=0,s=0;if(!n.length)return;let c=t.filter(e=>{if(e.id){let t=e.id.indexOf(`-`),r=e.id.substring(0,t);return n.includes(r)}return!1});if(!c.length||(c.forEach(e=>{e.x===void 0||e.y===void 0||e.width===void 0||e.height===void 0||(i=Math.min(i,e.x),a=Math.min(a,e.y),o=Math.max(o,e.x+e.width),s=Math.max(s,e.y+e.height))}),!Number.isFinite(i)||!Number.isFinite(a)||!Number.isFinite(o)||!Number.isFinite(s)))return;let l=i-We,u=a-We,d=o-i+We*2,f=s-a+We*2,p=A(),m=A(),h=N({type:`rectangle`,x:l,y:u,width:d,height:f,bgColor:Je(e.fill)?void 0:e.fill,strokeColor:`#1f1f1f`,strokeWidth:1,id:p,groupId:m});if(t.unshift(h),t.forEach(e=>{e.id!==p&&(e.x===void 0||e.y===void 0||e.width===void 0||e.height===void 0||e.x>=i&&e.x+e.width<=o&&e.y>=a&&e.y+e.height<=s&&Xe(e,m))}),r){let e=M({type:`text`,id:A(),text:r,x:l+qe,y:u-Ke,width:Ye(r,Ge),height:24,fontSize:Ge,color:`#1f1f1f`,groupId:m});Xe(e,m,!1),t.push(e)}}),{elements:t}}}),Qe=new Ce({converter:e=>{let t=[];return e.nodes.forEach(e=>{!e||!e.length||e.forEach(e=>{let n;switch(e.type){case`line`:n=j(e);break;case`rectangle`:case`ellipse`:n=N(e);break;case`text`:n=M(e);break;default:throw`unknown type ${e.type}`}t.push(n)})}),Object.values(e.lines).forEach(e=>{e&&t.push(j(e))}),Object.values(e.arrows).forEach(e=>{if(!e)return;let n=Ue(e);t.push(n)}),Object.values(e.text).forEach(e=>{let n=M(e);t.push(n)}),Object.values(e.namespaces).forEach(n=>{let r=Object.keys(n.classes),i=[...r],a=[...e.lines,...e.arrows,...e.text];r.forEach(e=>{let t=a.filter(t=>t.metadata&&t.metadata.classId===e).map(e=>e.id);t.length&&i.push(...t)});let o={type:`frame`,id:A(),name:n.id,children:i};t.push(o)}),{elements:t}}}),$e=new Ce({converter:e=>{let t=[];return e.nodes.forEach(e=>{!e||!e.length||e.forEach(e=>{let n;switch(e.type){case`line`:n=j(e);break;case`rectangle`:case`ellipse`:n=N(e);break;case`text`:n=M(e);break;default:throw`unknown type ${e.type}`}t.push(n)})}),e.lines.forEach(e=>{t.push(j(e))}),e.arrows.forEach(e=>{t.push(Ue(e))}),e.text.forEach(e=>{t.push(M(e))}),{elements:t}}}),et=(e,t)=>[e,t],tt=16,nt=14,rt=1,it=`#000000`,at=5,ot=at*2,st=at*2,ct=1.25,lt=new Set([`choice`,`fork`,`join`,`stateStart`,`stateEnd`,`divider`]),ut=e=>e.shape===`stateEnd`?[`state_end_group_${e.id}`]:void 0,dt=e=>e.shape===`rectWithTitle`&&e.description.length?[e.text,...e.description].join(`
|
|
10
|
+
`):e.text,P,ft=()=>{if(P!==void 0)return P;if(typeof document>`u`)return P=null,P;try{P=document.createElement(`canvas`).getContext(`2d`)}catch{P=null}return P},F=(e,t)=>{let n=ft();return n?(n.font=`${t}px Excalifont, sans-serif`,n.measureText(e).width):e.length*t*.6},pt=(e,t,n)=>{if(F(e,t)<=n)return[e];let r=[],i=``;for(let a of e){let e=`${i}${a}`;if(i&&F(e,t)>n){r.push(i),i=a;continue}i=e}return i&&r.push(i),r},mt=(e,t,n)=>{if(!e.trim()||F(e,t)<=n)return e;let r=e.split(/\s+/).filter(Boolean),i=[],a=``;for(let e of r){let r=pt(e,t,n);for(let[e,o]of r.entries()){let r=a?`${a}${a&&e===0?` `:``}${o}`:o;if(F(r,t)<=n){a=r;continue}a&&i.push(a),a=o}r.length}return i.push(a),i.join(`
|
|
11
|
+
`)},ht=(e,t,n)=>{let r=e.map(e=>mt(e,t,n)).join(`
|
|
12
|
+
`).split(`
|
|
13
|
+
`);return{width:Math.max(...r.map(e=>F(e,t))),height:r.length*t*ct}},gt=(e,t,n,r)=>{let i=e.split(`
|
|
14
|
+
`);for(let e=tt;e>=nt;e-=rt){let{height:r}=ht(i,e,t);if(r<=n)return e}return r},_t=e=>{let t=dt(e);if(!t||lt.has(e.shape))return tt;let n=Math.max(1,e.width-ot),r=Math.max(1,e.height-st),i=t.split(`
|
|
15
|
+
`);return i.length>1&&Math.max(...i.map(e=>F(e,tt)))<=n?tt:gt(t,n,r,i.length===1?tt:nt)},vt=e=>{if(lt.has(e.shape))return;let t=dt(e);if(t)return{text:t,fontSize:_t(e),verticalAlign:e.shape===`rectWithTitle`||e.shape===`roundedWithTitle`?`top`:`middle`,...Ae(e.labelStyle)}},yt=e=>{let t=ke(e.containerStyle),n=vt(e),r=e.shape===`choice`?`diamond`:e.shape===`stateStart`||e.shape===`stateEnd`?`ellipse`:`rectangle`,i=e.shape===`rect`||e.shape===`rectWithTitle`||e.shape===`roundedWithTitle`,a=e.shape===`stateStart`||e.shape===`fork`||e.shape===`join`,o=t.backgroundColor||t.strokeColor||it,s=t.strokeColor||t.backgroundColor||it;return{id:e.id,type:r,...ut(e)?{groupIds:ut(e)}:{},x:e.x,y:e.y,width:e.width,height:e.height,...n?{label:n}:{},...t,...i?{roundness:{type:3}}:{},...a?{backgroundColor:o,strokeColor:s,fillStyle:`solid`}:{}}},bt=e=>{if(!e.dividerLine)return null;let t=ke(e.containerStyle);return{id:`${e.id}__divider`,type:`line`,x:e.dividerLine.startX,y:e.dividerLine.startY,width:e.dividerLine.endX-e.dividerLine.startX,height:e.dividerLine.endY-e.dividerLine.startY,points:[et(0,0),et(e.dividerLine.endX-e.dividerLine.startX,e.dividerLine.endY-e.dividerLine.startY)],strokeColor:t.strokeColor||`#000`,strokeWidth:t.strokeWidth||1}},xt=e=>{let t=ke(e.containerStyle),n=Math.max(2,Math.min(e.width,e.height)*.32),r=e.endInnerColor||t.strokeColor||t.backgroundColor||it;return{id:`${e.id}__inner`,type:`ellipse`,groupIds:ut(e),x:e.x+n,y:e.y+n,width:Math.max(1,e.width-n*2),height:Math.max(1,e.height-n*2),backgroundColor:r,strokeColor:r,fillStyle:`solid`,strokeWidth:1}},St=e=>{let t=e.reflectionPoints.map((e,t,n)=>{let r=n[0];return t===0?et(0,0):et(e.x-r.x,e.y-r.y)});return{id:e.id,type:`arrow`,x:e.startX,y:e.startY,width:e.endX-e.startX,height:e.endY-e.startY,points:t,strokeColor:e.strokeColor||`#000`,strokeWidth:e.strokeWidth||2,strokeStyle:e.strokeStyle||`solid`,endArrowhead:e.isNoteEdge?null:`triangle`,roundness:{type:2},start:{id:e.start},end:{id:e.end},...e.text?{label:{text:e.text,fontSize:16}}:{}}},Ct=new Ce({converter:e=>{let t=[];return e.nodes.forEach(e=>{if(!e.isRenderable)return;let n=yt(e);t.push(n);let r=bt(e);r&&t.push(r),e.shape===`stateEnd`&&t.push(xt(e))}),e.edges.forEach(e=>{t.push(St(e))}),{elements:t}}}),I=e=>{e=Tt(e);let t=e.replace(/#(\d+);/g,`&#$1;`).replace(/#([a-z]+);/g,`&$1;`),n=document.createElement(`textarea`);return n.innerHTML=t,n.value},L=e=>{let t=e.getAttribute(`transform`)?.match(/translate\(([ \d.-]+),\s*([\d.-]+)\)/),n=0,r=0;return t&&(n=Number(t[1]),r=Number(t[2])),{transformX:n,transformY:r}},wt=e=>{let t=e;return t=t.replace(/style.*:\S*#.*;/g,e=>e.substring(0,e.length-1)),t=t.replace(/classDef.*:\S*#.*;/g,e=>e.substring(0,e.length-1)),t=t.replace(/#\w+;/g,e=>{let t=e.substring(1,e.length-1);return/^\+?\d+$/.test(t)?`fl°°${t}¶ß`:`fl°${t}¶ß`}),t},Tt=function(e){return e.replace(/fl°°/g,`#`).replace(/fl°/g,`&`).replace(/¶ß/g,`;`)},Et=.5,Dt=(e,t=Et)=>{let n=[];return e.forEach(e=>{let r=n[n.length-1];if(!r){n.push(e);return}Math.hypot(e[0]-r[0],e[1]-r[1])<=t||n.push(e)}),n},Ot=e=>{let t=e.getAttribute(`d`);if(!t)return null;let n=Array.from(t.matchAll(/-?\d*\.?\d+(?:e[-+]?\d+)?/gi),e=>Number(e[0]));return n.length<4?null:{startX:n[0],startY:n[1],endX:n[n.length-2],endY:n[n.length-1]}},kt=e=>{let t=e.getAttribute(`data-points`);if(!t){let t=Ot(e);return t?[{x:t.startX,y:t.startY},{x:t.endX,y:t.endY}]:[]}try{let e=atob(t),n=JSON.parse(e);return Array.isArray(n)?n.filter(e=>e&&typeof e.x==`number`&&typeof e.y==`number`&&Number.isFinite(e.x)&&Number.isFinite(e.y)):[]}catch{return[]}},At=(e,t={x:0,y:0},n=`LM`)=>{if(e.tagName.toLowerCase()!==`path`)throw Error(`Invalid input: Expected an HTMLElement of tag "path", got ${e.tagName}`);let r=e.getAttribute(`d`);if(!r)throw Error(`Path element does not contain a "d" attribute`);let i=r.split(RegExp(`(?=[${n}])`)),a=i[0].substring(1).split(`,`).map(e=>parseFloat(e)),o=i[i.length-1].substring(1).split(`,`).map(e=>parseFloat(e)),s=i.map(e=>{let t=e[0],n=e.substring(1).split(`,`).map(e=>parseFloat(e));return t===`C`?{x:n[4],y:n[5],command:t}:{x:n[0],y:n[1],command:t}}).filter((e,t,n)=>{if(t===0||t===n.length-1)return!0;if(e.x===n[t-1].x&&e.y===n[t-1].y||t===n.length-2&&e.command===`C`)return!1;if(t===n.length-2&&(n[t-1].x===e.x||n[t-1].y===e.y)){let t=n[n.length-1];return Math.hypot(t.x-e.x,t.y-e.y)>20}return e.x!==n[t-1].x||e.y!==n[t-1].y}).map(e=>({x:e.x+t.x,y:e.y+t.y}));return{startX:a[0]+t.x,startY:a[1]+t.y,endX:o[0]+t.x,endY:o[1]+t.y,reflectionPoints:s}},jt=e=>({...e,elements:e.elements.map(e=>{if(!(`points`in e)||!Array.isArray(e.points))return e;let t=e.points;if(t.length<2)return e;let n=Dt(t);return n.length===t.length?e:{...e,points:n}})}),Mt=(e,t={})=>jt((()=>{switch(e.type){case`graphImage`:return Be.convert(e,t);case`flowchart`:return ze.convert(e,t);case`sequence`:return Ze.convert(e,t);case`class`:return Qe.convert(e,t);case`erd`:return $e.convert(e,t);case`state`:return Ct.convert(e,t);default:throw Error(`graphToExcalidraw: unknown graph type "${e.type}, only flowcharts are supported!"`)}})());function Nt(e){let t=e?.constructor;return e===(typeof t==`function`?t.prototype:Object.prototype)}function Pt(e){if(e==null)return!0;if(pe(e))return typeof e.splice!=`function`&&typeof e!=`string`&&!ae(e)&&!fe(e)&&!me(e)?!1:e.length===0;if(typeof e==`object`||typeof e==`function`){if(e instanceof Map||e instanceof Set)return e.size===0;let t=Object.keys(e);return Nt(e)?t.filter(e=>e!==`constructor`).length===0:t.length===0}return!0}var Ft=`comm`,It=`rule`,Lt=`decl`,Rt=`@import`,zt=`@namespace`,Bt=`@keyframes`,Vt=`@layer`,Ht=Math.abs,Ut=String.fromCharCode;function Wt(e){return e.trim()}function Gt(e,t,n){return e.replace(t,n)}function R(e,t){return e.charCodeAt(t)|0}function z(e,t,n){return e.slice(t,n)}function B(e){return e.length}function Kt(e){return e.length}function qt(e,t){return t.push(e),e}var Jt=1,V=1,Yt=0,H=0,U=0,Xt=``;function Zt(e,t,n,r,i,a,o,s){return{value:e,root:t,parent:n,type:r,props:i,children:a,line:Jt,column:V,length:o,return:``,siblings:s}}function Qt(){return U}function $t(){return U=H>0?R(Xt,--H):0,V--,U===10&&(V=1,Jt--),U}function W(){return U=H<Yt?R(Xt,H++):0,V++,U===10&&(V=1,Jt++),U}function G(){return R(Xt,H)}function en(){return H}function tn(e,t){return z(Xt,e,t)}function nn(e){switch(e){case 0:case 9:case 10:case 13:case 32:return 5;case 33:case 43:case 44:case 47:case 62:case 64:case 126:case 59:case 123:case 125:return 4;case 58:return 3;case 34:case 39:case 40:case 91:return 2;case 41:case 93:return 1}return 0}function rn(e){return Jt=V=1,Yt=B(Xt=e),H=0,[]}function an(e){return Xt=``,e}function on(e){return Wt(tn(H-1,ln(e===91?e+2:e===40?e+1:e)))}function sn(e){for(;(U=G())&&U<33;)W();return nn(e)>2||nn(U)>3?``:` `}function cn(e,t){for(;--t&&W()&&!(U<48||U>102||U>57&&U<65||U>70&&U<97););return tn(e,en()+(t<6&&G()==32&&W()==32))}function ln(e){for(;W();)switch(U){case e:return H;case 34:case 39:e!==34&&e!==39&&ln(U);break;case 40:e===41&&ln(e);break;case 92:W();break}return H}function un(e,t){for(;W()&&e+U!==57&&!(e+U===84&&G()===47););return`/*`+tn(t,H-1)+`*`+Ut(e===47?e:W())}function dn(e){for(;!nn(G());)W();return tn(e,H)}function fn(e){return an(pn(``,null,null,null,[``],e=rn(e),0,[0],e))}function pn(e,t,n,r,i,a,o,s,c){for(var l=0,u=0,d=o,f=0,p=0,m=0,h=1,g=1,_=1,v=0,y=0,b=``,x=i,S=a,C=r,w=b;g;)switch(m=y,y=W()){case 40:m!=108&&R(w,d-1)==58?(v++,w+=`(`):w+=on(y);break;case 41:v--,w+=`)`;break;case 34:case 39:case 91:w+=on(y);break;case 9:case 10:case 13:case 32:if(v>0){w+=Ut(y);break}w+=sn(m);break;case 92:w+=cn(en()-1,7);continue;case 47:switch(G()){case 42:case 47:qt(hn(un(W(),en()),t,n,c),c),(nn(m||1)==5||nn(G()||1)==5)&&B(w)&&z(w,-1,void 0)!==` `&&(w+=` `);break;default:w+=`/`}break;case 123*h:s[l++]=B(w)*_;case 125*h:case 59:case 0:if(v>0&&y){w+=Ut(y);break}switch(y){case 0:case 125:g=0;case 59+u:_==-1&&(w=Gt(w,/\f/g,``)),p>0&&(B(w)-d||h===0)&&qt(p>32?gn(w+`;`,r,n,d-1,c):gn(Gt(w,` `,``)+`;`,r,n,d-2,c),c);break;case 59:w+=`;`;default:if(qt(C=mn(w,t,n,l,u,i,s,b,x=[],S=[],d,a),a),y===123)if(u===0)pn(w,t,C,C,x,a,d,s,S);else{switch(f){case 99:if(R(w,3)===110)break;case 108:if(R(w,2)===97)break;default:u=0;case 100:case 109:case 115:}u?pn(e,C,C,r&&qt(mn(e,C,C,0,0,i,s,b,i,x=[],d,S),S),i,S,d,s,r?x:S):pn(w,C,C,C,[``],S,0,s,S)}}l=u=p=0,h=_=1,b=w=``,d=o;break;case 58:d=1+B(w),p=m;default:if(h<1){if(y==123)--h;else if(y==125&&h++==0&&$t()==125)continue}switch(w+=Ut(y),y*h){case 38:_=u>0?1:(w+=`\f`,-1);break;case 44:if(v>0)break;s[l++]=(B(w)-1)*_,_=1;break;case 64:G()===45&&(w+=on(W())),f=G(),u=d=B(b=w+=dn(en())),y++;break;case 45:m===45&&B(w)==2&&(h=0)}}return a}function mn(e,t,n,r,i,a,o,s,c,l,u,d){for(var f=i-1,p=i===0?a:[``],m=Kt(p),h=0,g=0,_=0;h<r;++h)for(var v=0,y=z(e,f+1,f=Ht(g=o[h])),b=e;v<m;++v)(b=Wt(g>0?p[v]+` `+y:Gt(y,/&\f/g,p[v])))&&(c[_++]=b);return Zt(e,t,n,i===0?It:s,c,l,u,d)}function hn(e,t,n,r){return Zt(e,t,n,Ft,Ut(Qt()),z(e,2,-2),0,r)}function gn(e,t,n,r,i){return Zt(e,t,n,Lt,z(e,0,r),z(e,r+1,-1),r,i)}function _n(e,t){for(var n=``,r=0;r<e.length;r++)n+=t(e[r],r,e,t)||``;return n}function vn(e,t,n,r){switch(e.type){case Vt:if(e.children.length)break;case Rt:case zt:case Lt:return e.return=e.return||e.value;case Ft:return``;case Bt:return e.return=e.value+`{`+_n(e.children,r)+`}`;case It:if(!B(e.value=e.props.join(`,`)))return``}return B(n=_n(e.children,r))?e.return=e.value+`{`+n+`}`:``}function yn(e){var t=Kt(e);return function(n,r,i,a){for(var o=``,s=0;s<t;s++)o+=e[s](n,r,i,a)||``;return o}}var bn=`c4`,xn={id:bn,detector:r(e=>/^\s*C4Context|C4Container|C4Component|C4Dynamic|C4Deployment/.test(e),`detector`),loader:r(async()=>{let{diagram:e}=await n(async()=>{let{diagram:e}=await import(`./c4Diagram-7LVT6UL2-BZXD1Ljd.js`);return{diagram:e}},__vite__mapDeps([0,1,2,3,4,5,6,7,8,9,10,11,12,13,14]));return{id:bn,diagram:e}},`loader`)},Sn=`flowchart`,Cn={id:Sn,detector:r((e,t)=>t?.flowchart?.defaultRenderer===`dagre-wrapper`||t?.flowchart?.defaultRenderer===`elk`?!1:/^\s*graph/.test(e),`detector`),loader:r(async()=>{let{diagram:e}=await n(async()=>{let{diagram:e}=await import(`./flowDiagram-HODETNUW-CDbLbKxh.js`);return{diagram:e}},__vite__mapDeps([15,5,2,1,3,4,6,7,8,9,10,11,12,13,16,17,18,19,20,21,22,23,14,24,25,26,27,28]));return{id:Sn,diagram:e}},`loader`)},wn=`flowchart-v2`,Tn={id:wn,detector:r((e,t)=>t?.flowchart?.defaultRenderer===`dagre-d3`?!1:(t?.flowchart?.defaultRenderer===`elk`&&(t.layout=`elk`),/^\s*graph/.test(e)&&t?.flowchart?.defaultRenderer===`dagre-wrapper`?!0:/^\s*flowchart/.test(e)),`detector`),loader:r(async()=>{let{diagram:e}=await n(async()=>{let{diagram:e}=await import(`./flowDiagram-HODETNUW-CDbLbKxh.js`);return{diagram:e}},__vite__mapDeps([15,5,2,1,3,4,6,7,8,9,10,11,12,13,16,17,18,19,20,21,22,23,14,24,25,26,27,28]));return{id:wn,diagram:e}},`loader`)},En=`swimlane`,Dn={id:En,detector:r(e=>/^\s*swimlane-beta\b/.test(e),`detector`),loader:r(async()=>{let{diagram:e}=await n(async()=>{let{diagram:e}=await import(`./swimlanesDiagram-VR7AAH4N-DNMa4iz7.js`);return{diagram:e}},__vite__mapDeps([29,4,5,2,1,3,6,7,8,9,10,11,12,13,16,17,18,19,20,21,22,23,14,24,25,26,27,28]));return{id:En,diagram:e}},`loader`)},On=`er`,kn={id:On,detector:r(e=>/^\s*erDiagram/.test(e),`detector`),loader:r(async()=>{let{diagram:e}=await n(async()=>{let{diagram:e}=await import(`./erDiagram-RLTQ6QDP-DfsK-we8.js`);return{diagram:e}},__vite__mapDeps([30,1,2,3,4,5,6,27,7,8,9,10,11,12,13,16,17,18,19,20,21,23,24,25]));return{id:On,diagram:e}},`loader`)},An=`gitGraph`,jn={id:An,detector:r(e=>/^\s*gitGraph/.test(e),`detector`),loader:r(async()=>{let{diagram:e}=await n(async()=>{let{diagram:e}=await import(`./gitGraphDiagram-WWUBYQGX-VNkA4Uf5.js`);return{diagram:e}},__vite__mapDeps([31,1,2,3,4,5,6,7,8,32,33,34,35]));return{id:An,diagram:e}},`loader`)},Mn=`gantt`,Nn={id:Mn,detector:r(e=>/^\s*gantt/.test(e),`detector`),loader:r(async()=>{let{diagram:e}=await n(async()=>{let{diagram:e}=await import(`./ganttDiagram-EL5Y4UJY--q244SRn.js`);return{diagram:e}},__vite__mapDeps([36,2,37,1,3,38,39,4,5,6,8,7]));return{id:Mn,diagram:e}},`loader`)},Pn=`info`,Fn={id:Pn,detector:r(e=>/^\s*info/.test(e),`detector`),loader:r(async()=>{let{diagram:e}=await n(async()=>{let{diagram:e}=await import(`./infoDiagram-27XIBGKW-BqdWJsQl.js`);return{diagram:e}},__vite__mapDeps([40,4,5,2,1,3,6,41,32,33]));return{id:Pn,diagram:e}},`loader`)},In=`pie`,Ln={id:In,detector:r(e=>/^\s*pie/.test(e),`detector`),loader:r(async()=>{let{diagram:e}=await n(async()=>{let{diagram:e}=await import(`./pieDiagram-E7YTZNPT-BeIds11Q.js`);return{diagram:e}},__vite__mapDeps([42,4,5,2,1,3,6,43,39,20,8,44,21,7,41,32,33,34]));return{id:In,diagram:e}},`loader`)},Rn=`quadrantChart`,zn={id:Rn,detector:r(e=>/^\s*quadrantChart/.test(e),`detector`),loader:r(async()=>{let{diagram:e}=await n(async()=>{let{diagram:e}=await import(`./quadrantDiagram-AXDQQJYC-CU25DqZi.js`);return{diagram:e}},__vite__mapDeps([45,37,1,2,3,38,39,4,5,6]));return{id:Rn,diagram:e}},`loader`)},Bn=`xychart`,Vn={id:Bn,detector:r(e=>/^\s*xychart(-beta)?/.test(e),`detector`),loader:r(async()=>{let{diagram:e}=await n(async()=>{let{diagram:e}=await import(`./xychartDiagram-S5SC5T6Z-zv0t5rP8.js`);return{diagram:e}},__vite__mapDeps([46,37,1,2,3,38,39,4,5,6,43,7,8,19,20,21,41,10,11]));return{id:Bn,diagram:e}},`loader`)},Hn=`requirement`,Un={id:Hn,detector:r(e=>/^\s*requirement(Diagram)?/.test(e),`detector`),loader:r(async()=>{let{diagram:e}=await n(async()=>{let{diagram:e}=await import(`./requirementDiagram-BXWQKSXE-BOtLvnrn.js`);return{diagram:e}},__vite__mapDeps([47,4,5,2,1,3,6,7,8,9,10,11,12,13,16,17,18,19,20,21,23,24,25]));return{id:Hn,diagram:e}},`loader`)},Wn=`sequence`,Gn={id:Wn,detector:r(e=>/^\s*sequenceDiagram/.test(e),`detector`),loader:r(async()=>{let{diagram:e}=await n(async()=>{let{diagram:e}=await import(`./sequenceDiagram-WJ2MYXX4-xPYJuZXx.js`);return{diagram:e}},__vite__mapDeps([48,1,2,3,4,5,6,8,7,22,14,35]));return{id:Wn,diagram:e}},`loader`)},Kn=`class`,qn={id:Kn,detector:r((e,t)=>t?.class?.defaultRenderer===`dagre-wrapper`?!1:/^\s*classDiagram/.test(e),`detector`),loader:r(async()=>{let{diagram:e}=await n(async()=>{let{diagram:e}=await import(`./classDiagram-ZZMXUADV-Dr70HO4g.js`);return{diagram:e}},__vite__mapDeps([49,4,5,2,1,3,6,7,8,9,10,11,12,13,16,17,18,19,20,21,23,14,24,25,50,28]));return{id:Kn,diagram:e}},`loader`)},Jn=`classDiagram`,Yn={id:Jn,detector:r((e,t)=>/^\s*classDiagram/.test(e)&&t?.class?.defaultRenderer===`dagre-wrapper`?!0:/^\s*classDiagram-v2/.test(e),`detector`),loader:r(async()=>{let{diagram:e}=await n(async()=>{let{diagram:e}=await import(`./classDiagram-v2-VYDZK3BY-Dr70HO4g.js`);return{diagram:e}},__vite__mapDeps([51,4,5,2,1,3,6,7,8,9,10,11,12,13,16,17,18,19,20,21,23,14,24,25,50,28]));return{id:Jn,diagram:e}},`loader`)},Xn=`state`,Zn={id:Xn,detector:r((e,t)=>t?.state?.defaultRenderer===`dagre-wrapper`?!1:/^\s*stateDiagram/.test(e),`detector`),loader:r(async()=>{let{diagram:e}=await n(async()=>{let{diagram:e}=await import(`./stateDiagram-D77RDMKH-CoSi3U2M.js`);return{diagram:e}},__vite__mapDeps([52,1,2,3,4,5,6,7,8,19,20,21,9,10,11,12,13,16,17,18,53,54,23,14,24,25,55]));return{id:Xn,diagram:e}},`loader`)},Qn=`stateDiagram`,$n={id:Qn,detector:r((e,t)=>!!(/^\s*stateDiagram-v2/.test(e)||/^\s*stateDiagram/.test(e)&&t?.state?.defaultRenderer===`dagre-wrapper`),`detector`),loader:r(async()=>{let{diagram:e}=await n(async()=>{let{diagram:e}=await import(`./stateDiagram-v2-MP3YSRHH-rm3bOnma.js`);return{diagram:e}},__vite__mapDeps([56,4,5,2,1,3,6,7,8,9,10,11,12,13,16,17,18,19,20,21,23,14,24,25,55]));return{id:Qn,diagram:e}},`loader`)},er=`journey`,tr={id:er,detector:r(e=>/^\s*journey/.test(e),`detector`),loader:r(async()=>{let{diagram:e}=await n(async()=>{let{diagram:e}=await import(`./journeyDiagram-3NMN7TZE-CUxgRucN.js`);return{diagram:e}},__vite__mapDeps([57,1,2,3,4,5,6,44,20,8,28,14]));return{id:er,diagram:e}},`loader`)},nr={draw:r((e,t,n)=>{a.debug(`rendering svg for syntax error
|
|
16
|
+
`);let r=he(t),i=r.append(`g`);r.attr(`viewBox`,`0 0 2412 512`),S(r,100,512,!0),i.append(`path`).attr(`class`,`error-icon`).attr(`d`,`m411.313,123.313c6.25-6.25 6.25-16.375 0-22.625s-16.375-6.25-22.625,0l-32,32-9.375,9.375-20.688-20.688c-12.484-12.5-32.766-12.5-45.25,0l-16,16c-1.261,1.261-2.304,2.648-3.31,4.051-21.739-8.561-45.324-13.426-70.065-13.426-105.867,0-192,86.133-192,192s86.133,192 192,192 192-86.133 192-192c0-24.741-4.864-48.327-13.426-70.065 1.402-1.007 2.79-2.049 4.051-3.31l16-16c12.5-12.492 12.5-32.758 0-45.25l-20.688-20.688 9.375-9.375 32.001-31.999zm-219.313,100.687c-52.938,0-96,43.063-96,96 0,8.836-7.164,16-16,16s-16-7.164-16-16c0-70.578 57.422-128 128-128 8.836,0 16,7.164 16,16s-7.164,16-16,16z`),i.append(`path`).attr(`class`,`error-icon`).attr(`d`,`m459.02,148.98c-6.25-6.25-16.375-6.25-22.625,0s-6.25,16.375 0,22.625l16,16c3.125,3.125 7.219,4.688 11.313,4.688 4.094,0 8.188-1.563 11.313-4.688 6.25-6.25 6.25-16.375 0-22.625l-16.001-16z`),i.append(`path`).attr(`class`,`error-icon`).attr(`d`,`m340.395,75.605c3.125,3.125 7.219,4.688 11.313,4.688 4.094,0 8.188-1.563 11.313-4.688 6.25-6.25 6.25-16.375 0-22.625l-16-16c-6.25-6.25-16.375-6.25-22.625,0s-6.25,16.375 0,22.625l15.999,16z`),i.append(`path`).attr(`class`,`error-icon`).attr(`d`,`m400,64c8.844,0 16-7.164 16-16v-32c0-8.836-7.156-16-16-16-8.844,0-16,7.164-16,16v32c0,8.836 7.156,16 16,16z`),i.append(`path`).attr(`class`,`error-icon`).attr(`d`,`m496,96.586h-32c-8.844,0-16,7.164-16,16 0,8.836 7.156,16 16,16h32c8.844,0 16-7.164 16-16 0-8.836-7.156-16-16-16z`),i.append(`path`).attr(`class`,`error-icon`).attr(`d`,`m436.98,75.605c3.125,3.125 7.219,4.688 11.313,4.688 4.094,0 8.188-1.563 11.313-4.688l32-32c6.25-6.25 6.25-16.375 0-22.625s-16.375-6.25-22.625,0l-32,32c-6.251,6.25-6.251,16.375-0.001,22.625z`),i.append(`text`).attr(`class`,`error-text`).attr(`x`,1440).attr(`y`,250).attr(`font-size`,`150px`).style(`text-anchor`,`middle`).text(`Syntax error in text`),i.append(`text`).attr(`class`,`error-text`).attr(`x`,1250).attr(`y`,400).attr(`font-size`,`100px`).style(`text-anchor`,`middle`).text(`mermaid version ${n}`)},`draw`)},rr=nr,ir={db:{},renderer:nr,parser:{parse:r(()=>{},`parse`)}},ar=`flowchart-elk`,or={id:ar,detector:r((e,t={})=>/^\s*flowchart-elk/.test(e)||/^\s*(flowchart|graph)/.test(e)&&t?.flowchart?.defaultRenderer===`elk`?(t.layout=`elk`,!0):!1,`detector`),loader:r(async()=>{let{diagram:e}=await n(async()=>{let{diagram:e}=await import(`./flowDiagram-HODETNUW-CDbLbKxh.js`);return{diagram:e}},__vite__mapDeps([15,5,2,1,3,4,6,7,8,9,10,11,12,13,16,17,18,19,20,21,22,23,14,24,25,26,27,28]));return{id:ar,diagram:e}},`loader`)},sr=`timeline`,cr={id:sr,detector:r(e=>/^\s*timeline/.test(e),`detector`),loader:r(async()=>{let{diagram:e}=await n(async()=>{let{diagram:e}=await import(`./timeline-definition-24CTP7MA-5lxZ3j2p.js`);return{diagram:e}},__vite__mapDeps([58,1,2,3,4,5,6,44,20,8,7,41]));return{id:sr,diagram:e}},`loader`)},lr=`mindmap`,ur={id:lr,detector:r(e=>/^\s*mindmap/.test(e),`detector`),loader:r(async()=>{let{diagram:e}=await n(async()=>{let{diagram:e}=await import(`./mindmap-definition-YA3MSWOX-5mxipwqK.js`);return{diagram:e}},__vite__mapDeps([59,4,5,2,1,3,6,7,8,9,10,11,12,13,16,17,18,19,20,21,23,24,25]));return{id:lr,diagram:e}},`loader`)},dr=`kanban`,fr={id:dr,detector:r(e=>/^\s*kanban/.test(e),`detector`),loader:r(async()=>{let{diagram:e}=await n(async()=>{let{diagram:e}=await import(`./kanban-definition-UXKFOSKX-NRYyPh3u.js`);return{diagram:e}},__vite__mapDeps([60,4,5,2,1,3,6,7,8,41,9,10,11,12,13,16,17,22,28]));return{id:dr,diagram:e}},`loader`)},pr=`sankey`,mr={id:pr,detector:r(e=>/^\s*sankey(-beta)?/.test(e),`detector`),loader:r(async()=>{let{diagram:e}=await n(async()=>{let{diagram:e}=await import(`./sankeyDiagram-P5KCCOFB-d8cZjl2R.js`);return{diagram:e}},__vite__mapDeps([61,1,2,3,4,5,6,43,39]));return{id:pr,diagram:e}},`loader`)},hr=`packet`,gr={id:hr,detector:r(e=>/^\s*packet(-beta)?/.test(e),`detector`),loader:r(async()=>{let{diagram:e}=await n(async()=>{let{diagram:e}=await import(`./diagram-Z3DM3KII-BlTEnFH3.js`);return{diagram:e}},__vite__mapDeps([62,4,5,2,1,3,6,7,8,41,32,33,34]));return{id:hr,diagram:e}},`loader`)},_r=`radar`,vr={id:_r,detector:r(e=>/^\s*radar-beta/.test(e),`detector`),loader:r(async()=>{let{diagram:e}=await n(async()=>{let{diagram:e}=await import(`./diagram-UQ7AKVKN-D_FPs5n4.js`);return{diagram:e}},__vite__mapDeps([63,4,5,2,1,3,6,7,8,41,32,33,34]));return{id:_r,diagram:e}},`loader`)},yr=`block`,br={id:yr,detector:r(e=>/^\s*block(-beta)?/.test(e),`detector`),loader:r(async()=>{let{diagram:e}=await n(async()=>{let{diagram:e}=await import(`./blockDiagram-I7D4REHJ-D5aVJWK4.js`);return{diagram:e}},__vite__mapDeps([64,1,2,3,4,5,6,27,7,8,9,10,11,12,13,16,18,19,20,21,53,28]));return{id:yr,diagram:e}},`loader`)},xr=`treeView`,Sr={id:xr,detector:r(e=>/^\s*treeView-beta/.test(e),`detector`),loader:r(async()=>{let{diagram:e}=await n(async()=>{let{diagram:e}=await import(`./diagram-S7CK7UJ4-Bx7un_r7.js`);return{diagram:e}},__vite__mapDeps([65,4,5,2,1,3,6,7,8,41,10,32,33,34,35]));return{id:xr,diagram:e}},`loader`)},Cr=`architecture`,wr={id:Cr,detector:r(e=>/^\s*architecture/.test(e),`detector`),loader:r(async()=>{let{diagram:e}=await n(async()=>{let{diagram:e}=await import(`./architectureDiagram-5GKGNRK7-EUaFLg_N.js`);return{diagram:e}},__vite__mapDeps([66,2,1,3,4,5,6,7,8,41,10,11,32,33,34,67]));return{id:Cr,diagram:e}},`loader`)},Tr=`eventmodeling`,Er={id:Tr,detector:r(e=>/^\s*eventmodeling/.test(e),`detector`),loader:r(async()=>{let{diagram:e}=await n(async()=>{let{diagram:e}=await import(`./diagram-VSXAHHWV-DOlaViPU.js`);return{diagram:e}},__vite__mapDeps([68,1,2,3,4,5,6,7,8,33,32,34]));return{id:Tr,diagram:e}},`loader`)},Dr=`ishikawa`,Or={id:Dr,detector:r(e=>/^\s*ishikawa(-beta)?\b/i.test(e),`detector`),loader:r(async()=>{let{diagram:e}=await n(async()=>{let{diagram:e}=await import(`./ishikawaDiagram-5VMMS53U-BQDvfXPM.js`);return{diagram:e}},__vite__mapDeps([69,4,5,2,1,3,6,7,8,41,13]));return{id:Dr,diagram:e}},`loader`)},kr=`venn`,Ar={id:kr,detector:r(e=>/^\s*venn-beta/.test(e),`detector`),loader:r(async()=>{let{diagram:e}=await n(async()=>{let{diagram:e}=await import(`./vennDiagram-4TSXK5OY-BNF-a0iW.js`);return{diagram:e}},__vite__mapDeps([70,1,2,3,4,5,6,7,8,41,13]));return{id:kr,diagram:e}},`loader`)},jr=`treemap`,Mr={id:jr,detector:r(e=>/^\s*treemap/.test(e),`detector`),loader:r(async()=>{let{diagram:e}=await n(async()=>{let{diagram:e}=await import(`./diagram-VX7I27RA-W3tftqeG.js`);return{diagram:e}},__vite__mapDeps([71,1,2,3,4,5,6,43,39,38,7,8,41,9,32,33,34,25]));return{id:jr,diagram:e}},`loader`)},Nr=`wardley`,Pr={id:Nr,detector:r(e=>/^\s*wardley-beta/i.test(e),`detector`),loader:r(async()=>{let{diagram:e}=await n(async()=>{let{diagram:e}=await import(`./wardleyDiagram-VM6X3IG4-X0WeO3Ol.js`);return{diagram:e}},__vite__mapDeps([72,4,5,2,1,3,6,7,8,41,32,33,34]));return{id:Nr,diagram:e}},`loader`)},Fr=`cynefin`,Ir={id:Fr,detector:r(e=>/^\s*cynefin-beta(?:[\s:]|$)/.test(e),`detector`),loader:r(async()=>{let{diagram:e}=await n(async()=>{let{diagram:e}=await import(`./cynefinDiagram-5FMLGOSQ-BBadT3J7.js`);return{diagram:e}},__vite__mapDeps([73,4,5,2,1,3,6,7,8,41,32,33,34]));return{id:Fr,diagram:e}},`loader`)},Lr=`railroad`,Rr={id:Lr,detector:r(e=>/^\s*railroad-beta/i.test(e),`detector`),loader:r(async()=>{let{diagram:e}=await n(async()=>{let{diagram:e}=await import(`./railroadDiagram-O6MQD6OU-B3-CeGkJ.js`);return{diagram:e}},__vite__mapDeps([74,4,5,2,1,3,6,41,32,33,75,34]));return{id:Lr,diagram:e}},`loader`)},zr=`railroadEbnf`,Br={id:zr,detector:r(e=>/^\s*railroad-ebnf-beta/i.test(e),`detector`),loader:r(async()=>{let{diagram:e}=await n(async()=>{let{diagram:e}=await import(`./ebnfDiagram-PWID7BFC-V5TBUB27.js`);return{diagram:e}},__vite__mapDeps([76,4,5,2,1,3,6,41,32,33,75,34]));return{id:zr,diagram:e}},`loader`)},Vr=`railroadAbnf`,Hr={id:Vr,detector:r(e=>/^\s*railroad-abnf-beta/i.test(e),`detector`),loader:r(async()=>{let{diagram:e}=await n(async()=>{let{diagram:e}=await import(`./abnfDiagram-VCTEODGH-CfNYg36y.js`);return{diagram:e}},__vite__mapDeps([77,4,5,2,1,3,6,41,32,33,75,34]));return{id:Vr,diagram:e}},`loader`)},Ur=`railroadPeg`,Wr={id:Ur,detector:r(e=>/^\s*railroad-peg-beta/i.test(e),`detector`),loader:r(async()=>{let{diagram:e}=await n(async()=>{let{diagram:e}=await import(`./pegDiagram-XKGWAZYB-CZgEH2ik.js`);return{diagram:e}},__vite__mapDeps([78,4,5,2,1,3,6,41,32,33,75,34]));return{id:Ur,diagram:e}},`loader`)},Gr=!1,Kr=r(()=>{Gr||(Gr=!0,d(`error`,ir,e=>e.toLowerCase().trim()===`error`),d(`---`,{db:{clear:r(()=>{},`clear`)},styles:{},renderer:{draw:r(()=>{},`draw`)},parser:{parse:r(()=>{throw Error("Diagrams beginning with --- are not valid. If you were trying to use a YAML front-matter, please ensure that you've correctly opened and closed the YAML front-matter with un-indented `---` blocks")},`parse`)},init:r(()=>null,`init`)},e=>e.toLowerCase().trimStart().startsWith(`---`)),f(or,ur,wr),f(xn,fr,Yn,qn,kn,Nn,Fn,Ln,Un,Gn,Dn,Tn,Cn,cr,jn,$n,Zn,tr,zn,mr,gr,Vn,br,Er,Sr,vr,Or,Mr,Rr,Br,Hr,Wr,Ar,Pr,Ir))},`addDiagrams`),qr=r(async()=>{a.debug(`Loading registered diagrams`);let e=(await Promise.allSettled(Object.entries(T).map(async([e,{detector:t,loader:n}])=>{if(n)try{m(e)}catch{try{let{diagram:e,id:r}=await n();d(r,e,t)}catch(t){throw a.error(`Failed to load external diagram with key ${e}. Removing from detectors.`),delete T[e],t}}}))).filter(e=>e.status===`rejected`);if(e.length>0){a.error(`Failed to load ${e.length} external diagrams`);for(let t of e)a.error(t);throw Error(`Failed to load ${e.length} external diagrams`)}},`loadRegisteredDiagrams`),Jr=`graphics-document document`;function Yr(e,t){e.attr(`role`,Jr),t!==``&&e.attr(`aria-roledescription`,t)}r(Yr,`setA11yDiagramInfo`);function Xr(e,t,n,r){if(e.insert!==void 0){if(n){let t=`chart-desc-${r}`;e.attr(`aria-describedby`,t),e.insert(`desc`,`:first-child`).attr(`id`,t).text(n)}if(t){let n=`chart-title-${r}`;e.attr(`aria-labelledby`,n),e.insert(`title`,`:first-child`).attr(`id`,n).text(t)}}}r(Xr,`addSVGa11yTitleDescription`);var Zr=class e{constructor(e,t,n,r,i){this.type=e,this.text=t,this.db=n,this.parser=r,this.renderer=i}static{r(this,`Diagram`)}static async fromText(t,n={}){let r=x(),i=te(t,r);t=de(t)+`
|
|
17
|
+
`;try{m(i)}catch{let e=s(i);if(!e)throw new re(`Diagram ${i} not found.`);let{id:t,diagram:n}=await e();d(t,n)}let{db:a,parser:o,renderer:c,init:l}=m(i);return o.parser&&(o.parser.yy=a),a.clear?.(),l?.(r),n.title&&a.setDiagramTitle?.(n.title),await o.parse(t),new e(i,t,a,o,c)}async render(e,t){await this.renderer.draw(this.text,e,t,this)}getParser(){return this.parser}getType(){return this.type}},Qr=[],$r=r(()=>{Qr.forEach(e=>{e()}),Qr=[]},`attachFunctions`),ei=r(e=>e.replace(/^\s*%%(?!{)[^\n]+\n?/gm,``).trimStart(),`cleanupComments`);function ti(e){let t=e.match(b);if(!t)return{text:e,metadata:{}};let n=t[1],r=ve(n?t[2].split(`
|
|
18
|
+
`).map(e=>e.startsWith(n)?e.slice(n.length):e).join(`
|
|
19
|
+
`):t[2],{schema:ye})??{};r=typeof r==`object`&&!Array.isArray(r)?r:{};let i={};return r.displayMode&&(i.displayMode=r.displayMode.toString()),r.title&&(i.title=r.title.toString()),r.config&&(i.config=r.config),{text:e.slice(t[0].length),metadata:i}}r(ti,`extractFrontMatter`);var ni=r(e=>e.replace(/\r\n?/g,`
|
|
20
|
+
`).replace(/<(\w+)([^>]*)>/g,(e,t,n)=>`<`+t+n.replace(/="([^"]*)"/g,`='$1'`)+`>`),`cleanupText`),ri=r(e=>{let{text:t,metadata:n}=ti(e),{displayMode:r,title:i,config:a={}}=n;return r&&(a.gantt||={},a.gantt.displayMode=r),{title:i,config:a,text:t}},`processFrontmatter`),ii=r(e=>{let t=ce.detectInit(e)??{},n=ce.detectDirective(e,`wrap`);return Array.isArray(n)?t.wrap=n.some(({type:e})=>e===`wrap`):n?.type===`wrap`&&(t.wrap=!0),{text:le(e),directive:t}},`processDirectives`);function ai(e){let t=ri(ni(e)),n=ii(t.text),r=ue(t.config,n.directive);return e=ei(n.text),{code:e,title:t.title,config:r}}r(ai,`preprocessDiagram`);function oi(e){let t=new TextEncoder().encode(e),n=Array.from(t,e=>String.fromCodePoint(e)).join(``);return btoa(n)}r(oi,`toBase64`);var si=5e4,ci=`graph TB;a[Maximum text size in diagram exceeded];style a fill:#faa`,li=`sandbox`,ui=`loose`,di=`http://www.w3.org/2000/svg`,fi=`http://www.w3.org/1999/xlink`,pi=`http://www.w3.org/1999/xhtml`,mi=`100%`,hi=`100%`,gi=`border:0;margin:0;`,_i=`margin:0`,vi=`allow-top-navigation-by-user-activation allow-popups`,yi=`The "iframe" tag is not supported by your browser.`,bi=[`foreignobject`],xi=[`dominant-baseline`];function Si(e){let t=ai(e);return l(),ee(t.config??{}),t}r(Si,`processAndSetConfigs`);async function Ci(e,t){Kr();try{let{code:t,config:n}=Si(e);return{diagramType:(await Fi(t)).type,config:n}}catch(e){if(t?.suppressErrors)return!1;throw e}}r(Ci,`parse`);var wi=r((e,t,n=[])=>`.${e} ${t} ${u(`{ ${n.join(` !important; `)} !important; }`)}`,`cssImportantStyles`),Ti=r((e,t=new Map)=>{let n=new CSSStyleSheet;if(e.fontFamily!==void 0&&n.insertRule(`:root { --mermaid-font-family: ${e.fontFamily}}`,n.cssRules.length),e.altFontFamily!==void 0&&n.insertRule(`:root { --mermaid-alt-font-family: ${e.altFontFamily}}`,n.cssRules.length),t instanceof Map){let r=h(e)?[`> *`,`span`]:[`rect`,`polygon`,`ellipse`,`circle`,`path`];t.forEach(e=>{Pt(e.styles)||r.forEach(t=>{n.insertRule(wi(e.id,t,e.styles),n.cssRules.length)}),Pt(e.textStyles)||n.insertRule(wi(e.id,`tspan`,(e?.textStyles||[]).map(e=>e.replace(`color`,`fill`))),n.cssRules.length)})}let r=``;if(e.themeCSS!==void 0)if(typeof n.replaceSync==`function`){let t=new CSSStyleSheet;t.replaceSync(e.themeCSS),r=w(t)+`
|
|
21
|
+
`}else r+=`${e.themeCSS}
|
|
22
|
+
`;return r+w(n)},`createCssStyles`),Ei=r((e,t)=>_n(fn(`${e}{${t}}`),yn([r(function(t,n,r,i){if(t.type===`rule`&&Array.isArray(t.props)){if(t.parent&&t.parent.type===`@keyframes`)return;t.props=t.props.map(n=>n===e&&Array.isArray(t.children)&&t.children.every(e=>e.type===`decl`?new Set([`font-family`,`font-size`,`fill`]).has(e.props):!1)||(n.startsWith(`${e} `)||n.startsWith(`${e}>`))&&!n.startsWith(`${e} ||`)?n:`${e} ${n}`)}else t.type.startsWith(`@`)&&([`@media`,`@supports`,`@layer`,`@scope`,`@container`,`@starting-style`,`@keyframes`].includes(t.type)||(a.warn(`Removing unsupported at-rule ${t.type} from CSS`),t.type=Ft))},`addNamespace`),vn])),`compileCSS`),Di=r((e,t,n,r)=>Ei(r,v(t,Ti(e,n),{...e.themeVariables,theme:e.theme,look:e.look},r)),`createUserStyles`),Oi=r((e=``,t,n)=>{let r=e;return!n&&!t&&(r=r.replace(/marker-end="url\([\d+./:=?A-Za-z-]*?#/g,`marker-end="url(#`)),r=oe(r),r=r.replace(/<br>/g,`<br/>`),r},`cleanUpSvgCode`),ki=r((e=``,t)=>`<iframe style="width:${mi};height:${t?.viewBox?.baseVal?.height?t.viewBox.baseVal.height+`px`:hi};${gi}" src="data:text/html;charset=UTF-8;base64,${oi(`<body style="${_i}">${e}</body>`)}" sandbox="${vi}">
|
|
23
|
+
${yi}
|
|
24
|
+
</iframe>`,`putIntoIFrame`),Ai=r((e,t,n,r,i)=>{let a=e.append(`div`);a.attr(`id`,n),r&&a.attr(`style`,r);let o=a.append(`svg`).attr(`id`,t).attr(`width`,`100%`).attr(`xmlns`,di);return i&&o.attr(`xmlns:xlink`,i),o.append(`g`),e},`appendDivSvgG`);function ji(e,t){return e.append(`iframe`).attr(`id`,t).attr(`style`,`width: 100%; height: 100%;`).attr(`sandbox`,``)}r(ji,`sandboxedIframe`);var Mi=r((e,t,n,r)=>{e.getElementById(t)?.remove(),e.getElementById(n)?.remove(),e.getElementById(r)?.remove()},`removeExistingElements`),Ni=r(async function(e,n,i){Kr();let s=Si(n);n=s.code;let c=x();a.debug(c),n.length>(c?.maxTextSize??si)&&(n=ci);let l=`#${e}`,u=`i`+e,d=`#`+u,f=`d`+e,p=`#`+f,m=r(()=>{let e=t(g?d:p).node();e&&`remove`in e&&e.remove()},`removeTempElements`),h=t(document.body),g=c.securityLevel===li,_=c.securityLevel===ui,v=c.fontFamily;i===void 0?(Mi(document,e,f,u),g?(h=t(ji(t(document.body),u).nodes()[0].contentDocument.body),h.node().style.margin=`0`):h=t(`body`),Ai(h,e,f)):(i&&(i.innerHTML=``),g?(h=t(ji(t(i),u).nodes()[0].contentDocument.body),h.node().style.margin=`0`):h=t(i),Ai(h,e,f,`font-family: ${v}`,fi));let y,b;try{y=await Zr.fromText(n,{title:s.title})}catch(e){if(c.suppressErrorRendering)throw m(),e;y=await Zr.fromText(`error`),b=e}let S=h.select(p).node(),w=y.type,T=S.firstChild,ee=T.firstChild,te=y.renderer.getClasses?.(n,y),E=Di(c,w,te,l),ne=document.createElement(`style`);ne.innerHTML=E,T.insertBefore(ne,ee);try{await y.renderer.draw(n,e,`11.17.2`,y)}catch(t){throw c.suppressErrorRendering?m():rr.draw(n,e,`11.17.2`),t}let re=h.select(`${p} svg`),ie=y.db.getAccTitle?.(),ae=y.db.getAccDescription?.();Ii(w,re,ie,ae);let oe=r(()=>{h.select(`[id="${e}"]`).selectAll(`foreignobject > *`).attr(`xmlns`,pi);let t=h.select(p).node().innerHTML;if(a.debug(`config.arrowMarkerAbsolute`,c.arrowMarkerAbsolute),t=Oi(t,g,C(c.arrowMarkerAbsolute)),g){let e=h.select(p+` svg`).node();t=ki(t,e)}else _||(t=o.sanitize(t,{ADD_TAGS:bi,ADD_ATTR:xi,HTML_INTEGRATION_POINTS:{foreignobject:!0}}));return $r(),t},`serializeSvg`)();if(b)throw b;return m(),{diagramType:w,svg:oe,bindFunctions:y.db.bindFunctions}},`render`);function Pi(e={}){let t=ne({},e);t?.fontFamily&&!t.themeVariables?.fontFamily&&(t.themeVariables||={},t.themeVariables.fontFamily=t.fontFamily),g(t),t?.theme&&t.theme in y?t.themeVariables=y[t.theme].getThemeVariables(t.themeVariables):t&&(t.themeVariables=y.default.getThemeVariables(t.themeVariables)),i((typeof t==`object`?E(t):c()).logLevel),Kr()}r(Pi,`initialize`);var Fi=r((e,t={})=>{let{code:n}=ai(e);return Zr.fromText(n,t)},`getDiagramFromText`);function Ii(e,t,n,r){Yr(t,e),Xr(t,n,r,t.attr(`id`))}r(Ii,`addA11yInfo`);var K=Object.freeze({render:Ni,parse:Ci,getDiagramFromText:Fi,initialize:Pi,getConfig:x,setConfig:_,getSiteConfig:c,updateSiteConfig:p,reset:r(()=>{l()},`reset`),globalReset:r(()=>{l(ie)},`globalReset`),defaultConfig:ie});i(x().logLevel),l(x());var Li=r((e,t,n)=>{a.warn(e),se(e)?(n&&n(e.str,e.hash),t.push({...e,message:e.str,error:e})):(n&&n(e),e instanceof Error&&t.push({str:e.message,message:e.message,hash:e.name,error:e}))},`handleError`),Ri=r(async function(e={querySelector:`.mermaid`}){try{await zi(e)}catch(t){if(se(t)&&a.error(t.str),q.parseError&&q.parseError(t),!e.suppressErrors)throw a.error(`Use the suppressErrors option to suppress these errors`),t}},`run`),zi=r(async function({postRenderCallback:e,querySelector:t,nodes:n}={querySelector:`.mermaid`}){let r=K.getConfig();a.debug(`${e?``:`No `}Callback function found`);let i;if(n)i=n;else if(t)i=document.querySelectorAll(t);else throw Error(`Nodes and querySelector are both undefined`);a.debug(`Found ${i.length} diagrams`),r?.startOnLoad!==void 0&&(a.debug(`Start On Load: `+r?.startOnLoad),K.updateSiteConfig({startOnLoad:r?.startOnLoad}));let o=new ce.InitIDGenerator(r.deterministicIds,r.deterministicIDSeed),s,c=[];for(let t of Array.from(i)){if(a.info(`Rendering diagram: `+t.id),t.getAttribute(`data-processed`))continue;t.setAttribute(`data-processed`,`true`);let n=`mermaid-${o.next()}`;s=t.innerHTML,s=_e(ce.entityDecode(s)).trim().replace(/<br\s*\/?>/gi,`<br/>`);let r=ce.detectInit(s);r&&a.debug(`Detected early reinit: `,r);try{let{svg:r,bindFunctions:i}=await Yi(n,s,t);t.innerHTML=r,e&&await e(n),i&&i(t)}catch(e){Li(e,c,q.parseError)}}if(c.length>0)throw c[0]},`runThrowsErrors`),Bi=r(function(e){K.initialize(e)},`initialize`),Vi=r(async function(e,t,n){a.warn(`mermaid.init is deprecated. Please use run instead.`),e&&Bi(e);let r={postRenderCallback:n,querySelector:`.mermaid`};typeof t==`string`?r.querySelector=t:t&&(t instanceof HTMLElement?r.nodes=[t]:r.nodes=t),await Ri(r)},`init`),Hi=r(async(e,{lazyLoad:t=!0}={})=>{Kr(),f(...e),t===!1&&await qr()},`registerExternalDiagrams`),Ui=r(function(){if(q.startOnLoad){let{startOnLoad:e}=K.getConfig();e&&q.run().catch(e=>a.error(`Mermaid failed to initialize`,e))}},`contentLoaded`);typeof document<`u`&&window.addEventListener(`load`,Ui,!1);var Wi=r(function(e){q.parseError=e},`setParseErrorHandler`),Gi=[],Ki=!1,qi=r(async()=>{if(!Ki){for(Ki=!0;Gi.length>0;){let e=Gi.shift();if(e)try{await e()}catch(e){a.error(`Error executing queue`,e)}}Ki=!1}},`executeQueue`),Ji=r(async(e,t)=>new Promise((n,i)=>{let o=r(()=>new Promise((r,o)=>{K.parse(e,t).then(e=>{r(e),n(e)},e=>{a.error(`Error parsing`,e),q.parseError?.(e),o(e),i(e)})}),`performCall`);Gi.push(o),qi().catch(i)}),`parse`),Yi=r((e,t,n)=>new Promise((i,o)=>{let s=r(()=>new Promise((r,s)=>{K.render(e,t,n).then(e=>{r(e),i(e)},e=>{a.error(`Error parsing`,e),q.parseError?.(e),s(e),o(e)})}),`performCall`);Gi.push(s),qi().catch(o)}),`render`),q={startOnLoad:!0,mermaidAPI:K,parse:Ji,render:Yi,init:Vi,run:Ri,registerExternalDiagrams:Hi,registerLayoutLoaders:be,initialize:Bi,parseError:void 0,contentLoaded:Ui,setParseErrorHandler:Wi,detectType:te,registerIconPacks:ge,getRegisteredDiagramsMetadata:r(()=>Object.keys(T).map(e=>({id:e})),`getRegisteredDiagramsMetadata`)},Xi=q,J=e=>e.replace(/\s*!important\s*$/i,``).trim(),Zi=(e,t)=>{let n=t;for(;n<e.length&&/\s/.test(e[n]);)n+=1;let r=n;for(;n<e.length&&/[a-z-]/i.test(e[n]);)n+=1;if(n===r)return!1;for(;n<e.length&&/\s/.test(e[n]);)n+=1;return e[n]===`:`},Y=e=>{let t=[],n=0;for(;n<e.length;){for(;n<e.length&&/[\s;,]/.test(e[n]);)n+=1;if(n>=e.length)break;let r=n;for(;n<e.length&&e[n]!==`:`&&!(e[n]===`;`||e[n]===`,`);)n+=1;if(n>=e.length||e[n]!==`:`)break;let i=e.substring(r,n).trim().toLowerCase();n+=1;let a=n,o=0,s=null;for(;n<e.length;){let t=e[n];if(s){t===s&&e[n-1]!==`\\`&&(s=null),n+=1;continue}if(t===`"`||t===`'`){s=t,n+=1;continue}if(t===`(`){o+=1,n+=1;continue}if(t===`)`){o=Math.max(0,o-1),n+=1;continue}if(o===0&&(t===`;`||t===`,`||/\s/.test(t)&&Zi(e,n)))break;n+=1}let c=J(e.substring(a,n));i&&c&&t.push({property:i,value:c}),n<e.length&&(e[n]===`;`||e[n]===`,`)&&(n+=1)}return t},X=e=>{let t=J(e);if(!t)return!1;if(typeof CSS<`u`&&typeof CSS.supports==`function`)return CSS.supports(`color`,t);if(typeof document<`u`){let e=document.createElement(`div`);return e.style.color=``,e.style.color=t,e.style.color!==``}return!1},Qi=(e,t)=>{let n=e.getAttribute(`style`);return n&&Y(n).find(e=>e.property===t)?.value||``},$i=(...e)=>{for(let t of e){let e=J(t||``);if(X(e))return e}},ea=(e,t)=>{let n=e.querySelector(`text, foreignObject, div, span, p`)||e,r=$i(n.getAttribute?.(`fill`),Qi(n,`fill`),n.style?.fill);if(r)return r;let i=$i(n.getAttribute?.(`color`),Qi(n,`color`),n.style?.color);if(i)return i;let a=$i(t);if(a)return a},ta=(e,t,n)=>{switch(t){case k.FILL:case k.STROKE:X(n)&&(e[t]=n);break;case k.STROKE_WIDTH:case k.STROKE_DASHARRAY:e[t]=n;break}},na=(e,t,n)=>{t===O.COLOR&&X(n)&&(e[O.COLOR]=n)},ra=(e,t,n)=>{e&&Y(e).forEach(({property:e,value:r})=>{ta(t,e,r),na(n,e,r)})},ia=(e,t)=>{e&&Y(e).forEach(({property:e,value:n})=>{if(e===`fill`&&X(n)){t[O.COLOR]=n;return}na(t,e,n)})},aa=(e,t)=>{e&&[[k.FILL,e.getAttribute(`fill`)],[k.STROKE,e.getAttribute(`stroke`)],[k.STROKE_WIDTH,e.getAttribute(`stroke-width`)],[k.STROKE_DASHARRAY,e.getAttribute(`stroke-dasharray`)]].forEach(([e,n])=>{let r=J(n||``);r&&ta(t,e,r)})},oa=(e,t)=>{if(!e)return;let n=J(e.getAttribute(`fill`)||e.getAttribute(`color`)||``);X(n)&&(t[O.COLOR]=n)},sa=(e,t,n,r)=>{if(!(t instanceof Map))return;let i=t.get(e);i&&(i.styles?.forEach(e=>{Y(e).forEach(({property:e,value:t})=>{ta(n,e,t),na(r,e,t)})}),i.textStyles?.forEach(e=>{Y(e).forEach(({property:e,value:t})=>{na(r,e,t)})}))},ca=(e,t,n)=>{let r=e.nodes.map(e=>e.startsWith(`flowchart-`)?e.split(`-`)[1]:e),i=t.querySelector(`[id='${e.id}']`);if(!i)throw Error(`SubGraph element not found`);let a=da(i,t),o=i.getBBox(),s={width:o.width,height:o.height},c={},l={},u=i.querySelector(`:scope > rect, :scope > path, :scope > polygon, :scope > ellipse`)||i.querySelector(`.cluster > rect, .cluster > path, .cluster > polygon, .cluster > ellipse`)||i.querySelector(`rect, path, polygon, ellipse`);ra(i.getAttribute(`style`),c,l),ra(u?.getAttribute(`style`),c,l),aa(u,c);let d=i.querySelector(`.cluster-label text, .cluster-label tspan`)||i.querySelector(`text`);return ia(d?.getAttribute(`style`),l),oa(d,l),sa(e.id,n,c,l),e.classes?.forEach(e=>{sa(e,n,c,l)}),{id:e.id,nodeIds:r,text:I(e.title),labelType:`text`,...a,...s,containerStyle:c,labelStyle:l}},la=(e,t,n)=>{let r=t.querySelector(`[id*="${e.domId}"]`);if(!r)return;let i;r.parentElement?.tagName.toLowerCase()===`a`&&(i=r.parentElement.getAttribute(`xlink:href`));let a=da(i?r.parentElement:r,t),o=r.getBBox(),s={width:o.width,height:o.height},c={},l={};e.classes&&n instanceof Map&&(Array.isArray(e.classes)?e.classes:[e.classes]).forEach(e=>{sa(e,n,c,l)}),e.styles?.forEach(e=>{ra(e,c,l)});let u=r.querySelector(`.label-container`);return ra(u?.getAttribute(`style`),c,l),aa(u,c),Array.from(r.querySelectorAll(`.label, .nodeLabel, .label text, .label tspan, .label span, .label div`)).forEach(e=>{ia(e.getAttribute(`style`),l),oa(e,l)}),{id:e.id,labelType:e.labelType,text:I(e.text||``),type:e.type,link:i||void 0,...a,...s,containerStyle:c,labelStyle:l}},ua=(e,t,n)=>{let r=n.querySelector(`[id*="${e.id}"]`);if(!r)throw Error(`Edge element not found`);let i=At(r,da(r,n));return e.length=void 0,{...e,...i,text:I(e.text)}},da=(e,t)=>{if(!e)throw Error(`Element not found`);let n=e.parentElement?.parentElement,r=e.childNodes[0],i={x:0,y:0};if(r){let{transformX:e,transformY:t}=L(r),n=r.getBBox();i={x:Number(r.getAttribute(`x`))||e+n.x||0,y:Number(r.getAttribute(`y`))||t+n.y||0}}let{transformX:a,transformY:o}=L(e),s={x:a+i.x,y:o+i.y};for(;n&&n.id!==t.id;){if(n.classList.value===`root`&&n.hasAttribute(`transform`)){let{transformX:e,transformY:t}=L(n);s.x+=e,s.y+=t}n=n.parentElement}return s},fa=(e,t)=>{let n=e.getVertices(),r=e.getEdges(),i=e.getSubGraphs(),a=e.getClasses(),o={},s=a instanceof Map?a:{};n instanceof Map?n.forEach((e,n)=>{o[n]=la(e,t,s)}):typeof n==`object`&&n&&Object.entries(n).forEach(([e,n])=>{o[e]=la(n,t,s)});let c=new Map,l=(Array.isArray(r)?r:[]).map(e=>{if(!t.querySelector(`[id*="${e.id}"]`))return null;let n=`${e.start}-${e.end}`,r=c.get(n)||0;return c.set(n,r+1),ua(e,r,t)}).filter(e=>e!==null&&e.reflectionPoints.length>1);return{type:`flowchart`,subGraphs:(Array.isArray(i)?i:[]).map(e=>ca(e,t,s)),vertices:o,edges:l}},pa=(e,t)=>{let n={};t?.label&&(n.label={text:I(t.label),fontSize:16});let r=e.tagName;if(r===`line`)n.startX=Number(e.getAttribute(`x1`)),n.startY=Number(e.getAttribute(`y1`)),n.endX=Number(e.getAttribute(`x2`)),n.endY=Number(e.getAttribute(`y2`));else if(r===`path`){let t=e.getAttribute(`d`);if(!t)throw Error(`Path element does not contain a "d" attribute`);let r=t.split(/(?=[LC])/),i=r[0].substring(1).split(`,`).map(e=>parseFloat(e)),a=[];r.forEach(e=>{let t=e.substring(1).trim().split(` `).map(e=>{let[t,n]=e.split(`,`);return[parseFloat(t)-i[0],parseFloat(n)-i[1]]});a.push(...t)});let o=a[a.length-1];n.startX=i[0],n.startY=i[1],n.endX=o[0],n.endY=o[1],n.points=a}t?.label&&(n.startY-=10,n.endY-=10);let i=e.getAttribute(`stroke`),a=(i&&i!==`none`?i:``)||getComputedStyle(e).stroke||``;return n.strokeColor=a?J(a):null,n.strokeWidth=Number(e.getAttribute(`stroke-width`)),n.type=`arrow`,n.strokeStyle=t?.strokeStyle||`solid`,n.startArrowhead=t?.startArrowhead||null,n.endArrowhead=t?.endArrowhead||null,n},ma=(e,t,n,r,i)=>{let a={};return a.type=`arrow`,a.startX=e,a.startY=t,a.endX=n,a.endY=r,Object.assign(a,{...i}),a},ha=(e,t,n,r)=>({type:`text`,x:e,y:t,text:n,width:r?.width||20,height:r?.height||20,fontSize:r?.fontSize||20,id:r?.id,color:r?.color,groupId:r?.groupId,metadata:r?.metadata}),ga=(e,t,n)=>{let r={},i=Number(e.getAttribute(`x`)),a=Number(e.getAttribute(`y`));r.type=`text`,r.text=I(t),n?.id&&(r.id=n.id),n?.groupId&&(r.groupId=n.groupId);let o=e.getBBox();return r.width=o.width,r.height=o.height,r.x=i-o.width/2,r.y=a,r.fontSize=parseInt(getComputedStyle(e).fontSize),r.color=ea(e),r},Z=(e,t,n={})=>{let r={};r.type=t;let{label:i,subtype:a,id:o,groupId:s}=n;r.id=o,s&&(r.groupId=s),i&&(r.label={text:I(i.text),fontSize:16,textAlign:i?.textAlign,verticalAlign:i?.verticalAlign});let c=e.getBBox();switch(r.x=c.x,r.y=c.y,r.width=c.width,r.height=c.height,r.subtype=a,a){case`highlight`:let t=e.getAttribute(`fill`);t&&(r.bgColor=J(t));break;case`note`:r.strokeStyle=`dashed`;break}return r},_a=(e,t,n,r,i,a)=>{let o={};o.startX=t,o.startY=n,o.endX=r,a?.groupId&&(o.groupId=a.groupId),a?.id&&(o.id=a.id),o.endY=i;let s=e.getAttribute(`stroke`);return o.strokeColor=s?J(s):null,o.strokeWidth=Number(e.getAttribute(`stroke-width`)),o.type=`line`,o},va={0:`SOLID`,1:`DOTTED`,3:`SOLID_CROSS`,4:`DOTTED_CROSS`,5:`SOLID_OPEN`,6:`DOTTED_OPEN`,24:`SOLID_POINT`,25:`DOTTED_POINT`},Q={SOLID:0,DOTTED:1,NOTE:2,SOLID_CROSS:3,DOTTED_CROSS:4,SOLID_OPEN:5,DOTTED_OPEN:6,LOOP_START:10,LOOP_END:11,ALT_START:12,ALT_ELSE:13,ALT_END:14,OPT_START:15,OPT_END:16,ACTIVE_START:17,ACTIVE_END:18,PAR_START:19,PAR_AND:20,PAR_END:21,RECT_START:22,RECT_END:23,SOLID_POINT:24,DOTTED_POINT:25,AUTONUMBER:26,CRITICAL_START:27,CRITICAL_OPTION:28,CRITICAL_END:29,BREAK_START:30,BREAK_END:31,PAR_OVER_START:32},ya=e=>{let t;switch(e){case Q.SOLID:case Q.SOLID_CROSS:case Q.SOLID_OPEN:case Q.SOLID_POINT:t=`solid`;break;case Q.DOTTED:case Q.DOTTED_CROSS:case Q.DOTTED_OPEN:case Q.DOTTED_POINT:t=`dotted`;break;default:t=`solid`;break}return t},ba=(e,t)=>{if(e.nextElementSibling?.classList.contains(`sequenceNumber`)){let n=e.nextElementSibling?.textContent;if(!n)throw Error(`sequence number not present`);let r={type:`rectangle`,x:t.startX-10,y:t.startY-15,label:{text:n,fontSize:14},bgColor:`#e9ecef`,height:30,subtype:`sequence`};Object.assign(t,{sequenceNumber:r})}},xa=(e,t,n)=>{if(!e)throw`root node not found`;let r=A(),i=Array.from(e.children),a=[];return i.forEach((e,i)=>{let o=`${n?.id}-${i}`,s;switch(e.tagName){case`line`:s=_a(e,Number(e.getAttribute(`x1`)),Number(e.getAttribute(`y1`)),Number(e.getAttribute(`x2`)),Number(e.getAttribute(`y2`)),{groupId:r,id:o});break;case`text`:s=ga(e,t,{groupId:r,id:o});break;case`circle`:s=Z(e,`ellipse`,{label:e.textContent?{text:e.textContent}:void 0,groupId:r,id:o});default:s=Z(e,xe[e.tagName],{label:e.textContent?{text:e.textContent}:void 0,groupId:r,id:o})}a.push(s)}),a},Sa=(e,t)=>{let n=t.getAttribute(`fill`),r=t.getAttribute(`stroke`),i=t.getAttribute(`stroke-width`),a=t.getAttribute(`stroke-dasharray`);n&&n!==`none`&&(e.bgColor=J(n)),r&&r!==`none`&&(e.strokeColor=J(r)),i&&(e.strokeWidth=Number(i)),a&&a.trim()&&(e.strokeStyle=`dashed`)},Ca=(e,t)=>{let n=Array.from(t.querySelectorAll(`.actor-top`)),r=Array.from(t.querySelectorAll(`.actor-bottom`)),i=[],a=[],o={},s=e instanceof Map?Array.from(e.values()):Object.values(e),c=Array.from(t.querySelectorAll(`.actor-line`)),l=(e,t)=>{let n=e.name,r=c.find(e=>e.getAttribute(`name`)===n);if(r)return r;let i=e.type===`participant`?t.parentElement?.previousElementSibling:t.previousElementSibling;return i?i.tagName===`line`?i:i.querySelector(`line`):null};return s.forEach(e=>{let t=n.find(t=>t.getAttribute(`name`)===e.name),s=r.find(t=>t.getAttribute(`name`)===e.name);if(!t||!s)throw`root not found`;let c=e.description;if(e.type===`participant`){let n=Z(t,`rectangle`,{id:`${e.name}-top`,label:{text:c},subtype:`actor`});if(Sa(n,t),!n)throw`Top Node element not found!`;i.push([n]);let r=Z(s,`rectangle`,{id:`${e.name}-bottom`,label:{text:c},subtype:`actor`});o[e.name]={topId:`${e.name}-top`,bottomId:`${e.name}-bottom`,bindType:`rectangle`},Sa(r,s),i.push([r]);let u=l(e,t);if(u?.tagName!==`line`)throw`Line not found`;let d=Number(u.getAttribute(`x1`));if(!n.height)throw`Top node element height is null`;let f=n.y+n.height,p=r.y,m=_a(u,d,f,Number(u.getAttribute(`x2`)),p);a.push(m)}else if(e.type===`actor`){let n=xa(t,c,{id:`${e.name}-top`});i.push(n);let r=xa(s,c,{id:`${e.name}-bottom`});i.push(r);let u=l(e,t);if(u?.tagName!==`line`)throw`Line not found`;let d=Number(u.getAttribute(`x1`)),f=Number(u.getAttribute(`y1`)),p=Number(u.getAttribute(`x2`)),m=r.find(e=>e.type===`ellipse`);if(m){let e=m.y,t=_a(u,d,f,p,e);a.push(t)}let h=n.find(e=>e.type===`ellipse`),g=r.find(e=>e.type===`ellipse`);h?.id&&g?.id&&(o[e.name]={topId:h.id,bottomId:g.id,bindType:`ellipse`})}}),{nodes:i,lines:a,actorMap:o}},wa=(e,t,n)=>{let r=[],i=Array.from(t.querySelectorAll(`[class*="messageLine"]`)),a=Object.keys(va),o=e.filter(e=>a.includes(e.type.toString()));return i.forEach((e,t)=>{let i=o[t],a=va[i.type],s=pa(e,{label:i?.message,strokeStyle:ya(i.type),endArrowhead:a===`SOLID_OPEN`||a===`DOTTED_OPEN`?null:`arrow`}),c=n[i.from],l=n[i.to];c?.topId&&l?.topId&&(s.start={type:c.bindType||`rectangle`,id:c.topId},s.end={type:l.bindType||`rectangle`,id:l.topId}),ba(e,s),r.push(s)}),r},Ta=(e,t)=>{let n=Array.from(t.querySelectorAll(`.note`)).map(e=>e.parentElement),r=e.filter(e=>e.type===Q.NOTE),i=[];return n.forEach((e,t)=>{if(!e)return;let n=e.firstChild,a=r[t].message,o=Z(n,`rectangle`,{label:{text:a},subtype:`note`}),s=n.getAttribute(`fill`),c=n.getAttribute(`stroke`),l=n.getAttribute(`stroke-width`),u=n.getAttribute(`stroke-dasharray`);s&&s!==`none`&&(o.bgColor=J(s)),c&&c!==`none`&&(o.strokeColor=J(c)),l&&(o.strokeWidth=Number(l)),u&&u.trim()&&(o.strokeStyle=`dashed`),i.push(o)}),i},Ea=e=>{let t=Array.from(e.querySelectorAll(`[class*=activation]`)),n=[];return t.forEach(e=>{let t=Z(e,`rectangle`,{label:{text:``},subtype:`activation`});(()=>{let n=e.getAttribute(`fill`),r=e.getAttribute(`stroke`),i=e.getAttribute(`stroke-width`),a=e.getAttribute(`stroke-dasharray`);n&&n!==`none`&&(t.bgColor=J(n)),r&&r!==`none`&&(t.strokeColor=J(r)),i&&(t.strokeWidth=Number(i)),a&&a.trim()&&(t.strokeStyle=`dashed`)})(),n.push(t)}),n},Da=(e,t)=>{let n=Array.from(t.querySelectorAll(`.loopLine`)),r=[],i=[],a=[];n.forEach(e=>{let t=_a(e,Number(e.getAttribute(`x1`)),Number(e.getAttribute(`y1`)),Number(e.getAttribute(`x2`)),Number(e.getAttribute(`y2`)));t.strokeStyle=`dotted`,t.strokeColor=`#adb5bd`,t.strokeWidth=2,r.push(t)});let o=Array.from(t.querySelectorAll(`.loopText`)),s=e.filter(e=>e.type===Q.CRITICAL_START).map(e=>e.message);o.forEach(e=>{let t=e.textContent||``,n=ga(e,t),r=t.match(/\[(.*?)\]/)?.[1]||``;s.includes(r)&&(n.x+=16),i.push(n)});let c=Array.from(t?.querySelectorAll(`.labelBox`)),l=Array.from(t?.querySelectorAll(`.labelText`));return c.forEach((e,t)=>{let n=Z(e,`rectangle`,{label:{text:l[t]?.textContent||``}});n.strokeColor=`#adb5bd`,n.bgColor=`#e9ecef`,n.width=void 0,a.push(n)}),{lines:r,texts:i,nodes:a}},Oa=e=>{let t=Array.from(e.querySelectorAll(`.rect`)).filter(e=>e.parentElement?.tagName!==`g`),n=[];return t.forEach(e=>{let t=Z(e,`rectangle`,{label:{text:``},subtype:`highlight`});n.push(t)}),n},ka=(e,t)=>{let n=e.db,r=[],i=n.getBoxes().map(e=>({...e,fill:J(e.fill||``)})),a=Oa(t),{nodes:o,lines:s,actorMap:c}=Ca(n.getActors(),t),l=n.getMessages(),u=wa(l,t,c),d=Ta(l,t),f=Ea(t),p=Da(l,t);return r.push(a),r.push(...o),r.push(d),r.push(f),{type:`sequence`,lines:s,arrows:u,nodes:r,loops:p,groups:i}},Aa=e=>{let t={};return e&&e.forEach(e=>{Y(e).forEach(({property:e,value:n})=>{e&&n&&(t[e]=J(n))})}),t},ja={AGGREGATION:0,EXTENSION:1,COMPOSITION:2,DEPENDENCY:3,LOLLIPOP:4},Ma={LINE:0,DOTTED_LINE:1},Na=16,Pa=e=>{let t;switch(e){case Ma.LINE:t=`solid`;break;case Ma.DOTTED_LINE:t=`dotted`;break;default:t=`solid`}return t},Fa=e=>{let t;switch(e){case ja.AGGREGATION:t=`diamond_outline`;break;case ja.COMPOSITION:t=`diamond`;break;case ja.EXTENSION:t=`triangle_outline`;break;case`none`:t=null;break;case ja.DEPENDENCY:default:t=`arrow`;break}return t},Ia=(e,t)=>{let n=0,r=0,i=e;for(;i&&i!==t;){let{transformX:e,transformY:t}=L(i);n+=e,r+=t,i=i.parentElement}return{tx:n,ty:r}},La=new Set([`triangle_outline`,`diamond`,`diamond_outline`]),Ra=(e,t=.5)=>{if(e.length<=2)return[...e];let n=[e[0]];for(let r=1;r<e.length-1;r++){let i=n[n.length-1],a=e[r],o=e[r+1],s=o.x-i.x,c=o.y-i.y,l=Math.hypot(s,c);if(!l)continue;let u=Math.abs(s*(a.y-i.y)-c*(a.x-i.x))/l,d=((a.x-i.x)*s+(a.y-i.y)*c)/(l*l);u<=t&&d>=-t&&d<=1+t||n.push(a)}return n.push(e[e.length-1]),n},za=e=>{let t=Dt(kt(e).map(e=>[e.x,e.y])).map(([e,t])=>({x:e,y:t})),n=Ot(e);return n&&t.length>=2&&(t[0]={x:n.startX,y:n.startY},t[t.length-1]={x:n.endX,y:n.endY}),Ra(t)},Ba=(e,t,n)=>{let r=e.x-t.x,i=e.y-t.y,a=Math.hypot(r,i);return a?{x:e.x+r/a*n,y:e.y+i/a*n}:e},Va=(e,t)=>{let n=Dt(t.map(e=>[e.x,e.y])).map(([e,t])=>({x:e,y:t}));if(n.length<2)throw Error(`Arrow route must contain at least two points`);let r=n[0],i=n[n.length-1];e.startX=r.x,e.startY=r.y,e.endX=i.x,e.endY=i.y,e.points=n.map(e=>[e.x-r.x,e.y-r.y])},Ha=e=>{let t=e.points?.map(([t,n])=>({x:e.startX+t,y:e.startY+n})).filter(e=>Number.isFinite(e.x)&&Number.isFinite(e.y));if(!t||t.length<2)return e;let n=[...t],r=!!e.startArrowhead&&La.has(e.startArrowhead),i=!!e.endArrowhead&&La.has(e.endArrowhead);if(!r&&!i)return e;if(r&&(n[0]=Ba(n[0],n[1],Na)),i){let e=n.length-1;n[e]=Ba(n[e],n[e-1],Na)}return Va(e,n),e},Ua=(e,t)=>{let n=J(e.getAttribute(`stroke`)||getComputedStyle(e).stroke||``),r=parseFloat(e.getAttribute(`stroke-width`)||getComputedStyle(e).strokeWidth||`1`);X(n)&&n!==`none`&&(t.strokeColor=n),Number.isFinite(r)&&r>0&&(t.strokeWidth=r)},Wa=e=>{let t=[];return e.forEach(e=>{za(e).forEach(e=>{let n=t[t.length-1];n&&n.x===e.x&&n.y===e.y||t.push(e)})}),Ra(t)},Ga=(e,t,n)=>{if(e.length<2)throw Error(`Class diagram edge ${t?.id||`<unknown>`} is missing usable path points`);let r=e[0],i=e[e.length-1],a=ma(r.x,r.y,i.x,i.y,{id:t?.getAttribute(`data-id`)||t?.id||void 0,...n,points:e.map(e=>[e.x-r.x,e.y-r.y])});return t&&Ua(t,a),Ha(a)},Ka=(e,t)=>Ga(Wa(e),e[0],t),qa=(e,t)=>{let n=za(e);return Ga([n[0],n[n.length-1]],e,t)},Ja=(e,t)=>Ka([e],t),Ya=(e,t)=>[`${e}-cyclic-special-1`,`${e}-cyclic-special-mid`,`${e}-cyclic-special-2`].map(e=>t.querySelector(`path[id="${e}"][data-edge="true"]`)).filter(e=>e!==null),Xa=e=>e.points?.map(([t,n])=>({x:e.startX+t,y:e.startY+n})).filter(e=>Number.isFinite(e.x)&&Number.isFinite(e.y))||[],Za=(e,t)=>{let n=Xa(e);if(n.length<2)return null;let r=t===`start`,i=r?n[0]:n[n.length-1],a=r?n[1]:n[n.length-2],o=a.x===i.x?r?-1:1:Math.sign(a.x-i.x),s=a.y===i.y?1:Math.sign(a.y-i.y);return{x:i.x+o*20,y:i.y+(s>=0?12:-28)}},Qa=(e,t)=>{let n=e;for(;n&&n!==t;){if(n.classList.contains(`annotation-group`)||n.classList.contains(`label-group`))return`header`;if(n.classList.contains(`members-group`))return`members`;if(n.classList.contains(`methods-group`))return`methods`;n=n.parentElement}return`other`},$a=(e,t,n)=>{let r=[],i=[],a=[];return Object.values(e).forEach(e=>{let{domId:o,id:s}=e,c=A(),l=Aa(e.styles||e.cssStyles),u;try{u=n?n(s):void 0}catch{u=void 0}let d=u&&t.querySelector(`#${u}`)||t.querySelector(`#${o}`)||t.querySelector(`[data-id='${s}']`)||(e=>{let n=RegExp(`^classId-${e}(?:-|$)`);return Array.from(t.querySelectorAll(`[id]`)).filter(e=>n.test(e.id))[0]})(s);if(!d)throw Error(`DOM Node with id ${o} not found`);let f=d.querySelector(`rect`)||d,p=f.getBBox(),{tx:m,ty:h}=Ia(f,t),g={type:`rectangle`,id:s,groupId:c,x:p.x+m,y:p.y+h,width:p.width,height:p.height,metadata:{classId:s}},_=f.getAttribute(`fill`),v=f.getAttribute(`stroke`),y=f.getAttribute(`stroke-width`),b=f.getAttribute(`stroke-dasharray`),x=getComputedStyle(f),S=J(_||l.fill||(_?x.fill:``)),C=J(v||l.stroke||(v?x.stroke:``)),w=y||l[`stroke-width`]||(y?x.strokeWidth:``),T=b||l[`stroke-dasharray`]||(b?x.strokeDasharray===`none`?``:x.strokeDasharray:``),ee=e=>{if(!e||!X(e))return!1;let t=e.toLowerCase();return!(t===`none`||t===`transparent`||t===`rgba(0, 0, 0, 0)`||t===`black`||t===`#000`||t===`#000000`||t===`rgb(0, 0, 0)`||t===`rgba(0, 0, 0, 1)`)};ee(S)?g.bgColor=S:g.bgColor=void 0,ee(C)?g.strokeColor=C:g.strokeColor=void 0,w?g.strokeWidth=Number(w):g.strokeWidth=void 0,T&&T.trim().length>0?g.strokeStyle=`dashed`:g.strokeStyle=void 0,r.push(g),[...Array.from(d.querySelectorAll(`line`)),...Array.from(d.querySelectorAll(`g.divider path`))].forEach(e=>{let{tx:n,ty:r}=Ia(e,t),a,o,l,u;if(e.tagName.toLowerCase()===`line`)a=Number(e.getAttribute(`x1`))+n,o=Number(e.getAttribute(`y1`))+r,l=Number(e.getAttribute(`x2`))+n,u=Number(e.getAttribute(`y2`))+r;else{let t=e.getBBox();a=t.x+n,l=t.x+t.width+n;let i=t.y+t.height/2+r;o=i,u=i}if(a===l&&o===u)return;let d=_a(e,a,o,l,u,{groupId:c,id:A()});g.strokeColor?d.strokeColor=g.strokeColor:d.strokeColor=void 0,g.strokeWidth===void 0?d.strokeWidth=void 0:d.strokeWidth=g.strokeWidth,g.strokeStyle?d.strokeStyle=g.strokeStyle:d.strokeStyle=void 0,d.metadata={classId:s},i.push(d)});let te=Array.from(d.querySelectorAll(`text, foreignObject`)),E=[];te.forEach(e=>{let n=e.tagName.toLowerCase()===`foreignobject`,r=n?[]:Array.from(e.querySelectorAll(`tspan`)),i=r.length?r.map(e=>e.textContent?.trim()).filter(Boolean).join(`
|
|
25
|
+
`):e.textContent?.trim()||``;if(!i)return;let a=e.getBBox(),{ty:o}=Ia(e,t),s=parseFloat(getComputedStyle(e).fontSize||``);if(n&&(!Number.isFinite(s)||!s)){let t=e.querySelector(`div, span, p`);t&&(s=parseFloat(getComputedStyle(t).fontSize||``))}(!Number.isFinite(s)||s<=0)&&(s=Math.max(12,a.height*.6)),s*=.9;let c=ea(e,l.color);E.push({section:Qa(e,d),text:I(i),x:a.x,y:a.y+o,width:g&&g.width?Math.max(g.width-8,a.width):a.width,height:a.height,fontSize:s,color:c})});let ne=E.filter(e=>e.section===`header`).sort((e,t)=>e.y-t.y||e.x-t.x);if(!g.label){let e=ne.length===0&&E.length===1?E:ne;e.length>0&&(g.label={text:e.map(e=>e.text).join(`
|
|
26
|
+
`),fontSize:Math.max(...e.map(e=>e.fontSize)),color:e.find(e=>e.color)?.color,verticalAlign:`top`})}E.filter(e=>ne.length>0?e.section!==`header`:!(g.label&&E.length===1)).forEach(e=>{let t=ha((g?.x||0)+4,e.y,e.text,{width:e.width,height:e.height,fontSize:e.fontSize,color:e.color,id:A(),groupId:c,metadata:{classId:s}});a.push(t)})}),{nodes:r,lines:i,text:a}},eo=(e,t,n,r)=>{let i=Array.from(n.querySelectorAll(`.edgePaths path[data-edge="true"]:not([id^="edgeNote"]):not([id*="-cyclic-special-"])`));if(e.length===0)return{arrows:[],text:[]};let a=[],o=[],s=0;return e.forEach(e=>{let{id1:c,id2:l,relation:u}=e,d=t.find(e=>e.id===c),f=t.find(e=>e.id===l);if(!d)throw Error(`parseRelations: Cannot find node with id ${c}`);if(!f)throw Error(`parseRelations: Cannot find node with id ${l}`);let p=Pa(u.lineType),m=Fa(u.type1),h=Fa(u.type2),g;if(c===l){let t=Ya(c,n);if(!t.length)throw Error(`parseRelations: Cannot find rendered SVG edge for relation ${c} -> ${l}`);g=Ka(t,{strokeStyle:p,startArrowhead:m,endArrowhead:h,label:e.title?{text:e.title}:void 0,start:{type:`rectangle`,id:d.id},end:{type:`rectangle`,id:f.id}})}else{let t=i[s];if(!t)throw Error(`parseRelations: Cannot find rendered SVG edge for relation ${c} -> ${l}`);s+=1,g=qa(t,{strokeStyle:p,startArrowhead:m,endArrowhead:h,label:e.title?{text:e.title}:void 0,start:{type:`rectangle`,id:d.id},end:{type:`rectangle`,id:f.id}})}a.push(g);let{relationTitle1:_,relationTitle2:v}=e,y=c===l,b,x;if(_&&_!==`none`){if(y){let e=Za(g,`start`);e&&(b=e.x,x=e.y)}else switch(r){case`TB`:b=g.startX-20,g.endX<g.startX&&(b-=15),x=g.startY+15;break;case`BT`:b=g.startX+20,g.endX>g.startX&&(b+=15),x=g.startY-15;break;case`LR`:b=g.startX+20,x=g.startY+15,g.endY>g.startY&&(x+=15);break;case`RL`:b=g.startX-20,x=g.startY-15,g.startY>g.endY&&(x-=15);break;default:b=g.startX-20,x=g.startY+15}b??=g.startX-20,x??=g.startY+15;let e=ha(b,x,_,{fontSize:16});o.push(e)}if(v&&v!==`none`){if(y){let e=Za(g,`end`);e&&(b=e.x,x=e.y)}else switch(r){case`TB`:b=g.endX+20,g.endX<g.startX&&(b+=15),x=g.endY-15;break;case`BT`:b=g.endX-20,g.endX>g.startX&&(b-=15),x=g.endY+15;break;case`LR`:b=g.endX-20,x=g.endY-15,g.endY>g.startY&&(x-=15);break;case`RL`:b=g.endX+20,x=g.endY+15,g.startY>g.endY&&(x+=15);break;default:b=g.endX+20,x=g.endY-15}b??=g.endX+20,x??=g.endY+15;let e=ha(b,x,v,{fontSize:16});o.push(e)}}),{arrows:a,text:o}},to=(e,t,n)=>{let r=[],i=[];return e.forEach((e,a)=>{let{id:o,text:s,class:c}=e,l=t.querySelector(`#${o}`);if(!l)throw Error(`Node with id ${o} not found!`);let{transformX:u,transformY:d}=L(l),f=l.firstChild,p=Z(f,`rectangle`,{id:o,subtype:`note`,label:{text:s}});if(Object.assign(p,{x:p.x+u,y:p.y+d}),r.push(p),c){let e=n.find(e=>e.id===c);if(!e)throw Error(`class node with id ${c} not found!`);let r=t.querySelector(`path[id="edgeNote${a+1}"][data-edge="true"]`);if(r){i.push(Ja(r,{strokeStyle:`dotted`,startArrowhead:null,endArrowhead:null,start:{id:p.id,type:`rectangle`},end:{id:e.id,type:`rectangle`}}));return}let o=p.x+(p.width||0)/2,s=p.y+(p.height||0),l=o,u=e.y,d=ma(o,s,l,u,{strokeStyle:`dotted`,startArrowhead:null,endArrowhead:null,start:{id:p.id,type:`rectangle`},end:{id:e.id,type:`rectangle`}});i.push(d)}}),{notes:r,connectors:i}},no=(e,t)=>{let n=e.db,r=n.getDirection?.()||`TB`,i=[],a=[],o=[],s=[],c=n.getNamespaces?.()||[],l=n.getClasses?.()||{},u=l instanceof Map?Object.fromEntries(l):l;if(u&&Object.keys(u).length){let e=$a(u,t,typeof n.lookUpDomId==`function`?n.lookUpDomId.bind(n):void 0);i.push(e.nodes),a.push(...e.lines),o.push(...e.text),s.push(...e.nodes)}let{arrows:d,text:f}=eo(n.getRelations?.()||[],s,t,r),{notes:p,connectors:m}=to(n.getNotes?.()||[],t,s);return i.push(p),d.push(...m),o.push(...f),{type:`class`,nodes:i,lines:a,arrows:d,text:o,namespaces:c}},ro=18,io=e=>{let t={};return e&&e.forEach(e=>{Y(e).forEach(({property:e,value:n})=>{e&&n&&(t[e]=J(n))})}),t},ao=e=>{if(e==null||e===``)return;let t=typeof e==`number`?e:parseFloat(J(e));if(!(!Number.isFinite(t)||t<=0))return t},oo=(e,t)=>{let n=0,r=0,i=e;for(;i&&i!==t;){let{transformX:e,transformY:t}=L(i);n+=e,r+=t,i=i.parentElement}return{tx:n,ty:r}},so=e=>{let t=Array.from(e.querySelectorAll(`tspan`));return I(t.length?t.map(e=>e.textContent?.trim()).filter(Boolean).join(`
|
|
27
|
+
`):e.textContent?.trim()||``)},co=e=>{let t=e.querySelector(`text, foreignObject, div, span, p`)||e,n=parseFloat(getComputedStyle(t).fontSize||``);return(!Number.isFinite(n)||n<=0)&&(n=Math.max(12,e.getBBox().height*.75)),n},lo=(e,t,n)=>{let r=so(e);if(!r)return null;let i=e.getBBox(),{tx:a,ty:o}=oo(e,t);return{className:e.getAttribute(`class`)||``,text:r,x:i.x+a,y:i.y+o,width:i.width,height:i.height,fontSize:co(e),color:ea(e,n)}},uo=(e,t,n,r,i,a,o)=>{let{tx:s,ty:c}=oo(e,t),l=0,u=0,d=0,f=0;if(e.tagName.toLowerCase()===`line`)l=Number(e.getAttribute(`x1`))+s,u=Number(e.getAttribute(`y1`))+c,d=Number(e.getAttribute(`x2`))+s,f=Number(e.getAttribute(`y2`))+c;else{let t=Ot(e);if(!t)return null;l=t.startX+s,u=t.startY+c,d=t.endX+s,f=t.endY+c}let p={type:`line`,id:A(),groupId:n,startX:l,startY:u,endX:d,endY:f,metadata:{entityId:r}};return i&&X(i)&&i!==`none`&&(p.strokeColor=i),a!==void 0&&(p.strokeWidth=a),o&&(p.strokeStyle=o),p},fo=e=>{switch(e?.toLowerCase()){case`one`:return`cardinality_one`;case`many`:return`cardinality_many`;case`only_one`:return`cardinality_exactly_one`;case`one_or_more`:return`cardinality_one_or_many`;case`zero_or_one`:return`cardinality_zero_or_one`;case`zero_or_more`:return`cardinality_zero_or_many`;default:return null}},po=e=>{switch(e){case`dotted`:return`dotted`;case`dashed`:return`dashed`;default:return`solid`}},mo=(e,t)=>{let n=t.querySelector(`path[id="${e.id}"][data-edge="true"]`);return n?[n]:e.start===e.end?[`${e.start}-cyclic-special-1`,`${e.start}-cyclic-special-mid`,`${e.start}-cyclic-special-2`].map(e=>t.querySelector(`path[id="${e}"][data-edge="true"]`)).filter(e=>e!==null):[]},ho=e=>{let t=[];return e.forEach(e=>{kt(e).forEach(e=>{let n=t[t.length-1];n&&n.x===e.x&&n.y===e.y||t.push(e)})}),t},go=(e,t)=>{let n=t.querySelector(`[id="${e.id}"]`);if(!n)throw Error(`ER entity ${e.id} not found in rendered SVG`);let r=e.attributes.length?A():void 0,i=n.getBBox(),{tx:a,ty:o}=oo(n,t),s=io([...e.cssStyles||[],...e.cssCompiledStyles||[]]),c=J(s.fill||``),l=J(s.stroke||``),u=ao(s[`stroke-width`]),d=J(s[`stroke-dasharray`]||``),f=Array.from(n.querySelectorAll(`g.label`)).map(e=>lo(e,t,s.color)).filter(e=>e!==null),p=f.find(e=>e.className.includes(`name`))||f[0],m=f.filter(e=>e!==p),h=p?.text||I(e.alias||e.label||``),g={type:`rectangle`,id:e.id,groupId:r,x:i.x+a,y:i.y+o,width:i.width,height:i.height,label:{text:h,fontSize:e.attributes.length?ro:p?.fontSize||16,color:p?.color,textAlign:`center`,verticalAlign:e.attributes.length?`top`:`middle`},metadata:{entityId:e.id,entityLabel:e.label,entityAlias:e.alias}};return X(c)&&c!==`none`&&(g.bgColor=c),X(l)&&l!==`none`&&(g.strokeColor=l),u&&Number.isFinite(u)&&u>0&&(g.strokeWidth=u),d&&d!==`none`&&(g.strokeStyle=`dashed`),{container:g,lines:Array.from(n.querySelectorAll(`.divider path, path.divider, line.divider`)).map(n=>uo(n,t,r,e.id,g.strokeColor,g.strokeWidth,g.strokeStyle)).filter(e=>e!==null),text:m.map(t=>ha(t.x,t.y,t.text,{id:A(),groupId:r,width:t.width,height:t.height,fontSize:ro,color:t.color,metadata:{entityId:e.id}}))}},_o=(e,t)=>{let n=mo(e,t);if(!n.length)throw Error(`ER relationship ${e.id} not found in rendered SVG`);let r=ho(n);if(r.length<2)throw Error(`ER relationship ${e.id} is missing usable path points`);let i=r[0],a=r[r.length-1],o=n[0],s=J(o.getAttribute(`stroke`)||getComputedStyle(o).stroke||``),c=Number(o.getAttribute(`stroke-width`)||getComputedStyle(o).strokeWidth||1),l=ma(i.x,i.y,a.x,a.y,{id:e.id,label:e.label?{text:I(e.label),fontSize:16,textAlign:`center`}:void 0,strokeStyle:po(e.pattern),startArrowhead:fo(e.arrowTypeStart),endArrowhead:fo(e.arrowTypeEnd),start:{type:`rectangle`,id:e.start},end:{type:`rectangle`,id:e.end},points:r.map(e=>[e.x-i.x,e.y-i.y])});return X(s)&&s!==`none`&&(l.strokeColor=s),Number.isFinite(c)&&c>0&&(l.strokeWidth=c),l},vo=(e,t)=>{let n=e.getData(),r=n.nodes,i=n.edges,a=[],o=[],s=[];r.forEach(e=>{let n=go(e,t);a.push(n.container),o.push(...n.lines),s.push(...n.text)});let c=i.map(e=>_o(e,t));return{type:`erd`,nodes:[a],lines:o,arrows:c,text:s}},$=e=>{let t=J(e||``);return!t||t===`none`||t===`transparent`||t===`rgba(0, 0, 0, 0)`||t===`rgba(0,0,0,0)`?!1:X(t)},yo=(e,t,n)=>{switch(t){case k.FILL:case k.STROKE:$(n)&&(e[t]=J(n));break;case k.STROKE_WIDTH:case k.STROKE_DASHARRAY:J(n)&&(e[t]=J(n));break}},bo=(e,t,n)=>{t===O.COLOR&&$(n)&&(e[O.COLOR]=J(n))},xo=(e,t,n)=>{e&&Y(e).forEach(({property:e,value:r})=>{yo(t,e,r),bo(n,e,r)})},So=(e,t)=>{e&&Y(e).forEach(({property:e,value:n})=>{if(e===k.FILL&&$(n)){t[O.COLOR]=J(n);return}bo(t,e,n)})},Co=e=>{let t=new Set;return e.filter(Boolean).forEach(e=>{Y(e||``).forEach(({property:e})=>{t.add(e)})}),t},wo=(e,t,n)=>{e&&[[k.FILL,e.getAttribute(`fill`)],[k.STROKE,e.getAttribute(`stroke`)],[k.STROKE_WIDTH,e.getAttribute(`stroke-width`)],[k.STROKE_DASHARRAY,e.getAttribute(`stroke-dasharray`)]].forEach(([e,r])=>{if(!n.has(e)||t[e])return;let i=J(r||``);i&&yo(t,e,i)})},To=(e,t,n)=>{if(!e)return;let r=[e,...Array.from(e.querySelectorAll(`text, foreignObject, div, span, p`))];for(let e of r){if(t[O.COLOR]||(n.has(O.COLOR)||n.has(k.FILL))&&(So(e.getAttribute(`style`),t),t[O.COLOR]))break;let r=J(e.getAttribute(`fill`)||e.getAttribute(`color`)||``);(n.has(O.COLOR)||n.has(k.FILL))&&$(r)&&(t[O.COLOR]=r)}},Eo=(e,t)=>{let n=0,r=0,i=e;for(;i&&i!==t;){let{transformX:e,transformY:t}=L(i);n+=e,r+=t,i=i.parentElement}return{tx:n,ty:r}},Do=(e,t)=>{let n=e.getBBox(),{tx:r,ty:i}=Eo(e,t);return{x:n.x+r,y:n.y+i,width:n.width,height:n.height}},Oo=(e,t)=>{let n=e.querySelector(`line.divider`);if(!n)return;let{tx:r,ty:i}=Eo(n,t);return{startX:Number(n.getAttribute(`x1`))+r,startY:Number(n.getAttribute(`y1`))+i,endX:Number(n.getAttribute(`x2`))+r,endY:Number(n.getAttribute(`y2`))+i}},ko=e=>{let t=e.getBBox();return Math.abs(t.width*t.height)},Ao=(e,t)=>{let n=e.getAttribute(`style`);if(!n)return;let r=Y(n).find(e=>e.property===t);if(r)return J(r.value)},jo=(e,t)=>{let n=e.map(e=>({element:e,area:ko(e)})).filter(({area:e})=>Number.isFinite(e)&&e>0);return n.length===0?null:n.sort((e,n)=>t===`largest`?n.area-e.area:e.area-n.area)[0].element},Mo=(e,t)=>{if(!e||!t.has(k.FILL)&&!t.has(k.STROKE))return;let n=J(e.getAttribute(`fill`)||Ao(e,k.FILL)||``),r=J(e.getAttribute(`stroke`)||Ao(e,k.STROKE)||``);if($(n))return n;if($(r))return r},No=(e,t)=>Mo(jo(Array.from(e.querySelectorAll(`circle, ellipse, path`)),`smallest`),t),Po=e=>{if(e.length<2)return e;let t=e.slice(1),n=t.filter(e=>e.trim().length>0).reduce((e,t)=>{let n=t.match(/^\s*/)?.[0].length??0;return Math.min(e,n)},1/0);return!Number.isFinite(n)||n<=0?e.map(e=>e.trimEnd()):[e[0].trimEnd(),...t.map(e=>e.replace(RegExp(`^\\s{0,${n}}`),``).trimEnd())]},Fo=e=>Po(Array.isArray(e.label)?e.label.map(e=>I(e)):I(e.label||``).split(`
|
|
28
|
+
`)).join(`
|
|
29
|
+
`),Io=e=>e.description?(Array.isArray(e.description)?e.description:[e.description]).map(e=>I(e)).filter(e=>e.length>0):[],Lo=e=>{let t=new Set,n=e=>(e&&t.add(e),e),r=e=>{let r=e.find(e=>!t.has(e));return n(r||null)};return t=>{let i=[`[id='${t.domId}']`,`[id='${t.id}']`,`[data-id='${t.id}']`];for(let t of i){let r=e.querySelector(t);if(r)return n(r)}switch(t.shape){case`divider`:return r(Array.from(e.querySelectorAll(`g.statediagram-cluster-alt`)));case`stateStart`:return r(Array.from(e.querySelectorAll(`g.node.default`)).filter(e=>e.querySelector(`circle.state-start`)));case`stateEnd`:return r(Array.from(e.querySelectorAll(`g.node.default`)).filter(e=>!e.querySelector(`circle.state-start`)));default:return null}}},Ro=(e,t)=>{switch(t){case`roundedWithTitle`:return e.querySelector(`rect.outer`)||e.querySelector(`rect`)||e;case`divider`:return e.querySelector(`rect.divider`)||e.querySelector(`rect`)||e;case`rectWithTitle`:return e.querySelector(`rect.outer`)||e.querySelector(`rect`)||e;case`stateStart`:return jo(Array.from(e.querySelectorAll(`circle, ellipse, path`)),`largest`)||e;case`stateEnd`:return jo(Array.from(e.querySelectorAll(`circle, ellipse, path`)),`largest`)||e;default:return e.querySelector(`rect, path, circle, ellipse, polygon`)||e}},zo=(e,t,n)=>{let r=n(e);if(!r)throw Error(`State node element not found for "${e.id}"`);let i=Ro(r,e.shape),a={},o={},s=[e.labelStyle,...e.cssCompiledStyles||[],...e.cssStyles||[]],c=Co(s);s.filter(Boolean).forEach(e=>{xo(e,a,o)}),wo(i,a,c),To(r,o,c);let l=Do(i,t);return{id:e.id,shape:e.shape,text:Fo(e),description:Io(e),x:l.x,y:l.y,width:l.width,height:l.height,parentId:e.parentId,position:e.position,containerStyle:a,labelStyle:o,dividerLine:e.shape===`rectWithTitle`?Oo(r,t):void 0,endInnerColor:e.shape===`stateEnd`?No(r,c):void 0,isRenderable:e.shape!==`noteGroup`}},Bo=(e,t)=>{let n=t.querySelector(`[id='${e.id}']`);if(!n)return null;let{tx:r,ty:i}=Eo(n,t),a=At(n,{x:r,y:i},`MCL`);if(a.reflectionPoints.length<2)return null;let o={},s=(e,t)=>{switch(e){case k.STROKE:$(t)&&(o.strokeColor=J(t));break;case k.STROKE_WIDTH:{let e=parseFloat(J(t));Number.isFinite(e)&&e>0&&(o.strokeWidth=e);break}case k.STROKE_DASHARRAY:J(t)&&(o.strokeStyle=`dashed`);break}};[e.style].filter(Boolean).forEach(e=>{Y(e||``).forEach(({property:e,value:t})=>{s(e,t)})});let c=e.arrowhead===`none`||e.classes?.includes(`note-edge`);return{id:e.id,start:e.start,end:e.end,text:I(e.label||``),...a,strokeColor:o.strokeColor,strokeWidth:o.strokeWidth,strokeStyle:c?`dashed`:o.strokeStyle,isNoteEdge:c}},Vo=(e,t)=>{let{nodes:n,edges:r}=e.getData(),i=Lo(t);return{type:`state`,nodes:n.map(e=>zo(e,t,i)),edges:r.map(e=>Bo(e,t)).filter(e=>e!==null)}},Ho=Promise.resolve(),Uo=e=>{let t=Ho.then(e,e);return Ho=t.then(()=>void 0,()=>void 0),t},Wo=null,Go=0,Ko=e=>JSON.stringify(e),qo=e=>{let t=e.querySelector(`svg`);if(!t)throw Error(`SVG element not found`);let n=t.getBoundingClientRect(),r=n.width,i=n.height;t.setAttribute(`width`,`${r}`),t.setAttribute(`height`,`${i}`);let a=unescape(encodeURIComponent(t.outerHTML));return{type:`graphImage`,mimeType:`image/svg+xml`,dataURL:`data:image/svg+xml;base64,${btoa(a)}`,width:r,height:i}},Jo=async(e,t=Se)=>Uo(async()=>{let n=t.themeVariables?.fontSize??Se.themeVariables.fontSize,r={...Se,...t,fontSize:n,themeVariables:{...Se.themeVariables,...t.themeVariables,fontSize:n}},i=Ko(r);i!==Wo&&(Xi.initialize(r),Wo=i);let a=await Xi.mermaidAPI.getDiagramFromText(wt(e)),o=`mermaid-to-excalidraw-${Go++}`,s=document.createElement(`div`);s.setAttribute(`style`,`opacity: 0; position: fixed; z-index: -1; left: -99999px; top: -99999px;`);let c=`${o}-container`;s.id=c,document.getElementById(c)?.remove(),document.body.appendChild(s);try{let{svg:t}=await Xi.render(o,e,s);s.innerHTML=t;let n;try{switch(a.type){case`flowchart-v2`:case`graph`:n=fa(a.db,s);break;case`sequence`:n=ka(a,s);break;case`class`:case`classDiagram`:n=no(a,s);break;case`er`:n=vo(a.db,s);break;case`state`:case`stateDiagram`:n=Vo(a.db,s);break;default:n=qo(s)}}catch(e){console.error(`Error processing Mermaid diagram:`,e),n=qo(s)}return n}finally{s.remove()}}),Yo=async(e,t)=>{let n=t||{},r=parseInt(n.themeVariables?.fontSize??``)||20;return Mt(await Jo(e,{...n,themeVariables:{...n.themeVariables}}),{fontSize:r})};export{Yo as parseMermaidToExcalidraw};
|
package/dist/client/assets/{ebnfDiagram-CCIWWBDH-83eSAR_O.js → ebnfDiagram-PWID7BFC-V5TBUB27.js}
RENAMED
|
@@ -1 +1 @@
|
|
|
1
|
-
import{n as e}from"./chunk-Y2CYZVJY-DsF7k-Jl.js";import{t}from"./src-
|
|
1
|
+
import{n as e}from"./chunk-Y2CYZVJY-DsF7k-Jl.js";import{t}from"./src-vDqOmCca.js";import"./chunk-DU6HZSFF-B9PGrM0S.js";import"./chunk-CLGD4ZFX-C0R2i_19.js";import{f as n,t as r}from"./mermaid-parser.core-cJplg8ws.js";import{n as i,r as a,t as o}from"./chunk-SVP7TREG-80pA_2GH.js";import{t as s}from"./chunk-JWPE2WC7-DVXcaiue.js";var c=n().RailroadEbnf.parser.LangiumParser,l=e(e=>{let t=e.alternatives.map(u);return t.length===1?t[0]:{type:`choice`,alternatives:t}},`transformChoice`),u=e(e=>{let t=e.elements.map(p);return t.length===1?t[0]:{type:`sequence`,elements:t}},`transformSequence`),d=e(e=>{switch(e.$type){case`EbnfTerminal`:return{type:`terminal`,value:e.value};case`EbnfNonTerminal`:return{type:`nonterminal`,name:e.name};case`EbnfSpecial`:return{type:`special`,text:e.text};case`EbnfGroup`:return l(e.element);case`EbnfOptional`:return{type:`optional`,element:l(e.element)};case`EbnfRepetition`:return{type:`repetition`,element:l(e.element),min:0,max:1/0};default:throw Error(`Unsupported EBNF primary node: ${e.$type}`)}},`transformPrimary`),f=e((e,t)=>{switch(t.$type){case`EbnfOptionalPostfix`:return{type:`optional`,element:e};case`EbnfZeroOrMorePostfix`:return{type:`repetition`,element:e,min:0,max:1/0};case`EbnfOneOrMorePostfix`:return{type:`repetition`,element:e,min:1,max:1/0};case`EbnfExceptionPostfix`:return{type:`sequence`,elements:[e,{type:`terminal`,value:`-`},d(t.except)]};default:throw Error(`Unsupported EBNF postfix node: ${t.$type}`)}},`transformPostfix`),p=e(e=>e.postfixes.reduce((e,t)=>f(e,t),d(e.base)),`transformTerm`),m=e(e=>({name:e.name,definition:l(e.definition)}),`transformRule`),h=e(e=>{s(e,o),e.title&&o.setTitle(e.title),e.rules.map(e=>o.addRule(m(e)))},`populateDb`),g={parser:{parse:e(e=>{o.clear(),t.debug(`[EBNF Parser] Starting Langium parse`);let n=c.parse(e);if(n.lexerErrors.length>0||n.parserErrors.length>0)throw new r(n);let i=n.value;t.debug(`[EBNF Parser] Parsed rules:`,i.rules.length),h(i),t.debug(`[EBNF Parser] Parse complete`)},`parse`),parser:{yy:o}},db:o,renderer:a,styles:i};export{g as diagram};
|
|
@@ -0,0 +1,99 @@
|
|
|
1
|
+
import{p as e}from"./index-B11N7mVL.js";import{n as t,t as n}from"./chunk-Y2CYZVJY-DsF7k-Jl.js";import{t as r}from"./src-vDqOmCca.js";import{H as i,K as a,U as o,a as s,it as c,s as l,v as u,w as d,x as f,y as p}from"./chunk-DU6HZSFF-B9PGrM0S.js";import{t as m}from"./channel-BAs8lRyw.js";import{c as h,g}from"./chunk-75Z2AOVW-BSJ7TCsD.js";import"./chunk-P2QGCYS3-Bu8IRfP3.js";import"./chunk-PWAF6VOD-Dvb7qjWz.js";import"./chunk-GMAD6QVW-CYVpwKkW.js";import"./chunk-4HAMMTFA-e90ut0hg.js";import"./chunk-GVQU2GXP-BJblveWS.js";import"./chunk-L3NEJ4N5-DxCFFP_W.js";import"./chunk-OSK3NFVY-BMSa3Vfd.js";import{r as _,t as v}from"./chunk-TLUHSLCS-DB6mQIZ1.js";import{t as y}from"./chunk-XXDRQBXY-UjAooa0y.js";import{t as b}from"./chunk-POPQ4Y6H-D5kqONCm.js";var x=(function(){var e=t(function(e,t,n,r){for(n||={},r=e.length;r--;n[e[r]]=t);return n},`o`),n=[6,9,21,23,25,27,34,37,38,39,40,41,43,46,47,51,53,54,55],r=[2,2],i=[1,7],a=[1,9],o=[1,10],s=[1,11],c=[1,12],l=[1,30],u=[1,23],d=[1,24],f=[1,25],p=[1,26],m=[1,27],h=[1,19],g=[1,28],_=[1,29],v=[1,20],y=[1,18],b=[1,21],x=[1,22],S=[2,6],C=[6,9,21,23,25,27,33,34,37,38,39,40,41,43,46,47,51,53,54,55],w=[1,36],T=[1,37],E=[1,38],D=[1,39],O=[1,40],k=[6,9,12,14,16,19,20,21,23,25,27,33,34,37,38,39,40,41,43,46,47,50,51,53,54,55,69,70,71,72,73],A=[1,46],j=[1,47],M=[1,57],N=[43,51,53,54,55,74,75],P=[1,70],F=[1,68],I=[1,65],L=[1,69],R=[1,71],z=[6,9,12,16,21,23,25,27,33,34,37,38,39,40,41,43,44,45,46,47,51,52,53,54,55,69,70,71,72,73],B=[1,78],V=[1,77],H=[1,76],U=[69,70,71,72,73],W=[1,91],G=[6,9,45,50],K=[6,9,12,44,45,50,51,52],q=[1,101],J=[1,100],Y=[1,99],X=[18,61],ee=[1,110],te=[1,109],ne=[20,43,51,53,54,55],Z=[18,61,64,66],Q={trace:t(function(){},`trace`),yy:{},symbols_:{error:2,start:3,ER_DIAGRAM:4,document:5,EOF:6,line:7,statement:8,NEWLINE:9,entityName:10,relSpec:11,COLON:12,role:13,STYLE_SEPARATOR:14,idList:15,BLOCK_START:16,attributes:17,BLOCK_STOP:18,SQS:19,SQE:20,title:21,title_value:22,acc_title:23,acc_title_value:24,acc_descr:25,acc_descr_value:26,acc_descr_multiline_value:27,direction:28,classDefStatement:29,classStatement:30,styleStatement:31,subgraphHeader:32,END:33,SUBGRAPH:34,separator:35,subgraphTitle:36,direction_tb:37,direction_bt:38,direction_rl:39,direction_lr:40,CLASSDEF:41,stylesOpt:42,UNICODE_TEXT:43,STYLE_TEXT:44,COMMA:45,CLASS:46,STYLE:47,style:48,styleComponent:49,SEMI:50,NUM:51,BRKT:52,ENTITY_NAME:53,DECIMAL_NUM:54,ENTITY_ONE:55,attribute:56,attributeType:57,attributeName:58,attributeKeyTypeList:59,attributeComment:60,ATTRIBUTE_WORD:61,"?":62,attributeKeyType:63,",":64,ATTRIBUTE_KEY:65,COMMENT:66,cardinality:67,relType:68,ZERO_OR_ONE:69,ZERO_OR_MORE:70,ONE_OR_MORE:71,ONLY_ONE:72,MD_PARENT:73,NON_IDENTIFYING:74,IDENTIFYING:75,WORD:76,$accept:0,$end:1},terminals_:{2:`error`,4:`ER_DIAGRAM`,6:`EOF`,9:`NEWLINE`,12:`COLON`,14:`STYLE_SEPARATOR`,16:`BLOCK_START`,18:`BLOCK_STOP`,19:`SQS`,20:`SQE`,21:`title`,22:`title_value`,23:`acc_title`,24:`acc_title_value`,25:`acc_descr`,26:`acc_descr_value`,27:`acc_descr_multiline_value`,33:`END`,34:`SUBGRAPH`,37:`direction_tb`,38:`direction_bt`,39:`direction_rl`,40:`direction_lr`,41:`CLASSDEF`,43:`UNICODE_TEXT`,44:`STYLE_TEXT`,45:`COMMA`,46:`CLASS`,47:`STYLE`,50:`SEMI`,51:`NUM`,52:`BRKT`,53:`ENTITY_NAME`,54:`DECIMAL_NUM`,55:`ENTITY_ONE`,61:`ATTRIBUTE_WORD`,62:`?`,64:`,`,65:`ATTRIBUTE_KEY`,66:`COMMENT`,69:`ZERO_OR_ONE`,70:`ZERO_OR_MORE`,71:`ONE_OR_MORE`,72:`ONLY_ONE`,73:`MD_PARENT`,74:`NON_IDENTIFYING`,75:`IDENTIFYING`,76:`WORD`},productions_:[0,[3,3],[5,0],[5,2],[7,1],[7,1],[7,1],[8,5],[8,9],[8,7],[8,7],[8,4],[8,6],[8,3],[8,5],[8,1],[8,3],[8,7],[8,9],[8,6],[8,8],[8,4],[8,6],[8,2],[8,2],[8,2],[8,1],[8,1],[8,1],[8,1],[8,1],[8,3],[32,3],[32,6],[36,1],[36,2],[28,1],[28,1],[28,1],[28,1],[29,4],[15,1],[15,1],[15,3],[15,3],[30,3],[31,4],[42,1],[42,3],[48,1],[48,2],[35,1],[35,1],[35,1],[49,1],[49,1],[49,1],[49,1],[10,1],[10,1],[10,1],[10,1],[10,1],[17,1],[17,2],[56,2],[56,3],[56,3],[56,4],[57,1],[57,2],[58,1],[59,1],[59,3],[63,1],[60,1],[11,3],[67,1],[67,1],[67,1],[67,1],[67,1],[68,1],[68,1],[13,1],[13,1],[13,1]],performAction:t(function(e,t,n,r,i,a,o){var s=a.length-1;switch(i){case 1:break;case 2:this.$=[];break;case 3:this.$=a[s-1].concat(a[s]);break;case 4:this.$=a[s];break;case 5:case 6:this.$=[];break;case 7:r.addEntity(a[s-4]),r.addEntity(a[s-2]),r.addRelationship(a[s-4],a[s],a[s-2],a[s-3]),this.$=[a[s-4],a[s-2]];break;case 8:r.addEntity(a[s-8]),r.addEntity(a[s-4]),r.addRelationship(a[s-8],a[s],a[s-4],a[s-5]),r.setClass([a[s-8]],a[s-6]),r.setClass([a[s-4]],a[s-2]),this.$=[a[s-8],a[s-4]];break;case 9:r.addEntity(a[s-6]),r.addEntity(a[s-2]),r.addRelationship(a[s-6],a[s],a[s-2],a[s-3]),r.setClass([a[s-6]],a[s-4]),this.$=[a[s-6],a[s-2]];break;case 10:r.addEntity(a[s-6]),r.addEntity(a[s-4]),r.addRelationship(a[s-6],a[s],a[s-4],a[s-5]),r.setClass([a[s-4]],a[s-2]),this.$=[a[s-6],a[s-4]];break;case 11:r.addEntity(a[s-3]),r.addAttributes(a[s-3],a[s-1]),this.$=[a[s-3]];break;case 12:r.addEntity(a[s-5]),r.addAttributes(a[s-5],a[s-1]),r.setClass([a[s-5]],a[s-3]),this.$=[a[s-5]];break;case 13:r.addEntity(a[s-2]),this.$=[a[s-2]];break;case 14:r.addEntity(a[s-4]),r.setClass([a[s-4]],a[s-2]),this.$=[a[s-4]];break;case 15:r.addEntity(a[s]),this.$=[a[s]];break;case 16:r.addEntity(a[s-2]),r.setClass([a[s-2]],a[s]),this.$=[a[s-2]];break;case 17:r.addEntity(a[s-6],a[s-4]),r.addAttributes(a[s-6],a[s-1]),this.$=[a[s-6]];break;case 18:r.addEntity(a[s-8],a[s-6]),r.addAttributes(a[s-8],a[s-1]),r.setClass([a[s-8]],a[s-3]),this.$=[a[s-8]];break;case 19:r.addEntity(a[s-5],a[s-3]),this.$=[a[s-5]];break;case 20:r.addEntity(a[s-7],a[s-5]),r.setClass([a[s-7]],a[s-2]),this.$=[a[s-7]];break;case 21:r.addEntity(a[s-3],a[s-1]);break;case 22:r.addEntity(a[s-5],a[s-3]),r.setClass([a[s-5]],a[s]);break;case 23:case 24:this.$=a[s].trim(),r.setAccTitle(this.$);break;case 25:case 26:this.$=a[s].trim(),r.setAccDescription(this.$);break;case 27:r.subgraphDepth?this.$=a[s]:(r.setDirection(a[s].value),this.$=[]);break;case 31:r.subgraphDepth=(r.subgraphDepth||1)-1,this.$=r.addSubGraph({text:a[s-2].id},a[s-1],{text:a[s-2].text});break;case 32:r.subgraphDepth=(r.subgraphDepth||0)+1,this.$={id:a[s-1],text:a[s-1]};break;case 33:r.subgraphDepth=(r.subgraphDepth||0)+1,this.$={id:a[s-4],text:a[s-2]};break;case 34:case 59:case 60:case 61:case 62:case 86:this.$=a[s];break;case 35:this.$=a[s-1]+` `+a[s];break;case 36:this.$={stmt:`dir`,value:`TB`};break;case 37:this.$={stmt:`dir`,value:`BT`};break;case 38:this.$={stmt:`dir`,value:`RL`};break;case 39:this.$={stmt:`dir`,value:`LR`};break;case 40:this.$=a[s-3],r.addClass(a[s-2],a[s-1]);break;case 41:case 42:case 63:case 72:this.$=[a[s]];break;case 43:case 44:this.$=a[s-2].concat([a[s]]);break;case 45:this.$=a[s-2],r.setClass(a[s-1],a[s]);break;case 46:this.$=a[s-3],r.addCssStyles(a[s-2],a[s-1]);break;case 47:this.$=[a[s]];break;case 48:a[s-2].push(a[s]),this.$=a[s-2];break;case 50:this.$=a[s-1]+a[s];break;case 58:case 84:case 85:this.$=a[s].replace(/"/g,``);break;case 64:a[s].push(a[s-1]),this.$=a[s];break;case 65:this.$={type:a[s-1],name:a[s]};break;case 66:this.$={type:a[s-2],name:a[s-1],keys:a[s]};break;case 67:this.$={type:a[s-2],name:a[s-1],comment:a[s]};break;case 68:this.$={type:a[s-3],name:a[s-2],keys:a[s-1],comment:a[s]};break;case 69:case 71:case 74:this.$=a[s];break;case 70:this.$=a[s-1]+a[s];break;case 73:a[s-2].push(a[s]),this.$=a[s-2];break;case 75:this.$=a[s].replace(/"/g,``);break;case 76:this.$={cardA:a[s],relType:a[s-1],cardB:a[s-2]};break;case 77:this.$=r.Cardinality.ZERO_OR_ONE;break;case 78:this.$=r.Cardinality.ZERO_OR_MORE;break;case 79:this.$=r.Cardinality.ONE_OR_MORE;break;case 80:this.$=r.Cardinality.ONLY_ONE;break;case 81:this.$=r.Cardinality.MD_PARENT;break;case 82:this.$=r.Identification.NON_IDENTIFYING;break;case 83:this.$=r.Identification.IDENTIFYING;break}},`anonymous`),table:[{3:1,4:[1,2]},{1:[3]},e(n,r,{5:3}),{6:[1,4],7:5,8:6,9:i,10:8,21:a,23:o,25:s,27:c,28:13,29:14,30:15,31:16,32:17,34:l,37:u,38:d,39:f,40:p,41:m,43:h,46:g,47:_,51:v,53:y,54:b,55:x},e(n,S,{1:[2,1]}),e(C,[2,3]),e(C,[2,4]),e(C,[2,5]),e(C,[2,15],{11:31,67:35,14:[1,32],16:[1,33],19:[1,34],69:w,70:T,71:E,72:D,73:O}),{22:[1,41]},{24:[1,42]},{26:[1,43]},e(C,[2,26]),e(C,[2,27]),e(C,[2,28]),e(C,[2,29]),e(C,[2,30]),e(C,r,{5:44}),e(k,[2,58]),e(k,[2,59]),e(k,[2,60]),e(k,[2,61]),e(k,[2,62]),e(C,[2,36]),e(C,[2,37]),e(C,[2,38]),e(C,[2,39]),{15:45,43:A,44:j},{15:48,43:A,44:j},{15:49,43:A,44:j},{10:50,43:h,51:v,53:y,54:b,55:x},{10:51,43:h,51:v,53:y,54:b,55:x},{15:52,43:A,44:j},{17:53,18:[1,54],56:55,57:56,61:M},{10:58,43:h,51:v,53:y,54:b,55:x},{68:59,74:[1,60],75:[1,61]},e(N,[2,77]),e(N,[2,78]),e(N,[2,79]),e(N,[2,80]),e(N,[2,81]),e(C,[2,23]),e(C,[2,24]),e(C,[2,25]),{6:[1,63],7:5,8:6,9:i,10:8,21:a,23:o,25:s,27:c,28:13,29:14,30:15,31:16,32:17,33:[1,62],34:l,37:u,38:d,39:f,40:p,41:m,43:h,46:g,47:_,51:v,53:y,54:b,55:x},{12:P,42:64,44:F,45:I,48:66,49:67,51:L,52:R},e(z,[2,41]),e(z,[2,42]),{15:72,43:A,44:j,45:I},{12:P,42:73,44:F,45:I,48:66,49:67,51:L,52:R},{6:B,9:V,19:[1,75],35:74,50:H},{12:[1,79],14:[1,80]},e(C,[2,16],{67:35,11:81,16:[1,82],45:I,69:w,70:T,71:E,72:D,73:O}),{18:[1,83]},e(C,[2,13]),{17:84,18:[2,63],56:55,57:56,61:M},{58:85,61:[1,86]},{61:[2,69],62:[1,87]},{20:[1,88]},{67:89,69:w,70:T,71:E,72:D,73:O},e(U,[2,82]),e(U,[2,83]),e(C,[2,31]),e(C,S),{6:B,9:V,35:90,45:W,50:H},{43:[1,92],44:[1,93]},e(G,[2,47],{49:94,12:P,44:F,51:L,52:R}),e(K,[2,49]),e(K,[2,54]),e(K,[2,55]),e(K,[2,56]),e(K,[2,57]),e(C,[2,45],{45:I}),{6:B,9:V,35:95,45:W,50:H},e(C,[2,32]),{10:97,36:96,43:h,51:v,53:y,54:b,55:x},e(C,[2,51]),e(C,[2,52]),e(C,[2,53]),{13:98,43:q,53:J,76:Y},{15:102,43:A,44:j},{10:103,43:h,51:v,53:y,54:b,55:x},{17:104,18:[1,105],56:55,57:56,61:M},e(C,[2,11]),{18:[2,64]},e(X,[2,65],{59:106,60:107,63:108,65:ee,66:te}),e([18,61,65,66],[2,71]),{61:[2,70]},e(C,[2,21],{14:[1,112],16:[1,111]}),e([43,51,53,54,55],[2,76]),e(C,[2,40]),{12:P,44:F,48:113,49:67,51:L,52:R},e(z,[2,43]),e(z,[2,44]),e(K,[2,50]),e(C,[2,46]),{10:115,20:[1,114],43:h,51:v,53:y,54:b,55:x},e(ne,[2,34]),e(C,[2,7]),e(C,[2,84]),e(C,[2,85]),e(C,[2,86]),{12:[1,116],45:I},{12:[1,118],14:[1,117]},{18:[1,119]},e(C,[2,14]),e(X,[2,66],{60:120,64:[1,121],66:te}),e(X,[2,67]),e(Z,[2,72]),e(X,[2,75]),e(Z,[2,74]),{17:122,18:[1,123],56:55,57:56,61:M},{15:124,43:A,44:j},e(G,[2,48],{49:94,12:P,44:F,51:L,52:R}),{6:B,9:V,35:125,50:H},e(ne,[2,35]),{13:126,43:q,53:J,76:Y},{15:127,43:A,44:j},{13:128,43:q,53:J,76:Y},e(C,[2,12]),e(X,[2,68]),{63:129,65:ee},{18:[1,130]},e(C,[2,19]),e(C,[2,22],{16:[1,131],45:I}),e(C,[2,33]),e(C,[2,10]),{12:[1,132],45:I},e(C,[2,9]),e(Z,[2,73]),e(C,[2,17]),{17:133,18:[1,134],56:55,57:56,61:M},{13:135,43:q,53:J,76:Y},{18:[1,136]},e(C,[2,20]),e(C,[2,8]),e(C,[2,18])],defaultActions:{84:[2,64],87:[2,70]},parseError:t(function(e,t){if(t.recoverable)this.trace(e);else{var n=Error(e);throw n.hash=t,n}},`parseError`),parse:t(function(e){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(e,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}t(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}t(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
|
+
`+h.showPosition()+`
|
|
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`)};Q.lexer=(function(){return{EOF:1,parseError:t(function(e,t){if(this.yy.parser)this.yy.parser.parseError(e,t);else throw Error(e)},`parseError`),setInput:t(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:t(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:t(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:t(function(){return this._more=!0,this},`more`),reject:t(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
|
+
`+this.showPosition(),{text:``,token:null,line:this.yylineno});return this},`reject`),less:t(function(e){this.unput(this.match.slice(e))},`less`),pastInput:t(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:t(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:t(function(){var e=this.pastInput(),t=Array(e.length+1).join(`-`);return e+this.upcomingInput()+`
|
|
5
|
+
`+t+`^`},`showPosition`),test_match:t(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:t(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}else return!1}else if(!this.options.flex)break}return t?(e=this.test_match(t,i[r]),e===!1?!1:e):this._input===``?this.EOF:this.parseError(`Lexical error on line `+(this.yylineno+1)+`. Unrecognized text.
|
|
6
|
+
`+this.showPosition(),{text:``,token:null,line:this.yylineno})},`next`),lex:t(function(){return this.next()||this.lex()},`lex`),begin:t(function(e){this.conditionStack.push(e)},`begin`),popState:t(function(){return this.conditionStack.length-1>0?this.conditionStack.pop():this.conditionStack[0]},`popState`),_currentRules:t(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:t(function(e){return e=this.conditionStack.length-1-Math.abs(e||0),e>=0?this.conditionStack[e]:`INITIAL`},`topState`),pushState:t(function(e){this.begin(e)},`pushState`),stateStackSize:t(function(){return this.conditionStack.length},`stateStackSize`),options:{"case-insensitive":!0},performAction:t(function(e,t,n,r){switch(n){case 0:return this.begin(`acc_title`),23;case 1:return this.popState(),`acc_title_value`;case 2:return this.begin(`acc_descr`),25;case 3:return this.popState(),`acc_descr_value`;case 4:this.begin(`acc_descr_multiline`);break;case 5:this.popState();break;case 6:return`acc_descr_multiline_value`;case 7:return 37;case 8:return 38;case 9:return 39;case 10:return 40;case 11:break;case 12:return 9;case 13:return 53;case 14:return 76;case 15:return 4;case 16:return this.begin(`block`),16;case 17:return 52;case 18:return 52;case 19:return 45;case 20:return 14;case 21:return 12;case 22:break;case 23:return 65;case 24:return 61;case 25:return 61;case 26:this.begin(`block_bq`);break;case 27:return 61;case 28:this.popState();break;case 29:return 66;case 30:break;case 31:return this.popState(),18;case 32:return t.yytext[0];case 33:return 19;case 34:return 20;case 35:return this.begin(`style`),47;case 36:return this.popState(),9;case 37:break;case 38:return 12;case 39:return 45;case 40:return 52;case 41:return this.begin(`style`),41;case 42:return 46;case 43:return 34;case 44:return 33;case 45:return 69;case 46:return 71;case 47:return 71;case 48:return 71;case 49:return 69;case 50:return 69;case 51:return 70;case 52:return 70;case 53:return 70;case 54:return 70;case 55:return 70;case 56:return 71;case 57:return 70;case 58:return 71;case 59:return 72;case 60:return 72;case 61:return 54;case 62:return 72;case 63:return 72;case 64:return 72;case 65:return 55;case 66:return 51;case 67:return 72;case 68:return 69;case 69:return 70;case 70:return 71;case 71:return 73;case 72:return 74;case 73:return 75;case 74:return 75;case 75:return 74;case 76:return 74;case 77:return 74;case 78:return 44;case 79:return 50;case 80:return 43;case 81:return t.yytext[0];case 82:return 6}},`anonymous`),rules:[/^(?:accTitle\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*\{\s*)/i,/^(?:[\}])/i,/^(?:[^\}]*)/i,/^(?:.*direction\s+TB[^\n]*)/i,/^(?:.*direction\s+BT[^\n]*)/i,/^(?:.*direction\s+RL[^\n]*)/i,/^(?:.*direction\s+LR[^\n]*)/i,/^(?:[ \t\r]+)/i,/^(?:[\n]+)/i,/^(?:"[^"%\r\n\v\b\\]+")/i,/^(?:"[^"]*")/i,/^(?:erDiagram\b)/i,/^(?:\{)/i,/^(?:#)/i,/^(?:#)/i,/^(?:,)/i,/^(?::::)/i,/^(?::)/i,/^(?:\s+)/i,/^(?:\b((?:PK)|(?:FK)|(?:UK))\b)/i,/^(?:([^\s]*)[~].*[~]([^\s]*))/i,/^(?:([\*A-Za-z_\u00C0-\uFFFF][A-Za-z0-9\-\_\[\]\(\)\.,\u00C0-\uFFFF\*]*))/i,/^(?:[`])/i,/^(?:[^`]+)/i,/^(?:[`])/i,/^(?:"[^"]*")/i,/^(?:[\n]+)/i,/^(?:\})/i,/^(?:.)/i,/^(?:\[)/i,/^(?:\])/i,/^(?:style\b)/i,/^(?:[\n]+)/i,/^(?:\s+)/i,/^(?::)/i,/^(?:,)/i,/^(?:#)/i,/^(?:classDef\b)/i,/^(?:class\b)/i,/^(?:subgraph\b)/i,/^(?:end\b\s*)/i,/^(?:one or zero\b)/i,/^(?:one or more\b)/i,/^(?:one or many\b)/i,/^(?:1\+)/i,/^(?:\|o\b)/i,/^(?:zero or one\b)/i,/^(?:zero or more\b)/i,/^(?:zero or many\b)/i,/^(?:0\+)/i,/^(?:\}o\b)/i,/^(?:many\(0\))/i,/^(?:many\(1\))/i,/^(?:many\b)/i,/^(?:\}\|)/i,/^(?:one\b)/i,/^(?:only one\b)/i,/^(?:[0-9]+\.[0-9]+)/i,/^(?:1(?=\s+[A-Za-z_"']))/i,/^(?:1(?=\s+[0-9]))/i,/^(?:1(?=(--|\.\.|\.-|-\.)))/i,/^(?:1\b)/i,/^(?:[0-9]+)/i,/^(?:\|\|)/i,/^(?:o\|)/i,/^(?:o\{)/i,/^(?:\|\{)/i,/^(?:u(?=[\.\-\|]))/i,/^(?:\.\.)/i,/^(?:--)/i,/^(?:to\b)/i,/^(?:optionally to\b)/i,/^(?:\.-)/i,/^(?:-\.)/i,/^(?:([^\x00-\x7F]|\w|-|\*)+)/i,/^(?:;)/i,/^(?:([^\x00-\x7F]|\w|-|\*|\.)+)/i,/^(?:.)/i,/^(?:$)/i],conditions:{style:{rules:[36,37,38,39,40,78,79],inclusive:!1},acc_descr_multiline:{rules:[5,6],inclusive:!1},acc_descr:{rules:[3],inclusive:!1},acc_title:{rules:[1],inclusive:!1},block_bq:{rules:[27,28],inclusive:!1},block:{rules:[22,23,24,25,26,29,30,31,32],inclusive:!1},INITIAL:{rules:[0,2,4,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,33,34,35,41,42,43,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,75,76,77,80,81,82],inclusive:!0}}}})();function $(){this.yy={}}return t($,`Parser`),$.prototype=Q,Q.Parser=$,new $})();x.parser=x;var S=x,C=class{constructor(){this.entities=new Map,this.relationships=[],this.classes=new Map,this.subgraphDepth=0,this.subGraphs=[],this.subGraphLookup=new Map,this.subCount=0,this.direction=`TB`,this.Cardinality={ZERO_OR_ONE:`ZERO_OR_ONE`,ZERO_OR_MORE:`ZERO_OR_MORE`,ONE_OR_MORE:`ONE_OR_MORE`,ONLY_ONE:`ONLY_ONE`,MD_PARENT:`MD_PARENT`},this.Identification={NON_IDENTIFYING:`NON_IDENTIFYING`,IDENTIFYING:`IDENTIFYING`},this.setAccTitle=o,this.getAccTitle=p,this.setAccDescription=i,this.getAccDescription=u,this.setDiagramTitle=a,this.getDiagramTitle=d,this.getConfig=t(()=>f().er,`getConfig`),this.clear(),this.addEntity=this.addEntity.bind(this),this.addAttributes=this.addAttributes.bind(this),this.addRelationship=this.addRelationship.bind(this),this.setDirection=this.setDirection.bind(this),this.addCssStyles=this.addCssStyles.bind(this),this.addClass=this.addClass.bind(this),this.setClass=this.setClass.bind(this),this.setAccTitle=this.setAccTitle.bind(this),this.setAccDescription=this.setAccDescription.bind(this),this.addSubGraph=this.addSubGraph.bind(this)}static{t(this,`ErDB`)}addEntity(e,t=``){return this.entities.has(e)?!this.entities.get(e)?.alias&&t&&(this.entities.get(e).alias=t,r.info(`Add alias '${t}' to entity '${e}'`)):(this.entities.set(e,{id:`entity-${e}-${this.entities.size}`,label:e,attributes:[],alias:t,shape:`erBox`,look:f().look??`default`,cssClasses:`default`,cssStyles:[],labelType:`markdown`}),r.info(`Added new entity :`,e)),this.entities.get(e)}getEntity(e){return this.entities.get(e)}getEntities(){return this.entities}getClasses(){return this.classes}addAttributes(e,t){let n=this.addEntity(e),i;for(i=t.length-1;i>=0;i--)t[i].keys||(t[i].keys=[]),t[i].comment||(t[i].comment=``),n.attributes.push(t[i]),r.debug(`Added attribute `,t[i].name)}addRelationship(e,t,n,i){let a;if(this.subGraphLookup.has(e))a=e;else{let t=this.addEntity(e);if(!t)return;a=t.id}let o;if(this.subGraphLookup.has(n))o=n;else{let e=this.addEntity(n);if(!e)return;o=e.id}let s={entityA:a,roleA:t,entityB:o,relSpec:i};this.relationships.push(s),r.debug(`Added new relationship :`,s)}getRelationships(){return this.relationships}getDirection(){return this.direction}setDirection(e){this.direction=e}getCompiledStyles(e){let t=[];for(let n of e){let e=this.classes.get(n);e?.styles&&(t=[...t,...e.styles??[]].map(e=>e.trim())),e?.textStyles&&(t=[...t,...e.textStyles??[]].map(e=>e.trim()))}return t}addCssStyles(e,t){for(let n of e){let e=this.entities.get(n),r=this.subGraphLookup.get(n);if(t){if(e)for(let n of t)e.cssStyles.push(n);if(r){r.cssStyles||=[];for(let e of t)r.cssStyles.push(e)}}}}addClass(e,t){e.forEach(e=>{let n=this.classes.get(e);n===void 0&&(n={id:e,styles:[],textStyles:[]},this.classes.set(e,n)),t&&t.forEach(function(e){if(/color/.exec(e)){let t=e.replace(`fill`,`bgFill`);n.textStyles.push(t)}n.styles.push(e)})})}addSubGraph(e,n,i){let a=e.text.trim(),o=i.text,s=t(e=>{let t=new Set,n;return{nodeList:e.filter(e=>{if(e?.stmt)return e.stmt===`dir`&&(n=e.value),!1;if(typeof e!=`string`)return!1;let r=e.trim();return!r||t.has(r)?!1:(t.add(r),!0)}),dir:n}},`uniq`)(n.flat()),c=s.nodeList,l=s.dir;a??=`subGraph`+this.subCount,o||=``,o=this.sanitizeText(o),this.subCount+=1;let u={id:a,nodes:c,title:o.trim(),classes:[],cssStyles:[],dir:l,labelType:this.sanitizeNodeLabelType(i?.type)};return r.info(`Adding`,u.id,u.nodes,u.dir),u.nodes=this.makeUniq(u,this.subGraphs).nodes,this.subGraphs.push(u),this.subGraphLookup.set(a,u),a}getSubGraphs(){return this.subGraphs}setClass(e,t){for(let n of e){let e=this.entities.get(n);if(e)for(let n of t)e.cssClasses+=` `+n;let r=this.subGraphLookup.get(n);if(r)for(let e of t)r.classes.push(e)}}subgraphNodeCache(e){let t=new Set;for(let n of e)for(let e of n.nodes)t.add(e);return t}makeUniq(e,t){let n=this.subgraphNodeCache(t),i=[];return e.nodes.forEach((t,a)=>{n.has(t)?r.warn(`Entity '${t}' already belongs to another subgraph and will be ignored`):i.push(e.nodes[a])}),{nodes:i}}sanitizeText(e){return l.sanitizeText(e,f())}sanitizeNodeLabelType(e){switch(e){case`markdown`:case`string`:case`text`:return e;default:return`markdown`}}clear(){this.entities=new Map,this.classes=new Map,this.relationships=[],this.subGraphs=[],this.subGraphLookup=new Map,this.subCount=0,this.subgraphDepth=0,s()}getData(){let e=[],t=[],n=f(),r=this.getSubGraphs(),i=new Map,a=new Map;for(let e=r.length-1;e>=0;e--){let t=r[e];t.nodes.length>0&&a.set(t.id,!0);for(let e of t.nodes)i.set(e,t.id)}for(let t=r.length-1;t>=0;t--){let a=r[t];e.push({id:a.id,label:a.title,labelStyle:``,labelType:a.labelType,parentId:i.get(a.id),padding:8,cssCompiledStyles:this.getCompiledStyles(a.classes),cssStyles:a.cssStyles,cssClasses:a.classes.join(` `),shape:`rect`,dir:a.dir,isGroup:!0,look:n.look})}let o=new Set(r.map(e=>e.id)),s=0;for(let t of this.entities.keys()){if(o.has(t))continue;let n=this.entities.get(t);n&&(n.cssCompiledStyles=this.getCompiledStyles(n.cssClasses.split(` `)),n.colorIndex=s++,e.push({...n,parentId:i.get(t),isGroup:!1}))}let c=0;for(let e of this.relationships){let r={id:h(e.entityA,e.entityB,{prefix:`id`,counter:c++}),type:`normal`,curve:`basis`,start:e.entityA,end:e.entityB,label:e.roleA,labelpos:`c`,thickness:`normal`,classes:`relationshipLine`,arrowTypeStart:e.relSpec.cardB.toLowerCase(),arrowTypeEnd:e.relSpec.cardA.toLowerCase(),pattern:e.relSpec.relType==`IDENTIFYING`?`solid`:`dashed`,look:n.look,labelType:`markdown`};t.push(r)}return{nodes:e,edges:t,other:{},config:n,direction:this.direction}}},w={};n(w,{draw:()=>T});var T=t(async function(t,n,i,a){r.info(`REF0:`),r.info(`Drawing er diagram (unified)`,n);let{securityLevel:o,er:s,layout:c}=f(),l=a.db.getData(),u=y(n,o);l.type=a.type,l.layoutAlgorithm=v(c),l.config.flowchart.nodeSpacing=s?.nodeSpacing||140,l.config.flowchart.rankSpacing=s?.rankSpacing||80,l.direction=a.db.getDirection();let{config:d}=l,{look:p}=d;p===`neo`?l.markers=[`only_one_neo`,`zero_or_one_neo`,`one_or_more_neo`,`zero_or_more_neo`]:l.markers=[`only_one`,`zero_or_one`,`one_or_more`,`zero_or_more`],l.diagramId=n,await _(l,u),l.layoutAlgorithm===`elk`&&u.select(`.edges`).lower();let m=u.selectAll(`[id*="-background"]`);Array.from(m).length>0&&m.each(function(){let t=e(this),n=t.attr(`id`).replace(`-background`,``),r=u.select(`#${CSS.escape(n)}`);if(!r.empty()){let e=r.attr(`transform`);t.attr(`transform`,e)}}),g.insertTitle(u,`erDiagramTitleText`,s?.titleTopMargin??25,a.db.getDiagramTitle()),b(u,8,`erDiagram`,s?.useMaxWidth??!0)},`draw`),E=t((e,t)=>{let n=m;return c(n(e,`r`),n(e,`g`),n(e,`b`),t)},`fade`),D=new Set([`redux-color`,`redux-dark-color`]),O=t(e=>{let{theme:t,look:n,bkgColorArray:r,borderColorArray:i}=e;if(!D.has(t))return``;let a=r?.length>0,o=``;for(let t=0;t<e.THEME_COLOR_LIMIT;t++)o+=`
|
|
7
|
+
|
|
8
|
+
[data-look="${n}"][data-color-id="color-${t}"].node path {
|
|
9
|
+
stroke: ${i[t]};
|
|
10
|
+
${a?`fill: ${r[t]};`:``}
|
|
11
|
+
}
|
|
12
|
+
|
|
13
|
+
[data-look="${n}"][data-color-id="color-${t}"].node rect {
|
|
14
|
+
stroke: ${i[t]};
|
|
15
|
+
${a?`fill: ${r[t]};`:``}
|
|
16
|
+
}
|
|
17
|
+
`;return o},`genColor`),k={parser:S,get db(){return new C},renderer:w,styles:t(e=>{let{look:t,theme:n,erEdgeLabelBackground:r,strokeWidth:i}=e;return`
|
|
18
|
+
${O(e)}
|
|
19
|
+
.entityBox {
|
|
20
|
+
fill: ${e.mainBkg};
|
|
21
|
+
stroke: ${e.nodeBorder};
|
|
22
|
+
}
|
|
23
|
+
|
|
24
|
+
.relationshipLabelBox {
|
|
25
|
+
fill: ${e.tertiaryColor};
|
|
26
|
+
opacity: 0.7;
|
|
27
|
+
background-color: ${e.tertiaryColor};
|
|
28
|
+
rect {
|
|
29
|
+
opacity: 0.5;
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
|
|
33
|
+
.labelBkg {
|
|
34
|
+
background-color: ${D.has(n)&&r?r:E(e.tertiaryColor,.5)};
|
|
35
|
+
}
|
|
36
|
+
|
|
37
|
+
.edgeLabel {
|
|
38
|
+
background-color: ${D.has(n)&&r?r:e.edgeLabelBackground};
|
|
39
|
+
}
|
|
40
|
+
.edgeLabel .label rect {
|
|
41
|
+
fill: ${D.has(n)&&r?r:e.edgeLabelBackground};
|
|
42
|
+
}
|
|
43
|
+
.edgeLabel .label text {
|
|
44
|
+
fill: ${e.textColor};
|
|
45
|
+
}
|
|
46
|
+
|
|
47
|
+
.edgeLabel .label {
|
|
48
|
+
fill: ${e.nodeBorder};
|
|
49
|
+
font-size: 14px;
|
|
50
|
+
}
|
|
51
|
+
|
|
52
|
+
.label {
|
|
53
|
+
font-family: ${e.fontFamily};
|
|
54
|
+
color: ${e.nodeTextColor||e.textColor};
|
|
55
|
+
}
|
|
56
|
+
|
|
57
|
+
.edge-pattern-dashed {
|
|
58
|
+
stroke-dasharray: 8,8;
|
|
59
|
+
}
|
|
60
|
+
|
|
61
|
+
.node rect,
|
|
62
|
+
.node circle,
|
|
63
|
+
.node ellipse,
|
|
64
|
+
.node polygon
|
|
65
|
+
{
|
|
66
|
+
fill: ${e.mainBkg};
|
|
67
|
+
stroke: ${e.nodeBorder};
|
|
68
|
+
stroke-width: ${t===`neo`?i:`1px`};
|
|
69
|
+
}
|
|
70
|
+
|
|
71
|
+
.relationshipLine {
|
|
72
|
+
stroke: ${e.lineColor};
|
|
73
|
+
stroke-width: ${t===`neo`?i:`1px`};
|
|
74
|
+
fill: none;
|
|
75
|
+
}
|
|
76
|
+
|
|
77
|
+
.marker {
|
|
78
|
+
fill: none !important;
|
|
79
|
+
stroke: ${e.lineColor} !important;
|
|
80
|
+
stroke-width: 1;
|
|
81
|
+
}
|
|
82
|
+
[data-look=neo].labelBkg {
|
|
83
|
+
background-color: ${E(e.tertiaryColor,.5)};
|
|
84
|
+
}
|
|
85
|
+
|
|
86
|
+
.cluster rect {
|
|
87
|
+
fill: ${e.clusterBkg??e.mainBkg};
|
|
88
|
+
stroke: ${e.clusterBorder??e.nodeBorder};
|
|
89
|
+
stroke-width: 1px;
|
|
90
|
+
}
|
|
91
|
+
|
|
92
|
+
.cluster text {
|
|
93
|
+
fill: ${e.titleColor??e.textColor};
|
|
94
|
+
}
|
|
95
|
+
|
|
96
|
+
.cluster-label text {
|
|
97
|
+
fill: ${e.titleColor??e.textColor};
|
|
98
|
+
}
|
|
99
|
+
`},`getStyles`)};export{k as diagram};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import"./chunk-FOHPRMQF-CyTuVbu3.js";import{O as e}from"./mermaid-parser.core-cJplg8ws.js";export{e as createEventModelingServices};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import"./src-vDqOmCca.js";import"./chunk-DU6HZSFF-B9PGrM0S.js";import"./chunk-75Z2AOVW-BSJ7TCsD.js";import"./chunk-P2QGCYS3-Bu8IRfP3.js";import"./chunk-PWAF6VOD-Dvb7qjWz.js";import"./chunk-GMAD6QVW-CYVpwKkW.js";import"./chunk-4HAMMTFA-e90ut0hg.js";import"./chunk-GVQU2GXP-BJblveWS.js";import"./chunk-L3NEJ4N5-DxCFFP_W.js";import"./chunk-OSK3NFVY-BMSa3Vfd.js";import"./chunk-LNGE3PJU-DNNNwF8Y.js";import"./chunk-TLUHSLCS-DB6mQIZ1.js";import"./chunk-F27PBJKO-DDITEZtq.js";import"./chunk-XXDRQBXY-UjAooa0y.js";import"./chunk-POPQ4Y6H-D5kqONCm.js";import{n as e}from"./chunk-SHT3W25Y-D2BW6_3D.js";export{e as diagram};
|