@lancc/cmark 1.2.0 → 1.2.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.
Files changed (127) hide show
  1. package/CHANGELOG.md +8 -0
  2. package/LICENSE +21 -21
  3. package/README.md +47 -107
  4. package/assets/abnfDiagram-WEYOIA3C-CKV_7Upb.js +1 -0
  5. package/assets/architectureDiagram-ZHVYKT53-BvLudDvk.js +1 -0
  6. package/assets/blockDiagram-RJAE7QA3--gzkMGi2.js +1 -0
  7. package/assets/c4Diagram-XDPPPE54-ByfRiJGR.js +1 -0
  8. package/assets/chunk-2E7WHVMD-TfbC_dmh.js +1 -0
  9. package/assets/chunk-2Q5K7J3B-0YJgChVo.js +1 -0
  10. package/assets/chunk-4EMNKR2T-DHoYW7g5.js +1 -0
  11. package/assets/chunk-55XCU76K-Cq25Yw_G.js +1 -0
  12. package/assets/chunk-5VM5RSS4-CJaRXFHK.js +1 -0
  13. package/assets/chunk-JWPE2WC7-BP2iXBhe.js +1 -0
  14. package/assets/chunk-VQ5W62QI-B95zur4F.js +1 -0
  15. package/assets/chunk-XXDRQBXY-Ct0MhvQo.js +1 -0
  16. package/assets/chunk-ZCHMQSOR-C5VhW-wL.js +2 -0
  17. package/assets/classDiagram-v2-4MYWR3UA-C1G-Vkj0.js +1 -0
  18. package/assets/cose-bilkent-JH36ORCC-qIQoIBv0.js +1 -0
  19. package/assets/cynefin-EF2NZ3EQ-CR1E3YiZ.js +1 -0
  20. package/assets/cynefinDiagram-WF24UDRP-DaJFvZ3b.js +1 -0
  21. package/assets/cytoscape.esm-SjxgSg6I.js +9 -0
  22. package/assets/dagre-NK4GIZVX-BFRQhpii.js +1 -0
  23. package/assets/diagram-CBK3MWTC-DlueL6XZ.js +1 -0
  24. package/assets/diagram-I5XIIV2D-bITyafYX.js +1 -0
  25. package/assets/diagram-ODIL2UCW-Dlb4hg_-.js +1 -0
  26. package/assets/diagram-PFBEJUXE-CRfen0O7.js +1 -0
  27. package/assets/diagram-RJA3I4VV-CK-FlhGV.js +1 -0
  28. package/assets/diagram-TYUNFSNR-DmgVsxqa.js +1 -0
  29. package/assets/ebnfDiagram-V4P3TTPT-B9KGI9eQ.js +1 -0
  30. package/assets/echarts-CytsvCdp.js +25 -0
  31. package/assets/elk-QONTBCTQ-VgDftvsU.js +1 -0
  32. package/assets/erDiagram-KYQIGQAA-DkpP7sS4.js +1 -0
  33. package/assets/flowDiagram-IUGLLWBU-CRXa9Kxy.js +1 -0
  34. package/assets/ganttDiagram-R7GPNTJY-Cu2I55Wb.js +1 -0
  35. package/assets/gitGraphDiagram-PDYL7XHY-CwSo663I.js +1 -0
  36. package/assets/graph-Dz7AM1Q5.js +1 -0
  37. package/assets/index-BJ-NdQc4.js +100 -0
  38. package/assets/infoDiagram-MVDRKAX5-D3Qknzuo.js +1 -0
  39. package/assets/ishikawaDiagram-HPEHV2GE-9qYT75tk.js +1 -0
  40. package/assets/journeyDiagram-BOSHW7O7-DeSrJg9o.js +1 -0
  41. package/assets/kanban-definition-FNSA4HC5-DINkB6G7.js +1 -0
  42. package/assets/katex-DN8cTsI3.js +1 -0
  43. package/assets/markdown-S2mWvoE-.js +5 -0
  44. package/assets/mermaid-T_6Ze_cT.js +7 -0
  45. package/assets/mindmap-definition-6OY57UG3-DW5hqiAe.js +1 -0
  46. package/assets/pegDiagram-ECIUJNBX-BWy_tkzy.js +1 -0
  47. package/assets/pieDiagram-GNMPY74T-CniJbr6l.js +1 -0
  48. package/assets/quadrantDiagram-D57K4MC3-BVnDJkCv.js +1 -0
  49. package/assets/railroadDiagram-Y72NRBL7-BNKZpJJb.js +1 -0
  50. package/assets/requirementDiagram-EQYSW5RA-BETipHj0.js +1 -0
  51. package/assets/sankeyDiagram-SY24JHO5-ByEYqT7T.js +1 -0
  52. package/assets/sequenceDiagram-BLEHNHQU-BqCJ2tKG.js +1 -0
  53. package/assets/sizeCapture-INFHLROL-DlhrWFj-.js +1 -0
  54. package/assets/stateDiagram-v2-A6IESKWZ-DJUBWLTP.js +1 -0
  55. package/assets/swimlanes-B3ENRKFQ-D7k7tF5U.js +1 -0
  56. package/assets/swimlanesDiagram-AYQRV4AK-DoQBgB9o.js +1 -0
  57. package/assets/timeline-definition-JXYKGLGB-BCNhwnn6.js +1 -0
  58. package/assets/usecaseDiagram-WPOLBNNX-DRa_Rgl3.js +1 -0
  59. package/assets/vennDiagram-Q3Y3IDCW-Ba2eaO68.js +1 -0
  60. package/assets/wardleyDiagram-IVAIDKWA-W_i9vzY-.js +1 -0
  61. package/assets/xychartDiagram-4URNHDU4-ByfaGjvc.js +1 -0
  62. package/index.html +3 -3
  63. package/package.json +1 -1
  64. package/plugin.json +1 -1
  65. package/preload/git-panel.js +29 -5
  66. package/preload/git-service.js +48 -15
  67. package/preload/remote-setup.js +66 -33
  68. package/preload/remote-wizard.js +2 -0
  69. package/preload.js +30 -0
  70. package/assets/abnfDiagram-WEYOIA3C-BgXsTF7a.js +0 -1
  71. package/assets/architectureDiagram-ZHVYKT53-BsCWa_qC.js +0 -36
  72. package/assets/blockDiagram-RJAE7QA3-wbIxEiYN.js +0 -140
  73. package/assets/c4Diagram-XDPPPE54-5zdyxFvA.js +0 -38
  74. package/assets/chunk-2E7WHVMD-F85Lca-i.js +0 -88
  75. package/assets/chunk-2Q5K7J3B-CjpAZ0OI.js +0 -1
  76. package/assets/chunk-4EMNKR2T-C8Kbh83c.js +0 -1
  77. package/assets/chunk-55XCU76K-BINcFiLN.js +0 -1
  78. package/assets/chunk-5VM5RSS4-Diy5h2LS.js +0 -15
  79. package/assets/chunk-JWPE2WC7-BXnjDdh1.js +0 -1
  80. package/assets/chunk-VQ5W62QI-BM7ZZo1I.js +0 -1
  81. package/assets/chunk-XXDRQBXY-CW8CjB1w.js +0 -1
  82. package/assets/chunk-ZCHMQSOR-C7ATz1L1.js +0 -2
  83. package/assets/classDiagram-v2-4MYWR3UA-CMoqNk-b.js +0 -217
  84. package/assets/cose-bilkent-JH36ORCC-6rqR5iJk.js +0 -1
  85. package/assets/cynefin-EF2NZ3EQ-DypLIJxl.js +0 -141
  86. package/assets/cynefinDiagram-WF24UDRP-8b2CEBlR.js +0 -62
  87. package/assets/cytoscape.esm-CjX6Hyah.js +0 -331
  88. package/assets/dagre-NK4GIZVX-Dv6vuUbR.js +0 -4
  89. package/assets/diagram-CBK3MWTC-DJgMDeYd.js +0 -24
  90. package/assets/diagram-I5XIIV2D-BB9cMoRW.js +0 -24
  91. package/assets/diagram-ODIL2UCW-BVcRtsdy.js +0 -30
  92. package/assets/diagram-PFBEJUXE-BbGSOtJx.js +0 -3
  93. package/assets/diagram-RJA3I4VV-CzkY_8Fo.js +0 -41
  94. package/assets/diagram-TYUNFSNR-YTl5QdfL.js +0 -200
  95. package/assets/ebnfDiagram-V4P3TTPT-COVjPAjE.js +0 -1
  96. package/assets/echarts-BAPDkhe3.js +0 -61
  97. package/assets/elk-QONTBCTQ-DHsjY8Z_.js +0 -27
  98. package/assets/erDiagram-KYQIGQAA-CUAbTUl1.js +0 -99
  99. package/assets/flowDiagram-IUGLLWBU-CWsiqTQC.js +0 -213
  100. package/assets/ganttDiagram-R7GPNTJY-DetBW0Wm.js +0 -292
  101. package/assets/gitGraphDiagram-PDYL7XHY-ByrdgJmw.js +0 -106
  102. package/assets/graph-D8UmR1vK.js +0 -1
  103. package/assets/index-B17NCAw4.js +0 -758
  104. package/assets/infoDiagram-MVDRKAX5-BM48fjhU.js +0 -2
  105. package/assets/ishikawaDiagram-HPEHV2GE-DtHYywHZ.js +0 -70
  106. package/assets/journeyDiagram-BOSHW7O7-DJ1LiRh3.js +0 -139
  107. package/assets/kanban-definition-FNSA4HC5-DPPt8pwJ.js +0 -89
  108. package/assets/katex-CQL9J12G.js +0 -257
  109. package/assets/markdown-DVehI1Sg.js +0 -314
  110. package/assets/mermaid-C_q9pug0.js +0 -312
  111. package/assets/mindmap-definition-6OY57UG3-zbqYOEY6.js +0 -98
  112. package/assets/pegDiagram-ECIUJNBX-e7QG7TMq.js +0 -1
  113. package/assets/pieDiagram-GNMPY74T-Duf6YP0N.js +0 -39
  114. package/assets/quadrantDiagram-D57K4MC3-B2eYoUUy.js +0 -7
  115. package/assets/railroadDiagram-Y72NRBL7-BWCzPcI_.js +0 -1
  116. package/assets/requirementDiagram-EQYSW5RA-HhPMEqB1.js +0 -84
  117. package/assets/sankeyDiagram-SY24JHO5-CMUTwFBB.js +0 -40
  118. package/assets/sequenceDiagram-BLEHNHQU-C9wR2ll7.js +0 -169
  119. package/assets/sizeCapture-INFHLROL-DXfz37S6.js +0 -1
  120. package/assets/stateDiagram-v2-A6IESKWZ-D_gtonhE.js +0 -291
  121. package/assets/swimlanes-B3ENRKFQ-DdJOuuMV.js +0 -1
  122. package/assets/swimlanesDiagram-AYQRV4AK-BWt3HxHV.js +0 -8
  123. package/assets/timeline-definition-JXYKGLGB-DQsdwJe-.js +0 -120
  124. package/assets/usecaseDiagram-WPOLBNNX-DTRyFq7d.js +0 -370
  125. package/assets/vennDiagram-Q3Y3IDCW-dihYszm0.js +0 -34
  126. package/assets/wardleyDiagram-IVAIDKWA-BoPpgYfK.js +0 -78
  127. package/assets/xychartDiagram-4URNHDU4-DoLjYxeB.js +0 -7
@@ -0,0 +1 @@
1
+ import{g as t}from"./chunk-XXDRQBXY-Ct0MhvQo.js";import{s as e}from"./chunk-VQ5W62QI-B95zur4F.js";import{_ as n,l as i,p as s,r as o,L as r,O as a,c,j as l,aJ as h,a8 as d,a9 as g,aa as p}from"./mermaid-T_6Ze_cT.js";import"./markdown-S2mWvoE-.js";const u=[];for(let D=0;D<256;++D)u.push((D+256).toString(16).slice(1));const y=new Uint8Array(16);function m(t,e,n){return crypto.randomUUID?crypto.randomUUID():function(t){t=t||{};const e=t.random??t.rng?.()??crypto.getRandomValues(y);if(e.length<16)throw new Error("Random bytes length must be >= 16");return e[6]=15&e[6]|64,e[8]=63&e[8]|128,function(t,e=0){return(u[t[e+0]]+u[t[e+1]]+u[t[e+2]]+u[t[e+3]]+"-"+u[t[e+4]]+u[t[e+5]]+"-"+u[t[e+6]]+u[t[e+7]]+"-"+u[t[e+8]]+u[t[e+9]]+"-"+u[t[e+10]]+u[t[e+11]]+u[t[e+12]]+u[t[e+13]]+u[t[e+14]]+u[t[e+15]]).toLowerCase()}(e)}(t)}var f=function(){var t=n(function(t,e,n,i){for(n=n||{},i=t.length;i--;n[t[i]]=e);return n},"o"),e=[1,4],i=[1,13],s=[1,12],o=[1,15],r=[1,16],a=[1,20],c=[1,19],l=[6,7,8],h=[1,26],d=[1,24],g=[1,25],p=[6,7,11],u=[1,6,13,15,16,19,22],y=[1,33],m=[1,34],f=[1,6,7,11,13,15,16,19,22],k={trace:n(function(){},"trace"),yy:{},symbols_:{error:2,start:3,mindMap:4,spaceLines:5,SPACELINE:6,NL:7,MINDMAP:8,document:9,stop:10,EOF:11,statement:12,SPACELIST:13,node:14,ICON:15,CLASS:16,nodeWithId:17,nodeWithoutId:18,NODE_DSTART:19,NODE_DESCR:20,NODE_DEND:21,NODE_ID:22,$accept:0,$end:1},terminals_:{2:"error",6:"SPACELINE",7:"NL",8:"MINDMAP",11:"EOF",13:"SPACELIST",15:"ICON",16:"CLASS",19:"NODE_DSTART",20:"NODE_DESCR",21:"NODE_DEND",22:"NODE_ID"},productions_:[0,[3,1],[3,2],[5,1],[5,2],[5,2],[4,2],[4,3],[10,1],[10,1],[10,1],[10,2],[10,2],[9,3],[9,2],[12,2],[12,2],[12,2],[12,1],[12,1],[12,1],[12,1],[12,1],[14,1],[14,1],[18,3],[17,1],[17,4]],performAction:n(function(t,e,n,i,s,o,r){var a=o.length-1;switch(s){case 6:case 7:return i;case 8:i.getLogger().trace("Stop NL ");break;case 9:i.getLogger().trace("Stop EOF ");break;case 11:i.getLogger().trace("Stop NL2 ");break;case 12:i.getLogger().trace("Stop EOF2 ");break;case 15:i.getLogger().info("Node: ",o[a].id),i.addNode(o[a-1].length,o[a].id,o[a].descr,o[a].type);break;case 16:i.getLogger().trace("Icon: ",o[a]),i.decorateNode({icon:o[a]});break;case 17:case 21:i.decorateNode({class:o[a]});break;case 18:i.getLogger().trace("SPACELIST");break;case 19:i.getLogger().trace("Node: ",o[a].id),i.addNode(0,o[a].id,o[a].descr,o[a].type);break;case 20:i.decorateNode({icon:o[a]});break;case 25:i.getLogger().trace("node found ..",o[a-2]),this.$={id:o[a-1],descr:o[a-1],type:i.getType(o[a-2],o[a])};break;case 26:this.$={id:o[a],descr:o[a],type:i.nodeType.DEFAULT};break;case 27:i.getLogger().trace("node found ..",o[a-3]),this.$={id:o[a-3],descr:o[a-1],type:i.getType(o[a-2],o[a])}}},"anonymous"),table:[{3:1,4:2,5:3,6:[1,5],8:e},{1:[3]},{1:[2,1]},{4:6,6:[1,7],7:[1,8],8:e},{6:i,7:[1,10],9:9,12:11,13:s,14:14,15:o,16:r,17:17,18:18,19:a,22:c},t(l,[2,3]),{1:[2,2]},t(l,[2,4]),t(l,[2,5]),{1:[2,6],6:i,12:21,13:s,14:14,15:o,16:r,17:17,18:18,19:a,22:c},{6:i,9:22,12:11,13:s,14:14,15:o,16:r,17:17,18:18,19:a,22:c},{6:h,7:d,10:23,11:g},t(p,[2,22],{17:17,18:18,14:27,15:[1,28],16:[1,29],19:a,22:c}),t(p,[2,18]),t(p,[2,19]),t(p,[2,20]),t(p,[2,21]),t(p,[2,23]),t(p,[2,24]),t(p,[2,26],{19:[1,30]}),{20:[1,31]},{6:h,7:d,10:32,11:g},{1:[2,7],6:i,12:21,13:s,14:14,15:o,16:r,17:17,18:18,19:a,22:c},t(u,[2,14],{7:y,11:m}),t(f,[2,8]),t(f,[2,9]),t(f,[2,10]),t(p,[2,15]),t(p,[2,16]),t(p,[2,17]),{20:[1,35]},{21:[1,36]},t(u,[2,13],{7:y,11:m}),t(f,[2,11]),t(f,[2,12]),{21:[1,37]},t(p,[2,25]),t(p,[2,27])],defaultActions:{2:[2,1],6:[2,2]},parseError:n(function(t,e){if(!e.recoverable){var n=new Error(t);throw n.hash=e,n}this.trace(t)},"parseError"),parse:n(function(t){var e=this,i=[0],s=[],o=[null],r=[],a=this.table,c="",l=0,h=0,d=r.slice.call(arguments,1),g=Object.create(this.lexer),p={yy:{}};for(var u in this.yy)Object.prototype.hasOwnProperty.call(this.yy,u)&&(p.yy[u]=this.yy[u]);g.setInput(t,p.yy),p.yy.lexer=g,p.yy.parser=this,void 0===g.yylloc&&(g.yylloc={});var y=g.yylloc;r.push(y);var m=g.options&&g.options.ranges;function f(){var t;return"number"!=typeof(t=s.pop()||g.lex()||1)&&(t instanceof Array&&(t=(s=t).pop()),t=e.symbols_[t]||t),t}"function"==typeof p.yy.parseError?this.parseError=p.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError,n(function(t){i.length=i.length-2*t,o.length=o.length-t,r.length=r.length-t},"popStack"),n(f,"lex");for(var k,_,E,b,S,N,L,x,D={};;){if(_=i[i.length-1],this.defaultActions[_]?E=this.defaultActions[_]:(null==k&&(k=f()),E=a[_]&&a[_][k]),void 0===E||!E.length||!E[0]){var $="";for(S in x=[],a[_])this.terminals_[S]&&S>2&&x.push("'"+this.terminals_[S]+"'");$=g.showPosition?"Parse error on line "+(l+1)+":\n"+g.showPosition()+"\nExpecting "+x.join(", ")+", got '"+(this.terminals_[k]||k)+"'":"Parse error on line "+(l+1)+": Unexpected "+(1==k?"end of input":"'"+(this.terminals_[k]||k)+"'"),this.parseError($,{text:g.match,token:this.terminals_[k]||k,line:g.yylineno,loc:y,expected:x})}if(E[0]instanceof Array&&E.length>1)throw new Error("Parse Error: multiple actions possible at state: "+_+", token: "+k);switch(E[0]){case 1:i.push(k),o.push(g.yytext),r.push(g.yylloc),i.push(E[1]),k=null,h=g.yyleng,c=g.yytext,l=g.yylineno,y=g.yylloc;break;case 2:if(N=this.productions_[E[1]][1],D.$=o[o.length-N],D._$={first_line:r[r.length-(N||1)].first_line,last_line:r[r.length-1].last_line,first_column:r[r.length-(N||1)].first_column,last_column:r[r.length-1].last_column},m&&(D._$.range=[r[r.length-(N||1)].range[0],r[r.length-1].range[1]]),void 0!==(b=this.performAction.apply(D,[c,h,l,p.yy,E[1],o,r].concat(d))))return b;N&&(i=i.slice(0,-1*N*2),o=o.slice(0,-1*N),r=r.slice(0,-1*N)),i.push(this.productions_[E[1]][0]),o.push(D.$),r.push(D._$),L=a[i[i.length-2]][i[i.length-1]],i.push(L);break;case 3:return!0}}return!0},"parse")},_=function(){return{EOF:1,parseError:n(function(t,e){if(!this.yy.parser)throw new Error(t);this.yy.parser.parseError(t,e)},"parseError"),setInput:n(function(t,e){return this.yy=e||this.yy||{},this._input=t,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:n(function(){var t=this._input[0];return this.yytext+=t,this.yyleng++,this.offset++,this.match+=t,this.matched+=t,t.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),t},"input"),unput:n(function(t){var e=t.length,n=t.split(/(?:\r\n?|\n)/g);this._input=t+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-e),this.offset-=e;var i=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 s=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===i.length?this.yylloc.first_column:0)+i[i.length-n.length].length-n[0].length:this.yylloc.first_column-e},this.options.ranges&&(this.yylloc.range=[s[0],s[0]+this.yyleng-e]),this.yyleng=this.yytext.length,this},"unput"),more:n(function(){return this._more=!0,this},"more"),reject:n(function(){return this.options.backtrack_lexer?(this._backtrack=!0,this):this.parseError("Lexical error on line "+(this.yylineno+1)+". You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true).\n"+this.showPosition(),{text:"",token:null,line:this.yylineno})},"reject"),less:n(function(t){this.unput(this.match.slice(t))},"less"),pastInput:n(function(){var t=this.matched.substr(0,this.matched.length-this.match.length);return(t.length>20?"...":"")+t.substr(-20).replace(/\n/g,"")},"pastInput"),upcomingInput:n(function(){var t=this.match;return t.length<20&&(t+=this._input.substr(0,20-t.length)),(t.substr(0,20)+(t.length>20?"...":"")).replace(/\n/g,"")},"upcomingInput"),showPosition:n(function(){var t=this.pastInput(),e=new Array(t.length+1).join("-");return t+this.upcomingInput()+"\n"+e+"^"},"showPosition"),test_match:n(function(t,e){var n,i,s;if(this.options.backtrack_lexer&&(s={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&&(s.yylloc.range=this.yylloc.range.slice(0))),(i=t[0].match(/(?:\r\n?|\n).*/g))&&(this.yylineno+=i.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:i?i[i.length-1].length-i[i.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+t[0].length},this.yytext+=t[0],this.match+=t[0],this.matches=t,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(t[0].length),this.matched+=t[0],n=this.performAction.call(this,this.yy,this,e,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),n)return n;if(this._backtrack){for(var o in s)this[o]=s[o];return!1}return!1},"test_match"),next:n(function(){if(this.done)return this.EOF;var t,e,n,i;this._input||(this.done=!0),this._more||(this.yytext="",this.match="");for(var s=this._currentRules(),o=0;o<s.length;o++)if((n=this._input.match(this.rules[s[o]]))&&(!e||n[0].length>e[0].length)){if(e=n,i=o,this.options.backtrack_lexer){if(!1!==(t=this.test_match(n,s[o])))return t;if(this._backtrack){e=!1;continue}return!1}if(!this.options.flex)break}return e?!1!==(t=this.test_match(e,s[i]))&&t:""===this._input?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+". Unrecognized text.\n"+this.showPosition(),{text:"",token:null,line:this.yylineno})},"next"),lex:n(function(){var t=this.next();return t||this.lex()},"lex"),begin:n(function(t){this.conditionStack.push(t)},"begin"),popState:n(function(){return this.conditionStack.length-1>0?this.conditionStack.pop():this.conditionStack[0]},"popState"),_currentRules:n(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:n(function(t){return(t=this.conditionStack.length-1-Math.abs(t||0))>=0?this.conditionStack[t]:"INITIAL"},"topState"),pushState:n(function(t){this.begin(t)},"pushState"),stateStackSize:n(function(){return this.conditionStack.length},"stateStackSize"),options:{"case-insensitive":!0},performAction:n(function(t,e,n,i){switch(n){case 0:return t.getLogger().trace("Found comment",e.yytext),6;case 1:return 8;case 2:this.begin("CLASS");break;case 3:return this.popState(),16;case 4:case 23:case 26:this.popState();break;case 5:t.getLogger().trace("Begin icon"),this.begin("ICON");break;case 6:return t.getLogger().trace("SPACELINE"),6;case 7:return 7;case 8:return 15;case 9:t.getLogger().trace("end icon"),this.popState();break;case 10:return t.getLogger().trace("Exploding node"),this.begin("NODE"),19;case 11:return t.getLogger().trace("Cloud"),this.begin("NODE"),19;case 12:return t.getLogger().trace("Explosion Bang"),this.begin("NODE"),19;case 13:return t.getLogger().trace("Cloud Bang"),this.begin("NODE"),19;case 14:case 15:case 16:case 17:return this.begin("NODE"),19;case 18:return 13;case 19:return 22;case 20:return 11;case 21:this.begin("NSTR2");break;case 22:return"NODE_DESCR";case 24:t.getLogger().trace("Starting NSTR"),this.begin("NSTR");break;case 25:return t.getLogger().trace("description:",e.yytext),"NODE_DESCR";case 27:return this.popState(),t.getLogger().trace("node end ))"),"NODE_DEND";case 28:return this.popState(),t.getLogger().trace("node end )"),"NODE_DEND";case 29:return this.popState(),t.getLogger().trace("node end ...",e.yytext),"NODE_DEND";case 30:case 33:case 34:return this.popState(),t.getLogger().trace("node end (("),"NODE_DEND";case 31:case 32:return this.popState(),t.getLogger().trace("node end (-"),"NODE_DEND";case 35:case 36:return t.getLogger().trace("Long description:",e.yytext),20}},"anonymous"),rules:[/^(?:\s*%%.*)/i,/^(?:mindmap\b)/i,/^(?::::)/i,/^(?:.+)/i,/^(?:\n)/i,/^(?:::icon\()/i,/^(?:[\s]+[\n])/i,/^(?:[\n]+)/i,/^(?:[^\)]+)/i,/^(?:\))/i,/^(?:-\))/i,/^(?:\(-)/i,/^(?:\)\))/i,/^(?:\))/i,/^(?:\(\()/i,/^(?:\{\{)/i,/^(?:\()/i,/^(?:\[)/i,/^(?:[\s]+)/i,/^(?:[^\(\[\n\)\{\}]+)/i,/^(?:$)/i,/^(?:["][`])/i,/^(?:[^`"]+)/i,/^(?:[`]["])/i,/^(?:["])/i,/^(?:[^"]+)/i,/^(?:["])/i,/^(?:[\)]\))/i,/^(?:[\)])/i,/^(?:[\]])/i,/^(?:\}\})/i,/^(?:\(-)/i,/^(?:-\))/i,/^(?:\(\()/i,/^(?:\()/i,/^(?:[^\)\]\(\}]+)/i,/^(?:.+(?!\(\())/i],conditions:{CLASS:{rules:[3,4],inclusive:!1},ICON:{rules:[8,9],inclusive:!1},NSTR2:{rules:[22,23],inclusive:!1},NSTR:{rules:[25,26],inclusive:!1},NODE:{rules:[21,24,27,28,29,30,31,32,33,34,35,36],inclusive:!1},INITIAL:{rules:[0,1,2,5,6,7,10,11,12,13,14,15,16,17,18,19,20],inclusive:!0}}}}();function E(){this.yy={}}return k.lexer=_,n(E,"Parser"),E.prototype=k,k.Parser=E,new E}();f.parser=f;var k=f,_={DEFAULT:0,NO_BORDER:0,ROUNDED_RECT:1,RECT:2,CIRCLE:3,CLOUD:4,BANG:5,HEXAGON:6},E=class{constructor(){this.nodes=[],this.count=0,this.elements={},this.getLogger=this.getLogger.bind(this),this.nodeType=_,this.clear(),this.getType=this.getType.bind(this),this.getElementById=this.getElementById.bind(this),this.getParent=this.getParent.bind(this),this.getMindmap=this.getMindmap.bind(this),this.addNode=this.addNode.bind(this),this.decorateNode=this.decorateNode.bind(this)}static{n(this,"MindmapDB")}clear(){this.nodes=[],this.count=0,this.elements={},this.baseLevel=void 0}getParent(t){for(let e=this.nodes.length-1;e>=0;e--)if(this.nodes[e].level<t)return this.nodes[e];return null}getMindmap(){return this.nodes.length>0?this.nodes[0]:null}addNode(t,e,n,s){i.info("addNode",t,e,n,s);let o=!1;0===this.nodes.length?(this.baseLevel=t,t=0,o=!0):void 0!==this.baseLevel&&(t-=this.baseLevel,o=!1);const r=c();let h=r.mindmap?.padding??a.mindmap.padding;switch(s){case this.nodeType.ROUNDED_RECT:case this.nodeType.RECT:case this.nodeType.HEXAGON:h*=2}const d={id:this.count++,nodeId:l(e,r),level:t,descr:l(n,r),type:s,children:[],width:r.mindmap?.maxNodeWidth??a.mindmap.maxNodeWidth,padding:h,isRoot:o},g=this.getParent(t);if(g)g.children.push(d),this.nodes.push(d);else{if(!o)throw new Error(`There can be only one root. No parent could be found for ("${d.descr}")`);this.nodes.push(d)}}getType(t,e){switch(i.debug("In get type",t,e),t){case"[":return this.nodeType.RECT;case"(":return")"===e?this.nodeType.ROUNDED_RECT:this.nodeType.CLOUD;case"((":return this.nodeType.CIRCLE;case")":return this.nodeType.CLOUD;case"))":return this.nodeType.BANG;case"{{":return this.nodeType.HEXAGON;default:return this.nodeType.DEFAULT}}setElementForId(t,e){this.elements[t]=e}getElementById(t){return this.elements[t]}decorateNode(t){if(!t)return;const e=c(),n=this.nodes[this.nodes.length-1];t.icon&&(n.icon=l(t.icon,e)),t.class&&(n.class=l(t.class,e))}type2Str(t){switch(t){case this.nodeType.DEFAULT:return"no-border";case this.nodeType.RECT:return"rect";case this.nodeType.ROUNDED_RECT:return"rounded-rect";case this.nodeType.CIRCLE:return"circle";case this.nodeType.CLOUD:return"cloud";case this.nodeType.BANG:return"bang";case this.nodeType.HEXAGON:return"hexgon";default:return"no-border"}}assignSections(t,e,n=0,i=!1){if(0===t.level?t.section=void 0:t.section=i?(n-1)%11:e,t.children)for(const[s,o]of t.children.entries()){const r=0===t.level?s%11:e;this.assignSections(o,r,n+1,i)}}flattenNodes(t,e){const i=c(),s=["mindmap-node"];!0===t.isRoot?s.push("section-root","section--1"):void 0!==t.section&&s.push(`section-${t.section}`),t.class&&s.push(t.class);const o=s.join(" "),r=n(t=>{const e=(i.theme?.toLowerCase()??"").includes("redux");switch(t){case _.CIRCLE:return"mindmapCircle";case _.RECT:return"rect";case _.ROUNDED_RECT:return"rounded";case _.CLOUD:return"cloud";case _.BANG:return"bang";case _.HEXAGON:return"hexagon";case _.DEFAULT:return e?"rounded":"defaultMindmapNode";default:return"rect"}},"getShapeFromType"),a={id:t.id.toString(),domId:"node_"+t.id.toString(),label:t.descr,labelType:"markdown",isGroup:!1,shape:r(t.type),width:t.width,height:t.height??0,padding:t.padding,cssClasses:o,cssStyles:[],centerLabel:!0,look:i.look,icon:t.icon,x:t.x,y:t.y,level:t.level,nodeId:t.nodeId,type:t.type,section:t.section};if(e.push(a),t.children)for(const n of t.children)this.flattenNodes(n,e)}generateEdges(t,e){if(!t.children)return;const n=c();for(const i of t.children){let s="edge";void 0!==i.section&&(s+=` section-edge-${i.section}`);s+=` edge-depth-${t.level+1}`;const o={id:`edge_${t.id}_${i.id}`,start:t.id.toString(),end:i.id.toString(),type:"normal",curve:"basis",thickness:"normal",look:n.look,classes:s,depth:t.level,section:i.section};e.push(o),this.generateEdges(i,e)}}getData(){const t=this.getMindmap(),e=c(),n=e;if(void 0!==h().layout||(n.layout="cose-bilkent"),!t)return{nodes:[],edges:[],config:n};i.debug("getData: mindmapRoot",t,e),this.assignSections(t,void 0,0,"depth"===e.mindmap?.colorBy);const s=[],o=[];this.flattenNodes(t,s),this.generateEdges(t,o),i.debug(`getData: processed ${s.length} nodes and ${o.length} edges`);const r=new Map;for(const i of s)r.set(i.id,{shape:i.shape,width:i.width,height:i.height,padding:i.padding});return{nodes:s,edges:o,config:n,rootNode:t,markers:["point"],direction:"TB",nodeSpacing:50,rankSpacing:50,shapes:Object.fromEntries(r),type:"mindmap",diagramId:"mindmap-"+m()}}getLogger(){return i}},b={draw:n(async(n,c,l,h)=>{i.debug("Rendering mindmap diagram\n"+n);const d=h.db,g=d.getData(),p=t(c,g.config.securityLevel);g.type=h.type,g.layoutAlgorithm=s(g.config.layout,{fallback:"cose-bilkent"}),g.diagramId=c;if(!d.getMindmap())return;g.nodes.forEach(t=>{"rounded"===t.shape?(t.radius=15,t.taper=15,t.stroke="none",t.width=0,t.padding=15):"circle"===t.shape?t.padding=10:"rect"===t.shape?(t.width=0,t.padding=10):"hexagon"===t.shape&&(t.width=0,t.height=0)}),await o(g,p);const{themeVariables:u}=r(),{useGradient:y,gradientStart:m,gradientStop:f}=u;if(y&&m&&f){const t=p.attr("id"),e=p.append("defs").append("linearGradient").attr("id",`${t}-gradient`).attr("gradientUnits","objectBoundingBox").attr("x1","0%").attr("y1","0%").attr("x2","100%").attr("y2","0%");e.append("stop").attr("offset","0%").attr("stop-color",m).attr("stop-opacity",1),e.append("stop").attr("offset","100%").attr("stop-color",f).attr("stop-opacity",1)}e(p,g.config.mindmap?.padding??a.mindmap.padding,"mindmapDiagram",g.config.mindmap?.useMaxWidth??a.mindmap.useMaxWidth)},"draw")},S=n(t=>{const{theme:e,look:n}=t;let i="";for(let s=0;s<t.THEME_COLOR_LIMIT;s++)t["lineColor"+s]=t["lineColor"+s]||t["cScaleInv"+s],d(t["lineColor"+s])?t["lineColor"+s]=g(t["lineColor"+s],20):t["lineColor"+s]=p(t["lineColor"+s],20);for(let s=0;s<t.THEME_COLOR_LIMIT;s++){const o=""+("neo"===n?Math.max(10-2*(s-1),2):17-3*s),r="redux"===e||"redux-dark"===e?t.nodeBorder:t["cScaleLabel"+("neutral"===e?1:s)];i+=`\n .section-${s-1} rect, .section-${s-1} path, .section-${s-1} circle, .section-${s-1} polygon, .section-${s-1} path {\n fill: ${t["cScale"+s]};\n }\n .section-${s-1} text {\n fill: ${t["cScaleLabel"+s]};\n }\n .section-${s-1} span {\n color: ${t["cScaleLabel"+s]};\n }\n .node-icon-${s-1} {\n font-size: 40px;\n color: ${t["cScaleLabel"+s]};\n }\n .section-edge-${s-1}{\n stroke: ${t["cScale"+s]};\n }\n .edge-depth-${s-1}{\n stroke-width: ${o};\n }\n .section-${s-1} line {\n stroke: ${t["cScaleInv"+s]} ;\n stroke-width: 3;\n }\n\n .disabled, .disabled circle, .disabled text {\n fill: lightgray;\n }\n .disabled text {\n fill: #efefef;\n }\n [data-look="neo"].mindmap-node.section-${s-1} rect, [data-look="neo"].mindmap-node.section-${s-1} path, [data-look="neo"].mindmap-node.section-${s-1} circle, [data-look="neo"].mindmap-node.section-${s-1} polygon {\n fill: ${"redux"===e||"redux-dark"===e||"neutral"===e?t.mainBkg:t["cScale"+s]};\n stroke: ${"redux"===e||"redux-dark"===e?t.nodeBorder:t["cScale"+s]};\n stroke-width: ${t.strokeWidth??2}px;\n }\n [data-look="neo"].section-edge-${s-1}{\n stroke: ${e?.includes("redux")||"neo-dark"===e?t.nodeBorder:t["cScale"+s]};\n }\n [data-look="neo"].mindmap-node.section-${s-1} text, [data-look="neo"].mindmap-node.section-${s-1} span {\n fill: ${r};\n color: ${r};\n }\n `}return i},"genSections"),N=n((t,e,n)=>{let i="";for(let s=0;s<t;s++)i+=`\n [data-look="neo"].mindmap-node.section-${s-1} rect, [data-look="neo"].mindmap-node.section-${s-1} path, [data-look="neo"].mindmap-node.section-${s-1} circle, [data-look="neo"].mindmap-node.section-${s-1} polygon {\n stroke: url(${e}-gradient);\n fill: ${n};\n }\n .section-${s-1} line {\n stroke-width: 0;\n }`;return i},"genGradient"),L=n(t=>{const{theme:e}=t,n=t.svgId,i=e?.includes("redux")?t.nodeBorder:t["cScaleLabel"+("neutral"===e?1:0)],s=t.dropShadow?t.dropShadow.replace("url(#drop-shadow)",`url(${n}-drop-shadow)`):"none";return`\n .edge {\n stroke-width: 3;\n }\n ${S(t)}\n .section-root rect, .section-root path, .section-root circle, .section-root polygon {\n fill: ${t.git0};\n }\n .section-root text {\n fill: ${t.gitBranchLabel0};\n }\n .section-root span {\n color: ${e?.includes("redux")?t.nodeBorder:t.gitBranchLabel0};\n }\n .icon-container {\n height:100%;\n display: flex;\n justify-content: center;\n align-items: center;\n }\n .edge {\n fill: none;\n }\n .mindmap-node-label {\n dy: 1em;\n alignment-baseline: middle;\n text-anchor: middle;\n dominant-baseline: middle;\n text-align: center;\n }\n [data-look="neo"].mindmap-node {\n filter: ${s};\n }\n [data-look="neo"].mindmap-node.section-root rect, [data-look="neo"].mindmap-node.section-root path, [data-look="neo"].mindmap-node.section-root circle, [data-look="neo"].mindmap-node.section-root polygon {\n fill: ${e?.includes("redux")?t.mainBkg:t.git0};\n }\n [data-look="neo"].mindmap-node.section-root .text-inner-tspan, [data-look="neo"].mindmap-node.section-root span {\n fill: ${i};\n color: ${i};\n }\n ${t.useGradient&&n&&t.mainBkg?N(t.THEME_COLOR_LIMIT,n,t.mainBkg):""}\n`},"getStyles"),x={get db(){return new E},renderer:b,parser:k,styles:L};export{x as diagram};
@@ -0,0 +1 @@
1
+ import{g as e,r,d as t}from"./chunk-2E7WHVMD-TfbC_dmh.js";import{p as a}from"./chunk-JWPE2WC7-BP2iXBhe.js";import{_ as n,l as s}from"./mermaid-T_6Ze_cT.js";import{M as o,d as i}from"./cynefin-EF2NZ3EQ-CR1E3YiZ.js";import"./markdown-S2mWvoE-.js";var p=i().RailroadPeg.parser.LangiumParser,m=n(e=>{const r=e.alternatives.map(l);return 1===r.length?r[0]:{type:"choice",alternatives:r}},"transformOrderedChoice"),l=n(e=>{const r=e.elements.map(u);return 1===r.length?r[0]:{type:"sequence",elements:r}},"transformSequence"),u=n(e=>{const r=f(e.suffix);if(!e.operator)return r;return{type:"special",text:"&"===e.operator?`&${c(r)}`:`!${c(r)}`}},"transformPrefix"),c=n(e=>{switch(e.type){case"terminal":return`"${e.value}"`;case"nonterminal":return e.name;case"special":return e.text;default:return"(...)"}},"nodeToLabel"),f=n(e=>{const r=d(e.primary);if(!e.operator)return r;switch(e.operator){case"?":return{type:"optional",element:r};case"*":return{type:"repetition",element:r,min:0,max:1/0};case"+":return{type:"repetition",element:r,min:1,max:1/0};default:throw new Error(`Unsupported PEG suffix operator: ${e.operator}`)}},"transformSuffix"),d=n(e=>{switch(e.$type){case"PegLiteral":return{type:"terminal",value:e.value};case"PegIdentifier":return{type:"nonterminal",name:e.name};case"PegGroup":return m(e.element);case"PegAny":return{type:"special",text:e.dot};default:throw new Error(`Unsupported PEG primary node: ${e.$type}`)}},"transformPrimary"),y=n(e=>({name:e.name,definition:m(e.definition)}),"transformRule"),P=n(e=>{a(e,t),e.title&&t.setTitle(e.title),e.rules.map(e=>t.addRule(y(e)))},"populateDb"),g={parser:{parse:n(e=>{t.clear(),s.debug("[PEG Parser] Starting Langium parse");const r=p.parse(e);if(r.lexerErrors.length>0||r.parserErrors.length>0)throw new o(r);const a=r.value;s.debug("[PEG Parser] Parsed rules:",a.rules.length),P(a),s.debug("[PEG Parser] Parse complete")},"parse"),parser:{yy:t}},db:t,renderer:r,styles:e};export{g as diagram};
@@ -0,0 +1 @@
1
+ import{p as e}from"./chunk-JWPE2WC7-BP2iXBhe.js";import{g as t,s as a,a as i,b as n,t as r,q as l,_ as s,l as o,c,N as d,Q as p,R as h,S as g,T as u,d as m,z as f,U as w,O as x}from"./mermaid-T_6Ze_cT.js";import{p as S}from"./cynefin-EF2NZ3EQ-CR1E3YiZ.js";import"./markdown-S2mWvoE-.js";var $=x.pie,b={sections:new Map,showData:!1},y=b.sections,v=b.showData,C=structuredClone($),T={getConfig:s(()=>structuredClone(C),"getConfig"),clear:s(()=>{y=new Map,v=b.showData,f()},"clear"),setDiagramTitle:l,getDiagramTitle:r,setAccTitle:n,getAccTitle:i,setAccDescription:a,getAccDescription:t,addSection:s(({label:e,value:t})=>{if(t<0)throw new Error(`"${e}" has invalid value: ${t}. Negative values are not allowed in pie charts. All slice values must be >= 0.`);y.has(e)||(y.set(e,t),o.debug(`added new section: ${e}, with value: ${t}`))},"addSection"),getSections:s(()=>y,"getSections"),setShowData:s(e=>{v=e},"setShowData"),getShowData:s(()=>v,"getShowData")},k=s((t,a)=>{e(t,a),a.setShowData(t.showData),t.sections.map(a.addSection)},"populateDb"),D={parse:s(async e=>{const t=await S("pie",e);o.debug(t),k(t,T)},"parse")},A=s(e=>`\n .pieCircle{\n stroke: ${e.pieStrokeColor};\n stroke-width : ${e.pieStrokeWidth};\n opacity : ${e.pieOpacity};\n }\n .pieCircle.highlighted{\n scale: 1.05;\n opacity: 1;\n }\n .pieCircle.highlightedOnHover:hover{\n transition-duration: 250ms;\n scale: 1.05;\n opacity: 1;\n }\n .pieOuterCircle{\n stroke: ${e.pieOuterStrokeColor};\n stroke-width: ${e.pieOuterStrokeWidth};\n fill: none;\n }\n .pieTitleText {\n text-anchor: middle;\n font-size: ${e.pieTitleTextSize};\n fill: ${e.pieTitleTextColor};\n font-family: ${e.fontFamily};\n }\n .slice {\n font-family: ${e.fontFamily};\n fill: ${e.pieSectionTextColor};\n font-size:${e.pieSectionTextSize};\n // fill: white;\n }\n .legend text {\n fill: ${e.pieLegendTextColor};\n font-family: ${e.fontFamily};\n font-size: ${e.pieLegendTextSize};\n }\n`,"getStyles"),O=s(e=>{const t=[...e.values()].reduce((e,t)=>e+t,0),a=[...e.entries()].map(([e,t])=>({label:e,value:t})).filter(e=>e.value/t*100>=1);return w().value(e=>e.value).sort(null)(a)},"createPieArcs"),z={parser:D,db:T,renderer:{draw:s((e,t,a,i)=>{o.debug("rendering pie chart\n"+e);const n=i.db,r=c(),l=d(n.getConfig(),r.pie),s=18,f=450,w=f,x=p(t),S=x.append("g");S.attr("transform","translate(225,225)");const{themeVariables:$}=r;let[b]=h($.pieOuterStrokeWidth);b??=2;const y=l.legendPosition,v=l.textPosition,C=l.donutHole>0&&l.donutHole<=.9?l.donutHole:0,T=Math.min(w,f)/2-40,k=g().innerRadius(C*T).outerRadius(T),D=g().innerRadius(T*v).outerRadius(T*v),A=S.append("g");A.append("circle").attr("cx",0).attr("cy",0).attr("r",T+b/2).attr("class","pieOuterCircle");const z=n.getSections(),M=O(z),R=[$.pie1,$.pie2,$.pie3,$.pie4,$.pie5,$.pie6,$.pie7,$.pie8,$.pie9,$.pie10,$.pie11,$.pie12];let F=0;z.forEach(e=>{F+=e});const W=M.filter(e=>"0"!==(e.data.value/F*100).toFixed(0)),E=u(R).domain([...z.keys()]);A.selectAll("mySlices").data(W).enter().append("path").attr("d",k).attr("fill",e=>E(e.data.label)).attr("class",e=>{let t="pieCircle";return"hover"===l.highlightSlice?t+=" highlightedOnHover":l.highlightSlice===e.data.label&&(t+=" highlighted"),t}),A.selectAll("mySlices").data(W).enter().append("text").text(e=>(e.data.value/F*100).toFixed(0)+"%").attr("transform",e=>"translate("+D.centroid(e)+")").style("text-anchor","middle").attr("class","slice");const H=S.append("text").text(n.getDiagramTitle()).attr("x",0).attr("y",-200).attr("class","pieTitleText"),P=[...z.entries()].map(([e,t])=>({label:e,value:t})),j=S.selectAll(".legend").data(P).enter().append("g").attr("class","legend");j.append("rect").attr("width",s).attr("height",s).style("fill",e=>E(e.label)).style("stroke",e=>E(e.label)),j.append("text").attr("x",22).attr("y",14).text(e=>n.getShowData()?`${e.label} [${e.value}]`:e.label);const B=Math.max(...j.selectAll("text").nodes().map(e=>e?.getBoundingClientRect().width??0));let N=f,Q=490;const L=22,q=P.length*L;switch(y){case"center":j.attr("transform",(e,t)=>{const a=L*P.length/2;return"translate("+(-B/2-22)+","+(t*L-a)+")"});break;case"top":N+=q,j.attr("transform",(e,t)=>`translate(${-B/2-22}, ${t*L-T})`),A.attr("transform",()=>`translate(0, ${q+L})`);break;case"bottom":N+=q,j.attr("transform",(e,t)=>"translate("+(-B/2-22)+","+(t*L-(-T-L))+")");break;case"left":Q+=22+B,j.attr("transform",(e,t)=>{const a=L*P.length/2;return"translate("+(-T-22)+","+(t*L-a)+")"}),A.attr("transform",()=>`translate(${B+s+4}, 0)`);break;default:Q+=22+B,j.attr("transform",(e,t)=>{const a=L*P.length/2;return"translate(216,"+(t*L-a)+")"})}const J=H.node()?.getBoundingClientRect().width??0,U=225-J/2,V=225+J/2,Z=Math.min(0,U),_=Math.max(Q,V)-Z;x.attr("viewBox",`${Z} 0 ${_} ${N}`),m(x,N,_,l.useMaxWidth)},"draw")},styles:A};export{z as diagram};
@@ -0,0 +1 @@
1
+ import{s as t,g as e,t as i,q as a,a as n,b as s,_ as r,c as o,l,k as h,d as c,z as d,O as u,V as x,j as g,W as f}from"./mermaid-T_6Ze_cT.js";import"./markdown-S2mWvoE-.js";var p=function(){var t=r(function(t,e,i,a){for(i=i||{},a=t.length;a--;i[t[a]]=e);return i},"o"),e=[1,3],i=[1,4],a=[1,5],n=[1,6],s=[1,7],o=[1,4,5,10,12,13,14,15,18,25,35,37,39,41,42,48,50,51,52,53,54,55,56,57,60,61,63,64,65,66,67],l=[1,4,5,10,12,13,14,15,18,25,28,35,37,39,41,42,48,50,51,52,53,54,55,56,57,60,61,63,64,65,66,67],h=[55,56,57],c=[2,36],d=[1,37],u=[1,36],x=[1,38],g=[1,35],f=[1,43],p=[1,41],y=[1,45],T=[1,14],m=[1,23],q=[1,18],A=[1,19],_=[1,20],b=[1,21],S=[1,22],k=[1,24],F=[1,25],P=[1,26],C=[1,27],L=[1,28],v=[1,29],E=[1,32],D=[1,33],z=[1,34],I=[1,39],w=[1,40],N=[1,42],W=[1,44],B=[1,63],R=[1,62],$=[4,5,8,10,12,13,14,15,18,44,47,49,55,56,57,63,64,65,66,67],U=[1,66],Q=[1,67],O=[1,68],X=[1,69],H=[1,70],M=[1,71],Y=[1,72],j=[1,73],G=[1,74],K=[1,75],V=[1,76],Z=[1,77],J=[4,5,6,7,8,9,10,11,12,13,14,15,18],tt=[1,91],et=[1,92],it=[1,93],at=[1,100],nt=[1,94],st=[1,97],rt=[1,95],ot=[1,96],lt=[1,98],ht=[1,99],ct=[1,103],dt=[10,55,56,57],ut=[4,5,6,8,10,11,13,17,18,19,20,55,56,57],xt={trace:r(function(){},"trace"),yy:{},symbols_:{error:2,idStringToken:3,ALPHA:4,NUM:5,NODE_STRING:6,DOWN:7,MINUS:8,DEFAULT:9,COMMA:10,COLON:11,AMP:12,BRKT:13,MULT:14,UNICODE_TEXT:15,styleComponent:16,UNIT:17,SPACE:18,STYLE:19,PCT:20,idString:21,style:22,stylesOpt:23,classDefStatement:24,CLASSDEF:25,start:26,eol:27,QUADRANT:28,document:29,line:30,statement:31,axisDetails:32,quadrantDetails:33,points:34,title:35,title_value:36,acc_title:37,acc_title_value:38,acc_descr:39,acc_descr_value:40,acc_descr_multiline_value:41,section:42,text:43,point_start:44,point_x:45,point_y:46,class_name:47,"X-AXIS":48,"AXIS-TEXT-DELIMITER":49,"Y-AXIS":50,QUADRANT_1:51,QUADRANT_2:52,QUADRANT_3:53,QUADRANT_4:54,NEWLINE:55,SEMI:56,EOF:57,alphaNumToken:58,textNoTagsToken:59,STR:60,MD_STR:61,alphaNum:62,PUNCTUATION:63,PLUS:64,EQUALS:65,DOT:66,UNDERSCORE:67,$accept:0,$end:1},terminals_:{2:"error",4:"ALPHA",5:"NUM",6:"NODE_STRING",7:"DOWN",8:"MINUS",9:"DEFAULT",10:"COMMA",11:"COLON",12:"AMP",13:"BRKT",14:"MULT",15:"UNICODE_TEXT",17:"UNIT",18:"SPACE",19:"STYLE",20:"PCT",25:"CLASSDEF",28:"QUADRANT",35:"title",36:"title_value",37:"acc_title",38:"acc_title_value",39:"acc_descr",40:"acc_descr_value",41:"acc_descr_multiline_value",42:"section",44:"point_start",45:"point_x",46:"point_y",47:"class_name",48:"X-AXIS",49:"AXIS-TEXT-DELIMITER",50:"Y-AXIS",51:"QUADRANT_1",52:"QUADRANT_2",53:"QUADRANT_3",54:"QUADRANT_4",55:"NEWLINE",56:"SEMI",57:"EOF",60:"STR",61:"MD_STR",63:"PUNCTUATION",64:"PLUS",65:"EQUALS",66:"DOT",67:"UNDERSCORE"},productions_:[0,[3,1],[3,1],[3,1],[3,1],[3,1],[3,1],[3,1],[3,1],[3,1],[3,1],[3,1],[3,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[21,1],[21,2],[22,1],[22,2],[23,1],[23,3],[24,5],[26,2],[26,2],[26,2],[29,0],[29,2],[30,2],[31,0],[31,1],[31,2],[31,1],[31,1],[31,1],[31,2],[31,2],[31,2],[31,1],[31,1],[34,4],[34,5],[34,5],[34,6],[32,4],[32,3],[32,2],[32,4],[32,3],[32,2],[33,2],[33,2],[33,2],[33,2],[27,1],[27,1],[27,1],[43,1],[43,2],[43,1],[43,1],[62,1],[62,2],[58,1],[58,1],[58,1],[58,1],[58,1],[58,1],[58,1],[58,1],[58,1],[58,1],[58,1],[58,1],[59,1],[59,1],[59,1]],performAction:r(function(t,e,i,a,n,s,r){var o=s.length-1;switch(n){case 23:case 68:this.$=s[o];break;case 24:case 69:this.$=s[o-1]+""+s[o];break;case 26:this.$=s[o-1]+s[o];break;case 27:this.$=[s[o].trim()];break;case 28:s[o-2].push(s[o].trim()),this.$=s[o-2];break;case 29:this.$=s[o-4],a.addClass(s[o-2],s[o]);break;case 37:this.$=[];break;case 42:this.$=s[o].trim(),a.setDiagramTitle(this.$);break;case 43:this.$=s[o].trim(),a.setAccTitle(this.$);break;case 44:case 45:this.$=s[o].trim(),a.setAccDescription(this.$);break;case 46:a.addSection(s[o].substr(8)),this.$=s[o].substr(8);break;case 47:a.addPoint(s[o-3],"",s[o-1],s[o],[]);break;case 48:a.addPoint(s[o-4],s[o-3],s[o-1],s[o],[]);break;case 49:a.addPoint(s[o-4],"",s[o-2],s[o-1],s[o]);break;case 50:a.addPoint(s[o-5],s[o-4],s[o-2],s[o-1],s[o]);break;case 51:a.setXAxisLeftText(s[o-2]),a.setXAxisRightText(s[o]);break;case 52:s[o-1].text+=" ⟶ ",a.setXAxisLeftText(s[o-1]);break;case 53:a.setXAxisLeftText(s[o]);break;case 54:a.setYAxisBottomText(s[o-2]),a.setYAxisTopText(s[o]);break;case 55:s[o-1].text+=" ⟶ ",a.setYAxisBottomText(s[o-1]);break;case 56:a.setYAxisBottomText(s[o]);break;case 57:a.setQuadrant1Text(s[o]);break;case 58:a.setQuadrant2Text(s[o]);break;case 59:a.setQuadrant3Text(s[o]);break;case 60:a.setQuadrant4Text(s[o]);break;case 64:case 66:this.$={text:s[o],type:"text"};break;case 65:this.$={text:s[o-1].text+""+s[o],type:s[o-1].type};break;case 67:this.$={text:s[o],type:"markdown"}}},"anonymous"),table:[{18:e,26:1,27:2,28:i,55:a,56:n,57:s},{1:[3]},{18:e,26:8,27:2,28:i,55:a,56:n,57:s},{18:e,26:9,27:2,28:i,55:a,56:n,57:s},t(o,[2,33],{29:10}),t(l,[2,61]),t(l,[2,62]),t(l,[2,63]),{1:[2,30]},{1:[2,31]},t(h,c,{30:11,31:12,24:13,32:15,33:16,34:17,43:30,58:31,1:[2,32],4:d,5:u,10:x,12:g,13:f,14:p,15:y,18:T,25:m,35:q,37:A,39:_,41:b,42:S,48:k,50:F,51:P,52:C,53:L,54:v,60:E,61:D,63:z,64:I,65:w,66:N,67:W}),t(o,[2,34]),{27:46,55:a,56:n,57:s},t(h,[2,37]),t(h,c,{24:13,32:15,33:16,34:17,43:30,58:31,31:47,4:d,5:u,10:x,12:g,13:f,14:p,15:y,18:T,25:m,35:q,37:A,39:_,41:b,42:S,48:k,50:F,51:P,52:C,53:L,54:v,60:E,61:D,63:z,64:I,65:w,66:N,67:W}),t(h,[2,39]),t(h,[2,40]),t(h,[2,41]),{36:[1,48]},{38:[1,49]},{40:[1,50]},t(h,[2,45]),t(h,[2,46]),{18:[1,51]},{4:d,5:u,10:x,12:g,13:f,14:p,15:y,43:52,58:31,60:E,61:D,63:z,64:I,65:w,66:N,67:W},{4:d,5:u,10:x,12:g,13:f,14:p,15:y,43:53,58:31,60:E,61:D,63:z,64:I,65:w,66:N,67:W},{4:d,5:u,10:x,12:g,13:f,14:p,15:y,43:54,58:31,60:E,61:D,63:z,64:I,65:w,66:N,67:W},{4:d,5:u,10:x,12:g,13:f,14:p,15:y,43:55,58:31,60:E,61:D,63:z,64:I,65:w,66:N,67:W},{4:d,5:u,10:x,12:g,13:f,14:p,15:y,43:56,58:31,60:E,61:D,63:z,64:I,65:w,66:N,67:W},{4:d,5:u,10:x,12:g,13:f,14:p,15:y,43:57,58:31,60:E,61:D,63:z,64:I,65:w,66:N,67:W},{4:d,5:u,8:B,10:x,12:g,13:f,14:p,15:y,18:R,44:[1,58],47:[1,59],58:61,59:60,63:z,64:I,65:w,66:N,67:W},t($,[2,64]),t($,[2,66]),t($,[2,67]),t($,[2,70]),t($,[2,71]),t($,[2,72]),t($,[2,73]),t($,[2,74]),t($,[2,75]),t($,[2,76]),t($,[2,77]),t($,[2,78]),t($,[2,79]),t($,[2,80]),t($,[2,81]),t(o,[2,35]),t(h,[2,38]),t(h,[2,42]),t(h,[2,43]),t(h,[2,44]),{3:65,4:U,5:Q,6:O,7:X,8:H,9:M,10:Y,11:j,12:G,13:K,14:V,15:Z,21:64},t(h,[2,53],{59:60,58:61,4:d,5:u,8:B,10:x,12:g,13:f,14:p,15:y,18:R,49:[1,78],63:z,64:I,65:w,66:N,67:W}),t(h,[2,56],{59:60,58:61,4:d,5:u,8:B,10:x,12:g,13:f,14:p,15:y,18:R,49:[1,79],63:z,64:I,65:w,66:N,67:W}),t(h,[2,57],{59:60,58:61,4:d,5:u,8:B,10:x,12:g,13:f,14:p,15:y,18:R,63:z,64:I,65:w,66:N,67:W}),t(h,[2,58],{59:60,58:61,4:d,5:u,8:B,10:x,12:g,13:f,14:p,15:y,18:R,63:z,64:I,65:w,66:N,67:W}),t(h,[2,59],{59:60,58:61,4:d,5:u,8:B,10:x,12:g,13:f,14:p,15:y,18:R,63:z,64:I,65:w,66:N,67:W}),t(h,[2,60],{59:60,58:61,4:d,5:u,8:B,10:x,12:g,13:f,14:p,15:y,18:R,63:z,64:I,65:w,66:N,67:W}),{45:[1,80]},{44:[1,81]},t($,[2,65]),t($,[2,82]),t($,[2,83]),t($,[2,84]),{3:83,4:U,5:Q,6:O,7:X,8:H,9:M,10:Y,11:j,12:G,13:K,14:V,15:Z,18:[1,82]},t(J,[2,23]),t(J,[2,1]),t(J,[2,2]),t(J,[2,3]),t(J,[2,4]),t(J,[2,5]),t(J,[2,6]),t(J,[2,7]),t(J,[2,8]),t(J,[2,9]),t(J,[2,10]),t(J,[2,11]),t(J,[2,12]),t(h,[2,52],{58:31,43:84,4:d,5:u,10:x,12:g,13:f,14:p,15:y,60:E,61:D,63:z,64:I,65:w,66:N,67:W}),t(h,[2,55],{58:31,43:85,4:d,5:u,10:x,12:g,13:f,14:p,15:y,60:E,61:D,63:z,64:I,65:w,66:N,67:W}),{46:[1,86]},{45:[1,87]},{4:tt,5:et,6:it,8:at,11:nt,13:st,16:90,17:rt,18:ot,19:lt,20:ht,22:89,23:88},t(J,[2,24]),t(h,[2,51],{59:60,58:61,4:d,5:u,8:B,10:x,12:g,13:f,14:p,15:y,18:R,63:z,64:I,65:w,66:N,67:W}),t(h,[2,54],{59:60,58:61,4:d,5:u,8:B,10:x,12:g,13:f,14:p,15:y,18:R,63:z,64:I,65:w,66:N,67:W}),t(h,[2,47],{22:89,16:90,23:101,4:tt,5:et,6:it,8:at,11:nt,13:st,17:rt,18:ot,19:lt,20:ht}),{46:[1,102]},t(h,[2,29],{10:ct}),t(dt,[2,27],{16:104,4:tt,5:et,6:it,8:at,11:nt,13:st,17:rt,18:ot,19:lt,20:ht}),t(ut,[2,25]),t(ut,[2,13]),t(ut,[2,14]),t(ut,[2,15]),t(ut,[2,16]),t(ut,[2,17]),t(ut,[2,18]),t(ut,[2,19]),t(ut,[2,20]),t(ut,[2,21]),t(ut,[2,22]),t(h,[2,49],{10:ct}),t(h,[2,48],{22:89,16:90,23:105,4:tt,5:et,6:it,8:at,11:nt,13:st,17:rt,18:ot,19:lt,20:ht}),{4:tt,5:et,6:it,8:at,11:nt,13:st,16:90,17:rt,18:ot,19:lt,20:ht,22:106},t(ut,[2,26]),t(h,[2,50],{10:ct}),t(dt,[2,28],{16:104,4:tt,5:et,6:it,8:at,11:nt,13:st,17:rt,18:ot,19:lt,20:ht})],defaultActions:{8:[2,30],9:[2,31]},parseError:r(function(t,e){if(!e.recoverable){var i=new Error(t);throw i.hash=e,i}this.trace(t)},"parseError"),parse:r(function(t){var e=this,i=[0],a=[],n=[null],s=[],o=this.table,l="",h=0,c=0,d=s.slice.call(arguments,1),u=Object.create(this.lexer),x={yy:{}};for(var g in this.yy)Object.prototype.hasOwnProperty.call(this.yy,g)&&(x.yy[g]=this.yy[g]);u.setInput(t,x.yy),x.yy.lexer=u,x.yy.parser=this,void 0===u.yylloc&&(u.yylloc={});var f=u.yylloc;s.push(f);var p=u.options&&u.options.ranges;function y(){var t;return"number"!=typeof(t=a.pop()||u.lex()||1)&&(t instanceof Array&&(t=(a=t).pop()),t=e.symbols_[t]||t),t}"function"==typeof x.yy.parseError?this.parseError=x.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError,r(function(t){i.length=i.length-2*t,n.length=n.length-t,s.length=s.length-t},"popStack"),r(y,"lex");for(var T,m,q,A,_,b,S,k,F={};;){if(m=i[i.length-1],this.defaultActions[m]?q=this.defaultActions[m]:(null==T&&(T=y()),q=o[m]&&o[m][T]),void 0===q||!q.length||!q[0]){var P="";for(_ in k=[],o[m])this.terminals_[_]&&_>2&&k.push("'"+this.terminals_[_]+"'");P=u.showPosition?"Parse error on line "+(h+1)+":\n"+u.showPosition()+"\nExpecting "+k.join(", ")+", got '"+(this.terminals_[T]||T)+"'":"Parse error on line "+(h+1)+": Unexpected "+(1==T?"end of input":"'"+(this.terminals_[T]||T)+"'"),this.parseError(P,{text:u.match,token:this.terminals_[T]||T,line:u.yylineno,loc:f,expected:k})}if(q[0]instanceof Array&&q.length>1)throw new Error("Parse Error: multiple actions possible at state: "+m+", token: "+T);switch(q[0]){case 1:i.push(T),n.push(u.yytext),s.push(u.yylloc),i.push(q[1]),T=null,c=u.yyleng,l=u.yytext,h=u.yylineno,f=u.yylloc;break;case 2:if(b=this.productions_[q[1]][1],F.$=n[n.length-b],F._$={first_line:s[s.length-(b||1)].first_line,last_line:s[s.length-1].last_line,first_column:s[s.length-(b||1)].first_column,last_column:s[s.length-1].last_column},p&&(F._$.range=[s[s.length-(b||1)].range[0],s[s.length-1].range[1]]),void 0!==(A=this.performAction.apply(F,[l,c,h,x.yy,q[1],n,s].concat(d))))return A;b&&(i=i.slice(0,-1*b*2),n=n.slice(0,-1*b),s=s.slice(0,-1*b)),i.push(this.productions_[q[1]][0]),n.push(F.$),s.push(F._$),S=o[i[i.length-2]][i[i.length-1]],i.push(S);break;case 3:return!0}}return!0},"parse")},gt=function(){return{EOF:1,parseError:r(function(t,e){if(!this.yy.parser)throw new Error(t);this.yy.parser.parseError(t,e)},"parseError"),setInput:r(function(t,e){return this.yy=e||this.yy||{},this._input=t,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:r(function(){var t=this._input[0];return this.yytext+=t,this.yyleng++,this.offset++,this.match+=t,this.matched+=t,t.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),t},"input"),unput:r(function(t){var e=t.length,i=t.split(/(?:\r\n?|\n)/g);this._input=t+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-e),this.offset-=e;var a=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),i.length-1&&(this.yylineno-=i.length-1);var n=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:i?(i.length===a.length?this.yylloc.first_column:0)+a[a.length-i.length].length-i[0].length:this.yylloc.first_column-e},this.options.ranges&&(this.yylloc.range=[n[0],n[0]+this.yyleng-e]),this.yyleng=this.yytext.length,this},"unput"),more:r(function(){return this._more=!0,this},"more"),reject:r(function(){return this.options.backtrack_lexer?(this._backtrack=!0,this):this.parseError("Lexical error on line "+(this.yylineno+1)+". You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true).\n"+this.showPosition(),{text:"",token:null,line:this.yylineno})},"reject"),less:r(function(t){this.unput(this.match.slice(t))},"less"),pastInput:r(function(){var t=this.matched.substr(0,this.matched.length-this.match.length);return(t.length>20?"...":"")+t.substr(-20).replace(/\n/g,"")},"pastInput"),upcomingInput:r(function(){var t=this.match;return t.length<20&&(t+=this._input.substr(0,20-t.length)),(t.substr(0,20)+(t.length>20?"...":"")).replace(/\n/g,"")},"upcomingInput"),showPosition:r(function(){var t=this.pastInput(),e=new Array(t.length+1).join("-");return t+this.upcomingInput()+"\n"+e+"^"},"showPosition"),test_match:r(function(t,e){var i,a,n;if(this.options.backtrack_lexer&&(n={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&&(n.yylloc.range=this.yylloc.range.slice(0))),(a=t[0].match(/(?:\r\n?|\n).*/g))&&(this.yylineno+=a.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:a?a[a.length-1].length-a[a.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+t[0].length},this.yytext+=t[0],this.match+=t[0],this.matches=t,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(t[0].length),this.matched+=t[0],i=this.performAction.call(this,this.yy,this,e,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),i)return i;if(this._backtrack){for(var s in n)this[s]=n[s];return!1}return!1},"test_match"),next:r(function(){if(this.done)return this.EOF;var t,e,i,a;this._input||(this.done=!0),this._more||(this.yytext="",this.match="");for(var n=this._currentRules(),s=0;s<n.length;s++)if((i=this._input.match(this.rules[n[s]]))&&(!e||i[0].length>e[0].length)){if(e=i,a=s,this.options.backtrack_lexer){if(!1!==(t=this.test_match(i,n[s])))return t;if(this._backtrack){e=!1;continue}return!1}if(!this.options.flex)break}return e?!1!==(t=this.test_match(e,n[a]))&&t:""===this._input?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+". Unrecognized text.\n"+this.showPosition(),{text:"",token:null,line:this.yylineno})},"next"),lex:r(function(){var t=this.next();return t||this.lex()},"lex"),begin:r(function(t){this.conditionStack.push(t)},"begin"),popState:r(function(){return this.conditionStack.length-1>0?this.conditionStack.pop():this.conditionStack[0]},"popState"),_currentRules:r(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:r(function(t){return(t=this.conditionStack.length-1-Math.abs(t||0))>=0?this.conditionStack[t]:"INITIAL"},"topState"),pushState:r(function(t){this.begin(t)},"pushState"),stateStackSize:r(function(){return this.conditionStack.length},"stateStackSize"),options:{"case-insensitive":!0},performAction:r(function(t,e,i,a){switch(i){case 0:case 1:case 3:break;case 2:return 55;case 4:return this.begin("title"),35;case 5:return this.popState(),"title_value";case 6:return this.begin("acc_title"),37;case 7:return this.popState(),"acc_title_value";case 8:return this.begin("acc_descr"),39;case 9:return this.popState(),"acc_descr_value";case 10:this.begin("acc_descr_multiline");break;case 11:case 23:case 25:case 31:this.popState();break;case 12:return"acc_descr_multiline_value";case 13:return 48;case 14:return 50;case 15:return 49;case 16:return 51;case 17:return 52;case 18:return 53;case 19:return 54;case 20:return 25;case 21:this.begin("md_string");break;case 22:return"MD_STR";case 24:this.begin("string");break;case 26:return"STR";case 27:this.begin("class_name");break;case 28:return this.popState(),47;case 29:return this.begin("point_start"),44;case 30:return this.begin("point_x"),45;case 32:this.popState(),this.begin("point_y");break;case 33:return this.popState(),46;case 34:return 28;case 35:return 4;case 36:return 15;case 37:return 11;case 38:return 64;case 39:return 10;case 40:case 41:return 65;case 42:return 14;case 43:return 13;case 44:return 67;case 45:return 66;case 46:return 12;case 47:return 8;case 48:return 5;case 49:return 18;case 50:return 56;case 51:return 63;case 52:return 57}},"anonymous"),rules:[/^(?:%%(?!\{)[^\n]*)/i,/^(?:[^\}]%%[^\n]*)/i,/^(?:[\n\r]+)/i,/^(?:%%[^\n]*)/i,/^(?:title\b)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accTitle\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*\{\s*)/i,/^(?:[\}])/i,/^(?:[^\}]*)/i,/^(?: *x-axis *)/i,/^(?: *y-axis *)/i,/^(?: *--+> *)/i,/^(?: *quadrant-1 *)/i,/^(?: *quadrant-2 *)/i,/^(?: *quadrant-3 *)/i,/^(?: *quadrant-4 *)/i,/^(?:classDef\b)/i,/^(?:["][`])/i,/^(?:[^`"]+)/i,/^(?:[`]["])/i,/^(?:["])/i,/^(?:["])/i,/^(?:[^"]*)/i,/^(?::::)/i,/^(?:^\w+)/i,/^(?:\s*:\s*\[\s*)/i,/^(?:(1)|(0(.\d+)?))/i,/^(?:\s*\] *)/i,/^(?:\s*,\s*)/i,/^(?:(1)|(0(.\d+)?))/i,/^(?: *quadrantChart *)/i,/^(?:[A-Za-z]+)/i,/^(?:[^\x00-\x7F]+)/i,/^(?::)/i,/^(?:\+)/i,/^(?:,)/i,/^(?:=)/i,/^(?:=)/i,/^(?:\*)/i,/^(?:#)/i,/^(?:[\_])/i,/^(?:\.)/i,/^(?:&)/i,/^(?:-)/i,/^(?:[0-9]+)/i,/^(?:\s)/i,/^(?:;)/i,/^(?:[!"#$%&'*+,-.`?\\_/])/i,/^(?:$)/i],conditions:{class_name:{rules:[28],inclusive:!1},point_y:{rules:[33],inclusive:!1},point_x:{rules:[32],inclusive:!1},point_start:{rules:[30,31],inclusive:!1},acc_descr_multiline:{rules:[11,12],inclusive:!1},acc_descr:{rules:[9],inclusive:!1},acc_title:{rules:[7],inclusive:!1},title:{rules:[5],inclusive:!1},md_string:{rules:[22,23],inclusive:!1},string:{rules:[25,26],inclusive:!1},INITIAL:{rules:[0,1,2,3,4,6,8,10,13,14,15,16,17,18,19,20,21,24,27,29,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52],inclusive:!0}}}}();function ft(){this.yy={}}return xt.lexer=gt,r(ft,"Parser"),ft.prototype=xt,xt.Parser=ft,new ft}();p.parser=p;var y=p,T=f(),m=class{constructor(){this.classes=new Map,this.config=this.getDefaultConfig(),this.themeConfig=this.getDefaultThemeConfig(),this.data=this.getDefaultData()}static{r(this,"QuadrantBuilder")}getDefaultData(){return{titleText:"",quadrant1Text:"",quadrant2Text:"",quadrant3Text:"",quadrant4Text:"",xAxisLeftText:"",xAxisRightText:"",yAxisBottomText:"",yAxisTopText:"",points:[]}}getDefaultConfig(){return{showXAxis:!0,showYAxis:!0,showTitle:!0,chartHeight:u.quadrantChart?.chartWidth||500,chartWidth:u.quadrantChart?.chartHeight||500,titlePadding:u.quadrantChart?.titlePadding||10,titleFontSize:u.quadrantChart?.titleFontSize||20,quadrantPadding:u.quadrantChart?.quadrantPadding||5,xAxisLabelPadding:u.quadrantChart?.xAxisLabelPadding||5,yAxisLabelPadding:u.quadrantChart?.yAxisLabelPadding||5,xAxisLabelFontSize:u.quadrantChart?.xAxisLabelFontSize||16,yAxisLabelFontSize:u.quadrantChart?.yAxisLabelFontSize||16,quadrantLabelFontSize:u.quadrantChart?.quadrantLabelFontSize||16,quadrantTextTopPadding:u.quadrantChart?.quadrantTextTopPadding||5,pointTextPadding:u.quadrantChart?.pointTextPadding||5,pointLabelFontSize:u.quadrantChart?.pointLabelFontSize||12,pointRadius:u.quadrantChart?.pointRadius||5,xAxisPosition:u.quadrantChart?.xAxisPosition||"top",yAxisPosition:u.quadrantChart?.yAxisPosition||"left",quadrantInternalBorderStrokeWidth:u.quadrantChart?.quadrantInternalBorderStrokeWidth||1,quadrantExternalBorderStrokeWidth:u.quadrantChart?.quadrantExternalBorderStrokeWidth||2}}getDefaultThemeConfig(){return{quadrant1Fill:T.quadrant1Fill,quadrant2Fill:T.quadrant2Fill,quadrant3Fill:T.quadrant3Fill,quadrant4Fill:T.quadrant4Fill,quadrant1TextFill:T.quadrant1TextFill,quadrant2TextFill:T.quadrant2TextFill,quadrant3TextFill:T.quadrant3TextFill,quadrant4TextFill:T.quadrant4TextFill,quadrantPointFill:T.quadrantPointFill,quadrantPointTextFill:T.quadrantPointTextFill,quadrantXAxisTextFill:T.quadrantXAxisTextFill,quadrantYAxisTextFill:T.quadrantYAxisTextFill,quadrantTitleFill:T.quadrantTitleFill,quadrantInternalBorderStrokeFill:T.quadrantInternalBorderStrokeFill,quadrantExternalBorderStrokeFill:T.quadrantExternalBorderStrokeFill}}clear(){this.config=this.getDefaultConfig(),this.themeConfig=this.getDefaultThemeConfig(),this.data=this.getDefaultData(),this.classes=new Map,l.info("clear called")}setData(t){this.data={...this.data,...t}}addPoints(t){this.data.points=[...t,...this.data.points]}addClass(t,e){this.classes.set(t,e)}setConfig(t){l.trace("setConfig called with: ",t),this.config={...this.config,...t}}setThemeConfig(t){l.trace("setThemeConfig called with: ",t),this.themeConfig={...this.themeConfig,...t}}calculateSpace(t,e,i,a){const n=2*this.config.xAxisLabelPadding+this.config.xAxisLabelFontSize,s={top:"top"===t&&e?n:0,bottom:"bottom"===t&&e?n:0},r=2*this.config.yAxisLabelPadding+this.config.yAxisLabelFontSize,o={left:"left"===this.config.yAxisPosition&&i?r:0,right:"right"===this.config.yAxisPosition&&i?r:0},l=this.config.titleFontSize+2*this.config.titlePadding,h={top:a?l:0},c=this.config.quadrantPadding+o.left,d=this.config.quadrantPadding+s.top+h.top,u=this.config.chartWidth-2*this.config.quadrantPadding-o.left-o.right,x=this.config.chartHeight-2*this.config.quadrantPadding-s.top-s.bottom-h.top;return{xAxisSpace:s,yAxisSpace:o,titleSpace:h,quadrantSpace:{quadrantLeft:c,quadrantTop:d,quadrantWidth:u,quadrantHalfWidth:u/2,quadrantHeight:x,quadrantHalfHeight:x/2}}}getAxisLabels(t,e,i,a){const{quadrantSpace:n,titleSpace:s}=a,{quadrantHalfHeight:r,quadrantHeight:o,quadrantLeft:l,quadrantHalfWidth:h,quadrantTop:c,quadrantWidth:d}=n,u=Boolean(this.data.xAxisRightText),x=Boolean(this.data.yAxisTopText),g=[];return this.data.xAxisLeftText&&e&&g.push({text:this.data.xAxisLeftText,fill:this.themeConfig.quadrantXAxisTextFill,x:l+(u?h/2:0),y:"top"===t?this.config.xAxisLabelPadding+s.top:this.config.xAxisLabelPadding+c+o+this.config.quadrantPadding,fontSize:this.config.xAxisLabelFontSize,verticalPos:u?"center":"left",horizontalPos:"top",rotation:0}),this.data.xAxisRightText&&e&&g.push({text:this.data.xAxisRightText,fill:this.themeConfig.quadrantXAxisTextFill,x:l+h+(u?h/2:0),y:"top"===t?this.config.xAxisLabelPadding+s.top:this.config.xAxisLabelPadding+c+o+this.config.quadrantPadding,fontSize:this.config.xAxisLabelFontSize,verticalPos:u?"center":"left",horizontalPos:"top",rotation:0}),this.data.yAxisBottomText&&i&&g.push({text:this.data.yAxisBottomText,fill:this.themeConfig.quadrantYAxisTextFill,x:"left"===this.config.yAxisPosition?this.config.yAxisLabelPadding:this.config.yAxisLabelPadding+l+d+this.config.quadrantPadding,y:c+o-(x?r/2:0),fontSize:this.config.yAxisLabelFontSize,verticalPos:x?"center":"left",horizontalPos:"top",rotation:-90}),this.data.yAxisTopText&&i&&g.push({text:this.data.yAxisTopText,fill:this.themeConfig.quadrantYAxisTextFill,x:"left"===this.config.yAxisPosition?this.config.yAxisLabelPadding:this.config.yAxisLabelPadding+l+d+this.config.quadrantPadding,y:c+r-(x?r/2:0),fontSize:this.config.yAxisLabelFontSize,verticalPos:x?"center":"left",horizontalPos:"top",rotation:-90}),g}getQuadrants(t){const{quadrantSpace:e}=t,{quadrantHalfHeight:i,quadrantLeft:a,quadrantHalfWidth:n,quadrantTop:s}=e,r=[{text:{text:this.data.quadrant1Text,fill:this.themeConfig.quadrant1TextFill,x:0,y:0,fontSize:this.config.quadrantLabelFontSize,verticalPos:"center",horizontalPos:"middle",rotation:0},x:a+n,y:s,width:n,height:i,fill:this.themeConfig.quadrant1Fill},{text:{text:this.data.quadrant2Text,fill:this.themeConfig.quadrant2TextFill,x:0,y:0,fontSize:this.config.quadrantLabelFontSize,verticalPos:"center",horizontalPos:"middle",rotation:0},x:a,y:s,width:n,height:i,fill:this.themeConfig.quadrant2Fill},{text:{text:this.data.quadrant3Text,fill:this.themeConfig.quadrant3TextFill,x:0,y:0,fontSize:this.config.quadrantLabelFontSize,verticalPos:"center",horizontalPos:"middle",rotation:0},x:a,y:s+i,width:n,height:i,fill:this.themeConfig.quadrant3Fill},{text:{text:this.data.quadrant4Text,fill:this.themeConfig.quadrant4TextFill,x:0,y:0,fontSize:this.config.quadrantLabelFontSize,verticalPos:"center",horizontalPos:"middle",rotation:0},x:a+n,y:s+i,width:n,height:i,fill:this.themeConfig.quadrant4Fill}];for(const o of r)o.text.x=o.x+o.width/2,0===this.data.points.length?(o.text.y=o.y+o.height/2,o.text.horizontalPos="middle"):(o.text.y=o.y+this.config.quadrantTextTopPadding,o.text.horizontalPos="top");return r}getQuadrantPoints(t){const{quadrantSpace:e}=t,{quadrantHeight:i,quadrantLeft:a,quadrantTop:n,quadrantWidth:s}=e,r=x().domain([0,1]).range([a,s+a]),o=x().domain([0,1]).range([i+n,n]);return this.data.points.map(t=>{const e=this.classes.get(t.className);e&&(t={...e,...t});return{x:r(t.x),y:o(t.y),fill:t.color??this.themeConfig.quadrantPointFill,radius:t.radius??this.config.pointRadius,text:{text:t.text,fill:this.themeConfig.quadrantPointTextFill,x:r(t.x),y:o(t.y)+this.config.pointTextPadding,verticalPos:"center",horizontalPos:"top",fontSize:this.config.pointLabelFontSize,rotation:0},strokeColor:t.strokeColor??this.themeConfig.quadrantPointFill,strokeWidth:t.strokeWidth??"0px"}})}getBorders(t){const e=this.config.quadrantExternalBorderStrokeWidth/2,{quadrantSpace:i}=t,{quadrantHalfHeight:a,quadrantHeight:n,quadrantLeft:s,quadrantHalfWidth:r,quadrantTop:o,quadrantWidth:l}=i;return[{strokeFill:this.themeConfig.quadrantExternalBorderStrokeFill,strokeWidth:this.config.quadrantExternalBorderStrokeWidth,x1:s-e,y1:o,x2:s+l+e,y2:o},{strokeFill:this.themeConfig.quadrantExternalBorderStrokeFill,strokeWidth:this.config.quadrantExternalBorderStrokeWidth,x1:s+l,y1:o+e,x2:s+l,y2:o+n-e},{strokeFill:this.themeConfig.quadrantExternalBorderStrokeFill,strokeWidth:this.config.quadrantExternalBorderStrokeWidth,x1:s-e,y1:o+n,x2:s+l+e,y2:o+n},{strokeFill:this.themeConfig.quadrantExternalBorderStrokeFill,strokeWidth:this.config.quadrantExternalBorderStrokeWidth,x1:s,y1:o+e,x2:s,y2:o+n-e},{strokeFill:this.themeConfig.quadrantInternalBorderStrokeFill,strokeWidth:this.config.quadrantInternalBorderStrokeWidth,x1:s+r,y1:o+e,x2:s+r,y2:o+n-e},{strokeFill:this.themeConfig.quadrantInternalBorderStrokeFill,strokeWidth:this.config.quadrantInternalBorderStrokeWidth,x1:s+e,y1:o+a,x2:s+l-e,y2:o+a}]}getTitle(t){if(t)return{text:this.data.titleText,fill:this.themeConfig.quadrantTitleFill,fontSize:this.config.titleFontSize,horizontalPos:"top",verticalPos:"center",rotation:0,y:this.config.titlePadding,x:this.config.chartWidth/2}}build(){const t=this.config.showXAxis&&!(!this.data.xAxisLeftText&&!this.data.xAxisRightText),e=this.config.showYAxis&&!(!this.data.yAxisTopText&&!this.data.yAxisBottomText),i=this.config.showTitle&&!!this.data.titleText,a=this.data.points.length>0?"bottom":this.config.xAxisPosition,n=this.calculateSpace(a,t,e,i);return{points:this.getQuadrantPoints(n),quadrants:this.getQuadrants(n),axisLabels:this.getAxisLabels(a,t,e,n),borderLines:this.getBorders(n),title:this.getTitle(i)}}},q=class extends Error{static{r(this,"InvalidStyleError")}constructor(t,e,i){super(`value for ${t} ${e} is invalid, please use a valid ${i}`),this.name="InvalidStyleError"}};function A(t){return!/^#?([\dA-Fa-f]{6}|[\dA-Fa-f]{3})$/.test(t)}function _(t){return!/^\d+$/.test(t)}function b(t){return!/^\d+px$/.test(t)}function S(t){return g(t.trim(),o())}r(A,"validateHexCode"),r(_,"validateNumber"),r(b,"validateSizeInPixels"),r(S,"textSanitizer");var k=new m;function F(t){k.setData({quadrant1Text:S(t.text)})}function P(t){k.setData({quadrant2Text:S(t.text)})}function C(t){k.setData({quadrant3Text:S(t.text)})}function L(t){k.setData({quadrant4Text:S(t.text)})}function v(t){k.setData({xAxisLeftText:S(t.text)})}function E(t){k.setData({xAxisRightText:S(t.text)})}function D(t){k.setData({yAxisTopText:S(t.text)})}function z(t){k.setData({yAxisBottomText:S(t.text)})}function I(t){const e={};for(const i of t){const[t,a]=i.trim().split(/\s*:\s*/);if("radius"===t){if(_(a))throw new q(t,a,"number");e.radius=parseInt(a)}else if("color"===t){if(A(a))throw new q(t,a,"hex code");e.color=a}else if("stroke-color"===t){if(A(a))throw new q(t,a,"hex code");e.strokeColor=a}else{if("stroke-width"!==t)throw new Error(`style named ${t} is not supported.`);if(b(a))throw new q(t,a,"number of pixels (eg. 10px)");e.strokeWidth=a}}return e}function w(t,e,i,a,n){const s=I(n);k.addPoints([{x:i,y:a,text:S(t.text),className:e,...s}])}function N(t,e){k.addClass(t,I(e))}function W(t){k.setConfig({chartWidth:t})}function B(t){k.setConfig({chartHeight:t})}function R(){const t=o(),{themeVariables:e,quadrantChart:a}=t;return a&&k.setConfig(a),k.setThemeConfig({quadrant1Fill:e.quadrant1Fill,quadrant2Fill:e.quadrant2Fill,quadrant3Fill:e.quadrant3Fill,quadrant4Fill:e.quadrant4Fill,quadrant1TextFill:e.quadrant1TextFill,quadrant2TextFill:e.quadrant2TextFill,quadrant3TextFill:e.quadrant3TextFill,quadrant4TextFill:e.quadrant4TextFill,quadrantPointFill:e.quadrantPointFill,quadrantPointTextFill:e.quadrantPointTextFill,quadrantXAxisTextFill:e.quadrantXAxisTextFill,quadrantYAxisTextFill:e.quadrantYAxisTextFill,quadrantExternalBorderStrokeFill:e.quadrantExternalBorderStrokeFill,quadrantInternalBorderStrokeFill:e.quadrantInternalBorderStrokeFill,quadrantTitleFill:e.quadrantTitleFill}),k.setData({titleText:i()}),k.build()}r(F,"setQuadrant1Text"),r(P,"setQuadrant2Text"),r(C,"setQuadrant3Text"),r(L,"setQuadrant4Text"),r(v,"setXAxisLeftText"),r(E,"setXAxisRightText"),r(D,"setYAxisTopText"),r(z,"setYAxisBottomText"),r(I,"parseStyles"),r(w,"addPoint"),r(N,"addClass"),r(W,"setWidth"),r(B,"setHeight"),r(R,"getQuadrantData");var $={parser:y,db:{setWidth:W,setHeight:B,setQuadrant1Text:F,setQuadrant2Text:P,setQuadrant3Text:C,setQuadrant4Text:L,setXAxisLeftText:v,setXAxisRightText:E,setYAxisTopText:D,setYAxisBottomText:z,parseStyles:I,addPoint:w,addClass:N,getQuadrantData:R,clear:r(function(){k.clear(),d()},"clear"),setAccTitle:s,getAccTitle:n,setDiagramTitle:a,getDiagramTitle:i,getAccDescription:e,setAccDescription:t},renderer:{draw:r((t,e,i,a)=>{function n(t){return"top"===t?"hanging":"middle"}function s(t){return"left"===t?"start":"middle"}function d(t){return`translate(${t.x}, ${t.y}) rotate(${t.rotation||0})`}r(n,"getDominantBaseLine"),r(s,"getTextAnchor"),r(d,"getTransformation");const u=o();l.debug("Rendering quadrant chart\n"+t);const x=u.securityLevel;let g;"sandbox"===x&&(g=h("#i"+e));const f=h("sandbox"===x?g.nodes()[0].contentDocument.body:"body").select(`[id="${e}"]`),p=f.append("g").attr("class","main"),y=u.quadrantChart?.chartWidth??500,T=u.quadrantChart?.chartHeight??500;c(f,T,y,u.quadrantChart?.useMaxWidth??!0),f.attr("viewBox","0 0 "+y+" "+T),a.db.setHeight(T),a.db.setWidth(y);const m=a.db.getQuadrantData(),q=p.append("g").attr("class","quadrants"),A=p.append("g").attr("class","border"),_=p.append("g").attr("class","data-points"),b=p.append("g").attr("class","labels"),S=p.append("g").attr("class","title");m.title&&S.append("text").attr("x",0).attr("y",0).attr("fill",m.title.fill).attr("font-size",m.title.fontSize).attr("dominant-baseline",n(m.title.horizontalPos)).attr("text-anchor",s(m.title.verticalPos)).attr("transform",d(m.title)).text(m.title.text),m.borderLines&&A.selectAll("line").data(m.borderLines).enter().append("line").attr("x1",t=>t.x1).attr("y1",t=>t.y1).attr("x2",t=>t.x2).attr("y2",t=>t.y2).style("stroke",t=>t.strokeFill).style("stroke-width",t=>t.strokeWidth);const k=q.selectAll("g.quadrant").data(m.quadrants).enter().append("g").attr("class","quadrant");k.append("rect").attr("x",t=>t.x).attr("y",t=>t.y).attr("width",t=>t.width).attr("height",t=>t.height).attr("fill",t=>t.fill),k.append("text").attr("x",0).attr("y",0).attr("fill",t=>t.text.fill).attr("font-size",t=>t.text.fontSize).attr("dominant-baseline",t=>n(t.text.horizontalPos)).attr("text-anchor",t=>s(t.text.verticalPos)).attr("transform",t=>d(t.text)).text(t=>t.text.text);b.selectAll("g.label").data(m.axisLabels).enter().append("g").attr("class","label").append("text").attr("x",0).attr("y",0).text(t=>t.text).attr("fill",t=>t.fill).attr("font-size",t=>t.fontSize).attr("dominant-baseline",t=>n(t.horizontalPos)).attr("text-anchor",t=>s(t.verticalPos)).attr("transform",t=>d(t));const F=_.selectAll("g.data-point").data(m.points).enter().append("g").attr("class","data-point");F.append("circle").attr("cx",t=>t.x).attr("cy",t=>t.y).attr("r",t=>t.radius).attr("fill",t=>t.fill).attr("stroke",t=>t.strokeColor).attr("stroke-width",t=>t.strokeWidth),F.append("text").attr("x",0).attr("y",0).text(t=>t.text.text).attr("fill",t=>t.text.fill).attr("font-size",t=>t.text.fontSize).attr("dominant-baseline",t=>n(t.text.horizontalPos)).attr("text-anchor",t=>s(t.text.verticalPos)).attr("transform",t=>d(t.text))},"draw")},styles:r(()=>"","styles")};export{$ as diagram};
@@ -0,0 +1 @@
1
+ import{g as e,r,d as a}from"./chunk-2E7WHVMD-TfbC_dmh.js";import{p as t}from"./chunk-JWPE2WC7-BP2iXBhe.js";import{_ as n,l as s}from"./mermaid-T_6Ze_cT.js";import{M as i,c as l}from"./cynefin-EF2NZ3EQ-CR1E3YiZ.js";import"./markdown-S2mWvoE-.js";var o=l().Railroad.parser.LangiumParser,p=n(e=>{switch(e.$type){case"RailroadTerminalExpr":return{type:"terminal",value:e.value};case"RailroadNonTerminalExpr":return{type:"nonterminal",name:e.name};case"RailroadSpecialExpr":return{type:"special",text:e.text};case"RailroadSequenceExpr":{const r=e.elements.map(p);return 1===r.length?r[0]:{type:"sequence",elements:r}}case"RailroadChoiceExpr":{const r=e.alternatives.map(p);return 1===r.length?r[0]:{type:"choice",alternatives:r}}case"RailroadOptionalExpr":return{type:"optional",element:p(e.element)};case"RailroadOneOrMoreExpr":return{type:"repetition",element:p(e.element),min:1,max:1/0};case"RailroadZeroOrMoreExpr":return{type:"repetition",element:p(e.element),min:0,max:1/0};default:throw new Error(`Unsupported railroad expression: ${e.$type}`)}},"transformExpression"),m=n(e=>({name:e.name,definition:p(e.definition)}),"transformRule"),d=n(e=>{t(e,a),e.title&&a.setTitle(e.title),e.rules.map(e=>a.addRule(m(e)))},"populateDb"),u={parser:{parse:n(e=>{a.clear(),s.debug("[Railroad Parser] Starting Langium parse");const r=o.parse(e);if(r.lexerErrors.length>0||r.parserErrors.length>0)throw new i(r);const t=r.value;s.debug("[Railroad Parser] Parsed rules:",t.rules.length),d(t),s.debug("[Railroad Parser] Parse complete")},"parse"),parser:{yy:a}},db:a,renderer:r,styles:e};export{u as diagram};
@@ -0,0 +1 @@
1
+ import{g as e}from"./chunk-XXDRQBXY-Ct0MhvQo.js";import{s as t}from"./chunk-VQ5W62QI-B95zur4F.js";import{_ as s,L as i,b as n,a as r,s as a,g as l,q as o,t as c,c as h,l as u,z as y,B as m,C as d,D as E,I as p,K as R,p as f,r as g,u as _}from"./mermaid-T_6Ze_cT.js";import"./markdown-S2mWvoE-.js";var S=function(){var e=s(function(e,t,s,i){for(s=s||{},i=e.length;i--;s[e[i]]=t);return s},"o"),t=[1,3],i=[1,4],n=[1,5],r=[1,6],a=[5,6,8,9,11,13,21,22,23,24,41,42,43,44,45,46,54,72,74,77,89,90],l=[1,22],o=[2,7],c=[1,26],h=[1,27],u=[1,28],y=[1,29],m=[1,33],d=[1,34],E=[1,35],p=[1,36],R=[1,37],f=[1,38],g=[1,24],_=[1,31],S=[1,32],I=[1,30],b=[1,39],T=[1,40],k=[5,8,9,11,13,21,22,23,24,41,42,43,44,45,46,54,72,74,77,89,90],N=[1,61],q=[89,90],C=[5,8,9,11,13,21,22,23,24,27,29,41,42,43,44,45,46,54,61,63,72,74,75,76,77,80,81,82,83,84,85,86,87,88,89,90],A=[27,29],L=[1,70],$=[1,71],v=[1,72],x=[1,73],O=[1,74],w=[1,75],D=[1,76],M=[1,83],F=[1,80],P=[1,84],V=[1,85],U=[1,86],Y=[1,87],B=[1,88],Q=[1,89],H=[1,90],K=[1,91],j=[1,92],W=[5,8,9,11,13,21,22,23,24,27,41,42,43,44,45,46,54,72,74,75,76,77,80,81,82,83,84,85,86,87,88,89,90],z=[63,64],G=[1,101],X=[5,8,9,11,13,21,22,23,24,41,42,43,44,45,46,54,72,74,76,77,89,90],J=[5,8,9,11,13,21,22,23,24,41,42,43,44,45,46,54,72,74,75,76,77,80,81,82,83,84,85,86,87,88,89,90],Z=[1,110],ee=[1,106],te=[1,107],se=[1,108],ie=[1,109],ne=[1,111],re=[1,116],ae=[1,117],le=[1,114],oe=[1,115],ce={trace:s(function(){},"trace"),yy:{},symbols_:{error:2,start:3,directive:4,NEWLINE:5,RD:6,diagram:7,EOF:8,acc_title:9,acc_title_value:10,acc_descr:11,acc_descr_value:12,acc_descr_multiline_value:13,requirementDef:14,elementDef:15,relationshipDef:16,direction:17,styleStatement:18,classDefStatement:19,classStatement:20,direction_tb:21,direction_bt:22,direction_rl:23,direction_lr:24,requirementType:25,requirementName:26,STRUCT_START:27,requirementBody:28,STYLE_SEPARATOR:29,idList:30,ID:31,COLONSEP:32,id:33,TEXT:34,text:35,RISK:36,riskLevel:37,VERIFYMTHD:38,verifyType:39,STRUCT_STOP:40,REQUIREMENT:41,FUNCTIONAL_REQUIREMENT:42,INTERFACE_REQUIREMENT:43,PERFORMANCE_REQUIREMENT:44,PHYSICAL_REQUIREMENT:45,DESIGN_CONSTRAINT:46,LOW_RISK:47,MED_RISK:48,HIGH_RISK:49,VERIFY_ANALYSIS:50,VERIFY_DEMONSTRATION:51,VERIFY_INSPECTION:52,VERIFY_TEST:53,ELEMENT:54,elementName:55,elementBody:56,TYPE:57,type:58,DOCREF:59,ref:60,END_ARROW_L:61,relationship:62,LINE:63,END_ARROW_R:64,CONTAINS:65,COPIES:66,DERIVES:67,SATISFIES:68,VERIFIES:69,REFINES:70,TRACES:71,CLASSDEF:72,stylesOpt:73,CLASS:74,ALPHA:75,COMMA:76,STYLE:77,style:78,styleComponent:79,NUM:80,COLON:81,UNIT:82,SPACE:83,BRKT:84,PCT:85,MINUS:86,LABEL:87,SEMICOLON:88,unqString:89,qString:90,$accept:0,$end:1},terminals_:{2:"error",5:"NEWLINE",6:"RD",8:"EOF",9:"acc_title",10:"acc_title_value",11:"acc_descr",12:"acc_descr_value",13:"acc_descr_multiline_value",21:"direction_tb",22:"direction_bt",23:"direction_rl",24:"direction_lr",27:"STRUCT_START",29:"STYLE_SEPARATOR",31:"ID",32:"COLONSEP",34:"TEXT",36:"RISK",38:"VERIFYMTHD",40:"STRUCT_STOP",41:"REQUIREMENT",42:"FUNCTIONAL_REQUIREMENT",43:"INTERFACE_REQUIREMENT",44:"PERFORMANCE_REQUIREMENT",45:"PHYSICAL_REQUIREMENT",46:"DESIGN_CONSTRAINT",47:"LOW_RISK",48:"MED_RISK",49:"HIGH_RISK",50:"VERIFY_ANALYSIS",51:"VERIFY_DEMONSTRATION",52:"VERIFY_INSPECTION",53:"VERIFY_TEST",54:"ELEMENT",57:"TYPE",59:"DOCREF",61:"END_ARROW_L",63:"LINE",64:"END_ARROW_R",65:"CONTAINS",66:"COPIES",67:"DERIVES",68:"SATISFIES",69:"VERIFIES",70:"REFINES",71:"TRACES",72:"CLASSDEF",74:"CLASS",75:"ALPHA",76:"COMMA",77:"STYLE",80:"NUM",81:"COLON",82:"UNIT",83:"SPACE",84:"BRKT",85:"PCT",86:"MINUS",87:"LABEL",88:"SEMICOLON",89:"unqString",90:"qString"},productions_:[0,[3,3],[3,2],[3,4],[4,2],[4,2],[4,1],[7,0],[7,2],[7,2],[7,2],[7,2],[7,2],[7,2],[7,2],[7,2],[7,2],[17,1],[17,1],[17,1],[17,1],[14,5],[14,7],[28,5],[28,5],[28,5],[28,5],[28,2],[28,1],[25,1],[25,1],[25,1],[25,1],[25,1],[25,1],[37,1],[37,1],[37,1],[39,1],[39,1],[39,1],[39,1],[15,5],[15,7],[56,5],[56,5],[56,2],[56,1],[16,5],[16,5],[62,1],[62,1],[62,1],[62,1],[62,1],[62,1],[62,1],[19,3],[20,3],[20,3],[30,1],[30,3],[30,1],[30,3],[18,3],[73,1],[73,3],[78,1],[78,2],[79,1],[79,1],[79,1],[79,1],[79,1],[79,1],[79,1],[79,1],[79,1],[79,1],[26,1],[26,1],[33,1],[33,1],[35,1],[35,1],[55,1],[55,1],[58,1],[58,1],[60,1],[60,1]],performAction:s(function(e,t,s,i,n,r,a){var l=r.length-1;switch(n){case 4:this.$=r[l].trim(),i.setAccTitle(this.$);break;case 5:case 6:this.$=r[l].trim(),i.setAccDescription(this.$);break;case 7:this.$=[];break;case 17:i.setDirection("TB");break;case 18:i.setDirection("BT");break;case 19:i.setDirection("RL");break;case 20:i.setDirection("LR");break;case 21:i.addRequirement(r[l-3],r[l-4]);break;case 22:i.addRequirement(r[l-5],r[l-6]),i.setClass([r[l-5]],r[l-3]);break;case 23:i.setNewReqId(r[l-2]);break;case 24:i.setNewReqText(r[l-2]);break;case 25:i.setNewReqRisk(r[l-2]);break;case 26:i.setNewReqVerifyMethod(r[l-2]);break;case 29:this.$=i.RequirementType.REQUIREMENT;break;case 30:this.$=i.RequirementType.FUNCTIONAL_REQUIREMENT;break;case 31:this.$=i.RequirementType.INTERFACE_REQUIREMENT;break;case 32:this.$=i.RequirementType.PERFORMANCE_REQUIREMENT;break;case 33:this.$=i.RequirementType.PHYSICAL_REQUIREMENT;break;case 34:this.$=i.RequirementType.DESIGN_CONSTRAINT;break;case 35:this.$=i.RiskLevel.LOW_RISK;break;case 36:this.$=i.RiskLevel.MED_RISK;break;case 37:this.$=i.RiskLevel.HIGH_RISK;break;case 38:this.$=i.VerifyType.VERIFY_ANALYSIS;break;case 39:this.$=i.VerifyType.VERIFY_DEMONSTRATION;break;case 40:this.$=i.VerifyType.VERIFY_INSPECTION;break;case 41:this.$=i.VerifyType.VERIFY_TEST;break;case 42:i.addElement(r[l-3]);break;case 43:i.addElement(r[l-5]),i.setClass([r[l-5]],r[l-3]);break;case 44:i.setNewElementType(r[l-2]);break;case 45:i.setNewElementDocRef(r[l-2]);break;case 48:i.addRelationship(r[l-2],r[l],r[l-4]);break;case 49:i.addRelationship(r[l-2],r[l-4],r[l]);break;case 50:this.$=i.Relationships.CONTAINS;break;case 51:this.$=i.Relationships.COPIES;break;case 52:this.$=i.Relationships.DERIVES;break;case 53:this.$=i.Relationships.SATISFIES;break;case 54:this.$=i.Relationships.VERIFIES;break;case 55:this.$=i.Relationships.REFINES;break;case 56:this.$=i.Relationships.TRACES;break;case 57:this.$=r[l-2],i.defineClass(r[l-1],r[l]);break;case 58:i.setClass(r[l-1],r[l]);break;case 59:i.setClass([r[l-2]],r[l]);break;case 60:case 62:case 65:this.$=[r[l]];break;case 61:case 63:this.$=r[l-2].concat([r[l]]);break;case 64:this.$=r[l-2],i.setCssStyle(r[l-1],r[l]);break;case 66:r[l-2].push(r[l]),this.$=r[l-2];break;case 68:this.$=r[l-1]+r[l]}},"anonymous"),table:[{3:1,4:2,6:t,9:i,11:n,13:r},{1:[3]},{3:8,4:2,5:[1,7],6:t,9:i,11:n,13:r},{5:[1,9]},{10:[1,10]},{12:[1,11]},e(a,[2,6]),{3:12,4:2,6:t,9:i,11:n,13:r},{1:[2,2]},{4:17,5:l,7:13,8:o,9:i,11:n,13:r,14:14,15:15,16:16,17:18,18:19,19:20,20:21,21:c,22:h,23:u,24:y,25:23,33:25,41:m,42:d,43:E,44:p,45:R,46:f,54:g,72:_,74:S,77:I,89:b,90:T},e(a,[2,4]),e(a,[2,5]),{1:[2,1]},{8:[1,41]},{4:17,5:l,7:42,8:o,9:i,11:n,13:r,14:14,15:15,16:16,17:18,18:19,19:20,20:21,21:c,22:h,23:u,24:y,25:23,33:25,41:m,42:d,43:E,44:p,45:R,46:f,54:g,72:_,74:S,77:I,89:b,90:T},{4:17,5:l,7:43,8:o,9:i,11:n,13:r,14:14,15:15,16:16,17:18,18:19,19:20,20:21,21:c,22:h,23:u,24:y,25:23,33:25,41:m,42:d,43:E,44:p,45:R,46:f,54:g,72:_,74:S,77:I,89:b,90:T},{4:17,5:l,7:44,8:o,9:i,11:n,13:r,14:14,15:15,16:16,17:18,18:19,19:20,20:21,21:c,22:h,23:u,24:y,25:23,33:25,41:m,42:d,43:E,44:p,45:R,46:f,54:g,72:_,74:S,77:I,89:b,90:T},{4:17,5:l,7:45,8:o,9:i,11:n,13:r,14:14,15:15,16:16,17:18,18:19,19:20,20:21,21:c,22:h,23:u,24:y,25:23,33:25,41:m,42:d,43:E,44:p,45:R,46:f,54:g,72:_,74:S,77:I,89:b,90:T},{4:17,5:l,7:46,8:o,9:i,11:n,13:r,14:14,15:15,16:16,17:18,18:19,19:20,20:21,21:c,22:h,23:u,24:y,25:23,33:25,41:m,42:d,43:E,44:p,45:R,46:f,54:g,72:_,74:S,77:I,89:b,90:T},{4:17,5:l,7:47,8:o,9:i,11:n,13:r,14:14,15:15,16:16,17:18,18:19,19:20,20:21,21:c,22:h,23:u,24:y,25:23,33:25,41:m,42:d,43:E,44:p,45:R,46:f,54:g,72:_,74:S,77:I,89:b,90:T},{4:17,5:l,7:48,8:o,9:i,11:n,13:r,14:14,15:15,16:16,17:18,18:19,19:20,20:21,21:c,22:h,23:u,24:y,25:23,33:25,41:m,42:d,43:E,44:p,45:R,46:f,54:g,72:_,74:S,77:I,89:b,90:T},{4:17,5:l,7:49,8:o,9:i,11:n,13:r,14:14,15:15,16:16,17:18,18:19,19:20,20:21,21:c,22:h,23:u,24:y,25:23,33:25,41:m,42:d,43:E,44:p,45:R,46:f,54:g,72:_,74:S,77:I,89:b,90:T},{4:17,5:l,7:50,8:o,9:i,11:n,13:r,14:14,15:15,16:16,17:18,18:19,19:20,20:21,21:c,22:h,23:u,24:y,25:23,33:25,41:m,42:d,43:E,44:p,45:R,46:f,54:g,72:_,74:S,77:I,89:b,90:T},{26:51,89:[1,52],90:[1,53]},{55:54,89:[1,55],90:[1,56]},{29:[1,59],61:[1,57],63:[1,58]},e(k,[2,17]),e(k,[2,18]),e(k,[2,19]),e(k,[2,20]),{30:60,33:62,75:N,89:b,90:T},{30:63,33:62,75:N,89:b,90:T},{30:64,33:62,75:N,89:b,90:T},e(q,[2,29]),e(q,[2,30]),e(q,[2,31]),e(q,[2,32]),e(q,[2,33]),e(q,[2,34]),e(C,[2,81]),e(C,[2,82]),{1:[2,3]},{8:[2,8]},{8:[2,9]},{8:[2,10]},{8:[2,11]},{8:[2,12]},{8:[2,13]},{8:[2,14]},{8:[2,15]},{8:[2,16]},{27:[1,65],29:[1,66]},e(A,[2,79]),e(A,[2,80]),{27:[1,67],29:[1,68]},e(A,[2,85]),e(A,[2,86]),{62:69,65:L,66:$,67:v,68:x,69:O,70:w,71:D},{62:77,65:L,66:$,67:v,68:x,69:O,70:w,71:D},{30:78,33:62,75:N,89:b,90:T},{73:79,75:M,76:F,78:81,79:82,80:P,81:V,82:U,83:Y,84:B,85:Q,86:H,87:K,88:j},e(W,[2,60]),e(W,[2,62]),{73:93,75:M,76:F,78:81,79:82,80:P,81:V,82:U,83:Y,84:B,85:Q,86:H,87:K,88:j},{30:94,33:62,75:N,76:F,89:b,90:T},{5:[1,95]},{30:96,33:62,75:N,89:b,90:T},{5:[1,97]},{30:98,33:62,75:N,89:b,90:T},{63:[1,99]},e(z,[2,50]),e(z,[2,51]),e(z,[2,52]),e(z,[2,53]),e(z,[2,54]),e(z,[2,55]),e(z,[2,56]),{64:[1,100]},e(k,[2,59],{76:F}),e(k,[2,64],{76:G}),{33:103,75:[1,102],89:b,90:T},e(X,[2,65],{79:104,75:M,80:P,81:V,82:U,83:Y,84:B,85:Q,86:H,87:K,88:j}),e(J,[2,67]),e(J,[2,69]),e(J,[2,70]),e(J,[2,71]),e(J,[2,72]),e(J,[2,73]),e(J,[2,74]),e(J,[2,75]),e(J,[2,76]),e(J,[2,77]),e(J,[2,78]),e(k,[2,57],{76:G}),e(k,[2,58],{76:F}),{5:Z,28:105,31:ee,34:te,36:se,38:ie,40:ne},{27:[1,112],76:F},{5:re,40:ae,56:113,57:le,59:oe},{27:[1,118],76:F},{33:119,89:b,90:T},{33:120,89:b,90:T},{75:M,78:121,79:82,80:P,81:V,82:U,83:Y,84:B,85:Q,86:H,87:K,88:j},e(W,[2,61]),e(W,[2,63]),e(J,[2,68]),e(k,[2,21]),{32:[1,122]},{32:[1,123]},{32:[1,124]},{32:[1,125]},{5:Z,28:126,31:ee,34:te,36:se,38:ie,40:ne},e(k,[2,28]),{5:[1,127]},e(k,[2,42]),{32:[1,128]},{32:[1,129]},{5:re,40:ae,56:130,57:le,59:oe},e(k,[2,47]),{5:[1,131]},e(k,[2,48]),e(k,[2,49]),e(X,[2,66],{79:104,75:M,80:P,81:V,82:U,83:Y,84:B,85:Q,86:H,87:K,88:j}),{33:132,89:b,90:T},{35:133,89:[1,134],90:[1,135]},{37:136,47:[1,137],48:[1,138],49:[1,139]},{39:140,50:[1,141],51:[1,142],52:[1,143],53:[1,144]},e(k,[2,27]),{5:Z,28:145,31:ee,34:te,36:se,38:ie,40:ne},{58:146,89:[1,147],90:[1,148]},{60:149,89:[1,150],90:[1,151]},e(k,[2,46]),{5:re,40:ae,56:152,57:le,59:oe},{5:[1,153]},{5:[1,154]},{5:[2,83]},{5:[2,84]},{5:[1,155]},{5:[2,35]},{5:[2,36]},{5:[2,37]},{5:[1,156]},{5:[2,38]},{5:[2,39]},{5:[2,40]},{5:[2,41]},e(k,[2,22]),{5:[1,157]},{5:[2,87]},{5:[2,88]},{5:[1,158]},{5:[2,89]},{5:[2,90]},e(k,[2,43]),{5:Z,28:159,31:ee,34:te,36:se,38:ie,40:ne},{5:Z,28:160,31:ee,34:te,36:se,38:ie,40:ne},{5:Z,28:161,31:ee,34:te,36:se,38:ie,40:ne},{5:Z,28:162,31:ee,34:te,36:se,38:ie,40:ne},{5:re,40:ae,56:163,57:le,59:oe},{5:re,40:ae,56:164,57:le,59:oe},e(k,[2,23]),e(k,[2,24]),e(k,[2,25]),e(k,[2,26]),e(k,[2,44]),e(k,[2,45])],defaultActions:{8:[2,2],12:[2,1],41:[2,3],42:[2,8],43:[2,9],44:[2,10],45:[2,11],46:[2,12],47:[2,13],48:[2,14],49:[2,15],50:[2,16],134:[2,83],135:[2,84],137:[2,35],138:[2,36],139:[2,37],141:[2,38],142:[2,39],143:[2,40],144:[2,41],147:[2,87],148:[2,88],150:[2,89],151:[2,90]},parseError:s(function(e,t){if(!t.recoverable){var s=new Error(e);throw s.hash=t,s}this.trace(e)},"parseError"),parse:s(function(e){var t=this,i=[0],n=[],r=[null],a=[],l=this.table,o="",c=0,h=0,u=a.slice.call(arguments,1),y=Object.create(this.lexer),m={yy:{}};for(var d in this.yy)Object.prototype.hasOwnProperty.call(this.yy,d)&&(m.yy[d]=this.yy[d]);y.setInput(e,m.yy),m.yy.lexer=y,m.yy.parser=this,void 0===y.yylloc&&(y.yylloc={});var E=y.yylloc;a.push(E);var p=y.options&&y.options.ranges;function R(){var e;return"number"!=typeof(e=n.pop()||y.lex()||1)&&(e instanceof Array&&(e=(n=e).pop()),e=t.symbols_[e]||e),e}"function"==typeof m.yy.parseError?this.parseError=m.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError,s(function(e){i.length=i.length-2*e,r.length=r.length-e,a.length=a.length-e},"popStack"),s(R,"lex");for(var f,g,_,S,I,b,T,k,N={};;){if(g=i[i.length-1],this.defaultActions[g]?_=this.defaultActions[g]:(null==f&&(f=R()),_=l[g]&&l[g][f]),void 0===_||!_.length||!_[0]){var q="";for(I in k=[],l[g])this.terminals_[I]&&I>2&&k.push("'"+this.terminals_[I]+"'");q=y.showPosition?"Parse error on line "+(c+1)+":\n"+y.showPosition()+"\nExpecting "+k.join(", ")+", got '"+(this.terminals_[f]||f)+"'":"Parse error on line "+(c+1)+": Unexpected "+(1==f?"end of input":"'"+(this.terminals_[f]||f)+"'"),this.parseError(q,{text:y.match,token:this.terminals_[f]||f,line:y.yylineno,loc:E,expected:k})}if(_[0]instanceof Array&&_.length>1)throw new Error("Parse Error: multiple actions possible at state: "+g+", token: "+f);switch(_[0]){case 1:i.push(f),r.push(y.yytext),a.push(y.yylloc),i.push(_[1]),f=null,h=y.yyleng,o=y.yytext,c=y.yylineno,E=y.yylloc;break;case 2:if(b=this.productions_[_[1]][1],N.$=r[r.length-b],N._$={first_line:a[a.length-(b||1)].first_line,last_line:a[a.length-1].last_line,first_column:a[a.length-(b||1)].first_column,last_column:a[a.length-1].last_column},p&&(N._$.range=[a[a.length-(b||1)].range[0],a[a.length-1].range[1]]),void 0!==(S=this.performAction.apply(N,[o,h,c,m.yy,_[1],r,a].concat(u))))return S;b&&(i=i.slice(0,-1*b*2),r=r.slice(0,-1*b),a=a.slice(0,-1*b)),i.push(this.productions_[_[1]][0]),r.push(N.$),a.push(N._$),T=l[i[i.length-2]][i[i.length-1]],i.push(T);break;case 3:return!0}}return!0},"parse")},he=function(){return{EOF:1,parseError:s(function(e,t){if(!this.yy.parser)throw new Error(e);this.yy.parser.parseError(e,t)},"parseError"),setInput:s(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:s(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:s(function(e){var t=e.length,s=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 i=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),s.length-1&&(this.yylineno-=s.length-1);var n=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:s?(s.length===i.length?this.yylloc.first_column:0)+i[i.length-s.length].length-s[0].length:this.yylloc.first_column-t},this.options.ranges&&(this.yylloc.range=[n[0],n[0]+this.yyleng-t]),this.yyleng=this.yytext.length,this},"unput"),more:s(function(){return this._more=!0,this},"more"),reject:s(function(){return this.options.backtrack_lexer?(this._backtrack=!0,this):this.parseError("Lexical error on line "+(this.yylineno+1)+". You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true).\n"+this.showPosition(),{text:"",token:null,line:this.yylineno})},"reject"),less:s(function(e){this.unput(this.match.slice(e))},"less"),pastInput:s(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:s(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:s(function(){var e=this.pastInput(),t=new Array(e.length+1).join("-");return e+this.upcomingInput()+"\n"+t+"^"},"showPosition"),test_match:s(function(e,t){var s,i,n;if(this.options.backtrack_lexer&&(n={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&&(n.yylloc.range=this.yylloc.range.slice(0))),(i=e[0].match(/(?:\r\n?|\n).*/g))&&(this.yylineno+=i.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:i?i[i.length-1].length-i[i.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],s=this.performAction.call(this,this.yy,this,t,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),s)return s;if(this._backtrack){for(var r in n)this[r]=n[r];return!1}return!1},"test_match"),next:s(function(){if(this.done)return this.EOF;var e,t,s,i;this._input||(this.done=!0),this._more||(this.yytext="",this.match="");for(var n=this._currentRules(),r=0;r<n.length;r++)if((s=this._input.match(this.rules[n[r]]))&&(!t||s[0].length>t[0].length)){if(t=s,i=r,this.options.backtrack_lexer){if(!1!==(e=this.test_match(s,n[r])))return e;if(this._backtrack){t=!1;continue}return!1}if(!this.options.flex)break}return t?!1!==(e=this.test_match(t,n[i]))&&e:""===this._input?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+". Unrecognized text.\n"+this.showPosition(),{text:"",token:null,line:this.yylineno})},"next"),lex:s(function(){var e=this.next();return e||this.lex()},"lex"),begin:s(function(e){this.conditionStack.push(e)},"begin"),popState:s(function(){return this.conditionStack.length-1>0?this.conditionStack.pop():this.conditionStack[0]},"popState"),_currentRules:s(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:s(function(e){return(e=this.conditionStack.length-1-Math.abs(e||0))>=0?this.conditionStack[e]:"INITIAL"},"topState"),pushState:s(function(e){this.begin(e)},"pushState"),stateStackSize:s(function(){return this.conditionStack.length},"stateStackSize"),options:{"case-insensitive":!0},performAction:s(function(e,t,s,i){switch(s){case 0:return"title";case 1:return this.begin("acc_title"),9;case 2:return this.popState(),"acc_title_value";case 3:return this.begin("acc_descr"),11;case 4:return this.popState(),"acc_descr_value";case 5:this.begin("acc_descr_multiline");break;case 6:case 58:case 65:this.popState();break;case 7:return"acc_descr_multiline_value";case 8:return 21;case 9:return 22;case 10:return 23;case 11:return 24;case 12:return 5;case 13:case 14:case 15:case 56:break;case 16:return 8;case 17:return 6;case 18:return 27;case 19:return 40;case 20:return 29;case 21:return 32;case 22:return 31;case 23:return 34;case 24:return 36;case 25:return 38;case 26:return 41;case 27:return 42;case 28:return 43;case 29:return 44;case 30:return 45;case 31:return 46;case 32:return 47;case 33:return 48;case 34:return 49;case 35:return 50;case 36:return 51;case 37:return 52;case 38:return 53;case 39:return 54;case 40:return 65;case 41:return 66;case 42:return 67;case 43:return 68;case 44:return 69;case 45:return 70;case 46:return 71;case 47:return 57;case 48:return 59;case 49:return this.begin("style"),77;case 50:case 68:return 75;case 51:return 81;case 52:return 88;case 53:return"PERCENT";case 54:return 86;case 55:return 84;case 57:case 64:this.begin("string");break;case 59:return this.begin("style"),72;case 60:return this.begin("style"),74;case 61:return 61;case 62:return 64;case 63:return 63;case 66:return"qString";case 67:return t.yytext=t.yytext.trim(),89;case 69:return 80;case 70:return 76}},"anonymous"),rules:[/^(?:title\s[^#\n;]+)/i,/^(?: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,/^(?:(\r?\n)+)/i,/^(?:\s+)/i,/^(?:#[^\n]*)/i,/^(?:%[^\n]*)/i,/^(?:$)/i,/^(?:requirementDiagram\b)/i,/^(?:\{)/i,/^(?:\})/i,/^(?::{3})/i,/^(?::)/i,/^(?:id\b)/i,/^(?:text\b)/i,/^(?:risk\b)/i,/^(?:verifyMethod\b)/i,/^(?:requirement\b)/i,/^(?:functionalRequirement\b)/i,/^(?:interfaceRequirement\b)/i,/^(?:performanceRequirement\b)/i,/^(?:physicalRequirement\b)/i,/^(?:designConstraint\b)/i,/^(?:low\b)/i,/^(?:medium\b)/i,/^(?:high\b)/i,/^(?:analysis\b)/i,/^(?:demonstration\b)/i,/^(?:inspection\b)/i,/^(?:test\b)/i,/^(?:element\b)/i,/^(?:contains\b)/i,/^(?:copies\b)/i,/^(?:derives\b)/i,/^(?:satisfies\b)/i,/^(?:verifies\b)/i,/^(?:refines\b)/i,/^(?:traces\b)/i,/^(?:type\b)/i,/^(?:docref\b)/i,/^(?:style\b)/i,/^(?:\w+)/i,/^(?::)/i,/^(?:;)/i,/^(?:%)/i,/^(?:-)/i,/^(?:#)/i,/^(?: )/i,/^(?:["])/i,/^(?:\n)/i,/^(?:classDef\b)/i,/^(?:class\b)/i,/^(?:<-)/i,/^(?:->)/i,/^(?:-)/i,/^(?:["])/i,/^(?:["])/i,/^(?:[^"]*)/i,/^(?:[\w][^:,\r\n\{\<\>\-\=]*)/i,/^(?:\w+)/i,/^(?:[0-9]+)/i,/^(?:,)/i],conditions:{acc_descr_multiline:{rules:[6,7,68,69,70],inclusive:!1},acc_descr:{rules:[4,68,69,70],inclusive:!1},acc_title:{rules:[2,68,69,70],inclusive:!1},style:{rules:[50,51,52,53,54,55,56,57,58,68,69,70],inclusive:!1},unqString:{rules:[68,69,70],inclusive:!1},token:{rules:[68,69,70],inclusive:!1},string:{rules:[65,66,68,69,70],inclusive:!1},INITIAL:{rules:[0,1,3,5,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,59,60,61,62,63,64,67,68,69,70],inclusive:!0}}}}();function ue(){this.yy={}}return ce.lexer=he,s(ue,"Parser"),ue.prototype=ce,ce.Parser=ue,new ue}();S.parser=S;var I=S,b=class{constructor(){this.relations=[],this.latestRequirement=this.getInitialRequirement(),this.requirements=new Map,this.latestElement=this.getInitialElement(),this.elements=new Map,this.classes=new Map,this.direction="TB",this.RequirementType={REQUIREMENT:"Requirement",FUNCTIONAL_REQUIREMENT:"Functional Requirement",INTERFACE_REQUIREMENT:"Interface Requirement",PERFORMANCE_REQUIREMENT:"Performance Requirement",PHYSICAL_REQUIREMENT:"Physical Requirement",DESIGN_CONSTRAINT:"Design Constraint"},this.RiskLevel={LOW_RISK:"Low",MED_RISK:"Medium",HIGH_RISK:"High"},this.VerifyType={VERIFY_ANALYSIS:"Analysis",VERIFY_DEMONSTRATION:"Demonstration",VERIFY_INSPECTION:"Inspection",VERIFY_TEST:"Test"},this.Relationships={CONTAINS:"contains",COPIES:"copies",DERIVES:"derives",SATISFIES:"satisfies",VERIFIES:"verifies",REFINES:"refines",TRACES:"traces"},this.setAccTitle=n,this.getAccTitle=r,this.setAccDescription=a,this.getAccDescription=l,this.setDiagramTitle=o,this.getDiagramTitle=c,this.getConfig=s(()=>h().requirement,"getConfig"),this.clear(),this.setDirection=this.setDirection.bind(this),this.addRequirement=this.addRequirement.bind(this),this.setNewReqId=this.setNewReqId.bind(this),this.setNewReqRisk=this.setNewReqRisk.bind(this),this.setNewReqText=this.setNewReqText.bind(this),this.setNewReqVerifyMethod=this.setNewReqVerifyMethod.bind(this),this.addElement=this.addElement.bind(this),this.setNewElementType=this.setNewElementType.bind(this),this.setNewElementDocRef=this.setNewElementDocRef.bind(this),this.addRelationship=this.addRelationship.bind(this),this.setCssStyle=this.setCssStyle.bind(this),this.setClass=this.setClass.bind(this),this.defineClass=this.defineClass.bind(this),this.setAccTitle=this.setAccTitle.bind(this),this.setAccDescription=this.setAccDescription.bind(this)}static{s(this,"RequirementDB")}getDirection(){return this.direction}setDirection(e){this.direction=e}resetLatestRequirement(){this.latestRequirement=this.getInitialRequirement()}resetLatestElement(){this.latestElement=this.getInitialElement()}getInitialRequirement(){return{requirementId:"",text:"",risk:"",verifyMethod:"",name:"",type:"",cssStyles:[],classes:["default"]}}getInitialElement(){return{name:"",type:"",docRef:"",cssStyles:[],classes:["default"]}}addRequirement(e,t){return this.requirements.has(e)||this.requirements.set(e,{name:e,type:t,requirementId:this.latestRequirement.requirementId,text:this.latestRequirement.text,risk:this.latestRequirement.risk,verifyMethod:this.latestRequirement.verifyMethod,cssStyles:[],classes:["default"]}),this.resetLatestRequirement(),this.requirements.get(e)}getRequirements(){return this.requirements}setNewReqId(e){void 0!==this.latestRequirement&&(this.latestRequirement.requirementId=e)}setNewReqText(e){void 0!==this.latestRequirement&&(this.latestRequirement.text=e)}setNewReqRisk(e){void 0!==this.latestRequirement&&(this.latestRequirement.risk=e)}setNewReqVerifyMethod(e){void 0!==this.latestRequirement&&(this.latestRequirement.verifyMethod=e)}addElement(e){return this.elements.has(e)||(this.elements.set(e,{name:e,type:this.latestElement.type,docRef:this.latestElement.docRef,cssStyles:[],classes:["default"]}),u.info("Added new element: ",e)),this.resetLatestElement(),this.elements.get(e)}getElements(){return this.elements}setNewElementType(e){void 0!==this.latestElement&&(this.latestElement.type=e)}setNewElementDocRef(e){void 0!==this.latestElement&&(this.latestElement.docRef=e)}addRelationship(e,t,s){this.relations.push({type:e,src:t,dst:s})}getRelationships(){return this.relations}clear(){this.relations=[],this.resetLatestRequirement(),this.requirements=new Map,this.resetLatestElement(),this.elements=new Map,this.classes=new Map,y()}setCssStyle(e,t){for(const s of e){const e=this.requirements.get(s)??this.elements.get(s);if(!t||!e)return;for(const s of t)s.includes(",")?e.cssStyles.push(...s.split(",")):e.cssStyles.push(s)}}setClass(e,t){for(const s of e){const e=this.requirements.get(s)??this.elements.get(s);if(e)for(const s of t){e.classes.push(s);const t=this.classes.get(s)?.styles;t&&e.cssStyles.push(...t)}}}defineClass(e,t){for(const s of e){let e=this.classes.get(s);void 0===e&&(e={id:s,styles:[],textStyles:[]},this.classes.set(s,e)),t&&t.forEach(function(t){if(/color/.exec(t)){const s=t.replace("fill","bgFill");e.textStyles.push(s)}e.styles.push(t)}),this.requirements.forEach(e=>{e.classes.includes(s)&&e.cssStyles.push(...t.flatMap(e=>e.split(",")))}),this.elements.forEach(e=>{e.classes.includes(s)&&e.cssStyles.push(...t.flatMap(e=>e.split(",")))})}}getClasses(){return this.classes}getData(){const e=h(),t=[],s=[];for(const n of this.requirements.values()){const s=n;s.id=n.name,s.cssStyles=n.cssStyles,s.cssClasses=n.classes.join(" "),s.shape="requirementBox",s.look=e.look,s.colorIndex=t.length,t.push(s)}for(const n of this.elements.values()){const s=n;s.shape="requirementBox",s.look=e.look,s.id=n.name,s.cssStyles=n.cssStyles,s.cssClasses=n.classes.join(" "),s.colorIndex=t.length,t.push(s)}let i=0;for(const n of this.relations){const t=n.type===this.Relationships.CONTAINS,r={id:`${n.src}-${n.dst}-${i++}`,start:this.requirements.get(n.src)?.name??this.elements.get(n.src)?.name,end:this.requirements.get(n.dst)?.name??this.elements.get(n.dst)?.name,label:`&lt;&lt;${n.type}&gt;&gt;`,classes:"relationshipLine",style:["fill:none",t?"":"stroke-dasharray: 10,7"],labelpos:"c",thickness:"normal",type:"normal",pattern:t?"normal":"dashed",arrowTypeStart:t?"requirement_contains":"",arrowTypeEnd:t?"":"requirement_arrow",look:e.look,labelType:"markdown"};s.push(r)}return{nodes:t,edges:s,other:{},config:e,direction:this.getDirection()}}},T=s(()=>{const e=i(),{theme:t,themeVariables:s}=e,{bkgColorArray:n,borderColorArray:r}=s;if(!m(t,r))return"";const a=d(e.look);let l="";const o=E(n);for(let i=0;i<p(r);i++){const e=r[i],t=o?`fill: ${n[i%n.length]};`:"";l+=`\n\n [data-look="${a}"][data-color-id="color-${i}"].node path {\n stroke: ${e};\n ${t}\n }\n\n [data-look="${a}"][data-color-id="color-${i}"].node rect {\n stroke: ${e};\n ${t}\n }\n `}return l},"genColor"),k=s(e=>{const t=i(),{look:s,themeVariables:n}=t,{requirementEdgeLabelBackground:r}=n;return`\n ${T()}\n marker {\n fill: ${e.relationColor};\n stroke: ${e.relationColor};\n }\n\n marker.cross {\n stroke: ${e.lineColor};\n }\n\n svg {\n font-family: ${e.fontFamily};\n font-size: ${e.fontSize};\n }\n\n .reqBox {\n fill: ${e.requirementBackground};\n fill-opacity: 1.0;\n stroke: ${e.requirementBorderColor};\n stroke-width: ${e.requirementBorderSize};\n }\n \n .reqTitle, .reqLabel{\n fill: ${e.requirementTextColor};\n }\n .reqLabelBox {\n fill: ${e.relationLabelBackground};\n fill-opacity: 1.0;\n }\n\n .req-title-line {\n stroke: ${e.requirementBorderColor};\n stroke-width: ${e.requirementBorderSize};\n }\n .relationshipLine {\n stroke: ${e.relationColor};\n stroke-width: ${"neo"===s?e.strokeWidth:"1px"};\n }\n .relationshipLabel {\n fill: ${e.relationLabelColor};\n }\n .edgeLabel {\n background-color: ${e.edgeLabelBackground};\n }\n .edgeLabel .label rect {\n fill: ${e.edgeLabelBackground};\n }\n .edgeLabel .label text {\n fill: ${e.relationLabelColor};\n }\n .divider {\n stroke: ${e.nodeBorder};\n stroke-width: 1;\n }\n .label {\n font-family: ${e.fontFamily};\n color: ${e.nodeTextColor||e.textColor};\n }\n .label text,span {\n fill: ${e.nodeTextColor||e.textColor};\n color: ${e.nodeTextColor||e.textColor};\n }\n .labelBkg {\n background-color: ${r??e.edgeLabelBackground};\n }\n\n`},"getStyles"),N={};R(N,{draw:()=>q});var q=s(async function(s,i,n,r){u.info("REF0:"),u.info("Drawing requirement diagram (unified)",i);const{securityLevel:a,state:l,layout:o,look:c}=h(),y=r.db.getData(),m=e(i,a);y.type=r.type,y.layoutAlgorithm=f(o),y.nodeSpacing=l?.nodeSpacing??50,y.rankSpacing=l?.rankSpacing??50,y.markers="neo"===c?["requirement_contains_neo","requirement_arrow_neo"]:["requirement_contains","requirement_arrow"],y.diagramId=i,await g(y,m);_.insertTitle(m,"requirementDiagramTitleText",l?.titleTopMargin??25,r.db.getDiagramTitle()),t(m,8,"requirementDiagram",l?.useMaxWidth??!0)},"draw"),C={parser:I,get db(){return new b},renderer:N,styles:k};export{C as diagram};
@@ -0,0 +1 @@
1
+ import{q as t,t as n,s as e,g as i,b as s,a as r,_ as o,c as a,A as l,k as c,T as h,ba as u,ab as f,z as y,m as d}from"./mermaid-T_6Ze_cT.js";import"./markdown-S2mWvoE-.js";function g(t,n){let e;if(void 0===n)for(const i of t)null!=i&&(e<i||void 0===e&&i>=i)&&(e=i);else{let i=-1;for(let s of t)null!=(s=n(s,++i,t))&&(e<s||void 0===e&&s>=s)&&(e=s)}return e}function p(t,n){let e;if(void 0===n)for(const i of t)null!=i&&(e>i||void 0===e&&i>=i)&&(e=i);else{let i=-1;for(let s of t)null!=(s=n(s,++i,t))&&(e>s||void 0===e&&s>=s)&&(e=s)}return e}function _(t,n){let e=0;if(void 0===n)for(let i of t)(i=+i)&&(e+=i);else{let i=-1;for(let s of t)(s=+n(s,++i,t))&&(e+=s)}return e}function k(t){return t.target.depth}function x(t,n){return t.sourceLinks.length?t.depth:n-1}function m(t){return function(){return t}}function b(t,n){return w(t.source,n.source)||t.index-n.index}function v(t,n){return w(t.target,n.target)||t.index-n.index}function w(t,n){return t.y0-n.y0}function S(t){return t.value}function L(t){return t.index}function E(t){return t.nodes}function A(t){return t.links}function M(t,n){const e=t.get(n);if(!e)throw new Error("missing: "+n);return e}function I({nodes:t}){for(const n of t){let t=n.y0,e=t;for(const i of n.sourceLinks)i.y0=t+i.width/2,t+=i.width;for(const i of n.targetLinks)i.y1=e+i.width/2,e+=i.width}}function T(){let t,n,e,i=0,s=0,r=1,o=1,a=24,l=8,c=L,h=x,u=E,f=A,y=6;function d(){const d={nodes:u.apply(null,arguments),links:f.apply(null,arguments)};return function({nodes:t,links:n}){for(const[e,s]of t.entries())s.index=e,s.sourceLinks=[],s.targetLinks=[];const i=new Map(t.map((n,e)=>[c(n,e,t),n]));for(const[e,s]of n.entries()){s.index=e;let{source:t,target:n}=s;"object"!=typeof t&&(t=s.source=M(i,t)),"object"!=typeof n&&(n=s.target=M(i,n)),t.sourceLinks.push(s),n.targetLinks.push(s)}if(null!=e)for(const{sourceLinks:s,targetLinks:r}of t)s.sort(e),r.sort(e)}(d),function({nodes:t}){for(const n of t)n.value=void 0===n.fixedValue?Math.max(_(n.sourceLinks,S),_(n.targetLinks,S)):n.fixedValue}(d),function({nodes:t}){const n=t.length;let e=new Set(t),i=new Set,s=0;for(;e.size;){for(const t of e){t.depth=s;for(const{target:n}of t.sourceLinks)i.add(n)}if(++s>n)throw new Error("circular link");e=i,i=new Set}}(d),function({nodes:t}){const n=t.length;let e=new Set(t),i=new Set,s=0;for(;e.size;){for(const t of e){t.height=s;for(const{source:n}of t.targetLinks)i.add(n)}if(++s>n)throw new Error("circular link");e=i,i=new Set}}(d),function(e){const c=function({nodes:t}){const e=g(t,t=>t.depth)+1,s=(r-i-a)/(e-1),o=new Array(e);for(const n of t){const t=Math.max(0,Math.min(e-1,Math.floor(h.call(null,n,e))));n.layer=t,n.x0=i+t*s,n.x1=n.x0+a,o[t]?o[t].push(n):o[t]=[n]}if(n)for(const i of o)i.sort(n);return o}(e);t=Math.min(l,(o-s)/(g(c,t=>t.length)-1)),function(n){const e=p(n,n=>(o-s-(n.length-1)*t)/_(n,S));for(const i of n){let n=s;for(const s of i){s.y0=n,s.y1=n+s.value*e,n=s.y1+t;for(const t of s.sourceLinks)t.width=t.value*e}n=(o-n+t)/(i.length+1);for(let t=0;t<i.length;++t){const e=i[t];e.y0+=n*(t+1),e.y1+=n*(t+1)}O(i)}}(c);for(let t=0;t<y;++t){const n=Math.pow(.99,t),e=Math.max(1-n,(t+1)/y);T(c,n,e),k(c,n,e)}}(d),I(d),d}function k(t,e,i){for(let s=1,r=t.length;s<r;++s){const r=t[s];for(const t of r){let n=0,i=0;for(const{source:e,value:r}of t.targetLinks){let s=r*(t.layer-e.layer);n+=D(e,t)*s,i+=s}if(!(i>0))continue;let s=(n/i-t.y0)*e;t.y0+=s,t.y1+=s,$(t)}void 0===n&&r.sort(w),P(r,i)}}function T(t,e,i){for(let s=t.length-2;s>=0;--s){const r=t[s];for(const t of r){let n=0,i=0;for(const{target:e,value:r}of t.sourceLinks){let s=r*(e.layer-t.layer);n+=j(t,e)*s,i+=s}if(!(i>0))continue;let s=(n/i-t.y0)*e;t.y0+=s,t.y1+=s,$(t)}void 0===n&&r.sort(w),P(r,i)}}function P(n,e){const i=n.length>>1,r=n[i];C(n,r.y0-t,i-1,e),N(n,r.y1+t,i+1,e),C(n,o,n.length-1,e),N(n,s,0,e)}function N(n,e,i,s){for(;i<n.length;++i){const r=n[i],o=(e-r.y0)*s;o>1e-6&&(r.y0+=o,r.y1+=o),e=r.y1+t}}function C(n,e,i,s){for(;i>=0;--i){const r=n[i],o=(r.y1-e)*s;o>1e-6&&(r.y0-=o,r.y1-=o),e=r.y0-t}}function $({sourceLinks:t,targetLinks:n}){if(void 0===e){for(const{source:{sourceLinks:t}}of n)t.sort(v);for(const{target:{targetLinks:n}}of t)n.sort(b)}}function O(t){if(void 0===e)for(const{sourceLinks:n,targetLinks:e}of t)n.sort(v),e.sort(b)}function D(n,e){let i=n.y0-(n.sourceLinks.length-1)*t/2;for(const{target:s,width:r}of n.sourceLinks){if(s===e)break;i+=r+t}for(const{source:t,width:s}of e.targetLinks){if(t===n)break;i-=s}return i}function j(n,e){let i=e.y0-(e.targetLinks.length-1)*t/2;for(const{source:s,width:r}of e.targetLinks){if(s===n)break;i+=r+t}for(const{target:t,width:s}of n.sourceLinks){if(t===e)break;i-=s}return i}return d.update=function(t){return I(t),t},d.nodeId=function(t){return arguments.length?(c="function"==typeof t?t:m(t),d):c},d.nodeAlign=function(t){return arguments.length?(h="function"==typeof t?t:m(t),d):h},d.nodeSort=function(t){return arguments.length?(n=t,d):n},d.nodeWidth=function(t){return arguments.length?(a=+t,d):a},d.nodePadding=function(n){return arguments.length?(l=t=+n,d):l},d.nodes=function(t){return arguments.length?(u="function"==typeof t?t:m(t),d):u},d.links=function(t){return arguments.length?(f="function"==typeof t?t:m(t),d):f},d.linkSort=function(t){return arguments.length?(e=t,d):e},d.size=function(t){return arguments.length?(i=s=0,r=+t[0],o=+t[1],d):[r-i,o-s]},d.extent=function(t){return arguments.length?(i=+t[0][0],r=+t[1][0],s=+t[0][1],o=+t[1][1],d):[[i,s],[r,o]]},d.iterations=function(t){return arguments.length?(y=+t,d):y},d}var P=Math.PI,N=2*P,C=1e-6,$=N-C;function O(){this._x0=this._y0=this._x1=this._y1=null,this._=""}function D(){return new O}function j(t){return function(){return t}}function z(t){return t[0]}function F(t){return t[1]}O.prototype=D.prototype={constructor:O,moveTo:function(t,n){this._+="M"+(this._x0=this._x1=+t)+","+(this._y0=this._y1=+n)},closePath:function(){null!==this._x1&&(this._x1=this._x0,this._y1=this._y0,this._+="Z")},lineTo:function(t,n){this._+="L"+(this._x1=+t)+","+(this._y1=+n)},quadraticCurveTo:function(t,n,e,i){this._+="Q"+ +t+","+ +n+","+(this._x1=+e)+","+(this._y1=+i)},bezierCurveTo:function(t,n,e,i,s,r){this._+="C"+ +t+","+ +n+","+ +e+","+ +i+","+(this._x1=+s)+","+(this._y1=+r)},arcTo:function(t,n,e,i,s){t=+t,n=+n,e=+e,i=+i,s=+s;var r=this._x1,o=this._y1,a=e-t,l=i-n,c=r-t,h=o-n,u=c*c+h*h;if(s<0)throw new Error("negative radius: "+s);if(null===this._x1)this._+="M"+(this._x1=t)+","+(this._y1=n);else if(u>C)if(Math.abs(h*a-l*c)>C&&s){var f=e-r,y=i-o,d=a*a+l*l,g=f*f+y*y,p=Math.sqrt(d),_=Math.sqrt(u),k=s*Math.tan((P-Math.acos((d+u-g)/(2*p*_)))/2),x=k/_,m=k/p;Math.abs(x-1)>C&&(this._+="L"+(t+x*c)+","+(n+x*h)),this._+="A"+s+","+s+",0,0,"+ +(h*f>c*y)+","+(this._x1=t+m*a)+","+(this._y1=n+m*l)}else this._+="L"+(this._x1=t)+","+(this._y1=n);else;},arc:function(t,n,e,i,s,r){t=+t,n=+n,r=!!r;var o=(e=+e)*Math.cos(i),a=e*Math.sin(i),l=t+o,c=n+a,h=1^r,u=r?i-s:s-i;if(e<0)throw new Error("negative radius: "+e);null===this._x1?this._+="M"+l+","+c:(Math.abs(this._x1-l)>C||Math.abs(this._y1-c)>C)&&(this._+="L"+l+","+c),e&&(u<0&&(u=u%N+N),u>$?this._+="A"+e+","+e+",0,1,"+h+","+(t-o)+","+(n-a)+"A"+e+","+e+",0,1,"+h+","+(this._x1=l)+","+(this._y1=c):u>C&&(this._+="A"+e+","+e+",0,"+ +(u>=P)+","+h+","+(this._x1=t+e*Math.cos(s))+","+(this._y1=n+e*Math.sin(s))))},rect:function(t,n,e,i){this._+="M"+(this._x0=this._x1=+t)+","+(this._y0=this._y1=+n)+"h"+ +e+"v"+ +i+"h"+-e+"Z"},toString:function(){return this._}};var W=Array.prototype.slice;function U(t){return t.source}function G(t){return t.target}function q(t,n,e,i,s){t.moveTo(n,e),t.bezierCurveTo(n=(n+i)/2,e,n,s,i,s)}function V(){return function(t){var n=U,e=G,i=z,s=F,r=null;function o(){var o,a=W.call(arguments),l=n.apply(this,a),c=e.apply(this,a);if(r||(r=o=D()),t(r,+i.apply(this,(a[0]=l,a)),+s.apply(this,a),+i.apply(this,(a[0]=c,a)),+s.apply(this,a)),o)return r=null,o+""||null}return o.source=function(t){return arguments.length?(n=t,o):n},o.target=function(t){return arguments.length?(e=t,o):e},o.x=function(t){return arguments.length?(i="function"==typeof t?t:j(+t),o):i},o.y=function(t){return arguments.length?(s="function"==typeof t?t:j(+t),o):s},o.context=function(t){return arguments.length?(r=null==t?null:t,o):r},o}(q)}function X(t){return[t.source.x1,t.y0]}function B(t){return[t.target.x0,t.y1]}var Q=function(){var t=o(function(t,n,e,i){for(e=e||{},i=t.length;i--;e[t[i]]=n);return e},"o"),n=[1,9],e=[1,10],i=[1,5,10,12],s={trace:o(function(){},"trace"),yy:{},symbols_:{error:2,start:3,SANKEY:4,NEWLINE:5,csv:6,opt_eof:7,record:8,csv_tail:9,EOF:10,"field[source]":11,COMMA:12,"field[target]":13,"field[value]":14,field:15,escaped:16,non_escaped:17,DQUOTE:18,ESCAPED_TEXT:19,NON_ESCAPED_TEXT:20,$accept:0,$end:1},terminals_:{2:"error",4:"SANKEY",5:"NEWLINE",10:"EOF",11:"field[source]",12:"COMMA",13:"field[target]",14:"field[value]",18:"DQUOTE",19:"ESCAPED_TEXT",20:"NON_ESCAPED_TEXT"},productions_:[0,[3,4],[6,2],[9,2],[9,0],[7,1],[7,0],[8,5],[15,1],[15,1],[16,3],[17,1]],performAction:o(function(t,n,e,i,s,r,o){var a=r.length-1;switch(s){case 7:const t=i.findOrCreateNode(r[a-4].trim().replaceAll('""','"')),n=i.findOrCreateNode(r[a-2].trim().replaceAll('""','"')),e=parseFloat(r[a].trim());i.addLink(t,n,e);break;case 8:case 9:case 11:this.$=r[a];break;case 10:this.$=r[a-1]}},"anonymous"),table:[{3:1,4:[1,2]},{1:[3]},{5:[1,3]},{6:4,8:5,15:6,16:7,17:8,18:n,20:e},{1:[2,6],7:11,10:[1,12]},t(e,[2,4],{9:13,5:[1,14]}),{12:[1,15]},t(i,[2,8]),t(i,[2,9]),{19:[1,16]},t(i,[2,11]),{1:[2,1]},{1:[2,5]},t(e,[2,2]),{6:17,8:5,15:6,16:7,17:8,18:n,20:e},{15:18,16:7,17:8,18:n,20:e},{18:[1,19]},t(e,[2,3]),{12:[1,20]},t(i,[2,10]),{15:21,16:7,17:8,18:n,20:e},t([1,5,10],[2,7])],defaultActions:{11:[2,1],12:[2,5]},parseError:o(function(t,n){if(!n.recoverable){var e=new Error(t);throw e.hash=n,e}this.trace(t)},"parseError"),parse:o(function(t){var n=this,e=[0],i=[],s=[null],r=[],a=this.table,l="",c=0,h=0,u=r.slice.call(arguments,1),f=Object.create(this.lexer),y={yy:{}};for(var d in this.yy)Object.prototype.hasOwnProperty.call(this.yy,d)&&(y.yy[d]=this.yy[d]);f.setInput(t,y.yy),y.yy.lexer=f,y.yy.parser=this,void 0===f.yylloc&&(f.yylloc={});var g=f.yylloc;r.push(g);var p=f.options&&f.options.ranges;function _(){var t;return"number"!=typeof(t=i.pop()||f.lex()||1)&&(t instanceof Array&&(t=(i=t).pop()),t=n.symbols_[t]||t),t}"function"==typeof y.yy.parseError?this.parseError=y.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError,o(function(t){e.length=e.length-2*t,s.length=s.length-t,r.length=r.length-t},"popStack"),o(_,"lex");for(var k,x,m,b,v,w,S,L,E={};;){if(x=e[e.length-1],this.defaultActions[x]?m=this.defaultActions[x]:(null==k&&(k=_()),m=a[x]&&a[x][k]),void 0===m||!m.length||!m[0]){var A="";for(v in L=[],a[x])this.terminals_[v]&&v>2&&L.push("'"+this.terminals_[v]+"'");A=f.showPosition?"Parse error on line "+(c+1)+":\n"+f.showPosition()+"\nExpecting "+L.join(", ")+", got '"+(this.terminals_[k]||k)+"'":"Parse error on line "+(c+1)+": Unexpected "+(1==k?"end of input":"'"+(this.terminals_[k]||k)+"'"),this.parseError(A,{text:f.match,token:this.terminals_[k]||k,line:f.yylineno,loc:g,expected:L})}if(m[0]instanceof Array&&m.length>1)throw new Error("Parse Error: multiple actions possible at state: "+x+", token: "+k);switch(m[0]){case 1:e.push(k),s.push(f.yytext),r.push(f.yylloc),e.push(m[1]),k=null,h=f.yyleng,l=f.yytext,c=f.yylineno,g=f.yylloc;break;case 2:if(w=this.productions_[m[1]][1],E.$=s[s.length-w],E._$={first_line:r[r.length-(w||1)].first_line,last_line:r[r.length-1].last_line,first_column:r[r.length-(w||1)].first_column,last_column:r[r.length-1].last_column},p&&(E._$.range=[r[r.length-(w||1)].range[0],r[r.length-1].range[1]]),void 0!==(b=this.performAction.apply(E,[l,h,c,y.yy,m[1],s,r].concat(u))))return b;w&&(e=e.slice(0,-1*w*2),s=s.slice(0,-1*w),r=r.slice(0,-1*w)),e.push(this.productions_[m[1]][0]),s.push(E.$),r.push(E._$),S=a[e[e.length-2]][e[e.length-1]],e.push(S);break;case 3:return!0}}return!0},"parse")},r=function(){return{EOF:1,parseError:o(function(t,n){if(!this.yy.parser)throw new Error(t);this.yy.parser.parseError(t,n)},"parseError"),setInput:o(function(t,n){return this.yy=n||this.yy||{},this._input=t,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:o(function(){var t=this._input[0];return this.yytext+=t,this.yyleng++,this.offset++,this.match+=t,this.matched+=t,t.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),t},"input"),unput:o(function(t){var n=t.length,e=t.split(/(?:\r\n?|\n)/g);this._input=t+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-n),this.offset-=n;var i=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),e.length-1&&(this.yylineno-=e.length-1);var s=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:e?(e.length===i.length?this.yylloc.first_column:0)+i[i.length-e.length].length-e[0].length:this.yylloc.first_column-n},this.options.ranges&&(this.yylloc.range=[s[0],s[0]+this.yyleng-n]),this.yyleng=this.yytext.length,this},"unput"),more:o(function(){return this._more=!0,this},"more"),reject:o(function(){return this.options.backtrack_lexer?(this._backtrack=!0,this):this.parseError("Lexical error on line "+(this.yylineno+1)+". You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true).\n"+this.showPosition(),{text:"",token:null,line:this.yylineno})},"reject"),less:o(function(t){this.unput(this.match.slice(t))},"less"),pastInput:o(function(){var t=this.matched.substr(0,this.matched.length-this.match.length);return(t.length>20?"...":"")+t.substr(-20).replace(/\n/g,"")},"pastInput"),upcomingInput:o(function(){var t=this.match;return t.length<20&&(t+=this._input.substr(0,20-t.length)),(t.substr(0,20)+(t.length>20?"...":"")).replace(/\n/g,"")},"upcomingInput"),showPosition:o(function(){var t=this.pastInput(),n=new Array(t.length+1).join("-");return t+this.upcomingInput()+"\n"+n+"^"},"showPosition"),test_match:o(function(t,n){var e,i,s;if(this.options.backtrack_lexer&&(s={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&&(s.yylloc.range=this.yylloc.range.slice(0))),(i=t[0].match(/(?:\r\n?|\n).*/g))&&(this.yylineno+=i.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:i?i[i.length-1].length-i[i.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+t[0].length},this.yytext+=t[0],this.match+=t[0],this.matches=t,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(t[0].length),this.matched+=t[0],e=this.performAction.call(this,this.yy,this,n,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),e)return e;if(this._backtrack){for(var r in s)this[r]=s[r];return!1}return!1},"test_match"),next:o(function(){if(this.done)return this.EOF;var t,n,e,i;this._input||(this.done=!0),this._more||(this.yytext="",this.match="");for(var s=this._currentRules(),r=0;r<s.length;r++)if((e=this._input.match(this.rules[s[r]]))&&(!n||e[0].length>n[0].length)){if(n=e,i=r,this.options.backtrack_lexer){if(!1!==(t=this.test_match(e,s[r])))return t;if(this._backtrack){n=!1;continue}return!1}if(!this.options.flex)break}return n?!1!==(t=this.test_match(n,s[i]))&&t:""===this._input?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+". Unrecognized text.\n"+this.showPosition(),{text:"",token:null,line:this.yylineno})},"next"),lex:o(function(){var t=this.next();return t||this.lex()},"lex"),begin:o(function(t){this.conditionStack.push(t)},"begin"),popState:o(function(){return this.conditionStack.length-1>0?this.conditionStack.pop():this.conditionStack[0]},"popState"),_currentRules:o(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:o(function(t){return(t=this.conditionStack.length-1-Math.abs(t||0))>=0?this.conditionStack[t]:"INITIAL"},"topState"),pushState:o(function(t){this.begin(t)},"pushState"),stateStackSize:o(function(){return this.conditionStack.length},"stateStackSize"),options:{"case-insensitive":!0},performAction:o(function(t,n,e,i){switch(e){case 0:case 1:return this.pushState("csv"),4;case 2:return 10;case 3:return 5;case 4:return 12;case 5:return this.pushState("escaped_text"),18;case 6:return 20;case 7:return this.popState("escaped_text"),18;case 8:return 19}},"anonymous"),rules:[/^(?:sankey-beta\b)/i,/^(?:sankey\b)/i,/^(?:$)/i,/^(?:((\u000D\u000A)|(\u000A)))/i,/^(?:(\u002C))/i,/^(?:(\u0022))/i,/^(?:([\u0020-\u0021\u0023-\u002B\u002D-\u007E])*)/i,/^(?:(\u0022)(?!(\u0022)))/i,/^(?:(([\u0020-\u0021\u0023-\u002B\u002D-\u007E])|(\u002C)|(\u000D)|(\u000A)|(\u0022)(\u0022))*)/i],conditions:{csv:{rules:[2,3,4,5,6,7,8],inclusive:!1},escaped_text:{rules:[7,8],inclusive:!1},INITIAL:{rules:[0,1,2,3,4,5,6,7,8],inclusive:!0}}}}();function a(){this.yy={}}return s.lexer=r,o(a,"Parser"),a.prototype=s,s.Parser=a,new a}();Q.parser=Q;var R=Q,Y=[],K=[],Z=new Map,H=o(()=>{Y=[],K=[],Z=new Map,y()},"clear"),J=class{constructor(t,n,e=0){this.source=t,this.target=n,this.value=e}static{o(this,"SankeyLink")}},tt=o((t,n,e)=>{Y.push(new J(t,n,e))},"addLink"),nt=class{constructor(t){this.ID=t}static{o(this,"SankeyNode")}},et=o(t=>{t=d.sanitizeText(t,a());let n=Z.get(t);return void 0===n&&(n=new nt(t),Z.set(t,n),K.push(n)),n},"findOrCreateNode"),it=o(()=>K,"getNodes"),st=o(()=>Y,"getLinks"),rt=o(()=>({nodes:K.map(t=>({id:t.ID})),links:Y.map(t=>({source:t.source.ID,target:t.target.ID,value:t.value}))}),"getGraph"),ot={nodesMap:Z,getConfig:o(()=>a().sankey,"getConfig"),getNodes:it,getLinks:st,getGraph:rt,addLink:tt,findOrCreateNode:et,getAccTitle:r,setAccTitle:s,getAccDescription:i,setAccDescription:e,getDiagramTitle:n,setDiagramTitle:t,clear:H},at=class t{static{o(this,"Uid")}static{this.count=0}static next(n){return new t(n+ ++t.count)}constructor(t){this.id=t,this.href=`#${t}`}toString(){return"url("+this.href+")"}},lt={left:function(t){return t.depth},right:function(t,n){return n-1-t.height},center:function(t){return t.targetLinks.length?t.depth:t.sourceLinks.length?p(t.sourceLinks,k)-1:0},justify:x},ct=o(t=>{let n=0,e=0;for(const i of t){const t=i.value??0;t>n&&(n=t,e=i.layer??0)}return e},"findCentralNodeLayer"),ht=o(function(t,n,e,i){const{securityLevel:s,sankey:r}=a(),y=l.sankey;let d;"sandbox"===s&&(d=c("#i"+n));const g=c("sandbox"===s?d.nodes()[0].contentDocument.body:"body"),p="sandbox"===s?g.select(`[id="${n}"]`):c(`[id="${n}"]`),_=r?.width??y.width,k=r?.height??y.width,x=r?.useMaxWidth??y.useMaxWidth,m=r?.nodeAlignment??y.nodeAlignment,b=r?.prefix??y.prefix,v=r?.suffix??y.suffix,w=r?.showValues??y.showValues,S=r?.nodeWidth??y.nodeWidth??10,L=r?.nodePadding??y.nodePadding??12,E=r?.labelStyle??y.labelStyle??"legacy",A=r?.nodeColors??{},M=i.db.getGraph(),I=lt[m];T().nodeId(t=>t.id).nodeWidth(S).nodePadding(L+(w?15:0)).nodeAlign(I).extent([[0,0],[_,k]])(M);const P=ct(M.nodes),N=h(u),C=o(t=>A[t]??N(t),"getNodeColor");p.append("g").attr("class","nodes").selectAll(".node").data(M.nodes).join("g").attr("class","node").attr("id",t=>(t.uid=at.next("node-")).id).attr("transform",function(t){return"translate("+t.x0+","+t.y0+")"}).attr("x",t=>t.x0).attr("y",t=>t.y0).append("rect").attr("height",t=>t.y1-t.y0).attr("width",t=>t.x1-t.x0).attr("fill",t=>C(t.id));const $=o(({id:t,value:n})=>w?`${t}\n${b}${Math.round(100*n)/100}${v}`:t,"getText"),O=o(t=>{if("outlined"===E){return(t.layer??0)<P?{x:t.x0-6,anchor:"end"}:{x:t.x1+6,anchor:"start"}}return t.x0<_/2?{x:t.x1+6,anchor:"start"}:{x:t.x0-6,anchor:"end"}},"getLabelPosition"),D=p.append("g").attr("class","node-labels").attr("font-size",14),j=o(t=>D.selectAll(t?`.${t}`:"text").data(M.nodes).join("text").attr("class",t??null).attr("x",t=>O(t).x).attr("y",t=>(t.y1+t.y0)/2).attr("dy",(w?"0":"0.35")+"em").attr("text-anchor",t=>O(t).anchor).text($),"appendLabel");"outlined"===E?(j("sankey-label-bg"),j("sankey-label-fg")):j();const z=p.append("g").attr("class","links").attr("fill","none").attr("stroke-opacity",.5).selectAll(".link").data(M.links).join("g").attr("class","link").style("mix-blend-mode","multiply"),F=r?.linkColor??"gradient";if("gradient"===F){const t=z.append("linearGradient").attr("id",t=>(t.uid=at.next("linearGradient-")).id).attr("gradientUnits","userSpaceOnUse").attr("x1",t=>t.source.x1).attr("x2",t=>t.target.x0);t.append("stop").attr("offset","0%").attr("stop-color",t=>C(t.source.id)),t.append("stop").attr("offset","100%").attr("stop-color",t=>C(t.target.id))}let W;switch(F){case"gradient":W=o(t=>t.uid,"coloring");break;case"source":W=o(t=>C(t.source.id),"coloring");break;case"target":W=o(t=>C(t.target.id),"coloring");break;default:W=F}z.append("path").attr("d",V().source(X).target(B)).attr("stroke",W).attr("stroke-width",t=>Math.max(1,t.width)),f(void 0,p,0,x)},"draw"),ut={draw:ht},ft=o(t=>t.replaceAll(/^[^\S\n\r]+|[^\S\n\r]+$/g,"").replaceAll(/([\n\r])+/g,"\n").trim(),"prepareTextForParsing"),yt=o(t=>`.label {\n font-family: ${t.fontFamily};\n }\n\n .node-labels {\n font-family: ${t.fontFamily};\n }\n\n /* Outlined label style - background stroke for better readability */\n .sankey-label-bg {\n stroke: ${t.mainBkg||t.background||"#fff"};\n stroke-width: 4px;\n stroke-linejoin: round;\n paint-order: stroke;\n }\n\n /* Foreground label text */\n .sankey-label-fg {\n fill: ${t.textColor};\n }\n\n /* Node styling */\n .node rect {\n shape-rendering: crispEdges;\n }\n\n /* Link styling */\n .link {\n fill: none;\n stroke-opacity: 0.5;\n mix-blend-mode: multiply;\n }\n`,"getStyles"),dt=R.parse.bind(R);R.parse=t=>dt(ft(t));var gt={styles:yt,parser:R,db:ot,renderer:ut};export{gt as diagram};