@wrongstack/webui-hq 0.298.3 → 0.299.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/assets/{alerts-Dbu8mAyJ.js → alerts-DMDGm1Rk.js} +1 -1
- package/dist/assets/{brain-CnW6MARY.js → brain-CThvhPfH.js} +1 -1
- package/dist/assets/{cockpit-Cub2HohR.js → cockpit-C08zaO3u.js} +1 -1
- package/dist/assets/{control-CM21NZFd.js → control-DfFOI2b8.js} +1 -1
- package/dist/assets/{cost-BhlT04tC.js → cost-BgTMK9-t.js} +1 -1
- package/dist/assets/{fleet-map-kdk3J28q.js → fleet-map-BdJKS5l1.js} +2 -2
- package/dist/assets/{fleet-topology-BaclZ2lo.js → fleet-topology--NWS9MVT.js} +8 -8
- package/dist/assets/icons-kYa9YuNu.js +1 -0
- package/dist/assets/index-BY6kl-Jl.js +2 -0
- package/dist/assets/{index-CO3O3sis.css → index-QlgSKp-e.css} +1 -1
- package/dist/assets/kanban-Cza8Uzw2.js +1 -0
- package/dist/assets/live-console-go8KNMD3.js +1 -0
- package/dist/assets/{mailbox-B_sCyujQ.js → mailbox-CzJ8l7_F.js} +1 -1
- package/dist/assets/{markdown-B4iP4HAO.js → markdown-mWU1fYYi.js} +1 -1
- package/dist/assets/{settings-C2gzlUg1.js → settings-DUBTEqcE.js} +2 -2
- package/dist/assets/{trends-DjIGf6JU.js → trends-WVVT_AEW.js} +1 -1
- package/dist/assets/{use-backfilled-events-Ccld3A7G.js → use-backfilled-events-Cdz-R54C.js} +1 -1
- package/dist/assets/{vendor-oWlwbM7J.js → vendor-5Eg_tZuH.js} +1 -1
- package/dist/assets/{worktree-7QC090A-.js → worktree-DM1gfidB.js} +1 -1
- package/dist/index.html +5 -5
- package/package.json +4 -4
- package/dist/assets/icons-CnibBrEa.js +0 -1
- package/dist/assets/index-zoLjN6PE.js +0 -2
- package/dist/assets/kanban-BAaa1PxE.js +0 -1
- package/dist/assets/live-console-CxIxZIhS.js +0 -1
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import{r as e}from"./rolldown-runtime-QTnfLwEv.js";import{$ as t,At as n,Ct as r,Dt as i,Ft as a,G as o,Mt as s,Nt as c,O as l,St as u,U as d,Vt as f,_t as p,at as m,b as h,bt as g,ct as _,dt as v,ft as y,g as b,h as x,it as S,jt as C,kt as w,nt as T,pt as E,r as D,st as O,tt as k,ut as A,vt as j,x as M}from"./icons-CnibBrEa.js";import{n as ee}from"./vendor-oWlwbM7J.js";import{i as te,n as ne,r as re,t as ie}from"./markdown-B4iP4HAO.js";import{s as ae,u as oe}from"./index-zoLjN6PE.js";var N=te(),P=e(f(),1),se=ee(),F=null,{min:I,max:L,abs:ce,floor:le}=Math,ue=(e,t,n)=>I(n,L(t,e)),de=e=>[...e].sort((e,t)=>e-t),fe=typeof queueMicrotask==`function`?queueMicrotask:e=>{Promise.resolve().then(e)},R=()=>{let e;return[new Promise(t=>{e=t}),e]},pe=e=>{let t;return()=>(e&&=(t=e(),void 0),t)},z=(e,t,n)=>{let r=n?`unshift`:`push`;for(let n=0;n<t;n++)e[r](-1);return e},me=(e,t)=>{let n=e.t[t];return n===-1?e.o:n},he=(e,t,n)=>{let r=e.t[t]===-1;return e.t[t]=n,e.i=I(t,e.i),r},B=(e,t)=>{if(!e.l)return 0;if(e.i>=t)return e.u[t];e.i<0&&(e.u[0]=0,e.i=0);let n=e.i,r=e.u[n];for(;n<t;)r+=me(e,n),e.u[++n]=r;return e.i=t,r},V=(e,t,n=0,r=e.l-1)=>{let i=n;for(;n<=r;){let a=le((n+r)/2);B(e,a)<=t?(i=a,n=a+1):r=a-1}return ue(i,0,e.l-1)},ge=(e,t,n)=>{let r=t-e.l;return e.i=n?-1:I(t-1,e.i),e.l=t,r>0?(z(e.u,r),z(e.t,r,n),e.o*r):(e.u.splice(r),(n?e.t.splice(0,-r):e.t.splice(r)).reduce((t,n)=>t-(n===-1?e.o:n),0))},_e=typeof window<`u`,ve=e=>e.documentElement,ye=e=>e.ownerDocument,be=e=>e.defaultView,xe=pe(()=>!!/iP(hone|od|ad)/.test(navigator.userAgent)||navigator.platform===`MacIntel`&&navigator.maxTouchPoints>0),Se=pe(()=>`scrollBehavior`in ve(document).style),Ce=e=>L(e.h(),e.p()),we=(e,t=40,n=0,r,i=!1)=>{let a=!!n,o=1,s=0,c=0,l=0,u=0,d=0,f=0,p=0,m=0,h=F,g=[0,a?L(n-1,0):-1],_=0,v=!1,y=((e,t,n)=>({o:t,t:n?z(n.slice(0,I(e,n.length)),L(0,e-n.length)):z([],e),l:e,i:-1,u:z([],e+1)}))(e,r?r[1]:t,r&&r[0]),b=new Set,x=()=>l-c,S=()=>x()+d+u,C=(e,t)=>((e,t,n,r)=>{if(r=I(r,e.l-1),B(e,r)<=t){let i=V(e,n,r);return[V(e,t,r,i),i]}{let i=V(e,t,void 0,r);return[i,V(e,n,i)]}})(y,e,t,g[0]),w=()=>B(y,y.l),T=(e,t)=>{let n=B(y,e)-d;return t?w()-n-E(e):n},E=e=>me(y,e),D=(e,t=-1)=>y.t[e]===t,O=e=>{e&&(xe()&&p!==0||h&&m===1?d+=e:u+=e)};return{v:()=>{b.clear()},m:()=>o,_:()=>(e=>[e.t.slice(),e.o])(y),S:(e=200)=>{if(!v||a)return g;let t,n;if(f)[t,n]=g;else{let r=L(0,S()),a=r+s;i||(e=L(0,e),p!==1&&(r-=e),p!==2&&(a+=e)),[t,n]=g=C(L(0,r),L(0,a)),h&&(t=I(t,h[0]),n=L(n,h[1]))}return[L(t,0),I(n,y.l-1)]},$:e=>V(y,e-c),I:D,k:T,R:E,T:()=>y.l,C:()=>l,M:()=>p!==0,p:()=>s,O:()=>c,h:w,H:()=>(f=u,u=0,[f,m===2]),W:(e,t)=>{let n=[e,t];return b.add(n),()=>{b.delete(n)}},B:(e,t)=>{let n,r,g=0;switch(e){case 1:{if(t===l&&m===0)break;let e=f;f=0;let n=t-l,i=ce(n);e&&i<ce(e)+1||m!==0||(p=n<0?2:1),a&&=!1,l=t,g=4;let o=x();o>=-s&&o<=w()&&(g+=1,r=i>s);break}case 2:g=8,p!==0&&(n=!0,g+=1),p=0,m=0,h=F;break;case 3:{let e=t.filter(([e,t])=>!D(e,t));if(!e.length)break;O(e.reduce((e,[t,n])=>{let r;if(m===2)r=!0;else if(h&&m===1)r=t<h[0];else{let e=x(),n=T(t),i=E(t);r=p!==1&&m===0?n+i<=e:n<e&&n+i<e+s}return r&&(e+=n-E(t)),e},0));for(let[t,n]of e){let e=E(t),r=he(y,t,n);i&&(_+=r?n:n-e)}i&&s&&_>s&&(O(((e,t)=>{let n=0,r=[];e.t.forEach((e,i)=>{e!==-1&&(r.push(e),i<t&&n++)}),e.i=-1;let i=de(r),a=i.length,o=a/2|0,s=a%2==0?(i[o-1]+i[o])/2:i[o],c=e.o;return((e.o=s)-c)*L(t-n,0)})(y,V(y,S()))),i=!1),g=3,r=!0;break}case 4:s!==t&&(s||(v=r=!0),s=t,g=3);break;case 5:t[1]?(O(ge(y,t[0],!0)),m=2,g=1):(ge(y,t[0]),g=1);break;case 6:c=t;break;case 7:m=1;break;case 8:h=C(t,t+s),g=1}g&&(o=1+(2147483647&o),n&&d&&(u+=d,d=0),b.forEach(([e,t])=>{g&e&&t(r)}))}}},H=setTimeout,U=(e,t)=>t?-e:e,Te=(e,t,n,r,i,a)=>{let o=Date.now,s=0,c=!1,l=!1,u=!1,d=!1,f=(()=>{let t,n=()=>{t!=F&&clearTimeout(t)},r=()=>{n(),t=H(()=>{t=F,(()=>{if(c||l)return c=!1,void f();u=!1,e.B(2)})()},150)};return r.J=n,r})(),p=()=>{s=o(),u&&(d=!0),a&&e.B(6,a()),e.B(1,r()),f()},m=t=>{if(c||!e.M()||t.ctrlKey)return;let r=o()-s;150>r&&50<r&&(n?t.deltaX:t.deltaY)&&(c=!0)},h=()=>{l=!0,u=d=!1},g=()=>{l=!1,xe()&&(u=!0)};return t.addEventListener(`scroll`,p),t.addEventListener(`wheel`,m,{passive:!0}),t.addEventListener(`touchstart`,h,{passive:!0}),t.addEventListener(`touchend`,g,{passive:!0}),{A:()=>{t.removeEventListener(`scroll`,p),t.removeEventListener(`wheel`,m),t.removeEventListener(`touchstart`,h),t.removeEventListener(`touchend`,g),f.J()},L:()=>{let[t,n]=e.H();t&&(i(t,n,d),d=!1,n&&e.p()>e.h()&&e.B(1,r()))}}},Ee=(e,t,n)=>{let r;return[async(i,a)=>{if(!await t())return;r&&r();let o=()=>{let[t,n]=R();return r=()=>{n(!1)},e.p()&&H(r,150),[t,e.W(2,()=>{n(!0)})]};if(a&&Se())e.B(8,i()),fe(async()=>{for(;;){let t=!0;for(let[n,r]=e.S();n<=r;n++)if(e.I(n)){t=!1;break}if(t)break;let[n,r]=o();try{if(!await n)return}finally{r()}}e.B(7),n(i(),a)});else for(;;){let[t,r]=o();try{if(e.B(7),n(i()),!await t)return}finally{r()}}},()=>{r&&r()}]},De=(e,t)=>{let n,r,i=R(),a=!1,o=t?`scrollLeft`:`scrollTop`,s=t?`overflowX`:`overflowY`,[c,l]=Ee(e,()=>i[0],(e,r)=>{e=U(e,a),r?n.scrollTo({[t?`left`:`top`]:e,behavior:`smooth`}):n[o]=e});return{N(c,u){n=u,t&&(a=getComputedStyle(u).direction===`rtl`),r=Te(e,u,t,()=>U(u[o],a),(t,n,r)=>{if(r){let e=u.style,t=e[s];e[s]=`hidden`,H(()=>{e[s]=t})}u[o]=U(e.C()+t,a),n&&l()}),i[1](!0)},v(){r&&r.A(),i[1](!1),i=R()},P:()=>a,V(e){c(()=>e)},X(t){t+=e.C(),c(()=>t)},Y(t,{align:n,smooth:r,offset:i=0}={}){if(t=ue(t,0,e.T()-1),n===`nearest`){let r=e.k(t),i=e.C();if(r<i)n=`start`;else{if(!(r+e.R(t)>i+e.p()))return;n=`end`}}c(()=>i+e.O()+e.k(t)+(n===`end`?e.R(t)-e.p():n===`center`?(e.R(t)-e.p())/2:0),r)},q:()=>{r&&r.L()}}},Oe=e=>{let t;return{j(n){(t||=new(be(ye(n))).ResizeObserver(e)).observe(n)},D(e){t.unobserve(e)},A(){t&&t.disconnect()}}},ke=(e,t)=>{let n,r=t?`width`:`height`,i=new WeakMap,a=Oe(t=>{let a=[];for(let{target:o,contentRect:s}of t)if(o.offsetParent)if(o===n)e.B(4,s[r]);else{let e=i.get(o);e!=F&&a.push([e,s[r]])}a.length&&e.B(3,a)});return{G(e){a.j(n=e)},U:(e,t)=>(i.set(e,t),a.j(e),()=>{i.delete(e),a.D(e)}),v:a.A}},W=_e?P.useLayoutEffect:P.useEffect,G=`current`,Ae=(e,t)=>{if(Array.isArray(e))for(let n of e)Ae(n,t);else e==null||typeof e==`boolean`||t.push(e)},je=(e,t)=>e.key??`_`+t,Me=e=>{let t=(0,P.useRef)(null);return t[G]||(t[G]=e())},Ne=e=>{let t=(0,P.useRef)(e);return W(()=>{t[G]=e},[e]),t},Pe=(0,P.memo)(({Z:e,ee:t,te:n,oe:r,ne:i,re:a,se:o,ie:s})=>{let c=(0,P.useRef)(null);W(()=>t(c[G],n),[n]);let l=(0,P.useMemo)(()=>{let e={contain:`layout style`,position:i&&s?void 0:`absolute`,[o?`height`:`width`]:`100%`,[o?`top`:`left`]:0,[o?`left`:`top`]:r,visibility:!i||s?void 0:`hidden`};return o&&(e.display=`inline-flex`),e},[r,i,s,o]);return(0,N.jsx)(a,typeof a==`string`?{ref:c,style:l,children:e}:{ref:c,style:l,index:n,children:e})}),Fe=(e,t)=>(0,P.useMemo)(()=>{if(typeof e==`function`)return[n=>e(t[n],n),t.length];let n=(e=>{let t=[];return Ae(e,t),t})(e);return[e=>n[e],n.length]},[e,t]),Ie=(0,P.forwardRef)(({children:e,data:t,bufferSize:n,itemSize:r,shift:i,horizontal:a,keepMounted:o,cache:s,startMargin:c=0,ssrCount:l,as:u=`div`,item:d=`div`,scrollRef:f,onScroll:p,onScrollEnd:m},h)=>{let[g,_]=Fe(e,t),v=(0,P.useRef)(null),y=(0,P.useRef)(!!l),b=Ne(p),x=Ne(m),[S,C,w,T]=Me(()=>{let e=!!a,t=we(_,r,l,s,!r);return[t,ke(t,e),De(t,e),e]});_!==S.T()&&S.B(5,[_,i]),c!==S.O()&&S.B(6,c);let[E,D]=(0,P.useReducer)(S.m,void 0,S.m),O=S.M(),k=S.h(),A=w.P(),j=[],M=e=>{let t=g(e);return(0,N.jsx)(Pe,{ee:C.U,te:e,oe:S.k(e,A),ne:S.I(e),re:d,Z:t,se:T,ie:y[G]},je(t,e))};if(W(()=>{y[G]=!1,S.W(1,e=>{e?(0,se.flushSync)(D):D()}),S.W(4,()=>{b[G]&&b[G](S.C())}),S.W(8,()=>{x[G]&&x[G]()});let e=v[G],t=t=>{C.G(t),w.N(e,t)};return f?fe(()=>{f[G]&&t(f[G])}):t(e.parentElement),()=>{S.v(),C.v(),w.v()}},[]),W(()=>{w.q()},[E]),(0,P.useImperativeHandle)(h,()=>({get cache(){return S._()},get scrollOffset(){return S.C()},get scrollSize(){return Ce(S)},get viewportSize(){return S.p()},findItemIndex:S.$,getItemOffset:S.k,getItemSize:S.R,scrollToIndex:w.Y,scrollTo:w.V,scrollBy:w.X}),[]),o){let e=new Set(o);for(let[t,r]=S.S(n);t<=r;t++)e.add(t);de([...e]).forEach(e=>{j.push(M(e))})}else for(let[e,t]=S.S(n);e<=t;e++)j.push(M(e));return(0,N.jsx)(u,{ref:v,style:{contain:`size style`,overflowAnchor:`none`,flex:`none`,position:`relative`,width:T?k:`100%`,height:T?`100%`:k,pointerEvents:O?`none`:void 0},children:j})}),Le=(0,P.forwardRef)(({children:e,data:t,bufferSize:n,itemSize:r,shift:i,horizontal:a,keepMounted:o,cache:s,ssrCount:c,item:l,onScroll:u,onScrollEnd:d,style:f,...p},m)=>(0,N.jsx)(`div`,{...p,style:{display:a?`inline-block`:`block`,[a?`overflowX`:`overflowY`]:`auto`,contain:`strict`,width:`100%`,height:`100%`,...f},children:(0,N.jsx)(Ie,{ref:m,data:t,bufferSize:n,itemSize:r,shift:i,horizontal:a,keepMounted:o,cache:s,ssrCount:c,item:l,onScroll:u,onScrollEnd:d,children:e})}));function K(){return{entries:[],seen:new Set,consumedBatches:new Set,openTools:new Map,rev:0}}function Re(e){return(e.role===`tool`||e.role===`error`)&&e.toolUseId!==void 0&&e.toolInput===void 0}function ze(e){return e.toolUseId!==void 0&&e.toolInput!==void 0?`tu:${e.toolUseId}`:`${e.ts}|${e.role}|${e.tool??``}|${e.text}`}function Be(e,t){let n={...t};if(Re(n)){let t=n.toolUseId===void 0?void 0:e.openTools.get(n.toolUseId);if(t!==void 0){let r={...e.entries[t]};r.text=n.text||``,n.durationMs!==void 0&&(r.durationMs=n.durationMs),n.isError&&(r.role=`error`,r.isError=!0),e.entries[t]=r;return}}let r=ze(n);e.seen.has(r)||(e.seen.add(r),n.role===`tool`&&n.toolUseId!==void 0&&n.toolInput!==void 0&&e.openTools.set(n.toolUseId,e.entries.length),e.entries.push(n))}function Ve(e,t){let n=K();n.rev=e.rev+1;for(let e of t)Be(n,e);return n}function He(e,t,n){if(n.length===0)return e;let r=t===void 0?`k:${ze(n[0])}:${n.length}`:`${t}:${n.length}`;if(e.consumedBatches.has(r))return e;let i={entries:[...e.entries],seen:new Set(e.seen),consumedBatches:new Set(e.consumedBatches),openTools:new Map(e.openTools),rev:e.rev+1};i.consumedBatches.add(r);for(let e of n)Be(i,e);return i}function q(e){return e.role===`tool`&&e.toolInput!==void 0&&e.text===``&&e.durationMs===void 0&&e.isError!==!0}function Ue(e,t){return`${t}:${e.ts}:${e.role}:${e.toolUseId??``}`}function We(e){let t=[],n=e=>(e.role===`assistant`||e.role===`thinking`)&&e.tool===void 0&&e.toolUseId===void 0&&e.isError!==!0;for(let r of e){let e=t[t.length-1];e!==void 0&&n(r)&&n(e)&&e.role===r.role&&(e.agentId??``)===(r.agentId??``)?t[t.length-1]={...e,text:e.text+r.text}:t.push(r)}return t}function Ge(e){let t=e.kind===`thinking`?`thinking`:e.kind===`tool_use`||e.kind===`tool_result`?`tool`:e.kind===`error`?`error`:e.kind===`system`||e.kind===`status`?`system`:`assistant`;return{ts:e.ts,role:t,text:e.content,...e.toolName===void 0?{}:{tool:e.toolName},...e.kind===`error`?{isError:!0}:{},agentId:e.subagentId}}function Ke(e,t){let n=oe(e=>e.events),r=t!==null&&t!==`leader`,[i,a]=(0,P.useState)(K),[o,s]=(0,P.useState)(!1),[c,l]=(0,P.useState)(null),[u,d]=(0,P.useState)(!1),[f,p]=(0,P.useState)({total:0}),m=(0,P.useRef)(null),[h,g]=(0,P.useState)(!0),_=(0,P.useRef)(!0),v=e=>{_.current=e,g(e)},y=(0,P.useRef)(i);y.current=i;let[b,x]=(0,P.useState)([]),[S,C]=(0,P.useState)(!1);(0,P.useEffect)(()=>{if(x([]),t===null||e===null||!r)return;let n=!1;return C(!0),ae(`/api/sessions/${encodeURIComponent(e)}/agents/${encodeURIComponent(t)}/messages?full=1`).then(e=>{n||(x((e.entries??[]).map(e=>({...e,agentId:t}))),p(t=>({...t,source:e.source})),C(!1))}).catch(()=>{n||C(!1)}),()=>{n=!0}},[t,e,r]);let w=(0,P.useMemo)(()=>{if(!r||t===null)return[];let i=n.filter(t=>t.type===`agent.message`&&(t.sessionId===void 0||t.sessionId===e)).map(e=>e.payload).filter(e=>e.subagentId===t).map(e=>({...Ge(e),agentId:t})),a=new Set,o=[];for(let e of[...b,...i]){let t=`${e.ts}|${e.role}|${e.text}`;a.has(t)||(a.add(t),o.push(e))}return We(o)},[b,n,t,e,r]);(0,P.useEffect)(()=>{if(e===null||r)return;let t=!1;return s(!0),l(null),_.current=!0,g(!0),ae(`/api/sessions/${encodeURIComponent(e)}/events?${u?`full=1`:`limit=1000`}`).then(e=>{t||(a(t=>Ve(t,e.entries)),p({source:e.source,projectName:e.projectName,total:e.total}),s(!1))}).catch(e=>{t||(l(e.message),s(!1))}),()=>{t=!0}},[e,u,r]),(0,P.useEffect)(()=>{a(K()),p({total:0}),d(!1)},[e,t]),(0,P.useEffect)(()=>{if(e===null||r)return;let t=y.current;for(let r of n){if(r.type!==`session.transcript`||r.sessionId!==e)continue;let n=r.payload;Array.isArray(n.entries)&&(t=He(t,n.fromSeq,n.entries))}t!==y.current&&a(t)},[n,e,r]);let T=(0,P.useMemo)(()=>We(i.entries),[i.entries]),E=r?w:T;(0,P.useEffect)(()=>{_.current&&E.length>0&&m.current?.scrollToIndex(E.length-1,{align:`end`})},[E.length,i.rev]);let D=()=>{let e=m.current;e&&v(e.scrollSize-e.scrollOffset-e.viewportSize<80)},O=()=>{v(!0),m.current?.scrollToIndex(E.length-1,{align:`end`})},k=Math.max(0,E.length-8),A=(e,t)=>q(e)&&t>=k,j=(0,P.useMemo)(()=>{let e=0,t=0,n=0;for(let r=0;r<E.length;r++){let i=E[r];i.tool!==void 0&&e++,(i.role===`error`||i.isError)&&t++,q(i)&&r>=k&&n++}return{turns:E.length,tools:e,errors:t,running:n}},[E,k]);return{entries:E,loading:r?S:o,error:c,meta:f,full:u,setFull:d,stats:j,isRunningAt:A,listRef:m,onScroll:D,pinned:h,jumpToLatest:O}}function qe({text:e,label:t}){let[n,r]=(0,P.useState)(!1);return(0,N.jsxs)(`button`,{type:`button`,className:`hq-copy-btn`,onClick:()=>{navigator.clipboard?.writeText(e).then(()=>{r(!0),setTimeout(()=>r(!1),1200)},()=>{})},title:`Copy to clipboard`,children:[n?(0,N.jsx)(c,{size:12}):(0,N.jsx)(j,{size:12}),t!==void 0&&(0,N.jsx)(`span`,{children:n?`copied`:t})]})}function J(e){return e==null||typeof e==`boolean`?``:typeof e==`string`||typeof e==`number`?String(e):Array.isArray(e)?e.map(J).join(``):(0,P.isValidElement)(e)?J(e.props.children):``}var Je={a:({children:e,href:t})=>(0,N.jsx)(`a`,{href:t,target:`_blank`,rel:`noopener noreferrer`,children:e}),table:({children:e})=>(0,N.jsx)(`div`,{className:`hq-md-table-wrap`,children:(0,N.jsx)(`table`,{children:e})}),pre:({children:e})=>{let t=Array.isArray(e)?e[0]:e,n=(0,P.isValidElement)(t)?t.props:void 0,r=/language-(\w+)/.exec(n?.className??``)?.[1],i=J(n?.children).replace(/\n$/,``),a=i===``?0:i.split(`
|
|
2
|
-
`).length;return(0,N.jsxs)(`div`,{className:`hq-md-code`,children:[(0,N.jsxs)(`div`,{className:`hq-md-code-bar`,children:[(0,N.jsx)(`span`,{className:`hq-md-code-lang`,children:r??`text`}),(0,N.jsxs)(`span`,{className:`hq-md-code-meta`,children:[a,` line`,a===1?``:`s`]}),(0,N.jsx)(qe,{text:i})]}),(0,N.jsx)(`pre`,{children:e})]})}},Ye=(0,P.memo)(function({text:e}){return(0,N.jsx)(`div`,{className:`hq-md`,children:(0,N.jsx)(re,{remarkPlugins:[ie],rehypePlugins:[ne],components:Je,children:e})})}),Xe={file:{color:`#60a5fa`},edit:{color:`#fbbf24`},search:{color:`#a78bfa`},folder:{color:`#38bdf8`},terminal:{color:`#67e8f9`},web:{color:`#34d399`},git:{color:`#a3e635`},tree:{color:`#22d3ee`},code:{color:`#818cf8`},test:{color:`#4ade80`},package:{color:`#f472b6`},document:{color:`#94a3b8`},scaffold:{color:`#c084fc`},todo:{color:`#facc15`},plan:{color:`#2dd4bf`},task:{color:`#5eead4`},meta:{color:`#cbd5e1`},index:{color:`#06b6d4`},json:{color:`#eab308`},diff:{color:`#93c5fd`},logs:{color:`#a3a3a3`},settings:{color:`#9ca3af`},brain:{color:`#e879f9`},fallback:{color:`#9ca3af`}},Ze={read:`file`,cat:`file`,view:`file`,write:`file`,create:`file`,edit:`edit`,replace:`edit`,str_replace:`edit`,multi_edit:`edit`,patch:`diff`,grep:`search`,search:`search`,rg:`search`,ripgrep:`search`,glob:`search`,find:`search`,folder:`folder`,ls:`folder`,list:`folder`,set_working_dir:`folder`,tree:`tree`,bash:`terminal`,shell:`terminal`,sh:`terminal`,exec:`terminal`,run:`terminal`,command:`terminal`,fetch:`web`,web_fetch:`web`,web_search:`web`,git:`git`,diff:`diff`,lint:`code`,format:`settings`,typecheck:`code`,language_info:`code`,language:`code`,language_package:`package`,test:`test`,install:`package`,outdated:`package`,audit:`package`,document:`document`,scaffold:`scaffold`,todo:`todo`,plan:`plan`,task:`task`,json:`json`,index:`index`,logs:`logs`,mode:`meta`,tool_search:`meta`,tool_use:`meta`,batch_tool_use:`meta`,tool_help:`meta`,remember:`brain`,forget:`brain`,search_memory:`brain`,find_related_memories:`brain`,memory_for_file:`brain`,memory_for_path:`brain`,memory_search:`brain`,memory_graph:`brain`,memory_verify:`brain`,memory_hygiene:`brain`,memory_candidates:`brain`,lsp_diagnostics:`code`,lsp_definition:`search`,lsp_completion:`code`,lsp_rename:`edit`,"codebase-lsp-search":`index`};function Qe(e){return e?Ze[e.toLowerCase()]??`fallback`:`fallback`}var $e={file:v,edit:
|
|
1
|
+
import{r as e}from"./rolldown-runtime-QTnfLwEv.js";import{At as t,Ct as n,Ft as r,G as i,It as a,Mt as o,Nt as s,O as c,Pt as l,Rt as u,U as d,Wt as f,at as p,b as m,ct as h,dt as g,et as _,ft as v,g as y,h as b,lt as x,mt as S,nt as C,ot as w,pt as T,r as E,rt as D,vt as O,wt as k,x as A,xt as j,yt as M}from"./icons-kYa9YuNu.js";import{n as ee}from"./vendor-5Eg_tZuH.js";import{i as te,n as ne,r as re,t as ie}from"./markdown-mWU1fYYi.js";import{s as ae,u as oe}from"./index-BY6kl-Jl.js";var N=te(),P=e(f(),1),se=ee(),F=null,{min:I,max:L,abs:ce,floor:le}=Math,ue=(e,t,n)=>I(n,L(t,e)),de=e=>[...e].sort((e,t)=>e-t),fe=typeof queueMicrotask==`function`?queueMicrotask:e=>{Promise.resolve().then(e)},R=()=>{let e;return[new Promise(t=>{e=t}),e]},pe=e=>{let t;return()=>(e&&=(t=e(),void 0),t)},z=(e,t,n)=>{let r=n?`unshift`:`push`;for(let n=0;n<t;n++)e[r](-1);return e},me=(e,t)=>{let n=e.t[t];return n===-1?e.o:n},he=(e,t,n)=>{let r=e.t[t]===-1;return e.t[t]=n,e.i=I(t,e.i),r},B=(e,t)=>{if(!e.l)return 0;if(e.i>=t)return e.u[t];e.i<0&&(e.u[0]=0,e.i=0);let n=e.i,r=e.u[n];for(;n<t;)r+=me(e,n),e.u[++n]=r;return e.i=t,r},V=(e,t,n=0,r=e.l-1)=>{let i=n;for(;n<=r;){let a=le((n+r)/2);B(e,a)<=t?(i=a,n=a+1):r=a-1}return ue(i,0,e.l-1)},ge=(e,t,n)=>{let r=t-e.l;return e.i=n?-1:I(t-1,e.i),e.l=t,r>0?(z(e.u,r),z(e.t,r,n),e.o*r):(e.u.splice(r),(n?e.t.splice(0,-r):e.t.splice(r)).reduce((t,n)=>t-(n===-1?e.o:n),0))},_e=typeof window<`u`,ve=e=>e.documentElement,ye=e=>e.ownerDocument,be=e=>e.defaultView,xe=pe(()=>!!/iP(hone|od|ad)/.test(navigator.userAgent)||navigator.platform===`MacIntel`&&navigator.maxTouchPoints>0),Se=pe(()=>`scrollBehavior`in ve(document).style),Ce=e=>L(e.h(),e.p()),we=(e,t=40,n=0,r,i=!1)=>{let a=!!n,o=1,s=0,c=0,l=0,u=0,d=0,f=0,p=0,m=0,h=F,g=[0,a?L(n-1,0):-1],_=0,v=!1,y=((e,t,n)=>({o:t,t:n?z(n.slice(0,I(e,n.length)),L(0,e-n.length)):z([],e),l:e,i:-1,u:z([],e+1)}))(e,r?r[1]:t,r&&r[0]),b=new Set,x=()=>l-c,S=()=>x()+d+u,C=(e,t)=>((e,t,n,r)=>{if(r=I(r,e.l-1),B(e,r)<=t){let i=V(e,n,r);return[V(e,t,r,i),i]}{let i=V(e,t,void 0,r);return[i,V(e,n,i)]}})(y,e,t,g[0]),w=()=>B(y,y.l),T=(e,t)=>{let n=B(y,e)-d;return t?w()-n-E(e):n},E=e=>me(y,e),D=(e,t=-1)=>y.t[e]===t,O=e=>{e&&(xe()&&p!==0||h&&m===1?d+=e:u+=e)};return{v:()=>{b.clear()},m:()=>o,_:()=>(e=>[e.t.slice(),e.o])(y),S:(e=200)=>{if(!v||a)return g;let t,n;if(f)[t,n]=g;else{let r=L(0,S()),a=r+s;i||(e=L(0,e),p!==1&&(r-=e),p!==2&&(a+=e)),[t,n]=g=C(L(0,r),L(0,a)),h&&(t=I(t,h[0]),n=L(n,h[1]))}return[L(t,0),I(n,y.l-1)]},$:e=>V(y,e-c),I:D,k:T,R:E,T:()=>y.l,C:()=>l,M:()=>p!==0,p:()=>s,O:()=>c,h:w,H:()=>(f=u,u=0,[f,m===2]),W:(e,t)=>{let n=[e,t];return b.add(n),()=>{b.delete(n)}},B:(e,t)=>{let n,r,g=0;switch(e){case 1:{if(t===l&&m===0)break;let e=f;f=0;let n=t-l,i=ce(n);e&&i<ce(e)+1||m!==0||(p=n<0?2:1),a&&=!1,l=t,g=4;let o=x();o>=-s&&o<=w()&&(g+=1,r=i>s);break}case 2:g=8,p!==0&&(n=!0,g+=1),p=0,m=0,h=F;break;case 3:{let e=t.filter(([e,t])=>!D(e,t));if(!e.length)break;O(e.reduce((e,[t,n])=>{let r;if(m===2)r=!0;else if(h&&m===1)r=t<h[0];else{let e=x(),n=T(t),i=E(t);r=p!==1&&m===0?n+i<=e:n<e&&n+i<e+s}return r&&(e+=n-E(t)),e},0));for(let[t,n]of e){let e=E(t),r=he(y,t,n);i&&(_+=r?n:n-e)}i&&s&&_>s&&(O(((e,t)=>{let n=0,r=[];e.t.forEach((e,i)=>{e!==-1&&(r.push(e),i<t&&n++)}),e.i=-1;let i=de(r),a=i.length,o=a/2|0,s=a%2==0?(i[o-1]+i[o])/2:i[o],c=e.o;return((e.o=s)-c)*L(t-n,0)})(y,V(y,S()))),i=!1),g=3,r=!0;break}case 4:s!==t&&(s||(v=r=!0),s=t,g=3);break;case 5:t[1]?(O(ge(y,t[0],!0)),m=2,g=1):(ge(y,t[0]),g=1);break;case 6:c=t;break;case 7:m=1;break;case 8:h=C(t,t+s),g=1}g&&(o=1+(2147483647&o),n&&d&&(u+=d,d=0),b.forEach(([e,t])=>{g&e&&t(r)}))}}},H=setTimeout,U=(e,t)=>t?-e:e,Te=(e,t,n,r,i,a)=>{let o=Date.now,s=0,c=!1,l=!1,u=!1,d=!1,f=(()=>{let t,n=()=>{t!=F&&clearTimeout(t)},r=()=>{n(),t=H(()=>{t=F,(()=>{if(c||l)return c=!1,void f();u=!1,e.B(2)})()},150)};return r.J=n,r})(),p=()=>{s=o(),u&&(d=!0),a&&e.B(6,a()),e.B(1,r()),f()},m=t=>{if(c||!e.M()||t.ctrlKey)return;let r=o()-s;150>r&&50<r&&(n?t.deltaX:t.deltaY)&&(c=!0)},h=()=>{l=!0,u=d=!1},g=()=>{l=!1,xe()&&(u=!0)};return t.addEventListener(`scroll`,p),t.addEventListener(`wheel`,m,{passive:!0}),t.addEventListener(`touchstart`,h,{passive:!0}),t.addEventListener(`touchend`,g,{passive:!0}),{A:()=>{t.removeEventListener(`scroll`,p),t.removeEventListener(`wheel`,m),t.removeEventListener(`touchstart`,h),t.removeEventListener(`touchend`,g),f.J()},L:()=>{let[t,n]=e.H();t&&(i(t,n,d),d=!1,n&&e.p()>e.h()&&e.B(1,r()))}}},Ee=(e,t,n)=>{let r;return[async(i,a)=>{if(!await t())return;r&&r();let o=()=>{let[t,n]=R();return r=()=>{n(!1)},e.p()&&H(r,150),[t,e.W(2,()=>{n(!0)})]};if(a&&Se())e.B(8,i()),fe(async()=>{for(;;){let t=!0;for(let[n,r]=e.S();n<=r;n++)if(e.I(n)){t=!1;break}if(t)break;let[n,r]=o();try{if(!await n)return}finally{r()}}e.B(7),n(i(),a)});else for(;;){let[t,r]=o();try{if(e.B(7),n(i()),!await t)return}finally{r()}}},()=>{r&&r()}]},De=(e,t)=>{let n,r,i=R(),a=!1,o=t?`scrollLeft`:`scrollTop`,s=t?`overflowX`:`overflowY`,[c,l]=Ee(e,()=>i[0],(e,r)=>{e=U(e,a),r?n.scrollTo({[t?`left`:`top`]:e,behavior:`smooth`}):n[o]=e});return{N(c,u){n=u,t&&(a=getComputedStyle(u).direction===`rtl`),r=Te(e,u,t,()=>U(u[o],a),(t,n,r)=>{if(r){let e=u.style,t=e[s];e[s]=`hidden`,H(()=>{e[s]=t})}u[o]=U(e.C()+t,a),n&&l()}),i[1](!0)},v(){r&&r.A(),i[1](!1),i=R()},P:()=>a,V(e){c(()=>e)},X(t){t+=e.C(),c(()=>t)},Y(t,{align:n,smooth:r,offset:i=0}={}){if(t=ue(t,0,e.T()-1),n===`nearest`){let r=e.k(t),i=e.C();if(r<i)n=`start`;else{if(!(r+e.R(t)>i+e.p()))return;n=`end`}}c(()=>i+e.O()+e.k(t)+(n===`end`?e.R(t)-e.p():n===`center`?(e.R(t)-e.p())/2:0),r)},q:()=>{r&&r.L()}}},Oe=e=>{let t;return{j(n){(t||=new(be(ye(n))).ResizeObserver(e)).observe(n)},D(e){t.unobserve(e)},A(){t&&t.disconnect()}}},ke=(e,t)=>{let n,r=t?`width`:`height`,i=new WeakMap,a=Oe(t=>{let a=[];for(let{target:o,contentRect:s}of t)if(o.offsetParent)if(o===n)e.B(4,s[r]);else{let e=i.get(o);e!=F&&a.push([e,s[r]])}a.length&&e.B(3,a)});return{G(e){a.j(n=e)},U:(e,t)=>(i.set(e,t),a.j(e),()=>{i.delete(e),a.D(e)}),v:a.A}},W=_e?P.useLayoutEffect:P.useEffect,G=`current`,Ae=(e,t)=>{if(Array.isArray(e))for(let n of e)Ae(n,t);else e==null||typeof e==`boolean`||t.push(e)},je=(e,t)=>e.key??`_`+t,Me=e=>{let t=(0,P.useRef)(null);return t[G]||(t[G]=e())},Ne=e=>{let t=(0,P.useRef)(e);return W(()=>{t[G]=e},[e]),t},Pe=(0,P.memo)(({Z:e,ee:t,te:n,oe:r,ne:i,re:a,se:o,ie:s})=>{let c=(0,P.useRef)(null);W(()=>t(c[G],n),[n]);let l=(0,P.useMemo)(()=>{let e={contain:`layout style`,position:i&&s?void 0:`absolute`,[o?`height`:`width`]:`100%`,[o?`top`:`left`]:0,[o?`left`:`top`]:r,visibility:!i||s?void 0:`hidden`};return o&&(e.display=`inline-flex`),e},[r,i,s,o]);return(0,N.jsx)(a,typeof a==`string`?{ref:c,style:l,children:e}:{ref:c,style:l,index:n,children:e})}),Fe=(e,t)=>(0,P.useMemo)(()=>{if(typeof e==`function`)return[n=>e(t[n],n),t.length];let n=(e=>{let t=[];return Ae(e,t),t})(e);return[e=>n[e],n.length]},[e,t]),Ie=(0,P.forwardRef)(({children:e,data:t,bufferSize:n,itemSize:r,shift:i,horizontal:a,keepMounted:o,cache:s,startMargin:c=0,ssrCount:l,as:u=`div`,item:d=`div`,scrollRef:f,onScroll:p,onScrollEnd:m},h)=>{let[g,_]=Fe(e,t),v=(0,P.useRef)(null),y=(0,P.useRef)(!!l),b=Ne(p),x=Ne(m),[S,C,w,T]=Me(()=>{let e=!!a,t=we(_,r,l,s,!r);return[t,ke(t,e),De(t,e),e]});_!==S.T()&&S.B(5,[_,i]),c!==S.O()&&S.B(6,c);let[E,D]=(0,P.useReducer)(S.m,void 0,S.m),O=S.M(),k=S.h(),A=w.P(),j=[],M=e=>{let t=g(e);return(0,N.jsx)(Pe,{ee:C.U,te:e,oe:S.k(e,A),ne:S.I(e),re:d,Z:t,se:T,ie:y[G]},je(t,e))};if(W(()=>{y[G]=!1,S.W(1,e=>{e?(0,se.flushSync)(D):D()}),S.W(4,()=>{b[G]&&b[G](S.C())}),S.W(8,()=>{x[G]&&x[G]()});let e=v[G],t=t=>{C.G(t),w.N(e,t)};return f?fe(()=>{f[G]&&t(f[G])}):t(e.parentElement),()=>{S.v(),C.v(),w.v()}},[]),W(()=>{w.q()},[E]),(0,P.useImperativeHandle)(h,()=>({get cache(){return S._()},get scrollOffset(){return S.C()},get scrollSize(){return Ce(S)},get viewportSize(){return S.p()},findItemIndex:S.$,getItemOffset:S.k,getItemSize:S.R,scrollToIndex:w.Y,scrollTo:w.V,scrollBy:w.X}),[]),o){let e=new Set(o);for(let[t,r]=S.S(n);t<=r;t++)e.add(t);de([...e]).forEach(e=>{j.push(M(e))})}else for(let[e,t]=S.S(n);e<=t;e++)j.push(M(e));return(0,N.jsx)(u,{ref:v,style:{contain:`size style`,overflowAnchor:`none`,flex:`none`,position:`relative`,width:T?k:`100%`,height:T?`100%`:k,pointerEvents:O?`none`:void 0},children:j})}),Le=(0,P.forwardRef)(({children:e,data:t,bufferSize:n,itemSize:r,shift:i,horizontal:a,keepMounted:o,cache:s,ssrCount:c,item:l,onScroll:u,onScrollEnd:d,style:f,...p},m)=>(0,N.jsx)(`div`,{...p,style:{display:a?`inline-block`:`block`,[a?`overflowX`:`overflowY`]:`auto`,contain:`strict`,width:`100%`,height:`100%`,...f},children:(0,N.jsx)(Ie,{ref:m,data:t,bufferSize:n,itemSize:r,shift:i,horizontal:a,keepMounted:o,cache:s,ssrCount:c,item:l,onScroll:u,onScrollEnd:d,children:e})}));function K(){return{entries:[],seen:new Set,consumedBatches:new Set,openTools:new Map,rev:0}}function Re(e){return(e.role===`tool`||e.role===`error`)&&e.toolUseId!==void 0&&e.toolInput===void 0}function ze(e){return e.toolUseId!==void 0&&e.toolInput!==void 0?`tu:${e.toolUseId}`:`${e.ts}|${e.role}|${e.tool??``}|${e.text}`}function Be(e,t){let n={...t};if(Re(n)){let t=n.toolUseId===void 0?void 0:e.openTools.get(n.toolUseId);if(t!==void 0){let r={...e.entries[t]};r.text=n.text||``,n.durationMs!==void 0&&(r.durationMs=n.durationMs),n.isError&&(r.role=`error`,r.isError=!0),e.entries[t]=r;return}}let r=ze(n);e.seen.has(r)||(e.seen.add(r),n.role===`tool`&&n.toolUseId!==void 0&&n.toolInput!==void 0&&e.openTools.set(n.toolUseId,e.entries.length),e.entries.push(n))}function Ve(e,t){let n=K();n.rev=e.rev+1;for(let e of t)Be(n,e);return n}function He(e,t,n){if(n.length===0)return e;let r=t===void 0?`k:${ze(n[0])}:${n.length}`:`${t}:${n.length}`;if(e.consumedBatches.has(r))return e;let i={entries:[...e.entries],seen:new Set(e.seen),consumedBatches:new Set(e.consumedBatches),openTools:new Map(e.openTools),rev:e.rev+1};i.consumedBatches.add(r);for(let e of n)Be(i,e);return i}function q(e){return e.role===`tool`&&e.toolInput!==void 0&&e.text===``&&e.durationMs===void 0&&e.isError!==!0}function Ue(e,t){return`${t}:${e.ts}:${e.role}:${e.toolUseId??``}`}function We(e){let t=[],n=e=>(e.role===`assistant`||e.role===`thinking`)&&e.tool===void 0&&e.toolUseId===void 0&&e.isError!==!0;for(let r of e){let e=t[t.length-1];e!==void 0&&n(r)&&n(e)&&e.role===r.role&&(e.agentId??``)===(r.agentId??``)?t[t.length-1]={...e,text:e.text+r.text}:t.push(r)}return t}function Ge(e){let t=e.kind===`thinking`?`thinking`:e.kind===`tool_use`||e.kind===`tool_result`?`tool`:e.kind===`error`?`error`:e.kind===`system`||e.kind===`status`?`system`:`assistant`;return{ts:e.ts,role:t,text:e.content,...e.toolName===void 0?{}:{tool:e.toolName},...e.kind===`error`?{isError:!0}:{},agentId:e.subagentId}}function Ke(e,t){let n=oe(e=>e.events),r=t!==null&&t!==`leader`,[i,a]=(0,P.useState)(K),[o,s]=(0,P.useState)(!1),[c,l]=(0,P.useState)(null),[u,d]=(0,P.useState)(!1),[f,p]=(0,P.useState)({total:0}),m=(0,P.useRef)(null),[h,g]=(0,P.useState)(!0),_=(0,P.useRef)(!0),v=e=>{_.current=e,g(e)},y=(0,P.useRef)(i);y.current=i;let[b,x]=(0,P.useState)([]),[S,C]=(0,P.useState)(!1);(0,P.useEffect)(()=>{if(x([]),t===null||e===null||!r)return;let n=!1;return C(!0),ae(`/api/sessions/${encodeURIComponent(e)}/agents/${encodeURIComponent(t)}/messages?full=1`).then(e=>{n||(x((e.entries??[]).map(e=>({...e,agentId:t}))),p(t=>({...t,source:e.source})),C(!1))}).catch(()=>{n||C(!1)}),()=>{n=!0}},[t,e,r]);let w=(0,P.useMemo)(()=>{if(!r||t===null)return[];let i=n.filter(t=>t.type===`agent.message`&&(t.sessionId===void 0||t.sessionId===e)).map(e=>e.payload).filter(e=>e.subagentId===t).map(e=>({...Ge(e),agentId:t})),a=new Set,o=[];for(let e of[...b,...i]){let t=`${e.ts}|${e.role}|${e.text}`;a.has(t)||(a.add(t),o.push(e))}return We(o)},[b,n,t,e,r]);(0,P.useEffect)(()=>{if(e===null||r)return;let t=!1;return s(!0),l(null),_.current=!0,g(!0),ae(`/api/sessions/${encodeURIComponent(e)}/events?${u?`full=1`:`limit=1000`}`).then(e=>{t||(a(t=>Ve(t,e.entries)),p({source:e.source,projectName:e.projectName,total:e.total}),s(!1))}).catch(e=>{t||(l(e.message),s(!1))}),()=>{t=!0}},[e,u,r]),(0,P.useEffect)(()=>{a(K()),p({total:0}),d(!1)},[e,t]),(0,P.useEffect)(()=>{if(e===null||r)return;let t=y.current;for(let r of n){if(r.type!==`session.transcript`||r.sessionId!==e)continue;let n=r.payload;Array.isArray(n.entries)&&(t=He(t,n.fromSeq,n.entries))}t!==y.current&&a(t)},[n,e,r]);let T=(0,P.useMemo)(()=>We(i.entries),[i.entries]),E=r?w:T;(0,P.useEffect)(()=>{_.current&&E.length>0&&m.current?.scrollToIndex(E.length-1,{align:`end`})},[E.length,i.rev]);let D=()=>{let e=m.current;e&&v(e.scrollSize-e.scrollOffset-e.viewportSize<80)},O=()=>{v(!0),m.current?.scrollToIndex(E.length-1,{align:`end`})},k=Math.max(0,E.length-8),A=(e,t)=>q(e)&&t>=k,j=(0,P.useMemo)(()=>{let e=0,t=0,n=0;for(let r=0;r<E.length;r++){let i=E[r];i.tool!==void 0&&e++,(i.role===`error`||i.isError)&&t++,q(i)&&r>=k&&n++}return{turns:E.length,tools:e,errors:t,running:n}},[E,k]);return{entries:E,loading:r?S:o,error:c,meta:f,full:u,setFull:d,stats:j,isRunningAt:A,listRef:m,onScroll:D,pinned:h,jumpToLatest:O}}function qe({text:e,label:t}){let[n,r]=(0,P.useState)(!1);return(0,N.jsxs)(`button`,{type:`button`,className:`hq-copy-btn`,onClick:()=>{navigator.clipboard?.writeText(e).then(()=>{r(!0),setTimeout(()=>r(!1),1200)},()=>{})},title:`Copy to clipboard`,children:[n?(0,N.jsx)(a,{size:12}):(0,N.jsx)(M,{size:12}),t!==void 0&&(0,N.jsx)(`span`,{children:n?`copied`:t})]})}function J(e){return e==null||typeof e==`boolean`?``:typeof e==`string`||typeof e==`number`?String(e):Array.isArray(e)?e.map(J).join(``):(0,P.isValidElement)(e)?J(e.props.children):``}var Je={a:({children:e,href:t})=>(0,N.jsx)(`a`,{href:t,target:`_blank`,rel:`noopener noreferrer`,children:e}),table:({children:e})=>(0,N.jsx)(`div`,{className:`hq-md-table-wrap`,children:(0,N.jsx)(`table`,{children:e})}),pre:({children:e})=>{let t=Array.isArray(e)?e[0]:e,n=(0,P.isValidElement)(t)?t.props:void 0,r=/language-(\w+)/.exec(n?.className??``)?.[1],i=J(n?.children).replace(/\n$/,``),a=i===``?0:i.split(`
|
|
2
|
+
`).length;return(0,N.jsxs)(`div`,{className:`hq-md-code`,children:[(0,N.jsxs)(`div`,{className:`hq-md-code-bar`,children:[(0,N.jsx)(`span`,{className:`hq-md-code-lang`,children:r??`text`}),(0,N.jsxs)(`span`,{className:`hq-md-code-meta`,children:[a,` line`,a===1?``:`s`]}),(0,N.jsx)(qe,{text:i})]}),(0,N.jsx)(`pre`,{children:e})]})}},Ye=(0,P.memo)(function({text:e}){return(0,N.jsx)(`div`,{className:`hq-md`,children:(0,N.jsx)(re,{remarkPlugins:[ie],rehypePlugins:[ne],components:Je,children:e})})}),Xe={file:{color:`#60a5fa`},edit:{color:`#fbbf24`},search:{color:`#a78bfa`},folder:{color:`#38bdf8`},terminal:{color:`#67e8f9`},web:{color:`#34d399`},git:{color:`#a3e635`},tree:{color:`#22d3ee`},code:{color:`#818cf8`},test:{color:`#4ade80`},package:{color:`#f472b6`},document:{color:`#94a3b8`},scaffold:{color:`#c084fc`},todo:{color:`#facc15`},plan:{color:`#2dd4bf`},task:{color:`#5eead4`},meta:{color:`#cbd5e1`},index:{color:`#06b6d4`},json:{color:`#eab308`},diff:{color:`#93c5fd`},logs:{color:`#a3a3a3`},settings:{color:`#9ca3af`},brain:{color:`#e879f9`},fallback:{color:`#9ca3af`}},Ze={read:`file`,cat:`file`,view:`file`,write:`file`,create:`file`,edit:`edit`,replace:`edit`,str_replace:`edit`,multi_edit:`edit`,patch:`diff`,grep:`search`,search:`search`,rg:`search`,ripgrep:`search`,glob:`search`,find:`search`,folder:`folder`,ls:`folder`,list:`folder`,set_working_dir:`folder`,tree:`tree`,bash:`terminal`,shell:`terminal`,sh:`terminal`,exec:`terminal`,run:`terminal`,command:`terminal`,fetch:`web`,web_fetch:`web`,web_search:`web`,git:`git`,diff:`diff`,lint:`code`,format:`settings`,typecheck:`code`,language_info:`code`,language:`code`,language_package:`package`,test:`test`,install:`package`,outdated:`package`,audit:`package`,document:`document`,scaffold:`scaffold`,todo:`todo`,plan:`plan`,task:`task`,json:`json`,index:`index`,logs:`logs`,mode:`meta`,tool_search:`meta`,tool_use:`meta`,batch_tool_use:`meta`,tool_help:`meta`,remember:`brain`,forget:`brain`,search_memory:`brain`,find_related_memories:`brain`,memory_for_file:`brain`,memory_for_path:`brain`,memory_search:`brain`,memory_graph:`brain`,memory_verify:`brain`,memory_hygiene:`brain`,memory_candidates:`brain`,lsp_diagnostics:`code`,lsp_definition:`search`,lsp_completion:`code`,lsp_rename:`edit`,"codebase-lsp-search":`index`};function Qe(e){return e?Ze[e.toLowerCase()]??`fallback`:`fallback`}var $e={file:v,edit:T,search:m,folder:x,terminal:b,web:D,git:w,tree:h,code:j,test:g,package:c,document:A,scaffold:C,todo:d,plan:n,task:i,meta:E,index:O,json:S,diff:p,logs:_,settings:y,brain:u,fallback:E};function et(e){let t=Qe(e??``);return{Icon:$e[t],color:Xe[t].color}}var tt=[`path`,`file_path`,`pattern`,`command`,`cmd`,`url`,`query`,`description`,`content`];function Y(e,t){return e.length>t?`${e.slice(0,t-1)}\u2026`:e}function X(e){let t=e.file_path??e.path??e.filepath;return typeof t==`string`?t:``}function nt(e){try{return JSON.stringify(e)}catch{return String(e)}}function rt(e){if(typeof e==`string`){let t=e.trim();if(t.startsWith(`{`)||t.startsWith(`[`))try{let e=JSON.parse(t);if(e&&typeof e==`object`)return{obj:e,raw:e}}catch{}return{obj:null,raw:e}}return e&&typeof e==`object`?{obj:e,raw:e}:{obj:null,raw:e}}function it(e,t){if(t==null||t===``)return``;let{obj:n,raw:r}=rt(t);if(!n)return Y(String(r),120);let i=(e??``).toLowerCase();if(/^todo(_?write)?$|^todos$/.test(i)||Array.isArray(n.todos)){let e=n.todos??[];if(Array.isArray(e)){let t=e.filter(e=>e?.status===`completed`).length,n=e.filter(e=>e?.status===`in_progress`).length,r=[`${e.length} todo${e.length===1?``:`s`}`];return t>0&&r.push(`${t} done`),n>0&&r.push(`${n} in-progress`),r.join(` · `)}}if(/batch|parallel/.test(i)||Array.isArray(n.tool_uses)||Array.isArray(n.calls)){let e=n.tool_uses??n.calls??n.batch;if(Array.isArray(e)){let t=new Set;for(let n of e)n&&typeof n==`object`&&`name`in n?t.add(String(n.name)):n&&typeof n==`object`&&`tool`in n&&t.add(String(n.tool));let n=[...t].slice(0,3).join(`, `),r=t.size>3?` +${t.size-3}`:``;return`${e.length} sub-tool${e.length===1?``:`s`}${n?` \xB7 ${n}${r}`:``}`}}if(/^(edit|str_replace|edit_file|patch)$/.test(i)){let e=X(n),t=typeof n.old_string==`string`?n.old_string:``,r=typeof n.new_string==`string`?n.new_string:``,i=t?t.split(`
|
|
3
3
|
`).length:0,a=r?r.split(`
|
|
4
4
|
`).length:0;return`edit ${e||`(file)`}${i||a?` (${i} \u2192 ${a} lines)`:``}`}if(/^(write|write_file|create_file|new_file)$/.test(i)){let e=X(n),t=typeof n.content==`string`?n.content:``,r=t?t.split(`
|
|
5
5
|
`).length:0;return`write ${e||`(file)`}${r?` \xB7 ${r} lines`:``}`}if(/^(bash|shell|sh|exec|run|run_command|run_shell|command)$/.test(i)){let e=n.command??n.cmd??n.script;if(typeof e==`string`)return`$ ${Y(e,110)}`}if(/^(fetch|http|web|web_fetch|web_search|webfetch|curl|request)$/.test(i)){let e=n.url;if(typeof e==`string`)return`${(n.method??`GET`).toUpperCase()} ${Y(e,100)}`}if(/^(grep|search|ripgrep|rg)$/.test(i)){let e=n.pattern,t=n.path??n.glob??n.type;if(typeof e==`string`)return t?`grep ${Y(e,60)} in ${t}`:`grep ${Y(e,100)}`}if(/^(glob|find)$/.test(i)){let e=n.pattern??n.glob;if(typeof e==`string`)return`glob ${Y(e,80)}`}if(/^(read|read_file|cat|view)$/.test(i)){let e=X(n),t=n.offset,r=n.limit;if(e&&(typeof t==`number`||typeof r==`number`)){let n=t??0;return`read ${e} (${n}\u2026${typeof r==`number`?n+r:``})`}if(e)return`read ${e}`}for(let e of tt){let t=n[e];if(typeof t==`string`&&t.length>0)return`${e}: ${Y(t,100)}`}return Y(nt(r),120)}[`function __clip(s,n){ s=String(s==null?"":s); return s.length>n ? s.slice(0,n-1)+"\\u2026" : s; }`,`function toolInputSummary(name, rawInput){`,` if(rawInput==null || rawInput==="") return "";`,` var obj=null, raw=rawInput;`,` if(typeof rawInput==="string"){`,` var s=rawInput.trim();`,` if(s.charAt(0)==="{" || s.charAt(0)==="["){ try{ var pj=JSON.parse(s); if(pj && typeof pj==="object"){ obj=pj; raw=pj; } }catch(_e){} }`,` } else if(rawInput && typeof rawInput==="object"){ obj=rawInput; raw=rawInput; }`,` if(!obj) return __clip(String(raw),120);`,` var n=String(name==null?"":name).toLowerCase();`,` if(/^todo(_?write)?$|^todos$/.test(n) || Array.isArray(obj.todos)){`,` var todos=obj.todos||[];`,` if(Array.isArray(todos)){`,` var done=0, wip=0, ti;`,` for(ti=0; ti<todos.length; ti++){ var st=todos[ti]&&todos[ti].status; if(st==="completed") done++; else if(st==="in_progress") wip++; }`,` var tp=[todos.length+" todo"+(todos.length===1?"":"s")];`,` if(done>0) tp.push(done+" done"); if(wip>0) tp.push(wip+" in-progress");`,` return tp.join(" \\u00b7 ");`,` }`,` }`,` if(/batch|parallel/.test(n) || Array.isArray(obj.tool_uses) || Array.isArray(obj.calls)){`,` var list=obj.tool_uses||obj.calls||obj.batch;`,` if(Array.isArray(list)){`,` var names={}, ord=[], li, it, nm;`,` for(li=0; li<list.length; li++){ it=list[li]; if(it && typeof it==="object"){ nm=("name" in it)?it.name:(("tool" in it)?it.tool:null); if(nm!=null){ nm=String(nm); if(!names[nm]){ names[nm]=1; ord.push(nm); } } } }`,` var preview=ord.slice(0,3).join(", ");`,` var more=ord.length>3 ? " +"+(ord.length-3) : "";`,` return list.length+" sub-tool"+(list.length===1?"":"s")+(preview?(" \\u00b7 "+preview+more):"");`,` }`,` }`,` var fp;`,` if(/^(edit|str_replace|edit_file|patch)$/.test(n)){`,` fp=(obj.file_path!=null?obj.file_path:(obj.path!=null?obj.path:obj.filepath));`,` var oldS=typeof obj.old_string==="string"?obj.old_string:"";`,` var newS=typeof obj.new_string==="string"?obj.new_string:"";`,` var ol=oldS?oldS.split("\\n").length:0, nl=newS?newS.split("\\n").length:0;`,` var efp=typeof fp==="string"?fp:"";`,` return "edit "+(efp||"(file)")+((ol||nl)?(" ("+ol+" \\u2192 "+nl+" lines)"):"");`,` }`,` if(/^(write|write_file|create_file|new_file)$/.test(n)){`,` fp=(obj.file_path!=null?obj.file_path:(obj.path!=null?obj.path:obj.filepath));`,` var wc=typeof obj.content==="string"?obj.content:"";`,` var wl=wc?wc.split("\\n").length:0;`,` var wfp=typeof fp==="string"?fp:"";`,` return "write "+(wfp||"(file)")+(wl?(" \\u00b7 "+wl+" lines"):"");`,` }`,` if(/^(bash|shell|sh|exec|run|run_command|run_shell|command)$/.test(n)){`,` var cmd=(obj.command!=null?obj.command:(obj.cmd!=null?obj.cmd:obj.script));`,` if(typeof cmd==="string") return "$ "+__clip(cmd,110);`,` }`,` if(/^(fetch|http|web|web_fetch|web_search|webfetch|curl|request)$/.test(n)){`,` if(typeof obj.url==="string"){ var mth=(typeof obj.method==="string"?obj.method:"GET"); return mth.toUpperCase()+" "+__clip(obj.url,100); }`,` }`,` if(/^(grep|search|ripgrep|rg)$/.test(n)){`,` var pat=obj.pattern, scope=(obj.path!=null?obj.path:(obj.glob!=null?obj.glob:obj.type));`,` if(typeof pat==="string"){ return scope ? ("grep "+__clip(pat,60)+" in "+scope) : ("grep "+__clip(pat,100)); }`,` }`,` if(/^(glob|find)$/.test(n)){`,` var gp=(obj.pattern!=null?obj.pattern:obj.glob);`,` if(typeof gp==="string") return "glob "+__clip(gp,80);`,` }`,` if(/^(read|read_file|cat|view)$/.test(n)){`,` fp=(obj.file_path!=null?obj.file_path:(obj.path!=null?obj.path:obj.filepath));`,` if(typeof fp==="string" && fp){`,` var off=obj.offset, lim=obj.limit;`,` if(typeof off==="number" || typeof lim==="number"){ var start=(typeof off==="number"?off:0); var end=(typeof lim==="number"?(start+lim):""); return "read "+fp+" ("+start+"\\u2026"+end+")"; }`,` return "read "+fp;`,` }`,` }`,` var HEAD=["path","file_path","pattern","command","cmd","url","query","description","content"], hi;`,` for(hi=0; hi<HEAD.length; hi++){ var hv=obj[HEAD[hi]]; if(typeof hv==="string" && hv.length>0){ return HEAD[hi]+": "+__clip(hv,100); } }`,` var jsonStr; try{ jsonStr=JSON.stringify(raw); }catch(_e2){ jsonStr=String(raw); }`,` return __clip(jsonStr,120);`,`}`].join(`
|
|
@@ -7,9 +7,9 @@ import{r as e}from"./rolldown-runtime-QTnfLwEv.js";import{$ as t,At as n,Ct as r
|
|
|
7
7
|
`),r=t.split(`
|
|
8
8
|
`);if(n.length>5e3||r.length>5e3)return null;let i=n.length,a=r.length,o=Array.from({length:i+1},()=>Array(a+1).fill(0));for(let e=i-1;e>=0;e--)for(let t=a-1;t>=0;t--)o[e][t]=n[e]===r[t]?o[e+1][t+1]+1:Math.max(o[e+1][t],o[e][t+1]);let s=[],c=0,l=0;for(;c<i&&l<a;)n[c]===r[l]?(s.push({kind:`ctx`,text:n[c]}),c++,l++):o[c+1][l]>=o[c][l+1]?(s.push({kind:`del`,text:n[c]}),c++):(s.push({kind:`add`,text:r[l]}),l++);for(;c<i;)s.push({kind:`del`,text:n[c++]});for(;l<a;)s.push({kind:`add`,text:r[l++]});return s}function gt(e){let t=[],n=e.split(`
|
|
9
9
|
`);for(let e of n)e.startsWith(`@@`)||e.startsWith(`--- `)||e.startsWith(`+++ `)||e.startsWith(`diff `)||e.startsWith(`index `)||e.startsWith(`\\ `)?t.push({kind:`meta`,text:e}):e.startsWith(`+`)?t.push({kind:`add`,text:e.slice(1)}):e.startsWith(`-`)?t.push({kind:`del`,text:e.slice(1)}):t.push({kind:`ctx`,text:e.startsWith(` `)?e.slice(1):e});return t.length>0&&t[t.length-1].kind===`ctx`&&t[t.length-1].text===``&&t.pop(),t}function _t(e,t){let n=mt(e,t);return n?n.mode===`unified`?{caption:n.caption,rows:gt(n.patchText)}:{caption:n.caption,rows:ht(n.oldText,n.newText)}:null}[`var DIFF_MAX_LINES = 5000;`,`function __diffObj(input){`,` if(typeof input==="string"){ var s=input.trim(); if(s.charAt(0)==="{"||s.charAt(0)==="["){ try{ var p=JSON.parse(s); if(p&&typeof p==="object") return p; }catch(_e){} } return null; }`,` if(input&&typeof input==="object") return input; return null;`,`}`,`function diffFromToolInput(name, input){`,` if(!name) return null;`,` var obj=__diffObj(input); if(!obj) return null;`,` var n=String(name).toLowerCase();`,` var fp=String(obj.file_path!=null?obj.file_path:(obj.path!=null?obj.path:""));`,` if(n==="edit"||n==="str_replace"||n==="edit_file"||n==="multi_edit"){`,` var oldT=typeof obj.old_string==="string"?obj.old_string:"";`,` var newT=typeof obj.new_string==="string"?obj.new_string:"";`,` if(!oldT&&!newT) return null;`,` return { mode:"lcs", oldText:oldT, newText:newT, caption:("edit "+fp).replace(/\\s+$/,"") };`,` }`,` if(n==="write"||n==="write_file"||n==="create_file"){`,` var c=typeof obj.content==="string"?obj.content:"";`,` if(!c) return null;`,` return { mode:"lcs", oldText:"", newText:c, caption:("write "+fp+" (new)").replace(/\\s+/g," ").replace(/\\s+$/,"") };`,` }`,` if(n==="patch"){`,` var pt=typeof obj.patch==="string"?obj.patch:"";`,` if(!pt.replace(/\\s/g,"")) return null;`,` return { mode:"unified", patchText:pt, caption: fp ? ("patch "+fp) : "patch" };`,` }`,` return null;`,`}`,`function computeLineDiff(oldText, newText){`,` var a=oldText.split("\\n"), b=newText.split("\\n");`,` if(a.length>DIFF_MAX_LINES||b.length>DIFF_MAX_LINES) return null;`,` var nn=a.length, mm=b.length, i, j;`,` var dp=new Array(nn+1); for(i=0;i<=nn;i++){ dp[i]=new Array(mm+1); for(j=0;j<=mm;j++) dp[i][j]=0; }`,` for(i=nn-1;i>=0;i--){ for(j=mm-1;j>=0;j--){ dp[i][j]= a[i]===b[j] ? dp[i+1][j+1]+1 : Math.max(dp[i+1][j], dp[i][j+1]); } }`,` var rows=[]; i=0; j=0;`,` while(i<nn&&j<mm){ if(a[i]===b[j]){ rows.push({kind:"ctx",text:a[i]}); i++; j++; } else if(dp[i+1][j]>=dp[i][j+1]){ rows.push({kind:"del",text:a[i]}); i++; } else { rows.push({kind:"add",text:b[j]}); j++; } }`,` while(i<nn){ rows.push({kind:"del",text:a[i]}); i++; }`,` while(j<mm){ rows.push({kind:"add",text:b[j]}); j++; }`,` return rows;`,`}`,`function parseUnifiedDiff(patchText){`,` var rows=[], lines=patchText.split("\\n"), k, raw;`,` for(k=0;k<lines.length;k++){ raw=lines[k];`,` if(raw.indexOf("@@")===0||raw.indexOf("--- ")===0||raw.indexOf("+++ ")===0||raw.indexOf("diff ")===0||raw.indexOf("index ")===0||raw.indexOf("\\\\ ")===0){ rows.push({kind:"meta",text:raw}); }`,` else if(raw.charAt(0)==="+"){ rows.push({kind:"add",text:raw.slice(1)}); }`,` else if(raw.charAt(0)==="-"){ rows.push({kind:"del",text:raw.slice(1)}); }`,` else { rows.push({kind:"ctx",text: raw.charAt(0)===" " ? raw.slice(1) : raw}); }`,` }`,` if(rows.length>0 && rows[rows.length-1].kind==="ctx" && rows[rows.length-1].text===""){ rows.pop(); }`,` return rows;`,`}`,`function diffRowsFromToolInput(name, input){`,` var d=diffFromToolInput(name, input); if(!d) return null;`,` if(d.mode==="unified") return { caption:d.caption, rows:parseUnifiedDiff(d.patchText) };`,` return { caption:d.caption, rows:computeLineDiff(d.oldText, d.newText) };`,`}`].join(`
|
|
10
|
-
`);var vt={add:`+`,del:`-`,ctx:` `,meta:`@`};function yt({toolName:e,toolInput:t}){let n=(0,P.useMemo)(()=>_t(e,t),[e,t]);if(!n)return null;let{caption:r,rows:i}=n;if(i===null)return(0,N.jsxs)(`div`,{className:`hq-tool-empty`,children:[`diff too large to render — `,r]});let a=i.filter(e=>e.kind===`add`).length,o=i.filter(e=>e.kind===`del`).length;return(0,N.jsxs)(`div`,{className:`hq-diff`,children:[(0,N.jsxs)(`div`,{className:`hq-diff-stat`,children:[(0,N.jsx)(`span`,{className:`hq-diff-path`,title:r,children:r}),(0,N.jsxs)(`span`,{className:`hq-diff-add-count`,children:[`+`,a]}),(0,N.jsxs)(`span`,{className:`hq-diff-del-count`,children:[`-`,o]})]}),(0,N.jsx)(`pre`,{className:`hq-diff-body`,children:i.map((e,t)=>(0,N.jsxs)(`span`,{className:`hq-diff-line ${e.kind}`,children:[(0,N.jsx)(`span`,{className:`hq-diff-gutter`,children:vt[e.kind]}),e.text||` `]},t))})]})}function bt(e,t){return mt(e,t)!==null}var xt=25,Z=12;function Q({text:e,isError:t,wrap:
|
|
11
|
-
`),[e]),
|
|
12
|
-
`);return(0,N.jsxs)(`div`,{className:`hq-result${
|
|
13
|
-
`).length,[
|
|
14
|
-
`)[0]})]}):r?(0,N.jsx)(Et,{todos:r}):e.toolInput!==void 0&&e.toolInput!==`{}`&&(0,N.jsxs)(`div`,{className:`hq-tool-section`,children:[(0,N.jsx)(`div`,{className:`hq-tool-section-label`,children:`input`}),(0,N.jsx)(`pre`,{className:`hq-tool-pre`,children:ct(e.toolInput)})]}),!n&&a&&(0,N.jsxs)(`div`,{className:`hq-tool-section`,children:[(0,N.jsxs)(`div`,{className:`hq-tool-section-head`,children:[(0,N.jsx)(`span`,{className:`hq-tool-section-label`,children:e.isError?`error`:`output`}),(0,N.jsx)(qe,{text:i,label:`copy`})]}),(0,N.jsx)(wt,{toolName:e.tool,result:i,isError:e.isError})]}),!a&&!e.isError&&!r&&!n&&(0,N.jsx)(`div`,{className:`hq-tool-empty`,children:`(no output)`})]})}function Ot({entry:e,running:
|
|
15
|
-
`)[0]??``;return(0,N.jsxs)(`div`,{className:`hq-chat-turn thinking`,children:[(0,N.jsxs)(`button`,{type:`button`,className:`hq-thinking-head`,onClick:()=>n(e=>!e),children:[(0,N.jsx)(`span`,{className:`hq-tool-caret`,children:t?(0,N.jsx)(
|
|
10
|
+
`);var vt={add:`+`,del:`-`,ctx:` `,meta:`@`};function yt({toolName:e,toolInput:t}){let n=(0,P.useMemo)(()=>_t(e,t),[e,t]);if(!n)return null;let{caption:r,rows:i}=n;if(i===null)return(0,N.jsxs)(`div`,{className:`hq-tool-empty`,children:[`diff too large to render — `,r]});let a=i.filter(e=>e.kind===`add`).length,o=i.filter(e=>e.kind===`del`).length;return(0,N.jsxs)(`div`,{className:`hq-diff`,children:[(0,N.jsxs)(`div`,{className:`hq-diff-stat`,children:[(0,N.jsx)(`span`,{className:`hq-diff-path`,title:r,children:r}),(0,N.jsxs)(`span`,{className:`hq-diff-add-count`,children:[`+`,a]}),(0,N.jsxs)(`span`,{className:`hq-diff-del-count`,children:[`-`,o]})]}),(0,N.jsx)(`pre`,{className:`hq-diff-body`,children:i.map((e,t)=>(0,N.jsxs)(`span`,{className:`hq-diff-line ${e.kind}`,children:[(0,N.jsx)(`span`,{className:`hq-diff-gutter`,children:vt[e.kind]}),e.text||` `]},t))})]})}function bt(e,t){return mt(e,t)!==null}var xt=25,Z=12;function Q({text:e,isError:t,wrap:n,framed:r=!0}){let i=(0,P.useMemo)(()=>e.split(`
|
|
11
|
+
`),[e]),a=i.length>xt,[c,l]=(0,P.useState)(!a),u=c?e:i.slice(0,Z).join(`
|
|
12
|
+
`);return(0,N.jsxs)(`div`,{className:`hq-result${r?``:` bare`}`,children:[(0,N.jsx)(`pre`,{className:`hq-result-pre ${n?`wrap`:`nowrap`}${t?` err`:``}`,children:u}),a&&(0,N.jsx)(`button`,{type:`button`,className:`hq-result-toggle`,onClick:()=>l(e=>!e),children:c?(0,N.jsxs)(N.Fragment,{children:[(0,N.jsx)(o,{size:12}),` collapse to `,Z,` lines`]}):(0,N.jsxs)(N.Fragment,{children:[(0,N.jsx)(s,{size:12}),` show all `,i.length,` lines (+`,i.length-Z,` more)`]})})]})}function St(e,t){let n=t.trim();if(/^\s*\d+→/m.test(t.slice(0,200)))return{kind:`numbered`};if(n.startsWith(`{`)&&n.endsWith(`}`)||n.startsWith(`[`)&&n.endsWith(`]`))try{let e=JSON.parse(n);if(typeof e==`object`&&e)return{kind:`json`,value:e}}catch{}let r=!!e&&/^(bash|shell|exec|run|powershell)/i.test(e),i=t.match(/(?:^|\n)\s*(?:\[?exit(?:\s*code)?\]?\s*[:=]?\s*)(\d+)\s*$/i),a=t.match(/(?:^|\s)(\d+\s*ms|\d+\.\d+s)\s*$/i);if(r||i){let e=t;return i&&(e=t.slice(0,i.index).trimEnd()),{kind:`bash`,stdout:e,exitCode:i?Number(i[1]):void 0,duration:a?.[1]}}return{kind:`plain`}}function Ct({value:e,isError:t}){let n=(0,P.useMemo)(()=>{try{return JSON.stringify(e,null,2)}catch{return String(e)}},[e]),i=n.split(`
|
|
13
|
+
`).length,[a,o]=(0,P.useState)(i<30);return(0,N.jsxs)(`div`,{className:`hq-result${t?` err-frame`:``}`,children:[(0,N.jsxs)(`button`,{type:`button`,className:`hq-result-jsonbar`,onClick:()=>o(e=>!e),children:[(0,N.jsxs)(`span`,{className:`hq-result-jsonbar-left`,children:[a?(0,N.jsx)(r,{size:12}):(0,N.jsx)(l,{size:12}),(0,N.jsxs)(`span`,{children:[`JSON · `,i,` lines`]})]}),(0,N.jsx)(`span`,{children:a?`collapse`:`expand`})]}),a&&(0,N.jsx)(`pre`,{className:`hq-result-pre nowrap${t?` err`:``}`,children:n})]})}function wt({toolName:e,result:t,isError:n}){let r=(0,P.useMemo)(()=>St(e,t),[e,t]);return r.kind===`json`?(0,N.jsx)(Ct,{value:r.value,isError:n}):r.kind===`numbered`?(0,N.jsx)(Q,{text:t,isError:n,wrap:!1}):r.kind===`bash`?(0,N.jsxs)(`div`,{className:`hq-result hq-result-bash`,children:[r.stdout!==void 0&&r.stdout!==``&&(0,N.jsx)(Q,{text:r.stdout,isError:n,wrap:!0,framed:!1}),(r.exitCode!==void 0||r.duration!==void 0)&&(0,N.jsxs)(`div`,{className:`hq-result-exit${r.exitCode!==void 0&&r.exitCode!==0?` bad`:``}`,children:[r.exitCode!==void 0&&(0,N.jsxs)(`span`,{children:[`exit code `,r.exitCode]}),r.duration!==void 0&&(0,N.jsx)(`span`,{children:r.duration})]})]}):(0,N.jsx)(Q,{text:t,isError:n,wrap:!0})}var Tt={completed:`✔`,in_progress:`▶`,pending:`○`};function Et({todos:e}){let t=e.filter(e=>e.status===`completed`).length;return(0,N.jsxs)(`div`,{className:`hq-tool-section`,children:[(0,N.jsxs)(`div`,{className:`hq-tool-section-label`,children:[`todos · `,t,`/`,e.length,` done`]}),(0,N.jsx)(`ul`,{className:`hq-todo-list`,children:e.map((e,t)=>(0,N.jsxs)(`li`,{className:`hq-todo ${e.status}`,children:[(0,N.jsx)(`span`,{className:`hq-todo-mark`,children:Tt[e.status]}),(0,N.jsx)(`span`,{className:`hq-todo-text`,children:e.content||`(empty)`})]},t))})]})}function Dt({entry:e}){let t=at(e.tool),n=bt(e.tool,e.toolInput),r=t===`todo`?lt(e.toolInput):null,i=e.text??``,a=i.trim()!==``;return(0,N.jsxs)(`div`,{className:`hq-tool-body`,children:[n?(0,N.jsxs)(`div`,{className:`hq-tool-section`,children:[(0,N.jsx)(`div`,{className:`hq-tool-section-label`,children:`changes`}),(0,N.jsx)(yt,{toolName:e.tool,toolInput:e.toolInput}),a&&!e.isError&&(0,N.jsx)(`div`,{className:`hq-tool-result-note`,children:i.split(`
|
|
14
|
+
`)[0]})]}):r?(0,N.jsx)(Et,{todos:r}):e.toolInput!==void 0&&e.toolInput!==`{}`&&(0,N.jsxs)(`div`,{className:`hq-tool-section`,children:[(0,N.jsx)(`div`,{className:`hq-tool-section-label`,children:`input`}),(0,N.jsx)(`pre`,{className:`hq-tool-pre`,children:ct(e.toolInput)})]}),!n&&a&&(0,N.jsxs)(`div`,{className:`hq-tool-section`,children:[(0,N.jsxs)(`div`,{className:`hq-tool-section-head`,children:[(0,N.jsx)(`span`,{className:`hq-tool-section-label`,children:e.isError?`error`:`output`}),(0,N.jsx)(qe,{text:i,label:`copy`})]}),(0,N.jsx)(wt,{toolName:e.tool,result:i,isError:e.isError})]}),!a&&!e.isError&&!r&&!n&&(0,N.jsx)(`div`,{className:`hq-tool-empty`,children:`(no output)`})]})}function Ot({entry:e,running:n}){let[i,a]=(0,P.useState)(!1),o=st(e.tool,e.toolInput),s=ut(e.durationMs),c=dt(e.tool),{Icon:u,color:d}=et(e.tool);return(0,N.jsxs)(`div`,{className:`hq-chat-turn tool ${e.isError?`err`:``}`,children:[(0,N.jsxs)(`button`,{type:`button`,className:`hq-tool-head`,onClick:()=>a(e=>!e),children:[(0,N.jsx)(`span`,{className:`hq-tool-caret`,children:i?(0,N.jsx)(r,{size:13}):(0,N.jsx)(l,{size:13})}),(0,N.jsx)(`span`,{className:`hq-tool-icon`,style:{color:d},children:(0,N.jsx)(u,{size:14})}),(0,N.jsx)(`span`,{className:`hq-tool-name`,children:c}),o!==``&&(0,N.jsx)(`span`,{className:`hq-tool-summary`,children:o}),s!==``&&(0,N.jsx)(`span`,{className:`hq-tool-dur`,children:s}),(0,N.jsx)(`span`,{className:`hq-tool-status`,"aria-hidden":!0,children:n?(0,N.jsx)(`span`,{className:`hq-tool-running-dot`,title:`running`}):e.isError?(0,N.jsx)(k,{size:14,className:`hq-status-err`}):(0,N.jsx)(t,{size:14,className:`hq-status-ok`})})]}),i&&(0,N.jsx)(Dt,{entry:e})]})}function kt({entry:e}){let[t,n]=(0,P.useState)(!1),i=e.text.split(`
|
|
15
|
+
`)[0]??``;return(0,N.jsxs)(`div`,{className:`hq-chat-turn thinking`,children:[(0,N.jsxs)(`button`,{type:`button`,className:`hq-thinking-head`,onClick:()=>n(e=>!e),children:[(0,N.jsx)(`span`,{className:`hq-tool-caret`,children:t?(0,N.jsx)(r,{size:13}):(0,N.jsx)(l,{size:13})}),(0,N.jsx)(u,{size:13,className:`hq-thinking-icon`}),(0,N.jsx)(`span`,{className:`hq-thinking-label`,children:`thinking`}),!t&&(0,N.jsx)(`span`,{className:`hq-thinking-peek`,children:i})]}),t&&(0,N.jsx)(`div`,{className:`hq-thinking-body`,children:(0,N.jsx)(Ye,{text:e.text})})]})}var At=(0,P.memo)(function({entry:e,running:t}){let n=ft(e.ts);return e.role===`tool`||e.role===`error`&&e.toolInput!==void 0?(0,N.jsx)(Ot,{entry:e,running:t??q(e)}):e.role===`thinking`?(0,N.jsx)(kt,{entry:e}):e.role===`user`?(0,N.jsx)(`div`,{className:`hq-chat-turn user`,children:(0,N.jsxs)(`div`,{className:`hq-chat-bubble user`,children:[(0,N.jsxs)(`div`,{className:`hq-chat-role`,children:[`you`,e.agentId===void 0?``:` · ${e.agentId}`,n!==``&&(0,N.jsx)(`span`,{className:`hq-chat-clock`,children:n})]}),(0,N.jsx)(`div`,{className:`hq-chat-prose`,children:e.text})]})}):e.role===`assistant`?(0,N.jsx)(`div`,{className:`hq-chat-turn assistant`,children:(0,N.jsxs)(`div`,{className:`hq-chat-bubble assistant`,children:[(0,N.jsxs)(`div`,{className:`hq-chat-role`,children:[`agent`,e.agentId===void 0?``:` · ${e.agentId}`,n!==``&&(0,N.jsx)(`span`,{className:`hq-chat-clock`,children:n})]}),(0,N.jsx)(Ye,{text:e.text})]})}):e.role===`error`?(0,N.jsx)(`div`,{className:`hq-chat-turn error`,children:(0,N.jsxs)(`div`,{className:`hq-chat-bubble error`,children:[(0,N.jsxs)(`div`,{className:`hq-chat-role err`,children:[`error`,n!==``&&(0,N.jsx)(`span`,{className:`hq-chat-clock`,children:n})]}),(0,N.jsx)(`pre`,{className:`hq-tool-pre err`,children:e.text})]})}):e.text.trim()===``?null:(0,N.jsx)(`div`,{className:`hq-chat-turn system`,children:(0,N.jsxs)(`span`,{className:`hq-chat-system-line`,children:[e.text,n!==``&&(0,N.jsx)(`span`,{className:`hq-chat-clock`,children:n})]})})});function jt(e,t,n){if(t===`all`||n===void 0||n.length===0)return e;let r=new Set;if(t===`machine`)for(let t of e.nodes)t.machineId===n&&r.add(t.id);else{let t=new Set;for(let i of e.nodes)i.projectId===n&&(r.add(i.id),i.machineId!==void 0&&t.add(i.machineId));for(let n of e.nodes)n.kind===`machine`&&n.machineId!==void 0&&t.has(n.machineId)&&r.add(n.id)}return{nodes:e.nodes.filter(e=>r.has(e.id)),edges:e.edges.filter(e=>r.has(e.source)&&r.has(e.target))}}function Mt(e,t){let n=t.trim().toLocaleLowerCase();if(n.length===0)return e;let r=new Map(e.nodes.map(e=>[e.id,e])),i=new Map,a=new Map;for(let t of e.edges){i.set(t.target,t.source);let e=a.get(t.source)??[];e.push(t.target),a.set(t.source,e)}let o=new Set,s=new Set,c=e=>{let t=e;for(;t!==void 0&&!o.has(t);)o.add(t),t=i.get(t)},l=e=>{if(!s.has(e)){s.add(e),o.add(e);for(let t of a.get(e)??[])l(t)}};for(let t of e.nodes)[t.kind,t.label,t.sub,t.status,t.clientKind,t.serviceMode,t.machineId,t.projectId,t.clientId,t.sessionId,t.agentId,...t.chips].filter(e=>typeof e==`string`).join(` `).toLocaleLowerCase().includes(n)&&(c(t.id),l(t.id));for(let e of[...o])r.has(e)||o.delete(e);return{nodes:e.nodes.filter(e=>o.has(e.id)),edges:e.edges.filter(e=>o.has(e.source)&&o.has(e.target))}}function Nt(e){let t=new Map(e.nodes.map(e=>[e.id,e])),n=new Set(e.edges.map(e=>e.target)),r=new Map;for(let t of e.edges){let e=r.get(t.source)??[];e.push(t.target),r.set(t.source,e)}let i=[],a=new Set,o=e=>{if(a.has(e))return;a.add(e);let n=t.get(e);n!==void 0&&i.push(n);for(let t of r.get(e)??[])o(t)};for(let t of e.nodes)n.has(t.id)||o(t.id);for(let t of e.nodes)o(t.id);return i}function Pt(e){return e===`machine`?0:e===`project`?1:e===`terminal`?2:3}function Ft(e){let t=e.filter(e=>e.kind===`machine`),n=new Map,r=new Map,i=new Map;for(let t of e)if(t.kind===`project`&&t.machineId!==void 0){let e=n.get(t.machineId)??[];e.push(t),n.set(t.machineId,e)}else if(t.kind===`terminal`){let e=Lt(t.machineId??``,t.projectId??``),n=r.get(e)??[];n.push(t),r.set(e,n)}else if(t.kind===`agent`&&t.sessionId!==void 0){let e=i.get(t.sessionId)??[];e.push(t),i.set(t.sessionId,e)}let a=new Map,o=0,s=e=>e.length===0?0:((e[0]??0)+(e[e.length-1]??0))/2;for(let e of t){let t=n.get(e.machineId??``)??[],c=[];for(let e of t){let t=r.get(e.id)??[],n=[];for(let e of t){let t=i.get(e.sessionId??``)??[],r;if(t.length>0){let e=[];for(let n of t)a.set(n.id,o),e.push(o),o+=118;r=s(e)}else r=o,o+=118;a.set(e.id,r),n.push(r),o+=18}let l;n.length>0?l=s(n):(l=o,o+=118),a.set(e.id,l),c.push(l),o+=42}c.length>0?a.set(e.id,s(c)):(a.set(e.id,o),o+=118),o+=64}let c=new Map;for(let t of e)c.set(t.id,{x:Pt(t.kind)*300,y:a.get(t.id)??0});return c}function It(e){return`machine:${e}`}function Lt(e,t){return`project:${e}:${t}`}function Rt(e){return`terminal:${e}`}function zt(e,t){return`agent:${e}:${t}`}function $(e,t,n,r){let i=`${n}->${r}`;t.has(i)||(t.add(i),e.push({id:i,source:n,target:r}))}function Bt(e,t){return e?.projectName??t?.projectName??`unknown project`}function Vt(e,t){let n=e?.projectRootDisplay??t?.projectRoot;if(!(n===void 0||n.length===0))return n.length>54?`…${n.slice(-51)}`:n}function Ht(e){return e.clientKind===`mailbox`?`MAILBOX SERVE · ${e.pid??e.sessionId.slice(-8)}`:`${e.clientKind.toUpperCase()} · ${e.sessionId.length>18?`…${e.sessionId.slice(-14)}`:e.sessionId}`}function Ut(e,t){return{sessionId:e.sessionId??`client:${e.clientId}`,clientId:e.clientId,clientKind:e.kind,machineId:e.machineId,...e.hostname===void 0?{}:{hostname:e.hostname},...e.pid===void 0?{}:{pid:e.pid},projectId:e.projectId,projectName:t?.projectName??e.projectId,projectRoot:t?.projectRootDisplay??``,...t?.gitBranch===void 0?{}:{gitBranch:t.gitBranch},status:e.connected&&e.capabilities.includes(`mailbox.serve`)?`active`:e.connected?`idle`:`stale`,startedAt:e.connectedAt??e.lastSeenAt,lastActivityAt:e.lastSeenAt,agentCount:0,agents:[]}}function Wt(e,t,n,r){let i=t.get(e),a=n.find(t=>t.machineId===e),o=r.find(t=>t.machineId===e),s=i?.hostname??a?.hostname??o?.hostname??e,c=i?.sessionCount??n.filter(t=>t.machineId===e).length,l=i?.agentCount??n.reduce((t,n)=>t+(n.machineId===e?n.agents.length:0),0),u=i?.clientCount??r.filter(t=>t.machineId===e&&t.connected).length,d=r.filter(t=>t.machineId===e&&t.connected&&t.capabilities.includes(`mailbox.serve`)).length;return{label:s,sub:e,chips:[`${u} client${u===1?``:`s`}`,`${c} terminal${c===1?``:`s`}`,`${l} agent${l===1?``:`s`}`,...d>0?[`mailbox serve ×${d}`]:[]]}}function Gt(e){if(e===null)return{nodes:[],edges:[]};let t=[],n=[],r=new Set,i=new Set,a=new Map((e.machines??[]).map(e=>[e.machineId,e])),o=new Map((e.projects??[]).map(e=>[e.projectId,e])),s=[...e.liveSessions??[]],c=new Set(s.map(e=>e.sessionId)),l=new Set(s.filter(e=>e.pid!==void 0).map(e=>`${e.machineId}:${e.pid}`)),u=Date.parse(e.generatedAt);for(let t of e.clients??[]){if(!t.connected)continue;let e=t.capabilities?.includes(`mailbox.serve`)===!0;if(!t.capabilities?.includes(`session.summary`)&&!e||t.pid!==void 0&&l.has(`${t.machineId}:${t.pid}`))continue;let n=Date.parse(t.connectedAt??t.lastSeenAt);if(!e&&Number.isFinite(u)&&Number.isFinite(n)&&u-n>45e3)continue;let r=t.sessionId??`client:${t.clientId}`;c.has(r)||(s.push(Ut(t,o.get(t.projectId))),c.add(r))}let d=new Set;for(let t of e.machines??[])d.add(t.machineId);for(let e of s)d.add(e.machineId);for(let t of e.clients??[])t.connected&&d.add(t.machineId);for(let n of d){let i=It(n),o=Wt(n,a,s,e.clients??[]);t.push({id:i,kind:`machine`,label:o.label,sub:o.sub,chips:o.chips,machineId:n}),r.add(i)}let f=s.sort((e,t)=>{let n=e.machineId.localeCompare(t.machineId);if(n!==0)return n;let r=e.projectName.localeCompare(t.projectName);return r===0?e.sessionId.localeCompare(t.sessionId):r});for(let a of f){let s=a.machineId,c=o.get(a.projectId),l=Lt(s,a.projectId);if(!r.has(l)){let n=[`${c?.activeClients??f.filter(e=>e.machineId===s&&e.projectId===a.projectId).length} client${(c?.activeClients??0)===1?``:`s`}`,`${c?.activeSessions??f.filter(e=>e.machineId===s&&e.projectId===a.projectId).length} terminal${(c?.activeSessions??0)===1?``:`s`}`];c?.gitBranch!==void 0&&n.push(c.gitBranch),(e.clients??[]).filter(e=>e.connected&&e.machineId===s&&e.projectId===a.projectId&&e.capabilities.includes(`mailbox.serve`)).length>0&&n.push(`mailbox serve`),t.push({id:l,kind:`project`,label:Bt(c,a),sub:Vt(c,a),status:c?.status??a.status,chips:n,machineId:s,projectId:a.projectId}),r.add(l)}$(n,i,It(s),l);let u=Rt(a.sessionId);if(!r.has(u)){let e=a.sessionId.startsWith(`client:`)&&a.agents.length===0,n=a.clientKind===`mailbox`?`mailbox-serve`:void 0,i=[n===`mailbox-serve`?`mailbox serve`:a.clientKind,a.status,...n===void 0?[`${a.agentCount} agent${a.agentCount===1?``:`s`}`]:[]];a.gitBranch!==void 0&&i.push(a.gitBranch),t.push({id:u,kind:`terminal`,label:Ht(a),sub:n===`mailbox-serve`?`mailbox HTTP bridge`:e?`waiting for session telemetry`:a.projectName,status:a.status,chips:i,machineId:s,projectId:a.projectId,...a.clientId===void 0?{}:{clientId:a.clientId},sessionId:a.sessionId,clientKind:a.clientKind,session:a,isSyntheticSession:e,...n===void 0?{}:{serviceMode:n}}),r.add(u)}$(n,i,l,u);for(let e of a.agents){let r=zt(a.sessionId,e.id);t.push({id:r,kind:`agent`,label:e.name||e.id,sub:e.currentTool??e.partialText,status:e.status,chips:[e.status,`${e.iterations} iter`,`${e.toolCalls} tools`,...e.model===void 0?[]:[e.model]],machineId:s,projectId:a.projectId,...a.clientId===void 0?{}:{clientId:a.clientId},sessionId:a.sessionId,agentId:e.id,agent:e,session:a}),$(n,i,u,r)}}return{nodes:t,edges:n}}export{Ft as a,Ue as c,Pt as i,Ke as l,jt as n,Nt as o,Mt as r,At as s,Gt as t,Le as u};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{r as e,t}from"./rolldown-runtime-QTnfLwEv.js";var n=t((e=>{var t=Symbol.for(`react.transitional.element`),n=Symbol.for(`react.portal`),r=Symbol.for(`react.fragment`),i=Symbol.for(`react.strict_mode`),a=Symbol.for(`react.profiler`),o=Symbol.for(`react.consumer`),s=Symbol.for(`react.context`),c=Symbol.for(`react.forward_ref`),l=Symbol.for(`react.suspense`),u=Symbol.for(`react.memo`),d=Symbol.for(`react.lazy`),f=Symbol.for(`react.activity`),p=Symbol.iterator;function m(e){return typeof e!=`object`||!e?null:(e=p&&e[p]||e[`@@iterator`],typeof e==`function`?e:null)}var h={isMounted:function(){return!1},enqueueForceUpdate:function(){},enqueueReplaceState:function(){},enqueueSetState:function(){}},g=Object.assign,_={};function v(e,t,n){this.props=e,this.context=t,this.refs=_,this.updater=n||h}v.prototype.isReactComponent={},v.prototype.setState=function(e,t){if(typeof e!=`object`&&typeof e!=`function`&&e!=null)throw Error(`takes an object of state variables to update or a function which returns an object of state variables.`);this.updater.enqueueSetState(this,e,t,`setState`)},v.prototype.forceUpdate=function(e){this.updater.enqueueForceUpdate(this,e,`forceUpdate`)};function y(){}y.prototype=v.prototype;function b(e,t,n){this.props=e,this.context=t,this.refs=_,this.updater=n||h}var x=b.prototype=new y;x.constructor=b,g(x,v.prototype),x.isPureReactComponent=!0;var S=Array.isArray;function C(){}var w={H:null,A:null,T:null,S:null},T=Object.prototype.hasOwnProperty;function E(e,n,r){var i=r.ref;return{$$typeof:t,type:e,key:n,ref:i===void 0?null:i,props:r}}function D(e,t){return E(e.type,t,e.props)}function O(e){return typeof e==`object`&&!!e&&e.$$typeof===t}function k(e){var t={"=":`=0`,":":`=2`};return`$`+e.replace(/[=:]/g,function(e){return t[e]})}var A=/\/+/g;function j(e,t){return typeof e==`object`&&e&&e.key!=null?k(``+e.key):t.toString(36)}function M(e){switch(e.status){case`fulfilled`:return e.value;case`rejected`:throw e.reason;default:switch(typeof e.status==`string`?e.then(C,C):(e.status=`pending`,e.then(function(t){e.status===`pending`&&(e.status=`fulfilled`,e.value=t)},function(t){e.status===`pending`&&(e.status=`rejected`,e.reason=t)})),e.status){case`fulfilled`:return e.value;case`rejected`:throw e.reason}}throw e}function N(e,r,i,a,o){var s=typeof e;(s===`undefined`||s===`boolean`)&&(e=null);var c=!1;if(e===null)c=!0;else switch(s){case`bigint`:case`string`:case`number`:c=!0;break;case`object`:switch(e.$$typeof){case t:case n:c=!0;break;case d:return c=e._init,N(c(e._payload),r,i,a,o)}}if(c)return o=o(e),c=a===``?`.`+j(e,0):a,S(o)?(i=``,c!=null&&(i=c.replace(A,`$&/`)+`/`),N(o,r,i,``,function(e){return e})):o!=null&&(O(o)&&(o=D(o,i+(o.key==null||e&&e.key===o.key?``:(``+o.key).replace(A,`$&/`)+`/`)+c)),r.push(o)),1;c=0;var l=a===``?`.`:a+`:`;if(S(e))for(var u=0;u<e.length;u++)a=e[u],s=l+j(a,u),c+=N(a,r,i,s,o);else if(u=m(e),typeof u==`function`)for(e=u.call(e),u=0;!(a=e.next()).done;)a=a.value,s=l+j(a,u++),c+=N(a,r,i,s,o);else if(s===`object`){if(typeof e.then==`function`)return N(M(e),r,i,a,o);throw r=String(e),Error(`Objects are not valid as a React child (found: `+(r===`[object Object]`?`object with keys {`+Object.keys(e).join(`, `)+`}`:r)+`). If you meant to render a collection of children, use an array instead.`)}return c}function P(e,t,n){if(e==null)return e;var r=[],i=0;return N(e,r,``,``,function(e){return t.call(n,e,i++)}),r}function F(e){if(e._status===-1){var t=e._result;t=t(),t.then(function(t){(e._status===0||e._status===-1)&&(e._status=1,e._result=t)},function(t){(e._status===0||e._status===-1)&&(e._status=2,e._result=t)}),e._status===-1&&(e._status=0,e._result=t)}if(e._status===1)return e._result.default;throw e._result}var I=typeof reportError==`function`?reportError:function(e){if(typeof window==`object`&&typeof window.ErrorEvent==`function`){var t=new window.ErrorEvent(`error`,{bubbles:!0,cancelable:!0,message:typeof e==`object`&&e&&typeof e.message==`string`?String(e.message):String(e),error:e});if(!window.dispatchEvent(t))return}else if(typeof process==`object`&&typeof process.emit==`function`){process.emit(`uncaughtException`,e);return}console.error(e)},L={map:P,forEach:function(e,t,n){P(e,function(){t.apply(this,arguments)},n)},count:function(e){var t=0;return P(e,function(){t++}),t},toArray:function(e){return P(e,function(e){return e})||[]},only:function(e){if(!O(e))throw Error(`React.Children.only expected to receive a single React element child.`);return e}};e.Activity=f,e.Children=L,e.Component=v,e.Fragment=r,e.Profiler=a,e.PureComponent=b,e.StrictMode=i,e.Suspense=l,e.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE=w,e.__COMPILER_RUNTIME={__proto__:null,c:function(e){return w.H.useMemoCache(e)}},e.cache=function(e){return function(){return e.apply(null,arguments)}},e.cacheSignal=function(){return null},e.cloneElement=function(e,t,n){if(e==null)throw Error(`The argument must be a React element, but you passed `+e+`.`);var r=g({},e.props),i=e.key;if(t!=null)for(a in t.key!==void 0&&(i=``+t.key),t)!T.call(t,a)||a===`key`||a===`__self`||a===`__source`||a===`ref`&&t.ref===void 0||(r[a]=t[a]);var a=arguments.length-2;if(a===1)r.children=n;else if(1<a){for(var o=Array(a),s=0;s<a;s++)o[s]=arguments[s+2];r.children=o}return E(e.type,i,r)},e.createContext=function(e){return e={$$typeof:s,_currentValue:e,_currentValue2:e,_threadCount:0,Provider:null,Consumer:null},e.Provider=e,e.Consumer={$$typeof:o,_context:e},e},e.createElement=function(e,t,n){var r,i={},a=null;if(t!=null)for(r in t.key!==void 0&&(a=``+t.key),t)T.call(t,r)&&r!==`key`&&r!==`__self`&&r!==`__source`&&(i[r]=t[r]);var o=arguments.length-2;if(o===1)i.children=n;else if(1<o){for(var s=Array(o),c=0;c<o;c++)s[c]=arguments[c+2];i.children=s}if(e&&e.defaultProps)for(r in o=e.defaultProps,o)i[r]===void 0&&(i[r]=o[r]);return E(e,a,i)},e.createRef=function(){return{current:null}},e.forwardRef=function(e){return{$$typeof:c,render:e}},e.isValidElement=O,e.lazy=function(e){return{$$typeof:d,_payload:{_status:-1,_result:e},_init:F}},e.memo=function(e,t){return{$$typeof:u,type:e,compare:t===void 0?null:t}},e.startTransition=function(e){var t=w.T,n={};w.T=n;try{var r=e(),i=w.S;i!==null&&i(n,r),typeof r==`object`&&r&&typeof r.then==`function`&&r.then(C,I)}catch(e){I(e)}finally{t!==null&&n.types!==null&&(t.types=n.types),w.T=t}},e.unstable_useCacheRefresh=function(){return w.H.useCacheRefresh()},e.use=function(e){return w.H.use(e)},e.useActionState=function(e,t,n){return w.H.useActionState(e,t,n)},e.useCallback=function(e,t){return w.H.useCallback(e,t)},e.useContext=function(e){return w.H.useContext(e)},e.useDebugValue=function(){},e.useDeferredValue=function(e,t){return w.H.useDeferredValue(e,t)},e.useEffect=function(e,t){return w.H.useEffect(e,t)},e.useEffectEvent=function(e){return w.H.useEffectEvent(e)},e.useId=function(){return w.H.useId()},e.useImperativeHandle=function(e,t,n){return w.H.useImperativeHandle(e,t,n)},e.useInsertionEffect=function(e,t){return w.H.useInsertionEffect(e,t)},e.useLayoutEffect=function(e,t){return w.H.useLayoutEffect(e,t)},e.useMemo=function(e,t){return w.H.useMemo(e,t)},e.useOptimistic=function(e,t){return w.H.useOptimistic(e,t)},e.useReducer=function(e,t,n){return w.H.useReducer(e,t,n)},e.useRef=function(e){return w.H.useRef(e)},e.useState=function(e){return w.H.useState(e)},e.useSyncExternalStore=function(e,t,n){return w.H.useSyncExternalStore(e,t,n)},e.useTransition=function(){return w.H.useTransition()},e.version=`19.2.8`})),r=t(((e,t)=>{t.exports=n()})),i=e(r(),1),a=(...e)=>e.filter((e,t,n)=>!!e&&e.trim()!==``&&n.indexOf(e)===t).join(` `).trim(),o=e=>e.replace(/([a-z0-9])([A-Z])/g,`$1-$2`).toLowerCase(),s=e=>e.replace(/^([A-Z])|[\s-_]+(\w)/g,(e,t,n)=>n?n.toUpperCase():t.toLowerCase()),c=e=>{let t=s(e);return t.charAt(0).toUpperCase()+t.slice(1)},l={xmlns:`http://www.w3.org/2000/svg`,width:24,height:24,viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,strokeWidth:2,strokeLinecap:`round`,strokeLinejoin:`round`},u=e=>{for(let t in e)if(t.startsWith(`aria-`)||t===`role`||t===`title`)return!0;return!1},d=(0,i.createContext)({}),f=()=>(0,i.useContext)(d),p=(0,i.forwardRef)(({color:e,size:t,strokeWidth:n,absoluteStrokeWidth:r,className:o=``,children:s,iconNode:c,...d},p)=>{let{size:m=24,strokeWidth:h=2,absoluteStrokeWidth:g=!1,color:_=`currentColor`,className:v=``}=f()??{},y=r??g?Number(n??h)*24/Number(t??m):n??h;return(0,i.createElement)(`svg`,{ref:p,...l,width:t??m??l.width,height:t??m??l.height,stroke:e??_,strokeWidth:y,className:a(`lucide`,v,o),...!s&&!u(d)&&{"aria-hidden":`true`},...d},[...c.map(([e,t])=>(0,i.createElement)(e,t)),...Array.isArray(s)?s:[s]])}),m=(e,t)=>{let n=(0,i.forwardRef)(({className:n,...r},s)=>(0,i.createElement)(p,{ref:s,iconNode:t,className:a(`lucide-${o(c(e))}`,`lucide-${e}`,n),...r}));return n.displayName=c(e),n},h=m(`activity`,[[`path`,{d:`M22 12h-2.48a2 2 0 0 0-1.93 1.46l-2.35 8.36a.25.25 0 0 1-.48 0L9.24 2.18a.25.25 0 0 0-.48 0l-2.35 8.36A2 2 0 0 1 4.49 12H2`,key:`169zse`}]]),g=m(`arrow-down-to-line`,[[`path`,{d:`M12 17V3`,key:`1cwfxf`}],[`path`,{d:`m6 11 6 6 6-6`,key:`12ii2o`}],[`path`,{d:`M19 21H5`,key:`150jfl`}]]),_=m(`bell-ring`,[[`path`,{d:`M10.268 21a2 2 0 0 0 3.464 0`,key:`vwvbt9`}],[`path`,{d:`M22 8c0-2.3-.8-4.3-2-6`,key:`5bb3ad`}],[`path`,{d:`M3.262 15.326A1 1 0 0 0 4 17h16a1 1 0 0 0 .74-1.673C19.41 13.956 18 12.499 18 8A6 6 0 0 0 6 8c0 4.499-1.411 5.956-2.738 7.326`,key:`11g9vi`}],[`path`,{d:`M4 2C2.8 3.7 2 5.7 2 8`,key:`tap9e0`}]]),v=m(`bot`,[[`path`,{d:`M12 8V4H8`,key:`hb8ula`}],[`rect`,{width:`16`,height:`12`,x:`4`,y:`8`,rx:`2`,key:`enze0r`}],[`path`,{d:`M2 14h2`,key:`vft8re`}],[`path`,{d:`M20 14h2`,key:`4cs60a`}],[`path`,{d:`M15 13v2`,key:`1xurst`}],[`path`,{d:`M9 13v2`,key:`rq6x2g`}]]),y=m(`brain-circuit`,[[`path`,{d:`M12 5a3 3 0 1 0-5.997.125 4 4 0 0 0-2.526 5.77 4 4 0 0 0 .556 6.588A4 4 0 1 0 12 18Z`,key:`l5xja`}],[`path`,{d:`M9 13a4.5 4.5 0 0 0 3-4`,key:`10igwf`}],[`path`,{d:`M6.003 5.125A3 3 0 0 0 6.401 6.5`,key:`105sqy`}],[`path`,{d:`M3.477 10.896a4 4 0 0 1 .585-.396`,key:`ql3yin`}],[`path`,{d:`M6 18a4 4 0 0 1-1.967-.516`,key:`2e4loj`}],[`path`,{d:`M12 13h4`,key:`1ku699`}],[`path`,{d:`M12 18h6a2 2 0 0 1 2 2v1`,key:`105ag5`}],[`path`,{d:`M12 8h8`,key:`1lhi5i`}],[`path`,{d:`M16 8V5a2 2 0 0 1 2-2`,key:`u6izg6`}],[`circle`,{cx:`16`,cy:`13`,r:`.5`,key:`ry7gng`}],[`circle`,{cx:`18`,cy:`3`,r:`.5`,key:`1aiba7`}],[`circle`,{cx:`20`,cy:`21`,r:`.5`,key:`yhc1fs`}],[`circle`,{cx:`20`,cy:`8`,r:`.5`,key:`1e43v0`}]]),b=m(`brain`,[[`path`,{d:`M12 18V5`,key:`adv99a`}],[`path`,{d:`M15 13a4.17 4.17 0 0 1-3-4 4.17 4.17 0 0 1-3 4`,key:`1e3is1`}],[`path`,{d:`M17.598 6.5A3 3 0 1 0 12 5a3 3 0 1 0-5.598 1.5`,key:`1gqd8o`}],[`path`,{d:`M17.997 5.125a4 4 0 0 1 2.526 5.77`,key:`iwvgf7`}],[`path`,{d:`M18 18a4 4 0 0 0 2-7.464`,key:`efp6ie`}],[`path`,{d:`M19.967 17.483A4 4 0 1 1 12 18a4 4 0 1 1-7.967-.517`,key:`1gq6am`}],[`path`,{d:`M6 18a4 4 0 0 1-2-7.464`,key:`k1g0md`}],[`path`,{d:`M6.003 5.125a4 4 0 0 0-2.526 5.77`,key:`q97ue3`}]]),x=m(`chart-no-axes-combined`,[[`path`,{d:`M12 16v5`,key:`zza2cw`}],[`path`,{d:`M16 14.639V21`,key:`1s85h0`}],[`path`,{d:`M20 10.656V21`,key:`q45596`}],[`path`,{d:`m22 3-8.646 8.646a.5.5 0 0 1-.708 0L9.354 8.354a.5.5 0 0 0-.707 0L2 15`,key:`1fw8x9`}],[`path`,{d:`M4 18.463V21`,key:`1otddq`}],[`path`,{d:`M8 14.656V21`,key:`1t2idw`}]]),S=m(`check`,[[`path`,{d:`M20 6 9 17l-5-5`,key:`1gmf2c`}]]),C=m(`chevron-down`,[[`path`,{d:`m6 9 6 6 6-6`,key:`qrunsl`}]]),w=m(`chevron-right`,[[`path`,{d:`m9 18 6-6-6-6`,key:`mthhwq`}]]),T=m(`chevrons-down`,[[`path`,{d:`m7 6 5 5 5-5`,key:`1lc07p`}],[`path`,{d:`m7 13 5 5 5-5`,key:`1d48rs`}]]),E=m(`chevrons-up`,[[`path`,{d:`m17 11-5-5-5 5`,key:`e8nh98`}],[`path`,{d:`m17 18-5-5-5 5`,key:`2avn1x`}]]),D=m(`circle-check-big`,[[`path`,{d:`M21.801 10A10 10 0 1 1 17 3.335`,key:`yps3ct`}],[`path`,{d:`m9 11 3 3L22 4`,key:`1pflzl`}]]),O=m(`circle-check`,[[`circle`,{cx:`12`,cy:`12`,r:`10`,key:`1mglay`}],[`path`,{d:`m9 12 2 2 4-4`,key:`dzmm74`}]]),k=m(`circle-dollar-sign`,[[`circle`,{cx:`12`,cy:`12`,r:`10`,key:`1mglay`}],[`path`,{d:`M16 8h-6a2 2 0 1 0 0 4h4a2 2 0 1 1 0 4H8`,key:`1h4pet`}],[`path`,{d:`M12 18V6`,key:`zqpxq5`}]]),A=m(`circle-pause`,[[`circle`,{cx:`12`,cy:`12`,r:`10`,key:`1mglay`}],[`line`,{x1:`10`,x2:`10`,y1:`15`,y2:`9`,key:`c1nkhi`}],[`line`,{x1:`14`,x2:`14`,y1:`15`,y2:`9`,key:`h65svq`}]]),j=m(`circle-play`,[[`path`,{d:`M9 9.003a1 1 0 0 1 1.517-.859l4.997 2.997a1 1 0 0 1 0 1.718l-4.997 2.997A1 1 0 0 1 9 14.996z`,key:`kmsa83`}],[`circle`,{cx:`12`,cy:`12`,r:`10`,key:`1mglay`}]]),M=m(`circle-question-mark`,[[`circle`,{cx:`12`,cy:`12`,r:`10`,key:`1mglay`}],[`path`,{d:`M9.09 9a3 3 0 0 1 5.83 1c0 2-3 3-3 3`,key:`1u773s`}],[`path`,{d:`M12 17h.01`,key:`p32p05`}]]),N=m(`circle-slash`,[[`circle`,{cx:`12`,cy:`12`,r:`10`,key:`1mglay`}],[`line`,{x1:`9`,x2:`15`,y1:`15`,y2:`9`,key:`1dfufj`}]]),P=m(`circle-x`,[[`circle`,{cx:`12`,cy:`12`,r:`10`,key:`1mglay`}],[`path`,{d:`m15 9-6 6`,key:`1uzhvr`}],[`path`,{d:`m9 9 6 6`,key:`z0biqf`}]]),F=m(`clipboard-list`,[[`rect`,{width:`8`,height:`4`,x:`8`,y:`2`,rx:`1`,ry:`1`,key:`tgr4d6`}],[`path`,{d:`M16 4h2a2 2 0 0 1 2 2v14a2 2 0 0 1-2 2H6a2 2 0 0 1-2-2V6a2 2 0 0 1 2-2h2`,key:`116196`}],[`path`,{d:`M12 11h4`,key:`1jrz19`}],[`path`,{d:`M12 16h4`,key:`n85exb`}],[`path`,{d:`M8 11h.01`,key:`1dfujw`}],[`path`,{d:`M8 16h.01`,key:`18s6g9`}]]),I=m(`clock-3`,[[`circle`,{cx:`12`,cy:`12`,r:`10`,key:`1mglay`}],[`path`,{d:`M12 6v6h4`,key:`135r8i`}]]),L=m(`code-xml`,[[`path`,{d:`m18 16 4-4-4-4`,key:`1inbqp`}],[`path`,{d:`m6 8-4 4 4 4`,key:`15zrgr`}],[`path`,{d:`m14.5 4-5 16`,key:`e7oirm`}]]),ee=m(`columns-3`,[[`rect`,{width:`18`,height:`18`,x:`3`,y:`3`,rx:`2`,key:`afitv7`}],[`path`,{d:`M9 3v18`,key:`fh3hqa`}],[`path`,{d:`M15 3v18`,key:`14nvp0`}]]),te=m(`copy`,[[`rect`,{width:`14`,height:`14`,x:`8`,y:`8`,rx:`2`,ry:`2`,key:`17jyea`}],[`path`,{d:`M4 16c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2h10c1.1 0 2 .9 2 2`,key:`zix9uf`}]]),R=m(`database`,[[`ellipse`,{cx:`12`,cy:`5`,rx:`9`,ry:`3`,key:`msslwz`}],[`path`,{d:`M3 5V19A9 3 0 0 0 21 19V5`,key:`1wlel7`}],[`path`,{d:`M3 12A9 3 0 0 0 21 12`,key:`mv7ke4`}]]),z=m(`external-link`,[[`path`,{d:`M15 3h6v6`,key:`1q9fwt`}],[`path`,{d:`M10 14 21 3`,key:`gplh6r`}],[`path`,{d:`M18 13v6a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V8a2 2 0 0 1 2-2h6`,key:`a6xqqp`}]]),B=m(`eye-off`,[[`path`,{d:`M10.733 5.076a10.744 10.744 0 0 1 11.205 6.575 1 1 0 0 1 0 .696 10.747 10.747 0 0 1-1.444 2.49`,key:`ct8e1f`}],[`path`,{d:`M14.084 14.158a3 3 0 0 1-4.242-4.242`,key:`151rxh`}],[`path`,{d:`M17.479 17.499a10.75 10.75 0 0 1-15.417-5.151 1 1 0 0 1 0-.696 10.75 10.75 0 0 1 4.446-5.143`,key:`13bj9a`}],[`path`,{d:`m2 2 20 20`,key:`1ooewy`}]]),V=m(`eye`,[[`path`,{d:`M2.062 12.348a1 1 0 0 1 0-.696 10.75 10.75 0 0 1 19.876 0 1 1 0 0 1 0 .696 10.75 10.75 0 0 1-19.876 0`,key:`1nclc0`}],[`circle`,{cx:`12`,cy:`12`,r:`3`,key:`1v7zrd`}]]),H=m(`file-braces`,[[`path`,{d:`M6 22a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h8a2.4 2.4 0 0 1 1.704.706l3.588 3.588A2.4 2.4 0 0 1 20 8v12a2 2 0 0 1-2 2z`,key:`1oefj6`}],[`path`,{d:`M14 2v5a1 1 0 0 0 1 1h5`,key:`wfsgrz`}],[`path`,{d:`M10 12a1 1 0 0 0-1 1v1a1 1 0 0 1-1 1 1 1 0 0 1 1 1v1a1 1 0 0 0 1 1`,key:`1oajmo`}],[`path`,{d:`M14 18a1 1 0 0 0 1-1v-1a1 1 0 0 1 1-1 1 1 0 0 1-1-1v-1a1 1 0 0 0-1-1`,key:`mpwhp6`}]]),U=m(`file-pen`,[[`path`,{d:`M12.659 22H18a2 2 0 0 0 2-2V8a2.4 2.4 0 0 0-.706-1.706l-3.588-3.588A2.4 2.4 0 0 0 14 2H6a2 2 0 0 0-2 2v9.34`,key:`o6klzx`}],[`path`,{d:`M14 2v5a1 1 0 0 0 1 1h5`,key:`wfsgrz`}],[`path`,{d:`M10.378 12.622a1 1 0 0 1 3 3.003L8.36 20.637a2 2 0 0 1-.854.506l-2.867.837a.5.5 0 0 1-.62-.62l.836-2.869a2 2 0 0 1 .506-.853z`,key:`zhnas1`}]]),W=m(`file-text`,[[`path`,{d:`M6 22a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h8a2.4 2.4 0 0 1 1.704.706l3.588 3.588A2.4 2.4 0 0 1 20 8v12a2 2 0 0 1-2 2z`,key:`1oefj6`}],[`path`,{d:`M14 2v5a1 1 0 0 0 1 1h5`,key:`wfsgrz`}],[`path`,{d:`M10 9H8`,key:`b1mrlr`}],[`path`,{d:`M16 13H8`,key:`t4e002`}],[`path`,{d:`M16 17H8`,key:`z1uh3a`}]]),G=m(`flask-conical`,[[`path`,{d:`M14 2v6a2 2 0 0 0 .245.96l5.51 10.08A2 2 0 0 1 18 22H6a2 2 0 0 1-1.755-2.96l5.51-10.08A2 2 0 0 0 10 8V2`,key:`18mbvz`}],[`path`,{d:`M6.453 15h11.094`,key:`3shlmq`}],[`path`,{d:`M8.5 2h7`,key:`csnxdl`}]]),K=m(`folder-git-2`,[[`path`,{d:`M18 19a5 5 0 0 1-5-5v8`,key:`sz5oeg`}],[`path`,{d:`M9 20H4a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h3.9a2 2 0 0 1 1.69.9l.81 1.2a2 2 0 0 0 1.67.9H20a2 2 0 0 1 2 2v5`,key:`1w6njk`}],[`circle`,{cx:`13`,cy:`12`,r:`2`,key:`1j92g6`}],[`circle`,{cx:`20`,cy:`19`,r:`2`,key:`1obnsp`}]]),q=m(`folder-open`,[[`path`,{d:`m6 14 1.5-2.9A2 2 0 0 1 9.24 10H20a2 2 0 0 1 1.94 2.5l-1.54 6a2 2 0 0 1-1.95 1.5H4a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h3.9a2 2 0 0 1 1.69.9l.81 1.2a2 2 0 0 0 1.67.9H18a2 2 0 0 1 2 2v2`,key:`usdka0`}]]),J=m(`folder-tree`,[[`path`,{d:`M20 10a1 1 0 0 0 1-1V6a1 1 0 0 0-1-1h-2.5a1 1 0 0 1-.8-.4l-.9-1.2A1 1 0 0 0 15 3h-2a1 1 0 0 0-1 1v5a1 1 0 0 0 1 1Z`,key:`hod4my`}],[`path`,{d:`M20 21a1 1 0 0 0 1-1v-3a1 1 0 0 0-1-1h-2.9a1 1 0 0 1-.88-.55l-.42-.85a1 1 0 0 0-.92-.6H13a1 1 0 0 0-1 1v5a1 1 0 0 0 1 1Z`,key:`w4yl2u`}],[`path`,{d:`M3 5a2 2 0 0 0 2 2h3`,key:`f2jnh7`}],[`path`,{d:`M3 3v13a2 2 0 0 0 2 2h3`,key:`k8epm1`}]]),Y=m(`gauge`,[[`path`,{d:`m12 14 4-4`,key:`9kzdfg`}],[`path`,{d:`M3.34 19a10 10 0 1 1 17.32 0`,key:`19p75a`}]]),X=m(`git-branch`,[[`path`,{d:`M15 6a9 9 0 0 0-9 9V3`,key:`1cii5b`}],[`circle`,{cx:`18`,cy:`6`,r:`3`,key:`1h7g24`}],[`circle`,{cx:`6`,cy:`18`,r:`3`,key:`fqmcym`}]]),Z=m(`git-compare`,[[`circle`,{cx:`18`,cy:`18`,r:`3`,key:`1xkwt0`}],[`circle`,{cx:`6`,cy:`6`,r:`3`,key:`1lh9wr`}],[`path`,{d:`M13 6h3a2 2 0 0 1 2 2v7`,key:`1yeb86`}],[`path`,{d:`M11 18H8a2 2 0 0 1-2-2V9`,key:`19pyzm`}]]),Q=m(`git-merge`,[[`circle`,{cx:`18`,cy:`18`,r:`3`,key:`1xkwt0`}],[`circle`,{cx:`6`,cy:`6`,r:`3`,key:`1lh9wr`}],[`path`,{d:`M6 21V9a9 9 0 0 0 9 9`,key:`7kw0sc`}]]),ne=m(`globe`,[[`circle`,{cx:`12`,cy:`12`,r:`10`,key:`1mglay`}],[`path`,{d:`M12 2a14.5 14.5 0 0 0 0 20 14.5 14.5 0 0 0 0-20`,key:`13o1zl`}],[`path`,{d:`M2 12h20`,key:`9i4pu4`}]]),re=m(`hammer`,[[`path`,{d:`m15 12-9.373 9.373a1 1 0 0 1-3.001-3L12 9`,key:`1hayfq`}],[`path`,{d:`m18 15 4-4`,key:`16gjal`}],[`path`,{d:`m21.5 11.5-1.914-1.914A2 2 0 0 1 19 8.172v-.344a2 2 0 0 0-.586-1.414l-1.657-1.657A6 6 0 0 0 12.516 3H9l1.243 1.243A6 6 0 0 1 12 8.485V10l2 2h1.172a2 2 0 0 1 1.414.586L18.5 14.5`,key:`15ts47`}]]),ie=m(`hand`,[[`path`,{d:`M18 11V6a2 2 0 0 0-2-2a2 2 0 0 0-2 2`,key:`1fvzgz`}],[`path`,{d:`M14 10V4a2 2 0 0 0-2-2a2 2 0 0 0-2 2v2`,key:`1kc0my`}],[`path`,{d:`M10 10.5V6a2 2 0 0 0-2-2a2 2 0 0 0-2 2v8`,key:`10h0bg`}],[`path`,{d:`M18 8a2 2 0 1 1 4 0v6a8 8 0 0 1-8 8h-2c-2.8 0-4.5-.86-5.99-2.34l-3.6-3.6a2 2 0 0 1 2.83-2.82L7 15`,key:`1s1gnw`}]]),ae=m(`hash`,[[`line`,{x1:`4`,x2:`20`,y1:`9`,y2:`9`,key:`4lhtct`}],[`line`,{x1:`4`,x2:`20`,y1:`15`,y2:`15`,key:`vyu0kd`}],[`line`,{x1:`10`,x2:`8`,y1:`3`,y2:`21`,key:`1ggp8o`}],[`line`,{x1:`16`,x2:`14`,y1:`3`,y2:`21`,key:`weycgp`}]]),oe=m(`history`,[[`path`,{d:`M3 12a9 9 0 1 0 9-9 9.75 9.75 0 0 0-6.74 2.74L3 8`,key:`1357e3`}],[`path`,{d:`M3 3v5h5`,key:`1xhq8a`}],[`path`,{d:`M12 7v5l4 2`,key:`1fdv2h`}]]),se=m(`inbox`,[[`polyline`,{points:`22 12 16 12 14 15 10 15 8 12 2 12`,key:`o97t9d`}],[`path`,{d:`M5.45 5.11 2 12v6a2 2 0 0 0 2 2h16a2 2 0 0 0 2-2v-6l-3.45-6.89A2 2 0 0 0 16.76 4H7.24a2 2 0 0 0-1.79 1.11z`,key:`oot6mr`}]]),ce=m(`info`,[[`circle`,{cx:`12`,cy:`12`,r:`10`,key:`1mglay`}],[`path`,{d:`M12 16v-4`,key:`1dtifu`}],[`path`,{d:`M12 8h.01`,key:`e9boi3`}]]),le=m(`key-round`,[[`path`,{d:`M2.586 17.414A2 2 0 0 0 2 18.828V21a1 1 0 0 0 1 1h3a1 1 0 0 0 1-1v-1a1 1 0 0 1 1-1h1a1 1 0 0 0 1-1v-1a1 1 0 0 1 1-1h.172a2 2 0 0 0 1.414-.586l.814-.814a6.5 6.5 0 1 0-4-4z`,key:`1s6t7t`}],[`circle`,{cx:`16.5`,cy:`7.5`,r:`.5`,fill:`currentColor`,key:`w0ekpg`}]]),ue=m(`layers`,[[`path`,{d:`M12.83 2.18a2 2 0 0 0-1.66 0L2.6 6.08a1 1 0 0 0 0 1.83l8.58 3.91a2 2 0 0 0 1.66 0l8.58-3.9a1 1 0 0 0 0-1.83z`,key:`zw3jo`}],[`path`,{d:`M2 12a1 1 0 0 0 .58.91l8.6 3.91a2 2 0 0 0 1.65 0l8.58-3.9A1 1 0 0 0 22 12`,key:`1wduqc`}],[`path`,{d:`M2 17a1 1 0 0 0 .58.91l8.6 3.91a2 2 0 0 0 1.65 0l8.58-3.9A1 1 0 0 0 22 17`,key:`kqbvx6`}]]),de=m(`layout-dashboard`,[[`rect`,{width:`7`,height:`9`,x:`3`,y:`3`,rx:`1`,key:`10lvy0`}],[`rect`,{width:`7`,height:`5`,x:`14`,y:`3`,rx:`1`,key:`16une8`}],[`rect`,{width:`7`,height:`9`,x:`14`,y:`12`,rx:`1`,key:`1hutg5`}],[`rect`,{width:`7`,height:`5`,x:`3`,y:`16`,rx:`1`,key:`ldoo1y`}]]),fe=m(`layout-grid`,[[`rect`,{width:`7`,height:`7`,x:`3`,y:`3`,rx:`1`,key:`1g98yp`}],[`rect`,{width:`7`,height:`7`,x:`14`,y:`3`,rx:`1`,key:`6d4xhi`}],[`rect`,{width:`7`,height:`7`,x:`14`,y:`14`,rx:`1`,key:`nxv5o0`}],[`rect`,{width:`7`,height:`7`,x:`3`,y:`14`,rx:`1`,key:`1bb6yr`}]]),pe=m(`life-buoy`,[[`circle`,{cx:`12`,cy:`12`,r:`10`,key:`1mglay`}],[`path`,{d:`m4.93 4.93 4.24 4.24`,key:`1ymg45`}],[`path`,{d:`m14.83 9.17 4.24-4.24`,key:`1cb5xl`}],[`path`,{d:`m14.83 14.83 4.24 4.24`,key:`q42g0n`}],[`path`,{d:`m9.17 14.83-4.24 4.24`,key:`bqpfvv`}],[`circle`,{cx:`12`,cy:`12`,r:`4`,key:`4exip2`}]]),me=m(`list-checks`,[[`path`,{d:`M13 5h8`,key:`a7qcls`}],[`path`,{d:`M13 12h8`,key:`h98zly`}],[`path`,{d:`M13 19h8`,key:`c3s6r1`}],[`path`,{d:`m3 17 2 2 4-4`,key:`1jhpwq`}],[`path`,{d:`m3 7 2 2 4-4`,key:`1obspn`}]]),he=m(`list-plus`,[[`path`,{d:`M16 5H3`,key:`m91uny`}],[`path`,{d:`M11 12H3`,key:`51ecnj`}],[`path`,{d:`M16 19H3`,key:`zzsher`}],[`path`,{d:`M18 9v6`,key:`1twb98`}],[`path`,{d:`M21 12h-6`,key:`bt1uis`}]]),ge=m(`list-todo`,[[`path`,{d:`M13 5h8`,key:`a7qcls`}],[`path`,{d:`M13 12h8`,key:`h98zly`}],[`path`,{d:`M13 19h8`,key:`c3s6r1`}],[`path`,{d:`m3 17 2 2 4-4`,key:`1jhpwq`}],[`rect`,{x:`3`,y:`4`,width:`6`,height:`6`,rx:`1`,key:`cif1o7`}]]),_e=m(`list-tree`,[[`path`,{d:`M8 5h13`,key:`1pao27`}],[`path`,{d:`M13 12h8`,key:`h98zly`}],[`path`,{d:`M13 19h8`,key:`c3s6r1`}],[`path`,{d:`M3 10a2 2 0 0 0 2 2h3`,key:`1npucw`}],[`path`,{d:`M3 5v12a2 2 0 0 0 2 2h3`,key:`x1gjn2`}]]),ve=m(`lock-keyhole`,[[`circle`,{cx:`12`,cy:`16`,r:`1`,key:`1au0dj`}],[`rect`,{x:`3`,y:`10`,width:`18`,height:`12`,rx:`2`,key:`6s8ecr`}],[`path`,{d:`M7 10V7a5 5 0 0 1 10 0v3`,key:`1pqi11`}]]),ye=m(`log-out`,[[`path`,{d:`m16 17 5-5-5-5`,key:`1bji2h`}],[`path`,{d:`M21 12H9`,key:`dn1m92`}],[`path`,{d:`M9 21H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h4`,key:`1uf3rs`}]]),be=m(`mail-plus`,[[`path`,{d:`M22 13V6a2 2 0 0 0-2-2H4a2 2 0 0 0-2 2v12c0 1.1.9 2 2 2h8`,key:`12jkf8`}],[`path`,{d:`m22 7-8.97 5.7a1.94 1.94 0 0 1-2.06 0L2 7`,key:`1ocrg3`}],[`path`,{d:`M19 16v6`,key:`tddt3s`}],[`path`,{d:`M16 19h6`,key:`xwg31i`}]]),xe=m(`mail`,[[`path`,{d:`m22 7-8.991 5.727a2 2 0 0 1-2.009 0L2 7`,key:`132q7q`}],[`rect`,{x:`2`,y:`4`,width:`20`,height:`16`,rx:`2`,key:`izxlao`}]]),Se=m(`megaphone`,[[`path`,{d:`M11 6a13 13 0 0 0 8.4-2.8A1 1 0 0 1 21 4v12a1 1 0 0 1-1.6.8A13 13 0 0 0 11 14H5a2 2 0 0 1-2-2V8a2 2 0 0 1 2-2z`,key:`q8bfy3`}],[`path`,{d:`M6 14a12 12 0 0 0 2.4 7.2 2 2 0 0 0 3.2-2.4A8 8 0 0 1 10 14`,key:`1853fq`}],[`path`,{d:`M8 6v8`,key:`15ugcq`}]]),Ce=m(`message-circle`,[[`path`,{d:`M2.992 16.342a2 2 0 0 1 .094 1.167l-1.065 3.29a1 1 0 0 0 1.236 1.168l3.413-.998a2 2 0 0 1 1.099.092 10 10 0 1 0-4.777-4.719`,key:`1sd12s`}]]),we=m(`message-square-text`,[[`path`,{d:`M22 17a2 2 0 0 1-2 2H6.828a2 2 0 0 0-1.414.586l-2.202 2.202A.71.71 0 0 1 2 21.286V5a2 2 0 0 1 2-2h16a2 2 0 0 1 2 2z`,key:`18887p`}],[`path`,{d:`M7 11h10`,key:`1twpyw`}],[`path`,{d:`M7 15h6`,key:`d9of3u`}],[`path`,{d:`M7 7h8`,key:`af5zfr`}]]),Te=m(`monitor-smartphone`,[[`path`,{d:`M18 8V6a2 2 0 0 0-2-2H4a2 2 0 0 0-2 2v7a2 2 0 0 0 2 2h8`,key:`10dyio`}],[`path`,{d:`M10 19v-3.96 3.15`,key:`1irgej`}],[`path`,{d:`M7 19h5`,key:`qswx4l`}],[`rect`,{width:`6`,height:`10`,x:`16`,y:`12`,rx:`2`,key:`1egngj`}]]),Ee=m(`monitor`,[[`rect`,{width:`20`,height:`14`,x:`2`,y:`3`,rx:`2`,key:`48i651`}],[`line`,{x1:`8`,x2:`16`,y1:`21`,y2:`21`,key:`1svkeh`}],[`line`,{x1:`12`,x2:`12`,y1:`17`,y2:`21`,key:`vw1qmm`}]]),De=m(`moon`,[[`path`,{d:`M20.985 12.486a9 9 0 1 1-9.473-9.472c.405-.022.617.46.402.803a6 6 0 0 0 8.268 8.268c.344-.215.825-.004.803.401`,key:`kfwtm`}]]),Oe=m(`network`,[[`rect`,{x:`16`,y:`16`,width:`6`,height:`6`,rx:`1`,key:`4q2zg0`}],[`rect`,{x:`2`,y:`16`,width:`6`,height:`6`,rx:`1`,key:`8cvhb9`}],[`rect`,{x:`9`,y:`2`,width:`6`,height:`6`,rx:`1`,key:`1egb70`}],[`path`,{d:`M5 16v-3a1 1 0 0 1 1-1h12a1 1 0 0 1 1 1v3`,key:`1jsf9p`}],[`path`,{d:`M12 12V8`,key:`2874zd`}]]),ke=m(`notebook-pen`,[[`path`,{d:`M13.4 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2v-7.4`,key:`re6nr2`}],[`path`,{d:`M2 6h4`,key:`aawbzj`}],[`path`,{d:`M2 10h4`,key:`l0bgd4`}],[`path`,{d:`M2 14h4`,key:`1gsvsf`}],[`path`,{d:`M2 18h4`,key:`1bu2t1`}],[`path`,{d:`M21.378 5.626a1 1 0 1 0-3.004-3.004l-5.01 5.012a2 2 0 0 0-.506.854l-.837 2.87a.5.5 0 0 0 .62.62l2.87-.837a2 2 0 0 0 .854-.506z`,key:`pqwjuv`}]]),Ae=m(`octagon-x`,[[`path`,{d:`m15 9-6 6`,key:`1uzhvr`}],[`path`,{d:`M2.586 16.726A2 2 0 0 1 2 15.312V8.688a2 2 0 0 1 .586-1.414l4.688-4.688A2 2 0 0 1 8.688 2h6.624a2 2 0 0 1 1.414.586l4.688 4.688A2 2 0 0 1 22 8.688v6.624a2 2 0 0 1-.586 1.414l-4.688 4.688a2 2 0 0 1-1.414.586H8.688a2 2 0 0 1-1.414-.586z`,key:`2d38gg`}],[`path`,{d:`m9 9 6 6`,key:`z0biqf`}]]),je=m(`package`,[[`path`,{d:`M11 21.73a2 2 0 0 0 2 0l7-4A2 2 0 0 0 21 16V8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73z`,key:`1a0edw`}],[`path`,{d:`M12 22V12`,key:`d0xqtd`}],[`polyline`,{points:`3.29 7 12 12 20.71 7`,key:`ousv84`}],[`path`,{d:`m7.5 4.27 9 5.15`,key:`1c824w`}]]),Me=m(`panel-left-close`,[[`rect`,{width:`18`,height:`18`,x:`3`,y:`3`,rx:`2`,key:`afitv7`}],[`path`,{d:`M9 3v18`,key:`fh3hqa`}],[`path`,{d:`m16 15-3-3 3-3`,key:`14y99z`}]]),Ne=m(`panel-left-open`,[[`rect`,{width:`18`,height:`18`,x:`3`,y:`3`,rx:`2`,key:`afitv7`}],[`path`,{d:`M9 3v18`,key:`fh3hqa`}],[`path`,{d:`m14 9 3 3-3 3`,key:`8010ee`}]]),Pe=m(`pin`,[[`path`,{d:`M12 17v5`,key:`bb1du9`}],[`path`,{d:`M9 10.76a2 2 0 0 1-1.11 1.79l-1.78.9A2 2 0 0 0 5 15.24V16a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1v-.76a2 2 0 0 0-1.11-1.79l-1.78-.9A2 2 0 0 1 15 10.76V7a1 1 0 0 1 1-1 2 2 0 0 0 0-4H8a2 2 0 0 0 0 4 1 1 0 0 1 1 1z`,key:`1nkz8b`}]]),Fe=m(`radio-tower`,[[`path`,{d:`M4.9 16.1C1 12.2 1 5.8 4.9 1.9`,key:`s0qx1y`}],[`path`,{d:`M7.8 4.7a6.14 6.14 0 0 0-.8 7.5`,key:`1idnkw`}],[`circle`,{cx:`12`,cy:`9`,r:`2`,key:`1092wv`}],[`path`,{d:`M16.2 4.8c2 2 2.26 5.11.8 7.47`,key:`ojru2q`}],[`path`,{d:`M19.1 1.9a9.96 9.96 0 0 1 0 14.1`,key:`rhi7fg`}],[`path`,{d:`M9.5 18h5`,key:`mfy3pd`}],[`path`,{d:`m8 22 4-11 4 11`,key:`25yftu`}]]),Ie=m(`refresh-cw`,[[`path`,{d:`M3 12a9 9 0 0 1 9-9 9.75 9.75 0 0 1 6.74 2.74L21 8`,key:`v9h5vc`}],[`path`,{d:`M21 3v5h-5`,key:`1q7to0`}],[`path`,{d:`M21 12a9 9 0 0 1-9 9 9.75 9.75 0 0 1-6.74-2.74L3 16`,key:`3uifl3`}],[`path`,{d:`M8 16H3v5`,key:`1cv678`}]]),Le=m(`rotate-ccw`,[[`path`,{d:`M3 12a9 9 0 1 0 9-9 9.75 9.75 0 0 0-6.74 2.74L3 8`,key:`1357e3`}],[`path`,{d:`M3 3v5h5`,key:`1xhq8a`}]]),Re=m(`scroll-text`,[[`path`,{d:`M15 12h-5`,key:`r7krc0`}],[`path`,{d:`M15 8h-5`,key:`1khuty`}],[`path`,{d:`M19 17V5a2 2 0 0 0-2-2H4`,key:`zz82l3`}],[`path`,{d:`M8 21h12a2 2 0 0 0 2-2v-1a1 1 0 0 0-1-1H11a1 1 0 0 0-1 1v1a2 2 0 1 1-4 0V5a2 2 0 1 0-4 0v2a1 1 0 0 0 1 1h3`,key:`1ph1d7`}]]),ze=m(`search`,[[`path`,{d:`m21 21-4.34-4.34`,key:`14j7rj`}],[`circle`,{cx:`11`,cy:`11`,r:`8`,key:`4ej97u`}]]),Be=m(`send`,[[`path`,{d:`M14.536 21.686a.5.5 0 0 0 .937-.024l6.5-19a.496.496 0 0 0-.635-.635l-19 6.5a.5.5 0 0 0-.024.937l7.93 3.18a2 2 0 0 1 1.112 1.11z`,key:`1ffxy3`}],[`path`,{d:`m21.854 2.147-10.94 10.939`,key:`12cjpa`}]]),Ve=m(`server`,[[`rect`,{width:`20`,height:`8`,x:`2`,y:`2`,rx:`2`,ry:`2`,key:`ngkwjq`}],[`rect`,{width:`20`,height:`8`,x:`2`,y:`14`,rx:`2`,ry:`2`,key:`iecqi9`}],[`line`,{x1:`6`,x2:`6.01`,y1:`6`,y2:`6`,key:`16zg32`}],[`line`,{x1:`6`,x2:`6.01`,y1:`18`,y2:`18`,key:`nzw8ys`}]]),He=m(`settings-2`,[[`path`,{d:`M14 17H5`,key:`gfn3mx`}],[`path`,{d:`M19 7h-9`,key:`6i9tg`}],[`circle`,{cx:`17`,cy:`17`,r:`3`,key:`18b49y`}],[`circle`,{cx:`7`,cy:`7`,r:`3`,key:`dfmy0x`}]]),Ue=m(`settings`,[[`path`,{d:`M9.671 4.136a2.34 2.34 0 0 1 4.659 0 2.34 2.34 0 0 0 3.319 1.915 2.34 2.34 0 0 1 2.33 4.033 2.34 2.34 0 0 0 0 3.831 2.34 2.34 0 0 1-2.33 4.033 2.34 2.34 0 0 0-3.319 1.915 2.34 2.34 0 0 1-4.659 0 2.34 2.34 0 0 0-3.32-1.915 2.34 2.34 0 0 1-2.33-4.033 2.34 2.34 0 0 0 0-3.831A2.34 2.34 0 0 1 6.35 6.051a2.34 2.34 0 0 0 3.319-1.915`,key:`1i5ecw`}],[`circle`,{cx:`12`,cy:`12`,r:`3`,key:`1v7zrd`}]]),We=m(`shell`,[[`path`,{d:`M14 11a2 2 0 1 1-4 0 4 4 0 0 1 8 0 6 6 0 0 1-12 0 8 8 0 0 1 16 0 10 10 0 1 1-20 0 11.93 11.93 0 0 1 2.42-7.22 2 2 0 1 1 3.16 2.44`,key:`1cn552`}]]),Ge=m(`shield-check`,[[`path`,{d:`M20 13c0 5-3.5 7.5-7.66 8.95a1 1 0 0 1-.67-.01C7.5 20.5 4 18 4 13V6a1 1 0 0 1 1-1c2 0 4.5-1.2 6.24-2.72a1.17 1.17 0 0 1 1.52 0C14.51 3.81 17 5 19 5a1 1 0 0 1 1 1z`,key:`oel41y`}],[`path`,{d:`m9 12 2 2 4-4`,key:`dzmm74`}]]),Ke=m(`shield-off`,[[`path`,{d:`m2 2 20 20`,key:`1ooewy`}],[`path`,{d:`M5 5a1 1 0 0 0-1 1v7c0 5 3.5 7.5 7.67 8.94a1 1 0 0 0 .67.01c2.35-.82 4.48-1.97 5.9-3.71`,key:`1jlk70`}],[`path`,{d:`M9.309 3.652A12.252 12.252 0 0 0 11.24 2.28a1.17 1.17 0 0 1 1.52 0C14.51 3.81 17 5 19 5a1 1 0 0 1 1 1v7a9.784 9.784 0 0 1-.08 1.264`,key:`18rp1v`}]]),qe=m(`smartphone`,[[`rect`,{width:`14`,height:`20`,x:`5`,y:`2`,rx:`2`,ry:`2`,key:`1yt0o3`}],[`path`,{d:`M12 18h.01`,key:`mhygvu`}]]),Je=m(`square-terminal`,[[`path`,{d:`m7 11 2-2-2-2`,key:`1lz0vl`}],[`path`,{d:`M11 13h4`,key:`1p7l4v`}],[`rect`,{width:`18`,height:`18`,x:`3`,y:`3`,rx:`2`,ry:`2`,key:`1m3agn`}]]),$=m(`sun`,[[`circle`,{cx:`12`,cy:`12`,r:`4`,key:`4exip2`}],[`path`,{d:`M12 2v2`,key:`tus03m`}],[`path`,{d:`M12 20v2`,key:`1lh1kg`}],[`path`,{d:`m4.93 4.93 1.41 1.41`,key:`149t6j`}],[`path`,{d:`m17.66 17.66 1.41 1.41`,key:`ptbguv`}],[`path`,{d:`M2 12h2`,key:`1t8f8n`}],[`path`,{d:`M20 12h2`,key:`1q8mjw`}],[`path`,{d:`m6.34 17.66-1.41 1.41`,key:`1m8zz5`}],[`path`,{d:`m19.07 4.93-1.41 1.41`,key:`1shlcs`}]]),Ye=m(`trash-2`,[[`path`,{d:`M10 11v6`,key:`nco0om`}],[`path`,{d:`M14 11v6`,key:`outv1u`}],[`path`,{d:`M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6`,key:`miytrc`}],[`path`,{d:`M3 6h18`,key:`d0wm0j`}],[`path`,{d:`M8 6V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2`,key:`e791ji`}]]),Xe=m(`triangle-alert`,[[`path`,{d:`m21.73 18-8-14a2 2 0 0 0-3.48 0l-8 14A2 2 0 0 0 4 21h16a2 2 0 0 0 1.73-3`,key:`wmoenq`}],[`path`,{d:`M12 9v4`,key:`juzpu7`}],[`path`,{d:`M12 17h.01`,key:`p32p05`}]]),Ze=m(`user-round`,[[`circle`,{cx:`12`,cy:`8`,r:`5`,key:`1hypcn`}],[`path`,{d:`M20 21a8 8 0 0 0-16 0`,key:`rfgkzh`}]]),Qe=m(`users`,[[`path`,{d:`M16 21v-2a4 4 0 0 0-4-4H6a4 4 0 0 0-4 4v2`,key:`1yyitq`}],[`path`,{d:`M16 3.128a4 4 0 0 1 0 7.744`,key:`16gr8j`}],[`path`,{d:`M22 21v-2a4 4 0 0 0-3-3.87`,key:`kshegd`}],[`circle`,{cx:`9`,cy:`7`,r:`4`,key:`nufk8`}]]),$e=m(`wifi-off`,[[`path`,{d:`M12 20h.01`,key:`zekei9`}],[`path`,{d:`M8.5 16.429a5 5 0 0 1 7 0`,key:`1bycff`}],[`path`,{d:`M5 12.859a10 10 0 0 1 5.17-2.69`,key:`1dl1wf`}],[`path`,{d:`M19 12.859a10 10 0 0 0-2.007-1.523`,key:`4k23kn`}],[`path`,{d:`M2 8.82a15 15 0 0 1 4.177-2.643`,key:`1grhjp`}],[`path`,{d:`M22 8.82a15 15 0 0 0-11.288-3.764`,key:`z3jwby`}],[`path`,{d:`m2 2 20 20`,key:`1ooewy`}]]),et=m(`wifi`,[[`path`,{d:`M12 20h.01`,key:`zekei9`}],[`path`,{d:`M2 8.82a15 15 0 0 1 20 0`,key:`dnpr2z`}],[`path`,{d:`M5 12.859a10 10 0 0 1 14 0`,key:`1x1e6c`}],[`path`,{d:`M8.5 16.429a5 5 0 0 1 7 0`,key:`1bycff`}]]),tt=m(`wrench`,[[`path`,{d:`M14.7 6.3a1 1 0 0 0 0 1.4l1.6 1.6a1 1 0 0 0 1.4 0l3.106-3.105c.32-.322.863-.22.983.218a6 6 0 0 1-8.259 7.057l-7.91 7.91a1 1 0 0 1-2.999-3l7.91-7.91a6 6 0 0 1 7.057-8.259c.438.12.54.662.219.984z`,key:`1ngwbx`}]]),nt=m(`x`,[[`path`,{d:`M18 6 6 18`,key:`1bl5f8`}],[`path`,{d:`m6 6 12 12`,key:`d8bk6v`}]]),rt=m(`zap`,[[`path`,{d:`M4 14a1 1 0 0 1-.78-1.63l9.9-10.2a.5.5 0 0 1 .86.46l-1.92 6.02A1 1 0 0 0 13 10h7a1 1 0 0 1 .78 1.63l-9.9 10.2a.5.5 0 0 1-.86-.46l1.92-6.02A1 1 0 0 0 11 14z`,key:`1xq2db`}]]);export{oe as $,ke as A,O as At,ye as B,v as Bt,Ie as C,F as Ct,Me as D,j as Dt,Ne as E,M as Et,we as F,C as Ft,me as G,_e as H,g as Ht,Ce as I,S as It,de as J,pe as K,Se as L,x as Lt,De as M,E as Mt,Ee as N,T as Nt,je as O,A as Ot,Te as P,w as Pt,se as Q,xe as R,b as Rt,Le as S,I as St,Pe as T,N as Tt,ge as U,h as Ut,ve as V,_ as Vt,he as W,r as Wt,le as X,ue as Y,ce as Z,He as _,z as _t,$e as a,Z as at,ze as b,ee as bt,Xe as c,J as ct,Je as d,G as dt,ae as et,qe as f,W as ft,Ue as g,B as gt,We as h,V as ht,et as i,Q as it,Oe as j,D as jt,Ae as k,k as kt,Ye as l,q as lt,Ge as m,H as mt,nt as n,re as nt,Qe as o,X as ot,Ke as p,U as pt,fe as q,tt as r,ne as rt,Ze as s,Y as st,rt as t,ie as tt,$ as u,K as ut,Ve as v,R as vt,Fe as w,P as wt,Re as x,L as xt,Be as y,te as yt,be as z,y as zt};
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/cockpit-C08zaO3u.js","assets/rolldown-runtime-QTnfLwEv.js","assets/icons-kYa9YuNu.js","assets/markdown-mWU1fYYi.js","assets/fleet-map-BdJKS5l1.js","assets/vendor-5Eg_tZuH.js","assets/fleet-topology--NWS9MVT.js","assets/live-console-go8KNMD3.js","assets/mailbox-CzJ8l7_F.js","assets/use-backfilled-events-Cdz-R54C.js","assets/kanban-Cza8Uzw2.js","assets/cost-BgTMK9-t.js","assets/brain-CThvhPfH.js","assets/worktree-DM1gfidB.js","assets/trends-WVVT_AEW.js","assets/alerts-DMDGm1Rk.js","assets/control-DfFOI2b8.js","assets/settings-DUBTEqcE.js"])))=>i.map(i=>d[i]);
|
|
2
|
+
import{r as e}from"./rolldown-runtime-QTnfLwEv.js";import{At as t,B as n,D as r,E as i,F as a,J as o,Lt as s,M as c,Q as l,S as u,Ut as d,Vt as f,Wt as p,Z as m,_ as h,a as ee,bt as te,c as g,gt as ne,ht as _,i as re,j as v,kt as ie,m as y,n as b,o as ae,ot as oe,u as se,v as ce,w as x,wt as S,yt as le,zt as ue}from"./icons-kYa9YuNu.js";import{t as de}from"./vendor-5Eg_tZuH.js";import{i as fe}from"./markdown-mWU1fYYi.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 pe={maxReconnectAttempts:10,initialBackoffMs:1e3,maxBackoffMs:3e4,backoffMultiplier:2,jitterRatio:0,queueLimit:1e3,heartbeatIntervalMs:0,heartbeatTimeoutMs:0};function me(){return{phase:`idle`,reconnectAttempt:0,lastActivityAt:null,stopped:!1}}function he(e){return e.stopped?e:{...e,phase:`connecting`}}function ge(e,t=Date.now()){return{...e,phase:`open`,reconnectAttempt:0,lastActivityAt:t,stopped:!1}}function _e(e,t=Date.now()){return{...e,lastActivityAt:t}}function ve(e){return{...e,phase:`closed`,stopped:!0}}function ye(e,t,n=Date.now(),r=Math.random){if(e.stopped||e.reconnectAttempt>=t.maxReconnectAttempts)return{state:{...e,phase:`closed`},plan:null};let i=e.reconnectAttempt+1,a=Math.min(t.initialBackoffMs*t.backoffMultiplier**(i-1),t.maxBackoffMs),o=(r()*2-1)*t.jitterRatio,s=Math.max(0,Math.round(a*(1+o)));return{state:{...e,phase:`reconnecting`,reconnectAttempt:i},plan:{attempt:i,delayMs:s,retryAt:n+s}}}function be(e,t,n=Date.now()){return e.phase!==`open`||e.lastActivityAt===null||t.heartbeatIntervalMs<=0?!1:n-e.lastActivityAt>t.heartbeatIntervalMs+t.heartbeatTimeoutMs}var xe=`abort,ping,user_message,tool.confirm_result,completion.request,model.switch,model.refine,autonomy.switch,context.clear,context.compact,context.debug,context.editor.open,context.editor.validate,context.editor.apply,context.mode.create,context.mode.delete,context.mode.switch,context.mode.update,context.modes.list,context.repair,mode.switch,modes.list,session.checkpoints,session.delete,session.inspect,session.new,session.rename,session.resume,session.rewind,session.save,sessions.list,side_effects.list,stats.get,todo.update,todos.clear,todos.get,todos.remove`.split(`,`),Se=[`collab.join`,`collab.leave`,`collab.annotate`,`collab.resolve`,`collab.request_pause`,`collab.resume`,`collab.grant_control`,`collab.inject_tool`,`mailbox.action`,`mailbox.agents`,`mailbox.clear`,`mailbox.compact`,`mailbox.messages`,`mailbox.purge`,`mailbox.send`],Ce=`brain.ask,brain.config.get,brain.config.set,brain.risk,brain.status,chronicle.facet,chronicle.facets,chronicle.graph,chronicle.metrics,chronicle.query,chronicle.status,config.doctor,design.list,design.materialize,design.set,design.state,design.swap,design.tune,design.use,design.verify,memory.list,memory.sage.backfillRecoverable,memory.sage.candidateResolve,memory.sage.delete,memory.sage.forFile,memory.sage.get,memory.sage.graph,memory.sage.list,memory.sage.listPage,memory.sage.recover,memory.sage.remember,memory.sage.update`.split(`,`),we=`auth.oauth.cancel,auth.oauth.code,auth.oauth.start,mcp.add,mcp.disable,mcp.discover,mcp.enable,mcp.list,mcp.prompt.get,mcp.prompts,mcp.remove,mcp.resource.read,mcp.resources,mcp.restart,mcp.sleep,mcp.update,mcp.wake,prompts.content,prompts.create,prompts.favorite,prompts.list,prompts.recent,prompts.search,prompts.used,skills.content,skills.create,skills.edit,skills.export,skills.install,skills.list,skills.uninstall,skills.update`.split(`,`),Te=`goal-state.get,goal.addTask,goal.assess,goal.assignTask,goal.clear,goal.get,goal.list,goal.load,goal.moveTask,goal.pause,goal.resume,goal.retryTask,goal.revert,goal.runTask,goal.save,goal.selectPhase,goal.start,goal.state,goal.status,goal.stop,goal.taskStatus,goal.toggleAutonomous,plan.get,plan.item.update,plan.template_use,task.update,tasks.get`.split(`,`),Ee=`sdd.board.cancel_task,sdd.board.cleanup_worktrees,sdd.board.delete_task,sdd.board.destroy,sdd.board.get,sdd.board.list,sdd.board.pause,sdd.board.reassign,sdd.board.resume,sdd.board.retry,sdd.board.retry_all_failed,sdd.board.rollback,sdd.board.set_task_fallbacks,sdd.board.set_task_model,sdd.board.set_task_verification,sdd.board.split_task,sdd.board.stop,sdd.run.from_graph,sdd.run.from_spec,sdd.run.start,sdd.spec.approve,sdd.spec.discard,sdd.spec.get,sdd.spec.message,sdd.spec.start,specs.get,specs.list,specs.taskStatus`.split(`,`),De=[`files.list`,`files.read`,`files.tree`,`files.write`,`git.changes`,`git.diff`,`git.info`,`projects.add`,`projects.list`,`projects.select`,`working_dir.set`,`worktree.cleanup`,`worktree.diff`,`worktree.merge`,`worktree.remove`,`worktree.scan`,`shell.open`,`process.kill`,`process.killAll`,`process.list`,`terminal.close`,`terminal.create`,`terminal.input`,`terminal.resize`],Oe=`codebase.index.server.shutdown,connections.health,connections.service_action,diag.get,key.add,key.delete,key.set_active,key.update,prefs.get,prefs.update,provider.add,provider.clear_models,provider.custom_models.remove,provider.custom_models.set,provider.models,provider.models.search,provider.probe,provider.remove,provider.status.clear,provider.status.get,provider.status.retry,provider.undo_clear,provider.update,providers.list,providers.saved,tool.disable,tool.enable,tools.list,webui.shutdown`.split(`,`),ke=`error,log,pong,side_effects,agent.status_changed,agent.timeline.message,client.status_update,chimera.report_available,compaction.failed,completion.result,context.compacted,context.debug,context.editor.snapshot,context.editor.validation,context.editor.applied,context.mode.changed,context.modes.list,context.repaired,ctx.max_context,ctx.pct,delegate.completed,delegate.started,iteration.completed,iteration.limit_reached,iteration.started,model.refine_result,modes.list,provider.active_blocked,provider.error,provider.fallback,provider.response,provider.retry,provider.status_changed,provider.stream_error,provider.text_delta,provider.thinking_delta,run.result,session.checkpoints,session.damaged,session.end,session.inspect,session.rewound,session.start,session.stats,sessions.list,sessions.status_update,stats.get,token.cost_estimate_unavailable,token.threshold,tool.confirm_needed,tool.disabled,tool.enabled,tool.executed,tool.loop_detected,tool.progress,tool.started,tools.list,trust.persisted`.split(`,`),Ae=[`collab.annotation.added`,`collab.annotation.resolved`,`collab.event`,`collab.injection.granted`,`collab.participant.joined`,`collab.participant.left`,`collab.pause.granted`,`collab.pause.released`,`collab.state`,`mailbox.action_result`,`mailbox.agent_registered`,`mailbox.agents`,`mailbox.cleared`,`mailbox.compacted`,`mailbox.event`,`mailbox.messages`,`mailbox.sent`,`mailbox.purged`,`mailbox.received`,`subagent.budget_extended`,`subagent.event`],je=`brain.answer,brain.config,brain.event,brain.status,chronicle.error,chronicle.facet_result,chronicle.facets_result,chronicle.graph_result,chronicle.metrics_result,chronicle.query_result,chronicle.status_result,config.doctor.result,design.list,design.materialize,design.set,design.state,design.swap,design.tune,design.use,design.verify,memory.event,memory.list,memory.sage.backfillRecoverable,memory.sage.candidateResolve,memory.sage.delete,memory.sage.forFile,memory.sage.get,memory.sage.graph,memory.sage.list,memory.sage.listPage,memory.sage.recover,memory.sage.remember,memory.sage.update`.split(`,`),Me=`mcp.content.error,mcp.content.selected,mcp.list,mcp.operation_result,mcp.prompts,mcp.resources,mcp.server.added,mcp.server.connected,mcp.server.disconnected,mcp.server.discovered,mcp.server.error,mcp.server.reconnected,mcp.server.removed,mcp.server.sleeping,mcp.server.updated,mcp.server.waking,prompts.content,prompts.created,prompts.favorite,prompts.list,prompts.recent,prompts.search,prompts.used,skills.content,skills.created,skills.edited,skills.exported,skills.installed,skills.list,skills.uninstalled,skills.updated`.split(`,`),Ne=`budget.decision,budget.threshold_reached,coordinator.stats,coordinator.status,eternal.iteration,fleet.concurrency_update,goal-state.updated,goal.assess.result,goal.list,goal.paused,goal.resumed,goal.saved,goal.error,goal.stopped,goal.failed,goal.completed,goal.cleared,goal.reverted,goal.progress,goal.state,in_flight.ended,in_flight.started,plan.updated,task.completed,task.failed,task.pending,task.started,tasks.updated,todos.cleared,todos.updated`.split(`,`),Pe=[`kanban.task.activity`,`sdd.board.lifecycle_result`,`sdd.board.list`,`sdd.board.snapshot`,`sdd.run.started`,`sdd.spec.agent_text`,`sdd.spec.error`,`sdd.spec.snapshot`,`specs.detail`,`specs.list`],Fe=[`consensus.vote_cast`,`consensus.vote_initiated`,`consensus.vote_resolved`,`cron.job_fired`,`cron.snapshot`,`techstack.job.cancelled`,`techstack.job.failed`,`techstack.job.progress`,`techstack.job.started`,`techstack.report.delivered`,`techstack.report.ready`,`techstack.snapshot.updated`,`techstack.workspace.completed`],Ie=`checkpoint.written,codemap.file_event,codemap.index_updated,codemap.tool_executed,codemap.tool_started,file.saved,files.list,files.read,files.tree,files.written,git.changes,git.diff,git.info,process.list,projects.added,projects.list,projects.selected,terminal.exit,terminal.output,working_dir.changed,worktree.cleanup_result,worktree.diff_result,worktree.event,worktree.merge_result,worktree.orphans,worktree.state`.split(`,`),Le=[`auth.oauth.status`,`codebase.index.server.shutdown_result`,`connections.health_error`,`connections.health_result`,`connections.service_action_result`,`diag.get`,`key.operation_result`,`model.switch_result`,`prefs.updated`,`provider.catalog`,`provider.models`,`provider.models.search_result`,`provider.probe`,`provider.status.snapshot`,`providers.saved`],Re=[...xe,...Se,...De,...Oe,...Te,...Ee,...Ce,...we],ze=[...ke,...Ae,...Ie,...Le,...Ne,...Pe,...Fe,...je,...Me];new Set(Re),new Set(ze);function C(e){return typeof e==`object`&&e&&!Array.isArray(e)?e:null}function w(e,t=0){return typeof e==`number`&&Number.isFinite(e)?e:t}function T(e){return e===void 0||Array.isArray(e)}function Be(e){return w(e.activeProjects)===e.activeProjects&&w(e.activeClients)===e.activeClients&&w(e.activeSessions)===e.activeSessions&&w(e.activeSubagents)===e.activeSubagents&&w(e.unreadMailboxMessages)===e.unreadMailboxMessages&&w(e.incompleteMailboxMessages)===e.incompleteMailboxMessages&&w(e.totalCostUsd)===e.totalCostUsd}function Ve(e){if(e.type!==`hq.snapshot`)return null;let t=C(e.snapshot),n=t?C(t.totals):null;return!t||typeof t.generatedAt!=`string`||!Array.isArray(t.clients)||!Array.isArray(t.projects)||!Array.isArray(t.sessions)||!Array.isArray(t.fleets)||!Array.isArray(t.mailboxes)||!n||!Be(n)||!T(t.machines)||!T(t.liveSessions)||!T(t.mcpServers)?null:{kind:`hq-snapshot`,snapshot:t}}function He(e){if(e.type!==`hq.event`)return null;let t=C(e.event);return!t||typeof t.id!=`string`||typeof t.type!=`string`||typeof t.timestamp!=`string`||typeof t.clientId!=`string`||typeof t.projectId!=`string`||typeof t.seq!=`number`?null:{kind:`hq-event`,event:t}}function Ue(e){return e.type!==`hq.alert`||typeof e.severity!=`string`||![`info`,`warn`,`error`].includes(e.severity)||typeof e.message!=`string`||typeof e.timestamp!=`string`?null:{kind:`hq-alert`,alert:e}}function We(e){if(e.type!==`hq.command_status`)return null;let t=C(e.command);return!t||typeof t.commandId!=`string`||typeof t.type!=`string`||typeof t.clientId!=`string`||typeof t.enqueuedBy!=`string`||typeof t.enqueuedAt!=`string`||typeof t.status!=`string`||![`queued`,`delivered`,`acked`].includes(t.status)?null:{kind:`hq-command-status`,command:t}}var E=e(p(),1),Ge=de(),Ke=e=>Symbol.iterator in e,qe=e=>`entries`in e,Je=(e,t)=>{let n=e instanceof Map?e:new Map(e.entries()),r=t instanceof Map?t:new Map(t.entries());if(n.size!==r.size)return!1;for(let[e,t]of n)if(!r.has(e)||!Object.is(t,r.get(e)))return!1;return!0},Ye=(e,t)=>{let n=e[Symbol.iterator](),r=t[Symbol.iterator](),i=n.next(),a=r.next();for(;!i.done&&!a.done;){if(!Object.is(i.value,a.value))return!1;i=n.next(),a=r.next()}return!!i.done&&!!a.done};function Xe(e,t){return Object.is(e,t)?!0:typeof e!=`object`||!e||typeof t!=`object`||!t||Object.getPrototypeOf(e)!==Object.getPrototypeOf(t)?!1:Ke(e)&&Ke(t)?qe(e)&&qe(t)?Je(e,t):Ye(e,t):Je({entries:()=>Object.entries(e)},{entries:()=>Object.entries(t)})}function D(e){let t=E.useRef(void 0);return n=>{let r=e(n);return Xe(t.current,r)?t.current:t.current=r}}var O=`wrongstack.hq.token.v1`;function k(){if(typeof window>`u`)return null;try{let e=new URLSearchParams(window.location.search).get(`token`);return e!==null&&e.length>0?e:null}catch{return null}}function A(){if(typeof window>`u`)return null;try{return window.sessionStorage??null}catch{return null}}function j(){try{let e=A()?.getItem(O)??null;return e!==null&&e.length>0?e:null}catch{return null}}function M(e){try{A()?.setItem(O,e)}catch{}}function N(){try{A()?.removeItem(O)}catch{}}function P(){let e=k();return e===null?j():(M(e),e)}function Ze(){if(typeof window>`u`)return;let e=k();if(e!==null&&(M(e),j()===e))try{let e=new URL(window.location.href);e.searchParams.delete(`token`),window.history.replaceState(null,``,`${e.pathname}${e.search}${e.hash}`)}catch{}}function Qe(){let e=P();return e===null?{}:{Authorization:`Bearer ${e}`}}function F(e,t){let n={...t?.headers??{},...Qe()};return fetch(e,{...t,headers:n})}function $e(){if(typeof window>`u`)return null;try{let e=window.location.hash;if(!e.startsWith(`#bootstrap=`))return null;let t=e.slice(11);return t.length>0?t:null}catch{return null}}function et(){if(!(typeof window>`u`))try{let e=new URL(window.location.href);e.hash.startsWith(`#bootstrap=`)&&(e.hash=``,window.history.replaceState(null,``,`${e.pathname}${e.search}`))}catch{}}async function tt(){let e=$e();if(e===null)return!1;try{return(await fetch(`/api/auth/bootstrap`,{method:`POST`,headers:{"Content-Type":`application/json`},body:JSON.stringify({code:e}),credentials:`same-origin`,signal:AbortSignal.timeout(1e4)})).ok?(et(),N(),!0):!1}catch{return!1}}async function nt(){if(j()===null)return!1;try{let e=await fetch(`/api/auth/upgrade`,{method:`POST`,headers:Qe(),credentials:`same-origin`,signal:AbortSignal.timeout(1e4)});return!e.ok||(await e.json()).loggedIn!==!0?!1:(N(),!0)}catch{return!1}}var rt=e=>{let t,n=new Set,r=(e,r)=>{let i=typeof e==`function`?e(t):e;if(!Object.is(i,t)){let e=t;t=r??(typeof i!=`object`||!i)?i:Object.assign({},t,i),n.forEach(n=>n(t,e))}},i=()=>t,a={setState:r,getState:i,getInitialState:()=>o,subscribe:e=>(n.add(e),()=>n.delete(e))},o=t=e(r,i,a);return a},it=(e=>e?rt(e):rt),at=e=>e;function ot(e,t=at){let n=E.useSyncExternalStore(e.subscribe,E.useCallback(()=>t(e.getState()),[e,t]),E.useCallback(()=>t(e.getInitialState()),[e,t]));return E.useDebugValue(n),n}var st=e=>{let t=it(e),n=e=>ot(t,e);return Object.assign(n,t),n},ct=(e=>e?st(e):st),lt=6e3,ut=0,I=ct()(e=>({toasts:[],addToast:(t,n=`info`,r=lt,i)=>{let a=`toast-${++ut}-${Date.now()}`,o={id:a,message:t,severity:n,createdAt:Date.now(),ttlMs:r,action:i};e(e=>({toasts:[...e.toasts.slice(-4),o]})),r>0&&setTimeout(()=>{e(e=>({toasts:e.toasts.filter(e=>e.id!==a)}))},r)},removeToast:t=>e(e=>({toasts:e.toasts.filter(e=>e.id!==t)})),clearToasts:()=>e({toasts:[]})})),L=fe(),dt={error:(0,L.jsx)(S,{size:16,"aria-hidden":`true`}),warning:(0,L.jsx)(g,{size:16,"aria-hidden":`true`}),info:(0,L.jsx)(m,{size:16,"aria-hidden":`true`}),success:(0,L.jsx)(t,{size:16,"aria-hidden":`true`})};function ft(){let{toasts:e,removeToast:t}=I(D(e=>({toasts:e.toasts,removeToast:e.removeToast})));return e.length===0?null:(0,L.jsx)(`div`,{className:`hq-toast-container`,role:`status`,"aria-live":`polite`,"aria-label":`Notifications`,children:e.map(e=>(0,L.jsxs)(`div`,{className:`hq-toast hq-toast--${e.severity}`,"data-severity":e.severity,children:[(0,L.jsx)(`span`,{className:`hq-toast-icon`,children:dt[e.severity]}),(0,L.jsx)(`span`,{className:`hq-toast-message`,children:e.message}),e.action?(0,L.jsx)(`span`,{className:`hq-toast-action`,children:e.action}):null,(0,L.jsx)(`button`,{type:`button`,className:`hq-toast-close`,"aria-label":`Dismiss notification`,onClick:()=>t(e.id),children:(0,L.jsx)(b,{size:12})})]},e.id))})}var pt=new Set([`graceful`,`crash`,`heartbeat-timeout`,`auth-revoked`]),R=`__hq_peer__`;function mt(e){return e===void 0||typeof e==`string`}function ht(e){if(typeof e!=`object`||!e||Array.isArray(e))return!1;let t=e;return!(typeof t.projectId!=`string`||t.projectId.length===0||typeof t.machineId!=`string`||t.machineId.length===0||typeof t.leaderClientId!=`string`||t.leaderClientId.length===0||typeof t.previousLeaderHandle!=`string`||t.previousLeaderHandle.length===0||typeof t.reason!=`string`||!pt.has(t.reason)||typeof t.detectedAt!=`string`||!Number.isFinite(Date.parse(t.detectedAt))||!mt(t.rehydrateHint)||t.rehydrateHint!==void 0&&t.rehydrateHint.length>280||!mt(t.rehydrateCommandId))}function gt(e){if(typeof e!=`object`||!e||Array.isArray(e))return!1;let t=e;return!(typeof t.projectId!=`string`||t.projectId.length===0||typeof t.machineId!=`string`||t.machineId.length===0||typeof t.leaderClientId!=`string`||t.leaderClientId.length===0||typeof t.previousLeaderHandle!=`string`||t.previousLeaderHandle.length===0||typeof t.reason!=`string`||!pt.has(t.reason)||typeof t.detectedAt!=`string`||!Number.isFinite(Date.parse(t.detectedAt)))}function _t(e,t){let n=t.liveSessions??[],r=e.selectedSessionId===null?void 0:n.find(t=>t.sessionId===e.selectedSessionId),i=e.selectedAgentId===null||r?.agents.some(t=>t.id===e.selectedAgentId)===!0,a=e.selectedClientId===null||t.clients.some(t=>t.clientId===e.selectedClientId);return{snapshot:t,...e.selectedSessionId!==null&&r===void 0?{selectedSessionId:null,selectedAgentId:null}:i?{}:{selectedAgentId:null},...a?{}:{selectedClientId:null}}}function vt(e,t){return e.timestamp===t.timestamp&&e.severity===t.severity&&e.message===t.message}var z=ct()(e=>({snapshot:null,events:[],alerts:[],commandStatuses:[],activeView:`cockpit`,selectedSessionId:null,selectedAgentId:null,selectedClientId:null,connected:!1,authRequired:!1,resumeCursors:{},needsSnapshotRefresh:!1,peerRehydrate:null,setActiveView:t=>e({activeView:t}),selectSession:(t,n=null)=>e({selectedSessionId:t,selectedAgentId:n}),selectAgent:(t,n)=>e({selectedSessionId:t,selectedAgentId:n}),selectClient:t=>e({selectedClientId:t}),markAuthRequired:()=>e(e=>e.authRequired?{}:{authRequired:!0}),_hydrateSnapshot:t=>e(e=>e.snapshot===null?_t(e,t):{}),_onSnapshot:t=>e(e=>{let n=e.snapshot;return n!==null&&typeof n.generatedAt==`string`&&typeof t.generatedAt==`string`&&Date.parse(t.generatedAt)<Date.parse(n.generatedAt)?{}:{..._t(e,t),connected:!0}}),_resetResumeCursors:()=>e({resumeCursors:{}}),_onEvent:t=>e(e=>{let n=e.events.some(e=>e.id===t.id),r=n?{}:{events:[...e.events,t].slice(-500)},i=t.type===`peer.rehydrate`||t.type===`peer.lost`?e=>({}):n=>{let r=e.resumeCursors[n]??0,i=t.seq,a=r>0&&i>0&&i<=r/2&&t.type!==`client.hello`;return i>r||a?{resumeCursors:{...e.resumeCursors,[n]:i}}:{}};if(t.type===`peer.rehydrate`){if(!ht(t.payload))return r;let e={kind:`peer.rehydrate`,payload:t.payload,receivedAt:new Date().toISOString()};return{...r,...i(R),...n?{}:{peerRehydrate:e}}}if(t.type===`peer.lost`){if(!gt(t.payload))return r;let e={kind:`peer.lost`,payload:t.payload,receivedAt:new Date().toISOString()};return{...r,...i(R),...n?{}:{peerRehydrate:e}}}return{...r,...i(t.clientId)}}),_onAlert:t=>e(e=>e.alerts.some(e=>vt(e,t))?{}:{alerts:[...e.alerts,t].slice(-100)}),_onCommandStatus:t=>e(e=>{let n=e.commandStatuses.findIndex(e=>e.commandId===t.commandId);if(n<0)return{commandStatuses:[...e.commandStatuses,t].slice(-200)};let r=[...e.commandStatuses];return r[n]=t,{commandStatuses:r}}),_setConnected:t=>e({connected:t}),_setNeedsSnapshotRefresh:t=>e(e=>e.needsSnapshotRefresh===t?{}:{needsSnapshotRefresh:t}),_dismissPeerRehydrate:()=>e({peerRehydrate:null})}));async function B(e){let t;try{t=await F(e)}catch{throw Error(`Network error fetching ${e}`)}if(t.status===401)throw z.getState().markAuthRequired(),Error(`401 Unauthorized fetching ${e} — browser token required`);if(!t.ok)throw Error(`${t.status} ${t.statusText}`);try{return await t.json()}catch{throw Error(`Invalid JSON response from ${e}: ${t.status}`)}}async function yt(e){let t;try{t=await F(`/api/mailbox-send`,{method:`POST`,headers:{"Content-Type":`application/json`},body:JSON.stringify(e)})}catch{throw Error(`Network error sending mailbox message`)}if(t.status===401)throw z.getState().markAuthRequired(),Error(`401 Unauthorized — browser token required`);if(!t.ok){let e=await t.json().catch(()=>null),n=typeof e?.error==`string`?e.error:t.statusText||`HTTP ${t.status}`;throw Error(n)}try{return await t.json()}catch{throw Error(`Invalid JSON response from mailbox-send API`)}}async function bt(e,t,n){let r;try{r=await F(`/api/command`,{method:`POST`,headers:{"Content-Type":`application/json`},body:JSON.stringify({clientId:e,type:t,payload:n})})}catch{throw Error(`Network error sending command`)}if(r.status===401)throw z.getState().markAuthRequired(),Error(`401 Unauthorized — browser token required`);if(!r.ok){let e=(await r.json().catch(()=>null))?.error??(r.statusText||`HTTP ${r.status}`);throw Error(e)}try{return await r.json()}catch{throw Error(`Invalid JSON response from command API`)}}var xt=`wrongstack.hq.local-prefs.v1`,V={appearance:{theme:`dark`},fleet:{scope:`all`,layout:`map`,machineId:``,projectId:``},console:{delivery:`steer`,subject:``,body:``},control:{cmdType:`steer`,abortTarget:`leader`,spawnRole:`bug-hunter`,spawnTask:``,steerTo:`leader`,steerSubject:``,steerBody:``,broadcastSubject:``,broadcastBody:``},mailbox:{query:``,types:[],priorities:[],includeCompleted:!0}},H=null,U=new Set;function W(){for(let e of U)e()}function G(e){return typeof structuredClone==`function`?structuredClone(e):JSON.parse(JSON.stringify(e))}function K(e){return typeof e==`object`&&!!e&&!Array.isArray(e)}function St(){if(typeof window>`u`||window.localStorage===void 0)return G(V);try{let e=window.localStorage.getItem(xt);return e===null?G(V):Ct(JSON.parse(e))}catch{return G(V)}}function Ct(e){if(!K(e))return G(V);let t=K(e.appearance)?e.appearance:{},n=K(e.fleet)?e.fleet:{},r=K(e.console)?e.console:{},i=K(e.control)?e.control:{},a=K(e.mailbox)?e.mailbox:{};return{appearance:{theme:t.theme===`light`?`light`:`dark`},fleet:{scope:n.scope===`machine`||n.scope===`project`?n.scope:`all`,layout:n.layout===`compact`?`compact`:`map`,machineId:typeof n.machineId==`string`?n.machineId:``,projectId:typeof n.projectId==`string`?n.projectId:``},console:{delivery:r.delivery===`btw`||r.delivery===`queue`?r.delivery:`steer`,subject:typeof r.subject==`string`?r.subject:``,body:typeof r.body==`string`?r.body:``},control:{cmdType:i.cmdType===`btw`||i.cmdType===`queue`||i.cmdType===`abort`||i.cmdType===`spawn`||i.cmdType===`broadcast`||i.cmdType===`run-command`?i.cmdType:V.control.cmdType,abortTarget:i.abortTarget===`fleet`?`fleet`:`leader`,spawnRole:typeof i.spawnRole==`string`&&i.spawnRole.length>0?i.spawnRole:V.control.spawnRole,spawnTask:typeof i.spawnTask==`string`?i.spawnTask:V.control.spawnTask,steerTo:typeof i.steerTo==`string`?i.steerTo:V.control.steerTo,steerSubject:typeof i.steerSubject==`string`?i.steerSubject:V.control.steerSubject,steerBody:typeof i.steerBody==`string`?i.steerBody:V.control.steerBody,broadcastSubject:typeof i.broadcastSubject==`string`?i.broadcastSubject:V.control.broadcastSubject,broadcastBody:typeof i.broadcastBody==`string`?i.broadcastBody:V.control.broadcastBody},mailbox:{query:typeof a.query==`string`?a.query:V.mailbox.query,types:Array.isArray(a.types)?a.types.filter(e=>typeof e==`string`):[],priorities:Array.isArray(a.priorities)?a.priorities.filter(e=>typeof e==`string`):[],includeCompleted:typeof a.includeCompleted!=`boolean`||a.includeCompleted}}}function q(){return H===null&&(H=St()),H}function J(e){if(!(typeof window>`u`||window.localStorage===void 0))try{window.localStorage.setItem(xt,JSON.stringify(e))}catch{}}function wt(e){return U.add(e),()=>U.delete(e)}function Tt(){return q()}function Et(){return V}function Dt(){return(0,E.useSyncExternalStore)(wt,Tt,Et)}function Ot(e){let t=q();H={...t,control:{...t.control,...e}},J(H),W()}function kt(e){let t=q();H={...t,appearance:{...t.appearance,...e}},J(H),W()}function At(e){let t=q();H={...t,fleet:{...t.fleet,...e}},J(H),W()}function jt(e){let t=q();H={...t,console:{...t.console,...e}},J(H),W()}function Mt(e){let t=q();H={...t,mailbox:{...t.mailbox,...e}},J(H),W()}function Y({value:e,onChange:t,onKeyDown:n,inputRef:r,placeholder:i,autoComplete:a,minLength:o,maxLength:s,className:c,id:l}){let[u,d]=(0,E.useState)(!1);return(0,L.jsxs)(`div`,{className:`hq-password-input-wrapper`,children:[(0,L.jsx)(`input`,{ref:r,id:l,type:u?`text`:`password`,className:c??`hq-token-input`,placeholder:i,autoComplete:a,minLength:o,maxLength:s,value:e,onChange:e=>t(e.target.value),onKeyDown:n}),(0,L.jsx)(`button`,{type:`button`,className:`hq-password-toggle`,onMouseDown:e=>e.preventDefault(),onClick:()=>d(e=>!e),"aria-label":u?`Hide password`:`Show password`,"aria-pressed":u,children:u?(0,L.jsx)(ne,{size:14}):(0,L.jsx)(_,{size:14})})]})}function Nt({hadToken:e}){let[t,n]=(0,E.useState)(null),[r,i]=(0,E.useState)(null);(0,E.useEffect)(()=>{fetch(`/api/auth/status`).then(async e=>{if(!e.ok)throw Error(`HTTP ${e.status}`);return await e.json()}).then(n).catch(()=>i(`Could not load HQ auth status.`))},[]);let a=t?.tokenMode??!0,o=t?.passwordMode??!1,[s,c]=(0,E.useState)(null),l=s??(o?`password`:`token`);return r?(0,L.jsx)(`div`,{className:`hq-token-gate`,children:(0,L.jsxs)(`div`,{className:`hq-token-card`,children:[(0,L.jsx)(`div`,{className:`hq-brand`,children:`WrongStack HQ`}),(0,L.jsx)(`div`,{className:`hq-token-title`,children:`Auth status unavailable`}),(0,L.jsx)(`p`,{className:`hq-token-text`,children:r})]})}):t?(0,L.jsx)(`div`,{className:`hq-token-gate`,children:(0,L.jsxs)(`div`,{className:`hq-token-card`,children:[(0,L.jsx)(`div`,{className:`hq-brand`,children:`WrongStack HQ`}),a&&o?(0,L.jsxs)(`div`,{className:`hq-token-tabs`,children:[(0,L.jsx)(`button`,{type:`button`,className:`hq-token-tab`+(l===`token`?` active`:``),onClick:()=>c(`token`),children:`Browser token`}),(0,L.jsx)(`button`,{type:`button`,className:`hq-token-tab`+(l===`password`?` active`:``),onClick:()=>c(`password`),children:`Password`})]}):null,l===`token`||!o?(0,L.jsx)(Pt,{hadToken:e}):(0,L.jsx)(Ft,{})]})}):(0,L.jsx)(`div`,{className:`hq-token-gate`,children:(0,L.jsxs)(`div`,{className:`hq-token-card`,children:[(0,L.jsx)(`div`,{className:`hq-brand`,children:`WrongStack HQ`}),(0,L.jsx)(`div`,{className:`hq-token-title`,children:`Checking auth mode…`})]})})}function Pt({hadToken:e}){let[t,n]=(0,E.useState)(``),r=(0,E.useRef)(null);(0,E.useEffect)(()=>{r.current?.focus()},[]);let i=()=>{let e=t.trim();e.length!==0&&(M(e),window.location.reload())};return(0,L.jsxs)(L.Fragment,{children:[(0,L.jsx)(`div`,{className:`hq-token-title`,children:`Browser token required`}),(0,L.jsx)(`p`,{className:`hq-token-text`,children:e?`The saved token was rejected — it may have been revoked or the server was reset. Paste a current browser token.`:`This HQ server runs in token mode. Paste the browser token printed at startup (the ?token= value in the URL wstack --hq shows).`}),(0,L.jsx)(Y,{inputRef:r,value:t,onChange:n,onKeyDown:e=>{e.key===`Enter`&&i()},placeholder:`browser token`,autoComplete:`off`}),(0,L.jsx)(`button`,{type:`button`,className:`hq-token-submit`,onClick:i,disabled:t.trim().length===0,children:`Connect`}),(0,L.jsxs)(`p`,{className:`hq-token-hint`,children:[`Manage tokens with `,(0,L.jsx)(`code`,{children:`wstack hq token list`}),` / `,(0,L.jsx)(`code`,{children:`wstack hq token create`}),` — they live in `,(0,L.jsx)(`code`,{children:`~/.wrongstack/hq/auth.json`}),`.`]})]})}function Ft(){let[e,t]=(0,E.useState)(``),[n,r]=(0,E.useState)(``),[i,a]=(0,E.useState)(!1),[o,s]=(0,E.useState)(null),[c,l]=(0,E.useState)(!1),u=(0,E.useRef)(null),d=(0,E.useRef)(null),f=(0,E.useRef)(!1),p=(0,E.useRef)(!1);(0,E.useEffect)(()=>{if(i){d.current?.focus();return}u.current?.focus()},[i]);let m=async()=>{if(c||f.current)return;let t=e;if(t.length!==0){f.current=!0,l(!0),s(null);try{let e=await fetch(`/api/login`,{method:`POST`,headers:{"Content-Type":`application/json`},body:JSON.stringify({password:t})});if(!e.ok){let t=`Login failed.`;try{let n=(await e.json()).error;typeof n==`string`?t=n:typeof n?.message==`string`&&(t=n.message)}catch{}s(t),f.current=!1,l(!1);return}if((await e.json()).totpRequired){a(!0),f.current=!1,l(!1);return}N(),window.location.reload()}catch{s(`Network error.`),f.current=!1,l(!1)}}},h=async()=>{if(c||p.current)return;let e=n.trim();if(e.length!==0){p.current=!0,l(!0),s(null);try{let t=e.includes(`-`)?{recoveryCode:e}:{code:e.replace(/\D/g,``).slice(0,6)},n=await fetch(`/api/login/verify`,{method:`POST`,headers:{"Content-Type":`application/json`},body:JSON.stringify(t)});if(!n.ok){let e=`Verification failed.`;try{let t=(await n.json()).error;typeof t==`string`?e=t:typeof t?.message==`string`&&(e=t.message)}catch{}s(e),p.current=!1,l(!1);return}N(),window.location.reload()}catch{s(`Network error.`),p.current=!1,l(!1)}}};return i?(0,L.jsxs)(L.Fragment,{children:[o?(0,L.jsx)(`p`,{className:`hq-token-error`,children:o}):null,(0,L.jsx)(`label`,{className:`hq-token-label`,htmlFor:`hq-totp-code`,children:`Authenticator code`}),(0,L.jsx)(`input`,{ref:d,id:`hq-totp-code`,className:`hq-token-input`,type:`text`,autoComplete:`one-time-code`,placeholder:`000000 or recovery code`,value:n,onChange:e=>r(e.target.value.slice(0,32)),onKeyDown:e=>{e.key===`Enter`&&h()}}),(0,L.jsx)(`button`,{type:`button`,className:`hq-token-submit`,onClick:()=>void h(),disabled:n.trim().length===0||c,children:c?`Verifying…`:`Verify`}),(0,L.jsx)(`button`,{type:`button`,className:`hq-token-hint`,onClick:()=>{a(!1),r(``),s(null)},children:`← Back to password`}),(0,L.jsx)(`p`,{className:`hq-token-hint`,children:`Enter the 6-digit code from your authenticator app, or paste a recovery code.`})]}):(0,L.jsxs)(L.Fragment,{children:[(0,L.jsx)(`div`,{className:`hq-token-title`,children:`Password required`}),(0,L.jsx)(`p`,{className:`hq-token-text`,children:`This HQ server is protected by a password. Enter it to open the dashboard.`}),o?(0,L.jsx)(`p`,{className:`hq-token-error`,children:o}):null,(0,L.jsx)(Y,{inputRef:u,value:e,onChange:t,onKeyDown:e=>{e.key===`Enter`&&m()},placeholder:`password`,autoComplete:`current-password`}),(0,L.jsx)(`button`,{type:`button`,className:`hq-token-submit`,onClick:()=>void m(),disabled:e.length===0||c,children:c?`Logging in…`:`Log in`}),(0,L.jsxs)(`p`,{className:`hq-token-hint`,children:[`Set or change the password with `,(0,L.jsx)(`code`,{children:`wstack --hq --password <secret>`}),`.`]})]})}var It=`modulepreload`,Lt=function(e){return`/`+e},Rt={},X=function(e,t,n){let r=Promise.resolve();if(t&&t.length>0){let e=document.getElementsByTagName(`link`),i=document.querySelector(`meta[property=csp-nonce]`),a=i?.nonce||i?.getAttribute(`nonce`);function o(e){return Promise.all(e.map(e=>Promise.resolve(e).then(e=>({status:`fulfilled`,value:e}),e=>({status:`rejected`,reason:e}))))}function s(e){return import.meta.resolve?import.meta.resolve(e):new URL(e,import.meta.url).href}r=o(t.map(t=>{if(t=Lt(t,n),t=s(t),t in Rt)return;Rt[t]=!0;let r=t.endsWith(`.css`);for(let n=e.length-1;n>=0;n--){let i=e[n];if(i.href===t&&(!r||i.rel===`stylesheet`))return}let i=document.createElement(`link`);if(i.rel=r?`stylesheet`:It,r||(i.as=`script`),i.crossOrigin=``,i.href=t,a&&i.setAttribute(`nonce`,a),document.head.appendChild(i),r)return new Promise((e,n)=>{i.addEventListener(`load`,e),i.addEventListener(`error`,()=>n(Error(`Unable to preload CSS for ${t}`)))})}))}function i(e){let t=new Event(`vite:preloadError`,{cancelable:!0});if(t.payload=e,window.dispatchEvent(t),!t.defaultPrevented)throw e}return r.then(t=>{for(let e of t||[])e.status===`rejected`&&i(e.reason);return e().catch(i)})},zt=360*60*1e3,Z=[{id:`cockpit`,label:`Cockpit`,eyebrow:`Fleet overview`,description:`Health, active work, alerts, cost and command shortcuts.`,group:`Operations`,icon:o,shortcut:1},{id:`fleet`,label:`Fleet Map`,eyebrow:`Topology`,description:`Machines, projects, terminals and agents in one live graph.`,group:`Operations`,icon:v,shortcut:2},{id:`console`,label:`Live Console`,eyebrow:`Transcripts`,description:`Stream and inspect session or agent conversations.`,group:`Operations`,icon:a,shortcut:3},{id:`mailbox`,label:`Mailbox`,eyebrow:`Coordination`,description:`Cross-project messages, unread work and direct delivery.`,group:`Operations`,icon:l,shortcut:4},{id:`kanban`,label:`Kanban`,eyebrow:`Project work`,description:`Read-only project boards synchronized across clones and machines.`,group:`Operations`,icon:te},{id:`alerts`,label:`Alerts`,eyebrow:`Attention`,description:`Active fleet warnings and alert transition history.`,group:`Intelligence`,icon:f,shortcut:5},{id:`cost`,label:`Cost`,eyebrow:`Economics`,description:`Project, provider and model spending distribution.`,group:`Intelligence`,icon:ie,shortcut:6},{id:`trends`,label:`Trends`,eyebrow:`Telemetry`,description:`Cost, token and tool activity over time.`,group:`Intelligence`,icon:s,shortcut:7},{id:`brain`,label:`Brain`,eyebrow:`Decisions`,description:`Autonomous decisions, escalations and interventions.`,group:`Intelligence`,icon:ue,shortcut:8},{id:`worktree`,label:`Worktrees`,eyebrow:`Workspace`,description:`Distributed branches, worktrees and ownership state.`,group:`System`,icon:oe,shortcut:9},{id:`control`,label:`Control`,eyebrow:`Command plane`,description:`Steer, queue, broadcast and audit remote commands.`,group:`System`,icon:x,shortcut:0},{id:`settings`,label:`Security`,eyebrow:`Access control`,description:`Manage the HQ browser password, authentication and active credentials.`,group:`System`,icon:h}],Bt=[`Operations`,`Intelligence`,`System`],Vt={cockpit:(0,E.lazy)(()=>X(()=>import(`./cockpit-C08zaO3u.js`).then(e=>({default:e.CockpitView})),__vite__mapDeps([0,1,2,3]))),fleet:(0,E.lazy)(()=>X(()=>import(`./fleet-map-BdJKS5l1.js`).then(e=>({default:e.FleetMapView})),__vite__mapDeps([4,1,2,5,3,6]))),console:(0,E.lazy)(()=>X(()=>import(`./live-console-go8KNMD3.js`).then(e=>({default:e.LiveConsoleView})),__vite__mapDeps([7,1,2,3,6,5]))),mailbox:(0,E.lazy)(()=>X(()=>import(`./mailbox-CzJ8l7_F.js`).then(e=>({default:e.MailboxView})),__vite__mapDeps([8,1,2,3,9]))),kanban:(0,E.lazy)(()=>X(()=>import(`./kanban-Cza8Uzw2.js`).then(e=>({default:e.KanbanView})),__vite__mapDeps([10,1,2,3]))),cost:(0,E.lazy)(()=>X(()=>import(`./cost-BgTMK9-t.js`).then(e=>({default:e.CostView})),__vite__mapDeps([11,1,2,3]))),brain:(0,E.lazy)(()=>X(()=>import(`./brain-CThvhPfH.js`).then(e=>({default:e.BrainView})),__vite__mapDeps([12,1,2,3,9]))),worktree:(0,E.lazy)(()=>X(()=>import(`./worktree-DM1gfidB.js`).then(e=>({default:e.WorktreeView})),__vite__mapDeps([13,1,2,3,9]))),trends:(0,E.lazy)(()=>X(()=>import(`./trends-WVVT_AEW.js`).then(e=>({default:e.TrendsView})),__vite__mapDeps([14,1,2,3]))),alerts:(0,E.lazy)(()=>X(()=>import(`./alerts-DMDGm1Rk.js`).then(e=>({default:e.AlertsView})),__vite__mapDeps([15,1,2,3]))),control:(0,E.lazy)(()=>X(()=>import(`./control-DfFOI2b8.js`).then(e=>({default:e.ControlView})),__vite__mapDeps([16,1,2,3]))),settings:(0,E.lazy)(()=>X(()=>import(`./settings-DUBTEqcE.js`).then(e=>({default:e.SettingsView})),__vite__mapDeps([17,1,2,3])))};function Ht(e){return Z.find(t=>t.id===e)??Z[0]}var Ut=class extends E.Component{state={error:null};static getDerivedStateFromError(e){return{error:e instanceof Error?e.message:String(e)}}componentDidUpdate(e){e.view!==this.props.view&&this.state.error!==null&&this.setState({error:null})}render(){return this.state.error===null?this.props.children:(0,L.jsxs)(`div`,{className:`hq-view-error`,role:`alert`,children:[(0,L.jsx)(y,{size:22}),(0,L.jsxs)(`div`,{children:[(0,L.jsx)(`strong`,{children:`This HQ surface stopped safely.`}),(0,L.jsx)(`p`,{children:this.state.error})]}),(0,L.jsxs)(`button`,{type:`button`,className:`hq-btn secondary`,onClick:()=>this.setState({error:null}),children:[(0,L.jsx)(u,{size:13}),`Retry view`]})]})}};function Wt(){let{snapshot:e,alerts:t,activeView:a,authRequired:o,connected:s,peerRehydrate:l}=z(D(e=>({snapshot:e.snapshot,alerts:e.alerts,activeView:e.activeView,authRequired:e.authRequired,connected:e.connected,peerRehydrate:e.peerRehydrate}))),[u,f]=(0,E.useState)(()=>typeof window>`u`||window.innerWidth>=1180),[p,m]=(0,E.useState)(null),[h,te]=(0,E.useState)(null),[g,ne]=(0,E.useState)(!1),{theme:_}=Dt().appearance,v=(0,E.useRef)(!1),y=(0,E.useRef)(!1);if((0,E.useEffect)(()=>{y.current&&s===!1?I.getState().addToast(`Connection lost — reconnecting with backoff…`,`warning`,4e3):y.current&&v.current===!1&&s===!0&&I.getState().addToast(`Reconnected to HQ server`,`success`,3e3),s&&(y.current=!0),v.current=s},[s]),(0,E.useEffect)(()=>(document.documentElement.dataset.hqTheme=_,()=>{delete document.documentElement.dataset.hqTheme}),[_]),(0,E.useEffect)(()=>{let e=!1;return B(`/api/snapshot`).then(t=>{e||z.getState()._hydrateSnapshot(t)}).catch(()=>{}),()=>{e=!0}},[]),(0,E.useEffect)(()=>{let e=!1;return B(`/api/auth/status`).then(t=>{e||te(t)}).catch(()=>{}),()=>{e=!0}},[]),(0,E.useEffect)(()=>{let e=!1,t=()=>{B(`/api/system/update`).then(t=>{e||m(t)}).catch(()=>{})};t();let n=window.setInterval(t,zt);return()=>{e=!0,window.clearInterval(n)}},[]),(0,E.useEffect)(()=>{let e=e=>{if((e.ctrlKey||e.metaKey)&&e.key.toLowerCase()===`b`){e.preventDefault(),f(e=>!e);return}if(e.altKey&&/^\d$/.test(e.key)){let t=Number(e.key),n=Z.find(e=>e.shortcut===t);n&&(e.preventDefault(),z.getState().setActiveView(n.id));return}e.key===`Escape`&&u&&window.innerWidth<900&&f(!1)};return window.addEventListener(`keydown`,e),()=>window.removeEventListener(`keydown`,e)},[u]),o)return(0,L.jsx)(Nt,{hadToken:P()!==null});let b=e?.totals,oe=b?.unreadMailboxMessages??0,x=t.filter(e=>e.severity!==`info`).length,S=Ht(a),le=S.icon,ue=Vt[a],de=e=>{z.getState().setActiveView(e),window.innerWidth<900&&f(!1)},fe=async()=>{ne(!0);try{await F(`/api/logout`,{method:`POST`})}finally{N(),window.location.reload()}};return(0,L.jsxs)(`div`,{className:`hq-app`,"data-theme":_,"data-testid":`hq-workbench`,children:[(0,L.jsx)(`button`,{type:`button`,className:`hq-sidebar-scrim`,"data-open":u,"aria-label":`Close HQ navigation`,onClick:()=>f(!1)}),(0,L.jsxs)(`aside`,{className:`hq-secondary-nav`,"data-open":u,"aria-label":`HQ navigation`,children:[(0,L.jsxs)(`div`,{className:`hq-secondary-header`,children:[(0,L.jsxs)(`div`,{className:`hq-secondary-brand`,children:[(0,L.jsx)(`img`,{src:`/wrongstack.svg`,alt:``,"aria-hidden":`true`,draggable:!1}),(0,L.jsxs)(`div`,{className:`hq-secondary-copy`,children:[(0,L.jsx)(`span`,{className:`hq-secondary-eyebrow`,children:`Command center`}),(0,L.jsx)(`strong`,{children:`WrongStack HQ`})]})]}),(0,L.jsx)(`button`,{type:`button`,className:`hq-icon-button hq-secondary-close`,"aria-label":`Collapse HQ navigation`,title:`Collapse navigation (Ctrl+B)`,onClick:()=>f(!1),children:(0,L.jsx)(r,{size:16})})]}),(0,L.jsx)(`div`,{className:`hq-secondary-scroll`,children:Bt.map(e=>(0,L.jsxs)(`section`,{className:`hq-nav-group`,children:[(0,L.jsx)(`div`,{className:`hq-nav-group-label`,children:e}),Z.filter(t=>t.group===e).map(e=>{let t=e.icon,n=e.id===`mailbox`?oe:e.id===`alerts`?x:0;return(0,L.jsxs)(`button`,{type:`button`,className:`hq-nav-item`,"data-active":a===e.id,"aria-current":a===e.id?`page`:void 0,onClick:()=>de(e.id),children:[(0,L.jsx)(t,{size:15}),(0,L.jsx)(`span`,{children:e.label}),e.shortcut===void 0?null:(0,L.jsxs)(`kbd`,{children:[`Alt+`,e.shortcut]}),n>0?(0,L.jsx)(`span`,{className:`hq-nav-badge`,children:n}):null]},e.id)})]},e))}),(0,L.jsxs)(`div`,{className:`hq-secondary-footer`,children:[(0,L.jsxs)(`div`,{className:`hq-link-state`,"data-live":s,children:[(0,L.jsx)(`span`,{className:`hq-link-dot`}),(0,L.jsxs)(`div`,{children:[(0,L.jsx)(`strong`,{children:s?`Connected`:`Reconnecting`}),(0,L.jsxs)(`span`,{children:[b?.activeMachines??0,` machines · `,b?.activeClients??0,` clients`]})]})]}),(0,L.jsx)(`span`,{className:`hq-build-label`,children:`@wrongstack/webui-hq`})]})]}),(0,L.jsxs)(`section`,{className:`hq-workbench`,"data-update-available":p?.outdated===!0,children:[(0,L.jsxs)(`header`,{className:`hq-header`,children:[(0,L.jsx)(`button`,{type:`button`,className:`hq-icon-button hq-sidebar-toggle`,"aria-label":u?`Collapse HQ navigation`:`Expand HQ navigation`,"aria-expanded":u,title:`Toggle navigation (Ctrl+B)`,onClick:()=>f(e=>!e),children:u?(0,L.jsx)(r,{size:17}):(0,L.jsx)(i,{size:17})}),(0,L.jsx)(`div`,{className:`hq-view-icon`,"aria-hidden":`true`,children:(0,L.jsx)(le,{size:18})}),(0,L.jsxs)(`div`,{className:`hq-view-identity`,children:[(0,L.jsx)(`span`,{children:S.eyebrow}),(0,L.jsx)(`h1`,{children:S.label}),(0,L.jsx)(`p`,{children:S.description})]}),(0,L.jsxs)(`div`,{className:`hq-top-metrics`,children:[(0,L.jsx)(Q,{icon:ce,label:`Machines`,value:b?.activeMachines??0}),(0,L.jsx)(Q,{icon:ae,label:`Agents`,value:b?.activeAgents??0}),(0,L.jsx)(Q,{icon:d,label:`Sessions`,value:b?.activeSessions??0}),(0,L.jsx)(Q,{icon:ie,label:`Cost`,value:`$${(b?.totalCostUsd??0).toFixed(2)}`,accent:!0})]}),(0,L.jsxs)(`div`,{className:`hq-connection-pill`,"data-live":s,children:[s?(0,L.jsx)(re,{size:13}):(0,L.jsx)(ee,{size:13}),s?`Live`:`Reconnecting`]}),(0,L.jsx)(`button`,{type:`button`,className:`hq-icon-button hq-theme-toggle`,"aria-label":`Switch to ${_===`dark`?`light`:`dark`} mode`,title:`Switch to ${_===`dark`?`light`:`dark`} mode`,onClick:()=>kt({theme:_===`dark`?`light`:`dark`}),children:_===`dark`?(0,L.jsx)(se,{size:16}):(0,L.jsx)(c,{size:16})}),h?.tokenMode||h?.passwordMode?(0,L.jsx)(`button`,{type:`button`,className:`hq-icon-button`,"aria-label":`Log out of HQ`,title:`Log out and clear this tab's HQ credentials`,disabled:g,onClick:()=>void fe(),children:(0,L.jsx)(n,{size:16})}):null]}),p?.outdated?(0,L.jsx)(Kt,{status:p}):null,l?(0,L.jsx)(Gt,{envelope:l}):null,(0,L.jsx)(`main`,{className:`hq-main`,id:`hq-main`,tabIndex:-1,children:(0,L.jsx)(Ut,{view:a,children:(0,L.jsx)(E.Suspense,{fallback:(0,L.jsx)(qt,{label:S.label}),children:(0,L.jsx)(ue,{})})})})]}),(0,L.jsx)(ft,{})]})}function Gt({envelope:e}){let t=e.kind===`peer.rehydrate`?`Leader session lost — survivor clients can rehydrate`:`Leader session lost — no survivor clients reported`,n=e.kind===`peer.rehydrate`&&e.payload.rehydrateHint?e.payload.rehydrateHint:`${e.payload.previousLeaderHandle} on ${e.payload.machineId} ended (${e.payload.reason}).`;return(0,L.jsxs)(`aside`,{className:`hq-peer-rehydrate-notice`,role:`status`,"aria-live":`polite`,children:[(0,L.jsx)(g,{size:16,"aria-hidden":`true`}),(0,L.jsxs)(`div`,{children:[(0,L.jsx)(`strong`,{children:t}),(0,L.jsx)(`span`,{children:n})]}),(0,L.jsx)(`button`,{type:`button`,onClick:()=>z.getState()._dismissPeerRehydrate(),title:`Dismiss peer lifecycle notice`,children:`Dismiss`})]})}function Kt({status:e}){let[t,n]=(0,E.useState)(!1),r=async()=>{try{await navigator.clipboard.writeText(e.command),n(!0),window.setTimeout(()=>n(!1),1500)}catch{n(!1)}};return(0,L.jsxs)(`aside`,{className:`hq-update-notice`,role:`status`,"aria-live":`polite`,children:[(0,L.jsx)(g,{size:16,"aria-hidden":`true`}),(0,L.jsxs)(`div`,{children:[(0,L.jsx)(`strong`,{children:`WrongStack update available`}),(0,L.jsxs)(`span`,{children:[`v`,e.current,` → v`,e.latest,`. Run `,(0,L.jsx)(`code`,{children:e.command}),` in your terminal, then restart HQ.`]})]}),(0,L.jsxs)(`button`,{type:`button`,onClick:()=>void r(),title:`Copy update command`,children:[(0,L.jsx)(le,{size:13,"aria-hidden":`true`}),t?`Copied`:`Copy command`]})]})}function Q({icon:e,label:t,value:n,accent:r=!1}){return(0,L.jsxs)(`div`,{className:`hq-top-metric`,"data-accent":r,children:[(0,L.jsx)(e,{size:12}),(0,L.jsx)(`span`,{children:t}),(0,L.jsx)(`strong`,{children:n})]})}function qt({label:e}){return(0,L.jsxs)(`div`,{className:`hq-view-loading`,role:`status`,children:[(0,L.jsx)(x,{size:18}),(0,L.jsxs)(`span`,{children:[`Loading `,e,`…`]})]})}var Jt=25e3,Yt=1e4,Xt=3e4,Zt=32;function Qt(e){if(!Number.isFinite(e))return 0;let t=Math.max(0,Math.trunc(e));return Number.isSafeInteger(t)?t:0}var $t=class{ws=null;handlers=new Set;stateHandlers=new Set;reconnectAttempt=0;connectionState=me();reconnectTimer=null;heartbeatTimer=null;lastMessageAt=0;stopped=!1;_state=`disconnected`;_url;resumeCursor;maxRetries;heartbeatIntervalMs;heartbeatTimeoutMs;maxBackoffMs;constructor(e){if(this.maxRetries=e?.maxRetries??1/0,this.heartbeatIntervalMs=e?.heartbeatIntervalMs??Jt,this.heartbeatTimeoutMs=e?.heartbeatTimeoutMs??Yt,this.maxBackoffMs=e?.maxBackoffMs??Xt,this.resumeCursor=e?.resumeCursor??(()=>({})),e?.url)this._url=e.url;else{let e=typeof window<`u`?window.location:{host:`127.0.0.1:3499`,protocol:`http:`},t=e.protocol===`https:`?`wss:`:`ws:`,n=P(),r=`${t}//${e.host}/ws/browser`;this._url=n===null?r:`${r}?token=${encodeURIComponent(n)}`}}get url(){return this._url}get state(){return this._state}get isConnected(){return this.ws?.readyState===WebSocket.OPEN}connect(){if(this.stopped||this.ws!==null)return;this.connectionState=he(this.connectionState),this.emitState(`connecting`);let e;try{e=new WebSocket(this._url)}catch{this.scheduleReconnect();return}this.ws=e,e.onopen=()=>{this.ws===e&&(this.reconnectAttempt=0,this.connectionState=ge(this.connectionState),this.lastMessageAt=Date.now(),this.connectionState=_e(this.connectionState,this.lastMessageAt),this.emitState(`connected`),this.sendResume(),this.startHeartbeat())},e.onmessage=t=>{if(this.ws===e){this.lastMessageAt=Date.now(),this.connectionState=_e(this.connectionState,this.lastMessageAt);try{let e=JSON.parse(typeof t.data==`string`?t.data:``);for(let t of this.handlers)try{t(e)}catch{}}catch{}}},e.onclose=()=>this.handleClose(e,`close`),e.onerror=()=>this.handleClose(e,`error`)}close(){this.stopped=!0,this.connectionState=ve(this.connectionState),this.stopHeartbeat(),this.reconnectTimer!==null&&(clearTimeout(this.reconnectTimer),this.reconnectTimer=null),this.ws?.close(1e3,`client closed`),this.ws=null,this.emitState(`disconnected`)}setResumeCursorProvider(e){this.resumeCursor=e}on(e){return this.handlers.add(e),()=>this.handlers.delete(e)}onStateChange(e){return this.stateHandlers.add(e),e(this._state),()=>this.stateHandlers.delete(e)}handleClose(e,t){this.ws===e&&(this.ws=null,this.stopHeartbeat(),this.scheduleReconnect())}scheduleReconnect(){if(this.stopped||this.reconnectTimer!==null)return;let e=ye(this.connectionState,{...pe,maxReconnectAttempts:this.maxRetries,maxBackoffMs:this.maxBackoffMs,heartbeatIntervalMs:this.heartbeatIntervalMs,heartbeatTimeoutMs:this.heartbeatTimeoutMs,jitterRatio:.5});if(this.connectionState=e.state,this.reconnectAttempt=e.state.reconnectAttempt,!e.plan){this.emitState(`disconnected`);return}this.emitState(`reconnecting`),this.reconnectTimer=setTimeout(()=>{this.reconnectTimer=null,this.connect()},e.plan.delayMs)}sendResume(){if(this.ws?.readyState===WebSocket.OPEN)try{for(let e of this.resumeFrames())this.ws.send(JSON.stringify(e))}catch{}}resumeFrames(){try{let e=this.resumeCursor(),t=typeof e.entries==`function`?e.entries():Object.entries(e),n=[];for(let[e,r]of t){if(typeof e!=`string`||e.length===0)continue;let t=Qt(r);n.push({clientId:e,lastSeqSeen:t})}n.sort((e,t)=>t.lastSeqSeen===e.lastSeqSeen?e.clientId.localeCompare(t.clientId):t.lastSeqSeen-e.lastSeqSeen);let r=n.find(({clientId:e})=>e===R),i=r===void 0?Zt:Zt-1,a=n.filter(({clientId:e})=>e!==R).slice(0,i);return r!==void 0&&a.unshift(r),a.map(({clientId:e,lastSeqSeen:t})=>({type:`client.resume`,clientId:e,lastSeqSeen:t}))}catch{return[]}}get isHeartbeatTimedOut(){return this.ws===null||be(this.connectionState,{...pe,heartbeatIntervalMs:this.heartbeatIntervalMs,heartbeatTimeoutMs:this.heartbeatTimeoutMs})}startHeartbeat(){this.stopHeartbeat(),this.lastMessageAt=Date.now(),this.heartbeatTimer=setInterval(()=>{this.isHeartbeatTimedOut&&this.ws!==null&&(this.ws.close(4e3,`heartbeat timeout`),this.ws=null,this.scheduleReconnect())},this.heartbeatIntervalMs)}stopHeartbeat(){this.heartbeatTimer!==null&&(clearInterval(this.heartbeatTimer),this.heartbeatTimer=null)}emitState(e){this._state=e;for(let t of this.stateHandlers)try{t(e)}catch{}}},$=null;function en(e){if($===null)return $=new $t(e),$.connect(),$;if(e?.resumeCursor!==void 0&&$.setResumeCursorProvider(e.resumeCursor),e===void 0)return $;let t=[];return e.url!==void 0&&e.url!==$.url&&t.push(`url: ${e.url} vs ${$.url}`),e.heartbeatIntervalMs!==void 0&&e.heartbeatIntervalMs!==$.heartbeatIntervalMs&&t.push(`heartbeatIntervalMs: ${e.heartbeatIntervalMs} vs ${$.heartbeatIntervalMs}`),e.heartbeatTimeoutMs!==void 0&&e.heartbeatTimeoutMs!==$.heartbeatTimeoutMs&&t.push(`heartbeatTimeoutMs: ${e.heartbeatTimeoutMs} vs ${$.heartbeatTimeoutMs}`),e.maxBackoffMs!==void 0&&e.maxBackoffMs!==$.maxBackoffMs&&t.push(`maxBackoffMs: ${e.maxBackoffMs} vs ${$.maxBackoffMs}`),e.maxRetries!==void 0&&e.maxRetries!==$.maxRetries&&t.push(`maxRetries: ${e.maxRetries} vs ${$.maxRetries}`),t.length>0&&typeof console<`u`&&console.warn(`[hq-ws-client] getHqClient() called with options that conflict with the live singleton; ignoring: ${t.join(`, `)}. Call closeHqClient() first if you need to reconfigure.`),$}var tn=document.getElementById(`root`);tn!==null&&tt().finally(()=>{Ze(),nt();let e=en({resumeCursor:()=>z.getState().resumeCursors});e.onStateChange(e=>{z.getState()._setConnected(e===`connected`)});let t=null,n=()=>{t===null&&(z.getState()._setNeedsSnapshotRefresh(!1),t=B(`/api/snapshot`).then(e=>{z.getState()._onSnapshot(e)}).catch(()=>void 0).finally(()=>{t=null}))};z.subscribe((e,t)=>{e.needsSnapshotRefresh&&!t.needsSnapshotRefresh&&n()}),e.on(e=>{if(e.type===`hq.snapshot`){let t=Ve(e);t&&z.getState()._onSnapshot(t.snapshot)}else if(e.type===`hq.event`){let t=He(e);t&&z.getState()._onEvent(t.event)}else if(e.type===`hq.alert`){let t=Ue(e);t&&z.getState()._onAlert(t.alert)}else if(e.type===`hq.command_status`){let t=We(e);t&&z.getState()._onCommandStatus(t.command)}else if(e.type===`hq.resume_gap`)for(let t of e.envelopes){let e=He({type:`hq.event`,event:t});e&&z.getState()._onEvent(e.event)}else e.type===`hq.resume_reject`&&(z.getState()._resetResumeCursors(),z.getState()._setNeedsSnapshotRefresh(!0))}),(0,Ge.createRoot)(tn).render((0,L.jsx)(E.StrictMode,{children:(0,L.jsx)(Wt,{})}))});export{Mt as a,bt as c,F as d,N as f,At as i,yt as l,jt as n,Dt as o,D as p,Ot as r,B as s,Y as t,z as u};
|