agent-relay-server 0.90.0 → 0.91.1

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 (63) hide show
  1. package/docs/openapi.json +1 -1
  2. package/package.json +2 -2
  3. package/public/assets/{MessageBubble-bI9fFi55.js → MessageBubble-Cl3gC5sO.js} +2 -2
  4. package/public/assets/{MessageBubble-bI9fFi55.js.map → MessageBubble-Cl3gC5sO.js.map} +1 -1
  5. package/public/assets/{PlanGraphPanel-a3Z57nIZ.js → PlanGraphPanel-BAu-lTm9.js} +2 -2
  6. package/public/assets/{PlanGraphPanel-a3Z57nIZ.js.map → PlanGraphPanel-BAu-lTm9.js.map} +1 -1
  7. package/public/assets/{activity-VTlBVIox.js → activity-navjipA_.js} +2 -2
  8. package/public/assets/{activity-VTlBVIox.js.map → activity-navjipA_.js.map} +1 -1
  9. package/public/assets/{agents-C2TNRCn1.js → agents-B09rJRik.js} +2 -2
  10. package/public/assets/{agents-C2TNRCn1.js.map → agents-B09rJRik.js.map} +1 -1
  11. package/public/assets/{automation-CUSyRZla.js → automation-BsXT9mKj.js} +2 -2
  12. package/public/assets/{automation-CUSyRZla.js.map → automation-BsXT9mKj.js.map} +1 -1
  13. package/public/assets/chat-Cmv-YVII.js +2 -0
  14. package/public/assets/chat-Cmv-YVII.js.map +1 -0
  15. package/public/assets/{formatted-body-impl-DBbmythT.js → formatted-body-impl-CwziXint.js} +2 -2
  16. package/public/assets/{formatted-body-impl-DBbmythT.js.map → formatted-body-impl-CwziXint.js.map} +1 -1
  17. package/public/assets/{index-CiBdEE9x.js → index-Dm1zlklN.js} +5 -5
  18. package/public/assets/{index-CiBdEE9x.js.map → index-Dm1zlklN.js.map} +1 -1
  19. package/public/assets/{insights-9P_MGbMS.js → insights-CGH0lI9i.js} +2 -2
  20. package/public/assets/{insights-9P_MGbMS.js.map → insights-CGH0lI9i.js.map} +1 -1
  21. package/public/assets/{maintenance-CA1XujU3.js → maintenance-BhpfPv6u.js} +2 -2
  22. package/public/assets/{maintenance-CA1XujU3.js.map → maintenance-BhpfPv6u.js.map} +1 -1
  23. package/public/assets/{managed-agents-DCfSlqW7.js → managed-agents-CwjcuvR6.js} +2 -2
  24. package/public/assets/{managed-agents-DCfSlqW7.js.map → managed-agents-CwjcuvR6.js.map} +1 -1
  25. package/public/assets/{markdown-preview-impl-MgZ3Nr7K.js → markdown-preview-impl-KBRWvxHt.js} +2 -2
  26. package/public/assets/{markdown-preview-impl-MgZ3Nr7K.js.map → markdown-preview-impl-KBRWvxHt.js.map} +1 -1
  27. package/public/assets/{memory-DatJLjrc.js → memory-CgpkkEKK.js} +2 -2
  28. package/public/assets/{memory-DatJLjrc.js.map → memory-CgpkkEKK.js.map} +1 -1
  29. package/public/assets/{messages-CQsmbtzx.js → messages-BV1z5tMO.js} +2 -2
  30. package/public/assets/{messages-CQsmbtzx.js.map → messages-BV1z5tMO.js.map} +1 -1
  31. package/public/assets/{orchestrators-CAWYWXmh.js → orchestrators-Bv6T_n-l.js} +2 -2
  32. package/public/assets/{orchestrators-CAWYWXmh.js.map → orchestrators-Bv6T_n-l.js.map} +1 -1
  33. package/public/assets/{overview-EqnqXVUb.js → overview-BdErDjo5.js} +2 -2
  34. package/public/assets/{overview-EqnqXVUb.js.map → overview-BdErDjo5.js.map} +1 -1
  35. package/public/assets/{pairs-BfKenirO.js → pairs-BpzbJ5OL.js} +2 -2
  36. package/public/assets/{pairs-BfKenirO.js.map → pairs-BpzbJ5OL.js.map} +1 -1
  37. package/public/assets/{security-CJVJ9MgS.js → security-CRsIxNpi.js} +2 -2
  38. package/public/assets/{security-CJVJ9MgS.js.map → security-CRsIxNpi.js.map} +1 -1
  39. package/public/assets/{select-BcmIzk-E.js → select-DmZ1eEzM.js} +2 -2
  40. package/public/assets/{select-BcmIzk-E.js.map → select-DmZ1eEzM.js.map} +1 -1
  41. package/public/assets/{settings-BWO-UyHv.js → settings-BqmYUpOu.js} +2 -2
  42. package/public/assets/{settings-BWO-UyHv.js.map → settings-BqmYUpOu.js.map} +1 -1
  43. package/public/assets/{tasks-DTdI_MJi.js → tasks-DZ8C8K2N.js} +2 -2
  44. package/public/assets/{tasks-DTdI_MJi.js.map → tasks-DZ8C8K2N.js.map} +1 -1
  45. package/public/assets/{teams-C9C3KVaV.js → teams-VmX_6z_9.js} +2 -2
  46. package/public/assets/{teams-C9C3KVaV.js.map → teams-VmX_6z_9.js.map} +1 -1
  47. package/public/assets/{terminal-viewer-impl-BDBa94-B.js → terminal-viewer-impl-BJilWDSR.js} +2 -2
  48. package/public/assets/{terminal-viewer-impl-BDBa94-B.js.map → terminal-viewer-impl-BJilWDSR.js.map} +1 -1
  49. package/public/assets/{user-avatar-BL-CJwnn.js → user-avatar-jqI4eKDf.js} +2 -2
  50. package/public/assets/{user-avatar-BL-CJwnn.js.map → user-avatar-jqI4eKDf.js.map} +1 -1
  51. package/public/assets/{work-queue-Vc_2-4DG.js → work-queue-lFDBNpds.js} +2 -2
  52. package/public/assets/{work-queue-Vc_2-4DG.js.map → work-queue-lFDBNpds.js.map} +1 -1
  53. package/public/index.html +1 -1
  54. package/runner/src/adapter.ts +4 -0
  55. package/src/config-store.ts +14 -0
  56. package/src/mcp/tools-spawn.ts +3 -0
  57. package/src/routes/agents-spawn.ts +2 -0
  58. package/src/self-resume.ts +21 -5
  59. package/src/services/register-agent.ts +4 -1
  60. package/src/services/spawn-agent.ts +18 -0
  61. package/src/shared-mcp.ts +57 -0
  62. package/public/assets/chat-BEssCn_H.js +0 -2
  63. package/public/assets/chat-BEssCn_H.js.map +0 -1
@@ -1,4 +1,4 @@
1
- const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["./bundle-web-CXNb85wK.js","./chunk-CilyBKbf.js","./preload-helper-CP_edrrL.js","./lib-VSpj1Yz-.js","./markdown-preview-impl-MgZ3Nr7K.js","./lib-DdCM7GfN.js","./lucide-react-CsPXvXMC.js","./terminal-viewer-impl-BDBa94-B.js","./store-DsqUEZOf.js","./display-CWMHll1J.js","./button-BAwKuRIq.js","./dist-CL2npVDe.js","./use-keyboard-viewport-DABeIMEJ.js","./terminal-viewer-impl-BrP-ENHg.css","./formatted-body-impl-DBbmythT.js","./overview-EqnqXVUb.js","./badge-CK6ejiOh.js","./card-DDxxo-Fo.js","./chat-BEssCn_H.js","./react-dom-CEl58oxP.js","./MessageBubble-bI9fFi55.js","./user-avatar-BL-CJwnn.js","./PlanGraphPanel-a3Z57nIZ.js","./branch-state-badge-Q4W68jxj.js","./copy-button-D3B_s7J7.js","./input-CLW2gDUM.js","./agents-C2TNRCn1.js","./dist-CnRv0y2x.js","./dist-ERYvDMdt.js","./dist-CAFUEpK2.js","./dist-CoRABSO3.js","./dist-YQVQrtnc.js","./es2015-Yto-4EBw.js","./dist-YjP8Gd1C.js","./dist-Dmiv1tSO.js","./managed-agents-DCfSlqW7.js","./teams-C9C3KVaV.js","./select-BcmIzk-E.js","./dist-D33pM1xy.js","./dist-DLsSqk6h.js","./dist-DyqEeyBI.js","./dist-CIbvPDQV.js","./agent-profiles-CLJNeVxc.js","./orchestrators-CAWYWXmh.js","./workspaces-C740m1ys.js","./channels-BQbNtrtF.js","./connectors-CmARSKoV.js","./integrations-D9Cx-7ma.js","./security-CJVJ9MgS.js","./memory-DatJLjrc.js","./activity-VTlBVIox.js","./pairs-BfKenirO.js","./messages-CQsmbtzx.js","./work-queue-Vc_2-4DG.js","./tasks-DTdI_MJi.js","./automation-CUSyRZla.js","./analytics-C1F28oqr.js","./themes-mW9zZP4O.js","./insights-9P_MGbMS.js","./projects-hU5KGW_T.js","./maintenance-CA1XujU3.js","./settings-BWO-UyHv.js"])))=>i.map(i=>d[i]);
1
+ const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["./bundle-web-CXNb85wK.js","./chunk-CilyBKbf.js","./preload-helper-CP_edrrL.js","./lib-VSpj1Yz-.js","./markdown-preview-impl-KBRWvxHt.js","./lib-DdCM7GfN.js","./lucide-react-CsPXvXMC.js","./terminal-viewer-impl-BJilWDSR.js","./store-DsqUEZOf.js","./display-CWMHll1J.js","./button-BAwKuRIq.js","./dist-CL2npVDe.js","./use-keyboard-viewport-DABeIMEJ.js","./terminal-viewer-impl-BrP-ENHg.css","./formatted-body-impl-CwziXint.js","./overview-BdErDjo5.js","./badge-CK6ejiOh.js","./card-DDxxo-Fo.js","./chat-Cmv-YVII.js","./react-dom-CEl58oxP.js","./MessageBubble-Cl3gC5sO.js","./user-avatar-jqI4eKDf.js","./PlanGraphPanel-BAu-lTm9.js","./branch-state-badge-Q4W68jxj.js","./copy-button-D3B_s7J7.js","./input-CLW2gDUM.js","./agents-B09rJRik.js","./dist-CnRv0y2x.js","./dist-ERYvDMdt.js","./dist-CAFUEpK2.js","./dist-CoRABSO3.js","./dist-YQVQrtnc.js","./es2015-Yto-4EBw.js","./dist-YjP8Gd1C.js","./dist-Dmiv1tSO.js","./managed-agents-CwjcuvR6.js","./teams-VmX_6z_9.js","./select-DmZ1eEzM.js","./dist-D33pM1xy.js","./dist-DLsSqk6h.js","./dist-DyqEeyBI.js","./dist-CIbvPDQV.js","./agent-profiles-CLJNeVxc.js","./orchestrators-Bv6T_n-l.js","./workspaces-C740m1ys.js","./channels-BQbNtrtF.js","./connectors-CmARSKoV.js","./integrations-D9Cx-7ma.js","./security-CRsIxNpi.js","./memory-CgpkkEKK.js","./activity-navjipA_.js","./pairs-BpzbJ5OL.js","./messages-BV1z5tMO.js","./work-queue-lFDBNpds.js","./tasks-DZ8C8K2N.js","./automation-BsXT9mKj.js","./analytics-C1F28oqr.js","./themes-mW9zZP4O.js","./insights-CGH0lI9i.js","./projects-hU5KGW_T.js","./maintenance-BhpfPv6u.js","./settings-BqmYUpOu.js"])))=>i.map(i=>d[i]);
2
2
  import{r as e,t}from"./chunk-CilyBKbf.js";import{$t as n,A as r,An as i,At as a,B as o,Bt as s,C as c,Cn as l,D as u,Dn as d,En as f,Et as p,F as m,Ft as h,Gn as g,Hn as _,Ht as v,I as y,In as b,It as x,K as S,Kt as C,L as ee,M as w,O as te,Ot as ne,P as re,Q as ie,Qt as ae,R as oe,S as se,Sn as T,T as E,U as ce,Ut as le,V as ue,Vn as de,W as fe,Wn as D,Wt as pe,Xn as me,Y as he,Yt as ge,Z as _e,_ as ve,a as ye,bt as be,ct as xe,dt as Se,et as O,f as Ce,fn as we,ft as Te,g as Ee,gn as De,gt as Oe,h as ke,hn as Ae,ht as je,i as Me,in as Ne,jt as Pe,kn as Fe,kt as Ie,l as Le,lt as Re,m as ze,mn as Be,mt as Ve,n as He,nn as Ue,nt as k,o as We,on as Ge,r as Ke,rr as qe,rt as Je,sn as Ye,st as Xe,t as Ze,u as Qe,un as $e,ut as et,vn as tt,w as nt,wn as rt,xn as it,xt as at,z as ot}from"./lucide-react-CsPXvXMC.js";import{t as st}from"./react-dom-CEl58oxP.js";import{a as ct,c as lt,l as ut,o as dt,t as A,u as ft}from"./store-DsqUEZOf.js";import{B as pt,C as mt,D as ht,E as gt,G as _t,J as vt,K as yt,O as bt,S as xt,T as St,W as Ct,X as wt,Y as Tt,a as Et,c as Dt,d as j,et as Ot,f as kt,ft as At,h as jt,ht as Mt,i as Nt,it as Pt,j as Ft,k as It,m as Lt,mt as Rt,n as zt,nt as Bt,o as Vt,p as Ht,q as Ut,r as Wt,t as Gt,tt as Kt,u as qt,w as Jt,x as Yt,y as Xt}from"./display-CWMHll1J.js";import{n as Zt,t as Qt}from"./themes-mW9zZP4O.js";import{a as $t,i as en,o as tn,r as nn,t as rn}from"./dist-CL2npVDe.js";import{n as an,t as M}from"./dist-CAFUEpK2.js";import{i as on,n as N,r as sn,t as cn}from"./dist-ERYvDMdt.js";import{t as ln}from"./dist-DLsSqk6h.js";import{t as un}from"./dist-Dmiv1tSO.js";import{t as dn}from"./dist-YjP8Gd1C.js";import{a as fn,i as pn,n as mn,o as hn,r as gn,s as _n,t as vn}from"./es2015-Yto-4EBw.js";import{t as yn}from"./dist-DyqEeyBI.js";import{t as bn}from"./dist-CoRABSO3.js";import{t as xn}from"./dist-CIbvPDQV.js";import{t as Sn}from"./dist-YQVQrtnc.js";import{a as Cn,i as wn,n as Tn,r as En,t as Dn}from"./dist-CnRv0y2x.js";import{t as On}from"./dist-D33pM1xy.js";import{t as P}from"./badge-CK6ejiOh.js";import{t as F}from"./button-BAwKuRIq.js";import{t as I}from"./input-CLW2gDUM.js";import{t as kn}from"./copy-button-D3B_s7J7.js";import{t as L}from"./preload-helper-CP_edrrL.js";(function(){let e=document.createElement(`link`).relList;if(e&&e.supports&&e.supports(`modulepreload`))return;for(let e of document.querySelectorAll(`link[rel="modulepreload"]`))n(e);new MutationObserver(e=>{for(let t of e)if(t.type===`childList`)for(let e of t.addedNodes)e.tagName===`LINK`&&e.rel===`modulepreload`&&n(e)}).observe(document,{childList:!0,subtree:!0});function t(e){let t={};return e.integrity&&(t.integrity=e.integrity),e.referrerPolicy&&(t.referrerPolicy=e.referrerPolicy),e.crossOrigin===`use-credentials`?t.credentials=`include`:e.crossOrigin===`anonymous`?t.credentials=`omit`:t.credentials=`same-origin`,t}function n(e){if(e.ep)return;e.ep=!0;let n=t(e);fetch(e.href,n)}})();var An=t((e=>{function t(e,t){var n=e.length;e.push(t);a:for(;0<n;){var r=n-1>>>1,a=e[r];if(0<i(a,t))e[r]=t,e[n]=a,n=r;else break a}}function n(e){return e.length===0?null:e[0]}function r(e){if(e.length===0)return null;var t=e[0],n=e.pop();if(n!==t){e[0]=n;a:for(var r=0,a=e.length,o=a>>>1;r<o;){var s=2*(r+1)-1,c=e[s],l=s+1,u=e[l];if(0>i(c,n))l<a&&0>i(u,c)?(e[r]=u,e[l]=n,r=l):(e[r]=c,e[s]=n,r=s);else if(l<a&&0>i(u,n))e[r]=u,e[l]=n,r=l;else break a}}return t}function i(e,t){var n=e.sortIndex-t.sortIndex;return n===0?e.id-t.id:n}if(e.unstable_now=void 0,typeof performance==`object`&&typeof performance.now==`function`){var a=performance;e.unstable_now=function(){return a.now()}}else{var o=Date,s=o.now();e.unstable_now=function(){return o.now()-s}}var c=[],l=[],u=1,d=null,f=3,p=!1,m=!1,h=!1,g=!1,_=typeof setTimeout==`function`?setTimeout:null,v=typeof clearTimeout==`function`?clearTimeout:null,y=typeof setImmediate<`u`?setImmediate:null;function b(e){for(var i=n(l);i!==null;){if(i.callback===null)r(l);else if(i.startTime<=e)r(l),i.sortIndex=i.expirationTime,t(c,i);else break;i=n(l)}}function x(e){if(h=!1,b(e),!m)if(n(c)!==null)m=!0,S||(S=!0,re());else{var t=n(l);t!==null&&oe(x,t.startTime-e)}}var S=!1,C=-1,ee=5,w=-1;function te(){return g?!0:!(e.unstable_now()-w<ee)}function ne(){if(g=!1,S){var t=e.unstable_now();w=t;var i=!0;try{a:{m=!1,h&&(h=!1,v(C),C=-1),p=!0;var a=f;try{b:{for(b(t),d=n(c);d!==null&&!(d.expirationTime>t&&te());){var o=d.callback;if(typeof o==`function`){d.callback=null,f=d.priorityLevel;var s=o(d.expirationTime<=t);if(t=e.unstable_now(),typeof s==`function`){d.callback=s,b(t),i=!0;break b}d===n(c)&&r(c),b(t)}else r(c);d=n(c)}if(d!==null)i=!0;else{var u=n(l);u!==null&&oe(x,u.startTime-t),i=!1}}break a}finally{d=null,f=a,p=!1}i=void 0}}finally{i?re():S=!1}}}var re;if(typeof y==`function`)re=function(){y(ne)};else if(typeof MessageChannel<`u`){var ie=new MessageChannel,ae=ie.port2;ie.port1.onmessage=ne,re=function(){ae.postMessage(null)}}else re=function(){_(ne,0)};function oe(t,n){C=_(function(){t(e.unstable_now())},n)}e.unstable_IdlePriority=5,e.unstable_ImmediatePriority=1,e.unstable_LowPriority=4,e.unstable_NormalPriority=3,e.unstable_Profiling=null,e.unstable_UserBlockingPriority=2,e.unstable_cancelCallback=function(e){e.callback=null},e.unstable_forceFrameRate=function(e){0>e||125<e?console.error(`forceFrameRate takes a positive int between 0 and 125, forcing frame rates higher than 125 fps is not supported`):ee=0<e?Math.floor(1e3/e):5},e.unstable_getCurrentPriorityLevel=function(){return f},e.unstable_next=function(e){switch(f){case 1:case 2:case 3:var t=3;break;default:t=f}var n=f;f=t;try{return e()}finally{f=n}},e.unstable_requestPaint=function(){g=!0},e.unstable_runWithPriority=function(e,t){switch(e){case 1:case 2:case 3:case 4:case 5:break;default:e=3}var n=f;f=e;try{return t()}finally{f=n}},e.unstable_scheduleCallback=function(r,i,a){var o=e.unstable_now();switch(typeof a==`object`&&a?(a=a.delay,a=typeof a==`number`&&0<a?o+a:o):a=o,r){case 1:var s=-1;break;case 2:s=250;break;case 5:s=1073741823;break;case 4:s=1e4;break;default:s=5e3}return s=a+s,r={id:u++,callback:i,priorityLevel:r,startTime:a,expirationTime:s,sortIndex:-1},a>o?(r.sortIndex=a,t(l,r),n(c)===null&&r===n(l)&&(h?(v(C),C=-1):h=!0,oe(x,a-o))):(r.sortIndex=s,t(c,r),m||p||(m=!0,S||(S=!0,re()))),r},e.unstable_shouldYield=te,e.unstable_wrapCallback=function(e){var t=f;return function(){var n=f;f=t;try{return e.apply(this,arguments)}finally{f=n}}}})),jn=t(((e,t)=>{t.exports=An()})),Mn=t((e=>{var t=jn(),n=qe(),r=st();function i(e){var t=`https://react.dev/errors/`+e;if(1<arguments.length){t+=`?args[]=`+encodeURIComponent(arguments[1]);for(var n=2;n<arguments.length;n++)t+=`&args[]=`+encodeURIComponent(arguments[n])}return`Minified React error #`+e+`; visit `+t+` for the full message or use the non-minified dev environment for full errors and additional helpful warnings.`}function a(e){return!(!e||e.nodeType!==1&&e.nodeType!==9&&e.nodeType!==11)}function o(e){var t=e,n=e;if(e.alternate)for(;t.return;)t=t.return;else{e=t;do t=e,t.flags&4098&&(n=t.return),e=t.return;while(e)}return t.tag===3?n:null}function s(e){if(e.tag===13){var t=e.memoizedState;if(t===null&&(e=e.alternate,e!==null&&(t=e.memoizedState)),t!==null)return t.dehydrated}return null}function c(e){if(e.tag===31){var t=e.memoizedState;if(t===null&&(e=e.alternate,e!==null&&(t=e.memoizedState)),t!==null)return t.dehydrated}return null}function l(e){if(o(e)!==e)throw Error(i(188))}function u(e){var t=e.alternate;if(!t){if(t=o(e),t===null)throw Error(i(188));return t===e?e:null}for(var n=e,r=t;;){var a=n.return;if(a===null)break;var s=a.alternate;if(s===null){if(r=a.return,r!==null){n=r;continue}break}if(a.child===s.child){for(s=a.child;s;){if(s===n)return l(a),e;if(s===r)return l(a),t;s=s.sibling}throw Error(i(188))}if(n.return!==r.return)n=a,r=s;else{for(var c=!1,u=a.child;u;){if(u===n){c=!0,n=a,r=s;break}if(u===r){c=!0,r=a,n=s;break}u=u.sibling}if(!c){for(u=s.child;u;){if(u===n){c=!0,n=s,r=a;break}if(u===r){c=!0,r=s,n=a;break}u=u.sibling}if(!c)throw Error(i(189))}}if(n.alternate!==r)throw Error(i(190))}if(n.tag!==3)throw Error(i(188));return n.stateNode.current===n?e:t}function d(e){var t=e.tag;if(t===5||t===26||t===27||t===6)return e;for(e=e.child;e!==null;){if(t=d(e),t!==null)return t;e=e.sibling}return null}var f=Object.assign,p=Symbol.for(`react.element`),m=Symbol.for(`react.transitional.element`),h=Symbol.for(`react.portal`),g=Symbol.for(`react.fragment`),_=Symbol.for(`react.strict_mode`),v=Symbol.for(`react.profiler`),y=Symbol.for(`react.consumer`),b=Symbol.for(`react.context`),x=Symbol.for(`react.forward_ref`),S=Symbol.for(`react.suspense`),C=Symbol.for(`react.suspense_list`),ee=Symbol.for(`react.memo`),w=Symbol.for(`react.lazy`),te=Symbol.for(`react.activity`),ne=Symbol.for(`react.memo_cache_sentinel`),re=Symbol.iterator;function ie(e){return typeof e!=`object`||!e?null:(e=re&&e[re]||e[`@@iterator`],typeof e==`function`?e:null)}var ae=Symbol.for(`react.client.reference`);function oe(e){if(e==null)return null;if(typeof e==`function`)return e.$$typeof===ae?null:e.displayName||e.name||null;if(typeof e==`string`)return e;switch(e){case g:return`Fragment`;case v:return`Profiler`;case _:return`StrictMode`;case S:return`Suspense`;case C:return`SuspenseList`;case te:return`Activity`}if(typeof e==`object`)switch(e.$$typeof){case h:return`Portal`;case b:return e.displayName||`Context`;case y:return(e._context.displayName||`Context`)+`.Consumer`;case x:var t=e.render;return e=e.displayName,e||=(e=t.displayName||t.name||``,e===``?`ForwardRef`:`ForwardRef(`+e+`)`),e;case ee:return t=e.displayName||null,t===null?oe(e.type)||`Memo`:t;case w:t=e._payload,e=e._init;try{return oe(e(t))}catch{}}return null}var se=Array.isArray,T=n.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE,E=r.__DOM_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE,ce={pending:!1,data:null,method:null,action:null},le=[],ue=-1;function de(e){return{current:e}}function fe(e){0>ue||(e.current=le[ue],le[ue]=null,ue--)}function D(e,t){ue++,le[ue]=e.current,e.current=t}var pe=de(null),me=de(null),he=de(null),ge=de(null);function _e(e,t){switch(D(he,t),D(me,e),D(pe,null),t.nodeType){case 9:case 11:e=(e=t.documentElement)&&(e=e.namespaceURI)?Vd(e):0;break;default:if(e=t.tagName,t=t.namespaceURI)t=Vd(t),e=Hd(t,e);else switch(e){case`svg`:e=1;break;case`math`:e=2;break;default:e=0}}fe(pe),D(pe,e)}function ve(){fe(pe),fe(me),fe(he)}function ye(e){e.memoizedState!==null&&D(ge,e);var t=pe.current,n=Hd(t,e.type);t!==n&&(D(me,e),D(pe,n))}function be(e){me.current===e&&(fe(pe),fe(me)),ge.current===e&&(fe(ge),Qf._currentValue=ce)}var xe,Se;function O(e){if(xe===void 0)try{throw Error()}catch(e){var t=e.stack.trim().match(/\n( *(at )?)/);xe=t&&t[1]||``,Se=-1<e.stack.indexOf(`
3
3
  at`)?` (<anonymous>)`:-1<e.stack.indexOf(`@`)?`@unknown:0:0`:``}return`
4
4
  `+xe+e+Se}var Ce=!1;function we(e,t){if(!e||Ce)return``;Ce=!0;var n=Error.prepareStackTrace;Error.prepareStackTrace=void 0;try{var r={DetermineComponentFrameRoot:function(){try{if(t){var n=function(){throw Error()};if(Object.defineProperty(n.prototype,`props`,{set:function(){throw Error()}}),typeof Reflect==`object`&&Reflect.construct){try{Reflect.construct(n,[])}catch(e){var r=e}Reflect.construct(e,[],n)}else{try{n.call()}catch(e){r=e}e.call(n.prototype)}}else{try{throw Error()}catch(e){r=e}(n=e())&&typeof n.catch==`function`&&n.catch(function(){})}}catch(e){if(e&&r&&typeof e.stack==`string`)return[e.stack,r.stack]}return[null,null]}};r.DetermineComponentFrameRoot.displayName=`DetermineComponentFrameRoot`;var i=Object.getOwnPropertyDescriptor(r.DetermineComponentFrameRoot,`name`);i&&i.configurable&&Object.defineProperty(r.DetermineComponentFrameRoot,`name`,{value:`DetermineComponentFrameRoot`});var a=r.DetermineComponentFrameRoot(),o=a[0],s=a[1];if(o&&s){var c=o.split(`
@@ -11,13 +11,13 @@ Error generating stack: `+e.message+`
11
11
 
12
12
  If you want to hide the \`${t.titleName}\`, you can wrap it with our VisuallyHidden component.
13
13
 
14
- For more information, see https://radix-ui.com/primitives/docs/components/${t.docsSlug}`;return R.useEffect(()=>{e&&(document.getElementById(e)||console.error(n))},[n,e]),null},Cr=`DialogDescriptionWarning`,wr=({contentRef:e,descriptionId:t})=>{let n=`Warning: Missing \`Description\` or \`aria-describedby={undefined}\` for {${xr(Cr).contentName}}.`;return R.useEffect(()=>{let r=e.current?.getAttribute(`aria-describedby`);t&&r&&(document.getElementById(t)||console.warn(n))},[n,e,t]),null},Tr=Xn,Er=nr,Dr=ir,Or=cr,kr=pr,Ar=hr,jr=_r,Mr=`rovingFocusGroup.onEntryFocus`,Nr={bubbles:!1,cancelable:!0},Pr=`RovingFocusGroup`,[Fr,Ir,Lr]=ln(Pr),[Rr,zr]=on(Pr,[Lr]),[Br,Vr]=Rr(Pr),Hr=R.forwardRef((e,t)=>(0,z.jsx)(Fr.Provider,{scope:e.__scopeRovingFocusGroup,children:(0,z.jsx)(Fr.Slot,{scope:e.__scopeRovingFocusGroup,children:(0,z.jsx)(Ur,{...e,ref:t})})}));Hr.displayName=Pr;var Ur=R.forwardRef((e,t)=>{let{__scopeRovingFocusGroup:n,orientation:r,loop:i=!1,dir:a,currentTabStopId:o,defaultCurrentTabStopId:s,onCurrentTabStopIdChange:c,onEntryFocus:l,preventScrollOnEntryFocus:u=!1,...d}=e,f=R.useRef(null),p=tn(t,f),m=yn(a),[h,g]=un({prop:o,defaultProp:s??null,onChange:c,caller:Pr}),[_,v]=R.useState(!1),y=bn(l),b=Ir(n),x=R.useRef(!1),[S,C]=R.useState(0);return R.useEffect(()=>{let e=f.current;if(e)return e.addEventListener(Mr,y),()=>e.removeEventListener(Mr,y)},[y]),(0,z.jsx)(Br,{scope:n,orientation:r,dir:m,loop:i,currentTabStopId:h,onItemFocus:R.useCallback(e=>g(e),[g]),onItemShiftTab:R.useCallback(()=>v(!0),[]),onFocusableItemAdd:R.useCallback(()=>C(e=>e+1),[]),onFocusableItemRemove:R.useCallback(()=>C(e=>e-1),[]),children:(0,z.jsx)(M.div,{tabIndex:_||S===0?-1:0,"data-orientation":r,...d,ref:p,style:{outline:`none`,...e.style},onMouseDown:N(e.onMouseDown,()=>{x.current=!0}),onFocus:N(e.onFocus,e=>{let t=!x.current;if(e.target===e.currentTarget&&t&&!_){let t=new CustomEvent(Mr,Nr);if(e.currentTarget.dispatchEvent(t),!t.defaultPrevented){let e=b().filter(e=>e.focusable);Yr([e.find(e=>e.active),e.find(e=>e.id===h),...e].filter(Boolean).map(e=>e.ref.current),u)}}x.current=!1}),onBlur:N(e.onBlur,()=>v(!1))})})}),Wr=`RovingFocusGroupItem`,Gr=R.forwardRef((e,t)=>{let{__scopeRovingFocusGroup:n,focusable:r=!0,active:i=!1,tabStopId:a,children:o,...s}=e,c=_n(),l=a||c,u=Vr(Wr,n),d=u.currentTabStopId===l,f=Ir(n),{onFocusableItemAdd:p,onFocusableItemRemove:m,currentTabStopId:h}=u;return R.useEffect(()=>{if(r)return p(),()=>m()},[r,p,m]),(0,z.jsx)(Fr.ItemSlot,{scope:n,id:l,focusable:r,active:i,children:(0,z.jsx)(M.span,{tabIndex:d?0:-1,"data-orientation":u.orientation,...s,ref:t,onMouseDown:N(e.onMouseDown,e=>{r?u.onItemFocus(l):e.preventDefault()}),onFocus:N(e.onFocus,()=>u.onItemFocus(l)),onKeyDown:N(e.onKeyDown,e=>{if(e.key===`Tab`&&e.shiftKey){u.onItemShiftTab();return}if(e.target!==e.currentTarget)return;let t=Jr(e,u.orientation,u.dir);if(t!==void 0){if(e.metaKey||e.ctrlKey||e.altKey||e.shiftKey)return;e.preventDefault();let n=f().filter(e=>e.focusable).map(e=>e.ref.current);if(t===`last`)n.reverse();else if(t===`prev`||t===`next`){t===`prev`&&n.reverse();let r=n.indexOf(e.currentTarget);n=u.loop?Xr(n,r+1):n.slice(r+1)}setTimeout(()=>Yr(n))}}),children:typeof o==`function`?o({isCurrentTabStop:d,hasTabStop:h!=null}):o})})});Gr.displayName=Wr;var Kr={ArrowLeft:`prev`,ArrowUp:`prev`,ArrowRight:`next`,ArrowDown:`next`,PageUp:`first`,Home:`first`,PageDown:`last`,End:`last`};function qr(e,t){return t===`rtl`?e===`ArrowLeft`?`ArrowRight`:e===`ArrowRight`?`ArrowLeft`:e:e}function Jr(e,t,n){let r=qr(e.key,n);if(!(t===`vertical`&&[`ArrowLeft`,`ArrowRight`].includes(r))&&!(t===`horizontal`&&[`ArrowUp`,`ArrowDown`].includes(r)))return Kr[r]}function Yr(e,t=!1){let n=document.activeElement;for(let r of e)if(r===n||(r.focus({preventScroll:t}),document.activeElement!==n))return}function Xr(e,t){return e.map((n,r)=>e[(t+r)%e.length])}var Zr=Hr,Qr=Gr,$r=[`Enter`,` `],ei=[`ArrowDown`,`PageUp`,`Home`],ti=[`ArrowUp`,`PageDown`,`End`],ni=[...ei,...ti],ri={ltr:[...$r,`ArrowRight`],rtl:[...$r,`ArrowLeft`]},ii={ltr:[`ArrowLeft`],rtl:[`ArrowRight`]},ai=`Menu`,[oi,si,ci]=ln(ai),[li,ui]=on(ai,[ci,Cn,zr]),di=Cn(),fi=zr(),[pi,mi]=li(ai),[hi,gi]=li(ai),_i=e=>{let{__scopeMenu:t,open:n=!1,children:r,dir:i,onOpenChange:a,modal:o=!0}=e,s=di(t),[c,l]=R.useState(null),u=R.useRef(!1),d=bn(a),f=yn(i);return R.useEffect(()=>{let e=()=>{u.current=!0,document.addEventListener(`pointerdown`,t,{capture:!0,once:!0}),document.addEventListener(`pointermove`,t,{capture:!0,once:!0})},t=()=>u.current=!1;return document.addEventListener(`keydown`,e,{capture:!0}),()=>{document.removeEventListener(`keydown`,e,{capture:!0}),document.removeEventListener(`pointerdown`,t,{capture:!0}),document.removeEventListener(`pointermove`,t,{capture:!0})}},[]),(0,z.jsx)(wn,{...s,children:(0,z.jsx)(pi,{scope:t,open:n,onOpenChange:d,content:c,onContentChange:l,children:(0,z.jsx)(hi,{scope:t,onClose:R.useCallback(()=>d(!1),[d]),isUsingKeyboardRef:u,dir:f,modal:o,children:r})})})};_i.displayName=ai;var vi=`MenuAnchor`,yi=R.forwardRef((e,t)=>{let{__scopeMenu:n,...r}=e,i=di(n);return(0,z.jsx)(Dn,{...i,...r,ref:t})});yi.displayName=vi;var bi=`MenuPortal`,[xi,Si]=li(bi,{forceMount:void 0}),Ci=e=>{let{__scopeMenu:t,forceMount:n,children:r,container:i}=e,a=mi(bi,t);return(0,z.jsx)(xi,{scope:t,forceMount:n,children:(0,z.jsx)(dn,{present:n||a.open,children:(0,z.jsx)(pn,{asChild:!0,container:i,children:r})})})};Ci.displayName=bi;var wi=`MenuContent`,[Ti,Ei]=li(wi),Di=R.forwardRef((e,t)=>{let n=Si(wi,e.__scopeMenu),{forceMount:r=n.forceMount,...i}=e,a=mi(wi,e.__scopeMenu),o=gi(wi,e.__scopeMenu);return(0,z.jsx)(oi.Provider,{scope:e.__scopeMenu,children:(0,z.jsx)(dn,{present:r||a.open,children:(0,z.jsx)(oi.Slot,{scope:e.__scopeMenu,children:o.modal?(0,z.jsx)(Oi,{...i,ref:t}):(0,z.jsx)(ki,{...i,ref:t})})})})}),Oi=R.forwardRef((e,t)=>{let n=mi(wi,e.__scopeMenu),r=R.useRef(null),i=tn(t,r);return R.useEffect(()=>{let e=r.current;if(e)return vn(e)},[]),(0,z.jsx)(ji,{...e,ref:i,trapFocus:n.open,disableOutsidePointerEvents:n.open,disableOutsideScroll:!0,onFocusOutside:N(e.onFocusOutside,e=>e.preventDefault(),{checkForDefaultPrevented:!1}),onDismiss:()=>n.onOpenChange(!1)})}),ki=R.forwardRef((e,t)=>{let n=mi(wi,e.__scopeMenu);return(0,z.jsx)(ji,{...e,ref:t,trapFocus:!1,disableOutsidePointerEvents:!1,disableOutsideScroll:!1,onDismiss:()=>n.onOpenChange(!1)})}),Ai=nn(`MenuContent.ScrollLock`),ji=R.forwardRef((e,t)=>{let{__scopeMenu:n,loop:r=!1,trapFocus:i,onOpenAutoFocus:a,onCloseAutoFocus:o,disableOutsidePointerEvents:s,onEntryFocus:c,onEscapeKeyDown:l,onPointerDownOutside:u,onFocusOutside:d,onInteractOutside:f,onDismiss:p,disableOutsideScroll:m,...h}=e,g=mi(wi,n),_=gi(wi,n),v=di(n),y=fi(n),b=si(n),[x,S]=R.useState(null),C=R.useRef(null),ee=tn(t,C,g.onContentChange),w=R.useRef(0),te=R.useRef(``),ne=R.useRef(0),re=R.useRef(null),ie=R.useRef(`right`),ae=R.useRef(0),oe=m?mn:R.Fragment,se=m?{as:Ai,allowPinchZoom:!0}:void 0,T=e=>{let t=te.current+e,n=b().filter(e=>!e.disabled),r=document.activeElement,i=n.find(e=>e.ref.current===r)?.textValue,a=pa(n.map(e=>e.textValue),t,i),o=n.find(e=>e.textValue===a)?.ref.current;(function e(t){te.current=t,window.clearTimeout(w.current),t!==``&&(w.current=window.setTimeout(()=>e(``),1e3))})(t),o&&setTimeout(()=>o.focus())};R.useEffect(()=>()=>window.clearTimeout(w.current),[]),gn();let E=R.useCallback(e=>ie.current===re.current?.side&&ha(e,re.current?.area),[]);return(0,z.jsx)(Ti,{scope:n,searchRef:te,onItemEnter:R.useCallback(e=>{E(e)&&e.preventDefault()},[E]),onItemLeave:R.useCallback(e=>{E(e)||(C.current?.focus(),S(null))},[E]),onTriggerLeave:R.useCallback(e=>{E(e)&&e.preventDefault()},[E]),pointerGraceTimerRef:ne,onPointerGraceIntentChange:R.useCallback(e=>{re.current=e},[]),children:(0,z.jsx)(oe,{...se,children:(0,z.jsx)(fn,{asChild:!0,trapped:i,onMountAutoFocus:N(a,e=>{e.preventDefault(),C.current?.focus({preventScroll:!0})}),onUnmountAutoFocus:o,children:(0,z.jsx)(hn,{asChild:!0,disableOutsidePointerEvents:s,onEscapeKeyDown:l,onPointerDownOutside:u,onFocusOutside:d,onInteractOutside:f,onDismiss:p,children:(0,z.jsx)(Zr,{asChild:!0,...y,dir:_.dir,orientation:`vertical`,loop:r,currentTabStopId:x,onCurrentTabStopIdChange:S,onEntryFocus:N(c,e=>{_.isUsingKeyboardRef.current||e.preventDefault()}),preventScrollOnEntryFocus:!0,children:(0,z.jsx)(En,{role:`menu`,"aria-orientation":`vertical`,"data-state":ca(g.open),"data-radix-menu-content":``,dir:_.dir,...v,...h,ref:ee,style:{outline:`none`,...h.style},onKeyDown:N(h.onKeyDown,e=>{let t=e.target.closest(`[data-radix-menu-content]`)===e.currentTarget,n=e.ctrlKey||e.altKey||e.metaKey,r=e.key.length===1;t&&(e.key===`Tab`&&e.preventDefault(),!n&&r&&T(e.key));let i=C.current;if(e.target!==i||!ni.includes(e.key))return;e.preventDefault();let a=b().filter(e=>!e.disabled).map(e=>e.ref.current);ti.includes(e.key)&&a.reverse(),da(a)}),onBlur:N(e.onBlur,e=>{e.currentTarget.contains(e.target)||(window.clearTimeout(w.current),te.current=``)}),onPointerMove:N(e.onPointerMove,ga(e=>{let t=e.target,n=ae.current!==e.clientX;e.currentTarget.contains(t)&&n&&(ie.current=e.clientX>ae.current?`right`:`left`,ae.current=e.clientX)}))})})})})})})});Di.displayName=wi;var Mi=`MenuGroup`,B=R.forwardRef((e,t)=>{let{__scopeMenu:n,...r}=e;return(0,z.jsx)(M.div,{role:`group`,...r,ref:t})});B.displayName=Mi;var V=`MenuLabel`,Ni=R.forwardRef((e,t)=>{let{__scopeMenu:n,...r}=e;return(0,z.jsx)(M.div,{...r,ref:t})});Ni.displayName=V;var Pi=`MenuItem`,Fi=`menu.itemSelect`,Ii=R.forwardRef((e,t)=>{let{disabled:n=!1,onSelect:r,...i}=e,a=R.useRef(null),o=gi(Pi,e.__scopeMenu),s=Ei(Pi,e.__scopeMenu),c=tn(t,a),l=R.useRef(!1),u=()=>{let e=a.current;if(!n&&e){let t=new CustomEvent(Fi,{bubbles:!0,cancelable:!0});e.addEventListener(Fi,e=>r?.(e),{once:!0}),an(e,t),t.defaultPrevented?l.current=!1:o.onClose()}};return(0,z.jsx)(Li,{...i,ref:c,disabled:n,onClick:N(e.onClick,u),onPointerDown:t=>{e.onPointerDown?.(t),l.current=!0},onPointerUp:N(e.onPointerUp,e=>{l.current||e.currentTarget?.click()}),onKeyDown:N(e.onKeyDown,e=>{let t=s.searchRef.current!==``;n||t&&e.key===` `||$r.includes(e.key)&&(e.currentTarget.click(),e.preventDefault())})})});Ii.displayName=Pi;var Li=R.forwardRef((e,t)=>{let{__scopeMenu:n,disabled:r=!1,textValue:i,...a}=e,o=Ei(Pi,n),s=fi(n),c=R.useRef(null),l=tn(t,c),[u,d]=R.useState(!1),[f,p]=R.useState(``);return R.useEffect(()=>{let e=c.current;e&&p((e.textContent??``).trim())},[a.children]),(0,z.jsx)(oi.ItemSlot,{scope:n,disabled:r,textValue:i??f,children:(0,z.jsx)(Qr,{asChild:!0,...s,focusable:!r,children:(0,z.jsx)(M.div,{role:`menuitem`,"data-highlighted":u?``:void 0,"aria-disabled":r||void 0,"data-disabled":r?``:void 0,...a,ref:l,onPointerMove:N(e.onPointerMove,ga(e=>{r?o.onItemLeave(e):(o.onItemEnter(e),e.defaultPrevented||e.currentTarget.focus({preventScroll:!0}))})),onPointerLeave:N(e.onPointerLeave,ga(e=>o.onItemLeave(e))),onFocus:N(e.onFocus,()=>d(!0)),onBlur:N(e.onBlur,()=>d(!1))})})})}),Ri=`MenuCheckboxItem`,zi=R.forwardRef((e,t)=>{let{checked:n=!1,onCheckedChange:r,...i}=e;return(0,z.jsx)(qi,{scope:e.__scopeMenu,checked:n,children:(0,z.jsx)(Ii,{role:`menuitemcheckbox`,"aria-checked":la(n)?`mixed`:n,...i,ref:t,"data-state":ua(n),onSelect:N(i.onSelect,()=>r?.(la(n)?!0:!n),{checkForDefaultPrevented:!1})})})});zi.displayName=Ri;var Bi=`MenuRadioGroup`,[Vi,Hi]=li(Bi,{value:void 0,onValueChange:()=>{}}),Ui=R.forwardRef((e,t)=>{let{value:n,onValueChange:r,...i}=e,a=bn(r);return(0,z.jsx)(Vi,{scope:e.__scopeMenu,value:n,onValueChange:a,children:(0,z.jsx)(B,{...i,ref:t})})});Ui.displayName=Bi;var Wi=`MenuRadioItem`,Gi=R.forwardRef((e,t)=>{let{value:n,...r}=e,i=Hi(Wi,e.__scopeMenu),a=n===i.value;return(0,z.jsx)(qi,{scope:e.__scopeMenu,checked:a,children:(0,z.jsx)(Ii,{role:`menuitemradio`,"aria-checked":a,...r,ref:t,"data-state":ua(a),onSelect:N(r.onSelect,()=>i.onValueChange?.(n),{checkForDefaultPrevented:!1})})})});Gi.displayName=Wi;var Ki=`MenuItemIndicator`,[qi,Ji]=li(Ki,{checked:!1}),Yi=R.forwardRef((e,t)=>{let{__scopeMenu:n,forceMount:r,...i}=e,a=Ji(Ki,n);return(0,z.jsx)(dn,{present:r||la(a.checked)||a.checked===!0,children:(0,z.jsx)(M.span,{...i,ref:t,"data-state":ua(a.checked)})})});Yi.displayName=Ki;var Xi=`MenuSeparator`,Zi=R.forwardRef((e,t)=>{let{__scopeMenu:n,...r}=e;return(0,z.jsx)(M.div,{role:`separator`,"aria-orientation":`horizontal`,...r,ref:t})});Zi.displayName=Xi;var Qi=`MenuArrow`,$i=R.forwardRef((e,t)=>{let{__scopeMenu:n,...r}=e,i=di(n);return(0,z.jsx)(Tn,{...i,...r,ref:t})});$i.displayName=Qi;var ea=`MenuSub`,[ta,na]=li(ea),ra=e=>{let{__scopeMenu:t,children:n,open:r=!1,onOpenChange:i}=e,a=mi(ea,t),o=di(t),[s,c]=R.useState(null),[l,u]=R.useState(null),d=bn(i);return R.useEffect(()=>(a.open===!1&&d(!1),()=>d(!1)),[a.open,d]),(0,z.jsx)(wn,{...o,children:(0,z.jsx)(pi,{scope:t,open:r,onOpenChange:d,content:l,onContentChange:u,children:(0,z.jsx)(ta,{scope:t,contentId:_n(),triggerId:_n(),trigger:s,onTriggerChange:c,children:n})})})};ra.displayName=ea;var ia=`MenuSubTrigger`,aa=R.forwardRef((e,t)=>{let n=mi(ia,e.__scopeMenu),r=gi(ia,e.__scopeMenu),i=na(ia,e.__scopeMenu),a=Ei(ia,e.__scopeMenu),o=R.useRef(null),{pointerGraceTimerRef:s,onPointerGraceIntentChange:c}=a,l={__scopeMenu:e.__scopeMenu},u=R.useCallback(()=>{o.current&&window.clearTimeout(o.current),o.current=null},[]);return R.useEffect(()=>u,[u]),R.useEffect(()=>{let e=s.current;return()=>{window.clearTimeout(e),c(null)}},[s,c]),(0,z.jsx)(yi,{asChild:!0,...l,children:(0,z.jsx)(Li,{id:i.triggerId,"aria-haspopup":`menu`,"aria-expanded":n.open,"aria-controls":i.contentId,"data-state":ca(n.open),...e,ref:$t(t,i.onTriggerChange),onClick:t=>{e.onClick?.(t),!(e.disabled||t.defaultPrevented)&&(t.currentTarget.focus(),n.open||n.onOpenChange(!0))},onPointerMove:N(e.onPointerMove,ga(t=>{a.onItemEnter(t),!t.defaultPrevented&&!e.disabled&&!n.open&&!o.current&&(a.onPointerGraceIntentChange(null),o.current=window.setTimeout(()=>{n.onOpenChange(!0),u()},100))})),onPointerLeave:N(e.onPointerLeave,ga(e=>{u();let t=n.content?.getBoundingClientRect();if(t){let r=n.content?.dataset.side,i=r===`right`,o=i?-5:5,c=t[i?`left`:`right`],l=t[i?`right`:`left`];a.onPointerGraceIntentChange({area:[{x:e.clientX+o,y:e.clientY},{x:c,y:t.top},{x:l,y:t.top},{x:l,y:t.bottom},{x:c,y:t.bottom}],side:r}),window.clearTimeout(s.current),s.current=window.setTimeout(()=>a.onPointerGraceIntentChange(null),300)}else{if(a.onTriggerLeave(e),e.defaultPrevented)return;a.onPointerGraceIntentChange(null)}})),onKeyDown:N(e.onKeyDown,t=>{let i=a.searchRef.current!==``;e.disabled||i&&t.key===` `||ri[r.dir].includes(t.key)&&(n.onOpenChange(!0),n.content?.focus(),t.preventDefault())})})})});aa.displayName=ia;var oa=`MenuSubContent`,sa=R.forwardRef((e,t)=>{let n=Si(wi,e.__scopeMenu),{forceMount:r=n.forceMount,...i}=e,a=mi(wi,e.__scopeMenu),o=gi(wi,e.__scopeMenu),s=na(oa,e.__scopeMenu),c=R.useRef(null),l=tn(t,c);return(0,z.jsx)(oi.Provider,{scope:e.__scopeMenu,children:(0,z.jsx)(dn,{present:r||a.open,children:(0,z.jsx)(oi.Slot,{scope:e.__scopeMenu,children:(0,z.jsx)(ji,{id:s.contentId,"aria-labelledby":s.triggerId,...i,ref:l,align:`start`,side:o.dir===`rtl`?`left`:`right`,disableOutsidePointerEvents:!1,disableOutsideScroll:!1,trapFocus:!1,onOpenAutoFocus:e=>{o.isUsingKeyboardRef.current&&c.current?.focus(),e.preventDefault()},onCloseAutoFocus:e=>e.preventDefault(),onFocusOutside:N(e.onFocusOutside,e=>{e.target!==s.trigger&&a.onOpenChange(!1)}),onEscapeKeyDown:N(e.onEscapeKeyDown,e=>{o.onClose(),e.preventDefault()}),onKeyDown:N(e.onKeyDown,e=>{let t=e.currentTarget.contains(e.target),n=ii[o.dir].includes(e.key);t&&n&&(a.onOpenChange(!1),s.trigger?.focus(),e.preventDefault())})})})})})});sa.displayName=oa;function ca(e){return e?`open`:`closed`}function la(e){return e===`indeterminate`}function ua(e){return la(e)?`indeterminate`:e?`checked`:`unchecked`}function da(e){let t=document.activeElement;for(let n of e)if(n===t||(n.focus(),document.activeElement!==t))return}function fa(e,t){return e.map((n,r)=>e[(t+r)%e.length])}function pa(e,t,n){let r=t.length>1&&Array.from(t).every(e=>e===t[0])?t[0]:t,i=n?e.indexOf(n):-1,a=fa(e,Math.max(i,0));r.length===1&&(a=a.filter(e=>e!==n));let o=a.find(e=>e.toLowerCase().startsWith(r.toLowerCase()));return o===n?void 0:o}function ma(e,t){let{x:n,y:r}=e,i=!1;for(let e=0,a=t.length-1;e<t.length;a=e++){let o=t[e],s=t[a],c=o.x,l=o.y,u=s.x,d=s.y;l>r!=d>r&&n<(u-c)*(r-l)/(d-l)+c&&(i=!i)}return i}function ha(e,t){return t?ma({x:e.clientX,y:e.clientY},t):!1}function ga(e){return t=>t.pointerType===`mouse`?e(t):void 0}var _a=_i,va=yi,ya=Ci,ba=Di,xa=B,Sa=Ni,Ca=Ii,wa=zi,Ta=Ui,Ea=Gi,Da=Yi,Oa=Zi,ka=$i,Aa=aa,ja=sa,Ma=`DropdownMenu`,[Na,Pa]=on(Ma,[ui]),Fa=ui(),[Ia,La]=Na(Ma),Ra=e=>{let{__scopeDropdownMenu:t,children:n,dir:r,open:i,defaultOpen:a,onOpenChange:o,modal:s=!0}=e,c=Fa(t),l=R.useRef(null),[u,d]=un({prop:i,defaultProp:a??!1,onChange:o,caller:Ma});return(0,z.jsx)(Ia,{scope:t,triggerId:_n(),triggerRef:l,contentId:_n(),open:u,onOpenChange:d,onOpenToggle:R.useCallback(()=>d(e=>!e),[d]),modal:s,children:(0,z.jsx)(_a,{...c,open:u,onOpenChange:d,dir:r,modal:s,children:n})})};Ra.displayName=Ma;var za=`DropdownMenuTrigger`,Ba=R.forwardRef((e,t)=>{let{__scopeDropdownMenu:n,disabled:r=!1,...i}=e,a=La(za,n),o=Fa(n);return(0,z.jsx)(va,{asChild:!0,...o,children:(0,z.jsx)(M.button,{type:`button`,id:a.triggerId,"aria-haspopup":`menu`,"aria-expanded":a.open,"aria-controls":a.open?a.contentId:void 0,"data-state":a.open?`open`:`closed`,"data-disabled":r?``:void 0,disabled:r,...i,ref:$t(t,a.triggerRef),onPointerDown:N(e.onPointerDown,e=>{!r&&e.button===0&&e.ctrlKey===!1&&(a.onOpenToggle(),a.open||e.preventDefault())}),onKeyDown:N(e.onKeyDown,e=>{r||([`Enter`,` `].includes(e.key)&&a.onOpenToggle(),e.key===`ArrowDown`&&a.onOpenChange(!0),[`Enter`,` `,`ArrowDown`].includes(e.key)&&e.preventDefault())})})})});Ba.displayName=za;var Va=`DropdownMenuPortal`,Ha=e=>{let{__scopeDropdownMenu:t,...n}=e,r=Fa(t);return(0,z.jsx)(ya,{...r,...n})};Ha.displayName=Va;var Ua=`DropdownMenuContent`,Wa=R.forwardRef((e,t)=>{let{__scopeDropdownMenu:n,...r}=e,i=La(Ua,n),a=Fa(n),o=R.useRef(!1);return(0,z.jsx)(ba,{id:i.contentId,"aria-labelledby":i.triggerId,...a,...r,ref:t,onCloseAutoFocus:N(e.onCloseAutoFocus,e=>{o.current||i.triggerRef.current?.focus(),o.current=!1,e.preventDefault()}),onInteractOutside:N(e.onInteractOutside,e=>{let t=e.detail.originalEvent,n=t.button===0&&t.ctrlKey===!0,r=t.button===2||n;(!i.modal||r)&&(o.current=!0)}),style:{...e.style,"--radix-dropdown-menu-content-transform-origin":`var(--radix-popper-transform-origin)`,"--radix-dropdown-menu-content-available-width":`var(--radix-popper-available-width)`,"--radix-dropdown-menu-content-available-height":`var(--radix-popper-available-height)`,"--radix-dropdown-menu-trigger-width":`var(--radix-popper-anchor-width)`,"--radix-dropdown-menu-trigger-height":`var(--radix-popper-anchor-height)`}})});Wa.displayName=Ua;var Ga=`DropdownMenuGroup`,Ka=R.forwardRef((e,t)=>{let{__scopeDropdownMenu:n,...r}=e,i=Fa(n);return(0,z.jsx)(xa,{...i,...r,ref:t})});Ka.displayName=Ga;var qa=`DropdownMenuLabel`,Ja=R.forwardRef((e,t)=>{let{__scopeDropdownMenu:n,...r}=e,i=Fa(n);return(0,z.jsx)(Sa,{...i,...r,ref:t})});Ja.displayName=qa;var Ya=`DropdownMenuItem`,Xa=R.forwardRef((e,t)=>{let{__scopeDropdownMenu:n,...r}=e,i=Fa(n);return(0,z.jsx)(Ca,{...i,...r,ref:t})});Xa.displayName=Ya;var Za=`DropdownMenuCheckboxItem`,Qa=R.forwardRef((e,t)=>{let{__scopeDropdownMenu:n,...r}=e,i=Fa(n);return(0,z.jsx)(wa,{...i,...r,ref:t})});Qa.displayName=Za;var $a=`DropdownMenuRadioGroup`,eo=R.forwardRef((e,t)=>{let{__scopeDropdownMenu:n,...r}=e,i=Fa(n);return(0,z.jsx)(Ta,{...i,...r,ref:t})});eo.displayName=$a;var to=`DropdownMenuRadioItem`,no=R.forwardRef((e,t)=>{let{__scopeDropdownMenu:n,...r}=e,i=Fa(n);return(0,z.jsx)(Ea,{...i,...r,ref:t})});no.displayName=to;var ro=`DropdownMenuItemIndicator`,io=R.forwardRef((e,t)=>{let{__scopeDropdownMenu:n,...r}=e,i=Fa(n);return(0,z.jsx)(Da,{...i,...r,ref:t})});io.displayName=ro;var ao=`DropdownMenuSeparator`,oo=R.forwardRef((e,t)=>{let{__scopeDropdownMenu:n,...r}=e,i=Fa(n);return(0,z.jsx)(Oa,{...i,...r,ref:t})});oo.displayName=ao;var so=`DropdownMenuArrow`,co=R.forwardRef((e,t)=>{let{__scopeDropdownMenu:n,...r}=e,i=Fa(n);return(0,z.jsx)(ka,{...i,...r,ref:t})});co.displayName=so;var lo=`DropdownMenuSubTrigger`,uo=R.forwardRef((e,t)=>{let{__scopeDropdownMenu:n,...r}=e,i=Fa(n);return(0,z.jsx)(Aa,{...i,...r,ref:t})});uo.displayName=lo;var H=`DropdownMenuSubContent`,U=R.forwardRef((e,t)=>{let{__scopeDropdownMenu:n,...r}=e,i=Fa(n);return(0,z.jsx)(ja,{...i,...r,ref:t,style:{...e.style,"--radix-dropdown-menu-content-transform-origin":`var(--radix-popper-transform-origin)`,"--radix-dropdown-menu-content-available-width":`var(--radix-popper-available-width)`,"--radix-dropdown-menu-content-available-height":`var(--radix-popper-available-height)`,"--radix-dropdown-menu-trigger-width":`var(--radix-popper-anchor-width)`,"--radix-dropdown-menu-trigger-height":`var(--radix-popper-anchor-height)`}})});U.displayName=H;var fo=Ra,po=Ba,mo=Ha,ho=Wa,go=Ja,_o=Xa,vo=oo,yo=`Label`,bo=R.forwardRef((e,t)=>(0,z.jsx)(M.label,{...e,ref:t,onMouseDown:t=>{t.target.closest(`button, input, select, textarea`)||(e.onMouseDown?.(t),!t.defaultPrevented&&t.detail>1&&t.preventDefault())}}));bo.displayName=yo;var xo=bo;function So(e,t){return R.useReducer((e,n)=>t[e][n]??e,e)}var Co=`ScrollArea`,[wo,To]=on(Co),[Eo,Do]=wo(Co),Oo=R.forwardRef((e,t)=>{let{__scopeScrollArea:n,type:r=`hover`,dir:i,scrollHideDelay:a=600,...o}=e,[s,c]=R.useState(null),[l,u]=R.useState(null),[d,f]=R.useState(null),[p,m]=R.useState(null),[h,g]=R.useState(null),[_,v]=R.useState(0),[y,b]=R.useState(0),[x,S]=R.useState(!1),[C,ee]=R.useState(!1),w=tn(t,e=>c(e)),te=yn(i);return(0,z.jsx)(Eo,{scope:n,type:r,dir:te,scrollHideDelay:a,scrollArea:s,viewport:l,onViewportChange:u,content:d,onContentChange:f,scrollbarX:p,onScrollbarXChange:m,scrollbarXEnabled:x,onScrollbarXEnabledChange:S,scrollbarY:h,onScrollbarYChange:g,scrollbarYEnabled:C,onScrollbarYEnabledChange:ee,onCornerWidthChange:v,onCornerHeightChange:b,children:(0,z.jsx)(M.div,{dir:te,...o,ref:w,style:{position:`relative`,"--radix-scroll-area-corner-width":_+`px`,"--radix-scroll-area-corner-height":y+`px`,...e.style}})})});Oo.displayName=Co;var ko=`ScrollAreaViewport`,Ao=R.forwardRef((e,t)=>{let{__scopeScrollArea:n,children:r,nonce:i,...a}=e,o=Do(ko,n),s=tn(t,R.useRef(null),o.onViewportChange);return(0,z.jsxs)(z.Fragment,{children:[(0,z.jsx)(`style`,{dangerouslySetInnerHTML:{__html:`[data-radix-scroll-area-viewport]{scrollbar-width:none;-ms-overflow-style:none;-webkit-overflow-scrolling:touch;}[data-radix-scroll-area-viewport]::-webkit-scrollbar{display:none}`},nonce:i}),(0,z.jsx)(M.div,{"data-radix-scroll-area-viewport":``,...a,ref:s,style:{overflowX:o.scrollbarXEnabled?`scroll`:`hidden`,overflowY:o.scrollbarYEnabled?`scroll`:`hidden`,...e.style},children:(0,z.jsx)(`div`,{ref:o.onContentChange,style:{minWidth:`100%`,display:`table`},children:r})})]})});Ao.displayName=ko;var jo=`ScrollAreaScrollbar`,Mo=R.forwardRef((e,t)=>{let{forceMount:n,...r}=e,i=Do(jo,e.__scopeScrollArea),{onScrollbarXEnabledChange:a,onScrollbarYEnabledChange:o}=i,s=e.orientation===`horizontal`;return R.useEffect(()=>(s?a(!0):o(!0),()=>{s?a(!1):o(!1)}),[s,a,o]),i.type===`hover`?(0,z.jsx)(No,{...r,ref:t,forceMount:n}):i.type===`scroll`?(0,z.jsx)(Po,{...r,ref:t,forceMount:n}):i.type===`auto`?(0,z.jsx)(Fo,{...r,ref:t,forceMount:n}):i.type===`always`?(0,z.jsx)(Io,{...r,ref:t}):null});Mo.displayName=jo;var No=R.forwardRef((e,t)=>{let{forceMount:n,...r}=e,i=Do(jo,e.__scopeScrollArea),[a,o]=R.useState(!1);return R.useEffect(()=>{let e=i.scrollArea,t=0;if(e){let n=()=>{window.clearTimeout(t),o(!0)},r=()=>{t=window.setTimeout(()=>o(!1),i.scrollHideDelay)};return e.addEventListener(`pointerenter`,n),e.addEventListener(`pointerleave`,r),()=>{window.clearTimeout(t),e.removeEventListener(`pointerenter`,n),e.removeEventListener(`pointerleave`,r)}}},[i.scrollArea,i.scrollHideDelay]),(0,z.jsx)(dn,{present:n||a,children:(0,z.jsx)(Fo,{"data-state":a?`visible`:`hidden`,...r,ref:t})})}),Po=R.forwardRef((e,t)=>{let{forceMount:n,...r}=e,i=Do(jo,e.__scopeScrollArea),a=e.orientation===`horizontal`,o=ns(()=>c(`SCROLL_END`),100),[s,c]=So(`hidden`,{hidden:{SCROLL:`scrolling`},scrolling:{SCROLL_END:`idle`,POINTER_ENTER:`interacting`},interacting:{SCROLL:`interacting`,POINTER_LEAVE:`idle`},idle:{HIDE:`hidden`,SCROLL:`scrolling`,POINTER_ENTER:`interacting`}});return R.useEffect(()=>{if(s===`idle`){let e=window.setTimeout(()=>c(`HIDE`),i.scrollHideDelay);return()=>window.clearTimeout(e)}},[s,i.scrollHideDelay,c]),R.useEffect(()=>{let e=i.viewport,t=a?`scrollLeft`:`scrollTop`;if(e){let n=e[t],r=()=>{let r=e[t];n!==r&&(c(`SCROLL`),o()),n=r};return e.addEventListener(`scroll`,r),()=>e.removeEventListener(`scroll`,r)}},[i.viewport,a,c,o]),(0,z.jsx)(dn,{present:n||s!==`hidden`,children:(0,z.jsx)(Io,{"data-state":s===`hidden`?`hidden`:`visible`,...r,ref:t,onPointerEnter:N(e.onPointerEnter,()=>c(`POINTER_ENTER`)),onPointerLeave:N(e.onPointerLeave,()=>c(`POINTER_LEAVE`))})})}),Fo=R.forwardRef((e,t)=>{let n=Do(jo,e.__scopeScrollArea),{forceMount:r,...i}=e,[a,o]=R.useState(!1),s=e.orientation===`horizontal`,c=ns(()=>{if(n.viewport){let e=n.viewport.offsetWidth<n.viewport.scrollWidth,t=n.viewport.offsetHeight<n.viewport.scrollHeight;o(s?e:t)}},10);return rs(n.viewport,c),rs(n.content,c),(0,z.jsx)(dn,{present:r||a,children:(0,z.jsx)(Io,{"data-state":a?`visible`:`hidden`,...i,ref:t})})}),Io=R.forwardRef((e,t)=>{let{orientation:n=`vertical`,...r}=e,i=Do(jo,e.__scopeScrollArea),a=R.useRef(null),o=R.useRef(0),[s,c]=R.useState({content:0,viewport:0,scrollbar:{size:0,paddingStart:0,paddingEnd:0}}),l=Yo(s.viewport,s.content),u={...r,sizes:s,onSizesChange:c,hasThumb:l>0&&l<1,onThumbChange:e=>a.current=e,onThumbPointerUp:()=>o.current=0,onThumbPointerDown:e=>o.current=e};function d(e,t){return Zo(e,o.current,s,t)}return n===`horizontal`?(0,z.jsx)(Lo,{...u,ref:t,onThumbPositionChange:()=>{if(i.viewport&&a.current){let e=i.viewport.scrollLeft,t=Qo(e,s,i.dir);a.current.style.transform=`translate3d(${t}px, 0, 0)`}},onWheelScroll:e=>{i.viewport&&(i.viewport.scrollLeft=e)},onDragScroll:e=>{i.viewport&&(i.viewport.scrollLeft=d(e,i.dir))}}):n===`vertical`?(0,z.jsx)(Ro,{...u,ref:t,onThumbPositionChange:()=>{if(i.viewport&&a.current){let e=i.viewport.scrollTop,t=Qo(e,s);a.current.style.transform=`translate3d(0, ${t}px, 0)`}},onWheelScroll:e=>{i.viewport&&(i.viewport.scrollTop=e)},onDragScroll:e=>{i.viewport&&(i.viewport.scrollTop=d(e))}}):null}),Lo=R.forwardRef((e,t)=>{let{sizes:n,onSizesChange:r,...i}=e,a=Do(jo,e.__scopeScrollArea),[o,s]=R.useState(),c=R.useRef(null),l=tn(t,c,a.onScrollbarXChange);return R.useEffect(()=>{c.current&&s(getComputedStyle(c.current))},[c]),(0,z.jsx)(Vo,{"data-orientation":`horizontal`,...i,ref:l,sizes:n,style:{bottom:0,left:a.dir===`rtl`?`var(--radix-scroll-area-corner-width)`:0,right:a.dir===`ltr`?`var(--radix-scroll-area-corner-width)`:0,"--radix-scroll-area-thumb-width":Xo(n)+`px`,...e.style},onThumbPointerDown:t=>e.onThumbPointerDown(t.x),onDragScroll:t=>e.onDragScroll(t.x),onWheelScroll:(t,n)=>{if(a.viewport){let r=a.viewport.scrollLeft+t.deltaX;e.onWheelScroll(r),es(r,n)&&t.preventDefault()}},onResize:()=>{c.current&&a.viewport&&o&&r({content:a.viewport.scrollWidth,viewport:a.viewport.offsetWidth,scrollbar:{size:c.current.clientWidth,paddingStart:Jo(o.paddingLeft),paddingEnd:Jo(o.paddingRight)}})}})}),Ro=R.forwardRef((e,t)=>{let{sizes:n,onSizesChange:r,...i}=e,a=Do(jo,e.__scopeScrollArea),[o,s]=R.useState(),c=R.useRef(null),l=tn(t,c,a.onScrollbarYChange);return R.useEffect(()=>{c.current&&s(getComputedStyle(c.current))},[c]),(0,z.jsx)(Vo,{"data-orientation":`vertical`,...i,ref:l,sizes:n,style:{top:0,right:a.dir===`ltr`?0:void 0,left:a.dir===`rtl`?0:void 0,bottom:`var(--radix-scroll-area-corner-height)`,"--radix-scroll-area-thumb-height":Xo(n)+`px`,...e.style},onThumbPointerDown:t=>e.onThumbPointerDown(t.y),onDragScroll:t=>e.onDragScroll(t.y),onWheelScroll:(t,n)=>{if(a.viewport){let r=a.viewport.scrollTop+t.deltaY;e.onWheelScroll(r),es(r,n)&&t.preventDefault()}},onResize:()=>{c.current&&a.viewport&&o&&r({content:a.viewport.scrollHeight,viewport:a.viewport.offsetHeight,scrollbar:{size:c.current.clientHeight,paddingStart:Jo(o.paddingTop),paddingEnd:Jo(o.paddingBottom)}})}})}),[zo,Bo]=wo(jo),Vo=R.forwardRef((e,t)=>{let{__scopeScrollArea:n,sizes:r,hasThumb:i,onThumbChange:a,onThumbPointerUp:o,onThumbPointerDown:s,onThumbPositionChange:c,onDragScroll:l,onWheelScroll:u,onResize:d,...f}=e,p=Do(jo,n),[m,h]=R.useState(null),g=tn(t,e=>h(e)),_=R.useRef(null),v=R.useRef(``),y=p.viewport,b=r.content-r.viewport,x=bn(u),S=bn(c),C=ns(d,10);function ee(e){_.current&&l({x:e.clientX-_.current.left,y:e.clientY-_.current.top})}return R.useEffect(()=>{let e=e=>{let t=e.target;m?.contains(t)&&x(e,b)};return document.addEventListener(`wheel`,e,{passive:!1}),()=>document.removeEventListener(`wheel`,e,{passive:!1})},[y,m,b,x]),R.useEffect(S,[r,S]),rs(m,C),rs(p.content,C),(0,z.jsx)(zo,{scope:n,scrollbar:m,hasThumb:i,onThumbChange:bn(a),onThumbPointerUp:bn(o),onThumbPositionChange:S,onThumbPointerDown:bn(s),children:(0,z.jsx)(M.div,{...f,ref:g,style:{position:`absolute`,...f.style},onPointerDown:N(e.onPointerDown,e=>{e.button===0&&(e.target.setPointerCapture(e.pointerId),_.current=m.getBoundingClientRect(),v.current=document.body.style.webkitUserSelect,document.body.style.webkitUserSelect=`none`,p.viewport&&(p.viewport.style.scrollBehavior=`auto`),ee(e))}),onPointerMove:N(e.onPointerMove,ee),onPointerUp:N(e.onPointerUp,e=>{let t=e.target;t.hasPointerCapture(e.pointerId)&&t.releasePointerCapture(e.pointerId),document.body.style.webkitUserSelect=v.current,p.viewport&&(p.viewport.style.scrollBehavior=``),_.current=null})})})}),Ho=`ScrollAreaThumb`,Uo=R.forwardRef((e,t)=>{let{forceMount:n,...r}=e,i=Bo(Ho,e.__scopeScrollArea);return(0,z.jsx)(dn,{present:n||i.hasThumb,children:(0,z.jsx)(Wo,{ref:t,...r})})}),Wo=R.forwardRef((e,t)=>{let{__scopeScrollArea:n,style:r,...i}=e,a=Do(Ho,n),o=Bo(Ho,n),{onThumbPositionChange:s}=o,c=tn(t,e=>o.onThumbChange(e)),l=R.useRef(void 0),u=ns(()=>{l.current&&=(l.current(),void 0)},100);return R.useEffect(()=>{let e=a.viewport;if(e){let t=()=>{u(),l.current||(l.current=ts(e,s),s())};return s(),e.addEventListener(`scroll`,t),()=>e.removeEventListener(`scroll`,t)}},[a.viewport,u,s]),(0,z.jsx)(M.div,{"data-state":o.hasThumb?`visible`:`hidden`,...i,ref:c,style:{width:`var(--radix-scroll-area-thumb-width)`,height:`var(--radix-scroll-area-thumb-height)`,...r},onPointerDownCapture:N(e.onPointerDownCapture,e=>{let t=e.target.getBoundingClientRect(),n=e.clientX-t.left,r=e.clientY-t.top;o.onThumbPointerDown({x:n,y:r})}),onPointerUp:N(e.onPointerUp,o.onThumbPointerUp)})});Uo.displayName=Ho;var Go=`ScrollAreaCorner`,Ko=R.forwardRef((e,t)=>{let n=Do(Go,e.__scopeScrollArea),r=!!(n.scrollbarX&&n.scrollbarY);return n.type!==`scroll`&&r?(0,z.jsx)(qo,{...e,ref:t}):null});Ko.displayName=Go;var qo=R.forwardRef((e,t)=>{let{__scopeScrollArea:n,...r}=e,i=Do(Go,n),[a,o]=R.useState(0),[s,c]=R.useState(0),l=!!(a&&s);return rs(i.scrollbarX,()=>{let e=i.scrollbarX?.offsetHeight||0;i.onCornerHeightChange(e),c(e)}),rs(i.scrollbarY,()=>{let e=i.scrollbarY?.offsetWidth||0;i.onCornerWidthChange(e),o(e)}),l?(0,z.jsx)(M.div,{...r,ref:t,style:{width:a,height:s,position:`absolute`,right:i.dir===`ltr`?0:void 0,left:i.dir===`rtl`?0:void 0,bottom:0,...e.style}}):null});function Jo(e){return e?parseInt(e,10):0}function Yo(e,t){let n=e/t;return isNaN(n)?0:n}function Xo(e){let t=Yo(e.viewport,e.content),n=e.scrollbar.paddingStart+e.scrollbar.paddingEnd,r=(e.scrollbar.size-n)*t;return Math.max(r,18)}function Zo(e,t,n,r=`ltr`){let i=Xo(n),a=i/2,o=t||a,s=i-o,c=n.scrollbar.paddingStart+o,l=n.scrollbar.size-n.scrollbar.paddingEnd-s,u=n.content-n.viewport,d=r===`ltr`?[0,u]:[u*-1,0];return $o([c,l],d)(e)}function Qo(e,t,n=`ltr`){let r=Xo(t),i=t.scrollbar.paddingStart+t.scrollbar.paddingEnd,a=t.scrollbar.size-i,o=t.content-t.viewport,s=a-r,c=On(e,n===`ltr`?[0,o]:[o*-1,0]);return $o([0,o],[0,s])(c)}function $o(e,t){return n=>{if(e[0]===e[1]||t[0]===t[1])return t[0];let r=(t[1]-t[0])/(e[1]-e[0]);return t[0]+r*(n-e[0])}}function es(e,t){return e>0&&e<t}var ts=(e,t=()=>{})=>{let n={left:e.scrollLeft,top:e.scrollTop},r=0;return(function i(){let a={left:e.scrollLeft,top:e.scrollTop},o=n.left!==a.left,s=n.top!==a.top;(o||s)&&t(),n=a,r=window.requestAnimationFrame(i)})(),()=>window.cancelAnimationFrame(r)};function ns(e,t){let n=bn(e),r=R.useRef(0);return R.useEffect(()=>()=>window.clearTimeout(r.current),[]),R.useCallback(()=>{window.clearTimeout(r.current),r.current=window.setTimeout(n,t)},[n,t])}function rs(e,t){let n=bn(t);cn(()=>{let t=0;if(e){let r=new ResizeObserver(()=>{cancelAnimationFrame(t),t=window.requestAnimationFrame(n)});return r.observe(e),()=>{window.cancelAnimationFrame(t),r.unobserve(e)}}},[e,n])}var is=Oo,as=Ao,os=Ko,ss=`Separator`,cs=`horizontal`,ls=[`horizontal`,`vertical`],us=R.forwardRef((e,t)=>{let{decorative:n,orientation:r=cs,...i}=e,a=ds(r)?r:cs,o=n?{role:`none`}:{"aria-orientation":a===`vertical`?a:void 0,role:`separator`};return(0,z.jsx)(M.div,{"data-orientation":a,...o,...i,ref:t})});us.displayName=ss;function ds(e){return ls.includes(e)}var fs=us,ps=`Switch`,[ms,hs]=on(ps),[gs,_s]=ms(ps),vs=R.forwardRef((e,t)=>{let{__scopeSwitch:n,name:r,checked:i,defaultChecked:a,required:o,disabled:s,value:c=`on`,onCheckedChange:l,form:u,...d}=e,[f,p]=R.useState(null),m=tn(t,e=>p(e)),h=R.useRef(!1),g=f?u||!!f.closest(`form`):!0,[_,v]=un({prop:i,defaultProp:a??!1,onChange:l,caller:ps});return(0,z.jsxs)(gs,{scope:n,checked:_,disabled:s,children:[(0,z.jsx)(M.button,{type:`button`,role:`switch`,"aria-checked":_,"aria-required":o,"data-state":Cs(_),"data-disabled":s?``:void 0,disabled:s,value:c,...d,ref:m,onClick:N(e.onClick,e=>{v(e=>!e),g&&(h.current=e.isPropagationStopped(),h.current||e.stopPropagation())})}),g&&(0,z.jsx)(Ss,{control:f,bubbles:!h.current,name:r,value:c,checked:_,required:o,disabled:s,form:u,style:{transform:`translateX(-100%)`}})]})});vs.displayName=ps;var ys=`SwitchThumb`,bs=R.forwardRef((e,t)=>{let{__scopeSwitch:n,...r}=e,i=_s(ys,n);return(0,z.jsx)(M.span,{"data-state":Cs(i.checked),"data-disabled":i.disabled?``:void 0,...r,ref:t})});bs.displayName=ys;var xs=`SwitchBubbleInput`,Ss=R.forwardRef(({__scopeSwitch:e,control:t,checked:n,bubbles:r=!0,...i},a)=>{let o=R.useRef(null),s=tn(o,a),c=xn(n),l=Sn(t);return R.useEffect(()=>{let e=o.current;if(!e)return;let t=window.HTMLInputElement.prototype,i=Object.getOwnPropertyDescriptor(t,`checked`).set;if(c!==n&&i){let t=new Event(`click`,{bubbles:r});i.call(e,n),e.dispatchEvent(t)}},[c,n,r]),(0,z.jsx)(`input`,{type:`checkbox`,"aria-hidden":!0,defaultChecked:n,...i,tabIndex:-1,ref:s,style:{...i.style,...l,position:`absolute`,pointerEvents:`none`,opacity:0,margin:0}})});Ss.displayName=xs;function Cs(e){return e?`checked`:`unchecked`}var ws=vs,Ts=bs,Es=`Tabs`,[Ds,Os]=on(Es,[zr]),ks=zr(),[As,js]=Ds(Es),Ms=R.forwardRef((e,t)=>{let{__scopeTabs:n,value:r,onValueChange:i,defaultValue:a,orientation:o=`horizontal`,dir:s,activationMode:c=`automatic`,...l}=e,u=yn(s),[d,f]=un({prop:r,onChange:i,defaultProp:a??``,caller:Es});return(0,z.jsx)(As,{scope:n,baseId:_n(),value:d,onValueChange:f,orientation:o,dir:u,activationMode:c,children:(0,z.jsx)(M.div,{dir:u,"data-orientation":o,...l,ref:t})})});Ms.displayName=Es;var Ns=`TabsList`,Ps=R.forwardRef((e,t)=>{let{__scopeTabs:n,loop:r=!0,...i}=e,a=js(Ns,n),o=ks(n);return(0,z.jsx)(Zr,{asChild:!0,...o,orientation:a.orientation,dir:a.dir,loop:r,children:(0,z.jsx)(M.div,{role:`tablist`,"aria-orientation":a.orientation,...i,ref:t})})});Ps.displayName=Ns;var Fs=`TabsTrigger`,Is=R.forwardRef((e,t)=>{let{__scopeTabs:n,value:r,disabled:i=!1,...a}=e,o=js(Fs,n),s=ks(n),c=zs(o.baseId,r),l=Bs(o.baseId,r),u=r===o.value;return(0,z.jsx)(Qr,{asChild:!0,...s,focusable:!i,active:u,children:(0,z.jsx)(M.button,{type:`button`,role:`tab`,"aria-selected":u,"aria-controls":l,"data-state":u?`active`:`inactive`,"data-disabled":i?``:void 0,disabled:i,id:c,...a,ref:t,onMouseDown:N(e.onMouseDown,e=>{!i&&e.button===0&&e.ctrlKey===!1?o.onValueChange(r):e.preventDefault()}),onKeyDown:N(e.onKeyDown,e=>{[` `,`Enter`].includes(e.key)&&o.onValueChange(r)}),onFocus:N(e.onFocus,()=>{let e=o.activationMode!==`manual`;!u&&!i&&e&&o.onValueChange(r)})})})});Is.displayName=Fs;var Ls=`TabsContent`,Rs=R.forwardRef((e,t)=>{let{__scopeTabs:n,value:r,forceMount:i,children:a,...o}=e,s=js(Ls,n),c=zs(s.baseId,r),l=Bs(s.baseId,r),u=r===s.value,d=R.useRef(u);return R.useEffect(()=>{let e=requestAnimationFrame(()=>d.current=!1);return()=>cancelAnimationFrame(e)},[]),(0,z.jsx)(dn,{present:i||u,children:({present:n})=>(0,z.jsx)(M.div,{"data-state":u?`active`:`inactive`,"data-orientation":s.orientation,role:`tabpanel`,"aria-labelledby":c,hidden:!n,id:l,tabIndex:0,...o,ref:t,style:{...e.style,animationDuration:d.current?`0s`:void 0},children:n&&a})})});Rs.displayName=Ls;function zs(e,t){return`${e}-trigger-${t}`}function Bs(e,t){return`${e}-content-${t}`}var Vs=Ms,Hs=Ps,Us=Is,Ws=Rs,[Gs,Ks]=on(`Tooltip`,[Cn]),qs=Cn(),Js=`TooltipProvider`,Ys=700,Xs=`tooltip.open`,[Zs,Qs]=Gs(Js),$s=e=>{let{__scopeTooltip:t,delayDuration:n=Ys,skipDelayDuration:r=300,disableHoverableContent:i=!1,children:a}=e,o=R.useRef(!0),s=R.useRef(!1),c=R.useRef(0);return R.useEffect(()=>{let e=c.current;return()=>window.clearTimeout(e)},[]),(0,z.jsx)(Zs,{scope:t,isOpenDelayedRef:o,delayDuration:n,onOpen:R.useCallback(()=>{window.clearTimeout(c.current),o.current=!1},[]),onClose:R.useCallback(()=>{window.clearTimeout(c.current),c.current=window.setTimeout(()=>o.current=!0,r)},[r]),isPointerInTransitRef:s,onPointerInTransitChange:R.useCallback(e=>{s.current=e},[]),disableHoverableContent:i,children:a})};$s.displayName=Js;var ec=`Tooltip`,[tc,nc]=Gs(ec),rc=e=>{let{__scopeTooltip:t,children:n,open:r,defaultOpen:i,onOpenChange:a,disableHoverableContent:o,delayDuration:s}=e,c=Qs(ec,e.__scopeTooltip),l=qs(t),[u,d]=R.useState(null),f=_n(),p=R.useRef(0),m=o??c.disableHoverableContent,h=s??c.delayDuration,g=R.useRef(!1),[_,v]=un({prop:r,defaultProp:i??!1,onChange:e=>{e?(c.onOpen(),document.dispatchEvent(new CustomEvent(Xs))):c.onClose(),a?.(e)},caller:ec}),y=R.useMemo(()=>_?g.current?`delayed-open`:`instant-open`:`closed`,[_]),b=R.useCallback(()=>{window.clearTimeout(p.current),p.current=0,g.current=!1,v(!0)},[v]),x=R.useCallback(()=>{window.clearTimeout(p.current),p.current=0,v(!1)},[v]),S=R.useCallback(()=>{window.clearTimeout(p.current),p.current=window.setTimeout(()=>{g.current=!0,v(!0),p.current=0},h)},[h,v]);return R.useEffect(()=>()=>{p.current&&=(window.clearTimeout(p.current),0)},[]),(0,z.jsx)(wn,{...l,children:(0,z.jsx)(tc,{scope:t,contentId:f,open:_,stateAttribute:y,trigger:u,onTriggerChange:d,onTriggerEnter:R.useCallback(()=>{c.isOpenDelayedRef.current?S():b()},[c.isOpenDelayedRef,S,b]),onTriggerLeave:R.useCallback(()=>{m?x():(window.clearTimeout(p.current),p.current=0)},[x,m]),onOpen:b,onClose:x,disableHoverableContent:m,children:n})})};rc.displayName=ec;var ic=`TooltipTrigger`,ac=R.forwardRef((e,t)=>{let{__scopeTooltip:n,...r}=e,i=nc(ic,n),a=Qs(ic,n),o=qs(n),s=tn(t,R.useRef(null),i.onTriggerChange),c=R.useRef(!1),l=R.useRef(!1),u=R.useCallback(()=>c.current=!1,[]);return R.useEffect(()=>()=>document.removeEventListener(`pointerup`,u),[u]),(0,z.jsx)(Dn,{asChild:!0,...o,children:(0,z.jsx)(M.button,{"aria-describedby":i.open?i.contentId:void 0,"data-state":i.stateAttribute,...r,ref:s,onPointerMove:N(e.onPointerMove,e=>{e.pointerType!==`touch`&&!l.current&&!a.isPointerInTransitRef.current&&(i.onTriggerEnter(),l.current=!0)}),onPointerLeave:N(e.onPointerLeave,()=>{i.onTriggerLeave(),l.current=!1}),onPointerDown:N(e.onPointerDown,()=>{i.open&&i.onClose(),c.current=!0,document.addEventListener(`pointerup`,u,{once:!0})}),onFocus:N(e.onFocus,()=>{c.current||i.onOpen()}),onBlur:N(e.onBlur,i.onClose),onClick:N(e.onClick,i.onClose)})})});ac.displayName=ic;var oc=`TooltipPortal`,[sc,cc]=Gs(oc,{forceMount:void 0}),lc=e=>{let{__scopeTooltip:t,forceMount:n,children:r,container:i}=e,a=nc(oc,t);return(0,z.jsx)(sc,{scope:t,forceMount:n,children:(0,z.jsx)(dn,{present:n||a.open,children:(0,z.jsx)(pn,{asChild:!0,container:i,children:r})})})};lc.displayName=oc;var uc=`TooltipContent`,dc=R.forwardRef((e,t)=>{let n=cc(uc,e.__scopeTooltip),{forceMount:r=n.forceMount,side:i=`top`,...a}=e,o=nc(uc,e.__scopeTooltip);return(0,z.jsx)(dn,{present:r||o.open,children:o.disableHoverableContent?(0,z.jsx)(gc,{side:i,...a,ref:t}):(0,z.jsx)(fc,{side:i,...a,ref:t})})}),fc=R.forwardRef((e,t)=>{let n=nc(uc,e.__scopeTooltip),r=Qs(uc,e.__scopeTooltip),i=R.useRef(null),a=tn(t,i),[o,s]=R.useState(null),{trigger:c,onClose:l}=n,u=i.current,{onPointerInTransitChange:d}=r,f=R.useCallback(()=>{s(null),d(!1)},[d]),p=R.useCallback((e,t)=>{let n=e.currentTarget,r={x:e.clientX,y:e.clientY},i=bc(r,yc(r,n.getBoundingClientRect())),a=xc(t.getBoundingClientRect());s(Cc([...i,...a])),d(!0)},[d]);return R.useEffect(()=>()=>f(),[f]),R.useEffect(()=>{if(c&&u){let e=e=>p(e,u),t=e=>p(e,c);return c.addEventListener(`pointerleave`,e),u.addEventListener(`pointerleave`,t),()=>{c.removeEventListener(`pointerleave`,e),u.removeEventListener(`pointerleave`,t)}}},[c,u,p,f]),R.useEffect(()=>{if(o){let e=e=>{let t=e.target,n={x:e.clientX,y:e.clientY},r=c?.contains(t)||u?.contains(t),i=!Sc(n,o);r?f():i&&(f(),l())};return document.addEventListener(`pointermove`,e),()=>document.removeEventListener(`pointermove`,e)}},[c,u,o,l,f]),(0,z.jsx)(gc,{...e,ref:a})}),[pc,mc]=Gs(ec,{isInside:!1}),hc=en(`TooltipContent`),gc=R.forwardRef((e,t)=>{let{__scopeTooltip:n,children:r,"aria-label":i,onEscapeKeyDown:a,onPointerDownOutside:o,...s}=e,c=nc(uc,n),l=qs(n),{onClose:u}=c;return R.useEffect(()=>(document.addEventListener(Xs,u),()=>document.removeEventListener(Xs,u)),[u]),R.useEffect(()=>{if(c.trigger){let e=e=>{e.target?.contains(c.trigger)&&u()};return window.addEventListener(`scroll`,e,{capture:!0}),()=>window.removeEventListener(`scroll`,e,{capture:!0})}},[c.trigger,u]),(0,z.jsx)(hn,{asChild:!0,disableOutsidePointerEvents:!1,onEscapeKeyDown:a,onPointerDownOutside:o,onFocusOutside:e=>e.preventDefault(),onDismiss:u,children:(0,z.jsxs)(En,{"data-state":c.stateAttribute,...l,...s,ref:t,style:{...s.style,"--radix-tooltip-content-transform-origin":`var(--radix-popper-transform-origin)`,"--radix-tooltip-content-available-width":`var(--radix-popper-available-width)`,"--radix-tooltip-content-available-height":`var(--radix-popper-available-height)`,"--radix-tooltip-trigger-width":`var(--radix-popper-anchor-width)`,"--radix-tooltip-trigger-height":`var(--radix-popper-anchor-height)`},children:[(0,z.jsx)(hc,{children:r}),(0,z.jsx)(pc,{scope:n,isInside:!0,children:(0,z.jsx)(Wn,{id:c.contentId,role:`tooltip`,children:i||r})})]})})});dc.displayName=uc;var _c=`TooltipArrow`,vc=R.forwardRef((e,t)=>{let{__scopeTooltip:n,...r}=e,i=qs(n);return mc(_c,n).isInside?null:(0,z.jsx)(Tn,{...i,...r,ref:t})});vc.displayName=_c;function yc(e,t){let n=Math.abs(t.top-e.y),r=Math.abs(t.bottom-e.y),i=Math.abs(t.right-e.x),a=Math.abs(t.left-e.x);switch(Math.min(n,r,i,a)){case a:return`left`;case i:return`right`;case n:return`top`;case r:return`bottom`;default:throw Error(`unreachable`)}}function bc(e,t,n=5){let r=[];switch(t){case`top`:r.push({x:e.x-n,y:e.y+n},{x:e.x+n,y:e.y+n});break;case`bottom`:r.push({x:e.x-n,y:e.y-n},{x:e.x+n,y:e.y-n});break;case`left`:r.push({x:e.x+n,y:e.y-n},{x:e.x+n,y:e.y+n});break;case`right`:r.push({x:e.x-n,y:e.y-n},{x:e.x-n,y:e.y+n});break}return r}function xc(e){let{top:t,right:n,bottom:r,left:i}=e;return[{x:i,y:t},{x:n,y:t},{x:n,y:r},{x:i,y:r}]}function Sc(e,t){let{x:n,y:r}=e,i=!1;for(let e=0,a=t.length-1;e<t.length;a=e++){let o=t[e],s=t[a],c=o.x,l=o.y,u=s.x,d=s.y;l>r!=d>r&&n<(u-c)*(r-l)/(d-l)+c&&(i=!i)}return i}function Cc(e){let t=e.slice();return t.sort((e,t)=>e.x<t.x?-1:e.x>t.x?1:e.y<t.y?-1:+(e.y>t.y)),wc(t)}function wc(e){if(e.length<=1)return e.slice();let t=[];for(let n=0;n<e.length;n++){let r=e[n];for(;t.length>=2;){let e=t[t.length-1],n=t[t.length-2];if((e.x-n.x)*(r.y-n.y)>=(e.y-n.y)*(r.x-n.x))t.pop();else break}t.push(r)}t.pop();let n=[];for(let t=e.length-1;t>=0;t--){let r=e[t];for(;n.length>=2;){let e=n[n.length-1],t=n[n.length-2];if((e.x-t.x)*(r.y-t.y)>=(e.y-t.y)*(r.x-t.x))n.pop();else break}n.push(r)}return n.pop(),t.length===1&&n.length===1&&t[0].x===n[0].x&&t[0].y===n[0].y?t:t.concat(n)}var Tc=$s;function Ec({delayDuration:e=0,...t}){return(0,z.jsx)(Tc,{"data-slot":`tooltip-provider`,delayDuration:e,...t})}function W(e){return A(e)}function Dc(){let e=W(e=>e.pairs);return(0,R.useMemo)(()=>{let t={};for(let n of e)(n.status===`active`||n.status===`pending`)&&(n.requesterId&&(t[n.requesterId]=n),n.targetId&&(t[n.targetId]=n));return t},[e])}function Oc(e){let t=W(e=>e.messages),n=W(e=>e.tasks),r=W(e=>e.pairs),i=W(e=>e.inboxReadCursors),a=W(e=>e.inboxArchivedThreads);return(0,R.useMemo)(()=>{if(!e)return{unread:0,needsHumanResponse:!1,pendingPairInvite:!1,claimableTasks:0,total:0,score:0};let o=t.filter(t=>Xt(t)===e.id&&!gt(t)),s=Number(a[e.id]||0),c=s>=o.filter(e=>St(e)&&xt(e)).reduce((e,t)=>Math.max(e,t.id),0)&&s>0?0:o.filter(t=>bt(i,e.id,t)).length,l=Wt(e),u=r.find(t=>(t.status===`active`||t.status===`pending`)&&(t.requesterId===e.id||t.targetId===e.id))?.status===`pending`,d=n.filter(t=>Jt(t)&&qt(t.target,e)).length+t.filter(t=>mt(t)&&qt(t.to,e)).length;return{unread:c,needsHumanResponse:l,pendingPairInvite:u,claimableTasks:d,total:c+ +!!l+ +!!u+d,score:c*10+(l?8:0)+(u?4:0)+d*2}},[e,t,n,r,i,a])}function kc(){let e=W(e=>e.agents),t=W(e=>e.showBuiltIns),n=W(e=>e.showOffline),r=W(e=>e.agentSort),i=W(e=>e.agentSortDir),a=W(e=>e.agentPresetFilter),o=W(e=>e.agentStatusFilter),s=W(e=>e.agentTagFilter),c=W(e=>e.agentHostFilter),l=W(e=>e.managedPolicies),u=W(e=>e.pairs);return(0,R.useMemo)(()=>{let d=wt(e,t,l);if(a){let e=Ac(u);d=jc(d,a,lt.getState().now,e)}n||(d=d.filter(e=>e.status!==`offline`)),o===`starting`?d=d.filter(e=>e.status!==`offline`&&!e.ready):o&&(d=d.filter(e=>e.status===o)),s&&(d=d.filter(e=>(e.tags||[]).includes(s))),c&&(d=d.filter(e=>(e.machine||``)===c));let f=i===`desc`?-1:1;return[...d].sort((e,t)=>r===`name`?j(e).localeCompare(j(t))*f:r===`lastSeen`?(new Date(t.lastSeen).getTime()-new Date(e.lastSeen).getTime())*f||j(e).localeCompare(j(t)):r===`created`?(new Date(t.createdAt).getTime()-new Date(e.createdAt).getTime())*f||j(e).localeCompare(j(t)):((Mt[e.status]??9)-(Mt[t.status]??9))*f||j(e).localeCompare(j(t)))},[e,t,n,l,r,i,a,o,s,c,u,ft()])}function Ac(e){let t={};for(let n of e)(n.status===`active`||n.status===`pending`)&&(n.requesterId&&(t[n.requesterId]=n),n.targetId&&(t[n.targetId]=n));return t}function jc(e,t,n,r){switch(t){case`active`:return e.filter(e=>e.status!==`offline`);case`offline_stale`:return e.filter(e=>e.status===`offline`||Yt(n,e));case`claude`:case`codex`:return e.filter(e=>Vt(e)===t);case`paired`:return e.filter(e=>!!r[e.id]);case`unpaired`:return e.filter(e=>!r[e.id]);default:return e}}function Mc(){let e=W(e=>e.messages),t=W(e=>e.inboxReadCursors),n=W(e=>e.inboxArchivedThreads),r=W(e=>e.inboxDrafts),i=W(e=>e.agentsById);return(0,R.useMemo)(()=>{let a=new Map;for(let t of e){if(gt(t))continue;let e=Xt(t);e&&(a.has(e)||a.set(e,{id:e,peer:e,messages:[],lastMessage:null,previewMessage:null,attention:{unread:0,needsHumanResponse:!1,score:0},archived:!1,draft:``}),a.get(e).messages.push(t))}for(let e of a.values()){e.messages.sort((e,t)=>e.id-t.id),e.lastMessage=e.messages[e.messages.length-1]||null;let a=null;for(let t=e.messages.length-1;t>=0;t--){let n=e.messages[t];if(n&&!ht(n)){a=n;break}}e.previewMessage=a||e.lastMessage;let o=e.messages.filter(n=>bt(t,e.peer,n)).length,s=Wt(i[e.peer]);e.attention={unread:o,needsHumanResponse:s,score:o*10+(s?8:0)};let c=Number(n[e.peer]||0);e.archived=!!(e.lastMessage?.id&&c>=e.lastMessage.id),e.draft=r[e.peer]||``}return[...a.values()].sort((e,t)=>{let n=(t.attention.score||0)-(e.attention.score||0);return n===0?(t.lastMessage?.id||0)-(e.lastMessage?.id||0):n})},[e,t,n,r,i])}function Nc(){let e=Mc(),t=W(e=>e.agents),n=W(e=>e.showBuiltIns),r=W(e=>e.showOffline),i=W(e=>e.managedPolicies),a=W(e=>e.pairs),o=W(e=>e.tasks),s=W(e=>e.messages),c=(0,R.useMemo)(()=>new Set(wt(t,n,i).filter(e=>r||e.status!==`offline`).map(e=>e.id)),[t,n,r,i]);return(0,R.useMemo)(()=>{let l=e.filter(e=>!e.archived&&c.has(e.peer)).reduce((e,t)=>e+(t.attention.unread||0),0),u=wt(t,n,i).filter(e=>(r||e.status!==`offline`)&&Wt(e)).length,d=a.filter(e=>e.status===`pending`).length,f=o.filter(Jt).length+s.filter(mt).length;return{unreadInbox:l,needsHumanResponse:u,pendingPairInvites:d,claimableTasks:f,total:l+u+d+f}},[e,c,t,n,r,i,a,o,s])}function Pc(){let e=W(e=>e.agents),t=W(e=>e.showBuiltIns),n=W(e=>e.managedPolicies);return(0,R.useMemo)(()=>wt(e,t,n).filter(e=>e.status!==`offline`).length,[e,t,n])}function Fc(){let e=W(e=>e.agents);return(0,R.useMemo)(()=>e.filter(e=>e.status===`busy`).length,[e])}function Ic(){let e=W(e=>e.agents),t=W(e=>e.showBuiltIns),n=W(e=>e.showOffline),r=W(e=>e.managedPolicies);return(0,R.useMemo)(()=>{let i=wt(e,t,r);return n?i:i.filter(e=>e.status!==`offline`)},[e,t,n,r])}function Lc(){let e=W(e=>e.agents),t=W(e=>e.showBuiltIns),n=W(e=>e.managedPolicies);return(0,R.useMemo)(()=>[...new Set(wt(e,t,n).map(e=>e.machine).filter(Boolean))].sort(),[e,t,n])}function Rc(){let e=W(e=>e.agents),t=W(e=>e.showBuiltIns),n=W(e=>e.managedPolicies);return(0,R.useMemo)(()=>[...new Set(wt(e,t,n).flatMap(e=>e.tags||[]))],[e,t,n])}function zc(){let e=W(e=>e.tasks),t=W(e=>e.messages);return(0,R.useMemo)(()=>{let n=e.filter(e=>!Pt.has(e.status)).map(e=>({id:`task-`+e.id,sourceType:`task`,title:e.title,body:e.body,severity:e.severity||`info`,status:e.status,owner:e.claimedBy||``,target:e.target,source:e.source,channel:e.channel||``,updatedAt:e.updatedAt||e.createdAt,createdAt:e.createdAt,claimable:Jt(e),task:e})),r=t.filter(mt).map(e=>({id:`message-`+e.id,sourceType:`message`,title:e.subject||`Claimable message #`+e.id,body:It(e),severity:`warning`,status:e.claimedBy?`claimed`:`open`,owner:e.claimedBy||``,target:e.to,source:`message`,channel:e.channel||``,updatedAt:e.claimedAt||e.createdAt,createdAt:e.createdAt,claimable:mt(e),message:e}));return[...n,...r].sort((e,t)=>{let n=Number(t.claimable)-Number(e.claimable);if(n!==0)return n;let r={critical:0,warning:1,info:2},i=(r[e.severity]??9)-(r[t.severity]??9);return i===0?Ut(e.updatedAt)-Ut(t.updatedAt):i})},[e,t])}function Bc(){let e=W(e=>e.commandQuery),t=W(e=>e.agents),n=W(e=>e.agentsById),r=W(e=>e.showBuiltIns),i=W(e=>e.showOffline),a=W(e=>e.managedPolicies);return(0,R.useMemo)(()=>{let n=wt(t,r,a).filter(e=>i||e.status!==`offline`),o=[...new Set(n.flatMap(e=>e.tags||[]))],s=me(),c=[Vc(`open-chat`,`Open chat`,`Human console`,`MessageCircle`,`openView`,{view:`chat`}),Vc(`open-work`,`Open work queue`,`Claimable messages and tasks`,`ListChecks`,`openView`,{view:`work`}),Vc(`open-workspaces`,`Open workspaces`,`Agent worktrees and merge state`,`GitBranch`,`openView`,{view:`workspaces`}),Vc(`show-stale`,`Show stale agents`,`Filter agents to offline or stale`,`Filter`,`agentPreset`,{preset:`offline_stale`}),Vc(`copy-url`,`Copy relay URL`,s,`Copy`,`copy`,{value:s}),Vc(`export-md`,`Export timeline as Markdown`,`Activity audit trace`,`FileDown`,`exportActivity`,{format:`markdown`}),Vc(`export-json`,`Export timeline as JSON`,`Activity audit trace`,`Braces`,`exportActivity`,{format:`json`}),...n.slice(0,12).map(e=>Vc(`msg-`+e.id,`Message agent: `+j(e),e.id,`Send`,`messageAgent`,{agentId:e.id})),...n.filter(e=>Vt(e)===`codex`).slice(0,8).map(e=>Vc(`pair-`+e.id,`Pair Codex: `+j(e),e.id,`Link`,`pairAgent`,{agentId:e.id})),...o.map(e=>Vc(`tag-`+e,`Filter tag: `+e,`#`+e,`Tag`,`filterTag`,{tag:e}))],l=e.trim().toLowerCase();return(l?c.filter(e=>e.search.includes(l)):c).slice(0,24)},[e,t,n,r,i,a])}function Vc(e,t,n,r,i,a){return{id:e,title:t,subtitle:n,icon:r,action:i,payload:a,search:`${t}\n${n}\n${i}`.toLowerCase()}}function Hc({className:e,size:t=`default`,...n}){return(0,z.jsx)(ws,{"data-slot":`switch`,"data-size":t,className:_(`peer group/switch relative inline-flex shrink-0 items-center rounded-full border border-transparent transition-all outline-none after:absolute after:-inset-x-3 after:-inset-y-2 focus-visible:border-ring focus-visible:ring-3 focus-visible:ring-ring/50 aria-invalid:border-destructive aria-invalid:ring-3 aria-invalid:ring-destructive/20 data-[size=default]:h-[18.4px] data-[size=default]:w-[32px] data-[size=sm]:h-[14px] data-[size=sm]:w-[24px] dark:aria-invalid:border-destructive/50 dark:aria-invalid:ring-destructive/40 data-checked:bg-primary data-unchecked:bg-input dark:data-unchecked:bg-input/80 data-disabled:cursor-not-allowed data-disabled:opacity-50`,e),...n,children:(0,z.jsx)(Ts,{"data-slot":`switch-thumb`,className:`pointer-events-none block rounded-full bg-background ring-0 transition-transform group-data-[size=default]/switch:size-4 group-data-[size=sm]/switch:size-3 group-data-[size=default]/switch:data-checked:translate-x-[calc(100%-2px)] group-data-[size=sm]/switch:data-checked:translate-x-[calc(100%-2px)] dark:data-checked:bg-primary-foreground group-data-[size=default]/switch:data-unchecked:translate-x-0 group-data-[size=sm]/switch:data-unchecked:translate-x-0 dark:data-unchecked:bg-foreground`})})}function Uc({className:e,orientation:t=`horizontal`,decorative:n=!0,...r}){return(0,z.jsx)(fs,{"data-slot":`separator`,decorative:n,orientation:t,className:_(`shrink-0 bg-border data-horizontal:h-px data-horizontal:w-full data-vertical:w-px data-vertical:self-stretch`,e),...r})}function Wc({...e}){return(0,z.jsx)(fo,{"data-slot":`dropdown-menu`,...e})}function Gc({...e}){return(0,z.jsx)(po,{"data-slot":`dropdown-menu-trigger`,...e})}function Kc({className:e,align:t=`start`,sideOffset:n=4,...r}){return(0,z.jsx)(mo,{children:(0,z.jsx)(ho,{"data-slot":`dropdown-menu-content`,sideOffset:n,align:t,className:_(`z-50 max-h-(--radix-dropdown-menu-content-available-height) w-(--radix-dropdown-menu-trigger-width) min-w-32 origin-(--radix-dropdown-menu-content-transform-origin) overflow-x-hidden overflow-y-auto rounded-lg bg-popover p-1 text-popover-foreground shadow-md ring-1 ring-foreground/10 duration-100 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 data-[state=closed]:overflow-hidden data-open:animate-in data-open:fade-in-0 data-open:zoom-in-95 data-closed:animate-out data-closed:fade-out-0 data-closed:zoom-out-95`,e),...r})})}function qc({className:e,inset:t,variant:n=`default`,...r}){return(0,z.jsx)(_o,{"data-slot":`dropdown-menu-item`,"data-inset":t,"data-variant":n,className:_(`group/dropdown-menu-item relative flex cursor-default items-center gap-1.5 rounded-md px-1.5 py-1 text-sm outline-hidden select-none focus:bg-accent focus:text-accent-foreground not-data-[variant=destructive]:focus:**:text-accent-foreground data-inset:pl-7 data-[variant=destructive]:text-destructive data-[variant=destructive]:focus:bg-destructive/10 data-[variant=destructive]:focus:text-destructive dark:data-[variant=destructive]:focus:bg-destructive/20 data-disabled:pointer-events-none data-disabled:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4 data-[variant=destructive]:*:[svg]:text-destructive`,e),...r})}function Jc({className:e,inset:t,...n}){return(0,z.jsx)(go,{"data-slot":`dropdown-menu-label`,"data-inset":t,className:_(`px-1.5 py-1 text-xs font-medium text-muted-foreground data-inset:pl-7`,e),...n})}function Yc({className:e,...t}){return(0,z.jsx)(vo,{"data-slot":`dropdown-menu-separator`,className:_(`-mx-1 my-1 h-px bg-border`,e),...t})}var Xc={LayoutDashboard:je,MessageCircle:O,Bot:d,Server:E,MessagesSquare:_e,Plug:ee,PlugZap:ot,Activity:de,Link:Se,Mail:Je,ListChecks:et,ClipboardList:Ue,CalendarClock:it,AreaChart:tt,Settings:nt,Workflow:We,BrainCircuit:rt,FolderTree:Ie,Shield:se,Wrench:ye,UserCog:Ce,Lightbulb:Ve,Users:Le,Boxes:f};function Zc(e){return new Date(e.createdAt).toLocaleTimeString(void 0,{hour:`2-digit`,minute:`2-digit`})}var Qc=[[`messages`,`Messages`],[`replies`,`Replies`],[`errors`,`Errors`]];function $c(){let e=A(e=>e.notifications),t=A(e=>e.notificationUnread),n=A(e=>e.notificationSettings),r=A(e=>e.notificationPermission),a=A(e=>e.set),o=A(e=>e.openNotification),s=A(e=>e.markNotificationsRead),c=A(e=>e.clearNotifications),l=A(e=>e.requestBrowserNotifications),u=t>0?i:Fe;function d(e){a({notificationSettings:{...n,...e}})}return(0,z.jsxs)(Wc,{onOpenChange:e=>{e&&s()},children:[(0,z.jsx)(Gc,{asChild:!0,children:(0,z.jsxs)(`button`,{className:`relative flex items-center gap-2 text-muted-foreground hover:text-foreground transition-colors w-full`,children:[(0,z.jsx)(u,{className:`w-3.5 h-3.5`}),(0,z.jsx)(`span`,{children:`Notifications`}),t>0&&(0,z.jsx)(P,{variant:`destructive`,className:`ml-auto text-[10px] px-1.5 py-0`,children:t})]})}),(0,z.jsxs)(Kc,{align:`start`,side:`right`,className:`w-80 p-2`,children:[(0,z.jsxs)(`div`,{className:`flex items-center justify-between gap-2 px-1.5 py-1`,children:[(0,z.jsx)(Jc,{className:`p-0`,children:`Notifications`}),(0,z.jsxs)(`div`,{className:`flex items-center gap-1`,children:[(0,z.jsx)(`button`,{type:`button`,title:`Mark read`,onClick:s,className:`rounded p-1 text-muted-foreground hover:bg-accent hover:text-foreground`,children:(0,z.jsx)(De,{className:`h-3.5 w-3.5`})}),(0,z.jsx)(`button`,{type:`button`,title:`Clear`,onClick:c,className:`rounded p-1 text-muted-foreground hover:bg-accent hover:text-foreground`,children:(0,z.jsx)(ke,{className:`h-3.5 w-3.5`})})]})]}),(0,z.jsxs)(`div`,{className:`px-1.5 py-1.5 space-y-2`,children:[(0,z.jsxs)(`label`,{className:`flex items-center justify-between gap-3 text-xs`,children:[(0,z.jsx)(`span`,{className:`text-muted-foreground`,children:`In-app notifications`}),(0,z.jsx)(Hc,{size:`sm`,checked:n.enabled,onCheckedChange:e=>d({enabled:e})})]}),(0,z.jsxs)(`label`,{className:`flex items-center justify-between gap-3 text-xs`,children:[(0,z.jsx)(`span`,{className:`text-muted-foreground`,children:`Browser notifications`}),(0,z.jsx)(Hc,{size:`sm`,checked:n.browserEnabled&&r===`granted`,disabled:r===`unsupported`,onCheckedChange:e=>{e&&r!==`granted`?l():d({browserEnabled:e})}})]}),(0,z.jsx)(`div`,{className:`grid grid-cols-3 gap-1`,children:Qc.map(([e,t])=>(0,z.jsx)(`button`,{type:`button`,onClick:()=>d({[e]:!n[e]}),className:_(`rounded border px-2 py-1 text-[11px] transition-colors`,n[e]?`border-primary/40 bg-primary/10 text-primary`:`border-border text-muted-foreground hover:bg-accent`),children:t},e))})]}),(0,z.jsx)(Yc,{}),(0,z.jsx)(`div`,{className:`max-h-80 overflow-y-auto`,children:e.length===0?(0,z.jsx)(`div`,{className:`px-1.5 py-8 text-center text-xs text-muted-foreground`,children:`No notifications`}):e.slice(0,20).map(e=>(0,z.jsxs)(qc,{onSelect:t=>{t.preventDefault(),o(e)},className:`flex flex-col items-start gap-0.5 px-2 py-2`,children:[(0,z.jsxs)(`div`,{className:`flex w-full items-center gap-2`,children:[(0,z.jsx)(`span`,{className:_(`h-1.5 w-1.5 rounded-full`,e.severity===`error`?`bg-red-400`:e.severity===`warning`?`bg-yellow-400`:`bg-blue-400`)}),(0,z.jsx)(`span`,{className:`min-w-0 flex-1 truncate text-xs font-medium`,children:e.title}),(0,z.jsx)(`span`,{className:`text-[10px] text-muted-foreground`,children:Zc(e)})]}),(0,z.jsx)(`span`,{className:`line-clamp-2 text-xs text-muted-foreground`,children:e.body})]},e.id))})]})]})}function el(){let e=A(e=>e.theme),t=A(e=>e.set);return(0,z.jsxs)(Wc,{children:[(0,z.jsx)(Gc,{asChild:!0,children:(0,z.jsxs)(`button`,{className:`flex items-center gap-2 text-muted-foreground hover:text-foreground transition-colors w-full`,children:[(0,z.jsx)(S,{className:`w-3.5 h-3.5`}),(0,z.jsx)(`span`,{children:`Theme`}),(0,z.jsx)(`span`,{className:`ml-auto text-[10px] text-muted-foreground`,children:Qt.find(t=>t.id===e)?.label})]})}),(0,z.jsx)(Kc,{align:`start`,side:`right`,className:`w-40`,children:Qt.map(n=>(0,z.jsxs)(qc,{onSelect:()=>t({theme:n.id}),children:[(0,z.jsx)(`span`,{className:`flex-1`,children:n.label}),e===n.id&&(0,z.jsx)(Ae,{className:`w-3.5 h-3.5 text-primary`})]},n.id))})]})}function tl(){let e=A(e=>e.view),t=A(e=>e.switchView),n=A(e=>e.connected),r=A(e=>e.showOffline),i=A(e=>e.showBuiltIns),a=A(e=>e.autoRefresh),o=A(e=>e.stats),s=A(e=>e.openCommandPalette),c=A(e=>e.set),l=A(e=>e.startAutoRefresh),u=A(e=>e.stopAutoRefresh),f=Nc(),p=Pc();function m(e){return e===`overview`&&f.total>0?(0,z.jsx)(P,{variant:`destructive`,className:`ml-auto text-[10px] px-1.5 py-0`,children:f.total}):e===`chat`&&f.unreadInbox>0?(0,z.jsx)(P,{variant:`destructive`,className:`ml-auto text-[10px] px-1.5 py-0`,children:f.unreadInbox}):e===`agents`?(0,z.jsx)(P,{variant:`secondary`,className:`ml-auto text-[10px] px-1.5 py-0`,children:p}):e===`pairs`&&f.pendingPairInvites>0?(0,z.jsx)(P,{className:`ml-auto text-[10px] px-1.5 py-0 bg-yellow-500/20 text-yellow-400`,children:f.pendingPairInvites}):e===`work`&&f.claimableTasks>0?(0,z.jsx)(P,{className:`ml-auto text-[10px] px-1.5 py-0 bg-yellow-500/20 text-yellow-400`,children:f.claimableTasks}):null}return(0,z.jsxs)(z.Fragment,{children:[(0,z.jsx)(`nav`,{className:`flex-1 overflow-y-auto py-2 px-2`,children:At.map(n=>{let r=Xc[n.icon]||d;return(0,z.jsxs)(`button`,{onClick:()=>t(n.key),className:_(`w-full flex items-center gap-2 px-3 py-2 rounded-md text-sm transition-colors my-0.5`,e===n.key?`bg-primary text-primary-foreground`:`text-foreground hover:bg-accent`),children:[(0,z.jsx)(r,{className:`w-4 h-4 shrink-0`}),n.label,m(n.key)]},n.key)})}),(0,z.jsxs)(`div`,{className:`mt-auto border-t border-border p-4 space-y-3 text-xs`,children:[(0,z.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,z.jsx)(`span`,{className:_(`w-2 h-2 rounded-full`,n?`bg-emerald-500`:`bg-red-500 animate-pulse`)}),(0,z.jsx)(`span`,{className:`text-muted-foreground`,children:n?`Live`:`Reconnecting...`})]}),(0,z.jsxs)(`button`,{onClick:s,className:`flex items-center gap-2 text-muted-foreground hover:text-foreground transition-colors w-full`,children:[(0,z.jsx)(ae,{className:`w-3.5 h-3.5`}),(0,z.jsx)(`span`,{children:`Command palette`}),(0,z.jsx)(`kbd`,{className:`ml-auto text-[10px] bg-muted px-1.5 py-0.5 rounded`,children:`⌘K`})]}),(0,z.jsx)($c,{}),(0,z.jsx)(el,{}),(0,z.jsx)(Uc,{}),(0,z.jsxs)(`label`,{className:`flex items-center justify-between cursor-pointer`,children:[(0,z.jsx)(`span`,{className:`text-muted-foreground`,children:`Show offline`}),(0,z.jsx)(Hc,{checked:r,onCheckedChange:e=>c({showOffline:e})})]}),(0,z.jsxs)(`label`,{className:`flex items-center justify-between cursor-pointer`,children:[(0,z.jsx)(`span`,{className:`text-muted-foreground`,children:`System agents`}),(0,z.jsx)(Hc,{checked:i,onCheckedChange:e=>c({showBuiltIns:e})})]}),(0,z.jsxs)(`label`,{className:`flex items-center justify-between cursor-pointer`,children:[(0,z.jsx)(`span`,{className:`text-muted-foreground`,children:`Auto refresh`}),(0,z.jsx)(Hc,{checked:a,onCheckedChange:e=>{c({autoRefresh:e}),e?l():u()}})]}),o.version&&(0,z.jsxs)(`div`,{className:`text-muted-foreground pt-1`,children:[`v`,o.version]})]})]})}function nl(){return(0,z.jsxs)(`aside`,{className:`hidden xl:flex w-[250px] min-w-[250px] h-[calc(100dvh-var(--sat))] sticky top-[var(--sat)] flex-col border-r border-border bg-card`,children:[(0,z.jsxs)(`div`,{className:`px-5 py-4 font-bold text-base border-b border-border flex items-center gap-2`,children:[(0,z.jsx)(m,{className:`w-4 h-4 text-primary`}),`Agent Relay`]}),(0,z.jsx)(tl,{})]})}function rl(){let e=A(e=>e.mobileMenuOpen),t=A(e=>e.set);return(0,R.useEffect)(()=>{if(!e)return;function n(e){e.key===`Escape`&&t({mobileMenuOpen:!1})}return window.addEventListener(`keydown`,n),()=>window.removeEventListener(`keydown`,n)},[e]),(0,z.jsxs)(z.Fragment,{children:[(0,z.jsx)(`div`,{className:_(`xl:hidden fixed inset-0 z-40 bg-black/50 transition-opacity duration-200`,e?`opacity-100`:`opacity-0 pointer-events-none`),onClick:()=>t({mobileMenuOpen:!1})}),(0,z.jsxs)(`aside`,{inert:!e,className:_(`xl:hidden fixed inset-y-0 left-0 z-50 w-[280px] flex flex-col pt-[var(--sat)] bg-card border-r border-border transition-transform duration-200 ease-out`,e?`translate-x-0`:`-translate-x-full`),children:[(0,z.jsxs)(`div`,{className:`px-5 py-4 font-bold text-base border-b border-border flex items-center gap-2`,children:[(0,z.jsx)(m,{className:`w-4 h-4 text-primary`}),`Agent Relay`,(0,z.jsx)(`button`,{onClick:()=>t({mobileMenuOpen:!1}),className:`ml-auto p-1 text-muted-foreground hover:text-foreground transition-colors`,"aria-label":`Close menu`,children:(0,z.jsx)(Me,{className:`w-4 h-4`})})]}),(0,z.jsx)(tl,{})]})]})}var il=500*1024,al={bash:`bash`,c:`c`,conf:`properties`,cpp:`cpp`,cs:`csharp`,css:`css`,csv:`csv`,cts:`typescript`,diff:`diff`,dockerfile:`dockerfile`,env:`dotenv`,gemspec:`ruby`,go:`go`,graphql:`graphql`,h:`c`,hcl:`hcl`,hpp:`cpp`,html:`html`,ini:`ini`,java:`java`,js:`javascript`,json:`json`,jsonc:`jsonc`,jsx:`jsx`,kt:`kotlin`,less:`less`,log:`log`,lua:`lua`,mjs:`javascript`,mts:`typescript`,patch:`diff`,php:`php`,plist:`xml`,podspec:`ruby`,properties:`properties`,py:`python`,rake:`ruby`,rb:`ruby`,rs:`rust`,scss:`scss`,sh:`bash`,sql:`sql`,svelte:`svelte`,swift:`swift`,toml:`toml`,ts:`typescript`,tsx:`tsx`,txt:`text`,vue:`vue`,webmanifest:`json`,xml:`xml`,yaml:`yaml`,yml:`yaml`,zsh:`bash`},ol={".bashrc":`bash`,".env":`dotenv`,".eslintrc":`json`,".gitignore":`gitignore`,".npmrc":`properties`,".prettierrc":`json`,".swiftformat":`properties`,".swiftlint.yml":`yaml`,".watchmanconfig":`json`,"app.config":`json`,"app.webmanifest":`json`,berksfile:`ruby`,brewfile:`ruby`,"bun.lock":`json`,capfile:`ruby`,cartfile:`ruby`,"composer.lock":`json`,dangerfile:`ruby`,"deno.lock":`json`,fastfile:`ruby`,"flake.lock":`json`,gemfile:`ruby`,guardfile:`ruby`,podfile:`ruby`,rakefile:`ruby`,dockerfile:`dockerfile`,makefile:`make`},sl=null;function cl(){return sl??=L(()=>import(`./bundle-web-CXNb85wK.js`),__vite__mapDeps([0,1,2,3]),import.meta.url),sl}function ll(e){return new TextEncoder().encode(e).length}function ul(e){return e.split(`/`).filter(Boolean).pop()||e}function dl(e){let t=e?.slice(0,240).split(/\r?\n/,1)[0]?.toLowerCase()||``;return t.startsWith(`#!`)?/\b(bash|dash|ksh|sh|zsh)\b/.test(t)?`bash`:/\bfish\b/.test(t)?`fish`:/\b(ts-node|tsx)\b/.test(t)?`typescript`:/\b(node|bun|deno)\b/.test(t)?`javascript`:/\bpython[0-9.]*\b/.test(t)?`python`:/\bruby\b/.test(t)?`ruby`:/\bswift\b/.test(t)?`swift`:/\bperl\b/.test(t)?`perl`:/\bphp\b/.test(t)?`php`:null:null}function fl(e,t,n,r){if(n)return n;let i=ul(e).toLowerCase();if(ol[i])return ol[i];if(i.endsWith(`.d.ts`))return`typescript`;let a=dl(r);if(a)return a;let o=i.includes(`.`)?i.slice(i.lastIndexOf(`.`)+1):``;return o&&al[o]?al[o]:t?.includes(`json`)?`json`:t?.includes(`javascript`)?`javascript`:t?.includes(`typescript`)?`typescript`:t?.includes(`xml`)?`xml`:t?.includes(`yaml`)||t?.includes(`yml`)?`yaml`:t?.includes(`shellscript`)?`bash`:null}function pl(e,t,n,r){let i=fl(e,t,n,r);return!!(i&&i!==`text`&&i!==`log`)}var ml=(0,R.memo)(function({content:e,path:t,mediaType:n,languageHint:r,compact:i=!1}){let a=A(e=>e.theme),o=Qt.find(e=>e.id===a)?.dark??!0,s=(0,R.useMemo)(()=>fl(t,n,r,e)||`text`,[e,r,n,t]),c=ll(e)>il,[l,u]=(0,R.useState)(``),[d,f]=(0,R.useState)(!1),[p,m]=(0,R.useState)(!1);function h(){return(0,z.jsx)(kn,{value:e,label:`Copy code`,copiedLabel:`Copied code`,size:`icon`,variant:`ghost`,className:`absolute right-2 top-2 h-7 w-7 bg-background/80 opacity-0 shadow-sm backdrop-blur transition-opacity hover:bg-muted group-hover/code:opacity-100 focus-visible:opacity-100`})}return(0,R.useEffect)(()=>{if(c||s===`text`||s===`log`){u(``),f(!1),m(!1);return}let t=!1;return f(!0),m(!1),cl().then(({codeToHtml:t})=>t(e,{lang:s,theme:o?`github-dark-default`:`github-light-default`})).then(e=>{t||u(e)}).catch(()=>{t||(u(``),m(!0))}).finally(()=>{t||f(!1)}),()=>{t=!0}},[e,o,s,c]),d?(0,z.jsxs)(`div`,{className:`flex items-center gap-2 p-4 text-sm text-muted-foreground`,children:[(0,z.jsx)(Re,{className:`h-4 w-4 animate-spin`}),`Highlighting`]}):c||p||!l?(0,z.jsxs)(`div`,{className:`group/code relative`,children:[h(),(0,z.jsx)(`pre`,{className:`overflow-auto whitespace-pre-wrap break-words font-mono text-xs leading-5 ${i?`p-3`:`p-4`}`,children:e||` `})]}):(0,z.jsxs)(`div`,{className:`group/code relative`,children:[h(),(0,z.jsx)(`div`,{className:`code-preview overflow-auto font-mono text-xs leading-5 ${i?`p-3`:`p-4`}`,dangerouslySetInnerHTML:{__html:l}})]})}),hl=(0,R.lazy)(()=>L(()=>import(`./markdown-preview-impl-MgZ3Nr7K.js`).then(e=>({default:e.MarkdownPreview})),__vite__mapDeps([4,5,1,3,6]),import.meta.url));function gl(e){return(0,z.jsx)(R.Suspense,{fallback:(0,z.jsx)(`div`,{className:`p-4 text-sm text-muted-foreground`,children:`Loading preview…`}),children:(0,z.jsx)(hl,{...e})})}var _l=e(st(),1);function vl({src:e,alt:t,onClose:n}){let[r,i]=(0,R.useState)(!1);return(0,R.useEffect)(()=>{let e=document.body.style.overflow;document.body.style.overflow=`hidden`;function t(e){e.key===`Escape`&&n()}return document.addEventListener(`keydown`,t),()=>{document.body.style.overflow=e,document.removeEventListener(`keydown`,t)}},[n]),(0,z.jsxs)(`div`,{className:`fixed inset-0 z-[100] flex flex-col bg-black/95`,children:[(0,z.jsxs)(`div`,{className:`flex shrink-0 items-center justify-end gap-2 p-2`,children:[(0,z.jsx)(`button`,{type:`button`,className:`rounded-full bg-white/10 p-2 text-white/70 hover:bg-white/20 hover:text-white`,onClick:()=>i(!r),title:r?`Fit to screen`:`Actual size`,children:r?(0,z.jsx)(He,{className:`h-4 w-4`}):(0,z.jsx)(Ke,{className:`h-4 w-4`})}),(0,z.jsx)(`button`,{type:`button`,className:`rounded-full bg-white/10 p-2 text-white/70 hover:bg-white/20 hover:text-white`,onClick:n,title:`Close`,children:(0,z.jsx)(Me,{className:`h-4 w-4`})})]}),(0,z.jsx)(`div`,{className:`min-h-0 flex-1 ${r?`overflow-auto`:`flex items-center justify-center overflow-hidden p-4`}`,onClick:r?void 0:n,children:(0,z.jsx)(`img`,{src:e,alt:t,className:r?`max-w-none`:`max-h-full max-w-full cursor-zoom-in object-contain`,onClick:e=>{e.stopPropagation(),i(!r)}})})]})}function yl({src:e,alt:t=``,className:n,style:r}){let[i,a]=(0,R.useState)(!1);return(0,z.jsxs)(z.Fragment,{children:[(0,z.jsx)(`img`,{src:e,alt:t,className:`${n||``} cursor-zoom-in`,style:r,onClick:()=>a(!0)}),i&&(0,_l.createPortal)((0,z.jsx)(vl,{src:e,alt:t,onClose:()=>a(!1)}),document.body)]})}var bl=`agent-relay:file-git-status`;function xl(){try{return window.localStorage.getItem(bl)!==`off`}catch{return!0}}function Sl(e){try{window.localStorage.setItem(bl,e?`on`:`off`)}catch{}}function Cl(e){switch(e){case`staged`:return{dot:`bg-green-500`,text:`text-green-400`,label:`Staged`};case`unstaged`:return{dot:`bg-amber-500`,text:`text-amber-400`,label:`Modified (unstaged)`};case`staged-unstaged`:return{dot:`bg-amber-500`,text:`text-green-400`,label:`Staged + unstaged changes`};case`untracked`:return{dot:`bg-sky-500`,text:`text-sky-400`,label:`Untracked`};default:return null}}function wl(e,t,n){let r=`/orchestrators/${encodeURIComponent(e)}/files/list?path=${encodeURIComponent(t)}`;return n?`${r}&git=1`:r}function Tl({status:e}){let t=Cl(e);return t?(0,z.jsx)(`span`,{className:`h-1.5 w-1.5 shrink-0 rounded-full ${t.dot}`,title:t.label}):null}function El(e){return e===void 0?``:e<1024?`${e} B`:e<1024*1024?`${(e/1024).toFixed(1)} KB`:`${(e/1024/1024).toFixed(1)} MB`}function Dl(e,t){let n=t.replace(/\/+$/,``);return e===n?`/`:e.startsWith(n+`/`)?e.slice(n.length+1):e}function Ol(e,t){let n=e.toLowerCase();return n.endsWith(`.md`)||n.endsWith(`.mdx`)||n.endsWith(`.markdown`)||t===`text/markdown`}function kl(e,t,n){return Ol(e,t)?`markdown`:pl(e,t,void 0,n)?`code`:null}function Al(e){return`agent-relay:file-view-mode:${e}`}function jl(e){try{let t=window.localStorage.getItem(Al(e));return t===`raw`||t===`rendered`?t:`rendered`}catch{return`rendered`}}function Ml(e,t){try{window.localStorage.setItem(Al(e),t)}catch{}}function Nl(e,t){let n=Dl(e,t);if(n===`/`)return[{label:`/`,path:t}];let r=n.split(`/`).filter(Boolean),i=[{label:`/`,path:t}];for(let e=0;e<r.length;e++)i.push({label:r[e],path:`${t.replace(/\/+$/,``)}/${r.slice(0,e+1).join(`/`)}`});return i}function Pl(e,t){let n=A(e=>e.apiCall),[r,i]=(0,R.useState)(null),[a,o]=(0,R.useState)(!1),[s,c]=(0,R.useState)(``);return(0,R.useEffect)(()=>{if(!e||!t){i(null),c(``);return}let r=!1;return o(!0),c(``),n(`GET`,`/orchestrators/${encodeURIComponent(e)}/files/read?path=${encodeURIComponent(t)}`).then(e=>{r||i(e)}).catch(e=>{r||(i(null),c(Ot(e)))}).finally(()=>{r||o(!1)}),()=>{r=!0}},[n,e,t]),{file:r,loading:a,error:s}}function Fl(e,t,n=!1){let r=A(e=>e.apiCall),[i,a]=(0,R.useState)(null),[o,s]=(0,R.useState)(!1),[c,l]=(0,R.useState)(``);return(0,R.useEffect)(()=>{if(!e||!t){a(null),l(``);return}let i=!1;return s(!0),l(``),r(`GET`,wl(e,t,n)).then(e=>{i||a(e)}).catch(e=>{i||(a(null),l(Ot(e)))}).finally(()=>{i||s(!1)}),()=>{i=!0}},[r,e,t,n]),{listing:i,loading:o,error:c}}function Il({content:e,line:t,lineRef:n}){return(0,z.jsx)(`div`,{className:`w-full py-2 font-mono text-xs leading-5`,children:e.split(`
15
- `).map((e,r)=>{let i=r+1,a=i===t;return(0,z.jsxs)(`div`,{ref:a?n:void 0,className:`grid grid-cols-[2.5rem_minmax(0,1fr)] px-1 sm:grid-cols-[4rem_minmax(0,1fr)] sm:px-2 ${a?`bg-primary/15`:``}`,children:[(0,z.jsx)(`div`,{className:`select-none pr-2 text-right text-muted-foreground sm:pr-3`,children:i}),(0,z.jsx)(`pre`,{className:`overflow-hidden whitespace-pre-wrap break-words`,children:e||` `})]},i)})})}function Ll({orchestratorId:e,selectedPath:t,onReadError:n,git:r=!1}){let{listing:i,loading:a,error:o}=Fl(e,t,r);return(0,R.useEffect)(()=>{n(o)},[o,n]),t?a?(0,z.jsxs)(`div`,{className:`flex h-full items-center justify-center gap-2 text-sm text-muted-foreground`,children:[(0,z.jsx)(Re,{className:`h-4 w-4 animate-spin`}),`Loading directory`]}):o?(0,z.jsx)(`div`,{className:`h-full bg-muted/20`}):i?(0,z.jsxs)(`div`,{className:`h-full overflow-auto bg-muted/20`,children:[(0,z.jsxs)(`div`,{className:`sticky top-0 z-10 flex items-center gap-2 border-b border-border bg-background px-3 py-2 text-xs`,children:[(0,z.jsx)(ne,{className:`h-3.5 w-3.5 text-blue-400`}),(0,z.jsx)(`span`,{className:`min-w-0 flex-1 truncate font-mono`,children:i.path}),(0,z.jsxs)(P,{variant:`outline`,className:`text-[10px]`,children:[i.entries.length,` items`]})]}),(0,z.jsxs)(`div`,{className:`divide-y divide-border/60`,children:[i.entries.map(e=>{let t=e.type===`directory`?ne:h,n=Cl(e.gitStatus);return(0,z.jsxs)(`div`,{className:`flex items-center gap-2 px-3 py-2 text-sm`,children:[(0,z.jsx)(t,{className:`h-4 w-4 shrink-0 ${e.type===`directory`?`text-blue-400`:`text-muted-foreground`}`}),(0,z.jsx)(`span`,{className:`min-w-0 flex-1 truncate font-mono text-xs ${n?.text??``}`,children:e.name}),e.symlink&&(0,z.jsx)(Te,{className:`h-3 w-3 shrink-0 text-muted-foreground/60`}),(0,z.jsx)(Tl,{status:e.gitStatus}),e.type!==`directory`&&(0,z.jsx)(`span`,{className:`text-[10px] text-muted-foreground`,children:El(e.size)})]},e.path)}),i.entries.length===0&&(0,z.jsx)(`div`,{className:`px-3 py-8 text-center text-sm text-muted-foreground`,children:`No files`})]})]}):null:(0,z.jsx)(`div`,{className:`flex h-full items-center justify-center text-sm text-muted-foreground`,children:`Select a directory to preview`})}function Rl({orchestratorId:e,selectedPath:t,line:n,onReadError:r}){let{file:i,loading:a,error:o}=Pl(e,t),s=(0,R.useRef)(null),[c,l]=(0,R.useState)(`raw`);(0,R.useEffect)(()=>{r(o)},[o,r]),(0,R.useEffect)(()=>{n>0&&s.current?.scrollIntoView({block:`center`})},[i,n]),(0,R.useEffect)(()=>{if(!i||i.encoding===`binary`)return;if(n>0){l(`raw`);return}let e=kl(i.path,i.mediaType,i.content);l(e?jl(e):`raw`)},[i?.path,i?.encoding,i?.mediaType,i?.content,n]);function u(e,t){l(e),t&&Ml(t,e)}if(!t)return(0,z.jsx)(`div`,{className:`flex h-full items-center justify-center text-sm text-muted-foreground`,children:`Select a file to preview`});if(a)return(0,z.jsxs)(`div`,{className:`flex h-full items-center justify-center gap-2 text-sm text-muted-foreground`,children:[(0,z.jsx)(Re,{className:`h-4 w-4 animate-spin`}),`Loading file`]});if(o)return(0,z.jsx)(`div`,{className:`h-full bg-muted/20`});if(!i)return null;if(i.encoding===`base64`)return(0,z.jsxs)(`div`,{className:`flex h-full flex-col bg-muted/20`,children:[(0,z.jsxs)(`div`,{className:`sticky top-0 z-10 flex items-center gap-2 border-b border-border bg-background px-3 py-2 text-xs`,children:[(0,z.jsx)(h,{className:`h-3.5 w-3.5 text-muted-foreground`}),(0,z.jsx)(`span`,{className:`min-w-0 flex-1 truncate font-mono`,children:i.path}),(0,z.jsx)(kn,{value:i.path,label:`Copy path`,copiedLabel:`Copied path`,size:`icon`,variant:`ghost`,className:`h-7 w-7 shrink-0`}),(0,z.jsx)(P,{variant:`outline`,className:`text-[10px]`,children:El(i.size)})]}),(0,z.jsx)(`div`,{className:`flex min-h-0 flex-1 items-center justify-center overflow-auto p-4`,children:(0,z.jsx)(yl,{src:`data:${i.mediaType};base64,${i.content??``}`,alt:i.name,className:`max-h-full max-w-full object-contain`,style:{imageRendering:i.mediaType===`image/svg+xml`?`auto`:void 0}})})]});if(i.encoding===`binary`)return(0,z.jsxs)(`div`,{className:`p-4 text-sm`,children:[(0,z.jsx)(`div`,{className:`font-medium`,children:i.name}),(0,z.jsx)(`div`,{className:`mt-1 text-muted-foreground`,children:i.truncated?`File too large to preview.`:`Binary file preview is not available.`}),(0,z.jsxs)(`div`,{className:`mt-3 flex gap-2`,children:[(0,z.jsx)(P,{variant:`secondary`,children:i.mediaType}),(0,z.jsx)(P,{variant:`outline`,children:El(i.size)})]})]});let d=i.content??``,f=Ol(i.path,i.mediaType),p=!f&&pl(i.path,i.mediaType,void 0,d),m=f||p,g=f?`markdown`:p?`code`:null;return(0,z.jsxs)(`div`,{className:`h-full overflow-auto bg-muted/20`,children:[(0,z.jsxs)(`div`,{className:`sticky top-0 z-10 flex items-center gap-2 border-b border-border bg-background px-3 py-2 text-xs`,children:[(0,z.jsx)(h,{className:`h-3.5 w-3.5 text-muted-foreground`}),(0,z.jsx)(`span`,{className:`min-w-0 flex-1 truncate font-mono`,children:i.path}),(0,z.jsx)(kn,{value:i.path,label:`Copy path`,copiedLabel:`Copied path`,size:`icon`,variant:`ghost`,className:`h-7 w-7 shrink-0`}),i.truncated&&(0,z.jsx)(P,{variant:`secondary`,className:`text-[10px]`,children:`truncated`}),(0,z.jsx)(P,{variant:`outline`,className:`text-[10px]`,children:El(i.size)}),m&&(0,z.jsxs)(`div`,{className:`flex shrink-0 rounded-md border border-border bg-muted/40 p-0.5`,children:[(0,z.jsx)(`button`,{type:`button`,className:`rounded px-2 py-1 text-[10px] font-medium ${c===`raw`?`bg-background text-foreground shadow-sm`:`text-muted-foreground hover:text-foreground`}`,onClick:()=>u(`raw`,g),children:`Raw`}),(0,z.jsx)(`button`,{type:`button`,className:`rounded px-2 py-1 text-[10px] font-medium ${c===`rendered`?`bg-background text-foreground shadow-sm`:`text-muted-foreground hover:text-foreground`}`,onClick:()=>u(`rendered`,g),children:f?`Rendered`:`Highlighted`})]})]}),c===`rendered`&&f&&(0,z.jsx)(gl,{content:d,path:i.path}),c===`rendered`&&p&&(0,z.jsx)(ml,{content:d,path:i.path,mediaType:i.mediaType}),c===`raw`&&(0,z.jsx)(Il,{content:d,line:n,lineRef:s})]})}function zl({overlay:e=!1}){let t=A(e=>e.apiCall),n=A(e=>e.orchestrators),r=A(e=>e.fileOrchestratorId),i=A(e=>e.filePath),a=A(e=>e.fileSelectedPath),o=A(e=>e.fileSelectedLine),s=A(e=>e.set),c=A(e=>e.closeFileOverlay),l=A(e=>e.openOrchestratorSpawnAt),[u,d]=(0,R.useState)(null),[f,m]=(0,R.useState)(i),[g,_]=(0,R.useState)(!1),[v,y]=(0,R.useState)(``),[b,x]=(0,R.useState)(``),[S,C]=(0,R.useState)(xl),ee=(0,R.useMemo)(()=>n.filter(e=>e.status===`online`),[n]),w=n.find(e=>e.id===r)||ee[0];(0,R.useEffect)(()=>{if(!w)return;let e={};r||(e.fileOrchestratorId=w.id),i||(e.filePath=w.baseDir),Object.keys(e).length&&s(e)},[r,i,w,s]),(0,R.useEffect)(()=>m(i),[i]);async function te(e=i){if(!(!w||!e)){_(!0),y(``);try{let n=await t(`GET`,wl(w.id,e,S));d(n),s({filePath:n.path}),m(n.path),x(``)}catch(e){y(Ot(e))}finally{_(!1)}}}(0,R.useEffect)(()=>{te(i)},[w?.id,i,S]);function ie(e){C(e),Sl(e)}function ae(e){s({fileOrchestratorId:e,filePath:n.find(t=>t.id===e)?.baseDir||``,fileSelectedPath:``,fileSelectedLine:0})}function se(e){x(``),e.type===`directory`?s({filePath:e.path,fileSelectedPath:``,fileSelectedLine:0}):s({fileSelectedPath:e.path,fileSelectedLine:0})}function T(){if(!w)return;let t=f.trim()||i||w.baseDir;e&&c(),l({orchestratorId:w.id,cwd:t})}let E=u?Nl(u.path,u.baseDir):[],ce=v||b;return(0,z.jsxs)(`div`,{className:e?`flex h-full flex-col`:`flex h-[calc(100dvh-5rem)] flex-col gap-3 md:gap-4`,children:[(0,z.jsxs)(`div`,{className:`flex flex-wrap items-center gap-2 ${a?`hidden md:flex`:``}`,children:[(0,z.jsxs)(`div`,{className:`flex items-center gap-2 text-lg font-semibold`,children:[(0,z.jsx)(Ie,{className:`h-5 w-5 text-primary`}),`Files`]}),(0,z.jsxs)(`select`,{value:w?.id||``,onChange:e=>ae(e.target.value),className:`h-9 rounded-md border border-input bg-background px-3 text-sm`,children:[ee.length===0&&(0,z.jsx)(`option`,{value:``,children:`No online orchestrators`}),ee.map(e=>(0,z.jsx)(`option`,{value:e.id,children:e.hostname||e.id},e.id))]}),e&&(0,z.jsx)(F,{size:`icon`,variant:`ghost`,className:`ml-auto h-8 w-8`,onClick:c,title:`Close`,children:(0,z.jsx)(Me,{className:`h-4 w-4`})})]}),(0,z.jsxs)(`div`,{className:`flex flex-wrap items-center gap-2 ${a?`hidden md:flex`:``}`,children:[(0,z.jsx)(I,{value:f,onChange:e=>m(e.target.value),onKeyDown:e=>{e.key===`Enter`&&s({filePath:f,fileSelectedPath:``,fileSelectedLine:0})},className:`min-w-0 flex-1 basis-full font-mono text-xs sm:basis-auto`,placeholder:w?.baseDir||`Path`}),(0,z.jsxs)(F,{size:`sm`,variant:`outline`,className:`gap-1`,onClick:()=>te(f),disabled:g||!w,children:[g?(0,z.jsx)(Re,{className:`h-3.5 w-3.5 animate-spin`}):(0,z.jsx)(re,{className:`h-3.5 w-3.5`}),`Open`]}),(0,z.jsxs)(F,{size:`sm`,className:`gap-1`,onClick:T,disabled:!w,children:[(0,z.jsx)(oe,{className:`h-3.5 w-3.5`}),(0,z.jsx)(`span`,{className:`sm:hidden`,children:`Spawn`}),(0,z.jsx)(`span`,{className:`hidden sm:inline`,children:`Spawn from here`})]}),(0,z.jsxs)(`label`,{className:`flex items-center gap-1.5 text-xs text-muted-foreground`,title:`Show git status colors`,children:[(0,z.jsx)(p,{className:`h-3.5 w-3.5`}),(0,z.jsx)(`span`,{className:`hidden sm:inline`,children:`Git`}),(0,z.jsx)(Hc,{checked:S,onCheckedChange:ie})]})]}),E.length>0&&(0,z.jsx)(`div`,{className:`flex flex-wrap items-center gap-1 text-xs text-muted-foreground ${a?`hidden md:flex`:``}`,children:E.map((e,t)=>(0,z.jsxs)(`button`,{type:`button`,className:`rounded px-1.5 py-0.5 font-mono hover:bg-accent hover:text-foreground`,onClick:()=>s({filePath:e.path,fileSelectedPath:``,fileSelectedLine:0}),children:[e.label,t<E.length-1&&e.label!==`/`?` /`:``]},`${e.path}-${t}`))}),ce&&(0,z.jsx)(`div`,{className:`rounded-md border border-destructive/40 bg-destructive/10 px-3 py-2 text-sm text-destructive`,children:ce}),(0,z.jsxs)(`div`,{className:`grid min-h-0 flex-1 overflow-hidden md:rounded-md md:border md:border-border md:grid-cols-[22rem_minmax(0,1fr)] ${a?``:`rounded-md border border-border`}`,children:[(0,z.jsxs)(`div`,{className:`min-h-0 overflow-auto border-b border-border bg-card md:border-b-0 md:border-r ${a?`hidden md:block`:``}`,children:[u?.parent&&(0,z.jsxs)(`button`,{type:`button`,className:`flex w-full items-center gap-2 px-3 py-2 text-left text-sm hover:bg-accent`,onClick:()=>s({filePath:u.parent,fileSelectedPath:``,fileSelectedLine:0}),children:[(0,z.jsx)(ge,{className:`h-4 w-4 text-muted-foreground`}),(0,z.jsx)(`span`,{children:`Parent directory`})]}),u?.entries.map(e=>{let t=a===e.path||i===e.path,n=e.type===`directory`?ne:h,r=Cl(e.gitStatus);return(0,z.jsxs)(`button`,{type:`button`,className:`flex w-full items-center gap-2 px-3 py-2 text-left text-sm hover:bg-accent ${t?`bg-accent`:``}`,onClick:()=>se(e),children:[(0,z.jsx)(n,{className:`h-4 w-4 shrink-0 ${e.type===`directory`?`text-blue-400`:`text-muted-foreground`}`}),(0,z.jsx)(`span`,{className:`min-w-0 flex-1 truncate font-mono text-xs ${r?.text??``}`,children:e.name}),e.symlink&&(0,z.jsx)(Te,{className:`h-3 w-3 shrink-0 text-muted-foreground/60`}),(0,z.jsx)(Tl,{status:e.gitStatus}),e.type!==`directory`&&(0,z.jsx)(`span`,{className:`text-[10px] text-muted-foreground`,children:El(e.size)})]},e.path)}),!g&&u&&u.entries.length===0&&(0,z.jsx)(`div`,{className:`px-3 py-8 text-center text-sm text-muted-foreground`,children:`No files`})]}),(0,z.jsxs)(`div`,{className:`flex min-h-0 flex-col overflow-hidden ${a?``:`hidden md:flex`}`,children:[(0,z.jsxs)(`button`,{type:`button`,className:`flex items-center gap-1.5 border-b border-border px-3 py-2 text-xs text-muted-foreground hover:text-foreground md:hidden`,onClick:()=>s({fileSelectedPath:``,fileSelectedLine:0}),children:[(0,z.jsx)(ge,{className:`h-3.5 w-3.5`}),`Back to files`]}),(0,z.jsx)(`div`,{className:`min-h-0 flex-1`,children:(0,z.jsx)(Rl,{orchestratorId:w?.id||``,selectedPath:a,line:o,onReadError:x})})]})]})]})}function G(){return(0,z.jsx)(zl,{})}function Bl(){return A(e=>e.fileOverlayOpen)?(0,z.jsx)(`div`,{className:`fixed inset-0 z-50 bg-background/80 backdrop-blur-sm`,children:(0,z.jsx)(`div`,{className:`absolute inset-4 overflow-hidden rounded-md border border-border bg-background p-4 shadow-xl`,children:(0,z.jsx)(zl,{overlay:!0})})}):null}function K(e,t){let n=R.useRef(!1),r=R.useRef(t);r.current=t,R.useEffect(()=>{if(!e||!r.current)return;window.history.pushState({sheetGuard:!0},``),n.current=!0;function t(){n.current&&(n.current=!1,r.current?.(!1))}return window.addEventListener(`popstate`,t),()=>{window.removeEventListener(`popstate`,t),n.current&&(n.current=!1,window.history.back())}},[e])}function q({...e}){return K(e.open,e.onOpenChange),(0,z.jsx)(Tr,{"data-slot":`sheet`,...e})}function J({...e}){return(0,z.jsx)(Er,{"data-slot":`sheet-portal`,...e})}function Vl({className:e,...t}){return(0,z.jsx)(Dr,{"data-slot":`sheet-overlay`,className:_(`fixed inset-0 z-50 bg-black/10 duration-100 supports-backdrop-filter:backdrop-blur-xs data-open:animate-in data-open:fade-in-0 data-closed:animate-out data-closed:fade-out-0`,e),...t})}function Hl({className:e,children:t,side:n=`right`,showCloseButton:r=!0,...i}){return(0,z.jsxs)(J,{children:[(0,z.jsx)(Vl,{}),(0,z.jsxs)(Or,{"data-slot":`sheet-content`,"data-side":n,className:_(`fixed z-50 flex flex-col bg-popover bg-clip-padding text-sm text-popover-foreground shadow-lg transition duration-200 ease-in-out overflow-hidden max-w-[100dvw] data-[side=bottom]:inset-x-0 data-[side=bottom]:bottom-0 data-[side=bottom]:h-auto data-[side=bottom]:border-t data-[side=left]:inset-y-0 data-[side=left]:left-0 data-[side=left]:h-full data-[side=left]:w-full data-[side=left]:border-r data-[side=right]:inset-y-0 data-[side=right]:right-0 data-[side=right]:h-full data-[side=right]:w-full data-[side=right]:border-l data-[side=top]:inset-x-0 data-[side=top]:top-0 data-[side=top]:h-auto data-[side=top]:border-b data-open:animate-in data-open:fade-in-0 data-[side=bottom]:data-open:slide-in-from-bottom-10 data-[side=left]:data-open:slide-in-from-left-10 data-[side=right]:data-open:slide-in-from-right-10 data-[side=top]:data-open:slide-in-from-top-10 data-closed:animate-out data-closed:fade-out-0 data-[side=bottom]:data-closed:slide-out-to-bottom-10 data-[side=left]:data-closed:slide-out-to-left-10 data-[side=right]:data-closed:slide-out-to-right-10 data-[side=top]:data-closed:slide-out-to-top-10`,e),...i,children:[t,r&&(0,z.jsx)(jr,{"data-slot":`sheet-close`,asChild:!0,children:(0,z.jsxs)(F,{variant:`ghost`,className:`absolute top-3 right-3`,size:`icon-sm`,children:[(0,z.jsx)(Me,{}),(0,z.jsx)(`span`,{className:`sr-only`,children:`Close`})]})})]})]})}function Ul({className:e,...t}){return(0,z.jsx)(`div`,{"data-slot":`sheet-header`,className:_(`flex flex-col gap-0.5 p-4`,e),...t})}function Wl({className:e,...t}){return(0,z.jsx)(kr,{"data-slot":`sheet-title`,className:_(`font-heading text-base font-medium text-foreground`,e),...t})}function Gl({className:e,orientation:t=`horizontal`,...n}){return(0,z.jsx)(Vs,{"data-slot":`tabs`,"data-orientation":t,className:_(`group/tabs flex gap-2 data-horizontal:flex-col`,e),...n})}var Kl=rn(`group/tabs-list inline-flex w-fit items-center justify-center rounded-lg p-[3px] text-muted-foreground group-data-horizontal/tabs:h-8 group-data-vertical/tabs:h-fit group-data-vertical/tabs:flex-col data-[variant=line]:rounded-none`,{variants:{variant:{default:`bg-muted`,line:`gap-1 bg-transparent`}},defaultVariants:{variant:`default`}});function ql({className:e,variant:t=`default`,...n}){return(0,z.jsx)(Hs,{"data-slot":`tabs-list`,"data-variant":t,className:_(Kl({variant:t}),e),...n})}function Jl({className:e,...t}){return(0,z.jsx)(Us,{"data-slot":`tabs-trigger`,className:_(`relative inline-flex h-[calc(100%-1px)] flex-1 items-center justify-center gap-1.5 rounded-md border border-transparent px-1.5 py-0.5 text-sm font-medium whitespace-nowrap text-foreground/60 transition-all group-data-vertical/tabs:w-full group-data-vertical/tabs:justify-start hover:text-foreground focus-visible:border-ring focus-visible:ring-[3px] focus-visible:ring-ring/50 focus-visible:outline-1 focus-visible:outline-ring disabled:pointer-events-none disabled:opacity-50 has-data-[icon=inline-end]:pr-1 has-data-[icon=inline-start]:pl-1 dark:text-muted-foreground dark:hover:text-foreground group-data-[variant=default]/tabs-list:data-active:shadow-sm group-data-[variant=line]/tabs-list:data-active:shadow-none [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4`,`group-data-[variant=line]/tabs-list:bg-transparent group-data-[variant=line]/tabs-list:data-active:bg-transparent dark:group-data-[variant=line]/tabs-list:data-active:border-transparent dark:group-data-[variant=line]/tabs-list:data-active:bg-transparent`,`data-active:bg-background data-active:text-foreground dark:data-active:border-input dark:data-active:bg-input/30 dark:data-active:text-foreground`,`after:absolute after:bg-foreground after:opacity-0 after:transition-opacity group-data-horizontal/tabs:after:inset-x-0 group-data-horizontal/tabs:after:bottom-[-5px] group-data-horizontal/tabs:after:h-0.5 group-data-vertical/tabs:after:inset-y-0 group-data-vertical/tabs:after:-right-1 group-data-vertical/tabs:after:w-0.5 group-data-[variant=line]/tabs-list:data-active:after:opacity-100`,e),...t})}function Yl({className:e,...t}){return(0,z.jsx)(Ws,{"data-slot":`tabs-content`,className:_(`flex-1 text-sm outline-none`,e),...t})}function Xl({agent:e,now:t,className:n}){return(0,z.jsx)(`span`,{className:_(`inline-block w-2.5 h-2.5 rounded-full shrink-0`,_t(e,t),n)})}function Zl({className:e}){return(0,z.jsx)(`svg`,{xmlns:`http://www.w3.org/2000/svg`,viewBox:`0 0 16 16`,fill:`currentColor`,"aria-hidden":`true`,className:e,children:(0,z.jsx)(`path`,{d:`m3.127 10.604 3.135-1.76.053-.153-.053-.085H6.11l-.525-.032-1.791-.048-1.554-.065-1.505-.08-.38-.081L0 7.832l.036-.234.32-.214.455.04 1.009.069 1.513.105 1.097.064 1.626.17h.259l.036-.105-.089-.065-.068-.064-1.566-1.062-1.695-1.121-.887-.646-.48-.327-.243-.306-.104-.67.435-.48.585.04.15.04.593.456 1.267.981 1.654 1.218.242.202.097-.068.012-.049-.109-.181-.9-1.626-.96-1.655-.428-.686-.113-.411a2 2 0 0 1-.068-.484l.496-.674L4.446 0l.662.089.279.242.411.94.666 1.48 1.033 2.014.302.597.162.553.06.17h.105v-.097l.085-1.134.157-1.392.154-1.792.052-.504.25-.605.497-.327.387.186.319.456-.045.294-.19 1.23-.37 1.93-.243 1.29h.142l.161-.16.654-.868 1.097-1.372.484-.545.565-.601.363-.287h.686l.505.751-.226.775-.707.895-.585.759-.839 1.13-.524.904.048.072.125-.012 1.897-.403 1.024-.186 1.223-.21.553.258.06.263-.218.536-1.307.323-1.533.307-2.284.54-.028.02.032.04 1.029.098.44.024h1.077l2.005.15.525.346.315.424-.053.323-.807.411-3.631-.863-.872-.218h-.12v.073l.726.71 1.331 1.202 1.667 1.55.084.383-.214.302-.226-.032-1.464-1.101-.565-.497-1.28-1.077h-.084v.113l.295.432 1.557 2.34.08.718-.112.234-.404.141-.444-.08-.911-1.28-.94-1.44-.759-1.291-.093.053-.448 4.821-.21.246-.484.186-.403-.307-.214-.496.214-.98.258-1.28.21-1.016.19-1.263.112-.42-.008-.028-.092.012-.953 1.307-1.448 1.957-1.146 1.227-.274.109-.477-.247.045-.44.266-.39 1.586-2.018.956-1.25.617-.723-.004-.105h-.036l-4.212 2.736-.75.096-.324-.302.04-.496.154-.162 1.267-.871z`})})}function Ql({className:e}){return(0,z.jsx)(`svg`,{xmlns:`http://www.w3.org/2000/svg`,viewBox:`0 0 24 24`,fill:`currentColor`,"aria-hidden":`true`,className:e,children:(0,z.jsx)(`path`,{d:`M22.282 9.821a5.985 5.985 0 0 0-.516-4.91 6.046 6.046 0 0 0-6.51-2.9A6.065 6.065 0 0 0 4.981 4.18a5.985 5.985 0 0 0-3.998 2.9 6.046 6.046 0 0 0 .743 7.097 5.98 5.98 0 0 0 .51 4.911 6.051 6.051 0 0 0 6.515 2.9A5.985 5.985 0 0 0 13.26 24a6.056 6.056 0 0 0 5.772-4.206 5.99 5.99 0 0 0 3.997-2.9 6.056 6.056 0 0 0-.747-7.073zM13.26 22.43a4.476 4.476 0 0 1-2.876-1.04l.141-.081 4.779-2.758a.795.795 0 0 0 .392-.681v-6.737l2.02 1.168a.071.071 0 0 1 .038.052v5.583a4.504 4.504 0 0 1-4.494 4.494zM3.6 18.304a4.47 4.47 0 0 1-.535-3.014l.142.085 4.783 2.759a.771.771 0 0 0 .78 0l5.843-3.369v2.332a.08.08 0 0 1-.033.062L9.74 19.95a4.5 4.5 0 0 1-6.14-1.646zM2.34 7.896a4.485 4.485 0 0 1 2.366-1.973V11.6a.766.766 0 0 0 .388.676l5.815 3.355-2.02 1.168a.076.076 0 0 1-.071 0l-4.83-2.786A4.504 4.504 0 0 1 2.34 7.872zm16.597 3.855-5.833-3.387L15.119 7.2a.076.076 0 0 1 .071 0l4.83 2.791a4.494 4.494 0 0 1-.676 8.105v-5.678a.79.79 0 0 0-.407-.667zm2.01-3.023-.141-.085-4.774-2.782a.776.776 0 0 0-.785 0L9.409 9.23V6.897a.066.066 0 0 1 .028-.061l4.83-2.787a4.5 4.5 0 0 1 6.68 4.66zm-12.64 4.135-2.02-1.164a.08.08 0 0 1-.038-.057V6.075a4.5 4.5 0 0 1 7.375-3.453l-.142.08L8.704 5.46a.795.795 0 0 0-.393.681zm1.097-2.365 2.602-1.5 2.607 1.5v2.999l-2.597 1.5-2.607-1.5z`})})}var $l={claude:Zl,anthropic:Zl,codex:Ql,openai:Ql},eu={claude:`text-orange-400`,anthropic:`text-orange-400`};function tu({provider:e,className:t}){let n=e.toLowerCase(),r=$l[n];return r?(0,z.jsx)(`span`,{role:`img`,"aria-label":e,title:e,className:`inline-flex shrink-0`,children:(0,z.jsx)(r,{className:_(eu[n],t)})}):(0,z.jsx)(`span`,{className:`capitalize`,children:e})}var nu={codex:`text-blue-400 bg-blue-500/10 border-blue-500/25`,claude:`text-orange-400 bg-orange-500/10 border-orange-500/25`,user:`text-emerald-400 bg-emerald-500/10 border-emerald-500/25`,system:`text-purple-400 bg-purple-500/10 border-purple-500/25`,channel:`text-blue-400 bg-blue-500/10 border-blue-500/25`,agent:`text-zinc-400 bg-zinc-500/10 border-zinc-500/25`},ru={codex:Ee,claude:Zl,user:Qe,system:E,channel:_e,agent:d};function iu({agent:e,className:t}){let n=Vt(e),r=ru[n]||d;return(0,z.jsx)(`span`,{className:_(`inline-flex items-center justify-center w-5 h-5 rounded-md border text-sm`,nu[n]||nu.agent,t),children:(0,z.jsx)(r,{className:`w-3.5 h-3.5`})})}function au({agent:e,compact:t=!1}){let n=hu(e);return n.length===0?null:(0,z.jsx)(`div`,{className:`flex flex-wrap gap-1`,children:n.slice(0,t?4:void 0).map(e=>(0,z.jsx)(P,{variant:`outline`,className:`text-[9px] px-1 py-0 h-4`,children:e},e))})}function ou({agent:e,compact:t=!1,className:n=``}){let r=cu(e);return(0,z.jsx)(`div`,{className:`flex flex-wrap items-center gap-1 ${n}`,children:r.map(e=>{let n=e.Icon;return(0,z.jsxs)(`span`,{title:e.title,className:`inline-flex h-5 min-w-5 items-center justify-center gap-1 rounded-md border px-1.5 text-[10px] leading-none ${e.className}`,children:[(0,z.jsx)(n,{className:`h-3 w-3 shrink-0`}),!t&&(0,z.jsx)(`span`,{children:e.label})]},e.key)})})}function su({agent:e}){let t=e.context;if(!t)return null;let n=vu(t);if(n===null)return(0,z.jsxs)(`div`,{className:`space-y-1`,title:yu(t),children:[(0,z.jsxs)(`div`,{className:`flex justify-between text-[10px] text-muted-foreground`,children:[(0,z.jsx)(`span`,{children:`collecting`}),(0,z.jsx)(`span`,{children:`--`})]}),(0,z.jsx)(`div`,{className:`h-1.5 rounded-full bg-muted overflow-hidden`,children:(0,z.jsx)(`div`,{className:`h-full w-0 bg-muted-foreground/30`})})]});let r=Math.round(n*100),i=r>=80?`bg-red-500`:r>=60?`bg-yellow-500`:`bg-emerald-500`;return(0,z.jsxs)(`div`,{className:`space-y-1`,title:yu(t),children:[(0,z.jsxs)(`div`,{className:`flex justify-between text-[10px] text-muted-foreground`,children:[(0,z.jsx)(`span`,{children:t.lifecycleState}),(0,z.jsxs)(`span`,{children:[r,`%`]})]}),(0,z.jsx)(`div`,{className:`h-1.5 rounded-full bg-muted overflow-hidden`,children:(0,z.jsx)(`div`,{className:`h-full ${i}`,style:{width:`${Math.max(0,Math.min(100,r))}%`}})})]})}function cu(e){let t=lu(e),n=uu(e),r=du(e);return[{key:`origin`,label:t?`Relay`:`External`,title:t?`Agent Relay spawned this agent`:`Externally started agent registered with Agent Relay`,Icon:t?w:T,className:t?`border-sky-500/30 bg-sky-500/10 text-sky-300`:`border-zinc-500/30 bg-zinc-500/10 text-zinc-300`},n,r]}function lu(e){return typeof e.meta?.spawnRequestId==`string`||typeof e.meta?.policyName==`string`||typeof e.meta?.automationRunId==`string`}function uu(e){let t=String(e.providerCapabilities?.session?.approvalMode||e.meta?.approvalMode||`guarded`).toLowerCase();return t===`open`?{key:`approval`,label:`Open`,title:`Approval mode: open`,Icon:xe,className:`border-emerald-500/30 bg-emerald-500/10 text-emerald-300`}:t===`read-only`?{key:`approval`,label:`Read-only`,title:`Approval mode: read-only`,Icon:s,className:`border-blue-500/30 bg-blue-500/10 text-blue-300`}:{key:`approval`,label:`Guarded`,title:`Approval mode: guarded`,Icon:Xe,className:`border-amber-500/30 bg-amber-500/10 text-amber-300`}}function du(e){let t=fu(e.meta?.workspace),n=Bt(t.requestedMode)||Bt(e.meta?.workspaceMode),r=Bt(t.mode),i=n&&n!==`inherit`?n:r&&n!==`inherit`?r:`default`;return i===`isolated`?{key:`workspace`,label:`Isolated`,title:`Workspace: isolated worktree`,Icon:p,iconColor:`text-violet-300`,className:`border-violet-500/30 bg-violet-500/10 text-violet-300`}:i===`shared`?{key:`workspace`,label:`Shared`,title:`Workspace: shared repo checkout`,Icon:c,iconColor:`text-cyan-300`,className:`border-cyan-500/30 bg-cyan-500/10 text-cyan-300`}:{key:`workspace`,label:`Default`,title:r?`Workspace: default/inherit, resolved to ${r}`:`Workspace: default/inherit`,Icon:Oe,iconColor:`text-zinc-400`,className:`border-zinc-500/30 bg-zinc-500/10 text-zinc-300`}}function fu(e){return e&&typeof e==`object`&&!Array.isArray(e)?e:{}}function pu(e){let t=fu(e.meta?.workspace),n=Bt(t.repoRoot)||Bt(t.sourceCwd)||Bt(e.meta?.cwd);return n?Ct(n,2):``}function mu(e){return!!(e.context||e.providerCapabilities?.context)}function hu(e){let t=e.providerCapabilities,n=e.context,r=[];t?.lifecycle.managed?r.push(`managed`):t&&r.push(`bridge`),t?.session?.approvalMode===`read-only`?r.push(`read-only`):t?.session?.fileWrite&&r.push(`write`),t?.session?.shell&&r.push(`shell`),(t?.model?.alias||t?.model?.id)&&r.push(String(t.model.alias||t.model.id));let i=Gt(e).length;if(i&&r.push(i===1?`1 subagent`:`${i} subagents`),n){let e=vu(n);r.push(e===null?`ctx collecting`:`${Math.round(e*100)}% ctx`)}return r}function gu({context:e,expected:t=!!e,size:n=26,className:r}){let i=vu(e);if(i===null&&!t)return null;let a=n>=24?3:2.5,o=n/2,s=o-a,c=2*Math.PI*s,l=i===null?c:c*(1-i),u=i===null,d=u?`text-muted-foreground`:i>.8?`text-red-400`:i>.5?`text-yellow-400`:`text-emerald-400`,f=u?null:Math.round(i*100);return(0,z.jsxs)(`div`,{className:`relative shrink-0 ${u?`opacity-70`:``} ${r??``}`,style:{width:n,height:n},title:yu(e),children:[(0,z.jsxs)(`svg`,{width:n,height:n,viewBox:`0 0 ${n} ${n}`,className:`rotate-[-90deg]`,children:[(0,z.jsx)(`circle`,{cx:o,cy:o,r:s,fill:`none`,strokeWidth:a,className:`stroke-muted-foreground/20`}),(0,z.jsx)(`circle`,{cx:o,cy:o,r:s,fill:`none`,strokeWidth:a,strokeDasharray:c,strokeDashoffset:l,strokeLinecap:`round`,className:`${d} stroke-current transition-all duration-500`})]}),(0,z.jsx)(`span`,{className:`absolute inset-0 flex items-center justify-center font-semibold leading-none ${u?`text-muted-foreground`:d}`,style:{fontSize:n>=24?8:7},children:u?`?`:f})]})}function _u(e){let t=e.context;return!t?.tokensUsed&&!t?.tokensMax?null:t.tokensUsed&&t.tokensMax?`${bu(t.tokensUsed)} / ${bu(t.tokensMax)}`:t.tokensUsed?bu(t.tokensUsed):t.tokensMax?bu(t.tokensMax):null}function vu(e){return!e||typeof e.utilization!=`number`||!Number.isFinite(e.utilization)?null:Math.min(1,Math.max(0,e.utilization))}function yu(e){if(!e)return`Context: collecting; provider has not reported usage yet`;let t=vu(e),n=`${e.source}/${e.confidence}`,r=Number.isFinite(e.lastUpdatedAt)?new Date(e.lastUpdatedAt).toLocaleString():`unknown`;return t===null?`Context: unknown; ${n}; updated ${r}`:`Context: ${Math.round(t*100)}%; ${n}; updated ${r}`}function bu(e){return e>=1e6?`${(e/1e6).toFixed(e%1e6==0?0:1)}M`:e>=1e3?`${Math.round(e/1e3)}K`:String(e)}var xu=(0,R.lazy)(()=>L(()=>import(`./terminal-viewer-impl-BDBa94-B.js`).then(e=>({default:e.TerminalDialog})),__vite__mapDeps([7,1,6,8,9,10,11,12,13]),import.meta.url));function Su(e){return e.open?(0,z.jsx)(R.Suspense,{fallback:null,children:(0,z.jsx)(xu,{...e})}):null}function Cu({orchestratorId:e,session:t,lines:n=200}){let r=A(e=>e.apiCall),[i,a]=(0,R.useState)([]),[s,c]=(0,R.useState)(``),[u,d]=(0,R.useState)(!1),[f,p]=(0,R.useState)(`provider`),[m,h]=(0,R.useState)(null);async function g(){if(!u)try{a((await r(`GET`,`/orchestrators/${encodeURIComponent(e)}/logs/${encodeURIComponent(t)}?lines=${n}${f===`mirror`?`&stream=mirror`:``}`)).lines||[]),h(null)}catch(e){h(Ot(e))}}(0,R.useEffect)(()=>{g();let e=setInterval(()=>void g(),1500);return()=>clearInterval(e)},[e,t,u,f]);let v=s?i.filter(e=>e.toLowerCase().includes(s.toLowerCase())):i;return(0,z.jsxs)(`div`,{className:`space-y-2`,children:[(0,z.jsxs)(`div`,{className:`flex flex-wrap items-center gap-2`,children:[(0,z.jsxs)(`div`,{className:`relative min-w-48 flex-1`,children:[(0,z.jsx)(te,{className:`absolute left-2 top-2.5 h-4 w-4 text-muted-foreground`}),(0,z.jsx)(I,{className:`pl-8`,value:s,onChange:e=>c(e.target.value),placeholder:`Search logs`})]}),(0,z.jsxs)(`div`,{className:`flex rounded-md border border-border overflow-hidden`,children:[(0,z.jsxs)(`button`,{type:`button`,onClick:()=>p(`provider`),title:`Provider output`,className:_(`flex items-center gap-1 px-2 py-1.5 text-xs`,f===`provider`?`bg-accent text-accent-foreground`:`text-muted-foreground hover:bg-accent/50`),children:[(0,z.jsx)(Ee,{className:`h-3.5 w-3.5`}),` Output`]}),(0,z.jsxs)(`button`,{type:`button`,onClick:()=>p(`mirror`),title:`Session-mirror diagnostics (clean)`,className:_(`flex items-center gap-1 px-2 py-1.5 text-xs border-l border-border`,f===`mirror`?`bg-accent text-accent-foreground`:`text-muted-foreground hover:bg-accent/50`),children:[(0,z.jsx)(l,{className:`h-3.5 w-3.5`}),` Mirror`]})]}),(0,z.jsx)(F,{type:`button`,variant:`outline`,size:`icon`,onClick:()=>d(e=>!e),title:u?`Resume logs`:`Pause logs`,children:u?(0,z.jsx)(o,{className:`h-4 w-4`}):(0,z.jsx)(fe,{className:`h-4 w-4`})}),(0,z.jsx)(F,{type:`button`,variant:`outline`,size:`icon`,onClick:()=>Ht(`${t}.log`,i.join(`
14
+ For more information, see https://radix-ui.com/primitives/docs/components/${t.docsSlug}`;return R.useEffect(()=>{e&&(document.getElementById(e)||console.error(n))},[n,e]),null},Cr=`DialogDescriptionWarning`,wr=({contentRef:e,descriptionId:t})=>{let n=`Warning: Missing \`Description\` or \`aria-describedby={undefined}\` for {${xr(Cr).contentName}}.`;return R.useEffect(()=>{let r=e.current?.getAttribute(`aria-describedby`);t&&r&&(document.getElementById(t)||console.warn(n))},[n,e,t]),null},Tr=Xn,Er=nr,Dr=ir,Or=cr,kr=pr,Ar=hr,jr=_r,Mr=`rovingFocusGroup.onEntryFocus`,Nr={bubbles:!1,cancelable:!0},Pr=`RovingFocusGroup`,[Fr,Ir,Lr]=ln(Pr),[Rr,zr]=on(Pr,[Lr]),[Br,Vr]=Rr(Pr),Hr=R.forwardRef((e,t)=>(0,z.jsx)(Fr.Provider,{scope:e.__scopeRovingFocusGroup,children:(0,z.jsx)(Fr.Slot,{scope:e.__scopeRovingFocusGroup,children:(0,z.jsx)(Ur,{...e,ref:t})})}));Hr.displayName=Pr;var Ur=R.forwardRef((e,t)=>{let{__scopeRovingFocusGroup:n,orientation:r,loop:i=!1,dir:a,currentTabStopId:o,defaultCurrentTabStopId:s,onCurrentTabStopIdChange:c,onEntryFocus:l,preventScrollOnEntryFocus:u=!1,...d}=e,f=R.useRef(null),p=tn(t,f),m=yn(a),[h,g]=un({prop:o,defaultProp:s??null,onChange:c,caller:Pr}),[_,v]=R.useState(!1),y=bn(l),b=Ir(n),x=R.useRef(!1),[S,C]=R.useState(0);return R.useEffect(()=>{let e=f.current;if(e)return e.addEventListener(Mr,y),()=>e.removeEventListener(Mr,y)},[y]),(0,z.jsx)(Br,{scope:n,orientation:r,dir:m,loop:i,currentTabStopId:h,onItemFocus:R.useCallback(e=>g(e),[g]),onItemShiftTab:R.useCallback(()=>v(!0),[]),onFocusableItemAdd:R.useCallback(()=>C(e=>e+1),[]),onFocusableItemRemove:R.useCallback(()=>C(e=>e-1),[]),children:(0,z.jsx)(M.div,{tabIndex:_||S===0?-1:0,"data-orientation":r,...d,ref:p,style:{outline:`none`,...e.style},onMouseDown:N(e.onMouseDown,()=>{x.current=!0}),onFocus:N(e.onFocus,e=>{let t=!x.current;if(e.target===e.currentTarget&&t&&!_){let t=new CustomEvent(Mr,Nr);if(e.currentTarget.dispatchEvent(t),!t.defaultPrevented){let e=b().filter(e=>e.focusable);Yr([e.find(e=>e.active),e.find(e=>e.id===h),...e].filter(Boolean).map(e=>e.ref.current),u)}}x.current=!1}),onBlur:N(e.onBlur,()=>v(!1))})})}),Wr=`RovingFocusGroupItem`,Gr=R.forwardRef((e,t)=>{let{__scopeRovingFocusGroup:n,focusable:r=!0,active:i=!1,tabStopId:a,children:o,...s}=e,c=_n(),l=a||c,u=Vr(Wr,n),d=u.currentTabStopId===l,f=Ir(n),{onFocusableItemAdd:p,onFocusableItemRemove:m,currentTabStopId:h}=u;return R.useEffect(()=>{if(r)return p(),()=>m()},[r,p,m]),(0,z.jsx)(Fr.ItemSlot,{scope:n,id:l,focusable:r,active:i,children:(0,z.jsx)(M.span,{tabIndex:d?0:-1,"data-orientation":u.orientation,...s,ref:t,onMouseDown:N(e.onMouseDown,e=>{r?u.onItemFocus(l):e.preventDefault()}),onFocus:N(e.onFocus,()=>u.onItemFocus(l)),onKeyDown:N(e.onKeyDown,e=>{if(e.key===`Tab`&&e.shiftKey){u.onItemShiftTab();return}if(e.target!==e.currentTarget)return;let t=Jr(e,u.orientation,u.dir);if(t!==void 0){if(e.metaKey||e.ctrlKey||e.altKey||e.shiftKey)return;e.preventDefault();let n=f().filter(e=>e.focusable).map(e=>e.ref.current);if(t===`last`)n.reverse();else if(t===`prev`||t===`next`){t===`prev`&&n.reverse();let r=n.indexOf(e.currentTarget);n=u.loop?Xr(n,r+1):n.slice(r+1)}setTimeout(()=>Yr(n))}}),children:typeof o==`function`?o({isCurrentTabStop:d,hasTabStop:h!=null}):o})})});Gr.displayName=Wr;var Kr={ArrowLeft:`prev`,ArrowUp:`prev`,ArrowRight:`next`,ArrowDown:`next`,PageUp:`first`,Home:`first`,PageDown:`last`,End:`last`};function qr(e,t){return t===`rtl`?e===`ArrowLeft`?`ArrowRight`:e===`ArrowRight`?`ArrowLeft`:e:e}function Jr(e,t,n){let r=qr(e.key,n);if(!(t===`vertical`&&[`ArrowLeft`,`ArrowRight`].includes(r))&&!(t===`horizontal`&&[`ArrowUp`,`ArrowDown`].includes(r)))return Kr[r]}function Yr(e,t=!1){let n=document.activeElement;for(let r of e)if(r===n||(r.focus({preventScroll:t}),document.activeElement!==n))return}function Xr(e,t){return e.map((n,r)=>e[(t+r)%e.length])}var Zr=Hr,Qr=Gr,$r=[`Enter`,` `],ei=[`ArrowDown`,`PageUp`,`Home`],ti=[`ArrowUp`,`PageDown`,`End`],ni=[...ei,...ti],ri={ltr:[...$r,`ArrowRight`],rtl:[...$r,`ArrowLeft`]},ii={ltr:[`ArrowLeft`],rtl:[`ArrowRight`]},ai=`Menu`,[oi,si,ci]=ln(ai),[li,ui]=on(ai,[ci,Cn,zr]),di=Cn(),fi=zr(),[pi,mi]=li(ai),[hi,gi]=li(ai),_i=e=>{let{__scopeMenu:t,open:n=!1,children:r,dir:i,onOpenChange:a,modal:o=!0}=e,s=di(t),[c,l]=R.useState(null),u=R.useRef(!1),d=bn(a),f=yn(i);return R.useEffect(()=>{let e=()=>{u.current=!0,document.addEventListener(`pointerdown`,t,{capture:!0,once:!0}),document.addEventListener(`pointermove`,t,{capture:!0,once:!0})},t=()=>u.current=!1;return document.addEventListener(`keydown`,e,{capture:!0}),()=>{document.removeEventListener(`keydown`,e,{capture:!0}),document.removeEventListener(`pointerdown`,t,{capture:!0}),document.removeEventListener(`pointermove`,t,{capture:!0})}},[]),(0,z.jsx)(wn,{...s,children:(0,z.jsx)(pi,{scope:t,open:n,onOpenChange:d,content:c,onContentChange:l,children:(0,z.jsx)(hi,{scope:t,onClose:R.useCallback(()=>d(!1),[d]),isUsingKeyboardRef:u,dir:f,modal:o,children:r})})})};_i.displayName=ai;var vi=`MenuAnchor`,yi=R.forwardRef((e,t)=>{let{__scopeMenu:n,...r}=e,i=di(n);return(0,z.jsx)(Dn,{...i,...r,ref:t})});yi.displayName=vi;var bi=`MenuPortal`,[xi,Si]=li(bi,{forceMount:void 0}),Ci=e=>{let{__scopeMenu:t,forceMount:n,children:r,container:i}=e,a=mi(bi,t);return(0,z.jsx)(xi,{scope:t,forceMount:n,children:(0,z.jsx)(dn,{present:n||a.open,children:(0,z.jsx)(pn,{asChild:!0,container:i,children:r})})})};Ci.displayName=bi;var wi=`MenuContent`,[Ti,Ei]=li(wi),Di=R.forwardRef((e,t)=>{let n=Si(wi,e.__scopeMenu),{forceMount:r=n.forceMount,...i}=e,a=mi(wi,e.__scopeMenu),o=gi(wi,e.__scopeMenu);return(0,z.jsx)(oi.Provider,{scope:e.__scopeMenu,children:(0,z.jsx)(dn,{present:r||a.open,children:(0,z.jsx)(oi.Slot,{scope:e.__scopeMenu,children:o.modal?(0,z.jsx)(Oi,{...i,ref:t}):(0,z.jsx)(ki,{...i,ref:t})})})})}),Oi=R.forwardRef((e,t)=>{let n=mi(wi,e.__scopeMenu),r=R.useRef(null),i=tn(t,r);return R.useEffect(()=>{let e=r.current;if(e)return vn(e)},[]),(0,z.jsx)(ji,{...e,ref:i,trapFocus:n.open,disableOutsidePointerEvents:n.open,disableOutsideScroll:!0,onFocusOutside:N(e.onFocusOutside,e=>e.preventDefault(),{checkForDefaultPrevented:!1}),onDismiss:()=>n.onOpenChange(!1)})}),ki=R.forwardRef((e,t)=>{let n=mi(wi,e.__scopeMenu);return(0,z.jsx)(ji,{...e,ref:t,trapFocus:!1,disableOutsidePointerEvents:!1,disableOutsideScroll:!1,onDismiss:()=>n.onOpenChange(!1)})}),Ai=nn(`MenuContent.ScrollLock`),ji=R.forwardRef((e,t)=>{let{__scopeMenu:n,loop:r=!1,trapFocus:i,onOpenAutoFocus:a,onCloseAutoFocus:o,disableOutsidePointerEvents:s,onEntryFocus:c,onEscapeKeyDown:l,onPointerDownOutside:u,onFocusOutside:d,onInteractOutside:f,onDismiss:p,disableOutsideScroll:m,...h}=e,g=mi(wi,n),_=gi(wi,n),v=di(n),y=fi(n),b=si(n),[x,S]=R.useState(null),C=R.useRef(null),ee=tn(t,C,g.onContentChange),w=R.useRef(0),te=R.useRef(``),ne=R.useRef(0),re=R.useRef(null),ie=R.useRef(`right`),ae=R.useRef(0),oe=m?mn:R.Fragment,se=m?{as:Ai,allowPinchZoom:!0}:void 0,T=e=>{let t=te.current+e,n=b().filter(e=>!e.disabled),r=document.activeElement,i=n.find(e=>e.ref.current===r)?.textValue,a=pa(n.map(e=>e.textValue),t,i),o=n.find(e=>e.textValue===a)?.ref.current;(function e(t){te.current=t,window.clearTimeout(w.current),t!==``&&(w.current=window.setTimeout(()=>e(``),1e3))})(t),o&&setTimeout(()=>o.focus())};R.useEffect(()=>()=>window.clearTimeout(w.current),[]),gn();let E=R.useCallback(e=>ie.current===re.current?.side&&ha(e,re.current?.area),[]);return(0,z.jsx)(Ti,{scope:n,searchRef:te,onItemEnter:R.useCallback(e=>{E(e)&&e.preventDefault()},[E]),onItemLeave:R.useCallback(e=>{E(e)||(C.current?.focus(),S(null))},[E]),onTriggerLeave:R.useCallback(e=>{E(e)&&e.preventDefault()},[E]),pointerGraceTimerRef:ne,onPointerGraceIntentChange:R.useCallback(e=>{re.current=e},[]),children:(0,z.jsx)(oe,{...se,children:(0,z.jsx)(fn,{asChild:!0,trapped:i,onMountAutoFocus:N(a,e=>{e.preventDefault(),C.current?.focus({preventScroll:!0})}),onUnmountAutoFocus:o,children:(0,z.jsx)(hn,{asChild:!0,disableOutsidePointerEvents:s,onEscapeKeyDown:l,onPointerDownOutside:u,onFocusOutside:d,onInteractOutside:f,onDismiss:p,children:(0,z.jsx)(Zr,{asChild:!0,...y,dir:_.dir,orientation:`vertical`,loop:r,currentTabStopId:x,onCurrentTabStopIdChange:S,onEntryFocus:N(c,e=>{_.isUsingKeyboardRef.current||e.preventDefault()}),preventScrollOnEntryFocus:!0,children:(0,z.jsx)(En,{role:`menu`,"aria-orientation":`vertical`,"data-state":ca(g.open),"data-radix-menu-content":``,dir:_.dir,...v,...h,ref:ee,style:{outline:`none`,...h.style},onKeyDown:N(h.onKeyDown,e=>{let t=e.target.closest(`[data-radix-menu-content]`)===e.currentTarget,n=e.ctrlKey||e.altKey||e.metaKey,r=e.key.length===1;t&&(e.key===`Tab`&&e.preventDefault(),!n&&r&&T(e.key));let i=C.current;if(e.target!==i||!ni.includes(e.key))return;e.preventDefault();let a=b().filter(e=>!e.disabled).map(e=>e.ref.current);ti.includes(e.key)&&a.reverse(),da(a)}),onBlur:N(e.onBlur,e=>{e.currentTarget.contains(e.target)||(window.clearTimeout(w.current),te.current=``)}),onPointerMove:N(e.onPointerMove,ga(e=>{let t=e.target,n=ae.current!==e.clientX;e.currentTarget.contains(t)&&n&&(ie.current=e.clientX>ae.current?`right`:`left`,ae.current=e.clientX)}))})})})})})})});Di.displayName=wi;var Mi=`MenuGroup`,B=R.forwardRef((e,t)=>{let{__scopeMenu:n,...r}=e;return(0,z.jsx)(M.div,{role:`group`,...r,ref:t})});B.displayName=Mi;var V=`MenuLabel`,Ni=R.forwardRef((e,t)=>{let{__scopeMenu:n,...r}=e;return(0,z.jsx)(M.div,{...r,ref:t})});Ni.displayName=V;var Pi=`MenuItem`,Fi=`menu.itemSelect`,Ii=R.forwardRef((e,t)=>{let{disabled:n=!1,onSelect:r,...i}=e,a=R.useRef(null),o=gi(Pi,e.__scopeMenu),s=Ei(Pi,e.__scopeMenu),c=tn(t,a),l=R.useRef(!1),u=()=>{let e=a.current;if(!n&&e){let t=new CustomEvent(Fi,{bubbles:!0,cancelable:!0});e.addEventListener(Fi,e=>r?.(e),{once:!0}),an(e,t),t.defaultPrevented?l.current=!1:o.onClose()}};return(0,z.jsx)(Li,{...i,ref:c,disabled:n,onClick:N(e.onClick,u),onPointerDown:t=>{e.onPointerDown?.(t),l.current=!0},onPointerUp:N(e.onPointerUp,e=>{l.current||e.currentTarget?.click()}),onKeyDown:N(e.onKeyDown,e=>{let t=s.searchRef.current!==``;n||t&&e.key===` `||$r.includes(e.key)&&(e.currentTarget.click(),e.preventDefault())})})});Ii.displayName=Pi;var Li=R.forwardRef((e,t)=>{let{__scopeMenu:n,disabled:r=!1,textValue:i,...a}=e,o=Ei(Pi,n),s=fi(n),c=R.useRef(null),l=tn(t,c),[u,d]=R.useState(!1),[f,p]=R.useState(``);return R.useEffect(()=>{let e=c.current;e&&p((e.textContent??``).trim())},[a.children]),(0,z.jsx)(oi.ItemSlot,{scope:n,disabled:r,textValue:i??f,children:(0,z.jsx)(Qr,{asChild:!0,...s,focusable:!r,children:(0,z.jsx)(M.div,{role:`menuitem`,"data-highlighted":u?``:void 0,"aria-disabled":r||void 0,"data-disabled":r?``:void 0,...a,ref:l,onPointerMove:N(e.onPointerMove,ga(e=>{r?o.onItemLeave(e):(o.onItemEnter(e),e.defaultPrevented||e.currentTarget.focus({preventScroll:!0}))})),onPointerLeave:N(e.onPointerLeave,ga(e=>o.onItemLeave(e))),onFocus:N(e.onFocus,()=>d(!0)),onBlur:N(e.onBlur,()=>d(!1))})})})}),Ri=`MenuCheckboxItem`,zi=R.forwardRef((e,t)=>{let{checked:n=!1,onCheckedChange:r,...i}=e;return(0,z.jsx)(qi,{scope:e.__scopeMenu,checked:n,children:(0,z.jsx)(Ii,{role:`menuitemcheckbox`,"aria-checked":la(n)?`mixed`:n,...i,ref:t,"data-state":ua(n),onSelect:N(i.onSelect,()=>r?.(la(n)?!0:!n),{checkForDefaultPrevented:!1})})})});zi.displayName=Ri;var Bi=`MenuRadioGroup`,[Vi,Hi]=li(Bi,{value:void 0,onValueChange:()=>{}}),Ui=R.forwardRef((e,t)=>{let{value:n,onValueChange:r,...i}=e,a=bn(r);return(0,z.jsx)(Vi,{scope:e.__scopeMenu,value:n,onValueChange:a,children:(0,z.jsx)(B,{...i,ref:t})})});Ui.displayName=Bi;var Wi=`MenuRadioItem`,Gi=R.forwardRef((e,t)=>{let{value:n,...r}=e,i=Hi(Wi,e.__scopeMenu),a=n===i.value;return(0,z.jsx)(qi,{scope:e.__scopeMenu,checked:a,children:(0,z.jsx)(Ii,{role:`menuitemradio`,"aria-checked":a,...r,ref:t,"data-state":ua(a),onSelect:N(r.onSelect,()=>i.onValueChange?.(n),{checkForDefaultPrevented:!1})})})});Gi.displayName=Wi;var Ki=`MenuItemIndicator`,[qi,Ji]=li(Ki,{checked:!1}),Yi=R.forwardRef((e,t)=>{let{__scopeMenu:n,forceMount:r,...i}=e,a=Ji(Ki,n);return(0,z.jsx)(dn,{present:r||la(a.checked)||a.checked===!0,children:(0,z.jsx)(M.span,{...i,ref:t,"data-state":ua(a.checked)})})});Yi.displayName=Ki;var Xi=`MenuSeparator`,Zi=R.forwardRef((e,t)=>{let{__scopeMenu:n,...r}=e;return(0,z.jsx)(M.div,{role:`separator`,"aria-orientation":`horizontal`,...r,ref:t})});Zi.displayName=Xi;var Qi=`MenuArrow`,$i=R.forwardRef((e,t)=>{let{__scopeMenu:n,...r}=e,i=di(n);return(0,z.jsx)(Tn,{...i,...r,ref:t})});$i.displayName=Qi;var ea=`MenuSub`,[ta,na]=li(ea),ra=e=>{let{__scopeMenu:t,children:n,open:r=!1,onOpenChange:i}=e,a=mi(ea,t),o=di(t),[s,c]=R.useState(null),[l,u]=R.useState(null),d=bn(i);return R.useEffect(()=>(a.open===!1&&d(!1),()=>d(!1)),[a.open,d]),(0,z.jsx)(wn,{...o,children:(0,z.jsx)(pi,{scope:t,open:r,onOpenChange:d,content:l,onContentChange:u,children:(0,z.jsx)(ta,{scope:t,contentId:_n(),triggerId:_n(),trigger:s,onTriggerChange:c,children:n})})})};ra.displayName=ea;var ia=`MenuSubTrigger`,aa=R.forwardRef((e,t)=>{let n=mi(ia,e.__scopeMenu),r=gi(ia,e.__scopeMenu),i=na(ia,e.__scopeMenu),a=Ei(ia,e.__scopeMenu),o=R.useRef(null),{pointerGraceTimerRef:s,onPointerGraceIntentChange:c}=a,l={__scopeMenu:e.__scopeMenu},u=R.useCallback(()=>{o.current&&window.clearTimeout(o.current),o.current=null},[]);return R.useEffect(()=>u,[u]),R.useEffect(()=>{let e=s.current;return()=>{window.clearTimeout(e),c(null)}},[s,c]),(0,z.jsx)(yi,{asChild:!0,...l,children:(0,z.jsx)(Li,{id:i.triggerId,"aria-haspopup":`menu`,"aria-expanded":n.open,"aria-controls":i.contentId,"data-state":ca(n.open),...e,ref:$t(t,i.onTriggerChange),onClick:t=>{e.onClick?.(t),!(e.disabled||t.defaultPrevented)&&(t.currentTarget.focus(),n.open||n.onOpenChange(!0))},onPointerMove:N(e.onPointerMove,ga(t=>{a.onItemEnter(t),!t.defaultPrevented&&!e.disabled&&!n.open&&!o.current&&(a.onPointerGraceIntentChange(null),o.current=window.setTimeout(()=>{n.onOpenChange(!0),u()},100))})),onPointerLeave:N(e.onPointerLeave,ga(e=>{u();let t=n.content?.getBoundingClientRect();if(t){let r=n.content?.dataset.side,i=r===`right`,o=i?-5:5,c=t[i?`left`:`right`],l=t[i?`right`:`left`];a.onPointerGraceIntentChange({area:[{x:e.clientX+o,y:e.clientY},{x:c,y:t.top},{x:l,y:t.top},{x:l,y:t.bottom},{x:c,y:t.bottom}],side:r}),window.clearTimeout(s.current),s.current=window.setTimeout(()=>a.onPointerGraceIntentChange(null),300)}else{if(a.onTriggerLeave(e),e.defaultPrevented)return;a.onPointerGraceIntentChange(null)}})),onKeyDown:N(e.onKeyDown,t=>{let i=a.searchRef.current!==``;e.disabled||i&&t.key===` `||ri[r.dir].includes(t.key)&&(n.onOpenChange(!0),n.content?.focus(),t.preventDefault())})})})});aa.displayName=ia;var oa=`MenuSubContent`,sa=R.forwardRef((e,t)=>{let n=Si(wi,e.__scopeMenu),{forceMount:r=n.forceMount,...i}=e,a=mi(wi,e.__scopeMenu),o=gi(wi,e.__scopeMenu),s=na(oa,e.__scopeMenu),c=R.useRef(null),l=tn(t,c);return(0,z.jsx)(oi.Provider,{scope:e.__scopeMenu,children:(0,z.jsx)(dn,{present:r||a.open,children:(0,z.jsx)(oi.Slot,{scope:e.__scopeMenu,children:(0,z.jsx)(ji,{id:s.contentId,"aria-labelledby":s.triggerId,...i,ref:l,align:`start`,side:o.dir===`rtl`?`left`:`right`,disableOutsidePointerEvents:!1,disableOutsideScroll:!1,trapFocus:!1,onOpenAutoFocus:e=>{o.isUsingKeyboardRef.current&&c.current?.focus(),e.preventDefault()},onCloseAutoFocus:e=>e.preventDefault(),onFocusOutside:N(e.onFocusOutside,e=>{e.target!==s.trigger&&a.onOpenChange(!1)}),onEscapeKeyDown:N(e.onEscapeKeyDown,e=>{o.onClose(),e.preventDefault()}),onKeyDown:N(e.onKeyDown,e=>{let t=e.currentTarget.contains(e.target),n=ii[o.dir].includes(e.key);t&&n&&(a.onOpenChange(!1),s.trigger?.focus(),e.preventDefault())})})})})})});sa.displayName=oa;function ca(e){return e?`open`:`closed`}function la(e){return e===`indeterminate`}function ua(e){return la(e)?`indeterminate`:e?`checked`:`unchecked`}function da(e){let t=document.activeElement;for(let n of e)if(n===t||(n.focus(),document.activeElement!==t))return}function fa(e,t){return e.map((n,r)=>e[(t+r)%e.length])}function pa(e,t,n){let r=t.length>1&&Array.from(t).every(e=>e===t[0])?t[0]:t,i=n?e.indexOf(n):-1,a=fa(e,Math.max(i,0));r.length===1&&(a=a.filter(e=>e!==n));let o=a.find(e=>e.toLowerCase().startsWith(r.toLowerCase()));return o===n?void 0:o}function ma(e,t){let{x:n,y:r}=e,i=!1;for(let e=0,a=t.length-1;e<t.length;a=e++){let o=t[e],s=t[a],c=o.x,l=o.y,u=s.x,d=s.y;l>r!=d>r&&n<(u-c)*(r-l)/(d-l)+c&&(i=!i)}return i}function ha(e,t){return t?ma({x:e.clientX,y:e.clientY},t):!1}function ga(e){return t=>t.pointerType===`mouse`?e(t):void 0}var _a=_i,va=yi,ya=Ci,ba=Di,xa=B,Sa=Ni,Ca=Ii,wa=zi,Ta=Ui,Ea=Gi,Da=Yi,Oa=Zi,ka=$i,Aa=aa,ja=sa,Ma=`DropdownMenu`,[Na,Pa]=on(Ma,[ui]),Fa=ui(),[Ia,La]=Na(Ma),Ra=e=>{let{__scopeDropdownMenu:t,children:n,dir:r,open:i,defaultOpen:a,onOpenChange:o,modal:s=!0}=e,c=Fa(t),l=R.useRef(null),[u,d]=un({prop:i,defaultProp:a??!1,onChange:o,caller:Ma});return(0,z.jsx)(Ia,{scope:t,triggerId:_n(),triggerRef:l,contentId:_n(),open:u,onOpenChange:d,onOpenToggle:R.useCallback(()=>d(e=>!e),[d]),modal:s,children:(0,z.jsx)(_a,{...c,open:u,onOpenChange:d,dir:r,modal:s,children:n})})};Ra.displayName=Ma;var za=`DropdownMenuTrigger`,Ba=R.forwardRef((e,t)=>{let{__scopeDropdownMenu:n,disabled:r=!1,...i}=e,a=La(za,n),o=Fa(n);return(0,z.jsx)(va,{asChild:!0,...o,children:(0,z.jsx)(M.button,{type:`button`,id:a.triggerId,"aria-haspopup":`menu`,"aria-expanded":a.open,"aria-controls":a.open?a.contentId:void 0,"data-state":a.open?`open`:`closed`,"data-disabled":r?``:void 0,disabled:r,...i,ref:$t(t,a.triggerRef),onPointerDown:N(e.onPointerDown,e=>{!r&&e.button===0&&e.ctrlKey===!1&&(a.onOpenToggle(),a.open||e.preventDefault())}),onKeyDown:N(e.onKeyDown,e=>{r||([`Enter`,` `].includes(e.key)&&a.onOpenToggle(),e.key===`ArrowDown`&&a.onOpenChange(!0),[`Enter`,` `,`ArrowDown`].includes(e.key)&&e.preventDefault())})})})});Ba.displayName=za;var Va=`DropdownMenuPortal`,Ha=e=>{let{__scopeDropdownMenu:t,...n}=e,r=Fa(t);return(0,z.jsx)(ya,{...r,...n})};Ha.displayName=Va;var Ua=`DropdownMenuContent`,Wa=R.forwardRef((e,t)=>{let{__scopeDropdownMenu:n,...r}=e,i=La(Ua,n),a=Fa(n),o=R.useRef(!1);return(0,z.jsx)(ba,{id:i.contentId,"aria-labelledby":i.triggerId,...a,...r,ref:t,onCloseAutoFocus:N(e.onCloseAutoFocus,e=>{o.current||i.triggerRef.current?.focus(),o.current=!1,e.preventDefault()}),onInteractOutside:N(e.onInteractOutside,e=>{let t=e.detail.originalEvent,n=t.button===0&&t.ctrlKey===!0,r=t.button===2||n;(!i.modal||r)&&(o.current=!0)}),style:{...e.style,"--radix-dropdown-menu-content-transform-origin":`var(--radix-popper-transform-origin)`,"--radix-dropdown-menu-content-available-width":`var(--radix-popper-available-width)`,"--radix-dropdown-menu-content-available-height":`var(--radix-popper-available-height)`,"--radix-dropdown-menu-trigger-width":`var(--radix-popper-anchor-width)`,"--radix-dropdown-menu-trigger-height":`var(--radix-popper-anchor-height)`}})});Wa.displayName=Ua;var Ga=`DropdownMenuGroup`,Ka=R.forwardRef((e,t)=>{let{__scopeDropdownMenu:n,...r}=e,i=Fa(n);return(0,z.jsx)(xa,{...i,...r,ref:t})});Ka.displayName=Ga;var qa=`DropdownMenuLabel`,Ja=R.forwardRef((e,t)=>{let{__scopeDropdownMenu:n,...r}=e,i=Fa(n);return(0,z.jsx)(Sa,{...i,...r,ref:t})});Ja.displayName=qa;var Ya=`DropdownMenuItem`,Xa=R.forwardRef((e,t)=>{let{__scopeDropdownMenu:n,...r}=e,i=Fa(n);return(0,z.jsx)(Ca,{...i,...r,ref:t})});Xa.displayName=Ya;var Za=`DropdownMenuCheckboxItem`,Qa=R.forwardRef((e,t)=>{let{__scopeDropdownMenu:n,...r}=e,i=Fa(n);return(0,z.jsx)(wa,{...i,...r,ref:t})});Qa.displayName=Za;var $a=`DropdownMenuRadioGroup`,eo=R.forwardRef((e,t)=>{let{__scopeDropdownMenu:n,...r}=e,i=Fa(n);return(0,z.jsx)(Ta,{...i,...r,ref:t})});eo.displayName=$a;var to=`DropdownMenuRadioItem`,no=R.forwardRef((e,t)=>{let{__scopeDropdownMenu:n,...r}=e,i=Fa(n);return(0,z.jsx)(Ea,{...i,...r,ref:t})});no.displayName=to;var ro=`DropdownMenuItemIndicator`,io=R.forwardRef((e,t)=>{let{__scopeDropdownMenu:n,...r}=e,i=Fa(n);return(0,z.jsx)(Da,{...i,...r,ref:t})});io.displayName=ro;var ao=`DropdownMenuSeparator`,oo=R.forwardRef((e,t)=>{let{__scopeDropdownMenu:n,...r}=e,i=Fa(n);return(0,z.jsx)(Oa,{...i,...r,ref:t})});oo.displayName=ao;var so=`DropdownMenuArrow`,co=R.forwardRef((e,t)=>{let{__scopeDropdownMenu:n,...r}=e,i=Fa(n);return(0,z.jsx)(ka,{...i,...r,ref:t})});co.displayName=so;var lo=`DropdownMenuSubTrigger`,uo=R.forwardRef((e,t)=>{let{__scopeDropdownMenu:n,...r}=e,i=Fa(n);return(0,z.jsx)(Aa,{...i,...r,ref:t})});uo.displayName=lo;var H=`DropdownMenuSubContent`,U=R.forwardRef((e,t)=>{let{__scopeDropdownMenu:n,...r}=e,i=Fa(n);return(0,z.jsx)(ja,{...i,...r,ref:t,style:{...e.style,"--radix-dropdown-menu-content-transform-origin":`var(--radix-popper-transform-origin)`,"--radix-dropdown-menu-content-available-width":`var(--radix-popper-available-width)`,"--radix-dropdown-menu-content-available-height":`var(--radix-popper-available-height)`,"--radix-dropdown-menu-trigger-width":`var(--radix-popper-anchor-width)`,"--radix-dropdown-menu-trigger-height":`var(--radix-popper-anchor-height)`}})});U.displayName=H;var fo=Ra,po=Ba,mo=Ha,ho=Wa,go=Ja,_o=Xa,vo=oo,yo=`Label`,bo=R.forwardRef((e,t)=>(0,z.jsx)(M.label,{...e,ref:t,onMouseDown:t=>{t.target.closest(`button, input, select, textarea`)||(e.onMouseDown?.(t),!t.defaultPrevented&&t.detail>1&&t.preventDefault())}}));bo.displayName=yo;var xo=bo;function So(e,t){return R.useReducer((e,n)=>t[e][n]??e,e)}var Co=`ScrollArea`,[wo,To]=on(Co),[Eo,Do]=wo(Co),Oo=R.forwardRef((e,t)=>{let{__scopeScrollArea:n,type:r=`hover`,dir:i,scrollHideDelay:a=600,...o}=e,[s,c]=R.useState(null),[l,u]=R.useState(null),[d,f]=R.useState(null),[p,m]=R.useState(null),[h,g]=R.useState(null),[_,v]=R.useState(0),[y,b]=R.useState(0),[x,S]=R.useState(!1),[C,ee]=R.useState(!1),w=tn(t,e=>c(e)),te=yn(i);return(0,z.jsx)(Eo,{scope:n,type:r,dir:te,scrollHideDelay:a,scrollArea:s,viewport:l,onViewportChange:u,content:d,onContentChange:f,scrollbarX:p,onScrollbarXChange:m,scrollbarXEnabled:x,onScrollbarXEnabledChange:S,scrollbarY:h,onScrollbarYChange:g,scrollbarYEnabled:C,onScrollbarYEnabledChange:ee,onCornerWidthChange:v,onCornerHeightChange:b,children:(0,z.jsx)(M.div,{dir:te,...o,ref:w,style:{position:`relative`,"--radix-scroll-area-corner-width":_+`px`,"--radix-scroll-area-corner-height":y+`px`,...e.style}})})});Oo.displayName=Co;var ko=`ScrollAreaViewport`,Ao=R.forwardRef((e,t)=>{let{__scopeScrollArea:n,children:r,nonce:i,...a}=e,o=Do(ko,n),s=tn(t,R.useRef(null),o.onViewportChange);return(0,z.jsxs)(z.Fragment,{children:[(0,z.jsx)(`style`,{dangerouslySetInnerHTML:{__html:`[data-radix-scroll-area-viewport]{scrollbar-width:none;-ms-overflow-style:none;-webkit-overflow-scrolling:touch;}[data-radix-scroll-area-viewport]::-webkit-scrollbar{display:none}`},nonce:i}),(0,z.jsx)(M.div,{"data-radix-scroll-area-viewport":``,...a,ref:s,style:{overflowX:o.scrollbarXEnabled?`scroll`:`hidden`,overflowY:o.scrollbarYEnabled?`scroll`:`hidden`,...e.style},children:(0,z.jsx)(`div`,{ref:o.onContentChange,style:{minWidth:`100%`,display:`table`},children:r})})]})});Ao.displayName=ko;var jo=`ScrollAreaScrollbar`,Mo=R.forwardRef((e,t)=>{let{forceMount:n,...r}=e,i=Do(jo,e.__scopeScrollArea),{onScrollbarXEnabledChange:a,onScrollbarYEnabledChange:o}=i,s=e.orientation===`horizontal`;return R.useEffect(()=>(s?a(!0):o(!0),()=>{s?a(!1):o(!1)}),[s,a,o]),i.type===`hover`?(0,z.jsx)(No,{...r,ref:t,forceMount:n}):i.type===`scroll`?(0,z.jsx)(Po,{...r,ref:t,forceMount:n}):i.type===`auto`?(0,z.jsx)(Fo,{...r,ref:t,forceMount:n}):i.type===`always`?(0,z.jsx)(Io,{...r,ref:t}):null});Mo.displayName=jo;var No=R.forwardRef((e,t)=>{let{forceMount:n,...r}=e,i=Do(jo,e.__scopeScrollArea),[a,o]=R.useState(!1);return R.useEffect(()=>{let e=i.scrollArea,t=0;if(e){let n=()=>{window.clearTimeout(t),o(!0)},r=()=>{t=window.setTimeout(()=>o(!1),i.scrollHideDelay)};return e.addEventListener(`pointerenter`,n),e.addEventListener(`pointerleave`,r),()=>{window.clearTimeout(t),e.removeEventListener(`pointerenter`,n),e.removeEventListener(`pointerleave`,r)}}},[i.scrollArea,i.scrollHideDelay]),(0,z.jsx)(dn,{present:n||a,children:(0,z.jsx)(Fo,{"data-state":a?`visible`:`hidden`,...r,ref:t})})}),Po=R.forwardRef((e,t)=>{let{forceMount:n,...r}=e,i=Do(jo,e.__scopeScrollArea),a=e.orientation===`horizontal`,o=ns(()=>c(`SCROLL_END`),100),[s,c]=So(`hidden`,{hidden:{SCROLL:`scrolling`},scrolling:{SCROLL_END:`idle`,POINTER_ENTER:`interacting`},interacting:{SCROLL:`interacting`,POINTER_LEAVE:`idle`},idle:{HIDE:`hidden`,SCROLL:`scrolling`,POINTER_ENTER:`interacting`}});return R.useEffect(()=>{if(s===`idle`){let e=window.setTimeout(()=>c(`HIDE`),i.scrollHideDelay);return()=>window.clearTimeout(e)}},[s,i.scrollHideDelay,c]),R.useEffect(()=>{let e=i.viewport,t=a?`scrollLeft`:`scrollTop`;if(e){let n=e[t],r=()=>{let r=e[t];n!==r&&(c(`SCROLL`),o()),n=r};return e.addEventListener(`scroll`,r),()=>e.removeEventListener(`scroll`,r)}},[i.viewport,a,c,o]),(0,z.jsx)(dn,{present:n||s!==`hidden`,children:(0,z.jsx)(Io,{"data-state":s===`hidden`?`hidden`:`visible`,...r,ref:t,onPointerEnter:N(e.onPointerEnter,()=>c(`POINTER_ENTER`)),onPointerLeave:N(e.onPointerLeave,()=>c(`POINTER_LEAVE`))})})}),Fo=R.forwardRef((e,t)=>{let n=Do(jo,e.__scopeScrollArea),{forceMount:r,...i}=e,[a,o]=R.useState(!1),s=e.orientation===`horizontal`,c=ns(()=>{if(n.viewport){let e=n.viewport.offsetWidth<n.viewport.scrollWidth,t=n.viewport.offsetHeight<n.viewport.scrollHeight;o(s?e:t)}},10);return rs(n.viewport,c),rs(n.content,c),(0,z.jsx)(dn,{present:r||a,children:(0,z.jsx)(Io,{"data-state":a?`visible`:`hidden`,...i,ref:t})})}),Io=R.forwardRef((e,t)=>{let{orientation:n=`vertical`,...r}=e,i=Do(jo,e.__scopeScrollArea),a=R.useRef(null),o=R.useRef(0),[s,c]=R.useState({content:0,viewport:0,scrollbar:{size:0,paddingStart:0,paddingEnd:0}}),l=Yo(s.viewport,s.content),u={...r,sizes:s,onSizesChange:c,hasThumb:l>0&&l<1,onThumbChange:e=>a.current=e,onThumbPointerUp:()=>o.current=0,onThumbPointerDown:e=>o.current=e};function d(e,t){return Zo(e,o.current,s,t)}return n===`horizontal`?(0,z.jsx)(Lo,{...u,ref:t,onThumbPositionChange:()=>{if(i.viewport&&a.current){let e=i.viewport.scrollLeft,t=Qo(e,s,i.dir);a.current.style.transform=`translate3d(${t}px, 0, 0)`}},onWheelScroll:e=>{i.viewport&&(i.viewport.scrollLeft=e)},onDragScroll:e=>{i.viewport&&(i.viewport.scrollLeft=d(e,i.dir))}}):n===`vertical`?(0,z.jsx)(Ro,{...u,ref:t,onThumbPositionChange:()=>{if(i.viewport&&a.current){let e=i.viewport.scrollTop,t=Qo(e,s);a.current.style.transform=`translate3d(0, ${t}px, 0)`}},onWheelScroll:e=>{i.viewport&&(i.viewport.scrollTop=e)},onDragScroll:e=>{i.viewport&&(i.viewport.scrollTop=d(e))}}):null}),Lo=R.forwardRef((e,t)=>{let{sizes:n,onSizesChange:r,...i}=e,a=Do(jo,e.__scopeScrollArea),[o,s]=R.useState(),c=R.useRef(null),l=tn(t,c,a.onScrollbarXChange);return R.useEffect(()=>{c.current&&s(getComputedStyle(c.current))},[c]),(0,z.jsx)(Vo,{"data-orientation":`horizontal`,...i,ref:l,sizes:n,style:{bottom:0,left:a.dir===`rtl`?`var(--radix-scroll-area-corner-width)`:0,right:a.dir===`ltr`?`var(--radix-scroll-area-corner-width)`:0,"--radix-scroll-area-thumb-width":Xo(n)+`px`,...e.style},onThumbPointerDown:t=>e.onThumbPointerDown(t.x),onDragScroll:t=>e.onDragScroll(t.x),onWheelScroll:(t,n)=>{if(a.viewport){let r=a.viewport.scrollLeft+t.deltaX;e.onWheelScroll(r),es(r,n)&&t.preventDefault()}},onResize:()=>{c.current&&a.viewport&&o&&r({content:a.viewport.scrollWidth,viewport:a.viewport.offsetWidth,scrollbar:{size:c.current.clientWidth,paddingStart:Jo(o.paddingLeft),paddingEnd:Jo(o.paddingRight)}})}})}),Ro=R.forwardRef((e,t)=>{let{sizes:n,onSizesChange:r,...i}=e,a=Do(jo,e.__scopeScrollArea),[o,s]=R.useState(),c=R.useRef(null),l=tn(t,c,a.onScrollbarYChange);return R.useEffect(()=>{c.current&&s(getComputedStyle(c.current))},[c]),(0,z.jsx)(Vo,{"data-orientation":`vertical`,...i,ref:l,sizes:n,style:{top:0,right:a.dir===`ltr`?0:void 0,left:a.dir===`rtl`?0:void 0,bottom:`var(--radix-scroll-area-corner-height)`,"--radix-scroll-area-thumb-height":Xo(n)+`px`,...e.style},onThumbPointerDown:t=>e.onThumbPointerDown(t.y),onDragScroll:t=>e.onDragScroll(t.y),onWheelScroll:(t,n)=>{if(a.viewport){let r=a.viewport.scrollTop+t.deltaY;e.onWheelScroll(r),es(r,n)&&t.preventDefault()}},onResize:()=>{c.current&&a.viewport&&o&&r({content:a.viewport.scrollHeight,viewport:a.viewport.offsetHeight,scrollbar:{size:c.current.clientHeight,paddingStart:Jo(o.paddingTop),paddingEnd:Jo(o.paddingBottom)}})}})}),[zo,Bo]=wo(jo),Vo=R.forwardRef((e,t)=>{let{__scopeScrollArea:n,sizes:r,hasThumb:i,onThumbChange:a,onThumbPointerUp:o,onThumbPointerDown:s,onThumbPositionChange:c,onDragScroll:l,onWheelScroll:u,onResize:d,...f}=e,p=Do(jo,n),[m,h]=R.useState(null),g=tn(t,e=>h(e)),_=R.useRef(null),v=R.useRef(``),y=p.viewport,b=r.content-r.viewport,x=bn(u),S=bn(c),C=ns(d,10);function ee(e){_.current&&l({x:e.clientX-_.current.left,y:e.clientY-_.current.top})}return R.useEffect(()=>{let e=e=>{let t=e.target;m?.contains(t)&&x(e,b)};return document.addEventListener(`wheel`,e,{passive:!1}),()=>document.removeEventListener(`wheel`,e,{passive:!1})},[y,m,b,x]),R.useEffect(S,[r,S]),rs(m,C),rs(p.content,C),(0,z.jsx)(zo,{scope:n,scrollbar:m,hasThumb:i,onThumbChange:bn(a),onThumbPointerUp:bn(o),onThumbPositionChange:S,onThumbPointerDown:bn(s),children:(0,z.jsx)(M.div,{...f,ref:g,style:{position:`absolute`,...f.style},onPointerDown:N(e.onPointerDown,e=>{e.button===0&&(e.target.setPointerCapture(e.pointerId),_.current=m.getBoundingClientRect(),v.current=document.body.style.webkitUserSelect,document.body.style.webkitUserSelect=`none`,p.viewport&&(p.viewport.style.scrollBehavior=`auto`),ee(e))}),onPointerMove:N(e.onPointerMove,ee),onPointerUp:N(e.onPointerUp,e=>{let t=e.target;t.hasPointerCapture(e.pointerId)&&t.releasePointerCapture(e.pointerId),document.body.style.webkitUserSelect=v.current,p.viewport&&(p.viewport.style.scrollBehavior=``),_.current=null})})})}),Ho=`ScrollAreaThumb`,Uo=R.forwardRef((e,t)=>{let{forceMount:n,...r}=e,i=Bo(Ho,e.__scopeScrollArea);return(0,z.jsx)(dn,{present:n||i.hasThumb,children:(0,z.jsx)(Wo,{ref:t,...r})})}),Wo=R.forwardRef((e,t)=>{let{__scopeScrollArea:n,style:r,...i}=e,a=Do(Ho,n),o=Bo(Ho,n),{onThumbPositionChange:s}=o,c=tn(t,e=>o.onThumbChange(e)),l=R.useRef(void 0),u=ns(()=>{l.current&&=(l.current(),void 0)},100);return R.useEffect(()=>{let e=a.viewport;if(e){let t=()=>{u(),l.current||(l.current=ts(e,s),s())};return s(),e.addEventListener(`scroll`,t),()=>e.removeEventListener(`scroll`,t)}},[a.viewport,u,s]),(0,z.jsx)(M.div,{"data-state":o.hasThumb?`visible`:`hidden`,...i,ref:c,style:{width:`var(--radix-scroll-area-thumb-width)`,height:`var(--radix-scroll-area-thumb-height)`,...r},onPointerDownCapture:N(e.onPointerDownCapture,e=>{let t=e.target.getBoundingClientRect(),n=e.clientX-t.left,r=e.clientY-t.top;o.onThumbPointerDown({x:n,y:r})}),onPointerUp:N(e.onPointerUp,o.onThumbPointerUp)})});Uo.displayName=Ho;var Go=`ScrollAreaCorner`,Ko=R.forwardRef((e,t)=>{let n=Do(Go,e.__scopeScrollArea),r=!!(n.scrollbarX&&n.scrollbarY);return n.type!==`scroll`&&r?(0,z.jsx)(qo,{...e,ref:t}):null});Ko.displayName=Go;var qo=R.forwardRef((e,t)=>{let{__scopeScrollArea:n,...r}=e,i=Do(Go,n),[a,o]=R.useState(0),[s,c]=R.useState(0),l=!!(a&&s);return rs(i.scrollbarX,()=>{let e=i.scrollbarX?.offsetHeight||0;i.onCornerHeightChange(e),c(e)}),rs(i.scrollbarY,()=>{let e=i.scrollbarY?.offsetWidth||0;i.onCornerWidthChange(e),o(e)}),l?(0,z.jsx)(M.div,{...r,ref:t,style:{width:a,height:s,position:`absolute`,right:i.dir===`ltr`?0:void 0,left:i.dir===`rtl`?0:void 0,bottom:0,...e.style}}):null});function Jo(e){return e?parseInt(e,10):0}function Yo(e,t){let n=e/t;return isNaN(n)?0:n}function Xo(e){let t=Yo(e.viewport,e.content),n=e.scrollbar.paddingStart+e.scrollbar.paddingEnd,r=(e.scrollbar.size-n)*t;return Math.max(r,18)}function Zo(e,t,n,r=`ltr`){let i=Xo(n),a=i/2,o=t||a,s=i-o,c=n.scrollbar.paddingStart+o,l=n.scrollbar.size-n.scrollbar.paddingEnd-s,u=n.content-n.viewport,d=r===`ltr`?[0,u]:[u*-1,0];return $o([c,l],d)(e)}function Qo(e,t,n=`ltr`){let r=Xo(t),i=t.scrollbar.paddingStart+t.scrollbar.paddingEnd,a=t.scrollbar.size-i,o=t.content-t.viewport,s=a-r,c=On(e,n===`ltr`?[0,o]:[o*-1,0]);return $o([0,o],[0,s])(c)}function $o(e,t){return n=>{if(e[0]===e[1]||t[0]===t[1])return t[0];let r=(t[1]-t[0])/(e[1]-e[0]);return t[0]+r*(n-e[0])}}function es(e,t){return e>0&&e<t}var ts=(e,t=()=>{})=>{let n={left:e.scrollLeft,top:e.scrollTop},r=0;return(function i(){let a={left:e.scrollLeft,top:e.scrollTop},o=n.left!==a.left,s=n.top!==a.top;(o||s)&&t(),n=a,r=window.requestAnimationFrame(i)})(),()=>window.cancelAnimationFrame(r)};function ns(e,t){let n=bn(e),r=R.useRef(0);return R.useEffect(()=>()=>window.clearTimeout(r.current),[]),R.useCallback(()=>{window.clearTimeout(r.current),r.current=window.setTimeout(n,t)},[n,t])}function rs(e,t){let n=bn(t);cn(()=>{let t=0;if(e){let r=new ResizeObserver(()=>{cancelAnimationFrame(t),t=window.requestAnimationFrame(n)});return r.observe(e),()=>{window.cancelAnimationFrame(t),r.unobserve(e)}}},[e,n])}var is=Oo,as=Ao,os=Ko,ss=`Separator`,cs=`horizontal`,ls=[`horizontal`,`vertical`],us=R.forwardRef((e,t)=>{let{decorative:n,orientation:r=cs,...i}=e,a=ds(r)?r:cs,o=n?{role:`none`}:{"aria-orientation":a===`vertical`?a:void 0,role:`separator`};return(0,z.jsx)(M.div,{"data-orientation":a,...o,...i,ref:t})});us.displayName=ss;function ds(e){return ls.includes(e)}var fs=us,ps=`Switch`,[ms,hs]=on(ps),[gs,_s]=ms(ps),vs=R.forwardRef((e,t)=>{let{__scopeSwitch:n,name:r,checked:i,defaultChecked:a,required:o,disabled:s,value:c=`on`,onCheckedChange:l,form:u,...d}=e,[f,p]=R.useState(null),m=tn(t,e=>p(e)),h=R.useRef(!1),g=f?u||!!f.closest(`form`):!0,[_,v]=un({prop:i,defaultProp:a??!1,onChange:l,caller:ps});return(0,z.jsxs)(gs,{scope:n,checked:_,disabled:s,children:[(0,z.jsx)(M.button,{type:`button`,role:`switch`,"aria-checked":_,"aria-required":o,"data-state":Cs(_),"data-disabled":s?``:void 0,disabled:s,value:c,...d,ref:m,onClick:N(e.onClick,e=>{v(e=>!e),g&&(h.current=e.isPropagationStopped(),h.current||e.stopPropagation())})}),g&&(0,z.jsx)(Ss,{control:f,bubbles:!h.current,name:r,value:c,checked:_,required:o,disabled:s,form:u,style:{transform:`translateX(-100%)`}})]})});vs.displayName=ps;var ys=`SwitchThumb`,bs=R.forwardRef((e,t)=>{let{__scopeSwitch:n,...r}=e,i=_s(ys,n);return(0,z.jsx)(M.span,{"data-state":Cs(i.checked),"data-disabled":i.disabled?``:void 0,...r,ref:t})});bs.displayName=ys;var xs=`SwitchBubbleInput`,Ss=R.forwardRef(({__scopeSwitch:e,control:t,checked:n,bubbles:r=!0,...i},a)=>{let o=R.useRef(null),s=tn(o,a),c=xn(n),l=Sn(t);return R.useEffect(()=>{let e=o.current;if(!e)return;let t=window.HTMLInputElement.prototype,i=Object.getOwnPropertyDescriptor(t,`checked`).set;if(c!==n&&i){let t=new Event(`click`,{bubbles:r});i.call(e,n),e.dispatchEvent(t)}},[c,n,r]),(0,z.jsx)(`input`,{type:`checkbox`,"aria-hidden":!0,defaultChecked:n,...i,tabIndex:-1,ref:s,style:{...i.style,...l,position:`absolute`,pointerEvents:`none`,opacity:0,margin:0}})});Ss.displayName=xs;function Cs(e){return e?`checked`:`unchecked`}var ws=vs,Ts=bs,Es=`Tabs`,[Ds,Os]=on(Es,[zr]),ks=zr(),[As,js]=Ds(Es),Ms=R.forwardRef((e,t)=>{let{__scopeTabs:n,value:r,onValueChange:i,defaultValue:a,orientation:o=`horizontal`,dir:s,activationMode:c=`automatic`,...l}=e,u=yn(s),[d,f]=un({prop:r,onChange:i,defaultProp:a??``,caller:Es});return(0,z.jsx)(As,{scope:n,baseId:_n(),value:d,onValueChange:f,orientation:o,dir:u,activationMode:c,children:(0,z.jsx)(M.div,{dir:u,"data-orientation":o,...l,ref:t})})});Ms.displayName=Es;var Ns=`TabsList`,Ps=R.forwardRef((e,t)=>{let{__scopeTabs:n,loop:r=!0,...i}=e,a=js(Ns,n),o=ks(n);return(0,z.jsx)(Zr,{asChild:!0,...o,orientation:a.orientation,dir:a.dir,loop:r,children:(0,z.jsx)(M.div,{role:`tablist`,"aria-orientation":a.orientation,...i,ref:t})})});Ps.displayName=Ns;var Fs=`TabsTrigger`,Is=R.forwardRef((e,t)=>{let{__scopeTabs:n,value:r,disabled:i=!1,...a}=e,o=js(Fs,n),s=ks(n),c=zs(o.baseId,r),l=Bs(o.baseId,r),u=r===o.value;return(0,z.jsx)(Qr,{asChild:!0,...s,focusable:!i,active:u,children:(0,z.jsx)(M.button,{type:`button`,role:`tab`,"aria-selected":u,"aria-controls":l,"data-state":u?`active`:`inactive`,"data-disabled":i?``:void 0,disabled:i,id:c,...a,ref:t,onMouseDown:N(e.onMouseDown,e=>{!i&&e.button===0&&e.ctrlKey===!1?o.onValueChange(r):e.preventDefault()}),onKeyDown:N(e.onKeyDown,e=>{[` `,`Enter`].includes(e.key)&&o.onValueChange(r)}),onFocus:N(e.onFocus,()=>{let e=o.activationMode!==`manual`;!u&&!i&&e&&o.onValueChange(r)})})})});Is.displayName=Fs;var Ls=`TabsContent`,Rs=R.forwardRef((e,t)=>{let{__scopeTabs:n,value:r,forceMount:i,children:a,...o}=e,s=js(Ls,n),c=zs(s.baseId,r),l=Bs(s.baseId,r),u=r===s.value,d=R.useRef(u);return R.useEffect(()=>{let e=requestAnimationFrame(()=>d.current=!1);return()=>cancelAnimationFrame(e)},[]),(0,z.jsx)(dn,{present:i||u,children:({present:n})=>(0,z.jsx)(M.div,{"data-state":u?`active`:`inactive`,"data-orientation":s.orientation,role:`tabpanel`,"aria-labelledby":c,hidden:!n,id:l,tabIndex:0,...o,ref:t,style:{...e.style,animationDuration:d.current?`0s`:void 0},children:n&&a})})});Rs.displayName=Ls;function zs(e,t){return`${e}-trigger-${t}`}function Bs(e,t){return`${e}-content-${t}`}var Vs=Ms,Hs=Ps,Us=Is,Ws=Rs,[Gs,Ks]=on(`Tooltip`,[Cn]),qs=Cn(),Js=`TooltipProvider`,Ys=700,Xs=`tooltip.open`,[Zs,Qs]=Gs(Js),$s=e=>{let{__scopeTooltip:t,delayDuration:n=Ys,skipDelayDuration:r=300,disableHoverableContent:i=!1,children:a}=e,o=R.useRef(!0),s=R.useRef(!1),c=R.useRef(0);return R.useEffect(()=>{let e=c.current;return()=>window.clearTimeout(e)},[]),(0,z.jsx)(Zs,{scope:t,isOpenDelayedRef:o,delayDuration:n,onOpen:R.useCallback(()=>{window.clearTimeout(c.current),o.current=!1},[]),onClose:R.useCallback(()=>{window.clearTimeout(c.current),c.current=window.setTimeout(()=>o.current=!0,r)},[r]),isPointerInTransitRef:s,onPointerInTransitChange:R.useCallback(e=>{s.current=e},[]),disableHoverableContent:i,children:a})};$s.displayName=Js;var ec=`Tooltip`,[tc,nc]=Gs(ec),rc=e=>{let{__scopeTooltip:t,children:n,open:r,defaultOpen:i,onOpenChange:a,disableHoverableContent:o,delayDuration:s}=e,c=Qs(ec,e.__scopeTooltip),l=qs(t),[u,d]=R.useState(null),f=_n(),p=R.useRef(0),m=o??c.disableHoverableContent,h=s??c.delayDuration,g=R.useRef(!1),[_,v]=un({prop:r,defaultProp:i??!1,onChange:e=>{e?(c.onOpen(),document.dispatchEvent(new CustomEvent(Xs))):c.onClose(),a?.(e)},caller:ec}),y=R.useMemo(()=>_?g.current?`delayed-open`:`instant-open`:`closed`,[_]),b=R.useCallback(()=>{window.clearTimeout(p.current),p.current=0,g.current=!1,v(!0)},[v]),x=R.useCallback(()=>{window.clearTimeout(p.current),p.current=0,v(!1)},[v]),S=R.useCallback(()=>{window.clearTimeout(p.current),p.current=window.setTimeout(()=>{g.current=!0,v(!0),p.current=0},h)},[h,v]);return R.useEffect(()=>()=>{p.current&&=(window.clearTimeout(p.current),0)},[]),(0,z.jsx)(wn,{...l,children:(0,z.jsx)(tc,{scope:t,contentId:f,open:_,stateAttribute:y,trigger:u,onTriggerChange:d,onTriggerEnter:R.useCallback(()=>{c.isOpenDelayedRef.current?S():b()},[c.isOpenDelayedRef,S,b]),onTriggerLeave:R.useCallback(()=>{m?x():(window.clearTimeout(p.current),p.current=0)},[x,m]),onOpen:b,onClose:x,disableHoverableContent:m,children:n})})};rc.displayName=ec;var ic=`TooltipTrigger`,ac=R.forwardRef((e,t)=>{let{__scopeTooltip:n,...r}=e,i=nc(ic,n),a=Qs(ic,n),o=qs(n),s=tn(t,R.useRef(null),i.onTriggerChange),c=R.useRef(!1),l=R.useRef(!1),u=R.useCallback(()=>c.current=!1,[]);return R.useEffect(()=>()=>document.removeEventListener(`pointerup`,u),[u]),(0,z.jsx)(Dn,{asChild:!0,...o,children:(0,z.jsx)(M.button,{"aria-describedby":i.open?i.contentId:void 0,"data-state":i.stateAttribute,...r,ref:s,onPointerMove:N(e.onPointerMove,e=>{e.pointerType!==`touch`&&!l.current&&!a.isPointerInTransitRef.current&&(i.onTriggerEnter(),l.current=!0)}),onPointerLeave:N(e.onPointerLeave,()=>{i.onTriggerLeave(),l.current=!1}),onPointerDown:N(e.onPointerDown,()=>{i.open&&i.onClose(),c.current=!0,document.addEventListener(`pointerup`,u,{once:!0})}),onFocus:N(e.onFocus,()=>{c.current||i.onOpen()}),onBlur:N(e.onBlur,i.onClose),onClick:N(e.onClick,i.onClose)})})});ac.displayName=ic;var oc=`TooltipPortal`,[sc,cc]=Gs(oc,{forceMount:void 0}),lc=e=>{let{__scopeTooltip:t,forceMount:n,children:r,container:i}=e,a=nc(oc,t);return(0,z.jsx)(sc,{scope:t,forceMount:n,children:(0,z.jsx)(dn,{present:n||a.open,children:(0,z.jsx)(pn,{asChild:!0,container:i,children:r})})})};lc.displayName=oc;var uc=`TooltipContent`,dc=R.forwardRef((e,t)=>{let n=cc(uc,e.__scopeTooltip),{forceMount:r=n.forceMount,side:i=`top`,...a}=e,o=nc(uc,e.__scopeTooltip);return(0,z.jsx)(dn,{present:r||o.open,children:o.disableHoverableContent?(0,z.jsx)(gc,{side:i,...a,ref:t}):(0,z.jsx)(fc,{side:i,...a,ref:t})})}),fc=R.forwardRef((e,t)=>{let n=nc(uc,e.__scopeTooltip),r=Qs(uc,e.__scopeTooltip),i=R.useRef(null),a=tn(t,i),[o,s]=R.useState(null),{trigger:c,onClose:l}=n,u=i.current,{onPointerInTransitChange:d}=r,f=R.useCallback(()=>{s(null),d(!1)},[d]),p=R.useCallback((e,t)=>{let n=e.currentTarget,r={x:e.clientX,y:e.clientY},i=bc(r,yc(r,n.getBoundingClientRect())),a=xc(t.getBoundingClientRect());s(Cc([...i,...a])),d(!0)},[d]);return R.useEffect(()=>()=>f(),[f]),R.useEffect(()=>{if(c&&u){let e=e=>p(e,u),t=e=>p(e,c);return c.addEventListener(`pointerleave`,e),u.addEventListener(`pointerleave`,t),()=>{c.removeEventListener(`pointerleave`,e),u.removeEventListener(`pointerleave`,t)}}},[c,u,p,f]),R.useEffect(()=>{if(o){let e=e=>{let t=e.target,n={x:e.clientX,y:e.clientY},r=c?.contains(t)||u?.contains(t),i=!Sc(n,o);r?f():i&&(f(),l())};return document.addEventListener(`pointermove`,e),()=>document.removeEventListener(`pointermove`,e)}},[c,u,o,l,f]),(0,z.jsx)(gc,{...e,ref:a})}),[pc,mc]=Gs(ec,{isInside:!1}),hc=en(`TooltipContent`),gc=R.forwardRef((e,t)=>{let{__scopeTooltip:n,children:r,"aria-label":i,onEscapeKeyDown:a,onPointerDownOutside:o,...s}=e,c=nc(uc,n),l=qs(n),{onClose:u}=c;return R.useEffect(()=>(document.addEventListener(Xs,u),()=>document.removeEventListener(Xs,u)),[u]),R.useEffect(()=>{if(c.trigger){let e=e=>{e.target?.contains(c.trigger)&&u()};return window.addEventListener(`scroll`,e,{capture:!0}),()=>window.removeEventListener(`scroll`,e,{capture:!0})}},[c.trigger,u]),(0,z.jsx)(hn,{asChild:!0,disableOutsidePointerEvents:!1,onEscapeKeyDown:a,onPointerDownOutside:o,onFocusOutside:e=>e.preventDefault(),onDismiss:u,children:(0,z.jsxs)(En,{"data-state":c.stateAttribute,...l,...s,ref:t,style:{...s.style,"--radix-tooltip-content-transform-origin":`var(--radix-popper-transform-origin)`,"--radix-tooltip-content-available-width":`var(--radix-popper-available-width)`,"--radix-tooltip-content-available-height":`var(--radix-popper-available-height)`,"--radix-tooltip-trigger-width":`var(--radix-popper-anchor-width)`,"--radix-tooltip-trigger-height":`var(--radix-popper-anchor-height)`},children:[(0,z.jsx)(hc,{children:r}),(0,z.jsx)(pc,{scope:n,isInside:!0,children:(0,z.jsx)(Wn,{id:c.contentId,role:`tooltip`,children:i||r})})]})})});dc.displayName=uc;var _c=`TooltipArrow`,vc=R.forwardRef((e,t)=>{let{__scopeTooltip:n,...r}=e,i=qs(n);return mc(_c,n).isInside?null:(0,z.jsx)(Tn,{...i,...r,ref:t})});vc.displayName=_c;function yc(e,t){let n=Math.abs(t.top-e.y),r=Math.abs(t.bottom-e.y),i=Math.abs(t.right-e.x),a=Math.abs(t.left-e.x);switch(Math.min(n,r,i,a)){case a:return`left`;case i:return`right`;case n:return`top`;case r:return`bottom`;default:throw Error(`unreachable`)}}function bc(e,t,n=5){let r=[];switch(t){case`top`:r.push({x:e.x-n,y:e.y+n},{x:e.x+n,y:e.y+n});break;case`bottom`:r.push({x:e.x-n,y:e.y-n},{x:e.x+n,y:e.y-n});break;case`left`:r.push({x:e.x+n,y:e.y-n},{x:e.x+n,y:e.y+n});break;case`right`:r.push({x:e.x-n,y:e.y-n},{x:e.x-n,y:e.y+n});break}return r}function xc(e){let{top:t,right:n,bottom:r,left:i}=e;return[{x:i,y:t},{x:n,y:t},{x:n,y:r},{x:i,y:r}]}function Sc(e,t){let{x:n,y:r}=e,i=!1;for(let e=0,a=t.length-1;e<t.length;a=e++){let o=t[e],s=t[a],c=o.x,l=o.y,u=s.x,d=s.y;l>r!=d>r&&n<(u-c)*(r-l)/(d-l)+c&&(i=!i)}return i}function Cc(e){let t=e.slice();return t.sort((e,t)=>e.x<t.x?-1:e.x>t.x?1:e.y<t.y?-1:+(e.y>t.y)),wc(t)}function wc(e){if(e.length<=1)return e.slice();let t=[];for(let n=0;n<e.length;n++){let r=e[n];for(;t.length>=2;){let e=t[t.length-1],n=t[t.length-2];if((e.x-n.x)*(r.y-n.y)>=(e.y-n.y)*(r.x-n.x))t.pop();else break}t.push(r)}t.pop();let n=[];for(let t=e.length-1;t>=0;t--){let r=e[t];for(;n.length>=2;){let e=n[n.length-1],t=n[n.length-2];if((e.x-t.x)*(r.y-t.y)>=(e.y-t.y)*(r.x-t.x))n.pop();else break}n.push(r)}return n.pop(),t.length===1&&n.length===1&&t[0].x===n[0].x&&t[0].y===n[0].y?t:t.concat(n)}var Tc=$s;function Ec({delayDuration:e=0,...t}){return(0,z.jsx)(Tc,{"data-slot":`tooltip-provider`,delayDuration:e,...t})}function W(e){return A(e)}function Dc(){let e=W(e=>e.pairs);return(0,R.useMemo)(()=>{let t={};for(let n of e)(n.status===`active`||n.status===`pending`)&&(n.requesterId&&(t[n.requesterId]=n),n.targetId&&(t[n.targetId]=n));return t},[e])}function Oc(e){let t=W(e=>e.messages),n=W(e=>e.tasks),r=W(e=>e.pairs),i=W(e=>e.inboxReadCursors),a=W(e=>e.inboxArchivedThreads);return(0,R.useMemo)(()=>{if(!e)return{unread:0,needsHumanResponse:!1,pendingPairInvite:!1,claimableTasks:0,total:0,score:0};let o=t.filter(t=>Xt(t)===e.id&&!gt(t)),s=Number(a[e.id]||0),c=s>=o.filter(e=>St(e)&&xt(e)).reduce((e,t)=>Math.max(e,t.id),0)&&s>0?0:o.filter(t=>bt(i,e.id,t)).length,l=Wt(e),u=r.find(t=>(t.status===`active`||t.status===`pending`)&&(t.requesterId===e.id||t.targetId===e.id))?.status===`pending`,d=n.filter(t=>Jt(t)&&qt(t.target,e)).length+t.filter(t=>mt(t)&&qt(t.to,e)).length;return{unread:c,needsHumanResponse:l,pendingPairInvite:u,claimableTasks:d,total:c+ +!!l+ +!!u+d,score:c*10+(l?8:0)+(u?4:0)+d*2}},[e,t,n,r,i,a])}function kc(){let e=W(e=>e.agents),t=W(e=>e.showBuiltIns),n=W(e=>e.showOffline),r=W(e=>e.agentSort),i=W(e=>e.agentSortDir),a=W(e=>e.agentPresetFilter),o=W(e=>e.agentStatusFilter),s=W(e=>e.agentTagFilter),c=W(e=>e.agentHostFilter),l=W(e=>e.managedPolicies),u=W(e=>e.pairs);return(0,R.useMemo)(()=>{let d=wt(e,t,l);if(a){let e=Ac(u);d=jc(d,a,lt.getState().now,e)}n||(d=d.filter(e=>e.status!==`offline`)),o===`starting`?d=d.filter(e=>e.status!==`offline`&&!e.ready):o&&(d=d.filter(e=>e.status===o)),s&&(d=d.filter(e=>(e.tags||[]).includes(s))),c&&(d=d.filter(e=>(e.machine||``)===c));let f=i===`desc`?-1:1;return[...d].sort((e,t)=>r===`name`?j(e).localeCompare(j(t))*f:r===`lastSeen`?(new Date(t.lastSeen).getTime()-new Date(e.lastSeen).getTime())*f||j(e).localeCompare(j(t)):r===`created`?(new Date(t.createdAt).getTime()-new Date(e.createdAt).getTime())*f||j(e).localeCompare(j(t)):((Mt[e.status]??9)-(Mt[t.status]??9))*f||j(e).localeCompare(j(t)))},[e,t,n,l,r,i,a,o,s,c,u,ft()])}function Ac(e){let t={};for(let n of e)(n.status===`active`||n.status===`pending`)&&(n.requesterId&&(t[n.requesterId]=n),n.targetId&&(t[n.targetId]=n));return t}function jc(e,t,n,r){switch(t){case`active`:return e.filter(e=>e.status!==`offline`);case`offline_stale`:return e.filter(e=>e.status===`offline`||Yt(n,e));case`claude`:case`codex`:return e.filter(e=>Vt(e)===t);case`paired`:return e.filter(e=>!!r[e.id]);case`unpaired`:return e.filter(e=>!r[e.id]);default:return e}}function Mc(){let e=W(e=>e.messages),t=W(e=>e.inboxReadCursors),n=W(e=>e.inboxArchivedThreads),r=W(e=>e.inboxDrafts),i=W(e=>e.agentsById);return(0,R.useMemo)(()=>{let a=new Map;for(let t of e){if(gt(t))continue;let e=Xt(t);e&&(a.has(e)||a.set(e,{id:e,peer:e,messages:[],lastMessage:null,previewMessage:null,attention:{unread:0,needsHumanResponse:!1,score:0},archived:!1,draft:``}),a.get(e).messages.push(t))}for(let e of a.values()){e.messages.sort((e,t)=>e.id-t.id),e.lastMessage=e.messages[e.messages.length-1]||null;let a=null;for(let t=e.messages.length-1;t>=0;t--){let n=e.messages[t];if(n&&!ht(n)){a=n;break}}e.previewMessage=a||e.lastMessage;let o=e.messages.filter(n=>bt(t,e.peer,n)).length,s=Wt(i[e.peer]);e.attention={unread:o,needsHumanResponse:s,score:o*10+(s?8:0)};let c=Number(n[e.peer]||0);e.archived=!!(e.lastMessage?.id&&c>=e.lastMessage.id),e.draft=r[e.peer]||``}return[...a.values()].sort((e,t)=>{let n=(t.attention.score||0)-(e.attention.score||0);return n===0?(t.lastMessage?.id||0)-(e.lastMessage?.id||0):n})},[e,t,n,r,i])}function Nc(){let e=Mc(),t=W(e=>e.agents),n=W(e=>e.showBuiltIns),r=W(e=>e.showOffline),i=W(e=>e.managedPolicies),a=W(e=>e.pairs),o=W(e=>e.tasks),s=W(e=>e.messages),c=(0,R.useMemo)(()=>new Set(wt(t,n,i).filter(e=>r||e.status!==`offline`).map(e=>e.id)),[t,n,r,i]);return(0,R.useMemo)(()=>{let l=e.filter(e=>!e.archived&&c.has(e.peer)).reduce((e,t)=>e+(t.attention.unread||0),0),u=wt(t,n,i).filter(e=>(r||e.status!==`offline`)&&Wt(e)).length,d=a.filter(e=>e.status===`pending`).length,f=o.filter(Jt).length+s.filter(mt).length;return{unreadInbox:l,needsHumanResponse:u,pendingPairInvites:d,claimableTasks:f,total:l+u+d+f}},[e,c,t,n,r,i,a,o,s])}function Pc(){let e=W(e=>e.agents),t=W(e=>e.showBuiltIns),n=W(e=>e.managedPolicies);return(0,R.useMemo)(()=>wt(e,t,n).filter(e=>e.status!==`offline`).length,[e,t,n])}function Fc(){let e=W(e=>e.agents);return(0,R.useMemo)(()=>e.filter(e=>e.status===`busy`).length,[e])}function Ic(){let e=W(e=>e.agents),t=W(e=>e.showBuiltIns),n=W(e=>e.showOffline),r=W(e=>e.managedPolicies);return(0,R.useMemo)(()=>{let i=wt(e,t,r);return n?i:i.filter(e=>e.status!==`offline`)},[e,t,n,r])}function Lc(){let e=W(e=>e.agents),t=W(e=>e.showBuiltIns),n=W(e=>e.managedPolicies);return(0,R.useMemo)(()=>[...new Set(wt(e,t,n).map(e=>e.machine).filter(Boolean))].sort(),[e,t,n])}function Rc(){let e=W(e=>e.agents),t=W(e=>e.showBuiltIns),n=W(e=>e.managedPolicies);return(0,R.useMemo)(()=>[...new Set(wt(e,t,n).flatMap(e=>e.tags||[]))],[e,t,n])}function zc(){let e=W(e=>e.tasks),t=W(e=>e.messages);return(0,R.useMemo)(()=>{let n=e.filter(e=>!Pt.has(e.status)).map(e=>({id:`task-`+e.id,sourceType:`task`,title:e.title,body:e.body,severity:e.severity||`info`,status:e.status,owner:e.claimedBy||``,target:e.target,source:e.source,channel:e.channel||``,updatedAt:e.updatedAt||e.createdAt,createdAt:e.createdAt,claimable:Jt(e),task:e})),r=t.filter(mt).map(e=>({id:`message-`+e.id,sourceType:`message`,title:e.subject||`Claimable message #`+e.id,body:It(e),severity:`warning`,status:e.claimedBy?`claimed`:`open`,owner:e.claimedBy||``,target:e.to,source:`message`,channel:e.channel||``,updatedAt:e.claimedAt||e.createdAt,createdAt:e.createdAt,claimable:mt(e),message:e}));return[...n,...r].sort((e,t)=>{let n=Number(t.claimable)-Number(e.claimable);if(n!==0)return n;let r={critical:0,warning:1,info:2},i=(r[e.severity]??9)-(r[t.severity]??9);return i===0?Ut(e.updatedAt)-Ut(t.updatedAt):i})},[e,t])}function Bc(){let e=W(e=>e.commandQuery),t=W(e=>e.agents),n=W(e=>e.agentsById),r=W(e=>e.showBuiltIns),i=W(e=>e.showOffline),a=W(e=>e.managedPolicies);return(0,R.useMemo)(()=>{let n=wt(t,r,a).filter(e=>i||e.status!==`offline`),o=[...new Set(n.flatMap(e=>e.tags||[]))],s=me(),c=[Vc(`open-chat`,`Open chat`,`Human console`,`MessageCircle`,`openView`,{view:`chat`}),Vc(`open-work`,`Open work queue`,`Claimable messages and tasks`,`ListChecks`,`openView`,{view:`work`}),Vc(`open-workspaces`,`Open workspaces`,`Agent worktrees and merge state`,`GitBranch`,`openView`,{view:`workspaces`}),Vc(`show-stale`,`Show stale agents`,`Filter agents to offline or stale`,`Filter`,`agentPreset`,{preset:`offline_stale`}),Vc(`copy-url`,`Copy relay URL`,s,`Copy`,`copy`,{value:s}),Vc(`export-md`,`Export timeline as Markdown`,`Activity audit trace`,`FileDown`,`exportActivity`,{format:`markdown`}),Vc(`export-json`,`Export timeline as JSON`,`Activity audit trace`,`Braces`,`exportActivity`,{format:`json`}),...n.slice(0,12).map(e=>Vc(`msg-`+e.id,`Message agent: `+j(e),e.id,`Send`,`messageAgent`,{agentId:e.id})),...n.filter(e=>Vt(e)===`codex`).slice(0,8).map(e=>Vc(`pair-`+e.id,`Pair Codex: `+j(e),e.id,`Link`,`pairAgent`,{agentId:e.id})),...o.map(e=>Vc(`tag-`+e,`Filter tag: `+e,`#`+e,`Tag`,`filterTag`,{tag:e}))],l=e.trim().toLowerCase();return(l?c.filter(e=>e.search.includes(l)):c).slice(0,24)},[e,t,n,r,i,a])}function Vc(e,t,n,r,i,a){return{id:e,title:t,subtitle:n,icon:r,action:i,payload:a,search:`${t}\n${n}\n${i}`.toLowerCase()}}function Hc({className:e,size:t=`default`,...n}){return(0,z.jsx)(ws,{"data-slot":`switch`,"data-size":t,className:_(`peer group/switch relative inline-flex shrink-0 items-center rounded-full border border-transparent transition-all outline-none after:absolute after:-inset-x-3 after:-inset-y-2 focus-visible:border-ring focus-visible:ring-3 focus-visible:ring-ring/50 aria-invalid:border-destructive aria-invalid:ring-3 aria-invalid:ring-destructive/20 data-[size=default]:h-[18.4px] data-[size=default]:w-[32px] data-[size=sm]:h-[14px] data-[size=sm]:w-[24px] dark:aria-invalid:border-destructive/50 dark:aria-invalid:ring-destructive/40 data-checked:bg-primary data-unchecked:bg-input dark:data-unchecked:bg-input/80 data-disabled:cursor-not-allowed data-disabled:opacity-50`,e),...n,children:(0,z.jsx)(Ts,{"data-slot":`switch-thumb`,className:`pointer-events-none block rounded-full bg-background ring-0 transition-transform group-data-[size=default]/switch:size-4 group-data-[size=sm]/switch:size-3 group-data-[size=default]/switch:data-checked:translate-x-[calc(100%-2px)] group-data-[size=sm]/switch:data-checked:translate-x-[calc(100%-2px)] dark:data-checked:bg-primary-foreground group-data-[size=default]/switch:data-unchecked:translate-x-0 group-data-[size=sm]/switch:data-unchecked:translate-x-0 dark:data-unchecked:bg-foreground`})})}function Uc({className:e,orientation:t=`horizontal`,decorative:n=!0,...r}){return(0,z.jsx)(fs,{"data-slot":`separator`,decorative:n,orientation:t,className:_(`shrink-0 bg-border data-horizontal:h-px data-horizontal:w-full data-vertical:w-px data-vertical:self-stretch`,e),...r})}function Wc({...e}){return(0,z.jsx)(fo,{"data-slot":`dropdown-menu`,...e})}function Gc({...e}){return(0,z.jsx)(po,{"data-slot":`dropdown-menu-trigger`,...e})}function Kc({className:e,align:t=`start`,sideOffset:n=4,...r}){return(0,z.jsx)(mo,{children:(0,z.jsx)(ho,{"data-slot":`dropdown-menu-content`,sideOffset:n,align:t,className:_(`z-50 max-h-(--radix-dropdown-menu-content-available-height) w-(--radix-dropdown-menu-trigger-width) min-w-32 origin-(--radix-dropdown-menu-content-transform-origin) overflow-x-hidden overflow-y-auto rounded-lg bg-popover p-1 text-popover-foreground shadow-md ring-1 ring-foreground/10 duration-100 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 data-[state=closed]:overflow-hidden data-open:animate-in data-open:fade-in-0 data-open:zoom-in-95 data-closed:animate-out data-closed:fade-out-0 data-closed:zoom-out-95`,e),...r})})}function qc({className:e,inset:t,variant:n=`default`,...r}){return(0,z.jsx)(_o,{"data-slot":`dropdown-menu-item`,"data-inset":t,"data-variant":n,className:_(`group/dropdown-menu-item relative flex cursor-default items-center gap-1.5 rounded-md px-1.5 py-1 text-sm outline-hidden select-none focus:bg-accent focus:text-accent-foreground not-data-[variant=destructive]:focus:**:text-accent-foreground data-inset:pl-7 data-[variant=destructive]:text-destructive data-[variant=destructive]:focus:bg-destructive/10 data-[variant=destructive]:focus:text-destructive dark:data-[variant=destructive]:focus:bg-destructive/20 data-disabled:pointer-events-none data-disabled:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4 data-[variant=destructive]:*:[svg]:text-destructive`,e),...r})}function Jc({className:e,inset:t,...n}){return(0,z.jsx)(go,{"data-slot":`dropdown-menu-label`,"data-inset":t,className:_(`px-1.5 py-1 text-xs font-medium text-muted-foreground data-inset:pl-7`,e),...n})}function Yc({className:e,...t}){return(0,z.jsx)(vo,{"data-slot":`dropdown-menu-separator`,className:_(`-mx-1 my-1 h-px bg-border`,e),...t})}var Xc={LayoutDashboard:je,MessageCircle:O,Bot:d,Server:E,MessagesSquare:_e,Plug:ee,PlugZap:ot,Activity:de,Link:Se,Mail:Je,ListChecks:et,ClipboardList:Ue,CalendarClock:it,AreaChart:tt,Settings:nt,Workflow:We,BrainCircuit:rt,FolderTree:Ie,Shield:se,Wrench:ye,UserCog:Ce,Lightbulb:Ve,Users:Le,Boxes:f};function Zc(e){return new Date(e.createdAt).toLocaleTimeString(void 0,{hour:`2-digit`,minute:`2-digit`})}var Qc=[[`messages`,`Messages`],[`replies`,`Replies`],[`errors`,`Errors`]];function $c(){let e=A(e=>e.notifications),t=A(e=>e.notificationUnread),n=A(e=>e.notificationSettings),r=A(e=>e.notificationPermission),a=A(e=>e.set),o=A(e=>e.openNotification),s=A(e=>e.markNotificationsRead),c=A(e=>e.clearNotifications),l=A(e=>e.requestBrowserNotifications),u=t>0?i:Fe;function d(e){a({notificationSettings:{...n,...e}})}return(0,z.jsxs)(Wc,{onOpenChange:e=>{e&&s()},children:[(0,z.jsx)(Gc,{asChild:!0,children:(0,z.jsxs)(`button`,{className:`relative flex items-center gap-2 text-muted-foreground hover:text-foreground transition-colors w-full`,children:[(0,z.jsx)(u,{className:`w-3.5 h-3.5`}),(0,z.jsx)(`span`,{children:`Notifications`}),t>0&&(0,z.jsx)(P,{variant:`destructive`,className:`ml-auto text-[10px] px-1.5 py-0`,children:t})]})}),(0,z.jsxs)(Kc,{align:`start`,side:`right`,className:`w-80 p-2`,children:[(0,z.jsxs)(`div`,{className:`flex items-center justify-between gap-2 px-1.5 py-1`,children:[(0,z.jsx)(Jc,{className:`p-0`,children:`Notifications`}),(0,z.jsxs)(`div`,{className:`flex items-center gap-1`,children:[(0,z.jsx)(`button`,{type:`button`,title:`Mark read`,onClick:s,className:`rounded p-1 text-muted-foreground hover:bg-accent hover:text-foreground`,children:(0,z.jsx)(De,{className:`h-3.5 w-3.5`})}),(0,z.jsx)(`button`,{type:`button`,title:`Clear`,onClick:c,className:`rounded p-1 text-muted-foreground hover:bg-accent hover:text-foreground`,children:(0,z.jsx)(ke,{className:`h-3.5 w-3.5`})})]})]}),(0,z.jsxs)(`div`,{className:`px-1.5 py-1.5 space-y-2`,children:[(0,z.jsxs)(`label`,{className:`flex items-center justify-between gap-3 text-xs`,children:[(0,z.jsx)(`span`,{className:`text-muted-foreground`,children:`In-app notifications`}),(0,z.jsx)(Hc,{size:`sm`,checked:n.enabled,onCheckedChange:e=>d({enabled:e})})]}),(0,z.jsxs)(`label`,{className:`flex items-center justify-between gap-3 text-xs`,children:[(0,z.jsx)(`span`,{className:`text-muted-foreground`,children:`Browser notifications`}),(0,z.jsx)(Hc,{size:`sm`,checked:n.browserEnabled&&r===`granted`,disabled:r===`unsupported`,onCheckedChange:e=>{e&&r!==`granted`?l():d({browserEnabled:e})}})]}),(0,z.jsx)(`div`,{className:`grid grid-cols-3 gap-1`,children:Qc.map(([e,t])=>(0,z.jsx)(`button`,{type:`button`,onClick:()=>d({[e]:!n[e]}),className:_(`rounded border px-2 py-1 text-[11px] transition-colors`,n[e]?`border-primary/40 bg-primary/10 text-primary`:`border-border text-muted-foreground hover:bg-accent`),children:t},e))})]}),(0,z.jsx)(Yc,{}),(0,z.jsx)(`div`,{className:`max-h-80 overflow-y-auto`,children:e.length===0?(0,z.jsx)(`div`,{className:`px-1.5 py-8 text-center text-xs text-muted-foreground`,children:`No notifications`}):e.slice(0,20).map(e=>(0,z.jsxs)(qc,{onSelect:t=>{t.preventDefault(),o(e)},className:`flex flex-col items-start gap-0.5 px-2 py-2`,children:[(0,z.jsxs)(`div`,{className:`flex w-full items-center gap-2`,children:[(0,z.jsx)(`span`,{className:_(`h-1.5 w-1.5 rounded-full`,e.severity===`error`?`bg-red-400`:e.severity===`warning`?`bg-yellow-400`:`bg-blue-400`)}),(0,z.jsx)(`span`,{className:`min-w-0 flex-1 truncate text-xs font-medium`,children:e.title}),(0,z.jsx)(`span`,{className:`text-[10px] text-muted-foreground`,children:Zc(e)})]}),(0,z.jsx)(`span`,{className:`line-clamp-2 text-xs text-muted-foreground`,children:e.body})]},e.id))})]})]})}function el(){let e=A(e=>e.theme),t=A(e=>e.set);return(0,z.jsxs)(Wc,{children:[(0,z.jsx)(Gc,{asChild:!0,children:(0,z.jsxs)(`button`,{className:`flex items-center gap-2 text-muted-foreground hover:text-foreground transition-colors w-full`,children:[(0,z.jsx)(S,{className:`w-3.5 h-3.5`}),(0,z.jsx)(`span`,{children:`Theme`}),(0,z.jsx)(`span`,{className:`ml-auto text-[10px] text-muted-foreground`,children:Qt.find(t=>t.id===e)?.label})]})}),(0,z.jsx)(Kc,{align:`start`,side:`right`,className:`w-40`,children:Qt.map(n=>(0,z.jsxs)(qc,{onSelect:()=>t({theme:n.id}),children:[(0,z.jsx)(`span`,{className:`flex-1`,children:n.label}),e===n.id&&(0,z.jsx)(Ae,{className:`w-3.5 h-3.5 text-primary`})]},n.id))})]})}function tl(){let e=A(e=>e.view),t=A(e=>e.switchView),n=A(e=>e.connected),r=A(e=>e.showOffline),i=A(e=>e.showBuiltIns),a=A(e=>e.autoRefresh),o=A(e=>e.stats),s=A(e=>e.openCommandPalette),c=A(e=>e.set),l=A(e=>e.startAutoRefresh),u=A(e=>e.stopAutoRefresh),f=Nc(),p=Pc();function m(e){return e===`overview`&&f.total>0?(0,z.jsx)(P,{variant:`destructive`,className:`ml-auto text-[10px] px-1.5 py-0`,children:f.total}):e===`chat`&&f.unreadInbox>0?(0,z.jsx)(P,{variant:`destructive`,className:`ml-auto text-[10px] px-1.5 py-0`,children:f.unreadInbox}):e===`agents`?(0,z.jsx)(P,{variant:`secondary`,className:`ml-auto text-[10px] px-1.5 py-0`,children:p}):e===`pairs`&&f.pendingPairInvites>0?(0,z.jsx)(P,{className:`ml-auto text-[10px] px-1.5 py-0 bg-yellow-500/20 text-yellow-400`,children:f.pendingPairInvites}):e===`work`&&f.claimableTasks>0?(0,z.jsx)(P,{className:`ml-auto text-[10px] px-1.5 py-0 bg-yellow-500/20 text-yellow-400`,children:f.claimableTasks}):null}return(0,z.jsxs)(z.Fragment,{children:[(0,z.jsx)(`nav`,{className:`flex-1 overflow-y-auto py-2 px-2`,children:At.map(n=>{let r=Xc[n.icon]||d;return(0,z.jsxs)(`button`,{onClick:()=>t(n.key),className:_(`w-full flex items-center gap-2 px-3 py-2 rounded-md text-sm transition-colors my-0.5`,e===n.key?`bg-primary text-primary-foreground`:`text-foreground hover:bg-accent`),children:[(0,z.jsx)(r,{className:`w-4 h-4 shrink-0`}),n.label,m(n.key)]},n.key)})}),(0,z.jsxs)(`div`,{className:`mt-auto border-t border-border p-4 space-y-3 text-xs`,children:[(0,z.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,z.jsx)(`span`,{className:_(`w-2 h-2 rounded-full`,n?`bg-emerald-500`:`bg-red-500 animate-pulse`)}),(0,z.jsx)(`span`,{className:`text-muted-foreground`,children:n?`Live`:`Reconnecting...`})]}),(0,z.jsxs)(`button`,{onClick:s,className:`flex items-center gap-2 text-muted-foreground hover:text-foreground transition-colors w-full`,children:[(0,z.jsx)(ae,{className:`w-3.5 h-3.5`}),(0,z.jsx)(`span`,{children:`Command palette`}),(0,z.jsx)(`kbd`,{className:`ml-auto text-[10px] bg-muted px-1.5 py-0.5 rounded`,children:`⌘K`})]}),(0,z.jsx)($c,{}),(0,z.jsx)(el,{}),(0,z.jsx)(Uc,{}),(0,z.jsxs)(`label`,{className:`flex items-center justify-between cursor-pointer`,children:[(0,z.jsx)(`span`,{className:`text-muted-foreground`,children:`Show offline`}),(0,z.jsx)(Hc,{checked:r,onCheckedChange:e=>c({showOffline:e})})]}),(0,z.jsxs)(`label`,{className:`flex items-center justify-between cursor-pointer`,children:[(0,z.jsx)(`span`,{className:`text-muted-foreground`,children:`System agents`}),(0,z.jsx)(Hc,{checked:i,onCheckedChange:e=>c({showBuiltIns:e})})]}),(0,z.jsxs)(`label`,{className:`flex items-center justify-between cursor-pointer`,children:[(0,z.jsx)(`span`,{className:`text-muted-foreground`,children:`Auto refresh`}),(0,z.jsx)(Hc,{checked:a,onCheckedChange:e=>{c({autoRefresh:e}),e?l():u()}})]}),o.version&&(0,z.jsxs)(`div`,{className:`text-muted-foreground pt-1`,children:[`v`,o.version]})]})]})}function nl(){return(0,z.jsxs)(`aside`,{className:`hidden xl:flex w-[250px] min-w-[250px] h-[calc(100dvh-var(--sat))] sticky top-[var(--sat)] flex-col border-r border-border bg-card`,children:[(0,z.jsxs)(`div`,{className:`px-5 py-4 font-bold text-base border-b border-border flex items-center gap-2`,children:[(0,z.jsx)(m,{className:`w-4 h-4 text-primary`}),`Agent Relay`]}),(0,z.jsx)(tl,{})]})}function rl(){let e=A(e=>e.mobileMenuOpen),t=A(e=>e.set);return(0,R.useEffect)(()=>{if(!e)return;function n(e){e.key===`Escape`&&t({mobileMenuOpen:!1})}return window.addEventListener(`keydown`,n),()=>window.removeEventListener(`keydown`,n)},[e]),(0,z.jsxs)(z.Fragment,{children:[(0,z.jsx)(`div`,{className:_(`xl:hidden fixed inset-0 z-40 bg-black/50 transition-opacity duration-200`,e?`opacity-100`:`opacity-0 pointer-events-none`),onClick:()=>t({mobileMenuOpen:!1})}),(0,z.jsxs)(`aside`,{inert:!e,className:_(`xl:hidden fixed inset-y-0 left-0 z-50 w-[280px] flex flex-col pt-[var(--sat)] bg-card border-r border-border transition-transform duration-200 ease-out`,e?`translate-x-0`:`-translate-x-full`),children:[(0,z.jsxs)(`div`,{className:`px-5 py-4 font-bold text-base border-b border-border flex items-center gap-2`,children:[(0,z.jsx)(m,{className:`w-4 h-4 text-primary`}),`Agent Relay`,(0,z.jsx)(`button`,{onClick:()=>t({mobileMenuOpen:!1}),className:`ml-auto p-1 text-muted-foreground hover:text-foreground transition-colors`,"aria-label":`Close menu`,children:(0,z.jsx)(Me,{className:`w-4 h-4`})})]}),(0,z.jsx)(tl,{})]})]})}var il=500*1024,al={bash:`bash`,c:`c`,conf:`properties`,cpp:`cpp`,cs:`csharp`,css:`css`,csv:`csv`,cts:`typescript`,diff:`diff`,dockerfile:`dockerfile`,env:`dotenv`,gemspec:`ruby`,go:`go`,graphql:`graphql`,h:`c`,hcl:`hcl`,hpp:`cpp`,html:`html`,ini:`ini`,java:`java`,js:`javascript`,json:`json`,jsonc:`jsonc`,jsx:`jsx`,kt:`kotlin`,less:`less`,log:`log`,lua:`lua`,mjs:`javascript`,mts:`typescript`,patch:`diff`,php:`php`,plist:`xml`,podspec:`ruby`,properties:`properties`,py:`python`,rake:`ruby`,rb:`ruby`,rs:`rust`,scss:`scss`,sh:`bash`,sql:`sql`,svelte:`svelte`,swift:`swift`,toml:`toml`,ts:`typescript`,tsx:`tsx`,txt:`text`,vue:`vue`,webmanifest:`json`,xml:`xml`,yaml:`yaml`,yml:`yaml`,zsh:`bash`},ol={".bashrc":`bash`,".env":`dotenv`,".eslintrc":`json`,".gitignore":`gitignore`,".npmrc":`properties`,".prettierrc":`json`,".swiftformat":`properties`,".swiftlint.yml":`yaml`,".watchmanconfig":`json`,"app.config":`json`,"app.webmanifest":`json`,berksfile:`ruby`,brewfile:`ruby`,"bun.lock":`json`,capfile:`ruby`,cartfile:`ruby`,"composer.lock":`json`,dangerfile:`ruby`,"deno.lock":`json`,fastfile:`ruby`,"flake.lock":`json`,gemfile:`ruby`,guardfile:`ruby`,podfile:`ruby`,rakefile:`ruby`,dockerfile:`dockerfile`,makefile:`make`},sl=null;function cl(){return sl??=L(()=>import(`./bundle-web-CXNb85wK.js`),__vite__mapDeps([0,1,2,3]),import.meta.url),sl}function ll(e){return new TextEncoder().encode(e).length}function ul(e){return e.split(`/`).filter(Boolean).pop()||e}function dl(e){let t=e?.slice(0,240).split(/\r?\n/,1)[0]?.toLowerCase()||``;return t.startsWith(`#!`)?/\b(bash|dash|ksh|sh|zsh)\b/.test(t)?`bash`:/\bfish\b/.test(t)?`fish`:/\b(ts-node|tsx)\b/.test(t)?`typescript`:/\b(node|bun|deno)\b/.test(t)?`javascript`:/\bpython[0-9.]*\b/.test(t)?`python`:/\bruby\b/.test(t)?`ruby`:/\bswift\b/.test(t)?`swift`:/\bperl\b/.test(t)?`perl`:/\bphp\b/.test(t)?`php`:null:null}function fl(e,t,n,r){if(n)return n;let i=ul(e).toLowerCase();if(ol[i])return ol[i];if(i.endsWith(`.d.ts`))return`typescript`;let a=dl(r);if(a)return a;let o=i.includes(`.`)?i.slice(i.lastIndexOf(`.`)+1):``;return o&&al[o]?al[o]:t?.includes(`json`)?`json`:t?.includes(`javascript`)?`javascript`:t?.includes(`typescript`)?`typescript`:t?.includes(`xml`)?`xml`:t?.includes(`yaml`)||t?.includes(`yml`)?`yaml`:t?.includes(`shellscript`)?`bash`:null}function pl(e,t,n,r){let i=fl(e,t,n,r);return!!(i&&i!==`text`&&i!==`log`)}var ml=(0,R.memo)(function({content:e,path:t,mediaType:n,languageHint:r,compact:i=!1}){let a=A(e=>e.theme),o=Qt.find(e=>e.id===a)?.dark??!0,s=(0,R.useMemo)(()=>fl(t,n,r,e)||`text`,[e,r,n,t]),c=ll(e)>il,[l,u]=(0,R.useState)(``),[d,f]=(0,R.useState)(!1),[p,m]=(0,R.useState)(!1);function h(){return(0,z.jsx)(kn,{value:e,label:`Copy code`,copiedLabel:`Copied code`,size:`icon`,variant:`ghost`,className:`absolute right-2 top-2 h-7 w-7 bg-background/80 opacity-0 shadow-sm backdrop-blur transition-opacity hover:bg-muted group-hover/code:opacity-100 focus-visible:opacity-100`})}return(0,R.useEffect)(()=>{if(c||s===`text`||s===`log`){u(``),f(!1),m(!1);return}let t=!1;return f(!0),m(!1),cl().then(({codeToHtml:t})=>t(e,{lang:s,theme:o?`github-dark-default`:`github-light-default`})).then(e=>{t||u(e)}).catch(()=>{t||(u(``),m(!0))}).finally(()=>{t||f(!1)}),()=>{t=!0}},[e,o,s,c]),d?(0,z.jsxs)(`div`,{className:`flex items-center gap-2 p-4 text-sm text-muted-foreground`,children:[(0,z.jsx)(Re,{className:`h-4 w-4 animate-spin`}),`Highlighting`]}):c||p||!l?(0,z.jsxs)(`div`,{className:`group/code relative`,children:[h(),(0,z.jsx)(`pre`,{className:`overflow-auto whitespace-pre-wrap break-words font-mono text-xs leading-5 ${i?`p-3`:`p-4`}`,children:e||` `})]}):(0,z.jsxs)(`div`,{className:`group/code relative`,children:[h(),(0,z.jsx)(`div`,{className:`code-preview overflow-auto font-mono text-xs leading-5 ${i?`p-3`:`p-4`}`,dangerouslySetInnerHTML:{__html:l}})]})}),hl=(0,R.lazy)(()=>L(()=>import(`./markdown-preview-impl-KBRWvxHt.js`).then(e=>({default:e.MarkdownPreview})),__vite__mapDeps([4,5,1,3,6]),import.meta.url));function gl(e){return(0,z.jsx)(R.Suspense,{fallback:(0,z.jsx)(`div`,{className:`p-4 text-sm text-muted-foreground`,children:`Loading preview…`}),children:(0,z.jsx)(hl,{...e})})}var _l=e(st(),1);function vl({src:e,alt:t,onClose:n}){let[r,i]=(0,R.useState)(!1);return(0,R.useEffect)(()=>{let e=document.body.style.overflow;document.body.style.overflow=`hidden`;function t(e){e.key===`Escape`&&n()}return document.addEventListener(`keydown`,t),()=>{document.body.style.overflow=e,document.removeEventListener(`keydown`,t)}},[n]),(0,z.jsxs)(`div`,{className:`fixed inset-0 z-[100] flex flex-col bg-black/95`,children:[(0,z.jsxs)(`div`,{className:`flex shrink-0 items-center justify-end gap-2 p-2`,children:[(0,z.jsx)(`button`,{type:`button`,className:`rounded-full bg-white/10 p-2 text-white/70 hover:bg-white/20 hover:text-white`,onClick:()=>i(!r),title:r?`Fit to screen`:`Actual size`,children:r?(0,z.jsx)(He,{className:`h-4 w-4`}):(0,z.jsx)(Ke,{className:`h-4 w-4`})}),(0,z.jsx)(`button`,{type:`button`,className:`rounded-full bg-white/10 p-2 text-white/70 hover:bg-white/20 hover:text-white`,onClick:n,title:`Close`,children:(0,z.jsx)(Me,{className:`h-4 w-4`})})]}),(0,z.jsx)(`div`,{className:`min-h-0 flex-1 ${r?`overflow-auto`:`flex items-center justify-center overflow-hidden p-4`}`,onClick:r?void 0:n,children:(0,z.jsx)(`img`,{src:e,alt:t,className:r?`max-w-none`:`max-h-full max-w-full cursor-zoom-in object-contain`,onClick:e=>{e.stopPropagation(),i(!r)}})})]})}function yl({src:e,alt:t=``,className:n,style:r}){let[i,a]=(0,R.useState)(!1);return(0,z.jsxs)(z.Fragment,{children:[(0,z.jsx)(`img`,{src:e,alt:t,className:`${n||``} cursor-zoom-in`,style:r,onClick:()=>a(!0)}),i&&(0,_l.createPortal)((0,z.jsx)(vl,{src:e,alt:t,onClose:()=>a(!1)}),document.body)]})}var bl=`agent-relay:file-git-status`;function xl(){try{return window.localStorage.getItem(bl)!==`off`}catch{return!0}}function Sl(e){try{window.localStorage.setItem(bl,e?`on`:`off`)}catch{}}function Cl(e){switch(e){case`staged`:return{dot:`bg-green-500`,text:`text-green-400`,label:`Staged`};case`unstaged`:return{dot:`bg-amber-500`,text:`text-amber-400`,label:`Modified (unstaged)`};case`staged-unstaged`:return{dot:`bg-amber-500`,text:`text-green-400`,label:`Staged + unstaged changes`};case`untracked`:return{dot:`bg-sky-500`,text:`text-sky-400`,label:`Untracked`};default:return null}}function wl(e,t,n){let r=`/orchestrators/${encodeURIComponent(e)}/files/list?path=${encodeURIComponent(t)}`;return n?`${r}&git=1`:r}function Tl({status:e}){let t=Cl(e);return t?(0,z.jsx)(`span`,{className:`h-1.5 w-1.5 shrink-0 rounded-full ${t.dot}`,title:t.label}):null}function El(e){return e===void 0?``:e<1024?`${e} B`:e<1024*1024?`${(e/1024).toFixed(1)} KB`:`${(e/1024/1024).toFixed(1)} MB`}function Dl(e,t){let n=t.replace(/\/+$/,``);return e===n?`/`:e.startsWith(n+`/`)?e.slice(n.length+1):e}function Ol(e,t){let n=e.toLowerCase();return n.endsWith(`.md`)||n.endsWith(`.mdx`)||n.endsWith(`.markdown`)||t===`text/markdown`}function kl(e,t,n){return Ol(e,t)?`markdown`:pl(e,t,void 0,n)?`code`:null}function Al(e){return`agent-relay:file-view-mode:${e}`}function jl(e){try{let t=window.localStorage.getItem(Al(e));return t===`raw`||t===`rendered`?t:`rendered`}catch{return`rendered`}}function Ml(e,t){try{window.localStorage.setItem(Al(e),t)}catch{}}function Nl(e,t){let n=Dl(e,t);if(n===`/`)return[{label:`/`,path:t}];let r=n.split(`/`).filter(Boolean),i=[{label:`/`,path:t}];for(let e=0;e<r.length;e++)i.push({label:r[e],path:`${t.replace(/\/+$/,``)}/${r.slice(0,e+1).join(`/`)}`});return i}function Pl(e,t){let n=A(e=>e.apiCall),[r,i]=(0,R.useState)(null),[a,o]=(0,R.useState)(!1),[s,c]=(0,R.useState)(``);return(0,R.useEffect)(()=>{if(!e||!t){i(null),c(``);return}let r=!1;return o(!0),c(``),n(`GET`,`/orchestrators/${encodeURIComponent(e)}/files/read?path=${encodeURIComponent(t)}`).then(e=>{r||i(e)}).catch(e=>{r||(i(null),c(Ot(e)))}).finally(()=>{r||o(!1)}),()=>{r=!0}},[n,e,t]),{file:r,loading:a,error:s}}function Fl(e,t,n=!1){let r=A(e=>e.apiCall),[i,a]=(0,R.useState)(null),[o,s]=(0,R.useState)(!1),[c,l]=(0,R.useState)(``);return(0,R.useEffect)(()=>{if(!e||!t){a(null),l(``);return}let i=!1;return s(!0),l(``),r(`GET`,wl(e,t,n)).then(e=>{i||a(e)}).catch(e=>{i||(a(null),l(Ot(e)))}).finally(()=>{i||s(!1)}),()=>{i=!0}},[r,e,t,n]),{listing:i,loading:o,error:c}}function Il({content:e,line:t,lineRef:n}){return(0,z.jsx)(`div`,{className:`w-full py-2 font-mono text-xs leading-5`,children:e.split(`
15
+ `).map((e,r)=>{let i=r+1,a=i===t;return(0,z.jsxs)(`div`,{ref:a?n:void 0,className:`grid grid-cols-[2.5rem_minmax(0,1fr)] px-1 sm:grid-cols-[4rem_minmax(0,1fr)] sm:px-2 ${a?`bg-primary/15`:``}`,children:[(0,z.jsx)(`div`,{className:`select-none pr-2 text-right text-muted-foreground sm:pr-3`,children:i}),(0,z.jsx)(`pre`,{className:`overflow-hidden whitespace-pre-wrap break-words`,children:e||` `})]},i)})})}function Ll({orchestratorId:e,selectedPath:t,onReadError:n,git:r=!1}){let{listing:i,loading:a,error:o}=Fl(e,t,r);return(0,R.useEffect)(()=>{n(o)},[o,n]),t?a?(0,z.jsxs)(`div`,{className:`flex h-full items-center justify-center gap-2 text-sm text-muted-foreground`,children:[(0,z.jsx)(Re,{className:`h-4 w-4 animate-spin`}),`Loading directory`]}):o?(0,z.jsx)(`div`,{className:`h-full bg-muted/20`}):i?(0,z.jsxs)(`div`,{className:`h-full overflow-auto bg-muted/20`,children:[(0,z.jsxs)(`div`,{className:`sticky top-0 z-10 flex items-center gap-2 border-b border-border bg-background px-3 py-2 text-xs`,children:[(0,z.jsx)(ne,{className:`h-3.5 w-3.5 text-blue-400`}),(0,z.jsx)(`span`,{className:`min-w-0 flex-1 truncate font-mono`,children:i.path}),(0,z.jsxs)(P,{variant:`outline`,className:`text-[10px]`,children:[i.entries.length,` items`]})]}),(0,z.jsxs)(`div`,{className:`divide-y divide-border/60`,children:[i.entries.map(e=>{let t=e.type===`directory`?ne:h,n=Cl(e.gitStatus);return(0,z.jsxs)(`div`,{className:`flex items-center gap-2 px-3 py-2 text-sm`,children:[(0,z.jsx)(t,{className:`h-4 w-4 shrink-0 ${e.type===`directory`?`text-blue-400`:`text-muted-foreground`}`}),(0,z.jsx)(`span`,{className:`min-w-0 flex-1 truncate font-mono text-xs ${n?.text??``}`,children:e.name}),e.symlink&&(0,z.jsx)(Te,{className:`h-3 w-3 shrink-0 text-muted-foreground/60`}),(0,z.jsx)(Tl,{status:e.gitStatus}),e.type!==`directory`&&(0,z.jsx)(`span`,{className:`text-[10px] text-muted-foreground`,children:El(e.size)})]},e.path)}),i.entries.length===0&&(0,z.jsx)(`div`,{className:`px-3 py-8 text-center text-sm text-muted-foreground`,children:`No files`})]})]}):null:(0,z.jsx)(`div`,{className:`flex h-full items-center justify-center text-sm text-muted-foreground`,children:`Select a directory to preview`})}function Rl({orchestratorId:e,selectedPath:t,line:n,onReadError:r}){let{file:i,loading:a,error:o}=Pl(e,t),s=(0,R.useRef)(null),[c,l]=(0,R.useState)(`raw`);(0,R.useEffect)(()=>{r(o)},[o,r]),(0,R.useEffect)(()=>{n>0&&s.current?.scrollIntoView({block:`center`})},[i,n]),(0,R.useEffect)(()=>{if(!i||i.encoding===`binary`)return;if(n>0){l(`raw`);return}let e=kl(i.path,i.mediaType,i.content);l(e?jl(e):`raw`)},[i?.path,i?.encoding,i?.mediaType,i?.content,n]);function u(e,t){l(e),t&&Ml(t,e)}if(!t)return(0,z.jsx)(`div`,{className:`flex h-full items-center justify-center text-sm text-muted-foreground`,children:`Select a file to preview`});if(a)return(0,z.jsxs)(`div`,{className:`flex h-full items-center justify-center gap-2 text-sm text-muted-foreground`,children:[(0,z.jsx)(Re,{className:`h-4 w-4 animate-spin`}),`Loading file`]});if(o)return(0,z.jsx)(`div`,{className:`h-full bg-muted/20`});if(!i)return null;if(i.encoding===`base64`)return(0,z.jsxs)(`div`,{className:`flex h-full flex-col bg-muted/20`,children:[(0,z.jsxs)(`div`,{className:`sticky top-0 z-10 flex items-center gap-2 border-b border-border bg-background px-3 py-2 text-xs`,children:[(0,z.jsx)(h,{className:`h-3.5 w-3.5 text-muted-foreground`}),(0,z.jsx)(`span`,{className:`min-w-0 flex-1 truncate font-mono`,children:i.path}),(0,z.jsx)(kn,{value:i.path,label:`Copy path`,copiedLabel:`Copied path`,size:`icon`,variant:`ghost`,className:`h-7 w-7 shrink-0`}),(0,z.jsx)(P,{variant:`outline`,className:`text-[10px]`,children:El(i.size)})]}),(0,z.jsx)(`div`,{className:`flex min-h-0 flex-1 items-center justify-center overflow-auto p-4`,children:(0,z.jsx)(yl,{src:`data:${i.mediaType};base64,${i.content??``}`,alt:i.name,className:`max-h-full max-w-full object-contain`,style:{imageRendering:i.mediaType===`image/svg+xml`?`auto`:void 0}})})]});if(i.encoding===`binary`)return(0,z.jsxs)(`div`,{className:`p-4 text-sm`,children:[(0,z.jsx)(`div`,{className:`font-medium`,children:i.name}),(0,z.jsx)(`div`,{className:`mt-1 text-muted-foreground`,children:i.truncated?`File too large to preview.`:`Binary file preview is not available.`}),(0,z.jsxs)(`div`,{className:`mt-3 flex gap-2`,children:[(0,z.jsx)(P,{variant:`secondary`,children:i.mediaType}),(0,z.jsx)(P,{variant:`outline`,children:El(i.size)})]})]});let d=i.content??``,f=Ol(i.path,i.mediaType),p=!f&&pl(i.path,i.mediaType,void 0,d),m=f||p,g=f?`markdown`:p?`code`:null;return(0,z.jsxs)(`div`,{className:`h-full overflow-auto bg-muted/20`,children:[(0,z.jsxs)(`div`,{className:`sticky top-0 z-10 flex items-center gap-2 border-b border-border bg-background px-3 py-2 text-xs`,children:[(0,z.jsx)(h,{className:`h-3.5 w-3.5 text-muted-foreground`}),(0,z.jsx)(`span`,{className:`min-w-0 flex-1 truncate font-mono`,children:i.path}),(0,z.jsx)(kn,{value:i.path,label:`Copy path`,copiedLabel:`Copied path`,size:`icon`,variant:`ghost`,className:`h-7 w-7 shrink-0`}),i.truncated&&(0,z.jsx)(P,{variant:`secondary`,className:`text-[10px]`,children:`truncated`}),(0,z.jsx)(P,{variant:`outline`,className:`text-[10px]`,children:El(i.size)}),m&&(0,z.jsxs)(`div`,{className:`flex shrink-0 rounded-md border border-border bg-muted/40 p-0.5`,children:[(0,z.jsx)(`button`,{type:`button`,className:`rounded px-2 py-1 text-[10px] font-medium ${c===`raw`?`bg-background text-foreground shadow-sm`:`text-muted-foreground hover:text-foreground`}`,onClick:()=>u(`raw`,g),children:`Raw`}),(0,z.jsx)(`button`,{type:`button`,className:`rounded px-2 py-1 text-[10px] font-medium ${c===`rendered`?`bg-background text-foreground shadow-sm`:`text-muted-foreground hover:text-foreground`}`,onClick:()=>u(`rendered`,g),children:f?`Rendered`:`Highlighted`})]})]}),c===`rendered`&&f&&(0,z.jsx)(gl,{content:d,path:i.path}),c===`rendered`&&p&&(0,z.jsx)(ml,{content:d,path:i.path,mediaType:i.mediaType}),c===`raw`&&(0,z.jsx)(Il,{content:d,line:n,lineRef:s})]})}function zl({overlay:e=!1}){let t=A(e=>e.apiCall),n=A(e=>e.orchestrators),r=A(e=>e.fileOrchestratorId),i=A(e=>e.filePath),a=A(e=>e.fileSelectedPath),o=A(e=>e.fileSelectedLine),s=A(e=>e.set),c=A(e=>e.closeFileOverlay),l=A(e=>e.openOrchestratorSpawnAt),[u,d]=(0,R.useState)(null),[f,m]=(0,R.useState)(i),[g,_]=(0,R.useState)(!1),[v,y]=(0,R.useState)(``),[b,x]=(0,R.useState)(``),[S,C]=(0,R.useState)(xl),ee=(0,R.useMemo)(()=>n.filter(e=>e.status===`online`),[n]),w=n.find(e=>e.id===r)||ee[0];(0,R.useEffect)(()=>{if(!w)return;let e={};r||(e.fileOrchestratorId=w.id),i||(e.filePath=w.baseDir),Object.keys(e).length&&s(e)},[r,i,w,s]),(0,R.useEffect)(()=>m(i),[i]);async function te(e=i){if(!(!w||!e)){_(!0),y(``);try{let n=await t(`GET`,wl(w.id,e,S));d(n),s({filePath:n.path}),m(n.path),x(``)}catch(e){y(Ot(e))}finally{_(!1)}}}(0,R.useEffect)(()=>{te(i)},[w?.id,i,S]);function ie(e){C(e),Sl(e)}function ae(e){s({fileOrchestratorId:e,filePath:n.find(t=>t.id===e)?.baseDir||``,fileSelectedPath:``,fileSelectedLine:0})}function se(e){x(``),e.type===`directory`?s({filePath:e.path,fileSelectedPath:``,fileSelectedLine:0}):s({fileSelectedPath:e.path,fileSelectedLine:0})}function T(){if(!w)return;let t=f.trim()||i||w.baseDir;e&&c(),l({orchestratorId:w.id,cwd:t})}let E=u?Nl(u.path,u.baseDir):[],ce=v||b;return(0,z.jsxs)(`div`,{className:e?`flex h-full flex-col`:`flex h-[calc(100dvh-5rem)] flex-col gap-3 md:gap-4`,children:[(0,z.jsxs)(`div`,{className:`flex flex-wrap items-center gap-2 ${a?`hidden md:flex`:``}`,children:[(0,z.jsxs)(`div`,{className:`flex items-center gap-2 text-lg font-semibold`,children:[(0,z.jsx)(Ie,{className:`h-5 w-5 text-primary`}),`Files`]}),(0,z.jsxs)(`select`,{value:w?.id||``,onChange:e=>ae(e.target.value),className:`h-9 rounded-md border border-input bg-background px-3 text-sm`,children:[ee.length===0&&(0,z.jsx)(`option`,{value:``,children:`No online orchestrators`}),ee.map(e=>(0,z.jsx)(`option`,{value:e.id,children:e.hostname||e.id},e.id))]}),e&&(0,z.jsx)(F,{size:`icon`,variant:`ghost`,className:`ml-auto h-8 w-8`,onClick:c,title:`Close`,children:(0,z.jsx)(Me,{className:`h-4 w-4`})})]}),(0,z.jsxs)(`div`,{className:`flex flex-wrap items-center gap-2 ${a?`hidden md:flex`:``}`,children:[(0,z.jsx)(I,{value:f,onChange:e=>m(e.target.value),onKeyDown:e=>{e.key===`Enter`&&s({filePath:f,fileSelectedPath:``,fileSelectedLine:0})},className:`min-w-0 flex-1 basis-full font-mono text-xs sm:basis-auto`,placeholder:w?.baseDir||`Path`}),(0,z.jsxs)(F,{size:`sm`,variant:`outline`,className:`gap-1`,onClick:()=>te(f),disabled:g||!w,children:[g?(0,z.jsx)(Re,{className:`h-3.5 w-3.5 animate-spin`}):(0,z.jsx)(re,{className:`h-3.5 w-3.5`}),`Open`]}),(0,z.jsxs)(F,{size:`sm`,className:`gap-1`,onClick:T,disabled:!w,children:[(0,z.jsx)(oe,{className:`h-3.5 w-3.5`}),(0,z.jsx)(`span`,{className:`sm:hidden`,children:`Spawn`}),(0,z.jsx)(`span`,{className:`hidden sm:inline`,children:`Spawn from here`})]}),(0,z.jsxs)(`label`,{className:`flex items-center gap-1.5 text-xs text-muted-foreground`,title:`Show git status colors`,children:[(0,z.jsx)(p,{className:`h-3.5 w-3.5`}),(0,z.jsx)(`span`,{className:`hidden sm:inline`,children:`Git`}),(0,z.jsx)(Hc,{checked:S,onCheckedChange:ie})]})]}),E.length>0&&(0,z.jsx)(`div`,{className:`flex flex-wrap items-center gap-1 text-xs text-muted-foreground ${a?`hidden md:flex`:``}`,children:E.map((e,t)=>(0,z.jsxs)(`button`,{type:`button`,className:`rounded px-1.5 py-0.5 font-mono hover:bg-accent hover:text-foreground`,onClick:()=>s({filePath:e.path,fileSelectedPath:``,fileSelectedLine:0}),children:[e.label,t<E.length-1&&e.label!==`/`?` /`:``]},`${e.path}-${t}`))}),ce&&(0,z.jsx)(`div`,{className:`rounded-md border border-destructive/40 bg-destructive/10 px-3 py-2 text-sm text-destructive`,children:ce}),(0,z.jsxs)(`div`,{className:`grid min-h-0 flex-1 overflow-hidden md:rounded-md md:border md:border-border md:grid-cols-[22rem_minmax(0,1fr)] ${a?``:`rounded-md border border-border`}`,children:[(0,z.jsxs)(`div`,{className:`min-h-0 overflow-auto border-b border-border bg-card md:border-b-0 md:border-r ${a?`hidden md:block`:``}`,children:[u?.parent&&(0,z.jsxs)(`button`,{type:`button`,className:`flex w-full items-center gap-2 px-3 py-2 text-left text-sm hover:bg-accent`,onClick:()=>s({filePath:u.parent,fileSelectedPath:``,fileSelectedLine:0}),children:[(0,z.jsx)(ge,{className:`h-4 w-4 text-muted-foreground`}),(0,z.jsx)(`span`,{children:`Parent directory`})]}),u?.entries.map(e=>{let t=a===e.path||i===e.path,n=e.type===`directory`?ne:h,r=Cl(e.gitStatus);return(0,z.jsxs)(`button`,{type:`button`,className:`flex w-full items-center gap-2 px-3 py-2 text-left text-sm hover:bg-accent ${t?`bg-accent`:``}`,onClick:()=>se(e),children:[(0,z.jsx)(n,{className:`h-4 w-4 shrink-0 ${e.type===`directory`?`text-blue-400`:`text-muted-foreground`}`}),(0,z.jsx)(`span`,{className:`min-w-0 flex-1 truncate font-mono text-xs ${r?.text??``}`,children:e.name}),e.symlink&&(0,z.jsx)(Te,{className:`h-3 w-3 shrink-0 text-muted-foreground/60`}),(0,z.jsx)(Tl,{status:e.gitStatus}),e.type!==`directory`&&(0,z.jsx)(`span`,{className:`text-[10px] text-muted-foreground`,children:El(e.size)})]},e.path)}),!g&&u&&u.entries.length===0&&(0,z.jsx)(`div`,{className:`px-3 py-8 text-center text-sm text-muted-foreground`,children:`No files`})]}),(0,z.jsxs)(`div`,{className:`flex min-h-0 flex-col overflow-hidden ${a?``:`hidden md:flex`}`,children:[(0,z.jsxs)(`button`,{type:`button`,className:`flex items-center gap-1.5 border-b border-border px-3 py-2 text-xs text-muted-foreground hover:text-foreground md:hidden`,onClick:()=>s({fileSelectedPath:``,fileSelectedLine:0}),children:[(0,z.jsx)(ge,{className:`h-3.5 w-3.5`}),`Back to files`]}),(0,z.jsx)(`div`,{className:`min-h-0 flex-1`,children:(0,z.jsx)(Rl,{orchestratorId:w?.id||``,selectedPath:a,line:o,onReadError:x})})]})]})]})}function G(){return(0,z.jsx)(zl,{})}function Bl(){return A(e=>e.fileOverlayOpen)?(0,z.jsx)(`div`,{className:`fixed inset-0 z-50 bg-background/80 backdrop-blur-sm`,children:(0,z.jsx)(`div`,{className:`absolute inset-4 overflow-hidden rounded-md border border-border bg-background p-4 shadow-xl`,children:(0,z.jsx)(zl,{overlay:!0})})}):null}function K(e,t){let n=R.useRef(!1),r=R.useRef(t);r.current=t,R.useEffect(()=>{if(!e||!r.current)return;window.history.pushState({sheetGuard:!0},``),n.current=!0;function t(){n.current&&(n.current=!1,r.current?.(!1))}return window.addEventListener(`popstate`,t),()=>{window.removeEventListener(`popstate`,t),n.current&&(n.current=!1,window.history.back())}},[e])}function q({...e}){return K(e.open,e.onOpenChange),(0,z.jsx)(Tr,{"data-slot":`sheet`,...e})}function J({...e}){return(0,z.jsx)(Er,{"data-slot":`sheet-portal`,...e})}function Vl({className:e,...t}){return(0,z.jsx)(Dr,{"data-slot":`sheet-overlay`,className:_(`fixed inset-0 z-50 bg-black/10 duration-100 supports-backdrop-filter:backdrop-blur-xs data-open:animate-in data-open:fade-in-0 data-closed:animate-out data-closed:fade-out-0`,e),...t})}function Hl({className:e,children:t,side:n=`right`,showCloseButton:r=!0,...i}){return(0,z.jsxs)(J,{children:[(0,z.jsx)(Vl,{}),(0,z.jsxs)(Or,{"data-slot":`sheet-content`,"data-side":n,className:_(`fixed z-50 flex flex-col bg-popover bg-clip-padding text-sm text-popover-foreground shadow-lg transition duration-200 ease-in-out overflow-hidden max-w-[100dvw] data-[side=bottom]:inset-x-0 data-[side=bottom]:bottom-0 data-[side=bottom]:h-auto data-[side=bottom]:border-t data-[side=left]:inset-y-0 data-[side=left]:left-0 data-[side=left]:h-full data-[side=left]:w-full data-[side=left]:border-r data-[side=right]:inset-y-0 data-[side=right]:right-0 data-[side=right]:h-full data-[side=right]:w-full data-[side=right]:border-l data-[side=top]:inset-x-0 data-[side=top]:top-0 data-[side=top]:h-auto data-[side=top]:border-b data-open:animate-in data-open:fade-in-0 data-[side=bottom]:data-open:slide-in-from-bottom-10 data-[side=left]:data-open:slide-in-from-left-10 data-[side=right]:data-open:slide-in-from-right-10 data-[side=top]:data-open:slide-in-from-top-10 data-closed:animate-out data-closed:fade-out-0 data-[side=bottom]:data-closed:slide-out-to-bottom-10 data-[side=left]:data-closed:slide-out-to-left-10 data-[side=right]:data-closed:slide-out-to-right-10 data-[side=top]:data-closed:slide-out-to-top-10`,e),...i,children:[t,r&&(0,z.jsx)(jr,{"data-slot":`sheet-close`,asChild:!0,children:(0,z.jsxs)(F,{variant:`ghost`,className:`absolute top-3 right-3`,size:`icon-sm`,children:[(0,z.jsx)(Me,{}),(0,z.jsx)(`span`,{className:`sr-only`,children:`Close`})]})})]})]})}function Ul({className:e,...t}){return(0,z.jsx)(`div`,{"data-slot":`sheet-header`,className:_(`flex flex-col gap-0.5 p-4`,e),...t})}function Wl({className:e,...t}){return(0,z.jsx)(kr,{"data-slot":`sheet-title`,className:_(`font-heading text-base font-medium text-foreground`,e),...t})}function Gl({className:e,orientation:t=`horizontal`,...n}){return(0,z.jsx)(Vs,{"data-slot":`tabs`,"data-orientation":t,className:_(`group/tabs flex gap-2 data-horizontal:flex-col`,e),...n})}var Kl=rn(`group/tabs-list inline-flex w-fit items-center justify-center rounded-lg p-[3px] text-muted-foreground group-data-horizontal/tabs:h-8 group-data-vertical/tabs:h-fit group-data-vertical/tabs:flex-col data-[variant=line]:rounded-none`,{variants:{variant:{default:`bg-muted`,line:`gap-1 bg-transparent`}},defaultVariants:{variant:`default`}});function ql({className:e,variant:t=`default`,...n}){return(0,z.jsx)(Hs,{"data-slot":`tabs-list`,"data-variant":t,className:_(Kl({variant:t}),e),...n})}function Jl({className:e,...t}){return(0,z.jsx)(Us,{"data-slot":`tabs-trigger`,className:_(`relative inline-flex h-[calc(100%-1px)] flex-1 items-center justify-center gap-1.5 rounded-md border border-transparent px-1.5 py-0.5 text-sm font-medium whitespace-nowrap text-foreground/60 transition-all group-data-vertical/tabs:w-full group-data-vertical/tabs:justify-start hover:text-foreground focus-visible:border-ring focus-visible:ring-[3px] focus-visible:ring-ring/50 focus-visible:outline-1 focus-visible:outline-ring disabled:pointer-events-none disabled:opacity-50 has-data-[icon=inline-end]:pr-1 has-data-[icon=inline-start]:pl-1 dark:text-muted-foreground dark:hover:text-foreground group-data-[variant=default]/tabs-list:data-active:shadow-sm group-data-[variant=line]/tabs-list:data-active:shadow-none [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4`,`group-data-[variant=line]/tabs-list:bg-transparent group-data-[variant=line]/tabs-list:data-active:bg-transparent dark:group-data-[variant=line]/tabs-list:data-active:border-transparent dark:group-data-[variant=line]/tabs-list:data-active:bg-transparent`,`data-active:bg-background data-active:text-foreground dark:data-active:border-input dark:data-active:bg-input/30 dark:data-active:text-foreground`,`after:absolute after:bg-foreground after:opacity-0 after:transition-opacity group-data-horizontal/tabs:after:inset-x-0 group-data-horizontal/tabs:after:bottom-[-5px] group-data-horizontal/tabs:after:h-0.5 group-data-vertical/tabs:after:inset-y-0 group-data-vertical/tabs:after:-right-1 group-data-vertical/tabs:after:w-0.5 group-data-[variant=line]/tabs-list:data-active:after:opacity-100`,e),...t})}function Yl({className:e,...t}){return(0,z.jsx)(Ws,{"data-slot":`tabs-content`,className:_(`flex-1 text-sm outline-none`,e),...t})}function Xl({agent:e,now:t,className:n}){return(0,z.jsx)(`span`,{className:_(`inline-block w-2.5 h-2.5 rounded-full shrink-0`,_t(e,t),n)})}function Zl({className:e}){return(0,z.jsx)(`svg`,{xmlns:`http://www.w3.org/2000/svg`,viewBox:`0 0 16 16`,fill:`currentColor`,"aria-hidden":`true`,className:e,children:(0,z.jsx)(`path`,{d:`m3.127 10.604 3.135-1.76.053-.153-.053-.085H6.11l-.525-.032-1.791-.048-1.554-.065-1.505-.08-.38-.081L0 7.832l.036-.234.32-.214.455.04 1.009.069 1.513.105 1.097.064 1.626.17h.259l.036-.105-.089-.065-.068-.064-1.566-1.062-1.695-1.121-.887-.646-.48-.327-.243-.306-.104-.67.435-.48.585.04.15.04.593.456 1.267.981 1.654 1.218.242.202.097-.068.012-.049-.109-.181-.9-1.626-.96-1.655-.428-.686-.113-.411a2 2 0 0 1-.068-.484l.496-.674L4.446 0l.662.089.279.242.411.94.666 1.48 1.033 2.014.302.597.162.553.06.17h.105v-.097l.085-1.134.157-1.392.154-1.792.052-.504.25-.605.497-.327.387.186.319.456-.045.294-.19 1.23-.37 1.93-.243 1.29h.142l.161-.16.654-.868 1.097-1.372.484-.545.565-.601.363-.287h.686l.505.751-.226.775-.707.895-.585.759-.839 1.13-.524.904.048.072.125-.012 1.897-.403 1.024-.186 1.223-.21.553.258.06.263-.218.536-1.307.323-1.533.307-2.284.54-.028.02.032.04 1.029.098.44.024h1.077l2.005.15.525.346.315.424-.053.323-.807.411-3.631-.863-.872-.218h-.12v.073l.726.71 1.331 1.202 1.667 1.55.084.383-.214.302-.226-.032-1.464-1.101-.565-.497-1.28-1.077h-.084v.113l.295.432 1.557 2.34.08.718-.112.234-.404.141-.444-.08-.911-1.28-.94-1.44-.759-1.291-.093.053-.448 4.821-.21.246-.484.186-.403-.307-.214-.496.214-.98.258-1.28.21-1.016.19-1.263.112-.42-.008-.028-.092.012-.953 1.307-1.448 1.957-1.146 1.227-.274.109-.477-.247.045-.44.266-.39 1.586-2.018.956-1.25.617-.723-.004-.105h-.036l-4.212 2.736-.75.096-.324-.302.04-.496.154-.162 1.267-.871z`})})}function Ql({className:e}){return(0,z.jsx)(`svg`,{xmlns:`http://www.w3.org/2000/svg`,viewBox:`0 0 24 24`,fill:`currentColor`,"aria-hidden":`true`,className:e,children:(0,z.jsx)(`path`,{d:`M22.282 9.821a5.985 5.985 0 0 0-.516-4.91 6.046 6.046 0 0 0-6.51-2.9A6.065 6.065 0 0 0 4.981 4.18a5.985 5.985 0 0 0-3.998 2.9 6.046 6.046 0 0 0 .743 7.097 5.98 5.98 0 0 0 .51 4.911 6.051 6.051 0 0 0 6.515 2.9A5.985 5.985 0 0 0 13.26 24a6.056 6.056 0 0 0 5.772-4.206 5.99 5.99 0 0 0 3.997-2.9 6.056 6.056 0 0 0-.747-7.073zM13.26 22.43a4.476 4.476 0 0 1-2.876-1.04l.141-.081 4.779-2.758a.795.795 0 0 0 .392-.681v-6.737l2.02 1.168a.071.071 0 0 1 .038.052v5.583a4.504 4.504 0 0 1-4.494 4.494zM3.6 18.304a4.47 4.47 0 0 1-.535-3.014l.142.085 4.783 2.759a.771.771 0 0 0 .78 0l5.843-3.369v2.332a.08.08 0 0 1-.033.062L9.74 19.95a4.5 4.5 0 0 1-6.14-1.646zM2.34 7.896a4.485 4.485 0 0 1 2.366-1.973V11.6a.766.766 0 0 0 .388.676l5.815 3.355-2.02 1.168a.076.076 0 0 1-.071 0l-4.83-2.786A4.504 4.504 0 0 1 2.34 7.872zm16.597 3.855-5.833-3.387L15.119 7.2a.076.076 0 0 1 .071 0l4.83 2.791a4.494 4.494 0 0 1-.676 8.105v-5.678a.79.79 0 0 0-.407-.667zm2.01-3.023-.141-.085-4.774-2.782a.776.776 0 0 0-.785 0L9.409 9.23V6.897a.066.066 0 0 1 .028-.061l4.83-2.787a4.5 4.5 0 0 1 6.68 4.66zm-12.64 4.135-2.02-1.164a.08.08 0 0 1-.038-.057V6.075a4.5 4.5 0 0 1 7.375-3.453l-.142.08L8.704 5.46a.795.795 0 0 0-.393.681zm1.097-2.365 2.602-1.5 2.607 1.5v2.999l-2.597 1.5-2.607-1.5z`})})}var $l={claude:Zl,anthropic:Zl,codex:Ql,openai:Ql},eu={claude:`text-orange-400`,anthropic:`text-orange-400`};function tu({provider:e,className:t}){let n=e.toLowerCase(),r=$l[n];return r?(0,z.jsx)(`span`,{role:`img`,"aria-label":e,title:e,className:`inline-flex shrink-0`,children:(0,z.jsx)(r,{className:_(eu[n],t)})}):(0,z.jsx)(`span`,{className:`capitalize`,children:e})}var nu={codex:`text-blue-400 bg-blue-500/10 border-blue-500/25`,claude:`text-orange-400 bg-orange-500/10 border-orange-500/25`,user:`text-emerald-400 bg-emerald-500/10 border-emerald-500/25`,system:`text-purple-400 bg-purple-500/10 border-purple-500/25`,channel:`text-blue-400 bg-blue-500/10 border-blue-500/25`,agent:`text-zinc-400 bg-zinc-500/10 border-zinc-500/25`},ru={codex:Ee,claude:Zl,user:Qe,system:E,channel:_e,agent:d};function iu({agent:e,className:t}){let n=Vt(e),r=ru[n]||d;return(0,z.jsx)(`span`,{className:_(`inline-flex items-center justify-center w-5 h-5 rounded-md border text-sm`,nu[n]||nu.agent,t),children:(0,z.jsx)(r,{className:`w-3.5 h-3.5`})})}function au({agent:e,compact:t=!1}){let n=hu(e);return n.length===0?null:(0,z.jsx)(`div`,{className:`flex flex-wrap gap-1`,children:n.slice(0,t?4:void 0).map(e=>(0,z.jsx)(P,{variant:`outline`,className:`text-[9px] px-1 py-0 h-4`,children:e},e))})}function ou({agent:e,compact:t=!1,className:n=``}){let r=cu(e);return(0,z.jsx)(`div`,{className:`flex flex-wrap items-center gap-1 ${n}`,children:r.map(e=>{let n=e.Icon;return(0,z.jsxs)(`span`,{title:e.title,className:`inline-flex h-5 min-w-5 items-center justify-center gap-1 rounded-md border px-1.5 text-[10px] leading-none ${e.className}`,children:[(0,z.jsx)(n,{className:`h-3 w-3 shrink-0`}),!t&&(0,z.jsx)(`span`,{children:e.label})]},e.key)})})}function su({agent:e}){let t=e.context;if(!t)return null;let n=vu(t);if(n===null)return(0,z.jsxs)(`div`,{className:`space-y-1`,title:yu(t),children:[(0,z.jsxs)(`div`,{className:`flex justify-between text-[10px] text-muted-foreground`,children:[(0,z.jsx)(`span`,{children:`collecting`}),(0,z.jsx)(`span`,{children:`--`})]}),(0,z.jsx)(`div`,{className:`h-1.5 rounded-full bg-muted overflow-hidden`,children:(0,z.jsx)(`div`,{className:`h-full w-0 bg-muted-foreground/30`})})]});let r=Math.round(n*100),i=r>=80?`bg-red-500`:r>=60?`bg-yellow-500`:`bg-emerald-500`;return(0,z.jsxs)(`div`,{className:`space-y-1`,title:yu(t),children:[(0,z.jsxs)(`div`,{className:`flex justify-between text-[10px] text-muted-foreground`,children:[(0,z.jsx)(`span`,{children:t.lifecycleState}),(0,z.jsxs)(`span`,{children:[r,`%`]})]}),(0,z.jsx)(`div`,{className:`h-1.5 rounded-full bg-muted overflow-hidden`,children:(0,z.jsx)(`div`,{className:`h-full ${i}`,style:{width:`${Math.max(0,Math.min(100,r))}%`}})})]})}function cu(e){let t=lu(e),n=uu(e),r=du(e);return[{key:`origin`,label:t?`Relay`:`External`,title:t?`Agent Relay spawned this agent`:`Externally started agent registered with Agent Relay`,Icon:t?w:T,className:t?`border-sky-500/30 bg-sky-500/10 text-sky-300`:`border-zinc-500/30 bg-zinc-500/10 text-zinc-300`},n,r]}function lu(e){return typeof e.meta?.spawnRequestId==`string`||typeof e.meta?.policyName==`string`||typeof e.meta?.automationRunId==`string`}function uu(e){let t=String(e.providerCapabilities?.session?.approvalMode||e.meta?.approvalMode||`guarded`).toLowerCase();return t===`open`?{key:`approval`,label:`Open`,title:`Approval mode: open`,Icon:xe,className:`border-emerald-500/30 bg-emerald-500/10 text-emerald-300`}:t===`read-only`?{key:`approval`,label:`Read-only`,title:`Approval mode: read-only`,Icon:s,className:`border-blue-500/30 bg-blue-500/10 text-blue-300`}:{key:`approval`,label:`Guarded`,title:`Approval mode: guarded`,Icon:Xe,className:`border-amber-500/30 bg-amber-500/10 text-amber-300`}}function du(e){let t=fu(e.meta?.workspace),n=Bt(t.requestedMode)||Bt(e.meta?.workspaceMode),r=Bt(t.mode),i=n&&n!==`inherit`?n:r&&n!==`inherit`?r:`default`;return i===`isolated`?{key:`workspace`,label:`Isolated`,title:`Workspace: isolated worktree`,Icon:p,iconColor:`text-violet-300`,className:`border-violet-500/30 bg-violet-500/10 text-violet-300`}:i===`shared`?{key:`workspace`,label:`Shared`,title:`Workspace: shared repo checkout`,Icon:c,iconColor:`text-cyan-300`,className:`border-cyan-500/30 bg-cyan-500/10 text-cyan-300`}:{key:`workspace`,label:`Default`,title:r?`Workspace: default/inherit, resolved to ${r}`:`Workspace: default/inherit`,Icon:Oe,iconColor:`text-zinc-400`,className:`border-zinc-500/30 bg-zinc-500/10 text-zinc-300`}}function fu(e){return e&&typeof e==`object`&&!Array.isArray(e)?e:{}}function pu(e){let t=fu(e.meta?.workspace),n=Bt(t.repoRoot)||Bt(t.sourceCwd)||Bt(e.meta?.cwd);return n?Ct(n,2):``}function mu(e){return!!(e.context||e.providerCapabilities?.context)}function hu(e){let t=e.providerCapabilities,n=e.context,r=[];t?.lifecycle.managed?r.push(`managed`):t&&r.push(`bridge`),t?.session?.approvalMode===`read-only`?r.push(`read-only`):t?.session?.fileWrite&&r.push(`write`),t?.session?.shell&&r.push(`shell`),(t?.model?.alias||t?.model?.id)&&r.push(String(t.model.alias||t.model.id));let i=Gt(e).length;if(i&&r.push(i===1?`1 subagent`:`${i} subagents`),n){let e=vu(n);r.push(e===null?`ctx collecting`:`${Math.round(e*100)}% ctx`)}return r}function gu({context:e,expected:t=!!e,size:n=26,className:r}){let i=vu(e);if(i===null&&!t)return null;let a=n>=24?3:2.5,o=n/2,s=o-a,c=2*Math.PI*s,l=i===null?c:c*(1-i),u=i===null,d=u?`text-muted-foreground`:i>.8?`text-red-400`:i>.5?`text-yellow-400`:`text-emerald-400`,f=u?null:Math.round(i*100);return(0,z.jsxs)(`div`,{className:`relative shrink-0 ${u?`opacity-70`:``} ${r??``}`,style:{width:n,height:n},title:yu(e),children:[(0,z.jsxs)(`svg`,{width:n,height:n,viewBox:`0 0 ${n} ${n}`,className:`rotate-[-90deg]`,children:[(0,z.jsx)(`circle`,{cx:o,cy:o,r:s,fill:`none`,strokeWidth:a,className:`stroke-muted-foreground/20`}),(0,z.jsx)(`circle`,{cx:o,cy:o,r:s,fill:`none`,strokeWidth:a,strokeDasharray:c,strokeDashoffset:l,strokeLinecap:`round`,className:`${d} stroke-current transition-all duration-500`})]}),(0,z.jsx)(`span`,{className:`absolute inset-0 flex items-center justify-center font-semibold leading-none ${u?`text-muted-foreground`:d}`,style:{fontSize:n>=24?8:7},children:u?`?`:f})]})}function _u(e){let t=e.context;return!t?.tokensUsed&&!t?.tokensMax?null:t.tokensUsed&&t.tokensMax?`${bu(t.tokensUsed)} / ${bu(t.tokensMax)}`:t.tokensUsed?bu(t.tokensUsed):t.tokensMax?bu(t.tokensMax):null}function vu(e){return!e||typeof e.utilization!=`number`||!Number.isFinite(e.utilization)?null:Math.min(1,Math.max(0,e.utilization))}function yu(e){if(!e)return`Context: collecting; provider has not reported usage yet`;let t=vu(e),n=`${e.source}/${e.confidence}`,r=Number.isFinite(e.lastUpdatedAt)?new Date(e.lastUpdatedAt).toLocaleString():`unknown`;return t===null?`Context: unknown; ${n}; updated ${r}`:`Context: ${Math.round(t*100)}%; ${n}; updated ${r}`}function bu(e){return e>=1e6?`${(e/1e6).toFixed(e%1e6==0?0:1)}M`:e>=1e3?`${Math.round(e/1e3)}K`:String(e)}var xu=(0,R.lazy)(()=>L(()=>import(`./terminal-viewer-impl-BJilWDSR.js`).then(e=>({default:e.TerminalDialog})),__vite__mapDeps([7,1,6,8,9,10,11,12,13]),import.meta.url));function Su(e){return e.open?(0,z.jsx)(R.Suspense,{fallback:null,children:(0,z.jsx)(xu,{...e})}):null}function Cu({orchestratorId:e,session:t,lines:n=200}){let r=A(e=>e.apiCall),[i,a]=(0,R.useState)([]),[s,c]=(0,R.useState)(``),[u,d]=(0,R.useState)(!1),[f,p]=(0,R.useState)(`provider`),[m,h]=(0,R.useState)(null);async function g(){if(!u)try{a((await r(`GET`,`/orchestrators/${encodeURIComponent(e)}/logs/${encodeURIComponent(t)}?lines=${n}${f===`mirror`?`&stream=mirror`:``}`)).lines||[]),h(null)}catch(e){h(Ot(e))}}(0,R.useEffect)(()=>{g();let e=setInterval(()=>void g(),1500);return()=>clearInterval(e)},[e,t,u,f]);let v=s?i.filter(e=>e.toLowerCase().includes(s.toLowerCase())):i;return(0,z.jsxs)(`div`,{className:`space-y-2`,children:[(0,z.jsxs)(`div`,{className:`flex flex-wrap items-center gap-2`,children:[(0,z.jsxs)(`div`,{className:`relative min-w-48 flex-1`,children:[(0,z.jsx)(te,{className:`absolute left-2 top-2.5 h-4 w-4 text-muted-foreground`}),(0,z.jsx)(I,{className:`pl-8`,value:s,onChange:e=>c(e.target.value),placeholder:`Search logs`})]}),(0,z.jsxs)(`div`,{className:`flex rounded-md border border-border overflow-hidden`,children:[(0,z.jsxs)(`button`,{type:`button`,onClick:()=>p(`provider`),title:`Provider output`,className:_(`flex items-center gap-1 px-2 py-1.5 text-xs`,f===`provider`?`bg-accent text-accent-foreground`:`text-muted-foreground hover:bg-accent/50`),children:[(0,z.jsx)(Ee,{className:`h-3.5 w-3.5`}),` Output`]}),(0,z.jsxs)(`button`,{type:`button`,onClick:()=>p(`mirror`),title:`Session-mirror diagnostics (clean)`,className:_(`flex items-center gap-1 px-2 py-1.5 text-xs border-l border-border`,f===`mirror`?`bg-accent text-accent-foreground`:`text-muted-foreground hover:bg-accent/50`),children:[(0,z.jsx)(l,{className:`h-3.5 w-3.5`}),` Mirror`]})]}),(0,z.jsx)(F,{type:`button`,variant:`outline`,size:`icon`,onClick:()=>d(e=>!e),title:u?`Resume logs`:`Pause logs`,children:u?(0,z.jsx)(o,{className:`h-4 w-4`}):(0,z.jsx)(fe,{className:`h-4 w-4`})}),(0,z.jsx)(F,{type:`button`,variant:`outline`,size:`icon`,onClick:()=>Ht(`${t}.log`,i.join(`
16
16
  `),`text/plain`),title:`Download logs`,children:(0,z.jsx)(C,{className:`h-4 w-4`})})]}),m&&(0,z.jsx)(`div`,{className:`text-sm text-destructive`,children:m}),(0,z.jsx)(`pre`,{className:`max-h-96 overflow-auto rounded-md border border-border bg-zinc-950 p-3 text-xs leading-5 text-zinc-100`,children:v.join(`
17
17
  `)||`No log output`})]})}function wu(e,t){let n=t?.meta?.busyHealth;if(!t||t.status!==`busy`||!Kt(n))return null;let r=typeof n.thresholdMs==`number`&&n.thresholdMs>0?n.thresholdMs:0,i=typeof n.activeWorkStartedAt==`number`?n.activeWorkStartedAt:0;if(!r||!i)return null;let a=typeof n.lastProviderEventAt==`number`?n.lastProviderEventAt:void 0,o=Math.max(0,e-i),s=Math.max(0,e-(a??i));return o<r||s<r?null:{kind:typeof n.kind==`string`?n.kind:`provider-turn`,thresholdMs:r,activeWorkId:typeof n.activeWorkId==`string`?n.activeWorkId:void 0,activeWorkKind:typeof n.activeWorkKind==`string`?n.activeWorkKind:void 0,activeWorkLabel:typeof n.activeWorkLabel==`string`?n.activeWorkLabel:void 0,activeWorkStartedAt:i,activeWorkAgeMs:o,lastProviderEventAt:a,lastProviderEventAgeMs:a?Math.max(0,e-a):void 0,staleForMs:s}}var Tu={running:`bg-emerald-500/20 text-emerald-400`,starting:`bg-blue-500/20 text-blue-400`,stopping:`bg-yellow-500/20 text-yellow-400`,stopped:`bg-zinc-500/20 text-zinc-400`,backoff:`bg-red-500/20 text-red-400`};function Eu({agent:e,orchestrators:t}){let n=ut(),[r,i]=(0,R.useState)(null),[a,o]=(0,R.useState)([]),[s,c]=(0,R.useState)({spawn:!0,workspace:!0,runtime:!0,profile:!0,lifecycle:!0,activity:!1}),l=typeof e.meta?.policyName==`string`?e.meta.policyName:null,u=typeof e.meta?.profile==`string`?e.meta.profile:null,d=Kt(e.meta?.agentProfile)?e.meta.agentProfile:null,f=Ou(d?.projection)?d.projection:null,p=t.find(t=>t.managedAgents.some(t=>t.agentId===e.id)),m=p?.managedAgents.find(t=>t.agentId===e.id);(0,R.useEffect)(()=>{if(!l)return;let e=!1;return g(`GET`,`/spawn-policies/`+encodeURIComponent(l)+`/status`).then(t=>{e||i(t)}).catch(()=>{e||i(null)}),()=>{e=!0}},[l,e.lastSeen]),(0,R.useEffect)(()=>{let t=!1;return g(`GET`,`/activity?agentId=`+encodeURIComponent(e.id)+`&limit=20`).then(e=>{t||o(e)}).catch(()=>{t||o([])}),()=>{t=!0}},[e.id,e.lastSeen]);function h(e){c(t=>({...t,[e]:!t[e]}))}function _(){let t=r?.policy,n=r?.state,i=[`# Agent Diagnostics`,`Agent: ${e.id}`,`Status: ${e.status}`,`Provider: ${e.meta?.provider||`unknown`}`,`Machine: ${e.machine||`unknown`}`];if(l&&i.push(`Policy: ${l}`),u&&i.push(`Agent Profile: ${u}`),t&&(i.push(``,`## Spawn Config`),i.push(`Provider: ${t.provider}`),t.model&&i.push(`Model: ${t.model}`),t.effort&&i.push(`Effort: ${t.effort}`),i.push(`CWD: ${t.cwd}`),i.push(`Permission: ${t.permissionMode}`),i.push(`Mode: ${t.mode}`),t.rig&&i.push(`Rig: ${t.rig}`),t.tags.length&&i.push(`Tags: ${t.tags.join(`, `)}`),t.capabilities.length&&i.push(`Caps: ${t.capabilities.join(`, `)}`)),f){i.push(``,`## Agent Profile Projection`),i.push(`Profile: ${f.profileName}`),i.push(`Provider: ${f.provider}`),i.push(`Base: ${f.base}`),f.warnings.length&&i.push(`Warnings: ${f.warnings.length}`);for(let e of f.entries)i.push(`- ${e.capability}: requested=${e.requested} result=${e.result} detail=${e.detail}`)}if(m&&(i.push(``,`## Runtime`),m.pid&&i.push(`PID: ${m.pid}`),m.sessionName&&i.push(`Session: ${m.sessionName}`),m.supervisor&&i.push(`Supervisor: ${m.supervisor}`),m.systemdUnit&&i.push(`Systemd: ${m.systemdUnit}`),m.terminalSession&&i.push(`Terminal: ${m.terminalSession} (${m.terminalAvailable?`available`:`unavailable`})`),m.tmuxSession&&m.tmuxSession!==m.sessionName&&i.push(`Legacy tmux: ${m.tmuxSession}`),m.spawnRequestId&&i.push(`Spawn Request: ${m.spawnRequestId}`),m.startedAt&&i.push(`Started: ${new Date(m.startedAt).toISOString()}`),p&&i.push(`Orchestrator: ${p.hostname} (${p.id.slice(-8)})`)),m?.workspace&&(i.push(``,`## Workspace`),i.push(`Mode: ${m.workspace.mode}`),m.workspace.status&&i.push(`Status: ${m.workspace.status}`),m.workspace.worktreePath&&i.push(`Worktree: ${m.workspace.worktreePath}`),m.workspace.repoRoot&&i.push(`Repo: ${m.workspace.repoRoot}`),m.workspace.branch&&i.push(`Branch: ${m.workspace.branch}`),m.workspace.baseRef&&i.push(`Base: ${m.workspace.baseRef}`),m.workspace.baseSha&&i.push(`Base SHA: ${m.workspace.baseSha}`),m.workspace.stewardAgentId&&i.push(`Steward: ${m.workspace.stewardAgentId}`)),n&&(i.push(``,`## Lifecycle`),i.push(`Status: ${n.status}`),i.push(`Restarts: ${n.restartCount}`),i.push(`Consecutive failures: ${n.consecutiveFailures}`),n.lastSpawnAt&&i.push(`Last spawn: ${new Date(n.lastSpawnAt).toISOString()}`),n.lastStopAt&&i.push(`Last stop: ${new Date(n.lastStopAt).toISOString()}`),n.healthySince&&i.push(`Healthy since: ${new Date(n.healthySince).toISOString()}`),n.backoffUntil&&i.push(`Backoff until: ${new Date(n.backoffUntil).toISOString()}`),n.lastError&&i.push(`Last error: ${n.lastError}`)),a.length>0){i.push(``,`## Recent Activity`);for(let e of a.slice(0,10))i.push(`- [${new Date(typeof e.createdAt==`number`?e.createdAt:Date.parse(String(e.createdAt))).toISOString()}] ${e.title}${e.body?`: `+e.body.slice(0,100):``}`)}let o=e.meta?.package;o?.name&&o?.version&&(i.push(``,`## Versions`),i.push(`Runner: ${o.name}@${o.version}`));let s=e.meta?.contracts;if(s)for(let[e,t]of Object.entries(s))i.push(`Contract ${e}: ${t}`);return i.join(`
18
18
  `)}let v=r?.policy,y=r?.state;return(0,z.jsxs)(`div`,{className:`space-y-2`,children:[(0,z.jsxs)(`div`,{className:`flex items-center justify-between gap-2`,children:[(0,z.jsxs)(`h3`,{className:`text-sm font-medium flex items-center gap-1.5`,children:[(0,z.jsx)(ve,{className:`w-3.5 h-3.5 text-muted-foreground`}),`Diagnostics`]}),(0,z.jsx)(kn,{value:_,label:`Copy Bundle`,showText:!0,size:`sm`,variant:`outline`,className:`h-7 text-xs gap-1`,iconClassName:`w-3 h-3`})]}),v&&(0,z.jsx)(Du,{title:`Spawn Config`,expanded:!!s.spawn,onToggle:()=>h(`spawn`),children:(0,z.jsxs)(`div`,{className:`grid grid-cols-2 gap-x-3 gap-y-1 text-xs`,children:[(0,z.jsx)(Y,{label:`Provider`,value:v.provider}),v.model&&(0,z.jsx)(Y,{label:`Model`,value:v.model}),v.effort&&(0,z.jsx)(Y,{label:`Effort`,value:v.effort}),(0,z.jsx)(Y,{label:`Permission`,value:v.permissionMode}),(0,z.jsx)(Y,{label:`Mode`,value:v.mode}),v.rig&&(0,z.jsx)(Y,{label:`Rig`,value:v.rig}),(0,z.jsx)(Y,{label:`CWD`,value:v.cwd,className:`col-span-2`,mono:!0}),v.tags.length>0&&(0,z.jsxs)(`div`,{className:`col-span-2`,children:[(0,z.jsx)(`span`,{className:`text-muted-foreground`,children:`Tags`}),(0,z.jsx)(`div`,{className:`flex flex-wrap gap-1 mt-0.5`,children:v.tags.map(e=>(0,z.jsx)(P,{variant:`outline`,className:`text-[10px]`,children:e},e))})]}),v.capabilities.length>0&&(0,z.jsxs)(`div`,{className:`col-span-2`,children:[(0,z.jsx)(`span`,{className:`text-muted-foreground`,children:`Capabilities`}),(0,z.jsx)(`div`,{className:`flex flex-wrap gap-1 mt-0.5`,children:v.capabilities.map(e=>(0,z.jsx)(P,{variant:`secondary`,className:`text-[10px]`,children:e},e))})]}),v.providerArgs.length>0&&(0,z.jsx)(Y,{label:`Provider Args`,value:v.providerArgs.join(` `),className:`col-span-2`,mono:!0}),v.binding&&(0,z.jsx)(Y,{label:`Channel`,value:`${v.binding.type}:${v.binding.channelId}`,className:`col-span-2`})]})}),(u||f)&&(0,z.jsx)(Du,{title:`Agent Profile`,expanded:!!s.profile,onToggle:()=>h(`profile`),children:(0,z.jsxs)(`div`,{className:`space-y-2 text-xs`,children:[(0,z.jsxs)(`div`,{className:`grid grid-cols-2 gap-x-3 gap-y-1`,children:[u&&(0,z.jsx)(Y,{label:`Profile`,value:u}),f?.base&&(0,z.jsx)(Y,{label:`Base`,value:f.base}),f?.provider&&(0,z.jsx)(Y,{label:`Provider`,value:f.provider}),f&&(0,z.jsx)(Y,{label:`Unsupported`,value:String(f.unsupported.length)})]}),f?.warnings.length?(0,z.jsxs)(`div`,{className:`rounded border border-yellow-500/20 bg-yellow-500/5 px-2 py-1.5`,children:[(0,z.jsx)(`span`,{className:`text-muted-foreground`,children:`Projection warnings`}),(0,z.jsx)(`div`,{className:`mt-1 space-y-1`,children:f.warnings.slice(0,4).map(e=>(0,z.jsx)(`div`,{className:`break-words text-yellow-200/80`,children:e},e))})]}):null,f&&(0,z.jsx)(`div`,{className:`space-y-1`,children:f.entries.map(e=>(0,z.jsxs)(`div`,{className:`grid grid-cols-[1fr_auto] gap-2 rounded border border-border/60 px-2 py-1`,children:[(0,z.jsxs)(`div`,{className:`min-w-0`,children:[(0,z.jsx)(`div`,{className:`font-mono text-[11px]`,children:e.capability}),(0,z.jsx)(`div`,{className:`break-words text-muted-foreground`,children:e.detail})]}),(0,z.jsx)(P,{variant:e.result===`unsupported`?`destructive`:e.result===`partial`?`outline`:`secondary`,className:`h-5 text-[10px]`,children:e.result})]},e.capability))})]})}),m?.workspace&&(0,z.jsx)(Du,{title:`Workspace`,expanded:!!s.workspace,onToggle:()=>h(`workspace`),children:(0,z.jsxs)(`div`,{className:`grid grid-cols-2 gap-x-3 gap-y-1 text-xs`,children:[(0,z.jsx)(Y,{label:`Mode`,value:m.workspace.mode}),m.workspace.status&&(0,z.jsx)(Y,{label:`Status`,value:m.workspace.status}),m.workspace.worktreePath&&(0,z.jsx)(Y,{label:`Worktree`,value:m.workspace.worktreePath,className:`col-span-2`,mono:!0}),m.workspace.repoRoot&&(0,z.jsx)(Y,{label:`Repo`,value:m.workspace.repoRoot,className:`col-span-2`,mono:!0}),m.workspace.branch&&(0,z.jsx)(Y,{label:`Branch`,value:m.workspace.branch,className:`col-span-2`,mono:!0}),m.workspace.baseRef&&(0,z.jsx)(Y,{label:`Base`,value:m.workspace.baseRef}),m.workspace.baseSha&&(0,z.jsx)(Y,{label:`Base SHA`,value:m.workspace.baseSha.slice(0,12),mono:!0}),m.workspace.stewardAgentId&&(0,z.jsx)(Y,{label:`Steward`,value:m.workspace.stewardAgentId,className:`col-span-2`,mono:!0})]})}),m&&(0,z.jsx)(Du,{title:`Runtime`,expanded:!!s.runtime,onToggle:()=>h(`runtime`),children:(0,z.jsxs)(`div`,{className:`grid grid-cols-2 gap-x-3 gap-y-1 text-xs`,children:[m.pid&&(0,z.jsx)(Y,{label:`PID`,value:String(m.pid),mono:!0}),m.sessionName&&(0,z.jsx)(Y,{label:`Session`,value:m.sessionName,mono:!0}),m.supervisor&&(0,z.jsx)(Y,{label:`Supervisor`,value:m.supervisor}),m.systemdUnit&&(0,z.jsx)(Y,{label:`Systemd`,value:m.systemdUnit,mono:!0}),m.terminalSession&&(0,z.jsx)(Y,{label:`Terminal`,value:`${m.terminalSession} (${m.terminalAvailable?`available`:`unavailable`})`,mono:!0}),m.tmuxSession&&m.tmuxSession!==m.sessionName&&(0,z.jsx)(Y,{label:`Legacy tmux`,value:m.tmuxSession,mono:!0}),m.spawnRequestId&&(0,z.jsx)(Y,{label:`Spawn ID`,value:m.spawnRequestId.slice(0,12),mono:!0}),m.startedAt&&(0,z.jsx)(Y,{label:`Started`,value:jt(m.startedAt)}),p&&(0,z.jsx)(Y,{label:`Orchestrator`,value:`${p.hostname} (${p.id.slice(-8)})`}),p&&(0,z.jsx)(Y,{label:`Orch Status`,value:p.status})]})}),y&&(0,z.jsx)(Du,{title:`Lifecycle`,expanded:!!s.lifecycle,onToggle:()=>h(`lifecycle`),children:(0,z.jsxs)(`div`,{className:`space-y-2 text-xs`,children:[(0,z.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,z.jsx)(`span`,{className:`text-muted-foreground`,children:`Status`}),(0,z.jsx)(P,{className:Tu[y.status]||`bg-zinc-500/20 text-zinc-400`,children:y.status})]}),(0,z.jsxs)(`div`,{className:`grid grid-cols-2 gap-x-3 gap-y-1`,children:[(0,z.jsx)(Y,{label:`Restarts`,value:String(y.restartCount)}),(0,z.jsx)(Y,{label:`Failures`,value:String(y.consecutiveFailures)}),y.lastSpawnAt&&(0,z.jsx)(Y,{label:`Last spawn`,value:yt(n,y.lastSpawnAt)}),y.lastStopAt&&(0,z.jsx)(Y,{label:`Last stop`,value:yt(n,y.lastStopAt)}),y.healthySince&&(0,z.jsx)(Y,{label:`Healthy since`,value:yt(n,y.healthySince)}),y.backoffUntil&&(0,z.jsx)(Y,{label:`Backoff until`,value:y.backoffUntil>n?yt(n,y.backoffUntil):`expired`})]}),y.lastError&&(0,z.jsxs)(`div`,{className:`rounded border border-red-500/20 bg-red-500/5 px-2 py-1.5`,children:[(0,z.jsx)(`span`,{className:`text-muted-foreground`,children:`Last error`}),(0,z.jsx)(`div`,{className:`mt-0.5 break-words text-red-300/80`,children:y.lastError})]})]})}),(0,z.jsx)(Du,{title:`Activity (${a.length})`,expanded:!!s.activity,onToggle:()=>h(`activity`),children:a.length===0?(0,z.jsx)(`div`,{className:`text-xs text-muted-foreground`,children:`No recent events`}):(0,z.jsx)(`div`,{className:`space-y-1`,children:a.slice(0,15).map(e=>(0,z.jsxs)(`div`,{className:`flex items-start gap-2 text-xs`,children:[(0,z.jsx)(`span`,{className:`shrink-0 text-[10px] text-muted-foreground tabular-nums w-14`,children:yt(n,typeof e.createdAt==`number`?e.createdAt:Date.parse(String(e.createdAt)))}),(0,z.jsxs)(`div`,{className:`min-w-0`,children:[(0,z.jsx)(`span`,{className:`font-medium`,children:e.title}),e.body&&(0,z.jsx)(`span`,{className:`text-muted-foreground ml-1 break-words`,children:e.body.length>80?e.body.slice(0,80)+`...`:e.body})]})]},e.id))})}),!v&&!m&&!y&&a.length===0&&(0,z.jsx)(`div`,{className:`text-xs text-muted-foreground`,children:`No managed-agent diagnostics available for this agent.`})]})}function Du({title:e,expanded:t,onToggle:n,children:r}){return(0,z.jsxs)(`div`,{className:`rounded-md border border-border`,children:[(0,z.jsxs)(`button`,{type:`button`,className:`flex w-full items-center gap-1.5 px-2.5 py-1.5 text-xs font-medium hover:bg-muted/50`,onClick:n,children:[t?(0,z.jsx)(Be,{className:`w-3 h-3`}):(0,z.jsx)(we,{className:`w-3 h-3`}),e]}),t&&(0,z.jsx)(`div`,{className:`px-2.5 pb-2.5`,children:r})]})}function Ou(e){return Kt(e)&&typeof e.profileName==`string`&&typeof e.provider==`string`&&typeof e.base==`string`&&Array.isArray(e.entries)&&Array.isArray(e.warnings)&&Array.isArray(e.unsupported)}function Y({label:e,value:t,className:n=``,mono:r=!1}){return(0,z.jsxs)(`div`,{className:`min-w-0 ${n}`,children:[(0,z.jsx)(`span`,{className:`text-muted-foreground`,children:e}),(0,z.jsx)(`div`,{className:`truncate ${r?`font-mono`:``}`,title:t,children:t})]})}function ku({agent:e,className:t=``,onNavigate:n}){let r=typeof e.meta?.cwd==`string`?e.meta.cwd:``,i=A(e=>r?e.projectByCwd[r]:null),a=A(e=>e.fetchProjectForCwd),o=A(e=>e.openProjectFocus);return(0,R.useEffect)(()=>{r&&a(r)},[r,a]),i?(0,z.jsxs)(`button`,{type:`button`,title:`Project: ${i.title||i.slug} — open in Projects`,onClick:e=>{e.stopPropagation(),n?.(),o(i.id)},className:`inline-flex h-5 max-w-full items-center gap-1 rounded-full border border-indigo-500/30 bg-indigo-500/10 px-1.5 text-[10px] font-medium text-indigo-300 transition-colors hover:bg-indigo-500/20 ${t}`,children:[(0,z.jsx)(f,{className:`h-3 w-3 shrink-0`}),(0,z.jsx)(`span`,{className:`truncate`,children:i.title||i.slug})]}):null}function Au({className:e}){return(0,z.jsx)(`svg`,{viewBox:`0 0 16 16`,fill:`currentColor`,"aria-hidden":`true`,className:e,children:(0,z.jsx)(`path`,{d:`M8 0C3.58 0 0 3.58 0 8c0 3.54 2.29 6.53 5.47 7.59.4.07.55-.17.55-.38 0-.19-.01-.82-.01-1.49-2.01.37-2.53-.49-2.69-.94-.09-.23-.48-.94-.82-1.13-.28-.15-.68-.52-.01-.53.63-.01 1.08.58 1.23.82.72 1.21 1.87.87 2.33.66.07-.52.28-.87.51-1.07-1.78-.2-3.64-.89-3.64-3.95 0-.87.31-1.59.82-2.15-.08-.2-.36-1.02.08-2.12 0 0 .67-.21 2.2.82a7.65 7.65 0 0 1 2-.27c.68 0 1.36.09 2 .27 1.53-1.04 2.2-.82 2.2-.82.44 1.1.16 1.92.08 2.12.51.56.82 1.27.82 2.15 0 3.07-1.87 3.75-3.65 3.95.29.25.54.73.54 1.48 0 1.07-.01 1.93-.01 2.2 0 .21.15.46.55.38A8.013 8.013 0 0 0 16 8c0-4.42-3.58-8-8-8Z`})})}var ju={github:Au},Mu=Ye;function Nu({provider:e,className:t}){return(0,z.jsx)(ju[e]??Mu,{className:_(`shrink-0`,t)})}var Pu={open:`border-emerald-500/25 bg-emerald-500/10 text-emerald-300`,closed:`border-zinc-500/25 bg-zinc-500/10 text-zinc-300`,unknown:`border-amber-500/25 bg-amber-500/10 text-amber-300`},Fu=1440*60*1e3;function Iu(e){return`${e.repo}#${e.externalKey}`}function Lu(e,t){return e.statusSyncedAt?`Status synced ${yt(t,e.statusSyncedAt)} (${jt(e.statusSyncedAt)})`:`Status not yet synced`}function Ru({issueRef:e,now:t=Date.now(),compact:n=!1,showSync:r=!1,className:i}){let a=Iu(e),o=!e.statusSyncedAt||t-e.statusSyncedAt>Fu,s=[e.title?`${a}: ${e.title}`:a,`Status: ${e.status}`,Lu(e,t)].join(`
19
19
  `);return(0,z.jsxs)(`a`,{href:e.url,target:`_blank`,rel:`noreferrer`,title:s,"aria-label":`Open ${a}`,onClick:e=>e.stopPropagation(),className:_(`inline-flex h-5 max-w-full items-center gap-1.5 rounded-full border pl-1.5 pr-2 text-[10px] font-medium leading-none transition-colors hover:brightness-125 focus:outline-none focus-visible:ring-1 focus-visible:ring-current`,Pu[e.status],i),children:[(0,z.jsx)(Nu,{provider:e.provider,className:`h-3 w-3 opacity-90`}),(0,z.jsx)(`span`,{className:`truncate font-mono tracking-tight`,children:a}),!n&&(0,z.jsx)(`span`,{className:`shrink-0 opacity-70`,children:e.status}),r&&!n&&(0,z.jsxs)(`span`,{className:_(`shrink-0 tabular-nums`,o?`opacity-45`:`opacity-65`),children:[(0,z.jsx)(`span`,{"aria-hidden":!0,className:`mr-1 opacity-60`,children:`·`}),e.statusSyncedAt?yt(t,e.statusSyncedAt):`unsynced`]}),(0,z.jsx)(v,{className:`ml-0.5 h-2.5 w-2.5 shrink-0 opacity-60`})]})}var zu={read:`read`,edit:`edited`,done:`completed`},Bu={done:`border-emerald-500/30 bg-emerald-500/10 text-emerald-300`},Vu=[];function Hu(e){let t=new Map;for(let n of e){let e=t.get(n.issueRef.id),r={action:n.action,count:n.count,firstAt:n.firstAt,lastAt:n.lastAt};e?(e.actions.push(r),e.lastAt=Math.max(e.lastAt,n.lastAt)):t.set(n.issueRef.id,{issueRef:n.issueRef,actions:[r],lastAt:n.lastAt})}return[...t.values()].sort((e,t)=>t.lastAt-e.lastAt||e.issueRef.id.localeCompare(t.issueRef.id))}function Uu({agentId:e,now:t}){let n=A(e=>e.fetchAgentIssueActivity),r=A(t=>t.issueActivityByAgent[e]??Vu),i=A(e=>e.issueRefsById),a=A(t=>!!t.issueLoading[`agent:${e}`]),o=A(t=>t.issueErrors[`agent:${e}`]??null),s=(0,R.useMemo)(()=>Hu(r.map(e=>({...e,issueRef:i[e.issueRef.id]??e.issueRef}))),[r,i]);return(0,R.useEffect)(()=>{n(e)},[e,n]),(0,z.jsxs)(z.Fragment,{children:[(0,z.jsx)(Uc,{}),(0,z.jsxs)(`div`,{children:[(0,z.jsxs)(`div`,{className:`mb-2 flex items-center justify-between gap-2`,children:[(0,z.jsx)(`h3`,{className:`text-sm font-medium`,children:`Issues`}),a?(0,z.jsx)(P,{variant:`secondary`,className:`text-[10px]`,children:`loading`}):(0,z.jsx)(P,{variant:`secondary`,className:`text-[10px]`,children:s.length})]}),o?(0,z.jsx)(`div`,{className:`text-xs text-destructive`,children:o}):s.length===0?(0,z.jsx)(`div`,{className:`text-xs text-muted-foreground`,children:`No issue activity recorded for this agent.`}):(0,z.jsx)(`div`,{className:`space-y-2`,children:s.map(e=>(0,z.jsxs)(`div`,{className:`rounded-md border border-border px-2.5 py-2 text-xs`,children:[(0,z.jsxs)(`div`,{className:`flex min-w-0 flex-wrap items-center justify-between gap-2`,children:[(0,z.jsx)(Ru,{issueRef:e.issueRef,now:t}),(0,z.jsx)(`span`,{className:`shrink-0 text-[10px] text-muted-foreground`,title:jt(e.lastAt),children:yt(t,e.lastAt)})]}),(0,z.jsx)(`div`,{className:`mt-1.5 flex flex-wrap gap-1`,children:e.actions.map(e=>(0,z.jsxs)(P,{variant:`outline`,className:_(`text-[10px]`,Bu[e.action]),title:`${e.count} event${e.count===1?``:`s`} since ${jt(e.firstAt)}`,children:[zu[e.action],e.count>1?` ${e.count}`:``]},e.action))})]},e.issueRef.id))})]})]})}function Wu(e){let t=e?.meta?.tmuxSession;return typeof t==`string`&&t.trim()?t:null}function Gu(e,t,n){return e?n.find(n=>n.managedAgents.some(n=>n.agentId===e.id||n.tmuxSession===t))??null:null}function X({agent:e,health:t,showLogs:n,setTab:i,openConfirm:a,doAgentAction:o}){let s=Et(e,`interrupt`),c=Et(e,`restart`),l=Et(e,`shutdown`),u=t.activeWorkLabel||t.activeWorkKind||t.kind;return(0,z.jsxs)(`div`,{className:`shrink-0 mx-4 mt-3 rounded-md border border-red-500/35 bg-red-500/10 px-3 py-2 text-xs text-red-100`,children:[(0,z.jsxs)(`div`,{className:`flex items-center gap-1.5 font-medium`,children:[(0,z.jsx)(ze,{className:`w-3.5 h-3.5`}),`Stuck busy`]}),(0,z.jsxs)(`div`,{className:`mt-1 text-red-50/85`,children:[`No provider progress for `,Math.max(1,Math.floor(t.staleForMs/6e4)),` min while `,u,` is active.`]}),(0,z.jsxs)(`div`,{className:`mt-2 flex flex-wrap gap-1.5`,children:[s&&(0,z.jsxs)(F,{size:`sm`,variant:`outline`,className:`h-7 text-xs`,onClick:()=>o(e,`interrupt`,`agent-detail-drawer`),children:[(0,z.jsx)(Ne,{className:`w-3 h-3 mr-1`}),`Interrupt`]}),c&&(0,z.jsxs)(F,{size:`sm`,variant:`outline`,className:`h-7 text-xs`,onClick:()=>a(`Restart Agent`,`Restart ${j(e)}?`,()=>o(e,`restart`,`agent-detail-drawer`)),children:[(0,z.jsx)(r,{className:`w-3 h-3 mr-1`}),`Restart`]}),l&&(0,z.jsxs)(F,{size:`sm`,variant:`outline`,className:`h-7 text-xs`,onClick:()=>a(`Shutdown Agent`,`Shutdown ${j(e)}?`,()=>o(e,`shutdown`,`agent-detail-drawer`)),children:[(0,z.jsx)(y,{className:`w-3 h-3 mr-1`}),`Shutdown`]}),(0,z.jsxs)(F,{size:`sm`,variant:`outline`,className:`h-7 text-xs`,onClick:()=>i(n?`logs`:`timeline`),children:[(0,z.jsx)(x,{className:`w-3 h-3 mr-1`}),`Diagnostics`]})]})]})}var Ku=/^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$/i;function qu(e){return!e||e.status!==`offline`&&e.status!==`stale`?!1:(typeof e.meta?.provider==`string`?e.meta.provider:e.providerCapabilities?.model?.provider)===`claude`}function Ju(e){for(let t of e){let e=t.metadata,n=typeof e?.provider==`string`?e.provider:``,r=typeof e?.claudeResumeId==`string`?e.claudeResumeId:``;if(n===`claude`&&Ku.test(r))return{resumeId:r,timestamp:t.ts}}return null}function Yu(e,t){return!!e.spawnedBy&&e.status!==`offline`&&!Yt(t,e)}function Xu(e,t){let n=new Map;for(let r of e){if(!r.spawnedBy||!Yu(r,t))continue;let e=n.get(r.spawnedBy);e?e.push(r):n.set(r.spawnedBy,[r])}return n}function Zu(e,t,n){let r=new Set(e.map(e=>e.id)),i=Xu(e,n),a=[],o=new Set;for(let s of e){if(o.has(s.id)||s.spawnedBy&&!Yu(s,n))continue;let e=!!(s.spawnedBy&&r.has(s.spawnedBy));if(Yu(s,n)&&e)continue;let c=i.get(s.id)??[];a.push({agent:s,depth:0,parent:s.spawnedBy?t[s.spawnedBy]??null:null,children:c}),o.add(s.id);for(let e of c)o.has(e.id)||(a.push({agent:e,depth:1,parent:s,children:[]}),o.add(e.id))}return a}function Qu(e,t){let n=new Set(e.map(e=>e.id));return e.filter(e=>e.spawnedBy&&!Yu(e,t)?!1:!Yu(e,t)||!e.spawnedBy||!n.has(e.spawnedBy))}function $u(e){return[...e].sort((e,t)=>j(e).localeCompare(j(t)))}function ed(){let e=A(e=>e.agentDetailOpen),t=A(e=>e.agentDetailId),n=A(e=>e.agentsById),i=A(e=>e.messages),a=A(e=>e.orchestrators),o=A(e=>e.fetchOrchestrators),s=ut(),c=A(e=>e.set),l=A(e=>e.closeAgentDetail),d=A(e=>e.openAgentDetail),f=A(e=>e.openComposeToAgent),p=A(e=>e.openInboxThread),m=A(e=>e.openRename),h=A(e=>e.openPairInvite),_=A(e=>e.switchView),v=A(e=>e.openConfirm),b=A(e=>e.showError),S=A(e=>e.showNotification),C=A(e=>e.doAgentAction),ee=A(e=>e.doDeleteAgent),w=A(e=>e.openFilesForAgent),[te,ne]=(0,R.useState)([]),[ae,oe]=(0,R.useState)(null),[se,T]=(0,R.useState)(null),[E,ue]=(0,R.useState)(`overview`),[de,fe]=(0,R.useState)(!1),[D,me]=(0,R.useState)(null),[ge,_e]=(0,R.useState)(!1),[ve,ye]=(0,R.useState)(null),be=A(e=>e.livenessMismatches),xe=A(e=>e.commandStalls),O=n[t]||null,Ce=Dc(),we=O?Ce[O.id]??null:null,Te=(0,R.useMemo)(()=>Object.values(n),[n]),De=(0,R.useMemo)(()=>t?i.filter(e=>e.from===t||e.to===t).sort((e,t)=>t.id-e.id).slice(0,8):[],[i,t]);(0,R.useEffect)(()=>{if(!e||!O?.context){ne([]);return}let t=!1;return g(`GET`,`/agents/`+encodeURIComponent(O.id)+`/context-snapshots?limit=24`).then(e=>{t||ne(e)}).catch(()=>{t||ne([])}),()=>{t=!0}},[e,O?.id,O?.context?.lastUpdatedAt]),(0,R.useEffect)(()=>{if(ye(null),!e||!O||!qu(O))return;let t=!1;return g(`GET`,`/agents/`+encodeURIComponent(O.id)+`/timeline?limit=50`).then(e=>{t||ye(Ju(e))}).catch(()=>{t||ye(null)}),()=>{t=!0}},[e,O?.id,O?.status,O?.meta?.provider]),(0,R.useEffect)(()=>{if(!e||!O){oe(null);return}let t=!1;return g(`GET`,`/agents/`+encodeURIComponent(O.id)+`/active-memories`).then(e=>{t||oe(e)}).catch(()=>{t||oe(null)}),()=>{t=!0}},[e,O?.id]),(0,R.useEffect)(()=>{if(!e||!O){T(null);return}let t=!1;return g(`GET`,`/agents/`+encodeURIComponent(O.id)+`/crash-report`).then(e=>{t||T(e.report)}).catch(()=>{t||T(null)}),()=>{t=!0}},[e,O?.id]),(0,R.useEffect)(()=>{ue(`overview`),fe(!1),me(null)},[t]),(0,R.useEffect)(()=>{e&&O?.meta?.tmuxSession&&a.length===0&&o()},[e,O?.id,O?.meta?.tmuxSession,a.length]);async function Oe(){if(O)try{if(!(await g(`DELETE`,`/agents/`+encodeURIComponent(O.id)+`/active-memories`)).supported){b(`Memory Clear Unavailable`,`The active memory broker does not support clearing active memories.`);return}oe({agentId:O.id,supported:!0,memories:[],total:0}),S(`Active memories cleared`)}catch(e){b(`Memory Clear Failed`,e.message)}}async function Ae(){if(!(!O||ge)){_e(!0);try{me(await g(`POST`,`/agents/`+encodeURIComponent(O.id)+`/terminal-session`)),fe(!0)}catch(e){b(`Terminal Failed`,e.message)}finally{_e(!1)}}}async function je(e){if(e){fe(!0);return}fe(!1);let t=D;if(me(null),O&&t?.mode===`guest`)try{await g(`DELETE`,`/agents/`+encodeURIComponent(O.id)+`/terminal-session/`+encodeURIComponent(t.session))}catch{}}if(!O)return(0,z.jsx)(q,{open:e,onOpenChange:e=>!e&&l(),children:(0,z.jsx)(Hl,{className:`w-full max-w-[100dvw] sm:max-w-md lg:max-w-lg`,children:(0,z.jsx)(Ul,{children:(0,z.jsx)(Wl,{children:`Agent`})})})});let Me=Nt(s,O,Lt(),we),Ne=Et(O,`restart`),Pe=Et(O,`shutdown`),Fe=Et(O,`reconnect`),Ie=Et(O,`compact`),Re=Et(O,`clearContext`),Be=!!(ve&&qu(O)),Ve=zt(O),He=ld(O.meta?.package),Ue=ud(O.meta?.contracts),k=O.providerCapabilities,We=pt(O),Ke=_u(O),qe=Gt(O),Je=Wu(O),Ye=Je?Gu(O,Je,a):null,Xe=!!(Je&&Ye?.status===`online`&&O.providerCapabilities?.terminal?.live?.read),Ze=O.providerCapabilities?.model?.provider??(typeof O.meta?.provider==`string`?O.meta.provider:void 0),Qe=!!(Xe&&(O.providerCapabilities?.terminal?.live?.write||Ze===`claude`)),et=O.providerCapabilities?.terminal?.attach?.create===!0,tt=Xe||et,nt=pd(O.meta?.lastExit),it=typeof O.meta?.lastError==`string`?O.meta.lastError:nt?.lastError,ot=O.spawnedBy?n[O.spawnedBy]??null:null,st=$u(Xu(Te,s).get(O.id)??[]),ct=be[O.id]??null,lt=(Me.tone===`offline`||Me.tone===`stale`)&&Xe,dt=!!ct||lt,ft=xe[O.id]??null,mt=wu(s,O);return(0,z.jsxs)(z.Fragment,{children:[(0,z.jsx)(q,{open:e,onOpenChange:e=>!e&&l(),children:(0,z.jsxs)(Hl,{className:`w-full max-w-[100dvw] sm:max-w-md lg:max-w-lg p-0`,children:[(0,z.jsxs)(Ul,{className:`shrink-0 p-4 border-b border-border`,children:[(0,z.jsxs)(`div`,{className:`flex items-center gap-2 min-w-0`,children:[(0,z.jsx)(Xl,{agent:O,now:s}),(0,z.jsx)(iu,{agent:O}),(0,z.jsx)(Wl,{className:`text-base truncate`,children:j(O)}),mu(O)&&(0,z.jsx)(gu,{context:O.context,expected:!0})]}),(0,z.jsx)(ou,{agent:O,className:`mt-2`})]}),(0,z.jsxs)(`div`,{className:`shrink-0 flex flex-wrap items-center gap-2 p-4 border-b border-border`,children:[(0,z.jsxs)(F,{size:`sm`,variant:`outline`,onClick:()=>{f(O),l()},children:[(0,z.jsx)(u,{className:`w-3 h-3 mr-1`}),`Message`]}),(0,z.jsxs)(F,{size:`sm`,variant:`outline`,onClick:()=>{p(O.id),_(`chat`),l()},children:[(0,z.jsx)(ie,{className:`w-3 h-3 mr-1`}),`Chat`]}),(0,z.jsxs)(F,{size:`sm`,variant:`outline`,onClick:()=>{h(O.id),l()},children:[(0,z.jsx)(Se,{className:`w-3 h-3 mr-1`}),`Pair`]}),tt&&(0,z.jsx)(F,{size:`sm`,variant:`outline`,className:`hidden sm:inline-flex px-2`,disabled:ge,title:et?`Open guest terminal`:`Open live terminal`,onClick:()=>void Ae(),children:(0,z.jsx)(Ee,{className:`w-3.5 h-3.5`})}),Be&&(0,z.jsx)(F,{size:`sm`,variant:`outline`,className:`hidden sm:inline-flex px-2`,title:`Resume Claude session`,onClick:()=>v(`Resume Claude Session`,`Resume ${j(O)} from Claude session ${ve?.resumeId}? This can reload a large prior context and consume tokens.`,()=>C(O,`resume`,`agent-detail-drawer`)),children:(0,z.jsx)(Ge,{className:`w-3.5 h-3.5`})}),Ie&&(0,z.jsx)(F,{size:`sm`,variant:`outline`,className:`hidden sm:inline-flex px-2`,title:`Compact context`,onClick:()=>v(`Compact Agent`,`Compact context for ${j(O)}?`,()=>C(O,`compact`,`agent-detail-drawer`)),children:(0,z.jsx)(he,{className:`w-3.5 h-3.5`})}),Ne&&(0,z.jsx)(F,{size:`sm`,variant:`outline`,className:`hidden sm:inline-flex px-2`,title:`Restart`,onClick:()=>v(`Restart Agent`,`Restart ${j(O)}?`,()=>C(O,`restart`,`agent-detail-drawer`)),children:(0,z.jsx)(r,{className:`w-3.5 h-3.5`})}),Pe&&(0,z.jsx)(F,{size:`sm`,variant:`outline`,className:`hidden sm:inline-flex px-2`,title:`Shutdown`,onClick:()=>v(`Shutdown Agent`,`Shutdown ${j(O)}?`,()=>C(O,`shutdown`,`agent-detail-drawer`)),children:(0,z.jsx)(y,{className:`w-3.5 h-3.5`})}),(0,z.jsxs)(Wc,{children:[(0,z.jsx)(Gc,{asChild:!0,children:(0,z.jsx)(F,{size:`sm`,variant:`outline`,className:`px-2`,children:(0,z.jsx)(pe,{className:`w-3.5 h-3.5`})})}),(0,z.jsxs)(Kc,{align:`end`,children:[tt&&(0,z.jsxs)(qc,{className:`sm:hidden`,disabled:ge,onClick:()=>void Ae(),children:[(0,z.jsx)(Ee,{className:`w-3.5 h-3.5`}),`Terminal`]}),Be&&(0,z.jsxs)(qc,{className:`sm:hidden`,onClick:()=>v(`Resume Claude Session`,`Resume ${j(O)} from Claude session ${ve?.resumeId}? This can reload a large prior context and consume tokens.`,()=>C(O,`resume`,`agent-detail-drawer`)),children:[(0,z.jsx)(Ge,{className:`w-3.5 h-3.5`}),`Resume`]}),Ie&&(0,z.jsxs)(qc,{className:`sm:hidden`,onClick:()=>v(`Compact Agent`,`Compact context for ${j(O)}?`,()=>C(O,`compact`,`agent-detail-drawer`)),children:[(0,z.jsx)(he,{className:`w-3.5 h-3.5`}),`Compact`]}),Ne&&(0,z.jsxs)(qc,{className:`sm:hidden`,onClick:()=>v(`Restart Agent`,`Restart ${j(O)}?`,()=>C(O,`restart`,`agent-detail-drawer`)),children:[(0,z.jsx)(r,{className:`w-3.5 h-3.5`}),`Restart`]}),Pe&&(0,z.jsxs)(qc,{className:`sm:hidden`,onClick:()=>v(`Shutdown Agent`,`Shutdown ${j(O)}?`,()=>C(O,`shutdown`,`agent-detail-drawer`)),children:[(0,z.jsx)(y,{className:`w-3.5 h-3.5`}),`Shutdown`]}),(tt||Be||Ie||Ne||Pe)&&(0,z.jsx)(Yc,{className:`sm:hidden`}),(0,z.jsxs)(qc,{onClick:()=>m(O),children:[(0,z.jsx)(ce,{className:`w-3.5 h-3.5`}),`Rename`]}),Fe&&(0,z.jsxs)(qc,{onClick:()=>v(`Reconnect Agent`,`Reconnect ${j(O)}?`,()=>C(O,`reconnect`,`agent-detail-drawer`)),children:[(0,z.jsx)(re,{className:`w-3.5 h-3.5`}),`Reconnect`]}),Re&&(0,z.jsxs)(qc,{onClick:()=>v(`Clear Context`,`Clear context for ${j(O)}?`,()=>C(O,`clearContext`,`agent-detail-drawer`)),children:[(0,z.jsx)(le,{className:`w-3.5 h-3.5`}),`Clear Context`]}),Ve&&(0,z.jsxs)(z.Fragment,{children:[(0,z.jsx)(Yc,{}),(0,z.jsxs)(qc,{variant:`destructive`,onClick:()=>v(`Forget Agent`,`Forget ${j(O)}?`,()=>ee(O.id)),children:[(0,z.jsx)(ke,{className:`w-3.5 h-3.5`}),`Forget`]})]})]})]})]}),dt&&(0,z.jsxs)(`div`,{className:`shrink-0 mx-4 mt-3 rounded-md border border-amber-500/30 bg-amber-500/10 px-3 py-2 text-xs text-amber-100`,children:[(0,z.jsxs)(`div`,{className:`flex items-center gap-1.5 font-medium`,children:[(0,z.jsx)(ze,{className:`w-3.5 h-3.5`}),`Liveness mismatch`]}),(0,z.jsx)(`div`,{className:`mt-1 text-amber-50/85`,children:ct?.detail??`Relay marks this agent offline, but a live terminal session is still reachable — the process may still be running.`}),tt&&(0,z.jsxs)(F,{size:`sm`,variant:`outline`,className:`mt-2 h-7 text-xs`,disabled:ge,onClick:()=>void Ae(),children:[(0,z.jsx)(Ee,{className:`w-3 h-3 mr-1`}),`Open terminal`]})]}),ft&&(0,z.jsxs)(`div`,{className:`shrink-0 mx-4 mt-3 rounded-md border border-amber-500/30 bg-amber-500/10 px-3 py-2 text-xs text-amber-100`,children:[(0,z.jsxs)(`div`,{className:`flex items-center gap-1.5 font-medium`,children:[(0,z.jsx)(ze,{className:`w-3.5 h-3.5`}),ft.kind===`clear`?`Context clear stalled`:`Compaction stalled`]}),(0,z.jsx)(`div`,{className:`mt-1 text-amber-50/85`,children:ft.detail}),tt&&(0,z.jsxs)(F,{size:`sm`,variant:`outline`,className:`mt-2 h-7 text-xs`,disabled:ge,onClick:()=>void Ae(),children:[(0,z.jsx)(Ee,{className:`w-3 h-3 mr-1`}),`Open terminal`]})]}),mt&&(0,z.jsx)(X,{agent:O,health:mt,showLogs:!!Je,setTab:ue,openConfirm:v,doAgentAction:C}),(0,z.jsxs)(Gl,{value:E,onValueChange:e=>ue(e),className:`flex-1 min-h-0 gap-0`,children:[(0,z.jsxs)(ql,{variant:`line`,className:`w-full shrink-0 px-4 pt-2`,children:[(0,z.jsx)(Jl,{value:`overview`,children:`Overview`}),(0,z.jsxs)(Jl,{value:`timeline`,children:[(0,z.jsx)(at,{className:`w-3.5 h-3.5`}),`Timeline`]}),(0,z.jsxs)(Jl,{value:`logs`,children:[(0,z.jsx)(x,{className:`w-3.5 h-3.5`}),`Logs`]})]}),(0,z.jsx)(Yl,{value:`overview`,className:`min-h-0 overflow-y-auto overflow-x-hidden`,children:(0,z.jsxs)(`div`,{className:`p-4 space-y-4 min-w-0`,children:[(0,z.jsxs)(`div`,{children:[(0,z.jsx)(`h3`,{className:`text-sm font-medium mb-2`,children:`Status`}),(0,z.jsxs)(`div`,{className:`space-y-1 text-sm min-w-0`,children:[(0,z.jsxs)(`div`,{className:`flex justify-between gap-2 min-w-0`,children:[(0,z.jsx)(`span`,{className:`text-muted-foreground shrink-0`,children:`State`}),(0,z.jsx)(P,{className:vt(Me.tone),children:Me.label})]}),We?.recommendedAction&&(0,z.jsxs)(`div`,{className:`rounded-md border border-red-500/20 bg-red-500/10 px-2.5 py-2 text-xs text-red-200`,children:[(0,z.jsxs)(`div`,{className:`flex items-center gap-1.5 font-medium`,children:[(0,z.jsx)($e,{className:`w-3.5 h-3.5`}),`Recommended action`]}),(0,z.jsx)(`div`,{className:`mt-1 text-red-100/80`,children:We.recommendedAction})]}),it&&(0,z.jsxs)(`div`,{className:`rounded-md border border-amber-500/25 bg-amber-500/10 px-2.5 py-2 text-xs text-amber-100`,children:[(0,z.jsxs)(`div`,{className:`flex items-center gap-1.5 font-medium`,children:[(0,z.jsx)($e,{className:`w-3.5 h-3.5`}),`Last launch error`]}),(0,z.jsx)(`div`,{className:`mt-1 break-words text-amber-50/85`,children:it}),nt&&(0,z.jsxs)(`div`,{className:`mt-2 grid grid-cols-2 gap-x-3 gap-y-1 text-amber-50/70`,children:[nt.detectedAt&&(0,z.jsxs)(`div`,{children:[(0,z.jsx)(`span`,{className:`text-amber-100/55`,children:`Detected`}),(0,z.jsx)(`div`,{children:yt(s,nt.detectedAt)})]}),typeof nt.runtimeMs==`number`&&(0,z.jsxs)(`div`,{children:[(0,z.jsx)(`span`,{className:`text-amber-100/55`,children:`Runtime`}),(0,z.jsxs)(`div`,{children:[Math.max(0,Math.round(nt.runtimeMs/1e3)),`s`]})]}),nt.systemd?.unit&&(0,z.jsxs)(`div`,{className:`col-span-2 min-w-0`,children:[(0,z.jsx)(`span`,{className:`text-amber-100/55`,children:`Unit`}),(0,z.jsx)(`div`,{className:`truncate font-mono`,children:nt.systemd.unit})]}),nt.systemd&&(0,z.jsxs)(`div`,{children:[(0,z.jsx)(`span`,{className:`text-amber-100/55`,children:`Systemd`}),(0,z.jsx)(`div`,{children:[nt.systemd.activeState,nt.systemd.subState].filter(Boolean).join(`/`)||`unknown`})]}),nt.systemd?.result&&(0,z.jsxs)(`div`,{children:[(0,z.jsx)(`span`,{className:`text-amber-100/55`,children:`Result`}),(0,z.jsx)(`div`,{children:nt.systemd.result})]}),nt.logFile&&(0,z.jsxs)(`div`,{className:`col-span-2 min-w-0`,children:[(0,z.jsx)(`span`,{className:`text-amber-100/55`,children:`Log`}),(0,z.jsxs)(`div`,{className:`truncate font-mono`,children:[nt.logFile,` (`,nt.logBytes??`unknown`,` bytes`,nt.logEmpty?`, empty`:``,`)`]})]})]}),nt?.logTail?.length?(0,z.jsx)(`pre`,{className:`mt-2 max-h-28 overflow-auto whitespace-pre-wrap break-words rounded border border-amber-500/15 bg-black/20 p-2 text-[11px] text-amber-50/75`,children:nt.logTail.slice(-5).join(`
20
20
  `)}):null,nt?.unavailable?.length?(0,z.jsx)(`div`,{className:`mt-1 text-amber-50/55`,children:nt.unavailable.join(`; `)}):null]}),(0,z.jsxs)(`div`,{className:`grid grid-cols-2 gap-x-3 gap-y-1 pt-0.5 text-xs`,children:[(0,z.jsxs)(`div`,{children:[(0,z.jsx)(`span`,{className:`text-muted-foreground`,children:`Last seen`}),(0,z.jsx)(`div`,{children:yt(s,O.lastSeen)})]}),(0,z.jsxs)(`div`,{children:[(0,z.jsx)(`span`,{className:`text-muted-foreground`,children:`Created`}),(0,z.jsx)(`div`,{title:jt(O.createdAt),children:yt(s,O.createdAt)})]})]})]})]}),se&&(0,z.jsxs)(z.Fragment,{children:[(0,z.jsx)(Uc,{}),(0,z.jsx)(fd,{report:se,now:s})]}),O.context&&(0,z.jsxs)(z.Fragment,{children:[(0,z.jsx)(Uc,{}),(0,z.jsx)(id,{context:O.context,tokens:Ke,history:te,now:s})]}),(0,z.jsx)(Uu,{agentId:O.id,now:s}),(O.spawnedBy||st.length>0||we)&&(0,z.jsxs)(z.Fragment,{children:[(0,z.jsx)(Uc,{}),(0,z.jsxs)(`div`,{children:[(0,z.jsx)(`h3`,{className:`text-sm font-medium mb-2`,children:`Relationships`}),(0,z.jsxs)(`div`,{className:`space-y-2`,children:[O.spawnedBy&&(0,z.jsxs)(`div`,{className:`rounded-md border border-border p-2 text-xs`,children:[(0,z.jsx)(`div`,{className:`mb-1 text-muted-foreground`,children:`Spawned by`}),(0,z.jsx)(`button`,{type:`button`,className:`flex w-full items-center gap-2 rounded px-1 py-1 text-left hover:bg-muted/50 disabled:pointer-events-none disabled:opacity-60`,disabled:!ot,onClick:()=>ot&&d(ot),children:ot?(0,z.jsxs)(z.Fragment,{children:[(0,z.jsx)(Xl,{agent:ot,now:s}),(0,z.jsx)(iu,{agent:ot}),(0,z.jsx)(`span`,{className:`truncate font-medium`,children:j(ot)})]}):(0,z.jsx)(`span`,{className:`truncate font-mono`,children:O.spawnedBy})})]}),st.length>0&&(0,z.jsxs)(`div`,{className:`rounded-md border border-border p-2 text-xs`,children:[(0,z.jsxs)(`div`,{className:`mb-1 flex items-center justify-between gap-2`,children:[(0,z.jsx)(`span`,{className:`text-muted-foreground`,children:`Children`}),(0,z.jsx)(P,{variant:`secondary`,className:`h-4 px-1.5 text-[9px]`,children:st.length})]}),(0,z.jsx)(`div`,{className:`space-y-1`,children:st.map(e=>(0,z.jsxs)(`button`,{type:`button`,className:`flex w-full items-center gap-2 rounded px-1 py-1 text-left hover:bg-muted/50`,onClick:()=>d(e),children:[(0,z.jsx)(Xl,{agent:e,now:s}),(0,z.jsx)(iu,{agent:e}),(0,z.jsx)(`span`,{className:`min-w-0 flex-1 truncate font-medium`,children:j(e)}),(0,z.jsx)(`span`,{className:`shrink-0 text-muted-foreground`,children:e.status})]},e.id))})]}),O.spawnedBy&&st.length===0&&(0,z.jsxs)(`div`,{className:`flex items-center gap-1.5 text-[11px] text-muted-foreground`,children:[(0,z.jsx)(Le,{className:`h-3.5 w-3.5`}),`No live child agents`]}),we&&(0,z.jsxs)(`div`,{className:`rounded-md border border-border p-2 text-xs`,children:[(0,z.jsxs)(`div`,{className:`mb-1 flex items-center justify-between gap-2`,children:[(0,z.jsx)(`span`,{className:`text-muted-foreground`,children:`Pair`}),(0,z.jsx)(P,{className:we.status===`active`?`bg-emerald-500/20 text-emerald-400`:`bg-yellow-500/20 text-yellow-400`,children:we.status})]}),we.objective&&(0,z.jsx)(`p`,{className:`text-muted-foreground`,children:we.objective})]})]})]})]}),(k||qe.length>0)&&(0,z.jsxs)(z.Fragment,{children:[(0,z.jsx)(Uc,{}),(0,z.jsxs)(`div`,{children:[(0,z.jsx)(`h3`,{className:`text-sm font-medium mb-2`,children:`Runtime`}),(0,z.jsxs)(`div`,{className:`space-y-2 text-sm`,children:[We&&(0,z.jsxs)(`div`,{className:`grid grid-cols-2 gap-x-3 gap-y-1`,children:[(0,z.jsxs)(`div`,{children:[(0,z.jsx)(`span`,{className:`text-muted-foreground`,children:`Provider state`}),(0,z.jsx)(`div`,{children:We.state})]}),We.reason&&(0,z.jsxs)(`div`,{children:[(0,z.jsx)(`span`,{className:`text-muted-foreground`,children:`Reason`}),(0,z.jsx)(`div`,{children:We.reason})]}),We.source&&(0,z.jsxs)(`div`,{children:[(0,z.jsx)(`span`,{className:`text-muted-foreground`,children:`Source`}),(0,z.jsx)(`div`,{children:We.source})]}),We.updatedAt&&(0,z.jsxs)(`div`,{children:[(0,z.jsx)(`span`,{className:`text-muted-foreground`,children:`Updated`}),(0,z.jsx)(`div`,{children:yt(s,We.updatedAt)})]})]}),k?.model&&(0,z.jsxs)(`div`,{className:`space-y-1`,children:[k.model.provider&&(0,z.jsxs)(`div`,{className:`flex justify-between gap-2 min-w-0`,children:[(0,z.jsx)(`span`,{className:`text-muted-foreground shrink-0`,children:`Provider`}),(0,z.jsx)(`span`,{className:`truncate`,children:k.model.provider})]}),(k.model.alias||k.model.id)&&(0,z.jsxs)(`div`,{className:`flex justify-between gap-2 min-w-0`,children:[(0,z.jsx)(`span`,{className:`text-muted-foreground shrink-0`,children:`Model`}),(0,z.jsx)(`span`,{className:`truncate`,children:k.model.alias||k.model.id})]}),k.model.effort&&(0,z.jsxs)(`div`,{className:`flex justify-between gap-2 min-w-0`,children:[(0,z.jsx)(`span`,{className:`text-muted-foreground shrink-0`,children:`Effort`}),(0,z.jsx)(`span`,{className:`truncate`,children:k.model.effort})]})]}),k?.session&&(0,z.jsxs)(`div`,{className:`grid grid-cols-2 gap-x-3 gap-y-1`,children:[k.session.approvalMode&&(0,z.jsxs)(`div`,{children:[(0,z.jsx)(`span`,{className:`text-muted-foreground`,children:`Mode`}),(0,z.jsx)(`div`,{children:k.session.approvalMode})]}),(0,z.jsxs)(`div`,{children:[(0,z.jsx)(`span`,{className:`text-muted-foreground`,children:`Files`}),(0,z.jsx)(`div`,{children:k.session.fileWrite?`read/write`:k.session.fileRead?`read-only`:`none`})]}),(0,z.jsxs)(`div`,{children:[(0,z.jsx)(`span`,{className:`text-muted-foreground`,children:`Shell`}),(0,z.jsx)(`div`,{children:k.session.shell?`yes`:`no`})]}),(0,z.jsxs)(`div`,{children:[(0,z.jsx)(`span`,{className:`text-muted-foreground`,children:`Confidence`}),(0,z.jsx)(`div`,{children:k.confidence})]})]}),k?.lifecycle&&(0,z.jsxs)(`div`,{children:[(0,z.jsx)(`span`,{className:`text-muted-foreground`,children:`Lifecycle`}),(0,z.jsxs)(`div`,{className:`flex flex-wrap gap-1 mt-1`,children:[(0,z.jsx)(P,{variant:k.lifecycle.managed?`secondary`:`outline`,className:`text-[10px]`,children:k.lifecycle.managed?`managed`:`bridge`}),k.lifecycle.shutdownHard&&(0,z.jsx)(P,{variant:`outline`,className:`text-[10px]`,children:`shutdown`}),k.lifecycle.restartHard&&(0,z.jsx)(P,{variant:`outline`,className:`text-[10px]`,children:`restart`}),k.lifecycle.reconnect&&(0,z.jsx)(P,{variant:`outline`,className:`text-[10px]`,children:`reconnect`})]})]}),qe.length>0&&(0,z.jsxs)(`div`,{children:[(0,z.jsx)(`span`,{className:`text-muted-foreground`,children:`Subagents`}),(0,z.jsx)(`div`,{className:`space-y-1 mt-1`,children:qe.map(e=>(0,z.jsxs)(`div`,{className:`flex justify-between gap-2 text-xs rounded border border-border px-2 py-1`,children:[(0,z.jsx)(`span`,{className:`truncate`,children:e.label}),e.role&&(0,z.jsx)(`span`,{className:`text-muted-foreground shrink-0`,children:e.role})]},e.id))})]})]})]})]}),ae&&(0,z.jsxs)(z.Fragment,{children:[(0,z.jsx)(Uc,{}),(0,z.jsxs)(`div`,{children:[(0,z.jsxs)(`div`,{className:`flex items-center justify-between gap-2 mb-2`,children:[(0,z.jsxs)(`h3`,{className:`text-sm font-medium flex items-center gap-1.5`,children:[(0,z.jsx)(rt,{className:`w-3.5 h-3.5 text-muted-foreground`}),`Memory`]}),(0,z.jsxs)(`div`,{className:`flex items-center gap-1.5`,children:[ae.supported&&(0,z.jsx)(P,{variant:`secondary`,className:`text-[10px]`,children:ae.memories.length}),ae.supported&&ae.memories.length>0&&(0,z.jsxs)(F,{size:`sm`,variant:`outline`,className:`h-7 text-xs gap-1`,onClick:()=>v(`Clear Active Memories`,`Clear active memories for ${j(O)}?`,Oe),children:[(0,z.jsx)(le,{className:`w-3 h-3`}),`Clear`]})]})]}),ae.supported?ae.memories.length===0?(0,z.jsx)(`div`,{className:`text-xs text-muted-foreground`,children:`No active memories`}):(0,z.jsx)(`div`,{className:`space-y-2`,children:ae.memories.map(e=>(0,z.jsx)(td,{memory:e,now:s,onOpen:()=>{c({selectedMemoryId:e.id}),_(`memory`),l()}},e.id))}):(0,z.jsx)(`div`,{className:`text-xs text-muted-foreground`,children:`Active memory list unavailable`})]})]}),O.meta?.runnerManaged===!0&&(0,z.jsxs)(z.Fragment,{children:[(0,z.jsx)(Uc,{}),(0,z.jsx)(Eu,{agent:O,orchestrators:a})]}),(0,z.jsx)(Uc,{}),(0,z.jsxs)(`div`,{children:[(0,z.jsx)(`h3`,{className:`text-sm font-medium mb-2`,children:`Identity`}),(0,z.jsxs)(`div`,{className:`space-y-2.5 text-sm min-w-0`,children:[(0,z.jsx)(rd,{label:`Agent ID`,value:O.id,copyLabel:`Copy agent ID`}),typeof O.meta?.cwd==`string`&&O.meta.cwd&&(0,z.jsx)(rd,{label:`Working dir`,value:O.meta.cwd,copyLabel:`Copy working dir`,title:`Open ${O.meta.cwd} in Files`,onClick:()=>{l(),w(O)}}),(0,z.jsx)(ku,{agent:O,onNavigate:l}),(O.machine||O.rig||He)&&(0,z.jsxs)(`div`,{className:`grid grid-cols-2 gap-x-3 gap-y-1.5 text-xs`,children:[O.machine&&(0,z.jsxs)(`div`,{className:`min-w-0`,children:[(0,z.jsx)(`span`,{className:`text-muted-foreground`,children:`Machine`}),(0,z.jsx)(`div`,{className:`truncate`,title:O.machine,children:O.machine})]}),O.rig&&(0,z.jsxs)(`div`,{className:`min-w-0`,children:[(0,z.jsx)(`span`,{className:`text-muted-foreground`,children:`Rig`}),(0,z.jsx)(`div`,{className:`truncate`,title:O.rig,children:O.rig})]}),He&&(0,z.jsxs)(`div`,{className:`col-span-2 min-w-0`,children:[(0,z.jsx)(`span`,{className:`text-muted-foreground`,children:`Package`}),(0,z.jsxs)(`div`,{className:`break-all font-mono`,children:[He.name,` v`,He.version]})]})]}),Ue.length>0&&(0,z.jsxs)(`div`,{children:[(0,z.jsx)(`span`,{className:`text-[11px] text-muted-foreground`,children:`Contracts`}),(0,z.jsx)(`div`,{className:`flex flex-wrap gap-1 mt-1`,children:Ue.map(([e,t])=>(0,z.jsxs)(P,{variant:`secondary`,className:`text-[10px]`,children:[e,`=`,t]},e))})]}),O.tags.length>0&&(0,z.jsxs)(`div`,{children:[(0,z.jsx)(`span`,{className:`text-[11px] text-muted-foreground`,children:`Tags`}),(0,z.jsx)(`div`,{className:`flex flex-wrap gap-1 mt-1`,children:O.tags.map(e=>(0,z.jsx)(P,{variant:`outline`,className:`text-[10px]`,children:e},e))})]}),Tt(O.capabilities).length>0&&(0,z.jsxs)(`div`,{children:[(0,z.jsx)(`span`,{className:`text-[11px] text-muted-foreground`,children:`Capabilities`}),(0,z.jsx)(`div`,{className:`flex flex-wrap gap-1 mt-1`,children:Tt(O.capabilities).map(e=>(0,z.jsx)(P,{variant:`secondary`,className:`text-[10px]`,children:e},e))})]})]})]}),De.length>0&&(0,z.jsxs)(z.Fragment,{children:[(0,z.jsx)(Uc,{}),(0,z.jsxs)(`details`,{className:`group`,children:[(0,z.jsxs)(`summary`,{className:`flex cursor-pointer list-none items-center justify-between gap-2 text-sm font-medium`,children:[(0,z.jsx)(`span`,{children:`Recent messages`}),(0,z.jsxs)(`span`,{className:`text-[11px] font-normal text-muted-foreground`,children:[De.length,` `,(0,z.jsx)(`span`,{className:`group-open:hidden`,children:`· show`}),(0,z.jsx)(`span`,{className:`hidden group-open:inline`,children:`· hide`})]})]}),(0,z.jsx)(`div`,{className:`mt-2 space-y-2`,children:De.map(e=>(0,z.jsxs)(`div`,{className:`rounded border border-border p-2 text-xs space-y-0.5 min-w-0`,children:[(0,z.jsxs)(`div`,{className:`flex items-center gap-1 text-muted-foreground min-w-0`,children:[(0,z.jsx)(`span`,{className:`font-medium text-foreground truncate shrink-0 max-w-[40%]`,children:kt(e.from,n)}),(0,z.jsx)(`span`,{className:`shrink-0`,children:`→`}),(0,z.jsx)(`span`,{className:`truncate max-w-[40%]`,children:kt(e.to,n)}),(0,z.jsxs)(`span`,{className:`ml-auto shrink-0 text-[10px]`,children:[(0,z.jsxs)(`span`,{className:`opacity-40 mr-1`,children:[`#`,e.id]}),yt(s,e.createdAt)]})]}),(0,z.jsx)(`div`,{className:`text-foreground whitespace-pre-wrap break-words line-clamp-3`,children:It(e)})]},e.id))})]})]})]})}),(0,z.jsx)(Yl,{value:`timeline`,className:`min-h-0 overflow-y-auto overflow-x-hidden`,children:(0,z.jsx)(od,{agentId:O.id,open:e&&E===`timeline`,now:s})}),(0,z.jsx)(Yl,{value:`logs`,className:`min-h-0 overflow-y-auto overflow-x-hidden`,children:Je&&Ye?(0,z.jsx)(`div`,{className:`p-4`,children:(0,z.jsx)(Cu,{orchestratorId:Ye.id,session:Je})}):(0,z.jsx)(`div`,{className:`p-4 text-sm text-muted-foreground`,children:`No session logs available for this agent.`})})]})]})}),D&&(0,z.jsx)(Su,{open:de,onOpenChange:e=>void je(e),orchestratorId:D.orchestratorId,session:D.session,interactive:D.interactive||Qe})]})}function td({memory:e,now:t,onOpen:n}){let r=e.sensitivity===`secret`?`bg-red-500/10 text-red-400 border-red-500/30`:e.sensitivity===`sensitive`?`bg-yellow-500/10 text-yellow-400 border-yellow-500/30`:`bg-zinc-500/10 text-zinc-400 border-zinc-500/30`;return(0,z.jsx)(`button`,{onClick:n,className:`w-full rounded-md border border-border p-2 text-left text-xs hover:border-zinc-600 transition-colors`,children:(0,z.jsxs)(`div`,{className:`flex items-start justify-between gap-2`,children:[(0,z.jsxs)(`div`,{className:`min-w-0`,children:[(0,z.jsxs)(`div`,{className:`flex flex-wrap gap-1 mb-1`,children:[(0,z.jsx)(P,{variant:`secondary`,className:`text-[10px]`,children:e.type}),(0,z.jsx)(P,{variant:`outline`,className:`text-[10px] font-mono`,children:e.scope}),(0,z.jsx)(P,{className:`text-[10px] ${r}`,children:e.sensitivity})]}),(0,z.jsx)(`div`,{className:`font-medium truncate`,children:e.title}),(0,z.jsx)(`div`,{className:`text-muted-foreground line-clamp-2 mt-0.5`,children:e.content})]}),(0,z.jsx)(`div`,{className:`shrink-0 text-right text-[10px] text-muted-foreground`,title:jt(e.lastAccessedAt??e.updatedAt),children:yt(t,e.lastAccessedAt??e.updatedAt)})]})})}function nd(e){return e>=.8?`text-red-400`:e>=.6?`text-yellow-400`:`text-emerald-400`}function rd({label:e,value:t,onClick:n,title:r,copyLabel:i}){let a=`block w-full break-all text-left font-mono text-xs leading-snug ${n?`text-muted-foreground transition-colors hover:text-foreground`:`text-foreground`}`;return(0,z.jsxs)(`div`,{className:`min-w-0 space-y-0.5`,children:[(0,z.jsxs)(`div`,{className:`flex items-center justify-between gap-2`,children:[(0,z.jsx)(`span`,{className:`text-[11px] uppercase tracking-wide text-muted-foreground`,children:e}),(0,z.jsx)(kn,{value:t,label:i??`Copy ${e.toLowerCase()}`,size:`icon-xs`,className:`-my-1 shrink-0 text-muted-foreground`})]}),n?(0,z.jsx)(`button`,{type:`button`,className:a,title:r,onClick:n,children:t}):(0,z.jsx)(`div`,{className:a,title:r,children:t})]})}function id({context:e,tokens:t,history:n,now:r}){let i=Number.isFinite(e.utilization)?Math.max(0,Math.min(1,e.utilization)):null,a=i===null?null:Math.round(i*100),o=i===null?`text-muted-foreground`:nd(i);return(0,z.jsxs)(`div`,{children:[(0,z.jsxs)(`div`,{className:`mb-2 flex items-center justify-between gap-2 min-w-0`,children:[(0,z.jsx)(`h3`,{className:`shrink-0 text-sm font-medium`,children:`Context`}),(0,z.jsxs)(`span`,{className:`truncate text-[11px] text-muted-foreground`,title:`source ${e.source}, confidence ${e.confidence}`,children:[e.lifecycleState,` · `,e.source,`/`,e.confidence]})]}),(0,z.jsxs)(`div`,{className:`flex items-baseline gap-2`,children:[(0,z.jsx)(`span`,{className:`text-2xl font-semibold leading-none ${o}`,children:a===null?`—`:`${a}%`}),t&&(0,z.jsxs)(`span`,{className:`text-xs text-muted-foreground`,children:[t,` tokens`]})]}),n.length>1&&(0,z.jsx)(ad,{snapshots:n,now:r}),e.warmTopics.length>0&&(0,z.jsxs)(`div`,{className:`mt-2`,children:[(0,z.jsx)(`span`,{className:`text-[11px] text-muted-foreground`,children:`Warm topics`}),(0,z.jsx)(`div`,{className:`mt-1 flex flex-wrap gap-1`,children:e.warmTopics.map(e=>(0,z.jsx)(P,{variant:`outline`,className:`text-[10px]`,children:e},e))})]})]})}function ad({snapshots:e,now:t}){let n=e.slice(-24),[r,i]=(0,R.useState)(null);if(n.length<2)return null;let a=n.length,o=e=>Math.max(0,Math.min(1,e)),s=e=>({x:e/(a-1)*100,y:40-o(n[e].utilization)*40}),c=n.map((e,t)=>{let n=s(t);return`${n.x.toFixed(2)},${n.y.toFixed(2)}`}).join(` `),l=nd(o(n[a-1].utilization)),u=r==null?n[a-1]:n[r],d=s(r??a-1);return(0,z.jsxs)(`div`,{className:`mt-2`,children:[(0,z.jsxs)(`div`,{className:`relative`,children:[(0,z.jsxs)(`svg`,{viewBox:`0 0 100 40`,preserveAspectRatio:`none`,className:`h-12 w-full`,"aria-label":`Context utilization history`,children:[(0,z.jsx)(`line`,{x1:`0`,y1:`20`,x2:`100`,y2:`20`,className:`stroke-muted-foreground/15`,strokeWidth:`0.5`,strokeDasharray:`2 2`}),(0,z.jsx)(`polygon`,{points:`0,40 ${c} 100,40`,className:`fill-current text-primary/10`}),(0,z.jsx)(`polyline`,{points:c,fill:`none`,className:`stroke-current ${l}`,strokeWidth:`1.25`,strokeLinejoin:`round`,strokeLinecap:`round`,vectorEffect:`non-scaling-stroke`}),(0,z.jsx)(`circle`,{cx:d.x,cy:d.y,r:`1.6`,className:`fill-current ${l}`,vectorEffect:`non-scaling-stroke`})]}),(0,z.jsx)(`div`,{className:`absolute inset-0 flex`,children:n.map((e,t)=>(0,z.jsx)(`button`,{type:`button`,"aria-label":`${Math.round(o(e.utilization)*100)}% utilization`,className:`h-full flex-1`,onClick:()=>i(t===r?null:t)},e.id))})]}),(0,z.jsxs)(`div`,{className:`mt-1 flex items-center justify-between text-[10px] text-muted-foreground`,children:[(0,z.jsx)(`span`,{children:r==null?(0,z.jsxs)(z.Fragment,{children:[a,` samples · since `,yt(t,n[0].capturedAt)]}):(0,z.jsxs)(z.Fragment,{children:[(0,z.jsxs)(`span`,{className:l,children:[Math.round(o(u.utilization)*100),`%`]}),` · `,new Date(u.capturedAt).toLocaleTimeString()]})}),(0,z.jsx)(`span`,{children:`0–100%`})]})]})}function od({agentId:e,open:t,now:n}){let[r,i]=(0,R.useState)([]),[a,o]=(0,R.useState)(!1),[s,c]=(0,R.useState)(null),[l,u]=(0,R.useState)(50),d=(0,R.useCallback)(t=>{o(!0),c(null);let n=!1;return g(`GET`,`/agents/`+encodeURIComponent(e)+`/timeline?limit=`+t).then(e=>{n||(i(e),u(t))}).catch(e=>{n||c(e.message)}).finally(()=>{n||o(!1)}),()=>{n=!0}},[e]);return(0,R.useEffect)(()=>{if(t)return d(50)},[t,e,d]),(0,z.jsxs)(`div`,{className:`p-4 space-y-3 min-w-0`,children:[(0,z.jsxs)(`div`,{className:`flex items-center justify-between gap-2`,children:[(0,z.jsx)(`h3`,{className:`text-sm font-medium`,children:`Timeline`}),(0,z.jsxs)(F,{size:`sm`,variant:`outline`,className:`h-7 text-xs`,disabled:a,onClick:()=>d(l),children:[(0,z.jsx)(re,{className:`w-3 h-3 mr-1`}),`Refresh`]})]}),s&&(0,z.jsx)(`div`,{className:`text-xs text-red-300`,children:s}),!s&&r.length===0&&!a&&(0,z.jsx)(`div`,{className:`text-xs text-muted-foreground`,children:`No timeline activity recorded for this agent.`}),(0,z.jsx)(`div`,{className:`space-y-1.5`,children:r.map((e,t)=>(0,z.jsx)(cd,{entry:e,now:n},`${e.ts}:${e.source}:${t}`))}),r.length>=l&&l<200&&(0,z.jsx)(F,{size:`sm`,variant:`outline`,className:`w-full h-7 text-xs`,disabled:a,onClick:()=>d(200),children:`Load full timeline`})]})}function sd(e){return e.metadata?.mismatch===!0||e.metadata?.stalled===!0?(0,z.jsx)(ze,{className:`w-3.5 h-3.5 text-amber-400`}):e.source===`command`?(0,z.jsx)(Ee,{className:`w-3.5 h-3.5 text-sky-400`}):e.source===`delivery`?(0,z.jsx)(u,{className:`w-3.5 h-3.5 text-violet-400`}):e.kind===`state`?(0,z.jsx)(b,{className:`w-3.5 h-3.5 text-emerald-400`}):(0,z.jsx)(de,{className:`w-3.5 h-3.5 text-muted-foreground`})}function cd({entry:e,now:t}){let n=typeof e.metadata?.status==`string`?e.metadata.status:``,r=/fail|error|poison|dead/i.test(n),i=e.metadata?.fromState,a=e.metadata?.toState,o=typeof i==`string`&&typeof a==`string`?`${i} → ${a}`:null;return(0,z.jsxs)(`div`,{className:`flex gap-2 rounded border border-border px-2 py-1.5 text-xs min-w-0`,children:[(0,z.jsx)(`div`,{className:`shrink-0 mt-0.5`,children:sd(e)}),(0,z.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,z.jsxs)(`div`,{className:`flex items-center gap-2 min-w-0`,children:[(0,z.jsx)(`span`,{className:`font-medium truncate ${r?`text-red-300`:`text-foreground`}`,children:e.title}),(0,z.jsx)(`span`,{className:`ml-auto shrink-0 text-[10px] text-muted-foreground`,title:jt(e.ts),children:yt(t,e.ts)})]}),o&&(0,z.jsx)(`div`,{className:`text-muted-foreground font-mono text-[11px]`,children:o}),e.detail&&(0,z.jsx)(`div`,{className:`text-muted-foreground whitespace-pre-wrap break-words line-clamp-3`,children:e.detail})]})]})}function ld(e){return Kt(e)&&typeof e.name==`string`&&typeof e.version==`string`?{name:e.name,version:e.version}:null}function ud(e){return Kt(e)?Object.entries(e).filter(e=>typeof e[1]==`number`):[]}var dd={oom:`bg-red-500/20 text-red-400`,killed:`bg-red-500/20 text-red-400`,"provider-crash":`bg-orange-500/20 text-orange-400`,"token-401":`bg-amber-500/20 text-amber-400`,"onboarding-gate":`bg-amber-500/20 text-amber-400`,"transport-loss":`bg-sky-500/20 text-sky-400`,"clean-exit":`bg-emerald-500/20 text-emerald-400`,unknown:`bg-zinc-500/20 text-zinc-400`};function fd({report:e,now:t}){let n=e.diagnosis,r=dd[n.cause]??`bg-zinc-500/20 text-zinc-400`;return(0,z.jsxs)(`div`,{children:[(0,z.jsxs)(`h3`,{className:`text-sm font-medium mb-2 flex items-center gap-1.5`,children:[(0,z.jsx)($e,{className:`w-3.5 h-3.5 text-muted-foreground`}),`Why it died`]}),(0,z.jsxs)(`div`,{className:`rounded-md border border-border bg-muted/30 px-3 py-2.5 text-xs space-y-2`,children:[(0,z.jsxs)(`div`,{className:`flex items-center gap-2 flex-wrap`,children:[(0,z.jsx)(P,{className:r,children:n.cause}),(0,z.jsxs)(`span`,{className:`text-muted-foreground`,children:[n.confidence,` confidence`]}),(0,z.jsx)(`span`,{className:`ml-auto text-[10px] text-muted-foreground`,title:jt(n.detectedAt),children:yt(t,n.detectedAt)})]}),(0,z.jsx)(`div`,{className:`font-medium text-foreground`,children:n.summary}),n.evidence.length>0&&(0,z.jsx)(`ul`,{className:`space-y-0.5 text-muted-foreground`,children:n.evidence.map((e,t)=>(0,z.jsxs)(`li`,{className:`flex gap-1.5`,children:[(0,z.jsx)(`span`,{className:`shrink-0 text-muted-foreground/50`,children:`·`}),(0,z.jsx)(`span`,{children:e})]},t))}),(n.signal!=null||n.exitCode!=null||n.oom===!0||n.heartbeatGapMs!=null||(n.activeWork?.length??0)>0)&&(0,z.jsxs)(`div`,{className:`grid grid-cols-2 gap-x-3 gap-y-1 text-[11px] pt-0.5`,children:[n.signal!=null&&(0,z.jsxs)(`div`,{children:[(0,z.jsx)(`span`,{className:`text-muted-foreground`,children:`Signal`}),(0,z.jsx)(`div`,{className:`font-mono`,children:n.signal})]}),n.exitCode!=null&&(0,z.jsxs)(`div`,{children:[(0,z.jsx)(`span`,{className:`text-muted-foreground`,children:`Exit code`}),(0,z.jsx)(`div`,{className:`font-mono`,children:n.exitCode})]}),n.oom===!0&&(0,z.jsxs)(`div`,{children:[(0,z.jsx)(`span`,{className:`text-muted-foreground`,children:`OOM`}),(0,z.jsx)(`div`,{children:`yes`})]}),n.heartbeatGapMs!=null&&(0,z.jsxs)(`div`,{children:[(0,z.jsx)(`span`,{className:`text-muted-foreground`,children:`Heartbeat gap`}),(0,z.jsxs)(`div`,{children:[Math.round(n.heartbeatGapMs/1e3),`s`]})]}),(n.activeWork?.length??0)>0&&(0,z.jsxs)(`div`,{className:`col-span-2 min-w-0`,children:[(0,z.jsx)(`span`,{className:`text-muted-foreground`,children:`Active work`}),(0,z.jsx)(`div`,{className:`truncate`,children:n.activeWork.join(`, `)})]})]}),n.logTail&&n.logTail.length>0&&(0,z.jsx)(`pre`,{className:`mt-1 max-h-28 overflow-auto whitespace-pre-wrap break-words rounded border border-border bg-black/20 p-2 text-[11px] text-muted-foreground`,children:n.logTail.slice(-5).join(`
21
- `)})]})]})}function pd(e){if(!Kt(e)||typeof e.lastError!=`string`)return null;let t=Kt(e.systemd)?{unit:typeof e.systemd.unit==`string`?e.systemd.unit:void 0,activeState:typeof e.systemd.activeState==`string`?e.systemd.activeState:void 0,subState:typeof e.systemd.subState==`string`?e.systemd.subState:void 0,result:typeof e.systemd.result==`string`?e.systemd.result:void 0,execMainCode:typeof e.systemd.execMainCode==`string`?e.systemd.execMainCode:void 0,execMainStatus:typeof e.systemd.execMainStatus==`string`?e.systemd.execMainStatus:void 0}:void 0;return{lastError:e.lastError,detectedAt:typeof e.detectedAt==`number`?e.detectedAt:void 0,runtimeMs:typeof e.runtimeMs==`number`?e.runtimeMs:void 0,logFile:typeof e.logFile==`string`?e.logFile:void 0,logBytes:typeof e.logBytes==`number`?e.logBytes:void 0,logEmpty:typeof e.logEmpty==`boolean`?e.logEmpty:void 0,logTail:Array.isArray(e.logTail)?e.logTail.filter(e=>typeof e==`string`):void 0,systemd:t,unavailable:Array.isArray(e.unavailable)?e.unavailable.filter(e=>typeof e==`string`):void 0}}function md({className:e,children:t,...n}){return(0,z.jsxs)(is,{"data-slot":`scroll-area`,className:_(`relative`,e),...n,children:[(0,z.jsx)(as,{"data-slot":`scroll-area-viewport`,className:`size-full rounded-[inherit] transition-[color,box-shadow] outline-none focus-visible:ring-[3px] focus-visible:ring-ring/50 focus-visible:outline-1`,children:t}),(0,z.jsx)(hd,{}),(0,z.jsx)(os,{})]})}function hd({className:e,orientation:t=`vertical`,...n}){return(0,z.jsx)(Mo,{"data-slot":`scroll-area-scrollbar`,"data-orientation":t,orientation:t,className:_(`flex touch-none p-px transition-colors select-none data-horizontal:h-2.5 data-horizontal:flex-col data-horizontal:border-t data-horizontal:border-t-transparent data-vertical:h-full data-vertical:w-2.5 data-vertical:border-l data-vertical:border-l-transparent`,e),...n,children:(0,z.jsx)(Uo,{"data-slot":`scroll-area-thumb`,className:`relative flex-1 rounded-full bg-border`})})}function gd(){let e=A(e=>e.channelDetailOpen),t=A(e=>e.channelDetailId),n=A(e=>e.channels),r=A(e=>e.messages),i=A(e=>e.agentsById),a=ut(),o=A(e=>e.closeChannelDetail),s=n.find(e=>e.id===t)||null,c=Dt(s),l=(0,R.useMemo)(()=>s?r.filter(e=>Ft(e,s)).sort((e,t)=>t.id-e.id).slice(0,8):[],[r,s]);return(0,z.jsx)(q,{open:e,onOpenChange:e=>!e&&o(),children:(0,z.jsxs)(Hl,{className:`w-full max-w-[100dvw] sm:max-w-md lg:max-w-lg p-0`,children:[(0,z.jsx)(Ul,{className:`shrink-0 p-4 border-b border-border`,children:(0,z.jsxs)(`div`,{className:`flex items-center gap-2 min-w-0`,children:[(0,z.jsx)(P,{className:vt(c.tone),children:c.label}),(0,z.jsx)(Wl,{className:`text-base truncate`,children:s?.name||`Channel`})]})}),(0,z.jsx)(md,{className:`flex-1 min-h-0`,children:(0,z.jsxs)(`div`,{className:`p-4 space-y-4`,children:[s&&(0,z.jsxs)(z.Fragment,{children:[(0,z.jsxs)(`div`,{children:[(0,z.jsx)(`h3`,{className:`text-sm font-medium mb-2`,children:`Route`}),(0,z.jsxs)(`div`,{className:`space-y-1 text-sm`,children:[(0,z.jsxs)(`div`,{className:`flex justify-between gap-2`,children:[(0,z.jsx)(`span`,{className:`text-muted-foreground shrink-0`,children:`Type`}),(0,z.jsx)(`span`,{className:`truncate`,children:s.type})]}),(0,z.jsxs)(`div`,{className:`flex justify-between gap-2`,children:[(0,z.jsx)(`span`,{className:`text-muted-foreground shrink-0`,children:`Direction`}),(0,z.jsx)(`span`,{className:`truncate`,children:s.direction})]}),s.target&&(0,z.jsxs)(`div`,{className:`flex justify-between gap-2`,children:[(0,z.jsx)(`span`,{className:`text-muted-foreground shrink-0`,children:`Target`}),(0,z.jsx)(`span`,{className:`truncate`,children:s.target})]}),(0,z.jsxs)(`div`,{className:`flex justify-between gap-2`,children:[(0,z.jsx)(`span`,{className:`text-muted-foreground shrink-0`,children:`Agent`}),(0,z.jsx)(`span`,{className:`truncate`,children:s.agentId})]}),(0,z.jsxs)(`div`,{className:`flex justify-between gap-2`,children:[(0,z.jsx)(`span`,{className:`text-muted-foreground shrink-0`,children:`Transport`}),(0,z.jsx)(`span`,{className:`truncate`,children:s.transport})]}),(0,z.jsxs)(`div`,{className:`flex justify-between gap-2`,children:[(0,z.jsx)(`span`,{className:`text-muted-foreground shrink-0`,children:`Last seen`}),(0,z.jsx)(`span`,{className:`shrink-0`,children:yt(a,s.lastSeen)})]})]})]}),Tt(s.capabilities).length>0&&(0,z.jsxs)(z.Fragment,{children:[(0,z.jsx)(Uc,{}),(0,z.jsxs)(`div`,{children:[(0,z.jsx)(`h3`,{className:`text-sm font-medium mb-2`,children:`Capabilities`}),(0,z.jsx)(`div`,{className:`flex flex-wrap gap-1`,children:Tt(s.capabilities).map(e=>(0,z.jsx)(P,{variant:`secondary`,className:`text-[10px]`,children:e},e))})]})]}),s.meta&&Object.keys(s.meta).length>0&&(0,z.jsxs)(z.Fragment,{children:[(0,z.jsx)(Uc,{}),(0,z.jsxs)(`div`,{children:[(0,z.jsx)(`h3`,{className:`text-sm font-medium mb-2`,children:`Metadata`}),(0,z.jsx)(`div`,{className:`space-y-1 text-sm`,children:Object.entries(s.meta).map(([e,t])=>(0,z.jsxs)(`div`,{className:`flex justify-between gap-2 min-w-0`,children:[(0,z.jsx)(`span`,{className:`text-muted-foreground shrink-0`,children:e}),(0,z.jsx)(`span`,{className:`truncate`,children:String(t)})]},e))})]})]})]}),l.length>0&&(0,z.jsxs)(z.Fragment,{children:[(0,z.jsx)(Uc,{}),(0,z.jsxs)(`div`,{children:[(0,z.jsx)(`h3`,{className:`text-sm font-medium mb-2`,children:`Recent Messages`}),(0,z.jsx)(`div`,{className:`space-y-2`,children:l.map(e=>(0,z.jsxs)(`div`,{className:`rounded border border-border p-2 text-xs space-y-0.5 min-w-0`,children:[(0,z.jsxs)(`div`,{className:`flex items-center gap-1 text-muted-foreground min-w-0`,children:[(0,z.jsx)(`span`,{className:`font-medium text-foreground truncate shrink-0 max-w-[40%]`,children:kt(e.from,i)}),(0,z.jsx)(`span`,{className:`shrink-0`,children:`→`}),(0,z.jsx)(`span`,{className:`truncate max-w-[40%]`,children:kt(e.to,i)}),(0,z.jsxs)(`span`,{className:`ml-auto shrink-0 text-[10px]`,children:[(0,z.jsxs)(`span`,{className:`opacity-40 mr-1`,children:[`#`,e.id]}),yt(a,e.createdAt)]})]}),(0,z.jsx)(`div`,{className:`text-foreground whitespace-pre-wrap break-words line-clamp-3`,children:It(e)})]},e.id))})]})]})]})})]})})}var _d=!1;function vd(e,t){let n=R.useRef(!1),r=R.useRef(t);r.current=t,R.useEffect(()=>{if(!e||!r.current)return;_d=!1,window.history.pushState({dialogGuard:!0},``),n.current=!0;function t(){if(_d){_d=!1;return}n.current&&(n.current=!1,r.current?.(!1))}return window.addEventListener(`popstate`,t),()=>{window.removeEventListener(`popstate`,t),n.current&&(n.current=!1,_d=!0,window.history.back())}},[e])}function yd({...e}){return vd(e.open,e.onOpenChange),(0,z.jsx)(Tr,{"data-slot":`dialog`,...e})}function bd({...e}){return(0,z.jsx)(Er,{"data-slot":`dialog-portal`,...e})}function Z({className:e,blur:t=!0,...n}){return(0,z.jsx)(Dr,{"data-slot":`dialog-overlay`,className:_(`fixed inset-0 isolate z-50 bg-black/10 duration-100 data-open:animate-in data-open:fade-in-0 data-closed:animate-out data-closed:fade-out-0`,t&&`supports-backdrop-filter:backdrop-blur-xs`,e),...n})}function xd({className:e,children:t,showCloseButton:n=!0,blurOverlay:r=!0,...i}){return(0,z.jsxs)(bd,{children:[(0,z.jsx)(Z,{blur:r}),(0,z.jsxs)(Or,{"data-slot":`dialog-content`,className:_(`fixed top-1/2 left-1/2 z-50 grid w-full max-w-[calc(100%-2rem)] -translate-x-1/2 -translate-y-1/2 gap-4 rounded-xl bg-popover p-4 text-sm text-popover-foreground ring-1 ring-foreground/10 duration-100 outline-none data-open:animate-in data-open:fade-in-0 data-open:zoom-in-95 data-closed:animate-out data-closed:fade-out-0 data-closed:zoom-out-95`,e),...i,children:[t,n&&(0,z.jsx)(jr,{"data-slot":`dialog-close`,asChild:!0,children:(0,z.jsxs)(F,{variant:`ghost`,className:`absolute top-2 right-2`,size:`icon-sm`,children:[(0,z.jsx)(Me,{}),(0,z.jsx)(`span`,{className:`sr-only`,children:`Close`})]})})]})]})}function Sd({className:e,...t}){return(0,z.jsx)(`div`,{"data-slot":`dialog-header`,className:_(`flex flex-col gap-2`,e),...t})}function Cd({className:e,showCloseButton:t=!1,children:n,...r}){return(0,z.jsxs)(`div`,{"data-slot":`dialog-footer`,className:_(`-mx-4 -mb-4 flex flex-col-reverse gap-2 rounded-b-xl border-t bg-muted/50 p-4 sm:flex-row sm:justify-end`,e),...r,children:[n,t&&(0,z.jsx)(jr,{asChild:!0,children:(0,z.jsx)(F,{variant:`outline`,children:`Close`})})]})}function wd({className:e,...t}){return(0,z.jsx)(kr,{"data-slot":`dialog-title`,className:_(`font-heading text-base leading-none font-medium`,e),...t})}function Td({className:e,...t}){return(0,z.jsx)(Ar,{"data-slot":`dialog-description`,className:_(`text-sm text-muted-foreground *:[a]:underline *:[a]:underline-offset-3 *:[a]:hover:text-foreground`,e),...t})}function Ed({className:e,...t}){return(0,z.jsx)(`textarea`,{"data-slot":`textarea`,className:_(`flex field-sizing-content min-h-16 w-full rounded-lg border border-input bg-transparent px-2.5 py-2 text-base transition-colors outline-none placeholder:text-muted-foreground focus-visible:border-ring focus-visible:ring-3 focus-visible:ring-ring/50 disabled:cursor-not-allowed disabled:bg-input/50 disabled:opacity-50 aria-invalid:border-destructive aria-invalid:ring-3 aria-invalid:ring-destructive/20 md:text-sm dark:bg-input/30 dark:disabled:bg-input/80 dark:aria-invalid:border-destructive/50 dark:aria-invalid:ring-destructive/40`,e),...t})}function Q({className:e,...t}){return(0,z.jsx)(xo,{"data-slot":`label`,className:_(`flex items-center gap-2 text-sm leading-none font-medium select-none group-data-[disabled=true]:pointer-events-none group-data-[disabled=true]:opacity-50 peer-disabled:cursor-not-allowed peer-disabled:opacity-50`,e),...t})}function Dd(){let e=A(e=>e.composeOpen),t=A(e=>e.compose),n=A(e=>e.replyTo),r=A(e=>e.set),i=A(e=>e.doSend),a=A(e=>e.cancelReply),o=Ic();function s(){r({composeOpen:!1}),a()}function c(e){r({compose:{...t,...e}})}return(0,z.jsx)(yd,{open:e,onOpenChange:e=>!e&&s(),children:(0,z.jsxs)(xd,{className:`max-w-lg`,children:[(0,z.jsx)(Sd,{children:(0,z.jsx)(wd,{children:n?`Reply to #${n.id}`:`Compose Message`})}),(0,z.jsxs)(`div`,{className:`space-y-3`,children:[(0,z.jsxs)(`div`,{children:[(0,z.jsx)(Q,{children:`From`}),(0,z.jsxs)(`select`,{className:`w-full mt-1 rounded-md border border-input bg-background px-3 py-2 text-sm`,value:t.from,onChange:e=>c({from:e.target.value}),children:[(0,z.jsx)(`option`,{value:``,children:`Select agent...`}),o.map(e=>(0,z.jsx)(`option`,{value:e.id,children:j(e)},e.id))]})]}),(0,z.jsxs)(`div`,{children:[(0,z.jsx)(Q,{children:`To`}),(0,z.jsx)(I,{value:t.to,onChange:e=>c({to:e.target.value}),placeholder:`agent-id, tag:name, cap:name, or broadcast`})]}),(0,z.jsxs)(`div`,{children:[(0,z.jsx)(Q,{children:`Subject`}),(0,z.jsx)(I,{value:t.subject,onChange:e=>c({subject:e.target.value}),placeholder:`Optional subject...`})]}),(0,z.jsxs)(`div`,{children:[(0,z.jsx)(Q,{children:`Channel`}),(0,z.jsx)(I,{value:t.channel,onChange:e=>c({channel:e.target.value}),placeholder:`Optional channel...`})]}),(0,z.jsxs)(`div`,{children:[(0,z.jsx)(Q,{children:`Message`}),(0,z.jsx)(Ed,{value:t.body,onChange:e=>c({body:e.target.value}),rows:4,placeholder:`Message body...`,autoFocus:!0})]}),(0,z.jsxs)(`label`,{className:`flex items-center gap-2`,children:[(0,z.jsx)(Hc,{checked:t.claimable,onCheckedChange:e=>c({claimable:e})}),(0,z.jsx)(`span`,{className:`text-sm text-muted-foreground`,children:`Claimable task`})]})]}),(0,z.jsxs)(Cd,{children:[(0,z.jsx)(F,{variant:`outline`,onClick:s,children:`Cancel`}),(0,z.jsx)(F,{onClick:i,children:`Send`})]})]})})}function Od(){let e=A(e=>e.confirmModal),t=A(e=>e.set);function n(){t({confirmModal:{show:!1,title:``,message:``,action:null}})}return(0,z.jsx)(yd,{open:e.show,onOpenChange:e=>!e&&n(),children:(0,z.jsxs)(xd,{className:`sm:max-w-sm`,children:[(0,z.jsxs)(Sd,{children:[(0,z.jsx)(wd,{children:e.title}),(0,z.jsx)(Td,{children:e.message})]}),(0,z.jsxs)(Cd,{children:[(0,z.jsx)(F,{variant:`outline`,onClick:n,children:`Cancel`}),(0,z.jsx)(F,{variant:`destructive`,onClick:()=>{e.action?.(),n()},children:`Confirm`})]})]})})}function kd(){let e=A(e=>e.errorModal),t=A(e=>e.set);function n(){t({errorModal:{show:!1,title:``,message:``}})}return(0,z.jsx)(yd,{open:e.show,onOpenChange:e=>!e&&n(),children:(0,z.jsxs)(xd,{className:`sm:max-w-sm`,children:[(0,z.jsxs)(Sd,{children:[(0,z.jsx)(wd,{children:e.title}),(0,z.jsx)(Td,{children:e.message})]}),(0,z.jsx)(Cd,{children:(0,z.jsx)(F,{onClick:n,children:`OK`})})]})})}function Ad(){let e=A(e=>e.renameModal),t=A(e=>e.set),n=A(e=>e.doRename);function r(){t({renameModal:{show:!1,agentId:``,label:``}})}return(0,z.jsx)(yd,{open:e.show,onOpenChange:e=>!e&&r(),children:(0,z.jsxs)(xd,{className:`sm:max-w-sm`,children:[(0,z.jsx)(Sd,{children:(0,z.jsx)(wd,{children:`Rename Agent`})}),(0,z.jsxs)(`div`,{className:`space-y-3`,children:[(0,z.jsx)(Q,{children:`Label`}),(0,z.jsx)(I,{value:e.label,onChange:n=>t({renameModal:{...e,label:n.target.value}}),onKeyDown:e=>e.key===`Enter`&&n(),placeholder:`Human-friendly name...`,autoFocus:!0}),(0,z.jsx)(`p`,{className:`text-xs text-muted-foreground`,children:`Leave empty to clear the label.`})]}),(0,z.jsxs)(Cd,{children:[(0,z.jsx)(F,{variant:`outline`,onClick:r,children:`Cancel`}),(0,z.jsx)(F,{onClick:n,children:`Save`})]})]})})}function jd(){let e=A(e=>e.pairInviteOpen),t=A(e=>e.pairInvite),n=A(e=>e.set),r=A(e=>e.closePairInvite),i=A(e=>e.doCreatePair),a=Ic();function o(e){n({pairInvite:{...t,...e}})}return(0,z.jsx)(yd,{open:e,onOpenChange:e=>!e&&r(),children:(0,z.jsxs)(xd,{className:`sm:max-w-sm`,children:[(0,z.jsx)(Sd,{children:(0,z.jsx)(wd,{children:`Pair Agents`})}),(0,z.jsxs)(`div`,{className:`space-y-3`,children:[(0,z.jsxs)(`div`,{children:[(0,z.jsx)(Q,{children:`Requester`}),(0,z.jsxs)(`select`,{className:`w-full mt-1 rounded-md border border-input bg-background px-3 py-2 text-sm`,value:t.requesterId,onChange:e=>o({requesterId:e.target.value}),children:[(0,z.jsx)(`option`,{value:``,children:`Select agent...`}),a.map(e=>(0,z.jsx)(`option`,{value:e.id,children:j(e)},e.id))]})]}),(0,z.jsxs)(`div`,{children:[(0,z.jsx)(Q,{children:`Target`}),(0,z.jsxs)(`select`,{className:`w-full mt-1 rounded-md border border-input bg-background px-3 py-2 text-sm`,value:t.targetId,onChange:e=>o({targetId:e.target.value}),children:[(0,z.jsx)(`option`,{value:``,children:`Select agent...`}),a.map(e=>(0,z.jsx)(`option`,{value:e.id,children:j(e)},e.id))]})]}),(0,z.jsxs)(`div`,{children:[(0,z.jsx)(Q,{children:`Objective`}),(0,z.jsx)(I,{value:t.objective,onChange:e=>o({objective:e.target.value}),placeholder:`What should they work on?`})]})]}),(0,z.jsxs)(Cd,{children:[(0,z.jsx)(F,{variant:`outline`,onClick:r,children:`Cancel`}),(0,z.jsx)(F,{onClick:i,children:`Create Pair`})]})]})})}function Md(){let e=A(e=>e.pairMessageOpen),t=A(e=>e.pairMessage),n=A(e=>e.set),r=A(e=>e.closePairMessage),i=A(e=>e.doSendPairMessage);function a(e){n({pairMessage:{...t,...e}})}return(0,z.jsx)(yd,{open:e,onOpenChange:e=>!e&&r(),children:(0,z.jsxs)(xd,{className:`sm:max-w-sm`,children:[(0,z.jsx)(Sd,{children:(0,z.jsx)(wd,{children:`Pair Message`})}),(0,z.jsxs)(`div`,{className:`space-y-3`,children:[(0,z.jsxs)(`div`,{children:[(0,z.jsx)(Q,{children:`Subject`}),(0,z.jsx)(I,{value:t.subject,onChange:e=>a({subject:e.target.value}),placeholder:`Optional subject...`})]}),(0,z.jsxs)(`div`,{children:[(0,z.jsx)(Q,{children:`Message`}),(0,z.jsx)(Ed,{value:t.body,onChange:e=>a({body:e.target.value}),rows:4,placeholder:`Message body...`,autoFocus:!0})]})]}),(0,z.jsxs)(Cd,{children:[(0,z.jsx)(F,{variant:`outline`,onClick:r,children:`Cancel`}),(0,z.jsx)(F,{onClick:i,children:`Send`})]})]})})}var $=(0,R.lazy)(()=>L(()=>import(`./formatted-body-impl-DBbmythT.js`).then(e=>({default:e.FormattedBody})),__vite__mapDeps([14,1,5,3,6,8,9]),import.meta.url));function Nd(e){return(0,z.jsx)(R.Suspense,{fallback:(0,z.jsx)(`span`,{className:e.className,children:e.text}),children:(0,z.jsx)($,{...e})})}function Pd(){let e=A(e=>e.threadOpen),t=A(e=>e.threadMessages),n=A(e=>e.agentsById),r=ut(),i=A(e=>e.set);return(0,z.jsx)(yd,{open:e,onOpenChange:e=>!e&&i({threadOpen:!1}),children:(0,z.jsxs)(xd,{className:`max-w-2xl max-h-[80vh]`,children:[(0,z.jsx)(Sd,{children:(0,z.jsxs)(wd,{children:[`Thread (`,t.length,` messages)`]})}),(0,z.jsx)(md,{className:`max-h-[60vh]`,children:(0,z.jsx)(`div`,{className:`space-y-3 pr-4`,children:t.map(e=>(0,z.jsxs)(`div`,{className:`rounded-lg border border-border p-3 space-y-1`,children:[(0,z.jsxs)(`div`,{className:`flex items-center gap-2 text-sm`,children:[(0,z.jsx)(`span`,{className:`font-medium`,children:kt(e.from,n)}),(0,z.jsx)(`span`,{className:`text-muted-foreground`,children:`→`}),(0,z.jsx)(`span`,{className:`text-muted-foreground`,children:kt(e.to,n)}),(0,z.jsx)(`span`,{className:`ml-auto text-xs text-muted-foreground`,children:yt(r,e.createdAt)})]}),e.subject&&(0,z.jsx)(`div`,{className:`text-sm font-medium`,children:e.subject}),(0,z.jsx)(Nd,{text:It(e),rawBody:e.body,issueRepo:n[e.from===`user`?e.to:e.from]?.issueRepo,className:`text-sm text-muted-foreground`}),(0,z.jsxs)(`div`,{className:`flex gap-1.5 flex-wrap`,children:[e.channel&&(0,z.jsx)(P,{variant:`secondary`,className:`text-[10px]`,children:e.channel}),e.claimedBy&&(0,z.jsxs)(P,{variant:`secondary`,className:`text-[10px]`,children:[`claimed by `,kt(e.claimedBy,n)]})]})]},e.id))})})]})})}function Fd(){let e=A(e=>e.taskEventsOpen),t=A(e=>e.taskEvents),n=A(e=>e.set),r=A(e=>e.switchView);function i(e){n({selectedMemoryId:e,taskEventsOpen:!1}),r(`memory`)}return(0,z.jsx)(yd,{open:e,onOpenChange:e=>!e&&n({taskEventsOpen:!1}),children:(0,z.jsxs)(xd,{className:`max-w-2xl max-h-[80vh]`,children:[(0,z.jsx)(Sd,{children:(0,z.jsxs)(wd,{children:[`Task Events (`,t.length,`)`]})}),(0,z.jsx)(md,{className:`max-h-[60vh]`,children:(0,z.jsxs)(`div`,{className:`space-y-2 pr-4`,children:[t.map(e=>(0,z.jsxs)(`div`,{className:`flex items-start gap-3 rounded-lg border border-border p-3`,children:[(0,z.jsx)(P,{className:Rt[e.severity]||Rt.info,children:e.severity}),(0,z.jsxs)(`div`,{className:`flex-1 min-w-0`,children:[(0,z.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,z.jsx)(`span`,{className:`text-sm font-medium`,children:e.title}),(0,z.jsx)(P,{variant:`outline`,className:`text-[10px]`,children:e.type})]}),e.body&&(0,z.jsx)(`p`,{className:`text-sm text-muted-foreground mt-1 whitespace-pre-wrap`,children:e.body}),(0,z.jsx)(Id,{event:e,onOpen:i}),(0,z.jsxs)(`div`,{className:`text-xs text-muted-foreground mt-1`,children:[jt(e.createdAt),` · `,e.source]})]})]},e.id)),t.length===0&&(0,z.jsx)(`p`,{className:`text-sm text-muted-foreground text-center py-8`,children:`No events recorded.`})]})})]})})}function Id({event:e,onOpen:t}){if(e.type!==`memory.captured`)return null;let n=typeof e.metadata?.memoryId==`string`?e.metadata.memoryId:``,r=e.metadata?.memory&&typeof e.metadata.memory==`object`&&!Array.isArray(e.metadata.memory)?e.metadata.memory:{},i=typeof r.title==`string`?r.title:e.body||n,a=typeof r.scope==`string`?r.scope:``,o=typeof r.type==`string`?r.type:`memory`,s=typeof r.sensitivity==`string`?r.sensitivity:``;return(0,z.jsx)(`div`,{className:`mt-2 rounded-md border border-border bg-muted/20 p-2 text-xs`,children:(0,z.jsxs)(`div`,{className:`flex items-start gap-2`,children:[(0,z.jsx)(rt,{className:`w-3.5 h-3.5 mt-0.5 text-muted-foreground shrink-0`}),(0,z.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,z.jsxs)(`div`,{className:`flex flex-wrap gap-1 mb-1`,children:[(0,z.jsx)(P,{variant:`secondary`,className:`text-[10px]`,children:o}),a&&(0,z.jsx)(P,{variant:`outline`,className:`text-[10px] font-mono`,children:a}),s&&(0,z.jsx)(P,{variant:`outline`,className:`text-[10px]`,children:s})]}),(0,z.jsx)(`div`,{className:`font-medium truncate`,children:i}),n&&(0,z.jsx)(`div`,{className:`font-mono text-[10px] text-muted-foreground truncate`,children:n})]}),n&&(0,z.jsx)(F,{size:`sm`,variant:`outline`,className:`h-7 text-xs shrink-0`,onClick:()=>t(n),children:`Open`})]})})}function Ld({open:e,onOpenChange:t,onSelect:n,orchestratorId:r,initialPath:i,title:o=`Select Directory`}){let s=A(e=>e.apiCall),[c,l]=(0,R.useState)(!1),[u,d]=(0,R.useState)(null),[f,p]=(0,R.useState)(null),[m,h]=(0,R.useState)(!1),[g,_]=(0,R.useState)(``),[v,y]=(0,R.useState)(null),b=u?.path||i||``,x=(0,R.useMemo)(()=>b.split(`/`).filter(Boolean),[b]),S=(0,R.useCallback)(async e=>{if(r){l(!0),p(null),h(!1);try{let t=e?`?path=${encodeURIComponent(e)}`:``;d(await s(`GET`,`/orchestrators/${encodeURIComponent(r)}/directories${t}`))}catch(e){p(Ot(e))}finally{l(!1)}}},[r,s]);(0,R.useEffect)(()=>{e&&r&&(d(null),p(null),h(!1),S(i||void 0))},[e,r]);async function C(){if(!(!g.trim()||!u)){y(null);try{d(await s(`POST`,`/orchestrators/${encodeURIComponent(r)}/directories`,{path:u.path,name:g.trim()})),h(!1),_(``)}catch(e){y(Ot(e))}}}function ee(){b&&(n(b),t(!1))}function w(e){S(`/`+x.slice(0,e+1).join(`/`))}return(0,z.jsx)(yd,{open:e,onOpenChange:t,children:(0,z.jsxs)(xd,{className:`max-w-lg max-h-[85dvh] flex flex-col`,children:[(0,z.jsx)(Sd,{children:(0,z.jsxs)(wd,{className:`flex items-center gap-2`,children:[(0,z.jsx)(Pe,{className:`h-4 w-4`}),o]})}),(0,z.jsxs)(`div`,{className:`flex items-center gap-1 rounded-md border border-border bg-muted/50 px-2 py-1.5 text-xs overflow-x-auto`,children:[(0,z.jsx)(`button`,{type:`button`,className:`font-mono text-muted-foreground hover:text-foreground shrink-0`,onClick:()=>u?.baseDir&&S(u.baseDir),children:`/`}),x.map((e,t)=>(0,z.jsxs)(`span`,{className:`shrink-0`,children:[(0,z.jsx)(`button`,{type:`button`,className:`font-mono text-muted-foreground hover:text-foreground`,onClick:()=>w(t),children:e}),t<x.length-1&&(0,z.jsx)(`span`,{className:`text-muted-foreground/50 mx-0.5`,children:`/`})]},`${e}-${t}`))]}),(0,z.jsxs)(`div`,{className:`flex-1 min-h-0 rounded-md border border-border bg-background overflow-y-auto`,style:{maxHeight:`40dvh`},children:[c&&(0,z.jsx)(`div`,{className:`flex items-center justify-center py-8`,children:(0,z.jsx)(Re,{className:`h-5 w-5 animate-spin text-muted-foreground`})}),!c&&f&&(0,z.jsx)(`div`,{className:`px-3 py-4 text-sm text-destructive`,children:f}),!c&&u&&(0,z.jsxs)(`div`,{className:`p-1`,children:[u.parent&&(0,z.jsxs)(`button`,{type:`button`,className:`flex h-9 w-full items-center gap-2 rounded-md px-2 text-left text-sm hover:bg-muted`,onClick:()=>S(u.parent),children:[(0,z.jsx)(ge,{className:`h-4 w-4 text-muted-foreground`}),(0,z.jsx)(`span`,{className:`text-muted-foreground`,children:`..`})]}),u.entries.map(e=>(0,z.jsxs)(`button`,{type:`button`,className:`flex h-9 w-full items-center gap-2 rounded-md px-2 text-left text-sm hover:bg-muted`,onClick:()=>S(e.path),children:[(0,z.jsx)(ne,{className:`h-4 w-4 text-muted-foreground`}),(0,z.jsx)(`span`,{className:`truncate`,children:e.name})]},e.path)),u.entries.length===0&&!u.parent&&(0,z.jsx)(`div`,{className:`px-2 py-4 text-sm text-muted-foreground text-center`,children:`Empty directory`}),u.entries.length===0&&u.parent&&(0,z.jsx)(`div`,{className:`px-2 py-4 text-sm text-muted-foreground text-center`,children:`No subdirectories`})]})]}),m?(0,z.jsxs)(`div`,{className:`flex gap-2`,children:[(0,z.jsx)(I,{autoFocus:!0,value:g,onChange:e=>{_(e.target.value),y(null)},onKeyDown:e=>{e.key===`Enter`&&C(),e.key===`Escape`&&(h(!1),_(``))},placeholder:`New directory name...`,className:`flex-1 font-mono text-sm`}),(0,z.jsx)(F,{type:`button`,size:`icon`,variant:`outline`,onClick:C,disabled:!g.trim(),children:(0,z.jsx)(Ae,{className:`h-4 w-4`})}),(0,z.jsx)(F,{type:`button`,size:`icon`,variant:`ghost`,onClick:()=>{h(!1),_(``),y(null)},children:(0,z.jsx)(Me,{className:`h-4 w-4`})})]}):(0,z.jsxs)(F,{type:`button`,variant:`outline`,size:`sm`,onClick:()=>h(!0),disabled:!u||c,children:[(0,z.jsx)(a,{className:`h-4 w-4 mr-1.5`}),`New Directory`]}),v&&(0,z.jsx)(`p`,{className:`text-xs text-destructive`,children:v}),(0,z.jsxs)(Cd,{children:[(0,z.jsx)(F,{variant:`outline`,onClick:()=>t(!1),children:`Cancel`}),(0,z.jsx)(F,{onClick:ee,disabled:!b,children:`Select`})]})]})})}function Rd({value:e,onChange:t,orchestratorId:n,placeholder:r,disabled:i}){let[a,o]=(0,R.useState)(!1);return(0,z.jsxs)(`div`,{className:`flex gap-2`,children:[(0,z.jsx)(I,{value:e,onChange:e=>t(e.target.value),placeholder:r,disabled:i,className:`flex-1 font-mono text-sm`}),(0,z.jsx)(F,{type:`button`,variant:`outline`,size:`icon`,onClick:()=>o(!0),disabled:i||!n,title:`Browse directories`,children:(0,z.jsx)(Pe,{className:`h-4 w-4`})}),n&&(0,z.jsx)(Ld,{open:a,onOpenChange:o,onSelect:t,orchestratorId:n,initialPath:e||void 0})]})}function zd({model:e}){if(!e)return null;let t=Bd(e);return t.length===0?null:(0,z.jsx)(`div`,{className:`flex flex-wrap gap-1.5`,children:t.map(e=>(0,z.jsxs)(P,{variant:`outline`,className:`gap-1 text-[10px]`,children:[(0,z.jsx)(e.Icon,{className:`h-3 w-3`}),e.label]},e.label))})}function Bd(e){let t=[],r=e.limits?.contextWindowTokens?.value;return r&&t.push({label:Vd(r),Icon:s}),e.capabilities?.modalities.input.image&&t.push({label:`Image input`,Icon:be}),(e.capabilities?.modalities.output.image||e.capabilities?.tools?.imageGeneration)&&t.push({label:`Image output`,Icon:be}),e.capabilities?.tools?.code&&t.push({label:`Code`,Icon:n}),t}function Vd(e){return e>=1e6?`${e/1e6}M ctx`:e>=1e3?`${Math.round(e/1e3)}K ctx`:`${e} ctx`}function Hd(){let e=A(e=>e.orchestratorSpawnOpen),t=A(e=>e.orchestrators),n=A(e=>e.spawnOrchId),r=A(e=>e.spawnProvider),i=A(e=>e.spawnModel),a=A(e=>e.spawnEffort),o=A(e=>e.spawnProfile),s=A(e=>e.spawnCwd),c=A(e=>e.spawnLabel),l=A(e=>e.spawnApproval),u=A(e=>e.spawnWorkspaceMode),d=A(e=>e.spawnPrompt),f=A(e=>e.spawnSystemPromptAppend),p=A(e=>e.spawnCount),m=A(e=>e.spawnCwdHistory),h=A(e=>e.isSpawning),g=A(e=>!!e.pendingForkImport),_=A(e=>e.set),v=A(e=>e.submitOrchestratorSpawn),y=A(e=>e.selectSpawnHistory),b=A(e=>e.agentProfiles),x=A(e=>e.providerCatalog),S=t.find(e=>e.id===n),C=S?.providers||[],ee=ct(r,x),w=ee.find(e=>e.alias===i),te=w?.efforts||[],ne=!!(S&&C.length>0&&s.trim())&&!h,re=t.filter(e=>e.status===`online`),ie=re.length>1,ae=m.filter(e=>re.some(t=>t.id===e.orchId)).slice(0,5);function oe(e){let n=t.find(t=>t.id===e),r=n?.providers[0]||``;_({spawnOrchId:e,spawnProvider:r,spawnModel:r?dt(r,x):``,spawnEffort:``,spawnCwd:n?.baseDir||``})}function se(e){_({spawnProvider:e,spawnModel:dt(e,x),spawnEffort:``})}function T(e){_({spawnModel:e,spawnEffort:``})}return(0,z.jsx)(yd,{open:e,onOpenChange:e=>!e&&_({orchestratorSpawnOpen:!1}),children:(0,z.jsxs)(xd,{className:`max-w-lg max-h-[90dvh] flex flex-col`,onOpenAutoFocus:e=>e.preventDefault(),children:[(0,z.jsx)(Sd,{children:(0,z.jsx)(wd,{children:`Spawn Agent`})}),(0,z.jsxs)(`div`,{className:`space-y-3 overflow-y-auto flex-1 min-h-0 -mx-4 px-4`,children:[(0,z.jsxs)(`div`,{children:[(0,z.jsx)(Q,{children:`Orchestrator`}),(0,z.jsx)(`select`,{className:`w-full mt-1 rounded-md border border-input bg-background px-3 py-2 text-sm`,value:n,onChange:e=>oe(e.target.value),children:t.filter(e=>e.status===`online`).map(e=>(0,z.jsxs)(`option`,{value:e.id,children:[e.hostname,` (`,e.id.slice(-8),`)`]},e.id))})]}),(0,z.jsxs)(`div`,{children:[(0,z.jsx)(Q,{children:`Provider`}),(0,z.jsxs)(`select`,{className:`w-full mt-1 rounded-md border border-input bg-background px-3 py-2 text-sm`,value:r,onChange:e=>se(e.target.value),disabled:!C.length,children:[!C.length&&(0,z.jsx)(`option`,{value:r,children:`No providers available`}),C.map(e=>(0,z.jsx)(`option`,{value:e,children:e},e))]})]}),(0,z.jsxs)(`div`,{className:`grid grid-cols-2 gap-3`,children:[(0,z.jsxs)(`div`,{children:[(0,z.jsx)(Q,{children:`Model`}),(0,z.jsx)(`select`,{className:`w-full mt-1 rounded-md border border-input bg-background px-3 py-2 text-sm`,value:i,onChange:e=>T(e.target.value),disabled:!ee.length,children:ee.map(e=>(0,z.jsx)(`option`,{value:e.alias,children:e.label},e.alias))})]}),(0,z.jsxs)(`div`,{children:[(0,z.jsx)(Q,{children:`Effort`}),(0,z.jsxs)(`select`,{className:`w-full mt-1 rounded-md border border-input bg-background px-3 py-2 text-sm`,value:a,onChange:e=>_({spawnEffort:e.target.value}),disabled:!te.length,children:[(0,z.jsx)(`option`,{value:``,children:`Default`}),te.map(e=>(0,z.jsx)(`option`,{value:e,children:e},e))]})]})]}),(0,z.jsx)(zd,{model:w}),(0,z.jsxs)(`div`,{children:[(0,z.jsx)(Q,{children:`Agent Profile`}),(0,z.jsxs)(`select`,{className:`w-full mt-1 rounded-md border border-input bg-background px-3 py-2 text-sm`,value:o||`default-relay`,onChange:e=>_({spawnProfile:e.target.value}),children:[!b.length&&(0,z.jsx)(`option`,{value:`default-relay`,children:`default-relay`}),b.map(e=>(0,z.jsx)(`option`,{value:e.name,children:e.name},e.name))]})]}),(0,z.jsxs)(`div`,{children:[(0,z.jsx)(Q,{children:`Approval Mode`}),(0,z.jsxs)(`select`,{className:`w-full mt-1 rounded-md border border-input bg-background px-3 py-2 text-sm`,value:l,onChange:e=>_({spawnApproval:e.target.value}),children:[(0,z.jsx)(`option`,{value:`open`,children:`Open`}),(0,z.jsx)(`option`,{value:`guarded`,children:`Guarded`}),(0,z.jsx)(`option`,{value:`read-only`,children:`Read-only`})]})]}),(0,z.jsxs)(`div`,{children:[(0,z.jsx)(Q,{children:`Workspace`}),(0,z.jsxs)(`select`,{className:`w-full mt-1 rounded-md border border-input bg-background px-3 py-2 text-sm`,value:u,onChange:e=>_({spawnWorkspaceMode:e.target.value}),children:[(0,z.jsx)(`option`,{value:`inherit`,children:`Default`}),(0,z.jsx)(`option`,{value:`isolated`,children:`Isolated worktree`}),(0,z.jsx)(`option`,{value:`shared`,children:`Shared cwd`})]})]}),(0,z.jsxs)(`div`,{children:[(0,z.jsx)(Q,{children:`Working Directory`}),(0,z.jsx)(`div`,{className:`mt-1`,children:(0,z.jsx)(Rd,{value:s,onChange:e=>_({spawnCwd:e}),orchestratorId:n,placeholder:`Select a project directory`})}),ae.length>0&&(0,z.jsxs)(`div`,{className:`mt-2`,children:[(0,z.jsx)(`p`,{className:`text-xs text-muted-foreground mb-1`,children:`Recent`}),(0,z.jsx)(`div`,{className:`flex gap-1.5 overflow-x-auto pb-1 sm:flex-wrap sm:overflow-x-visible sm:pb-0`,children:ae.map(e=>{let t=e.cwd.replace(/\/+$/,``).split(`/`).pop()||e.cwd,r=re.find(t=>t.id===e.orchId)?.hostname,i=e.orchId===n&&e.cwd===s;return(0,z.jsx)(`button`,{type:`button`,title:ie&&r?`${r}: ${e.cwd}`:e.cwd,onClick:()=>y(e.orchId,e.cwd),className:`shrink-0 rounded-full border px-2.5 py-1 text-xs font-mono transition-colors ${i?`border-primary bg-primary/10 text-foreground`:`border-input bg-background text-muted-foreground hover:bg-accent hover:text-foreground`}`,children:ie&&r?`${r}: ${t}`:t},`${e.orchId}:${e.cwd}`)})})]})]}),(0,z.jsxs)(`div`,{children:[(0,z.jsx)(Q,{children:`Label`}),(0,z.jsx)(I,{value:c,onChange:e=>_({spawnLabel:e.target.value}),placeholder:`Optional label...`})]}),(0,z.jsxs)(`div`,{children:[(0,z.jsx)(Q,{children:`Initial Prompt`}),(0,z.jsx)(Ed,{value:d,onChange:e=>_({spawnPrompt:e.target.value}),rows:3,placeholder:`Optional initial task...`}),(0,z.jsx)(`p`,{className:`text-xs text-muted-foreground mt-1`,children:`Codex starts this as the first App Server turn; Claude receives it as a launch prompt.`})]}),(0,z.jsxs)(`div`,{children:[(0,z.jsx)(Q,{children:`System Prompt Append`}),(0,z.jsx)(Ed,{value:f,onChange:e=>_({spawnSystemPromptAppend:e.target.value}),rows:5,placeholder:`Optional launch context...`}),(0,z.jsx)(`p`,{className:`text-xs text-muted-foreground mt-1`,children:`Use for fork history or launch context. It informs the session but does not start work by itself.`})]}),!g&&(0,z.jsxs)(`div`,{children:[(0,z.jsxs)(`div`,{className:`flex items-center justify-between`,children:[(0,z.jsx)(Q,{children:`Number of Agents`}),(0,z.jsx)(`span`,{className:`text-sm font-mono tabular-nums text-muted-foreground`,children:p})]}),(0,z.jsx)(`input`,{type:`range`,min:1,max:10,step:1,value:p,onChange:e=>_({spawnCount:Number(e.target.value)}),className:`w-full mt-2 accent-primary`,"aria-label":`Number of agents to spawn`}),p>1&&(0,z.jsxs)(`p`,{className:`text-xs text-muted-foreground mt-1`,children:[`Spawns `,p,` identical agents`,c.trim()?`, labelled "${c.trim()} 1"…"${c.trim()} ${p}"`:``,`.`]})]})]}),(0,z.jsxs)(Cd,{children:[(0,z.jsx)(F,{variant:`outline`,onClick:()=>_({orchestratorSpawnOpen:!1}),disabled:h,children:`Cancel`}),(0,z.jsx)(F,{onClick:v,disabled:!ne,children:h?`Spawning…`:C.length?p>1?`Spawn ${p}`:`Spawn`:`No providers`})]})]})})}function Ud(){return`host-${Math.random().toString(36).slice(2,8)}`}function Wd(e,t){return e.includes(t)?e.filter(e=>e!==t):[...e,t]}function Gd(){let e=A(e=>e.orchestratorInstallOpen),t=A(e=>e.set),n=A(e=>e.showError),r=A(e=>e.showNotification),i=(0,R.useMemo)(()=>new URL(me()).origin,[]),[a,o]=(0,R.useState)(Ud),[s,c]=(0,R.useState)(`$HOME/projects`),[l,u]=(0,R.useState)([`claude`,`codex`]),[d,f]=(0,R.useState)(`4860`),[p,m]=(0,R.useState)(``),[h,_]=(0,R.useState)(``),[v,y]=(0,R.useState)(),[b,x]=(0,R.useState)(!1);async function S(){if(!a.trim()){n(`Validation`,`Orchestrator id is required`);return}if(!s.trim()){n(`Validation`,`Base directory is required`);return}if(!l.length){n(`Validation`,`Select at least one provider`);return}x(!0);try{let e=await g(`POST`,`/orchestrators/bootstrap`,{id:a.trim(),relayUrl:i,baseDir:s.trim(),providers:l,apiPort:Number(d)||4860,pathPrefix:p.split(`:`).map(e=>e.trim()).filter(Boolean)});_(e.command),y(e.expiresAt)}catch(e){n(`Install Command Failed`,e.message)}finally{x(!1)}}return(0,z.jsx)(yd,{open:e,onOpenChange:e=>!e&&t({orchestratorInstallOpen:!1}),children:(0,z.jsxs)(xd,{className:`max-w-2xl overflow-hidden`,children:[(0,z.jsx)(Sd,{children:(0,z.jsxs)(wd,{className:`flex items-center gap-2`,children:[(0,z.jsx)(E,{className:`w-4 h-4`}),`Add Orchestrator`]})}),(0,z.jsxs)(`div`,{className:`space-y-4`,children:[(0,z.jsxs)(`div`,{className:`grid grid-cols-1 md:grid-cols-2 gap-3`,children:[(0,z.jsxs)(`div`,{children:[(0,z.jsx)(Q,{children:`Orchestrator ID`}),(0,z.jsx)(I,{value:a,onChange:e=>o(e.target.value)})]}),(0,z.jsxs)(`div`,{children:[(0,z.jsx)(Q,{children:`Relay URL`}),(0,z.jsx)(I,{value:i,readOnly:!0})]}),(0,z.jsxs)(`div`,{children:[(0,z.jsx)(Q,{children:`Base Directory`}),(0,z.jsx)(I,{value:s,onChange:e=>c(e.target.value)})]}),(0,z.jsxs)(`div`,{children:[(0,z.jsx)(Q,{children:`API Port`}),(0,z.jsx)(I,{value:d,onChange:e=>f(e.target.value),inputMode:`numeric`})]})]}),(0,z.jsxs)(`div`,{children:[(0,z.jsx)(Q,{children:`Providers`}),(0,z.jsx)(`div`,{className:`mt-1 flex flex-wrap gap-2`,children:[`claude`,`codex`].map(e=>(0,z.jsx)(F,{type:`button`,size:`sm`,variant:l.includes(e)?`default`:`outline`,onClick:()=>u(Wd(l,e)),children:e},e))})]}),(0,z.jsxs)(`div`,{children:[(0,z.jsx)(Q,{children:`Extra PATH Prefix`}),(0,z.jsx)(I,{value:p,onChange:e=>m(e.target.value),placeholder:`/opt/homebrew/bin:/custom/bin`})]}),h&&(0,z.jsxs)(`div`,{children:[(0,z.jsxs)(`div`,{className:`flex items-center justify-between gap-2 mb-1`,children:[(0,z.jsx)(Q,{children:`Install Command`}),v&&(0,z.jsxs)(`span`,{className:`text-[11px] text-muted-foreground`,children:[`Install token expires `,new Date(v*1e3).toLocaleString()]})]}),(0,z.jsx)(`pre`,{className:`max-h-40 w-full overflow-y-auto whitespace-pre-wrap break-all rounded-md border border-input bg-muted/40 p-3 font-mono text-xs leading-relaxed`,children:h})]})]}),(0,z.jsxs)(Cd,{children:[(0,z.jsx)(F,{variant:`outline`,onClick:()=>t({orchestratorInstallOpen:!1}),children:`Close`}),h&&(0,z.jsx)(kn,{value:h,label:`Copy`,showText:!0,size:`default`,variant:`outline`,className:`gap-1`,onCopied:()=>r(`Install command copied`)}),(0,z.jsxs)(F,{className:`gap-1`,onClick:S,disabled:b,children:[(0,z.jsx)(Ee,{className:`w-3.5 h-3.5`}),b?`Generating...`:`Generate Command`]})]})]})})}function Kd(){let e=A(e=>e.policyModal),t=A(e=>e.orchestrators),n=A(e=>e.agentProfiles),r=A(e=>e.set),i=A(e=>e.submitPolicy),a=A(e=>e.providerCatalog),o=t.find(t=>t.id===e.orchestratorId),s=o?.providers||[],c=ct(e.provider,a),l=c.find(t=>t.alias===e.model),u=l?.efforts||[],d=!!e.editing,f=e.provider===`claude`&&o?.providerStatus?.find(e=>e.name===`claude`)?.features?.rig===!0;function p(t){r({policyModal:{...e,...t}})}function m(n){let r=t.find(e=>e.id===n)?.providers[0]||e.provider;p({orchestratorId:n,provider:r,model:dt(r,a),effort:``})}function h(e){p({provider:e,rig:``,model:dt(e,a),effort:``})}return(0,z.jsx)(yd,{open:e.open,onOpenChange:e=>!e&&p({open:!1}),children:(0,z.jsxs)(xd,{className:`max-w-lg max-h-[90vh] overflow-y-auto`,children:[(0,z.jsx)(Sd,{children:(0,z.jsx)(wd,{children:d?`Edit Policy`:`Create Managed Agent`})}),(0,z.jsxs)(`div`,{className:`space-y-3`,children:[(0,z.jsxs)(`div`,{children:[(0,z.jsx)(Q,{children:`Policy Name`}),(0,z.jsx)(I,{value:e.name,onChange:e=>p({name:e.target.value}),placeholder:`my-agent`,disabled:d})]}),(0,z.jsxs)(`div`,{children:[(0,z.jsx)(Q,{children:`Label`}),(0,z.jsx)(I,{value:e.label,onChange:e=>p({label:e.target.value}),placeholder:`Human-friendly name...`})]}),(0,z.jsxs)(`div`,{children:[(0,z.jsx)(Q,{children:`Description`}),(0,z.jsx)(I,{value:e.description,onChange:e=>p({description:e.target.value}),placeholder:`What does this agent do?`})]}),(0,z.jsxs)(`div`,{className:`grid grid-cols-2 gap-3`,children:[(0,z.jsxs)(`div`,{children:[(0,z.jsx)(Q,{children:`Orchestrator`}),(0,z.jsx)(`select`,{className:`w-full mt-1 rounded-md border border-input bg-background px-3 py-2 text-sm`,value:e.orchestratorId,onChange:e=>m(e.target.value),children:t.filter(e=>e.status===`online`).map(e=>(0,z.jsxs)(`option`,{value:e.id,children:[e.hostname,` (`,e.id.slice(-8),`)`]},e.id))})]}),(0,z.jsxs)(`div`,{children:[(0,z.jsx)(Q,{children:`Provider`}),(0,z.jsxs)(`select`,{className:`w-full mt-1 rounded-md border border-input bg-background px-3 py-2 text-sm`,value:e.provider,onChange:e=>h(e.target.value),disabled:!s.length,children:[!s.length&&(0,z.jsx)(`option`,{value:e.provider,children:`No providers available`}),s.map(e=>(0,z.jsx)(`option`,{value:e,children:e},e))]})]})]}),f&&(0,z.jsxs)(`div`,{children:[(0,z.jsx)(Q,{children:`Rig`}),(0,z.jsx)(I,{value:e.rig,onChange:e=>p({rig:e.target.value}),placeholder:`Leave empty to auto-detect from .claude-rig`}),(0,z.jsx)(`p`,{className:`text-xs text-muted-foreground mt-1`,children:`claude-rig profile name. Auto-detects from project's .claude-rig file if empty.`})]}),(0,z.jsxs)(`div`,{className:`grid grid-cols-2 gap-3`,children:[(0,z.jsxs)(`div`,{children:[(0,z.jsx)(Q,{children:`Model`}),(0,z.jsx)(`select`,{className:`w-full mt-1 rounded-md border border-input bg-background px-3 py-2 text-sm`,value:e.model,onChange:e=>p({model:e.target.value,effort:``}),children:c.map(e=>(0,z.jsx)(`option`,{value:e.alias,children:e.label},e.alias))})]}),(0,z.jsxs)(`div`,{children:[(0,z.jsx)(Q,{children:`Effort`}),(0,z.jsxs)(`select`,{className:`w-full mt-1 rounded-md border border-input bg-background px-3 py-2 text-sm`,value:e.effort,onChange:e=>p({effort:e.target.value}),disabled:!u.length,children:[(0,z.jsx)(`option`,{value:``,children:`Default`}),u.map(e=>(0,z.jsx)(`option`,{value:e,children:e},e))]})]})]}),(0,z.jsx)(zd,{model:l}),(0,z.jsxs)(`div`,{children:[(0,z.jsx)(Q,{children:`Agent Profile`}),(0,z.jsxs)(`select`,{className:`w-full mt-1 rounded-md border border-input bg-background px-3 py-2 text-sm`,value:e.profile||`default-relay`,onChange:e=>p({profile:e.target.value}),children:[!n.length&&(0,z.jsx)(`option`,{value:`default-relay`,children:`default-relay`}),n.map(e=>(0,z.jsx)(`option`,{value:e.name,children:e.name},e.name))]})]}),(0,z.jsxs)(`div`,{children:[(0,z.jsx)(Q,{children:`Working Directory`}),(0,z.jsx)(`div`,{className:`mt-1`,children:(0,z.jsx)(Rd,{value:e.cwd,onChange:e=>p({cwd:e}),orchestratorId:e.orchestratorId,placeholder:o?.baseDir||`/path/to/project`})})]}),(0,z.jsxs)(`div`,{className:`grid grid-cols-2 gap-3`,children:[(0,z.jsxs)(`div`,{children:[(0,z.jsx)(Q,{children:`Mode`}),(0,z.jsxs)(`select`,{className:`w-full mt-1 rounded-md border border-input bg-background px-3 py-2 text-sm`,value:e.mode,onChange:e=>p({mode:e.target.value}),children:[(0,z.jsx)(`option`,{value:`always-on`,children:`Always On`}),(0,z.jsx)(`option`,{value:`on-demand`,children:`On Demand`})]})]}),(0,z.jsxs)(`div`,{children:[(0,z.jsx)(Q,{children:`Permission Mode`}),(0,z.jsxs)(`select`,{className:`w-full mt-1 rounded-md border border-input bg-background px-3 py-2 text-sm`,value:e.permissionMode,onChange:e=>p({permissionMode:e.target.value}),children:[(0,z.jsx)(`option`,{value:`open`,children:`Open`}),(0,z.jsx)(`option`,{value:`guarded`,children:`Guarded`}),(0,z.jsx)(`option`,{value:`read-only`,children:`Read-only`})]})]})]}),e.mode===`on-demand`&&(0,z.jsxs)(`div`,{children:[(0,z.jsx)(Q,{children:`Keepalive (seconds)`}),(0,z.jsx)(I,{type:`number`,value:e.keepaliveSeconds,onChange:e=>p({keepaliveSeconds:e.target.value}),placeholder:`300`}),(0,z.jsx)(`p`,{className:`text-xs text-muted-foreground mt-1`,children:`Seconds to keep agent alive after last activity.`})]}),(0,z.jsxs)(`div`,{children:[(0,z.jsx)(Q,{children:`Initial Prompt`}),(0,z.jsx)(Ed,{value:e.prompt,onChange:e=>p({prompt:e.target.value}),rows:3,placeholder:`Optional initial task or instructions...`}),(0,z.jsx)(`p`,{className:`text-xs text-muted-foreground mt-1`,children:`Codex starts this as the first App Server turn; Claude receives it as a launch prompt.`})]}),(0,z.jsxs)(`div`,{className:`grid grid-cols-2 gap-3`,children:[(0,z.jsxs)(`div`,{children:[(0,z.jsx)(Q,{children:`Tags`}),(0,z.jsx)(I,{value:e.tags,onChange:e=>p({tags:e.target.value}),placeholder:`tag1, tag2`})]}),(0,z.jsxs)(`div`,{children:[(0,z.jsx)(Q,{children:`Capabilities`}),(0,z.jsx)(I,{value:e.capabilities,onChange:e=>p({capabilities:e.target.value}),placeholder:`chat, review`})]})]}),(0,z.jsxs)(`div`,{children:[(0,z.jsx)(Q,{children:`Provider Args`}),(0,z.jsx)(I,{value:e.providerArgs,onChange:e=>p({providerArgs:e.target.value}),placeholder:`--flag value`}),(0,z.jsx)(`p`,{className:`text-xs text-muted-foreground mt-1`,children:`Space-separated args passed to the provider CLI.`})]}),(0,z.jsxs)(`div`,{children:[(0,z.jsx)(Q,{children:`Channel Binding`}),(0,z.jsx)(I,{value:e.channelId,onChange:e=>p({channelId:e.target.value}),placeholder:`Channel ID (optional)`})]}),(0,z.jsxs)(`div`,{className:`grid grid-cols-2 gap-3`,children:[(0,z.jsxs)(`div`,{children:[(0,z.jsx)(Q,{children:`Backoff Schedule (seconds)`}),(0,z.jsx)(I,{value:e.backoffSchedule,onChange:e=>p({backoffSchedule:e.target.value}),placeholder:`5, 15, 60, 300`})]}),(0,z.jsxs)(`div`,{children:[(0,z.jsx)(Q,{children:`Backoff Reset After (s)`}),(0,z.jsx)(I,{type:`number`,value:e.backoffResetAfterSeconds,onChange:e=>p({backoffResetAfterSeconds:e.target.value}),placeholder:`600`})]})]}),(0,z.jsxs)(`div`,{className:`flex items-center justify-between`,children:[(0,z.jsx)(Q,{htmlFor:`restartOnUpdate`,children:`Restart on policy update`}),(0,z.jsx)(Hc,{id:`restartOnUpdate`,checked:e.restartOnUpdate,onCheckedChange:e=>p({restartOnUpdate:e})})]}),(0,z.jsxs)(`div`,{className:`flex items-center justify-between`,children:[(0,z.jsx)(Q,{htmlFor:`dailyRestart`,children:`Scheduled daily restart`}),(0,z.jsx)(Hc,{id:`dailyRestart`,checked:e.scheduledDailyRestart,onCheckedChange:e=>p({scheduledDailyRestart:e})})]})]}),(0,z.jsxs)(Cd,{children:[(0,z.jsx)(F,{variant:`outline`,onClick:()=>p({open:!1}),children:`Cancel`}),(0,z.jsx)(F,{onClick:i,children:d?`Save`:`Create`})]})]})})}function qd({title:e,children:t,defaultOpen:n=!0}){let[r,i]=(0,R.useState)(n);return(0,z.jsxs)(`div`,{className:`border border-border rounded-md`,children:[(0,z.jsxs)(`button`,{type:`button`,className:`flex w-full items-center gap-2 px-3 py-2 text-sm font-medium hover:bg-accent`,onClick:()=>i(!r),children:[r?(0,z.jsx)(Be,{className:`h-3.5 w-3.5`}):(0,z.jsx)(we,{className:`h-3.5 w-3.5`}),e]}),r&&(0,z.jsx)(`div`,{className:`space-y-3 border-t border-border px-3 py-3`,children:t})]})}function Jd({value:e,onChange:t,options:n,disabled:r}){return(0,z.jsx)(`select`,{className:`w-full rounded-md border border-input bg-background px-3 py-2 text-sm`,value:e,onChange:e=>t(e.target.value),disabled:r,children:n.map(e=>(0,z.jsx)(`option`,{value:e.value,children:e.label},e.value))})}function Yd({env:e,onChange:t,disabled:n}){let r=Object.entries(e),[i,a]=(0,R.useState)(``),[o,s]=(0,R.useState)(``);function c(){i.trim()&&(t({...e,[i.trim()]:o}),a(``),s(``))}function l(n){let r={...e};delete r[n],t(r)}return(0,z.jsxs)(`div`,{className:`space-y-1.5`,children:[r.map(([e,t])=>(0,z.jsxs)(`div`,{className:`flex items-center gap-1.5`,children:[(0,z.jsxs)(`code`,{className:`min-w-0 flex-1 truncate rounded bg-muted px-2 py-1 text-xs`,children:[e,`=`,t]}),!n&&(0,z.jsx)(F,{type:`button`,variant:`ghost`,size:`icon-sm`,className:`h-6 w-6 shrink-0`,onClick:()=>l(e),children:(0,z.jsx)(ke,{className:`h-3 w-3`})})]},e)),!n&&(0,z.jsxs)(`div`,{className:`flex items-center gap-1.5`,children:[(0,z.jsx)(I,{value:i,onChange:e=>a(e.target.value),placeholder:`KEY`,className:`flex-1 text-xs font-mono`}),(0,z.jsx)(I,{value:o,onChange:e=>s(e.target.value),placeholder:`value`,className:`flex-1 text-xs font-mono`,onKeyDown:e=>e.key===`Enter`&&c()}),(0,z.jsx)(F,{type:`button`,variant:`outline`,size:`icon-sm`,className:`h-8 w-8 shrink-0`,onClick:c,children:(0,z.jsx)(oe,{className:`h-3 w-3`})})]}),r.length===0&&n&&(0,z.jsx)(`div`,{className:`text-xs text-muted-foreground`,children:`No environment variables`})]})}var Xd=[{value:`host`,label:`Host — full access, relay-aware`},{value:`minimal`,label:`Minimal — relay disabled, repo-scoped`},{value:`isolated`,label:`Isolated — strict isolation`},{value:`vanilla`,label:`Vanilla — zero host bleed (plugins/skills/hooks/MCP/CLAUDE.md off)`}],Zd=[{value:`any`,label:`Any provider`},{value:`claude`,label:`Claude`},{value:`codex`,label:`Codex`}],Qd=[{value:`host`,label:`Host — use host config`},{value:`profile`,label:`Profile — use profile config`},{value:`repo`,label:`Repo — use repo config only`},{value:`none`,label:`None — disabled`}],$d=[{value:`host`,label:`Host — full filesystem`},{value:`workspace`,label:`Workspace — working directory tree`},{value:`repo`,label:`Repo — repository root only`}],ef=[{value:`allow`,label:`Allow`},{value:`ignore`,label:`Ignore`}],tf=[{value:``,label:`Default`},{value:`open`,label:`Open — allow all`},{value:`guarded`,label:`Guarded — prompt for risky`},{value:`read-only`,label:`Read-only`}];function nf(){let{open:e,mode:t,profile:n}=A(e=>e.profileModal),r=A(e=>e.closeProfileModal),i=A(e=>e.updateProfileModal),a=A(e=>e.saveProfile),o=t===`view`||n.builtIn===!0,s=t===`create`||t===`duplicate`,c=t===`view`?`Profile: ${n.name}`:t===`edit`?`Edit: ${n.name}`:t===`duplicate`?`Duplicate Profile`:`Create Profile`;function l(e){i({instructions:{...n.instructions,...e}})}function u(e){i({relay:{...n.relay,...e}})}function d(e){i({permissions:{...n.permissions,...e}})}function f(e){let t=n.providerOptions||{},r={...t.codex&&typeof t.codex==`object`&&!Array.isArray(t.codex)?t.codex:{}};if(!e.trim())delete r.toolOutputTokenLimit;else{let t=Number(e);if(!Number.isSafeInteger(t))return;r.toolOutputTokenLimit=t}i({providerOptions:{...t,codex:r}})}function p(e){if(!e.trim()){i({maxSpawnedAgents:void 0});return}let t=Number(e);!Number.isInteger(t)||t<0||i({maxSpawnedAgents:Math.min(t,100)})}function m(e){let t=e===`host`;i({base:e,relay:{context:t,skills:t,plugins:t,statusLine:t,mcp:t},mcp:{...n.mcp,mode:t?`host`:`none`},hooks:{mode:t?`host`:`none`},permissions:{...n.permissions,filesystem:t?`host`:`repo`},instructions:{...n.instructions,globalInstructions:t?`allow`:`ignore`}})}let h=n.providerOptions?.codex&&typeof n.providerOptions.codex==`object`&&!Array.isArray(n.providerOptions.codex)?n.providerOptions.codex:{},g=Number.isSafeInteger(h.toolOutputTokenLimit)?String(h.toolOutputTokenLimit):``;return(0,z.jsx)(yd,{open:e,onOpenChange:e=>!e&&r(),children:(0,z.jsxs)(xd,{className:`max-w-lg max-h-[90vh] overflow-y-auto`,children:[(0,z.jsx)(Sd,{children:(0,z.jsxs)(wd,{className:`flex items-center gap-2`,children:[c,n.builtIn&&(0,z.jsx)(P,{variant:`secondary`,className:`text-[10px]`,children:`Built-in`})]})}),(0,z.jsxs)(`div`,{className:`space-y-3`,children:[(0,z.jsxs)(qd,{title:`General`,defaultOpen:!0,children:[(0,z.jsxs)(`div`,{children:[(0,z.jsx)(Q,{children:`Name`}),(0,z.jsx)(I,{value:n.name,onChange:e=>i({name:e.target.value}),placeholder:`my-profile`,disabled:o||t===`edit`})]}),(0,z.jsxs)(`div`,{children:[(0,z.jsx)(Q,{children:`Description`}),(0,z.jsx)(I,{value:n.description||``,onChange:e=>i({description:e.target.value}),placeholder:`What this profile configures`,disabled:o})]}),(0,z.jsxs)(`div`,{className:`grid grid-cols-2 gap-3`,children:[(0,z.jsxs)(`div`,{children:[(0,z.jsx)(Q,{children:`Base`}),(0,z.jsx)(Jd,{value:n.base,onChange:e=>m(e),options:Xd,disabled:o})]}),(0,z.jsxs)(`div`,{children:[(0,z.jsx)(Q,{children:`Provider`}),(0,z.jsx)(Jd,{value:n.provider||`any`,onChange:e=>i({provider:e}),options:Zd,disabled:o})]})]})]}),(0,z.jsxs)(qd,{title:`Instructions`,defaultOpen:!1,children:[(0,z.jsxs)(`div`,{children:[(0,z.jsx)(Q,{children:`System Prompt`}),(0,z.jsx)(Ed,{value:n.instructions.system||``,onChange:e=>l({system:e.target.value}),placeholder:`Custom system prompt...`,rows:3,disabled:o,className:`font-mono text-xs`})]}),(0,z.jsxs)(`div`,{className:`grid grid-cols-2 gap-3`,children:[(0,z.jsxs)(`div`,{children:[(0,z.jsx)(Q,{children:`Repo Instructions`}),(0,z.jsx)(Jd,{value:n.instructions.repoInstructions,onChange:e=>l({repoInstructions:e}),options:ef,disabled:o})]}),(0,z.jsxs)(`div`,{children:[(0,z.jsx)(Q,{children:`Global Instructions`}),(0,z.jsx)(Jd,{value:n.instructions.globalInstructions,onChange:e=>l({globalInstructions:e}),options:ef,disabled:o})]})]})]}),(0,z.jsx)(qd,{title:`Relay Integration`,defaultOpen:!1,children:(0,z.jsx)(`div`,{className:`grid grid-cols-2 gap-3`,children:[`context`,`skills`,`plugins`,`statusLine`,`mcp`].map(e=>(0,z.jsxs)(`div`,{className:`flex items-center justify-between gap-2`,children:[(0,z.jsx)(Q,{className:`capitalize`,children:e===`statusLine`?`Status Line`:e===`mcp`?`MCP Tools`:e}),(0,z.jsx)(Hc,{checked:n.relay[e]??!0,onCheckedChange:t=>u({[e]:t}),disabled:o})]},e))})}),(0,z.jsx)(qd,{title:`MCP & Hooks`,defaultOpen:!1,children:(0,z.jsxs)(`div`,{className:`grid grid-cols-2 gap-3`,children:[(0,z.jsxs)(`div`,{children:[(0,z.jsx)(Q,{children:`MCP Mode`}),(0,z.jsx)(Jd,{value:n.mcp.mode,onChange:e=>i({mcp:{...n.mcp,mode:e}}),options:Qd,disabled:o})]}),(0,z.jsxs)(`div`,{children:[(0,z.jsx)(Q,{children:`Hooks Mode`}),(0,z.jsx)(Jd,{value:n.hooks.mode,onChange:e=>i({hooks:{mode:e}}),options:Qd,disabled:o})]})]})}),(0,z.jsx)(qd,{title:`Permissions`,defaultOpen:!1,children:(0,z.jsxs)(`div`,{className:`grid grid-cols-2 gap-3`,children:[(0,z.jsxs)(`div`,{children:[(0,z.jsx)(Q,{children:`Approval Mode`}),(0,z.jsx)(Jd,{value:n.permissions.mode||``,onChange:e=>d({mode:e||void 0}),options:tf,disabled:o})]}),(0,z.jsxs)(`div`,{children:[(0,z.jsx)(Q,{children:`Filesystem Scope`}),(0,z.jsx)(Jd,{value:n.permissions.filesystem,onChange:e=>d({filesystem:e}),options:$d,disabled:o})]})]})}),(0,z.jsx)(qd,{title:`Spawning`,defaultOpen:!1,children:(0,z.jsxs)(`div`,{children:[(0,z.jsx)(Q,{children:`Spawn Quota`}),(0,z.jsx)(I,{type:`number`,min:0,max:100,step:1,value:n.maxSpawnedAgents===void 0?``:String(n.maxSpawnedAgents),onChange:e=>p(e.target.value),placeholder:`0`,disabled:o}),(0,z.jsx)(`p`,{className:`mt-1 text-xs text-muted-foreground`,children:`Max concurrent live child agents this profile may spawn. Empty or 0 = cannot spawn (default). Children never inherit it (no grandchildren).`})]})}),(0,z.jsx)(qd,{title:`Environment Variables`,defaultOpen:!1,children:(0,z.jsx)(Yd,{env:n.env||{},onChange:e=>i({env:e}),disabled:o})}),(0,z.jsxs)(qd,{title:`Provider Options`,defaultOpen:!1,children:[(0,z.jsxs)(`div`,{children:[(0,z.jsx)(Q,{children:`Codex Tool Output Limit`}),(0,z.jsx)(I,{type:`number`,min:1e3,max:2e5,value:g,onChange:e=>f(e.target.value),placeholder:`12000`,disabled:o})]}),(0,z.jsx)(Ed,{value:JSON.stringify(n.providerOptions||{},null,2),onChange:e=>{try{i({providerOptions:JSON.parse(e.target.value)})}catch{}},rows:3,disabled:o,className:`font-mono text-xs`,placeholder:`{}`})]})]}),!o&&(0,z.jsxs)(Cd,{children:[(0,z.jsx)(F,{variant:`outline`,onClick:r,children:`Cancel`}),(0,z.jsx)(F,{onClick:a,children:s?`Create`:`Save`})]})]})})}function rf(){let e=A(e=>e.commandPaletteOpen),t=A(e=>e.commandQuery),n=A(e=>e.set),r=A(e=>e.closeCommandPalette),i=A(e=>e.runCommand),a=Bc(),o=(0,R.useRef)(null);return(0,R.useEffect)(()=>{e&&setTimeout(()=>o.current?.focus(),50)},[e]),e?(0,z.jsxs)(`div`,{className:`fixed inset-0 z-50 flex items-start justify-center pt-[15vh]`,onClick:e=>{e.target===e.currentTarget&&r()},children:[(0,z.jsx)(`div`,{className:`fixed inset-0 bg-black/60`}),(0,z.jsxs)(`div`,{className:`relative w-full max-w-lg bg-card border border-border rounded-xl shadow-2xl overflow-hidden`,children:[(0,z.jsx)(`div`,{className:`p-3 border-b border-border`,children:(0,z.jsx)(I,{ref:o,value:t,onChange:e=>n({commandQuery:e.target.value}),placeholder:`Type a command...`,className:`border-0 bg-transparent focus-visible:ring-0 text-base`})}),(0,z.jsxs)(`div`,{className:`max-h-80 overflow-y-auto p-2`,children:[a.map(e=>(0,z.jsxs)(`button`,{onClick:()=>i(e),className:`w-full flex items-center gap-3 px-3 py-2.5 rounded-lg hover:bg-accent text-left transition-colors`,children:[(0,z.jsx)(Ze[e.icon]||we,{className:`w-4 h-4 text-muted-foreground shrink-0`}),(0,z.jsxs)(`div`,{className:`flex-1 min-w-0`,children:[(0,z.jsx)(`div`,{className:`text-sm`,children:e.title}),e.subtitle&&(0,z.jsx)(`div`,{className:`text-xs text-muted-foreground truncate`,children:e.subtitle})]})]},e.id)),a.length===0&&(0,z.jsx)(`p`,{className:`text-sm text-muted-foreground text-center py-4`,children:`No matching commands.`})]})]})]}):null}function af(){let e=A(e=>e.set),t=A(e=>e.connected);return(0,z.jsxs)(`div`,{className:`xl:hidden shrink-0 sticky top-0 z-30 bg-card border-b border-border px-4 h-[var(--header-h)] flex items-center gap-3`,children:[(0,z.jsx)(`button`,{onClick:()=>e({mobileMenuOpen:!0}),className:`p-1 -ml-1 text-muted-foreground hover:text-foreground transition-colors`,"aria-label":`Open menu`,children:(0,z.jsx)(k,{className:`w-5 h-5`})}),(0,z.jsx)(m,{className:`w-4 h-4 text-primary`}),(0,z.jsx)(`span`,{className:`font-bold text-sm`,children:`Agent Relay`}),(0,z.jsx)(`span`,{className:`ml-auto w-2 h-2 rounded-full ${t?`bg-emerald-500`:`bg-red-500 animate-pulse`}`})]})}function of(e){return e===`five_hour`?`5h burst`:e===`seven_day`?`7-day`:e===`seven_day_sonnet`?`7-day Sonnet`:e===`seven_day_opus`?`7-day Opus`:e===`primary`?`Primary`:e===`secondary`?`Secondary`:e}function sf(e,t){if(!t)return``;let n=Math.max(0,(t-e)/1e3);return n<60?`${Math.floor(n)}s`:n<3600?`${Math.floor(n/60)}m`:n<86400?`${Math.floor(n/3600)}h`:`${Math.floor(n/86400)}d`}var cf=`agent-relay:quota-widget`,lf=300*1e3;function uf(e){return!e.quota&&e.lastError?.type===`unavailable`}function df(e,t){let n=t===`5h`?[`five_hour`,`primary`]:[`seven_day`,`secondary`];return e.quota?.windows.find(e=>n.includes(e.name))}function ff(e,t){if(!t)return``;let n=Math.max(0,(t-e)/1e3);return n<3600?`${Math.floor(n/60)}m`:n<86400?`${Math.floor(n/3600)}h`:`${(n/86400).toFixed(1).replace(/\.0$/,``)}d`}function pf({record:e,now:t}){let n=(0,z.jsx)(tu,{provider:e.provider,className:`w-3.5 h-3.5`});if(uf(e))return(0,z.jsxs)(`span`,{className:`flex items-center gap-1 shrink-0 text-muted-foreground`,children:[n,(0,z.jsx)(`span`,{className:`italic`,children:`unavailable`})]});if(!e.quota){let r=e.lastAttemptAt?yt(t,e.lastAttemptAt):``,i=e.lastError?.retryAfterMs,a=i==null?null:Math.ceil(Math.max(0,(e.lastAttemptAt+i-t)/1e3));return(0,z.jsxs)(`span`,{className:`flex items-center gap-1 shrink-0 text-muted-foreground`,children:[n,r&&(0,z.jsx)(`span`,{children:r}),a!=null&&a>0&&(0,z.jsxs)(`span`,{className:`text-amber-400/70`,children:[`~`,a,`s`]})]})}let r=df(e,`5h`),i=df(e,`7d`);function a(e){if(!e)return null;let n=Math.round(e.utilization*100),r=ff(t,e.resetsAt);return(0,z.jsxs)(`span`,{className:`tabular-nums`,children:[n,`%`,r?`/${r}`:``]})}let o=(e.stale||e.lastError)&&e.lastAttemptAt?yt(t,e.lastAttemptAt):``;return(0,z.jsxs)(`span`,{className:`flex items-center gap-1.5 shrink-0 text-foreground/70`,children:[n,a(r),a(i),o&&(0,z.jsx)(`span`,{className:`text-muted-foreground/70`,children:o})]})}function mf(){try{let e=localStorage.getItem(cf);return{open:!0,pinned:!1,...e?JSON.parse(e):{}}}catch{return{open:!0,pinned:!1}}}function hf(e){try{localStorage.setItem(cf,JSON.stringify(e))}catch{}}function gf(){let[{open:e,pinned:t},n]=(0,R.useState)(mf),[r,i]=(0,R.useState)(null),[a,o]=(0,R.useState)(null),[s,c]=(0,R.useState)(`loading`),l=ut(),u=A(e=>e.connected);(0,R.useEffect)(()=>{if(!u)return;let e=!1;async function t(){try{let[t,n]=await Promise.all([g(`GET`,`/provider-quotas`),g(`GET`,`/providers/quota-config`).catch(()=>null)]);e||(i(t),o(n),c(`ok`))}catch{e||c(`error`)}}t();let n=setInterval(()=>void t(),lf);return()=>{e=!0,clearInterval(n)}},[u,A(e=>e.quotaSeq)]);let d=e||t,f=(r?.quotas??[]).filter(e=>a?.[e.provider]?.showInWidget!==!1),p=f.some(e=>e.stale&&!uf(e)),m=f.some(e=>e.lastError&&!uf(e));function h(){if(t)return;let r={open:!e,pinned:t};n(r),hf(r)}function _(){let r=t?{open:e,pinned:!1}:{open:!0,pinned:!0};n(r),hf(r)}return(0,z.jsxs)(`div`,{className:`shrink-0 border-b border-border`,children:[(0,z.jsxs)(`div`,{className:`w-full flex items-center gap-2 px-4 py-2 text-xs hover:bg-muted/30 transition-colors`,children:[(0,z.jsxs)(`button`,{type:`button`,onClick:h,"aria-expanded":d,className:`min-w-0 flex flex-1 items-center gap-2 text-left`,children:[(0,z.jsx)(we,{className:`w-3.5 h-3.5 shrink-0 text-muted-foreground transition-transform ${d?`rotate-90`:``}`}),(0,z.jsx)(`span`,{className:`font-semibold text-foreground/80 shrink-0 ${d?``:`hidden sm:inline`}`,children:`Provider Quotas`}),s===`loading`&&(0,z.jsx)(Re,{className:`w-3 h-3 text-muted-foreground animate-spin`}),s===`error`&&(0,z.jsx)(`span`,{className:`text-amber-400 text-[10px]`,children:`● unavailable`}),!d&&s===`ok`&&f.length>0&&(0,z.jsx)(`div`,{className:`flex min-w-0 flex-1 flex-wrap items-center gap-x-3 gap-y-0.5 text-[10px]`,children:f.map(e=>(0,z.jsx)(pf,{record:e,now:l},`${e.provider}:${e.accountKey}`))}),d&&p&&(0,z.jsx)(`span`,{className:`text-amber-400 text-[10px]`,children:`● stale`}),d&&m&&(0,z.jsx)(`span`,{className:`text-red-400 text-[10px]`,children:`● error`})]}),(0,z.jsx)(`button`,{type:`button`,onClick:_,"aria-pressed":t,title:t?`Unpin`:`Pin always-on`,className:`p-0.5 rounded hover:bg-muted transition-colors ${t?`text-primary`:`text-muted-foreground/50 hover:text-muted-foreground`}`,children:(0,z.jsx)(ue,{className:`w-3 h-3`})})]}),d&&(0,z.jsxs)(`div`,{className:`px-4 py-3`,children:[s===`loading`&&(0,z.jsxs)(`p`,{className:`text-xs text-muted-foreground flex items-center gap-1.5`,children:[(0,z.jsx)(Re,{className:`w-3 h-3 animate-spin`}),`Loading quota data…`]}),s===`error`&&(0,z.jsx)(`p`,{className:`text-xs text-muted-foreground`,children:`Quota data unavailable — check that you are authenticated and the server is reachable.`}),s===`ok`&&r!==null&&f.length===0&&(0,z.jsx)(`p`,{className:`text-xs text-muted-foreground`,children:`No quota data yet — waiting for runner to report.`}),s===`ok`&&r!==null&&f.length>0&&(0,z.jsx)(`div`,{className:`grid grid-cols-1 md:grid-cols-2 xl:grid-cols-3 gap-3`,children:f.map(e=>(0,z.jsx)(_f,{record:e,now:l},`${e.provider}:${e.accountKey}`))})]})]})}function _f({record:e,now:t}){let{provider:n,accountKey:r,quota:i,stale:a,lastError:o,lastUpdatedAt:s,lastAttemptAt:c}=e;if(uf(e))return(0,z.jsxs)(`div`,{className:`rounded border border-border bg-muted/20 p-3 space-y-1.5 opacity-70`,children:[(0,z.jsxs)(`div`,{className:`flex items-center gap-1.5 min-w-0`,children:[(0,z.jsx)(tu,{provider:n,className:`w-3.5 h-3.5 text-muted-foreground`}),(0,z.jsx)(`span`,{className:`text-[9px] font-medium text-muted-foreground bg-muted border border-border rounded px-1 py-0.5 shrink-0`,children:`unavailable`})]}),(0,z.jsxs)(`p`,{className:`text-[10px] text-muted-foreground`,children:[`Quota unavailable — `,o?.message??`no readable credentials`]})]});let l=o?.retryAfterMs,u=l==null?null:Math.max(0,c+l-t),d=u==null?null:Math.ceil(u/1e3),f=(a||!!o)&&c>0;return(0,z.jsxs)(`div`,{className:`rounded border ${o?`border-red-500/30`:a?`border-amber-500/30`:`border-border`} bg-card p-3 space-y-2`,children:[(0,z.jsxs)(`div`,{className:`flex items-center justify-between gap-2`,children:[(0,z.jsxs)(`div`,{className:`flex items-center gap-1.5 min-w-0`,children:[(0,z.jsx)(tu,{provider:n,className:`w-3.5 h-3.5`}),(0,z.jsx)(`span`,{className:`text-[10px] text-muted-foreground font-mono truncate`,children:r})]}),(0,z.jsxs)(`div`,{className:`flex items-center gap-1 shrink-0`,children:[a&&(0,z.jsx)(`span`,{className:`text-[9px] font-medium text-amber-400 bg-amber-500/10 border border-amber-500/20 rounded px-1 py-0.5`,children:`stale`}),o&&(0,z.jsx)(`span`,{className:`text-[9px] font-medium text-red-400 bg-red-500/10 border border-red-500/20 rounded px-1 py-0.5`,title:o.message,children:o.type===`rate_limited`?`429`:`err`})]})]}),i?(0,z.jsx)(`div`,{className:`space-y-1.5`,children:i.windows.map(e=>{let n=Math.round(e.utilization*100),r=n>=90?`bg-red-500`:n>=70?`bg-amber-500`:`bg-emerald-500`,i=e.resetsAt?sf(t,e.resetsAt):``;return(0,z.jsxs)(`div`,{className:`space-y-0.5`,children:[(0,z.jsxs)(`div`,{className:`flex justify-between text-[10px] text-muted-foreground`,children:[(0,z.jsx)(`span`,{children:of(e.name)}),(0,z.jsxs)(`span`,{children:[n,`%`,i?` · resets in ${i}`:``]})]}),(0,z.jsx)(`div`,{className:`h-1.5 rounded-full bg-muted overflow-hidden`,children:(0,z.jsx)(`div`,{className:`h-full ${r} transition-all duration-500`,style:{width:`${Math.max(0,Math.min(100,n))}%`}})})]},e.name)})}):(0,z.jsx)(`p`,{className:`text-[10px] text-muted-foreground italic`,children:o?o.message:`No quota data`}),(0,z.jsxs)(`div`,{className:`flex items-start justify-between gap-2 text-[10px] text-muted-foreground/60`,children:[(0,z.jsxs)(`div`,{className:`space-y-0.5 min-w-0`,children:[f&&(0,z.jsxs)(`div`,{children:[`Attempted `,yt(t,c)]}),(0,z.jsx)(`div`,{children:s?`Updated ${yt(t,s)}`:`Never updated`})]}),d!=null&&(0,z.jsx)(`span`,{className:`text-amber-400/70 shrink-0 mt-0.5`,children:d>0?`retry in ~${d>60?`${Math.ceil(d/60)}m`:`${d}s`}`:`retrying…`})]})]})}function vf(e){return(0,R.lazy)(()=>Bn(e))}var yf=vf(()=>L(()=>import(`./overview-EqnqXVUb.js`).then(e=>({default:e.OverviewView})),__vite__mapDeps([15,1,6,8,9,16,11,17]),import.meta.url)),bf=vf(()=>L(()=>import(`./chat-BEssCn_H.js`).then(e=>({default:e.ChatView})),__vite__mapDeps([18,1,6,19,8,9,20,21,22,23,24,10,11,16,25,12]),import.meta.url)),xf=vf(()=>L(()=>import(`./agents-C2TNRCn1.js`).then(e=>({default:e.AgentsView})),__vite__mapDeps([26,1,27,28,6,11,29,19,30,31,32,33,34,8,9,23,24,10,16,17]),import.meta.url)),Sf=vf(()=>L(()=>import(`./managed-agents-DCfSlqW7.js`).then(e=>({default:e.ManagedAgentsView})),__vite__mapDeps([35,1,6,8,9,24,10,11,16]),import.meta.url)),Cf=vf(()=>L(()=>import(`./teams-C9C3KVaV.js`).then(e=>({default:e.TeamsView})),__vite__mapDeps([36,1,37,27,28,6,11,29,19,30,31,38,39,40,32,34,41,8,9,22,16,10,17,25]),import.meta.url)),wf=vf(()=>L(()=>import(`./agent-profiles-CLJNeVxc.js`).then(e=>({default:e.AgentProfilesView})),__vite__mapDeps([42,6,1,8,9,16,11,10]),import.meta.url)),Tf=vf(()=>L(()=>import(`./orchestrators-CAWYWXmh.js`).then(e=>({default:e.OrchestratorsView})),__vite__mapDeps([43,6,1,8,9,16,11,10,17]),import.meta.url)),Ef=vf(()=>L(()=>import(`./workspaces-C740m1ys.js`).then(e=>({default:e.WorkspacesView})),__vite__mapDeps([44,1,6,8,9,24,10,11,16,17]),import.meta.url)),Df=vf(()=>L(()=>import(`./channels-BQbNtrtF.js`).then(e=>({default:e.ChannelsView})),__vite__mapDeps([45,6,1,8,9,16,11,10,17]),import.meta.url)),Of=vf(()=>L(()=>import(`./connectors-CmARSKoV.js`).then(e=>({default:e.ConnectorsView})),__vite__mapDeps([46,6,1,8,9,16,11,10,17]),import.meta.url)),kf=vf(()=>L(()=>import(`./integrations-D9Cx-7ma.js`).then(e=>({default:e.IntegrationsView})),__vite__mapDeps([47,6,1,8,9,16,11,10,17]),import.meta.url)),Af=vf(()=>L(()=>import(`./security-CJVJ9MgS.js`).then(e=>({default:e.SecurityView})),__vite__mapDeps([48,1,6,24,10,11,16,17,25]),import.meta.url)),jf=vf(()=>L(()=>import(`./memory-DatJLjrc.js`).then(e=>({default:e.MemoryView})),__vite__mapDeps([49,1,6,8,9,16,11,10,17,25]),import.meta.url)),Mf=vf(()=>L(()=>import(`./activity-VTlBVIox.js`).then(e=>({default:e.ActivityView})),__vite__mapDeps([50,1,6,8,9,20,21,16,11,10,17]),import.meta.url)),Nf=vf(()=>L(()=>import(`./pairs-BfKenirO.js`).then(e=>({default:e.PairsView})),__vite__mapDeps([51,6,1,8,9,16,11,10,17]),import.meta.url)),Pf=vf(()=>L(()=>import(`./messages-CQsmbtzx.js`).then(e=>({default:e.MessagesView})),__vite__mapDeps([52,1,6,8,9,16,11,10,17]),import.meta.url)),Ff=vf(()=>L(()=>import(`./work-queue-Vc_2-4DG.js`).then(e=>({default:e.WorkQueueView})),__vite__mapDeps([53,6,1,8,9,16,11,10,17]),import.meta.url)),If=vf(()=>L(()=>import(`./tasks-DTdI_MJi.js`).then(e=>({default:e.TasksView})),__vite__mapDeps([54,1,6,8,9,16,11,10,17]),import.meta.url)),Lf=vf(()=>L(()=>import(`./automation-CUSyRZla.js`).then(e=>({default:e.AutomationView})),__vite__mapDeps([55,1,6,8,9,16,11,10,17,25]),import.meta.url)),Rf=vf(()=>L(()=>import(`./analytics-C1F28oqr.js`).then(e=>({default:e.AnalyticsView})),__vite__mapDeps([56,1,6,8,9,17,57]),import.meta.url)),zf=vf(()=>L(()=>import(`./insights-9P_MGbMS.js`).then(e=>({default:e.InsightsView})),__vite__mapDeps([58,1,6,16,11,10,17,25,9]),import.meta.url)),Bf=vf(()=>L(()=>import(`./projects-hU5KGW_T.js`).then(e=>({default:e.ProjectsView})),__vite__mapDeps([59,1,6,8,9,24,10,11,16,17]),import.meta.url)),Vf=vf(()=>L(()=>import(`./maintenance-CA1XujU3.js`).then(e=>({default:e.MaintenanceView})),__vite__mapDeps([60,1,6,8,9,16,11,10]),import.meta.url)),Hf=vf(()=>L(()=>import(`./settings-BWO-UyHv.js`).then(e=>({default:e.SettingsView})),__vite__mapDeps([61,1,37,27,28,6,11,29,19,30,31,38,39,40,32,34,41,8,9,21,16,10,17,25,57]),import.meta.url)),Uf=class extends R.Component{state={error:null};static getDerivedStateFromError(e){return{error:e}}componentDidCatch(e,t){console.error(`[ErrorBoundary]`,e.message,`
21
+ `)})]})]})}function pd(e){if(!Kt(e)||typeof e.lastError!=`string`)return null;let t=Kt(e.systemd)?{unit:typeof e.systemd.unit==`string`?e.systemd.unit:void 0,activeState:typeof e.systemd.activeState==`string`?e.systemd.activeState:void 0,subState:typeof e.systemd.subState==`string`?e.systemd.subState:void 0,result:typeof e.systemd.result==`string`?e.systemd.result:void 0,execMainCode:typeof e.systemd.execMainCode==`string`?e.systemd.execMainCode:void 0,execMainStatus:typeof e.systemd.execMainStatus==`string`?e.systemd.execMainStatus:void 0}:void 0;return{lastError:e.lastError,detectedAt:typeof e.detectedAt==`number`?e.detectedAt:void 0,runtimeMs:typeof e.runtimeMs==`number`?e.runtimeMs:void 0,logFile:typeof e.logFile==`string`?e.logFile:void 0,logBytes:typeof e.logBytes==`number`?e.logBytes:void 0,logEmpty:typeof e.logEmpty==`boolean`?e.logEmpty:void 0,logTail:Array.isArray(e.logTail)?e.logTail.filter(e=>typeof e==`string`):void 0,systemd:t,unavailable:Array.isArray(e.unavailable)?e.unavailable.filter(e=>typeof e==`string`):void 0}}function md({className:e,children:t,...n}){return(0,z.jsxs)(is,{"data-slot":`scroll-area`,className:_(`relative`,e),...n,children:[(0,z.jsx)(as,{"data-slot":`scroll-area-viewport`,className:`size-full rounded-[inherit] transition-[color,box-shadow] outline-none focus-visible:ring-[3px] focus-visible:ring-ring/50 focus-visible:outline-1`,children:t}),(0,z.jsx)(hd,{}),(0,z.jsx)(os,{})]})}function hd({className:e,orientation:t=`vertical`,...n}){return(0,z.jsx)(Mo,{"data-slot":`scroll-area-scrollbar`,"data-orientation":t,orientation:t,className:_(`flex touch-none p-px transition-colors select-none data-horizontal:h-2.5 data-horizontal:flex-col data-horizontal:border-t data-horizontal:border-t-transparent data-vertical:h-full data-vertical:w-2.5 data-vertical:border-l data-vertical:border-l-transparent`,e),...n,children:(0,z.jsx)(Uo,{"data-slot":`scroll-area-thumb`,className:`relative flex-1 rounded-full bg-border`})})}function gd(){let e=A(e=>e.channelDetailOpen),t=A(e=>e.channelDetailId),n=A(e=>e.channels),r=A(e=>e.messages),i=A(e=>e.agentsById),a=ut(),o=A(e=>e.closeChannelDetail),s=n.find(e=>e.id===t)||null,c=Dt(s),l=(0,R.useMemo)(()=>s?r.filter(e=>Ft(e,s)).sort((e,t)=>t.id-e.id).slice(0,8):[],[r,s]);return(0,z.jsx)(q,{open:e,onOpenChange:e=>!e&&o(),children:(0,z.jsxs)(Hl,{className:`w-full max-w-[100dvw] sm:max-w-md lg:max-w-lg p-0`,children:[(0,z.jsx)(Ul,{className:`shrink-0 p-4 border-b border-border`,children:(0,z.jsxs)(`div`,{className:`flex items-center gap-2 min-w-0`,children:[(0,z.jsx)(P,{className:vt(c.tone),children:c.label}),(0,z.jsx)(Wl,{className:`text-base truncate`,children:s?.name||`Channel`})]})}),(0,z.jsx)(md,{className:`flex-1 min-h-0`,children:(0,z.jsxs)(`div`,{className:`p-4 space-y-4`,children:[s&&(0,z.jsxs)(z.Fragment,{children:[(0,z.jsxs)(`div`,{children:[(0,z.jsx)(`h3`,{className:`text-sm font-medium mb-2`,children:`Route`}),(0,z.jsxs)(`div`,{className:`space-y-1 text-sm`,children:[(0,z.jsxs)(`div`,{className:`flex justify-between gap-2`,children:[(0,z.jsx)(`span`,{className:`text-muted-foreground shrink-0`,children:`Type`}),(0,z.jsx)(`span`,{className:`truncate`,children:s.type})]}),(0,z.jsxs)(`div`,{className:`flex justify-between gap-2`,children:[(0,z.jsx)(`span`,{className:`text-muted-foreground shrink-0`,children:`Direction`}),(0,z.jsx)(`span`,{className:`truncate`,children:s.direction})]}),s.target&&(0,z.jsxs)(`div`,{className:`flex justify-between gap-2`,children:[(0,z.jsx)(`span`,{className:`text-muted-foreground shrink-0`,children:`Target`}),(0,z.jsx)(`span`,{className:`truncate`,children:s.target})]}),(0,z.jsxs)(`div`,{className:`flex justify-between gap-2`,children:[(0,z.jsx)(`span`,{className:`text-muted-foreground shrink-0`,children:`Agent`}),(0,z.jsx)(`span`,{className:`truncate`,children:s.agentId})]}),(0,z.jsxs)(`div`,{className:`flex justify-between gap-2`,children:[(0,z.jsx)(`span`,{className:`text-muted-foreground shrink-0`,children:`Transport`}),(0,z.jsx)(`span`,{className:`truncate`,children:s.transport})]}),(0,z.jsxs)(`div`,{className:`flex justify-between gap-2`,children:[(0,z.jsx)(`span`,{className:`text-muted-foreground shrink-0`,children:`Last seen`}),(0,z.jsx)(`span`,{className:`shrink-0`,children:yt(a,s.lastSeen)})]})]})]}),Tt(s.capabilities).length>0&&(0,z.jsxs)(z.Fragment,{children:[(0,z.jsx)(Uc,{}),(0,z.jsxs)(`div`,{children:[(0,z.jsx)(`h3`,{className:`text-sm font-medium mb-2`,children:`Capabilities`}),(0,z.jsx)(`div`,{className:`flex flex-wrap gap-1`,children:Tt(s.capabilities).map(e=>(0,z.jsx)(P,{variant:`secondary`,className:`text-[10px]`,children:e},e))})]})]}),s.meta&&Object.keys(s.meta).length>0&&(0,z.jsxs)(z.Fragment,{children:[(0,z.jsx)(Uc,{}),(0,z.jsxs)(`div`,{children:[(0,z.jsx)(`h3`,{className:`text-sm font-medium mb-2`,children:`Metadata`}),(0,z.jsx)(`div`,{className:`space-y-1 text-sm`,children:Object.entries(s.meta).map(([e,t])=>(0,z.jsxs)(`div`,{className:`flex justify-between gap-2 min-w-0`,children:[(0,z.jsx)(`span`,{className:`text-muted-foreground shrink-0`,children:e}),(0,z.jsx)(`span`,{className:`truncate`,children:String(t)})]},e))})]})]})]}),l.length>0&&(0,z.jsxs)(z.Fragment,{children:[(0,z.jsx)(Uc,{}),(0,z.jsxs)(`div`,{children:[(0,z.jsx)(`h3`,{className:`text-sm font-medium mb-2`,children:`Recent Messages`}),(0,z.jsx)(`div`,{className:`space-y-2`,children:l.map(e=>(0,z.jsxs)(`div`,{className:`rounded border border-border p-2 text-xs space-y-0.5 min-w-0`,children:[(0,z.jsxs)(`div`,{className:`flex items-center gap-1 text-muted-foreground min-w-0`,children:[(0,z.jsx)(`span`,{className:`font-medium text-foreground truncate shrink-0 max-w-[40%]`,children:kt(e.from,i)}),(0,z.jsx)(`span`,{className:`shrink-0`,children:`→`}),(0,z.jsx)(`span`,{className:`truncate max-w-[40%]`,children:kt(e.to,i)}),(0,z.jsxs)(`span`,{className:`ml-auto shrink-0 text-[10px]`,children:[(0,z.jsxs)(`span`,{className:`opacity-40 mr-1`,children:[`#`,e.id]}),yt(a,e.createdAt)]})]}),(0,z.jsx)(`div`,{className:`text-foreground whitespace-pre-wrap break-words line-clamp-3`,children:It(e)})]},e.id))})]})]})]})})]})})}var _d=!1;function vd(e,t){let n=R.useRef(!1),r=R.useRef(t);r.current=t,R.useEffect(()=>{if(!e||!r.current)return;_d=!1,window.history.pushState({dialogGuard:!0},``),n.current=!0;function t(){if(_d){_d=!1;return}n.current&&(n.current=!1,r.current?.(!1))}return window.addEventListener(`popstate`,t),()=>{window.removeEventListener(`popstate`,t),n.current&&(n.current=!1,_d=!0,window.history.back())}},[e])}function yd({...e}){return vd(e.open,e.onOpenChange),(0,z.jsx)(Tr,{"data-slot":`dialog`,...e})}function bd({...e}){return(0,z.jsx)(Er,{"data-slot":`dialog-portal`,...e})}function Z({className:e,blur:t=!0,...n}){return(0,z.jsx)(Dr,{"data-slot":`dialog-overlay`,className:_(`fixed inset-0 isolate z-50 bg-black/10 duration-100 data-open:animate-in data-open:fade-in-0 data-closed:animate-out data-closed:fade-out-0`,t&&`supports-backdrop-filter:backdrop-blur-xs`,e),...n})}function xd({className:e,children:t,showCloseButton:n=!0,blurOverlay:r=!0,...i}){return(0,z.jsxs)(bd,{children:[(0,z.jsx)(Z,{blur:r}),(0,z.jsxs)(Or,{"data-slot":`dialog-content`,className:_(`fixed top-1/2 left-1/2 z-50 grid w-full max-w-[calc(100%-2rem)] -translate-x-1/2 -translate-y-1/2 gap-4 rounded-xl bg-popover p-4 text-sm text-popover-foreground ring-1 ring-foreground/10 duration-100 outline-none data-open:animate-in data-open:fade-in-0 data-open:zoom-in-95 data-closed:animate-out data-closed:fade-out-0 data-closed:zoom-out-95`,e),...i,children:[t,n&&(0,z.jsx)(jr,{"data-slot":`dialog-close`,asChild:!0,children:(0,z.jsxs)(F,{variant:`ghost`,className:`absolute top-2 right-2`,size:`icon-sm`,children:[(0,z.jsx)(Me,{}),(0,z.jsx)(`span`,{className:`sr-only`,children:`Close`})]})})]})]})}function Sd({className:e,...t}){return(0,z.jsx)(`div`,{"data-slot":`dialog-header`,className:_(`flex flex-col gap-2`,e),...t})}function Cd({className:e,showCloseButton:t=!1,children:n,...r}){return(0,z.jsxs)(`div`,{"data-slot":`dialog-footer`,className:_(`-mx-4 -mb-4 flex flex-col-reverse gap-2 rounded-b-xl border-t bg-muted/50 p-4 sm:flex-row sm:justify-end`,e),...r,children:[n,t&&(0,z.jsx)(jr,{asChild:!0,children:(0,z.jsx)(F,{variant:`outline`,children:`Close`})})]})}function wd({className:e,...t}){return(0,z.jsx)(kr,{"data-slot":`dialog-title`,className:_(`font-heading text-base leading-none font-medium`,e),...t})}function Td({className:e,...t}){return(0,z.jsx)(Ar,{"data-slot":`dialog-description`,className:_(`text-sm text-muted-foreground *:[a]:underline *:[a]:underline-offset-3 *:[a]:hover:text-foreground`,e),...t})}function Ed({className:e,...t}){return(0,z.jsx)(`textarea`,{"data-slot":`textarea`,className:_(`flex field-sizing-content min-h-16 w-full rounded-lg border border-input bg-transparent px-2.5 py-2 text-base transition-colors outline-none placeholder:text-muted-foreground focus-visible:border-ring focus-visible:ring-3 focus-visible:ring-ring/50 disabled:cursor-not-allowed disabled:bg-input/50 disabled:opacity-50 aria-invalid:border-destructive aria-invalid:ring-3 aria-invalid:ring-destructive/20 md:text-sm dark:bg-input/30 dark:disabled:bg-input/80 dark:aria-invalid:border-destructive/50 dark:aria-invalid:ring-destructive/40`,e),...t})}function Q({className:e,...t}){return(0,z.jsx)(xo,{"data-slot":`label`,className:_(`flex items-center gap-2 text-sm leading-none font-medium select-none group-data-[disabled=true]:pointer-events-none group-data-[disabled=true]:opacity-50 peer-disabled:cursor-not-allowed peer-disabled:opacity-50`,e),...t})}function Dd(){let e=A(e=>e.composeOpen),t=A(e=>e.compose),n=A(e=>e.replyTo),r=A(e=>e.set),i=A(e=>e.doSend),a=A(e=>e.cancelReply),o=Ic();function s(){r({composeOpen:!1}),a()}function c(e){r({compose:{...t,...e}})}return(0,z.jsx)(yd,{open:e,onOpenChange:e=>!e&&s(),children:(0,z.jsxs)(xd,{className:`max-w-lg`,children:[(0,z.jsx)(Sd,{children:(0,z.jsx)(wd,{children:n?`Reply to #${n.id}`:`Compose Message`})}),(0,z.jsxs)(`div`,{className:`space-y-3`,children:[(0,z.jsxs)(`div`,{children:[(0,z.jsx)(Q,{children:`From`}),(0,z.jsxs)(`select`,{className:`w-full mt-1 rounded-md border border-input bg-background px-3 py-2 text-sm`,value:t.from,onChange:e=>c({from:e.target.value}),children:[(0,z.jsx)(`option`,{value:``,children:`Select agent...`}),o.map(e=>(0,z.jsx)(`option`,{value:e.id,children:j(e)},e.id))]})]}),(0,z.jsxs)(`div`,{children:[(0,z.jsx)(Q,{children:`To`}),(0,z.jsx)(I,{value:t.to,onChange:e=>c({to:e.target.value}),placeholder:`agent-id, tag:name, cap:name, or broadcast`})]}),(0,z.jsxs)(`div`,{children:[(0,z.jsx)(Q,{children:`Subject`}),(0,z.jsx)(I,{value:t.subject,onChange:e=>c({subject:e.target.value}),placeholder:`Optional subject...`})]}),(0,z.jsxs)(`div`,{children:[(0,z.jsx)(Q,{children:`Channel`}),(0,z.jsx)(I,{value:t.channel,onChange:e=>c({channel:e.target.value}),placeholder:`Optional channel...`})]}),(0,z.jsxs)(`div`,{children:[(0,z.jsx)(Q,{children:`Message`}),(0,z.jsx)(Ed,{value:t.body,onChange:e=>c({body:e.target.value}),rows:4,placeholder:`Message body...`,autoFocus:!0})]}),(0,z.jsxs)(`label`,{className:`flex items-center gap-2`,children:[(0,z.jsx)(Hc,{checked:t.claimable,onCheckedChange:e=>c({claimable:e})}),(0,z.jsx)(`span`,{className:`text-sm text-muted-foreground`,children:`Claimable task`})]})]}),(0,z.jsxs)(Cd,{children:[(0,z.jsx)(F,{variant:`outline`,onClick:s,children:`Cancel`}),(0,z.jsx)(F,{onClick:i,children:`Send`})]})]})})}function Od(){let e=A(e=>e.confirmModal),t=A(e=>e.set);function n(){t({confirmModal:{show:!1,title:``,message:``,action:null}})}return(0,z.jsx)(yd,{open:e.show,onOpenChange:e=>!e&&n(),children:(0,z.jsxs)(xd,{className:`sm:max-w-sm`,children:[(0,z.jsxs)(Sd,{children:[(0,z.jsx)(wd,{children:e.title}),(0,z.jsx)(Td,{children:e.message})]}),(0,z.jsxs)(Cd,{children:[(0,z.jsx)(F,{variant:`outline`,onClick:n,children:`Cancel`}),(0,z.jsx)(F,{variant:`destructive`,onClick:()=>{e.action?.(),n()},children:`Confirm`})]})]})})}function kd(){let e=A(e=>e.errorModal),t=A(e=>e.set);function n(){t({errorModal:{show:!1,title:``,message:``}})}return(0,z.jsx)(yd,{open:e.show,onOpenChange:e=>!e&&n(),children:(0,z.jsxs)(xd,{className:`sm:max-w-sm`,children:[(0,z.jsxs)(Sd,{children:[(0,z.jsx)(wd,{children:e.title}),(0,z.jsx)(Td,{children:e.message})]}),(0,z.jsx)(Cd,{children:(0,z.jsx)(F,{onClick:n,children:`OK`})})]})})}function Ad(){let e=A(e=>e.renameModal),t=A(e=>e.set),n=A(e=>e.doRename);function r(){t({renameModal:{show:!1,agentId:``,label:``}})}return(0,z.jsx)(yd,{open:e.show,onOpenChange:e=>!e&&r(),children:(0,z.jsxs)(xd,{className:`sm:max-w-sm`,children:[(0,z.jsx)(Sd,{children:(0,z.jsx)(wd,{children:`Rename Agent`})}),(0,z.jsxs)(`div`,{className:`space-y-3`,children:[(0,z.jsx)(Q,{children:`Label`}),(0,z.jsx)(I,{value:e.label,onChange:n=>t({renameModal:{...e,label:n.target.value}}),onKeyDown:e=>e.key===`Enter`&&n(),placeholder:`Human-friendly name...`,autoFocus:!0}),(0,z.jsx)(`p`,{className:`text-xs text-muted-foreground`,children:`Leave empty to clear the label.`})]}),(0,z.jsxs)(Cd,{children:[(0,z.jsx)(F,{variant:`outline`,onClick:r,children:`Cancel`}),(0,z.jsx)(F,{onClick:n,children:`Save`})]})]})})}function jd(){let e=A(e=>e.pairInviteOpen),t=A(e=>e.pairInvite),n=A(e=>e.set),r=A(e=>e.closePairInvite),i=A(e=>e.doCreatePair),a=Ic();function o(e){n({pairInvite:{...t,...e}})}return(0,z.jsx)(yd,{open:e,onOpenChange:e=>!e&&r(),children:(0,z.jsxs)(xd,{className:`sm:max-w-sm`,children:[(0,z.jsx)(Sd,{children:(0,z.jsx)(wd,{children:`Pair Agents`})}),(0,z.jsxs)(`div`,{className:`space-y-3`,children:[(0,z.jsxs)(`div`,{children:[(0,z.jsx)(Q,{children:`Requester`}),(0,z.jsxs)(`select`,{className:`w-full mt-1 rounded-md border border-input bg-background px-3 py-2 text-sm`,value:t.requesterId,onChange:e=>o({requesterId:e.target.value}),children:[(0,z.jsx)(`option`,{value:``,children:`Select agent...`}),a.map(e=>(0,z.jsx)(`option`,{value:e.id,children:j(e)},e.id))]})]}),(0,z.jsxs)(`div`,{children:[(0,z.jsx)(Q,{children:`Target`}),(0,z.jsxs)(`select`,{className:`w-full mt-1 rounded-md border border-input bg-background px-3 py-2 text-sm`,value:t.targetId,onChange:e=>o({targetId:e.target.value}),children:[(0,z.jsx)(`option`,{value:``,children:`Select agent...`}),a.map(e=>(0,z.jsx)(`option`,{value:e.id,children:j(e)},e.id))]})]}),(0,z.jsxs)(`div`,{children:[(0,z.jsx)(Q,{children:`Objective`}),(0,z.jsx)(I,{value:t.objective,onChange:e=>o({objective:e.target.value}),placeholder:`What should they work on?`})]})]}),(0,z.jsxs)(Cd,{children:[(0,z.jsx)(F,{variant:`outline`,onClick:r,children:`Cancel`}),(0,z.jsx)(F,{onClick:i,children:`Create Pair`})]})]})})}function Md(){let e=A(e=>e.pairMessageOpen),t=A(e=>e.pairMessage),n=A(e=>e.set),r=A(e=>e.closePairMessage),i=A(e=>e.doSendPairMessage);function a(e){n({pairMessage:{...t,...e}})}return(0,z.jsx)(yd,{open:e,onOpenChange:e=>!e&&r(),children:(0,z.jsxs)(xd,{className:`sm:max-w-sm`,children:[(0,z.jsx)(Sd,{children:(0,z.jsx)(wd,{children:`Pair Message`})}),(0,z.jsxs)(`div`,{className:`space-y-3`,children:[(0,z.jsxs)(`div`,{children:[(0,z.jsx)(Q,{children:`Subject`}),(0,z.jsx)(I,{value:t.subject,onChange:e=>a({subject:e.target.value}),placeholder:`Optional subject...`})]}),(0,z.jsxs)(`div`,{children:[(0,z.jsx)(Q,{children:`Message`}),(0,z.jsx)(Ed,{value:t.body,onChange:e=>a({body:e.target.value}),rows:4,placeholder:`Message body...`,autoFocus:!0})]})]}),(0,z.jsxs)(Cd,{children:[(0,z.jsx)(F,{variant:`outline`,onClick:r,children:`Cancel`}),(0,z.jsx)(F,{onClick:i,children:`Send`})]})]})})}var $=(0,R.lazy)(()=>L(()=>import(`./formatted-body-impl-CwziXint.js`).then(e=>({default:e.FormattedBody})),__vite__mapDeps([14,1,5,3,6,8,9]),import.meta.url));function Nd(e){return(0,z.jsx)(R.Suspense,{fallback:(0,z.jsx)(`span`,{className:e.className,children:e.text}),children:(0,z.jsx)($,{...e})})}function Pd(){let e=A(e=>e.threadOpen),t=A(e=>e.threadMessages),n=A(e=>e.agentsById),r=ut(),i=A(e=>e.set);return(0,z.jsx)(yd,{open:e,onOpenChange:e=>!e&&i({threadOpen:!1}),children:(0,z.jsxs)(xd,{className:`max-w-2xl max-h-[80vh]`,children:[(0,z.jsx)(Sd,{children:(0,z.jsxs)(wd,{children:[`Thread (`,t.length,` messages)`]})}),(0,z.jsx)(md,{className:`max-h-[60vh]`,children:(0,z.jsx)(`div`,{className:`space-y-3 pr-4`,children:t.map(e=>(0,z.jsxs)(`div`,{className:`rounded-lg border border-border p-3 space-y-1`,children:[(0,z.jsxs)(`div`,{className:`flex items-center gap-2 text-sm`,children:[(0,z.jsx)(`span`,{className:`font-medium`,children:kt(e.from,n)}),(0,z.jsx)(`span`,{className:`text-muted-foreground`,children:`→`}),(0,z.jsx)(`span`,{className:`text-muted-foreground`,children:kt(e.to,n)}),(0,z.jsx)(`span`,{className:`ml-auto text-xs text-muted-foreground`,children:yt(r,e.createdAt)})]}),e.subject&&(0,z.jsx)(`div`,{className:`text-sm font-medium`,children:e.subject}),(0,z.jsx)(Nd,{text:It(e),rawBody:e.body,issueRepo:n[e.from===`user`?e.to:e.from]?.issueRepo,className:`text-sm text-muted-foreground`}),(0,z.jsxs)(`div`,{className:`flex gap-1.5 flex-wrap`,children:[e.channel&&(0,z.jsx)(P,{variant:`secondary`,className:`text-[10px]`,children:e.channel}),e.claimedBy&&(0,z.jsxs)(P,{variant:`secondary`,className:`text-[10px]`,children:[`claimed by `,kt(e.claimedBy,n)]})]})]},e.id))})})]})})}function Fd(){let e=A(e=>e.taskEventsOpen),t=A(e=>e.taskEvents),n=A(e=>e.set),r=A(e=>e.switchView);function i(e){n({selectedMemoryId:e,taskEventsOpen:!1}),r(`memory`)}return(0,z.jsx)(yd,{open:e,onOpenChange:e=>!e&&n({taskEventsOpen:!1}),children:(0,z.jsxs)(xd,{className:`max-w-2xl max-h-[80vh]`,children:[(0,z.jsx)(Sd,{children:(0,z.jsxs)(wd,{children:[`Task Events (`,t.length,`)`]})}),(0,z.jsx)(md,{className:`max-h-[60vh]`,children:(0,z.jsxs)(`div`,{className:`space-y-2 pr-4`,children:[t.map(e=>(0,z.jsxs)(`div`,{className:`flex items-start gap-3 rounded-lg border border-border p-3`,children:[(0,z.jsx)(P,{className:Rt[e.severity]||Rt.info,children:e.severity}),(0,z.jsxs)(`div`,{className:`flex-1 min-w-0`,children:[(0,z.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,z.jsx)(`span`,{className:`text-sm font-medium`,children:e.title}),(0,z.jsx)(P,{variant:`outline`,className:`text-[10px]`,children:e.type})]}),e.body&&(0,z.jsx)(`p`,{className:`text-sm text-muted-foreground mt-1 whitespace-pre-wrap`,children:e.body}),(0,z.jsx)(Id,{event:e,onOpen:i}),(0,z.jsxs)(`div`,{className:`text-xs text-muted-foreground mt-1`,children:[jt(e.createdAt),` · `,e.source]})]})]},e.id)),t.length===0&&(0,z.jsx)(`p`,{className:`text-sm text-muted-foreground text-center py-8`,children:`No events recorded.`})]})})]})})}function Id({event:e,onOpen:t}){if(e.type!==`memory.captured`)return null;let n=typeof e.metadata?.memoryId==`string`?e.metadata.memoryId:``,r=e.metadata?.memory&&typeof e.metadata.memory==`object`&&!Array.isArray(e.metadata.memory)?e.metadata.memory:{},i=typeof r.title==`string`?r.title:e.body||n,a=typeof r.scope==`string`?r.scope:``,o=typeof r.type==`string`?r.type:`memory`,s=typeof r.sensitivity==`string`?r.sensitivity:``;return(0,z.jsx)(`div`,{className:`mt-2 rounded-md border border-border bg-muted/20 p-2 text-xs`,children:(0,z.jsxs)(`div`,{className:`flex items-start gap-2`,children:[(0,z.jsx)(rt,{className:`w-3.5 h-3.5 mt-0.5 text-muted-foreground shrink-0`}),(0,z.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,z.jsxs)(`div`,{className:`flex flex-wrap gap-1 mb-1`,children:[(0,z.jsx)(P,{variant:`secondary`,className:`text-[10px]`,children:o}),a&&(0,z.jsx)(P,{variant:`outline`,className:`text-[10px] font-mono`,children:a}),s&&(0,z.jsx)(P,{variant:`outline`,className:`text-[10px]`,children:s})]}),(0,z.jsx)(`div`,{className:`font-medium truncate`,children:i}),n&&(0,z.jsx)(`div`,{className:`font-mono text-[10px] text-muted-foreground truncate`,children:n})]}),n&&(0,z.jsx)(F,{size:`sm`,variant:`outline`,className:`h-7 text-xs shrink-0`,onClick:()=>t(n),children:`Open`})]})})}function Ld({open:e,onOpenChange:t,onSelect:n,orchestratorId:r,initialPath:i,title:o=`Select Directory`}){let s=A(e=>e.apiCall),[c,l]=(0,R.useState)(!1),[u,d]=(0,R.useState)(null),[f,p]=(0,R.useState)(null),[m,h]=(0,R.useState)(!1),[g,_]=(0,R.useState)(``),[v,y]=(0,R.useState)(null),b=u?.path||i||``,x=(0,R.useMemo)(()=>b.split(`/`).filter(Boolean),[b]),S=(0,R.useCallback)(async e=>{if(r){l(!0),p(null),h(!1);try{let t=e?`?path=${encodeURIComponent(e)}`:``;d(await s(`GET`,`/orchestrators/${encodeURIComponent(r)}/directories${t}`))}catch(e){p(Ot(e))}finally{l(!1)}}},[r,s]);(0,R.useEffect)(()=>{e&&r&&(d(null),p(null),h(!1),S(i||void 0))},[e,r]);async function C(){if(!(!g.trim()||!u)){y(null);try{d(await s(`POST`,`/orchestrators/${encodeURIComponent(r)}/directories`,{path:u.path,name:g.trim()})),h(!1),_(``)}catch(e){y(Ot(e))}}}function ee(){b&&(n(b),t(!1))}function w(e){S(`/`+x.slice(0,e+1).join(`/`))}return(0,z.jsx)(yd,{open:e,onOpenChange:t,children:(0,z.jsxs)(xd,{className:`max-w-lg max-h-[85dvh] flex flex-col`,children:[(0,z.jsx)(Sd,{children:(0,z.jsxs)(wd,{className:`flex items-center gap-2`,children:[(0,z.jsx)(Pe,{className:`h-4 w-4`}),o]})}),(0,z.jsxs)(`div`,{className:`flex items-center gap-1 rounded-md border border-border bg-muted/50 px-2 py-1.5 text-xs overflow-x-auto`,children:[(0,z.jsx)(`button`,{type:`button`,className:`font-mono text-muted-foreground hover:text-foreground shrink-0`,onClick:()=>u?.baseDir&&S(u.baseDir),children:`/`}),x.map((e,t)=>(0,z.jsxs)(`span`,{className:`shrink-0`,children:[(0,z.jsx)(`button`,{type:`button`,className:`font-mono text-muted-foreground hover:text-foreground`,onClick:()=>w(t),children:e}),t<x.length-1&&(0,z.jsx)(`span`,{className:`text-muted-foreground/50 mx-0.5`,children:`/`})]},`${e}-${t}`))]}),(0,z.jsxs)(`div`,{className:`flex-1 min-h-0 rounded-md border border-border bg-background overflow-y-auto`,style:{maxHeight:`40dvh`},children:[c&&(0,z.jsx)(`div`,{className:`flex items-center justify-center py-8`,children:(0,z.jsx)(Re,{className:`h-5 w-5 animate-spin text-muted-foreground`})}),!c&&f&&(0,z.jsx)(`div`,{className:`px-3 py-4 text-sm text-destructive`,children:f}),!c&&u&&(0,z.jsxs)(`div`,{className:`p-1`,children:[u.parent&&(0,z.jsxs)(`button`,{type:`button`,className:`flex h-9 w-full items-center gap-2 rounded-md px-2 text-left text-sm hover:bg-muted`,onClick:()=>S(u.parent),children:[(0,z.jsx)(ge,{className:`h-4 w-4 text-muted-foreground`}),(0,z.jsx)(`span`,{className:`text-muted-foreground`,children:`..`})]}),u.entries.map(e=>(0,z.jsxs)(`button`,{type:`button`,className:`flex h-9 w-full items-center gap-2 rounded-md px-2 text-left text-sm hover:bg-muted`,onClick:()=>S(e.path),children:[(0,z.jsx)(ne,{className:`h-4 w-4 text-muted-foreground`}),(0,z.jsx)(`span`,{className:`truncate`,children:e.name})]},e.path)),u.entries.length===0&&!u.parent&&(0,z.jsx)(`div`,{className:`px-2 py-4 text-sm text-muted-foreground text-center`,children:`Empty directory`}),u.entries.length===0&&u.parent&&(0,z.jsx)(`div`,{className:`px-2 py-4 text-sm text-muted-foreground text-center`,children:`No subdirectories`})]})]}),m?(0,z.jsxs)(`div`,{className:`flex gap-2`,children:[(0,z.jsx)(I,{autoFocus:!0,value:g,onChange:e=>{_(e.target.value),y(null)},onKeyDown:e=>{e.key===`Enter`&&C(),e.key===`Escape`&&(h(!1),_(``))},placeholder:`New directory name...`,className:`flex-1 font-mono text-sm`}),(0,z.jsx)(F,{type:`button`,size:`icon`,variant:`outline`,onClick:C,disabled:!g.trim(),children:(0,z.jsx)(Ae,{className:`h-4 w-4`})}),(0,z.jsx)(F,{type:`button`,size:`icon`,variant:`ghost`,onClick:()=>{h(!1),_(``),y(null)},children:(0,z.jsx)(Me,{className:`h-4 w-4`})})]}):(0,z.jsxs)(F,{type:`button`,variant:`outline`,size:`sm`,onClick:()=>h(!0),disabled:!u||c,children:[(0,z.jsx)(a,{className:`h-4 w-4 mr-1.5`}),`New Directory`]}),v&&(0,z.jsx)(`p`,{className:`text-xs text-destructive`,children:v}),(0,z.jsxs)(Cd,{children:[(0,z.jsx)(F,{variant:`outline`,onClick:()=>t(!1),children:`Cancel`}),(0,z.jsx)(F,{onClick:ee,disabled:!b,children:`Select`})]})]})})}function Rd({value:e,onChange:t,orchestratorId:n,placeholder:r,disabled:i}){let[a,o]=(0,R.useState)(!1);return(0,z.jsxs)(`div`,{className:`flex gap-2`,children:[(0,z.jsx)(I,{value:e,onChange:e=>t(e.target.value),placeholder:r,disabled:i,className:`flex-1 font-mono text-sm`}),(0,z.jsx)(F,{type:`button`,variant:`outline`,size:`icon`,onClick:()=>o(!0),disabled:i||!n,title:`Browse directories`,children:(0,z.jsx)(Pe,{className:`h-4 w-4`})}),n&&(0,z.jsx)(Ld,{open:a,onOpenChange:o,onSelect:t,orchestratorId:n,initialPath:e||void 0})]})}function zd({model:e}){if(!e)return null;let t=Bd(e);return t.length===0?null:(0,z.jsx)(`div`,{className:`flex flex-wrap gap-1.5`,children:t.map(e=>(0,z.jsxs)(P,{variant:`outline`,className:`gap-1 text-[10px]`,children:[(0,z.jsx)(e.Icon,{className:`h-3 w-3`}),e.label]},e.label))})}function Bd(e){let t=[],r=e.limits?.contextWindowTokens?.value;return r&&t.push({label:Vd(r),Icon:s}),e.capabilities?.modalities.input.image&&t.push({label:`Image input`,Icon:be}),(e.capabilities?.modalities.output.image||e.capabilities?.tools?.imageGeneration)&&t.push({label:`Image output`,Icon:be}),e.capabilities?.tools?.code&&t.push({label:`Code`,Icon:n}),t}function Vd(e){return e>=1e6?`${e/1e6}M ctx`:e>=1e3?`${Math.round(e/1e3)}K ctx`:`${e} ctx`}function Hd(){let e=A(e=>e.orchestratorSpawnOpen),t=A(e=>e.orchestrators),n=A(e=>e.spawnOrchId),r=A(e=>e.spawnProvider),i=A(e=>e.spawnModel),a=A(e=>e.spawnEffort),o=A(e=>e.spawnProfile),s=A(e=>e.spawnCwd),c=A(e=>e.spawnLabel),l=A(e=>e.spawnApproval),u=A(e=>e.spawnWorkspaceMode),d=A(e=>e.spawnPrompt),f=A(e=>e.spawnSystemPromptAppend),p=A(e=>e.spawnCount),m=A(e=>e.spawnCwdHistory),h=A(e=>e.isSpawning),g=A(e=>!!e.pendingForkImport),_=A(e=>e.set),v=A(e=>e.submitOrchestratorSpawn),y=A(e=>e.selectSpawnHistory),b=A(e=>e.agentProfiles),x=A(e=>e.providerCatalog),S=t.find(e=>e.id===n),C=S?.providers||[],ee=ct(r,x),w=ee.find(e=>e.alias===i),te=w?.efforts||[],ne=!!(S&&C.length>0&&s.trim())&&!h,re=t.filter(e=>e.status===`online`),ie=re.length>1,ae=m.filter(e=>re.some(t=>t.id===e.orchId)).slice(0,5);function oe(e){let n=t.find(t=>t.id===e),r=n?.providers[0]||``;_({spawnOrchId:e,spawnProvider:r,spawnModel:r?dt(r,x):``,spawnEffort:``,spawnCwd:n?.baseDir||``})}function se(e){_({spawnProvider:e,spawnModel:dt(e,x),spawnEffort:``})}function T(e){_({spawnModel:e,spawnEffort:``})}return(0,z.jsx)(yd,{open:e,onOpenChange:e=>!e&&_({orchestratorSpawnOpen:!1}),children:(0,z.jsxs)(xd,{className:`max-w-lg max-h-[90dvh] flex flex-col`,onOpenAutoFocus:e=>e.preventDefault(),children:[(0,z.jsx)(Sd,{children:(0,z.jsx)(wd,{children:`Spawn Agent`})}),(0,z.jsxs)(`div`,{className:`space-y-3 overflow-y-auto flex-1 min-h-0 -mx-4 px-4`,children:[(0,z.jsxs)(`div`,{children:[(0,z.jsx)(Q,{children:`Orchestrator`}),(0,z.jsx)(`select`,{className:`w-full mt-1 rounded-md border border-input bg-background px-3 py-2 text-sm`,value:n,onChange:e=>oe(e.target.value),children:t.filter(e=>e.status===`online`).map(e=>(0,z.jsxs)(`option`,{value:e.id,children:[e.hostname,` (`,e.id.slice(-8),`)`]},e.id))})]}),(0,z.jsxs)(`div`,{children:[(0,z.jsx)(Q,{children:`Provider`}),(0,z.jsxs)(`select`,{className:`w-full mt-1 rounded-md border border-input bg-background px-3 py-2 text-sm`,value:r,onChange:e=>se(e.target.value),disabled:!C.length,children:[!C.length&&(0,z.jsx)(`option`,{value:r,children:`No providers available`}),C.map(e=>(0,z.jsx)(`option`,{value:e,children:e},e))]})]}),(0,z.jsxs)(`div`,{className:`grid grid-cols-2 gap-3`,children:[(0,z.jsxs)(`div`,{children:[(0,z.jsx)(Q,{children:`Model`}),(0,z.jsx)(`select`,{className:`w-full mt-1 rounded-md border border-input bg-background px-3 py-2 text-sm`,value:i,onChange:e=>T(e.target.value),disabled:!ee.length,children:ee.map(e=>(0,z.jsx)(`option`,{value:e.alias,children:e.label},e.alias))})]}),(0,z.jsxs)(`div`,{children:[(0,z.jsx)(Q,{children:`Effort`}),(0,z.jsxs)(`select`,{className:`w-full mt-1 rounded-md border border-input bg-background px-3 py-2 text-sm`,value:a,onChange:e=>_({spawnEffort:e.target.value}),disabled:!te.length,children:[(0,z.jsx)(`option`,{value:``,children:`Default`}),te.map(e=>(0,z.jsx)(`option`,{value:e,children:e},e))]})]})]}),(0,z.jsx)(zd,{model:w}),(0,z.jsxs)(`div`,{children:[(0,z.jsx)(Q,{children:`Agent Profile`}),(0,z.jsxs)(`select`,{className:`w-full mt-1 rounded-md border border-input bg-background px-3 py-2 text-sm`,value:o||`default-relay`,onChange:e=>_({spawnProfile:e.target.value}),children:[!b.length&&(0,z.jsx)(`option`,{value:`default-relay`,children:`default-relay`}),b.map(e=>(0,z.jsx)(`option`,{value:e.name,children:e.name},e.name))]})]}),(0,z.jsxs)(`div`,{children:[(0,z.jsx)(Q,{children:`Approval Mode`}),(0,z.jsxs)(`select`,{className:`w-full mt-1 rounded-md border border-input bg-background px-3 py-2 text-sm`,value:l,onChange:e=>_({spawnApproval:e.target.value}),children:[(0,z.jsx)(`option`,{value:`open`,children:`Open`}),(0,z.jsx)(`option`,{value:`guarded`,children:`Guarded`}),(0,z.jsx)(`option`,{value:`read-only`,children:`Read-only`})]})]}),(0,z.jsxs)(`div`,{children:[(0,z.jsx)(Q,{children:`Workspace`}),(0,z.jsxs)(`select`,{className:`w-full mt-1 rounded-md border border-input bg-background px-3 py-2 text-sm`,value:u,onChange:e=>_({spawnWorkspaceMode:e.target.value}),children:[(0,z.jsx)(`option`,{value:`inherit`,children:`Default`}),(0,z.jsx)(`option`,{value:`isolated`,children:`Isolated worktree`}),(0,z.jsx)(`option`,{value:`shared`,children:`Shared cwd`})]})]}),(0,z.jsxs)(`div`,{children:[(0,z.jsx)(Q,{children:`Working Directory`}),(0,z.jsx)(`div`,{className:`mt-1`,children:(0,z.jsx)(Rd,{value:s,onChange:e=>_({spawnCwd:e}),orchestratorId:n,placeholder:`Select a project directory`})}),ae.length>0&&(0,z.jsxs)(`div`,{className:`mt-2`,children:[(0,z.jsx)(`p`,{className:`text-xs text-muted-foreground mb-1`,children:`Recent`}),(0,z.jsx)(`div`,{className:`flex gap-1.5 overflow-x-auto pb-1 sm:flex-wrap sm:overflow-x-visible sm:pb-0`,children:ae.map(e=>{let t=e.cwd.replace(/\/+$/,``).split(`/`).pop()||e.cwd,r=re.find(t=>t.id===e.orchId)?.hostname,i=e.orchId===n&&e.cwd===s;return(0,z.jsx)(`button`,{type:`button`,title:ie&&r?`${r}: ${e.cwd}`:e.cwd,onClick:()=>y(e.orchId,e.cwd),className:`shrink-0 rounded-full border px-2.5 py-1 text-xs font-mono transition-colors ${i?`border-primary bg-primary/10 text-foreground`:`border-input bg-background text-muted-foreground hover:bg-accent hover:text-foreground`}`,children:ie&&r?`${r}: ${t}`:t},`${e.orchId}:${e.cwd}`)})})]})]}),(0,z.jsxs)(`div`,{children:[(0,z.jsx)(Q,{children:`Label`}),(0,z.jsx)(I,{value:c,onChange:e=>_({spawnLabel:e.target.value}),placeholder:`Optional label...`})]}),(0,z.jsxs)(`div`,{children:[(0,z.jsx)(Q,{children:`Initial Prompt`}),(0,z.jsx)(Ed,{value:d,onChange:e=>_({spawnPrompt:e.target.value}),rows:3,placeholder:`Optional initial task...`}),(0,z.jsx)(`p`,{className:`text-xs text-muted-foreground mt-1`,children:`Codex starts this as the first App Server turn; Claude receives it as a launch prompt.`})]}),(0,z.jsxs)(`div`,{children:[(0,z.jsx)(Q,{children:`System Prompt Append`}),(0,z.jsx)(Ed,{value:f,onChange:e=>_({spawnSystemPromptAppend:e.target.value}),rows:5,placeholder:`Optional launch context...`}),(0,z.jsx)(`p`,{className:`text-xs text-muted-foreground mt-1`,children:`Use for fork history or launch context. It informs the session but does not start work by itself.`})]}),!g&&(0,z.jsxs)(`div`,{children:[(0,z.jsxs)(`div`,{className:`flex items-center justify-between`,children:[(0,z.jsx)(Q,{children:`Number of Agents`}),(0,z.jsx)(`span`,{className:`text-sm font-mono tabular-nums text-muted-foreground`,children:p})]}),(0,z.jsx)(`input`,{type:`range`,min:1,max:10,step:1,value:p,onChange:e=>_({spawnCount:Number(e.target.value)}),className:`w-full mt-2 accent-primary`,"aria-label":`Number of agents to spawn`}),p>1&&(0,z.jsxs)(`p`,{className:`text-xs text-muted-foreground mt-1`,children:[`Spawns `,p,` identical agents`,c.trim()?`, labelled "${c.trim()} 1"…"${c.trim()} ${p}"`:``,`.`]})]})]}),(0,z.jsxs)(Cd,{children:[(0,z.jsx)(F,{variant:`outline`,onClick:()=>_({orchestratorSpawnOpen:!1}),disabled:h,children:`Cancel`}),(0,z.jsx)(F,{onClick:v,disabled:!ne,children:h?`Spawning…`:C.length?p>1?`Spawn ${p}`:`Spawn`:`No providers`})]})]})})}function Ud(){return`host-${Math.random().toString(36).slice(2,8)}`}function Wd(e,t){return e.includes(t)?e.filter(e=>e!==t):[...e,t]}function Gd(){let e=A(e=>e.orchestratorInstallOpen),t=A(e=>e.set),n=A(e=>e.showError),r=A(e=>e.showNotification),i=(0,R.useMemo)(()=>new URL(me()).origin,[]),[a,o]=(0,R.useState)(Ud),[s,c]=(0,R.useState)(`$HOME/projects`),[l,u]=(0,R.useState)([`claude`,`codex`]),[d,f]=(0,R.useState)(`4860`),[p,m]=(0,R.useState)(``),[h,_]=(0,R.useState)(``),[v,y]=(0,R.useState)(),[b,x]=(0,R.useState)(!1);async function S(){if(!a.trim()){n(`Validation`,`Orchestrator id is required`);return}if(!s.trim()){n(`Validation`,`Base directory is required`);return}if(!l.length){n(`Validation`,`Select at least one provider`);return}x(!0);try{let e=await g(`POST`,`/orchestrators/bootstrap`,{id:a.trim(),relayUrl:i,baseDir:s.trim(),providers:l,apiPort:Number(d)||4860,pathPrefix:p.split(`:`).map(e=>e.trim()).filter(Boolean)});_(e.command),y(e.expiresAt)}catch(e){n(`Install Command Failed`,e.message)}finally{x(!1)}}return(0,z.jsx)(yd,{open:e,onOpenChange:e=>!e&&t({orchestratorInstallOpen:!1}),children:(0,z.jsxs)(xd,{className:`max-w-2xl overflow-hidden`,children:[(0,z.jsx)(Sd,{children:(0,z.jsxs)(wd,{className:`flex items-center gap-2`,children:[(0,z.jsx)(E,{className:`w-4 h-4`}),`Add Orchestrator`]})}),(0,z.jsxs)(`div`,{className:`space-y-4`,children:[(0,z.jsxs)(`div`,{className:`grid grid-cols-1 md:grid-cols-2 gap-3`,children:[(0,z.jsxs)(`div`,{children:[(0,z.jsx)(Q,{children:`Orchestrator ID`}),(0,z.jsx)(I,{value:a,onChange:e=>o(e.target.value)})]}),(0,z.jsxs)(`div`,{children:[(0,z.jsx)(Q,{children:`Relay URL`}),(0,z.jsx)(I,{value:i,readOnly:!0})]}),(0,z.jsxs)(`div`,{children:[(0,z.jsx)(Q,{children:`Base Directory`}),(0,z.jsx)(I,{value:s,onChange:e=>c(e.target.value)})]}),(0,z.jsxs)(`div`,{children:[(0,z.jsx)(Q,{children:`API Port`}),(0,z.jsx)(I,{value:d,onChange:e=>f(e.target.value),inputMode:`numeric`})]})]}),(0,z.jsxs)(`div`,{children:[(0,z.jsx)(Q,{children:`Providers`}),(0,z.jsx)(`div`,{className:`mt-1 flex flex-wrap gap-2`,children:[`claude`,`codex`].map(e=>(0,z.jsx)(F,{type:`button`,size:`sm`,variant:l.includes(e)?`default`:`outline`,onClick:()=>u(Wd(l,e)),children:e},e))})]}),(0,z.jsxs)(`div`,{children:[(0,z.jsx)(Q,{children:`Extra PATH Prefix`}),(0,z.jsx)(I,{value:p,onChange:e=>m(e.target.value),placeholder:`/opt/homebrew/bin:/custom/bin`})]}),h&&(0,z.jsxs)(`div`,{children:[(0,z.jsxs)(`div`,{className:`flex items-center justify-between gap-2 mb-1`,children:[(0,z.jsx)(Q,{children:`Install Command`}),v&&(0,z.jsxs)(`span`,{className:`text-[11px] text-muted-foreground`,children:[`Install token expires `,new Date(v*1e3).toLocaleString()]})]}),(0,z.jsx)(`pre`,{className:`max-h-40 w-full overflow-y-auto whitespace-pre-wrap break-all rounded-md border border-input bg-muted/40 p-3 font-mono text-xs leading-relaxed`,children:h})]})]}),(0,z.jsxs)(Cd,{children:[(0,z.jsx)(F,{variant:`outline`,onClick:()=>t({orchestratorInstallOpen:!1}),children:`Close`}),h&&(0,z.jsx)(kn,{value:h,label:`Copy`,showText:!0,size:`default`,variant:`outline`,className:`gap-1`,onCopied:()=>r(`Install command copied`)}),(0,z.jsxs)(F,{className:`gap-1`,onClick:S,disabled:b,children:[(0,z.jsx)(Ee,{className:`w-3.5 h-3.5`}),b?`Generating...`:`Generate Command`]})]})]})})}function Kd(){let e=A(e=>e.policyModal),t=A(e=>e.orchestrators),n=A(e=>e.agentProfiles),r=A(e=>e.set),i=A(e=>e.submitPolicy),a=A(e=>e.providerCatalog),o=t.find(t=>t.id===e.orchestratorId),s=o?.providers||[],c=ct(e.provider,a),l=c.find(t=>t.alias===e.model),u=l?.efforts||[],d=!!e.editing,f=e.provider===`claude`&&o?.providerStatus?.find(e=>e.name===`claude`)?.features?.rig===!0;function p(t){r({policyModal:{...e,...t}})}function m(n){let r=t.find(e=>e.id===n)?.providers[0]||e.provider;p({orchestratorId:n,provider:r,model:dt(r,a),effort:``})}function h(e){p({provider:e,rig:``,model:dt(e,a),effort:``})}return(0,z.jsx)(yd,{open:e.open,onOpenChange:e=>!e&&p({open:!1}),children:(0,z.jsxs)(xd,{className:`max-w-lg max-h-[90vh] overflow-y-auto`,children:[(0,z.jsx)(Sd,{children:(0,z.jsx)(wd,{children:d?`Edit Policy`:`Create Managed Agent`})}),(0,z.jsxs)(`div`,{className:`space-y-3`,children:[(0,z.jsxs)(`div`,{children:[(0,z.jsx)(Q,{children:`Policy Name`}),(0,z.jsx)(I,{value:e.name,onChange:e=>p({name:e.target.value}),placeholder:`my-agent`,disabled:d})]}),(0,z.jsxs)(`div`,{children:[(0,z.jsx)(Q,{children:`Label`}),(0,z.jsx)(I,{value:e.label,onChange:e=>p({label:e.target.value}),placeholder:`Human-friendly name...`})]}),(0,z.jsxs)(`div`,{children:[(0,z.jsx)(Q,{children:`Description`}),(0,z.jsx)(I,{value:e.description,onChange:e=>p({description:e.target.value}),placeholder:`What does this agent do?`})]}),(0,z.jsxs)(`div`,{className:`grid grid-cols-2 gap-3`,children:[(0,z.jsxs)(`div`,{children:[(0,z.jsx)(Q,{children:`Orchestrator`}),(0,z.jsx)(`select`,{className:`w-full mt-1 rounded-md border border-input bg-background px-3 py-2 text-sm`,value:e.orchestratorId,onChange:e=>m(e.target.value),children:t.filter(e=>e.status===`online`).map(e=>(0,z.jsxs)(`option`,{value:e.id,children:[e.hostname,` (`,e.id.slice(-8),`)`]},e.id))})]}),(0,z.jsxs)(`div`,{children:[(0,z.jsx)(Q,{children:`Provider`}),(0,z.jsxs)(`select`,{className:`w-full mt-1 rounded-md border border-input bg-background px-3 py-2 text-sm`,value:e.provider,onChange:e=>h(e.target.value),disabled:!s.length,children:[!s.length&&(0,z.jsx)(`option`,{value:e.provider,children:`No providers available`}),s.map(e=>(0,z.jsx)(`option`,{value:e,children:e},e))]})]})]}),f&&(0,z.jsxs)(`div`,{children:[(0,z.jsx)(Q,{children:`Rig`}),(0,z.jsx)(I,{value:e.rig,onChange:e=>p({rig:e.target.value}),placeholder:`Leave empty to auto-detect from .claude-rig`}),(0,z.jsx)(`p`,{className:`text-xs text-muted-foreground mt-1`,children:`claude-rig profile name. Auto-detects from project's .claude-rig file if empty.`})]}),(0,z.jsxs)(`div`,{className:`grid grid-cols-2 gap-3`,children:[(0,z.jsxs)(`div`,{children:[(0,z.jsx)(Q,{children:`Model`}),(0,z.jsx)(`select`,{className:`w-full mt-1 rounded-md border border-input bg-background px-3 py-2 text-sm`,value:e.model,onChange:e=>p({model:e.target.value,effort:``}),children:c.map(e=>(0,z.jsx)(`option`,{value:e.alias,children:e.label},e.alias))})]}),(0,z.jsxs)(`div`,{children:[(0,z.jsx)(Q,{children:`Effort`}),(0,z.jsxs)(`select`,{className:`w-full mt-1 rounded-md border border-input bg-background px-3 py-2 text-sm`,value:e.effort,onChange:e=>p({effort:e.target.value}),disabled:!u.length,children:[(0,z.jsx)(`option`,{value:``,children:`Default`}),u.map(e=>(0,z.jsx)(`option`,{value:e,children:e},e))]})]})]}),(0,z.jsx)(zd,{model:l}),(0,z.jsxs)(`div`,{children:[(0,z.jsx)(Q,{children:`Agent Profile`}),(0,z.jsxs)(`select`,{className:`w-full mt-1 rounded-md border border-input bg-background px-3 py-2 text-sm`,value:e.profile||`default-relay`,onChange:e=>p({profile:e.target.value}),children:[!n.length&&(0,z.jsx)(`option`,{value:`default-relay`,children:`default-relay`}),n.map(e=>(0,z.jsx)(`option`,{value:e.name,children:e.name},e.name))]})]}),(0,z.jsxs)(`div`,{children:[(0,z.jsx)(Q,{children:`Working Directory`}),(0,z.jsx)(`div`,{className:`mt-1`,children:(0,z.jsx)(Rd,{value:e.cwd,onChange:e=>p({cwd:e}),orchestratorId:e.orchestratorId,placeholder:o?.baseDir||`/path/to/project`})})]}),(0,z.jsxs)(`div`,{className:`grid grid-cols-2 gap-3`,children:[(0,z.jsxs)(`div`,{children:[(0,z.jsx)(Q,{children:`Mode`}),(0,z.jsxs)(`select`,{className:`w-full mt-1 rounded-md border border-input bg-background px-3 py-2 text-sm`,value:e.mode,onChange:e=>p({mode:e.target.value}),children:[(0,z.jsx)(`option`,{value:`always-on`,children:`Always On`}),(0,z.jsx)(`option`,{value:`on-demand`,children:`On Demand`})]})]}),(0,z.jsxs)(`div`,{children:[(0,z.jsx)(Q,{children:`Permission Mode`}),(0,z.jsxs)(`select`,{className:`w-full mt-1 rounded-md border border-input bg-background px-3 py-2 text-sm`,value:e.permissionMode,onChange:e=>p({permissionMode:e.target.value}),children:[(0,z.jsx)(`option`,{value:`open`,children:`Open`}),(0,z.jsx)(`option`,{value:`guarded`,children:`Guarded`}),(0,z.jsx)(`option`,{value:`read-only`,children:`Read-only`})]})]})]}),e.mode===`on-demand`&&(0,z.jsxs)(`div`,{children:[(0,z.jsx)(Q,{children:`Keepalive (seconds)`}),(0,z.jsx)(I,{type:`number`,value:e.keepaliveSeconds,onChange:e=>p({keepaliveSeconds:e.target.value}),placeholder:`300`}),(0,z.jsx)(`p`,{className:`text-xs text-muted-foreground mt-1`,children:`Seconds to keep agent alive after last activity.`})]}),(0,z.jsxs)(`div`,{children:[(0,z.jsx)(Q,{children:`Initial Prompt`}),(0,z.jsx)(Ed,{value:e.prompt,onChange:e=>p({prompt:e.target.value}),rows:3,placeholder:`Optional initial task or instructions...`}),(0,z.jsx)(`p`,{className:`text-xs text-muted-foreground mt-1`,children:`Codex starts this as the first App Server turn; Claude receives it as a launch prompt.`})]}),(0,z.jsxs)(`div`,{className:`grid grid-cols-2 gap-3`,children:[(0,z.jsxs)(`div`,{children:[(0,z.jsx)(Q,{children:`Tags`}),(0,z.jsx)(I,{value:e.tags,onChange:e=>p({tags:e.target.value}),placeholder:`tag1, tag2`})]}),(0,z.jsxs)(`div`,{children:[(0,z.jsx)(Q,{children:`Capabilities`}),(0,z.jsx)(I,{value:e.capabilities,onChange:e=>p({capabilities:e.target.value}),placeholder:`chat, review`})]})]}),(0,z.jsxs)(`div`,{children:[(0,z.jsx)(Q,{children:`Provider Args`}),(0,z.jsx)(I,{value:e.providerArgs,onChange:e=>p({providerArgs:e.target.value}),placeholder:`--flag value`}),(0,z.jsx)(`p`,{className:`text-xs text-muted-foreground mt-1`,children:`Space-separated args passed to the provider CLI.`})]}),(0,z.jsxs)(`div`,{children:[(0,z.jsx)(Q,{children:`Channel Binding`}),(0,z.jsx)(I,{value:e.channelId,onChange:e=>p({channelId:e.target.value}),placeholder:`Channel ID (optional)`})]}),(0,z.jsxs)(`div`,{className:`grid grid-cols-2 gap-3`,children:[(0,z.jsxs)(`div`,{children:[(0,z.jsx)(Q,{children:`Backoff Schedule (seconds)`}),(0,z.jsx)(I,{value:e.backoffSchedule,onChange:e=>p({backoffSchedule:e.target.value}),placeholder:`5, 15, 60, 300`})]}),(0,z.jsxs)(`div`,{children:[(0,z.jsx)(Q,{children:`Backoff Reset After (s)`}),(0,z.jsx)(I,{type:`number`,value:e.backoffResetAfterSeconds,onChange:e=>p({backoffResetAfterSeconds:e.target.value}),placeholder:`600`})]})]}),(0,z.jsxs)(`div`,{className:`flex items-center justify-between`,children:[(0,z.jsx)(Q,{htmlFor:`restartOnUpdate`,children:`Restart on policy update`}),(0,z.jsx)(Hc,{id:`restartOnUpdate`,checked:e.restartOnUpdate,onCheckedChange:e=>p({restartOnUpdate:e})})]}),(0,z.jsxs)(`div`,{className:`flex items-center justify-between`,children:[(0,z.jsx)(Q,{htmlFor:`dailyRestart`,children:`Scheduled daily restart`}),(0,z.jsx)(Hc,{id:`dailyRestart`,checked:e.scheduledDailyRestart,onCheckedChange:e=>p({scheduledDailyRestart:e})})]})]}),(0,z.jsxs)(Cd,{children:[(0,z.jsx)(F,{variant:`outline`,onClick:()=>p({open:!1}),children:`Cancel`}),(0,z.jsx)(F,{onClick:i,children:d?`Save`:`Create`})]})]})})}function qd({title:e,children:t,defaultOpen:n=!0}){let[r,i]=(0,R.useState)(n);return(0,z.jsxs)(`div`,{className:`border border-border rounded-md`,children:[(0,z.jsxs)(`button`,{type:`button`,className:`flex w-full items-center gap-2 px-3 py-2 text-sm font-medium hover:bg-accent`,onClick:()=>i(!r),children:[r?(0,z.jsx)(Be,{className:`h-3.5 w-3.5`}):(0,z.jsx)(we,{className:`h-3.5 w-3.5`}),e]}),r&&(0,z.jsx)(`div`,{className:`space-y-3 border-t border-border px-3 py-3`,children:t})]})}function Jd({value:e,onChange:t,options:n,disabled:r}){return(0,z.jsx)(`select`,{className:`w-full rounded-md border border-input bg-background px-3 py-2 text-sm`,value:e,onChange:e=>t(e.target.value),disabled:r,children:n.map(e=>(0,z.jsx)(`option`,{value:e.value,children:e.label},e.value))})}function Yd({env:e,onChange:t,disabled:n}){let r=Object.entries(e),[i,a]=(0,R.useState)(``),[o,s]=(0,R.useState)(``);function c(){i.trim()&&(t({...e,[i.trim()]:o}),a(``),s(``))}function l(n){let r={...e};delete r[n],t(r)}return(0,z.jsxs)(`div`,{className:`space-y-1.5`,children:[r.map(([e,t])=>(0,z.jsxs)(`div`,{className:`flex items-center gap-1.5`,children:[(0,z.jsxs)(`code`,{className:`min-w-0 flex-1 truncate rounded bg-muted px-2 py-1 text-xs`,children:[e,`=`,t]}),!n&&(0,z.jsx)(F,{type:`button`,variant:`ghost`,size:`icon-sm`,className:`h-6 w-6 shrink-0`,onClick:()=>l(e),children:(0,z.jsx)(ke,{className:`h-3 w-3`})})]},e)),!n&&(0,z.jsxs)(`div`,{className:`flex items-center gap-1.5`,children:[(0,z.jsx)(I,{value:i,onChange:e=>a(e.target.value),placeholder:`KEY`,className:`flex-1 text-xs font-mono`}),(0,z.jsx)(I,{value:o,onChange:e=>s(e.target.value),placeholder:`value`,className:`flex-1 text-xs font-mono`,onKeyDown:e=>e.key===`Enter`&&c()}),(0,z.jsx)(F,{type:`button`,variant:`outline`,size:`icon-sm`,className:`h-8 w-8 shrink-0`,onClick:c,children:(0,z.jsx)(oe,{className:`h-3 w-3`})})]}),r.length===0&&n&&(0,z.jsx)(`div`,{className:`text-xs text-muted-foreground`,children:`No environment variables`})]})}var Xd=[{value:`host`,label:`Host — full access, relay-aware`},{value:`minimal`,label:`Minimal — relay disabled, repo-scoped`},{value:`isolated`,label:`Isolated — strict isolation`},{value:`vanilla`,label:`Vanilla — zero host bleed (plugins/skills/hooks/MCP/CLAUDE.md off)`}],Zd=[{value:`any`,label:`Any provider`},{value:`claude`,label:`Claude`},{value:`codex`,label:`Codex`}],Qd=[{value:`host`,label:`Host — use host config`},{value:`profile`,label:`Profile — use profile config`},{value:`repo`,label:`Repo — use repo config only`},{value:`none`,label:`None — disabled`}],$d=[{value:`host`,label:`Host — full filesystem`},{value:`workspace`,label:`Workspace — working directory tree`},{value:`repo`,label:`Repo — repository root only`}],ef=[{value:`allow`,label:`Allow`},{value:`ignore`,label:`Ignore`}],tf=[{value:``,label:`Default`},{value:`open`,label:`Open — allow all`},{value:`guarded`,label:`Guarded — prompt for risky`},{value:`read-only`,label:`Read-only`}];function nf(){let{open:e,mode:t,profile:n}=A(e=>e.profileModal),r=A(e=>e.closeProfileModal),i=A(e=>e.updateProfileModal),a=A(e=>e.saveProfile),o=t===`view`||n.builtIn===!0,s=t===`create`||t===`duplicate`,c=t===`view`?`Profile: ${n.name}`:t===`edit`?`Edit: ${n.name}`:t===`duplicate`?`Duplicate Profile`:`Create Profile`;function l(e){i({instructions:{...n.instructions,...e}})}function u(e){i({relay:{...n.relay,...e}})}function d(e){i({permissions:{...n.permissions,...e}})}function f(e){let t=n.providerOptions||{},r={...t.codex&&typeof t.codex==`object`&&!Array.isArray(t.codex)?t.codex:{}};if(!e.trim())delete r.toolOutputTokenLimit;else{let t=Number(e);if(!Number.isSafeInteger(t))return;r.toolOutputTokenLimit=t}i({providerOptions:{...t,codex:r}})}function p(e){if(!e.trim()){i({maxSpawnedAgents:void 0});return}let t=Number(e);!Number.isInteger(t)||t<0||i({maxSpawnedAgents:Math.min(t,100)})}function m(e){let t=e===`host`;i({base:e,relay:{context:t,skills:t,plugins:t,statusLine:t,mcp:t},mcp:{...n.mcp,mode:t?`host`:`none`},hooks:{mode:t?`host`:`none`},permissions:{...n.permissions,filesystem:t?`host`:`repo`},instructions:{...n.instructions,globalInstructions:t?`allow`:`ignore`}})}let h=n.providerOptions?.codex&&typeof n.providerOptions.codex==`object`&&!Array.isArray(n.providerOptions.codex)?n.providerOptions.codex:{},g=Number.isSafeInteger(h.toolOutputTokenLimit)?String(h.toolOutputTokenLimit):``;return(0,z.jsx)(yd,{open:e,onOpenChange:e=>!e&&r(),children:(0,z.jsxs)(xd,{className:`max-w-lg max-h-[90vh] overflow-y-auto`,children:[(0,z.jsx)(Sd,{children:(0,z.jsxs)(wd,{className:`flex items-center gap-2`,children:[c,n.builtIn&&(0,z.jsx)(P,{variant:`secondary`,className:`text-[10px]`,children:`Built-in`})]})}),(0,z.jsxs)(`div`,{className:`space-y-3`,children:[(0,z.jsxs)(qd,{title:`General`,defaultOpen:!0,children:[(0,z.jsxs)(`div`,{children:[(0,z.jsx)(Q,{children:`Name`}),(0,z.jsx)(I,{value:n.name,onChange:e=>i({name:e.target.value}),placeholder:`my-profile`,disabled:o||t===`edit`})]}),(0,z.jsxs)(`div`,{children:[(0,z.jsx)(Q,{children:`Description`}),(0,z.jsx)(I,{value:n.description||``,onChange:e=>i({description:e.target.value}),placeholder:`What this profile configures`,disabled:o})]}),(0,z.jsxs)(`div`,{className:`grid grid-cols-2 gap-3`,children:[(0,z.jsxs)(`div`,{children:[(0,z.jsx)(Q,{children:`Base`}),(0,z.jsx)(Jd,{value:n.base,onChange:e=>m(e),options:Xd,disabled:o})]}),(0,z.jsxs)(`div`,{children:[(0,z.jsx)(Q,{children:`Provider`}),(0,z.jsx)(Jd,{value:n.provider||`any`,onChange:e=>i({provider:e}),options:Zd,disabled:o})]})]})]}),(0,z.jsxs)(qd,{title:`Instructions`,defaultOpen:!1,children:[(0,z.jsxs)(`div`,{children:[(0,z.jsx)(Q,{children:`System Prompt`}),(0,z.jsx)(Ed,{value:n.instructions.system||``,onChange:e=>l({system:e.target.value}),placeholder:`Custom system prompt...`,rows:3,disabled:o,className:`font-mono text-xs`})]}),(0,z.jsxs)(`div`,{className:`grid grid-cols-2 gap-3`,children:[(0,z.jsxs)(`div`,{children:[(0,z.jsx)(Q,{children:`Repo Instructions`}),(0,z.jsx)(Jd,{value:n.instructions.repoInstructions,onChange:e=>l({repoInstructions:e}),options:ef,disabled:o})]}),(0,z.jsxs)(`div`,{children:[(0,z.jsx)(Q,{children:`Global Instructions`}),(0,z.jsx)(Jd,{value:n.instructions.globalInstructions,onChange:e=>l({globalInstructions:e}),options:ef,disabled:o})]})]})]}),(0,z.jsx)(qd,{title:`Relay Integration`,defaultOpen:!1,children:(0,z.jsx)(`div`,{className:`grid grid-cols-2 gap-3`,children:[`context`,`skills`,`plugins`,`statusLine`,`mcp`].map(e=>(0,z.jsxs)(`div`,{className:`flex items-center justify-between gap-2`,children:[(0,z.jsx)(Q,{className:`capitalize`,children:e===`statusLine`?`Status Line`:e===`mcp`?`MCP Tools`:e}),(0,z.jsx)(Hc,{checked:n.relay[e]??!0,onCheckedChange:t=>u({[e]:t}),disabled:o})]},e))})}),(0,z.jsx)(qd,{title:`MCP & Hooks`,defaultOpen:!1,children:(0,z.jsxs)(`div`,{className:`grid grid-cols-2 gap-3`,children:[(0,z.jsxs)(`div`,{children:[(0,z.jsx)(Q,{children:`MCP Mode`}),(0,z.jsx)(Jd,{value:n.mcp.mode,onChange:e=>i({mcp:{...n.mcp,mode:e}}),options:Qd,disabled:o})]}),(0,z.jsxs)(`div`,{children:[(0,z.jsx)(Q,{children:`Hooks Mode`}),(0,z.jsx)(Jd,{value:n.hooks.mode,onChange:e=>i({hooks:{mode:e}}),options:Qd,disabled:o})]})]})}),(0,z.jsx)(qd,{title:`Permissions`,defaultOpen:!1,children:(0,z.jsxs)(`div`,{className:`grid grid-cols-2 gap-3`,children:[(0,z.jsxs)(`div`,{children:[(0,z.jsx)(Q,{children:`Approval Mode`}),(0,z.jsx)(Jd,{value:n.permissions.mode||``,onChange:e=>d({mode:e||void 0}),options:tf,disabled:o})]}),(0,z.jsxs)(`div`,{children:[(0,z.jsx)(Q,{children:`Filesystem Scope`}),(0,z.jsx)(Jd,{value:n.permissions.filesystem,onChange:e=>d({filesystem:e}),options:$d,disabled:o})]})]})}),(0,z.jsx)(qd,{title:`Spawning`,defaultOpen:!1,children:(0,z.jsxs)(`div`,{children:[(0,z.jsx)(Q,{children:`Spawn Quota`}),(0,z.jsx)(I,{type:`number`,min:0,max:100,step:1,value:n.maxSpawnedAgents===void 0?``:String(n.maxSpawnedAgents),onChange:e=>p(e.target.value),placeholder:`0`,disabled:o}),(0,z.jsx)(`p`,{className:`mt-1 text-xs text-muted-foreground`,children:`Max concurrent live child agents this profile may spawn. Empty or 0 = cannot spawn (default). Children never inherit it (no grandchildren).`})]})}),(0,z.jsx)(qd,{title:`Environment Variables`,defaultOpen:!1,children:(0,z.jsx)(Yd,{env:n.env||{},onChange:e=>i({env:e}),disabled:o})}),(0,z.jsxs)(qd,{title:`Provider Options`,defaultOpen:!1,children:[(0,z.jsxs)(`div`,{children:[(0,z.jsx)(Q,{children:`Codex Tool Output Limit`}),(0,z.jsx)(I,{type:`number`,min:1e3,max:2e5,value:g,onChange:e=>f(e.target.value),placeholder:`12000`,disabled:o})]}),(0,z.jsx)(Ed,{value:JSON.stringify(n.providerOptions||{},null,2),onChange:e=>{try{i({providerOptions:JSON.parse(e.target.value)})}catch{}},rows:3,disabled:o,className:`font-mono text-xs`,placeholder:`{}`})]})]}),!o&&(0,z.jsxs)(Cd,{children:[(0,z.jsx)(F,{variant:`outline`,onClick:r,children:`Cancel`}),(0,z.jsx)(F,{onClick:a,children:s?`Create`:`Save`})]})]})})}function rf(){let e=A(e=>e.commandPaletteOpen),t=A(e=>e.commandQuery),n=A(e=>e.set),r=A(e=>e.closeCommandPalette),i=A(e=>e.runCommand),a=Bc(),o=(0,R.useRef)(null);return(0,R.useEffect)(()=>{e&&setTimeout(()=>o.current?.focus(),50)},[e]),e?(0,z.jsxs)(`div`,{className:`fixed inset-0 z-50 flex items-start justify-center pt-[15vh]`,onClick:e=>{e.target===e.currentTarget&&r()},children:[(0,z.jsx)(`div`,{className:`fixed inset-0 bg-black/60`}),(0,z.jsxs)(`div`,{className:`relative w-full max-w-lg bg-card border border-border rounded-xl shadow-2xl overflow-hidden`,children:[(0,z.jsx)(`div`,{className:`p-3 border-b border-border`,children:(0,z.jsx)(I,{ref:o,value:t,onChange:e=>n({commandQuery:e.target.value}),placeholder:`Type a command...`,className:`border-0 bg-transparent focus-visible:ring-0 text-base`})}),(0,z.jsxs)(`div`,{className:`max-h-80 overflow-y-auto p-2`,children:[a.map(e=>(0,z.jsxs)(`button`,{onClick:()=>i(e),className:`w-full flex items-center gap-3 px-3 py-2.5 rounded-lg hover:bg-accent text-left transition-colors`,children:[(0,z.jsx)(Ze[e.icon]||we,{className:`w-4 h-4 text-muted-foreground shrink-0`}),(0,z.jsxs)(`div`,{className:`flex-1 min-w-0`,children:[(0,z.jsx)(`div`,{className:`text-sm`,children:e.title}),e.subtitle&&(0,z.jsx)(`div`,{className:`text-xs text-muted-foreground truncate`,children:e.subtitle})]})]},e.id)),a.length===0&&(0,z.jsx)(`p`,{className:`text-sm text-muted-foreground text-center py-4`,children:`No matching commands.`})]})]})]}):null}function af(){let e=A(e=>e.set),t=A(e=>e.connected);return(0,z.jsxs)(`div`,{className:`xl:hidden shrink-0 sticky top-0 z-30 bg-card border-b border-border px-4 h-[var(--header-h)] flex items-center gap-3`,children:[(0,z.jsx)(`button`,{onClick:()=>e({mobileMenuOpen:!0}),className:`p-1 -ml-1 text-muted-foreground hover:text-foreground transition-colors`,"aria-label":`Open menu`,children:(0,z.jsx)(k,{className:`w-5 h-5`})}),(0,z.jsx)(m,{className:`w-4 h-4 text-primary`}),(0,z.jsx)(`span`,{className:`font-bold text-sm`,children:`Agent Relay`}),(0,z.jsx)(`span`,{className:`ml-auto w-2 h-2 rounded-full ${t?`bg-emerald-500`:`bg-red-500 animate-pulse`}`})]})}function of(e){return e===`five_hour`?`5h burst`:e===`seven_day`?`7-day`:e===`seven_day_sonnet`?`7-day Sonnet`:e===`seven_day_opus`?`7-day Opus`:e===`primary`?`Primary`:e===`secondary`?`Secondary`:e}function sf(e,t){if(!t)return``;let n=Math.max(0,(t-e)/1e3);return n<60?`${Math.floor(n)}s`:n<3600?`${Math.floor(n/60)}m`:n<86400?`${Math.floor(n/3600)}h`:`${Math.floor(n/86400)}d`}var cf=`agent-relay:quota-widget`,lf=300*1e3;function uf(e){return!e.quota&&e.lastError?.type===`unavailable`}function df(e,t){let n=t===`5h`?[`five_hour`,`primary`]:[`seven_day`,`secondary`];return e.quota?.windows.find(e=>n.includes(e.name))}function ff(e,t){if(!t)return``;let n=Math.max(0,(t-e)/1e3);return n<3600?`${Math.floor(n/60)}m`:n<86400?`${Math.floor(n/3600)}h`:`${(n/86400).toFixed(1).replace(/\.0$/,``)}d`}function pf({record:e,now:t}){let n=(0,z.jsx)(tu,{provider:e.provider,className:`w-3.5 h-3.5`});if(uf(e))return(0,z.jsxs)(`span`,{className:`flex items-center gap-1 shrink-0 text-muted-foreground`,children:[n,(0,z.jsx)(`span`,{className:`italic`,children:`unavailable`})]});if(!e.quota){let r=e.lastAttemptAt?yt(t,e.lastAttemptAt):``,i=e.lastError?.retryAfterMs,a=i==null?null:Math.ceil(Math.max(0,(e.lastAttemptAt+i-t)/1e3));return(0,z.jsxs)(`span`,{className:`flex items-center gap-1 shrink-0 text-muted-foreground`,children:[n,r&&(0,z.jsx)(`span`,{children:r}),a!=null&&a>0&&(0,z.jsxs)(`span`,{className:`text-amber-400/70`,children:[`~`,a,`s`]})]})}let r=df(e,`5h`),i=df(e,`7d`);function a(e){if(!e)return null;let n=Math.round(e.utilization*100),r=ff(t,e.resetsAt);return(0,z.jsxs)(`span`,{className:`tabular-nums`,children:[n,`%`,r?`/${r}`:``]})}let o=(e.stale||e.lastError)&&e.lastAttemptAt?yt(t,e.lastAttemptAt):``;return(0,z.jsxs)(`span`,{className:`flex items-center gap-1.5 shrink-0 text-foreground/70`,children:[n,a(r),a(i),o&&(0,z.jsx)(`span`,{className:`text-muted-foreground/70`,children:o})]})}function mf(){try{let e=localStorage.getItem(cf);return{open:!0,pinned:!1,...e?JSON.parse(e):{}}}catch{return{open:!0,pinned:!1}}}function hf(e){try{localStorage.setItem(cf,JSON.stringify(e))}catch{}}function gf(){let[{open:e,pinned:t},n]=(0,R.useState)(mf),[r,i]=(0,R.useState)(null),[a,o]=(0,R.useState)(null),[s,c]=(0,R.useState)(`loading`),l=ut(),u=A(e=>e.connected);(0,R.useEffect)(()=>{if(!u)return;let e=!1;async function t(){try{let[t,n]=await Promise.all([g(`GET`,`/provider-quotas`),g(`GET`,`/providers/quota-config`).catch(()=>null)]);e||(i(t),o(n),c(`ok`))}catch{e||c(`error`)}}t();let n=setInterval(()=>void t(),lf);return()=>{e=!0,clearInterval(n)}},[u,A(e=>e.quotaSeq)]);let d=e||t,f=(r?.quotas??[]).filter(e=>a?.[e.provider]?.showInWidget!==!1),p=f.some(e=>e.stale&&!uf(e)),m=f.some(e=>e.lastError&&!uf(e));function h(){if(t)return;let r={open:!e,pinned:t};n(r),hf(r)}function _(){let r=t?{open:e,pinned:!1}:{open:!0,pinned:!0};n(r),hf(r)}return(0,z.jsxs)(`div`,{className:`shrink-0 border-b border-border`,children:[(0,z.jsxs)(`div`,{className:`w-full flex items-center gap-2 px-4 py-2 text-xs hover:bg-muted/30 transition-colors`,children:[(0,z.jsxs)(`button`,{type:`button`,onClick:h,"aria-expanded":d,className:`min-w-0 flex flex-1 items-center gap-2 text-left`,children:[(0,z.jsx)(we,{className:`w-3.5 h-3.5 shrink-0 text-muted-foreground transition-transform ${d?`rotate-90`:``}`}),(0,z.jsx)(`span`,{className:`font-semibold text-foreground/80 shrink-0 ${d?``:`hidden sm:inline`}`,children:`Provider Quotas`}),s===`loading`&&(0,z.jsx)(Re,{className:`w-3 h-3 text-muted-foreground animate-spin`}),s===`error`&&(0,z.jsx)(`span`,{className:`text-amber-400 text-[10px]`,children:`● unavailable`}),!d&&s===`ok`&&f.length>0&&(0,z.jsx)(`div`,{className:`flex min-w-0 flex-1 flex-wrap items-center gap-x-3 gap-y-0.5 text-[10px]`,children:f.map(e=>(0,z.jsx)(pf,{record:e,now:l},`${e.provider}:${e.accountKey}`))}),d&&p&&(0,z.jsx)(`span`,{className:`text-amber-400 text-[10px]`,children:`● stale`}),d&&m&&(0,z.jsx)(`span`,{className:`text-red-400 text-[10px]`,children:`● error`})]}),(0,z.jsx)(`button`,{type:`button`,onClick:_,"aria-pressed":t,title:t?`Unpin`:`Pin always-on`,className:`p-0.5 rounded hover:bg-muted transition-colors ${t?`text-primary`:`text-muted-foreground/50 hover:text-muted-foreground`}`,children:(0,z.jsx)(ue,{className:`w-3 h-3`})})]}),d&&(0,z.jsxs)(`div`,{className:`px-4 py-3`,children:[s===`loading`&&(0,z.jsxs)(`p`,{className:`text-xs text-muted-foreground flex items-center gap-1.5`,children:[(0,z.jsx)(Re,{className:`w-3 h-3 animate-spin`}),`Loading quota data…`]}),s===`error`&&(0,z.jsx)(`p`,{className:`text-xs text-muted-foreground`,children:`Quota data unavailable — check that you are authenticated and the server is reachable.`}),s===`ok`&&r!==null&&f.length===0&&(0,z.jsx)(`p`,{className:`text-xs text-muted-foreground`,children:`No quota data yet — waiting for runner to report.`}),s===`ok`&&r!==null&&f.length>0&&(0,z.jsx)(`div`,{className:`grid grid-cols-1 md:grid-cols-2 xl:grid-cols-3 gap-3`,children:f.map(e=>(0,z.jsx)(_f,{record:e,now:l},`${e.provider}:${e.accountKey}`))})]})]})}function _f({record:e,now:t}){let{provider:n,accountKey:r,quota:i,stale:a,lastError:o,lastUpdatedAt:s,lastAttemptAt:c}=e;if(uf(e))return(0,z.jsxs)(`div`,{className:`rounded border border-border bg-muted/20 p-3 space-y-1.5 opacity-70`,children:[(0,z.jsxs)(`div`,{className:`flex items-center gap-1.5 min-w-0`,children:[(0,z.jsx)(tu,{provider:n,className:`w-3.5 h-3.5 text-muted-foreground`}),(0,z.jsx)(`span`,{className:`text-[9px] font-medium text-muted-foreground bg-muted border border-border rounded px-1 py-0.5 shrink-0`,children:`unavailable`})]}),(0,z.jsxs)(`p`,{className:`text-[10px] text-muted-foreground`,children:[`Quota unavailable — `,o?.message??`no readable credentials`]})]});let l=o?.retryAfterMs,u=l==null?null:Math.max(0,c+l-t),d=u==null?null:Math.ceil(u/1e3),f=(a||!!o)&&c>0;return(0,z.jsxs)(`div`,{className:`rounded border ${o?`border-red-500/30`:a?`border-amber-500/30`:`border-border`} bg-card p-3 space-y-2`,children:[(0,z.jsxs)(`div`,{className:`flex items-center justify-between gap-2`,children:[(0,z.jsxs)(`div`,{className:`flex items-center gap-1.5 min-w-0`,children:[(0,z.jsx)(tu,{provider:n,className:`w-3.5 h-3.5`}),(0,z.jsx)(`span`,{className:`text-[10px] text-muted-foreground font-mono truncate`,children:r})]}),(0,z.jsxs)(`div`,{className:`flex items-center gap-1 shrink-0`,children:[a&&(0,z.jsx)(`span`,{className:`text-[9px] font-medium text-amber-400 bg-amber-500/10 border border-amber-500/20 rounded px-1 py-0.5`,children:`stale`}),o&&(0,z.jsx)(`span`,{className:`text-[9px] font-medium text-red-400 bg-red-500/10 border border-red-500/20 rounded px-1 py-0.5`,title:o.message,children:o.type===`rate_limited`?`429`:`err`})]})]}),i?(0,z.jsx)(`div`,{className:`space-y-1.5`,children:i.windows.map(e=>{let n=Math.round(e.utilization*100),r=n>=90?`bg-red-500`:n>=70?`bg-amber-500`:`bg-emerald-500`,i=e.resetsAt?sf(t,e.resetsAt):``;return(0,z.jsxs)(`div`,{className:`space-y-0.5`,children:[(0,z.jsxs)(`div`,{className:`flex justify-between text-[10px] text-muted-foreground`,children:[(0,z.jsx)(`span`,{children:of(e.name)}),(0,z.jsxs)(`span`,{children:[n,`%`,i?` · resets in ${i}`:``]})]}),(0,z.jsx)(`div`,{className:`h-1.5 rounded-full bg-muted overflow-hidden`,children:(0,z.jsx)(`div`,{className:`h-full ${r} transition-all duration-500`,style:{width:`${Math.max(0,Math.min(100,n))}%`}})})]},e.name)})}):(0,z.jsx)(`p`,{className:`text-[10px] text-muted-foreground italic`,children:o?o.message:`No quota data`}),(0,z.jsxs)(`div`,{className:`flex items-start justify-between gap-2 text-[10px] text-muted-foreground/60`,children:[(0,z.jsxs)(`div`,{className:`space-y-0.5 min-w-0`,children:[f&&(0,z.jsxs)(`div`,{children:[`Attempted `,yt(t,c)]}),(0,z.jsx)(`div`,{children:s?`Updated ${yt(t,s)}`:`Never updated`})]}),d!=null&&(0,z.jsx)(`span`,{className:`text-amber-400/70 shrink-0 mt-0.5`,children:d>0?`retry in ~${d>60?`${Math.ceil(d/60)}m`:`${d}s`}`:`retrying…`})]})]})}function vf(e){return(0,R.lazy)(()=>Bn(e))}var yf=vf(()=>L(()=>import(`./overview-BdErDjo5.js`).then(e=>({default:e.OverviewView})),__vite__mapDeps([15,1,6,8,9,16,11,17]),import.meta.url)),bf=vf(()=>L(()=>import(`./chat-Cmv-YVII.js`).then(e=>({default:e.ChatView})),__vite__mapDeps([18,1,6,19,8,9,20,21,22,23,24,10,11,16,25,12]),import.meta.url)),xf=vf(()=>L(()=>import(`./agents-B09rJRik.js`).then(e=>({default:e.AgentsView})),__vite__mapDeps([26,1,27,28,6,11,29,19,30,31,32,33,34,8,9,23,24,10,16,17]),import.meta.url)),Sf=vf(()=>L(()=>import(`./managed-agents-CwjcuvR6.js`).then(e=>({default:e.ManagedAgentsView})),__vite__mapDeps([35,1,6,8,9,24,10,11,16]),import.meta.url)),Cf=vf(()=>L(()=>import(`./teams-VmX_6z_9.js`).then(e=>({default:e.TeamsView})),__vite__mapDeps([36,1,37,27,28,6,11,29,19,30,31,38,39,40,32,34,41,8,9,22,16,10,17,25]),import.meta.url)),wf=vf(()=>L(()=>import(`./agent-profiles-CLJNeVxc.js`).then(e=>({default:e.AgentProfilesView})),__vite__mapDeps([42,6,1,8,9,16,11,10]),import.meta.url)),Tf=vf(()=>L(()=>import(`./orchestrators-Bv6T_n-l.js`).then(e=>({default:e.OrchestratorsView})),__vite__mapDeps([43,6,1,8,9,16,11,10,17]),import.meta.url)),Ef=vf(()=>L(()=>import(`./workspaces-C740m1ys.js`).then(e=>({default:e.WorkspacesView})),__vite__mapDeps([44,1,6,8,9,24,10,11,16,17]),import.meta.url)),Df=vf(()=>L(()=>import(`./channels-BQbNtrtF.js`).then(e=>({default:e.ChannelsView})),__vite__mapDeps([45,6,1,8,9,16,11,10,17]),import.meta.url)),Of=vf(()=>L(()=>import(`./connectors-CmARSKoV.js`).then(e=>({default:e.ConnectorsView})),__vite__mapDeps([46,6,1,8,9,16,11,10,17]),import.meta.url)),kf=vf(()=>L(()=>import(`./integrations-D9Cx-7ma.js`).then(e=>({default:e.IntegrationsView})),__vite__mapDeps([47,6,1,8,9,16,11,10,17]),import.meta.url)),Af=vf(()=>L(()=>import(`./security-CRsIxNpi.js`).then(e=>({default:e.SecurityView})),__vite__mapDeps([48,1,6,24,10,11,16,17,25]),import.meta.url)),jf=vf(()=>L(()=>import(`./memory-CgpkkEKK.js`).then(e=>({default:e.MemoryView})),__vite__mapDeps([49,1,6,8,9,16,11,10,17,25]),import.meta.url)),Mf=vf(()=>L(()=>import(`./activity-navjipA_.js`).then(e=>({default:e.ActivityView})),__vite__mapDeps([50,1,6,8,9,20,21,16,11,10,17]),import.meta.url)),Nf=vf(()=>L(()=>import(`./pairs-BpzbJ5OL.js`).then(e=>({default:e.PairsView})),__vite__mapDeps([51,6,1,8,9,16,11,10,17]),import.meta.url)),Pf=vf(()=>L(()=>import(`./messages-BV1z5tMO.js`).then(e=>({default:e.MessagesView})),__vite__mapDeps([52,1,6,8,9,16,11,10,17]),import.meta.url)),Ff=vf(()=>L(()=>import(`./work-queue-lFDBNpds.js`).then(e=>({default:e.WorkQueueView})),__vite__mapDeps([53,6,1,8,9,16,11,10,17]),import.meta.url)),If=vf(()=>L(()=>import(`./tasks-DZ8C8K2N.js`).then(e=>({default:e.TasksView})),__vite__mapDeps([54,1,6,8,9,16,11,10,17]),import.meta.url)),Lf=vf(()=>L(()=>import(`./automation-BsXT9mKj.js`).then(e=>({default:e.AutomationView})),__vite__mapDeps([55,1,6,8,9,16,11,10,17,25]),import.meta.url)),Rf=vf(()=>L(()=>import(`./analytics-C1F28oqr.js`).then(e=>({default:e.AnalyticsView})),__vite__mapDeps([56,1,6,8,9,17,57]),import.meta.url)),zf=vf(()=>L(()=>import(`./insights-CGH0lI9i.js`).then(e=>({default:e.InsightsView})),__vite__mapDeps([58,1,6,16,11,10,17,25,9]),import.meta.url)),Bf=vf(()=>L(()=>import(`./projects-hU5KGW_T.js`).then(e=>({default:e.ProjectsView})),__vite__mapDeps([59,1,6,8,9,24,10,11,16,17]),import.meta.url)),Vf=vf(()=>L(()=>import(`./maintenance-BhpfPv6u.js`).then(e=>({default:e.MaintenanceView})),__vite__mapDeps([60,1,6,8,9,16,11,10]),import.meta.url)),Hf=vf(()=>L(()=>import(`./settings-BqmYUpOu.js`).then(e=>({default:e.SettingsView})),__vite__mapDeps([61,1,37,27,28,6,11,29,19,30,31,38,39,40,32,34,41,8,9,21,16,10,17,25,57]),import.meta.url)),Uf=class extends R.Component{state={error:null};static getDerivedStateFromError(e){return{error:e}}componentDidCatch(e,t){console.error(`[ErrorBoundary]`,e.message,`
22
22
  `,t.componentStack)}render(){return this.state.error?Ln(this.state.error)?(0,z.jsxs)(`div`,{className:`p-6 text-sm`,children:[(0,z.jsx)(`h2`,{className:`text-foreground text-lg mb-2`,children:`A new version was deployed`}),(0,z.jsx)(`p`,{className:`text-muted-foreground mb-4`,children:`Reload to pick up the latest dashboard.`}),(0,z.jsx)(`button`,{className:`px-3 py-1 bg-primary text-primary-foreground rounded text-sm`,onClick:()=>window.location.reload(),children:`Reload`})]}):(0,z.jsxs)(`div`,{className:`p-6 text-sm font-mono whitespace-pre-wrap`,children:[(0,z.jsx)(`h2`,{className:`text-red-400 text-lg mb-2`,children:`Dashboard Error`}),(0,z.jsx)(`p`,{className:`text-foreground mb-4`,children:this.state.error.message}),(0,z.jsx)(`pre`,{className:`text-muted-foreground text-xs overflow-auto`,children:this.state.error.stack}),(0,z.jsx)(`button`,{className:`mt-4 px-3 py-1 bg-zinc-700 rounded text-sm`,onClick:()=>this.setState({error:null}),children:`Retry`})]}):this.props.children}},Wf={overview:yf,chat:bf,agents:xf,managed:Sf,teams:Cf,profiles:wf,orchestrators:Tf,workspaces:Ef,files:G,channels:Df,connectors:Of,integrations:kf,security:Af,memory:jf,activity:Mf,pairs:Nf,messages:Pf,work:Ff,tasks:If,automation:Lf,analytics:Rf,insights:zf,projects:Bf,maintenance:Vf,settings:Hf},Gf=`fixed z-50 top-[calc(var(--header-h,3rem)+0.5rem)] inset-x-3 xl:inset-x-auto xl:top-auto xl:bottom-4 xl:right-4 xl:max-w-sm animate-in fade-in slide-in-from-top-2 xl:slide-in-from-bottom-2 duration-200`;function Kf(){return(0,z.jsxs)(`div`,{className:`flex items-center justify-center py-16 text-muted-foreground text-sm`,children:[(0,z.jsx)(`span`,{className:`inline-block w-3 h-3 mr-2 rounded-full bg-muted-foreground/60 animate-pulse`}),`Loading…`]})}function qf(){let e=A(e=>e.notification),t=A(e=>e.toastNotification),n=A(e=>e.openNotification),r=A(e=>e.dismissToast);if(t){let e=t;return(0,z.jsxs)(`div`,{className:`${Gf} flex items-start gap-2 px-4 py-3 bg-zinc-800 text-zinc-100 text-sm rounded-md shadow-lg border border-zinc-700`,children:[(0,z.jsxs)(`button`,{type:`button`,onClick:()=>{n(e),r()},className:`flex-1 min-w-0 text-left cursor-pointer`,children:[(0,z.jsx)(`div`,{className:`font-medium truncate`,children:e.title}),(0,z.jsx)(`div`,{className:`text-xs text-zinc-300 line-clamp-2 mt-0.5`,children:e.body}),(0,z.jsx)(`div`,{className:`text-[10px] uppercase tracking-wide text-zinc-400 mt-1`,children:`Tap to open`})]}),(0,z.jsx)(`button`,{type:`button`,onClick:r,"aria-label":`Dismiss`,className:`shrink-0 -mr-1 -mt-1 px-1 text-lg leading-none text-zinc-400 hover:text-zinc-100`,children:`×`})]})}return e?(0,z.jsx)(`div`,{className:`${Gf} px-4 py-2 bg-zinc-800 text-zinc-100 text-sm rounded-md shadow-lg border border-zinc-700`,children:e}):null}function Jf(){let e=A(e=>e.init),t=A(e=>e.destroy),n=A(e=>e.theme),r=A(e=>e.view),i=A(e=>e.authNeeded),a=A(e=>e.connectionError),o=A(e=>e.authToken),s=A(e=>e.set),c=A(e=>e.saveTokenAndRefresh),l=A(e=>e.openCommandPalette),u=A(e=>e.commandPaletteOpen),d=A(e=>e.closeCommandPalette);(0,R.useEffect)(()=>{Zt(n)},[n]),(0,R.useEffect)(()=>(e(),()=>t()),[]),(0,R.useEffect)(()=>{function e(e){(e.metaKey||e.ctrlKey)&&e.key?.toLowerCase()===`k`?(e.preventDefault(),l()):e.key===`Escape`&&u&&(e.preventDefault(),d())}return window.addEventListener(`keydown`,e),()=>window.removeEventListener(`keydown`,e)},[u]);let f=Wf[r]||yf;return(0,z.jsx)(Uf,{children:(0,z.jsx)(Ec,{children:(0,z.jsxs)(`div`,{className:`flex min-h-[calc(100dvh-var(--sat))] mt-[var(--sat)]`,children:[(0,z.jsx)(nl,{}),(0,z.jsx)(rl,{}),(0,z.jsxs)(`main`,{className:`flex-1 min-w-0 h-[calc(100dvh-var(--sat))] flex flex-col overflow-y-auto`,children:[(0,z.jsx)(af,{}),!i&&a&&(0,z.jsxs)(`div`,{className:`shrink-0 flex items-center gap-2 p-3 bg-amber-950/40 border-b border-amber-800/60 text-amber-200 text-sm`,children:[(0,z.jsx)(`span`,{className:`inline-block w-2 h-2 rounded-full bg-amber-400 animate-pulse`}),`Relay unreachable — showing last known data. Reconnecting…`]}),i&&(0,z.jsxs)(`div`,{className:`shrink-0 flex items-center gap-2 p-3 bg-card border-b border-border`,children:[(0,z.jsx)(Xe,{className:`w-4 h-4 text-muted-foreground`}),(0,z.jsx)(I,{type:`password`,placeholder:`Relay token...`,value:o,onChange:e=>s({authToken:e.target.value}),onKeyDown:e=>e.key===`Enter`&&c(),className:`max-w-xs h-8`}),(0,z.jsx)(F,{size:`sm`,onClick:c,children:`Connect`})]}),(0,z.jsx)(gf,{}),(0,z.jsx)(`div`,{className:r===`chat`?`flex min-h-0 flex-1 flex-col`:`p-4 md:p-6`,children:(0,z.jsx)(R.Suspense,{fallback:(0,z.jsx)(Kf,{}),children:(0,z.jsx)(f,{})})})]}),(0,z.jsx)(ed,{}),(0,z.jsx)(gd,{}),(0,z.jsx)(Dd,{}),(0,z.jsx)(Od,{}),(0,z.jsx)(kd,{}),(0,z.jsx)(Ad,{}),(0,z.jsx)(jd,{}),(0,z.jsx)(Md,{}),(0,z.jsx)(Pd,{}),(0,z.jsx)(Fd,{}),(0,z.jsx)(Hd,{}),(0,z.jsx)(Gd,{}),(0,z.jsx)(Kd,{}),(0,z.jsx)(nf,{}),(0,z.jsx)(Bl,{}),(0,z.jsx)(rf,{}),(0,z.jsx)(qf,{})]})})})}if((0,Pn.createRoot)(document.getElementById(`root`)).render((0,z.jsx)(R.StrictMode,{children:(0,z.jsx)(Jf,{})})),`serviceWorker`in navigator){let e=new URL(`sw.js`,window.location.href),t=new URL(`.`,e),n=new URL(`/`,window.location.origin),r=new URL(`sw.js`,n);t.href!==n.href&&navigator.serviceWorker.getRegistration(n.pathname).then(e=>{e?.scope===n.href&&e.active?.scriptURL===r.href&&e.unregister()}).catch(()=>{}),navigator.serviceWorker.register(e.toString(),{scope:t.pathname}).catch(()=>{})}export{Wc as A,Fc as B,du as C,Rl as D,Ll as E,Uc as F,Lc as G,Pc as H,Hc as I,Vn as J,Rc as K,Oc as L,qc as M,Yc as N,yl as O,Gc as P,Mc as R,pu as S,Xl as T,Dc as U,Ic as V,kc as W,au as _,xd as a,gu as b,Zu as c,Qu as d,Ru as f,Su as g,Cu as h,yd as i,Kc as j,ml as k,Xu as l,wu as m,Q as n,wd as o,ku as p,zc as q,Ed as r,md as s,Nd as t,$u as u,ou as v,iu as w,mu as x,su as y,Nc as z};
23
- //# sourceMappingURL=index-CiBdEE9x.js.map
23
+ //# sourceMappingURL=index-Dm1zlklN.js.map