cc-viewer 1.7.6 → 1.7.8

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 (136) hide show
  1. package/README.md +20 -1
  2. package/cli.js +41 -31
  3. package/dist/assets/App-Bs6-c4Ov.css +1 -0
  4. package/dist/assets/App-DtsIVPu6.js +2 -0
  5. package/dist/assets/{MdxEditorPanel-BQ5MgI4D.js → MdxEditorPanel-DWPAEnpm.js} +1 -1
  6. package/dist/assets/Mobile-DHwMZG4N.js +1 -0
  7. package/dist/assets/ProxyStatsModal-D9lTz0-T.js +1 -0
  8. package/dist/assets/ProxyStatsModal-Dz5GuoUa.css +1 -0
  9. package/dist/assets/abnfDiagram-VRR7QNED-9ax220Vv.js +1 -0
  10. package/dist/assets/arc-Cshrl52z.js +1 -0
  11. package/dist/assets/architectureDiagram-ZJ3FMSHR-QtERolgF.js +1 -0
  12. package/dist/assets/blockDiagram-677ZJIJ3-BaCd4R0Z.js +1 -0
  13. package/dist/assets/{c4Diagram-AHTNJAMY-C7JB9PqP.js → c4Diagram-LMCZKHZV-C2QvkF2i.js} +1 -1
  14. package/dist/assets/{channel-BnzX9zBS.js → channel-ClOiNc35.js} +1 -1
  15. package/dist/assets/{chunk-QZHKN3VN-CNEAHnZV.js → chunk-2Q5K7J3B-BvZ7-Ft4.js} +1 -1
  16. package/dist/assets/{chunk-YZCP3GAM-BOlts_Dm.js → chunk-32BRIVSS-Dg3PlJIt.js} +1 -1
  17. package/dist/assets/{chunk-FMBD7UC4-CGL9Lo51.js → chunk-5VM5RSS4-CMJWLQsQ.js} +1 -1
  18. package/dist/assets/chunk-EX3LRPZG-CmoC-M2G.js +1 -0
  19. package/dist/assets/{chunk-4BX2VUAB-dVKiUtqe.js → chunk-JWPE2WC7-D5RR93-U.js} +1 -1
  20. package/dist/assets/chunk-MOJQB5TN-JXgBLjCY.js +1 -0
  21. package/dist/assets/chunk-RYQCIY6F-gT-v276m.js +1 -0
  22. package/dist/assets/chunk-V7JOEXUC-Cl-E_fxl.js +1 -0
  23. package/dist/assets/{chunk-EDXVE4YY-sk9g7szp.js → chunk-VR4S4FIN-BR0zG1Ep.js} +1 -1
  24. package/dist/assets/{chunk-55IACEB6-BZuKI6JQ.js → chunk-XXDRQBXY-Blw-tThR.js} +1 -1
  25. package/dist/assets/classDiagram-OUVF2IWQ-ClkcbuHu.js +1 -0
  26. package/dist/assets/classDiagram-v2-EOCWNBFH-ClkcbuHu.js +1 -0
  27. package/dist/assets/{cose-bilkent-S5V4N54A-DH4_YiGi.js → cose-bilkent-JH36ORCC-BnDDyyuN.js} +1 -1
  28. package/dist/assets/cynefin-VYW2F7L2-Ch8_Ihra.js +15 -0
  29. package/dist/assets/cynefinDiagram-TSTJHNR4-CuX_xTSU.js +1 -0
  30. package/dist/assets/cytoscape.esm-D0POlJZ1.js +9 -0
  31. package/dist/assets/dagre-VKFMJZFB-DHDO7DUw.js +1 -0
  32. package/dist/assets/diagram-FQU43EPY-CxDVpL25.js +1 -0
  33. package/dist/assets/diagram-G47NLZAW-DHX7L6pT.js +1 -0
  34. package/dist/assets/diagram-NH7WQ7WH-HlwtIdWA.js +1 -0
  35. package/dist/assets/diagram-OA4YK3LP-BnTSu9CG.js +1 -0
  36. package/dist/assets/diagram-WEI45ONY-C712tBJk.js +1 -0
  37. package/dist/assets/ebnfDiagram-CCIWWBDH-DzMcH3cz.js +1 -0
  38. package/dist/assets/erDiagram-Q63AITRT-0fyhQG92.js +1 -0
  39. package/dist/assets/flowDiagram-23GEKE2U-lgfs10IO.js +1 -0
  40. package/dist/assets/{ganttDiagram-T4ZO3ILL-BL_XQ958.js → ganttDiagram-NO4QXBWP-_4nnZ3ta.js} +1 -1
  41. package/dist/assets/gitGraphDiagram-IHSO6WYX-DrgEKJkZ.js +1 -0
  42. package/dist/assets/graph-CnJdn47S.js +1 -0
  43. package/dist/assets/{index-CzPHj3iF.js → index-7VeS_xrl.js} +1 -1
  44. package/dist/assets/{index-BgW_nP_0.js → index-BJ9Xm7_G.js} +1 -1
  45. package/dist/assets/{index-B3-JUU7J.js → index-BiYKFU6w.js} +1 -1
  46. package/dist/assets/index-By8aqIvN.js +2 -0
  47. package/dist/assets/{index-Do5xNTOT.js → index-CBix0zSu.js} +1 -1
  48. package/dist/assets/{index-DDlAMOiV.js → index-CPAQ767L.js} +1 -1
  49. package/dist/assets/{index-LjVy-Pzg.js → index-DuUUHxox.js} +1 -1
  50. package/dist/assets/{index-vImWXiMM.js → index-_pxC-jz_.js} +1 -1
  51. package/dist/assets/infoDiagram-FWYZ7A6U-Cki8RIbq.js +1 -0
  52. package/dist/assets/{ishikawaDiagram-UXIWVN3A-D3odpv9_.js → ishikawaDiagram-FXEZZL3T-DHHu_UGe.js} +1 -1
  53. package/dist/assets/{journeyDiagram-VCZTEJTY-Dj3NaOWF.js → journeyDiagram-5HDEW3XC-Bx06Sp3y.js} +1 -1
  54. package/dist/assets/{jszip.min-GmVScWAV.js → jszip.min-Bn5J9HN-.js} +1 -1
  55. package/dist/assets/{kanban-definition-6JOO6SKY-GKjJaLwD.js → kanban-definition-HUTT4EX6-BuEuKkQp.js} +1 -1
  56. package/dist/assets/layout-CCUE9ZRw.js +1 -0
  57. package/dist/assets/{linear-CLk9nvqn.js → linear-BJRZNsdX.js} +1 -1
  58. package/dist/assets/map-DQeg2hXV.js +1 -0
  59. package/dist/assets/mermaid.core-DH-sQJgr.js +7 -0
  60. package/dist/assets/{mindmap-definition-QFDTVHPH-DgDD6Jbu.js → mindmap-definition-LN4V7U3C-DYtgJ2f4.js} +1 -1
  61. package/dist/assets/pegDiagram-2B236MQR-BVN6OIEN.js +1 -0
  62. package/dist/assets/pieDiagram-ENE6RG2P-mVeQtQTD.js +1 -0
  63. package/dist/assets/quadrantDiagram-ABIIQ3AL-Croqf1qH.js +1 -0
  64. package/dist/assets/railroadDiagram-RFXS5EU6-jkGuNfMY.js +1 -0
  65. package/dist/assets/{requirementDiagram-MS252O5E-CtBOCtbk.js → requirementDiagram-TGXJPOKE-Cwb2FU3N.js} +1 -1
  66. package/dist/assets/sankeyDiagram-HTMAVEWB-D-HWOuX0.js +1 -0
  67. package/dist/assets/seqResourceLoaders-C-pxCjNh.js +2 -0
  68. package/dist/assets/sequenceDiagram-DBY2YBRQ-Bh3XgPxy.js +1 -0
  69. package/dist/assets/sizeCapture-X5ZJPWSS-C_acEkFf.js +1 -0
  70. package/dist/assets/stateDiagram-2N3HPSRC-CmbRj6R7.js +1 -0
  71. package/dist/assets/stateDiagram-v2-6OUMAXLB-ClrX-Ofc.js +1 -0
  72. package/dist/assets/swimlanes-5IMT3BWC-CIfoRrLM.js +2 -0
  73. package/dist/assets/swimlanesDiagram-G3AALYLV-DZuW0-dQ.js +1 -0
  74. package/dist/assets/{timeline-definition-GMOUNBTQ-B5cPasy_.js → timeline-definition-FHXFAJF6-CK8MkCLz.js} +1 -1
  75. package/dist/assets/vendor-antd-DNUTLr77.js +17 -0
  76. package/dist/assets/{vendor-codemirror-_NbrtdQc.js → vendor-codemirror-6ck0hLRU.js} +1 -1
  77. package/dist/assets/vendor-markdown-DBlfs4dR.js +3 -0
  78. package/dist/assets/vendor-mdxeditor-DT0rad22.js +2 -0
  79. package/dist/assets/vendor-qrcode-CPmWG6hm.js +6 -0
  80. package/dist/assets/vendor-virtuoso-YwK7i7L6.js +1 -0
  81. package/dist/assets/{vennDiagram-DHZGUBPP-a_ybZDST.js → vennDiagram-L72KCM5P-CWA2Gdi_.js} +1 -1
  82. package/dist/assets/wardleyDiagram-EHGQE667-U22kgZ8v.js +1 -0
  83. package/dist/assets/xychartDiagram-FW5EYKEG-BiGsMUKC.js +1 -0
  84. package/dist/index.html +4 -4
  85. package/findcc.js +281 -5
  86. package/package.json +1 -1
  87. package/server/lib/proxy-stats.js +75 -32
  88. package/server/pty-manager.js +3 -8
  89. package/server/routes/preferences.js +71 -1
  90. package/server/system-prompt-templates/presets/index.json +8 -0
  91. package/server/system-prompt-templates/presets/kimi-k3.md +68 -0
  92. package/src/utils/helpers.js +6 -1
  93. package/dist/assets/App-3VM471BO.js +0 -2
  94. package/dist/assets/App-CCDFxj11.css +0 -1
  95. package/dist/assets/Mobile-wwcXmnrU.js +0 -1
  96. package/dist/assets/UnifiedProxyRetryPage-BpcKIn9N.js +0 -1
  97. package/dist/assets/UnifiedProxyRetryPage-CFz4vOH5.css +0 -1
  98. package/dist/assets/_baseUniq-yiNE5Ckw.js +0 -1
  99. package/dist/assets/arc-M-eBYYbN.js +0 -1
  100. package/dist/assets/architectureDiagram-Q4EWVU46-CtweeLKi.js +0 -1
  101. package/dist/assets/blockDiagram-DXYQGD6D-DCVQ-go_.js +0 -1
  102. package/dist/assets/chunk-4TB4RGXK-CQjD9-fD.js +0 -1
  103. package/dist/assets/chunk-OYMX7WX6-DaN0AdQD.js +0 -1
  104. package/dist/assets/classDiagram-6PBFFD2Q-CumOMdO7.js +0 -1
  105. package/dist/assets/classDiagram-v2-HSJHXN6E-CumOMdO7.js +0 -1
  106. package/dist/assets/clone-C3SZDzs1.js +0 -1
  107. package/dist/assets/cytoscape.esm-CT1mZavR.js +0 -9
  108. package/dist/assets/dagre-KV5264BT-RqusStYI.js +0 -1
  109. package/dist/assets/diagram-5BDNPKRD-8haVbBnt.js +0 -1
  110. package/dist/assets/diagram-G4DWMVQ6-CsrJNUhT.js +0 -1
  111. package/dist/assets/diagram-MMDJMWI5-1luPOM38.js +0 -1
  112. package/dist/assets/diagram-TYMM5635-Dad1XR3W.js +0 -1
  113. package/dist/assets/erDiagram-SMLLAGMA-Br6-kbp9.js +0 -1
  114. package/dist/assets/flowDiagram-DWJPFMVM-DuX1mbA7.js +0 -1
  115. package/dist/assets/gitGraphDiagram-UUTBAWPF-DzvW5FEs.js +0 -1
  116. package/dist/assets/graph-CbUmu0Oe.js +0 -1
  117. package/dist/assets/index-BjNLFJ0z.js +0 -2
  118. package/dist/assets/infoDiagram-42DDH7IO-DGsgRji7.js +0 -1
  119. package/dist/assets/layout-Bhk66H0F.js +0 -1
  120. package/dist/assets/mermaid.core-DH-GfeNS.js +0 -7
  121. package/dist/assets/min-DQftOGfo.js +0 -1
  122. package/dist/assets/pieDiagram-DEJITSTG-jy1yFaxA.js +0 -1
  123. package/dist/assets/quadrantDiagram-34T5L4WZ-BdvMwrSD.js +0 -1
  124. package/dist/assets/sankeyDiagram-XADWPNL6-DEFlQp-h.js +0 -1
  125. package/dist/assets/seqResourceLoaders-CDRtUSxI.js +0 -2
  126. package/dist/assets/sequenceDiagram-FGHM5R23-0F2R8Ky0.js +0 -1
  127. package/dist/assets/stateDiagram-FHFEXIEX-D4xOwcSW.js +0 -1
  128. package/dist/assets/stateDiagram-v2-QKLJ7IA2-DSf_BSF8.js +0 -1
  129. package/dist/assets/vendor-antd-DeqwrDxf.js +0 -17
  130. package/dist/assets/vendor-markdown-DOJHsAxX.js +0 -3
  131. package/dist/assets/vendor-mdxeditor-DG0Nyxw5.js +0 -2
  132. package/dist/assets/vendor-qrcode-B3HN--HO.js +0 -6
  133. package/dist/assets/vendor-virtuoso-BvrezPQx.js +0 -1
  134. package/dist/assets/wardley-RL74JXVD-CKla3KF8.js +0 -1
  135. package/dist/assets/wardleyDiagram-NUSXRM2D-BKke2aih.js +0 -1
  136. package/dist/assets/xychartDiagram-5P7HB3ND-CozWtcdf.js +0 -1
@@ -1 +0,0 @@
1
- import{b as baseFlatten,a as baseEach,c as baseIteratee,d as arrayMap,i as isSymbol}from"./_baseUniq-yiNE5Ckw.js";import{aF as isArrayLike,aG as isArray,aH as identity}from"./mermaid.core-DH-GfeNS.js";function flatten(array){return(null==array?0:array.length)?baseFlatten(array):[]}function baseMap(collection,iteratee){var index=-1,result=isArrayLike(collection)?Array(collection.length):[];return baseEach(collection,function(value,key,collection2){result[++index]=iteratee(value,key,collection2)}),result}function map(collection,iteratee){return(isArray(collection)?arrayMap:baseMap)(collection,baseIteratee(iteratee))}function baseLt(value,other){return value<other}function baseExtremum(array,iteratee,comparator){for(var index=-1,length=array.length;++index<length;){var value=array[index],current=iteratee(value);if(null!=current&&(void 0===computed?current==current&&!isSymbol(current):comparator(current,computed)))var computed=current,result=value}return result}function min(array){return array&&array.length?baseExtremum(array,identity,baseLt):void 0}export{baseLt as a,baseExtremum as b,baseMap as c,min as d,flatten as f,map as m};
@@ -1 +0,0 @@
1
- import{a3 as constant,a6 as tau,aD as array,g as getAccDescription,s as setAccDescription,a as getAccTitle,b as setAccTitle,q as getDiagramTitle,p as setDiagramTitle,_ as __name,l as log,c as getConfig2$1,E as cleanAndMerge,H as selectSvgElement,M as parseFontSize,e as configureSvgSize,y as clear,F as defaultConfig_default}from"./mermaid.core-DH-GfeNS.js";import{p as populateCommonDb}from"./chunk-4BX2VUAB-dVKiUtqe.js";import{p as parse}from"./wardley-RL74JXVD-CKla3KF8.js";import{d as d3arc}from"./arc-M-eBYYbN.js";import{o as ordinal}from"./ordinal-DA-_8pMy.js";import"./vendor-mdxeditor-DG0Nyxw5.js";import"./vendor-antd-DeqwrDxf.js";import"./vendor-codemirror-_NbrtdQc.js";import"./vendor-markdown-DOJHsAxX.js";import"./min-DQftOGfo.js";import"./_baseUniq-yiNE5Ckw.js";import"./init-DMZMl1PR.js";function descending(a,b){return b<a?-1:b>a?1:b>=a?0:NaN}function identity(d){return d}var DEFAULT_PIE_CONFIG=defaultConfig_default.pie,DEFAULT_PIE_DB={sections:new Map,showData:!1},sections=DEFAULT_PIE_DB.sections,showData=DEFAULT_PIE_DB.showData,config=structuredClone(DEFAULT_PIE_CONFIG),db={getConfig:__name(()=>structuredClone(config),"getConfig"),clear:__name(()=>{sections=new Map,showData=DEFAULT_PIE_DB.showData,clear()},"clear"),setDiagramTitle:setDiagramTitle,getDiagramTitle:getDiagramTitle,setAccTitle:setAccTitle,getAccTitle:getAccTitle,setAccDescription:setAccDescription,getAccDescription:getAccDescription,addSection:__name(({label:label,value:value})=>{if(value<0)throw new Error(`"${label}" has invalid value: ${value}. Negative values are not allowed in pie charts. All slice values must be >= 0.`);sections.has(label)||(sections.set(label,value),log.debug(`added new section: ${label}, with value: ${value}`))},"addSection"),getSections:__name(()=>sections,"getSections"),setShowData:__name(toggle=>{showData=toggle},"setShowData"),getShowData:__name(()=>showData,"getShowData")},populateDb=__name((ast,db2)=>{populateCommonDb(ast,db2),db2.setShowData(ast.showData),ast.sections.map(db2.addSection)},"populateDb"),parser={parse:__name(async input=>{const ast=await parse("pie",input);log.debug(ast),populateDb(ast,db)},"parse")},pieStyles_default=__name(options=>`\n .pieCircle{\n stroke: ${options.pieStrokeColor};\n stroke-width : ${options.pieStrokeWidth};\n opacity : ${options.pieOpacity};\n }\n .pieOuterCircle{\n stroke: ${options.pieOuterStrokeColor};\n stroke-width: ${options.pieOuterStrokeWidth};\n fill: none;\n }\n .pieTitleText {\n text-anchor: middle;\n font-size: ${options.pieTitleTextSize};\n fill: ${options.pieTitleTextColor};\n font-family: ${options.fontFamily};\n }\n .slice {\n font-family: ${options.fontFamily};\n fill: ${options.pieSectionTextColor};\n font-size:${options.pieSectionTextSize};\n // fill: white;\n }\n .legend text {\n fill: ${options.pieLegendTextColor};\n font-family: ${options.fontFamily};\n font-size: ${options.pieLegendTextSize};\n }\n`,"getStyles"),createPieArcs=__name(sections2=>{const sum=[...sections2.values()].reduce((acc,val)=>acc+val,0),pieData=[...sections2.entries()].map(([label,value])=>({label:label,value:value})).filter(d=>d.value/sum*100>=1),pie=function(){var value=identity,sortValues=descending,sort=null,startAngle=constant(0),endAngle=constant(tau),padAngle=constant(0);function pie(data){var i,j,k,a1,v,n=(data=array(data)).length,sum=0,index=new Array(n),arcs=new Array(n),a0=+startAngle.apply(this,arguments),da=Math.min(tau,Math.max(-tau,endAngle.apply(this,arguments)-a0)),p=Math.min(Math.abs(da)/n,padAngle.apply(this,arguments)),pa=p*(da<0?-1:1);for(i=0;i<n;++i)(v=arcs[index[i]=i]=+value(data[i],i,data))>0&&(sum+=v);for(null!=sortValues?index.sort(function(i2,j2){return sortValues(arcs[i2],arcs[j2])}):null!=sort&&index.sort(function(i2,j2){return sort(data[i2],data[j2])}),i=0,k=sum?(da-n*pa)/sum:0;i<n;++i,a0=a1)j=index[i],a1=a0+((v=arcs[j])>0?v*k:0)+pa,arcs[j]={data:data[j],index:i,value:v,startAngle:a0,endAngle:a1,padAngle:p};return arcs}return pie.value=function(_){return arguments.length?(value="function"==typeof _?_:constant(+_),pie):value},pie.sortValues=function(_){return arguments.length?(sortValues=_,sort=null,pie):sortValues},pie.sort=function(_){return arguments.length?(sort=_,sortValues=null,pie):sort},pie.startAngle=function(_){return arguments.length?(startAngle="function"==typeof _?_:constant(+_),pie):startAngle},pie.endAngle=function(_){return arguments.length?(endAngle="function"==typeof _?_:constant(+_),pie):endAngle},pie.padAngle=function(_){return arguments.length?(padAngle="function"==typeof _?_:constant(+_),pie):padAngle},pie}().value(d=>d.value).sort(null);return pie(pieData)},"createPieArcs"),diagram={parser:parser,db:db,renderer:{draw:__name((text,id,_version,diagObj)=>{var _a;log.debug("rendering pie chart\n"+text);const db2=diagObj.db,globalConfig=getConfig2$1(),pieConfig=cleanAndMerge(db2.getConfig(),globalConfig.pie),svg=selectSvgElement(id),group=svg.append("g");group.attr("transform","translate(225,225)");const{themeVariables:themeVariables}=globalConfig;let[outerStrokeWidth]=parseFontSize(themeVariables.pieOuterStrokeWidth);outerStrokeWidth??(outerStrokeWidth=2);const textPosition=pieConfig.textPosition,radius=Math.min(450,450)/2-40,arcGenerator=d3arc().innerRadius(0).outerRadius(radius),labelArcGenerator=d3arc().innerRadius(radius*textPosition).outerRadius(radius*textPosition);group.append("circle").attr("cx",0).attr("cy",0).attr("r",radius+outerStrokeWidth/2).attr("class","pieOuterCircle");const sections2=db2.getSections(),arcs=createPieArcs(sections2),myGeneratedColors=[themeVariables.pie1,themeVariables.pie2,themeVariables.pie3,themeVariables.pie4,themeVariables.pie5,themeVariables.pie6,themeVariables.pie7,themeVariables.pie8,themeVariables.pie9,themeVariables.pie10,themeVariables.pie11,themeVariables.pie12];let sum=0;sections2.forEach(section=>{sum+=section});const filteredArcs=arcs.filter(datum=>"0"!==(datum.data.value/sum*100).toFixed(0)),color=ordinal(myGeneratedColors).domain([...sections2.keys()]);group.selectAll("mySlices").data(filteredArcs).enter().append("path").attr("d",arcGenerator).attr("fill",datum=>color(datum.data.label)).attr("class","pieCircle"),group.selectAll("mySlices").data(filteredArcs).enter().append("text").text(datum=>(datum.data.value/sum*100).toFixed(0)+"%").attr("transform",datum=>"translate("+labelArcGenerator.centroid(datum)+")").style("text-anchor","middle").attr("class","slice");const titleText=group.append("text").text(db2.getDiagramTitle()).attr("x",0).attr("y",-200).attr("class","pieTitleText"),allSectionData=[...sections2.entries()].map(([label,value])=>({label:label,value:value})),legend=group.selectAll(".legend").data(allSectionData).enter().append("g").attr("class","legend").attr("transform",(_datum,index)=>"translate(216,"+(22*index-22*allSectionData.length/2)+")");legend.append("rect").attr("width",18).attr("height",18).style("fill",d=>color(d.label)).style("stroke",d=>color(d.label)),legend.append("text").attr("x",22).attr("y",14).text(d=>db2.getShowData()?`${d.label} [${d.value}]`:d.label);const chartAndLegendWidth=512+Math.max(...legend.selectAll("text").nodes().map(node=>(null==node?void 0:node.getBoundingClientRect().width)??0)),titleWidth=(null==(_a=titleText.node())?void 0:_a.getBoundingClientRect().width)??0,titleLeft=225-titleWidth/2,titleRight=225+titleWidth/2,viewBoxX=Math.min(0,titleLeft),totalWidth=Math.max(chartAndLegendWidth,titleRight)-viewBoxX;svg.attr("viewBox",`${viewBoxX} 0 ${totalWidth} 450`),configureSvgSize(svg,450,totalWidth,pieConfig.useMaxWidth)},"draw")},styles:pieStyles_default};export{diagram};
@@ -1 +0,0 @@
1
- var _a,_b;import{s as setAccDescription,g as getAccDescription,q as getDiagramTitle,p as setDiagramTitle,a as getAccTitle,b as setAccTitle,_ as __name,c as getConfig2,l as log,d as select,e as configureSvgSize,y as clear,F as defaultConfig_default,i as sanitizeText,I as getThemeVariables3}from"./mermaid.core-DH-GfeNS.js";import{l as linear}from"./linear-CLk9nvqn.js";import"./vendor-mdxeditor-DG0Nyxw5.js";import"./vendor-antd-DeqwrDxf.js";import"./vendor-codemirror-_NbrtdQc.js";import"./vendor-markdown-DOJHsAxX.js";import"./init-DMZMl1PR.js";import"./defaultLocale-DZ7E7S9R.js";var parser=function(){var o=__name(function(k,v,o2,l){for(o2=o2||{},l=k.length;l--;o2[k[l]]=v);return o2},"o"),$V0=[1,3],$V1=[1,4],$V2=[1,5],$V3=[1,6],$V4=[1,7],$V5=[1,4,5,10,12,13,14,18,25,35,37,39,41,42,48,50,51,52,53,54,55,56,57,60,61,63,64,65,66,67],$V6=[1,4,5,10,12,13,14,18,25,28,35,37,39,41,42,48,50,51,52,53,54,55,56,57,60,61,63,64,65,66,67],$V7=[55,56,57],$V8=[2,36],$V9=[1,37],$Va=[1,36],$Vb=[1,38],$Vc=[1,35],$Vd=[1,43],$Ve=[1,41],$Vf=[1,14],$Vg=[1,23],$Vh=[1,18],$Vi=[1,19],$Vj=[1,20],$Vk=[1,21],$Vl=[1,22],$Vm=[1,24],$Vn=[1,25],$Vo=[1,26],$Vp=[1,27],$Vq=[1,28],$Vr=[1,29],$Vs=[1,32],$Vt=[1,33],$Vu=[1,34],$Vv=[1,39],$Vw=[1,40],$Vx=[1,42],$Vy=[1,44],$Vz=[1,62],$VA=[1,61],$VB=[4,5,8,10,12,13,14,18,44,47,49,55,56,57,63,64,65,66,67],$VC=[1,65],$VD=[1,66],$VE=[1,67],$VF=[1,68],$VG=[1,69],$VH=[1,70],$VI=[1,71],$VJ=[1,72],$VK=[1,73],$VL=[1,74],$VM=[1,75],$VN=[1,76],$VO=[4,5,6,7,8,9,10,11,12,13,14,15,18],$VP=[1,90],$VQ=[1,91],$VR=[1,92],$VS=[1,99],$VT=[1,93],$VU=[1,96],$VV=[1,94],$VW=[1,95],$VX=[1,97],$VY=[1,98],$VZ=[1,102],$V_=[10,55,56,57],$V$=[4,5,6,8,10,11,13,17,18,19,20,55,56,57],parser2={trace:__name(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],[59,1],[59,1],[59,1]],performAction:__name(function(yytext,yyleng,yylineno,yy,yystate,$$,_$){var $0=$$.length-1;switch(yystate){case 23:case 68:this.$=$$[$0];break;case 24:case 69:this.$=$$[$0-1]+""+$$[$0];break;case 26:this.$=$$[$0-1]+$$[$0];break;case 27:this.$=[$$[$0].trim()];break;case 28:$$[$0-2].push($$[$0].trim()),this.$=$$[$0-2];break;case 29:this.$=$$[$0-4],yy.addClass($$[$0-2],$$[$0]);break;case 37:this.$=[];break;case 42:this.$=$$[$0].trim(),yy.setDiagramTitle(this.$);break;case 43:this.$=$$[$0].trim(),yy.setAccTitle(this.$);break;case 44:case 45:this.$=$$[$0].trim(),yy.setAccDescription(this.$);break;case 46:yy.addSection($$[$0].substr(8)),this.$=$$[$0].substr(8);break;case 47:yy.addPoint($$[$0-3],"",$$[$0-1],$$[$0],[]);break;case 48:yy.addPoint($$[$0-4],$$[$0-3],$$[$0-1],$$[$0],[]);break;case 49:yy.addPoint($$[$0-4],"",$$[$0-2],$$[$0-1],$$[$0]);break;case 50:yy.addPoint($$[$0-5],$$[$0-4],$$[$0-2],$$[$0-1],$$[$0]);break;case 51:yy.setXAxisLeftText($$[$0-2]),yy.setXAxisRightText($$[$0]);break;case 52:$$[$0-1].text+=" ⟶ ",yy.setXAxisLeftText($$[$0-1]);break;case 53:yy.setXAxisLeftText($$[$0]);break;case 54:yy.setYAxisBottomText($$[$0-2]),yy.setYAxisTopText($$[$0]);break;case 55:$$[$0-1].text+=" ⟶ ",yy.setYAxisBottomText($$[$0-1]);break;case 56:yy.setYAxisBottomText($$[$0]);break;case 57:yy.setQuadrant1Text($$[$0]);break;case 58:yy.setQuadrant2Text($$[$0]);break;case 59:yy.setQuadrant3Text($$[$0]);break;case 60:yy.setQuadrant4Text($$[$0]);break;case 64:case 66:this.$={text:$$[$0],type:"text"};break;case 65:this.$={text:$$[$0-1].text+""+$$[$0],type:$$[$0-1].type};break;case 67:this.$={text:$$[$0],type:"markdown"}}},"anonymous"),table:[{18:$V0,26:1,27:2,28:$V1,55:$V2,56:$V3,57:$V4},{1:[3]},{18:$V0,26:8,27:2,28:$V1,55:$V2,56:$V3,57:$V4},{18:$V0,26:9,27:2,28:$V1,55:$V2,56:$V3,57:$V4},o($V5,[2,33],{29:10}),o($V6,[2,61]),o($V6,[2,62]),o($V6,[2,63]),{1:[2,30]},{1:[2,31]},o($V7,$V8,{30:11,31:12,24:13,32:15,33:16,34:17,43:30,58:31,1:[2,32],4:$V9,5:$Va,10:$Vb,12:$Vc,13:$Vd,14:$Ve,18:$Vf,25:$Vg,35:$Vh,37:$Vi,39:$Vj,41:$Vk,42:$Vl,48:$Vm,50:$Vn,51:$Vo,52:$Vp,53:$Vq,54:$Vr,60:$Vs,61:$Vt,63:$Vu,64:$Vv,65:$Vw,66:$Vx,67:$Vy}),o($V5,[2,34]),{27:45,55:$V2,56:$V3,57:$V4},o($V7,[2,37]),o($V7,$V8,{24:13,32:15,33:16,34:17,43:30,58:31,31:46,4:$V9,5:$Va,10:$Vb,12:$Vc,13:$Vd,14:$Ve,18:$Vf,25:$Vg,35:$Vh,37:$Vi,39:$Vj,41:$Vk,42:$Vl,48:$Vm,50:$Vn,51:$Vo,52:$Vp,53:$Vq,54:$Vr,60:$Vs,61:$Vt,63:$Vu,64:$Vv,65:$Vw,66:$Vx,67:$Vy}),o($V7,[2,39]),o($V7,[2,40]),o($V7,[2,41]),{36:[1,47]},{38:[1,48]},{40:[1,49]},o($V7,[2,45]),o($V7,[2,46]),{18:[1,50]},{4:$V9,5:$Va,10:$Vb,12:$Vc,13:$Vd,14:$Ve,43:51,58:31,60:$Vs,61:$Vt,63:$Vu,64:$Vv,65:$Vw,66:$Vx,67:$Vy},{4:$V9,5:$Va,10:$Vb,12:$Vc,13:$Vd,14:$Ve,43:52,58:31,60:$Vs,61:$Vt,63:$Vu,64:$Vv,65:$Vw,66:$Vx,67:$Vy},{4:$V9,5:$Va,10:$Vb,12:$Vc,13:$Vd,14:$Ve,43:53,58:31,60:$Vs,61:$Vt,63:$Vu,64:$Vv,65:$Vw,66:$Vx,67:$Vy},{4:$V9,5:$Va,10:$Vb,12:$Vc,13:$Vd,14:$Ve,43:54,58:31,60:$Vs,61:$Vt,63:$Vu,64:$Vv,65:$Vw,66:$Vx,67:$Vy},{4:$V9,5:$Va,10:$Vb,12:$Vc,13:$Vd,14:$Ve,43:55,58:31,60:$Vs,61:$Vt,63:$Vu,64:$Vv,65:$Vw,66:$Vx,67:$Vy},{4:$V9,5:$Va,10:$Vb,12:$Vc,13:$Vd,14:$Ve,43:56,58:31,60:$Vs,61:$Vt,63:$Vu,64:$Vv,65:$Vw,66:$Vx,67:$Vy},{4:$V9,5:$Va,8:$Vz,10:$Vb,12:$Vc,13:$Vd,14:$Ve,18:$VA,44:[1,57],47:[1,58],58:60,59:59,63:$Vu,64:$Vv,65:$Vw,66:$Vx,67:$Vy},o($VB,[2,64]),o($VB,[2,66]),o($VB,[2,67]),o($VB,[2,70]),o($VB,[2,71]),o($VB,[2,72]),o($VB,[2,73]),o($VB,[2,74]),o($VB,[2,75]),o($VB,[2,76]),o($VB,[2,77]),o($VB,[2,78]),o($VB,[2,79]),o($VB,[2,80]),o($V5,[2,35]),o($V7,[2,38]),o($V7,[2,42]),o($V7,[2,43]),o($V7,[2,44]),{3:64,4:$VC,5:$VD,6:$VE,7:$VF,8:$VG,9:$VH,10:$VI,11:$VJ,12:$VK,13:$VL,14:$VM,15:$VN,21:63},o($V7,[2,53],{59:59,58:60,4:$V9,5:$Va,8:$Vz,10:$Vb,12:$Vc,13:$Vd,14:$Ve,18:$VA,49:[1,77],63:$Vu,64:$Vv,65:$Vw,66:$Vx,67:$Vy}),o($V7,[2,56],{59:59,58:60,4:$V9,5:$Va,8:$Vz,10:$Vb,12:$Vc,13:$Vd,14:$Ve,18:$VA,49:[1,78],63:$Vu,64:$Vv,65:$Vw,66:$Vx,67:$Vy}),o($V7,[2,57],{59:59,58:60,4:$V9,5:$Va,8:$Vz,10:$Vb,12:$Vc,13:$Vd,14:$Ve,18:$VA,63:$Vu,64:$Vv,65:$Vw,66:$Vx,67:$Vy}),o($V7,[2,58],{59:59,58:60,4:$V9,5:$Va,8:$Vz,10:$Vb,12:$Vc,13:$Vd,14:$Ve,18:$VA,63:$Vu,64:$Vv,65:$Vw,66:$Vx,67:$Vy}),o($V7,[2,59],{59:59,58:60,4:$V9,5:$Va,8:$Vz,10:$Vb,12:$Vc,13:$Vd,14:$Ve,18:$VA,63:$Vu,64:$Vv,65:$Vw,66:$Vx,67:$Vy}),o($V7,[2,60],{59:59,58:60,4:$V9,5:$Va,8:$Vz,10:$Vb,12:$Vc,13:$Vd,14:$Ve,18:$VA,63:$Vu,64:$Vv,65:$Vw,66:$Vx,67:$Vy}),{45:[1,79]},{44:[1,80]},o($VB,[2,65]),o($VB,[2,81]),o($VB,[2,82]),o($VB,[2,83]),{3:82,4:$VC,5:$VD,6:$VE,7:$VF,8:$VG,9:$VH,10:$VI,11:$VJ,12:$VK,13:$VL,14:$VM,15:$VN,18:[1,81]},o($VO,[2,23]),o($VO,[2,1]),o($VO,[2,2]),o($VO,[2,3]),o($VO,[2,4]),o($VO,[2,5]),o($VO,[2,6]),o($VO,[2,7]),o($VO,[2,8]),o($VO,[2,9]),o($VO,[2,10]),o($VO,[2,11]),o($VO,[2,12]),o($V7,[2,52],{58:31,43:83,4:$V9,5:$Va,10:$Vb,12:$Vc,13:$Vd,14:$Ve,60:$Vs,61:$Vt,63:$Vu,64:$Vv,65:$Vw,66:$Vx,67:$Vy}),o($V7,[2,55],{58:31,43:84,4:$V9,5:$Va,10:$Vb,12:$Vc,13:$Vd,14:$Ve,60:$Vs,61:$Vt,63:$Vu,64:$Vv,65:$Vw,66:$Vx,67:$Vy}),{46:[1,85]},{45:[1,86]},{4:$VP,5:$VQ,6:$VR,8:$VS,11:$VT,13:$VU,16:89,17:$VV,18:$VW,19:$VX,20:$VY,22:88,23:87},o($VO,[2,24]),o($V7,[2,51],{59:59,58:60,4:$V9,5:$Va,8:$Vz,10:$Vb,12:$Vc,13:$Vd,14:$Ve,18:$VA,63:$Vu,64:$Vv,65:$Vw,66:$Vx,67:$Vy}),o($V7,[2,54],{59:59,58:60,4:$V9,5:$Va,8:$Vz,10:$Vb,12:$Vc,13:$Vd,14:$Ve,18:$VA,63:$Vu,64:$Vv,65:$Vw,66:$Vx,67:$Vy}),o($V7,[2,47],{22:88,16:89,23:100,4:$VP,5:$VQ,6:$VR,8:$VS,11:$VT,13:$VU,17:$VV,18:$VW,19:$VX,20:$VY}),{46:[1,101]},o($V7,[2,29],{10:$VZ}),o($V_,[2,27],{16:103,4:$VP,5:$VQ,6:$VR,8:$VS,11:$VT,13:$VU,17:$VV,18:$VW,19:$VX,20:$VY}),o($V$,[2,25]),o($V$,[2,13]),o($V$,[2,14]),o($V$,[2,15]),o($V$,[2,16]),o($V$,[2,17]),o($V$,[2,18]),o($V$,[2,19]),o($V$,[2,20]),o($V$,[2,21]),o($V$,[2,22]),o($V7,[2,49],{10:$VZ}),o($V7,[2,48],{22:88,16:89,23:104,4:$VP,5:$VQ,6:$VR,8:$VS,11:$VT,13:$VU,17:$VV,18:$VW,19:$VX,20:$VY}),{4:$VP,5:$VQ,6:$VR,8:$VS,11:$VT,13:$VU,16:89,17:$VV,18:$VW,19:$VX,20:$VY,22:105},o($V$,[2,26]),o($V7,[2,50],{10:$VZ}),o($V_,[2,28],{16:103,4:$VP,5:$VQ,6:$VR,8:$VS,11:$VT,13:$VU,17:$VV,18:$VW,19:$VX,20:$VY})],defaultActions:{8:[2,30],9:[2,31]},parseError:__name(function(str,hash){if(!hash.recoverable){var error=new Error(str);throw error.hash=hash,error}this.trace(str)},"parseError"),parse:__name(function(input){var self=this,stack=[0],tstack=[],vstack=[null],lstack=[],table=this.table,yytext="",yylineno=0,yyleng=0,args=lstack.slice.call(arguments,1),lexer2=Object.create(this.lexer),sharedState={yy:{}};for(var k in this.yy)Object.prototype.hasOwnProperty.call(this.yy,k)&&(sharedState.yy[k]=this.yy[k]);lexer2.setInput(input,sharedState.yy),sharedState.yy.lexer=lexer2,sharedState.yy.parser=this,void 0===lexer2.yylloc&&(lexer2.yylloc={});var yyloc=lexer2.yylloc;lstack.push(yyloc);var ranges=lexer2.options&&lexer2.options.ranges;function lex(){var token;return"number"!=typeof(token=tstack.pop()||lexer2.lex()||1)&&(token instanceof Array&&(token=(tstack=token).pop()),token=self.symbols_[token]||token),token}"function"==typeof sharedState.yy.parseError?this.parseError=sharedState.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError,__name(function(n){stack.length=stack.length-2*n,vstack.length=vstack.length-n,lstack.length=lstack.length-n},"popStack"),__name(lex,"lex");for(var symbol,state,action,r,p,len,newState,expected,yyval={};;){if(state=stack[stack.length-1],this.defaultActions[state]?action=this.defaultActions[state]:(null==symbol&&(symbol=lex()),action=table[state]&&table[state][symbol]),void 0===action||!action.length||!action[0]){var errStr="";for(p in expected=[],table[state])this.terminals_[p]&&p>2&&expected.push("'"+this.terminals_[p]+"'");errStr=lexer2.showPosition?"Parse error on line "+(yylineno+1)+":\n"+lexer2.showPosition()+"\nExpecting "+expected.join(", ")+", got '"+(this.terminals_[symbol]||symbol)+"'":"Parse error on line "+(yylineno+1)+": Unexpected "+(1==symbol?"end of input":"'"+(this.terminals_[symbol]||symbol)+"'"),this.parseError(errStr,{text:lexer2.match,token:this.terminals_[symbol]||symbol,line:lexer2.yylineno,loc:yyloc,expected:expected})}if(action[0]instanceof Array&&action.length>1)throw new Error("Parse Error: multiple actions possible at state: "+state+", token: "+symbol);switch(action[0]){case 1:stack.push(symbol),vstack.push(lexer2.yytext),lstack.push(lexer2.yylloc),stack.push(action[1]),symbol=null,yyleng=lexer2.yyleng,yytext=lexer2.yytext,yylineno=lexer2.yylineno,yyloc=lexer2.yylloc;break;case 2:if(len=this.productions_[action[1]][1],yyval.$=vstack[vstack.length-len],yyval._$={first_line:lstack[lstack.length-(len||1)].first_line,last_line:lstack[lstack.length-1].last_line,first_column:lstack[lstack.length-(len||1)].first_column,last_column:lstack[lstack.length-1].last_column},ranges&&(yyval._$.range=[lstack[lstack.length-(len||1)].range[0],lstack[lstack.length-1].range[1]]),void 0!==(r=this.performAction.apply(yyval,[yytext,yyleng,yylineno,sharedState.yy,action[1],vstack,lstack].concat(args))))return r;len&&(stack=stack.slice(0,-1*len*2),vstack=vstack.slice(0,-1*len),lstack=lstack.slice(0,-1*len)),stack.push(this.productions_[action[1]][0]),vstack.push(yyval.$),lstack.push(yyval._$),newState=table[stack[stack.length-2]][stack[stack.length-1]],stack.push(newState);break;case 3:return!0}}return!0},"parse")},lexer=function(){return{EOF:1,parseError:__name(function(str,hash){if(!this.yy.parser)throw new Error(str);this.yy.parser.parseError(str,hash)},"parseError"),setInput:__name(function(input,yy){return this.yy=yy||this.yy||{},this._input=input,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:__name(function(){var ch=this._input[0];return this.yytext+=ch,this.yyleng++,this.offset++,this.match+=ch,this.matched+=ch,ch.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),ch},"input"),unput:__name(function(ch){var len=ch.length,lines=ch.split(/(?:\r\n?|\n)/g);this._input=ch+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-len),this.offset-=len;var oldLines=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),lines.length-1&&(this.yylineno-=lines.length-1);var r=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:lines?(lines.length===oldLines.length?this.yylloc.first_column:0)+oldLines[oldLines.length-lines.length].length-lines[0].length:this.yylloc.first_column-len},this.options.ranges&&(this.yylloc.range=[r[0],r[0]+this.yyleng-len]),this.yyleng=this.yytext.length,this},"unput"),more:__name(function(){return this._more=!0,this},"more"),reject:__name(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:__name(function(n){this.unput(this.match.slice(n))},"less"),pastInput:__name(function(){var past=this.matched.substr(0,this.matched.length-this.match.length);return(past.length>20?"...":"")+past.substr(-20).replace(/\n/g,"")},"pastInput"),upcomingInput:__name(function(){var next=this.match;return next.length<20&&(next+=this._input.substr(0,20-next.length)),(next.substr(0,20)+(next.length>20?"...":"")).replace(/\n/g,"")},"upcomingInput"),showPosition:__name(function(){var pre=this.pastInput(),c=new Array(pre.length+1).join("-");return pre+this.upcomingInput()+"\n"+c+"^"},"showPosition"),test_match:__name(function(match,indexed_rule){var token,lines,backup;if(this.options.backtrack_lexer&&(backup={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&&(backup.yylloc.range=this.yylloc.range.slice(0))),(lines=match[0].match(/(?:\r\n?|\n).*/g))&&(this.yylineno+=lines.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:lines?lines[lines.length-1].length-lines[lines.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+match[0].length},this.yytext+=match[0],this.match+=match[0],this.matches=match,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(match[0].length),this.matched+=match[0],token=this.performAction.call(this,this.yy,this,indexed_rule,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),token)return token;if(this._backtrack){for(var k in backup)this[k]=backup[k];return!1}return!1},"test_match"),next:__name(function(){if(this.done)return this.EOF;var token,match,tempMatch,index;this._input||(this.done=!0),this._more||(this.yytext="",this.match="");for(var rules=this._currentRules(),i=0;i<rules.length;i++)if((tempMatch=this._input.match(this.rules[rules[i]]))&&(!match||tempMatch[0].length>match[0].length)){if(match=tempMatch,index=i,this.options.backtrack_lexer){if(!1!==(token=this.test_match(tempMatch,rules[i])))return token;if(this._backtrack){match=!1;continue}return!1}if(!this.options.flex)break}return match?!1!==(token=this.test_match(match,rules[index]))&&token:""===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:__name(function(){var r=this.next();return r||this.lex()},"lex"),begin:__name(function(condition){this.conditionStack.push(condition)},"begin"),popState:__name(function(){return this.conditionStack.length-1>0?this.conditionStack.pop():this.conditionStack[0]},"popState"),_currentRules:__name(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:__name(function(n){return(n=this.conditionStack.length-1-Math.abs(n||0))>=0?this.conditionStack[n]:"INITIAL"},"topState"),pushState:__name(function(condition){this.begin(condition)},"pushState"),stateStackSize:__name(function(){return this.conditionStack.length},"stateStackSize"),options:{"case-insensitive":!0},performAction:__name(function(yy,yy_,$avoiding_name_collisions,YY_START){switch($avoiding_name_collisions){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 11;case 37:return 64;case 38:return 10;case 39:case 40:return 65;case 41:return 14;case 42:return 13;case 43:return 67;case 44:return 66;case 45:return 12;case 46:return 8;case 47:return 5;case 48:return 18;case 49:return 56;case 50:return 63;case 51: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,/^(?::)/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],inclusive:!0}}}}();function Parser(){this.yy={}}return parser2.lexer=lexer,__name(Parser,"Parser"),Parser.prototype=parser2,parser2.Parser=Parser,new Parser}();parser.parser=parser;var quadrant_default=parser,defaultThemeVariables=getThemeVariables3(),QuadrantBuilder=(__name(_a=class{constructor(){this.classes=new Map,this.config=this.getDefaultConfig(),this.themeConfig=this.getDefaultThemeConfig(),this.data=this.getDefaultData()}getDefaultData(){return{titleText:"",quadrant1Text:"",quadrant2Text:"",quadrant3Text:"",quadrant4Text:"",xAxisLeftText:"",xAxisRightText:"",yAxisBottomText:"",yAxisTopText:"",points:[]}}getDefaultConfig(){var _a2,_b2,_c,_d,_e,_f,_g,_h,_i,_j,_k,_l,_m,_n,_o,_p,_q,_r;return{showXAxis:!0,showYAxis:!0,showTitle:!0,chartHeight:(null==(_a2=defaultConfig_default.quadrantChart)?void 0:_a2.chartWidth)||500,chartWidth:(null==(_b2=defaultConfig_default.quadrantChart)?void 0:_b2.chartHeight)||500,titlePadding:(null==(_c=defaultConfig_default.quadrantChart)?void 0:_c.titlePadding)||10,titleFontSize:(null==(_d=defaultConfig_default.quadrantChart)?void 0:_d.titleFontSize)||20,quadrantPadding:(null==(_e=defaultConfig_default.quadrantChart)?void 0:_e.quadrantPadding)||5,xAxisLabelPadding:(null==(_f=defaultConfig_default.quadrantChart)?void 0:_f.xAxisLabelPadding)||5,yAxisLabelPadding:(null==(_g=defaultConfig_default.quadrantChart)?void 0:_g.yAxisLabelPadding)||5,xAxisLabelFontSize:(null==(_h=defaultConfig_default.quadrantChart)?void 0:_h.xAxisLabelFontSize)||16,yAxisLabelFontSize:(null==(_i=defaultConfig_default.quadrantChart)?void 0:_i.yAxisLabelFontSize)||16,quadrantLabelFontSize:(null==(_j=defaultConfig_default.quadrantChart)?void 0:_j.quadrantLabelFontSize)||16,quadrantTextTopPadding:(null==(_k=defaultConfig_default.quadrantChart)?void 0:_k.quadrantTextTopPadding)||5,pointTextPadding:(null==(_l=defaultConfig_default.quadrantChart)?void 0:_l.pointTextPadding)||5,pointLabelFontSize:(null==(_m=defaultConfig_default.quadrantChart)?void 0:_m.pointLabelFontSize)||12,pointRadius:(null==(_n=defaultConfig_default.quadrantChart)?void 0:_n.pointRadius)||5,xAxisPosition:(null==(_o=defaultConfig_default.quadrantChart)?void 0:_o.xAxisPosition)||"top",yAxisPosition:(null==(_p=defaultConfig_default.quadrantChart)?void 0:_p.yAxisPosition)||"left",quadrantInternalBorderStrokeWidth:(null==(_q=defaultConfig_default.quadrantChart)?void 0:_q.quadrantInternalBorderStrokeWidth)||1,quadrantExternalBorderStrokeWidth:(null==(_r=defaultConfig_default.quadrantChart)?void 0:_r.quadrantExternalBorderStrokeWidth)||2}}getDefaultThemeConfig(){return{quadrant1Fill:defaultThemeVariables.quadrant1Fill,quadrant2Fill:defaultThemeVariables.quadrant2Fill,quadrant3Fill:defaultThemeVariables.quadrant3Fill,quadrant4Fill:defaultThemeVariables.quadrant4Fill,quadrant1TextFill:defaultThemeVariables.quadrant1TextFill,quadrant2TextFill:defaultThemeVariables.quadrant2TextFill,quadrant3TextFill:defaultThemeVariables.quadrant3TextFill,quadrant4TextFill:defaultThemeVariables.quadrant4TextFill,quadrantPointFill:defaultThemeVariables.quadrantPointFill,quadrantPointTextFill:defaultThemeVariables.quadrantPointTextFill,quadrantXAxisTextFill:defaultThemeVariables.quadrantXAxisTextFill,quadrantYAxisTextFill:defaultThemeVariables.quadrantYAxisTextFill,quadrantTitleFill:defaultThemeVariables.quadrantTitleFill,quadrantInternalBorderStrokeFill:defaultThemeVariables.quadrantInternalBorderStrokeFill,quadrantExternalBorderStrokeFill:defaultThemeVariables.quadrantExternalBorderStrokeFill}}clear(){this.config=this.getDefaultConfig(),this.themeConfig=this.getDefaultThemeConfig(),this.data=this.getDefaultData(),this.classes=new Map,log.info("clear called")}setData(data){this.data={...this.data,...data}}addPoints(points){this.data.points=[...points,...this.data.points]}addClass(className,styles){this.classes.set(className,styles)}setConfig(config2){log.trace("setConfig called with: ",config2),this.config={...this.config,...config2}}setThemeConfig(themeConfig){log.trace("setThemeConfig called with: ",themeConfig),this.themeConfig={...this.themeConfig,...themeConfig}}calculateSpace(xAxisPosition,showXAxis,showYAxis,showTitle){const xAxisSpaceCalculation=2*this.config.xAxisLabelPadding+this.config.xAxisLabelFontSize,xAxisSpace={top:"top"===xAxisPosition&&showXAxis?xAxisSpaceCalculation:0,bottom:"bottom"===xAxisPosition&&showXAxis?xAxisSpaceCalculation:0},yAxisSpaceCalculation=2*this.config.yAxisLabelPadding+this.config.yAxisLabelFontSize,yAxisSpace={left:"left"===this.config.yAxisPosition&&showYAxis?yAxisSpaceCalculation:0,right:"right"===this.config.yAxisPosition&&showYAxis?yAxisSpaceCalculation:0},titleSpaceCalculation=this.config.titleFontSize+2*this.config.titlePadding,titleSpace={top:showTitle?titleSpaceCalculation:0},quadrantLeft=this.config.quadrantPadding+yAxisSpace.left,quadrantTop=this.config.quadrantPadding+xAxisSpace.top+titleSpace.top,quadrantWidth=this.config.chartWidth-2*this.config.quadrantPadding-yAxisSpace.left-yAxisSpace.right,quadrantHeight=this.config.chartHeight-2*this.config.quadrantPadding-xAxisSpace.top-xAxisSpace.bottom-titleSpace.top;return{xAxisSpace:xAxisSpace,yAxisSpace:yAxisSpace,titleSpace:titleSpace,quadrantSpace:{quadrantLeft:quadrantLeft,quadrantTop:quadrantTop,quadrantWidth:quadrantWidth,quadrantHalfWidth:quadrantWidth/2,quadrantHeight:quadrantHeight,quadrantHalfHeight:quadrantHeight/2}}}getAxisLabels(xAxisPosition,showXAxis,showYAxis,spaceData){const{quadrantSpace:quadrantSpace,titleSpace:titleSpace}=spaceData,{quadrantHalfHeight:quadrantHalfHeight,quadrantHeight:quadrantHeight,quadrantLeft:quadrantLeft,quadrantHalfWidth:quadrantHalfWidth,quadrantTop:quadrantTop,quadrantWidth:quadrantWidth}=quadrantSpace,drawXAxisLabelsInMiddle=Boolean(this.data.xAxisRightText),drawYAxisLabelsInMiddle=Boolean(this.data.yAxisTopText),axisLabels=[];return this.data.xAxisLeftText&&showXAxis&&axisLabels.push({text:this.data.xAxisLeftText,fill:this.themeConfig.quadrantXAxisTextFill,x:quadrantLeft+(drawXAxisLabelsInMiddle?quadrantHalfWidth/2:0),y:"top"===xAxisPosition?this.config.xAxisLabelPadding+titleSpace.top:this.config.xAxisLabelPadding+quadrantTop+quadrantHeight+this.config.quadrantPadding,fontSize:this.config.xAxisLabelFontSize,verticalPos:drawXAxisLabelsInMiddle?"center":"left",horizontalPos:"top",rotation:0}),this.data.xAxisRightText&&showXAxis&&axisLabels.push({text:this.data.xAxisRightText,fill:this.themeConfig.quadrantXAxisTextFill,x:quadrantLeft+quadrantHalfWidth+(drawXAxisLabelsInMiddle?quadrantHalfWidth/2:0),y:"top"===xAxisPosition?this.config.xAxisLabelPadding+titleSpace.top:this.config.xAxisLabelPadding+quadrantTop+quadrantHeight+this.config.quadrantPadding,fontSize:this.config.xAxisLabelFontSize,verticalPos:drawXAxisLabelsInMiddle?"center":"left",horizontalPos:"top",rotation:0}),this.data.yAxisBottomText&&showYAxis&&axisLabels.push({text:this.data.yAxisBottomText,fill:this.themeConfig.quadrantYAxisTextFill,x:"left"===this.config.yAxisPosition?this.config.yAxisLabelPadding:this.config.yAxisLabelPadding+quadrantLeft+quadrantWidth+this.config.quadrantPadding,y:quadrantTop+quadrantHeight-(drawYAxisLabelsInMiddle?quadrantHalfHeight/2:0),fontSize:this.config.yAxisLabelFontSize,verticalPos:drawYAxisLabelsInMiddle?"center":"left",horizontalPos:"top",rotation:-90}),this.data.yAxisTopText&&showYAxis&&axisLabels.push({text:this.data.yAxisTopText,fill:this.themeConfig.quadrantYAxisTextFill,x:"left"===this.config.yAxisPosition?this.config.yAxisLabelPadding:this.config.yAxisLabelPadding+quadrantLeft+quadrantWidth+this.config.quadrantPadding,y:quadrantTop+quadrantHalfHeight-(drawYAxisLabelsInMiddle?quadrantHalfHeight/2:0),fontSize:this.config.yAxisLabelFontSize,verticalPos:drawYAxisLabelsInMiddle?"center":"left",horizontalPos:"top",rotation:-90}),axisLabels}getQuadrants(spaceData){const{quadrantSpace:quadrantSpace}=spaceData,{quadrantHalfHeight:quadrantHalfHeight,quadrantLeft:quadrantLeft,quadrantHalfWidth:quadrantHalfWidth,quadrantTop:quadrantTop}=quadrantSpace,quadrants=[{text:{text:this.data.quadrant1Text,fill:this.themeConfig.quadrant1TextFill,x:0,y:0,fontSize:this.config.quadrantLabelFontSize,verticalPos:"center",horizontalPos:"middle",rotation:0},x:quadrantLeft+quadrantHalfWidth,y:quadrantTop,width:quadrantHalfWidth,height:quadrantHalfHeight,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:quadrantLeft,y:quadrantTop,width:quadrantHalfWidth,height:quadrantHalfHeight,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:quadrantLeft,y:quadrantTop+quadrantHalfHeight,width:quadrantHalfWidth,height:quadrantHalfHeight,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:quadrantLeft+quadrantHalfWidth,y:quadrantTop+quadrantHalfHeight,width:quadrantHalfWidth,height:quadrantHalfHeight,fill:this.themeConfig.quadrant4Fill}];for(const quadrant of quadrants)quadrant.text.x=quadrant.x+quadrant.width/2,0===this.data.points.length?(quadrant.text.y=quadrant.y+quadrant.height/2,quadrant.text.horizontalPos="middle"):(quadrant.text.y=quadrant.y+this.config.quadrantTextTopPadding,quadrant.text.horizontalPos="top");return quadrants}getQuadrantPoints(spaceData){const{quadrantSpace:quadrantSpace}=spaceData,{quadrantHeight:quadrantHeight,quadrantLeft:quadrantLeft,quadrantTop:quadrantTop,quadrantWidth:quadrantWidth}=quadrantSpace,xAxis=linear().domain([0,1]).range([quadrantLeft,quadrantWidth+quadrantLeft]),yAxis=linear().domain([0,1]).range([quadrantHeight+quadrantTop,quadrantTop]);return this.data.points.map(point=>{const classStyles=this.classes.get(point.className);classStyles&&(point={...classStyles,...point});return{x:xAxis(point.x),y:yAxis(point.y),fill:point.color??this.themeConfig.quadrantPointFill,radius:point.radius??this.config.pointRadius,text:{text:point.text,fill:this.themeConfig.quadrantPointTextFill,x:xAxis(point.x),y:yAxis(point.y)+this.config.pointTextPadding,verticalPos:"center",horizontalPos:"top",fontSize:this.config.pointLabelFontSize,rotation:0},strokeColor:point.strokeColor??this.themeConfig.quadrantPointFill,strokeWidth:point.strokeWidth??"0px"}})}getBorders(spaceData){const halfExternalBorderWidth=this.config.quadrantExternalBorderStrokeWidth/2,{quadrantSpace:quadrantSpace}=spaceData,{quadrantHalfHeight:quadrantHalfHeight,quadrantHeight:quadrantHeight,quadrantLeft:quadrantLeft,quadrantHalfWidth:quadrantHalfWidth,quadrantTop:quadrantTop,quadrantWidth:quadrantWidth}=quadrantSpace;return[{strokeFill:this.themeConfig.quadrantExternalBorderStrokeFill,strokeWidth:this.config.quadrantExternalBorderStrokeWidth,x1:quadrantLeft-halfExternalBorderWidth,y1:quadrantTop,x2:quadrantLeft+quadrantWidth+halfExternalBorderWidth,y2:quadrantTop},{strokeFill:this.themeConfig.quadrantExternalBorderStrokeFill,strokeWidth:this.config.quadrantExternalBorderStrokeWidth,x1:quadrantLeft+quadrantWidth,y1:quadrantTop+halfExternalBorderWidth,x2:quadrantLeft+quadrantWidth,y2:quadrantTop+quadrantHeight-halfExternalBorderWidth},{strokeFill:this.themeConfig.quadrantExternalBorderStrokeFill,strokeWidth:this.config.quadrantExternalBorderStrokeWidth,x1:quadrantLeft-halfExternalBorderWidth,y1:quadrantTop+quadrantHeight,x2:quadrantLeft+quadrantWidth+halfExternalBorderWidth,y2:quadrantTop+quadrantHeight},{strokeFill:this.themeConfig.quadrantExternalBorderStrokeFill,strokeWidth:this.config.quadrantExternalBorderStrokeWidth,x1:quadrantLeft,y1:quadrantTop+halfExternalBorderWidth,x2:quadrantLeft,y2:quadrantTop+quadrantHeight-halfExternalBorderWidth},{strokeFill:this.themeConfig.quadrantInternalBorderStrokeFill,strokeWidth:this.config.quadrantInternalBorderStrokeWidth,x1:quadrantLeft+quadrantHalfWidth,y1:quadrantTop+halfExternalBorderWidth,x2:quadrantLeft+quadrantHalfWidth,y2:quadrantTop+quadrantHeight-halfExternalBorderWidth},{strokeFill:this.themeConfig.quadrantInternalBorderStrokeFill,strokeWidth:this.config.quadrantInternalBorderStrokeWidth,x1:quadrantLeft+halfExternalBorderWidth,y1:quadrantTop+quadrantHalfHeight,x2:quadrantLeft+quadrantWidth-halfExternalBorderWidth,y2:quadrantTop+quadrantHalfHeight}]}getTitle(showTitle){if(showTitle)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 showXAxis=this.config.showXAxis&&!(!this.data.xAxisLeftText&&!this.data.xAxisRightText),showYAxis=this.config.showYAxis&&!(!this.data.yAxisTopText&&!this.data.yAxisBottomText),showTitle=this.config.showTitle&&!!this.data.titleText,xAxisPosition=this.data.points.length>0?"bottom":this.config.xAxisPosition,calculatedSpace=this.calculateSpace(xAxisPosition,showXAxis,showYAxis,showTitle);return{points:this.getQuadrantPoints(calculatedSpace),quadrants:this.getQuadrants(calculatedSpace),axisLabels:this.getAxisLabels(xAxisPosition,showXAxis,showYAxis,calculatedSpace),borderLines:this.getBorders(calculatedSpace),title:this.getTitle(showTitle)}}},"QuadrantBuilder"),_a),InvalidStyleError=(_b=class extends Error{constructor(style,value,type){super(`value for ${style} ${value} is invalid, please use a valid ${type}`),this.name="InvalidStyleError"}},__name(_b,"InvalidStyleError"),_b);function validateHexCode(value){return!/^#?([\dA-Fa-f]{6}|[\dA-Fa-f]{3})$/.test(value)}function validateNumber(value){return!/^\d+$/.test(value)}function validateSizeInPixels(value){return!/^\d+px$/.test(value)}__name(validateHexCode,"validateHexCode"),__name(validateNumber,"validateNumber"),__name(validateSizeInPixels,"validateSizeInPixels");var config=getConfig2();function textSanitizer(text){return sanitizeText(text.trim(),config)}__name(textSanitizer,"textSanitizer");var quadrantBuilder=new QuadrantBuilder;function setQuadrant1Text(textObj){quadrantBuilder.setData({quadrant1Text:textSanitizer(textObj.text)})}function setQuadrant2Text(textObj){quadrantBuilder.setData({quadrant2Text:textSanitizer(textObj.text)})}function setQuadrant3Text(textObj){quadrantBuilder.setData({quadrant3Text:textSanitizer(textObj.text)})}function setQuadrant4Text(textObj){quadrantBuilder.setData({quadrant4Text:textSanitizer(textObj.text)})}function setXAxisLeftText(textObj){quadrantBuilder.setData({xAxisLeftText:textSanitizer(textObj.text)})}function setXAxisRightText(textObj){quadrantBuilder.setData({xAxisRightText:textSanitizer(textObj.text)})}function setYAxisTopText(textObj){quadrantBuilder.setData({yAxisTopText:textSanitizer(textObj.text)})}function setYAxisBottomText(textObj){quadrantBuilder.setData({yAxisBottomText:textSanitizer(textObj.text)})}function parseStyles(styles){const stylesObject={};for(const style of styles){const[key,value]=style.trim().split(/\s*:\s*/);if("radius"===key){if(validateNumber(value))throw new InvalidStyleError(key,value,"number");stylesObject.radius=parseInt(value)}else if("color"===key){if(validateHexCode(value))throw new InvalidStyleError(key,value,"hex code");stylesObject.color=value}else if("stroke-color"===key){if(validateHexCode(value))throw new InvalidStyleError(key,value,"hex code");stylesObject.strokeColor=value}else{if("stroke-width"!==key)throw new Error(`style named ${key} is not supported.`);if(validateSizeInPixels(value))throw new InvalidStyleError(key,value,"number of pixels (eg. 10px)");stylesObject.strokeWidth=value}}return stylesObject}function addPoint(textObj,className,x,y,styles){const stylesObject=parseStyles(styles);quadrantBuilder.addPoints([{x:x,y:y,text:textSanitizer(textObj.text),className:className,...stylesObject}])}function addClass(className,styles){quadrantBuilder.addClass(className,parseStyles(styles))}function setWidth(width){quadrantBuilder.setConfig({chartWidth:width})}function setHeight(height){quadrantBuilder.setConfig({chartHeight:height})}function getQuadrantData(){const config2=getConfig2(),{themeVariables:themeVariables,quadrantChart:quadrantChartConfig}=config2;return quadrantChartConfig&&quadrantBuilder.setConfig(quadrantChartConfig),quadrantBuilder.setThemeConfig({quadrant1Fill:themeVariables.quadrant1Fill,quadrant2Fill:themeVariables.quadrant2Fill,quadrant3Fill:themeVariables.quadrant3Fill,quadrant4Fill:themeVariables.quadrant4Fill,quadrant1TextFill:themeVariables.quadrant1TextFill,quadrant2TextFill:themeVariables.quadrant2TextFill,quadrant3TextFill:themeVariables.quadrant3TextFill,quadrant4TextFill:themeVariables.quadrant4TextFill,quadrantPointFill:themeVariables.quadrantPointFill,quadrantPointTextFill:themeVariables.quadrantPointTextFill,quadrantXAxisTextFill:themeVariables.quadrantXAxisTextFill,quadrantYAxisTextFill:themeVariables.quadrantYAxisTextFill,quadrantExternalBorderStrokeFill:themeVariables.quadrantExternalBorderStrokeFill,quadrantInternalBorderStrokeFill:themeVariables.quadrantInternalBorderStrokeFill,quadrantTitleFill:themeVariables.quadrantTitleFill}),quadrantBuilder.setData({titleText:getDiagramTitle()}),quadrantBuilder.build()}__name(setQuadrant1Text,"setQuadrant1Text"),__name(setQuadrant2Text,"setQuadrant2Text"),__name(setQuadrant3Text,"setQuadrant3Text"),__name(setQuadrant4Text,"setQuadrant4Text"),__name(setXAxisLeftText,"setXAxisLeftText"),__name(setXAxisRightText,"setXAxisRightText"),__name(setYAxisTopText,"setYAxisTopText"),__name(setYAxisBottomText,"setYAxisBottomText"),__name(parseStyles,"parseStyles"),__name(addPoint,"addPoint"),__name(addClass,"addClass"),__name(setWidth,"setWidth"),__name(setHeight,"setHeight"),__name(getQuadrantData,"getQuadrantData");var diagram={parser:quadrant_default,db:{setWidth:setWidth,setHeight:setHeight,setQuadrant1Text:setQuadrant1Text,setQuadrant2Text:setQuadrant2Text,setQuadrant3Text:setQuadrant3Text,setQuadrant4Text:setQuadrant4Text,setXAxisLeftText:setXAxisLeftText,setXAxisRightText:setXAxisRightText,setYAxisTopText:setYAxisTopText,setYAxisBottomText:setYAxisBottomText,parseStyles:parseStyles,addPoint:addPoint,addClass:addClass,getQuadrantData:getQuadrantData,clear:__name(function(){quadrantBuilder.clear(),clear()},"clear"),setAccTitle:setAccTitle,getAccTitle:getAccTitle,setDiagramTitle:setDiagramTitle,getDiagramTitle:getDiagramTitle,getAccDescription:getAccDescription,setAccDescription:setAccDescription},renderer:{draw:__name((txt,id,_version,diagObj)=>{var _a2,_b2,_c;function getDominantBaseLine(horizontalPos){return"top"===horizontalPos?"hanging":"middle"}function getTextAnchor(verticalPos){return"left"===verticalPos?"start":"middle"}function getTransformation(data){return`translate(${data.x}, ${data.y}) rotate(${data.rotation||0})`}__name(getDominantBaseLine,"getDominantBaseLine"),__name(getTextAnchor,"getTextAnchor"),__name(getTransformation,"getTransformation");const conf=getConfig2();log.debug("Rendering quadrant chart\n"+txt);const securityLevel=conf.securityLevel;let sandboxElement;"sandbox"===securityLevel&&(sandboxElement=select("#i"+id));const svg=select("sandbox"===securityLevel?sandboxElement.nodes()[0].contentDocument.body:"body").select(`[id="${id}"]`),group=svg.append("g").attr("class","main"),width=(null==(_a2=conf.quadrantChart)?void 0:_a2.chartWidth)??500,height=(null==(_b2=conf.quadrantChart)?void 0:_b2.chartHeight)??500;configureSvgSize(svg,height,width,(null==(_c=conf.quadrantChart)?void 0:_c.useMaxWidth)??!0),svg.attr("viewBox","0 0 "+width+" "+height),diagObj.db.setHeight(height),diagObj.db.setWidth(width);const quadrantData=diagObj.db.getQuadrantData(),quadrantsGroup=group.append("g").attr("class","quadrants"),borderGroup=group.append("g").attr("class","border"),dataPointGroup=group.append("g").attr("class","data-points"),labelGroup=group.append("g").attr("class","labels"),titleGroup=group.append("g").attr("class","title");quadrantData.title&&titleGroup.append("text").attr("x",0).attr("y",0).attr("fill",quadrantData.title.fill).attr("font-size",quadrantData.title.fontSize).attr("dominant-baseline",getDominantBaseLine(quadrantData.title.horizontalPos)).attr("text-anchor",getTextAnchor(quadrantData.title.verticalPos)).attr("transform",getTransformation(quadrantData.title)).text(quadrantData.title.text),quadrantData.borderLines&&borderGroup.selectAll("line").data(quadrantData.borderLines).enter().append("line").attr("x1",data=>data.x1).attr("y1",data=>data.y1).attr("x2",data=>data.x2).attr("y2",data=>data.y2).style("stroke",data=>data.strokeFill).style("stroke-width",data=>data.strokeWidth);const quadrants=quadrantsGroup.selectAll("g.quadrant").data(quadrantData.quadrants).enter().append("g").attr("class","quadrant");quadrants.append("rect").attr("x",data=>data.x).attr("y",data=>data.y).attr("width",data=>data.width).attr("height",data=>data.height).attr("fill",data=>data.fill),quadrants.append("text").attr("x",0).attr("y",0).attr("fill",data=>data.text.fill).attr("font-size",data=>data.text.fontSize).attr("dominant-baseline",data=>getDominantBaseLine(data.text.horizontalPos)).attr("text-anchor",data=>getTextAnchor(data.text.verticalPos)).attr("transform",data=>getTransformation(data.text)).text(data=>data.text.text);labelGroup.selectAll("g.label").data(quadrantData.axisLabels).enter().append("g").attr("class","label").append("text").attr("x",0).attr("y",0).text(data=>data.text).attr("fill",data=>data.fill).attr("font-size",data=>data.fontSize).attr("dominant-baseline",data=>getDominantBaseLine(data.horizontalPos)).attr("text-anchor",data=>getTextAnchor(data.verticalPos)).attr("transform",data=>getTransformation(data));const dataPoints=dataPointGroup.selectAll("g.data-point").data(quadrantData.points).enter().append("g").attr("class","data-point");dataPoints.append("circle").attr("cx",data=>data.x).attr("cy",data=>data.y).attr("r",data=>data.radius).attr("fill",data=>data.fill).attr("stroke",data=>data.strokeColor).attr("stroke-width",data=>data.strokeWidth),dataPoints.append("text").attr("x",0).attr("y",0).text(data=>data.text.text).attr("fill",data=>data.text.fill).attr("font-size",data=>data.text.fontSize).attr("dominant-baseline",data=>getDominantBaseLine(data.text.horizontalPos)).attr("text-anchor",data=>getTextAnchor(data.text.verticalPos)).attr("transform",data=>getTransformation(data.text))},"draw")},styles:__name(()=>"","styles")};export{diagram};
@@ -1 +0,0 @@
1
- var _a,_b,_c;import{p as setDiagramTitle,q as getDiagramTitle,s as setAccDescription,g as getAccDescription,b as setAccTitle,a as getAccTitle,_ as __name,c as getConfig2,z as defaultConfig2,d as select,X as setupGraphViewbox,y as clear,k as common_default}from"./mermaid.core-DH-GfeNS.js";import{o as ordinal}from"./ordinal-DA-_8pMy.js";import"./vendor-mdxeditor-DG0Nyxw5.js";import"./vendor-antd-DeqwrDxf.js";import"./vendor-codemirror-_NbrtdQc.js";import"./vendor-markdown-DOJHsAxX.js";import"./init-DMZMl1PR.js";const d3schemeTableau10=function(specifier){for(var n=specifier.length/6|0,colors2=new Array(n),i=0;i<n;)colors2[i]="#"+specifier.slice(6*i,6*++i);return colors2}("4e79a7f28e2ce1575976b7b259a14fedc949af7aa1ff9da79c755fbab0ab");function max(values,valueof){let max2;if(void 0===valueof)for(const value2 of values)null!=value2&&(max2<value2||void 0===max2&&value2>=value2)&&(max2=value2);else{let index=-1;for(let value2 of values)null!=(value2=valueof(value2,++index,values))&&(max2<value2||void 0===max2&&value2>=value2)&&(max2=value2)}return max2}function min(values,valueof){let min2;if(void 0===valueof)for(const value2 of values)null!=value2&&(min2>value2||void 0===min2&&value2>=value2)&&(min2=value2);else{let index=-1;for(let value2 of values)null!=(value2=valueof(value2,++index,values))&&(min2>value2||void 0===min2&&value2>=value2)&&(min2=value2)}return min2}function sum(values,valueof){let sum2=0;if(void 0===valueof)for(let value2 of values)(value2=+value2)&&(sum2+=value2);else{let index=-1;for(let value2 of values)(value2=+valueof(value2,++index,values))&&(sum2+=value2)}return sum2}function targetDepth(d){return d.target.depth}function justify(node,n){return node.sourceLinks.length?node.depth:n-1}function constant$1(x2){return function(){return x2}}function ascendingSourceBreadth(a,b){return ascendingBreadth(a.source,b.source)||a.index-b.index}function ascendingTargetBreadth(a,b){return ascendingBreadth(a.target,b.target)||a.index-b.index}function ascendingBreadth(a,b){return a.y0-b.y0}function value(d){return d.value}function defaultId(d){return d.index}function defaultNodes(graph){return graph.nodes}function defaultLinks(graph){return graph.links}function find(nodeById,id){const node=nodeById.get(id);if(!node)throw new Error("missing: "+id);return node}function computeLinkBreadths({nodes:nodes2}){for(const node of nodes2){let y0=node.y0,y1=y0;for(const link2 of node.sourceLinks)link2.y0=y0+link2.width/2,y0+=link2.width;for(const link2 of node.targetLinks)link2.y1=y1+link2.width/2,y1+=link2.width}}function Sankey(){let py,sort,linkSort,x0=0,y0=0,x1=1,y1=1,dx=24,dy=8,id=defaultId,align=justify,nodes2=defaultNodes,links2=defaultLinks,iterations=6;function sankey(){const graph={nodes:nodes2.apply(null,arguments),links:links2.apply(null,arguments)};return function({nodes:nodes3,links:links3}){for(const[i,node]of nodes3.entries())node.index=i,node.sourceLinks=[],node.targetLinks=[];const nodeById=new Map(nodes3.map((d,i)=>[id(d,i,nodes3),d]));for(const[i,link2]of links3.entries()){link2.index=i;let{source:source,target:target}=link2;"object"!=typeof source&&(source=link2.source=find(nodeById,source)),"object"!=typeof target&&(target=link2.target=find(nodeById,target)),source.sourceLinks.push(link2),target.targetLinks.push(link2)}if(null!=linkSort)for(const{sourceLinks:sourceLinks,targetLinks:targetLinks}of nodes3)sourceLinks.sort(linkSort),targetLinks.sort(linkSort)}(graph),function({nodes:nodes3}){for(const node of nodes3)node.value=void 0===node.fixedValue?Math.max(sum(node.sourceLinks,value),sum(node.targetLinks,value)):node.fixedValue}(graph),function({nodes:nodes3}){const n=nodes3.length;let current=new Set(nodes3),next=new Set,x2=0;for(;current.size;){for(const node of current){node.depth=x2;for(const{target:target}of node.sourceLinks)next.add(target)}if(++x2>n)throw new Error("circular link");current=next,next=new Set}}(graph),function({nodes:nodes3}){const n=nodes3.length;let current=new Set(nodes3),next=new Set,x2=0;for(;current.size;){for(const node of current){node.height=x2;for(const{source:source}of node.targetLinks)next.add(source)}if(++x2>n)throw new Error("circular link");current=next,next=new Set}}(graph),function(graph){const columns=function({nodes:nodes3}){const x2=max(nodes3,d=>d.depth)+1,kx=(x1-x0-dx)/(x2-1),columns=new Array(x2);for(const node of nodes3){const i=Math.max(0,Math.min(x2-1,Math.floor(align.call(null,node,x2))));node.layer=i,node.x0=x0+i*kx,node.x1=node.x0+dx,columns[i]?columns[i].push(node):columns[i]=[node]}if(sort)for(const column of columns)column.sort(sort);return columns}(graph);py=Math.min(dy,(y1-y0)/(max(columns,c=>c.length)-1)),function(columns){const ky=min(columns,c=>(y1-y0-(c.length-1)*py)/sum(c,value));for(const nodes3 of columns){let y2=y0;for(const node of nodes3){node.y0=y2,node.y1=y2+node.value*ky,y2=node.y1+py;for(const link2 of node.sourceLinks)link2.width=link2.value*ky}y2=(y1-y2+py)/(nodes3.length+1);for(let i=0;i<nodes3.length;++i){const node=nodes3[i];node.y0+=y2*(i+1),node.y1+=y2*(i+1)}reorderLinks(nodes3)}}(columns);for(let i=0;i<iterations;++i){const alpha=Math.pow(.99,i),beta=Math.max(1-alpha,(i+1)/iterations);relaxRightToLeft(columns,alpha,beta),relaxLeftToRight(columns,alpha,beta)}}(graph),computeLinkBreadths(graph),graph}function relaxLeftToRight(columns,alpha,beta){for(let i=1,n=columns.length;i<n;++i){const column=columns[i];for(const target of column){let y2=0,w=0;for(const{source:source,value:value2}of target.targetLinks){let v=value2*(target.layer-source.layer);y2+=targetTop(source,target)*v,w+=v}if(!(w>0))continue;let dy2=(y2/w-target.y0)*alpha;target.y0+=dy2,target.y1+=dy2,reorderNodeLinks(target)}void 0===sort&&column.sort(ascendingBreadth),resolveCollisions(column,beta)}}function relaxRightToLeft(columns,alpha,beta){for(let i=columns.length-2;i>=0;--i){const column=columns[i];for(const source of column){let y2=0,w=0;for(const{target:target,value:value2}of source.sourceLinks){let v=value2*(target.layer-source.layer);y2+=sourceTop(source,target)*v,w+=v}if(!(w>0))continue;let dy2=(y2/w-source.y0)*alpha;source.y0+=dy2,source.y1+=dy2,reorderNodeLinks(source)}void 0===sort&&column.sort(ascendingBreadth),resolveCollisions(column,beta)}}function resolveCollisions(nodes3,alpha){const i=nodes3.length>>1,subject=nodes3[i];resolveCollisionsBottomToTop(nodes3,subject.y0-py,i-1,alpha),resolveCollisionsTopToBottom(nodes3,subject.y1+py,i+1,alpha),resolveCollisionsBottomToTop(nodes3,y1,nodes3.length-1,alpha),resolveCollisionsTopToBottom(nodes3,y0,0,alpha)}function resolveCollisionsTopToBottom(nodes3,y2,i,alpha){for(;i<nodes3.length;++i){const node=nodes3[i],dy2=(y2-node.y0)*alpha;dy2>1e-6&&(node.y0+=dy2,node.y1+=dy2),y2=node.y1+py}}function resolveCollisionsBottomToTop(nodes3,y2,i,alpha){for(;i>=0;--i){const node=nodes3[i],dy2=(node.y1-y2)*alpha;dy2>1e-6&&(node.y0-=dy2,node.y1-=dy2),y2=node.y0-py}}function reorderNodeLinks({sourceLinks:sourceLinks,targetLinks:targetLinks}){if(void 0===linkSort){for(const{source:{sourceLinks:sourceLinks2}}of targetLinks)sourceLinks2.sort(ascendingTargetBreadth);for(const{target:{targetLinks:targetLinks2}}of sourceLinks)targetLinks2.sort(ascendingSourceBreadth)}}function reorderLinks(nodes3){if(void 0===linkSort)for(const{sourceLinks:sourceLinks,targetLinks:targetLinks}of nodes3)sourceLinks.sort(ascendingTargetBreadth),targetLinks.sort(ascendingSourceBreadth)}function targetTop(source,target){let y2=source.y0-(source.sourceLinks.length-1)*py/2;for(const{target:node,width:width}of source.sourceLinks){if(node===target)break;y2+=width+py}for(const{source:node,width:width}of target.targetLinks){if(node===source)break;y2-=width}return y2}function sourceTop(source,target){let y2=target.y0-(target.targetLinks.length-1)*py/2;for(const{source:node,width:width}of target.targetLinks){if(node===source)break;y2+=width+py}for(const{target:node,width:width}of source.sourceLinks){if(node===target)break;y2-=width}return y2}return sankey.update=function(graph){return computeLinkBreadths(graph),graph},sankey.nodeId=function(_){return arguments.length?(id="function"==typeof _?_:constant$1(_),sankey):id},sankey.nodeAlign=function(_){return arguments.length?(align="function"==typeof _?_:constant$1(_),sankey):align},sankey.nodeSort=function(_){return arguments.length?(sort=_,sankey):sort},sankey.nodeWidth=function(_){return arguments.length?(dx=+_,sankey):dx},sankey.nodePadding=function(_){return arguments.length?(dy=py=+_,sankey):dy},sankey.nodes=function(_){return arguments.length?(nodes2="function"==typeof _?_:constant$1(_),sankey):nodes2},sankey.links=function(_){return arguments.length?(links2="function"==typeof _?_:constant$1(_),sankey):links2},sankey.linkSort=function(_){return arguments.length?(linkSort=_,sankey):linkSort},sankey.size=function(_){return arguments.length?(x0=y0=0,x1=+_[0],y1=+_[1],sankey):[x1-x0,y1-y0]},sankey.extent=function(_){return arguments.length?(x0=+_[0][0],x1=+_[1][0],y0=+_[0][1],y1=+_[1][1],sankey):[[x0,y0],[x1,y1]]},sankey.iterations=function(_){return arguments.length?(iterations=+_,sankey):iterations},sankey}var pi=Math.PI,tau=2*pi,tauEpsilon=tau-1e-6;function Path(){this._x0=this._y0=this._x1=this._y1=null,this._=""}function path(){return new Path}function constant(x2){return function(){return x2}}function x(p){return p[0]}function y(p){return p[1]}Path.prototype=path.prototype={constructor:Path,moveTo:function(x2,y2){this._+="M"+(this._x0=this._x1=+x2)+","+(this._y0=this._y1=+y2)},closePath:function(){null!==this._x1&&(this._x1=this._x0,this._y1=this._y0,this._+="Z")},lineTo:function(x2,y2){this._+="L"+(this._x1=+x2)+","+(this._y1=+y2)},quadraticCurveTo:function(x1,y1,x2,y2){this._+="Q"+ +x1+","+ +y1+","+(this._x1=+x2)+","+(this._y1=+y2)},bezierCurveTo:function(x1,y1,x2,y2,x3,y3){this._+="C"+ +x1+","+ +y1+","+ +x2+","+ +y2+","+(this._x1=+x3)+","+(this._y1=+y3)},arcTo:function(x1,y1,x2,y2,r){x1=+x1,y1=+y1,x2=+x2,y2=+y2,r=+r;var x0=this._x1,y0=this._y1,x21=x2-x1,y21=y2-y1,x01=x0-x1,y01=y0-y1,l01_2=x01*x01+y01*y01;if(r<0)throw new Error("negative radius: "+r);if(null===this._x1)this._+="M"+(this._x1=x1)+","+(this._y1=y1);else if(l01_2>1e-6)if(Math.abs(y01*x21-y21*x01)>1e-6&&r){var x20=x2-x0,y20=y2-y0,l21_2=x21*x21+y21*y21,l20_2=x20*x20+y20*y20,l21=Math.sqrt(l21_2),l01=Math.sqrt(l01_2),l=r*Math.tan((pi-Math.acos((l21_2+l01_2-l20_2)/(2*l21*l01)))/2),t01=l/l01,t21=l/l21;Math.abs(t01-1)>1e-6&&(this._+="L"+(x1+t01*x01)+","+(y1+t01*y01)),this._+="A"+r+","+r+",0,0,"+ +(y01*x20>x01*y20)+","+(this._x1=x1+t21*x21)+","+(this._y1=y1+t21*y21)}else this._+="L"+(this._x1=x1)+","+(this._y1=y1);else;},arc:function(x2,y2,r,a0,a1,ccw){x2=+x2,y2=+y2,ccw=!!ccw;var dx=(r=+r)*Math.cos(a0),dy=r*Math.sin(a0),x0=x2+dx,y0=y2+dy,cw=1^ccw,da=ccw?a0-a1:a1-a0;if(r<0)throw new Error("negative radius: "+r);null===this._x1?this._+="M"+x0+","+y0:(Math.abs(this._x1-x0)>1e-6||Math.abs(this._y1-y0)>1e-6)&&(this._+="L"+x0+","+y0),r&&(da<0&&(da=da%tau+tau),da>tauEpsilon?this._+="A"+r+","+r+",0,1,"+cw+","+(x2-dx)+","+(y2-dy)+"A"+r+","+r+",0,1,"+cw+","+(this._x1=x0)+","+(this._y1=y0):da>1e-6&&(this._+="A"+r+","+r+",0,"+ +(da>=pi)+","+cw+","+(this._x1=x2+r*Math.cos(a1))+","+(this._y1=y2+r*Math.sin(a1))))},rect:function(x2,y2,w,h){this._+="M"+(this._x0=this._x1=+x2)+","+(this._y0=this._y1=+y2)+"h"+ +w+"v"+ +h+"h"+-w+"Z"},toString:function(){return this._}};var slice=Array.prototype.slice;function linkSource(d){return d.source}function linkTarget(d){return d.target}function curveHorizontal(context,x0,y0,x1,y1){context.moveTo(x0,y0),context.bezierCurveTo(x0=(x0+x1)/2,y0,x0,y1,x1,y1)}function linkHorizontal(){return function(curve){var source=linkSource,target=linkTarget,x$1=x,y$1=y,context=null;function link2(){var buffer,argv=slice.call(arguments),s=source.apply(this,argv),t=target.apply(this,argv);if(context||(context=buffer=path()),curve(context,+x$1.apply(this,(argv[0]=s,argv)),+y$1.apply(this,argv),+x$1.apply(this,(argv[0]=t,argv)),+y$1.apply(this,argv)),buffer)return context=null,buffer+""||null}return link2.source=function(_){return arguments.length?(source=_,link2):source},link2.target=function(_){return arguments.length?(target=_,link2):target},link2.x=function(_){return arguments.length?(x$1="function"==typeof _?_:constant(+_),link2):x$1},link2.y=function(_){return arguments.length?(y$1="function"==typeof _?_:constant(+_),link2):y$1},link2.context=function(_){return arguments.length?(context=null==_?null:_,link2):context},link2}(curveHorizontal)}function horizontalSource(d){return[d.source.x1,d.y0]}function horizontalTarget(d){return[d.target.x0,d.y1]}var parser=function(){var o=__name(function(k,v,o2,l){for(o2=o2||{},l=k.length;l--;o2[k[l]]=v);return o2},"o"),$V0=[1,9],$V1=[1,10],$V2=[1,5,10,12],parser2={trace:__name(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:__name(function(yytext,yyleng,yylineno,yy,yystate,$$,_$){var $0=$$.length-1;switch(yystate){case 7:const source=yy.findOrCreateNode($$[$0-4].trim().replaceAll('""','"')),target=yy.findOrCreateNode($$[$0-2].trim().replaceAll('""','"')),value2=parseFloat($$[$0].trim());yy.addLink(source,target,value2);break;case 8:case 9:case 11:this.$=$$[$0];break;case 10:this.$=$$[$0-1]}},"anonymous"),table:[{3:1,4:[1,2]},{1:[3]},{5:[1,3]},{6:4,8:5,15:6,16:7,17:8,18:$V0,20:$V1},{1:[2,6],7:11,10:[1,12]},o($V1,[2,4],{9:13,5:[1,14]}),{12:[1,15]},o($V2,[2,8]),o($V2,[2,9]),{19:[1,16]},o($V2,[2,11]),{1:[2,1]},{1:[2,5]},o($V1,[2,2]),{6:17,8:5,15:6,16:7,17:8,18:$V0,20:$V1},{15:18,16:7,17:8,18:$V0,20:$V1},{18:[1,19]},o($V1,[2,3]),{12:[1,20]},o($V2,[2,10]),{15:21,16:7,17:8,18:$V0,20:$V1},o([1,5,10],[2,7])],defaultActions:{11:[2,1],12:[2,5]},parseError:__name(function(str,hash){if(!hash.recoverable){var error=new Error(str);throw error.hash=hash,error}this.trace(str)},"parseError"),parse:__name(function(input){var self=this,stack=[0],tstack=[],vstack=[null],lstack=[],table=this.table,yytext="",yylineno=0,yyleng=0,args=lstack.slice.call(arguments,1),lexer2=Object.create(this.lexer),sharedState={yy:{}};for(var k in this.yy)Object.prototype.hasOwnProperty.call(this.yy,k)&&(sharedState.yy[k]=this.yy[k]);lexer2.setInput(input,sharedState.yy),sharedState.yy.lexer=lexer2,sharedState.yy.parser=this,void 0===lexer2.yylloc&&(lexer2.yylloc={});var yyloc=lexer2.yylloc;lstack.push(yyloc);var ranges=lexer2.options&&lexer2.options.ranges;function lex(){var token;return"number"!=typeof(token=tstack.pop()||lexer2.lex()||1)&&(token instanceof Array&&(token=(tstack=token).pop()),token=self.symbols_[token]||token),token}"function"==typeof sharedState.yy.parseError?this.parseError=sharedState.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError,__name(function(n){stack.length=stack.length-2*n,vstack.length=vstack.length-n,lstack.length=lstack.length-n},"popStack"),__name(lex,"lex");for(var symbol,state,action,r,p,len,newState,expected,yyval={};;){if(state=stack[stack.length-1],this.defaultActions[state]?action=this.defaultActions[state]:(null==symbol&&(symbol=lex()),action=table[state]&&table[state][symbol]),void 0===action||!action.length||!action[0]){var errStr="";for(p in expected=[],table[state])this.terminals_[p]&&p>2&&expected.push("'"+this.terminals_[p]+"'");errStr=lexer2.showPosition?"Parse error on line "+(yylineno+1)+":\n"+lexer2.showPosition()+"\nExpecting "+expected.join(", ")+", got '"+(this.terminals_[symbol]||symbol)+"'":"Parse error on line "+(yylineno+1)+": Unexpected "+(1==symbol?"end of input":"'"+(this.terminals_[symbol]||symbol)+"'"),this.parseError(errStr,{text:lexer2.match,token:this.terminals_[symbol]||symbol,line:lexer2.yylineno,loc:yyloc,expected:expected})}if(action[0]instanceof Array&&action.length>1)throw new Error("Parse Error: multiple actions possible at state: "+state+", token: "+symbol);switch(action[0]){case 1:stack.push(symbol),vstack.push(lexer2.yytext),lstack.push(lexer2.yylloc),stack.push(action[1]),symbol=null,yyleng=lexer2.yyleng,yytext=lexer2.yytext,yylineno=lexer2.yylineno,yyloc=lexer2.yylloc;break;case 2:if(len=this.productions_[action[1]][1],yyval.$=vstack[vstack.length-len],yyval._$={first_line:lstack[lstack.length-(len||1)].first_line,last_line:lstack[lstack.length-1].last_line,first_column:lstack[lstack.length-(len||1)].first_column,last_column:lstack[lstack.length-1].last_column},ranges&&(yyval._$.range=[lstack[lstack.length-(len||1)].range[0],lstack[lstack.length-1].range[1]]),void 0!==(r=this.performAction.apply(yyval,[yytext,yyleng,yylineno,sharedState.yy,action[1],vstack,lstack].concat(args))))return r;len&&(stack=stack.slice(0,-1*len*2),vstack=vstack.slice(0,-1*len),lstack=lstack.slice(0,-1*len)),stack.push(this.productions_[action[1]][0]),vstack.push(yyval.$),lstack.push(yyval._$),newState=table[stack[stack.length-2]][stack[stack.length-1]],stack.push(newState);break;case 3:return!0}}return!0},"parse")},lexer=function(){return{EOF:1,parseError:__name(function(str,hash){if(!this.yy.parser)throw new Error(str);this.yy.parser.parseError(str,hash)},"parseError"),setInput:__name(function(input,yy){return this.yy=yy||this.yy||{},this._input=input,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:__name(function(){var ch=this._input[0];return this.yytext+=ch,this.yyleng++,this.offset++,this.match+=ch,this.matched+=ch,ch.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),ch},"input"),unput:__name(function(ch){var len=ch.length,lines=ch.split(/(?:\r\n?|\n)/g);this._input=ch+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-len),this.offset-=len;var oldLines=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),lines.length-1&&(this.yylineno-=lines.length-1);var r=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:lines?(lines.length===oldLines.length?this.yylloc.first_column:0)+oldLines[oldLines.length-lines.length].length-lines[0].length:this.yylloc.first_column-len},this.options.ranges&&(this.yylloc.range=[r[0],r[0]+this.yyleng-len]),this.yyleng=this.yytext.length,this},"unput"),more:__name(function(){return this._more=!0,this},"more"),reject:__name(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:__name(function(n){this.unput(this.match.slice(n))},"less"),pastInput:__name(function(){var past=this.matched.substr(0,this.matched.length-this.match.length);return(past.length>20?"...":"")+past.substr(-20).replace(/\n/g,"")},"pastInput"),upcomingInput:__name(function(){var next=this.match;return next.length<20&&(next+=this._input.substr(0,20-next.length)),(next.substr(0,20)+(next.length>20?"...":"")).replace(/\n/g,"")},"upcomingInput"),showPosition:__name(function(){var pre=this.pastInput(),c=new Array(pre.length+1).join("-");return pre+this.upcomingInput()+"\n"+c+"^"},"showPosition"),test_match:__name(function(match,indexed_rule){var token,lines,backup;if(this.options.backtrack_lexer&&(backup={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&&(backup.yylloc.range=this.yylloc.range.slice(0))),(lines=match[0].match(/(?:\r\n?|\n).*/g))&&(this.yylineno+=lines.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:lines?lines[lines.length-1].length-lines[lines.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+match[0].length},this.yytext+=match[0],this.match+=match[0],this.matches=match,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(match[0].length),this.matched+=match[0],token=this.performAction.call(this,this.yy,this,indexed_rule,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),token)return token;if(this._backtrack){for(var k in backup)this[k]=backup[k];return!1}return!1},"test_match"),next:__name(function(){if(this.done)return this.EOF;var token,match,tempMatch,index;this._input||(this.done=!0),this._more||(this.yytext="",this.match="");for(var rules=this._currentRules(),i=0;i<rules.length;i++)if((tempMatch=this._input.match(this.rules[rules[i]]))&&(!match||tempMatch[0].length>match[0].length)){if(match=tempMatch,index=i,this.options.backtrack_lexer){if(!1!==(token=this.test_match(tempMatch,rules[i])))return token;if(this._backtrack){match=!1;continue}return!1}if(!this.options.flex)break}return match?!1!==(token=this.test_match(match,rules[index]))&&token:""===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:__name(function(){var r=this.next();return r||this.lex()},"lex"),begin:__name(function(condition){this.conditionStack.push(condition)},"begin"),popState:__name(function(){return this.conditionStack.length-1>0?this.conditionStack.pop():this.conditionStack[0]},"popState"),_currentRules:__name(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:__name(function(n){return(n=this.conditionStack.length-1-Math.abs(n||0))>=0?this.conditionStack[n]:"INITIAL"},"topState"),pushState:__name(function(condition){this.begin(condition)},"pushState"),stateStackSize:__name(function(){return this.conditionStack.length},"stateStackSize"),options:{"case-insensitive":!0},performAction:__name(function(yy,yy_,$avoiding_name_collisions,YY_START){switch($avoiding_name_collisions){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 Parser(){this.yy={}}return parser2.lexer=lexer,__name(Parser,"Parser"),Parser.prototype=parser2,parser2.Parser=Parser,new Parser}();parser.parser=parser;var sankey_default=parser,links=[],nodes=[],nodesMap=new Map,clear2=__name(()=>{links=[],nodes=[],nodesMap=new Map,clear()},"clear"),SankeyLink=(__name(_a=class{constructor(source,target,value2=0){this.source=source,this.target=target,this.value=value2}},"SankeyLink"),_a),addLink=__name((source,target,value2)=>{links.push(new SankeyLink(source,target,value2))},"addLink"),SankeyNode=(__name(_b=class{constructor(ID){this.ID=ID}},"SankeyNode"),_b),findOrCreateNode=__name(ID=>{ID=common_default.sanitizeText(ID,getConfig2());let node=nodesMap.get(ID);return void 0===node&&(node=new SankeyNode(ID),nodesMap.set(ID,node),nodes.push(node)),node},"findOrCreateNode"),getNodes=__name(()=>nodes,"getNodes"),getLinks=__name(()=>links,"getLinks"),getGraph=__name(()=>({nodes:nodes.map(node=>({id:node.ID})),links:links.map(link2=>({source:link2.source.ID,target:link2.target.ID,value:link2.value}))}),"getGraph"),sankeyDB_default={nodesMap:nodesMap,getConfig:__name(()=>getConfig2().sankey,"getConfig"),getNodes:getNodes,getLinks:getLinks,getGraph:getGraph,addLink:addLink,findOrCreateNode:findOrCreateNode,getAccTitle:getAccTitle,setAccTitle:setAccTitle,getAccDescription:getAccDescription,setAccDescription:setAccDescription,getDiagramTitle:getDiagramTitle,setDiagramTitle:setDiagramTitle,clear:clear2},Uid=(__name(_c=class{static next(name){return new _c(name+ ++_c.count)}constructor(id){this.id=id,this.href=`#${id}`}toString(){return"url("+this.href+")"}},"Uid"),_c.count=0,_c),alignmentsMap={left:function(node){return node.depth},right:function(node,n){return n-1-node.height},center:function(node){return node.targetLinks.length?node.depth:node.sourceLinks.length?min(node.sourceLinks,targetDepth)-1:0},justify:justify},sankeyRenderer_default={draw:__name(function(text,id,_version,diagObj){const{securityLevel:securityLevel,sankey:conf}=getConfig2(),defaultSankeyConfig=defaultConfig2.sankey;let sandboxElement;"sandbox"===securityLevel&&(sandboxElement=select("#i"+id));const root=select("sandbox"===securityLevel?sandboxElement.nodes()[0].contentDocument.body:"body"),svg="sandbox"===securityLevel?root.select(`[id="${id}"]`):select(`[id="${id}"]`),width=(null==conf?void 0:conf.width)??defaultSankeyConfig.width,height=(null==conf?void 0:conf.height)??defaultSankeyConfig.width,useMaxWidth=(null==conf?void 0:conf.useMaxWidth)??defaultSankeyConfig.useMaxWidth,nodeAlignment=(null==conf?void 0:conf.nodeAlignment)??defaultSankeyConfig.nodeAlignment,prefix=(null==conf?void 0:conf.prefix)??defaultSankeyConfig.prefix,suffix=(null==conf?void 0:conf.suffix)??defaultSankeyConfig.suffix,showValues=(null==conf?void 0:conf.showValues)??defaultSankeyConfig.showValues,graph=diagObj.db.getGraph(),nodeAlign=alignmentsMap[nodeAlignment];Sankey().nodeId(d=>d.id).nodeWidth(10).nodePadding(10+(showValues?15:0)).nodeAlign(nodeAlign).extent([[0,0],[width,height]])(graph);const colorScheme=ordinal(d3schemeTableau10);svg.append("g").attr("class","nodes").selectAll(".node").data(graph.nodes).join("g").attr("class","node").attr("id",d=>(d.uid=Uid.next("node-")).id).attr("transform",function(d){return"translate("+d.x0+","+d.y0+")"}).attr("x",d=>d.x0).attr("y",d=>d.y0).append("rect").attr("height",d=>d.y1-d.y0).attr("width",d=>d.x1-d.x0).attr("fill",d=>colorScheme(d.id));const getText=__name(({id:id2,value:value2})=>showValues?`${id2}\n${prefix}${Math.round(100*value2)/100}${suffix}`:id2,"getText");svg.append("g").attr("class","node-labels").attr("font-size",14).selectAll("text").data(graph.nodes).join("text").attr("x",d=>d.x0<width/2?d.x1+6:d.x0-6).attr("y",d=>(d.y1+d.y0)/2).attr("dy",(showValues?"0":"0.35")+"em").attr("text-anchor",d=>d.x0<width/2?"start":"end").text(getText);const link2=svg.append("g").attr("class","links").attr("fill","none").attr("stroke-opacity",.5).selectAll(".link").data(graph.links).join("g").attr("class","link").style("mix-blend-mode","multiply"),linkColor=(null==conf?void 0:conf.linkColor)??"gradient";if("gradient"===linkColor){const gradient=link2.append("linearGradient").attr("id",d=>(d.uid=Uid.next("linearGradient-")).id).attr("gradientUnits","userSpaceOnUse").attr("x1",d=>d.source.x1).attr("x2",d=>d.target.x0);gradient.append("stop").attr("offset","0%").attr("stop-color",d=>colorScheme(d.source.id)),gradient.append("stop").attr("offset","100%").attr("stop-color",d=>colorScheme(d.target.id))}let coloring;switch(linkColor){case"gradient":coloring=__name(d=>d.uid,"coloring");break;case"source":coloring=__name(d=>colorScheme(d.source.id),"coloring");break;case"target":coloring=__name(d=>colorScheme(d.target.id),"coloring");break;default:coloring=linkColor}link2.append("path").attr("d",linkHorizontal().source(horizontalSource).target(horizontalTarget)).attr("stroke",coloring).attr("stroke-width",d=>Math.max(1,d.width)),setupGraphViewbox(void 0,svg,0,useMaxWidth)},"draw")},prepareTextForParsing=__name(text=>text.replaceAll(/^[^\S\n\r]+|[^\S\n\r]+$/g,"").replaceAll(/([\n\r])+/g,"\n").trim(),"prepareTextForParsing"),styles_default=__name(options=>`.label {\n font-family: ${options.fontFamily};\n }`,"getStyles"),originalParse=sankey_default.parse.bind(sankey_default);sankey_default.parse=text=>originalParse(prepareTextForParsing(text));var diagram={styles:styles_default,parser:sankey_default,db:sankeyDB_default,renderer:sankeyRenderer_default};export{diagram};