@diffohq/diffo 0.18.1 → 0.19.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (115) hide show
  1. package/dist/cli.mjs +135 -41
  2. package/dist/client/assets/{abnfDiagram-WEYOIA3C-BITPutiq.js → abnfDiagram-WEYOIA3C-C4F66yrf.js} +1 -1
  3. package/dist/client/assets/{arc-XLwEHJAC.js → arc-DBJ10kEG.js} +1 -1
  4. package/dist/client/assets/architecture-WOLXFQ4H-C2zkRoho.js +1 -0
  5. package/dist/client/assets/architectureDiagram-ZHVYKT53-CA6mi6wr.js +36 -0
  6. package/dist/client/assets/{blockDiagram-RJAE7QA3-BzOd9ivC.js → blockDiagram-RJAE7QA3-BU9p_PIC.js} +1 -1
  7. package/dist/client/assets/{c4Diagram-XDPPPE54-lN1g2nbS.js → c4Diagram-XDPPPE54-jJGc-KP3.js} +1 -1
  8. package/dist/client/assets/channel-V7p0fz-O.js +1 -0
  9. package/dist/client/assets/{chunk-2E7WHVMD-BH_-CWp4.js → chunk-2E7WHVMD-DfTh-gtY.js} +1 -1
  10. package/dist/client/assets/{chunk-4EMNKR2T-B6lY_NOq.js → chunk-4EMNKR2T-DyD0H1sX.js} +1 -1
  11. package/dist/client/assets/{chunk-55XCU76K-jxnWQEEf.js → chunk-55XCU76K-D_u6ulSk.js} +1 -1
  12. package/dist/client/assets/{chunk-7S6XSTFO-BNGH3Dvb.js → chunk-7S6XSTFO-Be0YqE1I.js} +1 -1
  13. package/dist/client/assets/{chunk-AQDTSKZB-Bj4tRXLd.js → chunk-AQDTSKZB-DdHQVHcb.js} +1 -1
  14. package/dist/client/assets/{chunk-DSNLSHJZ-dqouHFOm.js → chunk-DSNLSHJZ-DiIzqoT2.js} +1 -1
  15. package/dist/client/assets/{chunk-HAGFOTED-WU-kuZyO.js → chunk-HAGFOTED-CpZxC5T_.js} +2 -2
  16. package/dist/client/assets/{chunk-HNE4Q36P-DDj4a4VY.js → chunk-HNE4Q36P-Ct6fc1OS.js} +1 -1
  17. package/dist/client/assets/{chunk-NGNAAXSQ-C2Wy9Xmz.js → chunk-NGNAAXSQ-Bw6tHVuc.js} +1 -1
  18. package/dist/client/assets/{chunk-NQOKRVIF-CinmJ3jB.js → chunk-NQOKRVIF-CB1EBGI7.js} +1 -1
  19. package/dist/client/assets/{chunk-UHW7PFBP-DXDZHSL0.js → chunk-UHW7PFBP-DMafWre5.js} +1 -1
  20. package/dist/client/assets/{chunk-VQ5W62QI-D6e5gB46.js → chunk-VQ5W62QI-B73OlRFu.js} +1 -1
  21. package/dist/client/assets/{chunk-WQQL4CDK-DyFwHbuI.js → chunk-WQQL4CDK-BVplvMci.js} +1 -1
  22. package/dist/client/assets/{chunk-XXDRQBXY-DrA7llcC.js → chunk-XXDRQBXY-CUJAy2BW.js} +1 -1
  23. package/dist/client/assets/{chunk-YZO67HFG-BnBMxlLU.js → chunk-YZO67HFG-CQkECnpj.js} +1 -1
  24. package/dist/client/assets/{chunk-ZAUX2LTX-CkQBgGiK.js → chunk-ZAUX2LTX-D0fTc1cY.js} +1 -1
  25. package/dist/client/assets/{chunk-ZCHMQSOR-DCaSZNV0.js → chunk-ZCHMQSOR-BmCQaGs2.js} +1 -1
  26. package/dist/client/assets/{classDiagram-v2-4MYWR3UA-DzsXHg4h.js → classDiagram-v2-4MYWR3UA-CXMC0OW_.js} +1 -1
  27. package/dist/client/assets/{core-ocswKbjM.js → core-DT06f97y.js} +2 -2
  28. package/dist/client/assets/cose-bilkent-JH36ORCC-DNe_fGor.js +1 -0
  29. package/dist/client/assets/cynefin-EF2NZ3EQ-iQmVGcYW.js +1 -0
  30. package/dist/client/assets/{cynefinDiagram-WF24UDRP-BjKxMBU7.js → cynefinDiagram-WF24UDRP-CF0fXuLp.js} +1 -1
  31. package/dist/client/assets/cytoscape.esm-Bn1wUjr1.js +321 -0
  32. package/dist/client/assets/{dagre-NK4GIZVX-CBKiapHn.js → dagre-NK4GIZVX-BuB4gzco.js} +1 -1
  33. package/dist/client/assets/{diagram-CBK3MWTC-DFsb40R6.js → diagram-CBK3MWTC-BiM7vTDb.js} +1 -1
  34. package/dist/client/assets/{diagram-I5XIIV2D-DhJibXln.js → diagram-I5XIIV2D-DqY9bg30.js} +1 -1
  35. package/dist/client/assets/{diagram-ODIL2UCW-C-h6vvat.js → diagram-ODIL2UCW-cT3u1nmA.js} +1 -1
  36. package/dist/client/assets/{diagram-PFBEJUXE-DPuLFhTR.js → diagram-PFBEJUXE-DRQIfHKp.js} +1 -1
  37. package/dist/client/assets/{diagram-RJA3I4VV-Tu3F0QAs.js → diagram-RJA3I4VV-BDG4uVXT.js} +1 -1
  38. package/dist/client/assets/{diagram-TYUNFSNR-BIuRklwy.js → diagram-TYUNFSNR-Dwwtg61C.js} +1 -1
  39. package/dist/client/assets/{dist-CmSi3yif.js → dist-DDVyMjMP.js} +4 -4
  40. package/dist/client/assets/{dist-BhcyxeU7.js → dist-F1lvNP36.js} +1 -1
  41. package/dist/client/assets/{ebnfDiagram-V4P3TTPT-CW5Ty2iw.js → ebnfDiagram-V4P3TTPT-B0jhalBP.js} +1 -1
  42. package/dist/client/assets/{elk-QONTBCTQ-C79QiHN2.js → elk-QONTBCTQ-CfqdQUKw.js} +4 -4
  43. package/dist/client/assets/{engine-oniguruma-BZHOTLBc.js → engine-oniguruma-hBSdHLHU.js} +1 -1
  44. package/dist/client/assets/{erDiagram-KYQIGQAA-D1q58bbD.js → erDiagram-KYQIGQAA-D40nMMfT.js} +1 -1
  45. package/dist/client/assets/eventmodeling-K75KTNOO-CJm1KP0d.js +1 -0
  46. package/dist/client/assets/flowDiagram-IUGLLWBU-B-bQRWZP.js +1 -0
  47. package/dist/client/assets/{ganttDiagram-R7GPNTJY-v1-_7dtl.js → ganttDiagram-R7GPNTJY-ihydgTMP.js} +1 -1
  48. package/dist/client/assets/gitGraph-VSP46ZUC-CMx6LECR.js +1 -0
  49. package/dist/client/assets/{gitGraphDiagram-PDYL7XHY-B_3781fy.js → gitGraphDiagram-PDYL7XHY-CA9toxR4.js} +1 -1
  50. package/dist/client/assets/index-C5auPEXZ.js +103 -0
  51. package/dist/client/assets/{index-Caehfsn0.css → index-CnUT5mJM.css} +1 -1
  52. package/dist/client/assets/info-OHQRW6UA-C1kNo6oH.js +1 -0
  53. package/dist/client/assets/{infoDiagram-MVDRKAX5-BhZTwiET.js → infoDiagram-MVDRKAX5-C32rywQB.js} +1 -1
  54. package/dist/client/assets/{ishikawaDiagram-HPEHV2GE-BNASStxk.js → ishikawaDiagram-HPEHV2GE-DUEsJoMN.js} +1 -1
  55. package/dist/client/assets/{journeyDiagram-BOSHW7O7-DBri9OM7.js → journeyDiagram-BOSHW7O7-Bo99TW48.js} +1 -1
  56. package/dist/client/assets/{kanban-definition-FNSA4HC5-CB99swIS.js → kanban-definition-FNSA4HC5-giCfuZic.js} +1 -1
  57. package/dist/client/assets/{line-CNWjW33V.js → line-D1mykNiO.js} +1 -1
  58. package/dist/client/assets/linear-DiA_-VS5.js +1 -0
  59. package/dist/client/assets/{mermaid-parser.core-LynYB9P7.js → mermaid-parser.core-C6WMZqm3.js} +3 -3
  60. package/dist/client/assets/{mermaid.core-vlyR5lnz.js → mermaid.core-BOSV4eXG.js} +5 -5
  61. package/dist/client/assets/{mindmap-definition-6OY57UG3-C5i5FgNX.js → mindmap-definition-6OY57UG3-sK7Obrx4.js} +1 -1
  62. package/dist/client/assets/packet-JDAUHWVQ-DSaqNHgQ.js +1 -0
  63. package/dist/client/assets/{pegDiagram-ECIUJNBX-BpcK0g6K.js → pegDiagram-ECIUJNBX-LKaQbFjA.js} +1 -1
  64. package/dist/client/assets/pie-XZMESJXO-CXJhZGvq.js +1 -0
  65. package/dist/client/assets/{pieDiagram-GNMPY74T-CWiskC_G.js → pieDiagram-GNMPY74T-CajavLjL.js} +1 -1
  66. package/dist/client/assets/{quadrantDiagram-D57K4MC3-CMd-lsFE.js → quadrantDiagram-D57K4MC3-B_Ndp3Y0.js} +1 -1
  67. package/dist/client/assets/radar-ABXABTNO-Dbnb1wX5.js +1 -0
  68. package/dist/client/assets/railroad-I3PHUGI6-DLB2nOq0.js +1 -0
  69. package/dist/client/assets/railroad-abnf-LNEFI6M7-CG567ncb.js +1 -0
  70. package/dist/client/assets/railroad-ebnf-DWYD2UWJ-CVJvSIu9.js +1 -0
  71. package/dist/client/assets/railroad-peg-JR7BVNR7-CHu58vSv.js +1 -0
  72. package/dist/client/assets/{railroadDiagram-Y72NRBL7-anbLXBOK.js → railroadDiagram-Y72NRBL7-D-K-VPDM.js} +1 -1
  73. package/dist/client/assets/{requirementDiagram-EQYSW5RA-Do0vrmNp.js → requirementDiagram-EQYSW5RA-BtMhaTfI.js} +1 -1
  74. package/dist/client/assets/{sankeyDiagram-SY24JHO5-sdv9fmMC.js → sankeyDiagram-SY24JHO5-BE2B_sMV.js} +1 -1
  75. package/dist/client/assets/{sequenceDiagram-BLEHNHQU-orTXjcMI.js → sequenceDiagram-BLEHNHQU-1AsNdi7T.js} +2 -2
  76. package/dist/client/assets/src-wNqkFAEP.js +1 -0
  77. package/dist/client/assets/{stateDiagram-v2-A6IESKWZ-BMrKeg24.js → stateDiagram-v2-A6IESKWZ-C-QG4RxI.js} +1 -1
  78. package/dist/client/assets/swimlanes-B3ENRKFQ-IpJ9gT29.js +1 -0
  79. package/dist/client/assets/swimlanesDiagram-AYQRV4AK-uV0LG_4r.js +8 -0
  80. package/dist/client/assets/{timeline-definition-JXYKGLGB-CPgpDSiT.js → timeline-definition-JXYKGLGB-DPliIZed.js} +1 -1
  81. package/dist/client/assets/treeView-D4JQ5SDB-RqsIcDef.js +1 -0
  82. package/dist/client/assets/treemap-SAJKECNS-B1FOTerZ.js +1 -0
  83. package/dist/client/assets/{usecaseDiagram-WPOLBNNX-vIU2QZRD.js → usecaseDiagram-WPOLBNNX-DuTzlDeh.js} +1 -1
  84. package/dist/client/assets/{vennDiagram-Q3Y3IDCW-BcY09aXA.js → vennDiagram-Q3Y3IDCW-DKPiHpL3.js} +1 -1
  85. package/dist/client/assets/wardley-7MLQ67FV-w4FLBbHY.js +1 -0
  86. package/dist/client/assets/{wardleyDiagram-IVAIDKWA-B1-GpplK.js → wardleyDiagram-IVAIDKWA-Kt50wWFD.js} +1 -1
  87. package/dist/client/assets/{xychartDiagram-4URNHDU4-CjNvVw7U.js → xychartDiagram-4URNHDU4-C7Ok6qBr.js} +1 -1
  88. package/dist/client/index.html +2 -2
  89. package/package.json +1 -1
  90. package/plugin.json +1 -1
  91. package/dist/client/assets/architecture-WOLXFQ4H-BZeBS7vX.js +0 -1
  92. package/dist/client/assets/architectureDiagram-ZHVYKT53-CoP26SlW.js +0 -36
  93. package/dist/client/assets/channel-DI_venIK.js +0 -1
  94. package/dist/client/assets/cose-bilkent-JH36ORCC-f856-NuP.js +0 -1
  95. package/dist/client/assets/cynefin-EF2NZ3EQ-DdedDlfF.js +0 -1
  96. package/dist/client/assets/cytoscape.esm-BegBNzOV.js +0 -321
  97. package/dist/client/assets/eventmodeling-K75KTNOO-D9k7Dc2v.js +0 -1
  98. package/dist/client/assets/flowDiagram-IUGLLWBU-CooVKzeE.js +0 -1
  99. package/dist/client/assets/gitGraph-VSP46ZUC-BkCTcoI4.js +0 -1
  100. package/dist/client/assets/index-Cl1WBexq.js +0 -91
  101. package/dist/client/assets/info-OHQRW6UA-DMdGuJ_6.js +0 -1
  102. package/dist/client/assets/linear-jiBQNfl6.js +0 -1
  103. package/dist/client/assets/packet-JDAUHWVQ-Cgu-Kqzy.js +0 -1
  104. package/dist/client/assets/pie-XZMESJXO-BEEJtS0H.js +0 -1
  105. package/dist/client/assets/radar-ABXABTNO-BVIACR11.js +0 -1
  106. package/dist/client/assets/railroad-I3PHUGI6-BuRoZQVa.js +0 -1
  107. package/dist/client/assets/railroad-abnf-LNEFI6M7-C7NXl00v.js +0 -1
  108. package/dist/client/assets/railroad-ebnf-DWYD2UWJ-vQis1i0J.js +0 -1
  109. package/dist/client/assets/railroad-peg-JR7BVNR7-D425d6aR.js +0 -1
  110. package/dist/client/assets/src-D88qhP-M.js +0 -1
  111. package/dist/client/assets/swimlanes-B3ENRKFQ-CzSOVIZd.js +0 -1
  112. package/dist/client/assets/swimlanesDiagram-AYQRV4AK-BawZTvFs.js +0 -8
  113. package/dist/client/assets/treeView-D4JQ5SDB-DSOtx_d6.js +0 -1
  114. package/dist/client/assets/treemap-SAJKECNS-v6xOF3AB.js +0 -1
  115. package/dist/client/assets/wardley-7MLQ67FV-D8Eua27h.js +0 -1
@@ -1 +1 @@
1
- import{r as e}from"./index-Cl1WBexq.js";var t=Math.abs,n=Math.atan2,r=Math.cos,i=Math.max,a=Math.min,o=Math.sin,s=Math.sqrt,c=1e-12,l=Math.PI,u=l/2,d=2*l;function f(e){return e>1?0:e<-1?l:Math.acos(e)}function p(e){return e>=1?u:e<=-1?-u:Math.asin(e)}var m=e((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.BLANK_URL=e.relativeFirstCharacters=e.whitespaceEscapeCharsRegex=e.urlSchemeRegex=e.ctrlCharactersRegex=e.htmlCtrlEntityRegex=e.htmlEntitiesRegex=e.invalidProtocolRegex=void 0,e.invalidProtocolRegex=/^([^\w]*)(javascript|data|vbscript)/im,e.htmlEntitiesRegex=/&#(\w+)(^\w|;)?/g,e.htmlCtrlEntityRegex=/&(newline|tab);/gi,e.ctrlCharactersRegex=/[\u0000-\u001F\u007F-\u009F\u2000-\u200D\uFEFF]/gim,e.urlSchemeRegex=/^.+(:|&colon;)/gim,e.whitespaceEscapeCharsRegex=/(\\|%5[cC])((%(6[eE]|72|74))|[nrt])/g,e.relativeFirstCharacters=[`.`,`/`],e.BLANK_URL=`about:blank`})),h=e((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.sanitizeUrl=o;var t=m();function n(e){return t.relativeFirstCharacters.indexOf(e[0])>-1}function r(e){return e.replace(t.ctrlCharactersRegex,``).replace(t.htmlEntitiesRegex,function(e,t){return String.fromCharCode(t)})}function i(e){return URL.canParse(e)}function a(e){try{return decodeURIComponent(e)}catch{return e}}function o(e){if(!e)return t.BLANK_URL;var o,s=a(e.trim());do s=r(s).replace(t.htmlCtrlEntityRegex,``).replace(t.ctrlCharactersRegex,``).replace(t.whitespaceEscapeCharsRegex,``).trim(),s=a(s),o=s.match(t.ctrlCharactersRegex)||s.match(t.htmlEntitiesRegex)||s.match(t.htmlCtrlEntityRegex)||s.match(t.whitespaceEscapeCharsRegex);while(o&&o.length>0);var c=s;if(!c)return t.BLANK_URL;if(n(c))return c;var l=c.trimStart(),u=l.match(t.urlSchemeRegex);if(!u)return c;var d=u[0].toLowerCase().trim();if(t.invalidProtocolRegex.test(d))return t.BLANK_URL;var f=l.replace(/\\/g,`/`);if(d===`mailto:`||d.includes(`://`))return f;if(d===`http:`||d===`https:`){if(!i(f))return t.BLANK_URL;var p=new URL(f);return p.protocol=p.protocol.toLowerCase(),p.hostname=p.hostname.toLowerCase(),p.toString()}return f}}));export{n as a,u as c,l as d,o as f,p as i,i as l,d as m,t as n,r as o,s as p,f as r,c as s,h as t,a as u};
1
+ import{r as e}from"./index-C5auPEXZ.js";var t=Math.abs,n=Math.atan2,r=Math.cos,i=Math.max,a=Math.min,o=Math.sin,s=Math.sqrt,c=1e-12,l=Math.PI,u=l/2,d=2*l;function f(e){return e>1?0:e<-1?l:Math.acos(e)}function p(e){return e>=1?u:e<=-1?-u:Math.asin(e)}var m=e((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.BLANK_URL=e.relativeFirstCharacters=e.whitespaceEscapeCharsRegex=e.urlSchemeRegex=e.ctrlCharactersRegex=e.htmlCtrlEntityRegex=e.htmlEntitiesRegex=e.invalidProtocolRegex=void 0,e.invalidProtocolRegex=/^([^\w]*)(javascript|data|vbscript)/im,e.htmlEntitiesRegex=/&#(\w+)(^\w|;)?/g,e.htmlCtrlEntityRegex=/&(newline|tab);/gi,e.ctrlCharactersRegex=/[\u0000-\u001F\u007F-\u009F\u2000-\u200D\uFEFF]/gim,e.urlSchemeRegex=/^.+(:|&colon;)/gim,e.whitespaceEscapeCharsRegex=/(\\|%5[cC])((%(6[eE]|72|74))|[nrt])/g,e.relativeFirstCharacters=[`.`,`/`],e.BLANK_URL=`about:blank`})),h=e((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.sanitizeUrl=o;var t=m();function n(e){return t.relativeFirstCharacters.indexOf(e[0])>-1}function r(e){return e.replace(t.ctrlCharactersRegex,``).replace(t.htmlEntitiesRegex,function(e,t){return String.fromCharCode(t)})}function i(e){return URL.canParse(e)}function a(e){try{return decodeURIComponent(e)}catch{return e}}function o(e){if(!e)return t.BLANK_URL;var o,s=a(e.trim());do s=r(s).replace(t.htmlCtrlEntityRegex,``).replace(t.ctrlCharactersRegex,``).replace(t.whitespaceEscapeCharsRegex,``).trim(),s=a(s),o=s.match(t.ctrlCharactersRegex)||s.match(t.htmlEntitiesRegex)||s.match(t.htmlCtrlEntityRegex)||s.match(t.whitespaceEscapeCharsRegex);while(o&&o.length>0);var c=s;if(!c)return t.BLANK_URL;if(n(c))return c;var l=c.trimStart(),u=l.match(t.urlSchemeRegex);if(!u)return c;var d=u[0].toLowerCase().trim();if(t.invalidProtocolRegex.test(d))return t.BLANK_URL;var f=l.replace(/\\/g,`/`);if(d===`mailto:`||d.includes(`://`))return f;if(d===`http:`||d===`https:`){if(!i(f))return t.BLANK_URL;var p=new URL(f);return p.protocol=p.protocol.toLowerCase(),p.hostname=p.hostname.toLowerCase(),p.toString()}return f}}));export{n as a,u as c,l as d,o as f,p as i,i as l,d as m,t as n,r as o,s as p,f as r,c as s,h as t,a as u};
@@ -1 +1 @@
1
- import{f as e,t}from"./mermaid-parser.core-LynYB9P7.js";import{n}from"./chunk-Y2CYZVJY-DsF7k-Jl.js";import{m as r}from"./src-D88qhP-M.js";import"./chunk-DSNLSHJZ-dqouHFOm.js";import{n as i,r as a,t as o}from"./chunk-2E7WHVMD-BH_-CWp4.js";import{t as s}from"./chunk-JWPE2WC7-DVXcaiue.js";import"./mermaid.core-vlyR5lnz.js";var c=e().RailroadEbnf.parser.LangiumParser,l=n(e=>{let t=e.alternatives.map(u);return t.length===1?t[0]:{type:`choice`,alternatives:t}},`transformChoice`),u=n(e=>{let t=e.elements.map(p);return t.length===1?t[0]:{type:`sequence`,elements:t}},`transformSequence`),d=n(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=n((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=n(e=>e.postfixes.reduce((e,t)=>f(e,t),d(e.base)),`transformTerm`),m=n(e=>({name:e.name,definition:l(e.definition)}),`transformRule`),h=n(e=>{s(e,o),e.title&&o.setTitle(e.title),e.rules.map(e=>o.addRule(m(e)))},`populateDb`),g={parser:{parse:n(e=>{o.clear(),r.debug(`[EBNF Parser] Starting Langium parse`);let n=c.parse(e);if(n.lexerErrors.length>0||n.parserErrors.length>0)throw new t(n);let i=n.value;r.debug(`[EBNF Parser] Parsed rules:`,i.rules.length),h(i),r.debug(`[EBNF Parser] Parse complete`)},`parse`),parser:{yy:o}},db:o,renderer:a,styles:i};export{g as diagram};
1
+ import{f as e,t}from"./mermaid-parser.core-C6WMZqm3.js";import{n}from"./chunk-Y2CYZVJY-DsF7k-Jl.js";import{m as r}from"./src-wNqkFAEP.js";import"./chunk-DSNLSHJZ-DiIzqoT2.js";import{n as i,r as a,t as o}from"./chunk-2E7WHVMD-DfTh-gtY.js";import{t as s}from"./chunk-JWPE2WC7-DVXcaiue.js";import"./mermaid.core-BOSV4eXG.js";var c=e().RailroadEbnf.parser.LangiumParser,l=n(e=>{let t=e.alternatives.map(u);return t.length===1?t[0]:{type:`choice`,alternatives:t}},`transformChoice`),u=n(e=>{let t=e.elements.map(p);return t.length===1?t[0]:{type:`sequence`,elements:t}},`transformSequence`),d=n(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=n((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=n(e=>e.postfixes.reduce((e,t)=>f(e,t),d(e.base)),`transformTerm`),m=n(e=>({name:e.name,definition:l(e.definition)}),`transformRule`),h=n(e=>{s(e,o),e.title&&o.setTitle(e.title),e.rules.map(e=>o.addRule(m(e)))},`populateDb`),g={parser:{parse:n(e=>{o.clear(),r.debug(`[EBNF Parser] Starting Langium parse`);let n=c.parse(e);if(n.lexerErrors.length>0||n.parserErrors.length>0)throw new t(n);let i=n.value;r.debug(`[EBNF Parser] Parsed rules:`,i.rules.length),h(i),r.debug(`[EBNF Parser] Parse complete`)},`parse`),parser:{yy:o}},db:o,renderer:a,styles:i};export{g as diagram};