@av-pi-studio/web-client 0.0.116 → 0.0.118
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/README.md +15 -12
- package/dist/web/assets/BinaryFallbackViewer-6oStgFbx.js +1 -0
- package/dist/web/assets/ChatPanel-BVw71R5q.js +11 -0
- package/dist/web/assets/CodeView-DBvTM0BW.js +1 -0
- package/dist/web/assets/{DiffView-D1TsZBGe.js → DiffView-Bp1YwIcs.js} +1 -1
- package/dist/web/assets/FilePanel-Bl5ytI3U.js +1 -0
- package/dist/web/assets/HtmlViewer-D52zbW1I.js +1 -0
- package/dist/web/assets/ImageViewer-DyQNZCKd.js +1 -0
- package/dist/web/assets/MarkdownFileViewer-BZJbZEGK.js +1 -0
- package/dist/web/assets/ModelProvidersPanel-DoQ6F0J7.js +1 -0
- package/dist/web/assets/MoleculeViewerPanel-CUgDBSd_.js +1 -0
- package/dist/web/assets/PdfViewer-BHiGul5n.js +1 -0
- package/dist/web/assets/SaveFileButton-469govDl.js +1 -0
- package/dist/web/assets/SettingsDialog-D2rCwciZ.js +8 -0
- package/dist/web/assets/SkillsPanel-Bwa_B9KI.js +1 -0
- package/dist/web/assets/SkillsPanel-Cs4iUzys.css +1 -0
- package/dist/web/assets/StatusBadge-eoBBn7zF.js +1 -0
- package/dist/web/assets/{Switch-1I6AMAC7.js → Switch-DvBJf8Rd.js} +1 -1
- package/dist/web/assets/TerminalPanel-B8j4fo6Z.js +1 -0
- package/dist/web/assets/TextViewer-DNjD6up3.js +1 -0
- package/dist/web/assets/VideoViewer-BeiZJGIs.js +1 -0
- package/dist/web/assets/ViewersPanel-DbKljM62.js +1 -0
- package/dist/web/assets/{abnfDiagram-N423BO3Z-DQx_Q_du.js → abnfDiagram-N423BO3Z-CpfpOF_O.js} +1 -1
- package/dist/web/assets/{arc-NwFlaU6N.js → arc-DBTSI6_N.js} +1 -1
- package/dist/web/assets/{architectureDiagram-T3A2C74G-CG7FCMjZ.js → architectureDiagram-T3A2C74G-BSevfMW_.js} +1 -1
- package/dist/web/assets/{blockDiagram-VBNYF7ZC-D8Dt2XvX.js → blockDiagram-VBNYF7ZC-mjH_gzpo.js} +1 -1
- package/dist/web/assets/{c4Diagram-5PPSVZJV-6WjaBIv7.js → c4Diagram-5PPSVZJV-CKvGPw0r.js} +1 -1
- package/dist/web/assets/channel-DewxN4Jo.js +1 -0
- package/dist/web/assets/{chunk-2GRJ4B5K-D17AHR0R.js → chunk-2GRJ4B5K-DX9yxpY8.js} +1 -1
- package/dist/web/assets/{chunk-2Q5K7J3B-C9IyfEM4.js → chunk-2Q5K7J3B-CLN7DvaK.js} +1 -1
- package/dist/web/assets/{chunk-5RXB4S5H-V5UWp0VD.js → chunk-5RXB4S5H-_JxweRkX.js} +1 -1
- package/dist/web/assets/{chunk-5VM5RSS4-XEeU6W1F.js → chunk-5VM5RSS4-3BAvSy1_.js} +1 -1
- package/dist/web/assets/{chunk-6Q2QTUOP-C99sGYcg.js → chunk-6Q2QTUOP-DQLD88Lm.js} +1 -1
- package/dist/web/assets/{chunk-GF5L2VYU-DOVkSmJv.js → chunk-GF5L2VYU-D-1fx8P7.js} +1 -1
- package/dist/web/assets/{chunk-JWPE2WC7-DHn7mt7E.js → chunk-JWPE2WC7-C2fToatl.js} +1 -1
- package/dist/web/assets/{chunk-KBJHAD2P-DZ1cvEI3.js → chunk-KBJHAD2P-DHjSexvX.js} +1 -1
- package/dist/web/assets/{chunk-RYQCIY6F-BoE5aK7J.js → chunk-RYQCIY6F-DsVSVTjX.js} +1 -1
- package/dist/web/assets/{chunk-XXDRQBXY-va2-6IlH.js → chunk-XXDRQBXY-Csxxsn8g.js} +1 -1
- package/dist/web/assets/classDiagram-JCYQIIEL-YbS66O-E.js +1 -0
- package/dist/web/assets/classDiagram-v2-OCEON4UE-YbS66O-E.js +1 -0
- package/dist/web/assets/{cose-bilkent-JH36ORCC-Cr6PX_gX.js → cose-bilkent-JH36ORCC-DIVX_YPY.js} +1 -1
- package/dist/web/assets/{cynefin-VYW2F7L2-CqvughFy.js → cynefin-VYW2F7L2-fVS7Seyd.js} +1 -1
- package/dist/web/assets/{cynefinDiagram-MW4NZA55-Bj_6GLhZ.js → cynefinDiagram-MW4NZA55-krsTOg0x.js} +1 -1
- package/dist/web/assets/{dagre-VZM6K2ZE-CgOi1CPd.js → dagre-VZM6K2ZE-Byz_9-UR.js} +1 -1
- package/dist/web/assets/{diagram-7IWD3JNH-rQLPxuMo.js → diagram-7IWD3JNH-CAwWHICT.js} +1 -1
- package/dist/web/assets/{diagram-B4RE2ZJO-PJI4Buwu.js → diagram-B4RE2ZJO-zvv-V2co.js} +1 -1
- package/dist/web/assets/{diagram-LBJQPF4R-Cal1_yHP.js → diagram-LBJQPF4R-i5y2WTdZ.js} +1 -1
- package/dist/web/assets/{diagram-Q27KOJAE-BWo2xVP9.js → diagram-Q27KOJAE-B1inWemu.js} +1 -1
- package/dist/web/assets/{diagram-UB23O5K3-DV90Qcmx.js → diagram-UB23O5K3-Dh89SZOh.js} +1 -1
- package/dist/web/assets/{ebnfDiagram-BXEA7PRR-DKFZTIRm.js → ebnfDiagram-BXEA7PRR-su2ygatX.js} +1 -1
- package/dist/web/assets/{erDiagram-JOGREHBK-LX1ZeseQ.js → erDiagram-JOGREHBK-BbsgEzQn.js} +1 -1
- package/dist/web/assets/{flowDiagram-UKHOOZJN-Djz1ZNIJ.js → flowDiagram-UKHOOZJN-Chl_0-ag.js} +1 -1
- package/dist/web/assets/{ganttDiagram-PKOTCBZU-BffSzw5A.js → ganttDiagram-PKOTCBZU-CYMojHU0.js} +1 -1
- package/dist/web/assets/{gitGraphDiagram-DS77QQ5N-Dj4HeSPG.js → gitGraphDiagram-DS77QQ5N-BZQF2UJa.js} +1 -1
- package/dist/web/assets/{graph-bitvlgYx.js → graph-q4AqDxwU.js} +1 -1
- package/dist/web/assets/{href-resolution-CSqTI9Vm.js → href-resolution-A_PcAhnr.js} +1 -1
- package/dist/web/assets/index-Dg0mhDS9.css +1 -0
- package/dist/web/assets/index-DjRqFIN0.js +19 -0
- package/dist/web/assets/{infoDiagram-6WML65LV-DlWDf94X.js → infoDiagram-6WML65LV-L2kKwrdb.js} +1 -1
- package/dist/web/assets/{ishikawaDiagram-WSZJBQD7-CFJts585.js → ishikawaDiagram-WSZJBQD7-B-hdpT0j.js} +1 -1
- package/dist/web/assets/{journeyDiagram-NVQOT4AX-DOykXQ5K.js → journeyDiagram-NVQOT4AX-DtZbDU0g.js} +1 -1
- package/dist/web/assets/{kanban-definition-27J2QSJJ-D1TWwfVH.js → kanban-definition-27J2QSJJ-BNVi4euz.js} +1 -1
- package/dist/web/assets/{layout-CDBUU1vE.js → layout-ZLTTNfUo.js} +1 -1
- package/dist/web/assets/{linear-B_PoZzPq.js → linear-Dg9CPt0k.js} +1 -1
- package/dist/web/assets/markdown-lfaaW_Mn.js +5 -0
- package/dist/web/assets/{mermaid.core-IS9aUP88.js → mermaid.core-524tR-D2.js} +4 -4
- package/dist/web/assets/{mindmap-definition-FAOFIHXS-e6GML3xR.js → mindmap-definition-FAOFIHXS-CJKkZcYQ.js} +1 -1
- package/dist/web/assets/{ordinal-DW4V92iz.js → ordinal-B7gl1e82.js} +1 -1
- package/dist/web/assets/{pegDiagram-VL7TDLO6-l5AAajde.js → pegDiagram-VL7TDLO6-C29SbD0M.js} +1 -1
- package/dist/web/assets/{pieDiagram-7S7Q4E2Y-BJMl2q2D.js → pieDiagram-7S7Q4E2Y-BpeO9BuX.js} +1 -1
- package/dist/web/assets/{provider-auth-store-9hsJ07X1.js → provider-auth-store-CpmUGwuu.js} +1 -1
- package/dist/web/assets/{quadrantDiagram-CIZ2JOQS-DKC1ILMK.js → quadrantDiagram-CIZ2JOQS-yU4K00QE.js} +1 -1
- package/dist/web/assets/{railroadDiagram-AXF67PYL-wXEBz91m.js → railroadDiagram-AXF67PYL-DIkSup17.js} +1 -1
- package/dist/web/assets/{requirementDiagram-LRYGKXZP-8AXE33_8.js → requirementDiagram-LRYGKXZP-DB5tgpS1.js} +1 -1
- package/dist/web/assets/{sankeyDiagram-W5VNT64P-BEMi273m.js → sankeyDiagram-W5VNT64P-DYPa3r0S.js} +1 -1
- package/dist/web/assets/{sequenceDiagram-SI44F4Z6-D2uxwHar.js → sequenceDiagram-SI44F4Z6-C_rD0zxP.js} +1 -1
- package/dist/web/assets/{sizeCapture-X5ZJPWSS-B7Hjo6Av.js → sizeCapture-X5ZJPWSS-DzC-Nn78.js} +1 -1
- package/dist/web/assets/{stateDiagram-OKZ733FA-EapYZet8.js → stateDiagram-OKZ733FA-DQdSURcD.js} +1 -1
- package/dist/web/assets/stateDiagram-v2-UEYNNEHI-BCmrjJ-P.js +1 -0
- package/dist/web/assets/{swimlanes-SLNWSIFB-OULFMW43.js → swimlanes-SLNWSIFB-BA-Oww3o.js} +2 -2
- package/dist/web/assets/swimlanesDiagram-ULZ7WXOC-BtietnZ5.js +8 -0
- package/dist/web/assets/{timeline-definition-Z64GVDOM-HZ7n4Pcs.js → timeline-definition-Z64GVDOM-C7JXpk1W.js} +1 -1
- package/dist/web/assets/use-file-download-FoQrf961.js +1 -0
- package/dist/web/assets/{use-file-watch-CYQrRagj.js → use-file-watch-Th-A-3Ws.js} +1 -1
- package/dist/web/assets/{use-provider-auth-list-CPbr4xbh.js → use-provider-auth-list-D5pguVWm.js} +1 -1
- package/dist/web/assets/{vendor-dnd-CayJj8TC.js → vendor-dnd-vJGfGIIi.js} +1 -1
- package/dist/web/assets/{vendor-highlight-Ddi_n-Jh.js → vendor-highlight-DaCUEPaW.js} +1 -1
- package/dist/web/assets/{vendor-icons-Bh5CT32q.js → vendor-icons-CSCeICuX.js} +2 -2
- package/dist/web/assets/{vendor-markdown-DJUOT8ep.js → vendor-markdown-Bo-Xpsuy.js} +1 -1
- package/dist/web/assets/{vendor-molviewer-DeAF8d5d.js → vendor-molviewer-7FbONJs2.js} +1 -1
- package/dist/web/assets/vendor-overlays-DjMT65Ip.js +1 -0
- package/dist/web/assets/{vendor-pdfjs-BrYGnqfM.js → vendor-pdfjs-BSchhGel.js} +2 -2
- package/dist/web/assets/{vendor-query-i7fr__Xm.js → vendor-query-CDNPrdQ8.js} +1 -1
- package/dist/web/assets/{vendor-react-DQUAl2K8.js → vendor-react-Dka9ZH0B.js} +1 -1
- package/dist/web/assets/{vendor-DaF96HbP.js → vendor-z183l2lP.js} +6 -6
- package/dist/web/assets/{vennDiagram-T6HMQDX7-BIcLY6tu.js → vennDiagram-T6HMQDX7-C_y33Ta5.js} +1 -1
- package/dist/web/assets/{wardleyDiagram-T6FBY63Y-BrZ83jaD.js → wardleyDiagram-T6FBY63Y-gxOBkNAp.js} +1 -1
- package/dist/web/assets/{xychartDiagram-ELKLHX3M-C3Tsplob.js → xychartDiagram-ELKLHX3M-BEdGwPiU.js} +1 -1
- package/dist/web/index.html +9 -8
- package/package.json +5 -41
- package/dist/web/assets/BinaryFallbackViewer-CgqvcH7r.js +0 -1
- package/dist/web/assets/ChatPanel-DrY_su6H.js +0 -11
- package/dist/web/assets/CodeView-CLqXf_zq.js +0 -1
- package/dist/web/assets/FilePanel-D70tIhDP.js +0 -1
- package/dist/web/assets/HtmlViewer-DSjhzjwY.js +0 -1
- package/dist/web/assets/ImageViewer-5Up9iJJ7.js +0 -1
- package/dist/web/assets/MarkdownFileViewer-BtXDNRcG.js +0 -1
- package/dist/web/assets/ModelProvidersPanel-CEj669D0.js +0 -1
- package/dist/web/assets/MoleculeViewerPanel-BiSKuUKH.js +0 -1
- package/dist/web/assets/PdfViewer-FoRGVMMP.js +0 -1
- package/dist/web/assets/SettingsDialog-BduWeTtA.js +0 -8
- package/dist/web/assets/SkillsPanel-DFN65SoZ.js +0 -1
- package/dist/web/assets/SkillsPanel-DH-_EKrv.css +0 -1
- package/dist/web/assets/StatusBadge-BMKAPA9O.js +0 -1
- package/dist/web/assets/TerminalPanel-DN6tM7eR.js +0 -1
- package/dist/web/assets/TextViewer-Cu-49yJ_.js +0 -1
- package/dist/web/assets/VideoViewer-CD56-Rpo.js +0 -1
- package/dist/web/assets/ViewersPanel-CAoHz8Or.js +0 -1
- package/dist/web/assets/channel-BnCumRF3.js +0 -1
- package/dist/web/assets/classDiagram-JCYQIIEL-D2TYG8cH.js +0 -1
- package/dist/web/assets/classDiagram-v2-OCEON4UE-D2TYG8cH.js +0 -1
- package/dist/web/assets/index-CchwjcLZ.js +0 -19
- package/dist/web/assets/index-D0vOQcoX.css +0 -1
- package/dist/web/assets/markdown-2gm-29tf.js +0 -5
- package/dist/web/assets/stateDiagram-v2-UEYNNEHI-s953Nt6G.js +0 -1
- package/dist/web/assets/swimlanesDiagram-ULZ7WXOC-DYHKzS9R.js +0 -8
- package/dist/web/assets/use-file-download-8zPww5m-.js +0 -1
- package/dist/web/assets/vendor-overlays-3MkedLFU.js +0 -1
package/dist/web/assets/{vennDiagram-T6HMQDX7-BIcLY6tu.js → vennDiagram-T6HMQDX7-C_y33Ta5.js}
RENAMED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{aI as Wt,s as Kt,g as Ht,p as Yt,o as Xt,a as Zt,b as Jt,_ as S,z as St,F as Qt,d as rt,au as $t,aa as te,ab as ee,ac as ne,e as se,q as ie,B as re,D as oe}from"./mermaid.core-IS9aUP88.js";import"./vendor-DaF96HbP.js";import"./vendor-react-DQUAl2K8.js";const kt=(t,n)=>Wt(t,"a",-n),_t=1e-10;function st(t,n){const s=le(t),e=s.filter(l=>ae(l,t));let i=0,r=0;const o=[];if(e.length>1){const l=Et(e);for(let u=0;u<e.length;++u){const a=e[u];a.angle=Math.atan2(a.x-l.x,a.y-l.y)}e.sort((u,a)=>a.angle-u.angle);let h=e[e.length-1];for(let u=0;u<e.length;++u){const a=e[u];r+=(h.x+a.x)*(a.y-h.y);const p={x:(a.x+h.x)/2,y:(a.y+h.y)/2};let d=null;for(let m=0;m<a.parentIndex.length;++m)if(h.parentIndex.includes(a.parentIndex[m])){const y=t[a.parentIndex[m]],M=Math.atan2(a.x-y.x,a.y-y.y),E=Math.atan2(h.x-y.x,h.y-y.y);let T=E-M;T<0&&(T+=2*Math.PI);const w=E-T/2;let g=K(p,{x:y.x+y.radius*Math.sin(w),y:y.y+y.radius*Math.cos(w)});g>y.radius*2&&(g=y.radius*2),(d==null||d.width>g)&&(d={circle:y,width:g,p1:a,p2:h,large:g>y.radius,sweep:!0})}d!=null&&(o.push(d),i+=lt(d.circle.radius,d.width),h=a)}}else{let l=t[0];for(let u=1;u<t.length;++u)t[u].radius<l.radius&&(l=t[u]);let h=!1;for(let u=0;u<t.length;++u)if(K(t[u],l)>Math.abs(l.radius-t[u].radius)){h=!0;break}h?i=r=0:(i=l.radius*l.radius*Math.PI,o.push({circle:l,p1:{x:l.x,y:l.y+l.radius},p2:{x:l.x-_t,y:l.y+l.radius},width:l.radius*2,large:!0,sweep:!0}))}return r/=2,n&&(n.area=i+r,n.arcArea=i,n.polygonArea=r,n.arcs=o,n.innerPoints=e,n.intersectionPoints=s),i+r}function ae(t,n){return n.every(s=>K(t,s)<s.radius+_t)}function le(t){const n=[];for(let s=0;s<t.length;++s)for(let e=s+1;e<t.length;++e){const i=Tt(t[s],t[e]);for(const r of i)r.parentIndex=[s,e],n.push(r)}return n}function lt(t,n){return t*t*Math.acos(1-n/t)-(t-n)*Math.sqrt(n*(2*t-n))}function K(t,n){return Math.sqrt((t.x-n.x)*(t.x-n.x)+(t.y-n.y)*(t.y-n.y))}function xt(t,n,s){if(s>=t+n)return 0;if(s<=Math.abs(t-n))return Math.PI*Math.min(t,n)*Math.min(t,n);const e=t-(s*s-n*n+t*t)/(2*s),i=n-(s*s-t*t+n*n)/(2*s);return lt(t,e)+lt(n,i)}function Tt(t,n){const s=K(t,n),e=t.radius,i=n.radius;if(s>=e+i||s<=Math.abs(e-i))return[];const r=(e*e-i*i+s*s)/(2*s),o=Math.sqrt(e*e-r*r),l=t.x+r*(n.x-t.x)/s,h=t.y+r*(n.y-t.y)/s,u=-(n.y-t.y)*(o/s),a=-(n.x-t.x)*(o/s);return[{x:l+u,y:h-a},{x:l-u,y:h+a}]}function Et(t){const n={x:0,y:0};for(const s of t)n.x+=s.x,n.y+=s.y;return n.x/=t.length,n.y/=t.length,n}function ce(t,n,s,e){e=e||{};const i=e.maxIterations||100,r=e.tolerance||1e-10,o=t(n),l=t(s);let h=s-n;if(o*l>0)throw"Initial bisect points must have opposite signs";if(o===0)return n;if(l===0)return s;for(let u=0;u<i;++u){h/=2;const a=n+h,p=t(a);if(p*o>=0&&(n=a),Math.abs(h)<r||p===0)return a}return n+h}function ct(t){const n=new Array(t);for(let s=0;s<t;++s)n[s]=0;return n}function Mt(t,n){return ct(t).map(()=>ct(n))}function tt(t,n){let s=0;for(let e=0;e<t.length;++e)s+=t[e]*n[e];return s}function ut(t){return Math.sqrt(tt(t,t))}function ht(t,n,s){for(let e=0;e<n.length;++e)t[e]=n[e]*s}function Q(t,n,s,e,i){for(let r=0;r<t.length;++r)t[r]=n*s[r]+e*i[r]}function zt(t,n,s){s=s||{};const e=s.maxIterations||n.length*200,i=s.nonZeroDelta||1.05,r=s.zeroDelta||.001,o=s.minErrorDelta||1e-6,l=s.minErrorDelta||1e-5,h=s.rho!==void 0?s.rho:1,u=s.chi!==void 0?s.chi:2,a=s.psi!==void 0?s.psi:-.5,p=s.sigma!==void 0?s.sigma:.5;let d;const m=n.length,y=new Array(m+1);y[0]=n,y[0].fx=t(n),y[0].id=0;for(let v=0;v<m;++v){const c=n.slice();c[v]=c[v]?c[v]*i:r,y[v+1]=c,y[v+1].fx=t(c),y[v+1].id=v+1}function M(v){for(let c=0;c<v.length;c++)y[m][c]=v[c];y[m].fx=v.fx}const E=(v,c)=>v.fx-c.fx,T=n.slice(),w=n.slice(),g=n.slice(),b=n.slice();for(let v=0;v<e;++v){if(y.sort(E),s.history){const x=y.map(f=>{const O=f.slice();return O.fx=f.fx,O.id=f.id,O});x.sort((f,O)=>f.id-O.id),s.history.push({x:y[0].slice(),fx:y[0].fx,simplex:x})}d=0;for(let x=0;x<m;++x)d=Math.max(d,Math.abs(y[0][x]-y[1][x]));if(Math.abs(y[0].fx-y[m].fx)<o&&d<l)break;for(let x=0;x<m;++x){T[x]=0;for(let f=0;f<m;++f)T[x]+=y[f][x];T[x]/=m}const c=y[m];if(Q(w,1+h,T,-h,c),w.fx=t(w),w.fx<y[0].fx)Q(b,1+u,T,-u,c),b.fx=t(b),b.fx<w.fx?M(b):M(w);else if(w.fx>=y[m-1].fx){let x=!1;if(w.fx>c.fx?(Q(g,1+a,T,-a,c),g.fx=t(g),g.fx<c.fx?M(g):x=!0):(Q(g,1-a*h,T,a*h,c),g.fx=t(g),g.fx<w.fx?M(g):x=!0),x){if(p>=1)break;for(let f=1;f<y.length;++f)Q(y[f],1-p,y[0],p,y[f]),y[f].fx=t(y[f])}}else M(w)}return y.sort(E),{fx:y[0].fx,x:y[0]}}function ue(t,n,s,e,i,r,o){const l=s.fx,h=tt(s.fxprime,n);let u=l,a=l,p=h,d=0;i=i||1,r=r||1e-6,o=o||.1;function m(y,M,E){for(let T=0;T<16;++T)if(i=(y+M)/2,Q(e.x,1,s.x,i,n),u=e.fx=t(e.x,e.fxprime),p=tt(e.fxprime,n),u>l+r*i*h||u>=E)M=i;else{if(Math.abs(p)<=-o*h)return i;p*(M-y)>=0&&(M=y),y=i,E=u}return 0}for(let y=0;y<10;++y){if(Q(e.x,1,s.x,i,n),u=e.fx=t(e.x,e.fxprime),p=tt(e.fxprime,n),u>l+r*i*h||y&&u>=a)return m(d,i,a);if(Math.abs(p)<=-o*h)return i;if(p>=0)return m(i,d,u);a=u,d=i,i*=2}return i}function he(t,n,s){let e={x:n.slice(),fx:0,fxprime:n.slice()},i={x:n.slice(),fx:0,fxprime:n.slice()};const r=n.slice();let o,l,h=1,u;s=s||{},u=s.maxIterations||n.length*20,e.fx=t(e.x,e.fxprime),o=e.fxprime.slice(),ht(o,e.fxprime,-1);for(let a=0;a<u;++a){if(h=ue(t,o,e,i,h),s.history&&s.history.push({x:e.x.slice(),fx:e.fx,fxprime:e.fxprime.slice(),alpha:h}),!h)ht(o,e.fxprime,-1);else{Q(r,1,i.fxprime,-1,e.fxprime);const p=tt(e.fxprime,e.fxprime),d=Math.max(0,tt(r,i.fxprime)/p);Q(o,d,o,-1,i.fxprime),l=e,e=i,i=l}if(ut(e.fxprime)<=1e-5)break}return s.history&&s.history.push({x:e.x.slice(),fx:e.fx,fxprime:e.fxprime.slice(),alpha:h}),e}function At(t,n={}){n.maxIterations=n.maxIterations||500;const s=n.initialLayout||xe,e=n.lossFunction||et,i=fe(t,n),r=s(i,n),o=Object.keys(r),l=[];for(const a of o)l.push(r[a].x),l.push(r[a].y);const u=zt(a=>{const p={};for(let d=0;d<o.length;++d){const m=o[d];p[m]={x:a[2*d],y:a[2*d+1],radius:r[m].radius}}return e(p,i)},l,n).x;for(let a=0;a<o.length;++a){const p=o[a];r[p].x=u[2*a],r[p].y=u[2*a+1]}return r}const Rt=1e-10;function ft(t,n,s){return Math.min(t,n)*Math.min(t,n)*Math.PI<=s+Rt?Math.abs(t-n):ce(e=>xt(t,n,e)-s,0,t+n)}function fe(t,n={}){const s=n.distinct,e=t.map(l=>Object.assign({},l));function i(l){return l.join(";")}if(s){const l=new Map;for(const h of e)for(let u=0;u<h.sets.length;u++){const a=String(h.sets[u]);l.set(a,h.size+(l.get(a)||0));for(let p=u+1;p<h.sets.length;p++){const d=String(h.sets[p]),m=`${a};${d}`,y=`${d};${a}`;l.set(m,h.size+(l.get(m)||0)),l.set(y,h.size+(l.get(y)||0))}}for(const h of e)h.sets.length<3&&(h.size=l.get(i(h.sets)))}const r=[],o=new Set;for(const l of e)if(l.sets.length===1)r.push(l.sets[0]);else if(l.sets.length===2){const h=l.sets[0],u=l.sets[1];o.add(i(l.sets)),o.add(i([u,h]))}r.sort((l,h)=>l===h?0:l<h?-1:1);for(let l=0;l<r.length;++l){const h=r[l];for(let u=l+1;u<r.length;++u){const a=r[u];o.has(i([h,a]))||e.push({sets:[h,a],size:0})}}return e}function de(t,n,s){const e=Mt(n.length,n.length),i=Mt(n.length,n.length);return t.filter(r=>r.sets.length===2).forEach(r=>{const o=s[r.sets[0]],l=s[r.sets[1]],h=Math.sqrt(n[o].size/Math.PI),u=Math.sqrt(n[l].size/Math.PI),a=ft(h,u,r.size);e[o][l]=e[l][o]=a;let p=0;r.size+1e-10>=Math.min(n[o].size,n[l].size)?p=1:r.size<=1e-10&&(p=-1),i[o][l]=i[l][o]=p}),{distances:e,constraints:i}}function ge(t,n,s,e){for(let r=0;r<n.length;++r)n[r]=0;let i=0;for(let r=0;r<s.length;++r){const o=t[2*r],l=t[2*r+1];for(let h=r+1;h<s.length;++h){const u=t[2*h],a=t[2*h+1],p=s[r][h],d=e[r][h],m=(u-o)*(u-o)+(a-l)*(a-l),y=Math.sqrt(m),M=m-p*p;d>0&&y<=p||d<0&&y>=p||(i+=2*M*M,n[2*r]+=4*M*(o-u),n[2*r+1]+=4*M*(l-a),n[2*h]+=4*M*(u-o),n[2*h+1]+=4*M*(a-l))}}return i}function xe(t,n={}){let s=pe(t,n);const e=n.lossFunction||et;if(t.length>=8){const i=ye(t,n),r=e(i,t),o=e(s,t);r+1e-8<o&&(s=i)}return s}function ye(t,n={}){const s=n.restarts||10,e=[],i={};for(const d of t)d.sets.length===1&&(i[d.sets[0]]=e.length,e.push(d));let{distances:r,constraints:o}=de(t,e,i);const l=ut(r.map(ut))/r.length;r=r.map(d=>d.map(m=>m/l));const h=(d,m)=>ge(d,m,r,o);let u=null;for(let d=0;d<s;++d){const m=ct(r.length*2).map(Math.random),y=he(h,m,n);(!u||y.fx<u.fx)&&(u=y)}const a=u.x,p={};for(let d=0;d<e.length;++d){const m=e[d];p[m.sets[0]]={x:a[2*d]*l,y:a[2*d+1]*l,radius:Math.sqrt(m.size/Math.PI)}}if(n.history)for(const d of n.history)ht(d.x,l);return p}function pe(t,n){const s=n&&n.lossFunction?n.lossFunction:et,e={},i={};for(const p of t)if(p.sets.length===1){const d=p.sets[0];e[d]={x:1e10,y:1e10,rowid:e.length,size:p.size,radius:Math.sqrt(p.size/Math.PI)},i[d]=[]}t=t.filter(p=>p.sets.length===2);for(const p of t){let d=p.weight!=null?p.weight:1;const m=p.sets[0],y=p.sets[1];p.size+Rt>=Math.min(e[m].size,e[y].size)&&(d=0),i[m].push({set:y,size:p.size,weight:d}),i[y].push({set:m,size:p.size,weight:d})}const r=[];Object.keys(i).forEach(p=>{let d=0;for(let m=0;m<i[p].length;++m)d+=i[p][m].size*i[p][m].weight;r.push({set:p,size:d})});function o(p,d){return d.size-p.size}r.sort(o);const l={};function h(p){return p.set in l}function u(p,d){e[d].x=p.x,e[d].y=p.y,l[d]=!0}u({x:0,y:0},r[0].set);for(let p=1;p<r.length;++p){const d=r[p].set,m=i[d].filter(h),y=e[d];if(m.sort(o),m.length===0)throw"ERROR: missing pairwise overlap information";const M=[];for(var a=0;a<m.length;++a){const w=e[m[a].set],g=ft(y.radius,w.radius,m[a].size);M.push({x:w.x+g,y:w.y}),M.push({x:w.x-g,y:w.y}),M.push({y:w.y+g,x:w.x}),M.push({y:w.y-g,x:w.x});for(let b=a+1;b<m.length;++b){const v=e[m[b].set],c=ft(y.radius,v.radius,m[b].size),x=Tt({x:w.x,y:w.y,radius:g},{x:v.x,y:v.y,radius:c});M.push(...x)}}let E=1e50,T=M[0];for(const w of M){e[d].x=w.x,e[d].y=w.y;const g=s(e,t);g<E&&(E=g,T=w)}u(T,d)}return e}function et(t,n){let s=0;for(const e of n){if(e.sets.length===1)continue;let i;if(e.sets.length===2){const o=t[e.sets[0]],l=t[e.sets[1]];i=xt(o.radius,l.radius,K(o,l))}else i=st(e.sets.map(o=>t[o]));const r=e.weight!=null?e.weight:1;s+=r*(i-e.size)*(i-e.size)}return s}function Dt(t,n){let s=0;for(const e of n){if(e.sets.length===1)continue;let i;if(e.sets.length===2){const l=t[e.sets[0]],h=t[e.sets[1]];i=xt(l.radius,h.radius,K(l,h))}else i=st(e.sets.map(l=>t[l]));const r=e.weight!=null?e.weight:1,o=Math.log((i+1)/(e.size+1));s+=r*o*o}return s}function me(t,n,s){if(s==null?t.sort((i,r)=>r.radius-i.radius):t.sort(s),t.length>0){const i=t[0].x,r=t[0].y;for(const o of t)o.x-=i,o.y-=r}if(t.length===2&&K(t[0],t[1])<Math.abs(t[1].radius-t[0].radius)&&(t[1].x=t[0].x+t[0].radius-t[1].radius-1e-10,t[1].y=t[0].y),t.length>1){const i=Math.atan2(t[1].x,t[1].y)-n,r=Math.cos(i),o=Math.sin(i);for(const l of t){const h=l.x,u=l.y;l.x=r*h-o*u,l.y=o*h+r*u}}if(t.length>2){let i=Math.atan2(t[2].x,t[2].y)-n;for(;i<0;)i+=2*Math.PI;for(;i>2*Math.PI;)i-=2*Math.PI;if(i>Math.PI){const r=t[1].y/(1e-10+t[1].x);for(const o of t){var e=(o.x+r*o.y)/(1+r*r);o.x=2*e-o.x,o.y=2*e*r-o.y}}}}function be(t){t.forEach(i=>{i.parent=i});function n(i){return i.parent!==i&&(i.parent=n(i.parent)),i.parent}function s(i,r){const o=n(i),l=n(r);o.parent=l}for(let i=0;i<t.length;++i)for(let r=i+1;r<t.length;++r){const o=t[i].radius+t[r].radius;K(t[i],t[r])+1e-10<o&&s(t[r],t[i])}const e=new Map;for(let i=0;i<t.length;++i){const r=n(t[i]).parent.setid;e.has(r)||e.set(r,[]),e.get(r).push(t[i])}return t.forEach(i=>{delete i.parent}),Array.from(e.values())}function dt(t){const n=s=>{const e=t.reduce((r,o)=>Math.max(r,o[s]+o.radius),Number.NEGATIVE_INFINITY),i=t.reduce((r,o)=>Math.min(r,o[s]-o.radius),Number.POSITIVE_INFINITY);return{max:e,min:i}};return{xRange:n("x"),yRange:n("y")}}function Ct(t,n,s){n==null&&(n=Math.PI/2);let e=Ft(t).map(u=>Object.assign({},u));const i=be(e);for(const u of i){me(u,n,s);const a=dt(u);u.size=(a.xRange.max-a.xRange.min)*(a.yRange.max-a.yRange.min),u.bounds=a}i.sort((u,a)=>a.size-u.size),e=i[0];let r=e.bounds;const o=(r.xRange.max-r.xRange.min)/50;function l(u,a,p){if(!u)return;const d=u.bounds;let m,y;if(a)m=r.xRange.max-d.xRange.min+o;else{m=r.xRange.max-d.xRange.max;const M=(d.xRange.max-d.xRange.min)/2-(r.xRange.max-r.xRange.min)/2;M<0&&(m+=M)}if(p)y=r.yRange.max-d.yRange.min+o;else{y=r.yRange.max-d.yRange.max;const M=(d.yRange.max-d.yRange.min)/2-(r.yRange.max-r.yRange.min)/2;M<0&&(y+=M)}for(const M of u)M.x+=m,M.y+=y,e.push(M)}let h=1;for(;h<i.length;)l(i[h],!0,!1),l(i[h+1],!1,!0),l(i[h+2],!0,!0),h+=3,r=dt(e);return Ot(e)}function Nt(t,n,s,e,i){const r=Ft(t);n-=2*e,s-=2*e;const{xRange:o,yRange:l}=dt(r);if(o.max===o.min||l.max===l.min)return console.log("not scaling solution: zero size detected"),t;let h,u;if(i){const m=Math.sqrt(i/Math.PI)*2;h=n/m,u=s/m}else h=n/(o.max-o.min),u=s/(l.max-l.min);const a=Math.min(u,h),p=(n-(o.max-o.min)*a)/2,d=(s-(l.max-l.min)*a)/2;return Ot(r.map(m=>({radius:a*m.radius,x:e+p+(m.x-o.min)*a,y:e+d+(m.y-l.min)*a,setid:m.setid})))}function Ot(t){const n={};for(const s of t)n[s.setid]=s;return n}function Ft(t){return Object.keys(t).map(s=>Object.assign(t[s],{setid:s}))}function ve(t={}){let n=!1,s=600,e=350,i=15,r=1e3,o=Math.PI/2,l=!0,h=null,u=!0,a=!0,p=null,d=null,m=!1,y=null,M=t&&t.symmetricalTextCentre?t.symmetricalTextCentre:!1,E={},T=t&&t.colourScheme?t.colourScheme:t&&t.colorScheme?t.colorScheme:["#1f77b4","#ff7f0e","#2ca02c","#d62728","#9467bd","#8c564b","#e377c2","#7f7f7f","#bcbd22","#17becf"],w=0,g=function(x){if(x in E)return E[x];var f=E[x]=T[w];return w+=1,w>=T.length&&(w=0),f},b=At,v=et;function c(x){let f=x.datum();const O=new Set;f.forEach(I=>{I.size==0&&I.sets.length==1&&O.add(I.sets[0])}),f=f.filter(I=>!I.sets.some(C=>O.has(C)));let k={},R={};if(f.length>0){let I=b(f,{lossFunction:v,distinct:m});l&&(I=Ct(I,o,d)),k=Nt(I,s,e,i,h),R=Lt(k,f,M)}const Z={};f.forEach(I=>{I.label&&(Z[I.sets]=I.label)});function U(I){if(I.sets in Z)return Z[I.sets];if(I.sets.length==1)return""+I.sets[0]}x.selectAll("svg").data([k]).enter().append("svg");const B=x.select("svg");n?B.attr("viewBox",`0 0 ${s} ${e}`):B.attr("width",s).attr("height",e);const V={};let z=!1;B.selectAll(".venn-area path").each(function(I){const C=this.getAttribute("d");I.sets.length==1&&C&&!m&&(z=!0,V[I.sets[0]]=Me(C))});function q(I){return C=>{const G=I.sets.map(J=>{let W=V[J],X=k[J];return W||(W={x:s/2,y:e/2,radius:1}),X||(X={x:s/2,y:e/2,radius:1}),{x:W.x*(1-C)+X.x*C,y:W.y*(1-C)+X.y*C,radius:W.radius*(1-C)+X.radius*C}});return wt(G,y)}}const A=B.selectAll(".venn-area").data(f,I=>I.sets),F=A.enter().append("g").attr("class",I=>`venn-area venn-${I.sets.length==1?"circle":"intersection"}${I.colour||I.color?" venn-coloured":""}`).attr("data-venn-sets",I=>I.sets.join("_")),j=F.append("path"),L=F.append("text").attr("class","label").text(I=>U(I)).attr("text-anchor","middle").attr("dy",".35em").attr("x",s/2).attr("y",e/2);a&&(j.style("fill-opacity","0").filter(I=>I.sets.length==1).style("fill",I=>I.colour?I.colour:I.color?I.color:g(I.sets)).style("fill-opacity",".25"),L.style("fill",I=>I.colour||I.color?"#FFF":t.textFill?t.textFill:I.sets.length==1?g(I.sets):"#444"));function P(I){return typeof I.transition=="function"?I.transition("venn").duration(r):I}let _=x;z&&typeof _.transition=="function"?(_=P(x),_.selectAll("path").attrTween("d",q)):_.selectAll("path").attr("d",I=>wt(I.sets.map(C=>k[C])),y);const D=_.selectAll("text").filter(I=>I.sets in R).text(I=>U(I)).attr("x",I=>Math.floor(R[I.sets].x)).attr("y",I=>Math.floor(R[I.sets].y));u&&(z?"on"in D?D.on("end",ot(k,U)):D.each("end",ot(k,U)):D.each(ot(k,U)));const N=P(A.exit()).remove();typeof A.transition=="function"&&N.selectAll("path").attrTween("d",q);const Y=N.selectAll("text").attr("x",s/2).attr("y",e/2);return p!==null&&(L.style("font-size","0px"),D.style("font-size",p),Y.style("font-size","0px")),{circles:k,textCentres:R,nodes:A,enter:F,update:_,exit:N}}return c.wrap=function(x){return arguments.length?(u=x,c):u},c.useViewBox=function(){return n=!0,c},c.width=function(x){return arguments.length?(s=x,c):s},c.height=function(x){return arguments.length?(e=x,c):e},c.padding=function(x){return arguments.length?(i=x,c):i},c.distinct=function(x){return arguments.length?(m=x,c):m},c.colours=function(x){return arguments.length?(g=x,c):g},c.colors=function(x){return arguments.length?(g=x,c):g},c.fontSize=function(x){return arguments.length?(p=x,c):p},c.round=function(x){return arguments.length?(y=x,c):y},c.duration=function(x){return arguments.length?(r=x,c):r},c.layoutFunction=function(x){return arguments.length?(b=x,c):b},c.normalize=function(x){return arguments.length?(l=x,c):l},c.scaleToFit=function(x){return arguments.length?(h=x,c):h},c.styled=function(x){return arguments.length?(a=x,c):a},c.orientation=function(x){return arguments.length?(o=x,c):o},c.orientationOrder=function(x){return arguments.length?(d=x,c):d},c.lossFunction=function(x){return arguments.length?(v=x==="default"?et:x==="logRatio"?Dt:x,c):v},c}function ot(t,n){return function(s){const e=this,i=t[s.sets[0]].radius||50,r=n(s)||"",o=r.split(/\s+/).reverse(),h=(r.length+o.length)/3;let u=o.pop(),a=[u],p=0;const d=1.1;e.textContent=null;const m=[];function y(g){const b=e.ownerDocument.createElementNS(e.namespaceURI,"tspan");return b.textContent=g,m.push(b),e.append(b),b}let M=y(u);for(;u=o.pop(),!!u;){a.push(u);const g=a.join(" ");M.textContent=g,g.length>h&&M.getComputedTextLength()>i&&(a.pop(),M.textContent=a.join(" "),a=[u],M=y(u),p++)}const E=.35-p*d/2,T=e.getAttribute("x"),w=e.getAttribute("y");m.forEach((g,b)=>{g.setAttribute("x",T),g.setAttribute("y",w),g.setAttribute("dy",`${E+b*d}em`)})}}function at(t,n,s){let e=n[0].radius-K(n[0],t);for(let i=1;i<n.length;++i){const r=n[i].radius-K(n[i],t);r<=e&&(e=r)}for(let i=0;i<s.length;++i){const r=K(s[i],t)-s[i].radius;r<=e&&(e=r)}return e}function jt(t,n,s){const e=[];for(const a of t)e.push({x:a.x,y:a.y}),e.push({x:a.x+a.radius/2,y:a.y}),e.push({x:a.x-a.radius/2,y:a.y}),e.push({x:a.x,y:a.y+a.radius/2}),e.push({x:a.x,y:a.y-a.radius/2});let i=e[0],r=at(e[0],t,n);for(let a=1;a<e.length;++a){const p=at(e[a],t,n);p>=r&&(i=e[a],r=p)}const o=zt(a=>-1*at({x:a[0],y:a[1]},t,n),[i.x,i.y],{maxIterations:500,minErrorDelta:1e-10}).x,l={x:s?0:o[0],y:o[1]};let h=!0;for(const a of t)if(K(l,a)>a.radius){h=!1;break}for(const a of n)if(K(l,a)<a.radius){h=!1;break}if(h)return l;if(t.length==1)return{x:t[0].x,y:t[0].y};const u={};return st(t,u),u.arcs.length===0?{x:0,y:-1e3,disjoint:!0}:u.arcs.length==1?{x:u.arcs[0].circle.x,y:u.arcs[0].circle.y}:n.length?jt(t,[]):Et(u.arcs.map(a=>a.p1))}function Ie(t){const n={},s=Object.keys(t);for(const e of s)n[e]=[];for(let e=0;e<s.length;e++){const i=s[e],r=t[i];for(let o=e+1;o<s.length;++o){const l=s[o],h=t[l],u=K(r,h);u+h.radius<=r.radius+1e-10?n[l].push(i):u+r.radius<=h.radius+1e-10&&n[i].push(l)}}return n}function Lt(t,n,s){const e={},i=Ie(t);for(let r=0;r<n.length;++r){const o=n[r].sets,l={},h={};for(let d=0;d<o.length;++d){l[o[d]]=!0;const m=i[o[d]];for(let y=0;y<m.length;++y)h[m[y]]=!0}const u=[],a=[];for(let d in t)d in l?u.push(t[d]):d in h||a.push(t[d]);const p=jt(u,a,s);e[o]=p,p.disjoint&&n[r].size>0&&console.log("WARNING: area "+o+" not represented on screen")}return e}function ke(t,n,s){const e=[];return e.push(`
|
|
1
|
+
import{aI as Wt,s as Kt,g as Ht,p as Yt,o as Xt,a as Zt,b as Jt,_ as S,z as St,F as Qt,d as rt,au as $t,aa as te,ab as ee,ac as ne,e as se,q as ie,B as re,D as oe}from"./mermaid.core-524tR-D2.js";import"./vendor-z183l2lP.js";import"./vendor-react-Dka9ZH0B.js";const kt=(t,n)=>Wt(t,"a",-n),_t=1e-10;function st(t,n){const s=le(t),e=s.filter(l=>ae(l,t));let i=0,r=0;const o=[];if(e.length>1){const l=Et(e);for(let u=0;u<e.length;++u){const a=e[u];a.angle=Math.atan2(a.x-l.x,a.y-l.y)}e.sort((u,a)=>a.angle-u.angle);let h=e[e.length-1];for(let u=0;u<e.length;++u){const a=e[u];r+=(h.x+a.x)*(a.y-h.y);const p={x:(a.x+h.x)/2,y:(a.y+h.y)/2};let d=null;for(let m=0;m<a.parentIndex.length;++m)if(h.parentIndex.includes(a.parentIndex[m])){const y=t[a.parentIndex[m]],M=Math.atan2(a.x-y.x,a.y-y.y),E=Math.atan2(h.x-y.x,h.y-y.y);let T=E-M;T<0&&(T+=2*Math.PI);const w=E-T/2;let g=K(p,{x:y.x+y.radius*Math.sin(w),y:y.y+y.radius*Math.cos(w)});g>y.radius*2&&(g=y.radius*2),(d==null||d.width>g)&&(d={circle:y,width:g,p1:a,p2:h,large:g>y.radius,sweep:!0})}d!=null&&(o.push(d),i+=lt(d.circle.radius,d.width),h=a)}}else{let l=t[0];for(let u=1;u<t.length;++u)t[u].radius<l.radius&&(l=t[u]);let h=!1;for(let u=0;u<t.length;++u)if(K(t[u],l)>Math.abs(l.radius-t[u].radius)){h=!0;break}h?i=r=0:(i=l.radius*l.radius*Math.PI,o.push({circle:l,p1:{x:l.x,y:l.y+l.radius},p2:{x:l.x-_t,y:l.y+l.radius},width:l.radius*2,large:!0,sweep:!0}))}return r/=2,n&&(n.area=i+r,n.arcArea=i,n.polygonArea=r,n.arcs=o,n.innerPoints=e,n.intersectionPoints=s),i+r}function ae(t,n){return n.every(s=>K(t,s)<s.radius+_t)}function le(t){const n=[];for(let s=0;s<t.length;++s)for(let e=s+1;e<t.length;++e){const i=Tt(t[s],t[e]);for(const r of i)r.parentIndex=[s,e],n.push(r)}return n}function lt(t,n){return t*t*Math.acos(1-n/t)-(t-n)*Math.sqrt(n*(2*t-n))}function K(t,n){return Math.sqrt((t.x-n.x)*(t.x-n.x)+(t.y-n.y)*(t.y-n.y))}function xt(t,n,s){if(s>=t+n)return 0;if(s<=Math.abs(t-n))return Math.PI*Math.min(t,n)*Math.min(t,n);const e=t-(s*s-n*n+t*t)/(2*s),i=n-(s*s-t*t+n*n)/(2*s);return lt(t,e)+lt(n,i)}function Tt(t,n){const s=K(t,n),e=t.radius,i=n.radius;if(s>=e+i||s<=Math.abs(e-i))return[];const r=(e*e-i*i+s*s)/(2*s),o=Math.sqrt(e*e-r*r),l=t.x+r*(n.x-t.x)/s,h=t.y+r*(n.y-t.y)/s,u=-(n.y-t.y)*(o/s),a=-(n.x-t.x)*(o/s);return[{x:l+u,y:h-a},{x:l-u,y:h+a}]}function Et(t){const n={x:0,y:0};for(const s of t)n.x+=s.x,n.y+=s.y;return n.x/=t.length,n.y/=t.length,n}function ce(t,n,s,e){e=e||{};const i=e.maxIterations||100,r=e.tolerance||1e-10,o=t(n),l=t(s);let h=s-n;if(o*l>0)throw"Initial bisect points must have opposite signs";if(o===0)return n;if(l===0)return s;for(let u=0;u<i;++u){h/=2;const a=n+h,p=t(a);if(p*o>=0&&(n=a),Math.abs(h)<r||p===0)return a}return n+h}function ct(t){const n=new Array(t);for(let s=0;s<t;++s)n[s]=0;return n}function Mt(t,n){return ct(t).map(()=>ct(n))}function tt(t,n){let s=0;for(let e=0;e<t.length;++e)s+=t[e]*n[e];return s}function ut(t){return Math.sqrt(tt(t,t))}function ht(t,n,s){for(let e=0;e<n.length;++e)t[e]=n[e]*s}function Q(t,n,s,e,i){for(let r=0;r<t.length;++r)t[r]=n*s[r]+e*i[r]}function zt(t,n,s){s=s||{};const e=s.maxIterations||n.length*200,i=s.nonZeroDelta||1.05,r=s.zeroDelta||.001,o=s.minErrorDelta||1e-6,l=s.minErrorDelta||1e-5,h=s.rho!==void 0?s.rho:1,u=s.chi!==void 0?s.chi:2,a=s.psi!==void 0?s.psi:-.5,p=s.sigma!==void 0?s.sigma:.5;let d;const m=n.length,y=new Array(m+1);y[0]=n,y[0].fx=t(n),y[0].id=0;for(let v=0;v<m;++v){const c=n.slice();c[v]=c[v]?c[v]*i:r,y[v+1]=c,y[v+1].fx=t(c),y[v+1].id=v+1}function M(v){for(let c=0;c<v.length;c++)y[m][c]=v[c];y[m].fx=v.fx}const E=(v,c)=>v.fx-c.fx,T=n.slice(),w=n.slice(),g=n.slice(),b=n.slice();for(let v=0;v<e;++v){if(y.sort(E),s.history){const x=y.map(f=>{const O=f.slice();return O.fx=f.fx,O.id=f.id,O});x.sort((f,O)=>f.id-O.id),s.history.push({x:y[0].slice(),fx:y[0].fx,simplex:x})}d=0;for(let x=0;x<m;++x)d=Math.max(d,Math.abs(y[0][x]-y[1][x]));if(Math.abs(y[0].fx-y[m].fx)<o&&d<l)break;for(let x=0;x<m;++x){T[x]=0;for(let f=0;f<m;++f)T[x]+=y[f][x];T[x]/=m}const c=y[m];if(Q(w,1+h,T,-h,c),w.fx=t(w),w.fx<y[0].fx)Q(b,1+u,T,-u,c),b.fx=t(b),b.fx<w.fx?M(b):M(w);else if(w.fx>=y[m-1].fx){let x=!1;if(w.fx>c.fx?(Q(g,1+a,T,-a,c),g.fx=t(g),g.fx<c.fx?M(g):x=!0):(Q(g,1-a*h,T,a*h,c),g.fx=t(g),g.fx<w.fx?M(g):x=!0),x){if(p>=1)break;for(let f=1;f<y.length;++f)Q(y[f],1-p,y[0],p,y[f]),y[f].fx=t(y[f])}}else M(w)}return y.sort(E),{fx:y[0].fx,x:y[0]}}function ue(t,n,s,e,i,r,o){const l=s.fx,h=tt(s.fxprime,n);let u=l,a=l,p=h,d=0;i=i||1,r=r||1e-6,o=o||.1;function m(y,M,E){for(let T=0;T<16;++T)if(i=(y+M)/2,Q(e.x,1,s.x,i,n),u=e.fx=t(e.x,e.fxprime),p=tt(e.fxprime,n),u>l+r*i*h||u>=E)M=i;else{if(Math.abs(p)<=-o*h)return i;p*(M-y)>=0&&(M=y),y=i,E=u}return 0}for(let y=0;y<10;++y){if(Q(e.x,1,s.x,i,n),u=e.fx=t(e.x,e.fxprime),p=tt(e.fxprime,n),u>l+r*i*h||y&&u>=a)return m(d,i,a);if(Math.abs(p)<=-o*h)return i;if(p>=0)return m(i,d,u);a=u,d=i,i*=2}return i}function he(t,n,s){let e={x:n.slice(),fx:0,fxprime:n.slice()},i={x:n.slice(),fx:0,fxprime:n.slice()};const r=n.slice();let o,l,h=1,u;s=s||{},u=s.maxIterations||n.length*20,e.fx=t(e.x,e.fxprime),o=e.fxprime.slice(),ht(o,e.fxprime,-1);for(let a=0;a<u;++a){if(h=ue(t,o,e,i,h),s.history&&s.history.push({x:e.x.slice(),fx:e.fx,fxprime:e.fxprime.slice(),alpha:h}),!h)ht(o,e.fxprime,-1);else{Q(r,1,i.fxprime,-1,e.fxprime);const p=tt(e.fxprime,e.fxprime),d=Math.max(0,tt(r,i.fxprime)/p);Q(o,d,o,-1,i.fxprime),l=e,e=i,i=l}if(ut(e.fxprime)<=1e-5)break}return s.history&&s.history.push({x:e.x.slice(),fx:e.fx,fxprime:e.fxprime.slice(),alpha:h}),e}function At(t,n={}){n.maxIterations=n.maxIterations||500;const s=n.initialLayout||xe,e=n.lossFunction||et,i=fe(t,n),r=s(i,n),o=Object.keys(r),l=[];for(const a of o)l.push(r[a].x),l.push(r[a].y);const u=zt(a=>{const p={};for(let d=0;d<o.length;++d){const m=o[d];p[m]={x:a[2*d],y:a[2*d+1],radius:r[m].radius}}return e(p,i)},l,n).x;for(let a=0;a<o.length;++a){const p=o[a];r[p].x=u[2*a],r[p].y=u[2*a+1]}return r}const Rt=1e-10;function ft(t,n,s){return Math.min(t,n)*Math.min(t,n)*Math.PI<=s+Rt?Math.abs(t-n):ce(e=>xt(t,n,e)-s,0,t+n)}function fe(t,n={}){const s=n.distinct,e=t.map(l=>Object.assign({},l));function i(l){return l.join(";")}if(s){const l=new Map;for(const h of e)for(let u=0;u<h.sets.length;u++){const a=String(h.sets[u]);l.set(a,h.size+(l.get(a)||0));for(let p=u+1;p<h.sets.length;p++){const d=String(h.sets[p]),m=`${a};${d}`,y=`${d};${a}`;l.set(m,h.size+(l.get(m)||0)),l.set(y,h.size+(l.get(y)||0))}}for(const h of e)h.sets.length<3&&(h.size=l.get(i(h.sets)))}const r=[],o=new Set;for(const l of e)if(l.sets.length===1)r.push(l.sets[0]);else if(l.sets.length===2){const h=l.sets[0],u=l.sets[1];o.add(i(l.sets)),o.add(i([u,h]))}r.sort((l,h)=>l===h?0:l<h?-1:1);for(let l=0;l<r.length;++l){const h=r[l];for(let u=l+1;u<r.length;++u){const a=r[u];o.has(i([h,a]))||e.push({sets:[h,a],size:0})}}return e}function de(t,n,s){const e=Mt(n.length,n.length),i=Mt(n.length,n.length);return t.filter(r=>r.sets.length===2).forEach(r=>{const o=s[r.sets[0]],l=s[r.sets[1]],h=Math.sqrt(n[o].size/Math.PI),u=Math.sqrt(n[l].size/Math.PI),a=ft(h,u,r.size);e[o][l]=e[l][o]=a;let p=0;r.size+1e-10>=Math.min(n[o].size,n[l].size)?p=1:r.size<=1e-10&&(p=-1),i[o][l]=i[l][o]=p}),{distances:e,constraints:i}}function ge(t,n,s,e){for(let r=0;r<n.length;++r)n[r]=0;let i=0;for(let r=0;r<s.length;++r){const o=t[2*r],l=t[2*r+1];for(let h=r+1;h<s.length;++h){const u=t[2*h],a=t[2*h+1],p=s[r][h],d=e[r][h],m=(u-o)*(u-o)+(a-l)*(a-l),y=Math.sqrt(m),M=m-p*p;d>0&&y<=p||d<0&&y>=p||(i+=2*M*M,n[2*r]+=4*M*(o-u),n[2*r+1]+=4*M*(l-a),n[2*h]+=4*M*(u-o),n[2*h+1]+=4*M*(a-l))}}return i}function xe(t,n={}){let s=pe(t,n);const e=n.lossFunction||et;if(t.length>=8){const i=ye(t,n),r=e(i,t),o=e(s,t);r+1e-8<o&&(s=i)}return s}function ye(t,n={}){const s=n.restarts||10,e=[],i={};for(const d of t)d.sets.length===1&&(i[d.sets[0]]=e.length,e.push(d));let{distances:r,constraints:o}=de(t,e,i);const l=ut(r.map(ut))/r.length;r=r.map(d=>d.map(m=>m/l));const h=(d,m)=>ge(d,m,r,o);let u=null;for(let d=0;d<s;++d){const m=ct(r.length*2).map(Math.random),y=he(h,m,n);(!u||y.fx<u.fx)&&(u=y)}const a=u.x,p={};for(let d=0;d<e.length;++d){const m=e[d];p[m.sets[0]]={x:a[2*d]*l,y:a[2*d+1]*l,radius:Math.sqrt(m.size/Math.PI)}}if(n.history)for(const d of n.history)ht(d.x,l);return p}function pe(t,n){const s=n&&n.lossFunction?n.lossFunction:et,e={},i={};for(const p of t)if(p.sets.length===1){const d=p.sets[0];e[d]={x:1e10,y:1e10,rowid:e.length,size:p.size,radius:Math.sqrt(p.size/Math.PI)},i[d]=[]}t=t.filter(p=>p.sets.length===2);for(const p of t){let d=p.weight!=null?p.weight:1;const m=p.sets[0],y=p.sets[1];p.size+Rt>=Math.min(e[m].size,e[y].size)&&(d=0),i[m].push({set:y,size:p.size,weight:d}),i[y].push({set:m,size:p.size,weight:d})}const r=[];Object.keys(i).forEach(p=>{let d=0;for(let m=0;m<i[p].length;++m)d+=i[p][m].size*i[p][m].weight;r.push({set:p,size:d})});function o(p,d){return d.size-p.size}r.sort(o);const l={};function h(p){return p.set in l}function u(p,d){e[d].x=p.x,e[d].y=p.y,l[d]=!0}u({x:0,y:0},r[0].set);for(let p=1;p<r.length;++p){const d=r[p].set,m=i[d].filter(h),y=e[d];if(m.sort(o),m.length===0)throw"ERROR: missing pairwise overlap information";const M=[];for(var a=0;a<m.length;++a){const w=e[m[a].set],g=ft(y.radius,w.radius,m[a].size);M.push({x:w.x+g,y:w.y}),M.push({x:w.x-g,y:w.y}),M.push({y:w.y+g,x:w.x}),M.push({y:w.y-g,x:w.x});for(let b=a+1;b<m.length;++b){const v=e[m[b].set],c=ft(y.radius,v.radius,m[b].size),x=Tt({x:w.x,y:w.y,radius:g},{x:v.x,y:v.y,radius:c});M.push(...x)}}let E=1e50,T=M[0];for(const w of M){e[d].x=w.x,e[d].y=w.y;const g=s(e,t);g<E&&(E=g,T=w)}u(T,d)}return e}function et(t,n){let s=0;for(const e of n){if(e.sets.length===1)continue;let i;if(e.sets.length===2){const o=t[e.sets[0]],l=t[e.sets[1]];i=xt(o.radius,l.radius,K(o,l))}else i=st(e.sets.map(o=>t[o]));const r=e.weight!=null?e.weight:1;s+=r*(i-e.size)*(i-e.size)}return s}function Dt(t,n){let s=0;for(const e of n){if(e.sets.length===1)continue;let i;if(e.sets.length===2){const l=t[e.sets[0]],h=t[e.sets[1]];i=xt(l.radius,h.radius,K(l,h))}else i=st(e.sets.map(l=>t[l]));const r=e.weight!=null?e.weight:1,o=Math.log((i+1)/(e.size+1));s+=r*o*o}return s}function me(t,n,s){if(s==null?t.sort((i,r)=>r.radius-i.radius):t.sort(s),t.length>0){const i=t[0].x,r=t[0].y;for(const o of t)o.x-=i,o.y-=r}if(t.length===2&&K(t[0],t[1])<Math.abs(t[1].radius-t[0].radius)&&(t[1].x=t[0].x+t[0].radius-t[1].radius-1e-10,t[1].y=t[0].y),t.length>1){const i=Math.atan2(t[1].x,t[1].y)-n,r=Math.cos(i),o=Math.sin(i);for(const l of t){const h=l.x,u=l.y;l.x=r*h-o*u,l.y=o*h+r*u}}if(t.length>2){let i=Math.atan2(t[2].x,t[2].y)-n;for(;i<0;)i+=2*Math.PI;for(;i>2*Math.PI;)i-=2*Math.PI;if(i>Math.PI){const r=t[1].y/(1e-10+t[1].x);for(const o of t){var e=(o.x+r*o.y)/(1+r*r);o.x=2*e-o.x,o.y=2*e*r-o.y}}}}function be(t){t.forEach(i=>{i.parent=i});function n(i){return i.parent!==i&&(i.parent=n(i.parent)),i.parent}function s(i,r){const o=n(i),l=n(r);o.parent=l}for(let i=0;i<t.length;++i)for(let r=i+1;r<t.length;++r){const o=t[i].radius+t[r].radius;K(t[i],t[r])+1e-10<o&&s(t[r],t[i])}const e=new Map;for(let i=0;i<t.length;++i){const r=n(t[i]).parent.setid;e.has(r)||e.set(r,[]),e.get(r).push(t[i])}return t.forEach(i=>{delete i.parent}),Array.from(e.values())}function dt(t){const n=s=>{const e=t.reduce((r,o)=>Math.max(r,o[s]+o.radius),Number.NEGATIVE_INFINITY),i=t.reduce((r,o)=>Math.min(r,o[s]-o.radius),Number.POSITIVE_INFINITY);return{max:e,min:i}};return{xRange:n("x"),yRange:n("y")}}function Ct(t,n,s){n==null&&(n=Math.PI/2);let e=Ft(t).map(u=>Object.assign({},u));const i=be(e);for(const u of i){me(u,n,s);const a=dt(u);u.size=(a.xRange.max-a.xRange.min)*(a.yRange.max-a.yRange.min),u.bounds=a}i.sort((u,a)=>a.size-u.size),e=i[0];let r=e.bounds;const o=(r.xRange.max-r.xRange.min)/50;function l(u,a,p){if(!u)return;const d=u.bounds;let m,y;if(a)m=r.xRange.max-d.xRange.min+o;else{m=r.xRange.max-d.xRange.max;const M=(d.xRange.max-d.xRange.min)/2-(r.xRange.max-r.xRange.min)/2;M<0&&(m+=M)}if(p)y=r.yRange.max-d.yRange.min+o;else{y=r.yRange.max-d.yRange.max;const M=(d.yRange.max-d.yRange.min)/2-(r.yRange.max-r.yRange.min)/2;M<0&&(y+=M)}for(const M of u)M.x+=m,M.y+=y,e.push(M)}let h=1;for(;h<i.length;)l(i[h],!0,!1),l(i[h+1],!1,!0),l(i[h+2],!0,!0),h+=3,r=dt(e);return Ot(e)}function Nt(t,n,s,e,i){const r=Ft(t);n-=2*e,s-=2*e;const{xRange:o,yRange:l}=dt(r);if(o.max===o.min||l.max===l.min)return console.log("not scaling solution: zero size detected"),t;let h,u;if(i){const m=Math.sqrt(i/Math.PI)*2;h=n/m,u=s/m}else h=n/(o.max-o.min),u=s/(l.max-l.min);const a=Math.min(u,h),p=(n-(o.max-o.min)*a)/2,d=(s-(l.max-l.min)*a)/2;return Ot(r.map(m=>({radius:a*m.radius,x:e+p+(m.x-o.min)*a,y:e+d+(m.y-l.min)*a,setid:m.setid})))}function Ot(t){const n={};for(const s of t)n[s.setid]=s;return n}function Ft(t){return Object.keys(t).map(s=>Object.assign(t[s],{setid:s}))}function ve(t={}){let n=!1,s=600,e=350,i=15,r=1e3,o=Math.PI/2,l=!0,h=null,u=!0,a=!0,p=null,d=null,m=!1,y=null,M=t&&t.symmetricalTextCentre?t.symmetricalTextCentre:!1,E={},T=t&&t.colourScheme?t.colourScheme:t&&t.colorScheme?t.colorScheme:["#1f77b4","#ff7f0e","#2ca02c","#d62728","#9467bd","#8c564b","#e377c2","#7f7f7f","#bcbd22","#17becf"],w=0,g=function(x){if(x in E)return E[x];var f=E[x]=T[w];return w+=1,w>=T.length&&(w=0),f},b=At,v=et;function c(x){let f=x.datum();const O=new Set;f.forEach(I=>{I.size==0&&I.sets.length==1&&O.add(I.sets[0])}),f=f.filter(I=>!I.sets.some(C=>O.has(C)));let k={},R={};if(f.length>0){let I=b(f,{lossFunction:v,distinct:m});l&&(I=Ct(I,o,d)),k=Nt(I,s,e,i,h),R=Lt(k,f,M)}const Z={};f.forEach(I=>{I.label&&(Z[I.sets]=I.label)});function U(I){if(I.sets in Z)return Z[I.sets];if(I.sets.length==1)return""+I.sets[0]}x.selectAll("svg").data([k]).enter().append("svg");const B=x.select("svg");n?B.attr("viewBox",`0 0 ${s} ${e}`):B.attr("width",s).attr("height",e);const V={};let z=!1;B.selectAll(".venn-area path").each(function(I){const C=this.getAttribute("d");I.sets.length==1&&C&&!m&&(z=!0,V[I.sets[0]]=Me(C))});function q(I){return C=>{const G=I.sets.map(J=>{let W=V[J],X=k[J];return W||(W={x:s/2,y:e/2,radius:1}),X||(X={x:s/2,y:e/2,radius:1}),{x:W.x*(1-C)+X.x*C,y:W.y*(1-C)+X.y*C,radius:W.radius*(1-C)+X.radius*C}});return wt(G,y)}}const A=B.selectAll(".venn-area").data(f,I=>I.sets),F=A.enter().append("g").attr("class",I=>`venn-area venn-${I.sets.length==1?"circle":"intersection"}${I.colour||I.color?" venn-coloured":""}`).attr("data-venn-sets",I=>I.sets.join("_")),j=F.append("path"),L=F.append("text").attr("class","label").text(I=>U(I)).attr("text-anchor","middle").attr("dy",".35em").attr("x",s/2).attr("y",e/2);a&&(j.style("fill-opacity","0").filter(I=>I.sets.length==1).style("fill",I=>I.colour?I.colour:I.color?I.color:g(I.sets)).style("fill-opacity",".25"),L.style("fill",I=>I.colour||I.color?"#FFF":t.textFill?t.textFill:I.sets.length==1?g(I.sets):"#444"));function P(I){return typeof I.transition=="function"?I.transition("venn").duration(r):I}let _=x;z&&typeof _.transition=="function"?(_=P(x),_.selectAll("path").attrTween("d",q)):_.selectAll("path").attr("d",I=>wt(I.sets.map(C=>k[C])),y);const D=_.selectAll("text").filter(I=>I.sets in R).text(I=>U(I)).attr("x",I=>Math.floor(R[I.sets].x)).attr("y",I=>Math.floor(R[I.sets].y));u&&(z?"on"in D?D.on("end",ot(k,U)):D.each("end",ot(k,U)):D.each(ot(k,U)));const N=P(A.exit()).remove();typeof A.transition=="function"&&N.selectAll("path").attrTween("d",q);const Y=N.selectAll("text").attr("x",s/2).attr("y",e/2);return p!==null&&(L.style("font-size","0px"),D.style("font-size",p),Y.style("font-size","0px")),{circles:k,textCentres:R,nodes:A,enter:F,update:_,exit:N}}return c.wrap=function(x){return arguments.length?(u=x,c):u},c.useViewBox=function(){return n=!0,c},c.width=function(x){return arguments.length?(s=x,c):s},c.height=function(x){return arguments.length?(e=x,c):e},c.padding=function(x){return arguments.length?(i=x,c):i},c.distinct=function(x){return arguments.length?(m=x,c):m},c.colours=function(x){return arguments.length?(g=x,c):g},c.colors=function(x){return arguments.length?(g=x,c):g},c.fontSize=function(x){return arguments.length?(p=x,c):p},c.round=function(x){return arguments.length?(y=x,c):y},c.duration=function(x){return arguments.length?(r=x,c):r},c.layoutFunction=function(x){return arguments.length?(b=x,c):b},c.normalize=function(x){return arguments.length?(l=x,c):l},c.scaleToFit=function(x){return arguments.length?(h=x,c):h},c.styled=function(x){return arguments.length?(a=x,c):a},c.orientation=function(x){return arguments.length?(o=x,c):o},c.orientationOrder=function(x){return arguments.length?(d=x,c):d},c.lossFunction=function(x){return arguments.length?(v=x==="default"?et:x==="logRatio"?Dt:x,c):v},c}function ot(t,n){return function(s){const e=this,i=t[s.sets[0]].radius||50,r=n(s)||"",o=r.split(/\s+/).reverse(),h=(r.length+o.length)/3;let u=o.pop(),a=[u],p=0;const d=1.1;e.textContent=null;const m=[];function y(g){const b=e.ownerDocument.createElementNS(e.namespaceURI,"tspan");return b.textContent=g,m.push(b),e.append(b),b}let M=y(u);for(;u=o.pop(),!!u;){a.push(u);const g=a.join(" ");M.textContent=g,g.length>h&&M.getComputedTextLength()>i&&(a.pop(),M.textContent=a.join(" "),a=[u],M=y(u),p++)}const E=.35-p*d/2,T=e.getAttribute("x"),w=e.getAttribute("y");m.forEach((g,b)=>{g.setAttribute("x",T),g.setAttribute("y",w),g.setAttribute("dy",`${E+b*d}em`)})}}function at(t,n,s){let e=n[0].radius-K(n[0],t);for(let i=1;i<n.length;++i){const r=n[i].radius-K(n[i],t);r<=e&&(e=r)}for(let i=0;i<s.length;++i){const r=K(s[i],t)-s[i].radius;r<=e&&(e=r)}return e}function jt(t,n,s){const e=[];for(const a of t)e.push({x:a.x,y:a.y}),e.push({x:a.x+a.radius/2,y:a.y}),e.push({x:a.x-a.radius/2,y:a.y}),e.push({x:a.x,y:a.y+a.radius/2}),e.push({x:a.x,y:a.y-a.radius/2});let i=e[0],r=at(e[0],t,n);for(let a=1;a<e.length;++a){const p=at(e[a],t,n);p>=r&&(i=e[a],r=p)}const o=zt(a=>-1*at({x:a[0],y:a[1]},t,n),[i.x,i.y],{maxIterations:500,minErrorDelta:1e-10}).x,l={x:s?0:o[0],y:o[1]};let h=!0;for(const a of t)if(K(l,a)>a.radius){h=!1;break}for(const a of n)if(K(l,a)<a.radius){h=!1;break}if(h)return l;if(t.length==1)return{x:t[0].x,y:t[0].y};const u={};return st(t,u),u.arcs.length===0?{x:0,y:-1e3,disjoint:!0}:u.arcs.length==1?{x:u.arcs[0].circle.x,y:u.arcs[0].circle.y}:n.length?jt(t,[]):Et(u.arcs.map(a=>a.p1))}function Ie(t){const n={},s=Object.keys(t);for(const e of s)n[e]=[];for(let e=0;e<s.length;e++){const i=s[e],r=t[i];for(let o=e+1;o<s.length;++o){const l=s[o],h=t[l],u=K(r,h);u+h.radius<=r.radius+1e-10?n[l].push(i):u+r.radius<=h.radius+1e-10&&n[i].push(l)}}return n}function Lt(t,n,s){const e={},i=Ie(t);for(let r=0;r<n.length;++r){const o=n[r].sets,l={},h={};for(let d=0;d<o.length;++d){l[o[d]]=!0;const m=i[o[d]];for(let y=0;y<m.length;++y)h[m[y]]=!0}const u=[],a=[];for(let d in t)d in l?u.push(t[d]):d in h||a.push(t[d]);const p=jt(u,a,s);e[o]=p,p.disjoint&&n[r].size>0&&console.log("WARNING: area "+o+" not represented on screen")}return e}function ke(t,n,s){const e=[];return e.push(`
|
|
2
2
|
M`,t,n),e.push(`
|
|
3
3
|
m`,-s,0),e.push(`
|
|
4
4
|
a`,s,s,0,1,0,s*2,0),e.push(`
|
package/dist/web/assets/{wardleyDiagram-T6FBY63Y-BrZ83jaD.js → wardleyDiagram-T6FBY63Y-gxOBkNAp.js}
RENAMED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{p as zt}from"./chunk-JWPE2WC7-
|
|
1
|
+
import{p as zt}from"./chunk-JWPE2WC7-C2fToatl.js";import{s as Lt,g as Tt,p as At,o as Xt,a as Et,b as Yt,_ as y,W as It,z as Bt,B as Q,l as et,F as Ft,e as Rt,q as Ot,c as V}from"./mermaid.core-524tR-D2.js";import{p as Wt}from"./cynefin-VYW2F7L2-fVS7Seyd.js";import"./vendor-z183l2lP.js";import"./vendor-react-Dka9ZH0B.js";var G=y((a,o)=>{const e=a<=1?a*100:a;if(e<0||e>100)throw new Error(`${o} must be between 0-1 (decimal) or 0-100 (percentage). Received: ${a}`);return e},"toPercent"),E=y((a,o,e)=>({x:G(o,`${e} evolution`),y:G(a,`${e} visibility`)}),"toCoordinates"),tt=y(a=>{if(a){if(a==="+<>")return"bidirectional";if(a==="+<")return"backward";if(a==="+>")return"forward"}},"getFlowFromPort"),Dt=y(a=>{if(!(a!=null&&a.startsWith("+")))return{};const o=/^\+'([^']*)'/.exec(a),e=o==null?void 0:o[1];return a.includes("<>")?{flow:"bidirectional",label:e}:a.includes("<")?{flow:"backward",label:e}:a.includes(">")?{flow:"forward",label:e}:{label:e}},"extractFlowFromArrow"),Gt=y((a,o)=>{if(zt(a,o),a.size&&o.setSize(a.size.width,a.size.height),a.evolution){const e=a.evolution.stages.map(r=>r.secondName?`${r.name.trim()} / ${r.secondName.trim()}`:r.name.trim()),p=a.evolution.stages.filter(r=>r.boundary!==void 0).map(r=>r.boundary);o.updateAxes({stages:e,stageBoundaries:p})}if(a.anchors.forEach(e=>{const p=E(e.visibility,e.evolution,`Anchor "${e.name}"`);o.addNode(e.name,e.name,p.x,p.y,"anchor")}),a.components.forEach(e=>{var v;const p=E(e.visibility,e.evolution,`Component "${e.name}"`),r=e.label?(e.label.negX?-1:1)*e.label.offsetX:void 0,d=e.label?(e.label.negY?-1:1)*e.label.offsetY:void 0,m=(v=e.decorator)==null?void 0:v.strategy;o.addNode(e.name,e.name,p.x,p.y,"component",r,d,e.inertia,m)}),a.notes.forEach(e=>{const p=E(e.visibility,e.evolution,`Note "${e.text}"`);o.addNote(e.text,p.x,p.y)}),a.pipelines.forEach(e=>{const p=o.getNode(e.parent);if(!p||typeof p.y!="number")throw new Error(`Pipeline "${e.parent}" must reference an existing component with coordinates.`);const r=p.y;o.startPipeline(e.parent),e.components.forEach(d=>{const m=`${e.parent}_${d.name}`,v=d.label?(d.label.negX?-1:1)*d.label.offsetX:void 0,g=d.label?(d.label.negY?-1:1)*d.label.offsetY:void 0,L=G(d.evolution,`Pipeline component "${d.name}" evolution`);o.addNode(m,d.name,L,r,"pipeline-component",v,g),o.addPipelineComponent(e.parent,m)})}),a.links.forEach(e=>{const p=!!e.arrow&&(e.arrow.includes("-.->")||e.arrow.includes(".-."));let r=tt(e.fromPort)??tt(e.toPort);const{flow:d,label:m}=Dt(e.arrow);!r&&d&&(r=d);const v=e.linkLabel,g=m??v;o.addLink(o.resolveNodeId(e.from),o.resolveNodeId(e.to),p,g,r)}),a.evolves.forEach(e=>{const p=o.getNode(e.component);if((p==null?void 0:p.y)!==void 0){const r=G(e.target,`Evolve target for "${e.component}"`);o.addTrend(e.component,r,p.y)}}),a.annotations.length>0){const e=a.annotations[0],p=E(e.x,e.y,"Annotations box");o.setAnnotationsBox(p.x,p.y)}a.annotation.forEach(e=>{const p=E(e.x,e.y,`Annotation ${e.number}`);o.addAnnotation(e.number,[{x:p.x,y:p.y}],e.text)}),a.accelerators.forEach(e=>{const p=E(e.x,e.y,`Accelerator "${e.name}"`);o.addAccelerator(e.name,p.x,p.y)}),a.deaccelerators.forEach(e=>{const p=E(e.x,e.y,`Deaccelerator "${e.name}"`);o.addDeaccelerator(e.name,p.x,p.y)})},"populateDb"),at={parser:{yy:void 0},parse:y(async a=>{var p;const o=await Wt("wardley",a);et.debug(o);const e=(p=at.parser)==null?void 0:p.yy;if(!e||typeof e.addNode!="function")throw new Error("parser.parser?.yy was not a WardleyDB. This is due to a bug within Mermaid, please report this issue at https://github.com/mermaid-js/mermaid/issues.");Gt(o,e)},"parse")},I,qt=(I=class{constructor(){this.nodes=new Map,this.links=[],this.trends=new Map,this.pipelines=new Map,this.annotations=[],this.notes=[],this.accelerators=[],this.deaccelerators=[],this.axes={}}addNode(o){const e=this.nodes.get(o.id)??{id:o.id,label:o.label},p={...e,...o,className:o.className??e.className,labelOffsetX:o.labelOffsetX??e.labelOffsetX,labelOffsetY:o.labelOffsetY??e.labelOffsetY};this.nodes.set(o.id,p)}addLink(o){this.links.push(o)}addTrend(o){this.trends.set(o.nodeId,o)}startPipeline(o){this.pipelines.set(o,{nodeId:o,componentIds:[]});const e=this.nodes.get(o);e&&(e.isPipelineParent=!0)}addPipelineComponent(o,e){const p=this.pipelines.get(o);p&&p.componentIds.push(e);const r=this.nodes.get(e);r&&(r.inPipeline=!0)}addAnnotation(o){this.annotations.push(o)}addNote(o){this.notes.push(o)}addAccelerator(o){this.accelerators.push(o)}addDeaccelerator(o){this.deaccelerators.push(o)}setAnnotationsBox(o,e){this.annotationsBox={x:o,y:e}}setAxes(o){this.axes={...this.axes,...o}}setSize(o,e){this.size={width:o,height:e}}getNode(o){return this.nodes.get(o)}resolveNodeId(o){if(this.nodes.has(o))return o;for(const[e,p]of this.nodes)if(p.label===o)return e;return o}build(){const o=[];for(const e of this.nodes.values()){if(typeof e.x!="number"||typeof e.y!="number")throw new Error(`Node "${e.label}" is missing coordinates`);o.push(e)}return{nodes:o,links:[...this.links],trends:[...this.trends.values()],pipelines:[...this.pipelines.values()],annotations:[...this.annotations],notes:[...this.notes],accelerators:[...this.accelerators],deaccelerators:[...this.deaccelerators],annotationsBox:this.annotationsBox,axes:{...this.axes},size:this.size}}clear(){this.nodes.clear(),this.links=[],this.trends.clear(),this.pipelines.clear(),this.annotations=[],this.notes=[],this.accelerators=[],this.deaccelerators=[],this.annotationsBox=void 0,this.axes={},this.size=void 0}},y(I,"WardleyBuilder"),I),b=new qt;function rt(){return V()["wardley-beta"]}y(rt,"getConfig");function ot(a,o,e,p,r,d,m,v,g){b.addNode({id:a,label:o,x:e,y:p,className:r,labelOffsetX:d,labelOffsetY:m,inertia:v,sourceStrategy:g})}y(ot,"addNode");function st(a,o,e=!1,p,r){b.addLink({source:a,target:o,dashed:e,label:p,flow:r})}y(st,"addLink");function nt(a,o,e){b.addTrend({nodeId:a,targetX:o,targetY:e})}y(nt,"addTrend");function it(a,o,e){b.addAnnotation({number:a,coordinates:o,text:e})}y(it,"addAnnotation");function dt(a,o,e){b.addNote({text:a,x:o,y:e})}y(dt,"addNote");function lt(a,o,e){b.addAccelerator({name:a,x:o,y:e})}y(lt,"addAccelerator");function ct(a,o,e){b.addDeaccelerator({name:a,x:o,y:e})}y(ct,"addDeaccelerator");function pt(a,o){b.setAnnotationsBox(a,o)}y(pt,"setAnnotationsBox");function ht(a,o){b.setSize(a,o)}y(ht,"setSize");function xt(a){b.startPipeline(a)}y(xt,"startPipeline");function ft(a,o){b.addPipelineComponent(a,o)}y(ft,"addPipelineComponent");function gt(a){b.setAxes(a)}y(gt,"updateAxes");function ut(a){return b.getNode(a)}y(ut,"getNode");function yt(a){return b.resolveNodeId(a)}y(yt,"resolveNodeId");function mt(){return b.build()}y(mt,"getWardleyData");function wt(){b.clear(),Ot()}y(wt,"clear");var Ht={getConfig:rt,addNode:ot,addLink:st,addTrend:nt,addAnnotation:it,addNote:dt,addAccelerator:lt,addDeaccelerator:ct,setAnnotationsBox:pt,setSize:ht,startPipeline:xt,addPipelineComponent:ft,updateAxes:gt,getNode:ut,resolveNodeId:yt,getWardleyData:mt,clear:wt,setAccTitle:Yt,getAccTitle:Et,setDiagramTitle:Xt,getDiagramTitle:At,getAccDescription:Tt,setAccDescription:Lt},jt=["Genesis","Custom Built","Product","Commodity"],Vt=y(()=>{var o,e,p,r,d,m,v,g,L,M,k,N;const{themeVariables:a}=V();return{backgroundColor:((o=a.wardley)==null?void 0:o.backgroundColor)??a.background??"#fff",axisColor:((e=a.wardley)==null?void 0:e.axisColor)??"#000",axisTextColor:((p=a.wardley)==null?void 0:p.axisTextColor)??a.primaryTextColor??"#222",gridColor:((r=a.wardley)==null?void 0:r.gridColor)??"rgba(100, 100, 100, 0.2)",componentFill:((d=a.wardley)==null?void 0:d.componentFill)??"#fff",componentStroke:((m=a.wardley)==null?void 0:m.componentStroke)??"#000",componentLabelColor:((v=a.wardley)==null?void 0:v.componentLabelColor)??a.primaryTextColor??"#222",linkStroke:((g=a.wardley)==null?void 0:g.linkStroke)??"#000",evolutionStroke:((L=a.wardley)==null?void 0:L.evolutionStroke)??"#dc3545",annotationStroke:((M=a.wardley)==null?void 0:M.annotationStroke)??"#000",annotationTextColor:((k=a.wardley)==null?void 0:k.annotationTextColor)??a.primaryTextColor??"#222",annotationFill:((N=a.wardley)==null?void 0:N.annotationFill)??a.background??"#fff"}},"getTheme"),_t=y(()=>{const a=V()["wardley-beta"];return{width:(a==null?void 0:a.width)??900,height:(a==null?void 0:a.height)??600,padding:(a==null?void 0:a.padding)??48,nodeRadius:(a==null?void 0:a.nodeRadius)??6,nodeLabelOffset:(a==null?void 0:a.nodeLabelOffset)??8,axisFontSize:(a==null?void 0:a.axisFontSize)??12,labelFontSize:(a==null?void 0:a.labelFontSize)??10,showGrid:(a==null?void 0:a.showGrid)??!1,useMaxWidth:(a==null?void 0:a.useMaxWidth)??!0}},"getConfigValues"),Zt=y((a,o,e,p)=>{var J,K;et.debug(`Rendering Wardley map
|
|
2
2
|
`+a);const r=_t(),d=Vt(),m=r.nodeRadius*1.6,v=p.db,g=v.getWardleyData(),L=v.getDiagramTitle(),M=((J=g.size)==null?void 0:J.width)??r.width,k=((K=g.size)==null?void 0:K.height)??r.height,N=Ft(o);N.selectAll("*").remove(),Rt(N,k,M,r.useMaxWidth),N.attr("viewBox",`0 0 ${M} ${k}`);const P=N.append("g").attr("class","wardley-map"),q=N.append("defs");q.append("marker").attr("id",`arrow-${o}`).attr("viewBox","0 0 10 10").attr("refX",9).attr("refY",5).attr("markerWidth",6).attr("markerHeight",6).attr("orient","auto-start-reverse").append("path").attr("d","M 0 0 L 10 5 L 0 10 z").attr("fill",d.evolutionStroke).attr("stroke","none"),q.append("marker").attr("id",`link-arrow-end-${o}`).attr("viewBox","0 0 10 10").attr("refX",9).attr("refY",5).attr("markerWidth",5).attr("markerHeight",5).attr("orient","auto").append("path").attr("d","M 0 0 L 10 5 L 0 10 z").attr("fill",d.linkStroke).attr("stroke","none"),q.append("marker").attr("id",`link-arrow-start-${o}`).attr("viewBox","0 0 10 10").attr("refX",1).attr("refY",5).attr("markerWidth",5).attr("markerHeight",5).attr("orient","auto").append("path").attr("d","M 10 0 L 0 5 L 10 10 z").attr("fill",d.linkStroke).attr("stroke","none"),P.append("rect").attr("class","wardley-background").attr("width",M).attr("height",k).attr("fill",d.backgroundColor);const B=M-r.padding*2,F=k-r.padding*2;L&&P.append("text").attr("class","wardley-title").attr("x",M/2).attr("y",r.padding/2).attr("fill",d.axisTextColor).attr("font-size",r.axisFontSize*1.05).attr("font-weight","bold").attr("text-anchor","middle").attr("dominant-baseline","middle").text(L);const T=y(t=>r.padding+t/100*B,"projectX"),A=y(t=>k-r.padding-t/100*F,"projectY"),O=P.append("g").attr("class","wardley-axes");O.append("line").attr("x1",r.padding).attr("x2",M-r.padding).attr("y1",k-r.padding).attr("y2",k-r.padding).attr("stroke",d.axisColor).attr("stroke-width",1),O.append("line").attr("x1",r.padding).attr("x2",r.padding).attr("y1",r.padding).attr("y2",k-r.padding).attr("stroke",d.axisColor).attr("stroke-width",1);const kt=g.axes.xLabel??"Evolution",bt=g.axes.yLabel??"Visibility";O.append("text").attr("class","wardley-axis-label wardley-axis-label-x").attr("x",r.padding+B/2).attr("y",k-r.padding/4).attr("fill",d.axisTextColor).attr("font-size",r.axisFontSize).attr("font-weight","bold").attr("text-anchor","middle").text(kt),O.append("text").attr("class","wardley-axis-label wardley-axis-label-y").attr("x",r.padding/3).attr("y",r.padding+F/2).attr("fill",d.axisTextColor).attr("font-size",r.axisFontSize).attr("font-weight","bold").attr("text-anchor","middle").attr("transform",`rotate(-90 ${r.padding/3} ${r.padding+F/2})`).text(bt);const R=g.axes.stages&&g.axes.stages.length>0?g.axes.stages:jt;if(R.length>0){const t=P.append("g").attr("class","wardley-stages"),n=g.axes.stageBoundaries,s=[];if(n&&n.length===R.length){let i=0;n.forEach(h=>{s.push({start:i,end:h}),i=h})}else{const i=1/R.length;R.forEach((h,l)=>{s.push({start:l*i,end:(l+1)*i})})}R.forEach((i,h)=>{const l=s[h],x=r.padding+l.start*B,f=r.padding+l.end*B,u=(x+f)/2;h>0&&t.append("line").attr("x1",x).attr("x2",x).attr("y1",r.padding).attr("y2",k-r.padding).attr("stroke","#000").attr("stroke-width",1).attr("stroke-dasharray","5 5").attr("opacity",.8),t.append("text").attr("class","wardley-stage-label").attr("x",u).attr("y",k-r.padding/1.5).attr("fill",d.axisTextColor).attr("font-size",r.axisFontSize-2).attr("text-anchor","middle").text(i)})}if(r.showGrid){const t=P.append("g").attr("class","wardley-grid");for(let n=1;n<4;n++){const s=n/4,i=r.padding+B*s;t.append("line").attr("x1",i).attr("x2",i).attr("y1",r.padding).attr("y2",k-r.padding).attr("stroke",d.gridColor).attr("stroke-dasharray","2 6"),t.append("line").attr("x1",r.padding).attr("x2",M-r.padding).attr("y1",k-r.padding-F*s).attr("y2",k-r.padding-F*s).attr("stroke",d.gridColor).attr("stroke-dasharray","2 6")}}const c=new Map;if(g.nodes.forEach(t=>{c.set(t.id,{x:T(t.x),y:A(t.y),node:t})}),g.pipelines.length>0){const t=P.append("g").attr("class","wardley-pipelines"),n=P.append("g").attr("class","wardley-pipeline-links");g.pipelines.forEach(s=>{if(s.componentIds.length===0)return;const i=s.componentIds.map(f=>({id:f,pos:c.get(f),node:g.nodes.find(u=>u.id===f)})).filter(f=>f.pos&&f.node).sort((f,u)=>f.node.x-u.node.x);for(let f=0;f<i.length-1;f++){const u=i[f],w=i[f+1];n.append("line").attr("class","wardley-pipeline-evolution-link").attr("x1",u.pos.x).attr("y1",u.pos.y).attr("x2",w.pos.x).attr("y2",w.pos.y).attr("stroke",d.linkStroke).attr("stroke-width",1).attr("stroke-dasharray","4 4")}let h=1/0,l=-1/0,x=0;if(s.componentIds.forEach(f=>{const u=c.get(f);u&&(h=Math.min(h,u.x),l=Math.max(l,u.x),x=u.y)}),h!==1/0&&l!==-1/0){const u=r.nodeRadius*4,w=x-u/2,S=c.get(s.nodeId);if(S){const z=(h+l)/2;S.x=z,S.y=w-m/6}t.append("rect").attr("class","wardley-pipeline-box").attr("x",h-15).attr("y",w).attr("width",l-h+30).attr("height",u).attr("fill","none").attr("stroke",d.axisColor).attr("stroke-width",1.5).attr("rx",4).attr("ry",4)}})}const _=P.append("g").attr("class","wardley-links"),Z=new Map;g.pipelines.forEach(t=>{Z.set(t.nodeId,new Set(t.componentIds))});const U=g.links.filter(t=>{if(!c.has(t.source)||!c.has(t.target))return!1;const n=Z.get(t.target);return!(n!=null&&n.has(t.source))});_.selectAll("line").data(U).enter().append("line").attr("class",t=>`wardley-link${t.dashed?" wardley-link--dashed":""}`).attr("x1",t=>{const n=c.get(t.source),s=c.get(t.target),h=g.nodes.find(u=>u.id===t.source).isPipelineParent?m/Math.sqrt(2):r.nodeRadius,l=s.x-n.x,x=s.y-n.y,f=Math.sqrt(l*l+x*x);return n.x+l/f*h}).attr("y1",t=>{const n=c.get(t.source),s=c.get(t.target),h=g.nodes.find(u=>u.id===t.source).isPipelineParent?m/Math.sqrt(2):r.nodeRadius,l=s.x-n.x,x=s.y-n.y,f=Math.sqrt(l*l+x*x);return n.y+x/f*h}).attr("x2",t=>{const n=c.get(t.source),s=c.get(t.target),h=g.nodes.find(u=>u.id===t.target).isPipelineParent?m/Math.sqrt(2):r.nodeRadius,l=n.x-s.x,x=n.y-s.y,f=Math.sqrt(l*l+x*x);return s.x+l/f*h}).attr("y2",t=>{const n=c.get(t.source),s=c.get(t.target),h=g.nodes.find(u=>u.id===t.target).isPipelineParent?m/Math.sqrt(2):r.nodeRadius,l=n.x-s.x,x=n.y-s.y,f=Math.sqrt(l*l+x*x);return s.y+x/f*h}).attr("stroke",d.linkStroke).attr("stroke-width",1).attr("stroke-dasharray",t=>t.dashed?"6 6":null).attr("marker-end",t=>t.flow==="forward"||t.flow==="bidirectional"?`url(#link-arrow-end-${o})`:null).attr("marker-start",t=>t.flow==="backward"||t.flow==="bidirectional"?`url(#link-arrow-start-${o})`:null),_.selectAll("text").data(U.filter(t=>t.label)).enter().append("text").attr("class","wardley-link-label").attr("x",t=>{const n=c.get(t.source),s=c.get(t.target),i=(n.x+s.x)/2,h=s.y-n.y,l=s.x-n.x,x=Math.sqrt(l*l+h*h),f=8,u=h/x;return i+u*f}).attr("y",t=>{const n=c.get(t.source),s=c.get(t.target),i=(n.y+s.y)/2,h=s.x-n.x,l=s.y-n.y,x=Math.sqrt(h*h+l*l),f=8,u=-h/x;return i+u*f}).attr("fill",d.axisTextColor).attr("font-size",r.labelFontSize).attr("text-anchor","middle").attr("dominant-baseline","middle").attr("transform",t=>{const n=c.get(t.source),s=c.get(t.target),i=(n.x+s.x)/2,h=(n.y+s.y)/2,l=s.x-n.x,x=s.y-n.y,f=Math.sqrt(l*l+x*x),u=8,w=x/f,S=-l/f,z=i+w*u,W=h+S*u;let Y=Math.atan2(x,l)*180/Math.PI;return(Y>90||Y<-90)&&(Y+=180),`rotate(${Y} ${z} ${W})`}).text(t=>t.label);const $t=P.append("g").attr("class","wardley-trends"),vt=g.trends.map(t=>{const n=c.get(t.nodeId);if(!n)return null;const s=T(t.targetX),i=A(t.targetY),h=s-n.x,l=i-n.y,x=Math.sqrt(h*h+l*l),f=r.nodeRadius+2,u=x>f?s-h/x*f:s,w=x>f?i-l/x*f:i;return{origin:n,targetX:s,targetY:i,adjustedX2:u,adjustedY2:w}}).filter(t=>t!==null);$t.selectAll("line").data(vt).enter().append("line").attr("class","wardley-trend").attr("x1",t=>t.origin.x).attr("y1",t=>t.origin.y).attr("x2",t=>t.adjustedX2).attr("y2",t=>t.adjustedY2).attr("stroke",d.evolutionStroke).attr("stroke-width",1).attr("stroke-dasharray","4 4").attr("marker-end",`url(#arrow-${o})`);const C=P.append("g").attr("class","wardley-nodes").selectAll("g").data(g.nodes).enter().append("g").attr("class",t=>["wardley-node",t.className?`wardley-node--${t.className}`:""].filter(Boolean).join(" "));C.filter(t=>t.sourceStrategy==="outsource").append("circle").attr("class","wardley-outsource-overlay").attr("cx",t=>c.get(t.id).x).attr("cy",t=>c.get(t.id).y).attr("r",r.nodeRadius*2).attr("fill","#666").attr("stroke",d.componentStroke).attr("stroke-width",1),C.filter(t=>t.sourceStrategy==="buy").append("circle").attr("class","wardley-buy-overlay").attr("cx",t=>c.get(t.id).x).attr("cy",t=>c.get(t.id).y).attr("r",r.nodeRadius*2).attr("fill","#ccc").attr("stroke",d.componentStroke).attr("stroke-width",1),C.filter(t=>t.sourceStrategy==="build").append("circle").attr("class","wardley-build-overlay").attr("cx",t=>c.get(t.id).x).attr("cy",t=>c.get(t.id).y).attr("r",r.nodeRadius*2).attr("fill","#eee").attr("stroke","#000").attr("stroke-width",1);const X=C.filter(t=>t.sourceStrategy==="market");X.append("circle").attr("class","wardley-market-overlay").attr("cx",t=>c.get(t.id).x).attr("cy",t=>c.get(t.id).y).attr("r",r.nodeRadius*2).attr("fill","white").attr("stroke",d.componentStroke).attr("stroke-width",1),C.filter(t=>!t.isPipelineParent&&t.sourceStrategy!=="market"&&t.className!=="anchor").append("circle").attr("cx",t=>c.get(t.id).x).attr("cy",t=>c.get(t.id).y).attr("r",r.nodeRadius).attr("fill",d.componentFill).attr("stroke",d.componentStroke).attr("stroke-width",1);const H=r.nodeRadius*.7,$=r.nodeRadius*1.2;if(X.append("line").attr("class","wardley-market-line").attr("x1",t=>c.get(t.id).x).attr("y1",t=>c.get(t.id).y-$).attr("x2",t=>c.get(t.id).x-$*Math.cos(Math.PI/6)).attr("y2",t=>c.get(t.id).y+$*Math.sin(Math.PI/6)).attr("stroke",d.componentStroke).attr("stroke-width",1),X.append("line").attr("class","wardley-market-line").attr("x1",t=>c.get(t.id).x-$*Math.cos(Math.PI/6)).attr("y1",t=>c.get(t.id).y+$*Math.sin(Math.PI/6)).attr("x2",t=>c.get(t.id).x+$*Math.cos(Math.PI/6)).attr("y2",t=>c.get(t.id).y+$*Math.sin(Math.PI/6)).attr("stroke",d.componentStroke).attr("stroke-width",1),X.append("line").attr("class","wardley-market-line").attr("x1",t=>c.get(t.id).x+$*Math.cos(Math.PI/6)).attr("y1",t=>c.get(t.id).y+$*Math.sin(Math.PI/6)).attr("x2",t=>c.get(t.id).x).attr("y2",t=>c.get(t.id).y-$).attr("stroke",d.componentStroke).attr("stroke-width",1),X.append("circle").attr("class","wardley-market-dot").attr("cx",t=>c.get(t.id).x).attr("cy",t=>c.get(t.id).y-$).attr("r",H).attr("fill","white").attr("stroke",d.componentStroke).attr("stroke-width",2),X.append("circle").attr("class","wardley-market-dot").attr("cx",t=>c.get(t.id).x-$*Math.cos(Math.PI/6)).attr("cy",t=>c.get(t.id).y+$*Math.sin(Math.PI/6)).attr("r",H).attr("fill","white").attr("stroke",d.componentStroke).attr("stroke-width",2),X.append("circle").attr("class","wardley-market-dot").attr("cx",t=>c.get(t.id).x+$*Math.cos(Math.PI/6)).attr("cy",t=>c.get(t.id).y+$*Math.sin(Math.PI/6)).attr("r",H).attr("fill","white").attr("stroke",d.componentStroke).attr("stroke-width",2),C.filter(t=>t.isPipelineParent===!0).append("rect").attr("x",t=>c.get(t.id).x-m/2).attr("y",t=>c.get(t.id).y-m/2).attr("width",m).attr("height",m).attr("fill",d.componentFill).attr("stroke",d.componentStroke).attr("stroke-width",1),C.filter(t=>t.inertia===!0).append("line").attr("class","wardley-inertia").attr("x1",t=>{const n=c.get(t.id);let s=t.isPipelineParent?m/2+15:r.nodeRadius+15;return t.sourceStrategy&&(s+=r.nodeRadius+10),n.x+s}).attr("y1",t=>{const n=c.get(t.id),s=t.isPipelineParent?m:r.nodeRadius*2;return n.y-s/2}).attr("x2",t=>{const n=c.get(t.id);let s=t.isPipelineParent?m/2+15:r.nodeRadius+15;return t.sourceStrategy&&(s+=r.nodeRadius+10),n.x+s}).attr("y2",t=>{const n=c.get(t.id),s=t.isPipelineParent?m:r.nodeRadius*2;return n.y+s/2}).attr("stroke",d.componentStroke).attr("stroke-width",6),C.append("text").attr("x",t=>{const n=c.get(t.id);if(t.className==="anchor")return t.labelOffsetX!==void 0?n.x+t.labelOffsetX:n.x;let s=r.nodeLabelOffset;t.sourceStrategy&&t.labelOffsetX===void 0&&(s+=10);const i=t.labelOffsetX??s;return n.x+i}).attr("y",t=>{const n=c.get(t.id);if(t.className==="anchor")return t.labelOffsetY!==void 0?n.y+t.labelOffsetY:n.y-3;let s=-r.nodeLabelOffset;t.sourceStrategy&&t.labelOffsetY===void 0&&(s-=10);const i=t.labelOffsetY??s;return n.y+i}).attr("class","wardley-node-label").attr("fill",t=>t.className==="evolved"?d.evolutionStroke:t.className==="anchor"?"#000":d.componentLabelColor).attr("font-size",r.labelFontSize).attr("font-weight",t=>t.className==="anchor"?"bold":"normal").attr("text-anchor",t=>t.className==="anchor"?"middle":"start").attr("dominant-baseline",t=>t.className==="anchor"?"middle":"auto").text(t=>t.label),g.annotations.length>0){const t=P.append("g").attr("class","wardley-annotations");if(g.annotations.forEach(n=>{const s=n.coordinates.map(i=>({x:T(i.x),y:A(i.y)}));if(s.length>1)for(let i=0;i<s.length-1;i++)t.append("line").attr("class","wardley-annotation-line").attr("x1",s[i].x).attr("y1",s[i].y).attr("x2",s[i+1].x).attr("y2",s[i+1].y).attr("stroke",d.axisColor).attr("stroke-width",1.5).attr("stroke-dasharray","4 4");s.forEach(i=>{const h=t.append("g").attr("class","wardley-annotation");h.append("circle").attr("cx",i.x).attr("cy",i.y).attr("r",10).attr("fill","white").attr("stroke",d.axisColor).attr("stroke-width",1.5),h.append("text").attr("x",i.x).attr("y",i.y).attr("text-anchor","middle").attr("dominant-baseline","central").attr("font-size",10).attr("fill",d.axisTextColor).attr("font-weight","bold").text(n.number)})}),g.annotationsBox){let n=T(g.annotationsBox.x),s=A(g.annotationsBox.y);const i=10,h=16,l=11,x=t.append("g").attr("class","wardley-annotations-box"),f=[...g.annotations].filter(w=>w.text).sort((w,S)=>w.number-S.number),u=[];if(f.forEach((w,S)=>{const z=x.append("text").attr("x",n+i).attr("y",s+i+(S+1)*h).attr("font-size",l).attr("fill",d.axisTextColor).attr("text-anchor","start").attr("dominant-baseline","middle").text(`${w.number}. ${w.text}`);u.push(z)}),u.length>0){let w=0,S=0;u.forEach(j=>{const D=j.node(),Nt=D.getComputedTextLength();w=Math.max(w,Nt);const Ct=D.getBBox();S=Math.max(S,Ct.height)});const z=w+i*2+105,W=f.length*h+i*2+S/2,Y=r.padding,Pt=M-r.padding-z,St=r.padding,Mt=k-r.padding-W;n=Math.max(Y,Math.min(n,Pt)),s=Math.max(St,Math.min(s,Mt)),u.forEach((j,D)=>{j.attr("x",n+i).attr("y",s+i+(D+1)*h)}),x.insert("rect","text").attr("x",n).attr("y",s).attr("width",z).attr("height",W).attr("fill","white").attr("stroke",d.axisColor).attr("stroke-width",1.5).attr("rx",4).attr("ry",4)}}}if(g.notes.length>0){const t=P.append("g").attr("class","wardley-notes");g.notes.forEach(n=>{const s=T(n.x),i=A(n.y);t.append("text").attr("x",s).attr("y",i).attr("text-anchor","start").attr("font-size",11).attr("fill",d.axisTextColor).attr("font-weight","bold").text(n.text)})}if(g.accelerators.length>0){const t=P.append("g").attr("class","wardley-accelerators");g.accelerators.forEach(n=>{const s=T(n.x),i=A(n.y),h=60,l=30,x=20,f=`
|
|
3
3
|
M ${s} ${i-l/2}
|
|
4
4
|
L ${s+h-x} ${i-l/2}
|
package/dist/web/assets/{xychartDiagram-ELKLHX3M-C3Tsplob.js → xychartDiagram-ELKLHX3M-BEdGwPiU.js}
RENAMED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{s as xi,g as di,p as Yt,o as fi,a as pi,b as mi,_ as n,l as Nt,F as yi,e as bi,q as Ai,z as kt,i as wi,B as Ht,D as Ci,W as Si,aH as Ri,a7 as Ot}from"./mermaid.core-
|
|
1
|
+
import{s as xi,g as di,p as Yt,o as fi,a as pi,b as mi,_ as n,l as Nt,F as yi,e as bi,q as Ai,z as kt,i as wi,B as Ht,D as Ci,W as Si,aH as Ri,a7 as Ot}from"./mermaid.core-524tR-D2.js";import{i as _i}from"./init-Gi6I4Gst.js";import{o as ki}from"./ordinal-B7gl1e82.js";import{l as Wt}from"./linear-Dg9CPt0k.js";import"./vendor-z183l2lP.js";import"./vendor-react-Dka9ZH0B.js";import"./defaultLocale-DX6XiGOO.js";function Ti(e,t,i){e=+e,t=+t,i=(a=arguments.length)<2?(t=e,e=0,1):a<3?1:+i;for(var s=-1,a=Math.max(0,Math.ceil((t-e)/i))|0,o=new Array(a);++s<a;)o[s]=e+s*i;return o}function wt(){var e=ki().unknown(void 0),t=e.domain,i=e.range,s=0,a=1,o,l,p=!1,d=0,k=0,T=.5;delete e.unknown;function _(){var b=t().length,E=a<s,L=E?a:s,P=E?s:a;o=(P-L)/Math.max(1,b-d+k*2),p&&(o=Math.floor(o)),L+=(P-L-o*(b-d))*T,l=o*(1-d),p&&(L=Math.round(L),l=Math.round(l));var I=Ti(b).map(function(m){return L+o*m});return i(E?I.reverse():I)}return e.domain=function(b){return arguments.length?(t(b),_()):t()},e.range=function(b){return arguments.length?([s,a]=b,s=+s,a=+a,_()):[s,a]},e.rangeRound=function(b){return[s,a]=b,s=+s,a=+a,p=!0,_()},e.bandwidth=function(){return l},e.step=function(){return o},e.round=function(b){return arguments.length?(p=!!b,_()):p},e.padding=function(b){return arguments.length?(d=Math.min(1,k=+b),_()):d},e.paddingInner=function(b){return arguments.length?(d=Math.min(1,b),_()):d},e.paddingOuter=function(b){return arguments.length?(k=+b,_()):k},e.align=function(b){return arguments.length?(T=Math.max(0,Math.min(1,b)),_()):T},e.copy=function(){return wt(t(),[s,a]).round(p).paddingInner(d).paddingOuter(k).align(T)},_i.apply(_(),arguments)}var Ct=(function(){var e=n(function(F,h,u,g){for(u=u||{},g=F.length;g--;u[F[g]]=h);return u},"o"),t=[1,10,12,14,16,18,19,21,23],i=[2,6],s=[1,3],a=[1,5],o=[1,6],l=[1,7],p=[1,5,10,12,14,16,18,19,21,23,36,37,38],d=[1,25],k=[1,26],T=[1,28],_=[1,29],b=[1,30],E=[1,31],L=[1,32],P=[1,33],I=[1,34],m=[1,35],D=[1,36],c=[1,37],B=[1,43],W=[1,42],X=[1,47],Y=[1,50],S=[1,10,12,14,16,18,19,21,23,36,37,38],H=[1,10,12,14,16,18,19,21,23,24,26,28,29,36,37,38],A=[1,10,12,14,16,18,19,21,23,24,26,28,29,36,37,38,42,43,44,45,46,47,48,49,50,51],w=[1,65],V=[26,28],R={trace:n(function(){},"trace"),yy:{},symbols_:{error:2,start:3,eol:4,XYCHART:5,chartConfig:6,document:7,CHART_ORIENTATION:8,statement:9,title:10,text:11,X_AXIS:12,parseXAxis:13,Y_AXIS:14,parseYAxis:15,LINE:16,plotData:17,BAR:18,acc_title:19,acc_title_value:20,acc_descr:21,acc_descr_value:22,acc_descr_multiline_value:23,SQUARE_BRACES_START:24,dataPoints:25,SQUARE_BRACES_END:26,dataPoint:27,COMMA:28,NUMBER_WITH_DECIMAL:29,STR:30,xAxisData:31,bandData:32,ARROW_DELIMITER:33,commaSeparatedTexts:34,yAxisData:35,NEWLINE:36,SEMI:37,EOF:38,alphaNum:39,MD_STR:40,alphaNumToken:41,AMP:42,NUM:43,ALPHA:44,PLUS:45,EQUALS:46,MULT:47,DOT:48,BRKT:49,MINUS:50,UNDERSCORE:51,$accept:0,$end:1},terminals_:{2:"error",5:"XYCHART",8:"CHART_ORIENTATION",10:"title",12:"X_AXIS",14:"Y_AXIS",16:"LINE",18:"BAR",19:"acc_title",20:"acc_title_value",21:"acc_descr",22:"acc_descr_value",23:"acc_descr_multiline_value",24:"SQUARE_BRACES_START",26:"SQUARE_BRACES_END",28:"COMMA",29:"NUMBER_WITH_DECIMAL",30:"STR",33:"ARROW_DELIMITER",36:"NEWLINE",37:"SEMI",38:"EOF",40:"MD_STR",42:"AMP",43:"NUM",44:"ALPHA",45:"PLUS",46:"EQUALS",47:"MULT",48:"DOT",49:"BRKT",50:"MINUS",51:"UNDERSCORE"},productions_:[0,[3,2],[3,3],[3,2],[3,1],[6,1],[7,0],[7,2],[9,2],[9,2],[9,2],[9,2],[9,2],[9,3],[9,2],[9,3],[9,2],[9,2],[9,1],[17,3],[25,3],[25,1],[27,2],[27,1],[13,1],[13,2],[13,1],[31,1],[31,3],[32,3],[34,3],[34,1],[15,1],[15,2],[15,1],[35,3],[4,1],[4,1],[4,1],[11,1],[11,1],[11,1],[39,1],[39,2],[41,1],[41,1],[41,1],[41,1],[41,1],[41,1],[41,1],[41,1],[41,1],[41,1]],performAction:n(function(h,u,g,x,C,r,rt){var f=r.length-1;switch(C){case 5:x.setOrientation(r[f]);break;case 9:x.setDiagramTitle(r[f].text.trim());break;case 12:x.setLineData({text:"",type:"text"},r[f]);break;case 13:x.setLineData(r[f-1],r[f]);break;case 14:x.setBarData({text:"",type:"text"},r[f]);break;case 15:x.setBarData(r[f-1],r[f]);break;case 16:this.$=r[f].trim(),x.setAccTitle(this.$);break;case 17:case 18:this.$=r[f].trim(),x.setAccDescription(this.$);break;case 19:this.$=r[f-1];break;case 20:case 30:this.$=[r[f-2],...r[f]];break;case 21:case 31:this.$=[r[f]];break;case 22:this.$={value:Number(r[f-1]),label:r[f]};break;case 23:this.$={value:Number(r[f]),label:""};break;case 24:x.setXAxisTitle(r[f]);break;case 25:x.setXAxisTitle(r[f-1]);break;case 26:x.setXAxisTitle({type:"text",text:""});break;case 27:x.setXAxisBand(r[f]);break;case 28:x.setXAxisRangeData(Number(r[f-2]),Number(r[f]));break;case 29:this.$=r[f-1];break;case 32:x.setYAxisTitle(r[f]);break;case 33:x.setYAxisTitle(r[f-1]);break;case 34:x.setYAxisTitle({type:"text",text:""});break;case 35:x.setYAxisRangeData(Number(r[f-2]),Number(r[f]));break;case 39:this.$={text:r[f],type:"text"};break;case 40:this.$={text:r[f],type:"text"};break;case 41:this.$={text:r[f],type:"markdown"};break;case 42:this.$=r[f];break;case 43:this.$=r[f-1]+""+r[f];break}},"anonymous"),table:[e(t,i,{3:1,4:2,7:4,5:s,36:a,37:o,38:l}),{1:[3]},e(t,i,{4:2,7:4,3:8,5:s,36:a,37:o,38:l}),e(t,i,{4:2,7:4,6:9,3:10,5:s,8:[1,11],36:a,37:o,38:l}),{1:[2,4],9:12,10:[1,13],12:[1,14],14:[1,15],16:[1,16],18:[1,17],19:[1,18],21:[1,19],23:[1,20]},e(p,[2,36]),e(p,[2,37]),e(p,[2,38]),{1:[2,1]},e(t,i,{4:2,7:4,3:21,5:s,36:a,37:o,38:l}),{1:[2,3]},e(p,[2,5]),e(t,[2,7],{4:22,36:a,37:o,38:l}),{11:23,30:d,39:24,40:k,41:27,42:T,43:_,44:b,45:E,46:L,47:P,48:I,49:m,50:D,51:c},{11:39,13:38,24:B,29:W,30:d,31:40,32:41,39:24,40:k,41:27,42:T,43:_,44:b,45:E,46:L,47:P,48:I,49:m,50:D,51:c},{11:45,15:44,29:X,30:d,35:46,39:24,40:k,41:27,42:T,43:_,44:b,45:E,46:L,47:P,48:I,49:m,50:D,51:c},{11:49,17:48,24:Y,30:d,39:24,40:k,41:27,42:T,43:_,44:b,45:E,46:L,47:P,48:I,49:m,50:D,51:c},{11:52,17:51,24:Y,30:d,39:24,40:k,41:27,42:T,43:_,44:b,45:E,46:L,47:P,48:I,49:m,50:D,51:c},{20:[1,53]},{22:[1,54]},e(S,[2,18]),{1:[2,2]},e(S,[2,8]),e(S,[2,9]),e(H,[2,39],{41:55,42:T,43:_,44:b,45:E,46:L,47:P,48:I,49:m,50:D,51:c}),e(H,[2,40]),e(H,[2,41]),e(A,[2,42]),e(A,[2,44]),e(A,[2,45]),e(A,[2,46]),e(A,[2,47]),e(A,[2,48]),e(A,[2,49]),e(A,[2,50]),e(A,[2,51]),e(A,[2,52]),e(A,[2,53]),e(S,[2,10]),e(S,[2,24],{32:41,31:56,24:B,29:W}),e(S,[2,26]),e(S,[2,27]),{33:[1,57]},{11:59,30:d,34:58,39:24,40:k,41:27,42:T,43:_,44:b,45:E,46:L,47:P,48:I,49:m,50:D,51:c},e(S,[2,11]),e(S,[2,32],{35:60,29:X}),e(S,[2,34]),{33:[1,61]},e(S,[2,12]),{17:62,24:Y},{25:63,27:64,29:w},e(S,[2,14]),{17:66,24:Y},e(S,[2,16]),e(S,[2,17]),e(A,[2,43]),e(S,[2,25]),{29:[1,67]},{26:[1,68]},{26:[2,31],28:[1,69]},e(S,[2,33]),{29:[1,70]},e(S,[2,13]),{26:[1,71]},{26:[2,21],28:[1,72]},e(V,[2,23],{30:[1,73]}),e(S,[2,15]),e(S,[2,28]),e(S,[2,29]),{11:59,30:d,34:74,39:24,40:k,41:27,42:T,43:_,44:b,45:E,46:L,47:P,48:I,49:m,50:D,51:c},e(S,[2,35]),e(S,[2,19]),{25:75,27:64,29:w},e(V,[2,22]),{26:[2,30]},{26:[2,20]}],defaultActions:{8:[2,1],10:[2,3],21:[2,2],74:[2,30],75:[2,20]},parseError:n(function(h,u){if(u.recoverable)this.trace(h);else{var g=new Error(h);throw g.hash=u,g}},"parseError"),parse:n(function(h){var u=this,g=[0],x=[],C=[null],r=[],rt=this.table,f="",gt=0,Mt=0,li=2,zt=1,ci=r.slice.call(arguments,1),v=Object.create(this.lexer),$={yy:{}};for(var mt in this.yy)Object.prototype.hasOwnProperty.call(this.yy,mt)&&($.yy[mt]=this.yy[mt]);v.setInput(h,$.yy),$.yy.lexer=v,$.yy.parser=this,typeof v.yylloc>"u"&&(v.yylloc={});var yt=v.yylloc;r.push(yt);var ui=v.options&&v.options.ranges;typeof $.yy.parseError=="function"?this.parseError=$.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function gi(z){g.length=g.length-2*z,C.length=C.length-z,r.length=r.length-z}n(gi,"popStack");function Bt(){var z;return z=x.pop()||v.lex()||zt,typeof z!="number"&&(z instanceof Array&&(x=z,z=x.pop()),z=u.symbols_[z]||z),z}n(Bt,"lex");for(var M,U,O,bt,G={},xt,N,Vt,dt;;){if(U=g[g.length-1],this.defaultActions[U]?O=this.defaultActions[U]:((M===null||typeof M>"u")&&(M=Bt()),O=rt[U]&&rt[U][M]),typeof O>"u"||!O.length||!O[0]){var At="";dt=[];for(xt in rt[U])this.terminals_[xt]&&xt>li&&dt.push("'"+this.terminals_[xt]+"'");v.showPosition?At="Parse error on line "+(gt+1)+`:
|
|
2
2
|
`+v.showPosition()+`
|
|
3
3
|
Expecting `+dt.join(", ")+", got '"+(this.terminals_[M]||M)+"'":At="Parse error on line "+(gt+1)+": Unexpected "+(M==zt?"end of input":"'"+(this.terminals_[M]||M)+"'"),this.parseError(At,{text:v.match,token:this.terminals_[M]||M,line:v.yylineno,loc:yt,expected:dt})}if(O[0]instanceof Array&&O.length>1)throw new Error("Parse Error: multiple actions possible at state: "+U+", token: "+M);switch(O[0]){case 1:g.push(M),C.push(v.yytext),r.push(v.yylloc),g.push(O[1]),M=null,Mt=v.yyleng,f=v.yytext,gt=v.yylineno,yt=v.yylloc;break;case 2:if(N=this.productions_[O[1]][1],G.$=C[C.length-N],G._$={first_line:r[r.length-(N||1)].first_line,last_line:r[r.length-1].last_line,first_column:r[r.length-(N||1)].first_column,last_column:r[r.length-1].last_column},ui&&(G._$.range=[r[r.length-(N||1)].range[0],r[r.length-1].range[1]]),bt=this.performAction.apply(G,[f,Mt,gt,$.yy,O[1],C,r].concat(ci)),typeof bt<"u")return bt;N&&(g=g.slice(0,-1*N*2),C=C.slice(0,-1*N),r=r.slice(0,-1*N)),g.push(this.productions_[O[1]][0]),C.push(G.$),r.push(G._$),Vt=rt[g[g.length-2]][g[g.length-1]],g.push(Vt);break;case 3:return!0}}return!0},"parse")},ot=(function(){var F={EOF:1,parseError:n(function(u,g){if(this.yy.parser)this.yy.parser.parseError(u,g);else throw new Error(u)},"parseError"),setInput:n(function(h,u){return this.yy=u||this.yy||{},this._input=h,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},"setInput"),input:n(function(){var h=this._input[0];this.yytext+=h,this.yyleng++,this.offset++,this.match+=h,this.matched+=h;var u=h.match(/(?:\r\n?|\n).*/g);return u?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),h},"input"),unput:n(function(h){var u=h.length,g=h.split(/(?:\r\n?|\n)/g);this._input=h+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-u),this.offset-=u;var x=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),g.length-1&&(this.yylineno-=g.length-1);var C=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:g?(g.length===x.length?this.yylloc.first_column:0)+x[x.length-g.length].length-g[0].length:this.yylloc.first_column-u},this.options.ranges&&(this.yylloc.range=[C[0],C[0]+this.yyleng-u]),this.yyleng=this.yytext.length,this},"unput"),more:n(function(){return this._more=!0,this},"more"),reject:n(function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true).
|
|
4
4
|
`+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},"reject"),less:n(function(h){this.unput(this.match.slice(h))},"less"),pastInput:n(function(){var h=this.matched.substr(0,this.matched.length-this.match.length);return(h.length>20?"...":"")+h.substr(-20).replace(/\n/g,"")},"pastInput"),upcomingInput:n(function(){var h=this.match;return h.length<20&&(h+=this._input.substr(0,20-h.length)),(h.substr(0,20)+(h.length>20?"...":"")).replace(/\n/g,"")},"upcomingInput"),showPosition:n(function(){var h=this.pastInput(),u=new Array(h.length+1).join("-");return h+this.upcomingInput()+`
|
package/dist/web/index.html
CHANGED
|
@@ -5,15 +5,16 @@
|
|
|
5
5
|
<meta name="viewport" content="width=device-width, initial-scale=1" />
|
|
6
6
|
<link rel="icon" type="image/svg+xml" href="/favicon.svg" />
|
|
7
7
|
<title>Pi-Studio</title>
|
|
8
|
-
<script type="module" crossorigin src="/assets/index-
|
|
9
|
-
<link rel="modulepreload" crossorigin href="/assets/vendor-react-
|
|
10
|
-
<link rel="modulepreload" crossorigin href="/assets/vendor-
|
|
11
|
-
<link rel="modulepreload" crossorigin href="/assets/vendor-
|
|
12
|
-
<link rel="modulepreload" crossorigin href="/assets/vendor-icons-
|
|
13
|
-
<link rel="modulepreload" crossorigin href="/assets/vendor-overlays-
|
|
14
|
-
<link rel="modulepreload" crossorigin href="/assets/vendor-dnd-
|
|
8
|
+
<script type="module" crossorigin src="/assets/index-DjRqFIN0.js"></script>
|
|
9
|
+
<link rel="modulepreload" crossorigin href="/assets/vendor-react-Dka9ZH0B.js">
|
|
10
|
+
<link rel="modulepreload" crossorigin href="/assets/vendor-z183l2lP.js">
|
|
11
|
+
<link rel="modulepreload" crossorigin href="/assets/vendor-query-CDNPrdQ8.js">
|
|
12
|
+
<link rel="modulepreload" crossorigin href="/assets/vendor-icons-CSCeICuX.js">
|
|
13
|
+
<link rel="modulepreload" crossorigin href="/assets/vendor-overlays-DjMT65Ip.js">
|
|
14
|
+
<link rel="modulepreload" crossorigin href="/assets/vendor-dnd-vJGfGIIi.js">
|
|
15
|
+
<link rel="modulepreload" crossorigin href="/assets/vendor-pdfjs-BSchhGel.js">
|
|
15
16
|
<link rel="stylesheet" crossorigin href="/assets/vendor-CEK31ho9.css">
|
|
16
|
-
<link rel="stylesheet" crossorigin href="/assets/index-
|
|
17
|
+
<link rel="stylesheet" crossorigin href="/assets/index-Dg0mhDS9.css">
|
|
17
18
|
</head>
|
|
18
19
|
<body>
|
|
19
20
|
<div id="root"></div>
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@av-pi-studio/web-client",
|
|
3
|
-
"version": "0.0.
|
|
3
|
+
"version": "0.0.118",
|
|
4
4
|
"files": [
|
|
5
5
|
"dist",
|
|
6
6
|
"!dist/**/*.map",
|
|
@@ -9,57 +9,21 @@
|
|
|
9
9
|
"type": "module",
|
|
10
10
|
"scripts": {
|
|
11
11
|
"dev": "vite",
|
|
12
|
-
"build:web": "
|
|
13
|
-
"build:electron": "VITE_TARGET=electron tsc -b && NODE_OPTIONS=--max-old-space-size=6144 VITE_TARGET=electron vite build",
|
|
12
|
+
"build:web": "tsc -b && NODE_OPTIONS=--max-old-space-size=6144 vite build",
|
|
14
13
|
"preview": "vite preview",
|
|
15
14
|
"typecheck": "tsc -p tsconfig.json --noEmit",
|
|
16
15
|
"clean": "rm -rf dist *.tsbuildinfo"
|
|
17
16
|
},
|
|
18
17
|
"devDependencies": {
|
|
19
|
-
"@av-pi-studio/
|
|
20
|
-
"@av-pi-studio/
|
|
21
|
-
"@codemirror/language": "^6.12.4",
|
|
22
|
-
"@codemirror/language-data": "^6.5.2",
|
|
23
|
-
"@codemirror/state": "^6.7.1",
|
|
24
|
-
"@codemirror/view": "^6.43.6",
|
|
25
|
-
"@dnd-kit/core": "^6.3.1",
|
|
26
|
-
"@dnd-kit/sortable": "^10.0.0",
|
|
27
|
-
"@dnd-kit/utilities": "^3.2.2",
|
|
28
|
-
"@floating-ui/react": "^0.27.19",
|
|
29
|
-
"@molviewer/core": "^0.4.6",
|
|
30
|
-
"@radix-ui/react-dialog": "^1.1.18",
|
|
31
|
-
"@radix-ui/react-dropdown-menu": "^2.1.19",
|
|
32
|
-
"@radix-ui/react-popover": "^1.1.18",
|
|
33
|
-
"@radix-ui/react-tooltip": "^1.2.11",
|
|
34
|
-
"@tanstack/react-query": "^5.101.2",
|
|
35
|
-
"@tanstack/react-virtual": "^3.14.5",
|
|
36
|
-
"@testing-library/react": "^16.1.0",
|
|
37
|
-
"@types/qrcode": "^1.5.6",
|
|
18
|
+
"@av-pi-studio/ui-library": "^0.0.118",
|
|
19
|
+
"@av-pi-studio/workbench": "^0.0.118",
|
|
38
20
|
"@types/react": "^19.2.17",
|
|
39
21
|
"@types/react-dom": "^19.2.3",
|
|
40
|
-
"@uiw/codemirror-theme-github": "^4.25.11",
|
|
41
|
-
"@uiw/react-codemirror": "^4.25.11",
|
|
42
22
|
"@vitejs/plugin-react": "^4.7.0",
|
|
43
|
-
"@xterm/addon-fit": "^0.10.0",
|
|
44
|
-
"@xterm/xterm": "^5.5.0",
|
|
45
|
-
"clsx": "^2.1.1",
|
|
46
|
-
"framer-motion": "^11.18.2",
|
|
47
|
-
"katex": "^0.18.4",
|
|
48
|
-
"lucide-react": "^0.475.0",
|
|
49
|
-
"mermaid": "^11.16.1",
|
|
50
23
|
"pdfjs-dist": "^6.4.299",
|
|
51
|
-
"qrcode": "^1.5.4",
|
|
52
24
|
"react": "^19.2.7",
|
|
53
25
|
"react-dom": "^19.2.7",
|
|
54
|
-
"
|
|
55
|
-
"react-router": "^7.18.1",
|
|
56
|
-
"rehype-katex": "^7.0.1",
|
|
57
|
-
"remark-gfm": "^4.0.1",
|
|
58
|
-
"remark-math": "^6.0.0",
|
|
59
|
-
"shiki": "^1.29.2",
|
|
60
|
-
"vite": "^6.4.3",
|
|
61
|
-
"zod": "^3.23.0",
|
|
62
|
-
"zustand": "^5.0.14"
|
|
26
|
+
"vite": "^6.4.3"
|
|
63
27
|
},
|
|
64
28
|
"repository": {
|
|
65
29
|
"type": "git",
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{r as l,j as e}from"./vendor-react-DQUAl2K8.js";import{S as d,B as a}from"./index-CchwjcLZ.js";import{u as m}from"./use-file-download-8zPww5m-.js";import{F as c}from"./vendor-icons-Bh5CT32q.js";import"./vendor-query-i7fr__Xm.js";import"./vendor-DaF96HbP.js";import"./vendor-overlays-3MkedLFU.js";import"./vendor-dnd-CayJj8TC.js";const p="_wrap_inn1j_1",j="_name_inn1j_12",n={wrap:p,name:j};function z({path:s,workspaceCwd:f}){const[i,t]=l.useState(!1),r=m(s,i),o=s.split("/").pop()||s;return e.jsxs("div",{className:n.wrap,children:[e.jsx(c,{size:32}),e.jsx("div",{className:n.name,children:o}),e.jsx("div",{children:"No preview available for this file type."}),r.isError&&e.jsxs("div",{children:["Error: ",r.error instanceof Error?r.error.message:"download failed"]}),i&&r.isLoading?e.jsx(d,{size:"sm"}):r.data?e.jsx("a",{href:r.data.objectUrl,download:r.data.fileName||o,children:e.jsx(a,{size:"sm",children:"Save file"})}):e.jsx(a,{size:"sm",onClick:()=>t(!0),children:"Download"})]})}export{z as BinaryFallbackViewer};
|
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
import{r as h,j as t}from"./vendor-react-DQUAl2K8.js";import{a as cn,b as ln,m as dn,u as Le}from"./vendor-query-i7fr__Xm.js";import{Q as Be,R as M,U as un,u as J,W as mn,I as O,X as fn,Y as pn,B as z,q as hn,Z as _t,S as ne,J as _n,D as gn,s as xn,_ as gt,p as xt,n as kt,$ as kn,a0 as vn,a1 as jn,o as vt,a2 as yn,E as bn,a3 as ve,r as Oe,a4 as Ie,a5 as Nn,a6 as fe,h as Sn,a7 as Cn,a8 as ke,a9 as wn,aa as Dn,ab as Tn,ac as rt,ad as En,K as Bn,ae as Rn,af as An,ag as it,ah as Ln,P as ct}from"./index-CchwjcLZ.js";import{L as On,G as In,S as Pn,e as qn,P as zn,f as Fn,g as jt,h as ye,c as pe,B as Mn,i as yt,C as he,A as $n,j as Kn,k as Hn,U as Wn,l as bt,m as Un,n as Gn,o as Vn,p as Xn,q as lt,r as Yn,N as Jn,s as Qn,t as Zn}from"./vendor-icons-Bh5CT32q.js";import{u as es}from"./use-provider-auth-list-CPbr4xbh.js";import{N as w}from"./vendor-DaF96HbP.js";import{S as Nt,M as Pe,r as ts}from"./markdown-2gm-29tf.js";import{D as ns,p as ss}from"./DiffView-D1TsZBGe.js";import{R as qe,T as ze,I as St}from"./vendor-overlays-3MkedLFU.js";import"./vendor-dnd-CayJj8TC.js";import"./vendor-highlight-Ddi_n-Jh.js";import"./vendor-markdown-DJUOT8ep.js";import"./href-resolution-CSqTI9Vm.js";function Ct(e,n){if(n.trim()==="")return e;const s=n.toLowerCase();return e.filter(o=>o.label.toLowerCase().includes(s)||o.description!==void 0&&o.description.toLowerCase().includes(s))}const os={shell:jt,read:Fn,edit:zn,write:qn,search:Pn,fetch:In,task:On};function as(e){return os[e.kind]??jt}function wt(e){switch(e.kind){case"read":case"write":case"edit":return e.path??null;default:return null}}function rs(e){return e.kind==="write"||e.kind==="edit"||e.kind==="shell"}function is(e){const n=[];if(e.kind==="edit"&&e.diff)n.push({kind:"diff",patch:e.diff});else{const s=Be(e);s&&n.push({kind:"code",text:s})}return e.output&&n.push({kind:"code",text:e.output}),n}const dt={shell:{label:"SHELL",token:"statusInfo"},read:{label:"READ",token:"statusInfo"},write:{label:"WRITE",token:"statusSuccess"},edit:{label:"EDIT",token:"statusWarning"},search:{label:"SEARCH",token:"statusInfo"},fetch:{label:"FETCH",token:"statusInfo"},task:{label:"TASK",token:"foregroundMuted"}};function cs(e){return dt[e.kind]??dt.task}function ls(e){if(!e)return{added:0,removed:0};let n=0,s=0;for(const o of e.split(`
|
|
2
|
-
`))o.startsWith("+++")||o.startsWith("---")||(o.startsWith("+")?n++:o.startsWith("-")&&s++);return{added:n,removed:s}}function ds(e){return e?(e.endsWith(`
|
|
3
|
-
`)?e.slice(0,-1):e).split(`
|
|
4
|
-
`).length:0}const us=500;let we;function ms(e,n,s,o){clearTimeout(we),we=setTimeout(()=>{we=void 0,e.invalidateQueries({queryKey:["file"]}),e.invalidateQueries({queryKey:["explorer"]}),n&&s&&n.connection.request("checkout_refresh_request",{cwd:s}).catch(()=>{})},us)}function fs({sessionId:e,event:n,timestamp:s,client:o,queryClient:a}){const i=M.getState();switch(i.applyStreamEvent(e,n,s),n.kind){case"turn_started":i.setStatus(e,"running");break;case"turn_completed":i.setStatus(e,"idle");break;case"turn_failed":i.setStatus(e,"error");break;case"turn_canceled":i.setStatus(e,"idle");break;case"compaction":n.phase==="completed"&&n.estimatedTokensAfter!==void 0&&un(e,n.estimatedTokensAfter);break;case"tool_call":{if(n.status==="completed"&&rs(n.tool)){const c=i.sessions[e],l=(c==null?void 0:c.cwd)||null;ms(a,o,l,wt(n.tool))}break}}}function ps(e){const n=J(a=>a.client),s=M(a=>{var i;return((i=a.sessions[e])==null?void 0:i.agentId)??null}),o=cn();h.useEffect(()=>!n||!s?void 0:n.agent(s).timeline.subscribe((i,c)=>{const l=typeof c.timestamp=="number"?new Date(c.timestamp).toISOString():c.timestamp;fs({sessionId:e,event:i,timestamp:l,client:n,queryClient:o})}),[n,s,e,o])}const Dt=64;function De(e){return e.clientHeight>0}function hs(e,n,s,o=Dt){switch(n.kind){case"scroll":return De(s)?s.scrollHeight-s.scrollTop-s.clientHeight<=o?{pinned:!0,stick:!1}:{pinned:n.gesture?!1:e,stick:!1}:{pinned:e,stick:!1};case"tail":return{pinned:e,stick:e&&De(s)};case"shown":return{pinned:e,stick:e};case"pin":return{pinned:!0,stick:De(s)}}}function _s(e){const n=e[e.length-1];return(n==null?void 0:n.kind)==="user"?n.id:null}const gs="_shellRow_1kabp_2",xs="_rail_1kabp_10",ks="_disc_1kabp_18",vs="_connector_1kabp_28",js="_content_1kabp_2",ys="_metaLine_1kabp_40",bs="_metaTime_1kabp_52",Ns="_forkButton_1kabp_66",U={shellRow:gs,rail:xs,disc:ks,connector:vs,content:js,metaLine:ys,metaTime:bs,forkButton:Ns};function X({disc:e,discClassName:n,connector:s,meta:o,metaTrailing:a,className:i,children:c}){return t.jsxs("div",{className:U.shellRow,children:[t.jsxs("div",{className:U.rail,children:[t.jsx("span",{className:w(U.disc,n),children:e}),s&&t.jsx("span",{className:U.connector})]}),t.jsxs("div",{className:w(U.content,i),children:[o&&t.jsxs("div",{className:U.metaLine,children:[o,a]}),c]})]})}function ut(e){return typeof e=="number"?e:Date.parse(e)}function Ss(e,n){const s=ut(e.entry.createdAt),o=ut(n.entry.createdAt);return s!==o?s-o:e.entry.requestId<n.entry.requestId?-1:e.entry.requestId>n.entry.requestId?1:0}function Cs(e,n){return[...e.map(o=>({kind:"pending",entry:o})),...n.map(o=>({kind:"resolved",entry:o}))].toSorted(Ss)}function ws(e){return e.entry.requestId}function Tt(e){return e.receivedAt===void 0}const Ds=4;function Ts(e,n){let s=0;const o=e.map(l=>l.kind!=="pending"?{item:l,collapsed:!1}:(s++,{item:l,collapsed:!n&&s>Ds})),a=o.filter(l=>l.collapsed).length,i=o.findIndex(l=>l.collapsed),c=[];return o.forEach((l,m)=>{m===i&&c.push({kind:"more",count:a}),c.push({kind:"card",item:l.item,collapsed:l.collapsed})}),c}function Es(e,n){if(e.timeoutMs===void 0)return{show:!1,fraction:0,approximate:!1};const s=mn(e,n)??0;return{show:!0,fraction:Math.max(0,Math.min(1,s/e.timeoutMs)),approximate:e.receivedAt===void 0}}function Et(e){return e==="editor"}const Bs="Esc again to dismiss — the extension gets an empty answer";function Rs(e,n){return n?{kind:"warning",text:Bs}:{kind:"keys",segments:[{key:Et(e)?"⇧↵":"↵",label:"submit"},{key:"Esc",label:"dismiss"}]}}function As(e){return e?{armed:!1,resolve:!0}:{armed:!0,resolve:!1}}const Ls=5,Os=40,Is=6;function Ps(e){return{mode:e.length>=Ls||e.some(s=>s.length>Os)?"stack":"row",scrolls:e.length>Is}}function Re(e){const n=e.split(`
|
|
5
|
-
`),s=[];let o=!1;for(const a of n)if(a===""){if(o)continue;o=!0,s.push("")}else o=!1,s.push(a);return s}function qs(e,n){return{title:Re(e),...n!==void 0?{message:Re(n)}:{}}}const zs="_askDisc_ffqf1_5",Fs="_card_ffqf1_9",Ms="_cardInert_ffqf1_41",$s="_askDiscInert_ffqf1_47",Ks="_reconnectingNote_ffqf1_52",Hs="_reconnectingDot_ffqf1_61",Ws="_deadlineBar_ffqf1_71",Us="_deadlineApproximate_ffqf1_80",Gs="_header_ffqf1_85",Vs="_askBadge_ffqf1_16",Xs="_methodName_ffqf1_101",Ys="_title_ffqf1_107",Js="_titleEmphasised_ffqf1_115",Qs="_message_ffqf1_119",Zs="_emptyOptionsNote_ffqf1_127",eo="_controls_ffqf1_133",to="_controlsStack_ffqf1_141",no="_controlsScroll_ffqf1_148",so="_optionButton_ffqf1_153",oo="_field_ffqf1_161",ao="_editorField_ffqf1_168",ro="_rawPayload_ffqf1_176",io="_resolvedCard_ffqf1_190",co="_askBadgeNeutral_ffqf1_204",lo="_resolvedMethodName_ffqf1_209",uo="_outcome_ffqf1_218",mo="_outcomeSuccess_ffqf1_229",fo="_outcomeText_ffqf1_233",po="_hint_ffqf1_255",ho="_hintKey_ffqf1_270",_o="_hintSep_ffqf1_278",go="_recoveredChip_ffqf1_285",xo="_collapsedPendingCard_ffqf1_297",ko="_moreRow_ffqf1_303",g={askDisc:zs,card:Fs,cardInert:Ms,askDiscInert:$s,reconnectingNote:Ks,reconnectingDot:Hs,deadlineBar:Ws,deadlineApproximate:Us,header:Gs,askBadge:Vs,methodName:Xs,title:Ys,titleEmphasised:Js,message:Qs,emptyOptionsNote:Zs,controls:eo,controlsStack:to,controlsScroll:no,optionButton:so,field:oo,editorField:ao,rawPayload:ro,resolvedCard:io,askBadgeNeutral:co,resolvedMethodName:lo,outcome:uo,outcomeSuccess:mo,outcomeText:fo,hint:po,hintKey:ho,hintSep:_o,recoveredChip:go,collapsedPendingCard:xo,moreRow:ko},vo=250,jo=320;function se(e,n){const s=e[n];return typeof s=="string"?s:void 0}function yo(e,n){const s=e[n];return Array.isArray(s)?s.filter(o=>typeof o=="string"):[]}function bo({item:e,connector:n,collapsed:s=!1,autoFocus:o=!1,sessionTitle:a}){return e.kind==="resolved"?t.jsx(Co,{entry:e.entry,connector:n}):s?t.jsx(No,{entry:e.entry,connector:n}):t.jsx(Do,{entry:e.entry,connector:n,autoFocus:o,sessionTitle:a})}function Bt(){return t.jsx("span",{className:g.recoveredChip,children:"still waiting"})}function No({entry:e,connector:n}){return t.jsx(X,{disc:t.jsx(O,{icon:ye,size:"xs",color:"var(--pi-color-statusWarning)"}),discClassName:g.askDisc,connector:n,children:t.jsxs("div",{className:w(g.resolvedCard,g.collapsedPendingCard),children:[t.jsx("span",{className:g.askBadge,children:"ASK"}),t.jsx("span",{className:g.resolvedMethodName,children:e.method}),Tt(e)&&t.jsx(Bt,{})]})})}function So({count:e,connector:n,onExpand:s}){return t.jsx(X,{disc:t.jsx(O,{icon:ye,size:"xs",color:"var(--pi-color-foregroundMuted)"}),discClassName:g.askDiscInert,connector:n,children:t.jsxs("button",{type:"button",className:g.moreRow,onClick:s,children:[e," more waiting"]})})}function Co({entry:e,connector:n}){const s=fn(e);return t.jsx(X,{disc:t.jsx(O,{icon:ye,size:"xs",color:"var(--pi-color-foregroundMuted)"}),discClassName:g.askDiscInert,connector:n,children:t.jsxs("div",{className:g.resolvedCard,children:[t.jsx("span",{className:w(g.askBadge,g.askBadgeNeutral),children:"ASK"}),t.jsx("span",{className:g.resolvedMethodName,children:e.method}),t.jsxs("span",{className:w(g.outcome,s.tone==="success"&&g.outcomeSuccess),children:[s.glyph==="check"&&t.jsx(pe,{size:11,"aria-hidden":!0}),t.jsx("span",{className:w(s.truncate&&g.outcomeText),children:s.text})]})]})})}function Q(e,n){return e.answerable?e.submitting?n?{loading:!0,style:{opacity:1}}:{disabled:!0}:{}:{disabled:!0,style:{opacity:1}}}function wo({hint:e}){return e.kind==="warning"?t.jsx("p",{className:g.hint,children:e.text}):t.jsx("p",{className:g.hint,children:e.segments.map((n,s)=>t.jsxs(h.Fragment,{children:[s>0&&t.jsx("span",{className:g.hintSep,children:"·"}),t.jsx("span",{className:g.hintKey,children:n.key}),n.label]},n.label))})}function Do({entry:e,connector:n,autoFocus:s=!1,sessionTitle:o}){const[a,i]=h.useState(()=>Date.now()),c=Es(e,a),[l,m]=h.useState(!1),u=h.useRef(null),f=h.useRef(null),d=h.useRef(null);h.useEffect(()=>{if(!c.show)return;const b=setInterval(()=>i(Date.now()),vo);return()=>clearInterval(b)},[e.requestId,e.timeoutMs,c.show]),h.useEffect(()=>{var B,A;if(!s||!e.answerable)return;const b=document.activeElement;(b instanceof HTMLTextAreaElement||b instanceof HTMLInputElement)&&b.value.length>0&&!((B=u.current)!=null&&B.contains(b))||(A=f.current)==null||A.focus()},[s,e.answerable]);function x(b){var N,B;e.answerable&&(b.target.closest("button, input, textarea, a, select")||(N=u.current)!=null&&N.contains(document.activeElement)||(B=u.current)==null||B.focus())}function D(b){pn(e.requestId,b)}function q(b){var B;if(b.key!=="Escape"||!e.answerable)return;b.preventDefault(),b.stopPropagation();const N=As(l);if(m(N.armed),!N.resolve){(B=d.current)==null||B.focus();return}d.current?d.current.click():D({cancelled:!0})}function G(b){b.currentTarget.contains(b.relatedTarget)||m(!1)}return t.jsxs(X,{disc:t.jsx(O,{icon:ye,size:"xs",color:e.answerable?"var(--pi-color-statusWarning)":"var(--pi-color-foregroundMuted)"}),discClassName:e.answerable?g.askDisc:g.askDiscInert,connector:n,children:[t.jsxs("div",{ref:u,className:w(g.card,!e.answerable&&g.cardInert),role:"group","aria-label":`Question in ${o}`,tabIndex:-1,onKeyDown:q,onMouseDown:x,onBlur:G,children:[c.show&&t.jsx("div",{className:w(g.deadlineBar,c.approximate&&g.deadlineApproximate),style:{width:`${c.fraction*100}%`}}),t.jsxs("div",{className:g.header,children:[t.jsx("span",{className:w(g.askBadge,!e.answerable&&g.askBadgeNeutral),"aria-hidden":"true",children:"ASK"}),t.jsx("span",{className:g.methodName,children:e.method}),Tt(e)&&t.jsx(Bt,{})]}),t.jsx(To,{entry:e,onSubmit:D,primaryRef:f,dismissRef:d})]}),t.jsx(wo,{hint:Rs(e.method,l)}),!e.answerable&&t.jsxs("p",{className:g.reconnectingNote,children:[t.jsx("span",{className:g.reconnectingDot}),"Reconnecting — you can answer again in a moment"]})]})}function To({entry:e,onSubmit:n,primaryRef:s,dismissRef:o}){const{method:a,payload:i}=e;return a==="select"?t.jsx(Eo,{entry:e,payload:i,onSubmit:n,primaryRef:s,dismissRef:o}):a==="confirm"?t.jsx(Bo,{entry:e,payload:i,onSubmit:n,primaryRef:s,dismissRef:o}):a==="input"?t.jsx(Ro,{entry:e,payload:i,onSubmit:n,primaryRef:s}):a==="editor"?t.jsx(Ao,{entry:e,payload:i,onSubmit:n,primaryRef:s,dismissRef:o}):t.jsx(Lo,{entry:e,method:a,payload:i,onSubmit:n,primaryRef:s,dismissRef:o})}function je({text:e}){return t.jsx("div",{className:g.title,children:Re(e).join(`
|
|
6
|
-
`)})}function Eo({entry:e,payload:n,onSubmit:s,primaryRef:o,dismissRef:a}){const i=se(n,"title")??"",c=yo(n,"options"),[l,m]=h.useState(null);if(c.length===0){const f=Q(e,l===0);return t.jsxs(t.Fragment,{children:[t.jsx(je,{text:i}),t.jsx("p",{className:g.emptyOptionsNote,children:"The extension offered no options."}),t.jsx("div",{className:g.controls,children:t.jsx(z,{ref:d=>{o.current=d,a.current=d},size:"xs",variant:"secondary",onClick:()=>{m(0),s({cancelled:!0})},...f,children:"Cancel"})})]})}const u=Ps(c);return t.jsxs(t.Fragment,{children:[t.jsx(je,{text:i}),t.jsx("div",{className:w(g.controls,u.mode==="stack"&&g.controlsStack,u.scrolls&&g.controlsScroll),children:c.map((f,d)=>t.jsx(z,{ref:d===0?x=>{o.current=x}:void 0,size:"xs",variant:"secondary",className:g.optionButton,onClick:()=>{m(d),s({value:f})},...Q(e,l===d),children:f},d))})]})}function Bo({entry:e,payload:n,onSubmit:s,primaryRef:o,dismissRef:a}){const i=se(n,"title")??"",c=se(n,"message"),l=qs(i,c),[m,u]=h.useState(null);return t.jsxs(t.Fragment,{children:[t.jsx("div",{className:w(g.title,l.message&&g.titleEmphasised),children:l.title.join(`
|
|
7
|
-
`)}),l.message&&t.jsx("div",{className:g.message,children:l.message.join(`
|
|
8
|
-
`)}),t.jsxs("div",{className:g.controls,children:[t.jsx(z,{ref:f=>{o.current=f},size:"xs",variant:"default",onClick:()=>{u("yes"),s({confirmed:!0})},...Q(e,m==="yes"),children:"Yes"}),t.jsx(z,{ref:f=>{a.current=f},size:"xs",variant:"secondary",onClick:()=>{u("no"),s({confirmed:!1})},...Q(e,m==="no"),children:"No"})]})]})}function Ro({entry:e,payload:n,onSubmit:s,primaryRef:o}){const a=se(n,"title")??"",i=se(n,"placeholder"),[c,l]=h.useState(""),m=Q(e,e.submitting===!0),u=m.disabled===!0||m.loading===!0;return t.jsxs(t.Fragment,{children:[t.jsx(je,{text:a}),t.jsxs("div",{className:g.controls,children:[t.jsx(hn,{ref:f=>{o.current=f},className:g.field,value:c,placeholder:i,disabled:u,onChange:f=>l(f.target.value),onKeyDown:f=>{f.key!=="Enter"||u||(f.preventDefault(),f.stopPropagation(),s({value:c}))}}),t.jsx(z,{size:"xs",variant:"default",onClick:()=>s({value:c}),...m,children:"Submit"})]})]})}function Ao({entry:e,payload:n,onSubmit:s,primaryRef:o,dismissRef:a}){const i=se(n,"title")??"",c=se(n,"prefill")??"",[l,m]=h.useState(c),[u,f]=h.useState(null);return t.jsxs(t.Fragment,{children:[t.jsx(je,{text:i}),t.jsx(_t,{ref:d=>{o.current=d},className:g.editorField,rows:3,value:l,disabled:!e.answerable||e.submitting,onChange:d=>{m(d.target.value);const x=d.target;x.style.height="auto",x.style.height=`${Math.min(x.scrollHeight,jo)}px`},onKeyDown:d=>{d.key!=="Enter"||d.shiftKey!==Et(e.method)||(d.preventDefault(),d.stopPropagation(),f("submit"),s({value:l}))}}),t.jsxs("div",{className:g.controls,children:[t.jsx(z,{size:"xs",variant:"default",onClick:()=>{f("submit"),s({value:l})},...Q(e,u==="submit"),children:"Submit"}),t.jsx(z,{ref:d=>{a.current=d},size:"xs",variant:"secondary",onClick:()=>{f("cancel"),s({cancelled:!0})},...Q(e,u==="cancel"),children:"Cancel"})]})]})}function Lo({entry:e,method:n,payload:s,onSubmit:o,primaryRef:a,dismissRef:i}){const c={method:n,...s},l=Q(e,e.submitting===!0);return t.jsxs(t.Fragment,{children:[t.jsx("p",{className:g.title,children:"This extension asked something this version of Pi-Studio can't display."}),t.jsx("pre",{className:g.rawPayload,children:JSON.stringify(c,null,2)}),t.jsx("div",{className:g.controls,children:t.jsx(z,{ref:m=>{a.current=m,i.current=m},size:"xs",variant:"secondary",onClick:()=>o({cancelled:!0}),...l,children:"Cancel"})})]})}function mt(e){if(e===void 0)return null;const n=typeof e=="number"?e:Date.parse(e);return Number.isNaN(n)?null:n}function Oo(e,n,s,o){if(n.length===0)return e.map(s);const a=[];let i=0;const c=l=>{for(;i<e.length;){const m=e[i];if(m===void 0)break;if(l!==null){const u=mt(m.timestamp);if(u!==null&&u>l)break}a.push(s(m)),i++}};for(const l of n){if(l.kind==="more"){a.push(o(l));continue}c(mt(l.item.entry.createdAt)),a.push(o(l))}for(;i<e.length;i++){const l=e[i];l!==void 0&&a.push(s(l))}return a}function Io(e,n){return!e||n===void 0?!1:n.every(s=>s.configured===!1)}const Po=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"];function ft(e){return String(e).padStart(2,"0")}function Fe(e){if(!e)return;const n=new Date(e);if(!Number.isNaN(n.getTime()))return`${Po[n.getMonth()]} ${n.getDate()}, ${ft(n.getHours())}:${ft(n.getMinutes())}`}const qo="_queuedBadge_1mki8_8",zo="_finalChip_1mki8_20",Fo="_userDisc_1mki8_30",Mo="_userAligned_1mki8_34",$o="_userPendingRow_1mki8_40",Ko="_userBubble_1mki8_44",Ho="_userBubbleFailed_1mki8_58",Wo="_userImages_1mki8_63",Uo="_userImage_1mki8_63",Go="_imageDialog_1mki8_79",Vo="_imageDialogPreview_1mki8_83",Xo="_assistantDisc_1mki8_93",Yo="_assistantBody_1mki8_97",Jo="_reasoningDisc_1mki8_108",Qo="_reasoningBody_1mki8_112",Zo="_toolDisc_1mki8_123",ea="_toolCardBody_1mki8_127",ta="_toolCardBodyRunning_1mki8_134",na="_toolCardBodyCompleted_1mki8_138",sa="_toolCardBodyCanceled_1mki8_142",oa="_toolCardBodyError_1mki8_146",aa="_toolHeader_1mki8_150",ra="_toolHeaderRunning_1mki8_176",ia="_toolChevron_1mki8_186",ca="_toolChevronOpen_1mki8_192",la="_kindBadge_1mki8_196",da="_toolPath_1mki8_208",ua="_toolTrailing_1mki8_217",ma="_toolStatusRunning_1mki8_225",fa="_toolStatusSuccess_1mki8_232",pa="_toolStatusError_1mki8_236",ha="_toolStatusUnknown_1mki8_240",_a="_toolDiffAdded_1mki8_244",ga="_toolDiffRemoved_1mki8_248",xa="_toolOpenButton_1mki8_252",ka="_toolLiveTail_1mki8_270",va="_toolBody_1mki8_277",ja="_toolCode_1mki8_283",ya="_toolOutputStrip_1mki8_294",ba="_toolDiffPreview_1mki8_304",Na="_toolDiffPreviewLine_1mki8_312",Sa="_toolDiffPreviewAdd_1mki8_316",Ca="_toolDiffPreviewDel_1mki8_321",wa="_toolDiffPreviewMore_1mki8_326",Da="_errorDisc_1mki8_333",Ta="_errorCard_1mki8_337",Ea="_errorLead_1mki8_346",Ba="_systemRow_1mki8_353",Ra="_compactionRow_1mki8_362",Aa="_compactionRowFailed_1mki8_368",La="_compactionDivider_1mki8_372",Oa="_compactionRule_1mki8_378",Ia="_compactionLabel_1mki8_384",Pa="_compactionText_1mki8_391",qa="_compactionToggle_1mki8_397",za="_compactionSummary_1mki8_414",p={queuedBadge:qo,finalChip:zo,userDisc:Fo,userAligned:Mo,userPendingRow:$o,userBubble:Ko,userBubbleFailed:Ho,userImages:Wo,userImage:Uo,imageDialog:Go,imageDialogPreview:Vo,assistantDisc:Xo,assistantBody:Yo,reasoningDisc:Jo,reasoningBody:Qo,toolDisc:Zo,toolCardBody:ea,toolCardBodyRunning:ta,toolCardBodyCompleted:na,toolCardBodyCanceled:sa,toolCardBodyError:oa,toolHeader:aa,toolHeaderRunning:ra,toolChevron:ia,toolChevronOpen:ca,kindBadge:la,toolPath:da,toolTrailing:ua,toolStatusRunning:ma,toolStatusSuccess:fa,toolStatusError:pa,toolStatusUnknown:ha,toolDiffAdded:_a,toolDiffRemoved:ga,toolOpenButton:xa,toolLiveTail:ka,toolBody:va,toolCode:ja,toolOutputStrip:ya,toolDiffPreview:ba,toolDiffPreviewLine:Na,toolDiffPreviewAdd:Sa,toolDiffPreviewDel:Ca,toolDiffPreviewMore:wa,errorDisc:Da,errorCard:Ta,errorLead:Ea,systemRow:Ba,compactionRow:Ra,compactionRowFailed:Aa,compactionDivider:La,compactionRule:Oa,compactionLabel:Ia,compactionText:Pa,compactionToggle:qa,compactionSummary:za};function Fa({row:e,assetBase:n=null,owningPaneId:s=null,workspaceCwd:o=null,connector:a}){const i=Fe(e.timestamp);return t.jsx(X,{disc:t.jsx(O,{icon:Mn,size:"xs",color:"var(--pi-color-accentForeground)"}),discClassName:p.assistantDisc,connector:a,meta:t.jsxs(t.Fragment,{children:["Assistant",i&&t.jsxs("span",{className:U.metaTime,children:[" · ",i]})]}),children:t.jsx("div",{className:p.assistantBody,children:e.streaming?t.jsx(Nt,{text:e.text,assetBase:n,owningPaneId:s,workspaceCwd:o}):t.jsx(Pe,{text:e.text,assetBase:n,owningPaneId:s,workspaceCwd:o})})})}function Ma({row:e,owningPaneId:n=null,workspaceCwd:s=null,connector:o}){const a=Fe(e.timestamp);return t.jsx(X,{disc:t.jsx(O,{icon:yt,size:"xs",color:"var(--pi-color-foregroundMuted)"}),discClassName:p.reasoningDisc,connector:o,meta:t.jsxs(t.Fragment,{children:["Reasoning",a&&t.jsxs("span",{className:U.metaTime,children:[" · ",a]})]}),metaTrailing:!e.streaming&&t.jsx("span",{className:p.finalChip,children:"final"}),children:t.jsx("div",{className:p.reasoningBody,children:e.streaming?t.jsx(Nt,{text:e.text,owningPaneId:n,workspaceCwd:s}):t.jsx(Pe,{text:e.text,owningPaneId:n,workspaceCwd:s})})})}const $a=12;function Ka(e,n=$a){const s=e.replace(/\r?\n$/,"").split(/\r?\n/);return s.length<=n?s.join(`
|
|
9
|
-
`):s.slice(-n).join(`
|
|
10
|
-
`)}function Ha(e){const n=ss(e).filter(o=>o.kind==="add"||o.kind==="del"),s=n[0];return s?{text:s.text,kind:s.kind,moreCount:n.length-1}:null}function Wa(e){return e.status==="completed"?t.jsx("span",{className:p.toolStatusSuccess,children:"✓ completed"}):e.status==="error"?t.jsx("span",{className:p.toolStatusError,children:e.statusText||"error"}):e.status==="canceled"?t.jsx("span",{className:p.toolStatusUnknown,children:e.statusText||"canceled"}):e.statusText&&e.statusText!=="running"?t.jsx("span",{className:p.toolStatusUnknown,children:e.statusText}):t.jsxs("span",{className:p.toolStatusRunning,children:[t.jsx(ne,{size:"xs",color:"var(--pi-color-accentBright)"}),"running"]})}function Ua({row:e,assetBase:n=null,owningPaneId:s=null,workspaceCwd:o=null,connector:a}){const[i,c]=h.useState(!1),l=cs(e.tool),m=is(e.tool),u=m.length>0,f=ds(e.tool.output),d=e.tool.kind==="edit"||e.tool.kind==="write"?wt(e.tool):null,x=e.tool.kind==="edit"?ls(e.tool.diff):null,D=e.tool.kind==="edit"&&e.tool.diff&&!i?Ha(e.tool.diff):null;function q(){u&&c(N=>!N)}function G(N){N.target===N.currentTarget&&(N.key==="Enter"||N.key===" ")&&(N.preventDefault(),q())}function b(N){if(N.stopPropagation(),!d)return;const B=ts(n,s,o);_n(d,B.workspaceCwd,B.targetPaneId)}return t.jsx(X,{disc:t.jsx(O,{icon:as(e.tool),size:"xs",color:"var(--pi-color-foregroundMuted)"}),discClassName:p.toolDisc,connector:a,children:t.jsxs("div",{className:w(p.toolCardBody,e.status==="running"&&p.toolCardBodyRunning,e.status==="completed"&&p.toolCardBodyCompleted,e.status==="error"&&p.toolCardBodyError,e.status==="canceled"&&p.toolCardBodyCanceled),children:[t.jsxs("div",{role:"button",tabIndex:u?0:-1,"aria-expanded":u?i:void 0,"aria-disabled":!u,className:w(p.toolHeader,e.status==="running"&&p.toolHeaderRunning),onClick:q,onKeyDown:G,children:[u&&t.jsx(he,{size:12,className:w(p.toolChevron,i&&p.toolChevronOpen)}),t.jsx("span",{className:p.kindBadge,style:{"--kindToken":`var(--pi-color-${l.token})`},children:l.label}),t.jsx("span",{className:p.toolPath,title:Be(e.tool),children:Be(e.tool)}),t.jsxs("span",{className:p.toolTrailing,children:[x&&(x.added>0||x.removed>0)&&t.jsxs(t.Fragment,{children:[t.jsxs("span",{className:p.toolDiffAdded,children:["+",x.added]}),t.jsxs("span",{className:p.toolDiffRemoved,children:["−",x.removed]})]}),Wa(e),d&&t.jsxs("button",{type:"button",className:p.toolOpenButton,onClick:b,onKeyDown:N=>N.stopPropagation(),children:["Open",t.jsx($n,{size:10})]})]})]}),e.status==="running"&&e.tool.output&&t.jsx("pre",{className:w(p.toolCode,p.toolLiveTail),children:Ka(e.tool.output)}),f>0&&t.jsxs("div",{className:p.toolOutputStrip,children:["output · ",f," lines"]}),D&&t.jsxs("div",{className:p.toolDiffPreview,children:[t.jsx("div",{className:w(p.toolDiffPreviewLine,D.kind==="add"?p.toolDiffPreviewAdd:p.toolDiffPreviewDel),children:D.text}),D.moreCount>0&&t.jsxs("div",{className:p.toolDiffPreviewMore,children:["… ",D.moreCount," more lines"]})]}),i&&u&&t.jsx("div",{className:p.toolBody,children:m.map((N,B)=>N.kind==="diff"?t.jsx(ns,{patch:N.patch},B):t.jsx("pre",{className:p.toolCode,children:N.text},B))})]})})}const Ga="Fork from here",Va="Fork conversation from this message";function Xa({row:e,connector:n,onFork:s}){const[o,a]=h.useState(null),i=Fe(e.timestamp);return t.jsxs(X,{disc:t.jsx(O,{icon:Wn,size:"xs",color:"var(--pi-color-successForeground)"}),discClassName:p.userDisc,connector:n,className:w(p.userAligned,e.pending&&p.userPendingRow),meta:t.jsxs(t.Fragment,{children:["You",i&&t.jsxs("span",{className:U.metaTime,children:[" · ",i]}),e.failed&&" · failed to send"]}),metaTrailing:t.jsxs(t.Fragment,{children:[e.queued&&!e.failed&&t.jsxs("span",{className:p.queuedBadge,children:[t.jsx(Kn,{size:9}),"queued"]}),s&&t.jsx(xn,{className:U.forkButton,hoverBase:"var(--pi-color-surface3)",title:Ga,"aria-label":Va,onClick:s,children:t.jsx(Hn,{size:13,strokeWidth:1.8,"aria-hidden":"true"})})]}),children:[t.jsx("span",{className:w(p.userBubble,e.failed&&p.userBubbleFailed),children:e.text}),e.images&&e.images.length>0&&t.jsx("div",{className:p.userImages,children:e.images.map((c,l)=>{const m=`data:${c.mimeType??"image/png"};base64,${c.data??""}`;return t.jsx("img",{className:p.userImage,src:m,alt:"",role:"button",tabIndex:0,onClick:()=>a(m),onKeyDown:u=>{(u.key==="Enter"||u.key===" ")&&a(m)}},l)})}),t.jsx(gn,{open:o!==null,onOpenChange:c=>{c||a(null)},title:"Image",width:"auto",bare:!0,className:p.imageDialog,children:o&&t.jsx("img",{className:p.imageDialogPreview,src:o,alt:""})})]})}function Ya({row:e,connector:n}){return t.jsx(X,{disc:t.jsx(O,{icon:bt,size:"xs",color:"var(--pi-color-destructive)"}),discClassName:p.errorDisc,connector:n,children:t.jsxs("div",{className:p.errorCard,children:[t.jsx("span",{className:p.errorLead,children:"Error"})," · ",e.text]})})}function Ja({row:e}){return t.jsx("div",{className:p.systemRow,children:e.text})}function Qa({row:e,assetBase:n=null,owningPaneId:s=null,workspaceCwd:o=null}){const[a,i]=h.useState(!1),c=gt(e),l=e.phase==="completed"&&!!e.summary,m=t.jsx("span",{className:p.compactionText,children:c});return t.jsxs("div",{className:w(p.compactionRow,e.phase==="failed"&&p.compactionRowFailed),children:[t.jsxs("div",{className:p.compactionDivider,children:[t.jsx("span",{className:p.compactionRule,"aria-hidden":"true"}),t.jsxs("span",{className:p.compactionLabel,children:[e.phase==="started"&&t.jsx(ne,{size:"xs","aria-label":"Compacting context"}),e.phase==="failed"&&t.jsx(O,{icon:bt,size:"xs",color:"var(--pi-color-statusDanger)"}),l?t.jsxs("button",{type:"button",className:p.compactionToggle,"aria-expanded":a,onClick:()=>i(u=>!u),children:[t.jsx(he,{size:12,className:w(p.toolChevron,a&&p.toolChevronOpen)}),m]}):m]}),t.jsx("span",{className:p.compactionRule,"aria-hidden":"true"})]}),l&&a&&t.jsx("div",{className:p.compactionSummary,children:t.jsx(Pe,{text:e.summary,assetBase:n,owningPaneId:s,workspaceCwd:o})})]})}const Za=500;function er(e,n){const s=h.useRef(!0),[o,a]=h.useState(!0),i=h.useRef(0),c=h.useCallback(u=>{const f=n.current,d=f?{scrollTop:f.scrollTop,scrollHeight:f.scrollHeight,clientHeight:f.clientHeight}:{scrollTop:0,scrollHeight:0,clientHeight:0},x=hs(s.current,u,d);x.pinned!==s.current&&(s.current=x.pinned,a(x.pinned)),x.stick&&e.options.count>0&&e.scrollToEnd({behavior:"auto"})},[n,e]);h.useEffect(()=>{const u=n.current;if(!u)return;const f=()=>{i.current=performance.now()},d=()=>{c({kind:"scroll",gesture:performance.now()-i.current<Za})};u.addEventListener("scroll",d,{passive:!0}),u.addEventListener("wheel",f,{passive:!0}),u.addEventListener("touchmove",f,{passive:!0}),u.addEventListener("pointerdown",f,{passive:!0}),u.addEventListener("keydown",f,{passive:!0});const x=new ResizeObserver(()=>{u.clientHeight>0&&c({kind:"shown"})});return x.observe(u),()=>{x.disconnect(),u.removeEventListener("scroll",d),u.removeEventListener("wheel",f),u.removeEventListener("touchmove",f),u.removeEventListener("pointerdown",f),u.removeEventListener("keydown",f)}},[c,n]);const l=h.useCallback(()=>c({kind:"tail"}),[c]),m=h.useCallback(()=>c({kind:"pin"}),[c]);return{pinned:o,followTail:l,pinToBottom:m}}const tr="_root_1xg4h_6",nr="_viewport_1xg4h_13",sr="_inner_1xg4h_20",or="_rowWrap_1xg4h_25",ar="_empty_1xg4h_35",rr="_nudge_1xg4h_47",ir="_jumpToLatest_1xg4h_56",te={root:tr,viewport:nr,inner:sr,rowWrap:or,empty:ar,nudge:rr,jumpToLatest:ir},cr=160;function lr(e){return e.kind==="ask"?`ask:${ws(e.item)}`:e.kind==="ask-more"?"ask-more":e.row.id}function dr(e,n,s,o,a,i){switch(e.kind){case"user":{const c=i.ordinalByRowId.get(e.id),l=c!==void 0?()=>i.onForkFromRow(c):null;return t.jsx(Xa,{row:e,connector:!n,onFork:l})}case"assistant":return t.jsx(Fa,{row:e,assetBase:s,owningPaneId:o,workspaceCwd:a,connector:!n});case"reasoning":return t.jsx(Ma,{row:e,owningPaneId:o,workspaceCwd:a,connector:!n});case"tool":return t.jsx(Ua,{row:e,assetBase:s,owningPaneId:o,workspaceCwd:a,connector:!n});case"error":return t.jsx(Ya,{row:e,connector:!n});case"system":return t.jsx(Ja,{row:e});case"compaction":return t.jsx(Qa,{row:e,assetBase:s,owningPaneId:o,workspaceCwd:a})}}function ur(e,n,s,o,a,i,c,l,m){return e.kind==="ask"?t.jsx(bo,{item:e.item,collapsed:e.collapsed,connector:!n,autoFocus:e.item.kind==="pending"&&e.item.entry.requestId===c,sessionTitle:l}):e.kind==="ask-more"?t.jsx(So,{count:e.count,connector:!n,onExpand:i}):dr(e.row,n,s,o,a,m)}function mr({session:e,owningPaneId:n,workspaceCwd:s}){var T,E;const o=e.timeline.rows,a=e.status==="running",i=xt(),c=kt(e.cwd,i),l=h.useRef(null),m=kn(e),u=vn(e.agentId??""),f=jn(e.agentId??""),[d,x]=h.useState(!1),D=M(j=>j.activeSessionId===e.id),q=vt(j=>{var R;return((R=j.layouts[s])==null?void 0:R.focusedPaneId)===n}),G=D&&q?((T=u[0])==null?void 0:T.requestId)??null:null,b=h.useMemo(()=>{const j=Ts(Cs(u,f),d);return Oo(o,j,R=>({kind:"row",row:R}),R=>R.kind==="more"?{kind:"ask-more",count:R.count}:{kind:"ask",item:R.item,collapsed:R.collapsed})},[o,u,f,d]),N=J(j=>j.status==="open"),B=J(j=>j.serverInfo),A=!!((E=B==null?void 0:B.features)!=null&&E.providerAuth),$=yn(j=>j.openSettings),{data:K}=es(o.length===0&&N&&A),W=Io(A,K),F=ln({count:b.length,getScrollElement:()=>l.current,estimateSize:()=>cr,overscan:8,getItemKey:j=>{const R=b[j];return R?lr(R):j},measureElement:(j,R,V)=>{if(j.offsetParent!==null)return dn(j,R,V);const ce=V.indexFromElement(j),_e=V.options.getItemKey(ce);return V.itemSizeCache.get(_e)??V.options.estimateSize(ce)},anchorTo:"end",scrollEndThreshold:Dt}),{pinned:ie,followTail:Z,pinToBottom:ee}=er(F,l),I=_s(o);return h.useEffect(()=>{Z()},[b.length,Z]),h.useEffect(()=>{I!==null&&ee()},[I,ee]),t.jsxs("div",{className:te.root,children:[t.jsx("div",{className:te.viewport,ref:l,children:b.length===0?!a&&(W?t.jsxs(bn,{className:te.nudge,children:[t.jsx("span",{children:"No messages yet — connect a model provider to get started."}),t.jsx(z,{size:"xs",variant:"secondary",onClick:()=>$(),children:"Connect a model provider"})]}):t.jsx("div",{className:te.empty,children:"No messages yet — say something to start."})):t.jsx("div",{className:te.inner,style:{height:F.getTotalSize()},children:F.getVirtualItems().map(j=>{const R=b[j.index];return R?t.jsx("div",{ref:F.measureElement,"data-index":j.index,className:te.rowWrap,style:{transform:`translateY(${j.start}px)`},children:ur(R,j.index===b.length-1,c,n,s,()=>x(!0),G,e.title,m)},j.key):null})})}),!ie&&b.length>0&&t.jsx("button",{type:"button",className:te.jumpToLatest,onClick:ee,title:"Jump to latest","aria-label":"Jump to latest",children:t.jsx(Un,{size:16,"aria-hidden":"true"})})]})}function fr(e,n=!0){const s=J(o=>o.client);return Le({queryKey:Oe.agentCommands(e),queryFn:async()=>{if(!s)throw new Error("not connected");const o=await ve(s,e),{commands:a}=await s.agent(o).listCommands();return a},enabled:!!s&&!!e&&n})}function Rt(e,n,s=!0){const o=J(a=>a.client);return Le({queryKey:Oe.providerModels(e,n),queryFn:async()=>{if(!o)throw new Error("not connected");return(await o.providers.listModels(e,n?{agentId:n}:void 0)).models},enabled:!!o&&!!e&&s})}function pr(e,n,s=!0){const o=J(a=>a.client);return Le({queryKey:Oe.thinkingLevels(e??"",n),queryFn:async()=>{if(!o||!e)throw new Error("not connected");return(await o.agent(e).listThinkingLevels()).levels},enabled:!!o&&!!e&&s,retry:!1})}const hr="_strip_nzfk5_4",_r="_thumb_nzfk5_11",gr="_remove_nzfk5_28",Te={strip:hr,thumb:_r,remove:gr};function xr({images:e,onRemove:n}){return e.length===0?null:t.jsx("div",{className:Te.strip,children:e.map((s,o)=>t.jsxs("div",{className:Te.thumb,children:[t.jsx("img",{src:s.thumbUrl,alt:""}),t.jsx("button",{type:"button",className:Te.remove,title:"Remove",onClick:()=>n(o),children:"×"})]},o))})}function kr(e){const{promise:n,resolve:s,reject:o}=Promise.withResolvers(),a=new FileReader;return a.onload=()=>{const i=a.result;if(typeof i!="string"){o(new Error("Unexpected FileReader result"));return}const c=i.indexOf(","),l=c>=0?i.slice(c+1):i;s({mimeType:e.type,data:l,thumbUrl:i})},a.onerror=()=>o(a.error??new Error("Failed to read file")),a.readAsDataURL(e),n}function vr(e,n,s){return e?s:n}const Ae=[{name:"compact",description:"Manually compact the session context",source:"builtin"}];function At(e){var o;const n=/^\/([^\s]+)(?:\s+([\s\S]*))?$/.exec(e.trim());if((n==null?void 0:n[1])!=="compact")return null;const s=(o=n[2])==null?void 0:o.trim();return{name:"compact",args:s||void 0}}function Me(e){if(!e.startsWith("/"))return null;const n=/^\/(\S*)/.exec(e),s=(n==null?void 0:n[1])??"",o=1+s.length,a=/\S/.test(e.slice(o));return{name:s,end:o,hasArgs:a}}function jr(e){return/^\/\S*$/.test(e)}function yr(e,n){let s=0;const o=Ae.map(i=>({value:i.name,label:`/${i.name}`,description:i.description,kind:i.source,disabled:n.builtinsDisabled===!0})),a=new Set(Ae.map(i=>i.name));for(const i of e)if(!a.has(i.name)){if(n.running&&i.source==="extension"){s+=1;continue}o.push({value:i.name,label:`/${i.name}`,description:i.description,kind:i.source})}return{options:o,hiddenExtensionCount:s}}function br(e,n,s){return s<=0?0:(e+n+s)%s}function Nr(e,n){const s=Me(e);return s?s.hasArgs?`/${n}${e.slice(s.end)}`:`/${n} `:`/${n} ${e}`}function Sr(e,n){const s=Me(e);return!s||!n.includes(s.name)?null:{end:s.end}}function Lt({running:e,compacting:n,hasAgent:s}){return s&&!e&&!n}function Cr(e,n){return!e.ok&&e.reason!=="canceled"&&n===""}function wr(e){const n=e.text.trim().length>0||e.hasImages;return!e.hasClient||!n||e.busy||e.compacting?!1:At(e.text)!==null?Lt(e):!0}function Dr(e,n){const s=kt(e||"~",n).replace(/\/+$/,"");return s===""||s.startsWith("~")?null:s}function Tr(e,n){if(!n||n.startsWith("~"))return null;const s=e.endsWith("/"),o=s?e.slice(0,-1):e;if(!o.startsWith(`${n}/`))return null;const a=o.slice(n.length+1);return a===""?null:s?`${a}/`:a}function Er(e){if(!/[\s`]/.test(e))return e;let n=0;for(const a of e.match(/`+/g)??[])n=Math.max(n,a.length);const s="`".repeat(n+1),o=e.startsWith("`")||e.endsWith("`")?" ":"";return`${s}${o}${e}${o}${s}`}function Br(e,n,s,o){const a=x=>Math.min(Math.max(Number.isFinite(x)?x:0,0),e.length),i=a(n),c=a(s),l=Math.min(i,c),m=Math.max(i,c),u=l>0&&!/\s/.test(e[l-1])?" ":"",f=m>=e.length||!/\s/.test(e[m])?" ":"",d=`${u}${o}${f}`;return{start:l,end:m,insert:d,caret:l+d.length}}function Rr(e){if(e.refValue===null||e.compacting)return{kind:"ignore"};const n=Tr(e.refValue,e.root);if(n===null)return{kind:"refuse"};const{text:s}=e,o=e.neverFocused?s.length:e.selStart,a=e.neverFocused?s.length:e.selEnd;return{kind:"insert",plan:Br(s,o,a,Er(n))}}const Ar="_picker_11hqs_4",Lr="_search_11hqs_10",Or="_searchWrap_11hqs_28",Ir="_searchSpinner_11hqs_37",Pr="_list_11hqs_45",qr="_item_11hqs_50",zr="_itemActive_11hqs_67",Fr="_checkSlot_11hqs_71",Mr="_label_11hqs_80",$r="_modelId_11hqs_86",Kr="_state_11hqs_93",Hr="_stateError_11hqs_102",Wr="_commandContent_11hqs_112",Ur="_commandList_11hqs_115",Gr="_commandItem_11hqs_120",Vr="_commandItemHeader_11hqs_152",Xr="_commandKindBadge_11hqs_166",Yr="_commandKindExtension_11hqs_185",Jr="_commandKindPrompt_11hqs_190",Qr="_commandKindSkill_11hqs_195",Zr="_commandDescription_11hqs_200",ei="_commandItemDisabled_11hqs_214",v={picker:Ar,search:Lr,searchWrap:Or,searchSpinner:Ir,list:Pr,item:qr,itemActive:zr,checkSlot:Fr,label:Mr,modelId:$r,state:Kr,stateError:Hr,commandContent:Wr,commandList:Ur,commandItem:Gr,commandItemHeader:Vr,commandKindBadge:Xr,commandKindExtension:Yr,commandKindPrompt:Jr,commandKindSkill:Qr,commandDescription:Zr,commandItemDisabled:ei},ti={onOpenAutoFocus:e=>e.preventDefault()};function ni(e){switch(e){case"extension":return v.commandKindExtension;case"prompt":return v.commandKindPrompt;case"skill":return v.commandKindSkill;default:return}}function si({open:e,onOpenChange:n,options:s,highlightedIndex:o,onSelect:a,isLoading:i,isError:c,errorMessage:l,hiddenExtensionCount:m,renderTrigger:u}){const f=h.useRef(null);return h.useEffect(()=>{var d,x;e&&((x=(d=f.current)==null?void 0:d.querySelector('[aria-selected="true"]'))==null||x.scrollIntoView({block:"nearest"}))},[e,o]),t.jsxs(qe,{open:e,onOpenChange:n,modal:!1,children:[t.jsx(ze,{asChild:!0,children:u()}),t.jsxs(Ie,{className:w(v.picker,v.commandContent),side:"top",sideOffset:4,...ti,onCloseAutoFocus:d=>d.preventDefault(),children:[i&&t.jsx("div",{className:v.state,children:t.jsx(ne,{size:"sm"})}),!i&&c&&t.jsx("div",{className:v.stateError,children:l??"Failed to load commands"}),!i&&!c&&s.length===0&&t.jsx("div",{className:v.state,children:"No commands found"}),!i&&!c&&s.length>0&&t.jsx("div",{ref:f,className:w(v.list,v.commandList),children:s.map((d,x)=>t.jsxs("div",{role:"option","aria-selected":x===o,"aria-disabled":d.disabled||void 0,className:w(v.item,v.commandItem,x===o&&v.itemActive,d.disabled&&v.commandItemDisabled),title:d.description,onMouseDown:D=>{D.preventDefault(),d.disabled||a(d.value)},children:[t.jsxs("div",{className:v.commandItemHeader,children:[t.jsx("span",{className:v.label,children:d.label}),d.kind&&t.jsx("span",{className:w(v.commandKindBadge,ni(d.kind)),children:d.kind})]}),d.description&&t.jsx("div",{className:v.commandDescription,children:d.description})]},d.value))}),!i&&!c&&m>0&&t.jsxs("div",{className:v.state,children:[m," extension command(s) unavailable while the agent is running"]})]})]})}function oi(e,n={}){const s=new Map;for(const m of e){const u=m.group??"",f=s.get(u);f?f.push(m):s.set(u,[m])}const o=s.get("");s.delete("");const a=[...s.keys()],{priorityGroup:i,ungroupedLabel:c}=n;i!==void 0&&s.has(i)&&(a.splice(a.indexOf(i),1),a.unshift(i));const l=a.map(m=>({key:m,label:m,options:s.get(m)??[]}));return o&&l.push({key:"",label:c,options:o}),l}function ai(e,n,s){if(!n)return e;const o=e.filter(i=>i.id===n),a=(s===void 0?void 0:o.find(i=>i.provider===s))??o[0];return a?[a,...e.filter(i=>i!==a)]:e}function ri(e){const n=new Set;return e.filter(s=>{const o=`${s.provider??""}/${s.id}`;return n.has(o)?!1:(n.add(o),!0)})}function ii({currentModel:e,currentModelProvider:n,provider:s,agentId:o,onSelect:a,renderTrigger:i}){const[c,l]=h.useState(!1),[m,u]=h.useState(""),f=h.useRef(null),d=h.useRef(null),{data:x,isLoading:D,isFetching:q,isError:G,error:b,refetch:N}=Rt(s,o,c||e!==void 0),B=x??[];h.useEffect(()=>{c&&u("")},[c]),h.useEffect(()=>{c&&N({cancelRefetch:!1})},[c,N]);const $=ri(ai(B,e,n)).map(T=>({value:T.id,label:T.label??T.id,description:T.id,group:T.provider})),K=$[0],W=(K==null?void 0:K.value)===e?K:void 0,F=oi(Ct($,m),{priorityGroup:n,ungroupedLabel:"Other"}),ie=F.length>1,Z=b instanceof Error?b.message:"Failed to load models";function ee(T){var E;if(T.stopPropagation(),T.key==="Escape"&&l(!1),T.key==="ArrowDown"){const j=(E=d.current)==null?void 0:E.querySelector('[role="menuitem"]');j&&(T.preventDefault(),j.focus())}}const I={onOpenAutoFocus:T=>{var E;T.preventDefault(),(E=f.current)==null||E.focus()}};return t.jsxs(qe,{open:c,onOpenChange:l,modal:!1,children:[t.jsx(ze,{asChild:!0,children:i(e,W==null?void 0:W.label)}),t.jsxs(Ie,{minWidth:240,align:"end",sideOffset:6,className:v.picker,...I,children:[t.jsxs("div",{className:v.searchWrap,children:[t.jsx("input",{ref:f,className:v.search,placeholder:"Search models…",value:m,onChange:T=>u(T.target.value),onKeyDown:ee}),q&&!D&&t.jsx(ne,{size:"xs",color:"var(--pi-color-foregroundMuted)",className:v.searchSpinner,"aria-label":"Refreshing models"})]}),D&&t.jsx("div",{className:v.state,children:t.jsx(ne,{size:"sm"})}),!D&&G&&x===void 0&&t.jsx("div",{className:v.stateError,children:Z}),!D&&x!==void 0&&F.length===0&&t.jsx("div",{className:v.state,children:"No models found"}),!D&&x!==void 0&&F.length>0&&t.jsx("div",{ref:d,className:v.list,children:F.map(T=>t.jsx(Nn,{label:ie?T.label:void 0,children:T.options.map(E=>t.jsxs(St,{className:v.item,onSelect:()=>a(E.value,E.group),children:[t.jsx("span",{className:v.checkSlot,"aria-hidden":!0,children:E===W&&t.jsx(pe,{size:14})}),t.jsx("span",{className:v.label,children:E.label}),t.jsxs("span",{className:v.modelId,children:["(",E.value,")"]})]},`${E.group??""}/${E.value}`))},T.key))})]})]})}function ci({currentLevel:e,levels:n,open:s,onOpenChange:o,onSelect:a,renderTrigger:i}){return t.jsxs(qe,{open:s,onOpenChange:o,modal:!1,children:[t.jsx(ze,{asChild:!0,children:i(e)}),t.jsx(Ie,{minWidth:140,align:"end",side:"top",sideOffset:6,className:v.picker,children:n.length===0?t.jsx("div",{className:v.state,children:"Loading levels…"}):t.jsx("div",{className:v.list,children:n.map(c=>t.jsxs(St,{className:v.item,onSelect:()=>a(c),children:[t.jsx("span",{className:v.checkSlot,"aria-hidden":!0,children:c===e&&t.jsx(pe,{size:14})}),t.jsx("span",{className:v.label,children:c})]},c))})})]})}const pt=["off","minimal","low","medium","high","xhigh","max"];function li(e,n){if(!e)return pt;const s=n==null?void 0:n.find(o=>o.id===e);return s!=null&&s.thinkingLevels&&s.thinkingLevels.length>0?s.thinkingLevels:pt}const di="_composer_excz7_4",ui="_card_excz7_13",mi="_flash_excz7_27",fi="_dropTarget_excz7_33",pi="_note_excz7_48",hi="_inlineError_excz7_55",_i="_compacting_excz7_63",gi="_textarea_excz7_31",xi="_compactStatus_excz7_73",ki="_compactStatusText_excz7_82",vi="_compactCancel_excz7_88",ji="_textareaWrap_excz7_129",yi="_highlightLayer_excz7_117",bi="_commandMark_excz7_152",Ni="_hiddenFileInput_excz7_177",Si="_toolbar_excz7_183",Ci="_toolbarRight_excz7_190",wi="_toolBtn_excz7_198",Di="_roundBtn_excz7_204",Ti="_modelBtn_excz7_209",Ei="_modelLabel_excz7_239",Bi="_modelId_excz7_237",Ri="_modelChevron_excz7_257",S={composer:di,card:ui,flash:mi,dropTarget:fi,note:pi,inlineError:hi,compacting:_i,textarea:gi,compactStatus:xi,compactStatusText:ki,compactCancel:vi,textareaWrap:ji,highlightLayer:yi,commandMark:bi,hiddenFileInput:Ni,toolbar:Si,toolbarRight:Ci,toolBtn:wi,roundBtn:Di,modelBtn:Ti,modelLabel:Ei,modelId:Bi,modelChevron:Ri},Ai=160;function re(e){e.style.height="auto",e.style.height=`${Math.min(e.scrollHeight,Ai)}px`}function Li(e){return typeof e=="object"&&e!==null&&"ok"in e&&e.ok===!1}function Oi(){return typeof window<"u"&&window.matchMedia("(prefers-reduced-motion: reduce)").matches}function Ii({sessionId:e,workspaceCwd:n,owningPaneId:s}){var ot;const o=J(r=>r.client),a=M(r=>r.sessions[e]),i=M(r=>r.addOptimisticUserMessage),c=M(r=>r.markUserMessageFailed),l=M(r=>r.setCwd),m=M(r=>r.setModel),u=M(r=>r.setThinkingLevel),f=J(r=>r.serverInfo),[d,x]=h.useState(!1),D=!!((ot=f==null?void 0:f.features)!=null&&ot.thinkingLevels),{data:q}=pr(a==null?void 0:a.agentId,a==null?void 0:a.model,d&&!!(a!=null&&a.agentId)&&((a==null?void 0:a.userMessageCount)??0)>0),{data:G}=Rt("pi",a==null?void 0:a.agentId),b=li(a==null?void 0:a.model,G),N=q!==void 0&&q.length>0?q:b,B=D&&!(q!==void 0&&q.length===0),A=fe(r=>r.drafts[e]??""),$=fe(r=>r.setDraft),[K,W]=h.useState([]),[F,ie]=h.useState(!1),[Z,ee]=h.useState(!1),I=h.useRef(null),T=h.useRef(null),[E,j]=h.useState(!1),[R,V]=h.useState(0),ce=Sn(Tn.chat(e)),_e=fe(r=>r.pendingFeedback[e]),[$e,Ke]=h.useState(null),[be,oe]=h.useState(null),[zt,He]=h.useState(!1),le=h.useRef(null),de=h.useRef(null),[Ne,ge]=h.useState(!1),We=h.useRef(!1),Ft=xt();h.useEffect(()=>{if(!ce||_e===void 0)return;const r=fe.getState().consumeFeedback(e);if(!r)return;Ke(r.copy==="filled"?"Your message was filled in":"Your draft was replaced"),le.current!==null&&window.clearTimeout(le.current),le.current=window.setTimeout(()=>Ke(null),4e3);const _=I.current;_&&_.setSelectionRange(_.value.length,_.value.length),r.flash&&(He(!0),de.current!==null&&window.clearTimeout(de.current),de.current=window.setTimeout(()=>He(!1),Oi()?1e3:400))},[ce,_e,e]),h.useEffect(()=>()=>{le.current!==null&&window.clearTimeout(le.current),de.current!==null&&window.clearTimeout(de.current)},[]),h.useEffect(()=>{if(!Ne)return;const r=()=>ge(!1);return document.addEventListener("dragend",r),document.addEventListener("drop",r),()=>{document.removeEventListener("dragend",r),document.removeEventListener("drop",r)}},[Ne]);const H=(a==null?void 0:a.status)==="running",L=Cn(e),Se=ke(r=>r.lastErrorBySession[e]),Mt=ke(r=>r.compactSession),Ce=ke(r=>r.cancelCompaction),$t=ke(r=>r.clearError),Ue=!!(a!=null&&a.agentId),Kt=vr(H,F,Z),Ge=wr({hasClient:!!o,busy:Kt,compacting:L,running:H,hasAgent:Ue,text:A,hasImages:K.length>0}),{data:Ve=[],isLoading:Ht,isError:Wt,error:Xe}=fr(e,E),{options:Ye,hiddenExtensionCount:Ut}=yr(Ve,{running:H,builtinsDisabled:!Lt({running:H,compacting:L,hasAgent:Ue})}),Je=Me(A),xe=Je?Ct(Ye,Je.name):Ye,Gt=[...Ae,...Ve].map(r=>r.name),ae=Sr(A,Gt),Qe=L?wn((a==null?void 0:a.timeline.rows)??[]):void 0,Vt=Qe?gt(Qe):"Compacting context…";async function Ze(r){if(r.type.startsWith("image/"))try{const _=await kr(r);W(k=>[...k,_])}catch{}}function Xt(r){for(const _ of r.target.files??[])Ze(_);r.target.value=""}function Yt(r){if(!L){for(const _ of r.clipboardData.items)if(_.type.startsWith("image/")){r.preventDefault();const k=_.getAsFile();k&&Ze(k)}}}function Jt(r){W(_=>_.filter((k,C)=>C!==r))}function et(r,_){$(e,_),re(r),Se&&$t(e),be&&oe(null);const k=jr(_);k!==E&&j(k),k&&V(0)}function Qt(r){et(r.target,r.target.value)}function Zt(r){return!L&&rt(r.dataTransfer.types)}function tt(r){Zt(r)&&(r.preventDefault(),r.dataTransfer.dropEffect="copy",ge(!0))}function en(r){r.currentTarget.contains(r.relatedTarget)||ge(!1)}function tn(r,_){r.focus(),r.setSelectionRange(_.start,_.end);const k=r.value;let C=!1;try{C=document.execCommand("insertText",!1,_.insert)&&r.value!==k}catch{C=!1}C||(r.setRangeText(_.insert,_.start,_.end,"end"),et(r,r.value)),r.setSelectionRange(_.caret,_.caret),s!==null&&vt.getState().focusPane(n,s)}function nn(r){const{types:_}=r.dataTransfer;if(!rt(_)||(ge(!1),L))return;r.preventDefault();const k=I.current;if(!k)return;const C=Rr({refValue:En(_,P=>r.dataTransfer.getData(P)),compacting:L,root:Dr((a==null?void 0:a.cwd)??"",Ft),text:k.value,selStart:k.selectionStart,selEnd:k.selectionEnd,neverFocused:!We.current});C.kind==="refuse"?oe("Not inside this workspace"):C.kind==="insert"&&tn(k,C.plan)}function sn(r){if(L){r.key==="Escape"&&(r.preventDefault(),Ce(e));return}if(!E&&ae&&r.key==="Backspace"){const _=r.currentTarget,k=_.selectionStart;if(k!==null&&k===_.selectionEnd){const C=ae.end+(A[ae.end]===" "?1:0);if(k>0&&k<=C){r.preventDefault();const P=A.slice(C);$(e,P),_.setSelectionRange(0,0),re(_);return}}}if(E&&xe.length>0){if(r.key==="ArrowDown"||r.key==="ArrowUp"){r.preventDefault(),V(_=>br(_,r.key==="ArrowDown"?1:-1,xe.length));return}if(r.key==="Enter"&&!r.shiftKey||r.key==="Tab"){r.preventDefault();const _=xe[R];_&&!_.disabled&&nt(_.value);return}}if(E&&r.key==="Escape"){r.preventDefault(),j(!1);return}r.key==="Enter"&&!r.shiftKey&&(r.preventDefault(),st(H?"steer":"send"))}function nt(r){const _=Nr(A,r);$(e,_),j(!1),V(0);const k=I.current;k&&(k.focus(),k.setSelectionRange(_.length,_.length),re(k))}async function st(r){if(!o||!a||(r==="steer"?Z:F)||r==="steer"&&!a.agentId)return;const _=A.trim();if(!_&&K.length===0||!Ge)return;const k=At(_);if(k){j(!1),$(e,""),I.current&&re(I.current);const Y=await Mt(e,k.args);Cr(Y,fe.getState().drafts[e]??"")&&($(e,A),I.current&&re(I.current));return}$(e,""),j(!1),I.current&&re(I.current);const C=K;W([]);const P=_||"Describe this image",ue=C.length>0?C.map(Y=>({mimeType:Y.mimeType,data:Y.data})):void 0,me=Bn();i(e,me,P,ue,r==="steer");const at=r==="steer"?ee:ie;at(!0);try{if(r==="steer"){const Y=await o.agent(a.agentId).steer(P,{clientMessageId:me,images:ue});Li(Y)&&c(e,me)}else{a.agentId||l(e,a.cwd||"~");const Y=await ve(o,e);await o.agent(Y).send(P,{clientMessageId:me,images:ue})}}catch{c(e,me)}finally{at(!1)}}function on(){a!=null&&a.agentId&&(L?Ce(e):o==null||o.agent(a.agentId).interrupt())}function an(r,_){const k={model:a==null?void 0:a.model,provider:a==null?void 0:a.modelProvider};m(e,r,_),oe(null),!(!o||!_)&&(async()=>{const C=await ve(o,e);await o.agent(C).setModel(_,r)})().catch(C=>{const P=M.getState().sessions[e];(P==null?void 0:P.model)===r&&P.modelProvider===_&&m(e,k.model,k.provider);const ue=C instanceof Error?C.message:String(C);oe(`Couldn't switch model: ${ue}`)})}function rn(r){const _=a==null?void 0:a.thinkingLevel;u(e,r),oe(null),o&&(async()=>{const k=await ve(o,e),C=await o.agent(k).setThinking(r);u(e,C.level)})().catch(k=>{var P;((P=M.getState().sessions[e])==null?void 0:P.thinkingLevel)===r&&u(e,_);const C=k instanceof Error?k.message:String(k);oe(`Couldn't set thinking level: ${C}`)})}return t.jsxs("div",{className:S.composer,children:[t.jsxs("div",{className:w(S.card,zt&&S.flash,L&&S.compacting,Ne&&!L&&S.dropTarget),...Dn(),onDragEnter:tt,onDragOver:tt,onDragLeave:en,onDrop:nn,children:[t.jsxs("div",{className:S.textareaWrap,children:[t.jsx("div",{className:S.highlightLayer,"aria-hidden":!0,children:ae?t.jsxs(t.Fragment,{children:[t.jsx("mark",{className:S.commandMark,children:A.slice(0,ae.end)}),A.slice(ae.end)]}):A}),t.jsx(_t,{ref:I,className:S.textarea,rows:1,value:A,readOnly:L,placeholder:L?"Compacting context… esc cancel":H?"Steer the running turn… ⏎ steer · ⇧⏎ newline":"Ask anything… ⏎ send · ⇧⏎ newline · / commands",onChange:Qt,onFocus:()=>{We.current=!0},onKeyDown:sn,onPaste:Yt,"data-session-id":e})]}),t.jsx(xr,{images:K,onRemove:Jt}),t.jsxs("div",{className:S.toolbar,children:[t.jsx(z,{className:S.toolBtn,variant:"ghost",size:"sm",iconOnly:!0,title:"Attach image","aria-label":"Attach image",disabled:L,onClick:()=>{var r;return(r=T.current)==null?void 0:r.click()},children:t.jsx(Gn,{size:16})}),t.jsx(si,{open:E&&!L,onOpenChange:j,options:xe,highlightedIndex:R,onSelect:nt,isLoading:Ht,isError:Wt,errorMessage:Xe instanceof Error?Xe.message:void 0,hiddenExtensionCount:Ut,renderTrigger:()=>t.jsx(z,{className:S.toolBtn,variant:"ghost",size:"sm",iconOnly:!0,disabled:L,title:"Slash commands","aria-label":"Slash commands",children:t.jsx(Vn,{size:16})})}),t.jsxs("div",{className:S.toolbarRight,children:[t.jsx(ii,{currentModel:a==null?void 0:a.model,currentModelProvider:a==null?void 0:a.modelProvider,provider:"pi",agentId:a==null?void 0:a.agentId,onSelect:an,renderTrigger:(r,_)=>{const k=_!==void 0&&_!==r;return t.jsxs("button",{type:"button",className:S.modelBtn,disabled:!o,title:r?`Model: ${_??r}${k?` (${r})`:""}`:"Select model",children:[t.jsx(Xn,{size:14,"aria-hidden":"true"}),t.jsx("span",{className:S.modelLabel,children:_??r??"Model"}),k&&t.jsxs("span",{className:S.modelId,children:["(",r,")"]}),t.jsx(lt,{size:13,className:S.modelChevron,"aria-hidden":"true"})]})}}),B&&t.jsx(ci,{currentLevel:a==null?void 0:a.thinkingLevel,levels:N,open:d,onOpenChange:x,onSelect:rn,renderTrigger:r=>t.jsxs("button",{type:"button",className:S.modelBtn,disabled:!o,title:r?`Thinking: ${r}`:"Thinking level",children:[t.jsx(yt,{size:14,"aria-hidden":"true"}),t.jsx("span",{className:S.modelLabel,children:r??"Thinking"}),t.jsx(lt,{size:13,className:S.modelChevron,"aria-hidden":"true"})]})}),(H||L)&&t.jsx(z,{className:S.roundBtn,variant:"destructive",size:"sm",iconOnly:!0,title:L?"Cancel the compaction":"Stop the running turn","aria-label":"Stop",onClick:on,children:t.jsx(Yn,{size:14})}),t.jsx(z,{className:S.roundBtn,size:"sm",iconOnly:!0,disabled:!Ge,title:H?"Steer the running turn":"Send","aria-label":H?"Steer":"Send",onClick:()=>void st(H?"steer":"send"),children:H?t.jsx(Jn,{size:16}):t.jsx(Qn,{size:18})})]})]})]}),t.jsx("div",{role:"status",children:L&&t.jsxs("div",{className:S.compactStatus,children:[t.jsx(ne,{size:"xs","aria-label":"Compacting"}),t.jsx("span",{className:S.compactStatusText,children:Vt}),t.jsx("button",{type:"button",className:S.compactCancel,title:"Cancel the compaction (Esc)",onClick:()=>void Ce(e),children:"Cancel"})]})}),$e!==null&&t.jsx("div",{className:S.note,children:$e}),Se&&t.jsx("div",{role:"alert",className:S.inlineError,children:Se}),be&&t.jsx("div",{role:"alert",className:S.inlineError,children:be}),t.jsx("input",{ref:T,className:S.hiddenFileInput,type:"file",accept:"image/*",multiple:!0,onChange:Xt})]})}const Pi=5;function Ot(e){return e.toSorted((n,s)=>n.id-s.id)}function qi(e){return{done:e.filter(n=>n.status==="completed").length,total:e.length}}function It(e){return Ot(e).find(n=>n.status==="in_progress")}function Pt(e){return e.status==="in_progress"&&e.activeForm?e.activeForm:e.subject}function zi(e){const n=It(e);return n?Pt(n):void 0}function Fi(e){var n;if(!(e.status==="completed"||!((n=e.blockedBy)!=null&&n.length)))return`blocked by ${e.blockedBy.map(s=>`#${s}`).join(", ")}`}function Mi(e){return!!e.description||!!e.owner}function $i(e,n=Pi){const s=Ot(e),o=s.filter(l=>l.status==="completed"),a=o.length>n,i=[];let c=!1;return s.forEach((l,m)=>{if(a&&l.status==="completed"){c||(c=!0,i.push({kind:"completed-group",count:o.length,tasks:o,key:`group-${l.id}-${m}`}));return}i.push({kind:"task",task:l,key:`${l.id}-${m}`})}),i}const Ki="_panel_3trtd_5",Hi="_header_3trtd_18",Wi="_rowButton_3trtd_35",Ui="_chevron_3trtd_40",Gi="_chevronOpen_3trtd_46",Vi="_label_3trtd_50",Xi="_count_3trtd_55",Yi="_summary_3trtd_60",Ji="_body_3trtd_69",Qi="_row_3trtd_35",Zi="_rowStatic_3trtd_85",ec="_icon_3trtd_102",tc="_iconInProgress_3trtd_111",nc="_iconCompleted_3trtd_115",sc="_iconPending_3trtd_119",oc="_text_3trtd_123",ac="_textCompleted_3trtd_135",rc="_id_3trtd_140",ic="_blocked_3trtd_146",cc="_details_3trtd_157",lc="_footer_3trtd_166",dc="_nested_3trtd_180",y={panel:Ki,header:Hi,rowButton:Wi,chevron:Ui,chevronOpen:Gi,label:Vi,count:Xi,summary:Yi,body:Ji,row:Qi,rowStatic:Zi,icon:ec,iconInProgress:tc,iconCompleted:nc,iconPending:sc,text:oc,textCompleted:ac,id:rc,blocked:ic,details:cc,footer:lc,nested:dc};function uc({status:e}){return e==="in_progress"?t.jsx("span",{className:`${y.icon} ${y.iconInProgress}`,children:t.jsx(ne,{size:14,"aria-label":"In progress"})}):e==="completed"?t.jsx("span",{className:`${y.icon} ${y.iconCompleted}`,children:t.jsx(O,{icon:pe,size:"sm","aria-label":"Completed"})}):t.jsx("span",{className:`${y.icon} ${y.iconPending}`,children:t.jsx(O,{icon:Zn,size:"sm","aria-label":"Pending"})})}function qt({task:e}){const[n,s]=h.useState(!1),o=Fi(e),a=Mi(e),i=t.jsxs(t.Fragment,{children:[t.jsx(uc,{status:e.status}),t.jsx("span",{className:`${y.text} ${e.status==="completed"?y.textCompleted:""}`,children:Pt(e)}),o&&t.jsx("span",{className:y.blocked,children:o}),t.jsxs("span",{className:y.id,children:["#",e.id]}),a&&t.jsx("span",{className:`${y.chevron} ${n?y.chevronOpen:""}`,children:t.jsx(O,{icon:he,size:"xs","aria-hidden":!0})})]});return t.jsxs("li",{className:y.row,"data-status":e.status,"data-task-id":e.id,children:[a?t.jsx("button",{type:"button",className:y.rowButton,"aria-expanded":n,onClick:()=>s(c=>!c),children:i}):t.jsx("div",{className:y.rowStatic,children:i}),n&&t.jsxs("p",{className:y.details,children:[e.description,e.description&&e.owner?`
|
|
11
|
-
`:"",e.owner?`Owner: ${e.owner}`:""]})]})}function mc({tasks:e}){const[n,s]=h.useState(!1);return t.jsxs("li",{className:y.row,children:[t.jsxs("button",{type:"button",className:y.rowButton,"aria-expanded":n,onClick:()=>s(o=>!o),children:[t.jsx("span",{className:`${y.icon} ${y.iconCompleted}`,children:t.jsx(O,{icon:pe,size:"sm","aria-hidden":!0})}),t.jsxs("span",{className:y.text,children:[e.length," completed"]}),t.jsx("span",{className:`${y.chevron} ${n?y.chevronOpen:""}`,children:t.jsx(O,{icon:he,size:"xs","aria-hidden":!0})})]}),n&&t.jsx("ol",{className:y.nested,children:e.map((o,a)=>t.jsx(qt,{task:o},`${o.id}-${a}`))})]})}function fc({agentId:e}){var f;const n=Rn(e),s=An(e),o=h.useId(),a=h.useRef(null);h.useEffect(()=>{if(e)return it.getState().track(e)},[e]);const i=n==null?void 0:n.tasks,c=i?(f=It(i))==null?void 0:f.id:void 0;if(h.useEffect(()=>{const d=a.current;if(!d||c===void 0||s)return;const x=d.querySelector(`[data-task-id="${c}"][data-status="in_progress"]`);if(!x)return;const D=x.offsetTop-d.offsetTop;(D<d.scrollTop||D+x.offsetHeight>d.scrollTop+d.clientHeight)&&(d.scrollTop=D-(d.clientHeight-x.offsetHeight)/2)},[c,s]),!e||!n||n.tasks.length===0)return null;const{done:l,total:m}=qi(n.tasks),u=s?zi(n.tasks):void 0;return t.jsxs("section",{className:y.panel,role:"region","aria-label":"Agent todos",children:[t.jsxs("button",{type:"button",className:y.header,"aria-expanded":!s,"aria-controls":o,onClick:()=>it.getState().setCollapsed(e,!s),children:[t.jsx("span",{className:`${y.chevron} ${s?"":y.chevronOpen}`,children:t.jsx(O,{icon:he,size:"sm","aria-hidden":!0})}),t.jsx("span",{className:y.label,children:"Todos"}),t.jsxs("span",{className:y.count,children:[l,"/",m]}),u&&t.jsx("span",{className:y.summary,children:u})]}),!s&&t.jsx("ol",{id:o,ref:a,className:y.body,children:$i(n.tasks).map(d=>d.kind==="task"?t.jsx(qt,{task:d.task},d.key):t.jsx(mc,{tasks:d.tasks},d.key))}),!s&&n.truncated&&t.jsxs("div",{className:y.footer,children:["Showing first ",Ln," tasks"]})]})}const pc="_track_oxvl6_2",hc="_sweep_oxvl6_24",_c="_visuallyHidden_oxvl6_64",Ee={track:pc,sweep:hc,visuallyHidden:_c};function gc({running:e}){return e?t.jsxs("div",{className:Ee.track,role:"progressbar","aria-label":"Turn in progress",children:[t.jsx("div",{className:Ee.sweep,"aria-hidden":"true"}),t.jsx("span",{className:Ee.visuallyHidden,role:"status","aria-live":"polite",children:"Agent is working…"})]}):null}const xc="_panel_1tq06_1",kc="_empty_1tq06_5",ht={panel:xc,empty:kc};function Ac({tab:e,owningPaneId:n}){const{sessionId:s}=e.data,o=M(a=>a.sessions[s]);return ps(s),o?t.jsxs(ct,{className:ht.panel,children:[t.jsx(gc,{running:o.status==="running"}),t.jsx(mr,{session:o,owningPaneId:n,workspaceCwd:e.workspaceCwd}),t.jsx(fc,{agentId:o.agentId}),t.jsx(Ii,{sessionId:o.id,workspaceCwd:e.workspaceCwd,owningPaneId:n})]}):t.jsx(ct,{children:t.jsx("div",{className:ht.empty,children:"Session not found."})})}export{Ac as ChatPanel};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
var j=Object.defineProperty;var q=(r,n,e)=>n in r?j(r,n,{enumerable:!0,configurable:!0,writable:!0,value:e}):r[n]=e;var d=(r,n,e)=>q(r,typeof n!="symbol"?n+"":n,e);import{r as u,j as w}from"./vendor-react-DQUAl2K8.js";import{u as y}from"./vendor-query-i7fr__Xm.js";import{u as F,r as p}from"./index-CchwjcLZ.js";import{u as x}from"./use-file-download-8zPww5m-.js";import{Q as S,S as _,T as b,U as B,V as z,W as U}from"./vendor-DaF96HbP.js";function D(r){const{maxDisplayBytes:n,inline:e,streamed:o,download:a}=r;if(e.isLoading)return{kind:"loading"};if(e.tooLarge){const{size:t}=e.tooLarge;return t>n?{kind:"too-large",size:t,maxDisplayBytes:n,downloading:a.requested&&a.isLoading,downloadUrl:a.objectUrl,downloadName:a.fileName}:o.isLoading?{kind:"streaming",size:t}:o.isError?{kind:"stream-error",size:t,message:o.errorMessage??"stream failed"}:o.content!==null?{kind:"streamed",size:t,content:o.content}:{kind:"loading"}}return e.isError?{kind:"error",message:e.errorMessage??"unknown error"}:e.content!==null?{kind:"inline",content:e.content}:{kind:"loading"}}class h extends Error{constructor(e,o){super("file_too_large");d(this,"size");d(this,"maxBytes");this.name="FileTooLargeError",this.size=e,this.maxBytes=o}}function R(r){if(!r.ok)throw r.error==="file_too_large"?new h(r.size??0,r.maxBytes):new Error(r.error??"file read failed");return{content:r.content??"",size:r.size??0}}function T(r,n=!0){const e=F(o=>o.client);return y({queryKey:p.fileRead(r),queryFn:async()=>{if(!e)throw new Error("not connected");const o=await e.connection.request("file_read_request",{path:r});return R(o)},enabled:!!e&&!!r&&n})}function M(r){const{enabled:n,download:e,decode:o}=r;return{isLoading:n&&(e.isLoading||e.hasObjectUrl&&o.isLoading),isError:e.isError||o.isError,error:e.isError?e.error:o.error,data:o.data}}function C(r,n=!0){var t;const e=x(r,n),o=(t=e.data)==null?void 0:t.objectUrl,a=y({queryKey:p.fileText(r,o??null),queryFn:async()=>({content:await(await fetch(o)).text()}),enabled:n&&!!o});return M({enabled:n,download:{isLoading:e.isLoading,isError:e.isError,error:e.error,hasObjectUrl:!!o},decode:{isLoading:a.isLoading,isError:a.isError,error:a.error,data:a.data}})}const E=30*1024*1024;function Y(r,n=!0){var c,f,g,m;const e=T(r,n),o=e.error instanceof h?e.error:null,a=o!==null&&o.size<=E,t=C(r,n&&a),[i,k]=u.useState(!1),s=x(r,n&&i),l=D({maxDisplayBytes:E,inline:{isLoading:e.isLoading,isError:e.isError,tooLarge:o?{size:o.size}:null,errorMessage:e.error instanceof Error?e.error.message:null,content:((c=e.data)==null?void 0:c.content)??null},streamed:{isLoading:t.isLoading,isError:t.isError,errorMessage:t.error instanceof Error?t.error.message:null,content:((f=t.data)==null?void 0:f.content)??null},download:{requested:i,isLoading:s.isLoading,objectUrl:((g=s.data)==null?void 0:g.objectUrl)??null,fileName:((m=s.data)==null?void 0:m.fileName)??null}});return l.kind==="too-large"?{...l,requestDownload:()=>k(!0)}:l}const N="_wrap_1feu3_1",v={wrap:N},L=new Map;function K(r){const[n,e]=u.useState(null);return u.useEffect(()=>{const o=z.matchFilename(U,r);if(!o){e(null);return}const a=L.get(o.name);if(a){e(a);return}let t=!1;return e(null),o.load().then(i=>{L.set(o.name,i),t||e(i)}),()=>{t=!0}},[r]),n?[n]:[]}function I({path:r,content:n}){const e=K(r),o=[S.lineWrapping,_(),...e];return w.jsx("div",{className:v.wrap,children:w.jsx(b,{value:n,theme:B,extensions:o,editable:!1,readOnly:!0,basicSetup:{highlightActiveLine:!1,foldGutter:!1,searchKeymap:!1},height:"100%"})})}export{I as C,Y as u};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{r as d,j as s}from"./vendor-react-DQUAl2K8.js";import{N as _}from"./vendor-DaF96HbP.js";import{u as j,r as f,L as w,a as E,e as D,V as K,P as N,B as x,E as l,S as y,i as S}from"./index-CchwjcLZ.js";import{u as b,a as k}from"./vendor-query-i7fr__Xm.js";import{u as q}from"./use-file-watch-CYQrRagj.js";import{D as z}from"./DiffView-D1TsZBGe.js";import"./vendor-icons-Bh5CT32q.js";import"./vendor-overlays-3MkedLFU.js";import"./vendor-dnd-CayJj8TC.js";function V(e,t,n,i=!0){const a=j(r=>r.client);return b({queryKey:f.fileDiff(e,t,n),queryFn:async()=>{if(!a)throw new Error("not connected");return{patch:(await a.connection.request("file_diff_request",{path:e,cwd:t,staged:n})).patch??""}},enabled:!!a&&!!e&&!!t&&i})}function B(e,t,n){const i=k(),a=w.has(n)?E(e,t):null,{changedAt:r}=q(a);d.useEffect(()=>{r!==null&&(i.invalidateQueries({queryKey:f.fileRead(e)}),i.invalidateQueries({queryKey:f.fileDownload(e)}),i.invalidateQueries({queryKey:f.fileDiffByPath(e)}))},[r,e,i])}const C="_header_10rse_1",F="_path_10rse_11",L="_size_10rse_18",P="_viewToggle_10rse_23",Q="_body_10rse_28",c={header:C,path:F,size:L,viewToggle:P,body:Q};function g(e){return"path"in e}function R(e){return"staged"in e}function O({tab:e}){var m;const t=e.kind==="diff",n=e.data,i=g(n)?n.path:"",a=g(n)&&R(n)?n.staged:!1,[r,h]=d.useState(t?"diff":"file"),u=e.workspaceCwd||"~",[p]=d.useState(()=>D(i,S));B(i,u,p);const o=V(i,u,a,r==="diff"),v=K[p];return s.jsxs(N,{children:[s.jsxs("div",{className:c.header,children:[s.jsx("span",{className:c.path,children:i}),s.jsx("span",{className:c.size,children:r==="diff"?a?"staged":"unstaged":null}),s.jsxs("div",{className:c.viewToggle,children:[s.jsx(x,{size:"xs",variant:r==="file"?"default":"ghost",onClick:()=>h("file"),children:"File"}),s.jsx(x,{size:"xs",variant:r==="diff"?"default":"ghost",onClick:()=>h("diff"),children:"Diff"})]})]}),s.jsx("div",{className:_(c.body,"file-body"),children:r==="file"?s.jsx(d.Suspense,{fallback:s.jsxs(l,{children:[s.jsx(y,{size:"sm"})," Loading..."]}),children:s.jsx(v,{path:i,workspaceCwd:u})}):o.isLoading?s.jsxs(l,{children:[s.jsx(y,{size:"sm"})," Loading diff..."]}):o.isError?s.jsxs(l,{children:["Error: ",o.error instanceof Error?o.error.message:"unknown error"]}):(m=o.data)!=null&&m.patch?s.jsx(z,{patch:o.data.patch}):s.jsx(l,{style:{padding:"var(--pi-spacing-30)"},children:"No changes (file matches HEAD)"})})]})}export{O as FilePanel};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{r as v,j as r}from"./vendor-react-DQUAl2K8.js";import{a as ie,u as ae}from"./vendor-query-i7fr__Xm.js";import{n as ce,a as G,c as le,d as X,u as F,p as ue,E as A,S as R,B as C,r as B,t as de}from"./index-CchwjcLZ.js";import{S as fe}from"./Switch-1I6AMAC7.js";import{u as me,C as pe}from"./CodeView-CLqXf_zq.js";import{p as he,S as ge}from"./href-resolution-CSqTI9Vm.js";import"./vendor-DaF96HbP.js";import"./vendor-icons-Bh5CT32q.js";import"./vendor-overlays-3MkedLFU.js";import"./vendor-dnd-CayJj8TC.js";import"./use-file-download-8zPww5m-.js";const I={maxCount:64,maxBytesPerAsset:2*1024*1024,maxBytesTotal:16*1024*1024};function K(s,t,e){return!(s>=I.maxCount||e>I.maxBytesPerAsset||t+e>I.maxBytesTotal)}function Y(s){return s===""||s.startsWith("#")?"unsupported":s.startsWith("//")||ge.test(s)?"external":null}function xe(s,t,e){return e!==null&&t===e?s:t}function J(s,t,e,n,i=null){const o=s.trim(),u=Y(o);if(u)return{kind:"skip",raw:s,reason:u};const a=he(o);let p;if(a.startsWith("/")?p=a:a==="~"||a.startsWith("~/")?p=i!==null?ce(a,i):null:p=G(a,t),!p)return{kind:"skip",raw:s,reason:"unsupported"};const h=le(p);return h!==e&&!h.startsWith(`${e}/`)?{kind:"skip",raw:s,reason:"outside-workspace"}:{kind:"local",raw:s,path:h,context:n}}const we={css:"text/css",js:"text/javascript",mjs:"text/javascript",html:"text/html",htm:"text/html",json:"application/json",png:"image/png",jpg:"image/jpeg",jpeg:"image/jpeg",gif:"image/gif",webp:"image/webp",svg:"image/svg+xml",ico:"image/x-icon",bmp:"image/bmp",avif:"image/avif",mp4:"video/mp4",webm:"video/webm",mov:"video/quicktime",m4v:"video/x-m4v",ogv:"video/ogg",mp3:"audio/mpeg",wav:"audio/wav",oga:"audio/ogg",ogg:"audio/ogg",m4a:"audio/mp4",woff:"font/woff",woff2:"font/woff2",ttf:"font/ttf",otf:"font/otf",eot:"application/vnd.ms-fontobject"};function _e(s){const t=s.lastIndexOf("/"),e=s.lastIndexOf(".");return e<=t?"application/octet-stream":we[s.slice(e+1).toLowerCase()]??"application/octet-stream"}function ve(s){let t="";for(let n=0;n<s.length;n+=32768)t+=String.fromCharCode(...s.subarray(n,n+32768));return btoa(t)}function q(s,t){return`data:${s};base64,${ve(t)}`}const z=/<([a-zA-Z][a-zA-Z0-9]*)((?:\s+[a-zA-Z_:][-a-zA-Z0-9_:.]*(?:\s*=\s*(?:"[^"]*"|'[^']*'|[^\s"'=<>`]+))?)*)(\s*\/?>)/g,O=/([a-zA-Z_:][-a-zA-Z0-9_:.]*)\s*=\s*(?:"([^"]*)"|'([^']*)'|([^\s"'=<>`]+))/g;function ee(s){const t=new Map;O.lastIndex=0;let e;for(;e=O.exec(s);){const n=e[1].toLowerCase();t.has(n)||t.set(n,e[2]??e[3]??e[4]??"")}return t}function te(s,t){switch(s){case"link":{const e=t.get("rel")??"";return/(^|\s)stylesheet(\s|$)/i.test(e)?t.has("href")?[{name:"href",context:"style",multi:!1}]:[]:[]}case"script":return t.has("src")?[{name:"src",context:"script",multi:!1}]:[];case"img":{const e=[];return t.has("src")&&e.push({name:"src",context:"image",multi:!1}),t.has("srcset")&&e.push({name:"srcset",context:"image",multi:!0}),e}case"source":{const e=[];return t.has("src")&&e.push({name:"src",context:"media",multi:!1}),t.has("srcset")&&e.push({name:"srcset",context:"media",multi:!0}),e}case"video":{const e=[];return t.has("src")&&e.push({name:"src",context:"media",multi:!1}),t.has("poster")&&e.push({name:"poster",context:"media",multi:!1}),e}case"audio":return t.has("src")?[{name:"src",context:"media",multi:!1}]:[];default:return[]}}function se(s){return s.split(",").map(t=>t.trim()).filter(t=>t!=="").map(t=>{const e=t.search(/\s/);return e===-1?{url:t,descriptor:""}:{url:t.slice(0,e),descriptor:t.slice(e).trim()}})}function ye(s){return s.map(t=>t.descriptor?`${t.url} ${t.descriptor}`:t.url).join(", ")}function $(s,t,e){Y(t.trim())||s.has(t)||s.set(t,{raw:t,context:e})}function ke(s){const t=new Map;z.lastIndex=0;let e;for(;e=z.exec(s);){const n=e[1].toLowerCase(),i=ee(e[2]??"");for(const o of te(n,i)){const u=i.get(o.name)??"";if(o.multi)for(const a of se(u))$(t,a.url,o.context);else $(t,u,o.context)}}return[...t.values()]}function je(s,t){let e=!1;const n=se(s).map(i=>{const o=t[i.url];return o===void 0?i:(e=!0,{url:o,descriptor:i.descriptor})});return e?ye(n):null}function be(s,t){return Object.keys(t).length===0?s:(z.lastIndex=0,s.replace(z,(e,n,i,o)=>{const u=ee(i),a=te(n.toLowerCase(),u);if(a.length===0)return e;const p=new Map(a.map(d=>[d.name,d]));let h=!1;const E=i.replace(O,(d,f,l,w,y)=>{const _=p.get(f.toLowerCase());if(!_)return d;const g=l??w??y??"",b=_.multi?je(g,t):t[g]??null;return b===null?d:(h=!0,`${f}="${b}"`)});return h?`<${n}${E}${o}`:e}))}const P=/url\(\s*(?:"([^"]*)"|'([^']*)'|([^'")\s]*))\s*\)/gi,U=/@font-face\s*\{[^}]*\}/gi;function ne(s,t,e){return s??t??e??""}function Se(s){const t=[];U.lastIndex=0;let e;for(;e=U.exec(s);)t.push([e.index,e.index+e[0].length]);return t}function Ee(s){const t=Se(s),e=new Map;P.lastIndex=0;let n;for(;n=P.exec(s);){const i=ne(n[1],n[2],n[3]),o=t.some(([u,a])=>n.index>=u&&n.index<a)?"font":"image";$(e,i,o)}return[...e.values()]}function Le(s,t){return Object.keys(t).length===0?s:(P.lastIndex=0,s.replace(P,(e,n,i,o)=>{const u=t[ne(n,i,o)];return u===void 0?e:`url("${u}")`}))}const Ae=Object.freeze(["allow-scripts"]),Ce="https://pi-studio-preview.invalid/",Ne="default-src 'none'; img-src data:; style-src 'unsafe-inline' data:; script-src 'unsafe-inline' data:; font-src data:; media-src data:",Te=`<script>(function(){document.addEventListener("click",function(e){var a=e.target&&e.target.closest&&e.target.closest('a[href^="#"]');if(!a)return;var frag=a.getAttribute("href").slice(1);e.preventDefault();if(!frag){window.scrollTo(0,0);return;}var el=document.getElementById(frag)||document.getElementsByName(frag)[0];if(el)el.scrollIntoView();},true);})();<\/script>`,Re=/<head(\s[^>]*)?>/i,Be=/<html(\s[^>]*)?>/i,Me=/<base[\s/>]/i;function ze(s,t){const e=be(s,t.assets??{}),n=[];t.blockRemote&&n.push(`<meta http-equiv="Content-Security-Policy" content="${Ne}">`),Me.test(e)||(n.push(`<base href="${Ce}">`),n.push(Te));const i=n.join("");if(i==="")return e;const o=Re.exec(e);if(o){const a=o.index+o[0].length;return e.slice(0,a)+i+e.slice(a)}const u=Be.exec(e);if(u){const a=u.index+u[0].length;return e.slice(0,a)+`<head>${i}</head>`+e.slice(a)}return`<head>${i}</head>`+e}const V=6;async function W(s,t,e){let n=0;async function i(){for(;n<s.length;){const o=s[n];n+=1,await e(o)}}await Promise.all(Array.from({length:Math.min(t,s.length)},i))}function Q(s){const t=new Map;for(const e of s){const n=t.get(e.path);n?n.push(e):t.set(e.path,[e])}return t}async function Pe(s,t){const e={},n=[];let i=0,o=0,u=!1;const a=[];for(const d of s)d.kind==="skip"?n.push({raw:d.raw,reason:d.reason}):a.push(d);function p(d,f){for(const l of d)n.push({raw:l.raw,reason:f})}async function h(d,f){if(u){p(f,"over-cap");return}let l;try{l=await t.fetchBytes(d)}catch{p(f,"fetch-failed");return}if(!K(i,o,l.byteLength)){u=!0,p(f,"over-cap");return}if(i+=1,o+=l.byteLength,f[0].context!=="style"){const m=q(_e(d),l);for(const j of f)e[j.raw]=m;return}const w=new TextDecoder().decode(l),y=X(d),_=Ee(w).map(m=>J(m.raw,y,t.root,m.context,t.homeDir)),g=[];for(const m of _)m.kind==="skip"?n.push({raw:m.raw,reason:m.reason}):g.push(m);const b=Q(g);await W([...b.entries()],V,([m,j])=>h(m,j));const N={};for(const m of g){const j=e[m.raw];j!==void 0&&(N[m.raw]=j)}const L=Le(w,N),S=new TextEncoder().encode(L),k=S.byteLength-l.byteLength;if(k>0&&!K(i-1,o-l.byteLength,S.byteLength)){u=!0,p(f,"over-cap");return}o+=k;const T=q("text/css",S);for(const m of f)e[m.raw]=T}const E=Q(a);return await W([...E.entries()],V,([d,f])=>h(d,f)),{assets:e,skipped:n}}const Ie="_wrap_1et27_1",Oe="_toolbar_1et27_7",$e="_modeToggle_1et27_20",De="_controls_1et27_24",He="_switchLabel_1et27_29",Fe="_streamedNote_1et27_37",Ke="_skippedNote_1et27_45",qe="_skippedToggle_1et27_52",Ue="_skippedList_1et27_64",Ve="_body_1et27_69",We="_frame_1et27_73",Qe="_tooLarge_1et27_79",x={wrap:Ie,toolbar:Oe,modeToggle:$e,controls:De,switchLabel:He,streamedNote:Fe,skippedNote:Ke,skippedToggle:qe,skippedList:Ue,body:Ve,frame:We,tooLarge:Qe},Ze=Ae.join(" "),Z=Object.freeze({}),Ge=Object.freeze([]),oe={external:"external","outside-workspace":"outside workspace",unsupported:"unsupported","over-cap":"over cap","fetch-failed":"not found"};function Xe(s){const t=new Map;for(const e of s){const n=oe[e.reason];t.set(n,(t.get(n)??0)+1)}return[...t.entries()].map(([e,n])=>`${n} ${e}`).join(", ")}function Ye(s){let t=2166136261;for(let e=0;e<s.length;e++)t^=s.charCodeAt(e),t=Math.imul(t,16777619);return(t>>>0).toString(16)}function M(s){return`${(s/(1024*1024)).toFixed(1)} MB`}function dt({path:s,workspaceCwd:t}){var D,H;const e=me(s),[n,i]=v.useState("preview"),[o,u]=v.useState(!1),[a,p]=v.useState(!1),h=ie(),E=F(c=>c.client),d=F(c=>c.daemon),f=ue(),l=e.kind==="inline"||e.kind==="streamed"?e.content:null,w=v.useMemo(()=>{const c=G(s,t);return c?X(c):null},[s,t]),y=v.useMemo(()=>w!==null?xe(w,t,f):null,[w,t,f]),_=v.useMemo(()=>l===null||w===null||y===null?[]:ke(l).map(c=>J(c.raw,w,y,c.context,f)),[l,w,y,f]),g=v.useMemo(()=>_.some(c=>c.kind==="local"),[_]),b=v.useMemo(()=>_.flatMap(c=>c.kind==="skip"?[{raw:c.raw,reason:c.reason}]:[]),[_]),N=v.useMemo(()=>g&&l!==null?Ye(l):"",[l,g]),L=ae({queryKey:B.htmlAssetBundle(s,N),queryFn:()=>y===null?Promise.resolve({assets:{},skipped:[]}):Pe(_,{root:y,homeDir:f,fetchBytes:async re=>{if(!E||!d)throw new Error("not connected");return(await de(d).download(re)).bytes}}),enabled:g,staleTime:1/0}),S=g?((D=L.data)==null?void 0:D.assets)??Z:Z,k=g?((H=L.data)==null?void 0:H.skipped)??Ge:b,T=v.useMemo(()=>l===null?null:ze(l,{assets:S,blockRemote:o}),[l,S,o]);function m(){h.invalidateQueries({queryKey:B.fileRead(s)}),h.invalidateQueries({queryKey:B.fileDownload(s)}),h.invalidateQueries({queryKey:B.htmlAssetBundleByPath(s)})}switch(e.kind){case"loading":return r.jsxs(A,{children:[r.jsx(R,{size:"sm"})," Loading..."]});case"streaming":return r.jsxs(A,{children:[r.jsx(R,{size:"sm"})," Streaming ",M(e.size)," file..."]});case"stream-error":case"error":return r.jsxs(A,{children:["Error: ",e.message]});case"too-large":{const c=s.split("/").pop()||s;return r.jsx(A,{children:r.jsxs("div",{className:x.tooLarge,children:[r.jsxs("div",{children:[M(e.size)," — too large to display (display ceiling is"," ",M(e.maxDisplayBytes),")."]}),e.downloading?r.jsx(R,{size:"sm"}):e.downloadUrl?r.jsx("a",{href:e.downloadUrl,download:e.downloadName||c,children:r.jsx(C,{size:"sm",children:"Save file"})}):r.jsx(C,{size:"sm",onClick:()=>e.requestDownload(),children:"Download"})]})})}}if(l===null||T===null)return null;if(g&&L.data===void 0)return r.jsxs(A,{children:[r.jsx(R,{size:"sm"})," Loading assets..."]});const j=s.split("/").pop()||s;return r.jsxs("div",{className:x.wrap,children:[r.jsxs("div",{className:x.toolbar,children:[r.jsxs("div",{className:x.modeToggle,children:[r.jsx(C,{size:"xs",variant:n==="preview"?"default":"ghost",onClick:()=>i("preview"),children:"Preview"}),r.jsx(C,{size:"xs",variant:n==="source"?"default":"ghost",onClick:()=>i("source"),children:"Source"})]}),r.jsxs("div",{className:x.controls,children:[r.jsxs("label",{className:x.switchLabel,children:[r.jsx(fe,{checked:o,onCheckedChange:u,"aria-label":"Block remote resources"}),"Block remote resources"]}),r.jsx(C,{size:"xs",variant:"ghost",onClick:m,children:"Reload"})]})]}),e.kind==="streamed"?r.jsxs("div",{className:x.streamedNote,children:[M(e.size)," file streamed"]}):null,k.length>0?r.jsxs("div",{className:x.skippedNote,children:[r.jsxs("button",{type:"button",className:x.skippedToggle,onClick:()=>p(c=>!c),children:[k.length," reference",k.length===1?"":"s"," not inlined (",Xe(k),")"]}),a?r.jsx("ul",{className:x.skippedList,children:k.map(c=>r.jsxs("li",{children:[c.raw," — ",oe[c.reason]]},c.raw))}):null]}):null,r.jsxs("div",{className:x.body,children:[r.jsx("iframe",{sandbox:Ze,srcDoc:T,referrerPolicy:"no-referrer",allow:"",className:x.frame,style:n==="preview"?void 0:{display:"none"},title:j}),n==="source"?r.jsx(pe,{path:s,content:l}):null]})]})}export{dt as HtmlViewer};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{j as o}from"./vendor-react-DQUAl2K8.js";import{E as s,S as a}from"./index-CchwjcLZ.js";import{u as t}from"./use-file-download-8zPww5m-.js";import"./vendor-query-i7fr__Xm.js";import"./vendor-DaF96HbP.js";import"./vendor-icons-Bh5CT32q.js";import"./vendor-overlays-3MkedLFU.js";import"./vendor-dnd-CayJj8TC.js";const n="_wrap_1vzo5_1",m="_image_1vzo5_15",i={wrap:n,image:m};function x({path:e,workspaceCwd:p}){const r=t(e);return r.isLoading?o.jsxs(s,{children:[o.jsx(a,{size:"sm"})," Loading image..."]}):r.isError?o.jsxs(s,{children:["Error: ",r.error instanceof Error?r.error.message:"unknown error"]}):r.data?o.jsx("div",{className:i.wrap,children:o.jsx("img",{className:i.image,src:r.data.objectUrl,alt:e.split("/").pop()||e})}):null}export{x as ImageViewer};
|