conductor-oss 0.62.7 → 0.62.8

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 (160) hide show
  1. package/node_modules/@conductor-oss/core/package.json +1 -1
  2. package/package.json +5 -5
  3. package/web/.next/standalone/node_modules/nanoid/package.json +1 -1
  4. package/web/.next/standalone/package.json +1 -1
  5. package/web/.next/standalone/packages/web/.next/BUILD_ID +1 -1
  6. package/web/.next/standalone/packages/web/.next/app-path-routes-manifest.json +8 -8
  7. package/web/.next/standalone/packages/web/.next/build-manifest.json +3 -3
  8. package/web/.next/standalone/packages/web/.next/prerender-manifest.json +3 -3
  9. package/web/.next/standalone/packages/web/.next/react-loadable-manifest.json +15 -14
  10. package/web/.next/standalone/packages/web/.next/server/app/_global-error/page_client-reference-manifest.js +1 -1
  11. package/web/.next/standalone/packages/web/.next/server/app/_global-error.html +1 -1
  12. package/web/.next/standalone/packages/web/.next/server/app/_global-error.rsc +1 -1
  13. package/web/.next/standalone/packages/web/.next/server/app/_global-error.segments/_full.segment.rsc +1 -1
  14. package/web/.next/standalone/packages/web/.next/server/app/_global-error.segments/_global-error/__PAGE__.segment.rsc +1 -1
  15. package/web/.next/standalone/packages/web/.next/server/app/_global-error.segments/_global-error.segment.rsc +1 -1
  16. package/web/.next/standalone/packages/web/.next/server/app/_global-error.segments/_head.segment.rsc +1 -1
  17. package/web/.next/standalone/packages/web/.next/server/app/_global-error.segments/_index.segment.rsc +1 -1
  18. package/web/.next/standalone/packages/web/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
  19. package/web/.next/standalone/packages/web/.next/server/app/_not-found/page.js +1 -1
  20. package/web/.next/standalone/packages/web/.next/server/app/_not-found/page.js.nft.json +1 -1
  21. package/web/.next/standalone/packages/web/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
  22. package/web/.next/standalone/packages/web/.next/server/app/bridge/connect/page.js +1 -1
  23. package/web/.next/standalone/packages/web/.next/server/app/bridge/connect/page.js.nft.json +1 -1
  24. package/web/.next/standalone/packages/web/.next/server/app/bridge/connect/page_client-reference-manifest.js +1 -1
  25. package/web/.next/standalone/packages/web/.next/server/app/embed/terminal/[id]/page.js +1 -1
  26. package/web/.next/standalone/packages/web/.next/server/app/embed/terminal/[id]/page.js.nft.json +1 -1
  27. package/web/.next/standalone/packages/web/.next/server/app/embed/terminal/[id]/page_client-reference-manifest.js +1 -1
  28. package/web/.next/standalone/packages/web/.next/server/app/page.js +2 -2
  29. package/web/.next/standalone/packages/web/.next/server/app/page.js.nft.json +1 -1
  30. package/web/.next/standalone/packages/web/.next/server/app/page_client-reference-manifest.js +1 -1
  31. package/web/.next/standalone/packages/web/.next/server/app/sessions/[id]/page.js +2 -2
  32. package/web/.next/standalone/packages/web/.next/server/app/sessions/[id]/page.js.nft.json +1 -1
  33. package/web/.next/standalone/packages/web/.next/server/app/sessions/[id]/page_client-reference-manifest.js +1 -1
  34. package/web/.next/standalone/packages/web/.next/server/app/settings/bridge/page.js +1 -1
  35. package/web/.next/standalone/packages/web/.next/server/app/settings/bridge/page.js.nft.json +1 -1
  36. package/web/.next/standalone/packages/web/.next/server/app/settings/bridge/page_client-reference-manifest.js +1 -1
  37. package/web/.next/standalone/packages/web/.next/server/app/sign-in/[[...sign-in]]/page.js +2 -2
  38. package/web/.next/standalone/packages/web/.next/server/app/sign-in/[[...sign-in]]/page.js.nft.json +1 -1
  39. package/web/.next/standalone/packages/web/.next/server/app/sign-in/[[...sign-in]]/page_client-reference-manifest.js +1 -1
  40. package/web/.next/standalone/packages/web/.next/server/app/sign-in/hosted/page.js +1 -1
  41. package/web/.next/standalone/packages/web/.next/server/app/sign-in/hosted/page.js.nft.json +1 -1
  42. package/web/.next/standalone/packages/web/.next/server/app/sign-in/hosted/page_client-reference-manifest.js +1 -1
  43. package/web/.next/standalone/packages/web/.next/server/app/sign-in/sso-callback/page.js +1 -1
  44. package/web/.next/standalone/packages/web/.next/server/app/sign-in/sso-callback/page.js.nft.json +1 -1
  45. package/web/.next/standalone/packages/web/.next/server/app/sign-in/sso-callback/page_client-reference-manifest.js +1 -1
  46. package/web/.next/standalone/packages/web/.next/server/app/sign-up/[[...sign-up]]/page.js +2 -2
  47. package/web/.next/standalone/packages/web/.next/server/app/sign-up/[[...sign-up]]/page.js.nft.json +1 -1
  48. package/web/.next/standalone/packages/web/.next/server/app/sign-up/[[...sign-up]]/page_client-reference-manifest.js +1 -1
  49. package/web/.next/standalone/packages/web/.next/server/app/unlock/page.js +1 -1
  50. package/web/.next/standalone/packages/web/.next/server/app/unlock/page.js.nft.json +1 -1
  51. package/web/.next/standalone/packages/web/.next/server/app/unlock/page_client-reference-manifest.js +1 -1
  52. package/web/.next/standalone/packages/web/.next/server/app-paths-manifest.json +8 -8
  53. package/web/.next/standalone/packages/web/.next/server/chunks/1725.js +1 -0
  54. package/web/.next/standalone/packages/web/.next/server/chunks/3303.js +1 -1
  55. package/web/.next/standalone/packages/web/.next/server/chunks/4191.js +1 -1
  56. package/web/.next/standalone/packages/web/.next/server/chunks/5658.js +1 -0
  57. package/web/.next/standalone/packages/web/.next/server/chunks/5734.js +1 -0
  58. package/web/.next/standalone/packages/web/.next/server/chunks/5790.js +2 -0
  59. package/web/.next/standalone/packages/web/.next/server/chunks/6108.js +1 -1
  60. package/web/.next/standalone/packages/web/.next/server/chunks/6472.js +1 -1
  61. package/web/.next/standalone/packages/web/.next/server/chunks/6744.js +1 -0
  62. package/web/.next/standalone/packages/web/.next/server/chunks/7714.js +2 -2
  63. package/web/.next/standalone/packages/web/.next/server/chunks/7801.js +1 -1
  64. package/web/.next/standalone/packages/web/.next/server/chunks/8352.js +1 -1
  65. package/web/.next/standalone/packages/web/.next/server/chunks/9455.js +1 -1
  66. package/web/.next/standalone/packages/web/.next/server/chunks/9516.js +1 -1
  67. package/web/.next/standalone/packages/web/.next/server/chunks/9930.js +4 -4
  68. package/web/.next/standalone/packages/web/.next/server/middleware-build-manifest.js +1 -1
  69. package/web/.next/standalone/packages/web/.next/server/middleware-react-loadable-manifest.js +1 -1
  70. package/web/.next/standalone/packages/web/.next/server/pages/500.html +1 -1
  71. package/web/.next/standalone/packages/web/.next/server/server-reference-manifest.js +1 -1
  72. package/web/.next/standalone/packages/web/.next/server/server-reference-manifest.json +1 -1
  73. package/web/.next/standalone/packages/web/.next/static/chunks/20038.fe65f7c2f63cf380.js +1 -0
  74. package/web/.next/standalone/packages/web/.next/static/chunks/29450-e298fd3b74f528a5.js +1 -0
  75. package/web/.next/standalone/packages/web/.next/static/chunks/{34443.6226599113ecee07.js → 34443.3021c37fce5f1966.js} +1 -1
  76. package/web/.next/standalone/packages/web/.next/static/chunks/35493-405b96c4dd41e057.js +1 -0
  77. package/web/.next/{static/chunks/37785-4c70b81506dde54c.js → standalone/packages/web/.next/static/chunks/37785-1fc09b3ce0839b64.js} +2 -2
  78. package/web/.next/{static/chunks/41696.3e691c667c1e7b81.js → standalone/packages/web/.next/static/chunks/41696.849ce60671c3fc20.js} +1 -1
  79. package/web/.next/standalone/packages/web/.next/static/chunks/47369.a4f0b46515a89877.js +3 -0
  80. package/web/.next/standalone/packages/web/.next/static/chunks/70008.848fd401840c9bce.js +1 -0
  81. package/web/.next/standalone/packages/web/.next/static/chunks/76892-8dd4340687959250.js +1 -0
  82. package/web/.next/standalone/packages/web/.next/static/chunks/81132.46e0113f762baba4.js +3 -0
  83. package/web/.next/standalone/packages/web/.next/static/chunks/86597-1974bd2fdc101983.js +2 -0
  84. package/web/.next/standalone/packages/web/.next/static/chunks/8798.be1c2bcbdf30d3d0.js +1 -0
  85. package/web/.next/standalone/packages/web/.next/static/chunks/88545.638d04d05b4cb291.js +1 -0
  86. package/web/.next/standalone/packages/web/.next/static/chunks/90036.6d4c9823456768d7.js +1 -0
  87. package/web/.next/standalone/packages/web/.next/static/chunks/app/bridge/connect/page-c4fcd887291e892d.js +1 -0
  88. package/web/.next/standalone/packages/web/.next/static/chunks/app/{layout-993567520eb26e1e.js → layout-42a934e328610863.js} +1 -1
  89. package/web/.next/standalone/packages/web/.next/static/chunks/app/page-5cdcce90b0cebb55.js +1 -0
  90. package/web/.next/standalone/packages/web/.next/static/chunks/app/sessions/[id]/{page-340961e7cd9d63cc.js → page-1f3578abecf4fb64.js} +1 -1
  91. package/web/.next/standalone/packages/web/.next/static/chunks/app/sign-in/[[...sign-in]]/page-bfd73815fe1dcf5e.js +9 -0
  92. package/web/.next/standalone/packages/web/.next/static/chunks/app/sign-up/[[...sign-up]]/page-a4f528b6782ed85c.js +9 -0
  93. package/web/.next/standalone/packages/web/.next/static/chunks/app/unlock/page-f95ae641f875a271.js +1 -0
  94. package/web/.next/standalone/packages/web/.next/static/chunks/webpack-3ea5ad7ca9f32ed6.js +1 -0
  95. package/web/.next/standalone/packages/web/.next/static/css/576f84ed441998c8.css +1 -0
  96. package/web/.next/static/chunks/20038.fe65f7c2f63cf380.js +1 -0
  97. package/web/.next/static/chunks/29450-e298fd3b74f528a5.js +1 -0
  98. package/web/.next/static/chunks/{34443.6226599113ecee07.js → 34443.3021c37fce5f1966.js} +1 -1
  99. package/web/.next/static/chunks/35493-405b96c4dd41e057.js +1 -0
  100. package/web/.next/{standalone/packages/web/.next/static/chunks/37785-4c70b81506dde54c.js → static/chunks/37785-1fc09b3ce0839b64.js} +2 -2
  101. package/web/.next/{standalone/packages/web/.next/static/chunks/41696.3e691c667c1e7b81.js → static/chunks/41696.849ce60671c3fc20.js} +1 -1
  102. package/web/.next/static/chunks/47369.a4f0b46515a89877.js +3 -0
  103. package/web/.next/static/chunks/70008.848fd401840c9bce.js +1 -0
  104. package/web/.next/static/chunks/76892-8dd4340687959250.js +1 -0
  105. package/web/.next/static/chunks/81132.46e0113f762baba4.js +3 -0
  106. package/web/.next/static/chunks/86597-1974bd2fdc101983.js +2 -0
  107. package/web/.next/static/chunks/8798.be1c2bcbdf30d3d0.js +1 -0
  108. package/web/.next/static/chunks/88545.638d04d05b4cb291.js +1 -0
  109. package/web/.next/static/chunks/90036.6d4c9823456768d7.js +1 -0
  110. package/web/.next/static/chunks/app/bridge/connect/page-c4fcd887291e892d.js +1 -0
  111. package/web/.next/static/chunks/app/{layout-993567520eb26e1e.js → layout-42a934e328610863.js} +1 -1
  112. package/web/.next/static/chunks/app/page-5cdcce90b0cebb55.js +1 -0
  113. package/web/.next/static/chunks/app/sessions/[id]/{page-340961e7cd9d63cc.js → page-1f3578abecf4fb64.js} +1 -1
  114. package/web/.next/static/chunks/app/sign-in/[[...sign-in]]/page-bfd73815fe1dcf5e.js +9 -0
  115. package/web/.next/static/chunks/app/sign-up/[[...sign-up]]/page-a4f528b6782ed85c.js +9 -0
  116. package/web/.next/static/chunks/app/unlock/page-f95ae641f875a271.js +1 -0
  117. package/web/.next/static/chunks/webpack-3ea5ad7ca9f32ed6.js +1 -0
  118. package/web/.next/static/css/576f84ed441998c8.css +1 -0
  119. package/web/.next/standalone/packages/web/.next/server/chunks/3775.js +0 -1
  120. package/web/.next/standalone/packages/web/.next/server/chunks/694.js +0 -2
  121. package/web/.next/standalone/packages/web/.next/server/chunks/724.js +0 -1
  122. package/web/.next/standalone/packages/web/.next/server/chunks/8603.js +0 -1
  123. package/web/.next/standalone/packages/web/.next/static/chunks/10215.e1adc6807da4cf05.js +0 -1
  124. package/web/.next/standalone/packages/web/.next/static/chunks/20038.0f95f26ad144c136.js +0 -1
  125. package/web/.next/standalone/packages/web/.next/static/chunks/29450-96ee8b2fdf605b68.js +0 -1
  126. package/web/.next/standalone/packages/web/.next/static/chunks/35493-8c8d75766e944f01.js +0 -1
  127. package/web/.next/standalone/packages/web/.next/static/chunks/39816.fa63b43ee1cbe027.js +0 -1
  128. package/web/.next/standalone/packages/web/.next/static/chunks/47369.5011bd3d9e80106a.js +0 -3
  129. package/web/.next/standalone/packages/web/.next/static/chunks/76892-5f15bcc6649e7bd4.js +0 -1
  130. package/web/.next/standalone/packages/web/.next/static/chunks/81132.8a9aaf302240ef27.js +0 -3
  131. package/web/.next/standalone/packages/web/.next/static/chunks/84271-9f5b4aa5a9c11bd9.js +0 -2
  132. package/web/.next/standalone/packages/web/.next/static/chunks/95381.bf3263b4d34504c7.js +0 -1
  133. package/web/.next/standalone/packages/web/.next/static/chunks/app/bridge/connect/page-a21257f88cf5a928.js +0 -1
  134. package/web/.next/standalone/packages/web/.next/static/chunks/app/page-06b5663e85e5e30e.js +0 -1
  135. package/web/.next/standalone/packages/web/.next/static/chunks/app/sign-in/[[...sign-in]]/page-4ad311894518c4e8.js +0 -9
  136. package/web/.next/standalone/packages/web/.next/static/chunks/app/sign-up/[[...sign-up]]/page-a8639099a42a668b.js +0 -9
  137. package/web/.next/standalone/packages/web/.next/static/chunks/app/unlock/page-4f87395d3035a5bf.js +0 -1
  138. package/web/.next/standalone/packages/web/.next/static/chunks/webpack-ce72c10ddc4a34ce.js +0 -1
  139. package/web/.next/standalone/packages/web/.next/static/css/5443e6375caddb6b.css +0 -1
  140. package/web/.next/static/chunks/10215.e1adc6807da4cf05.js +0 -1
  141. package/web/.next/static/chunks/20038.0f95f26ad144c136.js +0 -1
  142. package/web/.next/static/chunks/29450-96ee8b2fdf605b68.js +0 -1
  143. package/web/.next/static/chunks/35493-8c8d75766e944f01.js +0 -1
  144. package/web/.next/static/chunks/39816.fa63b43ee1cbe027.js +0 -1
  145. package/web/.next/static/chunks/47369.5011bd3d9e80106a.js +0 -3
  146. package/web/.next/static/chunks/76892-5f15bcc6649e7bd4.js +0 -1
  147. package/web/.next/static/chunks/81132.8a9aaf302240ef27.js +0 -3
  148. package/web/.next/static/chunks/84271-9f5b4aa5a9c11bd9.js +0 -2
  149. package/web/.next/static/chunks/95381.bf3263b4d34504c7.js +0 -1
  150. package/web/.next/static/chunks/app/bridge/connect/page-a21257f88cf5a928.js +0 -1
  151. package/web/.next/static/chunks/app/page-06b5663e85e5e30e.js +0 -1
  152. package/web/.next/static/chunks/app/sign-in/[[...sign-in]]/page-4ad311894518c4e8.js +0 -9
  153. package/web/.next/static/chunks/app/sign-up/[[...sign-up]]/page-a8639099a42a668b.js +0 -9
  154. package/web/.next/static/chunks/app/unlock/page-4f87395d3035a5bf.js +0 -1
  155. package/web/.next/static/chunks/webpack-ce72c10ddc4a34ce.js +0 -1
  156. package/web/.next/static/css/5443e6375caddb6b.css +0 -1
  157. /package/web/.next/standalone/packages/web/.next/static/{dg_PQxcnntSl1TuuRZaFW → uj1a_PBVefvWUi6yVk4E5}/_buildManifest.js +0 -0
  158. /package/web/.next/standalone/packages/web/.next/static/{dg_PQxcnntSl1TuuRZaFW → uj1a_PBVefvWUi6yVk4E5}/_ssgManifest.js +0 -0
  159. /package/web/.next/static/{dg_PQxcnntSl1TuuRZaFW → uj1a_PBVefvWUi6yVk4E5}/_buildManifest.js +0 -0
  160. /package/web/.next/static/{dg_PQxcnntSl1TuuRZaFW → uj1a_PBVefvWUi6yVk4E5}/_ssgManifest.js +0 -0
@@ -1 +1 @@
1
- "use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[41696],{11896:(e,t,r)=>{r.d(t,{A:()=>a});let a=(0,r(39789).A)("layers",[["path",{d:"M12.83 2.18a2 2 0 0 0-1.66 0L2.6 6.08a1 1 0 0 0 0 1.83l8.58 3.91a2 2 0 0 0 1.66 0l8.58-3.9a1 1 0 0 0 0-1.83z",key:"zw3jo"}],["path",{d:"M2 12a1 1 0 0 0 .58.91l8.6 3.91a2 2 0 0 0 1.65 0l8.58-3.9A1 1 0 0 0 22 12",key:"1wduqc"}],["path",{d:"M2 17a1 1 0 0 0 .58.91l8.6 3.91a2 2 0 0 0 1.65 0l8.58-3.9A1 1 0 0 0 22 17",key:"kqbvx6"}]])},18510:(e,t,r)=>{r.d(t,{J:()=>n,s:()=>s});var a=r(10926);function n(e){let t=(0,a.C0)(e);if(!t)return"/";let r=new URLSearchParams;return r.set("bridge",t),`/?${r.toString()}`}function s(e,t={}){let r,n=e.trim(),l=(0,a.DW)(n)?n:(r=(0,a.C0)(t.bridgeId))?(0,a.Bp)(r,n):n,i=new URLSearchParams,o=t.tab?.trim();o&&i.set("tab",o);let c=i.toString(),d=`/sessions/${encodeURIComponent(l)}`;return c.length>0?`${d}?${c}`:d}},21207:(e,t,r)=>{r.d(t,{A:()=>a});let a=(0,r(39789).A)("sparkles",[["path",{d:"M11.017 2.814a1 1 0 0 1 1.966 0l1.051 5.558a2 2 0 0 0 1.594 1.594l5.558 1.051a1 1 0 0 1 0 1.966l-5.558 1.051a2 2 0 0 0-1.594 1.594l-1.051 5.558a1 1 0 0 1-1.966 0l-1.051-5.558a2 2 0 0 0-1.594-1.594l-5.558-1.051a1 1 0 0 1 0-1.966l5.558-1.051a2 2 0 0 0 1.594-1.594z",key:"1s2grr"}],["path",{d:"M20 2v4",key:"1rf3ol"}],["path",{d:"M22 4h-4",key:"gwowj6"}],["circle",{cx:"4",cy:"20",r:"2",key:"6kqj1y"}]])},24774:(e,t,r)=>{r.d(t,{A:()=>a});let a=(0,r(39789).A)("external-link",[["path",{d:"M15 3h6v6",key:"1q9fwt"}],["path",{d:"M10 14 21 3",key:"gplh6r"}],["path",{d:"M18 13v6a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V8a2 2 0 0 1 2-2h6",key:"a6xqqp"}]])},33507:(e,t,r)=>{r.d(t,{DK:()=>n,VM:()=>l,hq:()=>a,qg:()=>s,re:()=>i});let a="overscroll-contain touch-pan-y [-webkit-overflow-scrolling:touch]",n=`overflow-y-auto ${a}`,s="min-h-0 flex-1 overflow-hidden bg-[#0f1012] p-3",l=a;function i(e){return["flex h-full min-h-0 min-w-0 w-full flex-col",e?"overflow-hidden bg-[#060404]":"overflow-hidden"].join(" ")}},34307:(e,t,r)=>{r.d(t,{A:()=>a});let a=(0,r(39789).A)("triangle-alert",[["path",{d:"m21.73 18-8-14a2 2 0 0 0-3.48 0l-8 14A2 2 0 0 0 4 21h16a2 2 0 0 0 1.73-3",key:"wmoenq"}],["path",{d:"M12 9v4",key:"juzpu7"}],["path",{d:"M12 17h.01",key:"p32p05"}]])},40443:(e,t,r)=>{r.d(t,{Wu:()=>i,Zp:()=>s,aR:()=>l});var a=r(54568),n=r(46916);let s=(0,r(7620).forwardRef)(({className:e,...t},r)=>(0,a.jsx)("div",{ref:r,className:(0,n.cn)("surface-card rounded-[var(--radius-md)] border",e),...t}));function l({className:e,...t}){return(0,a.jsx)("div",{className:(0,n.cn)("flex items-center gap-2 border-b border-[var(--vk-border)] px-3 py-2",e),...t})}function i({className:e,...t}){return(0,a.jsx)("div",{className:(0,n.cn)("px-3 py-2",e),...t})}s.displayName="Card"},41696:(e,t,r)=>{r.r(t),r.d(t,{WorkspaceOverview:()=>L});var a=r(54568),n=r(7620),s=r(38724),l=r(11896),i=r(21207),o=r(98787),c=r(34307),d=r(94110),x=r(83328),p=r(76081),m=r(90986),g=r(40443),u=r(33507),v=r(77522),b=r(39789);let f=(0,b.A)("rotate-ccw",[["path",{d:"M3 12a9 9 0 1 0 9-9 9.75 9.75 0 0 0-6.74 2.74L3 8",key:"1357e3"}],["path",{d:"M3 3v5h5",key:"1xhq8a"}]]);var h=r(24774);let k=(0,b.A)("octagon-x",[["path",{d:"m15 9-6 6",key:"1uzhvr"}],["path",{d:"M2.586 16.726A2 2 0 0 1 2 15.312V8.688a2 2 0 0 1 .586-1.414l4.688-4.688A2 2 0 0 1 8.688 2h6.624a2 2 0 0 1 1.414.586l4.688 4.688A2 2 0 0 1 22 8.688v6.624a2 2 0 0 1-.586 1.414l-4.688 4.688a2 2 0 0 1-1.414.586H8.688a2 2 0 0 1-1.414-.586z",key:"2d38gg"}],["path",{d:"m9 9 6 6",key:"z0biqf"}]]);var j=r(46916);let y={active:{label:"active",dot:"var(--status-working)",bg:"color-mix(in srgb, var(--status-working) 18%, transparent)",text:"var(--status-working)"},ready:{label:"ready",dot:"var(--status-ready)",bg:"color-mix(in srgb, var(--status-ready) 18%, transparent)",text:"var(--status-ready)"},idle:{label:"idle",dot:"var(--status-idle)",bg:"color-mix(in srgb, var(--status-idle) 20%, transparent)",text:"var(--text-muted)"},waiting_input:{label:"waiting",dot:"var(--status-attention)",bg:"color-mix(in srgb, var(--status-attention) 16%, transparent)",text:"var(--status-attention)"},blocked:{label:"blocked",dot:"var(--status-error)",bg:"color-mix(in srgb, var(--status-error) 16%, transparent)",text:"var(--status-error)"},exited:{label:"exited",dot:"var(--status-idle)",bg:"color-mix(in srgb, var(--status-idle) 18%, transparent)",text:"var(--text-faint)"}},w={label:"unknown",dot:"var(--text-faint)",bg:"color-mix(in srgb, var(--text-faint) 16%, transparent)",text:"var(--text-faint)"};function N({activity:e,dotOnly:t=!1,size:r=6}){let n=null!==e&&e in y?y[e]:{...w,label:e??"unknown"},s="active"===e;return t?(0,a.jsx)("div",{className:`shrink-0 rounded-full ${s?"attention-glow":""}`,style:{width:r,height:r,background:n.dot}}):(0,a.jsxs)("span",{className:"inline-flex shrink-0 items-center gap-1 rounded-full px-1.5 py-0.5",style:{background:n.bg},children:[(0,a.jsx)("span",{className:`h-1.5 w-1.5 shrink-0 rounded-full ${s?"attention-glow":""}`,style:{background:n.dot}}),(0,a.jsx)("span",{className:"text-[10px] font-medium",style:{color:n.text},children:n.label})]})}var C=r(72410);let A={passing:{label:"CI passing",bg:"color-mix(in srgb, var(--status-ready) 14%, transparent)",text:"var(--status-ready)",icon:"✓"},failing:{label:"CI failing",bg:"color-mix(in srgb, var(--status-error) 14%, transparent)",text:"var(--status-error)",icon:"✗"},pending:{label:"CI pending",bg:"color-mix(in srgb, var(--status-attention) 12%, transparent)",text:"var(--status-attention)",icon:"●"},none:{label:"—",bg:"transparent",text:"var(--text-faint)",icon:""}};function M({status:e,failedCount:t,compact:r,prUrl:n}){let s=A[e]??A.none;if("none"===e||!e)return(0,a.jsx)("span",{className:"text-[10px] text-[var(--text-faint)]",children:"\\u2014"});let l="failing"===e&&t&&t>0?`${t} check${t>1?"s":""} failing`:s.label,i=(0,a.jsxs)("span",{className:"inline-flex items-center gap-1 rounded-full px-1.5 py-0.5 text-[10px] font-semibold",style:{background:s.bg,color:s.text},children:[!r&&(0,a.jsx)("span",{children:s.icon}),l]});return n?(0,a.jsx)("a",{href:`${n}/checks`,target:"_blank",rel:"noopener noreferrer",onClick:e=>e.stopPropagation(),className:"hover:opacity-80",children:i}):i}function _({additions:e,deletions:t,compact:r}){let n,s=(n=e+t)<10?"XS":n<50?"S":n<200?"M":n<500?"L":"XL";return(0,a.jsxs)("span",{className:"inline-flex items-center gap-1 rounded-full bg-[var(--vk-bg-panel)] px-1.5 py-0.5 font-mono text-[10px] font-semibold",children:[(0,a.jsxs)("span",{className:"text-[var(--status-ready)]",children:["+",e]}),(0,a.jsxs)("span",{className:"text-[var(--status-error)]",children:["-",t]}),!r&&(0,a.jsx)("span",{className:"text-[var(--text-faint)]",children:s})]})}var S=r(18510);let $=[{bg:"rgba(59,130,246,0.12)",text:"#60a5fa"},{bg:"rgba(139,92,246,0.12)",text:"#a78bfa"},{bg:"rgba(16,185,129,0.12)",text:"#34d399"},{bg:"rgba(245,158,11,0.12)",text:"#fbbf24"},{bg:"rgba(244,63,94,0.12)",text:"#fb7185"},{bg:"rgba(6,182,212,0.12)",text:"#22d3ee"},{bg:"rgba(99,102,241,0.12)",text:"#818cf8"},{bg:"rgba(236,72,153,0.12)",text:"#f472b6"}];function D(e){let t=0;for(let r of e)t=31*t+r.charCodeAt(0)|0;return $[Math.abs(t)%$.length]}let q={merge:"border-[color-mix(in_srgb,var(--status-ready)_30%,transparent)]",respond:"border-[color-mix(in_srgb,var(--status-attention)_30%,transparent)]",review:"border-[color-mix(in_srgb,var(--vk-orange,orange)_20%,transparent)]"},P={working:"text-[13px] font-medium text-[var(--text-secondary)]",pending:"text-[13px] font-medium text-[var(--text-secondary)]"};function I({decision:e}){let t="approved"===e,r="changes_requested"===e;return(0,a.jsx)("span",{className:"inline-flex items-center gap-1 rounded-full px-1.5 py-0.5 text-[10px] font-semibold",style:{background:t?"color-mix(in srgb, var(--status-ready) 12%, transparent)":r?"color-mix(in srgb, var(--status-error) 12%, transparent)":"color-mix(in srgb, var(--text-faint) 10%, transparent)",color:t?"var(--status-ready)":r?"var(--status-error)":"var(--text-faint)"},children:t?"✅ Approved":r?"Changes req.":`Review: ${e||"pending"}`})}function R({session:e,onSelect:t,onRestore:r}){let[s,l]=(0,n.useState)(!1),i="merged"===e.status||e.pr?.state==="merged"?{label:"merged",color:"var(--status-ready)",bg:"color-mix(in srgb, var(--status-ready) 12%, transparent)"}:"killed"===e.status||"terminated"===e.status?{label:e.status,color:"var(--status-error)",bg:"color-mix(in srgb, var(--status-error) 12%, transparent)"}:{label:e.status||"done",color:"var(--text-faint)",bg:"color-mix(in srgb, var(--text-faint) 12%, transparent)"},c=D(e.projectId),d="merged"!==e.status&&v.C.has(e.status);return(0,a.jsxs)("div",{className:(0,j.cn)("rounded-[10px] border border-[rgba(255,255,255,0.06)] bg-[rgba(23,25,30,0.88)] p-3 transition-colors hover:border-[rgba(255,255,255,0.12)]",s&&"border-[rgba(255,255,255,0.1)]"),onClick:e=>{e.target.closest("a, button, input")||l(!s)},children:[(0,a.jsxs)("div",{className:"flex items-center gap-2",children:[(0,a.jsx)("span",{className:"inline-flex items-center gap-1 rounded-full px-1.5 py-0.5 text-[10px] font-semibold",style:{background:i.bg,color:i.color},children:i.label}),(0,a.jsx)("span",{className:"shrink-0 rounded-full px-1.5 py-0.5 text-[9px] font-medium",style:{background:c.bg,color:c.text},children:e.projectId}),(0,a.jsx)("div",{className:"flex-1"}),d&&(0,a.jsxs)("button",{onClick:t=>{t.stopPropagation(),r?.(e.id)},className:"inline-flex items-center gap-1 text-[10px] text-[var(--color-accent)] hover:underline",children:[(0,a.jsx)(f,{className:"h-3 w-3"}),"restore"]})]}),(0,a.jsx)("p",{className:"mt-1.5 text-[13px] font-semibold leading-snug text-[var(--text-primary)] line-clamp-2",children:e.summary||e.projectId}),(0,a.jsxs)("div",{className:"mt-2 flex flex-wrap items-center gap-1.5",children:[e.branch&&(0,a.jsxs)("span",{className:"inline-flex items-center gap-1 rounded-full bg-[var(--vk-bg-panel)] px-1.5 py-0.5 font-mono text-[10px] text-[var(--text-faint)]",children:[(0,a.jsx)(o.A,{className:"h-2.5 w-2.5 opacity-50"}),e.branch]}),e.pr&&(0,a.jsxs)("a",{href:e.pr.url,target:"_blank",rel:"noopener noreferrer",onClick:e=>e.stopPropagation(),className:"rounded-full bg-[var(--vk-bg-panel)] px-1.5 py-0.5 font-mono text-[10px] font-bold text-[var(--text-primary)] hover:underline",children:["#",e.pr.number]}),e.pr?.additions!=null&&e.pr?.deletions!=null&&(0,a.jsx)(_,{additions:e.pr.additions,deletions:e.pr.deletions})]}),s&&(0,a.jsxs)("div",{className:"mt-3 border-t border-[var(--vk-border)] pt-3 space-y-2",children:[e.pr&&(0,a.jsxs)("div",{className:"flex items-center gap-2 flex-wrap",children:[(0,a.jsx)(M,{status:e.pr.ciStatus,prUrl:e.pr.url}),(0,a.jsx)(I,{decision:e.pr.reviewDecision})]}),!e.pr&&(0,a.jsx)("p",{className:"text-[11px] text-[var(--text-faint)]",children:"No PR associated."})]})]})}function z({session:e,onSelect:t,onSend:r,onKill:s,onRestore:l,compact:i}){let c,d,[x,p]=(0,n.useState)(!1),[m,g]=(0,n.useState)(""),[u,b]=(0,n.useState)(!1),[y,w]=(0,n.useState)(()=>Date.now()),A=(0,v.n)(e),$=v.C.has(e.status),L=$&&"merged"!==e.status,U=D(e.projectId),W=function(e){let t=e.cost;if(!t)return null;try{let e=JSON.parse(t);return e.estimatedCostUsd??e.totalUSD??null}catch{return null}}(e.metadata),E=(c=[],(d=e.pr)&&("failing"===d.ciStatus&&c.push({key:"ci-failing",label:"CI failing",color:"var(--status-error)",borderColor:"color-mix(in srgb, var(--status-error) 40%, transparent)",bg:"color-mix(in srgb, var(--status-error) 8%, transparent)"}),"changes_requested"===d.reviewDecision&&c.push({key:"changes",label:"Changes requested",color:"var(--vk-orange, #f59f0a)",borderColor:"color-mix(in srgb, var(--vk-orange, #f59f0a) 40%, transparent)",bg:"color-mix(in srgb, var(--vk-orange, #f59f0a) 8%, transparent)"}),d.mergeability.noConflicts||c.push({key:"conflicts",label:"Conflicts",color:"var(--status-error)",borderColor:"color-mix(in srgb, var(--status-error) 40%, transparent)",bg:"color-mix(in srgb, var(--status-error) 8%, transparent)"}),d.mergeability.mergeable&&d.mergeability.ciPassing&&d.mergeability.approved&&"open"===d.state&&c.push({key:"merge-ready",label:"Ready to merge",color:"var(--status-ready)",borderColor:"color-mix(in srgb, var(--status-ready) 40%, transparent)",bg:"color-mix(in srgb, var(--status-ready) 8%, transparent)"})),c),K=e.metadata?.agent,O=e.pr,T=O?.state==="open"&&O.mergeability.mergeable&&O.mergeability.ciPassing&&O.mergeability.approved,Z=(0,n.useCallback)(async()=>{let t=m.trim();if(t&&!u){b(!0);try{await Promise.resolve(r?.(e.id,t)),g("")}finally{setTimeout(()=>b(!1),1500)}}},[m,u,r,e.id]);if((0,n.useEffect)(()=>{w(Date.now());let e=window.setInterval(()=>w(Date.now()),6e4);return()=>window.clearInterval(e)},[]),"done"===A||i)return(0,a.jsx)(R,{session:e,onSelect:t,onSend:r,onKill:s,onRestore:l});let V=T?q.merge:E.length>0?q.respond:A in q?q[A]:"border-[rgba(255,255,255,0.08)]",F=A in P?P[A]:"text-[14px] font-semibold text-[var(--text-primary)]";return(0,a.jsxs)("div",{className:(0,j.cn)("rounded-[10px] border bg-[rgba(23,25,30,0.96)] p-3 shadow-[0_10px_24px_rgba(0,0,0,0.24)] transition-colors hover:border-[rgba(255,255,255,0.14)]",V),onClick:r=>{r.target.closest("a, button, input, textarea")||t?.(e.id)},children:[(0,a.jsxs)("div",{className:"flex items-center gap-2",children:[(0,a.jsx)(N,{activity:e.activity}),(0,a.jsx)("span",{className:"font-mono text-[11px] text-[var(--text-muted)] truncate max-w-[120px]",children:e.id}),(0,a.jsx)("span",{className:"shrink-0 rounded-full px-1.5 py-0.5 text-[9px] font-medium",style:{background:U.bg,color:U.text},children:e.projectId}),(0,a.jsx)("div",{className:"flex-1"}),(0,a.jsx)("span",{className:"text-[10px] text-[var(--text-faint)]",children:function(e,t){let r=Math.floor((t-new Date(e).getTime())/6e4);if(r<1)return"now";if(r<60)return`${r}m`;let a=Math.floor(r/60);return a<24?`${a}h`:`${Math.floor(a/24)}d`}(e.createdAt,y)}),(0,a.jsx)("a",{href:(0,S.s)(e.id,{bridgeId:e.bridgeId,tab:"terminal"}),onClick:e=>e.stopPropagation(),className:"inline-flex h-5 w-5 items-center justify-center rounded text-[var(--text-faint)] hover:bg-[var(--vk-bg-hover)] hover:text-[var(--text-muted)]",title:"Open session",children:(0,a.jsx)(h.A,{className:"h-3 w-3"})})]}),(0,a.jsx)("div",{className:"mt-1.5",children:(0,a.jsx)("p",{className:(0,j.cn)("leading-snug line-clamp-2",F),children:e.summary||e.projectId})}),(0,a.jsxs)("div",{className:"mt-2 flex flex-wrap items-center gap-1.5",children:[e.branch&&(0,a.jsxs)("span",{className:"inline-flex items-center gap-1 font-mono text-[10px] text-[var(--text-faint)]",children:[(0,a.jsx)(o.A,{className:"h-2.5 w-2.5 opacity-50"}),e.branch]}),O&&(0,a.jsxs)("a",{href:O.url,target:"_blank",rel:"noopener noreferrer",onClick:e=>e.stopPropagation(),className:"font-mono text-[11px] font-bold text-[var(--text-primary)] hover:underline",children:["#",O.number]}),O?.additions!=null&&O?.deletions!=null&&(0,a.jsx)(_,{additions:O.additions,deletions:O.deletions}),K&&(0,a.jsxs)("span",{className:"inline-flex items-center gap-1 rounded bg-[var(--color-accent-subtle)] px-1.5 py-0.5 text-[10px] font-medium text-[var(--color-accent)]",children:[(0,a.jsx)(C.N,{seed:{label:K},className:"h-4 w-4"}),K]})]}),E.length>0&&(0,a.jsxs)("div",{className:"mt-2 flex flex-wrap items-center gap-1.5",children:[E.map(e=>(0,a.jsx)("span",{className:"inline-flex items-center rounded-full px-1.5 py-0.5 text-[10px] font-semibold",style:{background:e.bg,color:e.color,border:`1px solid ${e.borderColor}`},children:e.label},e.key)),O&&(0,a.jsx)(M,{status:O.ciStatus,compact:!0,prUrl:O.url}),O&&"none"!==O.reviewDecision&&"pending"!==O.reviewDecision&&(0,a.jsx)(I,{decision:O.reviewDecision})]}),(0,a.jsxs)("div",{className:"mt-2 flex items-center gap-3 border-t border-[var(--vk-border)] pt-2",children:[null!=W&&(0,a.jsxs)("span",{className:"font-mono text-[10px] text-[var(--text-faint)]",children:["$",W.toFixed(2)]}),(0,a.jsx)("span",{className:"text-[10px] text-[var(--text-faint)]",children:function(e,t){let r=new Date(t).getTime()-new Date(e).getTime();if(r<0)return"-";let a=Math.floor(r/1e3);if(a<60)return`${a}s`;let n=Math.floor(a/60);if(n<60)return`${n}m`;let s=Math.floor(n/60);return`${s}h ${n%60}m`}(e.createdAt,e.lastActivityAt)}),(0,a.jsx)("div",{className:"flex-1"}),(0,a.jsx)("span",{className:"text-[10px] capitalize text-[var(--text-muted)]",children:e.status.replace(/_/g," ")})]}),!$&&(0,a.jsxs)("div",{className:"mt-2 flex gap-2",children:[(0,a.jsx)("input",{type:"text",value:m,onChange:e=>g(e.target.value),onKeyDown:e=>{"Enter"===e.key&&(e.preventDefault(),Z())},placeholder:"Message agent...",className:"flex-1 rounded-md border border-[var(--vk-border)] bg-[var(--vk-bg-main)] px-2.5 py-1.5 text-[11px] text-[var(--text-primary)] placeholder-[var(--text-faint)] outline-none focus:border-[var(--color-accent)]",onClick:e=>e.stopPropagation()}),(0,a.jsx)("button",{onClick:e=>{e.stopPropagation(),Z()},disabled:u||0===m.trim().length,className:"rounded-md bg-[var(--color-accent)] px-2.5 py-1.5 text-[10px] font-medium text-white transition-opacity hover:opacity-90 disabled:opacity-40",children:u?"Sent":"Send"})]}),$&&(0,a.jsxs)("div",{className:"mt-2 flex flex-wrap gap-2",children:[L&&(0,a.jsxs)("button",{onClick:t=>{t.stopPropagation(),l?.(e.id)},className:"inline-flex items-center gap-1 rounded-md border border-[var(--vk-border)] px-2 py-1 text-[10px] font-medium text-[var(--color-accent)] hover:bg-[var(--color-accent-subtle)]",children:[(0,a.jsx)(f,{className:"h-3 w-3"}),"Restore"]}),(0,a.jsxs)("button",{onClick:t=>{t.stopPropagation(),s?.(e.id)},className:"inline-flex items-center gap-1 rounded-md border border-[color-mix(in_srgb,var(--status-error)_30%,transparent)] px-2 py-1 text-[10px] font-medium text-[var(--status-error)] hover:bg-[color-mix(in_srgb,var(--status-error)_8%,transparent)]",children:[(0,a.jsx)(k,{className:"h-3 w-3"}),"Cleanup"]})]})]})}function L({projects:e,projectsLoading:t=!1,projectsError:r=null,projectsRecovering:b=!1,sessions:f,onCreateWorkspace:h,onSelectSession:k}){let j=(0,n.useMemo)(()=>f.filter(e=>"archived"!==e.status),[f]),y=(0,n.useMemo)(()=>(function(e,t){let r=[];for(let a of e){let e=r.length;for(;e>0&&0>r[e-1].lastActivityAt.localeCompare(a.lastActivityAt);)e-=1;!(e>=t)&&(r.splice(e,0,a),r.length>t&&r.pop())}return r})(j,Math.max(j.length,12)),[j]),w=(0,n.useMemo)(()=>{let e=0,t=0,r=0;for(let a of j){let n=(0,v.n)(a);"done"!==n&&(e+=1),"merge"===n?(r+=1,t+=1):("respond"===n||"review"===n)&&(t+=1)}return{active:e,attention:t,merge:r}},[j]),N=0===e.length&&!!r&&b,C=0===e.length&&!!r&&!b,A=0===e.length&&t&&!r,M=0===e.length&&0===j.length&&!N&&!C&&!A,_=[{label:"Projects",value:String(e.length),icon:s.A,caption:"Linked workspaces"},{label:"Active sessions",value:String(w.active),icon:l.A,caption:"Agent sessions in progress"},{label:"Need attention",value:String(w.attention),icon:i.A,caption:"Awaiting review or input"},{label:"Merge ready",value:String(w.merge),icon:o.A,caption:"Cleared to land"}];return N||C||A?(0,a.jsx)("div",{className:`flex h-full min-h-0 w-full flex-col bg-[linear-gradient(180deg,rgba(255,255,255,0.03),rgba(255,255,255,0))] ${u.DK}`,children:(0,a.jsx)("div",{className:"flex h-full min-h-0 w-full flex-1 items-center justify-center px-3 py-3 sm:px-4 sm:py-4",children:(0,a.jsx)(g.Zp,{className:"w-full max-w-[680px] border-[var(--vk-border)] bg-[color:color-mix(in_srgb,var(--vk-bg-panel)_88%,transparent)]",children:(0,a.jsxs)(g.Wu,{className:"flex flex-col items-center px-6 py-10 text-center sm:px-10 sm:py-12",children:[(0,a.jsx)("span",{className:"inline-flex h-12 w-12 items-center justify-center rounded-[12px] border border-[var(--vk-border)] bg-[var(--vk-bg-main)] text-[var(--vk-text-normal)]",children:C?(0,a.jsx)(c.A,{className:"h-5 w-5","aria-hidden":"true"}):(0,a.jsx)(d.A,{className:"h-5 w-5 animate-spin","aria-hidden":"true"})}),(0,a.jsx)("h1",{className:"mt-5 text-[24px] font-semibold tracking-[-0.035em] text-[var(--vk-text-strong)] sm:text-[30px]",children:N?"Reconnecting to Conductor":C?"Projects are unavailable":"Loading your projects"}),(0,a.jsx)("p",{className:"mt-3 max-w-[520px] text-[14px] leading-6 text-[var(--vk-text-muted)]",children:N?"Your projects have not been removed. Conductor is retrying the project connection automatically.":C?"Conductor could not load projects from this connection. Check the bridge or local backend, then refresh the page.":"Conductor is retrieving your linked projects."})]})})})}):M?(0,a.jsx)("div",{className:`flex h-full min-h-0 w-full flex-col bg-[linear-gradient(180deg,rgba(255,255,255,0.03),rgba(255,255,255,0))] ${u.DK}`,children:(0,a.jsxs)("div",{className:"mx-auto flex h-full min-h-0 w-full max-w-[1200px] flex-1 flex-col px-3 py-3 sm:px-4 sm:py-4",children:[(0,a.jsx)("div",{className:"mb-4 flex justify-end",children:(0,a.jsx)(p.$,{variant:"outline",size:"md",onClick:h,children:"Add workspace"})}),(0,a.jsx)("div",{className:"flex flex-1 items-center justify-center",children:(0,a.jsx)(g.Zp,{className:"w-full max-w-[880px] border-[var(--vk-border)] bg-[color:color-mix(in_srgb,var(--vk-bg-panel)_88%,transparent)]",children:(0,a.jsxs)(g.Wu,{className:"flex flex-col items-center px-6 py-12 text-center sm:px-10 sm:py-16",children:[(0,a.jsx)("span",{className:"inline-flex h-14 w-14 items-center justify-center rounded-[12px] border border-[var(--vk-border)] bg-[var(--vk-bg-main)] text-[var(--vk-text-normal)]",children:(0,a.jsx)(x.A,{className:"h-6 w-6"})}),(0,a.jsx)("p",{className:"mt-5 text-[11px] uppercase tracking-[0.14em] text-[var(--vk-text-muted)]",children:"Frontend Control Surface"}),(0,a.jsx)("h1",{className:"mt-3 max-w-[14ch] text-[30px] font-semibold leading-[1.02] tracking-[-0.05em] text-[var(--vk-text-strong)] sm:text-[44px]",children:"Operate workspaces, sessions, and agents from one surface."}),(0,a.jsx)("p",{className:"mt-4 max-w-[560px] text-[14px] leading-7 text-[var(--vk-text-muted)] sm:text-[15px]",children:"Start by linking a workspace. Once a project is connected, this page will show active sessions and recent work without sending you through an empty composer first."}),(0,a.jsxs)("div",{className:"mt-8 flex flex-wrap items-center justify-center gap-3",children:[(0,a.jsx)(p.$,{variant:"primary",size:"md",onClick:h,children:"Add workspace"}),(0,a.jsx)("div",{className:"inline-flex rounded-[6px] border border-[var(--vk-border)] bg-[var(--vk-bg-main)] px-3 py-2 text-[12px] text-[var(--vk-text-muted)]",children:"0 projects \xb7 0 active sessions"})]})]})})})]})}):(0,a.jsx)("div",{className:`flex h-full min-h-0 w-full flex-col bg-[linear-gradient(180deg,rgba(255,255,255,0.03),rgba(255,255,255,0))] ${u.DK}`,children:(0,a.jsxs)("div",{className:"flex h-full min-h-0 w-full flex-1 flex-col gap-4 px-3 py-3 sm:px-4",children:[(0,a.jsxs)("div",{className:"flex flex-col gap-3 lg:flex-row lg:items-start lg:justify-between",children:[(0,a.jsxs)("div",{className:"max-w-3xl",children:[(0,a.jsx)("p",{className:"text-[11px] uppercase tracking-[0.12em] text-[var(--vk-text-muted)]",children:"Frontend Control Surface"}),(0,a.jsx)("h1",{className:"mt-1 text-[24px] font-semibold leading-[1.05] tracking-[-0.04em] text-[var(--vk-text-strong)] sm:text-[30px]",children:"Operate workspaces, sessions, and agents from one surface."}),(0,a.jsx)("p",{className:"mt-2 max-w-2xl text-[13px] leading-6 text-[var(--vk-text-muted)]",children:"The workspace entrypoint now exposes status and recent activity without forcing you into a blank composer first."})]}),(0,a.jsx)("div",{className:"flex flex-wrap items-center gap-2",children:(0,a.jsx)(p.$,{variant:"outline",size:"md",onClick:h,children:"Add workspace"})})]}),(0,a.jsx)("div",{className:"grid grid-cols-2 gap-3 xl:grid-cols-4",children:_.map(({label:e,value:t,icon:r,caption:n})=>(0,a.jsx)(g.Zp,{className:"bg-[color:color-mix(in_srgb,var(--vk-bg-panel)_86%,transparent)] [content-visibility:auto] [contain-intrinsic-size:104px]",children:(0,a.jsxs)(g.Wu,{className:"flex items-center gap-3 py-3",children:[(0,a.jsx)("span",{className:"inline-flex h-10 w-10 items-center justify-center rounded-[6px] border border-[var(--vk-border)] bg-[var(--vk-bg-main)] text-[var(--vk-text-normal)]",children:(0,a.jsx)(r,{className:"h-4 w-4"})}),(0,a.jsxs)("div",{children:[(0,a.jsx)("p",{className:"text-[11px] uppercase tracking-[0.08em] text-[var(--vk-text-muted)]",children:e}),(0,a.jsx)("p",{className:"mt-1 text-[22px] font-semibold text-[var(--vk-text-strong)]",children:t}),(0,a.jsx)("p",{className:"mt-0.5 text-[10px] text-[var(--text-faint)]",children:n})]})]})},e))}),(0,a.jsx)("div",{className:"flex min-h-0 w-full flex-1",children:(0,a.jsxs)(g.Zp,{className:"flex min-h-0 w-full flex-1 flex-col",children:[(0,a.jsxs)(g.aR,{className:"justify-between",children:[(0,a.jsxs)("div",{children:[(0,a.jsx)("p",{className:"text-[14px] font-semibold text-[var(--vk-text-strong)]",children:"Recent sessions"}),(0,a.jsx)("p",{className:"text-[12px] text-[var(--vk-text-muted)]",children:"Jump back into active work without hunting through the sidebar."})]}),(0,a.jsx)(m.E,{variant:"outline",children:j.length})]}),(0,a.jsx)(g.Wu,{className:`flex min-h-0 flex-1 flex-col gap-2 overflow-y-auto ${u.hq}`,children:0===y.length?(0,a.jsx)("div",{className:"flex h-full min-h-[180px] items-center justify-center rounded-[6px] border border-dashed border-[var(--vk-border)] bg-[var(--vk-bg-main)] px-4 text-center text-[13px] text-[var(--vk-text-muted)]",children:"No sessions yet. Create or open a workspace to start work."}):y.map(e=>(0,a.jsx)(z,{session:e,onSelect:k},e.id))})]})})]})})}},90986:(e,t,r)=>{r.d(t,{E:()=>l});var a=r(54568),n=r(46916);let s={default:"border-[var(--vk-border)] bg-[var(--vk-bg-panel)] text-[var(--vk-text-muted)]",success:"border-transparent bg-transparent text-[var(--vk-green)]",warning:"border-transparent bg-transparent text-[var(--vk-orange)]",error:"border-transparent bg-transparent text-[var(--vk-red)]",info:"border-transparent bg-transparent text-[var(--vk-text-muted)]",outline:"border-[var(--vk-border)] bg-transparent text-[var(--vk-text-muted)]"};function l({variant:e="default",className:t,children:r}){return(0,a.jsx)("span",{className:(0,n.cn)("inline-flex items-center gap-1 rounded-[3px] border px-1.5 py-0.5 text-[11px] leading-none",s[e],t),children:r})}},98787:(e,t,r)=>{r.d(t,{A:()=>a});let a=(0,r(39789).A)("git-branch",[["path",{d:"M15 6a9 9 0 0 0-9 9V3",key:"1cii5b"}],["circle",{cx:"18",cy:"6",r:"3",key:"1h7g24"}],["circle",{cx:"6",cy:"18",r:"3",key:"fqmcym"}]])}}]);
1
+ "use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[41696],{11896:(e,t,r)=>{r.d(t,{A:()=>a});let a=(0,r(39789).A)("layers",[["path",{d:"M12.83 2.18a2 2 0 0 0-1.66 0L2.6 6.08a1 1 0 0 0 0 1.83l8.58 3.91a2 2 0 0 0 1.66 0l8.58-3.9a1 1 0 0 0 0-1.83z",key:"zw3jo"}],["path",{d:"M2 12a1 1 0 0 0 .58.91l8.6 3.91a2 2 0 0 0 1.65 0l8.58-3.9A1 1 0 0 0 22 12",key:"1wduqc"}],["path",{d:"M2 17a1 1 0 0 0 .58.91l8.6 3.91a2 2 0 0 0 1.65 0l8.58-3.9A1 1 0 0 0 22 17",key:"kqbvx6"}]])},18510:(e,t,r)=>{r.d(t,{J:()=>n,s:()=>s});var a=r(10926);function n(e){let t=(0,a.C0)(e);if(!t)return"/";let r=new URLSearchParams;return r.set("bridge",t),`/?${r.toString()}`}function s(e,t={}){let r,n=e.trim(),l=(0,a.DW)(n)?n:(r=(0,a.C0)(t.bridgeId))?(0,a.Bp)(r,n):n,i=new URLSearchParams,o=t.tab?.trim();o&&i.set("tab",o);let c=i.toString(),d=`/sessions/${encodeURIComponent(l)}`;return c.length>0?`${d}?${c}`:d}},21207:(e,t,r)=>{r.d(t,{A:()=>a});let a=(0,r(39789).A)("sparkles",[["path",{d:"M11.017 2.814a1 1 0 0 1 1.966 0l1.051 5.558a2 2 0 0 0 1.594 1.594l5.558 1.051a1 1 0 0 1 0 1.966l-5.558 1.051a2 2 0 0 0-1.594 1.594l-1.051 5.558a1 1 0 0 1-1.966 0l-1.051-5.558a2 2 0 0 0-1.594-1.594l-5.558-1.051a1 1 0 0 1 0-1.966l5.558-1.051a2 2 0 0 0 1.594-1.594z",key:"1s2grr"}],["path",{d:"M20 2v4",key:"1rf3ol"}],["path",{d:"M22 4h-4",key:"gwowj6"}],["circle",{cx:"4",cy:"20",r:"2",key:"6kqj1y"}]])},24774:(e,t,r)=>{r.d(t,{A:()=>a});let a=(0,r(39789).A)("external-link",[["path",{d:"M15 3h6v6",key:"1q9fwt"}],["path",{d:"M10 14 21 3",key:"gplh6r"}],["path",{d:"M18 13v6a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V8a2 2 0 0 1 2-2h6",key:"a6xqqp"}]])},33507:(e,t,r)=>{r.d(t,{DK:()=>n,VM:()=>l,hq:()=>a,qg:()=>s,re:()=>i});let a="overscroll-contain touch-pan-y [-webkit-overflow-scrolling:touch]",n=`overflow-y-auto ${a}`,s="min-h-0 flex-1 overflow-hidden bg-[#0f1012] p-3",l=a;function i(e){return["flex h-full min-h-0 min-w-0 w-full flex-col",e?"overflow-hidden bg-[#060404]":"overflow-hidden"].join(" ")}},34307:(e,t,r)=>{r.d(t,{A:()=>a});let a=(0,r(39789).A)("triangle-alert",[["path",{d:"m21.73 18-8-14a2 2 0 0 0-3.48 0l-8 14A2 2 0 0 0 4 21h16a2 2 0 0 0 1.73-3",key:"wmoenq"}],["path",{d:"M12 9v4",key:"juzpu7"}],["path",{d:"M12 17h.01",key:"p32p05"}]])},40443:(e,t,r)=>{r.d(t,{Wu:()=>i,Zp:()=>s,aR:()=>l});var a=r(54568),n=r(46916);let s=(0,r(7620).forwardRef)(({className:e,...t},r)=>(0,a.jsx)("div",{ref:r,className:(0,n.cn)("surface-card rounded-[var(--radius-md)] border",e),...t}));function l({className:e,...t}){return(0,a.jsx)("div",{className:(0,n.cn)("flex items-center gap-2 border-b border-[var(--vk-border)] px-3 py-2",e),...t})}function i({className:e,...t}){return(0,a.jsx)("div",{className:(0,n.cn)("px-3 py-2",e),...t})}s.displayName="Card"},41696:(e,t,r)=>{r.r(t),r.d(t,{WorkspaceOverview:()=>L});var a=r(54568),n=r(7620),s=r(38724),l=r(11896),i=r(21207),o=r(98787),c=r(34307),d=r(94110),x=r(83328),p=r(76081),m=r(90986),g=r(40443),u=r(33507),v=r(77522),b=r(39789);let f=(0,b.A)("rotate-ccw",[["path",{d:"M3 12a9 9 0 1 0 9-9 9.75 9.75 0 0 0-6.74 2.74L3 8",key:"1357e3"}],["path",{d:"M3 3v5h5",key:"1xhq8a"}]]);var h=r(24774);let k=(0,b.A)("octagon-x",[["path",{d:"m15 9-6 6",key:"1uzhvr"}],["path",{d:"M2.586 16.726A2 2 0 0 1 2 15.312V8.688a2 2 0 0 1 .586-1.414l4.688-4.688A2 2 0 0 1 8.688 2h6.624a2 2 0 0 1 1.414.586l4.688 4.688A2 2 0 0 1 22 8.688v6.624a2 2 0 0 1-.586 1.414l-4.688 4.688a2 2 0 0 1-1.414.586H8.688a2 2 0 0 1-1.414-.586z",key:"2d38gg"}],["path",{d:"m9 9 6 6",key:"z0biqf"}]]);var j=r(46916);let y={active:{label:"active",dot:"var(--status-working)",bg:"color-mix(in srgb, var(--status-working) 18%, transparent)",text:"var(--status-working)"},ready:{label:"ready",dot:"var(--status-ready)",bg:"color-mix(in srgb, var(--status-ready) 18%, transparent)",text:"var(--status-ready)"},idle:{label:"idle",dot:"var(--status-idle)",bg:"color-mix(in srgb, var(--status-idle) 20%, transparent)",text:"var(--text-muted)"},waiting_input:{label:"waiting",dot:"var(--status-attention)",bg:"color-mix(in srgb, var(--status-attention) 16%, transparent)",text:"var(--status-attention)"},blocked:{label:"blocked",dot:"var(--status-error)",bg:"color-mix(in srgb, var(--status-error) 16%, transparent)",text:"var(--status-error)"},exited:{label:"exited",dot:"var(--status-idle)",bg:"color-mix(in srgb, var(--status-idle) 18%, transparent)",text:"var(--text-faint)"}},w={label:"unknown",dot:"var(--text-faint)",bg:"color-mix(in srgb, var(--text-faint) 16%, transparent)",text:"var(--text-faint)"};function N({activity:e,dotOnly:t=!1,size:r=6}){let n=null!==e&&e in y?y[e]:{...w,label:e??"unknown"},s="active"===e;return t?(0,a.jsx)("div",{className:`shrink-0 rounded-full ${s?"attention-glow":""}`,style:{width:r,height:r,background:n.dot}}):(0,a.jsxs)("span",{className:"inline-flex shrink-0 items-center gap-1 rounded-full px-1.5 py-0.5",style:{background:n.bg},children:[(0,a.jsx)("span",{className:`h-1.5 w-1.5 shrink-0 rounded-full ${s?"attention-glow":""}`,style:{background:n.dot}}),(0,a.jsx)("span",{className:"text-[10px] font-medium",style:{color:n.text},children:n.label})]})}var C=r(72410);let A={passing:{label:"CI passing",bg:"color-mix(in srgb, var(--status-ready) 14%, transparent)",text:"var(--status-ready)",icon:"✓"},failing:{label:"CI failing",bg:"color-mix(in srgb, var(--status-error) 14%, transparent)",text:"var(--status-error)",icon:"✗"},pending:{label:"CI pending",bg:"color-mix(in srgb, var(--status-attention) 12%, transparent)",text:"var(--status-attention)",icon:"●"},none:{label:"—",bg:"transparent",text:"var(--text-faint)",icon:""}};function M({status:e,failedCount:t,compact:r,prUrl:n}){let s=A[e]??A.none;if("none"===e||!e)return(0,a.jsx)("span",{className:"text-[10px] text-[var(--text-faint)]",children:"\\u2014"});let l="failing"===e&&t&&t>0?`${t} check${t>1?"s":""} failing`:s.label,i=(0,a.jsxs)("span",{className:"inline-flex items-center gap-1 rounded-full px-1.5 py-0.5 text-[10px] font-semibold",style:{background:s.bg,color:s.text},children:[!r&&(0,a.jsx)("span",{children:s.icon}),l]});return n?(0,a.jsx)("a",{href:`${n}/checks`,target:"_blank",rel:"noopener noreferrer",onClick:e=>e.stopPropagation(),className:"hover:opacity-80",children:i}):i}function _({additions:e,deletions:t,compact:r}){let n,s=(n=e+t)<10?"XS":n<50?"S":n<200?"M":n<500?"L":"XL";return(0,a.jsxs)("span",{className:"inline-flex items-center gap-1 rounded-full bg-[var(--vk-bg-panel)] px-1.5 py-0.5 font-mono text-[10px] font-semibold",children:[(0,a.jsxs)("span",{className:"text-[var(--status-ready)]",children:["+",e]}),(0,a.jsxs)("span",{className:"text-[var(--status-error)]",children:["-",t]}),!r&&(0,a.jsx)("span",{className:"text-[var(--text-faint)]",children:s})]})}var S=r(18510);let $=[{bg:"rgba(59,130,246,0.12)",text:"#60a5fa"},{bg:"rgba(139,92,246,0.12)",text:"#a78bfa"},{bg:"rgba(16,185,129,0.12)",text:"#34d399"},{bg:"rgba(245,158,11,0.12)",text:"#fbbf24"},{bg:"rgba(244,63,94,0.12)",text:"#fb7185"},{bg:"rgba(6,182,212,0.12)",text:"#22d3ee"},{bg:"rgba(99,102,241,0.12)",text:"#818cf8"},{bg:"rgba(236,72,153,0.12)",text:"#f472b6"}];function D(e){let t=0;for(let r of e)t=31*t+r.charCodeAt(0)|0;return $[Math.abs(t)%$.length]}let q={merge:"border-[color-mix(in_srgb,var(--status-ready)_30%,transparent)]",respond:"border-[color-mix(in_srgb,var(--status-attention)_30%,transparent)]",review:"border-[color-mix(in_srgb,var(--vk-orange,orange)_20%,transparent)]"},P={working:"text-[13px] font-medium text-[var(--text-secondary)]",pending:"text-[13px] font-medium text-[var(--text-secondary)]"};function I({decision:e}){let t="approved"===e,r="changes_requested"===e;return(0,a.jsx)("span",{className:"inline-flex items-center gap-1 rounded-full px-1.5 py-0.5 text-[10px] font-semibold",style:{background:t?"color-mix(in srgb, var(--status-ready) 12%, transparent)":r?"color-mix(in srgb, var(--status-error) 12%, transparent)":"color-mix(in srgb, var(--text-faint) 10%, transparent)",color:t?"var(--status-ready)":r?"var(--status-error)":"var(--text-faint)"},children:t?"✅ Approved":r?"Changes req.":`Review: ${e||"pending"}`})}function R({session:e,onSelect:t,onRestore:r}){let[s,l]=(0,n.useState)(!1),i="merged"===e.status||e.pr?.state==="merged"?{label:"merged",color:"var(--status-ready)",bg:"color-mix(in srgb, var(--status-ready) 12%, transparent)"}:"killed"===e.status||"terminated"===e.status?{label:e.status,color:"var(--status-error)",bg:"color-mix(in srgb, var(--status-error) 12%, transparent)"}:{label:e.status||"done",color:"var(--text-faint)",bg:"color-mix(in srgb, var(--text-faint) 12%, transparent)"},c=D(e.projectId),d="merged"!==e.status&&v.C.has(e.status);return(0,a.jsxs)("div",{className:(0,j.cn)("rounded-[10px] border border-[rgba(255,255,255,0.06)] bg-[rgba(23,25,30,0.88)] p-3 transition-colors hover:border-[rgba(255,255,255,0.12)]",s&&"border-[rgba(255,255,255,0.1)]"),onClick:e=>{e.target.closest("a, button, input")||l(!s)},children:[(0,a.jsxs)("div",{className:"flex items-center gap-2",children:[(0,a.jsx)("span",{className:"inline-flex items-center gap-1 rounded-full px-1.5 py-0.5 text-[10px] font-semibold",style:{background:i.bg,color:i.color},children:i.label}),(0,a.jsx)("span",{className:"shrink-0 rounded-full px-1.5 py-0.5 text-[9px] font-medium",style:{background:c.bg,color:c.text},children:e.projectId}),(0,a.jsx)("div",{className:"flex-1"}),d&&(0,a.jsxs)("button",{onClick:t=>{t.stopPropagation(),r?.(e.id)},className:"inline-flex items-center gap-1 text-[10px] text-[var(--color-accent)] hover:underline",children:[(0,a.jsx)(f,{className:"h-3 w-3"}),"restore"]})]}),(0,a.jsx)("p",{className:"mt-1.5 text-[13px] font-semibold leading-snug text-[var(--text-primary)] line-clamp-2",children:e.summary||e.projectId}),(0,a.jsxs)("div",{className:"mt-2 flex flex-wrap items-center gap-1.5",children:[e.branch&&(0,a.jsxs)("span",{className:"inline-flex items-center gap-1 rounded-full bg-[var(--vk-bg-panel)] px-1.5 py-0.5 font-mono text-[10px] text-[var(--text-faint)]",children:[(0,a.jsx)(o.A,{className:"h-2.5 w-2.5 opacity-50"}),e.branch]}),e.pr&&(0,a.jsxs)("a",{href:e.pr.url,target:"_blank",rel:"noopener noreferrer",onClick:e=>e.stopPropagation(),className:"rounded-full bg-[var(--vk-bg-panel)] px-1.5 py-0.5 font-mono text-[10px] font-bold text-[var(--text-primary)] hover:underline",children:["#",e.pr.number]}),e.pr?.additions!=null&&e.pr?.deletions!=null&&(0,a.jsx)(_,{additions:e.pr.additions,deletions:e.pr.deletions})]}),s&&(0,a.jsxs)("div",{className:"mt-3 border-t border-[var(--vk-border)] pt-3 space-y-2",children:[e.pr&&(0,a.jsxs)("div",{className:"flex items-center gap-2 flex-wrap",children:[(0,a.jsx)(M,{status:e.pr.ciStatus,prUrl:e.pr.url}),(0,a.jsx)(I,{decision:e.pr.reviewDecision})]}),!e.pr&&(0,a.jsx)("p",{className:"text-[11px] text-[var(--text-faint)]",children:"No PR associated."})]})]})}function z({session:e,onSelect:t,onSend:r,onKill:s,onRestore:l,compact:i}){let c,d,[x,p]=(0,n.useState)(!1),[m,g]=(0,n.useState)(""),[u,b]=(0,n.useState)(!1),[y,w]=(0,n.useState)(()=>Date.now()),A=(0,v.n)(e),$=v.C.has(e.status),L=$&&"merged"!==e.status,U=D(e.projectId),W=function(e){let t=e.cost;if(!t)return null;try{let e=JSON.parse(t);return e.estimatedCostUsd??e.totalUSD??null}catch{return null}}(e.metadata),E=(c=[],(d=e.pr)&&("failing"===d.ciStatus&&c.push({key:"ci-failing",label:"CI failing",color:"var(--status-error)",borderColor:"color-mix(in srgb, var(--status-error) 40%, transparent)",bg:"color-mix(in srgb, var(--status-error) 8%, transparent)"}),"changes_requested"===d.reviewDecision&&c.push({key:"changes",label:"Changes requested",color:"var(--vk-orange, #f59f0a)",borderColor:"color-mix(in srgb, var(--vk-orange, #f59f0a) 40%, transparent)",bg:"color-mix(in srgb, var(--vk-orange, #f59f0a) 8%, transparent)"}),d.mergeability.noConflicts||c.push({key:"conflicts",label:"Conflicts",color:"var(--status-error)",borderColor:"color-mix(in srgb, var(--status-error) 40%, transparent)",bg:"color-mix(in srgb, var(--status-error) 8%, transparent)"}),d.mergeability.mergeable&&d.mergeability.ciPassing&&d.mergeability.approved&&"open"===d.state&&c.push({key:"merge-ready",label:"Ready to merge",color:"var(--status-ready)",borderColor:"color-mix(in srgb, var(--status-ready) 40%, transparent)",bg:"color-mix(in srgb, var(--status-ready) 8%, transparent)"})),c),K=e.metadata?.agent,O=e.pr,T=O?.state==="open"&&O.mergeability.mergeable&&O.mergeability.ciPassing&&O.mergeability.approved,Z=(0,n.useCallback)(async()=>{let t=m.trim();if(t&&!u){b(!0);try{await Promise.resolve(r?.(e.id,t)),g("")}finally{setTimeout(()=>b(!1),1500)}}},[m,u,r,e.id]);if((0,n.useEffect)(()=>{w(Date.now());let e=window.setInterval(()=>w(Date.now()),6e4);return()=>window.clearInterval(e)},[]),"done"===A||i)return(0,a.jsx)(R,{session:e,onSelect:t,onSend:r,onKill:s,onRestore:l});let V=T?q.merge:E.length>0?q.respond:A in q?q[A]:"border-[rgba(255,255,255,0.08)]",F=A in P?P[A]:"text-[14px] font-semibold text-[var(--text-primary)]";return(0,a.jsxs)("div",{className:(0,j.cn)("rounded-[10px] border bg-[rgba(23,25,30,0.96)] p-3 shadow-[0_10px_24px_rgba(0,0,0,0.24)] transition-colors hover:border-[rgba(255,255,255,0.14)]",V),onClick:r=>{r.target.closest("a, button, input, textarea")||t?.(e.id)},children:[(0,a.jsxs)("div",{className:"flex items-center gap-2",children:[(0,a.jsx)(N,{activity:e.activity}),(0,a.jsx)("span",{className:"font-mono text-[11px] text-[var(--text-muted)] truncate max-w-[120px]",children:e.id}),(0,a.jsx)("span",{className:"shrink-0 rounded-full px-1.5 py-0.5 text-[9px] font-medium",style:{background:U.bg,color:U.text},children:e.projectId}),(0,a.jsx)("div",{className:"flex-1"}),(0,a.jsx)("span",{className:"text-[10px] text-[var(--text-faint)]",children:function(e,t){let r=Math.floor((t-new Date(e).getTime())/6e4);if(r<1)return"now";if(r<60)return`${r}m`;let a=Math.floor(r/60);return a<24?`${a}h`:`${Math.floor(a/24)}d`}(e.createdAt,y)}),(0,a.jsx)("a",{href:(0,S.s)(e.id,{bridgeId:e.bridgeId,tab:"terminal"}),onClick:e=>e.stopPropagation(),className:"inline-flex h-5 w-5 items-center justify-center rounded text-[var(--text-faint)] hover:bg-[var(--vk-bg-hover)] hover:text-[var(--text-muted)]",title:"Open session",children:(0,a.jsx)(h.A,{className:"h-3 w-3"})})]}),(0,a.jsx)("div",{className:"mt-1.5",children:(0,a.jsx)("p",{className:(0,j.cn)("leading-snug line-clamp-2",F),children:e.summary||e.projectId})}),(0,a.jsxs)("div",{className:"mt-2 flex flex-wrap items-center gap-1.5",children:[e.branch&&(0,a.jsxs)("span",{className:"inline-flex items-center gap-1 font-mono text-[10px] text-[var(--text-faint)]",children:[(0,a.jsx)(o.A,{className:"h-2.5 w-2.5 opacity-50"}),e.branch]}),O&&(0,a.jsxs)("a",{href:O.url,target:"_blank",rel:"noopener noreferrer",onClick:e=>e.stopPropagation(),className:"font-mono text-[11px] font-bold text-[var(--text-primary)] hover:underline",children:["#",O.number]}),O?.additions!=null&&O?.deletions!=null&&(0,a.jsx)(_,{additions:O.additions,deletions:O.deletions}),K&&(0,a.jsxs)("span",{className:"inline-flex items-center gap-1 rounded bg-[var(--color-accent-subtle)] px-1.5 py-0.5 text-[10px] font-medium text-[var(--color-accent)]",children:[(0,a.jsx)(C.N,{seed:{label:K},className:"h-4 w-4"}),K]})]}),E.length>0&&(0,a.jsxs)("div",{className:"mt-2 flex flex-wrap items-center gap-1.5",children:[E.map(e=>(0,a.jsx)("span",{className:"inline-flex items-center rounded-full px-1.5 py-0.5 text-[10px] font-semibold",style:{background:e.bg,color:e.color,border:`1px solid ${e.borderColor}`},children:e.label},e.key)),O&&(0,a.jsx)(M,{status:O.ciStatus,compact:!0,prUrl:O.url}),O&&"none"!==O.reviewDecision&&"pending"!==O.reviewDecision&&(0,a.jsx)(I,{decision:O.reviewDecision})]}),(0,a.jsxs)("div",{className:"mt-2 flex items-center gap-3 border-t border-[var(--vk-border)] pt-2",children:[null!=W&&(0,a.jsxs)("span",{className:"font-mono text-[10px] text-[var(--text-faint)]",children:["$",W.toFixed(2)]}),(0,a.jsx)("span",{className:"text-[10px] text-[var(--text-faint)]",children:function(e,t){let r=new Date(t).getTime()-new Date(e).getTime();if(r<0)return"-";let a=Math.floor(r/1e3);if(a<60)return`${a}s`;let n=Math.floor(a/60);if(n<60)return`${n}m`;let s=Math.floor(n/60);return`${s}h ${n%60}m`}(e.createdAt,e.lastActivityAt)}),(0,a.jsx)("div",{className:"flex-1"}),(0,a.jsx)("span",{className:"text-[10px] capitalize text-[var(--text-muted)]",children:e.status.replace(/_/g," ")})]}),!$&&(0,a.jsxs)("div",{className:"mt-2 flex gap-2",children:[(0,a.jsx)("input",{type:"text",value:m,onChange:e=>g(e.target.value),onKeyDown:e=>{"Enter"===e.key&&(e.preventDefault(),Z())},placeholder:"Message agent...",className:"flex-1 rounded-md border border-[var(--vk-border)] bg-[var(--vk-bg-main)] px-2.5 py-1.5 text-[11px] text-[var(--text-primary)] placeholder-[var(--text-faint)] outline-none focus:border-[var(--color-accent)]",onClick:e=>e.stopPropagation()}),(0,a.jsx)("button",{onClick:e=>{e.stopPropagation(),Z()},disabled:u||0===m.trim().length,className:"rounded-md bg-[var(--color-accent)] px-2.5 py-1.5 text-[10px] font-medium text-white transition-opacity hover:opacity-90 disabled:opacity-40",children:u?"Sent":"Send"})]}),$&&(0,a.jsxs)("div",{className:"mt-2 flex flex-wrap gap-2",children:[L&&(0,a.jsxs)("button",{onClick:t=>{t.stopPropagation(),l?.(e.id)},className:"inline-flex items-center gap-1 rounded-md border border-[var(--vk-border)] px-2 py-1 text-[10px] font-medium text-[var(--color-accent)] hover:bg-[var(--color-accent-subtle)]",children:[(0,a.jsx)(f,{className:"h-3 w-3"}),"Restore"]}),(0,a.jsxs)("button",{onClick:t=>{t.stopPropagation(),s?.(e.id)},className:"inline-flex items-center gap-1 rounded-md border border-[color-mix(in_srgb,var(--status-error)_30%,transparent)] px-2 py-1 text-[10px] font-medium text-[var(--status-error)] hover:bg-[color-mix(in_srgb,var(--status-error)_8%,transparent)]",children:[(0,a.jsx)(k,{className:"h-3 w-3"}),"Cleanup"]})]})]})}function L({projects:e,projectsLoading:t=!1,projectsError:r=null,projectsRecovering:b=!1,sessions:f,onCreateWorkspace:h,onSelectSession:k}){let j=(0,n.useMemo)(()=>f.filter(e=>"archived"!==e.status),[f]),y=(0,n.useMemo)(()=>(function(e,t){let r=[];for(let a of e){let e=r.length;for(;e>0&&0>r[e-1].lastActivityAt.localeCompare(a.lastActivityAt);)e-=1;!(e>=t)&&(r.splice(e,0,a),r.length>t&&r.pop())}return r})(j,Math.max(j.length,12)),[j]),w=(0,n.useMemo)(()=>{let e=0,t=0,r=0;for(let a of j){let n=(0,v.n)(a);"done"!==n&&(e+=1),"merge"===n?(r+=1,t+=1):("respond"===n||"review"===n)&&(t+=1)}return{active:e,attention:t,merge:r}},[j]),N=0===e.length&&!!r&&b,C=0===e.length&&!!r&&!b,A=0===e.length&&t&&!r,M=0===e.length&&0===j.length&&!N&&!C&&!A,_=[{label:"Projects",value:String(e.length),icon:s.A,caption:"Linked workspaces"},{label:"Active sessions",value:String(w.active),icon:l.A,caption:"Agent sessions in progress"},{label:"Need attention",value:String(w.attention),icon:i.A,caption:"Awaiting review or input"},{label:"Merge ready",value:String(w.merge),icon:o.A,caption:"Cleared to land"}];return N||C||A?(0,a.jsx)("div",{className:`flex h-full min-h-0 w-full flex-col bg-[linear-gradient(180deg,rgba(255,255,255,0.03),rgba(255,255,255,0))] ${u.DK}`,children:(0,a.jsx)("div",{className:"flex min-h-full w-full items-center justify-center px-3 py-3 sm:px-4 sm:py-4",children:(0,a.jsx)(g.Zp,{className:"w-full max-w-[680px] border-[var(--vk-border)] bg-[color:color-mix(in_srgb,var(--vk-bg-panel)_88%,transparent)]",children:(0,a.jsxs)(g.Wu,{className:"flex flex-col items-center px-6 py-10 text-center sm:px-10 sm:py-12",children:[(0,a.jsx)("span",{className:"inline-flex h-12 w-12 items-center justify-center rounded-[12px] border border-[var(--vk-border)] bg-[var(--vk-bg-main)] text-[var(--vk-text-normal)]",children:C?(0,a.jsx)(c.A,{className:"h-5 w-5","aria-hidden":"true"}):(0,a.jsx)(d.A,{className:"h-5 w-5 animate-spin","aria-hidden":"true"})}),(0,a.jsx)("h1",{className:"mt-5 text-[24px] font-semibold tracking-[-0.035em] text-[var(--vk-text-strong)] sm:text-[30px]",children:N?"Reconnecting to Conductor":C?"Projects are unavailable":"Loading your projects"}),(0,a.jsx)("p",{className:"mt-3 max-w-[520px] text-[14px] leading-6 text-[var(--vk-text-muted)]",children:N?"Your projects have not been removed. Conductor is retrying the project connection automatically.":C?"Conductor could not load projects from this connection. Check the bridge or local backend, then refresh the page.":"Conductor is retrieving your linked projects."})]})})})}):M?(0,a.jsx)("div",{className:`flex h-full min-h-0 w-full flex-col bg-[linear-gradient(180deg,rgba(255,255,255,0.03),rgba(255,255,255,0))] ${u.DK}`,children:(0,a.jsxs)("div",{className:"mx-auto flex min-h-full w-full max-w-[1200px] flex-col px-3 py-3 sm:px-4 sm:py-4",children:[(0,a.jsx)("div",{className:"mb-4 flex justify-end",children:(0,a.jsx)(p.$,{variant:"outline",size:"md",onClick:h,children:"Add workspace"})}),(0,a.jsx)("div",{className:"flex flex-1 items-center justify-center",children:(0,a.jsx)(g.Zp,{className:"w-full max-w-[880px] border-[var(--vk-border)] bg-[color:color-mix(in_srgb,var(--vk-bg-panel)_88%,transparent)]",children:(0,a.jsxs)(g.Wu,{className:"flex flex-col items-center px-6 py-12 text-center sm:px-10 sm:py-16",children:[(0,a.jsx)("span",{className:"inline-flex h-14 w-14 items-center justify-center rounded-[12px] border border-[var(--vk-border)] bg-[var(--vk-bg-main)] text-[var(--vk-text-normal)]",children:(0,a.jsx)(x.A,{className:"h-6 w-6"})}),(0,a.jsx)("p",{className:"mt-5 text-[11px] uppercase tracking-[0.14em] text-[var(--vk-text-muted)]",children:"Frontend Control Surface"}),(0,a.jsx)("h1",{className:"mt-3 max-w-[14ch] text-[30px] font-semibold leading-[1.02] tracking-[-0.05em] text-[var(--vk-text-strong)] sm:text-[44px]",children:"Operate workspaces, sessions, and agents from one surface."}),(0,a.jsx)("p",{className:"mt-4 max-w-[560px] text-[14px] leading-7 text-[var(--vk-text-muted)] sm:text-[15px]",children:"Start by linking a workspace. Once a project is connected, this page will show active sessions and recent work without sending you through an empty composer first."}),(0,a.jsxs)("div",{className:"mt-8 flex flex-wrap items-center justify-center gap-3",children:[(0,a.jsx)(p.$,{variant:"primary",size:"md",onClick:h,children:"Add workspace"}),(0,a.jsx)("div",{className:"inline-flex rounded-[6px] border border-[var(--vk-border)] bg-[var(--vk-bg-main)] px-3 py-2 text-[12px] text-[var(--vk-text-muted)]",children:"0 projects \xb7 0 active sessions"})]})]})})})]})}):(0,a.jsx)("div",{className:`flex h-full min-h-0 w-full flex-col bg-[linear-gradient(180deg,rgba(255,255,255,0.03),rgba(255,255,255,0))] ${u.DK}`,children:(0,a.jsxs)("div",{className:"flex w-full flex-col gap-4 px-3 py-3 sm:px-4 lg:h-full lg:min-h-0 lg:flex-1",children:[(0,a.jsxs)("div",{className:"flex flex-col gap-3 lg:flex-row lg:items-start lg:justify-between",children:[(0,a.jsxs)("div",{className:"max-w-3xl",children:[(0,a.jsx)("p",{className:"text-[11px] uppercase tracking-[0.12em] text-[var(--vk-text-muted)]",children:"Frontend Control Surface"}),(0,a.jsx)("h1",{className:"mt-1 text-[24px] font-semibold leading-[1.05] tracking-[-0.04em] text-[var(--vk-text-strong)] sm:text-[30px]",children:"Operate workspaces, sessions, and agents from one surface."}),(0,a.jsx)("p",{className:"mt-2 max-w-2xl text-[13px] leading-6 text-[var(--vk-text-muted)]",children:"The workspace entrypoint now exposes status and recent activity without forcing you into a blank composer first."})]}),(0,a.jsx)("div",{className:"flex flex-wrap items-center gap-2",children:(0,a.jsx)(p.$,{variant:"outline",size:"md",onClick:h,children:"Add workspace"})})]}),(0,a.jsx)("div",{className:"grid grid-cols-2 gap-3 xl:grid-cols-4",children:_.map(({label:e,value:t,icon:r,caption:n})=>(0,a.jsx)(g.Zp,{className:"bg-[color:color-mix(in_srgb,var(--vk-bg-panel)_86%,transparent)] [content-visibility:auto] [contain-intrinsic-size:104px]",children:(0,a.jsxs)(g.Wu,{className:"flex items-center gap-3 py-3",children:[(0,a.jsx)("span",{className:"inline-flex h-10 w-10 items-center justify-center rounded-[6px] border border-[var(--vk-border)] bg-[var(--vk-bg-main)] text-[var(--vk-text-normal)]",children:(0,a.jsx)(r,{className:"h-4 w-4"})}),(0,a.jsxs)("div",{children:[(0,a.jsx)("p",{className:"text-[11px] uppercase tracking-[0.08em] text-[var(--vk-text-muted)]",children:e}),(0,a.jsx)("p",{className:"mt-1 text-[22px] font-semibold text-[var(--vk-text-strong)]",children:t}),(0,a.jsx)("p",{className:"mt-0.5 text-[10px] text-[var(--text-faint)]",children:n})]})]})},e))}),(0,a.jsx)("div",{className:"flex w-full lg:min-h-0 lg:flex-1",children:(0,a.jsxs)(g.Zp,{className:"flex w-full flex-col lg:min-h-0 lg:flex-1",children:[(0,a.jsxs)(g.aR,{className:"justify-between",children:[(0,a.jsxs)("div",{children:[(0,a.jsx)("p",{className:"text-[14px] font-semibold text-[var(--vk-text-strong)]",children:"Recent sessions"}),(0,a.jsx)("p",{className:"text-[12px] text-[var(--vk-text-muted)]",children:"Jump back into active work without hunting through the sidebar."})]}),(0,a.jsx)(m.E,{variant:"outline",children:j.length})]}),(0,a.jsx)(g.Wu,{className:`flex flex-col gap-2 lg:min-h-0 lg:flex-1 lg:overflow-y-auto ${u.hq}`,children:0===y.length?(0,a.jsx)("div",{className:"flex h-full min-h-[180px] items-center justify-center rounded-[6px] border border-dashed border-[var(--vk-border)] bg-[var(--vk-bg-main)] px-4 text-center text-[13px] text-[var(--vk-text-muted)]",children:"No sessions yet. Create or open a workspace to start work."}):y.map(e=>(0,a.jsx)(z,{session:e,onSelect:k},e.id))})]})})]})})}},90986:(e,t,r)=>{r.d(t,{E:()=>l});var a=r(54568),n=r(46916);let s={default:"border-[var(--vk-border)] bg-[var(--vk-bg-panel)] text-[var(--vk-text-muted)]",success:"border-transparent bg-transparent text-[var(--vk-green)]",warning:"border-transparent bg-transparent text-[var(--vk-orange)]",error:"border-transparent bg-transparent text-[var(--vk-red)]",info:"border-transparent bg-transparent text-[var(--vk-text-muted)]",outline:"border-[var(--vk-border)] bg-transparent text-[var(--vk-text-muted)]"};function l({variant:e="default",className:t,children:r}){return(0,a.jsx)("span",{className:(0,n.cn)("inline-flex items-center gap-1 rounded-[3px] border px-1.5 py-0.5 text-[11px] leading-none",s[e],t),children:r})}},98787:(e,t,r)=>{r.d(t,{A:()=>a});let a=(0,r(39789).A)("git-branch",[["path",{d:"M15 6a9 9 0 0 0-9 9V3",key:"1cii5b"}],["circle",{cx:"18",cy:"6",r:"3",key:"1h7g24"}],["circle",{cx:"6",cy:"18",r:"3",key:"fqmcym"}]])}}]);
@@ -0,0 +1,3 @@
1
+ "use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[47369],{5311:(e,t,r)=>{r.d(t,{A:()=>a});let a=(0,r(39789).A)("circle-alert",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["line",{x1:"12",x2:"12",y1:"8",y2:"12",key:"1pkeuh"}],["line",{x1:"12",x2:"12.01",y1:"16",y2:"16",key:"4dfq90"}]])},7378:(e,t,r)=>{r.d(t,{A:()=>a});let a=(0,r(39789).A)("plus",[["path",{d:"M5 12h14",key:"1ays0h"}],["path",{d:"M12 5v14",key:"s699le"}]])},18259:(e,t,r)=>{r.d(t,{AR:()=>s,Fp:()=>i,M_:()=>l,b:()=>o});let a="conductor:project-board-refresh",n=new Set(["dispatcher_task_created","dispatcher_task_updated","dispatcher_task_handed_off"]);function s(e){for(let t of e){let e=function(e){if("system"!==e.kind)return null;let t=e.metadata?.eventType;return"string"==typeof t&&t.trim().length>0?t.trim():null}(t);if(e&&n.has(e))return e}return null}function l(e,t){return!!(e.changedProjectIds?.includes(t)||e.sessions.some(e=>e.projectId===t))||"snapshot_delta"===e.type&&0===e.sessions.length}function i(e){window.dispatchEvent(new CustomEvent(a,{detail:e}))}function o(e,t){let r=r=>{let a=r.detail;a&&a.projectId===e&&t(a)};return window.addEventListener(a,r),()=>{window.removeEventListener(a,r)}}},18510:(e,t,r)=>{r.d(t,{J:()=>n,s:()=>s});var a=r(10926);function n(e){let t=(0,a.C0)(e);if(!t)return"/";let r=new URLSearchParams;return r.set("bridge",t),`/?${r.toString()}`}function s(e,t={}){let r,n=e.trim(),l=(0,a.DW)(n)?n:(r=(0,a.C0)(t.bridgeId))?(0,a.Bp)(r,n):n,i=new URLSearchParams,o=t.tab?.trim();o&&i.set("tab",o);let d=i.toString(),c=`/sessions/${encodeURIComponent(l)}`;return d.length>0?`${c}?${d}`:c}},22545:(e,t,r)=>{r.d(t,{A:()=>a});let a=(0,r(39789).A)("arrow-right",[["path",{d:"M5 12h14",key:"1ays0h"}],["path",{d:"m12 5 7 7-7 7",key:"xquz4c"}]])},33094:(e,t,r)=>{r.d(t,{s:()=>f});var a=r(54568),n=r(45492),s=r(37812),l=r(77024);let i=(0,r(39789).A)("brain",[["path",{d:"M12 18V5",key:"adv99a"}],["path",{d:"M15 13a4.17 4.17 0 0 1-3-4 4.17 4.17 0 0 1-3 4",key:"1e3is1"}],["path",{d:"M17.598 6.5A3 3 0 1 0 12 5a3 3 0 1 0-5.598 1.5",key:"1gqd8o"}],["path",{d:"M17.997 5.125a4 4 0 0 1 2.526 5.77",key:"iwvgf7"}],["path",{d:"M18 18a4 4 0 0 0 2-7.464",key:"efp6ie"}],["path",{d:"M19.967 17.483A4 4 0 1 1 12 18a4 4 0 1 1-7.967-.517",key:"1gq6am"}],["path",{d:"M6 18a4 4 0 0 1-2-7.464",key:"k1g0md"}],["path",{d:"M6.003 5.125a4 4 0 0 0-2.526 5.77",key:"q97ue3"}]]);var o=r(72410),d=r(76929),c=r(46916),u=r(88272),m=r(33866),x=r(64323);function p(e){return"xhigh"===e?"Extra High":e.split(/[_-\s]+/g).filter(Boolean).map(e=>e[0]?.toUpperCase()+e.slice(1)).join(" ")}function h({agent:e}){let t=(0,m.h7)(e);return(0,a.jsxs)("span",{className:"flex min-w-0 items-center gap-1.5 sm:gap-1",children:[(0,a.jsx)(o.N,{seed:{label:e},className:"h-3.5 w-3.5 border-none bg-transparent sm:h-3 sm:w-3"}),(0,a.jsx)("span",{className:"truncate",children:t?.label??e})]})}function g({label:e,title:t,disabled:r=!1,accent:l=!1,triggerClassName:i,contentClassName:o,children:u}){return(0,a.jsxs)(n.bL,{children:[(0,a.jsx)(n.l9,{asChild:!0,disabled:r,children:(0,a.jsxs)("button",{type:"button",disabled:r,title:t,className:(0,c.cn)("inline-flex h-9 min-w-0 items-center gap-1.5 rounded-[11px] border px-2.5 text-[12px] font-medium transition disabled:cursor-not-allowed disabled:opacity-60 sm:h-[30px] sm:gap-1 sm:rounded-[9px] sm:px-2 sm:text-[11.5px]",l?"border-[rgba(214,163,126,0.28)] bg-[rgba(66,44,35,0.94)] text-[#f2d9cd] hover:bg-[rgba(78,52,41,0.98)]":"border-[rgba(255,255,255,0.08)] bg-[#272220] text-[#f3ead8] hover:bg-[#312926]",i),children:[(0,a.jsx)("span",{className:"min-w-0 truncate",children:e}),(0,a.jsx)(s.A,{className:"h-3.5 w-3.5 shrink-0 text-[rgba(255,255,255,0.55)] sm:h-2.5 sm:w-2.5"})]})}),(0,a.jsx)(d.ww,{align:"start",sideOffset:6,className:(0,c.cn)("w-[calc(100vw-1rem)] max-w-[22rem] rounded-[12px] border border-[rgba(255,255,255,0.08)] bg-[#1c1a19] p-2 shadow-[0_18px_50px_rgba(0,0,0,0.45)] sm:w-auto sm:min-w-[200px] sm:max-w-[26rem] sm:rounded-[10px] sm:p-1.5",o),children:u})]})}function f({agent:e,agentOptions:t,agentLabel:r,modelSelection:s,modelAccess:d,runtimeModelCatalogs:b,disabled:v=!1,className:j,onAgentChange:w,onModelSelectionChange:k}){let y=(0,u.Ik)(e,d,b),N=(0,u.xb)(s)??s.catalogModel,S=N?(0,x.M)(e,N):"Change model",A=(0,u.iL)(e,d,b,N),C=y.length>0,E=s.reasoningEffort.trim().toLowerCase();return(0,a.jsxs)("div",{className:(0,c.cn)("grid w-full grid-cols-[repeat(auto-fit,minmax(7.25rem,1fr))] gap-1.5 sm:flex sm:flex-wrap sm:items-center",j),children:[(0,a.jsx)("div",{className:"min-w-0 sm:flex-none",children:(0,a.jsxs)(g,{label:(0,a.jsx)(h,{agent:e}),title:`Change ${r.toLowerCase()} (${(0,m.h7)(e)?.label??e})`,disabled:v,triggerClassName:"w-full justify-between sm:h-[27px] sm:w-auto sm:justify-start sm:max-w-[6.75rem]",children:[(0,a.jsx)("div",{className:"px-3 pb-2 pt-1 text-[11px] font-semibold uppercase tracking-[0.08em] text-[rgba(255,255,255,0.58)]",children:r}),t.map(t=>{let s=(0,m.h7)(t),i=e===t;return(0,a.jsxs)(n.q7,{onSelect:()=>w(t),className:"flex min-h-[40px] cursor-default items-center gap-2.5 rounded-[8px] px-3 py-2 text-[13px] text-[#f3efea] outline-none transition hover:bg-[rgba(255,255,255,0.06)] focus:bg-[rgba(255,255,255,0.06)] sm:min-h-[34px] sm:rounded-[7px] sm:px-2 sm:py-1.5 sm:text-[12px]",children:[(0,a.jsx)(o.N,{seed:{label:t},className:"h-4 w-4 border-none bg-transparent sm:h-3.5 sm:w-3.5"}),(0,a.jsxs)("div",{className:"min-w-0 flex-1",children:[(0,a.jsx)("p",{className:"truncate text-[13px] font-medium sm:text-[12.5px]",children:s?.label??t}),(0,a.jsx)("p",{className:"truncate text-[11px] text-[rgba(255,255,255,0.58)] sm:text-[10.5px]",children:s?.description??r})]}),i?(0,a.jsx)(l.A,{className:"h-4 w-4 text-[#f2d9cd] sm:h-3.5 sm:w-3.5"}):null]},t)})]})}),C?(0,a.jsx)("div",{className:"min-w-0 sm:flex-none",children:(0,a.jsxs)(g,{label:S,title:`Change model${N?` (${S})`:""}`,disabled:v,triggerClassName:"w-full justify-between sm:h-[27px] sm:w-auto sm:justify-start sm:max-w-[11.75rem]",contentClassName:"sm:min-w-[220px]",children:[(0,a.jsx)("div",{className:"px-3 pb-2 pt-1 text-[11px] font-semibold uppercase tracking-[0.08em] text-[rgba(255,255,255,0.58)]",children:"Change model"}),y.map(t=>{let r=t.id===N;return(0,a.jsxs)(n.q7,{onSelect:()=>{let r=(0,u.iL)(e,d,b,t.id);k({catalogModel:t.id,customModel:"",reasoningEffort:r.some(e=>e.id===E)?E:(0,u.YS)(e,d,b,t.id)})},className:"flex min-h-[40px] cursor-default items-center gap-2.5 rounded-[8px] px-3 py-2 text-[13px] text-[#f3efea] outline-none transition hover:bg-[rgba(255,255,255,0.06)] focus:bg-[rgba(255,255,255,0.06)] sm:min-h-[34px] sm:rounded-[7px] sm:px-2 sm:py-1.5 sm:text-[12px]",children:[(0,a.jsxs)("div",{className:"min-w-0 flex-1",children:[(0,a.jsx)("p",{className:"truncate text-[13px] font-medium sm:text-[12px]",children:t.label}),(0,a.jsx)("p",{className:"truncate text-[11px] text-[rgba(255,255,255,0.58)] sm:text-[10.5px]",children:t.description})]}),r?(0,a.jsx)(l.A,{className:"h-4 w-4 text-[#f2d9cd] sm:h-3.5 sm:w-3.5"}):null]},t.id)})]})}):null,C&&A.length>0?(0,a.jsx)("div",{className:"min-w-0 sm:flex-none",children:(0,a.jsxs)(g,{label:(0,a.jsxs)("span",{className:"flex items-center gap-1.5",children:[(0,a.jsx)(i,{className:"h-3.5 w-3.5 text-[#d7b6a5] sm:h-3 sm:w-3"}),(0,a.jsx)("span",{children:p(E||A[0].id)})]}),title:`Change thinking level (${p(E||A[0].id)})`,disabled:v,accent:!0,triggerClassName:"w-full justify-between sm:h-[27px] sm:w-auto sm:justify-start sm:max-w-[7rem]",children:[(0,a.jsx)("div",{className:"px-3 pb-2 pt-1 text-[11px] font-semibold uppercase tracking-[0.08em] text-[rgba(255,255,255,0.58)]",children:"Thinking"}),A.map(e=>{let t=e.id===E;return(0,a.jsxs)(n.q7,{onSelect:()=>k({...s,reasoningEffort:e.id}),className:"flex min-h-[40px] cursor-default items-center gap-2.5 rounded-[8px] px-3 py-2 text-[13px] text-[#f3efea] outline-none transition hover:bg-[rgba(255,255,255,0.06)] focus:bg-[rgba(255,255,255,0.06)] sm:min-h-[34px] sm:rounded-[7px] sm:px-2 sm:py-1.5 sm:text-[12px]",children:[(0,a.jsx)(i,{className:"h-4 w-4 text-[#d7b6a5] sm:h-3.5 sm:w-3.5"}),(0,a.jsxs)("div",{className:"min-w-0 flex-1",children:[(0,a.jsx)("p",{className:"truncate text-[13px] font-medium sm:text-[12.5px]",children:e.label}),(0,a.jsx)("p",{className:"truncate text-[11px] text-[rgba(255,255,255,0.58)] sm:text-[10.5px]",children:e.description})]}),t?(0,a.jsx)(l.A,{className:"h-4 w-4 text-[#f2d9cd] sm:h-3.5 sm:w-3.5"}):null]},e.id)})]})}):null]})}},47369:(e,t,r)=>{r.r(t),r.d(t,{DispatcherPane:()=>eW});var a=r(54568),n=r(45492),s=r(7620),l=r(97509),i=r(38874),o=r(67107),d=r(39789);let c=(0,d.A)("list-todo",[["path",{d:"M13 5h8",key:"a7qcls"}],["path",{d:"M13 12h8",key:"h98zly"}],["path",{d:"M13 19h8",key:"c3s6r1"}],["path",{d:"m3 17 2 2 4-4",key:"1jhpwq"}],["rect",{x:"3",y:"4",width:"6",height:"6",rx:"1",key:"cif1o7"}]]);var u=r(77024),m=r(93035);let x=(0,d.A)("pencil-line",[["path",{d:"M13 21h8",key:"1jsn5i"}],["path",{d:"m15 5 4 4",key:"1mk7zo"}],["path",{d:"M21.174 6.812a1 1 0 0 0-3.986-3.987L3.842 16.174a2 2 0 0 0-.5.83l-1.321 4.352a.5.5 0 0 0 .623.622l4.353-1.32a2 2 0 0 0 .83-.497z",key:"1a8usu"}]]);var p=r(33094),h=r(34703),g=r(79748),f=r(8281),b=r(1426),v=r(99250);let j=(0,d.A)("braces",[["path",{d:"M8 3H7a2 2 0 0 0-2 2v5a2 2 0 0 1-2 2 2 2 0 0 1 2 2v5c0 1.1.9 2 2 2h1",key:"ezmyqa"}],["path",{d:"M16 21h1a2 2 0 0 0 2-2v-5c0-1.1.9-2 2-2a2 2 0 0 1-2-2V5a2 2 0 0 0-2-2h-1",key:"e1hn23"}]]);var w=r(88742),k=r(1173),y=r(75343),N=r(98787),S=r(31410),A=r(2937),C=r(52915),E=r(37812),M=r(5311),L=r(21207),_=r(58564),I=r(24774),$=r(13932);let R=(0,d.A)("terminal",[["path",{d:"M12 19h8",key:"baeox8"}],["path",{d:"m4 17 6-6-6-6",key:"1yngyt"}]]);var T=r(61201),P=r(22545),D=r(7378),F=r(60616),O=r(72410),U=r(76929),q=r(79290);function H(e){let t=[],r=new Set;for(let a of e){let e=a.trim();!e||r.has(e)||(r.add(e),t.push(e))}return t}function B(e,t){let r=t?.displayPath?.trim();if(r)return r;let a=t?.name?.trim();return a?a:e.trim()}let K=new Set(["queued","spawning","running","working"]);function J(e){return"string"==typeof e&&e.trim().length>0?e:null}function z(e){let t=e?.trim().toLowerCase()??"";return K.has(t)}function V(e){var t;if("tool"!==e.kind)return null;let r=Array.isArray(t=e.metadata.toolContent)?t.map(e=>J(e)).filter(e=>null!==e):[],a=J(e.metadata.toolStatus)?.trim().toLowerCase()??"",n="error"===a||"failed"===a?"error":"running"===a||"working"===a?"running":"success"===a||"completed"===a||"complete"===a?"success":e.streaming?"running":"pending";return{kind:J(e.metadata.toolKind)?.toLowerCase()??null,title:J(e.metadata.toolTitle)?.trim()||e.text.trim()||"Tool call",status:n,lines:r,preview:r[0]??null}}function W(e,t){return!t||null!==function(e,t){let r=[...t.attachments].sort(),a=t.feedBaselineLastEntryId?e.entries.findIndex(e=>e.id===t.feedBaselineLastEntryId):-1;for(let s=0;s<e.entries.length;s+=1){var n;let l=e.entries[s];if(l?.kind!=="user")continue;let i=l.attachments.map(e=>"string"==typeof e?J(e):!e||"object"!=typeof e||Array.isArray(e)?null:J(e.path)??J(e.name)).filter(e=>null!==e).sort();if(!(l.text.trim()===t.text.trim()&&i.length===r.length&&i.every((e,t)=>e===r[t])))continue;let o=(n=s,Math.max(e.totalEntries-e.entries.length,0)+n);if(a>=0?s>a:o>=t.feedBaselineTotalEntries)return l}return null}(e,t)}function Y(e){let t=[],r=new Set;for(let a of e)!a||r.has(a)||(r.add(a),t.push(a));return t}function G(e,t){let r=Y(t);return{...e,unseenEntryIds:r,unseenCount:r.length}}function Q(){return{followLatest:!0,showJumpToLatest:!1,unseenCount:0,unseenEntryIds:[]}}function Z(e){return JSON.stringify([e.kind,e.label,e.text,e.createdAt,e.source,e.streaming,e.attachments,e.metadata])}function X(e,t){return t.nearBottom?Q():t.isUserInitiated&&t.scrollTop<t.previousScrollTop?{...e,followLatest:!1,showJumpToLatest:!0}:e}var ee=r(76081),et=r(46916);function er({className:e}){return(0,a.jsx)("span",{className:(0,et.cn)("inline-flex items-center gap-0.5",e),"aria-label":"Working",children:[0,1,2].map(e=>(0,a.jsx)("span",{className:"h-1.5 w-1.5 rounded-full bg-[var(--status-working)]",style:{animation:"run-dot 1.4s ease-in-out infinite",animationDelay:`${.16*e}s`}},e))})}var ea=r(10926),en=r(31404),es=r(18510),el=r(18259),ei=r(63762),eo=r(33866),ed=r(22153),ec=r(92070);function eu(e,t=32){let{clientHeight:r,scrollHeight:a,scrollTop:n}=e;return![r,a,n].every(Number.isFinite)||Math.max(0,a-r-n)<=Math.max(0,t)}let em={entries:[],totalEntries:0,windowLimit:120,truncated:!1,sessionStatus:null,approvalState:null,parserState:null,runtimeStatus:null,source:null,error:null,integration:null};function ex(e,t,r){return t>=2||t>=1&&r>=1e3?0:e}function ep(e,t,r){if("string"!=typeof e)return"missing";if(e.length===r)return"append";let a=r+t.length;return e.length===a&&e.slice(r)===t?"replay":"mismatch"}function eh(e,t){return e===t||JSON.stringify(e)===JSON.stringify(t)}function eg(e,t){return e.id===t.id&&e.kind===t.kind&&e.label===t.label&&e.text===t.text&&e.createdAt===t.createdAt&&e.source===t.source&&e.streaming===t.streaming&&eh(e.attachments,t.attachments)&&eh(e.metadata,t.metadata)}let ef=[b.A],eb={h1:({children:e})=>(0,a.jsx)("h1",{className:"mb-5 text-[22px] font-semibold tracking-[-0.03em] text-[var(--vk-text-strong)] last:mb-0 sm:text-[28px] lg:text-[36px]",children:e}),h2:({children:e})=>(0,a.jsx)("h2",{className:"mb-4 mt-8 text-[20px] font-semibold tracking-[-0.02em] text-[var(--vk-text-strong)] first:mt-0 last:mb-0",children:e}),h3:({children:e})=>(0,a.jsx)("h3",{className:"mb-3 mt-6 text-[16px] font-semibold text-[var(--vk-text-normal)] first:mt-0 last:mb-0",children:e}),p:({children:e})=>(0,a.jsx)("p",{className:"mb-3 last:mb-0",children:e}),hr:()=>(0,a.jsx)("hr",{className:"my-8 border-0 border-t border-[var(--vk-border)]"}),pre:({children:e})=>(0,a.jsx)("pre",{className:"mb-4 overflow-x-auto rounded-[10px] border border-[var(--vk-border)] bg-[#151413] p-3 text-[12px] text-[var(--vk-text-normal)] last:mb-0",children:e}),code:({children:e,className:t})=>(0,a.jsx)("code",{className:(0,et.cn)("rounded-[6px] bg-[#171615] px-1.5 py-0.5 font-mono text-[12px] text-[var(--vk-text-normal)]",t),children:e}),ul:({children:e})=>(0,a.jsx)("ul",{className:"mb-3 list-disc pl-5 last:mb-0",children:e}),ol:({children:e})=>(0,a.jsx)("ol",{className:"mb-3 list-decimal pl-5 last:mb-0",children:e}),li:({children:e})=>(0,a.jsx)("li",{className:"mb-1 last:mb-0",children:e}),table:({children:e})=>(0,a.jsx)("div",{className:"mb-4 overflow-x-auto rounded-[12px] border border-[var(--vk-border)]",children:(0,a.jsx)("table",{className:"min-w-full border-collapse text-left text-[13px]",children:e})}),thead:({children:e})=>(0,a.jsx)("thead",{className:"bg-[rgba(255,255,255,0.03)]",children:e}),tbody:({children:e})=>(0,a.jsx)("tbody",{children:e}),tr:({children:e})=>(0,a.jsx)("tr",{className:"border-b border-[var(--vk-border)] last:border-b-0",children:e}),th:({children:e})=>(0,a.jsx)("th",{className:"px-4 py-3 text-[12px] font-medium text-[var(--vk-text-normal)]",children:e}),td:({children:e})=>(0,a.jsx)("td",{className:"px-4 py-3 align-top text-[13px] text-[var(--vk-text-muted)]",children:e})};function ev(e){return e&&"object"==typeof e&&!Array.isArray(e)?e:{}}function ej(e){return"string"==typeof e&&e.trim().length>0?e:null}function ew(e){let t=ev(e),r=ej(t.id),a=ej(t.kind),n="string"==typeof t.text?t.text:"";return r&&a?{id:r,kind:a,label:ej(t.label)??"Session",text:n,createdAt:ej(t.createdAt),attachments:Array.isArray(t.attachments)?t.attachments:[],source:ej(t.source)??"session",streaming:!0===t.streaming,metadata:ev(t.metadata)}:null}function ek(e){let t=ev(e),r=ej(t.kind);return r?{kind:r,message:"string"==typeof t.message?t.message:"",command:ej(t.command)}:null}function ey(e){let t=ev(e);return 0===Object.keys(t).length?null:t}function eN(e){if(!e||"object"!=typeof e||Array.isArray(e))return null;let t=ev(e.openclaw),r=ev(e.heartbeat),a=ev(e.memory),n=ej(e.projectId),s=ej(e.threadId);return n&&s?{projectId:n,threadId:s,bridgeId:null===e.bridgeId?null:ej(e.bridgeId),openclaw:{threadId:null===t.threadId?null:ej(t.threadId),sessionId:null===t.sessionId?null:ej(t.sessionId)},heartbeat:{state:null===r.state?null:ej(r.state),nextAt:null===r.nextAt?null:ej(r.nextAt)},memory:{projectPath:null===a.projectPath?null:ej(a.projectPath),sessionPath:null===a.sessionPath?null:ej(a.sessionPath)}}:null}function eS(e){let t=ev(e);return{entries:Array.isArray(t.entries)?t.entries.map(ew).filter(e=>null!==e):[],totalEntries:"number"==typeof t.totalEntries?t.totalEntries:0,windowLimit:"number"==typeof t.windowLimit?t.windowLimit:120,truncated:!0===t.truncated,sessionStatus:ej(t.sessionStatus),approvalState:ej(t.approvalState),parserState:ek(t.parserState),runtimeStatus:ey(t.runtimeStatus),source:ej(t.source),error:ej(t.error),integration:eN(t.integration)}}function eA(e){let t=ev(e),r=ej(t.id),a=ej(t.repo),n=ej(t.path);if(!r||!a||!n)return null;let s=ev(t.pathHealth);return{id:r,displayName:ej(t.displayName)??r,repo:a,path:n,agent:ej(t.agent)??"codex",agentPermissions:ej(t.agentPermissions)??"default",agentModel:ej(t.agentModel)??"",agentReasoningEffort:ej(t.agentReasoningEffort)??"",workspaceMode:ej(t.workspaceMode)??"local",runtimeMode:ej(t.runtimeMode)??"direct",scmMode:ej(t.scmMode)??"git",defaultWorkingDirectory:ej(t.defaultWorkingDirectory)??"",defaultBranch:ej(t.defaultBranch)??"main",devServerScript:ej(t.devServerScript)??"",devServerCwd:ej(t.devServerCwd)??"",devServerUrl:ej(t.devServerUrl)??"",devServerPort:ej(t.devServerPort)??"",devServerHost:ej(t.devServerHost)??"",devServerPath:ej(t.devServerPath)??"",devServerHttps:!0===t.devServerHttps,setupScript:ej(t.setupScript)??"",runSetupInParallel:!0===t.runSetupInParallel,cleanupScript:ej(t.cleanupScript)??"",archiveScript:ej(t.archiveScript)??"",copyFiles:ej(t.copyFiles)??"",pathHealth:{exists:!0===s.exists,isGitRepository:!0===s.isGitRepository,suggestedPath:ej(s.suggestedPath)}}}function eC(e,t=84){let r=e.replace(/\s+/g," ").trim();return r.length<=t?r:`${r.slice(0,Math.max(0,t-1)).trimEnd()}…`}function eE({value:e,maxLength:t=84,className:r}){let n=e.trim(),l=n.length>t||e.includes("\n"),[i,o]=(0,s.useState)(!1);return l?(0,a.jsx)("button",{type:"button",onClick:()=>o(e=>!e),"aria-expanded":i,title:i?"Collapse text":"Expand text",className:(0,et.cn)("max-w-full text-left transition-colors hover:bg-[rgba(255,255,255,0.08)]",i?"whitespace-pre-wrap break-words":"truncate",r),children:i?n:eC(n,t)}):(0,a.jsx)("span",{className:r,children:n})}function eM(e){let t=(0,eo.h7)(e);return t?.label?t.label:e.split(/[-_\s]+/g).filter(Boolean).map(e=>e[0]?.toUpperCase()+e.slice(1)).join(" ")}let eL=(0,s.memo)(function({text:e}){return(0,a.jsx)(f.o,{remarkPlugins:ef,className:"min-w-0 break-words [overflow-wrap:anywhere]",components:eb,children:e})});function e_({label:e,tone:t="neutral"}){return(0,a.jsxs)("div",{className:(0,et.cn)("mb-3 flex items-center gap-3 rounded-[10px] border px-3 py-2","prompt"===t?"border-[rgba(255,255,255,0.08)] bg-[rgba(255,255,255,0.05)] text-[#f4ede7]":"border-[var(--vk-border)] bg-[rgba(255,255,255,0.03)] text-[var(--vk-text-normal)]"),children:[(0,a.jsx)("div",{className:"flex h-9 w-9 shrink-0 items-center justify-center rounded-[8px] bg-[rgba(0,0,0,0.22)]",children:(0,a.jsx)(v.A,{className:"h-4 w-4"})}),(0,a.jsxs)("div",{className:"min-w-0",children:[(0,a.jsx)("p",{className:"truncate text-[13px] font-medium",children:e}),(0,a.jsx)("p",{className:"truncate text-[11px] text-[var(--vk-text-muted)]",children:"Attached context"})]})]})}function eI({toolKind:e,toolTitle:t,className:r="h-4 w-4"}){let n=t.trim().toLowerCase(),s=e?.trim().toLowerCase()??"";return"thinking"===s||"thinking"===n?(0,a.jsx)(j,{className:(0,et.cn)(r,"text-[var(--vk-text-normal)]")}):"read"===s||n.startsWith("read ")||n.includes("review request")?(0,a.jsx)(v.A,{className:r}):"write"===s||"edit"===s||"multiedit"===s||n.startsWith("write")||n.startsWith("edit")?(0,a.jsx)(x,{className:r}):"grep"===s||"search"===s||"find"===s?(0,a.jsx)(w.A,{className:r}):"ls"===s||"glob"===s||"open"===s?(0,a.jsx)(k.A,{className:r}):"websearch"===s||"webfetch"===s?(0,a.jsx)(y.A,{className:r}):"task"===s||"todowrite"===s?(0,a.jsx)(c,{className:r}):n.includes("diff")||n.includes("workspace diff")||n.includes("git diff")?(0,a.jsx)(N.A,{className:r}):"bash"===s||"command"===s||n.startsWith("get diff")||n.startsWith("run ")?(0,a.jsx)(S.A,{className:r}):(0,a.jsx)(A.A,{className:r})}function e$(e){switch(e){case"create":return"Task created";case"update":return"Task updated";case"handoff":return"Task handed off"}}let eR=(0,s.memo)(function({entry:e,assistantAgentLabel:t}){let r,n,l=function(e){if(!e)return null;let t=new Date(e).getTime();if(!Number.isFinite(t))return null;let r=Date.now()-t;return r<6e4?"just now":r<36e5?`${Math.max(1,Math.floor(r/6e4))}m ago`:new Intl.DateTimeFormat(void 0,{hour:"numeric",minute:"2-digit"}).format(t)}(e.createdAt),o="assistant"===e.kind?t:e.label||"Session",d=e.attachments.map(e=>{let t=ev(e);return ej(t.name)??ej(t.path)??("string"==typeof e?e:null)}).filter(e=>!!e),m=V(e),x=(r=J(e.metadata.toolKind)?.toLowerCase()??null,n=J(e.metadata.toolTitle)?.toLowerCase()??null,"tool"===e.kind?"thinking"===r||"thinking"===n:"status"===e.kind&&("thinking"===r||"thinking"===e.label.trim().toLowerCase())),p="status"===e.kind&&"session-status"===e.source,h=function(e){if("system"!==e.kind)return null;let t=ej(e.metadata.eventType),r=null;if("dispatcher_task_created"===t?r="create":"dispatcher_task_updated"===t?r="update":"dispatcher_task_handed_off"===t&&(r="handoff"),!r)return null;let a=ej(e.metadata.taskId),n=ej(e.metadata.taskRef)??a,s=ej(e.metadata.taskTitle);return a&&n&&s?{operation:r,taskId:a,taskRef:n,taskTitle:s,taskRoleLabel:ej(e.metadata.taskRoleLabel),taskAgent:ej(e.metadata.taskAgent),taskType:ej(e.metadata.taskType)}:null}(e),[g,f]=(0,s.useState)(!1),b=e.streaming?(0,a.jsx)("span",{"aria-hidden":"true",className:"ml-1 inline-block h-4 w-[2px] rounded-full bg-[rgba(240,233,223,0.8)] align-middle animate-pulse"}):null;if(x){let t=m?.lines.length?m.lines:"thinking"===e.text.trim().toLowerCase()||0===e.text.trim().length?[]:[e.text.trim()],r=m?.status==="running"||e.streaming,n=t.length>0;return(0,a.jsxs)("div",{role:r?"status":void 0,"aria-live":r?"polite":void 0,className:"min-w-0 py-1 text-[12px] text-[var(--vk-text-muted)]",children:[(0,a.jsxs)("div",{className:"flex min-w-0 items-center gap-2",children:[(0,a.jsx)(j,{className:"h-3.5 w-3.5 shrink-0 text-[var(--vk-text-normal)]"}),(0,a.jsx)("span",{className:"font-medium text-[var(--vk-text-normal)]",children:r?"Thinking":"Thought"}),r?(0,a.jsx)(er,{}):(0,a.jsx)(u.A,{className:"h-3.5 w-3.5 text-[var(--vk-text-muted)]"}),n?(0,a.jsxs)("button",{type:"button",onClick:()=>f(e=>!e),className:"ml-auto inline-flex h-6 items-center gap-1 rounded-[6px] px-1.5 text-[11px] text-[var(--vk-text-muted)] transition-colors hover:bg-[rgba(255,255,255,0.05)] hover:text-[var(--vk-text-normal)]","aria-expanded":g,"aria-label":g?"Hide thinking details":"Show thinking details",children:[(0,a.jsx)("span",{children:g?"Hide":"Details"}),g?(0,a.jsx)(C.A,{className:"h-3 w-3"}):(0,a.jsx)(E.A,{className:"h-3 w-3"})]}):null]}),g?(0,a.jsx)("div",{className:"ml-5 mt-1 space-y-1 border-l border-[var(--vk-border)] pl-3",children:t.map((t,r)=>(0,a.jsx)(eE,{value:t,maxLength:220,className:"block font-mono text-[11px] leading-5 text-[var(--vk-text-muted)]"},`${e.id}-thinking-${r}`))}):null]})}if(m){let t="error"===m.status?"Error":"success"===m.status?"Done":"running"===m.status?"Running":"Pending",r="error"===m.status?"text-[var(--vk-red)]":"success"===m.status?"text-[var(--vk-green)]":"text-[var(--vk-text-muted)]",n="error"===m.status?(0,a.jsx)(M.A,{className:"h-3.5 w-3.5"}):"success"===m.status?(0,a.jsx)(u.A,{className:"h-3.5 w-3.5"}):"running"===m.status?(0,a.jsx)(i.A,{className:"h-3.5 w-3.5 animate-spin"}):(0,a.jsx)(i.A,{className:"h-3.5 w-3.5"}),s=m.lines.length>0,l=m.preview?eC(m.preview,96):null;return(0,a.jsxs)("div",{role:"running"===m.status?"status":void 0,"aria-live":"running"===m.status?"polite":void 0,className:"min-w-0 py-1 text-[12px] text-[var(--vk-text-muted)]",children:[(0,a.jsxs)("div",{className:"flex min-w-0 items-center gap-2",children:[(0,a.jsx)(eI,{toolKind:m.kind,toolTitle:m.title,className:"h-3.5 w-3.5 shrink-0"}),(0,a.jsx)("span",{className:"max-w-[9rem] shrink-0 truncate font-medium text-[var(--vk-text-normal)]",children:m.title||"Tool call"}),l?(0,a.jsx)("span",{className:"min-w-0 flex-1 truncate font-mono text-[11px] text-[var(--vk-text-muted)]",children:l}):(0,a.jsx)("span",{className:"min-w-0 flex-1"}),(0,a.jsxs)("span",{className:(0,et.cn)("inline-flex shrink-0 items-center gap-1 text-[11px]",r),children:[n,(0,a.jsx)("span",{children:t})]}),s?(0,a.jsx)("button",{type:"button",onClick:()=>f(e=>!e),className:"inline-flex h-6 w-6 shrink-0 items-center justify-center rounded-[6px] text-[var(--vk-text-muted)] transition-colors hover:bg-[rgba(255,255,255,0.05)] hover:text-[var(--vk-text-normal)]","aria-expanded":g,"aria-label":g?"Hide tool details":"Show tool details",children:g?(0,a.jsx)(C.A,{className:"h-3.5 w-3.5"}):(0,a.jsx)(E.A,{className:"h-3.5 w-3.5"})}):null]}),g?(0,a.jsx)("div",{className:"ml-5 mt-1 max-h-56 space-y-1 overflow-y-auto border-l border-[var(--vk-border)] pl-3 pr-1",children:m.lines.map((t,r)=>(0,a.jsx)(eE,{value:t,maxLength:220,className:"block font-mono text-[11px] leading-5 text-[var(--vk-text-muted)]"},`${e.id}-${r}`))}):null]})}return h?(0,a.jsxs)("div",{className:"space-y-2",children:[(0,a.jsxs)("div",{className:"flex items-center gap-2 text-[12px] text-[var(--vk-text-muted)]",children:[(0,a.jsx)(c,{className:"h-3.5 w-3.5"}),(0,a.jsx)("span",{children:e$(h.operation)}),l?(0,a.jsx)("span",{className:"ml-auto text-[11px]",children:l}):null]}),(0,a.jsxs)("div",{className:"rounded-[12px] border border-[rgba(129,101,83,0.35)] bg-[rgba(62,47,40,0.72)] px-4 py-3 text-[15px] leading-6 text-[#efe4dc]",children:[(0,a.jsxs)("div",{className:"flex flex-wrap items-start gap-2",children:[(0,a.jsxs)("div",{className:"min-w-0 flex-1",children:[(0,a.jsx)("p",{className:"text-[12px] font-medium uppercase tracking-[0.08em] text-[rgba(255,255,255,0.58)]",children:e$(h.operation)}),(0,a.jsx)("p",{className:"mt-1 break-words text-[16px] font-semibold text-[#fff5ee]",children:h.taskTitle})]}),(0,a.jsx)("span",{className:"rounded-full border border-[rgba(255,255,255,0.12)] bg-[rgba(255,255,255,0.06)] px-2.5 py-1 text-[11px] font-medium text-[#fff5ee]",children:h.taskRef})]}),(0,a.jsxs)("div",{className:"mt-3 flex flex-wrap gap-2 text-[11px] text-[rgba(255,255,255,0.72)]",children:[h.taskRoleLabel?(0,a.jsx)("span",{className:"rounded-full bg-[rgba(255,255,255,0.08)] px-2.5 py-1",children:h.taskRoleLabel}):null,h.taskAgent?(0,a.jsx)("span",{className:"rounded-full bg-[rgba(255,255,255,0.08)] px-2.5 py-1",children:eM(h.taskAgent)}):null,h.taskType?(0,a.jsx)("span",{className:"rounded-full bg-[rgba(255,255,255,0.08)] px-2.5 py-1",children:h.taskType}):null]})]})]}):p?(0,a.jsxs)("div",{className:"space-y-2",children:[(0,a.jsx)("div",{className:"rounded-[22px] border border-[rgba(113,84,68,0.45)] bg-[rgba(54,40,34,0.9)] px-4 py-3 text-[15px] leading-7 text-[#efe4dc] shadow-[0_8px_18px_rgba(0,0,0,0.14)]",children:(0,a.jsx)(eL,{text:e.text})}),l?(0,a.jsx)("div",{className:"text-right text-[11px] text-[var(--vk-text-muted)]",children:l}):null]}):"user"===e.kind?(0,a.jsxs)("div",{className:"ml-auto max-w-[88%]",children:[(0,a.jsxs)("div",{className:"rounded-[14px] border border-[rgba(124,94,78,0.45)] bg-[rgba(52,39,35,0.92)] px-4 py-3 text-[#f1e7e0] shadow-[0_10px_24px_rgba(0,0,0,0.18)]",children:[d.map(t=>(0,a.jsx)(e_,{label:t,tone:"prompt"},`${e.id}-${t}`)),(0,a.jsx)("div",{className:"text-[15px] leading-7 text-[#f4ede7]",children:(0,a.jsx)(eL,{text:e.text})})]}),l?(0,a.jsx)("div",{className:"mt-1 text-right text-[11px] text-[var(--vk-text-muted)]",children:l}):null]}):"assistant"===e.kind?(0,a.jsxs)("div",{className:"space-y-2",children:[(0,a.jsxs)("div",{className:"text-[15px] leading-8 text-[var(--vk-text-normal)]",children:[d.map(t=>(0,a.jsx)(e_,{label:t},`${e.id}-${t}`)),(0,a.jsx)(eL,{text:e.text}),b]}),l?(0,a.jsx)("div",{className:"text-[11px] text-[var(--vk-text-muted)]",children:l}):null]}):(0,a.jsxs)("div",{className:"space-y-2",children:[(0,a.jsxs)("div",{className:"flex items-center gap-2 text-[12px] text-[var(--vk-text-muted)]",children:["status"===e.kind?(0,a.jsx)(L.A,{className:"h-3.5 w-3.5"}):(0,a.jsx)(M.A,{className:"h-3.5 w-3.5"}),(0,a.jsx)("span",{children:o}),l?(0,a.jsx)("span",{className:"ml-auto text-[11px]",children:l}):null]}),(0,a.jsxs)("div",{className:(0,et.cn)("rounded-[12px] border px-4 py-3 text-[15px] leading-7","border-[var(--vk-border)] bg-[rgba(255,255,255,0.02)] text-[var(--vk-text-muted)]"),children:[d.map(t=>(0,a.jsx)(e_,{label:t},`${e.id}-${t}`)),(0,a.jsx)(eL,{text:e.text})]})]})});function eT({project:e,disabled:t=!1,saving:r=!1,agents:s=[],onChange:l}){let o=e?.agent?.trim()||"codex",d=s.find(e=>e.name.toLowerCase()===o.toLowerCase()),c=!d||(d.installed??!0),m=s&&s.length>0?s:eo.pN;return(0,a.jsxs)(n.bL,{children:[(0,a.jsx)(n.l9,{asChild:!0,children:(0,a.jsxs)("button",{type:"button",disabled:t||!e,className:"inline-flex h-10 w-full min-w-0 max-w-full items-center justify-between gap-3 rounded-[8px] border border-[var(--vk-accent)] bg-[color:color-mix(in_srgb,var(--vk-accent)_88%,black_12%)] px-3 text-left text-[13px] text-white shadow-[0_10px_24px_rgba(0,0,0,0.18)] transition hover:bg-[var(--accent-hover)] disabled:cursor-not-allowed disabled:opacity-60 sm:min-w-[220px] sm:w-auto","aria-label":"Select coding agent",title:e?`Coding agent: ${eM(o)}`:"Project agent unavailable",children:[(0,a.jsxs)("span",{className:"flex min-w-0 items-center gap-2",children:[(0,a.jsx)(O.N,{seed:{label:o},className:"h-5 w-5 border-none bg-transparent"}),(0,a.jsxs)("span",{className:"truncate flex items-center gap-1.5",children:[r?"Saving agent…":`Coding Agent \xb7 ${eM(o)}`,!c&&(0,a.jsx)("span",{className:"inline-flex h-2 w-2 rounded-full bg-[var(--vk-orange)] animate-pulse",title:"Not installed"})]})]}),r?(0,a.jsx)(i.A,{className:"h-4 w-4 animate-spin"}):(0,a.jsx)(E.A,{className:"h-4 w-4 shrink-0"})]})}),(0,a.jsxs)(U.ww,{align:"start",className:"w-[calc(100vw-1rem)] min-w-0 max-w-[250px] rounded-[10px] border border-[rgba(255,255,255,0.08)] bg-[#1c1a19] p-2 shadow-[0_18px_50px_rgba(0,0,0,0.45)] sm:w-auto sm:min-w-[250px]",children:[(0,a.jsx)("p",{className:"px-3 pb-1 text-[11px] font-semibold uppercase tracking-[0.08em] text-[var(--vk-text-muted)]",children:"Coding agent"}),m.map(e=>{let t=e.name===o,r=e.installed??!0;return(0,a.jsxs)(n.q7,{onSelect:()=>l(e.name),className:"flex min-h-[46px] cursor-default items-center gap-3 rounded-[8px] px-3 py-2 text-[13px] text-[#f3efea] outline-none transition hover:bg-[rgba(255,255,255,0.06)] focus:bg-[rgba(255,255,255,0.06)]",children:[(0,a.jsx)(O.N,{seed:{label:e.name},className:"h-5 w-5 border-none bg-transparent"}),(0,a.jsxs)("div",{className:"min-w-0 flex-1",children:[(0,a.jsxs)("div",{className:"flex items-center gap-2",children:[(0,a.jsx)("p",{className:"truncate text-[13px] font-medium",children:e.label||e.name}),r?(0,a.jsx)("span",{className:"inline-flex items-center rounded-full bg-[color:color-mix(in_srgb,var(--vk-green)_15%,transparent)] px-1.5 py-0.5 text-[9px] font-medium text-[var(--vk-green)] border border-[color:color-mix(in_srgb,var(--vk-green)_25%,transparent)]",children:"Ready"}):(0,a.jsx)("span",{className:"inline-flex items-center rounded-full bg-[color:color-mix(in_srgb,var(--vk-text-muted)_20%,transparent)] px-1.5 py-0.5 text-[9px] font-medium text-[var(--vk-text-muted)] border border-[rgba(255,255,255,0.05)]",children:"Not Installed"})]}),(0,a.jsx)("p",{className:"truncate text-[11px] text-[rgba(255,255,255,0.6)]",children:e.description})]}),t?(0,a.jsx)(u.A,{className:"h-4 w-4 text-white"}):null]},e.name)})]})]})}let eP="approval_required",eD=new Set(["queued","spawning","running","working"]),eF=["## proposed plan","## intended board mutations","## intended tool calls","## task packet","task packet","board mutations"],eO=["approve this plan","approve the plan","approve this proposal","request changes","plan-only mode","paused before mutating the board","approve it or request changes","ask for explicit approval","explicit approval"],eU=new Set(["ArrowUp","ArrowDown","PageUp","PageDown","Home","End"," ","Spacebar"]);function eq({session:e,bridgeId:t=null,active:r=!0,onClose:n,onToggleCollapse:l,className:o,hideOpenSessionAction:d=!1,hideRepositoryControls:c=!1,hideSessionStatusBadge:m=!1,headerActions:x=null,composerInsert:p=null,composerToolbar:f=null,composerSettings:b=null,apiPaths:j}){let k=(0,g.useRouter)(),[y,N]=(0,s.useState)(em),[S,A]=(0,s.useState)(!0),[C,L]=(0,s.useState)(null),[U,K]=(0,s.useState)(!1),[eh,ef]=(0,s.useState)(""),[eb,eC]=(0,s.useState)([]),[eL,e_]=(0,s.useState)(null),[eI,e$]=(0,s.useState)(!1),[eH,eB]=(0,s.useState)(null),[eK,eJ]=(0,s.useState)(!0),[ez,eV]=(0,s.useState)(null),[eW,eY]=(0,s.useState)(!1),{agents:eG=[]}=(0,ed._)(t),[eQ,eZ]=(0,s.useState)(!1),[eX,e0]=(0,s.useState)(!1),[e5,e1]=(0,s.useState)(""),[e2,e3]=(0,s.useState)(!1),[e4,e8]=(0,s.useState)(null),[e6,e7]=(0,s.useState)([]),[e9,te]=(0,s.useState)(!1),[tt,tr]=(0,s.useState)(null),[ta,tn]=(0,s.useState)(null),[ts,tl]=(0,s.useState)(()=>Q()),ti="project_dispatcher"===e.metadata.sessionKind,to=(0,s.useMemo)(()=>(0,ei.qK)({sessionAgent:e.agent??null,legacyMetadataAgent:e.metadata.agent??null}),[e.agent,e.metadata.agent]),td=(0,s.useMemo)(()=>eM(to??"assistant"),[to]),tc=(0,s.useMemo)(()=>(0,ei.uP)({isDispatcher:ti,sessionAgent:e.agent??null,legacyMetadataAgent:e.metadata.agent??null,repositoryAgent:eH?.agent??null}),[ti,eH?.agent,e.agent,e.metadata.agent]),tu=(0,s.useMemo)(()=>eG.find(e=>e.name.toLowerCase()===tc.toLowerCase()),[eG,tc]),tm=(0,s.useMemo)(()=>!tu||(tu.installed??!0),[tu]);(0,s.useEffect)(()=>{eZ(!1)},[tc]),(0,s.useEffect)(()=>{if(e9)return(0,q.h5)(()=>{te(!1)})},[e9]);let tx=(0,s.useRef)(null),tp=(0,s.useRef)(null),th=(0,s.useRef)(null),tg=(0,s.useRef)([]),[tf,tb]=(0,s.useState)(!0),tv=(0,s.useRef)(Q()),tj=(0,s.useRef)(0),tw=(0,s.useRef)(0),tk=(0,s.useRef)(0),ty=(0,s.useRef)(y),tN=(0,s.useRef)(tt),tS=r&&tf,tA=(0,s.useRef)(Date.now()),tC=(0,s.useRef)(null),tE=(0,s.useRef)(null),tM=(0,s.useRef)(null),tL=(0,s.useRef)(0),t_=(0,s.useRef)(0),tI=(0,s.useRef)(0),t$=(0,s.useRef)(0),tR=(0,s.useRef)(0),tT=(0,s.useRef)(0),tP=(0,s.useRef)(0),tD=(0,s.useRef)(0),tF=(0,s.useRef)(!1),tO=(0,s.useRef)(null),tU=(0,s.useRef)(0),tq=(0,s.useRef)(0),tH=(0,s.useRef)(0),tB=(0,s.useRef)(0);(0,s.useEffect)(()=>{ty.current=y},[y]),(0,s.useEffect)(()=>{tN.current=tt},[tt]);let tK=(0,s.useCallback)(e=>{tl(t=>{let r="function"==typeof e?e(t):e,a=t.followLatest===r.followLatest&&t.showJumpToLatest===r.showJumpToLatest&&t.unseenCount===r.unseenCount&&t.unseenEntryIds.length===r.unseenEntryIds.length&&t.unseenEntryIds.every((e,t)=>e===r.unseenEntryIds[t])?t:r;return tv.current=a,a})},[]),tJ=(0,s.useCallback)(()=>{let e=Q();tv.current=e,tl(e)},[]),tz=(0,s.useCallback)(()=>{null!==tO.current&&(window.clearTimeout(tO.current),tO.current=null)},[]),tV=(0,s.useCallback)(()=>{tk.current=performance.now()+320},[]),tW=(0,s.useCallback)(e=>{let t=tp.current;if(!t)return;let r=tj.current;tw.current+=1,e?t.scrollTo({top:t.scrollHeight,behavior:e}):t.scrollTo({top:t.scrollHeight}),window.requestAnimationFrame(()=>{let e=tp.current;if(!e){tw.current=Math.max(0,tw.current-1);return}tK(t=>X(t,{nearBottom:eu(e),previousScrollTop:r,scrollTop:e.scrollTop,isUserInitiated:!1})),tj.current=e.scrollTop,tw.current=Math.max(0,tw.current-1)})},[tK]);(0,s.useEffect)(()=>{let e=()=>{tb(!document.hidden)};return document.addEventListener("visibilitychange",e),()=>{document.removeEventListener("visibilitychange",e)}},[]),(0,s.useEffect)(()=>{tA.current=Date.now(),tC.current=null,tE.current=null,tM.current=null,tL.current+=1,t_.current=0,tI.current=0,t$.current=0,tR.current=0,tT.current=0,tP.current+=1,tD.current=0,tz(),tU.current=0,tq.current=0,tH.current=0,tB.current=0,tg.current=[],tJ(),tj.current=0,tw.current=0,tk.current=0,eC([]),tr(null),tn(null),K(!1),te(!1),e0(!1),e1("")},[tz,tJ,e.id]),(0,s.useEffect)(()=>tz,[tz]);let tY=(0,s.useMemo)(()=>({feed:j.feed,stream:j.stream,send:j.send,interrupt:j.interrupt??null,approve:j.approve??null,reject:j.reject??null,contextFiles:j.contextFiles??"/api/context-files",repositories:j.repositories??"/api/repositories"}),[j]),tG=(0,s.useMemo)(()=>{var t,r;let a;return t=tY.contextFiles,r=e.projectId,(a=new URL(t,"http://localhost")).searchParams.set("projectId",r),`${a.pathname}${a.search}${a.hash}`},[e.projectId,tY.contextFiles]),tQ=(0,s.useMemo)(()=>{if("project_dispatcher"===e.metadata.sessionKind)return`Dispatcher / ${e.projectId}`;let t=e.issueId?.trim()||e.projectId,r=e.branch?.trim()||(0,ea.kV)(e.id).slice(0,8);return`${t} / ${r}`},[e.branch,e.id,e.issueId,e.metadata.sessionKind,e.projectId]),tZ=(0,s.useMemo)(()=>eM(ti?to??"agent":eH?.agent?.trim()||to||"agent"),[to,ti,eH?.agent]),tX=(0,s.useMemo)(()=>{let e,t,r;return ta&&!z(ta)&&z(y.sessionStatus)?(e=!1,t=y.entries.map(t=>{let r=t;if(t.streaming&&(r={...r,streaming:!1}),"tool"===t.kind){let e=J(t.metadata.toolStatus)?.trim().toLowerCase()??"";("running"===e||"working"===e)&&(r={...r,metadata:{...r.metadata,toolStatus:"error"}})}return r!==t&&(e=!0),r}),r=z(y.sessionStatus)?"killed":y.sessionStatus,e||r!==y.sessionStatus?{...y,entries:t,parserState:null,sessionStatus:r}:y):y},[ta,y]),t0=(0,s.useMemo)(()=>tt||eI?"working":ta?.trim()||tX.sessionStatus?.trim()||e.status,[ta,tt,tX.sessionStatus,eI,e.status]),t5=(0,s.useMemo)(()=>t0.trim().toLowerCase(),[t0]),t1=(0,s.useMemo)(()=>!tt||W(tX,tt)?[...tX.entries]:[...tX.entries,{id:tt.id,kind:"user",label:"You",text:tt.text,createdAt:tt.createdAt,attachments:tt.attachments.map(e=>({path:e})),source:"optimistic",streaming:!1,metadata:{}}],[tt,tX]),t2=tX.approvalState??e.metadata.acpPlanApprovalState??null,t3=(0,s.useMemo)(()=>ti&&function(e,t,r,a){if(t!==eP)return!1;if(a?.kind===eP)return!0;if(r?.trim().toLowerCase()!=="needs_input")return!1;for(let t=e.length-1;t>=0;t--){let r=e[t];if("tool"!==r.kind&&"status"!==r.kind&&"system"!==r.kind){if("user"===r.kind)return!1;if("assistant"===r.kind)return function(e){let t=e.trim().toLowerCase();if(t.length<160)return!1;let r=eF.reduce((e,r)=>e+ +!!t.includes(r),0),a=eO.reduce((e,r)=>e+ +!!t.includes(r),0);return r>=2&&a>=1}(r.text)}}return!1}(t1,t2,t0,tX.parserState),[t2,ti,tX.parserState,t0,t1]),t4=!!tY.interrupt&&eD.has(t5),t8=ti&&t4,t6=t4&&!t8,t7=!c||!m||t6,t9="archived"!==e.status&&!(ti&&t4),re=(0,s.useMemo)(()=>{var e;return!!(e={message:eh,attachments:eb,canContinue:t9,sending:eI,isActiveInstalled:tm}).canContinue&&!e.sending&&!!e.isActiveInstalled&&(e.message.trim().length>0||H(e.attachments).length>0)},[t9,eh,eb,tm,eI]),rt=(0,s.useMemo)(()=>(function(e,t){if(!z(t))return!1;let r=function(e){for(let t=e.length-1;t>=0;t-=1)if(e[t]?.kind==="user")return t;return -1}(e);return!(r<0)&&!e.slice(r+1).some(e=>{if(e.streaming)return!0;let t=V(e);return t?.status==="running"||t?.status==="pending"})})(t1,t0),[t0,t1]),rr=(0,s.useMemo)(()=>ti&&"errored"===t5?tX.error?.trim()||null:null,[ti,t5,tX.error]),ra=(0,s.useMemo)(()=>new Map(e6.map(e=>[e.path,e])),[e6]),rn=(0,s.useMemo)(()=>(function(e,t){let r=t.trim().toLowerCase(),a=r?e.filter(e=>`${e.path} ${e.displayPath??""} ${e.name} ${e.source??""}`.toLowerCase().includes(r)):[...e],n=new Map;for(let e of a)n.has(e.path)||n.set(e.path,e);return[...n.values()]})(e6,e5),[e6,e5]),rs=(0,s.useMemo)(()=>eb.map(e=>({path:e,label:B(e,ra.get(e))})),[ra,eb]),rl=!!C&&U,ri=!!C&&!rl,ro=(0,s.useCallback)(async()=>{if(c){eB(null),eV(null),eJ(!1);return}eJ(!0),eV(null);try{let r=await fetch((0,en.S)(tY.repositories,t),{cache:"no-store"}),a=ev(await r.json().catch(()=>null));if(!r.ok)throw Error(ej(a.error)??`Failed to load project settings (${r.status})`);let n=Array.isArray(a.repositories)?a.repositories.map(eA).find(t=>null!==t&&t.id===e.projectId)??null:null;eB(n),n||eV("Project settings were not found for this session.")}catch(e){eB(null),eV(e instanceof Error?e.message:"Failed to load project settings")}finally{eJ(!1)}},[t,c,e.projectId,tY.repositories]),rd=(0,s.useCallback)(async(e={})=>{let r=e.showLoading??!0,a=!0===e.preserveExistingOnError,n=void 0===e.pendingEntry?tN.current:e.pendingEntry,s=tL.current+1;tL.current=s;let l=tD.current;t_.current+=1,r&&A(!0),L(null),K(!1);try{let e=await fetch((0,en.S)(tY.feed,t),{cache:"no-store"}),r=eS(await e.json().catch(()=>null));if(tL.current!==s||tD.current!==l)return;if(!e.ok)throw Error(r.error??`Failed to load session feed (${e.status})`);let a=Date.now();null===tC.current&&(tC.current=a),tE.current=a,ty.current=r,N(r)}catch(t){if(tI.current+=1,tL.current!==s||tD.current!==l)return;let e=t instanceof Error?t.message:"Failed to load session feed";K(function(e,t={}){return!t.preserveExistingOnError||!(e.entries.length>0||t.pendingEntry||e.totalEntries>0||z(e.sessionStatus)||e.approvalState||e.parserState||e.runtimeStatus||e.truncated||e.error)}(ty.current,{preserveExistingOnError:a,pendingEntry:n})),L(e)}finally{tL.current===s&&A(!1)}},[t,tY.feed]);(0,s.useEffect)(()=>{r&&rd()},[r,rd]),(0,s.useEffect)(()=>{r&&!c&&ro()},[r,c,ro]),(0,s.useEffect)(()=>{if(!r||!eX)return;let e=new AbortController,a=e.signal;return(async()=>{e3(!0),e8(null);try{let e=await fetch((0,en.S)(tG,t),{cache:"no-store",signal:a}),r=ev(await e.json().catch(()=>null));if(a.aborted)return;if(!e.ok)throw Error(ej(r.error)??`Failed to load context files (${e.status})`);let n=Array.isArray(r.files)?r.files.map(e=>{let t=ev(e),r=ej(t.path),a=ej(t.name),n=ej(t.kind);return r&&a&&("file"===n||"image"===n)?{path:r,displayPath:ej(t.displayPath)??void 0,name:a,kind:n,source:ej(t.source)??void 0,sizeBytes:"number"==typeof t.sizeBytes?t.sizeBytes:null}:null}).filter(e=>null!==e):[];if(a.aborted)return;e7(n)}catch(e){if(a.aborted||(e instanceof DOMException?"AbortError"===e.name:e instanceof Error&&"AbortError"===e.name))return;e7([]),e8(e instanceof Error?e.message:"Failed to load context files")}finally{a.aborted||e3(!1)}})(),()=>{e.abort()}},[r,t,tG,eX]),(0,s.useEffect)(()=>{tt&&W(tX,tt)&&(tN.current=null,tr(null))},[tt,tX]),(0,s.useEffect)(()=>{(function(e,t){let r=e?.trim().toLowerCase()??"";if(!r)return!1;let a=t?.trim().toLowerCase()??"";return!!a&&(!!(a===r||z(r))||!z(a))})(ta,y.sessionStatus)&&tn(null)},[ta,y.sessionStatus]),(0,s.useEffect)(()=>{if(!tS){tB.current+=1;return}let r=!1,a=null,n=0,s=!1,l=null,i={current:null},o=()=>{null!==a&&(window.clearTimeout(a),a=null)},d=t=>{let r=null;try{r=JSON.parse(t)}catch{return tT.current+=1,rd({showLoading:!1,preserveExistingOnError:!0}),!1}let a=r&&"object"==typeof r&&!Array.isArray(r)?r:null;if(a?.type==="refresh")return tT.current+=1,(0,el.Fp)({projectId:e.projectId,reason:"dispatcher_feed_refresh"}),rd({showLoading:!1,preserveExistingOnError:!0}),!1;let n=function(e){let t=ev(e),r=ej(t.type);if(!r&&Array.isArray(t.entries))return{type:"replace",payload:eS(e)};if("replace"===r)return{type:r,payload:eS(t.payload)};if("append"===r){let e=eS(t);return{type:r,entries:e.entries,totalEntries:e.totalEntries,windowLimit:e.windowLimit,truncated:e.truncated,sessionStatus:e.sessionStatus,approvalState:e.approvalState,parserState:e.parserState,runtimeStatus:e.runtimeStatus,source:e.source,error:e.error,integration:e.integration}}if("patch"===r){let e=ej(t.entryId);return e?{type:r,entryId:e,entry:ew(t.entry),textDelta:"string"==typeof t.textDelta?t.textDelta:null,textOffset:"number"==typeof t.textOffset?t.textOffset:null,totalEntries:"number"==typeof t.totalEntries?t.totalEntries:0,windowLimit:"number"==typeof t.windowLimit?t.windowLimit:120,truncated:!0===t.truncated,sessionStatus:ej(t.sessionStatus),approvalState:ej(t.approvalState),parserState:ek(t.parserState),runtimeStatus:ey(t.runtimeStatus),source:ej(t.source),error:ej(t.error),integration:eN(t.integration)}:null}return null}(r);if(!n)return tT.current+=1,rd({showLoading:!1,preserveExistingOnError:!0}),!1;let o=function(e,t){if("patch"!==t.type||null!==t.entry||null===t.textDelta||null===t.textOffset)return!1;let r=e.entries.find(e=>e.id===t.entryId),a=ep(r?.text,t.textDelta,t.textOffset);return"append"!==a&&"replay"!==a}(ty.current,n);if(o){var d;return d=s,o&&!d&&(s=!0,l=tP.current,tT.current+=1,i.current?.abort(),c()),!1}"replace"===n.type&&(s=!1),tM.current=Date.now(),tD.current+=1,A(!1),L(null),K(!1),"append"===n.type?tU.current+=n.entries.length:"patch"===n.type?tq.current+=1:tH.current+=1;let u="append"===n.type?(0,el.AR)(n.entries):null;u&&(0,el.Fp)({projectId:e.projectId,reason:u});let m=function(e,t){if("replace"===t.type)return{...t.payload,entries:function(e,t){if(0===e.length||0===t.length)return t;let r=new Map(e.map(e=>[e.id,e]));return t.map(e=>{let t=r.get(e.id);return t&&eg(t,e)?t:e})}(e.entries,t.payload.entries)};if("append"===t.type)return{entries:function(e,t){if(0===t.length)return e;let r=e.slice(),a=new Map(r.map((e,t)=>[e.id,t]));for(let e of t){let t=a.get(e.id);if(void 0===t){a.set(e.id,r.length),r.push(e);continue}let n=r[t];r[t]=n&&eg(n,e)?n:e}return r}(e.entries,t.entries),totalEntries:t.totalEntries,windowLimit:t.windowLimit,truncated:t.truncated,sessionStatus:t.sessionStatus,approvalState:t.approvalState,parserState:t.parserState,runtimeStatus:t.runtimeStatus,source:t.source,error:t.error,integration:t.integration??e.integration};let r=e.entries.slice(),a=t.entry;if(!a){if(null!==t.textDelta&&null!==t.textOffset){let a=r.findIndex(e=>e.id===t.entryId);if(a>=0){let e=r[a],n=ep(e.text,t.textDelta,t.textOffset);"append"===n?r[a]={...e,text:e.text+t.textDelta}:"replay"===n&&(r[a]=e)}return{entries:r,totalEntries:t.totalEntries,windowLimit:t.windowLimit,truncated:t.truncated,sessionStatus:t.sessionStatus,approvalState:t.approvalState,parserState:t.parserState,runtimeStatus:t.runtimeStatus,source:t.source,error:t.error,integration:t.integration??e.integration}}return{...e,entries:r.filter(e=>e.id!==t.entryId),totalEntries:t.totalEntries,windowLimit:t.windowLimit,truncated:t.truncated,sessionStatus:t.sessionStatus,approvalState:t.approvalState,parserState:t.parserState,runtimeStatus:t.runtimeStatus,source:t.source,error:t.error,integration:t.integration??e.integration}}let n=-1;for(let e=r.length-1;e>=0;e-=1)if(r[e]?.id===t.entryId){n=e;break}if(n>=0){let e=r[n],s=t.textDelta,l=null!==s&&null!==t.textOffset?ep(e.text,s,t.textOffset):null;eg(e,a)?r[n]=e:null!==s&&"append"===l&&a.text.startsWith(e.text)&&e.text.length+s.length===a.text.length?r[n]={...a,text:e.text+s}:r[n]=a}else r.push(a);return{entries:r,totalEntries:t.totalEntries,windowLimit:t.windowLimit,truncated:t.truncated,sessionStatus:t.sessionStatus,approvalState:t.approvalState,parserState:t.parserState,runtimeStatus:t.runtimeStatus,source:t.source,error:t.error,integration:t.integration??e.integration}}(ty.current,n);return ty.current=m,N(m),!0},c=()=>{if(r)return;o();let e=0===n?250:Math.min(500*2**(n-1),12e3);n+=1,tR.current+=1,a=window.setTimeout(()=>{a=null,u()},e)},u=async()=>{if(r)return;let e=tP.current+1,a=Date.now(),s=0;tP.current=e;let o=()=>!r&&tP.current===e;i.current?.abort();let u=new AbortController;i.current=u;let m=new URL((0,en.S)(tY.stream,t),"http://127.0.0.1");m.searchParams.set("streamProtocol","2");let x=`${m.pathname}${m.search}${m.hash}`;try{t$.current+=1;let t=await fetch(x,{cache:"no-store",signal:u.signal});if(!o())return;if(!t.ok||!t.body){tT.current+=1,rd({showLoading:!1,preserveExistingOnError:!0}),c();return}for await(let e of(0,ec.w)(t.body,u.signal)){if(!o())return;if("ping"===e.event){tM.current=Date.now();continue}d(e.data)&&(s+=1)}if(o()){if(l===e)return;n=ex(n,s,Date.now()-a),tT.current+=1,rd({showLoading:!1,preserveExistingOnError:!0}),c()}}catch{o()&&!u.signal.aborted&&(n=ex(n,s,Date.now()-a),tT.current+=1,rd({showLoading:!1,preserveExistingOnError:!0}),c())}};return u(),()=>{r=!0,tP.current+=1,o(),i.current?.abort()}},[t,rd,e.projectId,tY.stream,tS]),(0,s.useEffect)(()=>{},[r,S,C,tf,y.entries.length,e.id,tS]),(0,s.useEffect)(()=>{let e=tg.current;if(e.length>0){let t=function(e,t){if(0===t.length)return[];let r=new Map;for(let t of e)r.set(t.id,t);let a=[];for(let e of t){let t=r.get(e.id);if(!t){a.push(e.id);continue}if(t!==e)Z(t)!==Z(e)&&a.push(e.id)}return Y(a)}(e,t1);t.length>0&&tK(e=>{let r;return 0===(r=Y(t)).length?e:e.followLatest?G({...e,showJumpToLatest:!1},[]):G({...e,showJumpToLatest:!0},[...e.unseenEntryIds,...r])})}tg.current=t1},[e.id,tK,t1]),(0,s.useEffect)(()=>{if(!tp.current||!tv.current.followLatest)return;let e=window.requestAnimationFrame(()=>{tv.current.followLatest&&tW()});return()=>window.cancelAnimationFrame(e)},[y,tW,rt,t1.length]),(0,s.useEffect)(()=>{let e=tp.current,t=th.current;if(!e||!t||"u"<typeof ResizeObserver)return;let r=new ResizeObserver(()=>{tv.current.followLatest&&tW()});return r.observe(t),()=>r.disconnect()},[S,C,tW,e.id,rt,t1.length]);let rc=(0,s.useCallback)(e=>{let t=tj.current,r=e.currentTarget;if(tj.current=r.scrollTop,tw.current>0)return;let a=performance.now();tK(e=>{var n;return X(e,{nearBottom:eu(r),previousScrollTop:t,scrollTop:r.scrollTop,isUserInitiated:(n=tk.current,Number.isFinite(n)&&n>0&&a<=n)})})},[tK]),ru=(0,s.useCallback)(e=>{e.buttons>0&&tV()},[tV]),rm=(0,s.useCallback)(e=>{e.altKey||e.ctrlKey||e.metaKey||eU.has(e.key)&&tV()},[tV]);(0,s.useEffect)(()=>{let e=window.visualViewport;if(!e)return;let t=()=>{tv.current.followLatest&&tW()};return e.addEventListener("resize",t),e.addEventListener("scroll",t),()=>{e.removeEventListener("resize",t),e.removeEventListener("scroll",t)}},[tW,e.id]),(0,s.useEffect)(()=>{p&&ef(e=>{let t=p.draftText.trim();if(!t)return e;let r=e.trim();return r?r.includes(t)?e:`${e.trimEnd()}
2
+
3
+ ${t}`:t})},[p]),(0,s.useEffect)(()=>{let e=tx.current;if(!e)return;e.style.height="0px";let t=Math.min(Math.max(e.scrollHeight,24),160);e.style.height=`${t}px`,e.style.overflowY=e.scrollHeight>160?"auto":"hidden"},[eh]);let rx=(0,s.useCallback)(e=>{eC(t=>{let r=H(t);return r.includes(e)?r.filter(t=>t!==e):[...r,e]})},[]),rp=(0,s.useCallback)(e=>{eC(t=>t.filter(t=>t!==e))},[]),rh=(0,s.useCallback)(async(e,r)=>{let a=H(r);if(0===e.trim().length&&0===a.length||eI||tF.current)return!1;tF.current=!0;let n=ty.current,s={id:`pending-${Date.now()}`,text:e.trim(),attachments:a,createdAt:new Date().toISOString(),feedBaselineTotalEntries:n.totalEntries,feedBaselineLastEntryId:n.entries[n.entries.length-1]?.id??null};tz(),tJ(),tN.current=s,tr(s),e$(!0),e_(null);try{let r,n=await fetch((0,en.S)(tY.send,t),{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify((r=H(a)).length>0?{message:e.trim(),attachments:r}:{message:e.trim()})}),l=await n.json().catch(()=>null);if(!n.ok)throw Error(ej(ev(l).error)??`Failed to send message (${n.status})`);let i=tD.current;return tO.current=window.setTimeout(()=>{tO.current=null,tN.current?.id!==s.id||tD.current===i&&rd({showLoading:!1,preserveExistingOnError:!0,pendingEntry:s})},1500),!0}catch(e){return tz(),tN.current?.id===s.id&&(tN.current=null),tr(e=>e?.id===s.id?null:e),e_(e instanceof Error?e.message:"Failed to send message"),!1}finally{tF.current=!1,e$(!1)}},[t,tz,rd,tJ,eI,tY.send]),rg=(0,s.useCallback)(async()=>{!re||await rh(eh,eb)&&(ef(""),eC([]),e0(!1))},[re,eh,eb,rh]),rf=(0,s.useCallback)(async e=>{let r="approve"===e?tY.approve:tY.reject;if(!r)return void await rh(e,[]);e$(!0),e_(null);try{let a=await fetch((0,en.S)(r,t),{method:"POST"}),n=ev(await a.json().catch(()=>null));if(!a.ok)throw Error(ej(n.error)??`Failed to ${e} plan (${a.status})`);ef(""),rd({showLoading:!1,preserveExistingOnError:!0})}catch(t){e_(t instanceof Error?t.message:`Failed to ${e} plan`)}finally{e$(!1)}},[t,rd,rh,tY.approve,tY.reject]),rb=(0,s.useCallback)(e=>{var t;let r="function"==typeof window.matchMedia&&window.matchMedia(q.In).matches;"Enter"!==(t={key:e.key,shiftKey:e.shiftKey,isComposing:e.nativeEvent.isComposing,isDesktopXl:r}).key||t.shiftKey||t.isComposing||t.isDesktopXl||(e.preventDefault(),re&&rg())},[re,rg]),rv=(0,s.useCallback)(async e=>{if(eH&&!eW&&e!==eH.agent){eY(!0),eV(null);try{let r=await fetch((0,en.S)(tY.repositories,t),{method:"PUT",headers:{"Content-Type":"application/json"},body:JSON.stringify({...eH,agent:e})}),a=ev(await r.json().catch(()=>null));if(!r.ok)throw Error(ej(a.error)??`Failed to update coding agent (${r.status})`);let n=eA(a.repository);n?eB(n):eB(t=>t?{...t,agent:e}:t)}catch(e){eV(e instanceof Error?e.message:"Failed to update coding agent")}finally{eY(!1)}}},[t,eH,eW,tY.repositories]),rj=(0,s.useCallback)(async()=>{if(!tY.interrupt)return;e$(!0),e_(null);let e=!0;try{let r=await fetch((0,en.S)(tY.interrupt,t),{method:"POST"}),a=await r.json().catch(()=>null);if(!r.ok)throw Error(ej(ev(a).error)??`Failed to interrupt session (${r.status})`);tN.current=null,tr(null),tn("killed");let n=rd({showLoading:!1,preserveExistingOnError:!0,pendingEntry:null});e$(!1),e=!1,await n}catch(e){e_(e instanceof Error?e.message:"Failed to interrupt session")}finally{e&&e$(!1)}},[t,rd,tY.interrupt]);return(0,a.jsxs)(a.Fragment,{children:[(0,a.jsxs)("aside",{className:(0,et.cn)("flex min-h-0 w-full min-w-0 shrink-0 flex-col overflow-hidden border-t border-[var(--vk-border)] bg-[var(--vk-bg-panel)] xl:w-[405px] xl:border-l xl:border-t-0",q.mq,o),children:[(0,a.jsxs)("div",{className:"flex h-[33px] items-center gap-2 border-b border-[var(--vk-border)] pl-14 pr-3 text-[12px] text-[var(--vk-text-muted)] sm:px-3",children:[(0,a.jsx)("span",{className:"min-w-0 flex-1 truncate",children:tQ}),(0,a.jsx)("span",{className:(0,et.cn)("inline-flex items-center rounded-[999px] px-2 py-0.5 text-[10px] uppercase tracking-wide",tS?"bg-[color:color-mix(in_srgb,var(--vk-green)_18%,transparent)] text-[var(--vk-green)]":"bg-[color:color-mix(in_srgb,var(--vk-text-muted)_12%,transparent)] text-[var(--vk-text-muted)]"),children:tS?"live":"paused"}),x,l?(0,a.jsx)("button",{type:"button",onClick:l,className:"hidden h-6 w-6 items-center justify-center rounded-[3px] text-[var(--vk-text-muted)] hover:bg-[var(--vk-bg-hover)] hover:text-[var(--vk-text-normal)] xl:inline-flex","aria-label":"Collapse dispatcher",title:"Collapse dispatcher",children:(0,a.jsx)(_.A,{className:"h-3.5 w-3.5"})}):null,d?null:(0,a.jsx)("button",{type:"button",onClick:()=>k.push((0,es.s)(e.id,{bridgeId:t,tab:null})),className:"inline-flex h-6 w-6 items-center justify-center rounded-[3px] text-[var(--vk-text-muted)] hover:bg-[var(--vk-bg-hover)] hover:text-[var(--vk-text-normal)]","aria-label":"Open full session",children:(0,a.jsx)(I.A,{className:"h-3.5 w-3.5"})}),n?(0,a.jsx)("button",{type:"button",onClick:n,className:"inline-flex h-6 w-6 items-center justify-center rounded-[3px] text-[var(--vk-text-muted)] hover:bg-[var(--vk-bg-hover)] hover:text-[var(--vk-text-normal)]","aria-label":"Close docked session",children:(0,a.jsx)($.A,{className:"h-3.5 w-3.5"})}):null]}),(0,a.jsx)("div",{ref:tp,role:"region","aria-label":"Dispatcher conversation",tabIndex:0,onScroll:rc,onWheelCapture:tV,onTouchStartCapture:tV,onTouchMoveCapture:tV,onPointerDownCapture:tV,onPointerMoveCapture:ru,onKeyDownCapture:rm,className:(0,et.cn)(q.tV,"px-3 py-4 sm:px-4"),children:S?(0,a.jsxs)("div",{className:"flex h-full items-center justify-center text-[13px] text-[var(--vk-text-muted)]",children:[(0,a.jsx)(i.A,{className:"mr-2 h-4 w-4 animate-spin"}),"Loading dispatcher activity..."]}):rl?(0,a.jsx)("div",{className:"rounded-[12px] border border-[color:color-mix(in_srgb,var(--vk-red)_45%,transparent)] bg-[color:color-mix(in_srgb,var(--vk-red)_12%,transparent)] px-3 py-2 text-[13px] text-[var(--vk-red)]",children:C}):(0,a.jsxs)("div",{ref:th,className:"space-y-5",children:[ri?(0,a.jsx)("div",{className:"rounded-[12px] border border-[color:color-mix(in_srgb,var(--vk-red)_45%,transparent)] bg-[color:color-mix(in_srgb,var(--vk-red)_12%,transparent)] px-3 py-2 text-[13px] text-[var(--vk-red)]",children:C}):null,tX.parserState||tX.truncated?(0,a.jsxs)("div",{className:"flex min-w-0 flex-wrap items-center gap-x-2 gap-y-2 text-[12px] text-[var(--vk-text-muted)]",children:[tX.parserState?(0,a.jsxs)(a.Fragment,{children:[(0,a.jsxs)("span",{className:"inline-flex items-center gap-1.5 rounded-[999px] border border-[var(--vk-border)] bg-[rgba(255,255,255,0.03)] px-2 py-0.5",children:[(0,a.jsx)(i.A,{className:"h-3 w-3"}),(0,a.jsx)("span",{children:tX.parserState.kind})]}),tX.parserState.command?(0,a.jsx)(eE,{value:tX.parserState.command,maxLength:72,className:"rounded-[6px] bg-[rgba(255,255,255,0.05)] px-2 py-0.5 font-mono text-[11px]"}):null]}):null,tX.truncated?(0,a.jsxs)(a.Fragment,{children:[tX.parserState?(0,a.jsx)("span",{className:"text-[var(--vk-text-dim)]",children:"•"}):null,(0,a.jsxs)("span",{children:["Showing latest ",tX.windowLimit]})]}):null]}):null,0!==t1.length||rt?(0,a.jsxs)(a.Fragment,{children:[t1.map(e=>(0,a.jsx)("div",{className:"tool"===e.kind?"!mt-1.5":void 0,children:(0,a.jsx)(eR,{entry:e,assistantAgentLabel:td})},e.id)),rt?(0,a.jsxs)("div",{role:"status","aria-live":"polite",className:"flex items-center gap-2 py-1.5 text-[12px] text-[var(--vk-text-muted)]",children:[(0,a.jsx)(er,{}),(0,a.jsx)("span",{children:"Dispatcher is working…"})]}):null]}):tm?(0,a.jsx)("div",{className:"rounded-[12px] border border-[var(--vk-border)] bg-[rgba(255,255,255,0.02)] px-4 py-4 text-[13px] text-[var(--vk-text-muted)]",children:"No dispatcher activity yet."}):(0,a.jsxs)("div",{className:"relative overflow-hidden rounded-[16px] border border-[color:color-mix(in_srgb,var(--vk-orange)_25%,rgba(255,255,255,0.06))] bg-[rgba(25,23,22,0.65)] p-5 shadow-[0_15px_40px_rgba(0,0,0,0.35)] backdrop-blur-md transition-all duration-300 hover:border-[color:color-mix(in_srgb,var(--vk-orange)_40%,rgba(255,255,255,0.1))]",children:[(0,a.jsx)("div",{className:"pointer-events-none absolute right-0 top-0 h-40 w-40 bg-[radial-gradient(circle_at_top_right,color-mix(in_srgb,var(--vk-orange)_12%,transparent),transparent_70%)]"}),(0,a.jsxs)("div",{className:"flex items-start gap-3",children:[(0,a.jsx)("div",{className:"shrink-0 rounded-[10px] border border-[color:color-mix(in_srgb,var(--vk-orange)_25%,transparent)] bg-[color:color-mix(in_srgb,var(--vk-orange)_15%,transparent)] p-2 text-[var(--vk-orange)]",children:(0,a.jsx)(M.A,{className:"h-5 w-5 animate-pulse"})}),(0,a.jsxs)("div",{className:"min-w-0 flex-1",children:[(0,a.jsx)("h4",{className:"text-[14px] font-semibold tracking-wide text-[#f5ebd7]",children:"Coding Agent Setup Required"}),(0,a.jsxs)("p",{className:"mt-1.5 text-[12px] leading-5 text-[rgba(255,255,255,0.7)]",children:["The selected agent ",(0,a.jsx)("strong",{className:"text-white",children:eM(tc)})," is not installed or configured on your system. Conductor orchestrates tasks by dispatching them to this agent."]})]})]}),tu?.installHint||(0,eo.h7)(tc)?.installHint?(0,a.jsxs)("div",{className:"mt-4",children:[(0,a.jsx)("div",{className:"mb-2 text-[11px] font-semibold uppercase tracking-[0.12em] text-[var(--vk-text-muted)]",children:"Installation Command"}),(0,a.jsxs)("div",{className:"flex items-center gap-2 rounded-[8px] border border-[rgba(255,255,255,0.08)] bg-[rgba(0,0,0,0.25)] p-2 font-mono text-[12px] text-[#e0dacb]",children:[(0,a.jsx)(R,{className:"h-3.5 w-3.5 shrink-0 text-[rgba(255,255,255,0.4)]"}),(0,a.jsx)("span",{className:"flex-1 truncate select-all",children:tu?.installHint||(0,eo.h7)(tc)?.installHint}),(0,a.jsx)("button",{type:"button",onClick:()=>{let e=tu?.installHint||(0,eo.h7)(tc)?.installHint;e&&navigator.clipboard.writeText(e).then(()=>{eZ(!0),setTimeout(()=>eZ(!1),2e3)}).catch(e=>{console.error("Failed to copy installation command to clipboard:",e)})},className:"rounded-[4px] p-1 text-[var(--vk-text-muted)] transition hover:bg-[rgba(255,255,255,0.06)] hover:text-white",title:"Copy install command",children:eQ?(0,a.jsx)(u.A,{className:"h-3.5 w-3.5 text-[var(--vk-green)]"}):(0,a.jsx)(T.A,{className:"h-3.5 w-3.5"})})]})]}):null,(0,a.jsxs)("div",{className:"mt-4 flex flex-wrap gap-x-4 gap-y-2 border-t border-[rgba(255,255,255,0.06)] pt-3.5",children:[tu?.homepage||(0,eo.h7)(tc)?.homepage?(0,a.jsxs)("a",{href:tu?.homepage||(0,eo.h7)(tc)?.homepage||void 0,target:"_blank",rel:"noopener noreferrer",className:"inline-flex items-center gap-1.5 text-[11px] text-[var(--vk-accent)] hover:underline",children:[(0,a.jsx)("span",{children:"Visit homepage"}),(0,a.jsx)(I.A,{className:"h-3 w-3"})]}):null,tu?.setupUrl||(0,eo.h7)(tc)?.setupUrl?(0,a.jsxs)("a",{href:tu?.setupUrl||(0,eo.h7)(tc)?.setupUrl||void 0,target:"_blank",rel:"noopener noreferrer",className:"inline-flex items-center gap-1.5 text-[11px] text-[var(--vk-accent)] hover:underline",children:[(0,a.jsx)("span",{children:"Setup credentials"}),(0,a.jsx)(I.A,{className:"h-3 w-3"})]}):null]}),eG.filter(e=>!1!==e.installed&&e.name!==tc).length>0?(0,a.jsxs)("div",{className:"mt-4 border-t border-[rgba(255,255,255,0.06)] pt-3",children:[(0,a.jsx)("div",{className:"mb-2 text-[11px] text-[rgba(255,255,255,0.5)]",children:"Or switch to an installed agent ready on your system:"}),(0,a.jsx)("div",{className:"flex flex-wrap gap-1.5",children:eG.filter(e=>!1!==e.installed&&e.name!==tc).map(e=>(0,a.jsxs)("button",{type:"button",onClick:()=>void rv(e.name),className:"inline-flex items-center gap-1.5 rounded-[6px] border border-[rgba(255,255,255,0.08)] bg-[rgba(255,255,255,0.03)] px-2 py-1 text-[11px] text-[#f3efea] transition hover:border-[rgba(255,255,255,0.15)] hover:bg-[rgba(255,255,255,0.08)]",children:[(0,a.jsx)(O.N,{seed:{label:e.name},className:"h-3.5 w-3.5 border-none bg-transparent"}),(0,a.jsx)("span",{children:e.label||e.name}),(0,a.jsx)(P.A,{className:"ml-0.5 h-2.5 w-2.5 opacity-60"})]},e.name))})]}):null]})]})}),(0,a.jsxs)("div",{className:"border-t border-[var(--vk-border)] bg-[var(--vk-bg-panel)] px-3 pb-[calc(1rem+env(safe-area-inset-bottom))] pt-3 sm:px-4 sm:pb-4",children:[t7?(0,a.jsxs)("div",{className:"mb-3 flex min-w-0 flex-col gap-2 sm:flex-row sm:flex-wrap sm:items-center",children:[c?null:(0,a.jsx)(eT,{project:eH,disabled:eK,saving:eW,agents:eG,onChange:e=>void rv(e)}),m?null:(0,a.jsxs)("div",{className:(0,et.cn)("inline-flex w-fit max-w-full items-center gap-2 rounded-[999px] border border-[var(--vk-border)] bg-[rgba(255,255,255,0.03)] px-3 py-1 text-[11px] text-[var(--vk-text-muted)]",c?null:"sm:ml-auto"),children:[(0,a.jsx)(O.N,{seed:{label:tZ},className:"h-4 w-4 border-none bg-transparent"}),(0,a.jsx)("span",{children:tZ}),(0,a.jsx)("span",{className:"text-[var(--vk-text-dim)]",children:"•"}),(0,a.jsx)("span",{children:t0})]}),t6?(0,a.jsxs)(ee.$,{type:"button",variant:"outline",size:"sm",disabled:eI,onClick:()=>void rj(),className:"h-[31px] rounded-[999px] border-[rgba(255,255,255,0.14)] bg-[rgba(255,255,255,0.03)] px-3 text-[13px] text-[#f3ead8] hover:bg-[rgba(255,255,255,0.08)]",children:[eI?(0,a.jsx)(i.A,{className:"h-3.5 w-3.5 animate-spin"}):(0,a.jsx)($.A,{className:"h-3.5 w-3.5"}),(0,a.jsx)("span",{children:"Stop"})]}):null]}):null,ts.showJumpToLatest?(0,a.jsx)("div",{className:"mb-2 flex justify-end",children:(0,a.jsxs)(ee.$,{type:"button",variant:"outline",size:"sm",onClick:()=>{tJ(),tW("smooth")},className:"h-[30px] rounded-[999px] border-[var(--vk-border)] bg-[var(--vk-bg-main)] px-3 text-[12px]",children:["Jump to latest",ts.unseenCount>0?` \xb7 ${ts.unseenCount} new`:""]})}):null,ez?(0,a.jsxs)("div",{className:"mb-2 flex items-center gap-1.5 text-[11px] text-[var(--vk-red)]",children:[(0,a.jsx)(M.A,{className:"h-3.5 w-3.5 shrink-0"}),(0,a.jsx)("span",{children:ez})]}):null,eL?(0,a.jsxs)("div",{className:"mb-2 flex items-center gap-1.5 text-[11px] text-[var(--vk-red)]",children:[(0,a.jsx)(M.A,{className:"h-3.5 w-3.5 shrink-0"}),(0,a.jsx)("span",{children:eL})]}):null,t3?(0,a.jsxs)("div",{className:"mb-3 rounded-[12px] border border-[rgba(204,163,92,0.35)] bg-[rgba(64,49,27,0.58)] px-3 py-3 text-[12px] text-[#f1e3bf]",children:[(0,a.jsxs)("div",{className:"flex items-center gap-2 text-[13px] font-medium text-[#f6ead0]",children:[(0,a.jsx)(M.A,{className:"h-4 w-4"}),(0,a.jsx)("span",{children:"Plan-only review ready"})]}),(0,a.jsx)("p",{className:"mt-2 leading-5 text-[#dccba1]",children:"The dispatcher is paused before mutating the board for this turn. Review the proposal above, then approve it or request changes."}),(0,a.jsxs)("div",{className:"mt-3 flex flex-wrap items-center gap-2",children:[(0,a.jsxs)(ee.$,{type:"button",size:"sm",disabled:!t9||eI,onClick:()=>void rf("approve"),className:"h-[31px] rounded-[999px] border-[rgba(255,255,255,0.08)] bg-[#e6c786] px-3 text-[13px] text-[#22170d] hover:bg-[#edd39d]",children:[eI?(0,a.jsx)(i.A,{className:"h-3.5 w-3.5 animate-spin"}):(0,a.jsx)(u.A,{className:"h-3.5 w-3.5"}),(0,a.jsx)("span",{children:"Approve plan"})]}),(0,a.jsxs)(ee.$,{type:"button",variant:"outline",size:"sm",disabled:!t9||eI,onClick:()=>void rf("reject"),className:"h-[31px] rounded-[999px] border-[rgba(255,255,255,0.14)] bg-[rgba(255,255,255,0.03)] px-3 text-[13px] text-[#f3ead8] hover:bg-[rgba(255,255,255,0.08)]",children:[(0,a.jsx)($.A,{className:"h-3.5 w-3.5"}),(0,a.jsx)("span",{children:"Request changes"})]})]})]}):null,rr?(0,a.jsxs)("div",{className:"mb-3 rounded-[12px] border border-[rgba(210,81,81,0.35)] bg-[rgba(82,27,27,0.5)] px-3 py-3 text-[12px] text-[#f3c5c5]",children:[(0,a.jsxs)("div",{className:"flex items-center gap-2 text-[13px] font-medium text-[#ffd7d7]",children:[(0,a.jsx)(M.A,{className:"h-4 w-4"}),(0,a.jsx)("span",{children:"Dispatcher runtime exited"})]}),(0,a.jsx)("p",{className:"mt-2 leading-5 text-[#f0bcbc]",children:"Use the dispatcher settings below to change the runtime, then retry your message."}),(0,a.jsx)("p",{className:"mt-2 rounded-[8px] bg-[rgba(0,0,0,0.18)] px-2.5 py-2 font-mono text-[11px] text-[#ffe4e4]",children:rr})]}):null,(0,a.jsxs)("form",{onSubmit:e=>{e.preventDefault(),rg()},className:"rounded-[28px] border border-[rgba(255,255,255,0.08)] bg-[#141212]/95 px-3 py-3 shadow-[0_18px_48px_rgba(0,0,0,0.24)] backdrop-blur-sm",children:[rs.length>0?(0,a.jsx)("div",{className:"mb-2.5 flex flex-wrap gap-2",children:rs.map(e=>(0,a.jsxs)("span",{className:"inline-flex max-w-full items-center gap-1.5 rounded-full border border-[rgba(255,255,255,0.08)] bg-[rgba(255,255,255,0.04)] px-3 py-1 text-[11px] text-[var(--vk-text-normal)]",children:[(0,a.jsx)(v.A,{className:"h-3 w-3 shrink-0 text-[var(--vk-text-muted)]"}),(0,a.jsx)("span",{className:"truncate",children:e.label}),(0,a.jsx)("button",{type:"button",onClick:()=>rp(e.path),className:"inline-flex h-4 w-4 items-center justify-center rounded-full text-[var(--vk-text-muted)] hover:bg-[rgba(255,255,255,0.08)] hover:text-[var(--vk-text-normal)]","aria-label":`Remove attachment ${e.label}`,children:(0,a.jsx)($.A,{className:"h-3 w-3"})})]},e.path))}):null,f?(0,a.jsx)("div",{className:"mb-2.5 hidden xl:block",children:f}):null,(0,a.jsxs)("div",{className:"flex items-end gap-2",children:[(0,a.jsx)("button",{type:"button",onClick:()=>e0(!0),disabled:eI,className:"inline-flex h-10 w-10 shrink-0 items-center justify-center rounded-full border border-[rgba(255,255,255,0.08)] bg-[rgba(255,255,255,0.04)] text-[var(--vk-text-normal)] transition hover:bg-[rgba(255,255,255,0.08)] disabled:cursor-not-allowed disabled:opacity-60","aria-label":"Add workspace attachment",children:(0,a.jsx)(D.A,{className:"h-4 w-4"})}),(0,a.jsxs)("div",{className:"min-w-0 flex-1",children:[(0,a.jsx)("textarea",{ref:tx,value:eh,onChange:e=>ef(e.target.value),onKeyDown:rb,onFocus:()=>{tv.current.followLatest&&tW()},placeholder:tm?"Ask the dispatcher to shape work, create tasks, or send attachments…":`Please install ${eM(tc)} or switch agents to send messages...`,disabled:!t9||eI||!tm,rows:1,className:"max-h-[160px] w-full resize-none overflow-y-hidden bg-transparent text-[15px] leading-6 text-[var(--vk-text-normal)] outline-none placeholder:text-[var(--vk-text-muted)] disabled:opacity-60 sm:text-[16px]"}),(0,a.jsxs)("div",{className:"mt-2 flex min-w-0 items-center gap-2 xl:hidden",children:[b?(0,a.jsxs)("button",{type:"button",onClick:()=>te(!0),className:(0,et.cn)("inline-flex min-w-0 max-w-full items-center gap-2 rounded-full border px-3 py-1.5 text-[11px] font-medium transition",b.error?"border-[rgba(210,81,81,0.35)] bg-[rgba(210,81,81,0.08)] text-[#ffd7d7]":"border-[rgba(255,255,255,0.08)] bg-[rgba(255,255,255,0.04)] text-[var(--vk-text-normal)] hover:bg-[rgba(255,255,255,0.08)]"),"aria-label":"Open dispatcher settings",children:[b.pending?(0,a.jsx)(i.A,{className:"h-3.5 w-3.5 shrink-0 animate-spin"}):null,(0,a.jsx)("span",{className:"truncate",children:b.summary}),(0,a.jsx)(E.A,{className:"h-3.5 w-3.5 shrink-0 text-[var(--vk-text-muted)]"})]}):null,b?.error?(0,a.jsx)("span",{className:"truncate text-[11px] text-[var(--vk-red)]",children:"Fix runtime settings"}):null]})]}),t8?(0,a.jsx)("button",{type:"button",disabled:eI,onClick:()=>void rj(),className:"inline-flex h-11 w-11 shrink-0 items-center justify-center rounded-full border border-[rgba(255,255,255,0.08)] bg-[rgba(255,255,255,0.05)] text-[var(--vk-text-normal)] transition hover:bg-[rgba(255,255,255,0.1)] disabled:cursor-not-allowed disabled:opacity-60","aria-label":"Stop dispatcher",children:eI?(0,a.jsx)(i.A,{className:"h-4 w-4 animate-spin"}):(0,a.jsx)($.A,{className:"h-4 w-4"})}):(0,a.jsx)("button",{type:"submit",disabled:!re,className:"inline-flex h-11 w-11 shrink-0 items-center justify-center rounded-full bg-[#f3e8da] text-[#1d1612] transition hover:bg-[#fff3e5] disabled:cursor-not-allowed disabled:bg-[rgba(255,255,255,0.12)] disabled:text-[rgba(255,255,255,0.45)]","aria-label":"Send message",children:eI?(0,a.jsx)(i.A,{className:"h-4 w-4 animate-spin"}):(0,a.jsx)(F.A,{className:"h-4 w-4"})})]})]})]})]}),b?(0,a.jsx)(h.bL,{open:e9,onOpenChange:te,children:(0,a.jsxs)(h.ZL,{children:[(0,a.jsx)(h.hJ,{className:q.A8}),(0,a.jsxs)(h.UC,{className:q.V8,children:[(0,a.jsx)(h.hE,{className:"sr-only",children:"Dispatcher settings"}),(0,a.jsx)(h.VY,{className:"sr-only",children:"Review and adjust the dispatcher runtime and default task handoff preferences for this conversation."}),(0,a.jsxs)("div",{className:"flex min-h-0 flex-1 flex-col",children:[(0,a.jsx)("div",{className:"min-h-0 flex-1 overflow-hidden",children:b.content}),(0,a.jsx)("div",{className:"flex items-center justify-end border-t border-[var(--vk-border)] px-4 py-3",children:(0,a.jsx)(h.bm,{asChild:!0,children:(0,a.jsx)("button",{type:"button",className:"inline-flex h-9 items-center rounded-full border border-[rgba(255,255,255,0.08)] bg-[rgba(255,255,255,0.04)] px-4 text-[13px] text-[var(--vk-text-normal)] transition hover:bg-[rgba(255,255,255,0.08)]",children:"Done"})})})]})]})]})}):null,(0,a.jsx)(h.bL,{open:eX,onOpenChange:e0,children:(0,a.jsxs)(h.ZL,{children:[(0,a.jsx)(h.hJ,{className:q.A8}),(0,a.jsxs)(h.UC,{className:q.V8,children:[(0,a.jsx)(h.hE,{className:"sr-only",children:"Add workspace attachments"}),(0,a.jsx)(h.VY,{className:"sr-only",children:"Search project context files and select workspace attachments to add to the next dispatcher message."}),(0,a.jsxs)("div",{className:"flex min-h-0 flex-1 flex-col",children:[(0,a.jsxs)("div",{className:"border-b border-[var(--vk-border)] px-4 py-3",children:[(0,a.jsx)("p",{className:"text-[14px] font-medium text-[var(--vk-text-strong)]",children:"Add workspace attachments"}),(0,a.jsx)("p",{className:"mt-1 text-[11px] leading-5 text-[var(--vk-text-muted)]",children:"Search the current project context files and attach them directly to this dispatcher turn."})]}),(0,a.jsxs)("div",{className:"border-b border-[var(--vk-border)] px-4 py-3",children:[(0,a.jsx)("label",{className:"block text-[11px] uppercase tracking-[0.08em] text-[var(--vk-text-muted)]",children:"Search"}),(0,a.jsxs)("div",{className:"mt-2 flex items-center gap-2 rounded-[12px] border border-[rgba(255,255,255,0.08)] bg-[rgba(255,255,255,0.03)] px-3 py-2",children:[(0,a.jsx)(w.A,{className:"h-4 w-4 text-[var(--vk-text-muted)]"}),(0,a.jsx)("input",{value:e5,onChange:e=>e1(e.target.value),placeholder:"Filter workspace files",className:"w-full bg-transparent text-[13px] text-[var(--vk-text-normal)] outline-none placeholder:text-[var(--vk-text-muted)]"})]})]}),(0,a.jsx)("div",{className:"min-h-0 flex-1 overflow-y-auto px-4 py-4",children:e2?(0,a.jsxs)("div",{className:"flex h-full items-center justify-center text-[13px] text-[var(--vk-text-muted)]",children:[(0,a.jsx)(i.A,{className:"mr-2 h-4 w-4 animate-spin"}),"Loading workspace files..."]}):e4?(0,a.jsx)("div",{className:"rounded-[12px] border border-[rgba(210,81,81,0.35)] bg-[rgba(210,81,81,0.08)] px-3 py-2 text-[12px] text-[var(--vk-red)]",children:e4}):0===rn.length?(0,a.jsx)("div",{className:"rounded-[12px] border border-[var(--vk-border)] bg-[rgba(255,255,255,0.02)] px-4 py-4 text-[13px] text-[var(--vk-text-muted)]",children:"No matching workspace files."}):(0,a.jsx)("div",{className:"space-y-2",children:rn.map(e=>{let t=eb.includes(e.path);return(0,a.jsxs)("button",{type:"button",onClick:()=>rx(e.path),className:(0,et.cn)("flex w-full items-start gap-3 rounded-[14px] border px-3 py-3 text-left transition",t?"border-[rgba(243,232,218,0.35)] bg-[rgba(243,232,218,0.08)]":"border-[rgba(255,255,255,0.08)] bg-[rgba(255,255,255,0.02)] hover:bg-[rgba(255,255,255,0.05)]"),"aria-pressed":t,children:[(0,a.jsx)("span",{className:"mt-0.5 inline-flex h-5 w-5 shrink-0 items-center justify-center rounded-full border border-[rgba(255,255,255,0.08)] bg-[rgba(0,0,0,0.18)] text-[var(--vk-text-normal)]",children:t?(0,a.jsx)(u.A,{className:"h-3.5 w-3.5"}):(0,a.jsx)(v.A,{className:"h-3.5 w-3.5"})}),(0,a.jsxs)("span",{className:"min-w-0 flex-1",children:[(0,a.jsx)("span",{className:"block truncate text-[13px] font-medium text-[var(--vk-text-normal)]",children:B(e.path,e)}),(0,a.jsx)("span",{className:"mt-1 block truncate text-[11px] text-[var(--vk-text-muted)]",children:e.path})]})]},e.path)})})}),(0,a.jsxs)("div",{className:"flex items-center justify-between border-t border-[var(--vk-border)] px-4 py-3",children:[(0,a.jsxs)("span",{className:"text-[11px] text-[var(--vk-text-muted)]",children:[eb.length," attachment",1===eb.length?"":"s"," selected"]}),(0,a.jsx)("button",{type:"button",onClick:()=>e0(!1),className:"inline-flex h-9 items-center rounded-full border border-[rgba(255,255,255,0.08)] bg-[rgba(255,255,255,0.04)] px-4 text-[13px] text-[var(--vk-text-normal)] transition hover:bg-[rgba(255,255,255,0.08)]",children:"Done"})]})]})]})]})})]})}var eH=r(66423),eB=r(88272),eK=r(64323);function eJ(e,t,r=""){let a=e.metadata?.[t];return"string"==typeof a&&a.trim().length>0?a:r}function ez(e){let t=(e.summary?.trim()||e.metadata.summary?.trim()||"").replace(/\s+/g," ").trim();return t||("needs_input"===e.status?"Waiting for follow-up":"working"===e.status?"Working":`Thread ${e.id.slice(0,8)}`)}function eV({thread:e,deleting:t,error:r,onCancel:n,onConfirm:s}){if("u"<typeof document)return null;let o=ez(e);return(0,l.createPortal)((0,a.jsx)("div",{className:`fixed ${eH.Rn} z-[140] flex items-start justify-center overflow-y-auto bg-black/60 px-3 py-3 sm:items-center`,onClick:()=>{t||n()},children:(0,a.jsxs)("div",{className:`surface-card flex ${eH.Cf} w-full max-w-md flex-col overflow-hidden rounded-[var(--radius-lg)] border border-[var(--vk-border)] bg-[var(--vk-bg-panel)] shadow-[0_28px_90px_rgba(0,0,0,0.55)]`,onClick:e=>e.stopPropagation(),role:"dialog","aria-modal":"true","aria-labelledby":"delete-dispatcher-thread-title",children:[(0,a.jsxs)("div",{className:"border-b border-[var(--vk-border)] px-4 py-3",children:[(0,a.jsx)("h2",{id:"delete-dispatcher-thread-title",className:"text-[17px] font-medium text-[var(--vk-text-strong)]",children:"Delete Dispatcher Thread"}),(0,a.jsxs)("p",{className:"mt-1 text-[12px] text-[var(--vk-text-muted)]",children:["Delete thread ",(0,a.jsx)("span",{className:"font-medium text-[var(--vk-text-normal)]",children:e.id.slice(0,8)})," from this project."]})]}),(0,a.jsxs)("div",{className:"min-h-0 flex-1 space-y-3 overflow-y-auto px-4 py-4",children:[(0,a.jsx)("p",{className:"text-[13px] leading-5 text-[var(--vk-text-normal)]",children:"This removes the dispatcher conversation and its saved thread state. Repository files on disk are not changed."}),(0,a.jsxs)("div",{className:"rounded-[var(--radius-md)] border border-[var(--vk-border)] bg-[rgba(255,255,255,0.03)] px-3 py-2",children:[(0,a.jsx)("p",{className:"text-[11px] font-semibold uppercase tracking-[0.08em] text-[var(--vk-text-muted)]",children:"Thread summary"}),(0,a.jsx)("p",{className:"mt-1 line-clamp-4 text-[13px] leading-5 text-[var(--vk-text-normal)]",children:o})]}),r?(0,a.jsx)("div",{className:"rounded-[var(--radius-md)] border border-[var(--vk-red)]/35 bg-[color:color-mix(in_srgb,var(--vk-red)_12%,transparent)] px-3 py-2 text-[12px] text-[var(--vk-red)]",children:r}):null]}),(0,a.jsxs)("div",{className:"flex items-center justify-end gap-2 border-t border-[var(--vk-border)] px-4 py-3",children:[(0,a.jsx)(ee.$,{type:"button",variant:"ghost",onClick:n,disabled:t,className:"oc-mobile-touch-target",children:"Cancel"}),(0,a.jsxs)(ee.$,{type:"button",variant:"danger",onClick:()=>void s(),disabled:t,className:"oc-mobile-touch-target",children:[t?(0,a.jsx)(i.A,{className:"mr-2 h-4 w-4 animate-spin"}):null,"Delete Thread"]})]})]})}),document.body)}function eW({thread:e,threads:t=[],projectId:r,bridgeId:l,active:d=!0,modelAccess:h={},runtimeModelCatalogs:g={},onSelectThread:f,onDeleteThread:b,onThreadUpdated:v,deletingThreadId:j=null,onStartNewConversation:w,creatingConversation:k=!1,onToggleCollapse:y,onBackToBoard:N,className:S}){let A=(0,s.useMemo)(()=>(0,ei.uP)({isDispatcher:!0,sessionAgent:e.agent??null,legacyMetadataAgent:e.metadata.agent??null,repositoryAgent:null}),[e.agent,e.metadata.agent]),C=(0,s.useMemo)(()=>e.model?.trim()||eJ(e,"model"),[e]),E=(0,s.useMemo)(()=>e.reasoningEffort?.trim()||eJ(e,"reasoningEffort"),[e]),M=(0,s.useMemo)(()=>eJ(e,"acpImplementationAgent","codex"),[e]),L=(0,s.useMemo)(()=>eJ(e,"acpImplementationModel"),[e]),_=(0,s.useMemo)(()=>eJ(e,"acpImplementationReasoningEffort"),[e]),[I,$]=(0,s.useState)(A),[R,T]=(0,s.useState)(()=>(0,eB.c0)(A,h,g,C||null,E||null)),[P,D]=(0,s.useState)(M),[F,O]=(0,s.useState)(!1),[q,H]=(0,s.useState)(null),[B,K]=(0,s.useState)(null),[J,z]=(0,s.useState)(null),[V,W]=(0,s.useState)(()=>(0,eB.c0)(M,h,g,L||null,_||null)),[Y,G]=(0,s.useState)(!1),Q=Object.keys(g).length>0,Z=(0,s.useMemo)(()=>(0,ei.Ek)({projectId:r,bridgeId:l,threadId:e.id}),[l,r,e.id]),X=(0,s.useRef)(Z);X.current=Z;let ee=(0,s.useRef)(e),et=(0,s.useCallback)(e=>{let t=(0,ei.uP)({isDispatcher:!0,sessionAgent:e.agent??null,legacyMetadataAgent:e.metadata.agent??null,repositoryAgent:null}),r=e.model?.trim()||eJ(e,"model"),a=e.reasoningEffort?.trim()||eJ(e,"reasoningEffort"),n=eJ(e,"acpImplementationAgent","codex"),s=eJ(e,"acpImplementationModel"),l=eJ(e,"acpImplementationReasoningEffort");$(t),T((0,eB.c0)(t,h,g,r||null,a||null)),D(n),W((0,eB.c0)(n,h,g,s||null,l||null))},[h,g]);(0,s.useEffect)(()=>{ee.current=e},[e]),(0,s.useEffect)(()=>{Y||et(e)},[M,L,_,A,C,E,et,e.id,Y]),(0,s.useEffect)(()=>{z(null),G(el.current?.isPending(Z)??!1)},[Z]);let er=(0,s.useMemo)(()=>t.find(e=>e.id===q)??null,[q,t]);(0,s.useEffect)(()=>{q&&!er&&(H(null),K(null))},[er,q]);let ea=(0,s.useMemo)(()=>`threadId=${encodeURIComponent(e.id)}`,[e.id]),en=t.length>0&&(t.length>1||!!b),es=(0,s.useRef)(v);es.current=v;let el=(0,s.useRef)(null);el.current||(el.current=(0,ei.Kl)({getScopeKey:e=>(0,ei.Ek)(e),send:e=>(0,ei.IF)(e),onSuccess:(e,t)=>{(0,ei.Ek)(t)===X.current&&(z(null),e?.id&&(ee.current=e)),e?.id&&es.current?.(e)},onError:(e,t)=>{if((0,ei.Ek)(t)!==X.current)return;let r=ee.current;z(e instanceof Error?e.message:"Failed to update dispatcher preferences"),et(r)},onPendingChange:(e,t)=>{e===X.current&&G(t)}})),(0,s.useEffect)(()=>()=>{el.current?.dispose()},[]);let ed=(0,s.useCallback)((t,a,n,s)=>{z(null),el.current?.schedule({projectId:r,bridgeId:l,threadId:e.id,dispatcherAgent:t,dispatcherModel:(0,eB.xb)(a)??"",dispatcherReasoningEffort:(0,eB.aB)(a)??"",implementationAgent:n,implementationModel:(0,eB.xb)(s)??"",implementationReasoningEffort:(0,eB.aB)(s)??""})},[l,r,e.id]),ec=(0,s.useCallback)(e=>{let t=(0,eB.c0)(e,h,g,null,null);$(e),T(t),ed(e,t,P,V)},[P,V,h,ed,g]),eu=(0,s.useCallback)(e=>{T(e),ed(I,e,P,V)},[P,V,ed,I]),em=(0,s.useCallback)(e=>{let t=(0,eB.c0)(e,h,g,null,null);D(e),W(t),ed(I,R,e,t)},[h,ed,I,g,R]),ex=(0,s.useCallback)(e=>{W(e),ed(I,R,P,e)},[P,ed,I,R]),ep=(0,s.useCallback)(async()=>{if(er&&b){K(null);try{await b(er.id),H(null)}catch(e){K(e instanceof Error?e.message:"Failed to delete dispatcher thread")}}},[er,b]),eh=(0,a.jsxs)(a.Fragment,{children:[N?(0,a.jsx)("button",{type:"button",onClick:N,className:"inline-flex h-7 w-7 items-center justify-center rounded-[6px] text-[var(--vk-text-muted)] hover:bg-[var(--vk-bg-hover)] hover:text-[var(--vk-text-normal)] xl:hidden","aria-label":"Back to board",title:"Back to board",children:(0,a.jsx)(o.A,{className:"h-4 w-4"})}):null,en?(0,a.jsxs)(n.bL,{open:F,onOpenChange:O,children:[(0,a.jsx)(n.l9,{asChild:!0,children:(0,a.jsx)("button",{type:"button",className:"inline-flex h-7 w-7 items-center justify-center rounded-[6px] text-[var(--vk-text-muted)] hover:bg-[var(--vk-bg-hover)] hover:text-[var(--vk-text-normal)] sm:h-6 sm:w-6 sm:rounded-[3px]","aria-label":"Open dispatcher threads",title:"Open dispatcher threads",children:(0,a.jsx)(c,{className:"h-3.5 w-3.5"})})}),(0,a.jsxs)(U.ww,{align:"end",className:"w-[calc(100vw-1rem)] max-w-[26rem] rounded-[12px] border border-[rgba(255,255,255,0.08)] bg-[#1c1a19] p-2 shadow-[0_18px_50px_rgba(0,0,0,0.45)]",children:[(0,a.jsx)("div",{className:"px-3 pb-2 pt-1 text-[11px] font-semibold uppercase tracking-[0.08em] text-[rgba(255,255,255,0.58)]",children:"Threads"}),(0,a.jsx)("div",{className:"space-y-1 pr-1",children:t.map(t=>{let r=t.id===e.id,s=j===t.id,l=ez(t);return(0,a.jsxs)("div",{className:"flex items-stretch gap-2",children:[(0,a.jsx)(n.q7,{asChild:!0,children:(0,a.jsxs)("button",{type:"button",onClick:()=>{f?.(t.id),O(!1)},disabled:s,className:"flex min-h-[64px] min-w-0 flex-1 items-start gap-3 rounded-[10px] px-3 py-3 text-left text-[13px] text-[#f3efea] outline-none transition hover:bg-[rgba(255,255,255,0.06)] focus:bg-[rgba(255,255,255,0.06)] disabled:cursor-not-allowed disabled:opacity-60",children:[(0,a.jsx)("span",{className:"mt-0.5 flex h-5 w-5 shrink-0 items-center justify-center rounded-full border border-[rgba(255,255,255,0.08)] bg-[rgba(255,255,255,0.04)] text-[rgba(255,255,255,0.72)]",children:r?(0,a.jsx)(u.A,{className:"h-3 w-3"}):(0,a.jsx)(c,{className:"h-3 w-3"})}),(0,a.jsxs)("span",{className:"min-w-0 flex-1",children:[(0,a.jsx)("span",{className:"block line-clamp-2 break-words text-[13px] font-medium leading-5",children:l}),(0,a.jsxs)("span",{className:"mt-1 flex flex-wrap items-center gap-x-2 gap-y-1 text-[11px] text-[rgba(255,255,255,0.58)]",children:[(0,a.jsx)("span",{children:function(e){let t=new Date(e).getTime();if(!Number.isFinite(t))return"Recently";let r=Math.max(0,Math.round((Date.now()-t)/1e3));return r<60?"Just now":r<3600?`${Math.floor(r/60)}m ago`:r<86400?`${Math.floor(r/3600)}h ago`:`${Math.floor(r/86400)}d ago`}(t.lastActivityAt)}),(0,a.jsx)("span",{className:"truncate",children:t.id.slice(0,8)})]})]})]})}),b?(0,a.jsx)("button",{type:"button",onClick:()=>{O(!1),K(null),H(t.id)},disabled:!!j,className:"inline-flex w-11 shrink-0 items-center justify-center rounded-[10px] border border-[rgba(255,255,255,0.08)] bg-[rgba(255,255,255,0.03)] text-[rgba(255,255,255,0.68)] transition hover:border-[rgba(210,81,81,0.4)] hover:bg-[rgba(210,81,81,0.12)] hover:text-[#f08b8b] disabled:cursor-not-allowed disabled:opacity-50","aria-label":`Delete dispatcher thread ${t.id.slice(0,8)}`,title:"Delete thread",children:s?(0,a.jsx)(i.A,{className:"h-4 w-4 animate-spin"}):(0,a.jsx)(m.A,{className:"h-4 w-4"})}):null]},t.id)})})]})]}):null,w?(0,a.jsx)("button",{type:"button",onClick:w,disabled:k,className:"inline-flex h-7 w-7 items-center justify-center rounded-[6px] text-[var(--vk-text-muted)] hover:bg-[var(--vk-bg-hover)] hover:text-[var(--vk-text-normal)] disabled:cursor-not-allowed disabled:opacity-60 sm:h-6 sm:w-6 sm:rounded-[3px]","aria-label":"Start new dispatcher thread",title:"Start new dispatcher thread",children:k?(0,a.jsx)(i.A,{className:"h-3.5 w-3.5 animate-spin"}):(0,a.jsx)(x,{className:"h-3.5 w-3.5"})}):null]}),eg=(0,s.useMemo)(()=>{var e;let t,r,a;return e={agent:I,model:(0,eB.xb)(R)??R.catalogModel,reasoningEffort:(0,eB.aB)(R)??R.reasoningEffort},t=[(0,eo.h7)(e.agent)?.label??e.agent],r=e.model?.trim()?(0,eK.M)(e.agent,e.model.trim()):null,a=function(e){let t=e?.trim().toLowerCase()??"";if(!t)return null;switch(t){case"low":return"Low";case"medium":return"Medium";case"high":return"High";case"max":case"xhigh":case"extra-high":case"extra_high":case"extra high":return"Max";default:return t.split(/[_-\s]+/g).filter(Boolean).map(e=>e[0]?.toUpperCase()+e.slice(1)).join(" ")}}(e.reasoningEffort),r&&t.push(r),a&&t.push(a),t.join(" \xb7 ")},[I,R]),ef=Q?(0,a.jsxs)("div",{className:"space-y-2",children:[(0,a.jsxs)("div",{children:[(0,a.jsx)("p",{className:"mb-1 text-[10px] font-semibold uppercase tracking-[0.08em] text-[var(--vk-text-muted)]",children:"Dispatcher runtime"}),(0,a.jsx)(p.s,{agent:I,agentOptions:ei.es,agentLabel:"Runtime agent",modelSelection:R,modelAccess:h,runtimeModelCatalogs:g,disabled:Y,onAgentChange:ec,onModelSelectionChange:eu})]}),(0,a.jsxs)("div",{children:[(0,a.jsx)("p",{className:"mb-1 text-[10px] font-semibold uppercase tracking-[0.08em] text-[var(--vk-text-muted)]",children:"Default task handoff"}),(0,a.jsx)(p.s,{agent:P,agentOptions:ei.Qs,agentLabel:"Handoff agent",modelSelection:V,modelAccess:h,runtimeModelCatalogs:g,disabled:Y,onAgentChange:em,onModelSelectionChange:ex})]}),J?(0,a.jsx)("div",{className:"rounded-[10px] border border-[rgba(210,81,81,0.35)] bg-[rgba(210,81,81,0.08)] px-3 py-2 text-[12px] text-[#d25151]",children:J}):null]}):null,eb=(0,a.jsxs)("div",{className:"flex min-h-0 flex-1 flex-col",children:[(0,a.jsxs)("div",{className:"border-b border-[var(--vk-border)] px-4 py-3",children:[(0,a.jsx)("p",{className:"text-[14px] font-medium text-[var(--vk-text-strong)]",children:"Dispatcher settings"}),(0,a.jsx)("p",{className:"mt-1 text-[11px] leading-5 text-[var(--vk-text-muted)]",children:"Keep runtime changes close to the composer. Expand task handoff settings only when you need to change the default implementation agent."})]}),(0,a.jsxs)("div",{className:"min-h-0 flex-1 overflow-y-auto px-4 py-4",children:[(0,a.jsxs)("div",{className:"rounded-[16px] border border-[var(--vk-border)] bg-[rgba(0,0,0,0.16)] p-4",children:[(0,a.jsxs)("div",{className:"flex items-center justify-between gap-3",children:[(0,a.jsxs)("div",{children:[(0,a.jsx)("p",{className:"text-[11px] font-semibold uppercase tracking-[0.08em] text-[var(--vk-text-muted)]",children:"Dispatcher runtime"}),(0,a.jsx)("p",{className:"mt-1 text-[13px] text-[var(--vk-text-normal)]",children:eg})]}),Y?(0,a.jsxs)("span",{className:"inline-flex items-center gap-1 rounded-full border border-[rgba(255,255,255,0.08)] bg-[rgba(255,255,255,0.04)] px-2 py-1 text-[10px] font-medium uppercase tracking-[0.08em] text-[var(--vk-text-muted)]",children:[(0,a.jsx)(i.A,{className:"h-3 w-3 animate-spin"}),"Saving"]}):null]}),(0,a.jsx)("div",{className:"mt-3",children:(0,a.jsx)(p.s,{agent:I,agentOptions:ei.es,agentLabel:"Runtime agent",modelSelection:R,modelAccess:h,runtimeModelCatalogs:g,disabled:Y,onAgentChange:ec,onModelSelectionChange:eu})})]}),(0,a.jsxs)("details",{className:"mt-3 rounded-[16px] border border-[var(--vk-border)] bg-[rgba(255,255,255,0.02)]",children:[(0,a.jsx)("summary",{className:"cursor-pointer list-none px-4 py-3 text-[12px] font-medium text-[var(--vk-text-normal)] [&::-webkit-details-marker]:hidden",children:(0,a.jsxs)("span",{className:"flex items-center justify-between gap-3",children:[(0,a.jsx)("span",{children:"Advanced task handoff"}),(0,a.jsx)("span",{className:"text-[11px] text-[var(--vk-text-muted)]",children:(0,eo.h7)(P)?.label??P})]})}),(0,a.jsx)("div",{className:"border-t border-[var(--vk-border)] px-4 py-4",children:(0,a.jsx)(p.s,{agent:P,agentOptions:ei.Qs,agentLabel:"Handoff agent",modelSelection:V,modelAccess:h,runtimeModelCatalogs:g,disabled:Y,onAgentChange:em,onModelSelectionChange:ex})})]}),J?(0,a.jsx)("div",{className:"mt-3 rounded-[12px] border border-[rgba(210,81,81,0.35)] bg-[rgba(210,81,81,0.08)] px-3 py-2 text-[12px] text-[#d25151]",children:J}):null]})]});return(0,a.jsxs)(a.Fragment,{children:[(0,a.jsx)(eq,{session:e,bridgeId:l,active:d,onToggleCollapse:y,className:S,hideOpenSessionAction:!0,hideRepositoryControls:!0,hideSessionStatusBadge:!0,headerActions:eh,composerToolbar:ef,composerSettings:Q?{summary:eg,pending:Y,error:J,content:eb}:null,apiPaths:{feed:`/api/projects/${encodeURIComponent(r)}/dispatcher/feed?limit=120&${ea}`,stream:`/api/projects/${encodeURIComponent(r)}/dispatcher/feed/stream?limit=120&${ea}`,send:`/api/projects/${encodeURIComponent(r)}/dispatcher/send?${ea}`,approve:`/api/projects/${encodeURIComponent(r)}/dispatcher/approve?${ea}`,reject:`/api/projects/${encodeURIComponent(r)}/dispatcher/reject?${ea}`,interrupt:`/api/projects/${encodeURIComponent(r)}/dispatcher/interrupt?${ea}`,integration:`/api/projects/${encodeURIComponent(r)}/dispatcher/integration?${ea}`}}),er?(0,a.jsx)(eV,{thread:er,deleting:j===er.id,error:B,onCancel:()=>{j||(H(null),K(null))},onConfirm:ep}):null]})}},52915:(e,t,r)=>{r.d(t,{A:()=>a});let a=(0,r(39789).A)("chevron-up",[["path",{d:"m18 15-6-6-6 6",key:"153udz"}]])},63762:(e,t,r)=>{r.d(t,{Ek:()=>p,IF:()=>x,Kl:()=>h,Qs:()=>l,Vx:()=>c,es:()=>s,qK:()=>u,uP:()=>m});var a=r(5739),n=r(31404);let s=["codex","claude-code","gemini","openclaw","letta"],l=["codex","claude-code","gemini","cursor-cli","openclaw","pi","letta"],i=new Set(s),o=new Set(l);function d(e){let t=(0,a.q)(e??"");if(!t)return null;switch(t){case"claude":case"claude-code":case"claudecode":return"claude-code";case"cursor":case"cursor-agent":case"cursor-cli":return"cursor-cli";case"letta":case"letta-code":return"letta";default:return t}}function c(e){let t=function(e,t="codex"){let r,a=d(e);return a&&o.has(a)?a:null!==(r=d(t))&&o.has(r)?d(t)??"codex":"codex"}(e);return{runtimeAgent:function(e,t="codex"){let r,a=d(e);return a&&i.has(a)?a:null!==(r=d(t))&&i.has(r)?d(t)??"codex":"codex"}(e),implementationAgent:t}}function u(e){return d(e.sessionAgent)??d(e.legacyMetadataAgent)}function m(e){return e.isDispatcher?u(e)??"codex":d(e.repositoryAgent)??u(e)??"codex"}async function x(e,t={}){let r=t.fetchImpl??fetch,a=t.timeoutMs??15e3,s=new AbortController,l=globalThis.setTimeout(()=>s.abort(),a);try{let t=await r((0,n.S)(`/api/projects/${e.projectId}/dispatcher/preferences?threadId=${encodeURIComponent(e.threadId)}`,e.bridgeId),{method:"PATCH",headers:{"Content-Type":"application/json"},body:JSON.stringify({dispatcherAgent:e.dispatcherAgent,dispatcherModel:e.dispatcherModel,dispatcherReasoningEffort:e.dispatcherReasoningEffort,implementationAgent:e.implementationAgent,implementationModel:e.implementationModel,implementationReasoningEffort:e.implementationReasoningEffort}),signal:s.signal}),a=await t.json().catch(()=>null);if(!t.ok)throw Error(a?.error??"Failed to update dispatcher preferences");return a?.thread??null}catch(e){if(e instanceof Error&&"AbortError"===e.name)throw Error(`Updating dispatcher preferences timed out after ${a%1e3==0?`${a/1e3}s`:`${a}ms`}. The backend may be busy.`);throw e}finally{clearTimeout(l)}}function p(e){return JSON.stringify([e.projectId.trim(),e.bridgeId?.trim()??"",e.threadId.trim()])}function h(e){let t=!1,r=new Map,a=new Map,n=[],s=()=>{for(let e of r.values())if(e.inFlight||void 0!==e.pendingPayload)return!0;return!1},l=t=>{let n=r.get(t),s=!!(n?.inFlight||n?.pendingPayload!==void 0);s!==(a.get(t)??!1)&&(s?a.set(t,!0):a.delete(t),e.onPendingChange?.(t,s))},i=()=>{if(s())return;let e=n;for(let t of(n=[],e))t()},o=async n=>{if(t)return void i();let s=r.get(n);if(!s||s.inFlight||void 0===s.pendingPayload)return void i();let d=s.pendingPayload;s.pendingPayload=void 0,s.inFlight=!0,l(n);try{let r=await e.send(d);t||e.onSuccess?.(r,d)}catch(r){t||e.onError?.(r,d)}finally{s.inFlight=!1,t?(r.clear(),a.clear()):void 0!==s.pendingPayload?o(n):(r.delete(n),l(n)),i()}};return{schedule(a){if(t)return;let n=e.getScopeKey(a),s=r.get(n)??{inFlight:!1,pendingPayload:void 0};s.pendingPayload=a,r.set(n,s),l(n),o(n)},isPending(e){let t=r.get(e);return!!(t?.inFlight||t?.pendingPayload!==void 0)},waitForIdle:()=>s()?new Promise(e=>{n.push(e)}):Promise.resolve(),dispose(){t=!0;let n=[...a.keys()];for(let t of(r.clear(),a.clear(),n))e.onPendingChange?.(t,!1);i()}}}},64323:(e,t,r)=>{r.d(t,{M:()=>n});var a=r(5739);function n(e,t){let r=t.trim(),n=(0,a.q)(e);if(!r)return r;if("claude-code"===n){let e=r.toLowerCase();if("opus"===e)return"Claude Opus";if("sonnet"===e)return"Claude Sonnet";if("haiku"===e)return"Claude Haiku";let t=e.match(/^claude-(sonnet|opus|haiku)-(\d+)-(\d+)(?:-\d{8})?$/);if(t){let e=t[1];return`Claude ${e[0]?.toUpperCase()+e.slice(1)} ${t[2]}.${t[3]}`}}return r.split(/[-_]+/g).filter(Boolean).map(e=>"gpt"===e.toLowerCase()?"GPT":/^\d+(?:\.\d+)?$/.test(e)?e:e[0]?.toUpperCase()+e.slice(1)).join("-")}r(76196)},93035:(e,t,r)=>{r.d(t,{A:()=>a});let a=(0,r(39789).A)("trash-2",[["path",{d:"M10 11v6",key:"nco0om"}],["path",{d:"M14 11v6",key:"outv1u"}],["path",{d:"M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6",key:"miytrc"}],["path",{d:"M3 6h18",key:"d0wm0j"}],["path",{d:"M8 6V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2",key:"e791ji"}]])}}]);