@av-pi-studio/web-client 0.0.89 → 0.0.90

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (21) hide show
  1. package/dist/web/assets/{BinaryFallbackViewer-C5mL51vj.js → BinaryFallbackViewer-lvGSRI8m.js} +1 -1
  2. package/dist/web/assets/{ChatPanel-o1LQTTPg.js → ChatPanel-dNQvYFah.js} +1 -1
  3. package/dist/web/assets/{CodeView-DWNPh5RV.js → CodeView-GqSGzzdY.js} +1 -1
  4. package/dist/web/assets/{FilePanel-WBjvhtIF.js → FilePanel-CiEL9P07.js} +1 -1
  5. package/dist/web/assets/{HtmlViewer-C1BVt6Jc.js → HtmlViewer-DhHisgo0.js} +1 -1
  6. package/dist/web/assets/{ImageViewer-h9C9D8v9.js → ImageViewer-DBf1slSX.js} +1 -1
  7. package/dist/web/assets/{MarkdownFileViewer-BQeO16YO.js → MarkdownFileViewer-ConompLL.js} +1 -1
  8. package/dist/web/assets/{MoleculeViewerPanel-DfwAiUFo.js → MoleculeViewerPanel-t2xCBXAO.js} +1 -1
  9. package/dist/web/assets/{TerminalPanel-3Xef8_VS.js → TerminalPanel-DLFQvU4h.js} +1 -1
  10. package/dist/web/assets/{TextViewer-DQlVqrhS.js → TextViewer-BKC2bW7m.js} +1 -1
  11. package/dist/web/assets/{VideoViewer-CUwy7vap.js → VideoViewer-CGpLyjak.js} +1 -1
  12. package/dist/web/assets/{href-resolution-Bu3Ezb0Z.js → href-resolution-Djd1Zdrz.js} +1 -1
  13. package/dist/web/assets/{index-CRcOAGBq.js → index-CWQ7GUFk.js} +3 -3
  14. package/dist/web/assets/markdown-Bbsr2xVg.js +5 -0
  15. package/dist/web/assets/markdown-C15eCO0s.css +1 -0
  16. package/dist/web/assets/{use-file-download-C5RZM273.js → use-file-download-zBrxUX0K.js} +1 -1
  17. package/dist/web/assets/{use-file-watch-C6t0UJSi.js → use-file-watch-BLigZDy5.js} +1 -1
  18. package/dist/web/index.html +1 -1
  19. package/package.json +3 -3
  20. package/dist/web/assets/markdown-DEMXo8TU.css +0 -1
  21. package/dist/web/assets/markdown-S4LuDRgo.js +0 -5
@@ -0,0 +1,5 @@
1
+ const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/mermaid.core-BEntOW_N.js","assets/vendor-DVp0ZLQo.js","assets/vendor-react-DQUAl2K8.js","assets/vendor-CEK31ho9.css"])))=>i.map(i=>d[i]);
2
+ import{_ as L}from"./vendor-DVp0ZLQo.js";import{r as m,j as i}from"./vendor-react-DQUAl2K8.js";import{b as N,u as _,q as H,s as P,t as $,k as j,S as F,v as I,w as E,x as R}from"./index-CWQ7GUFk.js";import{c as D}from"./vendor-highlight-BjiGXuEM.js";import{r as y}from"./href-resolution-Djd1Zdrz.js";import{M as V,r as A,a as U,b as O}from"./vendor-markdown-Bc_dOmsB.js";const v="github-dark";let k=null;const b=new Set(["plaintext"]);function B(){return k||(k=D({themes:[v],langs:["plaintext"]})),k}async function z(r,e){if(b.has(e))return e;try{return await r.loadLanguage(e),b.add(e),e}catch{return"plaintext"}}async function G(r,e){const t=await B(),n=await z(t,e);return t.codeToHtml(r,{lang:n,theme:v})}const M={background:"--pi-color-surface1",primaryColor:"--pi-color-surface2",primaryTextColor:"--pi-color-foreground",primaryBorderColor:"--pi-color-surface3",lineColor:"--pi-color-foregroundMuted",secondaryColor:"--pi-color-surface3",secondaryTextColor:"--pi-color-foreground",secondaryBorderColor:"--pi-color-surface4",tertiaryColor:"--pi-color-surface1",tertiaryTextColor:"--pi-color-foreground",tertiaryBorderColor:"--pi-color-surface3",textColor:"--pi-color-foreground"};function K(r){var t;const e={};for(const[n,a]of Object.entries(M)){const s=(t=r[a])==null?void 0:t.trim();s&&(e[n]=s)}return e}function q(){const r=getComputedStyle(document.documentElement),e={};for(const t of Object.values(M))e[t]=r.getPropertyValue(t);return K(e)}const Y="_prose_1697a_1",Z="_streaming_1697a_26",W="_inlineCode_1697a_87",J="_mermaid_1697a_105",Q="_mermaidError_1697a_114",X="_mermaidErrorMessage_1697a_117",ee="_inlineImage_1697a_148",te="_inlineImageSkeleton_1697a_157",re="_inlineImageFallback_1697a_168",d={prose:Y,streaming:Z,inlineCode:W,mermaid:J,mermaidError:Q,mermaidErrorMessage:X,inlineImage:ee,inlineImageSkeleton:te,inlineImageFallback:re},ne={"http:":!0,"https:":!0,"data:":!0,"blob:":!0},ae=/^([a-zA-Z][a-zA-Z0-9+.-]*):/;function se(r,e,t){const n=r.trim();if(!n)return{kind:"unresolvable"};const a=n.split(/[?#]/,1)[0];if(!a)return{kind:"unresolvable"};const s=ae.exec(a);if(s)return`${s[1].toLowerCase()}:`in ne?{kind:"remote"}:{kind:"unresolvable"};const o=y(r,e,t);return o?N(o)!=="image"?{kind:"unresolvable"}:{kind:"local",path:o}:{kind:"unresolvable"}}function ie(r,e,t,n){return r.kind==="remote"?{kind:"remote",src:t||"",alt:n}:r.kind==="unresolvable"?{kind:"unresolvable",fallbackText:n||t||"(image)"}:e.status==="loading"||e.status==="idle"?{kind:"loading"}:e.status==="ready"?{kind:"ready",objectUrl:e.objectUrl,alt:n,path:r.path}:{kind:"error",fallbackText:n||r.path||"(image)"}}function C(r,e,t){return{workspaceCwd:t??(r||"~"),targetPaneId:e??void 0}}function oe(r,e,t){if(!r||!e){t({status:"idle"});return}let n=!1;return t({status:"loading"}),H(r,e).then(a=>{n||t({status:"ready",objectUrl:a.objectUrl})}).catch(a=>{n||t({status:"error",message:a instanceof Error?a.message:String(a)})}),()=>{n=!0,P(r)}}function le(r){const e=_(s=>s.client),t=_(s=>s.daemon),[n,a]=m.useState({status:"idle"});return m.useEffect(()=>oe(r,e&&t?o=>$(t).download(o):null,a),[e,t,r]),n}const ce=m.memo(function({src:e,alt:t,assetBase:n,owningPaneId:a,workspaceCwd:s}){const o=j(),u=m.useMemo(()=>se(e||"",n,o),[e,n,o]),c=le(u.kind==="local"?u.path:null),l=ie(u,c,e,t);if(l.kind==="remote")return i.jsx("img",{src:l.src,alt:l.alt,className:d.inlineImage});if(l.kind==="unresolvable"||l.kind==="error")return i.jsx("code",{className:d.inlineImageFallback,children:l.fallbackText});if(l.kind==="loading")return i.jsx("div",{className:d.inlineImageSkeleton,children:i.jsx(F,{size:"sm"})});const g=C(n,a??null,s??null),p=()=>{E(l.path,g.workspaceCwd,g.targetPaneId)};return i.jsx("img",{src:l.objectUrl,alt:l.alt,className:d.inlineImage,title:l.path,draggable:!0,onDragStart:I(l.path),onClick:p,style:{cursor:"pointer"}})});function ue(r,e,t){const n=r.trim();if(!n)return{kind:"external"};if(n.startsWith("#"))return{kind:"external"};const a=y(r,e,t);return a?{kind:"local",path:a}:{kind:"external"}}function de({href:r,children:e,assetBase:t,owningPaneId:n,workspaceCwd:a}){const s=j(),o=ue(r??"",t,s);if(o.kind==="external")return i.jsx("a",{href:r,children:e});const u=o.path,c=C(t,n,a);return i.jsx("a",{href:r,draggable:!0,onDragStart:I(u),onClick:l=>{l.preventDefault(),E(u,c.workspaceCwd,c.targetPaneId)},children:e})}const S=/^ {0,3}([-*+]|\d{1,9}[.)])(\s|$)/,me=/^(\s*)(`{3,}|~{3,})(.*)$/;function fe(r){return S.test(r[0]??"")}function ge(r,e){for(let t=e;t<r.length;t++)if((r[t]??"").trim()!=="")return t;return-1}function pe(r){if(!r)return{blocks:[],tail:""};const e=r.split(`
3
+ `),t=[];let n=[],a=null,s=!1,o=!1;const u=()=>{const c=n.join(`
4
+ `).trim();c&&t.push(c),n=[]};for(let c=0;c<e.length;c++){const l=e[c]??"",g=l.trim();if(a!==null){if(n.push(l),a.test(g)){const f=s;a=null,s=!1,f&&u()}continue}const p=me.exec(l);if(p&&!o){const f=p[2];a=new RegExp(`^[${f[0]}]{${f.length},}$`),s=p[1]==="",n.push(l);continue}if(g===""&&n.length===0)continue;if((g.split("$$").length-1)%2===1&&(o=!o),g===""&&!o){const f=ge(e,c+1),h=f===-1?null:e[f]??"",w=h!==null&&!/^\s/.test(h),T=h!==null&&S.test(h)&&fe(n);if(w&&!T){u(),c=f-1;continue}}n.push(l)}return{blocks:t,tail:n.join(`
5
+ `)}}function he({language:r,code:e}){const[t,n]=m.useState(null);return m.useEffect(()=>{let a=!1;return G(e,r).then(s=>{a||n(s)}),()=>{a=!0}},[e,r]),t?i.jsx("div",{className:d.prose,dangerouslySetInnerHTML:{__html:t}}):i.jsx("pre",{children:i.jsx("code",{children:e})})}function ke({code:r}){const[e]=m.useState(()=>`mermaid-${R()}`),[t,n]=m.useState({status:"pending"});return m.useEffect(()=>{let a=!1;return(async()=>{try{const{default:s}=await L(async()=>{const{default:u}=await import("./mermaid.core-BEntOW_N.js").then(c=>c.b0);return{default:u}},__vite__mapDeps([0,1,2,3]));s.initialize({startOnLoad:!1,theme:"base",themeVariables:q(),securityLevel:"strict",fontFamily:"var(--pi-font-ui)"});const{svg:o}=await s.render(e,r);a||n({status:"ready",svg:o})}catch(s){a||n({status:"error",message:s instanceof Error?s.message:"Failed to render diagram"})}})(),()=>{a=!0}},[e,r]),t.status==="ready"?i.jsx("div",{className:d.mermaid,dangerouslySetInnerHTML:{__html:t.svg}}):t.status==="error"?i.jsxs("div",{className:d.mermaidError,children:[i.jsxs("p",{className:d.mermaidErrorMessage,children:["Failed to render diagram: ",t.message]}),i.jsx("pre",{children:i.jsx("code",{children:r})})]}):i.jsx("pre",{children:i.jsx("code",{children:r})})}function xe({className:r,children:e,...t}){const n=/language-(\w+)/.exec(r??""),a=!!n,s=String(e).replace(/\n$/,"");if(a&&n){const o=n[1]??"plaintext";return o==="mermaid"?i.jsx(ke,{code:s}):i.jsx(he,{language:o,code:s})}return i.jsx("code",{className:d.inlineCode,...t,children:e})}function _e({className:r,children:e,...t}){return/language-(\w+)/.test(r??"")?i.jsx("pre",{children:i.jsx("code",{children:String(e).replace(/\n$/,"")})}):i.jsx("code",{className:d.inlineCode,...t,children:e})}const be=[U,O],je=[A],Ie=[],x=m.memo(function({text:e,assetBase:t=null,owningPaneId:n=null,workspaceCwd:a=null,lean:s=!1}){return i.jsx(V,{remarkPlugins:be,rehypePlugins:s?Ie:je,components:{code:s?_e:xe,img:o=>i.jsx(ce,{...o,assetBase:t,owningPaneId:n,workspaceCwd:a}),a:o=>i.jsx(de,{...o,assetBase:t,owningPaneId:n,workspaceCwd:a})},children:e})});function Te({text:r,assetBase:e,owningPaneId:t,workspaceCwd:n}){return i.jsx("div",{className:d.prose,children:i.jsx(x,{text:r,assetBase:e,owningPaneId:t,workspaceCwd:n})})}function Le({text:r,assetBase:e,owningPaneId:t,workspaceCwd:n}){const{blocks:a,tail:s}=m.useMemo(()=>pe(r),[r]);return i.jsxs("div",{className:`${d.prose} ${d.streaming}`,children:[a.map((o,u)=>i.jsx(x,{text:o,assetBase:e,owningPaneId:t,workspaceCwd:n},u)),s!==""&&i.jsx(x,{text:s,lean:!0,assetBase:e,owningPaneId:t,workspaceCwd:n})]})}export{Te as M,Le as S,C as r};
@@ -0,0 +1 @@
1
+ ._prose_1697a_1{font-size:var(--pi-font-size-md);line-height:1.5;color:var(--pi-color-foreground);word-break:break-word;white-space:normal}._prose_1697a_1>:first-child{margin-top:0}._prose_1697a_1>:last-child{margin-bottom:0}._streaming_1697a_26>:last-child:after{content:"";display:inline-block;width:var(--pi-spacing-7);height:var(--pi-spacing-14);margin-left:var(--pi-spacing-2);vertical-align:text-bottom;background:var(--pi-color-accentBright);animation:_caretBlink_1697a_1 1s step-start infinite}@keyframes _caretBlink_1697a_1{50%{opacity:0}}@media(prefers-reduced-motion:reduce){._streaming_1697a_26>:last-child:after{animation:none}}._streaming_1697a_26>*{animation:_streamBlockIn_1697a_1 .18s ease-out}@keyframes _streamBlockIn_1697a_1{0%{opacity:0;transform:translateY(3px)}}@media(prefers-reduced-motion:reduce){._streaming_1697a_26>*{animation:none}}._prose_1697a_1 p{margin:.5em 0}._prose_1697a_1 a{color:var(--pi-color-accentBright)}._prose_1697a_1 pre{margin:.5em 0;padding:var(--pi-spacing-10) var(--pi-spacing-12);border-radius:var(--pi-radius-md);overflow-x:auto;background:var(--pi-color-surface0)}._prose_1697a_1 pre code{font-family:var(--pi-font-mono);font-size:var(--pi-font-size-sm);background:none;padding:0}._inlineCode_1697a_87{font-family:var(--pi-font-mono);font-size:.9em;background:var(--pi-color-surface0);border-radius:var(--pi-radius-base);padding:.1em .35em}._prose_1697a_1 ._katex-display_1697a_96{margin:.5em 0;overflow-x:auto;overflow-y:hidden}._mermaid_1697a_105{margin:.5em 0;display:flex;justify-content:center;overflow-x:auto}._mermaid_1697a_105 svg{max-width:100%}._mermaidError_1697a_114{margin:.5em 0}._mermaidErrorMessage_1697a_117{margin:0 0 .25em;color:var(--pi-color-destructive);font-size:var(--pi-font-size-xs)}._prose_1697a_1 table{border-collapse:collapse;margin:.5em 0}._prose_1697a_1 th,._prose_1697a_1 td{border:1px solid var(--pi-color-surface3);padding:var(--pi-spacing-4) var(--pi-spacing-8)}._prose_1697a_1 blockquote{margin:.5em 0;padding-left:var(--pi-spacing-10);border-left:2px solid var(--pi-color-surface3);color:var(--pi-color-foregroundMuted)}._prose_1697a_1 ul,._prose_1697a_1 ol{padding-left:1.4em}._inlineImage_1697a_148{max-width:100%;max-height:60vh;height:auto;border-radius:var(--pi-radius-base);border:1px solid var(--pi-color-border);display:block;margin:.5em 0}._inlineImageSkeleton_1697a_157{display:flex;align-items:center;justify-content:center;gap:var(--pi-spacing-8);color:var(--pi-color-foregroundMuted);font-size:var(--pi-font-size-xs);padding:var(--pi-spacing-20);min-height:200px;margin:.5em 0}._inlineImageFallback_1697a_168{font-family:var(--pi-font-mono);font-size:.9em;background:var(--pi-color-surface0);border-radius:var(--pi-radius-base);padding:.1em .35em;word-break:break-word}
@@ -1 +1 @@
1
- import{r as a}from"./vendor-react-DQUAl2K8.js";import{u as f}from"./vendor-query-i7fr__Xm.js";import{u as i,t as m,a as y}from"./index-CRcOAGBq.js";function p(o,s=!0){var u;const l=i(e=>e.client),n=i(e=>e.daemon),c=f({queryKey:y.fileDownload(o),queryFn:async()=>{if(!l||!n)throw new Error("not connected");const e=await m(n).download(o),t=new Blob([Uint8Array.from(e.bytes)],{type:e.mimeType||"application/octet-stream"});return{objectUrl:URL.createObjectURL(t),mimeType:e.mimeType,fileName:e.fileName}},enabled:!!l&&!!n&&!!o&&s,staleTime:1/0,gcTime:0}),r=a.useRef(null);return a.useEffect(()=>{var t;const e=((t=c.data)==null?void 0:t.objectUrl)??null;e&&r.current&&r.current!==e&&URL.revokeObjectURL(r.current),r.current=e},[(u=c.data)==null?void 0:u.objectUrl]),a.useEffect(()=>()=>{r.current&&URL.revokeObjectURL(r.current)},[]),c}export{p as u};
1
+ import{r as a}from"./vendor-react-DQUAl2K8.js";import{u as f}from"./vendor-query-i7fr__Xm.js";import{u as i,t as m,a as y}from"./index-CWQ7GUFk.js";function p(o,s=!0){var u;const l=i(e=>e.client),n=i(e=>e.daemon),c=f({queryKey:y.fileDownload(o),queryFn:async()=>{if(!l||!n)throw new Error("not connected");const e=await m(n).download(o),t=new Blob([Uint8Array.from(e.bytes)],{type:e.mimeType||"application/octet-stream"});return{objectUrl:URL.createObjectURL(t),mimeType:e.mimeType,fileName:e.fileName}},enabled:!!l&&!!n&&!!o&&s,staleTime:1/0,gcTime:0}),r=a.useRef(null);return a.useEffect(()=>{var t;const e=((t=c.data)==null?void 0:t.objectUrl)??null;e&&r.current&&r.current!==e&&URL.revokeObjectURL(r.current),r.current=e},[(u=c.data)==null?void 0:u.objectUrl]),a.useEffect(()=>()=>{r.current&&URL.revokeObjectURL(r.current)},[]),c}export{p as u};
@@ -1 +1 @@
1
- import{r as a}from"./vendor-react-DQUAl2K8.js";import{u as w}from"./index-CRcOAGBq.js";function b(e){return typeof e=="object"&&e!==null&&"type"in e&&e.type==="file_changed"&&"path"in e&&typeof e.path=="string"}const l=new WeakMap;function p(e,t,i){let s=l.get(e);s||(s=new Map,l.set(e,s));let o=s.get(t);if(!o){const r={count:0,resolvedPath:null,listeners:new Set,dispose:()=>{}},f=e.connection.onSessionMessage(c=>{const n=c;if(!b(n)||n.path!==t&&n.path!==r.resolvedPath)return;const d=Date.now();for(const h of r.listeners)h(d)});e.connection.request("file_watch_subscribe",{path:t}).then(c=>{const n=c;if((n==null?void 0:n.ok)===!1){console.warn(`watchFile: ${n.error??"subscribe failed"} for "${t}"`);return}typeof(n==null?void 0:n.path)=="string"&&(r.resolvedPath=n.path)}).catch(()=>{}),r.dispose=()=>{f(),e.connection.request("file_watch_unsubscribe",{path:t}).catch(()=>{})},o=r,s.set(t,o)}o.count++,o.listeners.add(i);let u=!1;return()=>{if(u)return;u=!0;const r=s.get(t);r&&(r.listeners.delete(i),r.count--,r.count===0&&(s.delete(t),r.dispose()))}}function v(e){const t=w(o=>o.client),[i,s]=a.useState(null);return a.useEffect(()=>{if(!(!t||!e))return p(t,e,s)},[t,e]),{changedAt:i}}export{v as u};
1
+ import{r as a}from"./vendor-react-DQUAl2K8.js";import{u as w}from"./index-CWQ7GUFk.js";function b(e){return typeof e=="object"&&e!==null&&"type"in e&&e.type==="file_changed"&&"path"in e&&typeof e.path=="string"}const l=new WeakMap;function p(e,t,i){let s=l.get(e);s||(s=new Map,l.set(e,s));let o=s.get(t);if(!o){const r={count:0,resolvedPath:null,listeners:new Set,dispose:()=>{}},f=e.connection.onSessionMessage(c=>{const n=c;if(!b(n)||n.path!==t&&n.path!==r.resolvedPath)return;const d=Date.now();for(const h of r.listeners)h(d)});e.connection.request("file_watch_subscribe",{path:t}).then(c=>{const n=c;if((n==null?void 0:n.ok)===!1){console.warn(`watchFile: ${n.error??"subscribe failed"} for "${t}"`);return}typeof(n==null?void 0:n.path)=="string"&&(r.resolvedPath=n.path)}).catch(()=>{}),r.dispose=()=>{f(),e.connection.request("file_watch_unsubscribe",{path:t}).catch(()=>{})},o=r,s.set(t,o)}o.count++,o.listeners.add(i);let u=!1;return()=>{if(u)return;u=!0;const r=s.get(t);r&&(r.listeners.delete(i),r.count--,r.count===0&&(s.delete(t),r.dispose()))}}function v(e){const t=w(o=>o.client),[i,s]=a.useState(null);return a.useEffect(()=>{if(!(!t||!e))return p(t,e,s)},[t,e]),{changedAt:i}}export{v as u};
@@ -5,7 +5,7 @@
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-CRcOAGBq.js"></script>
8
+ <script type="module" crossorigin src="/assets/index-CWQ7GUFk.js"></script>
9
9
  <link rel="modulepreload" crossorigin href="/assets/vendor-react-DQUAl2K8.js">
10
10
  <link rel="modulepreload" crossorigin href="/assets/vendor-query-i7fr__Xm.js">
11
11
  <link rel="modulepreload" crossorigin href="/assets/vendor-DVp0ZLQo.js">
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@av-pi-studio/web-client",
3
- "version": "0.0.89",
3
+ "version": "0.0.90",
4
4
  "files": [
5
5
  "dist",
6
6
  "!dist/**/*.map",
@@ -16,8 +16,8 @@
16
16
  "clean": "rm -rf dist *.tsbuildinfo"
17
17
  },
18
18
  "devDependencies": {
19
- "@av-pi-studio/client": "^0.0.89",
20
- "@av-pi-studio/protocol": "^0.0.89",
19
+ "@av-pi-studio/client": "^0.0.90",
20
+ "@av-pi-studio/protocol": "^0.0.90",
21
21
  "@codemirror/language": "^6.12.4",
22
22
  "@codemirror/language-data": "^6.5.2",
23
23
  "@codemirror/state": "^6.7.1",
@@ -1 +0,0 @@
1
- ._prose_k8kw9_1{font-size:var(--pi-font-size-md);line-height:1.5;color:var(--pi-color-foreground);word-break:break-word;white-space:normal}._prose_k8kw9_1>:first-child{margin-top:0}._prose_k8kw9_1>:last-child{margin-bottom:0}._streaming_k8kw9_26>:last-child:after{content:"";display:inline-block;width:var(--pi-spacing-7);height:var(--pi-spacing-14);margin-left:var(--pi-spacing-2);vertical-align:text-bottom;background:var(--pi-color-accentBright);animation:_caretBlink_k8kw9_1 1s step-start infinite}@keyframes _caretBlink_k8kw9_1{50%{opacity:0}}@media(prefers-reduced-motion:reduce){._streaming_k8kw9_26>:last-child:after{animation:none}}._prose_k8kw9_1 p{margin:.5em 0}._prose_k8kw9_1 a{color:var(--pi-color-accentBright)}._prose_k8kw9_1 pre{margin:.5em 0;padding:var(--pi-spacing-10) var(--pi-spacing-12);border-radius:var(--pi-radius-md);overflow-x:auto;background:var(--pi-color-surface0)}._prose_k8kw9_1 pre code{font-family:var(--pi-font-mono);font-size:var(--pi-font-size-sm);background:none;padding:0}._inlineCode_k8kw9_65{font-family:var(--pi-font-mono);font-size:.9em;background:var(--pi-color-surface0);border-radius:var(--pi-radius-base);padding:.1em .35em}._prose_k8kw9_1 ._katex-display_k8kw9_74{margin:.5em 0;overflow-x:auto;overflow-y:hidden}._mermaid_k8kw9_83{margin:.5em 0;display:flex;justify-content:center;overflow-x:auto}._mermaid_k8kw9_83 svg{max-width:100%}._mermaidError_k8kw9_92{margin:.5em 0}._mermaidErrorMessage_k8kw9_95{margin:0 0 .25em;color:var(--pi-color-destructive);font-size:var(--pi-font-size-xs)}._prose_k8kw9_1 table{border-collapse:collapse;margin:.5em 0}._prose_k8kw9_1 th,._prose_k8kw9_1 td{border:1px solid var(--pi-color-surface3);padding:var(--pi-spacing-4) var(--pi-spacing-8)}._prose_k8kw9_1 blockquote{margin:.5em 0;padding-left:var(--pi-spacing-10);border-left:2px solid var(--pi-color-surface3);color:var(--pi-color-foregroundMuted)}._prose_k8kw9_1 ul,._prose_k8kw9_1 ol{padding-left:1.4em}._inlineImage_k8kw9_126{max-width:100%;max-height:60vh;height:auto;border-radius:var(--pi-radius-base);border:1px solid var(--pi-color-border);display:block;margin:.5em 0}._inlineImageSkeleton_k8kw9_135{display:flex;align-items:center;justify-content:center;gap:var(--pi-spacing-8);color:var(--pi-color-foregroundMuted);font-size:var(--pi-font-size-xs);padding:var(--pi-spacing-20);min-height:200px;margin:.5em 0}._inlineImageFallback_k8kw9_146{font-family:var(--pi-font-mono);font-size:.9em;background:var(--pi-color-surface0);border-radius:var(--pi-radius-base);padding:.1em .35em;word-break:break-word}
@@ -1,5 +0,0 @@
1
- const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/mermaid.core-BEntOW_N.js","assets/vendor-DVp0ZLQo.js","assets/vendor-react-DQUAl2K8.js","assets/vendor-CEK31ho9.css"])))=>i.map(i=>d[i]);
2
- import{_ as L}from"./vendor-DVp0ZLQo.js";import{r as m,j as i}from"./vendor-react-DQUAl2K8.js";import{b as N,u as _,q as H,s as P,t as $,k as j,S as F,v as I,w as E,x as R}from"./index-CRcOAGBq.js";import{c as D}from"./vendor-highlight-BjiGXuEM.js";import{r as y}from"./href-resolution-Bu3Ezb0Z.js";import{M as V,r as A,a as U,b as O}from"./vendor-markdown-Bc_dOmsB.js";const v="github-dark";let h=null;const b=new Set(["plaintext"]);function B(){return h||(h=D({themes:[v],langs:["plaintext"]})),h}async function z(r,e){if(b.has(e))return e;try{return await r.loadLanguage(e),b.add(e),e}catch{return"plaintext"}}async function G(r,e){const t=await B(),n=await z(t,e);return t.codeToHtml(r,{lang:n,theme:v})}const w={background:"--pi-color-surface1",primaryColor:"--pi-color-surface2",primaryTextColor:"--pi-color-foreground",primaryBorderColor:"--pi-color-surface3",lineColor:"--pi-color-foregroundMuted",secondaryColor:"--pi-color-surface3",secondaryTextColor:"--pi-color-foreground",secondaryBorderColor:"--pi-color-surface4",tertiaryColor:"--pi-color-surface1",tertiaryTextColor:"--pi-color-foreground",tertiaryBorderColor:"--pi-color-surface3",textColor:"--pi-color-foreground"};function K(r){var t;const e={};for(const[n,s]of Object.entries(w)){const a=(t=r[s])==null?void 0:t.trim();a&&(e[n]=a)}return e}function q(){const r=getComputedStyle(document.documentElement),e={};for(const t of Object.values(w))e[t]=r.getPropertyValue(t);return K(e)}const Y="_prose_k8kw9_1",Z="_streaming_k8kw9_26",W="_inlineCode_k8kw9_65",J="_mermaid_k8kw9_83",Q="_mermaidError_k8kw9_92",X="_mermaidErrorMessage_k8kw9_95",ee="_inlineImage_k8kw9_126",te="_inlineImageSkeleton_k8kw9_135",re="_inlineImageFallback_k8kw9_146",d={prose:Y,streaming:Z,inlineCode:W,mermaid:J,mermaidError:Q,mermaidErrorMessage:X,inlineImage:ee,inlineImageSkeleton:te,inlineImageFallback:re},ne={"http:":!0,"https:":!0,"data:":!0,"blob:":!0},se=/^([a-zA-Z][a-zA-Z0-9+.-]*):/;function ae(r,e,t){const n=r.trim();if(!n)return{kind:"unresolvable"};const s=n.split(/[?#]/,1)[0];if(!s)return{kind:"unresolvable"};const a=se.exec(s);if(a)return`${a[1].toLowerCase()}:`in ne?{kind:"remote"}:{kind:"unresolvable"};const o=y(r,e,t);return o?N(o)!=="image"?{kind:"unresolvable"}:{kind:"local",path:o}:{kind:"unresolvable"}}function ie(r,e,t,n){return r.kind==="remote"?{kind:"remote",src:t||"",alt:n}:r.kind==="unresolvable"?{kind:"unresolvable",fallbackText:n||t||"(image)"}:e.status==="loading"||e.status==="idle"?{kind:"loading"}:e.status==="ready"?{kind:"ready",objectUrl:e.objectUrl,alt:n,path:r.path}:{kind:"error",fallbackText:n||r.path||"(image)"}}function M(r,e,t){return{workspaceCwd:t??(r||"~"),targetPaneId:e??void 0}}function oe(r,e,t){if(!r||!e){t({status:"idle"});return}let n=!1;return t({status:"loading"}),H(r,e).then(s=>{n||t({status:"ready",objectUrl:s.objectUrl})}).catch(s=>{n||t({status:"error",message:s instanceof Error?s.message:String(s)})}),()=>{n=!0,P(r)}}function le(r){const e=_(a=>a.client),t=_(a=>a.daemon),[n,s]=m.useState({status:"idle"});return m.useEffect(()=>oe(r,e&&t?o=>$(t).download(o):null,s),[e,t,r]),n}const ce=m.memo(function({src:e,alt:t,assetBase:n,owningPaneId:s,workspaceCwd:a}){const o=j(),u=m.useMemo(()=>ae(e||"",n,o),[e,n,o]),c=le(u.kind==="local"?u.path:null),l=ie(u,c,e,t);if(l.kind==="remote")return i.jsx("img",{src:l.src,alt:l.alt,className:d.inlineImage});if(l.kind==="unresolvable"||l.kind==="error")return i.jsx("code",{className:d.inlineImageFallback,children:l.fallbackText});if(l.kind==="loading")return i.jsx("div",{className:d.inlineImageSkeleton,children:i.jsx(F,{size:"sm"})});const g=M(n,s??null,a??null),k=()=>{E(l.path,g.workspaceCwd,g.targetPaneId)};return i.jsx("img",{src:l.objectUrl,alt:l.alt,className:d.inlineImage,title:l.path,draggable:!0,onDragStart:I(l.path),onClick:k,style:{cursor:"pointer"}})});function ue(r,e,t){const n=r.trim();if(!n)return{kind:"external"};if(n.startsWith("#"))return{kind:"external"};const s=y(r,e,t);return s?{kind:"local",path:s}:{kind:"external"}}function de({href:r,children:e,assetBase:t,owningPaneId:n,workspaceCwd:s}){const a=j(),o=ue(r??"",t,a);if(o.kind==="external")return i.jsx("a",{href:r,children:e});const u=o.path,c=M(t,n,s);return i.jsx("a",{href:r,draggable:!0,onDragStart:I(u),onClick:l=>{l.preventDefault(),E(u,c.workspaceCwd,c.targetPaneId)},children:e})}const C=/^ {0,3}([-*+]|\d{1,9}[.)])(\s|$)/,me=/^(\s*)(`{3,}|~{3,})(.*)$/;function fe(r){return C.test(r[0]??"")}function ge(r,e){for(let t=e;t<r.length;t++)if((r[t]??"").trim()!=="")return t;return-1}function ke(r){if(!r)return{blocks:[],tail:""};const e=r.split(`
3
- `),t=[];let n=[],s=null,a=!1,o=!1;const u=()=>{const c=n.join(`
4
- `).trim();c&&t.push(c),n=[]};for(let c=0;c<e.length;c++){const l=e[c]??"",g=l.trim();if(s!==null){if(n.push(l),s.test(g)){const f=a;s=null,a=!1,f&&u()}continue}const k=me.exec(l);if(k&&!o){const f=k[2];s=new RegExp(`^[${f[0]}]{${f.length},}$`),a=k[1]==="",n.push(l);continue}if(g===""&&n.length===0)continue;if((g.split("$$").length-1)%2===1&&(o=!o),g===""&&!o){const f=ge(e,c+1),p=f===-1?null:e[f]??"",S=p!==null&&!/^\s/.test(p),T=p!==null&&C.test(p)&&fe(n);if(S&&!T){u(),c=f-1;continue}}n.push(l)}return{blocks:t,tail:n.join(`
5
- `)}}function pe({language:r,code:e}){const[t,n]=m.useState(null);return m.useEffect(()=>{let s=!1;return G(e,r).then(a=>{s||n(a)}),()=>{s=!0}},[e,r]),t?i.jsx("div",{className:d.prose,dangerouslySetInnerHTML:{__html:t}}):i.jsx("pre",{children:i.jsx("code",{children:e})})}function he({code:r}){const[e]=m.useState(()=>`mermaid-${R()}`),[t,n]=m.useState({status:"pending"});return m.useEffect(()=>{let s=!1;return(async()=>{try{const{default:a}=await L(async()=>{const{default:u}=await import("./mermaid.core-BEntOW_N.js").then(c=>c.b0);return{default:u}},__vite__mapDeps([0,1,2,3]));a.initialize({startOnLoad:!1,theme:"base",themeVariables:q(),securityLevel:"strict",fontFamily:"var(--pi-font-ui)"});const{svg:o}=await a.render(e,r);s||n({status:"ready",svg:o})}catch(a){s||n({status:"error",message:a instanceof Error?a.message:"Failed to render diagram"})}})(),()=>{s=!0}},[e,r]),t.status==="ready"?i.jsx("div",{className:d.mermaid,dangerouslySetInnerHTML:{__html:t.svg}}):t.status==="error"?i.jsxs("div",{className:d.mermaidError,children:[i.jsxs("p",{className:d.mermaidErrorMessage,children:["Failed to render diagram: ",t.message]}),i.jsx("pre",{children:i.jsx("code",{children:r})})]}):i.jsx("pre",{children:i.jsx("code",{children:r})})}function xe({className:r,children:e,...t}){const n=/language-(\w+)/.exec(r??""),s=!!n,a=String(e).replace(/\n$/,"");if(s&&n){const o=n[1]??"plaintext";return o==="mermaid"?i.jsx(he,{code:a}):i.jsx(pe,{language:o,code:a})}return i.jsx("code",{className:d.inlineCode,...t,children:e})}function _e({className:r,children:e,...t}){return/language-(\w+)/.test(r??"")?i.jsx("pre",{children:i.jsx("code",{children:String(e).replace(/\n$/,"")})}):i.jsx("code",{className:d.inlineCode,...t,children:e})}const be=[U,O],je=[A],Ie=[],x=m.memo(function({text:e,assetBase:t=null,owningPaneId:n=null,workspaceCwd:s=null,lean:a=!1}){return i.jsx(V,{remarkPlugins:be,rehypePlugins:a?Ie:je,components:{code:a?_e:xe,img:o=>i.jsx(ce,{...o,assetBase:t,owningPaneId:n,workspaceCwd:s}),a:o=>i.jsx(de,{...o,assetBase:t,owningPaneId:n,workspaceCwd:s})},children:e})});function Te({text:r,assetBase:e,owningPaneId:t,workspaceCwd:n}){return i.jsx("div",{className:d.prose,children:i.jsx(x,{text:r,assetBase:e,owningPaneId:t,workspaceCwd:n})})}function Le({text:r,assetBase:e,owningPaneId:t,workspaceCwd:n}){const{blocks:s,tail:a}=m.useMemo(()=>ke(r),[r]);return i.jsxs("div",{className:`${d.prose} ${d.streaming}`,children:[s.map((o,u)=>i.jsx(x,{text:o,assetBase:e,owningPaneId:t,workspaceCwd:n},u)),a!==""&&i.jsx(x,{text:a,lean:!0,assetBase:e,owningPaneId:t,workspaceCwd:n})]})}export{Te as M,Le as S,M as r};