@oevery/rsp 4.0.0 → 4.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/chunk-AUZYUJ46.mjs +418 -0
- package/dist/chunk-DNRGBQS7.mjs +108 -0
- package/dist/chunk-LGDCIQYL.mjs +725 -0
- package/dist/chunk-P3KO3GZW.mjs +1023 -0
- package/dist/{chunk-HFSTLCCK.mjs → chunk-VDRXFKBP.mjs} +133 -1800
- package/dist/cli.mjs +286 -294
- package/dist/client-U2PN3VS4.mjs +108 -0
- package/dist/{entry-RIJQ2X46.mjs → entry-NDASTAI5.mjs} +13 -9
- package/dist/viewer/NOTICE.txt +299 -0
- package/dist/viewer/app.css +2 -0
- package/dist/viewer/app.js +670 -0
- package/dist/viewer/chunks/abnfDiagram-S7VZAUFO-K5EOZOEF.js +1 -0
- package/dist/viewer/chunks/architecture-WOLXFQ4H-UAT5D5BF.js +1 -0
- package/dist/viewer/chunks/architectureDiagram-YGSQEFNW-UNPSYM2L.js +36 -0
- package/dist/viewer/chunks/blockDiagram-APKKGZFW-2F7TTPAV.js +140 -0
- package/dist/viewer/chunks/bpmnIcons-APHXDYXF-ZWPFFN3O.js +1 -0
- package/dist/viewer/chunks/c4Diagram-KJ2TOQU5-KNLN6CME.js +38 -0
- package/dist/viewer/chunks/chunk-274PZN6B.js +1 -0
- package/dist/viewer/chunks/chunk-2VGDQLQD.js +1 -0
- package/dist/viewer/chunks/chunk-33XESOCS.js +1 -0
- package/dist/viewer/chunks/chunk-3ZSL2TGQ.js +1 -0
- package/dist/viewer/chunks/chunk-432I4U3B.js +1 -0
- package/dist/viewer/chunks/chunk-4PJNGS3V.js +1 -0
- package/dist/viewer/chunks/chunk-54NLSLTF.js +9 -0
- package/dist/viewer/chunks/chunk-6QRHYJ5Q.js +1 -0
- package/dist/viewer/chunks/chunk-6RCFKBVR.js +1 -0
- package/dist/viewer/chunks/chunk-6Y2HP7DC.js +213 -0
- package/dist/viewer/chunks/chunk-7MAT7NHP.js +1 -0
- package/dist/viewer/chunks/chunk-AKHBD6LT.js +2 -0
- package/dist/viewer/chunks/chunk-CZIM56BV.js +1 -0
- package/dist/viewer/chunks/chunk-DN4Y7LXJ.js +1 -0
- package/dist/viewer/chunks/chunk-E2UQN267.js +1 -0
- package/dist/viewer/chunks/chunk-GBARLDDT.js +1 -0
- package/dist/viewer/chunks/chunk-H4YEV7VR.js +1 -0
- package/dist/viewer/chunks/chunk-HUVVDQHZ.js +1 -0
- package/dist/viewer/chunks/chunk-IAKC32WV.js +72 -0
- package/dist/viewer/chunks/chunk-JTW4SY4L.js +1 -0
- package/dist/viewer/chunks/chunk-JZV675LF.js +1 -0
- package/dist/viewer/chunks/chunk-KDUDYTWO.js +1 -0
- package/dist/viewer/chunks/chunk-KHX3A5RZ.js +331 -0
- package/dist/viewer/chunks/chunk-KPXJJSUR.js +15 -0
- package/dist/viewer/chunks/chunk-LEGNM6PH.js +1 -0
- package/dist/viewer/chunks/chunk-LYY4ZY72.js +1 -0
- package/dist/viewer/chunks/chunk-MKDEK2LU.js +1 -0
- package/dist/viewer/chunks/chunk-MYJRFART.js +129 -0
- package/dist/viewer/chunks/chunk-NUXZBURC.js +1 -0
- package/dist/viewer/chunks/chunk-NXHT5I2L.js +1 -0
- package/dist/viewer/chunks/chunk-OF62XRVM.js +62 -0
- package/dist/viewer/chunks/chunk-ONCOEVBS.js +1 -0
- package/dist/viewer/chunks/chunk-P44SH3OO.js +1 -0
- package/dist/viewer/chunks/chunk-PDXKDBIX.js +1 -0
- package/dist/viewer/chunks/chunk-PHKIAKHS.js +1 -0
- package/dist/viewer/chunks/chunk-PJDMAGPE.js +2 -0
- package/dist/viewer/chunks/chunk-RC2NPHSX.js +88 -0
- package/dist/viewer/chunks/chunk-T6DM5RSK.js +10 -0
- package/dist/viewer/chunks/chunk-U5STX66M.js +2 -0
- package/dist/viewer/chunks/chunk-UIAJQPOF.js +1 -0
- package/dist/viewer/chunks/chunk-UX2S3LP3.js +1 -0
- package/dist/viewer/chunks/chunk-VEMTQQ7Y.js +2 -0
- package/dist/viewer/chunks/chunk-WKCPBR3C.js +1 -0
- package/dist/viewer/chunks/chunk-WMQ4Y2MS.js +32 -0
- package/dist/viewer/chunks/chunk-YPWIQAHX.js +3 -0
- package/dist/viewer/chunks/chunk-Z4ZDIMO2.js +136 -0
- package/dist/viewer/chunks/chunk-ZATQCNXH.js +1 -0
- package/dist/viewer/chunks/chunk-ZE5RDJX6.js +1 -0
- package/dist/viewer/chunks/chunk-ZO62R4L2.js +1 -0
- package/dist/viewer/chunks/classDiagram-v2-L25IHNXF-5F2M2CZ4.js +217 -0
- package/dist/viewer/chunks/cose-bilkent-JH36ORCC-S56HJ5WN.js +1 -0
- package/dist/viewer/chunks/cynefin-EF2NZ3EQ-6WY2NCLE.js +1 -0
- package/dist/viewer/chunks/cynefinDiagram-L36ESFBY-DE6PZNQA.js +62 -0
- package/dist/viewer/chunks/dagre-SPEB5RXH-QEOTKFV2.js +4 -0
- package/dist/viewer/chunks/diagram-3B7GL73J-RZPIU7FY.js +200 -0
- package/dist/viewer/chunks/diagram-DNEMPZML-YD26TJKC.js +24 -0
- package/dist/viewer/chunks/diagram-L3MUGCDN-TJUEX4QI.js +41 -0
- package/dist/viewer/chunks/diagram-LA4NIPWU-3PUQS6UW.js +24 -0
- package/dist/viewer/chunks/diagram-MHCOC4E2-YBTBD4PG.js +3 -0
- package/dist/viewer/chunks/diagram-XPFHEONP-VF2TQBNR.js +30 -0
- package/dist/viewer/chunks/ebnfDiagram-UZSYDL2S-QE7DIEME.js +1 -0
- package/dist/viewer/chunks/elk-XV6XMXQE-X5OZRIL3.js +27 -0
- package/dist/viewer/chunks/erDiagram-EYBAPDEH-5B2S7VB4.js +99 -0
- package/dist/viewer/chunks/eventmodeling-K75KTNOO-CHCQYZBI.js +1 -0
- package/dist/viewer/chunks/flowDiagram-MALGAFMO-XJFC5NTN.js +1 -0
- package/dist/viewer/chunks/ganttDiagram-23REXITY-TUUZ3QYO.js +292 -0
- package/dist/viewer/chunks/gitGraph-VSP46ZUC-VFZPJQ6A.js +1 -0
- package/dist/viewer/chunks/gitGraphDiagram-STJD7YCW-4CVV5LSH.js +106 -0
- package/dist/viewer/chunks/info-OHQRW6UA-P4744SJ6.js +1 -0
- package/dist/viewer/chunks/infoDiagram-KBXO4MBG-Q2WYYNNN.js +2 -0
- package/dist/viewer/chunks/ishikawaDiagram-M35NCXHK-PLQPTX2U.js +70 -0
- package/dist/viewer/chunks/journeyDiagram-OPLOXDXO-FB73RE6F.js +139 -0
- package/dist/viewer/chunks/kanban-definition-BZKZHSQY-6FU4TXYJ.js +89 -0
- package/dist/viewer/chunks/katex-IN4S3RHS.js +257 -0
- package/dist/viewer/chunks/mindmap-definition-I2QAS2VK-ZQ36ABVW.js +98 -0
- package/dist/viewer/chunks/packet-JDAUHWVQ-NYXIQQVA.js +1 -0
- package/dist/viewer/chunks/pegDiagram-FD4XPPHP-5XXVT6XN.js +1 -0
- package/dist/viewer/chunks/pie-XZMESJXO-32CUE6KZ.js +1 -0
- package/dist/viewer/chunks/pieDiagram-J4AKIIQI-WRTBDFM5.js +39 -0
- package/dist/viewer/chunks/quadrantDiagram-XTYBLID2-YPBDQIAK.js +7 -0
- package/dist/viewer/chunks/radar-ABXABTNO-272FILRO.js +1 -0
- package/dist/viewer/chunks/railroad-I3PHUGI6-6EGAH4XA.js +1 -0
- package/dist/viewer/chunks/railroad-abnf-LNEFI6M7-G6E7ATER.js +1 -0
- package/dist/viewer/chunks/railroad-ebnf-DWYD2UWJ-MR4P6BDR.js +1 -0
- package/dist/viewer/chunks/railroad-peg-JR7BVNR7-WXLQUGUO.js +1 -0
- package/dist/viewer/chunks/railroadDiagram-MRQ6NCDL-XHZQ2BLY.js +1 -0
- package/dist/viewer/chunks/requirementDiagram-Y7LWUY3S-W5FHRRML.js +84 -0
- package/dist/viewer/chunks/sankeyDiagram-WGJFYUXA-OJJIRVTI.js +40 -0
- package/dist/viewer/chunks/sequenceDiagram-5NDRBG5M-D6T4DRNG.js +169 -0
- package/dist/viewer/chunks/sizeCapture-INFHLROL-WL3FTUJX.js +1 -0
- package/dist/viewer/chunks/stateDiagram-v2-FJ4FJNEA-LAXL7KGG.js +291 -0
- package/dist/viewer/chunks/swimlanes-UMQ2AFYF-XIJBD726.js +1 -0
- package/dist/viewer/chunks/swimlanesDiagram-OMPLPG4O-7O7MHFW7.js +8 -0
- package/dist/viewer/chunks/timeline-definition-SEUHKTQE-BAZQA47I.js +120 -0
- package/dist/viewer/chunks/treeView-D4JQ5SDB-6YMDAAPA.js +1 -0
- package/dist/viewer/chunks/treemap-SAJKECNS-2X573PPS.js +1 -0
- package/dist/viewer/chunks/usecaseDiagram-AFA6YXN4-4YCEMWJB.js +370 -0
- package/dist/viewer/chunks/vennDiagram-NNMJR3RB-GEMROLAE.js +34 -0
- package/dist/viewer/chunks/wardley-7MLQ67FV-DGTGHYYC.js +1 -0
- package/dist/viewer/chunks/wardleyDiagram-S7YFUSEH-K4HVD3SS.js +78 -0
- package/dist/viewer/chunks/xychartDiagram-GGNKY7IX-HVLWCUEO.js +7 -0
- package/dist/viewer/mermaid.js +12 -0
- package/dist/viewer-build.json +1 -0
- package/dist/viewer-service.mjs +607 -0
- package/package.json +27 -8
- package/skills/rsp/SKILL.md +13 -10
- package/skills/rsp/references/architecture.md +39 -0
- package/skills/rsp/references/closeout.md +4 -4
- package/skills/rsp/references/durable-review.md +6 -9
- package/skills/rsp/references/focus-continuation.md +6 -2
- package/skills/rsp/references/setup-repair.md +11 -6
- package/skills/rsp/references/work-model.md +14 -4
- package/skills/rsp-commit/SKILL.md +2 -2
- package/skills/rsp-doc/SKILL.md +13 -10
- package/skills/rsp-doc/references/skill-authoring.md +2 -2
- package/skills/rsp-implement/SKILL.md +16 -12
- package/skills/rsp-review/SKILL.md +12 -12
- package/skills/rsp-review/references/code-review.md +11 -5
- package/skills/rsp-review/references/document-review.md +8 -10
- package/skills/rsp-shape/SKILL.md +3 -1
- package/skills/rsp-shape/references/planning.md +4 -4
- package/skills/rsp-verify/SKILL.md +9 -14
- package/skills/rsp-doc/references/artifact-lenses.md +0 -43
- package/skills/rsp-review/references/structural-review.md +0 -41
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
import{a as F}from"./chunk-LEGNM6PH.js";import{a as D}from"./chunk-YPWIQAHX.js";import"./chunk-PJDMAGPE.js";import"./chunk-DN4Y7LXJ.js";import"./chunk-H4YEV7VR.js";import"./chunk-JZV675LF.js";import"./chunk-E2UQN267.js";import"./chunk-CZIM56BV.js";import"./chunk-6QRHYJ5Q.js";import"./chunk-GBARLDDT.js";import"./chunk-6RCFKBVR.js";import"./chunk-AKHBD6LT.js";import"./chunk-U5STX66M.js";import"./chunk-HUVVDQHZ.js";import"./chunk-432I4U3B.js";import"./chunk-ONCOEVBS.js";import"./chunk-WKCPBR3C.js";import"./chunk-Z4ZDIMO2.js";import{a as E}from"./chunk-UX2S3LP3.js";import{p as y}from"./chunk-VEMTQQ7Y.js";import"./chunk-NXHT5I2L.js";import{C as b,P as L,U as T,V as S,W as k,X as O,Y as R,Z as I,_,p as A,r as M}from"./chunk-MYJRFART.js";import{b as C}from"./chunk-3ZSL2TGQ.js";import{a as i}from"./chunk-ZE5RDJX6.js";import"./chunk-PHKIAKHS.js";var x={showLegend:!0,ticks:5,max:null,min:0,graticule:"circle"},w=32,P={axes:[],curves:[],options:x},g=structuredClone(P),U=M.radar,X=i(()=>y({...U,...b().radar}),"getConfig"),z=i(()=>g.axes,"getAxes"),K=i(()=>g.curves,"getCurves"),N=i(()=>g.options,"getOptions"),Y=i(a=>{g.axes=a.map(t=>({name:t.name,label:t.label??t.name}))},"setAxes"),Z=i(a=>{g.curves=a.map(t=>({name:t.name,label:t.label??t.name,entries:q(t.entries)}))},"setCurves"),q=i(a=>{if(a[0].axis==null)return a.map(e=>e.value);let t=z();if(t.length===0)throw new Error("Axes must be populated before curves for reference entries");return t.map(e=>{let r=a.find(n=>n.axis?.$refText===e.name);if(r===void 0)throw new Error("Missing entry for axis "+e.label);return r.value})},"computeCurveEntries"),J=i(a=>{let t=a.reduce((e,r)=>(e[r.name]=r,e),{});g.options={showLegend:t.showLegend?.value??x.showLegend,ticks:t.ticks?.value??x.ticks,max:t.max?.value??x.max,min:t.min?.value??x.min,graticule:t.graticule?.value??x.graticule},g.options.ticks>w&&(C.warn(`Radar diagram ticks (${g.options.ticks}) exceeds maximum allowed (${w}). Using ${w} instead.`),g.options.ticks=w)},"setOptions"),Q=i(()=>{T(),g=structuredClone(P)},"clear"),$={getAxes:z,getCurves:K,getOptions:N,setAxes:Y,setCurves:Z,setOptions:J,getConfig:X,clear:Q,setAccTitle:S,getAccTitle:k,setDiagramTitle:I,getDiagramTitle:_,getAccDescription:R,setAccDescription:O},tt=i(a=>{F(a,$);let{axes:t,curves:e,options:r}=a;$.setAxes(t),$.setCurves(e),$.setOptions(r)},"populate"),et={parse:i(async a=>{let t=await D("radar",a);C.debug(t),tt(t)},"parse")},at=i((a,t,e,r)=>{let n=r.db,l=n.getAxes(),c=n.getCurves(),s=n.getOptions(),o=n.getConfig(),d=n.getDiagramTitle(),p=E(t),u=rt(p,o),m=s.max??Math.max(...c.map(f=>Math.max(...f.entries))),h=s.min,v=Math.min(o.width,o.height)/2;nt(u,l,v,s.ticks,s.graticule),st(u,l,v,o),G(u,l,c,h,m,s.graticule,o),V(u,c,s.showLegend,o),u.append("text").attr("class","radarTitle").text(d).attr("x",0).attr("y",-o.height/2-o.marginTop)},"draw"),rt=i((a,t)=>{let e=t.width+t.marginLeft+t.marginRight,r=t.height+t.marginTop+t.marginBottom,n={x:t.marginLeft+t.width/2,y:t.marginTop+t.height/2};return L(a,r,e,t.useMaxWidth??!0),a.attr("viewBox",`0 0 ${e} ${r}`).attr("overflow","visible"),a.append("g").attr("transform",`translate(${n.x}, ${n.y})`)},"drawFrame"),nt=i((a,t,e,r,n)=>{if(n==="circle")for(let l=0;l<r;l++){let c=e*(l+1)/r;a.append("circle").attr("r",c).attr("class","radarGraticule")}else if(n==="polygon"){let l=t.length;for(let c=0;c<r;c++){let s=e*(c+1)/r,o=t.map((d,p)=>{let u=2*p*Math.PI/l-Math.PI/2,m=s*Math.cos(u),h=s*Math.sin(u);return`${m},${h}`}).join(" ");a.append("polygon").attr("points",o).attr("class","radarGraticule")}}},"drawGraticule"),st=i((a,t,e,r)=>{let n=t.length;for(let l=0;l<n;l++){let c=t[l].label,s=2*l*Math.PI/n-Math.PI/2,o=Math.cos(s),d=Math.sin(s);a.append("line").attr("x1",0).attr("y1",0).attr("x2",e*r.axisScaleFactor*o).attr("y2",e*r.axisScaleFactor*d).attr("class","radarAxisLine");let p=o>.01?"start":o<-.01?"end":"middle",u=d>.01?"hanging":d<-.01?"auto":"central",m=4;a.append("text").text(c).attr("x",e*r.axisLabelFactor*o+m*o).attr("y",e*r.axisLabelFactor*d+m*d).attr("text-anchor",p).attr("dominant-baseline",u).attr("class","radarAxisLabel")}},"drawAxes");function G(a,t,e,r,n,l,c){let s=t.length,o=Math.min(c.width,c.height)/2;e.forEach((d,p)=>{if(d.entries.length!==s)return;let u=d.entries.map((m,h)=>{let v=2*Math.PI*h/s-Math.PI/2,f=B(m,r,n,o),H=f*Math.cos(v),j=f*Math.sin(v);return{x:H,y:j}});l==="circle"?a.append("path").attr("d",W(u,c.curveTension)).attr("class",`radarCurve-${p}`):l==="polygon"&&a.append("polygon").attr("points",u.map(m=>`${m.x},${m.y}`).join(" ")).attr("class",`radarCurve-${p}`)})}i(G,"drawCurves");function B(a,t,e,r){let n=Math.min(Math.max(a,t),e);return r*(n-t)/(e-t)}i(B,"relativeRadius");function W(a,t){let e=a.length,r=`M${a[0].x},${a[0].y}`;for(let n=0;n<e;n++){let l=a[(n-1+e)%e],c=a[n],s=a[(n+1)%e],o=a[(n+2)%e],d={x:c.x+(s.x-l.x)*t,y:c.y+(s.y-l.y)*t},p={x:s.x-(o.x-c.x)*t,y:s.y-(o.y-c.y)*t};r+=` C${d.x},${d.y} ${p.x},${p.y} ${s.x},${s.y}`}return`${r} Z`}i(W,"closedRoundCurve");function V(a,t,e,r){if(!e)return;let n=(r.width/2+r.marginRight)*3/4,l=-(r.height/2+r.marginTop)*3/4,c=20;t.forEach((s,o)=>{let d=a.append("g").attr("transform",`translate(${n}, ${l+o*c})`);d.append("rect").attr("width",12).attr("height",12).attr("class",`radarLegendBox-${o}`),d.append("text").attr("x",16).attr("y",0).attr("class","radarLegendText").text(s.label)})}i(V,"drawLegend");var ot={draw:at},it=i((a,t)=>{let e="";for(let r=0;r<a.THEME_COLOR_LIMIT;r++){let n=a[`cScale${r}`];e+=`
|
|
2
|
+
.radarCurve-${r} {
|
|
3
|
+
color: ${n};
|
|
4
|
+
fill: ${n};
|
|
5
|
+
fill-opacity: ${t.curveOpacity};
|
|
6
|
+
stroke: ${n};
|
|
7
|
+
stroke-width: ${t.curveStrokeWidth};
|
|
8
|
+
}
|
|
9
|
+
.radarLegendBox-${r} {
|
|
10
|
+
fill: ${n};
|
|
11
|
+
fill-opacity: ${t.curveOpacity};
|
|
12
|
+
stroke: ${n};
|
|
13
|
+
}
|
|
14
|
+
`}return e},"genIndexStyles"),lt=i(a=>{let t=A(),e=b(),r=y(t,e.themeVariables),n=y(r.radar,a);return{themeVariables:r,radarOptions:n}},"buildRadarStyleOptions"),ct=i(({radar:a}={})=>{let{themeVariables:t,radarOptions:e}=lt(a);return`
|
|
15
|
+
.radarTitle {
|
|
16
|
+
font-size: ${t.fontSize};
|
|
17
|
+
color: ${t.titleColor};
|
|
18
|
+
dominant-baseline: hanging;
|
|
19
|
+
text-anchor: middle;
|
|
20
|
+
}
|
|
21
|
+
.radarAxisLine {
|
|
22
|
+
stroke: ${e.axisColor};
|
|
23
|
+
stroke-width: ${e.axisStrokeWidth};
|
|
24
|
+
}
|
|
25
|
+
.radarAxisLabel {
|
|
26
|
+
font-size: ${e.axisLabelFontSize}px;
|
|
27
|
+
color: ${e.axisColor};
|
|
28
|
+
}
|
|
29
|
+
.radarGraticule {
|
|
30
|
+
fill: ${e.graticuleColor};
|
|
31
|
+
fill-opacity: ${e.graticuleOpacity};
|
|
32
|
+
stroke: ${e.graticuleColor};
|
|
33
|
+
stroke-width: ${e.graticuleStrokeWidth};
|
|
34
|
+
}
|
|
35
|
+
.radarLegendText {
|
|
36
|
+
text-anchor: start;
|
|
37
|
+
font-size: ${e.legendFontSize}px;
|
|
38
|
+
dominant-baseline: hanging;
|
|
39
|
+
}
|
|
40
|
+
${it(t,e)}
|
|
41
|
+
`},"styles"),vt={parser:et,db:$,renderer:ot,styles:ct};export{vt as diagram};
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import{a as ve}from"./chunk-LEGNM6PH.js";import{h as I,w as J}from"./chunk-UIAJQPOF.js";import{a as we}from"./chunk-YPWIQAHX.js";import"./chunk-PJDMAGPE.js";import"./chunk-DN4Y7LXJ.js";import"./chunk-H4YEV7VR.js";import"./chunk-JZV675LF.js";import"./chunk-E2UQN267.js";import"./chunk-CZIM56BV.js";import"./chunk-6QRHYJ5Q.js";import"./chunk-GBARLDDT.js";import"./chunk-6RCFKBVR.js";import"./chunk-AKHBD6LT.js";import"./chunk-U5STX66M.js";import"./chunk-HUVVDQHZ.js";import{a as Se}from"./chunk-274PZN6B.js";import"./chunk-432I4U3B.js";import"./chunk-ONCOEVBS.js";import"./chunk-WKCPBR3C.js";import"./chunk-Z4ZDIMO2.js";import{a as xe}from"./chunk-UX2S3LP3.js";import{c as ye,d as D}from"./chunk-ZATQCNXH.js";import{p as Q}from"./chunk-VEMTQQ7Y.js";import"./chunk-NXHT5I2L.js";import{C as Z,P as ce,U as ue,V as fe,W as he,X as de,Y as pe,Z as ge,_ as me,p as se,r as oe}from"./chunk-MYJRFART.js";import{b as U,d as q}from"./chunk-3ZSL2TGQ.js";import{a as b}from"./chunk-ZE5RDJX6.js";import"./chunk-PHKIAKHS.js";function De(e){var n=0,a=e.children,r=a&&a.length;if(!r)n=1;else for(;--r>=0;)n+=a[r].value;e.value=n}function Pe(){return this.eachAfter(De)}function Ve(e,n){let a=-1;for(let r of this)e.call(n,r,++a,this);return this}function Ee(e,n){for(var a=this,r=[a],i,s,u=-1;a=r.pop();)if(e.call(n,a,++u,this),i=a.children)for(s=i.length-1;s>=0;--s)r.push(i[s]);return this}function Ie(e,n){for(var a=this,r=[a],i=[],s,u,f,p=-1;a=r.pop();)if(i.push(a),s=a.children)for(u=0,f=s.length;u<f;++u)r.push(s[u]);for(;a=i.pop();)e.call(n,a,++p,this);return this}function We(e,n){let a=-1;for(let r of this)if(e.call(n,r,++a,this))return r}function Be(e){return this.eachAfter(function(n){for(var a=+e(n.data)||0,r=n.children,i=r&&r.length;--i>=0;)a+=r[i].value;n.value=a})}function He(e){return this.eachBefore(function(n){n.children&&n.children.sort(e)})}function qe(e){for(var n=this,a=Oe(n,e),r=[n];n!==a;)n=n.parent,r.push(n);for(var i=r.length;e!==a;)r.splice(i,0,e),e=e.parent;return r}function Oe(e,n){if(e===n)return e;var a=e.ancestors(),r=n.ancestors(),i=null;for(e=a.pop(),n=r.pop();e===n;)i=e,e=a.pop(),n=r.pop();return i}function Xe(){for(var e=this,n=[e];e=e.parent;)n.push(e);return n}function Ge(){return Array.from(this)}function Ye(){var e=[];return this.eachBefore(function(n){n.children||e.push(n)}),e}function je(){var e=this,n=[];return e.each(function(a){a!==e&&n.push({source:a.parent,target:a})}),n}function*Ke(){var e=this,n,a=[e],r,i,s;do for(n=a.reverse(),a=[];e=n.pop();)if(yield e,r=e.children)for(i=0,s=r.length;i<s;++i)a.push(r[i]);while(a.length)}function ee(e,n){e instanceof Map?(e=[void 0,e],n===void 0&&(n=Je)):n===void 0&&(n=Ze);for(var a=new G(e),r,i=[a],s,u,f,p;r=i.pop();)if((u=n(r.data))&&(p=(u=Array.from(u)).length))for(r.children=u,f=p-1;f>=0;--f)i.push(s=u[f]=new G(u[f])),s.parent=r,s.depth=r.depth+1;return a.eachBefore(et)}function Ue(){return ee(this).eachBefore(Qe)}function Ze(e){return e.children}function Je(e){return Array.isArray(e)?e[1]:null}function Qe(e){e.data.value!==void 0&&(e.value=e.data.value),e.data=e.data.data}function et(e){var n=0;do e.height=n;while((e=e.parent)&&e.height<++n)}function G(e){this.data=e,this.depth=this.height=0,this.parent=null}G.prototype=ee.prototype={constructor:G,count:Pe,each:Ve,eachAfter:Ie,eachBefore:Ee,find:We,sum:Be,sort:He,path:qe,ancestors:Xe,descendants:Ge,leaves:Ye,links:je,copy:Ue,[Symbol.iterator]:Ke};function tt(e){if(typeof e!="function")throw new Error;return e}function O(){return 0}function X(e){return function(){return e}}function nt(e){e.x0=Math.round(e.x0),e.y0=Math.round(e.y0),e.x1=Math.round(e.x1),e.y1=Math.round(e.y1)}function be(e,n,a,r,i){for(var s=e.children,u,f=-1,p=s.length,o=e.value&&(r-n)/e.value;++f<p;)u=s[f],u.y0=a,u.y1=i,u.x0=n,u.x1=n+=u.value*o}function rt(e,n){this._=e,this.parent=null,this.children=null,this.A=null,this.a=this,this.z=0,this.m=0,this.c=0,this.s=0,this.t=null,this.i=n}rt.prototype=Object.create(G.prototype);function Ce(e,n,a,r,i){for(var s=e.children,u,f=-1,p=s.length,o=e.value&&(i-a)/e.value;++f<p;)u=s[f],u.x0=n,u.x1=r,u.y0=a,u.y1=a+=u.value*o}var _e=(1+Math.sqrt(5))/2;function Te(e,n,a,r,i,s){for(var u=[],f=n.children,p,o,h=0,x=0,l=f.length,S,v,m=n.value,d,w,M,A,P,B,k;h<l;){S=i-a,v=s-r;do d=f[x++].value;while(!d&&x<l);for(w=M=d,B=Math.max(v/S,S/v)/(m*e),k=d*d*B,P=Math.max(M/k,k/w);x<l;++x){if(d+=o=f[x].value,o<w&&(w=o),o>M&&(M=o),k=d*d*B,A=Math.max(M/k,k/w),A>P){d-=o;break}P=A}u.push(p={value:d,dice:S<v,children:f.slice(h,x)}),p.dice?be(p,a,r,i,m?r+=v*d/m:s):Ce(p,a,r,m?a+=S*d/m:i,s),m-=d,h=x}return u}var at=(function e(n){function a(r,i,s,u,f){Te(n,r,i,s,u,f)}return a.ratio=function(r){return e((r=+r)>1?r:1)},a})(_e);function ze(){var e=at,n=!1,a=1,r=1,i=[0],s=O,u=O,f=O,p=O,o=O;function h(l){return l.x0=l.y0=0,l.x1=a,l.y1=r,l.eachBefore(x),i=[0],n&&l.eachBefore(nt),l}function x(l){var S=i[l.depth],v=l.x0+S,m=l.y0+S,d=l.x1-S,w=l.y1-S;d<v&&(v=d=(v+d)/2),w<m&&(m=w=(m+w)/2),l.x0=v,l.y0=m,l.x1=d,l.y1=w,l.children&&(S=i[l.depth+1]=s(l)/2,v+=o(l)-S,m+=u(l)-S,d-=f(l)-S,w-=p(l)-S,d<v&&(v=d=(v+d)/2),w<m&&(m=w=(m+w)/2),e(l,v,m,d,w))}return h.round=function(l){return arguments.length?(n=!!l,h):n},h.size=function(l){return arguments.length?(a=+l[0],r=+l[1],h):[a,r]},h.tile=function(l){return arguments.length?(e=tt(l),h):e},h.padding=function(l){return arguments.length?h.paddingInner(l).paddingOuter(l):h.paddingInner()},h.paddingInner=function(l){return arguments.length?(s=typeof l=="function"?l:X(+l),h):s},h.paddingOuter=function(l){return arguments.length?h.paddingTop(l).paddingRight(l).paddingBottom(l).paddingLeft(l):h.paddingTop()},h.paddingTop=function(l){return arguments.length?(u=typeof l=="function"?l:X(+l),h):u},h.paddingRight=function(l){return arguments.length?(f=typeof l=="function"?l:X(+l),h):f},h.paddingBottom=function(l){return arguments.length?(p=typeof l=="function"?l:X(+l),h):p},h.paddingLeft=function(l){return arguments.length?(o=typeof l=="function"?l:X(+l),h):o},h}var gt=(function e(n){function a(r,i,s,u,f){if((p=r._squarify)&&p.ratio===n)for(var p,o,h,x,l=-1,S,v=p.length,m=r.value;++l<v;){for(o=p[l],h=o.children,x=o.value=0,S=h.length;x<S;++x)o.value+=h[x].value;o.dice?be(o,i,s,u,m?s+=(f-s)*o.value/m:f):Ce(o,i,s,m?i+=(u-i)*o.value/m:u,f),m-=o.value}else r._squarify=p=Te(n,r,i,s,u,f),p.ratio=n}return a.ratio=function(r){return e((r=+r)>1?r:1)},a})(_e);var Ae=class{constructor(){this.nodes=[],this.levels=new Map,this.outerNodes=[],this.classes=new Map,this.setAccTitle=fe,this.getAccTitle=he,this.setDiagramTitle=ge,this.getDiagramTitle=me,this.getAccDescription=pe,this.setAccDescription=de}static{b(this,"TreeMapDB")}getNodes(){return this.nodes}getConfig(){let e=oe,n=Z();return Q({...e.treemap,...n.treemap??{}})}addNode(e,n){this.nodes.push(e),this.levels.set(e,n),n===0&&(this.outerNodes.push(e),this.root??=e)}getRoot(){return{name:"",children:this.outerNodes}}addClass(e,n){let a=this.classes.get(e)??{id:e,styles:[],textStyles:[]},r=n.replace(/\\,/g,"\xA7\xA7\xA7").replace(/,/g,";").replace(/§§§/g,",").split(";");r&&r.forEach(i=>{ye(i)&&(a?.textStyles?a.textStyles.push(i):a.textStyles=[i]),a?.styles?a.styles.push(i):a.styles=[i]}),this.classes.set(e,a)}getClasses(){return this.classes}getStylesForClass(e){return this.classes.get(e)?.styles??[]}clear(){ue(),this.nodes=[],this.levels=new Map,this.outerNodes=[],this.classes=new Map,this.root=void 0}};function Le(e){if(!e.length)return[];let n=[],a=[];return e.forEach(r=>{let i={name:r.name,children:r.type==="Leaf"?void 0:[]};for(i.classSelector=r?.classSelector,r?.cssCompiledStyles&&(i.cssCompiledStyles=r.cssCompiledStyles),r.type==="Leaf"&&r.value!==void 0&&(i.value=r.value);a.length>0&&a[a.length-1].level>=r.level;)a.pop();if(a.length===0)n.push(i);else{let s=a[a.length-1].node;s.children?s.children.push(i):s.children=[i]}r.type!=="Leaf"&&a.push({node:i,level:r.level})}),n}b(Le,"buildHierarchy");var it=b((e,n)=>{ve(e,n);let a=[];for(let s of e.TreemapRows??[])s.$type==="ClassDefStatement"&&n.addClass(s.className??"",s.styleText??"");for(let s of e.TreemapRows??[]){let u=s.item;if(!u)continue;let f=s.indent?parseInt(s.indent):0,p=lt(u),o=u.classSelector?n.getStylesForClass(u.classSelector):[],h=o.length>0?o:void 0,x={level:f,name:p,type:u.$type,value:u.value,classSelector:u.classSelector,cssCompiledStyles:h};a.push(x)}let r=Le(a),i=b((s,u)=>{for(let f of s)n.addNode(f,u),f.children&&f.children.length>0&&i(f.children,u+1)},"addNodesRecursively");i(r,0)},"populate"),lt=b(e=>e.name?String(e.name):"","getItemName"),$e={parser:{yy:void 0},parse:b(async e=>{try{let a=await we("treemap",e);U.debug("Treemap AST:",a);let r=$e.parser?.yy;if(!(r instanceof Ae))throw new Error("parser.parser?.yy was not a TreemapDB. This is due to a bug within Mermaid, please report this issue at https://github.com/mermaid-js/mermaid/issues.");it(a,r)}catch(n){throw U.error("Error parsing treemap:",n),n}},"parse")},st=10,W=10,Y=25,ot=b((e,n,a,r)=>{let i=r.db,s=i.getConfig(),u=s.padding??st,f=i.getDiagramTitle(),p=i.getRoot(),{themeVariables:o}=Z();if(!p)return;let h=f?30:0,x=xe(n),l=s.nodeWidth?s.nodeWidth*W:960,S=s.nodeHeight?s.nodeHeight*W:500,v=l,m=S+h;x.attr("viewBox",`0 0 ${v} ${m}`),ce(x,m,v,s.useMaxWidth);let d;try{let t=s.valueFormat||",";if(t==="$0,0")d=b(c=>"$"+I(",")(c),"valueFormat");else if(t.startsWith("$")&&t.includes(",")){let c=/\.\d+/.exec(t),g=c?c[0]:"";d=b(C=>"$"+I(","+g)(C),"valueFormat")}else if(t.startsWith("$")){let c=t.substring(1);d=b(g=>"$"+I(c||"")(g),"valueFormat")}else d=I(t)}catch(t){U.error("Error creating format function:",t),d=I(",")}let w=J().range(["transparent",o.cScale0,o.cScale1,o.cScale2,o.cScale3,o.cScale4,o.cScale5,o.cScale6,o.cScale7,o.cScale8,o.cScale9,o.cScale10,o.cScale11]),M=J().range(["transparent",o.cScalePeer0,o.cScalePeer1,o.cScalePeer2,o.cScalePeer3,o.cScalePeer4,o.cScalePeer5,o.cScalePeer6,o.cScalePeer7,o.cScalePeer8,o.cScalePeer9,o.cScalePeer10,o.cScalePeer11]),A=J().range([o.cScaleLabel0,o.cScaleLabel1,o.cScaleLabel2,o.cScaleLabel3,o.cScaleLabel4,o.cScaleLabel5,o.cScaleLabel6,o.cScaleLabel7,o.cScaleLabel8,o.cScaleLabel9,o.cScaleLabel10,o.cScaleLabel11]);f&&x.append("text").attr("x",v/2).attr("y",h/2).attr("class","treemapTitle").attr("text-anchor","middle").attr("dominant-baseline","middle").text(f);let P=x.append("g").attr("transform",`translate(0, ${h})`).attr("class","treemapContainer"),B=ee(p).sum(t=>t.value??0).sort((t,c)=>(c.value??0)-(t.value??0)),re=ze().size([l,S]).paddingTop(t=>t.children&&t.children.length>0?Y+W:0).paddingInner(u).paddingLeft(t=>t.children&&t.children.length>0?W:0).paddingRight(t=>t.children&&t.children.length>0?W:0).paddingBottom(t=>t.children&&t.children.length>0?W:0).round(!0)(B),Me=re.descendants().filter(t=>t.children&&t.children.length>0),H=P.selectAll(".treemapSection").data(Me).enter().append("g").attr("class","treemapSection").attr("transform",t=>`translate(${t.x0},${t.y0})`);H.append("rect").attr("width",t=>t.x1-t.x0).attr("height",Y).attr("class","treemapSectionHeader").attr("fill","none").attr("fill-opacity",.6).attr("stroke-width",.6).attr("style",t=>t.depth===0?"display: none;":""),H.append("clipPath").attr("id",(t,c)=>`clip-section-${n}-${c}`).append("rect").attr("width",t=>Math.max(0,t.x1-t.x0-12)).attr("height",Y),H.append("rect").attr("width",t=>t.x1-t.x0).attr("height",t=>t.y1-t.y0).attr("class",(t,c)=>`treemapSection section${c}`).attr("fill",t=>w(t.data.name)).attr("fill-opacity",.6).attr("stroke",t=>M(t.data.name)).attr("stroke-width",2).attr("stroke-opacity",.4).attr("style",t=>{if(t.depth===0)return"display: none;";let c=D({cssCompiledStyles:t.data.cssCompiledStyles});return c.nodeStyles+";"+c.borderStyles.join(";")}),H.append("text").attr("class","treemapSectionLabel").attr("x",6).attr("y",Y/2).attr("dominant-baseline","middle").text(t=>t.depth===0?"":t.data.name).attr("font-weight","bold").attr("clip-path",(t,c)=>`url(#clip-section-${n}-${c})`).attr("style",t=>{if(t.depth===0)return"display: none;";let c="dominant-baseline: middle; font-size: 12px; fill:"+A(t.data.name)+"; white-space: nowrap; overflow: hidden; text-overflow: ellipsis;",g=D({cssCompiledStyles:t.data.cssCompiledStyles});return c+g.labelStyles.replace("color:","fill:")}).each(function(t){if(t.depth===0)return;let c=q(this),g=t.data.name;c.text(g);let C=t.x1-t.x0,T=6,_;s.showValues!==!1&&t.value?_=C-10-30-10-T:_=C-T-6;let y=Math.max(15,_),F=c.node();if(F.getComputedTextLength()>y){let R=g;for(;R.length>0;){if(R=g.substring(0,R.length-1),R.length===0){c.text("..."),F.getComputedTextLength()>y&&c.text("");break}if(c.text(R+"..."),F.getComputedTextLength()<=y)break}}}),s.showValues!==!1&&H.append("text").attr("class","treemapSectionValue").attr("x",t=>t.x1-t.x0-10).attr("y",Y/2).attr("text-anchor","end").attr("dominant-baseline","middle").text(t=>t.value?d(t.value):"").attr("font-style","italic").attr("style",t=>{if(t.depth===0)return"display: none;";let c="text-anchor: end; dominant-baseline: middle; font-size: 10px; fill:"+A(t.data.name)+"; white-space: nowrap; overflow: hidden; text-overflow: ellipsis;",g=D({cssCompiledStyles:t.data.cssCompiledStyles});return c+g.labelStyles.replace("color:","fill:")});let ae=re.leaves(),L=ae.length>20,ke=L?16:38,j=L?14:28,V=L?4:8,E=L?4:6,te=L?2:4,ie=L?8:10,ne=L?1:2,K=P.selectAll(".treemapLeafGroup").data(ae).enter().append("g").attr("class",(t,c)=>`treemapNode treemapLeafGroup leaf${c}${t.data.classSelector?` ${t.data.classSelector}`:""}x`).attr("transform",t=>`translate(${t.x0},${t.y0})`);K.append("rect").attr("width",t=>t.x1-t.x0).attr("height",t=>t.y1-t.y0).attr("class","treemapLeaf").attr("fill",t=>t.parent?w(t.parent.data.name):w(t.data.name)).attr("style",t=>D({cssCompiledStyles:t.data.cssCompiledStyles}).nodeStyles).attr("fill-opacity",.3).attr("stroke",t=>t.parent?w(t.parent.data.name):w(t.data.name)).attr("stroke-width",3),K.append("clipPath").attr("id",(t,c)=>`clip-${n}-${c}`).append("rect").attr("width",t=>Math.max(0,t.x1-t.x0-4)).attr("height",t=>Math.max(0,t.y1-t.y0-4)),K.append("text").attr("class","treemapLabel").attr("x",t=>(t.x1-t.x0)/2).attr("y",t=>(t.y1-t.y0)/2).attr("style",t=>{let c=`text-anchor: middle; dominant-baseline: middle; font-size: ${ke}px;fill:`+A(t.data.name)+";",g=D({cssCompiledStyles:t.data.cssCompiledStyles});return c+g.labelStyles.replace("color:","fill:")}).attr("clip-path",(t,c)=>`url(#clip-${n}-${c})`).text(t=>t.data.name).each(function(t){let c=q(this),g=t.x1-t.x0,C=t.y1-t.y0,T=c.node(),_=g-2*te,N=C-2*te;if(_<ie||N<ie){c.style("display","none");return}let y=parseInt(c.style("font-size"),10),F=.6;for(;T.getComputedTextLength()>_&&y>V;)y--,c.style("font-size",`${y}px`);let z=Math.max(E,Math.min(j,Math.round(y*F))),$=y+ne+z;for(;$>N&&y>V&&(y--,z=Math.max(E,Math.min(j,Math.round(y*F))),!(z<E&&y===V));)c.style("font-size",`${y}px`),$=y+ne+z,z<=E&&$>N;c.style("font-size",`${y}px`),L?(y<V||N<V)&&c.style("display","none"):(T.getComputedTextLength()>_||y<V||N<y)&&c.style("display","none")}),s.showValues!==!1&&K.append("text").attr("class","treemapValue").attr("x",c=>(c.x1-c.x0)/2).attr("y",function(c){return(c.y1-c.y0)/2}).attr("style",c=>{let g=`text-anchor: middle; dominant-baseline: hanging; font-size: ${j}px;fill:`+A(c.data.name)+";",C=D({cssCompiledStyles:c.data.cssCompiledStyles});return g+C.labelStyles.replace("color:","fill:")}).attr("clip-path",(c,g)=>`url(#clip-${n}-${g})`).text(c=>c.value?d(c.value):"").each(function(c){let g=q(this),C=this.parentNode;if(!C){g.style("display","none");return}let T=q(C).select(".treemapLabel");if(T.empty()||T.style("display")==="none"){g.style("display","none");return}let _=parseFloat(T.style("font-size")),y=Math.max(E,Math.min(j,Math.round(_*.6)));g.style("font-size",`${y}px`);let z=(c.y1-c.y0)/2+_/2+ne;g.attr("y",z);let $=c.x1-c.x0,le=c.y1-c.y0-4,Re=$-2*te;g.node().getComputedTextLength()>Re||z+y>le||y<E?g.style("display","none"):g.style("display",null)});let Ne=s.diagramPadding??8;Se(x,Ne,"flowchart",s?.useMaxWidth||!1)},"draw"),ct=b(function(e,n){return n.db.getClasses()},"getClasses"),ut={draw:ot,getClasses:ct},ft={sectionStrokeColor:"black",sectionStrokeWidth:"1",sectionFillColor:"#efefef",leafStrokeColor:"black",leafStrokeWidth:"1",leafFillColor:"#efefef",labelFontSize:"12px",valueFontSize:"10px",titleFontSize:"14px"},ht=b(({treemap:e}={})=>{let n=se(),a=Z(),r=Q(n,a.themeVariables),i=Q(ft,e),s=i.titleColor??r.titleColor,u=i.labelColor??r.textColor,f=i.valueColor??r.textColor;return`
|
|
2
|
+
.treemapNode.section {
|
|
3
|
+
stroke: ${i.sectionStrokeColor};
|
|
4
|
+
stroke-width: ${i.sectionStrokeWidth};
|
|
5
|
+
fill: ${i.sectionFillColor};
|
|
6
|
+
}
|
|
7
|
+
.treemapNode.leaf {
|
|
8
|
+
stroke: ${i.leafStrokeColor};
|
|
9
|
+
stroke-width: ${i.leafStrokeWidth};
|
|
10
|
+
fill: ${i.leafFillColor};
|
|
11
|
+
}
|
|
12
|
+
.treemapLabel {
|
|
13
|
+
fill: ${u};
|
|
14
|
+
font-size: ${i.labelFontSize};
|
|
15
|
+
}
|
|
16
|
+
.treemapValue {
|
|
17
|
+
fill: ${f};
|
|
18
|
+
font-size: ${i.valueFontSize};
|
|
19
|
+
}
|
|
20
|
+
.treemapTitle {
|
|
21
|
+
fill: ${s};
|
|
22
|
+
font-size: ${i.titleFontSize};
|
|
23
|
+
}
|
|
24
|
+
`},"getStyles"),dt=ht,At={parser:$e,get db(){return new Ae},renderer:ut,styles:dt};export{At as diagram};
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
import{a as V}from"./chunk-LEGNM6PH.js";import{a as j}from"./chunk-YPWIQAHX.js";import"./chunk-PJDMAGPE.js";import"./chunk-DN4Y7LXJ.js";import"./chunk-H4YEV7VR.js";import"./chunk-JZV675LF.js";import"./chunk-E2UQN267.js";import"./chunk-CZIM56BV.js";import"./chunk-6QRHYJ5Q.js";import"./chunk-GBARLDDT.js";import"./chunk-6RCFKBVR.js";import"./chunk-AKHBD6LT.js";import"./chunk-U5STX66M.js";import"./chunk-HUVVDQHZ.js";import"./chunk-432I4U3B.js";import"./chunk-ONCOEVBS.js";import"./chunk-WKCPBR3C.js";import{f as X}from"./chunk-Z4ZDIMO2.js";import{i as w,l as G,p as L}from"./chunk-VEMTQQ7Y.js";import"./chunk-NXHT5I2L.js";import{$ as k,C as v,I as b,U as N,V as T,W as C,X as I,Y as O,Z as W,_ as H,da as U,r as D}from"./chunk-MYJRFART.js";import{b as f,d as _}from"./chunk-3ZSL2TGQ.js";import{a as o}from"./chunk-ZE5RDJX6.js";import"./chunk-PHKIAKHS.js";var Y="position frame",z="frame positioned",F="position relation",K="relation positioned",we=o(function(e){f.debug("options str",e)},"setOptions"),ye=o(function(){return{}},"getOptions"),Pe=o(function(){q(),N()},"clear");function q(){S={}}o(q,"reset");var Se=D.eventmodeling,Me=o(()=>L({...Se,...v().eventmodeling}),"getConfig"),S={};function J(){let e=ke,{ast:n}=S,t=A();if(!n)throw new Error("No data for EventModel");return n.frames.forEach((i,r)=>{let a=re(i,n.dataEntities,t);e=P(e,{$kind:Y,index:r,frame:i,textProps:a});let d;ce(i)?(f.debug("source frame",i.sourceFrames),d=n.frames.filter(l=>i.sourceFrames.some(c=>c.$refText===l.name)),d.forEach(l=>{e=P(e,{$kind:F,index:r,frame:i,sourceFrame:l})})):e=P(e,{$kind:F,index:r,frame:i})}),e={...e,sortedSwimlanesArray:$(e.swimlanes)},e}o(J,"getState");function Q(e){S.ast=void 0;let n=new Set;for(let t of e.frames){if(n.has(t.name)){let i=t.$cstNode?.range.start.line,r=i===void 0?"":` on line ${i+1}`;throw new Error(`Duplicate event modeling frame ID "${t.name}"${r}`)}n.add(t.name)}S.ast=e}o(Q,"setAst");var s={swimlaneMinHeight:70,swimlanePadding:15,swimlaneGap:10,boxPadding:10,boxOverlap:90,boxDefaultY:0,boxMinWidth:80,boxMaxWidth:450,boxMinHeight:80,boxMaxHeight:750,contentStartX:250,textMaxWidth:430,boxTextFontWeight:"bold",boxTextPadding:10,swimlaneTextFontWeight:"bold",labelUiAutomation:"UI/Automation",labelUiAutomationPrefix:"UI/A: ",labelCommandReadModel:"Command/Read Model",labelCommandReadModelPrefix:"C/RM: ",labelEvents:"Events",labelEventsPrefix:"Stream: "};function A(){return s}o(A,"getDiagramProps");var ke={boxes:[],swimlanes:{},relations:[],maxR:0,sortedSwimlanesArray:[]};function Z(e){let n=e.split(".");if(n.length===2)return n[0]}o(Z,"extractNamespace");function ee(e){let n=e.split(".");return n.length===2?n[1]:e}o(ee,"extractName");function te(e,n){if(!(!n||n.length===0))return Object.values(e).find(t=>t.namespace===n)}o(te,"findSwimlaneByNamespace");function y(e,n,t){return Math.max(n,...Object.keys(e).filter(i=>{let r=Number.parseInt(i);return r>n&&r<t}).map(i=>Number.parseInt(i)))+1}o(y,"findNextAvailableIndex");function ne(e,n){let t=Z(e.entityIdentifier),i=te(n,t);switch(e.modelEntityType){case"ui":case"pcr":case"processor":return i?{index:i.index,label:i.namespace||s.labelUiAutomation}:t?{index:y(n,0,100),label:s.labelUiAutomationPrefix+t}:{index:0,label:s.labelUiAutomation};case"rmo":case"readmodel":case"cmd":case"command":return i?{index:i.index,label:i.namespace||s.labelCommandReadModel}:t?{index:y(n,100,200),label:s.labelCommandReadModelPrefix+t}:{index:100,label:s.labelCommandReadModel};default:return i?{index:i.index,label:i.namespace||s.labelEvents}:t?{index:y(n,200,300),label:s.labelEventsPrefix+t}:{index:200,label:s.labelEvents}}}o(ne,"calculateSwimlaneProps");function ie(e){let{themeVariables:n}=v();switch(e.modelEntityType){case"ui":return{fill:n.emUiFill??"white",stroke:n.emUiStroke??"#dbdada"};case"pcr":case"processor":return{fill:n.emProcessorFill??"#edb3f6",stroke:n.emProcessorStroke??"#b88cbf"};case"rmo":case"readmodel":return{fill:n.emReadModelFill??"#d3f1a2",stroke:n.emReadModelStroke??"#a3b732"};case"cmd":case"command":return{fill:n.emCommandFill??"#bcd6fe",stroke:n.emCommandStroke??"#679ac3"};case"evt":case"event":return{fill:n.emEventFill??"#ffb778",stroke:n.emEventStroke??"#c19a0f"};default:return{fill:"red",stroke:"black"}}}o(ie,"calculateEntityVisualProps");function re(e,n,t){let i=v(),r=b(ee(e.entityIdentifier)??"",i),a,d={fontSize:16,fontWeight:700,fontFamily:'"trebuchet ms", verdana, arial, sans-serif',joinWith:"<br/>"},c=`<b>${w(r,t.textMaxWidth,d)}</b>`;if(e.dataInlineValue&&(a=e.dataInlineValue,a=a.substring(a.indexOf("{")+1),a=a.substring(0,a.lastIndexOf("}")-1),a=b(a,i),a=w(a,t.textMaxWidth,d),a=a.replaceAll(" "," ")),e.dataReference){let p=n.find(M=>M.name===e.dataReference?.$refText);p&&(a=p.dataBlockValue,a=a.substring(a.indexOf(`{
|
|
2
|
+
`)+2),a=a.substring(0,a.lastIndexOf("}")-1),a=b(a,i),a=w(a,t.textMaxWidth,d),a=a.replaceAll(" "," "),a+="<br/>")}let m=a!==void 0;m&&(c+=`<br/><br/><code style="text-align: left; display: block;max-width:${t.textMaxWidth}px">${a}</code>`);let x={fontSize:d.fontSize,fontWeight:d.fontWeight,fontFamily:d.fontFamily},u=G(c,x),h=m?u.width/3:u.width,g={content:c,width:h,height:u.height};return f.debug(`[${e.name}] ${e.entityIdentifier} text`,g),g}o(re,"calculateTextProps");function ae(e,n){let t=n,i=ie(t.frame),r={width:t.textProps.width+2*s.boxTextPadding,height:t.textProps.height+2*s.boxTextPadding};return[{$kind:z,frame:t.frame,index:t.index,visual:i,dimension:r,textProps:t.textProps}]}o(ae,"decidePositionFrame");function oe(e,n,t){return n===void 0?s.contentStartX:n.index===e.index&&e.r?e.r+s.boxPadding:t===void 0?s.contentStartX:t.r-s.boxOverlap+s.boxPadding}o(oe,"calculateX");function se(e,n){let t=[...e.map(i=>i.r),n];return Math.max(...t)}o(se,"calculateMaxRight");function $(e){return Object.values(e).sort((n,t)=>n.index-t.index)}o($,"sortedSwimlanesArray");function de(e,n){let t=n,i=ne(t.frame,e.swimlanes),r;i.index in e.swimlanes?r=e.swimlanes[i.index]:r={index:i.index,label:i.label,r:0,y:i.index*s.swimlaneMinHeight+s.swimlaneGap,height:s.swimlaneMinHeight,maxHeight:s.swimlaneMinHeight};let a=e.boxes.length>0?e.boxes[e.boxes.length-1]:void 0,d=e.previousSwimlaneNumber!==void 0?e.swimlanes[e.previousSwimlaneNumber]:void 0,l={width:Math.max(s.boxMinWidth,Math.min(s.boxMaxWidth,t.dimension.width))+2*s.boxPadding,height:Math.max(s.boxMinHeight,Math.min(s.boxMaxHeight,t.dimension.height))+2*s.boxPadding},c=oe(r,d,a),m=c+l.width+s.boxPadding,x=se(Object.values(e.swimlanes),m);r.r=c+l.width,r.maxHeight=Math.max(r.maxHeight,l.height),r.height=Math.max(s.swimlaneMinHeight,r.maxHeight)+2*s.swimlanePadding;let u={x:c,y:s.swimlanePadding+r.y,r:m,dimension:l,leftSibling:!1,swimlane:r,visual:t.visual,text:t.textProps.content,frame:t.frame,index:t.index},h={...e,boxes:[...e.boxes,u],swimlanes:{...e.swimlanes,[`${r.index}`]:r},previousSwimlaneNumber:i.index,previousFrame:t.frame,maxR:x},g=$(h.swimlanes);g.length>0&&(g[0].y=0);for(let p=1;p<g.length;p++){let M=g[p],R=g[p-1];M.y=R.y+R.height+s.swimlaneGap}return h}o(de,"evolveFramePositioned");function le(e,n){return e===0&&n.sourceFrames.length===0}o(le,"isFirstFrame");function ce(e){return e.sourceFrames!==void 0&&e.sourceFrames!==null&&e.sourceFrames.length>0}o(ce,"hasSourceFrame");function B(e,n){if(n!=null)return e.find(t=>t.frame.name===n.name)}o(B,"findBoxByFrame");function me(e,n,t){if(!(t<0))for(let i=t;i>=0;i--){let r=e[i];if(r.swimlane.index!==n)return r}}o(me,"findBoxByLineIndex");function ue(e,n){let t=n;if(le(t.index,t.frame))return[];let i=B(e.boxes,t.frame);if(i===void 0)throw new Error(`Target box not found for frame ${t.frame.name}`);let r;if(t.sourceFrame)r=B(e.boxes,t.sourceFrame);else{if(X(t.frame))return[];r=me(e.boxes,i.swimlane.index,t.index-1)}return r===void 0?[]:[{$kind:K,frame:t.frame,index:t.index,sourceBox:r,targetBox:i}]}o(ue,"decidePositionRelation");function xe(e,n){let t=n,i={visual:{fill:"none",stroke:"#000"},source:{x:t.sourceBox.x,y:t.sourceBox.y},target:{x:t.targetBox.x,y:t.targetBox.y},sourceBox:t.sourceBox,targetBox:t.targetBox};return{...e,relations:[...e.relations,i]}}o(xe,"evolveRelationPositioned");var Fe={[Y]:ae,[F]:ue},Be={[z]:de,[K]:xe};function fe(e,n){let t=Fe[n.$kind];if(t==null)return[];let i=t(e,n);return f.debug("decided events",i),i}o(fe,"decide");function ge(e,n){let t=n.reduce((i,r)=>{let a=Be[r.$kind];return a==null?i:a(i,r)},e);return f.debug("evolve events",{state:e,newState:t,events:n}),t}o(ge,"evolve");function P(e,n){let t=fe(e,n);return ge(e,t)}o(P,"dispatch");var E={getConfig:Me,preserveCommentsWhenParsing:!0,setOptions:we,getOptions:ye,clear:Pe,setAccTitle:T,getAccTitle:C,getAccDescription:O,setAccDescription:I,setDiagramTitle:W,getDiagramTitle:H,setAst:Q,getDiagramProps:A,getState:J},Ee={parse:o(async e=>{let n=await j("eventmodeling",e);f.debug(n),E.setAst(n),V(n,E)},"parse")},Ae=k(),$e=Ae?.eventmodeling;function he(e,n){return t=>{let i=t.swimlane.y+n.swimlanePadding,r=e.append("g").attr("class","em-box");r.append("rect").attr("x",t.x).attr("y",i).attr("rx","3").attr("width",t.dimension.width).attr("height",t.dimension.height).attr("stroke",t.visual.stroke).attr("fill",t.visual.fill),r.append("foreignObject").attr("x",t.x+n.boxPadding).attr("y",i+10).attr("width",t.dimension.width-2*n.boxPadding).attr("height",t.dimension.height-2*n.boxPadding).append("xhtml:div").style("display","table").style("height","100%").style("width","100%").append("span").style("display","table-cell").style("text-align","center").style("vertical-align","middle").html(t.text)}}o(he,"renderD3Box");function pe(e,n){return e>n}o(pe,"dirUpwards");function ve(e,n,t,i){return r=>{let a=r.sourceBox.swimlane.y+n.swimlanePadding,d=r.targetBox.swimlane.y+n.swimlanePadding,l=pe(a,d),c=r.sourceBox.x+r.sourceBox.dimension.width*2/3,m=r.targetBox.x+r.targetBox.dimension.width/3,x,u;f.debug(`rendering relation up=${l} for `,{sourceBox:r.sourceBox,targetBox:r.targetBox}),l?(x=a,u=d+r.targetBox.dimension.height):(x=a+r.sourceBox.dimension.height,u=d);let h=i.emRelationStroke??r.visual.stroke;e.append("path").attr("class","em-relation").attr("fill",r.visual.fill).attr("stroke",h).attr("stroke-width","1").attr("marker-end",`url(#${t})`).attr("d",`M${c} ${x} L${m} ${u}`)}}o(ve,"renderD3Relation");function be(e,n,t,i){return r=>{let a=e.append("g").attr("class","em-swimlane"),d=i.emSwimlaneBackgroundOdd??"rgb(250,250,250)",l=i.emSwimlaneBackgroundStroke??"rgb(240,240,240)";a.append("rect").attr("x",0).attr("y",r.y).attr("rx","3").attr("width",n+t.swimlanePadding).attr("height",r.height).attr("fill",d).attr("stroke",l),a.append("text").attr("font-weight",t.swimlaneTextFontWeight).attr("x",30).attr("y",r.y+30).text(r.label)}}o(be,"renderD3Swimlane");var Re=o(function(e,n,t,i){if(f.debug("in eventmodeling renderer",e+`
|
|
3
|
+
`,"id:",n,t),!$e)throw new Error("EventModeling config not found");let r=i.db,{themeVariables:a,eventmodeling:d}=k(),l=_(`[id="${n}"]`),c=r.getDiagramProps(),m=r.getState(),x=`em-arrowhead-${n}`,u=a.emArrowhead??"#000000";m.sortedSwimlanesArray.forEach(be(l,m.maxR,c,a)),m.boxes.forEach(he(l,c)),m.relations.forEach(ve(l,c,x,a)),l.append("defs").append("marker").attr("id",x).attr("markerWidth","10").attr("markerHeight","7").attr("refX","10").attr("refY","3.5").attr("orient","auto").append("polygon").attr("points","0 0, 10 3.5, 0 7").attr("fill",u),U(void 0,l,d?.padding??30,d?.useMaxWidth)},"draw"),De={draw:Re},Ne=o(e=>"","getStyles"),Te=Ne,Le={parser:Ee,db:E,renderer:De,styles:Te};export{Le as diagram};
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import{a as z}from"./chunk-7MAT7NHP.js";import{a as O}from"./chunk-LEGNM6PH.js";import{a as G}from"./chunk-YPWIQAHX.js";import"./chunk-PJDMAGPE.js";import"./chunk-DN4Y7LXJ.js";import"./chunk-H4YEV7VR.js";import"./chunk-JZV675LF.js";import"./chunk-E2UQN267.js";import"./chunk-CZIM56BV.js";import"./chunk-6QRHYJ5Q.js";import"./chunk-GBARLDDT.js";import"./chunk-6RCFKBVR.js";import"./chunk-AKHBD6LT.js";import"./chunk-U5STX66M.js";import"./chunk-HUVVDQHZ.js";import"./chunk-432I4U3B.js";import"./chunk-ONCOEVBS.js";import"./chunk-WKCPBR3C.js";import"./chunk-Z4ZDIMO2.js";import{a as X}from"./chunk-UX2S3LP3.js";import{b as H,e as W}from"./chunk-KDUDYTWO.js";import{p as y}from"./chunk-VEMTQQ7Y.js";import"./chunk-NXHT5I2L.js";import{C as I,I as N,P as A,U as E,V as L,W as D,X as _,Y as M,Z as S,_ as R,r as k}from"./chunk-MYJRFART.js";import{b as C}from"./chunk-3ZSL2TGQ.js";import{a as f}from"./chunk-ZE5RDJX6.js";import"./chunk-PHKIAKHS.js";var q=/[─━│┃└┗├┣]/,U=/[└┗├┣]/,re=/[─━]/,Y=/^[\s│┃]+$/,P=/^\s*(title[\t ]|accTitle[\t ]*:|accDescr[\t ]*[:{])/,F=/^\s*%%/,ne=" ";function j(r){return r.some(t=>q.test(t))}f(j,"isBoxDrawingFormat");function J(r){for(let t of r){let e=U.exec(t);if(e?.index&&e.index>0)return e.index}return 4}f(J,"inferSegmentWidth");function K(r,t){return r.replace(/\bline\s+(\d+)\b/gi,(e,n)=>{let s=parseInt(n,10),i=t.get(s);return i?`line ${i}`:e})}f(K,"remapErrorLines");function Q(r){let t=r.split(`
|
|
2
|
+
`),e=new Map,n=-1;for(let[p,c]of t.entries())if(c.trim()==="treeView-beta"){n=p;break}if(n===-1)return{text:r,lineMap:e};let s=[];for(let p=n+1;p<t.length;p++){let c=t[p];c.trim()===""||F.test(c)||P.test(c)||Y.test(c)||s.push(c.replace(/\t/g," "))}if(!j(s))return{text:r,lineMap:e};let i=J(s),o=[],a=0;for(let p=0;p<=n;p++)o.push(t[p]),a++,e.set(a,p+1);for(let p=n+1;p<t.length;p++){let c=t[p],d=c.trim(),h=p+1;if(d===""){o.push(c),a++,e.set(a,h);continue}if(F.test(c)){o.push(c),a++,e.set(a,h);continue}if(P.test(c)){o.push(c),a++,e.set(a,h);continue}if(Y.test(c))continue;let l=c.replace(/\t/g," "),m=U.exec(l);if(m?.index!==void 0){let g=m.index,w=Math.round(g/i)+1,u=g+1;for(;u<l.length&&re.test(l[u]);)u++;for(;u<l.length&&l[u]===" ";)u++;let v=l.slice(u).trimEnd();if(!v)throw new Error(`Line ${h}: Empty node \u2014 expected a filename or directory name after the box-drawing prefix`);let te=ne.repeat(w);o.push(te+v),a++,e.set(a,h)}else{if(/^[\s─━│┃└┗├┣]+$/.test(l))continue;if(q.test(l))o.push(c),a++,e.set(a,h);else{if(/^\s+/.test(l))throw new Error(`Line ${h}: Unexpected indentation without box-drawing characters. In box-drawing format, use \u251C\u2500\u2500 or \u2514\u2500\u2500 prefixes for indented nodes.`);o.push(c),a++,e.set(a,h)}}}return{text:o.join(`
|
|
3
|
+
`),lineMap:e}}f(Q,"preprocessBoxDrawing");var x=new z(()=>({cnt:1,stack:[{id:0,level:-1,name:"/",nodeType:"directory",children:[]}]})),ie=f(()=>{x.reset(),E()},"clear"),oe=f(()=>x.records.stack[0],"getRoot"),se=f(()=>x.records.cnt,"getCount"),ae=k.treeView,ce=f(()=>y(ae,I().treeView),"getConfig"),le=f((r,t,e,n,s,i)=>{for(;r<=x.records.stack[x.records.stack.length-1].level;)x.records.stack.pop();let o={id:x.records.cnt++,level:r,name:t,nodeType:e,icon:s,cssClass:n,description:i,children:[]};x.records.stack[x.records.stack.length-1].children.push(o),x.records.stack.push(o)},"addNode"),de={clear:ie,addNode:le,getRoot:oe,getCount:se,getConfig:ce,getAccTitle:D,getAccDescription:M,getDiagramTitle:R,setAccDescription:_,setAccTitle:L,setDiagramTitle:S},B=de,he=f(r=>{O(r,B);for(let t of r.nodes){let e=typeof t.indent=="number"?t.indent:0,n=t.name,s=n.endsWith("/");s&&(n=n.slice(0,-1));let i=s?"directory":"file",o=t.classAnnotation||void 0,a=t.iconAnnotation,p=a!==void 0?a||"none":void 0,c=t.descAnnotation||void 0,d=c?N(c,I()):void 0;B.addNode(e,n,i,o,p,d)}},"populate"),pe={parse:f(async r=>{let{text:t,lineMap:e}=Q(r);try{let n=await G("treeView",t);C.debug(n),he(n)}catch(n){throw e.size>0&&n instanceof Error&&(n.message=K(n.message,e)),n}},"parse")},b={prefix:"mermaid-treeview",height:24,width:24,icons:{folder:{body:'<path fill="currentColor" d="M10.59 4.59A2 2 0 0 0 9.17 4H4a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h16a2 2 0 0 0 2-2V8a2 2 0 0 0-2-2h-7.17z"/>'},file:{body:'<path fill="currentColor" fill-rule="evenodd" d="M6 2a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8.83a2 2 0 0 0-.59-1.42l-4.82-4.82A2 2 0 0 0 13.17 2H6Zm7.5 1.9l4.6 4.6h-3.6a1 1 0 0 1-1-1V3.9Z" clip-rule="evenodd"/>'}}};function ee(r,t){let e=t?.filenameIcons?.[r];if(e)return e;let n=r.lastIndexOf(".");if(n>0){let s=r.substring(n).toLowerCase(),i=t?.extensionIcons;return i?.[s]??i?.[s.slice(1)]}}f(ee,"detectIcon");function T(r,t){return r.includes(":")?r:r in b.icons||!t?`${b.prefix}:${r}`:`${t}:${r}`}f(T,"qualifyIcon");function $(r,t){if(r.icon!=="none"){if(r.icon)return T(r.icon,t.defaultIconPack);if(t.showIcons){if(r.nodeType==="file"){let e=ee(r.name,t);if(e==="none")return;if(e)return T(e,t.defaultIconPack)}return`${b.prefix}:${r.nodeType==="directory"?"folder":"file"}`}}}f($,"getNodeIcon");H([{name:b.prefix,icons:b}]);var V=14,fe=4,ge=16,ue=f(async(r,t)=>{let e=[],n=f(i=>{let o=$(i,t);o&&e.push({icon:o,node:i}),i.children.forEach(n)},"collect");n(r);let s=await Promise.all(e.map(async({icon:i,node:o})=>({id:o.id,svg:await W(i,{height:V,width:V})})));return new Map(s.map(({id:i,svg:o})=>[i,o]))},"resolveNodeIcons"),me=f((r,t,e,n,s,i)=>{let o=n.append("g"),a="treeView-node-label";e.nodeType==="directory"&&(a+=" treeView-node-dir"),e.cssClass&&(a+=` ${e.cssClass}`);let p=V+fe,c=$(e,s),d=c!==void 0;c&&o.append("g").attr("class","treeView-node-icon").attr("transform",`translate(${r+s.paddingX}, ${t+s.paddingY})`).html(i.get(e.id)??"");let h=o.append("text").text(e.name).attr("dominant-baseline","middle").attr("class",a),{height:l,width:m}=h.node().getBBox(),g=l+s.paddingY*2,w=r+s.paddingX+(d?p:0);h.attr("x",w),h.attr("y",t+g/2);let u=w+m,v=m+s.paddingX*2+(d?p:0);return e.BBox={x:r,y:t,width:v,height:g},e.cssClass?.split(/\s+/).includes("highlight")&&o.insert("rect",":first-child").attr("x",r).attr("y",t+1).attr("width",0).attr("height",g-2).attr("rx",3).attr("class","treeView-highlight-bg"),{node:e,nodeGroup:o,labelRightEdge:u,centerY:t+g/2}},"positionLabel"),Z=f((r,t,e,n,s,i)=>r.append("line").attr("x1",t).attr("y1",e).attr("x2",n).attr("y2",s).attr("stroke-width",i).attr("class","treeView-node-line"),"positionLine"),we=f((r,t,e,n)=>{let s=0,i=0,o=[],a=f((d,h,l,m)=>{let g=m*(l.rowIndent+l.paddingX),w=me(g,s,h,d,l,n);o.push(w);let{height:u,width:v}=h.BBox;Z(d,g-l.rowIndent,s+u/2,g,s+u/2,l.lineThickness),i=Math.max(i,g+v),s+=u},"drawNode"),p=f((d,h=0)=>{a(r,d,e,h),d.children.forEach(w=>{p(w,h+1)});let{x:l,y:m,height:g}=d.BBox;if(d.children.length){let{y:w,height:u}=d.children[d.children.length-1].BBox;Z(r,l+e.paddingX,m+g,l+e.paddingX,w+u/2+e.lineThickness/2,e.lineThickness)}},"processNode");p(t);let c=o.filter(d=>d.node.description);if(c.length>0){let h=Math.max(...o.map(l=>l.labelRightEdge))+ge;for(let l of c){let g=l.nodeGroup.append("text").text(l.node.description).attr("dominant-baseline","middle").attr("class","treeView-node-description").attr("x",h).attr("y",l.centerY).node().getBBox();i=Math.max(i,h+g.width+e.paddingX)}}for(let d of o)if(d.node.cssClass?.split(/\s+/).includes("highlight")){let h=d.nodeGroup.select(".treeView-highlight-bg");if(!h.empty()){let l=i-d.node.BBox.x+8;h.attr("width",l),i=Math.max(i,d.node.BBox.x+l+2)}}return{totalHeight:s,totalWidth:i}},"drawTree"),xe=f(async(r,t,e,n)=>{C.debug(`Rendering treeView diagram
|
|
4
|
+
`+r);let s=n.db,i=s.getRoot(),o=s.getConfig(),a=X(t),p=a.append("g");p.attr("class","tree-view");let c=await ue(i,o),{totalHeight:d,totalWidth:h}=we(p,i,o,c);a.attr("viewBox",`-${o.lineThickness/2} 0 ${h} ${d}`),A(a,d,h,o.useMaxWidth)},"draw"),ve={draw:xe},be=ve,Ce={labelFontSize:"16px",labelColor:"black",lineColor:"black",iconColor:"#546e7a",descriptionColor:"#6a9955",highlightBg:"rgba(255, 193, 7, 0.15)",highlightStroke:"#ffc107"},Ie=f(({treeView:r})=>{let{labelFontSize:t,labelColor:e,lineColor:n,iconColor:s,descriptionColor:i,highlightBg:o,highlightStroke:a}=y(Ce,r);return`
|
|
5
|
+
.treeView-node-label {
|
|
6
|
+
font-size: ${t};
|
|
7
|
+
fill: ${e};
|
|
8
|
+
white-space: pre;
|
|
9
|
+
}
|
|
10
|
+
.treeView-node-dir {
|
|
11
|
+
font-weight: bold;
|
|
12
|
+
}
|
|
13
|
+
.treeView-node-line {
|
|
14
|
+
stroke: ${n};
|
|
15
|
+
}
|
|
16
|
+
.treeView-node-icon {
|
|
17
|
+
color: ${s};
|
|
18
|
+
}
|
|
19
|
+
.treeView-node-description {
|
|
20
|
+
font-size: ${t};
|
|
21
|
+
fill: ${i};
|
|
22
|
+
font-style: italic;
|
|
23
|
+
white-space: pre;
|
|
24
|
+
}
|
|
25
|
+
.treeView-highlight-bg {
|
|
26
|
+
fill: ${o};
|
|
27
|
+
stroke: ${a};
|
|
28
|
+
stroke-width: 1;
|
|
29
|
+
}
|
|
30
|
+
`},"styles"),ye=Ie,De={db:B,renderer:be,parser:pe,styles:ye};export{De as diagram};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{a as n,b as p,c as f}from"./chunk-RC2NPHSX.js";import{a as i}from"./chunk-LEGNM6PH.js";import{b as l}from"./chunk-YPWIQAHX.js";import"./chunk-PJDMAGPE.js";import"./chunk-DN4Y7LXJ.js";import"./chunk-H4YEV7VR.js";import"./chunk-JZV675LF.js";import"./chunk-E2UQN267.js";import"./chunk-CZIM56BV.js";import"./chunk-6QRHYJ5Q.js";import"./chunk-GBARLDDT.js";import"./chunk-6RCFKBVR.js";import"./chunk-AKHBD6LT.js";import{b as m}from"./chunk-U5STX66M.js";import"./chunk-HUVVDQHZ.js";import"./chunk-432I4U3B.js";import"./chunk-ONCOEVBS.js";import"./chunk-WKCPBR3C.js";import"./chunk-Z4ZDIMO2.js";import"./chunk-UX2S3LP3.js";import"./chunk-MYJRFART.js";import{b as o}from"./chunk-3ZSL2TGQ.js";import{a as t}from"./chunk-ZE5RDJX6.js";import"./chunk-PHKIAKHS.js";var c=m().RailroadEbnf.parser.LangiumParser,s=t(e=>{let r=e.alternatives.map(E);return r.length===1?r[0]:{type:"choice",alternatives:r}},"transformChoice"),E=t(e=>{let r=e.elements.map(y);return r.length===1?r[0]:{type:"sequence",elements:r}},"transformSequence"),u=t(e=>{switch(e.$type){case"EbnfTerminal":return{type:"terminal",value:e.value};case"EbnfNonTerminal":return{type:"nonterminal",name:e.name};case"EbnfSpecial":return{type:"special",text:e.text};case"EbnfGroup":return s(e.element);case"EbnfOptional":return{type:"optional",element:s(e.element)};case"EbnfRepetition":return{type:"repetition",element:s(e.element),min:0,max:1/0};default:throw new Error(`Unsupported EBNF primary node: ${e.$type}`)}},"transformPrimary"),b=t((e,r)=>{switch(r.$type){case"EbnfOptionalPostfix":return{type:"optional",element:e};case"EbnfZeroOrMorePostfix":return{type:"repetition",element:e,min:0,max:1/0};case"EbnfOneOrMorePostfix":return{type:"repetition",element:e,min:1,max:1/0};case"EbnfExceptionPostfix":return{type:"sequence",elements:[e,{type:"terminal",value:"-"},u(r.except)]};default:throw new Error(`Unsupported EBNF postfix node: ${r.$type}`)}},"transformPostfix"),y=t(e=>e.postfixes.reduce((r,a)=>b(r,a),u(e.base)),"transformTerm"),d=t(e=>({name:e.name,definition:s(e.definition)}),"transformRule"),v=t(e=>{i(e,n),e.title&&n.setTitle(e.title),e.rules.map(r=>n.addRule(d(r)))},"populateDb"),P={parse:t(e=>{n.clear(),o.debug("[EBNF Parser] Starting Langium parse");let r=c.parse(e);if(r.lexerErrors.length>0||r.parserErrors.length>0)throw new l(r);let a=r.value;o.debug("[EBNF Parser] Parsed rules:",a.rules.length),v(a),o.debug("[EBNF Parser] Parse complete")},"parse"),parser:{yy:n}},$={parser:P,db:n,renderer:f,styles:p};export{$ as diagram};
|