@hardikg/mdview 0.10.0 → 0.11.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/CHANGELOG.md +63 -0
- package/README.md +52 -10
- package/bin/chunk-RBYD2HWV.mjs +196 -0
- package/bin/chunk-WWM6JNAS.mjs +209 -0
- package/bin/chunk-XFRQFZZ4.mjs +20 -0
- package/bin/mdview.mjs +521 -1323
- package/bin/regex-worker.mjs +52 -0
- package/bin/server-KALIU7HM.mjs +1854 -0
- package/bin/shiki-5SFVA32N.mjs +13 -0
- package/dist/client/assets/23I4SOAX-BN9xvzna.js +2 -0
- package/dist/client/assets/26H2HVXD-Cu1OTMxT.js +2 -0
- package/dist/client/assets/2IZ5MNOH-DMjMO3_9.js +1 -0
- package/dist/client/assets/2P3CZEXH-D-4BP7dg.js +2 -0
- package/dist/client/assets/3E5HRNYT-DUYblpdl.js +5 -0
- package/dist/client/assets/3JIRLDUO-C1CwW1Ha.js +1 -0
- package/dist/client/assets/5MJ3UKSG-DtT76qKq.js +2 -0
- package/dist/client/assets/5THPTBWS-Ce_hS451.js +1 -0
- package/dist/client/assets/7WLXJQOR-D6QVYUu9.js +1 -0
- package/dist/client/assets/A255FCTW-woaH7Mj_.js +1 -0
- package/dist/client/assets/AM43MQ64-CsWC_OQH.js +2 -0
- package/dist/client/assets/AOZTNTMC-BIehUQHD.js +5 -0
- package/dist/client/assets/AQNLM6KG-DIUuJgPm.js +4 -0
- package/dist/client/assets/BNU2RHQB-DeXpwU5k.js +2 -0
- package/dist/client/assets/C5HTQT3I-7U13x70S.js +4 -0
- package/dist/client/assets/CPKRWH5G-CRxaqyOs.js +12 -0
- package/dist/client/assets/CUVCMPQX-JTGMOfG2.js +1 -0
- package/dist/client/assets/D4V2MWCI-CytzCr6g.js +1 -0
- package/dist/client/assets/DHKBVIA3-CVnlqiEq.js +1 -0
- package/dist/client/assets/DKTLEL5E-DciMwFJ1.js +1 -0
- package/dist/client/assets/DUZNPW7S-D3pifVNb.js +2 -0
- package/dist/client/assets/E3FWOBN4-D5m5o2g0.js +4 -0
- package/dist/client/assets/E65FQMJL-Bg5F0Zo8.js +1 -0
- package/dist/client/assets/FTXIJQGB-CggtIYAM.js +1 -0
- package/dist/client/assets/G3MDBVQH-BZmnMkFw.js +1 -0
- package/dist/client/assets/G3OATVW2-VpVvT5i2.js +8 -0
- package/dist/client/assets/IV52FOAS-DgPxxRI4.js +5 -0
- package/dist/client/assets/JTJEEBDN-Bl0iUT_r.js +2 -0
- package/dist/client/assets/K7FUICZ3-DgoihkiR.js +2 -0
- package/dist/client/assets/LHH2HHRB-BXHTnBD0.js +2 -0
- package/dist/client/assets/MSPQPZZY-DQg7F6a8.js +4 -0
- package/dist/client/assets/OB6ZFVKF-UHmC8m-y.js +2 -0
- package/dist/client/assets/PLTZDMI2-C1ZAoc-e.js +1 -0
- package/dist/client/assets/R7EPXMMD-ChI1SqjJ.js +5 -0
- package/dist/client/assets/RVARI57O-CgA1WoRv.js +1 -0
- package/dist/client/assets/SPBWZ4VS-EqfCsJ5V.js +1 -0
- package/dist/client/assets/SR7OOV3Q-CFnFs0kL.js +4 -0
- package/dist/client/assets/STAXBNH4-D4c13Xlj.js +2 -0
- package/dist/client/assets/SXFARSFO-CkFSkgdi.js +1 -0
- package/dist/client/assets/TC77ISAL--WP0GBo0.js +2 -0
- package/dist/client/assets/TYIQQHVC-B67pCpxM.js +13 -0
- package/dist/client/assets/TZUXETIT-BFD9W5hl.js +2 -0
- package/dist/client/assets/U7N72BGE-Do3829la.js +6 -0
- package/dist/client/assets/UFPIB6EZ-DTs_MyQv.js +3 -0
- package/dist/client/assets/UO52YEYL-DN1qbGwF.js +3 -0
- package/dist/client/assets/VIK3ONSK-DC8mR2sZ.js +2 -0
- package/dist/client/assets/VVVO4ZVP-DAtGLbxR.js +2 -0
- package/dist/client/assets/WRGXZO53-D30IuREw.js +3 -0
- package/dist/client/assets/X5SG7MGC-CdjdoL_s.js +2 -0
- package/dist/client/assets/XLHPVVFU-BFP9ID9p.js +2 -0
- package/dist/client/assets/XXYPNCD5-DqCewu_S.js +5 -0
- package/dist/client/assets/Z6WRYFJC-BEt1KCoU.js +7 -0
- package/dist/client/assets/ZI2QNEGF-VzC4uHcW.js +8 -0
- package/dist/client/assets/index-B96jWJTi.css +1 -0
- package/dist/client/assets/index-DCU09WmS.js +2 -0
- package/dist/client/assets/katex-C0xaXAD4.js +257 -0
- package/dist/client/assets/katex.min-3X1qOa03.js +1 -0
- package/dist/client/assets/katex.min-DMey5pMQ.css +1 -0
- package/dist/client/assets/lazy-DaMZI1F7.js +45 -0
- package/dist/client/index.html +2 -2
- package/package.json +32 -27
- package/dist/client/assets/2DXBBFLN-BxPqHNSN.js +0 -5
- package/dist/client/assets/46IJ22JX-u_jvQJNg.js +0 -2
- package/dist/client/assets/4TTDE5I4-BgbNAVNj.js +0 -3
- package/dist/client/assets/4UF3HTLV-DNbPxlOE.js +0 -2
- package/dist/client/assets/5THPTBWS-D57irc_4.js +0 -1
- package/dist/client/assets/7WLXJQOR-CHhKreq0.js +0 -1
- package/dist/client/assets/AAXQQPKT-CsAJqrOC.js +0 -5
- package/dist/client/assets/AKE5O7KZ-MSuBOjCG.js +0 -2
- package/dist/client/assets/BNMLP6AG-Ca3zyKQY.js +0 -3
- package/dist/client/assets/DKTLEL5E-B7ILCVTH.js +0 -1
- package/dist/client/assets/DR6PKOQU-Bw7cHvYp.js +0 -2
- package/dist/client/assets/E4RJ7UJB-CYB5C4K7.js +0 -2
- package/dist/client/assets/ELSXBIJH-DG0MW5dC.js +0 -1
- package/dist/client/assets/ERTIBQVS-BMWumWfk.js +0 -2
- package/dist/client/assets/F653G4FO-FI8M9Mc0.js +0 -12
- package/dist/client/assets/FKCDD66M-BPFkyrwI.js +0 -1
- package/dist/client/assets/FP7KDXVC-BLEBNkCO.js +0 -2
- package/dist/client/assets/FT5I3RHX-j5YoMicq.js +0 -6
- package/dist/client/assets/FTXIJQGB-nrHdCfp7.js +0 -1
- package/dist/client/assets/G3MDBVQH-EkdejvdW.js +0 -1
- package/dist/client/assets/GY35JXOZ-3ovTGxgz.js +0 -2
- package/dist/client/assets/H5EEJPP2-CNVQBEB3.js +0 -1
- package/dist/client/assets/HWDLEDTA-C_JcdBMO.js +0 -1
- package/dist/client/assets/JZWSX6AR-OwVPptYv.js +0 -1
- package/dist/client/assets/KQOEJWJY-DKTXya68.js +0 -2
- package/dist/client/assets/KS3BB3KE-QkpqVdmA.js +0 -1
- package/dist/client/assets/KXJRRZHI-BQRjeGWj.js +0 -2
- package/dist/client/assets/KaTeX_AMS-Regular-DMm9YOAa.woff +0 -0
- package/dist/client/assets/KaTeX_AMS-Regular-DRggAlZN.ttf +0 -0
- package/dist/client/assets/KaTeX_Caligraphic-Bold-ATXxdsX0.ttf +0 -0
- package/dist/client/assets/KaTeX_Caligraphic-Bold-BEiXGLvX.woff +0 -0
- package/dist/client/assets/KaTeX_Caligraphic-Regular-CTRA-rTL.woff +0 -0
- package/dist/client/assets/KaTeX_Caligraphic-Regular-wX97UBjC.ttf +0 -0
- package/dist/client/assets/KaTeX_Fraktur-Bold-BdnERNNW.ttf +0 -0
- package/dist/client/assets/KaTeX_Fraktur-Bold-BsDP51OF.woff +0 -0
- package/dist/client/assets/KaTeX_Fraktur-Regular-CB_wures.ttf +0 -0
- package/dist/client/assets/KaTeX_Fraktur-Regular-Dxdc4cR9.woff +0 -0
- package/dist/client/assets/KaTeX_Main-Bold-Jm3AIy58.woff +0 -0
- package/dist/client/assets/KaTeX_Main-Bold-waoOVXN0.ttf +0 -0
- package/dist/client/assets/KaTeX_Main-BoldItalic-DzxPMmG6.ttf +0 -0
- package/dist/client/assets/KaTeX_Main-BoldItalic-SpSLRI95.woff +0 -0
- package/dist/client/assets/KaTeX_Main-Italic-3WenGoN9.ttf +0 -0
- package/dist/client/assets/KaTeX_Main-Italic-BMLOBm91.woff +0 -0
- package/dist/client/assets/KaTeX_Main-Regular-Dr94JaBh.woff +0 -0
- package/dist/client/assets/KaTeX_Main-Regular-ypZvNtVU.ttf +0 -0
- package/dist/client/assets/KaTeX_Math-BoldItalic-B3XSjfu4.ttf +0 -0
- package/dist/client/assets/KaTeX_Math-BoldItalic-iY-2wyZ7.woff +0 -0
- package/dist/client/assets/KaTeX_Math-Italic-DA0__PXp.woff +0 -0
- package/dist/client/assets/KaTeX_Math-Italic-flOr_0UB.ttf +0 -0
- package/dist/client/assets/KaTeX_SansSerif-Bold-CFMepnvq.ttf +0 -0
- package/dist/client/assets/KaTeX_SansSerif-Bold-DbIhKOiC.woff +0 -0
- package/dist/client/assets/KaTeX_SansSerif-Italic-DN2j7dab.woff +0 -0
- package/dist/client/assets/KaTeX_SansSerif-Italic-YYjJ1zSn.ttf +0 -0
- package/dist/client/assets/KaTeX_SansSerif-Regular-BNo7hRIc.ttf +0 -0
- package/dist/client/assets/KaTeX_SansSerif-Regular-CS6fqUqJ.woff +0 -0
- package/dist/client/assets/KaTeX_Script-Regular-C5JkGWo-.ttf +0 -0
- package/dist/client/assets/KaTeX_Script-Regular-D5yQViql.woff +0 -0
- package/dist/client/assets/KaTeX_Size1-Regular-C195tn64.woff +0 -0
- package/dist/client/assets/KaTeX_Size1-Regular-Dbsnue_I.ttf +0 -0
- package/dist/client/assets/KaTeX_Size2-Regular-B7gKUWhC.ttf +0 -0
- package/dist/client/assets/KaTeX_Size2-Regular-oD1tc_U0.woff +0 -0
- package/dist/client/assets/KaTeX_Size3-Regular-CTq5MqoE.woff +0 -0
- package/dist/client/assets/KaTeX_Size3-Regular-DgpXs0kz.ttf +0 -0
- package/dist/client/assets/KaTeX_Size4-Regular-BF-4gkZK.woff +0 -0
- package/dist/client/assets/KaTeX_Size4-Regular-DWFBv043.ttf +0 -0
- package/dist/client/assets/KaTeX_Typewriter-Regular-C0xS9mPB.woff +0 -0
- package/dist/client/assets/KaTeX_Typewriter-Regular-D3Ib7_Hf.ttf +0 -0
- package/dist/client/assets/MFVI5XKI-DrRaRE9X.js +0 -1
- package/dist/client/assets/MWY2J62P-AbEgJnzK.js +0 -12
- package/dist/client/assets/MXGNCBL2-DG3CZR8g.js +0 -2
- package/dist/client/assets/N6DAJLIZ-BsZQKTyT.js +0 -3
- package/dist/client/assets/NU5M23IW-CvtpIovv.js +0 -2
- package/dist/client/assets/NV4XNBIS-nS8wAx3h.js +0 -8
- package/dist/client/assets/OGLU4SIR-DoTUWhkz.js +0 -2
- package/dist/client/assets/OUNS5N76-BwVLonT4.js +0 -8
- package/dist/client/assets/PU4ISKXV-BYX7eA_r.js +0 -2
- package/dist/client/assets/PUZGS23X-n6IKOr7S.js +0 -1
- package/dist/client/assets/Q3IYVLG5-hWt1rVyh.js +0 -4
- package/dist/client/assets/QYHQDLKZ-CjGeJM7R.js +0 -4
- package/dist/client/assets/RVARI57O-CXmrUIiS.js +0 -1
- package/dist/client/assets/RZSVICHU-BiwjruZZ.js +0 -4
- package/dist/client/assets/UEXXS2NB-Dkz_tz-N.js +0 -2
- package/dist/client/assets/UHTQJXKL-lvl-7QeT.js +0 -5
- package/dist/client/assets/URA2L2QI-B8pYKxOk.js +0 -1
- package/dist/client/assets/UXCHDUKG-BGy3ZRLM.js +0 -2
- package/dist/client/assets/VKNV3BUX-DZnoX4IV.js +0 -5
- package/dist/client/assets/VMV7XPHP-6QkisQwm.js +0 -4
- package/dist/client/assets/WEVWDWVA-nohBBhTA.js +0 -2
- package/dist/client/assets/XRRJ35LF-BE7gSN1k.js +0 -2
- package/dist/client/assets/YFKBLVVN-CVTPpei6.js +0 -6
- package/dist/client/assets/YHRE5QGZ-Bs7dUKjj.js +0 -4
- package/dist/client/assets/ZF3OVT4B-6LaC6iLs.js +0 -3
- package/dist/client/assets/index-392ivruk.js +0 -2
- package/dist/client/assets/index-CGQuEJ_w.css +0 -1
- package/dist/client/assets/jetbrains-mono-cyrillic-400-normal-ugxPyKxw.woff +0 -0
- package/dist/client/assets/jetbrains-mono-cyrillic-600-normal-8K4wrrwR.woff +0 -0
- package/dist/client/assets/jetbrains-mono-greek-400-normal-B9oWc5Lo.woff +0 -0
- package/dist/client/assets/jetbrains-mono-greek-600-normal-mc2nkWzM.woff +0 -0
- package/dist/client/assets/jetbrains-mono-latin-400-normal-6-qcROiO.woff +0 -0
- package/dist/client/assets/jetbrains-mono-latin-600-normal-BfsvjouI.woff +0 -0
- package/dist/client/assets/jetbrains-mono-latin-ext-400-normal-fXTG6kC5.woff +0 -0
- package/dist/client/assets/jetbrains-mono-latin-ext-600-normal-DObL3zCW.woff +0 -0
- package/dist/client/assets/jetbrains-mono-vietnamese-400-normal-CqNFfHCs.woff +0 -0
- package/dist/client/assets/jetbrains-mono-vietnamese-600-normal-OWROknRo.woff +0 -0
- package/dist/client/assets/katex-C5jXJg4s.js +0 -257
- package/dist/client/assets/katex.min-BYZTj3zW.css +0 -1
- package/dist/client/assets/katex.min-DXaO1tdm.js +0 -1
- package/dist/client/assets/lazy-CKqR1774.js +0 -43
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{G as xe,y as we}from"./NV4XNBIS-nS8wAx3h.js";import{g as Ae,E as ve,o as Ie,s as $e}from"./HWDLEDTA-C_JcdBMO.js";import{f as Fe,x as ot}from"./RZSVICHU-BiwjruZZ.js";import"./FTXIJQGB-nrHdCfp7.js";import"./lazy-CKqR1774.js";import"./index-392ivruk.js";import"./7WLXJQOR-CHhKreq0.js";import"./ELSXBIJH-DG0MW5dC.js";import"./FKCDD66M-BPFkyrwI.js";import"./JZWSX6AR-OwVPptYv.js";import"./URA2L2QI-B8pYKxOk.js";import"./DKTLEL5E-B7ILCVTH.js";var ke=34,Te=24,We=8,He=2e4,oe=1e4,Qt=2e6,he=4,Ge=3,fe=8,jt=20,ie=20,pe=14,_e=3;function Se(n,y,A,Y,N=Te){let G=n.length;if(G===0)return{width:0,height:0};let k=A==="LR"||A==="RL",mt=A==="BT"||A==="RL",X=[];for(let p=G-1;p>=0;p--)n[p].parent<0&&n[p].isGroup&&X.push(p);let C=Math.max(1,X.length),lt=new Int32Array(G).fill(-1);X.forEach((p,T)=>lt[p]=T);let vt=new Uint8Array(G);for(let p=0;p<G;p++)n[p].parent>=0&&(vt[n[p].parent]=1);let dt=new Float64Array(C).fill(N),Ft=N,me=p=>{let T=p,c=N;for(let j=0;n[T].parent>=0&&j<oe;j++)T=n[T].parent,lt[T]<0&&(c+=Math.max(n[T].padX,n[T].padTop,n[T].padBottom));let _=Math.max(0,lt[T]);return c>dt[_]&&(dt[_]=c),c>Ft&&(Ft=c),_},kt=new Int32Array(G).fill(-1),O=[];for(let p=0;p<G;p++)lt[p]>=0||(!n[p].isGroup||!vt[p])&&(kt[p]=O.length,O.push(p));let de=p=>k?p.w:p.h,be=p=>k?p.h:p.w,bt=O.map(p=>Ae(be(n[p]),de(n[p]))),rt=[],St=[],Mt=1;{let p=new Set;for(let T=0;T<y.length;T++){let c=y[T],_=kt[c.src],j=kt[c.dst];if(_<0||j<0||_===j)continue;let q=Math.min(_,j)*O.length+Math.max(_,j);(c.labelW>0||p.has(q))&&(Mt=2),p.add(q),rt.push(ve(_,j,c.minlen,k?c.labelH:c.labelW,k?c.labelW:c.labelH)),St.push(T)}}Ie(bt,rt),$e(bt,rt,Mt);let Q=rt.length,Me=Int32Array.from(O,me),Ut=(p,T)=>{let c=dt.map((t,e)=>T[e]?Math.max(t,ie):t),_=new Uint8Array(C),j=0,q=new Int32Array(Q);for(let t=0;t<Q;t++)q[t]=Math.abs(bt[rt[t].head].rank-bt[rt[t].tail].rank),p[t]||(j+=q[t]-1);let qt=j>He,E=O.length+(qt?0:j),x=new Int32Array(E),v=new Int32Array(E),U=new Float64Array(E),tt=new Float64Array(E),Lt=new Uint8Array(E),B=0;for(let t=0;t<O.length;t++)x[t]=bt[t].rank,v[t]=Me[t],U[t]=bt[t].w,tt[t]=bt[t].h,x[t]>B&&(B=x[t]);let Yt=new Int32Array(Q).fill(-1),zt=new Int32Array(Q).fill(-1),V=[];{let t=O.length;for(let e=0;e<Q;e++){let l=rt[e],o=l.reversed?l.head:l.tail,s=l.reversed?l.tail:l.head;if(qt||q[e]<2||p[e]){V.push(o,s);continue}let u=x[o],i=x[s],r=-1;l.labelW>0&&(r=u+(i-u>>1),Mt===2&&(r&1)===0&&r--),Yt[e]=t;let m=o;for(let a=u+1;a<i;a++){let b=t++;x[b]=a,v[b]=v[o]+Math.round((v[s]-v[o])*(a-u)/(i-u)),Lt[b]=1,a===r&&(U[b]=l.labelW,tt[b]=l.labelH,zt[e]=b),V.push(m,b),m=b}V.push(m,s)}}let yt=new Int32Array(E+1),ct=new Int32Array(E+1);for(let t=0;t<V.length;t+=2)ct[V[t]+1]++,yt[V[t+1]+1]++;for(let t=0;t<E;t++)yt[t+1]+=yt[t],ct[t+1]+=ct[t];let Et=new Int32Array(V.length/2),Rt=new Int32Array(V.length/2);{let t=yt.slice(0,E),e=ct.slice(0,E);for(let l=0;l<V.length;l+=2)Rt[e[V[l]]++]=V[l+1],Et[t[V[l+1]]++]=V[l]}let it=[];for(let t=0;t<=B;t++)it.push([]);for(let t=0;t<E;t++)it[x[t]].push(t);let Xt=new Float64Array(E),Wt=new Float64Array(E),Pt=t=>{t.sort((e,l)=>v[e]-v[l]||Wt[e]-Wt[l]||e-l);for(let e=0;e<t.length;e++)Xt[t[e]]=e};for(let t of it){for(let e=0;e<t.length;e++)Wt[t[e]]=e;Pt(t)}for(let t=0;t<We&&B>0;t++){let e=(t&1)===0;for(let l=1;l<=B;l++){let o=it[e?l:B-l],s=e?yt:ct,u=e?Et:Rt;for(let i of o){let r=0,m=s[i+1]-s[i];for(let a=s[i];a<s[i+1];a++)r+=Xt[u[a]];Wt[i]=m>0?r/m:Xt[i]}Pt(o)}}let Ht=(t,e)=>Lt[t]||Lt[e]?Y.edgeSep:Y.nodeSep,Ct=(t,e)=>{let l=0;for(;l<t.length;){let o=l;for(;o+1<t.length&&v[t[o+1]]===v[t[l]];)o++;e(t,l,o),l=o+1}},Zt=(t,e,l)=>{let o=U[t[e]];for(let s=e;s<l;s++)o+=Ht(t[s],t[s+1])+U[t[s+1]];return o},Gt=new Float64Array(C),It=X.length>0?ke:0;for(let t=0;t<X.length;t++){let e=n[X[t]];Gt[t]=Math.max(0,e.minW-2*c[t]),e.padTop>It&&(It=e.padTop)}for(let t of it)Ct(t,(e,l,o)=>{let s=Zt(t,l,o);s>Gt[v[t[l]]]&&(Gt[v[t[l]]]=s)});let K=new Float64Array(C+1);for(let t=0;t<C;t++)K[t+1]=K[t]+Gt[t]+2*c[t];let I=new Float64Array(E),Jt=new Float64Array(E),ge=(t,e,l)=>{let o=v[t[e]],s=(K[o]+c[o]+(K[o+1]-c[o])-Zt(t,e,l))/2;for(let u=e;u<=l;u++)I[t[u]]=s+U[t[u]]/2,u<l&&(s+=U[t[u]]+Ht(t[u],t[u+1]))},ye=(t,e,l)=>{let o=v[t[e]],s=K[o]+c[o];for(let i=e;i<=l;i++){let r=t[i];I[r]=Math.max(Jt[r],s+U[r]/2),i<l&&(s=I[r]+U[r]/2+Ht(r,t[i+1]))}let u=K[o+1]-c[o];for(let i=l;i>=e;i--){let r=t[i];I[r]=Math.min(I[r],u-U[r]/2),i>e&&(u=I[r]-U[r]/2-Ht(t[i-1],r))}};for(let t of it)Ct(t,ge);for(let t=0;t<4&&B>0;t++){let e=(t&1)===0;for(let l=1;l<=B;l++){let o=it[e?l:B-l],s=e?yt:ct,u=e?Et:Rt;for(let i of o){let r=0,m=0;for(let a=s[i];a<s[i+1];a++)v[u[a]]===v[i]&&(r+=I[u[a]],m++);Jt[i]=m>0?r/m:I[i]}Ct(o,ye)}}let ht=new Float64Array(B+1),ft=new Float64Array(B+1),xt=new Float64Array(B+1).fill(Y.rankSep/Mt);if(p.some(t=>t===1)){let t=Y.rankSep/Mt;xt.fill(t/_e);for(let e=0;e<Q;e++){let l=rt[e],o=l.reversed?l.head:l.tail,s=l.reversed?l.tail:l.head;if(p[e]){if(l.labelH<=0||q[e]>Mt)continue;let i=Math.min(t,(l.labelH+2*jt-Math.min(tt[o],tt[s])/2)/q[e]);for(let r=x[o];r<x[s];r++)i>xt[r]&&(xt[r]=i);continue}let u=Yt[e];if(u<0||q[e]<=Mt*l.minlen){for(let i=x[o];i<x[s];i++)xt[i]=t;continue}for(let i=u-1;i<u+q[e]-1;i++){let r=i<u?o:i,m=i+1<u+q[e]-1?i+1:s;(v[r]!==v[m]||Math.abs(I[r]-I[m])>=.5)&&(xt[x[r]]=t)}}}let _t=It+Ft;for(let t=0;t<=B;t++){let e=0;for(let l of it[t])tt[l]>e&&(e=tt[l]);ht[t]=_t,ft[t]=_t+e,_t+=e+(t===B?0:xt[t])}let pt=_t+Ft,Bt=K[C],Dt=t=>mt?It+pt-t:t,z=(t,e)=>k?Dt(e):t,P=(t,e)=>k?t:Dt(e),Nt=k?1:0;for(let t=0;t<O.length;t++){let e=n[O[t]],l=(ht[x[t]]+ft[x[t]])/2;e.x=z(I[t],l),e.y=P(I[t],l)}for(let t=0;t<X.length;t++){let e=n[X[t]],l=(K[t]+K[t+1])/2,o=K[t+1]-K[t];e.x=k?pt/2:l,e.y=k?l:pt/2,e.w=k?pt:o,e.h=k?o:pt,e.padTop=It}let Ot=new Int32Array(G),Vt=[];for(let t=0;t<G;t++){if(!n[t].isGroup||lt[t]>=0||kt[t]>=0)continue;let e=0;for(let l=n[t].parent;l>=0&&e<oe;l=n[l].parent)e++;Ot[t]=e,Vt.push(t)}Vt.sort((t,e)=>Ot[e]-Ot[t]||t-e);let H=new Float64Array(G*4);for(let t=0;t<G;t++)H[t*4]=1/0,H[t*4+1]=1/0,H[t*4+2]=-1/0,H[t*4+3]=-1/0;let te=(t,e)=>{e.x-e.w/2<H[t*4]&&(H[t*4]=e.x-e.w/2),e.y-e.h/2<H[t*4+1]&&(H[t*4+1]=e.y-e.h/2),e.x+e.w/2>H[t*4+2]&&(H[t*4+2]=e.x+e.w/2),e.y+e.h/2>H[t*4+3]&&(H[t*4+3]=e.y+e.h/2)};for(let t of O)n[t].parent>=0&<[n[t].parent]<0&&te(n[t].parent,n[t]);for(let t of Vt){let e=n[t];if(H[t*4]===1/0)continue;let l=Math.max(H[t*4+2]-H[t*4]+2*e.padX,e.minW);e.x=(H[t*4]+H[t*4+2])/2,e.w=l,e.y=(H[t*4+1]-e.padTop+H[t*4+3]+e.padBottom)/2,e.h=H[t*4+3]-H[t*4+1]+e.padTop+e.padBottom,e.parent>=0&<[e.parent]<0&&te(e.parent,e)}for(let t of y)t.route=[];for(let t=0;t<Q;t++){let e=rt[t],l=y[St[t]],o=e.reversed?e.head:e.tail,s=e.reversed?e.tail:e.head,u=[I[o],ft[x[o]]-(ft[x[o]]-ht[x[o]]-tt[o])/2],i=Yt[t];if(i>=0)for(let a=i;a<i+q[t]-1;a++)u.push(I[a],ht[x[a]]),ft[x[a]]>ht[x[a]]&&u.push(I[a],ft[x[a]]);u.push(I[s],ht[x[s]]+(ft[x[s]]-ht[x[s]]-tt[s])/2);let r=[];for(let a=0;a<u.length;a+=2)r.push(z(u[a],u[a+1]),P(u[a],u[a+1]),Nt);if(e.reversed)for(let a=0,b=r.length-3;a<b;a+=3,b-=3)for(let g=0;g<2;g++){let M=r[a+g];r[a+g]=r[b+g],r[b+g]=M}l.route=r;let m=zt[t];if(m>=0){let a=(ht[x[m]]+ft[x[m]])/2;l.labelX=z(I[m],a),l.labelY=P(I[m],a)}else l.labelX=(r[0]+r[r.length-3])/2,l.labelY=(r[1]+r[r.length-2])/2}for(let t of y){if(t.route.length>0||t.src===t.dst)continue;let e=n[t.src],l=n[t.dst],[o,s]=se(e,l),[u,i]=se(l,e),r=Math.abs(u-o)>Math.abs(i-s)?1:0;t.route=[o,s,r,u,i,r],t.labelX=(o+u)/2,t.labelY=(s+i)/2}let ee=new Uint8Array(Q),ce=y.reduce((t,e)=>t+e.route.length/3,0),Kt=Q*(O.length+y.length+ce);if(Kt<=Qt){let t=r=>(ht[x[r]]+ft[x[r]])/2,e=y.map(r=>[k?r.labelY:r.labelX,Dt(k?r.labelX:r.labelY)]),l=(r,m,a,b,g,M,W,d)=>a>g-W/2&&r<g+W/2&&b>M-d/2&&m<M+d/2,o=(r,m,a,b,g,M,W)=>{for(let d=0;d<O.length;d++)if(d!==g&&d!==M&&l(r,m,a,b,I[d],t(d),U[d]+8,tt[d]+8))return!1;for(let d=0;d<y.length;d++){let w=y[d];if(d!==W&&w.labelW>0&&w.src!==w.dst&&l(r,m,a,b,e[d][0],e[d][1],k?w.labelH:w.labelW,k?w.labelW:w.labelH))return!1}return!0},s=(r,m,a,b,g)=>{let M=0;for(let W=0;W<y.length;W++){if(W===g)continue;let d=y[W].route;for(let w=3;w<d.length;w+=3)if(Math.max(d[w-3],d[w])>r&&Math.min(d[w-3],d[w])<a&&Math.max(d[w-2],d[w+1])>m&&Math.min(d[w-2],d[w+1])<b){M++;break}}return M},u=(r,m,a)=>{let b=0;for(let g=0;g<y.length;g++){let M=y[g].route;if(g===a||M.length===0)continue;let W=M.length-3;(Math.abs(M[0]-r)<1&&Math.abs(M[1]-m)<1||Math.abs(M[W]-r)<1&&Math.abs(M[W+1]-m)<1)&&b++}return b},i=(r,m,a,b,g)=>{let M=Math.abs(a-r)<.5,W=M?Math.min(m,b):Math.min(r,a),d=M?Math.max(m,b):Math.max(r,a),w=M?r:m;for(let et=0;et<y.length;et++){let wt=y[et];if(et===g||wt.src===y[g].src||wt.dst===y[g].dst)continue;let st=wt.route;for(let nt=3;nt<st.length;nt+=3){let $t=st[nt-3+(M?0:1)],h=st[nt+(M?0:1)];if(Math.abs($t-w)>=he||Math.abs(h-w)>=he)continue;let Z=st[nt-3+(M?1:0)],D=st[nt+(M?1:0)];if(Math.min(d,Math.max(Z,D))-Math.max(W,Math.min(Z,D))>1)return!0}}return!1};for(let r=0;r<Q;r++){let m=rt[r],a=St[r],b=y[a],g=m.tail,M=m.head;if(v[g]===v[M]||Math.abs(I[M]-I[g])<1)continue;let W=I[g],d=I[M],w=t(g),et=t(M),wt=Math.sign(d-W),st=Math.sign(et-w),nt=(h,Z)=>{for(let f=2;f<h.length;f+=2)if(!o(Math.min(h[f-2],h[f])-Z,Math.min(h[f-1],h[f+1])-Z,Math.max(h[f-2],h[f])+Z,Math.max(h[f-1],h[f+1])+Z,g,M,a)||i(z(h[f-2],h[f-1]),P(h[f-2],h[f-1]),z(h[f],h[f+1]),P(h[f],h[f+1]),a))return!1;let D=0,$=0,At=-1;if(b.labelW>0){let f=m.labelW,R=m.labelH;for(let S=2;S<h.length;S+=2){let L=(h[S-2]+h[S])/2,J=(h[S-1]+h[S+1])/2,ut=Math.abs(h[S]-h[S-2]),le=Math.abs(h[S+1]-h[S-1]),re=ut+le;if(re<=At||(ut>0?ut<f+8:le<R+8)||L-f/2<0||L+f/2>Bt||J-R/2<0||J+R/2>pt||!o(L-f/2,J-R/2,L+f/2,J+R/2,-1,-1,a))continue;let ae=z(L,J),ne=P(L,J);s(ae-b.labelW/2,ne-b.labelH/2,ae+b.labelW/2,ne+b.labelH/2,a)>0||(D=L,$=J,At=re)}if(At<0)return!1}let F=[h[0],h[1]];for(let f=2;f<h.length;f+=2){let R=h[f]-h[f-2],S=h[f+1]-h[f-1],L=Math.abs(R)+Math.abs(S),J=f>2?jt:0,ut=f+2<h.length?jt:0;L>J+ut+1&&(J&&F.push(h[f-2]+R/L*J,h[f-1]+S/L*J),ut&&F.push(h[f]-R/L*ut,h[f+1]-S/L*ut)),F.push(h[f],h[f+1])}b.route=[];for(let f=0;f<F.length;f+=2){let R=f===0?F[0]!==F[2]:F[f]!==F[f-2];b.route.push(z(F[f],F[f+1]),P(F[f],F[f+1]),R?1-Nt:Nt)}return b.labelW>0&&(b.labelX=z(D,$),b.labelY=P(D,$),e[a]=[D,$]),ee[r]=1,!0};if(nt([W+wt*U[g]/2,w,d,w,d,et-st*tt[M]/2],2)||nt([W,w+st*tt[g]/2,W,et,d-wt*U[M]/2,et],2)||Kt>Qt/fe)continue;let $t=[];for(let h of v[g]<v[M]?[v[M],v[g]]:[v[g],v[M]]){let Z=Math.max(c[h]-pe,Math.min(c[h]/2,ie-pe));for(let D of[K[h]+Z,K[h+1]-Z]){if(Math.abs(D-W)<U[g]/2+4||Math.abs(D-d)<U[M]/2+4)continue;let $=[W+Math.sign(D-W)*U[g]/2,w,D,w,D,et,d+Math.sign(D-d)*U[M]/2,et],At=(u(z($[0],$[1]),P($[0],$[1]),a)+u(z($[6],$[7]),P($[6],$[7]),a))*1e6;for(let F=2;F<$.length;F+=2){let f=z($[F-2],$[F-1]),R=P($[F-2],$[F-1]),S=z($[F],$[F+1]),L=P($[F],$[F+1]);At+=s(Math.min(f,S),Math.min(R,L),Math.max(f,S),Math.max(R,L),a)*1e6+Math.abs(S-f)+Math.abs(L-R)}$t.push({pts:$,cost:At,lane:h})}}$t.sort((h,Z)=>h.cost-Z.cost);for(let h of $t)if(nt(h.pts,1)){_[h.lane]=1;break}}}return{width:k?pt:Bt,height:k?Bt:pt,routed:ee,margins:_,work:Kt}},gt=new Uint8Array(Q),Tt=new Uint8Array(C),at=Ut(gt,Tt);for(let p=0;p<Ge&&at.work<=Qt/fe;p++){let T=p===0?at.routed:gt.map((c,_)=>c&at.routed[_]);if(T.every((c,_)=>c===gt[_])&&at.margins.every((c,_)=>c===Tt[_]))break;gt=T,Tt=at.margins,at=Ut(gt,Tt)}return gt.some((p,T)=>p&&!at.routed[T])&&(at=Ut(new Uint8Array(Q),new Uint8Array(C))),{width:at.width,height:at.height}}function se(n,y){let A=y.x-n.x,Y=y.y-n.y,N=Math.max(n.w/2,.5),G=Math.max(n.h/2,.5);if(Math.abs(A)<N&&Math.abs(Y)<G){let mt=N-Math.abs(A),X=G-Math.abs(Y);return mt<X?[n.x+(A<0?-N:N),y.y]:[y.x,n.y+(Y<0?-G:G)]}let k=Math.min(A!==0?N/Math.abs(A):1/0,Y!==0?G/Math.abs(Y):1/0);return[n.x+A*k,n.y+Y*k]}var ue="__swimlane_default__";function Ue(n){let y=!1;for(let A of n.nodes)A.isGroup?A.dir=void 0:A.parentId===void 0&&(y=!0);if(y){for(let A of n.nodes)!A.isGroup&&A.parentId===void 0&&(A.parentId=ue);n.nodes.push({id:ue,label:void 0,labelType:"text",shape:"rect",isGroup:!0,parentId:void 0,cssStyles:[],cssCompiledStyles:[],cssClasses:"",dir:void 0})}}function Le(n,y,A,Y,N,G,k){let mt=n.x-n.w/2,X=n.y-n.h/2,C=G==="LR"||G==="RL",lt=C?mt+n.padTop/2:n.x,vt=C?n.y:X+n.padTop/2,dt=Fe(y,lt,vt,` class="pele-cluster-label" fill="var(--_m)"${A.text}`,k);return`<g class="pele-cluster pele-lane${Y}" data-id="${N}"><rect x="${ot(mt)}" y="${ot(X)}" width="${ot(n.w)}" height="${ot(n.h)}" fill="none" stroke="var(--_b)"/><rect x="${ot(mt)}" y="${ot(X)}" width="${ot(C?n.padTop:n.w)}" height="${ot(C?n.h:n.padTop)}" fill="var(--_a)" stroke="var(--_b)"${A.shape}/>`+(C&&dt?`<g transform="rotate(-90 ${ot(lt)} ${ot(vt)})">${dt}</g>`:dt)+"</g>"}var Ye={type:"swimlane",prepare:Ue,layout:(n,y,A,Y,N)=>Se(n,y,A,Y,N?12:void 0),drawGroup:Le},qe={type:"swimlane",parse:xe.parse,render:(n,y,A)=>we(n,y,A,Ye)};export{qe as swimlane};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{x as O,y as Yt,f as qt}from"./RZSVICHU-BiwjruZZ.js";function xe(i,m,r=0){return{w:i,h:m,kind:r,pin:0,span:0,x:0,y:0,rank:0}}function ke(i,m,r=1,x=0,c=0){return{tail:i,head:m,minlen:r,labelW:x,labelH:c,tailDx:0,headDx:0,tailFixed:!1,headFixed:!1,reversed:!1,points:[],labelX:0,labelY:0}}var Ct=24,Rt=2e4,Nt=16,Wt=8,Jt=.125,Kt=3,Lt=18,Zt=10,Pt=14,Ot=2,Qt=28,Xt=12,te=12,ee=8,re=4,_t=.5,gt=.5,Ht=12,le=40,jt=400;function St(i){return i===1||i===2}function Bt(i,m,r,x){for(let c=m+1;c<r;c++){let $=i[c],k=x[$],R=c-1;for(;R>=m&&(x[i[R]]>k||x[i[R]]===k&&i[R]>$);)i[R+1]=i[R],R--;i[R+1]=$}}function Ee(i,m,r){let x=i.length;if(x===0)return{width:0,height:0};let c=m.length,$=1;if(c>0){let e=new Set;for(let h of m){let S=Math.min(h.tail,h.head),C=Math.max(h.tail,h.head),q=S*x+C;if(h.labelW>0||e.has(q)){$=2;break}e.add(q)}}ne(i,m),ae(i,m,$);let k=new Int32Array(c),R=0;for(let e=0;e<c;e++){let h=m[e];k[e]=Math.abs(i[h.head].rank-i[h.tail].rank),k[e]>1&&(R+=k[e]-1)}let w=new Uint8Array(c);if(R>Rt){let e=[];for(let h=0;h<c;h++)k[h]>1&&e.push(h);e.sort((h,S)=>k[S]-k[h]||h-S);for(let h of e){if(R<=Rt)break;w[h]=1,R-=k[h]-1}}let a=x+R,g=new Float64Array(a),Y=new Float64Array(a),y=new Uint8Array(a),D=new Int32Array(a),u=0;for(let e=0;e<x;e++){let h=i[e];g[e]=h.w,Y[e]=h.h,y[e]=h.kind,D[e]=h.rank,h.rank>u&&(u=h.rank)}let A=0;for(let e=0;e<c;e++)w[e]||(A+=k[e]);let _=new Int32Array(A),Z=new Int32Array(A),L=new Float64Array(A),M=new Float64Array(A),H=new Int32Array(c).fill(-1),U=new Uint8Array(u+1),E=new Int32Array(c).fill(-1),J=!1;for(let e=0;e<x;e++)i[e].span>0&&i[e].kind===0&&(J=!0);let K=J?new Uint8Array(A):void 0,V=J?new Uint8Array(A):void 0,o=new Int32Array(c).fill(-1),F=new Int32Array(c).fill(-1),l=!1;{let e=x,h=0;for(let S=0;S<c;S++){if(w[S])continue;let C=m[S],q=C.reversed?C.head:C.tail,rt=C.reversed?C.tail:C.head,ht=C.reversed?C.headDx:C.tailDx,et=C.reversed?C.tailDx:C.headDx;(ht!==0||et!==0)&&(l=!0);let st=D[q],yt=D[rt],Mt=-1;C.labelW>0&&(Mt=st+(yt-st>>1),$===2&&yt-st>=4?(Mt&1)===1&&(Mt+=C.reversed?1:-1):$===2&&(Mt&1)===0&&(Mt+=C.reversed?1:-1));let It=q;yt-st>1&&(H[S]=e),o[S]=h,K&&!(C.reversed?C.headFixed:C.tailFixed)&&(K[h]=C.reversed?2:1);for(let At=st+1;At<yt;At++){let bt=e++;D[bt]=At,At===Mt?(g[bt]=C.labelW,Y[bt]=C.labelH,y[bt]=2,E[S]=bt,U[At]|=C.reversed?2:1):y[bt]=1,_[h]=It,Z[h]=bt,L[h]=It===q?ht:0,h++,It=bt}_[h]=It,Z[h]=rt,L[h]=It===q?ht:0,M[h]=et,V&&!(C.reversed?C.tailFixed:C.headFixed)&&(V[h]=C.reversed?1:2),F[S]=h,h++}}let f=new Int32Array(a+1),T=new Int32Array(a+1);for(let e=0;e<A;e++)f[_[e]+1]++,T[Z[e]+1]++;for(let e=0;e<a;e++)f[e+1]+=f[e],T[e+1]+=T[e];let v=new Int32Array(A),N=new Int32Array(A);{let e=f.slice(0,a),h=T.slice(0,a);for(let S=0;S<A;S++)v[e[_[S]]++]=S,N[h[Z[S]]++]=S}let j=new Int32Array(u+2);for(let e=0;e<a;e++)j[D[e]+1]++;for(let e=0;e<=u;e++)j[e+1]+=j[e];let n=new Int32Array(a),W=new Int32Array(a);{let e=new Int32Array(a),h=j.slice(0,u+1);for(let q=0;q<a;q++)e[h[D[q]]++]=q;h.set(j.subarray(0,u+1));let S=new Uint8Array(a),C=[];for(let q=0;q<a;q++)if(!S[e[q]])for(C.push(e[q]);C.length>0;){let rt=C.pop();if(!S[rt]){S[rt]=1,n[h[D[rt]]++]=rt;for(let ht=f[rt+1]-1;ht>=f[rt];ht--){let et=Z[v[ht]];S[et]||C.push(et)}}}}let I=!1;for(let e=0;e<x;e++)i[e].pin!==0&&(I=!0);if(I)for(let e=0;e<=u;e++){let h=Array.from(n.subarray(j[e],j[e+1])),S=new Map;h.forEach((q,rt)=>S.set(q,rt));let C=q=>q<x?i[q].pin:0;h.sort((q,rt)=>C(q)-C(rt)||S.get(q)-S.get(rt)),n.set(h,j[e])}let z=()=>{for(let e=0;e<=u;e++){let h=j[e];for(let S=h,C=j[e+1];S<C;S++)W[n[S]]=S-h}};z();let t={n:a,real:x,maxRank:u,W:g,KIND:y,RANK:D,EF:_,ET:Z,EFD:L,ETD:M,succStart:f,succE:v,predStart:T,predE:N,layerStart:j,order:n,pos:W,offsets:l};A>0&&u>0&&(de(t,i),z()),K&&V&&fe(t,i,K,V);let s=we(t,r),p=ue(t);if(K&&V){let e=oe(t,K,V);ie(t,i,s,e,r,p),se(t,i,s,K,V,e,p),he(t,s,p,r);for(let h=0;h<c;h++){if(w[h])continue;let S=m[h],C=L[o[h]],q=M[F[h]];S.tailDx=S.reversed?q:C,S.headDx=S.reversed?C:q}}let X=new Uint8Array(a);p&&!r.tracks&&ce(t,s,p,H,k,r.apart?0:r.edgeSep,X),r.tracks||ye(t,s,H,k,r.edgeSep,X);let G=new Int32Array(c+1),d=r.tracks||K&&!r.straight?{from:[],to:[],rank:[],lower:[],track:[],levels:[],wide:[]}:void 0,B=new Int32Array(u+1);if(d){for(let e=0;e<c;e++){if(G[e]=d.from.length,w[e])continue;let h=H[e],S=!1;for(let rt=h,ht=h<0?h:h+k[e]-1;rt<ht;rt++){let et=p!==void 0&&p[D[rt]]===1;!r.tracks&&et!==(X[rt]===1)&&(S=!0)}if(S)continue;let C=s[_[o[e]]]+L[o[e]],q=D[_[o[e]]];for(let rt=h,ht=h<0?h:h+k[e]-1;rt<ht;rt++)p&&p[D[rt]]||(d.from.push(C),d.to.push(s[rt]),d.rank.push(q),d.lower.push(rt),C=s[rt],q=D[rt]);d.from.push(C),d.to.push(s[Z[F[e]]]+M[F[e]]),d.rank.push(q),d.lower.push(-1)}G[c]=d.from.length}let ft=(e,h)=>{let S=!1;for(let C=j[e];C<j[e+1];C++){let q=y[n[C]];if(q===h)S=!0;else if(q!==1)return!1}return S},lt=ft(0,3)?$:0,nt=ft(u,4)?$:0,Q=new Float64Array(u+1);for(let e=0;e<A;e++){let h=Math.abs(s[_[e]]+L[e]-s[Z[e]]-M[e]);h>Q[D[_[e]]]&&(Q[D[_[e]]]=h)}let at=new Float64Array(u+1),b=new Float64Array(u+1),P=e=>(e<lt||e>=u-nt?r.portSep:r.rankSep)/$,tt=new Float64Array(u+1);for(let e=0;e<u;e++)tt[e]=d?P(e):Math.max(P(e),Math.min(Kt*r.rankSep/$,Q[e]*Jt));let ot=new Uint8Array(u+1).fill(1);for(let e=0;e<x;e++)ot[D[e]]=0;for(let e=1;e<u;e++){if(r.tracks||!ot[e]||U[e]!==1&&U[e]!==2)continue;let h=Math.min((r.headRoom??0)/2,tt[U[e]===1?e-1:e]/2);tt[e-1]+=U[e]===1?-h:h,tt[e]+=U[e]===1?h:-h}let it=e=>y[e]===1&&ot[D[e]]&&!r.tracks?(b[D[e]]-at[D[e]])/4:0,ut=r.tracks?Lt:Qt,ct=r.tracks?Zt:Xt,dt=r.tracks?Pt:Xt,wt=new Int32Array(u+1);if(d){let e=new Float64Array(u+1);for(let S=0;S<u;S++){if(p&&p[S])continue;let C=S+1;for(e[S]=tt[S];C<u&&p&&p[C];)e[S]+=tt[C++];wt[S]=C}for(let S=0;S<d.from.length;S++)d.wide.push(Math.abs(d.from[S]-d.to[S])>Ot*e[d.rank[S]]?1:0);let h=new Float64Array(u+1);pe(d,B,!r.tracks,e,h);for(let S=0;S<u;S++)B[S]>0?tt[S]+=Math.max(0,2*ut+(B[S]-1)*ct-e[S]):h[S]>0&&(tt[S]+=Math.max(0,Math.min(Kt*r.rankSep,h[S])-e[S]))}let xt=0;for(let e=0;e<=u;e++){let h=0;for(let S=j[e];S<j[e+1];S++)Y[n[S]]>h&&(h=Y[n[S]]);at[e]=xt,b[e]=xt+h,xt+=h+tt[e]}let vt=xt,$t=(e,h=d.track[e])=>{let S=d.rank[e],C=b[S],q=at[wt[S]],rt=r.tracks?B[S]:d.levels[e],ht=rt>1?Math.min(dt,(q-C-2*ut)/(rt-1)):0;return(C+q)/2+(h-(rt-1)/2)*ht},pt=1/0,kt=-1/0;for(let e=0;e<a;e++){let h=g[e]/2;s[e]-h<pt&&(pt=s[e]-h),s[e]+h>kt&&(kt=s[e]+h)}let Et=new Uint8Array(u+1),mt=new Uint8Array(u+1);for(let e=0;e<x;e++)y[e]!==0||!K||(T[e+1]>T[e]&&(Et[D[e]]=1),f[e+1]>f[e]&&(mt[D[e]]=1));for(let e=0;e<x;e++){let h=i[e],S=h.rank;h.x=s[e]-pt,y[e]===0&&mt[S]&&!Et[S]?h.y=b[S]-h.h/2:y[e]===0&&Et[S]&&!mt[S]?h.y=at[S]+h.h/2:h.y=(at[S]+b[S])/2}for(let e=0;e<c;e++){let h=m[e],S=i[h.reversed?h.head:h.tail],C=i[h.reversed?h.tail:h.head],q=[S.x+(h.reversed?h.headDx:h.tailDx),S.y+S.h/2],rt=H[e];if(d&&G[e+1]>G[e])for(let et=G[e];et<G[e+1];et++){if(d.track[et]>=0&&(r.tracks||d.wide[et]===1)){let yt=$t(et);q.push(d.from[et]-pt,yt,d.to[et]-pt,yt)}else d.track[et]>0&&q.push(d.from[et]-pt,$t(et,d.track[et]-1));let st=d.lower[et];st<0||(q.push(s[st]-pt,at[D[st]]+it(st)),b[D[st]]>at[D[st]]&&q.push(s[st]-pt,b[D[st]]-it(st)))}else if(rt>=0)for(let et=rt,st=rt+k[e]-1;et<st;et++){if(X[et])continue;let yt=s[et]-pt,Mt=at[D[et]],It=b[D[et]];q.push(yt,Mt+it(et)),It>Mt&&q.push(yt,It-it(et))}if(q.push(C.x+(h.reversed?h.tailDx:h.headDx),C.y-C.h/2),h.reversed)for(let et=0,st=q.length-2;et<st;et+=2,st-=2){let yt=q[et],Mt=q[et+1];q[et]=q[st],q[et+1]=q[st+1],q[st]=yt,q[st+1]=Mt}h.points=q;let ht=E[e];ht>=0?(h.labelX=s[ht]-pt,h.labelY=(at[D[ht]]+b[D[ht]])/2):h.labelW>0&&(h.labelX=(q[0]+q[q.length-2])/2,h.labelY=(q[1]+q[q.length-1])/2)}return{width:kt-pt,height:vt}}function ne(i,m){let r=i.length,x=m.length,c=new Int32Array(r+1);for(let a=0;a<x;a++){let g=m[a];g.reversed=i[g.head].kind===3||i[g.tail].kind===4,g.reversed||c[g.tail+1]++}for(let a=0;a<r;a++)c[a+1]+=c[a];let $=new Int32Array(c[r]);{let a=c.slice(0,r);for(let g=0;g<x;g++)m[g].reversed||($[a[m[g].tail]++]=g)}let k=new Uint8Array(r),R=c.slice(0,r),w=[];for(let a=0;a<r;a++)if(k[a]===0)for(w.push(a),k[a]=1;w.length>0;){let g=w[w.length-1];if(R[g]<c[g+1]){let Y=m[$[R[g]++]],y=Y.head;k[y]===1?Y.reversed=!0:k[y]===0&&(k[y]=1,w.push(y))}else k[g]=2,w.pop()}}function ae(i,m,r){let x=i.length,c=m.length,$=new Int32Array(c),k=new Int32Array(c),R=new Int32Array(c),w=new Int32Array(x+1),a=new Int32Array(x+1);for(let M=0;M<c;M++){let H=m[M],U=H.reversed?H.head:H.tail,E=H.reversed?H.tail:H.head;$[M]=U,k[M]=E,R[M]=Math.max(1,H.minlen)*r,w[U+1]++,a[E+1]++}for(let M=0;M<x;M++)w[M+1]+=w[M],a[M+1]+=a[M];let g=new Int32Array(c),Y=new Int32Array(c);{let M=w.slice(0,x),H=a.slice(0,x);for(let U=0;U<c;U++)g[M[$[U]]++]=U,Y[H[k[U]]++]=U}let y=new Int32Array(x),D=new Int32Array(x);for(let M=0;M<x;M++)D[M]=a[M+1]-a[M];let u=new Int32Array(x),A=0;for(let M=0;M<x;M++)D[M]===0&&(u[A++]=M);for(let M=0;M<A;M++){let H=u[M];for(let U=w[H];U<w[H+1];U++){let E=g[U],J=k[E];y[H]+R[E]>y[J]&&(y[J]=y[H]+R[E]),--D[J]===0&&(u[A++]=J)}}for(let M=0;M<8;M++){let H=!1;for(let U=A-1;U>=0;U--){let E=u[U],J=a[E+1]-a[E],K=w[E+1]-w[E];if(J===0&&K===0)continue;let V=-1/0,o=1/0;for(let l=a[E];l<a[E+1];l++){let f=Y[l];V=Math.max(V,y[$[f]]+R[f])}for(let l=w[E];l<w[E+1];l++){let f=g[l];o=Math.min(o,y[k[f]]-R[f])}let F=y[E];K>J&&o!==1/0?F=o:J>K&&V!==-1/0&&(F=V),F!==y[E]&&(y[E]=F,H=!0)}if(!H)break}let _=1/0,Z=-1/0,L=!1;for(let M=0;M<x;M++){let H=i[M].kind;H===3&&(L=!0),!(H===3||H===4)&&(y[M]<_&&(_=y[M]),y[M]>Z&&(Z=y[M]))}_===1/0&&(_=0,Z=0);for(let M=0;M<x;M++)i[M].kind===3?y[M]=_-r:i[M].kind===4&&(y[M]=Z+r);L&&(_-=r);for(let M=0;M<x;M++)i[M].rank=y[M]-_}function Gt(i,m,r,x,c,$,k){let R=r===0?i.predStart:i.succStart,w=r===0?i.predE:i.succE,a=r===0?i.EF:i.ET,g=i.pos;$.length=0;for(let u=R[m];u<R[m+1];u++)c[w[u]]!==0&&$.push(w[u]);if($.length<2)return 0;$.sort((u,A)=>g[a[u]]-g[a[A]]||u-A);let Y=u=>{let A=0;k.length=$.length,k[0]=0;for(let _=1;_<$.length;_++){let Z=c[$[_]]===c[$[_-1]];k[_]=u(Z&&c[$[_]]===1,Z),A+=k[_]}return A},y=Y(()=>1);if(x/y<Wt&&(y=Y(u=>u?.5:1)),x/y<Wt&&(y=Y((u,A)=>A?0:1)),y===0)return 0;let D=Math.min(Nt,x/y);for(let u=1;u<$.length;u++)k[u]*=D;return y*D}function fe(i,m,r,x){let{real:c,W:$,EFD:k,ETD:R}=i,w=[],a=[];for(let g=0;g<c;g++){let Y=Math.min(m[g].span,$[g]);if(!(Y<=0||m[g].kind!==0))for(let y=0;y<2;y++){let D=Gt(i,g,y,Y,y===0?x:r,w,a);if(D===0)continue;let u=y===0?R:k,A=-D/2;for(let _=0;_<w.length;_++)A+=a[_],u[w[_]]=A}}}function Ut(i,m,r,x){if(!m)return r;let{KIND:c,RANK:$,EF:k,ET:R,succStart:w,succE:a,predStart:g,predE:Y}=i;for(let y=0;y<1e5;y++){let D=x===0?k[r]:R[r];if(c[D]!==1||!m[$[D]])break;r=x===0?Y[g[D]]:a[w[D]]}return r}function oe(i,m,r){let x=[new Int32Array(i.n),new Int32Array(i.n)];for(let c=0;c<i.EF.length;c++)r[c]!==0&&x[0][i.ET[c]]++,m[c]!==0&&x[1][i.EF[c]]++;return x}function Vt(i,m){return Math.max(.25,Math.min(.5,4*Math.abs(m)/(Math.abs(i)||1)))}function ie(i,m,r,x,c,$){let k=c.edgeSep,{n:R,real:w,maxRank:a,KIND:g,RANK:Y,W:y,EF:D,ET:u,EFD:A,ETD:_,succStart:Z,succE:L,predStart:M,predE:H,layerStart:U,order:E,pos:J}=i,K=T=>g[T]===2||g[T]===1&&!($!==void 0&&$[Y[T]]===1),V=(T,v)=>{let N=v===0?D[T]:u[T];return[v===0?r[N]+A[T]:r[N]+_[T],N<w&&m[N].kind===0?x[1-v][N]:0]},o=T=>{let v=U[Y[T]],N=v+J[T],j=n=>y[n]/2+y[T]/2+(g[n]===0?c.nodeSep/2+k/2:g[n]===g[T]?k:k/2);return[N>v?r[E[N-1]]+j(E[N-1]):-1/0,N+1<U[Y[T]+1]?r[E[N+1]]-j(E[N+1]):1/0]},F=(T,v,N,j,n)=>{let W=(v[1]!==N[1]?v[1]<N[1]:Math.abs(v[0]-T)<=Math.abs(N[0]-T))?[v[0],N[0]]:[N[0],v[0]];return W.find(I=>I>=j&&I<=n)??Math.max(j,Math.min(n,W[0]))},l=new Uint8Array(R),f=[];for(let T=1;T<a;T++)for(let v=U[T];v<U[T+1];v++){if(!K(E[v])||l[E[v]])continue;let N=E[v];for(;St(g[D[H[M[N]]]]);)N=D[H[M[N]]];let j=N,n=-1/0,W=1/0;f.length=0;for(let I=N;St(g[I]);I=u[L[Z[I]]]){if(j=I,!K(I))continue;l[I]=1,f.push(I);let[z,t]=o(I);z>n&&(n=z),t<W&&(W=t)}if(n<=W){let I=F(r[f[0]],V(H[M[N]],0),V(L[Z[j]],1),n,W);for(let z of f)r[z]=I;continue}for(let I of f){let[z,t]=o(I);z>t||(r[I]=F(r[I],V(Ut(i,$,H[M[I]],0),0),V(Ut(i,$,L[Z[I]],1),1),z,t))}}}function se(i,m,r,x,c,$,k){let{real:R,W:w,EF:a,ET:g,EFD:Y,ETD:y,succStart:D,succE:u,predStart:A,predE:_,pos:Z}=i,L=[],M=[],H=[],U=[],E=[],J=(K,V,o,F,l)=>{if($[V][o]<2)return 0;K=Ut(i,k,K,V);let f=V===0?a[K]:g[K],T=V===0?r[f]+Y[K]:r[f]+y[K];if(l&&Math.abs(T-r[o])<=F/2+gt)return Math.max(-F/2,Math.min(F/2,T-r[o]));let v=T,N=0;f<R&&m[f].kind===0&&(V===0?x:c)[K]!==0&&$[1-V][f]>=2&&(N=Math.max(0,Math.min(m[f].span,w[f])),N>0&&(v=r[f]));let j=Math.max(r[o]-F/2,v-N/2),n=Math.min(r[o]+F/2,v+N/2);if(j>n+gt){let I=Math.max(0,F/2-le);return Math.max(-I,Math.min(I,T-r[o]))}let W=(r[o]*N+v*F)/(N+F);return Math.max(j,Math.min(n,W))-r[o]};for(let K=0,V=!0;V&&K<6;K++){V=!1;for(let o=0;o<R;o++){let F=Math.min(m[o].span,w[o]);if(!(F<=0||m[o].kind!==0))for(let l=0;l<2;l++){let f=l===0?c:x,T=l===0?y:Y,v=l===0?a:g,N=l===0?A:D,j=l===0?_:u;if(Gt(i,o,l,F,f,L,M),L.length===0)continue;L.length===1&&(M[0]=0),H.length=0;for(let I=N[o];I<N[o+1];I++)H.push(j[I]);H.sort((I,z)=>Z[v[I]]-Z[v[z]]||I-z);let n=0,W=-F/2;for(let I=0;I<=H.length;I++){let z=I<H.length&&f[H[I]]===0;if(I<H.length&&!z)continue;let t=0;for(let p=I-1;p>=0&&f[H[p]]!==0;p--)t++;let s=z?T[H[I]]-Nt:F/2;if(t>0){U.length=0,E.length=0;let p=0;for(let d=0;d<t;d++){d>0&&(p+=M[n+d]),U.push(J(L[n+d],l,o,F,K>0)-p),E.push(1);let B=d>0&&M[n+d]===0;for(;U.length>1&&(B||U[U.length-2]/E[E.length-2]>U[U.length-1]/E[E.length-1]);){B=!1;let ft=U.pop(),lt=E.pop();U[U.length-1]+=ft,E[E.length-1]+=lt}}let X=p,G=0;p=0;for(let d=0;d<U.length;d++){let B=s-X<W?(W+s-X)/2:Math.max(W,Math.min(s-X,U[d]/E[d]));for(let ft=0;ft<E[d];ft++,G++)G>0&&(p+=M[n+G]),Math.abs(T[L[n+G]]-B-p)>.01&&(V=!0),T[L[n+G]]=B+p}n+=t}z&&(W=T[H[I]]+Nt)}}}}}function he(i,m,r,x){let{n:c,KIND:$,RANK:k,EF:R,ET:w,EFD:a,ETD:g,layerStart:Y,order:y,pos:D}=i,u=o=>r!==void 0&&$[o]===1&&r[k[o]]===1,A=[],_=[],Z=[],L=[];for(let o=0;o<R.length;o++){if(u(R[o]))continue;let F=Ut(i,r,o,1);A.push(R[o]),_.push(w[F]),Z.push(a[o]),L.push(g[F])}let M=o=>m[_[o]]+L[o]-m[A[o]]-Z[o],H=new Int32Array(c),U=[];for(let o=0;o<c;o++)H[o]=o,U.push([o]);let E=(o,F)=>{let l=H[o],f=H[F];if(l!==f){U[l].length<U[f].length&&([l,f]=[f,l]);for(let T of U[f])H[T]=l,U[l].push(T);U[f]=[]}},J=[];for(let o=0;o<A.length;o++){let F=Math.abs(M(o));F<.01?E(A[o],_[o]):F<=Ht&&J.push(o)}if(J.length===0)return;J.sort((o,F)=>Math.abs(M(o))-Math.abs(M(F))||o-F);let K=o=>zt(i,x,o),V=(o,F)=>{for(let l of U[o]){let f=Y[k[l]],T=Y[k[l]+1],v=f+D[l];if(v>f&&H[y[v-1]]!==o&&m[l]+F-m[y[v-1]]<K(l)+K(y[v-1])-.01||v+1<T&&H[y[v+1]]!==o&&m[y[v+1]]-m[l]-F<K(l)+K(y[v+1])-.01)return!1}return!0};for(let o of J){let F=M(o);if(Math.abs(F)<.01){E(A[o],_[o]);continue}if(Math.abs(F)>Ht||H[A[o]]===H[_[o]])continue;let l=H[A[o]],f=H[_[o]],T=U[l].length<=U[f].length?l:f;for(let v of[T,T===l?f:l]){let N=v===l?F:-F;if(V(v,N)){for(let j of U[v])m[j]+=N;E(A[o],_[o]);break}}}}function ue(i){let{maxRank:m,KIND:r,layerStart:x,order:c}=i,$=new Uint8Array(m+1),k=!1;for(let R=1;R<m;R++){let w=x[R+1]>x[R];for(let a=x[R];w&&a<x[R+1];a++)r[c[a]]!==1&&(w=!1);w&&($[R]=1,k=!0)}return k?$:void 0}function pe(i,m,r,x,c){let{from:$,to:k,rank:R,track:w,levels:a,wide:g}=i,Y=$.length,y=new Map;for(let l=0;l<Y;l++){if(w.push(-1),a.push(0),Math.abs($[l]-k[l])<gt)continue;let f=y.get(R[l]);f?f.push(l):y.set(R[l],[l])}let D=new Float64Array(Y),u=new Float64Array(Y);for(let l=0;l<Y;l++)D[l]=Math.min($[l],k[l]),u[l]=Math.max($[l],k[l]);let A=(l,f)=>l>=D[f]-gt&&l<=u[f]+gt?1:0,_=(l,f)=>Math.abs($[l]-$[f])<gt||Math.abs(k[l]-k[f])<gt,Z=(l,f)=>D[l]<u[f]-gt&&D[f]<u[l]-gt,L=(l,f)=>Z(l,f)&&!_(l,f),M=(l,f)=>Z(l,f)||A(k[l],f)+A($[f],l)+A(k[f],l)+A($[l],f)>0,H=(l,f)=>A(k[l],f)+A($[f],l),U=l=>{l.sort((t,s)=>u[s]-D[s]-(u[t]-D[t])||D[t]-D[s]||t-s);let f=l.length,T=[],v=l.map((t,s)=>s),N=t=>{for(;v[t]!==t;)t=v[t]=v[v[t]];return t},j=l;if(f<=jt){let t=new Int32Array(f),s=[];for(let G=0;G<f;G++)T.push([]),s.push([]);for(let G=0;G<f;G++)for(let d=G+1;d<f;d++){let B=l[G],ft=l[d];if(!M(B,ft))continue;v[N(G)]=N(d);let lt=H(B,ft),nt=H(ft,B);if(lt===nt)continue;let Q=lt<nt?G:d,at=lt<nt?d:G;T[at].push(Q),s[Q].push(at),t[at]++}let p=new Uint8Array(f),X=[];for(let G=0;G<f;G++){let d=-1;for(let B=0;B<f&&!(!p[B]&&((d<0||t[B]<t[d])&&(d=B),t[B]===0));B++);p[d]=1,X.push(d);for(let B of s[d])t[B]--}j=X.map(G=>l[G])}let n=new Map;l.forEach((t,s)=>n.set(t,s));let W=[];for(let t of j){let s=0;for(let p of T[n.get(t)]??[])w[l[p]]>=s&&(s=w[l[p]]+1);for(;;s++){let p=W[s]??(W[s]=[]),X=!0;for(let G of p)L(t,G)&&(X=!1);if(X){p.push(t);break}}w[t]=s}let I=new Map,z=new Map;return l.forEach((t,s)=>{let p=N(s);I.set(p,Math.min(I.get(p)??1/0,w[t])),z.set(p,Math.max(z.get(p)??-1/0,w[t]))}),l.forEach((t,s)=>{let p=N(s);a[t]=z.get(p)-I.get(p)+1,r&&(w[t]-=I.get(p))}),W.length},E=16,J=(l,f,T)=>{let v=Vt(k[l]-$[l],f);for(let N=0;N<=E;N++){let j=N/E,n=1-j;T[2*N]=$[l]+(k[l]-$[l])*j*j*(3-2*j),T[2*N+1]=f*(3*v*j*n*n+3*(1-v)*j*j*n+j*j*j)}},K=new Float64Array(2*E+2),V=new Float64Array(2*E+2),o=(l,f)=>{let T=1/0;for(let v=0;v<=E;v++){let N=l[2*v],j=l[2*v+1];for(let n=0;n<E;n++){let W=f[2*n+2]-f[2*n],I=f[2*n+3]-f[2*n+1],z=Math.max(0,Math.min(1,((N-f[2*n])*W+(j-f[2*n+1])*I)/(W*W+I*I||1))),t=Math.hypot(N-f[2*n]-z*W,j-f[2*n+1]-z*I);t<T&&(T=t)}}return T},F=(l,f,T)=>{let v=Math.max(T/2,T-2*te);return J(l,v,K),J(f,v,V),Math.min(o(K,V),o(V,K))};for(let[l,f]of y){if(!r){m[l]=U(f);continue}if(f.length>jt)continue;let T=f.filter(t=>g[t]===1);U(T);let v=new Set(T.filter(t=>a[t]>1));for(let t=0;t<f.length;t++)for(let s=t+1;s<f.length;s++){let p=f[t],X=f[s];v.has(p)&&v.has(X)||!L(p,X)||$[p]<k[p]!=$[X]<k[X]||F(p,X,x[l])<(g[p]===1||g[X]===1?ee:re)&&v.add(p).add(X)}for(let t of T)w[t]=-1,a[t]=0;if(v.size===0)continue;let N=0,j=0,n=[...v];for(let t=0;t<n.length;t++)for(let s=t+1;s<n.length;s++){let p=n[t],X=n[s];Z(p,X)&&($[p]<k[p]!=$[X]<k[X]?N++:_(p,X)||j++)}if(N>j){for(let t of f)(u[t]-D[t])*_t>c[l]&&(c[l]=(u[t]-D[t])*_t);continue}let W=t=>{for(let s of v)if(M(t,s))return!0;return!1},I=f.filter(t=>v.has(t)||g[t]!==1&&W(t));U(I);let z=0;for(let t of I)a[t]>z&&(z=a[t]);m[l]=z}}function ce(i,m,r,x,c,$,k){let{maxRank:R,EF:w,ET:a,EFD:g,ETD:Y,succStart:y,succE:D,predStart:u,predE:A,layerStart:_,order:Z}=i,L=new Float64Array(m.length),M=new Float64Array(m.length),H=new Float64Array(m.length);for(let E=0;E<x.length;E++){let J=x[E];if(J<0)continue;let K=J+c[E]-1,V=i.RANK[J];for(let o=J;o<K;o++){if(!r[V+o-J])continue;let F=o;for(;F+1<K&&r[V+F+1-J];)F++;let l=A[u[o]],f=D[y[F]],T=m[w[l]]+g[l],v=m[a[f]]+Y[f],N=F-o+2;for(let j=o;j<=F;j++)L[j]=T+(v-T)*(j-o+1)/N,M[j]=T,H[j]=v;o=F}}let U=[];for(let E=1;E<R;E++){if(!r[E])continue;let J=_[E],K=_[E+1],V=Array.from(Z.subarray(J,K)).sort((o,F)=>M[o]-M[F]||H[o]-H[F]||o-F);for(let o=0;o<V.length;){U.length=0;let F=o;for(;F<V.length&&Math.abs(M[V[F]]-M[V[o]])<1&&Math.abs(H[V[F]]-H[V[o]])<1;F++)U.push(V[F]);U.sort((l,f)=>i.pos[l]-i.pos[f]);for(let l=0;l<U.length;l++){let f=U[l];m[f]=L[f]+(l-(U.length-1)/2)*$,(U.length===1||$===0)&&(k[f]=1)}o=F}}}function ye(i,m,r,x,c,$){let{maxRank:k,W:R,KIND:w,RANK:a,EF:g,ET:Y,EFD:y,ETD:D,succStart:u,succE:A,predStart:_,predE:Z,layerStart:L,order:M}=i,H=new Uint8Array(k+1),U=!1;for(let E=1;E<k;E++){let J=!1,K=!1;for(let V=L[E];V<L[E+1];V++){let o=w[M[V]];o===2?J=!0:o!==1&&(K=!0)}J&&!K&&(H[E]=1,U=!0)}if(U)for(let E=0;E<r.length;E++){let J=r[E];if(!(J<0))for(let K=J,V=J+x[E]-1;K<V;K++){if(w[K]!==1||!H[a[K]])continue;let o=K,F=K;for(;o>J&&$[o-1];)o--;for(;F+1<V&&$[F+1];)F++;let l=Z[_[o]],f=A[u[F]],T=m[g[l]]+y[l],v=m[Y[f]]+D[f],N=Math.min(T,v)-c,j=Math.max(T,v)+c,n=!0,W=a[K];for(let z=L[W];n&&z<L[W+1];z++){let t=M[z];w[t]===2&&m[t]+R[t]/2>N&&m[t]-R[t]/2<j&&(n=!1)}if(!n)continue;$[K]=1;let I=F-o+2;for(let z=o;z<=F;z++)m[z]=T+(v-T)*(z-o+1)/I}}}function de(i,m){let{n:r,real:x,maxRank:c,W:$,EF:k,ET:R,EFD:w,ETD:a,succStart:g,succE:Y,predStart:y,predE:D,layerStart:u,order:A,pos:_,offsets:Z}=i,L=0;for(let t=0;t<=c;t++)L=Math.max(L,u[t+1]-u[t]);let M=Z?new Int32Array(k.length):void 0,H=1;for(;H<(M?L+k.length:L);)H<<=1;let U=new Int32Array(2*H),E=new Int32Array(k.length),J=()=>{let t=0;for(let s=0;s<c;s++){let p=u[s+2]-u[s+1];if(M){let d=0;for(let B=u[s+1];B<u[s+2];B++){let ft=y[A[B]],lt=y[A[B]+1],nt=!1;for(let Q=ft+1;Q<lt;Q++)a[D[Q]]!==a[D[ft]]&&(nt=!0);if(nt){let Q=Array.from(D.subarray(ft,lt));Q.sort((at,b)=>a[at]-a[b]);for(let at=0;at<Q.length;at++)at>0&&a[Q[at]]!==a[Q[at-1]]&&d++,M[Q[at]]=d}else for(let Q=ft;Q<lt;Q++)M[D[Q]]=d;d++}p=d}if(p<2)continue;let X=0;for(let d=u[s];d<u[s+1];d++){let B=A[d],ft=g[B],lt=g[B+1],nt=X;for(let b=ft;b<lt;b++)E[X++]=M?M[Y[b]]:_[R[Y[b]]];let Q=X-nt;if(Q<2)continue;let at=!1;if(M)for(let b=ft+1;b<lt;b++)w[Y[b]]!==w[Y[ft]]&&(at=!0);if(M&&at){let b=Array.from(Y.subarray(ft,lt));b.sort((P,tt)=>w[P]-w[tt]||M[P]-M[tt]);for(let P=0;P<Q;P++)E[nt+P]=M[b[P]]}else if(Q<=12)for(let b=nt+1;b<X;b++){let P=E[b],tt=b-1;for(;tt>=nt&&E[tt]>P;)E[tt+1]=E[tt],tt--;E[tt+1]=P}else E.subarray(nt,X).sort()}if(X<2)continue;let G=1;for(;G<p;)G<<=1;U.fill(0,0,2*G);for(let d=0;d<X;d++){let B=E[d]+G;for(U[B]++;B>1;)(B&1)===0&&(t+=U[B+1]),B>>=1,U[B]++}}return t},K=J();if(K===0)return;let V=A.slice(),o=new Float64Array(r),F=new Int32Array(L),l=(t,s)=>o[t]-o[s]||_[t]-_[s],f=(t,s)=>o[t]-o[s]||_[s]-_[t],T=(t,s)=>{let p=t?y:g,X=t?D:Y,G=t?k:R,d=t?w:a;for(let B=1;B<=c;B++){let ft=t?B:c-B,lt=u[ft],nt=u[ft+1],Q=0;for(let b=lt;b<nt;b++){let P=A[b],tt=P<x?m[P].pin:0;if(tt!==0){o[P]=tt*1e9,F[Q++]=P;continue}let ot=p[P],it=p[P+1];if(ot===it){o[P]=-1;continue}let ut=0;for(let ct=ot;ct<it;ct++){let dt=G[X[ct]];ut+=_[dt],Z&&$[dt]>0&&(ut+=d[X[ct]]/$[dt])}o[P]=ut/(it-ot),F[Q++]=P}if(Q<2)continue;F.subarray(0,Q).sort(s?f:l);let at=0;for(let b=lt;b<nt;b++)o[A[b]]!==-1&&(A[b]=F[at++]);for(let b=lt;b<nt;b++)_[A[b]]=b-lt}},v=()=>{let t=0;for(let s=0;s<=c;s++)for(let p=u[s];p<u[s+1];p++)if(!(A[p]>=x))for(let X=p+1;X<u[s+1];X++)A[X]<A[p]&&t++;return t},N=()=>{for(let t=0;t<=c;t++)for(let s=u[t];s<u[t+1];s++)_[A[s]]=s-u[t]},j=A.slice(),n=K,W=r<=600,I=V,z=1/0;for(let t=0;t<(W?2:1);t++){t>0&&(A.set(j),N());let s=n,p=j.slice();for(let G=0,d=0;d<4&&G<Ct;G++,d++){T((G+t)%2===0,G%4>=2);let B=J();if(B<s&&(s=B,p.set(A),d=0,B===0))break}A.set(p);let X=W?v():0;(t===0||s<K||s===K&&X<z)&&(K=s,I=p,z=X)}if(A.set(I),N(),V.set(I),!!W){for(let t=0;t<x;t++)if(m[t].pin!==0)return;if(z!==0){for(let t=0;t<=c;t++)A.subarray(u[t],u[t+1]).reverse();N(),(J()>K||v()>=z)&&A.set(V)}}}function zt(i,m,r){return i.W[r]/2+(i.KIND[r]===0?m.nodeSep:m.edgeSep)/2}function we(i,m){let{n:r,maxRank:x,W:c,KIND:$,EF:k,ET:R,EFD:w,ETD:a,succStart:g,succE:Y,predStart:y,predE:D,layerStart:u,order:A,pos:_}=i,Z=k.length,L=new Float64Array(r);for(let t=0;t<r;t++)L[t]=zt(i,m,t);let M=new Int32Array(Z);for(let t=0;t<Z;t++)M[t]=_[R[t]];for(let t=0;t<r;t++)g[t+1]-g[t]>1&&Bt(Y,g[t],g[t+1],M);for(let t=0;t<Z;t++)M[t]=_[k[t]];for(let t=0;t<r;t++)y[t+1]-y[t]>1&&Bt(D,y[t],y[t+1],M);let H=new Uint8Array(Z);for(let t=1;t<=x;t++){let s=u[t]-u[t-1],p=u[t],X=u[t+1],G=0,d=p;for(let B=p;B<X;B++){let ft=A[B],lt=-1;if(St($[ft])){let Q=k[D[y[ft]]];St($[Q])&&(lt=Q)}let nt=lt>=0?_[lt]:s;if(lt>=0||B===X-1){for(let Q=d;Q<=B;Q++){let at=A[Q],b=St($[at]);for(let P=y[at];P<y[at+1];P++){let tt=D[P],ot=_[k[tt]];(ot<G||nt<ot)&&!(b&&St($[k[tt]]))&&(H[tt]=1)}}d=B+1,G=nt}}}let U=[],E=new Int32Array(r),J=new Int32Array(r),K=new Float64Array(r),V=new Int32Array(r),o=new Int32Array(r),F=new Float64Array(r),l=new Int32Array(r),f=new Int32Array(r+1),T=new Int32Array(r),v=new Int32Array(r),N=new Int32Array(r);for(let t=0;t<4;t++){let s=t<2,p=(t&1)===1,X=s?y:g,G=s?D:Y,d=s?k:R,B=s?a:w,ft=s?w:a;for(let b=0;b<r;b++)E[b]=b,J[b]=b,K[b]=0;for(let b=0;b<=x;b++){let P=s?b:x-b,tt=u[P],ot=u[P+1],it=s?P-1:P+1,ut=it>=0&&it<=x?u[it+1]-u[it]-1:0,ct=-1;for(let dt=p?ot-1:tt;p?dt>=tt:dt<ot;p?dt--:dt++){let wt=A[dt],xt=X[wt],vt=X[wt+1]-xt;if(vt===0)continue;let $t=xt+(vt-1>>1),pt=xt+(vt>>1);for(let kt=0;kt<2&&!(kt===1&&$t===pt);kt++){let Et=G[kt===0!==p?$t:pt],mt=d[Et],e=p?ut-_[mt]:_[mt];J[wt]===wt&&ct<e&&H[Et]===0&&(J[mt]=wt,J[wt]=E[wt]=E[mt],K[wt]=K[mt]+ft[Et]-B[Et],ct=e)}}}let lt=0;l.fill(0),f.fill(0);for(let b=0;b<=x;b++){let P=u[b],tt=u[b+1];for(let ot=P+1;ot<tt;ot++){let it=p?A[ot]:A[ot-1],ut=p?A[ot-1]:A[ot],ct=L[it]+L[ut];V[lt]=E[it],o[lt]=E[ut],F[lt]=p?ct-K[it]+K[ut]:ct+K[it]-K[ut],l[E[ut]]++,f[E[it]+1]++,lt++}}for(let b=0;b<r;b++)f[b+1]+=f[b];v.set(f.subarray(0,r));for(let b=0;b<lt;b++)T[v[V[b]]++]=b;let nt=new Float64Array(r),Q=0;for(let b=0;b<r;b++)E[b]===b&&l[b]===0&&(N[Q++]=b);for(let b=0;b<Q;b++){let P=N[b];for(let tt=f[P];tt<f[P+1];tt++){let ot=T[tt],it=o[ot];nt[P]+F[ot]>nt[it]&&(nt[it]=nt[P]+F[ot]),--l[it]===0&&(N[Q++]=it)}}for(let b=Q-1;b>=0;b--){let P=N[b],tt=1/0;for(let ot=f[P];ot<f[P+1];ot++){let it=T[ot],ut=nt[o[it]]-F[it];ut<tt&&(tt=ut)}tt!==1/0&&tt>nt[P]&&(nt[P]=tt)}let at=new Float64Array(r);for(let b=0;b<r;b++)at[b]=(p?-nt[E[b]]:nt[E[b]])+K[b];U.push(at)}let j=0,n=1/0,W=[],I=[];for(let t=0;t<4;t++){let s=1/0,p=-1/0,X=U[t];for(let G=0;G<r;G++){let d=c[G]/2;X[G]-d<s&&(s=X[G]-d),X[G]+d>p&&(p=X[G]+d)}W.push(s),I.push(p),p-s<n&&(n=p-s,j=t)}for(let t=0;t<4;t++){let s=(t&1)===0?W[j]-W[t]:I[j]-I[t];if(s!==0){let p=U[t];for(let X=0;X<r;X++)p[X]+=s}}let z=new Float64Array(r);for(let t=0;t<r;t++){let s=U[0][t],p=U[1][t],X=U[2][t],G=U[3][t],d;s>p&&(d=s,s=p,p=d),X>G&&(d=X,X=G,G=d),s>X&&(d=s,s=X,X=d),p>G&&(d=p,p=G,G=d),p>X&&(d=p,p=X,X=d),z[t]=(p+X)/2}return z}var Dt=8,Me=12,Tt=.62,Ft=6;function Ie(){let i=new Map;return{add(m,r,x){let c=me(x);r>=0&&c>0&&c+Ft>(i.get(m*4+r)??0)&&i.set(m*4+r,c+Ft)},of:(m,r)=>r>=0?i.get(m*4+r)??0:0}}function be(i,m,r,x,c=r>0?r+Ft:0,$=x>0?x+Ft:0){let k=m==="linear",R=m==="step"||m==="stepBefore"||m==="stepAfter",w=[],a=[],g=[],Y=(n,W,I,z)=>Math.abs(n-I)<.01&&Math.abs(W-z)<.01;for(let n=0;n<i.length;n+=3){let W=i[n],I=i[n+1],z=i[n+2],t=w.length-1;if(R&&t>=0&&Math.abs(W-w[t])>=.01&&Math.abs(I-a[t])>=.01){let s=w[t],p=a[t],X=m==="stepBefore"?p:m==="stepAfter"?I:(p+I)/2,G=m==="stepBefore"?s:m==="stepAfter"?W:(s+W)/2,d=z===0?[s,X,W,X]:[G,p,G,I];for(let B=0;B<4;B+=2)Y(d[B],d[B+1],s,p)||Y(d[B],d[B+1],W,I)||(w.push(d[B]),a.push(d[B+1]),g.push(z))}w.push(W),a.push(I),g.push(z)}let y=w.length-1,D=n=>Math.abs(w[n]-w[n-1])<.01||Math.abs(a[n]-a[n-1])<.01,u=n=>k||D(n),A=(n,W,I)=>{if(!u(Math.max(n,W)))return I===0?[0,Math.sign(a[W]-a[n])||1]:[Math.sign(w[W]-w[n])||1,0];let z=w[W]-w[n],t=a[W]-a[n],s=Math.hypot(z,t)||1;return[z/s,t/s]},[_,Z]=A(0,1,g[1]),[L,M]=A(y-1,y,g[y]),H=w[0],U=a[0],E=w[y],J=a[y];w[0]+=_*r,a[0]+=Z*r,w[y]-=L*x,a[y]-=M*x;let K=n=>Math.abs(w[n]-w[n-1])+Math.abs(a[n]-a[n-1]),V=n=>!k&&n>0&&n<y&&D(n)&&D(n+1)&&K(n)>=.01&&K(n+1)>=.01&&Math.abs(w[n]-w[n-1])<.01!=Math.abs(w[n+1]-w[n])<.01,o=(n,W,I)=>Math.abs(w[n]-w[n-1])*Math.abs(W)+Math.abs(a[n]-a[n-1])*Math.abs(I),F=(n,W,I)=>{let z=Math.min(Math.max(0,n-Ft-W),I/4);return z+Math.min(n-W-z,(I-z)/4)},l=$>x&&(!u(y)||V(y-1))?F($,x,o(y,L,M)):0,f=c>r&&(!u(1)||V(1))?F(c,r,o(1,_,Z)):0;l>=1&&(w.splice(y,0,w[y]-L*l),a.splice(y,0,a[y]-M*l),g.splice(y,0,g[y]),y++),f>=1&&(w.splice(1,0,w[0]+_*f),a.splice(1,0,a[0]+Z*f),g.splice(1,0,g[1]),y++);let T=`M${O(w[0])},${O(a[0])}`,v=w[0],N=a[0],j=(n,W)=>{Y(n,W,v,N)||(T+=`L${O(n)},${O(W)}`,v=n,N=W)};for(let n=1;n<=y;n++){let W=w[n],I=a[n];if(!u(n)){let d=g[n]===0,B=d?I-N:W-v,ft=Math.abs(B)*Vt(d?W-v:I-N,B),lt=d?0:Math.sign(B)*ft,nt=d?Math.sign(B)*ft:0;T+=`C${O(v+lt)},${O(N+nt)} ${O(W-lt)},${O(I-nt)} ${O(W)},${O(I)}`,v=W,N=I;continue}if(!V(n)){if(n<y&&D(n)&&D(n+1)&&(W-w[n-1])*(w[n+1]-W)+(I-a[n-1])*(a[n+1]-I)>0)continue;j(W,I);continue}let z=V(n-1)?K(n)/2:K(n),t=V(n+1)?K(n+1)/2:K(n+1);R&&(z=t=Math.min(Me,z,t));let[s,p]=A(n-1,n,g[n]),[X,G]=A(n,n+1,g[n+1]);j(W-s*z,I-p*z),v=W+X*t,N=I+G*t,R?T+=`Q${O(W)},${O(I)} ${O(v)},${O(N)}`:T+=`C${O(W-s*z*(1-Tt))},${O(I-p*z*(1-Tt))} ${O(W+X*t*(1-Tt))},${O(I+G*t*(1-Tt))} ${O(v)},${O(N)}`}return{d:T,sx:H,sy:U,sdx:-_,sdy:-Z,ex:E,ey:J,edx:L,edy:M}}function me(i){return i==="arrow_point"?Dt-1:i==="arrow_circle"?Dt:i==="arrow_cross"?4:0}function Se(i,m,r,x,c,$){let k=-c,R=x;if(i==="arrow_point"){let w=m-x*Dt,a=r-c*Dt,g=Dt*.42;return`<path class="pele-marker" d="M${O(m)},${O(r)}L${O(w+k*g)},${O(a+R*g)}L${O(w-k*g)},${O(a-R*g)}Z" fill="${$}" stroke="none"/>`}if(i==="arrow_circle")return`<circle class="pele-marker" cx="${O(m-x*4)}" cy="${O(r-c*4)}" r="3.5" fill="${$}" stroke="none"/>`;if(i==="arrow_cross"){let w=m-x*4,a=r-c*4,g=3.5,Y=(x+k)*g,y=(c+R)*g,D=(x-k)*g,u=(c-R)*g;return`<path class="pele-marker" d="M${O(w-Y)},${O(a-y)}L${O(w+Y)},${O(a+y)}M${O(w-D)},${O(a-u)}L${O(w+D)},${O(a+u)}"/>`}return""}function ve(i,m,r,x,c,$){let k=m.width+8,R=m.height;return`<g class="pele-edge-label" data-id="${Yt(i)}"><rect x="${O(r-k/2)}" y="${O(x-R/2)}" width="${O(k)}" height="${O(R)}" rx="3" fill="var(--_bg)"/>`+qt(m,r,x,c,$)+"</g>"}function $e(i,m,r,x,c,$,k,R){let w=(c?m:r)/2,a=Math.min(w-4,8+x*6),g=$+x*8,Y=Math.hypot(g,a)||1,y=(A,_)=>c?`${O(i.x+_)},${O(i.y+r/2+A)}`:`${O(i.x+m/2+A)},${O(i.y+_)}`,D=g/Y*k,u=a/Y*k;return c?(R.labelX=i.x,R.labelY=i.y+r/2+g+4+R.labelH/2):(R.labelX=i.x+m/2+g+4+R.labelW/2,R.labelY=i.y),{d:`M${y(0,-a)}C${y(g,-a*2)} ${y(g,a*2)} ${y(D,a+u)}`,sx:c?i.x-a:i.x+m/2,sy:c?i.y+r/2:i.y-a,sdx:c?0:-1,sdy:c?-1:0,ex:c?i.x+a:i.x+m/2,ey:c?i.y+r/2:i.y+a,edx:c?-a/Y:-g/Y,edy:c?-g/Y:-a/Y}}export{Se as D,ke as E,be as F,Ee as I,$e as L,ve as S,Dt as a,xe as g,ne as o,ae as s,Ie as v,me as w};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{b as d}from"./RZSVICHU-BiwjruZZ.js";import{$ as C}from"./lazy-CKqR1774.js";var a="about:blank",v=/^([^\w]*)(javascript|data|vbscript)/im,f=/&#(\w+)(^\w|;)?/g,h=/&(newline|tab);/gi,m=/[\u0000-\u001F\u007F-\u009F -]/gim,L=/^.+(:|:)/gim,s=/(\\|%5[cC])((%(6[eE]|72|74))|[nrt])/g;function p(e){try{return decodeURIComponent(e)}catch{return e}}function S(e){if(!e)return a;let t=p(e.trim()),n,l=0;do{if(++l>32)return a;t=t.replace(m,"").replace(f,(i,w)=>String.fromCharCode(w)).replace(h,"").replace(m,"").replace(s,"").trim(),t=p(t),n=t.match(m)||t.match(f)||t.match(h)||t.match(s)}while(n&&n.length>0);if(!t)return a;if(t[0]==="."||t[0]==="/")return t;let o=t.trimStart(),c=o.match(L);if(!c)return t;let r=c[0].toLowerCase().trim();if(v.test(r))return a;let u=o.replace(/\\/g,"/");if(r==="mailto:"||r.includes("://"))return u;if(r==="http:"||r==="https:"){let i;try{i=new URL(u)}catch{return a}return i.protocol=i.protocol.toLowerCase(),i.hostname=i.hostname.toLowerCase(),i.toString()}return u}function E(e){return S(C(e))}var $=["http","https","mailto","tel"],b=["http","https"],k=/^([a-z][a-z0-9+.-]*):/i,F=/^[\\/]{2}/;function g(e,t){if(F.test(e))return;let n=k.exec(e);return!n||t.includes(n[1].toLowerCase())?e:void 0}function R(e,t){return t.links===!1?void 0:g(e,t.linkSchemes??$)}function I(e,t){return t.images===!1?void 0:g(e,t.imageSchemes??b)}function U(e,t,n,l,o,c=""){let r=R(t,o);return r===void 0?e:(l.push({id:n,href:r,internal:!1}),`<a href="${d(r)}"${c}${x(o)}>${e}</a>`)}function x(e){let t=e.linkRel??"noopener";return t?` rel="${d(t)}"`:""}export{E as A,I as H,S as L,R as M,U as N,x as O};
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
import{Y as H,q as M,f as b,T as z,b as v,x as $}from"./RZSVICHU-BiwjruZZ.js";var m=/\s/;function j(i,p,f,g,u=0){let n=[];for(let o of i.split(`
|
|
2
|
-
`)){let e=Array.from(o);e.length===0&&n.push("");let t=0;for(;t<e.length;){let s=d=>p.width(e.slice(t,t+d).join(""),f,u)<=g,w=1;for(;w<e.length-t&&s(w);)w=Math.min(e.length-t,w*2);let a=1;for(;a<w;){let d=Math.ceil((a+w)/2);s(d)?a=d:w=d-1}let c=a,x=t+c<e.length;if(x&&!m.test(e[t+c])){for(let d=c-1;d>0;d--)if(m.test(e[t+d])){c=d+1;break}}let y=e.slice(t,t+c).join("");for(n.push(x&&y.trimEnd()||y),t+=c;x&&t<e.length&&m.test(e[t]);)t++}}i===""&&(n.length=0);let h=n.map(o=>p.width(o,f,u)),l=0;for(let o of h)l=Math.max(l,o);let r=Math.round(f*1.5);return{lines:n.map((o,e)=>[{text:o,style:u,width:h[e]}]),widths:h,width:l,height:n.length*r,size:f,lineHeight:r}}function k(i,p,f){if(i.width<=f)return i;let g=[],u=[];for(let h=0;h<i.lines.length;h++){if(i.widths[h]<=f){g.push(i.lines[h]),u.push(i.widths[h]);continue}let l=[],r=0,o=()=>{g.push(l),u.push(r),l=[],r=0};for(let e of i.lines[h]){if(e.icon!==void 0){l.length&&r+e.width>f&&o(),l.push(e),r+=e.width;continue}for(let t of Array.from(e.text)){let s=l[l.length-1],w=s&&s.icon===void 0&&s.style===e.style,a=p.width(w?s.text+t:t,i.size,e.style)-(w?s.width:0);l.length&&r+a>f&&(o(),s=void 0,a=p.width(t,i.size,e.style)),s&&s.icon===void 0&&s.style===e.style?(s.text+=t,s.width+=a):l.push({text:t,style:e.style,width:a}),r+=a}}(l.length||!i.lines[h].length)&&o()}let n=0;for(let h of u)n=Math.max(n,h);return{...i,lines:g,widths:u,width:n,height:g.length*i.lineHeight}}function q(i,p,f,g){let u=H(i),n="<text"+M(g,u),h="";for(let l=0;l<i.lines.length;l++){let r=i.lines[l],o=f+(l+.5)*i.lineHeight;if(r.some(t=>t.icon!==void 0)){let t=i.widths[l];h+=b({...i,lines:[r],widths:[t],height:i.lineHeight},p+t/2,o,g);continue}let e="";for(let t of r){let s=z(t.style&~u);e+=s?`<tspan${s}>${v(t.text)}</tspan>`:v(t.text)}e!==""&&(h+=`${n} x="${$(p)}" y="${$(o+i.size*.35)}" text-anchor="start" xml:space="preserve">${e}</text>`)}return h}export{q as A,j as H,k};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
var Lt=Object.defineProperty;var zt=(n,s,i)=>s in n?Lt(n,s,{enumerable:!0,configurable:!0,writable:!0,value:i}):n[s]=i;var I=(n,s,i)=>zt(n,typeof s!="symbol"?s+"":s,i);import{W as Nt,Y as St,X as Tt}from"./N6DAJLIZ-BsZQKTyT.js";import{P as Vt,V as rt,E as yt}from"./URA2L2QI-B8pYKxOk.js";import{c as Xt,h as Ct}from"./DKTLEL5E-B7ILCVTH.js";import{_ as ut,m as Mt,x as h,h as Et,y as Qt,f as et,$ as Rt}from"./RZSVICHU-BiwjruZZ.js";import{x as Ut,H as Yt,W as qt}from"./lazy-CKqR1774.js";import"./index-392ivruk.js";var Bt=11,Dt=class{constructor(){I(this,"type","mindmap");I(this,"title");I(this,"nodes",[]);I(this,"getType",Nt);I(this,"baseLevel",0);I(this,"open",[])}addNode(n,s,i,f){let M=this.nodes.length===0;M&&(this.baseLevel=n),n-=this.baseLevel;let u=this.open,g=u.length;for(;g>0&&u[g-1].level>=n;)g--;let x=u[g-1];if(!x&&!M)throw new Ut(`There can be only one root. No parent could be found for ("${i}")`,"semantic",{type:"mindmap"});let b={id:this.nodes.length,nodeId:s,level:n,descr:i,type:f,children:[],isRoot:M};x&&(b.section=x.isRoot?x.children.length%Bt:x.section,x.children.push(b)),u.length=g,u.push(b),this.nodes.push(b)}decorateNode(n){let s=this.nodes[this.nodes.length-1];!n||!s||(n.icon&&(s.icon=n.icon),n.class&&(s.class=n.class))}};function Gt(n,s){St(n,s,!1)}var Jt=["","rounded","rect","circle","cloud","bang","hex"],xt="stadium",Kt=36,Pt=8,Zt=18,jt=52,At=28,bt=6,Ot=12,te=.22,at=6,ot=28,vt=12,Ft=8,kt=10;function ee(n,s,i,f){if(n.lines.length<2)return et(n,s+n.width/2,i,' class="pele-label"',f);let M="";for(let u=0;u<n.lines.length;u++){let g=n.widths[u],x={lines:[n.lines[u]],widths:[g],height:n.lineHeight,size:n.size,lineHeight:n.lineHeight};M+=et(x,s+g/2,i+(u-(n.lines.length-1)/2)*n.lineHeight,' class="pele-label"',f)}return M}function le(n,s,i){return Xt(i,f=>ne(n,s,i,f))}function ne(n,s,i,f){var gt;let M=i.fontSize??16,u=i.measurer??Yt(i.fontFamily),g=i.padding??8,x=i.icons,b=(gt=s.mindmap)==null?void 0:gt.maxNodeWidth,Ht=typeof b=="number"&&b>0?Math.min(b,2e3):200,X=M*1.25,v=n.nodes,r=v.length,W=new Int32Array(r),B=new Int32Array(r);for(let e=0;e<r;e++)for(let t of v[e].children)W[t.id]=e,B[t.id]=B[e]+1;let Wt=f&&i.maxWidth!==void 0&&i.maxWidth>0?i.maxWidth-2*g:1/0,ht=new Array(r),D=new Array(r),c=new Float64Array(r),$=new Float64Array(r),G=new Float64Array(r),F=new Float64Array(r),J=new Uint8Array(r);for(let e=0;e<r;e++){let t=v[e];J[e]=t.icon!==void 0&&qt(t.icon)!==""?1:0;let d=Math.min(Ht,Math.max(72,Wt-B[e]*ot-2*bt-(J[e]?X+at:0))),a=ht[e]=ut(t.descr,!0,u,M,d),w=a.width+(J[e]?X+(a.width>0?at:0):0),y=Math.max(a.height,Math.round(M*1.5)),l=Jt[t.type]||(e===0?xt:"");if(f&&e===0&&l!=="rect"&&l!=="rounded"&&(l=xt),D[e]=l,l===""){let o=t.children.length>0;c[e]=w+2*(o?Ot:bt),$[e]=y+(o?6:0),F[e]=$[e]/2}else{let o=Vt(l,w,y);c[e]=o.w,$[e]=o.h,G[e]=o.dy,F[e]=o.h/2}}let C=new Float64Array(r),E=new Float64Array(r),K=new Float64Array(r),st=new Float64Array(r),dt=0,ct=(e,t,d,a)=>{let w=0,y=0;for(let m=t;m<d;m++){let A=e[m].id;E[A]=w,y=e[m].children.length>0||m+1<d&&e[m+1].children.length>0?Math.max(a,Zt):a,w+=C[A]+y}dt=w-y;let l=e[t].id,o=e[d-1].id;return(E[l]+K[l]+F[l]+E[o]+K[o]+F[o])/2};for(let e=r-1;e>0;e--){let t=v[e].children;if(t.length===0){C[e]=$[e];continue}let d=ct(t,0,t.length,Pt)-F[e],a=Math.min(0,d);C[e]=Math.max(dt,d+$[e])-a,K[e]=d-a,st[e]=-a}let L=new Float64Array(r),z=new Float64Array(r),P=new Float64Array(r),Q=new Int8Array(r),$t=new Float64Array(r);if(f){let e=0;for(let t=0;t<r;t++)t>0&&W[t]===0&&(e+=kt),L[t]=B[t]*ot+c[t]/2,z[t]=e,e+=$[t]+kt}else if(r>0){let e=v[0].children,t=e.length,d=0;for(let l of e)d+=C[l.id];let a=t,w=1/0,y=0;for(let l=1;l<t;l++){y+=C[e[l-1].id];let o=Math.abs(2*y-d+(2*l-t)*At);o<w&&(w=o,a=l)}for(let l=0,o=a,m=1;l<t;l=o,o=t,m=-1){let A=ct(e,l,o,At);for(let k=l;k<o;k++){let S=e[k].id;P[S]=E[S]-A,Q[S]=m}}z[0]=-$[0]/2;for(let l=0;l<r;l++){l>0&&(z[l]=P[l]+K[l]);for(let o of v[l].children){let m=o.id;l>0&&(Q[m]=Q[l],P[m]=P[l]+st[l]+E[m]),L[m]=L[l]+Q[m]*(c[l]/2+(l>0?Kt:jt)+c[m]/2)}}}let R=0,Z=0,j=0,lt=0,nt="",O="",tt="",N="",_t=e=>{tt!==""&&(nt+=`<g class="pele-branch pele-section-${e??0}"><g class="pele-edges" fill="none" stroke="${N}" stroke-width="1.5">${O}</g>${tt}</g>`,O=tt="")};for(let e=1;e<=r;e++){let t=e%r,d=v[t],a=D[t],w=ht[t],y=L[t],l=z[t];if(R=Math.min(R,y-c[t]/2),Z=Math.max(Z,y+c[t]/2),j=Math.min(j,l),lt=Math.max(lt,l+$[t]),(t===0||W[t]===0)&&_t(v[e-1].section),t>0&&f){W[t]===0&&(N=Mt(d.section??0));let p=W[t],T=p===0?Math.min(Math.max(vt,$[0]/2),ot-Ft):vt,_=L[p]-c[p]/2+Math.min(T,c[p]/2),Y=$t[p]||z[p]+$[p],q=y-c[t]/2+(a?rt(a,c[t],$[t],3):0),H=l+F[t],V=Math.max(0,Math.min(Ft,q-_,H-Y));$t[p]=H-V,O+=`<path class="pele-edge" d="M${h(_)},${h(Y)}V${h(H-V)}Q${h(_)},${h(H)} ${h(_+V)},${h(H)}H${h(q)}"/>`}else if(t>0){W[t]===0&&(N=Mt(d.section??0));let p=W[t],T=Q[t],_=T>0?1:3,Y=L[p]+T*(c[p]/2-(D[p]?rt(D[p],c[p],$[p],_):0)),q=z[p]+F[p],H=y-T*c[t]/2+(a?T*rt(a,c[t],$[t],4-_):0),V=l+F[t],wt=h((Y+H)/2);O+=`<path class="pele-edge" d="M${h(Y)},${h(q)}C${wt},${h(q)} ${wt},${h(V)} ${h(H)},${h(V)}"/>`}let o=!a&&d.children.length>0,m=` fill="${N}" fill-opacity="${te}" stroke="${N}"`,A="";a?A=t>0?yt(a,c[t],$[t],m,` stroke="${N}"`):yt(a,c[t],$[t],' fill="var(--_s)" stroke="var(--_b)"',' stroke="var(--_b)"'):o&&(A=`<rect x="${h(-c[t]/2)}" y="${h(-$[t]/2)}" width="${h(c[t])}" height="${h($[t])}" rx="${h($[t]/2)}"${m}/>`);let k=0;d.icon&&J[t]&&(k=(X+(w.width>0?at:0))/2,A+=Tt(d.icon,-k-w.width/2,G[t]-X/2,X,x));let S=`<g class="pele-node pele-shape-${a||(o?"branch":"text")}${t>0?"":" pele-root"}${Et(d.class??"")}" data-id="${Qt(d.nodeId)}" transform="translate(${h(y)},${h(l+$[t]/2)})">`+A+(f&&!a?ee(w,k-w.width/2,G[t],x):et(w,k,G[t],' class="pele-label"',x))+"</g>";t>0?tt+=S:nt+=S}let U=ut(n.title,!1,u,M,Ct(i),1),mt=U.height>0?U.height+16:0,pt=Math.max(Z-R,U.width),it=Math.ceil(pt+2*g),ft=Math.ceil(lt-j+mt+2*g),It=et(U,it/2,g+U.height/2,' class="pele-title" font-weight="var(--_tw)"')+`<g transform="translate(${h(g-R+(pt-Z+R)/2)},${h(g+mt-j)})">${nt}</g>`;return{svg:Rt("mindmap",it,ft,M,i,{},It),width:it,height:ft,links:[]}}var ce={type:"mindmap",parse(n,s,i){let f=new Dt;return f.title=i,Gt(n,f),f},render:le};export{ce as mindmap};
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
var dt=Object.defineProperty;var ut=(t,l,e)=>l in t?dt(t,l,{enumerable:!0,configurable:!0,writable:!0,value:e}):t[l]=e;var E=(t,l,e)=>ut(t,typeof l!="symbol"?l+"":l,e);import{H as Mt,x as J,L as st,i as it,e as B,t as D,a as xt}from"./lazy-CKqR1774.js";import{_ as F,m as gt,y as W,x as q,f as nt,$ as yt,g as ft}from"./RZSVICHU-BiwjruZZ.js";import"./index-392ivruk.js";function z(t){let l=t.trim();return l.length>=2&&l.startsWith('"')&&l.endsWith('"')?l.slice(1,-1):l}function j(t){return t.map(z).sort()}var pt=class{constructor(){E(this,"type","venn");E(this,"title");E(this,"subsets",[]);E(this,"textNodes",[]);E(this,"styles",[]);E(this,"known",new Set);E(this,"current");E(this,"indent",!1)}setDiagramTitle(t){this.title=t}addSubsetData(t,l,e){let r=j(t);this.current=r,r.length===1&&this.known.add(r[0]),this.subsets.push({sets:r,size:e??10/t.length**2,label:l?z(l):void 0})}addTextData(t,l,e){this.textNodes.push({sets:j(t),id:z(l),label:e?z(e):void 0})}addStyleData(t,l){let e=new Map;for(let[r,s]of l)e.set(r,s&&z(s));this.styles.push({targets:j(t),styles:e})}validateUnionIdentifiers(t){let l=t.map(z).filter(e=>!this.known.has(e));if(l.length>0)throw new J(`unknown set identifier: ${l.join(", ")}`,"semantic",{type:"venn"})}getCurrentSets(){return this.current}getIndentMode(){return this.indent}setIndentMode(t){this.indent=t}},at=["$end","INVALID","EOF","NEWLINE","VENN","TITLE","SET","UNION","TEXT","INDENT_TEXT","STYLE","BRACKET_LABEL","NUMERIC","HEXCOLOR","RGBCOLOR","RGBACOLOR","IDENTIFIER","STRING","COMMA","COLON"],ct=[["venn-beta",4],["set",6],["union",7],["text",8],["style",10]],mt=class{constructor(t,l){E(this,"src");E(this,"host");E(this,"text","");E(this,"start",0);E(this,"at",0);E(this,"lineStart",!1);E(this,"ended",!1);this.src=t,this.host=l}word(t,l){let e=this.src;for(let r=0;r<l.length;r++){let s=e.charCodeAt(t+r),d=l.charCodeAt(r);if(s!==d&&(s+32!==d||s<65||s>90))return!1}return!0}keyword(t,l){return this.word(t,l)&&!it(this.src.charCodeAt(t+l.length))}color(t,l){let e=this.src,r=t+1;for(let s=0;s<l;s++){for(;B(e.charCodeAt(r));)r++;let d=r;for(;D(e.charCodeAt(r))||e.charCodeAt(r)===46;)r++;if(r===d)return-1;for(;B(e.charCodeAt(r));)r++;if(e.charCodeAt(r)!==(s===l-1?41:44))return-1;r++}return r}lineEnd(t){let l=this.src.indexOf(`
|
|
2
|
-
`,t);return l===-1?this.src.length:l}next(){let t=this.src,l=t.length;for(;;){let e=this.at;if(this.start=e,this.text="",e>=l)return this.ended?0:(this.ended=!0,2);let r=t.charCodeAt(e);if(r===37&&t.charCodeAt(e+1)===37&&t.charCodeAt(e+2)!==123||r!==125&&t.charCodeAt(e+1)===37&&t.charCodeAt(e+2)===37){this.at=this.lineEnd(e+2);continue}if(this.lineStart){if(r===32||r===9){let s=e+1;for(;t.charCodeAt(s)===32||t.charCodeAt(s)===9;)s++;if(this.at=s,this.keyword(s,"text")&&this.host.getIndentMode())return this.at=s+4,this.lineStart=!1,this.text=t.slice(e,s),9;continue}r!==10&&r!==13&&(this.host.setIndentMode(!1),this.lineStart=!1)}if(r===10||r===13){for(e++;t.charCodeAt(e)===10||t.charCodeAt(e)===13;)e++;return this.lineStart=!0,this.token(3,e)}if(r===37&&t.charCodeAt(e+1)===37){this.at=this.lineEnd(e);continue}if(r===32||r===9){for(e++;t.charCodeAt(e)===32||t.charCodeAt(e)===9;)e++;this.at=e;continue}if((r|32)>=97&&(r|32)<=122||r===95){if(this.word(e,"title")&&B(t.charCodeAt(e+5))){let s=e+6;for(;s<l;){let d=t.charCodeAt(s);if(d===35||d===10||d===59)break;s++}if(s>e+6)return this.token(5,s)}for(let[s,d]of ct)if(this.keyword(e,s))return this.token(d,e+s.length);if(this.word(e,"rgb")){let s=(t.charCodeAt(e+3)|32)===97,d=e+(s?4:3),h=t.charCodeAt(d)===40?this.color(d,s?4:3):-1;if(h!==-1)return this.token(s?15:14,h)}for(e++;it(t.charCodeAt(e))||t.charCodeAt(e)===45;)e++;return this.token(16,e)}if(r===91){if(t.charCodeAt(e+1)===34){let d=t.indexOf('"',e+2);return d===-1||t.charCodeAt(d+1)!==93?1:(this.at=d+2,this.text=t.slice(e+2,d),11)}let s=e+1;for(;s<l&&t.charCodeAt(s)!==93&&t.charCodeAt(s)!==34;)s++;return s===e+1||t.charCodeAt(s)!==93?1:(this.at=s+1,this.text=t.slice(e+1,s).trim(),11)}if(D(r)||r===46||r===43||r===45){(r===43||r===45)&&e++;let s=e;for(;D(t.charCodeAt(e));)e++;if(e>s){if(t.charCodeAt(e)===46&&D(t.charCodeAt(e+1)))for(e+=2;D(t.charCodeAt(e));)e++}else if(t.charCodeAt(e)===46&&D(t.charCodeAt(e+1)))for(e+=2;D(t.charCodeAt(e));)e++;else return 1;return this.token(12,e)}if(r===35){let s=e+1;for(;s<e+9&&xt(t.charCodeAt(s));)s++;return s>=e+4?this.token(13,s):1}if(r===34){let s=t.indexOf('"',e+1);return s===-1?1:this.token(17,s+1)}return r===44?this.token(18,e+1):r===58?this.token(19,e+1):1}}token(t,l){return this.text=this.src.slice(this.at,l),this.at=l,t}},Ct="'EOF', 'NEWLINE', 'TITLE', 'SET', 'UNION', 'TEXT', 'INDENT_TEXT', 'STYLE'",$t="'NUMERIC', 'IDENTIFIER', 'STRING', 'HEXCOLOR', 'RGBCOLOR', 'RGBACOLOR'";function At(t,l){let e=new mt(t,l),r=-1,s=()=>r===-1?r=e.next():r,d=x=>{throw s()===1?st("venn",t,e.start,"",!0):st("venn",t,e.start,`Expecting ${x}, got '${at[r]}'`)},h=()=>(r=-1,e.text),C=x=>(s()!==x&&d(`'${at[x]}'`),h()),i=()=>(s()!==16&&r!==17&&d("'IDENTIFIER', 'STRING'"),h()),M=()=>{let x=[i()];for(;s()===18;)h(),x.push(i());return x},u=(x,f)=>{let y=s()===11?h():void 0,n;if(s()===19&&(h(),n=parseFloat(C(12))),f){if(x.length<2)throw new J("union requires multiple identifiers","semantic",{type:"venn"});l.validateUnionIdentifiers(x)}l.addSubsetData(x,y,n),l.setIndentMode(!0)},g=x=>{let f=s();f!==16&&f!==17&&f!==12&&d("'NUMERIC', 'IDENTIFIER', 'STRING'");let y=h(),n=f!==12&&s()===11?h():void 0;l.addTextData(x(),y,n)},m=()=>{let x=M(),f=[];for(;;){let y=C(16);C(19);let n;if(s()===17)n=h();else{let o=[];for(;s()===16||r>=12&&r<=15;)o.push(h());o.length===0&&d($t),n=o.join(" ")}if(f.push([y,n]),s()!==18)break;h()}l.addStyleData(x,f)};for(;s()===3;)h();for(C(4);;){let x=s();if(x===2)return;if((x<3||x>10||x===4)&&d(Ct),h(),x===5)l.setDiagramTitle(e.text.slice(6));else if(x===6)u([i()],!1);else if(x===7)u(M(),!0);else if(x===8){let f=M();g(()=>f)}else x===9?g(()=>{let f=l.getCurrentSets();if(!f)throw new J("text requires set","semantic",{type:"venn"});return f}):x===10&&m()}}var G=Math.PI*2;function wt(t){let l=new Set,e=new Map;for(let s of t)l.add(JSON.stringify([...s.sets].sort())),s.sets.length===1&&e.set(s.sets[0],s.size);let r=[];for(let s of t){if(s.sets.length<3)continue;let d=[...s.sets].sort();for(let h=0;h<d.length-1;h++)for(let C=h+1;C<d.length;C++){let i=[d[h],d[C]],M=JSON.stringify(i);if(l.has(M))continue;l.add(M);let u=e.get(i[0]),g=e.get(i[1]);r.push({sets:i,size:u!==void 0&&g!==void 0?Math.min(u,g)/4:2.5,label:""})}}return r.length>0?[...t,...r]:t}function bt(t,l,e){if(e>=t+l)return 0;let r=Math.min(t,l);if(e<=Math.abs(t-l))return Math.PI*r*r;let s=t*t*Math.acos((e*e+t*t-l*l)/(2*e*t)),d=l*l*Math.acos((e*e+l*l-t*t)/(2*e*l)),h=.5*Math.sqrt(Math.max((-e+t+l)*(e+t-l)*(e-t+l)*(e+t+l),0));return s+d-h}function Et(t,l,e){let r=Math.abs(t-l),s=t+l;if(!(e>0))return s;if(e>=Math.PI*Math.min(t,l)**2)return r;for(let d=0;d<48;d++){let h=(r+s)/2;bt(t,l,h)>e?r=h:s=h}return(r+s)/2}function ot(t,l,e,r,s,d){let h=1/0;for(let C of l){let i=t[C],M=r-i.x,u=s-i.y,g=i.r-Math.sqrt(M*M+u*u);if(g<h){if(g<d)return g;h=g}}for(let C of e){let i=t[C],M=r-i.x,u=s-i.y,g=Math.sqrt(M*M+u*u)-i.r;if(g<h){if(g<d)return g;h=g}}return h}function Y(t,l,e){let r=0,s=0,d=t[l[0]];for(let f of l){let y=t[f];r+=y.x/l.length,s+=y.y/l.length,y.r<d.r&&(d=y)}let h=d.r,C=r,i=s,M=ot(t,l,e,C,i,-1/0),u=0,g=(f,y)=>{let n=ot(t,l,e,f,y,M-h*1e-9);if(!(n>M-h*1e-9))return!1;let o=Math.hypot(f-r,y-s);return n>M+h*1e-9||o<u-h*1e-9?(M=n,u=o,C=f,i=y,!0):!1},m=10;for(let f=-m;f<=m;f++)for(let y=-m;y<=m;y++)y*y+f*f<=m*m&&g(d.x+y*h/m,d.y+f*h/m);let x=h/m;for(let f=0;f<40&&x>h*1e-6;f++){let y=!1;for(let n=0;n<8;n++){let o=n*G/8;g(C+Math.cos(o)*x,i+Math.sin(o)*x)&&(y=!0)}y||(x/=2)}return{x:C,y:i,margin:M}}function It(t){let l=new Map;for(let n of t)for(let o of n.sets)l.has(o)||l.set(o,10);for(let n of t)n.sets.length===1&&l.set(n.sets[0],n.size);let e=new Map,r=[],s=0;for(let n of l.values())Number.isFinite(n)&&n>s&&(s=n);s===0&&(s=10);let d=Math.sqrt(s/Math.PI);for(let[n,o]of l){e.set(n,r.length);let p=Number.isFinite(o)&&o>0?Math.sqrt(o/Math.PI):0;r.push({id:n,x:0,y:0,r:Math.max(p,d*.3)})}let h=r.length;if(h<2)return r;let C=new Map;for(let n of wt(t)){if(n.sets.length!==2)continue;let o=e.get(n.sets[0]),p=e.get(n.sets[1]);o!==p&&C.set(Math.min(o,p)*h+Math.max(o,p),n.size)}let i=new Map;for(let[n,o]of C)i.set(n,Et(r[Math.floor(n/h)].r,r[n%h].r,o));let M=d*.15,u=(n,o)=>i.get(n*h+o)??r[n].r+r[o].r+M;if(h===2)return r[1].x=u(0,1),r;if(h===3){let n=u(0,1),o=u(0,2),p=u(1,2),A=t.some(I=>new Set(I.sets).size===3);for(let I=0;I<40;I++){let v=n>0?(n*n+o*o-p*p)/(2*n):0;if(r[1].x=n,r[2].x=Math.max(-o,Math.min(o,v)),r[2].y=Math.sqrt(Math.max(o*o-v*v,0)),!A||Y(r,[0,1,2],[]).margin>d*.12)break;n*=.94,o*=.94,p*=.94}return r}let g=0;for(let n of r)g+=2*n.r+M;let m=Math.min(300,Math.floor(3e6/(h*h)));if(h<=64){let n=g/G;r.forEach((o,p)=>{let A=p*G/h-Math.PI/2;o.x=Math.cos(A)*n,o.y=Math.sin(A)*n})}else{let n=Math.ceil(Math.sqrt(h)),o=2*d+M;r.forEach((p,A)=>{p.x=A%n*o,p.y=Math.floor(A/n)*o})}let x=new Float64Array(h),f=new Float64Array(h),y=new Int32Array(h);for(let n=0;n<m;n++){x.fill(0),f.fill(0),y.fill(0);for(let o=0;o<h;o++)for(let p=o+1;p<h;p++){let A=i.get(o*h+p),I=r[o].r+r[p].r+M,v=r[p].x-r[o].x,T=r[p].y-r[o].y,R=Math.hypot(v,T);if(A===void 0&&R>=I)continue;R<1e-9&&(v=Math.cos(o+p),T=Math.sin(o+p),R=1);let k=(R-(A??I))/2/R;x[o]+=v*k,f[o]+=T*k,x[p]-=v*k,f[p]-=T*k,y[o]++,y[p]++}for(let o=0;o<h;o++)y[o]!==0&&(r[o].x+=x[o]/y[o],r[o].y+=f[o]/y[o])}return r}function vt(t,l){let e=i=>`M${l(i.x-i.r)},${l(i.y)}A${l(i.r)},${l(i.r)} 0 1 1 ${l(i.x+i.r)},${l(i.y)}A${l(i.r)},${l(i.r)} 0 1 1 ${l(i.x-i.r)},${l(i.y)}Z`;if(t.length===1)return e(t[0]);let r=(i,M,u,g)=>{for(let m of t)if(m!==u&&m!==g&&Math.hypot(i-m.x,M-m.y)>m.r*(1+1e-9))return!1;return!0},s=[];for(let i=0;i<t.length;i++)for(let M=i+1;M<t.length;M++){let u=t[i],g=t[M],m=Math.hypot(g.x-u.x,g.y-u.y);if(m>=u.r+g.r||m<=Math.abs(u.r-g.r)||m===0)continue;let x=(u.r*u.r-g.r*g.r+m*m)/(2*m),f=Math.sqrt(Math.max(u.r*u.r-x*x,0)),y=u.x+(g.x-u.x)*x/m,n=u.y+(g.y-u.y)*x/m;for(let o of[1,-1]){let p=y+o*f*(g.y-u.y)/m,A=n-o*f*(g.x-u.x)/m;r(p,A,u,g)&&s.push({x:p,y:A,a:u,b:g})}}if(s.length<2){let i=t[0];for(let M of t)M.r<i.r&&(i=M);for(let M of t)if(M!==i&&Math.hypot(M.x-i.x,M.y-i.y)+i.r>M.r*(1+1e-9))return"";return e(i)}let d=0,h=0;for(let i of s)d+=i.x/s.length,h+=i.y/s.length;s.sort((i,M)=>Math.atan2(i.y-h,i.x-d)-Math.atan2(M.y-h,M.x-d));let C="";for(let i=0;i<s.length;i++){let M=s[i],u=s[(i+1)%s.length];i===0&&(C=`M${l(M.x)},${l(M.y)}`);let g,m=0,x=1/0;for(let f of[M.a,M.b]){if(f!==u.a&&f!==u.b)continue;let y=Math.atan2(M.y-f.y,M.x-f.x),n=Math.atan2(u.y-f.y,u.x-f.x)-y;n<=0&&(n+=G);let o=f.x+f.r*Math.cos(y+n/2),p=f.y+f.r*Math.sin(y+n/2),A=Math.hypot(o-(M.x+u.x)/2,p-(M.y+u.y)/2);A<x&&(x=A,g=f,m=n>Math.PI?1:0)}g===void 0?C+=`L${l(u.x)},${l(u.y)}`:C+=`A${l(g.r)},${l(g.r)} 0 ${m} 1 ${l(u.x)},${l(u.y)}`}return C+"Z"}var Nt=100,Tt=1.6,ht=ft([]);function H(t){return t.length===1?t[0]:JSON.stringify(t)}function St(t,l,e){var et;let r=e.fontSize??16,s=Math.round(r*.875),d=Math.round(r*.8125),h=e.measurer??Mt(e.fontFamily),C=e.padding??8,i=It(t.subsets),M=new Map;i.forEach((a,c)=>M.set(a.id,c));let u=new Map;for(let{targets:a,styles:c}of t.styles){let $=H(a),w=u.get($);w||u.set($,w=new Map);for(let[N,S]of c)w.set(N,S)}let g=a=>{let c=u.get(a);if(!c)return ht;let $=[];for(let[w,N]of c)$.push(`${w}:${N}`);return ft($)},m=i.map(()=>[]);for(let a=0;a<i.length;a++)for(let c=a+1;c<i.length;c++)Math.hypot(i[a].x-i[c].x,i[a].y-i[c].y)<i[a].r+i[c].r&&(m[a].push(c),m[c].push(a));let x=new Map;for(let a of t.subsets)x.set(H(a.sets),a);let f=new Map;for(let[a,c]of x){let $=[...new Set(c.sets)],w=$.map(O=>M.get(O)),N=new Set(w),S=w[0];for(let O of w)i[O].r<i[S].r&&(S=O);let b=g(a),L=c.label??(c.sets.length===1?c.sets[0]:void 0),rt=(b.bold?1:0)|(b.italic?2:0),X=Y(i,w,m[S].filter(O=>!N.has(O)));X.margin<i[S].r*.2&&(X=Y(i,w,[]));let lt={sets:$,inside:w,spot:X,lines:[],style:b};if(L){let O=$.length===1?r:s;lt.lines.push({id:void 0,raw:L,size:O,base:rt,label:F(L,!1,h,O,4e3,rt)})}f.set(a,lt)}for(let a of t.textNodes){let c=a.label??a.id;(et=f.get(H(a.sets)))==null||et.lines.push({id:a.id,raw:c,size:d,base:0,label:F(c,!1,h,d,4e3)})}let y=0;for(let a of i)a.r>y&&(y=a.r);let n=y>0?Nt/y:1,o=1;for(let a of f.values()){if(a.spot.margin<=0)continue;let c=0,$=0;for(let N of a.lines)c=Math.max(c,N.label.width),$+=N.label.height;let w=Math.hypot(c,$)/2+4;o=Math.max(o,Math.min(w/(a.spot.margin*n),Tt))}n*=o;for(let a of f.values()){let c=Math.max(a.spot.margin*n*1.8,72);for(let $ of a.lines)$.label.width>c&&($.label=F($.raw,!1,h,$.size,c,$.base))}let p=1/0,A=1/0,I=-1/0,v=-1/0;for(let a of i)p=Math.min(p,(a.x-a.r)*n),A=Math.min(A,(a.y-a.r)*n),I=Math.max(I,(a.x+a.r)*n),v=Math.max(v,(a.y+a.r)*n);for(let a of f.values()){let c=0,$=0;for(let w of a.lines)c=Math.max(c,w.label.width),$+=w.label.height;p=Math.min(p,a.spot.x*n-c/2),I=Math.max(I,a.spot.x*n+c/2),A=Math.min(A,a.spot.y*n-$/2),v=Math.max(v,a.spot.y*n+$/2)}i.length===0&&(p=A=I=v=0);let T=F(t.title&&z(t.title),!1,h,r,4e3,1),R=T.height>0?T.height+12:0,k=Math.max(I-p,T.width),V=C+(k-(I-p))/2-p,Z=C+R-A,P=Math.ceil(k+2*C),K=Math.ceil(v-A+R+2*C),Q=i.map(a=>({id:a.id,x:a.x*n+V,y:a.y*n+Z,r:a.r*n})),tt="";Q.forEach((a,c)=>{var N;let $=gt(c),w=((N=f.get(a.id))==null?void 0:N.style)??ht;tt+=`<circle class="pele-venn-set" data-id="${W(a.id)}" cx="${q(a.x)}" cy="${q(a.y)}" r="${q(a.r)}" fill="${$}" fill-opacity="0.2" stroke="${$}"${w.shape}/>`});let U="",_="";for(let a of f.values()){let c=W(a.sets.join("|"));if(a.sets.length>1&&a.style.shape!==""){let b=vt(a.inside.map(L=>Q[L]),q);b!==""&&(U+=`<path class="pele-venn-overlap" data-id="${c}" d="${b}" fill="none"${a.style.shape}/>`)}let $=0;for(let b of a.lines)$+=b.label.height;if($===0)continue;let w=a.spot.x*n+V,N=a.spot.y*n+Z-$/2,S="";for(let b of a.lines){let L=b.id===void 0?` class="pele-label"${b.size===r?"":` font-size="${b.size}"`}${a.style.text}`:` class="pele-venn-text" data-id="${W(b.id)}" font-size="${d}" fill="var(--_m)"${g(b.id).text}`;S+=nt(b.label,w,N+b.label.height/2,L),N+=b.label.height}_+=`<g class="pele-venn-region" data-id="${c}">${S}</g>`}return{svg:yt("venn",P,K,r,e,{},nt(T,P/2,C+T.height/2,' class="pele-title" font-weight="var(--_tw)"')+`<g class="pele-venn-sets">${tt}</g>`+(U?`<g class="pele-venn-overlaps">${U}</g>`:"")+(_?`<g class="pele-venn-labels">${_}</g>`:"")),width:P,height:K,links:[]}}var Dt={type:"venn",parse(t,l,e){let r=new pt;return e&&(r.title=e),At(t,r),r},render:St};export{Dt as venn};
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{_ as o,f as s,x as f}from"./RZSVICHU-BiwjruZZ.js";function m(g,l,c,i,e,a,r){let t=o(g,!1,l,c,4e3,1);if(t.height===0)return{width:e,height:a,content:r};let n=t.height+12,h=Math.max(e,Math.ceil(t.width+2*i));return{width:h,height:Math.ceil(a+n),content:s(t,h/2,i+t.height/2,' class="pele-title" font-weight="var(--_tw)"')+`<g transform="translate(${f((h-e)/2)},${f(n)})">${r}</g>`}}export{m as c};
|
|
@@ -1,12 +0,0 @@
|
|
|
1
|
-
var Zt=Object.defineProperty;var Gt=(e,a,i)=>a in e?Zt(e,a,{enumerable:!0,configurable:!0,writable:!0,value:i}):e[a]=i;var H=(e,a,i)=>Gt(e,typeof a!="symbol"?a+"":a,i);import{q as Jt,x as Bt,L as Ot,e as me,i as Qt,t as Ke,H as Xt}from"./lazy-CKqR1774.js";import{k as ea}from"./KQOEJWJY-DKTXya68.js";import{p as ta,h as aa}from"./DKTLEL5E-B7ILCVTH.js";import{a as Ze,D as Mt}from"./HWDLEDTA-C_JcdBMO.js";import{x as n,g as St,a as fe,y as ce,f as de,$ as ra,_ as ia,h as sa,b as la}from"./RZSVICHU-BiwjruZZ.js";import"./index-392ivruk.js";var na="aliceblue antiquewhite aqua aquamarine azure beige bisque black blanchedalmond blue blueviolet brown burlywood cadetblue chartreuse chocolate coral cornflowerblue cornsilk crimson cyan darkblue darkcyan darkgoldenrod darkgray darkgreen darkgrey darkkhaki darkmagenta darkolivegreen darkorange darkorchid darkred darksalmon darkseagreen darkslateblue darkslategray darkslategrey darkturquoise darkviolet deeppink deepskyblue dimgray dimgrey dodgerblue firebrick floralwhite forestgreen fuchsia gainsboro ghostwhite gold goldenrod gray green greenyellow grey honeydew hotpink indianred indigo ivory khaki lavender lavenderblush lawngreen lemonchiffon lightblue lightcoral lightcyan lightgoldenrodyellow lightgray lightgreen lightgrey lightpink lightsalmon lightseagreen lightskyblue lightslategray lightslategrey lightsteelblue lightyellow lime limegreen linen magenta maroon mediumaquamarine mediumblue mediumorchid mediumpurple mediumseagreen mediumslateblue mediumspringgreen mediumturquoise mediumvioletred midnightblue mintcream mistyrose moccasin navajowhite navy oldlace olive olivedrab orange orangered orchid palegoldenrod palegreen paleturquoise palevioletred papayawhip peachpuff peru pink plum powderblue purple rebeccapurple red rosybrown royalblue saddlebrown salmon sandybrown seagreen seashell sienna silver skyblue slateblue slategray slategrey snow springgreen steelblue tan teal thistle tomato turquoise violet wheat white whitesmoke yellow yellowgreen transparent currentcolor inherit initial unset revert accentcolor accentcolortext activetext buttonborder buttonface buttontext canvas canvastext field fieldtext graytext highlight highlighttext linktext mark marktext selecteditem selecteditemtext visitedtext activeborder activecaption appworkspace background buttonhighlight buttonshadow captiontext inactiveborder inactivecaption inactivecaptiontext infobackground infotext menu menutext scrollbar threeddarkshadow threedface threedhighlight threedlightshadow threedshadow window windowframe windowtext",Et,oa=/^[+-]?(?:\d+(?:\.\d+)?|\.\d+)(?:e[+-]?\d+)?(%|deg|grad|rad|turn)?$/i;function Vt(e){if(e.toLowerCase()==="none")return 4;let a=oa.exec(e);return a?a[1]===void 0?1:a[1]==="%"?2:3:0}function ca(e,a){let i=Vt(e);return i===1||i===2||a&&i===4}function da(e){let a=e.startsWith("hsl"),i=e.indexOf("("),l=e.slice(0,i);if(l!=="rgb"&&l!=="rgba"&&l!=="hsl"&&l!=="hsla"||e.length>120||e.indexOf(")")!==e.length-1)return!1;let h=e.slice(i+1,-1).trim(),o,b,r=h.includes(",");if(r)o=h.split(",").map(u=>u.trim()),o.length===4&&(b=o.pop());else{let u=h.split("/");if(u.length>2)return!1;o=u[0].trim().split(/\s+/),u.length===2&&(b=u[1].trim())}if(o.length!==3||b!==void 0&&!ca(b,!r))return!1;let T=o.map(Vt);if(r)return a?(T[0]===1||T[0]===3)&&T[1]===2&&T[2]===2:(T[0]===1||T[0]===2)&&T[1]===T[0]&&T[2]===T[0];for(let u=0;u<3;u++){let M=T[u];if(!(M===1||M===4||(a&&u===0?M===3:M===2)))return!1}return!0}function ha(e){return e.includes("(")?da(e):(Et??(Et=new Set(na.split(" "))),Et.has(e.toLowerCase()))}var pa=/^:?wrap:/,ua=/^:?nowrap:/,fa=/^:?(?:no)?wrap:/,ga=/^(?:rgba?|hsla?)\s*\(/,Ct=/[\r\u2028\u2029]/,xa=/^\w*/;function Ee(e){throw new Bt(e,"semantic",{type:"sequence"})}function Dt(e){let a=e.trim(),i=pa.test(a)?!0:ua.test(a)?!1:void 0;return{text:(i===void 0?a:a.replace(fa,"")).trim(),wrap:i}}function $a(e){let a=ga.exec(e);if(a){let l=e.lastIndexOf(")");if(l>=a[0].length)return Ct.test(e.slice(a[0].length))?void 0:[e.slice(0,l+1),e.slice(l+1)]}if(Ct.test(e))return;let i=xa.exec(e)[0];return[i,e.slice(i.length)]}function Rt(e){return typeof e=="string"?[...e].map((a,i)=>[String(i),a]):e!==null&&typeof e=="object"?Object.entries(e):[]}var ma=class{constructor(e={}){H(this,"type","sequence");H(this,"actors",new Map);H(this,"createdActors",new Map);H(this,"destroyedActors",new Map);H(this,"boxes",[]);H(this,"messages",[]);H(this,"notes",[]);H(this,"title");H(this,"accTitle");H(this,"accDescr");H(this,"prevActor");H(this,"currentBox");H(this,"lastCreated");H(this,"lastDestroyed");H(this,"wrapEnabled");H(this,"sequenceWrap");H(this,"active",new Map);this.wrapEnabled=e.wrap,this.sequenceWrap=e.sequenceWrap??!1}autoWrap(){return this.wrapEnabled??this.sequenceWrap}setAccTitle(e){this.accTitle=e.replace(/^\s+/g,"")}setAccDescription(e){this.accDescr=e.replace(/\n\s+/g,`
|
|
2
|
-
`)}setDiagramTitle(e){this.title=e}parseMessage(e){return Dt(e)}parseBoxData(e){let a=$a(e),i=a!=null&&a[0]?a[0].trim():"transparent",l=a!=null&&a[1]?a[1].trim():void 0;if(ha(i)||(i="transparent",l=e.trim()),l===void 0)return{text:void 0,color:i,wrap:void 0};let{text:h,wrap:o}=Dt(l);return{text:h||void 0,color:i,wrap:o}}addBox(e){this.currentBox={name:e.text,wrap:e.wrap??this.autoWrap(),fill:e.color,actorKeys:[]},this.boxes.push(this.currentBox)}addActor(e,a,i,l,h){let o=this.currentBox,b;if(h!==void 0){let M;try{M=Jt(h.includes(`
|
|
3
|
-
`)?h+`
|
|
4
|
-
`:`{
|
|
5
|
-
`+h+`
|
|
6
|
-
}`)}catch(q){throw new Bt(`Config of participant "${e}" is not valid YAML. ${q.message}`,"syntax",{type:"sequence"})}M!==null&&typeof M=="object"&&!Array.isArray(M)&&(b=M)}let r=b&&Object.prototype.hasOwnProperty.call(b,"type")?b.type:void 0,T=b&&Object.prototype.hasOwnProperty.call(b,"alias")?b.alias:void 0;r!=null&&(l=String(r)),T&&(!i||i.text===a)&&(i={text:String(T),wrap:i==null?void 0:i.wrap,type:l});let u=this.actors.get(e);if(!(u&&(this.currentBox&&u.box&&this.currentBox!==u.box&&Ee(`A same participant should only be defined in one Box: ${u.name} can't be in '${u.box.name}' and in '${this.currentBox.name}' at the same time.`),o=u.box?u.box:this.currentBox,u.box=o,a===u.name&&i==null))){if(((i==null?void 0:i.text)==null||l==null)&&(i={text:a,type:l}),this.actors.set(e,{box:o,name:a,description:i.text,wrap:i.wrap??this.autoWrap(),prevActor:this.prevActor,links:new Map,properties:new Map,type:l??"participant"}),this.prevActor){let M=this.actors.get(this.prevActor);M&&(M.nextActor=e)}this.currentBox&&this.currentBox.actorKeys.push(e),this.prevActor=e}}addMessage(e,a,i,l){this.messages.push({id:String(this.messages.length),from:e,to:a,message:i.text,wrap:i.wrap??this.autoWrap(),answer:l})}addSignal(e,a,i,l,h=!1,o){if(l===18){let b=e?this.active.get(e)??0:0;b<1&&Ee(`Trying to inactivate an inactive participant (${e})`),this.active.set(e,b-1)}else l===17&&e&&this.active.set(e,(this.active.get(e)??0)+1);return this.messages.push({id:String(this.messages.length),from:e,to:a,message:(i==null?void 0:i.text)??"",wrap:(i==null?void 0:i.wrap)??this.autoWrap(),type:l,activate:h,centralConnection:o??0}),!0}addNote(e,a,i){let l=i.wrap??this.autoWrap(),h={actor:e,placement:a,message:i.text,wrap:l},o=typeof e=="string"?[e,e]:e;this.notes.push(h),this.messages.push({id:String(this.messages.length),from:o[0],to:o[1],message:i.text,wrap:l,type:2,placement:a})}addLinks(e,a){let i=this.actors.get(e);if(i)try{let l=JSON.parse(a.text);for(let[h,o]of Rt(l))i.links.set(h,o)}catch{return}}addALink(e,a){let i=this.actors.get(e);if(!i)return;let l=a.text.indexOf("@");i.links.set(a.text.slice(0,l-1).trim(),a.text.slice(l+1).trim())}addProperties(e,a){let i=this.actors.get(e);if(i)try{let l=JSON.parse(a.text);for(let[h,o]of Rt(l))i.properties.set(h,o)}catch{return}}addDetails(e,a){let i=this.actors.get(e);i&&(i.details=a.text)}apply(e){let a=[],i=[],l=e;for(;;){l!==void 0&&(Array.isArray(l)?(a.push(l),i.push(0)):typeof l!="string"&&this.applyOne(l));let h=a.length-1;if(h<0)return;let o=a[h];i[h]<o.length?l=o[i[h]++]:(a.pop(),i.pop(),l=void 0)}}applyOne(e){let a=e.actor;switch(e.type){case"sequenceIndex":this.messages.push({id:String(this.messages.length),from:void 0,to:void 0,message:{start:e.sequenceIndex,step:e.sequenceIndexStep,visible:e.sequenceVisible===!0},wrap:!1,type:e.signalType});break;case"addParticipant":this.addActor(a,a,e.description,e.draw,e.config);break;case"createParticipant":this.actors.has(a)&&Ee("It is not possible to have actors with the same id, even if one is destroyed before the next is created. Use 'AS' aliases to simulate the behavior"),this.lastCreated=a,this.addActor(a,a,e.description,e.draw,e.config),this.createdActors.set(a,this.messages.length);break;case"destroyParticipant":this.lastDestroyed=a,this.destroyedActors.set(a,this.messages.length);break;case"activeStart":case"activeEnd":case"centralConnection":case"centralConnectionReverse":this.addSignal(a,void 0,void 0,e.signalType);break;case"addNote":this.addNote(e.actor,e.placement,e.text);break;case"addLinks":this.addLinks(a,e.text);break;case"addALink":this.addALink(a,e.text);break;case"addProperties":this.addProperties(a,e.text);break;case"addDetails":this.addDetails(a,e.text);break;case"addMessage":this.lastCreated?(e.to!==this.lastCreated&&Ee(`The created participant ${this.lastCreated} does not have an associated creating message after its declaration. Please check the sequence diagram.`),this.lastCreated=void 0):this.lastDestroyed&&(e.to!==this.lastDestroyed&&e.from!==this.lastDestroyed&&Ee(`The destroyed participant ${this.lastDestroyed} does not have an associated destroying message after its declaration. Please check the sequence diagram.`),this.lastDestroyed=void 0),this.addSignal(e.from,e.to,e.msg,e.signalType,e.activate,e.centralConnection);break;case"boxStart":this.addBox(e.boxData);break;case"boxEnd":this.currentBox=void 0;break;case"loopStart":this.addSignal(void 0,void 0,e.loopText,e.signalType);break;case"rectStart":this.addSignal(void 0,void 0,e.color,e.signalType);break;case"optStart":this.addSignal(void 0,void 0,e.optText,e.signalType);break;case"altStart":case"else":this.addSignal(void 0,void 0,e.altText,e.signalType);break;case"parStart":case"and":this.addSignal(void 0,void 0,e.parText,e.signalType);break;case"criticalStart":this.addSignal(void 0,void 0,e.criticalText,e.signalType);break;case"option":this.addSignal(void 0,void 0,e.optionText,e.signalType);break;case"breakStart":this.addSignal(void 0,void 0,e.breakText,e.signalType);break;case"loopEnd":case"rectEnd":case"optEnd":case"altEnd":case"parEnd":case"criticalEnd":case"breakEnd":this.addSignal(void 0,void 0,void 0,e.signalType);break}}},It=["$end","INVALID","INVALID","NEWLINE","SD","create","box","restOfLine","end","autonumber","NUM","off","activate","deactivate","title","legacy_title","acc_title","acc_title_value","acc_descr","acc_descr_value","acc_descr_multiline_value","loop","rect","opt","alt","par","par_over","critical","break","option","and","else","participant","AS","participant_actor","destroy","note","over","links","link","properties","details",",","left_of","right_of","+","-","()","ACTOR","CONFIG_START","CONFIG_CONTENT","CONFIG_END","TXT","SOLID_OPEN_ARROW","DOTTED_OPEN_ARROW","SOLID_ARROW","BIDIRECTIONAL_SOLID_ARROW","DOTTED_ARROW","BIDIRECTIONAL_DOTTED_ARROW","SOLID_CROSS","DOTTED_CROSS","SOLID_POINT","DOTTED_POINT","SOLID_ARROW_TOP","SOLID_ARROW_BOTTOM","STICK_ARROW_TOP","STICK_ARROW_BOTTOM","SOLID_ARROW_TOP_DOTTED","SOLID_ARROW_BOTTOM_DOTTED","STICK_ARROW_TOP_DOTTED","STICK_ARROW_BOTTOM_DOTTED","SOLID_ARROW_TOP_REVERSE","SOLID_ARROW_BOTTOM_REVERSE","STICK_ARROW_TOP_REVERSE","STICK_ARROW_BOTTOM_REVERSE","SOLID_ARROW_TOP_REVERSE_DOTTED","SOLID_ARROW_BOTTOM_REVERSE_DOTTED","STICK_ARROW_TOP_REVERSE_DOTTED","STICK_ARROW_BOTTOM_REVERSE_DOTTED"],Ht=new Uint8Array(128);for(let e=0;e<128;e++){let a=String.fromCharCode(e),i=e===32||e>=9&&e<=13,l=0;`/\\+()<->:
|
|
7
|
-
,;`.includes(a)||(l|=1),`+<->:
|
|
8
|
-
,;`.includes(a)||(l|=2),`<>:
|
|
9
|
-
,;@`.includes(a)||(l|=8|(i?0:4)),`#
|
|
10
|
-
;`.includes(a)||(l|=16),!`/\\+()<>:
|
|
11
|
-
,;-`.includes(a)&&!i&&(l|=32),Ht[e]=l}function ya(e){let a=e.length,i=[],l=[],h=[],o=[],b=0,r=0,T=-1,u=(s,x,y)=>{i.push(s),l.push(e.slice(x,y)),h.push(x),r=y},M=(s,x,y,_)=>{i.push(s),l.push(_),h.push(x),r=y},q=s=>{o.push(b),b=s},z=()=>{o.length>0&&(b=o.pop())},P=s=>(T<s&&(T=e.indexOf(`
|
|
12
|
-
`,s),T===-1&&(T=a)),T),Q=(s,x)=>{let y=e.charCodeAt(s);return y<128?(Ht[y]&x)!==0:x===4||x===32?!me(y):!0},X=(s,x)=>{for(let y=0;y<x.length;y++){let _=x.charCodeAt(y),C=e.charCodeAt(s+y);if(_>=97&&_<=122?(C|32)!==_:C!==_)return!1}return!0},ee=s=>X(r,s)&&!Qt(e.charCodeAt(r+s.length)),Z=s=>{for(;s<a&&me(e.charCodeAt(s));)s++;return s},L=()=>{let s=r;for(;s<a;){let x=e.charCodeAt(s);if(x===10||!me(x))break;s++}return s===r?!1:(r=s,!0)},m=s=>{for(;s<a&&Q(s,16);)s++;return s},w=(s,x,y)=>{u(s,r,r+x),q(y)},p=(s,x,y=-1)=>ee(s)?(u(x,r,r+s.length),y>=0&&q(y),!0):!1,R=(s,x)=>{if(!X(r,s))return!1;let y=r+s.length,_=e.charCodeAt(y);if(_!==32&&_!==9)return!1;for(;_===32||_===9;)_=e.charCodeAt(++y);return y>=a||!Q(y,32)?!1:(u(x,r,r+s.length),!0)},B=s=>{let x=e.charCodeAt(s),y=e.charCodeAt(s+1);if(x===45){if(y===120||y===88||y===41||y===92||y===47||y===45)return!0;let _=e.charCodeAt(s+2);return y===124&&(_===92||_===47)}return x===47||x===92?(y===124||y===x)&&e.charCodeAt(s+2)===45:x===40&&y===41},G=()=>{let s=r+1;for(;s<a&&Q(s,1);)s++;for(;s<a&&!B(s);){let x=s;for(;e.charCodeAt(x)===45;)x++;if(x>=a||!Q(x,2))break;for(x++;x<a&&Q(x,2);)x++;s=x}M(48,r,s,e.slice(r,s).trim())},E=()=>{let s=r;for(;Ke(e.charCodeAt(s));)s++;let x=s>r;if(e.charCodeAt(s)===46&&Ke(e.charCodeAt(s+1))){let _=Ke(e.charCodeAt(s+2))?s+3:s+2,C=e.charCodeAt(_);if(C===32||C===10)return u(10,r,_),!0}let y=e.charCodeAt(s);return x&&(y===32||y===10)?(u(10,r,s),!0):!1},N=()=>{let s=e.charCodeAt(r+1),x=e.charCodeAt(r+2);if(s===62)u(x===62?55:53,r,r+(x===62?3:2));else if(s===120||s===88)u(59,r,r+2);else if(s===41)u(61,r,r+2);else if(s===124&&x===92)u(63,r,r+3);else if(s===124&&x===47)u(64,r,r+3);else if(s===92&&x===92)u(65,r,r+3);else if(s===47&&x===47)u(66,r,r+3);else if(s===45){let y=e.charCodeAt(r+3);x===62?u(y===62?57:54,r,r+(y===62?4:3)):x===120||x===88?u(60,r,r+3):x===41?u(62,r,r+3):x===124&&y===92?u(67,r,r+4):x===124&&y===47?u(68,r,r+4):x===92&&y===92?u(69,r,r+4):x===47&&y===47?u(70,r,r+4):u(46,r,r+1)}else u(46,r,r+1)},oe=s=>{let x=e.charCodeAt(r+1);if(x!==124&&x!==s||e.charCodeAt(r+2)!==45)return!1;let y=e.charCodeAt(r+3)===45,_=s===47,C;return x===124?y?C=_?75:76:C=_?71:72:y?C=_?77:78:C=_?73:74,u(C,r,r+(y?4:3)),!0},ie=()=>{if(!X(r,"title"))return!1;let s=r+5,x=e.charCodeAt(s)===58;return x&&s++,!me(e.charCodeAt(s))||s+1>=a||!Q(s+1,16)?!1:(u(x?15:14,r,m(s+1)),!0)},ve=()=>{let s=X(r,"accdescr");if(!s&&!X(r,"acctitle"))return!1;let x=Z(r+8),y=e.charCodeAt(x);return y===58?(u(s?18:16,r,Z(x+1)),q(s?6:5),!0):s&&y===123?(r=Z(x+1),q(7),!0):!1},ge=s=>{switch(s|32){case 97:return p("actor",34,1)||p("alt",24,3)||p("and",30,3)||p("activate",12,1)||ve()||p("autonumber",9);case 98:return p("box",6,3)||p("break",28,3);case 99:return p("create",5)||p("critical",27,3);case 100:return p("destroy",35,1)||R("details",41)||p("deactivate",13,1);case 101:return p("else",31,3)||p("end",8);case 108:return p("loop",21,3)||p("left of",43)||R("links",38)||R("link",39);case 110:return p("note",36);case 111:return p("opt",23,3)||p("option",29,3)||p("over",37)||p("off",11);case 112:return p("participant",32,1)||p("par",25,3)||p("par_over",26,3)||R("properties",40);case 114:return p("rect",22,3)||p("right of",44);case 115:return p("sequencediagram",4);case 116:return ie();default:return!1}},A=()=>{let s=e.charCodeAt(r);if(s===10){let x=r+1;for(;e.charCodeAt(x)===10;)x++;u(3,r,x);return}if(me(s)){r=Z(r+1);return}if(s===35||s===37&&e.charCodeAt(r+1)!==123){r=P(r);return}if(s!==125&&e.charCodeAt(r+1)===37&&e.charCodeAt(r+2)===37){r=P(r);return}if(!((Ke(s)||s===46)&&E())&&!(s<128&&(s|32)>=97&&(s|32)<=122&&ge(s)))if(s===44)u(42,r,r+1);else if(s===59)u(3,r,r+1);else if(Q(r,1))G();else if(s===45)N();else if(s===60&&e.startsWith("<<->>",r))u(56,r,r+5);else if(s===60&&e.startsWith("<<-->>",r))u(58,r,r+6);else{if((s===47||s===92)&&oe(s))return;s===58?u(52,r,m(r+1)):s===43?u(45,r,r+1):s===40&&e.charCodeAt(r+1)===41?u(47,r,r+2):u(2,r,r+1)}},xe=()=>{if(L())return!0;let s=e.charCodeAt(r);if(s===35)return r=P(r),!0;if(s===64&&e.charCodeAt(r+1)===123)return w(49,2,4),!0;let x=r;for(;x<a&&Q(x,4);)x++;if(x>r){let _=Z(x);if(e.charCodeAt(_)===64&&e.charCodeAt(_+1)===123)return u(48,r,x),!0;if(_>x&&X(_,"as")&&me(e.charCodeAt(_+2)))return u(48,r,x),q(2),!0}let y=x;for(;y<a&&Q(y,8);)y++;if(y>r){let _=e.charCodeAt(y),C=y;if(y<a&&_!==10&&_!==59)for(C--;C>r&&e.charCodeAt(C)!==35;)C--;if(C>r)return M(48,r,C,e.slice(r,C).trim()),z(),!0}if(e.charCodeAt(y)===60)return u(2,r,P(r)),z(),!0;if(s!==10){let _=P(r);return M(2,r,_,e.slice(r,_).trim()),z(),!0}return!1},se=()=>{switch(b){case 0:return A(),!0;case 1:return xe();case 2:return L()?!0:e.charCodeAt(r)===35?(r=P(r),!0):(z(),z(),ee("as")?w(33,2,3):u(3,r,r),!0);case 3:return L()?!0:e.charCodeAt(r)===35?(r=P(r),!0):(u(7,r,m(r)),z(),!0);case 4:if(e.charCodeAt(r)!==125){let s=e.indexOf("}",r);return s===-1&&(s=a),u(50,r,s),!0}else{let s=Z(r+1),x=s>r+1&&X(s,"as")&&me(e.charCodeAt(s+2));return u(51,r,r+1),z(),x?q(2):z(),!0}case 5:case 6:return u(b===5?17:19,r,P(r)),z(),!0;default:if(e.charCodeAt(r)===125)r++,z();else{let s=e.indexOf("}",r);s===-1&&(s=a),u(20,r,s)}return!0}};for(;r<a;)if(!se())return i.push(1),l.push(""),h.push(r),{types:i,texts:l,starts:h};return b===0||b===2?u(3,a,a):b===3?u(7,a,a):b===5?u(17,a,a):b===6?u(19,a,a):b===7&&u(20,a,a),i.push(0),l.push(""),h.push(a),{types:i,texts:l,starts:h}}var I=new Int8Array(79).fill(-1);I[53]=5;I[54]=6;I[55]=0;I[57]=1;I[56]=33;I[58]=34;I[59]=3;I[60]=4;I[61]=24;I[62]=25;I[63]=41;I[64]=42;I[65]=43;I[66]=44;I[67]=51;I[68]=52;I[69]=53;I[70]=54;I[71]=45;I[72]=46;I[73]=47;I[74]=48;I[75]=55;I[76]=56;I[77]=57;I[78]=58;var ne=new Int8Array(79).fill(-1);ne[21]=2;ne[22]=3;ne[23]=4;ne[28]=5;ne[24]=6;ne[25]=7;ne[26]=7;ne[27]=8;ne[6]=1;var ba="'SOLID_OPEN_ARROW', 'DOTTED_OPEN_ARROW', 'SOLID_ARROW', 'DOTTED_ARROW', 'SOLID_CROSS', 'DOTTED_CROSS', 'SOLID_POINT', 'DOTTED_POINT'";function wa(e,a){let{types:i,texts:l,starts:h}=ya(e),o=0,b=m=>{let w=i[o];throw w===1?Ot("sequence",e,h[o],"",!0):Ot("sequence",e,h[o],`Expecting ${m}, got '${It[w]}'`)},r=m=>(i[o]!==m&&b(`'${It[m]}'`),l[o++]),T=()=>{let m=i[o];return m!==48&&m!==39&&b("'ACTOR'"),{type:"addParticipant",actor:l[o++]}},u=()=>a.parseMessage(r(52).trim().substring(1)),M=()=>{let m=i[o++];if(m===35){let p=T();return r(3),p.type="destroyParticipant",p}let w=T();if(i[o]===49&&i[o-1]===48){o++;let p=r(50);r(51),w.config=p.trim()}if(w.draw=m===32?"participant":"actor",i[o]===33){o++;let p=r(7);r(3),w.description=a.parseMessage(p)}else i[o]===3?o++:b("'AS', 'NEWLINE'");return w},q=m=>{let w=!1;i[o]===47&&(w=!0,o++);let p=I[i[o]];p<0&&b(ba),o++;let R=i[o];(R===47||!w&&(R===45||R===46))&&o++;let B=T(),G=u(),E={type:"addMessage",from:m.actor,to:B.actor,signalType:p,msg:G},N=[m,B,E];if(w){let oe=R===47;E.activate=oe,E.centralConnection=oe?61:60,oe&&N.push({type:"centralConnection",signalType:59,actor:B.actor}),N.push({type:"centralConnectionReverse",signalType:60,actor:m.actor})}else R===45?(E.activate=!0,N.push({type:"activeStart",signalType:17,actor:B.actor})):R===46?N.push({type:"activeEnd",signalType:18,actor:m.actor}):R===47&&(E.activate=!0,E.centralConnection=59,N.push({type:"centralConnection",signalType:59,actor:B.actor}));return N},z=m=>{o++;let w=T();return[w,{type:m,actor:w.actor,text:u()}]},P=()=>{o++;let m=i[o];if(m===37){o++;let R=T(),B=R,G=[R.actor,R.actor];if(i[o]===42){o++;let E=T();B=[R,E],G=[R.actor,E.actor]}return[B,{type:"addNote",placement:2,actor:G,text:u()}]}m!==43&&m!==44&&b("'over', 'left_of', 'right_of'"),o++;let w=T();return[w,{type:"addNote",placement:m===43?0:1,actor:w.actor,text:u()}]},Q=()=>{o++;let m={type:"sequenceIndex",sequenceVisible:!0,signalType:26};return i[o]===10?(m.sequenceIndex=Number(l[o++]),m.sequenceIndexStep=i[o]===10?Number(l[o++]):1):i[o]===11&&(o++,m.sequenceVisible=!1),i[o]!==3&&b("'NEWLINE', 'NUM', 'off'"),o++,m},X=(m,w,p,R)=>{let B=m.list,G=m.sections;if(G)for(let E=G.length-2;E>=0;E-=2){let N={type:w,signalType:R};N[p]=a.parseMessage(G[E+1]),B=G[E].concat([N,B])}return B},ee=m=>{let w=m.text,p=m.list;switch(m.kind){case 1:p[0]={type:"boxStart",boxData:a.parseBoxData(w)},p.push({type:"boxEnd",boxText:w});break;case 2:p[0]={type:"loopStart",loopText:a.parseMessage(w),signalType:10},p.push({type:"loopEnd",loopText:w,signalType:11});break;case 3:p[0]={type:"rectStart",color:a.parseMessage(w),signalType:22},p.push({type:"rectEnd",color:a.parseMessage(w),signalType:23});break;case 4:p[0]={type:"optStart",optText:a.parseMessage(w),signalType:15},p.push({type:"optEnd",optText:a.parseMessage(w),signalType:16});break;case 5:p[0]={type:"breakStart",breakText:a.parseMessage(w),signalType:30},p.push({type:"breakEnd",optText:a.parseMessage(w),signalType:31});break;case 6:p=X(m,"else","altText",13),p[0]={type:"altStart",altText:a.parseMessage(w),signalType:12},p.push({type:"altEnd",signalType:14});break;case 7:p=X(m,"and","parText",20),p[0]={type:"parStart",parText:a.parseMessage(w),signalType:m.startType},p.push({type:"parEnd",signalType:21});break;default:p=X(m,"option","optionText",28),p[0]={type:"criticalStart",criticalText:a.parseMessage(w),signalType:27},p.push({type:"criticalEnd",signalType:29})}return p};for(;i[o]===3;)o++;r(4);let Z=[],L={kind:0,text:"",startType:0,list:[],sections:void 0};for(;;){let m=i[o],w=L.list;if(L.kind===1){if(m===32||m===34||m===35)w.push(M());else if(m===3)w.push([]),o++;else if(m===8){o++;let p=ee(L);L=Z.pop(),L.list.push(p)}else b("'end', 'NEWLINE', 'participant', 'participant_actor', 'destroy'");continue}switch(m){case 3:case 2:w.push([]),o++;break;case 32:case 34:case 35:w.push(M());break;case 5:{o++;let p=i[o];p!==32&&p!==34&&p!==35&&b("'participant', 'participant_actor', 'destroy'");let R=M();R.type="createParticipant",w.push(R);break}case 48:w.push(q(T())),r(3);break;case 39:{let p=i[o+1];w.push(p===48||p===39?z("addALink"):q(T())),r(3);break}case 38:w.push(z("addLinks")),r(3);break;case 40:w.push(z("addProperties")),r(3);break;case 41:w.push(z("addDetails")),r(3);break;case 36:w.push(P()),r(3);break;case 9:w.push(Q());break;case 12:case 13:{o++;let p=T();r(3),w.push(m===12?{type:"activeStart",signalType:17,actor:p.actor}:{type:"activeEnd",signalType:18,actor:p.actor});break}case 14:case 15:{let p=l[o++].substring(m===14?6:7);a.setDiagramTitle(p),w.push(p);break}case 16:{o++;let p=r(17).trim();a.setAccTitle(p),w.push(p);break}case 18:{o++;let p=r(19).trim();a.setAccDescription(p),w.push(p);break}case 20:{let p=l[o++].trim();a.setAccDescription(p),w.push(p);break}case 21:case 22:case 23:case 28:case 24:case 25:case 26:case 27:case 6:{o++;let p=r(7);Z.push(L),L={kind:ne[m],text:p,startType:m===26?32:19,list:[[]],sections:void 0};break}case 31:case 30:case 29:{L.kind!==(m===31?6:m===30?7:8)&&b("'end'"),o++;let p=r(7);(L.sections??(L.sections=[])).push(w,p),L.list=[];break}case 8:{L.kind===0&&b("'NEWLINE', 'EOF'"),o++;let p=ee(L);L=Z.pop(),L.list.push(p);break}case 0:L.kind!==0&&b("'end'"),a.apply(w);return;default:b("'NEWLINE', 'ACTOR', 'participant', 'note', 'end'")}}}var va=16,ka=10,jt=34,Kt=4,we=5,be=6,he=' fill="var(--_s)" stroke="var(--_b)"',Oe=' fill="none" stroke="var(--_b)"',Ta=new Set(["participant","actor","boundary","control","entity","database","collections","queue"]),Aa=new Set(["actor","boundary","control","entity","database"]);function _a(e){return Ta.has(e)?e:"participant"}function gt(e){return Aa.has(e)}function Oa(e,a,i,l,h=va){if(gt(e))return{w:Math.max(40,a.width+8),h:jt+(a.height>0?Kt+a.height:0)};let o=e==="collections"?we:e==="queue"?2*be:0;return{w:Math.max(i,a.width+2*h)+o,h:Math.max(l,a.height+2*ka)+(e==="collections"?we:0)}}function Ma(e,a,i){let l=n(a),h=o=>n(i+o);switch(e){case"actor":return`<circle cx="${l}" cy="${h(7)}" r="6"${he}/><path d="M${l},${h(13)}V${h(24)}M${n(a-10)},${h(17)}H${n(a+10)}M${n(a-8)},${h(34)}L${l},${h(24)}L${n(a+8)},${h(34)}"${Oe}/>`;case"boundary":return`<path d="M${n(a-19)},${h(6)}V${h(28)}M${n(a-19)},${h(17)}H${n(a-8)}"${Oe}/><circle cx="${n(a+3)}" cy="${h(17)}" r="11"${he}/>`;case"control":return`<circle cx="${l}" cy="${h(21)}" r="11"${he}/><path d="M${n(a+5)},${h(5)}L${n(a-1)},${h(10)}L${n(a+5)},${h(15)}"${Oe}/>`;case"entity":return`<circle cx="${l}" cy="${h(15)}" r="11"${he}/><path d="M${n(a-11)},${h(30)}H${n(a+11)}"${Oe}/>`;default:{let o=n(a-14),b=n(a+14);return`<path d="M${o},${h(7)}V${h(27)}A14,5 0 0 0 ${b},${h(27)}V${h(7)}A14,5 0 0 0 ${o},${h(7)}Z"${he}/><path d="M${o},${h(7)}A14,5 0 0 0 ${b},${h(7)}"${Oe}/>`}}}function Sa(e,a,i,l,h,o){let{w:b,h:r}=l,T=' class="pele-label"';if(gt(e))return Ma(e,a,i)+de(h,a,i+jt+Kt+h.height/2,T,o);let u=a-b/2;if(e==="collections"){let M=b-we,q=r-we,z=`<rect x="${n(u+we)}" y="${n(i)}" width="${n(M)}" height="${n(q)}" rx="${fe}"${he}/>`,P=`<rect x="${n(u)}" y="${n(i+we)}" width="${n(M)}" height="${n(q)}" rx="${fe}"${he}/>`;return z+P+de(h,u+M/2,i+we+q/2,T,o)}if(e==="queue"){let M=n(u+be),q=n(u+b-be),z=n(i+r),P=n(r/2);return`<path d="M${M},${n(i)}H${q}A${be},${P} 0 0 1 ${q},${z}H${M}A${be},${P} 0 0 1 ${M},${n(i)}Z"${he}/><path d="M${q},${n(i)}A${be},${P} 0 0 0 ${q},${z}"${Oe}/>`+de(h,a-be/2,i+r/2,T,o)}return`<rect x="${n(u)}" y="${n(i)}" width="${n(b)}" height="${n(r)}" rx="${fe}"${he}/>`+de(h,a,i+r/2,T,o)}var xt=[];function j(e,a,i,l=1,h=!1){xt[e]={dotted:a,head:i,atStart:l!==1,atEnd:l!==0,bottom:h}}j(0,!1,1);j(1,!0,1);j(3,!1,2);j(4,!0,2);j(5,!1,0);j(6,!0,0);j(24,!1,3);j(25,!0,3);j(33,!1,1,2);j(34,!0,1,2);for(let e of[!1,!0]){let a=e?10:0;j(41+a,e,4),j(42+a,e,4,1,!0),j(43+a,e,5),j(44+a,e,5,1,!0),j(45+a,e,4,0),j(46+a,e,4,0,!0),j(47+a,e,5,0),j(48+a,e,5,0,!0)}var Ea=new Map([[10,"loop"],[12,"alt"],[15,"opt"],[19,"par"],[32,"par"],[27,"critical"],[30,"break"],[22,"rect"]]),Ca=12,ut=28,Lt=22,re=10,Wt=4,Da=14,Ae=10,Ra=16,Ia=20,La=10,Fe=20,Nt=240,Ye=16,_e=4,qt=' stroke-dasharray="4 4"';function ft(e){return e!==void 0&&xt[e]!==void 0}function Wa(e,a){let i=new Array(e.length),l=new Array(e.length),h=1,o=1,b=!1;for(let r=0;r<e.length;r++){let T=e[r];if(i[r]=NaN,l[r]=!1,T.type===26){let u=T.message;h=u.start||h,o=u.step||o,b=u.visible}else ft(T.type)&&(i[r]=h,l[r]=b||a,h=Math.round((h+o)*100)/100)}return{index:i,shown:l,visible:b}}var zt={lines:[],widths:[],width:0,height:0,size:0,lineHeight:0};function ye(e,a,i){let l=e[a];return typeof l=="number"&&l>=0&&l<=2e3?l:i}function Pt(e,a,i,l,h){let o=n(e-i*Ze);return h?`<path class="pele-marker" d="M${n(e)},${n(a)}L${o},${n(a+l*5)}"/>`:`<path class="pele-marker" d="M${n(e)},${n(a)}L${o},${n(a+l*4.5)}V${n(a)}Z" fill="var(--_l)" stroke="none"/>`}function Ue(e,a,i,l,h){switch(e){case 1:return Mt("arrow_point",a,i,l,0,"var(--_l)");case 2:return Mt("arrow_cross",a,i,l,0,"var(--_l)");case 3:return`<path class="pele-marker" d="M${n(a-l*Ze)},${n(i-4.5)}L${n(a)},${n(i)}L${n(a-l*Ze)},${n(i+4.5)}" stroke-linejoin="round"/>`;case 4:return Pt(a,i,l,h,!1);case 5:return Pt(a,i,l,h,!0);default:return""}}function Na(e){return e===1?Ze-1:e===2?4:0}function qa(e,a,i){return ta(i,l=>za(e,a,i,l))}function za(e,a,i,l){var Tt;let h=a.sequence??{},o=i.fontSize??16,b=Math.round(o*.875),r=Math.round(o*.75),T=i.measurer??Xt(i.fontFamily),u=i.icons,M=i.padding??8,q=h.mirrorActors!==!1,z=h.rightAngles===!0,P=Math.min(ye(h,"actorMargin",40),l?8:1/0),Q=Math.min(ye(h,"width",64),l?48:1/0),X=ye(h,"height",Math.round(o*1.5)+20),ee=Math.min(ye(h,"width",160),l?Math.max(32,((i.maxWidth??320)-2*M)/Math.max(1,e.actors.size)-P-24):1/0),Z=Math.max(4,14+ye(h,"messageMargin",35)-35),L=Math.min(ye(h,"noteMargin",10),l?6:1/0),m=Math.min(ye(h,"boxMargin",10),l?6:1/0),w=h.messageAlign==="left"?-1:h.messageAlign==="right"?1:0,p=l?6:Ca,R=l?8:Ra,B=l?12:Ia,G=l?6:La,E=e.messages,N=E.length,oe=Wa(E,h.showSequenceNumbers===!0),ie=(t,c,f,$=ee,g=0)=>{let d=ia(t,!1,T,c,l||f?$:1/0,g);return l?ea(d,T,Math.max(120,$)):d},ve;if(h.hideUnusedParticipants===!0){ve=new Set;for(let t of E)ve.add(t.from).add(t.to)}let ge=new Int32Array(N+1);ge[N]=-1;for(let t=N-1;t>=0;t--)ge[t]=ft(E[t].type)?t:ge[t+1];let A=[],xe=new Map;for(let[t,c]of e.actors){if(ve&&!ve.has(t))continue;let f=_a(c.type),$=ie(c.description,o,c.wrap),g=e.createdActors.get(t),d=e.destroyedActors.get(t),v=g===void 0?-1:ge[Math.min(g,N)];v>=0&&E[v].to!==t&&(v=-1);let k=d===void 0?-1:ge[Math.min(d,N)];k>=0&&E[k].to!==t&&E[k].from!==t&&(k=-1),xe.set(t,A.length),A.push({id:t,actor:c,kind:f,label:$,size:Oa(f,$,Q,X,l?8:void 0),x:0,createAt:v,destroyAt:k,top:0,lifeStart:0,lifeEnd:-1,activations:[]})}let se=A.length-1,s=new Map,x=(t,c,f)=>{if(t<0||c>se)return;let $=t*A.length+c;(s.get($)??0)<f&&s.set($,f)},y=t=>oe.shown[t]?Math.max(Ye,T.width(String(oe.index[t]),r,0)+8):0,_=new Array(N);for(let t=0;t<N;t++){let c=E[t],f=c.from===void 0?void 0:xe.get(c.from),$=c.to===void 0?void 0:xe.get(c.to);if(!(f===void 0||$===void 0||typeof c.message!="string")){if(c.type===2){let g=ie(c.message,b,c.wrap),d=g.width+2*L;c.placement===0?x(f-1,f,d+2*Ae+re):c.placement===1?x(f,f+1,d+2*Ae+re):f===$?(x(f-1,f,d/2+Ae),x(f,f+1,d/2+Ae)):x(Math.min(f,$),Math.max(f,$),d-2*R),_[t]={kind:2,a:f,b:$,label:g,x:0,w:d}}else if(ft(c.type)){let g=ie(c.message,b,c.wrap),d=y(t);if(f===$)x(f,f+1,ut+8+g.width+16+re+d),_[t]={kind:1,a:f,b:$,label:g,x:0,w:0};else{let v=A[$].createAt===t?A[$].size.w/2:0,k=c.centralConnection?4*_e:0;x(Math.min(f,$),Math.max(f,$),(l?Math.min(g.width,Math.max(16,ee-16)):g.width)+2*p+re+d+v+k),_[t]={kind:0,a:f,b:$,label:g,x:0,w:0}}}}}let C=[];for(let t=0;t<=se;t++){let c=A[t].actor.box,f=C[C.length-1];c&&f&&f.box===c&&f.last===t-1?f.last=t:c&&C.push({box:c,first:t,last:t,title:ie(c.name,b,c.wrap),grow:0})}let ke=new Array(Math.max(se,0));for(let t=0;t<se;t++){let c=A[t],f=A[t+1],$=c.actor.box!==f.actor.box?(c.actor.box?m:0)+(f.actor.box?m:0):0;ke[t]=Math.max(c.size.w/2+f.size.w/2+P+$,s.get(t*A.length+t+1)??0)}let Ge=[];for(let[t,c]of s){let f=Math.floor(t/A.length),$=t%A.length;$-f>1&&Ge.push([f,$,c])}Ge.sort((t,c)=>t[1]-t[0]-(c[1]-c[0])||t[0]-c[0]);for(let[t,c,f]of Ge){let $=0;for(let d=t;d<c;d++)$+=ke[d];if($>=f)continue;let g=(f-$)/(c-t);for(let d=t;d<c;d++)ke[d]+=g}let $t=()=>{for(let t=1;t<=se;t++)A[t].x=A[t-1].x+ke[t-1]};$t();for(let t of C){let c=A[t.last].x+A[t.last].size.w/2-(A[t.first].x-A[t.first].size.w/2);t.grow=Math.max(0,(t.title.width-c)/2),t.grow!==0&&(t.first>0&&(ke[t.first-1]+=t.grow),t.last<se&&(ke[t.last]+=t.grow))}$t();let Te=1/0,Me=-1/0,le=(t,c)=>{t<Te&&(Te=t),c>Me&&(Me=c)};for(let t of A)le(t.x-t.size.w/2,t.x+t.size.w/2);for(let t of C)le(A[t.first].x-A[t.first].size.w/2-m-t.grow,A[t.last].x+A[t.last].size.w/2+m+t.grow);let Je=new Array(N),pe=[],Ft=()=>se<0?[0,120]:[A[0].x-B,A[se].x+B];for(let t=0;t<N;t++){let c=E[t],f=c.type,$=f===void 0?void 0:Ea.get(f),g=_[t];if($!==void 0){let d={kind:$,x0:1/0,x1:-1/0,top:0,title:zt,tabW:0,fill:$==="rect"&&typeof c.message=="string"?c.message:"",dividers:[t],dividerY:[],dividerLabels:[]};Je[t]=d,pe.push(d)}else if(f===13||f===20||f===28)(Tt=pe[pe.length-1])==null||Tt.dividers.push(t);else if(f===11||f===14||f===16||f===21||f===29||f===31||f===23){let d=pe.pop();if(!d)continue;if(Je[t]=d,d.x0>d.x1&&([d.x0,d.x1]=Ft()),d.kind!=="rect"){d.tabW=T.width(d.kind,r,1)+14;for(let k=0;k<d.dividers.length;k++){let O=E[d.dividers[k]].message,W=k===0?d.tabW+8:0,F=d.x1-d.x0-16-W,K=O?ie(`[${O}]`,b,!0,Math.max(F,l?Math.min(Nt,ee):Nt)):zt;K.width>F&&(d.x1+=K.width-F),k===0?d.title=K:d.dividerLabels.push(K)}}le(d.x0,d.x1);let v=pe[pe.length-1];v&&(v.x0=Math.min(v.x0,d.x0-G),v.x1=Math.max(v.x1,d.x1+G))}else if(g){let d=A[g.a],v=A[g.b],k,O;if(g.kind===2){if(c.placement===0)g.x=d.x-Ae-g.w;else if(c.placement===1)g.x=d.x+Ae;else if(g.a===g.b)g.x=d.x-g.w/2;else{let F=Math.min(d.x,v.x)-R,K=Math.max(d.x,v.x)+R;(l||c.wrap)&&(g.label=ie(c.message,b,!0,Math.max(ee,K-F-2*L))),g.w=Math.max(K-F,g.label.width+2*L),g.x=(F+K-g.w)/2}k=g.x,O=g.x+g.w}else g.kind===1?(k=d.x,O=d.x+re+ut+8+g.label.width+y(t)):(k=Math.min(d.x,v.x),O=Math.max(d.x,v.x),(l||c.wrap)&&(g.label=ie(c.message,b,!0,Math.max(ee,O-k-2*p-re))),v.createAt===t&&(v.x>d.x?O+=v.size.w/2:k-=v.size.w/2));le(k,O);let W=pe[pe.length-1];W&&(W.x0=Math.min(W.x0,k-B),W.x1=Math.max(W.x1,O+B))}}let Ce=0;for(let t of C)Ce=Math.max(Ce,t.title.height);let Yt=C.length>0?m+(Ce>0?Ce+4:0):0,Qe=0;for(let t of A)t.createAt<0&&(Qe=Math.max(Qe,t.size.h));let Xe=Yt+Qe;for(let t of A)t.top=Xe-t.size.h,t.lifeStart=Xe;let De=A.map(t=>t.x),Ut=(t,c)=>{let f=0,$=De.length;for(;f<$;){let g=f+$>>1;De[g]<=t?f=g+1:$=g}return f<De.length&&De[f]<c},et=(t,c,f,$)=>{if(t.width===0)return"";let g=c-t.width/2;return(Ut(g,g+t.width)?`<rect x="${n(g-3)}" y="${n(f-t.height/2+2)}" width="${n(t.width+6)}" height="${n(t.height-4)}" rx="3" fill="var(--_bg)" stroke="none"/>`:"")+de(t,c,f,$,u)},tt=(t,c=0)=>t.activations.length+c>0?t.x-re/2:t.x,Se=(t,c=0)=>{let f=t.activations.length+c;return f>0?t.x+re/2+(f-1)*Wt:t.x},at=[],rt=[],it="",st="",Re="",lt="",Ie="",nt="",mt=(t,c)=>{let f=t.activations.pop(),$=Math.max(c,f+Da),g=t.x-re/2+t.activations.length*Wt;return le(g,g+re),rt.push(`<rect class="pele-activation" data-id="${ce(t.id)}" x="${n(g)}" y="${n(f)}" width="${re}" height="${n($-f)}" rx="2"/>`),$},yt=(t,c)=>{let f=t.x,$=c+16;return t.lifeEnd=$,nt+=`<path class="pele-destroy" data-id="${ce(t.id)}" d="M${n(f-6)},${n($-6)}L${n(f+6)},${n($+6)}M${n(f+6)},${n($-6)}L${n(f-6)},${n($+6)}"/>`,$+6},bt=(t,c,f)=>{let $=t.actor.properties.get("class");return`<g class="pele-node pele-actor pele-actor-${t.kind}${f?" pele-actor-footer":""}${typeof $=="string"?sa($):""}" data-id="${ce(t.id)}">`+Sa(t.kind,t.x,c,t.size,t.label,u)+"</g>"},ot=(t,c,f,$)=>`<g class="pele-sequence-number"><rect x="${n(c-$/2)}" y="${n(f-Ye/2)}" width="${n($)}" height="${Ye}" rx="${Ye/2}" fill="var(--_l)" stroke="none"/><text x="${n(c)}" y="${n(f+r*.35)}" text-anchor="middle" font-size="${r}" fill="var(--_bg)" stroke="none">${la(String(oe.index[t]))}</text></g>`,D=Xe+6,Le=[];for(let t=0;t<N;t++){let c=E[t],f=c.type,$=_[t],g=Je[t];if(f===17){let d=c.from===void 0?void 0:xe.get(c.from);d!==void 0&&A[d].activations.push(D)}else if(f===18){let d=c.from===void 0?void 0:xe.get(c.from);d!==void 0&&A[d].activations.length>0&&(D=Math.max(D,mt(A[d],D)))}else if(g&&g.dividers[0]===t)Le.push(g),g.kind==="rect"?(g.top=D+8,D=g.top):(g.top=D+12,D=g.top+Math.max(Fe,g.title.height+2));else if(g){Le.pop();let d=D+12,v=n(g.x0),k=n(g.x1-g.x0);if(g.kind==="rect"){let O=g.fill?St([`fill:${g.fill}`]).shape:"";at.push(`<rect class="pele-rect" x="${v}" y="${n(g.top)}" width="${k}" height="${n(d-g.top)}" rx="${fe}"${O?"":' fill-opacity="0.5"'}${O}/>`)}else{let O=`<rect x="${v}" y="${n(g.top)}" width="${k}" height="${n(d-g.top)}" rx="${fe}" fill="none"/>`;for(let W=0;W<g.dividerY.length;W++){let F=g.dividerY[W],K=g.dividerLabels[W];O+=`<path d="M${v},${n(F)}H${n(g.x1)}"${qt}/>`+et(K,g.x0+8+K.width/2,F+2+K.height/2,' class="pele-frame-label" fill="var(--_m)" stroke="none"')}O+=`<rect x="${v}" y="${n(g.top)}" width="${n(g.tabW)}" height="${Fe}" rx="${fe}" fill="var(--_s)"/><text class="pele-frame-kind" x="${n(g.x0+g.tabW/2)}" y="${n(g.top+Fe/2+r*.35)}" text-anchor="middle" font-size="${r}" font-weight="var(--_hw)" fill="var(--_m)" stroke="none">${g.kind}</text>`+et(g.title,g.x0+g.tabW+8+g.title.width/2,g.top+Math.max(Fe,g.title.height)/2,' class="pele-frame-label" fill="var(--_m)" stroke="none"'),it+=`<g class="pele-frame pele-frame-${g.kind}">${O}</g>`}D=d}else if(f===13||f===20||f===28){let d=Le[Le.length-1];if(d){let v=d.dividerLabels[d.dividerY.length];d.dividerY.push(D+12),D+=12+(v.height>0?v.height:0)}}else if($&&$.kind===2){let d=A[$.a],v=$.label.height+2*Math.max(4,L-4),k=D+10,O=$.x;c.placement===1?O+=Se(d)-d.x:c.placement===0&&(O+=tt(d)-d.x),le(O,O+$.w),lt+=`<g class="pele-note" data-id="i${ce(c.id)}"><rect x="${n(O)}" y="${n(k)}" width="${n($.w)}" height="${n(v)}" rx="${fe}"/>`+de($.label,O+$.w/2,k+v/2,' class="pele-label" stroke="none" fill="var(--_fg)"',u)+"</g>",D=k+v}else if($){let d=xt[f],v=A[$.a],k=A[$.b],O=$.label,W=y(t),F=0;for(let S=t+1;S<N;S++){let V=E[S].type;if(V===17)E[S].from===c.to&&F++;else if(V!==18&&V!==59&&V!==60)break}let K=d.bottom?1:-1,At=d.dotted?qt:"",qe=c.centralConnection,ze=qe===59||qe===61,Pe=qe===60||qe===61,Be=(S,V)=>`<circle class="pele-central" cx="${n(S)}" cy="${n(V)}" r="${_e}" fill="var(--_l)" stroke="none"/>`,Ve=d.atStart&&!d.atEnd,He=Na(d.head),te="",Y;if($.kind===1){let S=D+Z+Math.max(0,(O.height-Lt)/2),V=S+Lt,J=Pe?v.x+_e:Se(v),U=ze?v.x+_e:Se(v,F),ue=Math.max(J,U)+ut+W/2;Pe&&(te+=Be(v.x,S)),ze&&(te+=Be(v.x,V)),W>0&&(te+=ot(t,Ve?U:J,Ve?V:S,W),Ve?U+=W/2:J+=W/2);let ht=(d.atStart?Ue(d.head,J,S,-1,K):"")+(d.atEnd?Ue(d.head,U,V,-1,-K):""),je=n(J+(d.atStart?He:0)),ae=n(U+(d.atEnd?He:0));te=`<path d="${z?`M${je},${n(S)}H${n(ue)}V${n(V)}H${ae}`:`M${je},${n(S)}H${n(ue-6)}A6,6 0 0 1 ${n(ue)},${n(S+6)}V${n(V-6)}A6,6 0 0 1 ${n(ue-6)},${n(V)}H${ae}`}"${At}/>`+ht+te,le(v.x,ue+8+O.width),O.width>0&&(Re+=`<g class="pele-edge-label" data-id="i${ce(c.id)}">${de(O,ue+8+O.width/2,(S+V)/2,"",u)}</g>`),Y=V}else{let S=k.x>v.x?1:-1,V=k.createAt===t;Y=D+Z+Math.max(O.height>0?O.height+2:6,V?k.size.h/2-Z+6:0);let J=S>0?Se(v):tt(v),U=S>0?tt(k,F):Se(k,F);if(V&&(k.top=Y-k.size.h/2,k.lifeStart=k.top+k.size.h,U=k.x-S*(gt(k.kind)?18:k.size.w/2+1)),Pe&&(te+=Be(v.x,Y),J=v.x+S*_e),ze&&(te+=Be(k.x,Y),U=k.x-S*_e),W>0)if(Ve){let ae=ze?U-S*(W/2+2):U;te+=ot(t,ae,Y,W),U=ae-S*W/2}else{let ae=Pe?J+S*(W/2+2):J;te+=ot(t,ae,Y,W),J=ae+S*W/2}let ue=(d.atStart?Ue(d.head,J,Y,-S,K*S):"")+(d.atEnd?Ue(d.head,U,Y,S,K*S):""),ht=J+(d.atStart?S*He:0),je=U-(d.atEnd?S*He:0);if(te=`<path d="M${n(ht)},${n(Y)}H${n(je)}"${At}/>`+ue+te,O.width>0){let ae=Math.min(J,U),_t=Math.max(J,U),pt=w<0?ae+p+O.width/2:w>0?_t-p-O.width/2:(ae+_t)/2;le(pt-O.width/2,pt+O.width/2),Re+=`<g class="pele-edge-label" data-id="i${ce(c.id)}">${et(O,pt,Y-4-O.height/2,"")}</g>`}V&&(D=Y+k.size.h/2-6)}st+=`<g class="pele-edge pele-message" data-id="i${ce(c.id)}">${te}</g>`,D=Math.max(D,Y),v.destroyAt===t&&(D=Math.max(D,yt(v,Y))),k.destroyAt===t&&k!==v&&(D=Math.max(D,yt(k,Y)))}}D+=20;for(let t of A)for(;t.activations.length>0;)mt(t,D);let We=D;if(q){let t=0;for(let c of A)c.lifeEnd>=0||(t=Math.max(t,c.size.h),Ie+=bt(c,D,!0));We=D+t}let ct="";for(let t of A){Ie+=bt(t,t.top,!1);let c=t.lifeEnd>=0?t.lifeEnd:D;c>t.lifeStart&&(ct+=`<path class="pele-lifeline" data-id="${ce(t.id)}" d="M${n(t.x)},${n(t.lifeStart)}V${n(c)}"/>`)}let dt="";for(let t of C){let c=A[t.first].x-A[t.first].size.w/2-m-t.grow,f=A[t.last].x+A[t.last].size.w/2+m+t.grow,$=t.box.fill==="transparent"?"":St([`fill:${t.box.fill}`]).shape;dt+=`<g class="pele-cluster pele-box"${t.box.name?` data-id="${ce(t.box.name)}"`:""}><rect x="${n(c)}" y="0" width="${n(f-c)}" height="${n(We+m)}" rx="${fe}" fill="var(--_a)" stroke="var(--_b)"${$?"":' fill-opacity="0.5"'}${$}/>`+de(t.title,(c+f)/2,m/2+2+t.title.height/2,' class="pele-cluster-label" fill="var(--_m)"',u)+"</g>"}C.length>0&&(We+=m);let Ne=0,wt="",$e=ie(e.title,o,!1,l?aa(i):ee,1);if(Te>Me&&le(0,Math.max($e.width,40)),$e.width>0){let t=(Te+Me)/2;le(t-$e.width/2,t+$e.width/2),Ne=-$e.height-12,wt=de($e,t,Ne+$e.height/2,' class="pele-title" font-weight="var(--_tw)"',u)}let vt=Math.ceil(Me-Te+2*M),kt=Math.ceil(We-Ne+2*M);return{svg:ra("sequence",vt,kt,o,i,e,`<g transform="translate(${n(M-Te)},${n(M-Ne)})">`+wt+(dt?`<g class="pele-boxes" font-size="${b}">${dt}</g>`:"")+(at.length>0?`<g class="pele-rects" fill="var(--_a)">${at.reverse().join("")}</g>`:"")+(ct?`<g class="pele-lifelines" fill="none" stroke="var(--_b)">${ct}</g>`:"")+(rt.length>0?`<g class="pele-activations" fill="var(--_s)" stroke="var(--_b)">${rt.reverse().join("")}</g>`:"")+(it?`<g class="pele-frames" font-size="${b}" stroke="var(--_b)">${it}</g>`:"")+(st?`<g class="pele-edges" fill="none" stroke="var(--_l)" stroke-linecap="round">${st}</g>`:"")+(nt?`<g class="pele-destroys" fill="none" stroke="var(--_l)" stroke-width="1.5" stroke-linecap="round">${nt}</g>`:"")+(Re?`<g class="pele-edge-labels" font-size="${b}">${Re}</g>`:"")+(lt?`<g class="pele-notes" font-size="${b}" fill="var(--_a)" stroke="var(--_b)">${lt}</g>`:"")+(Ie?`<g class="pele-nodes">${Ie}</g>`:"")+"</g>"),width:vt,height:kt,links:[]}}var Ya={type:"sequence",parse(e,a,i){let l=a.sequence??{},h=new ma({wrap:typeof a.wrap=="boolean"?a.wrap:void 0,sequenceWrap:l.wrap===!0});return i&&h.setDiagramTitle(i),wa(e,h),h},render:qa};export{Ya as sequence};
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
var St=Object.defineProperty;var Tt=(t,l,a)=>l in t?St(t,l,{enumerable:!0,configurable:!0,writable:!0,value:a}):t[l]=a;var S=(t,l,a)=>Tt(t,typeof l!="symbol"?l+"":l,a);import{g as zt,s as ht,A as Ct}from"./WEVWDWVA-nohBBhTA.js";import{s as Lt,T as z}from"./UEXXS2NB-Dkz_tz-N.js";import{i as It,e as Mt,L as Ft,H as yt}from"./lazy-CKqR1774.js";import{c as Ht}from"./DKTLEL5E-B7ILCVTH.js";import{x as s,m as ft,y as tt,a as gt,f as C,$ as _t}from"./RZSVICHU-BiwjruZZ.js";import"./index-392ivruk.js";function dt(t){let l=new Set;for(let a of t)for(let h of a.people)l.add(h);return[...l].sort()}var Wt=class{constructor(){S(this,"type","journey");S(this,"title");S(this,"accTitle");S(this,"accDescr");S(this,"sections",[]);S(this,"tasks",[]);S(this,"currentSection","")}setDiagramTitle(t){this.title=t}setAccTitle(t){this.accTitle=t.replace(/^\s+/g,"")}setAccDescription(t){this.accDescr=t.replace(/\n\s+/g,`
|
|
2
|
-
`)}addSection(t){this.currentSection=t,this.sections.push(t)}addTask(t,l){let a=l.substring(1).split(":"),h=a.length===1?[]:a[1].split(",").map(n=>n.trim());this.tasks.push({task:t,score:Number(a[0]),people:h,section:this.currentSection})}getActors(){return dt(this.tasks)}},Ot=["$end","EOF","INVALID","NEWLINE","journey","title","acc_title","acc_title_value","acc_descr","acc_descr_value","acc_descr_multiline_value","section","taskName","taskData",":"];function et(t,l,a){let h=t.length,n=l;for(;n<h;n++){let r=t.charCodeAt(n);if(r===35||r===10||r===59||a&&r===58)break}return n}function Jt(t){let l=t.length,a=[],h=[],n=[],r={types:a,texts:h,starts:n},e=0,c=(m,i)=>{a.push(m),h.push(t.slice(e,i)),n.push(e),e=i};for(;e=zt(t,e),!(e>=l);){let m=t.charCodeAt(e),i=e+1;if(m===10){for(;t.charCodeAt(i)===10;)i++;c(3,i);continue}if(ht(t,e,"journey")&&!It(t.charCodeAt(e+7))){c(4,e+7);continue}if(ht(t,e,"title")&&Mt(t.charCodeAt(e+5))&&(i=et(t,e+6,!1),i>e+6)){c(5,i);continue}if(i=Ct(t,e,r,6),i!==e){e=i;continue}if(ht(t,e,"section")&&Mt(t.charCodeAt(e+7))&&(i=et(t,e+8,!0),i>e+8)){c(11,i);continue}m===58?(i=et(t,e+1,!1),c(i>e+1?13:14,i>e+1?i:e+1)):m===59?c(2,e+1):c(12,et(t,e+1,!0))}return(n.length===0||n[n.length-1]<l)&&c(1,l),c(0,l),r}var Pt="'EOF', 'SPACE', 'NEWLINE', 'title', 'acc_title', 'acc_descr', 'acc_descr_multiline_value', 'section', 'taskName'";function Vt(t,l){let{types:a,texts:h,starts:n}=Jt(t),r=(e,c)=>{let m=a[e]===0?"1":Ot[a[e]];throw Ft("journey",t,n[e],`Expecting ${c}, got '${m}'`)};a[0]!==4&&r(0,"'journey'");for(let e=1;;e++){let c=h[e];switch(a[e]){case 3:break;case 5:l.setDiagramTitle(c.substring(6));break;case 6:l.setAccTitle(h[++e].trim());break;case 8:l.setAccDescription(h[++e].trim());break;case 10:l.setAccDescription(c.trim());break;case 11:l.addSection(c.substring(8));break;case 12:a[++e]!==13&&r(e,"'taskData'"),l.addTask(c,h[e]);break;case 1:return;default:r(e,Pt)}}}var lt=10,T=8,Bt=124,Gt=200,at=12,kt=6,ot=24,nt=26,V=11,b=5,Ut=13,Rt=20,Yt='<circle cx="-3.6" cy="-2.8" r="1.3"/><circle cx="3.6" cy="-2.8" r="1.3"/>',qt={happy:"M-5,2A6,6 0 0 0 5,2",neutral:"M-4.5,4.5H4.5",sad:"M-5,6.5A6,6 0 0 1 5,6.5"};function bt(t,l,a){return`<g class="pele-face pele-face-${a}" transform="translate(${s(t)},${s(l)})"><circle r="${V}" fill="var(--_bg)" stroke="var(--_l)"/><g fill="var(--_l)">${Yt}</g><path d="${qt[a]}" fill="none" stroke="var(--_l)" stroke-linecap="round"/></g>`}function Kt(t,l,a){return Ht(a,h=>Qt(t,l,a,h))}function Qt(t,l,a,h){let n=a.fontSize??16,r=Math.round(n*.875),e=Math.round(n*.75),c=a.measurer??yt(a.fontFamily),m=a.padding??8;if(h)return Xt(t,a);let i=t.tasks,g=i.length,L=dt(i).filter(o=>o!==""),x=new Map;L.forEach((o,$)=>x.set(o,$));let k=Bt,j=i.map(o=>Lt(o.task,c,r,k)),I=0;for(let o of j)I=Math.max(I,o.width);I>k&&(k=Math.min(Math.ceil(I),Gt),j=i.map(o=>z(o.task,c,r,k)));let W=k+2*lt,u=W+at,w=g>0?g*u-at:0,v=Math.round(r*1.5),B=Math.max(w,240),E=[],N=0,_=0,y=0;for(let o of L){let $=z(o,c,r,B-2*b-6),A=2*b+6+$.width;y>0&&y+A>B&&(y=0,_+=4);let R=y>0?E[E.length-1].y:_,Y=Math.max($.height,v);E.push({name:o,label:$,x:y,y:R,h:Y}),y+=A,N=Math.max(N,y),_=Math.max(_,R+Y),y+=Rt}let F=g>0?ot+w:0,f=z(t.title,c,n,Math.max(F,320),1),G=f.height>0?f.height+16:0,st=Math.max(F,f.width,g>0?ot+N:0),O=m+(st-F)/2+ot,q=m+G,ut=[],J=0;for(let o=0;o<g;){let $=o+1;for(;$<g&&i[$].section===i[o].section;)$++;let A;i[o].section!==""&&(A=z(i[o].section,c,r,($-o)*u-at-2*lt,1),J=Math.max(J,Math.max(A.height,v)+2*kt)),ut.push({start:o,count:$-o,label:A}),o=$}let K=v;for(let o of j)K=Math.max(K,o.height);let wt=L.length>0?2*b+6:0,Q=K+wt+2*T,U=q+(J>0?J+kt:0),rt=U+Q+V+16,vt=rt+4*nt,At=O+w,P="",X=q;if(g>0){let o="",$="";for(let d=5;d>=1;d--){let M=rt+(5-d)*nt;o+=`M${s(O-6)},${s(M)}H${s(At)}`,$+=`<text x="${s(O-12)}" y="${s(M+e*.35)}">${d}</text>`}P+=`<path class="pele-grid" d="${o}" fill="none" stroke="var(--_a)"/><g class="pele-scale" font-size="${e}" text-anchor="end" fill="var(--_m)">${$}</g>`;let A="",R="",Y="",$t=[];i.forEach((d,M)=>{let D=O+M*u,p=D+W/2,H=d.score,Et=Number.isNaN(H)?3:Math.min(5,Math.max(1,H)),it=rt+(5-Et)*nt;A+=`${M===0?"M":"L"}${s(p)},${s(it)}`,R+=`M${s(p)},${s(U+Q)}V${s(it-V)}`,Y+=bt(p,it,H>3?"happy":H<3?"sad":"neutral");let xt="",ct=d.people.filter(Z=>Z!==""),Nt=Math.min(Ut,(W-2*lt-2*b)/Math.max(ct.length-1,1));ct.forEach((Z,Dt)=>{xt+=`<circle class="pele-actor" cx="${s(p+(Dt-(ct.length-1)/2)*Nt)}" cy="${s(U+Q-T-b)}" r="${b}" fill="${ft(x.get(Z)??0)}" stroke="var(--_s)"><title>${tt(Z)}</title></circle>`}),$t.push(`<g class="pele-node pele-task" data-id="${tt(d.task.trim())}"><rect x="${s(D)}" y="${s(U)}" width="${s(W)}" height="${s(Q)}" rx="${gt}" fill="var(--_s)" stroke="var(--_b)"/>`+C(j[M],p,U+T+K/2,` font-size="${r}"`)+xt+"</g>")}),P+=`<path class="pele-stems" d="${R}" fill="none" stroke="var(--_b)" stroke-dasharray="2 3"/>`+(g>1?`<path class="pele-edge" d="${A}" fill="none" stroke="var(--_l)" stroke-linejoin="round"/>`:"")+Y;for(let d of ut){let M=$t.slice(d.start,d.start+d.count).join("");if(!d.label){P+=M;continue}let D=O+d.start*u,p=d.count*u-at;P+=`<g class="pele-cluster pele-section" data-id="${tt(i[d.start].section.trim())}"><rect x="${s(D)}" y="${s(q)}" width="${s(p)}" height="${s(J)}" rx="${gt}" fill="var(--_a)"/>`+C(d.label,D+p/2,q+J/2,` font-size="${r}" font-weight="var(--_hw)"`)+M+"</g>"}if(X=vt+V,E.length>0){let d=O+(w-N)/2,M=X+16,D="";for(let p of E){let H=M+p.y+p.h/2;D+=`<g class="pele-legend-item" data-id="${tt(p.name)}"><circle cx="${s(d+p.x+b)}" cy="${s(H)}" r="${b}" fill="${ft(x.get(p.name)??0)}"/>`+C(p.label,d+p.x+2*b+6+p.label.width/2,H,"")+"</g>"}P+=`<g class="pele-legend" font-size="${r}">${D}</g>`,X=M+_}}let mt=Math.ceil(st+2*m),pt=Math.ceil(Math.max(X,m)+m),jt=C(f,m+st/2,m+f.height/2,' class="pele-title" font-weight="var(--_tw)"')+P;return{svg:_t("journey",mt,pt,n,a,t,jt),width:mt,height:pt,links:[]}}function Xt(t,l){let a=l.fontSize??16,h=Math.round(a*.875),n=l.measurer??yt(l.fontFamily),r=l.padding??8,e=Math.max(140,(l.maxWidth??320)-2*r),c=z(t.title,n,a,e,1),m=dt(t.tasks).filter(u=>u!==""),i=new Map(m.map((u,w)=>[u,w])),g=r+(c.height?c.height+16:0),L,x="",k=c.width;t.tasks.forEach((u,w)=>{if(u.section!==L){L=u.section;let f=z(L,n,a,e-16,1);f.height&&(x+=C(f,r+8+f.width/2,g+f.height/2,' class="pele-cluster-label" font-weight="var(--_hw)"'),k=Math.max(k,f.width+16),g+=f.height+8)}let v=z(u.task,n,h,e-72),B=u.people.filter(f=>f!=="").map(f=>({name:f,label:z(f,n,h,e-44)})),E=Math.max(v.height,42),N=2*T+E;for(let f of B)N+=Math.max(16,f.label.height)+4;let _=Math.max(e,v.width+72);x+=`<g class="pele-node pele-journey-step" data-id="${w}"><rect x="${s(r)}" y="${s(g)}" width="${s(_)}" height="${s(N)}" rx="${gt}" fill="var(--_s)" stroke="var(--_b)"/>`,x+=C(v,r+lt+v.width/2,g+T+v.height/2,' class="pele-label"');let y=r+_-28;x+=bt(y,g+T+V,u.score>3?"happy":u.score<3?"sad":"neutral"),Number.isNaN(u.score)||(x+=`<text class="pele-journey-score" x="${s(y)}" y="${s(g+T+2*V+h)}" font-size="${h}" text-anchor="middle">${s(Math.min(5,Math.max(1,u.score)))}</text>`);let F=g+T+E+4;for(let f of B){let G=Math.max(16,f.label.height);x+=`<circle class="pele-actor" cx="${s(r+16)}" cy="${s(F+G/2)}" r="${b}" fill="${ft(i.get(f.name))}"/>`+C(f.label,r+28+f.label.width/2,F+G/2,` class="pele-journey-actor" font-size="${h}"`),F+=G+4}x+="</g>",g+=N,w+1<t.tasks.length&&(x+=`<path class="pele-edge" d="M${s(r+_/2)},${s(g)}v16" fill="none" stroke="var(--_l)"/>`),g+=16,k=Math.max(k,_)});let j=Math.ceil(k+2*r),I=Math.ceil(Math.max(r+c.height,g-(t.tasks.length?16:0))+r),W=C(c,j/2,r+c.height/2,' class="pele-title" font-weight="var(--_tw)"')+x;return{svg:_t("journey",j,I,a,l,t,W),width:j,height:I,links:[]}}var ie={type:"journey",parse(t,l,a){let h=new Wt;return h.title=a,Vt(t,h),h},render:Kt};export{ie as journey};
|
|
@@ -1,3 +0,0 @@
|
|
|
1
|
-
import{i as x,L as _}from"./lazy-CKqR1774.js";import{y as P,x as T}from"./RZSVICHU-BiwjruZZ.js";var g=["1","INVALID","SPACELINE","NL","EOF","","SPACELIST","ICON","CLASS","NODE_DSTART","NODE_ID","NODE_DESCR","NODE_DEND","SHAPE_DATA"];function R(s,o){return s===5?o?"KANBAN":"MINDMAP":g[s]}var S={DEFAULT:0,ROUNDED_RECT:1,RECT:2,CIRCLE:3,CLOUD:4,BANG:5,HEXAGON:6};function M(s,o){switch(s){case"[":return S.RECT;case"(":return o===")"?S.ROUNDED_RECT:S.CLOUD;case"((":return S.CIRCLE;case")":return S.CLOUD;case"))":return S.BANG;case"{{":return S.HEXAGON;default:return S.DEFAULT}}var k=/\s+/y,h=/.+/y,m=/[^([\n){}]+/y,b=/[^([\n){}@]+/y,v=/[^)\](}]+/y,U=/[^`"]+/y,w=/[^}^"]+/y,B=/\n\s*/g;function p(s,o,a){for(let N=0;N<a.length;N++)if((s.charCodeAt(o+N)|32)!==a.charCodeAt(N))return!1;return!0}function F(s,o){let a=s.length,N=[],l=[],D=[],O=o?"kanban":"mindmap",L=o?b:m,e=0,t=0,d=-1,c=(r,i,f)=>{N.push(r),l.push(i),D.push(t),t=f},n=(r,i,f)=>{c(r,s.slice(t,i),i),e=f},A=(r,i)=>(r.lastIndex=i,r.test(s)?r.lastIndex:-1),u=r=>{let i=s.indexOf(r,t);return i===-1?a:i};for(;t<a;){let r=s.charCodeAt(t),i=s.charCodeAt(t+1),f;if(e===0){let C=r<=32||r>=160?Math.max(A(k,t),t):t;if(o&&r===64&&i===123)c(13,"",t+2),e=6;else if(s.charCodeAt(C)===37&&s.charCodeAt(C+1)===37)n(2,A(h,C),0);else if(C>t)d<t&&(d=u(`
|
|
2
|
-
`)),d>=C?n(6,C,0):(f=s.lastIndexOf(`
|
|
3
|
-
`,C-1))>t?n(2,f+1,0):n(3,t+1,0);else if(p(s,t,O)&&!x(s.charCodeAt(t+O.length)))n(5,t+O.length,0);else if(r===58&&i===58&&s.charCodeAt(t+2)===58)t+=3,e=1;else if(r===58&&i===58&&p(s,t+2,"icon")&&s.charCodeAt(t+6)===40)t+=7,e=2;else if(r===45&&i===41||r===40&&(i===45||i===40)||(r===41||r===123)&&i===r)n(9,t+2,3);else if(r===41||r===40||r===91)n(9,t+1,3);else if((f=A(L,t))!==-1)n(10,f,0);else break}else if(e===3)r===34?(e=i===96?5:4,t+=i===96?2:1):r===41||r===40?n(12,i===r||r===40&&i===45?t+2:t+1,0):r===93?n(12,t+1,0):r===125&&i===125||r===45&&i===41?n(12,t+2,0):n(11,A(r===125?h:v,t),3);else if(e===4)r===34?(t++,e=3):n(11,u('"'),4);else if(e===5)if(r===96&&i===34)t+=2,e=3;else if((f=A(U,t))!==-1)n(11,f,5);else break;else if(e===1)if((f=A(h,t))!==-1)n(8,f,0);else if(r===10)t++,e=0;else break;else if(e===2)r===41?(t++,e=0):n(7,u(")"),2);else if(e===6)if(r===34)n(13,t+1,7);else if(r===125)t++,e=0;else if((f=A(w,t))!==-1)n(13,f,6);else break;else r===34?n(13,t+1,6):(f=u('"'),c(13,s.slice(t,f).replace(B,"<br/>"),f))}return t<a?c(1,"",t):(e===0&&c(4,"",a),c(0,"",a)),{types:N,texts:l,starts:D}}var E="'SPACELINE', 'NL', 'EOF'",$=new Uint8Array(14);for(let s of[2,6,7,8,9,10])$[s]=1;function I(s){return s===2||s===3||s===4}function X(s,o,a){let N=a?"kanban":"mindmap",{types:l,texts:D,starts:O}=F(s,a),L=a?", 'SHAPE_DATA'":"",e=0,t=n=>{let A=l[e];throw A===1?_(N,s,O[e],"",!0):_(N,s,O[e],`Expecting ${n}, got '${R(A,a)}'`)},d=`'${R(5,a)}'`;if(l[e]===2){for(e++;l[e]===2||l[e]===3;)e++;l[e]!==5&&t(`'SPACELINE', 'NL', ${d}`)}else l[e]!==5&&t(`'SPACELINE', ${d}`);e++;let c="'SPACELINE', 'NL', 'SPACELIST', 'ICON', 'CLASS', 'NODE_DSTART', 'NODE_ID'";for(l[e]===3&&(e++,c="'SPACELINE', 'SPACELIST', 'ICON', 'CLASS', 'NODE_DSTART', 'NODE_ID'");;){let n=l[e],A=0,u=n===6;if(u&&(A=D[e++].length,n=l[e]),n===10||n===9){let r,i,f=0;if(n===10&&(r=D[e++]),l[e]===9){let C=D[e++];l[e]!==11&&t("'NODE_DESCR'"),i=D[e++],l[e]!==12&&t("'NODE_DEND'");let y=D[e++];!I(l[e])&&l[e]!==13&&t(E+L),f=o.getType(C,y)}else!I(l[e])&&l[e]!==13&&t(E+", 'NODE_DSTART'"+L),i=r;if(l[e]===13){let C=D[e++];for(;l[e]===13;)C+=D[e++];I(l[e])||t(E+L),o.addNode(A,r??i,i,f,C)}else o.addNode(A,r??i,i,f)}else if(n===7||n===8){let r=D[e++];I(l[e])||t(E),o.decorateNode(n===7?{icon:r}:{class:r})}else u?I(n)||t(E+", 'ICON', 'CLASS', 'NODE_DSTART', 'NODE_ID'"):n===2?I(l[++e])||t(E):t(c);for(e++;l[e]===3||l[e]===4;)e++;if(l[e]===0)return;$[l[e]]===0&&t(E+", 'SPACELIST', 'ICON', 'CLASS', 'NODE_DSTART', 'NODE_ID'")}}function j(s,o,a,N,l){return`<svg class="pele-icon" data-icon="${P(s)}" x="${T(o)}" y="${T(a)}" width="${T(N)}" height="${T(N)}" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round">${(l==null?void 0:l(s))??""}</svg>`}export{M as W,j as X,X as Y};
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
import{s as et}from"./5THPTBWS-D57irc_4.js";import{H as at}from"./KQOEJWJY-DKTXya68.js";import{c as rt,h as it}from"./DKTLEL5E-B7ILCVTH.js";import{x as lt,D as st,G as A,M as ot,$ as nt,v as ct,w as ht,V as ft,W as dt,O as pt,P as mt,j as bt,Y as $t,z as kt,U as xt,H as gt}from"./VMV7XPHP-6QkisQwm.js";import{_ as ut,a as Mt,x as k,f as L,b as wt,$ as vt}from"./RZSVICHU-BiwjruZZ.js";import{x as yt,H as Pt,$ as S}from"./lazy-CKqR1774.js";import"./index-392ivruk.js";var zt=1e4;function R(e,t,a,i,l){var h;let m=(h=e.packet)==null?void 0:h[t];return typeof m=="number"&&m>=i?Math.min(m,l):a}function N(e){return new yt(e,"semantic",{type:"packet"})}function Ht(e,t,a){let i=Math.floor(R(t,"bitsPerRow",32,1,4096)),l=[],m=-1,h=[],y=1;for(let x of e.blocks){let{start:s,end:b,bits:f}=x;if(s!==void 0&&b!==void 0&&b<s)throw N(`Packet block ${s} - ${b} is invalid. End must be greater than start.`);if(s??(s=m+1),s!==m+1)throw N(`Packet block ${s} - ${b??s} is not contiguous. It should start from ${m+1}.`);if(f===0)throw N(`Packet block ${s} is invalid. Cannot have a zero bit field.`);for(b??(b=s+(f??1)-1),f??(f=b-s+1),m=b;h.length<=i+1&&l.length<zt;){let w=y*i-1;if(b<=w){h.push({start:s,end:b,bits:f,label:x.label}),b===w&&(l.push(h),h=[],y++);break}h.push({start:s,end:w,bits:w-s,label:x.label}),l.push(h),h=[],y++,s=w+1,f=b-s}}return h.length>0&&l.push(h),{type:"packet",title:e.title||a,accTitle:e.accTitle?e.accTitle.replace(/^\s+/g,""):void 0,accDescr:e.accDescr?e.accDescr.replace(/\n\s+/g,`
|
|
2
|
-
`):void 0,bitsPerRow:i,rows:l}}var q=[{name:"packet-beta",pattern:"packet-beta"},gt("packet"),{name:"-",pattern:"-",longer:[A]},{name:"+",pattern:"+"},{name:":",pattern:":"},ot,nt,ct,{name:"INT",pattern:/0|[1-9][0-9]*(?!\.)/y},ht,ft,dt,A,pt,mt];function Rt(e){let t=new lt(st(e,q,"packet"),q,"packet"),a={$type:"Packet",blocks:[]},i=()=>{if(t.kind!==-1)for(t.kind!==10&&t.fail("a line break or the end of input");t.kind===10;)t.i++};for(;t.kind===10;)t.i++;for(t.accept(0)||t.expect(1);t.kind!==-1;)switch(t.kind){case 10:t.i++;break;case 5:a.accDescr=xt(t.take()),i();break;case 6:a.accTitle=kt(t.take()),i();break;case 7:a.title=$t(t.take()),i();break;case 8:case 3:{let l={$type:"PacketBlock",label:""};t.accept(3)?l.bits=Number(t.expect(8)):(l.start=Number(t.take()),t.accept(2)&&(l.end=Number(t.expect(8)))),t.expect(4),l.label=bt(t.expect(9)),a.blocks.push(l),i();break}default:t.fail("a field, a title, or a line break")}return a}function Tt(e,t,a){return rt(a,i=>_t(e,t,a,i))}function _t(e,t,a,i){var V;let l=a.fontSize??16,m=Math.round(l*.875),h=Math.round(l*.625),y=a.measurer??Pt(a.fontFamily),x=a.padding??8,s=t.packet??{},b=R(t,"rowHeight",32,1,400),f=R(t,"bitWidth",32,1,400),w=R(t,"paddingX",5,0,400),C=R(t,"paddingY",5,0,400),I=s.showBits!==!1,_=s.bitOrder==="descending",g=e.bitsPerRow,v=e.rows;if(i){let $=Math.max(1,Math.floor(((a.maxWidth??320)-2*x)/Math.min(f,18)));g=Math.min(g,Math.max(8,2**Math.floor(Math.log2($))));let r=e.rows[e.rows.length-1],o=((V=r==null?void 0:r[r.length-1])==null?void 0:V.end)??0;Math.ceil((o+1)/g)>1e4&&(g=e.bitsPerRow),f=Math.min(f,Math.max(18,((a.maxWidth??320)-2*x)/g));let u=p=>p.bits===p.end-p.start,c=[];for(let p of e.rows)for(let d of p){let n=c[c.length-1];n&&u(n)&&u(d)&&n.label===d.label&&d.start===n.end+1&&d.start%e.bitsPerRow===0?(n.end=d.end,n.bits=n.end-n.start):c.push({...d})}v=[];for(let p of c)for(let d=p.start;d<=p.end;){let n=Math.min(p.end,(Math.floor(d/g)+1)*g-1),M=Math.floor(d/g);(v[M]??(v[M]=[])).push({...p,start:d,end:n}),d=n+1}}let D=new Map;if(i)for(let $ of v)for(let r of $){let o=Math.max(1,(r.end-r.start+1)*f-Math.min(w,f-1)-6),u=at(S(r.label).trim(),y,m,o);D.set(r,u)}let O=I?h+4:0,Y=v.map($=>{let r=b;if(i)for(let o of $)r=Math.max(r,D.get(o).height+10);return r}),j=[],H=0;for(let $ of Y)j.push(H),H+=O+$+C;v.length&&(H-=C);let F=Math.min(w,f-1),G=v.length>0?g*f-F:0,P=ut(e.title,!1,y,l,i?it(a):4e3,1),J=P.height>0?P.height+(H>0?12:0):0,U=new Map,K=($,r)=>{let o=U.get($);return o||U.set($,o=new Map),o.has(r)||o.set(r,et(S($).trim(),r,m,Math.round(l*.5),y)),o.get(r)},Q=x+Math.max(0,(P.width-G)/2),W="",T="";v.forEach(($,r)=>{let o=x+j[r]+O,u=Y[r];for(let c of $){let p=c.end-c.start+1,d=c.start%g,n=Q+(_?g-d-p:d)*f,M=p*f-F,z=i?void 0:K(c.label,M-6);if(W+=`<g class="pele-node" data-id="${c.start}-${c.end}"><rect x="${k(n)}" y="${k(o)}" width="${k(M)}" height="${k(u)}" rx="${Mt}" fill="var(--_s)" stroke="var(--_b)"/>`+(i?L(D.get(c),n+M/2,o+u/2,""):z&&z.size<=u?`<text x="${k(n+M/2)}" y="${k(o+u/2+z.size*.35)}"${z.size===m?"":` font-size="${k(z.size)}"`}>${wt(z.text)}</text>`:"")+"</g>",!I)continue;let X=_?c.end:c.start,tt=_?c.start:c.end;p===1?T+=`<text x="${k(n+M/2)}" y="${k(o-4)}" text-anchor="middle">${X}</text>`:T+=`<text x="${k(n)}" y="${k(o-4)}">${X}</text><text x="${k(n+M)}" y="${k(o-4)}" text-anchor="end">${tt}</text>`}});let B=Math.ceil(Math.max(G,P.width)+2*x),E=Math.ceil(H+J+2*x),Z=(W?`<g class="pele-packet-fields" font-size="${m}" text-anchor="middle">${W}</g>`:"")+(T?`<g class="pele-packet-bits" font-size="${h}" fill="var(--_m)">${T}</g>`:"")+L(P,B/2,E-x-P.height/2,' class="pele-title" font-weight="var(--_tw)"');return{svg:vt("packet",B,E,l,a,e,Z),width:B,height:E,links:[]}}var Ot={type:"packet",parse:(e,t,a)=>Ht(Rt(e),t,a),render:Tt};export{Ot as packet};
|