@bryanhu/codexly 0.6.0 → 0.7.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (107) hide show
  1. package/CHANGELOG.md +15 -1
  2. package/README.md +3 -3
  3. package/README.zh-CN.md +3 -3
  4. package/dist/{chunk-NUY5U24W.js → chunk-CGZ44LHJ.js} +19 -15
  5. package/dist/{chunk-C3PIS4SQ.js → chunk-NAHIDASP.js} +4 -4
  6. package/dist/cli.js +5 -21
  7. package/dist/providers/codex/index.js +1 -1
  8. package/dist/server/index.js +2 -2
  9. package/dist/web/.vite/manifest.json +41 -41
  10. package/dist/web/.vite/manifest.json.br +0 -0
  11. package/dist/web/.vite/manifest.json.gz +0 -0
  12. package/dist/web/assets/{chunk-BO2N2NFS-BZtBhhTV.js → chunk-BO2N2NFS-bEY6272A.js} +4 -4
  13. package/dist/web/assets/chunk-BO2N2NFS-bEY6272A.js.br +0 -0
  14. package/dist/web/assets/chunk-BO2N2NFS-bEY6272A.js.gz +0 -0
  15. package/dist/web/assets/{code-highlighter-BG341hSJ.js → code-highlighter-Cm84nMIT.js} +1 -1
  16. package/dist/web/assets/code-highlighter-Cm84nMIT.js.br +0 -0
  17. package/dist/web/assets/code-highlighter-Cm84nMIT.js.gz +0 -0
  18. package/dist/web/assets/{code-languages-DA_FG9-T.js → code-languages-D5Nrl7sO.js} +1 -1
  19. package/dist/web/assets/code-languages-D5Nrl7sO.js.br +0 -0
  20. package/dist/web/assets/code-languages-D5Nrl7sO.js.gz +0 -0
  21. package/dist/web/assets/{file-review-dialog-dlOxwNrj.js → file-review-dialog-DVVtiNEL.js} +2 -2
  22. package/dist/web/assets/file-review-dialog-DVVtiNEL.js.br +0 -0
  23. package/dist/web/assets/file-review-dialog-DVVtiNEL.js.gz +0 -0
  24. package/dist/web/assets/{git-history-panel-DqiTnaf1.js → git-history-panel-4j8odsDb.js} +2 -2
  25. package/dist/web/assets/git-history-panel-4j8odsDb.js.br +0 -0
  26. package/dist/web/assets/git-history-panel-4j8odsDb.js.gz +0 -0
  27. package/dist/web/assets/{global-settings-dialog-DFjxQX_B.js → global-settings-dialog-Dhqfe3qK.js} +1 -1
  28. package/dist/web/assets/global-settings-dialog-Dhqfe3qK.js.br +0 -0
  29. package/dist/web/assets/global-settings-dialog-Dhqfe3qK.js.gz +0 -0
  30. package/dist/web/assets/{highlighted-body-OFNGDK62-bj8RQV-D.js → highlighted-body-OFNGDK62-oKnqW5V8.js} +1 -1
  31. package/dist/web/assets/highlighted-body-OFNGDK62-oKnqW5V8.js.br +0 -0
  32. package/dist/web/assets/highlighted-body-OFNGDK62-oKnqW5V8.js.gz +0 -0
  33. package/dist/web/assets/{index-DTJVeg10.js → index-C1A_OTjT.js} +3 -3
  34. package/dist/web/assets/index-C1A_OTjT.js.br +0 -0
  35. package/dist/web/assets/index-C1A_OTjT.js.gz +0 -0
  36. package/dist/web/assets/index-lKikkWES.css +2 -0
  37. package/dist/web/assets/index-lKikkWES.css.br +0 -0
  38. package/dist/web/assets/index-lKikkWES.css.gz +0 -0
  39. package/dist/web/assets/{lazy-message-response-8zk6PTbZ.js → lazy-message-response-DNUwJy0d.js} +2 -2
  40. package/dist/web/assets/lazy-message-response-DNUwJy0d.js.br +0 -0
  41. package/dist/web/assets/lazy-message-response-DNUwJy0d.js.gz +0 -0
  42. package/dist/web/assets/mermaid-GHXKKRXX-8A2qFznr.js +1 -0
  43. package/dist/web/assets/mermaid-GHXKKRXX-8A2qFznr.js.br +0 -0
  44. package/dist/web/assets/mermaid-GHXKKRXX-8A2qFznr.js.gz +0 -0
  45. package/dist/web/assets/{message-response-CKPW6CRi.js → message-response-DVL8_J3z.js} +1 -1
  46. package/dist/web/assets/message-response-DVL8_J3z.js.br +0 -0
  47. package/dist/web/assets/message-response-DVL8_J3z.js.gz +0 -0
  48. package/dist/web/assets/{patch-diff-viewer-CaWTvh9_.js → patch-diff-viewer-BgNx-ffs.js} +2 -2
  49. package/dist/web/assets/patch-diff-viewer-BgNx-ffs.js.br +0 -0
  50. package/dist/web/assets/patch-diff-viewer-BgNx-ffs.js.gz +0 -0
  51. package/dist/web/assets/{project-file-popup-page-Cmjoovjs.js → project-file-popup-page-BwPTSc8o.js} +1 -1
  52. package/dist/web/assets/project-file-popup-page-BwPTSc8o.js.br +0 -0
  53. package/dist/web/assets/project-file-popup-page-BwPTSc8o.js.gz +0 -0
  54. package/dist/web/assets/{project-source-panel-0Chmfe7s.js → project-source-panel-DWDcX3T9.js} +3 -3
  55. package/dist/web/assets/project-source-panel-DWDcX3T9.js.br +0 -0
  56. package/dist/web/assets/project-source-panel-DWDcX3T9.js.gz +0 -0
  57. package/dist/web/assets/{shiki-bundle-BEmB8kBs.js → shiki-bundle-Dhkx9AYM.js} +1 -1
  58. package/dist/web/assets/shiki-bundle-Dhkx9AYM.js.br +0 -0
  59. package/dist/web/assets/shiki-bundle-Dhkx9AYM.js.gz +0 -0
  60. package/dist/web/assets/{workbench-inspector-changes-CWeWA-hv.js → workbench-inspector-changes-CWIx9Os6.js} +1 -1
  61. package/dist/web/assets/workbench-inspector-changes-CWIx9Os6.js.br +0 -0
  62. package/dist/web/assets/workbench-inspector-changes-CWIx9Os6.js.gz +0 -0
  63. package/dist/web/assets/{workbench-shell-BOnddpen.js → workbench-shell-DVC3DE5a.js} +4 -4
  64. package/dist/web/assets/workbench-shell-DVC3DE5a.js.br +0 -0
  65. package/dist/web/assets/workbench-shell-DVC3DE5a.js.gz +0 -0
  66. package/dist/web/index.html +2 -2
  67. package/dist/web/index.html.br +0 -0
  68. package/dist/web/index.html.gz +0 -0
  69. package/package.json +1 -1
  70. package/dist/web/assets/chunk-BO2N2NFS-BZtBhhTV.js.br +0 -0
  71. package/dist/web/assets/chunk-BO2N2NFS-BZtBhhTV.js.gz +0 -0
  72. package/dist/web/assets/code-highlighter-BG341hSJ.js.br +0 -0
  73. package/dist/web/assets/code-highlighter-BG341hSJ.js.gz +0 -0
  74. package/dist/web/assets/code-languages-DA_FG9-T.js.br +0 -0
  75. package/dist/web/assets/code-languages-DA_FG9-T.js.gz +0 -0
  76. package/dist/web/assets/file-review-dialog-dlOxwNrj.js.br +0 -0
  77. package/dist/web/assets/file-review-dialog-dlOxwNrj.js.gz +0 -0
  78. package/dist/web/assets/git-history-panel-DqiTnaf1.js.br +0 -0
  79. package/dist/web/assets/git-history-panel-DqiTnaf1.js.gz +0 -0
  80. package/dist/web/assets/global-settings-dialog-DFjxQX_B.js.br +0 -0
  81. package/dist/web/assets/global-settings-dialog-DFjxQX_B.js.gz +0 -0
  82. package/dist/web/assets/highlighted-body-OFNGDK62-bj8RQV-D.js.br +0 -0
  83. package/dist/web/assets/highlighted-body-OFNGDK62-bj8RQV-D.js.gz +0 -0
  84. package/dist/web/assets/index-BZYdzDQ3.css +0 -2
  85. package/dist/web/assets/index-BZYdzDQ3.css.br +0 -0
  86. package/dist/web/assets/index-BZYdzDQ3.css.gz +0 -0
  87. package/dist/web/assets/index-DTJVeg10.js.br +0 -0
  88. package/dist/web/assets/index-DTJVeg10.js.gz +0 -0
  89. package/dist/web/assets/lazy-message-response-8zk6PTbZ.js.br +0 -0
  90. package/dist/web/assets/lazy-message-response-8zk6PTbZ.js.gz +0 -0
  91. package/dist/web/assets/mermaid-GHXKKRXX-BDoa2Ho_.js +0 -1
  92. package/dist/web/assets/mermaid-GHXKKRXX-BDoa2Ho_.js.br +0 -0
  93. package/dist/web/assets/mermaid-GHXKKRXX-BDoa2Ho_.js.gz +0 -0
  94. package/dist/web/assets/message-response-CKPW6CRi.js.br +0 -0
  95. package/dist/web/assets/message-response-CKPW6CRi.js.gz +0 -0
  96. package/dist/web/assets/patch-diff-viewer-CaWTvh9_.js.br +0 -0
  97. package/dist/web/assets/patch-diff-viewer-CaWTvh9_.js.gz +0 -0
  98. package/dist/web/assets/project-file-popup-page-Cmjoovjs.js.br +0 -0
  99. package/dist/web/assets/project-file-popup-page-Cmjoovjs.js.gz +0 -0
  100. package/dist/web/assets/project-source-panel-0Chmfe7s.js.br +0 -0
  101. package/dist/web/assets/project-source-panel-0Chmfe7s.js.gz +0 -0
  102. package/dist/web/assets/shiki-bundle-BEmB8kBs.js.br +0 -0
  103. package/dist/web/assets/shiki-bundle-BEmB8kBs.js.gz +0 -0
  104. package/dist/web/assets/workbench-inspector-changes-CWeWA-hv.js.br +0 -0
  105. package/dist/web/assets/workbench-inspector-changes-CWeWA-hv.js.gz +0 -0
  106. package/dist/web/assets/workbench-shell-BOnddpen.js.br +0 -0
  107. package/dist/web/assets/workbench-shell-BOnddpen.js.gz +0 -0
@@ -1,3 +1,3 @@
1
- const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/code-highlighter-BG341hSJ.js","assets/engine-compile-Bqjaa_8Z.js","assets/lib-DrPFkMXk.js","assets/rolldown-runtime-QTnfLwEv.js","assets/code-languages-DA_FG9-T.js","assets/index-DTJVeg10.js","assets/react-runtime-CVaUQXZF.js","assets/dist-hozmU7_C.js","assets/bundle-mjs-rHxsej31.js","assets/tooltip-BU1Qoscx.js","assets/useInfiniteQuery-Bj31MvqL.js","assets/checkbox-Cft8ypsb.js","assets/check-DExH7zwT.js","assets/loader-circle-CYc50iXi.js","assets/dist-ByRtqJXv.js","assets/es2015-Cd8ehGwJ.js","assets/file-tree-CbuG5nkz.js","assets/provider-connection-queries-CLpiOnBN.js","assets/index-BZYdzDQ3.css","assets/github-dark-C-LZuMrd.js","assets/github-light-EUqPIrTm.js"])))=>i.map(i=>d[i]);
2
- import{r as e}from"./rolldown-runtime-QTnfLwEv.js";import{i as t,t as n}from"./react-runtime-CVaUQXZF.js";import{D as r,v as i,w as a}from"./dist-hozmU7_C.js";import{f as o,i as s,n as c,t as l}from"./tooltip-BU1Qoscx.js";import{t as u}from"./useInfiniteQuery-Bj31MvqL.js";import{t as d}from"./check-DExH7zwT.js";import{n as f,t as p}from"./file-code-corner-D1h7_C7f.js";import{n as m,t as h}from"./lazy-message-response-8zk6PTbZ.js";import{Q as g,ft as _,lt as v,mt as y,pt as b,rt as x}from"./index-DTJVeg10.js";import{t as S}from"./code-languages-DA_FG9-T.js";var C=a(`code-xml`,[[`path`,{d:`m18 16 4-4-4-4`,key:`1inbqp`}],[`path`,{d:`m6 8-4 4 4 4`,key:`15zrgr`}],[`path`,{d:`m14.5 4-5 16`,key:`e7oirm`}]]),w=e(t(),1),T=`codexly:workbench:markdown-preview:v1`;function E(){try{return typeof window>`u`?void 0:window.localStorage}catch{return}}function D(e){if(e===void 0)return!1;try{let t=JSON.parse(e.getItem(T)??`null`);return k(t)?t.preview:!1}catch{return!1}}function O(e,t){if(t===void 0)return;let n={preview:e,version:1};try{t.setItem(T,JSON.stringify(n))}catch{}}function k(e){if(typeof e!=`object`||!e)return!1;let t=e;return t.version===1&&typeof t.preview==`boolean`}var A=24*1024*1024,j=512*1024;function M(e){let t=2166136261;for(let n=0;n<e.length;n+=1)t^=e.charCodeAt(n),t=Math.imul(t,16777619);return(t>>>0).toString(16)}function N(e,t){return`${e}:${String(t.length)}:${M(t)}`}var P=class{maxSourceBytes;#e;constructor(e=A,t=128,n=j){this.maxSourceBytes=n,this.#e=new _({getRetainedBytes:(e,t)=>y(e)+b(t),maxBytes:e,maxEntries:t})}get retainedBytes(){return this.#e.retainedBytes}get size(){return this.#e.size}get(e,t){let n=this.#e.get(N(e,t));return n?.source===t?n.tokenized:void 0}set(e,t,n){return y(t)>this.maxSourceBytes?!1:this.#e.set(N(e,t),{source:t,tokenized:n})}},F=n(),I=(0,w.createContext)(null),L=new P;function R(){let e=(0,w.useContext)(I);if(e===null)throw Error(`CodeBlock components must be rendered inside CodeBlock`);return e}function z(e){return{background:`transparent`,foreground:`inherit`,lines:e.split(`
3
- `).map(e=>e===``?[]:[{content:e,offset:0}])}}function B(e){let t=e.htmlStyle,n=e.color??t?.color,r=t?.[`--shiki-dark`],i=e.bgColor??t?.backgroundColor,a=t?.[`--shiki-dark-bg`];return{...t,backgroundColor:i===void 0||a===void 0?i:`light-dark(${i}, ${a})`,color:n===void 0||r===void 0?n:`light-dark(${n}, ${r})`}}async function V(e,t){if(t===`text`)return z(e);let n=L.get(t,e);if(n!==void 0)return n;let{highlightCode:r}=await v(async()=>{let{highlightCode:e}=await import(`./code-highlighter-BG341hSJ.js`);return{highlightCode:e}},__vite__mapDeps([0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20])),i=await r(e,t);return L.set(t,e,i),i}function H({className:e=``,code:t,highlightedLine:n=null,language:r,showLineNumbers:i=!1,...a}){let o=(0,w.useMemo)(()=>z(t),[t]),[s,c]=(0,w.useState)(o);return(0,w.useEffect)(()=>{let e=!0;return c(o),V(t,r).then(t=>{e&&c(t)}).catch(()=>{}),()=>{e=!1}},[t,r,o]),(0,F.jsx)(`div`,{className:`relative min-h-0 overflow-auto ${e}`,...a,children:(0,F.jsx)(`pre`,{className:`m-0 min-w-max bg-transparent py-3 font-mono text-body-small leading-6 text-foreground`,style:{backgroundColor:s.background,color:s.foreground},children:(0,F.jsx)(`code`,{children:s.lines.map((e,t)=>{let r=t+1,a=r===n;return(0,F.jsxs)(`span`,{className:`block min-h-6 px-3 ${i?`grid grid-cols-[4rem_minmax(0,1fr)]`:``} ${a?`bg-brand-soft text-brand-strong`:``}`,"data-code-line":r,"data-highlighted":a?`true`:void 0,children:[i?(0,F.jsx)(`span`,{"aria-hidden":`true`,className:`select-none pr-4 text-right ${a?`text-brand`:`text-muted-foreground`}`,children:r}):null,(0,F.jsx)(`span`,{className:`whitespace-pre`,children:e.length===0?` `:e.map((e,t)=>(0,F.jsx)(`span`,{style:B(e),children:e.content},`${String(r)}-${String(t)}`))})]},r)})})})})}function U({children:e,className:t=``,code:n,highlightedLine:r=null,language:i,showLineNumbers:a=!1,style:o,...s}){let c=(0,w.useMemo)(()=>({code:n}),[n]);return(0,F.jsx)(I.Provider,{value:c,children:(0,F.jsxs)(`div`,{className:`relative w-full overflow-hidden rounded-surface bg-raised text-foreground shadow-sm ${t}`,"data-language":i,style:{containIntrinsicSize:`auto 200px`,contentVisibility:`auto`,...o},...s,children:[e,(0,F.jsx)(H,{code:n,highlightedLine:r,language:i,showLineNumbers:a})]})})}function W({className:e=``,...t}){return(0,F.jsx)(`div`,{className:`flex min-h-8 items-center justify-between border-b border-separator bg-control px-3 text-label text-muted-foreground ${e}`,...t})}function G({className:e=``,...t}){return(0,F.jsx)(`div`,{className:`flex min-w-0 items-center gap-2 ${e}`,...t})}function K({className:e=``,...t}){return(0,F.jsx)(`span`,{className:`truncate font-mono ${e}`,...t})}function q({className:e=``,...t}){return(0,F.jsx)(`div`,{className:`ml-auto flex items-center gap-1 ${e}`,...t})}function J({children:e,className:t=``,onClick:n,onCopy:a,onError:o,timeout:s=2e3,...c}){let{code:l}=R(),[u,p]=(0,w.useState)(!1),{t:m}=r(`conversation`),h=(0,w.useRef)(null);(0,w.useEffect)(()=>()=>{h.current!==null&&clearTimeout(h.current)},[]);let g=async()=>{try{await navigator.clipboard.writeText(l),p(!0),a?.(),h.current!==null&&clearTimeout(h.current),h.current=setTimeout(()=>{p(!1)},s)}catch(e){o?.(e instanceof Error?e:Error(`Unable to copy code`))}};return(0,F.jsx)(i,{variant:`ghost`,"aria-label":m(u?`agentComponents.copiedCode`:`agentComponents.copyCode`),className:`grid size-7 shrink-0 place-items-center rounded-control text-muted-foreground transition-colors hover:bg-control-hover hover:text-foreground ${t}`,onClick:e=>{n?.(e),e.defaultPrevented||g()},type:`button`,...c,children:e??(u?(0,F.jsx)(d,{className:`size-3.5`,"aria-hidden":`true`}):(0,F.jsx)(f,{className:`size-3.5`,"aria-hidden":`true`}))})}function Y(e){return e.split(/[\\/]/u).at(-1)??e}function X({actions:e,lineNumber:t,onClose:n,previewKind:a,sourcePath:o,sourceStatus:u}){let{t:d}=r(`workbench`);return(0,F.jsxs)(W,{className:`min-h-toolbar gap-3 overflow-hidden bg-raised px-3 shadow-toolbar sm:px-4`,children:[(0,F.jsxs)(G,{className:`w-0 flex-1 overflow-hidden`,children:[a===`image`?(0,F.jsx)(m,{className:`size-4 shrink-0 text-muted-foreground`,"aria-hidden":`true`}):(0,F.jsx)(p,{className:`size-4 shrink-0 text-muted-foreground`,"aria-hidden":`true`}),(0,F.jsxs)(l,{children:[(0,F.jsx)(s,{asChild:!0,children:(0,F.jsxs)(`div`,{className:`w-0 flex-1 overflow-hidden`,children:[(0,F.jsx)(`h2`,{className:`truncate text-body-small font-semibold`,children:(0,F.jsxs)(K,{children:[Y(o),t===null?null:` (line ${String(t)})`]})}),(0,F.jsx)(`p`,{className:`truncate text-caption text-muted-foreground`,children:o})]})}),(0,F.jsx)(c,{className:`break-all`,children:o})]})]}),u===null?null:(0,F.jsx)(`span`,{className:`shrink-0 text-label ${u===`error`?`text-danger`:`text-warning`}`,role:u===`error`?`alert`:`status`,children:d(u===`loading`?`projectDialog.loadingMoreSource`:u===`error`?`projectDialog.loadMoreSourceError`:`projectDialog.sourcePartial`)}),(0,F.jsxs)(q,{children:[e,n===void 0?null:(0,F.jsxs)(l,{children:[(0,F.jsx)(s,{asChild:!0,children:(0,F.jsx)(i,{"aria-label":d(a===`image`?`projectDialog.closeImagePreview`:`projectDialog.closeSource`),onClick:n,size:`icon-sm`,type:`button`,variant:`ghost`,children:(0,F.jsx)(g,{className:`size-3.5`,"aria-hidden":`true`})})}),(0,F.jsx)(c,{children:d(a===`image`?`projectDialog.closeImagePreview`:`projectDialog.closeSource`)})]})]})]})}var Z=400;function Q(e){return e.scrollHeight-e.scrollTop-e.clientHeight<=Z}function $(e,t){return e.nextCursor===null||e.nextCursor===t?void 0:e.nextCursor}function ee(e){let t=e[0],n=e.at(-1);if(!(t===void 0||n===void 0))return{content:e.map(e=>e.content).join(``),nextCursor:n.nextCursor,path:t.path}}function te({client:e,onClose:t,previewKind:n,projectId:a,reference:d,rootPath:f}){let{t:p}=r(`workbench`),m=(0,w.useRef)(null),[g,_]=(0,w.useState)(()=>D(E())),[v,y]=(0,w.useState)(!1),b=u({enabled:n===`source`,getNextPageParam:(e,t,n)=>$(e,n),initialPageParam:void 0,queryFn:async({pageParam:t,signal:n})=>e.readProjectSourceFile(a,f,d.path,t,{signal:n}),queryKey:[`projects`,a,f??null,`source-file`,d.path],staleTime:3e4}),T=b.data?.pages,k=b.fetchNextPage,A=b.hasNextPage,j=b.isFetchingNextPage,M=(0,w.useMemo)(()=>T===void 0?void 0:ee(T),[T]),N=M?.path??d.path,P=M?.content??``,I=Y(N),L=o(``,a,d.path,f),R=S(N),z=(R===`markdown`||R===`mdx`)&&M?.nextCursor===null,B=z&&g;(0,w.useEffect)(()=>{y(!1)},[n,d.path]),(0,w.useEffect)(()=>{let e=d.lineNumber;if(M===void 0||e===null||B)return;let t=m.current?.querySelector(`[data-code-line="${String(e)}"]`);if(t!=null){t.scrollIntoView({block:`center`});return}A&&!j&&k()},[k,A,j,d.lineNumber,M,B]);let V=M===void 0?null:j?`loading`:b.isFetchNextPageError?`error`:A?`partial`:null,H={lineNumber:d.lineNumber,...t===void 0?{}:{onClose:t},previewKind:n,sourcePath:N,sourceStatus:V},W=e=>{if(n!==`source`||!A||j)return;let t=e.target;!(t instanceof HTMLElement)||!Q(t)||k()},G=e=>{_(e),O(e,E())};return(0,F.jsx)(`section`,{"aria-label":N,className:`h-full min-h-0 bg-raised`,onScrollCapture:W,ref:m,children:n===`image`?(0,F.jsxs)(`div`,{className:`grid h-full min-h-0 grid-rows-[auto_minmax(0,1fr)] bg-content`,children:[(0,F.jsx)(X,{...H}),(0,F.jsx)(`div`,{className:`grid min-h-0 place-items-center overflow-hidden p-4 sm:p-6`,children:v?(0,F.jsx)(`div`,{className:`text-body-small text-danger`,role:`alert`,children:p(`projectDialog.loadImageError`)}):(0,F.jsx)(`img`,{alt:I,className:`block size-full object-contain`,decoding:`async`,onError:()=>{y(!0)},src:L})})]}):M===void 0&&b.isPending?(0,F.jsxs)(`div`,{className:`grid h-full min-h-0 grid-rows-[auto_minmax(0,1fr)]`,children:[(0,F.jsx)(X,{...H}),(0,F.jsx)(`div`,{className:`grid min-h-48 place-items-center text-body-small text-muted-foreground`,role:`status`,children:p(`projectDialog.loadingSource`)})]}):M===void 0&&b.error!==null?(0,F.jsxs)(`div`,{className:`grid h-full min-h-0 grid-rows-[auto_minmax(0,1fr)]`,children:[(0,F.jsx)(X,{...H}),(0,F.jsx)(`div`,{className:`grid min-h-48 place-items-center text-body-small text-danger`,role:`alert`,children:p(`projectDialog.loadSourceError`)})]}):B?(0,F.jsxs)(`div`,{className:`grid h-full min-h-0 grid-rows-[auto_minmax(0,1fr)] bg-content`,children:[(0,F.jsx)(X,{...H,actions:(0,F.jsxs)(l,{children:[(0,F.jsx)(s,{asChild:!0,children:(0,F.jsx)(i,{"aria-label":p(`projectDialog.showRawContent`),onClick:()=>{G(!1)},size:`icon-sm`,type:`button`,variant:`ghost`,children:(0,F.jsx)(C,{className:`size-3.5`,"aria-hidden":`true`})})}),(0,F.jsx)(c,{children:p(`projectDialog.showRawContent`)})]})}),(0,F.jsx)(`div`,{className:`min-h-0 overflow-auto px-5 py-4 sm:px-8 sm:py-6`,children:(0,F.jsx)(h,{className:`mx-auto max-w-4xl`,children:P})})]}):(0,F.jsx)(U,{className:`grid h-full min-h-0 grid-rows-[auto_minmax(0,1fr)] rounded-none bg-content shadow-none`,code:P,highlightedLine:d.lineNumber,language:R,showLineNumbers:!0,children:(0,F.jsx)(X,{...H,actions:(0,F.jsxs)(F.Fragment,{children:[z?(0,F.jsxs)(l,{children:[(0,F.jsx)(s,{asChild:!0,children:(0,F.jsx)(i,{"aria-label":p(`projectDialog.previewMarkdown`),onClick:()=>{G(!0)},size:`icon-sm`,type:`button`,variant:`ghost`,children:(0,F.jsx)(x,{className:`size-3.5`,"aria-hidden":`true`})})}),(0,F.jsx)(c,{children:p(`projectDialog.previewMarkdown`)})]}):null,(0,F.jsx)(J,{})]})})})})}export{K as a,C as c,J as i,U as n,W as o,q as r,G as s,te as t};
1
+ const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/code-highlighter-Cm84nMIT.js","assets/engine-compile-Bqjaa_8Z.js","assets/lib-DrPFkMXk.js","assets/rolldown-runtime-QTnfLwEv.js","assets/code-languages-D5Nrl7sO.js","assets/index-C1A_OTjT.js","assets/react-runtime-CVaUQXZF.js","assets/dist-hozmU7_C.js","assets/bundle-mjs-rHxsej31.js","assets/tooltip-BU1Qoscx.js","assets/useInfiniteQuery-Bj31MvqL.js","assets/checkbox-Cft8ypsb.js","assets/check-DExH7zwT.js","assets/loader-circle-CYc50iXi.js","assets/dist-ByRtqJXv.js","assets/es2015-Cd8ehGwJ.js","assets/file-tree-CbuG5nkz.js","assets/provider-connection-queries-CLpiOnBN.js","assets/index-lKikkWES.css","assets/github-dark-C-LZuMrd.js","assets/github-light-EUqPIrTm.js"])))=>i.map(i=>d[i]);
2
+ import{r as e}from"./rolldown-runtime-QTnfLwEv.js";import{i as t,t as n}from"./react-runtime-CVaUQXZF.js";import{D as r,v as i,w as a}from"./dist-hozmU7_C.js";import{f as o,i as s,n as c,t as l}from"./tooltip-BU1Qoscx.js";import{t as u}from"./useInfiniteQuery-Bj31MvqL.js";import{t as d}from"./check-DExH7zwT.js";import{n as f,t as p}from"./file-code-corner-D1h7_C7f.js";import{n as m,t as h}from"./lazy-message-response-DNUwJy0d.js";import{Q as g,ft as _,lt as v,mt as y,pt as b,rt as x}from"./index-C1A_OTjT.js";import{t as S}from"./code-languages-D5Nrl7sO.js";var C=a(`code-xml`,[[`path`,{d:`m18 16 4-4-4-4`,key:`1inbqp`}],[`path`,{d:`m6 8-4 4 4 4`,key:`15zrgr`}],[`path`,{d:`m14.5 4-5 16`,key:`e7oirm`}]]),w=e(t(),1),T=`codexly:workbench:markdown-preview:v1`;function E(){try{return typeof window>`u`?void 0:window.localStorage}catch{return}}function D(e){if(e===void 0)return!1;try{let t=JSON.parse(e.getItem(T)??`null`);return k(t)?t.preview:!1}catch{return!1}}function O(e,t){if(t===void 0)return;let n={preview:e,version:1};try{t.setItem(T,JSON.stringify(n))}catch{}}function k(e){if(typeof e!=`object`||!e)return!1;let t=e;return t.version===1&&typeof t.preview==`boolean`}var A=24*1024*1024,j=512*1024;function M(e){let t=2166136261;for(let n=0;n<e.length;n+=1)t^=e.charCodeAt(n),t=Math.imul(t,16777619);return(t>>>0).toString(16)}function N(e,t){return`${e}:${String(t.length)}:${M(t)}`}var P=class{maxSourceBytes;#e;constructor(e=A,t=128,n=j){this.maxSourceBytes=n,this.#e=new _({getRetainedBytes:(e,t)=>y(e)+b(t),maxBytes:e,maxEntries:t})}get retainedBytes(){return this.#e.retainedBytes}get size(){return this.#e.size}get(e,t){let n=this.#e.get(N(e,t));return n?.source===t?n.tokenized:void 0}set(e,t,n){return y(t)>this.maxSourceBytes?!1:this.#e.set(N(e,t),{source:t,tokenized:n})}},F=n(),I=(0,w.createContext)(null),L=new P;function R(){let e=(0,w.useContext)(I);if(e===null)throw Error(`CodeBlock components must be rendered inside CodeBlock`);return e}function z(e){return{background:`transparent`,foreground:`inherit`,lines:e.split(`
3
+ `).map(e=>e===``?[]:[{content:e,offset:0}])}}function B(e){let t=e.htmlStyle,n=e.color??t?.color,r=t?.[`--shiki-dark`],i=e.bgColor??t?.backgroundColor,a=t?.[`--shiki-dark-bg`];return{...t,backgroundColor:i===void 0||a===void 0?i:`light-dark(${i}, ${a})`,color:n===void 0||r===void 0?n:`light-dark(${n}, ${r})`}}async function V(e,t){if(t===`text`)return z(e);let n=L.get(t,e);if(n!==void 0)return n;let{highlightCode:r}=await v(async()=>{let{highlightCode:e}=await import(`./code-highlighter-Cm84nMIT.js`);return{highlightCode:e}},__vite__mapDeps([0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20])),i=await r(e,t);return L.set(t,e,i),i}function H({className:e=``,code:t,highlightedLine:n=null,language:r,showLineNumbers:i=!1,...a}){let o=(0,w.useMemo)(()=>z(t),[t]),[s,c]=(0,w.useState)(o);return(0,w.useEffect)(()=>{let e=!0;return c(o),V(t,r).then(t=>{e&&c(t)}).catch(()=>{}),()=>{e=!1}},[t,r,o]),(0,F.jsx)(`div`,{className:`relative min-h-0 overflow-auto ${e}`,...a,children:(0,F.jsx)(`pre`,{className:`m-0 min-w-max bg-transparent py-3 font-mono text-body-small leading-6 text-foreground`,style:{backgroundColor:s.background,color:s.foreground},children:(0,F.jsx)(`code`,{children:s.lines.map((e,t)=>{let r=t+1,a=r===n;return(0,F.jsxs)(`span`,{className:`block min-h-6 px-3 ${i?`grid grid-cols-[4rem_minmax(0,1fr)]`:``} ${a?`bg-brand-soft text-brand-strong`:``}`,"data-code-line":r,"data-highlighted":a?`true`:void 0,children:[i?(0,F.jsx)(`span`,{"aria-hidden":`true`,className:`select-none pr-4 text-right ${a?`text-brand`:`text-muted-foreground`}`,children:r}):null,(0,F.jsx)(`span`,{className:`whitespace-pre`,children:e.length===0?` `:e.map((e,t)=>(0,F.jsx)(`span`,{style:B(e),children:e.content},`${String(r)}-${String(t)}`))})]},r)})})})})}function U({children:e,className:t=``,code:n,highlightedLine:r=null,language:i,showLineNumbers:a=!1,style:o,...s}){let c=(0,w.useMemo)(()=>({code:n}),[n]);return(0,F.jsx)(I.Provider,{value:c,children:(0,F.jsxs)(`div`,{className:`relative w-full overflow-hidden rounded-surface bg-raised text-foreground shadow-sm ${t}`,"data-language":i,style:{containIntrinsicSize:`auto 200px`,contentVisibility:`auto`,...o},...s,children:[e,(0,F.jsx)(H,{code:n,highlightedLine:r,language:i,showLineNumbers:a})]})})}function W({className:e=``,...t}){return(0,F.jsx)(`div`,{className:`flex min-h-8 items-center justify-between border-b border-separator bg-control px-3 text-label text-muted-foreground ${e}`,...t})}function G({className:e=``,...t}){return(0,F.jsx)(`div`,{className:`flex min-w-0 items-center gap-2 ${e}`,...t})}function K({className:e=``,...t}){return(0,F.jsx)(`span`,{className:`truncate font-mono ${e}`,...t})}function q({className:e=``,...t}){return(0,F.jsx)(`div`,{className:`ml-auto flex items-center gap-1 ${e}`,...t})}function J({children:e,className:t=``,onClick:n,onCopy:a,onError:o,timeout:s=2e3,...c}){let{code:l}=R(),[u,p]=(0,w.useState)(!1),{t:m}=r(`conversation`),h=(0,w.useRef)(null);(0,w.useEffect)(()=>()=>{h.current!==null&&clearTimeout(h.current)},[]);let g=async()=>{try{await navigator.clipboard.writeText(l),p(!0),a?.(),h.current!==null&&clearTimeout(h.current),h.current=setTimeout(()=>{p(!1)},s)}catch(e){o?.(e instanceof Error?e:Error(`Unable to copy code`))}};return(0,F.jsx)(i,{variant:`ghost`,"aria-label":m(u?`agentComponents.copiedCode`:`agentComponents.copyCode`),className:`grid size-7 shrink-0 place-items-center rounded-control text-muted-foreground transition-colors hover:bg-control-hover hover:text-foreground ${t}`,onClick:e=>{n?.(e),e.defaultPrevented||g()},type:`button`,...c,children:e??(u?(0,F.jsx)(d,{className:`size-3.5`,"aria-hidden":`true`}):(0,F.jsx)(f,{className:`size-3.5`,"aria-hidden":`true`}))})}function Y(e){return e.split(/[\\/]/u).at(-1)??e}function X({actions:e,lineNumber:t,onClose:n,previewKind:a,sourcePath:o,sourceStatus:u}){let{t:d}=r(`workbench`);return(0,F.jsxs)(W,{className:`min-h-toolbar gap-3 overflow-hidden bg-raised px-3 shadow-toolbar sm:px-4`,children:[(0,F.jsxs)(G,{className:`w-0 flex-1 overflow-hidden`,children:[a===`image`?(0,F.jsx)(m,{className:`size-4 shrink-0 text-muted-foreground`,"aria-hidden":`true`}):(0,F.jsx)(p,{className:`size-4 shrink-0 text-muted-foreground`,"aria-hidden":`true`}),(0,F.jsxs)(l,{children:[(0,F.jsx)(s,{asChild:!0,children:(0,F.jsxs)(`div`,{className:`w-0 flex-1 overflow-hidden`,children:[(0,F.jsx)(`h2`,{className:`truncate text-body-small font-semibold`,children:(0,F.jsxs)(K,{children:[Y(o),t===null?null:` (line ${String(t)})`]})}),(0,F.jsx)(`p`,{className:`truncate text-caption text-muted-foreground`,children:o})]})}),(0,F.jsx)(c,{className:`break-all`,children:o})]})]}),u===null?null:(0,F.jsx)(`span`,{className:`shrink-0 text-label ${u===`error`?`text-danger`:`text-warning`}`,role:u===`error`?`alert`:`status`,children:d(u===`loading`?`projectDialog.loadingMoreSource`:u===`error`?`projectDialog.loadMoreSourceError`:`projectDialog.sourcePartial`)}),(0,F.jsxs)(q,{children:[e,n===void 0?null:(0,F.jsxs)(l,{children:[(0,F.jsx)(s,{asChild:!0,children:(0,F.jsx)(i,{"aria-label":d(a===`image`?`projectDialog.closeImagePreview`:`projectDialog.closeSource`),onClick:n,size:`icon-sm`,type:`button`,variant:`ghost`,children:(0,F.jsx)(g,{className:`size-3.5`,"aria-hidden":`true`})})}),(0,F.jsx)(c,{children:d(a===`image`?`projectDialog.closeImagePreview`:`projectDialog.closeSource`)})]})]})]})}var Z=400;function Q(e){return e.scrollHeight-e.scrollTop-e.clientHeight<=Z}function $(e,t){return e.nextCursor===null||e.nextCursor===t?void 0:e.nextCursor}function ee(e){let t=e[0],n=e.at(-1);if(!(t===void 0||n===void 0))return{content:e.map(e=>e.content).join(``),nextCursor:n.nextCursor,path:t.path}}function te({client:e,onClose:t,previewKind:n,projectId:a,reference:d,rootPath:f}){let{t:p}=r(`workbench`),m=(0,w.useRef)(null),[g,_]=(0,w.useState)(()=>D(E())),[v,y]=(0,w.useState)(!1),b=u({enabled:n===`source`,getNextPageParam:(e,t,n)=>$(e,n),initialPageParam:void 0,queryFn:async({pageParam:t,signal:n})=>e.readProjectSourceFile(a,f,d.path,t,{signal:n}),queryKey:[`projects`,a,f??null,`source-file`,d.path],staleTime:3e4}),T=b.data?.pages,k=b.fetchNextPage,A=b.hasNextPage,j=b.isFetchingNextPage,M=(0,w.useMemo)(()=>T===void 0?void 0:ee(T),[T]),N=M?.path??d.path,P=M?.content??``,I=Y(N),L=o(``,a,d.path,f),R=S(N),z=(R===`markdown`||R===`mdx`)&&M?.nextCursor===null,B=z&&g;(0,w.useEffect)(()=>{y(!1)},[n,d.path]),(0,w.useEffect)(()=>{let e=d.lineNumber;if(M===void 0||e===null||B)return;let t=m.current?.querySelector(`[data-code-line="${String(e)}"]`);if(t!=null){t.scrollIntoView({block:`center`});return}A&&!j&&k()},[k,A,j,d.lineNumber,M,B]);let V=M===void 0?null:j?`loading`:b.isFetchNextPageError?`error`:A?`partial`:null,H={lineNumber:d.lineNumber,...t===void 0?{}:{onClose:t},previewKind:n,sourcePath:N,sourceStatus:V},W=e=>{if(n!==`source`||!A||j)return;let t=e.target;!(t instanceof HTMLElement)||!Q(t)||k()},G=e=>{_(e),O(e,E())};return(0,F.jsx)(`section`,{"aria-label":N,className:`h-full min-h-0 bg-raised`,onScrollCapture:W,ref:m,children:n===`image`?(0,F.jsxs)(`div`,{className:`grid h-full min-h-0 grid-rows-[auto_minmax(0,1fr)] bg-content`,children:[(0,F.jsx)(X,{...H}),(0,F.jsx)(`div`,{className:`grid min-h-0 place-items-center overflow-hidden p-4 sm:p-6`,children:v?(0,F.jsx)(`div`,{className:`text-body-small text-danger`,role:`alert`,children:p(`projectDialog.loadImageError`)}):(0,F.jsx)(`img`,{alt:I,className:`block size-full object-contain`,decoding:`async`,onError:()=>{y(!0)},src:L})})]}):M===void 0&&b.isPending?(0,F.jsxs)(`div`,{className:`grid h-full min-h-0 grid-rows-[auto_minmax(0,1fr)]`,children:[(0,F.jsx)(X,{...H}),(0,F.jsx)(`div`,{className:`grid min-h-48 place-items-center text-body-small text-muted-foreground`,role:`status`,children:p(`projectDialog.loadingSource`)})]}):M===void 0&&b.error!==null?(0,F.jsxs)(`div`,{className:`grid h-full min-h-0 grid-rows-[auto_minmax(0,1fr)]`,children:[(0,F.jsx)(X,{...H}),(0,F.jsx)(`div`,{className:`grid min-h-48 place-items-center text-body-small text-danger`,role:`alert`,children:p(`projectDialog.loadSourceError`)})]}):B?(0,F.jsxs)(`div`,{className:`grid h-full min-h-0 grid-rows-[auto_minmax(0,1fr)] bg-content`,children:[(0,F.jsx)(X,{...H,actions:(0,F.jsxs)(l,{children:[(0,F.jsx)(s,{asChild:!0,children:(0,F.jsx)(i,{"aria-label":p(`projectDialog.showRawContent`),onClick:()=>{G(!1)},size:`icon-sm`,type:`button`,variant:`ghost`,children:(0,F.jsx)(C,{className:`size-3.5`,"aria-hidden":`true`})})}),(0,F.jsx)(c,{children:p(`projectDialog.showRawContent`)})]})}),(0,F.jsx)(`div`,{className:`min-h-0 overflow-auto px-5 py-4 sm:px-8 sm:py-6`,children:(0,F.jsx)(h,{className:`mx-auto max-w-4xl`,children:P})})]}):(0,F.jsx)(U,{className:`grid h-full min-h-0 grid-rows-[auto_minmax(0,1fr)] rounded-none bg-content shadow-none`,code:P,highlightedLine:d.lineNumber,language:R,showLineNumbers:!0,children:(0,F.jsx)(X,{...H,actions:(0,F.jsxs)(F.Fragment,{children:[z?(0,F.jsxs)(l,{children:[(0,F.jsx)(s,{asChild:!0,children:(0,F.jsx)(i,{"aria-label":p(`projectDialog.previewMarkdown`),onClick:()=>{G(!0)},size:`icon-sm`,type:`button`,variant:`ghost`,children:(0,F.jsx)(x,{className:`size-3.5`,"aria-hidden":`true`})})}),(0,F.jsx)(c,{children:p(`projectDialog.previewMarkdown`)})]}):null,(0,F.jsx)(J,{})]})})})})}export{K as a,C as c,J as i,U as n,W as o,q as r,G as s,te as t};
@@ -1 +1 @@
1
- import{n as e}from"./rolldown-runtime-QTnfLwEv.js";import{a as t,i as n,n as r,o as i,r as a,t as o}from"./engine-compile-Bqjaa_8Z.js";import{i as s}from"./code-languages-DA_FG9-T.js";var c=e({bundledLanguages:()=>l,codeToHtml:()=>r,createCssVariablesTheme:()=>a,createHighlighter:()=>u,createJavaScriptRegexEngine:()=>o,createOnigurumaEngine:()=>d,getTokenStyleObject:()=>t,stringifyTokenStyle:()=>i}),l=s;async function u(e){let t=[];for(let n of e.langs??[]){if(n===`ansi`||n===`text`)continue;if(typeof n!=`string`){t.push(n);continue}let e=l[n];t.push((await e()).default)}return n({...e,engine:e.engine??o({forgiving:!0}),langs:t})}function d(){return o({forgiving:!0})}export{c as i,u as n,d as r,l as t};
1
+ import{n as e}from"./rolldown-runtime-QTnfLwEv.js";import{a as t,i as n,n as r,o as i,r as a,t as o}from"./engine-compile-Bqjaa_8Z.js";import{i as s}from"./code-languages-D5Nrl7sO.js";var c=e({bundledLanguages:()=>l,codeToHtml:()=>r,createCssVariablesTheme:()=>a,createHighlighter:()=>u,createJavaScriptRegexEngine:()=>o,createOnigurumaEngine:()=>d,getTokenStyleObject:()=>t,stringifyTokenStyle:()=>i}),l=s;async function u(e){let t=[];for(let n of e.langs??[]){if(n===`ansi`||n===`text`)continue;if(typeof n!=`string`){t.push(n);continue}let e=l[n];t.push((await e()).default)}return n({...e,engine:e.engine??o({forgiving:!0}),langs:t})}function d(){return o({forgiving:!0})}export{c as i,u as n,d as r,l as t};
@@ -1,2 +1,2 @@
1
- import{r as e}from"./rolldown-runtime-QTnfLwEv.js";import{i as t,t as n}from"./react-runtime-CVaUQXZF.js";import{C as r,D as i,I as a,v as o,w as s,y as c}from"./dist-hozmU7_C.js";import{R as l,i as u,n as d,t as f}from"./tooltip-BU1Qoscx.js";import{a as p,c as m,l as h,o as g,t as _}from"./checkbox-Cft8ypsb.js";import{n as v,r as y,t as b}from"./loader-circle-CYc50iXi.js";import{t as x}from"./check-DExH7zwT.js";import{a as S,i as C,o as w,r as T,t as E}from"./file-tree-CbuG5nkz.js";import{n as D,t as ee}from"./button-group-b2-xCzBP.js";import{S as O,r as te,y as ne}from"./prompt-input-controls-CT6f-1tO.js";import{n as k,r as re,t as ie}from"./file-navigation-view-preference-BikLLmlP.js";import{t as ae}from"./upload-BDX8w8rQ.js";import{A as oe,Dt as A,F as se,I as ce,It as j,L as le,N as ue,Ot as M,P as N,R as P,S as F,b as I,x as L,y as R}from"./index-DTJVeg10.js";var z=s(`file-minus-corner`,[[`path`,{d:`M20 14V8a2.4 2.4 0 0 0-.706-1.706l-3.588-3.588A2.4 2.4 0 0 0 14 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12`,key:`l9p8hp`}],[`path`,{d:`M14 2v5a1 1 0 0 0 1 1h5`,key:`wfsgrz`}],[`path`,{d:`M14 18h6`,key:`1m8k6r`}]]),B=e(t(),1),V=n(),H=r(`min-w-0 text-foreground outline-none transition-[border-color,box-shadow] placeholder:text-muted-foreground focus-visible:outline-none disabled:cursor-not-allowed disabled:opacity-50`,{defaultVariants:{variant:`default`},variants:{variant:{default:`min-h-20 w-full resize-y rounded-control bg-control px-3 py-2 text-body focus-visible:shadow-focus`,embedded:`flex-1 resize-none bg-transparent`}}});function U({className:e,variant:t=`default`,...n}){return(0,V.jsx)(`textarea`,{className:c(H({className:e,variant:t})),"data-slot":`textarea`,"data-variant":t,...n})}function de({className:e,...t}){return(0,V.jsx)(`div`,{className:c(`group/input-group flex w-full min-w-0 items-center`,e),"data-slot":`input-group`,role:`group`,...t})}function fe({align:e=`inline-start`,className:t,...n}){return(0,V.jsx)(`div`,{className:c(`flex shrink-0 items-center`,t),"data-align":e,"data-slot":`input-group-addon`,role:`group`,...n})}function pe({className:e,...t}){return(0,V.jsx)(U,{className:c(`min-w-0 flex-1`,e),"data-slot":`input-group-control`,variant:`embedded`,...t})}function W(e){return[...e].sort((e,t)=>e.kind===t.kind?e.name.localeCompare(t.name,`en`):e.kind===`file`?-1:1)}function G(e){let t=[e.name],n=e;for(;n.children.size===1;){let e=n.children.values().next().value;if(e?.kind!==`folder`)break;t.push(e.name),n=e}return{children:W([...n.children.values()].map(e=>e.kind===`folder`?G(e):e)),kind:`folder`,name:t.join(`/`),path:n.path}}function K(e){let t={children:new Map,kind:`folder`,name:``,path:``};for(let n of e){let e=n.path.split(`/`),r=e.pop();if(r===void 0)continue;let i=t;for(let t of e){let e=i.path===``?t:`${i.path}/${t}`,n=i.children.get(t);if(n?.kind===`folder`){i=n;continue}let r={children:new Map,kind:`folder`,name:t,path:e};i.children.set(t,r),i=r}i.children.set(r,{kind:`file`,name:r,path:n.path,status:n.kind})}return W([...t.children.values()].map(e=>e.kind===`folder`?G(e):e))}function q(e,t){for(let n of e)n.kind===`folder`&&(t.add(n.path),q(n.children,t))}function J(e){return e===`create`?`text-diff-added`:e===`delete`?`text-danger`:`text-warning`}function Y(e){let t=c(`size-3.5`,J(e));return e===`create`?(0,V.jsx)(O,{"aria-hidden":`true`,className:t}):e===`delete`?(0,V.jsx)(z,{"aria-hidden":`true`,className:t}):(0,V.jsx)(D,{"aria-hidden":`true`,className:t})}function X(e){return e===`create`?`A`:e===`delete`?`D`:`M`}function Z({changesByPath:e,disabled:t,label:n,nodes:r,onOpenFileDiff:i,onTogglePath:a,selectedPaths:o}){return r.map(r=>{if(r.kind===`folder`)return(0,V.jsx)(C,{name:r.name,path:r.path,children:(0,V.jsx)(Z,{changesByPath:e,disabled:t,label:n,nodes:r.children,onOpenFileDiff:i,onTogglePath:a,selectedPaths:o})},r.path);let s=o.has(r.path),c=e.get(r.path);return(0,V.jsxs)(T,{"aria-label":r.path,className:J(r.status),icon:Y(r.status),name:r.name,onClick:()=>{c!==void 0&&i(c)},path:r.path,trailing:(0,V.jsx)(`span`,{className:`ml-auto w-3 text-center text-meta font-semibold text-muted-foreground`,children:X(r.status)}),children:[(0,V.jsx)(`span`,{"aria-hidden":`true`,className:`size-5 shrink-0`}),(0,V.jsx)(_,{"aria-label":`${n}: ${r.path}`,checked:s,disabled:t,onCheckedChange:()=>{a(r.path)},onClick:e=>{e.stopPropagation()}}),(0,V.jsx)(S,{children:Y(r.status)}),(0,V.jsx)(w,{title:r.path,children:r.name})]},r.path)})}function Q({changes:e,disabled:t=!1,label:n,onOpenFileDiff:r,onSelectedPathsChange:i,selectedPaths:a,viewMode:o=`tree`}){let s=(0,B.useMemo)(()=>K(e),[e]),l=(0,B.useMemo)(()=>new Map(e.map(e=>[e.path,e])),[e]),u=(0,B.useMemo)(()=>[...new Set(e.map(e=>e.path))],[e]),d=(0,B.useMemo)(()=>{let e=new Set;return q(s,e),e},[s]);if(u.length===0)return null;let f=u.filter(e=>a.has(e)).length,p=f===0?!1:f===u.length||`indeterminate`,m=e=>{let t=new Set(a);t.has(e)?t.delete(e):t.add(e),i(t)};return(0,V.jsxs)(`section`,{"aria-label":n,className:`py-0.5`,children:[(0,V.jsxs)(`div`,{className:`flex min-h-7 items-center gap-1.5 px-3`,children:[(0,V.jsx)(_,{"aria-label":n,checked:p,disabled:t||u.length===0,onCheckedChange:e=>{let t=new Set(a);for(let n of u)e===!0?t.add(n):t.delete(n);i(t)}}),(0,V.jsx)(`h3`,{className:`text-label font-semibold text-foreground`,children:n}),(0,V.jsx)(`span`,{className:`ml-auto text-caption text-muted-foreground`,children:u.length})]}),o===`list`?(0,V.jsx)(`div`,{className:`px-1 font-mono text-label`,"data-slot":`commit-changes-list`,role:`list`,children:e.toSorted((e,t)=>e.path.localeCompare(t.path,`en`)).map(e=>(0,V.jsxs)(`div`,{className:`flex min-h-7 items-center gap-1.5 rounded-control px-2 hover:bg-control-hover`,role:`listitem`,children:[(0,V.jsx)(_,{"aria-label":`${n}: ${e.path}`,checked:a.has(e.path),disabled:t,onCheckedChange:()=>{m(e.path)}}),(0,V.jsxs)(`button`,{"aria-label":e.path,className:c(`flex min-w-0 flex-1 items-center gap-1.5 text-left outline-none focus-visible:shadow-focus`,J(e.kind)),onClick:()=>{r(e)},type:`button`,children:[Y(e.kind),(0,V.jsx)(`span`,{className:`min-w-0 flex-1 truncate`,title:e.path,children:e.path}),(0,V.jsx)(`span`,{className:`w-3 text-center text-meta font-semibold text-muted-foreground`,children:X(e.kind)})]})]},e.path))}):s.length===0?null:(0,V.jsx)(E,{"aria-label":n,className:`px-1`,defaultExpanded:d,children:(0,V.jsx)(Z,{changesByPath:l,disabled:t,label:n,nodes:s,onOpenFileDiff:r,onTogglePath:m,selectedPaths:a})})]})}function me(e){let t=new Map;for(let n of e.staged)t.set(n.path,{path:n.path,staged:!0,unstaged:!1});for(let n of e.unstaged){let e=t.get(n.path);t.set(n.path,{path:n.path,staged:e?.staged??!1,unstaged:!0})}return[...t.values()].sort((e,t)=>e.path.localeCompare(t.path,`en`))}function he(e){if(e.repositoryMode!==`children`)return[];let t=new Set;for(let n of[...e.staged,...e.unstaged]){let e=n.path.indexOf(`/`);e>0&&t.add(n.path.slice(0,e))}return[...t].toSorted((e,t)=>e.localeCompare(t,`en`))}function $(e,t){return{identity:e,message:``,selectedPaths:new Set(t.map(e=>e.path))}}function ge({error:e=null,gitStatus:t,isCommitting:n=!1,isGenerating:r=!1,isRepositoryLoading:a=!1,onCommit:s,onGenerateMessage:l,onOpenFileDiff:p,onSelectRepository:h=()=>void 0,repositories:g=[],result:_=null,selectedRepository:y=null}){let{t:S}=i(`workbench`),[C,w]=ie(`changes`),T=(0,B.useMemo)(()=>me(t),[t]),E=`${y??`root`}:${t.snapshot}`,[D,O]=(0,B.useState)(()=>$(E,T)),A=(0,B.useRef)(m());D.identity!==E&&O($(E,T));let{message:j,selectedPaths:M}=D,z=j.includes(`
1
+ import{r as e}from"./rolldown-runtime-QTnfLwEv.js";import{i as t,t as n}from"./react-runtime-CVaUQXZF.js";import{C as r,D as i,I as a,v as o,w as s,y as c}from"./dist-hozmU7_C.js";import{R as l,i as u,n as d,t as f}from"./tooltip-BU1Qoscx.js";import{a as p,c as m,l as h,o as g,t as _}from"./checkbox-Cft8ypsb.js";import{n as v,r as y,t as b}from"./loader-circle-CYc50iXi.js";import{t as x}from"./check-DExH7zwT.js";import{a as S,i as C,o as w,r as T,t as E}from"./file-tree-CbuG5nkz.js";import{n as D,t as ee}from"./button-group-b2-xCzBP.js";import{S as O,r as te,y as ne}from"./prompt-input-controls-CT6f-1tO.js";import{n as k,r as re,t as ie}from"./file-navigation-view-preference-BikLLmlP.js";import{t as ae}from"./upload-BDX8w8rQ.js";import{A as oe,Dt as A,F as se,I as ce,It as j,L as le,N as ue,Ot as M,P as N,R as P,S as F,b as I,x as L,y as R}from"./index-C1A_OTjT.js";var z=s(`file-minus-corner`,[[`path`,{d:`M20 14V8a2.4 2.4 0 0 0-.706-1.706l-3.588-3.588A2.4 2.4 0 0 0 14 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12`,key:`l9p8hp`}],[`path`,{d:`M14 2v5a1 1 0 0 0 1 1h5`,key:`wfsgrz`}],[`path`,{d:`M14 18h6`,key:`1m8k6r`}]]),B=e(t(),1),V=n(),H=r(`min-w-0 text-foreground outline-none transition-[border-color,box-shadow] placeholder:text-muted-foreground focus-visible:outline-none disabled:cursor-not-allowed disabled:opacity-50`,{defaultVariants:{variant:`default`},variants:{variant:{default:`min-h-20 w-full resize-y rounded-control bg-control px-3 py-2 text-body focus-visible:shadow-focus`,embedded:`flex-1 resize-none bg-transparent`}}});function U({className:e,variant:t=`default`,...n}){return(0,V.jsx)(`textarea`,{className:c(H({className:e,variant:t})),"data-slot":`textarea`,"data-variant":t,...n})}function de({className:e,...t}){return(0,V.jsx)(`div`,{className:c(`group/input-group flex w-full min-w-0 items-center`,e),"data-slot":`input-group`,role:`group`,...t})}function fe({align:e=`inline-start`,className:t,...n}){return(0,V.jsx)(`div`,{className:c(`flex shrink-0 items-center`,t),"data-align":e,"data-slot":`input-group-addon`,role:`group`,...n})}function pe({className:e,...t}){return(0,V.jsx)(U,{className:c(`min-w-0 flex-1`,e),"data-slot":`input-group-control`,variant:`embedded`,...t})}function W(e){return[...e].sort((e,t)=>e.kind===t.kind?e.name.localeCompare(t.name,`en`):e.kind===`file`?-1:1)}function G(e){let t=[e.name],n=e;for(;n.children.size===1;){let e=n.children.values().next().value;if(e?.kind!==`folder`)break;t.push(e.name),n=e}return{children:W([...n.children.values()].map(e=>e.kind===`folder`?G(e):e)),kind:`folder`,name:t.join(`/`),path:n.path}}function K(e){let t={children:new Map,kind:`folder`,name:``,path:``};for(let n of e){let e=n.path.split(`/`),r=e.pop();if(r===void 0)continue;let i=t;for(let t of e){let e=i.path===``?t:`${i.path}/${t}`,n=i.children.get(t);if(n?.kind===`folder`){i=n;continue}let r={children:new Map,kind:`folder`,name:t,path:e};i.children.set(t,r),i=r}i.children.set(r,{kind:`file`,name:r,path:n.path,status:n.kind})}return W([...t.children.values()].map(e=>e.kind===`folder`?G(e):e))}function q(e,t){for(let n of e)n.kind===`folder`&&(t.add(n.path),q(n.children,t))}function J(e){return e===`create`?`text-diff-added`:e===`delete`?`text-danger`:`text-warning`}function Y(e){let t=c(`size-3.5`,J(e));return e===`create`?(0,V.jsx)(O,{"aria-hidden":`true`,className:t}):e===`delete`?(0,V.jsx)(z,{"aria-hidden":`true`,className:t}):(0,V.jsx)(D,{"aria-hidden":`true`,className:t})}function X(e){return e===`create`?`A`:e===`delete`?`D`:`M`}function Z({changesByPath:e,disabled:t,label:n,nodes:r,onOpenFileDiff:i,onTogglePath:a,selectedPaths:o}){return r.map(r=>{if(r.kind===`folder`)return(0,V.jsx)(C,{name:r.name,path:r.path,children:(0,V.jsx)(Z,{changesByPath:e,disabled:t,label:n,nodes:r.children,onOpenFileDiff:i,onTogglePath:a,selectedPaths:o})},r.path);let s=o.has(r.path),c=e.get(r.path);return(0,V.jsxs)(T,{"aria-label":r.path,className:J(r.status),icon:Y(r.status),name:r.name,onClick:()=>{c!==void 0&&i(c)},path:r.path,trailing:(0,V.jsx)(`span`,{className:`ml-auto w-3 text-center text-meta font-semibold text-muted-foreground`,children:X(r.status)}),children:[(0,V.jsx)(`span`,{"aria-hidden":`true`,className:`size-5 shrink-0`}),(0,V.jsx)(_,{"aria-label":`${n}: ${r.path}`,checked:s,disabled:t,onCheckedChange:()=>{a(r.path)},onClick:e=>{e.stopPropagation()}}),(0,V.jsx)(S,{children:Y(r.status)}),(0,V.jsx)(w,{title:r.path,children:r.name})]},r.path)})}function Q({changes:e,disabled:t=!1,label:n,onOpenFileDiff:r,onSelectedPathsChange:i,selectedPaths:a,viewMode:o=`tree`}){let s=(0,B.useMemo)(()=>K(e),[e]),l=(0,B.useMemo)(()=>new Map(e.map(e=>[e.path,e])),[e]),u=(0,B.useMemo)(()=>[...new Set(e.map(e=>e.path))],[e]),d=(0,B.useMemo)(()=>{let e=new Set;return q(s,e),e},[s]);if(u.length===0)return null;let f=u.filter(e=>a.has(e)).length,p=f===0?!1:f===u.length||`indeterminate`,m=e=>{let t=new Set(a);t.has(e)?t.delete(e):t.add(e),i(t)};return(0,V.jsxs)(`section`,{"aria-label":n,className:`py-0.5`,children:[(0,V.jsxs)(`div`,{className:`flex min-h-7 items-center gap-1.5 px-3`,children:[(0,V.jsx)(_,{"aria-label":n,checked:p,disabled:t||u.length===0,onCheckedChange:e=>{let t=new Set(a);for(let n of u)e===!0?t.add(n):t.delete(n);i(t)}}),(0,V.jsx)(`h3`,{className:`text-label font-semibold text-foreground`,children:n}),(0,V.jsx)(`span`,{className:`ml-auto text-caption text-muted-foreground`,children:u.length})]}),o===`list`?(0,V.jsx)(`div`,{className:`px-1 font-mono text-label`,"data-slot":`commit-changes-list`,role:`list`,children:e.toSorted((e,t)=>e.path.localeCompare(t.path,`en`)).map(e=>(0,V.jsxs)(`div`,{className:`flex min-h-7 items-center gap-1.5 rounded-control px-2 hover:bg-control-hover`,role:`listitem`,children:[(0,V.jsx)(_,{"aria-label":`${n}: ${e.path}`,checked:a.has(e.path),disabled:t,onCheckedChange:()=>{m(e.path)}}),(0,V.jsxs)(`button`,{"aria-label":e.path,className:c(`flex min-w-0 flex-1 items-center gap-1.5 text-left outline-none focus-visible:shadow-focus`,J(e.kind)),onClick:()=>{r(e)},type:`button`,children:[Y(e.kind),(0,V.jsx)(`span`,{className:`min-w-0 flex-1 truncate`,title:e.path,children:e.path}),(0,V.jsx)(`span`,{className:`w-3 text-center text-meta font-semibold text-muted-foreground`,children:X(e.kind)})]})]},e.path))}):s.length===0?null:(0,V.jsx)(E,{"aria-label":n,className:`px-1`,defaultExpanded:d,children:(0,V.jsx)(Z,{changesByPath:l,disabled:t,label:n,nodes:s,onOpenFileDiff:r,onTogglePath:m,selectedPaths:a})})]})}function me(e){let t=new Map;for(let n of e.staged)t.set(n.path,{path:n.path,staged:!0,unstaged:!1});for(let n of e.unstaged){let e=t.get(n.path);t.set(n.path,{path:n.path,staged:e?.staged??!1,unstaged:!0})}return[...t.values()].sort((e,t)=>e.path.localeCompare(t.path,`en`))}function he(e){if(e.repositoryMode!==`children`)return[];let t=new Set;for(let n of[...e.staged,...e.unstaged]){let e=n.path.indexOf(`/`);e>0&&t.add(n.path.slice(0,e))}return[...t].toSorted((e,t)=>e.localeCompare(t,`en`))}function $(e,t){return{identity:e,message:``,selectedPaths:new Set(t.map(e=>e.path))}}function ge({error:e=null,gitStatus:t,isCommitting:n=!1,isGenerating:r=!1,isRepositoryLoading:a=!1,onCommit:s,onGenerateMessage:l,onOpenFileDiff:p,onSelectRepository:h=()=>void 0,repositories:g=[],result:_=null,selectedRepository:y=null}){let{t:S}=i(`workbench`),[C,w]=ie(`changes`),T=(0,B.useMemo)(()=>me(t),[t]),E=`${y??`root`}:${t.snapshot}`,[D,O]=(0,B.useState)(()=>$(E,T)),A=(0,B.useRef)(m());D.identity!==E&&O($(E,T));let{message:j,selectedPaths:M}=D,z=j.includes(`
2
2
  `)?3:1,H=r||n,U=g.length>0||t.repositoryMode===`children`,W=!U||y!==null&&!a&&t.repositoryMode===`root`,G=W&&M.size>0&&!H&&_===null,K=G&&j.trim().length>0,q=()=>A.current.run(async()=>{let e=await l({expectedSnapshot:t.snapshot,paths:[...M],...y===null?{}:{repository:y}});O(t=>({...t,message:e}))}),J=e=>A.current.run(()=>s({action:e,expectedSnapshot:t.snapshot,message:j,paths:[...M],...y===null?{}:{repository:y}}));return(0,V.jsxs)(`div`,{className:`flex h-full min-h-0 flex-col overflow-hidden`,"data-slot":`commit-changes-panel`,children:[U?(0,V.jsxs)(`div`,{className:`shrink-0 border-b border-separator px-3 py-2`,children:[(0,V.jsx)(`label`,{className:`text-label font-medium`,id:`commit-repository-label`,children:S(`commit.repository`)}),(0,V.jsxs)(ue,{disabled:H||_!==null,onValueChange:h,...y===null?{}:{value:y},children:[(0,V.jsx)(le,{"aria-labelledby":`commit-repository-label`,className:`mt-1 w-full`,children:(0,V.jsx)(P,{placeholder:S(`commit.selectRepository`)})}),(0,V.jsx)(N,{position:`popper`,children:(0,V.jsx)(se,{children:g.map(e=>(0,V.jsx)(ce,{value:e,children:e},e))})})]}),a?(0,V.jsx)(`p`,{className:`mt-1 text-caption text-muted-foreground`,role:`status`,children:S(`commit.repositoryLoading`)}):null,g.length===0?(0,V.jsx)(`p`,{className:`mt-1 text-caption text-danger`,role:`alert`,children:S(`commit.repositoryUnavailable`)}):null]}):null,e===null?null:(0,V.jsx)(`p`,{className:`mx-3 mt-2 shrink-0 text-caption text-danger`,role:`alert`,children:e.message}),W?(0,V.jsxs)(V.Fragment,{children:[(0,V.jsxs)(`section`,{className:`shrink-0 px-3 py-2`,children:[(0,V.jsxs)(de,{className:c(`gap-1 rounded-surface border border-separator-strong bg-panel shadow-sm focus-within:border-brand focus-within:shadow-focus`,z===1?`h-8 max-workbench:h-11`:`h-18 max-workbench:h-21`),children:[(0,V.jsx)(pe,{"aria-label":S(`commit.commitMessage`),className:`h-full min-h-0 overflow-y-auto px-2 py-1.5 text-label leading-5 focus-visible:!outline-none max-workbench:py-3`,disabled:H||_!==null,id:`commit-message`,onChange:e=>{let t=e.currentTarget.value;O(e=>({...e,message:t}))},placeholder:S(`commit.messagePlaceholder`),rows:z,value:j}),(0,V.jsx)(fe,{align:`inline-end`,className:`ml-auto`,children:(0,V.jsxs)(f,{children:[(0,V.jsx)(u,{asChild:!0,children:(0,V.jsx)(te,{"aria-label":S(`commit.generateMessage`),className:`size-7 shrink-0 justify-center p-0 [&_svg]:size-3.5 max-workbench:size-11`,disabled:!G,onClick:()=>{q().catch(()=>void 0)},type:`button`,children:r?(0,V.jsx)(b,{"aria-hidden":`true`,className:`animate-spin`}):(0,V.jsx)(ne,{"aria-hidden":`true`})})}),(0,V.jsx)(d,{side:`top`,children:S(`commit.generateMessage`)})]})})]}),_===null?(0,V.jsxs)(ee,{className:`mt-2 w-full`,children:[(0,V.jsxs)(o,{className:`flex-1 rounded-r-none`,disabled:!K,onClick:()=>{J(`commit`).catch(()=>void 0)},type:`button`,children:[n?(0,V.jsx)(b,{"aria-hidden":`true`,className:`animate-spin`}):(0,V.jsx)(x,{"aria-hidden":`true`}),S(`commit.commit`)]}),(0,V.jsxs)(R,{children:[(0,V.jsx)(oe,{asChild:!0,children:(0,V.jsx)(o,{"aria-label":S(`commit.commitActions`),className:`w-10 rounded-l-none border-l border-brand-contrast/30 px-0`,disabled:!K,type:`button`,children:(0,V.jsx)(v,{"aria-hidden":`true`})})}),(0,V.jsx)(I,{align:`end`,children:(0,V.jsxs)(L,{children:[(0,V.jsxs)(F,{onSelect:()=>{J(`commit`).catch(()=>void 0)},children:[(0,V.jsx)(x,{"aria-hidden":`true`,className:`size-3.5`}),S(`commit.commit`)]}),(0,V.jsxs)(F,{onSelect:()=>{J(`commit_and_push`).catch(()=>void 0)},children:[(0,V.jsx)(ae,{"aria-hidden":`true`,className:`size-3.5`}),S(`commit.commitAndPush`)]})]})})]})]}):(0,V.jsx)(`p`,{className:`mt-2 font-mono text-caption text-muted-foreground`,role:`status`,children:_.commitSha.slice(0,7)})]}),(0,V.jsxs)(`div`,{className:`flex min-h-0 flex-1 flex-col border-t border-separator`,children:[(0,V.jsxs)(`div`,{className:`flex h-8 shrink-0 items-center gap-1 px-3 text-label font-semibold`,children:[(0,V.jsx)(`span`,{children:S(`commit.changes`)}),(0,V.jsx)(`span`,{className:`ml-auto text-caption font-normal text-muted-foreground`,children:S(`commit.totalFiles`,{count:T.length})}),(0,V.jsxs)(f,{children:[(0,V.jsx)(u,{asChild:!0,children:(0,V.jsx)(o,{"aria-label":S(C===`tree`?`diff.showFileList`:`diff.showFileTree`),onClick:()=>{w(C===`tree`?`list`:`tree`)},size:`icon-sm`,type:`button`,variant:`ghost`,children:C===`tree`?(0,V.jsx)(k,{"aria-hidden":`true`,className:`size-3.5`}):(0,V.jsx)(re,{"aria-hidden":`true`,className:`size-3.5`})})}),(0,V.jsx)(d,{children:S(C===`tree`?`diff.showFileList`:`diff.showFileTree`)})]})]}),(0,V.jsxs)(`div`,{className:`min-h-0 flex-1 overflow-y-auto overscroll-contain py-0.5`,"data-slot":`commit-changes-scroll`,children:[(0,V.jsx)(Q,{changes:t.staged,disabled:H||_!==null,label:S(`commit.staged`),onOpenFileDiff:p,onSelectedPathsChange:e=>{O(t=>({...t,selectedPaths:e}))},selectedPaths:M,viewMode:C}),(0,V.jsx)(Q,{changes:t.unstaged,disabled:H||_!==null,label:S(`commit.unstaged`),onOpenFileDiff:p,onSelectedPathsChange:e=>{O(t=>({...t,selectedPaths:e}))},selectedPaths:M,viewMode:C})]})]})]}):null]})}function _e(e){return e.pushStatus===`pushed`?`commit.commitAndPushSucceeded`:e.pushStatus===`not_requested`?`commit.commitSucceeded`:null}function ve({client:e,detailsError:t=null,detailsPending:n=!1,gitStatus:r,onOpenFileDiff:a,projectId:o,rootPath:s}){let{t:c}=i(`workbench`),u=l(),d=h(M(o,s,e)),f=h({...A(o,s,e),meta:{actionNotification:{successMessage:!1}}}),m=(0,B.useMemo)(()=>he(r),[r]),[_,v]=(0,B.useState)(),[b,x]=(0,B.useState)(null),S=b!==null&&m.includes(b)?b:m[0]??null,C=y(j(o,s,S,r.repositoryMode===`children`,e)),w=r.repositoryMode===`root`?r:C.data??r,T=_?.snapshot===w.snapshot?_.result:null;return(0,V.jsx)(ge,{error:t??C.error,gitStatus:w,isCommitting:f.isPending,isGenerating:d.isPending,isRepositoryLoading:n||C.isFetching,onCommit:async e=>{let t=e.expectedSnapshot,n=await f.mutateAsync(e);v({result:n,snapshot:t}),u.invalidateQueries({queryKey:[`projects`,o,s,`git-status`]}),u.invalidateQueries({queryKey:[`projects`,o,s,`git-history`]});let r=_e(n);if(r!==null){g(c(r));return}p(Error(n.pushError??c(`commit.commitCompletePushFailed`)))},onGenerateMessage:async e=>(await d.mutateAsync(e)).message,onOpenFileDiff:a,onSelectRepository:e=>{v(void 0),d.reset(),f.reset(),x(e)},repositories:m,result:T,selectedRepository:S})}function ye({client:e,detailsError:t,detailsPending:n,detailsStatus:r,gitStatus:i,gitStatusError:o,onOpenFileDiff:s,projectId:c,rootPath:l}){return c!==void 0&&e!==void 0&&i!==void 0?(0,V.jsx)(ve,{client:e,detailsError:t,detailsPending:n,gitStatus:r??i,onOpenFileDiff:s,projectId:c,rootPath:l}):o===null?(0,V.jsx)(`p`,{className:`p-3 text-caption text-muted-foreground`,role:`status`,children:a.t(`inspector.gitLoading`,{ns:`conversation`})}):(0,V.jsx)(`p`,{className:`p-3 text-caption text-danger`,role:`alert`,children:o.message})}export{ye as WorkbenchInspectorChanges};